monkey-front-core 0.0.293 → 0.0.295

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.
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ua2V5ZWN4LWNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21vbmtleS1mcm9udC1jb3JlL3NyYy9saWIvY29yZS9pbnRlcmZhY2VzL21vbmtleWVjeC1jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgTW9ua2V5RWN4Q29uZmlnUHJvZ3JhbSB7XG4gIHRva2VuOiBzdHJpbmc7XG4gIG5hbWU6IHN0cmluZztcbiAgdHlwZTogc3RyaW5nO1xuICByZWdpc3Rlcjoge1xuICAgIHNlbGxlcjoge1xuICAgICAgdHlwZXM6IHN0cmluZ1tdO1xuICAgICAgZG9jdW1lbnRUeXBlczogc3RyaW5nW107XG4gICAgICBsZWdhbE5hdHVyZXM6IHN0cmluZ1tdO1xuICAgIH07XG4gICAgc3BvbnNvcjoge1xuICAgICAgdHlwZXM6IHN0cmluZ1tdO1xuICAgIH07XG4gICAgYnV5ZXI6IHtcbiAgICAgIGNhbGN1bGF0aW9uVHlwZXM6IHN0cmluZ1tdO1xuICAgICAgbGVnYWxOYXR1cmVzOiBzdHJpbmdbXTtcbiAgICAgIHR5cGVzOiBzdHJpbmdbXTtcbiAgICB9O1xuICB9O1xuICBzZXR0aW5nczoge1xuICAgIGVkaXRTcG9uc29yVGF4OiBib29sZWFuO1xuICAgIGRpc2FibGVCdXllckluZm9ybWF0aW9uOiBib29sZWFuO1xuICAgIFtrZXk6IHN0cmluZ106IGJvb2xlYW47XG4gIH07XG4gIHNjcmVlbnM6IHtcbiAgICBsb2dpbjoge1xuICAgICAgcGFzc3dvcmRTdHJlbmd0aDoge1xuICAgICAgICBXSElURV9TUEFDRT86IHN0cmluZztcbiAgICAgICAgRElHSVRfQ0hBUkFDVEVSPzogc3RyaW5nO1xuICAgICAgICBVUFBFUkNBU0VfQ0hBUkFDVEVSPzogc3RyaW5nO1xuICAgICAgICBMT1dFUkNBU0VfQ0hBUkFDVEVSPzogc3RyaW5nO1xuICAgICAgICBBTFBIQV9TRVFVRU5DRT86IHN0cmluZztcbiAgICAgICAgTlVNQkVSX1NFUVVFTkNFPzogc3RyaW5nO1xuICAgICAgICBRV0VSVFlfU0VRVUVOQ0U/OiBzdHJpbmc7XG4gICAgICAgIFJFUEVBVF9DSEFSUz86IHN0cmluZztcbiAgICAgIH07XG4gICAgfTtcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNb25rZXlFY3hDb25maWdNYXJrZXQge1xuICBkYXlzVG9TZWFyY2g6IG51bWJlcjtcbiAgb3BlcmF0aW9uOiB7XG4gICAgY3VycmVudERheXNUb1NlYXJjaDogbnVtYmVyO1xuICAgIG1heGltdW1EYXlzVG9TZWFyY2g6IG51bWJlcjtcbiAgfTtcbiAgaG91clRvQ2xvc2U/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9ua2V5RWN4Q29uZmlnVGhlbWUge1xuICBsb2dvczoge1xuICAgIGZhdmljb246IHN0cmluZztcbiAgICB0b29sYmFyOiBzdHJpbmc7XG4gICAgbG9naW46IHN0cmluZztcbiAgICBmb290ZXI6IHN0cmluZztcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNb25rZXlFY3hDb25maWdTdXBwb3J0UGhvbmUge1xuICBhdHRlbmRhbnQ/OiBzdHJpbmc7XG4gIGVuZEhvdXI6IG51bWJlcjtcbiAgaWNvbjogc3RyaW5nO1xuICBudW1iZXJzPzogc3RyaW5nW107XG4gIHN0YXJ0SG91cjogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1vbmtleUVjeENvbmZpZ1N1cHBvcnRFbWFpbCB7XG4gIGF0dGVuZGFudD86IHN0cmluZztcbiAgaWNvbjogc3RyaW5nO1xuICByZWNpcGllbnRzPzogc3RyaW5nW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9ua2V5RWN4Q29uZmlnU3VwcG9ydEluZm9ybWF0aW9uIHtcbiAgaWNvbjogc3RyaW5nO1xuICBtZXNzYWdlPzogc3RyaW5nO1xuICBhY3Rpb24/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9ua2V5RWN4Q29uZmlnU3VwcG9ydCB7XG4gIHBob25lcz86IE1vbmtleUVjeENvbmZpZ1N1cHBvcnRQaG9uZVtdO1xuICBlbWFpbHM/OiBNb25rZXlFY3hDb25maWdTdXBwb3J0RW1haWxbXTtcbiAgaW5mb3JtYXRpb24/OiBNb25rZXlFY3hDb25maWdTdXBwb3J0SW5mb3JtYXRpb247XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9ua2V5RWN4Q29uZmlnaTE4biB7XG4gIGxhbmc/OiBzdHJpbmc7XG4gIGN1cnJlbmN5Pzogc3RyaW5nO1xuICBjdXJyZW5jaWVzPzogc3RyaW5nW107XG4gICdnb29nbGUtY2hhcnQtbGFuZ3VhZ2UnPzogc3RyaW5nO1xuICBwYXRoczogc3RyaW5nW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9ua2V5RWN4Q29uZmlnTG9ncyB7XG4gIGVuYWJsZWQ6IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9ua2V5RWN4Q29uZmlnTWVzc2FnZXMge1xuICBjaGVja291dFN1Y2Nlc3M6IHN0cmluZ1tdO1xufVxuXG5pbnRlcmZhY2UgTW9ua2V5RWN4Q29uZmlnRXh0ZXJuYWxTZXR0aW5nc0VudiB7XG4gIHVybDogc3RyaW5nO1xuICB1cmxOYW1lOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9ua2V5RWN4Q29uZmlnRXh0ZXJuYWxTZXR0aW5ncyB7XG4gIGRldjogTW9ua2V5RWN4Q29uZmlnRXh0ZXJuYWxTZXR0aW5nc0VudjtcbiAgaG1nOiBNb25rZXlFY3hDb25maWdFeHRlcm5hbFNldHRpbmdzRW52O1xuICBwcm9kOiBNb25rZXlFY3hDb25maWdFeHRlcm5hbFNldHRpbmdzRW52O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1vbmtleUVjeENvbmZpZ0V4dGVybmFsaTE4biB7XG4gIFtzOiBzdHJpbmddOiBhbnk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9ua2V5RWN4Q29uZmlnR0Ege1xuICBlbmFibGVkOiBib29sZWFuO1xuICBrZXk6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNb25rZXlFY3hDb25maWdBbGVydCB7XG4gIGltZzogc3RyaW5nO1xuICB0aXRsZTogc3RyaW5nO1xuICBtZXNzYWdlOiBzdHJpbmc7XG4gIGVuZERhdGU6IHN0cmluZztcbiAgbm9FbmREYXRlPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNb25rZXlFY3hDb25maWcge1xuICBwcm9ncmFtPzogTW9ua2V5RWN4Q29uZmlnUHJvZ3JhbTtcbiAgbWFya2V0PzogTW9ua2V5RWN4Q29uZmlnTWFya2V0O1xuICB0aGVtZT86IE1vbmtleUVjeENvbmZpZ1RoZW1lO1xuICBzdXBwb3J0PzogTW9ua2V5RWN4Q29uZmlnU3VwcG9ydDtcbiAgaTE4bj86IE1vbmtleUVjeENvbmZpZ2kxOG47XG4gIGxvZ3M/OiBNb25rZXlFY3hDb25maWdMb2dzO1xuICBleHRlcm5hbGkxOG4/OiBNb25rZXlFY3hDb25maWdFeHRlcm5hbGkxOG47XG4gIG1lc3NhZ2VzPzogTW9ua2V5RWN4Q29uZmlnTWVzc2FnZXM7XG4gIGV4dGVybmFsU2V0dGluZ3M/OiBNb25rZXlFY3hDb25maWdFeHRlcm5hbFNldHRpbmdzO1xuICBnYT86IE1vbmtleUVjeENvbmZpZ0dBO1xuICBhbGVydD86IE1vbmtleUVjeENvbmZpZ0FsZXJ0O1xufVxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ua2V5ZWN4LWNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21vbmtleS1mcm9udC1jb3JlL3NyYy9saWIvY29yZS9pbnRlcmZhY2VzL21vbmtleWVjeC1jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgTW9ua2V5RWN4Q29uZmlnUHJvZ3JhbSB7XG4gIHRva2VuOiBzdHJpbmc7XG4gIG5hbWU6IHN0cmluZztcbiAgdHlwZTogc3RyaW5nO1xuICByZWdpc3Rlcjoge1xuICAgIHNlbGxlcjoge1xuICAgICAgdHlwZXM6IHN0cmluZ1tdO1xuICAgICAgZG9jdW1lbnRUeXBlczogc3RyaW5nW107XG4gICAgICBsZWdhbE5hdHVyZXM6IHN0cmluZ1tdO1xuICAgIH07XG4gICAgc3BvbnNvcjoge1xuICAgICAgdHlwZXM6IHN0cmluZ1tdO1xuICAgIH07XG4gICAgYnV5ZXI6IHtcbiAgICAgIGNhbGN1bGF0aW9uVHlwZXM6IHN0cmluZ1tdO1xuICAgICAgbGVnYWxOYXR1cmVzOiBzdHJpbmdbXTtcbiAgICAgIHR5cGVzOiBzdHJpbmdbXTtcbiAgICB9O1xuICB9O1xuICBzZXR0aW5nczoge1xuICAgIGVkaXRTcG9uc29yVGF4OiBib29sZWFuO1xuICAgIGRpc2FibGVCdXllckluZm9ybWF0aW9uOiBib29sZWFuO1xuICAgIFtrZXk6IHN0cmluZ106IGJvb2xlYW47XG4gIH07XG4gIHNjcmVlbnM6IHtcbiAgICBsb2dpbjoge1xuICAgICAgcGFzc3dvcmRTdHJlbmd0aDoge1xuICAgICAgICBXSElURV9TUEFDRT86IHN0cmluZztcbiAgICAgICAgRElHSVRfQ0hBUkFDVEVSPzogc3RyaW5nO1xuICAgICAgICBVUFBFUkNBU0VfQ0hBUkFDVEVSPzogc3RyaW5nO1xuICAgICAgICBMT1dFUkNBU0VfQ0hBUkFDVEVSPzogc3RyaW5nO1xuICAgICAgICBBTFBIQV9TRVFVRU5DRT86IHN0cmluZztcbiAgICAgICAgTlVNQkVSX1NFUVVFTkNFPzogc3RyaW5nO1xuICAgICAgICBRV0VSVFlfU0VRVUVOQ0U/OiBzdHJpbmc7XG4gICAgICAgIFJFUEVBVF9DSEFSUz86IHN0cmluZztcbiAgICAgIH07XG4gICAgfTtcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNb25rZXlFY3hDb25maWdNYXJrZXQge1xuICBkYXlzVG9TZWFyY2g6IG51bWJlcjtcbiAgb3BlcmF0aW9uOiB7XG4gICAgY3VycmVudERheXNUb1NlYXJjaDogbnVtYmVyO1xuICAgIG1heGltdW1EYXlzVG9TZWFyY2g6IG51bWJlcjtcbiAgfTtcbiAgaG91clRvQ2xvc2U/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9ua2V5RWN4Q29uZmlnVGhlbWUge1xuICBsb2dvczoge1xuICAgIGZhdmljb246IHN0cmluZztcbiAgICB0b29sYmFyOiBzdHJpbmc7XG4gICAgbG9naW46IHN0cmluZztcbiAgICBmb290ZXI6IHN0cmluZztcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNb25rZXlFY3hDb25maWdTdXBwb3J0UGhvbmUge1xuICBhdHRlbmRhbnQ/OiBzdHJpbmc7XG4gIGVuZEhvdXI6IG51bWJlcjtcbiAgaWNvbjogc3RyaW5nO1xuICBudW1iZXJzPzogc3RyaW5nW107XG4gIHN0YXJ0SG91cjogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1vbmtleUVjeENvbmZpZ1N1cHBvcnRFbWFpbCB7XG4gIGF0dGVuZGFudD86IHN0cmluZztcbiAgaWNvbjogc3RyaW5nO1xuICByZWNpcGllbnRzPzogc3RyaW5nW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9ua2V5RWN4Q29uZmlnU3VwcG9ydEluZm9ybWF0aW9uIHtcbiAgaWNvbjogc3RyaW5nO1xuICBtZXNzYWdlPzogc3RyaW5nO1xuICBhY3Rpb24/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9ua2V5RWN4Q29uZmlnU3VwcG9ydCB7XG4gIHBob25lcz86IE1vbmtleUVjeENvbmZpZ1N1cHBvcnRQaG9uZVtdO1xuICBlbWFpbHM/OiBNb25rZXlFY3hDb25maWdTdXBwb3J0RW1haWxbXTtcbiAgaW5mb3JtYXRpb24/OiBNb25rZXlFY3hDb25maWdTdXBwb3J0SW5mb3JtYXRpb247XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9ua2V5RWN4Q29uZmlnaTE4biB7XG4gIGxhbmc/OiBzdHJpbmc7XG4gIGN1cnJlbmN5Pzogc3RyaW5nO1xuICBjdXJyZW5jaWVzPzogc3RyaW5nW107XG4gICdnb29nbGUtY2hhcnQtbGFuZ3VhZ2UnPzogc3RyaW5nO1xuICBwYXRoczogc3RyaW5nW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9ua2V5RWN4Q29uZmlnTG9ncyB7XG4gIGVuYWJsZWQ6IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9ua2V5RWN4Q29uZmlnTWVzc2FnZXMge1xuICBjaGVja291dFN1Y2Nlc3M6IHN0cmluZ1tdO1xufVxuXG5pbnRlcmZhY2UgTW9ua2V5RWN4Q29uZmlnRXh0ZXJuYWxTZXR0aW5nc0VudiB7XG4gIHVybDogc3RyaW5nO1xuICB1cmxOYW1lOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9ua2V5RWN4Q29uZmlnRXh0ZXJuYWxTZXR0aW5ncyB7XG4gIGRldjogTW9ua2V5RWN4Q29uZmlnRXh0ZXJuYWxTZXR0aW5nc0VudjtcbiAgaG1nOiBNb25rZXlFY3hDb25maWdFeHRlcm5hbFNldHRpbmdzRW52O1xuICBwcm9kOiBNb25rZXlFY3hDb25maWdFeHRlcm5hbFNldHRpbmdzRW52O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE1vbmtleUVjeENvbmZpZ0V4dGVybmFsaTE4biB7XG4gIFtzOiBzdHJpbmddOiBhbnk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9ua2V5RWN4Q29uZmlnR1RNIHtcbiAgZW5hYmxlZDogYm9vbGVhbjtcbiAga2V5OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9ua2V5RWN4Q29uZmlnQWxlcnQge1xuICBpbWc6IHN0cmluZztcbiAgdGl0bGU6IHN0cmluZztcbiAgbWVzc2FnZTogc3RyaW5nO1xuICBlbmREYXRlOiBzdHJpbmc7XG4gIG5vRW5kRGF0ZT86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9ua2V5RWN4Q29uZmlnIHtcbiAgcHJvZ3JhbT86IE1vbmtleUVjeENvbmZpZ1Byb2dyYW07XG4gIG1hcmtldD86IE1vbmtleUVjeENvbmZpZ01hcmtldDtcbiAgdGhlbWU/OiBNb25rZXlFY3hDb25maWdUaGVtZTtcbiAgc3VwcG9ydD86IE1vbmtleUVjeENvbmZpZ1N1cHBvcnQ7XG4gIGkxOG4/OiBNb25rZXlFY3hDb25maWdpMThuO1xuICBsb2dzPzogTW9ua2V5RWN4Q29uZmlnTG9ncztcbiAgZXh0ZXJuYWxpMThuPzogTW9ua2V5RWN4Q29uZmlnRXh0ZXJuYWxpMThuO1xuICBtZXNzYWdlcz86IE1vbmtleUVjeENvbmZpZ01lc3NhZ2VzO1xuICBleHRlcm5hbFNldHRpbmdzPzogTW9ua2V5RWN4Q29uZmlnRXh0ZXJuYWxTZXR0aW5ncztcbiAgZ3RtPzogTW9ua2V5RWN4Q29uZmlnR1RNO1xuICBhbGVydD86IE1vbmtleUVjeENvbmZpZ0FsZXJ0O1xufVxuIl19
@@ -1,7 +1,6 @@
1
1
  import { __decorate } from "tslib";
