siftlode/frontend/src/i18n/locales/de
npeter83 84b55c0567 feat(account): GDPR self-service account + data deletion (5d)
Add DELETE /api/me/account: permanently erases the signed-in account and all its
personal data — OAuth tokens, subscriptions, tags, video states, playlists,
notifications all cascade on the users row (FK ON DELETE CASCADE); quota-audit
events are kept but anonymised (SET NULL); the email's invite/whitelist row is
removed too. Guards: the shared demo account can't be deleted, and the last
remaining admin can't delete itself. Frontend: a Danger zone in Settings -> Account
(non-demo) with a danger-confirm; on success the session clears and the app lands
on the welcome page. EN/HU/DE. Verified via curl: self-delete + session clear +
demo 403.
2026-06-19 15:46:49 +02:00
..
about.json feat(i18n): translate login and app chrome (HU/EN/DE) 2026-06-15 00:30:34 +02:00
card.json feat(tags): tag UX overhaul + per-card video reset 2026-06-18 01:17:31 +02:00
channels.json feat(discovery): total-videos column + subscribe confirmation 2026-06-19 11:18:28 +02:00
common.json feat(demo): login trigger, feature gating + admin UI (HU/EN/DE) 2026-06-16 09:17:34 +02:00
config.json feat(auth): admin Users page + allow_registration toggle (5a frontend) 2026-06-19 14:16:48 +02:00
datatable.json feat(ui): reusable DataTable component 2026-06-17 19:16:23 +02:00
errors.json fix(web): make the 'connection lost' notice self-resolving 2026-06-18 23:17:32 +02:00
feed.json fix(demo): graceful UX when YouTube actions are unavailable 2026-06-16 09:27:34 +02:00
header.json feat(auth): admin Users page + allow_registration toggle (5a frontend) 2026-06-19 14:16:48 +02:00
inbox.json feat(inbox): add navigation links to watched and scheduler notices 2026-06-19 03:05:01 +02:00
login.json feat(i18n): translate login and app chrome (HU/EN/DE) 2026-06-15 00:30:34 +02:00
nav.json feat(nav): N1 — collapsible left nav sidebar (Design C) 2026-06-16 00:42:23 +02:00
notifications.json feat(notifications): link the subscribe activity to the channel 2026-06-19 02:16:50 +02:00
onboarding.json feat(i18n): translate remaining components (HU/EN/DE) 2026-06-15 00:47:04 +02:00
player.json fix(player): friendly fallback when a video can't be embedded 2026-06-16 10:45:57 +02:00
playlists.json polish(playlists): compact header actions + open-on-YouTube link 2026-06-15 22:40:21 +02:00
quotaActions.json refactor(quota): canonical <entity>_<action> taxonomy for quota events 2026-06-19 11:48:11 +02:00
scheduler.json feat(demo): scheduled demo-account reset (5c) 2026-06-19 15:25:13 +02:00
settings.json feat(account): GDPR self-service account + data deletion (5d) 2026-06-19 15:46:49 +02:00
sidebar.json feat(tags): tag UX overhaul + per-card video reset 2026-06-18 01:17:31 +02:00
stats.json feat(stats): consolidate per-user sync status into the Stats page 2026-06-19 11:48:20 +02:00
tagManager.json feat(tags): tag UX overhaul + per-card video reset 2026-06-18 01:17:31 +02:00
time.json feat(i18n): translate remaining components (HU/EN/DE) 2026-06-15 00:47:04 +02:00
users.json feat(auth): admin Users page + allow_registration toggle (5a frontend) 2026-06-19 14:16:48 +02:00
welcome.json feat(auth): welcome/landing page + email-password login UI (5b) 2026-06-19 15:15:58 +02:00