summaryrefslogtreecommitdiff
path: root/extension/src/extension.ts
diff options
context:
space:
mode:
Diffstat (limited to 'extension/src/extension.ts')
-rw-r--r--extension/src/extension.ts30
1 files changed, 30 insertions, 0 deletions
diff --git a/extension/src/extension.ts b/extension/src/extension.ts
index 802b12bc..386a2fb7 100644
--- a/extension/src/extension.ts
+++ b/extension/src/extension.ts
@@ -3,8 +3,26 @@
*/
import * as vscode from "vscode";
+import { getExtensionVersion } from "./activation/environmentSetup";
+import { PostHog } from "posthog-node";
+const client = new PostHog(
+ "phc_JS6XFROuNbhJtVCEdTSYk6gl5ArRrTNMpCcguAXlSPs",
+
+ { host: "https://app.posthog.com" }
+);
async function dynamicImportAndActivate(context: vscode.ExtensionContext) {
+ if (!context.globalState.get("hasBeenInstalled")) {
+ context.globalState.update("hasBeenInstalled", true);
+ client.capture({
+ distinctId: vscode.env.machineId,
+ event: "install",
+ properties: {
+ extensionVersion: getExtensionVersion(),
+ },
+ });
+ }
+
const { activateExtension } = await import("./activation/activate");
try {
await activateExtension(context);
@@ -30,3 +48,15 @@ async function dynamicImportAndActivate(context: vscode.ExtensionContext) {
export function activate(context: vscode.ExtensionContext) {
dynamicImportAndActivate(context);
}
+
+export function deactivate() {
+ client.capture({
+ distinctId: vscode.env.machineId,
+ event: "deactivate",
+ properties: {
+ extensionVersion: getExtensionVersion(),
+ },
+ });
+
+ client.shutdown();
+}