fix(a11y): nomes acessíveis em busca, filtros e paginação
- campos de busca (SearchBar e Hero) só tinham placeholder - botões só com ícone (buscar, voltar, primeira/anterior/próxima/última) - filtros de Nutri-Score (letras a-e) e chip de alérgenos expõem aria-pressed; página atual da paginação usa aria-current
This commit is contained in:
1 parent
3d59903114
commit
5ee5dcd893
4 files changed
+18
-1
No files matched your search
@@ -126,6 +126,7 @@ export function Pagination({
|
||||
size="sm"
|
||||
onClick={() => onPageChange(currentPage - 1)}
|
||||
disabled={!canGoPrevious}
|
||||
aria-label="Página anterior"
|
||||
className="h-9 w-9 p-0 flex-shrink-0"
|
||||
>
|
||||
<ChevronLeft className="h-4 w-4" />
|
||||
@@ -141,6 +142,8 @@ export function Pagination({
|
||||
variant={currentPage === page ? "default" : "outline"}
|
||||
size="sm"
|
||||
onClick={() => onPageChange(page as number)}
|
||||
aria-label={`Página ${page}`}
|
||||
aria-current={currentPage === page ? "page" : undefined}
|
||||
className="h-9 w-9 p-0"
|
||||
>
|
||||
{page}
|
||||
@@ -155,6 +158,7 @@ export function Pagination({
|
||||
size="sm"
|
||||
onClick={() => onPageChange(currentPage + 1)}
|
||||
disabled={!canGoNext}
|
||||
aria-label="Próxima página"
|
||||
className="h-9 w-9 p-0 flex-shrink-0"
|
||||
>
|
||||
<ChevronRight className="h-4 w-4" />
|
||||
@@ -230,6 +234,7 @@ export function Pagination({
|
||||
size="sm"
|
||||
onClick={() => onPageChange(1)}
|
||||
disabled={!canGoPrevious}
|
||||
aria-label="Primeira página"
|
||||
className="h-8 w-8 p-0"
|
||||
>
|
||||
<ChevronsLeft className="h-4 w-4" />
|
||||
@@ -243,6 +248,7 @@ export function Pagination({
|
||||
size="sm"
|
||||
onClick={() => onPageChange(currentPage - 1)}
|
||||
disabled={!canGoPrevious}
|
||||
aria-label="Página anterior"
|
||||
className="h-8 w-8 p-0"
|
||||
>
|
||||
<ChevronLeft className="h-4 w-4" />
|
||||
@@ -259,6 +265,8 @@ export function Pagination({
|
||||
variant={currentPage === page ? "default" : "outline"}
|
||||
size="sm"
|
||||
onClick={() => onPageChange(page as number)}
|
||||
aria-label={`Página ${page}`}
|
||||
aria-current={currentPage === page ? "page" : undefined}
|
||||
className="h-8 w-8 p-0"
|
||||
>
|
||||
{page}
|
||||
@@ -274,6 +282,7 @@ export function Pagination({
|
||||
size="sm"
|
||||
onClick={() => onPageChange(currentPage + 1)}
|
||||
disabled={!canGoNext}
|
||||
aria-label="Próxima página"
|
||||
className="h-8 w-8 p-0"
|
||||
>
|
||||
<ChevronRight className="h-4 w-4" />
|
||||
@@ -287,6 +296,7 @@ export function Pagination({
|
||||
size="sm"
|
||||
onClick={() => onPageChange(totalPages)}
|
||||
disabled={!canGoNext}
|
||||
aria-label="Última página"
|
||||
className="h-8 w-8 p-0"
|
||||
>
|
||||
<ChevronsRight className="h-4 w-4" />
|
||||
|
||||
Reference in new issue
Block a user