Files
discordeno/examples/beginner/src/utils/loader.ts

16 lines
567 B
TypeScript

import { readdir } from 'node:fs/promises'
import logger from './logger.js'
export default async function importDirectory(folder: string): Promise<void> {
const files = await readdir(folder, { recursive: true })
for (const filename of files) {
if (!filename.endsWith('.js')) continue
// Using `file://` and `process.cwd()` to avoid weird issues with relative paths and/or Windows
await import(`file://${process.cwd()}/${folder}/${filename}`).catch((x) =>
logger.fatal(`Cannot import file (${folder}/${filename}) for reason:`, x),
)
}
}