|
|
@@ -0,0 +1,358 @@
|
|
|
+export default {
|
|
|
+ // Navigation
|
|
|
+ nav: {
|
|
|
+ printers: 'Drucker',
|
|
|
+ archives: 'Archiv',
|
|
|
+ queue: 'Warteschlange',
|
|
|
+ stats: 'Statistiken',
|
|
|
+ profiles: 'Profile',
|
|
|
+ maintenance: 'Wartung',
|
|
|
+ settings: 'Einstellungen',
|
|
|
+ collapseSidebar: 'Seitenleiste einklappen',
|
|
|
+ expandSidebar: 'Seitenleiste ausklappen',
|
|
|
+ update: 'Update',
|
|
|
+ updateAvailable: 'Update verfügbar: v{{version}}',
|
|
|
+ viewOnGithub: 'Auf GitHub ansehen',
|
|
|
+ keyboardShortcuts: 'Tastaturkürzel (?)',
|
|
|
+ switchToLight: 'Zum hellen Modus wechseln',
|
|
|
+ switchToDark: 'Zum dunklen Modus wechseln',
|
|
|
+ },
|
|
|
+
|
|
|
+ // Common
|
|
|
+ common: {
|
|
|
+ save: 'Speichern',
|
|
|
+ cancel: 'Abbrechen',
|
|
|
+ delete: 'Löschen',
|
|
|
+ edit: 'Bearbeiten',
|
|
|
+ add: 'Hinzufügen',
|
|
|
+ close: 'Schließen',
|
|
|
+ confirm: 'Bestätigen',
|
|
|
+ loading: 'Lädt...',
|
|
|
+ error: 'Fehler',
|
|
|
+ success: 'Erfolg',
|
|
|
+ warning: 'Warnung',
|
|
|
+ enabled: 'Aktiviert',
|
|
|
+ disabled: 'Deaktiviert',
|
|
|
+ yes: 'Ja',
|
|
|
+ no: 'Nein',
|
|
|
+ on: 'An',
|
|
|
+ off: 'Aus',
|
|
|
+ all: 'Alle',
|
|
|
+ none: 'Keine',
|
|
|
+ search: 'Suchen',
|
|
|
+ filter: 'Filtern',
|
|
|
+ sort: 'Sortieren',
|
|
|
+ refresh: 'Aktualisieren',
|
|
|
+ download: 'Herunterladen',
|
|
|
+ upload: 'Hochladen',
|
|
|
+ actions: 'Aktionen',
|
|
|
+ status: 'Status',
|
|
|
+ name: 'Name',
|
|
|
+ description: 'Beschreibung',
|
|
|
+ date: 'Datum',
|
|
|
+ time: 'Zeit',
|
|
|
+ hours: 'Stunden',
|
|
|
+ minutes: 'Minuten',
|
|
|
+ seconds: 'Sekunden',
|
|
|
+ noPrinters: 'Keine Drucker konfiguriert',
|
|
|
+ noData: 'Keine Daten verfügbar',
|
|
|
+ required: 'Erforderlich',
|
|
|
+ optional: 'Optional',
|
|
|
+ },
|
|
|
+
|
|
|
+ // Printers page
|
|
|
+ printers: {
|
|
|
+ title: 'Drucker',
|
|
|
+ addPrinter: 'Drucker hinzufügen',
|
|
|
+ editPrinter: 'Drucker bearbeiten',
|
|
|
+ deletePrinter: 'Drucker löschen',
|
|
|
+ printerName: 'Druckername',
|
|
|
+ serialNumber: 'Seriennummer',
|
|
|
+ ipAddress: 'IP-Adresse',
|
|
|
+ accessCode: 'Zugangscode',
|
|
|
+ model: 'Modell',
|
|
|
+ nozzleCount: 'Düsenanzahl',
|
|
|
+ autoArchive: 'Automatische Archivierung',
|
|
|
+ status: {
|
|
|
+ idle: 'Bereit',
|
|
|
+ printing: 'Druckt',
|
|
|
+ paused: 'Pausiert',
|
|
|
+ offline: 'Offline',
|
|
|
+ error: 'Fehler',
|
|
|
+ finished: 'Fertig',
|
|
|
+ unknown: 'Unbekannt',
|
|
|
+ },
|
|
|
+ temperatures: {
|
|
|
+ nozzle: 'Düse',
|
|
|
+ bed: 'Druckbett',
|
|
|
+ chamber: 'Kammer',
|
|
|
+ },
|
|
|
+ progress: '{{percent}}% abgeschlossen',
|
|
|
+ timeRemaining: 'Noch {{time}}',
|
|
|
+ deleteConfirm: 'Möchten Sie "{{name}}" wirklich löschen?',
|
|
|
+ maintenanceOk: 'Wartung OK',
|
|
|
+ maintenanceWarning: '{{count}} Warnung',
|
|
|
+ maintenanceWarning_plural: '{{count}} Warnungen',
|
|
|
+ maintenanceDue: '{{count}} fällig',
|
|
|
+ maintenanceDue_plural: '{{count}} fällig',
|
|
|
+ },
|
|
|
+
|
|
|
+ // Archives page
|
|
|
+ archives: {
|
|
|
+ title: 'Druckarchiv',
|
|
|
+ searchPlaceholder: 'Archiv durchsuchen...',
|
|
|
+ filterByPrinter: 'Nach Drucker filtern',
|
|
|
+ filterByStatus: 'Nach Status filtern',
|
|
|
+ sortBy: 'Sortieren nach',
|
|
|
+ sortNewest: 'Neueste zuerst',
|
|
|
+ sortOldest: 'Älteste zuerst',
|
|
|
+ sortName: 'Name',
|
|
|
+ sortDuration: 'Dauer',
|
|
|
+ noArchives: 'Keine Archive gefunden',
|
|
|
+ printTime: 'Druckzeit',
|
|
|
+ filamentUsed: 'Verbrauchtes Filament',
|
|
|
+ cost: 'Kosten',
|
|
|
+ reprint: 'Erneut drucken',
|
|
|
+ preview: 'Vorschau',
|
|
|
+ deleteArchive: 'Archiv löschen',
|
|
|
+ deleteConfirm: 'Möchten Sie dieses Archiv wirklich löschen?',
|
|
|
+ favorite: 'Favorit',
|
|
|
+ unfavorite: 'Aus Favoriten entfernen',
|
|
|
+ viewDetails: 'Details anzeigen',
|
|
|
+ status: {
|
|
|
+ completed: 'Abgeschlossen',
|
|
|
+ failed: 'Fehlgeschlagen',
|
|
|
+ stopped: 'Gestoppt',
|
|
|
+ },
|
|
|
+ },
|
|
|
+
|
|
|
+ // Queue page
|
|
|
+ queue: {
|
|
|
+ title: 'Druckwarteschlange',
|
|
|
+ addToQueue: 'Zur Warteschlange hinzufügen',
|
|
|
+ clearQueue: 'Warteschlange leeren',
|
|
|
+ emptyQueue: 'Warteschlange ist leer',
|
|
|
+ position: 'Position',
|
|
|
+ scheduledTime: 'Geplante Zeit',
|
|
|
+ moveUp: 'Nach oben',
|
|
|
+ moveDown: 'Nach unten',
|
|
|
+ remove: 'Entfernen',
|
|
|
+ startNow: 'Jetzt starten',
|
|
|
+ status: {
|
|
|
+ pending: 'Ausstehend',
|
|
|
+ printing: 'Druckt',
|
|
|
+ completed: 'Abgeschlossen',
|
|
|
+ failed: 'Fehlgeschlagen',
|
|
|
+ cancelled: 'Abgebrochen',
|
|
|
+ },
|
|
|
+ },
|
|
|
+
|
|
|
+ // Statistics page
|
|
|
+ stats: {
|
|
|
+ title: 'Statistiken',
|
|
|
+ overview: 'Übersicht',
|
|
|
+ totalPrints: 'Gesamtdrucke',
|
|
|
+ successRate: 'Erfolgsrate',
|
|
|
+ totalPrintTime: 'Gesamtdruckzeit',
|
|
|
+ totalFilament: 'Gesamtverbrauch Filament',
|
|
|
+ totalCost: 'Gesamtkosten',
|
|
|
+ averagePrintTime: 'Durchschnittliche Druckzeit',
|
|
|
+ printsPerDay: 'Drucke pro Tag',
|
|
|
+ byPrinter: 'Nach Drucker',
|
|
|
+ byMaterial: 'Nach Material',
|
|
|
+ byMonth: 'Nach Monat',
|
|
|
+ last7Days: 'Letzte 7 Tage',
|
|
|
+ last30Days: 'Letzte 30 Tage',
|
|
|
+ last90Days: 'Letzte 90 Tage',
|
|
|
+ allTime: 'Gesamt',
|
|
|
+ },
|
|
|
+
|
|
|
+ // Profiles page
|
|
|
+ profiles: {
|
|
|
+ title: 'Filament-Profile',
|
|
|
+ addProfile: 'Profil hinzufügen',
|
|
|
+ editProfile: 'Profil bearbeiten',
|
|
|
+ deleteProfile: 'Profil löschen',
|
|
|
+ material: 'Material',
|
|
|
+ brand: 'Marke',
|
|
|
+ color: 'Farbe',
|
|
|
+ diameter: 'Durchmesser',
|
|
|
+ density: 'Dichte',
|
|
|
+ costPerKg: 'Kosten pro kg',
|
|
|
+ spoolWeight: 'Spulengewicht',
|
|
|
+ noProfiles: 'Keine Profile konfiguriert',
|
|
|
+ deleteConfirm: 'Möchten Sie dieses Profil wirklich löschen?',
|
|
|
+ },
|
|
|
+
|
|
|
+ // Maintenance page
|
|
|
+ maintenance: {
|
|
|
+ title: 'Wartung',
|
|
|
+ overview: 'Übersicht',
|
|
|
+ allOk: 'Alle Wartungen aktuell',
|
|
|
+ dueCount: '{{count}} Aufgabe fällig',
|
|
|
+ dueCount_plural: '{{count}} Aufgaben fällig',
|
|
|
+ warningCount: '{{count}} Warnung',
|
|
|
+ warningCount_plural: '{{count}} Warnungen',
|
|
|
+ totalPrintTime: 'Gesamtdruckzeit',
|
|
|
+ nextMaintenance: 'Nächste Wartung',
|
|
|
+ nothingDue: 'Nichts fällig',
|
|
|
+ tasks: 'Aufgaben',
|
|
|
+ lastPerformed: 'Zuletzt durchgeführt',
|
|
|
+ interval: 'Intervall',
|
|
|
+ hoursRemaining: '{{hours}}h verbleibend',
|
|
|
+ hoursOverdue: '{{hours}}h überfällig',
|
|
|
+ markDone: 'Als erledigt markieren',
|
|
|
+ performMaintenance: 'Wartung durchführen',
|
|
|
+ history: 'Verlauf',
|
|
|
+ noHistory: 'Kein Wartungsverlauf',
|
|
|
+ editPrintHours: 'Druckstunden bearbeiten',
|
|
|
+ currentHours: 'Aktuelle Stunden',
|
|
|
+ types: {
|
|
|
+ lubricateRails: 'Linearschienen schmieren',
|
|
|
+ cleanNozzle: 'Düse/Hotend reinigen',
|
|
|
+ checkBelts: 'Riemenspannung prüfen',
|
|
|
+ cleanBuildPlate: 'Druckbett reinigen',
|
|
|
+ checkExtruder: 'Extruderzahnräder prüfen',
|
|
|
+ checkCooling: 'Kühlungslüfter prüfen',
|
|
|
+ generalInspection: 'Allgemeine Inspektion',
|
|
|
+ },
|
|
|
+ },
|
|
|
+
|
|
|
+ // Settings page
|
|
|
+ settings: {
|
|
|
+ title: 'Einstellungen',
|
|
|
+ general: 'Allgemein',
|
|
|
+ appearance: 'Erscheinungsbild',
|
|
|
+ notifications: 'Benachrichtigungen',
|
|
|
+ smartPlugs: 'Smart Plugs',
|
|
|
+ spoolman: 'Spoolman',
|
|
|
+ updates: 'Updates',
|
|
|
+ language: 'Sprache',
|
|
|
+ languageDescription: 'Wählen Sie Ihre bevorzugte Sprache',
|
|
|
+ theme: 'Design',
|
|
|
+ themeLight: 'Hell',
|
|
|
+ themeDark: 'Dunkel',
|
|
|
+ themeSystem: 'System',
|
|
|
+ defaultView: 'Standardansicht',
|
|
|
+ defaultViewDescription: 'Seite, die beim Öffnen der App angezeigt wird',
|
|
|
+ checkForUpdates: 'Nach Updates suchen',
|
|
|
+ autoUpdate: 'Automatische Updates',
|
|
|
+ currentVersion: 'Aktuelle Version',
|
|
|
+ latestVersion: 'Neueste Version',
|
|
|
+ upToDate: 'Sie sind auf dem neuesten Stand',
|
|
|
+ updateAvailable: 'Update verfügbar',
|
|
|
+ // Notifications
|
|
|
+ notificationLanguage: 'Benachrichtigungssprache',
|
|
|
+ notificationLanguageDescription: 'Sprache für Push-Benachrichtigungen',
|
|
|
+ notificationProviders: 'Benachrichtigungsanbieter',
|
|
|
+ addProvider: 'Anbieter hinzufügen',
|
|
|
+ editProvider: 'Anbieter bearbeiten',
|
|
|
+ providerType: 'Anbietertyp',
|
|
|
+ testNotification: 'Testbenachrichtigung',
|
|
|
+ testSuccess: 'Testbenachrichtigung erfolgreich gesendet',
|
|
|
+ testFailed: 'Testbenachrichtigung konnte nicht gesendet werden',
|
|
|
+ quietHours: 'Ruhezeiten',
|
|
|
+ quietHoursDescription: 'Keine Störungen während dieser Zeiten',
|
|
|
+ quietHoursStart: 'Beginn',
|
|
|
+ quietHoursEnd: 'Ende',
|
|
|
+ events: {
|
|
|
+ title: 'Benachrichtigungsereignisse',
|
|
|
+ printStart: 'Druck gestartet',
|
|
|
+ printComplete: 'Druck abgeschlossen',
|
|
|
+ printFailed: 'Druck fehlgeschlagen',
|
|
|
+ printStopped: 'Druck gestoppt',
|
|
|
+ printProgress: 'Fortschrittsmeldungen',
|
|
|
+ printProgressDescription: 'Bei 25%, 50%, 75% benachrichtigen',
|
|
|
+ printerOffline: 'Drucker offline',
|
|
|
+ printerError: 'Druckerfehler',
|
|
|
+ filamentLow: 'Filament niedrig',
|
|
|
+ maintenanceDue: 'Wartung fällig',
|
|
|
+ maintenanceDueDescription: 'Benachrichtigen, wenn Wartung erforderlich',
|
|
|
+ },
|
|
|
+ // Smart Plugs
|
|
|
+ smartPlug: {
|
|
|
+ title: 'Smart Plugs',
|
|
|
+ add: 'Smart Plug hinzufügen',
|
|
|
+ edit: 'Smart Plug bearbeiten',
|
|
|
+ name: 'Name',
|
|
|
+ ipAddress: 'IP-Adresse',
|
|
|
+ linkedPrinter: 'Verknüpfter Drucker',
|
|
|
+ autoOn: 'Automatisch einschalten',
|
|
|
+ autoOnDescription: 'Einschalten beim Druckstart',
|
|
|
+ autoOff: 'Automatisch ausschalten',
|
|
|
+ autoOffDescription: 'Ausschalten nach Druckende',
|
|
|
+ offDelay: 'Ausschaltverzögerung',
|
|
|
+ offDelayMinutes: 'Minuten nach Druck',
|
|
|
+ offDelayTemp: 'Wenn Düse unter Temperatur',
|
|
|
+ currentState: 'Aktueller Status',
|
|
|
+ turnOn: 'Einschalten',
|
|
|
+ turnOff: 'Ausschalten',
|
|
|
+ },
|
|
|
+ // Spoolman
|
|
|
+ spoolmanEnabled: 'Spoolman-Integration aktivieren',
|
|
|
+ spoolmanUrl: 'Spoolman URL',
|
|
|
+ spoolmanConnected: 'Verbunden',
|
|
|
+ spoolmanDisconnected: 'Nicht verbunden',
|
|
|
+ },
|
|
|
+
|
|
|
+ // Notifications (for push notifications)
|
|
|
+ notification: {
|
|
|
+ printStarted: {
|
|
|
+ title: 'Druck gestartet',
|
|
|
+ body: '{{printer}}: {{filename}} wird gedruckt',
|
|
|
+ },
|
|
|
+ printCompleted: {
|
|
|
+ title: 'Druck abgeschlossen',
|
|
|
+ body: '{{printer}}: {{filename}} erfolgreich abgeschlossen',
|
|
|
+ },
|
|
|
+ printFailed: {
|
|
|
+ title: 'Druck fehlgeschlagen',
|
|
|
+ body: '{{printer}}: {{filename}} ist fehlgeschlagen',
|
|
|
+ },
|
|
|
+ printStopped: {
|
|
|
+ title: 'Druck gestoppt',
|
|
|
+ body: '{{printer}}: {{filename}} wurde gestoppt',
|
|
|
+ },
|
|
|
+ printProgress: {
|
|
|
+ title: 'Druckfortschritt',
|
|
|
+ body: '{{printer}}: {{filename}} ist zu {{percent}}% abgeschlossen',
|
|
|
+ },
|
|
|
+ printerOffline: {
|
|
|
+ title: 'Drucker offline',
|
|
|
+ body: '{{printer}} ist offline',
|
|
|
+ },
|
|
|
+ printerError: {
|
|
|
+ title: 'Druckerfehler',
|
|
|
+ body: '{{printer}}: {{error}}',
|
|
|
+ },
|
|
|
+ filamentLow: {
|
|
|
+ title: 'Filament niedrig',
|
|
|
+ body: '{{printer}}: Filament geht zur Neige',
|
|
|
+ },
|
|
|
+ maintenanceDue: {
|
|
|
+ title: 'Wartung fällig',
|
|
|
+ body: '{{printer}}: {{items}} benötigen Aufmerksamkeit',
|
|
|
+ },
|
|
|
+ },
|
|
|
+
|
|
|
+ // Errors
|
|
|
+ errors: {
|
|
|
+ generic: 'Etwas ist schiefgelaufen',
|
|
|
+ networkError: 'Netzwerkfehler. Bitte überprüfen Sie Ihre Verbindung.',
|
|
|
+ notFound: 'Nicht gefunden',
|
|
|
+ unauthorized: 'Nicht autorisiert',
|
|
|
+ serverError: 'Serverfehler',
|
|
|
+ validationError: 'Bitte überprüfen Sie Ihre Eingabe',
|
|
|
+ printerConnectionFailed: 'Verbindung zum Drucker fehlgeschlagen',
|
|
|
+ saveFailed: 'Speichern fehlgeschlagen',
|
|
|
+ deleteFailed: 'Löschen fehlgeschlagen',
|
|
|
+ loadFailed: 'Laden der Daten fehlgeschlagen',
|
|
|
+ },
|
|
|
+
|
|
|
+ // Confirmations
|
|
|
+ confirm: {
|
|
|
+ delete: 'Möchten Sie dies wirklich löschen?',
|
|
|
+ unsavedChanges: 'Sie haben ungespeicherte Änderungen. Möchten Sie wirklich verlassen?',
|
|
|
+ clearQueue: 'Möchten Sie die Warteschlange wirklich leeren?',
|
|
|
+ },
|
|
|
+};
|