feat(register): redesign register page to match spec

Replaces the minimal login-style form with the full spec design:
hero section (eyebrow, headline, subtext), three labelled form sections,
2-column name grid, confirm-password field with client-side match hints,
password strength indicator, notification checkbox card, loading state on
submit, and "already have an account?" footer link.

Backend: adds notifyOnMention to RegisterRequest and wires both
notifyOnMention and notifyOnReply via updateNotificationPreferences on
invite redemption.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Marcel
2026-04-19 12:27:03 +02:00
parent 1926e8e6e5
commit d07f7debf8
9 changed files with 321 additions and 117 deletions

View File

@@ -658,6 +658,22 @@
"register_invalid_code": "Invalid invite link",
"register_invalid_code_desc": "This invite link is not valid, has already been used, or has expired. Please contact the administrator.",
"register_success": "Your account has been created. You can now sign in.",
"register_eyebrow": "A family project",
"register_hero_headline": "Glad you're here.",
"register_hero_subtext": "Together we preserve letters and documents for the family, now and in the future.",
"register_section_about": "About you",
"register_section_account": "Account",
"register_section_notifications": "Notifications",
"register_label_password_confirm": "Confirm password",
"register_pw_hint": "At least 8 characters.",
"register_pw_ok": "At least 8 characters. ✓",
"register_pw_match_ok": "Passwords match.",
"register_pw_match_no": "The two passwords don't match yet.",
"register_notify_title": "Notify me",
"register_notify_desc": "when someone mentions me in a comment or replies to one of my comments.",
"register_btn_loading": "Creating …",
"register_already_have_account": "Already have an account?",
"register_sign_in": "Sign in",
"login_registered_success": "Your account was created successfully. Sign in now.",
"admin_tab_invites": "Invites",
"admin_invites_list_title": "Invites",