Planning — Ressources
La grille de la semaine, l'axe pivoté : le temps en abscisse, les ressources en ordonnée. Une journée d'heures ou une semaine de jours — c'est la fenêtre qui décide, pas le composant.
Scheduler — la vue Ressources
La grille de la semaine avec l'axe pivoté, et c'est tout ce qui la distingue : createSpanScale remplace createTimeScale parce qu'un timeline a un seul axe continu au lieu d'un jour répété par colonne, et layoutOverlaps revient inchangé — ce qu'il rendait en colonnes qui se partagent une largeur devient des voies qui se partagent la hauteur d'une ligne. Deux réservations de la même salle à la même heure ne peuvent pas se partager la largeur : la largeur, c'est le temps.
Une journée, les heures en abscisse
Les gestes des lots 5 et 6 marchent ici sans une ligne de plus : useTimeDrag a gagné une orientation, pas un jumeau. Déplacer une carte vers une autre ligne change sa ressource — et comme aucune propriété schema.org ne dit « ressource », la librairie ne devine pas : elle rapporte la nouvelle ligne dans le descripteur de changement, à l'application d'écrire, ou à setResourceId de dire comment. Survole un bloc : la bulle est celle du thème, portalisée, donc jamais coupée par la zone qui défile — et tooltipColor la met ici en primary, pour tout le composant. Une couleur par événement serait plus jolie et illisible : rien ne garantit qu'un texte se lise sur une couleur libre, alors qu'un jeton et sa paire -content, si.
onChange → —
Une semaine, les jours en abscisse
Même composant, même code : timelineDays passe à 7 et la fenêtre fait le reste, exactement comme une seule grille horaire sert le Jour et la Semaine. Un événement à cheval sur minuit est ici une seule barre, jamais coupée par jour — c'est précisément ce qu'on demande à un timeline. À cette échelle, une heure vaut sept pixels : les barres courtes écrivent donc leur titre à côté d'elles, comme dans un diagramme de Gantt, et l'exposition qui traverse la semaine garde le sien dedans. Ce qu'une semaine montre, c'est l'occupation ; pour le détail, un clic ouvre la fiche. Selon la densité, ces libellés aident ou se marchent dessus — d'où showNarrowLabels, montré ici dans les deux positions.
showNarrowLabels = true
showNarrowLabels = false
Les heures d’ouverture
L'atelier n'ouvre qu'à 14 h : le reste de sa ligne est ombré. C'est OpeningHoursSpecification lu tel quel — la même propriété que consommera le SlotPicker pour calculer des créneaux libres. Ici elle ne fait que dessiner. Et une ressource qui ne déclare rien n'est pas ombrée du tout : le silence n'est pas une fermeture.
La légende, enfin
Elle attendait depuis la palette du lot 3 bis qu'une source donne des noms aux ressources. La voici, sur MetricLegend : la légende et le timeline lisent la même liste dans le même ordre, ce qui est tout l'intérêt d'une liste déclarée.
- Auditorium
- Salle Bleue
- Atelier
Sans resources — la solution de repli
Aucune liste déclarée : les lignes sont celles que les événements mentionnent, dans l'ordre où on les a rencontrées. Une salle libre toute la journée n'a donc pas de ligne du tout, et l'ordre change avec les données. Pratique pour regarder un payload, jamais pour planifier.