diff options
Diffstat (limited to 'extension/src/extension.ts')
-rw-r--r-- | extension/src/extension.ts | 30 |
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(); +} |