diff --git a/frontend/src/components/AppShell.tsx b/frontend/src/components/AppShell.tsx index acde6d60..bae80966 100644 --- a/frontend/src/components/AppShell.tsx +++ b/frontend/src/components/AppShell.tsx @@ -170,7 +170,7 @@ function Header({ onOpenLeftNav, onOpenCalendar }: HeaderProps) {
- +
diff --git a/frontend/src/components/NotificationCenter.tsx b/frontend/src/components/NotificationCenter.tsx index 132f8c5e..bcd99cb9 100644 --- a/frontend/src/components/NotificationCenter.tsx +++ b/frontend/src/components/NotificationCenter.tsx @@ -7,7 +7,11 @@ import { useWebPush } from '@/hooks/useWebPush'; import { formatDistanceToNow } from 'date-fns'; import { ru } from 'date-fns/locale/ru'; -export function NotificationCenter() { +interface NotificationCenterProps { + variant?: 'default' | 'mobile'; +} + +export function NotificationCenter({ variant = 'default' }: NotificationCenterProps) { const [isOpen, setIsOpen] = useState(false); const [showSettings, setShowSettings] = useState(false); const dropdownRef = useRef(null); @@ -58,12 +62,16 @@ export function NotificationCenter() { setIsOpen(!isOpen); setShowSettings(false); }} - className="relative p-2 rounded-lg hover:bg-gray-100 transition-colors" + className={ + variant === 'mobile' + ? "relative flex h-10 w-10 shrink-0 items-center justify-center rounded-full border border-gray-200 bg-gray-50 hover:bg-slate-100" + : "relative flex h-10 w-10 items-center justify-center rounded-full hover:bg-slate-100" + } aria-label="Уведомления" > - + {unreadCount > 0 && ( - + {unreadCount > 9 ? '9+' : unreadCount} )} @@ -71,60 +79,60 @@ export function NotificationCenter() { {/* Dropdown */} {isOpen && ( -
+
{/* Заголовок */} -
-

Уведомления

+
+

Уведомления

{unreadCount > 0 && ( )}
{/* Настройки Push */} {showSettings && ( -
-

Push уведомления

+
+

Push уведомления

{!isSupported ? ( -

+

Push уведомления не поддерживаются вашим браузером

) : permission === 'denied' ? ( -

+

Вы запретили уведомления. Измените настройки браузера.

) : (
- + {isSubscribed ? 'Включены' : 'Отключены'}