@odigos/ui-kit 0.0.204 → 0.0.207

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.
Files changed (41) hide show
  1. package/CHANGELOG.md +322 -0
  2. package/lib/chunks/{index-CqkUTwRb.js → index-BWrHoFMs.js} +1 -1
  3. package/lib/chunks/{ui-components-B7yqdEby.js → ui-components-BlfhQM0V.js} +21 -14
  4. package/lib/components/_v2/badge/index.d.ts +1 -1
  5. package/lib/components/_v2/button/index.d.ts +3 -1
  6. package/lib/components/_v2/drawer/header/index.d.ts +3 -3
  7. package/lib/components/_v2/drawer/index.d.ts +1 -1
  8. package/lib/components/_v2/note/index.d.ts +1 -0
  9. package/lib/components/_v2/typography/index.d.ts +1 -0
  10. package/lib/components/v2.js +1 -1
  11. package/lib/components.js +1 -1
  12. package/lib/constants.js +1 -1
  13. package/lib/containers/_v2/_drawers/add-action-drawer/index.d.ts +2 -2
  14. package/lib/containers/_v2/_drawers/add-destination-drawer/index.d.ts +2 -2
  15. package/lib/containers/_v2/_drawers/add-rule-drawer/index.d.ts +2 -2
  16. package/lib/containers/_v2/_drawers/edit-config-drawer/index.d.ts +2 -2
  17. package/lib/containers/_v2/_drawers/system-drawer/index.d.ts +2 -1
  18. package/lib/containers/_v2/pipeline-collectors/general-info/yaml-drawer/index.d.ts +2 -1
  19. package/lib/containers/_v2/pipeline-collectors/pods-info/pod-drawer/index.d.ts +2 -2
  20. package/lib/containers/v2.js +33 -35
  21. package/lib/containers.js +5 -5
  22. package/lib/contexts.js +1 -1
  23. package/lib/functions.js +1 -1
  24. package/lib/hooks.js +1 -1
  25. package/lib/icons/brand/index.d.ts +3 -1
  26. package/lib/icons/brand/odigos-logo-text-central/index.d.ts +2 -0
  27. package/lib/icons/brand/odigos-logo-text-community/index.d.ts +2 -0
  28. package/lib/icons/brand/odigos-logo-text-enterprise/index.d.ts +2 -0
  29. package/lib/icons.js +1 -1
  30. package/lib/snippets/_v2/signals-checkbox-list/index.d.ts +1 -0
  31. package/lib/snippets/_v2/wide-drawer/column/index.d.ts +1 -1
  32. package/lib/snippets/_v2/wide-drawer/column-list-collapse/index.d.ts +1 -0
  33. package/lib/snippets/_v2/wide-drawer/column-list-item/index.d.ts +1 -0
  34. package/lib/snippets/_v2/wide-drawer/index.d.ts +8 -3
  35. package/lib/snippets.js +1 -1
  36. package/lib/store.js +1 -1
  37. package/lib/theme.js +1 -1
  38. package/lib/types.js +1 -1
  39. package/lib/visuals.js +1 -1
  40. package/package.json +2 -2
  41. package/lib/icons/brand/odigos-central-logo-text/index.d.ts +0 -2
