From 582f493f3f09ea74ba6ced58fd43e9d8ef8de343 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Wed, 4 Feb 2026 15:22:26 +0000 Subject: [PATCH] Fix type safety and optimize mutation payload in network form Co-authored-by: Siumauricio <47042324+Siumauricio@users.noreply.github.com> --- .../cluster/swarm-forms/network-form.tsx | 36 +++++++++++++------ 1 file changed, 26 insertions(+), 10 deletions(-) diff --git a/apps/dokploy/components/dashboard/application/advanced/cluster/swarm-forms/network-form.tsx b/apps/dokploy/components/dashboard/application/advanced/cluster/swarm-forms/network-form.tsx index f77966c6e..ed7ddf94a 100644 --- a/apps/dokploy/components/dashboard/application/advanced/cluster/swarm-forms/network-form.tsx +++ b/apps/dokploy/components/dashboard/application/advanced/cluster/swarm-forms/network-form.tsx @@ -63,7 +63,7 @@ export const NetworkForm = ({ id, type }: NetworkFormProps) => { ? mutationMap[type]() : api.mongo.update.useMutation(); - const form = useForm({ + const form = useForm>({ resolver: zodResolver(networkFormSchema), defaultValues: { networks: [], @@ -101,15 +101,31 @@ export const NetworkForm = ({ id, type }: NetworkFormProps) => { // If no networks, send null to clear the database const networksToSend = networksArray.length > 0 ? networksArray : null; - await mutateAsync({ - applicationId: id || "", - postgresId: id || "", - redisId: id || "", - mysqlId: id || "", - mariadbId: id || "", - mongoId: id || "", - networkSwarm: networksToSend, - }); + const mutationPayload: any = { networkSwarm: networksToSend }; + + // Add the appropriate ID based on type + switch (type) { + case "application": + mutationPayload.applicationId = id; + break; + case "postgres": + mutationPayload.postgresId = id; + break; + case "redis": + mutationPayload.redisId = id; + break; + case "mysql": + mutationPayload.mysqlId = id; + break; + case "mariadb": + mutationPayload.mariadbId = id; + break; + case "mongo": + mutationPayload.mongoId = id; + break; + } + + await mutateAsync(mutationPayload); toast.success("Network configuration updated successfully"); refetch();