sse typing

This commit is contained in:
Darius
2026-02-04 21:52:32 +01:00
parent b55e1dd0a6
commit ada7268062
8 changed files with 89 additions and 1 deletions

23
dist/sse.js vendored Normal file
View File

@@ -0,0 +1,23 @@
import { logInfo } from "./logger";
export class SseService {
clients = new Set();
addClient(client) {
this.clients.add(client);
logInfo(`SSE client connected: ${client.id}. Total clients: ${this.clients.size}`);
}
removeClient(clientId) {
const client = [...this.clients].find((c) => c.id === clientId);
if (client) {
this.clients.delete(client);
logInfo(`SSE client disconnected: ${clientId}. Total clients: ${this.clients.size}`);
}
}
notifyClients(event) {
this.clients.forEach((client) => {
client.send(event);
});
}
getClientCount() {
return this.clients.size;
}
}