diff --git a/libs/dockerTerminal.js b/libs/dockerTerminal.js index b721c2d..be7425d 100644 --- a/libs/dockerTerminal.js +++ b/libs/dockerTerminal.js @@ -1,4 +1,4 @@ -import { Terminal } from 'xterm'; +import Terminal from 'xterm'; import { FitAddon } from 'xterm-addon-fit'; // DOM Elements diff --git a/libs/terminal.js b/libs/terminal.js index 534d77c..666f848 100644 --- a/libs/terminal.js +++ b/libs/terminal.js @@ -1,4 +1,4 @@ -import { Terminal } from 'xterm'; +import Terminal from 'xterm'; import { FitAddon } from 'xterm-addon-fit'; // DOM Elements diff --git a/server/server.js b/server/server.js index 3100c0f..28860a1 100644 --- a/server/server.js +++ b/server/server.js @@ -1012,7 +1012,15 @@ async function handleStatsBroadcast() { setInterval(async () => { try { await collectContainerStats(containerStats); - const aggregatedStats = Object.values(containerStats); + + // Create clean stats objects without stream references for serialization + const aggregatedStats = Object.values(containerStats).map(statsData => ({ + id: statsData.id, + name: statsData.name, + cpu: statsData.cpu, + memory: statsData.memory, + ip: statsData.ip + })); // Only broadcast if there are stats to send if (aggregatedStats.length > 0) {