This is an automated email from the ASF dual-hosted git repository.

bbovenzi pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git


The following commit(s) were added to refs/heads/main by this push:
     new 1480fd10af9 Complete German UI translations (#71668)
1480fd10af9 is described below

commit 1480fd10af9a217157398ebab353252fdfaebba7
Author: Baha Bouali <[email protected]>
AuthorDate: Thu Aug 20 11:47:06 2026 +0100

    Complete German UI translations (#71668)
    
    * Complete German UI translations
    
    * Update airflow-core/src/airflow/ui/public/i18n/locales/de/hitl.json
    
    Co-authored-by: Tamara Fingerlin <[email protected]>
    
    * Update airflow-core/src/airflow/ui/public/i18n/locales/de/dags.json
    
    Co-authored-by: Tamara Fingerlin <[email protected]>
    
    * Update airflow-core/src/airflow/ui/public/i18n/locales/de/common.json
    
    Co-authored-by: Tamara Fingerlin <[email protected]>
    
    ---------
    
    Co-authored-by: Tamara Fingerlin <[email protected]>
---
 .../airflow/ui/public/i18n/locales/de/admin.json   |  15 ++-
 .../airflow/ui/public/i18n/locales/de/assets.json  |  15 ++-
 .../airflow/ui/public/i18n/locales/de/browse.json  |   2 +
 .../airflow/ui/public/i18n/locales/de/common.json  | 124 ++++++++++++++++++++-
 .../ui/public/i18n/locales/de/components.json      |  19 +++-
 .../src/airflow/ui/public/i18n/locales/de/dag.json |  15 +--
 .../airflow/ui/public/i18n/locales/de/dags.json    |  17 ++-
 .../ui/public/i18n/locales/de/dashboard.json       |  18 +++
 .../airflow/ui/public/i18n/locales/de/hitl.json    |  14 +++
 9 files changed, 214 insertions(+), 25 deletions(-)

diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/de/admin.json 
b/airflow-core/src/airflow/ui/public/i18n/locales/de/admin.json
index d14686021f6..257600a5127 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/de/admin.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/de/admin.json
@@ -9,7 +9,9 @@
   "config": {
     "columns": {
       "section": "Abschnitt"
-    }
+    },
+    "config_one": "Konfiguration",
+    "config_other": "Konfigurationen"
   },
   "connections": {
     "add": "Verbindung hinzufügen",
@@ -95,7 +97,9 @@
       "dagProcessorJob": "Dag-Prozessor-Job",
       "schedulerJob": "Scheduler-Job",
       "triggererJob": "Triggerer-Job"
-    }
+    },
+    "job_one": "Job",
+    "job_other": "Jobs"
   },
   "plugins": {
     "columns": {
@@ -103,6 +107,8 @@
     },
     "importError_one": "Fehler beim Laden eines Plug-ins",
     "importError_other": "Fehler beim Laden von Plug-ins",
+    "plugin_one": "Plug-in",
+    "plugin_other": "Plug-ins",
     "searchPlaceholder": "Nach Datei suchen"
   },
   "pools": {
@@ -136,7 +142,9 @@
     "columns": {
       "packageName": "Paketname",
       "version": "Version"
-    }
+    },
+    "provider_one": "Provider",
+    "provider_other": "Provider"
   },
   "variables": {
     "add": "Variable hinzufügen",
@@ -176,6 +184,7 @@
           "title": "Überspringen"
         }
       },
