Fix jwt-token

This commit is contained in:
2025-09-19 12:58:48 +02:00
parent 0fa4771a0a
commit 13593d32b4
9 changed files with 836 additions and 2 deletions

View File

@@ -19,7 +19,10 @@
"@heroicons/react": "^2.0.18",
"clsx": "^2.0.0",
"date-fns": "^2.30.0",
"react-hot-toast": "^2.4.1"
"react-hot-toast": "^2.4.1",
"react-i18next": "^13.5.0",
"i18next": "^23.7.8",
"i18next-browser-languagedetector": "^7.2.0"
},
"devDependencies": {
"@types/react": "^18.2.15",

View File

@@ -0,0 +1,34 @@
import i18n from 'i18next';
import { initReactI18next } from 'react-i18next';
import LanguageDetector from 'i18next-browser-languagedetector';
// Import translation files
import en from './locales/en.json';
import sv from './locales/sv.json';
const resources = {
en: {
translation: en
},
sv: {
translation: sv
}
};
i18n
.use(LanguageDetector)
.use(initReactI18next)
.init({
resources,
lng: 'en', // default language
fallbackLng: 'en',
interpolation: {
escapeValue: false // React already does escaping
},
detection: {
order: ['localStorage', 'navigator', 'htmlTag'],
caches: ['localStorage']
}
});
export default i18n;

View File

@@ -0,0 +1,202 @@
{
"app": {
"title": "UAM-ILS Management Portal",
"subtitle": "Multi-Tenant Drone Detection System Administration"
},
"navigation": {
"dashboard": "Dashboard",
"tenants": "Tenants",
"users": "Users",
"system": "System",
"monitoring": "Monitoring",
"settings": "Settings",
"logout": "Logout"
},
"auth": {
"login": "Login",
"username": "Username",
"password": "Password",
"loginButton": "Sign In",
"loginError": "Invalid management credentials. Please try again.",
"sessionExpired": "Your management session has expired. Please log in again.",
"accessDenied": "Insufficient management privileges.",
"loggingIn": "Signing in...",
"logout": "Logout",
"logoutConfirm": "Are you sure you want to log out?"
},
"dashboard": {
"title": "System Overview",
"totalTenants": "Total Tenants",
"activeTenants": "Active Tenants",
"totalUsers": "Total Users",
"systemHealth": "System Health",
"recentActivity": "Recent Activity",
"systemMetrics": "System Metrics",
"memoryUsage": "Memory Usage",
"cpuUsage": "CPU Usage",
"diskUsage": "Disk Usage",
"networkTraffic": "Network Traffic"
},
"tenants": {
"title": "Tenant Management",
"noTenants": "No tenants configured",
"loadingTenants": "Loading tenants...",
"addTenant": "Add Tenant",
"editTenant": "Edit Tenant",
"deleteTenant": "Delete Tenant",
"tenantName": "Tenant Name",
"tenantSlug": "Tenant Slug",
"domain": "Domain",
"status": "Status",
"created": "Created",
"lastActivity": "Last Activity",
"actions": "Actions",
"active": "Active",
"inactive": "Inactive",
"suspended": "Suspended",
"edit": "Edit",
"delete": "Delete",
"activate": "Activate",
"deactivate": "Deactivate",
"suspend": "Suspend",
"viewDetails": "View Details",
"confirmDelete": "Are you sure you want to delete this tenant? This action cannot be undone."
},
"users": {
"title": "User Management",
"noUsers": "No users found",
"loadingUsers": "Loading users...",
"addUser": "Add User",
"editUser": "Edit User",
"deleteUser": "Delete User",
"username": "Username",
"email": "Email",
"role": "Role",
"tenant": "Tenant",
"status": "Status",
"lastLogin": "Last Login",
"created": "Created",
"actions": "Actions",
"active": "Active",
"inactive": "Inactive",
"admin": "Admin",
"user": "User",
"operator": "Operator",
"viewer": "Viewer"
},
"system": {
"title": "System Information",
"serverInfo": "Server Information",
"databaseInfo": "Database Information",
"containerInfo": "Container Information",
"version": "Version",
"uptime": "Uptime",
"platform": "Platform",
"nodeVersion": "Node.js Version",
"connections": "Database Connections",
"tables": "Tables",
"diskSpace": "Disk Space",
"memoryUsage": "Memory Usage",
"loadAverage": "Load Average",
"containers": "Containers",
"images": "Images",
"volumes": "Volumes",
"networks": "Networks"
},
"monitoring": {
"title": "System Monitoring",
"realTimeMetrics": "Real-time Metrics",
"alerts": "System Alerts",
"logs": "System Logs",
"performance": "Performance",
"security": "Security Events",
"noAlerts": "No active alerts",
"noLogs": "No recent logs",
"refresh": "Refresh",
"autoRefresh": "Auto Refresh",
"exportLogs": "Export Logs",
"clearLogs": "Clear Logs"
},
"settings": {
"title": "Management Settings",
"general": "General",
"security": "Security",
"notifications": "Notifications",
"language": "Language",
"timezone": "Timezone",
"theme": "Theme",
"sessionTimeout": "Session Timeout",
"passwordPolicy": "Password Policy",
"twoFactorAuth": "Two-Factor Authentication",
"auditLogging": "Audit Logging",
"save": "Save Changes",
"cancel": "Cancel",
"saved": "Settings saved successfully",
"error": "Failed to save settings"
},
"forms": {
"name": "Name",
"slug": "Slug",
"domain": "Domain",
"description": "Description",
"email": "Email",
"password": "Password",
"confirmPassword": "Confirm Password",
"role": "Role",
"status": "Status",
"required": "Required",
"optional": "Optional",
"create": "Create",
"update": "Update",
"cancel": "Cancel",
"save": "Save",
"reset": "Reset"
},
"common": {
"loading": "Loading...",
"error": "An error occurred",
"retry": "Retry",
"cancel": "Cancel",
"save": "Save",
"delete": "Delete",
"edit": "Edit",
"add": "Add",
"remove": "Remove",
"confirm": "Confirm",
"yes": "Yes",
"no": "No",
"ok": "OK",
"close": "Close",
"search": "Search",
"filter": "Filter",
"clear": "Clear",
"refresh": "Refresh",
"export": "Export",
"import": "Import",
"view": "View",
"manage": "Manage"
},
"errors": {
"networkError": "Network connection error. Please check your internet connection.",
"serverError": "Server error. Please try again later.",
"notFound": "The requested resource was not found.",
"unauthorized": "You are not authorized to access this resource.",
"forbidden": "Access to this resource is forbidden.",
"validationError": "Please check your input and try again.",
"sessionExpired": "Your session has expired. Please log in again.",
"unknownError": "An unknown error occurred. Please try again.",
"tenantExists": "A tenant with this name or slug already exists.",
"userExists": "A user with this username or email already exists.",
"invalidCredentials": "Invalid credentials provided.",
"insufficientPrivileges": "Insufficient privileges to perform this action."
},
"success": {
"tenantCreated": "Tenant created successfully",
"tenantUpdated": "Tenant updated successfully",
"tenantDeleted": "Tenant deleted successfully",
"userCreated": "User created successfully",
"userUpdated": "User updated successfully",
"userDeleted": "User deleted successfully",
"settingsSaved": "Settings saved successfully"
}
}

View File

@@ -0,0 +1,202 @@
{
"app": {
"title": "UAM-ILS Förvaltningsportal",
"subtitle": "Administration av multi-tenant drönardetektionssystem"
},
"navigation": {
"dashboard": "Översikt",
"tenants": "Hyresgäster",
"users": "Användare",
"system": "System",
"monitoring": "Övervakning",
"settings": "Inställningar",
"logout": "Logga ut"
},
"auth": {
"login": "Logga in",
"username": "Användarnamn",
"password": "Lösenord",
"loginButton": "Logga in",
"loginError": "Ogiltiga förvaltningsuppgifter. Försök igen.",
"sessionExpired": "Din förvaltningssession har löpt ut. Vänligen logga in igen.",
"accessDenied": "Otillräckliga förvaltningsprivilegier.",
"loggingIn": "Loggar in...",
"logout": "Logga ut",
"logoutConfirm": "Är du säker på att du vill logga ut?"
},
"dashboard": {
"title": "Systemöversikt",
"totalTenants": "Totala hyresgäster",
"activeTenants": "Aktiva hyresgäster",
"totalUsers": "Totala användare",
"systemHealth": "Systemhälsa",
"recentActivity": "Senaste aktivitet",
"systemMetrics": "Systemmätningar",
"memoryUsage": "Minnesanvändning",
"cpuUsage": "CPU-användning",
"diskUsage": "Diskanvändning",
"networkTraffic": "Nätverkstrafik"
},
"tenants": {
"title": "Hyresgästhantering",
"noTenants": "Inga hyresgäster konfigurerade",
"loadingTenants": "Laddar hyresgäster...",
"addTenant": "Lägg till hyresgäst",
"editTenant": "Redigera hyresgäst",
"deleteTenant": "Ta bort hyresgäst",
"tenantName": "Hyresgästnamn",
"tenantSlug": "Hyresgästslug",
"domain": "Domän",
"status": "Status",
"created": "Skapad",
"lastActivity": "Senaste aktivitet",
"actions": "Åtgärder",
"active": "Aktiv",
"inactive": "Inaktiv",
"suspended": "Avstängd",
"edit": "Redigera",
"delete": "Ta bort",
"activate": "Aktivera",
"deactivate": "Inaktivera",
"suspend": "Stäng av",
"viewDetails": "Visa detaljer",
"confirmDelete": "Är du säker på att du vill ta bort denna hyresgäst? Denna åtgärd kan inte ångras."
},
"users": {
"title": "Användarhantering",
"noUsers": "Inga användare hittades",
"loadingUsers": "Laddar användare...",
"addUser": "Lägg till användare",
"editUser": "Redigera användare",
"deleteUser": "Ta bort användare",
"username": "Användarnamn",
"email": "E-post",
"role": "Roll",
"tenant": "Hyresgäst",
"status": "Status",
"lastLogin": "Senaste inloggning",
"created": "Skapad",
"actions": "Åtgärder",
"active": "Aktiv",
"inactive": "Inaktiv",
"admin": "Admin",
"user": "Användare",
"operator": "Operatör",
"viewer": "Betraktare"
},
"system": {
"title": "Systeminformation",
"serverInfo": "Serverinformation",
"databaseInfo": "Databasinformation",
"containerInfo": "Behållarinformation",
"version": "Version",
"uptime": "Drifttid",
"platform": "Plattform",
"nodeVersion": "Node.js Version",
"connections": "Databasanslutningar",
"tables": "Tabeller",
"diskSpace": "Diskutrymme",
"memoryUsage": "Minnesanvändning",
"loadAverage": "Belastningsgenomsnitt",
"containers": "Behållare",
"images": "Bilder",
"volumes": "Volymer",
"networks": "Nätverk"
},
"monitoring": {
"title": "Systemövervakning",
"realTimeMetrics": "Realtidsmätningar",
"alerts": "Systemlarm",
"logs": "Systemloggar",
"performance": "Prestanda",
"security": "Säkerhetshändelser",
"noAlerts": "Inga aktiva larm",
"noLogs": "Inga senaste loggar",
"refresh": "Uppdatera",
"autoRefresh": "Automatisk uppdatering",
"exportLogs": "Exportera loggar",
"clearLogs": "Rensa loggar"
},
"settings": {
"title": "Förvaltningsinställningar",
"general": "Allmänt",
"security": "Säkerhet",
"notifications": "Notifieringar",
"language": "Språk",
"timezone": "Tidszon",
"theme": "Tema",
"sessionTimeout": "Sessionstimeout",
"passwordPolicy": "Lösenordspolicy",
"twoFactorAuth": "Tvåfaktorsautentisering",
"auditLogging": "Revisionsloggning",
"save": "Spara ändringar",
"cancel": "Avbryt",
"saved": "Inställningar sparade framgångsrikt",
"error": "Misslyckades att spara inställningar"
},
"forms": {
"name": "Namn",
"slug": "Slug",
"domain": "Domän",
"description": "Beskrivning",
"email": "E-post",
"password": "Lösenord",
"confirmPassword": "Bekräfta lösenord",
"role": "Roll",
"status": "Status",
"required": "Obligatorisk",
"optional": "Valfri",
"create": "Skapa",
"update": "Uppdatera",
"cancel": "Avbryt",
"save": "Spara",
"reset": "Återställ"
},
"common": {
"loading": "Laddar...",
"error": "Ett fel uppstod",
"retry": "Försök igen",
"cancel": "Avbryt",
"save": "Spara",
"delete": "Ta bort",
"edit": "Redigera",
"add": "Lägg till",
"remove": "Ta bort",
"confirm": "Bekräfta",
"yes": "Ja",
"no": "Nej",
"ok": "OK",
"close": "Stäng",
"search": "Sök",
"filter": "Filtrera",
"clear": "Rensa",
"refresh": "Uppdatera",
"export": "Exportera",
"import": "Importera",
"view": "Visa",
"manage": "Hantera"
},
"errors": {
"networkError": "Nätverksanslutningsfel. Vänligen kontrollera din internetanslutning.",
"serverError": "Serverfel. Vänligen försök igen senare.",
"notFound": "Den begärda resursen hittades inte.",
"unauthorized": "Du är inte behörig att komma åt denna resurs.",
"forbidden": "Åtkomst till denna resurs är förbjuden.",
"validationError": "Vänligen kontrollera din inmatning och försök igen.",
"sessionExpired": "Din session har löpt ut. Vänligen logga in igen.",
"unknownError": "Ett okänt fel uppstod. Vänligen försök igen.",
"tenantExists": "En hyresgäst med detta namn eller slug finns redan.",
"userExists": "En användare med detta användarnamn eller e-post finns redan.",
"invalidCredentials": "Ogiltiga inloggningsuppgifter angivna.",
"insufficientPrivileges": "Otillräckliga privilegier för att utföra denna åtgärd."
},
"success": {
"tenantCreated": "Hyresgäst skapad framgångsrikt",
"tenantUpdated": "Hyresgäst uppdaterad framgångsrikt",
"tenantDeleted": "Hyresgäst borttagen framgångsrikt",
"userCreated": "Användare skapad framgångsrikt",
"userUpdated": "Användare uppdaterad framgångsrikt",
"userDeleted": "Användare borttagen framgångsrikt",
"settingsSaved": "Inställningar sparade framgångsrikt"
}
}