mirror of
https://github.com/docmost/docmost.git
synced 2026-05-07 06:23:06 +08:00
clean up ws
This commit is contained in:
@@ -65,12 +65,10 @@ export class WsGateway
|
||||
async handleMessage(client: Socket, data: any): Promise<void> {
|
||||
if (this.wsService.isTreeEvent(data)) {
|
||||
await this.wsService.handleTreeEvent(client, data);
|
||||
return;
|
||||
}
|
||||
|
||||
client.broadcast.emit('message', data);
|
||||
}
|
||||
|
||||
/*
|
||||
@SubscribeMessage('join-room')
|
||||
handleJoinRoom(client: Socket, @MessageBody() roomName: string): void {
|
||||
// if room is a space, check if user has permissions
|
||||
@@ -81,6 +79,7 @@ export class WsGateway
|
||||
handleLeaveRoom(client: Socket, @MessageBody() roomName: string): void {
|
||||
client.leave(roomName);
|
||||
}
|
||||
*/
|
||||
|
||||
onModuleDestroy() {
|
||||
if (this.server) {
|
||||
|
||||
@@ -27,6 +27,15 @@ export class WsService {
|
||||
async handleTreeEvent(client: Socket, data: any): Promise<void> {
|
||||
const room = getSpaceRoomName(data.spaceId);
|
||||
|
||||
if (!client.rooms.has(room)) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (data.operation === 'refetchRootTreeNodeEvent') {
|
||||
client.broadcast.to(room).emit('message', data);
|
||||
return;
|
||||
}
|
||||
|
||||
const hasRestrictions = await this.spaceHasRestrictions(data.spaceId);
|
||||
if (!hasRestrictions) {
|
||||
client.broadcast.to(room).emit('message', data);
|
||||
|
||||
@@ -14,4 +14,5 @@ export const TREE_EVENTS = new Set([
|
||||
'addTreeNode',
|
||||
'moveTreeNode',
|
||||
'deleteTreeNode',
|
||||
'refetchRootTreeNodeEvent',
|
||||
]);
|
||||
|
||||
Reference in New Issue
Block a user