From 66c63c5d703cfc9163a604b0da70b3745f3278d1 Mon Sep 17 00:00:00 2001 From: Alex Ross Date: Thu, 17 Sep 2020 11:29:54 +0200 Subject: [PATCH] Update npm tasks when npm refresh is run Fixes #106780 --- extensions/npm/src/npmMain.ts | 21 ++++++++++++--------- extensions/npm/src/npmView.ts | 1 - 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/extensions/npm/src/npmMain.ts b/extensions/npm/src/npmMain.ts index a92f554b759..fc0f8a5c557 100644 --- a/extensions/npm/src/npmMain.ts +++ b/extensions/npm/src/npmMain.ts @@ -13,6 +13,14 @@ import { invalidateHoverScriptsCache, NpmScriptHoverProvider } from './scriptHov let treeDataProvider: NpmScriptsTreeDataProvider | undefined; +function invalidateScriptCaches() { + invalidateHoverScriptsCache(); + invalidateTasksCache(); + if (treeDataProvider) { + treeDataProvider.refresh(); + } +} + export async function activate(context: vscode.ExtensionContext): Promise { configureHttpRequest(); context.subscriptions.push(vscode.workspace.onDidChangeConfiguration(e => { @@ -45,6 +53,10 @@ export async function activate(context: vscode.ExtensionContext): Promise context.subscriptions.push(vscode.commands.registerCommand('npm.runSelectedScript', runSelectedScript)); context.subscriptions.push(vscode.commands.registerCommand('npm.runScriptFromFolder', selectAndRunScriptFromFolder)); + context.subscriptions.push(vscode.commands.registerCommand('npm.refresh', () => { + invalidateScriptCaches(); + })); + } function canRunNpmInCurrentWorkspace() { @@ -55,15 +67,6 @@ function canRunNpmInCurrentWorkspace() { } function registerTaskProvider(context: vscode.ExtensionContext): vscode.Disposable | undefined { - - function invalidateScriptCaches() { - invalidateHoverScriptsCache(); - invalidateTasksCache(); - if (treeDataProvider) { - treeDataProvider.refresh(); - } - } - if (vscode.workspace.workspaceFolders) { let watcher = vscode.workspace.createFileSystemWatcher('**/package.json'); watcher.onDidChange((_e) => invalidateScriptCaches()); diff --git a/extensions/npm/src/npmView.ts b/extensions/npm/src/npmView.ts index c7c7835fa04..c1145d0806b 100644 --- a/extensions/npm/src/npmView.ts +++ b/extensions/npm/src/npmView.ts @@ -129,7 +129,6 @@ export class NpmScriptsTreeDataProvider implements TreeDataProvider { subscriptions.push(commands.registerCommand('npm.runScript', this.runScript, this)); subscriptions.push(commands.registerCommand('npm.debugScript', this.debugScript, this)); subscriptions.push(commands.registerCommand('npm.openScript', this.openScript, this)); - subscriptions.push(commands.registerCommand('npm.refresh', this.refresh, this)); subscriptions.push(commands.registerCommand('npm.runInstall', this.runInstall, this)); } -- GitLab