Consultation : carte pilotée par le survol, plus de navigation jour

Refonte de l'interaction carte/liste suite au retour d'usage :

- Suppression de la bande de navigation « Jour préc. / date / Jour suiv. »
  (boutons, code et styles associés retirés).
- La journée affichée sur la carte suit le SURVOL des trajets : survoler un
  trajet bascule la carte sur sa journée (Subject debouncé ~80 ms) et met le
  tracé en évidence ; en fin de survol, la carte reste sur la dernière journée
  survolée. Au chargement d'un mois, la carte se cale sur la dernière journée
  ayant des trajets.
- Bouton « Ouvrir toutes les journées » (avant « Ajouter un trajet » pour ne pas
  décaler ce dernier ; affiché seulement s'il reste des journées repliées).
- Surbrillance du groupe de la journée affichée sur la carte (en-tête bleu
  accentué), pilotée par le nouvel Input jourAffiche de la liste.
- Harmonisation : les mois « avec données » du sélecteur passent au même bleu
  que la journée mise en avant (le mois sélectionné reste en bleu plein).
- Date par défaut à la création : date de la carte, sinon date du jour (inchangé).

Specs : requirements.md (exigence 12, glossaire Sélecteur_Temporel) et design.md
(ConsultationJour, TrajetList, SelecteurTemporel) mis à jour.
This commit is contained in:
2026-09-20 22:35:34 +02:00
parent 173b123f03
commit 937609a83b
9 changed files with 136 additions and 158 deletions
@@ -20,7 +20,7 @@
box-sizing: border-box;
overflow: hidden; // aucun scroll global : seule la liste défile (voir &__liste)
// Zone dates (colonne gauche) : sélecteur temporel + navigation ± 1 jour, compacte.
// Zone dates (colonne gauche) : sélecteur temporel (année/mois), compacte.
&__dates {
display: flex;
flex-direction: column;
@@ -46,38 +46,6 @@
border-radius: 8px;
}
&__navigation {
display: flex;
align-items: center;
justify-content: space-between;
gap: 0.5rem;
}
&__nav-bouton {
padding: 0.4rem 0.9rem;
border: 1px solid #c7ccd3;
border-radius: 6px;
background: #fff;
cursor: pointer;
font-size: 0.9rem;
&:hover:not(:disabled) {
background: #eef1f5;
}
&:disabled {
opacity: 0.5;
cursor: not-allowed;
}
}
&__date {
min-width: 6.5rem;
text-align: center;
font-variant-numeric: tabular-nums;
font-weight: 600;
}
&__vehicule {
display: flex;
flex-direction: column;
@@ -144,6 +112,23 @@
}
}
// Bouton secondaire : déplie toutes les journées de la liste.
&__ouvrir-tout {
align-self: flex-end;
padding: 0.5rem 1rem;
border: 1px solid #c7ccd3;
border-radius: 6px;
background: #fff;
color: #33475b;
cursor: pointer;
font-size: 0.9rem;
white-space: nowrap;
&:hover {
background: #eef1f5;
}
}
&__erreur {
color: #b3261e;
margin: 0;