Add analytics tracking for URL previews (#32659)
* Add analytics tracking. * fix import * fix other import too * fixup type * Add test case * Add better testing * make it happier * update lock
This commit is contained in:
@@ -164,7 +164,9 @@ export class PosthogAnalytics {
|
||||
dis.register(this.onAction);
|
||||
SettingsStore.monitorSetting("layout", null);
|
||||
SettingsStore.monitorSetting("useCompactLayout", null);
|
||||
SettingsStore.monitorSetting("urlPreviewsEnabled", null);
|
||||
this.onLayoutUpdated();
|
||||
this.onUrlPreviewSettingUpdated(SettingsStore.getValue("urlPreviewsEnabled"));
|
||||
this.updateCryptoSuperProperty();
|
||||
}
|
||||
|
||||
@@ -188,11 +190,17 @@ export class PosthogAnalytics {
|
||||
this.setProperty("WebLayout", layout);
|
||||
};
|
||||
|
||||
private readonly onUrlPreviewSettingUpdated = (value: boolean): void => {
|
||||
this.setProperty("URLPreviewsEnabled", value);
|
||||
};
|
||||
|
||||
private onAction = (payload: ActionPayload): void => {
|
||||
if (payload.action !== Action.SettingUpdated) return;
|
||||
const settingsPayload = payload as SettingUpdatedPayload;
|
||||
if (["layout", "useCompactLayout"].includes(settingsPayload.settingName)) {
|
||||
this.onLayoutUpdated();
|
||||
} else if (settingsPayload.settingName === "urlPreviewsEnabled" && !settingsPayload.roomId) {
|
||||
this.onUrlPreviewSettingUpdated(settingsPayload.newValue as boolean);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user