A Messages tab in the notification center (hidden for demo): set up secure messaging with a passphrase (key generated + wrapped in-browser via WebCrypto, stored non-extractable per device), unlock on other devices, then chat with end-to-end encrypted, live-delivered messages. The server-authored Siftlode welcome is readable before any key setup. - lib/e2ee.ts: ECDH P-256 + HKDF + AES-GCM, PBKDF2-wrapped key, IndexedDB. - lib/messagesSocket.ts: WebSocket client with backoff reconnect. - Messages.tsx: key gate, conversation list with decrypted previews, directory, thread with client-side decrypt + encrypt-on-send. Unread feeds the nav badge. EN/HU/DE strings.
24 lines
809 B
JSON
24 lines
809 B
JSON
{
|
|
"navLabel": "Notifications",
|
|
"title": "Notifications",
|
|
"subtitle": "Updates from your library and the system.",
|
|
"tabInbox": "Notifications",
|
|
"empty": "You're all caught up.",
|
|
"markAllRead": "Mark all read",
|
|
"clearAll": "Clear all",
|
|
"markRead": "Mark read",
|
|
"dismiss": "Dismiss",
|
|
"sectionSystem": "System",
|
|
"sectionActivity": "Activity",
|
|
"andMore": "and {{count}} more",
|
|
"openScheduler": "Open Scheduler",
|
|
"maintenance": {
|
|
"title": "Videos removed",
|
|
"body_one": "{{count}} saved or playlisted video was removed because it's no longer available on YouTube.",
|
|
"body_other": "{{count}} saved or playlisted videos were removed because they're no longer available on YouTube."
|
|
},
|
|
"jobDone": {
|
|
"titleOk": "{{job}} finished",
|
|
"titleError": "{{job}} failed"
|
|
}
|
|
}
|