diff --git a/apps/mana/apps/web/src/lib/i18n/locales/inventory/de.json b/apps/mana/apps/web/src/lib/i18n/locales/inventory/de.json
index 5a7d8bc1f..becd937d3 100644
--- a/apps/mana/apps/web/src/lib/i18n/locales/inventory/de.json
+++ b/apps/mana/apps/web/src/lib/i18n/locales/inventory/de.json
@@ -144,5 +144,26 @@
"error": {
"notFound": "Seite nicht gefunden",
"backToHome": "Zurück zur Startseite"
+ },
+ "detail": {
+ "page_title_html": "{name} - Inventar - Mana",
+ "page_title_fallback": "Item",
+ "route_title": "Objekt",
+ "empty_not_found": "Item nicht gefunden",
+ "empty_back": "Zurück",
+ "action_delete": "Löschen",
+ "confirm_delete": "Item endgültig löschen?",
+ "placeholder_name": "Name",
+ "placeholder_description": "Beschreibung",
+ "label_status": "Status",
+ "label_quantity": "Menge",
+ "label_location": "Standort",
+ "label_category": "Kategorie",
+ "option_no_location": "-- Kein Standort --",
+ "option_no_category": "-- Keine Kategorie --",
+ "section_custom_fields": "Eigene Felder",
+ "section_details": "Details",
+ "section_notes_count": "Notizen ({n})",
+ "placeholder_new_note": "Notiz hinzufügen..."
}
}
diff --git a/apps/mana/apps/web/src/lib/i18n/locales/inventory/en.json b/apps/mana/apps/web/src/lib/i18n/locales/inventory/en.json
index 31da651f8..71a025e36 100644
--- a/apps/mana/apps/web/src/lib/i18n/locales/inventory/en.json
+++ b/apps/mana/apps/web/src/lib/i18n/locales/inventory/en.json
@@ -144,5 +144,26 @@
"error": {
"notFound": "Page not found",
"backToHome": "Back to home"
+ },
+ "detail": {
+ "page_title_html": "{name} - Inventory - Mana",
+ "page_title_fallback": "Item",
+ "route_title": "Item",
+ "empty_not_found": "Item not found",
+ "empty_back": "Back",
+ "action_delete": "Delete",
+ "confirm_delete": "Permanently delete this item?",
+ "placeholder_name": "Name",
+ "placeholder_description": "Description",
+ "label_status": "Status",
+ "label_quantity": "Quantity",
+ "label_location": "Location",
+ "label_category": "Category",
+ "option_no_location": "-- No location --",
+ "option_no_category": "-- No category --",
+ "section_custom_fields": "Custom fields",
+ "section_details": "Details",
+ "section_notes_count": "Notes ({n})",
+ "placeholder_new_note": "Add a note..."
}
}
diff --git a/apps/mana/apps/web/src/lib/i18n/locales/inventory/es.json b/apps/mana/apps/web/src/lib/i18n/locales/inventory/es.json
index b4a145359..b2541a100 100644
--- a/apps/mana/apps/web/src/lib/i18n/locales/inventory/es.json
+++ b/apps/mana/apps/web/src/lib/i18n/locales/inventory/es.json
@@ -144,5 +144,26 @@
"error": {
"notFound": "Página no encontrada",
"backToHome": "Volver al inicio"
+ },
+ "detail": {
+ "page_title_html": "{name} - Inventario - Mana",
+ "page_title_fallback": "Artículo",
+ "route_title": "Objeto",
+ "empty_not_found": "Artículo no encontrado",
+ "empty_back": "Volver",
+ "action_delete": "Eliminar",
+ "confirm_delete": "¿Eliminar definitivamente este artículo?",
+ "placeholder_name": "Nombre",
+ "placeholder_description": "Descripción",
+ "label_status": "Estado",
+ "label_quantity": "Cantidad",
+ "label_location": "Ubicación",
+ "label_category": "Categoría",
+ "option_no_location": "-- Sin ubicación --",
+ "option_no_category": "-- Sin categoría --",
+ "section_custom_fields": "Campos personalizados",
+ "section_details": "Detalles",
+ "section_notes_count": "Notas ({n})",
+ "placeholder_new_note": "Añadir una nota..."
}
}
diff --git a/apps/mana/apps/web/src/lib/i18n/locales/inventory/fr.json b/apps/mana/apps/web/src/lib/i18n/locales/inventory/fr.json
index 38e951db7..2827dde0b 100644
--- a/apps/mana/apps/web/src/lib/i18n/locales/inventory/fr.json
+++ b/apps/mana/apps/web/src/lib/i18n/locales/inventory/fr.json
@@ -144,5 +144,26 @@
"error": {
"notFound": "Page introuvable",
"backToHome": "Retour à l'accueil"
+ },
+ "detail": {
+ "page_title_html": "{name} - Inventaire - Mana",
+ "page_title_fallback": "Article",
+ "route_title": "Objet",
+ "empty_not_found": "Article introuvable",
+ "empty_back": "Retour",
+ "action_delete": "Supprimer",
+ "confirm_delete": "Supprimer définitivement cet article ?",
+ "placeholder_name": "Nom",
+ "placeholder_description": "Description",
+ "label_status": "Statut",
+ "label_quantity": "Quantité",
+ "label_location": "Emplacement",
+ "label_category": "Catégorie",
+ "option_no_location": "-- Aucun emplacement --",
+ "option_no_category": "-- Aucune catégorie --",
+ "section_custom_fields": "Champs personnalisés",
+ "section_details": "Détails",
+ "section_notes_count": "Notes ({n})",
+ "placeholder_new_note": "Ajouter une note..."
}
}
diff --git a/apps/mana/apps/web/src/lib/i18n/locales/inventory/it.json b/apps/mana/apps/web/src/lib/i18n/locales/inventory/it.json
index 6c7dacb9a..c9f76c00a 100644
--- a/apps/mana/apps/web/src/lib/i18n/locales/inventory/it.json
+++ b/apps/mana/apps/web/src/lib/i18n/locales/inventory/it.json
@@ -144,5 +144,26 @@
"error": {
"notFound": "Pagina non trovata",
"backToHome": "Torna alla home"
+ },
+ "detail": {
+ "page_title_html": "{name} - Inventario - Mana",
+ "page_title_fallback": "Articolo",
+ "route_title": "Oggetto",
+ "empty_not_found": "Articolo non trovato",
+ "empty_back": "Indietro",
+ "action_delete": "Elimina",
+ "confirm_delete": "Eliminare definitivamente questo articolo?",
+ "placeholder_name": "Nome",
+ "placeholder_description": "Descrizione",
+ "label_status": "Stato",
+ "label_quantity": "Quantità",
+ "label_location": "Posizione",
+ "label_category": "Categoria",
+ "option_no_location": "-- Nessuna posizione --",
+ "option_no_category": "-- Nessuna categoria --",
+ "section_custom_fields": "Campi personalizzati",
+ "section_details": "Dettagli",
+ "section_notes_count": "Note ({n})",
+ "placeholder_new_note": "Aggiungi una nota..."
}
}
diff --git a/apps/mana/apps/web/src/lib/i18n/locales/invitations/de.json b/apps/mana/apps/web/src/lib/i18n/locales/invitations/de.json
new file mode 100644
index 000000000..3ef7ff908
--- /dev/null
+++ b/apps/mana/apps/web/src/lib/i18n/locales/invitations/de.json
@@ -0,0 +1,24 @@
+{
+ "accept": {
+ "loading": "Lade Einladung …",
+ "unavailable_title": "Einladung nicht abrufbar",
+ "unavailable_hint": "Der Link ist möglicherweise abgelaufen oder schon benutzt.",
+ "already_accepted_title": "Schon angenommen",
+ "already_accepted_hint": "Diese Einladung ist bereits angenommen worden.",
+ "to_app": "Zur App",
+ "expired_title": "Einladung abgelaufen",
+ "expired_hint": "Diese Einladung ist nicht mehr gültig.",
+ "eyebrow": "Einladung",
+ "heading_invite_html": "{inviter} lädt dich in {space} ein",
+ "inviter_fallback": "Jemand",
+ "space_fallback": "einen Space",
+ "role_label": "Rolle: {role}",
+ "explainer": "Nach Annahme kannst du in diesem Space mitarbeiten — sehen, was andere schreiben, und selbst Einträge anlegen. Deine persönlichen Daten bleiben in deinem Personal-Space, getrennt.",
+ "action_decline": "Ablehnen",
+ "action_processing": "Bearbeite …",
+ "action_login_accept": "Einloggen & annehmen",
+ "action_accept": "Annehmen",
+ "error_no_invitation_id": "Kein Einladungs-Code in der URL",
+ "error_not_found": "Einladung nicht gefunden ({status})"
+ }
+}
diff --git a/apps/mana/apps/web/src/lib/i18n/locales/invitations/en.json b/apps/mana/apps/web/src/lib/i18n/locales/invitations/en.json
new file mode 100644
index 000000000..92fea54e2
--- /dev/null
+++ b/apps/mana/apps/web/src/lib/i18n/locales/invitations/en.json
@@ -0,0 +1,24 @@
+{
+ "accept": {
+ "loading": "Loading invitation …",
+ "unavailable_title": "Invitation unavailable",
+ "unavailable_hint": "The link may have expired or already been used.",
+ "already_accepted_title": "Already accepted",
+ "already_accepted_hint": "This invitation has already been accepted.",
+ "to_app": "Go to app",
+ "expired_title": "Invitation expired",
+ "expired_hint": "This invitation is no longer valid.",
+ "eyebrow": "Invitation",
+ "heading_invite_html": "{inviter} is inviting you to {space}",
+ "inviter_fallback": "Someone",
+ "space_fallback": "a space",
+ "role_label": "Role: {role}",
+ "explainer": "Once accepted, you can collaborate in this space — see what others write and add entries yourself. Your personal data stays separately in your personal space.",
+ "action_decline": "Decline",
+ "action_processing": "Processing …",
+ "action_login_accept": "Sign in & accept",
+ "action_accept": "Accept",
+ "error_no_invitation_id": "No invitation code in the URL",
+ "error_not_found": "Invitation not found ({status})"
+ }
+}
diff --git a/apps/mana/apps/web/src/lib/i18n/locales/invitations/es.json b/apps/mana/apps/web/src/lib/i18n/locales/invitations/es.json
new file mode 100644
index 000000000..066e827fd
--- /dev/null
+++ b/apps/mana/apps/web/src/lib/i18n/locales/invitations/es.json
@@ -0,0 +1,24 @@
+{
+ "accept": {
+ "loading": "Cargando invitación …",
+ "unavailable_title": "Invitación no disponible",
+ "unavailable_hint": "Es posible que el enlace haya expirado o ya se haya usado.",
+ "already_accepted_title": "Ya aceptada",
+ "already_accepted_hint": "Esta invitación ya ha sido aceptada.",
+ "to_app": "Ir a la app",
+ "expired_title": "Invitación caducada",
+ "expired_hint": "Esta invitación ya no es válida.",
+ "eyebrow": "Invitación",
+ "heading_invite_html": "{inviter} te invita a {space}",
+ "inviter_fallback": "Alguien",
+ "space_fallback": "un espacio",
+ "role_label": "Rol: {role}",
+ "explainer": "Tras aceptar, podrás colaborar en este espacio — ver lo que otros escriben y crear entradas tú mismo. Tus datos personales permanecen separados en tu espacio personal.",
+ "action_decline": "Rechazar",
+ "action_processing": "Procesando …",
+ "action_login_accept": "Iniciar sesión y aceptar",
+ "action_accept": "Aceptar",
+ "error_no_invitation_id": "No hay código de invitación en la URL",
+ "error_not_found": "Invitación no encontrada ({status})"
+ }
+}
diff --git a/apps/mana/apps/web/src/lib/i18n/locales/invitations/fr.json b/apps/mana/apps/web/src/lib/i18n/locales/invitations/fr.json
new file mode 100644
index 000000000..d071aa0cb
--- /dev/null
+++ b/apps/mana/apps/web/src/lib/i18n/locales/invitations/fr.json
@@ -0,0 +1,24 @@
+{
+ "accept": {
+ "loading": "Chargement de l'invitation …",
+ "unavailable_title": "Invitation indisponible",
+ "unavailable_hint": "Le lien a peut-être expiré ou a déjà été utilisé.",
+ "already_accepted_title": "Déjà acceptée",
+ "already_accepted_hint": "Cette invitation a déjà été acceptée.",
+ "to_app": "Vers l'app",
+ "expired_title": "Invitation expirée",
+ "expired_hint": "Cette invitation n'est plus valable.",
+ "eyebrow": "Invitation",
+ "heading_invite_html": "{inviter} t'invite dans {space}",
+ "inviter_fallback": "Quelqu'un",
+ "space_fallback": "un espace",
+ "role_label": "Rôle : {role}",
+ "explainer": "Une fois acceptée, tu pourras collaborer dans cet espace — voir ce que les autres écrivent et créer toi-même des entrées. Tes données personnelles restent séparées dans ton espace personnel.",
+ "action_decline": "Refuser",
+ "action_processing": "Traitement …",
+ "action_login_accept": "Se connecter et accepter",
+ "action_accept": "Accepter",
+ "error_no_invitation_id": "Aucun code d'invitation dans l'URL",
+ "error_not_found": "Invitation introuvable ({status})"
+ }
+}
diff --git a/apps/mana/apps/web/src/lib/i18n/locales/invitations/it.json b/apps/mana/apps/web/src/lib/i18n/locales/invitations/it.json
new file mode 100644
index 000000000..8932f8a63
--- /dev/null
+++ b/apps/mana/apps/web/src/lib/i18n/locales/invitations/it.json
@@ -0,0 +1,24 @@
+{
+ "accept": {
+ "loading": "Caricamento invito …",
+ "unavailable_title": "Invito non disponibile",
+ "unavailable_hint": "Il link potrebbe essere scaduto o già stato usato.",
+ "already_accepted_title": "Già accettato",
+ "already_accepted_hint": "Questo invito è già stato accettato.",
+ "to_app": "Vai all'app",
+ "expired_title": "Invito scaduto",
+ "expired_hint": "Questo invito non è più valido.",
+ "eyebrow": "Invito",
+ "heading_invite_html": "{inviter} ti invita in {space}",
+ "inviter_fallback": "Qualcuno",
+ "space_fallback": "uno spazio",
+ "role_label": "Ruolo: {role}",
+ "explainer": "Dopo l'accettazione potrai collaborare in questo spazio — vedere ciò che scrivono gli altri e creare tu stesso voci. I tuoi dati personali restano separati nel tuo spazio personale.",
+ "action_decline": "Rifiuta",
+ "action_processing": "Elaborazione …",
+ "action_login_accept": "Accedi e accetta",
+ "action_accept": "Accetta",
+ "error_no_invitation_id": "Nessun codice d'invito nell'URL",
+ "error_not_found": "Invito non trovato ({status})"
+ }
+}
diff --git a/apps/mana/apps/web/src/lib/i18n/locales/questions/de.json b/apps/mana/apps/web/src/lib/i18n/locales/questions/de.json
index 2f8bbadc0..a1e53ec2a 100644
--- a/apps/mana/apps/web/src/lib/i18n/locales/questions/de.json
+++ b/apps/mana/apps/web/src/lib/i18n/locales/questions/de.json
@@ -92,5 +92,29 @@
"questionDeleted": "Frage gelöscht",
"researchStarted": "Recherche gestartet",
"answerAccepted": "Antwort akzeptiert"
+ },
+ "home": {
+ "page_title_html": "Fragen - Mana",
+ "heading_all": "Alle Fragen",
+ "count_one": "{n} Frage",
+ "count_other": "{n} Fragen",
+ "action_collections": "Sammlungen",
+ "action_new": "Neue Frage",
+ "placeholder_search": "Fragen durchsuchen...",
+ "filter_all_status": "Alle Status",
+ "filter_open": "Offen",
+ "filter_researching": "Recherche",
+ "filter_answered": "Beantwortet",
+ "filter_archived": "Archiviert",
+ "filter_all_collections": "Alle Sammlungen",
+ "empty_title": "Keine Fragen",
+ "empty_hint": "Stelle deine erste Frage und lass die KI recherchieren.",
+ "empty_action": "Neue Frage",
+ "depth_quick": "Quick",
+ "depth_standard": "Standard",
+ "depth_deep": "Deep",
+ "date_today": "Heute",
+ "date_yesterday": "Gestern",
+ "date_days_ago": "Vor {n} Tagen"
}
}
diff --git a/apps/mana/apps/web/src/lib/i18n/locales/questions/en.json b/apps/mana/apps/web/src/lib/i18n/locales/questions/en.json
index 78e29de13..8421bbd1f 100644
--- a/apps/mana/apps/web/src/lib/i18n/locales/questions/en.json
+++ b/apps/mana/apps/web/src/lib/i18n/locales/questions/en.json
@@ -92,5 +92,29 @@
"questionDeleted": "Question deleted",
"researchStarted": "Research started",
"answerAccepted": "Answer accepted"
+ },
+ "home": {
+ "page_title_html": "Questions - Mana",
+ "heading_all": "All questions",
+ "count_one": "{n} question",
+ "count_other": "{n} questions",
+ "action_collections": "Collections",
+ "action_new": "New question",
+ "placeholder_search": "Search questions...",
+ "filter_all_status": "All statuses",
+ "filter_open": "Open",
+ "filter_researching": "Researching",
+ "filter_answered": "Answered",
+ "filter_archived": "Archived",
+ "filter_all_collections": "All collections",
+ "empty_title": "No questions",
+ "empty_hint": "Ask your first question and let the AI research it.",
+ "empty_action": "New question",
+ "depth_quick": "Quick",
+ "depth_standard": "Standard",
+ "depth_deep": "Deep",
+ "date_today": "Today",
+ "date_yesterday": "Yesterday",
+ "date_days_ago": "{n} days ago"
}
}
diff --git a/apps/mana/apps/web/src/lib/i18n/locales/questions/es.json b/apps/mana/apps/web/src/lib/i18n/locales/questions/es.json
index 49eeaeea7..b124a5f9c 100644
--- a/apps/mana/apps/web/src/lib/i18n/locales/questions/es.json
+++ b/apps/mana/apps/web/src/lib/i18n/locales/questions/es.json
@@ -92,5 +92,29 @@
"questionDeleted": "Pregunta eliminada",
"researchStarted": "Investigación iniciada",
"answerAccepted": "Respuesta aceptada"
+ },
+ "home": {
+ "page_title_html": "Preguntas - Mana",
+ "heading_all": "Todas las preguntas",
+ "count_one": "{n} pregunta",
+ "count_other": "{n} preguntas",
+ "action_collections": "Colecciones",
+ "action_new": "Nueva pregunta",
+ "placeholder_search": "Buscar preguntas...",
+ "filter_all_status": "Todos los estados",
+ "filter_open": "Abierta",
+ "filter_researching": "Investigando",
+ "filter_answered": "Respondida",
+ "filter_archived": "Archivada",
+ "filter_all_collections": "Todas las colecciones",
+ "empty_title": "Sin preguntas",
+ "empty_hint": "Haz tu primera pregunta y deja que la IA la investigue.",
+ "empty_action": "Nueva pregunta",
+ "depth_quick": "Rápida",
+ "depth_standard": "Estándar",
+ "depth_deep": "Profunda",
+ "date_today": "Hoy",
+ "date_yesterday": "Ayer",
+ "date_days_ago": "Hace {n} días"
}
}
diff --git a/apps/mana/apps/web/src/lib/i18n/locales/questions/fr.json b/apps/mana/apps/web/src/lib/i18n/locales/questions/fr.json
index 7079e5678..f2e225f83 100644
--- a/apps/mana/apps/web/src/lib/i18n/locales/questions/fr.json
+++ b/apps/mana/apps/web/src/lib/i18n/locales/questions/fr.json
@@ -92,5 +92,29 @@
"questionDeleted": "Question supprimée",
"researchStarted": "Recherche lancée",
"answerAccepted": "Réponse acceptée"
+ },
+ "home": {
+ "page_title_html": "Questions - Mana",
+ "heading_all": "Toutes les questions",
+ "count_one": "{n} question",
+ "count_other": "{n} questions",
+ "action_collections": "Collections",
+ "action_new": "Nouvelle question",
+ "placeholder_search": "Rechercher des questions...",
+ "filter_all_status": "Tous les statuts",
+ "filter_open": "Ouverte",
+ "filter_researching": "Recherche",
+ "filter_answered": "Répondue",
+ "filter_archived": "Archivée",
+ "filter_all_collections": "Toutes les collections",
+ "empty_title": "Aucune question",
+ "empty_hint": "Pose ta première question et laisse l'IA chercher.",
+ "empty_action": "Nouvelle question",
+ "depth_quick": "Rapide",
+ "depth_standard": "Standard",
+ "depth_deep": "Approfondie",
+ "date_today": "Aujourd'hui",
+ "date_yesterday": "Hier",
+ "date_days_ago": "Il y a {n} jours"
}
}
diff --git a/apps/mana/apps/web/src/lib/i18n/locales/questions/it.json b/apps/mana/apps/web/src/lib/i18n/locales/questions/it.json
index 29cbc7e1c..2b20662c3 100644
--- a/apps/mana/apps/web/src/lib/i18n/locales/questions/it.json
+++ b/apps/mana/apps/web/src/lib/i18n/locales/questions/it.json
@@ -92,5 +92,29 @@
"questionDeleted": "Domanda eliminata",
"researchStarted": "Ricerca avviata",
"answerAccepted": "Risposta accettata"
+ },
+ "home": {
+ "page_title_html": "Domande - Mana",
+ "heading_all": "Tutte le domande",
+ "count_one": "{n} domanda",
+ "count_other": "{n} domande",
+ "action_collections": "Raccolte",
+ "action_new": "Nuova domanda",
+ "placeholder_search": "Cerca domande...",
+ "filter_all_status": "Tutti gli stati",
+ "filter_open": "Aperta",
+ "filter_researching": "In ricerca",
+ "filter_answered": "Risposta",
+ "filter_archived": "Archiviata",
+ "filter_all_collections": "Tutte le raccolte",
+ "empty_title": "Nessuna domanda",
+ "empty_hint": "Fai la tua prima domanda e lascia che l'IA la cerchi.",
+ "empty_action": "Nuova domanda",
+ "depth_quick": "Rapida",
+ "depth_standard": "Standard",
+ "depth_deep": "Approfondita",
+ "date_today": "Oggi",
+ "date_yesterday": "Ieri",
+ "date_days_ago": "{n} giorni fa"
}
}