+      "parsingFile": "Datei wird analysiert ...",
       "title": "Variablen importieren",
       "upload": "JSON-Datei hochladen",
       "uploadPlaceholder": "JSON-Datei mit Variablen auswählen (z.B., 
{\"name\": \"wert\", ...})"
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/de/assets.json 
b/airflow-core/src/airflow/ui/public/i18n/locales/de/assets.json
index d8071fd9787..7e6c073af89 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/de/assets.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/de/assets.json
@@ -1,5 +1,8 @@
 {
   "additional_data": "Zusätzliche Daten",
+  "alias_one": "Alias",
+  "alias_other": "Aliase",
+  "aliases": "Aliase",
   "asset_many": "Datensets (Assets)",
   "asset_one": "Datenset (Asset)",
   "assetStateStore": {
@@ -13,6 +16,8 @@
     "deleteWarning": "Das Datenset (Asset) verliert diesen gespeicherten 
Eintrag.",
     "edit": "Datenset (Asset) Zwischenspeicher bearbeiten",
     "emptyState": "Der Datenset (Asset) Zwischenspeicher speichert Werte, die 
auf ein Datenset (Asset) beschränkt sind und über alle Dag-Läufe hinweg geteilt 
werden. Worker können den Datenset (Asset) Zwischenspeicher über das Task SDK 
schreiben.",
+    "entry_one": "Eintrag",
+    "entry_other": "Einträge",
     "lastUpdatedBy": "Zuletzt aktualisiert von",
     "lastUpdatedByApi": "API",
     "lastUpdatedByWatcher": "Ereignis",
@@ -42,7 +47,10 @@
     "title": "Ereignis zu Datenset (Asset) {{name}} erstellen"
   },
   "events": "Ereignisse",
-  "extra": "Extra",
+  "filters": {
+    "groupPlaceholder": "Gruppe suchen",
+    "lastEventDateRange": "Datum des letzten Ereignisses"
+  },
   "group": "Gruppe",
   "lastAssetEvent": "Letztes Ereignis zu Datenset (Asset)",
   "name": "Name",
@@ -50,5 +58,8 @@
   "scheduledDags": "Geplante Dags",
   "scheduling": "Planend",
   "searchPlaceholder": "Datenset (Asset) suchen",
-  "taskDependencies": "Task Abhängigkeiten"
+  "taskDependencies": "Task Abhängigkeiten",
+  "watcher_one": "Überwachung",
+  "watcher_other": "Überwachungen",
+  "watchers": "Überwachungen"
 }
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/de/browse.json 
b/airflow-core/src/airflow/ui/public/i18n/locales/de/browse.json
index c7302923b71..80bdbaf2662 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/de/browse.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/de/browse.json
@@ -56,6 +56,8 @@
       "successTitle": "Task Kommunikation (XCom) aktualisiert",
       "title": "Task Kommunikation (XCom) bearbeiten"
     },
+    "entry_one": "XCom-Eintrag",
+    "entry_other": "XCom-Einträge",
     "key": "Name",
     "title": "Task Kommunikation (XComs)",
     "value": "Wert"
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/de/common.json 
b/airflow-core/src/airflow/ui/public/i18n/locales/de/common.json
index 88060644ca7..29044195579 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/de/common.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/de/common.json
@@ -8,6 +8,7 @@
     "Variables": "Variablen"
   },
   "allOperators": "Alle Operatoren",
+  "allTeams": "Alle Teams",
   "appearance": {
     "appearance": "Darstellung",
     "darkMode": "Dunkelmodus",
@@ -57,7 +58,8 @@
     "owner": "Eigentümer",
     "params": "Parameter",
     "schedule": "Zeitplan",
-    "tags": "Markierungen"
+    "tags": "Markierungen",
+    "team": "Team"
   },
   "dagId": "Dag ID",
   "dagRun": {
@@ -72,6 +74,7 @@
     "expectedDuration": "Erwartete mittlere Laufzeit",
     "lastSchedulingDecision": "Letzte Planungsentscheidung",
     "mappedPartitionKey": "Zugeordneter Partitionsschlüssel",
+    "partitionDate": "Partitionsdatum",
     "partitionKey": "Partitionsschlüssel",
     "queuedAt": "Wartend seit",
     "runAfter": "Gelaufen ab",
@@ -83,9 +86,8 @@
   "dagRun_one": "Dag Lauf",
   "dagRun_other": "Dag Läufe",
   "dagRunId": "Dag Lauf ID",
+  "dagRunState": "Status des Dag Laufs",
   "dagWarnings": "Dag Warnungen und Fehler",
-  "defaultToGraphView": "Graph-Ansicht als Standard",
-  "defaultToGridView": "Gitter-Ansicht als Standard",
   "delete": "Löschen",
   "diff": "Differenzansicht",
   "diffCompareWith": "Vergleichen mit",
@@ -119,6 +121,8 @@
       "title": "Zugriff verweigert"
     }
   },
