@@ -10,9 +10,10 @@ import {
10
10
import LogStashAnalyticsProvider from "./analytics/LogStashAnalyticsProvider.js" ;
11
11
import PostHogAnalyticsProvider from "./analytics/PostHogAnalyticsProvider.js" ;
12
12
import { ControlPlaneClient } from "./client.js" ;
13
+ import { AnalyticsConfig } from "../index.js" ;
13
14
14
15
function createAnalyticsProvider (
15
- config : Analytics ,
16
+ config : AnalyticsConfig ,
16
17
) : IAnalyticsProvider | undefined {
17
18
// @ts -ignore
18
19
switch ( config . provider ) {
@@ -42,7 +43,7 @@ export class TeamAnalytics {
42
43
}
43
44
44
45
static async setup (
45
- config : Analytics ,
46
+ config : AnalyticsConfig ,
46
47
uniqueId : string ,
47
48
extensionVersion : string ,
48
49
controlPlaneClient : ControlPlaneClient ,
@@ -52,22 +53,27 @@ export class TeamAnalytics {
52
53
TeamAnalytics . os = os . platform ( ) ;
53
54
TeamAnalytics . extensionVersion = extensionVersion ;
54
55
55
- if ( ! config ) {
56
- await TeamAnalytics . provider ?. shutdown ( ) ;
57
- TeamAnalytics . provider = undefined ;
58
- } else {
59
- TeamAnalytics . provider = createAnalyticsProvider ( config ) ;
60
- await TeamAnalytics . provider ?. setup (
61
- config ,
62
- uniqueId ,
63
- controlPlaneProxyInfo ,
64
- ) ;
56
+ TeamAnalytics . provider = createAnalyticsProvider ( config ) ;
57
+ await TeamAnalytics . provider ?. setup (
58
+ config ,
59
+ uniqueId ,
60
+ controlPlaneProxyInfo ,
61
+ ) ;
65
62
66
- if ( config . provider === "continue-proxy" ) {
67
- (
68
- TeamAnalytics . provider as ContinueProxyAnalyticsProvider
69
- ) . controlPlaneClient = controlPlaneClient ;
70
- }
63
+ if ( config . provider === "continue-proxy" ) {
64
+ (
65
+ TeamAnalytics . provider as ContinueProxyAnalyticsProvider
66
+ ) . controlPlaneClient = controlPlaneClient ;
67
+ }
68
+ }
69
+
70
+ static async shutdown ( ) {
71
+ if ( TeamAnalytics . provider ) {
72
+ await TeamAnalytics . provider . shutdown ( ) ;
73
+ TeamAnalytics . provider = undefined ;
74
+ TeamAnalytics . os = undefined ;
75
+ TeamAnalytics . extensionVersion = undefined ;
76
+ TeamAnalytics . uniqueId = "NOT_UNIQUE" ;
71
77
}
72
78
}
73
79
}
0 commit comments