From 4b40c95c67360faeb7421958810bafddc5d8d598 Mon Sep 17 00:00:00 2001 From: Joe Reuter Date: Fri, 14 Feb 2025 11:32:58 +0100 Subject: [PATCH] better error handling --- .../components/schema_editor/flyout/sample_preview_table.tsx | 2 +- .../components/schema_editor/hooks/use_schema_fields.ts | 5 +++-- .../public/components/stream_detail_lifecycle/index.tsx | 3 ++- .../public/components/stream_detail_lifecycle/modal.tsx | 3 ++- .../public/components/stream_detail_routing/control_bar.tsx | 3 ++- .../observability/plugins/streams_app/public/util/errors.ts | 3 ++- 6 files changed, 12 insertions(+), 7 deletions(-) diff --git a/x-pack/solutions/observability/plugins/streams_app/public/components/schema_editor/flyout/sample_preview_table.tsx b/x-pack/solutions/observability/plugins/streams_app/public/components/schema_editor/flyout/sample_preview_table.tsx index ca47b31ac0f34..5ba2d713f4274 100644 --- a/x-pack/solutions/observability/plugins/streams_app/public/components/schema_editor/flyout/sample_preview_table.tsx +++ b/x-pack/solutions/observability/plugins/streams_app/public/components/schema_editor/flyout/sample_preview_table.tsx @@ -83,7 +83,7 @@ const SamplePreviewTableContent = ({ } if ((value && value.status === 'failure') || error) { - const formattedError = getFormattedError(error); + const formattedError = error && getFormattedError(error); return ( { - setErrorMessage('body' in error ? error.body.message : error.message); + setErrorMessage(getFormattedError(error).message); }) .finally(() => setIsLoading(false)); diff --git a/x-pack/solutions/observability/plugins/streams_app/public/components/stream_detail_routing/control_bar.tsx b/x-pack/solutions/observability/plugins/streams_app/public/components/stream_detail_routing/control_bar.tsx index d2b5007219628..ac9a648921d44 100644 --- a/x-pack/solutions/observability/plugins/streams_app/public/components/stream_detail_routing/control_bar.tsx +++ b/x-pack/solutions/observability/plugins/streams_app/public/components/stream_detail_routing/control_bar.tsx @@ -15,6 +15,7 @@ import { useKibana } from '../../hooks/use_kibana'; import { useStreamsAppRouter } from '../../hooks/use_streams_app_router'; import { emptyEqualsToAlways } from '../../util/condition'; import { useRoutingState } from './hooks/routing_state'; +import { getFormattedError } from '../../util/errors'; export function ControlBar({ definition, @@ -158,7 +159,7 @@ export function ControlBar({ title: i18n.translate('xpack.streams.failedToSave', { defaultMessage: 'Failed to save', }), - toastMessage: 'body' in error ? error.body.message : error.message, + toastMessage: getFormattedError(error).message, }); routingAppState.setLastDisplayedToast(toast); } diff --git a/x-pack/solutions/observability/plugins/streams_app/public/util/errors.ts b/x-pack/solutions/observability/plugins/streams_app/public/util/errors.ts index e215ad1bb7f97..9509f1ecb7634 100644 --- a/x-pack/solutions/observability/plugins/streams_app/public/util/errors.ts +++ b/x-pack/solutions/observability/plugins/streams_app/public/util/errors.ts @@ -5,7 +5,7 @@ * 2.0. */ -export const getFormattedError = (error?: Error) => { +export const getFormattedError = (error: Error) => { if ( error && 'body' in error && @@ -16,4 +16,5 @@ export const getFormattedError = (error?: Error) => { ) { return new Error(error.body.message); } + return error; };