@o3r/schematics
Version:
Schematics module of the Otter framework
30 lines • 1.2 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.NpmExecTask = void 0;
const options_1 = require("@angular-devkit/schematics/tasks/package-manager/options");
const package_manager_runner_1 = require("../../utility/package-manager-runner");
/**
* Configuration used to run an Npm binary during schematics execution
* Note that this only works if the necessary files are created on the disk (doesn't work on tree)
*/
class NpmExecTask {
constructor(script, args = [], workingDirectory) {
this.script = script;
this.args = args;
this.workingDirectory = workingDirectory;
}
toConfiguration() {
const packageManager = (0, package_manager_runner_1.getPackageManager)();
return {
name: options_1.NodePackageName,
options: {
command: 'exec',
packageName: `exec ${this.script} ${packageManager === 'npm' ? '-- ' : ''}${this.args.map((arg) => `"${arg}"`).join(' ')}`,
workingDirectory: this.workingDirectory,
packageManager
}
};
}
}
exports.NpmExecTask = NpmExecTask;
//# sourceMappingURL=npm-exec.js.map
;