@bloomscorp/ngx-bloomsight 1.5.1 → 1.6.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.
package/README.md CHANGED
@@ -1,144 +1,144 @@
1
- # ngx-bloomsight
2
-
3
- A client side angular library to work with bloomsight.io
4
-
5
- ## Badges
6
-
7
- [![ License](https://img.shields.io/badge/License-MIT-green.svg)](./LICENSE.md)
8
-
9
- ## Installation
10
-
11
- Install using `npm` by running
12
-
13
- ```bash
14
- npm install @bloomscorp/ngx-bloomsight
15
- ```
16
-
17
- ## Usage/Examples
18
-
19
-
20
- ### Configuration
21
-
22
- Use the `app.module.ts` to configure the library.
23
-
24
- ```ts
25
- import {NgxBloomsightModule} from '@bloomscorp/ngx-bloomsight';
26
-
27
- @NgModule({
28
- declarations: [AppComponent],
29
- imports: [
30
- BrowserModule,
31
- AppRoutingModule,
32
- NgxBloomsightModule.forRoot({
33
- propertyToken: '65143f755c403e030c222340',
34
- isDevelopmentMode: true,
35
- stopAll: false,
36
- ...
37
- }),
38
- ],
39
- providers: [],
40
- bootstrap: [AppComponent]
41
- })
42
- export class AppModule { }
43
- ```
44
-
45
- Below is the table with all the possible options that can be configured.
46
-
47
- | Option | Type | Description | Mandatory | Default |
48
- |:-----------------------|:----------|:--------------------------------------------------------------------------------------------------------------------------------------------|:----------|:--------|
49
- | `propertyToken` | `string` | [bloomsight.io](https://bloomsight.io) property token | ✅ | NA |
50
- | `isDevelopmentMode` | `boolean` | if `true`, then logs data in the browser console | ✅ | NA |
51
- | `observePageViaWebAPI` | `boolean` | if `true`, will detect page view event based on web APIs. However, if `false`, `pageViewObserver` should be used to trigger page view event | ❌ | `true` |
52
- | `stopSimpleEvent` | `boolean` | stops only simple event tracking | ❌ | `false` |
53
- | `stopDataEvent` | `boolean` | stops only data event tracking | ❌ | `false` |
54
- | `stopPageViewEvent` | `boolean` | stops only page view event tracking | ❌ | `false` |
55
- | `stopAll` | `boolean` | stops all event tracking | ❌ | `false` |
56
- | `logOnly` | `boolean` | tracks event but doesn't save to database. Should be used only when `isDevelopmentMode: true` | ❌ | `false` |
57
-
58
-
59
- ## Page View Event
60
- To tracking website visits for your angular application just initialize `BloomsightEventService` service in `app.component.ts`.
61
-
62
- ```ts
63
- import {BloomsightEventService} from '@bloomscorp/ngx-bloomsight';
64
-
65
- constructor(public bloomsightService: BloomsightEventService) { }
66
- ```
67
-
68
- ### Simple Event
69
-
70
- Use the `resolveSimpleEvent` method to log simple events
71
-
72
- ```ts
73
- import {BloomsightEventService} from '@bloomscorp/ngx-bloomsight';
74
-
75
- constructor(public bloomsightService: BloomsightEventService) { }
76
-
77
- this.bloomsightService
78
- .resolveSimpleEvent('65d735b122354c8ba6a489c2', 'Contact Us CTA button');
79
- ```
80
- | Option | Type | Description | Mandatory | Default |
81
- |:-------------|:---------|:-------------------|:----------|:--------|
82
- | `eventToken` | `string` | Id of simple event | ✅ | NA |
83
- | `label` | `string` | a label/name for the event for future reference | ❌ | '' |
84
-
85
-
86
- ### Data Event
87
-
88
- Use the `resolveDataEvent` method to log data events
89
-
90
- ```ts
91
- import {BloomsightEventService} from '@bloomscorp/ngx-bloomsight';
92
-
93
- constructor(public bloomsightService: BloomsightEventService) { }
94
-
95
- this.bloomsightService.resolveDataEvent(
96
- '66d735b122355c8ba6a456f8',
97
- {
98
- productId: 120,
99
- sku: 'PROD021298'
100
- },
101
- 'Add to Wishlist CTA button'
102
- );
103
- ```
104
- | Option | Type | Description | Mandatory | Default |
105
- |:-------------|:---------|:-----------------------------------------|:----------|:--------|
106
- | `eventToken` | `string` | Id of data event | ✅ | NA |
107
- | `eventData` | `Object` | additional metadata in key, value format | ✅ | NA |
108
- | `label` | `string` | a label/name for the event for future reference | ❌ | '' |
109
-
110
-
111
- ### Send Email
112
-
113
- Use `sendEmail` method to send email
114
-
115
- ```ts
116
- import {BloomsightMailService} from '@bloomscorp/ngx-bloomsight';
117
-
118
- constructor(public bloomsightMailService: BloomsightMailService) { }
119
-
120
- this.bloomsightMailService.sendEmail(
121
- '66d735b122355c8ba6a456f8',
122
- '63d735h822355s6ba6a4556k',
123
- '61d895h922355b6ba6a4587a',
124
- ...
125
- )
126
- ```
127
-
128
- | Option | Type | Description | Mandatory | Default |
129
- |:------------------|:-----------|:-------------------------------------------------------------------------------------------|:----------|:--------|
130
- | `engineId` | `string` | Id of the engine that will be used to send email | ✅ | NA |
131
- | `templateId` | `string` | Id of the email template that will be used as email body | ✅ | NA |
132
- | `templateOwnerId` | `string` | Id of the user who has created the template | ✅ | NA |
133
- | `emailMetaData` | `FormData` | attachment & variables used in the template & their respective values in key, value format | ✅ | NA |
134
- | `onSuccess` | `function` | pass a function to trigger on successfully sending email | ✅ | NA |
135
- | `onError` | `function` | pass a function to trigger when an error occurs | ✅ | NA |
136
-
137
- ## License
138
-
139
- [MIT](./LICENSE.md)
140
-
141
-
142
- ## Support
143
-
1
+ # ngx-bloomsight
2
+
3
+ A client side angular library to work with [Footprint](https://footprint.bloomscorp.com)
4
+
5
+ ## Badges
6
+
7
+ [![ License](https://img.shields.io/badge/License-MIT-green.svg)](./LICENSE.md)
8
+
9
+ ## Installation
10
+
11
+ Install using `npm` by running
12
+
13
+ ```bash
14
+ npm install @bloomscorp/ngx-bloomsight
15
+ ```
16
+
17
+ ## Usage/Examples
18
+
19
+
20
+ ### Configuration
21
+
22
+ Use the `app.module.ts` to configure the library.
23
+
24
+ ```ts
25
+ import {NgxBloomsightModule} from '@bloomscorp/ngx-bloomsight';
26
+
27
+ @NgModule({
28
+ declarations: [AppComponent],
29
+ imports: [
30
+ BrowserModule,
31
+ AppRoutingModule,
32
+ NgxBloomsightModule.forRoot({
33
+ propertyToken: '65143f755c403e030c222340',
34
+ isDevelopmentMode: true,
35
+ stopAll: false,
36
+ ...
37
+ }),
38
+ ],
39
+ providers: [],
40
+ bootstrap: [AppComponent]
41
+ })
42
+ export class AppModule { }
43
+ ```
44
+
45
+ Below is the table with all the possible options that can be configured.
46
+
47
+ | Option | Type | Description | Mandatory | Default |
48
+ |:-----------------------|:----------|:--------------------------------------------------------------------------------------------------------------------------------------------|:----------|:--------|
49
+ | `propertyToken` | `string` | [Footprint](https://footprint.bloomscorp.com) property token | ✅ | NA |
50
+ | `isDevelopmentMode` | `boolean` | if `true`, then logs data in the browser console | ✅ | NA |
51
+ | `observePageViaWebAPI` | `boolean` | if `true`, will detect page view event based on web APIs. However, if `false`, `pageViewObserver` should be used to trigger page view event | ❌ | `true` |
52
+ | `stopSimpleEvent` | `boolean` | stops only simple event tracking | ❌ | `false` |
53
+ | `stopDataEvent` | `boolean` | stops only data event tracking | ❌ | `false` |
54
+ | `stopPageViewEvent` | `boolean` | stops only page view event tracking | ❌ | `false` |
55
+ | `stopAll` | `boolean` | stops all event tracking | ❌ | `false` |
56
+ | `logOnly` | `boolean` | tracks event but doesn't save to database. Should be used only when `isDevelopmentMode: true` | ❌ | `false` |
57
+
58
+
59
+ ## Page View Event
60
+ To tracking website visits for your angular application just initialize `BloomsightEventService` service in `app.component.ts`.
61
+
62
+ ```ts
63
+ import {BloomsightEventService} from '@bloomscorp/ngx-bloomsight';
64
+
65
+ constructor(public bloomsightService: BloomsightEventService) { }
66
+ ```
67
+
68
+ ### Simple Event
69
+
70
+ Use the `resolveSimpleEvent` method to log simple events
71
+
72
+ ```ts
73
+ import {BloomsightEventService} from '@bloomscorp/ngx-bloomsight';
74
+
75
+ constructor(public bloomsightService: BloomsightEventService) { }
76
+
77
+ this.bloomsightService
78
+ .resolveSimpleEvent('65d735b122354c8ba6a489c2', 'Contact Us CTA button');
79
+ ```
80
+ | Option | Type | Description | Mandatory | Default |
81
+ |:-------------|:---------|:-------------------|:----------|:--------|
82
+ | `eventToken` | `string` | Id of simple event | ✅ | NA |
83
+ | `label` | `string` | a label/name for the event for future reference | ❌ | '' |
84
+
85
+
86
+ ### Data Event
87
+
88
+ Use the `resolveDataEvent` method to log data events
89
+
90
+ ```ts
91
+ import {BloomsightEventService} from '@bloomscorp/ngx-bloomsight';
92
+
93
+ constructor(public bloomsightService: BloomsightEventService) { }
94
+
95
+ this.bloomsightService.resolveDataEvent(
96
+ '66d735b122355c8ba6a456f8',
97
+ {
98
+ productId: 120,
99
+ sku: 'PROD021298'
100
+ },
101
+ 'Add to Wishlist CTA button'
102
+ );
103
+ ```
104
+ | Option | Type | Description | Mandatory | Default |
105
+ |:-------------|:---------|:-----------------------------------------|:----------|:--------|
106
+ | `eventToken` | `string` | Id of data event | ✅ | NA |
107
+ | `eventData` | `Object` | additional metadata in key, value format | ✅ | NA |
108
+ | `label` | `string` | a label/name for the event for future reference | ❌ | '' |
109
+
110
+
111
+ ### Send Email
112
+
113
+ Use `sendEmail` method to send email
114
+
115
+ ```ts
116
+ import {BloomsightMailService} from '@bloomscorp/ngx-bloomsight';
117
+
118
+ constructor(public bloomsightMailService: BloomsightMailService) { }
119
+
120
+ this.bloomsightMailService.sendEmail(
121
+ '66d735b122355c8ba6a456f8',
122
+ '63d735h822355s6ba6a4556k',
123
+ '61d895h922355b6ba6a4587a',
124
+ ...
125
+ )
126
+ ```
127
+
128
+ | Option | Type | Description | Mandatory | Default |
129
+ |:------------------|:-----------|:-------------------------------------------------------------------------------------------|:----------|:--------|
130
+ | `engineId` | `string` | Id of the engine that will be used to send email | ✅ | NA |
131
+ | `templateId` | `string` | Id of the email template that will be used as email body | ✅ | NA |
132
+ | `templateOwnerId` | `string` | Id of the user who has created the template | ✅ | NA |
133
+ | `emailMetaData` | `FormData` | attachment & variables used in the template & their respective values in key, value format | ✅ | NA |
134
+ | `onSuccess` | `function` | pass a function to trigger on successfully sending email | ✅ | NA |
135
+ | `onError` | `function` | pass a function to trigger when an error occurs | ✅ | NA |
136
+
137
+ ## License
138
+
139
+ [MIT](./LICENSE.md)
140
+
141
+
142
+ ## Support
143
+
144
144
  Report issues or feature requests [here]()
@@ -1,5 +1,5 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public-api';
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
5
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvb21zY29ycC1uZ3gtYmxvb21zaWdodC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2Jsb29tc2NvcnAvbmd4LWJsb29tc2lnaHQvc3JjL2Jsb29tc2NvcnAtbmd4LWJsb29tc2lnaHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
@@ -1,22 +1,22 @@
1
- import { Component } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class NgxBloomsightComponent {
4
- constructor() { }
5
- ngOnInit() {
6
- }
7
- }
8
- NgxBloomsightComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: NgxBloomsightComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
9
- NgxBloomsightComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: NgxBloomsightComponent, selector: "lib-ngx-bloomsight", ngImport: i0, template: `
10
- <p>
11
- ngx-bloomsight works!
12
- </p>
13
- `, isInline: true });
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: NgxBloomsightComponent, decorators: [{
15
- type: Component,
16
- args: [{ selector: 'lib-ngx-bloomsight', template: `
17
- <p>
18
- ngx-bloomsight works!
19
- </p>
20
- ` }]
21
- }], ctorParameters: function () { return []; } });
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWJsb29tc2lnaHQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmxvb21zY29ycC9uZ3gtYmxvb21zaWdodC9zcmMvbGliL25neC1ibG9vbXNpZ2h0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDOztBQVlsRCxNQUFNLE9BQU8sc0JBQXNCO0lBRWpDLGdCQUFnQixDQUFDO0lBRWpCLFFBQVE7SUFDUixDQUFDOzttSEFMVSxzQkFBc0I7dUdBQXRCLHNCQUFzQiwwREFSdkI7Ozs7R0FJVDsyRkFJVSxzQkFBc0I7a0JBVmxDLFNBQVM7K0JBQ0Usb0JBQW9CLFlBQ3BCOzs7O0dBSVQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItbmd4LWJsb29tc2lnaHQnLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8cD5cclxuICAgICAgbmd4LWJsb29tc2lnaHQgd29ya3MhXHJcbiAgICA8L3A+XHJcbiAgYCxcclxuICBzdHlsZXM6IFtcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBOZ3hCbG9vbXNpZ2h0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgfVxyXG5cclxufVxyXG4iXX0=
1
+ import { Component } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class NgxBloomsightComponent {
4
+ constructor() { }
5
+ ngOnInit() {
6
+ }
7
+ }
8
+ NgxBloomsightComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: NgxBloomsightComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
9
+ NgxBloomsightComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: NgxBloomsightComponent, selector: "lib-ngx-bloomsight", ngImport: i0, template: `
10
+ <p>
11
+ ngx-bloomsight works!
12
+ </p>
13
+ `, isInline: true });
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: NgxBloomsightComponent, decorators: [{
15
+ type: Component,
16
+ args: [{ selector: 'lib-ngx-bloomsight', template: `
17
+ <p>
18
+ ngx-bloomsight works!
19
+ </p>
20
+ ` }]
21
+ }], ctorParameters: function () { return []; } });
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWJsb29tc2lnaHQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmxvb21zY29ycC9uZ3gtYmxvb21zaWdodC9zcmMvbGliL25neC1ibG9vbXNpZ2h0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDOztBQVlsRCxNQUFNLE9BQU8sc0JBQXNCO0lBRWpDLGdCQUFnQixDQUFDO0lBRWpCLFFBQVE7SUFDUixDQUFDOzttSEFMVSxzQkFBc0I7dUdBQXRCLHNCQUFzQiwwREFSdkI7Ozs7R0FJVDsyRkFJVSxzQkFBc0I7a0JBVmxDLFNBQVM7K0JBQ0Usb0JBQW9CLFlBQ3BCOzs7O0dBSVQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItbmd4LWJsb29tc2lnaHQnLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxwPlxuICAgICAgbmd4LWJsb29tc2lnaHQgd29ya3MhXG4gICAgPC9wPlxuICBgLFxuICBzdHlsZXM6IFtcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBOZ3hCbG9vbXNpZ2h0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICB9XG5cbn1cbiJdfQ==
@@ -1,33 +1,33 @@
1
- import { NgModule } from '@angular/core';
2
- import { NgxBloomsightComponent } from './ngx-bloomsight.component';
3
- import { BloomsightEventService } from './service/bloomsight-event.service';
4
- import { BloomsightMailService } from './service/bloomsight-mail.service';
5
- import * as i0 from "@angular/core";
6
- export class NgxBloomsightModule {
7
- static forRoot(bloomsightConfig) {
8
- return {
9
- ngModule: NgxBloomsightModule,
10
- providers: [
11
- BloomsightEventService,
12
- BloomsightMailService,
13
- { provide: 'bloomsightConfig', useValue: bloomsightConfig }
14
- ]
15
- };
16
- }
17
- }
18
- NgxBloomsightModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: NgxBloomsightModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
19
- NgxBloomsightModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: NgxBloomsightModule, declarations: [NgxBloomsightComponent], exports: [NgxBloomsightComponent] });
20
- NgxBloomsightModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: NgxBloomsightModule });
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: NgxBloomsightModule, decorators: [{
22
- type: NgModule,
23
- args: [{
24
- declarations: [
25
- NgxBloomsightComponent
26
- ],
27
- imports: [],
28
- exports: [
29
- NgxBloomsightComponent
30
- ]
31
- }]
32
- }] });
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWJsb29tc2lnaHQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmxvb21zY29ycC9uZ3gtYmxvb21zaWdodC9zcmMvbGliL25neC1ibG9vbXNpZ2h0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXNCLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM1RCxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRSxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUUxRSxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQzs7QUFjeEUsTUFBTSxPQUFPLG1CQUFtQjtJQUU1QixNQUFNLENBQUMsT0FBTyxDQUFDLGdCQUF5QjtRQUVwQyxPQUFPO1lBQ0gsUUFBUSxFQUFFLG1CQUFtQjtZQUM3QixTQUFTLEVBQUU7Z0JBQ1Asc0JBQXNCO2dCQUN0QixxQkFBcUI7Z0JBQ3JCLEVBQUMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFFBQVEsRUFBRSxnQkFBZ0IsRUFBQzthQUM1RDtTQUNKLENBQUM7SUFDTixDQUFDOztnSEFaUSxtQkFBbUI7aUhBQW5CLG1CQUFtQixpQkFSeEIsc0JBQXNCLGFBS3RCLHNCQUFzQjtpSEFHakIsbUJBQW1COzJGQUFuQixtQkFBbUI7a0JBVi9CLFFBQVE7bUJBQUM7b0JBQ04sWUFBWSxFQUFFO3dCQUNWLHNCQUFzQjtxQkFDekI7b0JBQ0QsT0FBTyxFQUFFLEVBQ1I7b0JBQ0QsT0FBTyxFQUFFO3dCQUNMLHNCQUFzQjtxQkFDekI7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge01vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtOZ3hCbG9vbXNpZ2h0Q29tcG9uZW50fSBmcm9tICcuL25neC1ibG9vbXNpZ2h0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7Qmxvb21zaWdodEV2ZW50U2VydmljZX0gZnJvbSAnLi9zZXJ2aWNlL2Jsb29tc2lnaHQtZXZlbnQuc2VydmljZSc7XHJcbmltcG9ydCB7SUNvbmZpZ30gZnJvbSAnQGJsb29tc2NvcnAvYmxvb21zaWdodC5qcy9kaXN0L2NvbmZpZ3VyYXRpb24vaW50ZXJmYWNlL2NvbmZpZyc7XHJcbmltcG9ydCB7Qmxvb21zaWdodE1haWxTZXJ2aWNlfSBmcm9tICcuL3NlcnZpY2UvYmxvb21zaWdodC1tYWlsLnNlcnZpY2UnO1xyXG5cclxuXHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICAgICAgTmd4Qmxvb21zaWdodENvbXBvbmVudFxyXG4gICAgXSxcclxuICAgIGltcG9ydHM6IFtcclxuICAgIF0sXHJcbiAgICBleHBvcnRzOiBbXHJcbiAgICAgICAgTmd4Qmxvb21zaWdodENvbXBvbmVudFxyXG4gICAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTmd4Qmxvb21zaWdodE1vZHVsZSB7XHJcbiAgICBcclxuICAgIHN0YXRpYyBmb3JSb290KGJsb29tc2lnaHRDb25maWc6IElDb25maWcpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPE5neEJsb29tc2lnaHRNb2R1bGU+IHtcclxuXHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgbmdNb2R1bGU6IE5neEJsb29tc2lnaHRNb2R1bGUsXHJcbiAgICAgICAgICAgIHByb3ZpZGVyczogW1xyXG4gICAgICAgICAgICAgICAgQmxvb21zaWdodEV2ZW50U2VydmljZSwgXHJcbiAgICAgICAgICAgICAgICBCbG9vbXNpZ2h0TWFpbFNlcnZpY2UsIFxyXG4gICAgICAgICAgICAgICAge3Byb3ZpZGU6ICdibG9vbXNpZ2h0Q29uZmlnJywgdXNlVmFsdWU6IGJsb29tc2lnaHRDb25maWd9XHJcbiAgICAgICAgICAgIF1cclxuICAgICAgICB9O1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
1
+ import { NgModule } from '@angular/core';
2
+ import { NgxBloomsightComponent } from './ngx-bloomsight.component';
3
+ import { BloomsightEventService } from './service/bloomsight-event.service';
4
+ import { BloomsightMailService } from './service/bloomsight-mail.service';
5
+ import * as i0 from "@angular/core";
6
+ export class NgxBloomsightModule {
7
+ static forRoot(bloomsightConfig) {
8
+ return {
9
+ ngModule: NgxBloomsightModule,
10
+ providers: [
11
+ BloomsightEventService,
12
+ BloomsightMailService,
13
+ { provide: 'bloomsightConfig', useValue: bloomsightConfig }
14
+ ]
15
+ };
16
+ }
17
+ }
18
+ NgxBloomsightModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: NgxBloomsightModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
19
+ NgxBloomsightModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.3.0", ngImport: i0, type: NgxBloomsightModule, declarations: [NgxBloomsightComponent], exports: [NgxBloomsightComponent] });
20
+ NgxBloomsightModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: NgxBloomsightModule });
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: NgxBloomsightModule, decorators: [{
22
+ type: NgModule,
23
+ args: [{
24
+ declarations: [
25
+ NgxBloomsightComponent
26
+ ],
27
+ imports: [],
28
+ exports: [
29
+ NgxBloomsightComponent
30
+ ]
31
+ }]
32
+ }] });
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWJsb29tc2lnaHQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmxvb21zY29ycC9uZ3gtYmxvb21zaWdodC9zcmMvbGliL25neC1ibG9vbXNpZ2h0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXNCLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM1RCxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUNsRSxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSxvQ0FBb0MsQ0FBQztBQUUxRSxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQzs7QUFjeEUsTUFBTSxPQUFPLG1CQUFtQjtJQUU1QixNQUFNLENBQUMsT0FBTyxDQUFDLGdCQUF5QjtRQUVwQyxPQUFPO1lBQ0gsUUFBUSxFQUFFLG1CQUFtQjtZQUM3QixTQUFTLEVBQUU7Z0JBQ1Asc0JBQXNCO2dCQUN0QixxQkFBcUI7Z0JBQ3JCLEVBQUMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFFBQVEsRUFBRSxnQkFBZ0IsRUFBQzthQUM1RDtTQUNKLENBQUM7SUFDTixDQUFDOztnSEFaUSxtQkFBbUI7aUhBQW5CLG1CQUFtQixpQkFSeEIsc0JBQXNCLGFBS3RCLHNCQUFzQjtpSEFHakIsbUJBQW1COzJGQUFuQixtQkFBbUI7a0JBVi9CLFFBQVE7bUJBQUM7b0JBQ04sWUFBWSxFQUFFO3dCQUNWLHNCQUFzQjtxQkFDekI7b0JBQ0QsT0FBTyxFQUFFLEVBQ1I7b0JBQ0QsT0FBTyxFQUFFO3dCQUNMLHNCQUFzQjtxQkFDekI7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge01vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Tmd4Qmxvb21zaWdodENvbXBvbmVudH0gZnJvbSAnLi9uZ3gtYmxvb21zaWdodC5jb21wb25lbnQnO1xuaW1wb3J0IHtCbG9vbXNpZ2h0RXZlbnRTZXJ2aWNlfSBmcm9tICcuL3NlcnZpY2UvYmxvb21zaWdodC1ldmVudC5zZXJ2aWNlJztcbmltcG9ydCB7SUNvbmZpZ30gZnJvbSAnQGJsb29tc2NvcnAvYmxvb21zaWdodC5qcy9kaXN0L2NvbmZpZ3VyYXRpb24vaW50ZXJmYWNlL2NvbmZpZyc7XG5pbXBvcnQge0Jsb29tc2lnaHRNYWlsU2VydmljZX0gZnJvbSAnLi9zZXJ2aWNlL2Jsb29tc2lnaHQtbWFpbC5zZXJ2aWNlJztcblxuXG5cbkBOZ01vZHVsZSh7XG4gICAgZGVjbGFyYXRpb25zOiBbXG4gICAgICAgIE5neEJsb29tc2lnaHRDb21wb25lbnRcbiAgICBdLFxuICAgIGltcG9ydHM6IFtcbiAgICBdLFxuICAgIGV4cG9ydHM6IFtcbiAgICAgICAgTmd4Qmxvb21zaWdodENvbXBvbmVudFxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgTmd4Qmxvb21zaWdodE1vZHVsZSB7XG4gICAgXG4gICAgc3RhdGljIGZvclJvb3QoYmxvb21zaWdodENvbmZpZzogSUNvbmZpZyk6IE1vZHVsZVdpdGhQcm92aWRlcnM8Tmd4Qmxvb21zaWdodE1vZHVsZT4ge1xuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBuZ01vZHVsZTogTmd4Qmxvb21zaWdodE1vZHVsZSxcbiAgICAgICAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICAgICAgICAgIEJsb29tc2lnaHRFdmVudFNlcnZpY2UsIFxuICAgICAgICAgICAgICAgIEJsb29tc2lnaHRNYWlsU2VydmljZSwgXG4gICAgICAgICAgICAgICAge3Byb3ZpZGU6ICdibG9vbXNpZ2h0Q29uZmlnJywgdXNlVmFsdWU6IGJsb29tc2lnaHRDb25maWd9XG4gICAgICAgICAgICBdXG4gICAgICAgIH07XG4gICAgfVxufVxuIl19
@@ -1,14 +1,14 @@
1
- import { Injectable } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class NgxBloomsightService {
4
- constructor() { }
5
- }
6
- NgxBloomsightService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: NgxBloomsightService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
7
- NgxBloomsightService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: NgxBloomsightService, providedIn: 'root' });
8
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: NgxBloomsightService, decorators: [{
9
- type: Injectable,
10
- args: [{
11
- providedIn: 'root'
12
- }]
13
- }], ctorParameters: function () { return []; } });
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWJsb29tc2lnaHQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Jsb29tc2NvcnAvbmd4LWJsb29tc2lnaHQvc3JjL2xpYi9uZ3gtYmxvb21zaWdodC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSzNDLE1BQU0sT0FBTyxvQkFBb0I7SUFFL0IsZ0JBQWdCLENBQUM7O2lIQUZOLG9CQUFvQjtxSEFBcEIsb0JBQW9CLGNBRm5CLE1BQU07MkZBRVAsb0JBQW9CO2tCQUhoQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIE5neEJsb29tc2lnaHRTZXJ2aWNlIHtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxufVxyXG4iXX0=
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class NgxBloomsightService {
4
+ constructor() { }
5
+ }
6
+ NgxBloomsightService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: NgxBloomsightService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
7
+ NgxBloomsightService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: NgxBloomsightService, providedIn: 'root' });
8
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: NgxBloomsightService, decorators: [{
9
+ type: Injectable,
10
+ args: [{
11
+ providedIn: 'root'
12
+ }]
13
+ }], ctorParameters: function () { return []; } });
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWJsb29tc2lnaHQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Jsb29tc2NvcnAvbmd4LWJsb29tc2lnaHQvc3JjL2xpYi9uZ3gtYmxvb21zaWdodC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSzNDLE1BQU0sT0FBTyxvQkFBb0I7SUFFL0IsZ0JBQWdCLENBQUM7O2lIQUZOLG9CQUFvQjtxSEFBcEIsb0JBQW9CLGNBRm5CLE1BQU07MkZBRVAsb0JBQW9CO2tCQUhoQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgTmd4Qmxvb21zaWdodFNlcnZpY2Uge1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG59XG4iXX0=
@@ -1,45 +1,45 @@
1
- import { Inject, Injectable } from '@angular/core';
2
- import { init } from '@bloomscorp/bloomsight.js';
3
- import { pageViewObserver as pageView } from '@bloomscorp/bloomsight.js';
4
- import { NavigationEnd } from '@angular/router';
5
- import { resolveSimpleEvent as simpleEvent } from '@bloomscorp/bloomsight.js';
6
- import { resolveDataEvent as dataEvent } from '@bloomscorp/bloomsight.js';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "@angular/router";
9
- export class BloomsightEventService {
10
- constructor(_config, _router) {
11
- this._config = _config;
12
- this._router = _router;
13
- this._previousUrl = '';
14
- this.init();
15
- this.pageViewObserver();
16
- }
17
- init() {
18
- init(this._config);
19
- }
20
- pageViewObserver() {
21
- this._router.events.subscribe(event => {
22
- if (event instanceof NavigationEnd) {
23
- if (this._previousUrl !== event.url) {
24
- pageView();
25
- }
26
- this._previousUrl = event.url;
27
- }
28
- });
29
- }
30
- resolveSimpleEvent(eventToken, label = '') {
31
- simpleEvent(eventToken, label);
32
- }
33
- resolveDataEvent(eventToken, eventData, label = '') {
34
- dataEvent(eventToken, eventData, label);
35
- }
36
- }
37
- BloomsightEventService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: BloomsightEventService, deps: [{ token: 'bloomsightConfig' }, { token: i1.Router }], target: i0.ɵɵFactoryTarget.Injectable });
38
- BloomsightEventService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: BloomsightEventService });
39
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: BloomsightEventService, decorators: [{
40
- type: Injectable
41
- }], ctorParameters: function () { return [{ type: undefined, decorators: [{
42
- type: Inject,
43
- args: ['bloomsightConfig']
44
- }] }, { type: i1.Router }]; } });
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvb21zaWdodC1ldmVudC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmxvb21zY29ycC9uZ3gtYmxvb21zaWdodC9zcmMvbGliL3NlcnZpY2UvYmxvb21zaWdodC1ldmVudC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxNQUFNLEVBQUUsVUFBVSxFQUFvQixNQUFNLGVBQWUsQ0FBQztBQUNwRSxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDL0MsT0FBTyxFQUFDLGdCQUFnQixJQUFJLFFBQVEsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ3ZFLE9BQU8sRUFBQyxhQUFhLEVBQVMsTUFBTSxpQkFBaUIsQ0FBQztBQUV0RCxPQUFPLEVBQUMsa0JBQWtCLElBQUksV0FBVyxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDNUUsT0FBTyxFQUFDLGdCQUFnQixJQUFJLFNBQVMsRUFBQyxNQUFNLDJCQUEyQixDQUFDOzs7QUFNeEUsTUFBTSxPQUFPLHNCQUFzQjtJQVEvQixZQUN3QyxPQUFnQixFQUM1QyxPQUFlO1FBRGEsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQUM1QyxZQUFPLEdBQVAsT0FBTyxDQUFRO1FBUm5CLGlCQUFZLEdBQVcsRUFBRSxDQUFDO1FBVTlCLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNaLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFWRCxJQUFJO1FBQ0EsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN2QixDQUFDO0lBVU0sZ0JBQWdCO1FBRW5CLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNsQyxJQUFJLEtBQUssWUFBWSxhQUFhLEVBQUU7Z0JBRWhDLElBQUksSUFBSSxDQUFDLFlBQVksS0FBSyxLQUFLLENBQUMsR0FBRyxFQUFFO29CQUNqQyxRQUFRLEVBQUUsQ0FBQztpQkFDZDtnQkFFRCxJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUM7YUFDakM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFHTSxrQkFBa0IsQ0FBQyxVQUFrQixFQUFFLFFBQWdCLEVBQUU7UUFDNUQsV0FBVyxDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRU0sZ0JBQWdCLENBQ25CLFVBQWtCLEVBQ2xCLFNBQStCLEVBQy9CLFFBQWdCLEVBQUU7UUFFbEIsU0FBUyxDQUFDLFVBQVUsRUFBRSxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDNUMsQ0FBQzs7bUhBekNRLHNCQUFzQixrQkFTbkIsa0JBQWtCO3VIQVRyQixzQkFBc0I7MkZBQXRCLHNCQUFzQjtrQkFEbEMsVUFBVTs7MEJBVUYsTUFBTTsyQkFBQyxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdCwgSW5qZWN0YWJsZSwgT25EZXN0cm95LCBPbkluaXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge2luaXR9IGZyb20gJ0BibG9vbXNjb3JwL2Jsb29tc2lnaHQuanMnO1xyXG5pbXBvcnQge3BhZ2VWaWV3T2JzZXJ2ZXIgYXMgcGFnZVZpZXd9IGZyb20gJ0BibG9vbXNjb3JwL2Jsb29tc2lnaHQuanMnO1xyXG5pbXBvcnQge05hdmlnYXRpb25FbmQsIFJvdXRlcn0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHtJQ29uZmlnfSBmcm9tICdAYmxvb21zY29ycC9ibG9vbXNpZ2h0LmpzL2Rpc3QvY29uZmlndXJhdGlvbi9pbnRlcmZhY2UvY29uZmlnJztcclxuaW1wb3J0IHtyZXNvbHZlU2ltcGxlRXZlbnQgYXMgc2ltcGxlRXZlbnR9IGZyb20gJ0BibG9vbXNjb3JwL2Jsb29tc2lnaHQuanMnO1xyXG5pbXBvcnQge3Jlc29sdmVEYXRhRXZlbnQgYXMgZGF0YUV2ZW50fSBmcm9tICdAYmxvb21zY29ycC9ibG9vbXNpZ2h0LmpzJztcclxuaW1wb3J0IHtzZW5kRW1haWwgYXMgbWFpbH0gZnJvbSAnQGJsb29tc2NvcnAvYmxvb21zaWdodC5qcyc7XHJcbmltcG9ydCB7ZmlsdGVyLCB0YWtlfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIEJsb29tc2lnaHRFdmVudFNlcnZpY2Uge1xyXG5cclxuICAgIHByaXZhdGUgX3ByZXZpb3VzVXJsOiBzdHJpbmcgPSAnJztcclxuXHJcbiAgICBpbml0KCkge1xyXG4gICAgICAgIGluaXQodGhpcy5fY29uZmlnKTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBASW5qZWN0KCdibG9vbXNpZ2h0Q29uZmlnJykgcHJpdmF0ZSBfY29uZmlnOiBJQ29uZmlnLFxyXG4gICAgICAgIHByaXZhdGUgX3JvdXRlcjogUm91dGVyXHJcbiAgICApIHtcclxuICAgICAgICB0aGlzLmluaXQoKTtcclxuICAgICAgICB0aGlzLnBhZ2VWaWV3T2JzZXJ2ZXIoKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgcGFnZVZpZXdPYnNlcnZlcigpOiB2b2lkIHtcclxuICAgICAgICBcclxuICAgICAgICB0aGlzLl9yb3V0ZXIuZXZlbnRzLnN1YnNjcmliZShldmVudCA9PiB7XHJcbiAgICAgICAgICAgIGlmIChldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpIHtcclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuX3ByZXZpb3VzVXJsICE9PSBldmVudC51cmwpIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWdlVmlldygpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIHRoaXMuX3ByZXZpb3VzVXJsID0gZXZlbnQudXJsO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIHB1YmxpYyByZXNvbHZlU2ltcGxlRXZlbnQoZXZlbnRUb2tlbjogc3RyaW5nLCBsYWJlbDogc3RyaW5nID0gJycpOiB2b2lkIHtcclxuICAgICAgICBzaW1wbGVFdmVudChldmVudFRva2VuLCBsYWJlbCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHJlc29sdmVEYXRhRXZlbnQoXHJcbiAgICAgICAgZXZlbnRUb2tlbjogc3RyaW5nLCBcclxuICAgICAgICBldmVudERhdGE6IHtba2V5OiBzdHJpbmddOiBhbnl9LFxyXG4gICAgICAgIGxhYmVsOiBzdHJpbmcgPSAnJ1xyXG4gICAgKTogdm9pZCB7XHJcbiAgICAgICAgZGF0YUV2ZW50KGV2ZW50VG9rZW4sIGV2ZW50RGF0YSwgbGFiZWwpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
1
+ import { Inject, Injectable } from '@angular/core';
2
+ import { init } from '@bloomscorp/bloomsight.js';
3
+ import { pageViewObserver as pageView } from '@bloomscorp/bloomsight.js';
4
+ import { NavigationEnd } from '@angular/router';
5
+ import { resolveSimpleEvent as simpleEvent } from '@bloomscorp/bloomsight.js';
6
+ import { resolveDataEvent as dataEvent } from '@bloomscorp/bloomsight.js';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "@angular/router";
9
+ export class BloomsightEventService {
10
+ constructor(_config, _router) {
11
+ this._config = _config;
12
+ this._router = _router;
13
+ this._previousUrl = '';
14
+ this.init();
15
+ this.pageViewObserver();
16
+ }
17
+ init() {
18
+ init(this._config);
19
+ }
20
+ pageViewObserver() {
21
+ this._router.events.subscribe(event => {
22
+ if (event instanceof NavigationEnd) {
23
+ if (this._previousUrl !== event.url) {
24
+ pageView();
25
+ }
26
+ this._previousUrl = event.url;
27
+ }
28
+ });
29
+ }
30
+ resolveSimpleEvent(eventToken, label = '') {
31
+ simpleEvent(eventToken, label);
32
+ }
33
+ resolveDataEvent(eventToken, eventData, label = '') {
34
+ dataEvent(eventToken, eventData, label);
35
+ }
36
+ }
37
+ BloomsightEventService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: BloomsightEventService, deps: [{ token: 'bloomsightConfig' }, { token: i1.Router }], target: i0.ɵɵFactoryTarget.Injectable });
38
+ BloomsightEventService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: BloomsightEventService });
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: BloomsightEventService, decorators: [{
40
+ type: Injectable
41
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
42
+ type: Inject,
43
+ args: ['bloomsightConfig']
44
+ }] }, { type: i1.Router }]; } });
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvb21zaWdodC1ldmVudC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmxvb21zY29ycC9uZ3gtYmxvb21zaWdodC9zcmMvbGliL3NlcnZpY2UvYmxvb21zaWdodC1ldmVudC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxNQUFNLEVBQUUsVUFBVSxFQUFvQixNQUFNLGVBQWUsQ0FBQztBQUNwRSxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDL0MsT0FBTyxFQUFDLGdCQUFnQixJQUFJLFFBQVEsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ3ZFLE9BQU8sRUFBQyxhQUFhLEVBQVMsTUFBTSxpQkFBaUIsQ0FBQztBQUV0RCxPQUFPLEVBQUMsa0JBQWtCLElBQUksV0FBVyxFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDNUUsT0FBTyxFQUFDLGdCQUFnQixJQUFJLFNBQVMsRUFBQyxNQUFNLDJCQUEyQixDQUFDOzs7QUFNeEUsTUFBTSxPQUFPLHNCQUFzQjtJQVEvQixZQUN3QyxPQUFnQixFQUM1QyxPQUFlO1FBRGEsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQUM1QyxZQUFPLEdBQVAsT0FBTyxDQUFRO1FBUm5CLGlCQUFZLEdBQVcsRUFBRSxDQUFDO1FBVTlCLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNaLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFWRCxJQUFJO1FBQ0EsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN2QixDQUFDO0lBVU0sZ0JBQWdCO1FBRW5CLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNsQyxJQUFJLEtBQUssWUFBWSxhQUFhLEVBQUU7Z0JBRWhDLElBQUksSUFBSSxDQUFDLFlBQVksS0FBSyxLQUFLLENBQUMsR0FBRyxFQUFFO29CQUNqQyxRQUFRLEVBQUUsQ0FBQztpQkFDZDtnQkFFRCxJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUM7YUFDakM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFHTSxrQkFBa0IsQ0FBQyxVQUFrQixFQUFFLFFBQWdCLEVBQUU7UUFDNUQsV0FBVyxDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRU0sZ0JBQWdCLENBQ25CLFVBQWtCLEVBQ2xCLFNBQStCLEVBQy9CLFFBQWdCLEVBQUU7UUFFbEIsU0FBUyxDQUFDLFVBQVUsRUFBRSxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDNUMsQ0FBQzs7bUhBekNRLHNCQUFzQixrQkFTbkIsa0JBQWtCO3VIQVRyQixzQkFBc0I7MkZBQXRCLHNCQUFzQjtrQkFEbEMsVUFBVTs7MEJBVUYsTUFBTTsyQkFBQyxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdCwgSW5qZWN0YWJsZSwgT25EZXN0cm95LCBPbkluaXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtpbml0fSBmcm9tICdAYmxvb21zY29ycC9ibG9vbXNpZ2h0LmpzJztcbmltcG9ydCB7cGFnZVZpZXdPYnNlcnZlciBhcyBwYWdlVmlld30gZnJvbSAnQGJsb29tc2NvcnAvYmxvb21zaWdodC5qcyc7XG5pbXBvcnQge05hdmlnYXRpb25FbmQsIFJvdXRlcn0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7SUNvbmZpZ30gZnJvbSAnQGJsb29tc2NvcnAvYmxvb21zaWdodC5qcy9kaXN0L2NvbmZpZ3VyYXRpb24vaW50ZXJmYWNlL2NvbmZpZyc7XG5pbXBvcnQge3Jlc29sdmVTaW1wbGVFdmVudCBhcyBzaW1wbGVFdmVudH0gZnJvbSAnQGJsb29tc2NvcnAvYmxvb21zaWdodC5qcyc7XG5pbXBvcnQge3Jlc29sdmVEYXRhRXZlbnQgYXMgZGF0YUV2ZW50fSBmcm9tICdAYmxvb21zY29ycC9ibG9vbXNpZ2h0LmpzJztcbmltcG9ydCB7c2VuZEVtYWlsIGFzIG1haWx9IGZyb20gJ0BibG9vbXNjb3JwL2Jsb29tc2lnaHQuanMnO1xuaW1wb3J0IHtmaWx0ZXIsIHRha2V9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEJsb29tc2lnaHRFdmVudFNlcnZpY2Uge1xuXG4gICAgcHJpdmF0ZSBfcHJldmlvdXNVcmw6IHN0cmluZyA9ICcnO1xuXG4gICAgaW5pdCgpIHtcbiAgICAgICAgaW5pdCh0aGlzLl9jb25maWcpO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBASW5qZWN0KCdibG9vbXNpZ2h0Q29uZmlnJykgcHJpdmF0ZSBfY29uZmlnOiBJQ29uZmlnLFxuICAgICAgICBwcml2YXRlIF9yb3V0ZXI6IFJvdXRlclxuICAgICkge1xuICAgICAgICB0aGlzLmluaXQoKTtcbiAgICAgICAgdGhpcy5wYWdlVmlld09ic2VydmVyKCk7XG4gICAgfVxuXG4gICAgcHVibGljIHBhZ2VWaWV3T2JzZXJ2ZXIoKTogdm9pZCB7XG4gICAgICAgIFxuICAgICAgICB0aGlzLl9yb3V0ZXIuZXZlbnRzLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICAgICAgICBpZiAoZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSB7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuX3ByZXZpb3VzVXJsICE9PSBldmVudC51cmwpIHtcbiAgICAgICAgICAgICAgICAgICAgcGFnZVZpZXcoKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB0aGlzLl9wcmV2aW91c1VybCA9IGV2ZW50LnVybDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG5cbiAgICBwdWJsaWMgcmVzb2x2ZVNpbXBsZUV2ZW50KGV2ZW50VG9rZW46IHN0cmluZywgbGFiZWw6IHN0cmluZyA9ICcnKTogdm9pZCB7XG4gICAgICAgIHNpbXBsZUV2ZW50KGV2ZW50VG9rZW4sIGxhYmVsKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVzb2x2ZURhdGFFdmVudChcbiAgICAgICAgZXZlbnRUb2tlbjogc3RyaW5nLCBcbiAgICAgICAgZXZlbnREYXRhOiB7W2tleTogc3RyaW5nXTogYW55fSxcbiAgICAgICAgbGFiZWw6IHN0cmluZyA9ICcnXG4gICAgKTogdm9pZCB7XG4gICAgICAgIGRhdGFFdmVudChldmVudFRva2VuLCBldmVudERhdGEsIGxhYmVsKTtcbiAgICB9XG59XG4iXX0=