Icone

Scala, allineamento, semantica accessibile e lifecycle delle icone Qoovex, senza nascondere le API native Tabler.

@tabler/icons-react · @qoovex/ui/styles/base.css

Scala semantica

La size descrive una responsabilità, non un’aggiustatura locale. Il tratto resta quello Tabler e il colore eredita sempre currentColor.

14 px
Compact
--icon-compact

Metadata, testo xs/sm e densità controllata.

16 px
Default / control
--icon

Button, field, menu, navigation e testo base.

20 px
Emphasized
--icon-emphasized

Leading status con gerarchia maggiore.

28 px
Illustrative
--icon-illustrative

Empty state e marker focali in container dedicati.

12 px resta un’eccezione interna dei controlli micro; 24 px non ha oggi un ruolo canonico; 32 px resta una decisione component-specific per container illustrativi.

Allineamento ottico

La griglia rende misurabili box, line box e centro del controllo. Solo il leading multilinea usa un offset locale verso la prima riga.

Icona + testo
Verbale operativo · xs
Verbale operativo · sm
Verbale operativo · base
Icon-only e multilinea
Focus, nome e hit area appartengono al button.

Il leading icon segue il centro della prima line box anche quando il testo si estende su più righe o usa il fallback font.

Semantica e colore

Decorative, icon-only e informative sono tre contratti distinti. Tema e forced colors funzionano perché il glyph eredita il colore del proprio owner.

Decorative
Documento verificato
Informative standalone
L’icona possiede un nome perché comunica contenuto autonomo.
Status + currentColor
Richiede attenzione

Loading

Lo spinner è decorativo; il parent mantiene busy state e feedback testuale. In reduced motion la rotazione si ferma senza nascondere lo stato.

Caricamento in corso

Lifecycle Motion

Il button possiede semantica e activation; Motion governa soltanto la continuità open/close del chevron. Click ripetuti retargettano il valore corrente.

Chiuso: input rapido può invertire il target senza accodare animazioni.
restinteractiontransitionsettled
Stato
closed
Press
rilasciato
Reduced
rotazione state-driven