copy-static.js•1.37 kB
import fs from 'fs';
import path from 'path';
import { fileURLToPath } from 'url';
// Obtenir le chemin du répertoire actuel
const __filename = fileURLToPath(import.meta.url);
const __dirname = path.dirname(__filename);
// Chemins source et destination
const srcDir = path.join(__dirname, '..', 'src', 'public');
const destDir = path.join(__dirname, '..', 'dist', 'public');
// Fonction pour copier un répertoire de manière récursive
function copyDir(src, dest) {
// Créer le répertoire de destination s'il n'existe pas
if (!fs.existsSync(dest)) {
fs.mkdirSync(dest, { recursive: true });
}
// Lire le contenu du répertoire source
const entries = fs.readdirSync(src, { withFileTypes: true });
for (const entry of entries) {
const srcPath = path.join(src, entry.name);
const destPath = path.join(dest, entry.name);
// Si c'est un répertoire, copier récursivement
if (entry.isDirectory()) {
copyDir(srcPath, destPath);
} else {
// Sinon, copier le fichier
fs.copyFileSync(srcPath, destPath);
}
}
}
// Exécuter la copie
try {
console.log(`Copie des fichiers statiques de ${srcDir} vers ${destDir}...`);
copyDir(srcDir, destDir);
console.log('Copie terminée avec succès !');
} catch (error) {
console.error('Erreur lors de la copie des fichiers statiques:', error);
process.exit(1);
}