@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
package/README.md CHANGED
@@ -1,7 +1,6 @@
1
- # dbx-analytics
1
+ @dereekb/dbx-analytics
2
+ =======
2
3
 
3
- This library was generated with [Nx](https://nx.dev).
4
+ The sources for this package are in the main [@dereekb/dbcomponents](https://github.com/dereekb/dbcomponents) repo. Please file issues and pull requests against that repo.
4
5
 
5
- ## Running unit tests
6
-
7
- Run `nx test dbx-analytics` to execute the unit tests.
6
+ License: MIT
@@ -3,21 +3,21 @@ import { switchMap, tap, shareReplay } from 'rxjs/operators';
3
3
  import { Host, Directive, Input } from '@angular/core';
4
4
  import { BehaviorSubject, merge, of } from 'rxjs';
5
5
  import { ActionContextStoreSourceInstance, AbstractSubscriptionDirective } from '@dereekb/dbx-core';
6
- import { DbNgxAnalyticsService } from '../analytics.service';
6
+ import { AnalyticsService } from '../analytics/analytics.service';
7
7
  import * as i0 from "@angular/core";
8
8
  import * as i1 from "@dereekb/dbx-core";
9
- import * as i2 from "../analytics.service";
10
- export var DbNgxActionAnalyticsTriggerType;
11
- (function (DbNgxActionAnalyticsTriggerType) {
12
- DbNgxActionAnalyticsTriggerType[DbNgxActionAnalyticsTriggerType["TRIGGER"] = 0] = "TRIGGER";
13
- DbNgxActionAnalyticsTriggerType[DbNgxActionAnalyticsTriggerType["READY"] = 1] = "READY";
14
- DbNgxActionAnalyticsTriggerType[DbNgxActionAnalyticsTriggerType["SUCCESS"] = 2] = "SUCCESS";
15
- DbNgxActionAnalyticsTriggerType[DbNgxActionAnalyticsTriggerType["ERROR"] = 3] = "ERROR";
16
- })(DbNgxActionAnalyticsTriggerType || (DbNgxActionAnalyticsTriggerType = {}));
9
+ import * as i2 from "../analytics/analytics.service";
10
+ export var DbxActionAnalyticsTriggerType;
11
+ (function (DbxActionAnalyticsTriggerType) {
12
+ DbxActionAnalyticsTriggerType[DbxActionAnalyticsTriggerType["TRIGGER"] = 0] = "TRIGGER";
13
+ DbxActionAnalyticsTriggerType[DbxActionAnalyticsTriggerType["READY"] = 1] = "READY";
14
+ DbxActionAnalyticsTriggerType[DbxActionAnalyticsTriggerType["SUCCESS"] = 2] = "SUCCESS";
15
+ DbxActionAnalyticsTriggerType[DbxActionAnalyticsTriggerType["ERROR"] = 3] = "ERROR";
16
+ })(DbxActionAnalyticsTriggerType || (DbxActionAnalyticsTriggerType = {}));
17
17
  /**
18
18
  * Used to listen to an ActionContext and send analytical events based on action events.
19
19
  */
20
- export class DbNgxActionAnalyticsDirective extends AbstractSubscriptionDirective {
20
+ export class DbxActionAnalyticsDirective extends AbstractSubscriptionDirective {
21
21
  constructor(source, analyticsService) {
22
22
  super();
23
23
  this.source = source;
@@ -61,17 +61,17 @@ export class DbNgxActionAnalyticsDirective extends AbstractSubscriptionDirective
61
61
  });
62
62
  }
63
63
  }
64
- DbNgxActionAnalyticsDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: DbNgxActionAnalyticsDirective, deps: [{ token: i1.ActionContextStoreSourceInstance, host: true }, { token: i2.DbNgxAnalyticsService }], target: i0.ɵɵFactoryTarget.Directive });
65
- DbNgxActionAnalyticsDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.0", type: DbNgxActionAnalyticsDirective, selector: "[dbxActionAnalytics]", inputs: { config: ["dbxActionAnalytics", "config"] }, usesInheritance: true, ngImport: i0 });
66
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: DbNgxActionAnalyticsDirective, decorators: [{
64
+ DbxActionAnalyticsDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: DbxActionAnalyticsDirective, deps: [{ token: i1.ActionContextStoreSourceInstance, host: true }, { token: i2.AnalyticsService }], target: i0.ɵɵFactoryTarget.Directive });
65
+ DbxActionAnalyticsDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.4", type: DbxActionAnalyticsDirective, selector: "[dbxActionAnalytics]", inputs: { config: ["dbxActionAnalytics", "config"] }, usesInheritance: true, ngImport: i0 });
66
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: DbxActionAnalyticsDirective, decorators: [{
67
67
  type: Directive,
68
68
  args: [{
69
69
  selector: '[dbxActionAnalytics]',
70
70
  }]
71
71
  }], ctorParameters: function () { return [{ type: i1.ActionContextStoreSourceInstance, decorators: [{
72
72
  type: Host
73
- }] }, { type: i2.DbNgxAnalyticsService }]; }, propDecorators: { config: [{
73
+ }] }, { type: i2.AnalyticsService }]; }, propDecorators: { config: [{
74
74
  type: Input,
75
75
  args: ['dbxActionAnalytics']
76
76
  }] } });
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5hbHl0aWNzLmFjdGlvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtYW5hbHl0aWNzL3NyYy9saWIvYWN0aW9uL2FuYWx5dGljcy5hY3Rpb24uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0QsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUMxRSxPQUFPLEVBQUUsZUFBZSxFQUFFLEtBQUssRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDOUQsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7QUFHN0QsTUFBTSxDQUFOLElBQVksK0JBS1g7QUFMRCxXQUFZLCtCQUErQjtJQUN6QywyRkFBTyxDQUFBO0lBQ1AsdUZBQUssQ0FBQTtJQUNMLDJGQUFPLENBQUE7SUFDUCx1RkFBSyxDQUFBO0FBQ1AsQ0FBQyxFQUxXLCtCQUErQixLQUEvQiwrQkFBK0IsUUFLMUM7QUFTRDs7R0FFRztBQUlILE1BQU0sT0FBTyw2QkFBaUMsU0FBUSw2QkFBNkI7SUFjakYsWUFDbUIsTUFBd0MsRUFDaEQsZ0JBQXVDO1FBRWhELEtBQUssRUFBRSxDQUFDO1FBSFMsV0FBTSxHQUFOLE1BQU0sQ0FBa0M7UUFDaEQscUJBQWdCLEdBQWhCLGdCQUFnQixDQUF1QjtRQWQxQyxZQUFPLEdBQUcsSUFBSSxlQUFlLENBQW9DLFNBQVMsQ0FBQyxDQUFDO1FBQzNFLFlBQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQWdCcEUsQ0FBQztJQWRELElBQ0ksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7SUFDNUIsQ0FBQztJQUVELElBQUksTUFBTSxDQUFDLE1BQXlDO1FBQ2xELElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFTRCxRQUFRO1FBQ04sSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FDMUIsU0FBUyxDQUFDLENBQUMsRUFBRSxXQUFXLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFO1lBQ3pELE1BQU0sVUFBVSxHQUFzQixFQUFFLENBQUM7WUFFekMsSUFBSSxXQUFXLEVBQUU7Z0JBQ2YsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQ3pDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FDOUMsQ0FBQyxDQUFDO2FBQ0o7WUFFRCxJQUFJLE9BQU8sRUFBRTtnQkFDWCxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLElBQUksQ0FDMUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLEtBQUssQ0FBQyxDQUFDLENBQ3RELENBQUMsQ0FBQzthQUNKO1lBRUQsSUFBSSxTQUFTLEVBQUU7Z0JBQ2IsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ3ZDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUMxRCxDQUFDLENBQUM7YUFDSjtZQUVELElBQUksT0FBTyxFQUFFO2dCQUNYLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUNyQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FDdEQsQ0FBQyxDQUFDO2FBQ0o7WUFFRCxJQUFJLFVBQVUsQ0FBQyxNQUFNLEVBQUU7Z0JBQ3JCLE9BQU8sS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDO2FBQzFCO2lCQUFNO2dCQUNMLE9BQU8sRUFBRSxFQUFFLENBQUM7YUFDYjtRQUNILENBQUMsQ0FBQyxDQUNILENBQUMsU0FBUyxFQUFFLENBQUM7SUFDaEIsQ0FBQztJQUVRLFdBQVc7UUFDbEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRTtZQUNwQyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDcEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUMxQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OzBIQWhFVSw2QkFBNkI7OEdBQTdCLDZCQUE2QjsyRkFBN0IsNkJBQTZCO2tCQUh6QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxzQkFBc0I7aUJBQ2pDOzswQkFnQkksSUFBSTtnRkFUSCxNQUFNO3NCQURULEtBQUs7dUJBQUMsb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZmlsdGVyTWF5YmUgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IHN3aXRjaE1hcCwgdGFwLCBzaGFyZVJlcGxheSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEhvc3QsIERpcmVjdGl2ZSwgSW5wdXQsIE9uSW5pdCwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIG1lcmdlLCBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQWN0aW9uQ29udGV4dFN0b3JlU291cmNlSW5zdGFuY2UsIEFic3RyYWN0U3Vic2NyaXB0aW9uRGlyZWN0aXZlIH0gZnJvbSAnQGRlcmVla2IvZGJ4LWNvcmUnO1xuaW1wb3J0IHsgRGJOZ3hBbmFseXRpY3NTZXJ2aWNlIH0gZnJvbSAnLi4vYW5hbHl0aWNzLnNlcnZpY2UnO1xuaW1wb3J0IHsgTWF5YmUsIFJlYWRhYmxlRXJyb3IgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcblxuZXhwb3J0IGVudW0gRGJOZ3hBY3Rpb25BbmFseXRpY3NUcmlnZ2VyVHlwZSB7XG4gIFRSSUdHRVIsXG4gIFJFQURZLFxuICBTVUNDRVNTLFxuICBFUlJPUlxufVxuXG5leHBvcnQgaW50ZXJmYWNlIERiTmd4QWN0aW9uQW5hbHl0aWNzQ29uZmlnPFQgPSBhbnksIE8gPSBhbnk+IHtcbiAgb25UcmlnZ2VyZWQ6IChzZXJ2aWNlOiBEYk5neEFuYWx5dGljc1NlcnZpY2UpID0+IHZvaWQ7XG4gIG9uUmVhZHk6IChzZXJ2aWNlOiBEYk5neEFuYWx5dGljc1NlcnZpY2UsIHZhbHVlOiBUKSA9PiB2b2lkO1xuICBvblN1Y2Nlc3M6IChzZXJ2aWNlOiBEYk5neEFuYWx5dGljc1NlcnZpY2UsIHZhbHVlOiBNYXliZTxPPikgPT4gdm9pZDtcbiAgb25FcnJvcjogKHNlcnZpY2U6IERiTmd4QW5hbHl0aWNzU2VydmljZSwgZXJyb3I6IE1heWJlPFJlYWRhYmxlRXJyb3I+KSA9PiB2b2lkO1xufVxuXG4vKipcbiAqIFVzZWQgdG8gbGlzdGVuIHRvIGFuIEFjdGlvbkNvbnRleHQgYW5kIHNlbmQgYW5hbHl0aWNhbCBldmVudHMgYmFzZWQgb24gYWN0aW9uIGV2ZW50cy5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2RieEFjdGlvbkFuYWx5dGljc10nLFxufSlcbmV4cG9ydCBjbGFzcyBEYk5neEFjdGlvbkFuYWx5dGljc0RpcmVjdGl2ZTxUPiBleHRlbmRzIEFic3RyYWN0U3Vic2NyaXB0aW9uRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gIHByaXZhdGUgX2NvbmZpZyA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TWF5YmU8RGJOZ3hBY3Rpb25BbmFseXRpY3NDb25maWc+Pih1bmRlZmluZWQpO1xuICByZWFkb25seSBjb25maWckID0gdGhpcy5fY29uZmlnLnBpcGUoZmlsdGVyTWF5YmUoKSwgc2hhcmVSZXBsYXkoMSkpO1xuXG4gIEBJbnB1dCgnZGJ4QWN0aW9uQW5hbHl0aWNzJylcbiAgZ2V0IGNvbmZpZygpOiBNYXliZTxEYk5neEFjdGlvbkFuYWx5dGljc0NvbmZpZz4ge1xuICAgIHJldHVybiB0aGlzLl9jb25maWcudmFsdWU7XG4gIH1cblxuICBzZXQgY29uZmlnKGNvbmZpZzogTWF5YmU8RGJOZ3hBY3Rpb25BbmFseXRpY3NDb25maWc+KSB7XG4gICAgdGhpcy5fY29uZmlnLm5leHQoY29uZmlnKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBIb3N0KCkgcmVhZG9ubHkgc291cmNlOiBBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VJbnN0YW5jZSxcbiAgICByZWFkb25seSBhbmFseXRpY3NTZXJ2aWNlOiBEYk5neEFuYWx5dGljc1NlcnZpY2VcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc3ViID0gdGhpcy5jb25maWckLnBpcGUoXG4gICAgICBzd2l0Y2hNYXAoKHsgb25UcmlnZ2VyZWQsIG9uUmVhZHksIG9uU3VjY2Vzcywgb25FcnJvciB9KSA9PiB7XG4gICAgICAgIGNvbnN0IHRyaWdnZXJPYnM6IE9ic2VydmFibGU8YW55PltdID0gW107XG5cbiAgICAgICAgaWYgKG9uVHJpZ2dlcmVkKSB7XG4gICAgICAgICAgdHJpZ2dlck9icy5wdXNoKHRoaXMuc291cmNlLnRyaWdnZXJlZCQucGlwZShcbiAgICAgICAgICAgIHRhcCgoKSA9PiBvblRyaWdnZXJlZCh0aGlzLmFuYWx5dGljc1NlcnZpY2UpKVxuICAgICAgICAgICkpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG9uUmVhZHkpIHtcbiAgICAgICAgICB0cmlnZ2VyT2JzLnB1c2godGhpcy5zb3VyY2UudmFsdWVSZWFkeSQucGlwZShcbiAgICAgICAgICAgIHRhcCgodmFsdWUpID0+IG9uUmVhZHkodGhpcy5hbmFseXRpY3NTZXJ2aWNlLCB2YWx1ZSkpXG4gICAgICAgICAgKSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAob25TdWNjZXNzKSB7XG4gICAgICAgICAgdHJpZ2dlck9icy5wdXNoKHRoaXMuc291cmNlLnN1Y2Nlc3MkLnBpcGUoXG4gICAgICAgICAgICB0YXAoKHJlc3VsdCkgPT4gb25TdWNjZXNzKHRoaXMuYW5hbHl0aWNzU2VydmljZSwgcmVzdWx0KSlcbiAgICAgICAgICApKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvbkVycm9yKSB7XG4gICAgICAgICAgdHJpZ2dlck9icy5wdXNoKHRoaXMuc291cmNlLmVycm9yJC5waXBlKFxuICAgICAgICAgICAgdGFwKChlcnJvcikgPT4gb25FcnJvcih0aGlzLmFuYWx5dGljc1NlcnZpY2UsIGVycm9yKSlcbiAgICAgICAgICApKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0cmlnZ2VyT2JzLmxlbmd0aCkge1xuICAgICAgICAgIHJldHVybiBtZXJnZSh0cmlnZ2VyT2JzKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gb2YoKTtcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICApLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgb3ZlcnJpZGUgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zb3VyY2UubG9ja1NldC5vbk5leHRVbmxvY2soKCkgPT4ge1xuICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICAgIHRoaXMuX2NvbmZpZy5jb21wbGV0ZSgpO1xuICAgIH0pO1xuICB9XG5cbn1cbiJdfQ==
77
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5hbHl0aWNzLmFjdGlvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtYW5hbHl0aWNzL3NyYy9saWIvYWN0aW9uL2FuYWx5dGljcy5hY3Rpb24uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0QsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUMxRSxPQUFPLEVBQUUsZUFBZSxFQUFFLEtBQUssRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDOUQsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEcsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7Ozs7QUFHbEUsTUFBTSxDQUFOLElBQVksNkJBS1g7QUFMRCxXQUFZLDZCQUE2QjtJQUN2Qyx1RkFBTyxDQUFBO0lBQ1AsbUZBQUssQ0FBQTtJQUNMLHVGQUFPLENBQUE7SUFDUCxtRkFBSyxDQUFBO0FBQ1AsQ0FBQyxFQUxXLDZCQUE2QixLQUE3Qiw2QkFBNkIsUUFLeEM7QUFTRDs7R0FFRztBQUlILE1BQU0sT0FBTywyQkFBK0IsU0FBUSw2QkFBNkI7SUFjL0UsWUFDbUIsTUFBd0MsRUFDaEQsZ0JBQWtDO1FBRTNDLEtBQUssRUFBRSxDQUFDO1FBSFMsV0FBTSxHQUFOLE1BQU0sQ0FBa0M7UUFDaEQscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQWRyQyxZQUFPLEdBQUcsSUFBSSxlQUFlLENBQWtDLFNBQVMsQ0FBQyxDQUFDO1FBQ3pFLFlBQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQWdCcEUsQ0FBQztJQWRELElBQ0ksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7SUFDNUIsQ0FBQztJQUVELElBQUksTUFBTSxDQUFDLE1BQXVDO1FBQ2hELElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFTRCxRQUFRO1FBQ04sSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FDMUIsU0FBUyxDQUFDLENBQUMsRUFBRSxXQUFXLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFO1lBQ3pELE1BQU0sVUFBVSxHQUFzQixFQUFFLENBQUM7WUFFekMsSUFBSSxXQUFXLEVBQUU7Z0JBQ2YsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQ3pDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FDOUMsQ0FBQyxDQUFDO2FBQ0o7WUFFRCxJQUFJLE9BQU8sRUFBRTtnQkFDWCxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLElBQUksQ0FDMUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLEtBQUssQ0FBQyxDQUFDLENBQ3RELENBQUMsQ0FBQzthQUNKO1lBRUQsSUFBSSxTQUFTLEVBQUU7Z0JBQ2IsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ3ZDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUMxRCxDQUFDLENBQUM7YUFDSjtZQUVELElBQUksT0FBTyxFQUFFO2dCQUNYLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUNyQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FDdEQsQ0FBQyxDQUFDO2FBQ0o7WUFFRCxJQUFJLFVBQVUsQ0FBQyxNQUFNLEVBQUU7Z0JBQ3JCLE9BQU8sS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDO2FBQzFCO2lCQUFNO2dCQUNMLE9BQU8sRUFBRSxFQUFFLENBQUM7YUFDYjtRQUNILENBQUMsQ0FBQyxDQUNILENBQUMsU0FBUyxFQUFFLENBQUM7SUFDaEIsQ0FBQztJQUVRLFdBQVc7UUFDbEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLEdBQUcsRUFBRTtZQUNwQyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDcEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUMxQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7O3dIQWhFVSwyQkFBMkI7NEdBQTNCLDJCQUEyQjsyRkFBM0IsMkJBQTJCO2tCQUh2QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxzQkFBc0I7aUJBQ2pDOzswQkFnQkksSUFBSTsyRUFUSCxNQUFNO3NCQURULEtBQUs7dUJBQUMsb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZmlsdGVyTWF5YmUgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IHN3aXRjaE1hcCwgdGFwLCBzaGFyZVJlcGxheSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEhvc3QsIERpcmVjdGl2ZSwgSW5wdXQsIE9uSW5pdCwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIG1lcmdlLCBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQWN0aW9uQ29udGV4dFN0b3JlU291cmNlSW5zdGFuY2UsIEFic3RyYWN0U3Vic2NyaXB0aW9uRGlyZWN0aXZlIH0gZnJvbSAnQGRlcmVla2IvZGJ4LWNvcmUnO1xuaW1wb3J0IHsgQW5hbHl0aWNzU2VydmljZSB9IGZyb20gJy4uL2FuYWx5dGljcy9hbmFseXRpY3Muc2VydmljZSc7XG5pbXBvcnQgeyBNYXliZSwgUmVhZGFibGVFcnJvciB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuXG5leHBvcnQgZW51bSBEYnhBY3Rpb25BbmFseXRpY3NUcmlnZ2VyVHlwZSB7XG4gIFRSSUdHRVIsXG4gIFJFQURZLFxuICBTVUNDRVNTLFxuICBFUlJPUlxufVxuXG5leHBvcnQgaW50ZXJmYWNlIERieEFjdGlvbkFuYWx5dGljc0NvbmZpZzxUID0gYW55LCBPID0gYW55PiB7XG4gIG9uVHJpZ2dlcmVkOiAoc2VydmljZTogQW5hbHl0aWNzU2VydmljZSkgPT4gdm9pZDtcbiAgb25SZWFkeTogKHNlcnZpY2U6IEFuYWx5dGljc1NlcnZpY2UsIHZhbHVlOiBUKSA9PiB2b2lkO1xuICBvblN1Y2Nlc3M6IChzZXJ2aWNlOiBBbmFseXRpY3NTZXJ2aWNlLCB2YWx1ZTogTWF5YmU8Tz4pID0+IHZvaWQ7XG4gIG9uRXJyb3I6IChzZXJ2aWNlOiBBbmFseXRpY3NTZXJ2aWNlLCBlcnJvcjogTWF5YmU8UmVhZGFibGVFcnJvcj4pID0+IHZvaWQ7XG59XG5cbi8qKlxuICogVXNlZCB0byBsaXN0ZW4gdG8gYW4gQWN0aW9uQ29udGV4dCBhbmQgc2VuZCBhbmFseXRpY2FsIGV2ZW50cyBiYXNlZCBvbiBhY3Rpb24gZXZlbnRzLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZGJ4QWN0aW9uQW5hbHl0aWNzXScsXG59KVxuZXhwb3J0IGNsYXNzIERieEFjdGlvbkFuYWx5dGljc0RpcmVjdGl2ZTxUPiBleHRlbmRzIEFic3RyYWN0U3Vic2NyaXB0aW9uRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gIHByaXZhdGUgX2NvbmZpZyA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TWF5YmU8RGJ4QWN0aW9uQW5hbHl0aWNzQ29uZmlnPj4odW5kZWZpbmVkKTtcbiAgcmVhZG9ubHkgY29uZmlnJCA9IHRoaXMuX2NvbmZpZy5waXBlKGZpbHRlck1heWJlKCksIHNoYXJlUmVwbGF5KDEpKTtcblxuICBASW5wdXQoJ2RieEFjdGlvbkFuYWx5dGljcycpXG4gIGdldCBjb25maWcoKTogTWF5YmU8RGJ4QWN0aW9uQW5hbHl0aWNzQ29uZmlnPiB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbmZpZy52YWx1ZTtcbiAgfVxuXG4gIHNldCBjb25maWcoY29uZmlnOiBNYXliZTxEYnhBY3Rpb25BbmFseXRpY3NDb25maWc+KSB7XG4gICAgdGhpcy5fY29uZmlnLm5leHQoY29uZmlnKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBIb3N0KCkgcmVhZG9ubHkgc291cmNlOiBBY3Rpb25Db250ZXh0U3RvcmVTb3VyY2VJbnN0YW5jZSxcbiAgICByZWFkb25seSBhbmFseXRpY3NTZXJ2aWNlOiBBbmFseXRpY3NTZXJ2aWNlXG4gICkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YiA9IHRoaXMuY29uZmlnJC5waXBlKFxuICAgICAgc3dpdGNoTWFwKCh7IG9uVHJpZ2dlcmVkLCBvblJlYWR5LCBvblN1Y2Nlc3MsIG9uRXJyb3IgfSkgPT4ge1xuICAgICAgICBjb25zdCB0cmlnZ2VyT2JzOiBPYnNlcnZhYmxlPGFueT5bXSA9IFtdO1xuXG4gICAgICAgIGlmIChvblRyaWdnZXJlZCkge1xuICAgICAgICAgIHRyaWdnZXJPYnMucHVzaCh0aGlzLnNvdXJjZS50cmlnZ2VyZWQkLnBpcGUoXG4gICAgICAgICAgICB0YXAoKCkgPT4gb25UcmlnZ2VyZWQodGhpcy5hbmFseXRpY3NTZXJ2aWNlKSlcbiAgICAgICAgICApKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvblJlYWR5KSB7XG4gICAgICAgICAgdHJpZ2dlck9icy5wdXNoKHRoaXMuc291cmNlLnZhbHVlUmVhZHkkLnBpcGUoXG4gICAgICAgICAgICB0YXAoKHZhbHVlKSA9PiBvblJlYWR5KHRoaXMuYW5hbHl0aWNzU2VydmljZSwgdmFsdWUpKVxuICAgICAgICAgICkpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG9uU3VjY2Vzcykge1xuICAgICAgICAgIHRyaWdnZXJPYnMucHVzaCh0aGlzLnNvdXJjZS5zdWNjZXNzJC5waXBlKFxuICAgICAgICAgICAgdGFwKChyZXN1bHQpID0+IG9uU3VjY2Vzcyh0aGlzLmFuYWx5dGljc1NlcnZpY2UsIHJlc3VsdCkpXG4gICAgICAgICAgKSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAob25FcnJvcikge1xuICAgICAgICAgIHRyaWdnZXJPYnMucHVzaCh0aGlzLnNvdXJjZS5lcnJvciQucGlwZShcbiAgICAgICAgICAgIHRhcCgoZXJyb3IpID0+IG9uRXJyb3IodGhpcy5hbmFseXRpY3NTZXJ2aWNlLCBlcnJvcikpXG4gICAgICAgICAgKSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodHJpZ2dlck9icy5sZW5ndGgpIHtcbiAgICAgICAgICByZXR1cm4gbWVyZ2UodHJpZ2dlck9icyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuIG9mKCk7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKS5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIG92ZXJyaWRlIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuc291cmNlLmxvY2tTZXQub25OZXh0VW5sb2NrKCgpID0+IHtcbiAgICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgICB0aGlzLl9jb25maWcuY29tcGxldGUoKTtcbiAgICB9KTtcbiAgfVxuXG59XG4iXX0=
@@ -1,20 +1,20 @@
1
1
  import { NgModule } from '@angular/core';
