This commit is contained in:
2026-03-10 16:53:06 +00:00
parent c4c2caa6f0
commit d8ee723dae
8 changed files with 83 additions and 29 deletions
@@ -0,0 +1,33 @@
import { WebSocketMessageParam } from "@/src/types";
import sendData from "../(utils)/send-data";
import sendError from "../(utils)/send-error";
import grabConnectedWebsocketUserdata from "../(utils)/grab-connected-websocket-user-data";
import killPort from "../(utils)/kill-port";
export default async function socketClientKillAllPorts({
ws,
data,
}: WebSocketMessageParam) {
try {
const user = ws.data.user;
const connected_user_data = grabConnectedWebsocketUserdata({ user });
for (let i = 0; i < connected_user_data.ports.length; i++) {
const port = connected_user_data.ports[i];
if (port) {
await killPort({ port, exec_options: { stdio: "inherit" } });
connected_user_data.ports = connected_user_data.ports.filter(
(p) => p != port,
);
}
}
sendData(ws, {
event: "server:killed-all-ports",
});
} catch (error: any) {
sendError(ws, "Service Server Logs Error! " + error.message);
}
}
-2
View File
@@ -16,8 +16,6 @@ export default async function socketClientKillPort({
const connected_user_data = grabConnectedWebsocketUserdata({ user });
console.log("port", port);
if (port) {
await killPort({ port, exec_options: { stdio: "inherit" } });
+9
View File
@@ -10,6 +10,7 @@ import debugLog from "@moduletrace/datasquirel/dist/package-shared/utils/logging
import socketClientServiceServerLogs from "./events/client-service-server-logs";
import socketClientKillPort from "./events/client-kill-port";
import socketClientServiceServerShell from "./events/client-service-server-shell";
import socketClientKillAllPorts from "./events/client-kill-all-ports";
type Param = {
ws: ServerWebSocket<WebSocketData>;
@@ -64,6 +65,14 @@ export default async function socketMessage({ ws, message }: Param) {
});
await socketClientKillPort(websocketMessageParams);
break;
case "client:kill-all-ports":
debugLog({
log: `${userRef} Killing All Ports ...`,
addTime: true,
label,
});
await socketClientKillAllPorts(websocketMessageParams);
break;
default:
break;