@@ -23,14 +23,12 @@ import {
23
23
languages ,
24
24
window ,
25
25
workspace ,
26
- StatusBarItem ,
27
- StatusBarAlignment ,
28
26
WebviewView ,
29
27
} from "vscode" ;
30
28
import { GGShieldResolver } from "./lib/ggshield-resolver" ;
31
29
import { getCurrentFile , isGitInstalled } from "./utils" ;
32
30
import { 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" ;
34
32
import {
35
33
generateSecretName ,
36
34
GitGuardianSecretHoverProvider ,
@@ -42,8 +40,6 @@ import { GitGuardianRemediationMessageWebviewProvider } from "./ggshield-webview
42
40
* Extension diagnostic collection
43
41
*/
44
42
let diagnosticCollection : DiagnosticCollection ;
45
- let statusBar : StatusBarItem ;
46
-
47
43
/**
48
44
* Scan a file using ggshield
49
45
*
@@ -55,22 +51,22 @@ let statusBar: StatusBarItem;
55
51
* @param filePath path to file
56
52
* @param fileUri file uri
57
53
*/
58
- async function scanFile (
54
+ export async function scanFile (
59
55
this : any ,
60
56
filePath : string ,
61
57
fileUri : Uri ,
62
58
configuration : GGShieldConfiguration
63
59
) : Promise < void > {
64
60
const results = ggshieldScanFile ( filePath , configuration ) ;
65
61
if ( ! results ) {
66
- updateStatusBarItem ( StatusBarStatus . ready , statusBar ) ;
62
+ updateStatusBarItem ( StatusBarStatus . ready ) ;
67
63
return ;
68
64
}
69
65
let incidentsDiagnostics : Diagnostic [ ] = parseGGShieldResults ( results ) ;
70
66
if ( incidentsDiagnostics . length !== 0 ) {
71
- updateStatusBarItem ( StatusBarStatus . secretFound , statusBar ) ;
67
+ updateStatusBarItem ( StatusBarStatus . secretFound ) ;
72
68
} else {
73
- updateStatusBarItem ( StatusBarStatus . noSecretFound , statusBar ) ;
69
+ updateStatusBarItem ( StatusBarStatus . noSecretFound ) ;
74
70
}
75
71
diagnosticCollection . set ( fileUri , incidentsDiagnostics ) ;
76
72
}
@@ -162,13 +158,11 @@ export function activate(context: ExtensionContext) {
162
158
) ;
163
159
context . subscriptions . push ( ggshieldViewProvider , ggshieldRemediationMessageViewProvider , ggshieldQuotaViewProvider ) ;
164
160
165
- statusBar = window . createStatusBarItem ( StatusBarAlignment . Left , 0 ) ;
166
- updateStatusBarItem ( StatusBarStatus . initialization , statusBar ) ;
161
+ createStatusBarItem ( context ) ;
167
162
168
163
//generic commands to open correct view on status bar click
169
164
registerOpenViewsCommands ( context , outputChannel ) ;
170
165
registerQuotaViewCommands ( ggshieldQuotaViewProvider ) ;
171
- context . subscriptions . push ( statusBar ) ;
172
166
173
167
context . subscriptions . push (
174
168
languages . registerHoverProvider ( "*" , new GitGuardianSecretHoverProvider ( ) )
@@ -180,14 +174,14 @@ export function activate(context: ExtensionContext) {
180
174
// Check if ggshield is authenticated
181
175
ggshieldAuthStatus ( configuration , context ) ;
182
176
if ( context . globalState . get ( "isAuthenticated" , false ) ) {
183
- updateStatusBarItem ( StatusBarStatus . ready , statusBar ) ;
177
+ updateStatusBarItem ( StatusBarStatus . ready ) ;
184
178
setApiKey ( configuration , ggshieldApiKey ( configuration ) ) ;
185
179
ggshieldViewProvider . refresh ( ) ;
186
180
ggshieldRemediationMessageViewProvider . refresh ( ) ;
187
181
ggshieldQuotaViewProvider . refresh ( ) ;
188
182
189
183
} else {
190
- updateStatusBarItem ( StatusBarStatus . unauthenticated , statusBar ) ;
184
+ updateStatusBarItem ( StatusBarStatus . unauthenticated ) ;
191
185
}
192
186
} )
193
187
. then ( async ( ) => {
@@ -262,10 +256,10 @@ export function activate(context: ExtensionContext) {
262
256
context
263
257
) . then ( ( ) => {
264
258
if ( context . globalState . get ( "isAuthenticated" , false ) ) {
265
- updateStatusBarItem ( StatusBarStatus . ready , statusBar ) ;
259
+ updateStatusBarItem ( StatusBarStatus . ready ) ;
266
260
setApiKey ( configuration , ggshieldApiKey ( configuration ) ) ;
267
261
} else {
268
- updateStatusBarItem ( StatusBarStatus . unauthenticated , statusBar ) ;
262
+ updateStatusBarItem ( StatusBarStatus . unauthenticated ) ;
269
263
}
270
264
ggshieldViewProvider . refresh ( ) ;
271
265
ggshieldRemediationMessageViewProvider . refresh ( ) ;
@@ -276,7 +270,7 @@ export function activate(context: ExtensionContext) {
276
270
} ) ,
277
271
commands . registerCommand ( "gitguardian.logout" , async ( ) => {
278
272
logoutGGShield ( ggshieldResolver . configuration , context ) ;
279
- updateStatusBarItem ( StatusBarStatus . unauthenticated , statusBar ) ;
273
+ updateStatusBarItem ( StatusBarStatus . unauthenticated ) ;
280
274
setApiKey ( configuration , undefined ) ;
281
275
ggshieldViewProvider . refresh ( ) ;
282
276
ggshieldRemediationMessageViewProvider . refresh ( ) ;
@@ -286,13 +280,8 @@ export function activate(context: ExtensionContext) {
286
280
} )
287
281
. catch ( ( error ) => {
288
282
outputChannel . appendLine ( `Error: ${ error . message } ` ) ;
289
- updateStatusBarItem ( StatusBarStatus . error , statusBar ) ;
283
+ updateStatusBarItem ( StatusBarStatus . error ) ;
290
284
} ) ;
291
285
}
292
286
293
- export function deactivate ( ) {
294
- if ( diagnosticCollection ) {
295
- diagnosticCollection . dispose ( ) ;
296
- statusBar . dispose ( ) ;
297
- }
298
- }
287
+ export function deactivate ( ) { }
0 commit comments