Ajout de la gestion des fichiers avec création et suppression de dossiers, sauvegarde et récupération d'images pour les projets
This commit is contained in:
43
src/data/storageManager.js
Normal file
43
src/data/storageManager.js
Normal file
@@ -0,0 +1,43 @@
|
||||
const fs = require('fs');
|
||||
const path = require('path');
|
||||
const PROJECTS_DIR = path.join('.');
|
||||
|
||||
function createFolder(name){
|
||||
const projectDir = path.join(PROJECTS_DIR, `${name}`);
|
||||
if (!fs.existsSync(projectDir)) {
|
||||
fs.mkdirSync(projectDir, { recursive: true });
|
||||
}
|
||||
return projectDir;
|
||||
}
|
||||
|
||||
function deleteFolder(name){
|
||||
const projectDir = path.join(PROJECTS_DIR, `${name
|
||||
}`);
|
||||
if (fs.existsSync
|
||||
(projectDir)) {
|
||||
fs.rmSync(projectDir, { recursive: true, force: true });
|
||||
}
|
||||
}
|
||||
|
||||
function saveFile(filePath, content) {
|
||||
// Ensure content is a buffer
|
||||
if (Buffer.isBuffer(content)) {
|
||||
fs.writeFileSync(filePath, content);
|
||||
} else {
|
||||
throw new Error('Content must be a buffer');
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function getFile(name){
|
||||
const filePath = path.join(PROJECTS_DIR, `${name}`);
|
||||
return fs
|
||||
.readFileSync(filePath);
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
createFolder,
|
||||
deleteFolder,
|
||||
saveFile,
|
||||
getFile
|
||||
};
|
||||
Reference in New Issue
Block a user