Skip to content

feat(preparation): promotion circuit UI (promotable, statuts) et dates usager sécurisées

yassine sabir a demandé de fusionner bugFix/Validate-To-Prod vers develop
  • src/shared/_mock/_circuit.ts — Ajoute la colonne « Promotion » au tableau des circuits préparés.
  • src/shared/sections/Preparation/circuit/hooks/usePreparedCircuitPromotion.ts — Lance la validation en production avec clé d’idempotence (sans dry-run).
  • src/shared/sections/Preparation/circuit/utils/prepared-circuit-promotion.ts — Centralise l’éligibilité, les libellés/chips de statut et l’état du bouton « Valider en prod ».
  • src/shared/sections/Preparation/circuit/views/circuit-dup-list-view.tsx — Pilote l’affichage et le comportement du bouton de mise en production selon le circuit sélectionné.
  • src/shared/sections/Preparation/circuit/views/modals/ValidateToProductionModal.tsx — Bloque la confirmation et affiche un message si une promotion est déjà en cours.
  • src/shared/sections/Preparation/circuit/views/sections/AiOptimizationCircuitWorkspace.tsx — Retire le doublon du bouton « Valider en prod » dans l’espace IA (géré dans la liste).
  • src/shared/sections/Preparation/circuit/views/sections/PreparationCircuitDrawerTable.tsx — Affiche le statut de promotion et le lien vers le circuit prod dans le tiroir latéral.
  • src/shared/sections/Preparation/circuit/views/selectors/CircuitSummarySidebar.tsx — Retire le bouton de promotion de la sidebar pour éviter la duplication avec la barre d’outils.
  • src/shared/types/circuit-promotion.ts — Étend les types API promotion (promotable, éligibilité) pour l’alignement front/back.
  • **src/shared/types/circuit.ts **— Ajoute les champs promotion sur le modèle Circuit (recherche circuits préparés).
  • src/utils/format-time.ts — Évite le crash RangeError sur des dates API invalides (ex. année 20002).
  • **src/shared/sections/usager/shadcn/components/usager-table-row.tsx **— Affiche « - » si le formatage d’une date échoue.
  • src/shared/sections/usager/view/usager-table-row.tsx — Idem pour la vue usager legacy.
  • src/shared/sections/usager/utils/form-fields-usager.ts — Ignore les années de naissance hors plage pour le calcul d’âge.
Modification effectuée par yassine sabir

Rapports de requête de fusion