Files
mtdb_movie/common/resources/client/utils/http/show-http-error-toast.ts
maher 703f50a09d
Some checks failed
Build / run (push) Has been cancelled
first commit
2025-10-29 11:42:25 +01:00

26 lines
942 B
TypeScript
Executable File

import {toast} from '../../ui/toast/toast';
import {getAxiosErrorMessage} from './get-axios-error-message';
import {message} from '../../i18n/message';
import {ToastOptions} from '@common/ui/toast/toast-store';
import axios from 'axios';
import {openDialog} from '@common/ui/overlays/store/dialog-store';
import {IgnitionErrorDialog} from '@common/utils/http/ignition-error-dialog/ignition-error-dialog';
const defaultErrorMessage = message('There was an issue. Please try again.');
export function showHttpErrorToast(
err: unknown,
defaultMessage = defaultErrorMessage,
field?: string | null,
toastOptions?: ToastOptions,
) {
if (axios.isAxiosError(err) && err.response?.data?.ignitionTrace) {
openDialog(IgnitionErrorDialog, {error: err.response.data});
} else {
toast.danger(getAxiosErrorMessage(err, field) || defaultMessage, {
action: (err as any).response?.data?.action,
...toastOptions,
});
}
}