diff --git a/bots/discord/src/utils/fs.ts b/bots/discord/src/utils/fs.ts index 07ea43c..b5fc051 100644 --- a/bots/discord/src/utils/fs.ts +++ b/bots/discord/src/utils/fs.ts @@ -1,21 +1,11 @@ -import { readdirSync, statSync } from 'fs' +import { readdirSync } from 'fs' import { dirname, join } from 'path' import { fileURLToPath } from 'bun' -export const listAllFilesRecursive = (dir: string): string[] => { - const files = readdirSync(dir) - const result: string[] = [] - for (const file of files) { - const filePath = join(dir, file) - const fileStat = statSync(filePath) - if (fileStat.isDirectory()) { - result.push(...listAllFilesRecursive(filePath)) - } else { - result.push(filePath) - } - } - return result -} +export const listAllFilesRecursive = (dir: string): string[] => + readdirSync(dir, { recursive: true, withFileTypes: true }) + .filter(x => x.isFile()) + .map(x => join(dir, x.name)) export const pathJoinCurrentDir = (importMetaUrl: string, ...objects: [string, ...string[]]) => join(dirname(fileURLToPath(importMetaUrl)), ...objects)