fix(campaigns): reset modification-request modal state on close, not just on success
Previously action/testId/justification only reset inside the success handler, so cancelling and reopening the modal left stale form values. Mirrors the reset-on-close pattern already used by AddTestToCampaignModal.
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
import { useState } from "react";
|
||||
import { useEffect, useState } from "react";
|
||||
import { useMutation, useQueryClient } from "@tanstack/react-query";
|
||||
import { X, Loader2 } from "lucide-react";
|
||||
import { createModificationRequest, type CampaignTest } from "../api/campaigns";
|
||||
@@ -23,6 +23,14 @@ export default function RequestCampaignModificationModal({
|
||||
const [testId, setTestId] = useState("");
|
||||
const [justification, setJustification] = useState("");
|
||||
|
||||
useEffect(() => {
|
||||
if (!open) {
|
||||
setAction("remove_test");
|
||||
setTestId("");
|
||||
setJustification("");
|
||||
}
|
||||
}, [open]);
|
||||
|
||||
const mutation = useMutation({
|
||||
mutationFn: () =>
|
||||
createModificationRequest(campaignId, {
|
||||
@@ -32,8 +40,6 @@ export default function RequestCampaignModificationModal({
|
||||
}),
|
||||
onSuccess: () => {
|
||||
queryClient.invalidateQueries({ queryKey: ["campaign-modification-requests", campaignId] });
|
||||
setTestId("");
|
||||
setJustification("");
|
||||
onSuccess();
|
||||
onClose();
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user