simpo-component-library 3.6.632 → 3.6.633
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/esm2022/lib/services/cart.service.mjs +6 -7
- package/fesm2022/simpo-component-library.mjs +158 -158
- package/fesm2022/simpo-component-library.mjs.map +1 -1
- package/lib/components/input-fields/input-fields.component.d.ts +1 -1
- package/lib/ecommerce/sections/featured-category/featured-category.component.d.ts +1 -1
- package/lib/ecommerce/sections/featured-category/featured-collection.component.d.ts +1 -1
- package/lib/ecommerce/sections/new-collection/new-collection.component.d.ts +1 -1
- package/lib/ecommerce/sections/product-desc/product-desc.component.d.ts +1 -1
- package/lib/ecommerce/sections/schemes/schemes.component.d.ts +1 -1
- package/lib/sections/banner-carousel/banner-carousel.component.d.ts +1 -1
- package/lib/sections/image-grid-hotspot/image-grid-hotspot.component.d.ts +1 -1
- package/lib/sections/image-grid-section/image-grid-section.component.d.ts +1 -1
- package/lib/sections/pricing-section/pricing-section.component.d.ts +1 -1
- package/lib/services/cart.service.d.ts +1 -3
- package/package.json +1 -1
- package/simpo-component-library-3.6.633.tgz +0 -0
- package/simpo-component-library-3.6.632.tgz +0 -0
|
@@ -5,12 +5,11 @@ import { firstValueFrom } from 'rxjs';
|
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
import * as i1 from "./storage.service";
|
|
7
7
|
import * as i2 from "./rest.service";
|
|
8
|
-
import
|
|
8
|
+
// import { AnalyticsService } from './analytics.service';
|
|
9
9
|
export class CartService {
|
|
10
|
-
constructor(storageService, restService
|
|
10
|
+
constructor(storageService, restService) {
|
|
11
11
|
this.storageService = storageService;
|
|
12
12
|
this.restService = restService;
|
|
13
|
-
this.analyticsService = analyticsService;
|
|
14
13
|
}
|
|
15
14
|
addItemFromCartPage(product, userCart) {
|
|
16
15
|
if (product.quantity) {
|
|
@@ -55,7 +54,7 @@ export class CartService {
|
|
|
55
54
|
if (variantId) {
|
|
56
55
|
analyticsEvent['VARIANT_ID'] = variantId;
|
|
57
56
|
}
|
|
58
|
-
this.analyticsService.trackUser(analyticsEvent, type);
|
|
57
|
+
// this.analyticsService.trackUser(analyticsEvent, type);
|
|
59
58
|
}
|
|
60
59
|
addItemToFavourite(product, varientId) {
|
|
61
60
|
const orderedItem = this.objectMapper(product, varientId);
|
|
@@ -111,7 +110,7 @@ export class CartService {
|
|
|
111
110
|
objectMapper(product, variantId) {
|
|
112
111
|
return new OrderedItems(product, variantId);
|
|
113
112
|
}
|
|
114
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CartService, deps: [{ token: i1.StorageServiceService }, { token: i2.RestService }
|
|
113
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CartService, deps: [{ token: i1.StorageServiceService }, { token: i2.RestService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
115
114
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CartService, providedIn: 'root' }); }
|
|
116
115
|
}
|
|
117
116
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CartService, decorators: [{
|
|
@@ -119,5 +118,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
119
118
|
args: [{
|
|
120
119
|
providedIn: 'root',
|
|
121
120
|
}]
|
|
122
|
-
}], ctorParameters: () => [{ type: i1.StorageServiceService }, { type: i2.RestService }
|
|
123
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FydC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2ltcG8tdWkvc3JjL2xpYi9zZXJ2aWNlcy9jYXJ0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixVQUFVLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDakUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ3RFLE9BQU8sRUFBVyx5QkFBeUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBS3ZGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7O0FBTXRDLE1BQU0sT0FBTyxXQUFXO0lBQ3RCLFlBQ21CLGNBQXFDLEVBQ3JDLFdBQXdCLEVBQ3hCLGdCQUFrQztRQUZsQyxtQkFBYyxHQUFkLGNBQWMsQ0FBdUI7UUFDckMsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtJQUVyRCxDQUFDO0lBR00sbUJBQW1CLENBQUMsT0FBcUIsRUFBRSxRQUFhO1FBQzdELElBQUksT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3JCLCtCQUErQjtZQUMvQiw4REFBOEQ7WUFDOUQsdUNBQXVDO1lBQ3ZDLHdCQUF3QjtZQUN4QixNQUFNO1lBQ04sSUFBSSxDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUF1QixDQUFDLENBQUM7WUFDOUQsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNoRCxDQUFDO2FBQU0sQ0FBQztZQUNOLHdCQUF3QjtZQUN4QixJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDakMsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNoRCxDQUFDO0lBQ0gsQ0FBQztJQUNNLHVCQUF1QixDQUFDLE9BQXFCLEVBQUUsWUFBaUI7UUFDckUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNsRCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFDTSwwQkFBMEIsQ0FBQyxPQUFxQixFQUFFLFlBQWlCO1FBQ3hFLElBQUksQ0FBQyxjQUFjLENBQUMseUJBQXlCLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2pFLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVNLGFBQWEsQ0FBQyxPQUErQixFQUFFLFNBQWtCO1FBQ3RFLElBQUksT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3JCLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLGFBQWEsRUFBRSxTQUFTLENBQUMsQ0FBQztZQUVwRSxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQWtCLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFDckUsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLGdCQUFnQixDQUFDLFdBQTJCLENBQUMsQ0FBQztRQUMzRSxDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLGtCQUFrQixFQUFFLFNBQVMsQ0FBQyxDQUFDO1lBQ3pFLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLE9BQWtCLENBQUMsQ0FBQztRQUNyRCxDQUFDO0lBQ0gsQ0FBQztJQUVNLG9CQUFvQixDQUN6QixTQUFpQixFQUNqQixJQUF3QyxFQUN4QyxTQUFrQjtRQUdsQixNQUFNLGNBQWMsR0FBUTtZQUMxQixVQUFVLEVBQUUsU0FBUztZQUNyQixRQUFRLEVBQUUsQ0FBQztTQUNaLENBQUM7UUFFRixJQUFJLFNBQVMsRUFBRSxDQUFDO1lBQ2QsY0FBYyxDQUFDLFlBQVksQ0FBQyxHQUFHLFNBQVMsQ0FBQztRQUMzQyxDQUFDO1FBRUQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUNNLGtCQUFrQixDQUFDLE9BQWdCLEVBQUUsU0FBa0I7UUFFNUQsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDMUQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRU0sS0FBSyxDQUFDLGNBQWMsQ0FBQyxPQUFnQixFQUFFLFNBQWtCO1FBQzlELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBRTFELE1BQU0sSUFBSSxHQUFnQixJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBRXhELElBQUksSUFBSSxFQUFFLENBQUM7WUFDVCxNQUFNLE9BQU8sR0FBRyxJQUFJLHlCQUF5QixDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsWUFBWSxFQUFFLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztZQUV4RixJQUFJLENBQUM7Z0JBQ0gsTUFBTSxjQUFjLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztnQkFDN0QsT0FBTyxJQUFJLENBQUM7WUFDZCxDQUFDO1lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztnQkFDZixPQUFPLENBQUMsS0FBSyxDQUFDLG9DQUFvQyxFQUFFLEtBQUssQ0FBQyxDQUFDO2dCQUMzRCxPQUFPLEtBQUssQ0FBQztZQUNmLENBQUM7UUFFSCxDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQztnQkFDSCxNQUFNLFNBQVMsR0FBUSxNQUFNLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLENBQUM7Z0JBRWhFLE1BQU0sYUFBYSxHQUFtQixNQUFNLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO29CQUMxRSxTQUFTLENBQUMsU0FBUyxHQUFHLENBQUMsS0FBVSxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztvQkFDbkUsU0FBUyxDQUFDLE9BQU8sR0FBRyxDQUFDLEtBQVUsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ2pFLENBQUMsQ0FBQyxDQUFDO2dCQUVILE1BQU0sa0JBQWtCLEdBQUcsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQWtCLEVBQUUsRUFBRSxDQUNuRSxJQUFJLENBQUMsTUFBTSxLQUFLLE9BQU8sQ0FBQyxNQUFNO29CQUM5QixDQUFDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxLQUFLLENBQUMsSUFBSSxPQUFPLENBQUMsU0FBUyxLQUFLLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FDN0UsQ0FBQztnQkFFRixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztvQkFDeEIsTUFBTSxJQUFJLENBQUMsY0FBYyxDQUFDLGlCQUFpQixDQUFDLFdBQVcsQ0FBQyxDQUFDO29CQUN6RCxPQUFPLElBQUksQ0FBQztnQkFDZCxDQUFDO2dCQUVELE9BQU8sS0FBSyxDQUFDO1lBRWYsQ0FBQztZQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7Z0JBQ2YsT0FBTyxDQUFDLEtBQUssQ0FBQyxnREFBZ0QsRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDdkUsT0FBTyxLQUFLLENBQUM7WUFDZixDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFHTSxvQkFBb0IsQ0FBQyxPQUFxQjtRQUMvQyxJQUFJLENBQUMsY0FBYyxDQUFDLG9CQUFvQixDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFDTSx5QkFBeUIsQ0FBQyxXQUF5QjtRQUN4RCxJQUFJLENBQUMsY0FBYyxDQUFDLG9CQUFvQixDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFDTSx1QkFBdUIsQ0FBQyxTQUFpQjtRQUM5QyxJQUFJLENBQUMsY0FBYyxDQUFDLHlCQUF5QixDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFDTSxrQkFBa0IsQ0FBQyxPQUErQjtRQUN2RCxJQUFJLENBQUMsY0FBYyxDQUFDLHFCQUFxQixDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBQ08sWUFBWSxDQUFDLE9BQWdCLEVBQUUsU0FBa0I7UUFDdkQsT0FBTyxJQUFJLFlBQVksQ0FBQyxPQUFPLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDOUMsQ0FBQzsrR0EvSFUsV0FBVzttSEFBWCxXQUFXLGNBRlYsTUFBTTs7NEZBRVAsV0FBVztrQkFIdkIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFdmVudEVtaXR0ZXIsIEluamVjdGFibGUsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPcmRlcmVkSXRlbXMgfSBmcm9tICcuLi9lY29tbWVyY2Uvc3R5bGVzL09yZGVyZWRJdGVtcy5tb2RhbCc7XHJcbmltcG9ydCB7IFByb2R1Y3QsIHN5bmNJdGVtVG9TZXJ2ZXJEQlJlcXVlc3QgfSBmcm9tICcuLi9lY29tbWVyY2Uvc3R5bGVzL3Byb2R1Y3QubW9kYWwnO1xyXG5pbXBvcnQgeyBSZXN0U2VydmljZSB9IGZyb20gJy4vcmVzdC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgU3RvcmFnZVNlcnZpY2VTZXJ2aWNlIH0gZnJvbSAnLi9zdG9yYWdlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDYXJ0IH0gZnJvbSAnLi4vZWNvbW1lcmNlL3N0eWxlcy9jYXJ0Lm1vZGFsJztcclxuaW1wb3J0IHsgVXNlciB9IGZyb20gJy4uL2Vjb21tZXJjZS9zdHlsZXMvdXNlci5tb2RhbCc7XHJcbmltcG9ydCB7IGZpcnN0VmFsdWVGcm9tIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEFuYWx5dGljc1NlcnZpY2UgfSBmcm9tICcuL2FuYWx5dGljcy5zZXJ2aWNlJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDYXJ0U2VydmljZSB7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHN0b3JhZ2VTZXJ2aWNlOiBTdG9yYWdlU2VydmljZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlc3RTZXJ2aWNlOiBSZXN0U2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgYW5hbHl0aWNzU2VydmljZTogQW5hbHl0aWNzU2VydmljZVxyXG4gICkge1xyXG4gIH1cclxuXHJcblxyXG4gIHB1YmxpYyBhZGRJdGVtRnJvbUNhcnRQYWdlKHByb2R1Y3Q6IE9yZGVyZWRJdGVtcywgdXNlckNhcnQ6IGFueSkge1xyXG4gICAgaWYgKHByb2R1Y3QucXVhbnRpdHkpIHtcclxuICAgICAgLy8gbGV0IHByb2R1Y3RJZHg6IG51bWJlciA9IC0xO1xyXG4gICAgICAvLyBVc2VyQ2FydC5vcmRlcmVkSXRlbXMuZm9yRWFjaCgoaXRlbTogT3JkZXJlZEl0ZW1zLCBpZHgpPT4ge1xyXG4gICAgICAvLyAgIGlmIChpdGVtLml0ZW1JZCA9PSBwcm9kdWN0Lml0ZW1JZClcclxuICAgICAgLy8gICAgIHByb2R1Y3RJZHggPSBpZHg7XHJcbiAgICAgIC8vIH0pO1xyXG4gICAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmFkZFByb2R1Y3RUb0NhcnQocHJvZHVjdCBhcyBPcmRlcmVkSXRlbXMpO1xyXG4gICAgICByZXR1cm4gdGhpcy5yZXN0U2VydmljZS5hZGRJdGVtVG9EQih1c2VyQ2FydCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAvLyByZW1vdmUgaXRlbSBmcm9tIGNhcnRcclxuICAgICAgdGhpcy5yZW1vdmVJdGVtRnJvbUNhcnQocHJvZHVjdCk7XHJcbiAgICAgIHJldHVybiB0aGlzLnJlc3RTZXJ2aWNlLmFkZEl0ZW1Ub0RCKHVzZXJDYXJ0KTtcclxuICAgIH1cclxuICB9XHJcbiAgcHVibGljIGFkZEl0ZW1Gcm9tV2lzaGxpc3RQYWdlKHByb2R1Y3Q6IE9yZGVyZWRJdGVtcywgdXNlcldpc2hsaXN0OiBhbnkpIHtcclxuICAgIHRoaXMuc3RvcmFnZVNlcnZpY2UuYWRkUHJvZHVjdFRvV2lzaGxpc3QocHJvZHVjdCk7XHJcbiAgICByZXR1cm4gdGhpcy5yZXN0U2VydmljZS5hZGRJdGVtVG9EQih1c2VyV2lzaGxpc3QpO1xyXG4gIH1cclxuICBwdWJsaWMgcmVtb3ZlSXRlbUZyb21XaXNobGlzdFBhZ2UocHJvZHVjdDogT3JkZXJlZEl0ZW1zLCB1c2VyV2lzaGxpc3Q6IGFueSkge1xyXG4gICAgdGhpcy5zdG9yYWdlU2VydmljZS5yZW1vdmVQcm9kdWN0RnJvbVdpc2hsaXN0KHByb2R1Y3QudmFyaWVudElkKTtcclxuICAgIHJldHVybiB0aGlzLnJlc3RTZXJ2aWNlLmFkZEl0ZW1Ub0RCKHVzZXJXaXNobGlzdCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYWRkSXRlbVRvQ2FydChwcm9kdWN0OiBQcm9kdWN0IHwgT3JkZXJlZEl0ZW1zLCB2YXJpZW50SWQ/OiBzdHJpbmcpIHtcclxuICAgIGlmIChwcm9kdWN0LnF1YW50aXR5KSB7XHJcbiAgICAgIHRoaXMuY2FwdHVyZUNhcnRBbmFseXRpY3MocHJvZHVjdC5pdGVtSWQsICdBRERfVE9fQ0FSVCcsIHZhcmllbnRJZCk7XHJcblxyXG4gICAgICBjb25zdCBvcmRlcmVkSXRlbSA9IHRoaXMub2JqZWN0TWFwcGVyKHByb2R1Y3QgYXMgUHJvZHVjdCwgdmFyaWVudElkKTtcclxuICAgICAgcmV0dXJuIHRoaXMuc3RvcmFnZVNlcnZpY2UuYWRkUHJvZHVjdFRvQ2FydChvcmRlcmVkSXRlbSBhcyBPcmRlcmVkSXRlbXMpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5jYXB0dXJlQ2FydEFuYWx5dGljcyhwcm9kdWN0Lml0ZW1JZCwgJ1JFTU9WRV9GUk9NX0NBUlQnLCB2YXJpZW50SWQpO1xyXG4gICAgICByZXR1cm4gdGhpcy5yZW1vdmVJdGVtRnJvbUNhcnQocHJvZHVjdCBhcyBQcm9kdWN0KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBjYXB0dXJlQ2FydEFuYWx5dGljcyhcclxuICAgIHByb2R1Y3RJZDogc3RyaW5nLFxyXG4gICAgdHlwZTogJ0FERF9UT19DQVJUJyB8ICdSRU1PVkVfRlJPTV9DQVJUJyxcclxuICAgIHZhcmlhbnRJZD86IHN0cmluZ1xyXG4gICkge1xyXG5cclxuICAgIGNvbnN0IGFuYWx5dGljc0V2ZW50OiBhbnkgPSB7XHJcbiAgICAgIFBST0RVQ1RfSUQ6IHByb2R1Y3RJZCxcclxuICAgICAgUVVBTlRJVFk6IDFcclxuICAgIH07XHJcblxyXG4gICAgaWYgKHZhcmlhbnRJZCkge1xyXG4gICAgICBhbmFseXRpY3NFdmVudFsnVkFSSUFOVF9JRCddID0gdmFyaWFudElkO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuYW5hbHl0aWNzU2VydmljZS50cmFja1VzZXIoYW5hbHl0aWNzRXZlbnQsIHR5cGUpO1xyXG4gIH1cclxuICBwdWJsaWMgYWRkSXRlbVRvRmF2b3VyaXRlKHByb2R1Y3Q6IFByb2R1Y3QsIHZhcmllbnRJZD86IHN0cmluZykge1xyXG5cclxuICAgIGNvbnN0IG9yZGVyZWRJdGVtID0gdGhpcy5vYmplY3RNYXBwZXIocHJvZHVjdCwgdmFyaWVudElkKTtcclxuICAgIHRoaXMuc3RvcmFnZVNlcnZpY2UuYWRkUHJvZHVjdFRvV2lzaGxpc3Qob3JkZXJlZEl0ZW0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGFkZEl0ZW1Ub1RyaWFsKHByb2R1Y3Q6IFByb2R1Y3QsIHZhcmllbnRJZD86IHN0cmluZyk6IFByb21pc2U8Ym9vbGVhbj4ge1xyXG4gICAgY29uc3Qgb3JkZXJlZEl0ZW0gPSB0aGlzLm9iamVjdE1hcHBlcihwcm9kdWN0LCB2YXJpZW50SWQpO1xyXG5cclxuICAgIGNvbnN0IHVzZXI6IFVzZXIgfCBudWxsID0gdGhpcy5zdG9yYWdlU2VydmljZS5nZXRVc2VyKCk7XHJcblxyXG4gICAgaWYgKHVzZXIpIHtcclxuICAgICAgY29uc3QgcmVxdWVzdCA9IG5ldyBzeW5jSXRlbVRvU2VydmVyREJSZXF1ZXN0KHVzZXIudXNlcklkLCAnVFJJQUxfQ0FSVCcsIFtvcmRlcmVkSXRlbV0pO1xyXG5cclxuICAgICAgdHJ5IHtcclxuICAgICAgICBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLnJlc3RTZXJ2aWNlLmFkZFRyaWFsSXRlbShyZXF1ZXN0KSk7XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgYWRkaW5nIHRyaWFsIGl0ZW0gdG8gc2VydmVyOicsIGVycm9yKTtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgIH1cclxuXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0cnkge1xyXG4gICAgICAgIGNvbnN0IGRiUmVxdWVzdDogYW55ID0gYXdhaXQgdGhpcy5zdG9yYWdlU2VydmljZS5nZXRUcmlhbENhcnQoKTtcclxuXHJcbiAgICAgICAgY29uc3QgdHJpYWxDYXJ0SXRlbTogT3JkZXJlZEl0ZW1zW10gPSBhd2FpdCBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgICAgICBkYlJlcXVlc3Qub25zdWNjZXNzID0gKGV2ZW50OiBhbnkpID0+IHJlc29sdmUoZXZlbnQudGFyZ2V0LnJlc3VsdCk7XHJcbiAgICAgICAgICBkYlJlcXVlc3Qub25lcnJvciA9IChldmVudDogYW55KSA9PiByZWplY3QoZXZlbnQudGFyZ2V0LmVycm9yKTtcclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgY29uc3QgaXNJdGVtQWxyZWFkeUFkZGVkID0gdHJpYWxDYXJ0SXRlbS5zb21lKChpdGVtOiBPcmRlcmVkSXRlbXMpID0+XHJcbiAgICAgICAgICBpdGVtLml0ZW1JZCA9PT0gcHJvZHVjdC5pdGVtSWQgJiZcclxuICAgICAgICAgIChwcm9kdWN0Py5pdGVtVmFyaWFudD8ubGVuZ3RoID09PSAwIHx8IHByb2R1Y3QudmFyaWVudElkID09PSBpdGVtLnZhcmllbnRJZClcclxuICAgICAgICApO1xyXG5cclxuICAgICAgICBpZiAoIWlzSXRlbUFscmVhZHlBZGRlZCkge1xyXG4gICAgICAgICAgYXdhaXQgdGhpcy5zdG9yYWdlU2VydmljZS5hZGRQcm9kdWN0VG9UcmlhbChvcmRlcmVkSXRlbSk7XHJcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuXHJcbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgYWNjZXNzaW5nIHRyaWFsIGNhcnQgZnJvbSBsb2NhbCBzdG9yYWdlOicsIGVycm9yKTtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuICBwdWJsaWMgYWRkSXRlbVRvRmF2RnJvbUNhcnQocHJvZHVjdDogT3JkZXJlZEl0ZW1zKSB7XHJcbiAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmFkZFByb2R1Y3RUb1dpc2hsaXN0KHByb2R1Y3QpO1xyXG4gIH1cclxuICBwdWJsaWMgYWRkT3JkZXJlZEl0ZW1Ub0Zhdm91cml0ZShvcmRlcmVkSXRlbTogT3JkZXJlZEl0ZW1zKSB7XHJcbiAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmFkZFByb2R1Y3RUb1dpc2hsaXN0KG9yZGVyZWRJdGVtKTtcclxuICB9XHJcbiAgcHVibGljIHJlbW92ZUl0ZW1Gcm9tRmF2b3VyaXRlKHZhcmllbnRJZDogc3RyaW5nKSB7XHJcbiAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnJlbW92ZVByb2R1Y3RGcm9tV2lzaGxpc3QodmFyaWVudElkKTtcclxuICB9XHJcbiAgcHVibGljIHJlbW92ZUl0ZW1Gcm9tQ2FydChwcm9kdWN0OiBQcm9kdWN0IHwgT3JkZXJlZEl0ZW1zKSB7XHJcbiAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnJlbW92ZVByb2R1Y3RGcm9tQ2FydChwcm9kdWN0LnZhcmllbnRJZCk7XHJcbiAgfVxyXG4gIHByaXZhdGUgb2JqZWN0TWFwcGVyKHByb2R1Y3Q6IFByb2R1Y3QsIHZhcmlhbnRJZD86IHN0cmluZyk6IE9yZGVyZWRJdGVtcyB7XHJcbiAgICByZXR1cm4gbmV3IE9yZGVyZWRJdGVtcyhwcm9kdWN0LCB2YXJpYW50SWQpO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
121
|
+
}], ctorParameters: () => [{ type: i1.StorageServiceService }, { type: i2.RestService }] });
|
|
122
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FydC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2ltcG8tdWkvc3JjL2xpYi9zZXJ2aWNlcy9jYXJ0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixVQUFVLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDakUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ3RFLE9BQU8sRUFBVyx5QkFBeUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBS3ZGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7QUFDdEMsMERBQTBEO0FBSzFELE1BQU0sT0FBTyxXQUFXO0lBQ3RCLFlBQ21CLGNBQXFDLEVBQ3JDLFdBQXdCO1FBRHhCLG1CQUFjLEdBQWQsY0FBYyxDQUF1QjtRQUNyQyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtJQUczQyxDQUFDO0lBR00sbUJBQW1CLENBQUMsT0FBcUIsRUFBRSxRQUFhO1FBQzdELElBQUksT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3JCLCtCQUErQjtZQUMvQiw4REFBOEQ7WUFDOUQsdUNBQXVDO1lBQ3ZDLHdCQUF3QjtZQUN4QixNQUFNO1lBQ04sSUFBSSxDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUF1QixDQUFDLENBQUM7WUFDOUQsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNoRCxDQUFDO2FBQU0sQ0FBQztZQUNOLHdCQUF3QjtZQUN4QixJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDakMsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNoRCxDQUFDO0lBQ0gsQ0FBQztJQUNNLHVCQUF1QixDQUFDLE9BQXFCLEVBQUUsWUFBaUI7UUFDckUsSUFBSSxD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Qyx5QkFBeUIsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBQ00sa0JBQWtCLENBQUMsT0FBK0I7UUFDdkQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUNPLFlBQVksQ0FBQyxPQUFnQixFQUFFLFNBQWtCO1FBQ3ZELE9BQU8sSUFBSSxZQUFZLENBQUMsT0FBTyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQzlDLENBQUM7K0dBL0hVLFdBQVc7bUhBQVgsV0FBVyxjQUZWLE1BQU07OzRGQUVQLFdBQVc7a0JBSHZCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRXZlbnRFbWl0dGVyLCBJbmplY3RhYmxlLCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgT3JkZXJlZEl0ZW1zIH0gZnJvbSAnLi4vZWNvbW1lcmNlL3N0eWxlcy9PcmRlcmVkSXRlbXMubW9kYWwnO1xyXG5pbXBvcnQgeyBQcm9kdWN0LCBzeW5jSXRlbVRvU2VydmVyREJSZXF1ZXN0IH0gZnJvbSAnLi4vZWNvbW1lcmNlL3N0eWxlcy9wcm9kdWN0Lm1vZGFsJztcclxuaW1wb3J0IHsgUmVzdFNlcnZpY2UgfSBmcm9tICcuL3Jlc3Quc2VydmljZSc7XHJcbmltcG9ydCB7IFN0b3JhZ2VTZXJ2aWNlU2VydmljZSB9IGZyb20gJy4vc3RvcmFnZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ2FydCB9IGZyb20gJy4uL2Vjb21tZXJjZS9zdHlsZXMvY2FydC5tb2RhbCc7XHJcbmltcG9ydCB7IFVzZXIgfSBmcm9tICcuLi9lY29tbWVyY2Uvc3R5bGVzL3VzZXIubW9kYWwnO1xyXG5pbXBvcnQgeyBmaXJzdFZhbHVlRnJvbSB9IGZyb20gJ3J4anMnO1xyXG4vLyBpbXBvcnQgeyBBbmFseXRpY3NTZXJ2aWNlIH0gZnJvbSAnLi9hbmFseXRpY3Muc2VydmljZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ2FydFNlcnZpY2Uge1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBzdG9yYWdlU2VydmljZTogU3RvcmFnZVNlcnZpY2VTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSByZXN0U2VydmljZTogUmVzdFNlcnZpY2UsXHJcbiAgICAvLyBwcml2YXRlIHJlYWRvbmx5IGFuYWx5dGljc1NlcnZpY2U6IEFuYWx5dGljc1NlcnZpY2VcclxuICApIHtcclxuICB9XHJcblxyXG5cclxuICBwdWJsaWMgYWRkSXRlbUZyb21DYXJ0UGFnZShwcm9kdWN0OiBPcmRlcmVkSXRlbXMsIHVzZXJDYXJ0OiBhbnkpIHtcclxuICAgIGlmIChwcm9kdWN0LnF1YW50aXR5KSB7XHJcbiAgICAgIC8vIGxldCBwcm9kdWN0SWR4OiBudW1iZXIgPSAtMTtcclxuICAgICAgLy8gVXNlckNhcnQub3JkZXJlZEl0ZW1zLmZvckVhY2goKGl0ZW06IE9yZGVyZWRJdGVtcywgaWR4KT0+IHtcclxuICAgICAgLy8gICBpZiAoaXRlbS5pdGVtSWQgPT0gcHJvZHVjdC5pdGVtSWQpXHJcbiAgICAgIC8vICAgICBwcm9kdWN0SWR4ID0gaWR4O1xyXG4gICAgICAvLyB9KTtcclxuICAgICAgdGhpcy5zdG9yYWdlU2VydmljZS5hZGRQcm9kdWN0VG9DYXJ0KHByb2R1Y3QgYXMgT3JkZXJlZEl0ZW1zKTtcclxuICAgICAgcmV0dXJuIHRoaXMucmVzdFNlcnZpY2UuYWRkSXRlbVRvREIodXNlckNhcnQpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgLy8gcmVtb3ZlIGl0ZW0gZnJvbSBjYXJ0XHJcbiAgICAgIHRoaXMucmVtb3ZlSXRlbUZyb21DYXJ0KHByb2R1Y3QpO1xyXG4gICAgICByZXR1cm4gdGhpcy5yZXN0U2VydmljZS5hZGRJdGVtVG9EQih1c2VyQ2FydCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHB1YmxpYyBhZGRJdGVtRnJvbVdpc2hsaXN0UGFnZShwcm9kdWN0OiBPcmRlcmVkSXRlbXMsIHVzZXJXaXNobGlzdDogYW55KSB7XHJcbiAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmFkZFByb2R1Y3RUb1dpc2hsaXN0KHByb2R1Y3QpO1xyXG4gICAgcmV0dXJuIHRoaXMucmVzdFNlcnZpY2UuYWRkSXRlbVRvREIodXNlcldpc2hsaXN0KTtcclxuICB9XHJcbiAgcHVibGljIHJlbW92ZUl0ZW1Gcm9tV2lzaGxpc3RQYWdlKHByb2R1Y3Q6IE9yZGVyZWRJdGVtcywgdXNlcldpc2hsaXN0OiBhbnkpIHtcclxuICAgIHRoaXMuc3RvcmFnZVNlcnZpY2UucmVtb3ZlUHJvZHVjdEZyb21XaXNobGlzdChwcm9kdWN0LnZhcmllbnRJZCk7XHJcbiAgICByZXR1cm4gdGhpcy5yZXN0U2VydmljZS5hZGRJdGVtVG9EQih1c2VyV2lzaGxpc3QpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFkZEl0ZW1Ub0NhcnQocHJvZHVjdDogUHJvZHVjdCB8IE9yZGVyZWRJdGVtcywgdmFyaWVudElkPzogc3RyaW5nKSB7XHJcbiAgICBpZiAocHJvZHVjdC5xdWFudGl0eSkge1xyXG4gICAgICB0aGlzLmNhcHR1cmVDYXJ0QW5hbHl0aWNzKHByb2R1Y3QuaXRlbUlkLCAnQUREX1RPX0NBUlQnLCB2YXJpZW50SWQpO1xyXG5cclxuICAgICAgY29uc3Qgb3JkZXJlZEl0ZW0gPSB0aGlzLm9iamVjdE1hcHBlcihwcm9kdWN0IGFzIFByb2R1Y3QsIHZhcmllbnRJZCk7XHJcbiAgICAgIHJldHVybiB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmFkZFByb2R1Y3RUb0NhcnQob3JkZXJlZEl0ZW0gYXMgT3JkZXJlZEl0ZW1zKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuY2FwdHVyZUNhcnRBbmFseXRpY3MocHJvZHVjdC5pdGVtSWQsICdSRU1PVkVfRlJPTV9DQVJUJywgdmFyaWVudElkKTtcclxuICAgICAgcmV0dXJuIHRoaXMucmVtb3ZlSXRlbUZyb21DYXJ0KHByb2R1Y3QgYXMgUHJvZHVjdCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY2FwdHVyZUNhcnRBbmFseXRpY3MoXHJcbiAgICBwcm9kdWN0SWQ6IHN0cmluZyxcclxuICAgIHR5cGU6ICdBRERfVE9fQ0FSVCcgfCAnUkVNT1ZFX0ZST01fQ0FSVCcsXHJcbiAgICB2YXJpYW50SWQ/OiBzdHJpbmdcclxuICApIHtcclxuXHJcbiAgICBjb25zdCBhbmFseXRpY3NFdmVudDogYW55ID0ge1xyXG4gICAgICBQUk9EVUNUX0lEOiBwcm9kdWN0SWQsXHJcbiAgICAgIFFVQU5USVRZOiAxXHJcbiAgICB9O1xyXG5cclxuICAgIGlmICh2YXJpYW50SWQpIHtcclxuICAgICAgYW5hbHl0aWNzRXZlbnRbJ1ZBUklBTlRfSUQnXSA9IHZhcmlhbnRJZDtcclxuICAgIH1cclxuXHJcbiAgICAvLyB0aGlzLmFuYWx5dGljc1NlcnZpY2UudHJhY2tVc2VyKGFuYWx5dGljc0V2ZW50LCB0eXBlKTtcclxuICB9XHJcbiAgcHVibGljIGFkZEl0ZW1Ub0Zhdm91cml0ZShwcm9kdWN0OiBQcm9kdWN0LCB2YXJpZW50SWQ/OiBzdHJpbmcpIHtcclxuXHJcbiAgICBjb25zdCBvcmRlcmVkSXRlbSA9IHRoaXMub2JqZWN0TWFwcGVyKHByb2R1Y3QsIHZhcmllbnRJZCk7XHJcbiAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLmFkZFByb2R1Y3RUb1dpc2hsaXN0KG9yZGVyZWRJdGVtKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBhZGRJdGVtVG9UcmlhbChwcm9kdWN0OiBQcm9kdWN0LCB2YXJpZW50SWQ/OiBzdHJpbmcpOiBQcm9taXNlPGJvb2xlYW4+IHtcclxuICAgIGNvbnN0IG9yZGVyZWRJdGVtID0gdGhpcy5vYmplY3RNYXBwZXIocHJvZHVjdCwgdmFyaWVudElkKTtcclxuXHJcbiAgICBjb25zdCB1c2VyOiBVc2VyIHwgbnVsbCA9IHRoaXMuc3RvcmFnZVNlcnZpY2UuZ2V0VXNlcigpO1xyXG5cclxuICAgIGlmICh1c2VyKSB7XHJcbiAgICAgIGNvbnN0IHJlcXVlc3QgPSBuZXcgc3luY0l0ZW1Ub1NlcnZlckRCUmVxdWVzdCh1c2VyLnVzZXJJZCwgJ1RSSUFMX0NBUlQnLCBbb3JkZXJlZEl0ZW1dKTtcclxuXHJcbiAgICAgIHRyeSB7XHJcbiAgICAgICAgYXdhaXQgZmlyc3RWYWx1ZUZyb20odGhpcy5yZXN0U2VydmljZS5hZGRUcmlhbEl0ZW0ocmVxdWVzdCkpO1xyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGFkZGluZyB0cmlhbCBpdGVtIHRvIHNlcnZlcjonLCBlcnJvcik7XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICB9XHJcblxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdHJ5IHtcclxuICAgICAgICBjb25zdCBkYlJlcXVlc3Q6IGFueSA9IGF3YWl0IHRoaXMuc3RvcmFnZVNlcnZpY2UuZ2V0VHJpYWxDYXJ0KCk7XHJcblxyXG4gICAgICAgIGNvbnN0IHRyaWFsQ2FydEl0ZW06IE9yZGVyZWRJdGVtc1tdID0gYXdhaXQgbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICAgICAgZGJSZXF1ZXN0Lm9uc3VjY2VzcyA9IChldmVudDogYW55KSA9PiByZXNvbHZlKGV2ZW50LnRhcmdldC5yZXN1bHQpO1xyXG4gICAgICAgICAgZGJSZXF1ZXN0Lm9uZXJyb3IgPSAoZXZlbnQ6IGFueSkgPT4gcmVqZWN0KGV2ZW50LnRhcmdldC5lcnJvcik7XHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIGNvbnN0IGlzSXRlbUFscmVhZHlBZGRlZCA9IHRyaWFsQ2FydEl0ZW0uc29tZSgoaXRlbTogT3JkZXJlZEl0ZW1zKSA9PlxyXG4gICAgICAgICAgaXRlbS5pdGVtSWQgPT09IHByb2R1Y3QuaXRlbUlkICYmXHJcbiAgICAgICAgICAocHJvZHVjdD8uaXRlbVZhcmlhbnQ/Lmxlbmd0aCA9PT0gMCB8fCBwcm9kdWN0LnZhcmllbnRJZCA9PT0gaXRlbS52YXJpZW50SWQpXHJcbiAgICAgICAgKTtcclxuXHJcbiAgICAgICAgaWYgKCFpc0l0ZW1BbHJlYWR5QWRkZWQpIHtcclxuICAgICAgICAgIGF3YWl0IHRoaXMuc3RvcmFnZVNlcnZpY2UuYWRkUHJvZHVjdFRvVHJpYWwob3JkZXJlZEl0ZW0pO1xyXG4gICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcblxyXG4gICAgICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGFjY2Vzc2luZyB0cmlhbCBjYXJ0IGZyb20gbG9jYWwgc3RvcmFnZTonLCBlcnJvcik7XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgcHVibGljIGFkZEl0ZW1Ub0ZhdkZyb21DYXJ0KHByb2R1Y3Q6IE9yZGVyZWRJdGVtcykge1xyXG4gICAgdGhpcy5zdG9yYWdlU2VydmljZS5hZGRQcm9kdWN0VG9XaXNobGlzdChwcm9kdWN0KTtcclxuICB9XHJcbiAgcHVibGljIGFkZE9yZGVyZWRJdGVtVG9GYXZvdXJpdGUob3JkZXJlZEl0ZW06IE9yZGVyZWRJdGVtcykge1xyXG4gICAgdGhpcy5zdG9yYWdlU2VydmljZS5hZGRQcm9kdWN0VG9XaXNobGlzdChvcmRlcmVkSXRlbSk7XHJcbiAgfVxyXG4gIHB1YmxpYyByZW1vdmVJdGVtRnJvbUZhdm91cml0ZSh2YXJpZW50SWQ6IHN0cmluZykge1xyXG4gICAgdGhpcy5zdG9yYWdlU2VydmljZS5yZW1vdmVQcm9kdWN0RnJvbVdpc2hsaXN0KHZhcmllbnRJZCk7XHJcbiAgfVxyXG4gIHB1YmxpYyByZW1vdmVJdGVtRnJvbUNhcnQocHJvZHVjdDogUHJvZHVjdCB8IE9yZGVyZWRJdGVtcykge1xyXG4gICAgdGhpcy5zdG9yYWdlU2VydmljZS5yZW1vdmVQcm9kdWN0RnJvbUNhcnQocHJvZHVjdC52YXJpZW50SWQpO1xyXG4gIH1cclxuICBwcml2YXRlIG9iamVjdE1hcHBlcihwcm9kdWN0OiBQcm9kdWN0LCB2YXJpYW50SWQ/OiBzdHJpbmcpOiBPcmRlcmVkSXRlbXMge1xyXG4gICAgcmV0dXJuIG5ldyBPcmRlcmVkSXRlbXMocHJvZHVjdCwgdmFyaWFudElkKTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i4 from '@angular/common';
|
|
2
|
-
import { CommonModule, isPlatformBrowser, NgStyle, NgFor,
|
|
2
|
+
import { CommonModule, isPlatformBrowser, NgStyle, NgFor, DatePipe, NgIf, DOCUMENT } from '@angular/common';
|
|
3
3
|
import * as i0 from '@angular/core';
|
|
4
4
|
import { Component, Input, EventEmitter, Injectable, Directive, HostListener, InjectionToken, Inject, inject, PLATFORM_ID, ViewChild, ElementRef, Renderer2, forwardRef, Output, Pipe, Optional, NgModule, ViewChildren } from '@angular/core';
|
|
5
5
|
import { MatGridListModule } from '@angular/material/grid-list';
|
|
@@ -19,7 +19,7 @@ import * as i6 from '@angular/material/icon';
|
|
|
19
19
|
import { MatIconModule, MatIcon } from '@angular/material/icon';
|
|
20
20
|
import * as i8$1 from '@angular/cdk/scrolling';
|
|
21
21
|
import { CdkVirtualScrollViewport, ScrollingModule } from '@angular/cdk/scrolling';
|
|
22
|
-
import { map, startWith, debounceTime, distinctUntilChanged, switchMap, fromEvent, filter, forkJoin,
|
|
22
|
+
import { map, startWith, debounceTime, distinctUntilChanged, switchMap, fromEvent, filter, forkJoin, firstValueFrom, interval, catchError, of } from 'rxjs';
|
|
23
23
|
import * as i7 from 'ng-lazyload-image';
|
|
24
24
|
import { LazyLoadImageModule } from 'ng-lazyload-image';
|
|
25
25
|
import * as i1 from '@angular/common/http';
|
|
@@ -34,7 +34,7 @@ import * as i10$1 from '@angular/material/progress-spinner';
|
|
|
34
34
|
import { MatProgressSpinner, MatProgressSpinnerModule } from '@angular/material/progress-spinner';
|
|
35
35
|
import { CdkDrag, CdkDragPlaceholder, moveItemInArray } from '@angular/cdk/drag-drop';
|
|
36
36
|
import * as i2$2 from '@angular/router';
|
|
37
|
-
import {
|
|
37
|
+
import { RouterLink, NavigationEnd } from '@angular/router';
|
|
38
38
|
import * as i1$2 from '@angular/platform-browser';
|
|
39
39
|
import * as i7$1 from 'ngx-skeleton-loader';
|
|
40
40
|
import { NgxSkeletonLoaderModule } from 'ngx-skeleton-loader';
|
|
@@ -8424,161 +8424,11 @@ class OrderedItems {
|
|
|
8424
8424
|
}
|
|
8425
8425
|
}
|
|
8426
8426
|
|
|
8427
|
-
|
|
8428
|
-
constructor(http, platformId, document, storageService, API_URL, storage, router) {
|
|
8429
|
-
this.http = http;
|
|
8430
|
-
this.platformId = platformId;
|
|
8431
|
-
this.document = document;
|
|
8432
|
-
this.storageService = storageService;
|
|
8433
|
-
this.API_URL = API_URL;
|
|
8434
|
-
this.storage = storage;
|
|
8435
|
-
this.router = router;
|
|
8436
|
-
this.eventQueue = [];
|
|
8437
|
-
this.BATCH_SIZE = 10;
|
|
8438
|
-
this.FLUSH_INTERVAL = 5000; // 5 seconds
|
|
8439
|
-
// ===== Duration Tracking =====
|
|
8440
|
-
this.currentPage = '';
|
|
8441
|
-
this.currentContextMetadata = null;
|
|
8442
|
-
this.contextStartTime = null;
|
|
8443
|
-
this.contextActiveTime = 0;
|
|
8444
|
-
this.currentEvent = '';
|
|
8445
|
-
this.startAutoFlush();
|
|
8446
|
-
this.listenToUnload();
|
|
8447
|
-
this.listenToRouteChange();
|
|
8448
|
-
}
|
|
8449
|
-
startNewContext(metadata, event) {
|
|
8450
|
-
this.closeCurrentContext(); // close previous filter session
|
|
8451
|
-
this.currentContextMetadata = metadata;
|
|
8452
|
-
this.contextStartTime = Date.now();
|
|
8453
|
-
this.contextActiveTime = 0;
|
|
8454
|
-
this.currentEvent = event;
|
|
8455
|
-
}
|
|
8456
|
-
getCurrentContext() {
|
|
8457
|
-
return this.currentContextMetadata;
|
|
8458
|
-
}
|
|
8459
|
-
closeCurrentContext(useBeacon = false) {
|
|
8460
|
-
if (!this.currentContextMetadata)
|
|
8461
|
-
return;
|
|
8462
|
-
if (this.contextStartTime) {
|
|
8463
|
-
this.contextActiveTime += Date.now() - this.contextStartTime;
|
|
8464
|
-
}
|
|
8465
|
-
const user = this.storageService.getUser();
|
|
8466
|
-
const requestFrom = this.storage.getItem('REQUEST_FROM');
|
|
8467
|
-
if (!user || requestFrom === 'ECOMMERCE')
|
|
8468
|
-
return;
|
|
8469
|
-
const event = {
|
|
8470
|
-
businessId: this.storage.getItem('bId') || '',
|
|
8471
|
-
businessName: this.storage.getItem('bName') || '',
|
|
8472
|
-
userId: user.userId,
|
|
8473
|
-
createdTimeStamp: new Date().toISOString(),
|
|
8474
|
-
page: this.currentPage,
|
|
8475
|
-
duration: this.contextActiveTime,
|
|
8476
|
-
eventType: this.currentEvent,
|
|
8477
|
-
metadata: this.currentContextMetadata
|
|
8478
|
-
};
|
|
8479
|
-
if (useBeacon) {
|
|
8480
|
-
fetch(this.API_URL + 'ecommerce/analytics/batch', {
|
|
8481
|
-
method: 'POST',
|
|
8482
|
-
body: JSON.stringify([event]),
|
|
8483
|
-
headers: {
|
|
8484
|
-
'Content-Type': 'application/json'
|
|
8485
|
-
},
|
|
8486
|
-
keepalive: true
|
|
8487
|
-
});
|
|
8488
|
-
}
|
|
8489
|
-
else {
|
|
8490
|
-
this.eventQueue.push(event);
|
|
8491
|
-
}
|
|
8492
|
-
this.currentContextMetadata = null;
|
|
8493
|
-
this.contextStartTime = null;
|
|
8494
|
-
this.contextActiveTime = 0;
|
|
8495
|
-
this.currentEvent = '';
|
|
8496
|
-
}
|
|
8497
|
-
// ===============================
|
|
8498
|
-
// 🔥 ROUTE CHANGE LISTENER
|
|
8499
|
-
// ===============================
|
|
8500
|
-
listenToRouteChange() {
|
|
8501
|
-
this.router.events.subscribe(event => {
|
|
8502
|
-
if (event instanceof NavigationEnd) {
|
|
8503
|
-
// Close previous page context
|
|
8504
|
-
this.closeCurrentContext();
|
|
8505
|
-
this.currentPage = this.router.url.split('?')[0];
|
|
8506
|
-
this.contextStartTime = Date.now();
|
|
8507
|
-
this.contextActiveTime = 0;
|
|
8508
|
-
}
|
|
8509
|
-
});
|
|
8510
|
-
}
|
|
8511
|
-
trackUser(event, eventType) {
|
|
8512
|
-
const user = this.storageService.getUser();
|
|
8513
|
-
const requestFrom = this.storage.getItem('REQUEST_FROM');
|
|
8514
|
-
if (user === null || requestFrom === 'ECOMMERCE') {
|
|
8515
|
-
return;
|
|
8516
|
-
}
|
|
8517
|
-
const page = this.router.url.split('?')[0];
|
|
8518
|
-
this.eventQueue.push({
|
|
8519
|
-
businessId: this.storage.getItem('bId') || '',
|
|
8520
|
-
businessName: this.storage.getItem('bName') || '',
|
|
8521
|
-
userId: user?.userId,
|
|
8522
|
-
createdTimeStamp: new Date().toISOString(),
|
|
8523
|
-
page: page,
|
|
8524
|
-
metadata: event,
|
|
8525
|
-
eventType: eventType
|
|
8526
|
-
});
|
|
8527
|
-
if (this.eventQueue.length >= this.BATCH_SIZE) {
|
|
8528
|
-
this.flush();
|
|
8529
|
-
}
|
|
8530
|
-
}
|
|
8531
|
-
startAutoFlush() {
|
|
8532
|
-
interval(this.FLUSH_INTERVAL).subscribe(() => {
|
|
8533
|
-
if (this.eventQueue.length > 0) {
|
|
8534
|
-
this.flush();
|
|
8535
|
-
}
|
|
8536
|
-
});
|
|
8537
|
-
}
|
|
8538
|
-
flush() {
|
|
8539
|
-
const eventsToSend = [...this.eventQueue];
|
|
8540
|
-
this.eventQueue = [];
|
|
8541
|
-
this.http.post(this.API_URL + 'ecommerce/analytics/batch', eventsToSend)
|
|
8542
|
-
.subscribe({ error: () => { } });
|
|
8543
|
-
}
|
|
8544
|
-
listenToUnload() {
|
|
8545
|
-
this.document.addEventListener('visibilitychange', () => {
|
|
8546
|
-
if (this.document.visibilityState === 'visible') {
|
|
8547
|
-
this.contextStartTime = Date.now();
|
|
8548
|
-
}
|
|
8549
|
-
else {
|
|
8550
|
-
if (this.contextStartTime) {
|
|
8551
|
-
this.contextActiveTime += Date.now() - this.contextStartTime;
|
|
8552
|
-
}
|
|
8553
|
-
this.closeCurrentContext(true);
|
|
8554
|
-
}
|
|
8555
|
-
});
|
|
8556
|
-
}
|
|
8557
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AnalyticsService, deps: [{ token: i1.HttpClient }, { token: PLATFORM_ID }, { token: DOCUMENT }, { token: StorageServiceService }, { token: API_URL }, { token: LOCAL_STORAGE }, { token: i2$2.Router }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
8558
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AnalyticsService, providedIn: 'root' }); }
|
|
8559
|
-
}
|
|
8560
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AnalyticsService, decorators: [{
|
|
8561
|
-
type: Injectable,
|
|
8562
|
-
args: [{ providedIn: 'root' }]
|
|
8563
|
-
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: Object, decorators: [{
|
|
8564
|
-
type: Inject,
|
|
8565
|
-
args: [PLATFORM_ID]
|
|
8566
|
-
}] }, { type: Document, decorators: [{
|
|
8567
|
-
type: Inject,
|
|
8568
|
-
args: [DOCUMENT]
|
|
8569
|
-
}] }, { type: StorageServiceService }, { type: undefined, decorators: [{
|
|
8570
|
-
type: Inject,
|
|
8571
|
-
args: [API_URL]
|
|
8572
|
-
}] }, { type: undefined, decorators: [{
|
|
8573
|
-
type: Inject,
|
|
8574
|
-
args: [LOCAL_STORAGE]
|
|
8575
|
-
}] }, { type: i2$2.Router }] });
|
|
8576
|
-
|
|
8427
|
+
// import { AnalyticsService } from './analytics.service';
|
|
8577
8428
|
class CartService {
|
|
8578
|
-
constructor(storageService, restService
|
|
8429
|
+
constructor(storageService, restService) {
|
|
8579
8430
|
this.storageService = storageService;
|
|
8580
8431
|
this.restService = restService;
|
|
8581
|
-
this.analyticsService = analyticsService;
|
|
8582
8432
|
}
|
|
8583
8433
|
addItemFromCartPage(product, userCart) {
|
|
8584
8434
|
if (product.quantity) {
|
|
@@ -8623,7 +8473,7 @@ class CartService {
|
|
|
8623
8473
|
if (variantId) {
|
|
8624
8474
|
analyticsEvent['VARIANT_ID'] = variantId;
|
|
8625
8475
|
}
|
|
8626
|
-
this.analyticsService.trackUser(analyticsEvent, type);
|
|
8476
|
+
// this.analyticsService.trackUser(analyticsEvent, type);
|
|
8627
8477
|
}
|
|
8628
8478
|
addItemToFavourite(product, varientId) {
|
|
8629
8479
|
const orderedItem = this.objectMapper(product, varientId);
|
|
@@ -8679,7 +8529,7 @@ class CartService {
|
|
|
8679
8529
|
objectMapper(product, variantId) {
|
|
8680
8530
|
return new OrderedItems(product, variantId);
|
|
8681
8531
|
}
|
|
8682
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CartService, deps: [{ token: StorageServiceService }, { token: RestService }
|
|
8532
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CartService, deps: [{ token: StorageServiceService }, { token: RestService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
8683
8533
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CartService, providedIn: 'root' }); }
|
|
8684
8534
|
}
|
|
8685
8535
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CartService, decorators: [{
|
|
@@ -8687,7 +8537,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
8687
8537
|
args: [{
|
|
8688
8538
|
providedIn: 'root',
|
|
8689
8539
|
}]
|
|
8690
|
-
}], ctorParameters: () => [{ type: StorageServiceService }, { type: RestService }
|
|
8540
|
+
}], ctorParameters: () => [{ type: StorageServiceService }, { type: RestService }] });
|
|
8691
8541
|
|
|
8692
8542
|
class CartComponent extends BaseSection {
|
|
8693
8543
|
constructor(_eventService, cartService, router, restService, matDialog, storageService, messageService, bottomSheet, activatedRoute, matDialogData, dialogRef) {
|
|
@@ -17965,6 +17815,156 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
17965
17815
|
type: Input
|
|
17966
17816
|
}] } });
|
|
17967
17817
|
|
|
17818
|
+
class AnalyticsService {
|
|
17819
|
+
constructor(http, platformId, document, storageService, API_URL, storage, router) {
|
|
17820
|
+
this.http = http;
|
|
17821
|
+
this.platformId = platformId;
|
|
17822
|
+
this.document = document;
|
|
17823
|
+
this.storageService = storageService;
|
|
17824
|
+
this.API_URL = API_URL;
|
|
17825
|
+
this.storage = storage;
|
|
17826
|
+
this.router = router;
|
|
17827
|
+
this.eventQueue = [];
|
|
17828
|
+
this.BATCH_SIZE = 10;
|
|
17829
|
+
this.FLUSH_INTERVAL = 5000; // 5 seconds
|
|
17830
|
+
// ===== Duration Tracking =====
|
|
17831
|
+
this.currentPage = '';
|
|
17832
|
+
this.currentContextMetadata = null;
|
|
17833
|
+
this.contextStartTime = null;
|
|
17834
|
+
this.contextActiveTime = 0;
|
|
17835
|
+
this.currentEvent = '';
|
|
17836
|
+
this.startAutoFlush();
|
|
17837
|
+
this.listenToUnload();
|
|
17838
|
+
this.listenToRouteChange();
|
|
17839
|
+
}
|
|
17840
|
+
startNewContext(metadata, event) {
|
|
17841
|
+
this.closeCurrentContext(); // close previous filter session
|
|
17842
|
+
this.currentContextMetadata = metadata;
|
|
17843
|
+
this.contextStartTime = Date.now();
|
|
17844
|
+
this.contextActiveTime = 0;
|
|
17845
|
+
this.currentEvent = event;
|
|
17846
|
+
}
|
|
17847
|
+
getCurrentContext() {
|
|
17848
|
+
return this.currentContextMetadata;
|
|
17849
|
+
}
|
|
17850
|
+
closeCurrentContext(useBeacon = false) {
|
|
17851
|
+
if (!this.currentContextMetadata)
|
|
17852
|
+
return;
|
|
17853
|
+
if (this.contextStartTime) {
|
|
17854
|
+
this.contextActiveTime += Date.now() - this.contextStartTime;
|
|
17855
|
+
}
|
|
17856
|
+
const user = this.storageService.getUser();
|
|
17857
|
+
const requestFrom = this.storage.getItem('REQUEST_FROM');
|
|
17858
|
+
if (!user || requestFrom === 'ECOMMERCE')
|
|
17859
|
+
return;
|
|
17860
|
+
const event = {
|
|
17861
|
+
businessId: this.storage.getItem('bId') || '',
|
|
17862
|
+
businessName: this.storage.getItem('bName') || '',
|
|
17863
|
+
userId: user.userId,
|
|
17864
|
+
createdTimeStamp: new Date().toISOString(),
|
|
17865
|
+
page: this.currentPage,
|
|
17866
|
+
duration: this.contextActiveTime,
|
|
17867
|
+
eventType: this.currentEvent,
|
|
17868
|
+
metadata: this.currentContextMetadata
|
|
17869
|
+
};
|
|
17870
|
+
if (useBeacon) {
|
|
17871
|
+
fetch(this.API_URL + 'ecommerce/analytics/batch', {
|
|
17872
|
+
method: 'POST',
|
|
17873
|
+
body: JSON.stringify([event]),
|
|
17874
|
+
headers: {
|
|
17875
|
+
'Content-Type': 'application/json'
|
|
17876
|
+
},
|
|
17877
|
+
keepalive: true
|
|
17878
|
+
});
|
|
17879
|
+
}
|
|
17880
|
+
else {
|
|
17881
|
+
this.eventQueue.push(event);
|
|
17882
|
+
}
|
|
17883
|
+
this.currentContextMetadata = null;
|
|
17884
|
+
this.contextStartTime = null;
|
|
17885
|
+
this.contextActiveTime = 0;
|
|
17886
|
+
this.currentEvent = '';
|
|
17887
|
+
}
|
|
17888
|
+
// ===============================
|
|
17889
|
+
// 🔥 ROUTE CHANGE LISTENER
|
|
17890
|
+
// ===============================
|
|
17891
|
+
listenToRouteChange() {
|
|
17892
|
+
this.router.events.subscribe(event => {
|
|
17893
|
+
if (event instanceof NavigationEnd) {
|
|
17894
|
+
// Close previous page context
|
|
17895
|
+
this.closeCurrentContext();
|
|
17896
|
+
this.currentPage = this.router.url.split('?')[0];
|
|
17897
|
+
this.contextStartTime = Date.now();
|
|
17898
|
+
this.contextActiveTime = 0;
|
|
17899
|
+
}
|
|
17900
|
+
});
|
|
17901
|
+
}
|
|
17902
|
+
trackUser(event, eventType) {
|
|
17903
|
+
const user = this.storageService.getUser();
|
|
17904
|
+
const requestFrom = this.storage.getItem('REQUEST_FROM');
|
|
17905
|
+
if (user === null || requestFrom === 'ECOMMERCE') {
|
|
17906
|
+
return;
|
|
17907
|
+
}
|
|
17908
|
+
const page = this.router.url.split('?')[0];
|
|
17909
|
+
this.eventQueue.push({
|
|
17910
|
+
businessId: this.storage.getItem('bId') || '',
|
|
17911
|
+
businessName: this.storage.getItem('bName') || '',
|
|
17912
|
+
userId: user?.userId,
|
|
17913
|
+
createdTimeStamp: new Date().toISOString(),
|
|
17914
|
+
page: page,
|
|
17915
|
+
metadata: event,
|
|
17916
|
+
eventType: eventType
|
|
17917
|
+
});
|
|
17918
|
+
if (this.eventQueue.length >= this.BATCH_SIZE) {
|
|
17919
|
+
this.flush();
|
|
17920
|
+
}
|
|
17921
|
+
}
|
|
17922
|
+
startAutoFlush() {
|
|
17923
|
+
interval(this.FLUSH_INTERVAL).subscribe(() => {
|
|
17924
|
+
if (this.eventQueue.length > 0) {
|
|
17925
|
+
this.flush();
|
|
17926
|
+
}
|
|
17927
|
+
});
|
|
17928
|
+
}
|
|
17929
|
+
flush() {
|
|
17930
|
+
const eventsToSend = [...this.eventQueue];
|
|
17931
|
+
this.eventQueue = [];
|
|
17932
|
+
this.http.post(this.API_URL + 'ecommerce/analytics/batch', eventsToSend)
|
|
17933
|
+
.subscribe({ error: () => { } });
|
|
17934
|
+
}
|
|
17935
|
+
listenToUnload() {
|
|
17936
|
+
this.document.addEventListener('visibilitychange', () => {
|
|
17937
|
+
if (this.document.visibilityState === 'visible') {
|
|
17938
|
+
this.contextStartTime = Date.now();
|
|
17939
|
+
}
|
|
17940
|
+
else {
|
|
17941
|
+
if (this.contextStartTime) {
|
|
17942
|
+
this.contextActiveTime += Date.now() - this.contextStartTime;
|
|
17943
|
+
}
|
|
17944
|
+
this.closeCurrentContext(true);
|
|
17945
|
+
}
|
|
17946
|
+
});
|
|
17947
|
+
}
|
|
17948
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AnalyticsService, deps: [{ token: i1.HttpClient }, { token: PLATFORM_ID }, { token: DOCUMENT }, { token: StorageServiceService }, { token: API_URL }, { token: LOCAL_STORAGE }, { token: i2$2.Router }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
17949
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AnalyticsService, providedIn: 'root' }); }
|
|
17950
|
+
}
|
|
17951
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AnalyticsService, decorators: [{
|
|
17952
|
+
type: Injectable,
|
|
17953
|
+
args: [{ providedIn: 'root' }]
|
|
17954
|
+
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: Object, decorators: [{
|
|
17955
|
+
type: Inject,
|
|
17956
|
+
args: [PLATFORM_ID]
|
|
17957
|
+
}] }, { type: Document, decorators: [{
|
|
17958
|
+
type: Inject,
|
|
17959
|
+
args: [DOCUMENT]
|
|
17960
|
+
}] }, { type: StorageServiceService }, { type: undefined, decorators: [{
|
|
17961
|
+
type: Inject,
|
|
17962
|
+
args: [API_URL]
|
|
17963
|
+
}] }, { type: undefined, decorators: [{
|
|
17964
|
+
type: Inject,
|
|
17965
|
+
args: [LOCAL_STORAGE]
|
|
17966
|
+
}] }, { type: i2$2.Router }] });
|
|
17967
|
+
|
|
17968
17968
|
class ProductDescComponent extends BaseSection {
|
|
17969
17969
|
constructor(platformId, _eventService, router, activatedRoute, restService, cartService, storageService, messageService, metaTagService, titleService, bottomSheet, renderer, matDialog, analyticsService) {
|
|
17970
17970
|
super();
|