@odigos/ui-kit 0.0.283 → 0.0.285

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 +28 -0
  2. package/lib/chunks/{helpers-BfXS2wve.js → helpers-C5bkjRbO.js} +1 -1
  3. package/lib/chunks/index-DBZ1mLhG.js +298 -0
  4. package/lib/chunks/source-instrument-form-context-CnRKQq6W.js +5 -0
  5. package/lib/chunks/ui-components-Ci-Vq1Dl.js +1620 -0
  6. package/lib/components.js +1 -1
  7. package/lib/constants/index.d.ts +1 -0
  8. package/lib/constants/recommendations/index.d.ts +31 -0
  9. package/lib/constants/strings/index.d.ts +3 -0
  10. package/lib/constants.js +1 -1
  11. package/lib/containers/_drawers/index.d.ts +1 -0
  12. package/lib/containers/_drawers/recommendations-drawer/helpers.d.ts +22 -0
  13. package/lib/containers/_drawers/recommendations-drawer/index.d.ts +9 -0
  14. package/lib/containers/_drawers/recommendations-drawer/manual-examples.d.ts +6 -0
  15. package/lib/containers/_drawers/recommendations-drawer/recommendation-card.d.ts +13 -0
  16. package/lib/containers/_drawers/recommendations-drawer/remediation-actions.d.ts +9 -0
  17. package/lib/containers/_drawers/recommendations-drawer/remediation-methods.d.ts +13 -0
  18. package/lib/containers/_modals/sampling-onboarding-modal/common/chrome.d.ts +10 -6
  19. package/lib/containers/_modals/sampling-onboarding-modal/common/section.d.ts +3 -3
  20. package/lib/containers/overview/search/builder.d.ts +3 -1
  21. package/lib/containers.js +295 -227
  22. package/lib/contexts/odigos-api/capabilities.d.ts +3 -0
  23. package/lib/contexts/odigos-api/hooks/use-actions-api.d.ts +3 -1
  24. package/lib/contexts/odigos-api/hooks/use-recommendations-api.d.ts +32 -0
  25. package/lib/contexts/odigos-api/index.d.ts +2 -1
  26. package/lib/contexts/odigos-api/types.d.ts +23 -1
  27. package/lib/contexts/odigos-api/use-odigos-api.d.ts +2 -0
  28. package/lib/contexts.js +1 -1
  29. package/lib/functions/index.d.ts +0 -1
  30. package/lib/functions.js +1 -1
  31. package/lib/hooks.js +1 -1
  32. package/lib/icons/common/index.d.ts +1 -0
  33. package/lib/icons/common/recommendations-icon/index.d.ts +2 -0
  34. package/lib/icons.js +1 -1
  35. package/lib/snippets/animated-collapse/index.d.ts +10 -0
  36. package/lib/snippets/index.d.ts +1 -0
  37. package/lib/snippets/rich-title/index.d.ts +4 -1
  38. package/lib/snippets/sampling-rule-form-sections/styled.d.ts +2 -2
  39. package/lib/snippets/yaml-section-card/index.d.ts +1 -0
  40. package/lib/snippets.js +1 -1
  41. package/lib/store.js +1 -1
  42. package/lib/theme.js +1 -1
  43. package/lib/types/common/index.d.ts +2 -1
  44. package/lib/types/destinations/index.d.ts +1 -0
  45. package/lib/types/index.d.ts +1 -0
  46. package/lib/types/recommendations.d.ts +73 -0
  47. package/lib/types.js +1 -1
  48. package/lib/visuals.js +1 -1
  49. package/package.json +18 -18
  50. package/lib/chunks/index--HGLHoM2.js +0 -257
  51. package/lib/chunks/source-instrument-form-context-CNsR2QcD.js +0 -5
  52. package/lib/chunks/ui-components-DLU_wMXv.js +0 -1601