+  "event_one": "Ereignis",
+  "event_other": "Ereignisse",
   "expand": {
     "collapse": "Einklappen",
     "expand": "Ausklappen",
@@ -145,7 +149,11 @@
     "selectDateRange": "Zeitraum auswählen",
     "startTime": "Startzeitpunkt"
   },
+  "fullscreen": {
+    "tooltip": "Drücken Sie {{hotkey}} für den Vollbildmodus"
+  },
   "generateToken": "Zugriffstoken erzeugen",
+  "includedIn": "Enthalten in",
   "key": "Schlüssel",
   "logicalDate": "Logisches Datum",
   "logout": "Abmelden",
@@ -176,9 +184,12 @@
   "note": {
     "add": "Eine Notiz hinzufügen",
     "dagRun": "Notizen zum Dag Lauf",
+    "edit": "Notiz bearbeiten",
     "label": "Notiz",
     "placeholder": "Eine Notiz hinzufügen...",
-    "taskInstance": "Notizen zu Task Instanzen"
+    "preview": "Vorschau",
+    "taskInstance": "Notizen zu Task Instanzen",
+    "write": "Schreiben"
   },
   "overallStatus": "Gesamtstatus",
   "partitionedDagRun_one": "Partitionierter Dag Lauf",
@@ -188,6 +199,23 @@
   },
   "pendingDagRun_one": "{{count}} ausstehender Dag Lauf",
   "pendingDagRun_other": "{{count}} ausstehende Dag Läufe",
+  "presetFilters": {
+    "deleteTitle": "Gespeicherten Filter löschen",
+    "deleteWarning": "Gespeicherte Filter werden nur in diesem Browser 
gespeichert.",
+    "duplicate": "Der gespeicherte Filter \"{{name}}\" enthält bereits genau 
diese Konfiguration.",
+    "empty": "Noch keine gespeicherten Filter",
+    "info": {
+      "default": "Legen Sie einen gespeicherten Filter als Standard fest. Er 
wird automatisch angewendet, wenn Sie diese Seite ohne Filter öffnen.",
+      "save": "Speichern Sie die aktuellen Filter und die Sortierung und 
verwenden Sie ihn jederzeit wieder.",
+      "storage": "Gespeicherte Filter werden in diesem Browser gespeichert."
+    },
+    "namePlaceholder": "Name des gespeicherten Filters",
+    "nothingToSave": "Nichts zu speichern. Wenden Sie Filter an oder ändern 
Sie die Sortierung, um einen gespeicherten Filter zu erstellen.",
+    "save": "Speichern",
+    "setDefault": "Als Standard festlegen",
+    "title": "Gespeicherte Filter",
+    "unsetDefault": "Standard aufheben"
+  },
   "reset": "Zurücksetzen",
   "runId": "Lauf Id",
   "runTypes": {
@@ -219,8 +247,85 @@
   },
   "selectLanguage": "Sprache wählen",
   "selected": "Ausgewählt",
