fix: invalidate dashboard after new report is created
This commit is contained in:
@@ -1,15 +1,7 @@
|
|||||||
import { ButtonContainer } from '@/components/button-container';
|
import { ButtonContainer } from '@/components/button-container';
|
||||||
import { InputWithLabel } from '@/components/forms/input-with-label';
|
import { InputWithLabel } from '@/components/forms/input-with-label';
|
||||||
import { Button } from '@/components/ui/button';
|
import { Button } from '@/components/ui/button';
|
||||||
import { Combobox } from '@/components/ui/combobox';
|
|
||||||
import { Label } from '@/components/ui/label';
|
import { Label } from '@/components/ui/label';
|
||||||
import {
|
|
||||||
Select,
|
|
||||||
SelectContent,
|
|
||||||
SelectItem,
|
|
||||||
SelectTrigger,
|
|
||||||
SelectValue,
|
|
||||||
} from '@/components/ui/select';
|
|
||||||
import { useAppParams } from '@/hooks/use-app-params';
|
import { useAppParams } from '@/hooks/use-app-params';
|
||||||
import { handleError } from '@/integrations/trpc/react';
|
import { handleError } from '@/integrations/trpc/react';
|
||||||
import { zodResolver } from '@hookform/resolvers/zod';
|
import { zodResolver } from '@hookform/resolvers/zod';
|
||||||
@@ -58,6 +50,13 @@ export default function SaveReport({
|
|||||||
trpc.report.create.mutationOptions({
|
trpc.report.create.mutationOptions({
|
||||||
onError: handleError,
|
onError: handleError,
|
||||||
onSuccess(res) {
|
onSuccess(res) {
|
||||||
|
queryClient.invalidateQueries(
|
||||||
|
trpc.report.list.queryFilter({
|
||||||
|
dashboardId: res.dashboardId,
|
||||||
|
projectId,
|
||||||
|
}),
|
||||||
|
);
|
||||||
|
|
||||||
const goToReport = () => {
|
const goToReport = () => {
|
||||||
router.navigate({
|
router.navigate({
|
||||||
to: '/$organizationId/$projectId/reports/$reportId',
|
to: '/$organizationId/$projectId/reports/$reportId',
|
||||||
@@ -86,24 +85,6 @@ export default function SaveReport({
|
|||||||
},
|
},
|
||||||
}),
|
}),
|
||||||
);
|
);
|
||||||
const dashboardMutation = useMutation(
|
|
||||||
trpc.dashboard.create.mutationOptions({
|
|
||||||
onError: handleError,
|
|
||||||
onSuccess(res) {
|
|
||||||
setValue('dashboardId', res.id);
|
|
||||||
dashboardQuery.refetch();
|
|
||||||
queryClient.invalidateQueries(trpc.report.list.pathFilter());
|
|
||||||
toast('Success', {
|
|
||||||
description: 'Dashboard created.',
|
|
||||||
});
|
|
||||||
},
|
|
||||||
}),
|
|
||||||
);
|
|
||||||
const dashboardQuery = useQuery(
|
|
||||||
trpc.dashboard.list.queryOptions({
|
|
||||||
projectId: projectId!,
|
|
||||||
}),
|
|
||||||
);
|
|
||||||
|
|
||||||
const { register, handleSubmit, formState, control, setValue } =
|
const { register, handleSubmit, formState, control, setValue } =
|
||||||
useForm<IForm>({
|
useForm<IForm>({
|
||||||
@@ -114,11 +95,6 @@ export default function SaveReport({
|
|||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
const dashboards = (dashboardQuery.data ?? []).map((item) => ({
|
|
||||||
value: item.id,
|
|
||||||
label: item.name,
|
|
||||||
}));
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<ModalContent>
|
<ModalContent>
|
||||||
<ModalHeader title="Create report" />
|
<ModalHeader title="Create report" />
|
||||||
|
|||||||
Reference in New Issue
Block a user