angulartics2 11.0.0 → 12.0.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/angular-router.d.ts +3 -0
- package/angulartics2-core.d.ts +3 -0
- package/angulartics2.d.ts +1 -0
- package/angulartics2.module.d.ts +5 -0
- package/angulartics2On.d.ts +6 -0
- package/esm2020/angular-router.mjs +33 -0
- package/{esm2015/angulartics2-config.js → esm2020/angulartics2-config.mjs} +0 -0
- package/esm2020/angulartics2-core.mjs +93 -0
- package/{esm2015/angulartics2-interfaces.js → esm2020/angulartics2-interfaces.mjs} +0 -0
- package/{esm2015/angulartics2-token.js → esm2020/angulartics2-token.mjs} +0 -0
- package/{esm2015/angulartics2.js → esm2020/angulartics2.mjs} +0 -0
- package/esm2020/angulartics2.module.mjs +30 -0
- package/esm2020/angulartics2On.mjs +66 -0
- package/esm2020/providers/adobeanalytics/adobeanalytics.mjs +98 -0
- package/esm2020/providers/amplitude/amplitude.mjs +68 -0
- package/esm2020/providers/appinsights/appinsights.mjs +118 -0
- package/esm2020/providers/baidu/baidu.mjs +81 -0
- package/{esm2015/providers/clicky/clicky.interfaces.js → esm2020/providers/clicky/clicky.interfaces.mjs} +0 -0
- package/esm2020/providers/clicky/clicky.mjs +64 -0
- package/esm2020/providers/facebook/facebook.mjs +45 -0
- package/esm2020/providers/ga/ga.mjs +219 -0
- package/{esm2015/providers/ga-enhanced-ecom/ga-enhanced-ecom-options.js → esm2020/providers/ga-enhanced-ecom/ga-enhanced-ecom-options.mjs} +0 -0
- package/esm2020/providers/ga-enhanced-ecom/ga-enhanced-ecom.mjs +32 -0
- package/esm2020/providers/gosquared/gosquared.mjs +55 -0
- package/{esm2015/providers/gst/gst-interfaces.js → esm2020/providers/gst/gst-interfaces.mjs} +0 -0
- package/esm2020/providers/gst/gst.mjs +197 -0
- package/esm2020/providers/gtm/gtm.mjs +114 -0
- package/esm2020/providers/hubspot/hubspot.mjs +40 -0
- package/esm2020/providers/ibm-digital-analytics/ibm-digital-analytics.mjs +125 -0
- package/esm2020/providers/intercom/intercom.mjs +60 -0
- package/esm2020/providers/kissmetrics/kissmetrics.mjs +40 -0
- package/esm2020/providers/launch/launch.mjs +59 -0
- package/esm2020/providers/matomo/matomo.mjs +303 -0
- package/esm2020/providers/mixpanel/mixpanel.mjs +109 -0
- package/esm2020/providers/pyze/pyze.mjs +65 -0
- package/esm2020/providers/segment/segment.mjs +100 -0
- package/esm2020/providers/splunk/splunk.mjs +46 -0
- package/esm2020/providers/woopra/woopra.mjs +61 -0
- package/{esm2015/public_api.js → esm2020/public_api.mjs} +0 -0
- package/{esm2015/routerless.js → esm2020/routerless.mjs} +0 -0
- package/esm2020/routerless.module.mjs +28 -0
- package/fesm2015/{angulartics2.js → angulartics2.mjs} +201 -210
- package/fesm2015/angulartics2.mjs.map +1 -0
- package/fesm2020/angulartics2.mjs +2294 -0
- package/fesm2020/angulartics2.mjs.map +1 -0
- package/package.json +23 -11
- package/providers/adobeanalytics/README.md +12 -0
- package/providers/adobeanalytics/adobeanalytics.d.ts +3 -0
- package/providers/amplitude/README.md +12 -0
- package/providers/amplitude/amplitude.d.ts +3 -0
- package/providers/appinsights/README.md +12 -0
- package/providers/appinsights/appinsights.d.ts +3 -0
- package/providers/baidu/README.md +12 -0
- package/providers/baidu/baidu.d.ts +3 -0
- package/providers/clicky/README.md +93 -0
- package/providers/clicky/clicky.d.ts +3 -0
- package/providers/facebook/README.md +36 -0
- package/providers/facebook/facebook.d.ts +3 -0
- package/providers/ga/README.md +25 -0
- package/providers/ga/ga.d.ts +3 -0
- package/providers/ga-enhanced-ecom/README.md +12 -0
- package/providers/ga-enhanced-ecom/ga-enhanced-ecom.d.ts +3 -0
- package/providers/gosquared/README.md +12 -0
- package/providers/gosquared/gosquared.d.ts +3 -0
- package/providers/gst/README.md +110 -0
- package/providers/gst/gst.d.ts +3 -0
- package/providers/gtm/README.md +58 -0
- package/providers/gtm/gtm.d.ts +3 -0
- package/providers/hubspot/README.md +12 -0
- package/providers/hubspot/hubspot.d.ts +3 -0
- package/providers/ibm-digital-analytics/README.md +123 -0
- package/providers/ibm-digital-analytics/ibm-digital-analytics.d.ts +3 -0
- package/providers/intercom/README.md +12 -0
- package/providers/intercom/intercom.d.ts +3 -0
- package/providers/kissmetrics/README.md +12 -0
- package/providers/kissmetrics/kissmetrics.d.ts +3 -0
- package/providers/launch/README.md +59 -0
- package/providers/launch/launch.d.ts +3 -0
- package/providers/matomo/README.md +74 -0
- package/providers/matomo/matomo.d.ts +3 -0
- package/providers/mixpanel/README.md +105 -0
- package/providers/mixpanel/mixpanel.d.ts +3 -0
- package/providers/pyze/README.md +21 -0
- package/providers/pyze/pyze.d.ts +3 -0
- package/providers/segment/README.md +50 -0
- package/providers/segment/segment.d.ts +3 -0
- package/providers/splunk/README.md +57 -0
- package/providers/splunk/splunk.d.ts +3 -0
- package/providers/woopra/README.md +12 -0
- package/providers/woopra/woopra.d.ts +3 -0
- package/routerless.module.d.ts +5 -0
- package/angulartics2.metadata.json +0 -1
- package/bundles/angulartics2.umd.js +0 -2821
- package/bundles/angulartics2.umd.js.map +0 -1
- package/esm2015/angular-router.js +0 -36
- package/esm2015/angulartics2-core.js +0 -91
- package/esm2015/angulartics2.module.js +0 -25
- package/esm2015/angulartics2On.js +0 -55
- package/esm2015/providers/adobeanalytics/adobeanalytics.js +0 -102
- package/esm2015/providers/amplitude/amplitude.js +0 -70
- package/esm2015/providers/appinsights/appinsights.js +0 -120
- package/esm2015/providers/baidu/baidu.js +0 -83
- package/esm2015/providers/clicky/clicky.js +0 -68
- package/esm2015/providers/facebook/facebook.js +0 -47
- package/esm2015/providers/ga/ga.js +0 -208
- package/esm2015/providers/ga-enhanced-ecom/ga-enhanced-ecom.js +0 -30
- package/esm2015/providers/gosquared/gosquared.js +0 -57
- package/esm2015/providers/gst/gst.js +0 -182
- package/esm2015/providers/gtm/gtm.js +0 -107
- package/esm2015/providers/hubspot/hubspot.js +0 -42
- package/esm2015/providers/ibm-digital-analytics/ibm-digital-analytics.js +0 -127
- package/esm2015/providers/intercom/intercom.js +0 -62
- package/esm2015/providers/kissmetrics/kissmetrics.js +0 -42
- package/esm2015/providers/launch/launch.js +0 -61
- package/esm2015/providers/matomo/matomo.js +0 -305
- package/esm2015/providers/mixpanel/mixpanel.js +0 -111
- package/esm2015/providers/pyze/pyze.js +0 -67
- package/esm2015/providers/segment/segment.js +0 -102
- package/esm2015/providers/splunk/splunk.js +0 -48
- package/esm2015/providers/woopra/woopra.js +0 -63
- package/esm2015/routerless.module.js +0 -23
- package/fesm2015/angulartics2.js.map +0 -1
@@ -0,0 +1,125 @@
|
|
1
|
+
import { Injectable } from '@angular/core';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
import * as i1 from "../../angulartics2-core";
|
4
|
+
export class Angulartics2IBMDigitalAnalytics {
|
5
|
+
constructor(angulartics2) {
|
6
|
+
this.angulartics2 = angulartics2;
|
7
|
+
if (typeof window['cmCreatePageviewTag'] !== 'function') {
|
8
|
+
console.warn('Angulartics 2 IBM Digital Analytics Plugin: eluminate.js is not loaded');
|
9
|
+
}
|
10
|
+
}
|
11
|
+
startTracking() {
|
12
|
+
this.angulartics2.pageTrack
|
13
|
+
.pipe(this.angulartics2.filterDeveloperMode())
|
14
|
+
.subscribe(x => this.pageTrack(x.path));
|
15
|
+
this.angulartics2.eventTrack
|
16
|
+
.pipe(this.angulartics2.filterDeveloperMode())
|
17
|
+
.subscribe(x => this.eventTrack(x.action, x.properties));
|
18
|
+
}
|
19
|
+
/**
|
20
|
+
* Track Page in IBM Digital Analytics
|
21
|
+
*
|
22
|
+
* @param path location
|
23
|
+
*
|
24
|
+
* @link https://www.ibm.com/support/knowledgecenter/SSPG9M/Implementation/impl_pageviewtag.html
|
25
|
+
*/
|
26
|
+
pageTrack(path) {
|
27
|
+
const cmCreatePageviewTag = window['cmCreatePageviewTag'];
|
28
|
+
cmCreatePageviewTag(path, null, null, null);
|
29
|
+
}
|
30
|
+
/**
|
31
|
+
* Track an event in IBM Digital Analytics
|
32
|
+
*
|
33
|
+
* @param action A string corresponding to the type of event that needs to be tracked.
|
34
|
+
* @param properties The properties that need to be logged with the event.
|
35
|
+
*/
|
36
|
+
eventTrack(action, properties = {}) {
|
37
|
+
const cmDisplayShops = window['cmDisplayShops'];
|
38
|
+
switch (action) {
|
39
|
+
/**
|
40
|
+
* @description The Product View tag captures information about vdigitalDataiews of product detail pages.
|
41
|
+
* The Product View tag should be called on the lowest level detail page for products, which is typically
|
42
|
+
* the Product Details page. You can view example Product View tags below.
|
43
|
+
*
|
44
|
+
* @link https://www.ibm.com/support/knowledgecenter/SSPG9M/Implementation/impl_prodviewtag.html
|
45
|
+
*/
|
46
|
+
case 'cmCreateProductviewTag':
|
47
|
+
const cmCreateProductviewTag = window['cmCreateProductviewTag'];
|
48
|
+
cmCreateProductviewTag(properties.productId, properties.productName, properties.categoryId, properties.attrbute, properties.virtualCategory);
|
49
|
+
break;
|
50
|
+
/**
|
51
|
+
* @description The Shop Action 5 tag captures data about selected products and which products are present in a shopping cart,
|
52
|
+
* if any, when the cart is viewed.
|
53
|
+
*
|
54
|
+
* @link https://www.ibm.com/support/knowledgecenter/SSPG9M/Implementation/impl_shopact5tag.html
|
55
|
+
*/
|
56
|
+
case 'cmCreateShopAction5Tag':
|
57
|
+
const cmCreateShopAction5Tag = window['cmCreateShopAction5Tag'];
|
58
|
+
cmCreateShopAction5Tag(properties.productId, properties.productName, properties.quantity, properties.unitPrice, properties.categoryId, properties.attrbute, properties.extraFields, properties.virtualCategory);
|
59
|
+
cmDisplayShops();
|
60
|
+
break;
|
61
|
+
/**
|
62
|
+
* @description The Shop Action 9 tag captures data about what products were purchased by a customer.
|
63
|
+
* Like the Shop Action 5 tag, one tag should be sent for each product line item purchased. These tags should be sent
|
64
|
+
* on the receipt or other completion page confirming a successful order.
|
65
|
+
*
|
66
|
+
* @link https://www.ibm.com/support/knowledgecenter/SSPG9M/Implementation/impl_shopact9tag.html
|
67
|
+
*/
|
68
|
+
case 'cmCreateShopAction9Tag':
|
69
|
+
const cmCreateShopAction9Tag = window['cmCreateShopAction9Tag'];
|
70
|
+
cmCreateShopAction9Tag(properties.productId, properties.productName, properties.quantity, properties.unitPrice, properties.registrationId, properties.orderId, properties.orderSubtotal, properties.categoryId, properties.attrbute, properties.extraFields);
|
71
|
+
cmDisplayShops();
|
72
|
+
break;
|
73
|
+
/**
|
74
|
+
* @description The Order tag captures order header information such as Registration ID, order ID, order subtotal,
|
75
|
+
* and shipping and handling. The Order tag should be sent on the receipt page confirming order completion.
|
76
|
+
*
|
77
|
+
* @link https://www.ibm.com/support/knowledgecenter/SSPG9M/Implementation/impl_ordertag.html
|
78
|
+
*/
|
79
|
+
case 'cmCreateOrderTag':
|
80
|
+
const cmCreateOrderTag = window['cmCreateOrderTag'];
|
81
|
+
cmCreateOrderTag(properties.orderId, properties.orderSubtotal, properties.orderShipping, properties.registrationId, properties.registrantCity, properties.registrantState, properties.registrantPostalCode, properties.attrbute, properties.extraFields);
|
82
|
+
break;
|
83
|
+
/**
|
84
|
+
* @description The Registration tag creates a Lifetime Visitor Experience Profile (LIVE Profile) by associating a single
|
85
|
+
* common Registration ID with the IBM® Digital Analytics permanent cookie set in every browser visiting the tagged site.
|
86
|
+
*
|
87
|
+
* @link https://www.ibm.com/support/knowledgecenter/SSPG9M/Implementation/impl_registrationtag.html
|
88
|
+
*/
|
89
|
+
case 'cmCreateRegistrationTag':
|
90
|
+
const cmCreateRegistrationTag = window['cmCreateRegistrationTag'];
|
91
|
+
cmCreateRegistrationTag(properties.registrationId, properties.registrantEmail, properties.registrantCity, properties.registrantState, properties.registrantPostalCode, properties.registrantCountry, properties.attrbute);
|
92
|
+
break;
|
93
|
+
/**
|
94
|
+
* @description The Element tag is used to track intra-page content in IBM® Digital Analytics. Data collected by
|
95
|
+
* the Element tag is used to populate values in the Element Categories and Top Viewed Elements reports.
|
96
|
+
*
|
97
|
+
* @link https://www.ibm.com/support/knowledgecenter/SSPG9M/Implementation/impl_elementtag.html
|
98
|
+
*/
|
99
|
+
case 'cmCreateElementTag':
|
100
|
+
const cmCreateElementTag = window['cmCreateElementTag'];
|
101
|
+
cmCreateElementTag(properties.elementId, properties.elementCategory, properties.attrbute);
|
102
|
+
break;
|
103
|
+
/**
|
104
|
+
* @description The Conversion Event tag is employed for tracking of general non-commerce conversion events.
|
105
|
+
* The Conversion Event tag is used to populate values in the Conversion Events Reports and to create Key Segments.
|
106
|
+
* This tag and the reports it populates enable analysis of a wide variety of site activities.
|
107
|
+
*
|
108
|
+
* @link https://www.ibm.com/support/knowledgecenter/SSPG9M/Implementation/impl_conversioneventtag.html
|
109
|
+
*/
|
110
|
+
case 'cmCreateConversionEventTag':
|
111
|
+
const cmCreateConversionEventTag = window['cmCreateConversionEventTag'];
|
112
|
+
cmCreateConversionEventTag(properties.eventId, properties.actionType, properties.eventCategoryId, properties.points, properties.attrbute, properties.extraFields);
|
113
|
+
break;
|
114
|
+
default:
|
115
|
+
console.warn('Unsupported Event Action');
|
116
|
+
}
|
117
|
+
}
|
118
|
+
}
|
119
|
+
Angulartics2IBMDigitalAnalytics.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: Angulartics2IBMDigitalAnalytics, deps: [{ token: i1.Angulartics2 }], target: i0.ɵɵFactoryTarget.Injectable });
|
120
|
+
Angulartics2IBMDigitalAnalytics.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: Angulartics2IBMDigitalAnalytics, providedIn: 'root' });
|
121
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: Angulartics2IBMDigitalAnalytics, decorators: [{
|
122
|
+
type: Injectable,
|
123
|
+
args: [{ providedIn: 'root' }]
|
124
|
+
}], ctorParameters: function () { return [{ type: i1.Angulartics2 }]; } });
|
125
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWJtLWRpZ2l0YWwtYW5hbHl0aWNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9wcm92aWRlcnMvaWJtLWRpZ2l0YWwtYW5hbHl0aWNzL2libS1kaWdpdGFsLWFuYWx5dGljcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFJM0MsTUFBTSxPQUFPLCtCQUErQjtJQUMxQyxZQUFvQixZQUEwQjtRQUExQixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUM1QyxJQUFJLE9BQU8sTUFBTSxDQUFDLHFCQUFxQixDQUFDLEtBQUssVUFBVSxFQUFFO1lBQ3ZELE9BQU8sQ0FBQyxJQUFJLENBQUMsd0VBQXdFLENBQUMsQ0FBQztTQUN4RjtJQUNILENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTO2FBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLG1CQUFtQixFQUFFLENBQUM7YUFDN0MsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUMxQyxJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVU7YUFDekIsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsbUJBQW1CLEVBQUUsQ0FBQzthQUM3QyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILFNBQVMsQ0FBQyxJQUFZO1FBQ3BCLE1BQU0sbUJBQW1CLEdBQUcsTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFDMUQsbUJBQW1CLENBQUMsSUFBSSxFQUFFLElBQUksRUFB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Ozs7OztlQU1HO1lBQ0gsS0FBSyw0QkFBNEI7Z0JBQy9CLE1BQU0sMEJBQTBCLEdBQUcsTUFBTSxDQUFDLDRCQUE0QixDQUFDLENBQUM7Z0JBQ3hFLDBCQUEwQixDQUN4QixVQUFVLENBQUMsT0FBTyxFQUNsQixVQUFVLENBQUMsVUFBVSxFQUNyQixVQUFVLENBQUMsZUFBZSxFQUMxQixVQUFVLENBQUMsTUFBTSxFQUNqQixVQUFVLENBQUMsUUFBUSxFQUNuQixVQUFVLENBQUMsV0FBVyxDQUN2QixDQUFDO2dCQUVGLE1BQU07WUFFUjtnQkFDRSxPQUFPLENBQUMsSUFBSSxDQUFDLDBCQUEwQixDQUFDLENBQUM7U0FDNUM7SUFDSCxDQUFDOzs0SEF0TFUsK0JBQStCO2dJQUEvQiwrQkFBK0IsY0FEbEIsTUFBTTsyRkFDbkIsK0JBQStCO2tCQUQzQyxVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQW5ndWxhcnRpY3MyIH0gZnJvbSAnLi4vLi4vYW5ndWxhcnRpY3MyLWNvcmUnO1xyXG5cclxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcclxuZXhwb3J0IGNsYXNzIEFuZ3VsYXJ0aWNzMklCTURpZ2l0YWxBbmFseXRpY3Mge1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYW5ndWxhcnRpY3MyOiBBbmd1bGFydGljczIpIHtcclxuICAgIGlmICh0eXBlb2Ygd2luZG93WydjbUNyZWF0ZVBhZ2V2aWV3VGFnJ10gIT09ICdmdW5jdGlvbicpIHtcclxuICAgICAgY29uc29sZS53YXJuKCdBbmd1bGFydGljcyAyIElCTSBEaWdpdGFsIEFuYWx5dGljcyBQbHVnaW46IGVsdW1pbmF0ZS5qcyBpcyBub3QgbG9hZGVkJyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzdGFydFRyYWNraW5nKCk6IHZvaWQge1xyXG4gICAgdGhpcy5hbmd1bGFydGljczIucGFnZVRyYWNrXHJcbiAgICAgIC5waXBlKHRoaXMuYW5ndWxhcnRpY3MyLmZpbHRlckRldmVsb3Blck1vZGUoKSlcclxuICAgICAgLnN1YnNjcmliZSh4ID0+IHRoaXMucGFnZVRyYWNrKHgucGF0aCkpO1xyXG4gICAgdGhpcy5hbmd1bGFydGljczIuZXZlbnRUcmFja1xyXG4gICAgICAucGlwZSh0aGlzLmFuZ3VsYXJ0aWNzMi5maWx0ZXJEZXZlbG9wZXJNb2RlKCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoeCA9PiB0aGlzLmV2ZW50VHJhY2soeC5hY3Rpb24sIHgucHJvcGVydGllcykpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVHJhY2sgUGFnZSBpbiBJQk0gRGlnaXRhbCBBbmFseXRpY3NcclxuICAgKlxyXG4gICAqIEBwYXJhbSBwYXRoIGxvY2F0aW9uXHJcbiAgICpcclxuICAgKiBAbGluayBodHRwczovL3d3dy5pYm0uY29tL3N1cHBvcnQva25vd2xlZGdlY2VudGVyL1NTUEc5TS9JbXBsZW1lbnRhdGlvbi9pbXBsX3BhZ2V2aWV3dGFnLmh0bWxcclxuICAgKi9cclxuICBwYWdlVHJhY2socGF0aDogc3RyaW5nKSB7XHJcbiAgICBjb25zdCBjbUNyZWF0ZVBhZ2V2aWV3VGFnID0gd2luZG93WydjbUNyZWF0ZVBhZ2V2aWV3VGFnJ107XHJcbiAgICBjbUNyZWF0ZVBhZ2V2aWV3VGFnKHBhdGgsIG51bGwsIG51bGwsIG51bGwpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogVHJhY2sgYW4gZXZlbnQgaW4gSUJNIERpZ2l0YWwgQW5hbHl0aWNzXHJcbiAgICpcclxuICAgKiBAcGFyYW0gYWN0aW9uIEEgc3RyaW5nIGNvcnJlc3BvbmRpbmcgdG8gdGhlIHR5cGUgb2YgZXZlbnQgdGhhdCBuZWVkcyB0byBiZSB0cmFja2VkLlxyXG4gICAqIEBwYXJhbSBwcm9wZXJ0aWVzIFRoZSBwcm9wZXJ0aWVzIHRoYXQgbmVlZCB0byBiZSBsb2dnZWQgd2l0aCB0aGUgZXZlbnQuXHJcbiAgICovXHJcbiAgZXZlbnRUcmFjayhhY3Rpb246IHN0cmluZywgcHJvcGVydGllczogYW55ID0ge30pIHtcclxuICAgIGNvbnN0IGNtRGlzcGxheVNob3BzID0gd2luZG93WydjbURpc3BsYXlTaG9wcyddO1xyXG4gICAgc3dpdGNoIChhY3Rpb24pIHtcclxuICAgICAgLyoqXHJcbiAgICAgICAqIEBkZXNjcmlwdGlvbiBUaGUgUHJvZHVjdCBWaWV3IHRhZyBjYXB0dXJlcyBpbmZvcm1hdGlvbiBhYm91dCB2ZGlnaXRhbERhdGFpZXdzIG9mIHByb2R1Y3QgZGV0YWlsIHBhZ2VzLlxyXG4gICAgICAgKiAgVGhlIFByb2R1Y3QgVmlldyB0YWcgc2hvdWxkIGJlIGNhbGxlZCBvbiB0aGUgbG93ZXN0IGxldmVsIGRldGFpbCBwYWdlIGZvciBwcm9kdWN0cywgd2hpY2ggaXMgdHlwaWNhbGx5XHJcbiAgICAgICAqICB0aGUgUHJvZHVjdCBEZXRhaWxzIHBhZ2UuIFlvdSBjYW4gdmlldyBleGFtcGxlIFByb2R1Y3QgVmlldyB0YWdzIGJlbG93LlxyXG4gICAgICAgKlxyXG4gICAgICAgKiBAbGluayBodHRwczovL3d3dy5pYm0uY29tL3N1cHBvcnQva25vd2xlZGdlY2VudGVyL1NTUEc5TS9JbXBsZW1lbnRhdGlvbi9pbXBsX3Byb2R2aWV3dGFnLmh0bWxcclxuICAgICAgICovXHJcbiAgICAgIGNhc2UgJ2NtQ3JlYXRlUHJvZHVjdHZpZXdUYWcnOlxyXG4gICAgICAgIGNvbnN0IGNtQ3JlYXRlUHJvZHVjdHZpZXdUYWcgPSB3aW5kb3dbJ2NtQ3JlYXRlUHJvZHVjdHZpZXdUYWcnXTtcclxuICAgICAgICBjbUNyZWF0ZVByb2R1Y3R2aWV3VGFnKFxyXG4gICAgICAgICAgcHJvcGVydGllcy5wcm9kdWN0SWQsXHJcbiAgICAgICAgICBwcm9wZXJ0aWVzLnByb2R1Y3ROYW1lLFxyXG4gICAgICAgICAgcHJvcGVydGllcy5jYXRlZ29yeUlkLFxyXG4gICAgICAgICAgcHJvcGVydGllcy5hdHRyYnV0ZSxcclxuICAgICAgICAgIHByb3BlcnRpZXMudmlydHVhbENhdGVnb3J5LFxyXG4gICAgICAgICk7XHJcblxyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgLyoqXHJcbiAgICAgICAqIEBkZXNjcmlwdGlvbiBUaGUgU2hvcCBBY3Rpb24gNSB0YWcgY2FwdHVyZXMgZGF0YSBhYm91dCBzZWxlY3RlZCBwcm9kdWN0cyBhbmQgd2hpY2ggcHJvZHVjdHMgYXJlIHByZXNlbnQgaW4gYSBzaG9wcGluZyBjYXJ0LFxyXG4gICAgICAgKiAgaWYgYW55LCB3aGVuIHRoZSBjYXJ0IGlzIHZpZXdlZC5cclxuICAgICAgICpcclxuICAgICAgICogQGxpbmsgaHR0cHM6Ly93d3cuaWJtLmNvbS9zdXBwb3J0L2tub3dsZWRnZWNlbnRlci9TU1BHOU0vSW1wbGVtZW50YXRpb24vaW1wbF9zaG9wYWN0NXRhZy5odG1sXHJcbiAgICAgICAqL1xyXG4gICAgICBjYXNlICdjbUNyZWF0ZVNob3BBY3Rpb241VGFnJzpcclxuICAgICAgICBjb25zdCBjbUNyZWF0ZVNob3BBY3Rpb241VGFnID0gd2luZG93WydjbUNyZWF0ZVNob3BBY3Rpb241VGFnJ107XHJcbiAgICAgICAgY21DcmVhdGVTaG9wQWN0aW9uNVRhZyhcclxuICAgICAgICAgIHByb3BlcnRpZXMucHJvZHVjdElkLFxyXG4gICAgICAgICAgcHJvcGVydGllcy5wcm9kdWN0TmFtZSxcclxuICAgICAgICAgIHByb3BlcnRpZXMucXVhbnRpdHksXHJcbiAgICAgICAgICBwcm9wZXJ0aWVzLnVuaXRQcmljZSxcclxuICAgICAgICAgIHByb3BlcnRpZXMuY2F0ZWdvcnlJZCxcclxuICAgICAgICAgIHByb3BlcnRpZXMuYXR0cmJ1dGUsXHJcbiAgICAgICAgICBwcm9wZXJ0aWVzLmV4dHJhRmllbGRzLFxyXG4gICAgICAgICAgcHJvcGVydGllcy52aXJ0dWFsQ2F0ZWdvcnksXHJcbiAgICAgICAgKTtcclxuXHJcbiAgICAgICAgY21EaXNwbGF5U2hvcHMoKTtcclxuXHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICAvKipcclxuICAgICAgICogQGRlc2NyaXB0aW9uIFRoZSBTaG9wIEFjdGlvbiA5IHRhZyBjYXB0dXJlcyBkYXRhIGFib3V0IHdoYXQgcHJvZHVjdHMgd2VyZSBwdXJjaGFzZWQgYnkgYSBjdXN0b21lci5cclxuICAgICAgICogIExpa2UgdGhlIFNob3AgQWN0aW9uIDUgdGFnLCBvbmUgdGFnIHNob3VsZCBiZSBzZW50IGZvciBlYWNoIHByb2R1Y3QgbGluZSBpdGVtIHB1cmNoYXNlZC4gVGhlc2UgdGFncyBzaG91bGQgYmUgc2VudFxyXG4gICAgICAgKiAgb24gdGhlIHJlY2VpcHQgb3Igb3RoZXIgY29tcGxldGlvbiBwYWdlIGNvbmZpcm1pbmcgYSBzdWNjZXNzZnVsIG9yZGVyLlxyXG4gICAgICAgKlxyXG4gICAgICAgKiBAbGluayBodHRwczovL3d3dy5pYm0uY29tL3N1cHBvcnQva25vd2xlZGdlY2VudGVyL1NTUEc5TS9JbXBsZW1lbnRhdGlvbi9pbXBsX3Nob3BhY3Q5dGFnLmh0bWxcclxuICAgICAgICovXHJcbiAgICAgIGNhc2UgJ2NtQ3JlYXRlU2hvcEFjdGlvbjlUYWcnOlxyXG4gICAgICAgIGNvbnN0IGNtQ3JlYXRlU2hvcEFjdGlvbjlUYWcgPSB3aW5kb3dbJ2NtQ3JlYXRlU2hvcEFjdGlvbjlUYWcnXTtcclxuICAgICAgICBjbUNyZWF0ZVNob3BBY3Rpb245VGFnKFxyXG4gICAgICAgICAgcHJvcGVydGllcy5wcm9kdWN0SWQsXHJcbiAgICAgICAgICBwcm9wZXJ0aWVzLnByb2R1Y3ROYW1lLFxyXG4gICAgICAgICAgcHJvcGVydGllcy5xdWFudGl0eSxcclxuICAgICAgICAgIHByb3BlcnRpZXMudW5pdFByaWNlLFxyXG4gICAgICAgICAgcHJvcGVydGllcy5yZWdpc3RyYXRpb25JZCxcclxuICAgICAgICAgIHByb3BlcnRpZXMub3JkZXJJZCxcclxuICAgICAgICAgIHByb3BlcnRpZXMub3JkZXJTdWJ0b3RhbCxcclxuICAgICAgICAgIHByb3BlcnRpZXMuY2F0ZWdvcnlJZCxcclxuICAgICAgICAgIHByb3BlcnRpZXMuYXR0cmJ1dGUsXHJcbiAgICAgICAgICBwcm9wZXJ0aWVzLmV4dHJhRmllbGRzLFxyXG4gICAgICAgICk7XHJcblxyXG4gICAgICAgIGNtRGlzcGxheVNob3BzKCk7XHJcblxyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgLyoqXHJcbiAgICAgICAqIEBkZXNjcmlwdGlvbiBUaGUgT3JkZXIgdGFnIGNhcHR1cmVzIG9yZGVyIGhlYWRlciBpbmZvcm1hdGlvbiBzdWNoIGFzIFJlZ2lzdHJhdGlvbiBJRCwgb3JkZXIgSUQsIG9yZGVyIHN1YnRvdGFsLFxyXG4gICAgICAgKiAgYW5kIHNoaXBwaW5nIGFuZCBoYW5kbGluZy4gVGhlIE9yZGVyIHRhZyBzaG91bGQgYmUgc2VudCBvbiB0aGUgcmVjZWlwdCBwYWdlIGNvbmZpcm1pbmcgb3JkZXIgY29tcGxldGlvbi5cclxuICAgICAgICpcclxuICAgICAgICogQGxpbmsgaHR0cHM6Ly93d3cuaWJtLmNvbS9zdXBwb3J0L2tub3dsZWRnZWNlbnRlci9TU1BHOU0vSW1wbGVtZW50YXRpb24vaW1wbF9vcmRlcnRhZy5odG1sXHJcbiAgICAgICAqL1xyXG4gICAgICBjYXNlICdjbUNyZWF0ZU9yZGVyVGFnJzpcclxuICAgICAgICBjb25zdCBjbUNyZWF0ZU9yZGVyVGFnID0gd2luZG93WydjbUNyZWF0ZU9yZGVyVGFnJ107XHJcbiAgICAgICAgY21DcmVhdGVPcmRlclRhZyhcclxuICAgICAgICAgIHByb3BlcnRpZXMub3JkZXJJZCxcclxuICAgICAgICAgIHByb3BlcnRpZXMub3JkZXJTdWJ0b3RhbCxcclxuICAgICAgICAgIHByb3BlcnRpZXMub3JkZXJTaGlwcGluZyxcclxuICAgICAgICAgIHByb3BlcnRpZXMucmVnaXN0cmF0aW9uSWQsXHJcbiAgICAgICAgICBwcm9wZXJ0aWVzLnJlZ2lzdHJhbnRDaXR5LFxyXG4gICAgICAgICAgcHJvcGVydGllcy5yZWdpc3RyYW50U3RhdGUsXHJcbiAgICAgICAgICBwcm9wZXJ0aWVzLnJlZ2lzdHJhbnRQb3N0YWxDb2RlLFxyXG4gICAgICAgICAgcHJvcGVydGllcy5hdHRyYnV0ZSxcclxuICAgICAgICAgIHByb3BlcnRpZXMuZXh0cmFGaWVsZHMsXHJcbiAgICAgICAgKTtcclxuXHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICAvKipcclxuICAgICAgICogQGRlc2NyaXB0aW9uIFRoZSBSZWdpc3RyYXRpb24gdGFnIGNyZWF0ZXMgYSBMaWZldGltZSBWaXNpdG9yIEV4cGVyaWVuY2UgUHJvZmlsZSAoTElWRSBQcm9maWxlKSBieSBhc3NvY2lhdGluZyBhIHNpbmdsZVxyXG4gICAgICAgKiAgY29tbW9uIFJlZ2lzdHJhdGlvbiBJRCB3aXRoIHRoZSBJQk3CriBEaWdpdGFsIEFuYWx5dGljcyBwZXJtYW5lbnQgY29va2llIHNldCBpbiBldmVyeSBicm93c2VyIHZpc2l0aW5nIHRoZSB0YWdnZWQgc2l0ZS5cclxuICAgICAgICpcclxuICAgICAgICogQGxpbmsgaHR0cHM6Ly93d3cuaWJtLmNvbS9zdXBwb3J0L2tub3dsZWRnZWNlbnRlci9TU1BHOU0vSW1wbGVtZW50YXRpb24vaW1wbF9yZWdpc3RyYXRpb250YWcuaHRtbFxyXG4gICAgICAgKi9cclxuICAgICAgY2FzZSAnY21DcmVhdGVSZWdpc3RyYXRpb25UYWcnOlxyXG4gICAgICAgIGNvbnN0IGNtQ3JlYXRlUmVnaXN0cmF0aW9uVGFnID0gd2luZG93WydjbUNyZWF0ZVJlZ2lzdHJhdGlvblRhZyddO1xyXG4gICAgICAgIGNtQ3JlYXRlUmVnaXN0cmF0aW9uVGFnKFxyXG4gICAgICAgICAgcHJvcGVydGllcy5yZWdpc3RyYXRpb25JZCxcclxuICAgICAgICAgIHByb3BlcnRpZXMucmVnaXN0cmFudEVtYWlsLFxyXG4gICAgICAgICAgcHJvcGVydGllcy5yZWdpc3RyYW50Q2l0eSxcclxuICAgICAgICAgIHByb3BlcnRpZXMucmVnaXN0cmFudFN0YXRlLFxyXG4gICAgICAgICAgcHJvcGVydGllcy5yZWdpc3RyYW50UG9zdGFsQ29kZSxcclxuICAgICAgICAgIHByb3BlcnRpZXMucmVnaXN0cmFudENvdW50cnksXHJcbiAgICAgICAgICBwcm9wZXJ0aWVzLmF0dHJidXRlLFxyXG4gICAgICAgICk7XHJcblxyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgLyoqXHJcbiAgICAgICAqIEBkZXNjcmlwdGlvbiBUaGUgRWxlbWVudCB0YWcgaXMgdXNlZCB0byB0cmFjayBpbnRyYS1wYWdlIGNvbnRlbnQgaW4gSUJNwq4gRGlnaXRhbCBBbmFseXRpY3MuIERhdGEgY29sbGVjdGVkIGJ5XHJcbiAgICAgICAqICB0aGUgRWxlbWVudCB0YWcgaXMgdXNlZCB0byBwb3B1bGF0ZSB2YWx1ZXMgaW4gdGhlIEVsZW1lbnQgQ2F0ZWdvcmllcyBhbmQgVG9wIFZpZXdlZCBFbGVtZW50cyByZXBvcnRzLlxyXG4gICAgICAgKlxyXG4gICAgICAgKiBAbGluayBodHRwczovL3d3dy5pYm0uY29tL3N1cHBvcnQva25vd2xlZGdlY2VudGVyL1NTUEc5TS9JbXBsZW1lbnRhdGlvbi9pbXBsX2VsZW1lbnR0YWcuaHRtbFxyXG4gICAgICAgKi9cclxuICAgICAgY2FzZSAnY21DcmVhdGVFbGVtZW50VGFnJzpcclxuICAgICAgICBjb25zdCBjbUNyZWF0ZUVsZW1lbnRUYWcgPSB3aW5kb3dbJ2NtQ3JlYXRlRWxlbWVudFRhZyddO1xyXG4gICAgICAgIGNtQ3JlYXRlRWxlbWVudFRhZyhwcm9wZXJ0aWVzLmVsZW1lbnRJZCwgcHJvcGVydGllcy5lbGVtZW50Q2F0ZWdvcnksIHByb3BlcnRpZXMuYXR0cmJ1dGUpO1xyXG5cclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIC8qKlxyXG4gICAgICAgKiBAZGVzY3JpcHRpb24gVGhlIENvbnZlcnNpb24gRXZlbnQgdGFnIGlzIGVtcGxveWVkIGZvciB0cmFja2luZyBvZiBnZW5lcmFsIG5vbi1jb21tZXJjZSBjb252ZXJzaW9uIGV2ZW50cy5cclxuICAgICAgICogVGhlIENvbnZlcnNpb24gRXZlbnQgdGFnIGlzIHVzZWQgdG8gcG9wdWxhdGUgdmFsdWVzIGluIHRoZSBDb252ZXJzaW9uIEV2ZW50cyBSZXBvcnRzIGFuZCB0byBjcmVhdGUgS2V5IFNlZ21lbnRzLlxyXG4gICAgICAgKiBUaGlzIHRhZyBhbmQgdGhlIHJlcG9ydHMgaXQgcG9wdWxhdGVzIGVuYWJsZSBhbmFseXNpcyBvZiBhIHdpZGUgdmFyaWV0eSBvZiBzaXRlIGFjdGl2aXRpZXMuXHJcbiAgICAgICAqXHJcbiAgICAgICAqIEBsaW5rIGh0dHBzOi8vd3d3LmlibS5jb20vc3VwcG9ydC9rbm93bGVkZ2VjZW50ZXIvU1NQRzlNL0ltcGxlbWVudGF0aW9uL2ltcGxfY29udmVyc2lvbmV2ZW50dGFnLmh0bWxcclxuICAgICAgICovXHJcbiAgICAgIGNhc2UgJ2NtQ3JlYXRlQ29udmVyc2lvbkV2ZW50VGFnJzpcclxuICAgICAgICBjb25zdCBjbUNyZWF0ZUNvbnZlcnNpb25FdmVudFRhZyA9IHdpbmRvd1snY21DcmVhdGVDb252ZXJzaW9uRXZlbnRUYWcnXTtcclxuICAgICAgICBjbUNyZWF0ZUNvbnZlcnNpb25FdmVudFRhZyhcclxuICAgICAgICAgIHByb3BlcnRpZXMuZXZlbnRJZCxcclxuICAgICAgICAgIHByb3BlcnRpZXMuYWN0aW9uVHlwZSxcclxuICAgICAgICAgIHByb3BlcnRpZXMuZXZlbnRDYXRlZ29yeUlkLFxyXG4gICAgICAgICAgcHJvcGVydGllcy5wb2ludHMsXHJcbiAgICAgICAgICBwcm9wZXJ0aWVzLmF0dHJidXRlLFxyXG4gICAgICAgICAgcHJvcGVydGllcy5leHRyYUZpZWxkcyxcclxuICAgICAgICApO1xyXG5cclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgY29uc29sZS53YXJuKCdVbnN1cHBvcnRlZCBFdmVudCBBY3Rpb24nKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
|
@@ -0,0 +1,60 @@
|
|
1
|
+
import { Injectable } from '@angular/core';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
import * as i1 from "../../angulartics2-core";
|
4
|
+
export class Angulartics2Intercom {
|
5
|
+
constructor(angulartics2) {
|
6
|
+
this.angulartics2 = angulartics2;
|
7
|
+
this.angulartics2.setUserProperties.subscribe(x => this.setUserProperties(x));
|
8
|
+
this.angulartics2.setUserPropertiesOnce.subscribe(x => this.setUserProperties(x));
|
9
|
+
}
|
10
|
+
startTracking() {
|
11
|
+
this.angulartics2.pageTrack
|
12
|
+
.pipe(this.angulartics2.filterDeveloperMode())
|
13
|
+
.subscribe(x => this.pageTrack(x.path));
|
14
|
+
this.angulartics2.eventTrack
|
15
|
+
.pipe(this.angulartics2.filterDeveloperMode())
|
16
|
+
.subscribe(x => this.eventTrack(x.action, x.properties));
|
17
|
+
}
|
18
|
+
pageTrack(path) {
|
19
|
+
try {
|
20
|
+
this.eventTrack('Pageview', {
|
21
|
+
url: path,
|
22
|
+
});
|
23
|
+
}
|
24
|
+
catch (e) {
|
25
|
+
if (!(e instanceof ReferenceError)) {
|
26
|
+
throw e;
|
27
|
+
}
|
28
|
+
}
|
29
|
+
}
|
30
|
+
eventTrack(action, properties) {
|
31
|
+
try {
|
32
|
+
Intercom('trackEvent', action, properties);
|
33
|
+
}
|
34
|
+
catch (e) {
|
35
|
+
if (!(e instanceof ReferenceError)) {
|
36
|
+
throw e;
|
37
|
+
}
|
38
|
+
}
|
39
|
+
}
|
40
|
+
setUserProperties(properties) {
|
41
|
+
try {
|
42
|
+
if (properties.userId && !properties.user_id) {
|
43
|
+
properties.user_id = properties.userId;
|
44
|
+
}
|
45
|
+
Intercom('boot', properties);
|
46
|
+
}
|
47
|
+
catch (e) {
|
48
|
+
if (!(e instanceof ReferenceError)) {
|
49
|
+
throw e;
|
50
|
+
}
|
51
|
+
}
|
52
|
+
}
|
53
|
+
}
|
54
|
+
Angulartics2Intercom.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: Angulartics2Intercom, deps: [{ token: i1.Angulartics2 }], target: i0.ɵɵFactoryTarget.Injectable });
|
55
|
+
Angulartics2Intercom.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: Angulartics2Intercom, providedIn: 'root' });
|
56
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: Angulartics2Intercom, decorators: [{
|
57
|
+
type: Injectable,
|
58
|
+
args: [{ providedIn: 'root' }]
|
59
|
+
}], ctorParameters: function () { return [{ type: i1.Angulartics2 }]; } });
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJjb20uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3Byb3ZpZGVycy9pbnRlcmNvbS9pbnRlcmNvbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFPM0MsTUFBTSxPQUFPLG9CQUFvQjtJQUMvQixZQUFvQixZQUEwQjtRQUExQixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUM1QyxJQUFJLENBQUMsWUFBWSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzlFLElBQUksQ0FBQyxZQUFZLENBQUMscUJBQXFCLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEYsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVM7YUFDeEIsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsbUJBQW1CLEVBQUUsQ0FBQzthQUM3QyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQzFDLElBQUksQ0FBQyxZQUFZLENBQUMsVUFBVTthQUN6QixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO2FBQzdDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQsU0FBUyxDQUFDLElBQVk7UUFDcEIsSUFBSTtZQUNGLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxFQUFFO2dCQUMxQixHQUFHLEVBQUUsSUFBSTthQUNWLENBQUMsQ0FBQztTQUNKO1FBQUMsT0FBTyxDQUFDLEVBQUU7WUFDVixJQUFJLENBQUMsQ0FBQyxDQUFDLFlBQVksY0FBYyxDQUFDLEVBQUU7Z0JBQ2xDLE1BQU0sQ0FBQyxDQUFDO2FBQ1Q7U0FDRjtJQUNILENBQUM7SUFFRCxVQUFVLENBQUMsTUFBYyxFQUFFLFVBQWU7UUFDeEMsSUFBSTtZQUNGLFFBQVEsQ0FBQyxZQUFZLEVBQUUsTUFBTSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1NBQzVDO1FBQUMsT0FBTyxDQUFDLEVBQUU7WUFDVixJQUFJLENBQUMsQ0FBQyxDQUFDLFlBQVksY0FBYyxDQUFDLEVBQUU7Z0JBQ2xDLE1BQU0sQ0FBQyxDQUFDO2FBQ1Q7U0FDRjtJQUNILENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxVQUFlO1FBQy9CLElBQUk7WUFDRixJQUFJLFVBQVUsQ0FBQyxNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFO2dCQUM1QyxVQUFVLENBQUMsT0FBTyxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUM7YUFDeEM7WUFFRCxRQUFRLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1NBQzlCO1FBQUMsT0FBTyxDQUFDLEVBQUU7WUFDVixJQUFJLENBQUMsQ0FBQyxDQUFDLFlBQVksY0FBYyxDQUFDLEVBQUU7Z0JBQ2xDLE1BQU0sQ0FBQyxDQUFDO2FBQ1Q7U0FDRjtJQUNILENBQUM7O2lIQWpEVSxvQkFBb0I7cUhBQXBCLG9CQUFvQixjQURQLE1BQU07MkZBQ25CLG9CQUFvQjtrQkFEaEMsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEFuZ3VsYXJ0aWNzMiB9IGZyb20gJy4uLy4uL2FuZ3VsYXJ0aWNzMi1jb3JlJztcblxuZGVjbGFyZSB2YXIgSW50ZXJjb206IGFueTtcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBBbmd1bGFydGljczJJbnRlcmNvbSB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYW5ndWxhcnRpY3MyOiBBbmd1bGFydGljczIpIHtcbiAgICB0aGlzLmFuZ3VsYXJ0aWNzMi5zZXRVc2VyUHJvcGVydGllcy5zdWJzY3JpYmUoeCA9PiB0aGlzLnNldFVzZXJQcm9wZXJ0aWVzKHgpKTtcbiAgICB0aGlzLmFuZ3VsYXJ0aWNzMi5zZXRVc2VyUHJvcGVydGllc09uY2Uuc3Vic2NyaWJlKHggPT4gdGhpcy5zZXRVc2VyUHJvcGVydGllcyh4KSk7XG4gIH1cblxuICBzdGFydFRyYWNraW5nKCk6IHZvaWQge1xuICAgIHRoaXMuYW5ndWxhcnRpY3MyLnBhZ2VUcmFja1xuICAgICAgLnBpcGUodGhpcy5hbmd1bGFydGljczIuZmlsdGVyRGV2ZWxvcGVyTW9kZSgpKVxuICAgICAgLnN1YnNjcmliZSh4ID0+IHRoaXMucGFnZVRyYWNrKHgucGF0aCkpO1xuICAgIHRoaXMuYW5ndWxhcnRpY3MyLmV2ZW50VHJhY2tcbiAgICAgIC5waXBlKHRoaXMuYW5ndWxhcnRpY3MyLmZpbHRlckRldmVsb3Blck1vZGUoKSlcbiAgICAgIC5zdWJzY3JpYmUoeCA9PiB0aGlzLmV2ZW50VHJhY2soeC5hY3Rpb24sIHgucHJvcGVydGllcykpO1xuICB9XG5cbiAgcGFnZVRyYWNrKHBhdGg6IHN0cmluZykge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLmV2ZW50VHJhY2soJ1BhZ2V2aWV3Jywge1xuICAgICAgICB1cmw6IHBhdGgsXG4gICAgICB9KTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBpZiAoIShlIGluc3RhbmNlb2YgUmVmZXJlbmNlRXJyb3IpKSB7XG4gICAgICAgIHRocm93IGU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgZXZlbnRUcmFjayhhY3Rpb246IHN0cmluZywgcHJvcGVydGllczogYW55KSB7XG4gICAgdHJ5IHtcbiAgICAgIEludGVyY29tKCd0cmFja0V2ZW50JywgYWN0aW9uLCBwcm9wZXJ0aWVzKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBpZiAoIShlIGluc3RhbmNlb2YgUmVmZXJlbmNlRXJyb3IpKSB7XG4gICAgICAgIHRocm93IGU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgc2V0VXNlclByb3BlcnRpZXMocHJvcGVydGllczogYW55KSB7XG4gICAgdHJ5IHtcbiAgICAgIGlmIChwcm9wZXJ0aWVzLnVzZXJJZCAmJiAhcHJvcGVydGllcy51c2VyX2lkKSB7XG4gICAgICAgIHByb3BlcnRpZXMudXNlcl9pZCA9IHByb3BlcnRpZXMudXNlcklkO1xuICAgICAgfVxuXG4gICAgICBJbnRlcmNvbSgnYm9vdCcsIHByb3BlcnRpZXMpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGlmICghKGUgaW5zdGFuY2VvZiBSZWZlcmVuY2VFcnJvcikpIHtcbiAgICAgICAgdGhyb3cgZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
@@ -0,0 +1,40 @@
|
|
1
|
+
import { Injectable } from '@angular/core';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
import * as i1 from "../../angulartics2-core";
|
4
|
+
export class Angulartics2Kissmetrics {
|
5
|
+
constructor(angulartics2) {
|
6
|
+
this.angulartics2 = angulartics2;
|
7
|
+
if (typeof _kmq === 'undefined') {
|
8
|
+
_kmq = [];
|
9
|
+
}
|
10
|
+
this.angulartics2.setUsername.subscribe((x) => this.setUsername(x));
|
11
|
+
this.angulartics2.setUserProperties.subscribe(x => this.setUserProperties(x));
|
12
|
+
}
|
13
|
+
startTracking() {
|
14
|
+
this.angulartics2.pageTrack
|
15
|
+
.pipe(this.angulartics2.filterDeveloperMode())
|
16
|
+
.subscribe(x => this.pageTrack(x.path));
|
17
|
+
this.angulartics2.eventTrack
|
18
|
+
.pipe(this.angulartics2.filterDeveloperMode())
|
19
|
+
.subscribe(x => this.eventTrack(x.action, x.properties));
|
20
|
+
}
|
21
|
+
pageTrack(path) {
|
22
|
+
_kmq.push(['record', 'Pageview', { Page: path }]);
|
23
|
+
}
|
24
|
+
eventTrack(action, properties) {
|
25
|
+
_kmq.push(['record', action, properties]);
|
26
|
+
}
|
27
|
+
setUsername(userId) {
|
28
|
+
_kmq.push(['identify', userId]);
|
29
|
+
}
|
30
|
+
setUserProperties(properties) {
|
31
|
+
_kmq.push(['set', properties]);
|
32
|
+
}
|
33
|
+
}
|
34
|
+
Angulartics2Kissmetrics.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: Angulartics2Kissmetrics, deps: [{ token: i1.Angulartics2 }], target: i0.ɵɵFactoryTarget.Injectable });
|
35
|
+
Angulartics2Kissmetrics.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: Angulartics2Kissmetrics, providedIn: 'root' });
|
36
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: Angulartics2Kissmetrics, decorators: [{
|
37
|
+
type: Injectable,
|
38
|
+
args: [{ providedIn: 'root' }]
|
39
|
+
}], ctorParameters: function () { return [{ type: i1.Angulartics2 }]; } });
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2lzc21ldHJpY3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3Byb3ZpZGVycy9raXNzbWV0cmljcy9raXNzbWV0cmljcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFPM0MsTUFBTSxPQUFPLHVCQUF1QjtJQUNsQyxZQUFvQixZQUEwQjtRQUExQixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUM1QyxJQUFJLE9BQU8sSUFBSSxLQUFLLFdBQVcsRUFBRTtZQUMvQixJQUFJLEdBQUcsRUFBRSxDQUFDO1NBQ1g7UUFDRCxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFTLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM1RSxJQUFJLENBQUMsWUFBWSxDQUFDLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2hGLENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTO2FBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLG1CQUFtQixFQUFFLENBQUM7YUFDN0MsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUMxQyxJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVU7YUFDekIsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsbUJBQW1CLEVBQUUsQ0FBQzthQUM3QyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVELFNBQVMsQ0FBQyxJQUFZO1FBQ3BCLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLEVBQUUsVUFBVSxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBRUQsVUFBVSxDQUFDLE1BQWMsRUFBRSxVQUFlO1FBQ3hDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLEVBQUUsTUFBTSxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVELFdBQVcsQ0FBQyxNQUFjO1FBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxVQUFVLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQsaUJBQWlCLENBQUMsVUFBZTtRQUMvQixJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFDakMsQ0FBQzs7b0hBaENVLHVCQUF1Qjt3SEFBdkIsdUJBQXVCLGNBRFYsTUFBTTsyRkFDbkIsdUJBQXVCO2tCQURuQyxVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQW5ndWxhcnRpY3MyIH0gZnJvbSAnLi4vLi4vYW5ndWxhcnRpY3MyLWNvcmUnO1xuXG5kZWNsYXJlIHZhciBfa21xOiBhbnk7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgQW5ndWxhcnRpY3MyS2lzc21ldHJpY3Mge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGFuZ3VsYXJ0aWNzMjogQW5ndWxhcnRpY3MyKSB7XG4gICAgaWYgKHR5cGVvZiBfa21xID09PSAndW5kZWZpbmVkJykge1xuICAgICAgX2ttcSA9IFtdO1xuICAgIH1cbiAgICB0aGlzLmFuZ3VsYXJ0aWNzMi5zZXRVc2VybmFtZS5zdWJzY3JpYmUoKHg6IHN0cmluZykgPT4gdGhpcy5zZXRVc2VybmFtZSh4KSk7XG4gICAgdGhpcy5hbmd1bGFydGljczIuc2V0VXNlclByb3BlcnRpZXMuc3Vic2NyaWJlKHggPT4gdGhpcy5zZXRVc2VyUHJvcGVydGllcyh4KSk7XG4gIH1cblxuICBzdGFydFRyYWNraW5nKCk6IHZvaWQge1xuICAgIHRoaXMuYW5ndWxhcnRpY3MyLnBhZ2VUcmFja1xuICAgICAgLnBpcGUodGhpcy5hbmd1bGFydGljczIuZmlsdGVyRGV2ZWxvcGVyTW9kZSgpKVxuICAgICAgLnN1YnNjcmliZSh4ID0+IHRoaXMucGFnZVRyYWNrKHgucGF0aCkpO1xuICAgIHRoaXMuYW5ndWxhcnRpY3MyLmV2ZW50VHJhY2tcbiAgICAgIC5waXBlKHRoaXMuYW5ndWxhcnRpY3MyLmZpbHRlckRldmVsb3Blck1vZGUoKSlcbiAgICAgIC5zdWJzY3JpYmUoeCA9PiB0aGlzLmV2ZW50VHJhY2soeC5hY3Rpb24sIHgucHJvcGVydGllcykpO1xuICB9XG5cbiAgcGFnZVRyYWNrKHBhdGg6IHN0cmluZykge1xuICAgIF9rbXEucHVzaChbJ3JlY29yZCcsICdQYWdldmlldycsIHsgUGFnZTogcGF0aCB9XSk7XG4gIH1cblxuICBldmVudFRyYWNrKGFjdGlvbjogc3RyaW5nLCBwcm9wZXJ0aWVzOiBhbnkpIHtcbiAgICBfa21xLnB1c2goWydyZWNvcmQnLCBhY3Rpb24sIHByb3BlcnRpZXNdKTtcbiAgfVxuXG4gIHNldFVzZXJuYW1lKHVzZXJJZDogc3RyaW5nKSB7XG4gICAgX2ttcS5wdXNoKFsnaWRlbnRpZnknLCB1c2VySWRdKTtcbiAgfVxuXG4gIHNldFVzZXJQcm9wZXJ0aWVzKHByb3BlcnRpZXM6IGFueSkge1xuICAgIF9rbXEucHVzaChbJ3NldCcsIHByb3BlcnRpZXNdKTtcbiAgfVxufVxuIl19
|
@@ -0,0 +1,59 @@
|
|
1
|
+
import { Injectable } from '@angular/core';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
import * as i1 from "../../angulartics2-core";
|
4
|
+
export class Angulartics2LaunchByAdobe {
|
5
|
+
constructor(angulartics2) {
|
6
|
+
this.angulartics2 = angulartics2;
|
7
|
+
this.payload = {};
|
8
|
+
if ('undefined' === typeof _satellite) {
|
9
|
+
console.warn('Launch not found!');
|
10
|
+
}
|
11
|
+
this.angulartics2.setUsername.subscribe((x) => this.setUsername(x));
|
12
|
+
this.angulartics2.setUserProperties.subscribe(x => this.setUserProperties(x));
|
13
|
+
}
|
14
|
+
setUsername(userId) {
|
15
|
+
if ('undefined' !== typeof userId && userId) {
|
16
|
+
this.payload.userId = userId;
|
17
|
+
}
|
18
|
+
}
|
19
|
+
setUserProperties(properties) {
|
20
|
+
if ('undefined' !== typeof properties && properties) {
|
21
|
+
this.payload.properties = properties;
|
22
|
+
}
|
23
|
+
}
|
24
|
+
startTracking() {
|
25
|
+
this.angulartics2.pageTrack
|
26
|
+
.pipe(this.angulartics2.filterDeveloperMode())
|
27
|
+
.subscribe(x => this.pageTrack(x.path));
|
28
|
+
this.angulartics2.eventTrack
|
29
|
+
.pipe(this.angulartics2.filterDeveloperMode())
|
30
|
+
.subscribe(x => this.eventTrack(x.action, x.properties));
|
31
|
+
}
|
32
|
+
pageTrack(path) {
|
33
|
+
this.payload = this.payload || {};
|
34
|
+
this.payload.path = path;
|
35
|
+
if ('undefined' !== typeof _satellite && _satellite) {
|
36
|
+
_satellite.track('pageTrack', this.payload);
|
37
|
+
}
|
38
|
+
}
|
39
|
+
/**
|
40
|
+
* @param action associated with the event
|
41
|
+
* @param properties associated with the event
|
42
|
+
*/
|
43
|
+
eventTrack(action, properties) {
|
44
|
+
properties = properties || {};
|
45
|
+
// add properties to payload
|
46
|
+
this.payload.action = action;
|
47
|
+
this.payload.eventProperties = properties;
|
48
|
+
if ('undefined' !== typeof _satellite && _satellite) {
|
49
|
+
_satellite.track('eventTrack', this.payload);
|
50
|
+
}
|
51
|
+
}
|
52
|
+
}
|
53
|
+
Angulartics2LaunchByAdobe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: Angulartics2LaunchByAdobe, deps: [{ token: i1.Angulartics2 }], target: i0.ɵɵFactoryTarget.Injectable });
|
54
|
+
Angulartics2LaunchByAdobe.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: Angulartics2LaunchByAdobe, providedIn: 'root' });
|
55
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: Angulartics2LaunchByAdobe, decorators: [{
|
56
|
+
type: Injectable,
|
57
|
+
args: [{ providedIn: 'root' }]
|
58
|
+
}], ctorParameters: function () { return [{ type: i1.Angulartics2 }]; } });
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF1bmNoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9wcm92aWRlcnMvbGF1bmNoL2xhdW5jaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFPM0MsTUFBTSxPQUFPLHlCQUF5QjtJQUdwQyxZQUFzQixZQUEwQjtRQUExQixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUZoRCxZQUFPLEdBQVEsRUFBRSxDQUFDO1FBR2hCLElBQUksV0FBVyxLQUFLLE9BQU8sVUFBVSxFQUFFO1lBQ3JDLE9BQU8sQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQztTQUNuQztRQUNELElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzVFLElBQUksQ0FBQyxZQUFZLENBQUMsaUJBQWlCLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDaEYsQ0FBQztJQUVELFdBQVcsQ0FBQyxNQUF3QjtRQUNsQyxJQUFJLFdBQVcsS0FBSyxPQUFPLE1BQU0sSUFBSSxNQUFNLEVBQUU7WUFDM0MsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1NBQzlCO0lBQ0gsQ0FBQztJQUVELGlCQUFpQixDQUFDLFVBQWU7UUFDL0IsSUFBSSxXQUFXLEtBQUssT0FBTyxVQUFVLElBQUksVUFBVSxFQUFFO1lBQ25ELElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztTQUN0QztJQUNILENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTO2FBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLG1CQUFtQixFQUFFLENBQUM7YUFDN0MsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUMxQyxJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVU7YUFDekIsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsbUJBQW1CLEVBQUUsQ0FBQzthQUM3QyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVELFNBQVMsQ0FBQyxJQUFZO1FBQ3BCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDbEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBRXpCLElBQUksV0FBVyxLQUFLLE9BQU8sVUFBVSxJQUFJLFVBQVUsRUFBRTtZQUNuRCxVQUFVLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDN0M7SUFDSCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsVUFBVSxDQUFDLE1BQWMsRUFBRSxVQUFlO1FBQ3hDLFVBQVUsR0FBRyxVQUFVLElBQUksRUFBRSxDQUFDO1FBRTlCLDRCQUE0QjtRQUM1QixJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDN0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxlQUFlLEdBQUcsVUFBVSxDQUFDO1FBRTFDLElBQUksV0FBVyxLQUFLLE9BQU8sVUFBVSxJQUFJLFVBQVUsRUFBRTtZQUNuRCxVQUFVLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7U0FDOUM7SUFDSCxDQUFDOztzSEF2RFUseUJBQXlCOzBIQUF6Qix5QkFBeUIsY0FEWixNQUFNOzJGQUNuQix5QkFBeUI7a0JBRHJDLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBBbmd1bGFydGljczIgfSBmcm9tICcuLi8uLi9hbmd1bGFydGljczItY29yZSc7XG5cbmRlY2xhcmUgY29uc3QgX3NhdGVsbGl0ZTogYW55O1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIEFuZ3VsYXJ0aWNzMkxhdW5jaEJ5QWRvYmUge1xuICBwYXlsb2FkOiBhbnkgPSB7fTtcblxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgYW5ndWxhcnRpY3MyOiBBbmd1bGFydGljczIpIHtcbiAgICBpZiAoJ3VuZGVmaW5lZCcgPT09IHR5cGVvZiBfc2F0ZWxsaXRlKSB7XG4gICAgICBjb25zb2xlLndhcm4oJ0xhdW5jaCBub3QgZm91bmQhJyk7XG4gICAgfVxuICAgIHRoaXMuYW5ndWxhcnRpY3MyLnNldFVzZXJuYW1lLnN1YnNjcmliZSgoeDogc3RyaW5nKSA9PiB0aGlzLnNldFVzZXJuYW1lKHgpKTtcbiAgICB0aGlzLmFuZ3VsYXJ0aWNzMi5zZXRVc2VyUHJvcGVydGllcy5zdWJzY3JpYmUoeCA9PiB0aGlzLnNldFVzZXJQcm9wZXJ0aWVzKHgpKTtcbiAgfVxuXG4gIHNldFVzZXJuYW1lKHVzZXJJZDogc3RyaW5nIHwgYm9vbGVhbikge1xuICAgIGlmICgndW5kZWZpbmVkJyAhPT0gdHlwZW9mIHVzZXJJZCAmJiB1c2VySWQpIHtcbiAgICAgIHRoaXMucGF5bG9hZC51c2VySWQgPSB1c2VySWQ7XG4gICAgfVxuICB9XG5cbiAgc2V0VXNlclByb3BlcnRpZXMocHJvcGVydGllczogYW55KSB7XG4gICAgaWYgKCd1bmRlZmluZWQnICE9PSB0eXBlb2YgcHJvcGVydGllcyAmJiBwcm9wZXJ0aWVzKSB7XG4gICAgICB0aGlzLnBheWxvYWQucHJvcGVydGllcyA9IHByb3BlcnRpZXM7XG4gICAgfVxuICB9XG5cbiAgc3RhcnRUcmFja2luZygpIHtcbiAgICB0aGlzLmFuZ3VsYXJ0aWNzMi5wYWdlVHJhY2tcbiAgICAgIC5waXBlKHRoaXMuYW5ndWxhcnRpY3MyLmZpbHRlckRldmVsb3Blck1vZGUoKSlcbiAgICAgIC5zdWJzY3JpYmUoeCA9PiB0aGlzLnBhZ2VUcmFjayh4LnBhdGgpKTtcbiAgICB0aGlzLmFuZ3VsYXJ0aWNzMi5ldmVudFRyYWNrXG4gICAgICAucGlwZSh0aGlzLmFuZ3VsYXJ0aWNzMi5maWx0ZXJEZXZlbG9wZXJNb2RlKCkpXG4gICAgICAuc3Vic2NyaWJlKHggPT4gdGhpcy5ldmVudFRyYWNrKHguYWN0aW9uLCB4LnByb3BlcnRpZXMpKTtcbiAgfVxuXG4gIHBhZ2VUcmFjayhwYXRoOiBzdHJpbmcpIHtcbiAgICB0aGlzLnBheWxvYWQgPSB0aGlzLnBheWxvYWQgfHwge307XG4gICAgdGhpcy5wYXlsb2FkLnBhdGggPSBwYXRoO1xuXG4gICAgaWYgKCd1bmRlZmluZWQnICE9PSB0eXBlb2YgX3NhdGVsbGl0ZSAmJiBfc2F0ZWxsaXRlKSB7XG4gICAgICBfc2F0ZWxsaXRlLnRyYWNrKCdwYWdlVHJhY2snLCB0aGlzLnBheWxvYWQpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0gYWN0aW9uIGFzc29jaWF0ZWQgd2l0aCB0aGUgZXZlbnRcbiAgICogQHBhcmFtIHByb3BlcnRpZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBldmVudFxuICAgKi9cbiAgZXZlbnRUcmFjayhhY3Rpb246IHN0cmluZywgcHJvcGVydGllczogYW55KSB7XG4gICAgcHJvcGVydGllcyA9IHByb3BlcnRpZXMgfHwge307XG5cbiAgICAvLyBhZGQgcHJvcGVydGllcyB0byBwYXlsb2FkXG4gICAgdGhpcy5wYXlsb2FkLmFjdGlvbiA9IGFjdGlvbjtcbiAgICB0aGlzLnBheWxvYWQuZXZlbnRQcm9wZXJ0aWVzID0gcHJvcGVydGllcztcblxuICAgIGlmICgndW5kZWZpbmVkJyAhPT0gdHlwZW9mIF9zYXRlbGxpdGUgJiYgX3NhdGVsbGl0ZSkge1xuICAgICAgX3NhdGVsbGl0ZS50cmFjaygnZXZlbnRUcmFjaycsIHRoaXMucGF5bG9hZCk7XG4gICAgfVxuICB9XG59XG4iXX0=
|