fix(core): disconnect ws when user logout (#8188)

This commit is contained in:
EYHN
2024-09-11 07:55:42 +00:00
parent d93c3b3719
commit 85aa73bcf6
12 changed files with 96 additions and 50 deletions
@@ -3,6 +3,7 @@ import type { Awareness } from 'y-protocols/awareness.js';
export interface AwarenessConnection {
connect(awareness: Awareness): void;
disconnect(): void;
dispose?(): void;
}
export class AwarenessEngine {
@@ -15,4 +16,8 @@ export class AwarenessEngine {
disconnect() {
this.connections.forEach(connection => connection.disconnect());
}
dispose() {
this.connections.forEach(connection => connection.dispose?.());
}
}
@@ -219,4 +219,9 @@ export class DocEngine {
});
});
}
dispose() {
this.stop();
this.server?.dispose?.();
}
}
@@ -23,4 +23,6 @@ export interface DocServer {
waitForConnectingServer(signal: AbortSignal): Promise<void>;
disconnectServer(): void;
onInterrupted(cb: (reason: string) => void): void;
dispose?(): void;
}