From 09a0496d25c7e89f55d666ffbb83c76269034bdf Mon Sep 17 00:00:00 2001 From: lebaudantoine Date: Tue, 11 Feb 2025 23:18:55 +0100 Subject: [PATCH] =?UTF-8?q?=E2=99=BB=EF=B8=8F(frontend)=20standardize=20to?= =?UTF-8?q?ast=20notification=20durations?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Introduce ToastDuration enum to replace magic numbers for notification timeouts. Added semantic duration constants for different notification types (alerts, messages, join/leave events). Improves maintainability and consistency across toast implementations. --- .../notifications/MainNotificationToast.tsx | 21 +++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/src/frontend/src/features/notifications/MainNotificationToast.tsx b/src/frontend/src/features/notifications/MainNotificationToast.tsx index c61d8769..88b01337 100644 --- a/src/frontend/src/features/notifications/MainNotificationToast.tsx +++ b/src/frontend/src/features/notifications/MainNotificationToast.tsx @@ -7,6 +7,19 @@ import { Div } from '@/primitives' import { ChatMessage, isMobileBrowser } from '@livekit/components-core' import { useNotificationSound } from '@/features/notifications/hooks/useSoundNotification' +enum ToastDuration { + SHORT = 3000, + MEDIUM = 4000, + LONG = 5000, +} + +const NotificationDuration = { + ALERT: ToastDuration.SHORT, + MESSAGE: ToastDuration.LONG, + PARTICIPANT_JOINED: ToastDuration.LONG, + HAND_RAISED: ToastDuration.LONG, +} as const + export const MainNotificationToast = () => { const room = useRoomContext() const { triggerNotificationSound } = useNotificationSound() @@ -23,7 +36,7 @@ export const MainNotificationToast = () => { message: chatMessage.message, type: NotificationType.MessageReceived, }, - { timeout: 5000 } + { timeout: NotificationDuration.MESSAGE } ) } room.on(RoomEvent.ChatMessage, handleChatMessage) @@ -49,7 +62,7 @@ export const MainNotificationToast = () => { participant, type: NotificationType.ParticipantMuted, }, - { timeout: 3000 } + { timeout: NotificationDuration.ALERT } ) break default: @@ -74,7 +87,7 @@ export const MainNotificationToast = () => { type: NotificationType.ParticipantJoined, }, { - timeout: 5000, + timeout: NotificationDuration.PARTICIPANT_JOINED, } ) } @@ -133,7 +146,7 @@ export const MainNotificationToast = () => { participant, type: NotificationType.HandRaised, }, - { timeout: 5000 } + { timeout: NotificationDuration.HAND_RAISED } ) } }