UNPKG

@strapi/strapi

Version:

An open source headless CMS solution to create and manage your own API. It provides a powerful dashboard and features to make your life easier. Databases supported: MySQL, MariaDB, PostgreSQL, SQLite

46 lines (40 loc) 1.41 kB
'use strict'; var commander = require('commander'); var CLITable = require('cli-table3'); var chalk = require('chalk'); var fp = require('lodash/fp'); var core = require('@strapi/core'); var helpers = require('../../utils/helpers.js'); function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; } var CLITable__default = /*#__PURE__*/_interopDefault(CLITable); var chalk__default = /*#__PURE__*/_interopDefault(chalk); const action = async ()=>{ const appContext = await core.compileStrapi(); const app = await core.createStrapi(appContext).load(); const list = app.server.mount().listRoutes(); const infoTable = new CLITable__default.default({ head: [ chalk__default.default.blue('Method'), chalk__default.default.blue('Path') ], colWidths: [ 20 ] }); list.filter((route)=>route.methods.length).forEach((route)=>{ infoTable.push([ route.methods.map(fp.toUpper).join('|'), route.path ]); }); console.log(infoTable.toString()); await app.destroy(); }; /** * `$ strapi routes:list`` */ const command = ()=>{ return commander.createCommand('routes:list').description('List all the application routes').action(helpers.runAction('routes:list', action)); }; exports.action = action; exports.command = command; //# sourceMappingURL=list.js.map