From 64324a8be13dc2b766636a1042ae13d3d52a5c79 Mon Sep 17 00:00:00 2001 From: Jiralite <33201955+Jiralite@users.noreply.github.com> Date: Mon, 8 May 2023 08:00:09 +0100 Subject: [PATCH] feat: Check for empty directory (#9539) * feat: check for empty directory * fix: correct error Co-authored-by: space --------- Co-authored-by: space --- packages/create-discord-bot/src/create-discord-bot.ts | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/packages/create-discord-bot/src/create-discord-bot.ts b/packages/create-discord-bot/src/create-discord-bot.ts index 6a1afaf40..82abf8848 100755 --- a/packages/create-discord-bot/src/create-discord-bot.ts +++ b/packages/create-discord-bot/src/create-discord-bot.ts @@ -1,7 +1,7 @@ #!/usr/bin/env node // eslint-disable-next-line n/shebang -import { cpSync, existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs'; +import { cpSync, existsSync, mkdirSync, readdirSync, readFileSync, writeFileSync } from 'node:fs'; import path from 'node:path'; import process from 'node:process'; import { URL } from 'node:url'; @@ -28,6 +28,12 @@ if (!directory) { const root = path.resolve(directory); const directoryName = path.basename(root); +if (existsSync(root) && readdirSync(root).length > 0) { + console.error(chalk.red(`The directory ${chalk.yellow(`"${directoryName}"`)} is not empty.`)); + console.error(chalk.red(`Please specify an empty directory.`)); + process.exit(1); +} + // We'll use the directory name as the project name. Check npm name validity. const validationResult = validateProjectName(directoryName);