feat(web): accueil — rendre scrollable la liste des livres en cours après 6 éléments visibles (hauteur de .continue-grid bornée à 6 tuiles de 118px, overflow-y auto, scrollbar-gutter stable, tuiles à block-size fixe — évolution #44)
This commit is contained in:
18
apps/web/src/pages/HomePageProgressScroll.test.ts
Normal file
18
apps/web/src/pages/HomePageProgressScroll.test.ts
Normal file
@ -0,0 +1,18 @@
|
||||
import { readFileSync } from "node:fs";
|
||||
import { describe, expect, it } from "vitest";
|
||||
|
||||
describe("home progress list layout", () => {
|
||||
it("keeps the continue reading list scrollable after six visible books", () => {
|
||||
const styles = readFileSync(new URL("../styles/app.css", import.meta.url), "utf8");
|
||||
const continueGrid = styles.match(/\.continue-grid\s*\{[^}]+\}/)?.[0] ?? "";
|
||||
const continueTile = styles.match(/\.continue-tile\s*\{[^}]+\}/)?.[0] ?? "";
|
||||
|
||||
expect(continueGrid).toContain("--continue-visible-rows: 6");
|
||||
expect(continueGrid).toContain("--continue-tile-block-size: 118px");
|
||||
expect(continueGrid).toContain("max-height: calc((var(--continue-tile-block-size) * var(--continue-visible-rows)) + (10px * (var(--continue-visible-rows) - 1)))");
|
||||
expect(continueGrid).toContain("overflow-y: auto");
|
||||
expect(continueGrid).toContain("scrollbar-gutter: stable");
|
||||
expect(continueTile).toContain("block-size: var(--continue-tile-block-size)");
|
||||
expect(continueTile).toContain("overflow: hidden");
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user