Scout live: tolto l'elenco «Ultime azioni»
Nessuna schermata crea più azioni, quindi l'elenco restava sempre vuoto. Aggiornati modulo e changelog. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
2787672cd5
commit
63d1f01be6
3 files changed
+4
-44
No files matched your search
+2
-2
@@ -26,8 +26,8 @@ applicate in produzione il 02/11/2026.
|
||||
|
||||
### Modificato
|
||||
|
||||
- Scout live: tolti i tasti dei punti, il tabellone del punteggio e il blocco avversario / in casa /
|
||||
trasferta; resta la scelta del giocatore e la valutazione − / + per set
|
||||
- Scout live: tolti i tasti dei punti, il tabellone del punteggio, l'elenco «Ultime azioni» e il
|
||||
blocco avversario / in casa / trasferta; resta la scelta del giocatore e la valutazione − / + per set
|
||||
([DD-053](decisions/DD-053.md)). «Chiudi set» e «Fine partita» funzionano anche senza punti; le
|
||||
partite di sole valutazioni non compaiono come risultato in Home, Classifica e pagina partita.
|
||||
- Scout live: il salvataggio è immediato a ogni tocco (prima c'era una pausa di 0,8 secondi) e,
|
||||
|
||||
@@ -66,7 +66,7 @@ perché occupava spazio 6 giorni su 7.
|
||||
## Cosa registra
|
||||
|
||||
La schermata `/scout` ha due passi: **Selezione giocatore** e **2. Valuta** (vedi sotto), seguiti da
|
||||
«Ultime azioni» (oggi sempre vuota, vedi «Limiti noti»), «Chiudi set» e «Fine partita».
|
||||
«Chiudi set» e «Fine partita».
|
||||
|
||||
- **Selezione giocatore:** griglia dei convocati (chi ha risposto "presente"/"ritardo", con fallback
|
||||
a tutta la rosa se nessuno ha risposto), ordinata per cognome o per numero con il selettore a
|
||||
@@ -78,7 +78,7 @@ La schermata `/scout` ha due passi: **Selezione giocatore** e **2. Valuta** (ved
|
||||
|
||||
**Punteggio e azioni.** L'interfaccia non registra più il punteggio: sono stati tolti i tasti delle
|
||||
azioni (punto attacco, ace, muro, errore nostro, punto e errore avversario), il tabellone con punti
|
||||
e set e il blocco avversario / in casa / trasferta. Avversario e campo restano quelli ricavati dal
|
||||
e set, l'elenco «Ultime azioni» e il blocco avversario / in casa / trasferta. Avversario e campo restano quelli ricavati dal
|
||||
titolo della partita (o dallo stato già salvato) e non si modificano. I tipi di azione
|
||||
(`AzioneTipo`, `scout-store.ts`: `attacco`, `ace`, `muro`, `errore`, `punto_avv`, `errore_avv`),
|
||||
i totali `totaliPerGiocatore()` e il campo `scout_partite.azioni` restano nel codice e nei dati:
|
||||
@@ -153,8 +153,6 @@ calcolati a runtime).
|
||||
|
||||
- Lo stato in corso è raggiungibile solo il giorno della partita: se nessuno preme «Fine partita»
|
||||
entro la mezzanotte i dati restano in `scout_live` ma dall'app non si riprendono più.
|
||||
- «Ultime azioni» resta nella schermata ma non si riempie mai («Nessuna azione registrata»): nessuna
|
||||
schermata crea più azioni. Da togliere o da riusare per le ultime valutazioni.
|
||||
- Le valutazioni dei set chiusi e delle partite finite sono salvate ma non si rivedono nell'app: lo
|
||||
scout mostra solo il set in corso e l'unica lettura è il CSV admin. Evoluzione: tabella nella
|
||||
pagina partita.
|
||||
|
||||
@@ -341,8 +341,6 @@ function ScoutBoard({
|
||||
const contiSelezionato = selezionato
|
||||
? contaValutazioni(valutazioni, selezionato, setCorrente)
|
||||
: null;
|
||||
const ultime = [...azioni].slice(-4).reverse();
|
||||
|
||||
return (
|
||||
<>
|
||||
<header className="sticky top-0 z-30 bg-hero px-5 pb-4 pt-6 text-primary-foreground">
|
||||
@@ -469,42 +467,6 @@ function ScoutBoard({
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section className="px-5 pt-4">
|
||||
<div className="rounded-3xl bg-card p-3 shadow-card">
|
||||
<p className="text-[13px] font-bold uppercase tracking-wide text-muted-foreground">
|
||||
Ultime azioni
|
||||
</p>
|
||||
{ultime.length === 0 ? (
|
||||
<p className="mt-2 text-[13px] text-muted-foreground">Nessuna azione registrata.</p>
|
||||
) : (
|
||||
<ul className="mt-2 space-y-1.5">
|
||||
{ultime.map((a, i) => {
|
||||
const g = rosa.find((x) => x.id === a.giocatoreId);
|
||||
return (
|
||||
<li
|
||||
key={a.id}
|
||||
className={cn(
|
||||
"flex items-center justify-between gap-2 px-1 text-[13px]",
|
||||
i === 0 && "anim-riga",
|
||||
)}
|
||||
>
|
||||
<span className="truncate">{g ? `#${g.numero} ${g.nome}` : "Avversario"}</span>
|
||||
<span
|
||||
className={cn(
|
||||
"shrink-0 rounded-full px-2 py-0.5 text-[13px] font-bold uppercase",
|
||||
azioniMeta[a.tipo].className,
|
||||
)}
|
||||
>
|
||||
{azioniMeta[a.tipo].short}
|
||||
</span>
|
||||
</li>
|
||||
);
|
||||
})}
|
||||
</ul>
|
||||
)}
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section className="grid grid-cols-2 gap-2 px-5 pb-4 pt-4">
|
||||
<button
|
||||
type="button"
|
||||
|
||||
Reference in new issue
Block a user