diff --git a/pom.xml b/pom.xml
index 97c0d36..df6a96d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -13,7 +13,7 @@
de.assecutor
pdf-tool
- 1.0.0-SNAPSHOT
+ 0.9.0
pdf-tool
ZUGFeRD E-Rechnungs-Konverter (PDF zu PDF/A-3 mit eingebettetem EN16931-XML)
diff --git a/src/main/java/de/assecutor/pdftool/ui/MainLayout.java b/src/main/java/de/assecutor/pdftool/ui/MainLayout.java
index 4342ec2..6f12e8f 100644
--- a/src/main/java/de/assecutor/pdftool/ui/MainLayout.java
+++ b/src/main/java/de/assecutor/pdftool/ui/MainLayout.java
@@ -4,12 +4,14 @@ import com.vaadin.flow.component.applayout.AppLayout;
import com.vaadin.flow.component.applayout.DrawerToggle;
import com.vaadin.flow.component.html.H1;
import com.vaadin.flow.component.html.H2;
+import com.vaadin.flow.component.html.Span;
import com.vaadin.flow.component.icon.VaadinIcon;
import com.vaadin.flow.component.orderedlayout.Scroller;
import com.vaadin.flow.component.sidenav.SideNav;
import com.vaadin.flow.component.sidenav.SideNavItem;
import com.vaadin.flow.router.PageTitle;
import com.vaadin.flow.theme.lumo.LumoUtility;
+import org.springframework.beans.factory.annotation.Value;
/**
* Rahmenlayout der Anwendung mit linker Sidebar: Navigation zwischen der
@@ -22,13 +24,28 @@ public class MainLayout extends AppLayout {
/** Titel der aktiven Seite in der Navbar. */
private final H2 viewTitle = new H2();
- public MainLayout() {
+ public MainLayout(@Value("${pdftool.version:}") String version) {
setPrimarySection(Section.DRAWER);
- H1 appName = new H1("AIT");
+ H1 appName = new H1();
+ appName.add(new Span("AIT"));
+ if (!version.isBlank()) {
+ Span versionLabel = new Span("(" + version + ")");
+ // Absolut positioniert an ihrer natürlichen Stelle rechts neben "AIT":
+ // die Version nimmt keinen Platz im Layout ein, "AIT" bleibt exakt mittig.
+ versionLabel.getStyle()
+ .set("font-size", "var(--lumo-font-size-s)")
+ .set("font-weight", "normal")
+ .set("color", "var(--lumo-secondary-text-color)")
+ .set("position", "absolute")
+ .set("margin-left", "0.3em")
+ // unten an der Schriftlinie von "AIT" ausrichten
+ .set("bottom", "0.2em");
+ appName.add(versionLabel);
+ }
appName.addClassNames(LumoUtility.FontSize.LARGE, LumoUtility.Margin.Vertical.MEDIUM);
appName.setWidth("100%");
- appName.getStyle().set("text-align", "center");
+ appName.getStyle().set("text-align", "center").set("position", "relative");
SideNav nav = new SideNav();
nav.addItem(new SideNavItem("E-Rechnung erzeugen", MainView.class, VaadinIcon.INVOICE.create()));
diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties
index b8ee4af..0b641fd 100644
--- a/src/main/resources/application.properties
+++ b/src/main/resources/application.properties
@@ -1,6 +1,9 @@
spring.application.name=pdf-tool
server.port=8080
+# Wird beim Build durch die Version aus der pom.xml ersetzt (Resource-Filtering)
+pdftool.version=@project.version@
+
spring.servlet.multipart.max-file-size=25MB
spring.servlet.multipart.max-request-size=30MB