feat(acessibilidade): render page from markdown with ToC

This commit is contained in:
headpatsyou 2026-01-06 21:23:46 +00:00
parent 80d9230e7f
commit f661436188
2 changed files with 16 additions and 49 deletions

View file

@ -0,0 +1 @@
# Declaração de Acessibilidade

View file

@ -1,53 +1,19 @@
"use client";
import { useState } from "react";
import { MarkdownRenderer } from "@/components/markdown/MarkdownRenderer";
import { TableOfContents } from "@/components/markdown/TableOfContents";
export default function AcessibilidadePage() {
const [headings, setHeadings] = useState([] as { id: string; text: string; level: number }[]);
return (
<section aria-labelledby="accessibility-title" className="markdown-content">
<h1 id="accessibility-title">Declaração de Acessibilidade</h1>
<p>Última atualização: 6 de janeiro de 2026</p>
<h2>Compromisso com a Acessibilidade</h2>
<p>
A APP está empenhada em garantir a acessibilidade digital para pessoas com deficiência.
Melhoramos continuamente a experiência do utilizador para todos e aplicamos as normas
de acessibilidade relevantes.
</p>
<h2>Conformidade</h2>
<p>
Este website está em conformidade com as seguintes normas:
</p>
<ul>
<li>EN 301 549 - Requisitos de acessibilidade para produtos e serviços TIC</li>
<li>WCAG 2.1 Nível AA (Web Content Accessibility Guidelines)</li>
</ul>
<h2>Medidas de Acessibilidade</h2>
<ul>
<li>Estrutura semântica HTML adequada</li>
<li>Navegação por teclado completa</li>
<li>Indicadores de foco visíveis</li>
<li>Rótulos ARIA apropriados</li>
<li>Contraste de cores adequado (mínimo 4.5:1 para texto normal)</li>
<li>Texto alternativo para todas as imagens</li>
<li>Link "Saltar para o conteúdo" para navegação rápida</li>
<li>Compatibilidade com leitores de ecrã</li>
</ul>
<h2>Feedback</h2>
<p>
Agradecemos o seu feedback sobre a acessibilidade deste website.
Se encontrar barreiras de acessibilidade, por favor contacte-nos através da página de Contatos.
</p>
<h2>Testes e Avaliação</h2>
<p>
Este website foi testado com as seguintes tecnologias de apoio:
</p>
<ul>
<li>NVDA (Windows)</li>
<li>JAWS (Windows)</li>
<li>VoiceOver (macOS, iOS)</li>
<li>Navegação apenas por teclado</li>
</ul>
</section>
<div className="grid grid-cols-1 md:grid-cols-[1fr_300px] gap-8">
<div>
<h1 className="text-2xl font-bold">Declaração de Acessibilidade</h1>
<MarkdownRenderer contentPath={"pt/acessibilidade.md"} onHeadings={setHeadings} />
</div>
<aside>
<TableOfContents headings={headings} />
</aside>
</div>
);
}