siftlode/frontend/src/components
npeter83 d3c6ce659c feat(notifications): unify the two rail indicators into one inbox
Fold the client-side transient bell into the inbox page so there's a single
notification indicator. The inbox now has two groups — "System" (durable,
server-backed) and "Activity" (client-side events with their Unhide/Unwatch/
Find-in-feed actions) — and the nav badge sums both unread counts. The separate
rail bell (NotificationCenter) is removed.

Activity items get a per-item clear (X) alongside the global Clear all. Unhiding
or unwatching a video from anywhere — a card, the toast's Undo, or the inbox —
now quietly resolves the original "Hidden/Watched X" entry (no duplicate "Unhidden
X" toast, no stale entry with a dead action), via a new resolveVideo store helper.
2026-06-18 04:37:20 +02:00
..
legal chore: rebrand Subfeed -> Siftlode 2026-06-14 04:40:22 +02:00
About.tsx feat(i18n): translate login and app chrome (HU/EN/DE) 2026-06-15 00:30:34 +02:00
AddToPlaylist.tsx fix(ui): opaque .glass-menu for floating popovers (readability) 2026-06-16 01:39:56 +02:00
Avatar.tsx fix(ui): robust avatars — no-referrer + graceful fallback 2026-06-12 18:01:43 +02:00
Channels.tsx feat(tags): tag UX overhaul + per-card video reset 2026-06-18 01:17:31 +02:00
ConfirmProvider.tsx feat(ui): reusable app-styled confirm dialog, replacing window.confirm 2026-06-15 15:06:47 +02:00
DataTable.tsx feat(tags): tag UX overhaul + per-card video reset 2026-06-18 01:17:31 +02:00
DemoBanner.tsx improvement(demo): permanent banner instead of a re-popping toast 2026-06-16 10:12:10 +02:00
ErrorBoundary.tsx feat(i18n): translate remaining components (HU/EN/DE) 2026-06-15 00:47:04 +02:00
ErrorDialog.tsx fix(ux): modal error dialog for server-refused actions + ESC closes only the topmost 2026-06-18 01:17:31 +02:00
Feed.tsx feat(notifications): unify the two rail indicators into one inbox 2026-06-18 04:37:20 +02:00
Header.tsx feat(nav): group rail modules + move chrome controls into the sidebar 2026-06-17 14:28:29 +02:00
LanguageSwitcher.tsx feat(nav): group rail modules + move chrome controls into the sidebar 2026-06-17 14:28:29 +02:00
Login.tsx feat(demo): login trigger, feature gating + admin UI (HU/EN/DE) 2026-06-16 09:17:34 +02:00
Modal.tsx fix(ux): modal error dialog for server-refused actions + ESC closes only the topmost 2026-06-18 01:17:31 +02:00
NavSidebar.tsx feat(notifications): unify the two rail indicators into one inbox 2026-06-18 04:37:20 +02:00
NotificationsPanel.tsx feat(notifications): unify the two rail indicators into one inbox 2026-06-18 04:37:20 +02:00
OnboardingWizard.tsx feat(i18n): translate remaining components (HU/EN/DE) 2026-06-15 00:47:04 +02:00
PlayerModal.tsx fix(player): persist watched at end-of-playback (atomic upsert) 2026-06-17 13:38:47 +02:00
Playlists.tsx feat(playlists): move the new-playlist input to the top of the rail 2026-06-17 13:55:43 +02:00
ReleaseNotes.tsx feat(i18n): translate login and app chrome (HU/EN/DE) 2026-06-15 00:30:34 +02:00
Scheduler.tsx feat(scheduler): admin-tunable maintenance re-validation batch size 2026-06-18 04:37:08 +02:00
SettingsPanel.tsx fix(settings): persist the active tab across reloads 2026-06-17 14:30:56 +02:00
Sidebar.tsx feat(tags): tag UX overhaul + per-card video reset 2026-06-18 01:17:31 +02:00
Stats.tsx fix(stats): keep daily usage bars always visible 2026-06-17 13:55:43 +02:00
SyncStatus.tsx fix(header): keep the sync-status count live (focus refetch + background poll) 2026-06-15 17:00:06 +02:00
TagManager.tsx feat(tags): tag UX overhaul + per-card video reset 2026-06-18 01:17:31 +02:00
Toaster.tsx feat(toast): surface toasts bottom-left by the bell, brighter dark rim 2026-06-17 14:28:29 +02:00
Tooltip.tsx fix(ui): portal tooltips, opaque glass, settings rail+stable height, notif test, channel help 2026-06-11 21:30:25 +02:00
UndoToolbar.tsx feat(playlists): sort + group-by-channel with reusable undo/redo 2026-06-15 21:52:28 +02:00
VersionBanner.tsx feat(i18n): translate login and app chrome (HU/EN/DE) 2026-06-15 00:30:34 +02:00
VideoCard.tsx feat(tags): tag UX overhaul + per-card video reset 2026-06-18 01:17:31 +02:00