const getAllFiles = function(dirPath, arrayOfFiles) { files = fs.readdirSync(dirPath) arrayOfFiles = arrayOfFiles || [] files.forEach(function(file) { if (file !== ".git") { if (fs.statSync(dirPath + "/" + file).isDirectory()) { arrayOfFiles = getAllFiles(dirPath + "/" + file, arrayOfFiles) } else { arrayOfFiles.push(dirPath + "/" + file) } } }) return arrayOfFiles } module.exports = (pkg) => { asize = getAllFiles((home + "/packages/" + pkg).replaceAll("\\", "/")).map(i => i.replaceAll("\\", "/").replaceAll((home + "/packages/" + pkg).replaceAll("\\", "/") + "/", "")).map(i => fs.readFileSync(home + "/packages/" + pkg + "/" + i).length).reduce((a, b) => a + b); if (asize > 1024) { if (asize > 1048576) { return (asize / 1048576).toFixed(1) + "M"; } else { return (asize / 1024).toFixed(1) + "K"; } } else { return asize + "B"; } }