UNPKG

@kya-os/create-xmcpi-app

Version:
55 lines 1.53 kB
import fs from "fs"; import path from "path"; export function isFolderEmpty(root, name) { const validFiles = [ ".DS_Store", ".git", ".gitattributes", ".gitignore", ".gitlab-ci.yml", ".hg", ".hgcheck", ".hgignore", ".idea", ".npmignore", ".travis.yml", "LICENSE", "Makefile", "README.md", "Thumbs.db", "docs", "mkdocs.yml", "npm-debug.log", "yarn-debug.log", "yarn-error.log", ]; const conflicts = fs .readdirSync(root) .filter((file) => !validFiles.includes(file)) // Support IntelliJ IDEA-based editors .filter((file) => !/\.iml$/.test(file)); if (conflicts.length > 0) { console.log(`The directory ${name} contains conflicting files:\n`); console.log(); for (const file of conflicts) { try { const stats = fs.lstatSync(path.join(root, file)); if (stats.isDirectory()) { console.log(` ${file}/`); } else { console.log(` ${file}`); } } catch { console.log(` ${file}`); } } console.log(); console.log("Either try using a new directory name, or remove the conflicting files."); console.log(); return false; } return true; } //# sourceMappingURL=is-folder-empty.js.map