package/lib/containers.js CHANGED
@@ -1,4 +1,4 @@
1
- import{jsxs as e,jsx as t,Fragment as i}from"react/jsx-runtime";import{useState as n,useEffect as o,Fragment as a,forwardRef as r,useRef as l,useImperativeHandle as s,useMemo as c,useCallback as d,Children as u}from"react";import p,{css as h,useTheme as m}from"styled-components";import{a5 as g,aO as y,l as v,K as f,A as b,aP as x,aQ as $,aR as S,aS as C,c as k,i as w,aT as T,aU as D,aV as N,aW as E,D as A,F,g as O,aX as I,aY as M,k as R,aZ as P,a1 as K,a_ as L,a$ as j,b0 as z,b1 as q,b2 as B,b3 as V,an as H,aA as W,b4 as _,b5 as J,b6 as U,ak as G,ar as Y,b7 as X,b8 as Z,b9 as Q,ba as ee,bb as te,bc as ie,bd as ne,be as oe,bf as ae,bg as re,bh as le,s as se,a6 as ce,bi as de,bj as ue,bk as pe,bl as he,bm as me,bn as ge,O as ye,bo as ve,bp as fe,bq as be,br as xe,bs as $e,bt as Se,bu as Ce,bv as ke,bw as we,bx as Te,by as De,bz as Ne,n as Ee,bA as Ae,bB as Fe,bC as Oe,bD as Ie,aG as Me,bE as Re,bF as Pe,bG as Ke,bH as Le,av as je,S as ze,H as qe,bI as Be,bJ as Ve,ab as He,bK as We,ai as _e,al as Je,bL as Ue,ad as Ge,bM as Ye,bN as Xe,bO as Ze,bP as Qe,bQ as et,bR as tt,bS as it,bT as nt,bU as ot,bV as at,bW as rt,bX as lt,bY as st,$ as ct,M as dt,bZ as ut,b_ as pt,b$ as ht,c0 as mt,aj as gt,c1 as yt,c2 as vt,c3 as ft,c4 as bt,x as xt,z as $t,G as St,c5 as Ct,c6 as kt,c7 as wt,E as Tt,aa as Dt,a9 as Nt,m as Et,c8 as At,c9 as Ft,ca as Ot,cb as It,P as Mt,X as Rt,Y as Pt,U as Kt,J as Lt,Q as jt,Z as zt,cc as qt,a0 as Bt,cd as Vt,ce as Ht,ae as Wt,cf as _t,cg as Jt,ch as Ut,ci as Gt,ao as Yt,cj as Xt,ck as Zt,cl as Qt,cm as ei,cn as ti,co as ii,cp as ni,cq as oi,cr as ai,cs as ri,ct as li,ax as si,cu as ci,cv as di,cw as ui,cx as pi,cy as hi,cz as mi,cA as gi,cB as yi,cC as vi,cD as fi,ap as bi,am as xi,a4 as $i,a8 as Si,cE as Ci,cF as ki,cG as wi,cH as Ti,cI as Di,cJ as Ni}from"./chunks/ui-components-B7yqdEby.js";import{TrashIcon as Ei,VSquareIcon as Ai,XSquareIcon as Fi,EditIcon as Oi,OdigosLogoText as Ii,PlusIcon as Mi,RefreshIcon as Ri,SearchIcon as Pi,FilterIcon as Ki,DataStreamIcon as Li,VIcon as ji,OdigosLogo as zi,ArrowIcon as qi,RefreshLeftArrowIcon as Bi,NotificationIcon as Vi,UserIcon as Hi,ImageErrorIcon as Wi,OverviewIcon as _i,SourceIcon as Ji,DestinationIcon as Ui,InstrumentationRuleIcon as Gi,ActionIcon as Yi,SlackLogo as Xi,KeyIcon as Zi,TerminalIcon as Qi,ExclamationTriangleIcon as en,TraceViewIcon as tn}from"./icons.js";import{MarkerType as nn,useNodesState as on,useEdgesState as an}from"@xyflow/react";import{E as rn}from"./chunks/vendor-D99eCWta.js";import{Y as ln}from"./chunks/index-CqkUTwRb.js";import"zustand";import"javascript-time-ago";import"react-dom";import"prism-react-renderer";import"react-error-boundary";import"lottie-react";import"virtua";const sn=e=>{const{type:t,name:i,notes:n,signals:o,disabled:a,fields:{collectContainerAttributes:r,collectReplicaSetAttributes:l,collectWorkloadId:s,collectClusterId:c,labelsAttributes:d,annotationsAttributes:u,clusterAttributes:p,overwriteExistingValues:h,attributeNamesToDelete:m,renames:b,piiCategories:x,fallbackSamplingRatio:$,samplingPercentage:S,endpointsFilters:C,servicesNameFilters:k,attributeFilters:w,urlTemplatizationRulesGroups:T}}=e,D=[{title:g.TYPE,value:t},{type:y.ActiveStatus,title:g.STATUS,value:String(!a)},{type:y.Monitors,title:g.SIGNALS_FOR_PROCESSING,value:o?.join(", ")||""},{title:g.NAME,value:i||""},{title:g.NOTES,value:n||""},{type:y.Divider}];if(t===v.K8sAttributes&&(D.push({title:"Collect Container Attributes",value:String(r)}),D.push({title:"Collect ReplicaSet Attributes",value:String(l)}),D.push({title:"Collect Workload ID",value:String(s)}),D.push({title:"Collect Cluster ID",value:String(c)}),d?.length&&D.push({type:y.Divider}),d?.forEach(({labelKey:e,attributeKey:t,from:i,fromSources:n},o)=>{let a="";a+=`Label Key: ${e}\n`,a+=`Attribute Key: ${t}\n`,a+=`From: ${n?.length?n.join(", "):i||f.Pod}\n`,D.push({title:"Label"+(d.length>1?` #${o+1}`:""),value:a})}),u?.length&&D.push({type:y.Divider}),u?.forEach(({annotationKey:e,attributeKey:t,from:i,fromSources:n},o)=>{let a="";a+=`Annotation Key: ${e}\n`,a+=`Attribute Key: ${t}\n`,a+=`From: ${n?.length?n.join(", "):i||f.Pod}\n`,D.push({title:"Annotation"+(u.length>1?` #${o+1}`:""),value:a})})),t===v.AddClusterInfo){D.push({title:"Overwrite Existing Values",value:String(h||!1)});let e="";p?.forEach(({attributeName:t,attributeStringValue:i},n)=>{e+=`${t}: ${i}`,n<p.length-1&&(e+=", ")}),D.push({title:"Attributes",value:e})}if(t===v.DeleteAttributes){let e="";m?.forEach((t,i)=>{e+=t,i<m.length-1&&(e+=", ")}),D.push({title:"Attributes",value:e})}if(t===v.RenameAttributes){let e="";const t=Object.entries(b||{});t.forEach(([i,n],o)=>{e+=`${i}: ${n}`,o<t.length-1&&(e+=", ")}),D.push({title:"Attributes",value:e})}if(t===v.PiiMasking){let e="";x?.forEach((t,i)=>{e+=t,i<x.length-1&&(e+=", ")}),D.push({title:"Categories",value:e})}return t===v.ErrorSampler&&D.push({title:"Sampling Ratio",value:String($)}),t===v.ProbabilisticSampler&&D.push({title:"Sampling Percentage",value:String(S)}),t===v.LatencySampler&&C?.forEach(({serviceName:e,httpRoute:t,minimumLatencyThreshold:i,fallbackSamplingRatio:n},o)=>{let a="";a+=`Service Name: ${e}\n`,a+=`HTTP Route: ${t}\n`,a+=`Min. Latency: ${i}\n`,a+=`Fallback Sampling Ratio: ${n}`,D.push({title:"Endpoint"+(C.length>1?` #${o+1}`:""),value:a})}),t===v.ServiceNameSampler&&k?.forEach(({serviceName:e,samplingRatio:t,fallbackSamplingRatio:i},n)=>{let o="";o+=`Service Name: ${e}\n`,o+=`Sampling Ratio: ${t}\n`,o+=`Fallback Sampling Ratio: ${i}`,D.push({title:"Filter"+(k.length>1?` #${n+1}`:""),value:o})}),t===v.SpanAttributeSampler&&w?.forEach(({serviceName:e,attributeKey:t,fallbackSamplingRatio:i,condition:n},o)=>{let a="";a+=`Service Name: ${e}\n`,a+=`Attribute Key: ${t}\n`,a+=`Fallback Sampling Ratio: ${i}\n`;const r=Object.keys(n)[0];a+=`Condition: ${r}\n`,a+=`Operation: ${n[r]?.operation}\n`,a+=`Expected Value: ${n[r]?.expectedValue}`,"jsonCondition"===r&&(a+=`\nJSON Path: ${n[r].jsonPath}`),D.push({title:"Filter"+(w.length>1?` #${o+1}`:""),value:a})}),t===v.URLTemplatization&&T?.forEach((e,t)=>{let i="";e.filterK8sNamespace&&(i+=`Namespace: ${e.filterK8sNamespace}\n`),e.workloadFilters?.length&&e.workloadFilters.forEach(e=>{const t=[e.kind,e.name].filter(Boolean).join("/");t&&(i+=`Workload: ${t}\n`)});const n=e.templatizationRules?.map(e=>e.template).filter(Boolean).join(", ");i+=`Templates: ${n}`,e.notes&&(i+=`\nNotes: ${e.notes}`),D.push({title:"Group"+(T.length>1?` #${t+1}`:""),value:i})}),D},cn=b.PiiCategories,dn=p.div`
1
+ import{jsxs as e,jsx as t,Fragment as i}from"react/jsx-runtime";import{useState as n,useEffect as o,Fragment as a,forwardRef as r,useRef as l,useImperativeHandle as s,useMemo as c,useCallback as d,Children as u}from"react";import p,{css as h,useTheme as m}from"styled-components";import{a5 as g,aO as y,l as v,K as f,A as b,aP as x,aQ as $,aR as S,aS as C,c as k,i as w,aT as T,aU as D,aV as N,aW as E,D as A,F,g as O,aX as I,aY as M,k as R,aZ as P,a1 as K,a_ as L,a$ as j,b0 as z,b1 as q,b2 as B,b3 as V,an as H,aA as W,b4 as _,b5 as J,b6 as U,ak as G,ar as Y,b7 as X,b8 as Z,b9 as Q,ba as ee,bb as te,bc as ie,bd as ne,be as oe,bf as ae,bg as re,bh as le,s as se,a6 as ce,bi as de,bj as ue,bk as pe,bl as he,bm as me,bn as ge,O as ye,bo as ve,bp as fe,bq as be,br as xe,bs as $e,bt as Se,bu as Ce,bv as ke,bw as we,bx as Te,by as De,bz as Ne,n as Ee,bA as Ae,bB as Fe,bC as Oe,bD as Ie,aG as Me,bE as Re,bF as Pe,bG as Ke,bH as Le,av as je,S as ze,H as qe,bI as Be,bJ as Ve,ab as He,bK as We,ai as _e,al as Je,bL as Ue,ad as Ge,bM as Ye,bN as Xe,bO as Ze,bP as Qe,bQ as et,bR as tt,bS as it,bT as nt,bU as ot,bV as at,bW as rt,bX as lt,bY as st,$ as ct,M as dt,bZ as ut,b_ as pt,b$ as ht,c0 as mt,aj as gt,c1 as yt,c2 as vt,c3 as ft,c4 as bt,x as xt,z as $t,G as St,c5 as Ct,c6 as kt,c7 as wt,E as Tt,a9 as Dt,m as Nt,aa as Et,c8 as At,c9 as Ft,ca as Ot,cb as It,P as Mt,X as Rt,Y as Pt,U as Kt,J as Lt,Q as jt,Z as zt,cc as qt,a0 as Bt,cd as Vt,ce as Ht,ae as Wt,cf as _t,cg as Jt,ch as Ut,ci as Gt,ao as Yt,cj as Xt,ck as Zt,cl as Qt,cm as ei,cn as ti,co as ii,cp as ni,cq as oi,cr as ai,cs as ri,ct as li,ax as si,cu as ci,cv as di,cw as ui,cx as pi,cy as hi,cz as mi,cA as gi,cB as yi,cC as vi,cD as fi,ap as bi,am as xi,a4 as $i,a8 as Si,cE as Ci,cF as ki,cG as wi,cH as Ti,cI as Di,cJ as Ni}from"./chunks/ui-components-BlfhQM0V.js";import{TrashIcon as Ei,VSquareIcon as Ai,XSquareIcon as Fi,EditIcon as Oi,OdigosLogoText as Ii,PlusIcon as Mi,RefreshIcon as Ri,SearchIcon as Pi,FilterIcon as Ki,DataStreamIcon as Li,VIcon as ji,OdigosLogo as zi,ArrowIcon as qi,RefreshLeftArrowIcon as Bi,NotificationIcon as Vi,UserIcon as Hi,ImageErrorIcon as Wi,OverviewIcon as _i,SourceIcon as Ji,DestinationIcon as Ui,InstrumentationRuleIcon as Gi,ActionIcon as Yi,SlackLogo as Xi,KeyIcon as Zi,TerminalIcon as Qi,ExclamationTriangleIcon as en,TraceViewIcon as tn}from"./icons.js";import{MarkerType as nn,useNodesState as on,useEdgesState as an}from"@xyflow/react";import{E as rn}from"./chunks/vendor-D99eCWta.js";import{Y as ln}from"./chunks/index-BWrHoFMs.js";import"zustand";import"javascript-time-ago";import"react-dom";import"prism-react-renderer";import"react-error-boundary";import"lottie-react";import"virtua";const sn=e=>{const{type:t,name:i,notes:n,signals:o,disabled:a,fields:{collectContainerAttributes:r,collectReplicaSetAttributes:l,collectWorkloadId:s,collectClusterId:c,labelsAttributes:d,annotationsAttributes:u,clusterAttributes:p,overwriteExistingValues:h,attributeNamesToDelete:m,renames:b,piiCategories:x,fallbackSamplingRatio:$,samplingPercentage:S,endpointsFilters:C,servicesNameFilters:k,attributeFilters:w,urlTemplatizationRulesGroups:T}}=e,D=[{title:g.TYPE,value:t},{type:y.ActiveStatus,title:g.STATUS,value:String(!a)},{type:y.Monitors,title:g.SIGNALS_FOR_PROCESSING,value:o?.join(", ")||""},{title:g.NAME,value:i||""},{title:g.NOTES,value:n||""},{type:y.Divider}];if(t===v.K8sAttributes&&(D.push({title:"Collect Container Attributes",value:String(r)}),D.push({title:"Collect ReplicaSet Attributes",value:String(l)}),D.push({title:"Collect Workload ID",value:String(s)}),D.push({title:"Collect Cluster ID",value:String(c)}),d?.length&&D.push({type:y.Divider}),d?.forEach(({labelKey:e,attributeKey:t,from:i,fromSources:n},o)=>{let a="";a+=`Label Key: ${e}\n`,a+=`Attribute Key: ${t}\n`,a+=`From: ${n?.length?n.join(", "):i||f.Pod}\n`,D.push({title:"Label"+(d.length>1?` #${o+1}`:""),value:a})}),u?.length&&D.push({type:y.Divider}),u?.forEach(({annotationKey:e,attributeKey:t,from:i,fromSources:n},o)=>{let a="";a+=`Annotation Key: ${e}\n`,a+=`Attribute Key: ${t}\n`,a+=`From: ${n?.length?n.join(", "):i||f.Pod}\n`,D.push({title:"Annotation"+(u.length>1?` #${o+1}`:""),value:a})})),t===v.AddClusterInfo){D.push({title:"Overwrite Existing Values",value:String(h||!1)});let e="";p?.forEach(({attributeName:t,attributeStringValue:i},n)=>{e+=`${t}: ${i}`,n<p.length-1&&(e+=", ")}),D.push({title:"Attributes",value:e})}if(t===v.DeleteAttributes){let e="";m?.forEach((t,i)=>{e+=t,i<m.length-1&&(e+=", ")}),D.push({title:"Attributes",value:e})}if(t===v.RenameAttributes){let e="";const t=Object.entries(b||{});t.forEach(([i,n],o)=>{e+=`${i}: ${n}`,o<t.length-1&&(e+=", ")}),D.push({title:"Attributes",value:e})}if(t===v.PiiMasking){let e="";x?.forEach((t,i)=>{e+=t,i<x.length-1&&(e+=", ")}),D.push({title:"Categories",value:e})}return t===v.ErrorSampler&&D.push({title:"Sampling Ratio",value:String($)}),t===v.ProbabilisticSampler&&D.push({title:"Sampling Percentage",value:String(S)}),t===v.LatencySampler&&C?.forEach(({serviceName:e,httpRoute:t,minimumLatencyThreshold:i,fallbackSamplingRatio:n},o)=>{let a="";a+=`Service Name: ${e}\n`,a+=`HTTP Route: ${t}\n`,a+=`Min. Latency: ${i}\n`,a+=`Fallback Sampling Ratio: ${n}`,D.push({title:"Endpoint"+(C.length>1?` #${o+1}`:""),value:a})}),t===v.ServiceNameSampler&&k?.forEach(({serviceName:e,samplingRatio:t,fallbackSamplingRatio:i},n)=>{let o="";o+=`Service Name: ${e}\n`,o+=`Sampling Ratio: ${t}\n`,o+=`Fallback Sampling Ratio: ${i}`,D.push({title:"Filter"+(k.length>1?` #${n+1}`:""),value:o})}),t===v.SpanAttributeSampler&&w?.forEach(({serviceName:e,attributeKey:t,fallbackSamplingRatio:i,condition:n},o)=>{let a="";a+=`Service Name: ${e}\n`,a+=`Attribute Key: ${t}\n`,a+=`Fallback Sampling Ratio: ${i}\n`;const r=Object.keys(n)[0];a+=`Condition: ${r}\n`,a+=`Operation: ${n[r]?.operation}\n`,a+=`Expected Value: ${n[r]?.expectedValue}`,"jsonCondition"===r&&(a+=`\nJSON Path: ${n[r].jsonPath}`),D.push({title:"Filter"+(w.length>1?` #${o+1}`:""),value:a})}),t===v.URLTemplatization&&T?.forEach((e,t)=>{let i="";e.filterK8sNamespace&&(i+=`Namespace: ${e.filterK8sNamespace}\n`),e.workloadFilters?.length&&e.workloadFilters.forEach(e=>{const t=[e.kind,e.name].filter(Boolean).join("/");t&&(i+=`Workload: ${t}\n`)});const n=e.templatizationRules?.map(e=>e.template).filter(Boolean).join(", ");i+=`Templates: ${n}`,e.notes&&(i+=`\nNotes: ${e.notes}`),D.push({title:"Group"+(T.length>1?` #${t+1}`:""),value:i})}),D},cn=b.PiiCategories,dn=p.div`
2
2
  display: flex;
