@odigos/ui-kit 0.0.261 → 0.0.263-dev.519
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 +26 -0
- package/lib/chunks/{connections-scope-DhNWocBO.js → connections-scope-DEVWbigK.js} +1 -1
- package/lib/chunks/index-BVtv0LGZ.js +155 -0
- package/lib/chunks/{odigos-context-BYgtdAtj.js → odigos-context-DGEWcwEQ.js} +1 -2
- package/lib/chunks/source-instrument-form-context-DMCdySjE.js +1 -0
- package/lib/chunks/ui-components-BDtk3K99.js +1742 -0
- package/lib/chunks/use-odigos-api-ZAJiPzPh.js +5 -0
- package/lib/components/_v2/cards/section-card/index.d.ts +2 -0
- package/lib/components/_v2/index.d.ts +1 -0
- package/lib/components/_v2/input-list/index.d.ts +2 -0
- package/lib/components/_v2/input-table/card-table.d.ts +10 -0
- package/lib/components/_v2/input-table/dynamic-field/index.d.ts +1 -0
- package/lib/components/_v2/input-table/index.d.ts +2 -0
- package/lib/components/_v2/input-table/types.d.ts +13 -1
- package/lib/components/_v2/radio-card/index.d.ts +16 -0
- package/lib/components/v2.js +1 -1
- package/lib/components.js +1 -1
- package/lib/constants/instrumentation-rules/index.d.ts +2 -1
- package/lib/constants/strings/index.d.ts +64 -0
- package/lib/constants.js +1 -1
- package/lib/containers/_v2/_drawers/add-source-drawer/strings.d.ts +1 -0
- package/lib/containers/_v2/_drawers/create-cloud-connector-drawer/index.d.ts +15 -0
- package/lib/containers/_v2/_drawers/create-cloud-connector-drawer/steps/select-provider/custom-resource-table.d.ts +9 -0
- package/lib/containers/_v2/_drawers/create-cloud-connector-drawer/steps/select-provider/helpers.d.ts +5 -0
- package/lib/containers/_v2/_drawers/create-cloud-connector-drawer/steps/select-provider/index.d.ts +2 -0
- package/lib/containers/_v2/_drawers/create-cloud-connector-drawer/steps/select-provider/permission-list.d.ts +12 -0
- package/lib/containers/_v2/_drawers/create-cloud-connector-drawer/steps/select-provider/permissions.d.ts +25 -0
- package/lib/containers/_v2/_drawers/create-cloud-connector-drawer/steps/select-provider/policy-preview.d.ts +5 -0
- package/lib/containers/_v2/_drawers/create-cloud-connector-drawer/steps/select-provider/provider-list.d.ts +8 -0
- package/lib/containers/_v2/_drawers/create-cloud-connector-drawer/steps/setup-credentials/create-role-section.d.ts +6 -0
- package/lib/containers/_v2/_drawers/create-cloud-connector-drawer/steps/setup-credentials/enter-arn-section.d.ts +5 -0
- package/lib/containers/_v2/_drawers/create-cloud-connector-drawer/steps/setup-credentials/index.d.ts +5 -0
- package/lib/containers/_v2/_drawers/create-cloud-connector-drawer/steps/setup-credentials/methods.d.ts +30 -0
- package/lib/containers/_v2/_drawers/create-cloud-connector-drawer/steps/setup-credentials/section.d.ts +9 -0
- package/lib/containers/_v2/_drawers/create-cloud-connector-drawer/steps/validate-connection/index.d.ts +8 -0
- package/lib/containers/_v2/_drawers/index.d.ts +1 -0
- package/lib/containers/_v2/_forms/add-action-form/dynamic-fields/index.d.ts +1 -0
- package/lib/containers/_v2/_forms/add-rule-form/custom-fields/index.d.ts +2 -1
- package/lib/containers/_v2/central-connections/helpers.d.ts +9 -0
- package/lib/containers/_v2/central-connections/index.d.ts +6 -1
- package/lib/containers/_v2/settings/side-menu/index.d.ts +12 -0
- package/lib/containers/_v2/settings/toolbar/index.d.ts +2 -5
- package/lib/containers/v2.js +598 -158
- package/lib/containers.js +1 -1
- package/lib/contexts/cloud-connector-form-context.d.ts +35 -0
- package/lib/contexts/index.d.ts +1 -0
- package/lib/contexts/odigos-api/capabilities.d.ts +1 -0
- package/lib/contexts/odigos-api/hooks/use-instrumentation-rules-api.d.ts +13 -1
- package/lib/contexts/odigos-api/types.d.ts +3 -1
- package/lib/contexts/odigos-api.js +1 -1
- package/lib/contexts/rule-form-context.d.ts +1 -1
- package/lib/contexts.js +1 -1
- package/lib/functions.js +1 -1
- package/lib/hooks.js +1 -1
- package/lib/icons/common/index.d.ts +1 -0
- package/lib/icons/common/lock-icon/index.d.ts +2 -0
- package/lib/icons/compute-platform/cloud-connector-icon/index.d.ts +2 -0
- package/lib/icons/compute-platform/cloud-connector-policy-icon/index.d.ts +2 -0
- package/lib/icons/compute-platform/index.d.ts +2 -0
- package/lib/icons.js +1 -1
- package/lib/snippets/_v2/connector-created-modal/index.d.ts +7 -0
- package/lib/snippets/_v2/dynamic-field/index.d.ts +2 -1
- package/lib/snippets/_v2/index.d.ts +1 -0
- package/lib/snippets/v2.js +1 -1
- package/lib/snippets.js +1 -1
- package/lib/store.js +1 -1
- package/lib/theme.js +1 -1
- package/lib/types/actions/index.d.ts +1 -4
- package/lib/types/cloud-connectors/index.d.ts +88 -0
- package/lib/types/common/index.d.ts +3 -1
- package/lib/types/index.d.ts +1 -0
- package/lib/types/instrumentation-rules/index.d.ts +22 -3
- package/lib/types/snapshot/index.d.ts +1 -0
- package/lib/types/sources/index.d.ts +1 -0
- package/lib/types/workload/index.d.ts +1 -0
- package/lib/types.js +1 -1
- package/lib/visuals.js +1 -1
- package/package.json +1 -1
- package/lib/chunks/index-DILEVYlK.js +0 -155
- package/lib/chunks/source-instrument-form-context-oDlfTrOD.js +0 -1
- package/lib/chunks/ui-components-BDSEcaSZ.js +0 -1692
- package/lib/chunks/use-odigos-api-DHCLONPK.js +0 -5
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,31 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.0.263](https://github.com/odigos-io/ui-kit/compare/ui-kit-v0.0.262...ui-kit-v0.0.263) (2026-07-05)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
* **settings:** revamp settings page UI/UX ([#1062](https://github.com/odigos-io/ui-kit/issues/1062)) ([ae4bb59](https://github.com/odigos-io/ui-kit/commit/ae4bb59cfe9431bcc914486c65b3639710cafc95))
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Bug Fixes
|
|
12
|
+
|
|
13
|
+
* **add-source-drawer:** reload cluster state on drawer open (PLAT-1232) ([#1063](https://github.com/odigos-io/ui-kit/issues/1063)) ([cab05c4](https://github.com/odigos-io/ui-kit/commit/cab05c46c06e5e4404e6a17b47a6e5f986ef7172))
|
|
14
|
+
|
|
15
|
+
## [0.0.262](https://github.com/odigos-io/ui-kit/compare/ui-kit-v0.0.261...ui-kit-v0.0.262) (2026-07-02)
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
### Features
|
|
19
|
+
|
|
20
|
+
* **central-ui:** restrict bulk operations to k8s clusters ([#1060](https://github.com/odigos-io/ui-kit/issues/1060)) ([19dfe11](https://github.com/odigos-io/ui-kit/commit/19dfe114492293ae615f6776ef4642570f499dc2))
|
|
21
|
+
* **instrumentation-rules:** read rule types catalog from backend (PLAT-1257) ([#1054](https://github.com/odigos-io/ui-kit/issues/1054)) ([c996c46](https://github.com/odigos-io/ui-kit/commit/c996c4658a1fb30c98ad7878be29f4eab7fca667))
|
|
22
|
+
* **pod-icon:** use kubernetes logo for pod icon ([#1055](https://github.com/odigos-io/ui-kit/issues/1055)) ([d371591](https://github.com/odigos-io/ui-kit/commit/d371591ed22279dbbcfae63530834041697cc854))
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
### Bug Fixes
|
|
26
|
+
|
|
27
|
+
* **tooltip:** remove unnecessary "?" cursor ([#1061](https://github.com/odigos-io/ui-kit/issues/1061)) ([4c9d64d](https://github.com/odigos-io/ui-kit/commit/4c9d64d7c692786f3b44a3ac04177a8273442c41))
|
|
28
|
+
|
|
3
29
|
## [0.0.261](https://github.com/odigos-io/ui-kit/compare/ui-kit-v0.0.260...ui-kit-v0.0.261) (2026-07-01)
|
|
4
30
|
|
|
5
31
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as o}from"react/jsx-runtime";import{useMemo as n}from"react";import{e as t,_ as e}from"./use-odigos-api-
|
|
1
|
+
import{jsx as o}from"react/jsx-runtime";import{useMemo as n}from"react";import{e as t,_ as e}from"./use-odigos-api-ZAJiPzPh.js";const r=({connectionIds:r,children:i})=>{const s=t(),a=n(()=>({operations:s.operations,context:{...s.context,connectionIds:r},apolloConfig:s.apolloConfig}),[s.operations,s.context,s.apolloConfig,r.join(",")]);return o(e.Provider,{value:a,children:i})};export{r as O};
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
import{aB as e,L as a,b2 as t,p as l,dZ as r,l as n,ad as i,ae as s,aX as o,d_ as d,V as c,aR as u,au as p,ab as h,s as g,af as m,an as v,b3 as f,B as b,z as y,d$ as x,e0 as C,n as S,C as T,J as k,G as $,H as w,ay as A,ax as O,ba as P,b as M,a8 as L,a9 as D,y as I,M as N,aK as R,e1 as z,e2 as E,e3 as X,T as H,e4 as B,O as V,a as G,e5 as _,e6 as j,e7 as q,e8 as U,e9 as J,ea as K,ak as W,eb as Y,ec as F,ed as Q,ee as Z,ef as ee,b_ as ae,eg as te,eh as le,ei as re,ej as ne,ek as ie,el as se,em as oe,en as de,eo as ce,ep as ue,eq as pe,er as he,es as ge,et as me,eu as ve,ev as fe,bK as be,ew as ye,ex as xe,ey as Ce,ez as Se,eA as Te,eB as ke,eC as $e,eD as we,eE as Ae,b4 as Oe,Y as Pe,eF as Me,o as Le,eG as De,bb as Ie,eH as Ne,eI as Re,eJ as ze,eK as Ee,by as Xe,aA as He,eL as Be,eM as Ve,eN as Ge,dn as _e,eO as je,eP as qe,eQ as Ue,e as Je,dl as Ke,aa as We,Q as Ye,aQ as Fe,N as Qe,ag as Ze,aU as ea,dA as aa,U as ta,b0 as la,bn as ra,c1 as na,eR as ia}from"./ui-components-BDtk3K99.js";import{G as sa,C as oa,H as da,u as ca,I as ua,h as pa,f as ha,e as ga,j as ma,k as va,l as fa,i as ba,m as ya}from"./odigos-context-DGEWcwEQ.js";import{jsx as xa,jsxs as Ca,Fragment as Sa}from"react/jsx-runtime";import{VIcon as Ta,EditIcon as ka,OdigosLogoTextCentral as $a,OdigosLogoTextEnterprise as wa,OdigosLogoTextCommunity as Aa,OdigosLogoTextColoredCentral as Oa,OdigosLogoTextColoredEnterprise as Pa,OdigosLogoTextColoredCommunity as Ma,ArrowLeftIcon as La,ArrowRightIcon as Da,VSquareIcon as Ia,CopyIcon as Na,YamlIcon as Ra}from"../icons.js";import za,{useMemo as Ea,useCallback as Xa,useState as Ha,useEffect as Ba,useRef as Va,forwardRef as Ga,useImperativeHandle as _a}from"react";import ja,{useTheme as qa}from"styled-components";const Ua=({isOpen:t,onClose:l,onDeny:r,onApprove:n})=>xa(e,{title:"Discard changes?",description:"You have unsaved changes.\nIf you cancel now, your changes won't be saved.",isOpen:t,onClose:l,denyButton:{label:"Keep editing",variant:a.Secondary,onClick:()=>{r?.(),l()}},approveButton:{label:"Discard changes",variant:a.Primary,onClick:()=>{n?.(),l()}}}),Ja=({isOpen:n,onClose:i,onViewConnector:s})=>xa(e,{isOpen:n,onClose:i,visual:()=>xa(r,{scale:1.2,icon:Ta}),title:l.CLOUD_CONNECTOR_CREATED_MODAL_TITLE,description:l.CLOUD_CONNECTOR_CREATED_MODAL_DESC,denyButton:{label:t.STAY_ON_CONNECTIONS,variant:a.Secondary,onClick:i},approveButton:{label:t.GO_TO_CONNECTOR_OVERVIEW,variant:a.Primary,onClick:s??i}}),Ka=({isOpen:t,onClose:l,onDeny:r,onApprove:n,action:i="delete",target:s,description:o,overrideApproveButtonLabel:d,overrideDenyButtonLabel:c})=>{const u=i.charAt(0).toUpperCase()+i.substring(1),p=s?.endsWith("s")?"these":"this";return xa(e,{title:`${u}${s?` ${s}`:""}?`,description:o??`Are you sure you want to ${i}${s?` ${p} ${s}`:""}?`,isOpen:t,onClose:l,denyButton:{label:c??"Go back",variant:a.Secondary,onClick:()=>{r?.(),l()}},approveButton:{label:d??u,variant:a.Primary,onClick:()=>{n?.(),l()}}})},Wa=({componentType:e,inputType:a,name:t,label:l,tooltip:r,badge:b,placeholder:y,required:x,disabled:C,value:S,setValue:T,errorMessage:k,warnMessage:$,helpMessage:w,dropdownOptions:A,dropdownNoSearch:O,dropdownNoCheckbox:P,timeUnits:M,timeDefaultUnit:L,toggleSize:D=o.L})=>{switch(e){case n.Input:return xa(v,{name:t,type:a,label:l,tooltip:r,badge:b,placeholder:y,required:x,disabled:C,value:S??"",onChange:e=>{const t=e.target.value;T(a===f.Number?""===t?null:Number(t):t)},errorMessage:k,warnMessage:$,helpMessage:w},t);case n.MultiInput:return xa(m,{name:t,label:l,tooltip:r,badge:b,placeholder:y,required:x,disabled:C,values:Array.isArray(S)?S:g(S,[]),setValues:e=>T(e),errorMessage:k,warnMessage:$,helpMessage:w,plain:!0},t);case n.KeyValuePair:return xa(h,{name:t,label:l,tooltip:r,badge:b,required:x,disabled:C,limitFieldsPerRow:2,columns:[{keyName:"key",label:"Key",placeholder:"Key"},{keyName:"value",label:"Value",placeholder:"Value"}],values:Array.isArray(S)?S:g(S,[]),setValues:e=>T(e),errorMessage:k,warnMessage:$,helpMessage:w},t);case n.TextArea:return xa(p,{name:t,label:l,tooltip:r,badge:b,required:x,disabled:C,placeholder:y,value:S??"",onChange:e=>T(e.target.value),errorMessage:k,warnMessage:$,helpMessage:w},t);case n.Dropdown:return xa(u,{name:t,label:l,tooltip:r,badge:b,placeholder:y,required:x,disabled:C,withSearch:!O,options:A?.map(e=>({id:e.id||"",label:e.label||"",withCheckbox:!P}))||[],values:S?[String(S)]:[],setValues:e=>T(e[0]),errorMessage:k,warnMessage:$,helpMessage:w},t);case n.Checkbox:return xa(c,{name:t,label:l,tooltip:r,badge:b,value:!0===S||"true"===S,onChange:e=>T(e),disabled:C,errorMessage:k,warnMessage:$,helpMessage:w},t);case n.Time:return xa(d,{name:t,label:l,tooltip:r,badge:b,placeholder:y,required:x,disabled:C,value:S??"",setValue:e=>T(e),units:M,defaultUnit:L,errorMessage:k,warnMessage:$,helpMessage:w},t);case n.Toggle:return xa(i,{name:t,size:D,labelAlign:s.Right,label:l,tooltip:r,badge:b,value:!0===S||"true"===S,onChange:e=>T(e),disabled:C,errorMessage:k,warnMessage:$,helpMessage:w},t);default:return null}},Ya=ja.div`
|
|
2
|
+
display: flex;
|
|
3
|
+
align-items: center;
|
|
4
|
+
gap: 24px;
|
|
5
|
+
padding: 8px 16px;
|
|
6
|
+
border-radius: 12px;
|
|
7
|
+
background-color: ${({theme:e})=>e.v2.colors.silver[800]};
|
|
8
|
+
`,Fa=ja.div`
|
|
9
|
+
flex: 1;
|
|
10
|
+
min-width: 0;
|
|
11
|
+
white-space: pre;
|
|
12
|
+
overflow-x: auto;
|
|
13
|
+
`,Qa=({title:e,summary:t,onEdit:l,renderAction:r})=>{const n=Ea(()=>{const a=[];return e&&(a.push({text:e,variant:sa.Default}),a.push({text:" - ",variant:sa.Default})),a.push(...t),a},[e,t]);return Ca(Ya,{children:[xa(Fa,{children:xa(oa,{parts:n})}),r&&r(),l&&xa(b,{"data-id":"sampling-btn-edit-auto-rule",label:x,rightIcon:ka,variant:a.Text,size:y.S,onClick:l})]})},Za={[A.HttpRequest]:"HTTP request",[A.HttpResponse]:"HTTP response",[A.DbQuery]:"DB query",[A.Messaging]:"messaging"};function et(e,a,t){return 1===e?a:t??`${a}s`}function at(e,a){const t=[],l=e.slice(0,3),r=e.slice(3);return l.forEach((e,l)=>{l>0&&t.push({text:", ",variant:sa.Default}),t.push({text:e,variant:a})}),r.length>0&&t.push({text:` + ${r.length} more`,variant:sa.Default,tooltipItems:r}),t}function tt(e,a){switch(e){case S.CodeAttributes:return function(e){const a=Object.values(O).filter(a=>!!e.codeAttributes?.[a]).map(e=>P(e).toLowerCase());return a.length?[{text:"Collect",variant:sa.Action},{text:" ",variant:sa.Default},...at(a,sa.Endpoint)]:null}(a);case S.PayloadCollection:return function(e){const a=Object.values(A).filter(a=>null!=e.payloadCollection?.[a]).map(e=>Za[e]);return a.length?[{text:"Collect",variant:sa.Action},{text:" ",variant:sa.Default},...at(a,sa.Endpoint)]:null}(a);case S.HeadersCollection:return function(e){const a=(e.headersCollection?.[w.HeaderKeys]??[]).map(e=>e.trim()).filter(e=>e.length>0);if(!a.length)return null;const t=et(a.length,"HTTP header");return[{text:`Collect ${a.length} ${t}`,variant:sa.Action},{text:"",variant:sa.Default,tooltipItems:a}]}(a);case S.CustomInstrumentation:return function(e){const a=(e.customInstrumentations?.[T.Java]??[]).map(e=>new k(e.className,e.methodName)).filter(e=>e.Verify()),t=(e.customInstrumentations?.[T.Golang]??[]).map(e=>new $(e.packageName,e.functionName,e.receiverName,e.receiverMethodName)).filter(e=>e.Verify());if(!(a.length+t.length))return null;const l=[];a.length&&l.push(`${a.length} Java ${et(a.length,"probe")}`),t.length&&l.push(`${t.length} Go ${et(t.length,"probe")}`);const r=[...a.map(e=>`Java: ${e.toString()}`),...t.map(e=>`Go: ${e.toString()}`)];return[{text:`Apply ${l.join(" + ")}`,variant:sa.Action},{text:"",variant:sa.Default,tooltipItems:r}]}(a);default:return null}}const lt=({option:e,formState:a,renderAction:t})=>{const l=Ea(()=>{const t=tt(e?.type,a);return t?[...t,...da(a.sourceScopes)]:[]},[e?.type,a]),r=0===l.length;return xa(Qa,{title:r?C:"Instrumentation Rule Preview",summary:l,renderAction:t})},rt=({size:e=200,central:a=!1,useInline:t=!1})=>{const{tier:l}=ca();if(t){if(a)return xa($a,{size:e});switch(l){case M.Community:return xa(Aa,{size:e});case M.Onprem:return xa(wa,{size:e});default:return null}}if(a)return xa(Oa,{size:e});switch(l){case M.Community:return xa(Ma,{size:e});case M.Onprem:return xa(Pa,{size:e});default:return null}},nt=[{value:"50",label:"50%"},{value:"25",label:"25%"},{value:"10",label:"10%"},{value:"1",label:"1%"},{value:"custom",label:"Custom"}],it=[{value:"10",label:"10%"},{value:"1",label:"1%"},{value:"0.5",label:"0.5%"},{value:"0.1",label:"0.1%"},{value:"custom",label:"Custom"}],st=[{value:"5000",label:"5s"},{value:"1000",label:"1s"},{value:"500",label:"500ms"},{value:"100",label:"100ms"},{value:"50",label:"50ms"},{value:"custom",label:"Custom"}],ot=({description:e,options:a,selected:t,onSelect:l,customName:r,customLabel:n,customPlaceholder:i,customValue:s,onCustomChange:o,customInputType:d=f.Number,customMin:c,customMax:u})=>Ca(L,{$gap:6,children:[xa(D,{label:e}),Ca(I,{$gap:8,$alignItems:"flex-end",children:[xa(N,{options:a,selected:t,setSelected:l}),"custom"===t&&xa(v,{name:r,label:n,placeholder:i,type:d,value:s,onChange:o,width:160,min:c,max:u})]})]}),dt=()=>{},ct=e=>e.readOnly?xa(ut,{rule:e.rule}):xa(pt,{ruleType:e.ruleType,formState:e.formState,onChange:e.onChange}),ut=({rule:e})=>{const a=null!=e.durationAtLeastMs;return e.error?xa(R,{richTitle:{title:z},children:xa(i,{name:"sampling-view-toggle-keep-errors",onChange:dt,value:!0,size:o.S,label:E,labelAlign:s.Right})}):a?xa(R,{richTitle:{title:X},children:Ca("div",{children:[xa(H,{size:G.XXXS,color:V.Secondary,children:B}),xa(H,{size:G.XS,children:`${e.durationAtLeastMs}ms`})]})}):null},pt=({ruleType:e,formState:a,onChange:t})=>{const l=Xa(e=>t({durationPreset:e}),[t]),r=Xa(e=>t({customDurationMs:e.target.value}),[t]);return"Duration"===e?xa(R,{richTitle:{title:X,subTitle:_},children:xa(ot,{description:B,options:st,selected:a.durationPreset,onSelect:l,customName:"sampling-input-custom-duration",customLabel:j,customPlaceholder:"200ms",customValue:a.customDurationMs,onCustomChange:r})}):null},ht=ja.div`
|
|
14
|
+
display: flex;
|
|
15
|
+
gap: 32px;
|
|
16
|
+
`,gt=ja.div`
|
|
17
|
+
display: flex;
|
|
18
|
+
flex-direction: column;
|
|
19
|
+
gap: 4px;
|
|
20
|
+
`,mt=ja.div`
|
|
21
|
+
display: flex;
|
|
22
|
+
flex-wrap: wrap;
|
|
23
|
+
align-items: flex-end;
|
|
24
|
+
gap: 16px;
|
|
25
|
+
`,vt=ja.div`
|
|
26
|
+
display: flex;
|
|
27
|
+
align-items: flex-end;
|
|
28
|
+
gap: 16px;
|
|
29
|
+
padding: 12px 16px;
|
|
30
|
+
border-radius: 8px;
|
|
31
|
+
background-color: ${({theme:e})=>e.v2.colors.black[500]};
|
|
32
|
+
`,ft=ja.div`
|
|
33
|
+
display: flex;
|
|
34
|
+
align-items: flex-end;
|
|
35
|
+
gap: 10px;
|
|
36
|
+
flex: 1;
|
|
37
|
+
`,bt=ja.div`
|
|
38
|
+
display: flex;
|
|
39
|
+
align-items: center;
|
|
40
|
+
height: 32px;
|
|
41
|
+
`,yt=ja.div`
|
|
42
|
+
display: flex;
|
|
43
|
+
align-items: flex-end;
|
|
44
|
+
gap: 16px;
|
|
45
|
+
margin-bottom: 12px;
|
|
46
|
+
`,xt="Any",Ct="Kafka topic",St=()=>xa("div",{style:{marginBottom:"8px"},children:xa(H,{size:G.XS,weight:500,children:"And"})}),Tt=[{value:"all",label:"All Operations"},{value:"httpServer",label:"HTTP Server"},{value:"httpClient",label:"HTTP Client"}],kt=[{value:"all",label:"All Operations"},{value:"httpServer",label:"HTTP Server"},{value:"kafkaConsumer",label:"Kafka Consumer"},{value:"kafkaProducer",label:"Kafka Producer"}],$t=[{id:"",label:xt},{id:"GET",label:"GET"},{id:"POST",label:"POST"},{id:"PUT",label:"PUT"},{id:"DELETE",label:"DELETE"},{id:"PATCH",label:"PATCH"}];const wt=e=>e.readOnly?xa(At,{data:e.data}):xa(Ot,{category:e.category,formState:e.formState,onChange:e.onChange}),At=({data:e})=>{const a=Ea(()=>function(e){if("noisy"===e.category){const a=e.rule.operation;if(a?.httpServer)return[{id:"type",title:ne,value:re},{id:"route",title:Q,value:a.httpServer.route||a.httpServer.routePrefix||ie},{id:"method",title:te,value:a.httpServer.method||xt}];if(a?.httpClient){const e=[{id:"type",title:ne,value:se}];return a.httpClient.serverAddress&&e.push({id:"serverAddress",title:"Server address",value:a.httpClient.serverAddress}),e.push({id:"route",title:Q,value:a.httpClient.templatedPath||a.httpClient.templatedPathPrefix||ie}),e.push({id:"method",title:te,value:a.httpClient.method||xt}),e}return[{id:"type",title:ne,value:oe}]}const a=e.rule.operation;return a?.httpServer?[{id:"type",title:ne,value:re},{id:"route",title:Q,value:a.httpServer.route||a.httpServer.routePrefix||ie},{id:"method",title:te,value:a.httpServer.method||xt}]:a?.kafkaConsumer?[{id:"type",title:ne,value:de},{id:"topic",title:Ct,value:a.kafkaConsumer.kafkaTopic||ie}]:a?.kafkaProducer?[{id:"type",title:ne,value:ce},{id:"topic",title:Ct,value:a.kafkaProducer.kafkaTopic||ie}]:[{id:"type",title:ne,value:oe}]}(e),[e]);return xa(R,{richTitle:{title:q},children:xa(ht,{children:a.map(({id:e,title:a,value:t})=>Ca(gt,{children:[xa(H,{size:G.XXXS,color:V.Secondary,nowrap:!0,children:a}),xa(H,{size:G.XS,nowrap:!0,children:t})]},e))})})},Ot=({category:e,formState:t,onChange:l})=>{const r=Ea(()=>"noisy"===e?Tt:kt,[e]),n=Xa(e=>l({operationType:e,route:"",serverAddress:"",method:"",kafkaTopic:""}),[l]),i=Xa(e=>a=>{a&&l({routeType:e,route:""})},[l]),s=Xa(e=>l({route:e.target.value}),[l]),o=Xa(e=>l({serverAddress:e.target.value}),[l]),d=Xa(e=>l({method:e[0]||""}),[l]),c=Xa(e=>l({kafkaTopic:e.target.value}),[l]),u="httpServer"===t.operationType||"httpClient"===t.operationType,p="kafkaConsumer"===t.operationType||"kafkaProducer"===t.operationType,h="httpClient"===t.operationType?F:Q,g="httpClient"===t.operationType?Z:ee;return Ca(R,{richTitle:{title:`2. ${q}`,subTitle:U},children:[xa(L,{$alignItems:"flex-start",children:xa(N,{options:r,selected:t.operationType,setSelected:n})}),u&&Ca(mt,{children:["httpClient"===t.operationType&&Ca(yt,{children:[xa(v,{name:"sampling-input-server-address",label:K,placeholder:J,value:t.serverAddress,onChange:o}),xa(St,{})]}),Ca(vt,{children:[Ca(ft,{children:[xa(bt,{children:xa(W,{"data-id":"sampling-radio-route",value:"route"===t.routeType,onChange:i("route")})}),xa(v,{name:"sampling-input-route",label:h,placeholder:Y,value:"route"===t.routeType?t.route:"",onChange:s,disabled:"route"!==t.routeType})]}),Ca(ft,{children:[xa(bt,{children:xa(W,{"data-id":"sampling-radio-route-prefix",value:"routePrefix"===t.routeType,onChange:i("routePrefix")})}),xa(v,{name:"sampling-input-route-prefix",label:g,placeholder:Y,value:"routePrefix"===t.routeType?t.route:"",onChange:s,disabled:"routePrefix"!==t.routeType})]})]}),Ca(yt,{children:[xa(St,{}),xa(ae,{label:te,items:$t,selectedIds:[t.method||""],setSelectedIds:e=>d(e),buttonProps:{"data-id":"sampling-btn-method",label:$t.find(e=>e.id===t.method)?.label||xt,size:y.S,variant:a.Secondary}})]})]}),p&&xa(v,{name:"sampling-input-kafka-topic",label:le,placeholder:"Type kafka topic",value:t.kafkaTopic,onChange:c,width:"320px"})]})},Pt=[{value:"all",label:"Drop All"},{value:"sample",label:"Sample"}],Mt=[{value:"all",label:"Keep All"},{value:"sample",label:"Sample"}];const Lt=e=>e.readOnly?xa(Dt,{data:e.data}):xa(It,{category:e.category,formState:e.formState,onChange:e.onChange}),Dt=({data:e})=>{const a=Ea(()=>function(e){switch(e.category){case"highlyRelevant":return null!=e.rule.percentageAtLeast?{title:pe,method:me,description:he,value:`${e.rule.percentageAtLeast}%`}:{title:pe,method:fe,description:null,value:null};case"noisy":return ua(e.rule.percentageAtMost)?{title:pe,method:ve,description:null,value:null}:{title:pe,method:me,description:ge,value:`${e.rule.percentageAtMost}%`};case"costReduction":return{title:pe,method:me,description:ge,value:`${e.rule.percentageAtMost}%`}}}(e),[e]),t=[{id:"method",title:te,value:a.method},...null!=a.description?[{id:"value",title:a.description,value:a.value}]:[]];return xa(R,{richTitle:{title:a.title},children:xa(ht,{children:t.map(({id:e,title:a,value:t})=>Ca(gt,{children:[xa(H,{size:G.XXXS,color:V.Secondary,nowrap:!0,children:a}),xa(H,{size:G.XS,nowrap:!0,children:t})]},e))})})},It=({category:e,formState:a,onChange:t})=>{const l="highlyRelevant"===e,r=l?Mt:Pt,n=`${l?4:3}. ${pe}`,i=ue[e],s=l?he:ge,o="noisy"===e?it:nt,d=Xa(e=>t({percentageMode:e}),[t]),c=Xa(e=>t({percentagePreset:e}),[t]),u=Xa(e=>t({customPercentage:e.target.value}),[t]);return Ca(R,{richTitle:{title:n,subTitle:i},children:["costReduction"!==e&&xa(L,{$alignItems:"flex-start",children:xa(N,{options:r,selected:a.percentageMode,setSelected:d})}),("costReduction"===e||"sample"===a.percentageMode)&&xa(ot,{description:s,options:o,selected:a.percentagePreset,onSelect:c,customName:"sampling-input-custom-percentage",customPlaceholder:"5%",customValue:a.customPercentage,onCustomChange:u,customInputType:f.Decimal,customMin:0,customMax:100})]})},Nt=ja.div`
|
|
47
|
+
display: flex;
|
|
48
|
+
align-items: flex-end;
|
|
49
|
+
gap: 16px;
|
|
50
|
+
`,Rt=ja.div`
|
|
51
|
+
width: 280px;
|
|
52
|
+
flex-shrink: 0;
|
|
53
|
+
`,zt=ja.div`
|
|
54
|
+
flex: 1;
|
|
55
|
+
min-width: 0;
|
|
56
|
+
`;function Et(e){return"highlyRelevant"===e.category?e.rule.error?"Error":null!=e.rule.durationAtLeastMs?"Duration":"Relevance":$e[e.category]}const Xt=e=>e.readOnly?xa(Ht,{data:e.data}):xa(Bt,{formState:e.formState,onChange:e.onChange}),Ht=({data:e})=>{const a=Ea(()=>[{id:"name",title:ye,value:e.rule.name||be},{id:"type",title:xe,value:Et(e)}],[e]),t=e.rule.notes||ie;return Ca(R,{children:[xa(ht,{children:a.map(({id:e,title:a,value:t})=>Ca(gt,{children:[xa(H,{size:G.XXXS,color:V.Secondary,nowrap:!0,children:a}),xa(H,{size:G.XS,nowrap:!0,children:t})]},e))}),Ca(gt,{children:[xa(H,{size:G.XXXS,color:V.Secondary,children:Ce}),xa(H,{size:G.XS,children:t})]})]})},Bt=({formState:e,onChange:a})=>{const t=Xa(e=>a({name:e.target.value}),[a]),l=Xa(e=>a({notes:e.target.value}),[a]);return xa(R,{children:Ca(Nt,{children:[xa(Rt,{children:xa(v,{name:"sampling-input-rule-name",label:ye,tooltip:"Optional. Give this rule a name for easier identification.",placeholder:Se,value:e.name,onChange:t})}),xa(zt,{children:xa(v,{name:"sampling-input-note",label:Ce,tooltip:ke,placeholder:Te,value:e.notes,onChange:l})})]})})},Vt=[{value:"Relevance",label:"Relevance"},{value:"Error",label:"Error"},{value:"Duration",label:"Duration"}],Gt=({formState:e,onChange:a})=>{const t=Xa(e=>a({ruleType:e,keepErrors:"Error"===e}),[a]);return xa(R,{richTitle:{title:`3. ${xe}`,subTitle:we},children:xa(L,{$alignItems:"flex-start",children:xa(N,{options:Vt,selected:e.ruleType,setSelected:t})})})},_t=e=>{const a=Ea(()=>{if(e.readOnly)return e.summary;switch(e.category){case"noisy":return ga(fa(e.formState));case"highlyRelevant":return ha(va(e.formState));case"costReduction":return pa(ma(e.formState))}},[e]);if(e.readOnly)return xa(Qa,{title:Ae,summary:a,renderAction:e.renderAction});const t=1===a.length&&"default"===a[0].variant;return xa(Qa,{title:t?C:Ae,summary:t?[]:a,renderAction:e.renderAction})},jt=ja.div`
|
|
57
|
+
display: flex;
|
|
58
|
+
flex-wrap: wrap;
|
|
59
|
+
gap: 8px;
|
|
60
|
+
`,qt=ja.div`
|
|
61
|
+
display: flex;
|
|
62
|
+
align-items: center;
|
|
63
|
+
gap: 8px;
|
|
64
|
+
padding: 8px 12px;
|
|
65
|
+
border-radius: 8px;
|
|
66
|
+
cursor: pointer;
|
|
67
|
+
background: ${({theme:e,$selected:a})=>a?e.v2.colors.silver[700]:e.v2.colors.silver[800]};
|
|
68
|
+
border: 1px solid ${({theme:e,$selected:a})=>a?e.v2.colors.silver[500]:e.v2.colors.silver[750]};
|
|
69
|
+
|
|
70
|
+
&:hover {
|
|
71
|
+
background: ${({theme:e})=>e.v2.colors.silver[700]};
|
|
72
|
+
}
|
|
73
|
+
`,Ut=ja.div`
|
|
74
|
+
display: flex;
|
|
75
|
+
width: 32px;
|
|
76
|
+
height: 32px;
|
|
77
|
+
justify-content: center;
|
|
78
|
+
align-items: center;
|
|
79
|
+
flex-shrink: 0;
|
|
80
|
+
`,Jt=ja.div`
|
|
81
|
+
display: flex;
|
|
82
|
+
flex-direction: column;
|
|
83
|
+
gap: 12px;
|
|
84
|
+
`,Kt=ja.div`
|
|
85
|
+
display: flex;
|
|
86
|
+
flex-wrap: wrap;
|
|
87
|
+
gap: 6px;
|
|
88
|
+
`,Wt=ja.div`
|
|
89
|
+
display: flex;
|
|
90
|
+
align-items: center;
|
|
91
|
+
gap: 8px;
|
|
92
|
+
&::before,
|
|
93
|
+
&::after {
|
|
94
|
+
content: '';
|
|
95
|
+
flex: 1;
|
|
96
|
+
height: 1px;
|
|
97
|
+
background-color: ${({theme:e})=>e.v2.colors.silver[700]};
|
|
98
|
+
}
|
|
99
|
+
`,Yt=ja.div`
|
|
100
|
+
padding: 2px 10px;
|
|
101
|
+
border-radius: 999px;
|
|
102
|
+
background-color: ${({theme:e})=>e.v2.colors.silver[700]};
|
|
103
|
+
border: 1px solid ${({theme:e})=>e.v2.colors.silver[600]};
|
|
104
|
+
`,Ft={[Xe.JavaScript]:"Node.js",[Xe.DotNet]:".NET",[Xe.Php]:"PHP",[Xe.Java]:"Java",[Xe.Go]:"Go",[Xe.Python]:"Python",[Xe.Ruby]:"Ruby",[Xe.Rust]:"Rust"},Qt=[Xe.Python,Xe.Java,Xe.JavaScript,Xe.DotNet,Xe.Php,Xe.Ruby,Xe.Go],Zt=[{value:"all",label:"Entire Cluster"},{value:"source",label:"Specific Source"},{value:"namespace",label:"Specific Namespace"},{value:"language",label:"Specific Programming Language"}];function el(e){const a=Ft[e];return a||e.charAt(0).toUpperCase()+e.slice(1)}function al(e){return null!=e?`${e}. ${Ue}`:Ue}const tl=({readOnly:e,...a})=>xa(e?nl:sl,{...a}),ll=({title:e,count:a,children:t})=>Ca(L,{$gap:6,children:[Ca(I,{$gap:8,$alignItems:"center",children:[xa(H,{size:G.XS,color:V.Primary,nowrap:!0,children:e}),a>1&&Ca(H,{size:G.XXS,color:V.Secondary,nowrap:!0,children:["(",je,")"]})]}),xa(Kt,{children:t})]}),rl=()=>{const e=qa();return xa(Wt,{children:xa(Yt,{children:xa(H,{size:G.XXS,color:e.v2.colors.white[500],nowrap:!0,children:qe})})})},nl=({scopes:e,titleNumber:a})=>{const t=al(a);if(ba(e))return xa(Oe,{bgTint:"900",richTitle:{title:t},withCollapse:!0,collapseIsDefaultOpen:!0,children:xa(Pe,{status:Le.Default,message:Me,fullWidth:!0})});const l=e.sources??[],r=e.namespaces??[],n=e.languages??[],i=[];return l.length&&i.push({kind:"sources",node:xa(ll,{title:De,count:l.length,children:l.map((e,a)=>{const t=[e.namespace,e.kind,e.name].filter(Boolean),l=t.length?t.join(" / "):Ne;return xa(Ie,{label:l},`src-${a}-${l}`)})})}),r.length&&i.push({kind:"namespaces",node:xa(ll,{title:Re,count:r.length,children:r.map((e,a)=>xa(Ie,{label:e},`ns-${a}-${e}`))})}),n.length&&i.push({kind:"languages",node:xa(ll,{title:ze,count:n.length,children:n.map((e,a)=>{const t=He(e);return xa(Ie,{label:el(e),leftIcon:t},`lang-${a}-${e}`)})})}),xa(Oe,{bgTint:"900",richTitle:{title:t,subTitle:i.length>1?Ee:void 0},withCollapse:!0,collapseIsDefaultOpen:!0,children:xa(Oe,{bgTint:"800",children:xa(Jt,{children:i.map((e,a)=>Ca(za.Fragment,{children:[a>0&&xa(rl,{}),e.node]},e.kind))})})})},il=e=>e.sources.length>0?"source":e.namespaces.length>0?"namespace":e.languages.length>0?"language":"all",sl=({scopes:e,onChange:a,sourceOptions:t=[],namespaceOptions:l=[],supportedLanguages:r,titleNumber:n,dataIdPrefix:i="source-scope",slim:s})=>{const o=e??ya(),[d,u]=Ha(()=>il(o)),{sources:p,namespaces:h,languages:g}=o,m=p.length>0||h.length>0||g.length>0;Ba(()=>{m&&"all"===d&&u(il(o))},[m,d]);const v=Ea(()=>Zt.map(e=>"language"===e.value&&0===r?.length?null:{...e,disabled:"all"===e.value&&m}).filter(Boolean),[m]),f=Ea(()=>p.map(e=>{return a=e.namespace,t=e.kind,l=e.name,`${a}/${t}/${l}`;var a,t,l}),[p]),b=Ea(()=>[...h],[h]),y=Ea(()=>new Set(g),[g]),x=Xa(e=>{u(e)},[]),C=Xa(e=>{const t=e.map(e=>function(e){const a=e.split("/");return 3!==a.length?null:{namespace:a[0],kind:a[1],name:a[2]}}(e)).filter(e=>null!=e).map(e=>({namespace:e.namespace,kind:e.kind,name:e.name}));a({...o,sources:t})},[o,a]),S=Xa(e=>{a({...o,namespaces:e})},[o,a]),T=Xa(e=>{const t=o.languages,l=t.includes(e)?t.filter(a=>a!==e):[...t,e];a({...o,languages:l})},[o,a]),k=!m&&"all"===d,$=(r||Qt).map(e=>({id:e,label:Ft[e]??e.charAt(0).toUpperCase()+e.slice(1),Icon:He(e)}));return Ca(R,{richTitle:s?{title:al(n),titleSize:G.XS,titleColor:V.Secondary,tooltip:Be}:{title:al(n),subTitle:Be,subTitleWrap:!0},backgroundColor:s?"transparent":void 0,padding:s?0:void 0,children:[xa(Pe,k?{status:Le.Default,message:Me,fullWidth:!0,smallIcon:!0}:{status:Le.Info,message:Ee,fullWidth:!0,smallIcon:!0}),xa(L,{$alignItems:"flex-start",children:xa(N,{options:v,selected:d,setSelected:x})}),"source"===d&&xa(Ve,{multiple:!0,"data-id":`${i}-autocomplete-source`,options:t,value:f,onSelect:C,placeholder:Ge}),"namespace"===d&&xa(Ve,{multiple:!0,"data-id":`${i}-autocomplete-namespace`,options:l,value:b,onSelect:S,placeholder:"Search namespace"}),"language"===d&&$.length>0&&xa(jt,{children:$.map(({id:e,label:a,Icon:t})=>{const l=y.has(e);return Ca(qt,{$selected:l,onClick:()=>T(e),children:[xa(c,{name:`${i}-lang-${e}`,size:_e.S,value:l,onChange:()=>T(e)}),xa(Ut,{children:xa(t,{size:20})}),xa(H,{size:G.XS,nowrap:!0,children:a})]},e)})})]})},ol=(e,a)=>!a?.length||!!a?.find(a=>a===e),dl=({title:e="Signals",required:a,errorMessage:t,allowedSignals:l,selectedSignals:r,setSelectedSignals:n,disabled:i})=>{const[s,o]=Ha(1===r.length),d=Va(JSON.stringify(r));Ba(()=>{let e=Je(r).filter(e=>ol(e,l));e.length||(e=Ke.filter(({id:e})=>ol(e,l)).map(({id:e})=>e));const a=JSON.stringify(e);d.current!==a&&(d.current=a,n(e),o(1===e.length))},[l,r]);return Ca(L,{$gap:12,children:[xa(D,{label:e,required:a}),xa(I,{$gap:12,children:Ke.map(e=>{const a=ol(e.id,l),t=((e,a)=>!!a?.find(a=>a===e))(e.id,r);return a?xa(c,{label:e.value,disabled:i||!a||s&&t,value:t,onChange:a=>((e,a)=>{const t=e,l=a?[...r,t]:r.filter(e=>e!==t);n(l),o(1===l.length)})(e.id,a)},e.id):null})}),xa(We,{errorMessage:t})]})},cl=({minSupportedVersion:a,currentVersion:t})=>xa(e,{isOpen:!0,onClose:()=>{},relativeToParent:!0,visual:()=>xa(r,{scale:2.4,icon:()=>xa("svg",{xmlns:"http://www.w3.org/2000/svg",width:"22",height:"21",viewBox:"0 0 22 21",fill:"none",children:xa("path",{fill:"#151618",d:"M9.4844 0.730003C9.99694 -0.243259 11.4076 -0.24341 11.92 0.730003L11.9685 0.831353L14.3039 6.22012L20.153 6.77755C21.3553 6.89211 21.841 8.38683 20.9358 9.18621L16.5314 13.0731L17.8091 18.8079C18.0716 19.9868 16.8005 20.9109 15.7605 20.2969L10.7017 17.3093L5.64282 20.2969C4.60289 20.9104 3.33173 19.9866 3.59427 18.8079L4.87192 13.0741L0.468608 9.18621C-0.43662 8.38693 0.0482932 6.8924 1.25029 6.77755L7.09837 6.22012L9.43588 0.831353L9.4844 0.730003ZM8.55284 7.02876C8.35287 7.48992 7.9179 7.80589 7.41751 7.85357L2.03952 8.36571L6.09027 11.941C6.46691 12.2737 6.63296 12.7852 6.5237 13.2758L5.34956 18.5459L10.0008 15.8009L10.1669 15.7179C10.5087 15.574 10.8945 15.5741 11.2364 15.7179L11.4036 15.8009L16.0538 18.5459L14.8807 13.2758C14.7714 12.7851 14.9374 12.2737 15.3141 11.941L19.3627 8.36571L13.9858 7.85357C13.4855 7.80587 13.0505 7.4899 12.8505 7.02876L10.7017 2.07342L8.55284 7.02876Z"})})}),title:"Upgrade Required",description:`To use this feature, please upgrade to Odigos v${a} or later.\nCurrent version: ${t}.`}),ul=ja.div`
|
|
105
|
+
display: flex;
|
|
106
|
+
flex-direction: column;
|
|
107
|
+
justify-content: flex-end;
|
|
108
|
+
width: ${({$width:e})=>e};
|
|
109
|
+
gap: ${({$columnHasHeader:e})=>e?"0":"12px"};
|
|
110
|
+
`,pl=ja.div`
|
|
111
|
+
display: flex;
|
|
112
|
+
align-items: center;
|
|
113
|
+
min-height: 24px;
|
|
114
|
+
padding: 12px;
|
|
115
|
+
border-radius: 16px 16px 0 0;
|
|
116
|
+
background-color: ${({theme:e})=>e.v2.colors.silver[800]};
|
|
117
|
+
`,hl=ja.div`
|
|
118
|
+
display: flex;
|
|
119
|
+
flex-direction: column;
|
|
120
|
+
gap: ${({$gap:e})=>e}px;
|
|
121
|
+
padding: 12px 12px 0 12px;
|
|
122
|
+
width: 100%;
|
|
123
|
+
height: ${({$heightOffset:e,$columnHasHeader:a})=>`calc(100vh - 180px - ${e}px ${a?"- 48px":""})`};
|
|
124
|
+
border-radius: ${({$columnHasHeader:e,$isLeft:a,$isRight:t})=>e?a?"0 0 0 16px":t?"0 16px 0 0":"0":a?"16px 0 0 16px":t?"0 16px 16px 0":"16px"};
|
|
125
|
+
background-color: ${({theme:e})=>e.v2.colors.silver[900]};
|
|
126
|
+
overflow-y: auto;
|
|
127
|
+
overflow-x: hidden;
|
|
128
|
+
`,gl=({isLeft:e,isRight:a,heightOffset:t=0,width:l,header:r,list:n})=>Ca(ul,{$width:l,$columnHasHeader:!!r,children:[r&&xa(pl,{children:r}),xa(hl,{$gap:8,$isLeft:e,$isRight:a,$heightOffset:t,$columnHasHeader:!!r,children:n.length?n.length>1?xa(Ye,{gap:8,elements:n}):xa(Sa,{children:n[0]}):xa(Fe,{$height:"100%",children:xa(Qe,{})})})]}),ml="75vw",vl=ja.div`
|
|
129
|
+
display: flex;
|
|
130
|
+
flex-direction: column;
|
|
131
|
+
border-radius: 16px;
|
|
132
|
+
background-color: ${({theme:e})=>e.v2.colors.silver[1e3]};
|
|
133
|
+
overflow: hidden;
|
|
134
|
+
`,fl=ja.div`
|
|
135
|
+
display: flex;
|
|
136
|
+
gap: 12px;
|
|
137
|
+
padding: 16px 16px 0 16px;
|
|
138
|
+
background-color: ${({theme:e})=>e.v2.colors.silver[1e3]};
|
|
139
|
+
position: sticky;
|
|
140
|
+
top: 0;
|
|
141
|
+
`,bl=ja.div`
|
|
142
|
+
padding: 12px 12px 0 12px;
|
|
143
|
+
`,yl=ja.div`
|
|
144
|
+
display: flex;
|
|
145
|
+
gap: 12px;
|
|
146
|
+
padding: 16px;
|
|
147
|
+
`,xl=ja.div`
|
|
148
|
+
padding: 5vh 10vw;
|
|
149
|
+
border-radius: 12px;
|
|
150
|
+
background-color: ${({theme:e})=>e.v2.colors.silver[800]};
|
|
151
|
+
`,Cl=Ga(({isOpen:t,withOverlay:l,disableAnimation:r,onClose:n,onBack:i,onNext:s,nextIsSkip:o,onSave:d,disableSave:c,connectionIds:u,header:p,subHeader:h,leftColumn:g,rightColumn:m,search:v,filters:f,errorMessage:b,isFormDirty:y,hideDirtyNote:x,isFetching:C,progress:S},T)=>{const[k,$]=Ha(!1),[w,A]=Ha(!1),[O,P]=Ha(void 0);_a(T,()=>({clearErrors:()=>P(void 0)}));const M=w,L=Xa(()=>{y&&!k?$(!0):($(!1),n?.())},[y,k,n]),D=c||w||"boolean"==typeof y&&!y,I=Xa(async()=>{A(!0);const e=await d();A(!1),!1!==e&&(e?.error?P(e.error):(u?.setValue([]),n?.()))},[d,u,n]),N=!!v||!!u||!!f,R=!!h,z=(N?48:0)+(R?50:0),E=Ea(()=>C?{status:Le.Info,message:"Fetching Data..."}:w&&!S?{status:Le.Info,message:"Saving Changes..."}:O||b?{status:Le.Error,message:O||b}:"boolean"==typeof y&&y&&!x?{status:Le.Info,message:'The values don\'t reflect the current configurations of the selected clusters.\n"Save" will override the current configurations.'}:void 0,[C,w,S,O,b,y,x]),X=Ea(()=>i?{label:"Back",leftIcon:La,variant:a.Secondary,onClick:i}:{label:"Cancel",variant:a.Secondary,onClick:L,disabled:M},[i,L,M]),[H,B]=Ha(!1),V=Ea(()=>s?o?{"data-id":"wide-drawer-skip",label:"Skip",rightIcon:Da,variant:a.Secondary,onClick:()=>B(!0)}:{"data-id":"wide-drawer-next",label:"Next",rightIcon:Da,variant:a.Primary,onClick:s}:{"data-id":"wide-drawer-save",label:"Save",variant:a.Primary,onClick:I,disabled:D},[s,o,I,D]);return Ca(Ze,{width:ml,isOpen:t,disableAnimation:r,hideOverlay:!w&&!l,header:{...p,onClose:n?L:void 0,onCloseDisabled:M},footer:{note:E,actions:[X,V]},children:[w?xa(Fe,{$height:"calc(100vh - 136px)",children:xa(xl,{children:xa(ea,{titleSize:G.S,subTitleSize:G.XXXS,withGradient:!0,withSpinner:!0,...S})})}):Ca(vl,{children:[N&&Ca(fl,{children:[u&&xa(aa,{icon:Ia,title:"Selected Clusters",badge:{label:u.value.length}}),v&&xa(ta,{width:"100%",...v}),f]}),R&&xa(bl,{children:xa(aa,{icon:h.icon,title:h.title,subTitle:h.description,badge:h.badge})}),Ca(yl,{children:[xa(gl,{isLeft:!0,heightOffset:z,...g}),xa(gl,{isRight:!0,heightOffset:z,...m})]})]}),xa(Ua,{isOpen:k,onClose:()=>$(!1),onApprove:L}),xa(e,{title:"Skip setup?",description:"Without completing setup, Odigos won't be able to collect and send your telemetry data. This may interrupt your data flow and limit the platform's ability to provide value.",isOpen:H,onClose:()=>B(!1),denyButton:{label:"Go Back",variant:a.Secondary,onClick:()=>B(!1)},approveButton:{label:"Skip",variant:a.Primary,onClick:()=>{s?.(),B(!1)}}})]})});Cl.displayName=Cl.name;const Sl=ja.div`
|
|
152
|
+
padding: 0 24px;
|
|
153
|
+
border-radius: 12px;
|
|
154
|
+
background-color: ${({$codeBgColor:e})=>e||"transparent"};
|
|
155
|
+
`,Tl=({title:e="YAML",yaml:t,defaultOpen:l,fullHeight:r,bgTint:n="1000",codeBgColor:i})=>{const{clickCopy:s,isCopied:o}=la(),d=Ea(()=>t?[{id:na(),type:ra.Button,buttonProps:{variant:a.Text,size:y.S,leftIcon:o?Ta:Na,onClick:()=>s(t||""),disabled:o}}]:[],[t,o]);return xa(Oe,{bgTint:n,richTitle:{icon:Ra,title:e},actions:d,withCollapse:!0,collapseIsDefaultOpen:l,fullHeight:r,children:xa(Sl,{$codeBgColor:i,children:t?xa(ia,{code:t,language:"yaml",theme:"duotoneDark"}):xa(Fe,{children:xa(Qe,{title:"YAML not found",subTitle:"The YAML for this resource is not available"})})})})};export{Qa as A,Ua as C,Wa as D,lt as I,it as N,wt as O,ot as P,Xt as R,dl as S,cl as U,Cl as W,Tl as Y,tl as a,nt as b,_t as c,Gt as d,ct as e,Lt as f,ml as g,Ka as h,rt as i,Ja as j,st as k};
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import{jsx as e,Fragment as t,jsxs as r}from"react/jsx-runtime";import{Fragment as n,useMemo as o,useContext as a,createContext as s}from"react";import i from"styled-components";import{u,P as l,T as c,a as p,t as d,b as f,c as h}from"./ui-components-
|
|
1
|
+
import{jsx as e,Fragment as t,jsxs as r}from"react/jsx-runtime";import{Fragment as n,useMemo as o,useContext as a,createContext as s}from"react";import i from"styled-components";import{u,P as l,T as c,a as p,t as d,b as f,c as h}from"./ui-components-BDtk3K99.js";var m;!function(e){e.Default="default",e.Action="action",e.Endpoint="endpoint",e.Scope="scope",e.Duration="duration"}(m||(m={}));const v=[m.Action,m.Endpoint,m.Scope,m.Duration],g=i.span`
|
|
2
2
|
font-family: ${({theme:e,$isMono:t})=>t?e.font_family.secondary:e.font_family.primary};
|
|
3
3
|
font-size: ${({theme:e})=>e.v2.text.size.xxs}px;
|
|
4
4
|
line-height: 20px;
|
|
5
5
|
color: ${({theme:e,$variant:t})=>{const r=e.v2.colors;switch(t){case"action":return r.green[400];case"endpoint":return r.purple[300];case"scope":return r.yellow[400];case"duration":return r.orange[600];default:return r.white[500]}}};
|
|
6
6
|
`,y=i.span`
|
|
7
7
|
display: inline;
|
|
8
|
-
cursor: help;
|
|
9
8
|
text-decoration: underline dotted;
|
|
10
9
|
text-underline-offset: 3px;
|
|
11
10
|
`,x=i.div`
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{jsx as e}from"react/jsx-runtime";import{useState as t,useCallback as a,useMemo as r,useContext as n,createContext as s,useRef as o,useEffect as i}from"react";import{d as l,e as d,A as c,f as u,g as m,i as p,F as h,h as g,j as f,D as v,m as b,S as y,s as D,k,l as E,I as C,H as S,C as F,G as A,J as w,n as I,K as N,b as x,E as P}from"./ui-components-BDtk3K99.js";import{d as R}from"./use-odigos-api-ZAJiPzPh.js";import{n as T,m as O,i as M,b as L,a as U,d as j,v as K,g as G,u as V}from"./odigos-context-DGEWcwEQ.js";const _={type:"",disabled:!1,name:"",notes:"",signals:[],fields:{}},q=s(null),H=e=>{const t=d(e??{}),a=t[u.ExtractAttribute];return a?.extractions?.length&&(a.extractions=a.extractions.map(e=>{const t=e;return{...t,method:t.method||(t.regex?.trim()?"regex":"preset")}})),t},z="All row fields are required",$="At least one row is required",J=(e,t)=>!!e&&t.every(t=>{const a=e[t];return Array.isArray(a)?a.length>0:!("string"==typeof(r=a)?!r.trim():p(r));var r}),Q=({children:n})=>{const[s,o]=t(null),i=l(_),g=a(e=>{i.resetFormData(),i.handleErrorChange(void 0,void 0,{}),e?.type&&i.handleFormChange("type",e.type),o(e)},[]),f=a((e,t)=>{var a;i.resetFormData((({type:e,name:t,notes:a,disabled:r,signals:n,fields:s})=>({type:e,name:t||"",notes:a||"",disabled:!!r,signals:n??[],fields:H(s)}))(e)),i.handleErrorChange(void 0,void 0,{}),o(t??(a=e.type,c.find(e=>e.type===a)??null))},[]),v=a(()=>{if(!s)return{errorMessage:"No action type selected",preparedFormData:d(_)};const e=(e=>{const t=d(e),a=t.fields||{},r=a[u.UrlTemplatizationRulesGroups];r?.length&&(a[u.UrlTemplatizationRulesGroups]=r.map(e=>({...e,templatizationRules:(e.templatizationRules||[]).filter(e=>!!e.template?.trim())})));const n=a[u.AttributeNamesToDelete];n?.length&&(a[u.AttributeNamesToDelete]=n.filter(e=>!!e?.trim()));const s=a[u.Renames];if(s){const e=Array.isArray(s)?s.map(e=>[e?.key??"",e?.value??""]):Object.entries(s);a[u.Renames]=Object.fromEntries(e.filter(([e,t])=>!!e?.trim()&&!!t?.trim()))}const o=a[u.ExtractAttribute];return o?.extractions?.length&&(a[u.ExtractAttribute]={extractions:o.extractions.map(e=>{const t=e,a=t.method||(t.regex?.trim()?"regex":"preset"),r=t.targetAttributeName?.trim()||"";if("regex"===a)return{targetAttributeName:r,lookupKey:"",regex:t.regex?.trim()||""};const n={targetAttributeName:r,lookupKey:t.lookupKey?.trim()||"",regex:""};return t.dataFormat&&(n.dataFormat=t.dataFormat),n}).filter(e=>!!(e.targetAttributeName||e.lookupKey||e.dataFormat||e.regex))}),t.fields=a,t})(i.formData),t={};p(e.signals)&&(t.signals=h.FIELD_IS_REQUIRED),s.type&&Object.assign(t,((e,t,a)=>{const r={},n=t.fields||{},s=a.fields||{};switch(e){case m.K8sAttributes:{const e=!(n[u.CollectContainerAttributes]||n[u.CollectReplicaSetAttributes]||n[u.CollectWorkloadId]||n[u.CollectClusterId]),t=!n[u.LabelsAttributes]?.length,a=!n[u.AnnotationsAttributes]?.length;e&&t&&a&&(r[u.CollectContainerAttributes]="Enable at least one option or add a label/annotation row");const s=n[u.LabelsAttributes];s?.some(e=>!J(e,["labelKey","attributeKey","fromSources"]))&&(r[u.LabelsAttributes]=z);const o=n[u.AnnotationsAttributes];o?.some(e=>!J(e,["annotationKey","attributeKey","fromSources"]))&&(r[u.AnnotationsAttributes]=z);break}case m.AddClusterInfo:{const e=n[u.ClusterAttributes];e?.length?e.some(e=>!J(e,["attributeName","attributeStringValue"]))&&(r[u.ClusterAttributes]=z):r[u.ClusterAttributes]=$;break}case m.DeleteAttributes:{const e=s[u.AttributeNamesToDelete]||[],t=n[u.AttributeNamesToDelete]||[];t.length?e.length>t.length&&(r[u.AttributeNamesToDelete]=z):r[u.AttributeNamesToDelete]=e.length?z:$;break}case m.RenameAttributes:{const e=Object.entries(s[u.Renames]||{}),t=Object.entries(n[u.Renames]||{}),a=e.some(([e,t])=>!e?.trim()||!t?.trim());t.length?a&&(r[u.Renames]=z):r[u.Renames]=e.length?z:$;break}case m.PiiMasking:{const e=n[u.PiiCategories];e?.length||(r[u.PiiCategories]="Select at least one attribute to mask");break}case m.URLTemplatization:{const e=n[u.UrlTemplatizationRulesGroups];(!e?.length||e.some(e=>!e.templatizationRules?.length))&&(r[u.UrlTemplatizationRulesGroups]="Each rule group needs at least one non-blank template");break}case m.ExtractAttribute:{const e=n[u.ExtractAttribute]?.extractions||[],t=s[u.ExtractAttribute]?.extractions||[];if(e.length)if(e.some(e=>{if(!e.targetAttributeName?.trim())return!0;const t=!!e.regex?.trim(),a=!!e.lookupKey?.trim();return a!==!!e.dataFormat||t===a}))r[u.ExtractAttribute]="Each row needs a target attribute name and either a regex or both lookup key and data format";else{const t=new Set;e.some(e=>{const a=e.targetAttributeName?.trim()||"";return!!t.has(a)||(t.add(a),!1)})&&(r[u.ExtractAttribute]="Each new span attribute name must be unique")}else r[u.ExtractAttribute]=t.length?z:$;break}}return r})(s.type,e,i.formData)),i.handleErrorChange(void 0,void 0,t);return{errorMessage:Object.keys(t).length>0?"Invalid form values":void 0,preparedFormData:e}},[i,s]),b=r(()=>({selectedOption:s,onSelectOption:g,loadAction:f,genericForm:i,validateFormData:v}),[s,g,f,i,v]);return e(q.Provider,{value:b,children:n})},W=()=>{const e=n(q);if(!e)throw new Error("useActionFormContext must be used within an ActionFormContextProvider");return e},B={provider:"",permission:"",customCapabilities:{},authMethod:"",setupMethod:"",awsAccountId:"",credentials:{},accessToken:"",secretId:"",name:""},X=s(null),Y=({children:t,providers:n=[]})=>{const s=l(B),o=a(()=>{const e=d(s.formData);return e.provider?e.permission?{errorMessage:void 0,preparedFormData:e}:{errorMessage:"Please select a permission level",preparedFormData:e}:{errorMessage:"Please select a provider",preparedFormData:e}},[s]),i=r(()=>({providers:n,genericForm:s,validateFormData:o}),[n,s,o]);return e(X.Provider,{value:i,children:t})},Z=()=>{const e=n(X);if(!e)throw new Error("useCloudConnectorFormContext must be used within a CloudConnectorFormContextProvider");return e},ee={name:""},te=s(null),ae=({children:n,defaultExcludeName:s=""})=>{const{dataStreams:i}=g(),[c,u]=t(void 0),[m,p]=t(s),[v,b]=t(void 0),[y,D]=t(null),k=o(null),E=l(ee),C=a(e=>{E.resetFormData({name:e}),E.handleErrorChange(void 0,void 0,{}),u(void 0),p(e),b(e),D(null),k.current=null},[]),S=a(()=>{const e=d(E.formData),t=(e=>{const t={};return e.name?f(e.name)||(t.name=h.ILLEGAL_K8S_LABEL):t.name=h.FIELD_IS_REQUIRED,t})(e);E.handleErrorChange(void 0,void 0,t);const a=Object.keys(t).length>0?h.REQUIRED_FIELDS:void 0;return u(a),{errorMessage:a,preparedFormData:e}},[E]),F=a(async e=>{const{errorMessage:t,preparedFormData:a}=S();if(t)return;const r=i.find(e=>e.name===a.name&&e.name!==m);if(r)return k.current=e,void D({preparedFormData:a,existingName:r.name,editingName:v});await e(a)},[S,i,m,v]),A=a(async()=>{const e=k.current,t=y?.preparedFormData;k.current=null,D(null),e&&t&&await e(t)},[y]),w=a(()=>{k.current=null,D(null)},[]),I=r(()=>({genericForm:E,loadDataStream:C,editingName:v,validateFormData:S,requestSubmit:F,pendingMerge:y,confirmMerge:A,cancelMerge:w,errorMessage:c,excludeName:m,setExcludeName:p}),[E,C,v,S,F,y,A,w,c,m]);return e(te.Provider,{value:I,children:n})},re=()=>{const e=n(te);if(!e)throw new Error("useDataStreamFormContext must be used within a DataStreamFormContextProvider");return e},ne={type:"",name:"",currentStreamName:"",disabled:!1,exportedSignals:{logs:!1,metrics:!1,traces:!1,profiles:!1},fields:[]},se={activeForm:null,onChangeActiveForm:()=>{},loadDestination:()=>{},genericForm:void 0,validateFormData:()=>({isOk:!1,preparedFormData:d(ne)}),unsavedDestinations:[],thisUnsavedDestination:void 0,setUnsavedDestinations:()=>{},addUnsavedDestination:()=>{},updateUnsavedDestination:()=>{},deleteUnsavedDestination:()=>{}},oe=s(se),ie=e=>e.filter(e=>!!e).map(e=>{const{name:t,componentType:a,componentProperties:r,displayName:n,initialValue:s,renderCondition:o}=e,i=a===E.Dropdown,l=D(r,{});return{componentType:a,renderCondition:o,name:t,title:n,value:s,placeholder:l.placeholder||(i?"Select an option":void 0),options:i&&Array.isArray(l.values)?l.values.map(e=>({id:e,label:e})):void 0,...l}}),le=({children:n})=>{const{selectedStreamName:s}=g(),{items:o}=R().destinationsApi.useDestinations(),[c,u]=t(null),[m,f]=t(se.unsavedDestinations),E=r(()=>"number"==typeof c?.unsavedIdx?m[c.unsavedIdx]:void 0,[c,m]),C=a((e,t)=>{c&&(f(t=>[...t,{...e,option:c.option}]),u(t?e=>e?{...e,listType:v.UNSAVED,unsavedIdx:m.length}:null:null))},[c,m.length]),S=a((e,t,a)=>{c&&(f(a=>a.map((a,r)=>r===e?{...a,...t,option:c.option}:a)),u(a?e=>e?{...e,listType:v.UNSAVED}:null:null))},[c]),F=a(e=>{f(t=>t.filter((t,a)=>a!==e)),u(null)},[]),A=l({...ne,currentStreamName:s});i(()=>{if(!c)return;if(E)return void A.resetFormData({...E.formData});if(c.listType===v.EXISTS&&c.option.id){const e=o.find(e=>e.id===c.option.id);if(e)return void A.resetFormData({type:e.destinationType.type,name:e.name||e.destinationType.displayName,currentStreamName:s,disabled:!!e.disabled,exportedSignals:{logs:!!e.exportedSignals?.logs,metrics:!!e.exportedSignals?.metrics,traces:!!e.exportedSignals?.traces,profiles:!!e.exportedSignals?.profiles},fields:c.dynamicFields.map(e=>({key:e.name,value:e.value}))})}const e=b(c.option.supportedSignals);A.resetFormData({type:c.option.type,name:c.option.displayName,currentStreamName:s,disabled:!1,exportedSignals:{logs:e.includes(y.Logs),metrics:e.includes(y.Metrics),traces:e.includes(y.Traces),profiles:e.includes(y.Profiles)},fields:c.dynamicFields.map(e=>({key:e.name,value:e.value}))})},[c,E]);const w=a(e=>{A.resetFormData(),A.handleErrorChange(void 0,void 0,{}),u(e?{...e,dynamicFields:e.option?.fields?ie(e.option.fields):[]}:null)},[]),I=a((e,t)=>{let a;for(const r of t){const t=r.items.find(t=>t.type===e.destinationType.type);if(t){a=t;break}}const r=D(e.fields,{}),n={id:e.id,type:e.destinationType.type,displayName:e.name||e.destinationType.displayName,selected:!0,testConnectionSupported:a?.testConnectionSupported??!1,supportedSignals:e.destinationType.supportedSignals,fields:a?a.fields.map(e=>({...e,initialValue:r[e.name]??e.initialValue})):[]},s=ie(n.fields);u({listType:v.EXISTS,option:n,dynamicFields:s})},[]),N=a(()=>{const e=d(A.formData),t={};c?.dynamicFields.forEach(({name:a,required:r})=>{if(r){const r=e.fields.find(e=>e.key===a)?.value;p(r)&&(t[a]=h.FIELD_IS_REQUIRED)}});return k(e.exportedSignals).length||(t.exportedSignals=h.FIELD_IS_REQUIRED),A.handleErrorChange(void 0,void 0,t),{errorMessage:0===Object.keys(t).length?void 0:"Invalid form values",preparedFormData:e}},[A,c]);return e(oe.Provider,{value:{activeForm:c,onChangeActiveForm:w,loadDestination:I,genericForm:A,validateFormData:N,unsavedDestinations:m,thisUnsavedDestination:E,setUnsavedDestinations:f,addUnsavedDestination:C,updateUnsavedDestination:S,deleteUnsavedDestination:F},children:n})},de=()=>n(oe),ce={disabled:!1,ruleName:"",notes:"",sourceScopes:O(),workloads:null,instrumentationLibraries:null,payloadCollection:null,codeAttributes:null,headersCollection:null,customInstrumentations:null},ue=s(null),me=({children:n,sourceOptions:s=[],namespaceOptions:o=[]})=>{const[i,c]=t(null),u=l(ce),m=a(e=>{u.resetFormData(),u.handleErrorChange(void 0,void 0,{}),c(e)},[]),p=a((e,t)=>{var a;u.resetFormData((({ruleName:e,notes:t,disabled:a,sourceScopes:r,instrumentationLibraries:n,payloadCollection:s,codeAttributes:o,headersCollection:i,customInstrumentations:l})=>({ruleName:e||"",notes:t||"",disabled:!!a,sourceScopes:T(r),workloads:null,instrumentationLibraries:n??null,payloadCollection:s??null,codeAttributes:o??null,headersCollection:i??null,customInstrumentations:l??null}))(e)),u.handleErrorChange(void 0,void 0,{}),c(t??(a=e.type,C.find(e=>e.type===a)??null))},[]),h=a(()=>{if(!i)return{errorMessage:"No rule type selected",preparedFormData:d(ce)};const e=(e=>{const t=d(e),a={...t,sourceScopes:M(t.sourceScopes)?null:t.sourceScopes,workloads:null};return a.headersCollection?.[S.HeaderKeys]?.length&&(a.headersCollection[S.HeaderKeys]=a.headersCollection[S.HeaderKeys].map(e=>e.trim()).filter(e=>e)),a.customInstrumentations?.[F.Golang]?.length&&(a.customInstrumentations[F.Golang]=a.customInstrumentations[F.Golang].map(e=>new A(e.packageName,e.functionName,e.receiverName,e.receiverMethodName)).filter(e=>{return t=e,!!(t.packageName?.trim()||t.functionName?.trim()||t.receiverName?.trim()||t.receiverMethodName?.trim());var t})),a.customInstrumentations?.[F.Java]?.length&&(a.customInstrumentations[F.Java]=a.customInstrumentations[F.Java].map(e=>new w(e.className,e.methodName)).filter(e=>{return t=e,!(!t.className?.trim()&&!t.methodName?.trim());var t})),a})(u.formData),t=((e,t)=>{const a={};switch(e){case I.CodeAttributes:Object.values(t.codeAttributes||{}).some(e=>null!=e)||(a.codeAttributes="Code attributes are required");break;case I.PayloadCollection:Object.values(t.payloadCollection||{}).some(e=>null!=e)||(a.payloadCollection="Payload collection are required");break;case I.HeadersCollection:t.headersCollection?.[S.HeaderKeys]?.length||(a.headersCollection="Header keys are required");break;case I.CustomInstrumentation:{const e=t.customInstrumentations?.[F.Golang]||[],r=t.customInstrumentations?.[F.Java]||[];if(!e.length&&!r.length){a.customInstrumentations="Custom instrumentation are required";break}const n=e.findIndex(e=>!new A(e.packageName,e.functionName,e.receiverName,e.receiverMethodName).Verify());if(-1!==n){a.customInstrumentations=`Golang probe #${n+1} is invalid: provide a package name plus either a function name OR both a receiver name and receiver method name`;break}const s=r.findIndex(e=>!new w(e.className,e.methodName).Verify());if(-1!==s){a.customInstrumentations=`Java probe #${s+1} is invalid: both class name and method name are required`;break}break}}return a})(i.type,e);return u.handleErrorChange(void 0,void 0,t),{errorMessage:Object.keys(t).length>0?"Invalid form values":void 0,preparedFormData:e}},[u,i]),g=r(()=>({selectedOption:i,onSelectOption:m,loadRule:p,genericForm:u,validateFormData:h,sourceOptions:s,namespaceOptions:o}),[i,m,p,u,h,s,o]);return e(ue.Provider,{value:g,children:n})},pe=()=>{const e=n(ue);if(!e)throw new Error("useRuleFormContext must be used within a RuleFormContextProvider");return e};var he;!function(e){e.Create="create",e.View="view",e.EditAutoNoisy="edit-auto-noisy",e.EditAutoCostReduction="edit-auto-cost-reduction",e.EditAutoHighlyRelevant="edit-auto-highly-relevant"}(he||(he={}));const ge=s(null),fe=["50","25","10","1"];function ve(e){const t=String(e);return fe.includes(t)?t:"custom"}const be=({category:n,sourceOptions:s=[],namespaceOptions:o=[],children:d})=>{const{formData:c,handleFormChange:u,resetFormData:m}=l(G(n)),[p,h]=t(null);i(()=>{m(G(n)),h(null)},[n]);const g=a(e=>{h(null),u(void 0,void 0,{...c,...e})},[c,u]),f=a(()=>{m(G(n)),h(null)},[n,m]),v=r(()=>({formType:he.Create,category:n,formData:c,handleChange:g,resetForm:f,duplicateWarning:p,setDuplicateWarning:h,sourceOptions:s,namespaceOptions:o}),[n,c,g,f,p,s,o]);return e(ge.Provider,{value:v,children:d})},ye=({data:n,defaultEditMode:s,sourceOptions:d=[],namespaceOptions:c=[],children:u})=>{const[m,p]=t(!1),{formData:h,handleFormChange:g,resetFormData:f}=l(void 0),v=o(null),[b,y]=t(null);i(()=>{n!==v.current&&(v.current=n,n&&s?(f(K(n)),y(null),p(!0)):(p(!1),y(null)))},[n,s]);const D=a(e=>{y(null),g(void 0,void 0,{...h,...e})},[h,g]),k=a(()=>{n&&(f(K(n)),y(null),p(!0))},[n,f]),E=a(()=>{p(!1),y(null)},[]),C=r(()=>({formType:he.View,data:n,isEditing:m,formData:h,handleChange:D,handleEdit:k,handleCancelEdit:E,duplicateWarning:b,setDuplicateWarning:y,sourceOptions:d,namespaceOptions:c}),[n,m,h,D,k,E,b,d,c]);return e(ge.Provider,{value:C,children:u})};function De(e){const[a,n]=t(()=>0===e?"all":"sample"),[s,o]=t(()=>ve(e)),[l,d]=t(()=>"custom"===ve(e)?String(e):"");i(()=>{n(0===e?"all":"sample");const t=ve(e);o(t),d("custom"===t?String(e):"")},[e]);const c=r(()=>"all"===a?0:"custom"===s?Number(l)||0:Number(s),[a,s,l]);return{percentageMode:a,setPercentageMode:n,percentagePreset:s,setPercentagePreset:o,customPercentage:l,setCustomPercentage:d,resolvedPercentage:c}}const ke=({enabled:a,keepPercentage:n,children:s})=>{const[o,l]=t(a),d=De(n);i(()=>{l(a)},[a]);const c=r(()=>j({enabled:o,keepPercentage:d.resolvedPercentage}),[o,d.resolvedPercentage]),u=r(()=>({formType:he.EditAutoNoisy,localEnabled:o,setLocalEnabled:l,...d,summary:c}),[o,d,c]);return e(ge.Provider,{value:u,children:s})},Ee=({enabled:a,dropPercentage:n,children:s})=>{const[o,l]=t(a),d=De(n);i(()=>{l(a)},[a]);const c=r(()=>U(o?{disabled:!1,percentageAtMost:d.resolvedPercentage}:null),[o,d.resolvedPercentage]),u=r(()=>({formType:he.EditAutoCostReduction,localEnabled:o,setLocalEnabled:l,...d,summary:c}),[o,d,c]);return e(ge.Provider,{value:u,children:s})},Ce=({enabled:a,children:n})=>{const[s,o]=t(a);i(()=>{o(a)},[a]);const l=r(()=>L(s?{disabled:!1}:null),[s]),d=r(()=>({formType:he.EditAutoHighlyRelevant,localEnabled:s,setLocalEnabled:o,summary:l}),[s,l]);return e(ge.Provider,{value:d,children:n})},Se=t=>{switch(t.formType){case he.Create:return e(be,{...t});case he.View:return e(ye,{...t});case he.EditAutoNoisy:return e(ke,{...t});case he.EditAutoCostReduction:return e(Ee,{...t});case he.EditAutoHighlyRelevant:return e(Ce,{...t})}};function Fe(e){const t=n(ge);if(!t)throw new Error("useSamplingRulesFormContext must be used within a SamplingRulesFormProvider");if(e&&t.formType!==e)throw new Error(`Expected formType "${e}" but found "${t.formType}"`);return t}const Ae={otelServiceName:"",currentStreamName:""},we=s(null),Ie=({children:n})=>{const[s,o]=t(void 0),i=l(Ae),c=a(e=>{i.resetFormData((({serviceName:e,id:t})=>({otelServiceName:e||t.name||"",currentStreamName:""}))(e)),i.handleErrorChange(void 0,void 0,{}),o(void 0)},[]),u=a(()=>{const e=d(i.formData);return i.handleErrorChange(void 0,void 0,{}),o(void 0),{errorMessage:void 0,preparedFormData:e}},[i]),m=r(()=>({loadSource:c,genericForm:i,validateFormData:u,errorMessage:s}),[c,i,u,s]);return e(we.Provider,{value:m,children:n})},Ne=()=>{const e=n(we);if(!e)throw new Error("useSourceEditFormContext must be used within a SourceEditFormContextProvider");return e},xe=new Set([N.StaticPod]),Pe=e=>{const t=e.workloads.filter(({selected:e})=>e).length,a=e.workloads.length;return{selectedCount:t,isAllSourced:t>0&&t===a,isSomeSourced:t>0&&t<a,isFutureApps:e.selected||!1}},Re=(e,t,a)=>{if(t&&!e.name.toLowerCase().includes(t.toLowerCase()))return!1;if(a.showOnlySelected){const{isAllSourced:t,isSomeSourced:a,isFutureApps:r}=Pe(e);return t||a||r}return!0},Te=(e,t,a)=>!(t&&!e.name.toLowerCase().includes(t.toLowerCase()))&&(!a.showOnlySelected||e.selected),Oe=s({snapshots:null,setSnapshots:()=>{},isFetching:!1,setIsFetching:()=>{},formData:[],handleSourceChange:()=>{},handleSelectAll:()=>{},formDiff:{},isFormDirty:!1}),Me=(e,t)=>e.name===t.name&&e.kind===t.kind&&(e.region??"")===(t.region??""),Le=(e,t,a)=>{const r=[];return t.workloads.forEach(n=>{const s=e?.workloads.find(e=>Me(e,n));n.selected!==s?.selected&&r.push({namespace:t.name,name:n.name,kind:n.kind,...n.region?{region:n.region}:{},selected:n.selected||!1,currentStreamName:a})}),r},Ue=({children:n,selectedConnectionIds:s,initialInputs:o})=>{const{tier:l}=V(),c=l===x.Onprem,{capabilities:u}=R(),m=u.canInstrumentNamespaces,{selectedStreamName:p}=g(),[h,f]=t(!1),[v,b]=t(null),[y,D]=t([]);i(()=>{v&&D(e=>{const t=((e,t)=>d(((e,t)=>e.clusters.filter(({clusterId:e})=>!t||t.includes(e)))(e,t)))(v,s);return t.map(t=>{const a=e?.find(e=>e.clusterId===t.clusterId),r=((e,t)=>{if(!t)return e;const a=new Map(t.namespaces.map(e=>[e.name,e]));return{...e,namespaces:e.namespaces.map(e=>{const t=a.get(e.name);if(!t)return e;const r=new Map(t.workloads.map(e=>[`${e.kind}/${e.name}`,e]));return{...e,selected:t.selected,workloads:e.workloads.map(e=>{const t=r.get(`${e.kind}/${e.name}`);return t?{...e,selected:t.selected}:e})}})}})(t,a);if(o?.[t.clusterId]){const e=o[t.clusterId],a=d(r);return e.forEach(e=>{const t=a.namespaces.find(t=>t.name===e.namespace);if(t)if(e.name&&e.kind){const a=t.workloads.find(t=>t.name===e.name&&t.kind===e.kind);a&&(a.selected=e.selected)}else t.selected=e.selected,e.selected&&t.workloads.forEach(e=>{xe.has(e.kind)&&!c||(e.selected=!0)})}),a}return r})})},[v,s,o]);const{formDiff:k,isFormDirty:E}=r(()=>{const e=((e,t,a,r)=>{const n={};return e.forEach(e=>{e.namespaces.forEach(s=>{const o=t.find(t=>t.clusterId===e.clusterId)?.namespaces.find(e=>e.name===s.name);if(!r){const t=Le(o,s,a);return void(t.length>0&&(n[e.clusterId]||(n[e.clusterId]=[]),n[e.clusterId].push(...t)))}const i=s.selected||!1;if(i!==o?.selected)n[e.clusterId]||(n[e.clusterId]=[]),n[e.clusterId].push({namespace:s.name,selected:i,currentStreamName:a}),i?n[e.clusterId]=n[e.clusterId].filter(e=>e.namespace!==s.name||e.namespace===s.name&&(!e.name||!e.kind)):s.workloads.forEach(t=>{t.selected&&n[e.clusterId].push({namespace:s.name,name:t.name,kind:t.kind,...t.region?{region:t.region}:{},selected:!0,currentStreamName:a})});else{const t=Le(o,s,a);t.length>0&&(n[e.clusterId]||(n[e.clusterId]=[]),n[e.clusterId].push(...t))}})}),n})(y,v?.clusters||[],p,m);return{formDiff:e,isFormDirty:Object.keys(e).length>0}},[y,v,p,m]),C=a(e=>!c&&xe.has(e),[c]),S=a(({clusterId:e,workloadId:t,selected:a,auto:r})=>{D(n=>{const s=d(n),o=s.findIndex(t=>t.clusterId===e);if(-1===o)return s;const i=s[o].namespaces.findIndex(e=>e.name===t.namespace);if(-1===i)return s;if(t.kind&&t.name){const e=s[o].namespaces[i].workloads.findIndex(e=>Me(e,{name:t.name,kind:t.kind,region:t.region}));if(-1===e)return s;const r="boolean"==typeof a?a:!s[o].namespaces[i].workloads[e].selected;if(s[o].namespaces[i].workloads[e].selected=r,m)if(r){s[o].namespaces[i].workloads.filter(e=>!C(e.kind)).every(e=>e.selected)&&(s[o].namespaces[i].selected=!0)}else s[o].namespaces[i].selected=!1}else if(m){const e="boolean"==typeof r?r:!s[o].namespaces[i].selected;s[o].namespaces[i].selected=e,e?s[o].namespaces[i].workloads.forEach(e=>{C(e.kind)||(e.selected=!0)}):"boolean"!=typeof a||a||s[o].namespaces[i].workloads.forEach(e=>{e.selected=!1})}else{const e="boolean"==typeof a?a:"boolean"!=typeof r||r;s[o].namespaces[i].workloads.forEach(t=>{e&&C(t.kind)||(t.selected=e)})}return s})},[C,m]),F=a(({clusterId:e,namespaceName:t,boolean:a,searchText:r="",searchBy:n="",filters:s})=>{D(o=>{const i=d(o),l=n===P.Namespace?r:"",c=n===P.Source?r:"",u=!!l||!!c||!!s?.showOnlySelected;return i.forEach((r,n)=>{e&&r.clusterId!==e||r.namespaces.forEach(({name:e,workloads:r},o)=>{if(!t||e===t)if(u)if(t){if(r.forEach((e,t)=>{a&&C(e.kind)||Te(e,c,s||{showOnlySelected:!1})&&(i[n].namespaces[o].workloads[t].selected=a)}),m){const e=i[n].namespaces[o].workloads.filter(e=>!C(e.kind)).every(e=>e.selected);i[n].namespaces[o].selected=e}}else{if(!Re(i[n].namespaces[o],l,s||{showOnlySelected:!1}))return;m&&(i[n].namespaces[o].selected=a),r.forEach((e,t)=>{a&&C(e.kind)||(i[n].namespaces[o].workloads[t].selected=a)})}else m&&(i[n].namespaces[o].selected=a),r.forEach((e,t)=>{a&&C(e.kind)||(i[n].namespaces[o].workloads[t].selected=a)})})}),i})},[C,m]);return e(Oe.Provider,{value:{snapshots:v,setSnapshots:b,isFetching:h,setIsFetching:f,formData:y,handleSourceChange:S,handleSelectAll:F,formDiff:k,isFormDirty:E},children:n})},je=()=>n(Oe);export{Q as A,Y as C,ae as D,xe as E,me as R,he as S,le as a,Se as b,Ie as c,Ue as d,Z as e,re as f,de as g,pe as h,Fe as i,Ne as j,je as k,Te as l,Re as m,Pe as n,W as u};
|