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