Panneau d'affectation : barre de recherche pour retrouver un bénévole
La liste des candidats se limitait aux 10 mieux classés par le score de
chance — un bénévole précis pouvait ne jamais y apparaître. Un champ de
recherche (nom/prénom, insensible aux accents/casse) permet maintenant de le
retrouver et de l'affecter directement, sans être limité au classement.
- Recherche vide : comportement inchangé (top 10 par score de chance).
- Recherche non vide : jusqu'à 20 bénévoles non affectés dont le nom
correspond, triés par le même score ; message dédié si aucun ne correspond.
- `foldAccents` (accents/casse) déplacé de `ConfigVolunteers.tsx` vers
`lib/planning.ts` pour être partagé avec le panneau d'affectation.
- `GrillePage.tsx` : `key={shift.shift_id}` sur `AssignmentPanel` pour que la
recherche (et tout futur état local) reparte à zéro en changeant de
créneau, plutôt que de persister sur le suivant.
Vérifié : typecheck, lint, build, smoke frontend OK.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017uUsRg7XzopkCPWimwg9ZM
This commit is contained in:
co-authored by
Claude Sonnet 5
parent
11bc8cbe36
commit
efa652fffb
@@ -92,7 +92,8 @@
|
||||
"grille.panel.noneAssigned": "Personne n'est encore affecté sur ce créneau.",
|
||||
"grille.panel.hoursTotal": "{hours} H AU TOTAL",
|
||||
"grille.panel.candidates": "CANDIDATS",
|
||||
"grille.panel.candidatesHint": "LES MOINS CHARGÉS D'ABORD",
|
||||
"grille.panel.searchVolunteer": "Rechercher un bénévole…",
|
||||
"grille.panel.searchNoMatch": "Aucun bénévole ne correspond à cette recherche.",
|
||||
"grille.panel.hoursAssigned": "{hours} H · {slots} CRÉNEAUX",
|
||||
"grille.panel.assign": "AFFECTER",
|
||||
"grille.panel.blocked": "BLOQUÉ",
|
||||
|
||||
Reference in New Issue
Block a user