fix(navegacao): foco em âncora de outra página, vitrine acessível e 3D mais leve

Foco cai no destino ao chegar de outra página; âncoras ignoram ?tipo=; movimento reduzido salta em todos os cliques; cronômetro da janela ampliada; degradê no topo de Projetos e legendas do mergulho com intervalos testados; vitrine acima da barra de cookies e com 2 paradas por projeto; reel-list.css no global; 3D montado em tarefas curtas, limitado a ~30 qps e estático com WebGL por software; pôsteres da vitrine de 330 para 158 KB; SC Plus regravado; scripts sem funções acima de complexidade 10.
This commit is contained in:
Evandro Fonseca Junior committed 2026-10-14 19:14:48 -03:00
1 parent 9e2d65a926
commit 204ebd5fa5
49 files changed
+2197 -606

No files matched your search

+8 -4
View File
@@ -179,9 +179,12 @@ describe("Section", () => {
"ds-reveal",
);
expect(screen.getByText("Sobre")).toHaveClass("ds-eyebrow", "ds-reveal");
expect(screen.getByText("lateral").closest("aside")).toHaveClass(
"ds-reveal",
);
// um <div>, não um <aside>: dentro de <main> o <aside> seria um landmark "complementary" fora do topo
const side = screen.getByText("lateral").parentElement;
expect(side?.tagName).toBe("DIV");
expect(side).toHaveClass("ds-reveal");
expect(container.querySelector("aside")).toBeNull();
expect(screen.queryByRole("complementary")).toBeNull();
expect(screen.getByText("Corpo")).toBeInTheDocument();
expect(header).not.toHaveAttribute("data-shown");
@@ -205,8 +208,9 @@ describe("Section", () => {
const eyebrow = delay(screen.getByText("Sobre"));
const description = delay(screen.getByText("Texto"));
// o conteúdo lateral é um <div class="ds-reveal">, não um <aside> (ver Section.tsx)
const aside = delay(
screen.getByText("lateral").closest("aside") as HTMLElement,
screen.getByText("lateral").closest(".ds-reveal") as HTMLElement,
);
expect(eyebrow).toBeLessThan(description);