@rededor/site-front-end-lib 0.0.41 → 0.0.42
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.
|
@@ -6,8 +6,9 @@ import * as i0 from "@angular/core";
|
|
|
6
6
|
import * as i1 from "@angular/router";
|
|
7
7
|
import * as i2 from "../../services/phone/phone.service";
|
|
8
8
|
import * as i3 from "../rdsite-phone-modal/rdsite-phone-modal.directive";
|
|
9
|
+
import * as i4 from "ngx-device-detector";
|
|
9
10
|
export class RdsiteLinkDirective {
|
|
10
|
-
constructor(router, platformId, document, libConfig, element, phoneService, rdsitePhoneModalDirective) {
|
|
11
|
+
constructor(router, platformId, document, libConfig, element, phoneService, rdsitePhoneModalDirective, deviceDetectorService) {
|
|
11
12
|
this.router = router;
|
|
12
13
|
this.platformId = platformId;
|
|
13
14
|
this.document = document;
|
|
@@ -15,9 +16,11 @@ export class RdsiteLinkDirective {
|
|
|
15
16
|
this.element = element;
|
|
16
17
|
this.phoneService = phoneService;
|
|
17
18
|
this.rdsitePhoneModalDirective = rdsitePhoneModalDirective;
|
|
19
|
+
this.deviceDetectorService = deviceDetectorService;
|
|
18
20
|
this.externalRegex = /^http:|https:|tel:|www\.|mailto:/;
|
|
19
21
|
this.telRegex = /tel:/;
|
|
20
22
|
this.mailRegex = /mailto:/;
|
|
23
|
+
this.whatsAppRegex = /^https?:\/\/(wa\.me|api\.whatsapp\.com)\//;
|
|
21
24
|
this.siteUrlList = ['rededorsaoluiz', 'rededorlabs'];
|
|
22
25
|
this.allowedTags = ['A', 'CURA-BUTTON', 'CURA-BUTTON-OUTLINE', 'CURA-BUTTON-TRANSPARENT'];
|
|
23
26
|
this.anchorAdjustment = null;
|
|
@@ -40,8 +43,19 @@ export class RdsiteLinkDirective {
|
|
|
40
43
|
});
|
|
41
44
|
return;
|
|
42
45
|
}
|
|
46
|
+
const isMobile = this.deviceDetectorService.isMobile();
|
|
47
|
+
const deviceInfo = this.deviceDetectorService.getDeviceInfo();
|
|
48
|
+
if (this.isMail(href)) {
|
|
49
|
+
const target = isMobile || deviceInfo.browser !== 'Chrome' ? '_self' : '_blank';
|
|
50
|
+
window.open(href, target);
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
if (this.isWhats(href) && isMobile) {
|
|
54
|
+
window.open(href, '_self');
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
43
57
|
if (this.isExternalUrl(href)) {
|
|
44
|
-
const target = this.isSiteUrl(href)
|
|
58
|
+
const target = this.isSiteUrl(href) ? '_self' : '_blank';
|
|
45
59
|
window.open(href, target);
|
|
46
60
|
return;
|
|
47
61
|
}
|
|
@@ -57,6 +71,9 @@ export class RdsiteLinkDirective {
|
|
|
57
71
|
isMail(href) {
|
|
58
72
|
return this.mailRegex.test(href);
|
|
59
73
|
}
|
|
74
|
+
isWhats(href) {
|
|
75
|
+
return this.whatsAppRegex.test(href);
|
|
76
|
+
}
|
|
60
77
|
phoneClicked(value) {
|
|
61
78
|
const { href, event, element, phonemodal } = value;
|
|
62
79
|
if (this.phoneService.isPhoneModal(href)) {
|
|
@@ -126,7 +143,7 @@ export class RdsiteLinkDirective {
|
|
|
126
143
|
}
|
|
127
144
|
this.router.navigate([path], { queryParams: queryParams });
|
|
128
145
|
}
|
|
129
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: RdsiteLinkDirective, deps: [{ token: i1.Router }, { token: PLATFORM_ID }, { token: DOCUMENT }, { token: LIB_CONFIG }, { token: i0.ElementRef }, { token: i2.PhoneService }, { token: i3.RdsitePhoneModalDirective }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
146
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: RdsiteLinkDirective, deps: [{ token: i1.Router }, { token: PLATFORM_ID }, { token: DOCUMENT }, { token: LIB_CONFIG }, { token: i0.ElementRef }, { token: i2.PhoneService }, { token: i3.RdsitePhoneModalDirective }, { token: i4.DeviceDetectorService }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
130
147
|
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: RdsiteLinkDirective, isStandalone: true, selector: "[rdsitelink]", inputs: { anchorAdjustment: "anchorAdjustment", anchorExtraAdjustment: "anchorExtraAdjustment", phonemodal: "phonemodal" }, host: { listeners: { "click": "onClick($event)" } }, providers: [RdsitePhoneModalDirective], ngImport: i0 }); }
|
|
131
148
|
}
|
|
132
149
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: RdsiteLinkDirective, decorators: [{
|
|
@@ -146,7 +163,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
146
163
|
}] }, { type: undefined, decorators: [{
|
|
147
164
|
type: Inject,
|
|
148
165
|
args: [LIB_CONFIG]
|
|
149
|
-
}] }, { type: i0.ElementRef }, { type: i2.PhoneService }, { type: i3.RdsitePhoneModalDirective }], propDecorators: { anchorAdjustment: [{
|
|
166
|
+
}] }, { type: i0.ElementRef }, { type: i2.PhoneService }, { type: i3.RdsitePhoneModalDirective }, { type: i4.DeviceDetectorService }], propDecorators: { anchorAdjustment: [{
|
|
150
167
|
type: Input
|
|
151
168
|
}], anchorExtraAdjustment: [{
|
|
152
169
|
type: Input
|
|
@@ -156,4 +173,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
156
173
|
type: HostListener,
|
|
157
174
|
args: ['click', ['$event']]
|
|
158
175
|
}] } });
|
|
159
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmRzaXRlLWxpbmsuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2l0ZS1mcm9udC1lbmQtbGliL3NyYy9saWIvZGlyZWN0aXZlcy9yZHNpdGUtbGluay9yZHNpdGUtbGluay5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlELE9BQU8sRUFBRSxTQUFTLEVBQWMsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFlLE1BQU0sZUFBZSxDQUFDO0FBRTdHLE9BQU8sRUFBRSxVQUFVLEVBQWEsTUFBTSx3QkFBd0IsQ0FBQztBQUUvRCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQzs7Ozs7QUFRL0YsTUFBTSxPQUFPLG1CQUFtQjtJQVk5QixZQUNVLE1BQWMsRUFDTyxVQUFrQixFQUNyQixRQUFrQixFQUNoQixTQUFvQixFQUN4QyxPQUF3QixFQUN4QixZQUEwQixFQUMxQix5QkFBb0Q7UUFOcEQsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNPLGVBQVUsR0FBVixVQUFVLENBQVE7UUFDckIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNoQixjQUFTLEdBQVQsU0FBUyxDQUFXO1FBQ3hDLFlBQU8sR0FBUCxPQUFPLENBQWlCO1FBQ3hCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLDhCQUF5QixHQUF6Qix5QkFBeUIsQ0FBMkI7UUFsQnRELGtCQUFhLEdBQUcsa0NBQWtDLENBQUM7UUFDbkQsYUFBUSxHQUFHLE1BQU0sQ0FBQztRQUNsQixjQUFTLEdBQUcsU0FBUyxDQUFDO1FBQ3RCLGdCQUFXLEdBQUcsQ0FBQyxnQkFBZ0IsRUFBRSxhQUFhLENBQUMsQ0FBQztRQUNoRCxnQkFBVyxHQUFHLENBQUMsR0FBRyxFQUFFLGFBQWEsRUFB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WUFDVixNQUFNLFVBQVUsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3BDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtnQkFDdkIsTUFBTSxHQUFHLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDekIsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUMvQixDQUFDLENBQUMsQ0FBQztRQUNMLENBQUM7UUFDRCxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDN0QsQ0FBQzsrR0F6SVUsbUJBQW1CLHdDQWNwQixXQUFXLGFBQ1gsUUFBUSxhQUNSLFVBQVU7bUdBaEJULG1CQUFtQiw0T0FIbkIsQ0FBQyx5QkFBeUIsQ0FBQzs7NEZBRzNCLG1CQUFtQjtrQkFOL0IsU0FBUzttQkFBQztvQkFDVCw4REFBOEQ7b0JBQzlELFFBQVEsRUFBRSxjQUFjO29CQUN4QixTQUFTLEVBQUUsQ0FBQyx5QkFBeUIsQ0FBQztvQkFDdEMsVUFBVSxFQUFFLElBQUk7aUJBQ2pCOzswQkFlSSxNQUFNOzJCQUFDLFdBQVc7OzBCQUNsQixNQUFNOzJCQUFDLFFBQVE7OzBCQUNmLE1BQU07MkJBQUMsVUFBVTtxSUFUWCxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0cscUJBQXFCO3NCQUE3QixLQUFLO2dCQUVHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBYUMsT0FBTztzQkFEYixZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERPQ1VNRU5ULCBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEhvc3RMaXN0ZW5lciwgSW5qZWN0LCBJbnB1dCwgUExBVEZPUk1fSUQsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgTElCX0NPTkZJRywgTGliQ29uZmlnIH0gZnJvbSAnLi4vLi4vdG9rZW5zL0xpYkNvbmZpZyc7XG5pbXBvcnQgeyBQaG9uZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9waG9uZS9waG9uZS5zZXJ2aWNlJztcbmltcG9ydCB7IFJkc2l0ZVBob25lTW9kYWxEaXJlY3RpdmUgfSBmcm9tICcuLi9yZHNpdGUtcGhvbmUtbW9kYWwvcmRzaXRlLXBob25lLW1vZGFsLmRpcmVjdGl2ZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2RpcmVjdGl2ZS1zZWxlY3RvclxuICBzZWxlY3RvcjogJ1tyZHNpdGVsaW5rXScsXG4gIHByb3ZpZGVyczogW1Jkc2l0ZVBob25lTW9kYWxEaXJlY3RpdmVdLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBSZHNpdGVMaW5rRGlyZWN0aXZlIHtcbiAgcHJpdmF0ZSBleHRlcm5hbFJlZ2V4ID0gL15odHRwOnxodHRwczp8dGVsOnx3d3dcXC58bWFpbHRvOi87XG4gIHByaXZhdGUgdGVsUmVnZXggPSAvdGVsOi87XG4gIHByaXZhdGUgbWFpbFJlZ2V4ID0gL21haWx0bzovO1xuICBwcml2YXRlIHNpdGVVcmxMaXN0ID0gWydyZWRlZG9yc2FvbHVpeicsICdyZWRlZG9ybGFicyddO1xuICBwcml2YXRlIGFsbG93ZWRUYWdzID0gWydBJywgJ0NVUkEtQlVUVE9OJywgJ0NVUkEtQlVUVE9OLU9VVExJTkUnLCAnQ1VSQS1CVVRUT04tVFJBTlNQQVJFTlQnXTtcblxuICBASW5wdXQoKSBhbmNob3JBZGp1c3RtZW50OiBudW1iZXIgfCBudWxsID0gbnVsbDtcbiAgQElucHV0KCkgYW5jaG9yRXh0cmFBZGp1c3RtZW50OiBudW1iZXIgfCBudWxsID0gbnVsbDtcblxuICBASW5wdXQoKSBwaG9uZW1vZGFsOiBUZW1wbGF0ZVJlZjxIVE1MRWxlbWVudD4gfCBudWxsID0gbnVsbDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgIEBJbmplY3QoUExBVEZPUk1fSUQpIHByaXZhdGUgcGxhdGZvcm1JZDogb2JqZWN0LFxuICAgIEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgZG9jdW1lbnQ6IERvY3VtZW50LFxuICAgIEBJbmplY3QoTElCX0NPTkZJRykgcHJpdmF0ZSBsaWJDb25maWc6IExpYkNvbmZpZyxcbiAgICBwcml2YXRlIGVsZW1lbnQ6IEVsZW1lbnRSZWY8YW55PixcbiAgICBwcml2YXRlIHBob25lU2VydmljZTogUGhvbmVTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmRzaXRlUGhvbmVNb2RhbERpcmVjdGl2ZTogUmRzaXRlUGhvbmVNb2RhbERpcmVjdGl2ZSxcbiAgKSB7fVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJywgWyckZXZlbnQnXSlcbiAgcHVibGljIG9uQ2xpY2soZXZlbnQ6IEV2ZW50KSB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICBpZiAoIWlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkgfHwgIXRoaXMuYWxsb3dlZFRhZ3MuaW5jbHVkZXModGhpcy5lbGVtZW50Py5uYXRpdmVFbGVtZW50Py50YWdOYW1lKSkgcmV0dXJuO1xuICAgIGNvbnN0IGhyZWYgPSB0aGlzLmVsZW1lbnQ/Lm5hdGl2ZUVsZW1lbnQ/LmdldEF0dHJpYnV0ZSgnaHJlZicpID8/ICcnO1xuICAgIGlmICghaHJlZikgcmV0dXJuO1xuXG4gICAgaWYgKHRoaXMuaXNQaG9uZShocmVmKSkge1xuICAgICAgdGhpcy5waG9uZUNsaWNrZWQoe1xuICAgICAgICBocmVmLFxuICAgICAgICBldmVudCxcbiAgICAgICAgZWxlbWVudDogdGhpcy5lbGVtZW50LFxuICAgICAgICBwaG9uZW1vZGFsOiB0aGlzLnBob25lbW9kYWwsXG4gICAgICB9KTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5pc0V4dGVybmFsVXJsKGhyZWYpKSB7XG4gICAgICBjb25zdCB0YXJnZXQgPSB0aGlzLmlzU2l0ZVVybChocmVmKSB8fCB0aGlzLmlzTWFpbChocmVmKSA/ICdfc2VsZicgOiAnX2JsYW5rJztcbiAgICAgIHdpbmRvdy5vcGVuKGhyZWYsIHRhcmdldCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuaXNBbmNob3IoaHJlZikpIHtcbiAgICAgIHRoaXMuc2Nyb2xsVG9BbmNob3IoaHJlZik7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5uYXZpZ2F0ZVRvKGhyZWYpO1xuICB9XG5cbiAgcHJpdmF0ZSBpc1Bob25lKGhyZWY6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLnRlbFJlZ2V4LnRlc3QoaHJlZik7XG4gIH1cblxuICBwcml2YXRlIGlzTWFpbChocmVmOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5tYWlsUmVnZXgudGVzdChocmVmKTtcbiAgfVxuXG4gIHByaXZhdGUgcGhvbmVDbGlja2VkKHZhbHVlOiB7IGhyZWY6IHN0cmluZzsgZXZlbnQ6IEV2ZW50OyBlbGVtZW50OiBFbGVtZW50UmVmPGFueT47IHBob25lbW9kYWw6IFRlbXBsYXRlUmVmPEhUTUxFbGVtZW50PiB8IG51bGwgfSkge1xuICAgIGNvbnN0IHsgaHJlZiwgZXZlbnQsIGVsZW1lbnQsIHBob25lbW9kYWwgfSA9IHZhbHVlO1xuICAgIGlmICh0aGlzLnBob25lU2VydmljZS5pc1Bob25lTW9kYWwoaHJlZikpIHtcbiAgICAgIHRoaXMuc2V0UGhvbmVNb2RhbChlbGVtZW50LCBwaG9uZW1vZGFsKTtcbiAgICAgIHRoaXMucmRzaXRlUGhvbmVNb2RhbERpcmVjdGl2ZS5vcGVuUGhvbmVNb2RhbChldmVudCwgaHJlZik7XG4gICAgfSBlbHNlIHtcbiAgICAgIHdpbmRvdy5vcGVuKGhyZWYsICdfc2VsZicpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2V0UGhvbmVNb2RhbChlbGVtZW50OiBFbGVtZW50UmVmPGFueT4sIHBob25lbW9kYWw6IFRlbXBsYXRlUmVmPEhUTUxFbGVtZW50PiB8IG51bGwpIHtcbiAgICBpZiAoIXRoaXMucGhvbmVtb2RhbCkgcmV0dXJuO1xuICAgIGlmICghdGhpcy5saWJDb25maWc/LmN1c3RvbVBob25lTW9kYWxDb25kaXRpb24pIHtcbiAgICAgIHRoaXMucmRzaXRlUGhvbmVNb2RhbERpcmVjdGl2ZS5yZHNpdGVwaG9uZW1vZGFsID0gcGhvbmVtb2RhbDtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKHRoaXMubGliQ29uZmlnPy5jdXN0b21QaG9uZU1vZGFsQ29uZGl0aW9uKGVsZW1lbnQpKSB7XG4gICAgICB0aGlzLnJkc2l0ZVBob25lTW9kYWxEaXJlY3RpdmUucmRzaXRlcGhvbmVtb2RhbCA9IHBob25lbW9kYWw7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBpc0V4dGVybmFsVXJsKGhyZWY6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLmV4dGVybmFsUmVnZXgudGVzdChocmVmKTtcbiAgfVxuXG4gIHByaXZhdGUgaXNTaXRlVXJsKGhyZWY6IHN0cmluZykge1xuICAgIGNvbnN0IGV4Y2VwdGlvbiA9ICcvcGFjaWVudGUnO1xuICAgIHJldHVybiB0aGlzLnNpdGVVcmxMaXN0LmZpbmQoKHVybCkgPT4gaHJlZi5pbmNsdWRlcyh1cmwpICYmICFocmVmLmluY2x1ZGVzKGV4Y2VwdGlvbikpO1xuICB9XG5cbiAgcHJpdmF0ZSBpc0FuY2hvcihocmVmOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gaHJlZi5zdGFydHNXaXRoKCcjJyk7XG4gIH1cblxuICBwcml2YXRlIHNjcm9sbFRvQW5jaG9yKGhyZWY6IHN0cmluZykge1xuICAgIGlmIChocmVmID09PSAnIycpIHJldHVybjtcbiAgICBpZiAoaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xuICAgICAgY29uc3QgZG9jRWxlbWVudCA9IHRoaXMuZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50O1xuICAgICAgbGV0IGFkanVzdG1lbnQgPSAwO1xuXG4gICAgICBpZiAodGhpcy5saWJDb25maWcuY3VzdG9tQW5jaG9yQWRqdXN0bWVudCkge1xuICAgICAgICBhZGp1c3RtZW50ID0gdGhpcy5saWJDb25maWcuY3VzdG9tQW5jaG9yQWRqdXN0bWVudCh0aGlzLmRvY3VtZW50KTtcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMuYW5jaG9yQWRqdXN0bWVudCkge1xuICAgICAgICBhZGp1c3RtZW50ID0gdGhpcy5hbmNob3JBZGp1c3RtZW50O1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy5hbmNob3JFeHRyYUFkanVzdG1lbnQpIHtcbiAgICAgICAgYWRqdXN0bWVudCArPSB0aGlzLmFuY2hvckV4dHJhQWRqdXN0bWVudDtcbiAgICAgIH1cblxuICAgICAgY29uc3QgYm9keVRvcCA9IHRoaXMuZG9jdW1lbnQ/LmJvZHk/LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpPy50b3AgPz8gMDtcbiAgICAgIGNvbnN0IGhyZWZUb3AgPSB0aGlzLmRvY3VtZW50Py5xdWVyeVNlbGVjdG9yPEhUTUxFbGVtZW50PihocmVmKT8uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk/LnRvcCA/PyAwO1xuICAgICAgY29uc3Qgc2Nyb2xsVG9wID0gYm9keVRvcCAqIC0xICsgaHJlZlRvcCAtIGFkanVzdG1lbnQ7XG4gICAgICBkb2NFbGVtZW50LnNjcm9sbFRvKHsgdG9wOiBzY3JvbGxUb3AsIGJlaGF2aW9yOiAnc21vb3RoJyB9KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIG5hdmlnYXRlVG8oaHJlZjogc3RyaW5nKSB7XG4gICAgY29uc3Qgc2l0ZUJhc2VQYXRoID0gdGhpcy5saWJDb25maWcuc2l0ZVN1Zml4ID8/ICcnO1xuICAgIGNvbnN0IG5vQmFzZUhyZWYgPSBocmVmLmluY2x1ZGVzKHNpdGVCYXNlUGF0aCkgPyBocmVmLnJlcGxhY2Uoc2l0ZUJhc2VQYXRoLCAnJykgOiBocmVmO1xuICAgIGlmICh0aGlzLmxpYkNvbmZpZz8uY3VzdG9tSW50ZXJuYWxMaW5rTmF2aWdhdGlvbiAmJiB0aGlzLmxpYkNvbmZpZy5jdXN0b21JbnRlcm5hbExpbmtOYXZpZ2F0aW9uKG5vQmFzZUhyZWYpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgW3BhdGgsIHF1ZXJ5XSA9IG5vQmFzZUhyZWYuc3BsaXQoJz8nKTtcbiAgICBjb25zdCBxdWVyeVBhcmFtczogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xuICAgIGlmIChxdWVyeSkge1xuICAgICAgY29uc3QgcXVlcnlBcnJheSA9IHF1ZXJ5LnNwbGl0KCcmJyk7XG4gICAgICBxdWVyeUFycmF5LmZvckVhY2goKHEpID0+IHtcbiAgICAgICAgY29uc3QgYXJyID0gcS5zcGxpdCgnPScpO1xuICAgICAgICBxdWVyeVBhcmFtc1thcnJbMF1dID0gYXJyWzFdO1xuICAgICAgfSk7XG4gICAgfVxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtwYXRoXSwgeyBxdWVyeVBhcmFtczogcXVlcnlQYXJhbXMgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
176
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmRzaXRlLWxpbmsuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2l0ZS1mcm9udC1lbmQtbGliL3NyYy9saWIvZGlyZWN0aXZlcy9yZHNpdGUtbGluay9yZHNpdGUtbGluay5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlELE9BQU8sRUFBRSxTQUFTLEVBQWMsWUFBWSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFlLE1BQU0sZUFBZSxDQUFDO0FBRTdHLE9BQU8sRUFBRSxVQUFVLEVBQWEsTUFBTSx3QkFBd0IsQ0FBQztBQUUvRCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQzs7Ozs7O0FBUS9GLE1BQU0sT0FBTyxtQkFBbUI7SUFhOUIsWUFDVSxNQUFjLEVBQ08sVUFBa0IsRUFDckIsUUFBa0IsRUFDaEIsU0FBb0IsRUFDeEMsT0FBd0IsRUFDeEIsWUFBMEIsRUFDMUIseUJBQW9ELEVBQ3BELHFCQUE0QztRQVA1QyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ08sZUFBVSxHQUFWLFVBQVUsQ0FBUTtRQUNyQixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2hCLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFDeEMsWUFBTyxHQUFQLE9BQU8sQ0FBaUI7UUFDeEIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsOEJBQXlCLEdBQXpCLHlCQUF5QixDQUEyQjtRQUNwRCwwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FBcEI5QyxrQkFBYSxHQUFHLGtDQUFrQyxDQUFDO1FBQ25ELGFBQVEsR0FBRyxNQUFNLENBQUM7UUFDbEIsY0FBUyxHQUFHLFNBQVMsQ0FBQztRQUN0QixrQkFBYSxHQUFHLDJDQUEyQyxDQUFDO1FBQzVELGdCQUFXLEdB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QUFJLENBQUMsRUFBRSxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQzdELENBQUM7K0dBN0pVLG1CQUFtQix3Q0FlcEIsV0FBVyxhQUNYLFFBQVEsYUFDUixVQUFVO21HQWpCVCxtQkFBbUIsNE9BSG5CLENBQUMseUJBQXlCLENBQUM7OzRGQUczQixtQkFBbUI7a0JBTi9CLFNBQVM7bUJBQUM7b0JBQ1QsOERBQThEO29CQUM5RCxRQUFRLEVBQUUsY0FBYztvQkFDeEIsU0FBUyxFQUFFLENBQUMseUJBQXlCLENBQUM7b0JBQ3RDLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjs7MEJBZ0JJLE1BQU07MkJBQUMsV0FBVzs7MEJBQ2xCLE1BQU07MkJBQUMsUUFBUTs7MEJBQ2YsTUFBTTsyQkFBQyxVQUFVO3lLQVRYLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxxQkFBcUI7c0JBQTdCLEtBQUs7Z0JBRUcsVUFBVTtzQkFBbEIsS0FBSztnQkFjQyxPQUFPO3NCQURiLFlBQVk7dUJBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRE9DVU1FTlQsIGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyLCBJbmplY3QsIElucHV0LCBQTEFURk9STV9JRCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBMSUJfQ09ORklHLCBMaWJDb25maWcgfSBmcm9tICcuLi8uLi90b2tlbnMvTGliQ29uZmlnJztcbmltcG9ydCB7IFBob25lU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3Bob25lL3Bob25lLnNlcnZpY2UnO1xuaW1wb3J0IHsgUmRzaXRlUGhvbmVNb2RhbERpcmVjdGl2ZSB9IGZyb20gJy4uL3Jkc2l0ZS1waG9uZS1tb2RhbC9yZHNpdGUtcGhvbmUtbW9kYWwuZGlyZWN0aXZlJztcbmltcG9ydCB7IERldmljZURldGVjdG9yU2VydmljZSB9IGZyb20gJ25neC1kZXZpY2UtZGV0ZWN0b3InO1xuQERpcmVjdGl2ZSh7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvZGlyZWN0aXZlLXNlbGVjdG9yXG4gIHNlbGVjdG9yOiAnW3Jkc2l0ZWxpbmtdJyxcbiAgcHJvdmlkZXJzOiBbUmRzaXRlUGhvbmVNb2RhbERpcmVjdGl2ZV0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIFJkc2l0ZUxpbmtEaXJlY3RpdmUge1xuICBwcml2YXRlIGV4dGVybmFsUmVnZXggPSAvXmh0dHA6fGh0dHBzOnx0ZWw6fHd3d1xcLnxtYWlsdG86LztcbiAgcHJpdmF0ZSB0ZWxSZWdleCA9IC90ZWw6LztcbiAgcHJpdmF0ZSBtYWlsUmVnZXggPSAvbWFpbHRvOi87XG4gIHByaXZhdGUgd2hhdHNBcHBSZWdleCA9IC9eaHR0cHM/OlxcL1xcLyh3YVxcLm1lfGFwaVxcLndoYXRzYXBwXFwuY29tKVxcLy87XG4gIHByaXZhdGUgc2l0ZVVybExpc3QgPSBbJ3JlZGVkb3JzYW9sdWl6JywgJ3JlZGVkb3JsYWJzJ107XG4gIHByaXZhdGUgYWxsb3dlZFRhZ3MgPSBbJ0EnLCAnQ1VSQS1CVVRUT04nLCAnQ1VSQS1CVVRUT04tT1VUTElORScsICdDVVJBLUJVVFRPTi1UUkFOU1BBUkVOVCddO1xuXG4gIEBJbnB1dCgpIGFuY2hvckFkanVzdG1lbnQ6IG51bWJlciB8IG51bGwgPSBudWxsO1xuICBASW5wdXQoKSBhbmNob3JFeHRyYUFkanVzdG1lbnQ6IG51bWJlciB8IG51bGwgPSBudWxsO1xuXG4gIEBJbnB1dCgpIHBob25lbW9kYWw6IFRlbXBsYXRlUmVmPEhUTUxFbGVtZW50PiB8IG51bGwgPSBudWxsO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgQEluamVjdChQTEFURk9STV9JRCkgcHJpdmF0ZSBwbGF0Zm9ybUlkOiBvYmplY3QsXG4gICAgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSBkb2N1bWVudDogRG9jdW1lbnQsXG4gICAgQEluamVjdChMSUJfQ09ORklHKSBwcml2YXRlIGxpYkNvbmZpZzogTGliQ29uZmlnLFxuICAgIHByaXZhdGUgZWxlbWVudDogRWxlbWVudFJlZjxhbnk+LFxuICAgIHByaXZhdGUgcGhvbmVTZXJ2aWNlOiBQaG9uZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZHNpdGVQaG9uZU1vZGFsRGlyZWN0aXZlOiBSZHNpdGVQaG9uZU1vZGFsRGlyZWN0aXZlLFxuICAgIHByaXZhdGUgZGV2aWNlRGV0ZWN0b3JTZXJ2aWNlOiBEZXZpY2VEZXRlY3RvclNlcnZpY2UsXG4gICkge31cblxuICBASG9zdExpc3RlbmVyKCdjbGljaycsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBvbkNsaWNrKGV2ZW50OiBFdmVudCkge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgaWYgKCFpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpIHx8ICF0aGlzLmFsbG93ZWRUYWdzLmluY2x1ZGVzKHRoaXMuZWxlbWVudD8ubmF0aXZlRWxlbWVudD8udGFnTmFtZSkpIHJldHVybjtcbiAgICBjb25zdCBocmVmID0gdGhpcy5lbGVtZW50Py5uYXRpdmVFbGVtZW50Py5nZXRBdHRyaWJ1dGUoJ2hyZWYnKSA/PyAnJztcbiAgICBpZiAoIWhyZWYpIHJldHVybjtcblxuICAgIGlmICh0aGlzLmlzUGhvbmUoaHJlZikpIHtcbiAgICAgIHRoaXMucGhvbmVDbGlja2VkKHtcbiAgICAgICAgaHJlZixcbiAgICAgICAgZXZlbnQsXG4gICAgICAgIGVsZW1lbnQ6IHRoaXMuZWxlbWVudCxcbiAgICAgICAgcGhvbmVtb2RhbDogdGhpcy5waG9uZW1vZGFsLFxuICAgICAgfSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgaXNNb2JpbGUgPSB0aGlzLmRldmljZURldGVjdG9yU2VydmljZS5pc01vYmlsZSgpO1xuICAgIGNvbnN0IGRldmljZUluZm8gPSB0aGlzLmRldmljZURldGVjdG9yU2VydmljZS5nZXREZXZpY2VJbmZvKCk7XG5cbiAgICBpZiAodGhpcy5pc01haWwoaHJlZikpIHtcbiAgICAgIGNvbnN0IHRhcmdldCA9IGlzTW9iaWxlIHx8IGRldmljZUluZm8uYnJvd3NlciAhPT0gJ0Nocm9tZScgPyAnX3NlbGYnIDogJ19ibGFuayc7XG4gICAgICB3aW5kb3cub3BlbihocmVmLCB0YXJnZXQpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmlzV2hhdHMoaHJlZikgJiYgaXNNb2JpbGUpIHtcbiAgICAgIHdpbmRvdy5vcGVuKGhyZWYsICdfc2VsZicpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmlzRXh0ZXJuYWxVcmwoaHJlZikpIHtcbiAgICAgIGNvbnN0IHRhcmdldCA9IHRoaXMuaXNTaXRlVXJsKGhyZWYpID8gJ19zZWxmJyA6ICdfYmxhbmsnO1xuICAgICAgd2luZG93Lm9wZW4oaHJlZiwgdGFyZ2V0KTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5pc0FuY2hvcihocmVmKSkge1xuICAgICAgdGhpcy5zY3JvbGxUb0FuY2hvcihocmVmKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLm5hdmlnYXRlVG8oaHJlZik7XG4gIH1cblxuICBwcml2YXRlIGlzUGhvbmUoaHJlZjogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMudGVsUmVnZXgudGVzdChocmVmKTtcbiAgfVxuXG4gIHByaXZhdGUgaXNNYWlsKGhyZWY6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLm1haWxSZWdleC50ZXN0KGhyZWYpO1xuICB9XG5cbiAgcHJpdmF0ZSBpc1doYXRzKGhyZWY6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLndoYXRzQXBwUmVnZXgudGVzdChocmVmKTtcbiAgfVxuXG4gIHByaXZhdGUgcGhvbmVDbGlja2VkKHZhbHVlOiB7IGhyZWY6IHN0cmluZzsgZXZlbnQ6IEV2ZW50OyBlbGVtZW50OiBFbGVtZW50UmVmPGFueT47IHBob25lbW9kYWw6IFRlbXBsYXRlUmVmPEhUTUxFbGVtZW50PiB8IG51bGwgfSkge1xuICAgIGNvbnN0IHsgaHJlZiwgZXZlbnQsIGVsZW1lbnQsIHBob25lbW9kYWwgfSA9IHZhbHVlO1xuICAgIGlmICh0aGlzLnBob25lU2VydmljZS5pc1Bob25lTW9kYWwoaHJlZikpIHtcbiAgICAgIHRoaXMuc2V0UGhvbmVNb2RhbChlbGVtZW50LCBwaG9uZW1vZGFsKTtcbiAgICAgIHRoaXMucmRzaXRlUGhvbmVNb2RhbERpcmVjdGl2ZS5vcGVuUGhvbmVNb2RhbChldmVudCwgaHJlZik7XG4gICAgfSBlbHNlIHtcbiAgICAgIHdpbmRvdy5vcGVuKGhyZWYsICdfc2VsZicpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2V0UGhvbmVNb2RhbChlbGVtZW50OiBFbGVtZW50UmVmPGFueT4sIHBob25lbW9kYWw6IFRlbXBsYXRlUmVmPEhUTUxFbGVtZW50PiB8IG51bGwpIHtcbiAgICBpZiAoIXRoaXMucGhvbmVtb2RhbCkgcmV0dXJuO1xuICAgIGlmICghdGhpcy5saWJDb25maWc/LmN1c3RvbVBob25lTW9kYWxDb25kaXRpb24pIHtcbiAgICAgIHRoaXMucmRzaXRlUGhvbmVNb2RhbERpcmVjdGl2ZS5yZHNpdGVwaG9uZW1vZGFsID0gcGhvbmVtb2RhbDtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKHRoaXMubGliQ29uZmlnPy5jdXN0b21QaG9uZU1vZGFsQ29uZGl0aW9uKGVsZW1lbnQpKSB7XG4gICAgICB0aGlzLnJkc2l0ZVBob25lTW9kYWxEaXJlY3RpdmUucmRzaXRlcGhvbmVtb2RhbCA9IHBob25lbW9kYWw7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBpc0V4dGVybmFsVXJsKGhyZWY6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLmV4dGVybmFsUmVnZXgudGVzdChocmVmKTtcbiAgfVxuXG4gIHByaXZhdGUgaXNTaXRlVXJsKGhyZWY6IHN0cmluZykge1xuICAgIGNvbnN0IGV4Y2VwdGlvbiA9ICcvcGFjaWVudGUnO1xuICAgIHJldHVybiB0aGlzLnNpdGVVcmxMaXN0LmZpbmQoKHVybCkgPT4gaHJlZi5pbmNsdWRlcyh1cmwpICYmICFocmVmLmluY2x1ZGVzKGV4Y2VwdGlvbikpO1xuICB9XG5cbiAgcHJpdmF0ZSBpc0FuY2hvcihocmVmOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gaHJlZi5zdGFydHNXaXRoKCcjJyk7XG4gIH1cblxuICBwcml2YXRlIHNjcm9sbFRvQW5jaG9yKGhyZWY6IHN0cmluZykge1xuICAgIGlmIChocmVmID09PSAnIycpIHJldHVybjtcbiAgICBpZiAoaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xuICAgICAgY29uc3QgZG9jRWxlbWVudCA9IHRoaXMuZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50O1xuICAgICAgbGV0IGFkanVzdG1lbnQgPSAwO1xuXG4gICAgICBpZiAodGhpcy5saWJDb25maWcuY3VzdG9tQW5jaG9yQWRqdXN0bWVudCkge1xuICAgICAgICBhZGp1c3RtZW50ID0gdGhpcy5saWJDb25maWcuY3VzdG9tQW5jaG9yQWRqdXN0bWVudCh0aGlzLmRvY3VtZW50KTtcbiAgICAgIH1cblxuICAgICAgaWYgKHRoaXMuYW5jaG9yQWRqdXN0bWVudCkge1xuICAgICAgICBhZGp1c3RtZW50ID0gdGhpcy5hbmNob3JBZGp1c3RtZW50O1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy5hbmNob3JFeHRyYUFkanVzdG1lbnQpIHtcbiAgICAgICAgYWRqdXN0bWVudCArPSB0aGlzLmFuY2hvckV4dHJhQWRqdXN0bWVudDtcbiAgICAgIH1cblxuICAgICAgY29uc3QgYm9keVRvcCA9IHRoaXMuZG9jdW1lbnQ/LmJvZHk/LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpPy50b3AgPz8gMDtcbiAgICAgIGNvbnN0IGhyZWZUb3AgPSB0aGlzLmRvY3VtZW50Py5xdWVyeVNlbGVjdG9yPEhUTUxFbGVtZW50PihocmVmKT8uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk/LnRvcCA/PyAwO1xuICAgICAgY29uc3Qgc2Nyb2xsVG9wID0gYm9keVRvcCAqIC0xICsgaHJlZlRvcCAtIGFkanVzdG1lbnQ7XG4gICAgICBkb2NFbGVtZW50LnNjcm9sbFRvKHsgdG9wOiBzY3JvbGxUb3AsIGJlaGF2aW9yOiAnc21vb3RoJyB9KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIG5hdmlnYXRlVG8oaHJlZjogc3RyaW5nKSB7XG4gICAgY29uc3Qgc2l0ZUJhc2VQYXRoID0gdGhpcy5saWJDb25maWcuc2l0ZVN1Zml4ID8/ICcnO1xuICAgIGNvbnN0IG5vQmFzZUhyZWYgPSBocmVmLmluY2x1ZGVzKHNpdGVCYXNlUGF0aCkgPyBocmVmLnJlcGxhY2Uoc2l0ZUJhc2VQYXRoLCAnJykgOiBocmVmO1xuICAgIGlmICh0aGlzLmxpYkNvbmZpZz8uY3VzdG9tSW50ZXJuYWxMaW5rTmF2aWdhdGlvbiAmJiB0aGlzLmxpYkNvbmZpZy5jdXN0b21JbnRlcm5hbExpbmtOYXZpZ2F0aW9uKG5vQmFzZUhyZWYpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgW3BhdGgsIHF1ZXJ5XSA9IG5vQmFzZUhyZWYuc3BsaXQoJz8nKTtcbiAgICBjb25zdCBxdWVyeVBhcmFtczogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xuICAgIGlmIChxdWVyeSkge1xuICAgICAgY29uc3QgcXVlcnlBcnJheSA9IHF1ZXJ5LnNwbGl0KCcmJyk7XG4gICAgICBxdWVyeUFycmF5LmZvckVhY2goKHEpID0+IHtcbiAgICAgICAgY29uc3QgYXJyID0gcS5zcGxpdCgnPScpO1xuICAgICAgICBxdWVyeVBhcmFtc1thcnJbMF1dID0gYXJyWzFdO1xuICAgICAgfSk7XG4gICAgfVxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtwYXRoXSwgeyBxdWVyeVBhcmFtczogcXVlcnlQYXJhbXMgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -17192,7 +17192,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
17192
17192
|
}] } });
|
|
17193
17193
|
|
|
17194
17194
|
class RdsiteLinkDirective {
|
|
17195
|
-
constructor(router, platformId, document, libConfig, element, phoneService, rdsitePhoneModalDirective) {
|
|
17195
|
+
constructor(router, platformId, document, libConfig, element, phoneService, rdsitePhoneModalDirective, deviceDetectorService) {
|
|
17196
17196
|
this.router = router;
|
|
17197
17197
|
this.platformId = platformId;
|
|
17198
17198
|
this.document = document;
|
|
@@ -17200,9 +17200,11 @@ class RdsiteLinkDirective {
|
|
|
17200
17200
|
this.element = element;
|
|
17201
17201
|
this.phoneService = phoneService;
|
|
17202
17202
|
this.rdsitePhoneModalDirective = rdsitePhoneModalDirective;
|
|
17203
|
+
this.deviceDetectorService = deviceDetectorService;
|
|
17203
17204
|
this.externalRegex = /^http:|https:|tel:|www\.|mailto:/;
|
|
17204
17205
|
this.telRegex = /tel:/;
|
|
17205
17206
|
this.mailRegex = /mailto:/;
|
|
17207
|
+
this.whatsAppRegex = /^https?:\/\/(wa\.me|api\.whatsapp\.com)\//;
|
|
17206
17208
|
this.siteUrlList = ['rededorsaoluiz', 'rededorlabs'];
|
|
17207
17209
|
this.allowedTags = ['A', 'CURA-BUTTON', 'CURA-BUTTON-OUTLINE', 'CURA-BUTTON-TRANSPARENT'];
|
|
17208
17210
|
this.anchorAdjustment = null;
|
|
@@ -17225,8 +17227,19 @@ class RdsiteLinkDirective {
|
|
|
17225
17227
|
});
|
|
17226
17228
|
return;
|
|
17227
17229
|
}
|
|
17230
|
+
const isMobile = this.deviceDetectorService.isMobile();
|
|
17231
|
+
const deviceInfo = this.deviceDetectorService.getDeviceInfo();
|
|
17232
|
+
if (this.isMail(href)) {
|
|
17233
|
+
const target = isMobile || deviceInfo.browser !== 'Chrome' ? '_self' : '_blank';
|
|
17234
|
+
window.open(href, target);
|
|
17235
|
+
return;
|
|
17236
|
+
}
|
|
17237
|
+
if (this.isWhats(href) && isMobile) {
|
|
17238
|
+
window.open(href, '_self');
|
|
17239
|
+
return;
|
|
17240
|
+
}
|
|
17228
17241
|
if (this.isExternalUrl(href)) {
|
|
17229
|
-
const target = this.isSiteUrl(href)
|
|
17242
|
+
const target = this.isSiteUrl(href) ? '_self' : '_blank';
|
|
17230
17243
|
window.open(href, target);
|
|
17231
17244
|
return;
|
|
17232
17245
|
}
|
|
@@ -17242,6 +17255,9 @@ class RdsiteLinkDirective {
|
|
|
17242
17255
|
isMail(href) {
|
|
17243
17256
|
return this.mailRegex.test(href);
|
|
17244
17257
|
}
|
|
17258
|
+
isWhats(href) {
|
|
17259
|
+
return this.whatsAppRegex.test(href);
|
|
17260
|
+
}
|
|
17245
17261
|
phoneClicked(value) {
|
|
17246
17262
|
const { href, event, element, phonemodal } = value;
|
|
17247
17263
|
if (this.phoneService.isPhoneModal(href)) {
|
|
@@ -17311,7 +17327,7 @@ class RdsiteLinkDirective {
|
|
|
17311
17327
|
}
|
|
17312
17328
|
this.router.navigate([path], { queryParams: queryParams });
|
|
17313
17329
|
}
|
|
17314
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: RdsiteLinkDirective, deps: [{ token: i1$3.Router }, { token: PLATFORM_ID }, { token: DOCUMENT }, { token: LIB_CONFIG }, { token: i0.ElementRef }, { token: PhoneService }, { token: RdsitePhoneModalDirective }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
17330
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: RdsiteLinkDirective, deps: [{ token: i1$3.Router }, { token: PLATFORM_ID }, { token: DOCUMENT }, { token: LIB_CONFIG }, { token: i0.ElementRef }, { token: PhoneService }, { token: RdsitePhoneModalDirective }, { token: i2.DeviceDetectorService }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
17315
17331
|
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: RdsiteLinkDirective, isStandalone: true, selector: "[rdsitelink]", inputs: { anchorAdjustment: "anchorAdjustment", anchorExtraAdjustment: "anchorExtraAdjustment", phonemodal: "phonemodal" }, host: { listeners: { "click": "onClick($event)" } }, providers: [RdsitePhoneModalDirective], ngImport: i0 }); }
|
|
17316
17332
|
}
|
|
17317
17333
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: RdsiteLinkDirective, decorators: [{
|
|
@@ -17331,7 +17347,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
17331
17347
|
}] }, { type: undefined, decorators: [{
|
|
17332
17348
|
type: Inject,
|
|
17333
17349
|
args: [LIB_CONFIG]
|
|
17334
|
-
}] }, { type: i0.ElementRef }, { type: PhoneService }, { type: RdsitePhoneModalDirective }], propDecorators: { anchorAdjustment: [{
|
|
17350
|
+
}] }, { type: i0.ElementRef }, { type: PhoneService }, { type: RdsitePhoneModalDirective }, { type: i2.DeviceDetectorService }], propDecorators: { anchorAdjustment: [{
|
|
17335
17351
|
type: Input
|
|
17336
17352
|
}], anchorExtraAdjustment: [{
|
|
17337
17353
|
type: Input
|