diff options
Diffstat (limited to 'src/routes.js')
| -rw-r--r-- | src/routes.js | 67 |
1 files changed, 35 insertions, 32 deletions
diff --git a/src/routes.js b/src/routes.js index 42d26c1..963cc89 100644 --- a/src/routes.js +++ b/src/routes.js @@ -1,47 +1,50 @@ const fs = require('fs') const path = require('path') -const logger = require('./logger')() class Routes { - constructor(x) { - const object = { - routesDir: path.resolve(`${__dirname}/../routes`), - } + constructor() { + this.routes = new Map() + this.pages = new Map() + this.allPages = new Map() + + this.#SetRoutes() + this.#SetPages() + this.#SetAllPages() + } + + GetRoutes() {return this.routes} + GetPages() {return this.pages} + GetAllPages() {return this.allPages} + + #SetRoutes() { + const object = {routesDir: path.resolve(`${__dirname}/../routes`)} + this.routes = this.#ReadFiles(object) + } + #SetPages() { + const object = {routesDir: path.resolve(`${__dirname}/../pages/nested`)} + this.pages = this.#ReadFiles(object) + } + #SetAllPages() { + const object = {routesDir: path.resolve(`${__dirname}/../pages`)} + this.allPages = this.#ReadFiles(object) + } + #ReadFiles(object) { + const map = new Map() object.files = fs.readdirSync(object.routesDir).filter(file => file.endsWith('.js')) object.files.forEach(file => { try { - console.log(file) + const name = file.replace('.js', '') + const routePath = path.join(object.routesDir, file) + const routeObject = require(routePath) + map.set(name, routeObject) } catch (err) { - logger.Error(err) + console.error(err) } }) - this.app = x.app - this.routes = new Map() - - + return map } - - Route() {return new Map()} } -module.exports = (x) => { - const routes = new Routes({ - app: x.app - }) - - const createRoute = () => { - const temp = routes.CreateRoute({ - path: x.path, - req: req, - methods: x.methods - }) - - console.log(temp) - } - - return { - createRoute: createRoute - } -} +module.exports = () => {return new Routes()} |
