Fixed submit submitting baseModal, fixed state problem on Edit Node Modal when closing and opening
This commit is contained in:
parent
43e6c315cf
commit
32dda2fcd1
2 changed files with 23 additions and 20 deletions
|
|
@ -86,6 +86,7 @@ const Footer: React.FC<{
|
||||||
loading?: boolean;
|
loading?: boolean;
|
||||||
disabled?: boolean;
|
disabled?: boolean;
|
||||||
dataTestId?: string;
|
dataTestId?: string;
|
||||||
|
onClick?: () => void;
|
||||||
};
|
};
|
||||||
}> = ({ children, submit }) => {
|
}> = ({ children, submit }) => {
|
||||||
return (
|
return (
|
||||||
|
|
@ -101,7 +102,8 @@ const Footer: React.FC<{
|
||||||
</DialogClose>
|
</DialogClose>
|
||||||
<Button
|
<Button
|
||||||
data-testid={submit.dataTestId}
|
data-testid={submit.dataTestId}
|
||||||
type="submit"
|
type={submit.onClick ? "button" : "submit"}
|
||||||
|
onClick={submit.onClick}
|
||||||
loading={submit.loading}
|
loading={submit.loading}
|
||||||
>
|
>
|
||||||
{submit.icon && submit.icon}
|
{submit.icon && submit.icon}
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,7 @@ import { NodeDataType } from "../../types/flow";
|
||||||
import BaseModal from "../baseModal";
|
import BaseModal from "../baseModal";
|
||||||
import useColumnDefs from "./hooks/use-column-defs";
|
import useColumnDefs from "./hooks/use-column-defs";
|
||||||
import useRowData from "./hooks/use-row-data";
|
import useRowData from "./hooks/use-row-data";
|
||||||
|
import { cloneDeep } from "lodash";
|
||||||
|
|
||||||
const EditNodeModal = forwardRef(
|
const EditNodeModal = forwardRef(
|
||||||
(
|
(
|
||||||
|
|
@ -26,7 +27,7 @@ const EditNodeModal = forwardRef(
|
||||||
},
|
},
|
||||||
ref,
|
ref,
|
||||||
) => {
|
) => {
|
||||||
const myData = useRef(data);
|
const myData = useRef(cloneDeep(data));
|
||||||
|
|
||||||
const setNode = useFlowStore((state) => state.setNode);
|
const setNode = useFlowStore((state) => state.setNode);
|
||||||
|
|
||||||
|
|
@ -36,6 +37,7 @@ const EditNodeModal = forwardRef(
|
||||||
}
|
}
|
||||||
|
|
||||||
const handleOnNewValue = (newValue: any, name) => {
|
const handleOnNewValue = (newValue: any, name) => {
|
||||||
|
console.log(newValue);
|
||||||
myData.current.node!.template[name].value = newValue;
|
myData.current.node!.template[name].value = newValue;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -52,7 +54,7 @@ const EditNodeModal = forwardRef(
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
if (gridApi && open) {
|
if (gridApi && open) {
|
||||||
myData.current = data;
|
myData.current = cloneDeep(data);
|
||||||
gridApi.refreshCells();
|
gridApi.refreshCells();
|
||||||
}
|
}
|
||||||
}, [gridApi, open]);
|
}, [gridApi, open]);
|
||||||
|
|
@ -64,22 +66,7 @@ const EditNodeModal = forwardRef(
|
||||||
// }, []);
|
// }, []);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<BaseModal
|
<BaseModal key={data.id} size="medium-tall" open={open} setOpen={setOpen}>
|
||||||
key={data.id}
|
|
||||||
size="medium-tall"
|
|
||||||
open={open}
|
|
||||||
setOpen={setOpen}
|
|
||||||
onSubmit={() => {
|
|
||||||
setNode(data.id, (old) => ({
|
|
||||||
...old,
|
|
||||||
data: {
|
|
||||||
...old.data,
|
|
||||||
node: myData.current.node,
|
|
||||||
},
|
|
||||||
}));
|
|
||||||
setOpen(false);
|
|
||||||
}}
|
|
||||||
>
|
|
||||||
<BaseModal.Trigger>
|
<BaseModal.Trigger>
|
||||||
<></>
|
<></>
|
||||||
</BaseModal.Trigger>
|
</BaseModal.Trigger>
|
||||||
|
|
@ -105,7 +92,21 @@ const EditNodeModal = forwardRef(
|
||||||
</div>
|
</div>
|
||||||
</BaseModal.Content>
|
</BaseModal.Content>
|
||||||
|
|
||||||
<BaseModal.Footer submit={{ label: "Save Changes" }} />
|
<BaseModal.Footer
|
||||||
|
submit={{
|
||||||
|
label: "Save Changes",
|
||||||
|
onClick: () => {
|
||||||
|
setNode(data.id, (old) => ({
|
||||||
|
...old,
|
||||||
|
data: {
|
||||||
|
...old.data,
|
||||||
|
node: myData.current.node,
|
||||||
|
},
|
||||||
|
}));
|
||||||
|
setOpen(false);
|
||||||
|
},
|
||||||
|
}}
|
||||||
|
/>
|
||||||
</BaseModal>
|
</BaseModal>
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue