@odigos/ui-kit 0.0.299 → 0.0.300

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 (52) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/lib/chunks/{helpers-lW-r7stw.js → helpers-BwRnPdlh.js} +1 -1
  3. package/lib/chunks/index-nYW7_cdJ.js +364 -0
  4. package/lib/chunks/source-instrument-form-context-Rz3TBYRM.js +5 -0
  5. package/lib/chunks/ui-components-DObOt6F8.js +2273 -0
  6. package/lib/components/button-tab/index.d.ts +2 -1
  7. package/lib/components/code/index.d.ts +2 -2
  8. package/lib/components/drop-data/index.d.ts +7 -7
  9. package/lib/components/index.d.ts +2 -0
  10. package/lib/components/morph-icon/index.d.ts +74 -0
  11. package/lib/components/morph-icon/path-morph.d.ts +16 -0
  12. package/lib/components/morph-icon/registry.d.ts +34 -0
  13. package/lib/components/table/types.d.ts +2 -0
  14. package/lib/components/terminal/context.d.ts +17 -0
  15. package/lib/components/terminal/index.d.ts +10 -0
  16. package/lib/components.js +1 -1
  17. package/lib/constants.js +1 -1
  18. package/lib/containers/_drawers/create-cloud-connector-drawer/index.d.ts +0 -4
  19. package/lib/containers/_drawers/create-cloud-connector-drawer/is-done-modal/index.d.ts +7 -0
  20. package/lib/containers/_modals/create-k8s-connection-modal/index.d.ts +5 -0
  21. package/lib/containers/central-connections/helpers.d.ts +3 -6
  22. package/lib/containers/central-connections/index.d.ts +1 -8
  23. package/lib/containers/insights/findings/drawer/anomaly/anomaly-trace-compare/helpers.d.ts +6 -4
  24. package/lib/containers/insights/findings/drawer/anomaly/anomaly-trace-compare/index.d.ts +2 -0
  25. package/lib/containers.js +539 -536
  26. package/lib/contexts/cloud-connector-form-context.d.ts +0 -1
  27. package/lib/contexts/odigos-api/hooks/use-connections-api.d.ts +58 -0
  28. package/lib/contexts/odigos-api/index.d.ts +2 -1
  29. package/lib/contexts/odigos-api/types.d.ts +20 -1
  30. package/lib/contexts/odigos-api/use-odigos-api.d.ts +2 -0
  31. package/lib/contexts.js +1 -1
  32. package/lib/functions.js +1 -1
  33. package/lib/hooks.js +1 -1
  34. package/lib/icons.js +1 -1
  35. package/lib/snippets/index.d.ts +1 -1
  36. package/lib/snippets/intro-modal/index.d.ts +10 -0
  37. package/lib/snippets.js +1 -1
  38. package/lib/store.js +1 -1
  39. package/lib/theme.js +1 -1
  40. package/lib/types/common/index.d.ts +2 -1
  41. package/lib/types.js +1 -1
  42. package/lib/visuals/index.d.ts +2 -0
  43. package/lib/visuals/visual-connection-morph/index.d.ts +12 -0
  44. package/lib/visuals/visual-odigos-logo/index.d.ts +1 -1
  45. package/lib/visuals/visual-terminal/index.d.ts +5 -0
  46. package/lib/visuals.js +1 -1
  47. package/package.json +3 -1
  48. package/lib/chunks/index-DH7pdkVR.js +0 -358
  49. package/lib/chunks/source-instrument-form-context-D3jXhnvh.js +0 -5
  50. package/lib/chunks/ui-components-BnY4B3Vq.js +0 -2163
  51. package/lib/snippets/connector-created-modal/index.d.ts +0 -7
  52. /package/lib/{containers/_modals/onboarding-done → snippets/intro-modal}/background.d.ts +0 -0
