const fs = require('fs'); const path = require('path'); const files = [ { p: 'src/pages/afficheurs/afl/AFLDeparts.js', arr: false }, { p: 'src/pages/afficheurs/afl/AFLArrivees.js', arr: true }, { p: 'src/pages/afficheurs/classiques/quais/ClassiquesDepartsQuais.js', arr: false }, { p: 'src/pages/afficheurs/classiques/quais/ClassiquesArriveesQuais.js', arr: true }, { p: 'src/pages/afficheurs/afl/quais/AFLDepartsQuais.js', arr: false }, { p: 'src/pages/afficheurs/afl/quais/AFLArriveesQuais.js', arr: true }, ]; for (const { p, arr } of files) { const fullPath = path.join(process.cwd(), p); if (!fs.existsSync(fullPath)) { console.log(`File not found: ${fullPath}`); continue; } let content = fs.readFileSync(fullPath, 'utf8'); if (!content.includes('import useAutoAnnonce from')) { content = content.replace( "import useAnnonceSonoreRealtime from '../../../hooks/useAnnonceSonoreRealtime';", "import useAnnonceSonoreRealtime from '../../../hooks/useAnnonceSonoreRealtime';\nimport useAutoAnnonce from '../../../hooks/useAutoAnnonce';" ); } if (!content.includes('useAutoAnnonce(')) { const hookCall = ` useAnnonceSonoreRealtime(resolvedGareId);\n useAutoAnnonce(horaires, currentTime, ${arr});`; content = content.replace(" useAnnonceSonoreRealtime(resolvedGareId);", hookCall); } fs.writeFileSync(fullPath, content, 'utf8'); console.log(`Patched ${p}`); }