From ada4bf1b7ae2d22457de38c7ac98822d283d9537 Mon Sep 17 00:00:00 2001 From: avi Date: Sat, 26 Oct 2024 00:28:53 +0530 Subject: [PATCH 01/19] refactor code --- src/commands/betterComments.js | 7 +- src/commands/forceCheckPackages.js | 8 +- src/commands/nodePackageManager.js | 152 +++++++++++---------------- src/commands/sfdxScannerInstaller.js | 69 ++++-------- src/commands/workspaceSettings.js | 33 ++++-- src/extension.js | 124 +++++++++------------- src/utils/CommonUtils.js | 34 ++++++ src/utils/InitialSetup.js | 41 ++++++++ src/utils/settingsManager.js | 2 +- 9 files changed, 236 insertions(+), 234 deletions(-) create mode 100644 src/utils/CommonUtils.js create mode 100644 src/utils/InitialSetup.js diff --git a/src/commands/betterComments.js b/src/commands/betterComments.js index 3f2257e..b186a7b 100644 --- a/src/commands/betterComments.js +++ b/src/commands/betterComments.js @@ -1,5 +1,6 @@ const vscode = require("vscode"); -const { EXTENSION_NAME, BETTER_COMMENTS_TAG } = require("../utils/constants"); +const { BETTER_COMMENTS_TAG } = require("../utils/constants"); +const CommonUtils = require("../utils/CommonUtils"); class BetterComments { static updateSettings() { @@ -9,8 +10,8 @@ class BetterComments { BETTER_COMMENTS_TAG, vscode.ConfigurationTarget.Global ); - vscode.window.showInformationMessage( - `${EXTENSION_NAME}: Updated Better Comments settings globally.` + CommonUtils.showInformationMessage( + "Updated Better Comments settings globally." ); } } diff --git a/src/commands/forceCheckPackages.js b/src/commands/forceCheckPackages.js index 077658f..addcc8d 100644 --- a/src/commands/forceCheckPackages.js +++ b/src/commands/forceCheckPackages.js @@ -1,11 +1,11 @@ const vscode = require("vscode"); -const NodePackageManager = require("./nodePackageManager"); -const { EXTENSION_NAME } = require("../utils/constants"); +const NodePackageManager = require("./NodePackageManager"); +const CommonUtils = require("../utils/CommonUtils"); class ForceCheckPackages { static async checkPackages(context) { - vscode.window.showInformationMessage( - `${EXTENSION_NAME}: Checking and installing required packages and plugins...` + CommonUtils.showInformationMessage( + "Checking and installing required packages and plugins..." ); context.globalState.update("dev-pack-salesforce.packages-checked", false); context.globalState.update( diff --git a/src/commands/nodePackageManager.js b/src/commands/nodePackageManager.js index 47e9569..718c7fb 100644 --- a/src/commands/nodePackageManager.js +++ b/src/commands/nodePackageManager.js @@ -1,7 +1,7 @@ const vscode = require("vscode"); -const { exec } = require("child_process"); const { EXTENSION_NAME, REQUIRED_PACKAGES } = require("../utils/constants"); -const SfdxScannerInstaller = require("./sfdxScannerInstaller"); +const SfdxScannerInstaller = require("./SfdxScannerInstaller"); +const CommonUtils = require("../utils/CommonUtils"); class NodePackageManager { static async managePackages(context) { @@ -9,8 +9,10 @@ class NodePackageManager { await this.checkNodeInstallation(); const missingPackages = await this.checkRequiredPackages(context); if (missingPackages.length > 0) { - const userConfirmed = await this.promptForPackageInstallation( - missingPackages + const userConfirmed = await CommonUtils.promptForConfirmation( + `The following node packages will be installed globally: ${missingPackages.join( + ", " + )}. Do you want to proceed?` ); if (userConfirmed) { await this.installMissingPackages(missingPackages); @@ -22,66 +24,54 @@ class NodePackageManager { } } - static checkNodeInstallation() { - return new Promise((resolve, reject) => { - exec("node -v", (error, stdout, stderr) => { - if (error) { - reject( - `${EXTENSION_NAME}: Node.js is not installed. Please install Node.js to use this extension.` - ); - } else { - resolve(); - } - }); - }); + static async checkNodeInstallation() { + try { + await CommonUtils.execCommand("node -v"); + } catch (error) { + throw new Error( + `${EXTENSION_NAME}: Node.js is not installed. Please install Node.js to use this extension.` + ); + } } - static checkRequiredPackages(context) { - return new Promise((resolve, reject) => { + static async checkRequiredPackages(context) { + try { const packagesToCheck = REQUIRED_PACKAGES; - const packagesToInstall = REQUIRED_PACKAGES; + const stdout = await CommonUtils.execCommand( + `npm list -g ${packagesToCheck.join(" ")}` + ); - exec( - `npm list -g ${packagesToCheck.join(" ")}`, - (error, stdout, stderr) => { - if (!error) { - if ( - !context.globalState.get("dev-pack-salesforce.packages-checked") - ) { - vscode.window.showInformationMessage( - `${EXTENSION_NAME}: Required packages are already installed.` - ); - context.globalState.update( - "dev-pack-salesforce.packages-checked", - true - ); - } - resolve([]); - } else { - const missingPackages = this.getMissingPackages( - stdout, - packagesToInstall - ); - if (missingPackages.length === 0) { - if ( - !context.globalState.get("dev-pack-salesforce.packages-checked") - ) { - vscode.window.showInformationMessage( - `${EXTENSION_NAME}: All required packages are already installed.` - ); - context.globalState.update( - "dev-pack-salesforce.packages-checked", - true - ); - } - resolve([]); - } else { - resolve(missingPackages); - } - } - } + if (!context.globalState.get("dev-pack-salesforce.packages-checked")) { + CommonUtils.showInformationMessage( + "Required packages are already installed." + ); + context.globalState.update( + "dev-pack-salesforce.packages-checked", + true + ); + } + + const missingPackages = this.getMissingPackages(stdout, packagesToCheck); + return missingPackages; + } catch (error) { + const stdout = error.message; + const missingPackages = this.getMissingPackages( + stdout, + REQUIRED_PACKAGES ); - }); + if (missingPackages.length === 0) { + if (!context.globalState.get("dev-pack-salesforce.packages-checked")) { + CommonUtils.showInformationMessage( + "All required packages are already installed." + ); + context.globalState.update( + "dev-pack-salesforce.packages-checked", + true + ); + } + } + return missingPackages; + } } static getMissingPackages(stdout, packagesToInstall) { @@ -100,40 +90,18 @@ class NodePackageManager { return missingPackages; } - static promptForPackageInstallation(missingPackages) { - return new Promise((resolve) => { - vscode.window - .showInformationMessage( - `${EXTENSION_NAME}: The following node packages will be installed globally: ${missingPackages.join( - ", " - )}. Do you want to proceed?`, - "Yes", - "No" - ) - .then((selection) => { - resolve(selection === "Yes"); - }); - }); - } - - static installMissingPackages(missingPackages) { - return new Promise((resolve, reject) => { + static async installMissingPackages(missingPackages) { + try { const installCommand = `npm install -g ${missingPackages.join(" ")}`; - exec(installCommand, (error, stdout, stderr) => { - if (error) { - reject( - `${EXTENSION_NAME}: Failed to install npm packages: ${stderr}` - ); - } else { - vscode.window.showInformationMessage( - `${EXTENSION_NAME}: Successfully installed npm packages: ${missingPackages.join( - ", " - )}` - ); - resolve(); - } - }); - }); + await CommonUtils.execCommand(installCommand); + CommonUtils.showInformationMessage( + `Successfully installed npm packages: ${missingPackages.join(", ")}` + ); + } catch (error) { + throw new Error( + `${EXTENSION_NAME}: Failed to install npm packages: ${error.message}` + ); + } } } diff --git a/src/commands/sfdxScannerInstaller.js b/src/commands/sfdxScannerInstaller.js index 3d52ae2..04e2da8 100644 --- a/src/commands/sfdxScannerInstaller.js +++ b/src/commands/sfdxScannerInstaller.js @@ -1,13 +1,14 @@ const vscode = require("vscode"); -const { exec } = require("child_process"); -const { EXTENSION_NAME } = require("../utils/constants"); +const CommonUtils = require("../utils/CommonUtils"); class SfdxScannerInstaller { static async install(context) { try { - const plugins = await this.execCommand("sf plugins"); + const plugins = await CommonUtils.execCommand("sf plugins"); if (!plugins.includes("@salesforce/sfdx-scanner")) { - const userConfirmed = await this.promptForInstallation(); + const userConfirmed = await CommonUtils.promptForConfirmation( + "The @salesforce/sfdx-scanner plugin is not installed. Do you want to install it?" + ); if (userConfirmed) { await this.installPlugin(); } @@ -15,8 +16,8 @@ class SfdxScannerInstaller { if ( !context.globalState.get("dev-pack-salesforce.sfdx-scanner-checked") ) { - vscode.window.showInformationMessage( - `${EXTENSION_NAME}: The @salesforce/sfdx-scanner plugin is already installed. SFDX setup is complete.` + CommonUtils.showInformationMessage( + "The @salesforce/sfdx-scanner plugin is already installed. SFDX setup is complete." ); context.globalState.update( "dev-pack-salesforce.sfdx-scanner-checked", @@ -29,52 +30,18 @@ class SfdxScannerInstaller { } } - static execCommand(command) { - return new Promise((resolve, reject) => { - exec(command, (error, stdout, stderr) => { - if (error) { - reject( - `${EXTENSION_NAME}: Failed to execute command "${command}": ${stderr}` - ); - } else { - resolve(stdout); - } - }); - }); - } - - static promptForInstallation() { - return new Promise((resolve) => { - vscode.window - .showInformationMessage( - `${EXTENSION_NAME}: The @salesforce/sfdx-scanner plugin is not installed. Do you want to install it?`, - "Yes", - "No" - ) - .then((selection) => { - resolve(selection === "Yes"); - }); - }); - } - static installPlugin() { - return new Promise((resolve, reject) => { - exec( - "sf plugins:install @salesforce/sfdx-scanner", - (error, stdout, stderr) => { - if (error) { - reject( - `${EXTENSION_NAME}: Failed to install SFDX scanner plugin: ${stderr}` - ); - } else { - vscode.window.showInformationMessage( - `${EXTENSION_NAME}: Successfully installed SFDX scanner plugin.` - ); - resolve(); - } - } - ); - }); + return CommonUtils.execCommand( + "sf plugins:install @salesforce/sfdx-scanner" + ) + .then(() => { + CommonUtils.showInformationMessage( + "Successfully installed SFDX scanner plugin." + ); + }) + .catch((error) => { + vscode.window.showErrorMessage(error); + }); } } diff --git a/src/commands/workspaceSettings.js b/src/commands/workspaceSettings.js index 398f90e..6782d55 100644 --- a/src/commands/workspaceSettings.js +++ b/src/commands/workspaceSettings.js @@ -1,12 +1,25 @@ const vscode = require("vscode"); -const { - EXTENSION_NAME, - APEX_SETTINGS, - JAVASCRIPT_SETTINGS, -} = require("../utils/constants"); -const BetterCommentsUpdater = require("./betterComments"); +const { APEX_SETTINGS, JAVASCRIPT_SETTINGS } = require("../utils/constants"); +const BetterCommentsUpdater = require("./BetterComments"); +const CommonUtils = require("../utils/CommonUtils"); + +class WorkspaceSettings { + static checkAndUpdateSettings(context) { + const config = vscode.workspace.getConfiguration("devPackSalesforce"); + const autoUpdateSettings = config.get("autoUpdateSettings"); + const isNewWorkspace = !context.globalState.get( + "dev-pack-salesforce.workspace-initialized" + ); + + if (autoUpdateSettings && isNewWorkspace) { + this.updateSettings(); + context.globalState.update( + "dev-pack-salesforce.workspace-initialized", + true + ); + } + } -class Workspace { static updateSettings() { const config = vscode.workspace.getConfiguration(); @@ -23,10 +36,10 @@ class Workspace { BetterCommentsUpdater.updateSettings(); - vscode.window.showInformationMessage( - `${EXTENSION_NAME}: Updated settings for Apex and JavaScript` + CommonUtils.showInformationMessage( + "Updated settings for Apex and JavaScript" ); } } -module.exports = Workspace; +module.exports = WorkspaceSettings; diff --git a/src/extension.js b/src/extension.js index ae23638..fa0a2f0 100644 --- a/src/extension.js +++ b/src/extension.js @@ -1,91 +1,69 @@ const vscode = require("vscode"); const { EXTENSION_NAME } = require("./utils/constants"); -const NodePackageManager = require("./commands/nodePackageManager"); -const SettingsManager = require("./utils/settingsManager"); -const WorkspaceSettings = require("./commands/workspaceSettings"); -const BetterComments = require("./commands/betterComments"); -const ForceCheckPackages = require("./commands/forceCheckPackages"); +const NodePackageManager = require("./commands/NodePackageManager"); +const SettingsManager = require("./utils/SettingsManager"); +const WorkspaceSettings = require("./commands/WorkspaceSettings"); +const BetterComments = require("./commands/BetterComments"); +const ForceCheckPackages = require("./commands/ForceCheckPackages"); +const InitialSetup = require("./utils/InitialSetup"); -async function activate(context) { - console.log( - `Congratulations, your extension "${EXTENSION_NAME}" is now active!` - ); - - await setInitialTheme(context); - await NodePackageManager.managePackages(context); - registerCommands(context); - await SettingsManager.manageSettings(context); - await checkAndUpdateSettings(context); -} - -async function setInitialTheme(context) { - if (!context.globalState.get("dev-pack-salesforce.has-theme-set")) { - await vscode.workspace - .getConfiguration() - .update("workbench.iconTheme", "vscode-icons", true); - await vscode.workspace - .getConfiguration() - .update("workbench.colorTheme", "One Dark Pro Darker", true); - context.globalState.update("dev-pack-salesforce.has-theme-set", true); +class Extension { + constructor(context) { + this.context = context; } - if (!context.globalState.get("dev-pack-salesforce.has-better-comments-set")) { - BetterComments.updateSettings(); - context.globalState.update( - "dev-pack-salesforce.has-better-comments-set", - true + async activate() { + console.log( + `Congratulations, your extension "${EXTENSION_NAME}" is now active!` ); - } -} - -function registerCommands(context) { - context.subscriptions.push( - vscode.commands.registerCommand( - "dev-pack-salesforce.forceCheckPackages", - () => { - ForceCheckPackages.checkPackages(context); - } - ) - ); - context.subscriptions.push( - vscode.commands.registerCommand( - "dev-pack-salesforce.updateSettings", - () => { - WorkspaceSettings.updateSettings(); - } - ) - ); + await InitialSetup.setup(this.context); + await NodePackageManager.managePackages(this.context); + this.registerCommands(); + await SettingsManager.manageSettings(this.context); + WorkspaceSettings.checkAndUpdateSettings(this.context); + } - context.subscriptions.push( - vscode.commands.registerCommand( - "dev-pack-salesforce.updateBetterCommentsSettings", - () => { - BetterComments.updateSettings(); - } - ) - ); -} + registerCommands() { + this.context.subscriptions.push( + vscode.commands.registerCommand( + "dev-pack-salesforce.forceCheckPackages", + () => { + ForceCheckPackages.checkPackages(this.context); + } + ) + ); -async function checkAndUpdateSettings(context) { - const config = vscode.workspace.getConfiguration("devPackSalesforce"); - const autoUpdateSettings = config.get("autoUpdateSettings"); - const isNewWorkspace = !context.globalState.get( - "dev-pack-salesforce.workspace-initialized" - ); + this.context.subscriptions.push( + vscode.commands.registerCommand( + "dev-pack-salesforce.updateSettings", + () => { + WorkspaceSettings.updateSettings(); + } + ) + ); - if (autoUpdateSettings && isNewWorkspace) { - WorkspaceSettings.updateSettings(); - context.globalState.update( - "dev-pack-salesforce.workspace-initialized", - true + this.context.subscriptions.push( + vscode.commands.registerCommand( + "dev-pack-salesforce.updateBetterCommentsSettings", + () => { + BetterComments.updateSettings(); + } + ) ); } + + deactivate() {} } -exports.activate = activate; +function activate(context) { + const extension = new Extension(context); + extension.activate(); +} -function deactivate() {} +function deactivate() { + // Add any cleanup logic here if needed +} module.exports = { activate, diff --git a/src/utils/CommonUtils.js b/src/utils/CommonUtils.js new file mode 100644 index 0000000..337d41e --- /dev/null +++ b/src/utils/CommonUtils.js @@ -0,0 +1,34 @@ +const vscode = require("vscode"); +const { exec } = require("child_process"); +const { EXTENSION_NAME } = require("../utils/constants"); + +class CommonUtils { + static execCommand(command) { + return new Promise((resolve, reject) => { + exec(command, (error, stdout, stderr) => { + if (error) { + reject( + `${EXTENSION_NAME}: Failed to execute command "${command}": ${stderr}` + ); + } else { + resolve(stdout); + } + }); + }); + } + + static showInformationMessage(message) { + vscode.window.showInformationMessage(`${EXTENSION_NAME}: ${message}`); + } + + static async promptForConfirmation(message) { + const selection = await vscode.window.showInformationMessage( + `${EXTENSION_NAME}: ${message}`, + "Yes", + "No" + ); + return selection === "Yes"; + } +} + +module.exports = CommonUtils; diff --git a/src/utils/InitialSetup.js b/src/utils/InitialSetup.js new file mode 100644 index 0000000..8a9610c --- /dev/null +++ b/src/utils/InitialSetup.js @@ -0,0 +1,41 @@ +const vscode = require("vscode"); +const BetterComments = require("./commands/betterComments"); +const ForceCheckPackages = require("./commands/forceCheckPackages"); + +class InitialSetup { + static async setup(context) { + try { + await this.setInitialTheme(context); + await this.setBetterComments(context); + await ForceCheckPackages.checkPackages(context); + } catch (error) { + vscode.window.showErrorMessage(error); + } + } + + static async setInitialTheme(context) { + if (!context.globalState.get("dev-pack-salesforce.has-theme-set")) { + await vscode.workspace + .getConfiguration() + .update("workbench.iconTheme", "vscode-icons", true); + await vscode.workspace + .getConfiguration() + .update("workbench.colorTheme", "One Dark Pro Darker", true); + context.globalState.update("dev-pack-salesforce.has-theme-set", true); + } + } + + static async setBetterComments(context) { + if ( + !context.globalState.get("dev-pack-salesforce.has-better-comments-set") + ) { + BetterComments.updateSettings(); + await context.globalState.update( + "dev-pack-salesforce.has-better-comments-set", + true + ); + } + } +} + +module.exports = InitialSetup; diff --git a/src/utils/settingsManager.js b/src/utils/settingsManager.js index 9a6ee12..688a6e8 100644 --- a/src/utils/settingsManager.js +++ b/src/utils/settingsManager.js @@ -1,5 +1,5 @@ const vscode = require("vscode"); -const WorkspaceSettings = require("../commands/workspaceSettings"); +const WorkspaceSettings = require("../commands/WorkspaceSettings"); const { EXTENSION_NAME } = require("./constants"); class SettingsManager { From 97ccb4024adf393ca158c23551ec18fe395ac663 Mon Sep 17 00:00:00 2001 From: avi Date: Sat, 26 Oct 2024 00:29:14 +0530 Subject: [PATCH 02/19] remove package --- dev-pack-salesforce-1.0.9.vsix | Bin 167019 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 dev-pack-salesforce-1.0.9.vsix diff --git a/dev-pack-salesforce-1.0.9.vsix b/dev-pack-salesforce-1.0.9.vsix deleted file mode 100644 index b94d59ac35c8724183a7f7a6ec53f1ef454d5990..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 167019 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 z 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 z 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 Date: Sat, 26 Oct 2024 00:34:48 +0530 Subject: [PATCH 03/19] update pack list --- README.md | 25 +++++++++++++++---------- package.json | 4 +--- 2 files changed, 16 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index 881f276..54afc9a 100644 --- a/README.md +++ b/README.md @@ -6,23 +6,28 @@ Dev Pack for Salesforce is a collection of useful VS Code extensions for Salesfo ## Included Extensions -- [Salesforce Extension Pack](https://marketplace.visualstudio.com/items?itemName=salesforce.salesforcedx-vscode) - - [Salesforce Apex](https://marketplace.visualstudio.com/items?itemName=salesforce.salesforcedx-vscode-apex) - - [Salesforce Lightning Web Components](https://marketplace.visualstudio.com/items?itemName=salesforce.salesforcedx-vscode-lwc) - - [Salesforce SOQL](https://marketplace.visualstudio.com/items?itemName=salesforce.salesforcedx-vscode-soql) - - [Salesforce Core](https://marketplace.visualstudio.com/items?itemName=salesforce.salesforcedx-vscode-core) -- [Agentforce for Developers](https://marketplace.visualstudio.com/items?itemName=salesforce.salesforcedx-einstein-gpt) -- [Markdownlint](https://marketplace.visualstudio.com/items?itemName=DavidAnson.vscode-markdownlint) +- [Salesforce Extension Pack](https://marketplace.visualstudio.com/items?itemName=salesforce.salesforcedx-vscode-expanded) + - [Salesforce CLI Integration](https://marketplace.visualstudio.com/items?itemName=salesforce.salesforcedx-vscode-core) - This extension (salesforcedx-vscode-core) interacts with Salesforce CLI to provide core functionality. + - [Salesforce Apex](https://marketplace.visualstudio.com/items?itemName=salesforce.salesforcedx-vscode-apex) - This extension (salesforcedx-vscode-apex) uses the Apex Language Server to provide features such as syntax highlighting and code completion. + - [Apex Interactive Debugger](https://marketplace.visualstudio.com/items?itemName=salesforce.salesforcedx-vscode-apex-debugger) - This extension (salesforcedx-vscode-apex-debugger) enables VS Code to use the real-time Apex Debugger with your scratch orgs or to use ISV Customer Debugger for your subscribers’ orgs. + - [Apex Replay Debugger](https://marketplace.visualstudio.com/items?itemName=salesforce.salesforcedx-vscode-apex-replay-debugger) - This extension (salesforcedx-vscode-apex-replay-debugger) enables VS Code to replay Apex execution from Apex debug logs. + - [Salesforce Lightning Web Components](https://marketplace.visualstudio.com/items?itemName=salesforce.salesforcedx-vscode-lwc) - This extension supports Lightning web component bundles. It uses the HTML language server from VS Code. + - [Aura Components](https://marketplace.visualstudio.com/items?itemName=salesforce.salesforcedx-vscode-lightning) - This extension (salesforcedx-vscode-lightning) supports Aura component bundles. It uses the HTML language server from VS Code. + - [Visualforce](https://marketplace.visualstudio.com/items?itemName=salesforce.salesforcedx-vscode-visualforce) - This extension (salesforcedx-vscode-visualforce) supports Visualforce pages and components. It uses the Visualforce Language Server and the HTML language server from VS Code. + - [SOQL](https://marketplace.visualstudio.com/items?itemName=salesforce.salesforcedx-vscode-soql) - This extension (salesforcedx-vscode-soql) enables you to interactively build a SOQL query via a form-based visual editor, view the query as you build, and save the output to a .csv or .json file. + - [Salesforce Lightning Design System (SLDS) Validator](https://marketplace.visualstudio.com/items?itemName=salesforce.salesforcedx-vscode-slds) - This extension (salesforcedx-vscode-slds) simplifies working with the Salesforce Lightning Design System (SLDS). It provides code completion, syntax highlighting, and validation with recommended tokens and utility classes. + - [Agentforce for Developers](https://marketplace.visualstudio.com/items?itemName=salesforce.salesforcedx-einstein-gpt) - This extension (salesforcedx-einstein-gpt) uses generative AI to make Salesforce development in Visual Studio Code richer with features such as natural language to code generation, inline autocompletion for Apex and LWC code, and test case generation for Apex classes. + - [Salesforce Code Analyzer](https://marketplace.visualstudio.com/items?itemName=salesforce.sfdx-code-analyzer-vscode) - This extension (sfdx-code-analyzer-vscode) scans your code using multiple rule engines to produce lists of violations that you can use to improve your code. + - [Apex Log Analyzer](https://marketplace.visualstudio.com/items?itemName=financialforce.lana) - This extension helps you analyze Apex logs. +- [One Dark Pro Theme](https://marketplace.visualstudio.com/items?itemName=zhuangtongfa.Material-theme) - [Prettier](https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode) - [ESLint](https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint) - [VSCode Icons](https://marketplace.visualstudio.com/items?itemName=vscode-icons-team.vscode-icons) -- [One Dark Pro Theme](https://marketplace.visualstudio.com/items?itemName=zhuangtongfa.Material-theme) - [Better Comments](https://marketplace.visualstudio.com/items?itemName=aaron-bond.better-comments) - [Indent Rainbow](https://marketplace.visualstudio.com/items?itemName=oderwat.indent-rainbow) -- [Apex Log Analyzer](https://marketplace.visualstudio.com/items?itemName=financialforce.lana) +- [Markdownlint](https://marketplace.visualstudio.com/items?itemName=DavidAnson.vscode-markdownlint) - [Code Spell Checker](https://marketplace.visualstudio.com/items?itemName=streetsidesoftware.code-spell-checker) - [Lightning Flow Scanner](https://marketplace.visualstudio.com/items?itemName=ForceConfigControl.lightningflowscanner) -- [Salesforce Code Analyzer](https://marketplace.visualstudio.com/items?itemName=salesforce.sfdx-code-analyzer-vscode) - [Log File Highlighter](https://marketplace.visualstudio.com/items?itemName=emilast.LogFileHighlighter) ## Installation diff --git a/package.json b/package.json index 0699821..d5ba301 100644 --- a/package.json +++ b/package.json @@ -24,8 +24,7 @@ ], "main": "./src/extension.js", "extensionPack": [ - "salesforce.salesforcedx-vscode", - "salesforce.salesforcedx-einstein-gpt", + "salesforce.salesforcedx-vscode-expanded", "davidanson.vscode-markdownlint", "esbenp.prettier-vscode", "dbaeumer.vscode-eslint", @@ -33,7 +32,6 @@ "zhuangtongfa.material-theme", "aaron-bond.better-comments", "oderwat.indent-rainbow", - "financialforce.lana", "streetsidesoftware.code-spell-checker", "ForceConfigControl.lightningflowscanner", "salesforce.sfdx-code-analyzer-vscode", From 0c944b76a2acd85690b4012b7d4f282865942dab Mon Sep 17 00:00:00 2001 From: avi Date: Sat, 26 Oct 2024 00:35:22 +0530 Subject: [PATCH 04/19] already included in expanded pack --- package.json | 1 - 1 file changed, 1 deletion(-) diff --git a/package.json b/package.json index d5ba301..ec857c8 100644 --- a/package.json +++ b/package.json @@ -34,7 +34,6 @@ "oderwat.indent-rainbow", "streetsidesoftware.code-spell-checker", "ForceConfigControl.lightningflowscanner", - "salesforce.sfdx-code-analyzer-vscode", "emilast.LogFileHighlighter" ], "repository": { From e68f6ca7241baa7a5793ba7a31d22fb60fa8e283 Mon Sep 17 00:00:00 2001 From: avi Date: Sat, 26 Oct 2024 00:41:51 +0530 Subject: [PATCH 05/19] update markdown --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 54afc9a..cf18769 100644 --- a/README.md +++ b/README.md @@ -51,7 +51,8 @@ This setup is only done the first time the extension is installed. Feel free to ## Automatic Package Detection and Installation -Dev Pack for Salesforce automatically detects and prompts you to install the following required npm packages if they are not already installed: +The Dev Pack for Salesforce simplifies and automates the setup of your developer environment. Upon installation, the pack automatically detects and installs required npm packages, as long as Node.js is installed in your system. The required npm packages include: + - `@salesforce/cli` - `prettier` From 74bfdb888b7c67f98814bcb42312183a0e1a1889 Mon Sep 17 00:00:00 2001 From: avi Date: Sat, 26 Oct 2024 00:47:52 +0530 Subject: [PATCH 06/19] add delete apex logs --- package.json | 5 +++++ src/commands/Sfdx.js | 26 ++++++++++++++++++++++++++ src/extension.js | 10 ++++++++++ 3 files changed, 41 insertions(+) create mode 100644 src/commands/Sfdx.js diff --git a/package.json b/package.json index ec857c8..4f44cea 100644 --- a/package.json +++ b/package.json @@ -75,6 +75,11 @@ "command": "dev-pack-salesforce.updateBetterCommentsSettings", "title": "Dev Pack for Salesforce: Update better comments settings", "shortTitle": "Update better comments settings" + }, + { + "command": "dev-pack-salesforce.deleteApexLogs", + "title": "Dev Pack for Salesforce: Delete all apex logs", + "shortTitle": "Delete all apex logs" } ] } diff --git a/src/commands/Sfdx.js b/src/commands/Sfdx.js new file mode 100644 index 0000000..b6fae4f --- /dev/null +++ b/src/commands/Sfdx.js @@ -0,0 +1,26 @@ +const vscode = require("vscode"); +const CommonUtils = require("../utils/CommonUtils"); + +class Sfdx { + static async deleteApexLogs() { + try { + // Step 1: Query ApexLog IDs and save to out.csv + await CommonUtils.execCommand( + `sf data query -q "SELECT Id FROM ApexLog" -r "csv" > out.csv` + ); + + // Step 2: Delete ApexLogs using the out.csv file + await CommonUtils.execCommand( + `sf data delete bulk --sobject ApexLog --file out.csv --wait 1000` + ); + + CommonUtils.showInformationMessage("Successfully deleted all Apex logs."); + } catch (error) { + vscode.window.showErrorMessage( + `${EXTENSION_NAME}: Failed to delete Apex logs: ${error.message}` + ); + } + } +} + +module.exports = Sfdx; diff --git a/src/extension.js b/src/extension.js index fa0a2f0..b4fcf39 100644 --- a/src/extension.js +++ b/src/extension.js @@ -6,6 +6,7 @@ const WorkspaceSettings = require("./commands/WorkspaceSettings"); const BetterComments = require("./commands/BetterComments"); const ForceCheckPackages = require("./commands/ForceCheckPackages"); const InitialSetup = require("./utils/InitialSetup"); +const Sfdx = require("./commands/Sfdx"); class Extension { constructor(context) { @@ -51,6 +52,15 @@ class Extension { } ) ); + + this.context.subscriptions.push( + vscode.commands.registerCommand( + "dev-pack-salesforce.deleteApexLogs", + () => { + Sfdx.deleteApexLogs(); + } + ) + ); } deactivate() {} From 3c0fecbc0daf5eac0fb187a23ee61f4b5ca9ea76 Mon Sep 17 00:00:00 2001 From: Avi Date: Sat, 26 Oct 2024 00:48:18 +0530 Subject: [PATCH 07/19] Rename betterComments.js to BetterComments.js --- src/commands/{betterComments.js => BetterComments.js} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename src/commands/{betterComments.js => BetterComments.js} (100%) diff --git a/src/commands/betterComments.js b/src/commands/BetterComments.js similarity index 100% rename from src/commands/betterComments.js rename to src/commands/BetterComments.js From 88b8a3c50b34780e7c0a67f40d9a1f370fbaec21 Mon Sep 17 00:00:00 2001 From: Avi Date: Sat, 26 Oct 2024 00:48:29 +0530 Subject: [PATCH 08/19] Rename forceCheckPackages.js to ForceCheckPackages.js --- src/commands/{forceCheckPackages.js => ForceCheckPackages.js} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename src/commands/{forceCheckPackages.js => ForceCheckPackages.js} (100%) diff --git a/src/commands/forceCheckPackages.js b/src/commands/ForceCheckPackages.js similarity index 100% rename from src/commands/forceCheckPackages.js rename to src/commands/ForceCheckPackages.js From 41c6c3b2915143f0be4bed48fc18d52a62bab6bb Mon Sep 17 00:00:00 2001 From: Avi Date: Sat, 26 Oct 2024 00:48:44 +0530 Subject: [PATCH 09/19] Rename nodePackageManager.js to NodePackageManager.js --- src/commands/{nodePackageManager.js => NodePackageManager.js} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename src/commands/{nodePackageManager.js => NodePackageManager.js} (100%) diff --git a/src/commands/nodePackageManager.js b/src/commands/NodePackageManager.js similarity index 100% rename from src/commands/nodePackageManager.js rename to src/commands/NodePackageManager.js From e519e887eea87ffb60625ecf317dde979384db14 Mon Sep 17 00:00:00 2001 From: Avi Date: Sat, 26 Oct 2024 00:49:05 +0530 Subject: [PATCH 10/19] Rename sfdxScannerInstaller.js to SfdxScannerInstaller.js --- src/commands/{sfdxScannerInstaller.js => SfdxScannerInstaller.js} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename src/commands/{sfdxScannerInstaller.js => SfdxScannerInstaller.js} (100%) diff --git a/src/commands/sfdxScannerInstaller.js b/src/commands/SfdxScannerInstaller.js similarity index 100% rename from src/commands/sfdxScannerInstaller.js rename to src/commands/SfdxScannerInstaller.js From 922b8c675ff6a7b91707de2a8669b546ac3bd1d1 Mon Sep 17 00:00:00 2001 From: Avi Date: Sat, 26 Oct 2024 00:49:14 +0530 Subject: [PATCH 11/19] Rename workspaceSettings.js to WorkspaceSettings.js --- src/commands/{workspaceSettings.js => WorkspaceSettings.js} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename src/commands/{workspaceSettings.js => WorkspaceSettings.js} (100%) diff --git a/src/commands/workspaceSettings.js b/src/commands/WorkspaceSettings.js similarity index 100% rename from src/commands/workspaceSettings.js rename to src/commands/WorkspaceSettings.js From 1782c2693a4d60d0e6b03cbeaaf05ee9582e92c7 Mon Sep 17 00:00:00 2001 From: Avi Date: Sat, 26 Oct 2024 00:49:27 +0530 Subject: [PATCH 12/19] Rename settingsManager.js to SettingsManager.js --- src/utils/{settingsManager.js => SettingsManager.js} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename src/utils/{settingsManager.js => SettingsManager.js} (100%) diff --git a/src/utils/settingsManager.js b/src/utils/SettingsManager.js similarity index 100% rename from src/utils/settingsManager.js rename to src/utils/SettingsManager.js From b69a8790b8d35dfd200d784264a3a56dd6a878db Mon Sep 17 00:00:00 2001 From: avi Date: Sat, 26 Oct 2024 00:50:08 +0530 Subject: [PATCH 13/19] update version --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 4f44cea..e9757ac 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "dev-pack-salesforce", "displayName": "Dev Pack for Salesforce", "description": "A collection of useful VS Code extensions for Salesforce development", - "version": "1.0.9", + "version": "1.1.0", "publisher": "avidev9", "scripts": { "package": "npx vsce package" From fe1f68607c3602ed18d12b015bbd98b2afd5fc37 Mon Sep 17 00:00:00 2001 From: avi Date: Sat, 26 Oct 2024 00:51:54 +0530 Subject: [PATCH 14/19] update register commands --- src/extension.js | 60 +++++++++++++++++++----------------------------- 1 file changed, 24 insertions(+), 36 deletions(-) diff --git a/src/extension.js b/src/extension.js index b4fcf39..d16c8fc 100644 --- a/src/extension.js +++ b/src/extension.js @@ -17,50 +17,38 @@ class Extension { console.log( `Congratulations, your extension "${EXTENSION_NAME}" is now active!` ); - + this.registerCommands(); await InitialSetup.setup(this.context); await NodePackageManager.managePackages(this.context); - this.registerCommands(); await SettingsManager.manageSettings(this.context); WorkspaceSettings.checkAndUpdateSettings(this.context); } registerCommands() { - this.context.subscriptions.push( - vscode.commands.registerCommand( - "dev-pack-salesforce.forceCheckPackages", - () => { - ForceCheckPackages.checkPackages(this.context); - } - ) - ); + const commands = [ + { + command: "dev-pack-salesforce.forceCheckPackages", + callback: () => ForceCheckPackages.checkPackages(this.context), + }, + { + command: "dev-pack-salesforce.updateSettings", + callback: () => WorkspaceSettings.updateSettings(), + }, + { + command: "dev-pack-salesforce.updateBetterCommentsSettings", + callback: () => BetterComments.updateSettings(), + }, + { + command: "dev-pack-salesforce.deleteApexLogs", + callback: () => Sfdx.deleteApexLogs(), + }, + ]; - this.context.subscriptions.push( - vscode.commands.registerCommand( - "dev-pack-salesforce.updateSettings", - () => { - WorkspaceSettings.updateSettings(); - } - ) - ); - - this.context.subscriptions.push( - vscode.commands.registerCommand( - "dev-pack-salesforce.updateBetterCommentsSettings", - () => { - BetterComments.updateSettings(); - } - ) - ); - - this.context.subscriptions.push( - vscode.commands.registerCommand( - "dev-pack-salesforce.deleteApexLogs", - () => { - Sfdx.deleteApexLogs(); - } - ) - ); + commands.forEach(({ command, callback }) => { + this.context.subscriptions.push( + vscode.commands.registerCommand(command, callback) + ); + }); } deactivate() {} From 41258e3ef0f63ab50ea3b206996466f62bfcb9ba Mon Sep 17 00:00:00 2001 From: avi Date: Sat, 26 Oct 2024 00:54:49 +0530 Subject: [PATCH 15/19] add progress --- src/commands/Sfdx.js | 50 +++++++++++++++++++++++++++++++------------- 1 file changed, 35 insertions(+), 15 deletions(-) diff --git a/src/commands/Sfdx.js b/src/commands/Sfdx.js index b6fae4f..a1969b8 100644 --- a/src/commands/Sfdx.js +++ b/src/commands/Sfdx.js @@ -1,25 +1,45 @@ const vscode = require("vscode"); const CommonUtils = require("../utils/CommonUtils"); +const { EXTENSION_NAME } = require("../utils/constants"); + +const apexLogFileName = "apexlog-out.csv"; class Sfdx { static async deleteApexLogs() { - try { - // Step 1: Query ApexLog IDs and save to out.csv - await CommonUtils.execCommand( - `sf data query -q "SELECT Id FROM ApexLog" -r "csv" > out.csv` - ); + await vscode.window.withProgress( + { + location: vscode.ProgressLocation.Notification, + title: "Deleting Apex Logs", + cancellable: false, + }, + async (progress) => { + try { + progress.report({ message: "Querying ApexLog IDs..." }); + // Step 1: Query ApexLog IDs and save to apexlog-out.csv + await CommonUtils.execCommand( + `sf data query -q "SELECT Id FROM ApexLog" -r "csv" > ${apexLogFileName}` + ); + + progress.report({ message: "Deleting ApexLogs..." }); + // Step 2: Delete ApexLogs using the apexlog-out.csv file + await CommonUtils.execCommand( + `sf data delete bulk --sobject ApexLog --file ${apexLogFileName} --wait 1000` + ); - // Step 2: Delete ApexLogs using the out.csv file - await CommonUtils.execCommand( - `sf data delete bulk --sobject ApexLog --file out.csv --wait 1000` - ); + CommonUtils.showInformationMessage( + "Successfully deleted all Apex logs." + ); - CommonUtils.showInformationMessage("Successfully deleted all Apex logs."); - } catch (error) { - vscode.window.showErrorMessage( - `${EXTENSION_NAME}: Failed to delete Apex logs: ${error.message}` - ); - } + // Step 3: Delete the apexlog-out.csv file using vscode API + const file = vscode.Uri.file(apexLogFileName); + await vscode.workspace.fs.delete(file); + } catch (error) { + vscode.window.showErrorMessage( + `${EXTENSION_NAME}: Failed to delete Apex logs: ${error.message}` + ); + } + } + ); } } From 92e317a5465a91188aa111a395067c7b88823654 Mon Sep 17 00:00:00 2001 From: avi Date: Sat, 26 Oct 2024 00:56:23 +0530 Subject: [PATCH 16/19] add descriptions --- README.md | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index cf18769..b837936 100644 --- a/README.md +++ b/README.md @@ -19,16 +19,16 @@ Dev Pack for Salesforce is a collection of useful VS Code extensions for Salesfo - [Agentforce for Developers](https://marketplace.visualstudio.com/items?itemName=salesforce.salesforcedx-einstein-gpt) - This extension (salesforcedx-einstein-gpt) uses generative AI to make Salesforce development in Visual Studio Code richer with features such as natural language to code generation, inline autocompletion for Apex and LWC code, and test case generation for Apex classes. - [Salesforce Code Analyzer](https://marketplace.visualstudio.com/items?itemName=salesforce.sfdx-code-analyzer-vscode) - This extension (sfdx-code-analyzer-vscode) scans your code using multiple rule engines to produce lists of violations that you can use to improve your code. - [Apex Log Analyzer](https://marketplace.visualstudio.com/items?itemName=financialforce.lana) - This extension helps you analyze Apex logs. -- [One Dark Pro Theme](https://marketplace.visualstudio.com/items?itemName=zhuangtongfa.Material-theme) -- [Prettier](https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode) -- [ESLint](https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint) -- [VSCode Icons](https://marketplace.visualstudio.com/items?itemName=vscode-icons-team.vscode-icons) -- [Better Comments](https://marketplace.visualstudio.com/items?itemName=aaron-bond.better-comments) -- [Indent Rainbow](https://marketplace.visualstudio.com/items?itemName=oderwat.indent-rainbow) -- [Markdownlint](https://marketplace.visualstudio.com/items?itemName=DavidAnson.vscode-markdownlint) -- [Code Spell Checker](https://marketplace.visualstudio.com/items?itemName=streetsidesoftware.code-spell-checker) -- [Lightning Flow Scanner](https://marketplace.visualstudio.com/items?itemName=ForceConfigControl.lightningflowscanner) -- [Log File Highlighter](https://marketplace.visualstudio.com/items?itemName=emilast.LogFileHighlighter) +- [One Dark Pro Theme](https://marketplace.visualstudio.com/items?itemName=zhuangtongfa.Material-theme) - A popular dark theme for Visual Studio Code. +- [Prettier](https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode) - An opinionated code formatter that enforces a consistent style. +- [ESLint](https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint) - Integrates ESLint JavaScript into VS Code. +- [VSCode Icons](https://marketplace.visualstudio.com/items?itemName=vscode-icons-team.vscode-icons) - Adds icons to the Visual Studio Code editor. +- [Better Comments](https://marketplace.visualstudio.com/items?itemName=aaron-bond.better-comments) - Improves your comment annotations with different colors. +- [Indent Rainbow](https://marketplace.visualstudio.com/items?itemName=oderwat.indent-rainbow) - Makes indentation levels more readable with color coding. +- [Markdownlint](https://marketplace.visualstudio.com/items?itemName=DavidAnson.vscode-markdownlint) - Provides Markdown linting and style checking. +- [Code Spell Checker](https://marketplace.visualstudio.com/items?itemName=streetsidesoftware.code-spell-checker) - A basic spell checker that works well with code. +- [Lightning Flow Scanner](https://marketplace.visualstudio.com/items?itemName=ForceConfigControl.lightningflowscanner) - Scans and validates Salesforce Lightning Flows. +- [Log File Highlighter](https://marketplace.visualstudio.com/items?itemName=emilast.LogFileHighlighter) - Highlights log files to make them easier to read. ## Installation From 024afce62fac805928d58b15ba390e6f1d365d9d Mon Sep 17 00:00:00 2001 From: avi Date: Fri, 14 Nov 2025 13:04:12 +0530 Subject: [PATCH 17/19] add code analyzer support --- package.json | 2 +- src/commands/ForceCheckPackages.js | 2 +- src/commands/NodePackageManager.js | 3 ++ src/commands/SfdxScannerInstaller.js | 60 ++++++++++++++++++++-------- src/utils/InitialSetup.js | 2 - 5 files changed, 48 insertions(+), 21 deletions(-) diff --git a/package.json b/package.json index e9757ac..3760ce3 100644 --- a/package.json +++ b/package.json @@ -33,7 +33,7 @@ "aaron-bond.better-comments", "oderwat.indent-rainbow", "streetsidesoftware.code-spell-checker", - "ForceConfigControl.lightningflowscanner", + "ForceConfigControl.lightning-flow-scanner-vsx", "emilast.LogFileHighlighter" ], "repository": { diff --git a/src/commands/ForceCheckPackages.js b/src/commands/ForceCheckPackages.js index addcc8d..ea874b4 100644 --- a/src/commands/ForceCheckPackages.js +++ b/src/commands/ForceCheckPackages.js @@ -9,7 +9,7 @@ class ForceCheckPackages { ); context.globalState.update("dev-pack-salesforce.packages-checked", false); context.globalState.update( - "dev-pack-salesforce.sfdx-scanner-checked", + "dev-pack-salesforce.sf-plugins-checked", false ); await NodePackageManager.managePackages(context); diff --git a/src/commands/NodePackageManager.js b/src/commands/NodePackageManager.js index 718c7fb..506f7bb 100644 --- a/src/commands/NodePackageManager.js +++ b/src/commands/NodePackageManager.js @@ -16,8 +16,11 @@ class NodePackageManager { ); if (userConfirmed) { await this.installMissingPackages(missingPackages); + } else { + return; // Exit if user doesn't confirm package installation } } + // Only install SF plugins after ensuring @salesforce/cli is installed await SfdxScannerInstaller.install(context); } catch (error) { vscode.window.showErrorMessage(error); diff --git a/src/commands/SfdxScannerInstaller.js b/src/commands/SfdxScannerInstaller.js index 04e2da8..488440a 100644 --- a/src/commands/SfdxScannerInstaller.js +++ b/src/commands/SfdxScannerInstaller.js @@ -4,23 +4,38 @@ const CommonUtils = require("../utils/CommonUtils"); class SfdxScannerInstaller { static async install(context) { try { + // Check if sf command is available + await this.verifySfCliInstalled(); + const plugins = await CommonUtils.execCommand("sf plugins"); + const pluginsToInstall = []; + if (!plugins.includes("@salesforce/sfdx-scanner")) { + pluginsToInstall.push("@salesforce/sfdx-scanner"); + } + + if (!plugins.includes("code-analyzer")) { + pluginsToInstall.push("code-analyzer"); + } + + if (pluginsToInstall.length > 0) { const userConfirmed = await CommonUtils.promptForConfirmation( - "The @salesforce/sfdx-scanner plugin is not installed. Do you want to install it?" + `The following SF plugins will be installed: ${pluginsToInstall.join( + ", " + )}. Do you want to proceed?` ); if (userConfirmed) { - await this.installPlugin(); + await this.installPlugins(pluginsToInstall); } } else { if ( - !context.globalState.get("dev-pack-salesforce.sfdx-scanner-checked") + !context.globalState.get("dev-pack-salesforce.sf-plugins-checked") ) { CommonUtils.showInformationMessage( - "The @salesforce/sfdx-scanner plugin is already installed. SFDX setup is complete." + "All required SF plugins are already installed. SF setup is complete." ); context.globalState.update( - "dev-pack-salesforce.sfdx-scanner-checked", + "dev-pack-salesforce.sf-plugins-checked", true ); } @@ -30,18 +45,29 @@ class SfdxScannerInstaller { } } - static installPlugin() { - return CommonUtils.execCommand( - "sf plugins:install @salesforce/sfdx-scanner" - ) - .then(() => { - CommonUtils.showInformationMessage( - "Successfully installed SFDX scanner plugin." - ); - }) - .catch((error) => { - vscode.window.showErrorMessage(error); - }); + static async verifySfCliInstalled() { + try { + await CommonUtils.execCommand("sf --version"); + } catch (error) { + throw new Error( + "Salesforce CLI (sf) is not available. Please ensure @salesforce/cli is installed first." + ); + } + } + + static async installPlugins(pluginsToInstall) { + try { + for (const plugin of pluginsToInstall) { + await CommonUtils.execCommand(`sf plugins install ${plugin}`); + } + CommonUtils.showInformationMessage( + `Successfully installed SF plugins: ${pluginsToInstall.join(", ")}` + ); + } catch (error) { + throw new Error( + `Failed to install SF plugins: ${error.message}` + ); + } } } diff --git a/src/utils/InitialSetup.js b/src/utils/InitialSetup.js index 8a9610c..373c433 100644 --- a/src/utils/InitialSetup.js +++ b/src/utils/InitialSetup.js @@ -1,13 +1,11 @@ const vscode = require("vscode"); const BetterComments = require("./commands/betterComments"); -const ForceCheckPackages = require("./commands/forceCheckPackages"); class InitialSetup { static async setup(context) { try { await this.setInitialTheme(context); await this.setBetterComments(context); - await ForceCheckPackages.checkPackages(context); } catch (error) { vscode.window.showErrorMessage(error); } From 5dad16b380c1e8417c845c140bdb59c7bd76708b Mon Sep 17 00:00:00 2001 From: avi Date: Fri, 14 Nov 2025 13:04:25 +0530 Subject: [PATCH 18/19] cleanup code --- src/commands/ForceCheckPackages.js | 5 +---- src/commands/SfdxScannerInstaller.js | 12 +++++------- 2 files changed, 6 insertions(+), 11 deletions(-) diff --git a/src/commands/ForceCheckPackages.js b/src/commands/ForceCheckPackages.js index ea874b4..4a643d3 100644 --- a/src/commands/ForceCheckPackages.js +++ b/src/commands/ForceCheckPackages.js @@ -8,10 +8,7 @@ class ForceCheckPackages { "Checking and installing required packages and plugins..." ); context.globalState.update("dev-pack-salesforce.packages-checked", false); - context.globalState.update( - "dev-pack-salesforce.sf-plugins-checked", - false - ); + context.globalState.update("dev-pack-salesforce.sf-plugins-checked", false); await NodePackageManager.managePackages(context); } } diff --git a/src/commands/SfdxScannerInstaller.js b/src/commands/SfdxScannerInstaller.js index 488440a..7827e31 100644 --- a/src/commands/SfdxScannerInstaller.js +++ b/src/commands/SfdxScannerInstaller.js @@ -6,18 +6,18 @@ class SfdxScannerInstaller { try { // Check if sf command is available await this.verifySfCliInstalled(); - + const plugins = await CommonUtils.execCommand("sf plugins"); const pluginsToInstall = []; - + if (!plugins.includes("@salesforce/sfdx-scanner")) { pluginsToInstall.push("@salesforce/sfdx-scanner"); } - + if (!plugins.includes("code-analyzer")) { pluginsToInstall.push("code-analyzer"); } - + if (pluginsToInstall.length > 0) { const userConfirmed = await CommonUtils.promptForConfirmation( `The following SF plugins will be installed: ${pluginsToInstall.join( @@ -64,9 +64,7 @@ class SfdxScannerInstaller { `Successfully installed SF plugins: ${pluginsToInstall.join(", ")}` ); } catch (error) { - throw new Error( - `Failed to install SF plugins: ${error.message}` - ); + throw new Error(`Failed to install SF plugins: ${error.message}`); } } } From 8d75495c32f9c38198709c671a50ea9d5f104a53 Mon Sep 17 00:00:00 2001 From: avi Date: Fri, 14 Nov 2025 13:16:14 +0530 Subject: [PATCH 19/19] add error lens --- package.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index 3760ce3..3db3d16 100644 --- a/package.json +++ b/package.json @@ -34,7 +34,8 @@ "oderwat.indent-rainbow", "streetsidesoftware.code-spell-checker", "ForceConfigControl.lightning-flow-scanner-vsx", - "emilast.LogFileHighlighter" + "emilast.LogFileHighlighter", + "usernamehw.errorlens" ], "repository": { "type": "git",