3
3
  flex-direction: row;
4
4
  gap: 32px;
@@ -276,7 +276,7 @@ import{jsxs as e,jsx as t,Fragment as i}from"react/jsx-runtime";import{useState
276
276
  display: flex;
277
277
  flex-direction: column;
278
278
  gap: 12px;
279
- `,ga=({items:i,onSelectNew:n,onSelectConfigured:o,isLoadingForDestinationIds:a})=>{const{configuredDestinationsUpdateOnly:r}=mt();return i.map(i=>{const l=i.name===Dt[Nt.EXISTS].TITLE;return e(ma,{children:[t(L,{size:"small",icon:i.icon,title:wt(i.name),description:i.description}),i.items.map(e=>{const s=`select-${i.name.replaceAll(" ","")}-destination-${e.type}`,c=Tt(e.supportedSignals),{icon:d,iconSrc:u}=He(e.type),p=e.selected||r.some(t=>t.id===e.id),h=!!a.find(t=>t===e.id),m=l?()=>o(e.id):()=>n(e);return t(Ke,{"data-id":s,title:e.displayName,hoverText:W.SELECT,onClick:m,iconProps:{icon:d,iconSrc:u},visualProps:{monitors:c,monitorsWithLabels:!0},checkboxProps:{withCheckbox:l,isChecked:p,isLoading:h,onCheckboxChange:()=>o(e.id)}},s)})]},`category-${i.name}`)})},ya=p.div`
279
+ `,ga=({items:i,onSelectNew:n,onSelectConfigured:o,isLoadingForDestinationIds:a})=>{const{configuredDestinationsUpdateOnly:r}=mt();return i.map(i=>{const l=i.name===Dt.EXISTS;return e(ma,{children:[t(L,{size:"small",icon:i.icon,title:wt(i.name),description:i.description}),i.items.map(e=>{const s=`select-${i.name.replaceAll(" ","")}-destination-${e.type}-${e.id||""}`,c=Tt(e.supportedSignals),{icon:d,iconSrc:u}=He(e.type),p=e.selected||r.some(t=>t.id===e.id),h=!!a.find(t=>t===e.id),m=l?()=>o(e.id):()=>n(e);return t(Ke,{"data-id":s,title:e.displayName,hoverText:W.SELECT,onClick:m,iconProps:{icon:d,iconSrc:u},visualProps:{monitors:c,monitorsWithLabels:!0},checkboxProps:{withCheckbox:l,isChecked:p,isLoading:h,onCheckboxChange:()=>o(e.id)}},s)})]},`category-${i.name}`)})},ya=p.div`
280
280
  display: flex;
281
281
  flex-direction: column;
282
282
  gap: 24px;
@@ -300,7 +300,7 @@ import{jsxs as e,jsx as t,Fragment as i}from"react/jsx-runtime";import{useState
300
300
  }
301
301
  `,xa=p(ya)`
302
302
  margin-top: 80px;
303
- `,$a=Object.values(Nt).map(e=>({value:Dt[e].TITLE,id:e})),Sa=$a[0],Ca=[St.Logs,St.Metrics,St.Traces],ka=(e,t,i)=>e.map(e=>{const{type:n,displayName:o}=e.destinationType,a=e.dataStreamNames?.includes(t),r=i.has(e.id);return{id:e.id,type:n,displayName:o,selected:a||r,fields:[],testConnectionSupported:!1,supportedSignals:{logs:{supported:e.exportedSignals.logs},metrics:{supported:e.exportedSignals.metrics},traces:{supported:e.exportedSignals.traces}}}}),wa=({hidden:i,categories:o,potentialDestinations:a,onSelectNew:r,onSelectConfigured:l,isLoadingForDestinationIds:s})=>{const{destinations:d}=Y(),{selectedStreamName:u}=Ge(),{configuredDestinations:p,configuredDestinationsUpdateOnly:h}=mt(),[m,g]=n(""),[y,v]=n(Sa),[f,b]=n(Ca),x=c(()=>{const e=Et(o);return e.unshift({name:Nt.EXISTS,description:Dt[Nt.EXISTS].DESCRIPTION,icon:ji,items:ka(d,u,new Set(p.concat(h).map(e=>e.id)))}),e.unshift({name:Nt.DETECTED,description:Dt[Nt.DETECTED].DESCRIPTION,icon:zi,items:a}),e.map(e=>{const t=e.items.filter(t=>{const i=!m||t.displayName.toLowerCase().includes(m.toLowerCase()),n="all"===y.id||y.id?.toLowerCase()?.replaceAll("-"," ")===e.name.toLowerCase()?.replaceAll("-"," "),o=f.some(e=>t.supportedSignals[At[e]]?.supported);return i&&n&&o});return{...e,items:t}}).filter(({items:e})=>!!e.length)},[o,a,d,m,y,f,u,p,h]);return i?null:e(ya,{children:[t(L,{title:"Choose destination",description:"Add backend destination you want to connect with Odigos."}),e(va,{children:[t(fa,{children:t(C,{placeholder:"Search...",icon:Pi,value:m,onChange:({target:{value:e}})=>g(e)})}),t(fa,{children:t(st,{options:$a,value:y,onSelect:v,onDeselect:()=>{}})}),t(z,{title:"",selectedSignals:f,setSelectedSignals:b})]}),t(A,{}),x.length?t(ba,{children:t(ga,{items:x,onSelectNew:e=>r(e,f),onSelectConfigured:l,isLoadingForDestinationIds:s})}):t(xa,{children:t(Ae,{title:"No destinations found"})})]})},Ta=p.div`
303
+ `,$a=Object.values(Dt).map(e=>({value:Et[e].TITLE,id:e})),Sa=$a[0],Ca=[St.Logs,St.Metrics,St.Traces],ka=(e,t,i)=>e.map(e=>{const{type:n,displayName:o}=e.destinationType,a=e.dataStreamNames?.includes(t),r=i.has(e.id);return{id:e.id,type:n,displayName:o,selected:a||r,fields:[],testConnectionSupported:!1,supportedSignals:{logs:{supported:e.exportedSignals.logs},metrics:{supported:e.exportedSignals.metrics},traces:{supported:e.exportedSignals.traces}}}}),wa=({hidden:i,categories:o,potentialDestinations:a,onSelectNew:r,onSelectConfigured:l,isLoadingForDestinationIds:s})=>{const{destinations:d}=Y(),{selectedStreamName:u}=Ge(),{configuredDestinations:p,configuredDestinationsUpdateOnly:h}=mt(),[m,g]=n(""),[y,v]=n(Sa),[f,b]=n(Ca),x=c(()=>{const e=Nt(o);return e.unshift({name:Dt.EXISTS,description:Et[Dt.EXISTS].DESCRIPTION,icon:ji,items:ka(d,u,new Set(p.concat(h).map(e=>e.id)))}),e.unshift({name:Dt.DETECTED,description:Et[Dt.DETECTED].DESCRIPTION,icon:zi,items:a}),e.map(e=>{const t=e.items.filter(t=>{const i=!m||t.displayName.toLowerCase().includes(m.toLowerCase()),n="all"===y.id||y.id?.toLowerCase()?.replaceAll("-"," ")===e.name.toLowerCase()?.replaceAll("-"," "),o=f.some(e=>t.supportedSignals[At[e]]?.supported);return i&&n&&o});return{...e,items:t}}).filter(({items:e})=>!!e.length)},[o,a,d,m,y,f,u,p,h]);return i?null:e(ya,{children:[t(L,{title:"Choose destination",description:"Add backend destination you want to connect with Odigos."}),e(va,{children:[t(fa,{children:t(C,{placeholder:"Search...",icon:Pi,value:m,onChange:({target:{value:e}})=>g(e)})}),t(fa,{children:t(st,{options:$a,value:y,onSelect:v,onDeselect:()=>{}})}),t(z,{title:"",selectedSignals:f,setSelectedSignals:b})]}),t(A,{}),x.length?t(ba,{children:t(ga,{items:x,onSelectNew:e=>r(e,f),onSelectConfigured:l,isLoadingForDestinationIds:s})}):t(xa,{children:t(Ae,{title:"No destinations found"})})]})},Ta=p.div`
304
304
  display: flex;
305
305
  `,Da=p.div`
306
306
  border-right: 1px solid ${({theme:e})=>e.colors.border};
@@ -494,7 +494,7 @@ import{jsxs as e,jsx as t,Fragment as i}from"react/jsx-runtime";import{useState
494
494
  width: 100%;
495
495
  align-items: center;
496
496
  justify-content: space-between;
497
- `,Jr=({source:i,fetchSourceLibraries:r})=>{const l=m(),[s,c]=n(!1),[d,u]=n(null);return o(()=>{i&&r({namespace:i.namespace,name:i.name,kind:i.kind}).then(({data:e})=>{e?.instrumentationInstanceComponents?u(Et(e.instrumentationInstanceComponents).sort((e,t)=>e.name.localeCompare(t.name))):c(!0)})},[i.namespace,i.name,i.kind]),d||s?t(F,{$gap:12,children:s?t(Ee,{$height:"70vh",children:t(Ae,{subTitle:"Could not fetch libraries for this source"})}):d?.length?t(te,{title:"Instrumented Libraries",children:d.map(({name:i,healthy:n,message:o,nonIdentifyingAttributes:r},s)=>e(a,{children:[e(F,{$gap:4,$width:"100%",children:[e(_r,{$width:"100%",children:[t(B,{size:12,color:l.text.grey,children:i}),e(O,{$gap:4,children:[r.map(({key:e,value:n})=>ci(n)&&di(n)&&"is_standard_lib"===e?t(he,{status:se.Default,title:"STANDARD",withBorder:!0},`${i}-${e}`):null),"boolean"==typeof n&&t(he,{status:n?se.Success:se.Error,title:n?"HEALTHY":"UNHEALTHY",withBorder:!0})]})]}),o&&t(B,{size:10,color:l.text.error,align:"right",children:o})]}),s!==d.length-1&&t(A,{length:"100%",margin:"0"})]},`library-${i}`))}):e(Ee,{$height:"70vh",$gap:12,children:[t(Ae,{title:"No libraries found",subTitle:""}),t(le,{type:se.Warning,message:"This feature is in early development, and has very limited support"})]})}):t(Ee,{$height:"70vh",children:t(Me,{})})},Ur="70vh",Gr=(e,t)=>e.serviceName.localeCompare(t.serviceName),Yr=p(B)`
497
+ `,Jr=({source:i,fetchSourceLibraries:r})=>{const l=m(),[s,c]=n(!1),[d,u]=n(null);return o(()=>{i&&r({namespace:i.namespace,name:i.name,kind:i.kind}).then(({data:e})=>{e?.instrumentationInstanceComponents?u(Nt(e.instrumentationInstanceComponents).sort((e,t)=>e.name.localeCompare(t.name))):c(!0)})},[i.namespace,i.name,i.kind]),d||s?t(F,{$gap:12,children:s?t(Ee,{$height:"70vh",children:t(Ae,{subTitle:"Could not fetch libraries for this source"})}):d?.length?t(te,{title:"Instrumented Libraries",children:d.map(({name:i,healthy:n,message:o,nonIdentifyingAttributes:r},s)=>e(a,{children:[e(F,{$gap:4,$width:"100%",children:[e(_r,{$width:"100%",children:[t(B,{size:12,color:l.text.grey,children:i}),e(O,{$gap:4,children:[r.map(({key:e,value:n})=>ci(n)&&di(n)&&"is_standard_lib"===e?t(he,{status:se.Default,title:"STANDARD",withBorder:!0},`${i}-${e}`):null),"boolean"==typeof n&&t(he,{status:n?se.Success:se.Error,title:n?"HEALTHY":"UNHEALTHY",withBorder:!0})]})]}),o&&t(B,{size:10,color:l.text.error,align:"right",children:o})]}),s!==d.length-1&&t(A,{length:"100%",margin:"0"})]},`library-${i}`))}):e(Ee,{$height:"70vh",$gap:12,children:[t(Ae,{title:"No libraries found",subTitle:""}),t(le,{type:se.Warning,message:"This feature is in early development, and has very limited support"})]})}):t(Ee,{$height:"70vh",children:t(Me,{})})},Ur="70vh",Gr=(e,t)=>e.serviceName.localeCompare(t.serviceName),Yr=p(B)`
498
498
  cursor: ${({$clickable:e})=>e?"pointer":"default"};
499
499
  text-decoration: ${({$clickable:e})=>e?"underline":"none"};
500
500
  &:hover {
@@ -633,4 +633,4 @@ import{jsxs as e,jsx as t,Fragment as i}from"react/jsx-runtime";import{useState
633
633
  padding-top: 12px;
634
634
  padding-left: 12px;
635
635
  white-space: nowrap;
636
- `,Ul=({heightToRemove:o,traces:a,isLoading:r})=>{const[l,s]=n([]),[d,u]=n(null),p=c(()=>Et(a).sort((e,t)=>t.spans[0].startTime-e.spans[0].startTime).map(e=>({...e,spans:Dl(e)})),[a]),h=c(()=>p.reduce((e,t)=>Math.max(e,t.spans.reduce((e,t)=>e+t.duration,0)),0),[p]),m=c(()=>{const e=p.find(e=>e.spans.some(e=>e.spanID===d?.spanID)),t=e?.processes.find(e=>e.serviceName===d?.processID);return t},[p,d]);return e(i,{children:[t(Vl,{$heightToRemove:o,children:r?t(Ee,{$height:"50vh",children:t(Me,{scale:1.5})}):p.length?e(Hl,{$heightToRemove:o,children:[t(Wl,{children:t(B,{children:"Service & operation"})}),new Array(5).fill(null).map((e,i)=>t(_l,{$heightToRemove:o,index:i,children:t(Jl,{children:wi(h/5*i)})},`${i}-divider`)),p.map((e,i)=>{const{spans:n}=e,o=n.reduce((e,t)=>Math.min(e,t.startTime),Number.MAX_SAFE_INTEGER),a=n.reduce((e,t)=>Math.max(e,t.startTime+t.duration),0);return t(Bl,{spans:n,logs:[],depth:1,indexInMatrix:i,maxDuration:h,minStartTime:o,maxEndTime:a,openSpanIdsState:{value:l,set:s},selectedSpanState:{value:d,set:u}},`recursive-spans-${e.traceID}`)})]}):t(Ee,{$height:"50vh",children:t(Ae,{title:g.NO_TRACES_FOUND,subTitle:g.ARE_SERVICES_INSTRUMENTED_AND_PRODUCING_TRAFFIC})})}),d&&t(Il,{span:d,process:m,onClose:()=>u(null)})]})};export{Pn as ActionDrawer,Fn as ActionForm,Ln as ActionModal,Hn as ActionTable,Gn as AwaitPipeline,Do as ConditionDropdown,So as DataFlow,Qo as DataFlowActionsMenu,Vo as DataStreamDrawer,qo as DataStreamForm,ta as DataStreamModal,ea as DataStreamSelectionForm,ha as DestinationDrawer,da as DestinationForm,Na as DestinationModal,Ia as DestinationSelectionForm,Ra as DestinationTable,No as ErrorDropdown,Xa as InstrumentationRuleDrawer,Ua as InstrumentationRuleForm,er as InstrumentationRuleModal,nr as InstrumentationRuleTable,Oo as KindDropdown,Eo as LanguageDropdown,Ao as MonitorDropdown,ar as MultiSourceControl,Fo as NamespaceDropdown,Lr as NavIconIds,ur as NotificationManager,On as OverviewDrawer,Io as PodsAgentInjectionStatusDropdown,wr as ServiceMap,Kr as SetupSummary,jr as SideNav,zr as SlackInvite,ll as SourceDrawer,Vr as SourceForm,dl as SourceModal,cl as SourceSelectionForm,pl as SourceTable,xl as SystemOverview,zn as TableCellConditions,Sl as ToastList,Tl as ToggleDarkMode,Ul as TraceView};
636
+ `,Ul=({heightToRemove:o,traces:a,isLoading:r})=>{const[l,s]=n([]),[d,u]=n(null),p=c(()=>Nt(a).sort((e,t)=>t.spans[0].startTime-e.spans[0].startTime).map(e=>({...e,spans:Dl(e)})),[a]),h=c(()=>p.reduce((e,t)=>Math.max(e,t.spans.reduce((e,t)=>e+t.duration,0)),0),[p]),m=c(()=>{const e=p.find(e=>e.spans.some(e=>e.spanID===d?.spanID)),t=e?.processes.find(e=>e.serviceName===d?.processID);return t},[p,d]);return e(i,{children:[t(Vl,{$heightToRemove:o,children:r?t(Ee,{$height:"50vh",children:t(Me,{scale:1.5})}):p.length?e(Hl,{$heightToRemove:o,children:[t(Wl,{children:t(B,{children:"Service & operation"})}),new Array(5).fill(null).map((e,i)=>t(_l,{$heightToRemove:o,index:i,children:t(Jl,{children:wi(h/5*i)})},`${i}-divider`)),p.map((e,i)=>{const{spans:n}=e,o=n.reduce((e,t)=>Math.min(e,t.startTime),Number.MAX_SAFE_INTEGER),a=n.reduce((e,t)=>Math.max(e,t.startTime+t.duration),0);return t(Bl,{spans:n,logs:[],depth:1,indexInMatrix:i,maxDuration:h,minStartTime:o,maxEndTime:a,openSpanIdsState:{value:l,set:s},selectedSpanState:{value:d,set:u}},`recursive-spans-${e.traceID}`)})]}):t(Ee,{$height:"50vh",children:t(Ae,{title:g.NO_TRACES_FOUND,subTitle:g.ARE_SERVICES_INSTRUMENTED_AND_PRODUCING_TRAFFIC})})}),d&&t(Il,{span:d,process:m,onClose:()=>u(null)})]})};export{Pn as ActionDrawer,Fn as ActionForm,Ln as ActionModal,Hn as ActionTable,Gn as AwaitPipeline,Do as ConditionDropdown,So as DataFlow,Qo as DataFlowActionsMenu,Vo as DataStreamDrawer,qo as DataStreamForm,ta as DataStreamModal,ea as DataStreamSelectionForm,ha as DestinationDrawer,da as DestinationForm,Na as DestinationModal,Ia as DestinationSelectionForm,Ra as DestinationTable,No as ErrorDropdown,Xa as InstrumentationRuleDrawer,Ua as InstrumentationRuleForm,er as InstrumentationRuleModal,nr as InstrumentationRuleTable,Oo as KindDropdown,Eo as LanguageDropdown,Ao as MonitorDropdown,ar as MultiSourceControl,Fo as NamespaceDropdown,Lr as NavIconIds,ur as NotificationManager,On as OverviewDrawer,Io as PodsAgentInjectionStatusDropdown,wr as ServiceMap,Kr as SetupSummary,jr as SideNav,zr as SlackInvite,ll as SourceDrawer,Vr as SourceForm,dl as SourceModal,cl as SourceSelectionForm,pl as SourceTable,xl as SystemOverview,zn as TableCellConditions,Sl as ToastList,Tl as ToggleDarkMode,Ul as TraceView};
package/lib/contexts.js CHANGED
@@ -1 +1 @@
1
- export{dx as OdigosProvider,dy as StorybookProvider,ay as checkVersionSupport,av as useOdigos,dz as useStorybook}from"./chunks/ui-components-B7yqdEby.js";import"./icons.js";import"react/jsx-runtime";import"styled-components";import"zustand";import"react";import"javascript-time-ago";import"./chunks/vendor-D99eCWta.js";import"@xyflow/react";import"react-dom";import"prism-react-renderer";import"react-error-boundary";import"lottie-react";import"virtua";
1
+ export{dx as OdigosProvider,dy as StorybookProvider,ay as checkVersionSupport,av as useOdigos,dz as useStorybook}from"./chunks/ui-components-BlfhQM0V.js";import"./icons.js";import"react/jsx-runtime";import"styled-components";import"zustand";import"react";import"javascript-time-ago";import"./chunks/vendor-D99eCWta.js";import"@xyflow/react";import"react-dom";import"prism-react-renderer";import"react-error-boundary";import"lottie-react";import"virtua";
package/lib/functions.js CHANGED
@@ -1 +1 @@
1
- export{c7 as capitalizeFirstLetter,d3 as cleanObjectEmptyStringsValues,x as compareCondition,m as deepClone,bq as filterActions,bQ as filterDestinations,bO as filterDestinationsByStream,bP as filterSources,bN as filterSourcesByStream,d4 as flattenObjectKeys,bI as formatBytes,cG as formatDuration,ax as generateId,bc as getActionIcon,bk as getConditionsBooleans,cA as getContainersIcons,cD as getContainersInstrumentedCount,ab as getDestinationIcon,d5 as getDetectedLanguageIcons,bx as getEntityIcon,b8 as getEntityId,bs as getEntityLabel,d6 as getIdFromSseTarget,bJ as getInstrumentationRuleIcon,d7 as getMainContainerLanguage,cb as getMetricForEntity,d8 as getMonitorIcon,d9 as getPlatformIcon,da as getPlatformLabel,a0 as getProgrammingLanguageIcon,cI as getRecursiveValues,bK as getSourceLanguageIcons,db as getSseTargetFromId,dc as getStatusColor,aF as getStatusFromPodStatus,bo as getStatusIcon,co as getStatusTypeFromOdigosHealth,dd as getValueForRange,ci as getWorkloadId,c6 as getYamlFieldsForDestination,cp as hasUnhealthyInstances,i as isEmpty,de as isLegalK8sLabel,ap as isOverTime,cu as isStringABoolean,df as isTimeElapsed,dg as isValidVersion,bn as mapConditions,c4 as mapDestinationFieldsForDisplay,H as mapExportedSignals,E as mapSupportedSignals,dh as numbersOnly,cv as parseBooleanFromString,di as parseJsonStringToPrettyString,dj as removeEmptyValuesFromObject,z as safeJsonParse,dk as safeJsonStringify,bD as sleep,bX as splitCamelString,dl as stringifyNonStringValues,dm as trimVersion}from"./chunks/ui-components-B7yqdEby.js";import"./icons.js";import"react/jsx-runtime";import"styled-components";import"zustand";import"react";import"javascript-time-ago";import"./chunks/vendor-D99eCWta.js";import"@xyflow/react";import"react-dom";import"prism-react-renderer";import"react-error-boundary";import"lottie-react";import"virtua";
1
+ export{c7 as capitalizeFirstLetter,d3 as cleanObjectEmptyStringsValues,x as compareCondition,m as deepClone,bq as filterActions,bQ as filterDestinations,bO as filterDestinationsByStream,bP as filterSources,bN as filterSourcesByStream,d4 as flattenObjectKeys,bI as formatBytes,cG as formatDuration,ax as generateId,bc as getActionIcon,bk as getConditionsBooleans,cA as getContainersIcons,cD as getContainersInstrumentedCount,ab as getDestinationIcon,d5 as getDetectedLanguageIcons,bx as getEntityIcon,b8 as getEntityId,bs as getEntityLabel,d6 as getIdFromSseTarget,bJ as getInstrumentationRuleIcon,d7 as getMainContainerLanguage,cb as getMetricForEntity,d8 as getMonitorIcon,d9 as getPlatformIcon,da as getPlatformLabel,a0 as getProgrammingLanguageIcon,cI as getRecursiveValues,bK as getSourceLanguageIcons,db as getSseTargetFromId,dc as getStatusColor,aF as getStatusFromPodStatus,bo as getStatusIcon,co as getStatusTypeFromOdigosHealth,dd as getValueForRange,ci as getWorkloadId,c6 as getYamlFieldsForDestination,cp as hasUnhealthyInstances,i as isEmpty,de as isLegalK8sLabel,ap as isOverTime,cu as isStringABoolean,df as isTimeElapsed,dg as isValidVersion,bn as mapConditions,c4 as mapDestinationFieldsForDisplay,H as mapExportedSignals,E as mapSupportedSignals,dh as numbersOnly,cv as parseBooleanFromString,di as parseJsonStringToPrettyString,dj as removeEmptyValuesFromObject,z as safeJsonParse,dk as safeJsonStringify,bD as sleep,bX as splitCamelString,dl as stringifyNonStringValues,dm as trimVersion}from"./chunks/ui-components-BlfhQM0V.js";import"./icons.js";import"react/jsx-runtime";import"styled-components";import"zustand";import"react";import"javascript-time-ago";import"./chunks/vendor-D99eCWta.js";import"@xyflow/react";import"react-dom";import"prism-react-renderer";import"react-error-boundary";import"lottie-react";import"virtua";
package/lib/hooks.js CHANGED
@@ -1 +1 @@
1
- export{b7 as useActionFormData,dw as useBodyScroll,bR as useClickNode,cj as useClickNotification,bM as useContainerSize,am as useCopy,b$ as useDataStreamFormData,c5 as useDestinationFormData,a4 as useGenericForm,ce as useInstrumentationRuleFormData,an as useKeyDown,bW as useOnClickOutside,bS as usePopup,b_ as useSessionStorage,cw as useSourceFormData,cB as useSourceSelectionFormData,ao as useTimeAgo}from"./chunks/ui-components-B7yqdEby.js";import"./icons.js";import"react/jsx-runtime";import"styled-components";import"zustand";import"react";import"javascript-time-ago";import"./chunks/vendor-D99eCWta.js";import"@xyflow/react";import"react-dom";import"prism-react-renderer";import"react-error-boundary";import"lottie-react";import"virtua";
1
+ export{b7 as useActionFormData,dw as useBodyScroll,bR as useClickNode,cj as useClickNotification,bM as useContainerSize,am as useCopy,b$ as useDataStreamFormData,c5 as useDestinationFormData,a4 as useGenericForm,ce as useInstrumentationRuleFormData,an as useKeyDown,bW as useOnClickOutside,bS as usePopup,b_ as useSessionStorage,cw as useSourceFormData,cB as useSourceSelectionFormData,ao as useTimeAgo}from"./chunks/ui-components-BlfhQM0V.js";import"./icons.js";import"react/jsx-runtime";import"styled-components";import"zustand";import"react";import"javascript-time-ago";import"./chunks/vendor-D99eCWta.js";import"@xyflow/react";import"react-dom";import"prism-react-renderer";import"react-error-boundary";import"lottie-react";import"virtua";
@@ -1,3 +1,5 @@
1
- export * from './odigos-central-logo-text';
2
1
  export * from './odigos-logo';
3
2
  export * from './odigos-logo-text';
3
+ export * from './odigos-logo-text-central';
4
+ export * from './odigos-logo-text-community';
5
+ export * from './odigos-logo-text-enterprise';
@@ -0,0 +1,2 @@
1
+ import type { SVG } from '@/types';
2
+ export declare const OdigosLogoTextCentral: SVG;
@@ -0,0 +1,2 @@
1
+ import type { SVG } from '@/types';
2
+ export declare const OdigosLogoTextCommunity: SVG;
@@ -0,0 +1,2 @@
1
+ import type { SVG } from '@/types';
2
+ export declare const OdigosLogoTextEnterprise: SVG;