@odigos/ui-kit 0.0.241 → 0.0.243
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/{helpers-L572q0MU.js → helpers-DlRedD4d.js} +1 -1
- package/lib/chunks/{index-DHcHiz_q.js → index-Cl1o9W_f.js} +15 -15
- package/lib/chunks/{source-instrument-form-context-vq8DFX7f.js → source-instrument-form-context-0FWO95UV.js} +1 -1
- package/lib/chunks/{ui-components-DeKNGyn7.js → ui-components-D8ipj0yK.js} +185 -185
- package/lib/components/v2.js +1 -1
- package/lib/components.js +1 -1
- package/lib/constants/strings/index.d.ts +5 -2
- package/lib/constants.js +1 -1
- package/lib/containers/_v2/_drawers/edit-source-drawer/index.d.ts +2 -1
- package/lib/containers/_v2/_drawers/edit-source-drawer/jump-to-target-context.d.ts +57 -0
- package/lib/containers/_v2/_drawers/edit-source-drawer/overview/pods-card/pods-list/container-row.d.ts +0 -2
- package/lib/containers/_v2/_drawers/edit-source-drawer/overview/pods-card/pods-list/index.d.ts +0 -6
- package/lib/containers/_v2/_drawers/edit-source-drawer/overview/pods-card/pods-list/pod-row.d.ts +0 -2
- package/lib/containers/_v2/_drawers/edit-source-drawer/overview/pods-card/pods-list/process-row.d.ts +0 -2
- package/lib/containers/_v2/_drawers/edit-source-drawer/overview/pods-card/pods-list/types.d.ts +1 -6
- package/lib/containers/_v2/_drawers/edit-source-drawer/pods/containers-card/index.d.ts +3 -0
- package/lib/containers/_v2/_drawers/edit-source-drawer/pods/containers-card/process-card.d.ts +1 -0
- package/lib/containers/_v2/_drawers/edit-source-drawer/pods/pod-card.d.ts +4 -0
- package/lib/containers/_v2/_drawers/edit-source-drawer/tabs.d.ts +7 -0
- package/lib/containers/_v2/_drawers/edit-source-drawer/yaml-files/index.d.ts +2 -1
- package/lib/containers/_v2/overview/drawers/index.d.ts +2 -1
- package/lib/containers/v2.js +120 -120
- package/lib/containers.js +1 -1
- package/lib/contexts.js +1 -1
- package/lib/functions.js +1 -1
- package/lib/hooks/index.d.ts +1 -0
- package/lib/hooks/useScrollIntoViewWhen.d.ts +15 -0
- package/lib/hooks.js +1 -1
- package/lib/snippets/v2.js +1 -1
- package/lib/snippets.js +4 -4
- package/lib/store.js +1 -1
- package/lib/theme.js +1 -1
- package/lib/types/enum/index.d.ts +2 -1
- package/lib/types/index.d.ts +1 -0
- package/lib/types/k8s-manifest/index.d.ts +2 -0
- package/lib/types/workload/index.d.ts +0 -2
- package/lib/types.js +1 -1
- package/lib/visuals.js +1 -1
- package/package.json +1 -1
package/lib/containers/v2.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect as n,Fragment as a,forwardRef as i,useState as l,useImperativeHandle as s,useMemo as r,useCallback as c,useRef as d,Children as u,useContext as p,useLayoutEffect as h,createContext as m}from"react";import g,{useTheme as f,css as b,keyframes as v}from"styled-components";import{u as y,n as C,C as S,d as w,b as x,c as k,S as T,f as $,e as I,a as N,r as E,h as A,i as O,j as D,k as R,l as F,m as P,o as L,p as _,q as M,s as z,t as B}from"../chunks/helpers-L572q0MU.js";import{y as X,F as V,$ as U,a0 as H,a1 as j,a2 as W,a3 as G,G as K,a4 as Y,a5 as J,a6 as q,a7 as Z,a8 as Q,p as ee,h as te,a9 as oe,aa as ne,ab as ae,R as ie,z as le,N as se,b as re,c as ce,ac as de,ad as ue,ae as pe,af as he,ag as me,S as ge,M as fe,Q as be,L as ve,ah as ye,ai as Ce,aj as Se,ak as we,V as xe,al as ke,X as Te,Y as $e,W as Ie,Z as Ne,am as Ee,an as Ae,ao as Oe,ap as De,D as Re,H as Fe,aq as Pe,ar as Le,as as _e,at as Me,au as ze,av as Be,aw as Xe,ax as Ve,ay as Ue,az as He,i as je,A as We,x as Ge,aA as Ke,K as Ye,aB as Je,aC as qe,aD as Ze,aE as Qe,aF as et,aG as tt,w as ot,O as nt,q as at,U as it,E as lt,aH as st,T as rt,aI as ct,aJ as dt,aK as ut,aL as pt,aM as ht,aN as mt,aO as gt,o as ft,aP as bt,aQ as vt,aR as yt,aS as Ct,aT as St,v as wt,aU as xt,aV as kt,aW as Tt,aX as $t,d as It,B as Nt,aY as Et,aZ as At,f as Ot,a_ as Dt,a$ as Rt,b0 as Ft,b1 as Pt,b2 as Lt,b3 as _t,b4 as Mt,b5 as zt,b6 as Bt,b7 as Xt,b8 as Vt,b9 as Ut,ba as Ht,bb as jt,l as Wt,m as Gt,bc as Kt,bd as Yt,be as Jt,bf as qt,bg as Zt,bh as Qt,bi as eo,bj as to,bk as oo,bl as no,bm as ao,bn as io,bo as lo,bp as so,bq as ro,_ as co,br as uo,bs as po,bt as ho,bu as mo,bv as go,bw as fo,bx as bo,by as vo,bz as yo,bA as Co,bB as So,bC as wo,bD as xo,bE as ko,bF as To,bG as $o,bH as Io,bI as No,bJ as Eo,bK as Ao,bL as Oo,bM as Do,bN as Ro,bO as Fo,bP as Po,bQ as Lo,bR as _o,bS as Mo,bT as zo,bU as Bo,bV as Xo,bW as Vo,bX as Uo,bY as Ho,bZ as jo,b_ as Wo,b$ as Go,c0 as Ko,c1 as Yo,c2 as Jo,c3 as qo,c4 as Zo,c5 as Qo,c6 as en,c7 as tn,c8 as on,c9 as nn,ca as an,cb as ln,cc as sn,cd as rn,ce as cn,cf as dn,cg as un,ch as pn,ci as hn,cj as mn,ck as gn,cl as fn,cm as bn,cn as vn,co as yn,cp as Cn,cq as Sn,cr as wn,cs as xn,ct as kn,cu as Tn,cv as $n,cw as In,cx as Nn,cy as En,cz as An,cA as On,cB as Dn,cC as Rn,cD as Fn,cE as Pn,cF as Ln,cG as _n,cH as Mn,cI as zn,cJ as Bn,cK as Xn,cL as Vn,cM as Un,cN as Hn,cO as jn,cP as Wn,cQ as Gn,cR as Kn,cS as Yn,cT as Jn,cU as qn,cV as Zn,cW as Qn,cX as ea,cY as ta,cZ as oa,c_ as na,c$ as aa,d0 as ia,d1 as la,d2 as sa,d3 as ra,d4 as ca,d5 as da,d6 as ua,d7 as pa,d8 as ha,d9 as ma,da as ga,db as fa,dc as ba,dd as va,de as ya,j as Ca,df as Sa,dg as wa,n as xa,dh as ka,di as Ta,dj as $a,dk as Ia,dl as Na,dm as Ea,dn as Aa,dp as Oa,dq as Da,dr as Ra,ds as Fa,dt as Pa,du as La,dv as _a,dw as Ma,dx as za,dy as Ba,dz as Xa,dA as Va,dB as Ua,dC as Ha,dD as ja,dE as Wa,dF as Ga,dG as Ka,dH as Ya,dI as Ja,dJ as qa,dK as Za,dL as Qa,dM as ei,dN as ti,dO as oi}from"../chunks/ui-components-DeKNGyn7.js";import{TrashIcon as ni,PlusIcon as ai,BookIcon as ii,VSquareIcon as li,XSquareIcon as si,DeleteIcon as ri,EditIcon as ci,GoLogo as di,JavaLogo as ui,ChevronRightIcon as pi,ActionIcon as hi,DestinationIcon as mi,ChevronUpIcon as gi,ChevronDownIcon as fi,VIcon as bi,XIcon as vi,InstrumentationRuleIcon as yi,SourceIcon as Ci,NamespacesIcon as Si,SettingsIcon as wi,PodIcon as xi,OdigosLogo as ki,K8sLogo as Ti,RefreshIcon as $i,ExclamationCircleIcon as Ii,QuestionCircleIcon as Ni,InboundIcon as Ei,OutboundIcon as Ai,UserIcon as Oi,ExpandIcon as Di,SearchIcon as Ri,MinusIcon as Fi,CopyIcon as Pi,DotIcon as Li,DownloadIcon as _i,RefreshLeftArrowIcon as Mi,SamplingIcon as zi,ExclamationTriangleIcon as Bi,KeyIcon as Xi,DiagnoseIcon as Vi,TerminalIcon as Ui,ArrowRightIcon as Hi,StarIcon as ji,ArrowIcon as Wi,ConnectionsIcon as Gi,FilterIcon as Ki,DataStreamIcon as Yi,PipelineCollectorIcon as Ji,ArrowDownSquareIcon as qi,ArrowUpSquareIcon as Zi,GatewayIcon as Qi,YamlIcon as el}from"../icons.js";import{S as tl,D as ol,A as nl,P as al,a as il,b as ll,R as sl,c as rl,O as cl,d as dl,e as ul,f as pl,W as hl,g as ml,C as gl,Y as fl,h as bl,i as vl,U as yl}from"../chunks/index-DHcHiz_q.js";import{u as Cl,f as Sl,g as wl,e as xl,i as kl,h as Tl,S as $l,k as Il,E as Nl,l as El,m as Al,j as Ol,b as Dl,d as Rl,a as Fl,A as Pl,R as Ll,c as _l,D as Ml}from"../chunks/source-instrument-form-context-vq8DFX7f.js";import{createPortal as zl}from"react-dom";import"zustand";import"javascript-time-ago";import"../chunks/vendor-Be0cOokr.js";import"prism-react-renderer";import"react-error-boundary";import"virtua";const Bl=[{id:"CREDIT_CARD",label:"Credit card"}],Xl=[{id:X.CollectContainerAttributes,label:"Collect container attributes"},{id:X.CollectReplicaSetAttributes,label:"Collect ReplicaSet attributes"},{id:X.CollectWorkloadId,label:"Collect workload ID"},{id:X.CollectClusterId,label:"Collect cluster ID"}],Vl=[{id:J.Pod,label:J.Pod},{id:J.Namespace,label:J.Namespace},{id:J.Node,label:J.Node}],Ul=[{label:"Label key",keyName:"labelKey",placeholder:"app.kubernetes.io/name"},{label:"Attribute key",keyName:"attributeKey",placeholder:"app.kubernetes.name"},{label:"From sources",keyName:"fromSources",placeholder:"pod, namespace",tooltip:"Select multiple sources. Higher precedence sources (pod > namespace > node) will override lower ones.",componentType:"multi-dropdown",options:Vl}],Hl=[{label:"Annotation key",keyName:"annotationKey",placeholder:"kubectl.kubernetes.io/restartedAt"},{label:"Attribute key",keyName:"attributeKey",placeholder:"kubectl.kubernetes.restartedAt"},{label:"From sources",keyName:"fromSources",placeholder:"pod, namespace",tooltip:"Select multiple sources. Higher precedence sources (pod > namespace > node) will override lower ones.",componentType:"multi-dropdown",options:Vl}],jl=[{label:"Service",keyName:"serviceName",placeholder:"e.g. my-service",tooltip:"Service name: The rule applies to a specific service name. Only traces originating from this service’s root span will be considered."},{label:"HTTP route",keyName:"httpRoute",placeholder:"e.g. /api/v1/users",tooltip:"HTTP route: The specific HTTP route prefix to match for sampling. Only traces with routes beginning with this prefix will be considered. For instance, configuring /buy will also match /buy/product."},{label:"Threshold",keyName:"minimumLatencyThreshold",placeholder:"e.g. 1000",tooltip:"Minimum latency threshold (ms): Specifies the minimum latency in milliseconds; traces with latency below this threshold are ignored.",inputType:G.Number,min:0},{label:"Fallback",keyName:"fallbackSamplingRatio",placeholder:"e.g. 100",tooltip:"Fallback sampling ratio: Specifies the percentage of traces that meet the service/http_route filter but fall below the threshold that you still want to retain. For example, if a rule is set for service A and http_route B with a minimum latency threshold of 1 second, you might still want to keep some traces below this threshold. Setting the ratio to 20% ensures that 20% of these traces will be retained.",inputType:G.Number,min:0,max:100}],Wl=X.UrlTemplatizationRulesGroups,Gl=[{keyName:"kind",label:"Kind",placeholder:"Any kind",componentType:"dropdown",options:[{id:"Deployment",label:"Deployment"},{id:"StatefulSet",label:"StatefulSet"},{id:"DaemonSet",label:"DaemonSet"}]},{keyName:"name",label:"Name",placeholder:"Any name"}],Kl=[{label:"Service name",keyName:"serviceName",placeholder:"e.g. my-service",tooltip:"Specifies the service name to search within the trace (Across all available spans)."},{label:"Sampling ratio",keyName:"samplingRatio",placeholder:"e.g. 10",tooltip:"Specifies the sample rate for all traces.",inputType:G.Number,min:0,max:100},{label:"Fallback sampling ratio",keyName:"fallbackSamplingRatio",placeholder:"e.g. 100",tooltip:"Specifies the percentage of traces that don’t meet the service name filter and that you still like to retain.",inputType:G.Number,min:0,max:100}],Yl=[{label:"Service name",keyName:"serviceName",placeholder:"e.g. my-service",tooltip:"Specifies the service name to search within the trace (across all available spans)."},{label:"Attribute key",keyName:"attributeKey",placeholder:"e.g. http.request.method",tooltip:"Specifies the attribute key inside of the span."},{label:"Fallback sampling ratio",keyName:"fallbackSamplingRatio",placeholder:"e.g. 100",tooltip:"Specifies the percentage of traces that don’t meet the service name filter and that you still like to retain.",inputType:G.Number,min:0,max:100},{label:"Condition",keyName:"condition",tooltip:"An object representing the filters for span attributes filters.",componentType:ie.Dropdown,options:[{id:"stringCondition",label:"String condition"},{id:"numberCondition",label:"Number condition"},{id:"booleanCondition",label:"Boolean condition"},{id:"jsonCondition",label:"JSON condition"}]},{label:"Operation",keyName:"operation",tooltip:"Specifies the operation to run against the attribute.",componentType:ie.Dropdown,options:[{id:"exists",label:"Exists"},{id:"equals",label:"Equals"},{id:"not_equals",label:"Not equals"},{id:"contains",label:"Contains"},{id:"not_contains",label:"Not contains"},{id:"regex",label:"Regex"},{id:"greater_than",label:"Greater than"},{id:"less_than",label:"Less than"},{id:"greater_than_or_equal",label:"Greater than or equal"},{id:"less_than_or_equal",label:"Less than or equal"},{id:"is_valid_json",label:"Is valid JSON"},{id:"is_invalid_json",label:"Is invalid JSON"},{id:"jsonpath_exists",label:"JSON path exists"},{id:"key_equals",label:"Key equals"},{id:"key_not_equals",label:"Key not equals"}]},{label:"Expected value",keyName:"expectedValue",placeholder:"e.g. GET",tooltip:"The values to test the attribute against."},{label:"JSON path",keyName:"jsonPath",placeholder:"e.g. $.user.role",tooltip:"An expression used to navigate the JSON structure.",renderCondition:e=>"jsonCondition"===e.condition}],Jl={[le.K8sAttributes]:({value:a,setValue:i,formErrors:l})=>(n(()=>{a[X.CollectContainerAttributes]||a[X.CollectReplicaSetAttributes]||a[X.CollectWorkloadId]||a[X.CollectClusterId]||a[X.LabelsAttributes]?.length||a[X.AnnotationsAttributes]?.length||(i(X.CollectContainerAttributes,!0),i(X.CollectReplicaSetAttributes,!0),i(X.CollectWorkloadId,!0),i(X.CollectClusterId,!0),i(X.LabelsAttributes,[]),i(X.AnnotationsAttributes,[]))},[]),e(o,{children:[t(V,{$gap:6,children:Xl.map(({id:o,label:n})=>e(V,{children:[t(H,{label:n,value:a[o]||!1,onChange:e=>i(o,e)}),t(j,{errorMessage:l[o]})]},o))}),t(Y,{name:"labelsAttributes",label:"Label attributes",limitFieldsPerRow:2,columns:Ul,values:a[X.LabelsAttributes]||[],setValues:e=>i(X.LabelsAttributes,e),errorMessage:l[X.LabelsAttributes]}),t(Y,{name:"annotationsAttributes",label:"Annotation attributes",limitFieldsPerRow:2,columns:Hl,values:a[X.AnnotationsAttributes]||[],setValues:e=>i(X.AnnotationsAttributes,e),errorMessage:l[X.AnnotationsAttributes]})]})),[le.AddClusterInfo]:({value:n,setValue:a,formErrors:i})=>{const l=f();return e(o,{children:[t(q,{label:"Overwrite existing values",labelAlign:Z.Left,labelColor:l.v2.colors.silver[200],tooltip:"If enabled, the resource attributes will overwrite any existing attributes with the same name.",value:n[X.OverwriteExistingValues]||!1,onChange:e=>a(X.OverwriteExistingValues,e)}),t(Y,{name:"clusterAttributes",label:"Resource attributes",limitFieldsPerRow:2,columns:[{keyName:"attributeName",label:"Attribute name"},{keyName:"attributeStringValue",label:"Attribute value"}],values:n[X.ClusterAttributes]||[],setValues:e=>a(X.ClusterAttributes,e),errorMessage:i[X.ClusterAttributes]})]})},[le.DeleteAttributes]:({value:e,setValue:o,formErrors:n})=>t(Q,{name:"attributeNamesToDelete",label:"Attributes to delete",values:e[X.AttributeNamesToDelete]||[],setValues:e=>o(X.AttributeNamesToDelete,e),errorMessage:n[X.AttributeNamesToDelete]}),[le.RenameAttributes]:({value:e,setValue:o,formErrors:n})=>t(Y,{name:"renames",label:"Attributes to rename",limitFieldsPerRow:2,columns:[{keyName:"oldKey",label:"Old key"},{keyName:"newKey",label:"New key"}],values:Object.entries(e[X.Renames]||{}).map(([e,t])=>({oldKey:e,newKey:t})),setValues:e=>{const t={};e.forEach(e=>t[e.oldKey]=e.newKey),o(X.Renames,t)},errorMessage:n[X.Renames]}),[le.PiiMasking]:({value:o,setValue:a,formErrors:i})=>(n(()=>{o[X.PiiCategories]?.length||a(X.PiiCategories,Bl.map(({id:e})=>e))},[]),e(V,{$gap:12,children:[t(U,{label:"Attributes to mask"}),t(V,{$gap:6,children:Bl.map(({id:e,label:n})=>t(H,{label:n,value:o[X.PiiCategories]?.includes(e)||!1,onChange:t=>{const n=o[X.PiiCategories]||[],i=t?[...n,e]:n.filter(t=>t!==e);a(X.PiiCategories,i)}},e))}),t(j,{errorMessage:i[X.PiiCategories]})]})),[le.ErrorSampler]:({value:e,setValue:o,formErrors:n})=>{const a=n[X.FallbackSamplingRatio],i=K(e[X.FallbackSamplingRatio])?"":String(e[X.FallbackSamplingRatio]);return t(W,{name:"fallbackSamplingRatio",label:"Fallback sampling ratio",type:G.Number,min:0,max:100,value:i,placeholder:"0-100",onChange:e=>{return t=e.target.value,o(X.FallbackSamplingRatio,Math.max(0,Math.min(Number(t),100))||0);var t},errorMessage:a})},[le.ProbabilisticSampler]:({value:e,setValue:o,formErrors:n})=>{const a=n[X.SamplingPercentage],i=K(e[X.SamplingPercentage])?"":String(e[X.SamplingPercentage]);return t(W,{name:"samplingPercentage",label:"Sampling percentage",type:G.Number,min:0,max:100,value:i,placeholder:"0-100",onChange:e=>{return t=e.target.value,o(X.SamplingPercentage,Math.max(0,Math.min(Number(t),100))||0);var t},errorMessage:a})},[le.LatencySampler]:({value:e,setValue:o,formErrors:n})=>{const a=n[X.EndpointsFilters],i=e[X.EndpointsFilters]||[];return t(Y,{name:"endpointsFilters",limitFieldsPerRow:2,columns:jl,values:i,setValues:e=>{o(X.EndpointsFilters,e.map(({serviceName:e,httpRoute:t,minimumLatencyThreshold:o,fallbackSamplingRatio:n})=>({serviceName:e,httpRoute:t,minimumLatencyThreshold:Number(o),fallbackSamplingRatio:Number(n)})))},errorMessage:a})},[le.ServiceNameSampler]:({value:e,setValue:o,formErrors:n})=>{const a=n[X.ServicesNameFilters],i=e[X.ServicesNameFilters]||[];return t(Y,{name:"servicesNameFilters",limitFieldsPerRow:2,columns:Kl,values:i,setValues:e=>{o(X.ServicesNameFilters,e.map(({serviceName:e,samplingRatio:t,fallbackSamplingRatio:o})=>({serviceName:e,samplingRatio:Number(t),fallbackSamplingRatio:Number(o)})))},errorMessage:a})},[le.SpanAttributeSampler]:({value:e,setValue:o,formErrors:n})=>{const a=n[X.AttributeFilters],i=(e[X.AttributeFilters]||[]).map(({serviceName:e,attributeKey:t,fallbackSamplingRatio:o,condition:n})=>{const a=Object.entries(n).filter(([e,t])=>t)[0][0];return{serviceName:e,attributeKey:t,fallbackSamplingRatio:o,condition:a,operation:n[a]?.operation,expectedValue:n[a]?.expectedValue,jsonPath:n[a]?.jsonPath}});return t(Y,{name:"attributeFilters",limitFieldsPerRow:2,columns:Yl,values:i,setValues:e=>{o(X.AttributeFilters,e.map(({serviceName:e,attributeKey:t,fallbackSamplingRatio:o,condition:n,operation:a,expectedValue:i,jsonPath:l})=>{const s={serviceName:e,attributeKey:t,fallbackSamplingRatio:Number(o),condition:{[n]:{operation:a,expectedValue:i}}};return l&&(s.condition[n].jsonPath=l),s}))},errorMessage:a})},[le.URLTemplatization]:({value:n,setValue:i,formErrors:l})=>{const s=f(),r=n[Wl]||[{filterK8sNamespace:"",workloadFilters:[],templatizationRules:[{template:""}],notes:""}],c=e=>i(Wl,e),d=(e,t)=>c(r.map((o,n)=>n===e?{...o,...t}:o));return e(o,{children:[r.map((o,n)=>e(a,{children:[t(ee,{}),e(V,{$gap:12,children:[e(te,{$justifyContent:"space-between",$alignItems:"center",children:[t(U,{label:`Rule Group ${n+1}`}),t(oe,{leftIcon:()=>t(ni,{fill:s.v2.colors.red[500]}),variant:ae.Secondary,size:ne.S,onClick:()=>{return e=n,c(r.filter((t,o)=>o!==e));var e},disabled:1===r.length})]}),t(W,{name:`urlGroup-${n}-namespace`,label:"Namespace",placeholder:"All namespaces",tooltip:"Filter rules to a specific Kubernetes namespace.",value:o.filterK8sNamespace||"",onChange:e=>d(n,{filterK8sNamespace:e.target.value})}),t(Y,{name:`urlGroup-${n}-workloadFilters`,label:"Workload filters",tooltip:"Optionally scope templates to specific workloads.",columns:Gl,values:o.workloadFilters||[],setValues:e=>d(n,{workloadFilters:e})}),t(Q,{name:`urlGroup-${n}-templates`,label:"Templates",required:!0,placeholder:"e.g. /user/{id}",values:o.templatizationRules.map(e=>e.template),setValues:e=>d(n,{templatizationRules:e.map(e=>({template:e}))})})]}),t(j,{errorMessage:l[Wl]})]},`url-templatization-group-${n}`)),t(oe,{variant:ae.Secondary,label:"Add rule group",leftIcon:ai,onClick:()=>c([...r,{filterK8sNamespace:"",workloadFilters:[],templatizationRules:[{template:""}],notes:""}])}),t(ee,{})]})}},ql=({actionType:e,value:o,setValue:n,formErrors:a})=>{if(!e)return null;const i=Jl[e];return i?t(i,{value:o,setValue:n,formErrors:a}):null},Zl=()=>{const o=f(),{selectedOption:n,genericForm:a}=Cl();if(!a||!n)return t(se,{title:"No active form"});const{formData:i,handleFormChange:l,formErrors:s}=a;return e(V,{$gap:24,children:[e(te,{$gap:12,$justifyContent:"space-between",children:[t(re,{size:ce.XXS,children:n.docsDescription}),t(oe,{label:"Docs",leftIcon:ii,variant:ae.Text,size:ne.S,onClick:()=>window.open(`${de}${n.docsEndpoint}`,"_blank","noopener noreferrer")})]}),t(ue,{options:[{icon:li,label:"Enabled",value:!1,selectedBgColor:o.v2.colors.green[800]},{icon:si,label:"Disabled",value:!0,selectedBgColor:o.v2.colors.red[800]}],selected:i.disabled,setSelected:e=>l("disabled",e)}),t(tl,{title:"Signals for processing",allowedSignals:n.allowedSignals,selectedSignals:i.signals||[],setSelectedSignals:e=>l("signals",e),errorMessage:s.signals}),t(W,{name:"actionName",label:"Action name",placeholder:"Use a name that describes the action...",value:i.name||"",onChange:({target:{value:e}})=>l("name",e),errorMessage:s.name}),t(ql,{actionType:n.type,value:i.fields,setValue:(e,t)=>l(`fields.${e}`,t),formErrors:s}),t(pe,{name:"notes",label:"Notes",placeholder:"Your personal notes...",value:i.notes||"",onChange:({target:{value:e}})=>l("notes",e),errorMessage:s.notes})]})},Ql=({signals:e,fields:o,disabled:n,formData:a,handleFormChange:i,formErrors:l})=>o?.map(({renderCondition:o,componentType:s,type:r,name:c,title:d,tooltip:u,placeholder:p,value:h,required:m,options:g})=>{if(!(!o||he(o,e,a.fields)))return null;const f=c,b=a.fields.find(e=>e.key===f),v=b?b.value:h;return t(ol,{componentType:s,inputType:r,name:f,label:d,tooltip:u,disabled:n,required:m,placeholder:p,errorMessage:l[f],dropdownOptions:g,value:v||"",setValue:e=>i(f,e)},f)}),es=g(te)`
|
|
1
|
+
import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect as n,Fragment as a,forwardRef as i,useState as l,useImperativeHandle as s,useMemo as r,useCallback as c,useRef as d,Children as u,createContext as p,useContext as h,useLayoutEffect as m}from"react";import g,{useTheme as f,css as b,keyframes as v}from"styled-components";import{u as y,n as C,C as S,d as w,b as x,c as k,S as T,f as $,e as N,a as I,r as E,h as O,i as A,j as D,k as R,l as F,m as P,o as L,p as _,q as M,s as B,t as z}from"../chunks/helpers-DlRedD4d.js";import{y as X,F as V,$ as U,a0 as H,a1 as j,a2 as W,a3 as G,G as K,a4 as Y,a5 as J,a6 as q,a7 as Z,a8 as Q,p as ee,h as te,a9 as oe,aa as ne,ab as ae,R as ie,z as le,N as se,b as re,c as ce,ac as de,ad as ue,ae as pe,af as he,ag as me,S as ge,M as fe,Q as be,L as ve,ah as ye,ai as Ce,aj as Se,ak as we,V as xe,al as ke,X as Te,Y as $e,W as Ne,Z as Ie,am as Ee,an as Oe,ao as Ae,ap as De,D as Re,H as Fe,aq as Pe,ar as Le,as as _e,at as Me,au as Be,av as ze,aw as Xe,ax as Ve,ay as Ue,az as He,i as je,A as We,x as Ge,aA as Ke,K as Ye,aB as Je,aC as qe,aD as Ze,aE as Qe,aF as et,aG as tt,w as ot,O as nt,q as at,U as it,E as lt,aH as st,T as rt,aI as ct,aJ as dt,aK as ut,aL as pt,aM as ht,aN as mt,aO as gt,o as ft,aP as bt,aQ as vt,aR as yt,aS as Ct,aT as St,v as wt,aU as xt,aV as kt,aW as Tt,aX as $t,d as Nt,B as It,aY as Et,aZ as Ot,f as At,a_ as Dt,a$ as Rt,b0 as Ft,b1 as Pt,b2 as Lt,b3 as _t,b4 as Mt,b5 as Bt,b6 as zt,b7 as Xt,b8 as Vt,b9 as Ut,ba as Ht,bb as jt,bc as Wt,l as Gt,m as Kt,bd as Yt,be as Jt,bf as qt,bg as Zt,bh as Qt,bi as eo,bj as to,bk as oo,bl as no,bm as ao,_ as io,bn as lo,bo as so,bp as ro,bq as co,br as uo,bs as po,bt as ho,bu as mo,bv as go,bw as fo,bx as bo,by as vo,bz as yo,bA as Co,bB as So,bC as wo,bD as xo,bE as ko,bF as To,bG as $o,bH as No,bI as Io,bJ as Eo,bK as Oo,bL as Ao,bM as Do,bN as Ro,bO as Fo,bP as Po,bQ as Lo,bR as _o,bS as Mo,bT as Bo,bU as zo,bV as Xo,bW as Vo,bX as Uo,bY as Ho,bZ as jo,b_ as Wo,b$ as Go,c0 as Ko,c1 as Yo,c2 as Jo,c3 as qo,c4 as Zo,c5 as Qo,c6 as en,c7 as tn,c8 as on,c9 as nn,ca as an,cb as ln,cc as sn,cd as rn,ce as cn,cf as dn,cg as un,ch as pn,ci as hn,cj as mn,ck as gn,cl as fn,cm as bn,cn as vn,co as yn,cp as Cn,cq as Sn,cr as wn,cs as xn,ct as kn,cu as Tn,cv as $n,cw as Nn,cx as In,cy as En,cz as On,cA as An,cB as Dn,cC as Rn,cD as Fn,cE as Pn,cF as Ln,cG as _n,cH as Mn,cI as Bn,cJ as zn,cK as Xn,cL as Vn,cM as Un,cN as Hn,cO as jn,cP as Wn,cQ as Gn,cR as Kn,cS as Yn,cT as Jn,cU as qn,cV as Zn,cW as Qn,cX as ea,cY as ta,cZ as oa,c_ as na,c$ as aa,d0 as ia,d1 as la,d2 as sa,d3 as ra,d4 as ca,d5 as da,d6 as ua,d7 as pa,d8 as ha,d9 as ma,da as ga,db as fa,dc as ba,dd as va,de as ya,df as Ca,dg as Sa,j as wa,dh as xa,n as ka,di as Ta,dj as $a,dk as Na,dl as Ia,dm as Ea,dn as Oa,dp as Aa,dq as Da,dr as Ra,ds as Fa,dt as Pa,du as La,dv as _a,dw as Ma,dx as Ba,dy as za,dz as Xa,dA as Va,dB as Ua,dC as Ha,dD as ja,dE as Wa,dF as Ga,dG as Ka,dH as Ya,dI as Ja,dJ as qa,dK as Za,dL as Qa,dM as ei,dN as ti,dO as oi,dP as ni}from"../chunks/ui-components-D8ipj0yK.js";import{TrashIcon as ai,PlusIcon as ii,BookIcon as li,VSquareIcon as si,XSquareIcon as ri,DeleteIcon as ci,EditIcon as di,GoLogo as ui,JavaLogo as pi,ChevronRightIcon as hi,ActionIcon as mi,DestinationIcon as gi,ChevronUpIcon as fi,ChevronDownIcon as bi,VIcon as vi,XIcon as yi,InstrumentationRuleIcon as Ci,SourceIcon as Si,NamespacesIcon as wi,SettingsIcon as xi,PodIcon as ki,OdigosLogo as Ti,K8sLogo as $i,RefreshIcon as Ni,ExclamationCircleIcon as Ii,QuestionCircleIcon as Ei,InboundIcon as Oi,OutboundIcon as Ai,UserIcon as Di,ExpandIcon as Ri,SearchIcon as Fi,MinusIcon as Pi,CopyIcon as Li,DotIcon as _i,DownloadIcon as Mi,RefreshLeftArrowIcon as Bi,SamplingIcon as zi,ExclamationTriangleIcon as Xi,KeyIcon as Vi,DiagnoseIcon as Ui,TerminalIcon as Hi,ArrowRightIcon as ji,StarIcon as Wi,ArrowIcon as Gi,ConnectionsIcon as Ki,FilterIcon as Yi,DataStreamIcon as Ji,PipelineCollectorIcon as qi,ArrowDownSquareIcon as Zi,ArrowUpSquareIcon as Qi,GatewayIcon as el,YamlIcon as tl}from"../icons.js";import{S as ol,D as nl,A as al,P as il,a as ll,b as sl,R as rl,c as cl,O as dl,d as ul,e as pl,f as hl,W as ml,g as gl,C as fl,Y as bl,h as vl,i as yl,U as Cl}from"../chunks/index-Cl1o9W_f.js";import{u as Sl,f as wl,g as xl,e as kl,i as Tl,h as $l,S as Nl,k as Il,E as El,l as Ol,m as Al,j as Dl,b as Rl,d as Fl,a as Pl,A as Ll,R as _l,c as Ml,D as Bl}from"../chunks/source-instrument-form-context-0FWO95UV.js";import{createPortal as zl}from"react-dom";import"zustand";import"javascript-time-ago";import"../chunks/vendor-Be0cOokr.js";import"prism-react-renderer";import"react-error-boundary";import"virtua";const Xl=[{id:"CREDIT_CARD",label:"Credit card"}],Vl=[{id:X.CollectContainerAttributes,label:"Collect container attributes"},{id:X.CollectReplicaSetAttributes,label:"Collect ReplicaSet attributes"},{id:X.CollectWorkloadId,label:"Collect workload ID"},{id:X.CollectClusterId,label:"Collect cluster ID"}],Ul=[{id:J.Pod,label:J.Pod},{id:J.Namespace,label:J.Namespace},{id:J.Node,label:J.Node}],Hl=[{label:"Label key",keyName:"labelKey",placeholder:"app.kubernetes.io/name"},{label:"Attribute key",keyName:"attributeKey",placeholder:"app.kubernetes.name"},{label:"From sources",keyName:"fromSources",placeholder:"pod, namespace",tooltip:"Select multiple sources. Higher precedence sources (pod > namespace > node) will override lower ones.",componentType:"multi-dropdown",options:Ul}],jl=[{label:"Annotation key",keyName:"annotationKey",placeholder:"kubectl.kubernetes.io/restartedAt"},{label:"Attribute key",keyName:"attributeKey",placeholder:"kubectl.kubernetes.restartedAt"},{label:"From sources",keyName:"fromSources",placeholder:"pod, namespace",tooltip:"Select multiple sources. Higher precedence sources (pod > namespace > node) will override lower ones.",componentType:"multi-dropdown",options:Ul}],Wl=[{label:"Service",keyName:"serviceName",placeholder:"e.g. my-service",tooltip:"Service name: The rule applies to a specific service name. Only traces originating from this service’s root span will be considered."},{label:"HTTP route",keyName:"httpRoute",placeholder:"e.g. /api/v1/users",tooltip:"HTTP route: The specific HTTP route prefix to match for sampling. Only traces with routes beginning with this prefix will be considered. For instance, configuring /buy will also match /buy/product."},{label:"Threshold",keyName:"minimumLatencyThreshold",placeholder:"e.g. 1000",tooltip:"Minimum latency threshold (ms): Specifies the minimum latency in milliseconds; traces with latency below this threshold are ignored.",inputType:G.Number,min:0},{label:"Fallback",keyName:"fallbackSamplingRatio",placeholder:"e.g. 100",tooltip:"Fallback sampling ratio: Specifies the percentage of traces that meet the service/http_route filter but fall below the threshold that you still want to retain. For example, if a rule is set for service A and http_route B with a minimum latency threshold of 1 second, you might still want to keep some traces below this threshold. Setting the ratio to 20% ensures that 20% of these traces will be retained.",inputType:G.Number,min:0,max:100}],Gl=X.UrlTemplatizationRulesGroups,Kl=[{keyName:"kind",label:"Kind",placeholder:"Any kind",componentType:"dropdown",options:[{id:"Deployment",label:"Deployment"},{id:"StatefulSet",label:"StatefulSet"},{id:"DaemonSet",label:"DaemonSet"}]},{keyName:"name",label:"Name",placeholder:"Any name"}],Yl=[{label:"Service name",keyName:"serviceName",placeholder:"e.g. my-service",tooltip:"Specifies the service name to search within the trace (Across all available spans)."},{label:"Sampling ratio",keyName:"samplingRatio",placeholder:"e.g. 10",tooltip:"Specifies the sample rate for all traces.",inputType:G.Number,min:0,max:100},{label:"Fallback sampling ratio",keyName:"fallbackSamplingRatio",placeholder:"e.g. 100",tooltip:"Specifies the percentage of traces that don’t meet the service name filter and that you still like to retain.",inputType:G.Number,min:0,max:100}],Jl=[{label:"Service name",keyName:"serviceName",placeholder:"e.g. my-service",tooltip:"Specifies the service name to search within the trace (across all available spans)."},{label:"Attribute key",keyName:"attributeKey",placeholder:"e.g. http.request.method",tooltip:"Specifies the attribute key inside of the span."},{label:"Fallback sampling ratio",keyName:"fallbackSamplingRatio",placeholder:"e.g. 100",tooltip:"Specifies the percentage of traces that don’t meet the service name filter and that you still like to retain.",inputType:G.Number,min:0,max:100},{label:"Condition",keyName:"condition",tooltip:"An object representing the filters for span attributes filters.",componentType:ie.Dropdown,options:[{id:"stringCondition",label:"String condition"},{id:"numberCondition",label:"Number condition"},{id:"booleanCondition",label:"Boolean condition"},{id:"jsonCondition",label:"JSON condition"}]},{label:"Operation",keyName:"operation",tooltip:"Specifies the operation to run against the attribute.",componentType:ie.Dropdown,options:[{id:"exists",label:"Exists"},{id:"equals",label:"Equals"},{id:"not_equals",label:"Not equals"},{id:"contains",label:"Contains"},{id:"not_contains",label:"Not contains"},{id:"regex",label:"Regex"},{id:"greater_than",label:"Greater than"},{id:"less_than",label:"Less than"},{id:"greater_than_or_equal",label:"Greater than or equal"},{id:"less_than_or_equal",label:"Less than or equal"},{id:"is_valid_json",label:"Is valid JSON"},{id:"is_invalid_json",label:"Is invalid JSON"},{id:"jsonpath_exists",label:"JSON path exists"},{id:"key_equals",label:"Key equals"},{id:"key_not_equals",label:"Key not equals"}]},{label:"Expected value",keyName:"expectedValue",placeholder:"e.g. GET",tooltip:"The values to test the attribute against."},{label:"JSON path",keyName:"jsonPath",placeholder:"e.g. $.user.role",tooltip:"An expression used to navigate the JSON structure.",renderCondition:e=>"jsonCondition"===e.condition}],ql={[le.K8sAttributes]:({value:a,setValue:i,formErrors:l})=>(n(()=>{a[X.CollectContainerAttributes]||a[X.CollectReplicaSetAttributes]||a[X.CollectWorkloadId]||a[X.CollectClusterId]||a[X.LabelsAttributes]?.length||a[X.AnnotationsAttributes]?.length||(i(X.CollectContainerAttributes,!0),i(X.CollectReplicaSetAttributes,!0),i(X.CollectWorkloadId,!0),i(X.CollectClusterId,!0),i(X.LabelsAttributes,[]),i(X.AnnotationsAttributes,[]))},[]),e(o,{children:[t(V,{$gap:6,children:Vl.map(({id:o,label:n})=>e(V,{children:[t(H,{label:n,value:a[o]||!1,onChange:e=>i(o,e)}),t(j,{errorMessage:l[o]})]},o))}),t(Y,{name:"labelsAttributes",label:"Label attributes",limitFieldsPerRow:2,columns:Hl,values:a[X.LabelsAttributes]||[],setValues:e=>i(X.LabelsAttributes,e),errorMessage:l[X.LabelsAttributes]}),t(Y,{name:"annotationsAttributes",label:"Annotation attributes",limitFieldsPerRow:2,columns:jl,values:a[X.AnnotationsAttributes]||[],setValues:e=>i(X.AnnotationsAttributes,e),errorMessage:l[X.AnnotationsAttributes]})]})),[le.AddClusterInfo]:({value:n,setValue:a,formErrors:i})=>{const l=f();return e(o,{children:[t(q,{label:"Overwrite existing values",labelAlign:Z.Left,labelColor:l.v2.colors.silver[200],tooltip:"If enabled, the resource attributes will overwrite any existing attributes with the same name.",value:n[X.OverwriteExistingValues]||!1,onChange:e=>a(X.OverwriteExistingValues,e)}),t(Y,{name:"clusterAttributes",label:"Resource attributes",limitFieldsPerRow:2,columns:[{keyName:"attributeName",label:"Attribute name"},{keyName:"attributeStringValue",label:"Attribute value"}],values:n[X.ClusterAttributes]||[],setValues:e=>a(X.ClusterAttributes,e),errorMessage:i[X.ClusterAttributes]})]})},[le.DeleteAttributes]:({value:e,setValue:o,formErrors:n})=>t(Q,{name:"attributeNamesToDelete",label:"Attributes to delete",values:e[X.AttributeNamesToDelete]||[],setValues:e=>o(X.AttributeNamesToDelete,e),errorMessage:n[X.AttributeNamesToDelete]}),[le.RenameAttributes]:({value:e,setValue:o,formErrors:n})=>t(Y,{name:"renames",label:"Attributes to rename",limitFieldsPerRow:2,columns:[{keyName:"oldKey",label:"Old key"},{keyName:"newKey",label:"New key"}],values:Object.entries(e[X.Renames]||{}).map(([e,t])=>({oldKey:e,newKey:t})),setValues:e=>{const t={};e.forEach(e=>t[e.oldKey]=e.newKey),o(X.Renames,t)},errorMessage:n[X.Renames]}),[le.PiiMasking]:({value:o,setValue:a,formErrors:i})=>(n(()=>{o[X.PiiCategories]?.length||a(X.PiiCategories,Xl.map(({id:e})=>e))},[]),e(V,{$gap:12,children:[t(U,{label:"Attributes to mask"}),t(V,{$gap:6,children:Xl.map(({id:e,label:n})=>t(H,{label:n,value:o[X.PiiCategories]?.includes(e)||!1,onChange:t=>{const n=o[X.PiiCategories]||[],i=t?[...n,e]:n.filter(t=>t!==e);a(X.PiiCategories,i)}},e))}),t(j,{errorMessage:i[X.PiiCategories]})]})),[le.ErrorSampler]:({value:e,setValue:o,formErrors:n})=>{const a=n[X.FallbackSamplingRatio],i=K(e[X.FallbackSamplingRatio])?"":String(e[X.FallbackSamplingRatio]);return t(W,{name:"fallbackSamplingRatio",label:"Fallback sampling ratio",type:G.Number,min:0,max:100,value:i,placeholder:"0-100",onChange:e=>{return t=e.target.value,o(X.FallbackSamplingRatio,Math.max(0,Math.min(Number(t),100))||0);var t},errorMessage:a})},[le.ProbabilisticSampler]:({value:e,setValue:o,formErrors:n})=>{const a=n[X.SamplingPercentage],i=K(e[X.SamplingPercentage])?"":String(e[X.SamplingPercentage]);return t(W,{name:"samplingPercentage",label:"Sampling percentage",type:G.Number,min:0,max:100,value:i,placeholder:"0-100",onChange:e=>{return t=e.target.value,o(X.SamplingPercentage,Math.max(0,Math.min(Number(t),100))||0);var t},errorMessage:a})},[le.LatencySampler]:({value:e,setValue:o,formErrors:n})=>{const a=n[X.EndpointsFilters],i=e[X.EndpointsFilters]||[];return t(Y,{name:"endpointsFilters",limitFieldsPerRow:2,columns:Wl,values:i,setValues:e=>{o(X.EndpointsFilters,e.map(({serviceName:e,httpRoute:t,minimumLatencyThreshold:o,fallbackSamplingRatio:n})=>({serviceName:e,httpRoute:t,minimumLatencyThreshold:Number(o),fallbackSamplingRatio:Number(n)})))},errorMessage:a})},[le.ServiceNameSampler]:({value:e,setValue:o,formErrors:n})=>{const a=n[X.ServicesNameFilters],i=e[X.ServicesNameFilters]||[];return t(Y,{name:"servicesNameFilters",limitFieldsPerRow:2,columns:Yl,values:i,setValues:e=>{o(X.ServicesNameFilters,e.map(({serviceName:e,samplingRatio:t,fallbackSamplingRatio:o})=>({serviceName:e,samplingRatio:Number(t),fallbackSamplingRatio:Number(o)})))},errorMessage:a})},[le.SpanAttributeSampler]:({value:e,setValue:o,formErrors:n})=>{const a=n[X.AttributeFilters],i=(e[X.AttributeFilters]||[]).map(({serviceName:e,attributeKey:t,fallbackSamplingRatio:o,condition:n})=>{const a=Object.entries(n).filter(([e,t])=>t)[0][0];return{serviceName:e,attributeKey:t,fallbackSamplingRatio:o,condition:a,operation:n[a]?.operation,expectedValue:n[a]?.expectedValue,jsonPath:n[a]?.jsonPath}});return t(Y,{name:"attributeFilters",limitFieldsPerRow:2,columns:Jl,values:i,setValues:e=>{o(X.AttributeFilters,e.map(({serviceName:e,attributeKey:t,fallbackSamplingRatio:o,condition:n,operation:a,expectedValue:i,jsonPath:l})=>{const s={serviceName:e,attributeKey:t,fallbackSamplingRatio:Number(o),condition:{[n]:{operation:a,expectedValue:i}}};return l&&(s.condition[n].jsonPath=l),s}))},errorMessage:a})},[le.URLTemplatization]:({value:n,setValue:i,formErrors:l})=>{const s=f(),r=n[Gl]||[{filterK8sNamespace:"",workloadFilters:[],templatizationRules:[{template:""}],notes:""}],c=e=>i(Gl,e),d=(e,t)=>c(r.map((o,n)=>n===e?{...o,...t}:o));return e(o,{children:[r.map((o,n)=>e(a,{children:[t(ee,{}),e(V,{$gap:12,children:[e(te,{$justifyContent:"space-between",$alignItems:"center",children:[t(U,{label:`Rule Group ${n+1}`}),t(oe,{leftIcon:()=>t(ai,{fill:s.v2.colors.red[500]}),variant:ae.Secondary,size:ne.S,onClick:()=>{return e=n,c(r.filter((t,o)=>o!==e));var e},disabled:1===r.length})]}),t(W,{name:`urlGroup-${n}-namespace`,label:"Namespace",placeholder:"All namespaces",tooltip:"Filter rules to a specific Kubernetes namespace.",value:o.filterK8sNamespace||"",onChange:e=>d(n,{filterK8sNamespace:e.target.value})}),t(Y,{name:`urlGroup-${n}-workloadFilters`,label:"Workload filters",tooltip:"Optionally scope templates to specific workloads.",columns:Kl,values:o.workloadFilters||[],setValues:e=>d(n,{workloadFilters:e})}),t(Q,{name:`urlGroup-${n}-templates`,label:"Templates",required:!0,placeholder:"e.g. /user/{id}",values:o.templatizationRules.map(e=>e.template),setValues:e=>d(n,{templatizationRules:e.map(e=>({template:e}))})})]}),t(j,{errorMessage:l[Gl]})]},`url-templatization-group-${n}`)),t(oe,{variant:ae.Secondary,label:"Add rule group",leftIcon:ii,onClick:()=>c([...r,{filterK8sNamespace:"",workloadFilters:[],templatizationRules:[{template:""}],notes:""}])}),t(ee,{})]})}},Zl=({actionType:e,value:o,setValue:n,formErrors:a})=>{if(!e)return null;const i=ql[e];return i?t(i,{value:o,setValue:n,formErrors:a}):null},Ql=()=>{const o=f(),{selectedOption:n,genericForm:a}=Sl();if(!a||!n)return t(se,{title:"No active form"});const{formData:i,handleFormChange:l,formErrors:s}=a;return e(V,{$gap:24,children:[e(te,{$gap:12,$justifyContent:"space-between",children:[t(re,{size:ce.XXS,children:n.docsDescription}),t(oe,{label:"Docs",leftIcon:li,variant:ae.Text,size:ne.S,onClick:()=>window.open(`${de}${n.docsEndpoint}`,"_blank","noopener noreferrer")})]}),t(ue,{options:[{icon:si,label:"Enabled",value:!1,selectedBgColor:o.v2.colors.green[800]},{icon:ri,label:"Disabled",value:!0,selectedBgColor:o.v2.colors.red[800]}],selected:i.disabled,setSelected:e=>l("disabled",e)}),t(ol,{title:"Signals for processing",allowedSignals:n.allowedSignals,selectedSignals:i.signals||[],setSelectedSignals:e=>l("signals",e),errorMessage:s.signals}),t(W,{name:"actionName",label:"Action name",placeholder:"Use a name that describes the action...",value:i.name||"",onChange:({target:{value:e}})=>l("name",e),errorMessage:s.name}),t(Zl,{actionType:n.type,value:i.fields,setValue:(e,t)=>l(`fields.${e}`,t),formErrors:s}),t(pe,{name:"notes",label:"Notes",placeholder:"Your personal notes...",value:i.notes||"",onChange:({target:{value:e}})=>l("notes",e),errorMessage:s.notes})]})},es=({signals:e,fields:o,disabled:n,formData:a,handleFormChange:i,formErrors:l})=>o?.map(({renderCondition:o,componentType:s,type:r,name:c,title:d,tooltip:u,placeholder:p,value:h,required:m,options:g})=>{if(!(!o||he(o,e,a.fields)))return null;const f=c,b=a.fields.find(e=>e.key===f),v=b?b.value:h;return t(nl,{componentType:s,inputType:r,name:f,label:d,tooltip:u,disabled:n,required:m,placeholder:p,errorMessage:l[f],dropdownOptions:g,value:v||"",setValue:e=>i(f,e)},f)}),ts=g(te)`
|
|
2
2
|
position: sticky;
|
|
3
3
|
bottom: 4px;
|
|
4
4
|
align-self: center;
|
|
@@ -9,17 +9,17 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
9
9
|
background-color: ${({theme:e})=>e.v2.colors.black[500]};
|
|
10
10
|
box-shadow: 0 4px 16.7px 0 rgba(0, 0, 0, 0.83);
|
|
11
11
|
z-index: 1;
|
|
12
|
-
`,ts=i(({testConnection:o,isEdit:a},i)=>{const r=f(),{isVm:c}=y(),{activeForm:d,genericForm:u,validateFormData:p,thisUnsavedDestination:h,addUnsavedDestination:m,updateUnsavedDestination:g,deleteUnsavedDestination:b}=Sl(),[v,C]=l(h?.testResult),[S,w]=l(!!h);n(()=>{h?(C(h.testResult),w(!0)):(C(void 0),w(!1))},[h]);const x=async()=>{if(!d?.option.testConnectionSupported||!u||c)return;const e=await o(ye(u.formData));return C(e),e};return s(i,()=>({testConnection:x,testConnectionSupported:!!d?.option.testConnectionSupported}),[d?.option.testConnectionSupported,u,o]),u&&d?e(V,{$gap:24,style:{minHeight:"100%"},children:[e(te,{$gap:12,$justifyContent:"space-between",children:[v?v.succeeded?t(me,{status:ge.Success,message:v.message||"Connection OK",fullWidth:!0,smallIcon:!0}):t(me,{status:ge.Error,message:v.message||"Connection Failed",fullWidth:!0,smallIcon:!0}):t("div",{}),t(oe,{"data-id":"dest-form-docs",label:"Docs",leftIcon:ii,variant:ae.Text,size:ne.S,onClick:()=>window.open(`${de}/backends/${d.option.type}`,"_blank","noopener noreferrer")})]}),!c&&t(ue,{options:[{icon:li,label:"Enabled",value:!1,selectedBgColor:r.v2.colors.green[800]},{icon:si,label:"Disabled",value:!0,selectedBgColor:r.v2.colors.red[800]}],selected:u.formData.disabled,setSelected:e=>u.handleFormChange("disabled",e),disabled:S}),t(tl,{title:"This connection will monitor:",allowedSignals:ve(d.option.supportedSignals),selectedSignals:be(u.formData.exportedSignals),setSelectedSignals:e=>u.handleFormChange("exportedSignals",{logs:e.includes(fe.Logs),metrics:e.includes(fe.Metrics),traces:e.includes(fe.Traces),profiles:e.includes(fe.Profiles)}),disabled:S,errorMessage:u.formErrors.exportedSignals}),t(W,{name:"destinationName",label:"Destination name",placeholder:"Use a name that describes the destination...",value:u.formData.name,onChange:({target:{value:e}})=>u.handleFormChange("name",e),disabled:S,errorMessage:u.formErrors.name}),t(Ql,{signals:be(u.formData.exportedSignals),fields:d.dynamicFields,disabled:S,formData:u.formData,handleFormChange:(e,t)=>{u.handleFormChange("fields",u.formData.fields.map(o=>o.key===e?{...o,value:t}:o)),e&&u.formErrors[e]&&u.handleErrorChange(e,void 0)},formErrors:u.formErrors}),!a&&e(es,{$gap:8,$justifyContent:"center",children:[h&&t("div",{style:{width:"150px"},children:t(oe,{"data-id":"dest-form-delete",fullWidth:!0,label:"Delete",rightIcon:ri,variant:ae.Secondary,textColor:r.v2.colors.red[500],onClick:()=>b(d.unsavedIdx)})}),!c&&(!h||h.option.testConnectionSupported&&!S)&&t("div",{style:{width:"150px"},children:t(oe,{"data-id":"dest-form-test-connection",fullWidth:!0,label:"Test Connection",variant:ae.Secondary,onClick:x})}),h&&t("div",S?{style:{width:"150px"},children:t(oe,{"data-id":"dest-form-edit",fullWidth:!0,label:"Edit",rightIcon:ci,variant:ae.Secondary,onClick:()=>w(!1)})}:{style:{width:"150px"},children:t(oe,{"data-id":"dest-form-save",fullWidth:!0,label:"Save Changes",variant:ae.Primary,onClick:async()=>{const{errorMessage:e,preparedFormData:t}=p();if(!e){const e=await x(),o=!!e&&!e.succeeded;g(d.unsavedIdx,{formData:t,testResult:e},o)}}})}),!h&&t("div",{style:{width:"150px"},children:t(oe,{"data-id":"dest-form-add",fullWidth:!0,label:"Add Destination",variant:ae.Primary,onClick:async()=>{const{errorMessage:e,preparedFormData:t}=p();if(!e){const e=await x(),o=!!e&&!e.succeeded;m({formData:t,testResult:e},o)}}})})]})]}):t(se,{title:"No active form"})});ts.displayName="AddDestinationForm";const os=[{id:Se.FilePath,label:"Collect file path",tooltip:"Indicates whether to record the `code.filepath` attribute."},{id:Se.Function,label:"Collect function",tooltip:"Indicates whether to record the `code.function` attribute."},{id:Se.LineNumber,label:"Collect line number",tooltip:"Indicates whether to record the `code.lineno` attribute."}],ns=[{id:Se.Column,label:"Collect column",tooltip:"Indicates whether to record the `code.column` attribute."},{id:Se.Namespace,label:"Collect namespace",tooltip:"Indicates whether to record the `code.namespace` attribute."},{id:Se.StackTrace,label:"Collect stacktrace",tooltip:"Indicates whether to record the `code.stacktrace` attribute."}],as=["*"],is=[{id:ke.HttpRequest,label:"Collect HTTP request",tooltip:""},{id:ke.HttpResponse,label:"Collect HTTP response",tooltip:""},{id:ke.DbQuery,label:"Collect DB query",tooltip:""},{id:ke.Messaging,label:"Collect messaging",tooltip:""}],ls={[Ie.Java]:[new $e("","")],[Ie.Golang]:[new Te("")]},ss={[Ne.CodeAttributes]:({value:a,setValue:i,formErrors:l})=>{const s=l.codeAttributes,c=r(()=>Object.entries(a.codeAttributes||{}).filter(([e,t])=>!!t).map(([e])=>e),[a]);n(()=>{if(!c.length&&!s){const e={[Se.FilePath]:!0,[Se.Function]:!0,[Se.LineNumber]:!0,[Se.Column]:null,[Se.Namespace]:null,[Se.StackTrace]:null};i("codeAttributes",e)}},[]);const d=(e,t)=>{const o=t?[...c,e]:c.filter(t=>t!==e),n=Object.values(Se).reduce((e,t)=>(e[t]=!!o.includes(t)||null,e),{});i("codeAttributes",n)};return e(o,{children:[e(V,{$gap:12,children:[t(re,{size:ce.XS,color:Ce.Secondary,nowrap:!0,children:"Recommended data to collect"}),t(V,{$gap:6,children:os.map(({id:e,label:o,tooltip:n})=>t(we,{text:n,withIcon:!0,children:t(H,{label:o,value:c.includes(e),onChange:t=>d(e,t)})},e))}),t(j,{errorMessage:s})]}),e(V,{$gap:12,children:[t(re,{size:ce.XS,color:Ce.Secondary,nowrap:!0,children:"Verbose data to collect"}),t(V,{$gap:6,children:ns.map(({id:e,label:o,tooltip:n})=>t(we,{text:n,withIcon:!0,children:t(H,{label:o,value:c.includes(e),onChange:t=>d(e,t)})},e))}),t(j,{errorMessage:s})]})]})},[Ne.CustomInstrumentation]:({value:a,setValue:i,formErrors:l})=>{const s=l.customInstrumentations,c=r(()=>(a?.customInstrumentations?.[Ie.Golang]||[]).map(e=>new Te(e.packageName,e.functionName,e.receiverName,e.receiverMethodName)),[a]),d=r(()=>(a?.customInstrumentations?.[Ie.Java]||[]).map(e=>new $e(e.className,e.methodName)),[a]);return n(()=>{a?.customInstrumentations||s||i("customInstrumentations",{[Ie.Golang]:ls[Ie.Golang],[Ie.Java]:ls[Ie.Java]})},[]),e(o,{children:[e(V,{children:[e(te,{$gap:8,children:[t(di,{}),t(U,{label:"Golang custom probes"})]}),t(Y,{name:"golangProbes",columns:[{keyName:"packageName",label:"Package name",placeholder:"e.g. github.com/my-org/my-package",tooltip:"The full import path of the package containing the function or method to be instrumented."},{keyName:"functionName",label:"Function name",placeholder:"e.g. myFunction",tooltip:"The name of the function to be instrumented. Leave empty if instrumenting a receiver method."},{keyName:"receiverName",label:"Receiver name",placeholder:"e.g. myReceiver",tooltip:"The name of the receiver type if instrumenting a method. Leave empty if instrumenting a standalone function."},{keyName:"receiverMethodName",label:"Receiver method name",placeholder:"e.g. myMethod",tooltip:"The name of the method to be instrumented. Leave empty if instrumenting a standalone function."}],values:c,setValues:e=>{const t={};t[Ie.Golang]=e.map(e=>new Te(e.packageName,e.functionName,e.receiverName,e.receiverMethodName)),t[Ie.Java]=d,i("customInstrumentations",t)},errorMessage:s,limitFieldsPerRow:2})]}),e(V,{children:[e(te,{$gap:8,children:[t(ui,{}),t(U,{label:"Java custom probes"})]}),t(Y,{name:"javaProbes",columns:[{keyName:"className",label:"Class name",placeholder:"e.g. com.example.MyClass",tooltip:"The name of the class to be instrumented."},{keyName:"methodName",label:"Method name",placeholder:"e.g. myMethod",tooltip:"The name of the method to be instrumented."}],values:d,setValues:e=>{const t={};t[Ie.Golang]=c,t[Ie.Java]=e.map(e=>new $e(e.className,e.methodName)),i("customInstrumentations",t)},errorMessage:s,limitFieldsPerRow:2})]})]})},[Ne.HeadersCollection]:({value:e,setValue:o,formErrors:a})=>{const i=a.headersCollection,l=r(()=>e?.headersCollection?.[xe.HeaderKeys]||[],[e]),s=e=>{const t={[xe.HeaderKeys]:e};o("headersCollection",t)};return n(()=>{l.length||i||s(as)},[]),t(Q,{name:"headerKeys",label:"Header keys",tooltip:"Specify which headers you want to collect",helpMessage:"Asterisk (*) will collect all headers",values:l,setValues:s,errorMessage:i})},[Ne.PayloadCollection]:({value:o,setValue:a,formErrors:i})=>{const l=i.payloadCollection,s=r(()=>Object.entries(o.payloadCollection||{}).filter(([e,t])=>!!t).map(([e])=>e),[o]);n(()=>{if(!s.length&&!l){const e={[ke.HttpRequest]:{},[ke.HttpResponse]:{},[ke.DbQuery]:{},[ke.Messaging]:{}};a("payloadCollection",e)}},[]);return e(V,{$gap:12,children:[t(re,{size:ce.XS,color:Ce.Secondary,nowrap:!0,children:"Type of data to collect"}),t(V,{$gap:6,children:is.map(({id:e,label:o,tooltip:n})=>t(we,{text:n,withIcon:!0,children:t(H,{label:o,value:s.includes(e),onChange:t=>((e,t)=>{const o=t?[...s,e]:s.filter(t=>t!==e),n={[ke.HttpRequest]:o.includes(ke.HttpRequest)?{}:null,[ke.HttpResponse]:o.includes(ke.HttpResponse)?{}:null,[ke.DbQuery]:o.includes(ke.DbQuery)?{}:null,[ke.Messaging]:o.includes(ke.Messaging)?{}:null};a("payloadCollection",n)})(e,t)})},e))}),t(j,{errorMessage:l})]})},[Ne.UnknownType]:null},rs=({ruleType:e,value:o,setValue:n,formErrors:a})=>{if(!e)return null;const i=ss[e];return i?t(i,{value:o,setValue:n,formErrors:a}):null},cs=()=>{const o=f(),{selectedOption:n,genericForm:a}=wl();if(!a||!n)return t(se,{title:"No active form"});const{formData:i,handleFormChange:l,formErrors:s}=a;return e(V,{$gap:24,children:[e(te,{$gap:12,$justifyContent:"space-between",children:[t(re,{size:ce.XXS,children:n.docsDescription}),t(oe,{label:"Docs",leftIcon:ii,variant:ae.Text,size:ne.S,onClick:()=>window.open(`${de}${n.docsEndpoint}`,"_blank","noopener noreferrer")})]}),e(te,{$gap:12,children:[t(re,{size:ce.XS,color:Ce.Secondary,nowrap:!0,children:"Supported Languages:"}),n.supportedLanguages.map(e=>t(Ee,{label:Ae[e],leftIcon:Oe(e),status:ge.Default,useSecondaryTone:!0},e))]}),t(ue,{options:[{icon:li,label:"Enabled",value:!1,selectedBgColor:o.v2.colors.green[800]},{icon:si,label:"Disabled",value:!0,selectedBgColor:o.v2.colors.red[800]}],selected:i.disabled,setSelected:e=>l("disabled",e)}),t(W,{name:"ruleName",label:"Rule name",placeholder:"Use a name that describes the rule...",value:i.ruleName,onChange:({target:{value:e}})=>l("ruleName",e),errorMessage:s.ruleName}),t(rs,{ruleType:n.type,value:i,setValue:(e,t)=>l(e,t),formErrors:s}),t(pe,{name:"notes",label:"Notes",placeholder:"Your personal notes...",value:i.notes,onChange:({target:{value:e}})=>l("notes",e),errorMessage:s.notes})]})},ds=()=>{const{pendingMerge:e,confirmMerge:o,cancelMerge:n}=xl();if(!e)return null;const{existingName:a,editingName:i}=e;return t(De,{isOpen:!0,onClose:n,title:"Merge with existing Data Stream?",description:Re.DATA_STREAM_MERGE_WARNING(i,a),approveButton:{"data-id":"data-stream-merge-confirm",label:"Merge",variant:ae.Primary,onClick:o},denyButton:{"data-id":"data-stream-merge-cancel",label:"Cancel",variant:ae.Secondary,onClick:n}})},us=({autoFocus:o})=>{const{dataStreams:n}=Fe(),{genericForm:a,excludeName:i,editingName:l}=xl(),{formData:s,formErrors:c,handleFormChange:d}=a,u=s.name,p=r(()=>n.find(e=>e.name===u&&e.name!==i),[n,u,i]);return e(V,{$width:"100%",$gap:12,children:[t(W,{name:"data-stream-name",label:Re.STREAM_NAME,placeholder:Re.NAME_YOUR_STREAM_PLACEHOLDER,tooltip:Re.STREAM_DESCRIPTION,required:!0,autoFocus:o,value:u,onChange:e=>d("name",e.target.value),errorMessage:c.name}),p&&t(me,{status:ge.Warning,message:Re.DATA_STREAM_MERGE_WARNING(l,p.name),fullWidth:!0})]})},ps=()=>{const{selectedStreamName:e}=Fe(),{genericForm:o}=kl();if(!o)return t(se,{title:"No active form"});const{formData:n,handleFormChange:a,formErrors:i}=o;return t(W,{name:"sourceName",label:Re.NAME,tooltip:"This overrides the default service name (service.name) reported in your telemetry.",placeholder:"Use a name that overrides the source name",value:n.otelServiceName,onChange:({target:{value:t}})=>{a("otelServiceName",t),a("currentStreamName",e)},errorMessage:i.otelServiceName})},hs=[{value:"all",label:"Drop All"},{value:"sample",label:"Sample"}],ms=g.div`
|
|
12
|
+
`,os=i(({testConnection:o,isEdit:a},i)=>{const r=f(),{isVm:c}=y(),{activeForm:d,genericForm:u,validateFormData:p,thisUnsavedDestination:h,addUnsavedDestination:m,updateUnsavedDestination:g,deleteUnsavedDestination:b}=wl(),[v,C]=l(h?.testResult),[S,w]=l(!!h);n(()=>{h?(C(h.testResult),w(!0)):(C(void 0),w(!1))},[h]);const x=async()=>{if(!d?.option.testConnectionSupported||!u||c)return;const e=await o(ye(u.formData));return C(e),e};return s(i,()=>({testConnection:x,testConnectionSupported:!!d?.option.testConnectionSupported}),[d?.option.testConnectionSupported,u,o]),u&&d?e(V,{$gap:24,style:{minHeight:"100%"},children:[e(te,{$gap:12,$justifyContent:"space-between",children:[v?v.succeeded?t(me,{status:ge.Success,message:v.message||"Connection OK",fullWidth:!0,smallIcon:!0}):t(me,{status:ge.Error,message:v.message||"Connection Failed",fullWidth:!0,smallIcon:!0}):t("div",{}),t(oe,{"data-id":"dest-form-docs",label:"Docs",leftIcon:li,variant:ae.Text,size:ne.S,onClick:()=>window.open(`${de}/backends/${d.option.type}`,"_blank","noopener noreferrer")})]}),!c&&t(ue,{options:[{icon:si,label:"Enabled",value:!1,selectedBgColor:r.v2.colors.green[800]},{icon:ri,label:"Disabled",value:!0,selectedBgColor:r.v2.colors.red[800]}],selected:u.formData.disabled,setSelected:e=>u.handleFormChange("disabled",e),disabled:S}),t(ol,{title:"This connection will monitor:",allowedSignals:ve(d.option.supportedSignals),selectedSignals:be(u.formData.exportedSignals),setSelectedSignals:e=>u.handleFormChange("exportedSignals",{logs:e.includes(fe.Logs),metrics:e.includes(fe.Metrics),traces:e.includes(fe.Traces),profiles:e.includes(fe.Profiles)}),disabled:S,errorMessage:u.formErrors.exportedSignals}),t(W,{name:"destinationName",label:"Destination name",placeholder:"Use a name that describes the destination...",value:u.formData.name,onChange:({target:{value:e}})=>u.handleFormChange("name",e),disabled:S,errorMessage:u.formErrors.name}),t(es,{signals:be(u.formData.exportedSignals),fields:d.dynamicFields,disabled:S,formData:u.formData,handleFormChange:(e,t)=>{u.handleFormChange("fields",u.formData.fields.map(o=>o.key===e?{...o,value:t}:o)),e&&u.formErrors[e]&&u.handleErrorChange(e,void 0)},formErrors:u.formErrors}),!a&&e(ts,{$gap:8,$justifyContent:"center",children:[h&&t("div",{style:{width:"150px"},children:t(oe,{"data-id":"dest-form-delete",fullWidth:!0,label:"Delete",rightIcon:ci,variant:ae.Secondary,textColor:r.v2.colors.red[500],onClick:()=>b(d.unsavedIdx)})}),!c&&(!h||h.option.testConnectionSupported&&!S)&&t("div",{style:{width:"150px"},children:t(oe,{"data-id":"dest-form-test-connection",fullWidth:!0,label:"Test Connection",variant:ae.Secondary,onClick:x})}),h&&t("div",S?{style:{width:"150px"},children:t(oe,{"data-id":"dest-form-edit",fullWidth:!0,label:"Edit",rightIcon:di,variant:ae.Secondary,onClick:()=>w(!1)})}:{style:{width:"150px"},children:t(oe,{"data-id":"dest-form-save",fullWidth:!0,label:"Save Changes",variant:ae.Primary,onClick:async()=>{const{errorMessage:e,preparedFormData:t}=p();if(!e){const e=await x(),o=!!e&&!e.succeeded;g(d.unsavedIdx,{formData:t,testResult:e},o)}}})}),!h&&t("div",{style:{width:"150px"},children:t(oe,{"data-id":"dest-form-add",fullWidth:!0,label:"Add Destination",variant:ae.Primary,onClick:async()=>{const{errorMessage:e,preparedFormData:t}=p();if(!e){const e=await x(),o=!!e&&!e.succeeded;m({formData:t,testResult:e},o)}}})})]})]}):t(se,{title:"No active form"})});os.displayName="AddDestinationForm";const ns=[{id:Se.FilePath,label:"Collect file path",tooltip:"Indicates whether to record the `code.filepath` attribute."},{id:Se.Function,label:"Collect function",tooltip:"Indicates whether to record the `code.function` attribute."},{id:Se.LineNumber,label:"Collect line number",tooltip:"Indicates whether to record the `code.lineno` attribute."}],as=[{id:Se.Column,label:"Collect column",tooltip:"Indicates whether to record the `code.column` attribute."},{id:Se.Namespace,label:"Collect namespace",tooltip:"Indicates whether to record the `code.namespace` attribute."},{id:Se.StackTrace,label:"Collect stacktrace",tooltip:"Indicates whether to record the `code.stacktrace` attribute."}],is=["*"],ls=[{id:ke.HttpRequest,label:"Collect HTTP request",tooltip:""},{id:ke.HttpResponse,label:"Collect HTTP response",tooltip:""},{id:ke.DbQuery,label:"Collect DB query",tooltip:""},{id:ke.Messaging,label:"Collect messaging",tooltip:""}],ss={[Ne.Java]:[new $e("","")],[Ne.Golang]:[new Te("")]},rs={[Ie.CodeAttributes]:({value:a,setValue:i,formErrors:l})=>{const s=l.codeAttributes,c=r(()=>Object.entries(a.codeAttributes||{}).filter(([e,t])=>!!t).map(([e])=>e),[a]);n(()=>{if(!c.length&&!s){const e={[Se.FilePath]:!0,[Se.Function]:!0,[Se.LineNumber]:!0,[Se.Column]:null,[Se.Namespace]:null,[Se.StackTrace]:null};i("codeAttributes",e)}},[]);const d=(e,t)=>{const o=t?[...c,e]:c.filter(t=>t!==e),n=Object.values(Se).reduce((e,t)=>(e[t]=!!o.includes(t)||null,e),{});i("codeAttributes",n)};return e(o,{children:[e(V,{$gap:12,children:[t(re,{size:ce.XS,color:Ce.Secondary,nowrap:!0,children:"Recommended data to collect"}),t(V,{$gap:6,children:ns.map(({id:e,label:o,tooltip:n})=>t(we,{text:n,withIcon:!0,children:t(H,{label:o,value:c.includes(e),onChange:t=>d(e,t)})},e))}),t(j,{errorMessage:s})]}),e(V,{$gap:12,children:[t(re,{size:ce.XS,color:Ce.Secondary,nowrap:!0,children:"Verbose data to collect"}),t(V,{$gap:6,children:as.map(({id:e,label:o,tooltip:n})=>t(we,{text:n,withIcon:!0,children:t(H,{label:o,value:c.includes(e),onChange:t=>d(e,t)})},e))}),t(j,{errorMessage:s})]})]})},[Ie.CustomInstrumentation]:({value:a,setValue:i,formErrors:l})=>{const s=l.customInstrumentations,c=r(()=>(a?.customInstrumentations?.[Ne.Golang]||[]).map(e=>new Te(e.packageName,e.functionName,e.receiverName,e.receiverMethodName)),[a]),d=r(()=>(a?.customInstrumentations?.[Ne.Java]||[]).map(e=>new $e(e.className,e.methodName)),[a]);return n(()=>{a?.customInstrumentations||s||i("customInstrumentations",{[Ne.Golang]:ss[Ne.Golang],[Ne.Java]:ss[Ne.Java]})},[]),e(o,{children:[e(V,{children:[e(te,{$gap:8,children:[t(ui,{}),t(U,{label:"Golang custom probes"})]}),t(Y,{name:"golangProbes",columns:[{keyName:"packageName",label:"Package name",placeholder:"e.g. github.com/my-org/my-package",tooltip:"The full import path of the package containing the function or method to be instrumented."},{keyName:"functionName",label:"Function name",placeholder:"e.g. myFunction",tooltip:"The name of the function to be instrumented. Leave empty if instrumenting a receiver method."},{keyName:"receiverName",label:"Receiver name",placeholder:"e.g. myReceiver",tooltip:"The name of the receiver type if instrumenting a method. Leave empty if instrumenting a standalone function."},{keyName:"receiverMethodName",label:"Receiver method name",placeholder:"e.g. myMethod",tooltip:"The name of the method to be instrumented. Leave empty if instrumenting a standalone function."}],values:c,setValues:e=>{const t={};t[Ne.Golang]=e.map(e=>new Te(e.packageName,e.functionName,e.receiverName,e.receiverMethodName)),t[Ne.Java]=d,i("customInstrumentations",t)},errorMessage:s,limitFieldsPerRow:2})]}),e(V,{children:[e(te,{$gap:8,children:[t(pi,{}),t(U,{label:"Java custom probes"})]}),t(Y,{name:"javaProbes",columns:[{keyName:"className",label:"Class name",placeholder:"e.g. com.example.MyClass",tooltip:"The name of the class to be instrumented."},{keyName:"methodName",label:"Method name",placeholder:"e.g. myMethod",tooltip:"The name of the method to be instrumented."}],values:d,setValues:e=>{const t={};t[Ne.Golang]=c,t[Ne.Java]=e.map(e=>new $e(e.className,e.methodName)),i("customInstrumentations",t)},errorMessage:s,limitFieldsPerRow:2})]})]})},[Ie.HeadersCollection]:({value:e,setValue:o,formErrors:a})=>{const i=a.headersCollection,l=r(()=>e?.headersCollection?.[xe.HeaderKeys]||[],[e]),s=e=>{const t={[xe.HeaderKeys]:e};o("headersCollection",t)};return n(()=>{l.length||i||s(is)},[]),t(Q,{name:"headerKeys",label:"Header keys",tooltip:"Specify which headers you want to collect",helpMessage:"Asterisk (*) will collect all headers",values:l,setValues:s,errorMessage:i})},[Ie.PayloadCollection]:({value:o,setValue:a,formErrors:i})=>{const l=i.payloadCollection,s=r(()=>Object.entries(o.payloadCollection||{}).filter(([e,t])=>!!t).map(([e])=>e),[o]);n(()=>{if(!s.length&&!l){const e={[ke.HttpRequest]:{},[ke.HttpResponse]:{},[ke.DbQuery]:{},[ke.Messaging]:{}};a("payloadCollection",e)}},[]);return e(V,{$gap:12,children:[t(re,{size:ce.XS,color:Ce.Secondary,nowrap:!0,children:"Type of data to collect"}),t(V,{$gap:6,children:ls.map(({id:e,label:o,tooltip:n})=>t(we,{text:n,withIcon:!0,children:t(H,{label:o,value:s.includes(e),onChange:t=>((e,t)=>{const o=t?[...s,e]:s.filter(t=>t!==e),n={[ke.HttpRequest]:o.includes(ke.HttpRequest)?{}:null,[ke.HttpResponse]:o.includes(ke.HttpResponse)?{}:null,[ke.DbQuery]:o.includes(ke.DbQuery)?{}:null,[ke.Messaging]:o.includes(ke.Messaging)?{}:null};a("payloadCollection",n)})(e,t)})},e))}),t(j,{errorMessage:l})]})},[Ie.UnknownType]:null},cs=({ruleType:e,value:o,setValue:n,formErrors:a})=>{if(!e)return null;const i=rs[e];return i?t(i,{value:o,setValue:n,formErrors:a}):null},ds=()=>{const o=f(),{selectedOption:n,genericForm:a}=xl();if(!a||!n)return t(se,{title:"No active form"});const{formData:i,handleFormChange:l,formErrors:s}=a;return e(V,{$gap:24,children:[e(te,{$gap:12,$justifyContent:"space-between",children:[t(re,{size:ce.XXS,children:n.docsDescription}),t(oe,{label:"Docs",leftIcon:li,variant:ae.Text,size:ne.S,onClick:()=>window.open(`${de}${n.docsEndpoint}`,"_blank","noopener noreferrer")})]}),e(te,{$gap:12,children:[t(re,{size:ce.XS,color:Ce.Secondary,nowrap:!0,children:"Supported Languages:"}),n.supportedLanguages.map(e=>t(Ee,{label:Oe[e],leftIcon:Ae(e),status:ge.Default,useSecondaryTone:!0},e))]}),t(ue,{options:[{icon:si,label:"Enabled",value:!1,selectedBgColor:o.v2.colors.green[800]},{icon:ri,label:"Disabled",value:!0,selectedBgColor:o.v2.colors.red[800]}],selected:i.disabled,setSelected:e=>l("disabled",e)}),t(W,{name:"ruleName",label:"Rule name",placeholder:"Use a name that describes the rule...",value:i.ruleName,onChange:({target:{value:e}})=>l("ruleName",e),errorMessage:s.ruleName}),t(cs,{ruleType:n.type,value:i,setValue:(e,t)=>l(e,t),formErrors:s}),t(pe,{name:"notes",label:"Notes",placeholder:"Your personal notes...",value:i.notes,onChange:({target:{value:e}})=>l("notes",e),errorMessage:s.notes})]})},us=()=>{const{pendingMerge:e,confirmMerge:o,cancelMerge:n}=kl();if(!e)return null;const{existingName:a,editingName:i}=e;return t(De,{isOpen:!0,onClose:n,title:"Merge with existing Data Stream?",description:Re.DATA_STREAM_MERGE_WARNING(i,a),approveButton:{"data-id":"data-stream-merge-confirm",label:"Merge",variant:ae.Primary,onClick:o},denyButton:{"data-id":"data-stream-merge-cancel",label:"Cancel",variant:ae.Secondary,onClick:n}})},ps=({autoFocus:o})=>{const{dataStreams:n}=Fe(),{genericForm:a,excludeName:i,editingName:l}=kl(),{formData:s,formErrors:c,handleFormChange:d}=a,u=s.name,p=r(()=>n.find(e=>e.name===u&&e.name!==i),[n,u,i]);return e(V,{$width:"100%",$gap:12,children:[t(W,{name:"data-stream-name",label:Re.STREAM_NAME,placeholder:Re.NAME_YOUR_STREAM_PLACEHOLDER,tooltip:Re.STREAM_DESCRIPTION,required:!0,autoFocus:o,value:u,onChange:e=>d("name",e.target.value),errorMessage:c.name}),p&&t(me,{status:ge.Warning,message:Re.DATA_STREAM_MERGE_WARNING(l,p.name),fullWidth:!0})]})},hs=()=>{const{selectedStreamName:e}=Fe(),{genericForm:o}=Tl();if(!o)return t(se,{title:"No active form"});const{formData:n,handleFormChange:a,formErrors:i}=o;return t(W,{name:"sourceName",label:Re.NAME,tooltip:"This overrides the default service name (service.name) reported in your telemetry.",placeholder:"Use a name that overrides the source name",value:n.otelServiceName,onChange:({target:{value:t}})=>{a("otelServiceName",t),a("currentStreamName",e)},errorMessage:i.otelServiceName})},ms=[{value:"all",label:"Drop All"},{value:"sample",label:"Sample"}],gs=g.div`
|
|
13
13
|
display: flex;
|
|
14
14
|
flex-direction: column;
|
|
15
15
|
gap: 24px;
|
|
16
|
-
`,
|
|
16
|
+
`,fs=g.div`
|
|
17
17
|
display: contents;
|
|
18
18
|
& > * {
|
|
19
19
|
opacity: ${({$faded:e})=>e?.4:1};
|
|
20
20
|
transition: opacity 0.2s ease;
|
|
21
21
|
}
|
|
22
|
-
`,
|
|
22
|
+
`,bs=({value:e})=>{const o=f();return t(Ee,e?{status:ge.Success,label:Xe,leftIcon:si}:{label:Ve,leftIcon:ri,backgroundColor:o.v2.colors.silver[500],textColor:o.v2.colors.white[500]})},vs=({value:e,onChange:o})=>{const n=f(),a=r(()=>[{icon:si,label:Xe,value:!0,selectedBgColor:n.v2.colors.green[800]},{icon:ri,label:Ve,value:!1,selectedBgColor:n.v2.colors.silver[500]}],[n]);return t(ue,{options:a,selected:e,setSelected:o??(()=>{}),disabled:!o})},ys=()=>{const e=$l();switch(e.formType){case Nl.Create:return t(Cs,{category:e.category,formData:e.formData,onChange:e.handleChange,sourceOptions:e.sourceOptions,namespaceOptions:e.namespaceOptions,renderAction:()=>t(vs,{value:!e.formData.disabled,onChange:t=>e.handleChange({disabled:!t})})});case Nl.View:return e.data?e.isEditing?t(Cs,{category:e.data.category,formData:e.formData,onChange:e.handleChange,sourceOptions:e.sourceOptions,namespaceOptions:e.namespaceOptions,renderAction:()=>t(vs,{value:!e.formData.disabled,onChange:t=>e.handleChange({disabled:!t})})}):t(Ss,{data:e.data,renderAction:()=>t(bs,{value:!e.data?.rule.disabled})}):null;case Nl.EditAutoNoisy:return t(ws,{enabled:e.localEnabled,summary:e.summary,inactiveTitle:ze,sectionTitle:_e,sectionSubTitle:Be,presetLabel:Le,customInputName:"sampling-auto-input-custom-percentage",percentageMode:e.percentageMode,setPercentageMode:e.setPercentageMode,percentagePreset:e.percentagePreset,setPercentagePreset:e.setPercentagePreset,customPercentage:e.customPercentage,setCustomPercentage:e.setCustomPercentage,renderAction:()=>t(vs,{value:e.localEnabled,onChange:e.setLocalEnabled})});case Nl.EditAutoCostReduction:return t(ws,{enabled:e.localEnabled,summary:e.summary,inactiveTitle:Me,sectionTitle:_e,presetLabel:Le,customInputName:"sampling-cr-auto-input-custom-percentage",showModeToggle:!1,percentageMode:e.percentageMode,setPercentageMode:e.setPercentageMode,percentagePreset:e.percentagePreset,setPercentagePreset:e.setPercentagePreset,customPercentage:e.customPercentage,setCustomPercentage:e.setCustomPercentage,renderAction:()=>t(vs,{value:e.localEnabled,onChange:e.setLocalEnabled})});case Nl.EditAutoHighlyRelevant:return t(gs,{children:t(al,{title:e.localEnabled?void 0:Pe,summary:e.summary,renderAction:()=>t(vs,{value:e.localEnabled,onChange:e.setLocalEnabled})})})}},Cs=({category:o,formData:n,onChange:a,sourceOptions:i,namespaceOptions:l,renderAction:s})=>e(gs,{children:[t(sl,{category:o,formState:n,renderAction:s}),e(fs,{$faded:!!n.disabled,children:[t(rl,{category:o,formState:n,onChange:a}),t(cl,{formState:n,onChange:a,sourceOptions:i,namespaceOptions:l}),t(dl,{category:o,formState:n,onChange:a}),"highlyRelevant"===o&&t(ul,{formState:n,onChange:a}),"highlyRelevant"===o&&t(pl,{ruleType:n.ruleType,formState:n,onChange:a}),t(hl,{category:o,formState:n,onChange:a})]})]}),Ss=({data:o,renderAction:n})=>e(gs,{children:[t(sl,{readOnly:!0,summary:o.summary,renderAction:n}),t(rl,{readOnly:!0,data:o}),t(cl,{readOnly:!0,scopes:C(o.rule.sourceScopes)}),t(dl,{readOnly:!0,data:o}),t(hl,{readOnly:!0,data:o}),"highlyRelevant"===o.category&&t(pl,{readOnly:!0,rule:o.rule})]}),ws=({enabled:o,summary:n,inactiveTitle:a,sectionTitle:i,sectionSubTitle:l,presetLabel:s,customInputName:r,showModeToggle:d=!0,percentageMode:u,setPercentageMode:p,percentagePreset:h,setPercentagePreset:m,customPercentage:g,setCustomPercentage:f,renderAction:b})=>{const v=c(e=>p(e),[p]),y=c(e=>m(e),[m]),C=c(e=>f(e.target.value),[f]),S=!d||"sample"===u;return e(gs,{children:[t(al,{title:o?void 0:a,summary:n,renderAction:b}),t(fs,{$faded:!o,children:e(Ue,{richTitle:{title:i,subTitle:l},children:[d&&t(V,{$alignItems:"flex-start",children:t(ue,{options:ms,selected:u,setSelected:v})}),S&&t(il,{description:s,options:ll,selected:h,onSelect:y,customName:r,customLabel:He,customPlaceholder:"5%",customValue:g,onCustomChange:C})]})})]})},xs=g.div`
|
|
23
23
|
display: flex;
|
|
24
24
|
align-items: center;
|
|
25
25
|
justify-content: space-between;
|
|
@@ -32,32 +32,32 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
32
32
|
&:hover {
|
|
33
33
|
background-color: ${({$isSelected:e,$purpleColors:t,theme:o})=>e?t?o.v2.colors.purple[700]:o.v2.colors.silver[600]:t?o.v2.colors.purple[800]:o.v2.colors.silver[700]};
|
|
34
34
|
}
|
|
35
|
-
`,
|
|
35
|
+
`,ks=g.div`
|
|
36
36
|
display: flex;
|
|
37
37
|
align-items: center;
|
|
38
38
|
justify-content: center;
|
|
39
39
|
padding: 8px;
|
|
40
40
|
border-radius: 8px;
|
|
41
41
|
background-color: ${({theme:e})=>e.v2.colors.white[500]+je["004"]};
|
|
42
|
-
`,
|
|
42
|
+
`,Ts=({dataId:o,icon:n,title:a,description:i,withCarret:l,purpleColors:s,disabled:r,children:c,isSelected:d,onClick:u,isChecked:p,isPartiallyChecked:h,onCheckboxChange:m})=>e(xs,{"data-id":o||`list-item-${a}`,$isSelected:d,$purpleColors:s,$disabled:r,onClick:()=>!d&&!r&&u(),children:[e(V,{$gap:4,children:[e(te,{$gap:12,children:[m&&t(H,{partiallyChecked:h||!1,value:p||!1,onChange:e=>m(e)}),n&&t(ks,{children:t(n,{size:20})}),t(re,{size:ce.XS,children:a})]}),i&&t(re,{size:ce.XXXS,color:Ce.Secondary,children:i})]}),(l||c)&&e(te,{$gap:8,children:[c,l&&t(hi,{size:18})]})]}),$s=g.div`
|
|
43
43
|
display: flex;
|
|
44
44
|
align-items: center;
|
|
45
45
|
gap: 8px;
|
|
46
46
|
padding: 8px;
|
|
47
|
-
|
|
47
|
+
`,Ns=({onClose:o,selectedConnectionIds:n,setSelectedConnectionIds:a,createAction:i,withOverlay:s})=>{const[c,u]=l(""),p=d(null),{selectedOption:h,onSelectOption:m,genericForm:g,validateFormData:f}=Sl(),b=r(()=>(c?We.filter(e=>e?.label?.toLowerCase().includes(c.toLowerCase())):We).filter(e=>!!e),[c]),v=r(()=>(c?Ge.filter(e=>e?.label?.toLowerCase().includes(c.toLowerCase())):Ge).filter(e=>!!e),[c]),y=r(()=>{const o=(o,n)=>e($s,{children:[t(re,{size:ce.XS,color:Ce.Secondary,children:o}),t(Ee,{label:n.toString()})]},o),n=e=>{const o=h?.type===e.type;return t(Ts,{dataId:e.type?`option-${e.type}`:void 0,title:e.label,description:e.description,withCarret:!0,isSelected:o,onClick:()=>{p.current?.clearErrors(),m(e)}},e.type)};return[o("Attributes",b.length),...b.map(n),o("Samplers",v.length),...v.map(n)]},[h?.type,b.length,v.length,m]),C=r(()=>h?[t(Ql,{},h.type)]:[t(Ke,{$height:"100%",children:t(se,{icon:mi,title:"Action not selected",subTitle:"Please select an action to add"})},"no-data")],[h]);return t(ml,{ref:p,isOpen:!0,withOverlay:s,onClose:o,onSave:async()=>{const{errorMessage:e,preparedFormData:t}=f();return!e&&await i(t)},disableSave:!h||!g?.isFormDirty,isFormDirty:g?.isFormDirty,hideDirtyNote:!0,progress:{title:Re.CREATING_ACTION,subTitle:Re.CREATING_ACTION_SUBTITLE},header:{icon:mi,title:Re.ADD_ACTION,subTitle:Re.ADD_ACTION_DESCRIPTION},connectionIds:n&&a?{value:n,setValue:a}:void 0,search:{value:c,onChange:u},leftColumn:{width:"40%",list:y},rightColumn:{width:"60%",list:C}})},Is=({destinationsByCategory:n,filters:a,setFilters:i})=>{const l=r(()=>Object.values(Ye).map(e=>({id:e,label:e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()})).filter(e=>n[e.id]?.length),[n]),s=r(()=>{const e=Object.values(fe).map(e=>({value:e,label:e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()}));return e.unshift({value:null,label:"All"}),e},[]);return e(o,{children:[t(Je,{placeholder:"Select category",options:l,values:a.categoryType?[a.categoryType]:[],setValues:e=>i({...a,categoryType:a.categoryType===e[0]?null:e[0]})}),t(ue,{options:s,selected:a.signalType,setSelected:e=>i({...a,signalType:e})})]})},Es=g.div`
|
|
48
48
|
display: flex;
|
|
49
49
|
flex-direction: column;
|
|
50
50
|
padding: 8px;
|
|
51
51
|
border-radius: 16px;
|
|
52
52
|
border: ${({$purpleColors:e,theme:t})=>e?`1px solid ${t.v2.colors.purple[500]}`:"1px solid transparent"};
|
|
53
53
|
background-color: ${({$noBgColor:e,$purpleColors:t,theme:o})=>e?"transparent":t?o.v2.colors.purple[900]:o.v2.colors.silver[800]};
|
|
54
|
-
`,
|
|
54
|
+
`,Os=g.div`
|
|
55
55
|
display: flex;
|
|
56
56
|
align-items: center;
|
|
57
57
|
justify-content: space-between;
|
|
58
58
|
gap: 12px;
|
|
59
59
|
padding: ${({$isOpen:e})=>e?"2px 12px 8px 12px":"2px 12px"};
|
|
60
|
-
`,As=({title:o,tooltip:n,list:a,noBgColor:i,purpleColors:s})=>{const[r,c]=l(!0);return e(
|
|
60
|
+
`,As=({title:o,tooltip:n,list:a,noBgColor:i,purpleColors:s})=>{const[r,c]=l(!0);return e(Es,{"data-id":`collapse-${o}`,$noBgColor:i,$purpleColors:s,children:[e(Os,{$isOpen:r,children:[e(te,{$gap:10,children:[t(re,{size:ce.XS,children:o}),n&&t(we,{text:n,withIcon:!0}),t(Ee,{label:a.length,status:s?ge.Default:void 0})]}),t(qe,{icon:r?fi:bi,size:Ze.M,onClick:()=>c(e=>!e)})]}),r?t(V,{children:a.length?u.toArray(a):t(Ke,{$padding:"12px 0",children:t(se,{})})}):null]})},Ds=(e,t,o)=>t||o.signalType?e.filter(e=>e.displayName.toLowerCase().includes(t.toLowerCase())&&(!o.signalType||ve(e.supportedSignals).includes(o.signalType))):e,Rs=({option:e,formData:o,testResult:n,isSelected:a,onSelect:i})=>t(Ts,{icon:tt(e.type).icon,title:o?.name||e.displayName,withCarret:!0,purpleColors:!!o,isSelected:a,onClick:()=>i(),children:n&&t(Ee,{status:n.succeeded?ge.Success:ge.Error,leftIcon:n.succeeded?vi:yi})}),Fs=({listType:e,destinationOptions:o,unsavedDestinations:n})=>{const{activeForm:a,onChangeActiveForm:i}=wl();return o?.length?t(As,{title:et[e].TITLE,tooltip:et[e].DESCRIPTION,list:o.map((o,n)=>t(Rs,{option:o,isSelected:a?.listType===e&&"number"!=typeof a?.unsavedIdx&&(null!=o.id&&""!==o.id?a?.option.id===o.id:a?.option.type===o.type),onSelect:()=>i({listType:e,option:o})},`${e}-${o.id??o.type}-${n}`))}):n?.length?t(As,{purpleColors:!0,title:et[e].TITLE,tooltip:et[e].DESCRIPTION,list:n.map(({option:o,formData:n,testResult:l},s)=>t(Rs,{option:o,formData:n,testResult:l,isSelected:a?.unsavedIdx===s&&a?.listType===e,onSelect:()=>i({listType:e,option:o,unsavedIdx:s})},`${e}-${s}`))},e):void 0};var Ps;!function(e){e.SELF_HOSTED="self hosted",e.MANAGED="managed"}(Ps||(Ps={}));const Ls=(e,t)=>{const o=[],n=[],a=[];return e&&e.destinationCategories.categories.forEach(e=>{e.name===Ps.SELF_HOSTED?n.push(...e.items):e.name===Ps.MANAGED&&a.push(...e.items)}),t&&t?.potentialDestinations.forEach(t=>{for(const n of e?.destinationCategories?.categories||[]){const e=ot(n),a=e.items.findIndex(e=>e.type===t.type);if(-1!==a){const n=nt(t.fields,{});Object.keys(n).length&&(e.items[a].fields=e.items[a].fields.map(e=>({...e,initialValue:n[e.name]})),o.push(e.items[a]))}}}),{[Ye.DETECTED]:o,[Ye.SELF_HOSTED]:n,[Ye.MANAGED]:a}},_s=({onClose:e,onBack:o,onNext:a,selectedConnectionIds:i,setSelectedConnectionIds:s,getDestinationCategories:d,getPotentialDestinations:u,initialInputs:p,testConnection:h,createDestination:m,updateDestination:g,withOverlay:f,disableAnimation:b})=>{const[v,y]=l(""),[C,S]=l({categoryType:null,signalType:null}),{destinations:w}=at(),{activeForm:x,genericForm:k,unsavedDestinations:T,setUnsavedDestinations:$}=wl();n(()=>{p&&$(p)},[p]);const[N,I]=l(!0),[E,O]=l([]),[A,D]=l({[Ye.ALL]:[],[Ye.UNSAVED]:[],[Ye.EXISTS]:[],[Ye.DETECTED]:[],[Ye.SELF_HOSTED]:[],[Ye.MANAGED]:[]});n(()=>{const e=w.map(e=>{let t;for(const o of E){const n=o.items.find(t=>t.type===e.destinationType.type);if(n){t=n;break}}const o=nt(e.fields,{});return{id:e.id,type:e.destinationType.type,displayName:e.name||e.destinationType.displayName,selected:!0,testConnectionSupported:t?.testConnectionSupported??!1,supportedSignals:e.destinationType.supportedSignals,fields:t?t.fields.map(e=>({...e,initialValue:o[e.name]??e.initialValue})):[]}});D(t=>({...t,[Ye.EXISTS]:e}))},[w,E]);const R=c(async()=>{try{I(!0);const[e,t]=await Promise.all([d(),u()]);e&&O(e.destinationCategories.categories),D(o=>({...o,...Ls(e,t)}))}catch(e){}finally{I(!1)}},[]);n(()=>{R()},[]);const F=c(async()=>{const e=(await Promise.all(T.map(({option:e,formData:t})=>{const o=ye(t);if(e.id){const t=Object.fromEntries(e.fields.map(e=>[e.name,e.initialValue??""])),n=Object.fromEntries(o.fields.map(e=>[e.key,e.value??""]));if(!Object.keys(t).some(e=>t[e]!==n[e]))return g(e.id,o,i)}return m(o,i)}))).filter(e=>e?.error);if(e.length)return{error:e.map(e=>e?.error).join("\n")}},[T,i,m,g]),P=(({isFetching:e,destinationsByCategory:o,searchText:n,filters:a})=>{const{unsavedDestinations:i}=wl();return{width:"40%",list:r(()=>{const l=[];i.length&&l.push(t(Fs,{listType:Ye.UNSAVED,unsavedDestinations:i},"unsaved"));for(const e of Object.values(Ye)){if(a.categoryType&&a.categoryType!==e)continue;const i=Ds(o[e],n,a);i.length&&l.push(t(Fs,{listType:e,destinationOptions:i},e))}return e&&l.push(t(Ke,{$height:"100%",children:t(Qe,{title:"Fetching destinations",withSpinner:!0})},"loading-more")),l},[i,o,n,a,e])}})({isFetching:N,destinationsByCategory:A,searchText:v,filters:C}),L=(({testConnection:e})=>{const{activeForm:o}=wl();return{width:"60%",list:o?[t(os,{testConnection:e},o.option.type)]:[t(Ke,{$height:"100%",children:t(se,{icon:gi,title:"Select destination from the list",subTitle:"Add destination so your data has somewhere to go."})},"no-data")]}})({testConnection:h});return t(ml,{isOpen:!0,withOverlay:f,disableAnimation:b,onClose:e,onBack:o?()=>o(T):void 0,onNext:a?()=>a(T):void 0,nextIsSkip:!T.length,onSave:F,disableSave:!x&&!T.length,isFetching:N,isFormDirty:T.length>0||k?.isFormDirty,hideDirtyNote:!0,progress:{title:Re.CREATING_DESTINATION,subTitle:Re.CREATING_DESTINATION_SUBTITLE},header:{icon:gi,title:Re.ADD_DESTINATIONS,subTitle:Re.ADD_DESTINATION_DRAWER_DESCRIPTION},connectionIds:i&&s?{value:i,setValue:s}:void 0,search:{value:v,onChange:y},filters:t(Is,{destinationsByCategory:A,filters:C,setFilters:S}),leftColumn:P,rightColumn:L})},Ms=({onClose:e,selectedConnectionIds:o,setSelectedConnectionIds:n,createInstrumentationRule:a,withOverlay:i})=>{const[s,c]=l(""),u=d(null),{selectedOption:p,onSelectOption:h,genericForm:m,validateFormData:g}=xl(),f=r(()=>s?it.filter(e=>e.label.toLowerCase().includes(s.toLowerCase())):it,[s]),b=r(()=>f.map(e=>{const o=p?.type===e.type;return t(Ts,{dataId:`option-${e.type}`,title:e.label,description:e.description,withCarret:!0,isSelected:o,onClick:()=>{u.current?.clearErrors(),h(e)}},e.type)}),[p,f.length,h]),v=r(()=>p?[t(ds,{},p.type)]:[t(Ke,{$height:"100%",children:t(se,{icon:Ci,title:"Instrumentation rule not selected",subTitle:"Please select an instrumentation rule to add"})},"no-data")],[p]);return t(ml,{ref:u,isOpen:!0,withOverlay:i,onClose:e,onSave:async()=>{const{errorMessage:e,preparedFormData:t}=g();return!e&&await a(t)},disableSave:!p||!m?.isFormDirty,isFormDirty:m?.isFormDirty,hideDirtyNote:!0,progress:{title:Re.CREATING_INSTRUMENTATION_RULE,subTitle:Re.CREATING_INSTRUMENTATION_RULE_SUBTITLE},header:{icon:Ci,title:Re.ADD_INSTRUMENTATION_RULE,subTitle:Re.ADD_INSTRUMENTATION_RULE_DESCRIPTION},connectionIds:o&&n?{value:o,setValue:n}:void 0,search:{value:s,onChange:c},leftColumn:{width:"40%",list:b},rightColumn:{width:"60%",list:v}})},Bs={groupSegmentLabel:"Namespace",itemSegmentLabel:"Source",searchPlaceholder:()=>{},groupColumnHeader:"Namespaces",fetchingGroups:{title:Re.FETCHING_NAMESPACES,subTitle:Re.FETCHING_NAMESPACES_SUBTITLE},noGroups:{title:"No namespaces",subTitle:"No namespaces found in this cluster"},noGroupMatchedFilter:e=>`No namespace matched the filter '${e}'`,itemColumnHeader:"Workloads",selectGroupPrompt:{title:Re.SELECT_NAMESPACE,subTitle:Re.SELECT_NAMESPACE_SUBTITLE},noItemsInGroupSubTitle:"No sources found in this namespace"},zs={groupSegmentLabel:"Kind",itemSegmentLabel:"Source",searchPlaceholder:e=>"Search by "+(e===lt.Namespace?"kind":"source"),groupColumnHeader:"Kinds",fetchingGroups:{title:"Fetching kinds",subTitle:"Please wait while we fetch the kinds"},noGroups:{title:"No kinds",subTitle:"No kinds found on this host"},noGroupMatchedFilter:e=>`No kind matched the filter '${e}'`,itemColumnHeader:"Sources",selectGroupPrompt:{title:"Select kind from the list",subTitle:"Pick a kind so you can select sources from it."},noItemsInGroupSubTitle:"No sources found in this kind"},Xs=e=>e?zs:Bs,Vs="No matches",Us="No sources",Hs=e=>`No sources matched the filter '${e}'`,js=e=>(e?"Unselect":"Select")+" all",Ws="Show only:",Gs="Selected",Ks="Auto",Ys="Automatically instrument all workloads currently in the namespace, and all workloads that will be deployed to this namespace in the future",Js="Enterprise only",qs=g.div``,Zs=g.div`
|
|
61
61
|
visibility: hidden;
|
|
62
62
|
|
|
63
63
|
transition: visibility 0s;
|
|
@@ -65,19 +65,19 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
65
65
|
transition-duration: 0s;
|
|
66
66
|
}
|
|
67
67
|
|
|
68
|
-
${
|
|
68
|
+
${qs}:hover & {
|
|
69
69
|
visibility: visible;
|
|
70
70
|
}
|
|
71
|
-
`,
|
|
71
|
+
`,Qs=({workloadName:e,workloadKind:o,isChecked:n,onToggle:a,disabled:i,disabledReason:l})=>{const s=f(),r=()=>{};return t(qs,{children:t(Ts,{dataId:`source-${e}`,title:e,disabled:i,onClick:i?r:a,isChecked:n,onCheckboxChange:i?r:a,children:i&&l?t(Ee,{label:l,status:ge.Default,textSize:ce.XXXS}):t(Zs,{children:t(Ee,{label:o,status:ge.Info,textSize:ce.XXXS,backgroundColor:s.v2.colors.blue[900]})})})})},er=g.div``,tr=g.div`
|
|
72
72
|
visibility: ${({$visible:e})=>e?"visible":"hidden"};
|
|
73
73
|
|
|
74
74
|
transition: visibility 0s;
|
|
75
75
|
${({$visible:e})=>!e&&"& * {\n transition-duration: 0s !important;\n }"}
|
|
76
76
|
|
|
77
|
-
${
|
|
77
|
+
${er}:hover & {
|
|
78
78
|
visibility: visible;
|
|
79
79
|
}
|
|
80
|
-
`,tr=({clusterId:o,namespaceName:n,checkbox:a,isFutureApps:i,selectedCounts:l,isActive:s,onActive:r,handleSourceChange:c})=>{const{isVm:d}=y(),u=e=>{r(),c({clusterId:o,workloadId:{namespace:n},auto:e.auto,selected:e.all})};return t(Qs,{children:t(ks,{dataId:`namespace-${n}`,withCarret:!0,title:n,isSelected:s,onClick:r,isPartiallyChecked:a.partial,isChecked:a.all,onCheckboxChange:e=>u({auto:e,all:e}),children:e(te,{$gap:12,children:[!d&&t(er,{$visible:s||i,children:t(we,{text:Ks,children:t(q,{label:Gs,labelAlign:Z.Left,size:ct.S,value:i,onChange:e=>u({auto:e,all:e||void 0})})})}),e(te,{$gap:8,children:[t(re,{variant:dt.Span,size:ce.XXXS,color:Ce.Secondary,align:"right",children:Ws}),t(Ee,{label:`${l.sourced}/${l.total}`,status:s?ge.Default:st.Unknown,minWidth:"42px"})]})]})})})},or=({withCollapse:e,clusterId:o,clusterName:n,namespaces:a,selectedArea:i,setSelectedArea:l,handleSourceChange:s})=>{const c=r(()=>a.map(({name:e,totalWorkloads:a,selectedCount:r,isAllSourced:c,isSomeSourced:d,isFutureApps:u})=>t(tr,{clusterId:o,namespaceName:e,isFutureApps:u,checkbox:{all:c||u,partial:d},selectedCounts:{sourced:r,total:a},isActive:i.clusterId===o&&i.namespaceName===e,onActive:()=>l({clusterId:o,clusterName:n,namespaceName:e}),handleSourceChange:s},`${o}#${e}`)),[o,n,a,i]);return e?t(As,{title:n,list:c,noBgColor:!0}):c},nr=({onClose:o,onBack:a,onNext:i,selectedConnectionIds:s,setSelectedConnectionIds:c,persistSources:d,getAllClusterSnapshots:u,fetchNamespacesWithWorkloads:p,withOverlay:h,disableAnimation:m})=>{const{isVm:g}=y(),f=Bs(g),{selectedStreamName:b}=Fe(),{progress:v,resetProgress:C}=ut(),{isFetching:S,setIsFetching:w,setSnapshots:x,formData:k,handleSourceChange:T,handleSelectAll:$,formDiff:I,isFormDirty:N}=Ol();n(()=>{let e=!1;w(!0);return(async()=>{try{if(u){const t=await u();!e&&t&&x(t)}else if(p){const t=await p();if(!e&&t.data?.length){const e={clusters:[{clusterId:mt,clusterName:ht,namespaces:t.data.map(e=>({name:e.name,selected:e.markedForInstrumentation&&e.dataStreamNames.includes(b),workloads:e.workloads?.map(e=>({namespace:e.id.namespace,name:e.id.name,kind:e.id.kind,selected:e.markedForInstrumentation?.markedForInstrumentation??!1}))||[]}))}]};x(e)}}}catch(e){}finally{e||w(!1)}})(),()=>{e=!0}},[b]);const[E,A]=l(""),[O,D]=l(lt.Namespace),[R,F]=l({showOnlySelected:!1}),[P,L]=l({clusterId:"",clusterName:"",namespaceName:""}),_=(({isFetching:o,formData:n,handleSourceChange:a,handleSelectAll:i,selectedArea:l,setSelectedArea:s,searchText:c,searchBy:d,filters:u})=>{const{isVm:p}=y(),h=Bs(p),m=r(()=>n.map(e=>{const t=[...e.namespaces].sort((e,t)=>e.name.localeCompare(t.name)).filter(e=>El(e,c,u)).map(e=>({name:e.name,totalWorkloads:e.workloads.length,...Al(e)}));return{clusterId:e.clusterId,clusterName:e.clusterName,visibleNamespaces:t}}),[n,c,u]),g=r(()=>{let e=!1;for(const{visibleNamespaces:t}of m)for(const{totalWorkloads:o,selectedCount:n}of t)if(e=!0,n!==o)return!1;return e},[m]),{list:f,withFilterCount:b,filteredCount:v,totalCount:C}=r(()=>{const e=m.map(({clusterId:e,clusterName:o,visibleNamespaces:n})=>n.length?t(or,{withCollapse:m.length>1,clusterId:e,clusterName:o,namespaces:n,selectedArea:l,setSelectedArea:s,handleSourceChange:a},e):null),o=e.filter(e=>null!==e);return{list:o,withFilterCount:o.length!==e.length,filteredCount:o.length,totalCount:e.length}},[m,l]);return{width:"60%",header:e(te,{$width:"100%",$gap:12,$justifyContent:"space-between",children:[e(te,{$gap:8,children:[t(re,{size:ce.XS,nowrap:!0,children:h.groupColumnHeader}),t(we,{text:b?Re.FILTERED_COUNT_TOOLTIP:void 0,children:t(Ee,{label:`${b?`${v} / ${C}`:C}`,status:st.Unknown})})]}),t(re,{"data-id":"namespaces-select-all",onClick:()=>i({boolean:!g,searchText:c,searchBy:d,filters:u}),disabled:!f.length,size:ce.XS,children:Hs(g)})]}),list:f.length?f:o?[t(Ke,{$height:"100%",children:t(Qe,{title:h.fetchingGroups.title,subTitle:h.fetchingGroups.subTitle,withSpinner:!0})},"loading")]:[t(Ke,{$height:"100%",children:t(se,c?{icon:Si,title:Xs,subTitle:h.noGroupMatchedFilter(c)}:{icon:Si,title:h.noGroups.title,subTitle:h.noGroups.subTitle})},"no-data")]}})({isFetching:S,formData:k,handleSourceChange:T,handleSelectAll:$,selectedArea:P,setSelectedArea:L,searchText:O===lt.Namespace?E:"",searchBy:O,filters:R}),M=(({formData:o,handleSourceChange:n,handleSelectAll:a,selectedArea:i,searchText:l,searchBy:s,filters:c})=>{const{tier:d,isVm:u}=y(),p=Bs(u),h=d===rt.Onprem,m=r(()=>i.value.namespaceName?o.find(({clusterId:e})=>e===i.value.clusterId)?.namespaces.find(({name:e})=>e===i.value.namespaceName):void 0,[o,i.value.clusterId,i.value.namespaceName]),g=r(()=>m?[...m.workloads].sort((e,t)=>e.name.localeCompare(t.name)).filter(e=>Il(e,l,c)):[],[m,l,c]),f=r(()=>!!g.length&&g.every(({selected:e})=>e),[g]),b=r(()=>{if(!m)return[];const{clusterId:e}=i.value,{name:o}=m;return g.map(({name:a,selected:i,kind:l})=>{const s=!u&&!h&&Nl.has(l);return t(Zs,{workloadName:a,workloadKind:l,isChecked:!s&&(i||!1),onToggle:()=>n({clusterId:e,workloadId:{namespace:o,name:a,kind:l}}),disabled:s,disabledReason:Ys},`${e}#${o}#${a}#${l}`)})},[g,m,i.value.clusterId]),{withFilterCount:v,filteredCount:C,totalCount:S}=r(()=>{const e=m?.workloads.length??0;return{withFilterCount:g.length!==e,filteredCount:g.length,totalCount:e}},[g,m]);return{width:"40%",header:e(te,{$width:"100%",$gap:12,$justifyContent:"space-between",children:[e(te,{$gap:8,children:[t(re,{size:ce.XS,nowrap:!0,children:i.value.namespaceName?`${i.value.namespaceName} > ${p.itemColumnHeader}`:p.itemColumnHeader}),t(we,{text:v?Re.FILTERED_COUNT_TOOLTIP:void 0,children:t(Ee,{label:`${v?`${C} / ${S}`:S}`,status:st.Unknown})})]}),t(re,{"data-id":"workloads-select-all",onClick:()=>a({clusterId:i.value.clusterId,namespaceName:i.value.namespaceName,boolean:!f,searchText:l,searchBy:s,filters:c}),disabled:!b.length,size:ce.XS,children:Hs(f)})]}),list:b.length?b:[t(Ke,{$height:"100%",children:t(se,m?l?{icon:Ci,title:Xs,subTitle:Us(l)}:{icon:Ci,title:Vs,subTitle:p.noItemsInGroupSubTitle}:{icon:Ci,title:p.selectGroupPrompt.title,subTitle:p.selectGroupPrompt.subTitle})},"no-data")]}})({formData:k,handleSourceChange:T,handleSelectAll:$,selectedArea:{value:P},searchText:O===lt.Source?E:"",searchBy:O,filters:R});return t(hl,{isOpen:!0,withOverlay:h,disableAnimation:m,onClose:o?()=>{C(pt.BulkInstrumenting),o()}:void 0,onBack:a?()=>a(I):void 0,onNext:i?()=>i(I):void 0,nextIsSkip:!N,onSave:()=>d(I),header:{icon:Ci,title:Re.ADD_SOURCE,subTitle:Re.ADD_SOURCES_DESCRIPTION},connectionIds:s&&c?{value:s,setValue:c}:void 0,search:{value:E,onChange:e=>{A(e),O===lt.Namespace&&L({clusterId:"",clusterName:"",namespaceName:""})},placeholder:f.searchPlaceholder(O),segment:{options:[{label:f.groupSegmentLabel,value:lt.Namespace},{label:f.itemSegmentLabel,value:lt.Source}],selected:O,setSelected:D}},filters:e(te,{$gap:8,children:[t(re,{size:ce.XXXS,color:Ce.Secondary,nowrap:!0,children:js}),t(q,{name:"filter-selected",size:ct.S,label:Ws,value:R.showOnlySelected,onChange:e=>F(t=>({...t,showOnlySelected:e}))})]}),isFormDirty:N,isFetching:S,progress:{title:Re.CREATING_SOURCES,subTitle:Re.CREATING_SOURCES_SUBTITLE,percentage:v[pt.BulkInstrumenting]?.percentage||0},leftColumn:_,rightColumn:M})},ar=({onClose:a,actionId:i,updateAction:s,deleteAction:d})=>{const u=f(),{actions:p}=at(),{selectedOption:h,loadAction:m,validateFormData:g,genericForm:b}=Cl(),[v,y]=l(!1),[C,S]=l(!1),[w,x]=l(null),k=v&&!!b?.isFormDirty,T=r(()=>p?.find(e=>gt(e)===i),[i,p]),$=r(()=>We.find(({type:e})=>e===T?.type)??Ge.find(({type:e})=>e===T?.type)??null,[T?.type]);n(()=>{T&&m(T)},[T]);const I=c(()=>{T&&y(!0)},[T]),N=c(()=>{T&&(m(T),y(!1))},[T,m]),E=c(()=>{k?x("close"):a()},[k,a]),A=c(()=>{k?x("cancel"):N()},[k,N]),O=c(()=>{const e=w;x(null),"close"===e?(N(),a()):N()},[w,N,a]),D=c(async()=>{if(T){const{errorMessage:e,preparedFormData:t}=g();e||(await s(T.id,t),y(!1))}},[T,g,s]),R=c(()=>{T&&S(!0)},[T]),F=c(async()=>{T&&(await d(T.id,T.type),a())},[T,d,a]);if(!T||!$)return null;const P=(e=>{const t=[],{type:o,fields:n}=e,a=e=>({status:e?ge.Success:st.Unknown,label:e?"True":"False",invertColors:!0});return o===le.K8sAttributes&&(t.push({id:"collectContainerAttributes",title:"Collect Container Attributes",badge:a(n.collectContainerAttributes)}),t.push({id:"collectReplicaSetAttributes",title:"Collect ReplicaSet Attributes",badge:a(n.collectReplicaSetAttributes)}),t.push({id:"collectWorkloadId",title:"Collect Workload ID",badge:a(n.collectWorkloadId)}),t.push({id:"collectClusterId",title:"Collect Cluster ID",badge:a(n.collectClusterId)}),n.labelsAttributes?.forEach(({labelKey:e,attributeKey:o,from:a,fromSources:i},l)=>{const s=i?.length?i.join(", "):a||J.Pod,r=(n.labelsAttributes?.length??0)>1?`Label #${l+1} `:"Label ";t.push({id:`label-${l}-key`,title:`${r}Key`,label:e}),t.push({id:`label-${l}-attr`,title:`${r}Attribute Key`,label:o}),t.push({id:`label-${l}-from`,title:`${r}From`,label:s})}),n.annotationsAttributes?.forEach(({annotationKey:e,attributeKey:o,from:a,fromSources:i},l)=>{const s=i?.length?i.join(", "):a||J.Pod,r=(n.annotationsAttributes?.length??0)>1?`Annotation #${l+1} `:"Annotation ";t.push({id:`annotation-${l}-key`,title:`${r}Key`,label:e}),t.push({id:`annotation-${l}-attr`,title:`${r}Attribute Key`,label:o}),t.push({id:`annotation-${l}-from`,title:`${r}From`,label:s})})),o===le.AddClusterInfo&&(t.push({id:"overwriteExistingValues",title:"Overwrite Existing Values",badge:a(n.overwriteExistingValues)}),n.clusterAttributes?.forEach(({attributeName:e,attributeStringValue:o},n)=>{t.push({id:`cluster-attr-${n}`,title:e,label:o})})),o===le.DeleteAttributes&&n.attributeNamesToDelete?.forEach((e,o)=>{t.push({id:`del-attr-${o}`,title:"Attribute"+((n.attributeNamesToDelete?.length??0)>1?` #${o+1}`:""),label:e})}),o===le.RenameAttributes&&Object.entries(n.renames||{}).forEach(([e,o],n)=>{t.push({id:`rename-${n}`,title:e,label:o})}),o===le.PiiMasking&&n.piiCategories?.forEach((e,o)=>{t.push({id:`pii-${o}`,title:"Category"+((n.piiCategories?.length??0)>1?` #${o+1}`:""),label:e})}),o===le.ErrorSampler&&t.push({id:"fallbackSamplingRatio",title:"Sampling Ratio",label:String(n.fallbackSamplingRatio??"-")}),o===le.ProbabilisticSampler&&t.push({id:"samplingPercentage",title:"Sampling Percentage",label:String(n.samplingPercentage??"-")}),o===le.LatencySampler&&n.endpointsFilters?.forEach(({serviceName:e,httpRoute:o,minimumLatencyThreshold:a,fallbackSamplingRatio:i},l)=>{const s=(n.endpointsFilters?.length??0)>1?`Endpoint #${l+1} `:"Endpoint ";t.push({id:`endpoint-${l}-service`,title:`${s}Service Name`,label:e}),t.push({id:`endpoint-${l}-route`,title:`${s}HTTP Route`,label:o}),t.push({id:`endpoint-${l}-latency`,title:`${s}Min. Latency`,label:String(a)}),t.push({id:`endpoint-${l}-fallback`,title:`${s}Fallback Sampling Ratio`,label:String(i)})}),o===le.ServiceNameSampler&&n.servicesNameFilters?.forEach(({serviceName:e,samplingRatio:o,fallbackSamplingRatio:a},i)=>{const l=(n.servicesNameFilters?.length??0)>1?`Filter #${i+1} `:"Filter ";t.push({id:`service-${i}-name`,title:`${l}Service Name`,label:e}),t.push({id:`service-${i}-ratio`,title:`${l}Sampling Ratio`,label:String(o)}),t.push({id:`service-${i}-fallback`,title:`${l}Fallback Sampling Ratio`,label:String(a)})}),o===le.SpanAttributeSampler&&n.attributeFilters?.forEach(({serviceName:e,attributeKey:o,fallbackSamplingRatio:a,condition:i},l)=>{const s=Object.keys(i)[0],r=i[s],c=(n.attributeFilters?.length??0)>1?`Filter #${l+1} `:"Filter ";t.push({id:`attr-${l}-service`,title:`${c}Service Name`,label:e}),t.push({id:`attr-${l}-key`,title:`${c}Attribute Key`,label:o}),t.push({id:`attr-${l}-fallback`,title:`${c}Fallback Sampling Ratio`,label:String(a)}),t.push({id:`attr-${l}-condition`,title:`${c}Condition`,label:s}),t.push({id:`attr-${l}-operation`,title:`${c}Operation`,label:r?.operation??"-"}),t.push({id:`attr-${l}-expected`,title:`${c}Expected Value`,label:String(r?.expectedValue??"-")}),"jsonCondition"===s&&t.push({id:`attr-${l}-jsonpath`,title:`${c}JSON Path`,label:r?.jsonPath??"-"})}),o===le.URLTemplatization&&n.urlTemplatizationRulesGroups?.forEach((e,o)=>{const a=(n.urlTemplatizationRulesGroups?.length??0)>1?`Group #${o+1} `:"Group ";e.filterK8sNamespace&&t.push({id:`group-${o}-ns`,title:`${a}Namespace`,label:e.filterK8sNamespace}),e.workloadFilters?.forEach((n,i)=>{const l=[n.kind,n.name].filter(Boolean).join("/");l&&t.push({id:`group-${o}-wf-${i}`,title:`${a}Workload${(e.workloadFilters?.length??0)>1?` #${i+1}`:""}`,label:l})});const i=e.templatizationRules?.map(e=>e.template).filter(Boolean).join(", ");i&&t.push({id:`group-${o}-templates`,title:`${a}Templates`,label:i}),e.notes&&t.push({id:`group-${o}-notes`,title:`${a}Notes`,label:e.notes})}),t})(T);return e(o,{children:[t(ft,{isOpen:!0,header:{icon:St(T.type),title:$.label,onClose:E,actions:[{id:"edit-action-btn-edit",label:bt.EDIT,icon:ci,active:v,onClick:I},{id:"edit-action-btn-delete",label:bt.DELETE,icon:ni,color:u.v2.colors.red[500],active:C,onClick:R}]},footer:{actions:v?[{"data-id":"edit-action-btn-cancel",label:bt.CANCEL,variant:ae.Secondary,onClick:A},{"data-id":"edit-action-btn-save",label:bt.SAVE,variant:ae.Primary,onClick:D}]:[]},children:t(vt,{$padding:"4px 12px 12px",children:v&&h?t(Zl,{}):t(V,{$gap:16,children:e(yt,{bgTint:"1000",children:[e(yt,{bgTint:"900",children:[t(Ct,{conditions:T.conditions||[]}),t(yt,{bgTint:"800",cellsPerRow:2,items:(L=T,_=$,[{id:"type",title:Re.TYPE,label:_.label},{id:"status",title:Re.STATUS,badge:{status:L.disabled?st.Unknown:ge.Success,label:L.disabled?Re.DISABLED:Re.ENABLED}},{id:"signals",title:Re.SIGNALS_FOR_PROCESSING,label:L.signals?.map(e=>{let t=e.toLowerCase();return t=`${t.charAt(0).toUpperCase()}${t.slice(1)}`,t}).join(", ")||"-"},{id:"name",title:Re.NAME,label:L.name||"-"},{id:"notes",title:Re.NOTES,label:L.notes||"-"}])})]}),!!P?.length&&t(yt,{bgTint:"900",richTitle:{title:"Configuration"},withCollapse:!0,collapseIsDefaultOpen:!0,children:t(yt,{bgTint:"800",cellsPerRow:2,items:P})})]})})})}),t(ml,{target:"action",isOpen:C,onClose:()=>S(!1),onApprove:F}),t(gl,{isOpen:null!==w,onClose:()=>x(null),onApprove:O})]});var L,_},ir=({onClose:o,connections:a,selectedConnectionIds:i,setSelectedConnectionIds:s,getEffectiveConfig:c,onApply:d})=>{const[u,p]=l(""),[h,m]=l({showOnlySelected:!1}),g=r(()=>a.filter(e=>{const t=!u||e.name.toLowerCase().includes(u.toLowerCase()),o=!h.showOnlySelected||h.showOnlySelected&&i.includes(e.id);return t&&o}),[a.length,i.length,u,h]),f=e=>{s(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e])},[b,v]=l(!1),[y,C]=l(void 0),{formData:S,handleFormChange:w,areFormValuesEqual:x,resetFormData:k}=wt(y||{rollout:{automaticRolloutDisabled:!1}}),T=r(()=>i.length>1||void 0!==y&&!x(y,S),[i.length,y,S]);return n(()=>{1===i.length?(async e=>{if(b)return;v(!0);const t=await c(e);if(t){const e={rollout:{automaticRolloutDisabled:t.rollout?.automaticRolloutDisabled??!1}};C(e),k(e)}v(!1)})(i[0]):C(void 0)},[i.length]),t(hl,{isOpen:!0,onClose:o,onSave:()=>d(S,i),header:{icon:wi,title:"Cluster Configuration"},connectionIds:{value:i,setValue:s},search:{placeholder:"Search by cluster name",value:u,onChange:p},filters:e(te,{$gap:8,children:[t(re,{size:ce.XXXS,color:Ce.Secondary,nowrap:!0,children:"Show only:"}),t(q,{size:ct.S,label:"Selected",value:h.showOnlySelected,onChange:e=>m(t=>({...t,showOnlySelected:e}))})]}),isFormDirty:T,isFetching:b,leftColumn:{width:"35%",header:e(te,{$width:"100%",$gap:12,$justifyContent:"space-between",children:[e(te,{$gap:8,children:[t(re,{size:ce.XS,children:"Clusters"}),t(Ee,{label:g.length,status:st.Unknown})]}),e(te,{$gap:8,children:[t(re,{size:ce.XXXS,color:Ce.Secondary,align:"right",children:"Selected clusters"}),t(Ee,{label:`${i.length}/${g.length}`,status:st.Unknown})]})]}),list:g.map(e=>t(ks,{title:e.name,isChecked:i.includes(e.id),onClick:()=>f(e.id),onCheckboxChange:()=>f(e.id)},e.id))},rightColumn:{width:"65%",header:t(re,{size:ce.XS,children:"Configurations"}),list:[t(q,{label:"Automatic rollout disabled",tooltip:"Odigos automatically triggers a one-time rollout for workloads when instrumenting or uninstrumenting, ensuring that changes are applied without requiring manual intervention. When automatic rollout is disabled, Odigos will not restart workloads, and users will need to manually trigger rollouts after adding or removing sources.",value:S.rollout?.automaticRolloutDisabled||!1,onChange:e=>w("rollout.automaticRolloutDisabled",e)},"automatic-rollout-disabled")]}})},lr=({onClose:a,destinationId:i,getDestinationCategories:s,testConnection:u,updateDestination:p,deleteDestination:h})=>{const m=f(),{isVm:g}=y(),{destinations:b}=at(),{selectedStreamName:v}=Fe(),{activeForm:C,loadDestination:S,validateFormData:w,genericForm:x}=Sl(),k=d(null),[T,$]=l(!1),[I,N]=l(!1),[E,A]=l(null),[O,D]=l(!0),[R,F]=l(null),P=T&&!!x?.isFormDirty,L=r(()=>kt(b,v),[b,v]),_=r(()=>L?.find(e=>gt(e)===i),[i,L]);n(()=>{let e=!1;return D(!0),s().then(t=>{e||A(t?.destinationCategories.categories??[])}).catch(t=>{e||A([])}).finally(()=>{e||D(!1)}),()=>{e=!0}},[]),n(()=>{_&&E&&S(_,E)},[_,E]);const M=r(()=>_&&E?Tt(E,_):[],[_,E]),z=c(()=>{_&&$(!0)},[_]),B=c(()=>{_&&E&&(S(_,E),$(!1))},[_,E,S]),X=c(()=>{P?F("close"):a()},[P,a]),U=c(()=>{P?F("cancel"):B()},[P,B]),H=c(()=>{const e=R;F(null),"close"===e?(B(),a()):B()},[R,B,a]),j=c(async()=>{if(_){const{errorMessage:e,preparedFormData:t}=w();e||(await p(_.id,ye(t)),$(!1))}},[_,w,p]),W=c(()=>{_&&N(!0)},[_]),G=c(async()=>{_&&(await h(_.id),a())},[_,h,a]);if(!_)return null;const{icon:K,iconSrc:Y}=tt(_.destinationType.type),J=((e,t)=>{const o=[],n=xt(e,t),a=n.map(e=>({name:e.key,value:e.value})),i=be(e.exportedSignals);let l=[];const s=()=>{l.length&&(o.push({kind:"cells",id:`cells-${o.length}`,items:l}),l=[])};return n.forEach(({key:e,name:n,value:r})=>{const c=t.find(t=>t.name===e),{secret:d,componentType:u,componentProperties:p,hideFromReadData:h,customReadDataLabels:m}=c||{};if(h?.length&&he(h,i,a))return;const{type:g}=nt(p,{type:""}),f=d||"password"===g;if(m?.length)m.forEach(({condition:t,...o},n)=>{t==r&&l.push({id:`${e}-custom-${n}`,title:o.title,label:o.value})});else if(r)if(f)l.push({id:e,title:n,label:new Array(10).fill("•").join("")});else{if(u===ie.MultiInput){const t=nt(r,null);if(Array.isArray(t)&&t.length)return s(),void o.push({kind:"list",id:e,title:n,items:t.map((t,o)=>({id:`${e}-${o}`,label:String(t)}))})}if(u===ie.KeyValuePair){const t=nt(r,null);if(Array.isArray(t)&&t.length)return s(),void o.push({kind:"pairs",id:e,title:n,items:t.map((t,o)=>{const n=t&&"object"==typeof t?t:{};return{id:`${e}-${o}`,title:null!=n.key?String(n.key):"",label:null!=n.value?String(n.value):""}})})}l.push({id:e,title:n,label:r})}else l.push({id:e,title:n,label:"-"})}),s(),o})(_,M);return e(o,{children:[t(ft,{isOpen:!0,header:{icon:K,iconSrc:Y,title:_.name||_.destinationType.displayName,onClose:X,actions:[{id:"edit-destination-btn-edit",label:bt.EDIT,icon:ci,active:T,onClick:z},{id:"edit-destination-btn-delete",label:bt.DELETE,icon:ni,color:m.v2.colors.red[500],active:I,onClick:W}]},footer:{actions:T?[{"data-id":"edit-destination-btn-cancel",label:bt.CANCEL,variant:ae.Secondary,onClick:U},...C?.option.testConnectionSupported&&!g?[{"data-id":"edit-destination-btn-test-connection",label:bt.TEST_CONNECTION,variant:ae.Secondary,onClick:()=>k.current?.testConnection()}]:[],{"data-id":"edit-destination-btn-save",label:bt.SAVE,variant:ae.Primary,onClick:j}]:[]},children:t(vt,{$padding:"4px 12px 12px",children:O?t(Ke,{$height:"50vh",children:t(Qe,{withSpinner:!0})}):T&&C?t(ts,{ref:k,isEdit:!0,testConnection:u}):t(V,{$gap:16,children:e(yt,{bgTint:"1000",children:[e(yt,{bgTint:"900",children:[!g&&t(Ct,{conditions:_.conditions||[]}),t(yt,{bgTint:"800",cellsPerRow:2,items:(q=_,[{id:"type",title:Re.TYPE,label:q.destinationType.displayName},{id:"status",title:Re.STATUS,badge:{status:q.disabled?st.Unknown:ge.Success,label:q.disabled?Re.DISABLED:Re.ENABLED}},{id:"monitors",title:Re.MONITORS,label:be(q.exportedSignals).map(e=>{let t=e.toLowerCase();return t=`${t.charAt(0).toUpperCase()}${t.slice(1)}`,t}).join(", ")||"-"},{id:"name",title:Re.NAME,label:q.name||"-"}])})]}),!!J.length&&t(yt,{bgTint:"900",richTitle:{title:"Configuration"},withCollapse:!0,collapseIsDefaultOpen:!0,children:J.map(e=>"cells"===e.kind?t(yt,{bgTint:"800",cellsPerRow:2,items:e.items},e.id):(e.kind,t(yt,{bgTint:"800",richTitle:{title:e.title},cellsPerRow:2,items:e.items},e.id)))})]})})})}),t(ml,{target:"destination",isOpen:I,onClose:()=>N(!1),onApprove:G}),t(gl,{isOpen:null!==R,onClose:()=>F(null),onApprove:H})]});var q},sr=({onClose:a,ruleId:i,updateInstrumentationRule:s,deleteInstrumentationRule:d})=>{const u=f(),{instrumentationRules:p}=at(),{addNotification:h}=It(),{selectedOption:m,loadRule:g,validateFormData:b,genericForm:v}=wl(),[y,C]=l(!1),[S,w]=l(!1),[x,k]=l(null),T=y&&!!v?.isFormDirty,$=r(()=>p?.find(e=>gt(e)===i),[i,p]),I=r(()=>it.find(({type:e})=>e===$?.type)??null,[$?.type]);n(()=>{$&&g($)},[$]);const N=c(()=>{if($){if(!$.mutable)return void h({type:ge.Warning,title:Nt.FORBIDDEN,message:Nt.CANNOT_EDIT_RULE,crdType:lt.InstrumentationRule,target:$.ruleId,hideFromHistory:!0});C(!0)}},[$,h]),E=c(()=>{$&&(g($),C(!1))},[$,g]),A=c(()=>{T?k("close"):a()},[T,a]),O=c(()=>{T?k("cancel"):E()},[T,E]),D=c(()=>{const e=x;k(null),"close"===e?(E(),a()):E()},[x,E,a]),R=c(async()=>{if($){const{errorMessage:e,preparedFormData:t}=b();e||(await s($.ruleId,t),C(!1))}},[$,b,s]),F=c(()=>{if($){if(!$.mutable)return void h({type:ge.Warning,title:Nt.FORBIDDEN,message:Nt.CANNOT_DELETE_RULE,crdType:lt.InstrumentationRule,target:$.ruleId,hideFromHistory:!0});w(!0)}},[$,h]),P=c(async()=>{$&&(await d($.ruleId),a())},[$,d,a]);if(!$||!I)return null;const L=((e,o)=>{const n=[];return e.payloadCollection&&Object.entries(e.payloadCollection).forEach(([e,o])=>{o&&n.push(t(re,{size:ce.XS,children:`• ${$t(e).toLowerCase()}`},e))}),e.codeAttributes&&Object.entries(e.codeAttributes).forEach(([e,o])=>{o&&n.push(t(re,{size:ce.XS,children:`• ${$t(e).toLowerCase()}`},e))}),e.headersCollection?.[xe.HeaderKeys]?.length&&e.headersCollection[xe.HeaderKeys].forEach(e=>{e&&n.push(t(re,{size:ce.XS,children:e},e))}),e.customInstrumentations&&(e.customInstrumentations[Ie.Java]?.forEach((e,a)=>{const i=new $e(e.className,e.methodName);if(i.Verify()){0===a&&n.push(t(re,{size:ce.XS,children:"Java Custom Probes:"},"java-custom-probes"));const e=i.toString();n.push(t(re,{size:ce.XXS,color:o.v2.colors.grey[200],children:`• ${e}`},e))}}),e.customInstrumentations[Ie.Golang]?.forEach((e,a)=>{const i=new Te(e.packageName,e.functionName,e.receiverName,e.receiverMethodName);if(i.Verify()){0===a&&n.push(t(re,{size:ce.XS,children:"Golang Custom Probes:"},"golang-custom-probes"));const e=i.toString();n.push(t(re,{size:ce.XXS,color:o.v2.colors.grey[200],children:`• ${e}`},e))}})),n})($,u);return e(o,{children:[t(ft,{isOpen:!0,header:{icon:At($.type),title:I.label,onClose:A,actions:[{id:"edit-rule-btn-edit",label:bt.EDIT,icon:ci,active:y,onClick:N},{id:"edit-rule-btn-delete",label:bt.DELETE,icon:ni,color:u.v2.colors.red[500],active:S,onClick:F}]},footer:{actions:y?[{"data-id":"edit-rule-btn-cancel",label:bt.CANCEL,variant:ae.Secondary,onClick:O},{"data-id":"edit-rule-btn-save",label:bt.SAVE,variant:ae.Primary,onClick:R}]:[]},children:t(vt,{$padding:"4px 12px 12px",children:y&&m?t(cs,{}):t(V,{$gap:16,children:e(yt,{bgTint:"1000",children:[e(yt,{bgTint:"900",children:[t(Ct,{conditions:$.conditions||[]}),t(yt,{bgTint:"800",cellsPerRow:2,items:(_=$,M=I,[{id:"type",title:Re.TYPE,label:M.label},{id:"status",title:Re.STATUS,badge:{status:_.disabled?st.Unknown:ge.Success,label:_.disabled?Re.DISABLED:Re.ENABLED}},{id:"name",title:Re.NAME,label:_.ruleName||"-"},{id:"profile",title:Re.MANAGED_BY_PROFILE,label:_.profileName||"-"},{id:"notes",title:Re.NOTES,label:_.notes||"-"}])})]}),!!L.length&&t(yt,{bgTint:"900",richTitle:{title:"Collect"},withCollapse:!0,collapseIsDefaultOpen:!0,children:t(yt,{bgTint:"800",children:L})}),!!I.supportedLanguages.length&&t(yt,{bgTint:"900",richTitle:{title:"Supported languages"},withCollapse:!0,collapseIsDefaultOpen:!0,children:t(yt,{bgTint:"800",children:t(te,{$gap:12,$wrap:"wrap",children:I.supportedLanguages.map(e=>t(Et,{label:Ae[e],leftIcon:Oe(e),flex:"0.5"},e))})})})]})})})}),t(ml,{target:"instrumentation rule",isOpen:S,onClose:()=>w(!1),onApprove:P}),t(gl,{isOpen:null!==x,onClose:()=>k(null),onApprove:D})]});var _,M},rr=({onClickRestartPod:e,namespace:o,podName:n,nodeName:a,startTime:i,agentInjectedStatus:l,odigosHealthStatus:s,k8sHealthStatus:c,children:d})=>{const{formatDurationAgo:u}=Ot(),p=r(()=>({title:n,icon:xi,withCopy:!0}),[n]),h=r(()=>{const e=[],t=Dt(l);t&&e.push(t);const o=Dt(s,ki,"health");o&&e.push(o);const n=Dt(c,Ti,"health");return n&&e.push(n),e},[l,s,c]),m=r(()=>e?[{id:`restart-pod-${n}`,icon:$i,label:bt.RESTART_POD,onClick:()=>e(o,n)}]:void 0,[e,o,n]),g=r(()=>[{id:"nodeName",title:Re.NODE,label:a,withCopy:!0},{id:"startTime",title:Re.START_TIME,label:i?u(i,{style:"short"}):Re.NOT_RUNNING,labelTooltip:i}],[a,i,u]);return t(yt,{bgTint:"900",richTitle:p,badges:h,dropDataActions:m,items:g,withCollapse:!0,children:d})},cr=g.div`
|
|
80
|
+
`,or=({clusterId:o,namespaceName:n,checkbox:a,isFutureApps:i,selectedCounts:l,isActive:s,onActive:r,handleSourceChange:c})=>{const{isVm:d}=y(),u=e=>{r(),c({clusterId:o,workloadId:{namespace:n},auto:e.auto,selected:e.all})};return t(er,{children:t(Ts,{dataId:`namespace-${n}`,withCarret:!0,title:n,isSelected:s,onClick:r,isPartiallyChecked:a.partial,isChecked:a.all,onCheckboxChange:e=>u({auto:e,all:e}),children:e(te,{$gap:12,children:[!d&&t(tr,{$visible:s||i,children:t(we,{text:Ys,children:t(q,{label:Ks,labelAlign:Z.Left,size:ct.S,value:i,onChange:e=>u({auto:e,all:e||void 0})})})}),e(te,{$gap:8,children:[t(re,{variant:dt.Span,size:ce.XXXS,color:Ce.Secondary,align:"right",children:Gs}),t(Ee,{label:`${l.sourced}/${l.total}`,status:s?ge.Default:st.Unknown,minWidth:"42px"})]})]})})})},nr=({withCollapse:e,clusterId:o,clusterName:n,namespaces:a,selectedArea:i,setSelectedArea:l,handleSourceChange:s})=>{const c=r(()=>a.map(({name:e,totalWorkloads:a,selectedCount:r,isAllSourced:c,isSomeSourced:d,isFutureApps:u})=>t(or,{clusterId:o,namespaceName:e,isFutureApps:u,checkbox:{all:c||u,partial:d},selectedCounts:{sourced:r,total:a},isActive:i.clusterId===o&&i.namespaceName===e,onActive:()=>l({clusterId:o,clusterName:n,namespaceName:e}),handleSourceChange:s},`${o}#${e}`)),[o,n,a,i]);return e?t(As,{title:n,list:c,noBgColor:!0}):c},ar=({onClose:o,onBack:a,onNext:i,selectedConnectionIds:s,setSelectedConnectionIds:c,persistSources:d,getAllClusterSnapshots:u,fetchNamespacesWithWorkloads:p,withOverlay:h,disableAnimation:m})=>{const{isVm:g}=y(),f=Xs(g),{selectedStreamName:b}=Fe(),{progress:v,resetProgress:C}=ut(),{isFetching:S,setIsFetching:w,setSnapshots:x,formData:k,handleSourceChange:T,handleSelectAll:$,formDiff:N,isFormDirty:I}=Dl();n(()=>{let e=!1;w(!0);return(async()=>{try{if(u){const t=await u();!e&&t&&x(t)}else if(p){const t=await p();if(!e&&t.data?.length){const e={clusters:[{clusterId:mt,clusterName:ht,namespaces:t.data.map(e=>({name:e.name,selected:e.markedForInstrumentation&&e.dataStreamNames.includes(b),workloads:e.workloads?.map(e=>({namespace:e.id.namespace,name:e.id.name,kind:e.id.kind,selected:e.markedForInstrumentation?.markedForInstrumentation??!1}))||[]}))}]};x(e)}}}catch(e){}finally{e||w(!1)}})(),()=>{e=!0}},[b]);const[E,O]=l(""),[A,D]=l(lt.Namespace),[R,F]=l({showOnlySelected:!1}),[P,L]=l({clusterId:"",clusterName:"",namespaceName:""}),_=(({isFetching:o,formData:n,handleSourceChange:a,handleSelectAll:i,selectedArea:l,setSelectedArea:s,searchText:c,searchBy:d,filters:u})=>{const{isVm:p}=y(),h=Xs(p),m=r(()=>n.map(e=>{const t=[...e.namespaces].sort((e,t)=>e.name.localeCompare(t.name)).filter(e=>Ol(e,c,u)).map(e=>({name:e.name,totalWorkloads:e.workloads.length,...Al(e)}));return{clusterId:e.clusterId,clusterName:e.clusterName,visibleNamespaces:t}}),[n,c,u]),g=r(()=>{let e=!1;for(const{visibleNamespaces:t}of m)for(const{totalWorkloads:o,selectedCount:n}of t)if(e=!0,n!==o)return!1;return e},[m]),{list:f,withFilterCount:b,filteredCount:v,totalCount:C}=r(()=>{const e=m.map(({clusterId:e,clusterName:o,visibleNamespaces:n})=>n.length?t(nr,{withCollapse:m.length>1,clusterId:e,clusterName:o,namespaces:n,selectedArea:l,setSelectedArea:s,handleSourceChange:a},e):null),o=e.filter(e=>null!==e);return{list:o,withFilterCount:o.length!==e.length,filteredCount:o.length,totalCount:e.length}},[m,l]);return{width:"60%",header:e(te,{$width:"100%",$gap:12,$justifyContent:"space-between",children:[e(te,{$gap:8,children:[t(re,{size:ce.XS,nowrap:!0,children:h.groupColumnHeader}),t(we,{text:b?Re.FILTERED_COUNT_TOOLTIP:void 0,children:t(Ee,{label:`${b?`${v} / ${C}`:C}`,status:st.Unknown})})]}),t(re,{"data-id":"namespaces-select-all",onClick:()=>i({boolean:!g,searchText:c,searchBy:d,filters:u}),disabled:!f.length,size:ce.XS,children:js(g)})]}),list:f.length?f:o?[t(Ke,{$height:"100%",children:t(Qe,{title:h.fetchingGroups.title,subTitle:h.fetchingGroups.subTitle,withSpinner:!0})},"loading")]:[t(Ke,{$height:"100%",children:t(se,c?{icon:wi,title:Vs,subTitle:h.noGroupMatchedFilter(c)}:{icon:wi,title:h.noGroups.title,subTitle:h.noGroups.subTitle})},"no-data")]}})({isFetching:S,formData:k,handleSourceChange:T,handleSelectAll:$,selectedArea:P,setSelectedArea:L,searchText:A===lt.Namespace?E:"",searchBy:A,filters:R}),M=(({formData:o,handleSourceChange:n,handleSelectAll:a,selectedArea:i,searchText:l,searchBy:s,filters:c})=>{const{tier:d,isVm:u}=y(),p=Xs(u),h=d===rt.Onprem,m=r(()=>i.value.namespaceName?o.find(({clusterId:e})=>e===i.value.clusterId)?.namespaces.find(({name:e})=>e===i.value.namespaceName):void 0,[o,i.value.clusterId,i.value.namespaceName]),g=r(()=>m?[...m.workloads].sort((e,t)=>e.name.localeCompare(t.name)).filter(e=>Il(e,l,c)):[],[m,l,c]),f=r(()=>!!g.length&&g.every(({selected:e})=>e),[g]),b=r(()=>{if(!m)return[];const{clusterId:e}=i.value,{name:o}=m;return g.map(({name:a,selected:i,kind:l})=>{const s=!u&&!h&&El.has(l);return t(Qs,{workloadName:a,workloadKind:l,isChecked:!s&&(i||!1),onToggle:()=>n({clusterId:e,workloadId:{namespace:o,name:a,kind:l}}),disabled:s,disabledReason:Js},`${e}#${o}#${a}#${l}`)})},[g,m,i.value.clusterId]),{withFilterCount:v,filteredCount:C,totalCount:S}=r(()=>{const e=m?.workloads.length??0;return{withFilterCount:g.length!==e,filteredCount:g.length,totalCount:e}},[g,m]);return{width:"40%",header:e(te,{$width:"100%",$gap:12,$justifyContent:"space-between",children:[e(te,{$gap:8,children:[t(re,{size:ce.XS,nowrap:!0,children:i.value.namespaceName?`${i.value.namespaceName} > ${p.itemColumnHeader}`:p.itemColumnHeader}),t(we,{text:v?Re.FILTERED_COUNT_TOOLTIP:void 0,children:t(Ee,{label:`${v?`${C} / ${S}`:S}`,status:st.Unknown})})]}),t(re,{"data-id":"workloads-select-all",onClick:()=>a({clusterId:i.value.clusterId,namespaceName:i.value.namespaceName,boolean:!f,searchText:l,searchBy:s,filters:c}),disabled:!b.length,size:ce.XS,children:js(f)})]}),list:b.length?b:[t(Ke,{$height:"100%",children:t(se,m?l?{icon:Si,title:Vs,subTitle:Hs(l)}:{icon:Si,title:Us,subTitle:p.noItemsInGroupSubTitle}:{icon:Si,title:p.selectGroupPrompt.title,subTitle:p.selectGroupPrompt.subTitle})},"no-data")]}})({formData:k,handleSourceChange:T,handleSelectAll:$,selectedArea:{value:P},searchText:A===lt.Source?E:"",searchBy:A,filters:R});return t(ml,{isOpen:!0,withOverlay:h,disableAnimation:m,onClose:o?()=>{C(pt.BulkInstrumenting),o()}:void 0,onBack:a?()=>a(N):void 0,onNext:i?()=>i(N):void 0,nextIsSkip:!I,onSave:()=>d(N),header:{icon:Si,title:Re.ADD_SOURCE,subTitle:Re.ADD_SOURCES_DESCRIPTION},connectionIds:s&&c?{value:s,setValue:c}:void 0,search:{value:E,onChange:e=>{O(e),A===lt.Namespace&&L({clusterId:"",clusterName:"",namespaceName:""})},placeholder:f.searchPlaceholder(A),segment:{options:[{label:f.groupSegmentLabel,value:lt.Namespace},{label:f.itemSegmentLabel,value:lt.Source}],selected:A,setSelected:D}},filters:e(te,{$gap:8,children:[t(re,{size:ce.XXXS,color:Ce.Secondary,nowrap:!0,children:Ws}),t(q,{name:"filter-selected",size:ct.S,label:Gs,value:R.showOnlySelected,onChange:e=>F(t=>({...t,showOnlySelected:e}))})]}),isFormDirty:I,isFetching:S,progress:{title:Re.CREATING_SOURCES,subTitle:Re.CREATING_SOURCES_SUBTITLE,percentage:v[pt.BulkInstrumenting]?.percentage||0},leftColumn:_,rightColumn:M})},ir=({onClose:a,actionId:i,updateAction:s,deleteAction:d})=>{const u=f(),{actions:p}=at(),{selectedOption:h,loadAction:m,validateFormData:g,genericForm:b}=Sl(),[v,y]=l(!1),[C,S]=l(!1),[w,x]=l(null),k=v&&!!b?.isFormDirty,T=r(()=>p?.find(e=>gt(e)===i),[i,p]),$=r(()=>We.find(({type:e})=>e===T?.type)??Ge.find(({type:e})=>e===T?.type)??null,[T?.type]);n(()=>{T&&m(T)},[T]);const N=c(()=>{T&&y(!0)},[T]),I=c(()=>{T&&(m(T),y(!1))},[T,m]),E=c(()=>{k?x("close"):a()},[k,a]),O=c(()=>{k?x("cancel"):I()},[k,I]),A=c(()=>{const e=w;x(null),"close"===e?(I(),a()):I()},[w,I,a]),D=c(async()=>{if(T){const{errorMessage:e,preparedFormData:t}=g();e||(await s(T.id,t),y(!1))}},[T,g,s]),R=c(()=>{T&&S(!0)},[T]),F=c(async()=>{T&&(await d(T.id,T.type),a())},[T,d,a]);if(!T||!$)return null;const P=(e=>{const t=[],{type:o,fields:n}=e,a=e=>({status:e?ge.Success:st.Unknown,label:e?"True":"False",invertColors:!0});return o===le.K8sAttributes&&(t.push({id:"collectContainerAttributes",title:"Collect Container Attributes",badge:a(n.collectContainerAttributes)}),t.push({id:"collectReplicaSetAttributes",title:"Collect ReplicaSet Attributes",badge:a(n.collectReplicaSetAttributes)}),t.push({id:"collectWorkloadId",title:"Collect Workload ID",badge:a(n.collectWorkloadId)}),t.push({id:"collectClusterId",title:"Collect Cluster ID",badge:a(n.collectClusterId)}),n.labelsAttributes?.forEach(({labelKey:e,attributeKey:o,from:a,fromSources:i},l)=>{const s=i?.length?i.join(", "):a||J.Pod,r=(n.labelsAttributes?.length??0)>1?`Label #${l+1} `:"Label ";t.push({id:`label-${l}-key`,title:`${r}Key`,label:e}),t.push({id:`label-${l}-attr`,title:`${r}Attribute Key`,label:o}),t.push({id:`label-${l}-from`,title:`${r}From`,label:s})}),n.annotationsAttributes?.forEach(({annotationKey:e,attributeKey:o,from:a,fromSources:i},l)=>{const s=i?.length?i.join(", "):a||J.Pod,r=(n.annotationsAttributes?.length??0)>1?`Annotation #${l+1} `:"Annotation ";t.push({id:`annotation-${l}-key`,title:`${r}Key`,label:e}),t.push({id:`annotation-${l}-attr`,title:`${r}Attribute Key`,label:o}),t.push({id:`annotation-${l}-from`,title:`${r}From`,label:s})})),o===le.AddClusterInfo&&(t.push({id:"overwriteExistingValues",title:"Overwrite Existing Values",badge:a(n.overwriteExistingValues)}),n.clusterAttributes?.forEach(({attributeName:e,attributeStringValue:o},n)=>{t.push({id:`cluster-attr-${n}`,title:e,label:o})})),o===le.DeleteAttributes&&n.attributeNamesToDelete?.forEach((e,o)=>{t.push({id:`del-attr-${o}`,title:"Attribute"+((n.attributeNamesToDelete?.length??0)>1?` #${o+1}`:""),label:e})}),o===le.RenameAttributes&&Object.entries(n.renames||{}).forEach(([e,o],n)=>{t.push({id:`rename-${n}`,title:e,label:o})}),o===le.PiiMasking&&n.piiCategories?.forEach((e,o)=>{t.push({id:`pii-${o}`,title:"Category"+((n.piiCategories?.length??0)>1?` #${o+1}`:""),label:e})}),o===le.ErrorSampler&&t.push({id:"fallbackSamplingRatio",title:"Sampling Ratio",label:String(n.fallbackSamplingRatio??"-")}),o===le.ProbabilisticSampler&&t.push({id:"samplingPercentage",title:"Sampling Percentage",label:String(n.samplingPercentage??"-")}),o===le.LatencySampler&&n.endpointsFilters?.forEach(({serviceName:e,httpRoute:o,minimumLatencyThreshold:a,fallbackSamplingRatio:i},l)=>{const s=(n.endpointsFilters?.length??0)>1?`Endpoint #${l+1} `:"Endpoint ";t.push({id:`endpoint-${l}-service`,title:`${s}Service Name`,label:e}),t.push({id:`endpoint-${l}-route`,title:`${s}HTTP Route`,label:o}),t.push({id:`endpoint-${l}-latency`,title:`${s}Min. Latency`,label:String(a)}),t.push({id:`endpoint-${l}-fallback`,title:`${s}Fallback Sampling Ratio`,label:String(i)})}),o===le.ServiceNameSampler&&n.servicesNameFilters?.forEach(({serviceName:e,samplingRatio:o,fallbackSamplingRatio:a},i)=>{const l=(n.servicesNameFilters?.length??0)>1?`Filter #${i+1} `:"Filter ";t.push({id:`service-${i}-name`,title:`${l}Service Name`,label:e}),t.push({id:`service-${i}-ratio`,title:`${l}Sampling Ratio`,label:String(o)}),t.push({id:`service-${i}-fallback`,title:`${l}Fallback Sampling Ratio`,label:String(a)})}),o===le.SpanAttributeSampler&&n.attributeFilters?.forEach(({serviceName:e,attributeKey:o,fallbackSamplingRatio:a,condition:i},l)=>{const s=Object.keys(i)[0],r=i[s],c=(n.attributeFilters?.length??0)>1?`Filter #${l+1} `:"Filter ";t.push({id:`attr-${l}-service`,title:`${c}Service Name`,label:e}),t.push({id:`attr-${l}-key`,title:`${c}Attribute Key`,label:o}),t.push({id:`attr-${l}-fallback`,title:`${c}Fallback Sampling Ratio`,label:String(a)}),t.push({id:`attr-${l}-condition`,title:`${c}Condition`,label:s}),t.push({id:`attr-${l}-operation`,title:`${c}Operation`,label:r?.operation??"-"}),t.push({id:`attr-${l}-expected`,title:`${c}Expected Value`,label:String(r?.expectedValue??"-")}),"jsonCondition"===s&&t.push({id:`attr-${l}-jsonpath`,title:`${c}JSON Path`,label:r?.jsonPath??"-"})}),o===le.URLTemplatization&&n.urlTemplatizationRulesGroups?.forEach((e,o)=>{const a=(n.urlTemplatizationRulesGroups?.length??0)>1?`Group #${o+1} `:"Group ";e.filterK8sNamespace&&t.push({id:`group-${o}-ns`,title:`${a}Namespace`,label:e.filterK8sNamespace}),e.workloadFilters?.forEach((n,i)=>{const l=[n.kind,n.name].filter(Boolean).join("/");l&&t.push({id:`group-${o}-wf-${i}`,title:`${a}Workload${(e.workloadFilters?.length??0)>1?` #${i+1}`:""}`,label:l})});const i=e.templatizationRules?.map(e=>e.template).filter(Boolean).join(", ");i&&t.push({id:`group-${o}-templates`,title:`${a}Templates`,label:i}),e.notes&&t.push({id:`group-${o}-notes`,title:`${a}Notes`,label:e.notes})}),t})(T);return e(o,{children:[t(ft,{isOpen:!0,header:{icon:St(T.type),title:$.label,onClose:E,actions:[{id:"edit-action-btn-edit",label:bt.EDIT,icon:di,active:v,onClick:N},{id:"edit-action-btn-delete",label:bt.DELETE,icon:ai,color:u.v2.colors.red[500],active:C,onClick:R}]},footer:{actions:v?[{"data-id":"edit-action-btn-cancel",label:bt.CANCEL,variant:ae.Secondary,onClick:O},{"data-id":"edit-action-btn-save",label:bt.SAVE,variant:ae.Primary,onClick:D}]:[]},children:t(vt,{$padding:"4px 12px 12px",children:v&&h?t(Ql,{}):t(V,{$gap:16,children:e(yt,{bgTint:"1000",children:[e(yt,{bgTint:"900",children:[t(Ct,{conditions:T.conditions||[]}),t(yt,{bgTint:"800",cellsPerRow:2,items:(L=T,_=$,[{id:"type",title:Re.TYPE,label:_.label},{id:"status",title:Re.STATUS,badge:{status:L.disabled?st.Unknown:ge.Success,label:L.disabled?Re.DISABLED:Re.ENABLED}},{id:"signals",title:Re.SIGNALS_FOR_PROCESSING,label:L.signals?.map(e=>{let t=e.toLowerCase();return t=`${t.charAt(0).toUpperCase()}${t.slice(1)}`,t}).join(", ")||"-"},{id:"name",title:Re.NAME,label:L.name||"-"},{id:"notes",title:Re.NOTES,label:L.notes||"-"}])})]}),!!P?.length&&t(yt,{bgTint:"900",richTitle:{title:"Configuration"},withCollapse:!0,collapseIsDefaultOpen:!0,children:t(yt,{bgTint:"800",cellsPerRow:2,items:P})})]})})})}),t(gl,{target:"action",isOpen:C,onClose:()=>S(!1),onApprove:F}),t(fl,{isOpen:null!==w,onClose:()=>x(null),onApprove:A})]});var L,_},lr=({onClose:o,connections:a,selectedConnectionIds:i,setSelectedConnectionIds:s,getEffectiveConfig:c,onApply:d})=>{const[u,p]=l(""),[h,m]=l({showOnlySelected:!1}),g=r(()=>a.filter(e=>{const t=!u||e.name.toLowerCase().includes(u.toLowerCase()),o=!h.showOnlySelected||h.showOnlySelected&&i.includes(e.id);return t&&o}),[a.length,i.length,u,h]),f=e=>{s(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e])},[b,v]=l(!1),[y,C]=l(void 0),{formData:S,handleFormChange:w,areFormValuesEqual:x,resetFormData:k}=wt(y||{rollout:{automaticRolloutDisabled:!1}}),T=r(()=>i.length>1||void 0!==y&&!x(y,S),[i.length,y,S]);return n(()=>{1===i.length?(async e=>{if(b)return;v(!0);const t=await c(e);if(t){const e={rollout:{automaticRolloutDisabled:t.rollout?.automaticRolloutDisabled??!1}};C(e),k(e)}v(!1)})(i[0]):C(void 0)},[i.length]),t(ml,{isOpen:!0,onClose:o,onSave:()=>d(S,i),header:{icon:xi,title:"Cluster Configuration"},connectionIds:{value:i,setValue:s},search:{placeholder:"Search by cluster name",value:u,onChange:p},filters:e(te,{$gap:8,children:[t(re,{size:ce.XXXS,color:Ce.Secondary,nowrap:!0,children:"Show only:"}),t(q,{size:ct.S,label:"Selected",value:h.showOnlySelected,onChange:e=>m(t=>({...t,showOnlySelected:e}))})]}),isFormDirty:T,isFetching:b,leftColumn:{width:"35%",header:e(te,{$width:"100%",$gap:12,$justifyContent:"space-between",children:[e(te,{$gap:8,children:[t(re,{size:ce.XS,children:"Clusters"}),t(Ee,{label:g.length,status:st.Unknown})]}),e(te,{$gap:8,children:[t(re,{size:ce.XXXS,color:Ce.Secondary,align:"right",children:"Selected clusters"}),t(Ee,{label:`${i.length}/${g.length}`,status:st.Unknown})]})]}),list:g.map(e=>t(Ts,{title:e.name,isChecked:i.includes(e.id),onClick:()=>f(e.id),onCheckboxChange:()=>f(e.id)},e.id))},rightColumn:{width:"65%",header:t(re,{size:ce.XS,children:"Configurations"}),list:[t(q,{label:"Automatic rollout disabled",tooltip:"Odigos automatically triggers a one-time rollout for workloads when instrumenting or uninstrumenting, ensuring that changes are applied without requiring manual intervention. When automatic rollout is disabled, Odigos will not restart workloads, and users will need to manually trigger rollouts after adding or removing sources.",value:S.rollout?.automaticRolloutDisabled||!1,onChange:e=>w("rollout.automaticRolloutDisabled",e)},"automatic-rollout-disabled")]}})},sr=({onClose:a,destinationId:i,getDestinationCategories:s,testConnection:u,updateDestination:p,deleteDestination:h})=>{const m=f(),{isVm:g}=y(),{destinations:b}=at(),{selectedStreamName:v}=Fe(),{activeForm:C,loadDestination:S,validateFormData:w,genericForm:x}=wl(),k=d(null),[T,$]=l(!1),[N,I]=l(!1),[E,O]=l(null),[A,D]=l(!0),[R,F]=l(null),P=T&&!!x?.isFormDirty,L=r(()=>kt(b,v),[b,v]),_=r(()=>L?.find(e=>gt(e)===i),[i,L]);n(()=>{let e=!1;return D(!0),s().then(t=>{e||O(t?.destinationCategories.categories??[])}).catch(t=>{e||O([])}).finally(()=>{e||D(!1)}),()=>{e=!0}},[]),n(()=>{_&&E&&S(_,E)},[_,E]);const M=r(()=>_&&E?Tt(E,_):[],[_,E]),B=c(()=>{_&&$(!0)},[_]),z=c(()=>{_&&E&&(S(_,E),$(!1))},[_,E,S]),X=c(()=>{P?F("close"):a()},[P,a]),U=c(()=>{P?F("cancel"):z()},[P,z]),H=c(()=>{const e=R;F(null),"close"===e?(z(),a()):z()},[R,z,a]),j=c(async()=>{if(_){const{errorMessage:e,preparedFormData:t}=w();e||(await p(_.id,ye(t)),$(!1))}},[_,w,p]),W=c(()=>{_&&I(!0)},[_]),G=c(async()=>{_&&(await h(_.id),a())},[_,h,a]);if(!_)return null;const{icon:K,iconSrc:Y}=tt(_.destinationType.type),J=((e,t)=>{const o=[],n=xt(e,t),a=n.map(e=>({name:e.key,value:e.value})),i=be(e.exportedSignals);let l=[];const s=()=>{l.length&&(o.push({kind:"cells",id:`cells-${o.length}`,items:l}),l=[])};return n.forEach(({key:e,name:n,value:r})=>{const c=t.find(t=>t.name===e),{secret:d,componentType:u,componentProperties:p,hideFromReadData:h,customReadDataLabels:m}=c||{};if(h?.length&&he(h,i,a))return;const{type:g}=nt(p,{type:""}),f=d||"password"===g;if(m?.length)m.forEach(({condition:t,...o},n)=>{t==r&&l.push({id:`${e}-custom-${n}`,title:o.title,label:o.value})});else if(r)if(f)l.push({id:e,title:n,label:new Array(10).fill("•").join("")});else{if(u===ie.MultiInput){const t=nt(r,null);if(Array.isArray(t)&&t.length)return s(),void o.push({kind:"list",id:e,title:n,items:t.map((t,o)=>({id:`${e}-${o}`,label:String(t)}))})}if(u===ie.KeyValuePair){const t=nt(r,null);if(Array.isArray(t)&&t.length)return s(),void o.push({kind:"pairs",id:e,title:n,items:t.map((t,o)=>{const n=t&&"object"==typeof t?t:{};return{id:`${e}-${o}`,title:null!=n.key?String(n.key):"",label:null!=n.value?String(n.value):""}})})}l.push({id:e,title:n,label:r})}else l.push({id:e,title:n,label:"-"})}),s(),o})(_,M);return e(o,{children:[t(ft,{isOpen:!0,header:{icon:K,iconSrc:Y,title:_.name||_.destinationType.displayName,onClose:X,actions:[{id:"edit-destination-btn-edit",label:bt.EDIT,icon:di,active:T,onClick:B},{id:"edit-destination-btn-delete",label:bt.DELETE,icon:ai,color:m.v2.colors.red[500],active:N,onClick:W}]},footer:{actions:T?[{"data-id":"edit-destination-btn-cancel",label:bt.CANCEL,variant:ae.Secondary,onClick:U},...C?.option.testConnectionSupported&&!g?[{"data-id":"edit-destination-btn-test-connection",label:bt.TEST_CONNECTION,variant:ae.Secondary,onClick:()=>k.current?.testConnection()}]:[],{"data-id":"edit-destination-btn-save",label:bt.SAVE,variant:ae.Primary,onClick:j}]:[]},children:t(vt,{$padding:"4px 12px 12px",children:A?t(Ke,{$height:"50vh",children:t(Qe,{withSpinner:!0})}):T&&C?t(os,{ref:k,isEdit:!0,testConnection:u}):t(V,{$gap:16,children:e(yt,{bgTint:"1000",children:[e(yt,{bgTint:"900",children:[!g&&t(Ct,{conditions:_.conditions||[]}),t(yt,{bgTint:"800",cellsPerRow:2,items:(q=_,[{id:"type",title:Re.TYPE,label:q.destinationType.displayName},{id:"status",title:Re.STATUS,badge:{status:q.disabled?st.Unknown:ge.Success,label:q.disabled?Re.DISABLED:Re.ENABLED}},{id:"monitors",title:Re.MONITORS,label:be(q.exportedSignals).map(e=>{let t=e.toLowerCase();return t=`${t.charAt(0).toUpperCase()}${t.slice(1)}`,t}).join(", ")||"-"},{id:"name",title:Re.NAME,label:q.name||"-"}])})]}),!!J.length&&t(yt,{bgTint:"900",richTitle:{title:"Configuration"},withCollapse:!0,collapseIsDefaultOpen:!0,children:J.map(e=>"cells"===e.kind?t(yt,{bgTint:"800",cellsPerRow:2,items:e.items},e.id):(e.kind,t(yt,{bgTint:"800",richTitle:{title:e.title},cellsPerRow:2,items:e.items},e.id)))})]})})})}),t(gl,{target:"destination",isOpen:N,onClose:()=>I(!1),onApprove:G}),t(fl,{isOpen:null!==R,onClose:()=>F(null),onApprove:H})]});var q},rr=({onClose:a,ruleId:i,updateInstrumentationRule:s,deleteInstrumentationRule:d})=>{const u=f(),{instrumentationRules:p}=at(),{addNotification:h}=Nt(),{selectedOption:m,loadRule:g,validateFormData:b,genericForm:v}=xl(),[y,C]=l(!1),[S,w]=l(!1),[x,k]=l(null),T=y&&!!v?.isFormDirty,$=r(()=>p?.find(e=>gt(e)===i),[i,p]),N=r(()=>it.find(({type:e})=>e===$?.type)??null,[$?.type]);n(()=>{$&&g($)},[$]);const I=c(()=>{if($){if(!$.mutable)return void h({type:ge.Warning,title:It.FORBIDDEN,message:It.CANNOT_EDIT_RULE,crdType:lt.InstrumentationRule,target:$.ruleId,hideFromHistory:!0});C(!0)}},[$,h]),E=c(()=>{$&&(g($),C(!1))},[$,g]),O=c(()=>{T?k("close"):a()},[T,a]),A=c(()=>{T?k("cancel"):E()},[T,E]),D=c(()=>{const e=x;k(null),"close"===e?(E(),a()):E()},[x,E,a]),R=c(async()=>{if($){const{errorMessage:e,preparedFormData:t}=b();e||(await s($.ruleId,t),C(!1))}},[$,b,s]),F=c(()=>{if($){if(!$.mutable)return void h({type:ge.Warning,title:It.FORBIDDEN,message:It.CANNOT_DELETE_RULE,crdType:lt.InstrumentationRule,target:$.ruleId,hideFromHistory:!0});w(!0)}},[$,h]),P=c(async()=>{$&&(await d($.ruleId),a())},[$,d,a]);if(!$||!N)return null;const L=((e,o)=>{const n=[];return e.payloadCollection&&Object.entries(e.payloadCollection).forEach(([e,o])=>{o&&n.push(t(re,{size:ce.XS,children:`• ${$t(e).toLowerCase()}`},e))}),e.codeAttributes&&Object.entries(e.codeAttributes).forEach(([e,o])=>{o&&n.push(t(re,{size:ce.XS,children:`• ${$t(e).toLowerCase()}`},e))}),e.headersCollection?.[xe.HeaderKeys]?.length&&e.headersCollection[xe.HeaderKeys].forEach(e=>{e&&n.push(t(re,{size:ce.XS,children:e},e))}),e.customInstrumentations&&(e.customInstrumentations[Ne.Java]?.forEach((e,a)=>{const i=new $e(e.className,e.methodName);if(i.Verify()){0===a&&n.push(t(re,{size:ce.XS,children:"Java Custom Probes:"},"java-custom-probes"));const e=i.toString();n.push(t(re,{size:ce.XXS,color:o.v2.colors.grey[200],children:`• ${e}`},e))}}),e.customInstrumentations[Ne.Golang]?.forEach((e,a)=>{const i=new Te(e.packageName,e.functionName,e.receiverName,e.receiverMethodName);if(i.Verify()){0===a&&n.push(t(re,{size:ce.XS,children:"Golang Custom Probes:"},"golang-custom-probes"));const e=i.toString();n.push(t(re,{size:ce.XXS,color:o.v2.colors.grey[200],children:`• ${e}`},e))}})),n})($,u);return e(o,{children:[t(ft,{isOpen:!0,header:{icon:Ot($.type),title:N.label,onClose:O,actions:[{id:"edit-rule-btn-edit",label:bt.EDIT,icon:di,active:y,onClick:I},{id:"edit-rule-btn-delete",label:bt.DELETE,icon:ai,color:u.v2.colors.red[500],active:S,onClick:F}]},footer:{actions:y?[{"data-id":"edit-rule-btn-cancel",label:bt.CANCEL,variant:ae.Secondary,onClick:A},{"data-id":"edit-rule-btn-save",label:bt.SAVE,variant:ae.Primary,onClick:R}]:[]},children:t(vt,{$padding:"4px 12px 12px",children:y&&m?t(ds,{}):t(V,{$gap:16,children:e(yt,{bgTint:"1000",children:[e(yt,{bgTint:"900",children:[t(Ct,{conditions:$.conditions||[]}),t(yt,{bgTint:"800",cellsPerRow:2,items:(_=$,M=N,[{id:"type",title:Re.TYPE,label:M.label},{id:"status",title:Re.STATUS,badge:{status:_.disabled?st.Unknown:ge.Success,label:_.disabled?Re.DISABLED:Re.ENABLED}},{id:"name",title:Re.NAME,label:_.ruleName||"-"},{id:"profile",title:Re.MANAGED_BY_PROFILE,label:_.profileName||"-"},{id:"notes",title:Re.NOTES,label:_.notes||"-"}])})]}),!!L.length&&t(yt,{bgTint:"900",richTitle:{title:"Collect"},withCollapse:!0,collapseIsDefaultOpen:!0,children:t(yt,{bgTint:"800",children:L})}),!!N.supportedLanguages.length&&t(yt,{bgTint:"900",richTitle:{title:"Supported languages"},withCollapse:!0,collapseIsDefaultOpen:!0,children:t(yt,{bgTint:"800",children:t(te,{$gap:12,$wrap:"wrap",children:N.supportedLanguages.map(e=>t(Et,{label:Oe[e],leftIcon:Ae(e),flex:"0.5"},e))})})})]})})})}),t(gl,{target:"instrumentation rule",isOpen:S,onClose:()=>w(!1),onApprove:P}),t(fl,{isOpen:null!==x,onClose:()=>k(null),onApprove:D})]});var _,M};var cr;!function(e){e.Overview="overview",e.Pods="pods",e.PeerSources="peer-sources",e.Profiling="profiling",e.Debug="debug"}(cr||(cr={}));const dr=({collapseIsDefaultOpen:e,isJumpToTarget:o,onClickRestartPod:n,namespace:a,podName:i,nodeName:l,startTime:s,agentInjectedStatus:c,odigosHealthStatus:d,k8sHealthStatus:u,children:p})=>{const{formatDurationAgo:h}=At(),m=Dt(!!o),g=r(()=>({title:i,icon:ki,withCopy:!0}),[i]),f=r(()=>{const e=[],t=Rt(c);t&&e.push(t);const o=Rt(d,Ti,"health");o&&e.push(o);const n=Rt(u,$i,"health");return n&&e.push(n),e},[c,d,u]),b=r(()=>n?[{id:`restart-pod-${i}`,icon:Ni,label:bt.RESTART_POD,onClick:()=>n(a,i)}]:void 0,[n,a,i]),v=r(()=>[{id:"nodeName",title:Re.NODE,label:l,withCopy:!0},{id:"age",title:Re.AGE,label:s?h(s,{style:"short"}):Re.NOT_RUNNING,labelTooltip:s}],[l,s,h]);return t("div",{ref:m,children:t(yt,{bgTint:"900",richTitle:g,badges:f,dropDataActions:b,items:v,withCollapse:!0,collapseIsDefaultOpen:e,children:p})})},ur=g.div`
|
|
81
81
|
display: flex;
|
|
82
82
|
align-items: center;
|
|
83
83
|
justify-content: space-between;
|
|
@@ -85,7 +85,7 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
85
85
|
padding: ${({$noPadding:e})=>e?"0":"12px"};
|
|
86
86
|
border-radius: 12px;
|
|
87
87
|
background-color: ${({theme:e})=>e.v2.colors.silver[900]};
|
|
88
|
-
`,
|
|
88
|
+
`,pr=({podsOdigosHealthStatus:o,pods:n,noPadding:a})=>{const i=Lt(o?.status),l=$t(o?.name),s=o?.message,{totalPodsCount:c,injectionsAsExpectedCount:d,odigosHealthyPodsCount:u,k8sHealthyPodsCount:p}=r(()=>({totalPodsCount:n?.length||0,injectionsAsExpectedCount:n?.reduce((e,t)=>e+(t.agentInjectedStatus?.status===Ft.Success?1:0),0)||0,odigosHealthyPodsCount:n?.reduce((e,t)=>e+(t.odigosHealthStatus?.status===Ft.Success?1:0),0)||0,k8sHealthyPodsCount:n?.reduce((e,t)=>e+(t.k8sHealthStatus?.status===Ft.Success?1:0),0)||0}),[n]);return n?.length&&o&&i?e(ur,{$noPadding:a,children:[t(Pt,{invertColors:!0,hideBackground:!0,status:i,title:l,subTitle:s}),e(te,{$gap:8,children:[t(mr,{label:Re.PODS,count:c}),t(mr,{label:Re.INJECTIONS_AS_EXPECTED,count:d,total:c}),t(mr,{label:Re.ODIGOS_HEALTHY,icon:Ti,count:u,total:c}),t(mr,{label:Re.KUBERNETES_HEALTHY,icon:$i,count:p,total:c})]})]}):null},hr=g.div`
|
|
89
89
|
display: flex;
|
|
90
90
|
flex-direction: column;
|
|
91
91
|
justify-content: center;
|
|
@@ -96,7 +96,7 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
96
96
|
width: fit-content;
|
|
97
97
|
border-radius: 8px;
|
|
98
98
|
background-color: ${({theme:e})=>e.v2.colors.silver[800]};
|
|
99
|
-
`,
|
|
99
|
+
`,mr=({count:o,total:n,label:a,icon:i})=>{const l=f(),s=void 0===n?void 0:o===n?l.v2.colors.green[500]:l.v2.colors.red[500];return e(hr,{children:[e(te,{$gap:0,$alignItems:"flex-end",children:[t(re,{size:ce.L,color:s,weight:500,nowrap:!0,children:o}),void 0!==n&&t(re,{size:ce.S,color:s,weight:500,nowrap:!0,children:`/${n}`})]}),e(te,{$alignItems:"center",$gap:4,children:[i&&t(i,{size:16}),t(re,{size:ce.XXXS,nowrap:!0,children:a})]})]})},gr=12,fr=24,br=12,vr=24,yr=40,Cr=e=>{if(e.overrideProcessNum)return e.overrideProcessNum.toString();const t=e.identifyingAttributes?.find(({name:e})=>e===_t.PID)??e.identifyingAttributes?.find(({name:e})=>e===_t.VPID);return t?.value??null};var Sr;!function(e){e.IdentifyingAttributes="identifying-attributes",e.InstrumentationLibraries="instrumentation-libraries"}(Sr||(Sr={}));const wr=({overrideProcessNum:o,healthy:a,healthStatus:i,identifyingAttributes:s,instrumentations:c,isJumpToTarget:d})=>{const u=f(),[p,h]=l(Sr.IdentifyingAttributes),m=Dt(!!d),{tabOptions:g,firstTabValue:b,bothTabsDisabled:v}=r(()=>{const e=c?.some(e=>!1===e.healthy),o=[{value:Sr.IdentifyingAttributes,label:Re.IDENTIFYING_ATTRIBUTES,disabled:!s?.length,selectedBgColor:u.v2.colors.purple[500]},{value:Sr.InstrumentationLibraries,label:Re.INSTRUMENTATION_LIBRARIES,icon:e?e=>t(Ii,{...e,fill:u.v2.colors.red[500]}):void 0,disabled:!c?.length,selectedBgColor:u.v2.colors.purple[500]}];return{tabOptions:o,firstTabValue:o.find(e=>!e.disabled)?.value||o[0].value,bothTabsDisabled:o.every(e=>e.disabled)}},[s,c]);n(()=>{b&&h(b)},[b]);const y=r(()=>{switch(p){case Sr.IdentifyingAttributes:return t(V,{children:s?.map(e=>t(kr,{label:e.name,value:e.value},e.name))});case Sr.InstrumentationLibraries:return t(V,{children:c?.map(e=>t(kr,{label:e.name,isStandardLibrary:e.isStandardLibrary,healthy:e.healthy,message:e.message},e.name))});default:return null}},[p,s,c]),C=r(()=>Cr({overrideProcessNum:o,identifyingAttributes:s}),[o,s]);return t("div",{ref:m,children:e(yt,{bgTint:"800",richTitle:{title:C?`${Re.PROCESS} ${Re.PID(C)}`:Re.PROCESS_FALLBACK_NAME},renderOnRightSide:t(re,{color:a?Ce.Success:Ce.Error,size:ce.XXXS,children:i?.message}),badges:[{key:"odigos-healthy",status:a?ge.Success:ge.Error,leftIcon:Ti,label:a?Re.HEALTHY:Re.NOT_HEALTHY,textSize:ce.XXXS,invertColors:!0,useSecondaryTone:!0}],withCollapse:!v,collapseIsDefaultOpen:d,children:[!v&&t(ue,{options:g,selected:p,setSelected:h}),!v&&y]})})},xr=g.div`
|
|
100
100
|
display: flex;
|
|
101
101
|
align-items: center;
|
|
102
102
|
justify-content: space-between;
|
|
@@ -105,14 +105,14 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
105
105
|
&:hover {
|
|
106
106
|
background-color: ${({theme:e})=>e.v2.colors.silver[700]};
|
|
107
107
|
}
|
|
108
|
-
`,
|
|
108
|
+
`,kr=({label:o,value:n,isStandardLibrary:a,healthy:i,message:l})=>{const s="boolean"==typeof i;return e(xr,{children:[t(re,{size:ce.XXS,color:Ce.Secondary,children:o}),n&&t(re,{size:ce.XXS,color:Ce.Primary,children:n}),(s||a)&&e(te,{children:[a&&t(Ee,{status:ge.Info,label:Re.STANDARD,textSize:ce.XXXS,invertColors:!0}),s&&t(Ee,{status:i?ge.Success:ge.Error,label:i?Re.HEALTHY:Re.NOT_HEALTHY,textSize:ce.XXXS,invertColors:!0,tooltip:l??void 0})]})]})},Tr=p(null),$r=({value:e,children:o})=>t(Tr.Provider,{value:e,children:o}),Nr=()=>{const e=h(Tr);if(!e)throw new Error("useJumpToTargetContext must be used within a JumpToTargetContextProvider");return e},Ir=({podContainers:e,sourceContainers:o,jumpToTarget:n})=>{const a=e??[],i=r(()=>({title:Re.CONTAINERS,titleSize:ce.XS,badge:{label:a.length}}),[a.length]),l=r(()=>{const e=new Map;return o?.forEach(t=>e.set(t.containerName,t)),e},[o]);return t(yt,{bgTint:"800",richTitle:i,withCollapse:!0,collapseIsDefaultOpen:!0,children:t(V,{$gap:8,children:a.map(e=>{const o=n?.containerName===e.containerName;return t(Or,{...e,language:Mt(l.get(e.containerName)),jumpToTarget:o?n:null},`pod-container-${e.containerName}`)})})})},Er=g.div`
|
|
109
109
|
display: flex;
|
|
110
110
|
flex-direction: column;
|
|
111
111
|
gap: 12px;
|
|
112
112
|
padding: 8px 12px;
|
|
113
113
|
border-radius: 8px;
|
|
114
114
|
background-color: ${({theme:e})=>e.v2.colors.silver[800]};
|
|
115
|
-
`,
|
|
115
|
+
`,Or=({language:o,containerName:n,otelDistroName:a,runningStartedTime:i,started:l,ready:s,restartCount:c,isCrashLoop:d,waitingReasonEnum:u,waitingMessage:p,odigosHealthStatus:h,k8sHealthStatus:m,processes:g,jumpToTarget:f})=>{const b=!!f,v=b&&!f?.processPid,{formatDurationAgo:y}=At(),C=Dt(v),S=r(()=>({title:n,icon:o?Ae(o):Ei,iconWithWrapper:!0}),[n,o]),w=r(()=>{const e=[],t=Rt({status:a?Ft.Success:Ft.Disabled,reasonEnum:a?Re.INSTRUMENTED_WITH_DISTRO(a):Re.UNINSTRUMENTED,message:""});t&&e.push(t);const o=Rt(h,Ti,"health");o&&e.push(o);const n=Rt(m,$i,"health");return n&&e.push(n),e},[m,h,a]),x=r(()=>[{id:"runningTime",title:Re.RUNNING_TIME,label:i?y(i,{style:"short"}):Re.NOT_RUNNING,labelTooltip:`${Re.RUNNING_TIME_TOOLTIP}. (${i})`},{id:"blank",spacer:!0},{id:"started",badge:{status:l?ge.Success:Bt.Disabled,leftIcon:l?si:ri,label:l?Re.STARTED:Re.NOT_STARTED,textSize:ce.XXXS,invertColors:!0,useSecondaryTone:!0}},{id:"ready",badge:{status:s?ge.Success:Bt.Disabled,leftIcon:s?si:ri,label:s?Re.READY:Re.NOT_READY,textSize:ce.XXXS,invertColors:!0,useSecondaryTone:!0}},{id:"isCrashLoop",badge:{status:d?ge.Error:ge.Success,leftIcon:d?ri:si,label:d?Re.CRASHLOOP:Re.NO_CRASHLOOP,textSize:ce.XXXS,invertColors:!0,useSecondaryTone:!0}},{id:"restartCount",title:Re.RESTARTS,badge:{status:c?ge.Error:void 0,label:c||0,textSize:ce.XXXS}}],[i,y,l,s,d,c]),k=r(()=>p?$t(u):"",[p,u]);return t("div",{ref:C,children:e(yt,{bgTint:"750",richTitle:S,badges:w,items:x,withCollapse:!0,collapseIsDefaultOpen:b,children:[p&&t(Er,{children:e(te,{$gap:10,$alignItems:"center",children:[t(Et,{variant:zt.Pink,leftIcon:$i,label:k}),t(re,{size:ce.XXXS,color:Ce.Error,children:p})]})}),(g??[]).map((e,o)=>{const a=o+1,i=b&&(l=f,s=e,!!l?.processPid&&Cr({identifyingAttributes:s.identifyingAttributes})===l.processPid);var l,s;return t(wr,{...e,overrideProcessNum:a,isJumpToTarget:i},`pod-container-${n}-process-${a}`)})]})})},Ar=({podName:e,namespace:o,hasRestarted:n})=>{const a=r(()=>({title:Re.DEBUG_COMMANDS,titleSize:ce.XS}),[]),i=r(()=>[{label:Re.GET_POD_YAML,value:`kubectl get pod ${e} -n ${o} -o yaml`},{label:Re.DESCRIBE_POD,value:`kubectl describe pod ${e} -n ${o}`},{label:Re.GET_POD_LOGS,value:`kubectl logs ${e} -n ${o}${n?" -p":""}`}],[e,o,n]);return t(yt,{bgTint:"800",richTitle:a,withCollapse:!0,children:i.map(({label:e,value:o})=>t(Xt,{bgTint:"700",label:e,value:o},e))})},Dr=({source:n,onClickRestartPod:a})=>{const{jumpToTarget:i}=Nr(),l=i?.tab===cr.Pods?i:null,s=n?.pods??[],c=s.length>0,d=r(()=>s.some(e=>e.containers?.some(e=>e.restartCount&&e.restartCount>0)),[s]),u=r(()=>({title:Re.PODS,badge:{label:s.length}}),[s.length]);return t(V,{$gap:12,children:c?e(o,{children:[t(pr,{podsOdigosHealthStatus:n.podsOdigosHealthStatus,pods:s}),t(yt,{bgTint:"1000",richTitle:u,children:s.map(o=>{const i=l?.podName===o.podName,s=i&&!l?.containerName;return e(dr,{...o,namespace:n.id.namespace,onClickRestartPod:a,collapseIsDefaultOpen:i,isJumpToTarget:s,children:[t(Ar,{podName:o.podName,namespace:n.id.namespace,hasRestarted:d}),t(Ir,{podContainers:o.containers,sourceContainers:n.containers,jumpToTarget:i?l:null})]},`pod-${o.podName}`)})})]}):t(Ke,{$height:"70vh",children:t(se,{title:Re.NO_RUNNING_PODS,subTitle:Re.NO_RUNNING_PODS_SUBTITLE})})})},Rr=({source:o,fetchPeerSources:a})=>{const i=r(()=>o.serviceName||o.id.name,[o]),[s,d]=l(!1),[u,p]=l(null),h=c(()=>{d(!0),a(i).then(({data:e})=>p(e?.peerSources??null)).finally(()=>d(!1))},[i]);return n(()=>{h()},[h]),!u||s?t(Ke,s?{$height:"70vh",children:t(Qe,{withSpinner:!0})}:{$height:"70vh",children:t(se,{subTitle:Re.COULD_NOT_FETCH_PEER_SOURCES})}):e(te,{$gap:16,$alignItems:"flex-start",children:[t(Fr,{icon:Oi,title:Re.INBOUND,subTitle:Re.INBOUND_DESCRIPTION(i),onRefresh:h,items:u?.inbound??[]}),t(Fr,{icon:Ai,title:Re.OUTBOUND,subTitle:Re.OUTBOUND_DESCRIPTION(i),onRefresh:h,items:u?.outbound??[]})]})},Fr=({icon:o,title:n,subTitle:a,onRefresh:i,items:s})=>{const[c,d]=l(""),u=r(()=>s.filter(e=>e.serviceName.toLowerCase().includes(c.toLowerCase())),[s,c]);return e(yt,{bgTint:"1000",richTitle:{icon:o,title:n,titleSize:ce.XS,subTitle:a,subTitleSize:ce.XXXS,badge:{label:s.length}},actions:[{id:"refresh",type:Vt.Button,buttonProps:{variant:ae.Secondary,size:ne.S,leftIcon:Ni,onClick:i}}],children:[t(Ut,{value:c,onChange:d,width:"100%"}),t(Ht,{height:"calc(100vh - 284px)",gap:4,elements:u.length||c?!u.length&&c?[t(Ke,{$height:"50vh",children:t(se,{icon:o,title:Re.NO_RESULTS,subTitle:Re.NO_RESULTS_FOR_FILTER(c)})},"no-results")]:u.map(e=>t(Lr,{...e},`${n}-${e.serviceName}`)):[t(Ke,{$height:"50vh",children:t(se,{icon:o,title:`No ${n} connections yet`,subTitle:n===Re.INBOUND?Re.NO_INBOUND_CONNECTIONS_DESCRIPTION:Re.NO_OUTBOUND_CONNECTIONS_DESCRIPTION})},"no-data")]})]})},Pr=g.div`
|
|
116
116
|
display: flex;
|
|
117
117
|
align-items: center;
|
|
118
118
|
justify-content: space-between;
|
|
@@ -126,7 +126,7 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
126
126
|
background-color: ${({theme:e})=>e.v2.colors.silver[800]};
|
|
127
127
|
}
|
|
128
128
|
`}
|
|
129
|
-
`,
|
|
129
|
+
`,Lr=({serviceName:o,isVirtual:n,nodeAttributes:a})=>{const i=jt(e=>e.drawerEntityId),l=at(e=>e.sources),s=r(()=>l.find(e=>e.id.name===o||e.serviceName===o),[l,o]),c=r(()=>s&&JSON.stringify(Wt(s))!==JSON.stringify(Wt(i)),[s,i]),d=r(()=>{if(n){const e=Object.fromEntries((a??[]).map(({key:e,value:t})=>[e,t]));return[Gt({serviceName:o,attributes:e})]}if("user"===o?.toLowerCase())return[Di];const e=s?Kt(s):void 0;return e?.length?e:[Ei]},[n,a,o,s]),u=c?()=>{const{setDrawerType:e,setDrawerEntityId:t}=jt.getState();e(lt.Source),t({namespace:s?.id.namespace??"",name:s?.id.name??"",kind:s?.id.kind??""})}:void 0;return e(Pr,{onClick:u,$withClick:!!u,children:[e(te,{$gap:8,children:[t(Yt,{icons:d}),t(re,{size:ce.XXS,children:o})]}),n&&t(Ee,{status:ge.Info,label:Re.VIRTUAL,textSize:ce.XXXS,invertColors:!0,tooltip:Re.VIRTUAL_TOOLTIP})]})},_r=({title:o,children:n})=>e(V,{$gap:8,children:[t(re,{size:ce.XXXS,color:Ce.Secondary,children:o}),n]}),Mr=({source:o})=>{const n=r(()=>{const[e,t]=Jt(o.telemetryMetrics?.[0]?.throughputBytes||0).split(" ");return{value:e,units:t}},[o]);return t(_r,{title:Re.THROUGHPUT_LAST_10_SECONDS,children:e(te,{$alignItems:"flex-end",$gap:4,children:[t(re,{size:ce.L,children:n.value}),t(re,{size:ce.XS,variant:dt.Span,children:n.units})]})})},Br=({source:o})=>{const{CopyButton:n}=qt();return t(_r,{title:Re.NAMESPACE,children:e(te,{children:[t(Et,{variant:zt.Blue,label:o.id.namespace}),t(n,{value:o.id.namespace,size:Ze.XS})]})})},zr=({source:e})=>t(_r,{title:Re.KIND,children:t(te,{children:t(Et,{variant:zt.Blue,label:e.id.kind})})}),Xr=({source:o})=>{const{CopyButton:n}=qt();return t(_r,{title:Re.NAME,children:e(te,{children:[t(Et,{variant:zt.Blue,label:o.id.name}),t(n,{value:o.id.name,size:Ze.XS})]})})},Vr=({source:o})=>t(yt,{children:e(te,{$gap:24,$alignItems:"flex-start",$justifyContent:"flex-start",$wrap:"wrap",children:[t(Mr,{source:o}),t(Br,{source:o}),t(zr,{source:o}),t(Xr,{source:o})]})}),Ur=g.div`
|
|
130
130
|
display: flex;
|
|
131
131
|
align-items: center;
|
|
132
132
|
gap: 6px;
|
|
@@ -135,33 +135,33 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
135
135
|
cursor: ${({$clickable:e})=>e?"pointer":"default"};
|
|
136
136
|
transition: background-color 0.15s ease;
|
|
137
137
|
${({$clickable:e,theme:t})=>e&&`\n &:hover {\n background-color: ${t.v2.colors.silver[700]};\n }\n `}
|
|
138
|
-
`,
|
|
138
|
+
`,Hr=g.div`
|
|
139
139
|
display: flex;
|
|
140
140
|
align-items: center;
|
|
141
141
|
justify-content: center;
|
|
142
142
|
flex-shrink: 0;
|
|
143
143
|
width: 18px;
|
|
144
144
|
height: 18px;
|
|
145
|
-
`,
|
|
145
|
+
`,jr=g.div`
|
|
146
146
|
flex: 1;
|
|
147
147
|
min-width: 0;
|
|
148
148
|
display: flex;
|
|
149
|
-
`,
|
|
149
|
+
`,Wr=({chevron:o,onClick:n,label:a,name:i,badges:l,action:s,paddingLeft:r})=>{const c=f();return e(Ur,{$clickable:!!n,$paddingLeft:r,onClick:n,children:[o&&t(Hr,{children:t(o,{size:18,fill:c.v2.colors.silver[200]})}),t(re,{size:ce.XXXS,color:Ce.Secondary,nowrap:!0,children:a}),t(jr,{children:t(re,{size:ce.XS,nowrap:!0,children:i})}),s&&t(we,{text:s.tooltip,children:t(qe,{icon:s.icon,size:Ze.XS,onClick:s.onClick})}),l.map(({key:e,...o})=>t(Gr,{...o},e))]})},Gr=({status:e,leftIcon:o,label:n,tooltip:a})=>{const i=o||(e===ge.Success?si:ri);return t(Ee,{status:e,leftIcon:i,label:n,tooltip:a,textSize:ce.XXXS,invertColors:!0,useSecondaryTone:!0})},Kr=({overrideProcessNum:e,pod:o,container:n,process:a})=>{const{jumpToProcess:i}=Nr(),l=r(()=>Cr({overrideProcessNum:e,identifyingAttributes:a.identifyingAttributes}),[e,a.identifyingAttributes]),s=r(()=>{const e=[],t=Rt(a.healthStatus,Ti,"health");return t&&e.push(t),e},[]);return t(Wr,{label:Re.PROCESS,name:l?Re.PID(l):Re.PROCESS_FALLBACK_NAME,paddingLeft:yr,action:{icon:Ri,onClick:()=>i(o,n,a),tooltip:Re.OPEN_IN_POD_TAB},badges:s})},Yr=g.div`
|
|
150
150
|
display: flex;
|
|
151
151
|
flex-direction: column;
|
|
152
152
|
align-self: stretch;
|
|
153
153
|
border-radius: 8px;
|
|
154
154
|
background-color: ${({theme:e,$isExpanded:t})=>t?e.v2.colors.silver[750]:"transparent"};
|
|
155
|
-
`,
|
|
155
|
+
`,Jr=({pod:o,container:n})=>{const[a,i]=l(!1),{jumpToContainer:s}=Nr(),c=r(()=>{const e=[],t=Lt(n.odigosHealthStatus?.status);t&&e.push({key:"odigos-health",status:t,leftIcon:Ti,label:Zt(t,n.odigosHealthStatus?.reasonEnum),tooltip:n.odigosHealthStatus?.message});const o=Lt(n.k8sHealthStatus?.status);return o&&e.push({key:"k8s-health",status:o,leftIcon:$i,label:Zt(o,n.k8sHealthStatus?.reasonEnum),tooltip:n.k8sHealthStatus?.message}),e},[]),d=n.processes??[],u=d.length>0;return e(Yr,{$isExpanded:a,children:[t(Wr,{chevron:u?a?bi:hi:void 0,onClick:u?()=>i(e=>!e):void 0,label:Re.CONTAINER,name:n.containerName,paddingLeft:vr+(u?0:24),action:{icon:Ri,onClick:()=>s(o,n),tooltip:Re.OPEN_IN_POD_TAB},badges:c}),u&&a&&t(V,{$gap:0,$padding:`0 ${fr}px`,children:d.map((e,a)=>{const i=a+1;return t(Kr,{overrideProcessNum:i,pod:o,container:n,process:e},`pod-${o.podName}-container-${n.containerName}-process-${i}`)})})]})},qr=g.div`
|
|
156
156
|
display: flex;
|
|
157
157
|
flex-direction: column;
|
|
158
158
|
align-self: stretch;
|
|
159
159
|
border-radius: 8px;
|
|
160
160
|
background-color: ${({theme:e,$isExpanded:t})=>t?e.v2.colors.silver[800]:"transparent"};
|
|
161
161
|
padding-bottom: ${({$isExpanded:e})=>e?"12px":"0"};
|
|
162
|
-
`,
|
|
162
|
+
`,Zr=({pod:o})=>{const[n,a]=l(!1),{jumpToPod:i}=Nr(),s=o.containers??[],c=s.length>0,d=r(()=>{const e=[],t=Rt(o.agentInjectedStatus);t&&e.push(t);const n=Rt(o.odigosHealthStatus,Ti,"health");n&&e.push(n);const a=Rt(o.k8sHealthStatus,$i,"health");return a&&e.push(a),e},[o.k8sHealthStatus,o.odigosHealthStatus,o.agentInjectedStatus]);return e(qr,{$isExpanded:n,children:[t(Wr,{chevron:c?n?bi:hi:void 0,onClick:c?()=>a(e=>!e):void 0,label:Re.POD,name:o.podName,paddingLeft:br+(c?0:24),action:{icon:Ri,onClick:()=>i(o),tooltip:Re.OPEN_IN_POD_TAB},badges:d}),n&&c&&t(V,{$gap:0,$padding:`0 ${gr}px`,children:s.map(e=>t(Jr,{pod:o,container:e},`pod-${o.podName}-container-${e.containerName}`))})]})},Qr=({pods:e})=>e?.length?t(V,{$gap:4,children:e.map(e=>t(Zr,{pod:e},`pod-${e.podName}`))}):t(Ke,{children:t(se,{title:Re.NO_RUNNING_PODS,subTitle:Re.NO_RUNNING_PODS_SUBTITLE})}),ec=({source:o})=>t(yt,{bgTint:"1000",richTitle:{title:Re.PODS,badge:{label:o.pods?.length||0}},withCollapse:!0,collapseIsDefaultOpen:!0,children:e(yt,{bgTint:"900",children:[t(pr,{podsOdigosHealthStatus:o.podsOdigosHealthStatus,pods:o.pods,noPadding:!0}),t(Qr,{pods:o.pods})]})}),tc=({source:e})=>{const o=r(()=>e.workloadOdigosHealthStatus?{status:e.workloadOdigosHealthStatus.status?Qt(e.workloadOdigosHealthStatus.status):st.Unknown,title:$t(e.workloadOdigosHealthStatus.reasonEnum),subTitle:e.workloadOdigosHealthStatus.message}:null,[e]);return o?t(Pt,{...o,width:"calc(100% - 32px)"}):null},oc="calc(50% - 6px)",nc=({source:o,onClickRollout:n,onClickRollback:a})=>{const i=r(()=>{const{status:e,reasonEnum:t,message:a}=o.conditions?.rollout||{},i=Lt(e);if(!i)return null;return{status:i,title:t?.toLowerCase().includes("rollout")?$t(t):`${Re.ROLLOUT} ${$t(t)}`,subTitle:a,action:i!==ge.Success?{icon:Ni,tooltip:Re.ROLLOUT_RESTART,onClick:n}:void 0}},[o]),l=r(()=>{const{status:e,reasonEnum:t,message:n}=o.autoRollback?.autoRollbackStatus||{},i=Lt(e);if(!i)return null;return{status:i,title:t?.toLowerCase().includes("rollback")?$t(t):`${Re.ROLLBACK} ${$t(t)}`,subTitle:n,action:i!==ge.Success?{icon:Ni,tooltip:Re.ROLLBACK_RECOVER,onClick:a}:void 0}},[o]);return i||l?t(yt,{bgTint:"1000",children:e(te,{$gap:12,$alignItems:"stretch",children:[i&&t(Pt,{invertColors:!0,slim:!0,width:l?oc:"100%",...i}),l&&t(Pt,{invertColors:!0,slim:!0,width:oc,...l})]})}):null},ac=p(null),ic=g.div`
|
|
163
163
|
position: relative;
|
|
164
|
-
`,
|
|
164
|
+
`,lc=({children:e})=>{const o=d(null);return t(ic,{ref:o,children:t(ac.Provider,{value:o,children:e})})},sc=g.div`
|
|
165
165
|
position: fixed;
|
|
166
166
|
top: ${({$coords:e})=>e.top}px;
|
|
167
167
|
right: ${({$coords:e})=>e.right}px;
|
|
@@ -175,14 +175,14 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
175
175
|
padding: 12px 16px;
|
|
176
176
|
border-radius: 12px;
|
|
177
177
|
background-color: ${({theme:e})=>e.v2.colors.silver[750]};
|
|
178
|
-
`,
|
|
178
|
+
`,rc=g.div`
|
|
179
179
|
display: flex;
|
|
180
180
|
align-items: flex-end;
|
|
181
181
|
justify-content: space-between;
|
|
182
182
|
gap: 8px;
|
|
183
|
-
`,
|
|
183
|
+
`,cc=g.div`
|
|
184
184
|
flex: 1;
|
|
185
|
-
`,
|
|
185
|
+
`,dc=({width:o,onClose:n,onSave:a,saveTooltip:i,onDelete:s,deleteTooltip:r,title:c,subTitle:d,warning:u,children:p,pushButtonsWith:g})=>{const b=f(),v=h(ac),[y,C]=l(null);return eo(v??{current:null},n),m(()=>{const e=v?.current?.getBoundingClientRect();e&&C({top:e.bottom+4,right:window.innerWidth-e.left-24})},[v]),y?zl(e(sc,{$coords:y,$width:o,"data-ignore-outside-click":"true",children:[e(V,{$gap:4,children:[t(re,{size:ce.XXS,children:c}),t(re,{size:ce.XXXS,color:Ce.Secondary,children:d})]}),e(rc,{children:[t(cc,{children:p}),e(te,{$gap:8,$width:"fit-content",$margin:`0 0 ${g||0} 0`,children:[t(oe,{variant:ae.Secondary,onClick:s,leftIcon:ai,tooltip:r,hideTooltipIcon:!0,iconSize:16,size:ne.S,textColor:b.v2.colors.red[500]}),t(oe,{variant:ae.Primary,onClick:a,leftIcon:vi,tooltip:i,hideTooltipIcon:!0,iconSize:16,size:ne.S})]})]}),t("div",{children:t(me,{status:ge.Warning,message:u})})]}),document.body):null},uc=({language:o,overridden:n,onOverride:a,defaultValues:i})=>{const{tier:s}=y(),{formData:c,handleFormChange:d,resetFormData:u}=wt(i),p=r(()=>{if(!o)return[];const e=to[o].community,t=s===rt.Onprem?to[o].enterprise:[];return e.concat(t).map(e=>({id:e.id,label:e.label,icon:e.icon||void 0})).sort((e,t)=>e.label.localeCompare(t.label))},[o,s]),[h,m]=l(!1),[g,f]=l(!1),b=()=>{h||(g&&u(),f(e=>!e))};return e(te,{$gap:4,$alignItems:"center",children:[n?t(Ee,{status:ge.Info,invertColors:!0,label:Re.OVERIDDEN}):null,e(lc,{children:[t(we,{text:Re.OVERRIDE_OTEL_DISTRO_NAME,children:t(qe,{icon:di,onClick:b})}),g&&t(dc,{width:"500px",onClose:b,onSave:async()=>{m(!0),await a(c),m(!1),b()},saveTooltip:Re.OVERRIDE_OTEL_DISTRO_NAME_SAVE_TOOLTIP,onDelete:async()=>{m(!0),await a({otelDistroName:null}),m(!1),b()},deleteTooltip:Re.OVERRIDE_OTEL_DISTRO_NAME_DELETE_TOOLTIP,title:Re.OVERRIDE_OTEL_DISTRO_NAME,subTitle:Re.OVERRIDE_OTEL_DISTRO_NAME_SUBTITLE,warning:Re.OVERRIDE_OTEL_DISTRO_NAME_WARNING,children:t(Je,{label:Re.OTEL_DISTRO_NAME,options:p,values:c.otelDistroName?[c.otelDistroName]:[],setValues:e=>d("otelDistroName",e[0])})})]})]})},pc=({overridden:o,onOverride:n,defaultValues:a,originalValues:i})=>{const{addNotification:s}=Nt(),{formData:c,handleFormChange:d,resetFormData:u}=wt(a),p=r(()=>oo.map(e=>({id:e.id,label:e.label,icon:e.icon||void 0})),[]),[h,m]=l(!1),[g,f]=l(!1),b=()=>{h||(g&&u(),f(e=>!e))};return e(te,{children:[o?t(Ee,{status:ge.Info,invertColors:!0,label:Re.OVERIDDEN}):null,e(lc,{children:[t(we,{text:Re.OVERRIDE_RUNTIME_DETAILS,children:t(qe,{icon:di,onClick:b})}),g&&t(dc,{width:"500px",onClose:b,onSave:async()=>{!c.version||no(c.version)?(m(!0),await n(c),m(!1),b()):s({type:ge.Warning,message:It.INVALID_VERSION,hideFromHistory:!0})},saveTooltip:Re.OVERRIDE_RUNTIME_DETAILS_SAVE_TOOLTIP,onDelete:async()=>{m(!0),await n({language:null,version:""}),m(!1),b()},deleteTooltip:Re.OVERRIDE_RUNTIME_DETAILS_DELETE_TOOLTIP,title:Re.OVERRIDE_RUNTIME_DETAILS,subTitle:Re.OVERRIDE_RUNTIME_DETAILS_SUBTITLE,warning:Re.OVERRIDE_RUNTIME_WARNING,pushButtonsWith:"20px",children:e(te,{$gap:8,children:[t(Je,{label:Re.LANGUAGE,options:p,values:c.language?[c.language]:[],setValues:e=>d("language",e[0]),helpMessage:`Auto-detected: ${i.language||"none"}`}),t(W,{label:Re.RUNTIME_VERSION,placeholder:Re.VERSION_PLACEHOLDER,value:c.version,onChange:e=>d("version",e.target.value),helpMessage:`Auto-detected: ${i.version||"none"}`})]})})]})]})},hc=({source:e,onOverride:o})=>{const{isVm:n}=y(),{containers:a,containersRichTitle:i}=r(()=>{const t=e?.conditions?.runtimeDetection;return{containers:e?.containers??[],containersRichTitle:{title:n?Re.DETECTED_PROCESSES:`${e.id.kind} ${Re.CONTAINERS}`,tooltip:t?.message||(n?Re.DETECTED_PROCESSES_DESCRIPTION:Re.DETECTED_CONTAINERS_DESCRIPTION),badge:Lt(t?.status)===Bt.Loading?{status:Bt.Loading,backgroundColor:"transparent"}:{label:e?.containers?.length}}}},[e,n]);return t(yt,{bgTint:"1000",richTitle:i,withCollapse:!0,collapseIsDefaultOpen:!0,children:t(V,{$gap:8,children:a.map(e=>e&&t(bc,{...e,onOverride:o},`source-container-${e.containerName}`))})})},mc=g.div`
|
|
186
186
|
display: flex;
|
|
187
187
|
flex-direction: column;
|
|
188
188
|
align-self: stretch;
|
|
@@ -190,28 +190,28 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
190
190
|
padding: 8px 12px;
|
|
191
191
|
border-radius: 8px;
|
|
192
192
|
background-color: ${({theme:e})=>e.v2.colors.silver[900]};
|
|
193
|
-
`,
|
|
193
|
+
`,gc=g.div`
|
|
194
194
|
display: flex;
|
|
195
195
|
align-items: center;
|
|
196
196
|
justify-content: center;
|
|
197
197
|
padding: 8px;
|
|
198
198
|
border-radius: 10px;
|
|
199
199
|
background-color: ${({theme:e})=>e.v2.colors.silver[800]};
|
|
200
|
-
`,
|
|
200
|
+
`,fc=g.div`
|
|
201
201
|
display: flex;
|
|
202
202
|
flex-direction: column;
|
|
203
203
|
gap: 12px;
|
|
204
204
|
padding: 8px 12px;
|
|
205
205
|
border-radius: 8px;
|
|
206
206
|
background-color: ${({theme:e})=>e.v2.colors.silver[800]};
|
|
207
|
-
`,pc=({onOverride:o,...n})=>{const{containerName:a,runtimeInfo:i,agentEnabled:l,overrides:s}=n,c=f(),d=r(()=>!!s?.runtimeInfo?.language||!!s?.runtimeInfo?.runtimeVersion,[s]),u=r(()=>({language:_t(n),version:no(n)||void 0}),[n]),p=r(()=>!!s?.otelDistroName,[s]),h=r(()=>({otelDistroName:s?.otelDistroName||n.agentEnabled?.otelDistroName}),[s,n]),m=r(()=>!i&&!d,[i,d]),g=r(()=>m?Ni:Oe(u.language),[m,u]),b=r(()=>{if(m)return"";const{language:e,version:t}=u;return`${e}${t?` • ${t}`:""}`},[m,u]),v=r(()=>m?{status:Mt.Loading,label:Re.WAITING_FOR_RUNTIME_DETECTION}:{status:l?.otelDistroName?ge.Success:Mt.Disabled,leftIcon:l?.otelDistroName?li:si,label:l?.otelDistroName?`Instrumented | ${l.otelDistroName}`:"Uninstrumented",tooltip:l?.agentEnabledStatus?.message},[m,l]),y=e=>o({containerName:a,...p?h:{},...d?u:{},...e});return e(cc,{children:[e(te,{$gap:16,$alignItems:"center",$justifyContent:"space-between",$wrap:"wrap",children:[e(te,{$gap:8,$alignItems:"center",children:[t(dc,{children:t(g,{size:24,fill:i?void 0:c.v2.colors.grey[400]})}),t(re,{children:a}),t(Et,b?{variant:zt.Blue,label:b}:{variant:zt.Loader,label:Re.DETECTING_RUNTIME_INFO}),t(sc,{overridden:d,onOverride:y,defaultValues:u,originalValues:{language:n.runtimeInfo?.language,version:n.runtimeInfo?.runtimeVersion||""}})]}),e(te,{$gap:8,$alignItems:"center",children:[t(Ee,{...v,textSize:ce.XXXS}),t(lc,{language:u.language,overridden:p,onOverride:y,defaultValues:h})]})]}),!l||l.agentEnabled||m?null:t(uc,{children:e(te,{$gap:10,$alignItems:"center",children:[t(Et,{variant:zt.Pink,label:$t(l.agentEnabledStatus?.reasonEnum)||Re.NO_AVAILABLE_AGENT}),t(re,{size:ce.XXXS,color:Ce.Secondary,children:l?.agentEnabledStatus?.message})]})})]})},hc=({source:o,onClickRollout:n,onClickRollback:a,onOverride:i})=>e(V,{$gap:12,children:[t(_r,{source:o}),t(Jr,{source:o}),t(Zr,{source:o,onClickRollout:n,onClickRollback:a}),t(rc,{source:o,onOverride:i}),t(Yr,{source:o})]});function mc(e,t){const o=e.names[t];if(null==o)return"";if("string"==typeof o)return o;if("object"==typeof o&&"name"in o){const e=o.name;if("string"==typeof e)return e}return"number"==typeof o||"boolean"==typeof o?String(o):""}function gc(e){const t=Math.abs(e);return t>=1e9?`${fc(e/1e9)}s`:t>=1e6?`${fc(e/1e6)}ms`:t>=1e3?`${fc(e/1e3)}μs`:String(Math.round(e))}function fc(e){return e.toFixed(2).replace(/\.?0+$/,"")}function bc(e){const t=[];for(let o=0;o<e.levels.length;o++){const n=e.levels[o];let a=0;for(let e=0;e+3<n.length;e+=4){const i=n[e],l=n[e+1],s=n[e+2],r=n[e+3],c=a+i;t.push({level:o,offset:c,size:l,self:s,nameIndex:r}),a=c+l}}return t}function vc(e){return`${e.level}:${e.offset}:${e.size}:${e.nameIndex}`}function yc(e,t){const o=t.trim().toLowerCase();return!o||e.toLowerCase().includes(o)}function Cc(e,t,o,n,a,i={}){if(0===e.levels.length||t<2||o<2)return null;const{zoomRoot:l=null,shouldKeepName:s,collapseRecursive:r=!1}=i,c=bc(e);let d=l?function(e,t){const o=e.reduce((e,t)=>Math.max(e,t.level),t.level),n=new Map;for(const t of e){const e=n.get(t.level);e?e.push(t):n.set(t.level,[t])}const a=[t];for(let e=t.level+1;e<=o;e++){const t=a.filter(t=>t.level===e-1);if(0===t.length)break;const o=n.get(e);if(o?.length)for(const e of o)for(const o of t)if(e.offset>=o.offset&&e.offset+e.size<=o.offset+o.size){a.push(e);break}}return a}(c,l):c;if(0===d.length)return null;if(s&&(d=d.filter(t=>s(mc(e,t.nameIndex))),0===d.length))return null;if(r&&(d=function(e,t){if(0===t.length)return t;const o=[...t].sort((e,t)=>e.level-t.level||e.offset-t.offset),n=new Map;for(const e of o){const t=n.get(e.level);t?t.push(e):n.set(e.level,[e])}const a=new Set;for(const t of o){const o=n.get(t.level+1);if(!o)continue;const i=o.filter(e=>e.offset>=t.offset&&e.offset+e.size<=t.offset+t.size);if(1!==i.length)continue;const l=i[0];l.size===t.size&&mc(e,l.nameIndex)===mc(e,t.nameIndex)&&a.add(vc(l))}if(0===a.size)return o;const i=[];for(const e of o){if(a.has(vc(e)))continue;let t=0;for(let o=0;o<e.level;o++){const i=n.get(o);if(!i)continue;const l=i.find(t=>e.offset>=t.offset&&e.offset+e.size<=t.offset+t.size);l&&a.has(vc(l))&&t++}i.push({...e,level:e.level-t})}return i}(e,d),0===d.length))return null;const u=l?.level??0,p=l?.offset??0,h=l?.size??e.numTicks;if(h<=0)return null;const m=d.reduce((e,t)=>Math.max(e,t.level-u),0)+1,g=n??Number.POSITIVE_INFINITY,f=Math.max(1,Math.min(o/m,g)),b=a.trim(),v=f>8?1:0;return d.map(o=>{const n=o.level-u,a=(o.offset-p)/h*t,i=Math.max(o.size/h*t,1),l=n*f,s=Math.max(f-v,1),r=mc(e,o.nameIndex);return{...o,x:a,y:l,w:i,h:s,name:r,matchesSearch:yc(r,b)}})}function Sc(e,t){let o=0;for(let t=0;t<e.length;t++)o=31*o+e.charCodeAt(t)>>>0;const n=t.v2.colors.black[500],a=[{fill:t.v2.colors.purple[300],text:n},{fill:t.v2.colors.green[300],text:n},{fill:t.v2.colors.red[300],text:n},{fill:t.v2.colors.blue[300],text:n},{fill:t.v2.colors.yellow[300],text:n}];return a[o%a.length]}var wc,xc;!function(e){e[e.Fit=1]="Fit",e[e.X10=10]="X10"}(wc||(wc={})),function(e){e[e.Fit=1]="Fit",e[e.X10=10]="X10"}(xc||(xc={}));function kc(e,t){return t<=0?"0":(100*e/t).toFixed(e/t<.001?2:1)}function Tc(e,t,o){for(const n of o)if(e>=n.x&&e<n.x+n.w&&t>=n.y&&t<n.y+n.h)return n;return null}function $c(e){return e>=1073741824?`${(e/1073741824).toFixed(1)} GiB`:e>=1048576?`${(e/1048576).toFixed(1)} MiB`:e>=1024?`${(e/1024).toFixed(1)} KiB`:`${e} B`}const Ic=({flamebearer:o,maxRowPx:a,searchQuery:i="",shouldKeepName:s,minHostHeight:u=200,onFullscreenChange:p,profilingSlots:m})=>{const g=f(),b=d(null),v=d(null),y=d({x:0,y:0}),C=d(o.numTicks),[S,w]=l({w:0,h:0}),[x,k]=l(""),[T,$]=l(null),[I,N]=l([]),[E,A]=l(!1),[O,D]=l(wc.Fit),[R,F]=l(xc.Fit),[P,L]=l(!1),_=Math.max(1,Math.min(Math.floor(S.w*O),8192)),M=Math.max(1,Math.min(Math.floor(S.h*R),8192)),z=I.length>0?I[I.length-1]:null,B=z?.size??o.numTicks;n(()=>{C.current!==o.numTicks&&(C.current=o.numTicks,N([]))},[o.numTicks]),h(()=>{const e=b.current;if(!e)return;const t=new ResizeObserver(()=>{const t=e.getBoundingClientRect();w({w:Math.floor(t.width),h:Math.floor(t.height)})});return t.observe(e),()=>t.disconnect()},[]),n(()=>{if(!E)return;const e=document.body.style.overflow;return document.body.style.overflow="hidden",()=>{document.body.style.overflow=e}},[E]),n(()=>(p?.(E),()=>{E&&p?.(!1)}),[E,p]);const X=r(()=>Cc(o,_,M,a,i,{zoomRoot:z,shouldKeepName:s,collapseRecursive:P}),[o,a,i,M,_,z,s,P]),V=r(()=>function(e){return[...e].sort((e,t)=>t.level-e.level)}(X?.length?i.trim()?X.filter(e=>e.matchesSearch):X:[]),[X,i]),U=c(e=>{if(_<2||M<2)return;const t=e.currentTarget.getBoundingClientRect();if(t.width<1||t.height<1)return;const n=Tc((e.clientX-t.left)/t.width*_,(e.clientY-t.top)/t.height*M,V);if(n){const e=vc(n);$(e);const t=B>0?(100*n.size/B).toFixed(1):"0",a=o.numTicks>0?(100*n.size/o.numTicks).toFixed(1):"0";k(`${n.name}\ntotal ${gc(n.size)} (${t}% of view, ${a}% of profile) · self ${gc(n.self)}`)}else $(null),k("")},[V,o.numTicks,M,_,B]),H=c(e=>{U(e)},[U]),j=c(()=>{$(null),k("")},[]),W=c(e=>{y.current={x:e.clientX,y:e.clientY}},[]),G=c(e=>{const{x:t,y:o}=y.current;if(Math.abs(e.clientX-t)>3||Math.abs(e.clientY-o)>3)return;if(_<2||M<2)return;const n=e.currentTarget.getBoundingClientRect();if(n.width<1||n.height<1)return;const a=Tc((e.clientX-n.left)/n.width*_,(e.clientY-n.top)/n.height*M,V);if(!a)return;const i=function(e){return{level:e.level,offset:e.offset,size:e.size,self:e.self,nameIndex:e.nameIndex}}(a);N(e=>{const t=e.length>0?e[e.length-1]:null;return t&&function(e,t){return e.level===t.level&&e.offset===t.offset&&e.size===t.size&&e.nameIndex===t.nameIndex}(i,t)?e.slice(0,-1):[...e,i]})},[V,M,_]);h(()=>{const e=v.current;if(!e||_<2||M<2)return;const t="undefined"!=typeof window&&window.devicePixelRatio||1,n=Math.max(_,M),a=Math.min(t,16384/n);e.width=Math.floor(_*a),e.height=Math.floor(M*a),e.style.width=`${_}px`,e.style.height=`${M}px`;const l=e.getContext("2d");l&&(l.setTransform(a,0,0,a,0,0),l.clearRect(0,0,_,M),X?.length?function(e,t,o,n,a,i,l,s){const r=i.v2.colors.silver[900];e.fillStyle=r,e.fillRect(0,0,t,o);const c=a.trim().length>0;e.textRendering="optimizeLegibility";for(const t of n){const{x:o,y:n,w:a,h:l,name:r,size:d,matchesSearch:u}=t;if(c&&!u)continue;const{fill:p,text:h}=Sc(r,i);e.fillStyle=p,e.fillRect(o,n,a,l),e.strokeStyle="rgba(255,255,255,0.14)",e.lineWidth=1,e.beginPath(),e.moveTo(o+.5,n+.5),e.lineTo(o+a-.5,n+.5),e.stroke(),e.strokeStyle="rgba(0,0,0,0.45)",e.lineWidth=1,e.strokeRect(o+.5,n+.5,Math.max(a-1,0),Math.max(l-1,0));const m=kc(d,s),g=`${r} (${gc(d)}, ${m}%)`,f=i.v2.text.size.xs,b=8,v=5,y=26,C=Math.min(f,Math.floor(l-2));if(a>=y&&C>=b){e.font=`${C}px ${i.font_family.primary}, -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif`,e.textBaseline="middle",e.textAlign="left";let t=g;for(;t.length>2&&e.measureText(t).width>a-2*v;)t=`${t.slice(0,-2)}…`;e.measureText(t).width<=a-2*v&&(e.lineWidth=1,e.strokeStyle="rgba(0, 0, 0, 0.5)",e.lineJoin="round",e.miterLimit=1,e.strokeText(t,o+v,n+l/2),e.fillStyle=h,e.fillText(t,o+v,n+l/2))}}if(l)for(const t of n){if(vc(t)!==l)continue;if(c&&!t.matchesSearch)continue;const{x:o,y:n,w:a,h:i}=t;e.strokeStyle="rgba(255,255,255,0.88)",e.lineWidth=2,e.strokeRect(o+1,n+1,Math.max(a-2,0),Math.max(i-2,0));break}}(l,_,M,X,i,g,T,o.numTicks):(l.fillStyle=g.v2.colors.silver[900],l.fillRect(0,0,_,M)))},[X,o.numTicks,T,i,M,_,g]);const K=c(()=>A(e=>!e),[]),Y=o.numTicks>0?Math.max(0,Math.min(100,Math.round(B/o.numTicks*100))):100,J=r(()=>function(e,t){const o=bc(e),n=t?.offset??0,a=n+(t?.size??e.numTicks),i=(t?.level??-1)+1,l=t?.size??e.numTicks;let s=null;for(const e of o)e.level<i||e.offset<n||e.offset+e.size>a||e.size>=l||(!s||e.size>s.size||e.size===s.size&&e.level<s.level)&&(s=e);return s}(o,z),[o,z]),Q=null!==J,ee=I.length>0,ie=z?mc(o,z.nameIndex):"",le=c(()=>N([]),[]),se=c(()=>N(e=>e.slice(0,-1)),[]),de=c(()=>{J&&N(e=>[...e,J])},[J]);return e("div",{style:E?{position:"fixed",inset:0,zIndex:9999,display:"flex",flexDirection:"column",gap:8,padding:16,background:g.v2.colors.silver[900]}:{flex:1,minHeight:u,minWidth:0,width:"100%",display:"flex",flexDirection:"column",gap:8,position:"relative"},children:[e(te,{$gap:8,$wrap:"nowrap",$justifyContent:"space-between",children:[t(q,{label:"Collapse recursive",tooltip:"Collapse straight-line recursion (parent → single same-name child of equal width) into a single bar. Helps deep recursive call chains fit on screen.",labelAlign:Z.Left,size:ct.S,value:P,onChange:L}),e(te,{$gap:8,children:[e(te,{children:[t(oe,{variant:ae.Secondary,size:ne.S,label:"Reset zoom",leftIcon:Ri,onClick:le,disabled:!I.length}),t(oe,{variant:ae.Secondary,size:ne.S,iconSize:20,leftIcon:Fi,tooltip:"Zoom out",hideTooltipIcon:!0,disabled:!ee,onClick:se}),t("div",{style:{minWidth:36,textAlign:"center",fontVariantNumeric:"tabular-nums"},children:t(re,{size:ce.XXS,color:Ce.Secondary,nowrap:!0,align:"center",children:`${Y}%`})}),t(oe,{variant:ae.Secondary,size:ne.S,iconSize:20,leftIcon:ai,tooltip:"Zoom in",hideTooltipIcon:!0,disabled:!Q,onClick:de})]}),e(te,{children:[t(we,{text:"Horizontal width: stretch the canvas wider than the viewport so narrow stacks become hoverable / readable.",children:t(ue,{variant:ao.Filled,options:[{value:wc.Fit,label:"W: Fit"},{value:wc.X10,label:"10x"}],selected:O,setSelected:D})}),t(we,{text:"Vertical height: scale rows taller than the viewport for deep call stacks. Scroll vertically to navigate.",children:t(ue,{variant:ao.Filled,options:[{value:xc.Fit,label:"H: Fit"},{value:xc.X10,label:"10x"}],selected:R,setSelected:F})})]}),t(oe,{variant:ae.Secondary,size:ne.S,iconSize:24,leftIcon:E?vi:Di,tooltip:E?"Exit fullscreen (Esc)":"Fullscreen",hideTooltipIcon:!0,onClick:K})]})]}),t(we,{fullWidth:!0,keepAlive:!0,text:x,children:t("div",{ref:b,style:{flex:1,minWidth:0,width:"100%",height:E?"calc(100vh - 80px)":"calc(100vh - 364px)",position:"relative",overflowX:O>1?"auto":"hidden",overflowY:R>1?"auto":"hidden"},children:t("div",{style:{width:_||"100%",height:M||"100%",position:"relative"},children:t("canvas",{ref:v,style:{display:"block",position:"absolute",left:0,top:0,width:"100%",height:"100%",borderRadius:8,cursor:T?"pointer":"default"},onPointerDown:W,onPointerMove:H,onPointerLeave:j,onClick:G})})})}),e(te,{$justifyContent:"space-between",children:[t(re,z?{size:ce.XXXS,color:g.v2.colors.silver[300],children:`Zoomed: ${ie} • ${gc(B)} samples in view`}:{size:ce.XXXS,color:g.v2.colors.silver[300],children:"Click a frame to zoom into its subtree (pprof-style)."}),m&&t(re,{size:ce.XXXS,color:g.v2.colors.silver[300],children:`${m.activeKeys.length} / ${m.maxSlots} profiling slots · ${$c(m.totalBytesUsed)} / ${$c(m.maxTotalBytesBudget)} budget · TTL ${m.slotTtlSeconds}s`})]})]})};var Nc,Ec;!function(e){e.Symbol="symbol",e.Self="self",e.Total="total"}(Nc||(Nc={})),function(e){e.FilterOutVoid="filter-out-void",e.OnlyWithReturnValues="only-with-return-values"}(Ec||(Ec={}));const Ac=/^[A-Za-z_$][A-Za-z0-9_$]*(\[\])*$/;function Oc(e,t){const o=function(e){return e.split(" ")[0]??""}(e);if(t.includes(Ec.FilterOutVoid)&&"void"===o)return!1;if(t.includes(Ec.OnlyWithReturnValues)){if(!(e.includes(" ")&&"void"!==o&&Ac.test(o)))return!1}return!0}const Dc={options:[{id:Ec.FilterOutVoid,label:"Filter out void symbols"},{id:Ec.OnlyWithReturnValues,label:"Only show functions with return values"}],filterRow:(e,t)=>Oc(e.cells.find(e=>e.key===Nc.Symbol)?.rawValue?.toString()??"",t)},Rc=({rows:e,languages:o,filters:n,onFiltersChange:a})=>{const i=r(()=>[{key:Nc.Symbol,label:"Symbol",flex:"0 0 160px",filterOverride:o?.includes(io.Java)?Dc:void 0,noFilter:!o?.includes(io.Java)},{key:Nc.Self,label:"Self",tooltip:"Time spent in this function itself, excluding time in functions it calls.",textAlign:"right",noFilter:!0},{key:Nc.Total,label:"Total",tooltip:"Time spent in this function and all functions it calls (inclusive).",textAlign:"right",noFilter:!0}],[o]),l=r(()=>e.map(e=>({cells:[{key:Nc.Symbol,rawValue:e.name},{key:Nc.Self,rawValue:gc(e.self)},{key:Nc.Total,rawValue:gc(e.total)}]})),[e]);return t(lo,{variant:so.Data,maxHeight:"calc(100vh - 306px)",columns:i,rows:l,filters:n,onFiltersChange:a,rowActionsPushLeftPosition:"12px",getRowActions:e=>[{id:`copy-${e.cells[0].rawValue}`,label:"",rightIcon:Pi,onClick:()=>{navigator.clipboard.writeText(e.cells[0].rawValue)}}]})};var Fc;!function(e){e.Table="table",e.Flame="flame",e.Both="both"}(Fc||(Fc={}));const Pc=g(V)`
|
|
207
|
+
`,bc=({onOverride:o,...n})=>{const{containerName:a,runtimeInfo:i,agentEnabled:l,overrides:s}=n,c=f(),d=r(()=>!!s?.runtimeInfo?.language||!!s?.runtimeInfo?.runtimeVersion,[s]),u=r(()=>({language:Mt(n),version:ao(n)||void 0}),[n]),p=r(()=>!!s?.otelDistroName,[s]),h=r(()=>({otelDistroName:s?.otelDistroName||n.agentEnabled?.otelDistroName}),[s,n]),m=r(()=>!i&&!d,[i,d]),g=r(()=>m?Ei:Ae(u.language),[m,u]),b=r(()=>{if(m)return"";const{language:e,version:t}=u;return`${e}${t?` • ${t}`:""}`},[m,u]),v=r(()=>m?{status:Bt.Loading,label:Re.WAITING_FOR_RUNTIME_DETECTION}:{status:l?.otelDistroName?ge.Success:Bt.Disabled,leftIcon:l?.otelDistroName?si:ri,label:l?.otelDistroName?`Instrumented | ${l.otelDistroName}`:"Uninstrumented",tooltip:l?.agentEnabledStatus?.message},[m,l]),y=e=>o({containerName:a,...p?h:{},...d?u:{},...e});return e(mc,{children:[e(te,{$gap:16,$alignItems:"center",$justifyContent:"space-between",$wrap:"wrap",children:[e(te,{$gap:8,$alignItems:"center",children:[t(gc,{children:t(g,{size:24,fill:i?void 0:c.v2.colors.grey[400]})}),t(re,{children:a}),t(Et,b?{variant:zt.Blue,label:b}:{variant:zt.Loader,label:Re.DETECTING_RUNTIME_INFO}),t(pc,{overridden:d,onOverride:y,defaultValues:u,originalValues:{language:n.runtimeInfo?.language,version:n.runtimeInfo?.runtimeVersion||""}})]}),e(te,{$gap:8,$alignItems:"center",children:[t(Ee,{...v,textSize:ce.XXXS}),t(uc,{language:u.language,overridden:p,onOverride:y,defaultValues:h})]})]}),!l||l.agentEnabled||m?null:t(fc,{children:e(te,{$gap:10,$alignItems:"center",children:[t(Et,{variant:zt.Pink,label:$t(l.agentEnabledStatus?.reasonEnum)||Re.NO_AVAILABLE_AGENT}),t(re,{size:ce.XXXS,color:Ce.Secondary,children:l?.agentEnabledStatus?.message})]})})]})},vc=({source:o,onClickRollout:n,onClickRollback:a,onOverride:i})=>e(V,{$gap:12,children:[t(Vr,{source:o}),t(tc,{source:o}),t(nc,{source:o,onClickRollout:n,onClickRollback:a}),t(hc,{source:o,onOverride:i}),t(ec,{source:o})]}),yc=({source:o,fetchK8sManifest:a})=>{const i=f(),[s,r]=l(!0),[c,d]=l(void 0),[u,p]=l(!0),[h,m]=l(void 0);return n(()=>{a(o.id.namespace,o.id.kind,o.id.name).then(d).finally(()=>r(!1)),a(o.id.namespace,io.InstrumentationConfig,`${o.id.kind}-${o.id.name}`.toLowerCase()).then(m).finally(()=>p(!1))},[a,o.id.namespace,o.id.kind,o.id.name]),e(yt,{bgTint:"1000",children:[s?t(lo,{size:1}):t(bl,{bgTint:"800",codeBgColor:i.v2.colors.silver[900],title:`${o.id.kind} YAML`,yaml:c}),u?t(lo,{size:1}):t(bl,{bgTint:"800",codeBgColor:i.v2.colors.silver[900],title:"Instrumentation Config YAML",yaml:h})]})};function Cc(e,t){const o=e.names[t];if(null==o)return"";if("string"==typeof o)return o;if("object"==typeof o&&"name"in o){const e=o.name;if("string"==typeof e)return e}return"number"==typeof o||"boolean"==typeof o?String(o):""}function Sc(e){const t=Math.abs(e);return t>=1e9?`${wc(e/1e9)}s`:t>=1e6?`${wc(e/1e6)}ms`:t>=1e3?`${wc(e/1e3)}μs`:String(Math.round(e))}function wc(e){return e.toFixed(2).replace(/\.?0+$/,"")}function xc(e){const t=[];for(let o=0;o<e.levels.length;o++){const n=e.levels[o];let a=0;for(let e=0;e+3<n.length;e+=4){const i=n[e],l=n[e+1],s=n[e+2],r=n[e+3],c=a+i;t.push({level:o,offset:c,size:l,self:s,nameIndex:r}),a=c+l}}return t}function kc(e){return`${e.level}:${e.offset}:${e.size}:${e.nameIndex}`}function Tc(e,t){const o=t.trim().toLowerCase();return!o||e.toLowerCase().includes(o)}function $c(e,t,o,n,a,i={}){if(0===e.levels.length||t<2||o<2)return null;const{zoomRoot:l=null,shouldKeepName:s,collapseRecursive:r=!1}=i,c=xc(e);let d=l?function(e,t){const o=e.reduce((e,t)=>Math.max(e,t.level),t.level),n=new Map;for(const t of e){const e=n.get(t.level);e?e.push(t):n.set(t.level,[t])}const a=[t];for(let e=t.level+1;e<=o;e++){const t=a.filter(t=>t.level===e-1);if(0===t.length)break;const o=n.get(e);if(o?.length)for(const e of o)for(const o of t)if(e.offset>=o.offset&&e.offset+e.size<=o.offset+o.size){a.push(e);break}}return a}(c,l):c;if(0===d.length)return null;if(s&&(d=d.filter(t=>s(Cc(e,t.nameIndex))),0===d.length))return null;if(r&&(d=function(e,t){if(0===t.length)return t;const o=[...t].sort((e,t)=>e.level-t.level||e.offset-t.offset),n=new Map;for(const e of o){const t=n.get(e.level);t?t.push(e):n.set(e.level,[e])}const a=new Set;for(const t of o){const o=n.get(t.level+1);if(!o)continue;const i=o.filter(e=>e.offset>=t.offset&&e.offset+e.size<=t.offset+t.size);if(1!==i.length)continue;const l=i[0];l.size===t.size&&Cc(e,l.nameIndex)===Cc(e,t.nameIndex)&&a.add(kc(l))}if(0===a.size)return o;const i=[];for(const e of o){if(a.has(kc(e)))continue;let t=0;for(let o=0;o<e.level;o++){const i=n.get(o);if(!i)continue;const l=i.find(t=>e.offset>=t.offset&&e.offset+e.size<=t.offset+t.size);l&&a.has(kc(l))&&t++}i.push({...e,level:e.level-t})}return i}(e,d),0===d.length))return null;const u=l?.level??0,p=l?.offset??0,h=l?.size??e.numTicks;if(h<=0)return null;const m=d.reduce((e,t)=>Math.max(e,t.level-u),0)+1,g=n??Number.POSITIVE_INFINITY,f=Math.max(1,Math.min(o/m,g)),b=a.trim(),v=f>8?1:0;return d.map(o=>{const n=o.level-u,a=(o.offset-p)/h*t,i=Math.max(o.size/h*t,1),l=n*f,s=Math.max(f-v,1),r=Cc(e,o.nameIndex);return{...o,x:a,y:l,w:i,h:s,name:r,matchesSearch:Tc(r,b)}})}function Nc(e,t){let o=0;for(let t=0;t<e.length;t++)o=31*o+e.charCodeAt(t)>>>0;const n=t.v2.colors.black[500],a=[{fill:t.v2.colors.purple[300],text:n},{fill:t.v2.colors.green[300],text:n},{fill:t.v2.colors.red[300],text:n},{fill:t.v2.colors.blue[300],text:n},{fill:t.v2.colors.yellow[300],text:n}];return a[o%a.length]}var Ic,Ec;!function(e){e[e.Fit=1]="Fit",e[e.X10=10]="X10"}(Ic||(Ic={})),function(e){e[e.Fit=1]="Fit",e[e.X10=10]="X10"}(Ec||(Ec={}));function Oc(e,t){return t<=0?"0":(100*e/t).toFixed(e/t<.001?2:1)}function Ac(e,t,o){for(const n of o)if(e>=n.x&&e<n.x+n.w&&t>=n.y&&t<n.y+n.h)return n;return null}function Dc(e){return e>=1073741824?`${(e/1073741824).toFixed(1)} GiB`:e>=1048576?`${(e/1048576).toFixed(1)} MiB`:e>=1024?`${(e/1024).toFixed(1)} KiB`:`${e} B`}const Rc=({flamebearer:o,maxRowPx:a,searchQuery:i="",shouldKeepName:s,minHostHeight:u=200,onFullscreenChange:p,profilingSlots:h})=>{const g=f(),b=d(null),v=d(null),y=d({x:0,y:0}),C=d(o.numTicks),[S,w]=l({w:0,h:0}),[x,k]=l(""),[T,$]=l(null),[N,I]=l([]),[E,O]=l(!1),[A,D]=l(Ic.Fit),[R,F]=l(Ec.Fit),[P,L]=l(!1),_=Math.max(1,Math.min(Math.floor(S.w*A),8192)),M=Math.max(1,Math.min(Math.floor(S.h*R),8192)),B=N.length>0?N[N.length-1]:null,z=B?.size??o.numTicks;n(()=>{C.current!==o.numTicks&&(C.current=o.numTicks,I([]))},[o.numTicks]),m(()=>{const e=b.current;if(!e)return;const t=new ResizeObserver(()=>{const t=e.getBoundingClientRect();w({w:Math.floor(t.width),h:Math.floor(t.height)})});return t.observe(e),()=>t.disconnect()},[]),n(()=>{if(!E)return;const e=document.body.style.overflow;return document.body.style.overflow="hidden",()=>{document.body.style.overflow=e}},[E]),n(()=>(p?.(E),()=>{E&&p?.(!1)}),[E,p]);const X=r(()=>$c(o,_,M,a,i,{zoomRoot:B,shouldKeepName:s,collapseRecursive:P}),[o,a,i,M,_,B,s,P]),V=r(()=>function(e){return[...e].sort((e,t)=>t.level-e.level)}(X?.length?i.trim()?X.filter(e=>e.matchesSearch):X:[]),[X,i]),U=c(e=>{if(_<2||M<2)return;const t=e.currentTarget.getBoundingClientRect();if(t.width<1||t.height<1)return;const n=Ac((e.clientX-t.left)/t.width*_,(e.clientY-t.top)/t.height*M,V);if(n){const e=kc(n);$(e);const t=z>0?(100*n.size/z).toFixed(1):"0",a=o.numTicks>0?(100*n.size/o.numTicks).toFixed(1):"0";k(`${n.name}\ntotal ${Sc(n.size)} (${t}% of view, ${a}% of profile) · self ${Sc(n.self)}`)}else $(null),k("")},[V,o.numTicks,M,_,z]),H=c(e=>{U(e)},[U]),j=c(()=>{$(null),k("")},[]),W=c(e=>{y.current={x:e.clientX,y:e.clientY}},[]),G=c(e=>{const{x:t,y:o}=y.current;if(Math.abs(e.clientX-t)>3||Math.abs(e.clientY-o)>3)return;if(_<2||M<2)return;const n=e.currentTarget.getBoundingClientRect();if(n.width<1||n.height<1)return;const a=Ac((e.clientX-n.left)/n.width*_,(e.clientY-n.top)/n.height*M,V);if(!a)return;const i=function(e){return{level:e.level,offset:e.offset,size:e.size,self:e.self,nameIndex:e.nameIndex}}(a);I(e=>{const t=e.length>0?e[e.length-1]:null;return t&&function(e,t){return e.level===t.level&&e.offset===t.offset&&e.size===t.size&&e.nameIndex===t.nameIndex}(i,t)?e.slice(0,-1):[...e,i]})},[V,M,_]);m(()=>{const e=v.current;if(!e||_<2||M<2)return;const t="undefined"!=typeof window&&window.devicePixelRatio||1,n=Math.max(_,M),a=Math.min(t,16384/n);e.width=Math.floor(_*a),e.height=Math.floor(M*a),e.style.width=`${_}px`,e.style.height=`${M}px`;const l=e.getContext("2d");l&&(l.setTransform(a,0,0,a,0,0),l.clearRect(0,0,_,M),X?.length?function(e,t,o,n,a,i,l,s){const r=i.v2.colors.silver[900];e.fillStyle=r,e.fillRect(0,0,t,o);const c=a.trim().length>0;e.textRendering="optimizeLegibility";for(const t of n){const{x:o,y:n,w:a,h:l,name:r,size:d,matchesSearch:u}=t;if(c&&!u)continue;const{fill:p,text:h}=Nc(r,i);e.fillStyle=p,e.fillRect(o,n,a,l),e.strokeStyle="rgba(255,255,255,0.14)",e.lineWidth=1,e.beginPath(),e.moveTo(o+.5,n+.5),e.lineTo(o+a-.5,n+.5),e.stroke(),e.strokeStyle="rgba(0,0,0,0.45)",e.lineWidth=1,e.strokeRect(o+.5,n+.5,Math.max(a-1,0),Math.max(l-1,0));const m=Oc(d,s),g=`${r} (${Sc(d)}, ${m}%)`,f=i.v2.text.size.xs,b=8,v=5,y=26,C=Math.min(f,Math.floor(l-2));if(a>=y&&C>=b){e.font=`${C}px ${i.font_family.primary}, -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif`,e.textBaseline="middle",e.textAlign="left";let t=g;for(;t.length>2&&e.measureText(t).width>a-2*v;)t=`${t.slice(0,-2)}…`;e.measureText(t).width<=a-2*v&&(e.lineWidth=1,e.strokeStyle="rgba(0, 0, 0, 0.5)",e.lineJoin="round",e.miterLimit=1,e.strokeText(t,o+v,n+l/2),e.fillStyle=h,e.fillText(t,o+v,n+l/2))}}if(l)for(const t of n){if(kc(t)!==l)continue;if(c&&!t.matchesSearch)continue;const{x:o,y:n,w:a,h:i}=t;e.strokeStyle="rgba(255,255,255,0.88)",e.lineWidth=2,e.strokeRect(o+1,n+1,Math.max(a-2,0),Math.max(i-2,0));break}}(l,_,M,X,i,g,T,o.numTicks):(l.fillStyle=g.v2.colors.silver[900],l.fillRect(0,0,_,M)))},[X,o.numTicks,T,i,M,_,g]);const K=c(()=>O(e=>!e),[]),Y=o.numTicks>0?Math.max(0,Math.min(100,Math.round(z/o.numTicks*100))):100,J=r(()=>function(e,t){const o=xc(e),n=t?.offset??0,a=n+(t?.size??e.numTicks),i=(t?.level??-1)+1,l=t?.size??e.numTicks;let s=null;for(const e of o)e.level<i||e.offset<n||e.offset+e.size>a||e.size>=l||(!s||e.size>s.size||e.size===s.size&&e.level<s.level)&&(s=e);return s}(o,B),[o,B]),Q=null!==J,ee=N.length>0,ie=B?Cc(o,B.nameIndex):"",le=c(()=>I([]),[]),se=c(()=>I(e=>e.slice(0,-1)),[]),de=c(()=>{J&&I(e=>[...e,J])},[J]);return e("div",{style:E?{position:"fixed",inset:0,zIndex:9999,display:"flex",flexDirection:"column",gap:8,padding:16,background:g.v2.colors.silver[900]}:{flex:1,minHeight:u,minWidth:0,width:"100%",display:"flex",flexDirection:"column",gap:8,position:"relative"},children:[e(te,{$gap:8,$wrap:"nowrap",$justifyContent:"space-between",children:[t(q,{label:"Collapse recursive",tooltip:"Collapse straight-line recursion (parent → single same-name child of equal width) into a single bar. Helps deep recursive call chains fit on screen.",labelAlign:Z.Left,size:ct.S,value:P,onChange:L}),e(te,{$gap:8,children:[e(te,{children:[t(oe,{variant:ae.Secondary,size:ne.S,label:"Reset zoom",leftIcon:Fi,onClick:le,disabled:!N.length}),t(oe,{variant:ae.Secondary,size:ne.S,iconSize:20,leftIcon:Pi,tooltip:"Zoom out",hideTooltipIcon:!0,disabled:!ee,onClick:se}),t("div",{style:{minWidth:36,textAlign:"center",fontVariantNumeric:"tabular-nums"},children:t(re,{size:ce.XXS,color:Ce.Secondary,nowrap:!0,align:"center",children:`${Y}%`})}),t(oe,{variant:ae.Secondary,size:ne.S,iconSize:20,leftIcon:ii,tooltip:"Zoom in",hideTooltipIcon:!0,disabled:!Q,onClick:de})]}),e(te,{children:[t(we,{text:"Horizontal width: stretch the canvas wider than the viewport so narrow stacks become hoverable / readable.",children:t(ue,{variant:so.Filled,options:[{value:Ic.Fit,label:"W: Fit"},{value:Ic.X10,label:"10x"}],selected:A,setSelected:D})}),t(we,{text:"Vertical height: scale rows taller than the viewport for deep call stacks. Scroll vertically to navigate.",children:t(ue,{variant:so.Filled,options:[{value:Ec.Fit,label:"H: Fit"},{value:Ec.X10,label:"10x"}],selected:R,setSelected:F})})]}),t(oe,{variant:ae.Secondary,size:ne.S,iconSize:24,leftIcon:E?yi:Ri,tooltip:E?"Exit fullscreen (Esc)":"Fullscreen",hideTooltipIcon:!0,onClick:K})]})]}),t(we,{fullWidth:!0,keepAlive:!0,text:x,children:t("div",{ref:b,style:{flex:1,minWidth:0,width:"100%",height:E?"calc(100vh - 80px)":"calc(100vh - 364px)",position:"relative",overflowX:A>1?"auto":"hidden",overflowY:R>1?"auto":"hidden"},children:t("div",{style:{width:_||"100%",height:M||"100%",position:"relative"},children:t("canvas",{ref:v,style:{display:"block",position:"absolute",left:0,top:0,width:"100%",height:"100%",borderRadius:8,cursor:T?"pointer":"default"},onPointerDown:W,onPointerMove:H,onPointerLeave:j,onClick:G})})})}),e(te,{$justifyContent:"space-between",children:[t(re,B?{size:ce.XXXS,color:g.v2.colors.silver[300],children:`Zoomed: ${ie} • ${Sc(z)} samples in view`}:{size:ce.XXXS,color:g.v2.colors.silver[300],children:"Click a frame to zoom into its subtree (pprof-style)."}),h&&t(re,{size:ce.XXXS,color:g.v2.colors.silver[300],children:`${h.activeKeys.length} / ${h.maxSlots} profiling slots · ${Dc(h.totalBytesUsed)} / ${Dc(h.maxTotalBytesBudget)} budget · TTL ${h.slotTtlSeconds}s`})]})]})};var Fc,Pc;!function(e){e.Symbol="symbol",e.Self="self",e.Total="total"}(Fc||(Fc={})),function(e){e.FilterOutVoid="filter-out-void",e.OnlyWithReturnValues="only-with-return-values"}(Pc||(Pc={}));const Lc=/^[A-Za-z_$][A-Za-z0-9_$]*(\[\])*$/;function _c(e,t){const o=function(e){return e.split(" ")[0]??""}(e);if(t.includes(Pc.FilterOutVoid)&&"void"===o)return!1;if(t.includes(Pc.OnlyWithReturnValues)){if(!(e.includes(" ")&&"void"!==o&&Lc.test(o)))return!1}return!0}const Mc={options:[{id:Pc.FilterOutVoid,label:"Filter out void symbols"},{id:Pc.OnlyWithReturnValues,label:"Only show functions with return values"}],filterRow:(e,t)=>_c(e.cells.find(e=>e.key===Fc.Symbol)?.rawValue?.toString()??"",t)},Bc=({rows:e,languages:o,filters:n,onFiltersChange:a})=>{const i=r(()=>[{key:Fc.Symbol,label:"Symbol",flex:"0 0 160px",filterOverride:o?.includes(ro.Java)?Mc:void 0,noFilter:!o?.includes(ro.Java)},{key:Fc.Self,label:"Self",tooltip:"Time spent in this function itself, excluding time in functions it calls.",textAlign:"right",noFilter:!0},{key:Fc.Total,label:"Total",tooltip:"Time spent in this function and all functions it calls (inclusive).",textAlign:"right",noFilter:!0}],[o]),l=r(()=>e.map(e=>({cells:[{key:Fc.Symbol,rawValue:e.name},{key:Fc.Self,rawValue:Sc(e.self)},{key:Fc.Total,rawValue:Sc(e.total)}]})),[e]);return t(co,{variant:uo.Data,maxHeight:"calc(100vh - 306px)",columns:i,rows:l,filters:n,onFiltersChange:a,rowActionsPushLeftPosition:"12px",getRowActions:e=>[{id:`copy-${e.cells[0].rawValue}`,label:"",rightIcon:Li,onClick:()=>{navigator.clipboard.writeText(e.cells[0].rawValue)}}]})};var zc;!function(e){e.Table="table",e.Flame="flame",e.Both="both"}(zc||(zc={}));const Xc=g(V)`
|
|
208
208
|
width: 100%;
|
|
209
209
|
flex: 1;
|
|
210
210
|
border-radius: 16px;
|
|
211
211
|
overflow: hidden;
|
|
212
212
|
background: ${({theme:e})=>e.v2.colors.silver[800]};
|
|
213
213
|
box-shadow: 0 2px 14.1px 0 rgba(0, 0, 0, 0.25);
|
|
214
|
-
`,
|
|
214
|
+
`,Vc=g.div`
|
|
215
215
|
display: flex;
|
|
216
216
|
align-items: center;
|
|
217
217
|
gap: 10px;
|
|
@@ -219,11 +219,11 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
219
219
|
padding: 12px 12px 8px;
|
|
220
220
|
background: ${({theme:e})=>e.v2.colors.silver[800]};
|
|
221
221
|
border-radius: 16px 16px 0 0;
|
|
222
|
-
`,
|
|
222
|
+
`,Uc=g(te)`
|
|
223
223
|
flex-shrink: 0;
|
|
224
224
|
align-items: center;
|
|
225
225
|
gap: 4px;
|
|
226
|
-
`,
|
|
226
|
+
`,Hc=g.div`
|
|
227
227
|
flex: 1;
|
|
228
228
|
display: flex;
|
|
229
229
|
align-items: stretch;
|
|
@@ -231,20 +231,20 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
231
231
|
padding: 16px;
|
|
232
232
|
background: ${({theme:e})=>e.v2.colors.silver[800]};
|
|
233
233
|
border-radius: 0 0 16px 16px;
|
|
234
|
-
`,
|
|
234
|
+
`,jc=g(V)`
|
|
235
235
|
flex: ${({$splitWithFlame:e})=>e?"0 0 min(413px, 42%)":"1 1 auto"};
|
|
236
236
|
width: ${({$splitWithFlame:e})=>e?"auto":"100%"};
|
|
237
237
|
max-width: ${({$splitWithFlame:e})=>e?"none":"100%"};
|
|
238
238
|
gap: 10px;
|
|
239
|
-
`,
|
|
239
|
+
`,Wc=g(V)`
|
|
240
240
|
flex: ${({$splitWithTable:e})=>e?"1":"1 1 auto"};
|
|
241
241
|
width: ${({$splitWithTable:e})=>e?"auto":"100%"};
|
|
242
242
|
gap: 10px;
|
|
243
|
-
`,
|
|
243
|
+
`,Gc=g(te)`
|
|
244
244
|
width: 100%;
|
|
245
245
|
min-height: 32px;
|
|
246
246
|
flex-shrink: 0;
|
|
247
|
-
`,
|
|
247
|
+
`,Kc=({source:o,fetchProfilingSlots:i,enableProfiling:s,fetchSourceProfiling:u,onFlameFullscreenChange:p})=>{const h=f(),m=o.id,[g,b]=l(!0),[v,y]=l(null),[C,S]=l(null),[w,x]=l(0),[k,T]=l(zc.Both),[$,N]=l(""),[I,E]=l({}),O=d(null),A=c(async()=>{try{const e=[i()];g&&e.push(u(m));const[t,o]=await Promise.all(e);t&&y(t),o?.profileJson&&S(o.profileJson)}finally{x(e=>e+1)}},[i,u,m]);n(()=>{let e=!1;return(async()=>{await s(m),e||(await A(),e||(O.current=setInterval(A,3e3)))})(),()=>{e=!0,O.current&&clearInterval(O.current)}},[s,A,m]);const D=r(()=>function(e){if(!e?.trim())return null;try{const t=JSON.parse(e),o=t.flamebearer;return!o?.names?.length||!Array.isArray(o.levels)||"number"!=typeof o.numTicks||o.numTicks<=0?null:{flamebearer:o,units:t.metadata?.units}}catch{return null}}(C),[C]),R=r(()=>D?function(e){const t=new Map;for(let o=0;o<e.levels.length;o++){const n=e.levels[o];for(let o=0;o+3<n.length;o+=4){const a=n[o+1],i=n[o+2],l=Cc(e,n[o+3]);if(!l)continue;const s=t.get(l);(!s||a>s.total)&&t.set(l,{self:i,total:a})}}return[...t.entries()].map(([e,t])=>({name:e,self:t.self,total:t.total})).sort((e,t)=>t.self-e.self)}(D.flamebearer):[],[D]),F=r(()=>{const e=$.trim().toLowerCase();return e?R.filter(t=>t.name.toLowerCase().includes(e)):R},[R,$]),P=k===zc.Table||k===zc.Both,L=k===zc.Flame||k===zc.Both,_=P&&L,M=o.runtimeInfo?.detectedLanguages||o.containers?.map(e=>e.overrides?.runtimeInfo?.language??e.runtimeInfo?.language??""),B=r(()=>function(e,t){if(!t?.includes(ro.Java))return;const o=e?.[Fc.Symbol]?.filter(Boolean)??[];return 0!==o.length?e=>_c(e,o):void 0}(I,M),[I,M]);return!C&&w<2?t(Ke,{$height:"70vh",children:t(Qe,{withSpinner:!0})}):e(Xc,{$gap:0,$width:"100%",children:[e(Vc,{children:[t(we,{text:"Live CPU profile collected from the workload agent. Search symbols, switch between the table and flame graph, or download a JSON snapshot.",withIcon:!0,children:t(Uc,{children:t(re,{size:ce.S,weight:500,color:Ce.Primary,nowrap:!0,children:"CPU Profiling"})})}),e(te,{style:{flex:1,minWidth:200,gap:10,alignItems:"center",flexWrap:"wrap"},children:[t("div",{style:{flex:"1 1 220px",minWidth:180},children:t(Ut,{value:$,onChange:N,placeholder:"Search by symbol name",width:"100%",idleBackgroundColor:h.v2.colors.silver[900],emphasizeBackgroundColor:h.v2.colors.silver[800]})}),t(ue,{variant:so.Filled,options:[{value:zc.Table,label:"Top table"},{value:zc.Flame,label:"Flame graph"},{value:zc.Both,label:"Both"}],selected:k,setSelected:T}),t(oe,g?{variant:ae.Secondary,size:ne.S,label:"Live",tooltip:"Odigos profiler works in-memory and doesn't store any data on disk, to keep minimum memory footprint we store only last 10 minutes of data on demand",leftIcon:e=>t(_i,{...e,size:8,fill:h.v2.colors.green[500]})}:{variant:ae.Secondary,size:ne.S,label:"Paused",tooltip:"Odigos profiler is still collecting data, but the UI is not updating in real time",leftIcon:e=>t(_i,{...e,size:8,fill:h.v2.colors.red[500]})})]})]}),t(Hc,{$gap:P&&L?16:0,children:D?e(a,{children:[P&&e(jc,{$splitWithFlame:_,children:[t(Gc,{$justifyContent:"flex-end",children:t(oe,{variant:ae.Secondary,size:ne.S,label:"Download snapshot",rightIcon:Mi,onClick:()=>{if(!C)return;const e=new Blob([C],{type:"application/json"}),t=URL.createObjectURL(e),n=document.createElement("a");n.href=t,n.download=`cpu-profile-${o.id.namespace}-${o.id.kind}-${o.id.name}.json`,n.click(),URL.revokeObjectURL(t)},disabled:!C})}),t(Bc,{rows:F,languages:M,filters:I,onFiltersChange:E})]}),L&&e(Wc,{$splitWithTable:_,children:[e(Gc,{$justifyContent:"space-between",children:[t(Ee,{label:D?`Total in view ${Sc(D.flamebearer.numTicks)}`:"No profile sample yet",backgroundColor:h.v2.colors.silver[750],textColor:h.v2.colors.silver[200],textSize:ce.XXS}),e(te,{$gap:12,children:[!g&&t(oe,{variant:ae.Secondary,size:ne.S,label:"Refresh",leftIcon:Ni,onClick:A}),t(q,{label:"Auto refresh",labelAlign:Z.Left,size:ct.S,value:g,onChange:b})]})]}),t(Rc,{flamebearer:D.flamebearer,maxRowPx:24,searchQuery:$,shouldKeepName:B,minHostHeight:280,onFullscreenChange:p,profilingSlots:v},k)]})]}):t(Ke,{children:t(se,{title:"No profile samples yet",subTitle:"Dynamically collecting profiling samples — keep this tab open while the agent sends OTLP profiles."})})})]})},Yc=[io.Deployment,io.StatefulSet,io.DaemonSet,io.DeploymentConfig,io.Rollout,io.Pod];var Jc;!function(e){e.Workload="Workload",e.Pod="Pod"}(Jc||(Jc={}));const qc=e=>!!e&&Lt(e.status)===ge.Error,Zc=e=>qc(e.healthStatus),Qc=e=>qc(e.odigosHealthStatus)||(e.processes??[]).some(Zc),ed=e=>qc(e.agentInjectedStatus)||qc(e.odigosHealthStatus)||(e.containers??[]).some(Qc),td=({onClose:o,effectiveConfig:a,sourceId:i,fetchSourceById:s,persistSources:u,updateSource:p,restartWorkloads:h,restartPod:m,recoverFromRollback:g,fetchPeerSources:b,enableProfiling:v,fetchProfilingSlots:C,fetchSourceProfiling:S,fetchK8sManifest:w})=>{const x=f(),{isVm:k}=y(),{selectedStreamName:T}=Fe(),{genericForm:$,loadSource:N,validateFormData:I}=Tl(),[E,O]=l(!1),[A,D]=l(!1),[R,F]=l(!1),[P,L]=l(cr.Overview),[_,M]=l(null),[B,z]=l({openFor:null}),X=(()=>{const[e,t]=l(null),o=c(e=>{t({tab:cr.Pods,podName:e.podName})},[]),n=c((e,o)=>{t({tab:cr.Pods,podName:e.podName,containerName:o.containerName})},[]),a=c((e,o,n)=>{const a=Cr({identifyingAttributes:n.identifyingAttributes});t({tab:cr.Pods,podName:e.podName,containerName:o.containerName,processPid:a})},[]),i=c(()=>t(null),[]);return r(()=>({jumpToTarget:e,jumpToPod:o,jumpToContainer:n,jumpToProcess:a,clearJumpToTarget:i}),[e,o,n,a,i])})();n(()=>{X.jumpToTarget&&L(X.jumpToTarget.tab)},[X.jumpToTarget]),n(()=>{_&&JSON.stringify(Wt(i))!==JSON.stringify(Wt(_))&&M(null)},[i,_]);const U=d(!1),H=c(async()=>M(await s(i)||null),[i]);n(()=>{if(U.current||(H(),U.current=!0),!E){const e=setInterval(()=>H(),3e3);return()=>clearInterval(e)}},[H,E]),n(()=>{_&&N(_)},[_]);const j=_&&Yc.includes(_.id.kind),W=r(()=>{const e=[],o=(_?.pods??[]).some(ed);return e.push({value:cr.Overview,label:Re.OVERVIEW}),e.push({value:cr.Pods,label:Re.PODS,icon:o?e=>t(Ii,{...e,fill:x.v2.colors.red[500]}):void 0}),k||e.push({value:cr.PeerSources,label:Re.PEER_SOURCES}),a?.profiling?.enabled&&e.push({value:cr.Profiling,label:Re.PROFILING}),k||e.push({value:cr.Debug,label:Re.DEBUG}),e},[k,a,_?.pods]),G=c(()=>O(!0),[]),K=c(()=>{_&&N(_),O(!1)},[_]),Y=c(async()=>{if(!_||!$)return;const{errorMessage:e,preparedFormData:t}=I();if(e)return;const o=t.otelServiceName!==_.id.name?t.otelServiceName:"";await p(i,{...t,otelServiceName:o}),O(!1)},[_,$,I,i,p]),J=c(()=>D(!0),[]),q=c(async()=>{_&&(await u({[mt]:[{namespace:_.id.namespace,name:_.id.name,kind:_.id.kind,selected:!1,currentStreamName:T}]}),D(!1),o())},[_,u,T,o]),Z=c(()=>{z({openFor:Jc.Workload})},[]),Q=c(e=>{L(e),X.clearJumpToTarget()},[X]),ee=c(async()=>{await g(i)},[g,i]),te=c(async()=>{B.openFor===Jc.Workload?await h([i]):B.openFor===Jc.Pod&&B.podNamespace&&B.podName&&await m(B.podNamespace,B.podName),z({openFor:null})},[B,h,m,i]),oe=r(()=>{const e=[];return E||P===cr.Overview&&(e.push({id:"edit-source-btn-edit",label:bt.EDIT,icon:di,active:E,onClick:G}),!k&&j&&e.push({id:"edit-source-btn-restart",label:bt.RESTART,icon:Bi,onClick:Z}),e.push({id:"edit-source-btn-delete",label:bt.DELETE,icon:ai,color:x.v2.colors.red[500],active:A,onClick:J})),e},[P,E,A,k,j,G,Z,J,x]),ne=r(()=>{if(!_)return[];const e=[],t={backgroundColor:"transparent",textSize:ce.S};return e.push({...t,label:_.id.name,leftIcon:$i}),_.serviceName&&_.serviceName!==_.id.name&&e.push({...t,label:_.serviceName,leftIcon:Ti,textColor:x.v2.colors.silver[200]}),e},[_,x]);if(!_)return t(ft,{isOpen:!0,children:t(Ke,{$height:"80vh",children:t(Qe,{withSpinner:!0})})});const ie=P===cr.Profiling?R?"95vw":"80vw":E?void 0:"60vw";return e($r,{value:X,children:[t(ft,{isOpen:!0,width:ie,header:{icon:po(_.containers)[0],titleBadges:ne,onClose:()=>{Q(cr.Overview),M(null),F(!1),o()},actions:oe},footer:{actions:E?[{"data-id":"edit-source-btn-cancel",label:bt.CANCEL,variant:ae.Secondary,onClick:K},{"data-id":"edit-source-btn-save",label:bt.SAVE,variant:ae.Primary,onClick:Y}]:[]},children:t(vt,{$padding:"4px 12px 12px",children:e(V,{$gap:16,children:[!E&&W.length>1&&t(ue,{options:W,selected:P,setSelected:Q}),(()=>{switch(P){case cr.Overview:return E?t(hs,{}):t(vc,{source:_,onClickRollout:Z,onClickRollback:ee,onOverride:e=>p(i,e)});case cr.Pods:return t(Dr,{source:_,onClickRestartPod:j?(e,t)=>z({openFor:Jc.Pod,podNamespace:e,podName:t}):void 0});case cr.PeerSources:return t(Rr,{source:_,fetchPeerSources:b});case cr.Profiling:return t(Kc,{source:_,fetchProfilingSlots:C,enableProfiling:v,fetchSourceProfiling:S,onFlameFullscreenChange:F});case cr.Debug:return t(yc,{source:_,fetchK8sManifest:w});default:return null}})()]})})}),t(gl,{target:"source",action:"uninstrument",isOpen:A,onClose:()=>D(!1),onApprove:q}),t(gl,{target:`${B.openFor?.toLowerCase()??""}`,action:"restart",description:Re.RESTART_POD_DESCRIPTION,isOpen:!!B.openFor,onClose:()=>z({openFor:null}),onApprove:te,overrideApproveButtonLabel:Re.DELETE_POD_TO_RESTART})]})},od=g.div`
|
|
248
248
|
display: flex;
|
|
249
249
|
align-items: center;
|
|
250
250
|
gap: 8px;
|
|
@@ -254,9 +254,9 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
254
254
|
&:hover {
|
|
255
255
|
background-color: ${({theme:e})=>e.v2.colors.silver[800]};
|
|
256
256
|
}
|
|
257
|
-
`,
|
|
257
|
+
`,nd=g.div`
|
|
258
258
|
flex: 1;
|
|
259
|
-
`,
|
|
259
|
+
`,ad=({onClick:o})=>{const n=f().v2.colors.red[500];return e(od,{"data-id":"sampling-view-btn-delete",onClick:o,children:[t(re,{size:ce.XS,weight:500,color:n,children:fo}),t(ai,{size:16,fill:n})]})};function id(n){if(n.isEditing){const{onCancelEdit:a,onSave:i,onDelete:l,duplicateWarning:s}=n;return{children:e(o,{children:[t(ad,{onClick:l}),s&&t(me,{status:ge.Warning,message:s.message,action:s.onViewRule?{"data-id":"sampling-view-edit-btn-view-duplicate",label:"View rule",onClick:s.onViewRule}:void 0}),t(nd,{}),t(oe,{"data-id":"sampling-view-edit-btn-cancel",label:ho,variant:ae.Secondary,size:ne.S,onClick:a}),t(oe,{"data-id":"sampling-view-edit-btn-save",label:mo,variant:ae.Primary,size:ne.S,onClick:i,disabled:!!s})]})}}const{onDelete:a,onCancel:i,onEdit:l}=n;return{children:e(o,{children:[t(ad,{onClick:a}),t(nd,{}),t(oe,{"data-id":"sampling-view-btn-cancel",label:ho,variant:ae.Secondary,size:ne.S,onClick:i}),t(oe,{"data-id":"sampling-view-btn-edit",label:go,variant:ae.Primary,size:ne.S,onClick:l})]})}}const ld={[Nl.EditAutoNoisy]:{title:No,subTitle:$o,cancelId:"sampling-edit-auto-rule-btn-cancel",saveId:"sampling-edit-auto-rule-btn-save"},[Nl.EditAutoCostReduction]:{title:To,subTitle:ko,cancelId:"sampling-edit-cost-reduction-auto-rule-btn-cancel",saveId:"sampling-edit-cost-reduction-auto-rule-btn-save"},[Nl.EditAutoHighlyRelevant]:{title:xo,subTitle:wo,cancelId:"sampling-edit-highly-relevant-auto-rule-btn-cancel",saveId:"sampling-edit-highly-relevant-auto-rule-btn-save"}},sd=({isOpen:e,title:o,subTitle:n,onClose:a,footer:i,renderBody:l})=>t(ft,{isOpen:e,width:Eo,header:{icon:zi,title:o,subTitle:n,onClose:a},footer:i,children:l?l():t(vt,{$padding:"12px",children:t(ys,{})})}),rd=({isOpen:e,onClose:o,onSubmit:a,validateForm:i,onNavigateToDuplicate:l})=>{const{category:s,formData:r,resetForm:d,duplicateWarning:u,setDuplicateWarning:p}=$l(Nl.Create);n(()=>{e&&d()},[e]);const h=c(()=>{if(i){const e=i(r);if(e)return void p(e)}a(r)},[r,a,i,p]),m={note:u?{status:ge.Warning,message:u.message,action:l?{"data-id":"sampling-create-btn-view-duplicate",label:"View rule",onClick:()=>l(u.ruleId)}:void 0}:void 0,actions:[{"data-id":"sampling-create-btn-cancel",label:ho,variant:ae.Secondary,size:ne.S,onClick:o},{"data-id":"sampling-create-btn-submit",label:Co,variant:ae.Primary,size:ne.S,onClick:h,disabled:!!u}]};return t(sd,{isOpen:e,title:So[s],subTitle:bo[s],onClose:o,footer:m})},cd=({onClose:e,onDelete:o,onSaveEdit:n,validateForm:a,onNavigateToDuplicate:i})=>{const{data:l,isEditing:s,formData:d,handleEdit:u,handleCancelEdit:p,duplicateWarning:h,setDuplicateWarning:m}=$l(Nl.View),g=l?.rule.name||yo,f=s&&l?vo[l.category]:`${g} preview`,b=c(()=>{if(l&&s){if(a){const e=a(d);if(e)return void m(e)}n(d,l.rule.ruleId,l.samplingId)}},[l,s,d,n,a,m]),v=c(()=>{l&&o(l.rule.ruleId,l.samplingId)},[l,o]),y=r(()=>{if(!l)return;const t=h?{message:h.message,onViewRule:i?()=>i(h.ruleId):void 0}:null;return id(s?{isEditing:!0,onCancelEdit:p,onSave:b,onDelete:v,duplicateWarning:t}:{isEditing:!1,onDelete:v,onCancel:e,onEdit:u})},[l,s,h,p,b,v,u,e,i]);return t(sd,{isOpen:!!l,title:f,subTitle:l?bo[l.category]:"",onClose:e,footer:y})},dd=({isOpen:e,onClose:o,onSave:n})=>{const{localEnabled:a,resolvedPercentage:i}=$l(Nl.EditAutoNoisy),l=c(()=>n(a,i),[n,a,i]);return t(hd,{formType:Nl.EditAutoNoisy,isOpen:e,onClose:o,onSave:l})},ud=({isOpen:e,onClose:o,onSave:n})=>{const{localEnabled:a,resolvedPercentage:i}=$l(Nl.EditAutoCostReduction),l=c(()=>n(a,i),[n,a,i]);return t(hd,{formType:Nl.EditAutoCostReduction,isOpen:e,onClose:o,onSave:l})},pd=({isOpen:e,onClose:o,onSave:n})=>{const{localEnabled:a}=$l(Nl.EditAutoHighlyRelevant),i=c(()=>n(a),[n,a]);return t(hd,{formType:Nl.EditAutoHighlyRelevant,isOpen:e,onClose:o,onSave:i})},hd=({formType:e,isOpen:o,onClose:n,onSave:a})=>{const i=ld[e];return t(sd,{isOpen:o,title:i.title,subTitle:i.subTitle,onClose:n,footer:{actions:[{"data-id":i.cancelId,label:ho,variant:ae.Secondary,size:ne.S,onClick:n},{"data-id":i.saveId,label:Io,variant:ae.Primary,size:ne.S,onClick:a}]}})},md=e=>{switch(e.formType){case Nl.Create:return t(Rl,{formType:Nl.Create,category:e.category,sourceOptions:e.sourceOptions,namespaceOptions:e.namespaceOptions,children:t(rd,{...e})});case Nl.View:return t(Rl,{formType:Nl.View,data:e.data,defaultEditMode:e.defaultEditMode,sourceOptions:e.sourceOptions,namespaceOptions:e.namespaceOptions,children:t(cd,{...e})});case Nl.EditAutoNoisy:return t(Rl,{formType:Nl.EditAutoNoisy,enabled:e.enabled,keepPercentage:e.keepPercentage,children:t(dd,{...e})});case Nl.EditAutoCostReduction:return t(Rl,{formType:Nl.EditAutoCostReduction,enabled:e.enabled,dropPercentage:e.dropPercentage,children:t(ud,{...e})});case Nl.EditAutoHighlyRelevant:return t(Rl,{formType:Nl.EditAutoHighlyRelevant,enabled:e.enabled,children:t(pd,{...e})})}},gd=({token:n,isLoading:a,isEditing:i,onEdit:l,onCancel:s,onSave:r,formData:c,handleFormChange:d,handleErrorChange:u,formErrors:p})=>{const{CopyButton:h}=qt(),m=!i||a||!c.newToken;return Oo({key:"Enter",active:!m},r),e(te,i?{$justifyContent:"space-between",$alignItems:"flex-start",$gap:12,children:[t(W,{type:"password",value:c.newToken,onChange:e=>{d("newToken",e.target.value),u("newToken",void 0)},width:"430px",autoFocus:!0,errorMessage:p.newToken}),t(te,{$margin:a?"8px 0 0 0":"2px 0 0 0",$alignItems:"center",children:a?t(Qe,{title:"Saving...",withGradient:!0}):e(o,{children:[t(oe,{variant:ae.Secondary,size:ne.S,leftIcon:yi,onClick:s,disabled:a}),t(oe,{variant:ae.Primary,size:ne.S,leftIcon:vi,onClick:r,disabled:m})]})})]}:{$justifyContent:"space-between",$gap:12,children:[t(re,{size:ce.XS,children:new Array(55).fill("•").join("")}),e(te,{$alignItems:"center",$justifyContent:"space-between",children:[t(h,{value:n}),t(qe,{icon:di,onClick:l})]})]})},fd=({expiresAt:e,callbackValid:o,callbackExpired:a})=>{const{formatTimeAgo:i}=At(),l=r(()=>i(e),[e,i]),s=r(()=>new Date(e).toDateString().split(" ").slice(1).join(" "),[e]),c=r(()=>Ao(e,0)?ge.Error:Ao(e,2592e6)?ge.Warning:ge.Success,[e]),d=r(()=>c===ge.Success?vi:c===ge.Warning?Xi:Ii,[c]);return n(()=>{c===ge.Success?o():c===ge.Error&&a()},[c]),t(we,{text:s,children:t(Ee,{leftIcon:d,label:l,status:c,invertColors:!0,useSecondaryTone:!0})})},bd=g.div`
|
|
260
260
|
display: flex;
|
|
261
261
|
flex-direction: column;
|
|
262
262
|
gap: 12px;
|
|
@@ -264,7 +264,7 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
264
264
|
border-radius: 12px;
|
|
265
265
|
border: 1px solid ${({theme:e,$isExpired:t})=>t?e.v2.colors.red[500]:e.v2.colors.silver[600]};
|
|
266
266
|
background-color: ${({theme:e,$isExpired:t})=>t?e.v2.colors.red[1e3]:e.v2.colors.silver[800]};
|
|
267
|
-
`,
|
|
267
|
+
`,vd=({children:e})=>{const o=f();return t(re,{size:ce.XXXS,color:o.v2.colors.grey[150],children:e})},yd=({token:o,updateToken:n})=>{const[a,i]=l(!1),[s,r]=l(!1),[c,d]=l(!1),{formData:u,handleFormChange:p,formErrors:h,handleErrorChange:m,resetFormData:g}=wt({newToken:""});return t(Ue,{richTitle:{icon:Vi,title:"Odigos Pro Token"},children:e(bd,{$isExpired:c,children:[e(te,{$justifyContent:"space-between",children:[e(V,{$gap:4,children:[t(vd,{children:"Issued for"}),t(re,{size:ce.XS,children:o.name||"N/A"})]}),e(V,{$gap:4,children:[t(vd,{children:"Expiration"}),t(fd,{expiresAt:o.expiresAt,callbackValid:()=>d(!1),callbackExpired:()=>d(!0)})]}),t(V,{})]}),t(te,{children:e(V,{children:[t(vd,{children:"Token"}),t(gd,{token:o.token,newToken:u.newToken,isLoading:s,isEditing:a,onEdit:()=>i(!0),onCancel:()=>(i(!1),r(!1),void p("newToken","")),onSave:()=>(async()=>{r(!0);const e=await n(u.newToken.trim());r(!1),e?.error?m("newToken",e.error):(i(!1),g())})(),formData:u,handleFormChange:p,handleErrorChange:m,formErrors:h})]})})]})})},Cd=g.div`
|
|
268
268
|
display: flex;
|
|
269
269
|
flex-direction: column;
|
|
270
270
|
align-items: center;
|
|
@@ -273,23 +273,23 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
273
273
|
padding: 12px 24px;
|
|
274
274
|
border-radius: 8px;
|
|
275
275
|
background-color: ${({theme:e})=>e.v2.colors.silver[800]};
|
|
276
|
-
`,bd=({downloadDiagnose:o})=>{const{progress:n}=ut(),{namespaces:a}=at(),[i,s]=l(null),{formData:r,handleFormChange:c,resetFormData:d}=wt({includeProfiles:!0,includeMetrics:!0,includeSourceWorkloads:!1,sourceWorkloadNamespaces:[]});return t(Ue,{richTitle:{icon:Vi,title:"Diagnose"},children:i?e(fd,{children:[t(Qe,{title:"Creating file...",subTitle:"This may take a few moments. Do not refresh the page.",withGradient:!0,withSpinner:"number"==typeof n[pt.DownloadingDiagnose]?.percentage,percentage:n[pt.DownloadingDiagnose]?.percentage,withVisual:"number"!=typeof n[pt.DownloadingDiagnose]?.percentage,visualIcon:_i,startedAt:i}),n[pt.DownloadingDiagnose]?.list?.length&&t(V,{$width:"100%",children:n[pt.DownloadingDiagnose].list.map(o=>e(te,{$gap:4,$alignItems:"center",children:[o.status===ge.Success?t(bi,{size:16}):o.status===ge.Error?t(vi,{size:16}):t(Qe,{withSpinnerOld:!0,scaleSpinnerOld:.7}),t(re,{size:ce.XXXS,color:Ce.Secondary,children:o.label})]},o.label))})]}):e(V,{$gap:24,children:[t(re,{size:ce.XXS,color:Ce.Secondary,children:"Download a tar.gz file with diagnostics from this cluster. Select which data to include before downloading, and share the file with the Odigos support team for troubleshooting."}),e(V,{$gap:16,children:[e(te,{$gap:8,children:[t(H,{label:"Profiles",value:r.includeProfiles,onChange:e=>c("includeProfiles",e),tooltip:"Note: Adds 30s to diagnose download time to collect Profiles"}),t(re,{size:ce.XXXS,color:Ce.Secondary,children:"Include pprof profiles"})]}),e(te,{$gap:8,children:[t(H,{label:"Metrics",value:r.includeMetrics,onChange:e=>c("includeMetrics",e)}),t(re,{size:ce.XXXS,color:Ce.Secondary,children:"Include Prometheus metrics"})]}),e(te,{$gap:8,children:[t(H,{label:"Source Workloads",value:r.includeSourceWorkloads,onChange:e=>{c("includeSourceWorkloads",e),e&&c("sourceWorkloadNamespaces",[])}}),t(re,{size:ce.XXXS,color:Ce.Secondary,children:"Include workload and pod manifests for instrumented sources"})]})]}),t(Ao,{alignX:Do.Left,alignY:Oo.Bottom,items:a.map(e=>({id:e.name,label:e.name,withCheckbox:!0})),selectedIds:r.sourceWorkloadNamespaces,setSelectedIds:e=>c("sourceWorkloadNamespaces",e),withMultiSelect:!0,withSearch:!0,fullWidth:!0,buttonProps:{label:(r.sourceWorkloadNamespaces.length?"Selected":"Select")+" Namespaces",variant:ae.Secondary,disabled:r.includeSourceWorkloads,leftIcon:r.sourceWorkloadNamespaces.length?()=>t(Ee,{label:r.sourceWorkloadNamespaces.length,status:ge.Default}):void 0}}),t(te,{$justifyContent:"flex-end",children:t(oe,{label:"Download Diagnose",rightIcon:_i,variant:ae.Primary,onClick:async()=>{s(Date.now()),await o(r),s(null),d()},disabled:null!==i})})]})})},vd=({fetchDescribeOdigos:e})=>{const{platformType:o,version:a,tier:i}=y(),[s,r]=l(null);return n(()=>{e().then(({data:e})=>r(e?.describeOdigos||null))},[]),t(Ue,{richTitle:{icon:Ui,title:"General Information"},children:t(yt,{cellsPerRow:2,items:[{id:Ro(),title:"Odigos Version",label:a},{id:Ro(),title:`${o.toUpperCase()} Version`,label:s?.kubernetesVersion?.value||"-"},{id:Ro(),title:"Installation Method",label:s?.installationMethod?.value||"-"},{id:Ro(),title:"Tier",label:i}]})})},yd=({isOpen:o,onClose:n,token:a,updateToken:i,fetchDescribeOdigos:l,downloadDiagnose:s})=>e(ft,{isOpen:o,header:{icon:Ui,title:"System Overview",onClose:n},children:[l&&t(vd,{fetchDescribeOdigos:l}),i&&a&&t(gd,{token:a,updateToken:i}),s&&t(bd,{downloadDiagnose:s})]}),Cd=({isOpen:n,onClose:a,onCloseEnd:i,createDataStream:l})=>{const{addDataStreams:s,setSelectedStreamName:r}=Fe(),{requestSubmit:d}=xl(),u=c(async e=>{l?await l(e):(s([e]),r(e.name)),a()},[l,s,r,a]),p=c(()=>d(u),[d,u]);return No({key:"Enter",active:n},p),e(o,{children:[t(De,{isOpen:n,onClose:a,onCloseEnd:i,title:Re.NAME_YOUR_STREAM,description:Re.STREAM_DESCRIPTION,approveButton:{"data-id":"add-stream-btn-done",label:bt.DONE,variant:ae.Primary,onClick:p},denyButton:{"data-id":"add-stream-btn-cancel",label:bt.CANCEL,variant:ae.Secondary,onClick:a},children:t(us,{autoFocus:!0})}),t(ds,{})]})},Sd=({isOpen:a,onClose:i,onCloseEnd:l,dataStreamName:s,updateDataStream:r})=>{const{genericForm:d,loadDataStream:u,requestSubmit:p}=xl();n(()=>{a&&s&&u(s)},[a,s]);const h=!!d?.isFormDirty,m=c(async e=>{await r(s,e),i()},[r,s,i]),g=c(()=>p(m),[p,m]);return No({key:"Enter",active:a},g),e(o,{children:[t(De,{isOpen:a,onClose:i,onCloseEnd:l,title:Re.RENAME_STREAM(s),description:Re.STREAM_DESCRIPTION,approveButton:{"data-id":"edit-stream-btn-save",label:bt.SAVE,variant:ae.Primary,onClick:g,disabled:!h},denyButton:{"data-id":"edit-stream-btn-cancel",label:bt.CANCEL,variant:ae.Secondary,onClick:i},children:t(us,{autoFocus:!0})}),t(ds,{})]})},wd=({scale:o=1})=>e("svg",{width:742*o,height:533*o,viewBox:"0 0 742 533",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[t("path",{d:"M0 0H722C733.046 0 742 8.95431 742 20V513C742 524.046 733.046 533 722 533H0V0Z",fill:"url(#paint0_linear_1585_55266)"}),e("g",{clipPath:"url(#clip0_1585_55266)",children:[t("path",{opacity:"0.1",d:"M817.963 1364.02C1052.53 1129.46 1052.53 749.151 817.96 514.585C583.394 280.019 203.089 280.018 -31.4751 514.583C-266.039 749.147 -266.038 1129.45 -31.4725 1364.02C203.093 1598.58 583.398 1598.58 817.963 1364.02Z",fill:"url(#paint1_radial_1585_55266)"}),t("path",{opacity:"0.3",d:"M789.266 1335.32C1007.98 1116.61 1007.98 761.998 789.264 543.281C570.547 324.565 215.938 324.563 -2.7781 543.279C-221.494 761.995 -221.493 1116.6 -2.77577 1335.32C215.941 1554.04 570.55 1554.04 789.266 1335.32Z",fill:"url(#paint2_radial_1585_55266)"}),t("path",{opacity:"0.5",d:"M736.156 1282.21C925.539 1092.83 925.538 785.776 736.153 596.392C546.769 407.007 239.717 407.006 50.333 596.39C-139.05 785.773 -139.05 1092.83 50.3351 1282.21C239.72 1471.59 546.772 1471.6 736.156 1282.21Z",fill:"url(#paint3_radial_1585_55266)"}),t("path",{opacity:"0.7",d:"M628.365 1174.42C758.218 1044.57 758.217 834.036 628.364 704.182C498.51 574.329 287.977 574.328 158.124 704.181C28.2713 834.033 28.272 1044.57 158.125 1174.42C287.979 1304.27 498.512 1304.27 628.365 1174.42Z",fill:"url(#paint4_radial_1585_55266)"}),t("path",{opacity:"0.1",d:"M795.717 29.8993C1030.28 -204.665 1030.28 -584.97 795.714 -819.536C561.148 -1054.1 180.843 -1054.1 -53.7211 -819.539C-288.285 -584.974 -288.284 -204.669 -53.7185 29.8967C180.847 264.462 561.152 264.464 795.717 29.8993Z",fill:"url(#paint5_radial_1585_55266)"}),t("path",{opacity:"0.3",d:"M767.02 1.20219C985.736 -217.513 985.734 -572.123 767.017 -790.84C548.301 -1009.56 193.691 -1009.56 -25.0242 -790.842C-243.74 -572.126 -243.739 -217.517 -25.0219 1.19982C193.695 219.917 548.304 219.918 767.02 1.20219Z",fill:"url(#paint6_radial_1585_55266)"}),t("path",{opacity:"0.5",d:"M713.909 -51.908C903.293 -241.292 903.292 -548.344 713.907 -737.728C524.523 -927.113 217.47 -927.114 28.0869 -737.731C-161.297 -548.347 -161.296 -241.295 28.089 -51.91C217.474 137.475 524.526 137.476 713.909 -51.908Z",fill:"url(#paint7_radial_1585_55266)"}),t("path",{opacity:"0.7",d:"M606.119 -159.699C735.972 -289.552 735.971 -500.085 606.118 -629.939C476.264 -759.792 265.731 -759.793 135.878 -629.94C6.0252 -500.088 6.02586 -289.554 135.879 -159.701C265.733 -29.8472 476.266 -29.8465 606.119 -159.699Z",fill:"url(#paint8_radial_1585_55266)"})]}),e("defs",{children:[e("linearGradient",{id:"paint0_linear_1585_55266",x1:"371",y1:"0",x2:"371",y2:"533",gradientUnits:"userSpaceOnUse",children:[t("stop",{offset:"0.028197",stopColor:"#0B0517"}),t("stop",{offset:"1",stopColor:"#190D31"})]}),e("radialGradient",{id:"paint1_radial_1585_55266",cx:"0",cy:"0",r:"1",gradientUnits:"userSpaceOnUse",gradientTransform:"translate(334.074 991.405) rotate(-45) scale(599.732 599.736)",children:[t("stop",{stopColor:"#7C3BFF",stopOpacity:"0.1"}),t("stop",{offset:"0.41",stopColor:"#7C3BFF",stopOpacity:"0.11"}),t("stop",{offset:"0.56",stopColor:"#7C3BFF",stopOpacity:"0.13"}),t("stop",{offset:"0.67",stopColor:"#7C3BFF",stopOpacity:"0.18"}),t("stop",{offset:"0.75",stopColor:"#7C3BFF",stopOpacity:"0.25"}),t("stop",{offset:"0.83",stopColor:"#7C3BFF",stopOpacity:"0.33"}),t("stop",{offset:"0.89",stopColor:"#7C3BFF",stopOpacity:"0.44"}),t("stop",{offset:"0.95",stopColor:"#7C3BFF",stopOpacity:"0.56"}),t("stop",{offset:"1",stopColor:"#7C3BFF",stopOpacity:"0.7"})]}),e("radialGradient",{id:"paint2_radial_1585_55266",cx:"0",cy:"0",r:"1",gradientUnits:"userSpaceOnUse",gradientTransform:"translate(368.968 957.913) rotate(-45) scale(560.978 560.981)",children:[t("stop",{stopColor:"#7C3BFF",stopOpacity:"0.1"}),t("stop",{offset:"0.38",stopColor:"#7C3BFF",stopOpacity:"0.11"}),t("stop",{offset:"0.52",stopColor:"#7C3BFF",stopOpacity:"0.13"}),t("stop",{offset:"0.62",stopColor:"#7C3BFF",stopOpacity:"0.18"}),t("stop",{offset:"0.69",stopColor:"#7C3BFF",stopOpacity:"0.25"}),t("stop",{offset:"0.76",stopColor:"#7C3BFF",stopOpacity:"0.33"}),t("stop",{offset:"0.82",stopColor:"#7C3BFF",stopOpacity:"0.44"}),t("stop",{offset:"0.88",stopColor:"#7C3BFF",stopOpacity:"0.57"}),t("stop",{offset:"0.93",stopColor:"#7C3BFF",stopOpacity:"0.72"}),t("stop",{offset:"0.97",stopColor:"#7C3BFF",stopOpacity:"0.88"}),t("stop",{offset:"1",stopColor:"#7C3BFF"})]}),e("radialGradient",{id:"paint3_radial_1585_55266",cx:"0",cy:"0",r:"1",gradientUnits:"userSpaceOnUse",gradientTransform:"translate(351.265 971.313) rotate(-45) scale(484.947 484.95)",children:[t("stop",{stopColor:"#7C3BFF",stopOpacity:"0.1"}),t("stop",{offset:"0.31",stopColor:"#7C3BFF",stopOpacity:"0.11"}),t("stop",{offset:"0.45",stopColor:"#7C3BFF",stopOpacity:"0.14"}),t("stop",{offset:"0.56",stopColor:"#7C3BFF",stopOpacity:"0.19"}),t("stop",{offset:"0.65",stopColor:"#7C3BFF",stopOpacity:"0.26"}),t("stop",{offset:"0.73",stopColor:"#7C3BFF",stopOpacity:"0.35"}),t("stop",{offset:"0.8",stopColor:"#7C3BFF",stopOpacity:"0.46"}),t("stop",{offset:"0.86",stopColor:"#7C3BFF",stopOpacity:"0.6"}),t("stop",{offset:"0.92",stopColor:"#7C3BFF",stopOpacity:"0.76"}),t("stop",{offset:"0.98",stopColor:"#7C3BFF",stopOpacity:"0.93"}),t("stop",{offset:"1",stopColor:"#7C3BFF"})]}),e("radialGradient",{id:"paint4_radial_1585_55266",cx:"0",cy:"0",r:"1",gradientUnits:"userSpaceOnUse",gradientTransform:"translate(362.239 963.064) rotate(-45) scale(332.216 332.218)",children:[t("stop",{stopColor:"#7C3BFF",stopOpacity:"0.1"}),t("stop",{offset:"0.31",stopColor:"#7C3BFF",stopOpacity:"0.11"}),t("stop",{offset:"0.45",stopColor:"#7C3BFF",stopOpacity:"0.14"}),t("stop",{offset:"0.56",stopColor:"#7C3BFF",stopOpacity:"0.19"}),t("stop",{offset:"0.65",stopColor:"#7C3BFF",stopOpacity:"0.26"}),t("stop",{offset:"0.73",stopColor:"#7C3BFF",stopOpacity:"0.35"}),t("stop",{offset:"0.8",stopColor:"#7C3BFF",stopOpacity:"0.46"}),t("stop",{offset:"0.86",stopColor:"#7C3BFF",stopOpacity:"0.6"}),t("stop",{offset:"0.92",stopColor:"#7C3BFF",stopOpacity:"0.76"}),t("stop",{offset:"0.98",stopColor:"#7C3BFF",stopOpacity:"0.93"}),t("stop",{offset:"1",stopColor:"#7C3BFF"})]}),e("radialGradient",{id:"paint5_radial_1585_55266",cx:"0",cy:"0",r:"1",gradientUnits:"userSpaceOnUse",gradientTransform:"translate(311.828 -342.716) rotate(-45) scale(599.733 599.736)",children:[t("stop",{stopColor:"#7C3BFF",stopOpacity:"0.1"}),t("stop",{offset:"0.41",stopColor:"#7C3BFF",stopOpacity:"0.11"}),t("stop",{offset:"0.56",stopColor:"#7C3BFF",stopOpacity:"0.13"}),t("stop",{offset:"0.67",stopColor:"#7C3BFF",stopOpacity:"0.18"}),t("stop",{offset:"0.75",stopColor:"#7C3BFF",stopOpacity:"0.25"}),t("stop",{offset:"0.83",stopColor:"#7C3BFF",stopOpacity:"0.33"}),t("stop",{offset:"0.89",stopColor:"#7C3BFF",stopOpacity:"0.44"}),t("stop",{offset:"0.95",stopColor:"#7C3BFF",stopOpacity:"0.56"}),t("stop",{offset:"1",stopColor:"#7C3BFF",stopOpacity:"0.7"})]}),e("radialGradient",{id:"paint6_radial_1585_55266",cx:"0",cy:"0",r:"1",gradientUnits:"userSpaceOnUse",gradientTransform:"translate(346.722 -376.208) rotate(-45) scale(560.977 560.981)",children:[t("stop",{stopColor:"#7C3BFF",stopOpacity:"0.1"}),t("stop",{offset:"0.38",stopColor:"#7C3BFF",stopOpacity:"0.11"}),t("stop",{offset:"0.52",stopColor:"#7C3BFF",stopOpacity:"0.13"}),t("stop",{offset:"0.62",stopColor:"#7C3BFF",stopOpacity:"0.18"}),t("stop",{offset:"0.69",stopColor:"#7C3BFF",stopOpacity:"0.25"}),t("stop",{offset:"0.76",stopColor:"#7C3BFF",stopOpacity:"0.33"}),t("stop",{offset:"0.82",stopColor:"#7C3BFF",stopOpacity:"0.44"}),t("stop",{offset:"0.88",stopColor:"#7C3BFF",stopOpacity:"0.57"}),t("stop",{offset:"0.93",stopColor:"#7C3BFF",stopOpacity:"0.72"}),t("stop",{offset:"0.97",stopColor:"#7C3BFF",stopOpacity:"0.88"}),t("stop",{offset:"1",stopColor:"#7C3BFF"})]}),e("radialGradient",{id:"paint7_radial_1585_55266",cx:"0",cy:"0",r:"1",gradientUnits:"userSpaceOnUse",gradientTransform:"translate(329.019 -362.807) rotate(-45) scale(484.947 484.95)",children:[t("stop",{stopColor:"#7C3BFF",stopOpacity:"0.1"}),t("stop",{offset:"0.31",stopColor:"#7C3BFF",stopOpacity:"0.11"}),t("stop",{offset:"0.45",stopColor:"#7C3BFF",stopOpacity:"0.14"}),t("stop",{offset:"0.56",stopColor:"#7C3BFF",stopOpacity:"0.19"}),t("stop",{offset:"0.65",stopColor:"#7C3BFF",stopOpacity:"0.26"}),t("stop",{offset:"0.73",stopColor:"#7C3BFF",stopOpacity:"0.35"}),t("stop",{offset:"0.8",stopColor:"#7C3BFF",stopOpacity:"0.46"}),t("stop",{offset:"0.86",stopColor:"#7C3BFF",stopOpacity:"0.6"}),t("stop",{offset:"0.92",stopColor:"#7C3BFF",stopOpacity:"0.76"}),t("stop",{offset:"0.98",stopColor:"#7C3BFF",stopOpacity:"0.93"}),t("stop",{offset:"1",stopColor:"#7C3BFF"})]}),e("radialGradient",{id:"paint8_radial_1585_55266",cx:"0",cy:"0",r:"1",gradientUnits:"userSpaceOnUse",gradientTransform:"translate(339.993 -371.057) rotate(-45) scale(332.216 332.218)",children:[t("stop",{stopColor:"#7C3BFF",stopOpacity:"0.1"}),t("stop",{offset:"0.31",stopColor:"#7C3BFF",stopOpacity:"0.11"}),t("stop",{offset:"0.45",stopColor:"#7C3BFF",stopOpacity:"0.14"}),t("stop",{offset:"0.56",stopColor:"#7C3BFF",stopOpacity:"0.19"}),t("stop",{offset:"0.65",stopColor:"#7C3BFF",stopOpacity:"0.26"}),t("stop",{offset:"0.73",stopColor:"#7C3BFF",stopOpacity:"0.35"}),t("stop",{offset:"0.8",stopColor:"#7C3BFF",stopOpacity:"0.46"}),t("stop",{offset:"0.86",stopColor:"#7C3BFF",stopOpacity:"0.6"}),t("stop",{offset:"0.92",stopColor:"#7C3BFF",stopOpacity:"0.76"}),t("stop",{offset:"0.98",stopColor:"#7C3BFF",stopOpacity:"0.93"}),t("stop",{offset:"1",stopColor:"#7C3BFF"})]}),t("clipPath",{id:"clip0_1585_55266",children:t("rect",{width:"929.477",height:"667",fill:"white",transform:"translate(-93.7383 -134)"})})]})]}),xd=g.div`
|
|
276
|
+
`,Sd=({downloadDiagnose:o})=>{const{progress:n}=ut(),{namespaces:a}=at(),[i,s]=l(null),{formData:r,handleFormChange:c,resetFormData:d}=wt({includeProfiles:!0,includeMetrics:!0,includeSourceWorkloads:!1,sourceWorkloadNamespaces:[]});return t(Ue,{richTitle:{icon:Ui,title:"Diagnose"},children:i?e(Cd,{children:[t(Qe,{title:"Creating file...",subTitle:"This may take a few moments. Do not refresh the page.",withGradient:!0,withSpinner:"number"==typeof n[pt.DownloadingDiagnose]?.percentage,percentage:n[pt.DownloadingDiagnose]?.percentage,withVisual:"number"!=typeof n[pt.DownloadingDiagnose]?.percentage,visualIcon:Mi,startedAt:i}),n[pt.DownloadingDiagnose]?.list?.length&&t(V,{$width:"100%",children:n[pt.DownloadingDiagnose].list.map(o=>e(te,{$gap:4,$alignItems:"center",children:[o.status===ge.Success?t(vi,{size:16}):o.status===ge.Error?t(yi,{size:16}):t(Qe,{withSpinnerOld:!0,scaleSpinnerOld:.7}),t(re,{size:ce.XXXS,color:Ce.Secondary,children:o.label})]},o.label))})]}):e(V,{$gap:24,children:[t(re,{size:ce.XXS,color:Ce.Secondary,children:"Download a tar.gz file with diagnostics from this cluster. Select which data to include before downloading, and share the file with the Odigos support team for troubleshooting."}),e(V,{$gap:16,children:[e(te,{$gap:8,children:[t(H,{label:"Profiles",value:r.includeProfiles,onChange:e=>c("includeProfiles",e),tooltip:"Note: Adds 30s to diagnose download time to collect Profiles"}),t(re,{size:ce.XXXS,color:Ce.Secondary,children:"Include pprof profiles"})]}),e(te,{$gap:8,children:[t(H,{label:"Metrics",value:r.includeMetrics,onChange:e=>c("includeMetrics",e)}),t(re,{size:ce.XXXS,color:Ce.Secondary,children:"Include Prometheus metrics"})]}),e(te,{$gap:8,children:[t(H,{label:"Source Workloads",value:r.includeSourceWorkloads,onChange:e=>{c("includeSourceWorkloads",e),e&&c("sourceWorkloadNamespaces",[])}}),t(re,{size:ce.XXXS,color:Ce.Secondary,children:"Include workload and pod manifests for instrumented sources"})]})]}),t(Do,{alignX:Fo.Left,alignY:Ro.Bottom,items:a.map(e=>({id:e.name,label:e.name,withCheckbox:!0})),selectedIds:r.sourceWorkloadNamespaces,setSelectedIds:e=>c("sourceWorkloadNamespaces",e),withMultiSelect:!0,withSearch:!0,fullWidth:!0,buttonProps:{label:(r.sourceWorkloadNamespaces.length?"Selected":"Select")+" Namespaces",variant:ae.Secondary,disabled:r.includeSourceWorkloads,leftIcon:r.sourceWorkloadNamespaces.length?()=>t(Ee,{label:r.sourceWorkloadNamespaces.length,status:ge.Default}):void 0}}),t(te,{$justifyContent:"flex-end",children:t(oe,{label:"Download Diagnose",rightIcon:Mi,variant:ae.Primary,onClick:async()=>{s(Date.now()),await o(r),s(null),d()},disabled:null!==i})})]})})},wd=({fetchDescribeOdigos:e})=>{const{platformType:o,version:a,tier:i}=y(),[s,r]=l(null);return n(()=>{e().then(({data:e})=>r(e?.describeOdigos||null))},[]),t(Ue,{richTitle:{icon:Hi,title:"General Information"},children:t(yt,{cellsPerRow:2,items:[{id:Po(),title:"Odigos Version",label:a},{id:Po(),title:`${o.toUpperCase()} Version`,label:s?.kubernetesVersion?.value||"-"},{id:Po(),title:"Installation Method",label:s?.installationMethod?.value||"-"},{id:Po(),title:"Tier",label:i}]})})},xd=({isOpen:o,onClose:n,token:a,updateToken:i,fetchDescribeOdigos:l,downloadDiagnose:s})=>e(ft,{isOpen:o,header:{icon:Hi,title:"System Overview",onClose:n},children:[l&&t(wd,{fetchDescribeOdigos:l}),i&&a&&t(yd,{token:a,updateToken:i}),s&&t(Sd,{downloadDiagnose:s})]}),kd=({isOpen:n,onClose:a,onCloseEnd:i,createDataStream:l})=>{const{addDataStreams:s,setSelectedStreamName:r}=Fe(),{requestSubmit:d}=kl(),u=c(async e=>{l?await l(e):(s([e]),r(e.name)),a()},[l,s,r,a]),p=c(()=>d(u),[d,u]);return Oo({key:"Enter",active:n},p),e(o,{children:[t(De,{isOpen:n,onClose:a,onCloseEnd:i,title:Re.NAME_YOUR_STREAM,description:Re.STREAM_DESCRIPTION,approveButton:{"data-id":"add-stream-btn-done",label:bt.DONE,variant:ae.Primary,onClick:p},denyButton:{"data-id":"add-stream-btn-cancel",label:bt.CANCEL,variant:ae.Secondary,onClick:a},children:t(ps,{autoFocus:!0})}),t(us,{})]})},Td=({isOpen:a,onClose:i,onCloseEnd:l,dataStreamName:s,updateDataStream:r})=>{const{genericForm:d,loadDataStream:u,requestSubmit:p}=kl();n(()=>{a&&s&&u(s)},[a,s]);const h=!!d?.isFormDirty,m=c(async e=>{await r(s,e),i()},[r,s,i]),g=c(()=>p(m),[p,m]);return Oo({key:"Enter",active:a},g),e(o,{children:[t(De,{isOpen:a,onClose:i,onCloseEnd:l,title:Re.RENAME_STREAM(s),description:Re.STREAM_DESCRIPTION,approveButton:{"data-id":"edit-stream-btn-save",label:bt.SAVE,variant:ae.Primary,onClick:g,disabled:!h},denyButton:{"data-id":"edit-stream-btn-cancel",label:bt.CANCEL,variant:ae.Secondary,onClick:i},children:t(ps,{autoFocus:!0})}),t(us,{})]})},$d=({scale:o=1})=>e("svg",{width:742*o,height:533*o,viewBox:"0 0 742 533",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[t("path",{d:"M0 0H722C733.046 0 742 8.95431 742 20V513C742 524.046 733.046 533 722 533H0V0Z",fill:"url(#paint0_linear_1585_55266)"}),e("g",{clipPath:"url(#clip0_1585_55266)",children:[t("path",{opacity:"0.1",d:"M817.963 1364.02C1052.53 1129.46 1052.53 749.151 817.96 514.585C583.394 280.019 203.089 280.018 -31.4751 514.583C-266.039 749.147 -266.038 1129.45 -31.4725 1364.02C203.093 1598.58 583.398 1598.58 817.963 1364.02Z",fill:"url(#paint1_radial_1585_55266)"}),t("path",{opacity:"0.3",d:"M789.266 1335.32C1007.98 1116.61 1007.98 761.998 789.264 543.281C570.547 324.565 215.938 324.563 -2.7781 543.279C-221.494 761.995 -221.493 1116.6 -2.77577 1335.32C215.941 1554.04 570.55 1554.04 789.266 1335.32Z",fill:"url(#paint2_radial_1585_55266)"}),t("path",{opacity:"0.5",d:"M736.156 1282.21C925.539 1092.83 925.538 785.776 736.153 596.392C546.769 407.007 239.717 407.006 50.333 596.39C-139.05 785.773 -139.05 1092.83 50.3351 1282.21C239.72 1471.59 546.772 1471.6 736.156 1282.21Z",fill:"url(#paint3_radial_1585_55266)"}),t("path",{opacity:"0.7",d:"M628.365 1174.42C758.218 1044.57 758.217 834.036 628.364 704.182C498.51 574.329 287.977 574.328 158.124 704.181C28.2713 834.033 28.272 1044.57 158.125 1174.42C287.979 1304.27 498.512 1304.27 628.365 1174.42Z",fill:"url(#paint4_radial_1585_55266)"}),t("path",{opacity:"0.1",d:"M795.717 29.8993C1030.28 -204.665 1030.28 -584.97 795.714 -819.536C561.148 -1054.1 180.843 -1054.1 -53.7211 -819.539C-288.285 -584.974 -288.284 -204.669 -53.7185 29.8967C180.847 264.462 561.152 264.464 795.717 29.8993Z",fill:"url(#paint5_radial_1585_55266)"}),t("path",{opacity:"0.3",d:"M767.02 1.20219C985.736 -217.513 985.734 -572.123 767.017 -790.84C548.301 -1009.56 193.691 -1009.56 -25.0242 -790.842C-243.74 -572.126 -243.739 -217.517 -25.0219 1.19982C193.695 219.917 548.304 219.918 767.02 1.20219Z",fill:"url(#paint6_radial_1585_55266)"}),t("path",{opacity:"0.5",d:"M713.909 -51.908C903.293 -241.292 903.292 -548.344 713.907 -737.728C524.523 -927.113 217.47 -927.114 28.0869 -737.731C-161.297 -548.347 -161.296 -241.295 28.089 -51.91C217.474 137.475 524.526 137.476 713.909 -51.908Z",fill:"url(#paint7_radial_1585_55266)"}),t("path",{opacity:"0.7",d:"M606.119 -159.699C735.972 -289.552 735.971 -500.085 606.118 -629.939C476.264 -759.792 265.731 -759.793 135.878 -629.94C6.0252 -500.088 6.02586 -289.554 135.879 -159.701C265.733 -29.8472 476.266 -29.8465 606.119 -159.699Z",fill:"url(#paint8_radial_1585_55266)"})]}),e("defs",{children:[e("linearGradient",{id:"paint0_linear_1585_55266",x1:"371",y1:"0",x2:"371",y2:"533",gradientUnits:"userSpaceOnUse",children:[t("stop",{offset:"0.028197",stopColor:"#0B0517"}),t("stop",{offset:"1",stopColor:"#190D31"})]}),e("radialGradient",{id:"paint1_radial_1585_55266",cx:"0",cy:"0",r:"1",gradientUnits:"userSpaceOnUse",gradientTransform:"translate(334.074 991.405) rotate(-45) scale(599.732 599.736)",children:[t("stop",{stopColor:"#7C3BFF",stopOpacity:"0.1"}),t("stop",{offset:"0.41",stopColor:"#7C3BFF",stopOpacity:"0.11"}),t("stop",{offset:"0.56",stopColor:"#7C3BFF",stopOpacity:"0.13"}),t("stop",{offset:"0.67",stopColor:"#7C3BFF",stopOpacity:"0.18"}),t("stop",{offset:"0.75",stopColor:"#7C3BFF",stopOpacity:"0.25"}),t("stop",{offset:"0.83",stopColor:"#7C3BFF",stopOpacity:"0.33"}),t("stop",{offset:"0.89",stopColor:"#7C3BFF",stopOpacity:"0.44"}),t("stop",{offset:"0.95",stopColor:"#7C3BFF",stopOpacity:"0.56"}),t("stop",{offset:"1",stopColor:"#7C3BFF",stopOpacity:"0.7"})]}),e("radialGradient",{id:"paint2_radial_1585_55266",cx:"0",cy:"0",r:"1",gradientUnits:"userSpaceOnUse",gradientTransform:"translate(368.968 957.913) rotate(-45) scale(560.978 560.981)",children:[t("stop",{stopColor:"#7C3BFF",stopOpacity:"0.1"}),t("stop",{offset:"0.38",stopColor:"#7C3BFF",stopOpacity:"0.11"}),t("stop",{offset:"0.52",stopColor:"#7C3BFF",stopOpacity:"0.13"}),t("stop",{offset:"0.62",stopColor:"#7C3BFF",stopOpacity:"0.18"}),t("stop",{offset:"0.69",stopColor:"#7C3BFF",stopOpacity:"0.25"}),t("stop",{offset:"0.76",stopColor:"#7C3BFF",stopOpacity:"0.33"}),t("stop",{offset:"0.82",stopColor:"#7C3BFF",stopOpacity:"0.44"}),t("stop",{offset:"0.88",stopColor:"#7C3BFF",stopOpacity:"0.57"}),t("stop",{offset:"0.93",stopColor:"#7C3BFF",stopOpacity:"0.72"}),t("stop",{offset:"0.97",stopColor:"#7C3BFF",stopOpacity:"0.88"}),t("stop",{offset:"1",stopColor:"#7C3BFF"})]}),e("radialGradient",{id:"paint3_radial_1585_55266",cx:"0",cy:"0",r:"1",gradientUnits:"userSpaceOnUse",gradientTransform:"translate(351.265 971.313) rotate(-45) scale(484.947 484.95)",children:[t("stop",{stopColor:"#7C3BFF",stopOpacity:"0.1"}),t("stop",{offset:"0.31",stopColor:"#7C3BFF",stopOpacity:"0.11"}),t("stop",{offset:"0.45",stopColor:"#7C3BFF",stopOpacity:"0.14"}),t("stop",{offset:"0.56",stopColor:"#7C3BFF",stopOpacity:"0.19"}),t("stop",{offset:"0.65",stopColor:"#7C3BFF",stopOpacity:"0.26"}),t("stop",{offset:"0.73",stopColor:"#7C3BFF",stopOpacity:"0.35"}),t("stop",{offset:"0.8",stopColor:"#7C3BFF",stopOpacity:"0.46"}),t("stop",{offset:"0.86",stopColor:"#7C3BFF",stopOpacity:"0.6"}),t("stop",{offset:"0.92",stopColor:"#7C3BFF",stopOpacity:"0.76"}),t("stop",{offset:"0.98",stopColor:"#7C3BFF",stopOpacity:"0.93"}),t("stop",{offset:"1",stopColor:"#7C3BFF"})]}),e("radialGradient",{id:"paint4_radial_1585_55266",cx:"0",cy:"0",r:"1",gradientUnits:"userSpaceOnUse",gradientTransform:"translate(362.239 963.064) rotate(-45) scale(332.216 332.218)",children:[t("stop",{stopColor:"#7C3BFF",stopOpacity:"0.1"}),t("stop",{offset:"0.31",stopColor:"#7C3BFF",stopOpacity:"0.11"}),t("stop",{offset:"0.45",stopColor:"#7C3BFF",stopOpacity:"0.14"}),t("stop",{offset:"0.56",stopColor:"#7C3BFF",stopOpacity:"0.19"}),t("stop",{offset:"0.65",stopColor:"#7C3BFF",stopOpacity:"0.26"}),t("stop",{offset:"0.73",stopColor:"#7C3BFF",stopOpacity:"0.35"}),t("stop",{offset:"0.8",stopColor:"#7C3BFF",stopOpacity:"0.46"}),t("stop",{offset:"0.86",stopColor:"#7C3BFF",stopOpacity:"0.6"}),t("stop",{offset:"0.92",stopColor:"#7C3BFF",stopOpacity:"0.76"}),t("stop",{offset:"0.98",stopColor:"#7C3BFF",stopOpacity:"0.93"}),t("stop",{offset:"1",stopColor:"#7C3BFF"})]}),e("radialGradient",{id:"paint5_radial_1585_55266",cx:"0",cy:"0",r:"1",gradientUnits:"userSpaceOnUse",gradientTransform:"translate(311.828 -342.716) rotate(-45) scale(599.733 599.736)",children:[t("stop",{stopColor:"#7C3BFF",stopOpacity:"0.1"}),t("stop",{offset:"0.41",stopColor:"#7C3BFF",stopOpacity:"0.11"}),t("stop",{offset:"0.56",stopColor:"#7C3BFF",stopOpacity:"0.13"}),t("stop",{offset:"0.67",stopColor:"#7C3BFF",stopOpacity:"0.18"}),t("stop",{offset:"0.75",stopColor:"#7C3BFF",stopOpacity:"0.25"}),t("stop",{offset:"0.83",stopColor:"#7C3BFF",stopOpacity:"0.33"}),t("stop",{offset:"0.89",stopColor:"#7C3BFF",stopOpacity:"0.44"}),t("stop",{offset:"0.95",stopColor:"#7C3BFF",stopOpacity:"0.56"}),t("stop",{offset:"1",stopColor:"#7C3BFF",stopOpacity:"0.7"})]}),e("radialGradient",{id:"paint6_radial_1585_55266",cx:"0",cy:"0",r:"1",gradientUnits:"userSpaceOnUse",gradientTransform:"translate(346.722 -376.208) rotate(-45) scale(560.977 560.981)",children:[t("stop",{stopColor:"#7C3BFF",stopOpacity:"0.1"}),t("stop",{offset:"0.38",stopColor:"#7C3BFF",stopOpacity:"0.11"}),t("stop",{offset:"0.52",stopColor:"#7C3BFF",stopOpacity:"0.13"}),t("stop",{offset:"0.62",stopColor:"#7C3BFF",stopOpacity:"0.18"}),t("stop",{offset:"0.69",stopColor:"#7C3BFF",stopOpacity:"0.25"}),t("stop",{offset:"0.76",stopColor:"#7C3BFF",stopOpacity:"0.33"}),t("stop",{offset:"0.82",stopColor:"#7C3BFF",stopOpacity:"0.44"}),t("stop",{offset:"0.88",stopColor:"#7C3BFF",stopOpacity:"0.57"}),t("stop",{offset:"0.93",stopColor:"#7C3BFF",stopOpacity:"0.72"}),t("stop",{offset:"0.97",stopColor:"#7C3BFF",stopOpacity:"0.88"}),t("stop",{offset:"1",stopColor:"#7C3BFF"})]}),e("radialGradient",{id:"paint7_radial_1585_55266",cx:"0",cy:"0",r:"1",gradientUnits:"userSpaceOnUse",gradientTransform:"translate(329.019 -362.807) rotate(-45) scale(484.947 484.95)",children:[t("stop",{stopColor:"#7C3BFF",stopOpacity:"0.1"}),t("stop",{offset:"0.31",stopColor:"#7C3BFF",stopOpacity:"0.11"}),t("stop",{offset:"0.45",stopColor:"#7C3BFF",stopOpacity:"0.14"}),t("stop",{offset:"0.56",stopColor:"#7C3BFF",stopOpacity:"0.19"}),t("stop",{offset:"0.65",stopColor:"#7C3BFF",stopOpacity:"0.26"}),t("stop",{offset:"0.73",stopColor:"#7C3BFF",stopOpacity:"0.35"}),t("stop",{offset:"0.8",stopColor:"#7C3BFF",stopOpacity:"0.46"}),t("stop",{offset:"0.86",stopColor:"#7C3BFF",stopOpacity:"0.6"}),t("stop",{offset:"0.92",stopColor:"#7C3BFF",stopOpacity:"0.76"}),t("stop",{offset:"0.98",stopColor:"#7C3BFF",stopOpacity:"0.93"}),t("stop",{offset:"1",stopColor:"#7C3BFF"})]}),e("radialGradient",{id:"paint8_radial_1585_55266",cx:"0",cy:"0",r:"1",gradientUnits:"userSpaceOnUse",gradientTransform:"translate(339.993 -371.057) rotate(-45) scale(332.216 332.218)",children:[t("stop",{stopColor:"#7C3BFF",stopOpacity:"0.1"}),t("stop",{offset:"0.31",stopColor:"#7C3BFF",stopOpacity:"0.11"}),t("stop",{offset:"0.45",stopColor:"#7C3BFF",stopOpacity:"0.14"}),t("stop",{offset:"0.56",stopColor:"#7C3BFF",stopOpacity:"0.19"}),t("stop",{offset:"0.65",stopColor:"#7C3BFF",stopOpacity:"0.26"}),t("stop",{offset:"0.73",stopColor:"#7C3BFF",stopOpacity:"0.35"}),t("stop",{offset:"0.8",stopColor:"#7C3BFF",stopOpacity:"0.46"}),t("stop",{offset:"0.86",stopColor:"#7C3BFF",stopOpacity:"0.6"}),t("stop",{offset:"0.92",stopColor:"#7C3BFF",stopOpacity:"0.76"}),t("stop",{offset:"0.98",stopColor:"#7C3BFF",stopOpacity:"0.93"}),t("stop",{offset:"1",stopColor:"#7C3BFF"})]}),t("clipPath",{id:"clip0_1585_55266",children:t("rect",{width:"929.477",height:"667",fill:"white",transform:"translate(-93.7383 -134)"})})]})]}),Nd=g.div`
|
|
277
277
|
position: absolute;
|
|
278
278
|
top: 50%;
|
|
279
279
|
left: 50%;
|
|
280
280
|
transform: translate(-50%, -50%);
|
|
281
281
|
z-index: ${({theme:e})=>e.v2.zIndex.modal};
|
|
282
|
-
`,
|
|
282
|
+
`,Id="onboarding-done",Ed=()=>{const{currentModal:o,setCurrentModal:n}=Lo(),a=()=>n("");return e(_o,{isOpen:o===Id,onClose:a,children:[t($d,{}),t(Nd,{children:e(V,{$gap:32,$alignItems:"center",children:[e(V,{$gap:24,$alignItems:"center",children:[t(re,{size:ce.L,weight:500,children:"Welcome to"}),t(vl,{size:260}),t(re,{size:ce.S,weight:400,children:"Your observability control plane is ready."})]}),t(oe,{label:"Get Started",rightIcon:ji,onClick:a})]})})]})},Od=g.div`
|
|
283
283
|
display: flex;
|
|
284
284
|
flex-direction: column;
|
|
285
285
|
gap: 8px;
|
|
286
286
|
padding: 4px 8px;
|
|
287
287
|
border-radius: 8px;
|
|
288
288
|
width: calc(100% - 16px);
|
|
289
|
-
`,
|
|
289
|
+
`,Ad=g.div`
|
|
290
290
|
white-space: pre;
|
|
291
291
|
overflow-x: auto;
|
|
292
|
-
`,
|
|
292
|
+
`,Dd=({name:o,recommended:n,toggleLabel:a,enabled:i,onEnabledChange:l,summary:s,toggleName:r})=>{const c=f();return e(Od,{children:[e(te,{$gap:8,$justifyContent:"space-between",children:[e(te,{$gap:4,children:[t(re,{size:ce.XS,color:c.v2.colors.white[500],nowrap:!0,children:o}),n&&t(Ee,{label:Mo,leftIcon:Wi,backgroundColor:c.v2.colors.purple[700],textColor:c.v2.colors.white[500],textSize:ce.XXXS})]}),t(q,{name:r??`sampling-onboarding-toggle-${o}`,label:a,labelAlign:Z.Left,value:i,onChange:l,size:ct.S})]}),t(Ad,{children:t(S,{parts:s})})]})},Rd=g.div`
|
|
293
293
|
position: relative;
|
|
294
294
|
display: flex;
|
|
295
295
|
align-items: center;
|
|
@@ -299,18 +299,18 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
299
299
|
background-color: ${({theme:e})=>e.v2.colors.black[500]};
|
|
300
300
|
border-top-left-radius: 18px;
|
|
301
301
|
border-top-right-radius: 18px;
|
|
302
|
-
`,
|
|
302
|
+
`,Fd=g.div`
|
|
303
303
|
position: absolute;
|
|
304
304
|
left: 16px;
|
|
305
305
|
top: 50%;
|
|
306
306
|
transform: translateY(-50%);
|
|
307
|
-
`,
|
|
307
|
+
`,Pd=g.div`
|
|
308
308
|
height: 16px;
|
|
309
309
|
width: 100%;
|
|
310
310
|
background-color: ${({theme:e})=>e.v2.colors.black[500]};
|
|
311
311
|
border-top-left-radius: 18px;
|
|
312
312
|
border-top-right-radius: 18px;
|
|
313
|
-
`,
|
|
313
|
+
`,Ld=g.div`
|
|
314
314
|
width: ${({$width:e})=>e}px;
|
|
315
315
|
display: flex;
|
|
316
316
|
flex-direction: column;
|
|
@@ -318,7 +318,7 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
318
318
|
gap: 22px;
|
|
319
319
|
padding: 8px 32px 32px 32px;
|
|
320
320
|
background-color: ${({theme:e})=>e.v2.colors.black[500]};
|
|
321
|
-
`,
|
|
321
|
+
`,_d=e=>t(Gi,{rotate:90,...e}),Md=({children:o,center:n,onNext:a,nextLabel:i=Bo,nextLoading:l})=>e(te,{$gap:8,$justifyContent:n?"center":"flex-end",$padding:"0 16px 16px 16px",children:[o,a&&t(oe,{"data-id":"sampling-onboarding-btn-next",label:i,rightIcon:_d,variant:ae.Primary,size:ne.M,onClick:a,loading:l})]}),Bd=e=>t(Gi,{rotate:-90,...e}),zd=({title:o,onBack:n})=>{const a=f();return e(Rd,{$hasBack:!!n,children:[n&&t(Fd,{children:t(qe,{"data-id":"sampling-onboarding-back",icon:Bd,size:Ze.M,onClick:n})}),t(re,{size:ce.M,weight:500,color:a.v2.colors.white[500],align:"center",children:o})]})},Xd=g.div`
|
|
322
322
|
box-sizing: border-box;
|
|
323
323
|
width: ${({$width:e})=>e??"100%"};
|
|
324
324
|
${({$fillHeight:e})=>e&&b`
|
|
@@ -331,16 +331,16 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
331
331
|
padding: 16px;
|
|
332
332
|
border-radius: 16px;
|
|
333
333
|
background-color: ${({theme:e})=>e.v2.colors.silver[1e3]};
|
|
334
|
-
`,
|
|
334
|
+
`,Vd=({children:e,fillHeight:o,width:n})=>t(Xd,{$fillHeight:o,$width:n,children:e}),Ud=g.ul`
|
|
335
335
|
margin: 0;
|
|
336
336
|
padding: 0;
|
|
337
337
|
list-style: disc;
|
|
338
|
-
`,
|
|
338
|
+
`,Hd=g.li`
|
|
339
339
|
margin-left: 18px;
|
|
340
340
|
& + & {
|
|
341
341
|
margin-top: 6px;
|
|
342
342
|
}
|
|
343
|
-
`,
|
|
343
|
+
`,jd=({items:e,color:o})=>{const n=f(),a=o||n.v2.colors.silver[200];return t(Ud,{children:e.map((e,o)=>t(Hd,{style:{color:a},children:t(re,{size:ce.XXS,color:a,children:e})},o))})},Wd=({items:o})=>{const n=f();return t(V,{$gap:16,children:o.map((o,a)=>e(te,{$gap:8,$alignItems:"flex-start",children:[e(re,{size:ce.XS,color:n.v2.colors.silver[200],weight:400,children:[a+1,"."]}),e(V,{$gap:2,children:[t(re,{size:ce.XS,color:n.v2.colors.white[500],weight:500,children:o.title}),t(re,{size:ce.XS,color:n.v2.colors.silver[200],children:o.description})]})]},a))})},Gd=({message:e})=>t(me,{status:ge.Default,message:e,fullWidth:!0,smallIcon:!0}),Kd=g.div`
|
|
344
344
|
width: calc(100% - 16px);
|
|
345
345
|
padding: 8px;
|
|
346
346
|
display: flex;
|
|
@@ -348,12 +348,12 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
348
348
|
gap: 4px;
|
|
349
349
|
border-radius: 16px;
|
|
350
350
|
background-color: ${({theme:e})=>e.v2.colors.silver[800]};
|
|
351
|
-
`,
|
|
351
|
+
`,Yd=g.div`
|
|
352
352
|
display: flex;
|
|
353
353
|
align-items: center;
|
|
354
354
|
gap: 8px;
|
|
355
355
|
padding: 4px 8px 12px 8px;
|
|
356
|
-
`,
|
|
356
|
+
`,Jd=g.div`
|
|
357
357
|
width: calc(100% - 16px);
|
|
358
358
|
display: flex;
|
|
359
359
|
flex-direction: column;
|
|
@@ -361,20 +361,20 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
361
361
|
padding: 8px;
|
|
362
362
|
border-radius: 12px;
|
|
363
363
|
background-color: ${({theme:e})=>e.v2.colors.silver[900]};
|
|
364
|
-
`,
|
|
364
|
+
`,qd=({children:e})=>{const o=f();return t(re,{size:ce.S,weight:500,color:o.v2.colors.white[500],align:"center",children:e})},Zd=g.div`
|
|
365
365
|
white-space: pre-line;
|
|
366
|
-
`,
|
|
366
|
+
`,Qd=({enabled:n,onEnabledChange:a,onBack:i,onNext:l})=>{const s=f(),c=r(()=>w({enabled:n,keepPercentage:0}),[n]);return e(o,{children:[t(zd,{title:zo,onBack:i}),e(Ld,{$width:854,children:[t(qd,{children:Xo}),e(V,{$gap:8,$width:"100%",children:[t(Vd,{children:t(Zd,{children:t(re,{size:ce.XXS,color:s.v2.colors.silver[200],children:Vo})})}),e(V,{$gap:8,$width:"100%",children:[e(Kd,{children:[t(Yd,{children:t(re,{size:ce.S,weight:500,color:s.v2.colors.white[500],children:Uo})}),t(Jd,{children:t(Dd,{name:jo,recommended:!0,toggleLabel:Ho,enabled:n,onEnabledChange:a,summary:c,toggleName:"sampling-onboarding-noisy-toggle"})})]}),t(Gd,{message:Wo})]})]})]}),t(Md,{onNext:l})]})},eu=e=>t(Gi,{rotate:90,...e}),tu=({onClose:n})=>{const a=f();return e(o,{children:[t(Pd,{}),e(Ld,{$width:732,children:[t(Go,{icon:zi}),e(V,{$gap:16,$alignItems:"center",$width:"100%",children:[t(re,{size:ce.M,weight:500,color:a.v2.colors.white[500],children:Ko}),Yo.split("\n").map(e=>t(qd,{children:e},e)),e(Vd,{children:[t(re,{size:ce.XS,color:a.v2.colors.silver[200],children:Jo}),t(jd,{color:a.v2.colors.white[500],items:[qo,Zo,Qo]})]})]})]}),t(Md,{center:!0,children:t(oe,{"data-id":"sampling-onboarding-btn-go-to",label:en,rightIcon:eu,variant:ae.Primary,size:ne.M,onClick:n})})]})},ou=e=>t(Gi,{rotate:90,...e}),nu=g.div`
|
|
367
367
|
display: flex;
|
|
368
368
|
flex-direction: column;
|
|
369
369
|
align-items: center;
|
|
370
370
|
gap: 8px;
|
|
371
371
|
width: 100%;
|
|
372
|
-
`,
|
|
372
|
+
`,au=({onSkip:n,onNext:a})=>{const i=f();return e(o,{children:[t(Pd,{}),e(Ld,{$width:732,children:[t(Go,{icon:zi}),e(V,{$gap:16,$alignItems:"center",$width:"100%",children:[e(nu,{children:[t(re,{size:ce.M,weight:500,color:i.v2.colors.white[500],children:tn}),t(qd,{children:on})]}),e(Vd,{children:[t(re,{size:ce.XS,color:i.v2.colors.silver[200],children:nn}),t(Wd,{items:[{title:ln,description:an},{title:rn,description:sn},{title:dn,description:cn}]}),t(Gd,{message:un})]})]})]}),e(Md,{center:!0,children:[t(oe,{"data-id":"sampling-onboarding-btn-skip",label:pn,variant:ae.Secondary,onClick:n}),t(oe,{"data-id":"sampling-onboarding-btn-start",label:hn,rightIcon:ou,variant:ae.Primary,onClick:a})]})]})},iu=g.div`
|
|
373
373
|
display: flex;
|
|
374
374
|
align-items: stretch;
|
|
375
375
|
gap: 16px;
|
|
376
376
|
width: 100%;
|
|
377
|
-
`,
|
|
377
|
+
`,lu=g.div`
|
|
378
378
|
flex: 1;
|
|
379
379
|
display: flex;
|
|
380
380
|
flex-direction: column;
|
|
@@ -394,18 +394,18 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
394
394
|
background-color: ${t.v2.colors.silver[700]};
|
|
395
395
|
}
|
|
396
396
|
`}
|
|
397
|
-
`,
|
|
397
|
+
`,su=g.div`
|
|
398
398
|
display: flex;
|
|
399
399
|
align-items: center;
|
|
400
400
|
gap: 8px;
|
|
401
401
|
padding: 12px 16px;
|
|
402
|
-
`,
|
|
402
|
+
`,ru=g.div`
|
|
403
403
|
flex: 1;
|
|
404
404
|
padding: 8px;
|
|
405
405
|
display: flex;
|
|
406
406
|
flex-direction: column;
|
|
407
407
|
gap: 8px;
|
|
408
|
-
`,
|
|
408
|
+
`,cu=g.div`
|
|
409
409
|
flex: 1;
|
|
410
410
|
display: flex;
|
|
411
411
|
flex-direction: column;
|
|
@@ -413,17 +413,17 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
413
413
|
padding: 12px;
|
|
414
414
|
border-radius: 12px;
|
|
415
415
|
background-color: ${({theme:e,$selected:t})=>t?e.v2.colors.purple[900]:e.v2.colors.silver[900]};
|
|
416
|
-
`,
|
|
416
|
+
`,du=g.div`
|
|
417
417
|
display: flex;
|
|
418
418
|
justify-content: flex-end;
|
|
419
|
-
`,
|
|
419
|
+
`,uu=g.div`
|
|
420
420
|
display: flex;
|
|
421
421
|
align-items: center;
|
|
422
422
|
gap: 8px;
|
|
423
423
|
padding: 4px 12px 4px 4px;
|
|
424
424
|
border-radius: 8px;
|
|
425
425
|
background-color: ${({theme:e})=>e.v2.colors.yellow[1e3]};
|
|
426
|
-
`,
|
|
426
|
+
`,pu=g.div`
|
|
427
427
|
display: flex;
|
|
428
428
|
align-items: center;
|
|
429
429
|
justify-content: center;
|
|
@@ -431,13 +431,13 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
431
431
|
height: 24px;
|
|
432
432
|
border-radius: 6px;
|
|
433
433
|
background-color: ${({theme:e})=>e.v2.colors.yellow[900]};
|
|
434
|
-
`,
|
|
434
|
+
`,hu=({selected:o,onSelect:n,name:a,description:i,badgeProps:l,bullets:s,warning:r,onReadMore:c})=>{const d=f(),u=o?d.v2.colors.white[500]:d.v2.colors.silver[200];return e(lu,{$selected:o,onClick:n,children:[e(su,{children:[t(On,{"data-id":`sampling-onboarding-radio-${a}`,value:o,onChange:n,size:An.L}),t(zi,{size:24,fill:d.v2.colors.white[500]}),t(re,{size:ce.S,weight:500,color:d.v2.colors.white[500],children:a})]}),e(ru,{children:[e(cu,{$selected:o,children:[e(V,{$gap:8,children:[t(Ee,{...l,textSize:ce.XXXS}),t(re,{size:ce.XXS,color:u,children:i})]}),s&&s.length>0&&t(jd,{color:u,items:s}),r&&e(uu,{children:[t(pu,{children:t(Xi,{size:18,fill:d.v2.colors.yellow[500]})}),t(re,{size:ce.XXXS,color:d.v2.colors.yellow[500],children:r})]})]}),c&&t(du,{children:t(oe,{"data-id":`sampling-onboarding-btn-read-more-${a}`,label:Dn,rightIcon:li,variant:ae.Text,size:ne.S,onClick:e=>{e.stopPropagation(),c()}})})]})]})},mu=({strategy:n,onStrategyChange:a,onBack:i,onNext:l,docsUrl:s})=>{const r=f(),c=s?()=>window.open(s,"_blank"):void 0;return e(o,{children:[t(zd,{title:mn,onBack:i}),e(Ld,{$width:854,children:[t(qd,{children:gn}),e(iu,{children:[t(hu,{selected:"keep-list"===n,onSelect:()=>a("keep-list"),name:Sn,description:Cn,badgeProps:{label:yn,backgroundColor:r.v2.colors.purple[500],textColor:r.v2.colors.white[500]},bullets:[bn,vn],warning:fn,onReadMore:c}),t(hu,{selected:"drop-list"===n,onSelect:()=>a("drop-list"),name:$n,description:Tn,badgeProps:{label:kn,backgroundColor:r.v2.colors.green[500],textColor:r.v2.colors.black[500]},bullets:[wn,xn],onReadMore:c}),t(hu,{selected:"advanced"===n,onSelect:()=>a("advanced"),name:En,description:In,badgeProps:{label:Nn,backgroundColor:r.v2.colors.blue[700],textColor:r.v2.colors.white[500]},onReadMore:c})]})]}),t(Md,{onNext:l})]})},gu=({onBack:n,onNext:a,submitting:i})=>{const l=f(),s=r(()=>[{title:Ln,bullets:[Rn,Fn,Pn]},{title:Vn,bullets:[_n,Mn,Bn,zn,Xn]}],[]);return e(o,{children:[t(zd,{title:Un,onBack:n}),e(Ld,{$width:854,children:[t(qd,{children:Hn}),t(te,{$gap:16,$width:"100%",$alignItems:"stretch",children:s.map((o,n)=>e(Vd,{fillHeight:!0,width:"50%",children:[t(re,{size:ce.XS,color:l.v2.colors.white[500],children:o.title}),t(jd,{items:o.bullets})]},n))}),t(Gd,{message:jn})]}),t(Md,{onNext:a,nextLoading:i})]})},fu=g.div`
|
|
435
435
|
white-space: pre-line;
|
|
436
|
-
`,
|
|
436
|
+
`,bu=({errorPresetEnabled:n,onErrorPresetChange:a,onBack:i,onNext:l,submitting:s})=>{const c=f(),d=r(()=>x(n?{disabled:!1}:null),[n]);return e(o,{children:[t(zd,{title:Wn,onBack:i}),e(Ld,{$width:854,children:[t(qd,{children:Gn}),e(V,{$gap:8,$width:"100%",children:[e(Vd,{children:[t(fu,{children:t(re,{size:ce.XXS,color:c.v2.colors.silver[200],children:Kn})}),t(Gd,{message:jn})]}),e(Kd,{children:[e(Yd,{children:[t(re,{size:ce.S,weight:500,color:c.v2.colors.white[500],children:Yn}),t(Ei,{size:16,fill:c.v2.colors.silver[200]})]}),t(Jd,{children:t(Dd,{name:qn,recommended:!0,toggleLabel:Jn,enabled:n,onEnabledChange:a,summary:d,toggleName:"sampling-onboarding-drop-error-preset-toggle"})})]})]})]}),t(Md,{onNext:l,nextLoading:s})]})},vu=g.div`
|
|
437
437
|
white-space: pre-line;
|
|
438
|
-
`,
|
|
438
|
+
`,yu=g.div`
|
|
439
439
|
width: fit-content;
|
|
440
|
-
`,fu=["50","25","10","1","0.1"],bu=({value:o,onChange:n,label:a})=>{const i=f(),l=r(()=>fu.map(e=>({value:e,label:`${e}%`,selectedBgColor:i.v2.colors.purple[900],selectedBorderColor:i.v2.colors.purple[400]})),[i]);return e(V,{$gap:8,children:[t(re,{size:ce.XS,color:i.v2.colors.white[500],children:a}),t(gu,{children:t(ue,{"data-id":"sampling-onboarding-ambient",options:l,selected:o,setSelected:n})})]})},vu=({errorPresetEnabled:n,onErrorPresetChange:a,ambientPercentage:i,onAmbientPercentageChange:l,onBack:s,onNext:c,submitting:d})=>{const u=f(),p=r(()=>x(n?{disabled:!1}:null),[n]);return e(o,{children:[t(Ld,{title:Jn,onBack:s}),e(Dd,{$width:854,children:[t(Gd,{children:qn}),e(V,{$gap:8,$width:"100%",children:[e(Md,{children:[t(mu,{children:t(re,{size:ce.XXS,color:u.v2.colors.silver[200],children:Zn})}),t(Xd,{items:[Qn,ea,ta,oa,na]}),t(Ud,{message:Un})]}),e(Hd,{children:[e(jd,{children:[t(re,{size:ce.S,weight:500,color:u.v2.colors.white[500],children:aa}),t(Ni,{size:16,fill:u.v2.colors.silver[200]})]}),t(Wd,{children:t(Nd,{name:Yn,recommended:!0,toggleLabel:Kn,enabled:n,onEnabledChange:a,summary:p,toggleName:"sampling-onboarding-error-preset-toggle"})}),t(Wd,{children:t(bu,{value:i,onChange:l,label:ia})})]})]})]}),t(Fd,{onNext:c,nextLoading:d})]})},yu=({isOpen:e,onClose:o,k8sHealthProbesConfig:a,samplingId:i,docsUrl:s,updateK8sHealthProbesConfig:r,createHighlyRelevantOperationRule:d,createCostReductionRule:u})=>{const[p,h]=l("welcome"),[m,g]=l(!0),[f,b]=l("keep-list"),[v,y]=l(!0),[C,S]=l("25"),[w,x]=l(!1);n(()=>{e&&(h("welcome"),g(a?.enabled??!0),b("keep-list"),y(!0),S("25"),x(!1))},[e,a?.enabled]);const k=c(async()=>{const e=i??"default",t=[];m!==(a?.enabled??!1)&&t.push(r(m,a?.keepPercentage??0)),"advanced"!==f&&v&&t.push(d(e,{name:"Auto - Keep All Error Traces",disabled:!1,error:!0,sourceScopes:null,operation:null,percentageAtLeast:null})),"keep-list"===f&&t.push(u(e,{name:"Onboarding - Ambient sampling",disabled:!1,sourceScopes:null,operation:null,percentageAtMost:parseFloat(C)})),x(!0);try{await Promise.all(t),h("success")}catch{}finally{x(!1)}},[i,r,m,a?.enabled,a?.keepPercentage,f,v,C,d,u]);let T=null;switch(p){case"welcome":T=t(eu,{onSkip:o,onNext:()=>h("noisy")});break;case"noisy":T=t(Yd,{enabled:m,onEnabledChange:g,onBack:()=>h("welcome"),onNext:()=>h("strategy")});break;case"strategy":T=t(du,{strategy:f,onStrategyChange:b,onBack:()=>h("noisy"),onNext:()=>{h("keep-list"===f?"keep-list":"drop-list"===f?"drop-list":"advanced")},docsUrl:s});break;case"keep-list":T=t(vu,{errorPresetEnabled:v,onErrorPresetChange:y,ambientPercentage:C,onAmbientPercentageChange:S,onBack:()=>h("strategy"),onNext:k,submitting:w});break;case"drop-list":T=t(hu,{errorPresetEnabled:v,onErrorPresetChange:y,onBack:()=>h("strategy"),onNext:k,submitting:w});break;case"advanced":T=t(uu,{onBack:()=>h("strategy"),onNext:k,submitting:w});break;case"success":T=t(qd,{onClose:o})}return t(Po,{isOpen:e,onClose:o,children:T})};var Cu,Su;!function(e){e.BulkConfig="bulk-config",e.BulkSource="bulk-source",e.BulkDestination="bulk-destination",e.BulkAction="bulk-action",e.BulkInstrumentationRule="bulk-instrumentation-rule",e.Delete="delete"}(Cu||(Cu={})),function(e){e.Id="id",e.Name="name",e.Type="type",e.Status="status",e.OdigosVersion="odigosVersion",e.ConnectedSince="connectedSince",e.LastActivity="lastActivity"}(Su||(Su={}));const wu=[{key:Su.Name,label:"Name"},{key:Su.Type,label:"Type",textAlign:"right"},{key:Su.Status,label:"Status"},{key:Su.OdigosVersion,label:"Odigos Version"},{key:Su.ConnectedSince,label:"Connected Since"},{key:Su.LastActivity,label:"Last Activity"}],xu=(e,t)=>{const o=e.find(e=>e.key===Su.Id)?.rawValue;return t(o?.toString()||"")},ku=e=>{const{connections:t,configMinSupportedVersion:o,snapshotMinSupportedVersion:n,onDelete:a,onAddSource:i,onAddDestination:l,onAddAction:s,onAddInstrumentationRule:r,onEditConfiguration:c}=e;return({cells:e})=>{if(!(e=>e.find(e=>e.key===Su.Status)?.rawValue===ge.Success)(e))return[{id:Ro(),label:"Delete Connection",rightIcon:ri,onClick:()=>xu(e,a)}];const d=xu(e,e=>{const n=t.find(t=>t.id===e);return!!n&&k(n.odigosVersion,o)}),u=xu(e,e=>{const o=t.find(t=>t.id===e);return!!o&&k(o.odigosVersion,n)}),p=[];return i&&p.push({id:Ro(),tooltip:u?Re.ADD_SOURCE:`To use this feature, please upgrade to Odigos v${n} or later.`,rightIcon:Ci,disabled:!u,onClick:()=>xu(e,i)}),l&&p.push({id:Ro(),tooltip:Re.ADD_DESTINATION,rightIcon:mi,onClick:()=>xu(e,l)}),s&&p.push({id:Ro(),tooltip:Re.ADD_ACTION,rightIcon:hi,onClick:()=>xu(e,s)}),r&&p.push({id:Ro(),tooltip:Re.ADD_INSTRUMENTATION_RULE,rightIcon:yi,onClick:()=>xu(e,r)}),c&&p.push({id:Ro(),tooltip:d?"Edit Configuration":`To use this feature, please upgrade to Odigos v${o} or later.`,rightIcon:wi,disabled:!d,onClick:()=>xu(e,c)}),p}},Tu=({tableRowsMaxHeight:o,connections:a,getConnections:i,onClickConnection:s,deleteConnection:d,configMinSupportedVersion:u=0,getEffectiveConfig:p,applyConfigurations:h,snapshotMinSupportedVersion:m=0,getAllClusterSnapshots:g,persistSources:b,getDestinationCategories:v,getPotentialDestinations:C,testConnection:S,createDestination:w,updateDestination:x,createAction:T,createInstrumentationRule:$})=>{const I=f(),{isVm:N}=y(),{formatTimeAgo:E}=Ot(),[A,O]=l(!1),[D,R]=l(a||[]),F=c(async()=>{try{O(!0),R(await i()??[])}catch(e){}finally{O(!1)}},[]);n(()=>{D.length||F()},[]);const[P,L]=l(""),[_,M]=l(null),[z,B]=l([]),X=r(()=>_===Cu.BulkConfig?u:_===Cu.BulkSource?m:0,[_,u,m]),{supportedConnections:V,supportedConnectionIds:U}=r(()=>{const e=((e,t)=>e.filter(e=>{const o=e.status===ge.Success,n=k(e.odigosVersion,t);return o&&n}))(D,X);return{supportedConnections:e,supportedConnectionIds:e.map(e=>e.id)}},[D.length,X]);n(()=>{if(!_||_===Cu.Delete)return;const e=z.filter(e=>!U.includes(e));e.length&&B(t=>t.filter(t=>!e.includes(t)))},[_,z.length,U.length]);const H=r(()=>D.filter(e=>!P||e.name.toLowerCase().includes(P.toLowerCase())).map(e=>({cells:[{key:Su.Id,rawValue:e.id},{key:Su.Name,rawValue:e.name},{key:Su.Type,rawValue:e.type},{key:Su.Status,rawValue:e.status,component:()=>(e=>{const o=e===ge.Success?"Connection live":"Connection lost",n=e===ge.Success?bi:vi;return t(Ee,{status:e,label:o,leftIcon:n})})(e.status)},{key:Su.OdigosVersion,rawValue:e.odigosVersion},{key:Su.ConnectedSince,rawValue:e.connectedAt?E(e.connectedAt):"-"},{key:Su.LastActivity,rawValue:e.lastSeenAt?E(e.lastSeenAt):"-"}],onClick:e.status!==ge.Success||_?void 0:()=>s(e),isSelected:z.includes(e.id),onSelect:()=>B(t=>Array.from(new Set([...t,e.id]))),onDeselect:()=>B(t=>t.filter(t=>t!==e.id)),hideCheckbox:e.status!==ge.Success||_===Cu.BulkConfig&&!k(e.odigosVersion,u)||_===Cu.BulkSource&&!k(e.odigosVersion,m)})),[D,z,P,_,u,m]),j=r(()=>{const e=(e,t)=>{B([e]),M(t)};return ku({connections:D,configMinSupportedVersion:u,snapshotMinSupportedVersion:m,onDelete:t=>e(t,Cu.Delete),onAddSource:!N&&g&&b?t=>e(t,Cu.BulkSource):void 0,onAddDestination:!N&&v&&C&&w?t=>e(t,Cu.BulkDestination):void 0,onAddAction:!N&&T?t=>e(t,Cu.BulkAction):void 0,onAddInstrumentationRule:!N&&$?t=>e(t,Cu.BulkInstrumentationRule):void 0,onEditConfiguration:!N&&p&&h?t=>e(t,Cu.BulkConfig):void 0})},[N,D,u,p,h,m,g,b,v,C,w,T,$]),W=r(()=>(e=>{const{onCancel:t,onAddSource:o,onAddDestination:n,onAddAction:a,onAddInstrumentationRule:i,onManageConfigurations:l}=e,s=[];o&&s.push({id:Ro(),type:Xt.Button,buttonProps:{variant:ae.Primary,size:ne.S,label:"Add Sources",rightIcon:Ci,onClick:o}});const r=[n?{id:Cu.BulkDestination,label:Re.ADD_DESTINATION,icon:mi}:null,a?{id:Cu.BulkAction,label:Re.ADD_ACTION,icon:hi}:null,i?{id:Cu.BulkInstrumentationRule,label:Re.ADD_INSTRUMENTATION_RULE,icon:yi}:null,l?{id:Cu.BulkConfig,label:"Manage Configurations",icon:wi}:null];return r.some(Boolean)&&s.push({id:Ro(),type:Xt.ButtonDropData,buttonProps:{variant:ae.Secondary,size:ne.S,label:"Bulk Operations",onClick:e=>{e===Cu.BulkSource?o?.():e===Cu.BulkDestination?n?.():e===Cu.BulkAction?a?.():e===Cu.BulkInstrumentationRule?i?.():e===Cu.BulkConfig&&l?.()}},dropDataProps:{alignX:Do.Left,items:r}}),s.push({id:Ro(),type:Xt.Button,buttonProps:{variant:ae.Text,size:ne.S,label:bt.CANCEL,onClick:t}}),s})({onCancel:()=>B([]),onAddSource:!N&&g&&b?()=>M(Cu.BulkSource):void 0,onAddDestination:!N&&v&&C&&w?()=>M(Cu.BulkDestination):void 0,onAddAction:!N&&T?()=>M(Cu.BulkAction):void 0,onAddInstrumentationRule:!N&&$?()=>M(Cu.BulkInstrumentationRule):void 0,onManageConfigurations:!N&&p&&h?()=>M(Cu.BulkConfig):void 0}),[N,p,h,g,b,v,C,w,T,$]);return t(la,{children:e(Ue,{richTitle:{icon:Gi,title:Re.CONNECTIONS,badge:{label:D.length.toString(),status:st.Unknown}},search:{placeholder:"Search by cluster name",value:P,onChange:e=>L(e),width:"300px"},actions:[{id:Ro(),type:Xt.Button,buttonProps:{variant:ae.Secondary,size:ne.S,leftIcon:$i,onClick:F,disabled:A}}],children:[t(lo,{variant:so.Pretty,maxHeight:o,headerBackgroundColor:I.v2.colors.silver[1e3],isLoading:A,withCheckboxes:!0,columns:wu,rows:H,rowActionsPushRightPosition:_?`calc(${vl} - 24px)`:void 0,getRowActions:j}),_===Cu.BulkConfig&&p&&h&&t(ir,{onClose:()=>M(null),connections:V,selectedConnectionIds:z,setSelectedConnectionIds:B,getEffectiveConfig:p,onApply:h}),_===Cu.BulkSource&&g&&b&&t(Rl,{selectedConnectionIds:z,children:t(nr,{onClose:()=>M(null),selectedConnectionIds:z,setSelectedConnectionIds:B,getAllClusterSnapshots:g,persistSources:async e=>await(b?.(e))})}),_===Cu.BulkDestination&&v&&C&&S&&w&&x&&t(Fl,{children:t(Ls,{onClose:()=>M(null),selectedConnectionIds:z,setSelectedConnectionIds:B,getDestinationCategories:v,getPotentialDestinations:C,testConnection:e=>S(e,z),createDestination:e=>w(e,z),updateDestination:(e,t)=>x(e,t,z)})}),_===Cu.BulkAction&&T&&t(Pl,{children:t($s,{onClose:()=>M(null),selectedConnectionIds:z,setSelectedConnectionIds:B,createAction:e=>T(e,z)})}),_===Cu.BulkInstrumentationRule&&$&&t(Ll,{children:t(_s,{onClose:()=>M(null),selectedConnectionIds:z,setSelectedConnectionIds:B,createInstrumentationRule:e=>$(e,z)})}),t(ml,{target:"connection",isOpen:_===Cu.Delete,onClose:()=>{B([]),M(null)},onApprove:async()=>{const e=z[0];e&&(await d(e),await F())}}),t(sa,{isOpen:!!z.length&&!_,richTitle:{icon:li,title:"Selected Clusters",badge:{label:z.length}},actions:W})]})})},$u=g.div`
|
|
440
|
+
`,Cu=["50","25","10","1","0.1"],Su=({value:o,onChange:n,label:a})=>{const i=f(),l=r(()=>Cu.map(e=>({value:e,label:`${e}%`,selectedBgColor:i.v2.colors.purple[900],selectedBorderColor:i.v2.colors.purple[400]})),[i]);return e(V,{$gap:8,children:[t(re,{size:ce.XS,color:i.v2.colors.white[500],children:a}),t(yu,{children:t(ue,{"data-id":"sampling-onboarding-ambient",options:l,selected:o,setSelected:n})})]})},wu=({errorPresetEnabled:n,onErrorPresetChange:a,ambientPercentage:i,onAmbientPercentageChange:l,onBack:s,onNext:c,submitting:d})=>{const u=f(),p=r(()=>x(n?{disabled:!1}:null),[n]);return e(o,{children:[t(zd,{title:Zn,onBack:s}),e(Ld,{$width:854,children:[t(qd,{children:Qn}),e(V,{$gap:8,$width:"100%",children:[e(Vd,{children:[t(vu,{children:t(re,{size:ce.XXS,color:u.v2.colors.silver[200],children:ea})}),t(jd,{items:[ta,oa,na,aa,ia]}),t(Gd,{message:jn})]}),e(Kd,{children:[e(Yd,{children:[t(re,{size:ce.S,weight:500,color:u.v2.colors.white[500],children:la}),t(Ei,{size:16,fill:u.v2.colors.silver[200]})]}),t(Jd,{children:t(Dd,{name:qn,recommended:!0,toggleLabel:Jn,enabled:n,onEnabledChange:a,summary:p,toggleName:"sampling-onboarding-error-preset-toggle"})}),t(Jd,{children:t(Su,{value:i,onChange:l,label:sa})})]})]})]}),t(Md,{onNext:c,nextLoading:d})]})},xu=({isOpen:e,onClose:o,k8sHealthProbesConfig:a,samplingId:i,docsUrl:s,updateK8sHealthProbesConfig:r,createHighlyRelevantOperationRule:d,createCostReductionRule:u})=>{const[p,h]=l("welcome"),[m,g]=l(!0),[f,b]=l("keep-list"),[v,y]=l(!0),[C,S]=l("25"),[w,x]=l(!1);n(()=>{e&&(h("welcome"),g(a?.enabled??!0),b("keep-list"),y(!0),S("25"),x(!1))},[e,a?.enabled]);const k=c(async()=>{const e=i??"default",t=[];m!==(a?.enabled??!1)&&t.push(r(m,a?.keepPercentage??0)),"advanced"!==f&&v&&t.push(d(e,{name:"Auto - Keep All Error Traces",disabled:!1,error:!0,sourceScopes:null,operation:null,percentageAtLeast:null})),"keep-list"===f&&t.push(u(e,{name:"Onboarding - Ambient sampling",disabled:!1,sourceScopes:null,operation:null,percentageAtMost:parseFloat(C)})),x(!0);try{await Promise.all(t),h("success")}catch{}finally{x(!1)}},[i,r,m,a?.enabled,a?.keepPercentage,f,v,C,d,u]);let T=null;switch(p){case"welcome":T=t(au,{onSkip:o,onNext:()=>h("noisy")});break;case"noisy":T=t(Qd,{enabled:m,onEnabledChange:g,onBack:()=>h("welcome"),onNext:()=>h("strategy")});break;case"strategy":T=t(mu,{strategy:f,onStrategyChange:b,onBack:()=>h("noisy"),onNext:()=>{h("keep-list"===f?"keep-list":"drop-list"===f?"drop-list":"advanced")},docsUrl:s});break;case"keep-list":T=t(wu,{errorPresetEnabled:v,onErrorPresetChange:y,ambientPercentage:C,onAmbientPercentageChange:S,onBack:()=>h("strategy"),onNext:k,submitting:w});break;case"drop-list":T=t(bu,{errorPresetEnabled:v,onErrorPresetChange:y,onBack:()=>h("strategy"),onNext:k,submitting:w});break;case"advanced":T=t(gu,{onBack:()=>h("strategy"),onNext:k,submitting:w});break;case"success":T=t(tu,{onClose:o})}return t(_o,{isOpen:e,onClose:o,children:T})};var ku,Tu;!function(e){e.BulkConfig="bulk-config",e.BulkSource="bulk-source",e.BulkDestination="bulk-destination",e.BulkAction="bulk-action",e.BulkInstrumentationRule="bulk-instrumentation-rule",e.Delete="delete"}(ku||(ku={})),function(e){e.Id="id",e.Name="name",e.Type="type",e.Status="status",e.OdigosVersion="odigosVersion",e.ConnectedSince="connectedSince",e.LastActivity="lastActivity"}(Tu||(Tu={}));const $u=[{key:Tu.Name,label:"Name"},{key:Tu.Type,label:"Type",textAlign:"right"},{key:Tu.Status,label:"Status"},{key:Tu.OdigosVersion,label:"Odigos Version"},{key:Tu.ConnectedSince,label:"Connected Since"},{key:Tu.LastActivity,label:"Last Activity"}],Nu=(e,t)=>{const o=e.find(e=>e.key===Tu.Id)?.rawValue;return t(o?.toString()||"")},Iu=e=>{const{connections:t,configMinSupportedVersion:o,snapshotMinSupportedVersion:n,onDelete:a,onAddSource:i,onAddDestination:l,onAddAction:s,onAddInstrumentationRule:r,onEditConfiguration:c}=e;return({cells:e})=>{if(!(e=>e.find(e=>e.key===Tu.Status)?.rawValue===ge.Success)(e))return[{id:Po(),label:"Delete Connection",rightIcon:ci,onClick:()=>Nu(e,a)}];const d=Nu(e,e=>{const n=t.find(t=>t.id===e);return!!n&&k(n.odigosVersion,o)}),u=Nu(e,e=>{const o=t.find(t=>t.id===e);return!!o&&k(o.odigosVersion,n)}),p=[];return i&&p.push({id:Po(),tooltip:u?Re.ADD_SOURCE:`To use this feature, please upgrade to Odigos v${n} or later.`,rightIcon:Si,disabled:!u,onClick:()=>Nu(e,i)}),l&&p.push({id:Po(),tooltip:Re.ADD_DESTINATION,rightIcon:gi,onClick:()=>Nu(e,l)}),s&&p.push({id:Po(),tooltip:Re.ADD_ACTION,rightIcon:mi,onClick:()=>Nu(e,s)}),r&&p.push({id:Po(),tooltip:Re.ADD_INSTRUMENTATION_RULE,rightIcon:Ci,onClick:()=>Nu(e,r)}),c&&p.push({id:Po(),tooltip:d?"Edit Configuration":`To use this feature, please upgrade to Odigos v${o} or later.`,rightIcon:xi,disabled:!d,onClick:()=>Nu(e,c)}),p}},Eu=({tableRowsMaxHeight:o,connections:a,getConnections:i,onClickConnection:s,deleteConnection:d,configMinSupportedVersion:u=0,getEffectiveConfig:p,applyConfigurations:h,snapshotMinSupportedVersion:m=0,getAllClusterSnapshots:g,persistSources:b,getDestinationCategories:v,getPotentialDestinations:C,testConnection:S,createDestination:w,updateDestination:x,createAction:T,createInstrumentationRule:$})=>{const N=f(),{isVm:I}=y(),{formatTimeAgo:E}=At(),[O,A]=l(!1),[D,R]=l(a||[]),F=c(async()=>{try{A(!0),R(await i()??[])}catch(e){}finally{A(!1)}},[]);n(()=>{D.length||F()},[]);const[P,L]=l(""),[_,M]=l(null),[B,z]=l([]),X=r(()=>_===ku.BulkConfig?u:_===ku.BulkSource?m:0,[_,u,m]),{supportedConnections:V,supportedConnectionIds:U}=r(()=>{const e=((e,t)=>e.filter(e=>{const o=e.status===ge.Success,n=k(e.odigosVersion,t);return o&&n}))(D,X);return{supportedConnections:e,supportedConnectionIds:e.map(e=>e.id)}},[D.length,X]);n(()=>{if(!_||_===ku.Delete)return;const e=B.filter(e=>!U.includes(e));e.length&&z(t=>t.filter(t=>!e.includes(t)))},[_,B.length,U.length]);const H=r(()=>D.filter(e=>!P||e.name.toLowerCase().includes(P.toLowerCase())).map(e=>({cells:[{key:Tu.Id,rawValue:e.id},{key:Tu.Name,rawValue:e.name},{key:Tu.Type,rawValue:e.type},{key:Tu.Status,rawValue:e.status,component:()=>(e=>{const o=e===ge.Success?"Connection live":"Connection lost",n=e===ge.Success?vi:yi;return t(Ee,{status:e,label:o,leftIcon:n})})(e.status)},{key:Tu.OdigosVersion,rawValue:e.odigosVersion},{key:Tu.ConnectedSince,rawValue:e.connectedAt?E(e.connectedAt):"-"},{key:Tu.LastActivity,rawValue:e.lastSeenAt?E(e.lastSeenAt):"-"}],onClick:e.status!==ge.Success||_?void 0:()=>s(e),isSelected:B.includes(e.id),onSelect:()=>z(t=>Array.from(new Set([...t,e.id]))),onDeselect:()=>z(t=>t.filter(t=>t!==e.id)),hideCheckbox:e.status!==ge.Success||_===ku.BulkConfig&&!k(e.odigosVersion,u)||_===ku.BulkSource&&!k(e.odigosVersion,m)})),[D,B,P,_,u,m]),j=r(()=>{const e=(e,t)=>{z([e]),M(t)};return Iu({connections:D,configMinSupportedVersion:u,snapshotMinSupportedVersion:m,onDelete:t=>e(t,ku.Delete),onAddSource:!I&&g&&b?t=>e(t,ku.BulkSource):void 0,onAddDestination:!I&&v&&C&&w?t=>e(t,ku.BulkDestination):void 0,onAddAction:!I&&T?t=>e(t,ku.BulkAction):void 0,onAddInstrumentationRule:!I&&$?t=>e(t,ku.BulkInstrumentationRule):void 0,onEditConfiguration:!I&&p&&h?t=>e(t,ku.BulkConfig):void 0})},[I,D,u,p,h,m,g,b,v,C,w,T,$]),W=r(()=>(e=>{const{onCancel:t,onAddSource:o,onAddDestination:n,onAddAction:a,onAddInstrumentationRule:i,onManageConfigurations:l}=e,s=[];o&&s.push({id:Po(),type:Vt.Button,buttonProps:{variant:ae.Primary,size:ne.S,label:"Add Sources",rightIcon:Si,onClick:o}});const r=[n?{id:ku.BulkDestination,label:Re.ADD_DESTINATION,icon:gi}:null,a?{id:ku.BulkAction,label:Re.ADD_ACTION,icon:mi}:null,i?{id:ku.BulkInstrumentationRule,label:Re.ADD_INSTRUMENTATION_RULE,icon:Ci}:null,l?{id:ku.BulkConfig,label:"Manage Configurations",icon:xi}:null];return r.some(Boolean)&&s.push({id:Po(),type:Vt.ButtonDropData,buttonProps:{variant:ae.Secondary,size:ne.S,label:"Bulk Operations",onClick:e=>{e===ku.BulkSource?o?.():e===ku.BulkDestination?n?.():e===ku.BulkAction?a?.():e===ku.BulkInstrumentationRule?i?.():e===ku.BulkConfig&&l?.()}},dropDataProps:{alignX:Fo.Left,items:r}}),s.push({id:Po(),type:Vt.Button,buttonProps:{variant:ae.Text,size:ne.S,label:bt.CANCEL,onClick:t}}),s})({onCancel:()=>z([]),onAddSource:!I&&g&&b?()=>M(ku.BulkSource):void 0,onAddDestination:!I&&v&&C&&w?()=>M(ku.BulkDestination):void 0,onAddAction:!I&&T?()=>M(ku.BulkAction):void 0,onAddInstrumentationRule:!I&&$?()=>M(ku.BulkInstrumentationRule):void 0,onManageConfigurations:!I&&p&&h?()=>M(ku.BulkConfig):void 0}),[I,p,h,g,b,v,C,w,T,$]);return t(ra,{children:e(Ue,{richTitle:{icon:Ki,title:Re.CONNECTIONS,badge:{label:D.length.toString(),status:st.Unknown}},search:{placeholder:"Search by cluster name",value:P,onChange:e=>L(e),width:"300px"},actions:[{id:Po(),type:Vt.Button,buttonProps:{variant:ae.Secondary,size:ne.S,leftIcon:Ni,onClick:F,disabled:O}}],children:[t(co,{variant:uo.Pretty,maxHeight:o,headerBackgroundColor:N.v2.colors.silver[1e3],isLoading:O,withCheckboxes:!0,columns:$u,rows:H,rowActionsPushRightPosition:_?`calc(${yl} - 24px)`:void 0,getRowActions:j}),_===ku.BulkConfig&&p&&h&&t(lr,{onClose:()=>M(null),connections:V,selectedConnectionIds:B,setSelectedConnectionIds:z,getEffectiveConfig:p,onApply:h}),_===ku.BulkSource&&g&&b&&t(Fl,{selectedConnectionIds:B,children:t(ar,{onClose:()=>M(null),selectedConnectionIds:B,setSelectedConnectionIds:z,getAllClusterSnapshots:g,persistSources:async e=>await(b?.(e))})}),_===ku.BulkDestination&&v&&C&&S&&w&&x&&t(Pl,{children:t(_s,{onClose:()=>M(null),selectedConnectionIds:B,setSelectedConnectionIds:z,getDestinationCategories:v,getPotentialDestinations:C,testConnection:e=>S(e,B),createDestination:e=>w(e,B),updateDestination:(e,t)=>x(e,t,B)})}),_===ku.BulkAction&&T&&t(Ll,{children:t(Ns,{onClose:()=>M(null),selectedConnectionIds:B,setSelectedConnectionIds:z,createAction:e=>T(e,B)})}),_===ku.BulkInstrumentationRule&&$&&t(_l,{children:t(Ms,{onClose:()=>M(null),selectedConnectionIds:B,setSelectedConnectionIds:z,createInstrumentationRule:e=>$(e,B)})}),t(gl,{target:"connection",isOpen:_===ku.Delete,onClose:()=>{z([]),M(null)},onApprove:async()=>{const e=B[0];e&&(await d(e),await F())}}),t(ca,{isOpen:!!B.length&&!_,richTitle:{icon:si,title:"Selected Clusters",badge:{label:B.length}},actions:W})]})})},Ou=g.div`
|
|
441
441
|
display: flex;
|
|
442
442
|
align-items: center;
|
|
443
443
|
justify-content: space-between;
|
|
@@ -446,26 +446,26 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
446
446
|
width: calc(100% - 32px);
|
|
447
447
|
border-radius: 16px;
|
|
448
448
|
background-color: ${({theme:e})=>e.v2.colors.silver[800]};
|
|
449
|
-
`,
|
|
449
|
+
`,Au=g.div`
|
|
450
450
|
display: flex;
|
|
451
451
|
align-items: center;
|
|
452
452
|
justify-content: center;
|
|
453
453
|
padding: 8px;
|
|
454
454
|
border-radius: 8px;
|
|
455
455
|
background-color: ${({theme:e})=>e.v2.colors.white[500]+je["004"]};
|
|
456
|
-
`,
|
|
456
|
+
`,Du=({setStep:o,onSave:n,sourcesPayload:a,destinationsPayload:i,disableAnimation:l})=>{const s=f(),c=()=>o(2),d=()=>o(3),u=r(()=>Object.values(a||{}).flatMap((o,n)=>o.map((o,a)=>{if(!o.selected)return null;const i=o.kind||lt.Namespace,l=i===lt.Namespace?o.namespace:`${o.namespace} → ${o.name}`;return e(Ou,{children:[t(re,{nowrap:!0,children:l}),t(Ee,{label:i,status:ge.Info,backgroundColor:s.v2.colors.blue[900]})]},`source-${n}-${a}`)})).filter(Boolean),[a]),p=r(()=>i?.map((o,n)=>{const a=tt(o.option.type).icon;return e(Ou,{children:[e(te,{$gap:8,children:[a&&t(Au,{children:t(a,{size:24})}),t(re,{nowrap:!0,children:o.formData.name||o.option.displayName})]}),void 0!==o.testResult&&t(Ee,{status:o.testResult.succeeded?ge.Success:ge.Error,leftIcon:o.testResult.succeeded?vi:yi})]},`destination-${n}`)})||[],[i]);return t(ml,{isOpen:!0,disableAnimation:l,onBack:()=>o(3),onSave:n,header:{icon:Ti,title:Re.SUMMARY,subTitle:Re.REVIEW_SETUP},leftColumn:{width:"50%",header:e(te,{$width:"100%",$gap:12,$justifyContent:"space-between",children:[e(te,{$gap:8,children:[t(Si,{size:24}),t(re,{nowrap:!0,children:Re.SELECTED_SOURCES}),t(Ee,{label:u.length})]}),t(oe,{"data-id":"summary-edit-sources",leftIcon:di,variant:ae.Secondary,size:ne.S,onClick:c})]}),list:u.length?u:[t(Ke,{$height:"100%",children:t(se,{icon:Si,title:Re.NO_SOURCES_SELECTED,subTitle:Re.ADD_SOURCE_PROMPT,button:{leftIcon:ii,label:Re.ADD_SOURCE,onClick:c}})},"no-sources-data")]},rightColumn:{width:"50%",header:e(te,{$width:"100%",$gap:12,$justifyContent:"space-between",children:[e(te,{$gap:8,children:[t(gi,{size:24}),t(re,{nowrap:!0,children:Re.SELECTED_DESTINATIONS}),t(Ee,{label:p.length})]}),t(oe,{"data-id":"summary-edit-destinations",leftIcon:di,variant:ae.Secondary,size:ne.S,onClick:d})]}),list:p.length?p:[t(Ke,{"data-id":"summary-no-destinations",$height:"100%",children:t(se,{icon:gi,title:Re.NO_DESTINATIONS_SELECTED,subTitle:Re.ADD_DESTINATION_PROMPT,button:{leftIcon:ii,label:Re.ADD_DESTINATIONS,onClick:d}})},"no-destinations-data")]}})},Ru=g.div`
|
|
457
457
|
position: relative;
|
|
458
458
|
overflow: hidden;
|
|
459
459
|
width: calc(100vw - ${({$paddingXAxis:e})=>e});
|
|
460
460
|
height: calc(100vh - ${({$paddingYAxis:e})=>e});
|
|
461
461
|
box-sizing: border-box;
|
|
462
|
-
`,
|
|
462
|
+
`,Fu=g.svg`
|
|
463
463
|
position: absolute;
|
|
464
464
|
top: 50%;
|
|
465
465
|
left: 50%;
|
|
466
466
|
transform: translate(-50%, -50%);
|
|
467
467
|
z-index: -1;
|
|
468
|
-
`,
|
|
468
|
+
`,Pu=[{opacity:"0.1"},{offset:"0.31",opacity:"0.11"},{offset:"0.45",opacity:"0.14"},{offset:"0.56",opacity:"0.19"},{offset:"0.65",opacity:"0.26"},{offset:"0.73",opacity:"0.35"},{offset:"0.8",opacity:"0.46"},{offset:"0.86",opacity:"0.6"},{offset:"0.92",opacity:"0.76"},{offset:"0.98",opacity:"0.93"},{offset:"1"}],Lu=[{width:1440,height:900,pathOpacity:.1,path:"M719.992 1169.99C322.351 1169.99 0 847.64 0 450C0 52.3591 322.351 -269.992 719.992 -269.992C1117.63 -269.992 1439.98 52.3591 1439.98 450C1439.98 847.64 1117.63 1169.99 719.992 1169.99Z",gradientTransform:"translate(814.309 444.011) rotate(180) scale(718.904)",stops:[{opacity:"0.1"},{offset:"0.41",opacity:"0.11"},{offset:"0.56",opacity:"0.13"},{offset:"0.67",opacity:"0.18"},{offset:"0.75",opacity:"0.25"},{offset:"0.83",opacity:"0.33"},{offset:"0.89",opacity:"0.44"},{offset:"0.95",opacity:"0.56"},{offset:"1",opacity:"0.7"}]},{width:1343,height:900,pathOpacity:.3,path:"M671.344 1121.34C300.571 1121.34 0 820.773 0 450C0 79.2264 300.571 -221.345 671.344 -221.345C1042.12 -221.345 1342.69 79.2264 1342.69 450C1342.69 820.773 1042.12 1121.34 671.344 1121.34Z",gradientTransform:"translate(644.026 441.551) rotate(180) scale(581.31)",stops:Pu},{width:1163,height:900,pathOpacity:.5,path:"M581.31 1031.31C260.261 1031.31 0 771.048 0 449.999C0 128.951 260.261 -131.311 581.31 -131.311C902.358 -131.311 1162.62 128.951 1162.62 449.999C1162.62 771.048 902.358 1031.31 581.31 1031.31Z",gradientTransform:"translate(644.026 441.551) rotate(180) scale(581.31)",stops:Pu},{width:798,height:798,pathOpacity:.7,path:"M398.581 797.162C178.451 797.162 0 618.711 0 398.581C0 178.451 178.451 0 398.581 0C618.711 0 797.162 178.451 797.162 398.581C797.162 618.711 618.711 797.162 398.581 797.162Z",gradientTransform:"translate(445.003 392.441) rotate(180) scale(398.23)",stops:Pu}],_u=({paddingXAxis:o="0px",paddingYAxis:a="0px",children:i})=>{const[s,c]=l(window.innerWidth),d=r(()=>s/Lu[0].width,[s]);return n(()=>{const e=()=>c(window.innerWidth);return window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[]),e(Ru,{$paddingXAxis:o,$paddingYAxis:a,children:[Lu.map(({width:o,height:n,pathOpacity:a,path:i,gradientTransform:l,stops:s},r)=>{const c=`purple-ring-${r}`;return e(Fu,{width:o*d,height:"100%",viewBox:`0 0 ${o} ${n}`,fill:"none",children:[t("path",{opacity:a,d:i,fill:`url(#${c})`}),t("defs",{children:t("radialGradient",{id:c,cx:"0",cy:"0",r:"1",gradientUnits:"userSpaceOnUse",gradientTransform:l,children:s.map(({offset:e,opacity:o},n)=>t("stop",{offset:e,stopColor:"#7C3BFF",stopOpacity:o},n))})})]},c)}),i]})},Mu=g.div`
|
|
469
469
|
display: flex;
|
|
470
470
|
flex-direction: column;
|
|
471
471
|
align-items: center;
|
|
@@ -476,7 +476,7 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
476
476
|
width: 50vw;
|
|
477
477
|
border-radius: 16px;
|
|
478
478
|
background: ${({theme:e})=>e.v2.colors.silver[900]};
|
|
479
|
-
`,
|
|
479
|
+
`,Bu=g.div`
|
|
480
480
|
display: flex;
|
|
481
481
|
flex-direction: column;
|
|
482
482
|
align-items: center;
|
|
@@ -486,15 +486,15 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
486
486
|
& * {
|
|
487
487
|
text-align: center;
|
|
488
488
|
}
|
|
489
|
-
`,
|
|
489
|
+
`,zu=({onStart:o})=>t(ft,{width:"75vw",isOpen:!0,hideOverlay:!0,disableAnimation:!0,children:t(Ke,{$height:"100%",children:e(Mu,{children:[e(Bu,{children:[t(re,{size:ce.L,weight:500,children:Re.GET_STARTED_WITH}),t(vl,{size:260}),t(re,{size:ce.S,weight:400,children:Re.GET_STARTED_DESCRIPTION})]}),t(oe,{"data-id":"onboarding-get-started",label:bt.GET_STARTED,rightIcon:ji,size:ne.L,onClick:o})]})})}),Xu=[{step:1,label:Re.INSTALLATION,forceDoneBadge:!0},{step:2,label:Re.SOURCES_SETUP},{step:3,label:Re.DESTINATIONS_SETUP},{step:4,label:Re.SUMMARY}],Vu=g.div`
|
|
490
490
|
display: flex;
|
|
491
491
|
flex-direction: column;
|
|
492
492
|
gap: 32px;
|
|
493
493
|
padding: 64px;
|
|
494
|
-
`,
|
|
494
|
+
`,Uu=({pagePaddingXAxis:o,pagePaddingYAxis:n,fetchNamespacesWithWorkloads:a,persistSources:i,getDestinationCategories:s,getPotentialDestinations:r,testConnection:c,createDestination:d,updateDestination:u,onDone:p})=>{const{setCurrentModal:h}=Lo(),[m,g]=l(1),[f,b]=l(!1),[v,y]=l(null),[C,S]=l(null),w=()=>g(e=>e+1),x=()=>g(e=>e-1);return e(_u,{paddingXAxis:o,paddingYAxis:n,children:[e(Vu,{children:[t(vl,{useInline:!0}),t(da,{currentStep:m,data:Xu,gap:32})]}),t(Fl,{initialInputs:v,children:e(Pl,{children:[1===m&&t(zu,{onStart:w}),2===m&&t(ar,{disableAnimation:!0,onBack:e=>{y(e),x()},onNext:e=>{y(e),w()},fetchNamespacesWithWorkloads:a,persistSources:i}),3===m&&t(_s,{disableAnimation:!0,onBack:e=>{S(e),x()},onNext:e=>{S(e),w()},getDestinationCategories:s,getPotentialDestinations:r,initialInputs:C,testConnection:c,createDestination:d,updateDestination:u}),4===m&&t(Du,{disableAnimation:!0,setStep:g,onSave:async()=>{if(!f){b(!0);try{const e=[];v&&e.push(i(v)),C&&e.push(...C.map(e=>d(e.formData)));const t=await Promise.allSettled(e),o=[];for(const e of t)"rejected"===e.status?o.push(e.reason?.message||String(e.reason)):e.value?.error&&o.push(e.value.error);if(o.length)return{error:o.join("\n")};h(Id),p()}catch(e){return b(!1),{error:e instanceof Error?e.message:String(e)}}}},sourcesPayload:v,destinationsPayload:C})]})})]})},Hu=e=>(e||[]).filter(e=>!!e.id).map(e=>String(e.id)),ju=e=>{let t=0;return Object.values(e).forEach(e=>{Array.isArray(e)&&(t+=e.length)}),e.onlyErrors&&t++,t},Wu=g.div`
|
|
495
495
|
position: relative;
|
|
496
496
|
display: inline-flex;
|
|
497
|
-
`,
|
|
497
|
+
`,Gu=g.button`
|
|
498
498
|
display: inline-flex;
|
|
499
499
|
align-items: center;
|
|
500
500
|
gap: 8px;
|
|
@@ -507,7 +507,7 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
507
507
|
&:hover {
|
|
508
508
|
background-color: ${({theme:e})=>e.v2.colors.silver[700]};
|
|
509
509
|
}
|
|
510
|
-
`,
|
|
510
|
+
`,Ku=g.div`
|
|
511
511
|
position: absolute;
|
|
512
512
|
top: calc(100% + 8px);
|
|
513
513
|
right: 0;
|
|
@@ -520,28 +520,28 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
520
520
|
border-radius: 12px;
|
|
521
521
|
background-color: ${({theme:e})=>e.v2.colors.silver[900]};
|
|
522
522
|
box-shadow: 0 0 24px 0 rgba(0, 0, 0, 0.3);
|
|
523
|
-
`,
|
|
523
|
+
`,Yu=g.div`
|
|
524
524
|
display: flex;
|
|
525
525
|
flex-direction: column;
|
|
526
526
|
gap: 12px;
|
|
527
527
|
padding: 16px;
|
|
528
528
|
max-height: 60vh;
|
|
529
529
|
overflow-y: auto;
|
|
530
|
-
`,
|
|
530
|
+
`,Ju=g.div`
|
|
531
531
|
display: flex;
|
|
532
532
|
align-items: center;
|
|
533
533
|
gap: 8px;
|
|
534
534
|
padding: 12px 16px;
|
|
535
535
|
border-top: 1px solid ${({theme:e})=>e.v2.colors.silver[700]};
|
|
536
|
-
`,
|
|
536
|
+
`,qu=g.div`
|
|
537
537
|
display: flex;
|
|
538
538
|
align-items: center;
|
|
539
539
|
gap: 8px;
|
|
540
540
|
margin-left: auto;
|
|
541
|
-
`,
|
|
541
|
+
`,Zu=()=>{const o=f(),a=at(e=>e.sources),i=at(e=>e.namespaces),{selectedStreamName:s}=Fe(),{getItemSS:c,setItemSS:u,removeItemSS:p}=ga(),{namespaces:h,kinds:m,monitors:g,languages:b,onlyErrors:v,podsAgentInjectionStatus:y,setAll:C,clearAll:S,getEmptyState:w}=ua(),x=r(()=>pa(a,s),[a,s]);n(()=>{const e=c(ha.OVERVIEW_FILTERS,w());C(e)},[]);const[k,T]=l({namespaces:h,kinds:m,monitors:g,languages:b,onlyErrors:v,podsAgentInjectionStatus:y}),[$,N]=l(ju(k)),[I,E]=l(!1);n(()=>{if(!I){const e={namespaces:h,kinds:m,monitors:g,languages:b,onlyErrors:v,podsAgentInjectionStatus:y};T(e),N(ju(e))}},[I,h,m,g,b,v,y]);const O=d(null);eo(O,()=>E(!1)),Oo({key:"Escape",active:I},()=>E(!1));const A=r(()=>{const e=new Set,t=[];return i.forEach(({name:o})=>{e.has(o)||(e.add(o),t.push({id:o,label:o,withCheckbox:!0}))}),t},[i]),D=r(()=>{const e=new Set,t=[];return x.forEach(({id:o})=>{const{kind:n}=o;e.has(n)||(e.add(n),t.push({id:n,label:n,withCheckbox:!0}))}),t},[x]),R=r(()=>{const e=new Set,t=[];return x.forEach(({runtimeInfo:o})=>{o?.detectedLanguages?.forEach(o=>{e.has(o)||(e.add(o),t.push({id:o,label:Oe[o]||o,withCheckbox:!0}))})}),t.sort((e,t)=>e.id.localeCompare(t.id))},[x]),F=r(()=>ma.map(({id:e,value:t})=>({id:e,label:t,withCheckbox:!0})),[]),P=r(()=>{const e=new Set,t=[];return x.forEach(({podsAgentInjectionStatus:o})=>{const{reasonEnum:n,message:a}=o||{};if(n){if(e.has(n))return;e.add(n),t.push({id:n,label:$t(n)})}else if(a){if(e.has(a))return;e.add(a),t.push({id:a,label:a,withCheckbox:!0})}}),t},[x]),L=(e,t,o)=>{const n=t.filter(e=>o.includes(e.id));T(t=>{return{...t,[e]:(o=n,o.map(({id:e,label:t})=>({id:e,label:t})))};var o})},_=I?fi:bi,M=r(()=>Hu(k.languages),[k.languages]);return e(Wu,{ref:O,children:[e(Gu,{"data-id":"filters-trigger",$isOpen:I,type:"button",onClick:()=>E(e=>!e),children:[t(Yi,{size:16,fill:o.v2.colors.white[500]}),t(re,{size:ce.XS,weight:500,nowrap:!0,children:"Filters"}),$>0&&t(Ee,{label:$,status:st.Unknown,textSize:ce.XXXS}),t(_,{size:16,fill:o.v2.colors.silver[200]})]}),I&&e(Ku,{children:[e(Yu,{children:[t(Je,{label:"Namespace",placeholder:"All",withSearch:!0,withMultiSelect:!0,disabled:!A.length,options:A,values:Hu(k.namespaces),setValues:e=>L("namespaces",A,e)}),t(Je,{label:"Kind",placeholder:"All",withSearch:!0,withMultiSelect:!0,disabled:!D.length,options:D,values:Hu(k.kinds),setValues:e=>L("kinds",D,e)}),t(Je,{label:"Programming Language",placeholder:"All",withSearch:!0,withMultiSelect:!0,disabled:!R.length,options:R,values:M,setValues:e=>L("languages",R,e)}),t(Je,{label:"Monitors",placeholder:"All",withSearch:!0,withMultiSelect:!0,disabled:!F.length,options:F,values:Hu(k.monitors),setValues:e=>L("monitors",F,e)}),t(Je,{label:"Agent Injection Status",placeholder:"All",withSearch:!0,withMultiSelect:!0,disabled:!P.length,options:P,values:Hu(k.podsAgentInjectionStatus),setValues:e=>L("podsAgentInjectionStatus",P,e)}),t(q,{label:"Show only sources with errors",size:ct.L,value:!!k.onlyErrors,onChange:e=>T(t=>({...t,onlyErrors:e}))})]}),e(Ju,{children:[t(oe,{"data-id":"filters-reset",size:ne.S,variant:ae.Text,label:"Reset",onClick:()=>{p(ha.OVERVIEW_FILTERS),S(),T(w()),N(0),E(!1)},textColor:o.v2.colors.red[500]}),e(qu,{children:[t(oe,{"data-id":"filters-cancel",size:ne.S,variant:ae.Secondary,label:"Cancel",onClick:()=>E(!1)}),t(oe,{"data-id":"filters-apply",size:ne.S,variant:ae.Primary,label:"Apply",onClick:()=>{u(ha.OVERVIEW_FILTERS,k),C(k),N(ju(k)),E(!1)}})]})]})]})]})},Qu="40vw",ep=g.div`
|
|
542
542
|
position: relative;
|
|
543
|
-
width: ${
|
|
544
|
-
`,
|
|
543
|
+
width: ${Qu};
|
|
544
|
+
`,tp=g.div`
|
|
545
545
|
position: absolute;
|
|
546
546
|
top: calc(100% + 8px);
|
|
547
547
|
left: 0;
|
|
@@ -550,23 +550,23 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
550
550
|
flex-direction: column;
|
|
551
551
|
gap: 8px;
|
|
552
552
|
padding: 8px;
|
|
553
|
-
width: calc(${
|
|
553
|
+
width: calc(${Qu} - 16px);
|
|
554
554
|
border-radius: 12px;
|
|
555
555
|
background-color: ${({theme:e})=>e.v2.colors.silver[900]};
|
|
556
556
|
box-shadow: 0 12px 24px 24px rgba(0, 0, 0, 0.5);
|
|
557
|
-
`,
|
|
557
|
+
`,op=g.div`
|
|
558
558
|
display: flex;
|
|
559
559
|
align-items: center;
|
|
560
560
|
overflow-x: auto;
|
|
561
|
-
`,
|
|
561
|
+
`,np=g.div`
|
|
562
562
|
display: flex;
|
|
563
563
|
flex-direction: column;
|
|
564
564
|
gap: 0;
|
|
565
565
|
max-height: 60vh;
|
|
566
566
|
overflow-y: auto;
|
|
567
|
-
`,
|
|
567
|
+
`,ap=g.div`
|
|
568
568
|
padding: 8px 12px 4px 12px;
|
|
569
|
-
`,
|
|
569
|
+
`,ip=g.div`
|
|
570
570
|
display: flex;
|
|
571
571
|
align-items: center;
|
|
572
572
|
gap: 8px;
|
|
@@ -576,9 +576,9 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
576
576
|
&:hover {
|
|
577
577
|
background-color: ${({theme:e})=>e.v2.colors.silver[700]};
|
|
578
578
|
}
|
|
579
|
-
`,
|
|
579
|
+
`,lp=g.div`
|
|
580
580
|
padding: 16px 8px;
|
|
581
|
-
`,
|
|
581
|
+
`,sp=({preventPopup:o=!1})=>{const n=f(),{onClickNode:i}=fa(),{searchText:s,setSearchText:c}=ua(),{selectedStreamName:u}=Fe(),p=at(e=>e.sources),h=at(e=>e.destinations),m=at(e=>e.actions),g=at(e=>e.instrumentationRules),b=d(null),[v,y]=l(!1),[C,S]=l("all"),w=!o&&(!!s||v),x=()=>{c(""),y(!1),S("all")};eo(b,()=>x()),Oo({key:"Escape",active:w},x);const{categories:k,searchResults:T}=r(()=>(({instrumentationRules:e,sources:t,actions:o,destinations:n,searchText:a,selectedCategory:i})=>{const l=a?e.filter(e=>e.type?.toLowerCase().includes(a)||e.ruleName?.toLowerCase().includes(a)):e,s=a?t.filter(e=>e.id.name?.toLowerCase().includes(a)||e.serviceName?.toLowerCase().includes(a)||e.id.namespace?.toLowerCase().includes(a)):t,r=a?o.filter(e=>e.type?.toLowerCase().includes(a)||e.name?.toLowerCase().includes(a)):o,c=a?n.filter(e=>e.destinationType.displayName?.toLowerCase().includes(a)||e.name?.toLowerCase().includes(a)):n,d=[{category:lt.Source,label:"Sources",count:s.length,entities:[]},{category:lt.Action,label:"Actions",count:r.length,entities:[]},{category:lt.Destination,label:"Destinations",count:c.length,entities:[]},{category:lt.InstrumentationRule,label:"Instrumentation Rules",count:l.length,entities:[]}];d.unshift({category:"all",label:"All",count:l.length+s.length+r.length+c.length,entities:[]});const u=d.filter(({count:e,category:t})=>!!e&&"all"!==t&&["all",t].includes(i)).map(e=>({...e,entities:e.category===lt.InstrumentationRule?l:e.category===lt.Source?s:e.category===lt.Action?r:e.category===lt.Destination?c:[]}));return{categories:d,searchResults:u}})({instrumentationRules:g,sources:pa(p,u),actions:m,destinations:kt(h,u),searchText:s,selectedCategory:C}),[g,p,m,h,u,s,C]),$=r(()=>k.filter(({count:e,category:t})=>!!e||"all"===t).map(({category:e,label:t,count:o})=>({value:e,label:o?`${t} (${o})`:t})),[k]),N=T.some(({entities:e})=>e.length>0);return e(ep,{ref:b,children:[t(Ut,{value:s,onChange:e=>c(e.toLowerCase()),onFocus:()=>y(!0),width:Qu}),w&&e(tp,{children:[$.length>1&&t(op,{children:t(ue,{options:$,selected:C,setSelected:S})}),N?t(np,{children:T.map(({category:o,label:l,entities:s},r)=>{if(!s.length)return null;const c=va(o);return e(a,{children:[t(ap,{children:t(re,{size:ce.XXS,color:Ce.Secondary,children:l})}),s.map((a,l)=>e(ip,{onClick:()=>{const e=gt(a);i(null,{data:{type:o,id:e}}),x()},children:[c&&t(c,{size:16,fill:n.v2.colors.white[500]}),t(re,{size:ce.XS,nowrap:!0,children:ba(a,o,{extended:!0})})]},`entity-${r}-${l}`))]},`category-list-${o}`)})}):t(lp,{children:t(se,{hideIcon:!0,title:"No results",subTitle:s?`No matches for "${s}"`:"Start typing to search"})})]})]})},rp=g.div`
|
|
582
582
|
position: relative;
|
|
583
583
|
display: flex;
|
|
584
584
|
align-items: center;
|
|
@@ -589,7 +589,7 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
589
589
|
box-sizing: border-box;
|
|
590
590
|
border-radius: 16px 16px 0 0;
|
|
591
591
|
background-color: ${({theme:e})=>e.v2.colors.silver[800]};
|
|
592
|
-
`,
|
|
592
|
+
`,cp=g.div`
|
|
593
593
|
position: absolute;
|
|
594
594
|
bottom: 0;
|
|
595
595
|
left: 0;
|
|
@@ -598,7 +598,7 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
598
598
|
background-color: ${({theme:e})=>e.v2.colors.purple[500]};
|
|
599
599
|
border-radius: 32px;
|
|
600
600
|
transition: width 0.3s;
|
|
601
|
-
`,
|
|
601
|
+
`,dp=({entityType:o,badge:n,badgeTooltip:a,isLoading:i,refetch:l,partiallySelected:s,allSelected:r,onSelectAll:c,progressPercent:d})=>{const{setCurrentModal:u}=Lo();return e(rp,{children:[e(te,{$gap:8,style:{flex:1,minWidth:0},children:[c&&t(H,{size:ya.S,partiallyChecked:s,value:!!r,onChange:c}),t(re,{size:ce.S,nowrap:!0,children:`${$t(o)}s`}),t(Ee,{label:n,tooltip:a,status:st.Unknown,textSize:ce.XXXS})]}),e(te,{children:[t(qe,{"data-id":`add-${o}`,icon:ii,onClick:()=>u(o)}),t(qe,{"data-id":`refresh-${o}`,icon:Ni,onClick:l,disabled:i})]}),"number"==typeof d&&t(cp,{$percent:d})]})},up=g(V)`
|
|
602
602
|
align-items: center !important;
|
|
603
603
|
justify-content: center !important;
|
|
604
604
|
align-self: stretch;
|
|
@@ -613,7 +613,7 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
613
613
|
&:hover {
|
|
614
614
|
background-color: ${({theme:e})=>e.v2.colors.silver[1e3]};
|
|
615
615
|
}
|
|
616
|
-
`,
|
|
616
|
+
`,pp=({entityType:o,description:n})=>{const{setCurrentModal:a}=Lo();return e(up,{onClick:()=>a(o),children:[e(te,{$gap:4,children:[t(ii,{size:16}),t(re,{size:ce.S,children:`Add ${$t(o)}`})]}),t(re,{size:ce.XXS,align:"center",children:n})]})},hp=g.div`
|
|
617
617
|
display: flex;
|
|
618
618
|
align-items: center;
|
|
619
619
|
gap: 12px;
|
|
@@ -628,10 +628,10 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
628
628
|
&:hover {
|
|
629
629
|
background-color: ${({theme:e})=>e.v2.colors.silver[800]};
|
|
630
630
|
}
|
|
631
|
-
`,
|
|
631
|
+
`,mp=g(te)`
|
|
632
632
|
flex: 1;
|
|
633
633
|
min-width: 0;
|
|
634
|
-
`,
|
|
634
|
+
`,gp=({entityId:o,entityType:n,title:a,status:i,faded:l,tooltip:s,throughput:c,icon:d,icons:u,iconSrc:p,isActive:h,raw:m})=>{const g=f(),b=n===lt.Source,v="boolean"==typeof h,y=l||v&&!h,{setDrawerType:C,setDrawerEntityId:S}=jt(),{selectedSources:w,setSelectedSources:x}=Ca(),k=m,T=b?k.id.namespace:"",$=r(()=>{if(!b)return-1;const e=w[T];return e?.length?e.findIndex(e=>e.id.name===k.id.name&&e.id.kind===k.id.kind):-1},[b,w,T,k.id]),N=v&&!h?wa(ge.Info,g):i?wa(i,g):void 0,I=b&&"object"==typeof o?`${o.namespace}-${o.name}-${o.kind}`:o;return e(hp,{"data-id":I,$faded:y,onClick:()=>{C(n),S(o)},children:[b&&t(H,{size:ya.S,value:-1!==$,onChange:()=>{const e={...w};e[T]||(e[T]=[]),-1===$?e[T].push(k):e[T].splice($,1),x(e)}}),t(Yt,{icons:u,icon:d,iconSrc:p}),e(mp,{$gap:4,children:[t(Sa,{size:ce.XS,nowrap:!0,children:a}),t(te,{$gap:6,$justifyContent:"flex-end",style:{marginLeft:"auto",flexShrink:0},children:c&&t(we,{text:s||"Heads up! The data-flow metrics you see are calculated over 10-second intervals.",children:t(Ee,{label:c,status:i&&[ge.Error,ge.Warning].includes(i)?i:st.Unknown,leftIcon:N,textSize:ce.XXXS})})})]})]})};function fp(e){return Object.values(e.conditions??{}).filter(Boolean).some(({status:e})=>e===Bt.Loading)?e:{...e,workloadOdigosHealthStatus:{status:Ft.Pending,name:"WorkloadOdigosHealthStatus",reasonEnum:"Pending",message:""}}}function bp(e){const t=Object.values(e.conditions??{}).filter(Boolean),o=t.filter(({status:e})=>e!==Bt.Loading);return o?.length===t?.length?e:{...e,conditions:o?.length?o.reduce((e,t)=>(e[t.name]=t,e),{}):{}}}const vp=g.div`
|
|
635
635
|
position: absolute;
|
|
636
636
|
top: 0;
|
|
637
637
|
left: 0;
|
|
@@ -642,22 +642,22 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
642
642
|
background-color: ${({theme:e})=>e.v2.colors.silver[900]};
|
|
643
643
|
border-bottom: 1px solid ${({theme:e})=>e.v2.colors.silver[700]};
|
|
644
644
|
pointer-events: none;
|
|
645
|
-
`,
|
|
645
|
+
`,yp=g.div`
|
|
646
646
|
display: flex;
|
|
647
647
|
align-items: center;
|
|
648
648
|
gap: 8px;
|
|
649
649
|
padding: 4px 8px 0;
|
|
650
|
-
`,
|
|
650
|
+
`,Cp=g.div`
|
|
651
651
|
flex: 1;
|
|
652
652
|
height: 1px;
|
|
653
653
|
background: ${({theme:e})=>e.v2.colors.silver[700]};
|
|
654
|
-
`,
|
|
654
|
+
`,Sp=({namespace:e})=>{const o=f();return t(vp,{children:t(re,{size:ce.XXS,nowrap:!0,color:o.v2.colors.grey[300],children:e})})},wp=({namespace:o})=>{const n=f();return e(yp,{children:[t(Cp,{}),t(re,{size:ce.XXS,nowrap:!0,color:n.v2.colors.grey[300],children:o}),t(Cp,{})]})},xp={[lt.InstrumentationRule]:Re.NO_DATA_INSTRUMENTATION_RULES,[lt.Source]:Re.NO_DATA_SOURCES,[lt.Action]:Re.NO_DATA_ACTIONS,[lt.Destination]:Re.NO_DATA_DESTINATIONS},kp=g.div`
|
|
655
655
|
display: flex;
|
|
656
656
|
flex-direction: column;
|
|
657
657
|
flex: 1 0 0;
|
|
658
658
|
min-width: 0;
|
|
659
659
|
${({$isVm:e})=>e?"width: 45vw;":""}
|
|
660
|
-
`,
|
|
660
|
+
`,Tp=g.div`
|
|
661
661
|
display: flex;
|
|
662
662
|
flex-direction: column;
|
|
663
663
|
align-items: stretch;
|
|
@@ -667,7 +667,7 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
667
667
|
border-radius: 0 0 16px 16px;
|
|
668
668
|
background-color: ${({theme:e})=>e.v2.colors.silver[800]};
|
|
669
669
|
overflow: hidden;
|
|
670
|
-
|
|
670
|
+
`,$p=g.div`
|
|
671
671
|
position: relative;
|
|
672
672
|
display: flex;
|
|
673
673
|
flex-direction: column;
|
|
@@ -679,16 +679,16 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
679
679
|
background-color: ${({theme:e})=>e.v2.colors.silver[900]};
|
|
680
680
|
height: ${({$height:e})=>e}px;
|
|
681
681
|
overflow: hidden;
|
|
682
|
-
`,
|
|
682
|
+
`,Np=(e,t,o,n)=>{const a=gt(e);if(!a)return null;const i=t===lt.Source;let l,s,r=!1,c=e;if(i){const t=function(e){const t=e.workloadOdigosHealthStatus?.status;switch(t){case Ft.Failure:return{status:ge.Error,faded:!1,tooltip:e.workloadOdigosHealthStatus?.message,displaySource:e};case Ft.Notice:return{status:ge.Warning,faded:!1,tooltip:e.workloadOdigosHealthStatus?.message,displaySource:e};case Ft.Pending:case Ft.Waiting:return{status:void 0,faded:!1,displaySource:fp(e)};case Ft.Unsupported:case Ft.Disabled:return{status:void 0,faded:!0,tooltip:e.workloadOdigosHealthStatus?.message,displaySource:e};default:return{status:void 0,faded:!1,displaySource:bp(e)}}}(e);l=t.status,r=t.faded,s=t.tooltip,c=t.displaySource}else{const{priorotizedStatus:t,hasDisableds:o}=ka(e.conditions);l=t,r=o}const d=ba(e,t,{extended:i,prioritizeDisplayName:!i});let u,p,h,m,g;switch(t){case lt.Source:{u=Kt(e),p=va(lt.Source);const t=n?.get(Ta(a));m=Jt(t);break}case lt.Destination:{const t=tt(e.destinationType.type);p=t.icon,h=t.iconSrc;const o=n?.get(Ta(a));m=Jt(o),g=!e.disabled;break}case lt.Action:p=St(e.type),g=!e.disabled;break;case lt.InstrumentationRule:p=Ot(e.type),g=!e.disabled}return{key:Ta(a),entityId:a,namespace:i?e.id.namespace:void 0,raw:c,itemProps:{entityId:a,entityType:t,title:d,status:l,faded:r,tooltip:s,throughput:m,icon:p,icons:u,iconSrc:h,isActive:g,raw:c}}},Ip=({entityType:o,entities:a,unfilteredCount:i,metrics:s,loading:d,maxHeight:u,refetch:p})=>{const{isVm:h}=y(),m=o===lt.Source,g=a.length!==i,f=ut(e=>m?e.progress[pt.Instrumenting]?.percentage:void 0),b=ut(e=>m?e.progress[pt.Uninstrumenting]?.percentage:void 0),v=!m||void 0===f&&void 0===b?void 0:f||b||0,{selectedSources:C,setSelectedSources:S}=Ca(),w=r(()=>m?Object.values(C).reduce((e,t)=>e+t.length,0):0,[m,C]),x=r(()=>{if(!s)return;const e=new Map,t=o===lt.Source?s.sources:o===lt.Destination?s.destinations:void 0;if(t)for(const o of t)e.set(xa(o),o.throughput);return e},[s,o]),k=r(()=>a.map(e=>Np(e,o,0,x)).filter(Boolean),[a,o,x,h]),[T,$]=l(""),{elements:N,indexToNamespace:I,multipleNs:E,dividerCount:O}=r(()=>{const e=[],o=[],n=new Set(k.map(e=>e.namespace).filter(Boolean)).size>1;n&&(o.push(""),e.push(t("div",{style:{height:24}},"ns-spacer")));let a=0,i="";for(const n of k)m&&n.namespace&&n.namespace!==i&&(""!==i&&(o.push(n.namespace),e.push(t(wp,{namespace:n.namespace},`ns-divider-${n.namespace}`)),a+=1),i=n.namespace),o.push(n.namespace||""),e.push(t(gp,{...n.itemProps},n.key));return{elements:e,indexToNamespace:o,multipleNs:n,dividerCount:a}},[k,m]);n(()=>{if(m&&I.length&&!T){const e=I.find(Boolean);e&&$(e)}},[m,I]);const A=c(e=>{if(!I.length)return;const t=I[Math.min(e,I.length-1)];t&&t!==T&&$(t)},[I,T]);if(h&&[lt.InstrumentationRule,lt.Action].includes(o))return null;const D=58*k.length+(E?28:0)+32*O,R=Math.max(0,u-52-16),F=Math.min(R,D)+8,P="number"==typeof v?`${v}%`:g?`${a.length}/${i}`:i;return e(kp,{$isVm:h,children:[t(dp,{entityType:o,badge:P,badgeTooltip:g?Re.FILTERED_COUNT_TOOLTIP:void 0,isLoading:d,refetch:p,partiallySelected:w>0&&a?.length!==w,allSelected:w>0&&a?.length===w,onSelectAll:m?e=>{if(m)if(e){const e={};a?.forEach(t=>{const{namespace:o}=t.id;e[o]?e[o].push(t):e[o]=[t]}),S(e)}else S({})}:void 0,progressPercent:v}),t(Tp,{children:a.length?e($p,{$height:F,children:[E&&T&&t(Sp,{namespace:T}),t(Ht,{gap:4,elements:N,onTopIndexChange:E?A:void 0})]}):d?t(lo,{size:3}):t(pp,{entityType:o,description:xp[o]??Re.TO_COLLECT_OTEL_DATA})})]})},Ep=g.div`
|
|
683
683
|
width: 100%;
|
|
684
684
|
height: ${({$height:e})=>e||"auto"};
|
|
685
685
|
display: flex;
|
|
686
686
|
align-items: stretch;
|
|
687
687
|
gap: 16px;
|
|
688
|
-
|
|
688
|
+
`,Op=({height:o,metrics:n,refetchSources:a,refetchDestinations:i,refetchActions:l,refetchInstrumentationRules:s})=>{const c=ua(),{selectedStreamName:d}=Fe(),{containerRef:u,containerHeight:p}=$a(),h=at(e=>e.sources),m=at(e=>e.sourcesLoading),g=at(e=>e.destinations),f=at(e=>e.destinationsLoading),b=at(e=>e.actions),v=at(e=>e.actionsLoading),y=at(e=>e.instrumentationRules),C=at(e=>e.instrumentationRulesLoading),S=r(()=>pa(h,d),[h,d]),w=r(()=>kt(g,d),[g,d]),x=r(()=>Na(S,c),[S,c]),k=r(()=>Ia(w,c),[w,c]),T=r(()=>Ea(b,c),[b,c]);return e(Ep,{ref:u,$height:o,children:[t(Ip,{entityType:lt.InstrumentationRule,entities:y,unfilteredCount:y.length,loading:C,maxHeight:p,refetch:s}),t(Ip,{entityType:lt.Source,entities:x,unfilteredCount:S.length,metrics:n,loading:m,maxHeight:p,refetch:a}),t(Ip,{entityType:lt.Action,entities:T,unfilteredCount:b.length,loading:v,maxHeight:p,refetch:l}),t(Ip,{entityType:lt.Destination,entities:k,unfilteredCount:w.length,metrics:n,loading:f,maxHeight:p,refetch:i})]})},Ap=({effectiveConfig:n,fetchNamespacesWithWorkloads:a,persistSources:i,restartWorkloads:l,restartPod:s,recoverFromRollback:r,updateSource:c,fetchSourceById:d,fetchPeerSources:u,enableProfiling:p,fetchProfilingSlots:h,fetchSourceProfiling:m,fetchK8sManifest:g,getDestinationCategories:f,getPotentialDestinations:b,testConnection:v,createDestination:y,updateDestination:C,deleteDestination:S,createInstrumentationRule:w,updateInstrumentationRule:x,deleteInstrumentationRule:k,createAction:T,updateAction:$,deleteAction:N})=>{const{currentModal:I,setCurrentModal:E}=Lo(),{drawerType:O,drawerEntityId:A,setDrawerType:D,setDrawerEntityId:R}=jt(),F=()=>{E(""),D(null),R(null)};return e(o,{children:[t(Ed,{}),I===lt.Source&&t(Fl,{children:t(ar,{onClose:F,fetchNamespacesWithWorkloads:a,persistSources:i,withOverlay:!0})}),I===lt.Destination&&t(Pl,{children:t(_s,{onClose:F,getDestinationCategories:f,getPotentialDestinations:b,testConnection:v,createDestination:y,updateDestination:C,withOverlay:!0})}),I===lt.InstrumentationRule&&t(_l,{children:t(Ms,{onClose:F,createInstrumentationRule:w,withOverlay:!0})}),I===lt.Action&&t(Ll,{children:t(Ns,{onClose:F,createAction:T,withOverlay:!0})}),O===lt.Source&&A&&t(Ml,{children:t(td,{onClose:F,effectiveConfig:n,sourceId:A,persistSources:i,restartWorkloads:l,restartPod:s,recoverFromRollback:r,updateSource:c,fetchSourceById:d,fetchPeerSources:u,enableProfiling:p,fetchSourceProfiling:m,fetchProfilingSlots:h,fetchK8sManifest:g})}),O===lt.Destination&&A&&t(Pl,{children:t(sr,{onClose:F,destinationId:A,getDestinationCategories:f,testConnection:v,updateDestination:C,deleteDestination:S})}),O===lt.InstrumentationRule&&A&&t(_l,{children:t(rr,{onClose:F,ruleId:A,updateInstrumentationRule:x,deleteInstrumentationRule:k})}),O===lt.Action&&A&&t(Ll,{children:t(ir,{onClose:F,actionId:A,updateAction:$,deleteAction:N})})]})},Dp="multi-source-deselect",Rp="multi-source-restart",Fp="multi-source-uninstrument",Pp="Selected sources",Lp="Deselect",_p="Restart",Mp="Uninstrument",Bp="Rollout Restart Workloads",zp="Are you sure you want to rollout restart these workloads?",Xp="Go Back",Vp="Confirm",Up=({restartWorkloads:a,persistSources:i})=>{const{selectedStreamName:s}=Fe(),{selectedSources:d,setSelectedSources:u}=Ca(),[p,h]=l(!1),[m,g]=l(!1),f=r(()=>Object.values(d).reduce((e,t)=>e+t.length,0),[d]),b=c(()=>{u({})},[u]),v=c(()=>h(!1),[]),y=c(()=>g(!1),[]);n(()=>{b()},[s,b]);const C=c(()=>{a(Object.values(d).flat().filter(e=>e.id.kind!==io.StaticPod).map(Wt)),b()},[a,d,b]),S=c(()=>{i(Object.fromEntries(Object.entries(d).map(([e,t])=>[e,t.map(({id:e})=>({namespace:e.namespace,name:e.name,kind:e.kind||void 0,selected:!1,currentStreamName:s}))]))),b()},[i,d,s,b]),w=r(()=>[{id:Dp,type:Vt.Button,buttonProps:{variant:ae.Text,size:ne.S,label:Lp,onClick:b}},{id:Rp,type:Vt.Button,buttonProps:{variant:ae.Secondary,size:ne.S,label:_p,leftIcon:Bi,onClick:()=>h(!0)}},{id:Fp,type:Vt.Button,buttonProps:{variant:ae.Primary,size:ne.S,label:Mp,leftIcon:ai,onClick:()=>g(!0)}}],[b]);return e(o,{children:[t(ca,{isOpen:f>0,richTitle:{icon:Si,title:Pp,badge:{label:f}},actions:w}),t(De,{isOpen:p,title:Bp,description:zp,onClose:v,denyButton:{label:Xp,variant:ae.Secondary,onClick:v},approveButton:{label:Vp,variant:ae.Primary,onClick:()=>{C(),v()}}}),t(gl,{isOpen:m,action:"uninstrument",target:`${f} source${1===f?"":"s"}`,onClose:y,onDeny:y,onApprove:S})]})},Hp=e=>`Data Stream: ${e}`,jp="Search streams...",Wp="No streams match",Gp=g.div`
|
|
689
689
|
position: relative;
|
|
690
690
|
display: inline-flex;
|
|
691
|
-
`,
|
|
691
|
+
`,Kp=g.div`
|
|
692
692
|
display: inline-flex;
|
|
693
693
|
align-items: center;
|
|
694
694
|
gap: 6px;
|
|
@@ -699,7 +699,7 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
699
699
|
&:hover {
|
|
700
700
|
background-color: ${({theme:e})=>e.v2.colors.silver[800]};
|
|
701
701
|
}
|
|
702
|
-
`,
|
|
702
|
+
`,Yp=g.div`
|
|
703
703
|
position: absolute;
|
|
704
704
|
top: calc(100% + 8px);
|
|
705
705
|
left: 0;
|
|
@@ -713,18 +713,18 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
713
713
|
border-radius: 12px;
|
|
714
714
|
background-color: ${({theme:e})=>e.v2.colors.silver[900]};
|
|
715
715
|
box-shadow: 0 0 24px 0 rgba(0, 0, 0, 0.3);
|
|
716
|
-
`,
|
|
716
|
+
`,Jp=g.div`
|
|
717
717
|
display: flex;
|
|
718
718
|
align-items: center;
|
|
719
719
|
gap: 8px;
|
|
720
720
|
width: 100%;
|
|
721
|
-
`,
|
|
721
|
+
`,qp=g.div`
|
|
722
722
|
display: flex;
|
|
723
723
|
flex-direction: column;
|
|
724
724
|
gap: 0;
|
|
725
725
|
max-height: 240px;
|
|
726
726
|
overflow-y: auto;
|
|
727
|
-
`,
|
|
727
|
+
`,Zp=g.div`
|
|
728
728
|
display: flex;
|
|
729
729
|
align-items: center;
|
|
730
730
|
gap: 8px;
|
|
@@ -735,29 +735,29 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
735
735
|
&:hover {
|
|
736
736
|
background-color: ${({$selected:e,theme:t})=>e?t.v2.colors.silver[600]:t.v2.colors.silver[700]};
|
|
737
737
|
}
|
|
738
|
-
`,
|
|
738
|
+
`,Qp=g.div`
|
|
739
739
|
flex: 1;
|
|
740
740
|
min-width: 0;
|
|
741
741
|
overflow: hidden;
|
|
742
742
|
text-overflow: ellipsis;
|
|
743
743
|
white-space: nowrap;
|
|
744
|
-
`,
|
|
744
|
+
`,eh=g.div`
|
|
745
745
|
display: flex;
|
|
746
746
|
align-items: center;
|
|
747
747
|
gap: 2px;
|
|
748
748
|
flex-shrink: 0;
|
|
749
|
-
`,
|
|
749
|
+
`,th=g.div`
|
|
750
750
|
display: flex;
|
|
751
751
|
padding-top: 4px;
|
|
752
752
|
border-top: 1px solid ${({theme:e})=>e.v2.colors.silver[700]};
|
|
753
|
-
`,
|
|
753
|
+
`,oh=({updateDataStream:a,deleteDataStream:i,createDataStream:s})=>{const c=f(),{isVm:u}=y(),{clearStore:p}=Oa(),{dataStreams:h,selectedStreamName:m,setSelectedStreamName:g}=Fe(),b=d(null),[v,C]=l(!1),[S,w]=l(""),[x,k]=l(""),[T,$]=l(!1),[N,I]=l(!1),[E,O]=l(!1),[A,D]=l(""),[R,F]=l(!1);eo(b,()=>C(!1)),n(()=>{v||w("")},[v]);const P=r(()=>{if(!S)return h;const e=S.toLowerCase();return h.filter(({name:t})=>t.toLowerCase().includes(e))},[h,S]),L=v?fi:bi;return u?null:e(o,{children:[e(Gp,{ref:b,children:[e(Kp,{"data-id":"data-stream-select",$isOpen:v,onClick:()=>C(e=>!e),children:[t(Ji,{size:24}),t(re,{size:ce.S,weight:500,nowrap:!0,children:Hp(m)}),t(Ee,{label:h.length,status:st.Unknown,textSize:ce.XXXS}),t(L,{size:20,fill:c.v2.colors.silver[200]})]}),v&&e(Yp,{children:[t(Jp,{children:t(Ut,{value:S,onChange:w,placeholder:jp,width:"100%"})}),t(qp,{children:0===P.length?t(Zp,{children:t(re,{size:ce.XS,color:Ce.Secondary,children:Wp})}):P.map(({name:o})=>{const n=o===Aa;return e(Zp,{"data-id":`stream-row-${o}`,$selected:o===m,onClick:()=>(e=>{e!==m&&(p(),g(e)),C(!1)})(o),children:[t(Qp,{children:t(re,{size:ce.XS,nowrap:!0,children:o})}),e(eh,{children:[t(qe,{"data-id":`stream-edit-${o}`,icon:di,size:Ze.XS,onClick:e=>{e.stopPropagation(),C(!1),k(o),$(!0)}}),!n&&t(qe,{"data-id":`stream-delete-${o}`,icon:ai,size:Ze.XS,onClick:e=>{e.stopPropagation(),C(!1),D(o),F(!0)}})]})]},`stream-${o}`)})}),t(th,{children:t(oe,{"data-id":"add-stream-trigger",variant:ae.Secondary,size:ne.S,leftIcon:ii,label:`${bt.NEW} ${Re.STREAM_NAME}`,fullWidth:!0,onClick:()=>{C(!1),p(),O(!0),I(!0)}})})]})]}),E&&t(Bl,{defaultExcludeName:m,children:t(kd,{isOpen:N,onClose:()=>I(!1),onCloseEnd:()=>O(!1),createDataStream:s})}),x&&t(Bl,{children:t(Td,{isOpen:T,dataStreamName:x,onClose:()=>$(!1),onCloseEnd:()=>k(""),updateDataStream:a})}),t(gl,{target:`${Re.STREAM_NAME.toLowerCase()} "${A}"`,isOpen:R,onClose:()=>F(!1),onApprove:async()=>{A&&await i(A)}})]})},nh=v`
|
|
754
754
|
0% {
|
|
755
755
|
background-position: 200% 50%;
|
|
756
756
|
}
|
|
757
757
|
100% {
|
|
758
758
|
background-position: 0% 50%;
|
|
759
759
|
}
|
|
760
|
-
`,
|
|
760
|
+
`,ah=g.div`
|
|
761
761
|
display: flex;
|
|
762
762
|
align-items: center;
|
|
763
763
|
justify-content: space-evenly;
|
|
@@ -768,44 +768,44 @@ import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import{useEffect
|
|
|
768
768
|
|
|
769
769
|
background: ${({theme:e})=>`linear-gradient(90deg, ${e.v2.colors.pink[500]} 0%, ${e.v2.colors.purple[400]} 25%, ${e.v2.colors.green[500]} 50%, ${e.v2.colors.purple[400]} 75%, ${e.v2.colors.pink[500]} 100%)`};
|
|
770
770
|
background-size: 200% 100%;
|
|
771
|
-
animation: ${
|
|
772
|
-
`,
|
|
771
|
+
animation: ${nh} 15s linear infinite;
|
|
772
|
+
`,ih=[Ci,Si,mi,gi],lh=({columnsMaxHeight:o,metrics:n,refetchSources:i,refetchDestinations:l,refetchActions:s,refetchInstrumentationRules:r,updateDataStream:c,deleteDataStream:d,createDataStream:u,...p})=>{const h=f();return e(ra,{children:[e(Ue,{customTitle:t(oh,{updateDataStream:c,deleteDataStream:d,createDataStream:u}),customSearch:t(sp,{}),filters:t(Zu,{}),children:[t(ah,{children:ih.map((o,n)=>e(a,{children:[t(o,{size:24}),n<ih.length-1&&t(hi,{fill:h.v2.colors.white[500]+je["020"],size:24})]},o.name))}),t(Op,{height:o,metrics:n,refetchSources:i,refetchDestinations:l,refetchActions:s,refetchInstrumentationRules:r})]}),t(Ap,{...p}),t(Up,{restartWorkloads:p.restartWorkloads,persistSources:p.persistSources})]})};var sh;!function(e){e.Gateway="gateway",e.Node="node"}(sh||(sh={}));const rh=({onClickDownloadDiagnose:o,onClickRefresh:n,loading:a,disabled:i})=>{const l=r(()=>{const e=[];return o&&e.push({id:Po(),type:Vt.Button,buttonProps:{label:"Download Diagnose",leftIcon:Mi,size:ne.S,variant:ae.Text,onClick:o,disabled:i}}),n&&e.push({id:Po(),type:Vt.Button,buttonProps:{label:"Refresh",leftIcon:Ni,size:ne.S,variant:ae.Text,onClick:n,disabled:i,loading:a}}),e},[o,n,i,a]);return e(te,{$alignItems:"center",$justifyContent:"space-between",children:[t(Da,{icon:qi,title:"Collectors Pipeline"}),t(Ra,{actions:l})]})},ch=({pod:o,getExtendedPodInfo:a,onClose:i})=>{const{formatTimeAgo:s}=At(),[c,d]=l(null);n(()=>{o?a(o.namespace,o.name).then(e=>d(e??null)):d(null)},[o]);const u=r(()=>[{id:Po(),title:"Node",label:c?.node??"-",withCopy:!0},{id:Po(),title:"Status",badge:{status:Fa(c?.status),label:c?.status??"-"}}],[c]),p=r(()=>c?.containers?.map(e=>({id:Po(),items:[{id:Po(),title:"Container",label:e.name??"-"},{id:Po(),title:"Status",label:e.startedAt?`${e.status} (since ${s(e.startedAt)})`:e.status},{id:Po(),title:"Ready",badge:{status:e.ready?ge.Success:ge.Error,leftIcon:e.ready?si:ri,label:e.ready?"True":"False",invertColors:!0}},{id:Po(),title:"Started",badge:{status:e.started?ge.Success:ge.Error,leftIcon:e.started?si:ri,label:e.started?"True":"False",invertColors:!0}},{id:Po(),title:"Image Version",label:e.image?.split(":")?.[1]??"-"},{id:Po(),title:"Image Repository",label:e.image?.split(":")?.[0]??"-"},{id:Po(),title:Re.RESTARTS,label:e.restarts.toString()},{id:Po(),title:"State Reason",label:e.stateReason??"-"},{id:Po(),title:"Resource Requests",label:`CPU ${e.resources.requests.cpu} • Memory ${e.resources.requests.memory}`},{id:Po(),title:"Resource Limits",label:`CPU ${e.resources.limits.cpu} • Memory ${e.resources.limits.memory}`}]}))||[],[c]);return t(ft,{isOpen:!!o,header:{icon:ki,title:"Pod Information",onClose:i},children:c?e(yt,{bgTint:"1000",richTitle:{icon:ki,title:c.name,withCopy:!0},children:[t(yt,{bgTint:"900",cellsPerRow:2,items:u}),e(yt,{bgTint:"900",richTitle:{icon:Hi,title:"Kubectl Commands"},withCollapse:!0,collapseIsDefaultOpen:!0,children:[t(Xt,{value:`kubectl get pod ${c.name} -n ${c.namespace} -o yaml`}),t(Xt,{value:`kubectl describe pod ${c.name} -n ${c.namespace}`}),t(Xt,{value:`kubectl logs ${c.name} -n ${c.namespace}`})]}),t(yt,{bgTint:"900",richTitle:{title:"Containers Overview"},withCollapse:!0,collapseIsDefaultOpen:!0,children:p.length?p.map(({id:e,items:o})=>t(yt,{bgTint:"800",cellsPerRow:2,items:o},e)):t(se,{title:"No containers",subTitle:"Pod has no containers"})}),t(bl,{bgTint:"900",yaml:c.manifestYAML,defaultOpen:!0})]}):t(Ke,{$height:"50vh",children:t(Qe,{withSpinner:!0})})})};var dh;!function(e){e.PodName="podName",e.Status="status",e.Restarts="restarts",e.NodeName="nodeName",e.SpanDropDrate="spanDropDrate",e.Age="age",e.DockerImage="dockerImage"}(dh||(dh={}));const uh=[{key:dh.PodName,label:"Pod Name"},{key:dh.Status,label:"Status"},{key:dh.Restarts,label:Re.RESTARTS},{key:dh.NodeName,label:"Node Name"},{key:dh.Age,label:"Age"},{key:dh.DockerImage,label:"Collector Version"}],ph=({isLoading:o,tableRowsMaxHeight:n,pods:a,getExtendedPodInfo:i})=>{const s=f(),{formatTimeAgo:c}=At(),[d,u]=l(null),p=r(()=>a.map(o=>({onClick:()=>u(o),cells:[{key:dh.PodName,rawValue:o.name},{key:dh.Status,rawValue:o.status,component:()=>{return e=o.status,t(Ee,{status:Fa(e),label:e});var e}},{key:dh.Restarts,rawValue:o.restartsCount.toString()},{key:dh.NodeName,rawValue:o.nodeName},{key:dh.SpanDropDrate,rawValue:0,component:()=>{const{collectorMetrics:n}=o;if(!n)return t(re,{children:"-"});const a=(n?.metricsAcceptedRps??0)+(n?.metricsDroppedRps??0),i=a>0?Math.round((n?.metricsDroppedRps??0)/a*100):0,l=i>0?ge.Error:ge.Success,s=(n?.exporterSuccessRps??0)+(n?.exporterFailedRps??0),r=s>0?Math.round((n?.exporterFailedRps??0)/s*100):0,c=r>0?ge.Error:ge.Success;return e(te,{$gap:4,children:[t(we,{text:`Accepted: ${n.metricsAcceptedRps.toLocaleString()}, Dropped: ${n.metricsDroppedRps.toLocaleString()}`,children:t(Ee,{status:l,label:`Receiver ${i}%`,leftIcon:l===ge.Error?Zi:Qi,useSecondaryTone:!0,invertColors:!0})}),t(we,{text:`Success: ${n.exporterSuccessRps.toLocaleString()}, Failed: ${n.exporterFailedRps.toLocaleString()}`,children:t(Ee,{status:c,label:`Exporter ${r}%`,leftIcon:c===ge.Error?Zi:Qi,useSecondaryTone:!0,invertColors:!0})})]})}},{key:dh.Age,rawValue:c(o.creationTimestamp)},{key:dh.DockerImage,rawValue:o.image}]})),[a,s]);return e(yt,{bgTint:"1000",moreSpacing:!0,richTitle:{icon:ki,title:"Pods"},children:[t(co,{variant:uo.Data,maxHeight:n,isLoading:o,columns:uh,rows:p}),t(ch,{pod:d,getExtendedPodInfo:i,onClose:()=>u(null)})]})},hh=({isOpen:e,onClose:o,title:n,yaml:a})=>t(ft,{isOpen:e,header:{icon:el,title:n,onClose:o},children:t(bl,{yaml:a,defaultOpen:!0})}),mh=e=>{switch(e){case Pa.Healthy:return"All desired replicas are updated, available, and ready";case Pa.Updating:return"Workload is progressing towards desired state (e.g., updating pods)";case Pa.Degraded:return"Progressing but with availability issues (e.g., not enough available replicas)";case Pa.Failed:return"Progress deadline exceeded or an unrecoverable error occurred";case Pa.Down:return"No available replicas";case Pa.Unknown:return"Status cannot be determined from current signals";default:return"Status unknown"}};var gh;!function(e){e.ManifestYaml="manifest-yaml",e.ConfigMapYaml="configmap-yaml"}(gh||(gh={}));const fh=g.div`
|
|
773
773
|
flex: 0.5;
|
|
774
774
|
padding: 12px;
|
|
775
775
|
border-radius: 12px;
|
|
776
776
|
background-color: ${({theme:e})=>e.v2.colors.silver[800]};
|
|
777
|
-
`,
|
|
777
|
+
`,bh=({selectedTab:o,gatewayInfo:n,nodeCollectorInfo:a,isLoading:i})=>{const{formatTimeAgo:s}=At(),[c,d]=l(null),u=r(()=>(e=>{switch(e){case sh.Gateway:return"Deployment";case sh.Node:return"DaemonSet";default:return"Pipeline Collectors"}})(o),[o]),p=r(()=>((e,t,o,n)=>{const a={status:st.Disabled,label:"No rollouts yet"};let i=!1,l=null;switch(e){case sh.Gateway:i=t?.rolloutInProgress??!1,l=t?.lastRolloutAt??null;break;case sh.Node:i=o?.rolloutInProgress??!1,l=o?.lastRolloutAt??null;break;default:return a}return i?{status:ge.Info,label:"Rollout in progress",rightIcon:Ni,useSecondaryTone:!0}:l?{status:st.Disabled,label:`Last Rollout: ${n(l)}`}:a})(o,n,a,s),[n,a,o,s]),h=r(()=>((e,t,o,n)=>{let a=n?ge.Info:st.Unknown,i=n?"Loading":Pa.Unknown,l=n?"Fetching data...":mh(Pa.Unknown);switch(e){case sh.Gateway:a=t?.status?Fa(t?.status):a,i=t?.status??i,l=t?.status?mh(t.status):l;break;case sh.Node:a=o?.status?Fa(o?.status):a,i=o?.status??i,l=o?.status?mh(o.status):l}return{status:a,title:i,description:l}})(o,n,a,i),[n,a,o,i]),m=r(()=>((e,t,o)=>{switch(e){case sh.Gateway:return[{gaugeWidth:128,min:0,max:t?.hpa?.max??0,current:t?.hpa?.current??0,title:"HPA Spec",primaryLabel:"Current replicas",secondaryLabel:"Max replicas"}];case sh.Node:return[{gaugeWidth:128,min:0,max:o?.nodes?.desired??0,current:o?.nodes?.ready??0,title:"Nodes",primaryLabel:"Ready nodes",secondaryLabel:"Desired nodes"}];default:return[]}})(o,n,a),[n,a,o]),g=r(()=>((e,t,o,n)=>{switch(e){case sh.Gateway:return[{title:"Resources (request/limit)",cells:[{label:"CPU",value:`${t?.resources?.requests.cpu}/${t?.resources?.limits.cpu}`,isLoading:n},{label:"Memory",value:`${t?.resources?.requests.memory}/${t?.resources?.limits.memory}`,isLoading:n}]}];case sh.Node:return[{title:"Resources (request/limit)",cells:[{label:"CPU",value:`${o?.resources?.requests.cpu}/${o?.resources?.limits.cpu}`,isLoading:n},{label:"Memory",value:`${o?.resources?.requests.memory}/${o?.resources?.limits.memory}`,isLoading:n}]}];default:return[]}})(o,n,a,i),[n,a,o,i]),f=r(()=>(o===sh.Gateway?n?.manifestYAML:a?.manifestYAML)??"",[n,a,o]),b=r(()=>(o===sh.Gateway?n?.configMapYAML:a?.configMapYAML)??"",[n,a,o]);return e(yt,{bgTint:"1000",moreSpacing:!0,richTitle:{icon:el,title:u,badge:p},actions:[{id:Po(),type:Vt.ButtonDropData,buttonProps:{variant:ae.Secondary,size:ne.S,label:"View YAML",onClick:e=>d(e)},dropDataProps:{items:[{id:gh.ManifestYaml,label:u,icon:tl},{id:gh.ConfigMapYaml,label:"ConfigMap",icon:tl}]}}],children:[e(te,{$gap:16,children:[t("div",{children:t(La,{...h})}),m.map(e=>t(fh,{children:t("div",{children:t(_a,{...e})})},e.title)),g.map(e=>t(Ma,{...e},e.title))]}),t(hh,{isOpen:c===gh.ManifestYaml,onClose:()=>d(null),title:u,yaml:f}),t(hh,{isOpen:c===gh.ConfigMapYaml,onClose:()=>d(null),title:"ConfigMap",yaml:b})]})},vh=[{value:sh.Gateway,label:"Gateway"},{value:sh.Node,label:"Node Collector"}],yh=({minSupportedVersion:o=0,tableRowsMaxHeight:a,getGatewayInfo:i,getGatewayPods:s,getNodeCollectorInfo:d,getNodeCollectorPods:u,getExtendedPodInfo:p})=>{const{isVersionSupported:h,version:m}=y(o),[g,f]=l(!1),[b,v]=l(sh.Gateway),[C,S]=l(null),[w,x]=l([]),[k,T]=l(null),[$,N]=l([]),I=c(async()=>{f(!0);try{switch(b){case sh.Gateway:S(await i()??null),x(await s()??[]);break;case sh.Node:T(await d()??null),N(await u()??[])}}catch(e){}f(!1)},[b]);n(()=>{I()},[I]);const E=r(()=>b===sh.Gateway?w:$,[w,$,b]);return e(ra,{children:[t(rh,{disabled:!h,loading:g,onClickDownloadDiagnose:void 0,onClickRefresh:I}),e(Ba,{children:[e(V,{children:[t(ue,{variant:so.Underline,size:za.L,options:vh,selected:b,setSelected:v}),t(bh,{selectedTab:b,gatewayInfo:C,nodeCollectorInfo:k,isLoading:g})]}),t(ph,{isLoading:g,tableRowsMaxHeight:a,pods:E,getExtendedPodInfo:p}),!h&&t(Cl,{minSupportedVersion:o,currentVersion:m||""})]})]})},Ch=g.div`
|
|
778
778
|
display: inline-flex;
|
|
779
779
|
align-items: center;
|
|
780
780
|
min-width: 0;
|
|
781
781
|
overflow: hidden;
|
|
782
782
|
white-space: pre;
|
|
783
783
|
text-overflow: ellipsis;
|
|
784
|
-
`,
|
|
784
|
+
`,Sh=g.div`
|
|
785
785
|
display: flex;
|
|
786
786
|
flex-direction: column;
|
|
787
787
|
gap: 4px;
|
|
788
788
|
min-width: 0;
|
|
789
789
|
flex: 1;
|
|
790
790
|
opacity: ${({$disabled:e})=>e?.4:1};
|
|
791
|
-
`,
|
|
791
|
+
`,wh=g(te)`
|
|
792
792
|
flex-shrink: 0;
|
|
793
793
|
gap: 6px;
|
|
794
794
|
align-items: center;
|
|
795
795
|
min-height: 22px;
|
|
796
|
-
`;const
|
|
796
|
+
`;const xh=[{key:"content",label:"Content",noSort:!0,noFilter:!0},{key:"badges",label:"Type",noSort:!0,noFilter:!0,flex:"0 0 128px"}],kh=[{value:"all",label:Va},{value:"Relevance",label:"Relevance"},{value:"Duration",label:"Duration"},{value:"Error",label:"Error"}],Th=({title:o,items:n,isLoading:a,showTypeFilter:i,tableRowsMaxHeight:s,onRuleClick:d,onCreateRule:u,onEditRule:p,onDeleteRule:h})=>{const m=f(),[g,b]=l(""),[v,y]=l("all"),C=r(()=>{let e=function(e,t,o){return o&&"all"!==t?e.filter(e=>e.typeBadge===t):e}(n,v,i);return e=function(e,t){if(!t.trim())return e;const o=t.toLowerCase();return e.filter(e=>{const t=e.name?.toLowerCase().includes(o),n=e.summary.map(e=>e.text).join("").toLowerCase();return t||n.includes(o)})}(e,g),e},[n,v,i,g]),w=r(()=>C.map(o=>{const n=o.typeBadge?function(e,t){const o=e.v2.colors;switch(t){case"Relevance":return{bg:o.blue[700],text:o.white[500]};case"Duration":return{bg:o.purple[700],text:o.white[500]};case"Error":return{bg:o.red[500],text:o.black[500]}}}(m,o.typeBadge):void 0;return{cells:[{key:"content",rawValue:o.summary.map(e=>e.text).join(""),component:()=>e(Sh,{$disabled:o.disabled,children:[t(Ch,{children:t(S,{parts:o.summary})}),o.name&&t(re,{size:ce.XXS,color:Ce.Secondary,nowrap:!0,children:o.name})]})},{key:"badges",rawValue:o.typeBadge||"",component:()=>e(wh,{children:[o.disabled&&t(Ee,{label:Xa,textSize:ce.XXXS,backgroundColor:m.v2.colors.grey[700],textColor:m.v2.colors.grey[300]}),o.typeBadge&&n&&t(Ee,{label:o.typeBadge,textSize:ce.XXXS,backgroundColor:n.bg,textColor:n.text})]})}],onClick:()=>d(o)}}),[C,m,d]),x=r(()=>{const e=e=>t(ci,{...e,fill:m.v2.colors.red[500]});return e.displayName="RedDeleteIcon",e},[m]),k=c(e=>{const t=w.indexOf(e);if(t<0)return[];const o=C[t];return o?[{id:"edit","data-id":"sampling-rule-action-edit",label:go,leftIcon:di,onClick:()=>p(o.ruleId,o.samplingId)},{id:"delete","data-id":"sampling-rule-action-delete",label:"",leftIcon:x,onClick:()=>h(o.ruleId,o.samplingId)}]:[]},[w,C,p,h,x]);return t(Ue,{fullHeight:!0,richTitle:{icon:zi,title:o,badge:{label:n.length,backgroundColor:m.v2.colors.silver[600],textColor:m.v2.colors.white[500]}},search:{"data-id":"sampling-search-rules",value:g,onChange:b,placeholder:"Search..",width:"500px",...i?{segment:{"data-id":"sampling-segment-type-filter",options:kh,selected:v,setSelected:y}}:{}},children:t(co,{variant:uo.Pretty,hideHeader:!0,maxHeight:s,isLoading:a,noDataProps:g.trim()?{hideIcon:!0,title:Ua,subTitle:Wa(g)}:{hideIcon:!0,title:ja,button:{label:Ha,onClick:u}},columns:xh,rows:w,getRowActions:k})})},$h=({workloads:o,samplingRules:a,k8sHealthProbesConfig:i,loading:s,docsUrl:u,tableRowsMaxHeight:p,fetchSamplingRules:h,createNoisyOperationRule:m,updateNoisyOperationRule:g,createHighlyRelevantOperationRule:f,updateHighlyRelevantOperationRule:b,createCostReductionRule:v,updateCostReductionRule:y,deleteSamplingRule:C,updateK8sHealthProbesConfig:S})=>{const k=r(()=>o.map(({id:e})=>({id:`${e.namespace}/${e.kind}/${e.name}`,label:`${e.namespace} / ${e.kind} / ${e.name}`})),[o]),X=r(()=>Array.from(new Set(o.map(({id:e})=>e.namespace))).sort().map(e=>({id:e,label:e})),[o]),[U,H]=l(T.Noisy),[j,W]=l(null),[G,K]=l(!1),[Y,J]=l(!1),[q,Z]=l(null),[Q,ee]=l(!1),[ie,le]=l(!1),[se,re]=l(!1),[ce,de]=l(!1),pe=d(!1);n(()=>{pe.current||s||(pe.current=!0,0===a.length&&de(!0))},[s,a]);const he=r(()=>w(i),[i]),fe=r(()=>$(a),[a]),be=r(()=>x(fe?.rule??null),[fe]),ve=r(()=>N(a),[a]),ye=r(()=>I(ve?.rule??null),[ve]),Ce=d(j);Ce.current=j,n(()=>{const e=Ce.current;if(!e)return;const t=E(a,e);t?W(t):(W(null),K(!1))},[a]);const Se=r(()=>{const e=new Set;return fe&&e.add(fe.rule.ruleId),ve&&e.add(ve.rule.ruleId),e},[fe,ve]),we=r(()=>O(a,U,Se),[a,U,Se]),xe=c(()=>J(!0),[]),ke=c(()=>J(!1),[]),Te=c(()=>de(!1),[]),$e=c(async e=>{const t=a[0]?.id??"default";switch(L[U]){case"noisy":await m(t,R(e));break;case"highlyRelevant":await f(t,D(e));break;case"costReduction":await v(t,A(e))}J(!1)},[a,U,m,f,v]),Ne=c(e=>{const t=F(a,e);t&&(K(!1),W(t))},[a]),Ie=c(()=>{W(null),K(!1)},[]),Ee=c((e,t)=>{const o=j;if(o&&o.rule.ruleId===e&&o.samplingId===t)K(!0),W({...o});else for(const o of a){if(o.id!==t)continue;const n=[...o.noisyOperations.map(e=>({category:"noisy",rule:e})),...o.highlyRelevantOperations.map(e=>({category:"highlyRelevant",rule:e})),...o.costReductionRules.map(e=>({category:"costReduction",rule:e}))].find(t=>t.rule.ruleId===e);if(n)return K(!0),void W({category:n.category,rule:n.rule,samplingId:t,summary:P(n.category,n.rule)})}},[j,a]),Oe=c(async(e,t,o)=>{const n=j?.category;if(n){switch(n){case"noisy":await g(o,t,R(e));break;case"highlyRelevant":await b(o,t,D(e));break;case"costReduction":await y(o,t,A(e))}K(!1)}},[j,g,b,y]),Ae=c((e,t)=>{Z({ruleId:e,samplingId:t})},[]),Re=c(async()=>{if(!q)return;const{ruleId:e,samplingId:t}=q,o=j?.category||L[U];await C(t,e,o),W(null),K(!1),Z(null)},[q,j,U,C]),Fe=c(()=>Z(null),[]),Le=c(async(e,t)=>{await S(e,t),ee(!1)},[S]),_e=c(async e=>{const t=a[0]?.id??"default",o=fe;o?await b(o.samplingId,o.rule.ruleId,{name:o.rule.name,disabled:!e,error:!0,sourceScopes:null,operation:null,percentageAtLeast:null,notes:o.rule.notes}):e&&await f(t,{name:"Auto - Keep All Error Traces",disabled:!1,error:!0,sourceScopes:null,operation:null,percentageAtLeast:null}),le(!1)},[a,fe,f,b]),Be=c(async(e,t)=>{const o=a[0]?.id??"default",n=ve;n?await y(n.samplingId,n.rule.ruleId,{name:n.rule.name,disabled:!e,sourceScopes:null,operation:null,percentageAtMost:t,notes:n.rule.notes}):e&&await v(o,{name:"Auto - Drop Traces Cluster-Wide",disabled:!1,sourceScopes:null,operation:null,percentageAtMost:t}),re(!1)},[a,ve,v,y]),Xe=c(e=>{const t=L[U];let o=null;switch(t){case"noisy":{const n=R(e);o=_(a,t,{sourceScopes:n.sourceScopes,operation:n.operation});break}case"highlyRelevant":{const n=D(e);o=_(a,t,{sourceScopes:n.sourceScopes,operation:n.operation,error:n.error??!1,durationAtLeastMs:n.durationAtLeastMs});break}case"costReduction":{const n=A(e);o=_(a,t,{sourceScopes:n.sourceScopes,operation:n.operation});break}}return o?{message:Ga,ruleId:o}:null},[a,U]),Ve=c(e=>{const t=j?.category,o=j?.rule.ruleId;if(!t)return null;let n=null;switch(t){case"noisy":{const i=R(e);n=_(a,t,{sourceScopes:i.sourceScopes,operation:i.operation},o);break}case"highlyRelevant":{const i=D(e);n=_(a,t,{sourceScopes:i.sourceScopes,operation:i.operation,error:i.error??!1,durationAtLeastMs:i.durationAtLeastMs},o);break}case"costReduction":{const i=A(e);n=_(a,t,{sourceScopes:i.sourceScopes,operation:i.operation},o);break}}return n?{message:Ga,ruleId:n}:null},[a,j]),Ue=c(e=>{J(!1);for(const t of a){const o=[...t.noisyOperations.map(e=>({category:"noisy",rule:e})),...t.highlyRelevantOperations.map(e=>({category:"highlyRelevant",rule:e})),...t.costReductionRules.map(e=>({category:"costReduction",rule:e}))].find(t=>t.rule.ruleId===e);if(o)return K(!0),void W({category:o.category,rule:o.rule,samplingId:t.id,summary:P(o.category,o.rule)})}},[a]),He=r(()=>{const e=[];return u&&e.push({id:Po(),type:Vt.Button,buttonProps:{"data-id":"sampling-btn-docs",label:Ka,leftIcon:li,size:ne.S,variant:ae.Text,onClick:()=>window.open(u,"_blank")}}),e.push({id:Po(),type:Vt.Button,buttonProps:{"data-id":"sampling-btn-refresh",label:Ya,leftIcon:Ni,size:ne.S,variant:ae.Text,onClick:h,loading:s}}),e.push({id:Po(),type:Vt.Button,buttonProps:{"data-id":"sampling-btn-create-rule",label:Ja,rightIcon:ii,size:ne.S,variant:ae.Primary,onClick:xe}}),e},[u,h,s,xe]);return e(ra,{children:[e(te,{$gap:12,$justifyContent:"space-between",children:[t(Da,{icon:zi,title:Za,subTitle:qa}),t(Ra,{actions:He})]}),e(V,{$gap:12,children:[t(ue,{variant:so.Underline,size:za.L,options:M,selected:U,setSelected:H}),e(te,{$justifyContent:"space-between",children:[t(me,{status:ge.Default,message:B[U]}),u&&t(oe,{"data-id":"sampling-btn-docs-banner",label:"Docs",leftIcon:li,size:ne.S,variant:ae.Text,onClick:()=>window.open(u,"_blank")})]}),U===T.Noisy?t(al,{title:ze,summary:he,onEdit:()=>ee(!0)}):U===T.HighlyRelevant?t(al,{title:Pe,summary:be,onEdit:()=>le(!0)}):U===T.CostReduction?t(al,{title:Me,summary:ye,onEdit:()=>re(!0)}):null,t(Th,{title:z[U],items:we,isLoading:s,showTypeFilter:U===T.HighlyRelevant,tableRowsMaxHeight:p,onRuleClick:Ne,onCreateRule:xe,onEditRule:Ee,onDeleteRule:Ae})]}),t(md,{formType:Nl.View,data:j,defaultEditMode:G,onClose:Ie,onDelete:Ae,onSaveEdit:Oe,sourceOptions:k,namespaceOptions:X,validateForm:Ve,onNavigateToDuplicate:Ue}),t(md,{formType:Nl.Create,isOpen:Y,category:L[U],onClose:ke,onSubmit:$e,sourceOptions:k,namespaceOptions:X,validateForm:Xe,onNavigateToDuplicate:Ue}),t(md,{formType:Nl.EditAutoNoisy,isOpen:Q,enabled:i?.enabled??!1,keepPercentage:i?.keepPercentage??0,onClose:()=>ee(!1),onSave:Le}),t(md,{formType:Nl.EditAutoHighlyRelevant,isOpen:ie,enabled:!!fe&&!fe.rule.disabled,onClose:()=>le(!1),onSave:_e}),t(md,{formType:Nl.EditAutoCostReduction,isOpen:se,enabled:!!ve&&!ve.rule.disabled,dropPercentage:ve?.rule.percentageAtMost??25,onClose:()=>re(!1),onSave:Be}),t(De,{title:oi,description:ti,isOpen:!!q,onClose:Fe,denyButton:{label:ei,variant:ae.Secondary,onClick:Fe},approveButton:{label:Qa,variant:ae.Primary,onClick:()=>{Re(),Fe()}}}),t(xu,{isOpen:ce,onClose:Te,k8sHealthProbesConfig:i,samplingId:a[0]?.id,docsUrl:u,updateK8sHealthProbesConfig:S,createHighlyRelevantOperationRule:f,createCostReductionRule:v})]})},Nh=g.div`
|
|
797
797
|
display: flex;
|
|
798
798
|
align-items: center;
|
|
799
799
|
justify-content: space-between;
|
|
800
800
|
padding: 0 12px;
|
|
801
|
-
`,
|
|
801
|
+
`,Ih=({disabled:o,loading:n,tabs:a,selectedTab:i,setSelectedTab:s,onClickReset:c,onClickRefresh:d})=>{const[u,p]=l(!1),h=r(()=>{const e=[];return c&&e.push({id:Po(),type:Vt.Button,buttonProps:{label:"Reset",leftIcon:ai,size:ne.S,variant:ae.Text,onClick:()=>p(!0),disabled:o}}),d&&e.push({id:Po(),type:Vt.Button,buttonProps:{label:"Refresh",leftIcon:Ni,size:ne.S,variant:ae.Text,onClick:d,disabled:o,loading:n}}),e},[o,n,d]);return e(Nh,{children:[e(te,{$gap:12,$alignItems:"center",children:[t(Da,{icon:xi,title:"Odigos Settings"}),t(Je,{width:"350px",options:a,values:[i],setValues:e=>s(e[0]),disabled:o})]}),t(Ra,{actions:h}),t(De,{isOpen:u,onClose:()=>p(!1),title:"Reset Settings",description:"Are you sure you want to reset the settings? This will clear the odigos-local-ui-config and reset the settings to the default values.",denyButton:{label:"Deny",variant:ae.Secondary,onClick:()=>p(!1)},approveButton:{label:"Approve",variant:ae.Primary,onClick:()=>{c?.(),p(!1)}}})]})},Eh=g(te)`
|
|
802
802
|
flex: 1;
|
|
803
803
|
min-height: 0;
|
|
804
804
|
width: 100%;
|
|
805
805
|
align-self: stretch;
|
|
806
|
-
|
|
806
|
+
`,Oh=g(V)`
|
|
807
807
|
flex: 1;
|
|
808
808
|
min-height: 0;
|
|
809
809
|
height: 100%;
|
|
810
810
|
overflow-y: auto;
|
|
811
|
-
`,
|
|
811
|
+
`,Ah=e=>"general"===e.name?0:"advanced"===e.name?2:1,Dh=({minSupportedVersion:o=0,pageHeightOffset:a=0,configYamls:i,configYamlsLoading:s,effectiveConfig:c,effectiveConfigLoading:d,refetch:u,factoryReset:p,onSave:h,saveLoading:m})=>{const{isVersionSupported:g,version:f,isEnterprise:b}=y(o),v=r(()=>{if(!c)return{};const{manifestYAML:e,provenance:t,...o}=c;return o},[c]),{formData:C,handleFormChange:S,getNestedValue:w,getFormDiff:x,isFormDirty:k}=wt(v);n(()=>{"{}"!==JSON.stringify(v)&&"{}"===JSON.stringify(C)&&S(void 0,void 0,v)},[v,C]);const T=r(()=>[...i].sort((e,t)=>Ah(e)-Ah(t)),[i]),$=r(()=>(e=>{if(!e)return{};const t={};for(const o of e)t[o.helmPath]=o.reconciledFrom;return t})(c?.provenance),[c?.provenance]),N=r(()=>{const e=new Set;for(const t of i)for(const o of t.fields)o.componentType===ie.Dropdown&&e.add(o.helmValuePath);return e},[i]),I=r(()=>i.flatMap(e=>e.fields.map(e=>({name:e.helmValuePath,value:w("formData",e.helmValuePath)}))),[i,C,w]),[E,O]=l(!1),A=async()=>{const e=((e,t)=>{const o=(e,t,o)=>{for(let o=0;o<t.length-1;o++){const n=t[o];n in e&&"object"==typeof e[n]&&null!==e[n]||(e[n]={}),e=e[n]}e[t[t.length-1]]=o},n=JSON.parse(JSON.stringify(e));for(const e of t){const t=e.split(".");let a=n;for(const e of t){if(null==a||"object"!=typeof a){a=void 0;break}a=a[e]}"string"==typeof a&&o(n,t,a.replaceAll("-","_"))}return n})(x(v,C),N);await(h?.(e)),S(void 0,void 0,{})},D=r(()=>[{id:Po(),type:Vt.Button,buttonProps:{"data-id":"settings-save",variant:ae.Primary,size:ne.S,label:"Save Changes",leftIcon:vi,loading:m,onClick:()=>O(!0)}},{id:Po(),type:Vt.Button,buttonProps:{"data-id":"settings-cancel",variant:ae.Secondary,size:ne.S,label:"Cancel",leftIcon:yi,onClick:()=>S(void 0,void 0,v)}}],[m,x,v,C,S]),R=r(()=>T.map(e=>({id:e.name,label:e.displayName})),[T]),F=r(()=>T.map(e=>e.name),[T]),{selectedSection:P,setSelectedSection:L,setSectionRef:_,setScrollContainerRef:M}=ni({sectionNames:F});return e(ra,{$heightOffset:a,$gap:12,children:[t(Ih,{disabled:!g,loading:s||d,tabs:R,selectedTab:P,setSelectedTab:L,onClickReset:p?()=>p().then(()=>u?.()):void 0,onClickRefresh:u?()=>u():void 0}),e(Ba,{children:[!g&&t(Cl,{minSupportedVersion:o,currentVersion:f||""}),t(ca,{isOpen:k,richTitle:{icon:xi,title:"Config Settings"},actions:D}),t(De,{isOpen:E,title:"Save Changes via UI?",description:"We recommend updating via your Helm values.yaml to ensure changes are version-controlled and go through a proper review process.",onClose:()=>O(!1),denyButton:{label:"Keep editing",variant:ae.Secondary,onClick:()=>O(!1)},approveButton:{label:"Save changes",variant:ae.Primary,onClick:()=>{A(),O(!1)}}}),e(Eh,{$gap:24,$alignItems:"stretch",children:[t(Oh,{ref:M,$gap:24,$width:"100%",children:i.length?T.map(o=>t(Ue,{id:o.name,ref:e=>_(o.name,e),richTitle:{icon:xi,title:o.displayName},children:o.fields.map(o=>{if(o.isEnterpriseOnly&&!b)return null;if(o.renderCondition&&!he(o.renderCondition,[],I))return null;const n=nt(o.componentProps||"{}",{}),a=$[o.helmValuePath];return e(V,{$gap:4,children:[t(nl,{componentType:o.componentType,inputType:n.type,name:o.helmValuePath,label:o.displayName,tooltip:o.description,badge:a?{status:"odigos-local-ui-config"===a?ge.Warning:st.Unknown,label:a,tooltip:`This field is reconciled from the following resource: ${a}`}:void 0,disabled:o.isHelmOnly||m,value:w("formData",o.helmValuePath),setValue:e=>S(o.helmValuePath,e),dropdownOptions:n.options?.map(e=>({id:e,label:e})),dropdownNoSearch:!0,dropdownNoCheckbox:!0},o.helmValuePath),o.isHelmOnly?t(me,{status:ge.Info,smallIcon:!0,message:"This field can only be updated via Helm values.yaml file"}):null]},o.helmValuePath)})},o.name)):s?t(Ke,{$height:"30vh",children:t(Qe,{withSpinner:!0})}):t(Ue,{richTitle:{icon:xi,title:"Config Settings"},children:t(se,{title:"YAML not found",subTitle:"The YAML for this resource is not available"})})}),t(Oh,{children:d&&!c?.manifestYAML?t(Ke,{$height:"30vh",children:t(Qe,{withSpinner:!0})}):t(bl,{title:"Effective Config YAML",yaml:c?.manifestYAML?.replaceAll(" |",""),defaultOpen:!0,fullHeight:!0})})]})]})]})};export{Ns as AddActionDrawer,Ql as AddActionForm,kd as AddDataStreamModal,_s as AddDestinationDrawer,os as AddDestinationForm,Ms as AddRuleDrawer,ds as AddRuleForm,ar as AddSourceDrawer,Eu as CentralConnections,ps as DataStreamForm,us as DataStreamMergeWarning,ir as EditActionDrawer,lr as EditConfigDrawer,Td as EditDataStreamModal,sr as EditDestinationDrawer,rr as EditRuleDrawer,td as EditSourceDrawer,hs as EditSourceForm,Id as ONBOARDING_DONE_MODAL_ID,Uu as Onboarding,Ed as OnboardingDone,lh as Overview,yh as PipelineCollectors,xu as SamplingOnboardingModal,md as SamplingRuleDrawer,ys as SamplingRuleForm,$h as SamplingRules,Dh as Settings,xd as SystemDrawer,vh as TABS};
|