+  "settings": {
+    "clearing": {
+      "preventRunningTask": {
+        "helper": "Laufende Tasks beim Löschen von Task Instanzen 
überspringen.",
+        "label": "Löschen laufender Tasks verhindern"
+      },
+      "runSelection": {
+        "helper": "Standardmäßig ausgewählte Optionen beim Löschen eines Dag 
Laufs.",
+        "label": "Standardauswahl zum Löschen eines Laufs"
+      },
+      "taskSelection": {
+        "helper": "Standardmäßig ausgewählte Optionen beim Löschen von Task 
Instanzen.",
+        "label": "Standardauswahl zum Löschen von Tasks"
+      },
+      "title": "Löschen"
+    },
+    "description": "Diese Einstellungen werden nur in diesem Browser 
gespeichert und gelten für die gesamte Anwendung.",
+    "graph": {
+      "defaultDirection": {
+        "helper": "Ausrichtung für Dag- und Datenset-(Asset)-Graphen, für die 
Sie keine individuelle Ausrichtung festgelegt haben.",
+        "label": "Standardausrichtung des Graphen"
+      },
+      "title": "Graph"
+    },
+    "marking": {
+      "taskSelection": {
+        "helper": "Standardmäßig ausgewählte Optionen beim Markieren des 
Status einer Task Instanz.",
+        "label": "Standardauswahl zum Markieren"
+      },
+      "title": "Markieren"
+    },
+    "title": "Einstellungen"
+  },
+  "shortcuts": {
+    "categories": {
+      "code": "Code",
+      "dagView": "Dag-Ansicht",
+      "filters": "Filter",
+      "global": "Global",
+      "logs": "Protokolle",
+      "navigation": "Navigation",
+      "runActions": "Lauf- und Task-Aktionen",
+      "search": "Suche"
+    },
+    "descriptions": {
+      "clearRun": "$t(dagRun_one) löschen",
+      "clearTaskInstance": "$t(taskInstance_one) löschen",
+      "downloadLogs": "Protokolle herunterladen",
+      "focusFilterSearch": "Filtersuche fokussieren",
+      "focusLogSearch": "Protokolle durchsuchen",
+      "focusSearch": "Suche fokussieren",
+      "markRunFailed": "$t(dagRun_one) als fehlgeschlagen markieren",
+      "markRunSuccess": "$t(dagRun_one) als erfolgreich markieren",
+      "markTaskFailed": "$t(task_one) als fehlgeschlagen markieren",
+      "markTaskGroupFailed": "$t(taskGroup_one) als fehlgeschlagen markieren",
+      "markTaskGroupSuccess": "$t(taskGroup_one) als erfolgreich markieren",
+      "markTaskSuccess": "$t(task_one) als erfolgreich markieren",
+      "navigateTasks": "Zu $t(task_other) navigieren",
+      "openGraphFilters": "Graphfilter öffnen",
+      "scrollBottom": "Nach unten scrollen",
+      "scrollTop": "Nach oben scrollen",
+      "searchDags": "$t(dag_other) suchen",
+      "showHelp": "$t(shortcuts.title) anzeigen",
+      "toggleExpand": "Alle Gruppen ein- oder ausklappen",
+      "toggleFullscreen": "Vollbild umschalten",
+      "toggleGraphGrid": "Zwischen Graph- und Gitteransicht wechseln",
+      "toggleSource": "Quelle umschalten",
+      "toggleTaskGroup": "$t(taskGroup_one) ein- oder ausklappen",
+      "toggleTimestamp": "Zeitstempel umschalten",
+      "toggleWrap": "$t(wrap.wrap) umschalten"
+    },
+    "empty": "Auf dieser Seite sind keine Tastenkürzel verfügbar.",
+    "title": "Tastenkürzel"
+  },
   "showDetailsPanel": "Detailansicht einblenden",
   "signedInAs": "Angemeldet als",
