Menu sottosezioni "sottolineatura": pillola piena sulla tab attiva, su tutta larghezza
La sola sottolineatura era troppo minimale sulla tab attiva. Ora è uno sfondo pieno arrotondato come le pillole del Profilo, ma le tab restano giustificate su tutta la larghezza dello schermo senza scroll orizzontale. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -19,9 +19,10 @@ const transizioneTab = { type: "tween" as const, duration: 0.16, ease: [0.25, 0.
|
|||||||
* pannello che mostra una sola sezione alla volta, cambiabile anche con
|
* pannello che mostra una sola sezione alla volta, cambiabile anche con
|
||||||
* swipe sul contenuto.
|
* swipe sul contenuto.
|
||||||
*
|
*
|
||||||
* `variante="sottolineatura"`: tab a testo con sottolineatura rossa (Squadra e Classifica
|
* `variante="sottolineatura"`: tab giustificate su tutta la larghezza, senza scroll, con
|
||||||
* CSI). Default `pillole`: restano le pill usate dal Profilo. Il titolo ripetuto sotto la
|
* pillola piena sulla tab attiva (Squadra e Classifica CSI). Default `pillole`: tab scorrevoli
|
||||||
* barra non viene mai mostrato: l’etichetta è già nella tab.
|
* a larghezza naturale, usate dal Profilo. Il titolo ripetuto sotto la barra non viene mai
|
||||||
|
* mostrato: l’etichetta è già nella tab.
|
||||||
*/
|
*/
|
||||||
export function BarraSottosezioni({
|
export function BarraSottosezioni({
|
||||||
voci,
|
voci,
|
||||||
@@ -74,8 +75,10 @@ export function BarraSottosezioni({
|
|||||||
role="tablist"
|
role="tablist"
|
||||||
aria-label="Sottosezioni"
|
aria-label="Sottosezioni"
|
||||||
className={cn(
|
className={cn(
|
||||||
"flex snap-x snap-mandatory overflow-x-auto [scrollbar-width:none] [&::-webkit-scrollbar]:hidden",
|
"flex",
|
||||||
sottolineatura ? "gap-0 px-2" : "-mx-0 gap-1.5 px-5 pb-3",
|
sottolineatura
|
||||||
|
? "gap-1 px-2 py-1.5"
|
||||||
|
: "snap-x snap-mandatory overflow-x-auto [scrollbar-width:none] [&::-webkit-scrollbar]:hidden -mx-0 gap-1.5 px-5 pb-3",
|
||||||
)}
|
)}
|
||||||
>
|
>
|
||||||
{voci.map((v) => {
|
{voci.map((v) => {
|
||||||
@@ -94,17 +97,17 @@ export function BarraSottosezioni({
|
|||||||
vaiA(i);
|
vaiA(i);
|
||||||
}}
|
}}
|
||||||
className={cn(
|
className={cn(
|
||||||
"snap-center shrink-0 grow basis-0 touch-manipulation whitespace-nowrap text-sm font-bold uppercase tracking-wide transition-colors",
|
"grow basis-0 touch-manipulation text-sm font-bold uppercase tracking-wide transition-colors",
|
||||||
"min-h-11",
|
"min-h-11",
|
||||||
sottolineatura
|
sottolineatura
|
||||||
? cn(
|
? cn(
|
||||||
"rounded-none border-b-2 px-3 py-3",
|
"rounded-xl px-1 py-2.5 text-center",
|
||||||
selezionata
|
selezionata
|
||||||
? "border-accent text-foreground"
|
? "bg-accent text-accent-foreground shadow-pop"
|
||||||
: "border-transparent text-muted-foreground",
|
: "text-muted-foreground",
|
||||||
)
|
)
|
||||||
: cn(
|
: cn(
|
||||||
"rounded-full px-3.5 py-2",
|
"snap-center shrink-0 whitespace-nowrap rounded-full px-3.5 py-2",
|
||||||
selezionata
|
selezionata
|
||||||
? "bg-accent text-accent-foreground shadow-pop"
|
? "bg-accent text-accent-foreground shadow-pop"
|
||||||
: "bg-secondary text-muted-foreground",
|
: "bg-secondary text-muted-foreground",
|
||||||
|
|||||||
Reference in New Issue
Block a user