diff --git a/apps/manacore/apps/web/src/lib/content/help/index.ts b/apps/manacore/apps/web/src/lib/content/help/index.ts index b14c66354..d609a16a9 100644 --- a/apps/manacore/apps/web/src/lib/content/help/index.ts +++ b/apps/manacore/apps/web/src/lib/content/help/index.ts @@ -1,127 +1,103 @@ /** - * Help content for ManaCore app + * Help content for ManaCore app — reads from i18n locale files. */ import type { HelpContent } from '@manacore/help'; import { getPrivacyFAQs } from '@manacore/help'; +import { get } from 'svelte/store'; +import { _, locale } from 'svelte-i18n'; -export function getManaCoreHelpContent(locale: string): HelpContent { - const isDE = locale === 'de'; +function t(key: string): string { + return get(_)(key) || key; +} + +export function getManaCoreHelpContent(loc?: string): HelpContent { + const currentLocale = loc || get(locale) || 'de'; return { faq: [ { id: 'faq-what-is-manacore', - question: isDE ? 'Was ist ManaCore?' : 'What is ManaCore?', - answer: isDE - ? '
ManaCore ist die zentrale Plattform des Mana-Ökosystems:
ManaCore is the central platform of the Mana ecosystem:
Single Sign-On ermöglicht dir, dich einmal anzumelden und alle Mana-Apps zu nutzen:
SSO verwendet sichere JWT-Tokens mit EdDSA-Verschlüsselung. Dein Passwort wird nur einmal beim Login übertragen.
' - : 'Single Sign-On lets you log in once and use all Mana apps:
SSO uses secure JWT tokens with EdDSA encryption. Your password is only transmitted once during login.
', + question: t('help.faq.sso.question'), + answer: t('help.faq.sso.answer'), category: 'account', order: 2, - language: isDE ? 'de' : 'en', - tags: isDE - ? ['sso', 'anmeldung', 'login', 'authentifizierung'] - : ['sso', 'login', 'authentication', 'sign-in'], + language: currentLocale, + tags: t('help.faq.sso.tags').split(','), }, { id: 'faq-organizations', - question: isDE ? 'Wie verwalte ich Organisationen?' : 'How do I manage organizations?', - answer: isDE - ? 'Organisationen ermöglichen Teamarbeit im Mana-Ökosystem:
slug.mana.howOrganizations enable teamwork in the Mana ecosystem:
slug.mana.howDu kannst schnell zwischen Mana-Apps wechseln:
Dein Login bleibt dank SSO beim Wechsel zwischen Apps erhalten.
' - : 'You can quickly switch between Mana apps:
Your login persists when switching between apps thanks to SSO.
', + question: t('help.faq.switch_apps.question'), + answer: t('help.faq.switch_apps.answer'), category: 'general', order: 4, - language: isDE ? 'de' : 'en', - tags: isDE ? ['wechseln', 'apps', 'navigation'] : ['switch', 'apps', 'navigation'], + language: currentLocale, + tags: t('help.faq.switch_apps.tags').split(','), }, - ...getPrivacyFAQs(locale, { dataTypeDE: 'Daten', dataTypeEN: 'data' }), + ...getPrivacyFAQs(currentLocale, { dataTypeDE: 'Daten', dataTypeEN: 'data' }), ], features: [ { id: 'feature-sso', - title: 'Single Sign-On', - description: isDE - ? 'Einmal anmelden und alle Mana-Apps nutzen' - : 'Sign in once and use all Mana apps', + title: t('help.features.sso.title'), + description: t('help.features.sso.description'), icon: '🔐', category: 'core', - highlights: isDE - ? ['Ein Login für alles', 'EdDSA JWT-Tokens', 'Sichere Sitzungen', 'Automatischer Logout'] - : ['One login for everything', 'EdDSA JWT tokens', 'Secure sessions', 'Automatic logout'], + highlights: t('help.features.sso.highlights').split(','), content: '', order: 1, - language: isDE ? 'de' : 'en', + language: currentLocale, }, { id: 'feature-app-ecosystem', - title: isDE ? 'App-Ökosystem' : 'App Ecosystem', - description: isDE - ? 'Zugang zu allen Mana-Apps über eine zentrale Plattform' - : 'Access all Mana apps from one central platform', + title: t('help.features.app_ecosystem.title'), + description: t('help.features.app_ecosystem.description'), icon: '🌐', category: 'core', - highlights: isDE - ? ['App-Übersicht', 'Schnellzugriff', 'Einheitliches Design', 'Verbundene Daten'] - : ['App overview', 'Quick access', 'Unified design', 'Connected data'], + highlights: t('help.features.app_ecosystem.highlights').split(','), content: '', order: 2, - language: isDE ? 'de' : 'en', + language: currentLocale, }, { id: 'feature-organizations', - title: isDE ? 'Organisationen & Teams' : 'Organizations & Teams', - description: isDE - ? 'Erstelle Organisationen und verwalte Teammitglieder und Rollen' - : 'Create organizations and manage team members and roles', + title: t('help.features.organizations.title'), + description: t('help.features.organizations.description'), icon: '👥', category: 'advanced', - highlights: isDE - ? ['Rollenbasierter Zugriff', 'Team-Einladungen', 'App-Verwaltung', 'Landing Pages'] - : ['Role-based access', 'Team invitations', 'App management', 'Landing pages'], + highlights: t('help.features.organizations.highlights').split(','), content: '', order: 3, - language: isDE ? 'de' : 'en', + language: currentLocale, }, { id: 'feature-unified-profile', - title: isDE ? 'Einheitliches Profil' : 'Unified Profile', - description: isDE - ? 'Verwalte dein Profil, Einstellungen und Sicherheit an einem Ort' - : 'Manage your profile, settings, and security in one place', + title: t('help.features.unified_profile.title'), + description: t('help.features.unified_profile.description'), icon: '👤', category: 'core', - highlights: isDE - ? ['Profilbild', 'Sicherheitseinstellungen', 'Sitzungsverwaltung', 'Datenexport'] - : ['Profile picture', 'Security settings', 'Session management', 'Data export'], + highlights: t('help.features.unified_profile.highlights').split(','), content: '', order: 4, - language: isDE ? 'de' : 'en', + language: currentLocale, }, ], shortcuts: [], @@ -129,15 +105,13 @@ export function getManaCoreHelpContent(locale: string): HelpContent { changelog: [], contact: { id: 'contact-support', - title: isDE ? 'Support kontaktieren' : 'Contact Support', - content: isDE - ? 'Unser Support-Team hilft dir bei allen Fragen rund um ManaCore.
' - : 'Our support team is here to help you with any questions about ManaCore.
', - language: isDE ? 'de' : 'en', + title: t('help.contact.title'), + content: t('help.contact.content'), + language: currentLocale, order: 1, supportEmail: 'support@mana.how', documentationUrl: 'https://mana.how/docs', - responseTime: isDE ? 'Normalerweise innerhalb von 24 Stunden' : 'Usually within 24 hours', + responseTime: t('help.contact.response_time'), }, }; } diff --git a/apps/manacore/apps/web/src/lib/i18n/index.ts b/apps/manacore/apps/web/src/lib/i18n/index.ts index 9f9e47674..0913ce76d 100644 --- a/apps/manacore/apps/web/src/lib/i18n/index.ts +++ b/apps/manacore/apps/web/src/lib/i18n/index.ts @@ -47,6 +47,7 @@ function registerLocale(lang: SupportedLocale) { questions, matrix, guides, + help, ] = await Promise.all([ import(`./locales/common/${lang}.json`), import(`./locales/nav/${lang}.json`), @@ -79,6 +80,7 @@ function registerLocale(lang: SupportedLocale) { import(`./locales/questions/${lang}.json`), import(`./locales/matrix/${lang}.json`), import(`./locales/guides/${lang}.json`), + import(`./locales/help/${lang}.json`), ]); return { @@ -113,6 +115,7 @@ function registerLocale(lang: SupportedLocale) { questions: questions.default, matrix: matrix.default, guides: guides.default, + help: help.default, }; }); } diff --git a/apps/manacore/apps/web/src/lib/i18n/locales/help/de.json b/apps/manacore/apps/web/src/lib/i18n/locales/help/de.json new file mode 100644 index 000000000..c2a2d8e54 --- /dev/null +++ b/apps/manacore/apps/web/src/lib/i18n/locales/help/de.json @@ -0,0 +1,51 @@ +{ + "faq": { + "what_is_manacore": { + "question": "Was ist ManaCore?", + "answer": "ManaCore ist die zentrale Plattform des Mana-Ökosystems:
Single Sign-On ermöglicht dir, dich einmal anzumelden und alle Mana-Apps zu nutzen:
SSO verwendet sichere JWT-Tokens mit EdDSA-Verschlüsselung. Dein Passwort wird nur einmal beim Login übertragen.
", + "tags": "sso,anmeldung,login,authentifizierung" + }, + "organizations": { + "question": "Wie verwalte ich Organisationen?", + "answer": "Organisationen ermöglichen Teamarbeit im Mana-Ökosystem:
slug.mana.howDu kannst schnell zwischen Mana-Apps wechseln:
Dein Login bleibt dank SSO beim Wechsel zwischen Apps erhalten.
", + "tags": "wechseln,apps,navigation" + } + }, + "features": { + "sso": { + "title": "Single Sign-On", + "description": "Einmal anmelden und alle Mana-Apps nutzen", + "highlights": "Ein Login für alles,EdDSA JWT-Tokens,Sichere Sitzungen,Automatischer Logout" + }, + "app_ecosystem": { + "title": "App-Ökosystem", + "description": "Zugang zu allen Mana-Apps über eine zentrale Plattform", + "highlights": "App-Übersicht,Schnellzugriff,Einheitliches Design,Verbundene Daten" + }, + "organizations": { + "title": "Organisationen & Teams", + "description": "Erstelle Organisationen und verwalte Teammitglieder und Rollen", + "highlights": "Rollenbasierter Zugriff,Team-Einladungen,App-Verwaltung,Landing Pages" + }, + "unified_profile": { + "title": "Einheitliches Profil", + "description": "Verwalte dein Profil, Einstellungen und Sicherheit an einem Ort", + "highlights": "Profilbild,Sicherheitseinstellungen,Sitzungsverwaltung,Datenexport" + } + }, + "contact": { + "title": "Support kontaktieren", + "content": "Unser Support-Team hilft dir bei allen Fragen rund um ManaCore.
", + "response_time": "Normalerweise innerhalb von 24 Stunden" + } +} diff --git a/apps/manacore/apps/web/src/lib/i18n/locales/help/en.json b/apps/manacore/apps/web/src/lib/i18n/locales/help/en.json new file mode 100644 index 000000000..fd523dedc --- /dev/null +++ b/apps/manacore/apps/web/src/lib/i18n/locales/help/en.json @@ -0,0 +1,51 @@ +{ + "faq": { + "what_is_manacore": { + "question": "What is ManaCore?", + "answer": "ManaCore is the central platform of the Mana ecosystem:
Single Sign-On lets you log in once and use all Mana apps:
SSO uses secure JWT tokens with EdDSA encryption. Your password is only transmitted once during login.
", + "tags": "sso,sign-in,login,authentication" + }, + "organizations": { + "question": "How do I manage organizations?", + "answer": "Organizations enable teamwork within the Mana ecosystem:
slug.mana.howYou can quickly switch between Mana apps:
Your login is preserved when switching between apps thanks to SSO.
", + "tags": "switch,apps,navigation" + } + }, + "features": { + "sso": { + "title": "Single Sign-On", + "description": "Sign in once and use all Mana apps", + "highlights": "One login for everything,EdDSA JWT tokens,Secure sessions,Automatic logout" + }, + "app_ecosystem": { + "title": "App Ecosystem", + "description": "Access all Mana apps from one central platform", + "highlights": "App overview,Quick access,Unified design,Connected data" + }, + "organizations": { + "title": "Organizations & Teams", + "description": "Create organizations and manage team members and roles", + "highlights": "Role-based access,Team invitations,App management,Landing pages" + }, + "unified_profile": { + "title": "Unified Profile", + "description": "Manage your profile, settings and security in one place", + "highlights": "Profile picture,Security settings,Session management,Data export" + } + }, + "contact": { + "title": "Contact Support", + "content": "Our support team is here to help with any questions about ManaCore.
", + "response_time": "Usually within 24 hours" + } +} diff --git a/apps/manacore/apps/web/src/lib/i18n/locales/help/es.json b/apps/manacore/apps/web/src/lib/i18n/locales/help/es.json new file mode 100644 index 000000000..de2e571a4 --- /dev/null +++ b/apps/manacore/apps/web/src/lib/i18n/locales/help/es.json @@ -0,0 +1,51 @@ +{ + "faq": { + "what_is_manacore": { + "question": "Que es ManaCore?", + "answer": "ManaCore es la plataforma central del ecosistema Mana:
Single Sign-On te permite iniciar sesion una vez y usar todas las apps de Mana:
SSO utiliza tokens JWT seguros con cifrado EdDSA. Tu contrasena solo se transmite una vez durante el inicio de sesion.
", + "tags": "sso,inicio de sesion,login,autenticacion" + }, + "organizations": { + "question": "Como gestiono las organizaciones?", + "answer": "Las organizaciones permiten el trabajo en equipo dentro del ecosistema Mana:
slug.mana.howPuedes cambiar rapidamente entre las apps de Mana:
Tu sesion se mantiene al cambiar entre apps gracias al SSO.
", + "tags": "cambiar,apps,navegacion" + } + }, + "features": { + "sso": { + "title": "Single Sign-On", + "description": "Inicia sesion una vez y usa todas las apps de Mana", + "highlights": "Un inicio de sesion para todo,Tokens JWT EdDSA,Sesiones seguras,Cierre de sesion automatico" + }, + "app_ecosystem": { + "title": "Ecosistema de Apps", + "description": "Accede a todas las apps de Mana desde una plataforma central", + "highlights": "Vista de apps,Acceso rapido,Diseno unificado,Datos conectados" + }, + "organizations": { + "title": "Organizaciones y Equipos", + "description": "Crea organizaciones y gestiona miembros del equipo y roles", + "highlights": "Acceso basado en roles,Invitaciones de equipo,Gestion de apps,Paginas de inicio" + }, + "unified_profile": { + "title": "Perfil Unificado", + "description": "Gestiona tu perfil, ajustes y seguridad en un solo lugar", + "highlights": "Foto de perfil,Ajustes de seguridad,Gestion de sesiones,Exportacion de datos" + } + }, + "contact": { + "title": "Contactar con soporte", + "content": "Nuestro equipo de soporte esta aqui para ayudarte con cualquier pregunta sobre ManaCore.
", + "response_time": "Normalmente en menos de 24 horas" + } +} diff --git a/apps/manacore/apps/web/src/lib/i18n/locales/help/fr.json b/apps/manacore/apps/web/src/lib/i18n/locales/help/fr.json new file mode 100644 index 000000000..b37cf2218 --- /dev/null +++ b/apps/manacore/apps/web/src/lib/i18n/locales/help/fr.json @@ -0,0 +1,51 @@ +{ + "faq": { + "what_is_manacore": { + "question": "Qu'est-ce que ManaCore ?", + "answer": "ManaCore est la plateforme centrale de l'ecosysteme Mana :
Le Single Sign-On vous permet de vous connecter une seule fois et d'utiliser toutes les apps Mana :
Le SSO utilise des tokens JWT securises avec chiffrement EdDSA. Votre mot de passe n'est transmis qu'une seule fois lors de la connexion.
", + "tags": "sso,connexion,login,authentification" + }, + "organizations": { + "question": "Comment gerer les organisations ?", + "answer": "Les organisations permettent le travail en equipe au sein de l'ecosysteme Mana :
slug.mana.howVous pouvez rapidement basculer entre les apps Mana :
Votre connexion est conservee lors du passage d'une app a l'autre grace au SSO.
", + "tags": "basculer,apps,navigation" + } + }, + "features": { + "sso": { + "title": "Single Sign-On", + "description": "Connectez-vous une seule fois et utilisez toutes les apps Mana", + "highlights": "Une connexion pour tout,Tokens JWT EdDSA,Sessions securisees,Deconnexion automatique" + }, + "app_ecosystem": { + "title": "Ecosysteme d'Apps", + "description": "Accedez a toutes les apps Mana depuis une plateforme centrale", + "highlights": "Vue d'ensemble des apps,Acces rapide,Design unifie,Donnees connectees" + }, + "organizations": { + "title": "Organisations et Equipes", + "description": "Creez des organisations et gerez les membres et les roles de votre equipe", + "highlights": "Acces base sur les roles,Invitations d'equipe,Gestion des apps,Pages d'accueil" + }, + "unified_profile": { + "title": "Profil Unifie", + "description": "Gerez votre profil, vos parametres et votre securite en un seul endroit", + "highlights": "Photo de profil,Parametres de securite,Gestion des sessions,Export de donnees" + } + }, + "contact": { + "title": "Contacter le support", + "content": "Notre equipe de support est la pour vous aider pour toute question concernant ManaCore.
", + "response_time": "Generalement sous 24 heures" + } +} diff --git a/apps/manacore/apps/web/src/lib/i18n/locales/help/it.json b/apps/manacore/apps/web/src/lib/i18n/locales/help/it.json new file mode 100644 index 000000000..7b2ec96ab --- /dev/null +++ b/apps/manacore/apps/web/src/lib/i18n/locales/help/it.json @@ -0,0 +1,51 @@ +{ + "faq": { + "what_is_manacore": { + "question": "Cos'e ManaCore?", + "answer": "ManaCore e la piattaforma centrale dell'ecosistema Mana:
Il Single Sign-On ti permette di accedere una sola volta e utilizzare tutte le app Mana:
Il SSO utilizza token JWT sicuri con crittografia EdDSA. La tua password viene trasmessa solo una volta durante l'accesso.
", + "tags": "sso,accesso,login,autenticazione" + }, + "organizations": { + "question": "Come gestisco le organizzazioni?", + "answer": "Le organizzazioni consentono il lavoro di squadra nell'ecosistema Mana:
slug.mana.howPuoi passare rapidamente tra le app Mana:
Il tuo accesso viene mantenuto quando passi da un'app all'altra grazie al SSO.
", + "tags": "passare,app,navigazione" + } + }, + "features": { + "sso": { + "title": "Single Sign-On", + "description": "Accedi una volta e usa tutte le app Mana", + "highlights": "Un accesso per tutto,Token JWT EdDSA,Sessioni sicure,Logout automatico" + }, + "app_ecosystem": { + "title": "Ecosistema di App", + "description": "Accedi a tutte le app Mana da un'unica piattaforma centrale", + "highlights": "Panoramica app,Accesso rapido,Design unificato,Dati collegati" + }, + "organizations": { + "title": "Organizzazioni e Team", + "description": "Crea organizzazioni e gestisci i membri del team e i ruoli", + "highlights": "Accesso basato sui ruoli,Inviti al team,Gestione delle app,Pagine di presentazione" + }, + "unified_profile": { + "title": "Profilo Unificato", + "description": "Gestisci il tuo profilo, le impostazioni e la sicurezza in un unico posto", + "highlights": "Foto profilo,Impostazioni di sicurezza,Gestione sessioni,Esportazione dati" + } + }, + "contact": { + "title": "Contatta il supporto", + "content": "Il nostro team di supporto e qui per aiutarti con qualsiasi domanda su ManaCore.
", + "response_time": "Di solito entro 24 ore" + } +}