@dereekb/dbx-analytics 0.0.1 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/README.md +4 -5
  2. package/esm2020/lib/action/analytics.action.directive.mjs +15 -15
  3. package/esm2020/lib/action/analytics.action.module.mjs +9 -9
  4. package/esm2020/lib/analytics/analytics.mjs +2 -0
  5. package/esm2020/lib/analytics/analytics.module.mjs +23 -0
  6. package/esm2020/lib/analytics/analytics.service.mjs +190 -0
  7. package/esm2020/lib/analytics/analytics.stream.mjs +13 -0
  8. package/esm2020/lib/analytics/index.mjs +5 -0
  9. package/esm2020/lib/index.mjs +2 -4
  10. package/esm2020/lib/providers/index.mjs +2 -0
  11. package/esm2020/lib/providers/segment/index.mjs +4 -0
  12. package/esm2020/lib/providers/segment/segment.listener.service.mjs +92 -0
  13. package/esm2020/lib/providers/segment/segment.module.mjs +28 -0
  14. package/esm2020/lib/providers/segment/segment.service.mjs +61 -0
  15. package/fesm2015/dereekb-dbx-analytics.mjs +236 -58
  16. package/fesm2015/dereekb-dbx-analytics.mjs.map +1 -1
  17. package/fesm2020/dereekb-dbx-analytics.mjs +239 -58
  18. package/fesm2020/dereekb-dbx-analytics.mjs.map +1 -1
  19. package/lib/action/analytics.action.directive.d.ts +15 -15
  20. package/lib/action/analytics.action.module.d.ts +4 -4
  21. package/lib/{analytics.d.ts → analytics/analytics.d.ts} +0 -0
  22. package/lib/analytics/analytics.module.d.ts +14 -0
  23. package/lib/{analytics.service.d.ts → analytics/analytics.service.d.ts} +25 -21
  24. package/lib/{analytics.stream.d.ts → analytics/analytics.stream.d.ts} +0 -0
  25. package/lib/analytics/index.d.ts +4 -0
  26. package/lib/index.d.ts +1 -3
  27. package/lib/providers/index.d.ts +1 -0
  28. package/lib/providers/segment/index.d.ts +3 -0
  29. package/lib/providers/segment/segment.listener.service.d.ts +18 -0
  30. package/lib/providers/segment/segment.module.d.ts +8 -0
  31. package/lib/providers/segment/segment.service.d.ts +27 -0
  32. package/package.json +15 -14
  33. package/esm2020/lib/analytics.mjs +0 -2
  34. package/esm2020/lib/analytics.module.mjs +0 -23
  35. package/esm2020/lib/analytics.service.mjs +0 -179
  36. package/esm2020/lib/analytics.stream.mjs +0 -13
  37. package/lib/analytics.module.d.ts +0 -14
@@ -1,10 +1,9 @@
1
- import { Observable } from 'rxjs';
2
- import { SubscriptionObject } from '@dereekb/rxjs';
1
+ import { Observable, BehaviorSubject, Subscription } from 'rxjs';
3
2
  import { AnalyticsEvent, AnalyticsEventData, AnalyticsEventName, AnalyticsUser, NewUserAnalyticsEventData, UserAnalyticsEvent } from './analytics';
4
3
  import { AnalyticsStreamEvent, AnalyticsStreamEventType } from './analytics.stream';
5
4
  import { Maybe, Destroyable } from '@dereekb/util';
6
5
  import * as i0 from "@angular/core";