+  "slot": "Slot",
+  "slot_one": "Slot",
+  "slot_other": "Slots",
   "source": {
     "hide": "Log-Quelle ausblenden",
     "hotkey": "s",
@@ -259,6 +364,7 @@
     "from": "Von",
     "maxActiveRuns": "Maximal aktive Läufe",
     "noTagsFound": "Keine Markierungen gefunden",
+    "noTeamsFound": "Keine Teams gefunden",
     "tagMode": {
       "all": "Alle",
       "any": "Einer"
@@ -285,10 +391,12 @@
   "taskGroup_other": "Task Gruppen",
   "taskId": "Task ID",
   "taskInstance": {
+    "additionalAttributes": "Zusätzliche Attribute der Task Instanz",
     "dagVersion": "Dag Version",
     "executor": "Ausführungsumgebung",
     "executorConfig": "Konfiguration der Ausführungsumgebung",
     "hostname": "Hostname",
+    "id": "ID",
     "maxTries": "Maximale Versuche",
     "pid": "PID",
     "pool": "Pool",
@@ -298,11 +406,13 @@
     "queuedWhen": "Wartend seit",
     "renderedMapIndex": "Planungs-Index Anzeige",
     "scheduledWhen": "Geplant ab",
+    "trigger": "Auslöser",
     "triggerer": {
       "assigned": "Zugewiesene Abrufumgebung",
       "class": "Abruf-Klasse",
       "createdAt": "Zeitpunkt der Erstellung",
       "id": "Abrufungs ID",
+      "job": "Abrufumgebungs-Job",
       "latestHeartbeat": "Letztes Lebenszeichen",
       "title": "Abrufumgebungs-Information"
     },
@@ -310,6 +420,12 @@
   },
   "taskInstance_one": "Task Instanz",
   "taskInstance_other": "Task Instanzen",
+  "teams": {
+    "more_one": "und {{count}} weitere",
+    "more_other": "und {{count}} weitere",
+    "none": "Kein Team",
+    "title": "Teams"
+  },
   "timeRange": {
     "last12Hours": "Letzte 12 Stunden",
     "last24Hours": "Letzte 24 Stunden",
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/de/components.json 
b/airflow-core/src/airflow/ui/public/i18n/locales/de/components.json
index a56e6ede9a1..4178b4f99f6 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/de/components.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/de/components.json
@@ -7,9 +7,15 @@
     "backwards": "Verarbeitung in Rückwärtiger Reihenfolge",
     "dateRange": "Datumsbereich",
     "errorStartDateBeforeEndDate": "Das Startdatum muss vor dem Enddatum 
liegen.",
+    "exceptionReason": {
+      "alreadyExists": "Existiert bereits",
+      "inFlight": "In Bearbeitung",
+      "unknown": "Unbekannt"
+    },
     "maxRuns": "Anzahl aktiver paralleler Läufe",
     "missingAndErroredRuns": "Fehlende und fehlgeschlagene Läufe",
     "missingRuns": "Fehlende Läufe",
+    "notCreatedReason": "Grund für die Nichterstellung",
     "overrideExistingParams": "Parameter bei bestehenden Läufen überschreiben",
     "permissionDenied": "Testlauf fehlgeschlagen: Benutzer hat keine 
Berechtigung, Auffüllungen zu erstellen.",
     "reprocessBehavior": "Auffüll-Modus",
@@ -29,7 +35,8 @@
     "validation": {
       "datesRequired": "Sowohl Start- als auch Enddatum müssen angegeben 
werden.",
       "startBeforeEnd": "Das Startdatum muss vor oder auf dem Enddatum liegen."
-    }
+    },
+    "viewSlots": "Slots für Auffüllung Nr. {{id}} anzeigen"
   },
   "banner": {
     "backfillInProgress": "Auffüllung läuft",
@@ -65,6 +72,7 @@
     "lastDagRun_other": "Letzte {{count}} Dag Läufe",
     "lastTaskInstance_one": "Letzte Task Instanz",
     "lastTaskInstance_other": "Letzte {{count}} Task Instanzen",
+    "medianTotalDuration": "Gesamt: {{duration}}",
     "queuedDuration": "Zeit in der Warteschlange",
     "runAfter": "Lauf ab",
     "runDuration": "Laufzeit"
@@ -112,7 +120,15 @@
     "file": "Datei",
     "location": "Zeile {{line}} in {{name}}"
   },
+  "passwordToggle": {
+    "hide": "Wert ausblenden",
+    "show": "Wert anzeigen"
+  },
   "reparseDag": "Dag neu parsen",
+  "slowestTaskInstances": {
+    "empty": "Keine abgeschlossenen Task Instanzen in diesem Bereich",
+    "title": "Langsamste Task Instanzen"
+  },
   "sortedAscending": "aufsteigend sortiert",
   "sortedDescending": "absteigend sortiert",
   "sortedUnsorted": "unsortiert",
@@ -137,6 +153,7 @@
     "loading": "Lade Dag Information...",
     "loadingFailed": "Das Laden der Dag Informationen ist fehlgeschlagen. 
Bitte versuchen Sie es noch einmal.",
     "manualRunDenied": "Manuelles Auslösen dieses Dags ist nicht erlaubt.",
+    "partitionKeyHelp": "Optional – gilt nur für partitionierte Dags",
     "runIdHelp": "Optional - wird automatisch erzeugt wenn nicht angegeben",
     "selectDescription": "Einen einzelnen Lauf dieses Dags auslösen",
     "selectLabel": "Einzelner Lauf",
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/de/dag.json 
b/airflow-core/src/airflow/ui/public/i18n/locales/de/dag.json
index d48f59856f6..c77df4a9a9f 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/de/dag.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/de/dag.json
@@ -42,6 +42,7 @@
   },
   "deadlineAlerts": {
     "completionRule": "Muss innerhalb von {{interval}} nach {{reference}} 
abgeschlossen sein",
+    "completionRuleDynamic": "Muss innerhalb eines variablen, ab {{reference}} 
gemessenen Intervalls abgeschlossen werden",
     "count_one": "{{count}} Frist",
     "count_other": "{{count}} Fristen",
     "referenceType": {
@@ -91,10 +92,6 @@
     "critical": "CRITICAL",
     "debug": "DEBUG",
     "error": "ERROR",
-    "fullscreen": {
-      "button": "Vollbild",
-      "tooltip": "Taste {{hotkey}} für Vollbildmodus"
-    },
     "info": "INFO",
     "noTryNumber": "Keine Versuchsnummer",
     "search": {
@@ -147,13 +144,7 @@
       "label": "Anzahl von Dag Läufen"
     },
     "dependencies": {
-      "label": "Abhängigkeiten",
-      "options": {
-        "allDagDependencies": "Alle Dag Abhängigkeiten",
-        "externalConditions": "Externe Bedingungen",
-        "onlyTasks": "Nur Tasks"
-      },
-      "placeholder": "Abhängigkeiten"
+      "allDagDependencies": "Alle Dag-Abhängigkeiten"
     },
     "graphDirection": {
       "label": "Richtung des Graph"
@@ -246,6 +237,8 @@
     "deleteWarning": "Der Task verliert diesen gespeicherten Zustand. Wenn der 
Task diesen Schlüssel verwendet, um externe Arbeiten zu verfolgen (z.B. eine 
externe Job-ID), kann er diese nicht wieder aufnehmen und startet Arbeiten 
potentiell wieder von vorne.",
     "edit": "Task Status Zwischenspeicher bearbeiten",
     "emptyStore": "Der Task Status Zwischenspeicher speichert Werte, die über 
Wiederholungen hinweg bestehen bleiben. Worker können den Task Status 
Zwischenspeicher über das Task SDK schreiben.",
+    "entry_one": "Eintrag",
+    "entry_other": "Einträge",
     "expiresAt": {
       "column": "Ablaufdatum",
       "custom": "Benutzerdefiniert",
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/de/dags.json 
b/airflow-core/src/airflow/ui/public/i18n/locales/de/dags.json
index 0242211dc8c..6784caa7129 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/de/dags.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/de/dags.json
@@ -10,17 +10,21 @@
   "filters": {
     "allRunTypes": "Alle Arten von Läufen",
     "allStates": "Alle Stati",
+    "anyRunState": "Beliebiger Lauf",
     "favorite": {
       "all": "Alle",
       "favorite": "Favorisierte",
       "unfavorite": "Nicht favorisierte"
     },
+    "lastRunState": "Letzter Lauf",
+    "noTimetableTypesFound": "Keine Zeitplantypen gefunden",
     "paused": {
       "active": "Aktiv",
       "all": "Alle",
       "paused": "Pausiert"
     },
-    "runIdPatternFilter": "Dag Läufe suchen"
+    "runIdPatternFilter": "Dag Läufe suchen",
+    "timetableType": "Zeitplantyp"
   },
   "ownerLink": "Besitzer Verlinkungen zu {{owner}}",
   "runAndTaskActions": {
@@ -76,6 +80,11 @@
       "upstream": "Vorangegangene"
     }
   },
+  "runStateCounts": {
+    "label": "Laufstatus",
+    "loading": "Laufstatuszahlen werden geladen",
+    "tooltip": "{{state}}: {{formattedCount}} – klicken, um Läufe zu filtern"
+  },
   "search": {
     "advanced": "Erweiterte Suche",
     "clear": "Suche zurücksetzen",
@@ -88,9 +97,9 @@
       "asc": "Sortiert nach Anzeigename (A-Z)",
       "desc": "Sortiert nach Anzeigename (Z-A)"
     },
-    "lastRunStartDate": {
-      "asc": "Sortiert nach letztem Startdatum (Erster-Letzter)",
-      "desc": "Sortiert nach letztem Startdatum (Letzter-Erster)"
+    "lastRunAfter": {
+      "asc": "Nach spätestem Gelaufen-nach Zeitstempel sortieren 
(frühester–spätester)",
+      "desc": "Nach spätestem Gelaufen-nach Zeitstempel sortieren 
(spätester–frühester)"
     },
     "lastRunState": {
       "asc": "Sortiert nach dem Status des letzten Laufes (A-Z)",
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/de/dashboard.json 
b/airflow-core/src/airflow/ui/public/i18n/locales/de/dashboard.json
index b72ffcc4e29..2a0d3220325 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/de/dashboard.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/de/dashboard.json
@@ -1,4 +1,22 @@
 {
+  "alerts": {
+    "seeLessContext": "Weniger anzeigen",
+    "seeMoreContext": "Mehr anzeigen",
+    "showMoreAlerts_one": "+{{count}} weitere Warnung",
+    "showMoreAlerts_other": "+{{count}} weitere Warnungen"
+  },
+  "deadlines": {
+    "pending": {
+      "empty": "Keine bevorstehenden Fristen",
+      "title": "Bevorstehend"
+    },
+    "recentlyMissed": {
+      "empty": "Keine verpassten Fristen",
+      "title": "Verpasste Fristen"
+    },
+    "showMore": "Mehr anzeigen",
+    "title": "Fristen"
+  },
   "deferredSlotsNotCounted": "Delegierte Tasks, die nicht für die 
Pool-Belegung zählen: {{count}}",
   "deferredSlotsNotCountedTooltip": "Delegierte Tasks, die in der Leiste 
angezeigt werden, werden bei der Berechnung der Pool-Belegung berücksichtigt. 
Delegierte Tasks, die unterhalb der Leiste angezeigt werden, stammen aus Pools, 
die delegierte Tasks nicht für ihre Belegung berücksichtigen.",
   "favorite": {
diff --git a/airflow-core/src/airflow/ui/public/i18n/locales/de/hitl.json 
b/airflow-core/src/airflow/ui/public/i18n/locales/de/hitl.json
index 0d0763d6cfe..d741f5e2e80 100644
--- a/airflow-core/src/airflow/ui/public/i18n/locales/de/hitl.json
+++ b/airflow-core/src/airflow/ui/public/i18n/locales/de/hitl.json
@@ -24,6 +24,20 @@
     "success": "{{taskId}} Interaktion erfolgreich",
     "title": "Erforderliche Interaktion - {{taskId}}"
   },
+  "review": {
+    "detail": {
+      "selectRequiredAction": "Wählen Sie eine erforderliche Interaktion aus, 
um Details anzuzeigen"
+    },
+    "list": {
+      "completedRequiredActions": "Abgeschlossene erforderliche Interaktionen 
({{count}})",
+      "loadError": "Erforderliche Interaktionen konnten nicht geladen werden",
+      "loadingActions": "Erforderliche Interaktionen werden geladen ...",
+      "pendingRequiredActions": "Ausstehende erforderliche Interaktionen 
({{count}})"
+    },
+    "openReviewDrawer": "Prüfbereich öffnen",
+    "pageLimitHint": "Hier werden nur die ersten Interaktionen angezeigt. 
Verwenden Sie \"$t(review.viewAll)\", um alle anzuzeigen.",
+    "viewAll": "Alle erforderlichen Interaktionen anzeigen"
+  },
   "state": {
     "approvalReceived": "Genehmigung erhalten",
     "approvalRequired": "Genehmigung erforderlich",

Reply via email to