diff --git a/web/src/api/APIClient.ts b/web/src/api/APIClient.ts index 0951926..92d7c462 100644 --- a/web/src/api/APIClient.ts +++ b/web/src/api/APIClient.ts @@ -112,7 +112,7 @@ export const APIClient = { return appClient.Get(`api/filters${q}`); }, getByID: (id: number) => appClient.Get(`api/filters/${id}`), - create: (filter: Filter) => appClient.Post("api/filters", filter), + create: (filter: Filter) => appClient.Post("api/filters", filter), update: (filter: Filter) => appClient.Put(`api/filters/${filter.id}`, filter), duplicate: (id: number) => appClient.Get(`api/filters/${id}/duplicate`), toggleEnable: (id: number, enabled: boolean) => appClient.Put(`api/filters/${id}/enabled`, { enabled }), diff --git a/web/src/forms/filters/FilterAddForm.tsx b/web/src/forms/filters/FilterAddForm.tsx index f87c627..e18bd9a 100644 --- a/web/src/forms/filters/FilterAddForm.tsx +++ b/web/src/forms/filters/FilterAddForm.tsx @@ -10,6 +10,7 @@ import { queryClient } from "../../App"; import { APIClient } from "../../api/APIClient"; import DEBUG from "../../components/debug"; import Toast from "../../components/notifications/Toast"; +import { useNavigate } from "react-router-dom"; interface filterAddFormProps { isOpen: boolean; @@ -17,14 +18,18 @@ interface filterAddFormProps { } function FilterAddForm({ isOpen, toggle }: filterAddFormProps) { + const navigate = useNavigate(); const mutation = useMutation( (filter: Filter) => APIClient.filters.create(filter), { - onSuccess: (_, filter) => { + onSuccess: (filter) => { queryClient.invalidateQueries("filters"); toast.custom((t) => ); toggle(); + if (filter.id) { + navigate(filter.id.toString()); + } } } );