2
- /* eslint-disable no-console */
3
2
  import { Injectable } from '@angular/core';
4
- import { throwError, BehaviorSubject } from 'rxjs';
3
+ import { BehaviorSubject, throwError } from 'rxjs';
5
4
  import { MonkeyEcxCoreService } from '../../decorators/monkeyecx-decorators';
6
5
  import { MonkeyEcxCommonsService } from '../commons/monkeyecx-commons.service';
7
6
  import * as i0 from "@angular/core";
@@ -14,10 +13,10 @@ import * as i6 from "./monkeyecx-security-console-config.service";
14
13
  import * as i7 from "./monkeyecx-maintenance-config.service";
15
14
  import * as i8 from "./monkeyecx-error-config.service";
16
15
  import * as i9 from "./monkeyecx-feature-toggle.service";
17
- import * as i10 from "./monkeyecx-ga-config.service";
16
+ import * as i10 from "./monkeyecx-gtm-config.service";
18
17
  import * as i11 from "./monkeyecx-alerts-config.service";
19
18
  export class MonkeyEcxConfigService extends MonkeyEcxCommonsService {
20
- constructor(monkeyecxService, monkeyecxi18nConfigService, monkeyecxLogsConfigService, monkeyStyleGuideSettingsService, monkeyecxServiceWorkerConfigService, monkeyecxSecurityConsoleConfigService, monkeyecxMaintenanceConfigService, monkeyecxErrorConfigService, monkeyEcxFeatureToggleService, monkeyGAConfigService, monkeyEcxAlertsConfigService) {
19
+ constructor(monkeyecxService, monkeyecxi18nConfigService, monkeyecxLogsConfigService, monkeyStyleGuideSettingsService, monkeyecxServiceWorkerConfigService, monkeyecxSecurityConsoleConfigService, monkeyecxMaintenanceConfigService, monkeyecxErrorConfigService, monkeyEcxFeatureToggleService, monkeyGTMConfigService, monkeyEcxAlertsConfigService) {
21
20
  super(monkeyecxService);
22
21
  this.monkeyecxi18nConfigService = monkeyecxi18nConfigService;
23
22
  this.monkeyecxLogsConfigService = monkeyecxLogsConfigService;
@@ -27,7 +26,7 @@ export class MonkeyEcxConfigService extends MonkeyEcxCommonsService {
27
26
  this.monkeyecxMaintenanceConfigService = monkeyecxMaintenanceConfigService;
28
27
  this.monkeyecxErrorConfigService = monkeyecxErrorConfigService;
29
28
  this.monkeyEcxFeatureToggleService = monkeyEcxFeatureToggleService;
30
- this.monkeyGAConfigService = monkeyGAConfigService;
29
+ this.monkeyGTMConfigService = monkeyGTMConfigService;
31
30
  this.monkeyEcxAlertsConfigService = monkeyEcxAlertsConfigService;
32
31
  this.configSubject$ = new BehaviorSubject({});
33
32
  this.configBootstrapSubject$ = new BehaviorSubject({});
@@ -42,7 +41,7 @@ export class MonkeyEcxConfigService extends MonkeyEcxCommonsService {
42
41
  callback(configBootstrap);
43
42
  }
44
43
  getWhiteLabelSettings(monkeyecxCode, configBootstrap, callback, environment, identifyCode) {
45
- const { monkeyecxService, monkeyecxi18nConfigService, configSubject$, monkeyStyleGuideSettingsService, monkeyecxLogsConfigService, monkeyecxErrorConfigService, monkeyEcxFeatureToggleService, monkeyGAConfigService, monkeyEcxAlertsConfigService, internalValidations } = this;
44
+ const { monkeyecxService, monkeyecxi18nConfigService, configSubject$, monkeyStyleGuideSettingsService, monkeyecxLogsConfigService, monkeyecxErrorConfigService, monkeyEcxFeatureToggleService, monkeyGTMConfigService, monkeyEcxAlertsConfigService, internalValidations } = this;
46
45
  const url = `${environment.urlAssets}/${monkeyecxCode.toLowerCase()}`;
47
46
  monkeyecxService
48
47
  ?.get(`${url}/white-label.json`)
@@ -50,7 +49,7 @@ export class MonkeyEcxConfigService extends MonkeyEcxCommonsService {
50
49
  monkeyecxi18nConfigService.apply(config, environment);
51
50
  monkeyecxLogsConfigService.apply(config, configBootstrap, environment, identifyCode);
52
51
  monkeyEcxFeatureToggleService.apply(configSubject$, environment);
53
- monkeyGAConfigService.apply(config, environment);
52
+ monkeyGTMConfigService.apply(config, environment);
54
53
  monkeyEcxAlertsConfigService.apply(config);
55
54
  monkeyStyleGuideSettingsService.bootstrap(`${url}/monkey-style-guide-settings.json`, internalValidations.bind(this, configBootstrap, callback, environment));
56
55
  configSubject$.next(config);
@@ -90,7 +89,7 @@ export class MonkeyEcxConfigService extends MonkeyEcxCommonsService {
90
89
  return this.configBootstrapSubject$.asObservable();
91
90
  }
92
91
  }
93
- MonkeyEcxConfigService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxConfigService, deps: [{ token: i1.MonkeyEcxService }, { token: i2.MonkeyEcxi18nConfigService }, { token: i3.MonkeyEcxLogsConfigService }, { token: i4.MonkeyStyleGuideSettingsService }, { token: i5.MonkeyEcxServiceWorkerConfigService }, { token: i6.MonkeyEcxSecurityConsoleConfigService }, { token: i7.MonkeyEcxMaintenanceConfigService }, { token: i8.MonkeyEcxErrorConfigService }, { token: i9.MonkeyEcxFeatureToggleService }, { token: i10.MonkeyEcxGAConfigService }, { token: i11.MonkeyEcxAlertsConfigService }], target: i0.ɵɵFactoryTarget.Injectable });
92
+ MonkeyEcxConfigService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxConfigService, deps: [{ token: i1.MonkeyEcxService }, { token: i2.MonkeyEcxi18nConfigService }, { token: i3.MonkeyEcxLogsConfigService }, { token: i4.MonkeyStyleGuideSettingsService }, { token: i5.MonkeyEcxServiceWorkerConfigService }, { token: i6.MonkeyEcxSecurityConsoleConfigService }, { token: i7.MonkeyEcxMaintenanceConfigService }, { token: i8.MonkeyEcxErrorConfigService }, { token: i9.MonkeyEcxFeatureToggleService }, { token: i10.MonkeyEcxGTMConfigService }, { token: i11.MonkeyEcxAlertsConfigService }], target: i0.ɵɵFactoryTarget.Injectable });
94
93
  MonkeyEcxConfigService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxConfigService, providedIn: 'root' });
