@dsivd/prestations-ng 17.9.1-beta.2 → 17.9.1
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/CHANGELOG.md +4 -0
- package/UPGRADING_V17.md +2 -0
- package/dsivd-prestations-ng-17.9.1.tgz +0 -0
- package/esm2022/sdk-statistics/sdk-statistics.service.mjs +31 -27
- package/fesm2022/dsivd-prestations-ng.mjs +30 -26
- package/fesm2022/dsivd-prestations-ng.mjs.map +1 -1
- package/package.json +1 -1
- package/sdk-statistics/sdk-statistics.service.d.ts +4 -2
- package/dsivd-prestations-ng-17.9.1-beta.2.tgz +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -17,8 +17,12 @@
|
|
|
17
17
|
### Fixed
|
|
18
18
|
|
|
19
19
|
- [foehn-input-address.component.ts](projects/prestations-ng/src/foehn-address/foehn-input-address.component.ts)
|
|
20
|
+
|
|
20
21
|
- fixed foreign address creating an empty `Locality` for error purpose. Not needed anymore when using prestations-be 17.9.1
|
|
21
22
|
|
|
23
|
+
- [sdk-statistics.service.ts](projects/prestations-ng/src/sdk-statistics/sdk-statistics.service.ts)
|
|
24
|
+
- fix UI freezing when heatmap is enabled in Matomo
|
|
25
|
+
|
|
22
26
|
## [17.9.0] - should be aligned with prestations-be 17.9.0
|
|
23
27
|
|
|
24
28
|
## [17.8.2]
|
package/UPGRADING_V17.md
CHANGED
|
@@ -297,6 +297,8 @@ and your `angular.json` (/projects/{nom-du-projet}/architect/build/options/style
|
|
|
297
297
|
],
|
|
298
298
|
```
|
|
299
299
|
|
|
300
|
+
> If your application uses the BoCommonWebMvcConfig configuration class and your frontend is made using Angular, use SinglePageAppConfig configuration class instead.
|
|
301
|
+
|
|
300
302
|
### gesdem-action-recovery-registration
|
|
301
303
|
|
|
302
304
|
If you use the `<gesdem-action-recovery-registration>` component in a page which includes some `<foehn-error-pill>` or `<foehn-menu-item>` (i.e. e-vaudtax, pocama, any form with a menu)
|
|
Binary file
|
|
@@ -6,35 +6,15 @@ import * as i1 from "@angular/router";
|
|
|
6
6
|
import * as i2 from "../sdk-appinfo/application-info.service";
|
|
7
7
|
import * as i3 from "../foehn-page/foehn-page.service";
|
|
8
8
|
export class SdkStatisticsService {
|
|
9
|
-
constructor(router, applicationInfoService, foehnPageService) {
|
|
9
|
+
constructor(router, applicationInfoService, foehnPageService, ngZone) {
|
|
10
10
|
this.router = router;
|
|
11
11
|
this.applicationInfoService = applicationInfoService;
|
|
12
12
|
this.foehnPageService = foehnPageService;
|
|
13
|
+
this.ngZone = ngZone;
|
|
13
14
|
this._router = router;
|
|
14
15
|
this._applicationInfoService = applicationInfoService;
|
|
15
16
|
this._foehnPageService = foehnPageService;
|
|
16
17
|
}
|
|
17
|
-
static send(matomoUrl, matomoSiteId) {
|
|
18
|
-
const s = document.getElementsByTagName('script')[0];
|
|
19
|
-
const sSrc = s.getAttribute('src');
|
|
20
|
-
// Remove the script added before
|
|
21
|
-
if (sSrc === `${matomoUrl}matomo.js`) {
|
|
22
|
-
s.remove();
|
|
23
|
-
}
|
|
24
|
-
// Set variables
|
|
25
|
-
const _paq = (window._paq = window._paq || []);
|
|
26
|
-
_paq.push(['setCustomUrl', location.pathname]);
|
|
27
|
-
_paq.push(['trackPageView']);
|
|
28
|
-
_paq.push(['setTrackerUrl', `${matomoUrl}matomo.php`]);
|
|
29
|
-
_paq.push(['setSiteId', matomoSiteId]);
|
|
30
|
-
const dBis = document;
|
|
31
|
-
const gBis = dBis.createElement('script');
|
|
32
|
-
const sBis = dBis.getElementsByTagName('script')[0];
|
|
33
|
-
gBis.type = 'text/javascript';
|
|
34
|
-
gBis.async = true;
|
|
35
|
-
gBis.src = `${matomoUrl}matomo.js`;
|
|
36
|
-
sBis.parentNode.insertBefore(gBis, sBis);
|
|
37
|
-
}
|
|
38
18
|
track() {
|
|
39
19
|
this._applicationInfoService.data.pipe(first()).subscribe(data => {
|
|
40
20
|
// Get Matomo settings
|
|
@@ -48,17 +28,41 @@ export class SdkStatisticsService {
|
|
|
48
28
|
if (!matomoUrl.endsWith('/')) {
|
|
49
29
|
matomoUrl = `${matomoUrl}/`;
|
|
50
30
|
}
|
|
51
|
-
|
|
31
|
+
this.send(matomoUrl, matomoSiteId);
|
|
52
32
|
this._router.events
|
|
53
33
|
.pipe(filter(event => event instanceof NavigationEnd))
|
|
54
34
|
// eslint-disable-next-line rxjs/no-nested-subscribe
|
|
55
35
|
.subscribe(() => {
|
|
56
|
-
|
|
36
|
+
this.send(matomoUrl, matomoSiteId);
|
|
57
37
|
});
|
|
58
38
|
}
|
|
59
39
|
});
|
|
60
40
|
}
|
|
61
|
-
|
|
41
|
+
send(matomoUrl, matomoSiteId) {
|
|
42
|
+
// https://github.com/EmmanuelRoux/ngx-matomo-client/issues/60#issuecomment-1326492144
|
|
43
|
+
this.ngZone.runOutsideAngular(() => setTimeout(() => {
|
|
44
|
+
const s = document.getElementsByTagName('script')[0];
|
|
45
|
+
const sSrc = s.getAttribute('src');
|
|
46
|
+
// Remove the script added before
|
|
47
|
+
if (sSrc === `${matomoUrl}matomo.js`) {
|
|
48
|
+
s.remove();
|
|
49
|
+
}
|
|
50
|
+
// Set variables
|
|
51
|
+
const _paq = (window._paq = window._paq || []);
|
|
52
|
+
_paq.push(['setCustomUrl', location.pathname]);
|
|
53
|
+
_paq.push(['trackPageView']);
|
|
54
|
+
_paq.push(['setTrackerUrl', `${matomoUrl}matomo.php`]);
|
|
55
|
+
_paq.push(['setSiteId', matomoSiteId]);
|
|
56
|
+
const dBis = document;
|
|
57
|
+
const gBis = dBis.createElement('script');
|
|
58
|
+
const sBis = dBis.getElementsByTagName('script')[0];
|
|
59
|
+
gBis.type = 'text/javascript';
|
|
60
|
+
gBis.async = true;
|
|
61
|
+
gBis.src = `${matomoUrl}matomo.js`;
|
|
62
|
+
sBis.parentNode.insertBefore(gBis, sBis);
|
|
63
|
+
}, 0));
|
|
64
|
+
}
|
|
65
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SdkStatisticsService, deps: [{ token: i1.Router }, { token: i2.ApplicationInfoService }, { token: i3.FoehnPageService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
62
66
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SdkStatisticsService, providedIn: 'root' }); }
|
|
63
67
|
}
|
|
64
68
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SdkStatisticsService, decorators: [{
|
|
@@ -66,5 +70,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
66
70
|
args: [{
|
|
67
71
|
providedIn: 'root'
|
|
68
72
|
}]
|
|
69
|
-
}], ctorParameters: () => [{ type: i1.Router }, { type: i2.ApplicationInfoService }, { type: i3.FoehnPageService }] });
|
|
70
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
73
|
+
}], ctorParameters: () => [{ type: i1.Router }, { type: i2.ApplicationInfoService }, { type: i3.FoehnPageService }, { type: i0.NgZone }] });
|
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2RrLXN0YXRpc3RpY3Muc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3ByZXN0YXRpb25zLW5nL3NyYy9zZGstc3RhdGlzdGljcy9zZGstc3RhdGlzdGljcy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGFBQWEsRUFBVSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7O0FBZS9DLE1BQU0sT0FBTyxvQkFBb0I7SUFLN0IsWUFDWSxNQUFjLEVBQ2Qsc0JBQThDLEVBQzlDLGdCQUFrQyxFQUNsQyxNQUFjO1FBSGQsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7UUFDOUMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBRXRCLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDO1FBQ3RCLElBQUksQ0FBQyx1QkFBdUIsR0FBRyxzQkFBc0IsQ0FBQztRQUN0RCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsZ0JBQWdCLENBQUM7SUFDOUMsQ0FBQztJQUVELEtBQUs7UUFDRCxJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUM3RCxzQkFBc0I7WUFDdEIsSUFDSSxXQUFXLElBQUksSUFBSSxDQUFDLGFBQWE7Z0JBQ2pDLGNBQWMsSUFBSSxJQUFJLENBQUMsYUFBYTtnQkFDcEMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUztnQkFDOUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxFQUNuQyxDQUFDO2dCQUNDLElBQUksU0FBUyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDO2dCQUM3QyxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQztnQkFFckQsNENBQTRDO2dCQUM1QyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO29CQUMzQixTQUFTLEdBQUcsR0FBRyxTQUFTLEdBQUcsQ0FBQztnQkFDaEMsQ0FBQztnQkFFRCxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxZQUFZLENBQUMsQ0FBQztnQkFFbkMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNO3FCQUNkLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLFlBQVksYUFBYSxDQUFDLENBQUM7b0JBQ3RELG9EQUFvRDtxQkFDbkQsU0FBUyxDQUFDLEdBQUcsRUFBRTtvQkFDWixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxZQUFZLENBQUMsQ0FBQztnQkFDdkMsQ0FBQyxDQUFDLENBQUM7WUFDWCxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU8sSUFBSSxDQUFDLFNBQWlCLEVBQUUsWUFBb0I7UUFDaEQsc0ZBQXNGO1FBQ3RGLElBQUksQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsR0FBRyxFQUFFLENBQy9CLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDWixNQUFNLENBQUMsR0FBRyxRQUFRLENBQUMsb0JBQW9CLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDckQsTUFBTSxJQUFJLEdBQUcsQ0FBQyxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUVuQyxpQ0FBaUM7WUFDakMsSUFBSSxJQUFJLEtBQUssR0FBRyxTQUFTLFdBQVcsRUFBRSxDQUFDO2dCQUNuQyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDZixDQUFDO1lBRUQsZ0JBQWdCO1lBQ2hCLE1BQU0sSUFBSSxHQUFHLENBQUMsTUFBTSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQy9DLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxjQUFjLEVBQUUsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7WUFDL0MsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUM7WUFFN0IsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLGVBQWUsRUFBRSxHQUFHLFNBQVMsWUFBWSxDQUFDLENBQUMsQ0FBQztZQUN2RCxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsV0FBVyxFQUFFLFlBQVksQ0FBQyxDQUFDLENBQUM7WUFDdkMsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDO1lBQ3RCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDMUMsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3BELElBQUksQ0FBQyxJQUFJLEdBQUcsaUJBQWlCLENBQUM7WUFDOUIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7WUFDbEIsSUFBSSxDQUFDLEdBQUcsR0FBRyxHQUFHLFNBQVMsV0FBVyxDQUFDO1lBQ25DLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUM3QyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQ1IsQ0FBQztJQUNOLENBQUM7K0dBekVRLG9CQUFvQjttSEFBcEIsb0JBQW9CLGNBRmpCLE1BQU07OzRGQUVULG9CQUFvQjtrQkFIaEMsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBOZ1pvbmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5hdmlnYXRpb25FbmQsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBmaWx0ZXIsIGZpcnN0IH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBGb2VoblBhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vZm9laG4tcGFnZS9mb2Vobi1wYWdlLnNlcnZpY2UnO1xuaW1wb3J0IHsgQXBwbGljYXRpb25JbmZvU2VydmljZSB9IGZyb20gJy4uL3Nkay1hcHBpbmZvL2FwcGxpY2F0aW9uLWluZm8uc2VydmljZSc7XG5cbmRlY2xhcmUgZ2xvYmFsIHtcbiAgICBpbnRlcmZhY2UgV2luZG93IHtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICAgICAgX3BhcTogYW55O1xuICAgIH1cbn1cblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBTZGtTdGF0aXN0aWNzU2VydmljZSB7XG4gICAgcHJpdmF0ZSBfcm91dGVyOiBSb3V0ZXI7XG4gICAgcHJpdmF0ZSBfYXBwbGljYXRpb25JbmZvU2VydmljZTogQXBwbGljYXRpb25JbmZvU2VydmljZTtcbiAgICBwcml2YXRlIF9mb2VoblBhZ2VTZXJ2aWNlOiBGb2VoblBhZ2VTZXJ2aWNlO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgICAgIHByaXZhdGUgYXBwbGljYXRpb25JbmZvU2VydmljZTogQXBwbGljYXRpb25JbmZvU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBmb2VoblBhZ2VTZXJ2aWNlOiBGb2VoblBhZ2VTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIG5nWm9uZTogTmdab25lXG4gICAgKSB7XG4gICAgICAgIHRoaXMuX3JvdXRlciA9IHJvdXRlcjtcbiAgICAgICAgdGhpcy5fYXBwbGljYXRpb25JbmZvU2VydmljZSA9IGFwcGxpY2F0aW9uSW5mb1NlcnZpY2U7XG4gICAgICAgIHRoaXMuX2ZvZWhuUGFnZVNlcnZpY2UgPSBmb2VoblBhZ2VTZXJ2aWNlO1xuICAgIH1cblxuICAgIHRyYWNrKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9hcHBsaWNhdGlvbkluZm9TZXJ2aWNlLmRhdGEucGlwZShmaXJzdCgpKS5zdWJzY3JpYmUoZGF0YSA9PiB7XG4gICAgICAgICAgICAvLyBHZXQgTWF0b21vIHNldHRpbmdzXG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgJ21hdG9tb1VybCcgaW4gZGF0YS5hcHBQcm9wZXJ0aWVzICYmXG4gICAgICAgICAgICAgICAgJ21hdG9tb1NpdGVJZCcgaW4gZGF0YS5hcHBQcm9wZXJ0aWVzICYmXG4gICAgICAgICAgICAgICAgISFkYXRhLmFwcFByb3BlcnRpZXMubWF0b21vVXJsICYmXG4gICAgICAgICAgICAgICAgISFkYXRhLmFwcFByb3BlcnRpZXMubWF0b21vU2l0ZUlkXG4gICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICBsZXQgbWF0b21vVXJsID0gZGF0YS5hcHBQcm9wZXJ0aWVzLm1hdG9tb1VybDtcbiAgICAgICAgICAgICAgICBjb25zdCBtYXRvbW9TaXRlSWQgPSBkYXRhLmFwcFByb3BlcnRpZXMubWF0b21vU2l0ZUlkO1xuXG4gICAgICAgICAgICAgICAgLy8gQ29tcGxldGUgdXJsIGlmICcvJyBpcyBtaXNzaW5nIGF0IHRoZSBlbmRcbiAgICAgICAgICAgICAgICBpZiAoIW1hdG9tb1VybC5lbmRzV2l0aCgnLycpKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hdG9tb1VybCA9IGAke21hdG9tb1VybH0vYDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB0aGlzLnNlbmQobWF0b21vVXJsLCBtYXRvbW9TaXRlSWQpO1xuXG4gICAgICAgICAgICAgICAgdGhpcy5fcm91dGVyLmV2ZW50c1xuICAgICAgICAgICAgICAgICAgICAucGlwZShmaWx0ZXIoZXZlbnQgPT4gZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSlcbiAgICAgICAgICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJ4anMvbm8tbmVzdGVkLXN1YnNjcmliZVxuICAgICAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2VuZChtYXRvbW9VcmwsIG1hdG9tb1NpdGVJZCk7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNlbmQobWF0b21vVXJsOiBzdHJpbmcsIG1hdG9tb1NpdGVJZDogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9FbW1hbnVlbFJvdXgvbmd4LW1hdG9tby1jbGllbnQvaXNzdWVzLzYwI2lzc3VlY29tbWVudC0xMzI2NDkyMTQ0XG4gICAgICAgIHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+XG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBzID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ3NjcmlwdCcpWzBdO1xuICAgICAgICAgICAgICAgIGNvbnN0IHNTcmMgPSBzLmdldEF0dHJpYnV0ZSgnc3JjJyk7XG5cbiAgICAgICAgICAgICAgICAvLyBSZW1vdmUgdGhlIHNjcmlwdCBhZGRlZCBiZWZvcmVcbiAgICAgICAgICAgICAgICBpZiAoc1NyYyA9PT0gYCR7bWF0b21vVXJsfW1hdG9tby5qc2ApIHtcbiAgICAgICAgICAgICAgICAgICAgcy5yZW1vdmUoKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAvLyBTZXQgdmFyaWFibGVzXG4gICAgICAgICAgICAgICAgY29uc3QgX3BhcSA9ICh3aW5kb3cuX3BhcSA9IHdpbmRvdy5fcGFxIHx8IFtdKTtcbiAgICAgICAgICAgICAgICBfcGFxLnB1c2goWydzZXRDdXN0b21VcmwnLCBsb2NhdGlvbi5wYXRobmFtZV0pO1xuICAgICAgICAgICAgICAgIF9wYXEucHVzaChbJ3RyYWNrUGFnZVZpZXcnXSk7XG5cbiAgICAgICAgICAgICAgICBfcGFxLnB1c2goWydzZXRUcmFja2VyVXJsJywgYCR7bWF0b21vVXJsfW1hdG9tby5waHBgXSk7XG4gICAgICAgICAgICAgICAgX3BhcS5wdXNoKFsnc2V0U2l0ZUlkJywgbWF0b21vU2l0ZUlkXSk7XG4gICAgICAgICAgICAgICAgY29uc3QgZEJpcyA9IGRvY3VtZW50O1xuICAgICAgICAgICAgICAgIGNvbnN0IGdCaXMgPSBkQmlzLmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpO1xuICAgICAgICAgICAgICAgIGNvbnN0IHNCaXMgPSBkQmlzLmdldEVsZW1lbnRzQnlUYWdOYW1lKCdzY3JpcHQnKVswXTtcbiAgICAgICAgICAgICAgICBnQmlzLnR5cGUgPSAndGV4dC9qYXZhc2NyaXB0JztcbiAgICAgICAgICAgICAgICBnQmlzLmFzeW5jID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICBnQmlzLnNyYyA9IGAke21hdG9tb1VybH1tYXRvbW8uanNgO1xuICAgICAgICAgICAgICAgIHNCaXMucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoZ0Jpcywgc0Jpcyk7XG4gICAgICAgICAgICB9LCAwKVxuICAgICAgICApO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -5319,35 +5319,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
5319
5319
|
}], ctorParameters: () => [{ type: ApplicationInfoService }] });
|
|
5320
5320
|
|
|
5321
5321
|
class SdkStatisticsService {
|
|
5322
|
-
constructor(router, applicationInfoService, foehnPageService) {
|
|
5322
|
+
constructor(router, applicationInfoService, foehnPageService, ngZone) {
|
|
5323
5323
|
this.router = router;
|
|
5324
5324
|
this.applicationInfoService = applicationInfoService;
|
|
5325
5325
|
this.foehnPageService = foehnPageService;
|
|
5326
|
+
this.ngZone = ngZone;
|
|
5326
5327
|
this._router = router;
|
|
5327
5328
|
this._applicationInfoService = applicationInfoService;
|
|
5328
5329
|
this._foehnPageService = foehnPageService;
|
|
5329
5330
|
}
|
|
5330
|
-
static send(matomoUrl, matomoSiteId) {
|
|
5331
|
-
const s = document.getElementsByTagName('script')[0];
|
|
5332
|
-
const sSrc = s.getAttribute('src');
|
|
5333
|
-
// Remove the script added before
|
|
5334
|
-
if (sSrc === `${matomoUrl}matomo.js`) {
|
|
5335
|
-
s.remove();
|
|
5336
|
-
}
|
|
5337
|
-
// Set variables
|
|
5338
|
-
const _paq = (window._paq = window._paq || []);
|
|
5339
|
-
_paq.push(['setCustomUrl', location.pathname]);
|
|
5340
|
-
_paq.push(['trackPageView']);
|
|
5341
|
-
_paq.push(['setTrackerUrl', `${matomoUrl}matomo.php`]);
|
|
5342
|
-
_paq.push(['setSiteId', matomoSiteId]);
|
|
5343
|
-
const dBis = document;
|
|
5344
|
-
const gBis = dBis.createElement('script');
|
|
5345
|
-
const sBis = dBis.getElementsByTagName('script')[0];
|
|
5346
|
-
gBis.type = 'text/javascript';
|
|
5347
|
-
gBis.async = true;
|
|
5348
|
-
gBis.src = `${matomoUrl}matomo.js`;
|
|
5349
|
-
sBis.parentNode.insertBefore(gBis, sBis);
|
|
5350
|
-
}
|
|
5351
5331
|
track() {
|
|
5352
5332
|
this._applicationInfoService.data.pipe(first()).subscribe(data => {
|
|
5353
5333
|
// Get Matomo settings
|
|
@@ -5361,17 +5341,41 @@ class SdkStatisticsService {
|
|
|
5361
5341
|
if (!matomoUrl.endsWith('/')) {
|
|
5362
5342
|
matomoUrl = `${matomoUrl}/`;
|
|
5363
5343
|
}
|
|
5364
|
-
|
|
5344
|
+
this.send(matomoUrl, matomoSiteId);
|
|
5365
5345
|
this._router.events
|
|
5366
5346
|
.pipe(filter(event => event instanceof NavigationEnd))
|
|
5367
5347
|
// eslint-disable-next-line rxjs/no-nested-subscribe
|
|
5368
5348
|
.subscribe(() => {
|
|
5369
|
-
|
|
5349
|
+
this.send(matomoUrl, matomoSiteId);
|
|
5370
5350
|
});
|
|
5371
5351
|
}
|
|
5372
5352
|
});
|
|
5373
5353
|
}
|
|
5374
|
-
|
|
5354
|
+
send(matomoUrl, matomoSiteId) {
|
|
5355
|
+
// https://github.com/EmmanuelRoux/ngx-matomo-client/issues/60#issuecomment-1326492144
|
|
5356
|
+
this.ngZone.runOutsideAngular(() => setTimeout(() => {
|
|
5357
|
+
const s = document.getElementsByTagName('script')[0];
|
|
5358
|
+
const sSrc = s.getAttribute('src');
|
|
5359
|
+
// Remove the script added before
|
|
5360
|
+
if (sSrc === `${matomoUrl}matomo.js`) {
|
|
5361
|
+
s.remove();
|
|
5362
|
+
}
|
|
5363
|
+
// Set variables
|
|
5364
|
+
const _paq = (window._paq = window._paq || []);
|
|
5365
|
+
_paq.push(['setCustomUrl', location.pathname]);
|
|
5366
|
+
_paq.push(['trackPageView']);
|
|
5367
|
+
_paq.push(['setTrackerUrl', `${matomoUrl}matomo.php`]);
|
|
5368
|
+
_paq.push(['setSiteId', matomoSiteId]);
|
|
5369
|
+
const dBis = document;
|
|
5370
|
+
const gBis = dBis.createElement('script');
|
|
5371
|
+
const sBis = dBis.getElementsByTagName('script')[0];
|
|
5372
|
+
gBis.type = 'text/javascript';
|
|
5373
|
+
gBis.async = true;
|
|
5374
|
+
gBis.src = `${matomoUrl}matomo.js`;
|
|
5375
|
+
sBis.parentNode.insertBefore(gBis, sBis);
|
|
5376
|
+
}, 0));
|
|
5377
|
+
}
|
|
5378
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SdkStatisticsService, deps: [{ token: i1$1.Router }, { token: ApplicationInfoService }, { token: FoehnPageService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
5375
5379
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SdkStatisticsService, providedIn: 'root' }); }
|
|
5376
5380
|
}
|
|
5377
5381
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SdkStatisticsService, decorators: [{
|
|
@@ -5379,7 +5383,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
5379
5383
|
args: [{
|
|
5380
5384
|
providedIn: 'root'
|
|
5381
5385
|
}]
|
|
5382
|
-
}], ctorParameters: () => [{ type: i1$1.Router }, { type: ApplicationInfoService }, { type: FoehnPageService }] });
|
|
5386
|
+
}], ctorParameters: () => [{ type: i1$1.Router }, { type: ApplicationInfoService }, { type: FoehnPageService }, { type: i0.NgZone }] });
|
|
5383
5387
|
|
|
5384
5388
|
class IntervalHelper {
|
|
5385
5389
|
static accurateInterval(
|