release: v0.31.0 — family-contacts integration & settings restructure

- Family member records now store phone, email, and birthday, auto-synced
  to Contacts and Birthdays modules (PR #99 by @rafaelfoster)
- Settings gets dedicated Family and API Tokens tabs (admin-only)
- Avatar editor redesigned with icon buttons; tab bar fits standard width
- Dentist calendar icon normalised to 'tooth'; theme reset bug fixed
- i18n: missing family field translations added to 12 locales

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Ulas Kalayci
2026-04-29 07:20:53 +02:00
parent acc3db5aca
commit 7940ea4ded
14 changed files with 104 additions and 85 deletions
+7 -7
View File
@@ -734,13 +734,13 @@
"shared": "Condiviso"
}
},
"memberPhoneLabel": "Phone number (optional)",
"memberEmailLabel": "Email (optional)",
"memberBirthDateLabel": "Birthday date (optional)",
"memberContactBirthdayHint": "This member is automatically synchronized with Contacts and Birthdays.",
"memberBirthDateInvalid": "Use a valid birthday date in the selected date format.",
"memberPhoneMeta": "Phone: {{value}}",
"memberBirthdayMeta": "Birthday: {{date}}"
"memberPhoneLabel": "Numero di telefono (opzionale)",
"memberEmailLabel": "E-mail (opzionale)",
"memberBirthDateLabel": "Data di nascita (opzionale)",
"memberContactBirthdayHint": "Questo membro viene sincronizzato automaticamente con i Contatti e i Compleanni.",
"memberBirthDateInvalid": "Usa una data di nascita valida nel formato selezionato.",
"memberPhoneMeta": "Telefono: {{value}}",
"memberBirthdayMeta": "Compleanno: {{date}}"
},
"login": {
"tagline": "Pianificazione familiare. Sicura. Rispettosa della privacy. Open source.",