95
94
  __decorate([
96
95
  MonkeyEcxCoreService({
@@ -107,5 +106,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
107
106
  args: [{
108
107
  providedIn: 'root'
109
108
  }]
110
- }], ctorParameters: function () { return [{ type: i1.MonkeyEcxService }, { type: i2.MonkeyEcxi18nConfigService }, { type: i3.MonkeyEcxLogsConfigService }, { type: i4.MonkeyStyleGuideSettingsService }, { type: i5.MonkeyEcxServiceWorkerConfigService }, { type: i6.MonkeyEcxSecurityConsoleConfigService }, { type: i7.MonkeyEcxMaintenanceConfigService }, { type: i8.MonkeyEcxErrorConfigService }, { type: i9.MonkeyEcxFeatureToggleService }, { type: i10.MonkeyEcxGAConfigService }, { type: i11.MonkeyEcxAlertsConfigService }]; }, propDecorators: { init: [] } });
111
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ua2V5ZWN4LWNvbmZpZy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW9ua2V5LWZyb250LWNvcmUvc3JjL2xpYi9jb3JlL3NlcnZpY2VzL2NvbmZpZy9tb25rZXllY3gtY29uZmlnLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLCtCQUErQjtBQUMvQixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBTy9ELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDOzs7Ozs7Ozs7Ozs7O0FBWS9FLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSx1QkFBdUI7SUFLakUsWUFDRSxnQkFBa0MsRUFDMUIsMEJBQXNELEVBQ3RELDBCQUFzRCxFQUN0RCwrQkFBZ0UsRUFDaEUsbUNBQXdFLEVBQ3hFLHFDQUE0RSxFQUM1RSxpQ0FBb0UsRUFDcEUsMkJBQXdELEVBQ3hELDZCQUE0RCxFQUM1RCxxQkFBK0MsRUFDL0MsNEJBQTBEO1FBRWxFLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBWGhCLCtCQUEwQixHQUExQiwwQkFBMEIsQ0FBNEI7UUFDdEQsK0JBQTBCLEdBQTFCLDBCQUEwQixDQUE0QjtRQUN0RCxvQ0FBK0IsR0FBL0IsK0JBQStCLENBQWlDO1FBQ2hFLHdDQUFtQyxHQUFuQyxtQ0FBbUMsQ0FBcUM7UUFDeEUsMENBQXFDLEdBQXJDLHFDQUFxQyxDQUF1QztRQUM1RSxzQ0FBaUMsR0FBakMsaUNBQWlDLENBQW1DO1FBQ3BFLGdDQUEyQixHQUEzQiwyQkFBMkIsQ0FBNkI7UUFDeEQsa0NBQTZCLEdBQTdCLDZCQUE2QixDQUErQjtRQUM1RCwwQkFBcUIs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SGxDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CO3VpQkE4RlEsSUFBSSIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIG5vLWNvbnNvbGUgKi9cbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgdGhyb3dFcnJvciwgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBNb25rZXlTdHlsZUd1aWRlU2V0dGluZ3NTZXJ2aWNlIH0gZnJvbSAnbW9ua2V5LXN0eWxlLWd1aWRlJztcbmltcG9ydCB7IE1vbmtleUVjeGkxOG5Db25maWdTZXJ2aWNlIH0gZnJvbSAnLi9tb25rZXllY3gtaTE4bi1jb25maWcuc2VydmljZSc7XG5pbXBvcnQgeyBNb25rZXlFY3hMb2dzQ29uZmlnU2VydmljZSB9IGZyb20gJy4vbW9ua2V5ZWN4LWxvZ3MtY29uZmlnLnNlcnZpY2UnO1xuaW1wb3J0IHsgTW9ua2V5RWN4U2VydmljZVdvcmtlckNvbmZpZ1NlcnZpY2UgfSBmcm9tICcuL21vbmtleWVjeC1zZXJ2aWNlLXdvcmtlci1jb25maWcuc2VydmljZSc7XG5pbXBvcnQgeyBNb25rZXlFY3hTZWN1cml0eUNvbnNvbGVDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi9tb25rZXllY3gtc2VjdXJpdHktY29uc29sZS1jb25maWcuc2VydmljZSc7XG5pbXBvcnQgeyBNb25rZXlFY3hNYWludGVuYW5jZUNvbmZpZ1NlcnZpY2UgfSBmcm9tICcuL21vbmtleWVjeC1tYWludGVuYW5jZS1jb25maWcuc2VydmljZSc7XG5pbXBvcnQgeyBNb25rZXlFY3hDb3JlU2VydmljZSB9IGZyb20gJy4uLy4uL2RlY29yYXRvcnMvbW9ua2V5ZWN4LWRlY29yYXRvcnMnO1xuaW1wb3J0IHsgTW9ua2V5RWN4Q29tbW9uc1NlcnZpY2UgfSBmcm9tICcuLi9jb21tb25zL21vbmtleWVjeC1jb21tb25zLnNlcnZpY2UnO1xuaW1wb3J0IHsgTW9ua2V5RWN4Q29uZmlnIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9tb25rZXllY3gtY29uZmlnJztcbmltcG9ydCB7IE1vbmtleUVjeENvbmZpZ0Jvb3RzdHJhcCB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvbW9ua2V5ZWN4LWNvbmZpZy1ib290c3RyYXAnO1xuaW1wb3J0IHsgTW9ua2V5RWN4U2VydmljZSB9IGZyb20gJy4uL21vbmtleWVjeC1zZXJ2aWNlLnNlcnZpY2UnO1xuaW1wb3J0IHsgTW9ua2V5RWN4RXJyb3JDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi9tb25rZXllY3gtZXJyb3ItY29uZmlnLnNlcnZpY2UnO1xuaW1wb3J0IHsgTW9ua2V5RWN4RmVhdHVyZVRvZ2dsZVNlcnZpY2UgfSBmcm9tICcuL21vbmtleWVjeC1mZWF0dXJlLXRvZ2dsZS5zZXJ2aWNlJztcbmltcG9ydCB7IE1vbmtleUVjeEdBQ29uZmlnU2VydmljZSB9IGZyb20gJy4vbW9ua2V5ZWN4LWdhLWNvbmZpZy5zZXJ2aWNlJztcbmltcG9ydCB7IE1vbmtleUVjeEFsZXJ0c0NvbmZpZ1NlcnZpY2UgfSBmcm9tICcuL21vbmtleWVjeC1hbGVydHMtY29uZmlnLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBNb25rZXlFY3hDb25maWdTZXJ2aWNlIGV4dGVuZHMgTW9ua2V5RWN4Q29tbW9uc1NlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IGNvbmZpZ1N1YmplY3QkOiBCZWhhdmlvclN1YmplY3Q8TW9ua2V5RWN4Q29uZmlnPjtcblxuICBwcml2YXRlIHJlYWRvbmx5IGNvbmZpZ0Jvb3RzdHJhcFN1YmplY3QkOiBCZWhhdmlvclN1YmplY3Q8TW9ua2V5RWN4Q29uZmlnPjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBtb25rZXllY3hTZXJ2aWNlOiBNb25rZXlFY3hTZXJ2aWNlLFxuICAgIHByaXZhdGUgbW9ua2V5ZWN4aTE4bkNvbmZpZ1NlcnZpY2U6IE1vbmtleUVjeGkxOG5Db25maWdTZXJ2aWNlLFxuICAgIHByaXZhdGUgbW9ua2V5ZWN4TG9nc0NvbmZpZ1NlcnZpY2U6IE1vbmtleUVjeExvZ3NDb25maWdTZXJ2aWNlLFxuICAgIHByaXZhdGUgbW9ua2V5U3R5bGVHdWlkZVNldHRpbmdzU2VydmljZTogTW9ua2V5U3R5bGVHdWlkZVNldHRpbmdzU2VydmljZSxcbiAgICBwcml2YXRlIG1vbmtleWVjeFNlcnZpY2VXb3JrZXJDb25maWdTZXJ2aWNlOiBNb25rZXlFY3hTZXJ2aWNlV29ya2VyQ29uZmlnU2VydmljZSxcbiAgICBwcml2YXRlIG1vbmtleWVjeFNlY3VyaXR5Q29uc29sZUNvbmZpZ1NlcnZpY2U6IE1vbmtleUVjeFNlY3VyaXR5Q29uc29sZUNvbmZpZ1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBtb25rZXllY3hNYWludGVuYW5jZUNvbmZpZ1NlcnZpY2U6IE1vbmtleUVjeE1haW50ZW5hbmNlQ29uZmlnU2VydmljZSxcbiAgICBwcml2YXRlIG1vbmtleWVjeEVycm9yQ29uZmlnU2VydmljZTogTW9ua2V5RWN4RXJyb3JDb25maWdTZXJ2aWNlLFxuICAgIHByaXZhdGUgbW9ua2V5RWN4RmVhdHVyZVRvZ2dsZVNlcnZpY2U6IE1vbmtleUVjeEZlYXR1cmVUb2dnbGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgbW9ua2V5R0FDb25maWdTZXJ2aWNlOiBNb25rZXlFY3hHQUNvbmZpZ1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBtb25rZXlFY3hBbGVydHNDb25maWdTZXJ2aWNlOiBNb25rZXlFY3hBbGVydHNDb25maWdTZXJ2aWNlXG4gICkge1xuICAgIHN1cGVyKG1vbmtleWVjeFNlcnZpY2UpO1xuICAgIHRoaXMuY29uZmlnU3ViamVjdCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KHt9KTtcbiAgICB0aGlzLmNvbmZpZ0Jvb3RzdHJhcFN1YmplY3QkID0gbmV3IEJlaGF2aW9yU3ViamVjdCh7fSk7XG4gIH1cblxuICBwcml2YXRlIGludGVybmFsVmFsaWRhdGlvbnMoLi4uYXJnczogYW55W10pIHtcbiAgICBjb25zdCB7XG4gICAgICBtb25rZXllY3hTZXJ2aWNlV29ya2VyQ29uZmlnU2VydmljZSxcbiAgICAgIG1vbmtleWVjeFNlY3VyaXR5Q29uc29sZUNvbmZpZ1NlcnZpY2UsXG4gICAgICBtb25rZXllY3hNYWludGVuYW5jZUNvbmZpZ1NlcnZpY2VcbiAgICB9ID0gdGhpcztcblxuICAgIGNvbnN0IGNvbmZpZ0Jvb3RzdHJhcCA9IGFyZ3NbMF07XG4gICAgY29uc3QgY2FsbGJhY2sgPSBhcmdzWzFdO1xuICAgIG1vbmtleWVjeFNlY3VyaXR5Q29uc29sZUNvbmZpZ1NlcnZpY2UuYXBwbHkoKTtcbiAgICBtb25rZXllY3hTZXJ2aWNlV29ya2VyQ29uZmlnU2VydmljZS5hcHBseShjb25maWdCb290c3RyYXApO1xuICAgIG1vbmtleWVjeE1haW50ZW5hbmNlQ29uZmlnU2VydmljZS5hcHBseShjb25maWdCb290c3RyYXApO1xuICAgIGNhbGxiYWNrKGNvbmZpZ0Jvb3RzdHJhcCk7XG4gIH1cblxuICBwcml2YXRlIGdldFdoaXRlTGFiZWxTZXR0aW5ncyhcbiAgICBtb25rZXllY3hDb2RlOiBzdHJpbmcsXG4gICAgY29uZmlnQm9vdHN0cmFwOiBNb25rZXlFY3hDb25maWdCb290c3RyYXAsXG4gICAgY2FsbGJhY2s6IEZ1bmN0aW9uLFxuICAgIGVudmlyb25tZW50OiBhbnksXG4gICAgaWRlbnRpZnlDb2RlOiBzdHJpbmdcbiAgKSB7XG4gICAgY29uc3Qge1xuICAgICAgbW9ua2V5ZWN4U2VydmljZSxcbiAgICAgIG1vbmtleWVjeGkxOG5Db25maWdTZXJ2aWNlLFxuICAgICAgY29uZmlnU3ViamVjdCQsXG4gICAgICBtb25rZXlTdHlsZUd1aWRlU2V0dGluZ3NTZXJ2aWNlLFxuICAgICAgbW9ua2V5ZWN4TG9nc0NvbmZpZ1NlcnZpY2UsXG4gICAgICBtb25rZXllY3hFcnJvckNvbmZpZ1NlcnZpY2UsXG4gICAgICBtb25rZXlFY3hGZWF0dXJlVG9nZ2xlU2VydmljZSxcbiAgICAgIG1vbmtleUdBQ29uZmlnU2VydmljZSxcbiAgICAgIG1vbmtleUVjeEFsZXJ0c0NvbmZpZ1NlcnZpY2UsXG4gICAgICBpbnRlcm5hbFZhbGlkYXRpb25zXG4gICAgfSA9IHRoaXM7XG5cbiAgICBjb25zdCB1cmwgPSBgJHtlbnZpcm9ubWVudC51cmxBc3NldHN9LyR7bW9ua2V5ZWN4Q29kZS50b0xvd2VyQ2FzZSgpfWA7XG5cbiAgICBtb25rZXllY3hTZXJ2aWNlXG4gICAgICA/LmdldDxhbnk+KFxuICAgICAgICBgJHt1cmx9L3doaXRlLWxhYmVsLmpzb25gXG4gICAgICApXG4gICAgICA/LnN1YnNjcmliZShcbiAgICAgICAgKGNvbmZpZzogTW9ua2V5RWN4Q29uZmlnKSA9PiB7XG4gICAgICAgICAgbW9ua2V5ZWN4aTE4bkNvbmZpZ1NlcnZpY2UuYXBwbHkoY29uZmlnLCBlbnZpcm9ubWVudCk7XG4gICAgICAgICAgbW9ua2V5ZWN4TG9nc0NvbmZpZ1NlcnZpY2UuYXBwbHkoY29uZmlnLCBjb25maWdCb290c3RyYXAsIGVudmlyb25tZW50LCBpZGVudGlmeUNvZGUpO1xuICAgICAgICAgIG1vbmtleUVjeEZlYXR1cmVUb2dnbGVTZXJ2aWNlLmFwcGx5KGNvbmZpZ1N1YmplY3QkLCBlbnZpcm9ubWVudCk7XG4gICAgICAgICAgbW9ua2V5R0FDb25maWdTZXJ2aWNlLmFwcGx5KGNvbmZpZywgZW52aXJvbm1lbnQpO1xuICAgICAgICAgIG1vbmtleUVjeEFsZXJ0c0NvbmZpZ1NlcnZpY2UuYXBwbHkoY29uZmlnKTtcbiAgICAgICAgICBtb25rZXlTdHlsZUd1aWRlU2V0dGluZ3NTZXJ2aWNlLmJvb3RzdHJhcChcbiAgICAgICAgICAgIGAke3VybH0vbW9ua2V5LXN0eWxlLWd1aWRlLXNldHRpbmdzLmpzb25gLFxuICAgICAgICAgICAgaW50ZXJuYWxWYWxpZGF0aW9ucy5iaW5kKHRoaXMsIGNvbmZpZ0Jvb3RzdHJhcCwgY2FsbGJhY2ssIGVudmlyb25tZW50KVxuICAgICAgICAgICk7XG4gICAgICAgICAgY29uZmlnU3ViamVjdCQubmV4dChjb25maWcpO1xuICAgICAgICB9LFxuICAgICAgICAoZXJyOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4ge1xuICAgICAgICAgIG1vbmtleWVjeEVycm9yQ29uZmlnU2VydmljZS5hcHBseSgndGhlbWUnKTtcbiAgICAgICAgICBjb25zb2xlLmVycm9yKCdQcm9ncmFtIENvbmZpZ3VyYXRpb24gbm90IGZvdW5kIScpO1xuICAgICAgICAgIHRocm93RXJyb3IoZXJyKTtcbiAgICAgICAgfVxuICAgICAgKTtcbiAgfVxuXG4gIEBNb25rZXlFY3hDb3JlU2VydmljZSh7XG4gICAgaHR0cFJlc3BvbnNlOiB7XG4gICAgICBodHRwQ29kZUlnbm9yZTogWzQwNF1cbiAgICB9LFxuICAgIHJlcXVlc3RJblByb2dyZXNzOiB7XG4gICAgICBzaG93UHJvZ3Jlc3M6IGZhbHNlXG4gICAgfVxuICB9KVxuICBwdWJsaWMgaW5pdChjYWxsYmFjazogRnVuY3Rpb24sIGVudmlyb25tZW50OiBhbnksIGlkZW50aWZ5Q29kZTogc3RyaW5nLCBtb25rZXllY3hDb2RlPzogc3RyaW5nKSB7XG4gICAgY29uc3QgeyBtb25rZXllY3hTZXJ2aWNlLCBjb25maWdCb290c3RyYXBTdWJqZWN0JCwgbW9ua2V5ZWN4RXJyb3JDb25maWdTZXJ2aWNlIH0gPSB0aGlzO1xuXG4gICAgbW9ua2V5ZWN4U2VydmljZVxuICAgICAgPy5nZXQoYCR7ZW52aXJvbm1lbnQuYm9vdHN0cmFwQXNzZXRzfWAsIHtcbiAgICAgICAgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ1xuICAgICAgfSlcbiAgICAgID8uc3Vic2NyaWJlKFxuICAgICAgICAocmVzcDogYW55KSA9PiB7XG4gICAgICAgICAgY29uc3QgeyBoZWFkZXJzLCBib2R5IH0gPSByZXNwO1xuICAgICAgICAgIGNvbnN0IG1vbmtleUNvZGUgPSBoZWFkZXJzLmdldCgnbW9ua2V5LWNvZGUnKSB8fCBtb25rZXllY3hDb2RlO1xuICAgICAgICAgIGlmIChtb25rZXlDb2RlKSB7XG4gICAgICAgICAgICB0aGlzLmdldFdoaXRlTGFiZWxTZXR0aW5ncyhtb25rZXlDb2RlLCBib2R5LCBjYWxsYmFjaywgZW52aXJvbm1lbnQsIGlkZW50aWZ5Q29kZSk7XG4gICAgICAgICAgICBjb25maWdCb290c3RyYXBTdWJqZWN0JC5uZXh0KGJvZHkpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBtb25rZXllY3hFcnJvckNvbmZpZ1NlcnZpY2UuYXBwbHkoJ3RoZW1lJyk7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKGBCb290c3RyYXAgJHttb25rZXlDb2RlfSBDb25maWd1cmF0aW9uIG5vdCBmb3VuZCFgKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICAgIChlcnI6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgbW9ua2V5ZWN4RXJyb3JDb25maWdTZXJ2aWNlLmFwcGx5KCd0aGVtZScpO1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ0Jvb3RzdHJhcCBDb25maWd1cmF0aW9uIG5vdCBmb3VuZCEnKTtcbiAgICAgICAgICB0aHJvd0Vycm9yKGVycik7XG4gICAgICAgIH1cbiAgICAgICk7XG4gIH1cblxuICBwdWJsaWMgY29uZmlnKCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlnU3ViamVjdCQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBwdWJsaWMgYm9vdHN0cmFwQ29uZmlnKCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlnQm9vdHN0cmFwU3ViamVjdCQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cbn1cbiJdfQ==
109
+ }], ctorParameters: function () { return [{ type: i1.MonkeyEcxService }, { type: i2.MonkeyEcxi18nConfigService }, { type: i3.MonkeyEcxLogsConfigService }, { type: i4.MonkeyStyleGuideSettingsService }, { type: i5.MonkeyEcxServiceWorkerConfigService }, { type: i6.MonkeyEcxSecurityConsoleConfigService }, { type: i7.MonkeyEcxMaintenanceConfigService }, { type: i8.MonkeyEcxErrorConfigService }, { type: i9.MonkeyEcxFeatureToggleService }, { type: i10.MonkeyEcxGTMConfigService }, { type: i11.MonkeyEcxAlertsConfigService }]; }, propDecorators: { init: [] } });
110
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ua2V5ZWN4LWNvbmZpZy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW9ua2V5LWZyb250LWNvcmUvc3JjL2xpYi9jb3JlL3NlcnZpY2VzL2NvbmZpZy9tb25rZXllY3gtY29uZmlnLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUVBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLGVBQWUsRUFBYyxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0QsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFHN0UsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7Ozs7Ozs7Ozs7Ozs7QUFlL0UsTUFBTSxPQUFPLHNCQUF1QixTQUFRLHVCQUF1QjtJQUtqRSxZQUNFLGdCQUFrQyxFQUMxQiwwQkFBc0QsRUFDdEQsMEJBQXNELEVBQ3RELCtCQUFnRSxFQUNoRSxtQ0FBd0UsRUFDeEUscUNBQTRFLEVBQzVFLGlDQUFvRSxFQUNwRSwyQkFBd0QsRUFDeEQsNkJBQTRELEVBQzVELHNCQUFpRCxFQUNqRCw0QkFBMEQ7UUFFbEUsS0FBSyxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFYaEIsK0JBQTBCLEdBQTFCLDBCQUEwQixDQUE0QjtRQUN0RCwrQkFBMEIsR0FBMUIsMEJBQTBCLENBQTRCO1FBQ3RELG9DQUErQixHQUEvQiwrQkFBK0IsQ0FBaUM7UUFDaEUsd0NBQW1DLEdBQW5DLG1DQUFtQyxDQUFxQztRQUN4RSwwQ0FBcUMsR0FBckMscUNBQXFDLENBQXVDO1FBQzVFLHNDQUFpQyxHQUFqQyxpQ0FBaUMsQ0FBbUM7UUFDcEUsZ0NBQTJCLEdBQTNCLDJCQUEyQixDQUE2QjtRQUN4RCxrQ0FBNkIsR0FBN0IsNkJBQTZCLENBQStCO1FBQzVELDJCQUFzQixHQUF0QixzQkFBc0Is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QztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7d2lCQThGUSxJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgbm8tY29uc29sZSAqL1xuaW1wb3J0IHsgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNb25rZXlTdHlsZUd1aWRlU2V0dGluZ3NTZXJ2aWNlIH0gZnJvbSAnbW9ua2V5LXN0eWxlLWd1aWRlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTW9ua2V5RWN4Q29yZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9kZWNvcmF0b3JzL21vbmtleWVjeC1kZWNvcmF0b3JzJztcbmltcG9ydCB7IE1vbmtleUVjeENvbmZpZyB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvbW9ua2V5ZWN4LWNvbmZpZyc7XG5pbXBvcnQgeyBNb25rZXlFY3hDb25maWdCb290c3RyYXAgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL21vbmtleWVjeC1jb25maWctYm9vdHN0cmFwJztcbmltcG9ydCB7IE1vbmtleUVjeENvbW1vbnNTZXJ2aWNlIH0gZnJvbSAnLi4vY29tbW9ucy9tb25rZXllY3gtY29tbW9ucy5zZXJ2aWNlJztcbmltcG9ydCB7IE1vbmtleUVjeFNlcnZpY2UgfSBmcm9tICcuLi9tb25rZXllY3gtc2VydmljZS5zZXJ2aWNlJztcbmltcG9ydCB7IE1vbmtleUVjeEFsZXJ0c0NvbmZpZ1NlcnZpY2UgfSBmcm9tICcuL21vbmtleWVjeC1hbGVydHMtY29uZmlnLnNlcnZpY2UnO1xuaW1wb3J0IHsgTW9ua2V5RWN4RXJyb3JDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi9tb25rZXllY3gtZXJyb3ItY29uZmlnLnNlcnZpY2UnO1xuaW1wb3J0IHsgTW9ua2V5RWN4RmVhdHVyZVRvZ2dsZVNlcnZpY2UgfSBmcm9tICcuL21vbmtleWVjeC1mZWF0dXJlLXRvZ2dsZS5zZXJ2aWNlJztcbmltcG9ydCB7IE1vbmtleUVjeEdUTUNvbmZpZ1NlcnZpY2UgfSBmcm9tICcuL21vbmtleWVjeC1ndG0tY29uZmlnLnNlcnZpY2UnO1xuaW1wb3J0IHsgTW9ua2V5RWN4aTE4bkNvbmZpZ1NlcnZpY2UgfSBmcm9tICcuL21vbmtleWVjeC1pMThuLWNvbmZpZy5zZXJ2aWNlJztcbmltcG9ydCB7IE1vbmtleUVjeExvZ3NDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi9tb25rZXllY3gtbG9ncy1jb25maWcuc2VydmljZSc7XG5pbXBvcnQgeyBNb25rZXlFY3hNYWludGVuYW5jZUNvbmZpZ1NlcnZpY2UgfSBmcm9tICcuL21vbmtleWVjeC1tYWludGVuYW5jZS1jb25maWcuc2VydmljZSc7XG5pbXBvcnQgeyBNb25rZXlFY3hTZWN1cml0eUNvbnNvbGVDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi9tb25rZXllY3gtc2VjdXJpdHktY29uc29sZS1jb25maWcuc2VydmljZSc7XG5pbXBvcnQgeyBNb25rZXlFY3hTZXJ2aWNlV29ya2VyQ29uZmlnU2VydmljZSB9IGZyb20gJy4vbW9ua2V5ZWN4LXNlcnZpY2Utd29ya2VyLWNvbmZpZy5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgTW9ua2V5RWN4Q29uZmlnU2VydmljZSBleHRlbmRzIE1vbmtleUVjeENvbW1vbnNTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBjb25maWdTdWJqZWN0JDogQmVoYXZpb3JTdWJqZWN0PE1vbmtleUVjeENvbmZpZz47XG5cbiAgcHJpdmF0ZSByZWFkb25seSBjb25maWdCb290c3RyYXBTdWJqZWN0JDogQmVoYXZpb3JTdWJqZWN0PE1vbmtleUVjeENvbmZpZz47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgbW9ua2V5ZWN4U2VydmljZTogTW9ua2V5RWN4U2VydmljZSxcbiAgICBwcml2YXRlIG1vbmtleWVjeGkxOG5Db25maWdTZXJ2aWNlOiBNb25rZXlFY3hpMThuQ29uZmlnU2VydmljZSxcbiAgICBwcml2YXRlIG1vbmtleWVjeExvZ3NDb25maWdTZXJ2aWNlOiBNb25rZXlFY3hMb2dzQ29uZmlnU2VydmljZSxcbiAgICBwcml2YXRlIG1vbmtleVN0eWxlR3VpZGVTZXR0aW5nc1NlcnZpY2U6IE1vbmtleVN0eWxlR3VpZGVTZXR0aW5nc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBtb25rZXllY3hTZXJ2aWNlV29ya2VyQ29uZmlnU2VydmljZTogTW9ua2V5RWN4U2VydmljZVdvcmtlckNvbmZpZ1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBtb25rZXllY3hTZWN1cml0eUNvbnNvbGVDb25maWdTZXJ2aWNlOiBNb25rZXlFY3hTZWN1cml0eUNvbnNvbGVDb25maWdTZXJ2aWNlLFxuICAgIHByaXZhdGUgbW9ua2V5ZWN4TWFpbnRlbmFuY2VDb25maWdTZXJ2aWNlOiBNb25rZXlFY3hNYWludGVuYW5jZUNvbmZpZ1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBtb25rZXllY3hFcnJvckNvbmZpZ1NlcnZpY2U6IE1vbmtleUVjeEVycm9yQ29uZmlnU2VydmljZSxcbiAgICBwcml2YXRlIG1vbmtleUVjeEZlYXR1cmVUb2dnbGVTZXJ2aWNlOiBNb25rZXlFY3hGZWF0dXJlVG9nZ2xlU2VydmljZSxcbiAgICBwcml2YXRlIG1vbmtleUdUTUNvbmZpZ1NlcnZpY2U6IE1vbmtleUVjeEdUTUNvbmZpZ1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBtb25rZXlFY3hBbGVydHNDb25maWdTZXJ2aWNlOiBNb25rZXlFY3hBbGVydHNDb25maWdTZXJ2aWNlXG4gICkge1xuICAgIHN1cGVyKG1vbmtleWVjeFNlcnZpY2UpO1xuICAgIHRoaXMuY29uZmlnU3ViamVjdCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KHt9KTtcbiAgICB0aGlzLmNvbmZpZ0Jvb3RzdHJhcFN1YmplY3QkID0gbmV3IEJlaGF2aW9yU3ViamVjdCh7fSk7XG4gIH1cblxuICBwcml2YXRlIGludGVybmFsVmFsaWRhdGlvbnMoLi4uYXJnczogYW55W10pIHtcbiAgICBjb25zdCB7XG4gICAgICBtb25rZXllY3hTZXJ2aWNlV29ya2VyQ29uZmlnU2VydmljZSxcbiAgICAgIG1vbmtleWVjeFNlY3VyaXR5Q29uc29sZUNvbmZpZ1NlcnZpY2UsXG4gICAgICBtb25rZXllY3hNYWludGVuYW5jZUNvbmZpZ1NlcnZpY2VcbiAgICB9ID0gdGhpcztcblxuICAgIGNvbnN0IGNvbmZpZ0Jvb3RzdHJhcCA9IGFyZ3NbMF07XG4gICAgY29uc3QgY2FsbGJhY2sgPSBhcmdzWzFdO1xuICAgIG1vbmtleWVjeFNlY3VyaXR5Q29uc29sZUNvbmZpZ1NlcnZpY2UuYXBwbHkoKTtcbiAgICBtb25rZXllY3hTZXJ2aWNlV29ya2VyQ29uZmlnU2VydmljZS5hcHBseShjb25maWdCb290c3RyYXApO1xuICAgIG1vbmtleWVjeE1haW50ZW5hbmNlQ29uZmlnU2VydmljZS5hcHBseShjb25maWdCb290c3RyYXApO1xuICAgIGNhbGxiYWNrKGNvbmZpZ0Jvb3RzdHJhcCk7XG4gIH1cblxuICBwcml2YXRlIGdldFdoaXRlTGFiZWxTZXR0aW5ncyhcbiAgICBtb25rZXllY3hDb2RlOiBzdHJpbmcsXG4gICAgY29uZmlnQm9vdHN0cmFwOiBNb25rZXlFY3hDb25maWdCb290c3RyYXAsXG4gICAgY2FsbGJhY2s6IEZ1bmN0aW9uLFxuICAgIGVudmlyb25tZW50OiBhbnksXG4gICAgaWRlbnRpZnlDb2RlOiBzdHJpbmdcbiAgKSB7XG4gICAgY29uc3Qge1xuICAgICAgbW9ua2V5ZWN4U2VydmljZSxcbiAgICAgIG1vbmtleWVjeGkxOG5Db25maWdTZXJ2aWNlLFxuICAgICAgY29uZmlnU3ViamVjdCQsXG4gICAgICBtb25rZXlTdHlsZUd1aWRlU2V0dGluZ3NTZXJ2aWNlLFxuICAgICAgbW9ua2V5ZWN4TG9nc0NvbmZpZ1NlcnZpY2UsXG4gICAgICBtb25rZXllY3hFcnJvckNvbmZpZ1NlcnZpY2UsXG4gICAgICBtb25rZXlFY3hGZWF0dXJlVG9nZ2xlU2VydmljZSxcbiAgICAgIG1vbmtleUdUTUNvbmZpZ1NlcnZpY2UsXG4gICAgICBtb25rZXlFY3hBbGVydHNDb25maWdTZXJ2aWNlLFxuICAgICAgaW50ZXJuYWxWYWxpZGF0aW9uc1xuICAgIH0gPSB0aGlzO1xuXG4gICAgY29uc3QgdXJsID0gYCR7ZW52aXJvbm1lbnQudXJsQXNzZXRzfS8ke21vbmtleWVjeENvZGUudG9Mb3dlckNhc2UoKX1gO1xuXG4gICAgbW9ua2V5ZWN4U2VydmljZVxuICAgICAgPy5nZXQ8YW55PihcbiAgICAgICAgYCR7dXJsfS93aGl0ZS1sYWJlbC5qc29uYFxuICAgICAgKVxuICAgICAgPy5zdWJzY3JpYmUoXG4gICAgICAgIChjb25maWc6IE1vbmtleUVjeENvbmZpZykgPT4ge1xuICAgICAgICAgIG1vbmtleWVjeGkxOG5Db25maWdTZXJ2aWNlLmFwcGx5KGNvbmZpZywgZW52aXJvbm1lbnQpO1xuICAgICAgICAgIG1vbmtleWVjeExvZ3NDb25maWdTZXJ2aWNlLmFwcGx5KGNvbmZpZywgY29uZmlnQm9vdHN0cmFwLCBlbnZpcm9ubWVudCwgaWRlbnRpZnlDb2RlKTtcbiAgICAgICAgICBtb25rZXlFY3hGZWF0dXJlVG9nZ2xlU2VydmljZS5hcHBseShjb25maWdTdWJqZWN0JCwgZW52aXJvbm1lbnQpO1xuICAgICAgICAgIG1vbmtleUdUTUNvbmZpZ1NlcnZpY2UuYXBwbHkoY29uZmlnLCBlbnZpcm9ubWVudCk7XG4gICAgICAgICAgbW9ua2V5RWN4QWxlcnRzQ29uZmlnU2VydmljZS5hcHBseShjb25maWcpO1xuICAgICAgICAgIG1vbmtleVN0eWxlR3VpZGVTZXR0aW5nc1NlcnZpY2UuYm9vdHN0cmFwKFxuICAgICAgICAgICAgYCR7dXJsfS9tb25rZXktc3R5bGUtZ3VpZGUtc2V0dGluZ3MuanNvbmAsXG4gICAgICAgICAgICBpbnRlcm5hbFZhbGlkYXRpb25zLmJpbmQodGhpcywgY29uZmlnQm9vdHN0cmFwLCBjYWxsYmFjaywgZW52aXJvbm1lbnQpXG4gICAgICAgICAgKTtcbiAgICAgICAgICBjb25maWdTdWJqZWN0JC5uZXh0KGNvbmZpZyk7XG4gICAgICAgIH0sXG4gICAgICAgIChlcnI6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgbW9ua2V5ZWN4RXJyb3JDb25maWdTZXJ2aWNlLmFwcGx5KCd0aGVtZScpO1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ1Byb2dyYW0gQ29uZmlndXJhdGlvbiBub3QgZm91bmQhJyk7XG4gICAgICAgICAgdGhyb3dFcnJvcihlcnIpO1xuICAgICAgICB9XG4gICAgICApO1xuICB9XG5cbiAgQE1vbmtleUVjeENvcmVTZXJ2aWNlKHtcbiAgICBodHRwUmVzcG9uc2U6IHtcbiAgICAgIGh0dHBDb2RlSWdub3JlOiBbNDA0XVxuICAgIH0sXG4gICAgcmVxdWVzdEluUHJvZ3Jlc3M6IHtcbiAgICAgIHNob3dQcm9ncmVzczogZmFsc2VcbiAgICB9XG4gIH0pXG4gIHB1YmxpYyBpbml0KGNhbGxiYWNrOiBGdW5jdGlvbiwgZW52aXJvbm1lbnQ6IGFueSwgaWRlbnRpZnlDb2RlOiBzdHJpbmcsIG1vbmtleWVjeENvZGU/OiBzdHJpbmcpIHtcbiAgICBjb25zdCB7IG1vbmtleWVjeFNlcnZpY2UsIGNvbmZpZ0Jvb3RzdHJhcFN1YmplY3QkLCBtb25rZXllY3hFcnJvckNvbmZpZ1NlcnZpY2UgfSA9IHRoaXM7XG5cbiAgICBtb25rZXllY3hTZXJ2aWNlXG4gICAgICA/LmdldChgJHtlbnZpcm9ubWVudC5ib290c3RyYXBBc3NldHN9YCwge1xuICAgICAgICBvYnNlcnZlOiAncmVzcG9uc2UnXG4gICAgICB9KVxuICAgICAgPy5zdWJzY3JpYmUoXG4gICAgICAgIChyZXNwOiBhbnkpID0+IHtcbiAgICAgICAgICBjb25zdCB7IGhlYWRlcnMsIGJvZHkgfSA9IHJlc3A7XG4gICAgICAgICAgY29uc3QgbW9ua2V5Q29kZSA9IGhlYWRlcnMuZ2V0KCdtb25rZXktY29kZScpIHx8IG1vbmtleWVjeENvZGU7XG4gICAgICAgICAgaWYgKG1vbmtleUNvZGUpIHtcbiAgICAgICAgICAgIHRoaXMuZ2V0V2hpdGVMYWJlbFNldHRpbmdzKG1vbmtleUNvZGUsIGJvZHksIGNhbGxiYWNrLCBlbnZpcm9ubWVudCwgaWRlbnRpZnlDb2RlKTtcbiAgICAgICAgICAgIGNvbmZpZ0Jvb3RzdHJhcFN1YmplY3QkLm5leHQoYm9keSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG1vbmtleWVjeEVycm9yQ29uZmlnU2VydmljZS5hcHBseSgndGhlbWUnKTtcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoYEJvb3RzdHJhcCAke21vbmtleUNvZGV9IENvbmZpZ3VyYXRpb24gbm90IGZvdW5kIWApO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgKGVycjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcbiAgICAgICAgICBtb25rZXllY3hFcnJvckNvbmZpZ1NlcnZpY2UuYXBwbHkoJ3RoZW1lJyk7XG4gICAgICAgICAgY29uc29sZS5lcnJvcignQm9vdHN0cmFwIENvbmZpZ3VyYXRpb24gbm90IGZvdW5kIScpO1xuICAgICAgICAgIHRocm93RXJyb3IoZXJyKTtcbiAgICAgICAgfVxuICAgICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBjb25maWcoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5jb25maWdTdWJqZWN0JC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBib290c3RyYXBDb25maWcoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5jb25maWdCb290c3RyYXBTdWJqZWN0JC5hc09ic2VydmFibGUoKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,51 @@
1
+ /* eslint-disable no-console */
2
+ import { Injectable } from '@angular/core';
3
+ import * as i0 from "@angular/core";
4
+ export class MonkeyEcxGTMConfigService {
5
+ constructor() {
6
+ // not to do
7
+ }
8
+ handleCode(key) {
9
+ try {
10
+ window.dataLayer = window.dataLayer || [];
11
+ window.dataLayer.push({
12
+ 'gtm.start': new Date().getTime(),
13
+ event: 'gtm.js'
14
+ });
15
+ const head = document.querySelector('head');
16
+ const script = document.createElement('script');
17
+ script.async = true;
18
+ script.src = `https://www.googletagmanager.com/gtm.js?id=GTM-${key}`;
19
+ head?.appendChild(script);
20
+ const body = document.querySelector('body');
21
+ const noscript = document.createElement('noscript');
22
+ const iframe = document.createElement('iframe');
23
+ iframe.src = `https://www.googletagmanager.com/ns.html?id=GTM-${key}`;
24
+ iframe.height = '0';
25
+ iframe.width = '0';
26
+ iframe.style.display = 'none';
27
+ iframe.style.visibility = 'hidden';
28
+ noscript.appendChild(iframe);
29
+ body?.appendChild(noscript);
30
+ }
31
+ catch (e) {
32
+ console.error('GTM Configuration Error!');
33
+ }
34
+ }
35
+ apply(params, environment) {
36
+ const { gtm } = params;
37
+ const { enabled, key } = gtm || { enabled: false, key: '' };
38
+ if (enabled && environment.environment !== 'dev') {
39
+ this.handleCode(key);
40
+ }
41
+ }
42
+ }
43
+ MonkeyEcxGTMConfigService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxGTMConfigService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
44
+ MonkeyEcxGTMConfigService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxGTMConfigService, providedIn: 'root' });
45
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: MonkeyEcxGTMConfigService, decorators: [{
46
+ type: Injectable,
47
+ args: [{
48
+ providedIn: 'root'
49
+ }]
50
+ }], ctorParameters: function () { return []; } });
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ua2V5ZWN4LWd0bS1jb25maWcuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21vbmtleS1mcm9udC1jb3JlL3NyYy9saWIvY29yZS9zZXJ2aWNlcy9jb25maWcvbW9ua2V5ZWN4LWd0bS1jb25maWcuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrQkFBK0I7QUFDL0IsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFRM0MsTUFBTSxPQUFPLHlCQUF5QjtJQUNwQztRQUNFLFlBQVk7SUFDZCxDQUFDO0lBRU8sVUFBVSxDQUFDLEdBQVc7UUFDNUIsSUFBSTtZQUNGLE1BQU0sQ0FBQyxTQUFTLEdBQUcsTUFBTSxDQUFDLFNBQVMsSUFBSSxFQUFFLENBQUM7WUFDMUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUM7Z0JBQ3BCLFdBQVcsRUFBRSxJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRTtnQkFDakMsS0FBSyxFQUFFLFFBQVE7YUFDaEIsQ0FBQyxDQUFDO1lBQ0gsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUM1QyxNQUFNLE1BQU0sR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ2hELE1BQU0sQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO1lBQ3BCLE1BQU0sQ0FBQyxHQUFHLEdBQUcsa0RBQWtELEdBQUcsRUFBRSxDQUFDO1lBQ3JFLElBQUksRUFBRSxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7WUFFMUIsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUM1QyxNQUFNLFFBQVEsR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQ3BELE1BQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDaEQsTUFBTSxDQUFDLEdBQUcsR0FBRyxtREFBbUQsR0FBRyxFQUFFLENBQUM7WUFDdEUsTUFBTSxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUM7WUFDcEIsTUFBTSxDQUFDLEtBQUssR0FBRyxHQUFHLENBQUM7WUFDbkIsTUFBTSxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDO1lBQzlCLE1BQU0sQ0FBQyxLQUFLLENBQUMsVUFBVSxHQUFHLFFBQVEsQ0FBQztZQUNuQyxRQUFRLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQzdCLElBQUksRUFBRSxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUM7U0FDN0I7UUFBQyxPQUFPLENBQUMsRUFBRTtZQUNWLE9BQU8sQ0FBQyxLQUFLLENBQUMsMEJBQTBCLENBQUMsQ0FBQztTQUMzQztJQUNILENBQUM7SUFFTSxLQUFLLENBQUMsTUFBdUIsRUFBRSxXQUFnQjtRQUNwRCxNQUFNLEVBQUUsR0FBRyxFQUFFLEdBQUcsTUFBTSxDQUFDO1FBQ3ZCLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLEdBQUcsR0FBRyxJQUFJLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLENBQUM7UUFDNUQsSUFBSSxPQUFPLElBQUksV0FBVyxDQUFDLFdBQVcsS0FBSyxLQUFLLEVBQUU7WUFDaEQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUN0QjtJQUNILENBQUM7O3NIQXZDVSx5QkFBeUI7MEhBQXpCLHlCQUF5QixjQUZ4QixNQUFNOzJGQUVQLHlCQUF5QjtrQkFIckMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBuby1jb25zb2xlICovXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNb25rZXlFY3hDb25maWcgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcblxuZGVjbGFyZSBjb25zdCB3aW5kb3c6IGFueTtcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgTW9ua2V5RWN4R1RNQ29uZmlnU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIC8vIG5vdCB0byBkb1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVDb2RlKGtleTogc3RyaW5nKSB7XG4gICAgdHJ5IHtcbiAgICAgIHdpbmRvdy5kYXRhTGF5ZXIgPSB3aW5kb3cuZGF0YUxheWVyIHx8IFtdO1xuICAgICAgd2luZG93LmRhdGFMYXllci5wdXNoKHtcbiAgICAgICAgJ2d0bS5zdGFydCc6IG5ldyBEYXRlKCkuZ2V0VGltZSgpLFxuICAgICAgICBldmVudDogJ2d0bS5qcydcbiAgICAgIH0pO1xuICAgICAgY29uc3QgaGVhZCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ2hlYWQnKTtcbiAgICAgIGNvbnN0IHNjcmlwdCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpO1xuICAgICAgc2NyaXB0LmFzeW5jID0gdHJ1ZTtcbiAgICAgIHNjcmlwdC5zcmMgPSBgaHR0cHM6Ly93d3cuZ29vZ2xldGFnbWFuYWdlci5jb20vZ3RtLmpzP2lkPUdUTS0ke2tleX1gO1xuICAgICAgaGVhZD8uYXBwZW5kQ2hpbGQoc2NyaXB0KTtcblxuICAgICAgY29uc3QgYm9keSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ2JvZHknKTtcbiAgICAgIGNvbnN0IG5vc2NyaXB0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnbm9zY3JpcHQnKTtcbiAgICAgIGNvbnN0IGlmcmFtZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2lmcmFtZScpO1xuICAgICAgaWZyYW1lLnNyYyA9IGBodHRwczovL3d3dy5nb29nbGV0YWdtYW5hZ2VyLmNvbS9ucy5odG1sP2lkPUdUTS0ke2tleX1gO1xuICAgICAgaWZyYW1lLmhlaWdodCA9ICcwJztcbiAgICAgIGlmcmFtZS53aWR0aCA9ICcwJztcbiAgICAgIGlmcmFtZS5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xuICAgICAgaWZyYW1lLnN0eWxlLnZpc2liaWxpdHkgPSAnaGlkZGVuJztcbiAgICAgIG5vc2NyaXB0LmFwcGVuZENoaWxkKGlmcmFtZSk7XG4gICAgICBib2R5Py5hcHBlbmRDaGlsZChub3NjcmlwdCk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgY29uc29sZS5lcnJvcignR1RNIENvbmZpZ3VyYXRpb24gRXJyb3IhJyk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGFwcGx5KHBhcmFtczogTW9ua2V5RWN4Q29uZmlnLCBlbnZpcm9ubWVudDogYW55KSB7XG4gICAgY29uc3QgeyBndG0gfSA9IHBhcmFtcztcbiAgICBjb25zdCB7IGVuYWJsZWQsIGtleSB9ID0gZ3RtIHx8IHsgZW5hYmxlZDogZmFsc2UsIGtleTogJycgfTtcbiAgICBpZiAoZW5hYmxlZCAmJiBlbnZpcm9ubWVudC5lbnZpcm9ubWVudCAhPT0gJ2RldicpIHtcbiAgICAgIHRoaXMuaGFuZGxlQ29kZShrZXkpO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -34,6 +34,18 @@ export class MonkeyEcxUtils {
34
34
  }
