From dd84b9d64fb98746a230cd24233ff50a562c39c9 Mon Sep 17 00:00:00 2001 From: 简律纯 Date: Fri, 28 Apr 2023 01:36:44 +0800 Subject: --- packages/turbo-codemod/plopfile.js | 46 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 packages/turbo-codemod/plopfile.js (limited to 'packages/turbo-codemod/plopfile.js') diff --git a/packages/turbo-codemod/plopfile.js b/packages/turbo-codemod/plopfile.js new file mode 100644 index 0000000..9cc2dd7 --- /dev/null +++ b/packages/turbo-codemod/plopfile.js @@ -0,0 +1,46 @@ +const fs = require("fs-extra"); + +module.exports = function plopConfig(plop) { + // controller generator + plop.setGenerator("controller", { + description: "Add a new transformer", + prompts: [ + { + type: "input", + name: "name", + message: 'key for the transform (example: "create-turbo-config")', + }, + { + type: "input", + name: "description", + message: + 'description for the transform (example: "Create the `turbo.json` file from an existing "turbo" key in `package.json`")', + }, + { + type: "input", + name: "introducedIn", + message: + 'the semantic version of turbo where this change was introduced (example: "1.1.0")', + }, + ], + actions: [ + { + type: "add", + path: "src/transforms/{{name}}.ts", + templateFile: "templates/transformer.hbs", + }, + { + type: "add", + path: "__tests__/{{name}}.test.ts", + templateFile: "templates/transformer.test.hbs", + }, + function createFixturesDirectory(answers) { + process.chdir(plop.getPlopfilePath()); + const directory = `__tests__/__fixtures__/${answers.name}`; + fs.mkdirSync(`__tests__/__fixtures__/${answers.name}`); + + return `created empty ${directory} directory for fixtures`; + }, + ], + }); +}; -- cgit v1.2.3-70-g09d2