@mozaic-ds/angular 0.28.0 → 0.29.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/adeo/components/phone-number/phone-number.component.d.ts +2 -1
- package/adeo/components/tooltip/directive/tooltip.directive.d.ts +8 -4
- package/adeo/components/tooltip/service/tooltip.service.d.ts +14 -0
- package/adeo/esm2020/components/autocomplete/autocomplete.component.mjs +3 -3
- package/adeo/esm2020/components/dropdown/dropdown.component.mjs +3 -3
- package/adeo/esm2020/components/phone-number/phone-number.component.mjs +7 -4
- package/adeo/esm2020/components/tooltip/directive/tooltip.directive.mjs +18 -14
- package/adeo/esm2020/components/tooltip/service/tooltip.service.mjs +35 -0
- package/adeo/fesm2015/mozaic-ds-angular.mjs +57 -19
- package/adeo/fesm2015/mozaic-ds-angular.mjs.map +1 -1
- package/adeo/fesm2020/mozaic-ds-angular.mjs +56 -19
- package/adeo/fesm2020/mozaic-ds-angular.mjs.map +1 -1
- package/adeo/package.json +1 -1
- package/bricoman/components/phone-number/phone-number.component.d.ts +2 -1
- package/bricoman/components/tooltip/directive/tooltip.directive.d.ts +8 -4
- package/bricoman/components/tooltip/service/tooltip.service.d.ts +14 -0
- package/bricoman/esm2020/components/autocomplete/autocomplete.component.mjs +3 -3
- package/bricoman/esm2020/components/dropdown/dropdown.component.mjs +3 -3
- package/bricoman/esm2020/components/phone-number/phone-number.component.mjs +7 -4
- package/bricoman/esm2020/components/tooltip/directive/tooltip.directive.mjs +18 -14
- package/bricoman/esm2020/components/tooltip/service/tooltip.service.mjs +35 -0
- package/bricoman/fesm2015/mozaic-ds-angular.mjs +57 -19
- package/bricoman/fesm2015/mozaic-ds-angular.mjs.map +1 -1
- package/bricoman/fesm2020/mozaic-ds-angular.mjs +56 -19
- package/bricoman/fesm2020/mozaic-ds-angular.mjs.map +1 -1
- package/bricoman/package.json +1 -1
- package/components/phone-number/phone-number.component.d.ts +2 -1
- package/components/tooltip/directive/tooltip.directive.d.ts +8 -4
- package/components/tooltip/service/tooltip.service.d.ts +14 -0
- package/esm2020/components/autocomplete/autocomplete.component.mjs +3 -3
- package/esm2020/components/dropdown/dropdown.component.mjs +3 -3
- package/esm2020/components/phone-number/phone-number.component.mjs +7 -4
- package/esm2020/components/tooltip/directive/tooltip.directive.mjs +18 -14
- package/esm2020/components/tooltip/service/tooltip.service.mjs +35 -0
- package/fesm2015/mozaic-ds-angular.mjs +57 -19
- package/fesm2015/mozaic-ds-angular.mjs.map +1 -1
- package/fesm2020/mozaic-ds-angular.mjs +56 -19
- package/fesm2020/mozaic-ds-angular.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -1,22 +1,16 @@
|
|
|
1
|
-
import { Directive, Input,
|
|
1
|
+
import { Directive, HostListener, Input, } from '@angular/core';
|
|
2
|
+
import { tap } from 'rxjs';
|
|
2
3
|
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "../service/tooltip.service";
|
|
3
5
|
export class TooltipDirective {
|
|
4
|
-
constructor(el, renderer) {
|
|
6
|
+
constructor(el, renderer, tooltipService) {
|
|
5
7
|
this.el = el;
|
|
6
8
|
this.renderer = renderer;
|
|
9
|
+
this.tooltipService = tooltipService;
|
|
7
10
|
this.tooltipContent = '';
|
|
8
11
|
this.tooltipPosition = 'top';
|
|
9
12
|
this.tooltip = null;
|
|
10
13
|
this.offset = 16;
|
|
11
|
-
this.mutationObserver = new MutationObserver(() => {
|
|
12
|
-
if (!document.body.contains(this.el.nativeElement)) {
|
|
13
|
-
this.hideTooltip();
|
|
14
|
-
}
|
|
15
|
-
});
|
|
16
|
-
this.mutationObserver.observe(document.body, {
|
|
17
|
-
childList: true,
|
|
18
|
-
subtree: true,
|
|
19
|
-
});
|
|
20
14
|
}
|
|
21
15
|
onMouseIn() {
|
|
22
16
|
if (!this.tooltip)
|
|
@@ -26,7 +20,17 @@ export class TooltipDirective {
|
|
|
26
20
|
if (this.tooltip)
|
|
27
21
|
this.hideTooltip();
|
|
28
22
|
}
|
|
23
|
+
ngOnInit() {
|
|
24
|
+
this.hideTooltipSubscription = this.tooltipService.hideTooltip$
|
|
25
|
+
.pipe(tap(() => this.hideTooltip()))
|
|
26
|
+
.subscribe();
|
|
27
|
+
}
|
|
28
|
+
ngOnDestroy() {
|
|
29
|
+
this.hideTooltip();
|
|
30
|
+
this.hideTooltipSubscription?.unsubscribe();
|
|
31
|
+
}
|
|
29
32
|
showTooltip() {
|
|
33
|
+
this.tooltipService.setCurrentTooltip(this.el);
|
|
30
34
|
this.tooltip = this.renderer.createElement('span');
|
|
31
35
|
this.renderer.appendChild(this.tooltip, this.renderer.createText(this.tooltipContent));
|
|
32
36
|
this.renderer.appendChild(document.body, this.tooltip);
|
|
@@ -74,14 +78,14 @@ export class TooltipDirective {
|
|
|
74
78
|
}
|
|
75
79
|
}
|
|
76
80
|
}
|
|
77
|
-
TooltipDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TooltipDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
|
81
|
+
TooltipDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TooltipDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.TooltipService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
78
82
|
TooltipDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: TooltipDirective, selector: "[mozTooltipDirective]", inputs: { tooltipContent: ["mozTooltipDirective", "tooltipContent"], tooltipPosition: "tooltipPosition" }, host: { listeners: { "mouseover": "onMouseIn()", "mouseleave": "onMouseOut()" } }, ngImport: i0 });
|
|
79
83
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TooltipDirective, decorators: [{
|
|
80
84
|
type: Directive,
|
|
81
85
|
args: [{
|
|
82
86
|
selector: '[mozTooltipDirective]',
|
|
83
87
|
}]
|
|
84
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { tooltipContent: [{
|
|
88
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.TooltipService }]; }, propDecorators: { tooltipContent: [{
|
|
85
89
|
type: Input,
|
|
86
90
|
args: ['mozTooltipDirective']
|
|
87
91
|
}], tooltipPosition: [{
|
|
@@ -93,4 +97,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
93
97
|
type: HostListener,
|
|
94
98
|
args: ['mouseleave']
|
|
95
99
|
}] } });
|
|
96
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
100
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9raXQvY29tcG9uZW50cy90b29sdGlwL2RpcmVjdGl2ZS90b29sdGlwLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVULFlBQVksRUFDWixLQUFLLEdBSU4sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFnQixHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7OztBQU16QyxNQUFNLE9BQU8sZ0JBQWdCO0lBTzNCLFlBQ1UsRUFBYyxFQUNkLFFBQW1CLEVBQ1YsY0FBOEI7UUFGdkMsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUNkLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDVixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFUbkIsbUJBQWMsR0FBVyxFQUFFLENBQUM7UUFDakQsb0JBQWUsR0FBVyxLQUFLLENBQUM7UUFDbEMsWUFBTyxHQUF1QixJQUFJLENBQUM7UUFDbkMsV0FBTSxHQUFXLEVBQUUsQ0FBQztJQU94QixDQUFDO0lBR0osU0FBUztRQUNQLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTztZQUFFLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN4QyxDQUFDO0lBR0QsVUFBVTtRQUNSLElBQUksSUFBSSxDQUFDLE9BQU87WUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDdkMsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsdUJBQXVCLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZO2FBQzVELElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7YUFDbkMsU0FBUyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsV0FBVyxFQUFFLENB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QyxxQkFBcUI7Z0JBQ25CLGVBQWU7c0JBQXZCLEtBQUs7Z0JBWU4sU0FBUztzQkFEUixZQUFZO3VCQUFDLFdBQVc7Z0JBTXpCLFVBQVU7c0JBRFQsWUFBWTt1QkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGlyZWN0aXZlLFxuICBFbGVtZW50UmVmLFxuICBIb3N0TGlzdGVuZXIsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgUmVuZGVyZXIyLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiwgdGFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBUb29sdGlwU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2UvdG9vbHRpcC5zZXJ2aWNlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW21velRvb2x0aXBEaXJlY3RpdmVdJyxcbn0pXG5leHBvcnQgY2xhc3MgVG9vbHRpcERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgQElucHV0KCdtb3pUb29sdGlwRGlyZWN0aXZlJykgdG9vbHRpcENvbnRlbnQ6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSB0b29sdGlwUG9zaXRpb246IHN0cmluZyA9ICd0b3AnO1xuICBwdWJsaWMgdG9vbHRpcDogSFRNTEVsZW1lbnQgfCBudWxsID0gbnVsbDtcbiAgcHVibGljIG9mZnNldDogbnVtYmVyID0gMTY7XG4gIHByaXZhdGUgaGlkZVRvb2x0aXBTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbiB8IHVuZGVmaW5lZDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGVsOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRvb2x0aXBTZXJ2aWNlOiBUb29sdGlwU2VydmljZVxuICApIHt9XG5cbiAgQEhvc3RMaXN0ZW5lcignbW91c2VvdmVyJylcbiAgb25Nb3VzZUluKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy50b29sdGlwKSB0aGlzLnNob3dUb29sdGlwKCk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdtb3VzZWxlYXZlJylcbiAgb25Nb3VzZU91dCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy50b29sdGlwKSB0aGlzLmhpZGVUb29sdGlwKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmhpZGVUb29sdGlwU3Vic2NyaXB0aW9uID0gdGhpcy50b29sdGlwU2VydmljZS5oaWRlVG9vbHRpcCRcbiAgICAgIC5waXBlKHRhcCgoKSA9PiB0aGlzLmhpZGVUb29sdGlwKCkpKVxuICAgICAgLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5oaWRlVG9vbHRpcCgpO1xuICAgIHRoaXMuaGlkZVRvb2x0aXBTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBzaG93VG9vbHRpcCgpOiB2b2lkIHtcbiAgICB0aGlzLnRvb2x0aXBTZXJ2aWNlLnNldEN1cnJlbnRUb29sdGlwKHRoaXMuZWwpO1xuICAgIHRoaXMudG9vbHRpcCA9IHRoaXMucmVuZGVyZXIuY3JlYXRlRWxlbWVudCgnc3BhbicpO1xuXG4gICAgdGhpcy5yZW5kZXJlci5hcHBlbmRDaGlsZCh0aGlzLnRvb2x0aXAsIHRoaXMucmVuZGVyZXIuY3JlYXRlVGV4dCh0aGlzLnRvb2x0aXBDb250ZW50KSk7XG5cbiAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKGRvY3VtZW50LmJvZHksIHRoaXMudG9vbHRpcCk7XG5cbiAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMudG9vbHRpcCwgJ21jLXRvb2x0aXBfX2NvbnRlbnQnKTtcbiAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMudG9vbHRpcCwgYG1jLXRvb2x0aXBfX2NvbnRlbnQtJHt0aGlzLnRvb2x0aXBQb3NpdGlvbn1gKTtcblxuICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy50b29sdGlwLCAnLXdlYmtpdC10cmFuc2l0aW9uJywgYG9wYWNpdHkgNTAwbXNgKTtcbiAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMudG9vbHRpcCwgJy1tb3otdHJhbnNpdGlvbicsIGBvcGFjaXR5IDUwMG1zYCk7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnRvb2x0aXAsICctby10cmFuc2l0aW9uJywgYG9wYWNpdHkgNTAwbXNgKTtcbiAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMudG9vbHRpcCwgJ3RyYW5zaXRpb24nLCBgb3BhY2l0eSA1MDBtc2ApO1xuXG4gICAgdGhpcy5zZXRQb3NpdGlvbigpO1xuICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy50b29sdGlwLCAnbWMtdG9vbHRpcF9fY29udGVudC1zaG93Jyk7XG4gIH1cblxuICBoaWRlVG9vbHRpcCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5yZW5kZXJlciAmJiB0aGlzLnRvb2x0aXApIHtcbiAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQ2hpbGQoZG9jdW1lbnQuYm9keSwgdGhpcy50b29sdGlwKTtcbiAgICAgIHRoaXMudG9vbHRpcCA9IG51bGw7XG4gICAgfVxuICB9XG5cbiAgc2V0UG9zaXRpb24oKTogdm9pZCB7XG4gICAgaWYgKHRoaXMudG9vbHRpcCkge1xuICAgICAgY29uc3QgaG9zdFBvcyA9IHRoaXMuZWwubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgIGNvbnN0IHRvb2x0aXBQb3MgPSB0aGlzLnRvb2x0aXAuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgICBjb25zdCBzY3JvbGxQb3MgPVxuICAgICAgICB3aW5kb3cuc2Nyb2xsWSB8fCBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuc2Nyb2xsVG9wIHx8IGRvY3VtZW50LmJvZHkuc2Nyb2xsVG9wIHx8IDA7XG5cbiAgICAgIGxldCB0b3AsIGxlZnQ7XG5cbiAgICAgIGlmICh0aGlzLnRvb2x0aXBQb3NpdGlvbiA9PT0gJ3RvcCcpIHtcbiAgICAgICAgdG9wID0gaG9zdFBvcy50b3AgLSB0b29sdGlwUG9zLmhlaWdodCAtIHRoaXMub2Zmc2V0O1xuICAgICAgICBsZWZ0ID0gaG9zdFBvcy5sZWZ0ICsgKGhvc3RQb3Mud2lkdGggLSB0b29sdGlwUG9zLndpZHRoKSAvIDI7XG4gICAgICB9XG5cbiAgICAgIGlmICh0aGlzLnRvb2x0aXBQb3NpdGlvbiA9PT0gJ2JvdHRvbScpIHtcbiAgICAgICAgdG9wID0gaG9zdFBvcy5ib3R0b20gKyB0aGlzLm9mZnNldDtcbiAgICAgICAgbGVmdCA9IGhvc3RQb3MubGVmdCArIChob3N0UG9zLndpZHRoIC0gdG9vbHRpcFBvcy53aWR0aCkgLyAyO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy50b29sdGlwUG9zaXRpb24gPT09ICdsZWZ0Jykge1xuICAgICAgICB0b3AgPSBob3N0UG9zLnRvcCArIChob3N0UG9zLmhlaWdodCAtIHRvb2x0aXBQb3MuaGVpZ2h0KSAvIDI7XG4gICAgICAgIGxlZnQgPSBob3N0UG9zLmxlZnQgLSB0b29sdGlwUG9zLndpZHRoIC0gdGhpcy5vZmZzZXQ7XG4gICAgICB9XG5cbiAgICAgIGlmICh0aGlzLnRvb2x0aXBQb3NpdGlvbiA9PT0gJ3JpZ2h0Jykge1xuICAgICAgICB0b3AgPSBob3N0UG9zLnRvcCArIChob3N0UG9zLmhlaWdodCAtIHRvb2x0aXBQb3MuaGVpZ2h0KSAvIDI7XG4gICAgICAgIGxlZnQgPSBob3N0UG9zLnJpZ2h0ICsgdGhpcy5vZmZzZXQ7XG4gICAgICB9XG5cbiAgICAgIGlmICh0b3ApIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnRvb2x0aXAsICd0b3AnLCBgJHt0b3AgKyBzY3JvbGxQb3N9cHhgKTtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLnRvb2x0aXAsICdsZWZ0JywgYCR7bGVmdH1weGApO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { Subject } from 'rxjs';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class TooltipService {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.currentTooltip = null;
|
|
7
|
+
this.hideTooltipSubject = new Subject();
|
|
8
|
+
this.mutationObserver = null;
|
|
9
|
+
this.mutationObserver = new MutationObserver(this.mutationObserverCallback.bind(this));
|
|
10
|
+
this.mutationObserver.observe(document.body, {
|
|
11
|
+
childList: true,
|
|
12
|
+
subtree: true,
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
get hideTooltip$() {
|
|
16
|
+
return this.hideTooltipSubject.asObservable();
|
|
17
|
+
}
|
|
18
|
+
setCurrentTooltip(tooltip) {
|
|
19
|
+
this.currentTooltip = tooltip;
|
|
20
|
+
}
|
|
21
|
+
mutationObserverCallback() {
|
|
22
|
+
if (this.currentTooltip && !document.body.contains(this.currentTooltip.nativeElement)) {
|
|
23
|
+
this.hideTooltipSubject.next();
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
TooltipService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TooltipService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
28
|
+
TooltipService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TooltipService, providedIn: 'root' });
|
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TooltipService, decorators: [{
|
|
30
|
+
type: Injectable,
|
|
31
|
+
args: [{
|
|
32
|
+
providedIn: 'root',
|
|
33
|
+
}]
|
|
34
|
+
}], ctorParameters: function () { return []; } });
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbHRpcC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2l0L2NvbXBvbmVudHMvdG9vbHRpcC9zZXJ2aWNlL3Rvb2x0aXAuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZELE9BQU8sRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBSzNDLE1BQU0sT0FBTyxjQUFjO0lBS3pCO1FBSlEsbUJBQWMsR0FBc0IsSUFBSSxDQUFDO1FBQ3pDLHVCQUFrQixHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7UUFDekMscUJBQWdCLEdBQTRCLElBQUksQ0FBQztRQUd2RCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsd0JBQXdCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFFdkYsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFO1lBQzNDLFNBQVMsRUFBRSxJQUFJO1lBQ2YsT0FBTyxFQUFFLElBQUk7U0FDZCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsSUFBVyxZQUFZO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ2hELENBQUM7SUFFTSxpQkFBaUIsQ0FBQyxPQUFtQjtRQUMxQyxJQUFJLENBQUMsY0FBYyxHQUFHLE9BQU8sQ0FBQztJQUNoQyxDQUFDO0lBRU8sd0JBQXdCO1FBQzlCLElBQUksSUFBSSxDQUFDLGNBQWMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDLEVBQUU7WUFDckYsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksRUFBRSxDQUFDO1NBQ2hDO0lBQ0gsQ0FBQzs7NEdBMUJVLGNBQWM7Z0hBQWQsY0FBYyxjQUZiLE1BQU07NEZBRVAsY0FBYztrQkFIMUIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbGVtZW50UmVmLCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBUb29sdGlwU2VydmljZSB7XG4gIHByaXZhdGUgY3VycmVudFRvb2x0aXA6IEVsZW1lbnRSZWYgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBoaWRlVG9vbHRpcFN1YmplY3QgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICBwcml2YXRlIG11dGF0aW9uT2JzZXJ2ZXI6IE11dGF0aW9uT2JzZXJ2ZXIgfCBudWxsID0gbnVsbDtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLm11dGF0aW9uT2JzZXJ2ZXIgPSBuZXcgTXV0YXRpb25PYnNlcnZlcih0aGlzLm11dGF0aW9uT2JzZXJ2ZXJDYWxsYmFjay5iaW5kKHRoaXMpKTtcblxuICAgIHRoaXMubXV0YXRpb25PYnNlcnZlci5vYnNlcnZlKGRvY3VtZW50LmJvZHksIHtcbiAgICAgIGNoaWxkTGlzdDogdHJ1ZSxcbiAgICAgIHN1YnRyZWU6IHRydWUsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGhpZGVUb29sdGlwJCgpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICByZXR1cm4gdGhpcy5oaWRlVG9vbHRpcFN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBwdWJsaWMgc2V0Q3VycmVudFRvb2x0aXAodG9vbHRpcDogRWxlbWVudFJlZik6IHZvaWQge1xuICAgIHRoaXMuY3VycmVudFRvb2x0aXAgPSB0b29sdGlwO1xuICB9XG5cbiAgcHJpdmF0ZSBtdXRhdGlvbk9ic2VydmVyQ2FsbGJhY2soKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuY3VycmVudFRvb2x0aXAgJiYgIWRvY3VtZW50LmJvZHkuY29udGFpbnModGhpcy5jdXJyZW50VG9vbHRpcC5uYXRpdmVFbGVtZW50KSkge1xuICAgICAgdGhpcy5oaWRlVG9vbHRpcFN1YmplY3QubmV4dCgpO1xuICAgIH1cbiAgfVxufVxuIl19
|