ng-virtual-list 18.12.2 → 18.12.4
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/README.md +2 -2
- package/esm2022/lib/components/ng-list-item/base/base-virtual-list-item-component.mjs +9 -5
- package/esm2022/lib/components/ng-list-item/const/index.mjs +2 -1
- package/esm2022/lib/components/ng-list-item/ng-virtual-list-item.component.mjs +14 -8
- package/esm2022/lib/components/ng-prerender-container/components/ng-prerender-list-item/ng-prerender-list-item.component.mjs +3 -3
- package/esm2022/lib/components/ng-scroll-view/ng-scroll-view.component.mjs +20 -14
- package/esm2022/lib/components/ng-scroller/ng-scroller.component.mjs +6 -2
- package/esm2022/lib/const/index.mjs +6 -3
- package/esm2022/lib/core/track-box.mjs +31 -9
- package/esm2022/lib/directives/virtual-click/virtual-click.directive.mjs +35 -16
- package/esm2022/lib/models/display-object-config.model.mjs +1 -1
- package/esm2022/lib/ng-virtual-list.component.mjs +43 -11
- package/esm2022/lib/ng-virtual-list.service.mjs +31 -2
- package/esm2022/lib/utils/animator/animator.mjs +39 -14
- package/fesm2022/ng-virtual-list.mjs +222 -73
- package/fesm2022/ng-virtual-list.mjs.map +1 -1
- package/lib/components/ng-list-item/base/base-virtual-list-item-component.d.ts +1 -1
- package/lib/components/ng-list-item/ng-virtual-list-item.component.d.ts +3 -1
- package/lib/components/ng-scroll-view/ng-scroll-view.component.d.ts +5 -2
- package/lib/components/ng-scroller/ng-scroller.component.d.ts +1 -1
- package/lib/const/index.d.ts +3 -1
- package/lib/directives/virtual-click/virtual-click.directive.d.ts +11 -6
- package/lib/models/display-object-config.model.d.ts +4 -0
- package/lib/ng-virtual-list.component.d.ts +2 -1
- package/lib/ng-virtual-list.service.d.ts +13 -0
- package/lib/utils/animator/animator.d.ts +11 -2
- package/package.json +1 -1
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { Directive,
|
|
2
|
-
import { fromEvent, of, race
|
|
1
|
+
import { Directive, ElementRef, inject, Input, Output, EventEmitter } from '@angular/core';
|
|
2
|
+
import { Subject, BehaviorSubject, combineLatest, fromEvent, of, race } from 'rxjs';
|
|
3
3
|
import { filter, switchMap, takeUntil, tap } from 'rxjs/operators';
|
|
4
|
+
import { NgVirtualListService } from '../../ng-virtual-list.service';
|
|
5
|
+
import { DEFAULT_CLICK_DISTANCE } from '../../const';
|
|
4
6
|
import * as i0 from "@angular/core";
|
|
5
|
-
const DEFAULT_MAX_DISTANCE = 40;
|
|
6
7
|
/**
|
|
7
|
-
*
|
|
8
|
+
* VirtualClickDirective
|
|
8
9
|
* Maximum performance for extremely large lists.
|
|
9
10
|
* It is based on algorithms for virtualization of screen objects.
|
|
10
11
|
* @link https://github.com/DjonnyX/ng-virtual-list/blob/18.x/projects/ng-virtual-list/src/lib/directives/item-click/item-click.directive.ts
|
|
@@ -12,30 +13,44 @@ const DEFAULT_MAX_DISTANCE = 40;
|
|
|
12
13
|
* @email djonnyx@gmail.com
|
|
13
14
|
*/
|
|
14
15
|
export class VirtualClickDirective {
|
|
15
|
-
_elementRef;
|
|
16
16
|
_$unsubscribe = new Subject();
|
|
17
|
-
|
|
17
|
+
_$maxDistance = new BehaviorSubject(null);
|
|
18
|
+
$maxDistance = this._$maxDistance.asObservable();
|
|
19
|
+
_maxDistance = null;
|
|
18
20
|
set maxDistance(v) {
|
|
19
|
-
|
|
21
|
+
const value = (v !== null || v !== undefined) ? Number(v) : null;
|
|
22
|
+
this._maxDistance = value;
|
|
23
|
+
this._$maxDistance.next(value);
|
|
20
24
|
}
|
|
21
25
|
onVirtualClick = new EventEmitter();
|
|
22
|
-
|
|
23
|
-
|
|
26
|
+
onVirtualClickPress = new EventEmitter();
|
|
27
|
+
onVirtualClickCancel = new EventEmitter();
|
|
28
|
+
_service = inject(NgVirtualListService);
|
|
29
|
+
_elementRef = inject(ElementRef);
|
|
30
|
+
constructor() {
|
|
31
|
+
let maxDistance = this._maxDistance ?? DEFAULT_CLICK_DISTANCE;
|
|
32
|
+
combineLatest([this._service.$clickDistance, this.$maxDistance]).pipe(takeUntil(this._$unsubscribe), tap(([clickDistance, distance]) => {
|
|
33
|
+
maxDistance = distance === null ? clickDistance : distance;
|
|
34
|
+
})).subscribe();
|
|
24
35
|
const $pointerPressed = fromEvent(this._elementRef.nativeElement, 'pointerdown'), $pointerCancel = race([
|
|
25
36
|
fromEvent(window, 'pointerup').pipe(takeUntil(this._$unsubscribe)),
|
|
26
37
|
fromEvent(window, 'pointerleave').pipe(takeUntil(this._$unsubscribe)),
|
|
27
38
|
]), $pointerRelease = fromEvent(this._elementRef.nativeElement, 'pointerup', { passive: false });
|
|
28
39
|
$pointerPressed.pipe(takeUntil(this._$unsubscribe), switchMap(e => {
|
|
29
40
|
const x = Math.abs(e.clientX), y = Math.abs(e.clientY);
|
|
41
|
+
this.onVirtualClickPress.emit(e);
|
|
30
42
|
return $pointerRelease.pipe(takeUntil(this._$unsubscribe), takeUntil(race([
|
|
31
|
-
$pointerCancel,
|
|
43
|
+
$pointerCancel.pipe(takeUntil(this._$unsubscribe), tap(() => {
|
|
44
|
+
this.onVirtualClickCancel.emit();
|
|
45
|
+
})),
|
|
32
46
|
fromEvent(window, 'pointermove').pipe(takeUntil(this._$unsubscribe), switchMap(e => {
|
|
33
47
|
const xx = x - Math.abs(e.clientX), yy = y - Math.abs(e.clientY), dist = Math.sqrt(Math.pow(xx, 2) + Math.pow(yy, 2));
|
|
34
|
-
if (dist >
|
|
48
|
+
if (dist > maxDistance) {
|
|
49
|
+
this.onVirtualClickCancel.emit();
|
|
35
50
|
return of(true);
|
|
36
51
|
}
|
|
37
52
|
return of(false);
|
|
38
|
-
}),
|
|
53
|
+
}), filter(v => !!v)),
|
|
39
54
|
])), takeUntil(this._$unsubscribe), tap(e => {
|
|
40
55
|
if (e) {
|
|
41
56
|
this.onVirtualClick.emit(e);
|
|
@@ -49,8 +64,8 @@ export class VirtualClickDirective {
|
|
|
49
64
|
this._$unsubscribe.complete();
|
|
50
65
|
}
|
|
51
66
|
}
|
|
52
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: VirtualClickDirective, deps: [
|
|
53
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: VirtualClickDirective, selector: "[virtualClick]", inputs: { maxDistance: ["maxClickDistance", "maxDistance"] }, outputs: { onVirtualClick: "onVirtualClick" }, ngImport: i0 });
|
|
67
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: VirtualClickDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
68
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: VirtualClickDirective, selector: "[virtualClick]", inputs: { maxDistance: ["maxClickDistance", "maxDistance"] }, outputs: { onVirtualClick: "onVirtualClick", onVirtualClickPress: "onVirtualClickPress", onVirtualClickCancel: "onVirtualClickCancel" }, ngImport: i0 });
|
|
54
69
|
}
|
|
55
70
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: VirtualClickDirective, decorators: [{
|
|
56
71
|
type: Directive,
|
|
@@ -58,10 +73,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
58
73
|
selector: '[virtualClick]',
|
|
59
74
|
standalone: false,
|
|
60
75
|
}]
|
|
61
|
-
}], ctorParameters: () => [
|
|
76
|
+
}], ctorParameters: () => [], propDecorators: { maxDistance: [{
|
|
62
77
|
type: Input,
|
|
63
78
|
args: ['maxClickDistance']
|
|
64
79
|
}], onVirtualClick: [{
|
|
65
80
|
type: Output
|
|
81
|
+
}], onVirtualClickPress: [{
|
|
82
|
+
type: Output
|
|
83
|
+
}], onVirtualClickCancel: [{
|
|
84
|
+
type: Output
|
|
66
85
|
}] } });
|
|
67
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlydHVhbC1jbGljay5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi9kaXJlY3RpdmVzL3ZpcnR1YWwtY2xpY2svdmlydHVhbC1jbGljay5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxZQUFZLEVBQUUsS0FBSyxFQUFhLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RixPQUFPLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BELE9BQU8sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFFbkUsTUFBTSxvQkFBb0IsR0FBRyxFQUFFLENBQUM7QUFFaEM7Ozs7Ozs7R0FPRztBQUtILE1BQU0sT0FBTyxxQkFBcUI7SUFhVjtJQVpWLGFBQWEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBRXRDLFlBQVksR0FBRyxvQkFBb0IsQ0FBQztJQUU1QyxJQUNJLFdBQVcsQ0FBQyxDQUFnQjtRQUM1QixJQUFJLENBQUMsWUFBWSxHQUFHLENBQUMsQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsb0JBQW9CLENBQUM7SUFDM0YsQ0FBQztJQUdELGNBQWMsR0FBRyxJQUFJLFlBQVksRUFBNkIsQ0FBQztJQUUvRCxZQUFvQixXQUF1QjtRQUF2QixnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQUN2QyxNQUFNLGVBQWUsR0FBRyxTQUFTLENBQWUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLEVBQUUsYUFBYSxDQUFDLEVBQzFGLGNBQWMsR0FBRyxJ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Y2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uRGVzdHJveSwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGZyb21FdmVudCwgb2YsIHJhY2UsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgZmlsdGVyLCBzd2l0Y2hNYXAsIHRha2VVbnRpbCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuY29uc3QgREVGQVVMVF9NQVhfRElTVEFOQ0UgPSA0MDtcclxuXHJcbi8qKlxyXG4gKiBJdGVtQ2xpY2tEaXJlY3RpdmVcclxuICogTWF4aW11bSBwZXJmb3JtYW5jZSBmb3IgZXh0cmVtZWx5IGxhcmdlIGxpc3RzLlxyXG4gKiBJdCBpcyBiYXNlZCBvbiBhbGdvcml0aG1zIGZvciB2aXJ0dWFsaXphdGlvbiBvZiBzY3JlZW4gb2JqZWN0cy5cclxuICogQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL0Rqb25ueVgvbmctdmlydHVhbC1saXN0L2Jsb2IvMTgueC9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi9kaXJlY3RpdmVzL2l0ZW0tY2xpY2svaXRlbS1jbGljay5kaXJlY3RpdmUudHNcclxuICogQGF1dGhvciBFdmdlbmlpIEFsZXhhbmRyb3ZpY2ggR3JlYmVubmlrb3ZcclxuICogQGVtYWlsIGRqb25ueXhAZ21haWwuY29tXHJcbiAqL1xyXG5ARGlyZWN0aXZlKHtcclxuICAgIHNlbGVjdG9yOiAnW3ZpcnR1YWxDbGlja10nLFxyXG4gICAgc3RhbmRhbG9uZTogZmFsc2UsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBWaXJ0dWFsQ2xpY2tEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xyXG4gICAgcHJvdGVjdGVkIF8kdW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xyXG5cclxuICAgIHByaXZhdGUgX21heERpc3RhbmNlID0gREVGQVVMVF9NQVhfRElTVEFOQ0U7XHJcblxyXG4gICAgQElucHV0KCdtYXhDbGlja0Rpc3RhbmNlJylcclxuICAgIHNldCBtYXhEaXN0YW5jZSh2OiBudW1iZXIgfCBudWxsKSB7XHJcbiAgICAgICAgdGhpcy5fbWF4RGlzdGFuY2UgPSAodiAhPT0gbnVsbCB8fCB2ICE9PSB1bmRlZmluZWQpID8gTnVtYmVyKHYpIDogREVGQVVMVF9NQVhfRElTVEFOQ0U7XHJcbiAgICB9XHJcblxyXG4gICAgQE91dHB1dCgpXHJcbiAgICBvblZpcnR1YWxDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8UG9pbnRlckV2ZW50IHwgVG91Y2hFdmVudD4oKTtcclxuXHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7XHJcbiAgICAgICAgY29uc3QgJHBvaW50ZXJQcmVzc2VkID0gZnJvbUV2ZW50PFBvaW50ZXJFdmVudD4odGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAncG9pbnRlcmRvd24nKSxcclxuICAgICAgICAgICAgJHBvaW50ZXJDYW5jZWwgPSByYWNlKFtcclxuICAgICAgICAgICAgICAgIGZyb21FdmVudCh3aW5kb3csICdwb2ludGVydXAnKS5waXBlKFxyXG4gICAgICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl8kdW5zdWJzY3JpYmUpLFxyXG4gICAgICAgICAgICAgICAgKSxcclxuICAgICAgICAgICAgICAgIGZyb21FdmVudDxQb2ludGVyRXZlbnQ+KHdpbmRvdywgJ3BvaW50ZXJsZWF2ZScpLnBpcGUoXHJcbiAgICAgICAgICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuXyR1bnN1YnNjcmliZSksXHJcbiAgICAgICAgICAgICAgICApLFxyXG4gICAgICAgICAgICBdKSxcclxuICAgICAgICAgICAgJHBvaW50ZXJSZWxlYXNlID0gZnJvbUV2ZW50PFBvaW50ZXJFdmVudD4odGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAncG9pbnRlcnVwJywgeyBwYXNzaXZlOiBmYWxzZSB9KTtcclxuXHJcbiAgICAgICAgJHBvaW50ZXJQcmVzc2VkLnBpcGUoXHJcbiAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl8kdW5zdWJzY3JpYmUpLFxyXG4gICAgICAgICAgICBzd2l0Y2hNYXAoZSA9PiB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCB4ID0gTWF0aC5hYnMoZS5jbGllbnRYKSxcclxuICAgICAgICAgICAgICAgICAgICB5ID0gTWF0aC5hYnMoZS5jbGllbnRZKTtcclxuICAgICAgICAgICAgICAgIHJldHVybiAkcG9pbnRlclJlbGVhc2UucGlwZShcclxuICAgICAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5fJHVuc3Vic2NyaWJlKSxcclxuICAgICAgICAgICAgICAgICAgICB0YWtlVW50aWwoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJhY2UoW1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJHBvaW50ZXJDYW5jZWwsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmcm9tRXZlbnQ8UG9pbnRlckV2ZW50Pih3aW5kb3csICdwb2ludGVybW92ZScpLnBpcGUoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuXyR1bnN1YnNjcmliZSksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3dpdGNoTWFwKGUgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB4eCA9IHggLSBNYXRoLmFicyhlLmNsaWVudFgpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeXkgPSB5IC0gTWF0aC5hYnMoZS5jbGllbnRZKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3QgPSBNYXRoLnNxcnQoTWF0aC5wb3coeHgsIDIpICsgTWF0aC5wb3coeXksIDIpKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChkaXN0ID4gdGhpcy5fbWF4RGlzdGFuY2UpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBvZih0cnVlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9mKGZhbHNlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5fJHVuc3Vic2NyaWJlKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXIodiA9PiAhIXYpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgXSksXHJcbiAgICAgICAgICAgICAgICAgICAgKSxcclxuICAgICAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5fJHVuc3Vic2NyaWJlKSxcclxuICAgICAgICAgICAgICAgICAgICB0YXAoZSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm9uVmlydHVhbENsaWNrLmVtaXQoZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICkuc3Vic2NyaWJlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMuXyR1bnN1YnNjcmliZSkge1xyXG4gICAgICAgICAgICB0aGlzLl8kdW5zdWJzY3JpYmUubmV4dCgpO1xyXG4gICAgICAgICAgICB0aGlzLl8kdW5zdWJzY3JpYmUuY29tcGxldGUoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
86
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlydHVhbC1jbGljay5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy12aXJ0dWFsLWxpc3Qvc3JjL2xpYi9kaXJlY3RpdmVzL3ZpcnR1YWwtY2xpY2svdmlydHVhbC1jbGljay5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQWEsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RHLE9BQU8sRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNwRixPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDckUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sYUFBYSxDQUFDOztBQUVyRDs7Ozs7OztHQU9HO0FBS0gsTUFBTSxPQUFPLHFCQUFxQjtJQUNwQixhQUFhLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQUV0QyxhQUFhLEdBQUcsSUFBSSxlQUFlLENBQWdCLElBQUksQ0FBQyxDQUFDO0lBQ3ZELFlBQVksR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBRW5ELFlBQVksR0FBa0IsSUFBSSxDQUFDO0lBRTNDLElBQ0ksV0FBVyxDQUFDLENBQWtCO1FBQzlCLE1BQU0sS0FBSyxHQUFHLENBQUMsQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQ2pFLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO1FBQzFCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFHRCxjQUFjLEdBQUcsSUFBSSxZQUFZLEVBQTZCLENBQUM7SUFHL0QsbUJBQW1CLEdBQUcsSUFBSSxZQUFZLEVBQTZCLENBQUM7SUFHcEUsb0JBQW9CLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztJQUV4QyxRQUFRLEdBQUcsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFFeEMsV0FBVyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUV6QztRQUNJLElBQUksV0FBVyxHQUFHLElBQUksQ0FBQyxZQUFZLElBQUksc0JBQXNCLENBQUM7UUFDOUQsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUNqRSxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxFQUM3QixHQUFHLENBQUMsQ0FBQyxDQUFDLGFBQWEsRUFBRSxRQUFRLENBQUMsRUFBRSxFQUFFO1lBQzlCLFdBQVcsR0FBRyxRQUFRLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQztRQUMvRCxDQUFDLENBQUMsQ0FDTCxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBRWQsTUFBTSxlQUFlLEdBQUcsU0FBUyxDQUFlLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxFQUFFLGFBQWEsQ0FBQyxFQUMxRixjQUFjLEdBQUcsSUFBSSxDQUFDO1lBQ2xCLFNBQVMsQ0FBQyxNQUFNLEVBQUUsV0FBVyxDQUFDLENBQUMsSUFBSSxDQUMvQixTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUNoQztZQUNELFNBQVMsQ0FBZSxNQUFNLEVBQUUsY0FBYyxDQUFDLENBQUMsSUFBSSxDQUNoRCxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUNoQztTQUNKLENBQUMsRUFDRixlQUFlLEdBQUcsU0FBUyxDQUFlLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxFQUFFLFdBQVcsRUFBRSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBRS9HLGVBQWUsQ0FBQyxJQUFJLENBQ2hCLFNBQVMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQzdCLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUNWLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxFQUN6QixDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDNUIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNqQyxPQUFPLGVBQWUsQ0FBQyxJQUFJLENBQ3ZCLFNBQVMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQzdCLFNBQVMsQ0FDTCxJQUFJLENBQUM7Z0JBQ0QsY0FBYyxDQUFDLElBQUksQ0FDZixTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxFQUM3QixHQUFHLENBQUMsR0FBRyxFQUFFO29CQUNMLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDckMsQ0FBQyxDQUFDLENBQ0w7Z0JBQ0QsU0FBUyxDQUFlLE1BQU0sRUFBRSxhQUFhLENBQUMsQ0FBQyxJQUFJLENBQy9DLFNBQVMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQzdCLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRTtvQkFDVixNQUFNLEVBQUUsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEVBQzlCLEVBQUUsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEVBQzVCLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBRXhELElBQUksSUFBSSxHQUFHLFdBQVcsRUFBRSxDQUFDO3dCQUNyQixJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxFQUFFLENBQUM7d0JBQ2pDLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUNwQixDQUFDO29CQUVELE9BQU8sRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUNyQixDQUFDLENBQUMsRUFDRixNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQ25CO2FBQ0osQ0FBQyxDQUNMLEVBQ0QsU0FBUyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsRUFDN0IsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFO2dCQUNKLElBQUksQ0FBQyxFQUFFLENBQUM7b0JBQ0osSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hDLENBQUM7WUFDTCxDQUFDLENBQUMsQ0FDTCxDQUFDO1FBQ04sQ0FBQyxDQUFDLENBQ0wsQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNsQixDQUFDO0lBRUQsV0FBVztRQUNQLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ3JCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDMUIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNsQyxDQUFDO0lBQ0wsQ0FBQzt3R0FsR1EscUJBQXFCOzRGQUFyQixxQkFBcUI7OzRGQUFyQixxQkFBcUI7a0JBSmpDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsVUFBVSxFQUFFLEtBQUs7aUJBQ3BCO3dEQVVPLFdBQVc7c0JBRGQsS0FBSzt1QkFBQyxrQkFBa0I7Z0JBUXpCLGNBQWM7c0JBRGIsTUFBTTtnQkFJUCxtQkFBbUI7c0JBRGxCLE1BQU07Z0JBSVAsb0JBQW9CO3NCQURuQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBpbmplY3QsIElucHV0LCBPdXRwdXQsIE9uRGVzdHJveSwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFN1YmplY3QsIEJlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgZnJvbUV2ZW50LCBvZiwgcmFjZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBmaWx0ZXIsIHN3aXRjaE1hcCwgdGFrZVVudGlsLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IE5nVmlydHVhbExpc3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vbmctdmlydHVhbC1saXN0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBERUZBVUxUX0NMSUNLX0RJU1RBTkNFIH0gZnJvbSAnLi4vLi4vY29uc3QnO1xyXG5cclxuLyoqXHJcbiAqIFZpcnR1YWxDbGlja0RpcmVjdGl2ZVxyXG4gKiBNYXhpbXVtIHBlcmZvcm1hbmNlIGZvciBleHRyZW1lbHkgbGFyZ2UgbGlzdHMuXHJcbiAqIEl0IGlzIGJhc2VkIG9uIGFsZ29yaXRobXMgZm9yIHZpcnR1YWxpemF0aW9uIG9mIHNjcmVlbiBvYmplY3RzLlxyXG4gKiBAbGluayBodHRwczovL2dpdGh1Yi5jb20vRGpvbm55WC9uZy12aXJ0dWFsLWxpc3QvYmxvYi8xOC54L3Byb2plY3RzL25nLXZpcnR1YWwtbGlzdC9zcmMvbGliL2RpcmVjdGl2ZXMvaXRlbS1jbGljay9pdGVtLWNsaWNrLmRpcmVjdGl2ZS50c1xyXG4gKiBAYXV0aG9yIEV2Z2VuaWkgQWxleGFuZHJvdmljaCBHcmViZW5uaWtvdlxyXG4gKiBAZW1haWwgZGpvbm55eEBnbWFpbC5jb21cclxuICovXHJcbkBEaXJlY3RpdmUoe1xyXG4gICAgc2VsZWN0b3I6ICdbdmlydHVhbENsaWNrXScsXHJcbiAgICBzdGFuZGFsb25lOiBmYWxzZSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFZpcnR1YWxDbGlja0RpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XHJcbiAgICBwcm90ZWN0ZWQgXyR1bnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcblxyXG4gICAgcHJpdmF0ZSBfJG1heERpc3RhbmNlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXIgfCBudWxsPihudWxsKTtcclxuICAgIHByb3RlY3RlZCAkbWF4RGlzdGFuY2UgPSB0aGlzLl8kbWF4RGlzdGFuY2UuYXNPYnNlcnZhYmxlKCk7XHJcblxyXG4gICAgcHJpdmF0ZSBfbWF4RGlzdGFuY2U6IG51bWJlciB8IG51bGwgPSBudWxsO1xyXG5cclxuICAgIEBJbnB1dCgnbWF4Q2xpY2tEaXN0YW5jZScpXHJcbiAgICBzZXQgbWF4RGlzdGFuY2UodjogbnVtYmVyIHwgc3RyaW5nKSB7XHJcbiAgICAgICAgY29uc3QgdmFsdWUgPSAodiAhPT0gbnVsbCB8fCB2ICE9PSB1bmRlZmluZWQpID8gTnVtYmVyKHYpIDogbnVsbDtcclxuICAgICAgICB0aGlzLl9tYXhEaXN0YW5jZSA9IHZhbHVlO1xyXG4gICAgICAgIHRoaXMuXyRtYXhEaXN0YW5jZS5uZXh0KHZhbHVlKTtcclxuICAgIH1cclxuXHJcbiAgICBAT3V0cHV0KClcclxuICAgIG9uVmlydHVhbENsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxQb2ludGVyRXZlbnQgfCBUb3VjaEV2ZW50PigpO1xyXG5cclxuICAgIEBPdXRwdXQoKVxyXG4gICAgb25WaXJ0dWFsQ2xpY2tQcmVzcyA9IG5ldyBFdmVudEVtaXR0ZXI8UG9pbnRlckV2ZW50IHwgVG91Y2hFdmVudD4oKTtcclxuXHJcbiAgICBAT3V0cHV0KClcclxuICAgIG9uVmlydHVhbENsaWNrQ2FuY2VsID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICAgIHByaXZhdGUgX3NlcnZpY2UgPSBpbmplY3QoTmdWaXJ0dWFsTGlzdFNlcnZpY2UpO1xyXG5cclxuICAgIHByaXZhdGUgX2VsZW1lbnRSZWYgPSBpbmplY3QoRWxlbWVudFJlZik7XHJcblxyXG4gICAgY29uc3RydWN0b3IoKSB7XHJcbiAgICAgICAgbGV0IG1heERpc3RhbmNlID0gdGhpcy5fbWF4RGlzdGFuY2UgPz8gREVGQVVMVF9DTElDS19ESVNUQU5DRTtcclxuICAgICAgICBjb21iaW5lTGF0ZXN0KFt0aGlzLl9zZXJ2aWNlLiRjbGlja0Rpc3RhbmNlLCB0aGlzLiRtYXhEaXN0YW5jZV0pLnBpcGUoXHJcbiAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl8kdW5zdWJzY3JpYmUpLFxyXG4gICAgICAgICAgICB0YXAoKFtjbGlja0Rpc3RhbmNlLCBkaXN0YW5jZV0pID0+IHtcclxuICAgICAgICAgICAgICAgIG1heERpc3RhbmNlID0gZGlzdGFuY2UgPT09IG51bGwgPyBjbGlja0Rpc3RhbmNlIDogZGlzdGFuY2U7XHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICkuc3Vic2NyaWJlKCk7XHJcblxyXG4gICAgICAgIGNvbnN0ICRwb2ludGVyUHJlc3NlZCA9IGZyb21FdmVudDxQb2ludGVyRXZlbnQ+KHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ3BvaW50ZXJkb3duJyksXHJcbiAgICAgICAgICAgICRwb2ludGVyQ2FuY2VsID0gcmFjZShbXHJcbiAgICAgICAgICAgICAgICBmcm9tRXZlbnQod2luZG93LCAncG9pbnRlcnVwJykucGlwZShcclxuICAgICAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5fJHVuc3Vic2NyaWJlKSxcclxuICAgICAgICAgICAgICAgICksXHJcbiAgICAgICAgICAgICAgICBmcm9tRXZlbnQ8UG9pbnRlckV2ZW50Pih3aW5kb3csICdwb2ludGVybGVhdmUnKS5waXBlKFxyXG4gICAgICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl8kdW5zdWJzY3JpYmUpLFxyXG4gICAgICAgICAgICAgICAgKSxcclxuICAgICAgICAgICAgXSksXHJcbiAgICAgICAgICAgICRwb2ludGVyUmVsZWFzZSA9IGZyb21FdmVudDxQb2ludGVyRXZlbnQ+KHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgJ3BvaW50ZXJ1cCcsIHsgcGFzc2l2ZTogZmFsc2UgfSk7XHJcblxyXG4gICAgICAgICRwb2ludGVyUHJlc3NlZC5waXBlKFxyXG4gICAgICAgICAgICB0YWtlVW50aWwodGhpcy5fJHVuc3Vic2NyaWJlKSxcclxuICAgICAgICAgICAgc3dpdGNoTWFwKGUgPT4ge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgeCA9IE1hdGguYWJzKGUuY2xpZW50WCksXHJcbiAgICAgICAgICAgICAgICAgICAgeSA9IE1hdGguYWJzKGUuY2xpZW50WSk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLm9uVmlydHVhbENsaWNrUHJlc3MuZW1pdChlKTtcclxuICAgICAgICAgICAgICAgIHJldHVybiAkcG9pbnRlclJlbGVhc2UucGlwZShcclxuICAgICAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5fJHVuc3Vic2NyaWJlKSxcclxuICAgICAgICAgICAgICAgICAgICB0YWtlVW50aWwoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJhY2UoW1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJHBvaW50ZXJDYW5jZWwucGlwZShcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5fJHVuc3Vic2NyaWJlKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YXAoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm9uVmlydHVhbENsaWNrQ2FuY2VsLmVtaXQoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmcm9tRXZlbnQ8UG9pbnRlckV2ZW50Pih3aW5kb3csICdwb2ludGVybW92ZScpLnBpcGUoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuXyR1bnN1YnNjcmliZSksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3dpdGNoTWFwKGUgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB4eCA9IHggLSBNYXRoLmFicyhlLmNsaWVudFgpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeXkgPSB5IC0gTWF0aC5hYnMoZS5jbGllbnRZKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3QgPSBNYXRoLnNxcnQoTWF0aC5wb3coeHgsIDIpICsgTWF0aC5wb3coeXksIDIpKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChkaXN0ID4gbWF4RGlzdGFuY2UpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMub25WaXJ0dWFsQ2xpY2tDYW5jZWwuZW1pdCgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9mKHRydWUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gb2YoZmFsc2UpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlcih2ID0+ICEhdiksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBdKSxcclxuICAgICAgICAgICAgICAgICAgICApLFxyXG4gICAgICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl8kdW5zdWJzY3JpYmUpLFxyXG4gICAgICAgICAgICAgICAgICAgIHRhcChlID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGUpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMub25WaXJ0dWFsQ2xpY2suZW1pdChlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgfSksXHJcbiAgICAgICAgKS5zdWJzY3JpYmUoKTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5fJHVuc3Vic2NyaWJlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuXyR1bnN1YnNjcmliZS5uZXh0KCk7XHJcbiAgICAgICAgICAgIHRoaXMuXyR1bnN1YnNjcmliZS5jb21wbGV0ZSgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzcGxheS1vYmplY3QtY29uZmlnLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctdmlydHVhbC1saXN0L3NyYy9saWIvbW9kZWxzL2Rpc3BsYXktb2JqZWN0LWNvbmZpZy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVJlbmRlclZpcnR1YWxMaXN0SXRlbUNvbmZpZyB9IGZyb20gXCIuL3JlbmRlci1pdGVtLWNvbmZpZy5tb2RlbFwiO1xyXG5cclxuLyoqXHJcbiAqIERpc3BsYXkgb2JqZWN0IGNvbmZpZ3VyYXRpb24uXHJcbiAqIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9Eam9ubnlYL25nLXZpcnR1YWwtbGlzdC9ibG9iLzE4LngvcHJvamVjdHMvbmctdmlydHVhbC1saXN0L3NyYy9saWIvbW9kZWxzL2Rpc3BsYXktb2JqZWN0LWNvbmZpZy5tb2RlbC50c1xyXG4gKiBAYXV0aG9yIEV2Z2VuaWkgQWxleGFuZHJvdmljaCBHcmViZW5uaWtvdlxyXG4gKiBAZW1haWwgZGpvbm55eEBnbWFpbC5jb21cclxuICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgSURpc3BsYXlPYmplY3RDb25maWcgZXh0ZW5kcyBJUmVuZGVyVmlydHVhbExpc3RJdGVtQ29uZmlnIHtcclxuICAvKipcclxuICAgKiBEZXRlcm1pbmVzIHdoZXRoZXIgdGhlIGVsZW1lbnQgaGFzIGZvY3VzZWQgb3Igbm90LlxyXG4gICAqL1xyXG4gIGZvY3VzZWQ6IGJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogRGV0ZXJtaW5lcyB3aGV0aGVyIHRoZSBlbGVtZW50IGlzIHNlbGVjdGVkIG9yIG5vdC5cclxuICAgKi9cclxuICBzZWxlY3RlZDogYm9vbGVhbjtcclxuICAvKipcclxuICAgKiBEZXRlcm1pbmVzIHdoZXRoZXIgdGhlIGVsZW1lbnQgaXMgY29sbGFwc2VkIG9yIG5vdC5cclxuICAgKi9cclxuICBjb2xsYXBzZWQ6IGJvb2xlYW47XHJcbiAgLyoqXHJcbiAgICogVHJ1ZSBpZiBzY3JvbGwgY2FwdHVyZSBvY2N1cnMuXHJcbiAgICovXHJcbiAgZ3JhYmJpbmc6IGJvb2xlYW47XHJcbn0iXX0=
|