@@ -3,6 +3,8 @@ const fs = require("fs");
33const Table = require ( 'cli-table3' ) ;
44const { networkMap } = require ( "../helpers" ) ;
55
6+ const EXTENSION_PREFIX = "vscode-solidity-inspector" ;
7+
68function compressHash ( txHash ) {
79 const first5 = txHash . substring ( 0 , 5 ) ;
810 const last5 = txHash . substring ( txHash . length - 5 ) ;
@@ -117,4 +119,24 @@ async function generateDeploymentReportContextMenu(clickedFile, selectedFiles) {
117119 }
118120}
119121
120- module . exports = { generateDeploymentReportActiveFile, generateDeploymentReportContextMenu } ;
122+ function statusBarItem ( ) {
123+ // Add status bar item
124+ const statusBarItem = vscode . window . createStatusBarItem ( vscode . StatusBarAlignment . Right , 100 ) ;
125+ statusBarItem . command = EXTENSION_PREFIX + '.statusBar.generateDeploymentReport' ;
126+ statusBarItem . text = '$(file-code) Deployment Summary' ;
127+ statusBarItem . tooltip = 'View Deployment results in a table format' ;
128+ statusBarItem . show ( ) ;
129+
130+ // Register the command for the status bar item
131+ vscode . commands . registerCommand ( EXTENSION_PREFIX + '.statusBar.generateDeploymentReport' , async ( ) => {
132+ const activeEditor = vscode . window . activeTextEditor ;
133+ if ( activeEditor && activeEditor . document . fileName . endsWith ( '.json' ) ) {
134+ await generateDeploymentReportActiveFile ( activeEditor ) ;
135+ } else {
136+ vscode . window . showInformationMessage ( 'Please open a JSON file to view the deployment report.' ) ;
137+ }
138+ return statusBarItem ;
139+ } ) ;
140+ }
141+
142+ module . exports = { generateDeploymentReportActiveFile, generateDeploymentReportContextMenu, statusBarItem } ;
0 commit comments