7
- export declare abstract class DbNgxAnalyticsEventEmitterService {
6
+ export declare abstract class AnalyticsEventEmitterService {
8
7
  abstract sendNewUserEvent(user: AnalyticsUser, data: NewUserAnalyticsEventData): void;
9
8
  abstract sendUserLoginEvent(user: AnalyticsUser, data?: AnalyticsEventData): void;
10
9
  abstract sendUserLogoutEvent(data?: AnalyticsEventData): void;
@@ -13,27 +12,32 @@ export declare abstract class DbNgxAnalyticsEventEmitterService {
13
12
  abstract sendEvent(event: AnalyticsEvent): void;
14
13
  abstract sendPageView(page?: string): void;
15
14
  }
16
- export declare abstract class DbNgxAnalyticsEventStreamService {
15
+ export declare abstract class AnalyticsEventStreamService {
17
16
  abstract readonly events$: Observable<AnalyticsStreamEvent>;
18
17
  }
19
- export declare abstract class DbNgxAnalyticsUserSource {
18
+ export declare abstract class AnalyticsUserSource {
20
19
  abstract readonly analyticsUser$: Observable<Maybe<AnalyticsUser>>;
21
20
  }
22
- export declare abstract class DbNgxAnalyticsServiceListener {
23
- abstract listenToService(service: DbNgxAnalyticsService): void;
21
+ export declare abstract class AnalyticsServiceListener {
22
+ abstract listenToService(service: AnalyticsService): void;
24
23
  }
25
- export declare abstract class AbstractAnalyticsServiceListener implements DbNgxAnalyticsServiceListener {
26
- protected _service?: DbNgxAnalyticsService;
27
- protected _sub: SubscriptionObject;
28
- listenToService(service: DbNgxAnalyticsService): void;
29
- protected filterEvent(streamEvent: AnalyticsStreamEvent): boolean;
30
- protected abstract updateOnStreamEvent(event: AnalyticsStreamEvent): void;
24
+ /**
25
+ * Abstract AnalyticsServiceListener implementation.
26
+ */
27
+ export declare abstract class AbstractAnalyticsServiceListener implements AnalyticsServiceListener, Destroyable {
28
+ private _sub;
29
+ protected _analytics: BehaviorSubject<Maybe<AnalyticsService>>;
30
+ readonly analytics$: Observable<AnalyticsService>;
31
+ readonly analyticsEvents$: Observable<AnalyticsStreamEvent>;
32
+ listenToService(service: AnalyticsService): void;
33
+ protected abstract _initializeServiceSubscription(): Subscription | false;
34
+ destroy(): void;
31
35
  }
32
- export declare abstract class DbNgxAnalyticsServiceConfiguration {
33
- listeners: DbNgxAnalyticsServiceListener[];
36
+ export declare abstract class AnalyticsServiceConfiguration {
37
+ listeners: AnalyticsServiceListener[];
34
38
  isProduction?: boolean;
35
39
  logEvents?: boolean;
36
- userSource?: DbNgxAnalyticsUserSource;
40
+ userSource?: AnalyticsUserSource;
37
41
  }
38
42
  export declare class AnalyticsStreamEventAnalyticsEventWrapper implements AnalyticsStreamEvent {
39
43
  readonly event: UserAnalyticsEvent;
@@ -45,7 +49,7 @@ export declare class AnalyticsStreamEventAnalyticsEventWrapper implements Analyt
45
49
  /**
46
50
  * Primary analytics service that emits analytics events that components can listen to.
47
51
  */
48
- export declare class DbNgxAnalyticsService implements DbNgxAnalyticsEventStreamService, DbNgxAnalyticsEventEmitterService, Destroyable {
52
+ export declare class AnalyticsService implements AnalyticsEventStreamService, AnalyticsEventEmitterService, Destroyable {
49
53
  private _config;
50
54
  static readonly USER_REGISTRATION_EVENT_NAME = "User Registered";
51
55
  static readonly USER_LOGIN_EVENT_NAME = "User Login";
@@ -57,12 +61,12 @@ export declare class DbNgxAnalyticsService implements DbNgxAnalyticsEventStreamS
57
61
  readonly user$: Observable<Maybe<AnalyticsUser>>;
58
62
  private _userSourceSub;
59
63
  private _loggerSub;
60
- constructor(_config: DbNgxAnalyticsServiceConfiguration, userSource?: Maybe<DbNgxAnalyticsUserSource>);
64
+ constructor(_config: AnalyticsServiceConfiguration, userSource?: Maybe<AnalyticsUserSource>);
61
65
  /**
62
66
  * Sets the user directly.
63
67
  */
64
68
  setUser(user: Maybe<AnalyticsUser>): void;
65
- setUserSource(source: DbNgxAnalyticsUserSource): void;
69
+ setUserSource(source: AnalyticsUserSource): void;
66
70
  /**
67
71
  * Sends an event.
68
72
  */
@@ -78,6 +82,6 @@ export declare class DbNgxAnalyticsService implements DbNgxAnalyticsEventStreamS
78
82
  protected nextEvent(event: UserAnalyticsEvent, type: AnalyticsStreamEventType): void;
79
83
  private _init;
80
84
  destroy(): void;
81
- static ɵfac: i0.ɵɵFactoryDeclaration<DbNgxAnalyticsService, [null, { optional: true; }]>;
82
- static ɵprov: i0.ɵɵInjectableDeclaration<DbNgxAnalyticsService>;
85
+ static ɵfac: i0.ɵɵFactoryDeclaration<AnalyticsService, [null, { optional: true; }]>;
86
+ static ɵprov: i0.ɵɵInjectableDeclaration<AnalyticsService>;
83
87
  }
@@ -0,0 +1,4 @@
1
+ export * from './analytics.module';
2
+ export * from './analytics.service';
3
+ export * from './analytics.stream';
4
+ export * from './analytics';
package/lib/index.d.ts CHANGED
@@ -1,5 +1,3 @@
1
1
  export * from './action';
2
- export * from './analytics.module';
3
- export * from './analytics.service';
4
- export * from './analytics.stream';
5
2
  export * from './analytics';
3
+ export * from './providers';
@@ -0,0 +1 @@
1
+ export * from './segment';
@@ -0,0 +1,3 @@
1
+ export * from './segment.listener.service';
2
+ export * from './segment.service';
3
+ export * from './segment.module';
@@ -0,0 +1,18 @@
1
+ /// <reference types="segment-analytics" />
2
+ import { AbstractAnalyticsServiceListener, AnalyticsStreamEvent } from '../../analytics';
3
+ import { SegmentApiService } from './segment.service';
4
+ import * as i0 from "@angular/core";
5
+ /**
6
+ * AnalyticsServiceListener adapter for Segment.
7
+ */
8
+ export declare class SegmentAnalyticsListenerService extends AbstractAnalyticsServiceListener {
9
+ private _segmentApi;
10
+ constructor(_segmentApi: SegmentApiService);
11
+ protected _initializeServiceSubscription(): import("rxjs").Subscription;
12
+ protected handleStreamEvent(api: SegmentAnalytics.AnalyticsJS, streamEvent: AnalyticsStreamEvent): void;
13
+ protected updateWithNewUserEvent(api: SegmentAnalytics.AnalyticsJS, streamEvent: AnalyticsStreamEvent): void;
14
+ protected updateWithEvent(api: SegmentAnalytics.AnalyticsJS, streamEvent: AnalyticsStreamEvent, name?: string): void;
15
+ private changeUser;
16
+ static ɵfac: i0.ɵɵFactoryDeclaration<SegmentAnalyticsListenerService, never>;
17
+ static ɵprov: i0.ɵɵInjectableDeclaration<SegmentAnalyticsListenerService>;
18
+ }
@@ -0,0 +1,8 @@
1
+ import { ModuleWithProviders } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare class SegmentModule {
4
+ static forRoot(preloadService?: boolean): ModuleWithProviders<SegmentModule>;
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<SegmentModule, never>;
6
+ static ɵmod: i0.ɵɵNgModuleDeclaration<SegmentModule, never, never, never>;
7
+ static ɵinj: i0.ɵɵInjectorDeclaration<SegmentModule>;
8
+ }
@@ -0,0 +1,27 @@
1
+ /// <reference types="segment-analytics" />
2
+ import { InjectionToken } from '@angular/core';
3
+ import { AbstractAsyncWindowLoadedService } from '@dereekb/browser';
4
+ import * as i0 from "@angular/core";
5
+ export declare const PRELOAD_SEGMENT_TOKEN: InjectionToken<string>;
6
+ export declare class SegmentApiServiceConfig {
7
+ writeKey: string;
8
+ logging: boolean;
9
+ active: boolean;
10
+ constructor(writeKey: string);
11
+ }
12
+ /**
13
+ * Segment API Service used for waiting/retrieving the segment API from window when initialized.
14
+ *
15
+ * This requires some setup in index.html.
16
+ */
17
+ export declare class SegmentApiService extends AbstractAsyncWindowLoadedService<SegmentAnalytics.AnalyticsJS> {
18
+ private _config;
19
+ static readonly SEGMENT_API_WINDOW_KEY = "analytics";
20
+ static readonly SEGMENT_READY_KEY = "SegmentReady";
21
+ constructor(_config: SegmentApiServiceConfig, preload?: boolean);
22
+ get config(): SegmentApiServiceConfig;
23
+ protected _prepareCompleteLoadingService(): Promise<void>;
24
+ protected _initService(service: SegmentAnalytics.AnalyticsJS): Promise<SegmentAnalytics.AnalyticsJS>;
25
+ static ɵfac: i0.ɵɵFactoryDeclaration<SegmentApiService, never>;
26
+ static ɵprov: i0.ɵɵInjectableDeclaration<SegmentApiService>;
27
+ }
package/package.json CHANGED
@@ -1,30 +1,31 @@
1
1
  {
2
2
  "name": "@dereekb/dbx-analytics",
3
- "version": "0.0.1",
3
+ "version": "1.2.0",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.1.0",
6
6
  "@angular/core": "^13.1.0",
7
- "@dereekb/rxjs": "0.0.1",
7
+ "@dereekb/rxjs": "1.2.0",
8
8
  "rxjs": "^7.5.2",
9
- "@dereekb/util": "0.0.1",
9
+ "@dereekb/util": "1.2.0",
10
10
  "extra-set": "^2.2.11",
11
11
  "ms": "^3.0.0-canary.1",
12
- "@dereekb/dbx-core": "0.0.1",
12
+ "@dereekb/dbx-core": "1.2.0",
13
13
  "@ngrx/component-store": "^13.0.2",
14
14
  "@ngrx/data": "^13.0.2",
15
15
  "@ngrx/effects": "^13.0.2",
16
16
  "@ngrx/entity": "^13.0.2",
17
17
  "@ngrx/store": "^13.0.2",
18
- "@angular/platform-browser": "13.2.0",
19
- "date-fns": "2.28.0",
20
- "@dereekb/date": "0.0.1",
21
- "date-fns-tz": "1.2.2",
22
- "class-transformer": "0.5.1",
23
- "class-validator": "0.13.2",
24
- "reflect-metadata": "0.1.13",
25
- "rrule": "dereekb/rrule#17adf5708d6567b4d01a3a8afd106261421ea492",
26
- "@angular/router": "13.2.0",
27
- "@uirouter/core": "^6.0.8"
18
+ "@angular/platform-browser": "^13.0.0",
19
+ "date-fns": "^2.28.0",
20
+ "@dereekb/date": "1.2.0",
21
+ "class-transformer": "^0.5.1",
22
+ "class-validator": "^0.13.2",
23
+ "date-fns-tz": "^1.2.2",
24
+ "rrule": "git+https://git@github.com/dereekb/rrule.git#17adf5708d6567b4d01a3a8afd106261421ea492",
25
+ "@angular/router": "^13.0.0",
26
+ "@uirouter/core": "^6.0.8",
27
+ "@uirouter/angular": "^9.1.0",
28
+ "@dereekb/browser": "1.2.0"
28
29
  },
29
30
  "dependencies": {
30
31
  "tslib": "^2.3.0"
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5hbHl0aWNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWFuYWx5dGljcy9zcmMvbGliL2FuYWx5dGljcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTWF5YmUsIFByaW1hdGl2ZUtleSB9IGZyb20gXCJAZGVyZWVrYi91dGlsXCI7XG5cbmV4cG9ydCB0eXBlIEFuYWx5dGljc0V2ZW50TmFtZSA9IHN0cmluZztcbmV4cG9ydCB0eXBlIEFuYWx5dGljc1VzZXJJZCA9IHN0cmluZztcblxuZXhwb3J0IGludGVyZmFjZSBBbmFseXRpY3NVc2VyIHtcbiAgcmVhZG9ubHkgdXNlcjogQW5hbHl0aWNzVXNlcklkO1xuICByZWFkb25seSBwcm9wZXJ0aWVzPzoge1xuICAgIHJlYWRvbmx5IFtrZXk6IHN0cmluZ106IFByaW1hdGl2ZUtleSB8IGJvb2xlYW47XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQW5hbHl0aWNzRXZlbnREYXRhIHtcbiAgcmVhZG9ubHkgW2tleTogc3RyaW5nXTogUHJpbWF0aXZlS2V5IHwgYm9vbGVhbjtcbn1cblxuZXhwb3J0IHR5cGUgTmV3VXNlclJlZ2lzdHJhdGlvbk1ldGhvZCA9ICdmYWNlYm9vaycgfCAnZ29vZ2xlJyB8ICdlbWFpbCcgfCBzdHJpbmc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmV3VXNlckFuYWx5dGljc0V2ZW50RGF0YSBleHRlbmRzIEFuYWx5dGljc0V2ZW50RGF0YSB7XG4gIG1ldGhvZDogTmV3VXNlclJlZ2lzdHJhdGlvbk1ldGhvZDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBbmFseXRpY3NFdmVudCB7XG4gIHJlYWRvbmx5IG5hbWU/OiBBbmFseXRpY3NFdmVudE5hbWU7XG4gIHJlYWRvbmx5IHZhbHVlPzogbnVtYmVyO1xuICByZWFkb25seSBkYXRhPzogQW5hbHl0aWNzRXZlbnREYXRhO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVzZXJBbmFseXRpY3NFdmVudCBleHRlbmRzIEFuYWx5dGljc0V2ZW50IHtcbiAgcmVhZG9ubHkgdXNlcj86IE1heWJlPEFuYWx5dGljc1VzZXI+O1xufVxuIl19
@@ -1,23 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { DbNgxAnalyticsService } from './analytics.service';
3
- import * as i0 from "@angular/core";
4
- export class DbNgxAnalyticsModule {
5
- static forRoot(options) {
6
- return {
7
- ngModule: DbNgxAnalyticsModule,
8
- providers: [
9
- // Configuration
10
- options.analyticsConfigurationProvider,
11
- // Service
12
- DbNgxAnalyticsService
13
- ]
14
- };
15
- }
16
- }
17
- DbNgxAnalyticsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: DbNgxAnalyticsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
18
- DbNgxAnalyticsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: DbNgxAnalyticsModule });
19
- DbNgxAnalyticsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: DbNgxAnalyticsModule });
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: DbNgxAnalyticsModule, decorators: [{
21
- type: NgModule
22
- }] });
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5hbHl0aWNzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1hbmFseXRpY3Mvc3JjL2xpYi9hbmFseXRpY3MubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQWlDLE1BQU0sZUFBZSxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQWE1RCxNQUFNLE9BQU8sb0JBQW9CO0lBRS9CLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBb0M7UUFDakQsT0FBTztZQUNMLFFBQVEsRUFBRSxvQkFBb0I7WUFDOUIsU0FBUyxFQUFFO2dCQUNULGdCQUFnQjtnQkFDaEIsT0FBTyxDQUFDLDhCQUE4QjtnQkFDdEMsVUFBVTtnQkFDVixxQkFBcUI7YUFDdEI7U0FDRixDQUFDO0lBQ0osQ0FBQzs7aUhBWlUsb0JBQW9CO2tIQUFwQixvQkFBb0I7a0hBQXBCLG9CQUFvQjsyRkFBcEIsb0JBQW9CO2tCQURoQyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUsIE1vZHVsZVdpdGhQcm92aWRlcnMsIFByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYk5neEFuYWx5dGljc1NlcnZpY2UgfSBmcm9tICcuL2FuYWx5dGljcy5zZXJ2aWNlJztcblxuXG5leHBvcnQgaW50ZXJmYWNlIERiTmd4QW5hbHl0aWNzTW9kdWxlT3B0aW9ucyB7XG5cbiAgLyoqXG4gICAqIFByb3ZpZGVzIGEgQW5hbHl0aWNzU2VydmljZUNvbmZpZ3VyYXRpb24gdmFsdWUuXG4gICAqL1xuICBhbmFseXRpY3NDb25maWd1cmF0aW9uUHJvdmlkZXI6IFByb3ZpZGVyO1xuXG59XG5cbkBOZ01vZHVsZSgpXG5leHBvcnQgY2xhc3MgRGJOZ3hBbmFseXRpY3NNb2R1bGUge1xuXG4gIHN0YXRpYyBmb3JSb290KG9wdGlvbnM6IERiTmd4QW5hbHl0aWNzTW9kdWxlT3B0aW9ucyk6IE1vZHVsZVdpdGhQcm92aWRlcnM8RGJOZ3hBbmFseXRpY3NNb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IERiTmd4QW5hbHl0aWNzTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIC8vIENvbmZpZ3VyYXRpb25cbiAgICAgICAgb3B0aW9ucy5hbmFseXRpY3NDb25maWd1cmF0aW9uUHJvdmlkZXIsXG4gICAgICAgIC8vIFNlcnZpY2VcbiAgICAgICAgRGJOZ3hBbmFseXRpY3NTZXJ2aWNlXG4gICAgICBdXG4gICAgfTtcbiAgfVxuXG59XG4iXX0=
@@ -1,179 +0,0 @@
1
- import { Subject, BehaviorSubject, of } from 'rxjs';
2
- import { filter, first, shareReplay, switchMap } from 'rxjs/operators';
3
- import { Inject, Injectable, Optional } from '@angular/core';
4
- import { SubscriptionObject } from '@dereekb/rxjs';
5
- import { AnalyticsStreamEventType } from './analytics.stream';
6
- import * as i0 from "@angular/core";
7
- export class DbNgxAnalyticsEventEmitterService {
8
- }
9
- export class DbNgxAnalyticsEventStreamService {
10
- }
11
- export class DbNgxAnalyticsUserSource {
12
- }
13
- export class DbNgxAnalyticsServiceListener {
14
- }
15
- export class AbstractAnalyticsServiceListener {
16
- constructor() {
17
- this._sub = new SubscriptionObject();
18
- }
19
- listenToService(service) {
20
- this._service = service;
21
- this._sub.subscription = service.events$.pipe(filter((e) => this.filterEvent(e)))
22
- .subscribe((event) => this.updateOnStreamEvent(event));
23
- }
24
- filterEvent(streamEvent) {
25
- return true;
26
- }
27
- }
28
- export class DbNgxAnalyticsServiceConfiguration {
29
- constructor() {
30
- this.listeners = [];
31
- }
32
- }
33
- export class AnalyticsStreamEventAnalyticsEventWrapper {
34
- constructor(event, type = AnalyticsStreamEventType.Event) {
35
- this.event = event;
36
- this.type = type;
37
- }
38
- get user() {
39
- return this.event.user;
40
- }
41
- get userId() {
42
- return (this.user) ? this.user.user : undefined;
43
- }
44
- }
45
- /**
46
- * Primary analytics service that emits analytics events that components can listen to.
47
- */
48
- export class DbNgxAnalyticsService {
49
- constructor(_config, userSource = _config.userSource) {
50
- this._config = _config;
51
- this._subject = new Subject();
52
- this.events$ = this._subject.asObservable();
53
- this._userSource = new BehaviorSubject(undefined);
54
- this.user$ = this._userSource.pipe(switchMap(x => (x) ? x.analyticsUser$ : of(undefined)), shareReplay(1));
55
- this._userSourceSub = new SubscriptionObject();
56
- this._loggerSub = new SubscriptionObject();
57
- this._init();
58
- if (userSource) {
59
- this.setUserSource(userSource);
60
- }
61
- }
62
- // MARK: Source
63
- /**
64
- * Sets the user directly.
65
- */
66
- setUser(user) {
67
- let source;
68
- if (user) {
69
- source = { analyticsUser$: of(user) };
70
- }
71
- this._userSource.next(source);
72
- }
73
- setUserSource(source) {
74
- this._userSource.next(source);
75
- }
76
- // MARK: DbNgxAnalyticsEventEmitterService
77
- /**
78
- * Sends an event.
79
- */
80
- sendNewUserEvent(user, data) {
81
- this.sendNextEvent({
82
- name: DbNgxAnalyticsService.USER_REGISTRATION_EVENT_NAME,
83
- data
84
- }, AnalyticsStreamEventType.NewUserEvent, user);
85
- }
86
- sendUserLoginEvent(user, data) {
87
- this.sendNextEvent({
88
- name: DbNgxAnalyticsService.USER_LOGIN_EVENT_NAME,
89
- data
90
- }, AnalyticsStreamEventType.UserLoginEvent, user);
91
- }
92
- sendUserLogoutEvent(data, clearUser = true) {
93
- this.sendNextEvent({
94
- name: DbNgxAnalyticsService.USER_LOGOUT_EVENT_NAME,
95
- data
96
- }, AnalyticsStreamEventType.UserLogoutEvent);
97
- if (clearUser) {
98
- this.setUser(undefined);
99
- }
100
- }
101
- sendUserPropertiesEvent(user, data) {
102
- this.sendNextEvent({
103
- name: DbNgxAnalyticsService.USER_PROPERTIES_EVENT_NAME,
104
- data
105
- }, AnalyticsStreamEventType.UserPropertiesEvent, user);
106
- }
107
- sendEventData(name, data) {
108
- return this.sendEvent({
109
- name,
110
- data
111
- });
112
- }
113
- sendEventType(eventType) {
114
- this.sendNextEvent({
115
- name: eventType
116
- }, AnalyticsStreamEventType.Event);
117
- }
118
- sendEvent(event) {
119
- this.sendNextEvent(event, AnalyticsStreamEventType.Event);
120
- }
121
- sendPageView(page) {
122
- this.sendNextEvent({
123
- name: page
124
- }, AnalyticsStreamEventType.PageView);
125
- }
126
- sendNextEvent(event = {}, type, userOverride) {
127
- this.user$.pipe(first()).subscribe((analyticsUser) => {
128
- const user = (userOverride != null) ? userOverride : analyticsUser;
129
- const analyticsEvent = { ...event, user };
130
- this.nextEvent(analyticsEvent, type);
131
- });
132
- }
133
- nextEvent(event, type) {
134
- const wrapper = new AnalyticsStreamEventAnalyticsEventWrapper(event, type);
135
- this._subject.next(wrapper);
136
- }
137
- // MARK: Internal
138
- _init() {
139
- if (this._config.isProduction) {
140
- // Initialize listeners.
141
- this._config.listeners.forEach((listener) => {
142
- listener.listenToService(this);
143
- });
144
- }
145
- else {
146
- console.warn('DbNgxAnalyticsService: Analytics not in production mode. All analytics events are ignored.');
147
- }
148
- if (this._config.logEvents || !this._config.isProduction) {
149
- console.log('DbNgxAnalyticsService: Log analytics events enabled.');
150
- // Create a new subscription
151
- this._loggerSub.subscription = this._subject.subscribe((x) => {
152
- console.log(`DbNgxAnalyticsService: Analytics Event - ${AnalyticsStreamEventType[x.type]} User: ${x.userId} Data: ${JSON.stringify(x.event)}.`);
153
- });
154
- }
155
- this._userSourceSub.subscription = this.user$.subscribe(() => {
156
- this.sendNextEvent({}, AnalyticsStreamEventType.UserChange);
157
- });
158
- }
159
- destroy() {
160
- this._userSourceSub.destroy();
161
- this._loggerSub.destroy();
162
- }
163
- }
164
- // TODO: Make these configurable.
165
- DbNgxAnalyticsService.USER_REGISTRATION_EVENT_NAME = 'User Registered';
166
- DbNgxAnalyticsService.USER_LOGIN_EVENT_NAME = 'User Login';
167
- DbNgxAnalyticsService.USER_LOGOUT_EVENT_NAME = 'User Logout';
168
- DbNgxAnalyticsService.USER_PROPERTIES_EVENT_NAME = 'User Properties';
169
- DbNgxAnalyticsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: DbNgxAnalyticsService, deps: [{ token: DbNgxAnalyticsServiceConfiguration }, { token: DbNgxAnalyticsUserSource, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
170
- DbNgxAnalyticsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: DbNgxAnalyticsService });
171
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: DbNgxAnalyticsService, decorators: [{
172
- type: Injectable
173
- }], ctorParameters: function () { return [{ type: DbNgxAnalyticsServiceConfiguration }, { type: undefined, decorators: [{
174
- type: Optional
175
- }, {
176
- type: Inject,
177
- args: [DbNgxAnalyticsUserSource]
178
- }] }]; } });
179
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5hbHl0aWNzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtYW5hbHl0aWNzL3NyYy9saWIvYW5hbHl0aWNzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFjLE9BQU8sRUFBRSxlQUFlLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2RSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRW5ELE9BQU8sRUFBd0Isd0JBQXdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7QUFHcEYsTUFBTSxPQUFnQixpQ0FBaUM7Q0FRdEQ7QUFFRCxNQUFNLE9BQWdCLGdDQUFnQztDQUVyRDtBQUVELE1BQU0sT0FBZ0Isd0JBQXdCO0NBRTdDO0FBRUQsTUFBTSxPQUFnQiw2QkFBNkI7Q0FFbEQ7QUFFRCxNQUFNLE9BQWdCLGdDQUFnQztJQUF0RDtRQUdZLFNBQUksR0FBRyxJQUFJLGtCQUFrQixFQUFFLENBQUM7SUFjNUMsQ0FBQztJQVpRLGVBQWUsQ0FBQyxPQUE4QjtRQUNuRCxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQztRQUN4QixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUM5RSxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FB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QU8sQ0FBQyxHQUFHLENBQUMsNENBQTRDLHdCQUF3QixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsTUFBTSxVQUFVLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNsSixDQUFDLENBQUMsQ0FBQztTQUNKO1FBRUQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQzNELElBQUksQ0FBQyxhQUFhLENBQUMsRUFBRSxFQUFFLHdCQUF3QixDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzlELENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELE9BQU87UUFDTCxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQzlCLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDNUIsQ0FBQzs7QUFsSkQsaUNBQWlDO0FBRWpCLGtEQUE0QixHQUFHLGlCQUFrQixDQUFBO0FBQ2pELDJDQUFxQixHQUFHLFlBQWEsQ0FBQTtBQUNyQyw0Q0FBc0IsR0FBRyxhQUFjLENBQUE7QUFDdkMsZ0RBQTBCLEdBQUcsaUJBQWtCLENBQUE7a0hBUHBELHFCQUFxQixrQkFtQmIsa0NBQWtDLGFBQy9CLHdCQUF3QjtzSEFwQm5DLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQURqQyxVQUFVOzBEQW9CVSxrQ0FBa0M7MEJBQ2xELFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCwgQmVoYXZpb3JTdWJqZWN0LCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCBmaXJzdCwgc2hhcmVSZXBsYXksIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbk9iamVjdCB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgQW5hbHl0aWNzRXZlbnQsIEFuYWx5dGljc0V2ZW50RGF0YSwgQW5hbHl0aWNzRXZlbnROYW1lLCBBbmFseXRpY3NVc2VyLCBOZXdVc2VyQW5hbHl0aWNzRXZlbnREYXRhLCBVc2VyQW5hbHl0aWNzRXZlbnQgfSBmcm9tICcuL2FuYWx5dGljcyc7XG5pbXBvcnQgeyBBbmFseXRpY3NTdHJlYW1FdmVudCwgQW5hbHl0aWNzU3RyZWFtRXZlbnRUeXBlIH0gZnJvbSAnLi9hbmFseXRpY3Muc3RyZWFtJztcbmltcG9ydCB7IE1heWJlLCBEZXN0cm95YWJsZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRGJOZ3hBbmFseXRpY3NFdmVudEVtaXR0ZXJTZXJ2aWNlIHtcbiAgYWJzdHJhY3Qgc2VuZE5ld1VzZXJFdmVudCh1c2VyOiBBbmFseXRpY3NVc2VyLCBkYXRhOiBOZXdVc2VyQW5hbHl0aWNzRXZlbnREYXRhKTogdm9pZDtcbiAgYWJzdHJhY3Qgc2VuZFVzZXJMb2dpbkV2ZW50KHVzZXI6IEFuYWx5dGljc1VzZXIsIGRhdGE/OiBBbmFseXRpY3NFdmVudERhdGEpOiB2b2lkO1xuICBhYnN0cmFjdCBzZW5kVXNlckxvZ291dEV2ZW50KGRhdGE/OiBBbmFseXRpY3NFdmVudERhdGEpOiB2b2lkO1xuICBhYnN0cmFjdCBzZW5kVXNlclByb3BlcnRpZXNFdmVudCh1c2VyOiBBbmFseXRpY3NVc2VyLCBkYXRhPzogQW5hbHl0aWNzRXZlbnREYXRhKTogdm9pZDtcbiAgYWJzdHJhY3Qgc2VuZEV2ZW50RGF0YShuYW1lOiBBbmFseXRpY3NFdmVudE5hbWUsIGRhdGE/OiBBbmFseXRpY3NFdmVudERhdGEpOiB2b2lkO1xuICBhYnN0cmFjdCBzZW5kRXZlbnQoZXZlbnQ6IEFuYWx5dGljc0V2ZW50KTogdm9pZDtcbiAgYWJzdHJhY3Qgc2VuZFBhZ2VWaWV3KHBhZ2U/OiBzdHJpbmcpOiB2b2lkO1xufVxuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRGJOZ3hBbmFseXRpY3NFdmVudFN0cmVhbVNlcnZpY2Uge1xuICBhYnN0cmFjdCByZWFkb25seSBldmVudHMkOiBPYnNlcnZhYmxlPEFuYWx5dGljc1N0cmVhbUV2ZW50Pjtcbn1cblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIERiTmd4QW5hbHl0aWNzVXNlclNvdXJjZSB7XG4gIGFic3RyYWN0IHJlYWRvbmx5IGFuYWx5dGljc1VzZXIkOiBPYnNlcnZhYmxlPE1heWJlPEFuYWx5dGljc1VzZXI+Pjtcbn1cblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIERiTmd4QW5hbHl0aWNzU2VydmljZUxpc3RlbmVyIHtcbiAgcHVibGljIGFic3RyYWN0IGxpc3RlblRvU2VydmljZShzZXJ2aWNlOiBEYk5neEFuYWx5dGljc1NlcnZpY2UpOiB2b2lkO1xufVxuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3RBbmFseXRpY3NTZXJ2aWNlTGlzdGVuZXIgaW1wbGVtZW50cyBEYk5neEFuYWx5dGljc1NlcnZpY2VMaXN0ZW5lciB7XG5cbiAgcHJvdGVjdGVkIF9zZXJ2aWNlPzogRGJOZ3hBbmFseXRpY3NTZXJ2aWNlO1xuICBwcm90ZWN0ZWQgX3N1YiA9IG5ldyBTdWJzY3JpcHRpb25PYmplY3QoKTtcblxuICBwdWJsaWMgbGlzdGVuVG9TZXJ2aWNlKHNlcnZpY2U6IERiTmd4QW5hbHl0aWNzU2VydmljZSk6IHZvaWQge1xuICAgIHRoaXMuX3NlcnZpY2UgPSBzZXJ2aWNlO1xuICAgIHRoaXMuX3N1Yi5zdWJzY3JpcHRpb24gPSBzZXJ2aWNlLmV2ZW50cyQucGlwZShmaWx0ZXIoKGUpID0+IHRoaXMuZmlsdGVyRXZlbnQoZSkpKVxuICAgICAgLnN1YnNjcmliZSgoZXZlbnQpID0+IHRoaXMudXBkYXRlT25TdHJlYW1FdmVudChldmVudCkpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGZpbHRlckV2ZW50KHN0cmVhbUV2ZW50OiBBbmFseXRpY3NTdHJlYW1FdmVudCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFic3RyYWN0IHVwZGF0ZU9uU3RyZWFtRXZlbnQoZXZlbnQ6IEFuYWx5dGljc1N0cmVhbUV2ZW50KTogdm9pZDtcblxufVxuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRGJOZ3hBbmFseXRpY3NTZXJ2aWNlQ29uZmlndXJhdGlvbiB7XG4gIGxpc3RlbmVyczogRGJOZ3hBbmFseXRpY3NTZXJ2aWNlTGlzdGVuZXJbXSA9IFtdO1xuICBpc1Byb2R1Y3Rpb24/OiBib29sZWFuO1xuICBsb2dFdmVudHM/OiBib29sZWFuO1xuICB1c2VyU291cmNlPzogRGJOZ3hBbmFseXRpY3NVc2VyU291cmNlO1xufVxuXG5leHBvcnQgY2xhc3MgQW5hbHl0aWNzU3RyZWFtRXZlbnRBbmFseXRpY3NFdmVudFdyYXBwZXIgaW1wbGVtZW50cyBBbmFseXRpY3NTdHJlYW1FdmVudCB7XG5cbiAgY29uc3RydWN0b3IocHVibGljIHJlYWRvbmx5IGV2ZW50OiBVc2VyQW5hbHl0aWNzRXZlbnQsIHB1YmxpYyByZWFkb25seSB0eXBlOiBBbmFseXRpY3NTdHJlYW1FdmVudFR5cGUgPSBBbmFseXRpY3NTdHJlYW1FdmVudFR5cGUuRXZlbnQpIHsgfVxuXG4gIHB1YmxpYyBnZXQgdXNlcigpOiBNYXliZTxBbmFseXRpY3NVc2VyPiB7XG4gICAgcmV0dXJuIHRoaXMuZXZlbnQudXNlcjtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgdXNlcklkKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuICh0aGlzLnVzZXIpID8gdGhpcy51c2VyLnVzZXIgOiB1bmRlZmluZWQ7XG4gIH1cblxufVxuXG4vKipcbiAqIFByaW1hcnkgYW5hbHl0aWNzIHNlcnZpY2UgdGhhdCBlbWl0cyBhbmFseXRpY3MgZXZlbnRzIHRoYXQgY29tcG9uZW50cyBjYW4gbGlzdGVuIHRvLlxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRGJOZ3hBbmFseXRpY3NTZXJ2aWNlIGltcGxlbWVudHMgRGJOZ3hBbmFseXRpY3NFdmVudFN0cmVhbVNlcnZpY2UsIERiTmd4QW5hbHl0aWNzRXZlbnRFbWl0dGVyU2VydmljZSwgRGVzdHJveWFibGUge1xuXG4gIC8vIFRPRE86IE1ha2UgdGhlc2UgY29uZmlndXJhYmxlLlxuXG4gIHN0YXRpYyByZWFkb25seSBVU0VSX1JFR0lTVFJBVElPTl9FVkVOVF9OQU1FID0gJ1VzZXIgUmVnaXN0ZXJlZCc7XG4gIHN0YXRpYyByZWFkb25seSBVU0VSX0xPR0lOX0VWRU5UX05BTUUgPSAnVXNlciBMb2dpbic7XG4gIHN0YXRpYyByZWFkb25seSBVU0VSX0xPR09VVF9FVkVOVF9OQU1FID0gJ1VzZXIgTG9nb3V0JztcbiAgc3RhdGljIHJlYWRvbmx5IFVTRVJfUFJPUEVSVElFU19FVkVOVF9OQU1FID0gJ1VzZXIgUHJvcGVydGllcyc7XG5cbiAgcHJpdmF0ZSBfc3ViamVjdCA9IG5ldyBTdWJqZWN0PEFuYWx5dGljc1N0cmVhbUV2ZW50PigpO1xuICByZWFkb25seSBldmVudHMkID0gdGhpcy5fc3ViamVjdC5hc09ic2VydmFibGUoKTtcblxuICBwcml2YXRlIF91c2VyU291cmNlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxNYXliZTxEYk5neEFuYWx5dGljc1VzZXJTb3VyY2U+Pih1bmRlZmluZWQpO1xuICByZWFkb25seSB1c2VyJCA9IHRoaXMuX3VzZXJTb3VyY2UucGlwZShzd2l0Y2hNYXAoeCA9PiAoeCkgPyB4LmFuYWx5dGljc1VzZXIkIDogb2YodW5kZWZpbmVkKSksIHNoYXJlUmVwbGF5KDEpKTtcblxuICBwcml2YXRlIF91c2VyU291cmNlU3ViID0gbmV3IFN1YnNjcmlwdGlvbk9iamVjdCgpO1xuICBwcml2YXRlIF9sb2dnZXJTdWIgPSBuZXcgU3Vic2NyaXB0aW9uT2JqZWN0KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfY29uZmlnOiBEYk5neEFuYWx5dGljc1NlcnZpY2VDb25maWd1cmF0aW9uLFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoRGJOZ3hBbmFseXRpY3NVc2VyU291cmNlKSB1c2VyU291cmNlOiBNYXliZTxEYk5neEFuYWx5dGljc1VzZXJTb3VyY2U+ID0gX2NvbmZpZy51c2VyU291cmNlXG4gICkge1xuICAgIHRoaXMuX2luaXQoKTtcblxuICAgIGlmICh1c2VyU291cmNlKSB7XG4gICAgICB0aGlzLnNldFVzZXJTb3VyY2UodXNlclNvdXJjZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gTUFSSzogU291cmNlXG4gIC8qKlxuICAgKiBTZXRzIHRoZSB1c2VyIGRpcmVjdGx5LlxuICAgKi9cbiAgcHVibGljIHNldFVzZXIodXNlcjogTWF5YmU8QW5hbHl0aWNzVXNlcj4pOiB2b2lkIHtcbiAgICBsZXQgc291cmNlOiBNYXliZTxEYk5neEFuYWx5dGljc1VzZXJTb3VyY2U+O1xuXG4gICAgaWYgKHVzZXIpIHtcbiAgICAgIHNvdXJjZSA9IHsgYW5hbHl0aWNzVXNlciQ6IG9mKHVzZXIpIH07XG4gICAgfVxuXG4gICAgdGhpcy5fdXNlclNvdXJjZS5uZXh0KHNvdXJjZSk7XG4gIH1cblxuICBwdWJsaWMgc2V0VXNlclNvdXJjZShzb3VyY2U6IERiTmd4QW5hbHl0aWNzVXNlclNvdXJjZSk6IHZvaWQge1xuICAgIHRoaXMuX3VzZXJTb3VyY2UubmV4dChzb3VyY2UpO1xuICB9XG5cbiAgLy8gTUFSSzogRGJOZ3hBbmFseXRpY3NFdmVudEVtaXR0ZXJTZXJ2aWNlXG4gIC8qKlxuICAgKiBTZW5kcyBhbiBldmVudC5cbiAgICovXG4gIHB1YmxpYyBzZW5kTmV3VXNlckV2ZW50KHVzZXI6IEFuYWx5dGljc1VzZXIsIGRhdGE6IE5ld1VzZXJBbmFseXRpY3NFdmVudERhdGEpOiB2b2lkIHtcbiAgICB0aGlzLnNlbmROZXh0RXZlbnQoe1xuICAgICAgbmFtZTogRGJOZ3hBbmFseXRpY3NTZXJ2aWNlLlVTRVJfUkVHSVNUUkFUSU9OX0VWRU5UX05BTUUsXG4gICAgICBkYXRhXG4gICAgfSwgQW5hbHl0aWNzU3RyZWFtRXZlbnRUeXBlLk5ld1VzZXJFdmVudCwgdXNlcik7XG4gIH1cblxuICBwdWJsaWMgc2VuZFVzZXJMb2dpbkV2ZW50KHVzZXI6IEFuYWx5dGljc1VzZXIsIGRhdGE/OiBBbmFseXRpY3NFdmVudERhdGEpOiB2b2lkIHtcbiAgICB0aGlzLnNlbmROZXh0RXZlbnQoe1xuICAgICAgbmFtZTogRGJOZ3hBbmFseXRpY3NTZXJ2aWNlLlVTRVJfTE9HSU5fRVZFTlRfTkFNRSxcbiAgICAgIGRhdGFcbiAgICB9LCBBbmFseXRpY3NTdHJlYW1FdmVudFR5cGUuVXNlckxvZ2luRXZlbnQsIHVzZXIpO1xuICB9XG5cbiAgcHVibGljIHNlbmRVc2VyTG9nb3V0RXZlbnQoZGF0YT86IEFuYWx5dGljc0V2ZW50RGF0YSwgY2xlYXJVc2VyID0gdHJ1ZSk6IHZvaWQge1xuICAgIHRoaXMuc2VuZE5leHRFdmVudCh7XG4gICAgICBuYW1lOiBEYk5neEFuYWx5dGljc1NlcnZpY2UuVVNFUl9MT0dPVVRfRVZFTlRfTkFNRSxcbiAgICAgIGRhdGFcbiAgICB9LCBBbmFseXRpY3NTdHJlYW1FdmVudFR5cGUuVXNlckxvZ291dEV2ZW50KTtcblxuICAgIGlmIChjbGVhclVzZXIpIHtcbiAgICAgIHRoaXMuc2V0VXNlcih1bmRlZmluZWQpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBzZW5kVXNlclByb3BlcnRpZXNFdmVudCh1c2VyOiBBbmFseXRpY3NVc2VyLCBkYXRhPzogQW5hbHl0aWNzRXZlbnREYXRhKTogdm9pZCB7XG4gICAgdGhpcy5zZW5kTmV4dEV2ZW50KHtcbiAgICAgIG5hbWU6IERiTmd4QW5hbHl0aWNzU2VydmljZS5VU0VSX1BST1BFUlRJRVNfRVZFTlRfTkFNRSxcbiAgICAgIGRhdGFcbiAgICB9LCBBbmFseXRpY3NTdHJlYW1FdmVudFR5cGUuVXNlclByb3BlcnRpZXNFdmVudCwgdXNlcik7XG4gIH1cblxuICBwdWJsaWMgc2VuZEV2ZW50RGF0YShuYW1lOiBBbmFseXRpY3NFdmVudE5hbWUsIGRhdGE/OiBBbmFseXRpY3NFdmVudERhdGEpOiB2b2lkIHtcbiAgICByZXR1cm4gdGhpcy5zZW5kRXZlbnQoe1xuICAgICAgbmFtZSxcbiAgICAgIGRhdGFcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBzZW5kRXZlbnRUeXBlKGV2ZW50VHlwZTogQW5hbHl0aWNzRXZlbnROYW1lKTogdm9pZCB7XG4gICAgdGhpcy5zZW5kTmV4dEV2ZW50KHtcbiAgICAgIG5hbWU6IGV2ZW50VHlwZVxuICAgIH0sIEFuYWx5dGljc1N0cmVhbUV2ZW50VHlwZS5FdmVudCk7XG4gIH1cblxuICBwdWJsaWMgc2VuZEV2ZW50KGV2ZW50OiBBbmFseXRpY3NFdmVudCk6IHZvaWQge1xuICAgIHRoaXMuc2VuZE5leHRFdmVudChldmVudCwgQW5hbHl0aWNzU3RyZWFtRXZlbnRUeXBlLkV2ZW50KTtcbiAgfVxuXG4gIHB1YmxpYyBzZW5kUGFnZVZpZXcocGFnZT86IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuc2VuZE5leHRFdmVudCh7XG4gICAgICBuYW1lOiBwYWdlXG4gICAgfSwgQW5hbHl0aWNzU3RyZWFtRXZlbnRUeXBlLlBhZ2VWaWV3KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBzZW5kTmV4dEV2ZW50KGV2ZW50OiBBbmFseXRpY3NFdmVudCA9IHt9LCB0eXBlOiBBbmFseXRpY3NTdHJlYW1FdmVudFR5cGUsIHVzZXJPdmVycmlkZT86IEFuYWx5dGljc1VzZXIpOiB2b2lkIHtcbiAgICB0aGlzLnVzZXIkLnBpcGUoZmlyc3QoKSkuc3Vic2NyaWJlKChhbmFseXRpY3NVc2VyKSA9PiB7XG4gICAgICBjb25zdCB1c2VyOiBNYXliZTxBbmFseXRpY3NVc2VyPiA9ICh1c2VyT3ZlcnJpZGUgIT0gbnVsbCkgPyB1c2VyT3ZlcnJpZGUgOiBhbmFseXRpY3NVc2VyO1xuICAgICAgY29uc3QgYW5hbHl0aWNzRXZlbnQ6IFVzZXJBbmFseXRpY3NFdmVudCA9IHsgLi4uZXZlbnQsIHVzZXIgfTtcbiAgICAgIHRoaXMubmV4dEV2ZW50KGFuYWx5dGljc0V2ZW50LCB0eXBlKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBuZXh0RXZlbnQoZXZlbnQ6IFVzZXJBbmFseXRpY3NFdmVudCwgdHlwZTogQW5hbHl0aWNzU3RyZWFtRXZlbnRUeXBlKTogdm9pZCB7XG4gICAgY29uc3Qgd3JhcHBlciA9IG5ldyBBbmFseXRpY3NTdHJlYW1FdmVudEFuYWx5dGljc0V2ZW50V3JhcHBlcihldmVudCwgdHlwZSk7XG4gICAgdGhpcy5fc3ViamVjdC5uZXh0KHdyYXBwZXIpO1xuICB9XG5cbiAgLy8gTUFSSzogSW50ZXJuYWxcbiAgcHJpdmF0ZSBfaW5pdCgpOiB2b2lkIHtcblxuICAgIGlmICh0aGlzLl9jb25maWcuaXNQcm9kdWN0aW9uKSB7XG4gICAgICAvLyBJbml0aWFsaXplIGxpc3RlbmVycy5cbiAgICAgIHRoaXMuX2NvbmZpZy5saXN0ZW5lcnMuZm9yRWFjaCgobGlzdGVuZXIpID0+IHtcbiAgICAgICAgbGlzdGVuZXIubGlzdGVuVG9TZXJ2aWNlKHRoaXMpO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnNvbGUud2FybignRGJOZ3hBbmFseXRpY3NTZXJ2aWNlOiBBbmFseXRpY3Mgbm90IGluIHByb2R1Y3Rpb24gbW9kZS4gQWxsIGFuYWx5dGljcyBldmVudHMgYXJlIGlnbm9yZWQuJyk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX2NvbmZpZy5sb2dFdmVudHMgfHwgIXRoaXMuX2NvbmZpZy5pc1Byb2R1Y3Rpb24pIHtcbiAgICAgIGNvbnNvbGUubG9nKCdEYk5neEFuYWx5dGljc1NlcnZpY2U6IExvZyBhbmFseXRpY3MgZXZlbnRzIGVuYWJsZWQuJyk7XG5cbiAgICAgIC8vIENyZWF0ZSBhIG5ldyBzdWJzY3JpcHRpb25cbiAgICAgIHRoaXMuX2xvZ2dlclN1Yi5zdWJzY3JpcHRpb24gPSB0aGlzLl9zdWJqZWN0LnN1YnNjcmliZSgoeCkgPT4ge1xuICAgICAgICBjb25zb2xlLmxvZyhgRGJOZ3hBbmFseXRpY3NTZXJ2aWNlOiBBbmFseXRpY3MgRXZlbnQgLSAke0FuYWx5dGljc1N0cmVhbUV2ZW50VHlwZVt4LnR5cGVdfSBVc2VyOiAke3gudXNlcklkfSBEYXRhOiAke0pTT04uc3RyaW5naWZ5KHguZXZlbnQpfS5gKTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHRoaXMuX3VzZXJTb3VyY2VTdWIuc3Vic2NyaXB0aW9uID0gdGhpcy51c2VyJC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5zZW5kTmV4dEV2ZW50KHt9LCBBbmFseXRpY3NTdHJlYW1FdmVudFR5cGUuVXNlckNoYW5nZSk7XG4gICAgfSk7XG4gIH1cblxuICBkZXN0cm95KCkge1xuICAgIHRoaXMuX3VzZXJTb3VyY2VTdWIuZGVzdHJveSgpO1xuICAgIHRoaXMuX2xvZ2dlclN1Yi5kZXN0cm95KCk7XG4gIH1cblxufVxuIl19
@@ -1,13 +0,0 @@
1
- export var AnalyticsStreamEventType;
2
- (function (AnalyticsStreamEventType) {
3
- AnalyticsStreamEventType[AnalyticsStreamEventType["PageView"] = 0] = "PageView";
4
- AnalyticsStreamEventType[AnalyticsStreamEventType["UserChange"] = 1] = "UserChange";
5
- // User Events
6
- AnalyticsStreamEventType[AnalyticsStreamEventType["NewUserEvent"] = 2] = "NewUserEvent";
7
- AnalyticsStreamEventType[AnalyticsStreamEventType["UserLoginEvent"] = 3] = "UserLoginEvent";
8
- AnalyticsStreamEventType[AnalyticsStreamEventType["UserLogoutEvent"] = 4] = "UserLogoutEvent";
9
- AnalyticsStreamEventType[AnalyticsStreamEventType["UserPropertiesEvent"] = 5] = "UserPropertiesEvent";
10
- // Events
11
- AnalyticsStreamEventType[AnalyticsStreamEventType["Event"] = 6] = "Event";
12
- })(AnalyticsStreamEventType || (AnalyticsStreamEventType = {}));
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5hbHl0aWNzLnN0cmVhbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1hbmFseXRpY3Mvc3JjL2xpYi9hbmFseXRpY3Muc3RyZWFtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sQ0FBTixJQUFZLHdCQWNYO0FBZEQsV0FBWSx3QkFBd0I7SUFFbEMsK0VBQVEsQ0FBQTtJQUNSLG1GQUFVLENBQUE7SUFFVixjQUFjO0lBQ2QsdUZBQVksQ0FBQTtJQUNaLDJGQUFjLENBQUE7SUFDZCw2RkFBZSxDQUFBO0lBQ2YscUdBQW1CLENBQUE7SUFFbkIsU0FBUztJQUNULHlFQUFLLENBQUE7QUFFUCxDQUFDLEVBZFcsd0JBQXdCLEtBQXhCLHdCQUF3QixRQWNuQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1heWJlIH0gZnJvbSBcIkBkZXJlZWtiL3V0aWxcIjtcbmltcG9ydCB7IEFuYWx5dGljc1VzZXIsIFVzZXJBbmFseXRpY3NFdmVudCwgQW5hbHl0aWNzVXNlcklkIH0gZnJvbSBcIi4vYW5hbHl0aWNzXCI7XG5cbmV4cG9ydCBlbnVtIEFuYWx5dGljc1N0cmVhbUV2ZW50VHlwZSB7XG5cbiAgUGFnZVZpZXcsXG4gIFVzZXJDaGFuZ2UsXG5cbiAgLy8gVXNlciBFdmVudHNcbiAgTmV3VXNlckV2ZW50LFxuICBVc2VyTG9naW5FdmVudCxcbiAgVXNlckxvZ291dEV2ZW50LFxuICBVc2VyUHJvcGVydGllc0V2ZW50LFxuXG4gIC8vIEV2ZW50c1xuICBFdmVudFxuXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQW5hbHl0aWNzU3RyZWFtRXZlbnQge1xuICByZWFkb25seSB0eXBlOiBBbmFseXRpY3NTdHJlYW1FdmVudFR5cGU7XG4gIHJlYWRvbmx5IHVzZXI/OiBNYXliZTxBbmFseXRpY3NVc2VyPjtcbiAgcmVhZG9ubHkgZXZlbnQ/OiBVc2VyQW5hbHl0aWNzRXZlbnQ7XG4gIHJlYWRvbmx5IHVzZXJJZD86IEFuYWx5dGljc1VzZXJJZDtcbn1cbiJdfQ==
@@ -1,14 +0,0 @@
1
- import { ModuleWithProviders, Provider } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export interface DbNgxAnalyticsModuleOptions {
4
- /**
5
- * Provides a AnalyticsServiceConfiguration value.
6
- */
7
- analyticsConfigurationProvider: Provider;
8
- }
9
- export declare class DbNgxAnalyticsModule {
10
- static forRoot(options: DbNgxAnalyticsModuleOptions): ModuleWithProviders<DbNgxAnalyticsModule>;
11
- static ɵfac: i0.ɵɵFactoryDeclaration<DbNgxAnalyticsModule, never>;
12
- static ɵmod: i0.ɵɵNgModuleDeclaration<DbNgxAnalyticsModule, never, never, never>;
13
- static ɵinj: i0.ɵɵInjectorDeclaration<DbNgxAnalyticsModule>;
14
- }