2025-04-01 10:38:02 +09:00

22 lines
488 B
TypeScript

import { isFetchError } from '@grafana/runtime';
/**
* Catch 404 error response and return "null" instead.
*
* @example
* const ruleGroup = await fetchRuleGroup()
* .unwrap()
* .catch(notFoundToNull); // RuleGroupDTO | null
*/
export function notFoundToNullOrThrow(error: unknown): null {
if (isNotFoundError(error)) {
return null;
}
throw error;
}
export function isNotFoundError(error: unknown): boolean {
return isFetchError(error) && error.status === 404;
}