@navikt/aksel
Version:
Aksel command line interface. Handles css-imports, codemods and more
36 lines (35 loc) • 1.82 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.codemodCommand = codemodCommand;
const chalk_1 = __importDefault(require("chalk"));
const commander_1 = require("commander");
const figlet_1 = __importDefault(require("figlet"));
const migrations_js_1 = require("./migrations.js");
const run_codeshift_js_1 = require("./run-codeshift.js");
const validation_js_1 = require("./validation.js");
const program = new commander_1.Command();
function codemodCommand() {
program.name(`${chalk_1.default.blueBright(`npx @navikt/aksel`)}`);
program
.command("codemod")
.addHelpText("beforeAll", figlet_1.default.textSync("Codemods"))
.addHelpText("afterAll", chalk_1.default.gray(`\nAvailable migrations:\n${(0, migrations_js_1.getMigrationString)()}`))
.description("Migrations for Aksel components and more")
.argument("<migration>", "Migration name")
.option("-e, --ext [extension]", "default: js,ts,jsx,tsx,css,scss,less")
.option("-g, --glob [glob]", "Globbing pattern, overrides --ext! Run with 'noglob' if using zsh-terminal. ")
.option("-d, --dry-run", "Dry run, no changes will be made")
.option("-p, --print", "Print transformed files")
.option("-f, --force", "Forcibly run migrations without checking git-changes")
.addHelpText("after", `\nExample:
$ npx @navikt/aksel --dry-run v2-css`)
.action((str, options) => {
(0, validation_js_1.validateMigration)(str, program);
(0, validation_js_1.validateGit)(options, program);
(0, run_codeshift_js_1.runCodeshift)(str, options, program);
});
program.parse();
}