35
35
  }[country.toUpperCase()]?.[type];
36
36
  }
37
+ static getDocumentPlaceholder(type, country = '') {
38
+ return {
39
+ BR: {
40
+ CPF: '000.000.000-XX',
41
+ CNPJ: '00.000.000/0000-00'
42
+ },
43
+ CL: {
44
+ CPF: '0000000-A',
45
+ CNPJ: '0000000-A'
46
+ }
47
+ }[country.toUpperCase()]?.[type];
48
+ }
37
49
  static formatDocumentWithMask(doc, withType, country) {
38
50
  if (!doc)
39
51
  return doc;
@@ -236,4 +248,4 @@ export class MonkeyEcxUtils {
236
248
  return handled;
237
249
  }
238
250
  }
239
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb25rZXktZnJvbnQtY29yZS9zcmMvbGliL2NvcmUvdXRpbHMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUNBQWlDO0FBQ2pDLDRCQUE0QjtBQUM1QixzQ0FBc0M7QUFDdEMsZ0NBQWdDO0FBQ2hDLG1DQUFtQztBQUNuQywyQkFBMkI7QUFDM0IsaUNBQWlDO0FBQ2pDLGdDQUFnQztBQUNoQywyQkFBMkI7QUFFM0IsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUV6QyxxQ0FBcUM7QUFDckMsTUFBTSxPQUFPLGNBQWM7SUFDekIsTUFBTSxDQUFDLHlCQUF5QixDQUFDLEVBQU87UUFDdEMsT0FBTyxFQUFFLEtBQUssSUFBSSxJQUFJLEVBQUUsS0FBSyxTQUFTLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FBQztJQUN0RCxDQUFDO0lBRUQsTUFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFXLEVBQUUsT0FBZ0I7UUFDbEQsSUFBSSxDQUFDLEdBQUc7WUFBRSxPQUFPLEVBQUUsQ0FBQztRQUNwQixJQUFJLE9BQU8sS0FBSyxJQUFJO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDbkMsT0FBTyxHQUFHLENBQUMsTUFBTSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7SUFDM0MsQ0FBQztJQUVELE1BQU0sQ0FBQyxlQUFlLENBQUMsSUFBWSxFQUFFLE9BQU8sR0FBRyxFQUFFO1FBQy9DLE9BQU87WUFDTCxFQUFFLEVBQUU7Z0JBQ0YsR0FBRyxFQUFFLFlBQVksQ0FBQyxHQUFHO2dCQUNyQixJQUFJLEVBQUUsWUFBWSxDQUFDLElBQUk7Z0JBQ3ZCLEVBQUUsRUFBRSxHQUFHLFlBQVksQ0FBQyxHQUFHLEtBQUssWUFBWSxDQUFDLElBQUksRUFBRTthQUNoRDtZQUNELEVBQUUs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UUFDbkIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFO1lBQzNDLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksTUFBTSxDQUFDLElBQUksR0FBRyxHQUFHLEVBQUUsR0FBRyxDQUFDLEVBQUUsR0FBRyxLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQ3JFLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgY29tbWEtZGFuZ2xlICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBuby11c2VsZXNzLWVzY2FwZSAqL1xuLyogZXNsaW50LWRpc2FibGUgbm8tcGx1c3BsdXMgKi9cbi8qIGVzbGludC1kaXNhYmxlIG5vLWNvbmQtYXNzaWduICovXG4vKiBlc2xpbnQtZGlzYWJsZSBlcWVxZXEgKi9cbi8qIGVzbGludC1kaXNhYmxlIG5vLXJlZGVjbGFyZSAqL1xuLyogZXNsaW50LWRpc2FibGUgdmFycy1vbi10b3AgKi9cbi8qIGVzbGludC1kaXNhYmxlIG5vLXZhciAqL1xuXG5pbXBvcnQgeyBDb3VudHJ5TWFza3MgfSBmcm9tICcuL3N0YXRpY3MnO1xuXG4vKiBlc2xpbnQtZGlzYWJsZSBibG9jay1zY29wZWQtdmFyICovXG5leHBvcnQgY2xhc3MgTW9ua2V5RWN4VXRpbHMge1xuICBzdGF0aWMgcGVyc2lzdE51bGxFbXB0eVVuZGVmaW5lZCh0cDogYW55KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRwICE9PSBudWxsICYmIHRwICE9PSB1bmRlZmluZWQgJiYgdHAgIT09ICcnO1xuICB9XG5cbiAgc3RhdGljIGdldERvY3VtZW50VHlwZShkb2M6IHN0cmluZywgY291bnRyeT86IHN0cmluZykge1xuICAgIGlmICghZG9jKSByZXR1cm4gJyc7XG4gICAgaWYgKGNvdW50cnkgPT09ICdjbCcpIHJldHVybiAnUlVUJztcbiAgICByZXR1cm4gZG9jLmxlbmd0aCA8PSAxMSA/ICdDUEYnIDogJ0NOUEonO1xuICB9XG5cbiAgc3RhdGljIGdldERvY3VtZW50TWFzayh0eXBlOiBzdHJpbmcsIGNvdW50cnkgPSAnJykge1xuICAgIHJldHVybiB7XG4gICAgICBCUjoge1xuICAgICAgICBDUEY6IENvdW50cnlNYXNrcy5DUEYsXG4gICAgICAgIENOUEo6IENvdW50cnlNYXNrcy5DTlBKLFxuICAgICAgICAnJzogYCR7Q291bnRyeU1hc2tzLkNQRn18fCR7Q291bnRyeU1hc2tzLkNOUEp9YFxuICAgICAgfSxcbiAgICAgIENMOiB7XG4gICAgICAgIENQRjogQ291bnRyeU1hc2tzLlJVVDEsXG4gICAgICAgIENOUEo6IENvdW50cnlNYXNrcy5SVVQyLFxuICAgICAgICAnJzogYCR7Q291bnRyeU1hc2tzLlJVVDF9fHwke0NvdW50cnlNYXNrcy5SVVQyfWBcbiAgICAgIH1cbiAgICB9W2NvdW50cnkudG9VcHBlckNhc2UoKV0/Llt0eXBlXTtcbiAgfVxuXG4gIHN0YXRpYyBmb3JtYXREb2N1bWVudFdpdGhNYXNrKGRvYzogc3RyaW5nLCB3aXRoVHlwZT86IGJvb2xlYW4sIGNvdW50cnk/OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGlmICghZG9jKSByZXR1cm4gZG9jO1xuICAgIGxldCBmb3JtYXRlZDogc3RyaW5nID0gJyc7XG4gICAgaWYgKGNvdW50cnkgPT09ICdjbCcpIHtcbiAgICAgIGZvcm1hdGVkID0gZG9jLnJlcGxhY2UoL14oXFxkezEsMn0pKFxcZHszfSkoXFxkezN9KShcXHd7MX0pJC8sICckMS4kMi4kMy0kNCcpO1xuICAgICAgcmV0dXJuIGAke2Zvcm1hdGVkfWA7XG4gICAgfVxuICAgIGlmIChkb2MubGVuZ3RoID09PSAxNCkge1xuICAgICAgZm9ybWF0ZWQgPSBkb2NcbiAgICAgICAgLnJlcGxhY2UoL14oXFxkezJ9KShcXGQpLywgJyQxLiQyJylcbiAgICAgICAgLnJlcGxhY2UoL14oXFxkezJ9KVxcLihcXGR7M30pKFxcZCkvLCAnJDEuJDIuJDMnKVxuICAgICAgICAucmVwbGFjZSgvXFwuKFxcZHszfSkoXFxkKS8sICcuJDEvJDInKVxuICAgICAgICAucmVwbGFjZSgvKFxcZHs0fSkoXFxkKS8sICckMS0kMicpO1xuICAgIH0gZWxzZSB7XG4gICAgICBmb3JtYXRlZCA9IGRvY1xuICAgICAgICAucmVwbGFjZSgvXihcXGR7M30pKFxcZCkvLCAnJDEuJDInKVxuICAgICAgICAucmVwbGFjZSgvXihcXGR7M30pXFwuKFxcZHszfSkoXFxkKS8sICckMS4kMi4kMycpXG4gICAgICAgIC5yZXBsYWNlKC9cXC4oXFxkezN9KShcXGQpLywgJy4kMS0kMicpO1xuICAgIH1cblxuICAgIHJldHVybiBgJHt3aXRoVHlwZSA/IGAke3RoaXMuZ2V0RG9jdW1lbnRUeXBlKGRvYyl9OmAgOiAnJ30gJHtmb3JtYXRlZH1gO1xuICB9XG5cbiAgc3RhdGljIGN1dEZpcnN0TGFzdE5hbWUodmFsdWU6IHN0cmluZywgdHA6IHN0cmluZyA9ICdmaXJzdCcpIHtcbiAgICBjb25zdCBzcGxpdCA9IHZhbHVlPy50cmltKCk/LnNwbGl0KCcgJyk7XG5cbiAgICBpZiAodHAgPT09ICdmaXJzdCcpIHJldHVybiBzcGxpdFswXTtcbiAgICByZXR1cm4gc3BsaXQ/LnNwbGljZSgxLCBzcGxpdC5sZW5ndGgpPy5qb2luKCcgJyk7XG4gIH1cblxuICBzdGF0aWMgaXNDUEZDTlBKVmFsaWQoZG9jdW1lbnQ6IGFueSk6IGJvb2xlYW4ge1xuICAgIGRvY3VtZW50ID0gZG9jdW1lbnQucmVwbGFjZSgvW15cXGRdL2csICcnKTtcblxuICAgIGNvbnN0IGhhbmRsZWQgPSBkb2N1bWVudC5yZXBsYWNlKG5ldyBSZWdFeHAoZG9jdW1lbnQuY2hhckF0KDApLCAnZycpLCAnJyk7XG4gICAgaWYgKCFoYW5kbGVkKSByZXR1cm4gZmFsc2U7XG5cbiAgICBpZiAoZG9jdW1lbnQubGVuZ3RoID09PSAxMSkge1xuICAgICAgbGV0IGJhc2UgPSBbMTAsIDksIDgsIDcsIDYsIDUsIDQsIDMsIDIsIDEsIDBdO1xuICAgICAgZm9yICh2YXIgaSA9IDAsIG4gPSAwOyBpIDwgOTsgbiArPSBkb2N1bWVudFtpXSAqIGJhc2VbaSsrXSk7XG4gICAgICBpZiAoZG9jdW1lbnRbOV0gIT0gKChuICU9IDExKSA8PSAxID8gMCA6IDExIC0gbikpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgICAgYmFzZSA9IFsxMSwgMTAsIDksIDgsIDcsIDYsIDUsIDQsIDMsIDIsIDEsIDBdO1xuICAgICAgZm9yICh2YXIgaSA9IDAsIG4gPSAwOyBpIDw9IDk7IG4gKz0gZG9jdW1lbnRbaV0gKiBiYXNlW2krK10pO1xuICAgICAgaWYgKGRvY3VtZW50WzEwXSAhPSAoKG4gJT0gMTEpIDw9IDEgPyAwIDogMTEgLSBuKSkge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgaWYgKGRvY3VtZW50Lmxlbmd0aCA9PT0gMTQgfHwgLzB7MTR9Ly50ZXN0KGRvY3VtZW50KSkge1xuICAgICAgY29uc3QgYmFzZSA9IFs2LCA1LCA0LCAzLCAyLCA5LCA4LCA3LCA2LCA1LCA0LCAzLCAyXTtcbiAgICAgIGZvciAodmFyIGkgPSAwLCBuID0gMDsgaSA8IDEyOyBuICs9IGRvY3VtZW50W2ldICogYmFzZVsrK2ldKTtcbiAgICAgIGlmIChkb2N1bWVudFsxMl0gIT0gKChuICU9IDExKSA8IDIgPyAwIDogMTEgLSBuKSkge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG5cbiAgICAgIGZvciAodmFyIGkgPSAwLCBuID0gMDsgaSA8PSAxMjsgbiArPSBkb2N1bWVudFtpXSAqIGJhc2VbaSsrXSk7XG4gICAgICBpZiAoZG9jdW1lbnRbMTNdICE9ICgobiAlPSAxMSkgPCAyID8gMCA6IDExIC0gbikpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBpc1ZhbGlkUlVUKGRvY3VtZW50OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICBpZiAoIWRvY3VtZW50IHx8IGRvY3VtZW50LnRyaW0oKS5sZW5ndGggPCAzKSByZXR1cm4gZmFsc2U7XG4gICAgY29uc3QgZG9jdW1lbnRIYW5kbGVkID0gZG9jdW1lbnQucmVwbGFjZSgvW14wLTlrS10vZywgJycpO1xuXG4gICAgaWYgKGRvY3VtZW50SGFuZGxlZC5sZW5ndGggPCAzKSByZXR1cm4gZmFsc2U7XG5cbiAgICBjb25zdCBjYWxjRHYgPSAocnV0OiBzdHJpbmcpID0+IHtcbiAgICAgIGNvbnN0IHZhbHVlOiBzdHJpbmcgPSBgJHtydXR9YDtcbiAgICAgIGxldCBzdW0gPSAwO1xuICAgICAgbGV0IG11bHQgPSAyO1xuXG4gICAgICBmb3IgKGxldCBpID0gMTsgaSA8PSB2YWx1ZS5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBpbmRleCA9IG11bHQgKiBOdW1iZXIodmFsdWUuY2hhckF0KHZhbHVlLmxlbmd0aCAtIGkpKTtcblxuICAgICAgICBzdW0gKz0gaW5kZXg7XG5cbiAgICAgICAgaWYgKG11bHQgPCA3KSB7XG4gICAgICAgICAgbXVsdCArPSAxO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIG11bHQgPSAyO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGR2RXNwZXJhZG8gPSAxMSAtIChzdW0gJSAxMSk7XG4gICAgICBpZiAoZHZFc3BlcmFkbyA9PT0gMTApIHJldHVybiAnSyc7XG4gICAgICBpZiAoZHZFc3BlcmFkbyA9PT0gMTEpIHJldHVybiAnMCc7XG4gICAgICByZXR1cm4gYCR7ZHZFc3BlcmFkb31gO1xuICAgIH07XG5cbiAgICBjb25zdCBudW0gPSBkb2N1bWVudEhhbmRsZWQuc2xpY2UoMCwgLTEpO1xuICAgIGNvbnN0IGRndiA9IGRvY3VtZW50SGFuZGxlZC5zbGljZSgtMSkudG9VcHBlckNhc2UoKTtcblxuICAgIGNvbnN0IGR2Q2FsYyA9IGNhbGNEdihudW0pO1xuICAgIHJldHVybiBkdkNhbGMgPT09IGRndjtcbiAgfVxuXG4gIHN0YXRpYyBpc1ZhbGlkVXJsKHR4dDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgY29uc3QgcmVnZXggPSAvKGh0dHBzPzpcXC9cXC8oPzpbYS16MC05XSg/OlthLXowLTktXXswLDYxfVthLXowLTldKT9cXC4pK1thLXowLTldW2EtejAtOS1dezAsNjF9W2EtejAtOV0pKDo/XFxkKilcXC8/KFthLXpfXFxcXC8wLTlcXC0jLl0qKVxcPz8oW2Etel9cXFxcLzAtOVxcLSM9Jl0qKS9nO1xuICAgIHJldHVybiByZWdleC50ZXN0KHR4dCk7XG4gIH1cblxuICBzdGF0aWMgaXNWYWxpZFppcENvZGUoemlwQ29kZTogc3RyaW5nLCBjb3VudHJ5Pzogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgY29uc3QgbGVuZ3RoID0gKGNvdW50cnkgPT09ICdjbCcpID8gNyA6IDg7XG4gICAgcmV0dXJuIGAke3RoaXMuaGFuZGxlT25seU51bWJlcnMoemlwQ29kZSl9YC5sZW5ndGggPT09IGxlbmd0aDtcbiAgfVxuXG4gIHN0YXRpYyBnZXRSYW5kb21TdHJpbmcobGVuOiBudW1iZXIsIGNoYXJTZXQ/OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNoYXJTZXQgPSBjaGFyU2V0IHx8ICdBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSc7XG5cbiAgICBjb25zdCByYW5kb21TdHJpbmc6IHN0cmluZyA9IG5ldyBBcnJheShsZW4pXG4gICAgICAuZmlsbCgnMScpXG4gICAgICAubWFwKCgpID0+IHtcbiAgICAgICAgcmV0dXJuIGNoYXJTZXQ/LmNoYXJBdChNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiBjaGFyU2V0Py5sZW5ndGgpKTtcbiAgICAgIH0pXG4gICAgICAuam9pbignJyk7XG4gICAgcmV0dXJuIHJhbmRvbVN0cmluZztcbiAgfVxuXG4gIHN0YXRpYyBoYW5kbGVPbmx5TnVtYmVycyh2YWx1ZTogYW55KSB7XG4gICAgaWYgKCF2YWx1ZSkgcmV0dXJuIG51bGw7XG4gICAgcmV0dXJuIHZhbHVlLnJlcGxhY2UobmV3IFJlZ0V4cCgvW14wLTldL2cpLCAnJyk7XG4gIH1cblxuICBzdGF0aWMgaGFuZGxlT25seUFscGhhTnVtZXJpYyh2YWx1ZTogYW55KSB7XG4gICAgaWYgKCF2YWx1ZSkgcmV0dXJuICcnO1xuICAgIHJldHVybiB2YWx1ZS5yZXBsYWNlKG5ldyBSZWdFeHAoL1teMC05QS1aYS16XS8sICdnJyksICcnKTtcbiAgfVxuXG4gIHN0YXRpYyBjYXBpdGFsaXplKHZhbHVlOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gYCR7dmFsdWUuY2hhckF0KDApLnRvVXBwZXJDYXNlKCl9JHt2YWx1ZS5zbGljZSgxKX1gO1xuICB9XG5cbiAgc3RhdGljIGZvcm1hdFppcENvZGUoemlwQ29kZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBpZiAoIXppcENvZGUpIHJldHVybiB6aXBDb2RlO1xuICAgIGNvbnN0IGZvcm1hdGVkOiBzdHJpbmcgPSB6aXBDb2RlXG4gICAgICAucmVwbGFjZSgvXihcXGR7NX0pKFxcZCkvLCAnJDEtJDInKVxuICAgICAgLnJlcGxhY2UoL1xcLihcXGR7M30pKFxcZCkvLCAnLiQxLSQyJyk7XG5cbiAgICByZXR1cm4gYCR7Zm9ybWF0ZWR9YDtcbiAgfVxuXG4gIHN0YXRpYyBmb3JtYXRGaWxlU2l6ZShzaXplOiBudW1iZXIpOiBzdHJpbmcge1xuICAgIGNvbnN0IHVuaXRzID0gWydCJywgJ0tCJywgJ01CJywgJ0dCJywgJ1RCJywgJ1BCJywgJ0VCJywgJ1pCJywgJ1lCJ107XG4gICAgbGV0IGwgPSAwO1xuICAgIHdoaWxlIChzaXplID49IDEwMjQgJiYgKytsKSB7XG4gICAgICBzaXplIC89IDEwMjQ7XG4gICAgfVxuICAgIHJldHVybiBgJHtzaXplLnRvRml4ZWQoc2l6ZSA8IDEwICYmIGwgPiAwID8gMSA6IDApfSAke3VuaXRzW2xdfWA7XG4gIH1cblxuICBzdGF0aWMgc3VmZmx1ZShkYXRhOiBhbnlbXSk6IGFueVtdIHtcbiAgICBmb3IgKGxldCBpID0gZGF0YS5sZW5ndGggLSAxOyBpID4gMDsgaS0tKSB7XG4gICAgICBjb25zdCBqID0gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogaSk7XG4gICAgICBjb25zdCB0ZW1wID0gZGF0YVtpXTtcbiAgICAgIGRhdGFbaV0gPSBkYXRhW2pdO1xuICAgICAgZGF0YVtqXSA9IHRlbXA7XG4gICAgfVxuICAgIHJldHVybiBkYXRhO1xuICB9XG5cbiAgc3RhdGljIGhhbmRsZUJsb2JGaWxlKHRoZUJsb2I6IGFueSwgZmlsZU5hbWU6IHN0cmluZywgZmlsZVR5cGU6IHN0cmluZykge1xuICAgIGZ1bmN0aW9uIGJsb2JUb0ZpbGUodGhlQmxvYjogYW55LCBmaWxlTmFtZTogc3RyaW5nKSB7XG4gICAgICBjb25zdCBiID0gdGhlQmxvYjtcbiAgICAgIGIubGFzdE1vZGlmaWVkRGF0ZSA9IG5ldyBEYXRlKCk7XG4gICAgICBiLm5hbWUgPSBmaWxlTmFtZTtcbiAgICAgIHJldHVybiBiO1xuICAgIH1cblxuICAgIGxldCBmaWxlOiBhbnk7XG4gICAgaWYgKCEobmF2aWdhdG9yIGFzIGFueSkubXNTYXZlQmxvYikge1xuICAgICAgZmlsZSA9IG5ldyBGaWxlKFt0aGVCbG9iXSwgZmlsZU5hbWUsIHtcbiAgICAgICAgdHlwZTogZmlsZVR5cGUsXG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgZmlsZSA9IG5ldyBCbG9iKFt0aGVCbG9iXSwge1xuICAgICAgICB0eXBlOiBmaWxlVHlwZSxcbiAgICAgIH0pO1xuICAgICAgZmlsZSA9IGJsb2JUb0ZpbGUoZmlsZSwgZmlsZU5hbWUpO1xuICAgIH1cbiAgICByZXR1cm4gZmlsZTtcbiAgfVxuXG4gIHN0YXRpYyB0cnVuY2F0ZSh0ZXh0OiBzdHJpbmcsIG1heExlbmd0aDogbnVtYmVyID0gMjUpOiBzdHJpbmcge1xuICAgIGNvbnN0IG1pZENoYXIgPSAnLi4uJztcbiAgICBpZiAoIXRleHQpIHJldHVybiBtaWRDaGFyO1xuICAgIGlmICh0ZXh0ICYmIHRleHQubGVuZ3RoIDw9IG1heExlbmd0aCkgcmV0dXJuIHRleHQ7XG5cbiAgICBjb25zdCBsZWZ0ID0gTWF0aC5jZWlsKG1heExlbmd0aCAvIDIpO1xuICAgIGNvbnN0IHJpZ2h0ID0gdGV4dC5sZW5ndGggLSBsZWZ0ICsgMTtcblxuICAgIHJldHVybiBgJHt0ZXh0LnN1YnN0cigwLCBsZWZ0KX0gJHttaWRDaGFyfSAke3RleHQuc3Vic3RyaW5nKHJpZ2h0KX1gO1xuICB9XG5cbiAgc3RhdGljIGlzTG9jYWxob3N0KCkge1xuICAgIGNvbnN0IHsgaHJlZiB9ID0gd2luZG93Py5sb2NhdGlvbjtcbiAgICBpZiAoIWhyZWYpIHJldHVybiBmYWxzZTtcbiAgICByZXR1cm4gaHJlZj8uc2VhcmNoKCdsb2NhbGhvc3QnKSA+PSAwO1xuICB9XG5cbiAgc3RhdGljIGlzU2FtZU9yaWdpbihmcm9udGVuZDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgY29uc3QgaW5pdGlhbFBhdGg6IHN0cmluZyA9IHdpbmRvdy5sb2NhdGlvbi5vcmlnaW47XG4gICAgcmV0dXJuIChpbml0aWFsUGF0aCB8fCAnJykgPT09IGZyb250ZW5kO1xuICB9XG5cbiAgc3RhdGljIHJlcGxhY2VWYXJpYWJsZXMoZGF0YTogc3RyaW5nLCBvYmo6IGFueSkge1xuICAgIGxldCBoYW5kbGVkID0gZGF0YTtcbiAgICBPYmplY3QuZW50cmllcyhvYmopLmZvckVhY2goKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgaGFuZGxlZCA9IGhhbmRsZWQucmVwbGFjZShuZXcgUmVnRXhwKGB7JHtrZXl9fWAsICdnJyksIGAke3ZhbHVlfWApO1xuICAgIH0pO1xuICAgIHJldHVybiBoYW5kbGVkO1xuICB9XG59XG4iXX0=
251
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb25rZXktZnJvbnQtY29yZS9zcmMvbGliL2NvcmUvdXRpbHMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsaUNBQWlDO0FBQ2pDLDRCQUE0QjtBQUM1QixzQ0FBc0M7QUFDdEMsZ0NBQWdDO0FBQ2hDLG1DQUFtQztBQUNuQywyQkFBMkI7QUFDM0IsaUNBQWlDO0FBQ2pDLGdDQUFnQztBQUNoQywyQkFBMkI7QUFFM0IsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUV6QyxxQ0FBcUM7QUFDckMsTUFBTSxPQUFPLGNBQWM7SUFDekIsTUFBTSxDQUFDLHlCQUF5QixDQUFDLEVBQU87UUFDdEMsT0FBTyxFQUFFLEtBQUssSUFBSSxJQUFJLEVBQUUsS0FBSyxTQUFTLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FBQztJQUN0RCxDQUFDO0lBRUQsTUFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFXLEVBQUUsT0FBZ0I7UUFDbEQsSUFBSSxDQUFDLEdBQUc7WUFBRSxPQUFPLEVBQUUsQ0FBQztRQUNwQixJQUFJLE9BQU8sS0FBSyxJQUFJO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDbkMsT0FBTyxHQUFHLENBQUMsTUFBTSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7SUFDM0MsQ0FBQztJQUVELE1BQU0sQ0FBQyxlQUFlLENBQUMsSUFBWSxFQUFFLE9BQU8sR0FBRyxFQUFFO1FBQy9DLE9BQU87WUFDTCxFQUFFLEVBQUU7Z0JBQ0YsR0FBRyxFQUFFLFlBQVksQ0FBQyxHQUFHO2dCQUNyQixJQUFJLEVBQUUsWUFBWSxDQUFDLElBQUk7Z0JBQ3ZCLEVBQUUsRUFBRSxHQUFHLFlBQVksQ0FBQyxHQUFHLEtBQUssWUFBWSxDQUFDLElBQUksRUFBRTthQUNoRDtZQUNELEVBQUUs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O2FBQ2Q7WUFDRCxPQUFPLElBQUksQ0FBQztTQUNiO1FBQ0QsSUFBSSxRQUFRLENBQUMsTUFBTSxLQUFLLEVBQUUsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQ3BELE1BQU0sSUFBSSxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDckQsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsSUFBSSxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUFDLENBQUM7WUFDN0QsSUFBSSxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxFQUFFO2dCQUNoRCxPQUFPLEtBQUssQ0FBQzthQUNkO1lBRUQsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsRUFBRSxDQUFDO2dCQUFDLENBQUM7WUFDOUQsSUFBSSxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxFQUFFO2dCQUNoRCxPQUFPLEtBQUssQ0FBQzthQUNkO1lBRUQsT0FBTyxJQUFJ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QUUsTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQsTUFBTSxDQUFDLFlBQVksQ0FBQyxRQUFnQjtRQUNsQyxNQUFNLFdBQVcsR0FBVyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQztRQUNuRCxPQUFPLENBQUMsV0FBVyxJQUFJLEVBQUUsQ0FBQyxLQUFLLFFBQVEsQ0FBQztJQUMxQyxDQUFDO0lBRUQsTUFBTSxDQUFDLGdCQUFnQixDQUFDLElBQVksRUFBRSxHQUFRO1FBQzVDLElBQUksT0FBTyxHQUFHLElBQUksQ0FBQztRQUNuQixNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUU7WUFDM0MsT0FBTyxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxNQUFNLENBQUMsSUFBSSxHQUFHLEdBQUcsRUFBRSxHQUFHLENBQUMsRUFBRSxHQUFHLEtBQUssRUFBRSxDQUFDLENBQUM7UUFDckUsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBjb21tYS1kYW5nbGUgKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG5vLXVzZWxlc3MtZXNjYXBlICovXG4vKiBlc2xpbnQtZGlzYWJsZSBuby1wbHVzcGx1cyAqL1xuLyogZXNsaW50LWRpc2FibGUgbm8tY29uZC1hc3NpZ24gKi9cbi8qIGVzbGludC1kaXNhYmxlIGVxZXFlcSAqL1xuLyogZXNsaW50LWRpc2FibGUgbm8tcmVkZWNsYXJlICovXG4vKiBlc2xpbnQtZGlzYWJsZSB2YXJzLW9uLXRvcCAqL1xuLyogZXNsaW50LWRpc2FibGUgbm8tdmFyICovXG5cbmltcG9ydCB7IENvdW50cnlNYXNrcyB9IGZyb20gJy4vc3RhdGljcyc7XG5cbi8qIGVzbGludC1kaXNhYmxlIGJsb2NrLXNjb3BlZC12YXIgKi9cbmV4cG9ydCBjbGFzcyBNb25rZXlFY3hVdGlscyB7XG4gIHN0YXRpYyBwZXJzaXN0TnVsbEVtcHR5VW5kZWZpbmVkKHRwOiBhbnkpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdHAgIT09IG51bGwgJiYgdHAgIT09IHVuZGVmaW5lZCAmJiB0cCAhPT0gJyc7XG4gIH1cblxuICBzdGF0aWMgZ2V0RG9jdW1lbnRUeXBlKGRvYzogc3RyaW5nLCBjb3VudHJ5Pzogc3RyaW5nKSB7XG4gICAgaWYgKCFkb2MpIHJldHVybiAnJztcbiAgICBpZiAoY291bnRyeSA9PT0gJ2NsJykgcmV0dXJuICdSVVQnO1xuICAgIHJldHVybiBkb2MubGVuZ3RoIDw9IDExID8gJ0NQRicgOiAnQ05QSic7XG4gIH1cblxuICBzdGF0aWMgZ2V0RG9jdW1lbnRNYXNrKHR5cGU6IHN0cmluZywgY291bnRyeSA9ICcnKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIEJSOiB7XG4gICAgICAgIENQRjogQ291bnRyeU1hc2tzLkNQRixcbiAgICAgICAgQ05QSjogQ291bnRyeU1hc2tzLkNOUEosXG4gICAgICAgICcnOiBgJHtDb3VudHJ5TWFza3MuQ1BGfXx8JHtDb3VudHJ5TWFza3MuQ05QSn1gXG4gICAgICB9LFxuICAgICAgQ0w6IHtcbiAgICAgICAgQ1BGOiBDb3VudHJ5TWFza3MuUlVUMSxcbiAgICAgICAgQ05QSjogQ291bnRyeU1hc2tzLlJVVDIsXG4gICAgICAgICcnOiBgJHtDb3VudHJ5TWFza3MuUlVUMX18fCR7Q291bnRyeU1hc2tzLlJVVDJ9YFxuICAgICAgfVxuICAgIH1bY291bnRyeS50b1VwcGVyQ2FzZSgpXT8uW3R5cGVdO1xuICB9XG5cbiAgc3RhdGljIGdldERvY3VtZW50UGxhY2Vob2xkZXIodHlwZTogc3RyaW5nLCBjb3VudHJ5ID0gJycpIHtcbiAgICByZXR1cm4ge1xuICAgICAgQlI6IHtcbiAgICAgICAgQ1BGOiAnMDAwLjAwMC4wMDAtWFgnLFxuICAgICAgICBDTlBKOiAnMDAuMDAwLjAwMC8wMDAwLTAwJ1xuICAgICAgfSxcbiAgICAgIENMOiB7XG4gICAgICAgIENQRjogJzAwMDAwMDAtQScsXG4gICAgICAgIENOUEo6ICcwMDAwMDAwLUEnXG4gICAgICB9XG4gICAgfVtjb3VudHJ5LnRvVXBwZXJDYXNlKCldPy5bdHlwZV07XG4gIH1cblxuICBzdGF0aWMgZm9ybWF0RG9jdW1lbnRXaXRoTWFzayhkb2M6IHN0cmluZywgd2l0aFR5cGU/OiBib29sZWFuLCBjb3VudHJ5Pzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBpZiAoIWRvYykgcmV0dXJuIGRvYztcbiAgICBsZXQgZm9ybWF0ZWQ6IHN0cmluZyA9ICcnO1xuICAgIGlmIChjb3VudHJ5ID09PSAnY2wnKSB7XG4gICAgICBmb3JtYXRlZCA9IGRvYy5yZXBsYWNlKC9eKFxcZHsxLDJ9KShcXGR7M30pKFxcZHszfSkoXFx3ezF9KSQvLCAnJDEuJDIuJDMtJDQnKTtcbiAgICAgIHJldHVybiBgJHtmb3JtYXRlZH1gO1xuICAgIH1cbiAgICBpZiAoZG9jLmxlbmd0aCA9PT0gMTQpIHtcbiAgICAgIGZvcm1hdGVkID0gZG9jXG4gICAgICAgIC5yZXBsYWNlKC9eKFxcZHsyfSkoXFxkKS8sICckMS4kMicpXG4gICAgICAgIC5yZXBsYWNlKC9eKFxcZHsyfSlcXC4oXFxkezN9KShcXGQpLywgJyQxLiQyLiQzJylcbiAgICAgICAgLnJlcGxhY2UoL1xcLihcXGR7M30pKFxcZCkvLCAnLiQxLyQyJylcbiAgICAgICAgLnJlcGxhY2UoLyhcXGR7NH0pKFxcZCkvLCAnJDEtJDInKTtcbiAgICB9IGVsc2Uge1xuICAgICAgZm9ybWF0ZWQgPSBkb2NcbiAgICAgICAgLnJlcGxhY2UoL14oXFxkezN9KShcXGQpLywgJyQxLiQyJylcbiAgICAgICAgLnJlcGxhY2UoL14oXFxkezN9KVxcLihcXGR7M30pKFxcZCkvLCAnJDEuJDIuJDMnKVxuICAgICAgICAucmVwbGFjZSgvXFwuKFxcZHszfSkoXFxkKS8sICcuJDEtJDInKTtcbiAgICB9XG5cbiAgICByZXR1cm4gYCR7d2l0aFR5cGUgPyBgJHt0aGlzLmdldERvY3VtZW50VHlwZShkb2MpfTpgIDogJyd9ICR7Zm9ybWF0ZWR9YDtcbiAgfVxuXG4gIHN0YXRpYyBjdXRGaXJzdExhc3ROYW1lKHZhbHVlOiBzdHJpbmcsIHRwOiBzdHJpbmcgPSAnZmlyc3QnKSB7XG4gICAgY29uc3Qgc3BsaXQgPSB2YWx1ZT8udHJpbSgpPy5zcGxpdCgnICcpO1xuXG4gICAgaWYgKHRwID09PSAnZmlyc3QnKSByZXR1cm4gc3BsaXRbMF07XG4gICAgcmV0dXJuIHNwbGl0Py5zcGxpY2UoMSwgc3BsaXQubGVuZ3RoKT8uam9pbignICcpO1xuICB9XG5cbiAgc3RhdGljIGlzQ1BGQ05QSlZhbGlkKGRvY3VtZW50OiBhbnkpOiBib29sZWFuIHtcbiAgICBkb2N1bWVudCA9IGRvY3VtZW50LnJlcGxhY2UoL1teXFxkXS9nLCAnJyk7XG5cbiAgICBjb25zdCBoYW5kbGVkID0gZG9jdW1lbnQucmVwbGFjZShuZXcgUmVnRXhwKGRvY3VtZW50LmNoYXJBdCgwKSwgJ2cnKSwgJycpO1xuICAgIGlmICghaGFuZGxlZCkgcmV0dXJuIGZhbHNlO1xuXG4gICAgaWYgKGRvY3VtZW50Lmxlbmd0aCA9PT0gMTEpIHtcbiAgICAgIGxldCBiYXNlID0gWzEwLCA5LCA4LCA3LCA2LCA1LCA0LCAzLCAyLCAxLCAwXTtcbiAgICAgIGZvciAodmFyIGkgPSAwLCBuID0gMDsgaSA8IDk7IG4gKz0gZG9jdW1lbnRbaV0gKiBiYXNlW2krK10pO1xuICAgICAgaWYgKGRvY3VtZW50WzldICE9ICgobiAlPSAxMSkgPD0gMSA/IDAgOiAxMSAtIG4pKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICAgIGJhc2UgPSBbMTEsIDEwLCA5LCA4LCA3LCA2LCA1LCA0LCAzLCAyLCAxLCAwXTtcbiAgICAgIGZvciAodmFyIGkgPSAwLCBuID0gMDsgaSA8PSA5OyBuICs9IGRvY3VtZW50W2ldICogYmFzZVtpKytdKTtcbiAgICAgIGlmIChkb2N1bWVudFsxMF0gIT0gKChuICU9IDExKSA8PSAxID8gMCA6IDExIC0gbikpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIGlmIChkb2N1bWVudC5sZW5ndGggPT09IDE0IHx8IC8wezE0fS8udGVzdChkb2N1bWVudCkpIHtcbiAgICAgIGNvbnN0IGJhc2UgPSBbNiwgNSwgNCwgMywgMiwgOSwgOCwgNywgNiwgNSwgNCwgMywgMl07XG4gICAgICBmb3IgKHZhciBpID0gMCwgbiA9IDA7IGkgPCAxMjsgbiArPSBkb2N1bWVudFtpXSAqIGJhc2VbKytpXSk7XG4gICAgICBpZiAoZG9jdW1lbnRbMTJdICE9ICgobiAlPSAxMSkgPCAyID8gMCA6IDExIC0gbikpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuXG4gICAgICBmb3IgKHZhciBpID0gMCwgbiA9IDA7IGkgPD0gMTI7IG4gKz0gZG9jdW1lbnRbaV0gKiBiYXNlW2krK10pO1xuICAgICAgaWYgKGRvY3VtZW50WzEzXSAhPSAoKG4gJT0gMTEpIDwgMiA/IDAgOiAxMSAtIG4pKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgaXNWYWxpZFJVVChkb2N1bWVudDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgaWYgKCFkb2N1bWVudCB8fCBkb2N1bWVudC50cmltKCkubGVuZ3RoIDwgMykgcmV0dXJuIGZhbHNlO1xuICAgIGNvbnN0IGRvY3VtZW50SGFuZGxlZCA9IGRvY3VtZW50LnJlcGxhY2UoL1teMC05a0tdL2csICcnKTtcblxuICAgIGlmIChkb2N1bWVudEhhbmRsZWQubGVuZ3RoIDwgMykgcmV0dXJuIGZhbHNlO1xuXG4gICAgY29uc3QgY2FsY0R2ID0gKHJ1dDogc3RyaW5nKSA9PiB7XG4gICAgICBjb25zdCB2YWx1ZTogc3RyaW5nID0gYCR7cnV0fWA7XG4gICAgICBsZXQgc3VtID0gMDtcbiAgICAgIGxldCBtdWx0ID0gMjtcblxuICAgICAgZm9yIChsZXQgaSA9IDE7IGkgPD0gdmFsdWUubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgY29uc3QgaW5kZXggPSBtdWx0ICogTnVtYmVyKHZhbHVlLmNoYXJBdCh2YWx1ZS5sZW5ndGggLSBpKSk7XG5cbiAgICAgICAgc3VtICs9IGluZGV4O1xuXG4gICAgICAgIGlmIChtdWx0IDwgNykge1xuICAgICAgICAgIG11bHQgKz0gMTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBtdWx0ID0gMjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBjb25zdCBkdkVzcGVyYWRvID0gMTEgLSAoc3VtICUgMTEpO1xuICAgICAgaWYgKGR2RXNwZXJhZG8gPT09IDEwKSByZXR1cm4gJ0snO1xuICAgICAgaWYgKGR2RXNwZXJhZG8gPT09IDExKSByZXR1cm4gJzAnO1xuICAgICAgcmV0dXJuIGAke2R2RXNwZXJhZG99YDtcbiAgICB9O1xuXG4gICAgY29uc3QgbnVtID0gZG9jdW1lbnRIYW5kbGVkLnNsaWNlKDAsIC0xKTtcbiAgICBjb25zdCBkZ3YgPSBkb2N1bWVudEhhbmRsZWQuc2xpY2UoLTEpLnRvVXBwZXJDYXNlKCk7XG5cbiAgICBjb25zdCBkdkNhbGMgPSBjYWxjRHYobnVtKTtcbiAgICByZXR1cm4gZHZDYWxjID09PSBkZ3Y7XG4gIH1cblxuICBzdGF0aWMgaXNWYWxpZFVybCh0eHQ6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IHJlZ2V4ID0gLyhodHRwcz86XFwvXFwvKD86W2EtejAtOV0oPzpbYS16MC05LV17MCw2MX1bYS16MC05XSk/XFwuKStbYS16MC05XVthLXowLTktXXswLDYxfVthLXowLTldKSg6P1xcZCopXFwvPyhbYS16X1xcXFwvMC05XFwtIy5dKilcXD8/KFthLXpfXFxcXC8wLTlcXC0jPSZdKikvZztcbiAgICByZXR1cm4gcmVnZXgudGVzdCh0eHQpO1xuICB9XG5cbiAgc3RhdGljIGlzVmFsaWRaaXBDb2RlKHppcENvZGU6IHN0cmluZywgY291bnRyeT86IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGxlbmd0aCA9IChjb3VudHJ5ID09PSAnY2wnKSA/IDcgOiA4O1xuICAgIHJldHVybiBgJHt0aGlzLmhhbmRsZU9ubHlOdW1iZXJzKHppcENvZGUpfWAubGVuZ3RoID09PSBsZW5ndGg7XG4gIH1cblxuICBzdGF0aWMgZ2V0UmFuZG9tU3RyaW5nKGxlbjogbnVtYmVyLCBjaGFyU2V0Pzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjaGFyU2V0ID0gY2hhclNldCB8fCAnQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODknO1xuXG4gICAgY29uc3QgcmFuZG9tU3RyaW5nOiBzdHJpbmcgPSBuZXcgQXJyYXkobGVuKVxuICAgICAgLmZpbGwoJzEnKVxuICAgICAgLm1hcCgoKSA9PiB7XG4gICAgICAgIHJldHVybiBjaGFyU2V0Py5jaGFyQXQoTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogY2hhclNldD8ubGVuZ3RoKSk7XG4gICAgICB9KVxuICAgICAgLmpvaW4oJycpO1xuICAgIHJldHVybiByYW5kb21TdHJpbmc7XG4gIH1cblxuICBzdGF0aWMgaGFuZGxlT25seU51bWJlcnModmFsdWU6IGFueSkge1xuICAgIGlmICghdmFsdWUpIHJldHVybiBudWxsO1xuICAgIHJldHVybiB2YWx1ZS5yZXBsYWNlKG5ldyBSZWdFeHAoL1teMC05XS9nKSwgJycpO1xuICB9XG5cbiAgc3RhdGljIGhhbmRsZU9ubHlBbHBoYU51bWVyaWModmFsdWU6IGFueSkge1xuICAgIGlmICghdmFsdWUpIHJldHVybiAnJztcbiAgICByZXR1cm4gdmFsdWUucmVwbGFjZShuZXcgUmVnRXhwKC9bXjAtOUEtWmEtel0vLCAnZycpLCAnJyk7XG4gIH1cblxuICBzdGF0aWMgY2FwaXRhbGl6ZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIGAke3ZhbHVlLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpfSR7dmFsdWUuc2xpY2UoMSl9YDtcbiAgfVxuXG4gIHN0YXRpYyBmb3JtYXRaaXBDb2RlKHppcENvZGU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgaWYgKCF6aXBDb2RlKSByZXR1cm4gemlwQ29kZTtcbiAgICBjb25zdCBmb3JtYXRlZDogc3RyaW5nID0gemlwQ29kZVxuICAgICAgLnJlcGxhY2UoL14oXFxkezV9KShcXGQpLywgJyQxLSQyJylcbiAgICAgIC5yZXBsYWNlKC9cXC4oXFxkezN9KShcXGQpLywgJy4kMS0kMicpO1xuXG4gICAgcmV0dXJuIGAke2Zvcm1hdGVkfWA7XG4gIH1cblxuICBzdGF0aWMgZm9ybWF0RmlsZVNpemUoc2l6ZTogbnVtYmVyKTogc3RyaW5nIHtcbiAgICBjb25zdCB1bml0cyA9IFsnQicsICdLQicsICdNQicsICdHQicsICdUQicsICdQQicsICdFQicsICdaQicsICdZQiddO1xuICAgIGxldCBsID0gMDtcbiAgICB3aGlsZSAoc2l6ZSA+PSAxMDI0ICYmICsrbCkge1xuICAgICAgc2l6ZSAvPSAxMDI0O1xuICAgIH1cbiAgICByZXR1cm4gYCR7c2l6ZS50b0ZpeGVkKHNpemUgPCAxMCAmJiBsID4gMCA/IDEgOiAwKX0gJHt1bml0c1tsXX1gO1xuICB9XG5cbiAgc3RhdGljIHN1ZmZsdWUoZGF0YTogYW55W10pOiBhbnlbXSB7XG4gICAgZm9yIChsZXQgaSA9IGRhdGEubGVuZ3RoIC0gMTsgaSA+IDA7IGktLSkge1xuICAgICAgY29uc3QgaiA9IE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIGkpO1xuICAgICAgY29uc3QgdGVtcCA9IGRhdGFbaV07XG4gICAgICBkYXRhW2ldID0gZGF0YVtqXTtcbiAgICAgIGRhdGFbal0gPSB0ZW1wO1xuICAgIH1cbiAgICByZXR1cm4gZGF0YTtcbiAgfVxuXG4gIHN0YXRpYyBoYW5kbGVCbG9iRmlsZSh0aGVCbG9iOiBhbnksIGZpbGVOYW1lOiBzdHJpbmcsIGZpbGVUeXBlOiBzdHJpbmcpIHtcbiAgICBmdW5jdGlvbiBibG9iVG9GaWxlKHRoZUJsb2I6IGFueSwgZmlsZU5hbWU6IHN0cmluZykge1xuICAgICAgY29uc3QgYiA9IHRoZUJsb2I7XG4gICAgICBiLmxhc3RNb2RpZmllZERhdGUgPSBuZXcgRGF0ZSgpO1xuICAgICAgYi5uYW1lID0gZmlsZU5hbWU7XG4gICAgICByZXR1cm4gYjtcbiAgICB9XG5cbiAgICBsZXQgZmlsZTogYW55O1xuICAgIGlmICghKG5hdmlnYXRvciBhcyBhbnkpLm1zU2F2ZUJsb2IpIHtcbiAgICAgIGZpbGUgPSBuZXcgRmlsZShbdGhlQmxvYl0sIGZpbGVOYW1lLCB7XG4gICAgICAgIHR5cGU6IGZpbGVUeXBlLFxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGZpbGUgPSBuZXcgQmxvYihbdGhlQmxvYl0sIHtcbiAgICAgICAgdHlwZTogZmlsZVR5cGUsXG4gICAgICB9KTtcbiAgICAgIGZpbGUgPSBibG9iVG9GaWxlKGZpbGUsIGZpbGVOYW1lKTtcbiAgICB9XG4gICAgcmV0dXJuIGZpbGU7XG4gIH1cblxuICBzdGF0aWMgdHJ1bmNhdGUodGV4dDogc3RyaW5nLCBtYXhMZW5ndGg6IG51bWJlciA9IDI1KTogc3RyaW5nIHtcbiAgICBjb25zdCBtaWRDaGFyID0gJy4uLic7XG4gICAgaWYgKCF0ZXh0KSByZXR1cm4gbWlkQ2hhcjtcbiAgICBpZiAodGV4dCAmJiB0ZXh0Lmxlbmd0aCA8PSBtYXhMZW5ndGgpIHJldHVybiB0ZXh0O1xuXG4gICAgY29uc3QgbGVmdCA9IE1hdGguY2VpbChtYXhMZW5ndGggLyAyKTtcbiAgICBjb25zdCByaWdodCA9IHRleHQubGVuZ3RoIC0gbGVmdCArIDE7XG5cbiAgICByZXR1cm4gYCR7dGV4dC5zdWJzdHIoMCwgbGVmdCl9ICR7bWlkQ2hhcn0gJHt0ZXh0LnN1YnN0cmluZyhyaWdodCl9YDtcbiAgfVxuXG4gIHN0YXRpYyBpc0xvY2FsaG9zdCgpIHtcbiAgICBjb25zdCB7IGhyZWYgfSA9IHdpbmRvdz8ubG9jYXRpb247XG4gICAgaWYgKCFocmVmKSByZXR1cm4gZmFsc2U7XG4gICAgcmV0dXJuIGhyZWY/LnNlYXJjaCgnbG9jYWxob3N0JykgPj0gMDtcbiAgfVxuXG4gIHN0YXRpYyBpc1NhbWVPcmlnaW4oZnJvbnRlbmQ6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGluaXRpYWxQYXRoOiBzdHJpbmcgPSB3aW5kb3cubG9jYXRpb24ub3JpZ2luO1xuICAgIHJldHVybiAoaW5pdGlhbFBhdGggfHwgJycpID09PSBmcm9udGVuZDtcbiAgfVxuXG4gIHN0YXRpYyByZXBsYWNlVmFyaWFibGVzKGRhdGE6IHN0cmluZywgb2JqOiBhbnkpIHtcbiAgICBsZXQgaGFuZGxlZCA9IGRhdGE7XG4gICAgT2JqZWN0LmVudHJpZXMob2JqKS5mb3JFYWNoKChba2V5LCB2YWx1ZV0pID0+IHtcbiAgICAgIGhhbmRsZWQgPSBoYW5kbGVkLnJlcGxhY2UobmV3IFJlZ0V4cChgeyR7a2V5fX1gLCAnZycpLCBgJHt2YWx1ZX1gKTtcbiAgICB9KTtcbiAgICByZXR1cm4gaGFuZGxlZDtcbiAgfVxufVxuIl19