1
0
mirror of https://github.com/lensapp/lens.git synced 2025-05-20 05:10:56 +00:00
lens/extensions/telemetry/renderer.tsx
Jari Kolehmainen 45abc740e9
Initial telemetry extension (#1067)
* initial telemetry extension

Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>

* Fix preferences saving and default value

Signed-off-by: Lauri Nevala <lauri.nevala@gmail.com>

Co-authored-by: Lauri Nevala <lauri.nevala@gmail.com>
2020-10-13 12:57:38 +03:00

31 lines
1.0 KiB
TypeScript

import { AppPreferenceRegistry, LensRendererExtension } from "@lens/ui-extensions";
import { TelemetryPreferencesStore } from "./src/telemetry-preferences-store"
import { TelemetryPreferenceHint, TelemetryPreferenceInput } from "./src/telemetry-preference"
import React from "react"
export default class TelemetryRendererExtension extends LensRendererExtension {
protected preferencesStore: TelemetryPreferencesStore
async onActivate() {
console.log("telemetry extension activated")
this.preferencesStore = TelemetryPreferencesStore.getInstance<TelemetryPreferencesStore>()
await this.preferencesStore.load()
}
registerAppPreferences(registry: AppPreferenceRegistry) {
this.disposers.push(
registry.add({
title: "Telemetry & Usage Tracking",
components: {
Hint: () => <TelemetryPreferenceHint />,
Input: () => <TelemetryPreferenceInput telemetry={this.preferencesStore} />
}
})
)
}
onDeactivate() {
console.log("telemetry extension deactivated")
}
}