Fix server agent ID & token refresh when adding multiple agents (closes #165)

This commit is contained in:
Tola Leng
2026-01-24 21:16:10 +07:00
parent 370f613080
commit 6b8ee741b3
@@ -59,6 +59,25 @@ export const AddServerAgentDialog: React.FC<AddServerAgentDialogProps> = ({
`agent_${Math.random().toString(36).substring(2, 15)}${Math.random().toString(36).substring(2, 15)}`
);
// Refresh credentials and reset form whenever the dialog opens
React.useEffect(() => {
if (open) {
const newCredentials = generateNewCredentials();
setServerToken(newCredentials.serverToken);
setServerId(newCredentials.serverId);
setActiveTab("configure");
setFormData({
serverName: "",
description: "",
osType: "",
checkInterval: "60",
retryAttempt: "3",
dockerEnabled: false,
notificationEnabled: true,
});
}
}, [open]);
const handleSubmit = async (e: React.FormEvent) => {
e.preventDefault();
if (isSubmitting) return;
@@ -81,10 +100,6 @@ export const AddServerAgentDialog: React.FC<AddServerAgentDialogProps> = ({
title: t('serverAgentCreated'),
description: t('serverAgentCreatedDesc').replace('{name}', formData.serverName),
});
const newCredentials = generateNewCredentials();
setServerToken(newCredentials.serverToken);
setServerId(newCredentials.serverId);
setActiveTab("one-click");
onAgentAdded();
} catch (error) {
@@ -99,21 +114,6 @@ export const AddServerAgentDialog: React.FC<AddServerAgentDialogProps> = ({
};
const handleDialogClose = () => {
setActiveTab("configure");
setFormData({
serverName: "",
description: "",
osType: "",
checkInterval: "60",
retryAttempt: "3",
dockerEnabled: false,
notificationEnabled: true,
});
const newCredentials = generateNewCredentials();
setServerToken(newCredentials.serverToken);
setServerId(newCredentials.serverId);
onOpenChange(false);
};