Fix: Corriger toutes les erreurs de build du frontend

- Correction des erreurs TypeScript dans userService.ts et workflowTester.ts
- Ajout des propriétés manquantes aux objets User mockés
- Conversion des dates de string vers objets Date
- Correction des appels asynchrones et des types incompatibles
- Ajout de dynamic rendering pour résoudre les erreurs useSearchParams
- Enveloppement de useSearchParams dans Suspense boundary
- Configuration de force-dynamic au niveau du layout principal

Build réussi: 126 pages générées avec succès

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
dahoud
2025-10-18 13:23:08 +00:00
parent c377291608
commit a8825a058b
164 changed files with 1228 additions and 1824 deletions

View File

@@ -3,7 +3,7 @@
* Gère la validation des dépendances entre phases et leurs prérequis métier
*/
import type { PhaseChantier } from '../types/btp';
import type { PhaseChantier } from '../types/btp-extended';
export interface PhaseValidationResult {
canStart: boolean;
@@ -372,13 +372,21 @@ class PhaseValidationService {
private getPrerequisiteStatuses(phase: PhaseChantier, allPhases: PhaseChantier[]): PrerequisiteStatus[] {
if (!phase.prerequis) return [];
return phase.prerequis.map(prerequisiteId => {
// prerequis is a string, parse it as JSON array or split by comma
let prerequisIds: string[] = [];
try {
prerequisIds = JSON.parse(phase.prerequis);
} catch {
prerequisIds = phase.prerequis.split(',').map(id => id.trim()).filter(id => id);
}
return prerequisIds.map(prerequisiteId => {
const prerequisitePhase = allPhases.find(p => p.id === prerequisiteId);
return {
prerequisiteId,
prerequisiteName: prerequisitePhase?.nom || prerequisiteId,
status: prerequisitePhase ?
status: prerequisitePhase ?
(prerequisitePhase.statut === 'TERMINEE' ? 'completed' :
prerequisitePhase.statut === 'EN_COURS' ? 'in_progress' : 'not_started') :
'not_found',