From 30837299bed07780f1bb1275f3248e66ccb90753 Mon Sep 17 00:00:00 2001 From: SauceyRed Date: Thu, 7 Aug 2025 22:26:32 +0200 Subject: [PATCH 1/3] feat: add enum for WebSocket events --- types/enums.ts | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/types/enums.ts b/types/enums.ts index ac2daba..8b3ade5 100644 --- a/types/enums.ts +++ b/types/enums.ts @@ -8,4 +8,11 @@ export const enum Permission { ManageMember = 64, BanMember = 128, KickMember = 256 -} \ No newline at end of file +} + +export const enum WSEvent { + MessageSend, + MessageDelete, + MessageEdit, + Error +} -- 2.47.3 From b9dd9d34170ee9f07f4a40a2eb10c0d6a65444b8 Mon Sep 17 00:00:00 2001 From: SauceyRed Date: Thu, 7 Aug 2025 22:26:54 +0200 Subject: [PATCH 2/3] feat: add interfaces for WebSocket message --- types/interfaces.ts | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/types/interfaces.ts b/types/interfaces.ts index d175d76..246b96d 100644 --- a/types/interfaces.ts +++ b/types/interfaces.ts @@ -1,3 +1,5 @@ +import type { WSEvent } from "./enums" + export interface ChannelPermissionResponse { channel_uuid: string, role_uuid: string, @@ -56,6 +58,19 @@ export interface MessageResponse { member: GuildMemberResponse, } +export interface IMessageDelete { + uuid: string +} + +export interface WSError { + message: string +} + +export interface WSMessage { + event: WSEvent, + entity: MessageResponse | IMessageDelete | WSError +} + export interface InviteResponse { id: string, user_uuid: string, -- 2.47.3 From 6586890b6c65d33d5d371b1c328848d02f7a01d5 Mon Sep 17 00:00:00 2001 From: SauceyRed Date: Thu, 7 Aug 2025 22:27:57 +0200 Subject: [PATCH 3/3] feat: update WebSocket to handle new message format --- components/MessageArea.vue | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/components/MessageArea.vue b/components/MessageArea.vue index 26645cd..26d4b74 100644 --- a/components/MessageArea.vue +++ b/components/MessageArea.vue @@ -40,9 +40,10 @@