This commit is contained in:
Timothy Jaeryang Baek
2026-02-27 16:37:53 -06:00
parent cfa16e1a37
commit bbbcf27dd5
2 changed files with 9 additions and 5 deletions
@@ -19,6 +19,9 @@
$: directTerminals = ($settings?.terminalServers ?? []).filter((s) => s.url); $: directTerminals = ($settings?.terminalServers ?? []).filter((s) => s.url);
const refreshTerminalServersStore = async (servers: typeof directTerminals) => { const refreshTerminalServersStore = async (servers: typeof directTerminals) => {
// Preserve system terminals (those with an `id`) — only refresh direct ones
const existingSystemTerminals = ($terminalServers ?? []).filter((t) => t.id);
const activeTerminals = servers.filter((s) => s.enabled); const activeTerminals = servers.filter((s) => s.enabled);
if (activeTerminals.length > 0) { if (activeTerminals.length > 0) {
let data = await getToolServersData( let data = await getToolServersData(
@@ -31,9 +34,9 @@
})) }))
); );
data = data.filter((d) => d && !d.error); data = data.filter((d) => d && !d.error);
terminalServers.set(data); terminalServers.set([...data, ...existingSystemTerminals]);
} else { } else {
terminalServers.set([]); terminalServers.set(existingSystemTerminals);
} }
}; };
@@ -45,7 +45,8 @@
}); });
toolServers.set(toolServersData); toolServers.set(toolServersData);
// Refresh terminal servers store // Refresh terminal servers store (preserve system terminals)
const existingSystemTerminals = ($terminalServers ?? []).filter((t) => t.id);
const activeTerminals = terminalServerConfigs.filter((s) => s.enabled); const activeTerminals = terminalServerConfigs.filter((s) => s.enabled);
if (activeTerminals.length > 0) { if (activeTerminals.length > 0) {
let terminalServersData = await getToolServersData( let terminalServersData = await getToolServersData(
@@ -58,9 +59,9 @@
})) }))
); );
terminalServersData = terminalServersData.filter((data) => data && !data.error); terminalServersData = terminalServersData.filter((data) => data && !data.error);
terminalServers.set(terminalServersData); terminalServers.set([...terminalServersData, ...existingSystemTerminals]);
} else { } else {
terminalServers.set([]); terminalServers.set(existingSystemTerminals);
} }
}; };