@@ -0,0 +1,5 @@
1
+ import{jsx as e,jsxs as t}from"react/jsx-runtime";import{useMemo as a,useContext as r,createContext as n,useCallback as o,useState as s,useEffect as i,useRef as l}from"react";import{t as c,bd as d,be as u,b3 as m,S,bf as E,bg as p,bh as T,P as I,bi as f,bj as y,bk as _,bl as h,bm as N,bn as g,bo as v,bp as A,bq as R,br as O,bs as C,bt as D,bu as G,bv as b,bw as L,bx as w,by as P,bz as U,b1 as F,bA as k,bB as M,o as H,bC as x,bD as $,bE as K,bF as V,bG as Y,bH as B,y as W,bI as j,h as q,M as z,bJ as Q,T as X,bK as J,bL as Z,bM as ee,bN as te,bO as ae,bP as re,bQ as ne,bR as oe,bS as se,bT as ie,bU as le,bV as ce,bW as de,bX as ue,bY as me,bZ as Se,b_ as Ee,b$ as pe,c0 as Te,c1 as Ie,c2 as fe,ah as ye,ad as _e,af as he,ae as Ne,ag as ge,ac as ve,c3 as Ae,b as Re}from"./ui-components-DObOt6F8.js";import{i as Oe,n as Ce,m as De,l as Ge,o as be,p as Le,v as we,q as Pe,u as Ue}from"./helpers-BwRnPdlh.js";import{ApolloProvider as Fe,useLazyQuery as ke,useApolloClient as Me,useQuery as He}from"@apollo/client/react";import{ErrorLink as xe}from"@apollo/client/link/error";import{SetContextLink as $e}from"@apollo/client/link/context";import{getMainDefinition as Ke}from"@apollo/client/utilities";import{CombinedGraphQLErrors as Ve,ServerError as Ye}from"@apollo/client/errors";import{HttpLink as Be,ApolloLink as We,ApolloClient as je,InMemoryCache as qe,gql as ze}from"@apollo/client";const Qe=e=>{if(!e)return!1;const t=e.toLowerCase();return t.includes("authentication required")||t.includes("authentication expired")||t.includes("http 401")},Xe=n(null),Je=()=>{const e=r(Xe);if(!e)throw new Error("[ui-kit] useOdigosApi() / useXxxApi() called outside of <OdigosApiProvider>. Make sure the host app mounts the provider at its layout level.");return e},Ze=({apolloConfig:t,operations:r,context:n,children:o})=>{const s=a(()=>(e=>{const t=new Be({uri:e.httpUrl,credentials:e.credentials??"same-origin"}),a=new xe(({error:t})=>{Ve.is(t)?t.errors.some(e=>Qe(e.message))&&e.onAuthError?.():(Ye.is(t)&&401===t.statusCode||Qe(t.message))&&e.onAuthError?.()}),r=new $e(async t=>{const a={...t.headers};if(e.authHeader){const t=await e.authHeader();Object.assign(a,t)}return e.csrfHeader&&Object.assign(a,e.csrfHeader()),{headers:a}}),n=[];e.additionalLinks?.length&&n.push(...e.additionalLinks),n.push(r,a,t);let o=We.from(n);e.wsLink&&(o=We.split(({query:e})=>{const t=Ke(e);return"OperationDefinition"===t.kind&&"subscription"===t.operation},e.wsLink,o));const s=e.defaultFetchPolicies;return new je({link:o,cache:new qe({typePolicies:e.cacheTypePolicies}),defaultOptions:{watchQuery:{fetchPolicy:s?.watchQuery??"cache-and-network"},query:{fetchPolicy:s?.query??"cache-first"},mutate:{fetchPolicy:s?.mutate??"network-only"}}})})(t),[t.httpUrl,t.wsLink,t.credentials,t.clientKey]),i=a(()=>({operations:r,context:n,apolloConfig:t}),[r,n,t]);return e(Fe,{client:s,children:e(Xe.Provider,{value:i,children:o})})},et=Xe,tt=e=>e.map(e=>`${e.id}:${e.odigosVersion}:${e.type}`).join(","),at=(e,t,a)=>{const r=t.length?t.map(e=>e.id):a??[],n={...e,connectionIds:r};if(!t.length||c(e.version)>0)return n;const o=t[0];return{...n,version:o.odigosVersion||e.version,platformType:o.type??e.platformType}},rt=({connections:t,connectionIds:r,children:n})=>{const o=Je(),s=a(()=>({operations:o.operations,context:at(o.context,t,r),apolloConfig:o.apolloConfig}),[o.operations,o.context,o.apolloConfig,tt(t),r?.join(",")]);return e(et.Provider,{value:s,children:n})},nt=(e,t)=>{if(e)return"string"==typeof e?e:E(e,t)},ot=e=>{const{addNotification:t}=d(),a=(a,r,n,o,s)=>t({type:a,title:r,message:n,crdType:e,target:nt(o,e),hideFromHistory:s});return{notify:a,notifyError:(e,t,r)=>a(S.Error,e,t,r),notifySuccess:(e,t,r)=>a(S.Success,e,t,r),notifyPending:(e,t)=>a(S.Default,"Pending",e,t,!0),notifyReadonly:()=>{t({type:S.Warning,title:m.READONLY,message:u.READONLY_WARNING,hideFromHistory:!0})}}},st=e=>{e({type:S.Warning,title:m.READONLY,message:u.READONLY_WARNING,hideFromHistory:!0})},it=e=>({error:e,results:[],allSucceeded:!1,anySucceeded:!1,successCount:0,failureCount:0}),lt=(e,t)=>{if(e)return"function"==typeof e?e(t):e},ct=e=>{if(!e)return"Unknown error";if(e instanceof Error)return e.cause instanceof Error?e.cause.message:e.message;if("object"==typeof e){const t=e;return t.cause?.message||t.message||String(e)}return String(e)},dt=(e,t)=>e.client??t,ut=async(e,t,a,r,n)=>{if(!t)return{error:"Query operation not configured"};if(t.canRun&&!t.canRun(r))return{data:void 0};if(t.run)try{return await t.run(dt(t,e),a,r)}catch(e){return{error:ct(e)}}const o=lt(t.document,r);if(!o)return{error:"Query operation not supported in this context"};const s=t.transformVariables?t.transformVariables(a,r):a,i=dt(t,e);try{const e=await i.query({query:o,variables:s,fetchPolicy:n??"network-only"});return{data:t.transformResult?t.transformResult(e.data,r):e.data,error:e.error?ct(e.error):void 0}}catch(e){return{error:ct(e)}}},mt=async(e,t,a,r)=>{if(!t)return{error:"Mutation operation not configured"};if(t.canRun&&!t.canRun(r))return{error:"Mutation operation not supported in this context"};if(t.run)try{return await t.run(dt(t,e),a,r)}catch(e){return{error:ct(e)}}const n=lt(t.document,r);if(!n)return{error:"Mutation operation not supported in this context"};const o=t.transformVariables?t.transformVariables(a,r):a,s=dt(t,e);try{const e=await s.mutate({mutation:n,variables:o});return{data:t.transformResult?t.transformResult(e.data,r):e.data,error:void 0}}catch(e){return{error:ct(e)}}},St=async(e,t,a,r,n)=>{if(!t)return it("Multi fetch operation not configured");if(!a.length)return it("No proxy ids supplied for multi fetch");const o=dt(t,e);if(t.transformVariablesMulti&&(t.documentMulti||t.document)){const e=t.transformVariablesMulti(a,r,n),s=[];for(const a of e)try{const e=await o.query({query:a.document,variables:a.variables,fetchPolicy:"network-only"});t.transformMultiResult?t.transformMultiResult(e.data,n).forEach(e=>s.push(e)):a.proxyIDs.forEach(t=>{s.push({proxyID:t,success:!e.error,data:e.data,error:e.error?.message})})}catch(e){const t=ct(e);a.proxyIDs.forEach(e=>s.push({proxyID:e,success:!1,error:t}))}const i=s.filter(e=>e.success).length,l=s.length-i,c=Array.from(new Set(s.filter(e=>!!e.error).map(e=>e.error)));return{results:s,allSucceeded:0===l,anySucceeded:i>0,successCount:i,failureCount:l,error:c.length?c.join(", "):void 0}}const s=await Promise.all(a.map(async a=>{const o={...n,proxyID:a},s=await ut(e,t,r,o);return{proxyID:a,success:!s.error,data:s.data,error:s.error}})),i=s.filter(e=>e.success).length,l=s.length-i,c=Array.from(new Set(s.filter(e=>!!e.error).map(e=>e.error)));return{results:s,allSucceeded:0===l,anySucceeded:i>0,successCount:i,failureCount:l,error:c.length?c.join(", "):void 0}},Et=ze`
2
+ query OdigosApiNoop {
3
+ __typename
4
+ }
5
+ `,pt=(e,t)=>{if(e)return"function"==typeof e?e(t):e},Tt=(e,t)=>e[t],It=(e,t,a)=>{if(void 0!==t)return e?.transformResult?e.transformResult(t,a):t},ft=(e,t,a)=>{if(!e)return;const r=e.transformVariables;return r?r(t,a):t},yt=(e,t,r)=>{const{operations:n,context:s}=Je(),l=Tt(n,e),c=a(()=>pt(l?.document,s),[l,s]),d=a(()=>ft(l,t,s),[l,t,s]),u=!l||!c,m=!!l?.canRun&&!l.canRun(s),S=r?.skip||u||m,E=He(c??Et,{variables:d,skip:S,pollInterval:r?.pollInterval,fetchPolicy:r?.fetchPolicy??"cache-and-network",notifyOnNetworkStatusChange:r?.notifyOnNetworkStatusChange,client:l?.client}),p=a(()=>{if(!S)return It(l,E.data,s)},[l,s,E.data,S]);i(()=>{S||void 0===p||r?.onCompleted?.(p)},[S,p,r?.onCompleted]),i(()=>{E.error&&r?.onError?.(E.error)},[E.error,r?.onError]);const T=o(async()=>{if(S)return{data:void 0};const e=await E.refetch();return{data:It(l,e.data,s)}},[l,s,E,S]);return{data:p,loading:!S&&E.loading,error:E.error,refetch:T,unsupported:u}},_t=(e,t)=>{const{operations:r,context:n}=Je(),s=Tt(r,e),i=a(()=>pt(s?.document,n),[s,n]),l=!s||!i,[c,d]=ke(i??Et,{fetchPolicy:t?.fetchPolicy??"network-only",notifyOnNetworkStatusChange:t?.notifyOnNetworkStatusChange,client:s?.client});return{execute:o(async e=>{if(l)return{error:void 0};if(s?.canRun&&!s.canRun(n))return{data:void 0};const t=ft(s,e,n),a=await c({variables:t});return a.error?{error:a.error}:{data:It(s,a.data,n)}},[s,n,c,l]),data:a(()=>It(s,d.data,n),[s,n,d.data]),loading:d.loading,error:d.error,called:d.called,unsupported:l}},ht=(e,t)=>{const{operations:r,context:n}=Je(),i=Me(),l=Tt(r,e),c=a(()=>pt(l?.document,n),[l,n]),d=!l||!c,[u,m]=s({loading:!1,called:!1}),S=o(()=>m({loading:!1,called:!1}),[]);return[o(async e=>{if(d||!c)return{error:void 0};if(l?.canRun&&!l.canRun(n))return{data:void 0};const a=ft(l,e,n),r=l?.client??i;m(e=>({...e,loading:!0,called:!0}));try{const e=await r.mutate({mutation:c,variables:a}),o=It(l,e.data,n);if(m({data:o,loading:!1,error:void 0,called:!0}),t?.refetchQueries){const e=r.refetchQueries({include:t.refetchQueries});t?.awaitRefetchQueries&&await e}return void 0!==o&&t?.onCompleted?.(o),{data:o}}catch(e){const a=e;return m({data:void 0,loading:!1,error:a,called:!0}),t?.onError?.(a),{error:a}}},[l,n,i,c,d,t]),{data:u.data,loading:u.loading,error:u.error,called:u.called,unsupported:d,reset:S}]},Nt=[],gt=(e,t,a,r)=>{let n=!0;const o={sources:[]};for(const[s,i]of Object.entries(e)){if(!i.length)continue;n=!1;const e=i.map(({id:e,selected:t,currentStreamName:r})=>({namespace:e.namespace,name:e.name,kind:e.kind,selected:void 0!==t&&t,currentStreamName:r||a}));let l=0,c=0;for(const a of e){const e=t.find(e=>e.id.namespace===s&&e.id.name===a.name&&e.id.kind===a.kind),r=e?.dataStreamNames||[];a.selected&&!e?l++:!a.selected&&e&&r.length<=1&&c++}r(l,c),o.sources.push(...e)}return{payload:o,isEmpty:n}},vt=(e,t)=>{let a=!0;const r={namespaces:[]};for(const[n,{selected:o,currentStreamName:s}]of Object.entries(e))"boolean"==typeof o&&(a=!1,r.namespaces.push({namespace:n,selected:o,currentStreamName:s||t}));return{payload:r,isEmpty:a}},At={filter:{markedForInstrumentation:!0}},Rt=[],Ot=e=>{const t=e.markedForInstrumentation?.markedForInstrumentation;return"boolean"==typeof t?e:{...e,markedForInstrumentation:{...e.markedForInstrumentation??{markedForInstrumentation:!0},markedForInstrumentation:!0}}},Ct=e=>{let t=!1;const a=e.map(e=>{const a=Ot(e);return a!==e&&(t=!0),a});return t?a:e},Dt=[],Gt=[],bt=[],Lt=(e,t)=>{const a=Me(),{notifyError:r,notifySuccess:n,notifyReadonly:o}=ot(A.Finding),s=async()=>{e.GET_INSIGHTS_FINDINGS&&await ut(a,e.GET_INSIGHTS_FINDINGS,void 0,t)},i=async()=>{e.GET_INSIGHTS_ANOMALIES&&await ut(a,e.GET_INSIGHTS_ANOMALIES,void 0,t)},l=async()=>{e.GET_INSIGHTS_TRANSACTIONS&&await ut(a,e.GET_INSIGHTS_TRANSACTIONS,void 0,t)},c=async()=>{if(!e.GET_INSIGHTS_POLICIES)return;const r="function"==typeof e.GET_INSIGHTS_POLICIES.document?e.GET_INSIGHTS_POLICIES.document(t):e.GET_INSIGHTS_POLICIES.document;r?await a.refetchQueries({include:[r]}):await ut(a,e.GET_INSIGHTS_POLICIES,void 0,t)},d=async()=>{e.GET_INSIGHTS_LEARNING_POLICIES&&await ut(a,e.GET_INSIGHTS_LEARNING_POLICIES,void 0,t)},u=async()=>{e.GET_INSIGHTS_GUARDRAILS&&await ut(a,e.GET_INSIGHTS_GUARDRAILS,void 0,t)},m=async()=>{e.GET_INSIGHTS_GUARDRAIL_VIOLATIONS&&await ut(a,e.GET_INSIGHTS_GUARDRAIL_VIOLATIONS,void 0,t)};return{useServices:e=>yt("GET_INSIGHTS_SERVICES",void 0,e),useServiceNames:e=>yt("GET_INSIGHTS_SERVICE_NAMES",void 0,e),useTransactions:(e,t)=>yt("GET_INSIGHTS_TRANSACTIONS",e,t),useTransaction:(e,t)=>yt("GET_INSIGHTS_TRANSACTION",e,t),useBaseline:(e,t)=>yt("GET_INSIGHTS_BASELINE",e,t),useObservations:(e,t)=>yt("GET_INSIGHTS_OBSERVATIONS",e,t),useObservation:(e,t)=>yt("GET_INSIGHTS_OBSERVATION",e,t),useFindings:(e,t)=>yt("GET_INSIGHTS_FINDINGS",e,t),useAnomalies:(e,t)=>yt("GET_INSIGHTS_ANOMALIES",e,t),useAnomaly:(e,t)=>yt("GET_INSIGHTS_ANOMALY",e,t),usePolicies:e=>yt("GET_INSIGHTS_POLICIES",void 0,e),useLearningPolicies:e=>yt("GET_INSIGHTS_LEARNING_POLICIES",void 0,e),useGuardrails:e=>yt("GET_INSIGHTS_GUARDRAILS",void 0,e),useGuardrailViolations:(e,t)=>yt("GET_INSIGHTS_GUARDRAIL_VIOLATIONS",e,t),useGuardrailViolation:(e,t)=>yt("GET_INSIGHTS_GUARDRAIL_VIOLATION",e,t),useServiceProfile:(e,t)=>yt("GET_INSIGHTS_SERVICE_PROFILE",e,t),useBlastRadius:(e,t)=>yt("GET_INSIGHTS_BLAST_RADIUS",e,t),useCatalog:e=>yt("GET_INSIGHTS_CATALOG",void 0,e),useSystemSettings:e=>yt("GET_INSIGHTS_SYSTEM_SETTINGS",void 0,e),useStorageHealth:e=>yt("GET_INSIGHTS_STORAGE_HEALTH",void 0,e),getServices:e.GET_INSIGHTS_SERVICES?async()=>ut(a,e.GET_INSIGHTS_SERVICES,void 0,t):void 0,getServiceNames:e.GET_INSIGHTS_SERVICE_NAMES?async()=>ut(a,e.GET_INSIGHTS_SERVICE_NAMES,void 0,t):void 0,getTransactions:e.GET_INSIGHTS_TRANSACTIONS?async r=>ut(a,e.GET_INSIGHTS_TRANSACTIONS,r,t):void 0,getTransaction:e.GET_INSIGHTS_TRANSACTION?async r=>ut(a,e.GET_INSIGHTS_TRANSACTION,r,t):void 0,getFindings:e.GET_INSIGHTS_FINDINGS?async r=>ut(a,e.GET_INSIGHTS_FINDINGS,r,t):void 0,getAnomalies:e.GET_INSIGHTS_ANOMALIES?async r=>ut(a,e.GET_INSIGHTS_ANOMALIES,r,t):void 0,getAnomaly:e.GET_INSIGHTS_ANOMALY?async r=>ut(a,e.GET_INSIGHTS_ANOMALY,r,t):void 0,getPolicies:e.GET_INSIGHTS_POLICIES?async()=>ut(a,e.GET_INSIGHTS_POLICIES,void 0,t):void 0,getLearningPolicies:e.GET_INSIGHTS_LEARNING_POLICIES?async()=>ut(a,e.GET_INSIGHTS_LEARNING_POLICIES,void 0,t):void 0,getGuardrails:e.GET_INSIGHTS_GUARDRAILS?async()=>ut(a,e.GET_INSIGHTS_GUARDRAILS,void 0,t):void 0,getGuardrailViolation:e.GET_INSIGHTS_GUARDRAIL_VIOLATION?async r=>ut(a,e.GET_INSIGHTS_GUARDRAIL_VIOLATION,r,t):void 0,getServiceProfile:e.GET_INSIGHTS_SERVICE_PROFILE?async r=>ut(a,e.GET_INSIGHTS_SERVICE_PROFILE,r,t):void 0,getBlastRadius:e.GET_INSIGHTS_BLAST_RADIUS?async r=>ut(a,e.GET_INSIGHTS_BLAST_RADIUS,r,t):void 0,getCatalog:e.GET_INSIGHTS_CATALOG?async()=>ut(a,e.GET_INSIGHTS_CATALOG,void 0,t):void 0,getSystemSettings:e.GET_INSIGHTS_SYSTEM_SETTINGS?async()=>ut(a,e.GET_INSIGHTS_SYSTEM_SETTINGS,void 0,t):void 0,getStorageHealth:e.GET_INSIGHTS_STORAGE_HEALTH?async()=>ut(a,e.GET_INSIGHTS_STORAGE_HEALTH,void 0,t):void 0,promoteBaselineClass:e.PROMOTE_INSIGHTS_BASELINE_CLASS?async s=>{if(t.isReadonly)return o();const{data:i,error:l}=await mt(a,e.PROMOTE_INSIGHTS_BASELINE_CLASS,s,t);return l?r(p.Update,l):n(p.Update,"Successfully promoted baseline class"),{data:i,error:l}}:void 0,resetBaselineClass:e.RESET_INSIGHTS_BASELINE_CLASS?async(s,i)=>{if(t.isReadonly)return o();const{error:l}=await mt(a,e.RESET_INSIGHTS_BASELINE_CLASS,{transactionId:s,class:i},t);return l?r(p.Update,l):n(p.Update,"Successfully reset baseline class"),l?{error:l}:void 0}:void 0,resetTransactionBaselines:e.RESET_INSIGHTS_TRANSACTION_BASELINES?async s=>{if(t.isReadonly)return o();const{error:i}=await mt(a,e.RESET_INSIGHTS_TRANSACTION_BASELINES,{transactionId:s},t);return i?r(p.Update,i):n(p.Update,"Successfully reset transaction baselines"),i?{error:i}:void 0}:void 0,promoteTransactionBaselines:e.PROMOTE_INSIGHTS_TRANSACTION_BASELINES?async s=>{if(t.isReadonly)return o();const{error:i}=await mt(a,e.PROMOTE_INSIGHTS_TRANSACTION_BASELINES,{transactionId:s},t);return i?r(p.Update,i):(n(p.Update,"Successfully promoted transaction baselines"),await Promise.all([l(),u()])),i?{error:i}:void 0}:void 0,bulkPromoteTransactions:e.BULK_PROMOTE_INSIGHTS_TRANSACTIONS?async s=>{if(t.isReadonly)return o();const i={transactionIds:s},{data:c,error:d}=await mt(a,e.BULK_PROMOTE_INSIGHTS_TRANSACTIONS,i,t);return d?r(p.Update,d):(n(p.Update,`Successfully promoted ${c?.promoted??s.length} transactions`),await Promise.all([l(),u()])),{data:c,error:d}}:void 0,forcePromoteService:e.FORCE_PROMOTE_INSIGHTS_SERVICE?async s=>{if(t.isReadonly)return o();const{error:i}=await mt(a,e.FORCE_PROMOTE_INSIGHTS_SERVICE,s,t);return i?r(p.Update,i):(n(p.Update,"Successfully force-promoted service transactions"),await Promise.all([l(),u()])),i?{error:i}:void 0}:void 0,enableTransactionGuardrail:e.ENABLE_INSIGHTS_TRANSACTION_GUARDRAIL?async s=>{if(t.isReadonly)return o();const{error:i}=await mt(a,e.ENABLE_INSIGHTS_TRANSACTION_GUARDRAIL,s,t);return i?r(p.Update,i):(n(p.Update,"Successfully enabled transaction guardrail"),await u()),i?{error:i}:void 0}:void 0,disableTransactionGuardrail:e.DISABLE_INSIGHTS_TRANSACTION_GUARDRAIL?async s=>{if(t.isReadonly)return o();const{error:i}=await mt(a,e.DISABLE_INSIGHTS_TRANSACTION_GUARDRAIL,s,t);return i?r(p.Update,i):(n(p.Update,"Successfully disabled transaction guardrail"),await u()),i?{error:i}:void 0}:void 0,deleteTransaction:e.DELETE_INSIGHTS_TRANSACTION?async c=>{if(t.isReadonly)return o();const{error:d}=await mt(a,e.DELETE_INSIGHTS_TRANSACTION,{transactionId:c},t);return d?r(p.Delete,d):(n(p.Delete,"Successfully deleted transaction"),await Promise.all([l(),s(),i()])),d?{error:d}:void 0}:void 0,bulkDeleteTransactions:e.BULK_DELETE_INSIGHTS_TRANSACTIONS?async c=>{if(t.isReadonly)return o();const d={transactionIds:c},{data:u,error:m}=await mt(a,e.BULK_DELETE_INSIGHTS_TRANSACTIONS,d,t);return m?r(p.Delete,m):(n(p.Delete,`Successfully deleted ${u?.deleted??c.length} transactions`),await Promise.all([l(),s(),i()])),{data:u,error:m}}:void 0,upsertPolicy:e.UPSERT_INSIGHTS_POLICY?async s=>{if(t.isReadonly)return o();const{data:i,error:l}=await mt(a,e.UPSERT_INSIGHTS_POLICY,{policy:s},t);return l?r(p.Update,l):(n(p.Update,`Successfully saved policy "${s.name}"`),await c()),{data:i,error:l}}:void 0,deletePolicy:e.DELETE_INSIGHTS_POLICY?async(s,i)=>{if(t.isReadonly)return o();const{error:l}=await mt(a,e.DELETE_INSIGHTS_POLICY,{scope:s,scopeKey:i},t);return l?r(p.Delete,l):(n(p.Delete,"Successfully deleted policy"),await c()),l?{error:l}:void 0}:void 0,upsertLearningPolicy:e.UPSERT_INSIGHTS_LEARNING_POLICY?async s=>{if(t.isReadonly)return o();const{data:i,error:l}=await mt(a,e.UPSERT_INSIGHTS_LEARNING_POLICY,{policy:s},t);return l?r(p.Update,l):(n(p.Update,"Successfully saved learning policy"),await d()),{data:i,error:l}}:void 0,deleteLearningPolicy:e.DELETE_INSIGHTS_LEARNING_POLICY?async(s,i,l)=>{if(t.isReadonly)return o();const{error:c}=await mt(a,e.DELETE_INSIGHTS_LEARNING_POLICY,{class:s,scope:i,scopeKey:l},t);return c?r(p.Delete,c):(n(p.Delete,"Successfully deleted learning policy"),await d()),c?{error:c}:void 0}:void 0,resolveAnomaly:e.RESOLVE_INSIGHTS_ANOMALY?async l=>{if(t.isReadonly)return o();const{error:c}=await mt(a,e.RESOLVE_INSIGHTS_ANOMALY,l,t);return c?r(p.Update,c):(n(p.Update,`Successfully ${l.resolution}ed anomaly`),await Promise.all([i(),s()])),c?{error:c}:void 0}:void 0,bulkResolveAnomalies:e.BULK_RESOLVE_INSIGHTS_ANOMALIES?async(l,c)=>{if(t.isReadonly)return o();const d={resolution:l,items:c},{data:u,error:m}=await mt(a,e.BULK_RESOLVE_INSIGHTS_ANOMALIES,d,t);return m?r(p.Update,m):(n(p.Update,`Successfully ${l}ed ${u?.resolved??c.length} anomalies`),await Promise.all([i(),s()])),{data:u,error:m}}:void 0,upsertGuardrail:e.UPSERT_INSIGHTS_GUARDRAIL?async s=>{if(t.isReadonly)return o();const{data:i,error:l}=await mt(a,e.UPSERT_INSIGHTS_GUARDRAIL,{guardrail:s},t);return l?r(p.Update,l):(n(p.Update,"Successfully saved guardrail"),await u()),{data:i,error:l}}:void 0,deleteGuardrail:e.DELETE_INSIGHTS_GUARDRAIL?async s=>{if(t.isReadonly)return o();const{error:i}=await mt(a,e.DELETE_INSIGHTS_GUARDRAIL,{scopeKey:s},t);return i?r(p.Delete,i):(n(p.Delete,"Successfully deleted guardrail"),await u()),i?{error:i}:void 0}:void 0,seedGuardrail:e.SEED_INSIGHTS_GUARDRAIL?async s=>{if(t.isReadonly)return o();const{error:i}=await mt(a,e.SEED_INSIGHTS_GUARDRAIL,{seed:s},t);return i?r(p.Create,i):(n(p.Create,"Successfully seeded guardrail"),await u()),i?{error:i}:void 0}:void 0,acceptViolation:e.ACCEPT_INSIGHTS_GUARDRAIL_VIOLATION?async i=>{if(t.isReadonly)return o();const{error:l}=await mt(a,e.ACCEPT_INSIGHTS_GUARDRAIL_VIOLATION,{action:i},t);return l?r(p.Update,l):(n(p.Update,"Successfully accepted violation"),await Promise.all([m(),s()])),l?{error:l}:void 0}:void 0,dismissViolation:e.DISMISS_INSIGHTS_GUARDRAIL_VIOLATION?async i=>{if(t.isReadonly)return o();const{error:l}=await mt(a,e.DISMISS_INSIGHTS_GUARDRAIL_VIOLATION,{action:i},t);return l?r(p.Update,l):(n(p.Update,"Successfully dismissed violation"),await Promise.all([m(),s()])),l?{error:l}:void 0}:void 0,reopenViolation:e.REOPEN_INSIGHTS_GUARDRAIL_VIOLATION?async i=>{if(t.isReadonly)return o();const{error:l}=await mt(a,e.REOPEN_INSIGHTS_GUARDRAIL_VIOLATION,{action:i},t);return l?r(p.Update,l):(n(p.Update,"Successfully reopened violation"),await Promise.all([m(),s()])),l?{error:l}:void 0}:void 0,updateSystemSettings:e.UPDATE_INSIGHTS_SYSTEM_SETTINGS?async s=>{if(t.isReadonly)return o();const{data:i,error:l}=await mt(a,e.UPDATE_INSIGHTS_SYSTEM_SETTINGS,{settings:s},t);return l?r(p.Update,l):(n(p.Update,"Successfully updated system settings"),await(async()=>{e.GET_INSIGHTS_SYSTEM_SETTINGS&&await ut(a,e.GET_INSIGHTS_SYSTEM_SETTINGS,void 0,t)})()),{data:i,error:l}}:void 0}},wt=[],Pt=e=>{if(e)return{clusters:[e],totalNamespaces:e.namespaces?.length??0,totalWorkloads:(e.namespaces??[]).reduce((e,t)=>e+(t.workloads?.length??0),0),lastUpdated:e.timestamp}},Ut=[],Ft=[],kt=[],Mt=[],Ht=(e,t)=>({...e,fields:e.fields.filter(({value:e})=>void 0!==e),currentStreamName:t}),xt=[],$t=[],Kt=()=>{const{operations:e,context:t}=Je(),r=Me(),n=((e,t)=>{const r=Me(),{notifyError:n,notifySuccess:s,notifyPending:i,notifyReadonly:l}=ot(T.Source),{selectedStreamName:c}=f(),{setProgress:d,resetProgress:u}=y(),{setConfiguredSources:m,setConfiguredFutureApps:S}=_(),E=(e,t)=>{const{progress:a}=y.getState();e>0&&d(h.Instrumenting,{total:(a[h.Instrumenting]?.total||0)+e,current:a[h.Instrumenting]?.current||0}),t>0&&d(h.Uninstrumenting,{total:(a[h.Uninstrumenting]?.total||0)+t,current:a[h.Uninstrumenting]?.current||0})},I=o(async()=>{const{error:a}=await ut(r,e.GET_WORKLOADS,At,t);a&&n(p.Read,a)},[r,e.GET_WORKLOADS,t,n]);return{useSources:()=>{const e=yt("GET_WORKLOADS",At,{fetchPolicy:"cache-first"}),t=e.data?.workloads;return{items:a(()=>t?Ct(t):Rt,[t]),loading:e.loading,refetch:I}},fetchAll:I,fetchByTargets:async(a,o)=>{const s=!!o?.slim,i=a.map(e=>N(e,T.Source)).filter(e=>e.namespace&&e.name&&e.kind);if(0===i.length)return;if(i.length>50)return void await I();const l=s&&e.GET_WORKLOADS_BY_IDS_SLIM?e.GET_WORKLOADS_BY_IDS_SLIM:e.GET_WORKLOADS_BY_IDS,{error:c}=await ut(r,l,{ids:i.map(({namespace:e,kind:t,name:a,region:r})=>({namespace:e,kind:t,name:a,region:r||void 0}))},t);c?n(p.Read,c):await I()},fetchById:async a=>{const{data:o,error:s}=await ut(r,e.GET_WORKLOADS_BY_IDS,{ids:[{namespace:a.namespace,kind:a.kind,name:a.name,...a.region?{region:a.region}:{}}]},t);if(s)return void n(p.Read,s);const i=o?.workloadsByIds?.find(e=>e.id.namespace===a.namespace&&e.id.kind===a.kind&&e.id.name===a.name&&(e.id.region??"")===(a.region??""));return i?Ot(i):void 0},fetchLibraries:async a=>ut(r,e.GET_SOURCE_LIBRARIES,a,t),fetchPeerSources:async a=>ut(r,e.GET_PEER_SOURCES,{serviceName:a},t),usePeerSources:(e,t)=>yt("GET_PEER_SOURCES",e,t),useInstrumentationInstructions:(e,t)=>yt("GET_INSTRUMENTATION_INSTRUCTIONS",e,{...t,skip:t?.skip||!e?.name}),persist:async(a,o)=>{if(t.isReadonly)return l();const{data:s}=await ut(r,e.GET_WORKLOADS,At,t,"cache-first"),d=Ct(s?.workloads??Rt),{payload:T,isEmpty:I}=gt(a,d,c,E),{payload:f,isEmpty:y}=vt(o,c);let _=!1;I||(_=!0,i("Persisting sources...")),y||_||i("Persisting namespaces...");const{error:N}=await mt(r,e.PERSIST_SOURCES,T,t);if(N&&(u(h.Instrumenting),u(h.Uninstrumenting),n(p.Update,N)),e.PERSIST_NAMESPACES){const{error:a}=await mt(r,e.PERSIST_NAMESPACES,f,t);a&&n(p.Update,a)}m({}),S({})},persistV2:async a=>{if(t.isReadonly)return l(),{error:"readonly"};const n=[];for(const[o,s]of Object.entries(a)){const a={sources:[]},i={namespaces:[]};for(const e of s)e.name&&e.kind?a.sources.push(e):i.namespaces.push(e);const l=o&&o!==g?{...t,proxyID:o}:t,c=e=>o&&o!==g?`${o}: ${e}`:e;if(i.namespaces.length>0&&e.PERSIST_NAMESPACES){const{error:t}=await mt(r,e.PERSIST_NAMESPACES,i,l);t&&n.push(c(t))}if(a.sources.length>0){const{error:t}=await mt(r,e.PERSIST_SOURCES,a,l);t&&n.push(c(t))}}return n.length?{error:n.join(", ")}:void 0},update:async(a,o)=>{if(t.isReadonly)return l();i("Updating source...");const d={sourceId:a,patchSourceRequest:{...o,currentStreamName:c}},{data:u,error:m}=await mt(r,e.UPDATE_SOURCE,d,t);m?n(p.Update,m,a):u?.updateK8sActualSource&&s(p.Update,`Successfully updated "${a.name}" source`,a)},restartWorkloads:async a=>{if(t.isReadonly)return l();i("Restarting sources...");const{data:o,error:c}=await mt(r,e.RESTART_WORKLOADS,{sourceIds:a},t);c?n(p.Update,c):o?.restartWorkloads&&s(p.Update,`Successfully restarted ${a.length} sources`)},restartPod:async(a,o)=>{if(t.isReadonly)return l();i("Restarting pod...");const{data:c,error:d}=await mt(r,e.RESTART_POD,{namespace:a,name:o},t);d?n(p.Update,d):c?.restartPod&&s(p.Update,`Successfully restarted pod ${a}/${o}`)},recoverFromRollback:async a=>{if(t.isReadonly)return l();i("Recovering from rollback...");const{data:o,error:c}=await mt(r,e.RECOVER_FROM_ROLLBACK,{sourceId:a},t);c?n(p.Update,c,a):o?.recoverFromRollbackForWorkload&&s(p.Update,"Successfully triggered recovery from rollback")}}})(e,t),s=((e,t)=>{const a=Me(),{notifyError:r,notifySuccess:n,notifyReadonly:o}=ot(T.Destination),{selectedStreamName:s}=f(),i=async()=>{const{error:n}=await ut(a,e.GET_DESTINATIONS,void 0,t);n&&r(p.Read,n)};return{useDestinations:()=>{const e=yt("GET_DESTINATIONS",void 0,{fetchPolicy:"cache-first"});return{items:e.data?.computePlatform?.destinations??e.data?.destinations??Mt,loading:e.loading,refetch:i}},useDestinationCategories:()=>{const e=yt("GET_DESTINATION_CATEGORIES",void 0);return{data:e.data,loading:e.loading}},usePotentialDestinations:()=>{const e=yt("GET_POTENTIAL_DESTINATIONS",void 0);return{data:e.data,loading:e.loading}},fetchAll:i,testConnection:async r=>{const{data:n}=await mt(a,e.TEST_DESTINATION_CONNECTION,{destination:Ht(r,s)},t);return n},create:async l=>{if(t.isReadonly)return o();const{error:c}=await mt(a,e.CREATE_DESTINATION,{destination:Ht(l,s)},t);c?r(p.Create,c):(n(p.Create,`Successfully created "${l.type}" destination`),await i())},update:async(l,c)=>{if(t.isReadonly)return o();const{data:d,error:u}=await mt(a,e.UPDATE_DESTINATION,{id:l,destination:Ht(c,s)},t);u?r(p.Update,u,l):d?.updateDestination&&(n(p.Update,`Successfully updated "${c.type}" destination`,l),await i())},remove:async l=>{if(t.isReadonly)return o();const{data:c}=await ut(a,e.GET_DESTINATIONS,void 0,t,"cache-first"),d=c?.computePlatform?.destinations??c?.destinations??Mt,u=d.find(e=>O(e)===l)?.destinationType?.type,{error:m}=await mt(a,e.DELETE_DESTINATION,{id:l,currentStreamName:s},t);m?r(p.Delete,m,l):(n(p.Delete,`Successfully deleted "${u??l}" destination`,l),await i())}}})(e,t),l=((e,t)=>{const r=Me(),{notifyError:n,notifySuccess:o,notifyReadonly:s}=ot(T.Action),i=async()=>{const{error:a}=await ut(r,e.GET_ACTIONS,void 0,t);a&&n(p.Read,a)};return{useActions:()=>{const e=yt("GET_ACTIONS",void 0,{fetchPolicy:"cache-first"});return{items:e.data?.computePlatform?.actions??e.data?.actions??Dt,loading:e.loading,refetch:i}},useActionTypes:()=>{const e=yt("GET_ACTION_TYPES",void 0,{fetchPolicy:"cache-first"});return{options:a(()=>v(e.data)||Gt,[e.data]),loading:e.loading}},fetchAll:i,create:async a=>{if(t.isReadonly)return s(),{error:u.READONLY_WARNING};if(!e.CREATE_ACTION)return{error:"Action creation is not supported"};const{error:l}=await mt(r,e.CREATE_ACTION,{action:a},t);return l?n(p.Create,l):(o(p.Create,`Successfully created "${a.type}" action`),await i()),l?{error:l}:void 0},update:async(a,l)=>{if(t.isReadonly)return s();if(!e.UPDATE_ACTION)return;const{error:c}=await mt(r,e.UPDATE_ACTION,{id:a,action:l},t);c?n(p.Update,c,a):(o(p.Update,`Successfully updated "${l.type}" action`,a),await i())},remove:async(a,l)=>{if(t.isReadonly)return s();if(!e.DELETE_ACTION)return;const{error:c}=await mt(r,e.DELETE_ACTION,{id:a,actionType:l},t);c?n(p.Delete,c,a):(o(p.Delete,`Successfully deleted "${l}" action`,a),await i())}}})(e,t),c=((e,t)=>{const r=Me(),{notifyError:n,notifySuccess:o,notifyReadonly:s}=ot(T.InstrumentationRule),i=async()=>{const{error:a}=await ut(r,e.GET_INSTRUMENTATION_RULES,void 0,t);a&&n(p.Read,a)};return{useRules:()=>{const e=yt("GET_INSTRUMENTATION_RULES",void 0,{fetchPolicy:"cache-first"});return{items:a(()=>(e.data?.computePlatform?.instrumentationRules??e.data?.instrumentationRules??[]).map(P),[e.data]),loading:e.loading,refetch:i}},useRuleTypes:()=>{const e=yt("GET_INSTRUMENTATION_RULE_TYPES",void 0,{fetchPolicy:"cache-first"});return{options:a(()=>w(e.data)||$t,[e.data]),loading:e.loading}},fetchAll:i,create:async(a,l)=>{if(t.isReadonly)return s();if(!e.CREATE_INSTRUMENTATION_RULE)return;const{error:c}=await mt(r,e.CREATE_INSTRUMENTATION_RULE,{instrumentationRule:L(a)},t);c?n(p.Create,c):(o(p.Create,`Successfully created${l?` "${l}"`:""} rule`),await i())},update:async(a,l,c)=>{if(t.isReadonly)return s();if(!e.UPDATE_INSTRUMENTATION_RULE)return;const{error:d}=await mt(r,e.UPDATE_INSTRUMENTATION_RULE,{ruleId:a,instrumentationRule:L(l)},t);d?n(p.Update,d,a):(o(p.Update,`Successfully updated${c?` "${c}"`:""} rule`,a),await i())},remove:async(a,l)=>{if(t.isReadonly)return s();if(!e.DELETE_INSTRUMENTATION_RULE)return;const{error:c}=await mt(r,e.DELETE_INSTRUMENTATION_RULE,{ruleId:a},t);c?n(p.Delete,c,a):(o(p.Delete,`Successfully deleted${l?` "${l}"`:""} rule`,a),await i())}}})(e,t),m=((e,t)=>{const a=Me(),{addNotification:r}=d(),{setDataStreams:n}=f(),o=(e,t)=>r({type:S.Error,title:e,message:t}),s=async()=>{const{data:r,error:s}=await ut(a,e.GET_DATA_STREAMS,void 0,t);if(s)o(p.Read,s);else if(r){const e=r.computePlatform?.dataStreams??r.dataStreams??[];n(e)}},l=e.CREATE_DATA_STREAM?async n=>{if(t.isReadonly)return st(r);const{error:i}=await mt(a,e.CREATE_DATA_STREAM,{stream:n},t);i?o(p.Create,i):await s()}:void 0;return{useDataStreams:()=>{const e=yt("GET_DATA_STREAMS",void 0,{fetchPolicy:"cache-first"}),t=e.data?.computePlatform?.dataStreams??e.data?.dataStreams??kt;return i(()=>{n(t)},[JSON.stringify(t.map(e=>e.name))]),{items:t,loading:e.loading,refetch:s}},fetchAll:s,create:l,update:async(n,i)=>{if(t.isReadonly)return st(r);const{error:l}=await mt(a,e.UPDATE_DATA_STREAM,{id:n,dataStream:i},t);l?o(p.Update,l):await s()},remove:async n=>{if(t.isReadonly)return st(r);const{error:i}=await mt(a,e.DELETE_DATA_STREAM,{id:n},t);i?o(p.Delete,i):await s()}}})(e,t),E=((e,t)=>{const a=Me(),{notifyError:r,notifyReadonly:n}=ot(T.Namespace),o=async()=>{const n=await ut(a,e.GET_NAMESPACES_WITH_WORKLOADS,void 0,t);return n.error&&r(p.Read,n.error),n};return{useNamespaces:e=>{const t=yt("GET_NAMESPACES_WITH_WORKLOADS",void 0,{fetchPolicy:"cache-and-network",skip:e?.skip});return{items:t.data?.namespaces??wt,loading:t.loading,refetch:o}},fetchAll:o,persist:async o=>{if(t.isReadonly)return n();const{error:s}=await mt(a,e.PERSIST_NAMESPACES,o,t);return s&&r(p.Update,s),s?{error:s}:void 0}}})(e,t),A=((e,t)=>{const a=Me(),{notifyError:r}=ot(T.Source);return{fetch:async n=>{const o=await ut(a,e.GET_K8S_MANIFEST,n,t);return o.error&&r(p.Read,o.error),o}}})(e,t),U=((e,t)=>{const a=Me(),{notifyError:r,notifySuccess:n,notifyReadonly:o}=ot(T.Source);return{useEffectiveConfig:(e,t)=>yt("GET_EFFECTIVE_CONFIG",e,t),useConfigYamls:e=>yt("GET_CONFIG_YAMLS",void 0,e),getEffectiveConfig:async r=>e.GET_EFFECTIVE_CONFIG?ut(a,e.GET_EFFECTIVE_CONFIG,{id:r},t):{error:"GET_EFFECTIVE_CONFIG not configured"},applyConfigurations:e.UPDATE_REMOTE_CONFIG?async(n,s)=>{if(t.isReadonly)return o();if(!s.length)return{error:"No connections selected"};const i={formData:n,connectionIds:s},l=e.UPDATE_REMOTE_CONFIG;let c;return 1===s.length?({error:c}=await mt(a,l,i,t)):({error:c}=await St(a,l,s,i,t)),c&&r(p.Update,c),c?{error:c}:void 0}:void 0,getConfigYamls:e.GET_CONFIG_YAMLS?async()=>ut(a,e.GET_CONFIG_YAMLS,void 0,t):void 0,updateLocalUiConfig:e.UPDATE_LOCAL_UI_CONFIG?async s=>{if(t.isReadonly)return o();const{error:i}=await mt(a,e.UPDATE_LOCAL_UI_CONFIG,{config:s},t);return i?r(p.Update,i):n(p.Update,"Local UI configuration updated successfully"),i?{error:i}:void 0}:void 0,resetLocalUiConfigToDefaults:e.RESET_LOCAL_UI_CONFIG_TO_FACTORY_DEFAULTS?async()=>{if(t.isReadonly)return o();const{error:s}=await mt(a,e.RESET_LOCAL_UI_CONFIG_TO_FACTORY_DEFAULTS,void 0,t);return s?r(p.Update,s):n(p.Update,"Local UI configuration reset to factory defaults"),s?{error:s}:void 0}:void 0}})(e,t),F=((e,t)=>{const a=Me(),{apolloConfig:r}=Je();return{fetchDescribeOdigos:e.GET_DESCRIBE_ODIGOS?async()=>ut(a,e.GET_DESCRIBE_ODIGOS,void 0,t):void 0,fetchDescribeSource:e.GET_DESCRIBE_SOURCE?async r=>ut(a,e.GET_DESCRIBE_SOURCE,r,t):void 0,downloadDiagnose:e.GET_DIAGNOSE?async(n,o)=>{const s=await ut(a,e.GET_DIAGNOSE,{input:n,dryRun:o?.dryRun??!1},t),i=s?.data?.stats?.fileCount??0;return!s.error&&i>0&&!o?.dryRun&&await(async e=>{const t=(e=>{try{return new URL("/diagnose/download",e).toString()}catch{return null}})(e.httpUrl);if(t)try{const[a,r]=await Promise.all([Promise.resolve(e.authHeader?.()??{}),Promise.resolve(e.csrfHeader?.()??{})]),n=await fetch(t,{credentials:e.credentials??"same-origin",headers:{...a,...r}});if(!n.ok)throw new Error(`Failed to download diagnose archive: ${n.status} ${n.statusText}`);((e,t)=>{if("undefined"==typeof document)return;const a=URL.createObjectURL(e),r=document.createElement("a");r.href=a,r.download=t,document.body.appendChild(r),r.click(),document.body.removeChild(r),URL.revokeObjectURL(a)})(await n.blob(),`odigos-diagnose-${Date.now()}.tar.gz`)}catch(e){}})(r),s}:void 0}})(e,t),k=((e,t)=>{const a=Me(),{notifyError:r,notifyReadonly:n}=ot(T.Source),o=async()=>{e.GET_TOKENS&&await ut(a,e.GET_TOKENS,void 0,t)};return{useTokens:()=>{const e=yt("GET_TOKENS",void 0,{fetchPolicy:"cache-first"});return{items:e.data??Nt,loading:e.loading,refetch:o}},updateToken:e.UPDATE_TOKEN?async o=>{if(t.isReadonly)return n();const{error:s}=await mt(a,e.UPDATE_TOKEN,{token:o},t);return s&&r(p.Update,s),s?{error:s}:void 0}:void 0}})(e,t),M=((e,t)=>{const a=Me();return{useMetrics:e=>yt("GET_METRICS",void 0,e),fetch:async()=>ut(a,e.GET_METRICS,void 0,t)}})(e,t),H=((e,t)=>{const a=Me();return{useServiceMap:e=>yt("GET_SERVICE_MAP",void 0,e),fetch:e.GET_SERVICE_MAP?async()=>ut(a,e.GET_SERVICE_MAP,void 0,t):void 0}})(e,t),x=((e,t)=>{const a=Me();return{useSlots:e=>yt("GET_PROFILING_SLOTS",void 0,e),useSourceProfiling:(e,t)=>yt("GET_SOURCE_PROFILING",e,t),useHotFunctions:(e,t)=>yt("GET_PROFILE_HOT_FUNCTIONS",e,t),fetchSlots:e.GET_PROFILING_SLOTS?async()=>ut(a,e.GET_PROFILING_SLOTS,void 0,t):void 0,fetchSourceProfiling:e.GET_SOURCE_PROFILING?async r=>ut(a,e.GET_SOURCE_PROFILING,r,t):void 0,enableProfiling:e.ENABLE_SOURCE_PROFILING?async r=>mt(a,e.ENABLE_SOURCE_PROFILING,r,t):void 0,fetchHotFunctions:e.GET_PROFILE_HOT_FUNCTIONS?async r=>ut(a,e.GET_PROFILE_HOT_FUNCTIONS,r,t):void 0,clearProfileCache:e.CLEAR_PROFILE_CACHE?async()=>mt(a,e.CLEAR_PROFILE_CACHE,void 0,t):void 0}})(e,t),$=((e,t)=>{const a=Me();return{useGatewayInfo:e=>yt("GET_GATEWAY_INFO",void 0,e),useGatewayPods:e=>yt("GET_GATEWAY_PODS",void 0,e),useNodeCollectorInfo:e=>yt("GET_NODE_COLLECTOR_INFO",void 0,e),useNodeCollectorPods:e=>yt("GET_NODE_COLLECTOR_PODS",void 0,e),usePodInfo:(e,t)=>yt("GET_COLLECTOR_POD_INFO",e,t),getGatewayInfo:e.GET_GATEWAY_INFO?async()=>ut(a,e.GET_GATEWAY_INFO,void 0,t):void 0,getGatewayPods:e.GET_GATEWAY_PODS?async()=>ut(a,e.GET_GATEWAY_PODS,void 0,t):void 0,getNodeCollectorInfo:e.GET_NODE_COLLECTOR_INFO?async()=>ut(a,e.GET_NODE_COLLECTOR_INFO,void 0,t):void 0,getNodeCollectorPods:e.GET_NODE_COLLECTOR_PODS?async()=>ut(a,e.GET_NODE_COLLECTOR_PODS,void 0,t):void 0,getExtendedPodInfo:e.GET_COLLECTOR_POD_INFO?async(r,n)=>ut(a,e.GET_COLLECTOR_POD_INFO,{namespace:r,name:n},t):void 0}})(e,t),K=((e,t)=>{const a=Me(),{notifyError:r,notifySuccess:n,notifyReadonly:o}=ot(T.SamplingRule),s=async()=>{e.GET_SAMPLING_RULES&&await ut(a,e.GET_SAMPLING_RULES,void 0,t)},i=(e,i)=>e?async l=>{if(t.isReadonly)return o();const{error:c}=await mt(a,e,l,t);return c?r(i,c):(n(p.Create,"Successfully created sampling rule"),await s()),c?{error:c}:void 0}:void 0,l=(e,i)=>e?async(l,c)=>{if(t.isReadonly)return o();const{error:d}=await mt(a,e,{samplingId:c.samplingId,ruleId:l,rule:c.rule},t);return d?r(i,d):(n(p.Update,"Successfully updated sampling rule"),await s()),d?{error:d}:void 0}:void 0,c=e=>e?async(i,l)=>{if(t.isReadonly)return o();const{error:c}=await mt(a,e,{samplingId:l,ruleId:i},t);return c?r(p.Delete,c):(n(p.Delete,"Successfully deleted sampling rule"),await s()),c?{error:c}:void 0}:void 0;return{useSamplingRules:()=>{const e=yt("GET_SAMPLING_RULES",void 0,{fetchPolicy:"cache-first"});return{items:e.data?.computePlatform?.samplingRules??e.data?.samplingRules??bt,k8sHealthProbesConfig:e.data?.computePlatform?.k8sHealthProbesConfig??e.data?.k8sHealthProbesConfig??null,loading:e.loading,refetch:s}},fetchAll:e.GET_SAMPLING_RULES?async()=>ut(a,e.GET_SAMPLING_RULES,void 0,t):void 0,createNoisy:i(e.CREATE_NOISY_OPERATION_RULE,p.Create),updateNoisy:l(e.UPDATE_NOISY_OPERATION_RULE,p.Update),deleteNoisy:c(e.DELETE_NOISY_OPERATION_RULE),createHighlyRelevant:i(e.CREATE_HIGHLY_RELEVANT_OPERATION_RULE,p.Create),updateHighlyRelevant:l(e.UPDATE_HIGHLY_RELEVANT_OPERATION_RULE,p.Update),deleteHighlyRelevant:c(e.DELETE_HIGHLY_RELEVANT_OPERATION_RULE),createCostReduction:i(e.CREATE_COST_REDUCTION_RULE,p.Create),updateCostReduction:l(e.UPDATE_COST_REDUCTION_RULE,p.Update),deleteCostReduction:c(e.DELETE_COST_REDUCTION_RULE),updateK8sHealthProbesConfig:e.UPDATE_LOCAL_UI_SAMPLING_CONFIG?async n=>{if(t.isReadonly)return o();const{error:i}=await mt(a,e.UPDATE_LOCAL_UI_SAMPLING_CONFIG,{config:{k8sHealthProbesSampling:n}},t);return i?r(p.Update,i):await s(),i?{error:i}:void 0}:void 0}})(e,t),V=((e,t)=>{const a=Me(),{notifyError:r,notifySuccess:n,notifyReadonly:o}=ot(T.Recommendation),s=async()=>{e.GET_RECOMMENDATIONS&&await ut(a,e.GET_RECOMMENDATIONS,void 0,t)};return{useRecommendations:()=>{const e=yt("GET_RECOMMENDATIONS",void 0,{fetchPolicy:"cache-first"});return{items:e.data?.computePlatform?.recommendations??e.data?.recommendations??xt,loading:e.loading,refetch:s}},fetchAll:e.GET_RECOMMENDATIONS?async()=>ut(a,e.GET_RECOMMENDATIONS,void 0,t):void 0,setDismissed:e.SET_RECOMMENDATION_DISMISSED?async(i,l)=>{if(t.isReadonly)return o(),{error:u.READONLY_WARNING};const{error:c}=await mt(a,e.SET_RECOMMENDATION_DISMISSED,{name:i,dismissed:l},t);return c?r(p.Update,c):(n(p.Update,l?G:b),await s()),c?{error:c}:void 0}:void 0,applyRemediation:e.APPLY_RECOMMENDATION_REMEDIATION?async(i,l)=>{if(t.isReadonly)return o(),{error:u.READONLY_WARNING};const{data:c,error:d}=await mt(a,e.APPLY_RECOMMENDATION_REMEDIATION,{recommendationType:i,remediationType:l},t),m=d||!c?.applyRecommendationRemediation;return m?r(p.Update,d||C):(n(p.Update,D),await s()),m?{error:d||C}:void 0}:void 0}})(e,t),Y=((e,t)=>{const r=Me();return{useSnapshots:()=>{const e=t.proxyID,r=!!e,n=yt("GET_ALL_CLUSTER_SNAPSHOTS",void 0,{fetchPolicy:"cache-and-network",skip:r}),s=yt("GET_CLUSTER_SNAPSHOT",e?{clusterId:e}:void 0,{fetchPolicy:"cache-and-network",skip:!r}),i=a(()=>r?Pt(s.data):n.data,[r,s.data,n.data]),l=r?s.loading:n.loading,c=o(async()=>{if(!r)return n.refetch();const{data:e}=await s.refetch();return{data:Pt(e)}},[r,n.refetch,s.refetch]);return{data:i,loading:l,pending:l&&!i,unsupported:r?s.unsupported:n.unsupported,refetch:c}},getAllClusterSnapshots:e.GET_ALL_CLUSTER_SNAPSHOTS?async()=>ut(r,e.GET_ALL_CLUSTER_SNAPSHOTS,void 0,t):void 0,getClusterSnapshot:e.GET_CLUSTER_SNAPSHOT?async a=>ut(r,e.GET_CLUSTER_SNAPSHOT,{clusterId:a},t):void 0}})(e,t),B=((e,t)=>{const a=Me(),{notifyError:r,notifySuccess:n,notifyReadonly:s}=ot(R.Connection),i=o(async()=>{if(!e.GET_COMPUTE_PLATFORMS)return[];const{data:n,error:o}=await ut(a,e.GET_COMPUTE_PLATFORMS,void 0,t);return o&&r(p.Read,o),n??[]},[a,e.GET_COMPUTE_PLATFORMS,t,r]);return{useConnections:()=>{const e=yt("GET_COMPUTE_PLATFORMS",void 0,{fetchPolicy:"cache-and-network"});return{items:e.data??Ut,loading:e.loading,unsupported:e.unsupported,refetch:i}},useCloudConnectorProviders:()=>{const e=yt("GET_CLOUD_CONNECTOR_PROVIDERS",void 0,{fetchPolicy:"cache-first"});return{items:e.data??Ft,loading:e.loading,unsupported:e.unsupported}},createCloudConnector:e.CREATE_CLOUD_CONNECTOR?async n=>{if(t.isReadonly)throw s(),new Error("Readonly");const{data:o,error:l}=await mt(a,e.CREATE_CLOUD_CONNECTOR,{input:n},t);if(l)throw r(p.Create,l),new Error(l);if(!o)throw new Error("No result returned from create connector");return o.created&&await i(),o}:void 0,deleteConnection:e.DELETE_PROXY_CONNECTION||e.DELETE_CLOUD_CONNECTOR?async(o,l)=>{if(t.isReadonly)return s();if(l===I.Connector){if(!e.DELETE_CLOUD_CONNECTOR)return r(p.Delete,"DELETE_CLOUD_CONNECTOR not configured"),{success:!1,error:"DELETE_CLOUD_CONNECTOR not configured"};const{data:s,error:l}=await mt(a,e.DELETE_CLOUD_CONNECTOR,{connectorId:o},t);if(l)return r(p.Delete,l),{success:!1,error:l};const c=s??{success:!1,error:"Failed to delete connection"};return c.success?(n(p.Delete,"Connection deleted successfully"),await i(),c):(r(p.Delete,c.error||"Failed to delete connection"),c)}if(!e.DELETE_PROXY_CONNECTION)return r(p.Delete,"DELETE_PROXY_CONNECTION not configured"),{success:!1,error:"DELETE_PROXY_CONNECTION not configured"};const{data:c,error:d}=await mt(a,e.DELETE_PROXY_CONNECTION,{proxyID:o},t);if(d)return r(p.Delete,d),{success:!1,error:d};const u=c??{success:!1,error:"Failed to delete connection"};return u.success?(n(p.Delete,"Connection deleted successfully"),await i(),u):(r(p.Delete,u.error||"Failed to delete connection"),u)}:void 0}})(e,t);return{sourcesApi:n,destinationsApi:s,actionsApi:l,instrumentationRulesApi:c,dataStreamsApi:m,namespacesApi:E,k8sManifestApi:A,configApi:U,describeApi:F,tokensApi:k,metricsApi:M,serviceMapApi:H,profilingApi:x,collectorsApi:$,samplingApi:K,recommendationsApi:V,snapshotsApi:Y,connectionsApi:B,insightsApi:Lt(e,t),capabilities:a(()=>((e,t)=>{const a=t.platformType===I.K8s,r=a,n=a,o=t.platformType===I.Vm,s=!o,i=!(t.platformType===I.Connector);return{canBulkPersistSources:s&&!!e.PERSIST_SOURCES,canInstrumentNamespaces:n&&!!e.PERSIST_NAMESPACES,canFetchSnapshots:r&&!!e.GET_ALL_CLUSTER_SNAPSHOTS,canRecoverFromRollback:r&&!!e.RECOVER_FROM_ROLLBACK,canRestartWorkloads:r&&!!e.RESTART_WORKLOADS,canFetchPeerSources:!!e.GET_PEER_SOURCES,canFetchSourceLibraries:!!e.GET_SOURCE_LIBRARIES,canFetchInstrumentationInstructions:!!e.GET_INSTRUMENTATION_INSTRUCTIONS,canFetchK8sManifest:r&&!!e.GET_K8S_MANIFEST,canCreateDestination:!!e.CREATE_DESTINATION,canTestConnection:s&&!!e.TEST_DESTINATION_CONNECTION,canFetchDestinationCategories:!!e.GET_DESTINATION_CATEGORIES,canFetchPotentialDestinations:s&&!!e.GET_POTENTIAL_DESTINATIONS,canManageActions:i&&!!e.GET_ACTIONS,canCreateAction:i&&!!e.CREATE_ACTION,canFetchActionTypes:i&&!!e.GET_ACTION_TYPES,canManageInstrumentationRules:i&&!!e.GET_INSTRUMENTATION_RULES,canCreateInstrumentationRule:i&&!!e.CREATE_INSTRUMENTATION_RULE,canFetchInstrumentationRuleTypes:i&&!!e.GET_INSTRUMENTATION_RULE_TYPES,canApplyEffectiveConfig:s&&!!e.UPDATE_REMOTE_CONFIG,canFetchEffectiveConfig:!!e.GET_EFFECTIVE_CONFIG,canFetchConfigYamls:!!e.GET_CONFIG_YAMLS,canFetchProfiling:r&&!!e.GET_PROFILING_SLOTS||o&&(!!e.GET_SOURCE_PROFILING||!!e.GET_PROFILE_HOT_FUNCTIONS),canFetchCollectorInfo:r&&!!e.GET_GATEWAY_INFO,canManageSamplingRules:!!e.GET_SAMPLING_RULES,canManageInsightsPolicies:!!e.GET_INSIGHTS_POLICIES,canFetchInsights:!!e.GET_INSIGHTS_FINDINGS,canManageRecommendations:r&&!!e.GET_RECOMMENDATIONS}})(e,t),[e,t]),resetCache:o(async()=>{await r.cache.reset()},[r])}},Vt={type:"",disabled:!1,name:"",notes:"",signals:[],fields:{}},Yt=n(null),Bt=e=>e?.length?e.map(e=>!e.fromSources?.length&&e.from?{...e,fromSources:[e.from]}:e):e,Wt=(e,t)=>{const a=F(e??{}),r=a[M.ExtractAttribute];var n;r?.extractions?.length&&(r.extractions=r.extractions.map(e=>{const t=e;return{...t,method:t.method||(t.regex?.trim()?"regex":"preset")}})),a[M.LabelsAttributes]&&(a[M.LabelsAttributes]=Bt(a[M.LabelsAttributes])),a[M.AnnotationsAttributes]&&(a[M.AnnotationsAttributes]=Bt(a[M.AnnotationsAttributes])),a[M.UrlTemplatizationRulesGroups]&&(a[M.UrlTemplatizationRulesGroups]=(n=a[M.UrlTemplatizationRulesGroups],n?.length?n.map(e=>{const t=e.filterK8sWorkloadKind,a=e.filterK8sWorkloadName;return e.workloadFilters?.length||!t&&!a?e:{...e,workloadFilters:[{kind:t,name:a||void 0}]}}):n));const o=new Set((t?.fields||[]).filter(e=>e.componentType===H.SourceScopes).map(e=>e.name));return void 0!==a[M.Scopes]&&o.add(M.Scopes),o.forEach(e=>{const t=e;a[t]=Ce(a[t])}),a},jt="All row fields are required",qt="At least one row is required",zt=(e,t)=>!!e&&t.every(t=>{const a=e[t];return Array.isArray(a)?a.length>0:!("string"==typeof(r=a)?!r.trim():$(r));var r}),Qt=({children:t,sourceOptions:r=[],namespaceOptions:n=[]})=>{const[i,l]=s(null),c=U(Vt),d=o(e=>{c.resetFormData(),c.handleErrorChange(void 0,void 0,{}),e?.type&&c.handleFormChange("type",e.type),l(e)},[]),m=o((e,t)=>{const a=t??(r=e.type,k.find(e=>e.type===r)??null);var r;c.resetFormData((({type:e,name:t,notes:a,disabled:r,signals:n,fields:o},s)=>({type:e,name:t||"",notes:a||"",disabled:!!r,signals:n??[],fields:Wt(o,s)}))(e,a)),c.handleErrorChange(void 0,void 0,{}),l(a)},[]),S=o(()=>{if(!i)return{errorMessage:"No action type selected",preparedFormData:F(Vt)};const e=((e,t)=>{const a=F(e),r=a.fields||{},n=r[M.UrlTemplatizationRulesGroups];n?.length&&(r[M.UrlTemplatizationRulesGroups]=n.map(e=>({...e,templatizationRules:(e.templatizationRules||[]).filter(e=>!!e.template?.trim())})));const o=r[M.AttributeNamesToDelete];o?.length&&(r[M.AttributeNamesToDelete]=o.filter(e=>!!e?.trim()));const s=r[M.Renames];if(s){const e=Array.isArray(s)?s.map(e=>[e?.key??"",e?.value??""]):Object.entries(s);r[M.Renames]=Object.fromEntries(e.filter(([e,t])=>!!e?.trim()&&!!t?.trim()))}const i=new Set((t?.fields||[]).filter(e=>e.componentType===H.SourceScopes).map(e=>e.name));void 0!==r[M.Scopes]&&i.add(M.Scopes),i.forEach(e=>{const t=r[e];void 0!==t&&(r[e]=Oe(t)?null:t)});const l=r[M.ExtractAttribute];return l?.extractions?.length&&(r[M.ExtractAttribute]={extractions:l.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))}),a.fields=r,a})(c.formData,i),t={};return $(e.signals)&&(t.signals=u.FIELD_IS_REQUIRED),i.type&&Object.assign(t,((e,t,a)=>{const r={},n=t.fields||{},o=a.fields||{};switch(e){case x.K8sAttributes:{const e=!(n[M.CollectContainerAttributes]||n[M.CollectReplicaSetAttributes]||n[M.CollectWorkloadId]||n[M.CollectClusterId]),t=!n[M.LabelsAttributes]?.length,a=!n[M.AnnotationsAttributes]?.length;e&&t&&a&&(r[M.CollectContainerAttributes]="Enable at least one option or add a label/annotation row");const o=n[M.LabelsAttributes];o?.some(e=>!zt(e,["labelKey","attributeKey","fromSources"]))&&(r[M.LabelsAttributes]=jt);const s=n[M.AnnotationsAttributes];s?.some(e=>!zt(e,["annotationKey","attributeKey","fromSources"]))&&(r[M.AnnotationsAttributes]=jt);break}case x.AddClusterInfo:{const e=n[M.ClusterAttributes];e?.length?e.some(e=>!zt(e,["attributeName","attributeStringValue"]))&&(r[M.ClusterAttributes]=jt):r[M.ClusterAttributes]=qt;break}case x.DeleteAttributes:{const e=o[M.AttributeNamesToDelete]||[],t=n[M.AttributeNamesToDelete]||[];t.length?e.length>t.length&&(r[M.AttributeNamesToDelete]=jt):r[M.AttributeNamesToDelete]=e.length?jt:qt;break}case x.RenameAttributes:{const e=Object.entries(o[M.Renames]||{}),t=Object.entries(n[M.Renames]||{}),a=e.some(([e,t])=>!e?.trim()||!t?.trim());t.length?a&&(r[M.Renames]=jt):r[M.Renames]=e.length?jt:qt;break}case x.PiiMasking:{const e=n[M.PiiCategories];e?.length||(r[M.PiiCategories]="Select at least one attribute to mask");break}case x.URLTemplatization:{const e=n[M.UrlTemplatizationRulesGroups];(!e?.length||e.some(e=>!e.templatizationRules?.length))&&(r[M.UrlTemplatizationRulesGroups]="Each rule group needs at least one non-blank template");break}case x.ExtractAttribute:{const e=n[M.ExtractAttribute]?.extractions||[],t=o[M.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[M.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[M.ExtractAttribute]="Each new span attribute name must be unique")}else r[M.ExtractAttribute]=t.length?jt:qt;break}}return r})(i.type,e,c.formData)),c.handleErrorChange(void 0,void 0,t),{errorMessage:Object.keys(t).length>0?"Invalid form values":void 0,preparedFormData:e}},[c,i]),E=a(()=>({selectedOption:i,onSelectOption:d,loadAction:m,genericForm:c,validateFormData:S,sourceOptions:r,namespaceOptions:n}),[i,d,m,c,S,r,n]);return e(Yt.Provider,{value:E,children:t})},Xt=()=>{const e=r(Yt);if(!e)throw new Error("useActionFormContext must be used within an ActionFormContextProvider");return e},Jt={provider:"",permission:"",customCapabilities:{},authMethod:"",setupMethod:"",accountId:"",credentials:{},accessToken:"",secretId:"",name:""},Zt=n(null),ea=({children:t})=>{const{connectionsApi:r}=Kt(),{items:n}=r.useCloudConnectorProviders(),s=U(Jt),i=o(()=>{const e=F(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]),l=a(()=>({providers:n,genericForm:s,validateFormData:i}),[n,s,i]);return e(Zt.Provider,{value:l,children:t})},ta=()=>{const e=r(Zt);if(!e)throw new Error("useCloudConnectorFormContext must be used within a CloudConnectorFormContextProvider");return e},aa={name:""},ra=n(null),na=({children:t,defaultExcludeName:r=""})=>{const{dataStreams:n}=f(),[i,c]=s(void 0),[d,m]=s(r),[S,E]=s(void 0),[p,T]=s(null),I=l(null),y=U(aa),_=o(e=>{y.resetFormData({name:e}),y.handleErrorChange(void 0,void 0,{}),c(void 0),m(e),E(e),T(null),I.current=null},[]),h=o(()=>{const e=F(y.formData),t=(e=>{const t={};return e.name?K(e.name)||(t.name=u.ILLEGAL_K8S_LABEL):t.name=u.FIELD_IS_REQUIRED,t})(e);y.handleErrorChange(void 0,void 0,t);const a=Object.keys(t).length>0?u.REQUIRED_FIELDS:void 0;return c(a),{errorMessage:a,preparedFormData:e}},[y]),N=o(async e=>{const{errorMessage:t,preparedFormData:a}=h();if(t)return;const r=n.find(e=>e.name===a.name&&e.name!==d);if(r)return I.current=e,void T({preparedFormData:a,existingName:r.name,editingName:S});await e(a)},[h,n,d,S]),g=o(async()=>{const e=I.current,t=p?.preparedFormData;I.current=null,T(null),e&&t&&await e(t)},[p]),v=o(()=>{I.current=null,T(null)},[]),A=a(()=>({genericForm:y,loadDataStream:_,editingName:S,validateFormData:h,requestSubmit:N,pendingMerge:p,confirmMerge:g,cancelMerge:v,errorMessage:i,excludeName:d,setExcludeName:m}),[y,_,S,h,N,p,g,v,i,d]);return e(ra.Provider,{value:A,children:t})},oa=()=>{const e=r(ra);if(!e)throw new Error("useDataStreamFormContext must be used within a DataStreamFormContextProvider");return e},sa={type:"",name:"",currentStreamName:"",disabled:!1,exportedSignals:{logs:!1,metrics:!1,traces:!1,profiles:!1},fields:[]},ia={activeForm:null,onChangeActiveForm:()=>{},loadDestination:()=>{},genericForm:void 0,validateFormData:()=>({isOk:!1,preparedFormData:F(sa)}),unsavedDestinations:[],thisUnsavedDestination:void 0,setUnsavedDestinations:()=>{},addUnsavedDestination:()=>{},updateUnsavedDestination:()=>{},deleteUnsavedDestination:()=>{}},la=n(ia),ca=e=>e.filter(e=>!!e).map(e=>{const{name:t,componentType:a,componentProperties:r,displayName:n,initialValue:o,renderCondition:s}=e,i=a===H.Dropdown,l=W(r,{});return{componentType:a,renderCondition:s,name:t,title:n,value:o,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}}),da=({children:t})=>{const{selectedStreamName:r}=f(),{items:n}=Kt().destinationsApi.useDestinations(),[l,c]=s(null),[d,m]=s(ia.unsavedDestinations),S=a(()=>"number"==typeof l?.unsavedIdx?d[l.unsavedIdx]:void 0,[l,d]),E=o((e,t)=>{l&&(m(t=>[...t,{...e,option:l.option}]),c(t?e=>e?{...e,listType:V.UNSAVED,unsavedIdx:d.length}:null:null))},[l,d.length]),p=o((e,t,a)=>{l&&(m(a=>a.map((a,r)=>r===e?{...a,...t,option:l.option}:a)),c(a?e=>e?{...e,listType:V.UNSAVED}:null:null))},[l]),T=o(e=>{m(t=>t.filter((t,a)=>a!==e)),c(null)},[]),I=U({...sa,currentStreamName:r});i(()=>{if(!l)return;if(S)return void I.resetFormData({...S.formData});if(l.listType===V.EXISTS&&l.option.id){const e=n.find(e=>e.id===l.option.id);if(e)return void I.resetFormData({type:e.destinationType.type,name:e.name||e.destinationType.displayName,currentStreamName:r,disabled:!!e.disabled,exportedSignals:{logs:!!e.exportedSignals?.logs,metrics:!!e.exportedSignals?.metrics,traces:!!e.exportedSignals?.traces,profiles:!!e.exportedSignals?.profiles},fields:l.dynamicFields.map(e=>({key:e.name,value:e.value}))})}const e=Y(l.option.supportedSignals);I.resetFormData({type:l.option.type,name:l.option.displayName,currentStreamName:r,disabled:!1,exportedSignals:{logs:e.includes(B.Logs),metrics:e.includes(B.Metrics),traces:e.includes(B.Traces),profiles:e.includes(B.Profiles)},fields:l.dynamicFields.map(e=>({key:e.name,value:e.value}))})},[l,S]);const y=o(e=>{I.resetFormData(),I.handleErrorChange(void 0,void 0,{}),c(e?{...e,dynamicFields:e.option?.fields?ca(e.option.fields):[]}:null)},[]),_=o((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=W(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})):[]},o=ca(n.fields);c({listType:V.EXISTS,option:n,dynamicFields:o})},[]),h=o(()=>{const e=F(I.formData),t={};return l?.dynamicFields.forEach(({name:a,required:r})=>{if(r){const r=e.fields.find(e=>e.key===a)?.value;$(r)&&(t[a]=u.FIELD_IS_REQUIRED)}}),j(e.exportedSignals).length||(t.exportedSignals=u.FIELD_IS_REQUIRED),I.handleErrorChange(void 0,void 0,t),{errorMessage:0===Object.keys(t).length?void 0:"Invalid form values",preparedFormData:e}},[I,l]);return e(la.Provider,{value:{activeForm:l,onChangeActiveForm:y,loadDestination:_,genericForm:I,validateFormData:h,unsavedDestinations:d,thisUnsavedDestination:S,setUnsavedDestinations:m,addUnsavedDestination:E,updateUnsavedDestination:p,deleteUnsavedDestination:T},children:t})},ua=()=>r(la),ma=(e,t)=>{switch(e){case"http.response.status_code":case"http.status_code":default:return t;case"rpc.grpc.status_code":return`gRPC ${t}`}},Sa=({operationName:e,identityDimensions:t})=>{const a=e||"",r=t??[];return r.length?`${a} · ${r.map(e=>ma(e.key,e.value)).join(" · ")}`:a},Ea=e=>{const t=e.indexOf("\t"),a=t>=0?e.slice(0,t):"",r=t>=0?e.slice(t+1):e,{operationName:n,identityDimensions:o}=pa(r),s=Sa({operationName:n,identityDimensions:o});return a?`${a} ${s}`:s},pa=e=>{const t=e.indexOf(" [");if(t<0)return{operationName:e,identityDimensions:[]};const a=e.slice(0,t),r=[];let n=e.slice(t+1);for(;n.startsWith("[");){const e=n.indexOf("="),t=n.indexOf("]");if(e<0||t<0||e>t)break;r.push({key:n.slice(1,e),value:n.slice(e+1,t)}),n=n.slice(t+1)}return{operationName:a,identityDimensions:r}},Ta=e=>{const t=`${e.namespace}/${e.service}`,a=Sa(e);return a?`${t} · ${a}`:t},Ia=({operationName:a,identityDimensions:r,tagVariant:n=Q.Blue,fallback:o="-"})=>{const s=r??[];return t(q,{$gap:6,$alignItems:"center",children:[e(z,{label:a||o,variant:n}),s.map(t=>e(X,{text:t.key,children:e(z,{label:ma(t.key,t.value)})},`${t.key}=${t.value}`))]})};var fa,ya;(e=>{e.Global="global",e.Service="service",e.Transaction="transaction"})(fa||(fa={})),(e=>{e.Low="low",e.Medium="medium",e.High="high",e.Critical="critical"})(ya||(ya={}));const _a=e=>e.scope===fa.Global,ha=n(null),Na=(e,t)=>`${e}/${t}`,ga={scopeType:fa.Service,selectedKey:""},va=({children:t,services:r,transactions:n,existingScopeKeys:l,onSubmit:c})=>{const d=U(ga),[u,m]=s(!1),{scopeType:S,selectedKey:E}=d.formData,p=a(()=>{const e=new Set,t=[];for(const a of r){if(!a.namespace||!a.service)continue;const r=Na(a.namespace,a.service);e.has(r)||(e.add(r),t.push({id:r,label:r}))}return t.sort((e,t)=>e.label.localeCompare(t.label))},[r]),T=a(()=>n.filter(e=>!!e.id).map(e=>({id:e.id,label:Ta(e)})).sort((e,t)=>e.label.localeCompare(t.label)),[n]),I=S===fa.Service?p:T;i(()=>{const e=I.find(e=>!l.includes(e.id))?.id||I[0]?.id||"";E&&I.some(e=>e.id===E)||d.handleFormChange("selectedKey",e)},[I,l,E,d]);const f=!!E&&!u,y=o(async()=>{if(!f)return;const e=I.find(e=>e.id===E);m(!0);try{await c({scope:S,scopeKey:E,name:e?.label||E})}finally{m(!1)}},[f,I,E,S,c]),_=a(()=>({services:r,transactions:n,existingScopeKeys:l,genericForm:d,serviceOptions:p,transactionOptions:T,options:I,canCreate:f,submitting:u,handleSubmit:y}),[r,n,l,d,p,T,I,f,u,y]);return e(ha.Provider,{value:_,children:t})},Aa=()=>{const e=r(ha);if(!e)throw new Error("useDetectionOverrideFormContext must be used within a DetectionOverrideFormContextProvider");return e},Ra=[{id:ya.Low,label:J},{id:ya.Medium,label:Z},{id:ya.High,label:ee},{id:ya.Critical,label:te}],Oa={[ya.Low]:20,[ya.Medium]:40,[ya.High]:60,[ya.Critical]:75},Ca=n(null),Da=({children:t,policy:r,onSave:n,onDelete:l})=>{const c=U(r),[d,u]=s(!1),[m,S]=s(!1);i(()=>{c.resetFormData(r)},[r]);const E=c.isFormDirty,p=d||m,T=E&&!p,I=E&&!p,f=o(e=>{const t=e[0]||ya.Medium,a=c.formData;c.handleFormChange(void 0,void 0,{...a,riskLevel:t,fireAtScore:Oa[t],summary:_a(a)?a.summary:ae(Oa[t],a.signalWeightOverrideCount)})},[c]),y=o(e=>{const t=c.formData;c.handleFormChange(void 0,void 0,{...t,signalWeights:e.signalWeights,enricherLists:e.enricherLists,signalWeightOverrideCount:e.overrideCount,summary:_a(t)?t.summary:ae(t.fireAtScore,e.overrideCount)})},[c]),_=o(async()=>{if(T){u(!0);try{await n(c.formData)}finally{u(!1)}}},[c.formData,T,n]),h=o(()=>{c.resetFormData(r)},[c,r]),N=o(async()=>{if(l){S(!0);try{await l()}finally{S(!1)}}},[l]),g=a(()=>({policy:r,genericForm:c,isDirty:E,canUpdate:T,canDiscard:I,isSaving:d,isDeleting:m,handleSave:_,handleDiscard:h,handleDelete:N,handleRiskLevelChange:f,handleSignalWeightsChange:y}),[r,c,E,T,I,d,m,_,h,N,f,y]);return e(Ca.Provider,{value:g,children:t})},Ga=()=>{const e=r(Ca);if(!e)throw new Error("useDetectionPolicyFormContext must be used within a DetectionPolicyFormContextProvider");return e},ba=e=>({id:e.scopeKey,scopeKey:e.scopeKey,rules:e.rules.map(e=>({key:e.key,label:e.label,allowlistCount:e.allowlist?.length??0,isAuto:e.origin===le})),mode:Pa(e)}),La=e=>{const t=e.indexOf("/");return t<0?{namespace:"",service:e}:{namespace:e.slice(0,t),service:e.slice(t+1)}},wa=(e,t)=>e.rules.find(e=>e.key===t)?.allowlist?.filter(Boolean)??[],Pa=e=>e.rules[0]?.mode||re.Suggest,Ua=(...e)=>{const t=new Set,a=[];for(const r of e)for(const e of r??[])e&&!t.has(e)&&(t.add(e),a.push(e));return a},Fa=[""],ka={mode:re.Enforce,callers:[],callees:[],egress:[],transactions:[],extraCallers:Fa,extraCallees:Fa,extraEgress:Fa},Ma=e=>({mode:Pa(e),callers:wa(e,ne),callees:wa(e,oe),egress:wa(e,se),transactions:wa(e,ie),extraCallers:Fa,extraCallees:Fa,extraEgress:Fa}),Ha=e=>({mode:re.Enforce,callers:e?.callers??[],callees:e?.callees??[],egress:e?.egress??[],transactions:e?.transactions??[],extraCallers:Fa,extraCallees:Fa,extraEgress:Fa}),xa=e=>e.map(e=>e.trim()).filter(Boolean),$a=n(null),Ka=(e,t,a)=>a?Array.from(new Set([...e,t])):e.filter(e=>e!==t),Va=({children:t,profile:r,profileLoading:n=!1,serviceNames:l=[],guardrail:c=null,namespace:d="",service:u="",onSubmit:m,onDelete:S})=>{const E=!!c,p=U(ka),[T,I]=s(!1);i(()=>{c?p.resetFormData(Ma(c)):p.resetFormData(Ha(r))},[c,r]);const f=a(()=>c?La(c.scopeKey):null,[c]),y=E?f?.namespace||"":d,_=E?f?.service||"":u,{mode:h,callers:N,callees:g,egress:v,transactions:A,extraCallers:R,extraCallees:O,extraEgress:C}=p.formData,D=a(()=>l.filter(e=>e&&e!==_).sort((e,t)=>e.localeCompare(t)),[l,_]),G=a(()=>Ua(D,c?wa(c,ne):void 0,r?.callers),[D,c,r?.callers]),b=a(()=>Ua(D,c?wa(c,oe):void 0,r?.callees),[D,c,r?.callees]),L=a(()=>c?Ua(wa(c,se),r?.egress):r?.egress??[],[c,r?.egress]),w=a(()=>c?Ua(wa(c,ie),r?.transactions):r?.transactions??[],[c,r?.transactions]),P=a(()=>xa(R),[R]),F=a(()=>xa(O),[O]),k=a(()=>xa(C),[C]),M=a(()=>c?{callers:G.length>0||P.length>0||c.rules.some(e=>e.key===ne),callees:b.length>0||F.length>0||c.rules.some(e=>e.key===oe),egress:L.length>0||k.length>0||c.rules.some(e=>e.key===se),transactions:w.length>0||c.rules.some(e=>e.key===ie)}:{callers:G.length>0||P.length>0,callees:b.length>0||F.length>0,egress:L.length>0||k.length>0,transactions:(r?.transactions?.length??0)>0},[c,r,G,b,L,w,P,F,k]),H=p.isFormDirty,x=!!y&&!!_,$=!E&&x&&!T,K=E&&!T&&H,V=E&&H&&!T,Y=E&&!!S,B=o(()=>{E&&p.resetFormData(c?Ma(c):Ha(r))},[E,c,r,p]),W=o(e=>p.handleFormChange("mode",e),[p]),j=o(e=>p.handleFormChange("extraCallers",e),[p]),q=o(e=>p.handleFormChange("extraCallees",e),[p]),z=o(e=>p.handleFormChange("extraEgress",e),[p]),Q=o((e,t)=>p.handleFormChange("callers",Ka(p.formData.callers,e,t)),[p]),X=o((e,t)=>p.handleFormChange("callees",Ka(p.formData.callees,e,t)),[p]),J=o((e,t)=>p.handleFormChange("egress",Ka(p.formData.egress,e,t)),[p]),Z=o((e,t)=>p.handleFormChange("transactions",Ka(p.formData.transactions,e,t)),[p]),ee=o(e=>p.handleFormChange("callers",e?[...G]:[]),[p,G]),te=o(e=>p.handleFormChange("callees",e?[...b]:[]),[p,b]),ae=o(e=>p.handleFormChange("egress",e?[...L]:[]),[p,L]),re=o(e=>p.handleFormChange("transactions",e?[...w]:[]),[p,w]),le=o(()=>x?(e=>{const t=e.governed??{},a=e.origins??{},r=[{key:ne,label:"Allowed callers",allowlist:e.callers,keep:e.callers.length>0||!!t.callers},{key:oe,label:"Allowed callees",allowlist:e.callees,keep:e.callees.length>0||!!t.callees},{key:se,label:"Allowed egress",allowlist:e.egress,keep:e.egress.length>0||!!t.egress},{key:ie,label:"Allowed transactions",allowlist:e.transactions,keep:e.transactions.length>0||!!t.transactions}].filter(e=>e.keep).map(t=>({key:t.key,label:t.label,allowlist:t.allowlist,mode:e.mode,origin:a[t.key]||void 0}));return{scope:e.scope,scopeKey:e.scopeKey,rules:r}})({scope:E&&c?c.scope:ce.Service,scopeKey:E&&c?c.scopeKey:`${y}/${_}`,mode:h,callers:Ua(N,P),callees:Ua(g,F),egress:Ua(v,k),transactions:A,governed:M,origins:c?Object.fromEntries(c.rules.map(e=>[e.key,e.origin])):void 0}):null,[x,E,c,y,_,h,N,g,v,A,P,F,k,M]),de=o(async()=>{if(!(E?K:$))return;const e=le();if(e){I(!0);try{await m(e)}finally{I(!1)}}},[E,K,$,le,m]),ue=o(async()=>{if(S&&c&&!T){I(!0);try{await S(c.scopeKey)}finally{I(!1)}}},[S,c,T]),me=a(()=>({profile:r,profileLoading:n,guardrail:c,isEdit:E,namespace:y,service:_,genericForm:p,isDirty:H,isSubmitting:T,canCreate:$,canUpdate:K,canDiscard:V,canDelete:Y,handleDiscard:B,handleSubmit:de,handleDelete:ue,setMode:W,callerItems:G,calleeItems:b,egressItems:L,transactionItems:w,setExtraCallers:j,setExtraCallees:q,setExtraEgress:z,toggleCaller:Q,toggleCallee:X,toggleEgress:J,toggleTransaction:Z,toggleAllCallers:ee,toggleAllCallees:te,toggleAllEgress:ae,toggleAllTransactions:re}),[r,n,c,E,y,_,p,H,T,$,K,V,Y,B,de,ue,W,G,b,L,w,j,q,z,Q,X,J,Z,ee,te,ae,re]);return e($a.Provider,{value:me,children:t})},Ya=()=>{const e=r($a);if(!e)throw new Error("useGuardrailFormContext must be used within a GuardrailFormContextProvider");return e};var Ba;(e=>{e.Minutes="minutes",e.Hours="hours",e.Days="days"})(Ba||(Ba={}));const Wa=e=>e.scope===ce.Global,ja=[de.D1_call_edges,de.D2_egress,de.D3_latency,de.D5_libraries,de.D7_db_access,de.D8_payload_size],qa=n(null),za=(e,t)=>`${e}/${t}`,Qa=({children:t,services:r,transactions:n,existingOverrides:l,initialClass:c,onSubmit:d})=>{const u=U((e=>({deviationClass:e||ja[0],scopeType:ce.Service,selectedKey:""}))(c)),[m,S]=s(!1),{deviationClass:E,scopeType:p,selectedKey:T}=u.formData;i(()=>{c&&u.handleFormChange("deviationClass",c)},[c,u]);const I=a(()=>l.filter(e=>e.class===E).map(e=>e.scopeKey),[l,E]),f=a(()=>{const e=new Set,t=[];for(const a of r){if(!a.namespace||!a.service)continue;const r=za(a.namespace,a.service);e.has(r)||(e.add(r),t.push({id:r,label:r}))}return t.sort((e,t)=>e.label.localeCompare(t.label))},[r]),y=a(()=>n.filter(e=>!!e.id).map(e=>({id:String(e.id),label:Ta(e)})).sort((e,t)=>e.label.localeCompare(t.label)),[n]),_=p===ce.Service?f:y;i(()=>{const e=_.find(e=>!I.includes(e.id))?.id||_[0]?.id||"";T&&_.some(e=>e.id===T)||u.handleFormChange("selectedKey",e)},[_,I,T,u]);const h=!!E&&!!T&&!m,N=o(async()=>{if(!h)return;const e=_.find(e=>e.id===T);S(!0);try{await d({class:E,scope:p,scopeKey:T,name:e?.label||T})}finally{S(!1)}},[h,_,T,E,p,d]),g=a(()=>({services:r,transactions:n,existingOverrides:l,genericForm:u,options:_,canCreate:h,submitting:m,handleSubmit:N}),[r,n,l,u,_,h,m,N]);return e(qa.Provider,{value:g,children:t})},Xa=()=>{const e=r(qa);if(!e)throw new Error("useLearningOverrideFormContext must be used within a LearningOverrideFormContextProvider");return e};let Ja=0;const Za=()=>"cond-"+ ++Ja,er=(e,t,a)=>`${e}:${t||"global"}:${a}`,tr=(e,t)=>{switch(t){case Ba.Days:return Math.max(0,Math.round(24*e*60));case Ba.Hours:return Math.max(0,Math.round(60*e));case Ba.Minutes:default:return Math.max(0,Math.round(e))}},ar=e=>e<=0?{value:0,unit:Ba.Minutes}:e%1440==0?{value:e/1440,unit:Ba.Days}:e%60==0?{value:e/60,unit:Ba.Hours}:{value:e,unit:Ba.Minutes},rr=e=>{const{value:t,unit:a}=ar(e);return a===Ba.Days?7===t?"1w":`${t}d`:a===Ba.Hours?`${t}h`:`${t}m`},nr=e=>{const{value:t,unit:a}=ar(e);return a===Ba.Days?1===t?"1 day":`${t} days`:a===Ba.Hours?1===t?"1 hour":`${t} hours`:1===t?"1 minute":`${t} minutes`},or=e=>{switch(e.type){case me.StableObservations:return`Unchanged for ${e.value} observations`;case me.StableDuration:return`unchanged for ${rr(tr(e.value,e.durationUnit))}`;case me.MinObservations:return`Min ${e.value} observations`;case me.MinDuration:return`min ${rr(tr(e.value,e.durationUnit))}`;default:return""}},sr=e=>{switch(e.type){case me.StableObservations:return`unchanged for ${e.value} observations`;case me.StableDuration:return`unchanged for ${nr(tr(e.value,e.durationUnit))}`;case me.MinObservations:return`at least ${e.value} observations`;case me.MinDuration:return`at least ${nr(tr(e.value,e.durationUnit))}`;default:return""}},ir=(e,t,a)=>t.length?((e,t,a)=>{if(!e.length)return"";const r=e.map((e,t)=>0===t?e.charAt(0).toUpperCase()+e.slice(1):0===t?e:e.charAt(0).toLowerCase()+e.slice(1));if(1===r.length)return r[0];const n=t===Ee.All?" AND ":t===Ee.KOf?` (${ue} ${a??1}) `:" OR ";return r.join(n)})(t.map(or),e,a):"Falls back to count-only default",lr=e=>{const{value:t,durationUnit:a}=(e=>{switch(e.type){case me.StableObservations:return{value:e.stableObservations??0,durationUnit:Ba.Hours};case me.MinObservations:return{value:e.minObservations??0,durationUnit:Ba.Hours};case me.StableDuration:{const t=e.stableMinutes??0,a=ar(t);return{value:a.value,durationUnit:a.unit}}case me.MinDuration:{const t=e.minDurationMinutes??0,a=ar(t);return{value:a.value,durationUnit:a.unit}}default:return{value:0,durationUnit:Ba.Hours}}})(e);return{key:Za(),type:e.type,value:t,durationUnit:a}},cr=e=>{const t=tr(e.value,e.durationUnit);switch(e.type){case me.StableObservations:return{type:e.type,minObservations:null,minDurationMinutes:null,stableObservations:e.value,stableMinutes:null};case me.MinObservations:return{type:e.type,minObservations:e.value,minDurationMinutes:null,stableObservations:null,stableMinutes:null};case me.StableDuration:return{type:e.type,minObservations:null,minDurationMinutes:null,stableObservations:null,stableMinutes:t};case me.MinDuration:return{type:e.type,minObservations:null,minDurationMinutes:t,stableObservations:null,stableMinutes:null};default:return{type:e.type}}},dr=(e=me.StableObservations)=>({key:Za(),type:e,value:Se(e)?1:100,durationUnit:Ba.Hours}),ur=e=>{const t=(e.conditions??[]).map(lr),a=e.mode,r=e.minMatches??null,n=e.scope,o=pe[e.class],s=n===ce.Global?o:`${o} · ${e.scopeKey}`;return{id:er(n,e.scopeKey,e.class),name:s,class:e.class,mode:a,conditions:t,minMatches:r,scope:n,scopeKey:e.scopeKey,summary:ir(a,t,r)}},mr=(e,t)=>{if(!t.length)return e;const a=new Map(t.map(e=>[String(e.id),e]));return e.map(e=>{if(e.scope!==ce.Transaction)return e;const t=a.get(e.scopeKey);return t?{...e,name:`${pe[e.class]} · ${Ta(t)}`}:e})},Sr=e=>({class:e.class,mode:e.mode,conditions:e.conditions.map(cr),minMatches:e.mode===Ee.KOf?e.minMatches??1:null,scope:e.scope,scopeKey:e.scopeKey}),Er=({scope:e,scopeKey:t,source:a,displayName:r})=>{const n=a.conditions.map(e=>({...e,key:Za()})),o=r||t;return{id:er(e,t,a.class),name:`${pe[a.class]} · ${o}`,class:a.class,mode:a.mode,conditions:n,minMatches:a.minMatches,scope:e,scopeKey:t,summary:ir(a.mode,n,a.minMatches)}},pr=e=>{const t=[dr()],a=Ee.Any;return{id:er(ce.Global,"",e),name:pe[e],class:e,mode:a,conditions:t,minMatches:null,scope:ce.Global,scopeKey:"",summary:ir(a,t,null)}},Tr=e=>({...e,summary:ir(e.mode,e.conditions,e.minMatches)}),Ir=n(null),fr=({children:t,policy:r,onSave:n,onDelete:l})=>{const c=U(r),[d,u]=s(!1),[m,S]=s(!1),E=c.formData,p=!Wa(E);i(()=>{c.resetFormData(r)},[r]);const T=c.isFormDirty,I=d||m,f=T&&!I,y=T&&!I,_=a(()=>((e,t,a)=>{if(!t.length)return{parts:["Falls back to the count-only default"],joiner:null};const r=t.map(sr).map((e,t)=>0===t?e:e.charAt(0).toLowerCase()+e.slice(1));return 1===r.length?{parts:r,joiner:null}:{parts:r,joiner:e===Ee.All?"AND":e===Ee.KOf?`${ue} ${a??1}`:"OR"}})(E.mode,E.conditions,E.minMatches),[E.mode,E.conditions,E.minMatches]),h=a(()=>ir(E.mode,E.conditions,E.minMatches),[E.mode,E.conditions,E.minMatches]),N=o(e=>{c.handleFormChange(void 0,void 0,Tr({...c.formData,conditions:e(c.formData.conditions)}))},[c]),g=o(e=>{const t=e[0]||Ee.Any,a=c.formData;c.handleFormChange(void 0,void 0,Tr({...a,mode:t,minMatches:t===Ee.KOf?a.minMatches??1:null}))},[c]),v=o((e,t)=>{N(a=>a.map(a=>a.key===e?((e,t)=>{const a=Se(e.type),r=Se(t);return a===r?{...e,type:t}:{...e,type:t,value:r?1:100,durationUnit:e.durationUnit||Ba.Hours}})(a,t):a))},[N]),A=o((e,t)=>{const a=Number(t);N(t=>t.map(t=>t.key===e?{...t,value:Number.isFinite(a)?a:0}:t))},[N]),R=o((e,t)=>{N(a=>a.map(a=>a.key===e?{...a,durationUnit:t}:a))},[N]),O=o(e=>{N(t=>t.filter(t=>t.key!==e))},[N]),C=o(()=>{N(e=>[...e,dr()])},[N]),D=o(e=>{c.handleFormChange(void 0,void 0,Tr({...c.formData,minMatches:Math.max(1,e||1)}))},[c]),G=o(async()=>{if(f){u(!0);try{await n(Tr(c.formData))}finally{u(!1)}}},[c.formData,f,n]),b=o(()=>{c.resetFormData(r)},[c,r]),L=o(async()=>{if(l){S(!0);try{await l()}finally{S(!1)}}},[l]),w=a(()=>({policy:r,genericForm:c,isDirty:T,canUpdate:f,canDiscard:y,isOverride:p,isSaving:d,isDeleting:m,promotesWhen:_,currently:h,handleModeChange:g,handleConditionTypeChange:v,handleConditionValueChange:A,handleDurationUnitChange:R,handleRemoveCondition:O,handleAddCondition:C,handleMinMatchesChange:D,handleSave:G,handleDiscard:b,handleDelete:L}),[r,c,T,f,y,p,d,m,_,h,g,v,A,R,O,C,D,G,b,L]);return e(Ir.Provider,{value:w,children:t})},yr=()=>{const e=r(Ir);if(!e)throw new Error("useLearningPolicyFormContext must be used within a LearningPolicyFormContextProvider");return e},_r={examplesPerTransaction:0,exampleSampleIntervalSeconds:0,observationRetentionDays:0,maxResidentTransactions:0,maxBaselineSetMembers:0,flushIntervalSeconds:0,autoTransactionGuardrail:!0,identityDimensions:[...Te]},hr=e=>e.map(e=>({key:e.key.trim(),enabled:e.enabled})).filter(e=>e.key.length>0),Nr=e=>({examplesPerTransaction:e.sampling.examplesPerTransaction,exampleSampleIntervalSeconds:e.sampling.exampleSampleIntervalSeconds,observationRetentionDays:e.retention.observationRetentionDays,maxResidentTransactions:e.capacity.maxResidentTransactions,maxBaselineSetMembers:e.capacity.maxBaselineSetMembers,flushIntervalSeconds:e.writeback.flushIntervalSeconds,autoTransactionGuardrail:e.detection?.autoTransactionGuardrail??!0,identityDimensions:e.identity?.transactionIdentityDimensions?.length?e.identity.transactionIdentityDimensions.map(e=>({key:e.key,enabled:e.enabled})):[...Te]}),gr=n(null),vr=({children:t,settings:r,onSave:n})=>{const l=U(_r),[c,d]=s(!1),[u,m]=s(!1),S=a(()=>r?JSON.stringify(Nr(r)):"",[r]);i(()=>{r&&S&&l.resetFormData(Nr(r))},[S]);const E=l.formData,p=!!r&&l.isFormDirty,T=p&&(e=>{const t=e.identityDimensions.filter(e=>e.enabled&&e.key.trim()).length,a=e.identityDimensions.map(e=>e.key.trim()).filter(Boolean),r=new Set(a);return[e.examplesPerTransaction,e.exampleSampleIntervalSeconds,e.observationRetentionDays,e.maxResidentTransactions,e.maxBaselineSetMembers,e.flushIntervalSeconds].every(e=>Number.isFinite(e)&&e>0)&&t<=Ie&&r.size===a.length})(E)&&!c,I=p&&!c,f=E.identityDimensions.filter(e=>e.enabled&&e.key.trim()).length,y=o(async e=>{if(r){d(!0);try{await n(((e,t)=>({sampling:{examplesPerTransaction:e.examplesPerTransaction,exampleSampleIntervalSeconds:e.exampleSampleIntervalSeconds},retention:{observationRetentionDays:e.observationRetentionDays},capacity:{maxResidentTransactions:e.maxResidentTransactions,maxBaselineSetMembers:e.maxBaselineSetMembers},writeback:{flushIntervalSeconds:e.flushIntervalSeconds},detection:{autoTransactionGuardrail:e.autoTransactionGuardrail},identity:{transactionIdentityDimensions:hr(e.identityDimensions)},resetTransactions:t||void 0}))(E,e))}finally{d(!1),m(!1)}}},[r,E,n]),_=o(async()=>{r&&T&&(((e,t)=>{const a=Nr(t);return r=hr(e.identityDimensions),n=hr(a.identityDimensions),!(r.length===n.length&&r.every((e,t)=>e.key===n[t].key&&e.enabled===n[t].enabled));var r,n})(E,r)?m(!0):await y(!1))},[r,T,E,y]),h=o(()=>{r&&I&&l.resetFormData(Nr(r))},[r,I,l]),N=o((e,t)=>{l.handleFormChange(void 0,void 0,{...l.formData,identityDimensions:l.formData.identityDimensions.map((a,r)=>r===e?{...a,...t}:a)})},[l]),g=o(e=>{l.handleFormChange(void 0,void 0,{...l.formData,identityDimensions:l.formData.identityDimensions.filter((t,a)=>a!==e)})},[l]),v=o(()=>{const e=l.formData.identityDimensions.filter(e=>e.enabled&&e.key.trim()).length;l.handleFormChange(void 0,void 0,{...l.formData,identityDimensions:[...l.formData.identityDimensions,{key:"",enabled:e<Ie}]})},[l]),A=a(()=>({settings:r,genericForm:l,isDirty:p,canUpdate:T,canDiscard:I,isSaving:c,enabledDimCount:f,identityConfirmOpen:u,setIdentityConfirmOpen:m,handleSave:_,handleDiscard:h,persist:y,updateDim:N,removeDim:g,addDim:v}),[r,l,p,T,I,c,f,u,_,h,y,N,g,v]);return e(gr.Provider,{value:A,children:t})},Ar=()=>{const e=r(gr);if(!e)throw new Error("useSystemSettingsFormContext must be used within a SystemSettingsFormContextProvider");return e},Rr={disabled:!1,ruleName:"",notes:"",sourceScopes:De(),workloads:null,instrumentationLibraries:null,payloadCollection:null,codeAttributes:null,headersCollection:null,customInstrumentations:null,networkMetrics:null},Or=n(null),Cr=({children:t,sourceOptions:r=[],namespaceOptions:n=[]})=>{const[i,l]=s(null),c=U(Rr),d=o(e=>{c.resetFormData(),c.handleErrorChange(void 0,void 0,{}),l(e)},[]),u=o((e,t)=>{var a;c.resetFormData((({ruleName:e,notes:t,disabled:a,sourceScopes:r,instrumentationLibraries:n,payloadCollection:o,codeAttributes:s,headersCollection:i,customInstrumentations:l,networkMetrics:c,workloads:d})=>({ruleName:e||"",notes:t||"",disabled:!!a,sourceScopes:Ce(r),workloads:d??null,instrumentationLibraries:n??null,payloadCollection:o??null,codeAttributes:s??null,headersCollection:i??null,customInstrumentations:l??null,networkMetrics:c??null}))(e)),c.handleErrorChange(void 0,void 0,{}),l(t??(a=e.type,fe.find(e=>e.type===a)??null))},[]),m=o(()=>{if(!i)return{errorMessage:"No rule type selected",preparedFormData:F(Rr)};const e=((e,t)=>{const a=F(e),{workloads:r,...n}=a,o={...n,sourceScopes:Oe(a.sourceScopes)?null:a.sourceScopes,...r?.length?{workloads:r}:{}};return o.headersCollection?.[ye.HeaderKeys]?.length&&(o.headersCollection[ye.HeaderKeys]=o.headersCollection[ye.HeaderKeys].map(e=>e.trim()).filter(e=>e)),o.customInstrumentations?.[_e.Golang]?.length&&(o.customInstrumentations[_e.Golang]=o.customInstrumentations[_e.Golang].map(e=>new he(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})),o.customInstrumentations?.[_e.Java]?.length&&(o.customInstrumentations[_e.Java]=o.customInstrumentations[_e.Java].map(e=>new Ne(e.className,e.methodName)).filter(e=>{return t=e,!(!t.className?.trim()&&!t.methodName?.trim());var t})),o.customInstrumentations?.[_e.Php]?.length&&(o.customInstrumentations[_e.Php]=o.customInstrumentations[_e.Php].map(e=>new ge(e.className,e.functionName)).filter(e=>{return t=e,!(!t.className?.trim()&&!t.functionName?.trim());var t})),t===ve.NetworkMetrics&&(o.networkMetrics=!0),o})(c.formData,i.type),t=((e,t)=>{const a={};switch(e){case ve.CodeAttributes:Object.values(t.codeAttributes||{}).some(e=>null!=e)||(a.codeAttributes="Code attributes are required");break;case ve.PayloadCollection:Object.values(t.payloadCollection||{}).some(e=>null!=e)||(a.payloadCollection="Payload collection are required");break;case ve.HeadersCollection:t.headersCollection?.[ye.HeaderKeys]?.length||(a.headersCollection="Header keys are required");break;case ve.CustomInstrumentation:{const e=t.customInstrumentations?.[_e.Golang]||[],r=t.customInstrumentations?.[_e.Java]||[],n=t.customInstrumentations?.[_e.Php]||[];if(!e.length&&!r.length&&!n.length){a.customInstrumentations="Custom instrumentation are required";break}const o=e.findIndex(e=>!new he(e.packageName,e.functionName,e.receiverName,e.receiverMethodName).Verify());if(-1!==o){a.customInstrumentations=`Golang probe #${o+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 Ne(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}const i=n.findIndex(e=>!new ge(e.className,e.functionName).Verify());if(-1!==i){a.customInstrumentations=`PHP probe #${i+1} is invalid: function name is required`;break}break}}return a})(i.type,e);return c.handleErrorChange(void 0,void 0,t),{errorMessage:Object.keys(t).length>0?"Invalid form values":void 0,preparedFormData:e}},[c,i]),S=a(()=>({selectedOption:i,onSelectOption:d,loadRule:u,genericForm:c,validateFormData:m,sourceOptions:r,namespaceOptions:n}),[i,d,u,c,m,r,n]);return e(Or.Provider,{value:S,children:t})},Dr=()=>{const e=r(Or);if(!e)throw new Error("useRuleFormContext must be used within a RuleFormContextProvider");return e};var Gr;(e=>{e.Create="create",e.View="view",e.EditAutoNoisy="edit-auto-noisy",e.EditAutoCostReduction="edit-auto-cost-reduction",e.EditAutoHighlyRelevant="edit-auto-highly-relevant"})(Gr||(Gr={}));const br=n(null),Lr=["50","25","10","1"];function wr(e){const t=String(e);return Lr.includes(t)?t:"custom"}const Pr=({category:t,sourceOptions:r=[],namespaceOptions:n=[],children:l})=>{const{formData:c,handleFormChange:d,resetFormData:u}=U(Pe(t)),[m,S]=s(null);i(()=>{u(Pe(t)),S(null)},[t]);const E=o(e=>{S(null),d(void 0,void 0,{...c,...e})},[c,d]),p=o(()=>{u(Pe(t)),S(null)},[t,u]),T=a(()=>({formType:Gr.Create,category:t,formData:c,handleChange:E,resetForm:p,duplicateWarning:m,setDuplicateWarning:S,sourceOptions:r,namespaceOptions:n}),[t,c,E,p,m,r,n]);return e(br.Provider,{value:T,children:l})},Ur=({data:t,defaultEditMode:r,sourceOptions:n=[],namespaceOptions:c=[],children:d})=>{const[u,m]=s(!1),{formData:S,handleFormChange:E,resetFormData:p}=U(void 0),T=l(null),[I,f]=s(null);i(()=>{t!==T.current&&(T.current=t,t&&r?(p(we(t)),f(null),m(!0)):(m(!1),f(null)))},[t,r]);const y=o(e=>{f(null),E(void 0,void 0,{...S,...e})},[S,E]),_=o(()=>{t&&(p(we(t)),f(null),m(!0))},[t,p]),h=o(()=>{m(!1),f(null)},[]),N=a(()=>({formType:Gr.View,data:t,isEditing:u,formData:S,handleChange:y,handleEdit:_,handleCancelEdit:h,duplicateWarning:I,setDuplicateWarning:f,sourceOptions:n,namespaceOptions:c}),[t,u,S,y,_,h,I,n,c]);return e(br.Provider,{value:N,children:d})};function Fr(e){const[t,r]=s(()=>0===e?"all":"sample"),[n,o]=s(()=>wr(e)),[l,c]=s(()=>"custom"===wr(e)?String(e):"");i(()=>{r(0===e?"all":"sample");const t=wr(e);o(t),c("custom"===t?String(e):"")},[e]);const d=a(()=>"all"===t?0:"custom"===n?Number(l)||0:Number(n),[t,n,l]);return{percentageMode:t,setPercentageMode:r,percentagePreset:n,setPercentagePreset:o,customPercentage:l,setCustomPercentage:c,resolvedPercentage:d}}const kr=({enabled:t,keepPercentage:r,children:n})=>{const[o,l]=s(t),c=Fr(r);i(()=>{l(t)},[t]);const d=a(()=>Le({enabled:o,keepPercentage:c.resolvedPercentage}),[o,c.resolvedPercentage]),u=a(()=>({formType:Gr.EditAutoNoisy,localEnabled:o,setLocalEnabled:l,...c,summary:d}),[o,c,d]);return e(br.Provider,{value:u,children:n})},Mr=({enabled:t,dropPercentage:r,children:n})=>{const[o,l]=s(t),c=Fr(r);i(()=>{l(t)},[t]);const d=a(()=>be(o?{disabled:!1,percentageAtMost:c.resolvedPercentage}:null),[o,c.resolvedPercentage]),u=a(()=>({formType:Gr.EditAutoCostReduction,localEnabled:o,setLocalEnabled:l,...c,summary:d}),[o,c,d]);return e(br.Provider,{value:u,children:n})},Hr=({enabled:t,children:r})=>{const[n,o]=s(t);i(()=>{o(t)},[t]);const l=a(()=>Ge(n?{disabled:!1}:null),[n]),c=a(()=>({formType:Gr.EditAutoHighlyRelevant,localEnabled:n,setLocalEnabled:o,summary:l}),[n,l]);return e(br.Provider,{value:c,children:r})},xr=t=>{switch(t.formType){case Gr.Create:return e(Pr,{...t});case Gr.View:return e(Ur,{...t});case Gr.EditAutoNoisy:return e(kr,{...t});case Gr.EditAutoCostReduction:return e(Mr,{...t});case Gr.EditAutoHighlyRelevant:return e(Hr,{...t})}};function $r(e){const t=r(br);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 Kr={otelServiceName:"",currentStreamName:""},Vr=n(null),Yr=({children:t})=>{const[r,n]=s(void 0),i=U(Kr),l=o(e=>{i.resetFormData((({serviceName:e,id:t})=>({otelServiceName:e||t.name||"",currentStreamName:""}))(e)),i.handleErrorChange(void 0,void 0,{}),n(void 0)},[]),c=o(()=>{const e=F(i.formData);return i.handleErrorChange(void 0,void 0,{}),n(void 0),{errorMessage:void 0,preparedFormData:e}},[i]),d=a(()=>({loadSource:l,genericForm:i,validateFormData:c,errorMessage:r}),[l,i,c,r]);return e(Vr.Provider,{value:d,children:t})},Br=()=>{const e=r(Vr);if(!e)throw new Error("useSourceEditFormContext must be used within a SourceEditFormContextProvider");return e},Wr=new Set([Ae.StaticPod]),jr=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}},qr=(e,t,a)=>{if(t&&!e.name.toLowerCase().includes(t.toLowerCase()))return!1;if(a.showOnlySelected){const{isAllSourced:t,isSomeSourced:a,isFutureApps:r}=jr(e);return t||a||r}return!0},zr=(e,t,a)=>!(t&&!e.name.toLowerCase().includes(t.toLowerCase()))&&(!a.showOnlySelected||e.selected),Qr=n({snapshots:null,setSnapshots:()=>{},isFetching:!1,setIsFetching:()=>{},formData:[],handleSourceChange:()=>{},handleSelectAll:()=>{},formDiff:{},isFormDirty:!1}),Xr=(e,t)=>`${e}\0${t}`,Jr=(e,t,a,r)=>`${e}\0${t}\0${a}/${r}`,Zr=(e,t)=>e.name===t.name&&e.kind===t.kind&&(e.region??"")===(t.region??""),en=(e,t,a)=>{const r=[];return t.workloads.forEach(n=>{const o=e?.workloads.find(e=>Zr(e,n));n.selected!==o?.selected&&r.push({namespace:t.name,name:n.name,kind:n.kind,region:n.region||void 0,selected:n.selected||!1,currentStreamName:a})}),r},tn=({children:t,selectedConnectionIds:r,initialInputs:n})=>{const{tier:c}=Ue(),d=c===Re.Onprem,{capabilities:u}=Kt(),m=u.canInstrumentNamespaces,{selectedStreamName:S}=f(),[E,p]=s(!1),[I,y]=s(null),[_,h]=s([]),N=l(new Set),g=o((e,t)=>{t.forEach(t=>{const a=e.find(e=>e.clusterId===t.clusterId);a&&t.namespaces.forEach(e=>{const r=a.namespaces.find(t=>t.name===e.name);r&&(r.selected!==e.selected&&N.current.add(Xr(t.clusterId,e.name)),e.workloads.forEach(a=>{const n=r.workloads.find(e=>e.name===a.name&&e.kind===a.kind);n&&n.selected!==a.selected&&N.current.add(Jr(t.clusterId,e.name,a.kind,a.name))}))})})},[]);i(()=>{I&&h(e=>{const t=((e,t)=>F(((e,t)=>e.clusters.filter(({clusterId:e})=>!t||t.includes(e)))(e,t)))(I,r);return t.map(t=>{const a=e?.find(e=>e.clusterId===t.clusterId),r=((e,t,a)=>{if(!t)return e;const r=new Map(t.namespaces.map(e=>[e.name,e]));return{...e,namespaces:e.namespaces.map(t=>{const n=r.get(t.name);if(!n)return t;const o=new Map(n.workloads.map(e=>[`${e.kind}/${e.name}`,e])),s=a.has(Xr(e.clusterId,t.name));return{...t,selected:s?n.selected:t.selected,workloads:t.workloads.map(r=>{const n=o.get(`${r.kind}/${r.name}`),s=a.has(Jr(e.clusterId,t.name,r.kind,r.name));return n&&s?{...r,selected:n.selected}:r})}})}})(t,a,N.current);if(n?.[t.clusterId]){const e=n[t.clusterId],a=F(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=>{Wr.has(e.kind)&&!d||(e.selected=!0)})}),a}return r})})},[I,r,n]);const{formDiff:v,isFormDirty:A}=a(()=>{const e=((e,t,a,r)=>{const n={};return e.forEach(e=>{e.namespaces.forEach(o=>{const s=t.find(t=>t.clusterId===e.clusterId)?.namespaces.find(e=>e.name===o.name);if(!r){const t=en(s,o,a);return void(t.length>0&&(n[e.clusterId]||(n[e.clusterId]=[]),n[e.clusterId].push(...t)))}const i=o.selected||!1;if(i!==s?.selected)n[e.clusterId]||(n[e.clusterId]=[]),n[e.clusterId].push({namespace:o.name,selected:i,currentStreamName:a}),i?n[e.clusterId]=n[e.clusterId].filter(e=>e.namespace!==o.name||e.namespace===o.name&&(!e.name||!e.kind)):o.workloads.forEach(t=>{t.selected&&n[e.clusterId].push({namespace:o.name,name:t.name,kind:t.kind,region:t.region||void 0,selected:!0,currentStreamName:a})});else{const t=en(s,o,a);t.length>0&&(n[e.clusterId]||(n[e.clusterId]=[]),n[e.clusterId].push(...t))}})}),n})(_,I?.clusters||[],S,m);return{formDiff:e,isFormDirty:Object.keys(e).length>0}},[_,I,S,m]),R=o(e=>!d&&Wr.has(e),[d]),O=o(({clusterId:e,workloadId:t,selected:a,auto:r})=>{h(n=>{const o=F(n),s=o.findIndex(t=>t.clusterId===e);if(-1===s)return o;const i=o[s].namespaces.findIndex(e=>e.name===t.namespace);if(-1===i)return o;if(t.kind&&t.name){const e=o[s].namespaces[i].workloads.findIndex(e=>Zr(e,{name:t.name,kind:t.kind,region:t.region}));if(-1===e)return o;const r="boolean"==typeof a?a:!o[s].namespaces[i].workloads[e].selected;o[s].namespaces[i].workloads[e].selected=r,m&&(r?o[s].namespaces[i].workloads.filter(e=>!R(e.kind)).every(e=>e.selected)&&(o[s].namespaces[i].selected=!0):o[s].namespaces[i].selected=!1)}else if(m){const e="boolean"==typeof r?r:!o[s].namespaces[i].selected;o[s].namespaces[i].selected=e,e?o[s].namespaces[i].workloads.forEach(e=>{R(e.kind)||(e.selected=!0)}):"boolean"!=typeof a||a||o[s].namespaces[i].workloads.forEach(e=>{e.selected=!1})}else{const e="boolean"==typeof a?a:"boolean"!=typeof r||r;o[s].namespaces[i].workloads.forEach(t=>{e&&R(t.kind)||(t.selected=e)})}return g(n,o),o})},[R,m,g]),C=o(({clusterId:e,namespaceName:t,boolean:a,searchText:r="",searchBy:n="",filters:o})=>{h(s=>{const i=F(s),l=n===T.Namespace?r:"",c=n===T.Source?r:"",d=!!l||!!c||!!o?.showOnlySelected;return i.forEach((r,n)=>{e&&r.clusterId!==e||r.namespaces.forEach(({name:e,workloads:r},s)=>{if(!t||e===t)if(d)if(t){if(r.forEach((e,t)=>{a&&R(e.kind)||zr(e,c,o||{showOnlySelected:!1})&&(i[n].namespaces[s].workloads[t].selected=a)}),m){const e=i[n].namespaces[s].workloads.filter(e=>!R(e.kind)).every(e=>e.selected);i[n].namespaces[s].selected=e}}else{if(!qr(i[n].namespaces[s],l,o||{showOnlySelected:!1}))return;m&&(i[n].namespaces[s].selected=a),r.forEach((e,t)=>{a&&R(e.kind)||(i[n].namespaces[s].workloads[t].selected=a)})}else m&&(i[n].namespaces[s].selected=a),r.forEach((e,t)=>{a&&R(e.kind)||(i[n].namespaces[s].workloads[t].selected=a)})})}),g(s,i),i})},[R,m,g]);return e(Qr.Provider,{value:{snapshots:I,setSnapshots:y,isFetching:E,setIsFetching:p,formData:_,handleSourceChange:O,handleSelectAll:C,formDiff:v,isFormDirty:A},children:t})},an=()=>r(Qr);export{ma as $,Qt as A,Kt as B,ea as C,na as D,Dr as E,$r as F,Va as G,Br as H,an as I,Ar as J,Ea as K,Qa as L,Ba as M,ja as N,rt as O,Ra as P,_a as Q,Cr as R,Gr as S,fa as T,ya as U,zr as V,Wr as W,qr as X,jr as Y,Ia as Z,Sa as _,St as a,Wa as a0,pr as a1,Er as a2,mr as a3,ur as a4,Sr as a5,Oa as a6,ba as a7,La as a8,da as b,va as c,Da as d,fr as e,Ze as f,xr as g,Yr as h,tn as i,vr as j,gt as k,Xt as l,_t as m,ht as n,yt as o,vt as p,ta as q,mt as r,oa as s,ua as t,Je as u,Aa as v,Ga as w,Ya as x,Xa as y,yr as z};