grafana/public/app/features/explore/ResponseErrorContainer.tsx
Andrej Ocenas 89a178dfb4
Explore: Fix issue when some query errors were not shown (#32212)
* Remove getFirstNonQueryRowSpecificError

* Move some error handling to separate component

* Update public/app/features/explore/ErrorContainer.tsx

Co-authored-by: Giordano Ricci <gio.ricci@grafana.com>

* Add comments

* More explicit expects

* Update tests with proper expects

Co-authored-by: Giordano Ricci <gio.ricci@grafana.com>
2021-03-23 11:58:09 +01:00

22 lines
824 B
TypeScript

import React from 'react';
import { useSelector } from 'react-redux';
import { ExploreId, StoreState } from '../../types';
import { LoadingState } from '@grafana/data';
import { ErrorContainer } from './ErrorContainer';
interface Props {
exploreId: ExploreId;
}
export function ResponseErrorContainer(props: Props) {
const queryResponse = useSelector((state: StoreState) => state.explore[props.exploreId]?.queryResponse);
// Only show error if it does not have refId. Otherwise let query row to handle it so this condition has to be matched
// with QueryRow.tsx so we don't loose errors.
const queryError =
queryResponse?.state === LoadingState.Error && queryResponse?.error && !queryResponse.error.refId
? queryResponse.error
: undefined;
return <ErrorContainer queryError={queryError} />;
}