Skip to content

Commit e7c1d46

Browse files
committed
Fix analytics properties
1 parent fd08714 commit e7c1d46

File tree

5 files changed

+15
-10
lines changed

5 files changed

+15
-10
lines changed

src/App/RootStore.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,9 @@ class RootStore {
2929
private contructor() { }
3030
private static _instance: RootStore;
3131

32-
readonly searchStore = new SearchStore();
3332
readonly uiStore = new UIStore();
3433
readonly userStore = new UserStore();
34+
readonly searchStore = new SearchStore(this.uiStore);
3535

3636
static get instance() {
3737
return RootStore._instance || (RootStore._instance = new RootStore())

src/Search/search.store.ts

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import { SearchSource } from 'services/search.service/searchSource';
88
import SyncService, { StorageKey } from 'services/sync.service';
99
import { HistoryEntry } from './historyEntry';
1010
import AnalyticsService, { AnalyticsEvent } from 'services/analytics.service';
11+
import UIStore from 'ui/ui.store';
1112

1213
export function useSearchStore() {
1314
const { searchStore } = useRootStore();
@@ -80,7 +81,7 @@ class SearchStore {
8081
SyncService.markDirtyKey(StorageKey.LastQuery);
8182
}
8283

83-
constructor() {
84+
constructor(private _uiStore: UIStore) {
8485
makeAutoObservable(this, {
8586
_maxHistorySize: false,
8687
_lastSearchInvocation: false,
@@ -137,7 +138,11 @@ class SearchStore {
137138
return reject(error);
138139
}
139140
});
140-
AnalyticsService.track(AnalyticsEvent.Search, { query: this.query });
141+
AnalyticsService.track(AnalyticsEvent.Search, {
142+
query: this.query,
143+
activeFilter: this._uiStore.searchSource,
144+
activeDocSource: toJS(this.filters.Docs.selectedFilter),
145+
});
141146
this._lastSearchInvocation = searchInvocation;
142147
return searchInvocation;
143148
}

src/main/index.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,6 @@ toDesktop.autoUpdater.on('update-downloaded', () => {
8181
});
8282

8383
async function restartAndUpdate(location: UpdateLocation) {
84-
console.log('update');
8584
try {
8685
await MainAnalyticsService.trackAndFlush(AnalyticsEvent.UpdateClicked, { location });
8786
} catch (error) { }

src/services/analytics.service/analyticsEvent.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
import { UpdateLocation } from 'services/appWindow';
2+
import { DocSource } from 'services/search.service/docSource';
3+
import { SearchSource } from 'services/search.service/searchSource';
24

35
export enum AnalyticsEvent {
46
ShowedApp = 'Showed app',
@@ -42,7 +44,7 @@ export enum AnalyticsEvent {
4244

4345
export type AnalyticsPayload = {
4446
[AnalyticsEvent.ShortcutUsed]: { action: string };
45-
[AnalyticsEvent.Search]: { query: string };
47+
[AnalyticsEvent.Search]: { query: string, activeFilter: SearchSource, activeDocSource?: DocSource };
4648
[AnalyticsEvent.ModalOpened]: void;
4749
[AnalyticsEvent.SignInModalOpened]: void;
4850
[AnalyticsEvent.SignInModalClosed]: void;

src/services/analytics.service/mainAnalytics.service.ts

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,8 @@ import Analytics from 'analytics-node';
44
import { app } from 'electron';
55
import { v4 as uuidv4 } from 'uuid';
66

7-
import { isDev, isStaging } from 'main/utils/environment';
7+
import { isDev } from 'main/utils/environment';
88
import MainSyncService, { StorageKey } from 'services/sync.service/mainSync.service';
9-
import MainIPCService, { IPCSendChannel } from 'services/ipc.service/mainIPC.service';
109

1110
import { User } from 'user/user';
1211
import { AnalyticsEvent, AnalyticsPayload } from 'services/analytics.service/analyticsEvent';
@@ -29,11 +28,11 @@ class MainAnalyticsService {
2928
return anonymousID;
3029
}
3130

32-
static track<T extends AnalyticsEvent>(event: T, payload: AnalyticsPayload[T], options?: { userID?: string, searchWindow?: electron.BrowserWindow }) {
31+
static track<T extends AnalyticsEvent>(event: T, payload: AnalyticsPayload[T], options?: { searchWindow?: electron.BrowserWindow }) {
3332
return MainAnalyticsService.analytics.track({
3433
event,
3534
anonymousId: MainAnalyticsService.anonymousID,
36-
userId: options?.userID,
35+
userId: MainAnalyticsService.userID,
3736
properties: {
3837
...payload,
3938
isSignedIn: MainAnalyticsService.isSignedIn,
@@ -47,7 +46,7 @@ class MainAnalyticsService {
4746
});
4847
}
4948

50-
static trackAndFlush<T extends AnalyticsEvent>(event: T, payload: AnalyticsPayload[T], options?: { userID?: string, anonymousID: string, searchWindow?: electron.BrowserWindow }) {
49+
static trackAndFlush<T extends AnalyticsEvent>(event: T, payload: AnalyticsPayload[T], options?: { searchWindow?: electron.BrowserWindow }) {
5150
return new Promise<void>((resolve, reject) => {
5251
MainAnalyticsService.track(event, payload, options)
5352
.flush((error) => {

0 commit comments

Comments
 (0)