Verlauf aufgeraeumt + vollstaendiger README-Screenshot
Image bauen und in die Registry schieben / build (push) Successful in 6s

- Verlauf zeigt nur abgehakte Saetze (nicht gemachte werden nicht mehr
  uebernommen); keine ✓/□-Boxen mehr, Uebungsname ohne Tages-Praefix,
  Saetze kompakt in einer Zeile -> deutlich weniger Text
- assets/screenshot.png neu: vollstaendige Session (alle Uebungen mit
  Werten) statt halb-leerer Ansicht
- Tests: 170 Checks gruen (40+18+52+32+28)
This commit is contained in:
AI-Agent committed 2026-10-05 12:21:14 +00:00
1 parent 6290242adf
commit c7647ba962
3 files changed
+11 -19

No files matched your search

+8 -16
View File
@@ -1297,25 +1297,17 @@ function renderSetSummary(s, a) {
const byEx = {}; const byEx = {};
for (const e of s.entries || []) (byEx[e.exercise] = byEx[e.exercise] || []).push(e); for (const e of s.entries || []) (byEx[e.exercise] = byEx[e.exercise] || []).push(e);
for (const exKey of Object.keys(byEx)) { for (const exKey of Object.keys(byEx)) {
const li = el("li", "hist-entry");
const sorted = byEx[exKey].sort((x, y) => x.sort - y.sort) const sorted = byEx[exKey].sort((x, y) => x.sort - y.sort)
.filter(e => e.weight || e.reps); .filter(e => e.done);
if (!sorted.length) continue; if (!sorted.length) continue;
li.appendChild(el("span", "ex-name", exKey + ": ")); const li = el("li", "hist-entry");
const name = exKey.includes("/")
? exKey.split("/").slice(1).join("/") : exKey;
li.appendChild(el("span", "ex-name", name + ": "));
const setsWrap = el("span", "hist-sets"); const setsWrap = el("span", "hist-sets");
sorted.forEach((e, idx) => { setsWrap.textContent = sorted.map(e =>
const w = e.weight || t("empty_label"); (e.weight || t("empty_label")) + " " + unit + " × "
const r = e.reps || t("empty_label"); + (e.reps || t("empty_label")) + " " + repsUnit).join(" · ");
const span = el("span", "hist-set");
span.appendChild(el("span", e.done ? "set-done-box" : "set-undone-box",
e.done ? "✓" : "□"));
span.appendChild(document.createTextNode(
w + " " + unit + " × " + r + " " + repsUnit));
setsWrap.appendChild(span);
if (idx < sorted.length - 1) {
setsWrap.appendChild(document.createTextNode(" · "));
}
});
li.appendChild(setsWrap); li.appendChild(setsWrap);
ul.appendChild(li); ul.appendChild(li);
} }
Binary file not shown.

Before

Width:  |  Height:  |  Size: 78 KiB

After

Width:  |  Height:  |  Size: 91 KiB

+3 -3
View File
@@ -169,9 +169,9 @@ async function main() {
window.document.querySelector('.tab[data-view="history"]').click(); window.document.querySelector('.tab[data-view="history"]').click();
await waitFor(dom, d => d.window.document.querySelectorAll(".hist-card").length === 1); await waitFor(dom, d => d.window.document.querySelectorAll(".hist-card").length === 1);
const histCard = () => window.document.querySelector(".hist-card"); const histCard = () => window.document.querySelector(".hist-card");
check("Verlauf: Haken-Box zeigt Abhak-Status", check("Verlauf: nur abgehakte Saetze, kompakt",
!!histCard().querySelector(".set-done-box") !histCard().querySelector(".set-done-box")
&& histCard().querySelector(".set-done-box").textContent === "✓"); && !histCard().querySelector(".hist-sets").textContent.includes("□"));
check("Verlauf: Abgehaktes Set mit Gewicht", await waitFor(dom, d => check("Verlauf: Abgehaktes Set mit Gewicht", await waitFor(dom, d =>
d.window.document.querySelector(".hist-sets").textContent.includes("18,5"))); d.window.document.querySelector(".hist-sets").textContent.includes("18,5")));