import { Alert, AlertTitle, Box, Snackbar } from "@mui/material";
import { SNACKBAR_AUTO_HIDE_DURATION } from "@/core/lib/consts";
import { collectValidationErrors } from "@/core/lib/forms";
// Close buttons are intentionally absent: dismissing one error left the open
// state at false, so a follow-up mutation's error wouldn't surface. See f9ba0a47.
// eslint-disable-next-line @typescript-eslint/no-explicit-any
export const FormQueryErrors = (props: { mutationQuery: any }) => {
if (!props.mutationQuery?.isError) {
return null;
}
return (
{props.mutationQuery.error?.message}
{collectValidationErrors(props.mutationQuery.error.response?.data).map((error, index) =>
- {error}
)}
);
};
// eslint-disable-next-line @typescript-eslint/no-explicit-any
export const FormQueryErrorsSnackbar = (props: { mutationQuery: any }) => {
if (!props.mutationQuery?.isError) {
return null;
}
return (
{props.mutationQuery.error?.message}
{collectValidationErrors(props.mutationQuery.error.response?.data).map((error, index) =>
- {error}
)}
);
};