mirror of
https://github.com/microsoft/vscode.git
synced 2026-05-03 23:06:49 +01:00
Add node as npm script runner (#236967)
* refactor: Separate `createScriptRunnerTask` and `createInstallationTask` from `createTask` * feat: Add `npm.scriptRunner` * feat: Add Node.js as script runner * refactor: Refactor `isPrePostScript` * refactor: Extract `get*Command` * fix: Typo * style: Remove no-op `catch`es * fix: `node --run` doesn't support `--silent` * refactor: Use `.map` in `escapeCommandLine` * chore: Remove TODO Upstream reviewer is ok with current state
This commit is contained in:
@@ -13,9 +13,10 @@ import {
|
||||
} from 'vscode';
|
||||
import { readScripts } from './readScripts';
|
||||
import {
|
||||
createTask, getPackageManager, getTaskName, isAutoDetectionEnabled, isWorkspaceFolder, INpmTaskDefinition,
|
||||
createInstallationTask, getTaskName, isAutoDetectionEnabled, isWorkspaceFolder, INpmTaskDefinition,
|
||||
NpmTaskProvider,
|
||||
startDebugging,
|
||||
detectPackageManager,
|
||||
ITaskWithLocation,
|
||||
INSTALL_SCRIPT
|
||||
} from './tasks';
|
||||
@@ -150,8 +151,8 @@ export class NpmScriptsTreeDataProvider implements TreeDataProvider<TreeItem> {
|
||||
}
|
||||
|
||||
private async runScript(script: NpmScript) {
|
||||
// Call getPackageManager to trigger the multiple lock files warning.
|
||||
await getPackageManager(this.context, script.getFolder().uri);
|
||||
// Call detectPackageManager to trigger the multiple lock files warning.
|
||||
await detectPackageManager(script.getFolder().uri, this.context, true);
|
||||
tasks.executeTask(script.task);
|
||||
}
|
||||
|
||||
@@ -181,7 +182,7 @@ export class NpmScriptsTreeDataProvider implements TreeDataProvider<TreeItem> {
|
||||
if (!uri) {
|
||||
return;
|
||||
}
|
||||
const task = await createTask(await getPackageManager(this.context, selection.folder.workspaceFolder.uri, true), 'install', ['install'], selection.folder.workspaceFolder, uri, undefined, []);
|
||||
const task = await createInstallationTask(this.context, selection.folder.workspaceFolder, uri);
|
||||
tasks.executeTask(task);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user