koi-cli
Version:
A simple CLI made to generate base files and migration files. Must be used with 'koa-typescript-api-v2
29 lines (23 loc) • 1.02 kB
JavaScript
const fs = require('fs');
const fileName = process.argv[2];
const className = process.argv[2].charAt(0).toUpperCase() + process.argv[2].slice(1);
const currentDir = process.cwd()
fs.mkdirSync(`${currentDir}/src/routes/v1`, {recursive: true})
fs.writeFileSync(`${currentDir}/src/routes/v1/${fileName}.ts`,
`import * as Router from 'koa-router';
import { BaseContext } from 'koa';
import { ${className}Controller } from '../../controllers/v1';
import { authService } from './../../services';
const jwtMiddleware = authService.verifyTokenMiddleware();
const route = new Router({ prefix: '/${fileName}' });
const ${fileName}Ctrl = new ${className}Controller();
// Include 'jwtMiddleware' for JWT Authentication
route.get('/', jwtMiddleware, ${fileName}Ctrl.browse);
route.get('/:id', ${fileName}Ctrl.read);
route.patch('/:id', ${fileName}Ctrl.edit);
route.post('/', ${fileName}Ctrl.add);
route.delete('/:id', ${fileName}Ctrl.delete);
export { route as ${fileName}Route };
`, {recursive: true}
)