/** * Rahmen der Anwendung: Name, Navigation, Anmeldung, Übersicht, Zustand. * * Nach Bereichen getrennt, weil eine **Client-Komponente die ganze Datei ins * Bündel zieht**, in der ihr Text steht. Lägen alle Texte in einer, trüge jede * Ansicht die der ganzen Anwendung mit sich herum — das Budget aus * docs/09-performance-und-ux.md wäre nach wenigen Phasen aufgebraucht. * * Serverkomponenten nehmen weiter `de` aus `lib/i18n/de.ts`: was dorthin * gezogen wird, verlässt den Server nicht. */ export const appText = { name: 'AfiS-Aktensystem', shortName: 'AfiS', description: 'Fallakten, Personalakten und Ermittlungen der Abteilung für innere Sicherheit', } as const export const navText = { dashboard: 'Übersicht', cases: 'Fallakten', personnel: 'Personalakten', search: 'Suche', admin: 'Verwaltung', skipToContent: 'Zum Inhalt springen', } as const export const authText = { signIn: 'Mit Discord anmelden', signOut: 'Abmelden', signedInAs: 'Angemeldet als', intro: 'Die Anmeldung läuft über Discord. Zugriff haben Mitglieder der Abteilung für innere Sicherheit.', reasons: { 'keine-mitgliedschaft': { title: 'Du bist nicht auf dem AfiS-Discord', body: 'Die Anmeldung setzt eine Mitgliedschaft auf dem Discord-Server voraus. Wende dich an die Abteilungsleitung.', }, 'keine-afis-rolle': { title: 'Keine Berechtigung für das Aktensystem', body: 'Du bist auf dem Server, trägst aber keine Rolle der Abteilung. Wende dich an die Abteilungsleitung.', }, 'discord-nicht-erreichbar': { title: 'Discord antwortet nicht', body: 'Die Mitgliedschaft war nicht prüfbar. In einigen Minuten erneut versuchen.', }, } as Record, sessionEnded: { title: 'Sitzung beendet', body: 'Deine Rollen haben sich geändert. Melde dich neu an.', }, error: { title: 'Anmeldung nicht möglich', body: 'Der Anmeldevorgang wurde abgebrochen. Erneut versuchen.', }, backToSignIn: 'Zurück zur Anmeldung', } as const export const overviewText = { heading: 'Dein Zugang', intro: 'Was das System über dich weiss und was daraus folgt.', person: 'Person', discordId: 'Discord-Kennung', roles: 'Rollen auf dem Discord', clearance: 'Errechnete Freigabestufe', permissions: 'Rechte', noPermissions: 'Keine Rechte. Die Abteilungsleitung vergibt sie in der Rollenverwaltung.', noRoles: 'Keine Rollen.', bootstrapAdmin: 'Notfallzugang aus der Konfiguration, unabhängig vom Rollen-Mapping', unmapped: 'nicht zugeordnet', } as const export const healthText = { heading: 'Systemzustand', service: 'Dienst', state: 'Zustand', checkedAt: (when: string) => `Zustand der Dienste, abgefragt ${when}`, ok: 'Betriebsbereit', degraded: 'Eingeschränkt', down: 'Gestört', components: { database: 'Datenbank', discordGateway: 'Discord-Gateway', clamav: 'Virenprüfung', } as Record, } as const