@odigos/ui-kit 0.0.262 → 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 +12 -0
- package/lib/chunks/{connections-scope-7HTW_FyZ.js → connections-scope-DEVWbigK.js} +1 -1
- package/lib/chunks/index-BVtv0LGZ.js +155 -0
- package/lib/chunks/{odigos-context-nQT2LWDb.js → odigos-context-DGEWcwEQ.js} +1 -1
- 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-CPlk79JW.js → use-odigos-api-ZAJiPzPh.js} +2 -2
- 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/radio-card/index.d.ts +16 -0
- package/lib/components/v2.js +1 -1
- package/lib/components.js +1 -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/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/types.d.ts +1 -0
- package/lib/contexts/odigos-api.js +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 +2 -1
- package/lib/types/index.d.ts +1 -0
- 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-raAGXSYj.js +0 -155
- package/lib/chunks/source-instrument-form-context-BDrkrejS.js +0 -1
- package/lib/chunks/ui-components-p39Q_a1_.js +0 -1703
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import{useMemo as e,useContext as t,createContext as r,useCallback as a,useState as n,useEffect as o}from"react";import{HttpLink as s,from as i,split as c,ApolloClient as d,InMemoryCache as u,ApolloProvider as l,useLazyQuery as E,useApolloClient as f,useQuery as T,gql as _}from"@apollo/client";import{jsx as S}from"react/jsx-runtime";import{onError as p}from"@apollo/client/link/error";import{setContext as y}from"@apollo/client/link/context";import{getMainDefinition as R}from"@apollo/client/utilities";import{W as m,F as O,p as A,o as I,Z as N,_ as C,E as h,c as g,b as L,h as P,$ as G,a0 as U,a1 as v,a2 as D,a3 as w,a4 as F,a5 as k,a6 as M,a7 as b}from"./ui-components-
|
|
1
|
+
import{useMemo as e,useContext as t,createContext as r,useCallback as a,useState as n,useEffect as o}from"react";import{HttpLink as s,from as i,split as c,ApolloClient as d,InMemoryCache as u,ApolloProvider as l,useLazyQuery as E,useApolloClient as f,useQuery as T,gql as _}from"@apollo/client";import{jsx as S}from"react/jsx-runtime";import{onError as p}from"@apollo/client/link/error";import{setContext as y}from"@apollo/client/link/context";import{getMainDefinition as R}from"@apollo/client/utilities";import{W as m,F as O,p as A,o as I,Z as N,_ as C,E as h,c as g,b as L,h as P,$ as G,a0 as U,a1 as v,a2 as D,a3 as w,a4 as F,a5 as k,a6 as M,a7 as b}from"./ui-components-BDtk3K99.js";const Y=e=>{if(!e)return!1;const t=e.toLowerCase();return t.includes("authentication required")||t.includes("authentication expired")||t.includes("http 401")},H=r(null),W=()=>{const e=t(H);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},x=({apolloConfig:t,operations:r,context:a,children:n})=>{const o=e(()=>(e=>{const t=new s({uri:e.httpUrl,credentials:e.credentials??"same-origin"}),r=p(({graphQLErrors:t,networkError:r})=>{t&&t.length>0&&t.some(e=>Y(e.message))&&e.onAuthError?.(),r&&(401===r.statusCode||Y(r.message))&&e.onAuthError?.()}),a=y(async(t,r)=>{const a={...r.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(a,r,t);let o=i(n);e.wsLink&&(o=c(({query:e})=>{const t=R(e);return"OperationDefinition"===t.kind&&"subscription"===t.operation},e.wsLink,o));const l=e.defaultFetchPolicies;return new d({link:o,cache:new u({addTypename:e.addTypename??!0,typePolicies:e.cacheTypePolicies}),defaultOptions:{watchQuery:{fetchPolicy:l?.watchQuery??"cache-and-network"},query:{fetchPolicy:l?.query??"cache-first"},mutate:{fetchPolicy:l?.mutate??"network-only"}}})})(t),[t.httpUrl,t.wsLink,t.addTypename,t.credentials]),E=e(()=>({operations:r,context:a,apolloConfig:t}),[r,a,t]);return S(l,{client:o,children:S(H.Provider,{value:E,children:n})})},K=H,V=(e,t)=>{if(e)return"string"==typeof e?e:N(e,t)},$=e=>{const{addNotification:t}=m(),r=(r,a,n,o,s)=>t({type:r,title:a,message:n,crdType:e,target:V(o,e),hideFromHistory:s});return{notify:r,notifyError:(e,t,a)=>r(I.Error,e,t,a),notifySuccess:(e,t,a)=>r(I.Success,e,t,a),notifyPending:(e,t)=>r(I.Default,"Pending",e,t,!0),notifyReadonly:()=>{t({type:I.Warning,title:A.READONLY,message:O.READONLY_WARNING,hideFromHistory:!0})}}},B=e=>{e({type:I.Warning,title:A.READONLY,message:O.READONLY_WARNING,hideFromHistory:!0})},j=e=>({error:e,results:[],allSucceeded:!1,anySucceeded:!1,successCount:0,failureCount:0}),q=(e,t)=>{if(e)return"function"==typeof e?e(t):e},Q=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)},z=(e,t)=>e.client??t,J=async(e,t,r,a,n)=>{if(!t)return{error:"Query operation not configured"};if(t.canRun&&!t.canRun(a))return{data:void 0};if(t.run)try{return await t.run(z(t,e),r,a)}catch(e){return{error:Q(e)}}const o=q(t.document,a);if(!o)return{error:"Query operation not supported in this context"};const s=t.transformVariables?t.transformVariables(r,a):r,i=z(t,e);try{const e=await i.query({query:o,variables:s,fetchPolicy:n??"network-only"});return{data:t.transformResult?t.transformResult(e.data,a):e.data,error:e.error?Q(e.error):void 0}}catch(e){return{error:Q(e)}}},X=async(e,t,r,a)=>{if(!t)return{error:"Mutation operation not configured"};if(t.canRun&&!t.canRun(a))return{data:void 0};if(t.run)try{return await t.run(z(t,e),r,a)}catch(e){return{error:Q(e)}}const n=q(t.document,a);if(!n)return{error:"Mutation operation not supported in this context"};const o=t.transformVariables?t.transformVariables(r,a):r,s=z(t,e);try{const e=await s.mutate({mutation:n,variables:o});return{data:t.transformResult?t.transformResult(e.data,a):e.data,error:void 0}}catch(e){return{error:Q(e)}}},Z=async(e,t,r,a,n)=>{if(!t)return j("Multi fetch operation not configured");if(!r.length)return j("No proxy ids supplied for multi fetch");const o=z(t,e);if(t.transformVariablesMulti&&(t.documentMulti||t.document)){const e=t.transformVariablesMulti(r,a,n),s=[];for(const r of e)try{const e=await o.query({query:r.document,variables:r.variables,fetchPolicy:"network-only"});t.transformMultiResult?t.transformMultiResult(e.data,n).forEach(e=>s.push(e)):r.proxyIDs.forEach(t=>{s.push({proxyID:t,success:!e.error,data:e.data,error:e.error?.message})})}catch(e){const t=Q(e);r.proxyIDs.forEach(e=>s.push({proxyID:e,success:!1,error:t}))}const i=s.filter(e=>e.success).length,c=s.length-i,d=Array.from(new Set(s.filter(e=>!!e.error).map(e=>e.error)));return{results:s,allSucceeded:0===c,anySucceeded:i>0,successCount:i,failureCount:c,error:d.length?d.join(", "):void 0}}const s=await Promise.all(r.map(async r=>{const o={...n,proxyID:r},s=await J(e,t,a,o);return{proxyID:r,success:!s.error,data:s.data,error:s.error}})),i=s.filter(e=>e.success).length,c=s.length-i,d=Array.from(new Set(s.filter(e=>!!e.error).map(e=>e.error)));return{results:s,allSucceeded:0===c,anySucceeded:i>0,successCount:i,failureCount:c,error:d.length?d.join(", "):void 0}},ee=_`
|
|
2
2
|
query OdigosApiNoop {
|
|
3
3
|
__typename
|
|
4
4
|
}
|
|
5
|
-
`,te=(e,t)=>{if(e)return"function"==typeof e?e(t):e},re=(e,t)=>e[t],ae=(e,t,r)=>{if(void 0===t)return;return e?.transformResult?e.transformResult(t,r):t},ne=(e,t,r)=>{if(!e)return;const a=e.transformVariables;return a?a(t,r):t},oe=(t,r,n)=>{const{operations:o,context:s}=W(),i=re(o,t),c=e(()=>te(i?.document,s),[i,s]),d=e(()=>ne(i,r,s),[i,r,s]),u=!i||!c,l=!!i?.canRun&&!i.canRun(s),E=n?.skip||u||l,f=T(c??ee,{variables:d,skip:E,pollInterval:n?.pollInterval,fetchPolicy:n?.fetchPolicy??"cache-and-network",notifyOnNetworkStatusChange:n?.notifyOnNetworkStatusChange,client:i?.client,onCompleted:n?.onCompleted?e=>{const t=ae(i,e,s);void 0!==t&&n.onCompleted(t)}:void 0,onError:n?.onError}),_=e(()=>{if(!E)return ae(i,f.data,s)},[i,s,f.data,E]),S=a(async()=>{if(u)return{data:void 0};const e=await f.refetch();return{data:ae(i,e.data,s)}},[i,s,f,u]);return{data:_,loading:!E&&f.loading,error:f.error,refetch:S,unsupported:u}},se=(t,r)=>{const{operations:n,context:o}=W(),s=re(n,t),i=e(()=>te(s?.document,o),[s,o]),c=!s||!i,[d,u]=E(i??ee,{fetchPolicy:r?.fetchPolicy??"network-only",notifyOnNetworkStatusChange:r?.notifyOnNetworkStatusChange,client:s?.client});return{execute:a(async e=>{if(c)return{error:void 0};if(s?.canRun&&!s.canRun(o))return{data:void 0};const t=ne(s,e,o),r=await d({variables:t});return r.error?{error:r.error}:{data:ae(s,r.data,o)}},[s,o,d,c]),data:e(()=>ae(s,u.data,o),[s,o,u.data]),loading:u.loading,error:u.error,called:u.called,unsupported:c}},ie=(t,r)=>{const{operations:o,context:s}=W(),i=f(),c=re(o,t),d=e(()=>te(c?.document,s),[c,s]),u=!c||!d,[l,E]=n({loading:!1,called:!1}),T=a(()=>E({loading:!1,called:!1}),[]);return[a(async e=>{if(u||!d)return{error:void 0};if(c?.canRun&&!c.canRun(s))return{data:void 0};const t=ne(c,e,s),a=c?.client??i;E(e=>({...e,loading:!0,called:!0}));try{const e=await a.mutate({mutation:d,variables:t}),n=ae(c,e.data,s);if(E({data:n,loading:!1,error:void 0,called:!0}),r?.refetchQueries){const e=a.refetchQueries({include:r.refetchQueries});r?.awaitRefetchQueries&&await e}return void 0!==n&&r?.onCompleted?.(n),{data:n}}catch(e){const t=e;return E({data:void 0,loading:!1,error:t,called:!0}),r?.onError?.(t),{error:t}}},[c,s,i,d,u,r]),{data:l.data,loading:l.loading,error:l.error,called:l.called,unsupported:u,reset:T}]},ce=[],de=(e,t,r,a)=>{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:a})=>({namespace:e.namespace,name:e.name,kind:e.kind,selected:void 0!==t&&t,currentStreamName:a||r}));let c=0,d=0;for(const r of e){const e=t.find(e=>e.id.namespace===s&&e.id.name===r.name&&e.id.kind===r.kind),a=e?.dataStreamNames||[];r.selected&&!e?c++:!r.selected&&e&&a.length<=1&&d++}a(c,d),o.sources.push(...e)}return{payload:o,isEmpty:n}},ue=(e,t)=>{let r=!0;const a={namespaces:[]};for(const[n,{selected:o,currentStreamName:s}]of Object.entries(e))"boolean"==typeof o&&(r=!1,a.namespaces.push({namespace:n,selected:o,currentStreamName:s||t}));return{payload:a,isEmpty:r}},le={filter:{markedForInstrumentation:!0}},Ee=[],fe=[],Te=[],_e=async e=>{const t=(e=>{try{return new URL("/diagnose/download",e).toString()}catch{return null}})(e.httpUrl);if(t)try{const[r,a]=await Promise.all([Promise.resolve(e.authHeader?.()??{}),Promise.resolve(e.csrfHeader?.()??{})]),n=await fetch(t,{credentials:e.credentials??"same-origin",headers:{...r,...a}});if(!n.ok)throw new Error(`Failed to download diagnose archive: ${n.status} ${n.statusText}`);((e,t)=>{if("undefined"==typeof document)return;const r=URL.createObjectURL(e),a=document.createElement("a");a.href=r,a.download=t,document.body.appendChild(a),a.click(),document.body.removeChild(a),URL.revokeObjectURL(r)})(await n.blob(),`odigos-diagnose-${Date.now()}.tar.gz`)}catch(e){}},Se=[],pe=[],ye=e=>{if(!e)return;return{clusters:[e],totalNamespaces:e.namespaces?.length??0,totalWorkloads:(e.namespaces??[]).reduce((e,t)=>e+(t.workloads?.length??0),0),lastUpdated:e.timestamp}},Re=[],me=[],Oe=(e,t)=>({...e,fields:e.fields.filter(({value:e})=>void 0!==e),currentStreamName:t}),Ae=[],Ie=()=>{const{operations:t,context:r}=W(),n=f(),s=((e,t)=>{const r=f(),{notifyError:n,notifySuccess:o,notifyPending:s,notifyReadonly:i}=$(h.Source),{selectedStreamName:c}=P(),{setProgress:d,resetProgress:u}=G(),{setConfiguredSources:l,setConfiguredFutureApps:E}=U(),T=(e,t)=>{const{progress:r}=G.getState();e>0&&d(v.Instrumenting,{total:(r[v.Instrumenting]?.total||0)+e,current:r[v.Instrumenting]?.current||0}),t>0&&d(v.Uninstrumenting,{total:(r[v.Uninstrumenting]?.total||0)+t,current:r[v.Uninstrumenting]?.current||0})},_=a(async()=>{const{error:a}=await J(r,e.GET_WORKLOADS,le,t);a&&n(C.Read,a)},[r,e.GET_WORKLOADS,t,n]);return{useSources:()=>{const e=oe("GET_WORKLOADS",le,{fetchPolicy:"cache-first"});return{items:e.data?.workloads??Ee,loading:e.loading,refetch:_}},fetchAll:_,fetchByTargets:async(a,o)=>{const s=!!o?.slim,i=a.map(e=>D(e,h.Source)).filter(e=>e.namespace&&e.name&&e.kind);if(0===i.length)return;if(i.length>50)return void await _();const c=s&&e.GET_WORKLOADS_BY_IDS_SLIM?e.GET_WORKLOADS_BY_IDS_SLIM:e.GET_WORKLOADS_BY_IDS,{error:d}=await J(r,c,{ids:i.map(({namespace:e,kind:t,name:r})=>({namespace:e,kind:t,name:r}))},t);d?n(C.Read,d):await _()},fetchById:async a=>{const{data:o,error:s}=await J(r,e.GET_WORKLOADS_BY_IDS,{ids:[{namespace:a.namespace,kind:a.kind,name:a.name}]},t);if(!s)return o?.workloadsByIds?.find(e=>e.id.namespace===a.namespace&&e.id.kind===a.kind&&e.id.name===a.name);n(C.Read,s)},fetchLibraries:async a=>J(r,e.GET_SOURCE_LIBRARIES,a,t),fetchPeerSources:async a=>J(r,e.GET_PEER_SOURCES,{serviceName:a},t),usePeerSources:(e,t)=>oe("GET_PEER_SOURCES",e,t),persist:async(a,o)=>{if(t.isReadonly)return i();const{data:d}=await J(r,e.GET_WORKLOADS,le,t,"cache-first"),f=d?.workloads??Ee,{payload:_,isEmpty:S}=de(a,f,c,T),{payload:p,isEmpty:y}=ue(o,c);let R=!1;S||(R=!0,s("Persisting sources...")),y||R||s("Persisting namespaces...");const{error:m}=await X(r,e.PERSIST_SOURCES,_,t);if(m&&(u(v.Instrumenting),u(v.Uninstrumenting),n(C.Update,m)),e.PERSIST_NAMESPACES){const{error:a}=await X(r,e.PERSIST_NAMESPACES,p,t);a&&n(C.Update,a)}l({}),E({})},persistV2:async a=>{if(t.isReadonly)return i(),{error:"readonly"};const n=[];for(const[,o]of Object.entries(a)){const a={sources:[]},s={namespaces:[]};for(const e of o)e.name&&e.kind?a.sources.push(e):s.namespaces.push(e);if(s.namespaces.length>0&&e.PERSIST_NAMESPACES){const{error:a}=await X(r,e.PERSIST_NAMESPACES,s,t);a&&n.push(a)}if(a.sources.length>0){const{error:o}=await X(r,e.PERSIST_SOURCES,a,t);o&&n.push(o)}}return n.length?{error:n.join(", ")}:void 0},update:async(a,d)=>{if(t.isReadonly)return i();s("Updating source...");const u={sourceId:a,patchSourceRequest:{...d,currentStreamName:c}},{data:l,error:E}=await X(r,e.UPDATE_SOURCE,u,t);E?n(C.Update,E,a):l?.updateK8sActualSource&&o(C.Update,`Successfully updated "${a.name}" source`,a)},restartWorkloads:async a=>{if(t.isReadonly)return i();s("Restarting sources...");const{data:c,error:d}=await X(r,e.RESTART_WORKLOADS,{sourceIds:a},t);d?n(C.Update,d):c?.restartWorkloads&&o(C.Update,`Successfully restarted ${a.length} sources`)},restartPod:async(a,c)=>{if(t.isReadonly)return i();s("Restarting pod...");const{data:d,error:u}=await X(r,e.RESTART_POD,{namespace:a,name:c},t);u?n(C.Update,u):d?.restartPod&&o(C.Update,`Successfully restarted pod ${a}/${c}`)},recoverFromRollback:async a=>{if(t.isReadonly)return i();s("Recovering from rollback...");const{data:c,error:d}=await X(r,e.RECOVER_FROM_ROLLBACK,{sourceId:a},t);d?n(C.Update,d,a):c?.recoverFromRollbackForWorkload&&o(C.Update,"Successfully triggered recovery from rollback")}}})(t,r),i=((e,t)=>{const r=f(),{notifyError:a,notifySuccess:n,notifyReadonly:o}=$(h.Destination),{selectedStreamName:s}=P(),i=async()=>{const{error:n}=await J(r,e.GET_DESTINATIONS,void 0,t);n&&a(C.Read,n)};return{useDestinations:()=>{const e=oe("GET_DESTINATIONS",void 0,{fetchPolicy:"cache-first"});return{items:e.data?.computePlatform?.destinations??e.data?.destinations??me,loading:e.loading,refetch:i}},useDestinationCategories:()=>{const e=oe("GET_DESTINATION_CATEGORIES",void 0);return{data:e.data,loading:e.loading}},usePotentialDestinations:()=>{const e=oe("GET_POTENTIAL_DESTINATIONS",void 0);return{data:e.data,loading:e.loading}},fetchAll:i,testConnection:async a=>{const{data:n}=await X(r,e.TEST_DESTINATION_CONNECTION,{destination:Oe(a,s)},t);return n},create:async c=>{if(t.isReadonly)return o();const{error:d}=await X(r,e.CREATE_DESTINATION,{destination:Oe(c,s)},t);d?a(C.Create,d):(n(C.Create,`Successfully created "${c.type}" destination`),await i())},update:async(c,d)=>{if(t.isReadonly)return o();const{data:u,error:l}=await X(r,e.UPDATE_DESTINATION,{id:c,destination:Oe(d,s)},t);l?a(C.Update,l,c):u?.updateDestination&&(n(C.Update,`Successfully updated "${d.type}" destination`,c),await i())},remove:async c=>{if(t.isReadonly)return o();const{data:d}=await J(r,e.GET_DESTINATIONS,void 0,t,"cache-first"),u=d?.computePlatform?.destinations??d?.destinations??me,l=u.find(e=>F(e)===c)?.destinationType?.type,{error:E}=await X(r,e.DELETE_DESTINATION,{id:c,currentStreamName:s},t);E?a(C.Delete,E,c):(n(C.Delete,`Successfully deleted "${l??c}" destination`,c),await i())}}})(t,r),c=((t,r)=>{const a=f(),{notifyError:n,notifySuccess:o,notifyReadonly:s}=$(h.Action),i=async()=>{const{error:e}=await J(a,t.GET_ACTIONS,void 0,r);e&&n(C.Read,e)};return{useActions:()=>{const e=oe("GET_ACTIONS",void 0,{fetchPolicy:"cache-first"});return{items:e.data?.computePlatform?.actions??e.data?.actions??fe,loading:e.loading,refetch:i}},useActionTypes:()=>{const t=oe("GET_ACTION_TYPES",void 0,{fetchPolicy:"cache-first"});return{options:e(()=>w(t.data)||Te,[t.data]),loading:t.loading}},fetchAll:i,create:async e=>{if(r.isReadonly)return s();if(!t.CREATE_ACTION)return;const{error:c}=await X(a,t.CREATE_ACTION,{action:e},r);c?n(C.Create,c):(o(C.Create,`Successfully created "${e.type}" action`),await i())},update:async(e,c)=>{if(r.isReadonly)return s();if(!t.UPDATE_ACTION)return;const{error:d}=await X(a,t.UPDATE_ACTION,{id:e,action:c},r);d?n(C.Update,d,e):(o(C.Update,`Successfully updated "${c.type}" action`,e),await i())},remove:async(e,c)=>{if(r.isReadonly)return s();if(!t.DELETE_ACTION)return;const{error:d}=await X(a,t.DELETE_ACTION,{id:e,actionType:c},r);d?n(C.Delete,d,e):(o(C.Delete,`Successfully deleted "${c}" action`,e),await i())}}})(t,r),d=((t,r)=>{const a=f(),{notifyError:n,notifySuccess:o,notifyReadonly:s}=$(h.InstrumentationRule),i=async()=>{const{error:e}=await J(a,t.GET_INSTRUMENTATION_RULES,void 0,r);e&&n(C.Read,e)};return{useRules:()=>{const t=oe("GET_INSTRUMENTATION_RULES",void 0,{fetchPolicy:"cache-first"});return{items:e(()=>(t.data?.computePlatform?.instrumentationRules??t.data?.instrumentationRules??[]).map(b),[t.data]),loading:t.loading,refetch:i}},useRuleTypes:()=>{const t=oe("GET_INSTRUMENTATION_RULE_TYPES",void 0,{fetchPolicy:"cache-first"});return{options:e(()=>M(t.data)||Ae,[t.data]),loading:t.loading}},fetchAll:i,create:async(e,c)=>{if(r.isReadonly)return s();if(!t.CREATE_INSTRUMENTATION_RULE)return;const{error:d}=await X(a,t.CREATE_INSTRUMENTATION_RULE,{instrumentationRule:k(e)},r);d?n(C.Create,d):(o(C.Create,`Successfully created${c?` "${c}"`:""} rule`),await i())},update:async(e,c,d)=>{if(r.isReadonly)return s();if(!t.UPDATE_INSTRUMENTATION_RULE)return;const{error:u}=await X(a,t.UPDATE_INSTRUMENTATION_RULE,{ruleId:e,instrumentationRule:k(c)},r);u?n(C.Update,u,e):(o(C.Update,`Successfully updated${d?` "${d}"`:""} rule`,e),await i())},remove:async(e,c)=>{if(r.isReadonly)return s();if(!t.DELETE_INSTRUMENTATION_RULE)return;const{error:d}=await X(a,t.DELETE_INSTRUMENTATION_RULE,{ruleId:e},r);d?n(C.Delete,d,e):(o(C.Delete,`Successfully deleted${c?` "${c}"`:""} rule`,e),await i())}}})(t,r),u=((e,t)=>{const r=f(),{addNotification:a}=m(),{setDataStreams:n}=P(),s=(e,t)=>a({type:I.Error,title:e,message:t}),i=async()=>{const{data:a,error:o}=await J(r,e.GET_DATA_STREAMS,void 0,t);if(o)s(C.Read,o);else if(a){const e=a.computePlatform?.dataStreams??a.dataStreams??[];n(e)}},c=e.CREATE_DATA_STREAM?async n=>{if(t.isReadonly)return B(a);const{error:o}=await X(r,e.CREATE_DATA_STREAM,{stream:n},t);o?s(C.Create,o):await i()}:void 0;return{useDataStreams:()=>{const e=oe("GET_DATA_STREAMS",void 0,{fetchPolicy:"cache-first"}),t=e.data?.computePlatform?.dataStreams??e.data?.dataStreams??Re;return o(()=>{n(t)},[JSON.stringify(t.map(e=>e.name))]),{items:t,loading:e.loading,refetch:i}},fetchAll:i,create:c,update:async(n,o)=>{if(t.isReadonly)return B(a);const{error:c}=await X(r,e.UPDATE_DATA_STREAM,{id:n,dataStream:o},t);c?s(C.Update,c):await i()},remove:async n=>{if(t.isReadonly)return B(a);const{error:o}=await X(r,e.DELETE_DATA_STREAM,{id:n},t);o?s(C.Delete,o):await i()}}})(t,r),l=((e,t)=>{const r=f(),{notifyError:a,notifyReadonly:n}=$(h.Namespace),o=async()=>{const n=await J(r,e.GET_NAMESPACES_WITH_WORKLOADS,void 0,t);return n.error&&a(C.Read,n.error),n};return{useNamespaces:()=>{const e=oe("GET_NAMESPACES_WITH_WORKLOADS",void 0,{fetchPolicy:"cache-first"});return{items:e.data?.namespaces??pe,loading:e.loading,refetch:o}},fetchAll:o,persist:async o=>{if(t.isReadonly)return n();const{error:s}=await X(r,e.PERSIST_NAMESPACES,o,t);return s&&a(C.Update,s),s?{error:s}:void 0}}})(t,r),E=((e,t)=>{const r=f(),{notifyError:a}=$(h.Source);return{fetch:async n=>{const o=await J(r,e.GET_K8S_MANIFEST,n,t);return o.error&&a(C.Read,o.error),o}}})(t,r),T=((e,t)=>{const r=f(),{notifyError:a,notifySuccess:n,notifyReadonly:o}=$(h.Source);return{useEffectiveConfig:(e,t)=>oe("GET_EFFECTIVE_CONFIG",e,t),useConfigYamls:e=>oe("GET_CONFIG_YAMLS",void 0,e),getEffectiveConfig:async a=>e.GET_EFFECTIVE_CONFIG?J(r,e.GET_EFFECTIVE_CONFIG,{id:a},t):{error:"GET_EFFECTIVE_CONFIG not configured"},applyConfigurations:e.UPDATE_REMOTE_CONFIG?async(n,s)=>{if(t.isReadonly)return o();const{error:i}=await X(r,e.UPDATE_REMOTE_CONFIG,{formData:n,connectionIds:s},t);return i&&a(C.Update,i),i?{error:i}:void 0}:void 0,getConfigYamls:e.GET_CONFIG_YAMLS?async()=>J(r,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 X(r,e.UPDATE_LOCAL_UI_CONFIG,{config:s},t);return i?a(C.Update,i):n(C.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 X(r,e.RESET_LOCAL_UI_CONFIG_TO_FACTORY_DEFAULTS,void 0,t);return s?a(C.Update,s):n(C.Update,"Local UI configuration reset to factory defaults"),s?{error:s}:void 0}:void 0}})(t,r),_=((e,t)=>{const r=f(),{apolloConfig:a}=W();return{fetchDescribeOdigos:e.GET_DESCRIBE_ODIGOS?async()=>J(r,e.GET_DESCRIBE_ODIGOS,void 0,t):void 0,fetchDescribeSource:e.GET_DESCRIBE_SOURCE?async a=>J(r,e.GET_DESCRIBE_SOURCE,a,t):void 0,downloadDiagnose:e.GET_DIAGNOSE?async(n,o)=>{const s=await J(r,e.GET_DIAGNOSE,{input:n,dryRun:o?.dryRun??!1},t),i=s?.data?.stats?.fileCount??0;return!s.error&&i>0&&!o?.dryRun&&await _e(a),s}:void 0}})(t,r),S=((e,t)=>{const r=f(),{notifyError:a,notifyReadonly:n}=$(h.Source),o=async()=>{e.GET_TOKENS&&await J(r,e.GET_TOKENS,void 0,t)};return{useTokens:()=>{const e=oe("GET_TOKENS",void 0,{fetchPolicy:"cache-first"});return{items:e.data??ce,loading:e.loading,refetch:o}},updateToken:e.UPDATE_TOKEN?async o=>{if(t.isReadonly)return n();const{error:s}=await X(r,e.UPDATE_TOKEN,{token:o},t);return s&&a(C.Update,s),s?{error:s}:void 0}:void 0}})(t,r),p=((e,t)=>{const r=f();return{useMetrics:e=>oe("GET_METRICS",void 0,e),fetch:async()=>J(r,e.GET_METRICS,void 0,t)}})(t,r),y=((e,t)=>{const r=f();return{useServiceMap:e=>oe("GET_SERVICE_MAP",void 0,e),fetch:e.GET_SERVICE_MAP?async()=>J(r,e.GET_SERVICE_MAP,void 0,t):void 0}})(t,r),R=((e,t)=>{const r=f();return{useSlots:e=>oe("GET_PROFILING_SLOTS",void 0,e),useSourceProfiling:(e,t)=>oe("GET_SOURCE_PROFILING",e,t),fetchSlots:e.GET_PROFILING_SLOTS?async()=>J(r,e.GET_PROFILING_SLOTS,void 0,t):void 0,fetchSourceProfiling:e.GET_SOURCE_PROFILING?async a=>J(r,e.GET_SOURCE_PROFILING,a,t):void 0,enableProfiling:e.ENABLE_SOURCE_PROFILING?async a=>X(r,e.ENABLE_SOURCE_PROFILING,a,t):void 0}})(t,r),O=((e,t)=>{const r=f();return{useGatewayInfo:e=>oe("GET_GATEWAY_INFO",void 0,e),useGatewayPods:e=>oe("GET_GATEWAY_PODS",void 0,e),useNodeCollectorInfo:e=>oe("GET_NODE_COLLECTOR_INFO",void 0,e),useNodeCollectorPods:e=>oe("GET_NODE_COLLECTOR_PODS",void 0,e),usePodInfo:(e,t)=>oe("GET_COLLECTOR_POD_INFO",e,t),getGatewayInfo:e.GET_GATEWAY_INFO?async()=>J(r,e.GET_GATEWAY_INFO,void 0,t):void 0,getGatewayPods:e.GET_GATEWAY_PODS?async()=>J(r,e.GET_GATEWAY_PODS,void 0,t):void 0,getNodeCollectorInfo:e.GET_NODE_COLLECTOR_INFO?async()=>J(r,e.GET_NODE_COLLECTOR_INFO,void 0,t):void 0,getNodeCollectorPods:e.GET_NODE_COLLECTOR_PODS?async()=>J(r,e.GET_NODE_COLLECTOR_PODS,void 0,t):void 0,getExtendedPodInfo:e.GET_COLLECTOR_POD_INFO?async(a,n)=>J(r,e.GET_COLLECTOR_POD_INFO,{namespace:a,name:n},t):void 0}})(t,r),A=((e,t)=>{const r=f(),{notifyError:a,notifySuccess:n,notifyReadonly:o}=$(h.SamplingRule),s=async()=>{e.GET_SAMPLING_RULES&&await J(r,e.GET_SAMPLING_RULES,void 0,t)},i=(e,i)=>e?async c=>{if(t.isReadonly)return o();const{error:d}=await X(r,e,c,t);return d?a(i,d):(n(C.Create,"Successfully created sampling rule"),await s()),d?{error:d}:void 0}:void 0,c=(e,i)=>e?async(c,d)=>{if(t.isReadonly)return o();const{error:u}=await X(r,e,{samplingId:d.samplingId,ruleId:c,rule:d.rule},t);return u?a(i,u):(n(C.Update,"Successfully updated sampling rule"),await s()),u?{error:u}:void 0}:void 0,d=e=>e?async(i,c)=>{if(t.isReadonly)return o();const{error:d}=await X(r,e,{samplingId:c,ruleId:i},t);return d?a(C.Delete,d):(n(C.Delete,"Successfully deleted sampling rule"),await s()),d?{error:d}:void 0}:void 0;return{useSamplingRules:()=>{const e=oe("GET_SAMPLING_RULES",void 0,{fetchPolicy:"cache-first"});return{items:e.data?.computePlatform?.samplingRules??e.data?.samplingRules??Se,k8sHealthProbesConfig:e.data?.computePlatform?.k8sHealthProbesConfig??e.data?.k8sHealthProbesConfig??null,loading:e.loading,refetch:s}},fetchAll:e.GET_SAMPLING_RULES?async()=>J(r,e.GET_SAMPLING_RULES,void 0,t):void 0,createNoisy:i(e.CREATE_NOISY_OPERATION_RULE,C.Create),updateNoisy:c(e.UPDATE_NOISY_OPERATION_RULE,C.Update),deleteNoisy:d(e.DELETE_NOISY_OPERATION_RULE),createHighlyRelevant:i(e.CREATE_HIGHLY_RELEVANT_OPERATION_RULE,C.Create),updateHighlyRelevant:c(e.UPDATE_HIGHLY_RELEVANT_OPERATION_RULE,C.Update),deleteHighlyRelevant:d(e.DELETE_HIGHLY_RELEVANT_OPERATION_RULE),createCostReduction:i(e.CREATE_COST_REDUCTION_RULE,C.Create),updateCostReduction:c(e.UPDATE_COST_REDUCTION_RULE,C.Update),deleteCostReduction:d(e.DELETE_COST_REDUCTION_RULE),updateK8sHealthProbesConfig:e.UPDATE_LOCAL_UI_SAMPLING_CONFIG?async n=>{if(t.isReadonly)return o();const{error:i}=await X(r,e.UPDATE_LOCAL_UI_SAMPLING_CONFIG,{config:{k8sHealthProbesSampling:n}},t);return i?a(C.Update,i):await s(),i?{error:i}:void 0}:void 0}})(t,r),N=((t,r)=>{const n=f();return{useSnapshots:()=>{const t=r.proxyID,n=!!t,o=oe("GET_ALL_CLUSTER_SNAPSHOTS",void 0,{fetchPolicy:"cache-first",skip:n}),s=oe("GET_CLUSTER_SNAPSHOT",t?{clusterId:t}:void 0,{fetchPolicy:"cache-first",skip:!n}),i=e(()=>n?ye(s.data):o.data,[n,s.data,o.data]),c=a(async()=>{if(!n)return o.refetch();const{data:e}=await s.refetch();return{data:ye(e)}},[n,o.refetch,s.refetch]);return{data:i,loading:n?s.loading:o.loading,unsupported:n?s.unsupported:o.unsupported,refetch:c}},getAllClusterSnapshots:t.GET_ALL_CLUSTER_SNAPSHOTS?async()=>J(n,t.GET_ALL_CLUSTER_SNAPSHOTS,void 0,r):void 0,getClusterSnapshot:t.GET_CLUSTER_SNAPSHOT?async e=>J(n,t.GET_CLUSTER_SNAPSHOT,{clusterId:e},r):void 0}})(t,r);return{sourcesApi:s,destinationsApi:i,actionsApi:c,instrumentationRulesApi:d,dataStreamsApi:u,namespacesApi:l,k8sManifestApi:E,configApi:T,describeApi:_,tokensApi:S,metricsApi:p,serviceMapApi:y,profilingApi:R,collectorsApi:O,samplingApi:A,snapshotsApi:N,capabilities:e(()=>((e,t)=>{const r=t.platformType===g.Vm,a=t.tier===L.Onprem,n=!r;return{canBulkPersistSources:n&&!!e.PERSIST_SOURCES,canInstrumentNamespaces:n&&!!e.PERSIST_NAMESPACES,canFetchSnapshots:n&&!!e.GET_ALL_CLUSTER_SNAPSHOTS,canRecoverFromRollback:n&&!!e.RECOVER_FROM_ROLLBACK,canRestartWorkloads:n&&!!e.RESTART_WORKLOADS,canFetchPeerSources:!!e.GET_PEER_SOURCES,canFetchSourceLibraries:!!e.GET_SOURCE_LIBRARIES,canFetchK8sManifest:n&&!!e.GET_K8S_MANIFEST,canCreateDestination:!!e.CREATE_DESTINATION,canTestConnection:n&&!!e.TEST_DESTINATION_CONNECTION,canFetchDestinationCategories:!!e.GET_DESTINATION_CATEGORIES,canFetchPotentialDestinations:n&&!!e.GET_POTENTIAL_DESTINATIONS,canCreateAction:!!e.CREATE_ACTION,canFetchActionTypes:!!e.GET_ACTION_TYPES,canCreateInstrumentationRule:!!e.CREATE_INSTRUMENTATION_RULE,canFetchInstrumentationRuleTypes:!!e.GET_INSTRUMENTATION_RULE_TYPES,canApplyEffectiveConfig:n&&!!e.UPDATE_REMOTE_CONFIG&&!!e.GET_EFFECTIVE_CONFIG,canFetchEffectiveConfig:!!e.GET_EFFECTIVE_CONFIG,canFetchConfigYamls:!!e.GET_CONFIG_YAMLS,canFetchProfiling:n&&!!e.GET_PROFILING_SLOTS,canFetchCollectorInfo:n&&!!e.GET_GATEWAY_INFO,canManageSamplingRules:!!e.GET_SAMPLING_RULES,isEnterprise:a,isVm:r}})(t,r),[t,r]),resetCache:a(async()=>{await n.cache.reset()},[n])}};export{x as O,K as _,de as a,ie as b,oe as c,Ie as d,W as e,Z as f,ue as p,X as r,se as u};
|
|
5
|
+
`,te=(e,t)=>{if(e)return"function"==typeof e?e(t):e},re=(e,t)=>e[t],ae=(e,t,r)=>{if(void 0===t)return;return e?.transformResult?e.transformResult(t,r):t},ne=(e,t,r)=>{if(!e)return;const a=e.transformVariables;return a?a(t,r):t},oe=(t,r,n)=>{const{operations:o,context:s}=W(),i=re(o,t),c=e(()=>te(i?.document,s),[i,s]),d=e(()=>ne(i,r,s),[i,r,s]),u=!i||!c,l=!!i?.canRun&&!i.canRun(s),E=n?.skip||u||l,f=T(c??ee,{variables:d,skip:E,pollInterval:n?.pollInterval,fetchPolicy:n?.fetchPolicy??"cache-and-network",notifyOnNetworkStatusChange:n?.notifyOnNetworkStatusChange,client:i?.client,onCompleted:n?.onCompleted?e=>{const t=ae(i,e,s);void 0!==t&&n.onCompleted(t)}:void 0,onError:n?.onError}),_=e(()=>{if(!E)return ae(i,f.data,s)},[i,s,f.data,E]),S=a(async()=>{if(u)return{data:void 0};const e=await f.refetch();return{data:ae(i,e.data,s)}},[i,s,f,u]);return{data:_,loading:!E&&f.loading,error:f.error,refetch:S,unsupported:u}},se=(t,r)=>{const{operations:n,context:o}=W(),s=re(n,t),i=e(()=>te(s?.document,o),[s,o]),c=!s||!i,[d,u]=E(i??ee,{fetchPolicy:r?.fetchPolicy??"network-only",notifyOnNetworkStatusChange:r?.notifyOnNetworkStatusChange,client:s?.client});return{execute:a(async e=>{if(c)return{error:void 0};if(s?.canRun&&!s.canRun(o))return{data:void 0};const t=ne(s,e,o),r=await d({variables:t});return r.error?{error:r.error}:{data:ae(s,r.data,o)}},[s,o,d,c]),data:e(()=>ae(s,u.data,o),[s,o,u.data]),loading:u.loading,error:u.error,called:u.called,unsupported:c}},ie=(t,r)=>{const{operations:o,context:s}=W(),i=f(),c=re(o,t),d=e(()=>te(c?.document,s),[c,s]),u=!c||!d,[l,E]=n({loading:!1,called:!1}),T=a(()=>E({loading:!1,called:!1}),[]);return[a(async e=>{if(u||!d)return{error:void 0};if(c?.canRun&&!c.canRun(s))return{data:void 0};const t=ne(c,e,s),a=c?.client??i;E(e=>({...e,loading:!0,called:!0}));try{const e=await a.mutate({mutation:d,variables:t}),n=ae(c,e.data,s);if(E({data:n,loading:!1,error:void 0,called:!0}),r?.refetchQueries){const e=a.refetchQueries({include:r.refetchQueries});r?.awaitRefetchQueries&&await e}return void 0!==n&&r?.onCompleted?.(n),{data:n}}catch(e){const t=e;return E({data:void 0,loading:!1,error:t,called:!0}),r?.onError?.(t),{error:t}}},[c,s,i,d,u,r]),{data:l.data,loading:l.loading,error:l.error,called:l.called,unsupported:u,reset:T}]},ce=[],de=(e,t,r,a)=>{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:a})=>({namespace:e.namespace,name:e.name,kind:e.kind,selected:void 0!==t&&t,currentStreamName:a||r}));let c=0,d=0;for(const r of e){const e=t.find(e=>e.id.namespace===s&&e.id.name===r.name&&e.id.kind===r.kind),a=e?.dataStreamNames||[];r.selected&&!e?c++:!r.selected&&e&&a.length<=1&&d++}a(c,d),o.sources.push(...e)}return{payload:o,isEmpty:n}},ue=(e,t)=>{let r=!0;const a={namespaces:[]};for(const[n,{selected:o,currentStreamName:s}]of Object.entries(e))"boolean"==typeof o&&(r=!1,a.namespaces.push({namespace:n,selected:o,currentStreamName:s||t}));return{payload:a,isEmpty:r}},le={filter:{markedForInstrumentation:!0}},Ee=[],fe=[],Te=[],_e=async e=>{const t=(e=>{try{return new URL("/diagnose/download",e).toString()}catch{return null}})(e.httpUrl);if(t)try{const[r,a]=await Promise.all([Promise.resolve(e.authHeader?.()??{}),Promise.resolve(e.csrfHeader?.()??{})]),n=await fetch(t,{credentials:e.credentials??"same-origin",headers:{...r,...a}});if(!n.ok)throw new Error(`Failed to download diagnose archive: ${n.status} ${n.statusText}`);((e,t)=>{if("undefined"==typeof document)return;const r=URL.createObjectURL(e),a=document.createElement("a");a.href=r,a.download=t,document.body.appendChild(a),a.click(),document.body.removeChild(a),URL.revokeObjectURL(r)})(await n.blob(),`odigos-diagnose-${Date.now()}.tar.gz`)}catch(e){}},Se=[],pe=[],ye=e=>{if(!e)return;return{clusters:[e],totalNamespaces:e.namespaces?.length??0,totalWorkloads:(e.namespaces??[]).reduce((e,t)=>e+(t.workloads?.length??0),0),lastUpdated:e.timestamp}},Re=[],me=[],Oe=(e,t)=>({...e,fields:e.fields.filter(({value:e})=>void 0!==e),currentStreamName:t}),Ae=[],Ie=()=>{const{operations:t,context:r}=W(),n=f(),s=((e,t)=>{const r=f(),{notifyError:n,notifySuccess:o,notifyPending:s,notifyReadonly:i}=$(h.Source),{selectedStreamName:c}=P(),{setProgress:d,resetProgress:u}=G(),{setConfiguredSources:l,setConfiguredFutureApps:E}=U(),T=(e,t)=>{const{progress:r}=G.getState();e>0&&d(v.Instrumenting,{total:(r[v.Instrumenting]?.total||0)+e,current:r[v.Instrumenting]?.current||0}),t>0&&d(v.Uninstrumenting,{total:(r[v.Uninstrumenting]?.total||0)+t,current:r[v.Uninstrumenting]?.current||0})},_=a(async()=>{const{error:a}=await J(r,e.GET_WORKLOADS,le,t);a&&n(C.Read,a)},[r,e.GET_WORKLOADS,t,n]);return{useSources:()=>{const e=oe("GET_WORKLOADS",le,{fetchPolicy:"cache-first"});return{items:e.data?.workloads??Ee,loading:e.loading,refetch:_}},fetchAll:_,fetchByTargets:async(a,o)=>{const s=!!o?.slim,i=a.map(e=>D(e,h.Source)).filter(e=>e.namespace&&e.name&&e.kind);if(0===i.length)return;if(i.length>50)return void await _();const c=s&&e.GET_WORKLOADS_BY_IDS_SLIM?e.GET_WORKLOADS_BY_IDS_SLIM:e.GET_WORKLOADS_BY_IDS,{error:d}=await J(r,c,{ids:i.map(({namespace:e,kind:t,name:r})=>({namespace:e,kind:t,name:r}))},t);d?n(C.Read,d):await _()},fetchById:async a=>{const{data:o,error:s}=await J(r,e.GET_WORKLOADS_BY_IDS,{ids:[{namespace:a.namespace,kind:a.kind,name:a.name}]},t);if(!s)return o?.workloadsByIds?.find(e=>e.id.namespace===a.namespace&&e.id.kind===a.kind&&e.id.name===a.name);n(C.Read,s)},fetchLibraries:async a=>J(r,e.GET_SOURCE_LIBRARIES,a,t),fetchPeerSources:async a=>J(r,e.GET_PEER_SOURCES,{serviceName:a},t),usePeerSources:(e,t)=>oe("GET_PEER_SOURCES",e,t),persist:async(a,o)=>{if(t.isReadonly)return i();const{data:d}=await J(r,e.GET_WORKLOADS,le,t,"cache-first"),f=d?.workloads??Ee,{payload:_,isEmpty:S}=de(a,f,c,T),{payload:p,isEmpty:y}=ue(o,c);let R=!1;S||(R=!0,s("Persisting sources...")),y||R||s("Persisting namespaces...");const{error:m}=await X(r,e.PERSIST_SOURCES,_,t);if(m&&(u(v.Instrumenting),u(v.Uninstrumenting),n(C.Update,m)),e.PERSIST_NAMESPACES){const{error:a}=await X(r,e.PERSIST_NAMESPACES,p,t);a&&n(C.Update,a)}l({}),E({})},persistV2:async a=>{if(t.isReadonly)return i(),{error:"readonly"};const n=[];for(const[,o]of Object.entries(a)){const a={sources:[]},s={namespaces:[]};for(const e of o)e.name&&e.kind?a.sources.push(e):s.namespaces.push(e);if(s.namespaces.length>0&&e.PERSIST_NAMESPACES){const{error:a}=await X(r,e.PERSIST_NAMESPACES,s,t);a&&n.push(a)}if(a.sources.length>0){const{error:o}=await X(r,e.PERSIST_SOURCES,a,t);o&&n.push(o)}}return n.length?{error:n.join(", ")}:void 0},update:async(a,d)=>{if(t.isReadonly)return i();s("Updating source...");const u={sourceId:a,patchSourceRequest:{...d,currentStreamName:c}},{data:l,error:E}=await X(r,e.UPDATE_SOURCE,u,t);E?n(C.Update,E,a):l?.updateK8sActualSource&&o(C.Update,`Successfully updated "${a.name}" source`,a)},restartWorkloads:async a=>{if(t.isReadonly)return i();s("Restarting sources...");const{data:c,error:d}=await X(r,e.RESTART_WORKLOADS,{sourceIds:a},t);d?n(C.Update,d):c?.restartWorkloads&&o(C.Update,`Successfully restarted ${a.length} sources`)},restartPod:async(a,c)=>{if(t.isReadonly)return i();s("Restarting pod...");const{data:d,error:u}=await X(r,e.RESTART_POD,{namespace:a,name:c},t);u?n(C.Update,u):d?.restartPod&&o(C.Update,`Successfully restarted pod ${a}/${c}`)},recoverFromRollback:async a=>{if(t.isReadonly)return i();s("Recovering from rollback...");const{data:c,error:d}=await X(r,e.RECOVER_FROM_ROLLBACK,{sourceId:a},t);d?n(C.Update,d,a):c?.recoverFromRollbackForWorkload&&o(C.Update,"Successfully triggered recovery from rollback")}}})(t,r),i=((e,t)=>{const r=f(),{notifyError:a,notifySuccess:n,notifyReadonly:o}=$(h.Destination),{selectedStreamName:s}=P(),i=async()=>{const{error:n}=await J(r,e.GET_DESTINATIONS,void 0,t);n&&a(C.Read,n)};return{useDestinations:()=>{const e=oe("GET_DESTINATIONS",void 0,{fetchPolicy:"cache-first"});return{items:e.data?.computePlatform?.destinations??e.data?.destinations??me,loading:e.loading,refetch:i}},useDestinationCategories:()=>{const e=oe("GET_DESTINATION_CATEGORIES",void 0);return{data:e.data,loading:e.loading}},usePotentialDestinations:()=>{const e=oe("GET_POTENTIAL_DESTINATIONS",void 0);return{data:e.data,loading:e.loading}},fetchAll:i,testConnection:async a=>{const{data:n}=await X(r,e.TEST_DESTINATION_CONNECTION,{destination:Oe(a,s)},t);return n},create:async c=>{if(t.isReadonly)return o();const{error:d}=await X(r,e.CREATE_DESTINATION,{destination:Oe(c,s)},t);d?a(C.Create,d):(n(C.Create,`Successfully created "${c.type}" destination`),await i())},update:async(c,d)=>{if(t.isReadonly)return o();const{data:u,error:l}=await X(r,e.UPDATE_DESTINATION,{id:c,destination:Oe(d,s)},t);l?a(C.Update,l,c):u?.updateDestination&&(n(C.Update,`Successfully updated "${d.type}" destination`,c),await i())},remove:async c=>{if(t.isReadonly)return o();const{data:d}=await J(r,e.GET_DESTINATIONS,void 0,t,"cache-first"),u=d?.computePlatform?.destinations??d?.destinations??me,l=u.find(e=>F(e)===c)?.destinationType?.type,{error:E}=await X(r,e.DELETE_DESTINATION,{id:c,currentStreamName:s},t);E?a(C.Delete,E,c):(n(C.Delete,`Successfully deleted "${l??c}" destination`,c),await i())}}})(t,r),c=((t,r)=>{const a=f(),{notifyError:n,notifySuccess:o,notifyReadonly:s}=$(h.Action),i=async()=>{const{error:e}=await J(a,t.GET_ACTIONS,void 0,r);e&&n(C.Read,e)};return{useActions:()=>{const e=oe("GET_ACTIONS",void 0,{fetchPolicy:"cache-first"});return{items:e.data?.computePlatform?.actions??e.data?.actions??fe,loading:e.loading,refetch:i}},useActionTypes:()=>{const t=oe("GET_ACTION_TYPES",void 0,{fetchPolicy:"cache-first"});return{options:e(()=>w(t.data)||Te,[t.data]),loading:t.loading}},fetchAll:i,create:async e=>{if(r.isReadonly)return s();if(!t.CREATE_ACTION)return;const{error:c}=await X(a,t.CREATE_ACTION,{action:e},r);c?n(C.Create,c):(o(C.Create,`Successfully created "${e.type}" action`),await i())},update:async(e,c)=>{if(r.isReadonly)return s();if(!t.UPDATE_ACTION)return;const{error:d}=await X(a,t.UPDATE_ACTION,{id:e,action:c},r);d?n(C.Update,d,e):(o(C.Update,`Successfully updated "${c.type}" action`,e),await i())},remove:async(e,c)=>{if(r.isReadonly)return s();if(!t.DELETE_ACTION)return;const{error:d}=await X(a,t.DELETE_ACTION,{id:e,actionType:c},r);d?n(C.Delete,d,e):(o(C.Delete,`Successfully deleted "${c}" action`,e),await i())}}})(t,r),d=((t,r)=>{const a=f(),{notifyError:n,notifySuccess:o,notifyReadonly:s}=$(h.InstrumentationRule),i=async()=>{const{error:e}=await J(a,t.GET_INSTRUMENTATION_RULES,void 0,r);e&&n(C.Read,e)};return{useRules:()=>{const t=oe("GET_INSTRUMENTATION_RULES",void 0,{fetchPolicy:"cache-first"});return{items:e(()=>(t.data?.computePlatform?.instrumentationRules??t.data?.instrumentationRules??[]).map(b),[t.data]),loading:t.loading,refetch:i}},useRuleTypes:()=>{const t=oe("GET_INSTRUMENTATION_RULE_TYPES",void 0,{fetchPolicy:"cache-first"});return{options:e(()=>M(t.data)||Ae,[t.data]),loading:t.loading}},fetchAll:i,create:async(e,c)=>{if(r.isReadonly)return s();if(!t.CREATE_INSTRUMENTATION_RULE)return;const{error:d}=await X(a,t.CREATE_INSTRUMENTATION_RULE,{instrumentationRule:k(e)},r);d?n(C.Create,d):(o(C.Create,`Successfully created${c?` "${c}"`:""} rule`),await i())},update:async(e,c,d)=>{if(r.isReadonly)return s();if(!t.UPDATE_INSTRUMENTATION_RULE)return;const{error:u}=await X(a,t.UPDATE_INSTRUMENTATION_RULE,{ruleId:e,instrumentationRule:k(c)},r);u?n(C.Update,u,e):(o(C.Update,`Successfully updated${d?` "${d}"`:""} rule`,e),await i())},remove:async(e,c)=>{if(r.isReadonly)return s();if(!t.DELETE_INSTRUMENTATION_RULE)return;const{error:d}=await X(a,t.DELETE_INSTRUMENTATION_RULE,{ruleId:e},r);d?n(C.Delete,d,e):(o(C.Delete,`Successfully deleted${c?` "${c}"`:""} rule`,e),await i())}}})(t,r),u=((e,t)=>{const r=f(),{addNotification:a}=m(),{setDataStreams:n}=P(),s=(e,t)=>a({type:I.Error,title:e,message:t}),i=async()=>{const{data:a,error:o}=await J(r,e.GET_DATA_STREAMS,void 0,t);if(o)s(C.Read,o);else if(a){const e=a.computePlatform?.dataStreams??a.dataStreams??[];n(e)}},c=e.CREATE_DATA_STREAM?async n=>{if(t.isReadonly)return B(a);const{error:o}=await X(r,e.CREATE_DATA_STREAM,{stream:n},t);o?s(C.Create,o):await i()}:void 0;return{useDataStreams:()=>{const e=oe("GET_DATA_STREAMS",void 0,{fetchPolicy:"cache-first"}),t=e.data?.computePlatform?.dataStreams??e.data?.dataStreams??Re;return o(()=>{n(t)},[JSON.stringify(t.map(e=>e.name))]),{items:t,loading:e.loading,refetch:i}},fetchAll:i,create:c,update:async(n,o)=>{if(t.isReadonly)return B(a);const{error:c}=await X(r,e.UPDATE_DATA_STREAM,{id:n,dataStream:o},t);c?s(C.Update,c):await i()},remove:async n=>{if(t.isReadonly)return B(a);const{error:o}=await X(r,e.DELETE_DATA_STREAM,{id:n},t);o?s(C.Delete,o):await i()}}})(t,r),l=((e,t)=>{const r=f(),{notifyError:a,notifyReadonly:n}=$(h.Namespace),o=async()=>{const n=await J(r,e.GET_NAMESPACES_WITH_WORKLOADS,void 0,t);return n.error&&a(C.Read,n.error),n};return{useNamespaces:()=>{const e=oe("GET_NAMESPACES_WITH_WORKLOADS",void 0,{fetchPolicy:"cache-and-network"});return{items:e.data?.namespaces??pe,loading:e.loading,refetch:o}},fetchAll:o,persist:async o=>{if(t.isReadonly)return n();const{error:s}=await X(r,e.PERSIST_NAMESPACES,o,t);return s&&a(C.Update,s),s?{error:s}:void 0}}})(t,r),E=((e,t)=>{const r=f(),{notifyError:a}=$(h.Source);return{fetch:async n=>{const o=await J(r,e.GET_K8S_MANIFEST,n,t);return o.error&&a(C.Read,o.error),o}}})(t,r),T=((e,t)=>{const r=f(),{notifyError:a,notifySuccess:n,notifyReadonly:o}=$(h.Source);return{useEffectiveConfig:(e,t)=>oe("GET_EFFECTIVE_CONFIG",e,t),useConfigYamls:e=>oe("GET_CONFIG_YAMLS",void 0,e),getEffectiveConfig:async a=>e.GET_EFFECTIVE_CONFIG?J(r,e.GET_EFFECTIVE_CONFIG,{id:a},t):{error:"GET_EFFECTIVE_CONFIG not configured"},applyConfigurations:e.UPDATE_REMOTE_CONFIG?async(n,s)=>{if(t.isReadonly)return o();const{error:i}=await X(r,e.UPDATE_REMOTE_CONFIG,{formData:n,connectionIds:s},t);return i&&a(C.Update,i),i?{error:i}:void 0}:void 0,getConfigYamls:e.GET_CONFIG_YAMLS?async()=>J(r,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 X(r,e.UPDATE_LOCAL_UI_CONFIG,{config:s},t);return i?a(C.Update,i):n(C.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 X(r,e.RESET_LOCAL_UI_CONFIG_TO_FACTORY_DEFAULTS,void 0,t);return s?a(C.Update,s):n(C.Update,"Local UI configuration reset to factory defaults"),s?{error:s}:void 0}:void 0}})(t,r),_=((e,t)=>{const r=f(),{apolloConfig:a}=W();return{fetchDescribeOdigos:e.GET_DESCRIBE_ODIGOS?async()=>J(r,e.GET_DESCRIBE_ODIGOS,void 0,t):void 0,fetchDescribeSource:e.GET_DESCRIBE_SOURCE?async a=>J(r,e.GET_DESCRIBE_SOURCE,a,t):void 0,downloadDiagnose:e.GET_DIAGNOSE?async(n,o)=>{const s=await J(r,e.GET_DIAGNOSE,{input:n,dryRun:o?.dryRun??!1},t),i=s?.data?.stats?.fileCount??0;return!s.error&&i>0&&!o?.dryRun&&await _e(a),s}:void 0}})(t,r),S=((e,t)=>{const r=f(),{notifyError:a,notifyReadonly:n}=$(h.Source),o=async()=>{e.GET_TOKENS&&await J(r,e.GET_TOKENS,void 0,t)};return{useTokens:()=>{const e=oe("GET_TOKENS",void 0,{fetchPolicy:"cache-first"});return{items:e.data??ce,loading:e.loading,refetch:o}},updateToken:e.UPDATE_TOKEN?async o=>{if(t.isReadonly)return n();const{error:s}=await X(r,e.UPDATE_TOKEN,{token:o},t);return s&&a(C.Update,s),s?{error:s}:void 0}:void 0}})(t,r),p=((e,t)=>{const r=f();return{useMetrics:e=>oe("GET_METRICS",void 0,e),fetch:async()=>J(r,e.GET_METRICS,void 0,t)}})(t,r),y=((e,t)=>{const r=f();return{useServiceMap:e=>oe("GET_SERVICE_MAP",void 0,e),fetch:e.GET_SERVICE_MAP?async()=>J(r,e.GET_SERVICE_MAP,void 0,t):void 0}})(t,r),R=((e,t)=>{const r=f();return{useSlots:e=>oe("GET_PROFILING_SLOTS",void 0,e),useSourceProfiling:(e,t)=>oe("GET_SOURCE_PROFILING",e,t),fetchSlots:e.GET_PROFILING_SLOTS?async()=>J(r,e.GET_PROFILING_SLOTS,void 0,t):void 0,fetchSourceProfiling:e.GET_SOURCE_PROFILING?async a=>J(r,e.GET_SOURCE_PROFILING,a,t):void 0,enableProfiling:e.ENABLE_SOURCE_PROFILING?async a=>X(r,e.ENABLE_SOURCE_PROFILING,a,t):void 0}})(t,r),O=((e,t)=>{const r=f();return{useGatewayInfo:e=>oe("GET_GATEWAY_INFO",void 0,e),useGatewayPods:e=>oe("GET_GATEWAY_PODS",void 0,e),useNodeCollectorInfo:e=>oe("GET_NODE_COLLECTOR_INFO",void 0,e),useNodeCollectorPods:e=>oe("GET_NODE_COLLECTOR_PODS",void 0,e),usePodInfo:(e,t)=>oe("GET_COLLECTOR_POD_INFO",e,t),getGatewayInfo:e.GET_GATEWAY_INFO?async()=>J(r,e.GET_GATEWAY_INFO,void 0,t):void 0,getGatewayPods:e.GET_GATEWAY_PODS?async()=>J(r,e.GET_GATEWAY_PODS,void 0,t):void 0,getNodeCollectorInfo:e.GET_NODE_COLLECTOR_INFO?async()=>J(r,e.GET_NODE_COLLECTOR_INFO,void 0,t):void 0,getNodeCollectorPods:e.GET_NODE_COLLECTOR_PODS?async()=>J(r,e.GET_NODE_COLLECTOR_PODS,void 0,t):void 0,getExtendedPodInfo:e.GET_COLLECTOR_POD_INFO?async(a,n)=>J(r,e.GET_COLLECTOR_POD_INFO,{namespace:a,name:n},t):void 0}})(t,r),A=((e,t)=>{const r=f(),{notifyError:a,notifySuccess:n,notifyReadonly:o}=$(h.SamplingRule),s=async()=>{e.GET_SAMPLING_RULES&&await J(r,e.GET_SAMPLING_RULES,void 0,t)},i=(e,i)=>e?async c=>{if(t.isReadonly)return o();const{error:d}=await X(r,e,c,t);return d?a(i,d):(n(C.Create,"Successfully created sampling rule"),await s()),d?{error:d}:void 0}:void 0,c=(e,i)=>e?async(c,d)=>{if(t.isReadonly)return o();const{error:u}=await X(r,e,{samplingId:d.samplingId,ruleId:c,rule:d.rule},t);return u?a(i,u):(n(C.Update,"Successfully updated sampling rule"),await s()),u?{error:u}:void 0}:void 0,d=e=>e?async(i,c)=>{if(t.isReadonly)return o();const{error:d}=await X(r,e,{samplingId:c,ruleId:i},t);return d?a(C.Delete,d):(n(C.Delete,"Successfully deleted sampling rule"),await s()),d?{error:d}:void 0}:void 0;return{useSamplingRules:()=>{const e=oe("GET_SAMPLING_RULES",void 0,{fetchPolicy:"cache-first"});return{items:e.data?.computePlatform?.samplingRules??e.data?.samplingRules??Se,k8sHealthProbesConfig:e.data?.computePlatform?.k8sHealthProbesConfig??e.data?.k8sHealthProbesConfig??null,loading:e.loading,refetch:s}},fetchAll:e.GET_SAMPLING_RULES?async()=>J(r,e.GET_SAMPLING_RULES,void 0,t):void 0,createNoisy:i(e.CREATE_NOISY_OPERATION_RULE,C.Create),updateNoisy:c(e.UPDATE_NOISY_OPERATION_RULE,C.Update),deleteNoisy:d(e.DELETE_NOISY_OPERATION_RULE),createHighlyRelevant:i(e.CREATE_HIGHLY_RELEVANT_OPERATION_RULE,C.Create),updateHighlyRelevant:c(e.UPDATE_HIGHLY_RELEVANT_OPERATION_RULE,C.Update),deleteHighlyRelevant:d(e.DELETE_HIGHLY_RELEVANT_OPERATION_RULE),createCostReduction:i(e.CREATE_COST_REDUCTION_RULE,C.Create),updateCostReduction:c(e.UPDATE_COST_REDUCTION_RULE,C.Update),deleteCostReduction:d(e.DELETE_COST_REDUCTION_RULE),updateK8sHealthProbesConfig:e.UPDATE_LOCAL_UI_SAMPLING_CONFIG?async n=>{if(t.isReadonly)return o();const{error:i}=await X(r,e.UPDATE_LOCAL_UI_SAMPLING_CONFIG,{config:{k8sHealthProbesSampling:n}},t);return i?a(C.Update,i):await s(),i?{error:i}:void 0}:void 0}})(t,r),N=((t,r)=>{const n=f();return{useSnapshots:()=>{const t=r.proxyID,n=!!t,o=oe("GET_ALL_CLUSTER_SNAPSHOTS",void 0,{fetchPolicy:"cache-and-network",skip:n}),s=oe("GET_CLUSTER_SNAPSHOT",t?{clusterId:t}:void 0,{fetchPolicy:"cache-and-network",skip:!n}),i=e(()=>n?ye(s.data):o.data,[n,s.data,o.data]),c=a(async()=>{if(!n)return o.refetch();const{data:e}=await s.refetch();return{data:ye(e)}},[n,o.refetch,s.refetch]);return{data:i,loading:n?s.loading:o.loading,unsupported:n?s.unsupported:o.unsupported,refetch:c}},getAllClusterSnapshots:t.GET_ALL_CLUSTER_SNAPSHOTS?async()=>J(n,t.GET_ALL_CLUSTER_SNAPSHOTS,void 0,r):void 0,getClusterSnapshot:t.GET_CLUSTER_SNAPSHOT?async e=>J(n,t.GET_CLUSTER_SNAPSHOT,{clusterId:e},r):void 0}})(t,r);return{sourcesApi:s,destinationsApi:i,actionsApi:c,instrumentationRulesApi:d,dataStreamsApi:u,namespacesApi:l,k8sManifestApi:E,configApi:T,describeApi:_,tokensApi:S,metricsApi:p,serviceMapApi:y,profilingApi:R,collectorsApi:O,samplingApi:A,snapshotsApi:N,capabilities:e(()=>((e,t)=>{const r=t.platformType===g.Vm,a=t.tier===L.Onprem,n=!r;return{canBulkPersistSources:n&&!!e.PERSIST_SOURCES,canInstrumentNamespaces:n&&!!e.PERSIST_NAMESPACES,canFetchSnapshots:n&&!!e.GET_ALL_CLUSTER_SNAPSHOTS,canRecoverFromRollback:n&&!!e.RECOVER_FROM_ROLLBACK,canRestartWorkloads:n&&!!e.RESTART_WORKLOADS,canFetchPeerSources:!!e.GET_PEER_SOURCES,canFetchSourceLibraries:!!e.GET_SOURCE_LIBRARIES,canFetchK8sManifest:n&&!!e.GET_K8S_MANIFEST,canCreateDestination:!!e.CREATE_DESTINATION,canTestConnection:n&&!!e.TEST_DESTINATION_CONNECTION,canFetchDestinationCategories:!!e.GET_DESTINATION_CATEGORIES,canFetchPotentialDestinations:n&&!!e.GET_POTENTIAL_DESTINATIONS,canCreateAction:!!e.CREATE_ACTION,canFetchActionTypes:!!e.GET_ACTION_TYPES,canCreateInstrumentationRule:!!e.CREATE_INSTRUMENTATION_RULE,canFetchInstrumentationRuleTypes:!!e.GET_INSTRUMENTATION_RULE_TYPES,canApplyEffectiveConfig:n&&!!e.UPDATE_REMOTE_CONFIG&&!!e.GET_EFFECTIVE_CONFIG,canFetchEffectiveConfig:!!e.GET_EFFECTIVE_CONFIG,canFetchConfigYamls:!!e.GET_CONFIG_YAMLS,canFetchProfiling:n&&!!e.GET_PROFILING_SLOTS,canFetchCollectorInfo:n&&!!e.GET_GATEWAY_INFO,canManageSamplingRules:!!e.GET_SAMPLING_RULES,isEnterprise:a,isVm:r}})(t,r),[t,r]),resetCache:a(async()=>{await n.cache.reset()},[n])}};export{x as O,K as _,de as a,ie as b,oe as c,Ie as d,W as e,Z as f,ue as p,X as r,se as u};
|
|
@@ -27,5 +27,7 @@ export interface SectionCardProps {
|
|
|
27
27
|
children?: ReactNode;
|
|
28
28
|
backgroundColor?: CSSProperties['backgroundColor'];
|
|
29
29
|
padding?: number;
|
|
30
|
+
/** Renders a transparent card with a border matching the input border (1px silver.500) instead of a filled background. */
|
|
31
|
+
bordered?: boolean;
|
|
30
32
|
}
|
|
31
33
|
export declare const SectionCard: React.ForwardRefExoticComponent<SectionCardProps & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -12,6 +12,8 @@ export interface InputListProps extends FieldMessageProps {
|
|
|
12
12
|
required?: boolean;
|
|
13
13
|
placeholder?: string;
|
|
14
14
|
disabled?: boolean;
|
|
15
|
+
/** Renders without the card background and horizontal padding (e.g. inline in the settings form). */
|
|
16
|
+
plain?: boolean;
|
|
15
17
|
}
|
|
16
18
|
export declare const InputList: FC<InputListProps>;
|
|
17
19
|
export {};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { type FC, type ReactNode } from 'react';
|
|
2
|
+
export interface RadioCardProps {
|
|
3
|
+
'data-id'?: string;
|
|
4
|
+
/** Bold title shown next to the radio. */
|
|
5
|
+
title: string;
|
|
6
|
+
/** Optional supporting copy under the title. */
|
|
7
|
+
description?: ReactNode;
|
|
8
|
+
/** Optional rich content rendered below the header (e.g. a policy preview). */
|
|
9
|
+
body?: ReactNode;
|
|
10
|
+
/** Optional note rendered at the bottom of the card (e.g. a contextual banner). */
|
|
11
|
+
footerNote?: ReactNode;
|
|
12
|
+
checked: boolean;
|
|
13
|
+
onChange: (checked: boolean) => void;
|
|
14
|
+
disabled?: boolean;
|
|
15
|
+
}
|
|
16
|
+
export declare const RadioCard: FC<RadioCardProps>;
|
package/lib/components/v2.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{
|
|
1
|
+
export{eM as Autocomplete,R as Badge,B as Button,z as ButtonSize,gs as ButtonTab,gt as ButtonTabList,L as ButtonVariants,V as Checkbox,gu as CheckboxList,dn as CheckboxSize,bm as CliCommand,bh as Condition,b5 as Conditions,gv as DEFAULT_TIME_UNITS,b4 as DataCard,ag as Drawer,b_ as DropData,c0 as DropDataAlignX,b$ as DropDataAlignY,aR as DropDown,aa as FieldMessage,a9 as FieldTitle,dF as GaugeChart,gw as GaugeChartVariant,gx as Header,gy as HoverActions,aS as IconButton,aT as IconButtonSize,w as IconGroup,an as Input,ar as InputCardTable,af as InputList,ab as InputTable,bB as Island,aU as Loader,c3 as Modal,gz as Navbar,N as NoData,Y as Note,ak as Radio,b1 as RadioCard,gA as RadioGroup,am as RadioSize,U as Search,aK as SectionCard,gB as SectionCardSize,M as Segment,at as SegmentSize,bx as SegmentVariant,dE as StatusCard,dh as Stepper,bz as Table,bA as TableVariant,bb as Tag,bl as TagVariants,au as TextArea,dG as TextCard,d_ as TimeInput,ad as Toggle,ae as ToggleLabelAlign,gC as ToggleList,aX as ToggleSize,gD as ToggleVariant,as as TruncatableTypography,T as Typography,O as TypographyColor,a as TypographySize,aY as TypographyVariants,aB as WarningModal,gE as resolveTypographyColor}from"../chunks/ui-components-BDtk3K99.js";import"react/jsx-runtime";import"styled-components";import"../icons.js";import"zustand";import"react";import"javascript-time-ago";import"javascript-time-ago/locale/en";import"prism-react-renderer";import"../chunks/vendor-BFqT13Me.js";import"zustand/middleware";import"react-error-boundary";import"react-dom";import"virtua";
|
package/lib/components.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{aQ as CenterThis,
|
|
1
|
+
export{aQ as CenterThis,eR as Code,ao as Divider,g8 as ErrorBoundary,g9 as FadeLoader,a8 as FlexColumn,y as FlexRow,ga as IconButton,gb as IconGroup,gc as IconWrapped,gd as ImageControlled,ge as LoadingText,gf as ModalBody,gg as NotificationNote,gh as Overlay,aO as Padding,dg as PageContent,P as Popup,gi as ScrollX,Q as ScrollY,aP as SkeletonLoader,gj as TableContainer,gk as TableTitleWrap,gl as TableWrap,gm as Text,gn as ToggleCodeComponent,aq as Tooltip,dH as UpgradeRequiredWrapper,go as VerticalScroll,gp as getLinksFromText,gq as getStrongsFromText,gr as renderText}from"./chunks/ui-components-BDtk3K99.js";import"react/jsx-runtime";import"styled-components";import"./icons.js";import"zustand";import"react";import"javascript-time-ago";import"javascript-time-ago/locale/en";import"prism-react-renderer";import"./chunks/vendor-BFqT13Me.js";import"zustand/middleware";import"react-error-boundary";import"react-dom";import"virtua";
|
|
@@ -27,6 +27,63 @@ export declare const DISPLAY_TITLES: {
|
|
|
27
27
|
KIND: string;
|
|
28
28
|
CONNECTION: string;
|
|
29
29
|
CONNECTIONS: string;
|
|
30
|
+
CLOUD_CONNECTOR: string;
|
|
31
|
+
CREATE_CLOUD_CONNECTOR: string;
|
|
32
|
+
CLOUD_CONNECTOR_SELECT_PROVIDER_TITLE: string;
|
|
33
|
+
CLOUD_CONNECTOR_SELECT_PROVIDER_SUBTITLE: string;
|
|
34
|
+
CLOUD_CONNECTOR_PERMISSIONS_NOTE: string;
|
|
35
|
+
CLOUD_CONNECTOR_PERMISSION_DISCOVERY_ONLY_TITLE: string;
|
|
36
|
+
CLOUD_CONNECTOR_PERMISSION_DISCOVERY_ONLY_DESC: string;
|
|
37
|
+
CLOUD_CONNECTOR_PERMISSION_DISCOVERY_INSTRUMENTATION_TITLE: string;
|
|
38
|
+
CLOUD_CONNECTOR_PERMISSION_DISCOVERY_INSTRUMENTATION_DESC: string;
|
|
39
|
+
CLOUD_CONNECTOR_PERMISSION_CUSTOM_TITLE: string;
|
|
40
|
+
CLOUD_CONNECTOR_PERMISSION_CUSTOM_DESC: string;
|
|
41
|
+
CLOUD_CONNECTOR_POLICY_PREVIEW: string;
|
|
42
|
+
CLOUD_CONNECTOR_POLICY_NOTE: string;
|
|
43
|
+
CLOUD_CONNECTOR_POLICY_NOTE_CUSTOM: string;
|
|
44
|
+
CLOUD_CONNECTOR_CUSTOM_COL_TYPE: string;
|
|
45
|
+
CLOUD_CONNECTOR_CUSTOM_COL_DISCOVERY: string;
|
|
46
|
+
CLOUD_CONNECTOR_CUSTOM_COL_INSTRUMENTATION: string;
|
|
47
|
+
CLOUD_CONNECTOR_SETUP_CREDENTIALS_TITLE: string;
|
|
48
|
+
CLOUD_CONNECTOR_SETUP_CREDENTIALS_SUBTITLE: string;
|
|
49
|
+
CLOUD_CONNECTOR_AUTH_TITLE: string;
|
|
50
|
+
CLOUD_CONNECTOR_AUTH_SUBTITLE: string;
|
|
51
|
+
CLOUD_CONNECTOR_AUTH_ASSUME_ROLE: string;
|
|
52
|
+
CLOUD_CONNECTOR_AUTH_STATIC_KEYS: string;
|
|
53
|
+
CLOUD_CONNECTOR_AUTH_ASSUME_ROLE_NOTE: string;
|
|
54
|
+
CLOUD_CONNECTOR_AUTH_STATIC_KEYS_NOTE: string;
|
|
55
|
+
CLOUD_CONNECTOR_SETUP_METHOD_TITLE: string;
|
|
56
|
+
CLOUD_CONNECTOR_SETUP_METHOD_SUBTITLE: string;
|
|
57
|
+
CLOUD_CONNECTOR_SETUP_METHOD_CLOUDFORMATION: string;
|
|
58
|
+
CLOUD_CONNECTOR_SETUP_METHOD_TERRAFORM: string;
|
|
59
|
+
CLOUD_CONNECTOR_SETUP_METHOD_AWS_CLI: string;
|
|
60
|
+
CLOUD_CONNECTOR_SETUP_METHOD_MANUAL: string;
|
|
61
|
+
CLOUD_CONNECTOR_CREATE_ROLE_TITLE: string;
|
|
62
|
+
CLOUD_CONNECTOR_CREATE_ROLE_STEPS_HEADING: string;
|
|
63
|
+
CLOUD_CONNECTOR_ENTER_ARN_TITLE: string;
|
|
64
|
+
CLOUD_CONNECTOR_ENTER_ARN_SUBTITLE: string;
|
|
65
|
+
CLOUD_CONNECTOR_FIELD_ACCOUNT_ID_LABEL: string;
|
|
66
|
+
CLOUD_CONNECTOR_FIELD_ACCOUNT_ID_PLACEHOLDER: string;
|
|
67
|
+
CLOUD_CONNECTOR_FIELD_ACCOUNT_ID_HELP: string;
|
|
68
|
+
CLOUD_CONNECTOR_FIELD_ACCESS_TOKEN_LABEL: string;
|
|
69
|
+
CLOUD_CONNECTOR_FIELD_ACCESS_TOKEN_PLACEHOLDER: string;
|
|
70
|
+
CLOUD_CONNECTOR_FIELD_ACCESS_TOKEN_HELP: string;
|
|
71
|
+
CLOUD_CONNECTOR_FIELD_SECRET_ID_LABEL: string;
|
|
72
|
+
CLOUD_CONNECTOR_FIELD_SECRET_ID_PLACEHOLDER: string;
|
|
73
|
+
CLOUD_CONNECTOR_FIELD_SECRET_ID_HELP: string;
|
|
74
|
+
CLOUD_CONNECTOR_VALIDATE_TITLE: string;
|
|
75
|
+
CLOUD_CONNECTOR_VALIDATE_SUBTITLE: string;
|
|
76
|
+
CLOUD_CONNECTOR_VALIDATE_SUCCESS: string;
|
|
77
|
+
CLOUD_CONNECTOR_VALIDATE_FAILURE: string;
|
|
78
|
+
CLOUD_CONNECTOR_VALIDATE_EMPTY: string;
|
|
79
|
+
CLOUD_CONNECTOR_VALIDATE_ACCOUNT: string;
|
|
80
|
+
CLOUD_CONNECTOR_VALIDATE_IDENTITY: string;
|
|
81
|
+
CLOUD_CONNECTOR_TESTING_TITLE: string;
|
|
82
|
+
CLOUD_CONNECTOR_CONNECTION_FAILED_TITLE: string;
|
|
83
|
+
CLOUD_CONNECTOR_CONNECTION_FAILED_DEFAULT: string;
|
|
84
|
+
CLOUD_CONNECTOR_CREATED_SUCCESS: string;
|
|
85
|
+
CLOUD_CONNECTOR_CREATED_MODAL_TITLE: string;
|
|
86
|
+
CLOUD_CONNECTOR_CREATED_MODAL_DESC: string;
|
|
30
87
|
DATA_STREAM: string;
|
|
31
88
|
DATA_STREAMS: string;
|
|
32
89
|
STREAM_NAME: string;
|
|
@@ -263,6 +320,7 @@ export declare const BUTTON_TEXTS: {
|
|
|
263
320
|
GET_STARTED: string;
|
|
264
321
|
ADD: string;
|
|
265
322
|
ADD_NEW: string;
|
|
323
|
+
CREATE_NEW: string;
|
|
266
324
|
NEW: string;
|
|
267
325
|
SELECT: string;
|
|
268
326
|
CREATE: string;
|
|
@@ -273,11 +331,17 @@ export declare const BUTTON_TEXTS: {
|
|
|
273
331
|
RESTART_POD: string;
|
|
274
332
|
REFRESH: string;
|
|
275
333
|
CANCEL: string;
|
|
334
|
+
CLOSE: string;
|
|
276
335
|
DONE: string;
|
|
277
336
|
SAVE: string;
|
|
278
337
|
BACK: string;
|
|
279
338
|
CONFIRM: string;
|
|
280
339
|
NEXT: string;
|
|
340
|
+
VERIFY: string;
|
|
341
|
+
VERIFY_AND_CREATE_CONNECTOR: string;
|
|
342
|
+
STAY_ON_CONNECTIONS: string;
|
|
343
|
+
GO_TO_CONNECTOR_OVERVIEW: string;
|
|
344
|
+
RETRY: string;
|
|
281
345
|
TEST: string;
|
|
282
346
|
TEST_CONNECTION: string;
|
|
283
347
|
INSTRUMENT: string;
|
package/lib/constants.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{A as ACTION_OPTIONS,
|
|
1
|
+
export{A as ACTION_OPTIONS,fL as ALL_SOURCES,bE as BTN_CANCEL,bM as BTN_CONTINUE_EDITING,dL as BTN_CREATE_FIRST_RULE,bC as BTN_CREATE_RULE,bH as BTN_DELETE_RULE,d$ as BTN_EDIT_AUTO_RULE,bG as BTN_EDIT_RULE,bW as BTN_SAVE,bF as BTN_SAVE_RULE,b2 as BUTTON_TEXTS,bI as CATEGORY_DESCRIPTIONS,eC as CATEGORY_LABELS,bL as CATEGORY_TITLES,fM as CREATE_COST_REDUCTION_AUTO_RULE_DRAWER_TITLE,fN as CREATE_HIGHLY_RELEVANT_AUTO_RULE_DRAWER_TITLE,fO as CREATE_NOISY_AUTO_RULE_DRAWER_TITLE,a_ as DEFAULT_CLUSTER_ID,aZ as DEFAULT_CLUSTER_NAME,dz as DEFAULT_DATA_STREAM_NAME,e5 as DESC_DURATION,fP as DESC_ERRORS,e8 as DESC_OPERATION,fQ as DESC_PERCENTAGE_HIGHLY_RELEVANT,aG as DESC_PERCENTAGE_NOISY,eD as DESC_RULE_TYPE,eL as DESC_SOURCE_SCOPE,aV as DESTINATION_CATEGORIES,az as DISPLAY_LANGUAGES,p as DISPLAY_TITLES,av as DOCS_BASE_URL,D as DestinationCategoryTypes,bS as EDIT_COST_REDUCTION_AUTO_RULE_DRAWER_SUBTITLE,bT as EDIT_COST_REDUCTION_AUTO_RULE_DRAWER_TITLE,bQ as EDIT_HIGHLY_RELEVANT_AUTO_RULE_DRAWER_SUBTITLE,bR as EDIT_HIGHLY_RELEVANT_AUTO_RULE_DRAWER_TITLE,bU as EDIT_NOISY_AUTO_RULE_DRAWER_SUBTITLE,bV as EDIT_NOISY_AUTO_RULE_DRAWER_TITLE,bJ as EDIT_TITLES,ek as EMPTY_VALUE,al as EXTRACTION_FORMAT_COPY,ai as EXTRACT_ATTRIBUTE_FORM,dJ as FILTER_TYPE_ALL,F as FORM_ALERTS,I as INSTRUMENTATION_RULE_OPTIONS,e6 as LABEL_CUSTOM_DURATION,aL as LABEL_CUSTOM_PERCENTAGE,aJ as LABEL_DISABLED,dI as LABEL_DISABLED_RULE,eu as LABEL_DROP_ALL,aD as LABEL_DROP_AT_MOST,aI as LABEL_ENABLED,ed as LABEL_HTTP_ROUTE,ef as LABEL_HTTP_ROUTE_PREFIX,eh as LABEL_KAFKA_TOPIC,ev as LABEL_KEEP_ALL,er as LABEL_KEEP_AT_LEAST,es as LABEL_KEEP_AT_MOST,eq as LABEL_KEEP_PERCENTAGE,e4 as LABEL_KEEP_TRACES_DURATION,e2 as LABEL_KEEP_TRACES_ERRORS,eg as LABEL_METHOD,ey as LABEL_NOTE,e0 as LABEL_NO_PREVIEW,ej as LABEL_OPERATION_TYPE,fR as LABEL_RULE_DISABLED,fS as LABEL_RULE_ENABLED,ew as LABEL_RULE_NAME,ex as LABEL_RULE_TYPE,et as LABEL_SAMPLE,ea as LABEL_SERVER_ADDRESS,ec as LABEL_TEMPLATED_PATH,ee as LABEL_TEMPLATED_PATH_PREFIX,bu as LANGUAGE_OPTIONS,dl as MONITORS_OPTIONS,eF as NOTE_ENTIRE_CLUSTER,eK as NOTE_SOURCE_SCOPE_LOGIC,fT as OPENTELEMETRY_EBPF_DISTRO_OPTION,em as OPERATION_ALL,el as OPERATION_HTTP_CLIENT,ei as OPERATION_HTTP_SERVER,en as OPERATION_KAFKA_CONSUMER,eo as OPERATION_KAFKA_PRODUCER,bt as OTEL_DISTRO_NAME_OPTIONS,ep as PERCENTAGE_SECTION_DESCRIPTIONS,eA as PLACEHOLDER_NOTE,eb as PLACEHOLDER_ROUTE,ez as PLACEHOLDER_RULE_NAME,eN as PLACEHOLDER_SEARCH_SOURCE,e9 as PLACEHOLDER_SERVER_ADDRESS,bj as PROCESS_ATTRIBUTE_NAMES,ah as REGEX_TESTER_DRAWER,aH as SAMPLING_AUTO_RULE_TITLE,dR as SAMPLING_BTN_CREATE_RULE,dP as SAMPLING_BTN_DOCS,dQ as SAMPLING_BTN_REFRESH,aF as SAMPLING_COST_REDUCTION_AUTO_RULE_TITLE,bN as SAMPLING_DEFAULT_CONFIRM_DESCRIPTION,bP as SAMPLING_DEFAULT_CONFIRM_PREVIEW_LABEL,bO as SAMPLING_DEFAULT_CONFIRM_TITLE,dU as SAMPLING_DELETE_MODAL_APPROVE,dV as SAMPLING_DELETE_MODAL_CANCEL,dW as SAMPLING_DELETE_MODAL_DESCRIPTION,dX as SAMPLING_DELETE_MODAL_TITLE,bX as SAMPLING_DRAWER_WIDTH,dO as SAMPLING_DUPLICATE_RULE_WARNING,aC as SAMPLING_HIGHLY_RELEVANT_AUTO_RULE_TITLE,cO as SAMPLING_ONBOARDING_ADVANCED_LEFT_BULLET_1,cP as SAMPLING_ONBOARDING_ADVANCED_LEFT_BULLET_2,cQ as SAMPLING_ONBOARDING_ADVANCED_LEFT_BULLET_3,cR as SAMPLING_ONBOARDING_ADVANCED_LEFT_TITLE,cS as SAMPLING_ONBOARDING_ADVANCED_RIGHT_BULLET_1,cT as SAMPLING_ONBOARDING_ADVANCED_RIGHT_BULLET_2,cU as SAMPLING_ONBOARDING_ADVANCED_RIGHT_BULLET_3,cV as SAMPLING_ONBOARDING_ADVANCED_RIGHT_BULLET_4,cW as SAMPLING_ONBOARDING_ADVANCED_RIGHT_BULLET_5,cX as SAMPLING_ONBOARDING_ADVANCED_RIGHT_TITLE,cZ as SAMPLING_ONBOARDING_ADVANCED_SUBTITLE,cY as SAMPLING_ONBOARDING_ADVANCED_TITLE,de as SAMPLING_ONBOARDING_AMBIENT_LABEL,ck as SAMPLING_ONBOARDING_BTN_GO_TO,c5 as SAMPLING_ONBOARDING_BTN_NEXT,cN as SAMPLING_ONBOARDING_BTN_READ_MORE,cv as SAMPLING_ONBOARDING_BTN_SKIP,cw as SAMPLING_ONBOARDING_BTN_START,c_ as SAMPLING_ONBOARDING_COMMON_BANNER,dd as SAMPLING_ONBOARDING_COMMON_RULES_SECTION,d1 as SAMPLING_ONBOARDING_DROP_DESCRIPTION,d0 as SAMPLING_ONBOARDING_DROP_SUBTITLE,c$ as SAMPLING_ONBOARDING_DROP_TITLE,d4 as SAMPLING_ONBOARDING_ERROR_PRESET_NAME,d3 as SAMPLING_ONBOARDING_ERROR_PRESET_TOGGLE_LABEL,d7 as SAMPLING_ONBOARDING_KEEP_DESCRIPTION,d6 as SAMPLING_ONBOARDING_KEEP_SUBTITLE,d5 as SAMPLING_ONBOARDING_KEEP_TITLE,d8 as SAMPLING_ONBOARDING_KEEP_USE_CASE_1,d9 as SAMPLING_ONBOARDING_KEEP_USE_CASE_2,da as SAMPLING_ONBOARDING_KEEP_USE_CASE_3,db as SAMPLING_ONBOARDING_KEEP_USE_CASE_4,dc as SAMPLING_ONBOARDING_KEEP_USE_CASE_5,cc as SAMPLING_ONBOARDING_NOISY_BANNER,c8 as SAMPLING_ONBOARDING_NOISY_DESCRIPTION,cb as SAMPLING_ONBOARDING_NOISY_PRESET_NAME,c9 as SAMPLING_ONBOARDING_NOISY_PRESET_SECTION,ca as SAMPLING_ONBOARDING_NOISY_PRESET_TOGGLE_LABEL,c7 as SAMPLING_ONBOARDING_NOISY_SUBTITLE,c6 as SAMPLING_ONBOARDING_NOISY_TITLE,d2 as SAMPLING_ONBOARDING_PRESET_RULES_SECTION,c4 as SAMPLING_ONBOARDING_RECOMMENDED_BADGE,cK as SAMPLING_ONBOARDING_STRATEGY_ADVANCED_BADGE,cL as SAMPLING_ONBOARDING_STRATEGY_ADVANCED_DESC,cM as SAMPLING_ONBOARDING_STRATEGY_ADVANCED_NAME,cH as SAMPLING_ONBOARDING_STRATEGY_DROP_BADGE,cF as SAMPLING_ONBOARDING_STRATEGY_DROP_BULLET_1,cG as SAMPLING_ONBOARDING_STRATEGY_DROP_BULLET_2,cI as SAMPLING_ONBOARDING_STRATEGY_DROP_DESC,cJ as SAMPLING_ONBOARDING_STRATEGY_DROP_NAME,cC as SAMPLING_ONBOARDING_STRATEGY_KEEP_BADGE,cA as SAMPLING_ONBOARDING_STRATEGY_KEEP_BULLET_1,cB as SAMPLING_ONBOARDING_STRATEGY_KEEP_BULLET_2,cD as SAMPLING_ONBOARDING_STRATEGY_KEEP_DESC,cE as SAMPLING_ONBOARDING_STRATEGY_KEEP_NAME,cz as SAMPLING_ONBOARDING_STRATEGY_KEEP_WARNING,cy as SAMPLING_ONBOARDING_STRATEGY_SUBTITLE,cx as SAMPLING_ONBOARDING_STRATEGY_TITLE,ch as SAMPLING_ONBOARDING_SUCCESS_BULLET_1,ci as SAMPLING_ONBOARDING_SUCCESS_BULLET_2,cj as SAMPLING_ONBOARDING_SUCCESS_BULLET_3,cg as SAMPLING_ONBOARDING_SUCCESS_INTRO,cf as SAMPLING_ONBOARDING_SUCCESS_SUBTITLE,ce as SAMPLING_ONBOARDING_SUCCESS_TITLE,cu as SAMPLING_ONBOARDING_WELCOME_BANNER,cn as SAMPLING_ONBOARDING_WELCOME_INTRO,co as SAMPLING_ONBOARDING_WELCOME_STAGE_1_DESC,cp as SAMPLING_ONBOARDING_WELCOME_STAGE_1_TITLE,cq as SAMPLING_ONBOARDING_WELCOME_STAGE_2_DESC,cr as SAMPLING_ONBOARDING_WELCOME_STAGE_2_TITLE,cs as SAMPLING_ONBOARDING_WELCOME_STAGE_3_DESC,ct as SAMPLING_ONBOARDING_WELCOME_STAGE_3_TITLE,cm as SAMPLING_ONBOARDING_WELCOME_SUBTITLE,cl as SAMPLING_ONBOARDING_WELCOME_TITLE,dS as SAMPLING_PAGE_DESCRIPTION,dT as SAMPLING_PAGE_TITLE,eP as SCOPE_AND_LABEL,eO as SCOPE_GROUP_ANY_OF_HINT,eJ as SCOPE_GROUP_LANGUAGES_TITLE,eI as SCOPE_GROUP_NAMESPACES_TITLE,eG as SCOPE_GROUP_SOURCES_TITLE,e3 as SECTION_DURATION,e1 as SECTION_ERRORS,aE as SECTION_KEEP_PERCENTAGE,e7 as SECTION_OPERATION,eE as SECTION_SAMPLING_PREVIEW,eQ as SECTION_SOURCE_SCOPE,dk as STORAGE_KEYS,dK as TITLE_NO_RESULTS,dM as TITLE_NO_RULES,fU as TOKEN_ABOUT_TO_EXPIRE,eB as TOOLTIP_NOTE,eH as UNKNOWN_SOURCE_LABEL,bK as UNNAMED_RULE,dN as getNoResultsSubTitle,aN as getSupportedActionOptions,fV as isActionSupportedOnPlatform,fW as isActionSupportedOnVersion,a3 as mapActionTypesToOptions,a6 as mapRuleTypesToOptions}from"./chunks/ui-components-BDtk3K99.js";import"react/jsx-runtime";import"styled-components";import"./icons.js";import"zustand";import"react";import"javascript-time-ago";import"javascript-time-ago/locale/en";import"prism-react-renderer";import"./chunks/vendor-BFqT13Me.js";import"zustand/middleware";import"react-error-boundary";import"react-dom";import"virtua";
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { type FC } from 'react';
|
|
2
|
+
import { type CloudConnectorCreateInput, type CloudConnectorCreateResult } from '@/types';
|
|
3
|
+
import { type HeaderProps } from '@/components/_v2/drawer/header';
|
|
4
|
+
export declare enum CloudConnectorStep {
|
|
5
|
+
SelectProvider = 1,
|
|
6
|
+
Config = 2,
|
|
7
|
+
Validate = 3
|
|
8
|
+
}
|
|
9
|
+
export interface CreateCloudConnectorDrawerProps {
|
|
10
|
+
onClose: HeaderProps['onClose'];
|
|
11
|
+
withOverlay?: boolean;
|
|
12
|
+
onCreateCloudConnector?: (input: CloudConnectorCreateInput) => Promise<CloudConnectorCreateResult>;
|
|
13
|
+
onCreated?: (connectorId: string) => void;
|
|
14
|
+
}
|
|
15
|
+
export declare const CreateCloudConnectorDrawer: FC<CreateCloudConnectorDrawerProps>;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { type FC } from 'react';
|
|
2
|
+
import type { CloudConnectorProvider } from '@/types';
|
|
3
|
+
import type { CloudConnectorCapabilities } from '@/contexts';
|
|
4
|
+
export interface CustomResourceTableProps {
|
|
5
|
+
provider?: CloudConnectorProvider;
|
|
6
|
+
capabilities: CloudConnectorCapabilities;
|
|
7
|
+
onCapabilitiesChange: (next: CloudConnectorCapabilities) => void;
|
|
8
|
+
}
|
|
9
|
+
export declare const CustomResourceTable: FC<CustomResourceTableProps>;
|
package/lib/containers/_v2/_drawers/create-cloud-connector-drawer/steps/select-provider/helpers.d.ts
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { SVG } from '@/types';
|
|
2
|
+
import { type CloudConnectorProvider } from '@/types';
|
|
3
|
+
export declare const getProviderIcon: (provider: CloudConnectorProvider) => SVG;
|
|
4
|
+
export declare const getProviderCapabilitySummary: (provider: CloudConnectorProvider) => string;
|
|
5
|
+
export declare const getProviderLabel: (provider: CloudConnectorProvider) => string;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { type FC } from 'react';
|
|
2
|
+
import type { CloudConnectorProvider } from '@/types';
|
|
3
|
+
import type { CloudConnectorCapabilities } from '@/contexts';
|
|
4
|
+
import { CloudConnectorPermissionLevel } from './permissions';
|
|
5
|
+
export interface PermissionListProps {
|
|
6
|
+
provider?: CloudConnectorProvider;
|
|
7
|
+
selectedPermission: string;
|
|
8
|
+
onSelect: (permission: CloudConnectorPermissionLevel) => void;
|
|
9
|
+
capabilities: CloudConnectorCapabilities;
|
|
10
|
+
onCapabilitiesChange: (next: CloudConnectorCapabilities) => void;
|
|
11
|
+
}
|
|
12
|
+
export declare const PermissionList: FC<PermissionListProps>;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { CloudConnectorCapabilities } from '@/contexts';
|
|
2
|
+
import { CloudConnectorFeatureKey, type CloudConnectorProvider, type CloudConnectorTestCapability } from '@/types';
|
|
3
|
+
export declare enum CloudConnectorPermissionLevel {
|
|
4
|
+
DiscoveryOnly = "discovery-only",
|
|
5
|
+
DiscoveryInstrumentation = "discovery-instrumentation",
|
|
6
|
+
Custom = "custom"
|
|
7
|
+
}
|
|
8
|
+
export interface PermissionLevelOption {
|
|
9
|
+
id: CloudConnectorPermissionLevel;
|
|
10
|
+
title: string;
|
|
11
|
+
description: string;
|
|
12
|
+
featureKeys: CloudConnectorFeatureKey[];
|
|
13
|
+
}
|
|
14
|
+
export declare const PERMISSION_LEVELS: PermissionLevelOption[];
|
|
15
|
+
export interface CustomResourceRow {
|
|
16
|
+
typeName: string;
|
|
17
|
+
displayName: string;
|
|
18
|
+
discoveryPermissions: string[];
|
|
19
|
+
instrumentationPermissions?: string[];
|
|
20
|
+
}
|
|
21
|
+
export declare const getCustomResourceRows: (provider: CloudConnectorProvider | undefined) => CustomResourceRow[];
|
|
22
|
+
export declare const getRequiredPermissions: (provider: CloudConnectorProvider | undefined, level: CloudConnectorPermissionLevel) => string[];
|
|
23
|
+
export declare const getCustomRequiredPermissions: (provider: CloudConnectorProvider | undefined, capabilities: CloudConnectorCapabilities) => string[];
|
|
24
|
+
export declare const getSelectedCapabilities: (provider: CloudConnectorProvider | undefined, level: CloudConnectorPermissionLevel, customCapabilities: CloudConnectorCapabilities) => CloudConnectorTestCapability[];
|
|
25
|
+
export declare const getPolicyPreview: (provider: CloudConnectorProvider | undefined, level: CloudConnectorPermissionLevel, capabilities?: CloudConnectorCapabilities) => string;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { type FC } from 'react';
|
|
2
|
+
import type { CloudConnectorProvider } from '@/types';
|
|
3
|
+
export interface ProviderListProps {
|
|
4
|
+
providers: CloudConnectorProvider[];
|
|
5
|
+
selectedProvider: string;
|
|
6
|
+
onSelect: (provider: string) => void;
|
|
7
|
+
}
|
|
8
|
+
export declare const ProviderList: FC<ProviderListProps>;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { CloudConnectorField, CloudConnectorProvider } from '@/types';
|
|
2
|
+
export declare enum CloudConnectorAuthMethod {
|
|
3
|
+
AssumeRole = "assume-role",
|
|
4
|
+
StaticKeys = "static-keys"
|
|
5
|
+
}
|
|
6
|
+
export declare enum CloudConnectorSetupMethod {
|
|
7
|
+
CloudFormation = "cloudformation",
|
|
8
|
+
Terraform = "terraform",
|
|
9
|
+
AwsCli = "aws-cli",
|
|
10
|
+
Manual = "manual"
|
|
11
|
+
}
|
|
12
|
+
export interface AuthMethodOption {
|
|
13
|
+
id: CloudConnectorAuthMethod;
|
|
14
|
+
label: string;
|
|
15
|
+
note: string;
|
|
16
|
+
}
|
|
17
|
+
export declare const AUTH_METHODS: AuthMethodOption[];
|
|
18
|
+
export interface SetupMethodOption {
|
|
19
|
+
id: CloudConnectorSetupMethod;
|
|
20
|
+
label: string;
|
|
21
|
+
}
|
|
22
|
+
export declare const SETUP_METHODS: SetupMethodOption[];
|
|
23
|
+
export interface IamRoleInstructions {
|
|
24
|
+
description: string;
|
|
25
|
+
steps: string[];
|
|
26
|
+
code: string;
|
|
27
|
+
}
|
|
28
|
+
export declare const IAM_ROLE_INSTRUCTIONS: Record<CloudConnectorSetupMethod, IamRoleInstructions>;
|
|
29
|
+
export declare const getIamRoleInstructions: (setupMethod: string) => IamRoleInstructions;
|
|
30
|
+
export declare const getCredentialFields: (provider: CloudConnectorProvider | undefined, authMethodId: string) => CloudConnectorField[];
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { type FC } from 'react';
|
|
2
|
+
import { type CloudConnectorTestResult } from '@/types';
|
|
3
|
+
export interface ValidateConnectionStepProps {
|
|
4
|
+
isTesting: boolean;
|
|
5
|
+
error?: string;
|
|
6
|
+
result?: CloudConnectorTestResult;
|
|
7
|
+
}
|
|
8
|
+
export declare const ValidateConnectionStep: FC<ValidateConnectionStepProps>;
|
|
@@ -2,6 +2,7 @@ export * from './add-action-drawer';
|
|
|
2
2
|
export * from './add-destination-drawer';
|
|
3
3
|
export * from './add-rule-drawer';
|
|
4
4
|
export * from './add-source-drawer';
|
|
5
|
+
export * from './create-cloud-connector-drawer';
|
|
5
6
|
export * from './edit-action-drawer';
|
|
6
7
|
export * from './edit-config-drawer';
|
|
7
8
|
export * from './edit-destination-drawer';
|
|
@@ -8,6 +8,15 @@ export declare enum DrawerId {
|
|
|
8
8
|
BulkInstrumentationRule = "bulk-instrumentation-rule",
|
|
9
9
|
Delete = "delete"
|
|
10
10
|
}
|
|
11
|
+
export declare enum CreateNewType {
|
|
12
|
+
K8s = "k8s",
|
|
13
|
+
VmAgent = "vm-agent",
|
|
14
|
+
CloudConnector = "cloud-connector"
|
|
15
|
+
}
|
|
16
|
+
export declare const createNewOptions: {
|
|
17
|
+
id: CreateNewType;
|
|
18
|
+
label: string;
|
|
19
|
+
}[];
|
|
11
20
|
export declare enum Keys {
|
|
12
21
|
Id = "id",
|
|
13
22
|
Name = "name",
|
|
@@ -1,10 +1,15 @@
|
|
|
1
1
|
import { type FC } from 'react';
|
|
2
|
-
import { type Connection } from '@/types';
|
|
2
|
+
import { type CloudConnectorCreateInput, type CloudConnectorCreateResult, type CloudConnectorProvider, type Connection } from '@/types';
|
|
3
|
+
import { CreateNewType } from './helpers';
|
|
4
|
+
export { CreateNewType } from './helpers';
|
|
3
5
|
export interface CentralConnectionsProps {
|
|
4
6
|
connections?: Connection[];
|
|
5
7
|
getConnections: () => Promise<Connection[]>;
|
|
6
8
|
onClickConnection: (connection: Connection) => void;
|
|
7
9
|
deleteConnection: (id: string) => Promise<void>;
|
|
10
|
+
onCreateNew?: (type: CreateNewType) => void;
|
|
11
|
+
cloudConnectorProviders?: CloudConnectorProvider[];
|
|
12
|
+
onCreateCloudConnector?: (input: CloudConnectorCreateInput) => Promise<CloudConnectorCreateResult>;
|
|
8
13
|
configMinSupportedVersion?: number;
|
|
9
14
|
snapshotMinSupportedVersion?: number;
|
|
10
15
|
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { type FC, type Dispatch, type SetStateAction } from 'react';
|
|
2
|
+
export interface SideMenuOption {
|
|
3
|
+
id: string;
|
|
4
|
+
label: string;
|
|
5
|
+
}
|
|
6
|
+
export interface SideMenuProps {
|
|
7
|
+
options: SideMenuOption[];
|
|
8
|
+
selected: string;
|
|
9
|
+
setSelected: Dispatch<SetStateAction<string>>;
|
|
10
|
+
disabled?: boolean;
|
|
11
|
+
}
|
|
12
|
+
export declare const SideMenu: FC<SideMenuProps>;
|
|
@@ -1,11 +1,8 @@
|
|
|
1
|
-
import { type FC
|
|
2
|
-
import { type DropDownProps } from '@/components/_v2';
|
|
1
|
+
import { type FC } from 'react';
|
|
3
2
|
export interface ToolbarProps {
|
|
4
3
|
disabled?: boolean;
|
|
5
4
|
loading?: boolean;
|
|
6
|
-
|
|
7
|
-
selectedTab: string;
|
|
8
|
-
setSelectedTab: Dispatch<SetStateAction<string>>;
|
|
5
|
+
onClickShowYaml?: () => void;
|
|
9
6
|
onClickReset?: () => void;
|
|
10
7
|
onClickRefresh?: () => void;
|
|
11
8
|
}
|