mirror of
https://github.com/blakeblackshear/frigate.git
synced 2026-05-04 04:27:42 +03:00
Catch error and show toast when failing to delete review items
This commit is contained in:
parent
8094dd4075
commit
75ed98a565
@ -17,6 +17,7 @@ import {
|
|||||||
} from "../ui/alert-dialog";
|
} from "../ui/alert-dialog";
|
||||||
import useKeyboardListener from "@/hooks/use-keyboard-listener";
|
import useKeyboardListener from "@/hooks/use-keyboard-listener";
|
||||||
import { Trans, useTranslation } from "react-i18next";
|
import { Trans, useTranslation } from "react-i18next";
|
||||||
|
import { toast } from "sonner";
|
||||||
|
|
||||||
type ReviewActionGroupProps = {
|
type ReviewActionGroupProps = {
|
||||||
selectedReviews: string[];
|
selectedReviews: string[];
|
||||||
@ -41,10 +42,27 @@ export default function ReviewActionGroup({
|
|||||||
pullLatestData();
|
pullLatestData();
|
||||||
}, [selectedReviews, setSelectedReviews, pullLatestData]);
|
}, [selectedReviews, setSelectedReviews, pullLatestData]);
|
||||||
|
|
||||||
const onDelete = useCallback(async () => {
|
const onDelete = useCallback(() => {
|
||||||
await axios.post(`reviews/delete`, { ids: selectedReviews });
|
axios
|
||||||
|
.post(`reviews/delete`, { ids: selectedReviews })
|
||||||
|
.then((resp) => {
|
||||||
|
if (resp.status === 200) {
|
||||||
|
toast.success("Reviews deleted successfully", {
|
||||||
|
position: "top-center",
|
||||||
|
});
|
||||||
setSelectedReviews([]);
|
setSelectedReviews([]);
|
||||||
pullLatestData();
|
pullLatestData();
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch((error) => {
|
||||||
|
const errorMessage =
|
||||||
|
error.response?.data?.message ||
|
||||||
|
error.response?.data?.detail ||
|
||||||
|
"Unknown error";
|
||||||
|
toast.error(`Failed to delete reviews: ${errorMessage}`, {
|
||||||
|
position: "top-center",
|
||||||
|
});
|
||||||
|
});
|
||||||
}, [selectedReviews, setSelectedReviews, pullLatestData]);
|
}, [selectedReviews, setSelectedReviews, pullLatestData]);
|
||||||
|
|
||||||
const [deleteDialogOpen, setDeleteDialogOpen] = useState(false);
|
const [deleteDialogOpen, setDeleteDialogOpen] = useState(false);
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user