veza/apps/web/scripts/replace-console-logs.sh

47 lines
1.9 KiB
Bash
Executable file

#!/bin/bash
# FIX #18: Script pour remplacer console.* par logger.* dans le frontend
# Usage: ./scripts/replace-console-logs.sh
echo "🔄 Remplacement des console.* par logger.* dans le frontend..."
# Trouver tous les fichiers TypeScript/TSX
find apps/web/src -type f \( -name "*.ts" -o -name "*.tsx" \) ! -name "*.test.ts" ! -name "*.test.tsx" | while read file; do
# Vérifier si le fichier contient console.log/error/warn/info/debug
if grep -q "console\.\(log\|error\|warn\|info\|debug\)" "$file"; then
echo "📝 Traitement de: $file"
# Ajouter l'import du logger si nécessaire
if ! grep -q "import.*logger.*from.*@/utils/logger" "$file" && ! grep -q "import.*logger.*from.*utils/logger" "$file"; then
# Trouver la dernière ligne d'import
last_import_line=$(grep -n "^import" "$file" | tail -1 | cut -d: -f1)
if [ -n "$last_import_line" ]; then
# Ajouter l'import après la dernière ligne d'import
sed -i "${last_import_line}a import { logger } from '@/utils/logger';" "$file"
else
# Ajouter au début du fichier
sed -i "1i import { logger } from '@/utils/logger';" "$file"
fi
fi
# Remplacer console.log par logger.info
sed -i 's/console\.log(/logger.info(/g' "$file"
# Remplacer console.error par logger.error
sed -i 's/console\.error(/logger.error(/g' "$file"
# Remplacer console.warn par logger.warn
sed -i 's/console\.warn(/logger.warn(/g' "$file"
# Remplacer console.info par logger.info
sed -i 's/console\.info(/logger.info(/g' "$file"
# Remplacer console.debug par logger.debug
sed -i 's/console\.debug(/logger.debug(/g' "$file"
echo "$file traité"
fi
done
echo "✨ Remplacement terminé !"
echo "⚠️ Vérifiez manuellement les fichiers modifiés pour ajuster les paramètres du logger si nécessaire."