diff --git a/package.json b/package.json index 2690538..6c5a1fa 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "flummpress", - "version": "2.0.3", + "version": "2.0.4", "description": "Express für arme", "main": "src/index.mjs", "repository": { diff --git a/src/router.mjs b/src/router.mjs index 1bed06a..8243326 100644 --- a/src/router.mjs +++ b/src/router.mjs @@ -11,14 +11,11 @@ export default class Router { }; async importRoutesFromPath(p, tpl = false) { - await Promise.all( - fs.readdirSync(path.resolve() + "/" + p) - .filter(r => r.endsWith(".mjs")) - .map(async r => { - const tmp = (await import(`${path.resolve()}/${p}/${r}`)).default(this, tpl); - this.use(tmp); - }) - ); + for(let tmp of await fs.promises.readdir(path.resolve() + '/' + p, { withFileTypes: true })) + if(tmp.isFile() && tmp.name.endsWith('.mjs')) + this.use((await import(`${path.resolve()}/${p}/${tmp.name}`)).default(this, tpl)); + else if(tmp.isDirectory()) + await this.importRoutesFromPath(p + '/' + tmp.name); return this; };