@@ -23,14 +23,12 @@ import {
2323 languages ,
2424 window ,
2525 workspace ,
26- StatusBarItem ,
27- StatusBarAlignment ,
2826 WebviewView ,
2927} from "vscode" ;
3028import { GGShieldResolver } from "./lib/ggshield-resolver" ;
3129import { getCurrentFile , isGitInstalled } from "./utils" ;
3230import { GitGuardianWebviewProvider } from "./ggshield-webview/gitguardian-webview-view" ;
33- import { StatusBarStatus , updateStatusBarItem } from "./gitguardian-interface/gitguardian-status-bar" ;
31+ import { createStatusBarItem , StatusBarStatus , updateStatusBarItem } from "./gitguardian-interface/gitguardian-status-bar" ;
3432import {
3533 generateSecretName ,
3634 GitGuardianSecretHoverProvider ,
@@ -42,8 +40,6 @@ import { GitGuardianRemediationMessageWebviewProvider } from "./ggshield-webview
4240 * Extension diagnostic collection
4341 */
4442let diagnosticCollection : DiagnosticCollection ;
45- let statusBar : StatusBarItem ;
46-
4743/**
4844 * Scan a file using ggshield
4945 *
@@ -55,22 +51,22 @@ let statusBar: StatusBarItem;
5551 * @param filePath path to file
5652 * @param fileUri file uri
5753 */
58- async function scanFile (
54+ export async function scanFile (
5955 this : any ,
6056 filePath : string ,
6157 fileUri : Uri ,
6258 configuration : GGShieldConfiguration
6359) : Promise < void > {
6460 const results = ggshieldScanFile ( filePath , configuration ) ;
6561 if ( ! results ) {
66- updateStatusBarItem ( StatusBarStatus . ready , statusBar ) ;
62+ updateStatusBarItem ( StatusBarStatus . ready ) ;
6763 return ;
6864 }
6965 let incidentsDiagnostics : Diagnostic [ ] = parseGGShieldResults ( results ) ;
7066 if ( incidentsDiagnostics . length !== 0 ) {
71- updateStatusBarItem ( StatusBarStatus . secretFound , statusBar ) ;
67+ updateStatusBarItem ( StatusBarStatus . secretFound ) ;
7268 } else {
73- updateStatusBarItem ( StatusBarStatus . noSecretFound , statusBar ) ;
69+ updateStatusBarItem ( StatusBarStatus . noSecretFound ) ;
7470 }
7571 diagnosticCollection . set ( fileUri , incidentsDiagnostics ) ;
7672}
@@ -162,13 +158,11 @@ export function activate(context: ExtensionContext) {
162158 ) ;
163159 context . subscriptions . push ( ggshieldViewProvider , ggshieldRemediationMessageViewProvider , ggshieldQuotaViewProvider ) ;
164160
165- statusBar = window . createStatusBarItem ( StatusBarAlignment . Left , 0 ) ;
166- updateStatusBarItem ( StatusBarStatus . initialization , statusBar ) ;
161+ createStatusBarItem ( context ) ;
167162
168163 //generic commands to open correct view on status bar click
169164 registerOpenViewsCommands ( context , outputChannel ) ;
170165 registerQuotaViewCommands ( ggshieldQuotaViewProvider ) ;
171- context . subscriptions . push ( statusBar ) ;
172166
173167 context . subscriptions . push (
174168 languages . registerHoverProvider ( "*" , new GitGuardianSecretHoverProvider ( ) )
@@ -180,14 +174,14 @@ export function activate(context: ExtensionContext) {
180174 // Check if ggshield is authenticated
181175 ggshieldAuthStatus ( configuration , context ) ;
182176 if ( context . globalState . get ( "isAuthenticated" , false ) ) {
183- updateStatusBarItem ( StatusBarStatus . ready , statusBar ) ;
177+ updateStatusBarItem ( StatusBarStatus . ready ) ;
184178 setApiKey ( configuration , ggshieldApiKey ( configuration ) ) ;
185179 ggshieldViewProvider . refresh ( ) ;
186180 ggshieldRemediationMessageViewProvider . refresh ( ) ;
187181 ggshieldQuotaViewProvider . refresh ( ) ;
188182
189183 } else {
190- updateStatusBarItem ( StatusBarStatus . unauthenticated , statusBar ) ;
184+ updateStatusBarItem ( StatusBarStatus . unauthenticated ) ;
191185 }
192186 } )
193187 . then ( async ( ) => {
@@ -262,10 +256,10 @@ export function activate(context: ExtensionContext) {
262256 context
263257 ) . then ( ( ) => {
264258 if ( context . globalState . get ( "isAuthenticated" , false ) ) {
265- updateStatusBarItem ( StatusBarStatus . ready , statusBar ) ;
259+ updateStatusBarItem ( StatusBarStatus . ready ) ;
266260 setApiKey ( configuration , ggshieldApiKey ( configuration ) ) ;
267261 } else {
268- updateStatusBarItem ( StatusBarStatus . unauthenticated , statusBar ) ;
262+ updateStatusBarItem ( StatusBarStatus . unauthenticated ) ;
269263 }
270264 ggshieldViewProvider . refresh ( ) ;
271265 ggshieldRemediationMessageViewProvider . refresh ( ) ;
@@ -276,7 +270,7 @@ export function activate(context: ExtensionContext) {
276270 } ) ,
277271 commands . registerCommand ( "gitguardian.logout" , async ( ) => {
278272 logoutGGShield ( ggshieldResolver . configuration , context ) ;
279- updateStatusBarItem ( StatusBarStatus . unauthenticated , statusBar ) ;
273+ updateStatusBarItem ( StatusBarStatus . unauthenticated ) ;
280274 setApiKey ( configuration , undefined ) ;
281275 ggshieldViewProvider . refresh ( ) ;
282276 ggshieldRemediationMessageViewProvider . refresh ( ) ;
@@ -286,13 +280,8 @@ export function activate(context: ExtensionContext) {
286280 } )
287281 . catch ( ( error ) => {
288282 outputChannel . appendLine ( `Error: ${ error . message } ` ) ;
289- updateStatusBarItem ( StatusBarStatus . error , statusBar ) ;
283+ updateStatusBarItem ( StatusBarStatus . error ) ;
290284 } ) ;
291285}
292286
293- export function deactivate ( ) {
294- if ( diagnosticCollection ) {
295- diagnosticCollection . dispose ( ) ;
296- statusBar . dispose ( ) ;
297- }
298- }
287+ export function deactivate ( ) { }
0 commit comments