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

@@ -1,4 +1,6 @@
'use client';
export const dynamic = 'force-dynamic';
import React, { useState, useEffect, useRef } from 'react';
import { DataTable } from 'primereact/datatable';
@@ -539,26 +541,26 @@ const SortiesPage = () => {
tooltip="Modifier"
/>
{rowData.statut === 'BROUILLON' && (
<ActionButton
icon="pi pi-check"
color="info"
onClick={() => validateExit(rowData)}
<ActionButton
icon="pi pi-check"
color="blue"
onClick={() => validateExit(rowData)}
tooltip="Valider"
/>
)}
{rowData.statut === 'VALIDEE' && (
<ActionButton
icon="pi pi-sign-out"
color="warning"
onClick={() => processExit(rowData)}
<ActionButton
icon="pi pi-sign-out"
color="orange"
onClick={() => processExit(rowData)}
tooltip="Effectuer sortie"
/>
)}
{rowData.statut === 'SORTIE' && (
<ActionButton
icon="pi pi-sign-in"
color="help"
onClick={() => openReturn(rowData)}
<ActionButton
icon="pi pi-sign-in"
color="purple"
onClick={() => openReturn(rowData)}
tooltip="Retour"
/>
)}
@@ -572,7 +574,7 @@ const SortiesPage = () => {
const statusBodyTemplate = (rowData: MaterialExit) => {
let severity: "success" | "warning" | "danger" | "info" = 'info';
let label = rowData.statut;
let label: string = rowData.statut;
switch (rowData.statut) {
case 'BROUILLON':
@@ -726,6 +728,7 @@ const SortiesPage = () => {
value={exits}
selection={selectedExits}
onSelectionChange={(e) => setSelectedExits(e.value)}
selectionMode="checkbox"
dataKey="id"
paginator
rows={10}
@@ -891,14 +894,14 @@ const SortiesPage = () => {
<label htmlFor="article">Article *</label>
<AutoComplete
id="article"
value={currentItem.nom || ''}
suggestions={filteredStockItems}
completeMethod={searchStockItems}
field="nom"
value={currentItem.nom || ''}
suggestions={filteredStockItems}
completeMethod={searchStockItems}
field="nom"
placeholder="Rechercher un article..."
itemTemplate={(item) => `${item.reference} - ${item.nom} (Stock: ${item.stockDisponible})`}
onSelect={(e) => onStockItemSelect(e.value)}
onChange={(e) => setCurrentItem({...currentItem, nom: e.value})}
onChange={(e) => setCurrentItem({...currentItem, nom: typeof e.value === 'string' ? e.value : e.value?.nom || ''})}
required
className={submitted && !currentItem.articleId ? 'p-invalid' : ''}
/>