feat: enhance user input component with new styling and functionality

- Added informational styling to warning cards in user input component.
- Improved remaining days details and history display with new computed properties.
- Updated user input service to manage planning outcomes and traces more effectively.
- Enhanced leave planner service to classify remaining balances with detailed reasons.
- Expanded translation service to support new balance reasoning and suggestions.
- Updated translations for multiple languages to reflect new features and terminology.
This commit is contained in:
nessar committed 2026-10-07 21:49:33 +02:00
1 parent 9851edf906
commit 3dc601982a
15 files changed
+679 -141

No files matched your search

+26 -13
View File
@@ -25,8 +25,7 @@
"seconds": "s",
"minutes": "min"
},
"remainingDaysWarning": "{count} nicht platziert:",
"remainingDaysManualPlace": "Bitte manuell platzieren.",
"remainingDaysWarning": "{count} verbleibende Urlaubstage:",
"deleteEntry": "Eintrag löschen",
"chooseDate": "Gültig bis",
"availableDate": "Verfügbar ab",
@@ -35,15 +34,25 @@
"daySuffix": "Tag",
"daysSuffix": "Tage",
"expires": "abl.",
"remainingClassification": {
"unavoidableExpiry": "Unvermeidbarer Ablauf",
"atRisk": "Gefährdet",
"deferred": "Aufgeschoben"
"remainingWhy": "Warum?",
"remainingValidity": "Nutzbar vom {available} bis zum {expiry}.",
"remainingHorizon": "Berechneter Plan vom {start} bis zum {end}.",
"remainingEarnedFrom": "Durch die Regel „{rule}“ erworbener Urlaub.",
"remainingHistoryHelp": "Diese Daten wurden während der Berechnung tatsächlich geprüft. Die Werte vergleichen jeden Versuch mit seinem Ausgangszustand; der endgültige Plan kann abweichen.",
"remainingNoEvaluations": "Für dieses Urlaubskonto wurde kein zuordenbarer Versuch aufgezeichnet. Die Ablaufkategorie allein erklärt nicht, warum es ungenutzt bleibt.",
"remainingSuggestions": {
"available-after-horizon": "Sie können den Planungszeitraum über das Verfügbarkeitsdatum hinaus verlängern und neu berechnen.",
"no-working-date": "Prüfen Sie den Planungszeitraum und die Gültigkeitsdaten dieses Urlaubskontos.",
"all-dates-occupied": "Sie können den Zeitraum bei entsprechender Gültigkeit verlängern oder Ihre bereits gebuchten Tage und Regeln anpassen und neu berechnen.",
"preserved": "Keine Aktion nötig. Um die Nutzung anzufordern, fügen Sie eine Regel innerhalb der Gültigkeit hinzu und berechnen Sie neu.",
"calculation-incomplete": "Starten Sie die Berechnung erneut, wenn Sie die Planung abschließen möchten."
},
"remainingReason": {
"unavoidableExpiry": "vor dem Planungshorizont abgelaufen",
"atRisk": "läuft im Planungshorizont ab",
"deferred": "nach dem Planungshorizont verfügbar"
"remainingCandidateReasons": {
"quality-no-improvement": "Diese Möglichkeit wurde in dieser Berechnungsphase nicht ausgewählt.",
"quality-protected-objective": "Diese Möglichkeit würde eine zu erhaltende Priorität verschlechtern.",
"quality-outperformed": "Die Berechnung fand später eine besser bewertete Möglichkeit.",
"earned-entitlement-order": "Diese Möglichkeit hält die Verfügbarkeitsdaten des erworbenen Urlaubs nicht ein.",
"unknown": "Der genaue Grund für diesen Versuch ist nicht verfügbar."
}
},
"dayTypes": {
@@ -343,9 +352,13 @@
"auditHelp": "Ursprüngliche Werte, Kennungen und Beiträge aus dieser Berechnung.",
"supporting": "Dieser Tag nutzt Urlaub, der über den Planungszeitraum hinaus aufgespart werden könnte, um Ihre Auszeiten zu verbessern.",
"remainingReasons": {
"at-risk": "Diese ungenutzten Tage verfallen im Planungszeitraum.",
"deferred": "Diese ungenutzten Tage können über den Planungszeitraum hinaus aufgespart werden.",
"unavoidable-expiry": "Diese Tage sind vor Beginn des Planungszeitraums verfallen."
"unavoidable-expiry": "Am {expiry} abgelaufen, vor dem Planungsbeginn am {start}. In diesem Zeitraum nicht nutzbar.",
"available-after-horizon": "Erst ab dem {available} verfügbar, nach dem letzten Planungstag am {end}.",
"no-working-date": "Kein Arbeitstag liegt sowohl im Planungszeitraum als auch zwischen Verfügbarkeits- und Ablaufdatum.",
"all-dates-occupied": "Alle Arbeitstage, an denen dieses Urlaubskonto nutzbar ist, sind bereits durch geplanten Urlaub oder gebuchte Tage belegt.",
"preserved": "Für später aufbewahrt: Das Urlaubskonto läuft nach dem Planungszeitraum ab und die Berechnung hat gemäß Ihren Prioritäten keine zusätzliche Platzierung ausgewählt.",
"calculation-incomplete": "Die Berechnung wurde vor Abschluss der Planung unterbrochen. Die Nichtnutzung ist keine endgültige Entscheidung.",
"not-established": "Diese Berechnung hat keinen genauen Grund für die Nichtnutzung ermittelt."
}
},
"comparison": {