@coreui/angular-pro 4.3.2 → 4.3.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/esm2020/lib/sidebar/sidebar/sidebar.component.mjs +14 -7
- package/esm2020/lib/smart-table/smart-table/smart-table.component.mjs +8 -3
- package/esm2020/lib/smart-table/smart-table-column-filter/smart-table-column-filter.component.mjs +30 -0
- package/esm2020/lib/smart-table/smart-table-filter/filter-input.directive.mjs +78 -0
- package/esm2020/lib/smart-table/smart-table-filter/smart-table-filter.component.mjs +17 -67
- package/esm2020/lib/smart-table/smart-table-head/smart-table-head.component.mjs +14 -9
- package/esm2020/lib/smart-table/smart-table.module.mjs +8 -2
- package/esm2020/lib/toast/toaster/toaster.component.mjs +1 -1
- package/fesm2015/coreui-angular-pro.mjs +134 -68
- package/fesm2015/coreui-angular-pro.mjs.map +1 -1
- package/fesm2020/coreui-angular-pro.mjs +133 -66
- package/fesm2020/coreui-angular-pro.mjs.map +1 -1
- package/lib/smart-table/smart-table/smart-table.component.d.ts +5 -1
- package/lib/smart-table/smart-table-column-filter/smart-table-column-filter.component.d.ts +11 -0
- package/lib/smart-table/smart-table-filter/filter-input.directive.d.ts +24 -0
- package/lib/smart-table/smart-table-filter/smart-table-filter.component.d.ts +8 -13
- package/lib/smart-table/smart-table-head/smart-table-head.component.d.ts +6 -1
- package/lib/smart-table/smart-table.module.d.ts +13 -11
- package/package.json +2 -2
package/esm2020/lib/smart-table/smart-table-column-filter/smart-table-column-filter.component.mjs
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
var _SmartTableColumnFilterComponent_filterInputDirective;
|
|
2
|
+
import { __classPrivateFieldGet } from "tslib";
|
|
3
|
+
import { ChangeDetectionStrategy, Component, inject, Input } from '@angular/core';
|
|
4
|
+
import { FilterInputDirective } from '../smart-table-filter/filter-input.directive';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "../../form/form-control/form-control.directive";
|
|
7
|
+
import * as i2 from "@angular/common";
|
|
8
|
+
export class SmartTableColumnFilterComponent {
|
|
9
|
+
constructor() {
|
|
10
|
+
_SmartTableColumnFilterComponent_filterInputDirective.set(this, inject(FilterInputDirective));
|
|
11
|
+
this.value$ = __classPrivateFieldGet(this, _SmartTableColumnFilterComponent_filterInputDirective, "f").value$;
|
|
12
|
+
this.sizing = 'sm';
|
|
13
|
+
}
|
|
14
|
+
set column(value) {
|
|
15
|
+
__classPrivateFieldGet(this, _SmartTableColumnFilterComponent_filterInputDirective, "f").emitObject = { ...__classPrivateFieldGet(this, _SmartTableColumnFilterComponent_filterInputDirective, "f").emitObject, column: value };
|
|
16
|
+
}
|
|
17
|
+
;
|
|
18
|
+
}
|
|
19
|
+
_SmartTableColumnFilterComponent_filterInputDirective = new WeakMap();
|
|
20
|
+
SmartTableColumnFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: SmartTableColumnFilterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
21
|
+
SmartTableColumnFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: SmartTableColumnFilterComponent, selector: "c-smart-table-column-filter", inputs: { column: "column", sizing: "sizing" }, ngImport: i0, template: "<input\n [sizing]=\"sizing\"\n [value]=\"value$ | async\"\n cFormControl\n/>\n", dependencies: [{ kind: "directive", type: i1.FormControlDirective, selector: "input[cFormControl], textarea[cFormControl]", inputs: ["sizing", "valid", "type", "plaintext"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
22
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: SmartTableColumnFilterComponent, decorators: [{
|
|
23
|
+
type: Component,
|
|
24
|
+
args: [{ selector: 'c-smart-table-column-filter', changeDetection: ChangeDetectionStrategy.OnPush, template: "<input\n [sizing]=\"sizing\"\n [value]=\"value$ | async\"\n cFormControl\n/>\n" }]
|
|
25
|
+
}], ctorParameters: function () { return []; }, propDecorators: { column: [{
|
|
26
|
+
type: Input
|
|
27
|
+
}], sizing: [{
|
|
28
|
+
type: Input
|
|
29
|
+
}] } });
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtdGFibGUtY29sdW1uLWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3NtYXJ0LXRhYmxlL3NtYXJ0LXRhYmxlLWNvbHVtbi1maWx0ZXIvc21hcnQtdGFibGUtY29sdW1uLWZpbHRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3NtYXJ0LXRhYmxlL3NtYXJ0LXRhYmxlLWNvbHVtbi1maWx0ZXIvc21hcnQtdGFibGUtY29sdW1uLWZpbHRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVsRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQzs7OztBQU9wRixNQUFNLE9BQU8sK0JBQStCO0lBRTFDO1FBRUEsZ0VBQWlDLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxFQUFDO1FBQ3JELFdBQU0sR0FBRyx1QkFBQSxJQUFJLDZEQUFzQixDQUFDLE1BQU0sQ0FBQztRQU8zQyxXQUFNLEdBQWlCLElBQUksQ0FBQztJQVZ0QixDQUFDO0lBS2hCLElBQ0ksTUFBTSxDQUFDLEtBQXVCO1FBQ2hDLHVCQUFBLElBQUksNkRBQXNCLENBQUMsVUFBVSxHQUFHLEVBQUUsR0FBRyx1QkFBQSxJQUFJLDZEQUFzQixDQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLENBQUM7SUFDdEcsQ0FBQztJQUFBLENBQUM7Ozs0SEFWUywrQkFBK0I7Z0hBQS9CLCtCQUErQixtSENUNUMsbUZBS0E7MkZESWEsK0JBQStCO2tCQUwzQyxTQUFTOytCQUNFLDZCQUE2QixtQkFFdEIsdUJBQXVCLENBQUMsTUFBTTswRUFVM0MsTUFBTTtzQkFEVCxLQUFLO2dCQUtHLE1BQU07c0JBQWQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGluamVjdCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IElDb2x1bW4gfSBmcm9tICcuLi9zbWFydC10YWJsZS50eXBlJztcbmltcG9ydCB7IEZpbHRlcklucHV0RGlyZWN0aXZlIH0gZnJvbSAnLi4vc21hcnQtdGFibGUtZmlsdGVyL2ZpbHRlci1pbnB1dC5kaXJlY3RpdmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjLXNtYXJ0LXRhYmxlLWNvbHVtbi1maWx0ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vc21hcnQtdGFibGUtY29sdW1uLWZpbHRlci5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFNtYXJ0VGFibGVDb2x1bW5GaWx0ZXJDb21wb25lbnQge1xuXG4gIGNvbnN0cnVjdG9yKCkge31cblxuICByZWFkb25seSAjZmlsdGVySW5wdXREaXJlY3RpdmUgPSBpbmplY3QoRmlsdGVySW5wdXREaXJlY3RpdmUpO1xuICByZWFkb25seSB2YWx1ZSQgPSB0aGlzLiNmaWx0ZXJJbnB1dERpcmVjdGl2ZS52YWx1ZSQ7XG5cbiAgQElucHV0KClcbiAgc2V0IGNvbHVtbih2YWx1ZTogc3RyaW5nIHwgSUNvbHVtbikge1xuICAgIHRoaXMuI2ZpbHRlcklucHV0RGlyZWN0aXZlLmVtaXRPYmplY3QgPSB7IC4uLnRoaXMuI2ZpbHRlcklucHV0RGlyZWN0aXZlLmVtaXRPYmplY3QsIGNvbHVtbjogdmFsdWUgfTtcbiAgfTtcblxuICBASW5wdXQoKSBzaXppbmc/OiAnc20nIHwgJ2xnJyA9ICdzbSc7XG5cbn1cbiIsIjxpbnB1dFxuICBbc2l6aW5nXT1cInNpemluZ1wiXG4gIFt2YWx1ZV09XCJ2YWx1ZSQgfCBhc3luY1wiXG4gIGNGb3JtQ29udHJvbFxuLz5cbiJdfQ==
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
var _FilterInputDirective_value, _FilterInputDirective_valueSubscription, _FilterInputDirective_inputSubscription, _FilterInputDirective_destroy$;
|
|
2
|
+
import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
|
|
3
|
+
import { Directive, EventEmitter, Input, Output } from '@angular/core';
|
|
4
|
+
import { BehaviorSubject, debounceTime, distinctUntilChanged, fromEvent, map, Subject, takeUntil } from 'rxjs';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class FilterInputDirective {
|
|
7
|
+
constructor(elementRef) {
|
|
8
|
+
this.elementRef = elementRef;
|
|
9
|
+
_FilterInputDirective_value.set(this, '');
|
|
10
|
+
_FilterInputDirective_valueSubscription.set(this, void 0);
|
|
11
|
+
_FilterInputDirective_inputSubscription.set(this, void 0);
|
|
12
|
+
this.value$ = new BehaviorSubject('');
|
|
13
|
+
_FilterInputDirective_destroy$.set(this, new Subject());
|
|
14
|
+
this.emitObject = {
|
|
15
|
+
value: '',
|
|
16
|
+
type: '',
|
|
17
|
+
column: ''
|
|
18
|
+
};
|
|
19
|
+
this.delay = 300;
|
|
20
|
+
this.onEvent = 'input';
|
|
21
|
+
this.valueChange = new EventEmitter();
|
|
22
|
+
}
|
|
23
|
+
set value(value) {
|
|
24
|
+
this.value$.next(value);
|
|
25
|
+
}
|
|
26
|
+
ngAfterViewInit() {
|
|
27
|
+
this.setSubscription();
|
|
28
|
+
}
|
|
29
|
+
ngOnDestroy() {
|
|
30
|
+
this.setSubscription(false);
|
|
31
|
+
}
|
|
32
|
+
setSubscription(subscribe = !__classPrivateFieldGet(this, _FilterInputDirective_valueSubscription, "f")) {
|
|
33
|
+
if (subscribe) {
|
|
34
|
+
__classPrivateFieldSet(this, _FilterInputDirective_valueSubscription, this.value$
|
|
35
|
+
.pipe(distinctUntilChanged(), takeUntil(__classPrivateFieldGet(this, _FilterInputDirective_destroy$, "f")))
|
|
36
|
+
.subscribe(value => {
|
|
37
|
+
if (__classPrivateFieldGet(this, _FilterInputDirective_value, "f") !== value) {
|
|
38
|
+
__classPrivateFieldSet(this, _FilterInputDirective_value, value, "f");
|
|
39
|
+
this.emitObject = { ...this.emitObject, value: value, type: this.onEvent };
|
|
40
|
+
this.valueChange.emit({ ...this.emitObject });
|
|
41
|
+
}
|
|
42
|
+
}), "f");
|
|
43
|
+
const dueTime = this.onEvent === 'change' ? 0 : this.delay;
|
|
44
|
+
__classPrivateFieldSet(this, _FilterInputDirective_inputSubscription, fromEvent(this.elementRef.nativeElement, this.onEvent)
|
|
45
|
+
.pipe(map(event => {
|
|
46
|
+
return event.target.value;
|
|
47
|
+
}), debounceTime(dueTime), takeUntil(__classPrivateFieldGet(this, _FilterInputDirective_destroy$, "f")))
|
|
48
|
+
.subscribe((value) => {
|
|
49
|
+
if (value !== __classPrivateFieldGet(this, _FilterInputDirective_value, "f")) {
|
|
50
|
+
this.value$.next(value);
|
|
51
|
+
}
|
|
52
|
+
}), "f");
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
__classPrivateFieldGet(this, _FilterInputDirective_destroy$, "f").next(true);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
_FilterInputDirective_value = new WeakMap(), _FilterInputDirective_valueSubscription = new WeakMap(), _FilterInputDirective_inputSubscription = new WeakMap(), _FilterInputDirective_destroy$ = new WeakMap();
|
|
60
|
+
FilterInputDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: FilterInputDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
61
|
+
FilterInputDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: FilterInputDirective, selector: "[cFilterInput]", inputs: { delay: "delay", onEvent: "onEvent", value: "value" }, outputs: { valueChange: "valueChange" }, exportAs: ["cFilterInput"], ngImport: i0 });
|
|
62
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: FilterInputDirective, decorators: [{
|
|
63
|
+
type: Directive,
|
|
64
|
+
args: [{
|
|
65
|
+
selector: '[cFilterInput]',
|
|
66
|
+
exportAs: 'cFilterInput'
|
|
67
|
+
// standalone: true
|
|
68
|
+
}]
|
|
69
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { delay: [{
|
|
70
|
+
type: Input
|
|
71
|
+
}], onEvent: [{
|
|
72
|
+
type: Input
|
|
73
|
+
}], value: [{
|
|
74
|
+
type: Input
|
|
75
|
+
}], valueChange: [{
|
|
76
|
+
type: Output
|
|
77
|
+
}] } });
|
|
78
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWlucHV0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmV1aS1hbmd1bGFyL3NyYy9saWIvc21hcnQtdGFibGUvc21hcnQtdGFibGUtZmlsdGVyL2ZpbHRlci1pbnB1dC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBYyxZQUFZLEVBQUUsS0FBSyxFQUFhLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RyxPQUFPLEVBQ0wsZUFBZSxFQUNmLFlBQVksRUFDWixvQkFBb0IsRUFDcEIsU0FBUyxFQUNULEdBQUcsRUFDSCxPQUFPLEVBRVAsU0FBUyxFQUNWLE1BQU0sTUFBTSxDQUFDOztBQVFkLE1BQU0sT0FBTyxvQkFBb0I7SUFFL0IsWUFDbUIsVUFBc0I7UUFBdEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUd6QyxzQ0FBUyxFQUFFLEVBQUM7UUFDWiwwREFBa0M7UUFDbEMsMERBQWtDO1FBQ3pCLFdBQU0sR0FBRyxJQUFJLGVBQWUsQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUNsRCx5Q0FBcUIsSUFBSSxPQUFPLEVBQVcsRUFBQztRQUNyQyxlQUFVLEdBQWtFO1lBQ2pGLEtBQUssRUFBRSxFQUFFO1lBQ1QsSUFBSSxFQUFFLEVBQUU7WUFDUixNQUFNLEVBQUUsRUFBRTtTQUNYLENBQUM7UUFFTyxVQUFLLEdBQVcsR0FBRyxDQUFDO1FBQ3BCLFlBQU8sR0FBdUIsT0FBTyxDQUFDO1FBTzVCLGdCQUFXLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7SUFyQnhFLENBQUM7SUFnQkwsSUFDSSxLQUFLLENBQUMsS0FBYTtRQUNyQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBSUQsZUFBZTtRQUNiLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVPLGVBQWUsQ0FBQyxZQUFxQixDQUFDLHVCQUFBLElBQUksK0NBQW1CO1FBQ25FLElBQUksU0FBUyxFQUFFO1lBRWIsdUJBQUEsSUFBSSwyQ0FBc0IsSUFBSSxDQUFDLE1BQU07aUJBQ2xDLElBQUksQ0FDSCxvQkFBb0IsRUFBRSxFQUN0QixTQUFTLENBQUMsdUJBQUEsSUFBSSxzQ0FBVSxDQUFDLENBQzFCO2lCQUNBLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDakIsSUFBSSx1QkFBQSxJQUFJLG1DQUFPLEtBQUssS0FBSyxFQUFFO29CQUN6Qix1QkFBQSxJQUFJLCtCQUFVLEtBQUssTUFBQSxDQUFDO29CQUNwQixJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztvQkFDM0UsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO2lCQUMvQztZQUNILENBQUMsQ0FBQyxNQUFBLENBQUM7WUFFTCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO1lBRTNELHVCQUFBLElBQUksMkNBQXNCLFNBQVMsQ0FBUSxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDO2lCQUNwRixJQUFJLENBQ0gsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUNWLE9BQVEsS0FBSyxDQUFDLE1BQTJCLENBQUMsS0FBSyxDQUFDO1lBQ2xELENBQUMsQ0FBQyxFQUNGLFlBQVksQ0FBQyxPQUFPLENBQUMsRUFDckIsU0FBUyxDQUFDLHVCQUFBLElBQUksc0NBQVUsQ0FBQyxDQUMxQjtpQkFDQSxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtnQkFDakIsSUFBSSxLQUFLLEtBQUssdUJBQUEsSUFBSSxtQ0FBTyxFQUFFO29CQUN6QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztpQkFDekI7WUFDSCxDQUFDLENBQ0YsTUFBQSxDQUFDO1NBQ0w7YUFBTTtZQUNMLHVCQUFBLElBQUksc0NBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDM0I7SUFDSCxDQUFDOzs7aUhBdEVVLG9CQUFvQjtxR0FBcEIsb0JBQW9COzJGQUFwQixvQkFBb0I7a0JBTGhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsUUFBUSxFQUFFLGNBQWM7b0JBQ3hCLG1CQUFtQjtpQkFDcEI7aUdBa0JVLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBR0YsS0FBSztzQkFEUixLQUFLO2dCQUthLFdBQVc7c0JBQTdCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uRGVzdHJveSwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBCZWhhdmlvclN1YmplY3QsXG4gIGRlYm91bmNlVGltZSxcbiAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gIGZyb21FdmVudCxcbiAgbWFwLFxuICBTdWJqZWN0LFxuICBTdWJzY3JpcHRpb24sXG4gIHRha2VVbnRpbFxufSBmcm9tICdyeGpzJztcbmltcG9ydCB7IElDb2x1bW4gfSBmcm9tICcuLi9zbWFydC10YWJsZS50eXBlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2NGaWx0ZXJJbnB1dF0nLFxuICBleHBvcnRBczogJ2NGaWx0ZXJJbnB1dCdcbiAgLy8gc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBGaWx0ZXJJbnB1dERpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmOiBFbGVtZW50UmVmXG4gICkgeyB9XG5cbiAgI3ZhbHVlID0gJyc7XG4gICN2YWx1ZVN1YnNjcmlwdGlvbiE6IFN1YnNjcmlwdGlvbjtcbiAgI2lucHV0U3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uO1xuICByZWFkb25seSB2YWx1ZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJycpO1xuICByZWFkb25seSAjZGVzdHJveSQgPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xuICBwdWJsaWMgZW1pdE9iamVjdDogeyB2YWx1ZTogc3RyaW5nLCB0eXBlPzogc3RyaW5nLCBjb2x1bW4/OiAoc3RyaW5nIHwgSUNvbHVtbikgfSA9IHtcbiAgICB2YWx1ZTogJycsXG4gICAgdHlwZTogJycsXG4gICAgY29sdW1uOiAnJ1xuICB9O1xuXG4gIEBJbnB1dCgpIGRlbGF5OiBudW1iZXIgPSAzMDA7XG4gIEBJbnB1dCgpIG9uRXZlbnQ6ICdjaGFuZ2UnIHwgJ2lucHV0JyA9ICdpbnB1dCc7XG5cbiAgQElucHV0KClcbiAgc2V0IHZhbHVlKHZhbHVlOiBzdHJpbmcpIHtcbiAgICB0aGlzLnZhbHVlJC5uZXh0KHZhbHVlKTtcbiAgfVxuXG4gIEBPdXRwdXQoKSByZWFkb25seSB2YWx1ZUNoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zZXRTdWJzY3JpcHRpb24oKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuc2V0U3Vic2NyaXB0aW9uKGZhbHNlKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0U3Vic2NyaXB0aW9uKHN1YnNjcmliZTogYm9vbGVhbiA9ICF0aGlzLiN2YWx1ZVN1YnNjcmlwdGlvbikge1xuICAgIGlmIChzdWJzY3JpYmUpIHtcblxuICAgICAgdGhpcy4jdmFsdWVTdWJzY3JpcHRpb24gPSB0aGlzLnZhbHVlJFxuICAgICAgICAucGlwZShcbiAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgICAgIHRha2VVbnRpbCh0aGlzLiNkZXN0cm95JClcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKHZhbHVlID0+IHtcbiAgICAgICAgICBpZiAodGhpcy4jdmFsdWUgIT09IHZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLiN2YWx1ZSA9IHZhbHVlO1xuICAgICAgICAgICAgdGhpcy5lbWl0T2JqZWN0ID0geyAuLi50aGlzLmVtaXRPYmplY3QsIHZhbHVlOiB2YWx1ZSwgdHlwZTogdGhpcy5vbkV2ZW50IH07XG4gICAgICAgICAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQoeyAuLi50aGlzLmVtaXRPYmplY3QgfSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgY29uc3QgZHVlVGltZSA9IHRoaXMub25FdmVudCA9PT0gJ2NoYW5nZScgPyAwIDogdGhpcy5kZWxheTtcblxuICAgICAgdGhpcy4jaW5wdXRTdWJzY3JpcHRpb24gPSBmcm9tRXZlbnQ8RXZlbnQ+KHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCB0aGlzLm9uRXZlbnQpXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIG1hcChldmVudCA9PiB7XG4gICAgICAgICAgICByZXR1cm4gKGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KS52YWx1ZTtcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBkZWJvdW5jZVRpbWUoZHVlVGltZSksXG4gICAgICAgICAgdGFrZVVudGlsKHRoaXMuI2Rlc3Ryb3kkKVxuICAgICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XG4gICAgICAgICAgICBpZiAodmFsdWUgIT09IHRoaXMuI3ZhbHVlKSB7XG4gICAgICAgICAgICAgIHRoaXMudmFsdWUkLm5leHQodmFsdWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy4jZGVzdHJveSQubmV4dCh0cnVlKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,30 +1,17 @@
|
|
|
1
|
-
var
|
|
2
|
-
import { __classPrivateFieldGet
|
|
3
|
-
import { ChangeDetectionStrategy, Component,
|
|
4
|
-
import {
|
|
1
|
+
var _SmartTableFilterComponent_filterInputDirective;
|
|
2
|
+
import { __classPrivateFieldGet } from "tslib";
|
|
3
|
+
import { ChangeDetectionStrategy, Component, HostBinding, inject, Input } from '@angular/core';
|
|
4
|
+
import { FilterInputDirective } from './filter-input.directive';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
import * as i1 from "@angular/common";
|
|
7
7
|
import * as i2 from "../../form/form-control/form-control.directive";
|
|
8
8
|
import * as i3 from "../../form/form-label/form-label.directive";
|
|
9
9
|
export class SmartTableFilterComponent {
|
|
10
10
|
constructor() {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
_SmartTableFilterComponent_eventType.set(this, '');
|
|
14
|
-
_SmartTableFilterComponent_lazy.set(this, false);
|
|
15
|
-
_SmartTableFilterComponent_valueSubscription.set(this, void 0);
|
|
16
|
-
_SmartTableFilterComponent_inputSubscription.set(this, void 0);
|
|
17
|
-
this.value$ = new BehaviorSubject('');
|
|
11
|
+
_SmartTableFilterComponent_filterInputDirective.set(this, inject(FilterInputDirective));
|
|
12
|
+
this.value$ = __classPrivateFieldGet(this, _SmartTableFilterComponent_filterInputDirective, "f").value$;
|
|
18
13
|
this.filterLabel = 'Filter:';
|
|
19
14
|
this.filterPlaceholder = 'Filter';
|
|
20
|
-
this.valueChange = new EventEmitter();
|
|
21
|
-
}
|
|
22
|
-
set tableFilter(value) {
|
|
23
|
-
__classPrivateFieldSet(this, _SmartTableFilterComponent_lazy, (typeof value === 'object' && value.lazy) ? true : false, "f");
|
|
24
|
-
}
|
|
25
|
-
;
|
|
26
|
-
set value(value) {
|
|
27
|
-
this.value$.next(value);
|
|
28
15
|
}
|
|
29
16
|
get hostClasses() {
|
|
30
17
|
return {
|
|
@@ -32,65 +19,28 @@ export class SmartTableFilterComponent {
|
|
|
32
19
|
'mb-2': true
|
|
33
20
|
};
|
|
34
21
|
}
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
}
|
|
41
|
-
setSubscription(subscribe = !__classPrivateFieldGet(this, _SmartTableFilterComponent_valueSubscription, "f")) {
|
|
42
|
-
if (subscribe) {
|
|
43
|
-
__classPrivateFieldSet(this, _SmartTableFilterComponent_valueSubscription, this.value$
|
|
44
|
-
.pipe(distinctUntilChanged())
|
|
45
|
-
.subscribe(value => {
|
|
46
|
-
if (__classPrivateFieldGet(this, _SmartTableFilterComponent_value, "f") !== value) {
|
|
47
|
-
__classPrivateFieldSet(this, _SmartTableFilterComponent_value, value, "f");
|
|
48
|
-
this.valueChange.emit({ value, type: __classPrivateFieldGet(this, _SmartTableFilterComponent_eventType, "f") });
|
|
49
|
-
}
|
|
50
|
-
}), "f");
|
|
51
|
-
const eventName = __classPrivateFieldGet(this, _SmartTableFilterComponent_lazy, "f") ? 'change' : 'input';
|
|
52
|
-
let dueTime = __classPrivateFieldGet(this, _SmartTableFilterComponent_dueTime, "f");
|
|
53
|
-
__classPrivateFieldSet(this, _SmartTableFilterComponent_inputSubscription, fromEvent(this.filterInput.nativeElement, eventName)
|
|
54
|
-
.pipe(tap((event) => {
|
|
55
|
-
dueTime = __classPrivateFieldGet(this, _SmartTableFilterComponent_lazy, "f") ? 0 : __classPrivateFieldGet(this, _SmartTableFilterComponent_dueTime, "f");
|
|
56
|
-
__classPrivateFieldSet(this, _SmartTableFilterComponent_eventType, event.type ?? eventName, "f");
|
|
57
|
-
}), map(event => {
|
|
58
|
-
return event.target.value;
|
|
59
|
-
}), debounceTime(dueTime))
|
|
60
|
-
.subscribe((value) => {
|
|
61
|
-
if (value !== __classPrivateFieldGet(this, _SmartTableFilterComponent_value, "f")) {
|
|
62
|
-
this.value$.next(value);
|
|
63
|
-
}
|
|
64
|
-
}), "f");
|
|
65
|
-
}
|
|
66
|
-
else {
|
|
67
|
-
__classPrivateFieldGet(this, _SmartTableFilterComponent_inputSubscription, "f")?.unsubscribe();
|
|
68
|
-
this.value$.complete();
|
|
69
|
-
__classPrivateFieldGet(this, _SmartTableFilterComponent_valueSubscription, "f")?.unsubscribe();
|
|
70
|
-
}
|
|
22
|
+
get labelClasses() {
|
|
23
|
+
return {
|
|
24
|
+
'col-form-label': true,
|
|
25
|
+
[`col-form-label-${this.sizing}`]: !!this.sizing
|
|
26
|
+
};
|
|
71
27
|
}
|
|
28
|
+
;
|
|
72
29
|
}
|
|
73
|
-
|
|
30
|
+
_SmartTableFilterComponent_filterInputDirective = new WeakMap();
|
|
74
31
|
SmartTableFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: SmartTableFilterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
75
|
-
SmartTableFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: SmartTableFilterComponent, selector: "c-smart-table-filter", inputs: { filterLabel: "filterLabel", filterPlaceholder: "filterPlaceholder",
|
|
32
|
+
SmartTableFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: SmartTableFilterComponent, selector: "c-smart-table-filter", inputs: { filterLabel: "filterLabel", filterPlaceholder: "filterPlaceholder", sizing: "sizing" }, host: { properties: { "class": "this.hostClasses" } }, ngImport: i0, template: "<label *ngIf=\"!!filterLabel\" [ngClass]=\"labelClasses\" cLabel=\"col\" class=\"col-auto\">\n {{filterLabel}}\n</label>\n<div class=\"col-auto\">\n <input\n [placeholder]=\"filterPlaceholder\"\n [sizing]=\"sizing\"\n [value]=\"value$ | async\"\n cFormControl\n size=\"10\"\n />\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.FormControlDirective, selector: "input[cFormControl], textarea[cFormControl]", inputs: ["sizing", "valid", "type", "plaintext"] }, { kind: "directive", type: i3.FormLabelDirective, selector: "[cLabel]", inputs: ["cLabel", "sizing"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
76
33
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: SmartTableFilterComponent, decorators: [{
|
|
77
34
|
type: Component,
|
|
78
|
-
args: [{ selector: 'c-smart-table-filter', changeDetection: ChangeDetectionStrategy.OnPush, template: "<label *ngIf=\"!!filterLabel\" cLabel=\"col\" class=\"col-auto\"
|
|
35
|
+
args: [{ selector: 'c-smart-table-filter', changeDetection: ChangeDetectionStrategy.OnPush, template: "<label *ngIf=\"!!filterLabel\" [ngClass]=\"labelClasses\" cLabel=\"col\" class=\"col-auto\">\n {{filterLabel}}\n</label>\n<div class=\"col-auto\">\n <input\n [placeholder]=\"filterPlaceholder\"\n [sizing]=\"sizing\"\n [value]=\"value$ | async\"\n cFormControl\n size=\"10\"\n />\n</div>\n" }]
|
|
79
36
|
}], ctorParameters: function () { return []; }, propDecorators: { filterLabel: [{
|
|
80
37
|
type: Input
|
|
81
38
|
}], filterPlaceholder: [{
|
|
82
39
|
type: Input
|
|
83
|
-
}],
|
|
84
|
-
type: Input
|
|
85
|
-
}], value: [{
|
|
40
|
+
}], sizing: [{
|
|
86
41
|
type: Input
|
|
87
|
-
}], valueChange: [{
|
|
88
|
-
type: Output
|
|
89
|
-
}], filterInput: [{
|
|
90
|
-
type: ViewChild,
|
|
91
|
-
args: ['filterInput', { static: true }]
|
|
92
42
|
}], hostClasses: [{
|
|
93
43
|
type: HostBinding,
|
|
94
44
|
args: ['class']
|
|
95
45
|
}] } });
|
|
96
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtdGFibGUtZmlsdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmV1aS1hbmd1bGFyL3NyYy9saWIvc21hcnQtdGFibGUvc21hcnQtdGFibGUtZmlsdGVyL3NtYXJ0LXRhYmxlLWZpbHRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3NtYXJ0LXRhYmxlL3NtYXJ0LXRhYmxlLWZpbHRlci9zbWFydC10YWJsZS1maWx0ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9GLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7OztBQWNoRSxNQUFNLE9BQU8seUJBQXlCO0lBRXBDO1FBRUEsMERBQWlDLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxFQUFDO1FBQ3JELFdBQU0sR0FBRyx1QkFBQSxJQUFJLHVEQUFzQixDQUFDLE1BQU0sQ0FBQztRQUUzQyxnQkFBVyxHQUFXLFNBQVMsQ0FBQztRQUNoQyxzQkFBaUIsR0FBVyxRQUFRLENBQUM7SUFOL0IsQ0FBQztJQVNoQixJQUNJLFdBQVc7UUFDYixPQUFPO1lBQ0wsR0FBRyxFQUFFLElBQUk7WUFDVCxNQUFNLEVBQUUsSUFBSTtTQUNiLENBQUM7SUFDSixDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2QsT0FBTztZQUNMLGdCQUFnQixFQUFFLElBQUk7WUFDdEIsQ0FBQyxrQkFBa0IsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNO1NBQ2pELENBQUM7SUFDSixDQUFDO0lBQUEsQ0FBQzs7O3NIQXhCUyx5QkFBeUI7MEdBQXpCLHlCQUF5QixxTkNmdEMsb1RBWUE7MkZER2EseUJBQXlCO2tCQVpyQyxTQUFTOytCQUNFLHNCQUFzQixtQkFFZix1QkFBdUIsQ0FBQyxNQUFNOzBFQWdCdEMsV0FBVztzQkFBbkIsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUdGLFdBQVc7c0JBRGQsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIGluamVjdCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZpbHRlcklucHV0RGlyZWN0aXZlIH0gZnJvbSAnLi9maWx0ZXItaW5wdXQuZGlyZWN0aXZlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYy1zbWFydC10YWJsZS1maWx0ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vc21hcnQtdGFibGUtZmlsdGVyLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbiAgLy8gaG9zdERpcmVjdGl2ZXM6IFtcbiAgLy8gICB7XG4gIC8vICAgICBkaXJlY3RpdmU6IEZpbHRlcklucHV0RGlyZWN0aXZlLFxuICAvLyAgICAgaW5wdXRzOiBbJ3ZhbHVlJywgJ2RlbGF5JywgJ29uRXZlbnQnXSxcbiAgLy8gICAgIG91dHB1dHM6IFsndmFsdWVDaGFuZ2UnXVxuICAvLyAgIH1cbiAgLy8gXVxufSlcbmV4cG9ydCBjbGFzcyBTbWFydFRhYmxlRmlsdGVyQ29tcG9uZW50IHtcblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgcmVhZG9ubHkgI2ZpbHRlcklucHV0RGlyZWN0aXZlID0gaW5qZWN0KEZpbHRlcklucHV0RGlyZWN0aXZlKTtcbiAgcmVhZG9ubHkgdmFsdWUkID0gdGhpcy4jZmlsdGVySW5wdXREaXJlY3RpdmUudmFsdWUkO1xuXG4gIEBJbnB1dCgpIGZpbHRlckxhYmVsOiBzdHJpbmcgPSAnRmlsdGVyOic7XG4gIEBJbnB1dCgpIGZpbHRlclBsYWNlaG9sZGVyOiBzdHJpbmcgPSAnRmlsdGVyJztcbiAgQElucHV0KCkgc2l6aW5nPzogJ3NtJyB8ICdsZyc7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIGdldCBob3N0Q2xhc3NlcygpOiBhbnkge1xuICAgIHJldHVybiB7XG4gICAgICByb3c6IHRydWUsXG4gICAgICAnbWItMic6IHRydWVcbiAgICB9O1xuICB9XG5cbiAgZ2V0IGxhYmVsQ2xhc3NlcygpIHtcbiAgICByZXR1cm4ge1xuICAgICAgJ2NvbC1mb3JtLWxhYmVsJzogdHJ1ZSxcbiAgICAgIFtgY29sLWZvcm0tbGFiZWwtJHt0aGlzLnNpemluZ31gXTogISF0aGlzLnNpemluZ1xuICAgIH07XG4gIH07XG59XG4iLCI8bGFiZWwgKm5nSWY9XCIhIWZpbHRlckxhYmVsXCIgW25nQ2xhc3NdPVwibGFiZWxDbGFzc2VzXCIgY0xhYmVsPVwiY29sXCIgY2xhc3M9XCJjb2wtYXV0b1wiPlxuICB7e2ZpbHRlckxhYmVsfX1cbjwvbGFiZWw+XG48ZGl2IGNsYXNzPVwiY29sLWF1dG9cIj5cbiAgPGlucHV0XG4gICAgW3BsYWNlaG9sZGVyXT1cImZpbHRlclBsYWNlaG9sZGVyXCJcbiAgICBbc2l6aW5nXT1cInNpemluZ1wiXG4gICAgW3ZhbHVlXT1cInZhbHVlJCB8IGFzeW5jXCJcbiAgICBjRm9ybUNvbnRyb2xcbiAgICBzaXplPVwiMTBcIlxuICAvPlxuPC9kaXY+XG4iXX0=
|
|
@@ -2,9 +2,10 @@ import { Component, EventEmitter, HostBinding, Input, Output } from '@angular/co
|
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
import * as i1 from "@angular/common";
|
|
4
4
|
import * as i2 from "../../table/table-color.directive";
|
|
5
|
-
import * as i3 from "../../form/form-
|
|
6
|
-
import * as i4 from "../../
|
|
7
|
-
import * as i5 from "
|
|
5
|
+
import * as i3 from "../../form/form-check/form-check-input.directive";
|
|
6
|
+
import * as i4 from "../../shared/html-attr.directive";
|
|
7
|
+
import * as i5 from "../smart-table-filter/filter-input.directive";
|
|
8
|
+
import * as i6 from "../smart-table-column-filter/smart-table-column-filter.component";
|
|
8
9
|
export class SmartTableHeadComponent {
|
|
9
10
|
constructor() {
|
|
10
11
|
this.columnFilterState = {};
|
|
@@ -105,10 +106,10 @@ export class SmartTableHeadComponent {
|
|
|
105
106
|
}
|
|
106
107
|
return (typeof column !== 'object') ? true : typeof column.sorter === 'undefined' ? true : column.sorter;
|
|
107
108
|
}
|
|
108
|
-
handleColumnFilterValueChange($event
|
|
109
|
+
handleColumnFilterValueChange($event) {
|
|
110
|
+
const { value, type: eventType, column } = { ...$event };
|
|
109
111
|
const columnKey = this.columnKey(column);
|
|
110
|
-
const columnFilterValue =
|
|
111
|
-
const eventType = $event.type;
|
|
112
|
+
const columnFilterValue = value;
|
|
112
113
|
const isLazy = typeof this.columnFilter === 'object' && this.columnFilter.lazy === true;
|
|
113
114
|
if (((isLazy && eventType === 'input') || (!isLazy && eventType === 'change')) && columnFilterValue.length !== 0) {
|
|
114
115
|
return;
|
|
@@ -123,12 +124,16 @@ export class SmartTableHeadComponent {
|
|
|
123
124
|
getColumnFilter(column) {
|
|
124
125
|
return `columnFilter_${this.columnKey(column) ?? '_undefined'}`;
|
|
125
126
|
}
|
|
127
|
+
get columnFilterEvent() {
|
|
128
|
+
return (typeof this.columnFilter === 'object' && this.columnFilter.lazy) ? 'change' : 'input';
|
|
129
|
+
}
|
|
130
|
+
;
|
|
126
131
|
}
|
|
127
132
|
SmartTableHeadComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: SmartTableHeadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
128
|
-
SmartTableHeadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: SmartTableHeadComponent, selector: "c-smart-table-head", inputs: { columnFilter: "columnFilter", columnFilterState: "columnFilterState", columnSorter: "columnSorter", component: "component", columns: "columns", selectable: "selectable", selectAll: "selectAll", sorterValue: "sorterValue", columnFilterTemplates: "columnFilterTemplates" }, outputs: { columnFilterStateChange: "columnFilterStateChange", sorterStateChange: "sorterStateChange", selectAllChange: "selectAllChange" }, host: { properties: { "class": "this.hostClasses" } }, ngImport: i0, template: "<tr>\n <th *ngIf=\"selectable\">\n <input (change)=\"handleSelectAllChecked($event)\"\n [checked]=\"selectAll === true\"\n [indeterminate]=\"selectAll === 'indeterminate'\"\n cFormCheckInput>\n </th>\n <th\n (click)=\"handleSortClick(column, i)\"\n *ngFor=\"let column of columns; let i = index\"\n [cHtmlAttr]=\"tableHeaderCellProps(column)\"\n [cTableColor]=\"tableHeaderCellColor(column)\"\n [ngStyle]=\"tableHeaderCellStyles(column)\"\n >\n <div class=\"d-inline\">{{ columnLabel(column) }}</div>\n <ng-template [ngIf]=\"columnSorter && columnSorterEnabled(column)\">\n <ng-container\n *ngTemplateOutlet=\"columnSorterIconTemplate; context: { $implicit: getColumnSorterState(column) }\"\n ></ng-container>\n </ng-template>\n </th>\n</tr>\n<tr *ngIf=\"columnFilter\">\n <th *ngIf=\"selectable\"></th>\n <th *ngFor=\"let column of columns; let i = index\"\n [cHtmlAttr]=\"tableHeaderCellProps(column)\"\n [cTableColor]=\"tableHeaderCellColor(column)\"\n [ngStyle]=\"tableHeaderCellStyles(column)\"\n >\n <ng-container *ngTemplateOutlet=\"columnFilterTemplates[getColumnFilter(column)] ?? defaultColumnFilter; context: {$implicit: column, header: this}\"></ng-container>\n <ng-template #defaultColumnFilter let-column>\n <
|
|
133
|
+
SmartTableHeadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: SmartTableHeadComponent, selector: "c-smart-table-head", inputs: { columnFilter: "columnFilter", columnFilterState: "columnFilterState", columnSorter: "columnSorter", component: "component", columns: "columns", selectable: "selectable", selectAll: "selectAll", sorterValue: "sorterValue", columnFilterTemplates: "columnFilterTemplates" }, outputs: { columnFilterStateChange: "columnFilterStateChange", sorterStateChange: "sorterStateChange", selectAllChange: "selectAllChange" }, host: { properties: { "class": "this.hostClasses" } }, ngImport: i0, template: "<tr>\n <th *ngIf=\"selectable\">\n <input (change)=\"handleSelectAllChecked($event)\"\n [checked]=\"selectAll === true\"\n [indeterminate]=\"selectAll === 'indeterminate'\"\n cFormCheckInput>\n </th>\n <th\n (click)=\"handleSortClick(column, i)\"\n *ngFor=\"let column of columns; let i = index\"\n [cHtmlAttr]=\"tableHeaderCellProps(column)\"\n [cTableColor]=\"tableHeaderCellColor(column)\"\n [ngStyle]=\"tableHeaderCellStyles(column)\"\n >\n <div class=\"d-inline\">{{ columnLabel(column) }}</div>\n <ng-template [ngIf]=\"columnSorter && columnSorterEnabled(column)\">\n <ng-container\n *ngTemplateOutlet=\"columnSorterIconTemplate; context: { $implicit: getColumnSorterState(column) }\"\n ></ng-container>\n </ng-template>\n </th>\n</tr>\n<tr *ngIf=\"columnFilter\">\n <th *ngIf=\"selectable\"></th>\n <th *ngFor=\"let column of columns; let i = index\"\n [cHtmlAttr]=\"tableHeaderCellProps(column)\"\n [cTableColor]=\"tableHeaderCellColor(column)\"\n [ngStyle]=\"tableHeaderCellStyles(column)\"\n >\n <ng-container *ngTemplateOutlet=\"columnFilterTemplates[getColumnFilter(column)] ?? defaultColumnFilter; context: {$implicit: column, header: this}\"></ng-container>\n <ng-template #defaultColumnFilter let-column>\n <c-smart-table-column-filter\n (valueChange)=\"handleColumnFilterValueChange($event)\"\n *ngIf=\"columnFilterEnabled(column)\"\n [column]=\"column\"\n [delay]=\"300\"\n [onEvent]=\"columnFilterEvent\"\n [value]=\"columnFilterState[columnKey(column)] ?? ''\"\n cFilterInput\n sizing=\"sm\"\n ></c-smart-table-column-filter>\n </ng-template>\n </th>\n</tr>\n\n<ng-template #columnSorterIconTemplate let-columnSorterState>\n <ng-container [ngSwitch]=\"columnSorterState\">\n <span *ngSwitchCase=\"'asc'\" class=\"float-end me-1\">\n <ng-container *ngTemplateOutlet=\"sortingIconAscendingTemplate\"></ng-container>\n </span>\n <span *ngSwitchCase=\"'desc'\" class=\"float-end me-1\">\n <ng-container *ngTemplateOutlet=\"sortingIconDescendingTemplate\"></ng-container>\n </span>\n <span *ngSwitchDefault class=\"opacity-25 float-end me-1\">\n <ng-container *ngTemplateOutlet=\"sortingIconTemplate\"></ng-container>\n </span>\n </ng-container>\n</ng-template>\n\n<!--todo: sortingIconCustom Templates-->\n<ng-template #sortingIconTemplate>\n <svg\n class=\"icon icon-custom-size\"\n role=\"img\"\n viewBox=\"0 0 512 512\"\n width=\"18\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"384 433.373 384 160 352 160 352 434.51 282.177 364.687 259.55 387.313 367.432 495.196 475.313 387.313 452.687 364.687 384 433.373\"\n ></polygon>\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"159.432 17.372 51.55 125.255 74.177 147.882 144 78.059 144 352 176 352 176 79.195 244.687 147.882 267.313 125.255 159.432 17.372\"\n ></polygon>\n </svg>\n</ng-template>\n\n<ng-template #sortingIconAscendingTemplate>\n <svg\n class=\"icon icon-custom-size\"\n role=\"img\"\n viewBox=\"0 0 512 512\"\n width=\"18\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"390.624 150.625 256 16 121.376 150.625 144.004 173.252 240.001 77.254 240.001 495.236 272.001 495.236 272.001 77.257 367.996 173.252 390.624 150.625\"\n ></polygon>\n </svg>\n</ng-template>\n\n<ng-template #sortingIconDescendingTemplate>\n <svg\n class=\"icon icon-custom-size\"\n role=\"img\"\n viewBox=\"0 0 512 512\"\n width=\"18\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"367.997 338.75 271.999 434.747 271.999 17.503 239.999 17.503 239.999 434.745 144.003 338.75 121.376 361.377 256 496 390.624 361.377 367.997 338.75\"\n ></polygon>\n </svg>\n</ng-template>\n", styles: [":host{-webkit-user-select:none;user-select:none}:host.thead{display:table-header-group;vertical-align:middle;border-color:inherit}:host.tfoot{display:table-footer-group;vertical-align:middle;border-color:inherit}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "directive", type: i2.TableColorDirective, selector: "[cTableColor]", inputs: ["cTableColor"] }, { kind: "directive", type: i3.FormCheckInputDirective, selector: "input[cFormCheckInput]", inputs: ["type", "indeterminate", "valid"] }, { kind: "directive", type: i4.HtmlAttributesDirective, selector: "[cHtmlAttr]", inputs: ["cHtmlAttr"], exportAs: ["cHtmlAttr"] }, { kind: "directive", type: i5.FilterInputDirective, selector: "[cFilterInput]", inputs: ["delay", "onEvent", "value"], outputs: ["valueChange"], exportAs: ["cFilterInput"] }, { kind: "component", type: i6.SmartTableColumnFilterComponent, selector: "c-smart-table-column-filter", inputs: ["column", "sizing"] }] });
|
|
129
134
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: SmartTableHeadComponent, decorators: [{
|
|
130
135
|
type: Component,
|
|
131
|
-
args: [{ selector: 'c-smart-table-head', template: "<tr>\n <th *ngIf=\"selectable\">\n <input (change)=\"handleSelectAllChecked($event)\"\n [checked]=\"selectAll === true\"\n [indeterminate]=\"selectAll === 'indeterminate'\"\n cFormCheckInput>\n </th>\n <th\n (click)=\"handleSortClick(column, i)\"\n *ngFor=\"let column of columns; let i = index\"\n [cHtmlAttr]=\"tableHeaderCellProps(column)\"\n [cTableColor]=\"tableHeaderCellColor(column)\"\n [ngStyle]=\"tableHeaderCellStyles(column)\"\n >\n <div class=\"d-inline\">{{ columnLabel(column) }}</div>\n <ng-template [ngIf]=\"columnSorter && columnSorterEnabled(column)\">\n <ng-container\n *ngTemplateOutlet=\"columnSorterIconTemplate; context: { $implicit: getColumnSorterState(column) }\"\n ></ng-container>\n </ng-template>\n </th>\n</tr>\n<tr *ngIf=\"columnFilter\">\n <th *ngIf=\"selectable\"></th>\n <th *ngFor=\"let column of columns; let i = index\"\n [cHtmlAttr]=\"tableHeaderCellProps(column)\"\n [cTableColor]=\"tableHeaderCellColor(column)\"\n [ngStyle]=\"tableHeaderCellStyles(column)\"\n >\n <ng-container *ngTemplateOutlet=\"columnFilterTemplates[getColumnFilter(column)] ?? defaultColumnFilter; context: {$implicit: column, header: this}\"></ng-container>\n <ng-template #defaultColumnFilter let-column>\n <
|
|
136
|
+
args: [{ selector: 'c-smart-table-head', template: "<tr>\n <th *ngIf=\"selectable\">\n <input (change)=\"handleSelectAllChecked($event)\"\n [checked]=\"selectAll === true\"\n [indeterminate]=\"selectAll === 'indeterminate'\"\n cFormCheckInput>\n </th>\n <th\n (click)=\"handleSortClick(column, i)\"\n *ngFor=\"let column of columns; let i = index\"\n [cHtmlAttr]=\"tableHeaderCellProps(column)\"\n [cTableColor]=\"tableHeaderCellColor(column)\"\n [ngStyle]=\"tableHeaderCellStyles(column)\"\n >\n <div class=\"d-inline\">{{ columnLabel(column) }}</div>\n <ng-template [ngIf]=\"columnSorter && columnSorterEnabled(column)\">\n <ng-container\n *ngTemplateOutlet=\"columnSorterIconTemplate; context: { $implicit: getColumnSorterState(column) }\"\n ></ng-container>\n </ng-template>\n </th>\n</tr>\n<tr *ngIf=\"columnFilter\">\n <th *ngIf=\"selectable\"></th>\n <th *ngFor=\"let column of columns; let i = index\"\n [cHtmlAttr]=\"tableHeaderCellProps(column)\"\n [cTableColor]=\"tableHeaderCellColor(column)\"\n [ngStyle]=\"tableHeaderCellStyles(column)\"\n >\n <ng-container *ngTemplateOutlet=\"columnFilterTemplates[getColumnFilter(column)] ?? defaultColumnFilter; context: {$implicit: column, header: this}\"></ng-container>\n <ng-template #defaultColumnFilter let-column>\n <c-smart-table-column-filter\n (valueChange)=\"handleColumnFilterValueChange($event)\"\n *ngIf=\"columnFilterEnabled(column)\"\n [column]=\"column\"\n [delay]=\"300\"\n [onEvent]=\"columnFilterEvent\"\n [value]=\"columnFilterState[columnKey(column)] ?? ''\"\n cFilterInput\n sizing=\"sm\"\n ></c-smart-table-column-filter>\n </ng-template>\n </th>\n</tr>\n\n<ng-template #columnSorterIconTemplate let-columnSorterState>\n <ng-container [ngSwitch]=\"columnSorterState\">\n <span *ngSwitchCase=\"'asc'\" class=\"float-end me-1\">\n <ng-container *ngTemplateOutlet=\"sortingIconAscendingTemplate\"></ng-container>\n </span>\n <span *ngSwitchCase=\"'desc'\" class=\"float-end me-1\">\n <ng-container *ngTemplateOutlet=\"sortingIconDescendingTemplate\"></ng-container>\n </span>\n <span *ngSwitchDefault class=\"opacity-25 float-end me-1\">\n <ng-container *ngTemplateOutlet=\"sortingIconTemplate\"></ng-container>\n </span>\n </ng-container>\n</ng-template>\n\n<!--todo: sortingIconCustom Templates-->\n<ng-template #sortingIconTemplate>\n <svg\n class=\"icon icon-custom-size\"\n role=\"img\"\n viewBox=\"0 0 512 512\"\n width=\"18\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"384 433.373 384 160 352 160 352 434.51 282.177 364.687 259.55 387.313 367.432 495.196 475.313 387.313 452.687 364.687 384 433.373\"\n ></polygon>\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"159.432 17.372 51.55 125.255 74.177 147.882 144 78.059 144 352 176 352 176 79.195 244.687 147.882 267.313 125.255 159.432 17.372\"\n ></polygon>\n </svg>\n</ng-template>\n\n<ng-template #sortingIconAscendingTemplate>\n <svg\n class=\"icon icon-custom-size\"\n role=\"img\"\n viewBox=\"0 0 512 512\"\n width=\"18\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"390.624 150.625 256 16 121.376 150.625 144.004 173.252 240.001 77.254 240.001 495.236 272.001 495.236 272.001 77.257 367.996 173.252 390.624 150.625\"\n ></polygon>\n </svg>\n</ng-template>\n\n<ng-template #sortingIconDescendingTemplate>\n <svg\n class=\"icon icon-custom-size\"\n role=\"img\"\n viewBox=\"0 0 512 512\"\n width=\"18\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <polygon\n class=\"ci-primary\"\n fill=\"var(--ci-primary-color, currentColor)\"\n points=\"367.997 338.75 271.999 434.747 271.999 17.503 239.999 17.503 239.999 434.745 144.003 338.75 121.376 361.377 256 496 390.624 361.377 367.997 338.75\"\n ></polygon>\n </svg>\n</ng-template>\n", styles: [":host{-webkit-user-select:none;user-select:none}:host.thead{display:table-header-group;vertical-align:middle;border-color:inherit}:host.tfoot{display:table-footer-group;vertical-align:middle;border-color:inherit}\n"] }]
|
|
132
137
|
}], ctorParameters: function () { return []; }, propDecorators: { columnFilter: [{
|
|
133
138
|
type: Input
|
|
134
139
|
}], columnFilterState: [{
|
|
@@ -157,4 +162,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
|
|
|
157
162
|
type: HostBinding,
|
|
158
163
|
args: ['class']
|
|
159
164
|
}] } });
|
|
160
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtdGFibGUtaGVhZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3NtYXJ0LXRhYmxlL3NtYXJ0LXRhYmxlLWhlYWQvc21hcnQtdGFibGUtaGVhZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3NtYXJ0LXRhYmxlL3NtYXJ0LXRhYmxlLWhlYWQvc21hcnQtdGFibGUtaGVhZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7OztBQVE1RixNQUFNLE9BQU8sdUJBQXVCO0lBRWxDO1FBR1Msc0JBQWlCLEdBQXVCLEVBQUUsQ0FBQztRQUMzQyxpQkFBWSxHQUF1QixJQUFJLENBQUM7UUFDeEMsY0FBUyxHQUFZLE9BQU8sQ0FBQztRQVl0QywyQkFBc0IsR0FBUyxFQUFFLENBQUM7UUFFbEMsT0FBTztRQUNQLG9EQUFvRDtRQUNwRCw2REFBNkQ7UUFDN0QsOERBQThEO1FBRXBELDRCQUF1QixHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO1FBQ3JFLHNCQUFpQixHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO1FBQy9ELG9CQUFlLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7SUExQnZELENBQUM7SUFVakIsSUFDSSxxQkFBcUIsQ0FBQyxLQUFLO1FBQzdCLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxFQUFFLEdBQUcsS0FBSyxFQUFFLENBQUM7SUFDN0MsQ0FBQztJQUFBLENBQUM7SUFDRixJQUFJLHFCQUFxQjtRQUN2QixPQUFPLElBQUksQ0FBQyxzQkFBc0IsQ0FBQztJQUNyQyxDQUFDO0lBQUEsQ0FB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QUFNLENBQUMsTUFBMkIsQ0FBQyxPQUFPLENBQUM7UUFDOUQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELGVBQWUsQ0FBQyxNQUF3QjtRQUN0QyxPQUFPLGdCQUFpQixJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLFlBQWEsRUFBRSxDQUFDO0lBQ3BFLENBQUM7O29IQS9JVSx1QkFBdUI7d0dBQXZCLHVCQUF1Qix3aEJDUnBDLGtoSUE4R0E7MkZEdEdhLHVCQUF1QjtrQkFMbkMsU0FBUzsrQkFDRSxvQkFBb0I7MEVBUXJCLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBRUYscUJBQXFCO3NCQUR4QixLQUFLO2dCQWNJLHVCQUF1QjtzQkFBaEMsTUFBTTtnQkFDRyxpQkFBaUI7c0JBQTFCLE1BQU07Z0JBQ0csZUFBZTtzQkFBeEIsTUFBTTtnQkFHSCxXQUFXO3NCQURkLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IElDb2x1bW4sIElDb2x1bW5GaWx0ZXIsIElDb2x1bW5GaWx0ZXJWYWx1ZSwgSVNvcnRlciwgSVNvcnRlclZhbHVlIH0gZnJvbSAnLi4vc21hcnQtdGFibGUudHlwZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2Mtc21hcnQtdGFibGUtaGVhZCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3NtYXJ0LXRhYmxlLWhlYWQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3NtYXJ0LXRhYmxlLWhlYWQuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU21hcnRUYWJsZUhlYWRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICBASW5wdXQoKSBjb2x1bW5GaWx0ZXI/OiBib29sZWFuIHwgSUNvbHVtbkZpbHRlcjtcclxuICBASW5wdXQoKSBjb2x1bW5GaWx0ZXJTdGF0ZTogSUNvbHVtbkZpbHRlclZhbHVlID0ge307XHJcbiAgQElucHV0KCkgY29sdW1uU29ydGVyPzogYm9vbGVhbiB8IElTb3J0ZXIgPSB0cnVlO1xyXG4gIEBJbnB1dCgpIGNvbXBvbmVudD86IHN0cmluZyA9ICd0aGVhZCc7XHJcbiAgQElucHV0KCkgY29sdW1ucz86IChJQ29sdW1uIHwgc3RyaW5nKVtdO1xyXG4gIEBJbnB1dCgpIHNlbGVjdGFibGU/OiBib29sZWFuO1xyXG4gIEBJbnB1dCgpIHNlbGVjdEFsbD86IGJvb2xlYW4gfCBzdHJpbmc7XHJcbiAgQElucHV0KCkgc29ydGVyVmFsdWU/OiBJU29ydGVyVmFsdWU7XHJcbiAgQElucHV0KClcclxuICBzZXQgY29sdW1uRmlsdGVyVGVtcGxhdGVzKHZhbHVlKSB7XHJcbiAgICB0aGlzLl9jb2x1bW5GaWx0ZXJUZW1wbGF0ZXMgPSB7IC4uLnZhbHVlIH07XHJcbiAgfTtcclxuICBnZXQgY29sdW1uRmlsdGVyVGVtcGxhdGVzKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX2NvbHVtbkZpbHRlclRlbXBsYXRlcztcclxuICB9O1xyXG4gIF9jb2x1bW5GaWx0ZXJUZW1wbGF0ZXM/OiBhbnkgPSB7fTtcclxuXHJcbiAgLy8gdG9kb1xyXG4gIC8vIEBJbnB1dCgpIHNvcnRpbmdJY29uPzogc3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55PjtcclxuICAvLyBASW5wdXQoKSBzb3J0aW5nSWNvbkFzY2VuZGluZz86IHN0cmluZyB8IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgLy8gQElucHV0KCkgc29ydGluZ0ljb25EZXNjZW5kaW5nPzogc3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcbiAgQE91dHB1dCgpIGNvbHVtbkZpbHRlclN0YXRlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gIEBPdXRwdXQoKSBzb3J0ZXJTdGF0ZUNoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICBAT3V0cHV0KCkgc2VsZWN0QWxsQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcclxuICBnZXQgaG9zdENsYXNzZXMoKSB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICB0aGVhZDogdGhpcy5jb21wb25lbnQgPT09ICd0aGVhZCcsXHJcbiAgICAgIHRmb290OiB0aGlzLmNvbXBvbmVudCA9PT0gJ3Rmb290J1xyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5jb2x1bW5zPy5mb3JFYWNoKChjb2x1bW4sIGluZGV4KSA9PiB7XHJcbiAgICAgIGNvbnN0IGNvbHVtbktleSA9IHRoaXMuY29sdW1uS2V5KGNvbHVtbik7XHJcbiAgICAgIHRoaXMuY29sdW1uRmlsdGVyU3RhdGVbY29sdW1uS2V5XSA9IHRoaXMuY29sdW1uRmlsdGVyU3RhdGVbY29sdW1uS2V5XSA/PyAnJztcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgdGFibGVIZWFkZXJDZWxsUHJvcHMgKGNvbHVtbjogSUNvbHVtbiB8IHN0cmluZykge1xyXG4gICAgaWYgKHR5cGVvZiBjb2x1bW4gPT09ICdvYmplY3QnICYmIGNvbHVtbi5fcHJvcHMpIHtcclxuICAgICAgY29uc3QgeyBjb2xvciwgLi4ucHJvcHMgfSA9IHsgLi4uY29sdW1uLl9wcm9wcyB9XHJcbiAgICAgIHJldHVybiBwcm9wc1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHt9XHJcbiAgfVxyXG5cclxuICB0YWJsZUhlYWRlckNlbGxDb2xvciAoY29sdW1uOiBJQ29sdW1uIHwgc3RyaW5nKSB7XHJcbiAgICBpZiAodHlwZW9mIGNvbHVtbiA9PT0gJ29iamVjdCcgJiYgY29sdW1uLl9wcm9wcykge1xyXG4gICAgICBjb25zdCB7IGNvbG9yIH0gPSB7IC4uLmNvbHVtbi5fcHJvcHMgfVxyXG4gICAgICByZXR1cm4gY29sb3JcclxuICAgIH1cclxuICAgIHJldHVybiAnJ1xyXG4gIH1cclxuXHJcbiAgdGFibGVIZWFkZXJDZWxsU3R5bGVzKGNvbHVtbjogSUNvbHVtbiB8IHN0cmluZykge1xyXG4gICAgY29uc3Qgc3R5bGUgPSB7IHZlcnRpY2FsQWxpZ246ICdtaWRkbGUnLCBvdmVyZmxvdzogJ2hpZGRlbicsIGN1cnNvcjogJycgfTtcclxuICAgIGlmIChcclxuICAgICAgdGhpcy5jb2x1bW5Tb3J0ZXIgJiZcclxuICAgICAgKHR5cGVvZiBjb2x1bW4gIT09ICdvYmplY3QnIHx8XHJcbiAgICAgICAgKHR5cGVvZiBjb2x1bW4gPT09ICdvYmplY3QnICYmICh0eXBlb2YgY29sdW1uLnNvcnRlciA9PT0gJ3VuZGVmaW5lZCcgfHwgY29sdW1uLnNvcnRlcikpKVxyXG4gICAgKSB7XHJcbiAgICAgIHN0eWxlLmN1cnNvciA9ICdwb2ludGVyJztcclxuICAgIH1cclxuXHJcbiAgICBpZiAodHlwZW9mIGNvbHVtbiA9PT0gJ29iamVjdCcgJiYgY29sdW1uLl9zdHlsZSkge1xyXG4gICAgICByZXR1cm4geyAuLi5zdHlsZSwgLi4uY29sdW1uLl9zdHlsZSB9O1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHN0eWxlO1xyXG4gIH1cclxuXHJcbiAgY29sdW1uTGFiZWwoY29sdW1uOiBJQ29sdW1uIHwgc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gdHlwZW9mIGNvbHVtbiA9PT0gJ29iamVjdCcgPyBjb2x1bW4ubGFiZWwgIT09IHVuZGVmaW5lZCA/IGNvbHVtbi5sYWJlbCA6IHRoaXMucHJldHRpZnlOYW1lKGNvbHVtbi5rZXkpIDogdGhpcy5wcmV0dGlmeU5hbWUoY29sdW1uKTtcclxuICB9XHJcblxyXG4gIGNvbHVtbktleShjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcpIHtcclxuICAgIHJldHVybiB0eXBlb2YgY29sdW1uID09PSAnb2JqZWN0JyA/IGNvbHVtbi5rZXkgOiBjb2x1bW47XHJcbiAgfVxyXG5cclxuICBnZXRDb2x1bW5Tb3J0ZXJTdGF0ZShjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcpIHtcclxuICAgIGNvbnN0IGNvbHVtbktleSA9IHRoaXMuY29sdW1uS2V5KGNvbHVtbik7XHJcbiAgICBpZiAodGhpcy5zb3J0ZXJWYWx1ZT8uY29sdW1uID09PSBjb2x1bW5LZXkpIHtcclxuICAgICAgaWYgKHRoaXMuc29ydGVyVmFsdWUuc3RhdGUpIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5zb3J0ZXJWYWx1ZS5zdGF0ZTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gMDtcclxuICAgIH1cclxuICAgIHJldHVybiAwO1xyXG4gIH1cclxuXHJcbiAgcHJldHRpZnlOYW1lKG5hbWU6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIG5hbWVcclxuICAgICAgLnJlcGxhY2UoL1stXy5dL2csICcgJylcclxuICAgICAgLnJlcGxhY2UoLyArL2csICcgJylcclxuICAgICAgLnJlcGxhY2UoLyhbYS16MC05XSkoW0EtWl0pL2csICckMSAkMicpXHJcbiAgICAgIC5zcGxpdCgnICcpXHJcbiAgICAgIC5tYXAoKHdvcmQpID0+IHdvcmQuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkgKyB3b3JkLnNsaWNlKDEpKVxyXG4gICAgICAuam9pbignICcpO1xyXG4gIH1cclxuXHJcbiAgaGFuZGxlU29ydENsaWNrKGNvbHVtbjogSUNvbHVtbiB8IHN0cmluZywgaTogbnVtYmVyKSB7XHJcbiAgICBpZiAodGhpcy5jb2x1bW5Tb3J0ZXJFbmFibGVkKGNvbHVtbikpIHtcclxuICAgICAgY29uc3QgY29sdW1uS2V5ID0gdGhpcy5jb2x1bW5LZXkoY29sdW1uKTtcclxuICAgICAgdGhpcy5zb3J0ZXJTdGF0ZUNoYW5nZS5lbWl0KHsgY29sdW1uS2V5LCBpbmRleDogaSB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNvbHVtbkZpbHRlckVuYWJsZWQoY29sdW1uOiBJQ29sdW1uIHwgc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gdHlwZW9mIGNvbHVtbiAhPT0gJ29iamVjdCcgPyB0cnVlIDogdHlwZW9mIGNvbHVtbi5maWx0ZXIgPT09ICd1bmRlZmluZWQnID8gdHJ1ZSA6IGNvbHVtbi5maWx0ZXI7XHJcbiAgfVxyXG5cclxuICBjb2x1bW5Tb3J0ZXJFbmFibGVkKGNvbHVtbjogSUNvbHVtbiB8IHN0cmluZykge1xyXG4gICAgaWYgKCF0aGlzLmNvbHVtblNvcnRlcikge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gKHR5cGVvZiBjb2x1bW4gIT09ICdvYmplY3QnKSA/IHRydWUgOiB0eXBlb2YgY29sdW1uLnNvcnRlciA9PT0gJ3VuZGVmaW5lZCcgPyB0cnVlIDogY29sdW1uLnNvcnRlcjtcclxuICB9XHJcblxyXG4gIGhhbmRsZUNvbHVtbkZpbHRlclZhbHVlQ2hhbmdlKCRldmVudDogRXZlbnQsIGNvbHVtbjogSUNvbHVtbiB8IHN0cmluZykge1xyXG4gICAgY29uc3QgY29sdW1uS2V5ID0gdGhpcy5jb2x1bW5LZXkoY29sdW1uKTtcclxuICAgIGNvbnN0IGNvbHVtbkZpbHRlclZhbHVlID0gKCRldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkudmFsdWU7XHJcbiAgICBjb25zdCBldmVudFR5cGUgPSAkZXZlbnQudHlwZTtcclxuICAgIGNvbnN0IGlzTGF6eSA9IHR5cGVvZiB0aGlzLmNvbHVtbkZpbHRlciA9PT0gJ29iamVjdCcgJiYgdGhpcy5jb2x1bW5GaWx0ZXIubGF6eSA9PT0gdHJ1ZTtcclxuICAgIGlmICgoKGlzTGF6eSAmJiBldmVudFR5cGUgPT09ICdpbnB1dCcpIHx8ICghaXNMYXp5ICYmIGV2ZW50VHlwZSA9PT0gJ2NoYW5nZScpKSAmJiBjb2x1bW5GaWx0ZXJWYWx1ZS5sZW5ndGggIT09IDApIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy5jb2x1bW5GaWx0ZXJTdGF0ZVt0aGlzLmNvbHVtbktleShjb2x1bW4pXSA9IGNvbHVtbkZpbHRlclZhbHVlO1xyXG4gICAgdGhpcy5jb2x1bW5GaWx0ZXJTdGF0ZUNoYW5nZS5lbWl0KHsgY29sdW1uOiBjb2x1bW5LZXksIHZhbHVlOiBjb2x1bW5GaWx0ZXJWYWx1ZSwgdHlwZTogZXZlbnRUeXBlIH0pO1xyXG4gIH1cclxuXHJcbiAgaGFuZGxlU2VsZWN0QWxsQ2hlY2tlZCgkZXZlbnQ6IEV2ZW50KSB7XHJcbiAgICBjb25zdCBzZWxlY3RBbGwgPSAoJGV2ZW50LnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KS5jaGVja2VkO1xyXG4gICAgdGhpcy5zZWxlY3RBbGxDaGFuZ2UuZW1pdChzZWxlY3RBbGwpO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q29sdW1uRmlsdGVyKGNvbHVtbjogSUNvbHVtbiB8IHN0cmluZykge1xyXG4gICAgcmV0dXJuIGBjb2x1bW5GaWx0ZXJfJHsgdGhpcy5jb2x1bW5LZXkoY29sdW1uKSA/PyAnX3VuZGVmaW5lZCcgfWA7XHJcbiAgfVxyXG59XHJcbiIsIjx0cj5cbiAgPHRoICpuZ0lmPVwic2VsZWN0YWJsZVwiPlxuICAgIDxpbnB1dCAoY2hhbmdlKT1cImhhbmRsZVNlbGVjdEFsbENoZWNrZWQoJGV2ZW50KVwiXG4gICAgICAgICAgIFtjaGVja2VkXT1cInNlbGVjdEFsbCA9PT0gdHJ1ZVwiXG4gICAgICAgICAgIFtpbmRldGVybWluYXRlXT1cInNlbGVjdEFsbCA9PT0gJ2luZGV0ZXJtaW5hdGUnXCJcbiAgICAgICAgICAgY0Zvcm1DaGVja0lucHV0PlxuICA8L3RoPlxuICA8dGhcbiAgICAoY2xpY2spPVwiaGFuZGxlU29ydENsaWNrKGNvbHVtbiwgaSlcIlxuICAgICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgY29sdW1uczsgbGV0IGkgPSBpbmRleFwiXG4gICAgW2NIdG1sQXR0cl09XCJ0YWJsZUhlYWRlckNlbGxQcm9wcyhjb2x1bW4pXCJcbiAgICBbY1RhYmxlQ29sb3JdPVwidGFibGVIZWFkZXJDZWxsQ29sb3IoY29sdW1uKVwiXG4gICAgW25nU3R5bGVdPVwidGFibGVIZWFkZXJDZWxsU3R5bGVzKGNvbHVtbilcIlxuICA+XG4gICAgPGRpdiBjbGFzcz1cImQtaW5saW5lXCI+e3sgY29sdW1uTGFiZWwoY29sdW1uKSB9fTwvZGl2PlxuICAgIDxuZy10ZW1wbGF0ZSBbbmdJZl09XCJjb2x1bW5Tb3J0ZXIgJiYgY29sdW1uU29ydGVyRW5hYmxlZChjb2x1bW4pXCI+XG4gICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29sdW1uU29ydGVySWNvblRlbXBsYXRlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogZ2V0Q29sdW1uU29ydGVyU3RhdGUoY29sdW1uKSB9XCJcbiAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L3RoPlxuPC90cj5cbjx0ciAqbmdJZj1cImNvbHVtbkZpbHRlclwiPlxuICA8dGggKm5nSWY9XCJzZWxlY3RhYmxlXCI+PC90aD5cbiAgPHRoICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgY29sdW1uczsgbGV0IGkgPSBpbmRleFwiXG4gICAgICBbY0h0bWxBdHRyXT1cInRhYmxlSGVhZGVyQ2VsbFByb3BzKGNvbHVtbilcIlxuICAgICAgW2NUYWJsZUNvbG9yXT1cInRhYmxlSGVhZGVyQ2VsbENvbG9yKGNvbHVtbilcIlxuICAgICAgW25nU3R5bGVdPVwidGFibGVIZWFkZXJDZWxsU3R5bGVzKGNvbHVtbilcIlxuICA+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbHVtbkZpbHRlclRlbXBsYXRlc1tnZXRDb2x1bW5GaWx0ZXIoY29sdW1uKV0gPz8gZGVmYXVsdENvbHVtbkZpbHRlcjsgY29udGV4dDogeyRpbXBsaWNpdDogY29sdW1uLCBoZWFkZXI6IHRoaXN9XCI+PC9uZy1jb250YWluZXI+XG4gICAgPG5nLXRlbXBsYXRlICNkZWZhdWx0Q29sdW1uRmlsdGVyIGxldC1jb2x1bW4+XG4gICAgICA8aW5wdXRcbiAgICAgICAgKGNoYW5nZSk9XCJoYW5kbGVDb2x1bW5GaWx0ZXJWYWx1ZUNoYW5nZSgkZXZlbnQsIGNvbHVtbilcIlxuICAgICAgICAoaW5wdXQpPVwiaGFuZGxlQ29sdW1uRmlsdGVyVmFsdWVDaGFuZ2UoJGV2ZW50LCBjb2x1bW4pXCJcbiAgICAgICAgKm5nSWY9XCJjb2x1bW5GaWx0ZXJFbmFibGVkKGNvbHVtbilcIlxuICAgICAgICBbdmFsdWVdPVwiY29sdW1uRmlsdGVyU3RhdGVbY29sdW1uS2V5KGNvbHVtbildID8/ICcnXCJcbiAgICAgICAgY0Zvcm1Db250cm9sXG4gICAgICAgIHNpemluZz1cInNtXCJcbiAgICAgIC8+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC90aD5cbjwvdHI+XG5cbjxuZy10ZW1wbGF0ZSAjY29sdW1uU29ydGVySWNvblRlbXBsYXRlIGxldC1jb2x1bW5Tb3J0ZXJTdGF0ZT5cbiAgPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwiY29sdW1uU29ydGVyU3RhdGVcIj5cbiAgICA8c3BhbiAqbmdTd2l0Y2hDYXNlPVwiJ2FzYydcIiBjbGFzcz1cImZsb2F0LWVuZCBtZS0xXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwic29ydGluZ0ljb25Bc2NlbmRpbmdUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvc3Bhbj5cbiAgICA8c3BhbiAqbmdTd2l0Y2hDYXNlPVwiJ2Rlc2MnXCIgY2xhc3M9XCJmbG9hdC1lbmQgbWUtMVwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInNvcnRpbmdJY29uRGVzY2VuZGluZ1RlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9zcGFuPlxuICAgIDxzcGFuICpuZ1N3aXRjaERlZmF1bHQgY2xhc3M9XCJvcGFjaXR5LTI1IGZsb2F0LWVuZCBtZS0xXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwic29ydGluZ0ljb25UZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvc3Bhbj5cbiAgPC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuXG48IS0tdG9kbzogc29ydGluZ0ljb25DdXN0b20gVGVtcGxhdGVzLS0+XG48bmctdGVtcGxhdGUgI3NvcnRpbmdJY29uVGVtcGxhdGU+XG4gIDxzdmdcbiAgICBjbGFzcz1cImljb24gaWNvbi1jdXN0b20tc2l6ZVwiXG4gICAgcm9sZT1cImltZ1wiXG4gICAgdmlld0JveD1cIjAgMCA1MTIgNTEyXCJcbiAgICB3aWR0aD1cIjE4XCJcbiAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgPlxuICAgIDxwb2x5Z29uXG4gICAgICBjbGFzcz1cImNpLXByaW1hcnlcIlxuICAgICAgZmlsbD1cInZhcigtLWNpLXByaW1hcnktY29sb3IsIGN1cnJlbnRDb2xvcilcIlxuICAgICAgcG9pbnRzPVwiMzg0IDQzMy4zNzMgMzg0IDE2MCAzNTIgMTYwIDM1MiA0MzQuNTEgMjgyLjE3NyAzNjQuNjg3IDI1OS41NSAzODcuMzEzIDM2Ny40MzIgNDk1LjE5NiA0NzUuMzEzIDM4Ny4zMTMgNDUyLjY4NyAzNjQuNjg3IDM4NCA0MzMuMzczXCJcbiAgICA+PC9wb2x5Z29uPlxuICAgIDxwb2x5Z29uXG4gICAgICBjbGFzcz1cImNpLXByaW1hcnlcIlxuICAgICAgZmlsbD1cInZhcigtLWNpLXByaW1hcnktY29sb3IsIGN1cnJlbnRDb2xvcilcIlxuICAgICAgcG9pbnRzPVwiMTU5LjQzMiAxNy4zNzIgNTEuNTUgMTI1LjI1NSA3NC4xNzcgMTQ3Ljg4MiAxNDQgNzguMDU5IDE0NCAzNTIgMTc2IDM1MiAxNzYgNzkuMTk1IDI0NC42ODcgMTQ3Ljg4MiAyNjcuMzEzIDEyNS4yNTUgMTU5LjQzMiAxNy4zNzJcIlxuICAgID48L3BvbHlnb24+XG4gIDwvc3ZnPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNzb3J0aW5nSWNvbkFzY2VuZGluZ1RlbXBsYXRlPlxuICA8c3ZnXG4gICAgY2xhc3M9XCJpY29uIGljb24tY3VzdG9tLXNpemVcIlxuICAgIHJvbGU9XCJpbWdcIlxuICAgIHZpZXdCb3g9XCIwIDAgNTEyIDUxMlwiXG4gICAgd2lkdGg9XCIxOFwiXG4gICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gID5cbiAgICA8cG9seWdvblxuICAgICAgY2xhc3M9XCJjaS1wcmltYXJ5XCJcbiAgICAgIGZpbGw9XCJ2YXIoLS1jaS1wcmltYXJ5LWNvbG9yLCBjdXJyZW50Q29sb3IpXCJcbiAgICAgIHBvaW50cz1cIjM5MC42MjQgMTUwLjYyNSAyNTYgMTYgMTIxLjM3NiAxNTAuNjI1IDE0NC4wMDQgMTczLjI1MiAyNDAuMDAxIDc3LjI1NCAyNDAuMDAxIDQ5NS4yMzYgMjcyLjAwMSA0OTUuMjM2IDI3Mi4wMDEgNzcuMjU3IDM2Ny45OTYgMTczLjI1MiAzOTAuNjI0IDE1MC42MjVcIlxuICAgID48L3BvbHlnb24+XG4gIDwvc3ZnPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNzb3J0aW5nSWNvbkRlc2NlbmRpbmdUZW1wbGF0ZT5cbiAgPHN2Z1xuICAgIGNsYXNzPVwiaWNvbiBpY29uLWN1c3RvbS1zaXplXCJcbiAgICByb2xlPVwiaW1nXCJcbiAgICB2aWV3Qm94PVwiMCAwIDUxMiA1MTJcIlxuICAgIHdpZHRoPVwiMThcIlxuICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICA+XG4gICAgPHBvbHlnb25cbiAgICAgIGNsYXNzPVwiY2ktcHJpbWFyeVwiXG4gICAgICBmaWxsPVwidmFyKC0tY2ktcHJpbWFyeS1jb2xvciwgY3VycmVudENvbG9yKVwiXG4gICAgICBwb2ludHM9XCIzNjcuOTk3IDMzOC43NSAyNzEuOTk5IDQzNC43NDcgMjcxLjk5OSAxNy41MDMgMjM5Ljk5OSAxNy41MDMgMjM5Ljk5OSA0MzQuNzQ1IDE0NC4wMDMgMzM4Ljc1IDEyMS4zNzYgMzYxLjM3NyAyNTYgNDk2IDM5MC42MjQgMzYxLjM3NyAzNjcuOTk3IDMzOC43NVwiXG4gICAgPjwvcG9seWdvbj5cbiAgPC9zdmc+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
165
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtdGFibGUtaGVhZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3NtYXJ0LXRhYmxlL3NtYXJ0LXRhYmxlLWhlYWQvc21hcnQtdGFibGUtaGVhZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3NtYXJ0LXRhYmxlL3NtYXJ0LXRhYmxlLWhlYWQvc21hcnQtdGFibGUtaGVhZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7QUFRNUYsTUFBTSxPQUFPLHVCQUF1QjtJQUVsQztRQUdTLHNCQUFpQixHQUF1QixFQUFFLENBQUM7UUFDM0MsaUJBQVksR0FBdUIsSUFBSSxDQUFDO1FBQ3hDLGNBQVMsR0FBWSxPQUFPLENBQUM7UUFldEMsMkJBQXNCLEdBQVMsRUFBRSxDQUFDO1FBRWxDLE9BQU87UUFDUCxvREFBb0Q7UUFDcEQsNkRBQTZEO1FBQzdELDhEQUE4RDtRQUVwRCw0QkFBdUIsR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUNyRSxzQkFBaUIsR0FBc0IsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUMvRCxvQkFBZSxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO0lBN0J2RCxDQUFDO0lBV2pCLElBQ0kscUJBQXFCLENBQUMsS0FBSztRQUM3QixJQUFJLENBQUMsc0JBQXNCLEdBQUcsRUFBRSxHQUFHLEtBQUssRUFBRSxDQUFDO0lBQzdDLENBQUM7SUFBQSxDQUFDO0lBRUYsSUFBSSxxQkFBcUI7UUFDdkIsT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQUM7SUFDckMsQ0FBQztJQUFBLENB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QUFNLFNBQVMsR0FBSSxNQUFNLENBQUMsTUFBMkIsQ0FBQyxPQUFPLENBQUM7UUFDOUQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELGVBQWUsQ0FBQyxNQUF3QjtRQUN0QyxPQUFPLGdCQUFnQixJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBQ2xFLENBQUM7SUFFRCxJQUFJLGlCQUFpQjtRQUNuQixPQUFPLENBQUMsT0FBTyxJQUFJLENBQUMsWUFBWSxLQUFLLFFBQVEsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQztJQUNoRyxDQUFDO0lBQUEsQ0FBQzs7b0hBdEpTLHVCQUF1Qjt3R0FBdkIsdUJBQXVCLHdoQkNScEMsOGxJQWdIQTsyRkR4R2EsdUJBQXVCO2tCQUxuQyxTQUFTOytCQUNFLG9CQUFvQjswRUFRckIsWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFHRixxQkFBcUI7c0JBRHhCLEtBQUs7Z0JBZ0JJLHVCQUF1QjtzQkFBaEMsTUFBTTtnQkFDRyxpQkFBaUI7c0JBQTFCLE1BQU07Z0JBQ0csZUFBZTtzQkFBeEIsTUFBTTtnQkFHSCxXQUFXO3NCQURkLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJQ29sdW1uLCBJQ29sdW1uRmlsdGVyLCBJQ29sdW1uRmlsdGVyVmFsdWUsIElTb3J0ZXIsIElTb3J0ZXJWYWx1ZSB9IGZyb20gJy4uL3NtYXJ0LXRhYmxlLnR5cGUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjLXNtYXJ0LXRhYmxlLWhlYWQnLFxuICB0ZW1wbGF0ZVVybDogJy4vc21hcnQtdGFibGUtaGVhZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3NtYXJ0LXRhYmxlLWhlYWQuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBTbWFydFRhYmxlSGVhZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgY29uc3RydWN0b3IoKSB7IH1cblxuICBASW5wdXQoKSBjb2x1bW5GaWx0ZXI/OiBib29sZWFuIHwgSUNvbHVtbkZpbHRlcjtcbiAgQElucHV0KCkgY29sdW1uRmlsdGVyU3RhdGU6IElDb2x1bW5GaWx0ZXJWYWx1ZSA9IHt9O1xuICBASW5wdXQoKSBjb2x1bW5Tb3J0ZXI/OiBib29sZWFuIHwgSVNvcnRlciA9IHRydWU7XG4gIEBJbnB1dCgpIGNvbXBvbmVudD86IHN0cmluZyA9ICd0aGVhZCc7XG4gIEBJbnB1dCgpIGNvbHVtbnM/OiAoSUNvbHVtbiB8IHN0cmluZylbXTtcbiAgQElucHV0KCkgc2VsZWN0YWJsZT86IGJvb2xlYW47XG4gIEBJbnB1dCgpIHNlbGVjdEFsbD86IGJvb2xlYW4gfCBzdHJpbmc7XG4gIEBJbnB1dCgpIHNvcnRlclZhbHVlPzogSVNvcnRlclZhbHVlO1xuXG4gIEBJbnB1dCgpXG4gIHNldCBjb2x1bW5GaWx0ZXJUZW1wbGF0ZXModmFsdWUpIHtcbiAgICB0aGlzLl9jb2x1bW5GaWx0ZXJUZW1wbGF0ZXMgPSB7IC4uLnZhbHVlIH07XG4gIH07XG5cbiAgZ2V0IGNvbHVtbkZpbHRlclRlbXBsYXRlcygpIHtcbiAgICByZXR1cm4gdGhpcy5fY29sdW1uRmlsdGVyVGVtcGxhdGVzO1xuICB9O1xuXG4gIF9jb2x1bW5GaWx0ZXJUZW1wbGF0ZXM/OiBhbnkgPSB7fTtcblxuICAvLyB0b2RvXG4gIC8vIEBJbnB1dCgpIHNvcnRpbmdJY29uPzogc3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55PjtcbiAgLy8gQElucHV0KCkgc29ydGluZ0ljb25Bc2NlbmRpbmc/OiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjxhbnk+O1xuICAvLyBASW5wdXQoKSBzb3J0aW5nSWNvbkRlc2NlbmRpbmc/OiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIEBPdXRwdXQoKSBjb2x1bW5GaWx0ZXJTdGF0ZUNoYW5nZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgQE91dHB1dCgpIHNvcnRlclN0YXRlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBAT3V0cHV0KCkgc2VsZWN0QWxsQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBnZXQgaG9zdENsYXNzZXMoKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHRoZWFkOiB0aGlzLmNvbXBvbmVudCA9PT0gJ3RoZWFkJyxcbiAgICAgIHRmb290OiB0aGlzLmNvbXBvbmVudCA9PT0gJ3Rmb290J1xuICAgIH07XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmNvbHVtbnM/LmZvckVhY2goKGNvbHVtbiwgaW5kZXgpID0+IHtcbiAgICAgIGNvbnN0IGNvbHVtbktleSA9IHRoaXMuY29sdW1uS2V5KGNvbHVtbik7XG4gICAgICB0aGlzLmNvbHVtbkZpbHRlclN0YXRlW2NvbHVtbktleV0gPSB0aGlzLmNvbHVtbkZpbHRlclN0YXRlW2NvbHVtbktleV0gPz8gJyc7XG4gICAgfSk7XG4gIH1cblxuICB0YWJsZUhlYWRlckNlbGxQcm9wcyhjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcpIHtcbiAgICBpZiAodHlwZW9mIGNvbHVtbiA9PT0gJ29iamVjdCcgJiYgY29sdW1uLl9wcm9wcykge1xuICAgICAgY29uc3QgeyBjb2xvciwgLi4ucHJvcHMgfSA9IHsgLi4uY29sdW1uLl9wcm9wcyB9O1xuICAgICAgcmV0dXJuIHByb3BzO1xuICAgIH1cbiAgICByZXR1cm4ge307XG4gIH1cblxuICB0YWJsZUhlYWRlckNlbGxDb2xvcihjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcpIHtcbiAgICBpZiAodHlwZW9mIGNvbHVtbiA9PT0gJ29iamVjdCcgJiYgY29sdW1uLl9wcm9wcykge1xuICAgICAgY29uc3QgeyBjb2xvciB9ID0geyAuLi5jb2x1bW4uX3Byb3BzIH07XG4gICAgICByZXR1cm4gY29sb3I7XG4gICAgfVxuICAgIHJldHVybiAnJztcbiAgfVxuXG4gIHRhYmxlSGVhZGVyQ2VsbFN0eWxlcyhjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcpIHtcbiAgICBjb25zdCBzdHlsZSA9IHsgdmVydGljYWxBbGlnbjogJ21pZGRsZScsIG92ZXJmbG93OiAnaGlkZGVuJywgY3Vyc29yOiAnJyB9O1xuICAgIGlmIChcbiAgICAgIHRoaXMuY29sdW1uU29ydGVyICYmXG4gICAgICAodHlwZW9mIGNvbHVtbiAhPT0gJ29iamVjdCcgfHxcbiAgICAgICAgKHR5cGVvZiBjb2x1bW4gPT09ICdvYmplY3QnICYmICh0eXBlb2YgY29sdW1uLnNvcnRlciA9PT0gJ3VuZGVmaW5lZCcgfHwgY29sdW1uLnNvcnRlcikpKVxuICAgICkge1xuICAgICAgc3R5bGUuY3Vyc29yID0gJ3BvaW50ZXInO1xuICAgIH1cblxuICAgIGlmICh0eXBlb2YgY29sdW1uID09PSAnb2JqZWN0JyAmJiBjb2x1bW4uX3N0eWxlKSB7XG4gICAgICByZXR1cm4geyAuLi5zdHlsZSwgLi4uY29sdW1uLl9zdHlsZSB9O1xuICAgIH1cbiAgICByZXR1cm4gc3R5bGU7XG4gIH1cblxuICBjb2x1bW5MYWJlbChjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcpIHtcbiAgICByZXR1cm4gdHlwZW9mIGNvbHVtbiA9PT0gJ29iamVjdCcgPyBjb2x1bW4ubGFiZWwgIT09IHVuZGVmaW5lZCA/IGNvbHVtbi5sYWJlbCA6IHRoaXMucHJldHRpZnlOYW1lKGNvbHVtbi5rZXkpIDogdGhpcy5wcmV0dGlmeU5hbWUoY29sdW1uKTtcbiAgfVxuXG4gIGNvbHVtbktleShjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcpIHtcbiAgICByZXR1cm4gdHlwZW9mIGNvbHVtbiA9PT0gJ29iamVjdCcgPyBjb2x1bW4ua2V5IDogY29sdW1uO1xuICB9XG5cbiAgZ2V0Q29sdW1uU29ydGVyU3RhdGUoY29sdW1uOiBJQ29sdW1uIHwgc3RyaW5nKSB7XG4gICAgY29uc3QgY29sdW1uS2V5ID0gdGhpcy5jb2x1bW5LZXkoY29sdW1uKTtcbiAgICBpZiAodGhpcy5zb3J0ZXJWYWx1ZT8uY29sdW1uID09PSBjb2x1bW5LZXkpIHtcbiAgICAgIGlmICh0aGlzLnNvcnRlclZhbHVlLnN0YXRlKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnNvcnRlclZhbHVlLnN0YXRlO1xuICAgICAgfVxuICAgICAgcmV0dXJuIDA7XG4gICAgfVxuICAgIHJldHVybiAwO1xuICB9XG5cbiAgcHJldHRpZnlOYW1lKG5hbWU6IHN0cmluZykge1xuICAgIHJldHVybiBuYW1lXG4gICAgICAucmVwbGFjZSgvWy1fLl0vZywgJyAnKVxuICAgICAgLnJlcGxhY2UoLyArL2csICcgJylcbiAgICAgIC5yZXBsYWNlKC8oW2EtejAtOV0pKFtBLVpdKS9nLCAnJDEgJDInKVxuICAgICAgLnNwbGl0KCcgJylcbiAgICAgIC5tYXAoKHdvcmQpID0+IHdvcmQuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkgKyB3b3JkLnNsaWNlKDEpKVxuICAgICAgLmpvaW4oJyAnKTtcbiAgfVxuXG4gIGhhbmRsZVNvcnRDbGljayhjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcsIGk6IG51bWJlcikge1xuICAgIGlmICh0aGlzLmNvbHVtblNvcnRlckVuYWJsZWQoY29sdW1uKSkge1xuICAgICAgY29uc3QgY29sdW1uS2V5ID0gdGhpcy5jb2x1bW5LZXkoY29sdW1uKTtcbiAgICAgIHRoaXMuc29ydGVyU3RhdGVDaGFuZ2UuZW1pdCh7IGNvbHVtbktleSwgaW5kZXg6IGkgfSk7XG4gICAgfVxuICB9XG5cbiAgY29sdW1uRmlsdGVyRW5hYmxlZChjb2x1bW46IElDb2x1bW4gfCBzdHJpbmcpIHtcbiAgICByZXR1cm4gdHlwZW9mIGNvbHVtbiAhPT0gJ29iamVjdCcgPyB0cnVlIDogdHlwZW9mIGNvbHVtbi5maWx0ZXIgPT09ICd1bmRlZmluZWQnID8gdHJ1ZSA6IGNvbHVtbi5maWx0ZXI7XG4gIH1cblxuICBjb2x1bW5Tb3J0ZXJFbmFibGVkKGNvbHVtbjogSUNvbHVtbiB8IHN0cmluZykge1xuICAgIGlmICghdGhpcy5jb2x1bW5Tb3J0ZXIpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgcmV0dXJuICh0eXBlb2YgY29sdW1uICE9PSAnb2JqZWN0JykgPyB0cnVlIDogdHlwZW9mIGNvbHVtbi5zb3J0ZXIgPT09ICd1bmRlZmluZWQnID8gdHJ1ZSA6IGNvbHVtbi5zb3J0ZXI7XG4gIH1cblxuICBoYW5kbGVDb2x1bW5GaWx0ZXJWYWx1ZUNoYW5nZSgkZXZlbnQ6IHsgdmFsdWU6IHN0cmluZywgdHlwZT86IHN0cmluZywgY29sdW1uOiAoSUNvbHVtbiB8IHN0cmluZykgfSkge1xuICAgIGNvbnN0IHsgdmFsdWUsIHR5cGU6IGV2ZW50VHlwZSwgY29sdW1uIH0gPSB7IC4uLiRldmVudCB9O1xuICAgIGNvbnN0IGNvbHVtbktleSA9IHRoaXMuY29sdW1uS2V5KGNvbHVtbik7XG4gICAgY29uc3QgY29sdW1uRmlsdGVyVmFsdWUgPSB2YWx1ZTtcbiAgICBjb25zdCBpc0xhenkgPSB0eXBlb2YgdGhpcy5jb2x1bW5GaWx0ZXIgPT09ICdvYmplY3QnICYmIHRoaXMuY29sdW1uRmlsdGVyLmxhenkgPT09IHRydWU7XG4gICAgaWYgKCgoaXNMYXp5ICYmIGV2ZW50VHlwZSA9PT0gJ2lucHV0JykgfHwgKCFpc0xhenkgJiYgZXZlbnRUeXBlID09PSAnY2hhbmdlJykpICYmIGNvbHVtbkZpbHRlclZhbHVlLmxlbmd0aCAhPT0gMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLmNvbHVtbkZpbHRlclN0YXRlW3RoaXMuY29sdW1uS2V5KGNvbHVtbildID0gY29sdW1uRmlsdGVyVmFsdWU7XG4gICAgdGhpcy5jb2x1bW5GaWx0ZXJTdGF0ZUNoYW5nZS5lbWl0KHsgY29sdW1uOiBjb2x1bW5LZXksIHZhbHVlOiBjb2x1bW5GaWx0ZXJWYWx1ZSwgdHlwZTogZXZlbnRUeXBlIH0pO1xuICB9XG5cbiAgaGFuZGxlU2VsZWN0QWxsQ2hlY2tlZCgkZXZlbnQ6IEV2ZW50KSB7XG4gICAgY29uc3Qgc2VsZWN0QWxsID0gKCRldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkuY2hlY2tlZDtcbiAgICB0aGlzLnNlbGVjdEFsbENoYW5nZS5lbWl0KHNlbGVjdEFsbCk7XG4gIH1cblxuICBnZXRDb2x1bW5GaWx0ZXIoY29sdW1uOiBJQ29sdW1uIHwgc3RyaW5nKSB7XG4gICAgcmV0dXJuIGBjb2x1bW5GaWx0ZXJfJHt0aGlzLmNvbHVtbktleShjb2x1bW4pID8/ICdfdW5kZWZpbmVkJ31gO1xuICB9XG5cbiAgZ2V0IGNvbHVtbkZpbHRlckV2ZW50KCk6ICdjaGFuZ2UnIHwgJ2lucHV0JyB7XG4gICAgcmV0dXJuICh0eXBlb2YgdGhpcy5jb2x1bW5GaWx0ZXIgPT09ICdvYmplY3QnICYmIHRoaXMuY29sdW1uRmlsdGVyLmxhenkpID8gJ2NoYW5nZScgOiAnaW5wdXQnO1xuICB9O1xuXG5cbn1cbiIsIjx0cj5cbiAgPHRoICpuZ0lmPVwic2VsZWN0YWJsZVwiPlxuICAgIDxpbnB1dCAoY2hhbmdlKT1cImhhbmRsZVNlbGVjdEFsbENoZWNrZWQoJGV2ZW50KVwiXG4gICAgICAgICAgIFtjaGVja2VkXT1cInNlbGVjdEFsbCA9PT0gdHJ1ZVwiXG4gICAgICAgICAgIFtpbmRldGVybWluYXRlXT1cInNlbGVjdEFsbCA9PT0gJ2luZGV0ZXJtaW5hdGUnXCJcbiAgICAgICAgICAgY0Zvcm1DaGVja0lucHV0PlxuICA8L3RoPlxuICA8dGhcbiAgICAoY2xpY2spPVwiaGFuZGxlU29ydENsaWNrKGNvbHVtbiwgaSlcIlxuICAgICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgY29sdW1uczsgbGV0IGkgPSBpbmRleFwiXG4gICAgW2NIdG1sQXR0cl09XCJ0YWJsZUhlYWRlckNlbGxQcm9wcyhjb2x1bW4pXCJcbiAgICBbY1RhYmxlQ29sb3JdPVwidGFibGVIZWFkZXJDZWxsQ29sb3IoY29sdW1uKVwiXG4gICAgW25nU3R5bGVdPVwidGFibGVIZWFkZXJDZWxsU3R5bGVzKGNvbHVtbilcIlxuICA+XG4gICAgPGRpdiBjbGFzcz1cImQtaW5saW5lXCI+e3sgY29sdW1uTGFiZWwoY29sdW1uKSB9fTwvZGl2PlxuICAgIDxuZy10ZW1wbGF0ZSBbbmdJZl09XCJjb2x1bW5Tb3J0ZXIgJiYgY29sdW1uU29ydGVyRW5hYmxlZChjb2x1bW4pXCI+XG4gICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29sdW1uU29ydGVySWNvblRlbXBsYXRlOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogZ2V0Q29sdW1uU29ydGVyU3RhdGUoY29sdW1uKSB9XCJcbiAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L3RoPlxuPC90cj5cbjx0ciAqbmdJZj1cImNvbHVtbkZpbHRlclwiPlxuICA8dGggKm5nSWY9XCJzZWxlY3RhYmxlXCI+PC90aD5cbiAgPHRoICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgY29sdW1uczsgbGV0IGkgPSBpbmRleFwiXG4gICAgICBbY0h0bWxBdHRyXT1cInRhYmxlSGVhZGVyQ2VsbFByb3BzKGNvbHVtbilcIlxuICAgICAgW2NUYWJsZUNvbG9yXT1cInRhYmxlSGVhZGVyQ2VsbENvbG9yKGNvbHVtbilcIlxuICAgICAgW25nU3R5bGVdPVwidGFibGVIZWFkZXJDZWxsU3R5bGVzKGNvbHVtbilcIlxuICA+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbHVtbkZpbHRlclRlbXBsYXRlc1tnZXRDb2x1bW5GaWx0ZXIoY29sdW1uKV0gPz8gZGVmYXVsdENvbHVtbkZpbHRlcjsgY29udGV4dDogeyRpbXBsaWNpdDogY29sdW1uLCBoZWFkZXI6IHRoaXN9XCI+PC9uZy1jb250YWluZXI+XG4gICAgPG5nLXRlbXBsYXRlICNkZWZhdWx0Q29sdW1uRmlsdGVyIGxldC1jb2x1bW4+XG4gICAgICA8Yy1zbWFydC10YWJsZS1jb2x1bW4tZmlsdGVyXG4gICAgICAgICh2YWx1ZUNoYW5nZSk9XCJoYW5kbGVDb2x1bW5GaWx0ZXJWYWx1ZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgKm5nSWY9XCJjb2x1bW5GaWx0ZXJFbmFibGVkKGNvbHVtbilcIlxuICAgICAgICBbY29sdW1uXT1cImNvbHVtblwiXG4gICAgICAgIFtkZWxheV09XCIzMDBcIlxuICAgICAgICBbb25FdmVudF09XCJjb2x1bW5GaWx0ZXJFdmVudFwiXG4gICAgICAgIFt2YWx1ZV09XCJjb2x1bW5GaWx0ZXJTdGF0ZVtjb2x1bW5LZXkoY29sdW1uKV0gPz8gJydcIlxuICAgICAgICBjRmlsdGVySW5wdXRcbiAgICAgICAgc2l6aW5nPVwic21cIlxuICAgICAgPjwvYy1zbWFydC10YWJsZS1jb2x1bW4tZmlsdGVyPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvdGg+XG48L3RyPlxuXG48bmctdGVtcGxhdGUgI2NvbHVtblNvcnRlckljb25UZW1wbGF0ZSBsZXQtY29sdW1uU29ydGVyU3RhdGU+XG4gIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cImNvbHVtblNvcnRlclN0YXRlXCI+XG4gICAgPHNwYW4gKm5nU3dpdGNoQ2FzZT1cIidhc2MnXCIgY2xhc3M9XCJmbG9hdC1lbmQgbWUtMVwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInNvcnRpbmdJY29uQXNjZW5kaW5nVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L3NwYW4+XG4gICAgPHNwYW4gKm5nU3dpdGNoQ2FzZT1cIidkZXNjJ1wiIGNsYXNzPVwiZmxvYXQtZW5kIG1lLTFcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJzb3J0aW5nSWNvbkRlc2NlbmRpbmdUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvc3Bhbj5cbiAgICA8c3BhbiAqbmdTd2l0Y2hEZWZhdWx0IGNsYXNzPVwib3BhY2l0eS0yNSBmbG9hdC1lbmQgbWUtMVwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInNvcnRpbmdJY29uVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L3NwYW4+XG4gIDwvbmctY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cblxuPCEtLXRvZG86IHNvcnRpbmdJY29uQ3VzdG9tIFRlbXBsYXRlcy0tPlxuPG5nLXRlbXBsYXRlICNzb3J0aW5nSWNvblRlbXBsYXRlPlxuICA8c3ZnXG4gICAgY2xhc3M9XCJpY29uIGljb24tY3VzdG9tLXNpemVcIlxuICAgIHJvbGU9XCJpbWdcIlxuICAgIHZpZXdCb3g9XCIwIDAgNTEyIDUxMlwiXG4gICAgd2lkdGg9XCIxOFwiXG4gICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gID5cbiAgICA8cG9seWdvblxuICAgICAgY2xhc3M9XCJjaS1wcmltYXJ5XCJcbiAgICAgIGZpbGw9XCJ2YXIoLS1jaS1wcmltYXJ5LWNvbG9yLCBjdXJyZW50Q29sb3IpXCJcbiAgICAgIHBvaW50cz1cIjM4NCA0MzMuMzczIDM4NCAxNjAgMzUyIDE2MCAzNTIgNDM0LjUxIDI4Mi4xNzcgMzY0LjY4NyAyNTkuNTUgMzg3LjMxMyAzNjcuNDMyIDQ5NS4xOTYgNDc1LjMxMyAzODcuMzEzIDQ1Mi42ODcgMzY0LjY4NyAzODQgNDMzLjM3M1wiXG4gICAgPjwvcG9seWdvbj5cbiAgICA8cG9seWdvblxuICAgICAgY2xhc3M9XCJjaS1wcmltYXJ5XCJcbiAgICAgIGZpbGw9XCJ2YXIoLS1jaS1wcmltYXJ5LWNvbG9yLCBjdXJyZW50Q29sb3IpXCJcbiAgICAgIHBvaW50cz1cIjE1OS40MzIgMTcuMzcyIDUxLjU1IDEyNS4yNTUgNzQuMTc3IDE0Ny44ODIgMTQ0IDc4LjA1OSAxNDQgMzUyIDE3NiAzNTIgMTc2IDc5LjE5NSAyNDQuNjg3IDE0Ny44ODIgMjY3LjMxMyAxMjUuMjU1IDE1OS40MzIgMTcuMzcyXCJcbiAgICA+PC9wb2x5Z29uPlxuICA8L3N2Zz5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjc29ydGluZ0ljb25Bc2NlbmRpbmdUZW1wbGF0ZT5cbiAgPHN2Z1xuICAgIGNsYXNzPVwiaWNvbiBpY29uLWN1c3RvbS1zaXplXCJcbiAgICByb2xlPVwiaW1nXCJcbiAgICB2aWV3Qm94PVwiMCAwIDUxMiA1MTJcIlxuICAgIHdpZHRoPVwiMThcIlxuICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICA+XG4gICAgPHBvbHlnb25cbiAgICAgIGNsYXNzPVwiY2ktcHJpbWFyeVwiXG4gICAgICBmaWxsPVwidmFyKC0tY2ktcHJpbWFyeS1jb2xvciwgY3VycmVudENvbG9yKVwiXG4gICAgICBwb2ludHM9XCIzOTAuNjI0IDE1MC42MjUgMjU2IDE2IDEyMS4zNzYgMTUwLjYyNSAxNDQuMDA0IDE3My4yNTIgMjQwLjAwMSA3Ny4yNTQgMjQwLjAwMSA0OTUuMjM2IDI3Mi4wMDEgNDk1LjIzNiAyNzIuMDAxIDc3LjI1NyAzNjcuOTk2IDE3My4yNTIgMzkwLjYyNCAxNTAuNjI1XCJcbiAgICA+PC9wb2x5Z29uPlxuICA8L3N2Zz5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjc29ydGluZ0ljb25EZXNjZW5kaW5nVGVtcGxhdGU+XG4gIDxzdmdcbiAgICBjbGFzcz1cImljb24gaWNvbi1jdXN0b20tc2l6ZVwiXG4gICAgcm9sZT1cImltZ1wiXG4gICAgdmlld0JveD1cIjAgMCA1MTIgNTEyXCJcbiAgICB3aWR0aD1cIjE4XCJcbiAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgPlxuICAgIDxwb2x5Z29uXG4gICAgICBjbGFzcz1cImNpLXByaW1hcnlcIlxuICAgICAgZmlsbD1cInZhcigtLWNpLXByaW1hcnktY29sb3IsIGN1cnJlbnRDb2xvcilcIlxuICAgICAgcG9pbnRzPVwiMzY3Ljk5NyAzMzguNzUgMjcxLjk5OSA0MzQuNzQ3IDI3MS45OTkgMTcuNTAzIDIzOS45OTkgMTcuNTAzIDIzOS45OTkgNDM0Ljc0NSAxNDQuMDAzIDMzOC43NSAxMjEuMzc2IDM2MS4zNzcgMjU2IDQ5NiAzOTAuNjI0IDM2MS4zNzcgMzY3Ljk5NyAzMzguNzVcIlxuICAgID48L3BvbHlnb24+XG4gIDwvc3ZnPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
@@ -13,6 +13,8 @@ import { SmartTableFilterComponent } from './smart-table-filter/smart-table-filt
|
|
|
13
13
|
import { SmartTableItemsPerPageSelectorComponent } from './smart-table-items-per-page-selector/smart-table-items-per-page-selector.component';
|
|
14
14
|
import { SmartTableHeadComponent } from './smart-table-head/smart-table-head.component';
|
|
15
15
|
import { UtilitiesModule } from '../utilities';
|
|
16
|
+
import { SmartTableColumnFilterComponent } from './smart-table-column-filter/smart-table-column-filter.component';
|
|
17
|
+
import { FilterInputDirective } from './smart-table-filter/filter-input.directive';
|
|
16
18
|
import * as i0 from "@angular/core";
|
|
17
19
|
export class SmartTableModule {
|
|
18
20
|
}
|
|
@@ -20,7 +22,9 @@ SmartTableModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version
|
|
|
20
22
|
SmartTableModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.4", ngImport: i0, type: SmartTableModule, declarations: [SmartTableComponent,
|
|
21
23
|
SmartTableFilterComponent,
|
|
22
24
|
SmartTableItemsPerPageSelectorComponent,
|
|
23
|
-
SmartTableHeadComponent
|
|
25
|
+
SmartTableHeadComponent,
|
|
26
|
+
FilterInputDirective,
|
|
27
|
+
SmartTableColumnFilterComponent], imports: [CommonModule,
|
|
24
28
|
ElementCoverModule,
|
|
25
29
|
TableModule,
|
|
26
30
|
PaginationModule,
|
|
@@ -50,6 +54,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
|
|
|
50
54
|
SmartTableFilterComponent,
|
|
51
55
|
SmartTableItemsPerPageSelectorComponent,
|
|
52
56
|
SmartTableHeadComponent,
|
|
57
|
+
FilterInputDirective,
|
|
58
|
+
SmartTableColumnFilterComponent
|
|
53
59
|
],
|
|
54
60
|
exports: [SmartTableComponent, SmartTableFilterComponent],
|
|
55
61
|
imports: [
|
|
@@ -67,4 +73,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
|
|
|
67
73
|
]
|
|
68
74
|
}]
|
|
69
75
|
}] });
|
|
70
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtdGFibGUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZXVpLWFuZ3VsYXIvc3JjL2xpYi9zbWFydC10YWJsZS9zbWFydC10YWJsZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWxFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDekMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN2QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUNyQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzVELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQzlGLE9BQU8sRUFDTCx1Q0FBdUMsRUFDeEMsTUFBTSxxRkFBcUYsQ0FBQztBQUM3RixPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUN4RixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQy9DLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLGlFQUFpRSxDQUFDO0FBQ2xILE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDOztBQTBCbkYsTUFBTSxPQUFPLGdCQUFnQjs7NkdBQWhCLGdCQUFnQjs4R0FBaEIsZ0JBQWdCLGlCQXRCekIsbUJBQW1CO1FBQ25CLHlCQUF5QjtRQUN6Qix1Q0FBdUM7UUFDdkMsdUJBQXVCO1FBQ3ZCLG9CQUFvQjtRQUNwQiwrQkFBK0IsYUFJL0IsWUFBWTtRQUNaLGtCQUFrQjtRQUNsQixXQUFXO1FBQ1gsZ0JBQWdCO1FBQ2hCLHFCQUFxQjtRQUNyQixVQUFVO1FBQ1YsV0FBVztRQUNYLFlBQVk7UUFDWixZQUFZO1FBQ1osbUJBQW1CO1FBQ25CLGVBQWUsYUFaUCxtQkFBbUIsRUFBRSx5QkFBeUI7OEdBZTdDLGdCQUFnQixZQWJ6QixZQUFZO1FBQ1osa0JBQWtCO1FBQ2xCLFdBQVc7UUFDWCxnQkFBZ0I7UUFDaEIscUJBQXFCO1FBQ3JCLFVBQVU7UUFDVixXQUFXO1FBQ1gsWUFBWTtRQUNaLFlBQVk7UUFDWixtQkFBbUI7UUFDbkIsZUFBZTsyRkFHTixnQkFBZ0I7a0JBeEI1QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixtQkFBbUI7d0JBQ25CLHlCQUF5Qjt3QkFDekIsdUNBQXVDO3dCQUN2Qyx1QkFBdUI7d0JBQ3ZCLG9CQUFvQjt3QkFDcEIsK0JBQStCO3FCQUNoQztvQkFDRCxPQUFPLEVBQUUsQ0FBQyxtQkFBbUIsRUFBRSx5QkFBeUIsQ0FBQztvQkFDekQsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osa0JBQWtCO3dCQUNsQixXQUFXO3dCQUNYLGdCQUFnQjt3QkFDaEIscUJBQXFCO3dCQUNyQixVQUFVO3dCQUNWLFdBQVc7d0JBQ1gsWUFBWTt3QkFDWixZQUFZO3dCQUNaLG1CQUFtQjt3QkFDbkIsZUFBZTtxQkFDaEI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBTaGFyZWRNb2R1bGUgfSBmcm9tICcuLi9zaGFyZWQnO1xuaW1wb3J0IHsgRWxlbWVudENvdmVyTW9kdWxlIH0gZnJvbSAnLi4vZWxlbWVudC1jb3Zlcic7XG5pbXBvcnQgeyBUYWJsZU1vZHVsZSB9IGZyb20gJy4uL3RhYmxlJztcbmltcG9ydCB7IFBhZ2luYXRpb25Nb2R1bGUgfSBmcm9tICcuLi9wYWdpbmF0aW9uJztcbmltcG9ydCB7IEZvcm1Nb2R1bGUgfSBmcm9tICcuLi9mb3JtJztcbmltcG9ydCB7IEJ1dHRvbk1vZHVsZSB9IGZyb20gJy4uL2J1dHRvbic7XG5pbXBvcnQgeyBTbWFydFBhZ2luYXRpb25Nb2R1bGUgfSBmcm9tICcuLi9zbWFydC1wYWdpbmF0aW9uJztcbmltcG9ydCB7IFNtYXJ0VGFibGVDb21wb25lbnQgfSBmcm9tICcuL3NtYXJ0LXRhYmxlL3NtYXJ0LXRhYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTbWFydFRhYmxlRmlsdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9zbWFydC10YWJsZS1maWx0ZXIvc21hcnQtdGFibGUtZmlsdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICBTbWFydFRhYmxlSXRlbXNQZXJQYWdlU2VsZWN0b3JDb21wb25lbnRcbn0gZnJvbSAnLi9zbWFydC10YWJsZS1pdGVtcy1wZXItcGFnZS1zZWxlY3Rvci9zbWFydC10YWJsZS1pdGVtcy1wZXItcGFnZS1zZWxlY3Rvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgU21hcnRUYWJsZUhlYWRDb21wb25lbnQgfSBmcm9tICcuL3NtYXJ0LXRhYmxlLWhlYWQvc21hcnQtdGFibGUtaGVhZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVXRpbGl0aWVzTW9kdWxlIH0gZnJvbSAnLi4vdXRpbGl0aWVzJztcbmltcG9ydCB7IFNtYXJ0VGFibGVDb2x1bW5GaWx0ZXJDb21wb25lbnQgfSBmcm9tICcuL3NtYXJ0LXRhYmxlLWNvbHVtbi1maWx0ZXIvc21hcnQtdGFibGUtY29sdW1uLWZpbHRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRmlsdGVySW5wdXREaXJlY3RpdmUgfSBmcm9tICcuL3NtYXJ0LXRhYmxlLWZpbHRlci9maWx0ZXItaW5wdXQuZGlyZWN0aXZlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgU21hcnRUYWJsZUNvbXBvbmVudCxcbiAgICBTbWFydFRhYmxlRmlsdGVyQ29tcG9uZW50LFxuICAgIFNtYXJ0VGFibGVJdGVtc1BlclBhZ2VTZWxlY3RvckNvbXBvbmVudCxcbiAgICBTbWFydFRhYmxlSGVhZENvbXBvbmVudCxcbiAgICBGaWx0ZXJJbnB1dERpcmVjdGl2ZSxcbiAgICBTbWFydFRhYmxlQ29sdW1uRmlsdGVyQ29tcG9uZW50XG4gIF0sXG4gIGV4cG9ydHM6IFtTbWFydFRhYmxlQ29tcG9uZW50LCBTbWFydFRhYmxlRmlsdGVyQ29tcG9uZW50XSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBFbGVtZW50Q292ZXJNb2R1bGUsXG4gICAgVGFibGVNb2R1bGUsXG4gICAgUGFnaW5hdGlvbk1vZHVsZSxcbiAgICBTbWFydFBhZ2luYXRpb25Nb2R1bGUsXG4gICAgRm9ybU1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBCdXR0b25Nb2R1bGUsXG4gICAgU2hhcmVkTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgVXRpbGl0aWVzTW9kdWxlXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgU21hcnRUYWJsZU1vZHVsZSB7XG59XG4iXX0=
|
|
@@ -128,4 +128,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImpor
|
|
|
128
128
|
type: HostBinding,
|
|
129
129
|
args: ['class']
|
|
130
130
|
}] } });
|
|
131
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3Rlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3RvYXN0L3RvYXN0ZXIvdG9hc3Rlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3RvYXN0L3RvYXN0ZXIvdG9hc3Rlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUVULGVBQWUsRUFFZixXQUFXLEVBRVgsS0FBSyxFQU1MLFNBQVMsRUFDVCxnQkFBZ0IsRUFDakIsTUFBTSxlQUFlLENBQUM7QUFJdkIsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7O0FBRTFELE1BQU0sQ0FBTixJQUFZLGdCQVdYO0FBWEQsV0FBWSxnQkFBZ0I7SUFDMUIscUNBQWlCLENBQUE7SUFDakIsMENBQXNCLENBQUE7SUFDdEIsNENBQXdCLENBQUE7SUFDeEIsc0NBQWtCLENBQUE7SUFDbEIsZ0RBQTRCLENBQUE7SUFDNUIsa0RBQThCLENBQUE7SUFDOUIsNENBQXdCLENBQUE7SUFDeEIsZ0RBQTRCLENBQUE7SUFDNUIsa0RBQThCLENBQUE7SUFDOUIsNENBQXdCLENBQUE7QUFDMUIsQ0FBQyxFQVhXLGdCQUFnQixLQUFoQixnQkFBZ0IsUUFXM0I7QUFvQkQsTUFBTSxPQUFPLGdCQUFnQjtJQXNCM0IsWUFDVSxXQUF1QixFQUN2QixRQUFtQixFQUNuQixjQUE4QjtRQUY5QixnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQUN2QixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQXRCeEMsZUFBVSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUU3QyxrQkFBYSxHQUFVLEVBQUUsQ0FBQztRQUUxQjs7O1dBR0c7UUFDTSxjQUFTLEdBQXNCLGdCQUFnQixDQUFDLE1BQU0sQ0FBQztRQUVoRTs7O1dBR0c7UUFDTSxhQUFRLEdBQStDLFVBQVUsQ0FBQztJQVN2RSxDQUFDO0lBRUwsSUFDSSxXQUFXO1FBQ2IsT0FBTztZQUNMLE9BQU8sRUFBRSxJQUFJO1lBQ2IsaUJBQWlCLEVBQUUsSUFBSTtZQUN2QixDQUFDLFlBQVksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRO1lBQzlDLE9BQU8sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUM7WUFDdkMsUUFBUSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQztZQUMzQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDO1lBQzdDLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUM7WUFDM0MsVUFBVSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQztZQUM3QyxPQUFPLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDO1lBQ3ZDLG9CQUFvQixFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDO1lBQzdGLG9CQUFvQixFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDO1lBQzdGLGtCQUFrQixFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQztTQUMzRixDQUFDO0lBQ0osQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELHFCQUFxQjtRQUNuQixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDbkMsQ0FBQztJQUVELFFBQVEsQ0FBQyxLQUFVLEVBQUUsS0FBVSxFQUFFLE9BQW1IO1FBQ2xKLE1BQU0sWUFBWSxHQUFzQixJQUFJLENBQUMsV0FBVyxDQUFDLGdCQUFnQixDQUFDLGVBQWUsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDMUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDdEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDdkQsS0FBSyxNQUFNLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDaEQsWUFBWSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUM7U0FDcEM7UUFDRCxZQUFZLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDcEQsWUFBWSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsR0FBRyxJQUFJLENBQUM7UUFDeEMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsR0FBRyxLQUFLLENBQUM7UUFDdkMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsR0FBRyxJQUFJLENBQUM7UUFDeEMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbEQsWUFBWSxDQUFDLGlCQUFpQixFQUFFLGFBQWEsRUFBRSxDQUFDO1FBQ2hELE9BQU8sWUFBWSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxXQUFXLENBQUMsS0FBcUI7UUFDL0IsSUFBSSxDQUFDLGFBQWEsRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDakMsSUFBSSxLQUFLLENBQUMsS0FBSyxFQUFFLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEtBQUssS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUMzRCxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7Z0JBQzlCLElBQUksQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUMzQyxVQUFVLENBQUMsR0FBRyxFQUFFO29CQUNkLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDakIsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO2FBQ1Q7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzFCLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEtBQUssS0FBSyxDQUFDLEtBQUssRUFBRSxXQUFXLENBQUMsYUFBYSxFQUFFO2dCQUN6RSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUU7b0JBQ3pCLGFBQWE7b0JBQ2IsS0FBSyxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO2lCQUM3QjthQUNGO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8scUJBQXFCLENBQUMsWUFBcUIsSUFBSTtRQUNyRCxJQUFJLFNBQVMsRUFBRTtZQUNiLElBQUksQ0FBQyx3QkFBd0IsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtnQkFDcEYsSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLEtBQUssRUFBRTtvQkFDeEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztpQkFDekI7Z0JBQ0QsSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLElBQUksSUFBSSxLQUFLLENBQUMsS0FBSyxFQUFFLE9BQU8sS0FBSyxTQUFTLEVBQUU7aUJBQzlEO1lBQ0gsQ0FBQyxDQUFDLENBQUM7U0FDSjthQUFNO1lBQ0wsSUFBSSxDQUFDLHdCQUF3QixDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQzdDO0lBQ0gsQ0FBQzs7NkdBM0dVLGdCQUFnQjtpR0FBaEIsZ0JBQWdCLGdNQW9CVixjQUFjLFFBQVUsZ0JBQWdCLDBFQUQ5QyxvQkFBb0Isc0ZDekVqQyx3RkFFQTsyRkRvRGEsZ0JBQWdCO2tCQUw1QixTQUFTOytCQUNFLFdBQVcsWUFFWCxVQUFVO3NKQWFYLFNBQVM7c0JBQWpCLEtBQUs7Z0JBTUcsUUFBUTtzQkFBaEIsS0FBSztnQkFFNkMsV0FBVztzQkFBN0QsU0FBUzt1QkFBQyxvQkFBb0IsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBQ1ksYUFBYTtzQkFBekUsZUFBZTt1QkFBQyxjQUFjLEVBQUUsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBU3ZELFdBQVc7c0JBRGQsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50Q2hlY2tlZCxcbiAgQ29tcG9uZW50LFxuICBDb21wb25lbnRSZWYsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgRWxlbWVudFJlZixcbiAgSG9zdEJpbmRpbmcsXG4gIEluamVjdG9yLFxuICBJbnB1dCxcbiAgTmdNb2R1bGVSZWYsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBRdWVyeUxpc3QsXG4gIFJlbmRlcmVyMixcbiAgVmlld0NoaWxkLFxuICBWaWV3Q29udGFpbmVyUmVmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IElUb2FzdGVyQWN0aW9uLCBUb2FzdGVyU2VydmljZSB9IGZyb20gJy4vdG9hc3Rlci5zZXJ2aWNlJztcbmltcG9ydCB7IFRvYXN0ZXJIb3N0RGlyZWN0aXZlIH0gZnJvbSAnLi90b2FzdGVyLWhvc3QuZGlyZWN0aXZlJztcbmltcG9ydCB7IFRvYXN0Q29tcG9uZW50IH0gZnJvbSAnLi4vdG9hc3QvdG9hc3QuY29tcG9uZW50JztcblxuZXhwb3J0IGVudW0gVG9hc3RlclBsYWNlbWVudCB7XG4gIFN0YXRpYyA9ICdzdGF0aWMnLFxuICBUb3BTdGFydCA9ICd0b3Atc3RhcnQnLFxuICBUb3BDZW50ZXIgPSAndG9wLWNlbnRlcicsXG4gIFRvcEVuZCA9ICd0b3AtZW5kJyxcbiAgTWlkZGxlU3RhcnQgPSAnbWlkZGxlLXN0YXJ0JyxcbiAgTWlkZGxlQ2VudGVyID0gJ21pZGRsZS1jZW50ZXInLFxuICBNaWRkbGVFbmQgPSAnbWlkZGxlLWVuZCcsXG4gIEJvdHRvbVN0YXJ0ID0gJ2JvdHRvbS1zdGFydCcsXG4gIEJvdHRvbUNlbnRlciA9ICdib3R0b20tY2VudGVyJyxcbiAgQm90dG9tRW5kID0gJ2JvdHRvbS1lbmQnLFxufVxuXG5leHBvcnQgdHlwZSBUVG9hc3RlclBsYWNlbWVudCA9XG4gIHwgVG9hc3RlclBsYWNlbWVudC5TdGF0aWNcbiAgfCBUb2FzdGVyUGxhY2VtZW50LlRvcFN0YXJ0XG4gIHwgVG9hc3RlclBsYWNlbWVudC5Ub3BDZW50ZXJcbiAgfCBUb2FzdGVyUGxhY2VtZW50LlRvcEVuZFxuICB8IFRvYXN0ZXJQbGFjZW1lbnQuTWlkZGxlU3RhcnRcbiAgfCBUb2FzdGVyUGxhY2VtZW50Lk1pZGRsZUNlbnRlclxuICB8IFRvYXN0ZXJQbGFjZW1lbnQuTWlkZGxlRW5kXG4gIHwgVG9hc3RlclBsYWNlbWVudC5Cb3R0b21TdGFydFxuICB8IFRvYXN0ZXJQbGFjZW1lbnQuQm90dG9tQ2VudGVyXG4gIHwgVG9hc3RlclBsYWNlbWVudC5Cb3R0b21FbmRcbiAgfCBzdHJpbmc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2MtdG9hc3RlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi90b2FzdGVyLmNvbXBvbmVudC5odG1sJyxcbiAgZXhwb3J0QXM6ICdjVG9hc3Rlcidcbn0pXG5leHBvcnQgY2xhc3MgVG9hc3RlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSwgT25Jbml0LCBBZnRlckNvbnRlbnRDaGVja2VkIHtcblxuICBzdGF0ZVRvYXN0ZXJTdWJzY3JpcHRpb24hOiBTdWJzY3JpcHRpb247XG4gIHBsYWNlbWVudHMgPSBPYmplY3QudmFsdWVzKFRvYXN0ZXJQbGFjZW1lbnQpO1xuICB0b2FzdHMhOiBRdWVyeUxpc3Q8Vmlld0NvbnRhaW5lclJlZj47XG4gIHRvYXN0c0R5bmFtaWM6IGFueVtdID0gW107XG5cbiAgLyoqXG4gICAqIFRvYXN0ZXIgcGxhY2VtZW50XG4gICAqIEB0eXBlIFRUb2FzdGVyUGxhY2VtZW50XG4gICAqL1xuICBASW5wdXQoKSBwbGFjZW1lbnQ6IFRUb2FzdGVyUGxhY2VtZW50ID0gVG9hc3RlclBsYWNlbWVudC5Ub3BFbmQ7XG5cbiAgLyoqXG4gICAqIFRvYXN0ZXIgcG9zaXRpb25cbiAgICogQHR5cGUgKHN0cmluZyB8ICdhYnNvbHV0ZScgfCAnZml4ZWQnIHwgJ3N0YXRpYycpXG4gICAqL1xuICBASW5wdXQoKSBwb3NpdGlvbjogKHN0cmluZyB8ICdhYnNvbHV0ZScgfCAnZml4ZWQnIHwgJ3N0YXRpYycpID0gJ2Fic29sdXRlJztcblxuICBAVmlld0NoaWxkKFRvYXN0ZXJIb3N0RGlyZWN0aXZlLCB7IHN0YXRpYzogdHJ1ZSB9KSB0b2FzdGVySG9zdCE6IFRvYXN0ZXJIb3N0RGlyZWN0aXZlO1xuICBAQ29udGVudENoaWxkcmVuKFRvYXN0Q29tcG9uZW50LCB7IHJlYWQ6IFZpZXdDb250YWluZXJSZWYgfSkgY29udGVudFRvYXN0cyE6IFF1ZXJ5TGlzdDxWaWV3Q29udGFpbmVyUmVmPjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGhvc3RFbGVtZW50OiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBwcml2YXRlIHRvYXN0ZXJTZXJ2aWNlOiBUb2FzdGVyU2VydmljZVxuICApIHsgfVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBnZXQgaG9zdENsYXNzZXMoKTogYW55IHtcbiAgICByZXR1cm4ge1xuICAgICAgdG9hc3RlcjogdHJ1ZSxcbiAgICAgICd0b2FzdC1jb250YWluZXInOiB0cnVlLFxuICAgICAgW2Bwb3NpdGlvbi0ke3RoaXMucG9zaXRpb259YF06ICEhdGhpcy5wb3NpdGlvbixcbiAgICAgICd0b3AtMCc6IHRoaXMucGxhY2VtZW50LmluY2x1ZGVzKCd0b3AnKSxcbiAgICAgICd0b3AtNTAnOiB0aGlzLnBsYWNlbWVudC5pbmNsdWRlcygnbWlkZGxlJyksXG4gICAgICAnYm90dG9tLTAnOiB0aGlzLnBsYWNlbWVudC5pbmNsdWRlcygnYm90dG9tJyksXG4gICAgICAnc3RhcnQtMCc6IHRoaXMucGxhY2VtZW50LmluY2x1ZGVzKCdzdGFydCcpLFxuICAgICAgJ3N0YXJ0LTUwJzogdGhpcy5wbGFjZW1lbnQuaW5jbHVkZXMoJ2NlbnRlcicpLFxuICAgICAgJ2VuZC0wJzogdGhpcy5wbGFjZW1lbnQuaW5jbHVkZXMoJ2VuZCcpLFxuICAgICAgJ3RyYW5zbGF0ZS1taWRkbGUteCc6IHRoaXMucGxhY2VtZW50LmluY2x1ZGVzKCdjZW50ZXInKSAmJiAhdGhpcy5wbGFjZW1lbnQuaW5jbHVkZXMoJ21pZGRsZScpLFxuICAgICAgJ3RyYW5zbGF0ZS1taWRkbGUteSc6IHRoaXMucGxhY2VtZW50LmluY2x1ZGVzKCdtaWRkbGUnKSAmJiAhdGhpcy5wbGFjZW1lbnQuaW5jbHVkZXMoJ2NlbnRlcicpLFxuICAgICAgJ3RyYW5zbGF0ZS1taWRkbGUnOiB0aGlzLnBsYWNlbWVudC5pbmNsdWRlcygnbWlkZGxlJykgJiYgdGhpcy5wbGFjZW1lbnQuaW5jbHVkZXMoJ2NlbnRlcicpXG4gICAgfTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc3RhdGVUb2FzdGVyU3Vic2NyaWJlKHRydWUpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zdGF0ZVRvYXN0ZXJTdWJzY3JpYmUoZmFsc2UpO1xuICB9XG5cbiAgbmdBZnRlckNvbnRlbnRDaGVja2VkKCk6IHZvaWQge1xuICAgIHRoaXMudG9hc3RzID0gdGhpcy5jb250ZW50VG9hc3RzO1xuICB9XG5cbiAgYWRkVG9hc3QodG9hc3Q6IGFueSwgcHJvcHM6IGFueSwgb3B0aW9ucz86IHsgaW5kZXg/OiBudW1iZXI7IGluamVjdG9yPzogSW5qZWN0b3I7IG5nTW9kdWxlUmVmPzogTmdNb2R1bGVSZWY8dW5rbm93bj47IHByb2plY3RhYmxlTm9kZXM/OiBOb2RlW11bXTsgfSk6IENvbXBvbmVudFJlZjxhbnk+IHtcbiAgICBjb25zdCBjb21wb25lbnRSZWY6IENvbXBvbmVudFJlZjxhbnk+ID0gdGhpcy50b2FzdGVySG9zdC52aWV3Q29udGFpbmVyUmVmLmNyZWF0ZUNvbXBvbmVudCh0b2FzdCwgb3B0aW9ucyk7XG4gICAgdGhpcy50b2FzdHNEeW5hbWljLnB1c2goY29tcG9uZW50UmVmKTtcbiAgICBjb25zdCBpbmRleCA9IHRoaXMudG9hc3RzRHluYW1pYy5pbmRleE9mKGNvbXBvbmVudFJlZik7XG4gICAgZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMocHJvcHMpKSB7XG4gICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2Vba2V5XSA9IHZhbHVlO1xuICAgIH1cbiAgICBjb21wb25lbnRSZWYuaW5zdGFuY2VbJ3BsYWNlbWVudCddID0gdGhpcy5wbGFjZW1lbnQ7XG4gICAgY29tcG9uZW50UmVmLmluc3RhbmNlWydkeW5hbWljJ10gPSB0cnVlO1xuICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZVsnaW5kZXgnXSA9IGluZGV4O1xuICAgIGNvbXBvbmVudFJlZi5pbnN0YW5jZVsndmlzaWJsZSddID0gdHJ1ZTtcbiAgICBjb21wb25lbnRSZWYuaW5zdGFuY2VbJ3Zpc2libGVDaGFuZ2UnXS5lbWl0KHRydWUpO1xuICAgIGNvbXBvbmVudFJlZi5jaGFuZ2VEZXRlY3RvclJlZj8uZGV0ZWN0Q2hhbmdlcygpO1xuICAgIHJldHVybiBjb21wb25lbnRSZWY7XG4gIH1cblxuICByZW1vdmVUb2FzdChzdGF0ZTogSVRvYXN0ZXJBY3Rpb24pOiB2b2lkIHtcbiAgICB0aGlzLnRvYXN0c0R5bmFtaWM/LmZvckVhY2goaXRlbSA9PiB7XG4gICAgICBpZiAoc3RhdGUudG9hc3Q/LmR5bmFtaWMgJiYgKGl0ZW0uaW5zdGFuY2UgPT09IHN0YXRlLnRvYXN0KSkge1xuICAgICAgICBpdGVtLmluc3RhbmNlLnZpc2libGUgPSBmYWxzZTtcbiAgICAgICAgaXRlbS5pbnN0YW5jZVsndmlzaWJsZUNoYW5nZSddLmVtaXQoZmFsc2UpO1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICBpdGVtLmRlc3Ryb3koKTtcbiAgICAgICAgfSwgMzAwKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRoaXMudG9hc3RzPy5mb3JFYWNoKGl0ZW0gPT4ge1xuICAgICAgaWYgKGl0ZW0uZWxlbWVudC5uYXRpdmVFbGVtZW50ID09PSBzdGF0ZS50b2FzdD8uaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudCkge1xuICAgICAgICBpZiAoIXN0YXRlLnRvYXN0Py5keW5hbWljKSB7XG4gICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgIHN0YXRlLnRvYXN0LnZpc2libGUgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGF0ZVRvYXN0ZXJTdWJzY3JpYmUoc3Vic2NyaWJlOiBib29sZWFuID0gdHJ1ZSk6IHZvaWQge1xuICAgIGlmIChzdWJzY3JpYmUpIHtcbiAgICAgIHRoaXMuc3RhdGVUb2FzdGVyU3Vic2NyaXB0aW9uID0gdGhpcy50b2FzdGVyU2VydmljZS50b2FzdGVyU3RhdGUkLnN1YnNjcmliZSgoc3RhdGUpID0+IHtcbiAgICAgICAgaWYgKHN0YXRlLnNob3cgPT09IGZhbHNlKSB7XG4gICAgICAgICAgdGhpcy5yZW1vdmVUb2FzdChzdGF0ZSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHN0YXRlLnNob3cgPT09IHRydWUgJiYgc3RhdGUudG9hc3Q/LmR5bmFtaWMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zdGF0ZVRvYXN0ZXJTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxuZy10ZW1wbGF0ZSBjVG9hc3Rlckhvc3Q+PC9uZy10ZW1wbGF0ZT5cclxuPG5nLWNvbnRlbnQgY1RvYXN0ZXJIb3N0PjwvbmctY29udGVudD5cclxuIl19
|
|
131
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3Rlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3RvYXN0L3RvYXN0ZXIvdG9hc3Rlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JldWktYW5ndWxhci9zcmMvbGliL3RvYXN0L3RvYXN0ZXIvdG9hc3Rlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUVULGVBQWUsRUFFZixXQUFXLEVBRVgsS0FBSyxFQU1MLFNBQVMsRUFDVCxnQkFBZ0IsRUFDakIsTUFBTSxlQUFlLENBQUM7QUFJdkIsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7O0FBRTFELE1BQU0sQ0FBTixJQUFZLGdCQVdYO0FBWEQsV0FBWSxnQkFBZ0I7SUFDMUIscUNBQWlCLENBQUE7SUFDakIsMENBQXNCLENBQUE7SUFDdEIsNENBQXdCLENBQUE7SUFDeEIsc0NBQWtCLENBQUE7SUFDbEIsZ0RBQTRCLENBQUE7SUFDNUIsa0RBQThCLENBQUE7SUFDOUIsNENBQXdCLENBQUE7SUFDeEIsZ0RBQTRCLENBQUE7SUFDNUIsa0RBQThCLENBQUE7SUFDOUIsNENBQXdCLENBQUE7QUFDMUIsQ0FBQyxFQVhXLGdCQUFnQixLQUFoQixnQkFBZ0IsUUFXM0I7QUFvQkQsTUFBTSxPQUFPLGdCQUFnQjtJQXNCM0IsWUFDVSxXQUF1QixFQUN2QixRQUFtQixFQUNuQixjQUE4QjtRQUY5QixnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQUN2QixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQXRCeEMsZUFBVSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENB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RTtnQkFDcEYsSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLEtBQUssRUFBRTtvQkFDeEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztpQkFDekI7Z0JBQ0QsSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLElBQUksSUFBSSxLQUFLLENBQUMsS0FBSyxFQUFFLE9BQU8sS0FBSyxTQUFTLEVBQUU7aUJBQzlEO1lBQ0gsQ0FBQyxDQUFDLENBQUM7U0FDSjthQUFNO1lBQ0wsSUFBSSxDQUFDLHdCQUF3QixDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQzdDO0lBQ0gsQ0FBQzs7NkdBM0dVLGdCQUFnQjtpR0FBaEIsZ0JBQWdCLGdNQW9CVixjQUFjLFFBQVUsZ0JBQWdCLDBFQUQ5QyxvQkFBb0Isc0ZDekVqQyx3RkFFQTsyRkRvRGEsZ0JBQWdCO2tCQUw1QixTQUFTOytCQUNFLFdBQVcsWUFFWCxVQUFVO3NKQWFYLFNBQVM7c0JBQWpCLEtBQUs7Z0JBTUcsUUFBUTtzQkFBaEIsS0FBSztnQkFFNkMsV0FBVztzQkFBN0QsU0FBUzt1QkFBQyxvQkFBb0IsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBQ1ksYUFBYTtzQkFBekUsZUFBZTt1QkFBQyxjQUFjLEVBQUUsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBU3ZELFdBQVc7c0JBRGQsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBBZnRlckNvbnRlbnRDaGVja2VkLFxyXG4gIENvbXBvbmVudCxcclxuICBDb21wb25lbnRSZWYsXHJcbiAgQ29udGVudENoaWxkcmVuLFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgSG9zdEJpbmRpbmcsXHJcbiAgSW5qZWN0b3IsXHJcbiAgSW5wdXQsXHJcbiAgTmdNb2R1bGVSZWYsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9uSW5pdCxcclxuICBRdWVyeUxpc3QsXHJcbiAgUmVuZGVyZXIyLFxyXG4gIFZpZXdDaGlsZCxcclxuICBWaWV3Q29udGFpbmVyUmVmXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5cclxuaW1wb3J0IHsgSVRvYXN0ZXJBY3Rpb24sIFRvYXN0ZXJTZXJ2aWNlIH0gZnJvbSAnLi90b2FzdGVyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBUb2FzdGVySG9zdERpcmVjdGl2ZSB9IGZyb20gJy4vdG9hc3Rlci1ob3N0LmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFRvYXN0Q29tcG9uZW50IH0gZnJvbSAnLi4vdG9hc3QvdG9hc3QuY29tcG9uZW50JztcclxuXHJcbmV4cG9ydCBlbnVtIFRvYXN0ZXJQbGFjZW1lbnQge1xyXG4gIFN0YXRpYyA9ICdzdGF0aWMnLFxyXG4gIFRvcFN0YXJ0ID0gJ3RvcC1zdGFydCcsXHJcbiAgVG9wQ2VudGVyID0gJ3RvcC1jZW50ZXInLFxyXG4gIFRvcEVuZCA9ICd0b3AtZW5kJyxcclxuICBNaWRkbGVTdGFydCA9ICdtaWRkbGUtc3RhcnQnLFxyXG4gIE1pZGRsZUNlbnRlciA9ICdtaWRkbGUtY2VudGVyJyxcclxuICBNaWRkbGVFbmQgPSAnbWlkZGxlLWVuZCcsXHJcbiAgQm90dG9tU3RhcnQgPSAnYm90dG9tLXN0YXJ0JyxcclxuICBCb3R0b21DZW50ZXIgPSAnYm90dG9tLWNlbnRlcicsXHJcbiAgQm90dG9tRW5kID0gJ2JvdHRvbS1lbmQnLFxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBUVG9hc3RlclBsYWNlbWVudCA9XHJcbiAgfCBUb2FzdGVyUGxhY2VtZW50LlN0YXRpY1xyXG4gIHwgVG9hc3RlclBsYWNlbWVudC5Ub3BTdGFydFxyXG4gIHwgVG9hc3RlclBsYWNlbWVudC5Ub3BDZW50ZXJcclxuICB8IFRvYXN0ZXJQbGFjZW1lbnQuVG9wRW5kXHJcbiAgfCBUb2FzdGVyUGxhY2VtZW50Lk1pZGRsZVN0YXJ0XHJcbiAgfCBUb2FzdGVyUGxhY2VtZW50Lk1pZGRsZUNlbnRlclxyXG4gIHwgVG9hc3RlclBsYWNlbWVudC5NaWRkbGVFbmRcclxuICB8IFRvYXN0ZXJQbGFjZW1lbnQuQm90dG9tU3RhcnRcclxuICB8IFRvYXN0ZXJQbGFjZW1lbnQuQm90dG9tQ2VudGVyXHJcbiAgfCBUb2FzdGVyUGxhY2VtZW50LkJvdHRvbUVuZFxyXG4gIHwgc3RyaW5nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdjLXRvYXN0ZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90b2FzdGVyLmNvbXBvbmVudC5odG1sJyxcclxuICBleHBvcnRBczogJ2NUb2FzdGVyJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgVG9hc3RlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSwgT25Jbml0LCBBZnRlckNvbnRlbnRDaGVja2VkIHtcclxuXHJcbiAgc3RhdGVUb2FzdGVyU3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uO1xyXG4gIHBsYWNlbWVudHMgPSBPYmplY3QudmFsdWVzKFRvYXN0ZXJQbGFjZW1lbnQpO1xyXG4gIHRvYXN0cyE6IFF1ZXJ5TGlzdDxWaWV3Q29udGFpbmVyUmVmPjtcclxuICB0b2FzdHNEeW5hbWljOiBhbnlbXSA9IFtdO1xyXG5cclxuICAvKipcclxuICAgKiBUb2FzdGVyIHBsYWNlbWVudFxyXG4gICAqIEB0eXBlIFRUb2FzdGVyUGxhY2VtZW50XHJcbiAgICovXHJcbiAgQElucHV0KCkgcGxhY2VtZW50OiBUVG9hc3RlclBsYWNlbWVudCA9IFRvYXN0ZXJQbGFjZW1lbnQuVG9wRW5kO1xyXG5cclxuICAvKipcclxuICAgKiBUb2FzdGVyIHBvc2l0aW9uXHJcbiAgICogQHR5cGUgKHN0cmluZyB8ICdhYnNvbHV0ZScgfCAnZml4ZWQnIHwgJ3N0YXRpYycpXHJcbiAgICovXHJcbiAgQElucHV0KCkgcG9zaXRpb246IChzdHJpbmcgfCAnYWJzb2x1dGUnIHwgJ2ZpeGVkJyB8ICdzdGF0aWMnKSA9ICdhYnNvbHV0ZSc7XHJcblxyXG4gIEBWaWV3Q2hpbGQoVG9hc3Rlckhvc3REaXJlY3RpdmUsIHsgc3RhdGljOiB0cnVlIH0pIHRvYXN0ZXJIb3N0ITogVG9hc3Rlckhvc3REaXJlY3RpdmU7XHJcbiAgQENvbnRlbnRDaGlsZHJlbihUb2FzdENvbXBvbmVudCwgeyByZWFkOiBWaWV3Q29udGFpbmVyUmVmIH0pIGNvbnRlbnRUb2FzdHMhOiBRdWVyeUxpc3Q8Vmlld0NvbnRhaW5lclJlZj47XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBob3N0RWxlbWVudDogRWxlbWVudFJlZixcclxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcclxuICAgIHByaXZhdGUgdG9hc3RlclNlcnZpY2U6IFRvYXN0ZXJTZXJ2aWNlXHJcbiAgKSB7IH1cclxuXHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXHJcbiAgZ2V0IGhvc3RDbGFzc2VzKCk6IGFueSB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICB0b2FzdGVyOiB0cnVlLFxyXG4gICAgICAndG9hc3QtY29udGFpbmVyJzogdHJ1ZSxcclxuICAgICAgW2Bwb3NpdGlvbi0ke3RoaXMucG9zaXRpb259YF06ICEhdGhpcy5wb3NpdGlvbixcclxuICAgICAgJ3RvcC0wJzogdGhpcy5wbGFjZW1lbnQuaW5jbHVkZXMoJ3RvcCcpLFxyXG4gICAgICAndG9wLTUwJzogdGhpcy5wbGFjZW1lbnQuaW5jbHVkZXMoJ21pZGRsZScpLFxyXG4gICAgICAnYm90dG9tLTAnOiB0aGlzLnBsYWNlbWVudC5pbmNsdWRlcygnYm90dG9tJyksXHJcbiAgICAgICdzdGFydC0wJzogdGhpcy5wbGFjZW1lbnQuaW5jbHVkZXMoJ3N0YXJ0JyksXHJcbiAgICAgICdzdGFydC01MCc6IHRoaXMucGxhY2VtZW50LmluY2x1ZGVzKCdjZW50ZXInKSxcclxuICAgICAgJ2VuZC0wJzogdGhpcy5wbGFjZW1lbnQuaW5jbHVkZXMoJ2VuZCcpLFxyXG4gICAgICAndHJhbnNsYXRlLW1pZGRsZS14JzogdGhpcy5wbGFjZW1lbnQuaW5jbHVkZXMoJ2NlbnRlcicpICYmICF0aGlzLnBsYWNlbWVudC5pbmNsdWRlcygnbWlkZGxlJyksXHJcbiAgICAgICd0cmFuc2xhdGUtbWlkZGxlLXknOiB0aGlzLnBsYWNlbWVudC5pbmNsdWRlcygnbWlkZGxlJykgJiYgIXRoaXMucGxhY2VtZW50LmluY2x1ZGVzKCdjZW50ZXInKSxcclxuICAgICAgJ3RyYW5zbGF0ZS1taWRkbGUnOiB0aGlzLnBsYWNlbWVudC5pbmNsdWRlcygnbWlkZGxlJykgJiYgdGhpcy5wbGFjZW1lbnQuaW5jbHVkZXMoJ2NlbnRlcicpXHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnN0YXRlVG9hc3RlclN1YnNjcmliZSh0cnVlKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdGF0ZVRvYXN0ZXJTdWJzY3JpYmUoZmFsc2UpO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlckNvbnRlbnRDaGVja2VkKCk6IHZvaWQge1xyXG4gICAgdGhpcy50b2FzdHMgPSB0aGlzLmNvbnRlbnRUb2FzdHM7XHJcbiAgfVxyXG5cclxuICBhZGRUb2FzdCh0b2FzdDogYW55LCBwcm9wczogYW55LCBvcHRpb25zPzogeyBpbmRleD86IG51bWJlcjsgaW5qZWN0b3I/OiBJbmplY3RvcjsgbmdNb2R1bGVSZWY/OiBOZ01vZHVsZVJlZjx1bmtub3duPjsgcHJvamVjdGFibGVOb2Rlcz86IE5vZGVbXVtdOyB9KTogQ29tcG9uZW50UmVmPGFueT4ge1xyXG4gICAgY29uc3QgY29tcG9uZW50UmVmOiBDb21wb25lbnRSZWY8YW55PiA9IHRoaXMudG9hc3Rlckhvc3Qudmlld0NvbnRhaW5lclJlZi5jcmVhdGVDb21wb25lbnQodG9hc3QsIG9wdGlvbnMpO1xyXG4gICAgdGhpcy50b2FzdHNEeW5hbWljLnB1c2goY29tcG9uZW50UmVmKTtcclxuICAgIGNvbnN0IGluZGV4ID0gdGhpcy50b2FzdHNEeW5hbWljLmluZGV4T2YoY29tcG9uZW50UmVmKTtcclxuICAgIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKHByb3BzKSkge1xyXG4gICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2Vba2V5XSA9IHZhbHVlO1xyXG4gICAgfVxyXG4gICAgY29tcG9uZW50UmVmLmluc3RhbmNlWydwbGFjZW1lbnQnXSA9IHRoaXMucGxhY2VtZW50O1xyXG4gICAgY29tcG9uZW50UmVmLmluc3RhbmNlWydkeW5hbWljJ10gPSB0cnVlO1xyXG4gICAgY29tcG9uZW50UmVmLmluc3RhbmNlWydpbmRleCddID0gaW5kZXg7XHJcbiAgICBjb21wb25lbnRSZWYuaW5zdGFuY2VbJ3Zpc2libGUnXSA9IHRydWU7XHJcbiAgICBjb21wb25lbnRSZWYuaW5zdGFuY2VbJ3Zpc2libGVDaGFuZ2UnXS5lbWl0KHRydWUpO1xyXG4gICAgY29tcG9uZW50UmVmLmNoYW5nZURldGVjdG9yUmVmPy5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICByZXR1cm4gY29tcG9uZW50UmVmO1xyXG4gIH1cclxuXHJcbiAgcmVtb3ZlVG9hc3Qoc3RhdGU6IElUb2FzdGVyQWN0aW9uKTogdm9pZCB7XHJcbiAgICB0aGlzLnRvYXN0c0R5bmFtaWM/LmZvckVhY2goaXRlbSA9PiB7XHJcbiAgICAgIGlmIChzdGF0ZS50b2FzdD8uZHluYW1pYyAmJiAoaXRlbS5pbnN0YW5jZSA9PT0gc3RhdGUudG9hc3QpKSB7XHJcbiAgICAgICAgaXRlbS5pbnN0YW5jZS52aXNpYmxlID0gZmFsc2U7XHJcbiAgICAgICAgaXRlbS5pbnN0YW5jZVsndmlzaWJsZUNoYW5nZSddLmVtaXQoZmFsc2UpO1xyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgaXRlbS5kZXN0cm95KCk7XHJcbiAgICAgICAgfSwgMzAwKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy50b2FzdHM/LmZvckVhY2goaXRlbSA9PiB7XHJcbiAgICAgIGlmIChpdGVtLmVsZW1lbnQubmF0aXZlRWxlbWVudCA9PT0gc3RhdGUudG9hc3Q/Lmhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQpIHtcclxuICAgICAgICBpZiAoIXN0YXRlLnRvYXN0Py5keW5hbWljKSB7XHJcbiAgICAgICAgICAvLyBAdHMtaWdub3JlXHJcbiAgICAgICAgICBzdGF0ZS50b2FzdC52aXNpYmxlID0gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc3RhdGVUb2FzdGVyU3Vic2NyaWJlKHN1YnNjcmliZTogYm9vbGVhbiA9IHRydWUpOiB2b2lkIHtcclxuICAgIGlmIChzdWJzY3JpYmUpIHtcclxuICAgICAgdGhpcy5zdGF0ZVRvYXN0ZXJTdWJzY3JpcHRpb24gPSB0aGlzLnRvYXN0ZXJTZXJ2aWNlLnRvYXN0ZXJTdGF0ZSQuc3Vic2NyaWJlKChzdGF0ZSkgPT4ge1xyXG4gICAgICAgIGlmIChzdGF0ZS5zaG93ID09PSBmYWxzZSkge1xyXG4gICAgICAgICAgdGhpcy5yZW1vdmVUb2FzdChzdGF0ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChzdGF0ZS5zaG93ID09PSB0cnVlICYmIHN0YXRlLnRvYXN0Py5keW5hbWljID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5zdGF0ZVRvYXN0ZXJTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPG5nLXRlbXBsYXRlIGNUb2FzdGVySG9zdD48L25nLXRlbXBsYXRlPlxyXG48bmctY29udGVudCBjVG9hc3Rlckhvc3Q+PC9uZy1jb250ZW50PlxyXG4iXX0=
|