diff --git a/client/src/App.tsx b/client/src/App.tsx index 28f0fa8..d77755a 100644 --- a/client/src/App.tsx +++ b/client/src/App.tsx @@ -11,12 +11,12 @@ import SettingsPage from './pages/SettingsPage' import VacayPage from './pages/VacayPage' import AtlasPage from './pages/AtlasPage' import SharedTripPage from './pages/SharedTripPage' -import NotificationsPage from './pages/NotificationsPage' +import InAppNotificationsPage from './pages/InAppNotificationsPage.tsx' import { ToastContainer } from './components/shared/Toast' import { TranslationProvider, useTranslation } from './i18n' import { authApi } from './api/client' import { usePermissionsStore, PermissionLevel } from './store/permissionsStore' -import { useNotificationListener } from './hooks/useNotificationListener' +import { useInAppNotificationListener } from './hooks/useInAppNotificationListener.ts' interface ProtectedRouteProps { children: ReactNode @@ -117,7 +117,7 @@ export default function App() { const { settings } = useSettingsStore() - useNotificationListener() + useInAppNotificationListener() useEffect(() => { if (isAuthenticated) { @@ -222,7 +222,7 @@ export default function App() { path="/notifications" element={ - + } /> diff --git a/client/src/components/Layout/InAppNotificationBell.tsx b/client/src/components/Layout/InAppNotificationBell.tsx index 3555ac0..ecc409c 100644 --- a/client/src/components/Layout/InAppNotificationBell.tsx +++ b/client/src/components/Layout/InAppNotificationBell.tsx @@ -6,9 +6,9 @@ import { useTranslation } from '../../i18n' import { useNotificationStore } from '../../store/notificationStore' import { useSettingsStore } from '../../store/settingsStore' import { useAuthStore } from '../../store/authStore' -import NotificationItem from '../Notifications/NotificationItem' +import InAppNotificationItem from '../Notifications/InAppNotificationItem.tsx' -export default function NotificationBell(): React.ReactElement { +export default function InAppNotificationBell(): React.ReactElement { const { t } = useTranslation() const navigate = useNavigate() const { settings } = useSettingsStore() @@ -143,7 +143,7 @@ export default function NotificationBell(): React.ReactElement { ) : ( notifications.slice(0, 10).map(n => ( - setOpen(false)} /> + setOpen(false)} /> )) )} diff --git a/client/src/components/Layout/Navbar.tsx b/client/src/components/Layout/Navbar.tsx index 9a96a19..1532693 100644 --- a/client/src/components/Layout/Navbar.tsx +++ b/client/src/components/Layout/Navbar.tsx @@ -7,7 +7,7 @@ import { useAddonStore } from '../../store/addonStore' import { useTranslation } from '../../i18n' import { Plane, LogOut, Settings, ChevronDown, Shield, ArrowLeft, Users, Moon, Sun, Monitor, CalendarDays, Briefcase, Globe } from 'lucide-react' import type { LucideIcon } from 'lucide-react' -import NotificationBell from './NotificationBell' +import InAppNotificationBell from './InAppNotificationBell.tsx' const ADDON_ICONS: Record = { CalendarDays, Briefcase, Globe } @@ -165,7 +165,7 @@ export default function Navbar({ tripTitle, tripId, onBack, showBack, onShare }: {/* Notification bell */} - {user && } + {user && } {/* User menu */} {user && ( diff --git a/client/src/components/Notifications/InAppNotificationItem.tsx b/client/src/components/Notifications/InAppNotificationItem.tsx index b59c9c0..8eb9b9d 100644 --- a/client/src/components/Notifications/InAppNotificationItem.tsx +++ b/client/src/components/Notifications/InAppNotificationItem.tsx @@ -21,7 +21,7 @@ interface NotificationItemProps { onClose?: () => void } -export default function NotificationItem({ notification, onClose }: NotificationItemProps): React.ReactElement { +export default function InAppNotificationItem({ notification, onClose }: NotificationItemProps): React.ReactElement { const { t, locale } = useTranslation() const navigate = useNavigate() const { settings } = useSettingsStore() diff --git a/client/src/hooks/useInAppNotificationListener.ts b/client/src/hooks/useInAppNotificationListener.ts index d05b090..f9796b0 100644 --- a/client/src/hooks/useInAppNotificationListener.ts +++ b/client/src/hooks/useInAppNotificationListener.ts @@ -2,7 +2,7 @@ import { useEffect } from 'react' import { addListener, removeListener } from '../api/websocket' import { useNotificationStore } from '../store/notificationStore' -export function useNotificationListener(): void { +export function useInAppNotificationListener(): void { const handleNew = useNotificationStore(s => s.handleNewNotification) const handleUpdated = useNotificationStore(s => s.handleUpdatedNotification) diff --git a/client/src/pages/InAppNotificationsPage.tsx b/client/src/pages/InAppNotificationsPage.tsx index e7580b3..aa18343 100644 --- a/client/src/pages/InAppNotificationsPage.tsx +++ b/client/src/pages/InAppNotificationsPage.tsx @@ -6,7 +6,7 @@ import { useSettingsStore } from '../store/settingsStore' import Navbar from '../components/Layout/Navbar' import InAppNotificationItem from '../components/Notifications/InAppNotificationItem.tsx' -export default function NotificationsPage(): React.ReactElement { +export default function InAppNotificationsPage(): React.ReactElement { const { t } = useTranslation() const { settings } = useSettingsStore() const darkMode = settings.dark_mode