@@ -28,8 +28,10 @@ export interface Capabilities {
28
28
  canTestConnection: boolean;
29
29
  canFetchDestinationCategories: boolean;
30
30
  canFetchPotentialDestinations: boolean;
31
+ canManageActions: boolean;
31
32
  canCreateAction: boolean;
32
33
  canFetchActionTypes: boolean;
34
+ canManageInstrumentationRules: boolean;
33
35
  canCreateInstrumentationRule: boolean;
34
36
  canFetchInstrumentationRuleTypes: boolean;
35
37
  canApplyEffectiveConfig: boolean;
@@ -38,5 +40,6 @@ export interface Capabilities {
38
40
  canFetchProfiling: boolean;
39
41
  canFetchCollectorInfo: boolean;
40
42
  canManageSamplingRules: boolean;
43
+ canManageRecommendations: boolean;
41
44
  }
42
45
  export declare const deriveCapabilities: (operations: OdigosApiOperations, ctx: OperationContext) => Capabilities;
@@ -33,7 +33,9 @@ export interface ActionsApi {
33
33
  */
34
34
  useActionTypes: () => UseActionTypesResult;
35
35
  fetchAll: () => Promise<void>;
36
- create: (input: ActionFormData) => Promise<void>;
36
+ create: (input: ActionFormData) => Promise<{
37
+ error?: string;
38
+ } | undefined>;
37
39
  update: (id: string, input: ActionFormData) => Promise<void>;
38
40
  /**
39
41
  * Delete an action. Both `id` and `actionType` are required by the
@@ -0,0 +1,32 @@
1
+ import { type Recommendation, type RecommendationRemediationType, type RecommendationType } from '../../../types';
2
+ import type { GetRecommendationsData, OperationContext, OdigosApiOperations } from '../types';
3
+ export interface UseRecommendationsResult {
4
+ /** Recommendations for the cluster. Empty array until the request resolves. */
5
+ items: Recommendation[];
6
+ /** True while the initial `GET_RECOMMENDATIONS` request is in flight. */
7
+ loading: boolean;
8
+ /** Re-execute the `GET_RECOMMENDATIONS` query and broadcast the result via Apollo's cache. */
9
+ refetch: () => Promise<void>;
10
+ }
11
+ export interface RecommendationsApi {
12
+ /**
13
+ * Subscribe to recommendations. Owns a `useApiQuery('GET_RECOMMENDATIONS')`
14
+ * — call at the top level of a container. Returns the reactive
15
+ * `{ items, loading, refetch }`. Both the flat (`recommendations`) and
16
+ * `computePlatform`-nested wire shapes are accepted.
17
+ */
18
+ useRecommendations: () => UseRecommendationsResult;
19
+ fetchAll?: () => Promise<{
20
+ data?: GetRecommendationsData;
21
+ error?: string;
22
+ }>;
23
+ /** Sets or clears the dismissed label. Refetches the list on success. */
24
+ setDismissed?: (name: string, dismissed: boolean) => Promise<{
25
+ error?: string;
26
+ } | undefined>;
27
+ /** Applies a catalog remediation whose steps are executed by the backend. */
28
+ applyRemediation?: (recommendationType: RecommendationType, remediationType: RecommendationRemediationType) => Promise<{
29
+ error?: string;
30
+ } | undefined>;
31
+ }
32
+ export declare const useRecommendationsApi: (operations: OdigosApiOperations, ctx: OperationContext) => RecommendationsApi;
@@ -15,7 +15,7 @@ export { useApiQuery, useApiLazyQuery, useApiMutation } from './use-api-query';
15
15
  export { useApiForConnections, type ApiForConnections } from './use-api-for-connections';
16
16
  export type { UseApiQueryOptions, UseApiQueryResult, UseApiLazyQueryResult, UseApiMutationOptions, UseApiMutationResult, UseApiMutationTuple } from './use-api-query';
17
17
  export { pickByPlatform, versionedDocument, vmDialectMap, type VersionedDocumentMap } from './platform-helpers';
18
- export type { ApolloConfig, CreateActionResult, CreateActionVars, CreateCostReductionRuleResult, CreateDataStreamResult, CreateDataStreamVars, CreateDestinationResult, CreateDestinationVars, CreateHighlyRelevantOperationRuleResult, CreateInstrumentationRuleResult, CreateInstrumentationRuleVars, CreateNoisyOperationRuleResult, DeleteActionResult, DeleteActionVars, DeleteCostReductionRuleResult, DeleteDataStreamResult, DeleteDataStreamVars, DeleteDestinationResult, DeleteDestinationVars, DeleteHighlyRelevantOperationRuleResult, DeleteInstrumentationRuleResult, DeleteInstrumentationRuleVars, DeleteNoisyOperationRuleResult, DescribeOdigosData, DescribeSourceData, DestinationWireInput, DiagnoseResult, DiagnoseVars, GetActionsData, GetAllClusterSnapshotsData, GetClusterSnapshotData, GetClusterSnapshotVars, GetCollectorPodInfoData, GetCollectorPodInfoVars, GetConfigYamlsData, GetDataStreamsData, GetDestinationsData, GetEffectiveConfigVars, GetGatewayInfoData, GetGatewayPodsData, GetInstrumentationRulesData, GetK8sManifestData, GetK8sManifestVars, GetMetricsData, GetNamespacesWithWorkloadsData, GetNodeCollectorInfoData, GetNodeCollectorPodsData, GetPeerSourcesVars, GetProfilingSlotsData, GetSamplingRulesData, GetServiceMapData, GetSourceLibrariesData, GetSourceLibrariesVars, GetSourceProfilingData, GetTokensData, GetWorkloadsByIdsData, GetWorkloadsByIdsVars, GetWorkloadsData, GetWorkloadsVars, MultiFetchGroup, MultiFetchResponse, MultiFetchResult, OdigosApiOperations, OdigosApiProviderProps, Operation, OperationContext, PersistNamespacesResult, PersistNamespacesVars, PersistSourcesResult, PersistSourcesVars, RecoverFromRollbackVars, ResetLocalUiConfigResult, RestartPodVars, RestartWorkloadsVars, SamplingConfigInputWire, SamplingK8sHealthConfigInput, SamplingK8sHealthConfigVars, SamplingRuleCreateVars, SamplingRuleDeleteVars, SamplingRuleUpdateVars, TestDestinationConnectionVars, UpdateActionResult, UpdateActionVars, UpdateCostReductionRuleResult, UpdateDataStreamResult, UpdateDataStreamVars, UpdateDestinationData, UpdateDestinationVars, UpdateHighlyRelevantOperationRuleResult, UpdateInstrumentationRuleResult, UpdateInstrumentationRuleVars, UpdateLocalUiConfigResult, UpdateLocalUiConfigVars, UpdateLocalUiSamplingConfigResult, UpdateLocalUiSamplingConfigVars, UpdateNoisyOperationRuleResult, UpdateRemoteConfigResult, UpdateRemoteConfigVars, UpdateSourceVars, UpdateTokenResult, UpdateTokenVars, } from './types';
18
+ export type { ApolloConfig, ApplyRecommendationRemediationResult, ApplyRecommendationRemediationVars, CreateActionResult, CreateActionVars, CreateCostReductionRuleResult, CreateDataStreamResult, CreateDataStreamVars, CreateDestinationResult, CreateDestinationVars, CreateHighlyRelevantOperationRuleResult, CreateInstrumentationRuleResult, CreateInstrumentationRuleVars, CreateNoisyOperationRuleResult, DeleteActionResult, DeleteActionVars, DeleteCostReductionRuleResult, DeleteDataStreamResult, DeleteDataStreamVars, DeleteDestinationResult, DeleteDestinationVars, DeleteHighlyRelevantOperationRuleResult, DeleteInstrumentationRuleResult, DeleteInstrumentationRuleVars, DeleteNoisyOperationRuleResult, DescribeOdigosData, DescribeSourceData, DestinationWireInput, DiagnoseResult, DiagnoseVars, GetActionsData, GetAllClusterSnapshotsData, GetClusterSnapshotData, GetClusterSnapshotVars, GetCollectorPodInfoData, GetCollectorPodInfoVars, GetConfigYamlsData, GetDataStreamsData, GetDestinationsData, GetEffectiveConfigVars, GetGatewayInfoData, GetGatewayPodsData, GetInstrumentationRulesData, GetK8sManifestData, GetK8sManifestVars, GetMetricsData, GetNamespacesWithWorkloadsData, GetNodeCollectorInfoData, GetNodeCollectorPodsData, GetPeerSourcesVars, GetProfilingSlotsData, GetRecommendationsData, GetSamplingRulesData, GetServiceMapData, GetSourceLibrariesData, GetSourceLibrariesVars, GetSourceProfilingData, GetTokensData, GetWorkloadsByIdsData, GetWorkloadsByIdsVars, GetWorkloadsData, GetWorkloadsVars, MultiFetchGroup, MultiFetchResponse, MultiFetchResult, OdigosApiOperations, OdigosApiProviderProps, Operation, OperationContext, PersistNamespacesResult, PersistNamespacesVars, PersistSourcesResult, PersistSourcesVars, RecoverFromRollbackVars, ResetLocalUiConfigResult, RestartPodVars, RestartWorkloadsVars, SamplingConfigInputWire, SamplingK8sHealthConfigInput, SamplingK8sHealthConfigVars, SamplingRuleCreateVars, SamplingRuleDeleteVars, SamplingRuleUpdateVars, SetRecommendationDismissedResult, TestDestinationConnectionVars, UpdateActionResult, UpdateActionVars, UpdateCostReductionRuleResult, UpdateDataStreamResult, UpdateDataStreamVars, UpdateDestinationData, UpdateDestinationVars, UpdateHighlyRelevantOperationRuleResult, UpdateInstrumentationRuleResult, UpdateInstrumentationRuleVars, UpdateLocalUiConfigResult, UpdateLocalUiConfigVars, UpdateLocalUiSamplingConfigResult, UpdateLocalUiSamplingConfigVars, UpdateNoisyOperationRuleResult, UpdateRemoteConfigResult, UpdateRemoteConfigVars, UpdateSourceVars, UpdateTokenResult, UpdateTokenVars, } from './types';
19
19
  export type { Capabilities } from './capabilities';
20
20
  export type { ConfigApi } from './hooks/use-config-api';
21
21
  export type { TokensApi } from './hooks/use-tokens-api';
@@ -23,6 +23,7 @@ export type { ActionsApi } from './hooks/use-actions-api';
23
23
  export type { MetricsApi } from './hooks/use-metrics-api';
24
24
  export type { DescribeApi } from './hooks/use-describe-api';
25
25
  export type { SamplingApi } from './hooks/use-sampling-api';
26
+ export type { RecommendationsApi } from './hooks/use-recommendations-api';
26
27
  export type { NamespaceApi } from './hooks/use-namespace-api';
27
28
  export type { ProfilingApi } from './hooks/use-profiling-api';
28
29
  export type { SnapshotsApi } from './hooks/use-snapshots-api';
@@ -18,7 +18,7 @@ import type { ReactNode } from 'react';
18
18
  import type { DocumentNode } from '@apollo/client';
19
19
  import type { InstrumentationRuleInputWire } from '../../functions/instrumentation-rule-source-scopes';
20
20
  import type { ApolloClient, ApolloLink, FetchPolicy, MutationFetchPolicy, TypePolicies, WatchQueryFetchPolicy } from '@apollo/client';
21
- import type { Action, ActionFormData, AllClusterSnapshots, ClusterSnapshot, ConfigYaml, CostReductionRule, CostReductionRuleInput, DataStream, DescribeOdigos, DescribeSource, Destination, DestinationFormData, DiagnoseFormData, EffectiveConfig, EffectiveConfigInput, EnableProfilingResult, ExtendedPodInfo, FetchedConfig, GatewayInfo, GetActionTypesResult, GetInstrumentationRuleTypesResult, GetDestinationCategoriesResult, GetPotentialDestinationsResult, GetProfileHotFunctionsVars, HighlyRelevantOperationRule, HighlyRelevantOperationRuleInput, HotFunctionsResult, InstrumentationRule, K8sResourceKind, LocalUiConfigInput, Metrics, Namespace, NoisyOperationRule, NoisyOperationRuleInput, NodeCollectoInfo, PlatformType, PodInfo, ProfilingSlots, SourceProfilingVars, SamplingRules, SamplingRulesK8sHealthConfig, ServiceMapSources, SourceFormData, SourceProfilingResult, TestConnectionResponse, Tier, TokenPayload, Workload, WorkloadId, PeerSources } from '../../types';
21
+ import type { Action, ActionFormData, AllClusterSnapshots, ClusterSnapshot, ConfigYaml, CostReductionRule, CostReductionRuleInput, DataStream, DescribeOdigos, DescribeSource, Destination, DestinationFormData, DiagnoseFormData, EffectiveConfig, EffectiveConfigInput, EnableProfilingResult, ExtendedPodInfo, FetchedConfig, GatewayInfo, GetActionTypesResult, GetInstrumentationRuleTypesResult, GetDestinationCategoriesResult, GetPotentialDestinationsResult, GetProfileHotFunctionsVars, HighlyRelevantOperationRule, HighlyRelevantOperationRuleInput, HotFunctionsResult, InstrumentationRule, K8sResourceKind, LocalUiConfigInput, Metrics, Namespace, NoisyOperationRule, NoisyOperationRuleInput, NodeCollectoInfo, PlatformType, PodInfo, ProfilingSlots, SourceProfilingVars, Recommendation, RecommendationRemediationType, RecommendationType, SamplingRules, SamplingRulesK8sHealthConfig, ServiceMapSources, SourceFormData, SourceProfilingResult, TestConnectionResponse, Tier, TokenPayload, Workload, WorkloadId, PeerSources } from '../../types';
22
22
  /**
23
23
  * The execution context for a given operation, propagated through every
24
24
  * `Operation.document(ctx)` / `transformVariables(vars, ctx)` /
@@ -678,6 +678,22 @@ export interface DeleteCostReductionRuleResult {
678
678
  export interface UpdateLocalUiSamplingConfigResult {
679
679
  updateLocalUiSamplingConfig: boolean;
680
680
  }
681
+ export interface GetRecommendationsData {
682
+ recommendations?: Recommendation[];
683
+ computePlatform?: {
684
+ recommendations?: Recommendation[];
685
+ };
686
+ }
687
+ export interface SetRecommendationDismissedResult {
688
+ setRecommendationDismissed: Recommendation;
689
+ }
690
+ export interface ApplyRecommendationRemediationVars {
691
+ recommendationType: RecommendationType;
692
+ remediationType: RecommendationRemediationType;
693
+ }
694
+ export interface ApplyRecommendationRemediationResult {
695
+ applyRecommendationRemediation: boolean;
696
+ }
681
697
  export interface OdigosApiOperations {
682
698
  GET_WORKLOADS: Operation<GetWorkloadsData, GetWorkloadsVars | undefined>;
683
699
  GET_WORKLOADS_BY_IDS: Operation<GetWorkloadsByIdsData, GetWorkloadsByIdsVars>;
@@ -761,6 +777,12 @@ export interface OdigosApiOperations {
761
777
  UPDATE_COST_REDUCTION_RULE?: Operation<UpdateCostReductionRuleResult, SamplingRuleUpdateVars<CostReductionRuleInput>>;
762
778
  DELETE_COST_REDUCTION_RULE?: Operation<DeleteCostReductionRuleResult, SamplingRuleDeleteVars>;
763
779
  UPDATE_LOCAL_UI_SAMPLING_CONFIG?: Operation<UpdateLocalUiSamplingConfigResult, UpdateLocalUiSamplingConfigVars>;
780
+ GET_RECOMMENDATIONS?: Operation<GetRecommendationsData, undefined>;
781
+ SET_RECOMMENDATION_DISMISSED?: Operation<SetRecommendationDismissedResult, {
782
+ name: string;
783
+ dismissed: boolean;
784
+ }>;
785
+ APPLY_RECOMMENDATION_REMEDIATION?: Operation<ApplyRecommendationRemediationResult, ApplyRecommendationRemediationVars>;
764
786
  GET_ALL_CLUSTER_SNAPSHOTS?: Operation<AllClusterSnapshots, undefined>;
765
787
  GET_CLUSTER_SNAPSHOT?: Operation<ClusterSnapshot, GetClusterSnapshotVars>;
766
788
  }
@@ -60,6 +60,7 @@ import { type ServiceMapApi } from './hooks/use-service-map-api';
60
60
  import { type DataStreamsApi } from './hooks/use-data-streams-api';
61
61
  import { type K8sManifestApi } from './hooks/use-k8s-manifest-api';
62
62
  import { type DestinationsApi } from './hooks/use-destinations-api';
63
+ import { type RecommendationsApi } from './hooks/use-recommendations-api';
63
64
  import { type InstrumentationRulesApi } from './hooks/use-instrumentation-rules-api';
64
65
  export interface UseOdigosApiReturn {
65
66
  sourcesApi: SourcesApi;
@@ -77,6 +78,7 @@ export interface UseOdigosApiReturn {
77
78
  profilingApi: ProfilingApi;
78
79
  collectorsApi: CollectorsApi;
79
80
  samplingApi: SamplingApi;
81
+ recommendationsApi: RecommendationsApi;
80
82
  snapshotsApi: SnapshotsApi;
81
83
  capabilities: Capabilities;
82
84
  /**
package/lib/contexts.js CHANGED
@@ -1 +1 @@
1
- import{u as a,r as x,a as y}from"./chunks/source-instrument-form-context-CNsR2QcD.js";export{A as ActionFormContextProvider,C as CloudConnectorFormContextProvider,D as DataStreamFormContextProvider,b as DestinationFormContextProvider,O as OdigosApiConnectionsScope,c as OdigosApiProvider,R as RuleFormContextProvider,S as SamplingRuleFormType,d as SamplingRulesFormProvider,e as SourceEditFormContextProvider,f as SourceInstrumentFormContextProvider,p as prepareNamespacePayloads,g as prepareSourcePayloads,h as useActionFormContext,i as useApiLazyQuery,j as useApiMutation,k as useApiQuery,l as useCloudConnectorFormContext,m as useDataStreamFormContext,n as useDestinationFormContext,o as useOdigosApi,q as useRuleFormContext,s as useSamplingRulesFormContext,t as useSourceEditFormContext,v as useSourceInstrumentFormContext}from"./chunks/source-instrument-form-context-CNsR2QcD.js";export{O as OdigosProvider,c as checkVersionSupport,r as resolveMinSupportedVersion,u as useOdigos}from"./chunks/helpers-BfXS2wve.js";import{jsx as F}from"react/jsx-runtime";import{useMemo as P,useContext as E,createContext as T}from"react";import{P as I,t as _}from"./chunks/ui-components-DLU_wMXv.js";import{useApolloClient as w}from"@apollo/client/react";import"@apollo/client/link/error";import"@apollo/client/link/context";import"@apollo/client/utilities";import"@apollo/client/errors";import"@apollo/client";import"styled-components";import"./icons.js";import"zustand";import"javascript-time-ago";import"javascript-time-ago/locale/en";import"react-dom";import"prism-react-renderer";import"zustand/middleware";import"react-error-boundary";import"virtua";const M=()=>{const o=w(),{operations:r,context:e}=a();return{multiFetch:async(t,s,n)=>{const i=r[t];return i?y(o,i,s,n,e):{results:[],allSucceeded:!1,anySucceeded:!1,successCount:0,failureCount:s.length,error:`Operation ${String(t)} not configured`}},bulkPersistSources:async(t,s)=>{const n=[];for(const i of t){const t={...e,proxyID:i},{error:a}=await x(o,r.PERSIST_SOURCES,s,t);a&&n.push(`${i}: ${a}`)}return n.length?{error:n.join(", ")}:void 0},applyConfigurations:async(t,s)=>{if(!r.UPDATE_REMOTE_CONFIG)return{error:"UPDATE_REMOTE_CONFIG not configured"};if(!t.length)return{error:"No connections selected"};const n={formData:s,connectionIds:t},i=r.UPDATE_REMOTE_CONFIG;let a;return 1===t.length?({error:a}=await x(o,i,n,e)):({error:a}=await y(o,i,t,n,e)),a?{error:a}:void 0}}},N=(o,r)=>o.platformType===I.K8s?r.K8s:[I.Vm,I.Connector,I.AwsEcs].includes(o.platformType)?r.Vm:void 0,V=o=>r=>{const e=o[r.platformType];if(!e)return;const t=Object.keys(e);if(0===t.length)return;const s=_(r.schemaVersion??r.version),n=[...t].sort((o,r)=>_(r)-_(o)).find(o=>s>=_(o));return n?e[n]:void 0},U=(o,r)=>{const e={};for(const t of Object.keys(o))e[t]=r(o[t]);return e},z=T({formType:void 0}),G=({children:o,formType:r})=>{const e=P(()=>({formType:r}),[r]);return F(z.Provider,{value:e,children:o})},$=()=>E(z);export{G as StorybookProvider,N as pickByPlatform,M as useApiForConnections,$ as useStorybook,V as versionedDocument,U as vmDialectMap};
1
+ import{u as a,r as x,a as y}from"./chunks/source-instrument-form-context-CnRKQq6W.js";export{A as ActionFormContextProvider,C as CloudConnectorFormContextProvider,D as DataStreamFormContextProvider,b as DestinationFormContextProvider,O as OdigosApiConnectionsScope,c as OdigosApiProvider,R as RuleFormContextProvider,S as SamplingRuleFormType,d as SamplingRulesFormProvider,e as SourceEditFormContextProvider,f as SourceInstrumentFormContextProvider,p as prepareNamespacePayloads,g as prepareSourcePayloads,h as useActionFormContext,i as useApiLazyQuery,j as useApiMutation,k as useApiQuery,l as useCloudConnectorFormContext,m as useDataStreamFormContext,n as useDestinationFormContext,o as useOdigosApi,q as useRuleFormContext,s as useSamplingRulesFormContext,t as useSourceEditFormContext,v as useSourceInstrumentFormContext}from"./chunks/source-instrument-form-context-CnRKQq6W.js";export{O as OdigosProvider,c as checkVersionSupport,r as resolveMinSupportedVersion,u as useOdigos}from"./chunks/helpers-C5bkjRbO.js";import{jsx as F}from"react/jsx-runtime";import{useMemo as P,useContext as E,createContext as T}from"react";import{P as I,t as _}from"./chunks/ui-components-Ci-Vq1Dl.js";import{useApolloClient as w}from"@apollo/client/react";import"@apollo/client/link/error";import"@apollo/client/link/context";import"@apollo/client/utilities";import"@apollo/client/errors";import"@apollo/client";import"styled-components";import"./icons.js";import"zustand";import"javascript-time-ago";import"javascript-time-ago/locale/en";import"react-dom";import"prism-react-renderer";import"zustand/middleware";import"react-error-boundary";import"virtua";const M=()=>{const o=w(),{operations:r,context:e}=a();return{multiFetch:async(t,s,n)=>{const i=r[t];return i?y(o,i,s,n,e):{results:[],allSucceeded:!1,anySucceeded:!1,successCount:0,failureCount:s.length,error:`Operation ${String(t)} not configured`}},bulkPersistSources:async(t,s)=>{const n=[];for(const i of t){const t={...e,proxyID:i},{error:a}=await x(o,r.PERSIST_SOURCES,s,t);a&&n.push(`${i}: ${a}`)}return n.length?{error:n.join(", ")}:void 0},applyConfigurations:async(t,s)=>{if(!r.UPDATE_REMOTE_CONFIG)return{error:"UPDATE_REMOTE_CONFIG not configured"};if(!t.length)return{error:"No connections selected"};const n={formData:s,connectionIds:t},i=r.UPDATE_REMOTE_CONFIG;let a;return 1===t.length?({error:a}=await x(o,i,n,e)):({error:a}=await y(o,i,t,n,e)),a?{error:a}:void 0}}},N=(o,r)=>o.platformType===I.K8s?r.K8s:[I.Vm,I.Connector,I.AwsEcs].includes(o.platformType)?r.Vm:void 0,V=o=>r=>{const e=o[r.platformType];if(!e)return;const t=Object.keys(e);if(0===t.length)return;const s=_(r.schemaVersion??r.version),n=[...t].sort((o,r)=>_(r)-_(o)).find(o=>s>=_(o));return n?e[n]:void 0},U=(o,r)=>{const e={};for(const t of Object.keys(o))e[t]=r(o[t]);return e},z=T({formType:void 0}),G=({children:o,formType:r})=>{const e=P(()=>({formType:r}),[r]);return F(z.Provider,{value:e,children:o})},$=()=>E(z);export{G as StorybookProvider,N as pickByPlatform,M as useApiForConnections,$ as useStorybook,V as versionedDocument,U as vmDialectMap};
@@ -1,6 +1,5 @@
1
1
  export * from './build-badge-for-desired-status';
2
2
  export * from './build-catalog-fields-data-card';
3
- export * from './render-catalog-field-segments';
4
3
  export * from './capitalize-first-letter';
5
4
  export * from './clean-object-empty-strings-values';
6
5
  export * from './compare-condition';
package/lib/functions.js CHANGED
@@ -1 +1 @@
1
- export{bl as adaptInstrumentationRuleFromWire,bj as adaptInstrumentationRuleInputForWire,cl as buildBadgeForDesiredStatus,fx as buildCatalogFieldsDataCard,ca as buildCatalogFieldsSegments,fy as capitalizeFirstLetter,fz as cleanObjectEmptyStringsValues,a3 as compareCondition,fA as decimalsOnly,aZ as deepClone,eG as entityIdKey,eL as filterActions,eK as filterDestinations,cf as filterDestinationsByStream,eJ as filterSources,ew as filterSourcesByStream,fB as flattenObjectKeys,cz as formatBytes,fC as formatDuration,b5 as generateId,eD as getActionConditions,cd as getActionIcon,eE as getConditionsBooleans,cS as getContainersIcons,fD as getContainersInstrumentedCount,fE as getDeepValue,c2 as getDestinationIcon,fF as getDetectedLanguageIcons,cp as getEffectiveLanguage,cH as getEffectiveRuntimeVersion,eH as getEntityIcon,bi as getEntityId,eC as getEntityIdKey,eF as getEntityLabel,fG as getHealthBadgeLabel,bg as getIdFromSseTarget,ch as getInstrumentationRuleIcon,fH as getMainContainerLanguage,fI as getMetricForEntity,fJ as getMonitorIcon,fK as getNearestTypographySize,cR as getPlatformIcon,es as getPlatformLabel,O as getProgrammingLanguageIcon,fL as getRecursiveValues,cy as getSourceKindLabel,cv as getSourceLanguageIcons,b9 as getSseTargetFromId,cF as getStatusColor,eN as getStatusFromPodStatus,cG as getStatusIcon,cA as getStatusTypeFromOdigosHealth,fM as getValueForRange,cu as getVirtualServiceIcon,ct as getWorkloadId,cg as getYamlFieldsForDestination,fN as hasUnhealthyInstances,fO as instrumentationRuleSourceScopesFromWire,fP as instrumentationRuleSourceScopesToWire,bq as isEmpty,br as isLegalK8sLabel,db as isOverTime,fQ as isStringABoolean,fR as isTimeElapsed,cE as isValidVersion,fS as mapConditions,cn as mapDesiredStatusToConditionStatus,c8 as mapDesiredStatusesToConditions,ce as mapDestinationFieldsForDisplay,bv as mapExportedSignals,bt as mapSupportedSignals,fT as numbersOnly,fU as parseBooleanFromString,fV as parseJsonStringToPrettyString,bK as prepareDestinationFormData,fW as removeEmptyValuesFromObject,cc as renderCatalogFieldSegments,v as safeJsonParse,fX as safeJsonStringify,fY as setDeepValue,fZ as sleep,ah as splitCamelString,f_ as stringifyNonStringValues,t as trimVersion}from"./chunks/ui-components-DLU_wMXv.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"react-dom";import"prism-react-renderer";import"zustand/middleware";import"react-error-boundary";import"virtua";
1
+ export{bq as adaptInstrumentationRuleFromWire,bo as adaptInstrumentationRuleInputForWire,co as buildBadgeForDesiredStatus,f_ as buildCatalogFieldsDataCard,ce as buildCatalogFieldsSegments,f$ as capitalizeFirstLetter,g0 as cleanObjectEmptyStringsValues,a3 as compareCondition,g1 as decimalsOnly,aZ as deepClone,f6 as entityIdKey,fb as filterActions,fa as filterDestinations,ci as filterDestinationsByStream,f9 as filterSources,eY as filterSourcesByStream,g2 as flattenObjectKeys,cC as formatBytes,g3 as formatDuration,b5 as generateId,f3 as getActionConditions,cg as getActionIcon,f4 as getConditionsBooleans,cV as getContainersIcons,g4 as getContainersInstrumentedCount,g5 as getDeepValue,c6 as getDestinationIcon,g6 as getDetectedLanguageIcons,cs as getEffectiveLanguage,cK as getEffectiveRuntimeVersion,f7 as getEntityIcon,bj as getEntityId,f2 as getEntityIdKey,f5 as getEntityLabel,g7 as getHealthBadgeLabel,bh as getIdFromSseTarget,ck as getInstrumentationRuleIcon,g8 as getMainContainerLanguage,g9 as getMetricForEntity,ga as getMonitorIcon,gb as getNearestTypographySize,cU as getPlatformIcon,eU as getPlatformLabel,O as getProgrammingLanguageIcon,gc as getRecursiveValues,cB as getSourceKindLabel,cy as getSourceLanguageIcons,ba as getSseTargetFromId,cI as getStatusColor,fd as getStatusFromPodStatus,cJ as getStatusIcon,cD as getStatusTypeFromOdigosHealth,gd as getValueForRange,cx as getVirtualServiceIcon,cw as getWorkloadId,cj as getYamlFieldsForDestination,ge as hasUnhealthyInstances,gf as instrumentationRuleSourceScopesFromWire,gg as instrumentationRuleSourceScopesToWire,bv as isEmpty,bw as isLegalK8sLabel,dE as isOverTime,gh as isStringABoolean,gi as isTimeElapsed,cH as isValidVersion,gj as mapConditions,cq as mapDesiredStatusToConditionStatus,cc as mapDesiredStatusesToConditions,ch as mapDestinationFieldsForDisplay,bA as mapExportedSignals,by as mapSupportedSignals,gk as numbersOnly,gl as parseBooleanFromString,gm as parseJsonStringToPrettyString,bP as prepareDestinationFormData,gn as removeEmptyValuesFromObject,v as safeJsonParse,go as safeJsonStringify,gp as setDeepValue,gq as sleep,ah as splitCamelString,gr as stringifyNonStringValues,t as trimVersion}from"./chunks/ui-components-Ci-Vq1Dl.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"react-dom";import"prism-react-renderer";import"zustand/middleware";import"react-error-boundary";import"virtua";
package/lib/hooks.js CHANGED
@@ -1 +1 @@
1
- export{gf as IGNORE_OUTSIDE_CLICK_ATTR,gg as useActionFormData,gh as useBodyScroll,eI as useContainerSize,b4 as useCopy,gi as useDataStreamFormData,gj as useDestinationFormData,bm as useGenericForm,gk as useInstrumentationRuleFormData,da as useKeyDown,cB as useOnClickOutside,gl as useOverflow,gm as usePopup,ck as useScrollIntoViewWhen,f6 as useScrollTo,ez as useSessionStorage,gn as useSourceFormData,ci as useTimeAgo}from"./chunks/ui-components-DLU_wMXv.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"react-dom";import"prism-react-renderer";import"zustand/middleware";import"react-error-boundary";import"virtua";
1
+ export{gM as IGNORE_OUTSIDE_CLICK_ATTR,gN as useActionFormData,gO as useBodyScroll,f8 as useContainerSize,b4 as useCopy,gP as useDataStreamFormData,gQ as useDestinationFormData,br as useGenericForm,gR as useInstrumentationRuleFormData,dD as useKeyDown,cE as useOnClickOutside,gS as useOverflow,gT as usePopup,cn as useScrollIntoViewWhen,fy as useScrollTo,e$ as useSessionStorage,gU as useSourceFormData,cl as useTimeAgo}from"./chunks/ui-components-Ci-Vq1Dl.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"react-dom";import"prism-react-renderer";import"zustand/middleware";import"react-error-boundary";import"virtua";
@@ -37,6 +37,7 @@ export * from './outbound-icon';
37
37
  export * from './plus-circled-icon';
38
38
  export * from './plus-icon';
39
39
  export * from './question-circle-icon';
40
+ export * from './recommendations-icon';
40
41
  export * from './refresh-icon';
41
42
  export * from './refresh-left-arrow-icon';
42
43
  export * from './refresh-right-arrow-icon';
@@ -0,0 +1,2 @@
1
+ import type { SVG } from '../../../types';
2
+ export declare const RecommendationsIcon: SVG;