UNPKG

@strapi/generators

Version:

Interactive API generator.

41 lines (38 loc) 1.4 kB
import tsUtils from '@strapi/typescript-utils'; import getDestinationPrompts from './prompts/get-destination-prompts.mjs'; import validateInput from './utils/validate-input.mjs'; import getFilePath from './utils/get-file-path.mjs'; var generateMiddleware = ((plop)=>{ // middleware generator plop.setGenerator('middleware', { description: 'Generate a middleware for an API', prompts: [ { type: 'input', name: 'name', message: 'Middleware name', validate: (input)=>validateInput(input) }, ...getDestinationPrompts('middleware', plop.getDestBasePath(), { rootFolder: true }) ], actions (answers) { if (!answers) { return []; } const filePath = getFilePath(answers.destination); const currentDir = process.cwd(); const language = tsUtils.isUsingTypeScriptSync(currentDir) ? 'ts' : 'js'; return [ { type: 'add', path: `${filePath}/middlewares/{{ name }}.${language}`, templateFile: `templates/${language}/middleware.${language}.hbs` } ]; } }); }); export { generateMiddleware as default }; //# sourceMappingURL=middleware.mjs.map