2
- import { DbNgxActionAnalyticsDirective } from './analytics.action.directive';
2
+ import { DbxActionAnalyticsDirective } from './analytics.action.directive';
3
3
  import * as i0 from "@angular/core";
4
- export class DbNgxAnalyticsActionModule {
4
+ export class AnalyticsActionModule {
5
5
  }
6
- DbNgxAnalyticsActionModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: DbNgxAnalyticsActionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7
- DbNgxAnalyticsActionModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: DbNgxAnalyticsActionModule, declarations: [DbNgxActionAnalyticsDirective], exports: [DbNgxActionAnalyticsDirective] });
8
- DbNgxAnalyticsActionModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: DbNgxAnalyticsActionModule });
9
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: DbNgxAnalyticsActionModule, decorators: [{
6
+ AnalyticsActionModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: AnalyticsActionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
7
+ AnalyticsActionModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: AnalyticsActionModule, declarations: [DbxActionAnalyticsDirective], exports: [DbxActionAnalyticsDirective] });
8
+ AnalyticsActionModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: AnalyticsActionModule });
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: AnalyticsActionModule, decorators: [{
10
10
  type: NgModule,
11
11
  args: [{
12
12
  declarations: [
13
- DbNgxActionAnalyticsDirective
13
+ DbxActionAnalyticsDirective
14
14
  ],
15
15
  exports: [
16
- DbNgxActionAnalyticsDirective
16
+ DbxActionAnalyticsDirective
17
17
  ]
18
18
  }]
19
19
  }] });
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5hbHl0aWNzLmFjdGlvbi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtYW5hbHl0aWNzL3NyYy9saWIvYWN0aW9uL2FuYWx5dGljcy5hY3Rpb24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBVTdFLE1BQU0sT0FBTywwQkFBMEI7O3VIQUExQiwwQkFBMEI7d0hBQTFCLDBCQUEwQixpQkFObkMsNkJBQTZCLGFBRzdCLDZCQUE2Qjt3SEFHcEIsMEJBQTBCOzJGQUExQiwwQkFBMEI7a0JBUnRDLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLDZCQUE2QjtxQkFDOUI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLDZCQUE2QjtxQkFDOUI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGJOZ3hBY3Rpb25BbmFseXRpY3NEaXJlY3RpdmUgfSBmcm9tICcuL2FuYWx5dGljcy5hY3Rpb24uZGlyZWN0aXZlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgRGJOZ3hBY3Rpb25BbmFseXRpY3NEaXJlY3RpdmVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIERiTmd4QWN0aW9uQW5hbHl0aWNzRGlyZWN0aXZlXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgRGJOZ3hBbmFseXRpY3NBY3Rpb25Nb2R1bGUgeyB9XG4iXX0=
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5hbHl0aWNzLmFjdGlvbi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtYW5hbHl0aWNzL3NyYy9saWIvYWN0aW9uL2FuYWx5dGljcy5hY3Rpb24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBVTNFLE1BQU0sT0FBTyxxQkFBcUI7O2tIQUFyQixxQkFBcUI7bUhBQXJCLHFCQUFxQixpQkFOOUIsMkJBQTJCLGFBRzNCLDJCQUEyQjttSEFHbEIscUJBQXFCOzJGQUFyQixxQkFBcUI7a0JBUmpDLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLDJCQUEyQjtxQkFDNUI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLDJCQUEyQjtxQkFDNUI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGJ4QWN0aW9uQW5hbHl0aWNzRGlyZWN0aXZlIH0gZnJvbSAnLi9hbmFseXRpY3MuYWN0aW9uLmRpcmVjdGl2ZSc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIERieEFjdGlvbkFuYWx5dGljc0RpcmVjdGl2ZVxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgRGJ4QWN0aW9uQW5hbHl0aWNzRGlyZWN0aXZlXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgQW5hbHl0aWNzQWN0aW9uTW9kdWxlIHsgfVxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5hbHl0aWNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWFuYWx5dGljcy9zcmMvbGliL2FuYWx5dGljcy9hbmFseXRpY3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1heWJlLCBQcmltYXRpdmVLZXkgfSBmcm9tIFwiQGRlcmVla2IvdXRpbFwiO1xuXG5leHBvcnQgdHlwZSBBbmFseXRpY3NFdmVudE5hbWUgPSBzdHJpbmc7XG5leHBvcnQgdHlwZSBBbmFseXRpY3NVc2VySWQgPSBzdHJpbmc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQW5hbHl0aWNzVXNlciB7XG4gIHJlYWRvbmx5IHVzZXI6IEFuYWx5dGljc1VzZXJJZDtcbiAgcmVhZG9ubHkgcHJvcGVydGllcz86IHtcbiAgICByZWFkb25seSBba2V5OiBzdHJpbmddOiBQcmltYXRpdmVLZXkgfCBib29sZWFuO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFuYWx5dGljc0V2ZW50RGF0YSB7XG4gIHJlYWRvbmx5IFtrZXk6IHN0cmluZ106IFByaW1hdGl2ZUtleSB8IGJvb2xlYW47XG59XG5cbmV4cG9ydCB0eXBlIE5ld1VzZXJSZWdpc3RyYXRpb25NZXRob2QgPSAnZmFjZWJvb2snIHwgJ2dvb2dsZScgfCAnZW1haWwnIHwgc3RyaW5nO1xuXG5leHBvcnQgaW50ZXJmYWNlIE5ld1VzZXJBbmFseXRpY3NFdmVudERhdGEgZXh0ZW5kcyBBbmFseXRpY3NFdmVudERhdGEge1xuICBtZXRob2Q6IE5ld1VzZXJSZWdpc3RyYXRpb25NZXRob2Q7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQW5hbHl0aWNzRXZlbnQge1xuICByZWFkb25seSBuYW1lPzogQW5hbHl0aWNzRXZlbnROYW1lO1xuICByZWFkb25seSB2YWx1ZT86IG51bWJlcjtcbiAgcmVhZG9ubHkgZGF0YT86IEFuYWx5dGljc0V2ZW50RGF0YTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVc2VyQW5hbHl0aWNzRXZlbnQgZXh0ZW5kcyBBbmFseXRpY3NFdmVudCB7XG4gIHJlYWRvbmx5IHVzZXI/OiBNYXliZTxBbmFseXRpY3NVc2VyPjtcbn1cbiJdfQ==
@@ -0,0 +1,23 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { AnalyticsService } from './analytics.service';
3
+ import * as i0 from "@angular/core";
4
+ export class DbxAnalyticsModule {
5
+ static forRoot(options) {
6
+ return {
7
+ ngModule: DbxAnalyticsModule,
8
+ providers: [
9
+ // Configuration
10
+ options.analyticsConfigurationProvider,
11
+ // Service
12
+ AnalyticsService
13
+ ]
14
+ };
15
+ }
16
+ }
17
+ DbxAnalyticsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: DbxAnalyticsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
18
+ DbxAnalyticsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: DbxAnalyticsModule });
19
+ DbxAnalyticsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: DbxAnalyticsModule });
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: DbxAnalyticsModule, decorators: [{
21
+ type: NgModule
22
+ }] });
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5hbHl0aWNzLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1hbmFseXRpY3Mvc3JjL2xpYi9hbmFseXRpY3MvYW5hbHl0aWNzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFpQyxNQUFNLGVBQWUsQ0FBQztBQUN4RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7QUFhdkQsTUFBTSxPQUFPLGtCQUFrQjtJQUU3QixNQUFNLENBQUMsT0FBTyxDQUFDLE9BQWtDO1FBQy9DLE9BQU87WUFDTCxRQUFRLEVBQUUsa0JBQWtCO1lBQzVCLFNBQVMsRUFBRTtnQkFDVCxnQkFBZ0I7Z0JBQ2hCLE9BQU8sQ0FBQyw4QkFBOEI7Z0JBQ3RDLFVBQVU7Z0JBQ1YsZ0JBQWdCO2FBQ2pCO1NBQ0YsQ0FBQztJQUNKLENBQUM7OytHQVpVLGtCQUFrQjtnSEFBbEIsa0JBQWtCO2dIQUFsQixrQkFBa0I7MkZBQWxCLGtCQUFrQjtrQkFEOUIsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlLCBNb2R1bGVXaXRoUHJvdmlkZXJzLCBQcm92aWRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQW5hbHl0aWNzU2VydmljZSB9IGZyb20gJy4vYW5hbHl0aWNzLnNlcnZpY2UnO1xuXG5cbmV4cG9ydCBpbnRlcmZhY2UgRGJ4QW5hbHl0aWNzTW9kdWxlT3B0aW9ucyB7XG5cbiAgLyoqXG4gICAqIFByb3ZpZGVzIGEgQW5hbHl0aWNzU2VydmljZUNvbmZpZ3VyYXRpb24gdmFsdWUuXG4gICAqL1xuICBhbmFseXRpY3NDb25maWd1cmF0aW9uUHJvdmlkZXI6IFByb3ZpZGVyO1xuXG59XG5cbkBOZ01vZHVsZSgpXG5leHBvcnQgY2xhc3MgRGJ4QW5hbHl0aWNzTW9kdWxlIHtcblxuICBzdGF0aWMgZm9yUm9vdChvcHRpb25zOiBEYnhBbmFseXRpY3NNb2R1bGVPcHRpb25zKTogTW9kdWxlV2l0aFByb3ZpZGVyczxEYnhBbmFseXRpY3NNb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IERieEFuYWx5dGljc01vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICAvLyBDb25maWd1cmF0aW9uXG4gICAgICAgIG9wdGlvbnMuYW5hbHl0aWNzQ29uZmlndXJhdGlvblByb3ZpZGVyLFxuICAgICAgICAvLyBTZXJ2aWNlXG4gICAgICAgIEFuYWx5dGljc1NlcnZpY2VcbiAgICAgIF1cbiAgICB9O1xuICB9XG5cbn1cbiJdfQ==
@@ -0,0 +1,190 @@
1
+ import { Subject, BehaviorSubject, of } from 'rxjs';
2
+ import { first, shareReplay, switchMap } from 'rxjs/operators';
3
+ import { Inject, Injectable, Optional } from '@angular/core';
4
+ import { SubscriptionObject, filterMaybe } from '@dereekb/rxjs';
5
+ import { AnalyticsStreamEventType } from './analytics.stream';
6
+ import * as i0 from "@angular/core";
7
+ export class AnalyticsEventEmitterService {
8
+ }
9
+ export class AnalyticsEventStreamService {
10
+ }
11
+ export class AnalyticsUserSource {
12
+ }
13
+ export class AnalyticsServiceListener {
14
+ }
15
+ /**
16
+ * Abstract AnalyticsServiceListener implementation.
17
+ */
18
+ export class AbstractAnalyticsServiceListener {
19
+ constructor() {
20
+ this._sub = new SubscriptionObject();
21
+ this._analytics = new BehaviorSubject(undefined);
22
+ this.analytics$ = this._analytics.pipe(filterMaybe(), shareReplay(1));
23
+ this.analyticsEvents$ = this.analytics$.pipe(switchMap(x => x.events$), shareReplay(1));
24
+ }
25
+ // MARK: AnalyticsServiceListener
26
+ listenToService(service) {
27
+ this._analytics.next(service);
28
+ const sub = this._initializeServiceSubscription();
29
+ if (sub !== false) {
30
+ this._sub.subscription = sub;
31
+ }
32
+ }
33
+ // MARK: Destroy
34
+ destroy() {
35
+ this._analytics.complete();
36
+ this._sub.destroy();
37
+ }
38
+ }
39
+ export class AnalyticsServiceConfiguration {
40
+ constructor() {
41
+ this.listeners = [];
42
+ }
43
+ }
44
+ export class AnalyticsStreamEventAnalyticsEventWrapper {
45
+ constructor(event, type = AnalyticsStreamEventType.Event) {
46
+ this.event = event;
47
+ this.type = type;
48
+ }
49
+ get user() {
50
+ return this.event.user;
51
+ }
52
+ get userId() {
53
+ return (this.user) ? this.user.user : undefined;
54
+ }
55
+ }
56
+ /**
57
+ * Primary analytics service that emits analytics events that components can listen to.
58
+ */
59
+ export class AnalyticsService {
60
+ constructor(_config, userSource = _config.userSource) {
61
+ this._config = _config;
62
+ this._subject = new Subject();
63
+ this.events$ = this._subject.asObservable();
64
+ this._userSource = new BehaviorSubject(undefined);
65
+ this.user$ = this._userSource.pipe(switchMap(x => (x) ? x.analyticsUser$ : of(undefined)), shareReplay(1));
66
+ this._userSourceSub = new SubscriptionObject();
67
+ this._loggerSub = new SubscriptionObject();
68
+ this._init();
69
+ if (userSource) {
70
+ this.setUserSource(userSource);
71
+ }
72
+ }
73
+ // MARK: Source
74
+ /**
75
+ * Sets the user directly.
76
+ */
77
+ setUser(user) {
78
+ let source;
79
+ if (user) {
80
+ source = { analyticsUser$: of(user) };
81
+ }
82
+ this._userSource.next(source);
83
+ }
84
+ setUserSource(source) {
85
+ this._userSource.next(source);
86
+ }
87
+ // MARK: AnalyticsEventEmitterService
88
+ /**
89
+ * Sends an event.
90
+ */
91
+ sendNewUserEvent(user, data) {
92
+ this.sendNextEvent({
93
+ name: AnalyticsService.USER_REGISTRATION_EVENT_NAME,
94
+ data
95
+ }, AnalyticsStreamEventType.NewUserEvent, user);
96
+ }
97
+ sendUserLoginEvent(user, data) {
98
+ this.sendNextEvent({
99
+ name: AnalyticsService.USER_LOGIN_EVENT_NAME,
100
+ data
101
+ }, AnalyticsStreamEventType.UserLoginEvent, user);
102
+ }
103
+ sendUserLogoutEvent(data, clearUser = true) {
104
+ this.sendNextEvent({
105
+ name: AnalyticsService.USER_LOGOUT_EVENT_NAME,
106
+ data
107
+ }, AnalyticsStreamEventType.UserLogoutEvent);
108
+ if (clearUser) {
109
+ this.setUser(undefined);
110
+ }
111
+ }
112
+ sendUserPropertiesEvent(user, data) {
113
+ this.sendNextEvent({
114
+ name: AnalyticsService.USER_PROPERTIES_EVENT_NAME,
115
+ data
116
+ }, AnalyticsStreamEventType.UserPropertiesEvent, user);
117
+ }
118
+ sendEventData(name, data) {
119
+ return this.sendEvent({
120
+ name,
121
+ data
122
+ });
123
+ }
124
+ sendEventType(eventType) {
125
+ this.sendNextEvent({
126
+ name: eventType
127
+ }, AnalyticsStreamEventType.Event);
128
+ }
129
+ sendEvent(event) {
130
+ this.sendNextEvent(event, AnalyticsStreamEventType.Event);
131
+ }
132
+ sendPageView(page) {
133
+ this.sendNextEvent({
134
+ name: page
135
+ }, AnalyticsStreamEventType.PageView);
136
+ }
137
+ sendNextEvent(event = {}, type, userOverride) {
138
+ this.user$.pipe(first()).subscribe((analyticsUser) => {
139
+ const user = (userOverride != null) ? userOverride : analyticsUser;
140
+ const analyticsEvent = { ...event, user };
141
+ this.nextEvent(analyticsEvent, type);
142
+ });
143
+ }
144
+ nextEvent(event, type) {
145
+ const wrapper = new AnalyticsStreamEventAnalyticsEventWrapper(event, type);
146
+ this._subject.next(wrapper);
147
+ }
148
+ // MARK: Internal
149
+ _init() {
150
+ if (this._config.isProduction) {
151
+ // Initialize listeners.
152
+ this._config.listeners.forEach((listener) => {
153
+ listener.listenToService(this);
154
+ });
155
+ }
156
+ else {
157
+ console.warn('AnalyticsService: Analytics not in production mode. All analytics events are ignored.');
158
+ }
159
+ if (this._config.logEvents || !this._config.isProduction) {
160
+ console.log('AnalyticsService: Log analytics events enabled.');
161
+ // Create a new subscription
162
+ this._loggerSub.subscription = this._subject.subscribe((x) => {
163
+ console.log(`AnalyticsService: Analytics Event - ${AnalyticsStreamEventType[x.type]} User: ${x.userId} Data: ${JSON.stringify(x.event)}.`);
164
+ });
165
+ }
166
+ this._userSourceSub.subscription = this.user$.subscribe(() => {
167
+ this.sendNextEvent({}, AnalyticsStreamEventType.UserChange);
168
+ });
169
+ }
170
+ destroy() {
171
+ this._userSourceSub.destroy();
172
+ this._loggerSub.destroy();
173
+ }
174
+ }
175
+ // TODO: Make these configurable.
176
+ AnalyticsService.USER_REGISTRATION_EVENT_NAME = 'User Registered';
177
+ AnalyticsService.USER_LOGIN_EVENT_NAME = 'User Login';
178
+ AnalyticsService.USER_LOGOUT_EVENT_NAME = 'User Logout';
179
+ AnalyticsService.USER_PROPERTIES_EVENT_NAME = 'User Properties';
180
+ AnalyticsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: AnalyticsService, deps: [{ token: AnalyticsServiceConfiguration }, { token: AnalyticsUserSource, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
181
+ AnalyticsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: AnalyticsService });
182
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: AnalyticsService, decorators: [{
183
+ type: Injectable
184
+ }], ctorParameters: function () { return [{ type: AnalyticsServiceConfiguration }, { type: undefined, decorators: [{
185
+ type: Optional
186
+ }, {
187
+ type: Inject,
188
+ args: [AnalyticsUserSource]
189
+ }] }]; } });
190
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5hbHl0aWNzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtYW5hbHl0aWNzL3NyYy9saWIvYW5hbHl0aWNzL2FuYWx5dGljcy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxPQUFPLEVBQUUsZUFBZSxFQUFFLEVBQUUsRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFDOUUsT0FBTyxFQUFVLEtBQUssRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdkUsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFaEUsT0FBTyxFQUF3Qix3QkFBd0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDOztBQUdwRixNQUFNLE9BQWdCLDRCQUE0QjtDQVFqRDtBQUVELE1BQU0sT0FBZ0IsMkJBQTJCO0NBRWhEO0FBRUQsTUFBTSxPQUFnQixtQkFBbUI7Q0FFeEM7QUFFRCxNQUFNLE9BQWdCLHdCQUF3QjtDQUU3QztBQUVEOztHQUVHO0FBQ0gsTUFBTSxPQUFnQixnQ0FBZ0M7SUFBdEQ7UUFFVSxTQUFJLEdBQUcsSUFBSSxrQkFBa0IsRUFBRSxDQUFDO1FBQzlCLGVBQVUsR0FBRyxJQUFJLGVBQWUsQ0FBMEIsU0FBUyxDQUFDLENBQUM7UUFFdEUsZUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2pFLHFCQUFnQixHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsRUFBRSxXQUFX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aUhBcEI5QixnQkFBZ0I7MkZBQWhCLGdCQUFnQjtrQkFENUIsVUFBVTswREFvQlUsNkJBQTZCOzBCQUM3QyxRQUFROzswQkFBSSxNQUFNOzJCQUFDLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QsIEJlaGF2aW9yU3ViamVjdCwgb2YsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCBmaXJzdCwgc2hhcmVSZXBsYXksIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbk9iamVjdCwgZmlsdGVyTWF5YmUgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IEFuYWx5dGljc0V2ZW50LCBBbmFseXRpY3NFdmVudERhdGEsIEFuYWx5dGljc0V2ZW50TmFtZSwgQW5hbHl0aWNzVXNlciwgTmV3VXNlckFuYWx5dGljc0V2ZW50RGF0YSwgVXNlckFuYWx5dGljc0V2ZW50IH0gZnJvbSAnLi9hbmFseXRpY3MnO1xuaW1wb3J0IHsgQW5hbHl0aWNzU3RyZWFtRXZlbnQsIEFuYWx5dGljc1N0cmVhbUV2ZW50VHlwZSB9IGZyb20gJy4vYW5hbHl0aWNzLnN0cmVhbSc7XG5pbXBvcnQgeyBNYXliZSwgRGVzdHJveWFibGUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFuYWx5dGljc0V2ZW50RW1pdHRlclNlcnZpY2Uge1xuICBhYnN0cmFjdCBzZW5kTmV3VXNlckV2ZW50KHVzZXI6IEFuYWx5dGljc1VzZXIsIGRhdGE6IE5ld1VzZXJBbmFseXRpY3NFdmVudERhdGEpOiB2b2lkO1xuICBhYnN0cmFjdCBzZW5kVXNlckxvZ2luRXZlbnQodXNlcjogQW5hbHl0aWNzVXNlciwgZGF0YT86IEFuYWx5dGljc0V2ZW50RGF0YSk6IHZvaWQ7XG4gIGFic3RyYWN0IHNlbmRVc2VyTG9nb3V0RXZlbnQoZGF0YT86IEFuYWx5dGljc0V2ZW50RGF0YSk6IHZvaWQ7XG4gIGFic3RyYWN0IHNlbmRVc2VyUHJvcGVydGllc0V2ZW50KHVzZXI6IEFuYWx5dGljc1VzZXIsIGRhdGE/OiBBbmFseXRpY3NFdmVudERhdGEpOiB2b2lkO1xuICBhYnN0cmFjdCBzZW5kRXZlbnREYXRhKG5hbWU6IEFuYWx5dGljc0V2ZW50TmFtZSwgZGF0YT86IEFuYWx5dGljc0V2ZW50RGF0YSk6IHZvaWQ7XG4gIGFic3RyYWN0IHNlbmRFdmVudChldmVudDogQW5hbHl0aWNzRXZlbnQpOiB2b2lkO1xuICBhYnN0cmFjdCBzZW5kUGFnZVZpZXcocGFnZT86IHN0cmluZyk6IHZvaWQ7XG59XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBbmFseXRpY3NFdmVudFN0cmVhbVNlcnZpY2Uge1xuICBhYnN0cmFjdCByZWFkb25seSBldmVudHMkOiBPYnNlcnZhYmxlPEFuYWx5dGljc1N0cmVhbUV2ZW50Pjtcbn1cblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFuYWx5dGljc1VzZXJTb3VyY2Uge1xuICBhYnN0cmFjdCByZWFkb25seSBhbmFseXRpY3NVc2VyJDogT2JzZXJ2YWJsZTxNYXliZTxBbmFseXRpY3NVc2VyPj47XG59XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBbmFseXRpY3NTZXJ2aWNlTGlzdGVuZXIge1xuICBwdWJsaWMgYWJzdHJhY3QgbGlzdGVuVG9TZXJ2aWNlKHNlcnZpY2U6IEFuYWx5dGljc1NlcnZpY2UpOiB2b2lkO1xufVxuXG4vKipcbiAqIEFic3RyYWN0IEFuYWx5dGljc1NlcnZpY2VMaXN0ZW5lciBpbXBsZW1lbnRhdGlvbi5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFic3RyYWN0QW5hbHl0aWNzU2VydmljZUxpc3RlbmVyIGltcGxlbWVudHMgQW5hbHl0aWNzU2VydmljZUxpc3RlbmVyLCBEZXN0cm95YWJsZSB7XG5cbiAgcHJpdmF0ZSBfc3ViID0gbmV3IFN1YnNjcmlwdGlvbk9iamVjdCgpO1xuICBwcm90ZWN0ZWQgX2FuYWx5dGljcyA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TWF5YmU8QW5hbHl0aWNzU2VydmljZT4+KHVuZGVmaW5lZCk7XG5cbiAgcmVhZG9ubHkgYW5hbHl0aWNzJCA9IHRoaXMuX2FuYWx5dGljcy5waXBlKGZpbHRlck1heWJlKCksIHNoYXJlUmVwbGF5KDEpKTtcbiAgcmVhZG9ubHkgYW5hbHl0aWNzRXZlbnRzJCA9IHRoaXMuYW5hbHl0aWNzJC5waXBlKHN3aXRjaE1hcCh4ID0+IHguZXZlbnRzJCksIHNoYXJlUmVwbGF5KDEpKTtcblxuICAvLyBNQVJLOiBBbmFseXRpY3NTZXJ2aWNlTGlzdGVuZXJcbiAgbGlzdGVuVG9TZXJ2aWNlKHNlcnZpY2U6IEFuYWx5dGljc1NlcnZpY2UpOiB2b2lkIHtcbiAgICB0aGlzLl9hbmFseXRpY3MubmV4dChzZXJ2aWNlKTtcbiAgICBjb25zdCBzdWIgPSB0aGlzLl9pbml0aWFsaXplU2VydmljZVN1YnNjcmlwdGlvbigpO1xuXG4gICAgaWYgKHN1YiAhPT0gZmFsc2UpIHtcbiAgICAgIHRoaXMuX3N1Yi5zdWJzY3JpcHRpb24gPSBzdWI7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGFic3RyYWN0IF9pbml0aWFsaXplU2VydmljZVN1YnNjcmlwdGlvbigpOiBTdWJzY3JpcHRpb24gfCBmYWxzZTtcblxuICAvLyBNQVJLOiBEZXN0cm95XG4gIGRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fYW5hbHl0aWNzLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5fc3ViLmRlc3Ryb3koKTtcbiAgfVxuXG59XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBbmFseXRpY3NTZXJ2aWNlQ29uZmlndXJhdGlvbiB7XG4gIGxpc3RlbmVyczogQW5hbHl0aWNzU2VydmljZUxpc3RlbmVyW10gPSBbXTtcbiAgaXNQcm9kdWN0aW9uPzogYm9vbGVhbjtcbiAgbG9nRXZlbnRzPzogYm9vbGVhbjtcbiAgdXNlclNvdXJjZT86IEFuYWx5dGljc1VzZXJTb3VyY2U7XG59XG5cbmV4cG9ydCBjbGFzcyBBbmFseXRpY3NTdHJlYW1FdmVudEFuYWx5dGljc0V2ZW50V3JhcHBlciBpbXBsZW1lbnRzIEFuYWx5dGljc1N0cmVhbUV2ZW50IHtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgZXZlbnQ6IFVzZXJBbmFseXRpY3NFdmVudCwgcHVibGljIHJlYWRvbmx5IHR5cGU6IEFuYWx5dGljc1N0cmVhbUV2ZW50VHlwZSA9IEFuYWx5dGljc1N0cmVhbUV2ZW50VHlwZS5FdmVudCkgeyB9XG5cbiAgcHVibGljIGdldCB1c2VyKCk6IE1heWJlPEFuYWx5dGljc1VzZXI+IHtcbiAgICByZXR1cm4gdGhpcy5ldmVudC51c2VyO1xuICB9XG5cbiAgcHVibGljIGdldCB1c2VySWQoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gKHRoaXMudXNlcikgPyB0aGlzLnVzZXIudXNlciA6IHVuZGVmaW5lZDtcbiAgfVxuXG59XG5cbi8qKlxuICogUHJpbWFyeSBhbmFseXRpY3Mgc2VydmljZSB0aGF0IGVtaXRzIGFuYWx5dGljcyBldmVudHMgdGhhdCBjb21wb25lbnRzIGNhbiBsaXN0ZW4gdG8uXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBBbmFseXRpY3NTZXJ2aWNlIGltcGxlbWVudHMgQW5hbHl0aWNzRXZlbnRTdHJlYW1TZXJ2aWNlLCBBbmFseXRpY3NFdmVudEVtaXR0ZXJTZXJ2aWNlLCBEZXN0cm95YWJsZSB7XG5cbiAgLy8gVE9ETzogTWFrZSB0aGVzZSBjb25maWd1cmFibGUuXG5cbiAgc3RhdGljIHJlYWRvbmx5IFVTRVJfUkVHSVNUUkFUSU9OX0VWRU5UX05BTUUgPSAnVXNlciBSZWdpc3RlcmVkJztcbiAgc3RhdGljIHJlYWRvbmx5IFVTRVJfTE9HSU5fRVZFTlRfTkFNRSA9ICdVc2VyIExvZ2luJztcbiAgc3RhdGljIHJlYWRvbmx5IFVTRVJfTE9HT1VUX0VWRU5UX05BTUUgPSAnVXNlciBMb2dvdXQnO1xuICBzdGF0aWMgcmVhZG9ubHkgVVNFUl9QUk9QRVJUSUVTX0VWRU5UX05BTUUgPSAnVXNlciBQcm9wZXJ0aWVzJztcblxuICBwcml2YXRlIF9zdWJqZWN0ID0gbmV3IFN1YmplY3Q8QW5hbHl0aWNzU3RyZWFtRXZlbnQ+KCk7XG4gIHJlYWRvbmx5IGV2ZW50cyQgPSB0aGlzLl9zdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xuXG4gIHByaXZhdGUgX3VzZXJTb3VyY2UgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE1heWJlPEFuYWx5dGljc1VzZXJTb3VyY2U+Pih1bmRlZmluZWQpO1xuICByZWFkb25seSB1c2VyJCA9IHRoaXMuX3VzZXJTb3VyY2UucGlwZShzd2l0Y2hNYXAoeCA9PiAoeCkgPyB4LmFuYWx5dGljc1VzZXIkIDogb2YodW5kZWZpbmVkKSksIHNoYXJlUmVwbGF5KDEpKTtcblxuICBwcml2YXRlIF91c2VyU291cmNlU3ViID0gbmV3IFN1YnNjcmlwdGlvbk9iamVjdCgpO1xuICBwcml2YXRlIF9sb2dnZXJTdWIgPSBuZXcgU3Vic2NyaXB0aW9uT2JqZWN0KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfY29uZmlnOiBBbmFseXRpY3NTZXJ2aWNlQ29uZmlndXJhdGlvbixcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KEFuYWx5dGljc1VzZXJTb3VyY2UpIHVzZXJTb3VyY2U6IE1heWJlPEFuYWx5dGljc1VzZXJTb3VyY2U+ID0gX2NvbmZpZy51c2VyU291cmNlXG4gICkge1xuICAgIHRoaXMuX2luaXQoKTtcblxuICAgIGlmICh1c2VyU291cmNlKSB7XG4gICAgICB0aGlzLnNldFVzZXJTb3VyY2UodXNlclNvdXJjZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gTUFSSzogU291cmNlXG4gIC8qKlxuICAgKiBTZXRzIHRoZSB1c2VyIGRpcmVjdGx5LlxuICAgKi9cbiAgcHVibGljIHNldFVzZXIodXNlcjogTWF5YmU8QW5hbHl0aWNzVXNlcj4pOiB2b2lkIHtcbiAgICBsZXQgc291cmNlOiBNYXliZTxBbmFseXRpY3NVc2VyU291cmNlPjtcblxuICAgIGlmICh1c2VyKSB7XG4gICAgICBzb3VyY2UgPSB7IGFuYWx5dGljc1VzZXIkOiBvZih1c2VyKSB9O1xuICAgIH1cblxuICAgIHRoaXMuX3VzZXJTb3VyY2UubmV4dChzb3VyY2UpO1xuICB9XG5cbiAgcHVibGljIHNldFVzZXJTb3VyY2Uoc291cmNlOiBBbmFseXRpY3NVc2VyU291cmNlKTogdm9pZCB7XG4gICAgdGhpcy5fdXNlclNvdXJjZS5uZXh0KHNvdXJjZSk7XG4gIH1cblxuICAvLyBNQVJLOiBBbmFseXRpY3NFdmVudEVtaXR0ZXJTZXJ2aWNlXG4gIC8qKlxuICAgKiBTZW5kcyBhbiBldmVudC5cbiAgICovXG4gIHB1YmxpYyBzZW5kTmV3VXNlckV2ZW50KHVzZXI6IEFuYWx5dGljc1VzZXIsIGRhdGE6IE5ld1VzZXJBbmFseXRpY3NFdmVudERhdGEpOiB2b2lkIHtcbiAgICB0aGlzLnNlbmROZXh0RXZlbnQoe1xuICAgICAgbmFtZTogQW5hbHl0aWNzU2VydmljZS5VU0VSX1JFR0lTVFJBVElPTl9FVkVOVF9OQU1FLFxuICAgICAgZGF0YVxuICAgIH0sIEFuYWx5dGljc1N0cmVhbUV2ZW50VHlwZS5OZXdVc2VyRXZlbnQsIHVzZXIpO1xuICB9XG5cbiAgcHVibGljIHNlbmRVc2VyTG9naW5FdmVudCh1c2VyOiBBbmFseXRpY3NVc2VyLCBkYXRhPzogQW5hbHl0aWNzRXZlbnREYXRhKTogdm9pZCB7XG4gICAgdGhpcy5zZW5kTmV4dEV2ZW50KHtcbiAgICAgIG5hbWU6IEFuYWx5dGljc1NlcnZpY2UuVVNFUl9MT0dJTl9FVkVOVF9OQU1FLFxuICAgICAgZGF0YVxuICAgIH0sIEFuYWx5dGljc1N0cmVhbUV2ZW50VHlwZS5Vc2VyTG9naW5FdmVudCwgdXNlcik7XG4gIH1cblxuICBwdWJsaWMgc2VuZFVzZXJMb2dvdXRFdmVudChkYXRhPzogQW5hbHl0aWNzRXZlbnREYXRhLCBjbGVhclVzZXIgPSB0cnVlKTogdm9pZCB7XG4gICAgdGhpcy5zZW5kTmV4dEV2ZW50KHtcbiAgICAgIG5hbWU6IEFuYWx5dGljc1NlcnZpY2UuVVNFUl9MT0dPVVRfRVZFTlRfTkFNRSxcbiAgICAgIGRhdGFcbiAgICB9LCBBbmFseXRpY3NTdHJlYW1FdmVudFR5cGUuVXNlckxvZ291dEV2ZW50KTtcblxuICAgIGlmIChjbGVhclVzZXIpIHtcbiAgICAgIHRoaXMuc2V0VXNlcih1bmRlZmluZWQpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBzZW5kVXNlclByb3BlcnRpZXNFdmVudCh1c2VyOiBBbmFseXRpY3NVc2VyLCBkYXRhPzogQW5hbHl0aWNzRXZlbnREYXRhKTogdm9pZCB7XG4gICAgdGhpcy5zZW5kTmV4dEV2ZW50KHtcbiAgICAgIG5hbWU6IEFuYWx5dGljc1NlcnZpY2UuVVNFUl9QUk9QRVJUSUVTX0VWRU5UX05BTUUsXG4gICAgICBkYXRhXG4gICAgfSwgQW5hbHl0aWNzU3RyZWFtRXZlbnRUeXBlLlVzZXJQcm9wZXJ0aWVzRXZlbnQsIHVzZXIpO1xuICB9XG5cbiAgcHVibGljIHNlbmRFdmVudERhdGEobmFtZTogQW5hbHl0aWNzRXZlbnROYW1lLCBkYXRhPzogQW5hbHl0aWNzRXZlbnREYXRhKTogdm9pZCB7XG4gICAgcmV0dXJuIHRoaXMuc2VuZEV2ZW50KHtcbiAgICAgIG5hbWUsXG4gICAgICBkYXRhXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgc2VuZEV2ZW50VHlwZShldmVudFR5cGU6IEFuYWx5dGljc0V2ZW50TmFtZSk6IHZvaWQge1xuICAgIHRoaXMuc2VuZE5leHRFdmVudCh7XG4gICAgICBuYW1lOiBldmVudFR5cGVcbiAgICB9LCBBbmFseXRpY3NTdHJlYW1FdmVudFR5cGUuRXZlbnQpO1xuICB9XG5cbiAgcHVibGljIHNlbmRFdmVudChldmVudDogQW5hbHl0aWNzRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLnNlbmROZXh0RXZlbnQoZXZlbnQsIEFuYWx5dGljc1N0cmVhbUV2ZW50VHlwZS5FdmVudCk7XG4gIH1cblxuICBwdWJsaWMgc2VuZFBhZ2VWaWV3KHBhZ2U/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLnNlbmROZXh0RXZlbnQoe1xuICAgICAgbmFtZTogcGFnZVxuICAgIH0sIEFuYWx5dGljc1N0cmVhbUV2ZW50VHlwZS5QYWdlVmlldyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgc2VuZE5leHRFdmVudChldmVudDogQW5hbHl0aWNzRXZlbnQgPSB7fSwgdHlwZTogQW5hbHl0aWNzU3RyZWFtRXZlbnRUeXBlLCB1c2VyT3ZlcnJpZGU/OiBBbmFseXRpY3NVc2VyKTogdm9pZCB7XG4gICAgdGhpcy51c2VyJC5waXBlKGZpcnN0KCkpLnN1YnNjcmliZSgoYW5hbHl0aWNzVXNlcikgPT4ge1xuICAgICAgY29uc3QgdXNlcjogTWF5YmU8QW5hbHl0aWNzVXNlcj4gPSAodXNlck92ZXJyaWRlICE9IG51bGwpID8gdXNlck92ZXJyaWRlIDogYW5hbHl0aWNzVXNlcjtcbiAgICAgIGNvbnN0IGFuYWx5dGljc0V2ZW50OiBVc2VyQW5hbHl0aWNzRXZlbnQgPSB7IC4uLmV2ZW50LCB1c2VyIH07XG4gICAgICB0aGlzLm5leHRFdmVudChhbmFseXRpY3NFdmVudCwgdHlwZSk7XG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgbmV4dEV2ZW50KGV2ZW50OiBVc2VyQW5hbHl0aWNzRXZlbnQsIHR5cGU6IEFuYWx5dGljc1N0cmVhbUV2ZW50VHlwZSk6IHZvaWQge1xuICAgIGNvbnN0IHdyYXBwZXIgPSBuZXcgQW5hbHl0aWNzU3RyZWFtRXZlbnRBbmFseXRpY3NFdmVudFdyYXBwZXIoZXZlbnQsIHR5cGUpO1xuICAgIHRoaXMuX3N1YmplY3QubmV4dCh3cmFwcGVyKTtcbiAgfVxuXG4gIC8vIE1BUks6IEludGVybmFsXG4gIHByaXZhdGUgX2luaXQoKTogdm9pZCB7XG5cbiAgICBpZiAodGhpcy5fY29uZmlnLmlzUHJvZHVjdGlvbikge1xuICAgICAgLy8gSW5pdGlhbGl6ZSBsaXN0ZW5lcnMuXG4gICAgICB0aGlzLl9jb25maWcubGlzdGVuZXJzLmZvckVhY2goKGxpc3RlbmVyKSA9PiB7XG4gICAgICAgIGxpc3RlbmVyLmxpc3RlblRvU2VydmljZSh0aGlzKTtcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zb2xlLndhcm4oJ0FuYWx5dGljc1NlcnZpY2U6IEFuYWx5dGljcyBub3QgaW4gcHJvZHVjdGlvbiBtb2RlLiBBbGwgYW5hbHl0aWNzIGV2ZW50cyBhcmUgaWdub3JlZC4nKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fY29uZmlnLmxvZ0V2ZW50cyB8fCAhdGhpcy5fY29uZmlnLmlzUHJvZHVjdGlvbikge1xuICAgICAgY29uc29sZS5sb2coJ0FuYWx5dGljc1NlcnZpY2U6IExvZyBhbmFseXRpY3MgZXZlbnRzIGVuYWJsZWQuJyk7XG5cbiAgICAgIC8vIENyZWF0ZSBhIG5ldyBzdWJzY3JpcHRpb25cbiAgICAgIHRoaXMuX2xvZ2dlclN1Yi5zdWJzY3JpcHRpb24gPSB0aGlzLl9zdWJqZWN0LnN1YnNjcmliZSgoeCkgPT4ge1xuICAgICAgICBjb25zb2xlLmxvZyhgQW5hbHl0aWNzU2VydmljZTogQW5hbHl0aWNzIEV2ZW50IC0gJHtBbmFseXRpY3NTdHJlYW1FdmVudFR5cGVbeC50eXBlXX0gVXNlcjogJHt4LnVzZXJJZH0gRGF0YTogJHtKU09OLnN0cmluZ2lmeSh4LmV2ZW50KX0uYCk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICB0aGlzLl91c2VyU291cmNlU3ViLnN1YnNjcmlwdGlvbiA9IHRoaXMudXNlciQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuc2VuZE5leHRFdmVudCh7fSwgQW5hbHl0aWNzU3RyZWFtRXZlbnRUeXBlLlVzZXJDaGFuZ2UpO1xuICAgIH0pO1xuICB9XG5cbiAgZGVzdHJveSgpIHtcbiAgICB0aGlzLl91c2VyU291cmNlU3ViLmRlc3Ryb3koKTtcbiAgICB0aGlzLl9sb2dnZXJTdWIuZGVzdHJveSgpO1xuICB9XG5cbn1cbiJdfQ==
@@ -0,0 +1,13 @@
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5hbHl0aWNzLnN0cmVhbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1hbmFseXRpY3Mvc3JjL2xpYi9hbmFseXRpY3MvYW5hbHl0aWNzLnN0cmVhbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxNQUFNLENBQU4sSUFBWSx3QkFjWDtBQWRELFdBQVksd0JBQXdCO0lBRWxDLCtFQUFRLENBQUE7SUFDUixtRkFBVSxDQUFBO0lBRVYsY0FBYztJQUNkLHVGQUFZLENBQUE7SUFDWiwyRkFBYyxDQUFBO0lBQ2QsNkZBQWUsQ0FBQTtJQUNmLHFHQUFtQixDQUFBO0lBRW5CLFNBQVM7SUFDVCx5RUFBSyxDQUFBO0FBRVAsQ0FBQyxFQWRXLHdCQUF3QixLQUF4Qix3QkFBd0IsUUFjbkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNYXliZSB9IGZyb20gXCJAZGVyZWVrYi91dGlsXCI7XG5pbXBvcnQgeyBBbmFseXRpY3NVc2VyLCBVc2VyQW5hbHl0aWNzRXZlbnQsIEFuYWx5dGljc1VzZXJJZCB9IGZyb20gXCIuL2FuYWx5dGljc1wiO1xuXG5leHBvcnQgZW51bSBBbmFseXRpY3NTdHJlYW1FdmVudFR5cGUge1xuXG4gIFBhZ2VWaWV3LFxuICBVc2VyQ2hhbmdlLFxuXG4gIC8vIFVzZXIgRXZlbnRzXG4gIE5ld1VzZXJFdmVudCxcbiAgVXNlckxvZ2luRXZlbnQsXG4gIFVzZXJMb2dvdXRFdmVudCxcbiAgVXNlclByb3BlcnRpZXNFdmVudCxcblxuICAvLyBFdmVudHNcbiAgRXZlbnRcblxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFuYWx5dGljc1N0cmVhbUV2ZW50IHtcbiAgcmVhZG9ubHkgdHlwZTogQW5hbHl0aWNzU3RyZWFtRXZlbnRUeXBlO1xuICByZWFkb25seSB1c2VyPzogTWF5YmU8QW5hbHl0aWNzVXNlcj47XG4gIHJlYWRvbmx5IGV2ZW50PzogVXNlckFuYWx5dGljc0V2ZW50O1xuICByZWFkb25seSB1c2VySWQ/OiBBbmFseXRpY3NVc2VySWQ7XG59XG4iXX0=
@@ -0,0 +1,5 @@
1
+ export * from './analytics.module';
2
+ export * from './analytics.service';
3
+ export * from './analytics.stream';
4
+ export * from './analytics';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtYW5hbHl0aWNzL3NyYy9saWIvYW5hbHl0aWNzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hbmFseXRpY3MubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vYW5hbHl0aWNzLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9hbmFseXRpY3Muc3RyZWFtJztcbmV4cG9ydCAqIGZyb20gJy4vYW5hbHl0aWNzJztcbiJdfQ==
@@ -1,6 +1,4 @@
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';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtYW5hbHl0aWNzL3NyYy9saWIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxhQUFhLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2FjdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL2FuYWx5dGljcy5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9hbmFseXRpY3Muc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2FuYWx5dGljcy5zdHJlYW0nO1xuZXhwb3J0ICogZnJvbSAnLi9hbmFseXRpY3MnO1xuIl19
3
+ export * from './providers';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtYW5hbHl0aWNzL3NyYy9saWIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxhQUFhLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2FjdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL2FuYWx5dGljcyc7XG5leHBvcnQgKiBmcm9tICcuL3Byb3ZpZGVycyc7XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export * from './segment';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtYW5hbHl0aWNzL3NyYy9saWIvcHJvdmlkZXJzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsV0FBVyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zZWdtZW50JztcbiJdfQ==
@@ -0,0 +1,4 @@
1
+ export * from './segment.listener.service';
2
+ export * from './segment.service';
3
+ export * from './segment.module';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtYW5hbHl0aWNzL3NyYy9saWIvcHJvdmlkZXJzL3NlZ21lbnQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsa0JBQWtCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NlZ21lbnQubGlzdGVuZXIuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3NlZ21lbnQuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3NlZ21lbnQubW9kdWxlJztcbiJdfQ==
@@ -0,0 +1,92 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { combineLatest } from 'rxjs';
3
+ import { AbstractAnalyticsServiceListener, AnalyticsStreamEventType } from '../../analytics';
4
+ import { SegmentApiService } from './segment.service';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "./segment.service";
7
+ /**
8
+ * AnalyticsServiceListener adapter for Segment.
9
+ */
10
+ export class SegmentAnalyticsListenerService extends AbstractAnalyticsServiceListener {
11
+ constructor(_segmentApi) {
12
+ super();
13
+ this._segmentApi = _segmentApi;
14
+ if (this._segmentApi.config.logging) {
15
+ console.log('SegmentAnalyticsListenerService: Segment is logging events.');
16
+ }
17
+ if (this._segmentApi.config.active) {
18
+ console.log('SegmentAnalyticsListenerService: Segment is disabled from sending events to the server.');
19
+ }
20
+ }
21
+ _initializeServiceSubscription() {
22
+ return combineLatest([this._segmentApi.service$, this.analyticsEvents$]).subscribe(([segment, streamEvent]) => {
23
+ if (this._segmentApi.config.logging) {
24
+ console.log('Segment Listener Logging Event: ', streamEvent);
25
+ }
26
+ if (this._segmentApi.config.active) {
27
+ this.handleStreamEvent(segment, streamEvent);
28
+ }
29
+ });
30
+ }
31
+ handleStreamEvent(api, streamEvent) {
32
+ switch (streamEvent.type) {
33
+ case AnalyticsStreamEventType.NewUserEvent:
34
+ this.updateWithNewUserEvent(api, streamEvent);
35
+ break;
36
+ case AnalyticsStreamEventType.UserLoginEvent:
37
+ case AnalyticsStreamEventType.Event:
38
+ this.updateWithEvent(api, streamEvent);
39
+ break;
40
+ case AnalyticsStreamEventType.UserLogoutEvent:
41
+ this.changeUser(api, undefined);
42
+ break;
43
+ case AnalyticsStreamEventType.PageView:
44
+ api.page();
45
+ break;
46
+ case AnalyticsStreamEventType.UserChange:
47
+ this.changeUser(api, streamEvent.user);
48
+ break;
49
+ }
50
+ }
51
+ updateWithNewUserEvent(api, streamEvent) {
52
+ this.changeUser(api, streamEvent.user);
53
+ }
54
+ updateWithEvent(api, streamEvent, name) {
55
+ const event = streamEvent.event;
56
+ const eventName = name || event?.name;
57
+ if (eventName) {
58
+ const value = event?.value;
59
+ const data = event?.data;
60
+ api.track(eventName, {
61
+ ...(value != null) ? {
62
+ value
63
+ } : undefined,
64
+ ...data
65
+ }, {}, () => {
66
+ if (this._segmentApi.config.logging) {
67
+ console.log('Segment track success.');
68
+ }
69
+ });
70
+ }
71
+ }
72
+ changeUser(api, user) {
73
+ if (user) {
74
+ api.identify(user.user, {
75
+ ...user.properties
76
+ }, {}, () => {
77
+ if (this._segmentApi.config.logging) {
78
+ console.log('Segment identify success.');
79
+ }
80
+ });
81
+ }
82
+ else {
83
+ api.reset();
84
+ }
85
+ }
86
+ }
87
+ SegmentAnalyticsListenerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: SegmentAnalyticsListenerService, deps: [{ token: i1.SegmentApiService }], target: i0.ɵɵFactoryTarget.Injectable });
88
+ SegmentAnalyticsListenerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: SegmentAnalyticsListenerService });
89
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: SegmentAnalyticsListenerService, decorators: [{
90
+ type: Injectable
91
+ }], ctorParameters: function () { return [{ type: i1.SegmentApiService }]; } });
92
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VnbWVudC5saXN0ZW5lci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWFuYWx5dGljcy9zcmMvbGliL3Byb3ZpZGVycy9zZWdtZW50L3NlZ21lbnQubGlzdGVuZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckMsT0FBTyxFQUFFLGdDQUFnQyxFQUF3Qix3QkFBd0IsRUFBaUIsTUFBTSxpQkFBaUIsQ0FBQztBQUNsSSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7O0FBRXREOztHQUVHO0FBRUgsTUFBTSxPQUFPLCtCQUFnQyxTQUFRLGdDQUFnQztJQUVuRixZQUFvQixXQUE4QjtRQUNoRCxLQUFLLEVBQUUsQ0FBQztRQURVLGdCQUFXLEdBQVgsV0FBVyxDQUFtQjtRQUdoRCxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRTtZQUNuQyxPQUFPLENBQUMsR0FBRyxDQUFDLDZEQUE2RCxDQUFDLENBQUM7U0FDNUU7UUFFRCxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRTtZQUNsQyxPQUFPLENBQUMsR0FBRyxDQUFDLHlGQUF5RixDQUFDLENBQUM7U0FDeEc7SUFDSCxDQUFDO0lBRVMsOEJBQThCO1FBQ3RDLE9BQU8sYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxTQUFTLENBQ2hGLENBQUMsQ0FBQyxPQUFPLEVBQUUsV0FBVyxDQUF1RCxFQUFFLEVBQUU7WUFDL0UsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FB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QkFEM0MsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1heWJlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBBYnN0cmFjdEFuYWx5dGljc1NlcnZpY2VMaXN0ZW5lciwgQW5hbHl0aWNzU3RyZWFtRXZlbnQsIEFuYWx5dGljc1N0cmVhbUV2ZW50VHlwZSwgQW5hbHl0aWNzVXNlciB9IGZyb20gJy4uLy4uL2FuYWx5dGljcyc7XG5pbXBvcnQgeyBTZWdtZW50QXBpU2VydmljZSB9IGZyb20gJy4vc2VnbWVudC5zZXJ2aWNlJztcblxuLyoqXG4gKiBBbmFseXRpY3NTZXJ2aWNlTGlzdGVuZXIgYWRhcHRlciBmb3IgU2VnbWVudC5cbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFNlZ21lbnRBbmFseXRpY3NMaXN0ZW5lclNlcnZpY2UgZXh0ZW5kcyBBYnN0cmFjdEFuYWx5dGljc1NlcnZpY2VMaXN0ZW5lciB7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfc2VnbWVudEFwaTogU2VnbWVudEFwaVNlcnZpY2UpIHtcbiAgICBzdXBlcigpO1xuXG4gICAgaWYgKHRoaXMuX3NlZ21lbnRBcGkuY29uZmlnLmxvZ2dpbmcpIHtcbiAgICAgIGNvbnNvbGUubG9nKCdTZWdtZW50QW5hbHl0aWNzTGlzdGVuZXJTZXJ2aWNlOiBTZWdtZW50IGlzIGxvZ2dpbmcgZXZlbnRzLicpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9zZWdtZW50QXBpLmNvbmZpZy5hY3RpdmUpIHtcbiAgICAgIGNvbnNvbGUubG9nKCdTZWdtZW50QW5hbHl0aWNzTGlzdGVuZXJTZXJ2aWNlOiBTZWdtZW50IGlzIGRpc2FibGVkIGZyb20gc2VuZGluZyBldmVudHMgdG8gdGhlIHNlcnZlci4nKTtcbiAgICB9XG4gIH1cblxuICBwcm90ZWN0ZWQgX2luaXRpYWxpemVTZXJ2aWNlU3Vic2NyaXB0aW9uKCkge1xuICAgIHJldHVybiBjb21iaW5lTGF0ZXN0KFt0aGlzLl9zZWdtZW50QXBpLnNlcnZpY2UkLCB0aGlzLmFuYWx5dGljc0V2ZW50cyRdKS5zdWJzY3JpYmUoXG4gICAgICAoW3NlZ21lbnQsIHN0cmVhbUV2ZW50XTogW1NlZ21lbnRBbmFseXRpY3MuQW5hbHl0aWNzSlMsIEFuYWx5dGljc1N0cmVhbUV2ZW50XSkgPT4ge1xuICAgICAgICBpZiAodGhpcy5fc2VnbWVudEFwaS5jb25maWcubG9nZ2luZykge1xuICAgICAgICAgIGNvbnNvbGUubG9nKCdTZWdtZW50IExpc3RlbmVyIExvZ2dpbmcgRXZlbnQ6ICcsIHN0cmVhbUV2ZW50KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLl9zZWdtZW50QXBpLmNvbmZpZy5hY3RpdmUpIHtcbiAgICAgICAgICB0aGlzLmhhbmRsZVN0cmVhbUV2ZW50KHNlZ21lbnQsIHN0cmVhbUV2ZW50KTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlU3RyZWFtRXZlbnQoYXBpOiBTZWdtZW50QW5hbHl0aWNzLkFuYWx5dGljc0pTLCBzdHJlYW1FdmVudDogQW5hbHl0aWNzU3RyZWFtRXZlbnQpOiB2b2lkIHtcbiAgICBzd2l0Y2ggKHN0cmVhbUV2ZW50LnR5cGUpIHtcbiAgICAgIGNhc2UgQW5hbHl0aWNzU3RyZWFtRXZlbnRUeXBlLk5ld1VzZXJFdmVudDpcbiAgICAgICAgdGhpcy51cGRhdGVXaXRoTmV3VXNlckV2ZW50KGFwaSwgc3RyZWFtRXZlbnQpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgQW5hbHl0aWNzU3RyZWFtRXZlbnRUeXBlLlVzZXJMb2dpbkV2ZW50OlxuICAgICAgY2FzZSBBbmFseXRpY3NTdHJlYW1FdmVudFR5cGUuRXZlbnQ6XG4gICAgICAgIHRoaXMudXBkYXRlV2l0aEV2ZW50KGFwaSwgc3RyZWFtRXZlbnQpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgQW5hbHl0aWNzU3RyZWFtRXZlbnRUeXBlLlVzZXJMb2dvdXRFdmVudDpcbiAgICAgICAgdGhpcy5jaGFuZ2VVc2VyKGFwaSwgdW5kZWZpbmVkKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIEFuYWx5dGljc1N0cmVhbUV2ZW50VHlwZS5QYWdlVmlldzpcbiAgICAgICAgYXBpLnBhZ2UoKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIEFuYWx5dGljc1N0cmVhbUV2ZW50VHlwZS5Vc2VyQ2hhbmdlOlxuICAgICAgICB0aGlzLmNoYW5nZVVzZXIoYXBpLCBzdHJlYW1FdmVudC51c2VyKTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIHVwZGF0ZVdpdGhOZXdVc2VyRXZlbnQoYXBpOiBTZWdtZW50QW5hbHl0aWNzLkFuYWx5dGljc0pTLCBzdHJlYW1FdmVudDogQW5hbHl0aWNzU3RyZWFtRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLmNoYW5nZVVzZXIoYXBpLCBzdHJlYW1FdmVudC51c2VyKTtcbiAgfVxuXG4gIHByb3RlY3RlZCB1cGRhdGVXaXRoRXZlbnQoYXBpOiBTZWdtZW50QW5hbHl0aWNzLkFuYWx5dGljc0pTLCBzdHJlYW1FdmVudDogQW5hbHl0aWNzU3RyZWFtRXZlbnQsIG5hbWU/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBldmVudCA9IHN0cmVhbUV2ZW50LmV2ZW50O1xuICAgIGNvbnN0IGV2ZW50TmFtZSA9IG5hbWUgfHwgZXZlbnQ/Lm5hbWU7XG5cbiAgICBpZiAoZXZlbnROYW1lKSB7XG4gICAgICBjb25zdCB2YWx1ZSA9IGV2ZW50Py52YWx1ZVxuICAgICAgY29uc3QgZGF0YSA9IGV2ZW50Py5kYXRhO1xuXG4gICAgICBhcGkudHJhY2soZXZlbnROYW1lLCB7XG4gICAgICAgIC4uLih2YWx1ZSAhPSBudWxsKSA/IHtcbiAgICAgICAgICB2YWx1ZVxuICAgICAgICB9IDogdW5kZWZpbmVkLFxuICAgICAgICAuLi5kYXRhXG4gICAgICB9LCB7fSwgKCkgPT4ge1xuICAgICAgICBpZiAodGhpcy5fc2VnbWVudEFwaS5jb25maWcubG9nZ2luZykge1xuICAgICAgICAgIGNvbnNvbGUubG9nKCdTZWdtZW50IHRyYWNrIHN1Y2Nlc3MuJyk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgY2hhbmdlVXNlcihhcGk6IFNlZ21lbnRBbmFseXRpY3MuQW5hbHl0aWNzSlMsIHVzZXI6IE1heWJlPEFuYWx5dGljc1VzZXI+KTogdm9pZCB7XG4gICAgaWYgKHVzZXIpIHtcbiAgICAgIGFwaS5pZGVudGlmeSh1c2VyLnVzZXIsIHtcbiAgICAgICAgLi4udXNlci5wcm9wZXJ0aWVzXG4gICAgICB9LCB7fSwgKCkgPT4ge1xuICAgICAgICBpZiAodGhpcy5fc2VnbWVudEFwaS5jb25maWcubG9nZ2luZykge1xuICAgICAgICAgIGNvbnNvbGUubG9nKCdTZWdtZW50IGlkZW50aWZ5IHN1Y2Nlc3MuJyk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBhcGkucmVzZXQoKTtcbiAgICB9XG4gIH1cblxufVxuIl19
@@ -0,0 +1,28 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { PRELOAD_SEGMENT_TOKEN, SegmentApiService } from './segment.service';
3
+ import * as i0 from "@angular/core";
4
+ export class SegmentModule {
5
+ static forRoot(preloadService) {
6
+ return {
7
+ ngModule: SegmentModule,
8
+ providers: [
9
+ {
10
+ provide: PRELOAD_SEGMENT_TOKEN,
11
+ useValue: preloadService
12
+ },
13
+ SegmentApiService
14
+ ]
15
+ };
16
+ }
17
+ }
18
+ SegmentModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: SegmentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
19
+ SegmentModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: SegmentModule });
20
+ SegmentModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: SegmentModule, imports: [[]] });
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: SegmentModule, decorators: [{
22
+ type: NgModule,
23
+ args: [{
24
+ declarations: [],
25
+ imports: []
26
+ }]
27
+ }] });
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VnbWVudC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtYW5hbHl0aWNzL3NyYy9saWIvcHJvdmlkZXJzL3NlZ21lbnQvc2VnbWVudC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBdUIsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBTTdFLE1BQU0sT0FBTyxhQUFhO0lBRXhCLE1BQU0sQ0FBQyxPQUFPLENBQUMsY0FBd0I7UUFDckMsT0FBTztZQUNMLFFBQVEsRUFBRSxhQUFhO1lBQ3ZCLFNBQVMsRUFBRTtnQkFDVDtvQkFDRSxPQUFPLEVBQUUscUJBQXFCO29CQUM5QixRQUFRLEVBQUUsY0FBYztpQkFDekI7Z0JBQ0QsaUJBQWlCO2FBQ2xCO1NBQ0YsQ0FBQztJQUNKLENBQUM7OzBHQWJVLGFBQWE7MkdBQWIsYUFBYTsyR0FBYixhQUFhLFlBRmYsRUFBRTsyRkFFQSxhQUFhO2tCQUp6QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxFQUFFO29CQUNoQixPQUFPLEVBQUUsRUFBRTtpQkFDWiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlLCBNb2R1bGVXaXRoUHJvdmlkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBQUkVMT0FEX1NFR01FTlRfVE9LRU4sIFNlZ21lbnRBcGlTZXJ2aWNlIH0gZnJvbSAnLi9zZWdtZW50LnNlcnZpY2UnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtdLFxuICBpbXBvcnRzOiBbXVxufSlcbmV4cG9ydCBjbGFzcyBTZWdtZW50TW9kdWxlIHtcblxuICBzdGF0aWMgZm9yUm9vdChwcmVsb2FkU2VydmljZT86IGJvb2xlYW4pOiBNb2R1bGVXaXRoUHJvdmlkZXJzPFNlZ21lbnRNb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IFNlZ21lbnRNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHByb3ZpZGU6IFBSRUxPQURfU0VHTUVOVF9UT0tFTixcbiAgICAgICAgICB1c2VWYWx1ZTogcHJlbG9hZFNlcnZpY2VcbiAgICAgICAgfSxcbiAgICAgICAgU2VnbWVudEFwaVNlcnZpY2VcbiAgICAgIF1cbiAgICB9O1xuICB9XG5cbn1cbiJdfQ==