From 7f8f4f9de8793dcea641bbd13619ddb7e1e52e63 Mon Sep 17 00:00:00 2001 From: Tim Eertmoed Date: Thu, 17 Sep 2026 10:42:02 +0200 Subject: [PATCH] Version 2.8.42: sichtbare Pfeile an allem Aufklappbaren --- apps/tesm-license/pyproject.toml | 2 +- .../templates/license/customer_detail.html | 3 +- .../templates/license/dashboard.html | 3 +- .../templates/license/license_detail.html | 3 +- .../templates/license/report_detail.html | 3 +- .../templates/license/selfservice.html | 3 +- packages/tesm-core/pyproject.toml | 2 +- .../static/tesm_core/css/components.css | 37 +++++++++++++++++++ .../templates/tesm_core/settings_web.html | 3 +- 9 files changed, 45 insertions(+), 14 deletions(-) diff --git a/apps/tesm-license/pyproject.toml b/apps/tesm-license/pyproject.toml index 021b3a2..efa236f 100644 --- a/apps/tesm-license/pyproject.toml +++ b/apps/tesm-license/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "tesm-license" -version = "2.8.20" +version = "2.8.21" description = "TESM-Lizenzserver -- Kunden, Tickets, Lizenzen, Aktivierung" requires-python = ">=3.11" dependencies = [ diff --git a/apps/tesm-license/src/tesm_license/templates/license/customer_detail.html b/apps/tesm-license/src/tesm_license/templates/license/customer_detail.html index 9f90ebe..6b3bf71 100644 --- a/apps/tesm-license/src/tesm_license/templates/license/customer_detail.html +++ b/apps/tesm-license/src/tesm_license/templates/license/customer_detail.html @@ -122,14 +122,13 @@ informativ und werden bei jedem Bericht vollständig ersetzt.', 'info') }} {% for entry in reported.customers %}
- +
{{ entry.name }}
{{ entry.city or 'ohne Ort' }} · {{ entry.tickets | length }} Ticket(s)
- {{ icon('chevron-down', size=15) }}
{% for ticket in entry.tickets %} diff --git a/apps/tesm-license/src/tesm_license/templates/license/dashboard.html b/apps/tesm-license/src/tesm_license/templates/license/dashboard.html index 40e3c8a..68d89b8 100644 --- a/apps/tesm-license/src/tesm_license/templates/license/dashboard.html +++ b/apps/tesm-license/src/tesm_license/templates/license/dashboard.html @@ -41,14 +41,13 @@ {% set entries = summary.buckets[key] %} {% if entries %}
- +
{{ pill(entries | length, kind if kind != 'ok' else 'online') }} {{ label }}
{{ hint }}
- {{ icon('chevron-down', size=16) }}
diff --git a/apps/tesm-license/src/tesm_license/templates/license/license_detail.html b/apps/tesm-license/src/tesm_license/templates/license/license_detail.html index d62ac91..b8b321a 100644 --- a/apps/tesm-license/src/tesm_license/templates/license/license_detail.html +++ b/apps/tesm-license/src/tesm_license/templates/license/license_detail.html @@ -203,12 +203,11 @@
- +
{{ icon('file-text', size=17) }} Signiertes Dokument
Genau so, wie es signiert wurde – jede Änderung bricht die Signatur
- {{ icon('chevron-down', size=16) }}
{{ document_json }}
diff --git a/apps/tesm-license/src/tesm_license/templates/license/report_detail.html b/apps/tesm-license/src/tesm_license/templates/license/report_detail.html index 5977a01..63d5408 100644 --- a/apps/tesm-license/src/tesm_license/templates/license/report_detail.html +++ b/apps/tesm-license/src/tesm_license/templates/license/report_detail.html @@ -19,7 +19,7 @@ werden bei jedem Bericht vollständig ersetzt.', 'info') }}
{% for entry in reported.customers %}
- +
{{ entry.name }}
@@ -28,7 +28,6 @@ werden bei jedem Bericht vollständig ersetzt.', 'info') }} · {{ entry.tickets | length }} Ticket(s)
- {{ icon('chevron-down', size=16) }}
diff --git a/apps/tesm-license/src/tesm_license/templates/license/selfservice.html b/apps/tesm-license/src/tesm_license/templates/license/selfservice.html index 6eb6394..f4f3d45 100644 --- a/apps/tesm-license/src/tesm_license/templates/license/selfservice.html +++ b/apps/tesm-license/src/tesm_license/templates/license/selfservice.html @@ -99,12 +99,11 @@ {% if history %}
- +
{{ icon('history', size=17) }} Früher ausgestellt
{{ history | length }} Einträge
- {{ icon('chevron-down', size=16) }}
diff --git a/packages/tesm-core/pyproject.toml b/packages/tesm-core/pyproject.toml index bf9bc6a..d07c577 100644 --- a/packages/tesm-core/pyproject.toml +++ b/packages/tesm-core/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "tesm-core" -version = "2.8.20" +version = "2.8.21" description = "Gemeinsames Anwendungsgeruest (Auth, RBAC, Navigation, Design-System, Migrationen) fuer TESM und TESM-Lizenzserver" requires-python = ">=3.11" dependencies = [ diff --git a/packages/tesm-core/src/tesm_core/static/tesm_core/css/components.css b/packages/tesm-core/src/tesm_core/static/tesm_core/css/components.css index d766f71..59ab848 100644 --- a/packages/tesm-core/src/tesm_core/static/tesm_core/css/components.css +++ b/packages/tesm-core/src/tesm_core/static/tesm_core/css/components.css @@ -1131,6 +1131,43 @@ white-space: pre-wrap; word-break: break-word; } + /* ---------------------------------------------------------------------- # + Aufklappbares + ---------------------------------------------------------------------- # + + Der native Marker eines verschwindet, sobald das Element ein + Flex-Container ist -- und genau das sind unsere Kartenkoepfe. Auf der + DHCP-Seite stand der Optionskatalog deshalb als Kasten da, dem man nicht + ansah, dass er sich oeffnen laesst. + + Der Pfeil wird deshalb selbst gezeichnet: als Flex- bzw. Inline-Element, + das in beiden Faellen erscheint, in Akzentfarbe (das ist die Farbe, mit + der diese Oberflaeche "hier kannst du etwas tun" sagt) und mit einer + Drehung beim Oeffnen. Eine Stelle fuer alle Aufklapper -- Karten, + Vorschauen, Abschnitte. */ + details > summary { + list-style: none; + cursor: pointer; + } + details > summary::-webkit-details-marker { display: none; } + details:not(.nav-tree) > summary::before { + content: ""; + display: inline-block; + flex: 0 0 auto; + align-self: center; + width: 0; + height: 0; + margin-right: var(--sp-2); + border-left: 6px solid var(--accent); + border-top: 5px solid transparent; + border-bottom: 5px solid transparent; + transition: transform var(--dur) var(--ease); + } + details:not(.nav-tree)[open] > summary::before { transform: rotate(90deg); } + /* Der Navigationsbaum bringt seinen eigenen Winkel mit -- der bekommt + dieselbe Farbe, damit "aufklappbar" ueberall gleich aussieht. */ + .nav-tree__chevron { color: var(--accent); } + .log-view mark { background: var(--warning-soft); color: var(--warning); border-radius: 3px; } /* Stufen im laufenden Protokoll. Die Zuordnung der Farbrollen ist Absicht: diff --git a/packages/tesm-core/src/tesm_core/templates/tesm_core/settings_web.html b/packages/tesm-core/src/tesm_core/templates/tesm_core/settings_web.html index cf1fd4f..bf2d5c5 100644 --- a/packages/tesm-core/src/tesm_core/templates/tesm_core/settings_web.html +++ b/packages/tesm-core/src/tesm_core/templates/tesm_core/settings_web.html @@ -73,12 +73,11 @@ blieb dadurch über Jahre bestehen und lieferte alle statischen Dateien als 404.
- +
{{ icon('file-text', size=17) }} Erzeugte nginx-Konfiguration
Vorschau der Datei, die geschrieben würde
- {{ icon('chevron-down', size=16) }}
{{ preview }}