Files
chart-app/src/main/resources/vaadin-i18n/translations.properties
T
Pit Friedrich 21834ec9a0
CI / build-and-test (pull_request) Successful in 2m24s
fix: add KPI tile widget type to the dashboard (#26)
Adds a non-chart dashboard widget: a large value with its label, an
optional signed delta versus the previous period, and an optional
sparkline. Four tiles now sit above the charts, 3x1 each.

- KpiTile draws no surface of its own and fills the grid item's, styled
  from the --dialect-* token layer; the delta's up/down colors are new
  tokens rather than literals, so they follow the light/dark toggle.
- Value and delta share one row: stacking them costs a line the tile does
  not have at its default height of one grid cell.
- SparklineChart is a chrome-free line chart built on DialectTheme, so it
  shares the palette and font with the real charts.
- ApexCharts' sparkline.enabled drops the axes on the initial render but
  updateOptions (how the theme toggle recolors a chart) brings the y-axis
  labels back; they are hidden in CSS, which reaches the chart SVG since
  it renders into light DOM.

The registry registration the issue asks for is left out: #21 is blocked,
so there is no widget picker to register with yet. The tiles are wired
into DashboardView the same way the chart widgets are, and their values
come from the translation bundle until the data service (#20) lands.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0124BiJikbhbiEsNfJxdWM69
2026-07-28 19:57:55 +02:00

119 lines
3.0 KiB
Properties
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# German (source of truth / DefaultI18NProvider fallback)
app.title=Chart App
action.themeToggle=Farbschema wechseln
action.language=Sprache wechseln
lang.de=Deutsch
lang.en=English
lang.es=Español
nav.dashboard=Dashboard
nav.form=Formular
nav.table=Tabelle
page.dashboard=Dashboard
page.form=Formular
page.table=Tabelle
card.revenueTrend=Umsatz-Entwicklung
card.revenueByMonth=Umsatz nach Monat
card.revenueByRegion=Umsatz nach Region
card.registration=Registrierung
card.employees=Mitarbeiter
card.gridstackHint=Bedienung
gridstack.hint=Karten am Griff oben rechts verschieben, an der unteren rechten Ecke die Größe ändern, mit dem X oben rechts schließen. Das Layout wird im Browser gespeichert und beim nächsten Besuch wiederhergestellt.
gridstack.addWidget=Widget hinzufügen
gridstack.reset=Layout zurücksetzen
gridstack.status=Layout geändert {0} Widgets
gridstack.statusInitial=Layout unverändert
gridstack.widget=Widget {0}
gridstack.widgetText=Frei platzierbare Karte.
gridstack.dragHandle=Verschieben
gridstack.close=Schließen
kpi.revenueTotal=Gesamtumsatz
kpi.revenueTotal.value=1,24 Mio. €
kpi.openOrders=Offene Vorgänge
kpi.openOrders.value=38
kpi.newCustomers=Neue Kunden
kpi.newCustomers.value=112
kpi.averageOrderValue=Ø Bestellwert
kpi.averageOrderValue.value=486 €
chart.revenueSeries=Umsatz 2026
chart.pointClick=Serie {0}, Punkt {1}
chart.sliceClick=Slice {0}
month.jan=Jan
month.feb=Feb
month.mar=Mär
month.apr=Apr
month.may=Mai
month.jun=Jun
region.north=Nord
region.south=Süd
region.east=Ost
region.west=West
form.firstName=Vorname
form.lastName=Nachname
form.email=E-Mail
form.password=Passwort
form.age=Alter
form.salary=Gehalt (€)
form.birthdate=Geburtsdatum
form.time=Bevorzugte Uhrzeit
form.country=Land
form.department=Abteilung
form.interests=Interessen
form.salutation=Anrede
form.newsletter=Newsletter abonnieren
form.remark=Bemerkung
form.save=Speichern
form.reset=Zurücksetzen
form.today=Heute
form.cancel=Abbrechen
form.time.badInput=Ungültige Uhrzeit
form.time.required=Uhrzeit ist erforderlich
form.time.min=Uhrzeit liegt vor der frühesten erlaubten Zeit
form.time.max=Uhrzeit liegt nach der spätesten erlaubten Zeit
country.de=Deutschland
country.at=Österreich
country.ch=Schweiz
country.fr=Frankreich
country.nl=Niederlande
dept.sales=Vertrieb
dept.marketing=Marketing
dept.dev=Entwicklung
dept.support=Support
dept.management=Geschäftsführung
interest.newsletter=Newsletter-Themen
interest.webinars=Webinare
interest.updates=Produkt-Updates
interest.events=Events
salutation.mrs=Frau
salutation.mr=Herr
salutation.diverse=Divers
salutation.none=Keine Angabe
valid.firstNameRequired=Vorname wird benötigt
valid.lastNameRequired=Nachname wird benötigt
valid.emailRequired=E-Mail wird benötigt
valid.emailInvalid=Ungültige E-Mail-Adresse
valid.ageRange=Alter muss zwischen 0 und 120 liegen
notify.saved=Gespeichert: {0} {1}
notify.checkInput=Bitte Eingaben prüfen
table.search=Suchen…
col.name=Name
col.department=Abteilung
col.city=Stadt
col.salary=Gehalt (€)