@elderbyte/ngx-starter 15.1.0 → 15.2.0
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/_index.scss +2 -0
- package/esm2020/lib/components/expand-toggle-button/elder-expand-toggle-button.component.mjs +5 -5
- package/esm2020/lib/components/expand-toggle-button/elder-expand-toggle-button.module.mjs +5 -4
- package/esm2020/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete.component.mjs +3 -3
- package/esm2020/lib/components/labels/labels-input/labels-input.component.mjs +3 -3
- package/esm2020/lib/components/panels/elder-panel.module.mjs +25 -5
- package/esm2020/lib/components/panels/toggle-panel/elder-toggle-panel-trigger.directive.mjs +69 -0
- package/esm2020/lib/components/panels/toggle-panel/elder-toggle-panel.component.mjs +68 -0
- package/esm2020/lib/components/shell/elder-shell.module.mjs +10 -4
- package/fesm2015/elderbyte-ngx-starter.mjs +225 -74
- package/fesm2015/elderbyte-ngx-starter.mjs.map +1 -1
- package/fesm2020/elderbyte-ngx-starter.mjs +225 -74
- package/fesm2020/elderbyte-ngx-starter.mjs.map +1 -1
- package/lib/components/expand-toggle-button/elder-expand-toggle-button.module.d.ts +2 -1
- package/lib/components/panels/elder-panel.module.d.ts +7 -3
- package/lib/components/panels/toggle-panel/elder-toggle-panel-trigger.directive.d.ts +34 -0
- package/lib/components/panels/toggle-panel/elder-toggle-panel.component.d.ts +38 -0
- package/lib/components/shell/elder-shell.module.d.ts +4 -4
- package/package.json +1 -1
- package/src/lib/components/expand-toggle-button/elder-expand-toggle-button.component.scss +28 -0
- package/src/lib/components/panels/toggle-panel/elder-toggle-panel.component.scss +0 -0
package/_index.scss
CHANGED
|
@@ -13,6 +13,7 @@
|
|
|
13
13
|
@use "./src/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component" as elder-dialog-panel;
|
|
14
14
|
@use "./src/lib/components/navigation/nav/nav-link/elder-nav-link.component" as elder-nav-link;
|
|
15
15
|
@use "src/lib/components/navigation/nav/elder-nav-theme" as elder-nav;
|
|
16
|
+
@use "./src/lib/components/expand-toggle-button/elder-expand-toggle-button.component" as elder-expand-toggle-button;
|
|
16
17
|
@use "./src/lib/components/data-view/table/elder-table/elder-table.component" as elder-table;
|
|
17
18
|
@use "./src/lib/components/data-view/grid/elder-grid/elder-grid.component" as elder-grid;
|
|
18
19
|
@use "./src/lib/components/card-organizer/card-stack/elder-card-stack.component" as elder-card-stack;
|
|
@@ -37,6 +38,7 @@
|
|
|
37
38
|
@include elder-card-panel.theme($theme);
|
|
38
39
|
@include elder-dialog-panel.theme($theme);
|
|
39
40
|
@include elder-nav.theme($theme);
|
|
41
|
+
@include elder-expand-toggle-button.theme($theme);
|
|
40
42
|
@include elder-select.theme($theme);
|
|
41
43
|
@include elder-time.theme($theme);
|
|
42
44
|
@include elder-multi-select.theme($theme);
|
package/esm2020/lib/components/expand-toggle-button/elder-expand-toggle-button.component.mjs
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { ChangeDetectionStrategy, Component, Input, Output } from '@angular/core';
|
|
2
2
|
import { BehaviorSubject } from 'rxjs';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/material/
|
|
5
|
-
import * as i2 from "@angular/material/
|
|
4
|
+
import * as i1 from "@angular/material/icon";
|
|
5
|
+
import * as i2 from "@angular/material/core";
|
|
6
6
|
import * as i3 from "@angular/common";
|
|
7
7
|
export class ElderExpandToggleButtonComponent {
|
|
8
8
|
constructor() {
|
|
@@ -43,13 +43,13 @@ export class ElderExpandToggleButtonComponent {
|
|
|
43
43
|
}
|
|
44
44
|
}
|
|
45
45
|
ElderExpandToggleButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ElderExpandToggleButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
46
|
-
ElderExpandToggleButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.0", type: ElderExpandToggleButtonComponent, selector: "elder-expand-toggle-button", inputs: { expanded: "expanded" }, outputs: { expandedChange: "expandedChange" }, ngImport: i0, template: "<
|
|
46
|
+
ElderExpandToggleButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.0", type: ElderExpandToggleButtonComponent, selector: "elder-expand-toggle-button", inputs: { expanded: "expanded" }, outputs: { expandedChange: "expandedChange" }, ngImport: i0, template: "\n<a matRipple class=\"layout-row place-start-center full toggle-button\"\n (click)=\"onToggleExpand($event)\">\n <div class=\"layout-row place-start-center flex\">\n\n <ng-content></ng-content>\n\n <span class=\"flex\"></span>\n\n <div class=\"layout-col place-center-center\">\n <mat-icon>{{(expandedChange | async) ? 'keyboard_arrow_up' : 'keyboard_arrow_down'}}</mat-icon>\n </div>\n\n </div>\n</a>\n", dependencies: [{ kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i2.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
47
47
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ElderExpandToggleButtonComponent, decorators: [{
|
|
48
48
|
type: Component,
|
|
49
|
-
args: [{ selector: 'elder-expand-toggle-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "<
|
|
49
|
+
args: [{ selector: 'elder-expand-toggle-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "\n<a matRipple class=\"layout-row place-start-center full toggle-button\"\n (click)=\"onToggleExpand($event)\">\n <div class=\"layout-row place-start-center flex\">\n\n <ng-content></ng-content>\n\n <span class=\"flex\"></span>\n\n <div class=\"layout-col place-center-center\">\n <mat-icon>{{(expandedChange | async) ? 'keyboard_arrow_up' : 'keyboard_arrow_down'}}</mat-icon>\n </div>\n\n </div>\n</a>\n" }]
|
|
50
50
|
}], propDecorators: { expandedChange: [{
|
|
51
51
|
type: Output
|
|
52
52
|
}], expanded: [{
|
|
53
53
|
type: Input
|
|
54
54
|
}] } });
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItZXhwYW5kLXRvZ2dsZS1idXR0b24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9leHBhbmQtdG9nZ2xlLWJ1dHRvbi9lbGRlci1leHBhbmQtdG9nZ2xlLWJ1dHRvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2V4cGFuZC10b2dnbGUtYnV0dG9uL2VsZGVyLWV4cGFuZC10b2dnbGUtYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN4RixPQUFPLEVBQUMsZUFBZSxFQUFhLE1BQU0sTUFBTSxDQUFDOzs7OztBQVFqRCxNQUFNLE9BQU8sZ0NBQWdDO0lBTDdDO1FBT0U7Ozs7b0ZBSTRFO1FBRTNELG9CQUFlLEdBQUcsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7S0F1Q3hFO0lBckNDOzs7O2dGQUk0RTtJQUVyRSxRQUFRLEtBQVcsQ0FBQztJQUUzQjs7OztnRkFJNEU7SUFFNUUsSUFDVyxjQUFjO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUM3QyxDQUFDO0lBRUQsSUFDVyxRQUFRLENBQUMsS0FBYztRQUNoQyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQsSUFBVyxRQUFRO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUN6QyxDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRXJFLGNBQWMsQ0FBQyxLQUFVO1FBQzlCLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ2pDLENBQUM7OzZIQTlDVSxnQ0FBZ0M7aUhBQWhDLGdDQUFnQyxtSkNUN0MsZ2JBZUE7MkZETmEsZ0NBQWdDO2tCQUw1QyxTQUFTOytCQUNFLDRCQUE0QixtQkFFckIsdUJBQXVCLENBQUMsTUFBTTs4QkEyQnBDLGNBQWM7c0JBRHhCLE1BQU07Z0JBTUksUUFBUTtzQkFEbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlbGRlci1leHBhbmQtdG9nZ2xlLWJ1dHRvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9lbGRlci1leHBhbmQtdG9nZ2xlLWJ1dHRvbi5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyRXhwYW5kVG9nZ2xlQnV0dG9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IF9leHBhbmRlZENoYW5nZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBMaWZlIEN5Y2xlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHsgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcm9wZXJ0aWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgZ2V0IGV4cGFuZGVkQ2hhbmdlKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLl9leHBhbmRlZENoYW5nZS5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZXhwYW5kZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9leHBhbmRlZENoYW5nZS5uZXh0KHZhbHVlKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZXhwYW5kZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2V4cGFuZGVkQ2hhbmdlLmdldFZhbHVlKCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgb25Ub2dnbGVFeHBhbmQoZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgIHRoaXMuZXhwYW5kZWQgPSAhdGhpcy5leHBhbmRlZDtcbiAgfVxufVxuIiwiXG48YSBtYXRSaXBwbGUgY2xhc3M9XCJsYXlvdXQtcm93IHBsYWNlLXN0YXJ0LWNlbnRlciBmdWxsIHRvZ2dsZS1idXR0b25cIlxuICAgICAgICAoY2xpY2spPVwib25Ub2dnbGVFeHBhbmQoJGV2ZW50KVwiPlxuICA8ZGl2IGNsYXNzPVwibGF5b3V0LXJvdyBwbGFjZS1zdGFydC1jZW50ZXIgZmxleFwiPlxuXG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuXG4gICAgPHNwYW4gY2xhc3M9XCJmbGV4XCI+PC9zcGFuPlxuXG4gICAgPGRpdiBjbGFzcz1cImxheW91dC1jb2wgcGxhY2UtY2VudGVyLWNlbnRlclwiPlxuICAgICAgPG1hdC1pY29uPnt7KGV4cGFuZGVkQ2hhbmdlIHwgYXN5bmMpID8gJ2tleWJvYXJkX2Fycm93X3VwJyA6ICdrZXlib2FyZF9hcnJvd19kb3duJ319PC9tYXQtaWNvbj5cbiAgICA8L2Rpdj5cblxuICA8L2Rpdj5cbjwvYT5cbiJdfQ==
|
|
@@ -3,18 +3,19 @@ import { CommonModule } from '@angular/common';
|
|
|
3
3
|
import { ElderExpandToggleButtonComponent } from './elder-expand-toggle-button.component';
|
|
4
4
|
import { MatButtonModule } from '@angular/material/button';
|
|
5
5
|
import { MatIconModule } from '@angular/material/icon';
|
|
6
|
+
import { MatRippleModule } from '@angular/material/core';
|
|
6
7
|
import * as i0 from "@angular/core";
|
|
7
8
|
export { ElderExpandToggleButtonComponent } from './elder-expand-toggle-button.component';
|
|
8
9
|
export class ElderExpandToggleButtonModule {
|
|
9
10
|
}
|
|
10
11
|
ElderExpandToggleButtonModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ElderExpandToggleButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
11
|
-
ElderExpandToggleButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.0", ngImport: i0, type: ElderExpandToggleButtonModule, declarations: [ElderExpandToggleButtonComponent], imports: [CommonModule, MatButtonModule, MatIconModule], exports: [ElderExpandToggleButtonComponent] });
|
|
12
|
-
ElderExpandToggleButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ElderExpandToggleButtonModule, imports: [CommonModule, MatButtonModule, MatIconModule] });
|
|
12
|
+
ElderExpandToggleButtonModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.0", ngImport: i0, type: ElderExpandToggleButtonModule, declarations: [ElderExpandToggleButtonComponent], imports: [CommonModule, MatButtonModule, MatIconModule, MatRippleModule], exports: [ElderExpandToggleButtonComponent] });
|
|
13
|
+
ElderExpandToggleButtonModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ElderExpandToggleButtonModule, imports: [CommonModule, MatButtonModule, MatIconModule, MatRippleModule] });
|
|
13
14
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ElderExpandToggleButtonModule, decorators: [{
|
|
14
15
|
type: NgModule,
|
|
15
16
|
args: [{
|
|
16
17
|
imports: [
|
|
17
|
-
CommonModule, MatButtonModule, MatIconModule
|
|
18
|
+
CommonModule, MatButtonModule, MatIconModule, MatRippleModule
|
|
18
19
|
],
|
|
19
20
|
declarations: [
|
|
20
21
|
ElderExpandToggleButtonComponent
|
|
@@ -24,4 +25,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImpor
|
|
|
24
25
|
]
|
|
25
26
|
}]
|
|
26
27
|
}] });
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItZXhwYW5kLXRvZ2dsZS1idXR0b24ubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9leHBhbmQtdG9nZ2xlLWJ1dHRvbi9lbGRlci1leHBhbmQtdG9nZ2xlLWJ1dHRvbi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN2QyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDN0MsT0FBTyxFQUFDLGdDQUFnQyxFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFDeEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sd0JBQXdCLENBQUM7O0FBRXZELE9BQU8sRUFBQyxnQ0FBZ0MsRUFBQyxNQUFNLHdDQUF3QyxDQUFDO0FBYXhGLE1BQU0sT0FBTyw2QkFBNkI7OzBIQUE3Qiw2QkFBNkI7MkhBQTdCLDZCQUE2QixpQkFObEMsZ0NBQWdDLGFBSGhDLFlBQVksRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLGVBQWUsYUFNN0QsZ0NBQWdDOzJIQUczQiw2QkFBNkIsWUFUbEMsWUFBWSxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsZUFBZTsyRkFTeEQsNkJBQTZCO2tCQVh6QyxRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRTt3QkFDTCxZQUFZLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxlQUFlO3FCQUNoRTtvQkFDRCxZQUFZLEVBQUU7d0JBQ1YsZ0NBQWdDO3FCQUNuQztvQkFDRCxPQUFPLEVBQUc7d0JBQ04sZ0NBQWdDO3FCQUNuQztpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbIlxuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7RWxkZXJFeHBhbmRUb2dnbGVCdXR0b25Db21wb25lbnR9IGZyb20gJy4vZWxkZXItZXhwYW5kLXRvZ2dsZS1idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQge01hdFJpcHBsZU1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5cbmV4cG9ydCB7RWxkZXJFeHBhbmRUb2dnbGVCdXR0b25Db21wb25lbnR9IGZyb20gJy4vZWxkZXItZXhwYW5kLXRvZ2dsZS1idXR0b24uY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSwgTWF0QnV0dG9uTW9kdWxlLCBNYXRJY29uTW9kdWxlLCBNYXRSaXBwbGVNb2R1bGVcbiAgICBdLFxuICAgIGRlY2xhcmF0aW9uczogW1xuICAgICAgICBFbGRlckV4cGFuZFRvZ2dsZUJ1dHRvbkNvbXBvbmVudFxuICAgIF0sXG4gICAgZXhwb3J0cyA6IFtcbiAgICAgICAgRWxkZXJFeHBhbmRUb2dnbGVCdXR0b25Db21wb25lbnRcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyRXhwYW5kVG9nZ2xlQnV0dG9uTW9kdWxlIHtcblxufVxuIl19
|
|
@@ -156,10 +156,10 @@ export class ElderAutocompleteComponent {
|
|
|
156
156
|
}
|
|
157
157
|
}
|
|
158
158
|
ElderAutocompleteComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ElderAutocompleteComponent, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
159
|
-
ElderAutocompleteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.0", type: ElderAutocompleteComponent, selector: "elder-autocomplete", inputs: { isOptionDisabledFn: "isOptionDisabledFn", isOptionHiddenFn: "isOptionHiddenFn", optionValueConverterFn: "optionValueConverterFn", enabled: "enabled", valueTemplate: "valueTemplate", dataContext: "dataContext", displayPropertyResolver: "displayPropertyResolver" }, outputs: { optionSelected: "optionSelected" }, queries: [{ propertyName: "valueTemplateQuery", first: true, predicate: ElderSelectValueDirective, descendants: true, read: TemplateRef, static: true }], viewQueries: [{ propertyName: "matAutocomplete", first: true, predicate: ["auto"], descendants: true }], exportAs: ["elderAutocomplete"], ngImport: i0, template: "<mat-autocomplete\n #auto=\"matAutocomplete\"\n [autoActiveFirstOption]=\"true\"\n (opened)=\"onAutocompleteOpened($event)\"\n (optionSelected)=\"onOptionSelected($event)\"\n elderInfiniteScroll elderElderInfiniteAutocomplete (closeToEnd)=\"onAutoCompleteCloseToEnd($event)\"\n>\n <!--\n <mat-option *ngIf=\"allowNull\" [value]=\"null\">{{nullDisplay | translate}}</mat-option>\n -->\n\n <mat-option disabled *ngIf=\"!(dataContext$ | async)\">\n <span class=\"mat-caption\">No DataSource / DataContext!</span>\n </mat-option>\n\n <ng-container *ngIf=\"dataContext$ | async as dc\">\n\n <mat-option disabled *ngIf=\"dc.isClosed\">\n <div class=\"layout-row place-start-center gap-sm\">\n <mat-icon color=\"warn\">warning</mat-icon>\n <span class=\"mat-caption\">DataContext Closed!</span>\n </div>\n </mat-option>\n\n <ng-container *ngIf=\"availableSuggestions$ | async as suggestions\">\n\n <mat-option *ngIf=\"suggestions.length === 0\" disabled>\n No Data.\n </mat-option>\n\n <ng-container *ngFor=\"let suggestion of suggestions\">\n <mat-option\n *ngIf=\"isOptionVisible(suggestion)\"\n [value]=\"toOptionValue(suggestion)\"\n [id]=\"getIdAsString(suggestion)\"\n [disabled]=\"!isOptionAvailable(suggestion)\"\n >\n <ng-container\n *ngTemplateOutlet=\"valueTemplate || simpleValueTemplate; context: {$implicit: suggestion}\">\n </ng-container>\n <!--\n <span class=\"mat-caption\">value: {{toOptionValue(suggestion)}}</span>\n -->\n </mat-option>\n </ng-container>\n </ng-container>\n </ng-container>\n\n <ng-container *ngIf=\"dataState$ | async as state\">\n\n <mat-option disabled *ngIf=\"!state.idle || state.loading\">\n <mat-progress-bar\n [value]=\"100\"\n [mode]=\"state.loading ? 'query' : 'determinate'\"\n [color]=\"state.error ? 'warn' : 'primary'\"\n ></mat-progress-bar>\n </mat-option>\n\n </ng-container>\n</mat-autocomplete>\n\n<ng-template #simpleValueTemplate let-value>\n <ng-container *ngIf=\"displayPropertyResolver$ | async as propertyResolver\">\n <span class=\"noselect\">{{propertyResolver(value)}}</span>\n </ng-container>\n</ng-template>\n", styles: [""], 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: "component", type: i2.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i3.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i4.ElderInfiniteScrollDirective, selector: "[elderInfiniteScroll]", inputs: ["listenToHost", "eventThrottle", "offsetFactor", "ignoreScrollEvent", "containerId", "scrollContainer"], outputs: ["closeToEnd", "scrolling"] }, { kind: "directive", type: i5.ElderInfiniteAutocompleteDirective, selector: "mat-autocomplete[elderElderInfiniteAutocomplete]" }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i7.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
159
|
+
ElderAutocompleteComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.0", type: ElderAutocompleteComponent, selector: "elder-autocomplete", inputs: { isOptionDisabledFn: "isOptionDisabledFn", isOptionHiddenFn: "isOptionHiddenFn", optionValueConverterFn: "optionValueConverterFn", enabled: "enabled", valueTemplate: "valueTemplate", dataContext: "dataContext", displayPropertyResolver: "displayPropertyResolver" }, outputs: { optionSelected: "optionSelected" }, queries: [{ propertyName: "valueTemplateQuery", first: true, predicate: ElderSelectValueDirective, descendants: true, read: TemplateRef, static: true }], viewQueries: [{ propertyName: "matAutocomplete", first: true, predicate: ["auto"], descendants: true }], exportAs: ["elderAutocomplete"], ngImport: i0, template: "<mat-autocomplete\n #auto=\"matAutocomplete\"\n panelWidth=\"auto\"\n [autoActiveFirstOption]=\"true\"\n (opened)=\"onAutocompleteOpened($event)\"\n (optionSelected)=\"onOptionSelected($event)\"\n elderInfiniteScroll elderElderInfiniteAutocomplete (closeToEnd)=\"onAutoCompleteCloseToEnd($event)\"\n>\n <!--\n <mat-option *ngIf=\"allowNull\" [value]=\"null\">{{nullDisplay | translate}}</mat-option>\n -->\n\n <mat-option disabled *ngIf=\"!(dataContext$ | async)\">\n <span class=\"mat-caption\">No DataSource / DataContext!</span>\n </mat-option>\n\n <ng-container *ngIf=\"dataContext$ | async as dc\">\n\n <mat-option disabled *ngIf=\"dc.isClosed\">\n <div class=\"layout-row place-start-center gap-sm\">\n <mat-icon color=\"warn\">warning</mat-icon>\n <span class=\"mat-caption\">DataContext Closed!</span>\n </div>\n </mat-option>\n\n <ng-container *ngIf=\"availableSuggestions$ | async as suggestions\">\n\n <mat-option *ngIf=\"suggestions.length === 0\" disabled>\n No Data.\n </mat-option>\n\n <ng-container *ngFor=\"let suggestion of suggestions\">\n <mat-option\n *ngIf=\"isOptionVisible(suggestion)\"\n [value]=\"toOptionValue(suggestion)\"\n [id]=\"getIdAsString(suggestion)\"\n [disabled]=\"!isOptionAvailable(suggestion)\"\n >\n <ng-container\n *ngTemplateOutlet=\"valueTemplate || simpleValueTemplate; context: {$implicit: suggestion}\">\n </ng-container>\n <!--\n <span class=\"mat-caption\">value: {{toOptionValue(suggestion)}}</span>\n -->\n </mat-option>\n </ng-container>\n </ng-container>\n </ng-container>\n\n <ng-container *ngIf=\"dataState$ | async as state\">\n\n <mat-option disabled *ngIf=\"!state.idle || state.loading\">\n <mat-progress-bar\n [value]=\"100\"\n [mode]=\"state.loading ? 'query' : 'determinate'\"\n [color]=\"state.error ? 'warn' : 'primary'\"\n ></mat-progress-bar>\n </mat-option>\n\n </ng-container>\n</mat-autocomplete>\n\n<ng-template #simpleValueTemplate let-value>\n <ng-container *ngIf=\"displayPropertyResolver$ | async as propertyResolver\">\n <span class=\"noselect\">{{propertyResolver(value)}}</span>\n </ng-container>\n</ng-template>\n", styles: [""], 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: "component", type: i2.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i3.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i4.ElderInfiniteScrollDirective, selector: "[elderInfiniteScroll]", inputs: ["listenToHost", "eventThrottle", "offsetFactor", "ignoreScrollEvent", "containerId", "scrollContainer"], outputs: ["closeToEnd", "scrolling"] }, { kind: "directive", type: i5.ElderInfiniteAutocompleteDirective, selector: "mat-autocomplete[elderElderInfiniteAutocomplete]" }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i7.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
160
160
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ElderAutocompleteComponent, decorators: [{
|
|
161
161
|
type: Component,
|
|
162
|
-
args: [{ selector: 'elder-autocomplete', exportAs: 'elderAutocomplete', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-autocomplete\n #auto=\"matAutocomplete\"\n [autoActiveFirstOption]=\"true\"\n (opened)=\"onAutocompleteOpened($event)\"\n (optionSelected)=\"onOptionSelected($event)\"\n elderInfiniteScroll elderElderInfiniteAutocomplete (closeToEnd)=\"onAutoCompleteCloseToEnd($event)\"\n>\n <!--\n <mat-option *ngIf=\"allowNull\" [value]=\"null\">{{nullDisplay | translate}}</mat-option>\n -->\n\n <mat-option disabled *ngIf=\"!(dataContext$ | async)\">\n <span class=\"mat-caption\">No DataSource / DataContext!</span>\n </mat-option>\n\n <ng-container *ngIf=\"dataContext$ | async as dc\">\n\n <mat-option disabled *ngIf=\"dc.isClosed\">\n <div class=\"layout-row place-start-center gap-sm\">\n <mat-icon color=\"warn\">warning</mat-icon>\n <span class=\"mat-caption\">DataContext Closed!</span>\n </div>\n </mat-option>\n\n <ng-container *ngIf=\"availableSuggestions$ | async as suggestions\">\n\n <mat-option *ngIf=\"suggestions.length === 0\" disabled>\n No Data.\n </mat-option>\n\n <ng-container *ngFor=\"let suggestion of suggestions\">\n <mat-option\n *ngIf=\"isOptionVisible(suggestion)\"\n [value]=\"toOptionValue(suggestion)\"\n [id]=\"getIdAsString(suggestion)\"\n [disabled]=\"!isOptionAvailable(suggestion)\"\n >\n <ng-container\n *ngTemplateOutlet=\"valueTemplate || simpleValueTemplate; context: {$implicit: suggestion}\">\n </ng-container>\n <!--\n <span class=\"mat-caption\">value: {{toOptionValue(suggestion)}}</span>\n -->\n </mat-option>\n </ng-container>\n </ng-container>\n </ng-container>\n\n <ng-container *ngIf=\"dataState$ | async as state\">\n\n <mat-option disabled *ngIf=\"!state.idle || state.loading\">\n <mat-progress-bar\n [value]=\"100\"\n [mode]=\"state.loading ? 'query' : 'determinate'\"\n [color]=\"state.error ? 'warn' : 'primary'\"\n ></mat-progress-bar>\n </mat-option>\n\n </ng-container>\n</mat-autocomplete>\n\n<ng-template #simpleValueTemplate let-value>\n <ng-container *ngIf=\"displayPropertyResolver$ | async as propertyResolver\">\n <span class=\"noselect\">{{propertyResolver(value)}}</span>\n </ng-container>\n</ng-template>\n" }]
|
|
162
|
+
args: [{ selector: 'elder-autocomplete', exportAs: 'elderAutocomplete', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-autocomplete\n #auto=\"matAutocomplete\"\n panelWidth=\"auto\"\n [autoActiveFirstOption]=\"true\"\n (opened)=\"onAutocompleteOpened($event)\"\n (optionSelected)=\"onOptionSelected($event)\"\n elderInfiniteScroll elderElderInfiniteAutocomplete (closeToEnd)=\"onAutoCompleteCloseToEnd($event)\"\n>\n <!--\n <mat-option *ngIf=\"allowNull\" [value]=\"null\">{{nullDisplay | translate}}</mat-option>\n -->\n\n <mat-option disabled *ngIf=\"!(dataContext$ | async)\">\n <span class=\"mat-caption\">No DataSource / DataContext!</span>\n </mat-option>\n\n <ng-container *ngIf=\"dataContext$ | async as dc\">\n\n <mat-option disabled *ngIf=\"dc.isClosed\">\n <div class=\"layout-row place-start-center gap-sm\">\n <mat-icon color=\"warn\">warning</mat-icon>\n <span class=\"mat-caption\">DataContext Closed!</span>\n </div>\n </mat-option>\n\n <ng-container *ngIf=\"availableSuggestions$ | async as suggestions\">\n\n <mat-option *ngIf=\"suggestions.length === 0\" disabled>\n No Data.\n </mat-option>\n\n <ng-container *ngFor=\"let suggestion of suggestions\">\n <mat-option\n *ngIf=\"isOptionVisible(suggestion)\"\n [value]=\"toOptionValue(suggestion)\"\n [id]=\"getIdAsString(suggestion)\"\n [disabled]=\"!isOptionAvailable(suggestion)\"\n >\n <ng-container\n *ngTemplateOutlet=\"valueTemplate || simpleValueTemplate; context: {$implicit: suggestion}\">\n </ng-container>\n <!--\n <span class=\"mat-caption\">value: {{toOptionValue(suggestion)}}</span>\n -->\n </mat-option>\n </ng-container>\n </ng-container>\n </ng-container>\n\n <ng-container *ngIf=\"dataState$ | async as state\">\n\n <mat-option disabled *ngIf=\"!state.idle || state.loading\">\n <mat-progress-bar\n [value]=\"100\"\n [mode]=\"state.loading ? 'query' : 'determinate'\"\n [color]=\"state.error ? 'warn' : 'primary'\"\n ></mat-progress-bar>\n </mat-option>\n\n </ng-container>\n</mat-autocomplete>\n\n<ng-template #simpleValueTemplate let-value>\n <ng-container *ngIf=\"displayPropertyResolver$ | async as propertyResolver\">\n <span class=\"noselect\">{{propertyResolver(value)}}</span>\n </ng-container>\n</ng-template>\n" }]
|
|
163
163
|
}], ctorParameters: function () { return [{ type: i0.NgZone }]; }, propDecorators: { valueTemplateQuery: [{
|
|
164
164
|
type: ContentChild,
|
|
165
165
|
args: [ElderSelectValueDirective, { read: TemplateRef, static: true }]
|
|
@@ -183,4 +183,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImpor
|
|
|
183
183
|
}], displayPropertyResolver: [{
|
|
184
184
|
type: Input
|
|
185
185
|
}] } });
|
|
186
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvaW5wdXQvYXV0b2NvbXBsZXRlL2VsZGVyLWF1dG9jb21wbGV0ZS9lbGRlci1hdXRvY29tcGxldGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9pbnB1dC9hdXRvY29tcGxldGUvZWxkZXItYXV0b2NvbXBsZXRlL2VsZGVyLWF1dG9jb21wbGV0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQWtCLE1BQU0sRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3RJLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNuRCxPQUFPLEVBQUMsZUFBZSxFQUFjLEVBQUUsRUFBRSxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDOUQsT0FBTyxFQUFlLHdCQUF3QixFQUFDLE1BQU0sbURBQW1ELENBQUM7QUFDekcsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDNUQsT0FBTyxFQUFDLE1BQU0sRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRCxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFHakUsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sOENBQThDLENBQUM7QUFDdkYsT0FBTyxFQUFDLCtCQUErQixFQUFDLE1BQU0sc0NBQXNDLENBQUM7Ozs7Ozs7OztBQVdy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LEVBQUUsTUFBTSxFQUFFLElBQUksRUFBQztnQkFVL0QsZUFBZTtzQkFEekIsU0FBUzt1QkFBQyxNQUFNO2dCQU1WLGtCQUFrQjtzQkFEeEIsS0FBSztnQkFJQyxnQkFBZ0I7c0JBRHRCLEtBQUs7Z0JBSUMsc0JBQXNCO3NCQUQ1QixLQUFLO2dCQWlCVSxjQUFjO3NCQUQ3QixNQUFNO2dCQStCSSxPQUFPO3NCQURqQixLQUFLO2dCQVVLLGFBQWE7c0JBRHZCLEtBQUs7Z0JBVUssV0FBVztzQkFEckIsS0FBSztnQkFVSyx1QkFBdUI7c0JBRGpDLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIENvbnRlbnRDaGlsZCwgSW5wdXQsIE5nWm9uZSwgT25Jbml0LCBPdXRwdXQsIFRlbXBsYXRlUmVmLCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtMb2dnZXJGYWN0b3J5fSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgb2YsIFN1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtJRGF0YUNvbnRleHQsIGlzQ29udGludWFibGVEYXRhQ29udGV4dH0gZnJvbSAnLi4vLi4vLi4vLi4vY29tbW9uL2RhdGEvZGF0YS1jb250ZXh0L2RhdGEtY29udGV4dCc7XG5pbXBvcnQge2NvZXJjZUJvb2xlYW5Qcm9wZXJ0eX0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7ZmlsdGVyLCBzd2l0Y2hNYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7cnVuSW5ab25lfSBmcm9tICcuLi8uLi8uLi8uLi9jb21tb24vdXRpbHMvbmctem9uZS11dGlscyc7XG5pbXBvcnQge0RhdGFDb250ZXh0U3RhdHVzfSBmcm9tICcuLi8uLi8uLi8uLi9jb21tb24vZGF0YS9kYXRhLWNvbnRleHQvZGF0YS1jb250ZXh0LXN0YXR1cyc7XG5pbXBvcnQge01hdEF1dG9jb21wbGV0ZSwgTWF0QXV0b2NvbXBsZXRlU2VsZWN0ZWRFdmVudH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYXV0b2NvbXBsZXRlJztcbmltcG9ydCB7RWxkZXJTZWxlY3RWYWx1ZURpcmVjdGl2ZX0gZnJvbSAnLi4vLi4vLi4vc2VsZWN0L2VsZGVyLXNlbGVjdC12YWx1ZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHtFbGRlckF1dG9jb21wbGV0ZU9wdGlvblNlbGVjdGVkfSBmcm9tICcuL2VsZGVyLWF1dG9jb21wbGV0ZS1vcHRpb24tc2VsZWN0ZWQnO1xuXG50eXBlIFRleHRSZXNvbHZlckZuID0gKHZhbHVlOiBhbnkpID0+IHN0cmluZztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZWxkZXItYXV0b2NvbXBsZXRlJyxcbiAgZXhwb3J0QXM6ICdlbGRlckF1dG9jb21wbGV0ZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9lbGRlci1hdXRvY29tcGxldGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbGRlci1hdXRvY29tcGxldGUuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJBdXRvY29tcGxldGVDb21wb25lbnQ8VCA9IGFueSwgVElkID0gYW55PiB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2dnZXIgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIC8qKlxuICAgKiBJcyB0aGlzIGF1dG8tY29tcGxldGUgZW5hYmxlZD9cbiAgICovXG4gIHByaXZhdGUgX2VuYWJsZWQgPSB0cnVlO1xuXG4gIC8qKlxuICAgKiBUaGUgdmFsdWUgdGVtcGxhdGUgdG8gY3VzdG9taXplIHRoZSB1aSBsb29rLlxuICAgKi9cbiAgQENvbnRlbnRDaGlsZChFbGRlclNlbGVjdFZhbHVlRGlyZWN0aXZlLCB7cmVhZDogVGVtcGxhdGVSZWYsIHN0YXRpYzogdHJ1ZX0pXG4gIHB1YmxpYyB2YWx1ZVRlbXBsYXRlUXVlcnk6IFRlbXBsYXRlUmVmPGFueT47XG4gIHByaXZhdGUgX3ZhbHVlVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgLyoqXG4gICAqIFRoZSB1bmRlcmx5aW5nIE1hdGVyaWFsIEF1dG9jb21wbGV0ZVxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IG1hdEF1dG9jb21wbGV0ZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE1hdEF1dG9jb21wbGV0ZT4obnVsbCk7XG5cbiAgQFZpZXdDaGlsZCgnYXV0bycpXG4gIHB1YmxpYyBzZXQgbWF0QXV0b2NvbXBsZXRlKGF1dG86IE1hdEF1dG9jb21wbGV0ZSkge1xuICAgIHRoaXMubWF0QXV0b2NvbXBsZXRlJC5uZXh0KGF1dG8pO1xuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIGlzT3B0aW9uRGlzYWJsZWRGbjogKG9wdGlvbjogVCkgPT4gYm9vbGVhbjtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgaXNPcHRpb25IaWRkZW5GbjogKG9wdGlvbjogVCkgPT4gYm9vbGVhbjtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgb3B0aW9uVmFsdWVDb252ZXJ0ZXJGbjogKG9wdGlvbjogVCkgPT4gYW55O1xuXG4gIC8qKlxuICAgKiBUaGUgRGF0YUNvbnRleHQgd2hpY2ggaG9sZHMgdGhlIGF1dG9jb21wbGV0ZSBzdWdnZXN0aW9ucy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBkYXRhQ29udGV4dCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PElEYXRhQ29udGV4dDxUPj4obnVsbCk7XG5cbiAgcHVibGljIHJlYWRvbmx5IHRyaWdnZXJSZWxvYWQkID0gbmV3IFN1YmplY3Q8YW55PigpO1xuXG4gIHB1YmxpYyByZWFkb25seSBkaXNwbGF5UHJvcGVydHlSZXNvbHZlciQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFRleHRSZXNvbHZlckZuPigodmFsdWU6IFQpID0+IHRoaXMucHJvcGVydHlTdHJpbmdWYWx1ZSh2YWx1ZSwgbnVsbCkpO1xuXG4gIHB1YmxpYyByZWFkb25seSBkYXRhU3RhdGUkOiBPYnNlcnZhYmxlPERhdGFDb250ZXh0U3RhdHVzPjtcblxuICBwdWJsaWMgcmVhZG9ubHkgYXZhaWxhYmxlU3VnZ2VzdGlvbnMkOiBPYnNlcnZhYmxlPFRbXT47XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyByZWFkb25seSBvcHRpb25TZWxlY3RlZCA9IG5ldyBTdWJqZWN0PEVsZGVyQXV0b2NvbXBsZXRlT3B0aW9uU2VsZWN0ZWQ+KCk7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSB6b25lOiBOZ1pvbmUsXG4gICkge1xuICAgIHRoaXMuZGF0YVN0YXRlJCA9IHRoaXMuZGF0YUNvbnRleHQkLnBpcGUoXG4gICAgICBmaWx0ZXIoZGMgPT4gISFkYyksXG4gICAgICBzd2l0Y2hNYXAoZGMgPT4gZGMuc3RhdHVzKSxcbiAgICAgIHJ1bkluWm9uZSh0aGlzLnpvbmUpXG4gICAgKTtcblxuICAgIHRoaXMuYXZhaWxhYmxlU3VnZ2VzdGlvbnMkID0gdGhpcy5kYXRhQ29udGV4dCQucGlwZShcbiAgICAgIHN3aXRjaE1hcChkYyA9PiBkYyA/IGRjLmRhdGEgOiBvZihbXSkpLFxuICAgICAgcnVuSW5ab25lKHRoaXMuem9uZSlcbiAgICApO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBlbmFibGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZW5hYmxlZCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGVuYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2VuYWJsZWQ7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHZhbHVlVGVtcGxhdGUodGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4pIHtcbiAgICB0aGlzLl92YWx1ZVRlbXBsYXRlID0gdGVtcGxhdGU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHZhbHVlVGVtcGxhdGUoKTogVGVtcGxhdGVSZWY8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlVGVtcGxhdGUgfHwgdGhpcy52YWx1ZVRlbXBsYXRlUXVlcnk7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRhdGFDb250ZXh0KGRhdGE6IElEYXRhQ29udGV4dDxUPikge1xuICAgIHRoaXMuZGF0YUNvbnRleHQkLm5leHQoZGF0YSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRhdGFDb250ZXh0KCk6IElEYXRhQ29udGV4dDxUPiB7XG4gICAgcmV0dXJuIHRoaXMuZGF0YUNvbnRleHQkLmdldFZhbHVlKCk7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRpc3BsYXlQcm9wZXJ0eVJlc29sdmVyKHJlc29sdmVyOiBUZXh0UmVzb2x2ZXJGbikge1xuICAgIHRoaXMuZGlzcGxheVByb3BlcnR5UmVzb2x2ZXIkLm5leHQocmVzb2x2ZXIpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFB1YmxpYyBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG9uT3B0aW9uU2VsZWN0ZWQoZXZlbnQ6IE1hdEF1dG9jb21wbGV0ZVNlbGVjdGVkRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCBvcHRpb24gPSBldmVudC5vcHRpb247XG4gICAgY29uc3QgaWQgPSBvcHRpb24uaWQgYXMgdW5rbm93biBhcyBUSWQ7XG4gICAgdGhpcy5vcHRpb25TZWxlY3RlZC5uZXh0KFxuICAgICAgbmV3IEVsZGVyQXV0b2NvbXBsZXRlT3B0aW9uU2VsZWN0ZWQoXG4gICAgICAgIHRoaXMsXG4gICAgICAgIGlkLFxuICAgICAgICB0aGlzLmdldEVudGl0eUJ5SWQoaWQpLFxuICAgICAgICBvcHRpb24udmFsdWVcbiAgICAgIClcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRFbnRpdHlCeUlkKGlkOiBUSWQpOiBUIHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCBkYyA9IHRoaXMuZGF0YUNvbnRleHQ7XG4gICAgaWYoZGMpe1xuICAgICAgcmV0dXJuIGRjLnNuYXBzaG90LmRhdGEuZmluZChlID0+IHRoaXMuZ2V0SWQoZSkgPT0gaWQpO1xuICAgIH1cbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG5cbiAgcHVibGljIG9uQXV0b2NvbXBsZXRlT3BlbmVkKGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnQXV0b2NvbXBsZXRlIG9wZW5lZDonLCBldmVudCk7XG4gICAgaWYgKHRoaXMuZW5hYmxlZCkge1xuICAgICAgdGhpcy50cmlnZ2VyUmVsb2FkJC5uZXh0KG51bGwpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvbkF1dG9Db21wbGV0ZUNsb3NlVG9FbmQoZXZlbnQ6IFVJRXZlbnQpOiB2b2lkIHtcbiAgICAvLyB0aGlzLmxvZ2dlci5kZWJ1ZygnQXV0b2NvbXBsZXRlIGlzIGNsb3NlIHRvIGVuZCEnKTtcbiAgICBpZiAoaXNDb250aW51YWJsZURhdGFDb250ZXh0KHRoaXMuZGF0YUNvbnRleHQpKSB7XG4gICAgICBpZiAoIXRoaXMuZGF0YUNvbnRleHQuc25hcHNob3QuaXNMb2FkaW5nKSB7XG4gICAgICAgIHRoaXMuZGF0YUNvbnRleHQubG9hZE1vcmUoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0SWRBc1N0cmluZyh2YWx1ZTogVCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIFN0cmluZyh0aGlzLmdldElkKHZhbHVlKSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0SWQodmFsdWU6IFQpOiBUSWQge1xuICAgIHJldHVybiB0aGlzLmRhdGFDb250ZXh0Py5kYXRhU291cmNlPy5nZXRJZCh2YWx1ZSkgfHwgdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgaXNPcHRpb25BdmFpbGFibGUob3B0aW9uOiBUKTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMuaXNPcHRpb25EaXNhYmxlZEZuKSB7XG4gICAgICByZXR1cm4gIXRoaXMuaXNPcHRpb25EaXNhYmxlZEZuKG9wdGlvbik7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBpc09wdGlvblZpc2libGUob3B0aW9uOiBUKTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMuaXNPcHRpb25IaWRkZW5Gbikge1xuICAgICAgcmV0dXJuICF0aGlzLmlzT3B0aW9uSGlkZGVuRm4ob3B0aW9uKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHRvT3B0aW9uVmFsdWUob3B0aW9uOiBUKTogYW55IHtcbiAgICBpZiAodGhpcy5vcHRpb25WYWx1ZUNvbnZlcnRlckZuKSB7XG4gICAgICByZXR1cm4gdGhpcy5vcHRpb25WYWx1ZUNvbnZlcnRlckZuKG9wdGlvbik7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBvcHRpb247XG4gICAgfVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgbWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgLyoqXG4gICAqIFRPRE8gRHVwbGljYXRlIGluIGVsZGVyLXNlbGVjdFxuICAgKi9cbiAgcHJpdmF0ZSBwcm9wZXJ0eVN0cmluZ1ZhbHVlKHZhbHVlOiBULCBwcm9wZXJ0eTogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgaWYgKHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGlmIChwcm9wZXJ0eSkge1xuICAgICAgcmV0dXJuICg8YW55PnZhbHVlKVtwcm9wZXJ0eV07XG4gICAgfVxuXG4gICAgcmV0dXJuIFN0cmluZyh2YWx1ZSk7XG4gIH1cbn1cbiIsIjxtYXQtYXV0b2NvbXBsZXRlXG4gICNhdXRvPVwibWF0QXV0b2NvbXBsZXRlXCJcbiAgW2F1dG9BY3RpdmVGaXJzdE9wdGlvbl09XCJ0cnVlXCJcbiAgKG9wZW5lZCk9XCJvbkF1dG9jb21wbGV0ZU9wZW5lZCgkZXZlbnQpXCJcbiAgKG9wdGlvblNlbGVjdGVkKT1cIm9uT3B0aW9uU2VsZWN0ZWQoJGV2ZW50KVwiXG4gIGVsZGVySW5maW5pdGVTY3JvbGwgZWxkZXJFbGRlckluZmluaXRlQXV0b2NvbXBsZXRlIChjbG9zZVRvRW5kKT1cIm9uQXV0b0NvbXBsZXRlQ2xvc2VUb0VuZCgkZXZlbnQpXCJcbj5cbiAgPCEtLVxuICA8bWF0LW9wdGlvbiAqbmdJZj1cImFsbG93TnVsbFwiIFt2YWx1ZV09XCJudWxsXCI+e3tudWxsRGlzcGxheSB8IHRyYW5zbGF0ZX19PC9tYXQtb3B0aW9uPlxuICAtLT5cblxuICA8bWF0LW9wdGlvbiBkaXNhYmxlZCAgKm5nSWY9XCIhKGRhdGFDb250ZXh0JCB8IGFzeW5jKVwiPlxuICAgIDxzcGFuIGNsYXNzPVwibWF0LWNhcHRpb25cIj5ObyBEYXRhU291cmNlIC8gRGF0YUNvbnRleHQhPC9zcGFuPlxuICA8L21hdC1vcHRpb24+XG5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImRhdGFDb250ZXh0JCB8IGFzeW5jIGFzIGRjXCI+XG5cbiAgICA8bWF0LW9wdGlvbiBkaXNhYmxlZCAgKm5nSWY9XCJkYy5pc0Nsb3NlZFwiPlxuICAgICAgPGRpdiBjbGFzcz1cImxheW91dC1yb3cgcGxhY2Utc3RhcnQtY2VudGVyIGdhcC1zbVwiPlxuICAgICAgICA8bWF0LWljb24gY29sb3I9XCJ3YXJuXCI+d2FybmluZzwvbWF0LWljb24+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwibWF0LWNhcHRpb25cIj5EYXRhQ29udGV4dCBDbG9zZWQhPC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgPC9tYXQtb3B0aW9uPlxuXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImF2YWlsYWJsZVN1Z2dlc3Rpb25zJCB8IGFzeW5jIGFzIHN1Z2dlc3Rpb25zXCI+XG5cbiAgICAgIDxtYXQtb3B0aW9uICpuZ0lmPVwic3VnZ2VzdGlvbnMubGVuZ3RoID09PSAwXCIgZGlzYWJsZWQ+XG4gICAgICAgIE5vIERhdGEuXG4gICAgICA8L21hdC1vcHRpb24+XG5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IHN1Z2dlc3Rpb24gb2Ygc3VnZ2VzdGlvbnNcIj5cbiAgICAgICAgPG1hdC1vcHRpb25cbiAgICAgICAgICAqbmdJZj1cImlzT3B0aW9uVmlzaWJsZShzdWdnZXN0aW9uKVwiXG4gICAgICAgICAgW3ZhbHVlXT1cInRvT3B0aW9uVmFsdWUoc3VnZ2VzdGlvbilcIlxuICAgICAgICAgIFtpZF09XCJnZXRJZEFzU3RyaW5nKHN1Z2dlc3Rpb24pXCJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiIWlzT3B0aW9uQXZhaWxhYmxlKHN1Z2dlc3Rpb24pXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwidmFsdWVUZW1wbGF0ZSB8fCBzaW1wbGVWYWx1ZVRlbXBsYXRlOyBjb250ZXh0OiB7JGltcGxpY2l0OiBzdWdnZXN0aW9ufVwiPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDwhLS1cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1hdC1jYXB0aW9uXCI+dmFsdWU6IHt7dG9PcHRpb25WYWx1ZShzdWdnZXN0aW9uKX19PC9zcGFuPlxuICAgICAgICAgIC0tPlxuICAgICAgICA8L21hdC1vcHRpb24+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9uZy1jb250YWluZXI+XG5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImRhdGFTdGF0ZSQgfCBhc3luYyBhcyBzdGF0ZVwiPlxuXG4gICAgPG1hdC1vcHRpb24gZGlzYWJsZWQgKm5nSWY9XCIhc3RhdGUuaWRsZSB8fCBzdGF0ZS5sb2FkaW5nXCI+XG4gICAgICA8bWF0LXByb2dyZXNzLWJhclxuICAgICAgICBbdmFsdWVdPVwiMTAwXCJcbiAgICAgICAgW21vZGVdPVwic3RhdGUubG9hZGluZyA/ICdxdWVyeScgOiAnZGV0ZXJtaW5hdGUnXCJcbiAgICAgICAgW2NvbG9yXT1cInN0YXRlLmVycm9yID8gJ3dhcm4nIDogJ3ByaW1hcnknXCJcbiAgICAgID48L21hdC1wcm9ncmVzcy1iYXI+XG4gICAgPC9tYXQtb3B0aW9uPlxuXG4gIDwvbmctY29udGFpbmVyPlxuPC9tYXQtYXV0b2NvbXBsZXRlPlxuXG48bmctdGVtcGxhdGUgI3NpbXBsZVZhbHVlVGVtcGxhdGUgbGV0LXZhbHVlPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiZGlzcGxheVByb3BlcnR5UmVzb2x2ZXIkIHwgYXN5bmMgYXMgcHJvcGVydHlSZXNvbHZlclwiPlxuICAgIDxzcGFuIGNsYXNzPVwibm9zZWxlY3RcIj57e3Byb3BlcnR5UmVzb2x2ZXIodmFsdWUpfX08L3NwYW4+XG4gIDwvbmctY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
186
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvaW5wdXQvYXV0b2NvbXBsZXRlL2VsZGVyLWF1dG9jb21wbGV0ZS9lbGRlci1hdXRvY29tcGxldGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9pbnB1dC9hdXRvY29tcGxldGUvZWxkZXItYXV0b2NvbXBsZXRlL2VsZGVyLWF1dG9jb21wbGV0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQWtCLE1BQU0sRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3RJLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNuRCxPQUFPLEVBQUMsZUFBZSxFQUFjLEVBQUUsRUFBRSxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDOUQsT0FBTyxFQUFlLHdCQUF3QixFQUFDLE1BQU0sbURBQW1ELENBQUM7QUFDekcsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7QUFDNUQsT0FBTyxFQUFDLE1BQU0sRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRCxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFHakUsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sOENBQThDLENBQUM7QUFDdkYsT0FBTyxFQUFDLCtCQUErQixFQUFDLE1BQU0sc0NBQXNDLENBQUM7Ozs7Ozs7OztBQVdy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LEVBQUUsTUFBTSxFQUFFLElBQUksRUFBQztnQkFVL0QsZUFBZTtzQkFEekIsU0FBUzt1QkFBQyxNQUFNO2dCQU1WLGtCQUFrQjtzQkFEeEIsS0FBSztnQkFJQyxnQkFBZ0I7c0JBRHRCLEtBQUs7Z0JBSUMsc0JBQXNCO3NCQUQ1QixLQUFLO2dCQWlCVSxjQUFjO3NCQUQ3QixNQUFNO2dCQStCSSxPQUFPO3NCQURqQixLQUFLO2dCQVVLLGFBQWE7c0JBRHZCLEtBQUs7Z0JBVUssV0FBVztzQkFEckIsS0FBSztnQkFVSyx1QkFBdUI7c0JBRGpDLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIENvbnRlbnRDaGlsZCwgSW5wdXQsIE5nWm9uZSwgT25Jbml0LCBPdXRwdXQsIFRlbXBsYXRlUmVmLCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtMb2dnZXJGYWN0b3J5fSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgb2YsIFN1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtJRGF0YUNvbnRleHQsIGlzQ29udGludWFibGVEYXRhQ29udGV4dH0gZnJvbSAnLi4vLi4vLi4vLi4vY29tbW9uL2RhdGEvZGF0YS1jb250ZXh0L2RhdGEtY29udGV4dCc7XG5pbXBvcnQge2NvZXJjZUJvb2xlYW5Qcm9wZXJ0eX0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7ZmlsdGVyLCBzd2l0Y2hNYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7cnVuSW5ab25lfSBmcm9tICcuLi8uLi8uLi8uLi9jb21tb24vdXRpbHMvbmctem9uZS11dGlscyc7XG5pbXBvcnQge0RhdGFDb250ZXh0U3RhdHVzfSBmcm9tICcuLi8uLi8uLi8uLi9jb21tb24vZGF0YS9kYXRhLWNvbnRleHQvZGF0YS1jb250ZXh0LXN0YXR1cyc7XG5pbXBvcnQge01hdEF1dG9jb21wbGV0ZSwgTWF0QXV0b2NvbXBsZXRlU2VsZWN0ZWRFdmVudH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYXV0b2NvbXBsZXRlJztcbmltcG9ydCB7RWxkZXJTZWxlY3RWYWx1ZURpcmVjdGl2ZX0gZnJvbSAnLi4vLi4vLi4vc2VsZWN0L2VsZGVyLXNlbGVjdC12YWx1ZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHtFbGRlckF1dG9jb21wbGV0ZU9wdGlvblNlbGVjdGVkfSBmcm9tICcuL2VsZGVyLWF1dG9jb21wbGV0ZS1vcHRpb24tc2VsZWN0ZWQnO1xuXG50eXBlIFRleHRSZXNvbHZlckZuID0gKHZhbHVlOiBhbnkpID0+IHN0cmluZztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZWxkZXItYXV0b2NvbXBsZXRlJyxcbiAgZXhwb3J0QXM6ICdlbGRlckF1dG9jb21wbGV0ZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9lbGRlci1hdXRvY29tcGxldGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbGRlci1hdXRvY29tcGxldGUuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJBdXRvY29tcGxldGVDb21wb25lbnQ8VCA9IGFueSwgVElkID0gYW55PiB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2dnZXIgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIC8qKlxuICAgKiBJcyB0aGlzIGF1dG8tY29tcGxldGUgZW5hYmxlZD9cbiAgICovXG4gIHByaXZhdGUgX2VuYWJsZWQgPSB0cnVlO1xuXG4gIC8qKlxuICAgKiBUaGUgdmFsdWUgdGVtcGxhdGUgdG8gY3VzdG9taXplIHRoZSB1aSBsb29rLlxuICAgKi9cbiAgQENvbnRlbnRDaGlsZChFbGRlclNlbGVjdFZhbHVlRGlyZWN0aXZlLCB7cmVhZDogVGVtcGxhdGVSZWYsIHN0YXRpYzogdHJ1ZX0pXG4gIHB1YmxpYyB2YWx1ZVRlbXBsYXRlUXVlcnk6IFRlbXBsYXRlUmVmPGFueT47XG4gIHByaXZhdGUgX3ZhbHVlVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgLyoqXG4gICAqIFRoZSB1bmRlcmx5aW5nIE1hdGVyaWFsIEF1dG9jb21wbGV0ZVxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IG1hdEF1dG9jb21wbGV0ZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE1hdEF1dG9jb21wbGV0ZT4obnVsbCk7XG5cbiAgQFZpZXdDaGlsZCgnYXV0bycpXG4gIHB1YmxpYyBzZXQgbWF0QXV0b2NvbXBsZXRlKGF1dG86IE1hdEF1dG9jb21wbGV0ZSkge1xuICAgIHRoaXMubWF0QXV0b2NvbXBsZXRlJC5uZXh0KGF1dG8pO1xuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIGlzT3B0aW9uRGlzYWJsZWRGbjogKG9wdGlvbjogVCkgPT4gYm9vbGVhbjtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgaXNPcHRpb25IaWRkZW5GbjogKG9wdGlvbjogVCkgPT4gYm9vbGVhbjtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgb3B0aW9uVmFsdWVDb252ZXJ0ZXJGbjogKG9wdGlvbjogVCkgPT4gYW55O1xuXG4gIC8qKlxuICAgKiBUaGUgRGF0YUNvbnRleHQgd2hpY2ggaG9sZHMgdGhlIGF1dG9jb21wbGV0ZSBzdWdnZXN0aW9ucy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBkYXRhQ29udGV4dCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PElEYXRhQ29udGV4dDxUPj4obnVsbCk7XG5cbiAgcHVibGljIHJlYWRvbmx5IHRyaWdnZXJSZWxvYWQkID0gbmV3IFN1YmplY3Q8YW55PigpO1xuXG4gIHB1YmxpYyByZWFkb25seSBkaXNwbGF5UHJvcGVydHlSZXNvbHZlciQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFRleHRSZXNvbHZlckZuPigodmFsdWU6IFQpID0+IHRoaXMucHJvcGVydHlTdHJpbmdWYWx1ZSh2YWx1ZSwgbnVsbCkpO1xuXG4gIHB1YmxpYyByZWFkb25seSBkYXRhU3RhdGUkOiBPYnNlcnZhYmxlPERhdGFDb250ZXh0U3RhdHVzPjtcblxuICBwdWJsaWMgcmVhZG9ubHkgYXZhaWxhYmxlU3VnZ2VzdGlvbnMkOiBPYnNlcnZhYmxlPFRbXT47XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyByZWFkb25seSBvcHRpb25TZWxlY3RlZCA9IG5ldyBTdWJqZWN0PEVsZGVyQXV0b2NvbXBsZXRlT3B0aW9uU2VsZWN0ZWQ+KCk7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSB6b25lOiBOZ1pvbmUsXG4gICkge1xuICAgIHRoaXMuZGF0YVN0YXRlJCA9IHRoaXMuZGF0YUNvbnRleHQkLnBpcGUoXG4gICAgICBmaWx0ZXIoZGMgPT4gISFkYyksXG4gICAgICBzd2l0Y2hNYXAoZGMgPT4gZGMuc3RhdHVzKSxcbiAgICAgIHJ1bkluWm9uZSh0aGlzLnpvbmUpXG4gICAgKTtcblxuICAgIHRoaXMuYXZhaWxhYmxlU3VnZ2VzdGlvbnMkID0gdGhpcy5kYXRhQ29udGV4dCQucGlwZShcbiAgICAgIHN3aXRjaE1hcChkYyA9PiBkYyA/IGRjLmRhdGEgOiBvZihbXSkpLFxuICAgICAgcnVuSW5ab25lKHRoaXMuem9uZSlcbiAgICApO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBlbmFibGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fZW5hYmxlZCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGVuYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2VuYWJsZWQ7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHZhbHVlVGVtcGxhdGUodGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4pIHtcbiAgICB0aGlzLl92YWx1ZVRlbXBsYXRlID0gdGVtcGxhdGU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHZhbHVlVGVtcGxhdGUoKTogVGVtcGxhdGVSZWY8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlVGVtcGxhdGUgfHwgdGhpcy52YWx1ZVRlbXBsYXRlUXVlcnk7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRhdGFDb250ZXh0KGRhdGE6IElEYXRhQ29udGV4dDxUPikge1xuICAgIHRoaXMuZGF0YUNvbnRleHQkLm5leHQoZGF0YSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRhdGFDb250ZXh0KCk6IElEYXRhQ29udGV4dDxUPiB7XG4gICAgcmV0dXJuIHRoaXMuZGF0YUNvbnRleHQkLmdldFZhbHVlKCk7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRpc3BsYXlQcm9wZXJ0eVJlc29sdmVyKHJlc29sdmVyOiBUZXh0UmVzb2x2ZXJGbikge1xuICAgIHRoaXMuZGlzcGxheVByb3BlcnR5UmVzb2x2ZXIkLm5leHQocmVzb2x2ZXIpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFB1YmxpYyBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG9uT3B0aW9uU2VsZWN0ZWQoZXZlbnQ6IE1hdEF1dG9jb21wbGV0ZVNlbGVjdGVkRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCBvcHRpb24gPSBldmVudC5vcHRpb247XG4gICAgY29uc3QgaWQgPSBvcHRpb24uaWQgYXMgdW5rbm93biBhcyBUSWQ7XG4gICAgdGhpcy5vcHRpb25TZWxlY3RlZC5uZXh0KFxuICAgICAgbmV3IEVsZGVyQXV0b2NvbXBsZXRlT3B0aW9uU2VsZWN0ZWQoXG4gICAgICAgIHRoaXMsXG4gICAgICAgIGlkLFxuICAgICAgICB0aGlzLmdldEVudGl0eUJ5SWQoaWQpLFxuICAgICAgICBvcHRpb24udmFsdWVcbiAgICAgIClcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRFbnRpdHlCeUlkKGlkOiBUSWQpOiBUIHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCBkYyA9IHRoaXMuZGF0YUNvbnRleHQ7XG4gICAgaWYoZGMpe1xuICAgICAgcmV0dXJuIGRjLnNuYXBzaG90LmRhdGEuZmluZChlID0+IHRoaXMuZ2V0SWQoZSkgPT0gaWQpO1xuICAgIH1cbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG5cbiAgcHVibGljIG9uQXV0b2NvbXBsZXRlT3BlbmVkKGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnQXV0b2NvbXBsZXRlIG9wZW5lZDonLCBldmVudCk7XG4gICAgaWYgKHRoaXMuZW5hYmxlZCkge1xuICAgICAgdGhpcy50cmlnZ2VyUmVsb2FkJC5uZXh0KG51bGwpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvbkF1dG9Db21wbGV0ZUNsb3NlVG9FbmQoZXZlbnQ6IFVJRXZlbnQpOiB2b2lkIHtcbiAgICAvLyB0aGlzLmxvZ2dlci5kZWJ1ZygnQXV0b2NvbXBsZXRlIGlzIGNsb3NlIHRvIGVuZCEnKTtcbiAgICBpZiAoaXNDb250aW51YWJsZURhdGFDb250ZXh0KHRoaXMuZGF0YUNvbnRleHQpKSB7XG4gICAgICBpZiAoIXRoaXMuZGF0YUNvbnRleHQuc25hcHNob3QuaXNMb2FkaW5nKSB7XG4gICAgICAgIHRoaXMuZGF0YUNvbnRleHQubG9hZE1vcmUoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0SWRBc1N0cmluZyh2YWx1ZTogVCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIFN0cmluZyh0aGlzLmdldElkKHZhbHVlKSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0SWQodmFsdWU6IFQpOiBUSWQge1xuICAgIHJldHVybiB0aGlzLmRhdGFDb250ZXh0Py5kYXRhU291cmNlPy5nZXRJZCh2YWx1ZSkgfHwgdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgaXNPcHRpb25BdmFpbGFibGUob3B0aW9uOiBUKTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMuaXNPcHRpb25EaXNhYmxlZEZuKSB7XG4gICAgICByZXR1cm4gIXRoaXMuaXNPcHRpb25EaXNhYmxlZEZuKG9wdGlvbik7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBpc09wdGlvblZpc2libGUob3B0aW9uOiBUKTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMuaXNPcHRpb25IaWRkZW5Gbikge1xuICAgICAgcmV0dXJuICF0aGlzLmlzT3B0aW9uSGlkZGVuRm4ob3B0aW9uKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHRvT3B0aW9uVmFsdWUob3B0aW9uOiBUKTogYW55IHtcbiAgICBpZiAodGhpcy5vcHRpb25WYWx1ZUNvbnZlcnRlckZuKSB7XG4gICAgICByZXR1cm4gdGhpcy5vcHRpb25WYWx1ZUNvbnZlcnRlckZuKG9wdGlvbik7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBvcHRpb247XG4gICAgfVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgbWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgLyoqXG4gICAqIFRPRE8gRHVwbGljYXRlIGluIGVsZGVyLXNlbGVjdFxuICAgKi9cbiAgcHJpdmF0ZSBwcm9wZXJ0eVN0cmluZ1ZhbHVlKHZhbHVlOiBULCBwcm9wZXJ0eTogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgaWYgKHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIGlmIChwcm9wZXJ0eSkge1xuICAgICAgcmV0dXJuICg8YW55PnZhbHVlKVtwcm9wZXJ0eV07XG4gICAgfVxuXG4gICAgcmV0dXJuIFN0cmluZyh2YWx1ZSk7XG4gIH1cbn1cbiIsIjxtYXQtYXV0b2NvbXBsZXRlXG4gICNhdXRvPVwibWF0QXV0b2NvbXBsZXRlXCJcbiAgcGFuZWxXaWR0aD1cImF1dG9cIlxuICBbYXV0b0FjdGl2ZUZpcnN0T3B0aW9uXT1cInRydWVcIlxuICAob3BlbmVkKT1cIm9uQXV0b2NvbXBsZXRlT3BlbmVkKCRldmVudClcIlxuICAob3B0aW9uU2VsZWN0ZWQpPVwib25PcHRpb25TZWxlY3RlZCgkZXZlbnQpXCJcbiAgZWxkZXJJbmZpbml0ZVNjcm9sbCBlbGRlckVsZGVySW5maW5pdGVBdXRvY29tcGxldGUgKGNsb3NlVG9FbmQpPVwib25BdXRvQ29tcGxldGVDbG9zZVRvRW5kKCRldmVudClcIlxuPlxuICA8IS0tXG4gIDxtYXQtb3B0aW9uICpuZ0lmPVwiYWxsb3dOdWxsXCIgW3ZhbHVlXT1cIm51bGxcIj57e251bGxEaXNwbGF5IHwgdHJhbnNsYXRlfX08L21hdC1vcHRpb24+XG4gIC0tPlxuXG4gIDxtYXQtb3B0aW9uIGRpc2FibGVkICAqbmdJZj1cIiEoZGF0YUNvbnRleHQkIHwgYXN5bmMpXCI+XG4gICAgPHNwYW4gY2xhc3M9XCJtYXQtY2FwdGlvblwiPk5vIERhdGFTb3VyY2UgLyBEYXRhQ29udGV4dCE8L3NwYW4+XG4gIDwvbWF0LW9wdGlvbj5cblxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiZGF0YUNvbnRleHQkIHwgYXN5bmMgYXMgZGNcIj5cblxuICAgIDxtYXQtb3B0aW9uIGRpc2FibGVkICAqbmdJZj1cImRjLmlzQ2xvc2VkXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwibGF5b3V0LXJvdyBwbGFjZS1zdGFydC1jZW50ZXIgZ2FwLXNtXCI+XG4gICAgICAgIDxtYXQtaWNvbiBjb2xvcj1cIndhcm5cIj53YXJuaW5nPC9tYXQtaWNvbj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJtYXQtY2FwdGlvblwiPkRhdGFDb250ZXh0IENsb3NlZCE8L3NwYW4+XG4gICAgICA8L2Rpdj5cbiAgICA8L21hdC1vcHRpb24+XG5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYXZhaWxhYmxlU3VnZ2VzdGlvbnMkIHwgYXN5bmMgYXMgc3VnZ2VzdGlvbnNcIj5cblxuICAgICAgPG1hdC1vcHRpb24gKm5nSWY9XCJzdWdnZXN0aW9ucy5sZW5ndGggPT09IDBcIiBkaXNhYmxlZD5cbiAgICAgICAgTm8gRGF0YS5cbiAgICAgIDwvbWF0LW9wdGlvbj5cblxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgc3VnZ2VzdGlvbiBvZiBzdWdnZXN0aW9uc1wiPlxuICAgICAgICA8bWF0LW9wdGlvblxuICAgICAgICAgICpuZ0lmPVwiaXNPcHRpb25WaXNpYmxlKHN1Z2dlc3Rpb24pXCJcbiAgICAgICAgICBbdmFsdWVdPVwidG9PcHRpb25WYWx1ZShzdWdnZXN0aW9uKVwiXG4gICAgICAgICAgW2lkXT1cImdldElkQXNTdHJpbmcoc3VnZ2VzdGlvbilcIlxuICAgICAgICAgIFtkaXNhYmxlZF09XCIhaXNPcHRpb25BdmFpbGFibGUoc3VnZ2VzdGlvbilcIlxuICAgICAgICA+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ2YWx1ZVRlbXBsYXRlIHx8IHNpbXBsZVZhbHVlVGVtcGxhdGU7IGNvbnRleHQ6IHskaW1wbGljaXQ6IHN1Z2dlc3Rpb259XCI+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgPCEtLVxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWF0LWNhcHRpb25cIj52YWx1ZToge3t0b09wdGlvblZhbHVlKHN1Z2dlc3Rpb24pfX08L3NwYW4+XG4gICAgICAgICAgLS0+XG4gICAgICAgIDwvbWF0LW9wdGlvbj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L25nLWNvbnRhaW5lcj5cblxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiZGF0YVN0YXRlJCB8IGFzeW5jIGFzIHN0YXRlXCI+XG5cbiAgICA8bWF0LW9wdGlvbiBkaXNhYmxlZCAqbmdJZj1cIiFzdGF0ZS5pZGxlIHx8IHN0YXRlLmxvYWRpbmdcIj5cbiAgICAgIDxtYXQtcHJvZ3Jlc3MtYmFyXG4gICAgICAgIFt2YWx1ZV09XCIxMDBcIlxuICAgICAgICBbbW9kZV09XCJzdGF0ZS5sb2FkaW5nID8gJ3F1ZXJ5JyA6ICdkZXRlcm1pbmF0ZSdcIlxuICAgICAgICBbY29sb3JdPVwic3RhdGUuZXJyb3IgPyAnd2FybicgOiAncHJpbWFyeSdcIlxuICAgICAgPjwvbWF0LXByb2dyZXNzLWJhcj5cbiAgICA8L21hdC1vcHRpb24+XG5cbiAgPC9uZy1jb250YWluZXI+XG48L21hdC1hdXRvY29tcGxldGU+XG5cbjxuZy10ZW1wbGF0ZSAjc2ltcGxlVmFsdWVUZW1wbGF0ZSBsZXQtdmFsdWU+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJkaXNwbGF5UHJvcGVydHlSZXNvbHZlciQgfCBhc3luYyBhcyBwcm9wZXJ0eVJlc29sdmVyXCI+XG4gICAgPHNwYW4gY2xhc3M9XCJub3NlbGVjdFwiPnt7cHJvcGVydHlSZXNvbHZlcih2YWx1ZSl9fTwvc3Bhbj5cbiAgPC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
@@ -194,10 +194,10 @@ export class ElderLabelInputComponent extends FormFieldBaseComponent {
|
|
|
194
194
|
}
|
|
195
195
|
}
|
|
196
196
|
ElderLabelInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ElderLabelInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
197
|
-
ElderLabelInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.0", type: ElderLabelInputComponent, selector: "elder-label-input", inputs: { labels: "labels", suggestionLoader: "suggestionLoader", allowNew: "allowNew", compareWith: "compareWith", colorResolver: "colorResolver", nameResolver: "nameResolver", labelBuilder: "labelBuilder" }, outputs: { labelsChanged: "labelsChanged" }, providers: buildFormIntegrationProviders(ElderLabelInputComponent), viewQueries: [{ propertyName: "inputControl", first: true, predicate: ["labelInput"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<mat-form-field\n [floatLabel]=\"floatLabel\"\n class=\"full-width\"\n [appearance]=\"appearance\"\n [color]=\"color\"\n>\n <mat-label *ngIf=\"label\">{{label | translate}}</mat-label>\n\n <mat-chip-grid #chips>\n <mat-chip-row *ngFor=\"let label of currentLabels$ | async\"\n class=\"noselect\"\n [color]=\"labelColor(label)\"\n [removable]=\"removable\"\n (removed)=\"removeLabel(label)\"\n >\n {{labelName(label)}}\n <mat-icon matChipRemove *ngIf=\"removable\">cancel</mat-icon>\n </mat-chip-row>\n\n <input matInput type=\"text\"\n [matChipInputFor]=\"chips\"\n [matAutocomplete]=\"labelAutoComplete\"\n [formControl]=\"labelInputControl\"\n (matChipInputTokenEnd)=\"createNewLabels($event)\"\n [name]=\"name\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [placeholder]=\"placeholder\"\n autocomplete=\"off\"\n #labelInput>\n </mat-chip-grid>\n\n <mat-autocomplete\n #labelAutoComplete=\"matAutocomplete\"\n (optionSelected)=\"labelSelected($event)\">\n <mat-option *ngFor=\"let suggestion of availableSuggestions$ | async\" [value]=\"suggestion\">\n {{labelName(suggestion)}}\n </mat-option>\n </mat-autocomplete>\n\n</mat-form-field>\n\n", styles: [".full-width{width:100%}\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: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatLabel, selector: "mat-label" }, { kind: "component", type: i6.MatChipGrid, selector: "mat-chip-grid", inputs: ["tabIndex", "disabled", "placeholder", "required", "value", "errorStateMatcher"], outputs: ["change", "valueChange"] }, { kind: "directive", type: i6.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }, { kind: "directive", type: i6.MatChipRemove, selector: "[matChipRemove]" }, { kind: "component", type: i6.MatChipRow, selector: "mat-chip-row, mat-basic-chip-row", inputs: ["color", "disabled", "disableRipple", "tabIndex", "editable"], outputs: ["edited"] }, { kind: "component", type: i7.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i8.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i7.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i9.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
197
|
+
ElderLabelInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.0", type: ElderLabelInputComponent, selector: "elder-label-input", inputs: { labels: "labels", suggestionLoader: "suggestionLoader", allowNew: "allowNew", compareWith: "compareWith", colorResolver: "colorResolver", nameResolver: "nameResolver", labelBuilder: "labelBuilder" }, outputs: { labelsChanged: "labelsChanged" }, providers: buildFormIntegrationProviders(ElderLabelInputComponent), viewQueries: [{ propertyName: "inputControl", first: true, predicate: ["labelInput"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<mat-form-field\n [floatLabel]=\"floatLabel\"\n class=\"full-width\"\n [appearance]=\"appearance\"\n [color]=\"color\"\n>\n <mat-label *ngIf=\"label\">{{label | translate}}</mat-label>\n\n <mat-chip-grid #chips>\n <mat-chip-row *ngFor=\"let label of currentLabels$ | async\"\n class=\"noselect\"\n [color]=\"labelColor(label)\"\n [removable]=\"removable\"\n (removed)=\"removeLabel(label)\"\n >\n {{labelName(label)}}\n <mat-icon matChipRemove *ngIf=\"removable\">cancel</mat-icon>\n </mat-chip-row>\n\n <input matInput type=\"text\"\n [matChipInputFor]=\"chips\"\n [matAutocomplete]=\"labelAutoComplete\"\n [formControl]=\"labelInputControl\"\n (matChipInputTokenEnd)=\"createNewLabels($event)\"\n [name]=\"name\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [placeholder]=\"placeholder\"\n autocomplete=\"off\"\n #labelInput>\n </mat-chip-grid>\n\n <mat-autocomplete\n #labelAutoComplete=\"matAutocomplete\"\n panelWidth=\"auto\"\n (optionSelected)=\"labelSelected($event)\">\n <mat-option *ngFor=\"let suggestion of availableSuggestions$ | async\" [value]=\"suggestion\">\n {{labelName(suggestion)}}\n </mat-option>\n </mat-autocomplete>\n\n</mat-form-field>\n\n", styles: [".full-width{width:100%}\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: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatLabel, selector: "mat-label" }, { kind: "component", type: i6.MatChipGrid, selector: "mat-chip-grid", inputs: ["tabIndex", "disabled", "placeholder", "required", "value", "errorStateMatcher"], outputs: ["change", "valueChange"] }, { kind: "directive", type: i6.MatChipInput, selector: "input[matChipInputFor]", inputs: ["matChipInputFor", "matChipInputAddOnBlur", "matChipInputSeparatorKeyCodes", "placeholder", "id", "disabled"], outputs: ["matChipInputTokenEnd"], exportAs: ["matChipInput", "matChipInputFor"] }, { kind: "directive", type: i6.MatChipRemove, selector: "[matChipRemove]" }, { kind: "component", type: i6.MatChipRow, selector: "mat-chip-row, mat-basic-chip-row", inputs: ["color", "disabled", "disableRipple", "tabIndex", "editable"], outputs: ["edited"] }, { kind: "component", type: i7.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { kind: "component", type: i8.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i7.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i9.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
198
198
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ElderLabelInputComponent, decorators: [{
|
|
199
199
|
type: Component,
|
|
200
|
-
args: [{ selector: 'elder-label-input', providers: buildFormIntegrationProviders(ElderLabelInputComponent), changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-form-field\n [floatLabel]=\"floatLabel\"\n class=\"full-width\"\n [appearance]=\"appearance\"\n [color]=\"color\"\n>\n <mat-label *ngIf=\"label\">{{label | translate}}</mat-label>\n\n <mat-chip-grid #chips>\n <mat-chip-row *ngFor=\"let label of currentLabels$ | async\"\n class=\"noselect\"\n [color]=\"labelColor(label)\"\n [removable]=\"removable\"\n (removed)=\"removeLabel(label)\"\n >\n {{labelName(label)}}\n <mat-icon matChipRemove *ngIf=\"removable\">cancel</mat-icon>\n </mat-chip-row>\n\n <input matInput type=\"text\"\n [matChipInputFor]=\"chips\"\n [matAutocomplete]=\"labelAutoComplete\"\n [formControl]=\"labelInputControl\"\n (matChipInputTokenEnd)=\"createNewLabels($event)\"\n [name]=\"name\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [placeholder]=\"placeholder\"\n autocomplete=\"off\"\n #labelInput>\n </mat-chip-grid>\n\n <mat-autocomplete\n #labelAutoComplete=\"matAutocomplete\"\n (optionSelected)=\"labelSelected($event)\">\n <mat-option *ngFor=\"let suggestion of availableSuggestions$ | async\" [value]=\"suggestion\">\n {{labelName(suggestion)}}\n </mat-option>\n </mat-autocomplete>\n\n</mat-form-field>\n\n", styles: [".full-width{width:100%}\n"] }]
|
|
200
|
+
args: [{ selector: 'elder-label-input', providers: buildFormIntegrationProviders(ElderLabelInputComponent), changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-form-field\n [floatLabel]=\"floatLabel\"\n class=\"full-width\"\n [appearance]=\"appearance\"\n [color]=\"color\"\n>\n <mat-label *ngIf=\"label\">{{label | translate}}</mat-label>\n\n <mat-chip-grid #chips>\n <mat-chip-row *ngFor=\"let label of currentLabels$ | async\"\n class=\"noselect\"\n [color]=\"labelColor(label)\"\n [removable]=\"removable\"\n (removed)=\"removeLabel(label)\"\n >\n {{labelName(label)}}\n <mat-icon matChipRemove *ngIf=\"removable\">cancel</mat-icon>\n </mat-chip-row>\n\n <input matInput type=\"text\"\n [matChipInputFor]=\"chips\"\n [matAutocomplete]=\"labelAutoComplete\"\n [formControl]=\"labelInputControl\"\n (matChipInputTokenEnd)=\"createNewLabels($event)\"\n [name]=\"name\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [required]=\"required\"\n [placeholder]=\"placeholder\"\n autocomplete=\"off\"\n #labelInput>\n </mat-chip-grid>\n\n <mat-autocomplete\n #labelAutoComplete=\"matAutocomplete\"\n panelWidth=\"auto\"\n (optionSelected)=\"labelSelected($event)\">\n <mat-option *ngFor=\"let suggestion of availableSuggestions$ | async\" [value]=\"suggestion\">\n {{labelName(suggestion)}}\n </mat-option>\n </mat-autocomplete>\n\n</mat-form-field>\n\n", styles: [".full-width{width:100%}\n"] }]
|
|
201
201
|
}], ctorParameters: function () { return []; }, propDecorators: { inputControl: [{
|
|
202
202
|
type: ViewChild,
|
|
203
203
|
args: ['labelInput', { static: true }]
|
|
@@ -226,4 +226,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImpor
|
|
|
226
226
|
type: Input,
|
|
227
227
|
args: ['labelBuilder']
|
|
228
228
|
}] } });
|
|
229
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFiZWxzLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvbGFiZWxzL2xhYmVscy1pbnB1dC9sYWJlbHMtaW5wdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9sYWJlbHMvbGFiZWxzLWlucHV0L2xhYmVscy1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFjLEtBQUssRUFBVSxNQUFNLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQy9HLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBR2xELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNuRCxPQUFPLEVBQUMsS0FBSyxFQUFhLE1BQU0sTUFBTSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxZQUFZLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV2RSxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSxpREFBaUQsQ0FBQztBQUN2RixPQUFPLEVBQUMsNkJBQTZCLEVBQUMsTUFBTSxrREFBa0QsQ0FBQzs7Ozs7Ozs7Ozs7QUFVL0YsTUFBTSxPQUFPLHdCQUE0QixTQUFRLHNCQUEyQjtJQXlCMUU7Ozs7Z0ZBSTRFO0lBRTVFO1FBRUUsS0FBSyxFQUFFLENBQUM7UUEvQlY7Ozs7b0ZBSTRFO1FBRTNELFdBQU0sR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFPakUs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T0FBTyxXQUFXLENBQUM7YUFDcEI7U0FDRjthQUFNO1lBQ0wsT0FBTyxFQUFFLENBQUM7U0FDWDtJQUNILENBQUM7SUFFTyxRQUFRLENBQUMsQ0FBTSxFQUFFLENBQU07UUFDN0IsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvRCxDQUFDOztxSEF6T1Usd0JBQXdCO3lHQUF4Qix3QkFBd0IsMlNBSHhCLDZCQUE2QixDQUFDLHdCQUF3QixDQUFDLDJLQ2hCcEUsazNDQTJDQTsyRkR4QmEsd0JBQXdCO2tCQVBwQyxTQUFTOytCQUNFLG1CQUFtQixhQUdsQiw2QkFBNkIsMEJBQTBCLG1CQUNqRCx1QkFBdUIsQ0FBQyxNQUFNOzBFQXlCdkMsWUFBWTtzQkFEbkIsU0FBUzt1QkFBQyxZQUFZLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQTBCOUIsTUFBTTtzQkFEaEIsS0FBSzt1QkFBQyxRQUFRO2dCQU1KLGdCQUFnQjtzQkFEMUIsS0FBSzt1QkFBQyxrQkFBa0I7Z0JBZ0JkLFFBQVE7c0JBRGxCLEtBQUs7dUJBQUMsVUFBVTtnQkFNTixhQUFhO3NCQUR2QixNQUFNO3VCQUFDLGVBQWU7Z0JBV1osV0FBVztzQkFEckIsS0FBSzt1QkFBQyxhQUFhO2dCQWFULGFBQWE7c0JBRHZCLEtBQUs7dUJBQUMsZUFBZTtnQkFZWCxZQUFZO3NCQUR0QixLQUFLO3VCQUFDLGNBQWM7Z0JBWVYsWUFBWTtzQkFEdEIsS0FBSzt1QkFBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1VudHlwZWRGb3JtQ29udHJvbH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtNYXRBdXRvY29tcGxldGVTZWxlY3RlZEV2ZW50fSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9hdXRvY29tcGxldGUnO1xuaW1wb3J0IHtNYXRDaGlwSW5wdXRFdmVudH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hpcHMnO1xuaW1wb3J0IHtMb2dnZXJGYWN0b3J5fSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5pbXBvcnQge0VNUFRZLCBPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZGVib3VuY2VUaW1lLCBtYXAsIHN0YXJ0V2l0aCwgc3dpdGNoTWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0lTdWdnZXN0aW9uUHJvdmlkZXJ9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9zdWdnZXN0aW9uLXByb3ZpZGVyJztcbmltcG9ydCB7Rm9ybUZpZWxkQmFzZUNvbXBvbmVudH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL2Zvcm1zL2Zvcm0tZmllbGQtYmFzZS5jb21wb25lbnQnO1xuaW1wb3J0IHtidWlsZEZvcm1JbnRlZ3JhdGlvblByb3ZpZGVyc30gZnJvbSAnLi4vLi4vLi4vY29tbW9uL2Zvcm1zL3RlbXBsYXRlLWNvbXBvc2l0ZS1jb250cm9sJztcbmltcG9ydCB7VGhlbWVQYWxldHRlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZWxkZXItbGFiZWwtaW5wdXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vbGFiZWxzLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbGFiZWxzLWlucHV0LmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogYnVpbGRGb3JtSW50ZWdyYXRpb25Qcm92aWRlcnMoRWxkZXJMYWJlbElucHV0Q29tcG9uZW50KSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJMYWJlbElucHV0Q29tcG9uZW50PFQ+IGV4dGVuZHMgRm9ybUZpZWxkQmFzZUNvbXBvbmVudDxUW10+IGltcGxlbWVudHMgT25Jbml0IHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZ2dlciA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKHRoaXMuY29uc3RydWN0b3IubmFtZSk7XG5cbiAgcHJpdmF0ZSBfY29tcGFyZVdpdGg6IChvMTogYW55LCBvMjogYW55KSA9PiBib29sZWFuO1xuICBwcml2YXRlIF9uYW1lUmVzb2x2ZXI6IChvMTogYW55KSA9PiBzdHJpbmc7XG4gIHByaXZhdGUgX2NvbG9yUmVzb2x2ZXI6IChvMTogYW55KSA9PiBUaGVtZVBhbGV0dGU7XG4gIHByaXZhdGUgX2xhYmVsQnVpbGRlcjogKHJhd2lucHV0OiBzdHJpbmcpID0+IGFueVtdO1xuXG4gIHByaXZhdGUgX2FsbG93Q3JlYXRlID0gdHJ1ZTtcblxuICBwdWJsaWMgcmVtb3ZhYmxlID0gdHJ1ZTtcblxuICBwdWJsaWMgcmVhZG9ubHkgbGFiZWxJbnB1dENvbnRyb2w6IFVudHlwZWRGb3JtQ29udHJvbCA9IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woKTtcbiAgcHVibGljIGF2YWlsYWJsZVN1Z2dlc3Rpb25zJDogT2JzZXJ2YWJsZTxhbnlbXT4gPSBFTVBUWTtcblxuICBAVmlld0NoaWxkKCdsYWJlbElucHV0JywgeyBzdGF0aWM6IHRydWUgfSlcbiAgcHJpdmF0ZSBpbnB1dENvbnRyb2w6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoXG4gICkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5mbG9hdExhYmVsID0gJ2F1dG8nO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIGdldCBjdXJyZW50TGFiZWxzJCgpOiBPYnNlcnZhYmxlPFRbXT4ge1xuICAgIHJldHVybiB0aGlzLnZhbHVlJDtcbiAgfVxuXG4gIEBJbnB1dCgnbGFiZWxzJylcbiAgcHVibGljIHNldCBsYWJlbHModmFsdWU6IFRbXSkge1xuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgfVxuXG4gIEBJbnB1dCgnc3VnZ2VzdGlvbkxvYWRlcicpXG4gIHB1YmxpYyBzZXQgc3VnZ2VzdGlvbkxvYWRlcihwcm92aWRlcjogSVN1Z2dlc3Rpb25Qcm92aWRlcjxhbnk+KSB7XG4gICAgaWYgKHByb3ZpZGVyKSB7XG4gICAgICB0aGlzLmF2YWlsYWJsZVN1Z2dlc3Rpb25zJCA9IHRoaXMubGFiZWxJbnB1dENvbnRyb2wudmFsdWVDaGFuZ2VzLnBpcGUoXG4gICAgICAgIHN0YXJ0V2l0aCg8c3RyaW5nPm51bGwpLFxuICAgICAgICBkZWJvdW5jZVRpbWUoMTUwKSxcbiAgICAgICAgc3dpdGNoTWFwKCh2YWx1ZSkgPT4gcHJvdmlkZXIubG9hZFN1Z2dlc3Rpb25zKHZhbHVlKSksXG4gICAgICAgIG1hcChsYWJlbHMgPT4gdGhpcy5maWx0ZXJOb3RQcmVzZW50KGxhYmVscykpXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnQ2FudCBwcm92aWRlIHN1Z2dlc3Rpb25zIHNpbmNlIG5vIHN1Z2dlc3Rpb24gcHJvdmlkZXIgd2FzIHJlZ2lzdGVyZWQhJyk7XG4gICAgICB0aGlzLmF2YWlsYWJsZVN1Z2dlc3Rpb25zJCA9IEVNUFRZO1xuICAgIH1cbiAgfVxuXG4gIEBJbnB1dCgnYWxsb3dOZXcnKVxuICBwdWJsaWMgc2V0IGFsbG93TmV3KHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fYWxsb3dDcmVhdGUgPSB2YWx1ZTtcbiAgfVxuXG4gIEBPdXRwdXQoJ2xhYmVsc0NoYW5nZWQnKVxuICBwdWJsaWMgZ2V0IGxhYmVsc0NoYW5nZWQoKTogT2JzZXJ2YWJsZTxhbnlbXT4ge1xuICAgIHJldHVybiB0aGlzLnZhbHVlQ2hhbmdlO1xuICB9XG5cbiAgLyoqXG4gICAqIEEgZnVuY3Rpb24gdG8gY29tcGFyZSB0aGUgb3B0aW9uIHZhbHVlcyB3aXRoIHRoZSBzZWxlY3RlZCB2YWx1ZXMuIFRoZSBmaXJzdCBhcmd1bWVudFxuICAgKiBpcyBhIHZhbHVlIGZyb20gYW4gb3B0aW9uLiBUaGUgc2Vjb25kIGlzIGEgdmFsdWUgZnJvbSB0aGUgc2VsZWN0aW9uLiBBIGJvb2xlYW5cbiAgICogc2hvdWxkIGJlIHJldHVybmVkLlxuICAgKi9cbiAgQElucHV0KCdjb21wYXJlV2l0aCcpXG4gIHB1YmxpYyBzZXQgY29tcGFyZVdpdGgoZm46IChvMTogYW55LCBvMjogYW55KSA9PiBib29sZWFuKSB7XG4gICAgaWYgKHR5cGVvZiBmbiAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdjb21wYXJlV2l0aCBtdXN0IGJlIGEgZnVuY3Rpb24hJyk7XG4gICAgfVxuICAgIHRoaXMuX2NvbXBhcmVXaXRoID0gZm47XG4gIH1cblxuXG4gIC8qKlxuICAgKiBBIGZ1bmN0aW9uIHdoaWNoIHJldHVybnMgdGhlIGNvbG9yIG9mIGEgZ2l2ZW4gbGFiZWwgb2JqZWN0LlxuICAgKi9cbiAgQElucHV0KCdjb2xvclJlc29sdmVyJylcbiAgcHVibGljIHNldCBjb2xvclJlc29sdmVyKGZuOiAobzE6IGFueSkgPT4gVGhlbWVQYWxldHRlKSB7XG4gICAgaWYgKHR5cGVvZiBmbiAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdjb2xvclJlc29sdmVyIG11c3QgYmUgYSBmdW5jdGlvbiEnKTtcbiAgICB9XG4gICAgdGhpcy5fY29sb3JSZXNvbHZlciA9IGZuO1xuICB9XG5cbiAgLyoqXG4gICAqIEEgZnVuY3Rpb24gd2hpY2ggcmV0dXJucyB0aGUgZGlzcGxheSBuYW1lIG9mIGEgZ2l2ZW4gbGFiZWwgb2JqZWN0LlxuICAgKi9cbiAgQElucHV0KCduYW1lUmVzb2x2ZXInKVxuICBwdWJsaWMgc2V0IG5hbWVSZXNvbHZlcihmbjogKG8xOiBhbnkpID0+IHN0cmluZykge1xuICAgIGlmICh0eXBlb2YgZm4gIT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignbmFtZVJlc29sdmVyIG11c3QgYmUgYSBmdW5jdGlvbiEnKTtcbiAgICB9XG4gICAgdGhpcy5fbmFtZVJlc29sdmVyID0gZm47XG4gIH1cblxuICAvKipcbiAgICogQSBmdW5jdGlvbiB3aGljaCByZXR1cm5zIG9uZSBvciBtb3JlIGxhYmVscyBmb3IgYSBnaXZlbiByYXcgc3RyaW5nXG4gICAqL1xuICBASW5wdXQoJ2xhYmVsQnVpbGRlcicpXG4gIHB1YmxpYyBzZXQgbGFiZWxCdWlsZGVyKGZuOiAocmF3aW5wdXQ6IHN0cmluZykgPT4gYW55W10pIHtcbiAgICBpZiAodHlwZW9mIGZuICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ2xhYmVsQnVpbGRlciBtdXN0IGJlIGEgZnVuY3Rpb24hJyk7XG4gICAgfVxuICAgIHRoaXMuX2xhYmVsQnVpbGRlciA9IGZuO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIExpZmUtQ3ljbGUgRXZlbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQgeyB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFB1YmxpYyBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIGxhYmVsU2VsZWN0ZWQoZXZlbnQ6IE1hdEF1dG9jb21wbGV0ZVNlbGVjdGVkRXZlbnQpIHtcbiAgICBjb25zb2xlLmxvZygnbGFiZWxTZWxlY3RlZDonLCBldmVudCk7XG4gICAgY29uc3Qgc2VsZWN0aW9uID0gZXZlbnQub3B0aW9uLnZhbHVlO1xuICAgIGlmIChzZWxlY3Rpb24pIHtcbiAgICAgIHRoaXMucmVzZXRJbnB1dCgpO1xuICAgICAgdGhpcy5hZGRMYWJlbChzZWxlY3Rpb24pO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjcmVhdGVOZXdMYWJlbHMoZXZlbnQ6IE1hdENoaXBJbnB1dEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2FsbG93Q3JlYXRlKSB7XG5cbiAgICAgIGNvbnN0IGlucHV0ID0gZXZlbnQuaW5wdXQ7XG4gICAgICBjb25zdCB2YWx1ZSA9IGV2ZW50LnZhbHVlO1xuXG4gICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgY29uc3QgbXlMYWJlbHMgPSB0aGlzLmJ1aWxkTGFiZWxzKHZhbHVlKTtcbiAgICAgICAgdGhpcy5hZGRMYWJlbHMobXlMYWJlbHMpO1xuICAgICAgfVxuXG4gICAgICBpZiAoaW5wdXQpIHtcbiAgICAgICAgLy8gaW5wdXQudmFsdWUgPSAnJzsgLy8gcmVzZXQgaW5wdXRcbiAgICAgICAgdGhpcy5yZXNldElucHV0KCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGFkZExhYmVscyhsYWJlbHM6IFRbXSkge1xuICAgIGNvbnN0IGN1cnJlbnQgPSB0aGlzLnZhbHVlID8gdGhpcy52YWx1ZSA6IFtdO1xuICAgIHRoaXMucmVwbGFjZVdpdGgoWy4uLmN1cnJlbnQsIC4uLmxhYmVsc10pO1xuICB9XG5cbiAgcHVibGljIGFkZExhYmVsKGxhYmVsOiBhbnkpIHtcbiAgICB0aGlzLmFkZExhYmVscyhbbGFiZWxdKTtcbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVMYWJlbCh0b1JlbW92ZTogVCk6IHZvaWQge1xuXG4gICAgY29uc3QgcmVtYWluaW5nID0gdGhpcy52YWx1ZVxuICAgICAgLmZpbHRlcihsID0+ICF0aGlzLmFyZUVxdWFsKGwsIHRvUmVtb3ZlKSk7XG5cbiAgICB0aGlzLnJlcGxhY2VXaXRoKHJlbWFpbmluZyk7XG4gIH1cblxuICBwdWJsaWMgcmVwbGFjZVdpdGgobGFiZWxzOiBUW10pOiB2b2lkIHtcbiAgICB0aGlzLnVwZGF0ZVZhbHVlKGxhYmVscyk7XG4gIH1cblxuICBwdWJsaWMgbGFiZWxOYW1lKGxhYmVsOiBUKTogc3RyaW5nIHtcbiAgICBpZiAobGFiZWwpIHtcbiAgICAgIHJldHVybiB0aGlzLl9uYW1lUmVzb2x2ZXIgPyAgdGhpcy5fbmFtZVJlc29sdmVyKGxhYmVsKSA6IGxhYmVsLnRvU3RyaW5nKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiAnJztcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbGFiZWxDb2xvcihsYWJlbDogVCk6IFRoZW1lUGFsZXR0ZSB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbG9yUmVzb2x2ZXIgPyAgdGhpcy5fY29sb3JSZXNvbHZlcihsYWJlbCkgOiB1bmRlZmluZWQ7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBtZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlc2V0SW5wdXQoKTogdm9pZCB7XG4gICAgdGhpcy5pbnB1dENvbnRyb2wubmF0aXZlRWxlbWVudC52YWx1ZSA9ICcnO1xuICB9XG5cbiAgcHJpdmF0ZSBidWlsZExhYmVscyhyYXdOYW1lOiBzdHJpbmcpOiBhbnlbXSB7XG4gICAgaWYgKHRoaXMuX2xhYmVsQnVpbGRlcikge1xuICAgICAgcmV0dXJuIHRoaXMuX2xhYmVsQnVpbGRlcihyYXdOYW1lKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIFtyYXdOYW1lXTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGZpbHRlck5vdFByZXNlbnQoc3VnZ2VzdGlvbnM6IGFueVtdKTogYW55W10ge1xuICAgIGlmIChzdWdnZXN0aW9ucykge1xuXG4gICAgICBpZiAodGhpcy52YWx1ZSkge1xuICAgICAgICByZXR1cm4gc3VnZ2VzdGlvbnNcbiAgICAgICAgICAuZmlsdGVyKGwgPT4gbClcbiAgICAgICAgICAuZmlsdGVyKGwgPT4gIXRoaXMudmFsdWUuc29tZShlbCA9PiB0aGlzLmFyZUVxdWFsKGVsLCBsKSkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIHN1Z2dlc3Rpb25zO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhcmVFcXVhbChhOiBhbnksIGI6IGFueSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9jb21wYXJlV2l0aCA/IHRoaXMuX2NvbXBhcmVXaXRoKGEsIGIpIDogYSA9PT0gYjtcbiAgfVxufVxuIiwiPG1hdC1mb3JtLWZpZWxkXG4gIFtmbG9hdExhYmVsXT1cImZsb2F0TGFiZWxcIlxuICBjbGFzcz1cImZ1bGwtd2lkdGhcIlxuICBbYXBwZWFyYW5jZV09XCJhcHBlYXJhbmNlXCJcbiAgW2NvbG9yXT1cImNvbG9yXCJcbj5cbiAgPG1hdC1sYWJlbCAqbmdJZj1cImxhYmVsXCI+e3tsYWJlbCB8IHRyYW5zbGF0ZX19PC9tYXQtbGFiZWw+XG5cbiAgPG1hdC1jaGlwLWdyaWQgI2NoaXBzPlxuICAgIDxtYXQtY2hpcC1yb3cgKm5nRm9yPVwibGV0IGxhYmVsIG9mIGN1cnJlbnRMYWJlbHMkIHwgYXN5bmNcIlxuICAgICAgICAgICAgICBjbGFzcz1cIm5vc2VsZWN0XCJcbiAgICAgICAgICAgICAgW2NvbG9yXT1cImxhYmVsQ29sb3IobGFiZWwpXCJcbiAgICAgICAgICAgICAgW3JlbW92YWJsZV09XCJyZW1vdmFibGVcIlxuICAgICAgICAgICAgICAocmVtb3ZlZCk9XCJyZW1vdmVMYWJlbChsYWJlbClcIlxuICAgID5cbiAgICAgIHt7bGFiZWxOYW1lKGxhYmVsKX19XG4gICAgICA8bWF0LWljb24gbWF0Q2hpcFJlbW92ZSAqbmdJZj1cInJlbW92YWJsZVwiPmNhbmNlbDwvbWF0LWljb24+XG4gICAgPC9tYXQtY2hpcC1yb3c+XG5cbiAgICA8aW5wdXQgbWF0SW5wdXQgdHlwZT1cInRleHRcIlxuICAgICAgICAgICBbbWF0Q2hpcElucHV0Rm9yXT1cImNoaXBzXCJcbiAgICAgICAgICAgW21hdEF1dG9jb21wbGV0ZV09XCJsYWJlbEF1dG9Db21wbGV0ZVwiXG4gICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJsYWJlbElucHV0Q29udHJvbFwiXG4gICAgICAgICAgIChtYXRDaGlwSW5wdXRUb2tlbkVuZCk9XCJjcmVhdGVOZXdMYWJlbHMoJGV2ZW50KVwiXG4gICAgICAgICAgIFtuYW1lXT1cIm5hbWVcIlxuICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgICAgICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgICAgICAgICAjbGFiZWxJbnB1dD5cbiAgPC9tYXQtY2hpcC1ncmlkPlxuXG4gIDxtYXQtYXV0b2NvbXBsZXRlXG4gICAgICAjbGFiZWxBdXRvQ29tcGxldGU9XCJtYXRBdXRvY29tcGxldGVcIlxuICAgICAgKG9wdGlvblNlbGVjdGVkKT1cImxhYmVsU2VsZWN0ZWQoJGV2ZW50KVwiPlxuICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCBzdWdnZXN0aW9uIG9mIGF2YWlsYWJsZVN1Z2dlc3Rpb25zJCB8IGFzeW5jXCIgW3ZhbHVlXT1cInN1Z2dlc3Rpb25cIj5cbiAgICAgIHt7bGFiZWxOYW1lKHN1Z2dlc3Rpb24pfX1cbiAgICA8L21hdC1vcHRpb24+XG4gIDwvbWF0LWF1dG9jb21wbGV0ZT5cblxuPC9tYXQtZm9ybS1maWVsZD5cblxuIl19
|
|
229
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFiZWxzLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvbGFiZWxzL2xhYmVscy1pbnB1dC9sYWJlbHMtaW5wdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9sYWJlbHMvbGFiZWxzLWlucHV0L2xhYmVscy1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFjLEtBQUssRUFBVSxNQUFNLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQy9HLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBR2xELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNuRCxPQUFPLEVBQUMsS0FBSyxFQUFhLE1BQU0sTUFBTSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxZQUFZLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUV2RSxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSxpREFBaUQsQ0FBQztBQUN2RixPQUFPLEVBQUMsNkJBQTZCLEVBQUMsTUFBTSxrREFBa0QsQ0FBQzs7Ozs7Ozs7Ozs7QUFVL0YsTUFBTSxPQUFPLHdCQUE0QixTQUFRLHNCQUEyQjtJQXlCMUU7Ozs7Z0ZBSTRFO0lBRTVFO1FBRUUsS0FBSyxFQUFFLENBQUM7UUEvQlY7Ozs7b0ZBSTRFO1FBRTNELFdBQU0sR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFPakUs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T0FBTyxXQUFXLENBQUM7YUFDcEI7U0FDRjthQUFNO1lBQ0wsT0FBTyxFQUFFLENBQUM7U0FDWDtJQUNILENBQUM7SUFFTyxRQUFRLENBQUMsQ0FBTSxFQUFFLENBQU07UUFDN0IsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvRCxDQUFDOztxSEF6T1Usd0JBQXdCO3lHQUF4Qix3QkFBd0IsMlNBSHhCLDZCQUE2QixDQUFDLHdCQUF3QixDQUFDLDJLQ2hCcEUsNjRDQTRDQTsyRkR6QmEsd0JBQXdCO2tCQVBwQyxTQUFTOytCQUNFLG1CQUFtQixhQUdsQiw2QkFBNkIsMEJBQTBCLG1CQUNqRCx1QkFBdUIsQ0FBQyxNQUFNOzBFQXlCdkMsWUFBWTtzQkFEbkIsU0FBUzt1QkFBQyxZQUFZLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQTBCOUIsTUFBTTtzQkFEaEIsS0FBSzt1QkFBQyxRQUFRO2dCQU1KLGdCQUFnQjtzQkFEMUIsS0FBSzt1QkFBQyxrQkFBa0I7Z0JBZ0JkLFFBQVE7c0JBRGxCLEtBQUs7dUJBQUMsVUFBVTtnQkFNTixhQUFhO3NCQUR2QixNQUFNO3VCQUFDLGVBQWU7Z0JBV1osV0FBVztzQkFEckIsS0FBSzt1QkFBQyxhQUFhO2dCQWFULGFBQWE7c0JBRHZCLEtBQUs7dUJBQUMsZUFBZTtnQkFZWCxZQUFZO3NCQUR0QixLQUFLO3VCQUFDLGNBQWM7Z0JBWVYsWUFBWTtzQkFEdEIsS0FBSzt1QkFBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1VudHlwZWRGb3JtQ29udHJvbH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtNYXRBdXRvY29tcGxldGVTZWxlY3RlZEV2ZW50fSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9hdXRvY29tcGxldGUnO1xuaW1wb3J0IHtNYXRDaGlwSW5wdXRFdmVudH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hpcHMnO1xuaW1wb3J0IHtMb2dnZXJGYWN0b3J5fSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5pbXBvcnQge0VNUFRZLCBPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZGVib3VuY2VUaW1lLCBtYXAsIHN0YXJ0V2l0aCwgc3dpdGNoTWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0lTdWdnZXN0aW9uUHJvdmlkZXJ9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9zdWdnZXN0aW9uLXByb3ZpZGVyJztcbmltcG9ydCB7Rm9ybUZpZWxkQmFzZUNvbXBvbmVudH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL2Zvcm1zL2Zvcm0tZmllbGQtYmFzZS5jb21wb25lbnQnO1xuaW1wb3J0IHtidWlsZEZvcm1JbnRlZ3JhdGlvblByb3ZpZGVyc30gZnJvbSAnLi4vLi4vLi4vY29tbW9uL2Zvcm1zL3RlbXBsYXRlLWNvbXBvc2l0ZS1jb250cm9sJztcbmltcG9ydCB7VGhlbWVQYWxldHRlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZWxkZXItbGFiZWwtaW5wdXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vbGFiZWxzLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbGFiZWxzLWlucHV0LmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogYnVpbGRGb3JtSW50ZWdyYXRpb25Qcm92aWRlcnMoRWxkZXJMYWJlbElucHV0Q29tcG9uZW50KSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgRWxkZXJMYWJlbElucHV0Q29tcG9uZW50PFQ+IGV4dGVuZHMgRm9ybUZpZWxkQmFzZUNvbXBvbmVudDxUW10+IGltcGxlbWVudHMgT25Jbml0IHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZ2dlciA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKHRoaXMuY29uc3RydWN0b3IubmFtZSk7XG5cbiAgcHJpdmF0ZSBfY29tcGFyZVdpdGg6IChvMTogYW55LCBvMjogYW55KSA9PiBib29sZWFuO1xuICBwcml2YXRlIF9uYW1lUmVzb2x2ZXI6IChvMTogYW55KSA9PiBzdHJpbmc7XG4gIHByaXZhdGUgX2NvbG9yUmVzb2x2ZXI6IChvMTogYW55KSA9PiBUaGVtZVBhbGV0dGU7XG4gIHByaXZhdGUgX2xhYmVsQnVpbGRlcjogKHJhd2lucHV0OiBzdHJpbmcpID0+IGFueVtdO1xuXG4gIHByaXZhdGUgX2FsbG93Q3JlYXRlID0gdHJ1ZTtcblxuICBwdWJsaWMgcmVtb3ZhYmxlID0gdHJ1ZTtcblxuICBwdWJsaWMgcmVhZG9ubHkgbGFiZWxJbnB1dENvbnRyb2w6IFVudHlwZWRGb3JtQ29udHJvbCA9IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woKTtcbiAgcHVibGljIGF2YWlsYWJsZVN1Z2dlc3Rpb25zJDogT2JzZXJ2YWJsZTxhbnlbXT4gPSBFTVBUWTtcblxuICBAVmlld0NoaWxkKCdsYWJlbElucHV0JywgeyBzdGF0aWM6IHRydWUgfSlcbiAgcHJpdmF0ZSBpbnB1dENvbnRyb2w6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoXG4gICkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5mbG9hdExhYmVsID0gJ2F1dG8nO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIGdldCBjdXJyZW50TGFiZWxzJCgpOiBPYnNlcnZhYmxlPFRbXT4ge1xuICAgIHJldHVybiB0aGlzLnZhbHVlJDtcbiAgfVxuXG4gIEBJbnB1dCgnbGFiZWxzJylcbiAgcHVibGljIHNldCBsYWJlbHModmFsdWU6IFRbXSkge1xuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgfVxuXG4gIEBJbnB1dCgnc3VnZ2VzdGlvbkxvYWRlcicpXG4gIHB1YmxpYyBzZXQgc3VnZ2VzdGlvbkxvYWRlcihwcm92aWRlcjogSVN1Z2dlc3Rpb25Qcm92aWRlcjxhbnk+KSB7XG4gICAgaWYgKHByb3ZpZGVyKSB7XG4gICAgICB0aGlzLmF2YWlsYWJsZVN1Z2dlc3Rpb25zJCA9IHRoaXMubGFiZWxJbnB1dENvbnRyb2wudmFsdWVDaGFuZ2VzLnBpcGUoXG4gICAgICAgIHN0YXJ0V2l0aCg8c3RyaW5nPm51bGwpLFxuICAgICAgICBkZWJvdW5jZVRpbWUoMTUwKSxcbiAgICAgICAgc3dpdGNoTWFwKCh2YWx1ZSkgPT4gcHJvdmlkZXIubG9hZFN1Z2dlc3Rpb25zKHZhbHVlKSksXG4gICAgICAgIG1hcChsYWJlbHMgPT4gdGhpcy5maWx0ZXJOb3RQcmVzZW50KGxhYmVscykpXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnQ2FudCBwcm92aWRlIHN1Z2dlc3Rpb25zIHNpbmNlIG5vIHN1Z2dlc3Rpb24gcHJvdmlkZXIgd2FzIHJlZ2lzdGVyZWQhJyk7XG4gICAgICB0aGlzLmF2YWlsYWJsZVN1Z2dlc3Rpb25zJCA9IEVNUFRZO1xuICAgIH1cbiAgfVxuXG4gIEBJbnB1dCgnYWxsb3dOZXcnKVxuICBwdWJsaWMgc2V0IGFsbG93TmV3KHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fYWxsb3dDcmVhdGUgPSB2YWx1ZTtcbiAgfVxuXG4gIEBPdXRwdXQoJ2xhYmVsc0NoYW5nZWQnKVxuICBwdWJsaWMgZ2V0IGxhYmVsc0NoYW5nZWQoKTogT2JzZXJ2YWJsZTxhbnlbXT4ge1xuICAgIHJldHVybiB0aGlzLnZhbHVlQ2hhbmdlO1xuICB9XG5cbiAgLyoqXG4gICAqIEEgZnVuY3Rpb24gdG8gY29tcGFyZSB0aGUgb3B0aW9uIHZhbHVlcyB3aXRoIHRoZSBzZWxlY3RlZCB2YWx1ZXMuIFRoZSBmaXJzdCBhcmd1bWVudFxuICAgKiBpcyBhIHZhbHVlIGZyb20gYW4gb3B0aW9uLiBUaGUgc2Vjb25kIGlzIGEgdmFsdWUgZnJvbSB0aGUgc2VsZWN0aW9uLiBBIGJvb2xlYW5cbiAgICogc2hvdWxkIGJlIHJldHVybmVkLlxuICAgKi9cbiAgQElucHV0KCdjb21wYXJlV2l0aCcpXG4gIHB1YmxpYyBzZXQgY29tcGFyZVdpdGgoZm46IChvMTogYW55LCBvMjogYW55KSA9PiBib29sZWFuKSB7XG4gICAgaWYgKHR5cGVvZiBmbiAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdjb21wYXJlV2l0aCBtdXN0IGJlIGEgZnVuY3Rpb24hJyk7XG4gICAgfVxuICAgIHRoaXMuX2NvbXBhcmVXaXRoID0gZm47XG4gIH1cblxuXG4gIC8qKlxuICAgKiBBIGZ1bmN0aW9uIHdoaWNoIHJldHVybnMgdGhlIGNvbG9yIG9mIGEgZ2l2ZW4gbGFiZWwgb2JqZWN0LlxuICAgKi9cbiAgQElucHV0KCdjb2xvclJlc29sdmVyJylcbiAgcHVibGljIHNldCBjb2xvclJlc29sdmVyKGZuOiAobzE6IGFueSkgPT4gVGhlbWVQYWxldHRlKSB7XG4gICAgaWYgKHR5cGVvZiBmbiAhPT0gJ2Z1bmN0aW9uJykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdjb2xvclJlc29sdmVyIG11c3QgYmUgYSBmdW5jdGlvbiEnKTtcbiAgICB9XG4gICAgdGhpcy5fY29sb3JSZXNvbHZlciA9IGZuO1xuICB9XG5cbiAgLyoqXG4gICAqIEEgZnVuY3Rpb24gd2hpY2ggcmV0dXJucyB0aGUgZGlzcGxheSBuYW1lIG9mIGEgZ2l2ZW4gbGFiZWwgb2JqZWN0LlxuICAgKi9cbiAgQElucHV0KCduYW1lUmVzb2x2ZXInKVxuICBwdWJsaWMgc2V0IG5hbWVSZXNvbHZlcihmbjogKG8xOiBhbnkpID0+IHN0cmluZykge1xuICAgIGlmICh0eXBlb2YgZm4gIT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignbmFtZVJlc29sdmVyIG11c3QgYmUgYSBmdW5jdGlvbiEnKTtcbiAgICB9XG4gICAgdGhpcy5fbmFtZVJlc29sdmVyID0gZm47XG4gIH1cblxuICAvKipcbiAgICogQSBmdW5jdGlvbiB3aGljaCByZXR1cm5zIG9uZSBvciBtb3JlIGxhYmVscyBmb3IgYSBnaXZlbiByYXcgc3RyaW5nXG4gICAqL1xuICBASW5wdXQoJ2xhYmVsQnVpbGRlcicpXG4gIHB1YmxpYyBzZXQgbGFiZWxCdWlsZGVyKGZuOiAocmF3aW5wdXQ6IHN0cmluZykgPT4gYW55W10pIHtcbiAgICBpZiAodHlwZW9mIGZuICE9PSAnZnVuY3Rpb24nKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ2xhYmVsQnVpbGRlciBtdXN0IGJlIGEgZnVuY3Rpb24hJyk7XG4gICAgfVxuICAgIHRoaXMuX2xhYmVsQnVpbGRlciA9IGZuO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIExpZmUtQ3ljbGUgRXZlbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQgeyB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFB1YmxpYyBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIGxhYmVsU2VsZWN0ZWQoZXZlbnQ6IE1hdEF1dG9jb21wbGV0ZVNlbGVjdGVkRXZlbnQpIHtcbiAgICBjb25zb2xlLmxvZygnbGFiZWxTZWxlY3RlZDonLCBldmVudCk7XG4gICAgY29uc3Qgc2VsZWN0aW9uID0gZXZlbnQub3B0aW9uLnZhbHVlO1xuICAgIGlmIChzZWxlY3Rpb24pIHtcbiAgICAgIHRoaXMucmVzZXRJbnB1dCgpO1xuICAgICAgdGhpcy5hZGRMYWJlbChzZWxlY3Rpb24pO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjcmVhdGVOZXdMYWJlbHMoZXZlbnQ6IE1hdENoaXBJbnB1dEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2FsbG93Q3JlYXRlKSB7XG5cbiAgICAgIGNvbnN0IGlucHV0ID0gZXZlbnQuaW5wdXQ7XG4gICAgICBjb25zdCB2YWx1ZSA9IGV2ZW50LnZhbHVlO1xuXG4gICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgY29uc3QgbXlMYWJlbHMgPSB0aGlzLmJ1aWxkTGFiZWxzKHZhbHVlKTtcbiAgICAgICAgdGhpcy5hZGRMYWJlbHMobXlMYWJlbHMpO1xuICAgICAgfVxuXG4gICAgICBpZiAoaW5wdXQpIHtcbiAgICAgICAgLy8gaW5wdXQudmFsdWUgPSAnJzsgLy8gcmVzZXQgaW5wdXRcbiAgICAgICAgdGhpcy5yZXNldElucHV0KCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGFkZExhYmVscyhsYWJlbHM6IFRbXSkge1xuICAgIGNvbnN0IGN1cnJlbnQgPSB0aGlzLnZhbHVlID8gdGhpcy52YWx1ZSA6IFtdO1xuICAgIHRoaXMucmVwbGFjZVdpdGgoWy4uLmN1cnJlbnQsIC4uLmxhYmVsc10pO1xuICB9XG5cbiAgcHVibGljIGFkZExhYmVsKGxhYmVsOiBhbnkpIHtcbiAgICB0aGlzLmFkZExhYmVscyhbbGFiZWxdKTtcbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVMYWJlbCh0b1JlbW92ZTogVCk6IHZvaWQge1xuXG4gICAgY29uc3QgcmVtYWluaW5nID0gdGhpcy52YWx1ZVxuICAgICAgLmZpbHRlcihsID0+ICF0aGlzLmFyZUVxdWFsKGwsIHRvUmVtb3ZlKSk7XG5cbiAgICB0aGlzLnJlcGxhY2VXaXRoKHJlbWFpbmluZyk7XG4gIH1cblxuICBwdWJsaWMgcmVwbGFjZVdpdGgobGFiZWxzOiBUW10pOiB2b2lkIHtcbiAgICB0aGlzLnVwZGF0ZVZhbHVlKGxhYmVscyk7XG4gIH1cblxuICBwdWJsaWMgbGFiZWxOYW1lKGxhYmVsOiBUKTogc3RyaW5nIHtcbiAgICBpZiAobGFiZWwpIHtcbiAgICAgIHJldHVybiB0aGlzLl9uYW1lUmVzb2x2ZXIgPyAgdGhpcy5fbmFtZVJlc29sdmVyKGxhYmVsKSA6IGxhYmVsLnRvU3RyaW5nKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiAnJztcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbGFiZWxDb2xvcihsYWJlbDogVCk6IFRoZW1lUGFsZXR0ZSB7XG4gICAgcmV0dXJuIHRoaXMuX2NvbG9yUmVzb2x2ZXIgPyAgdGhpcy5fY29sb3JSZXNvbHZlcihsYWJlbCkgOiB1bmRlZmluZWQ7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBtZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlc2V0SW5wdXQoKTogdm9pZCB7XG4gICAgdGhpcy5pbnB1dENvbnRyb2wubmF0aXZlRWxlbWVudC52YWx1ZSA9ICcnO1xuICB9XG5cbiAgcHJpdmF0ZSBidWlsZExhYmVscyhyYXdOYW1lOiBzdHJpbmcpOiBhbnlbXSB7XG4gICAgaWYgKHRoaXMuX2xhYmVsQnVpbGRlcikge1xuICAgICAgcmV0dXJuIHRoaXMuX2xhYmVsQnVpbGRlcihyYXdOYW1lKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIFtyYXdOYW1lXTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGZpbHRlck5vdFByZXNlbnQoc3VnZ2VzdGlvbnM6IGFueVtdKTogYW55W10ge1xuICAgIGlmIChzdWdnZXN0aW9ucykge1xuXG4gICAgICBpZiAodGhpcy52YWx1ZSkge1xuICAgICAgICByZXR1cm4gc3VnZ2VzdGlvbnNcbiAgICAgICAgICAuZmlsdGVyKGwgPT4gbClcbiAgICAgICAgICAuZmlsdGVyKGwgPT4gIXRoaXMudmFsdWUuc29tZShlbCA9PiB0aGlzLmFyZUVxdWFsKGVsLCBsKSkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIHN1Z2dlc3Rpb25zO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhcmVFcXVhbChhOiBhbnksIGI6IGFueSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9jb21wYXJlV2l0aCA/IHRoaXMuX2NvbXBhcmVXaXRoKGEsIGIpIDogYSA9PT0gYjtcbiAgfVxufVxuIiwiPG1hdC1mb3JtLWZpZWxkXG4gIFtmbG9hdExhYmVsXT1cImZsb2F0TGFiZWxcIlxuICBjbGFzcz1cImZ1bGwtd2lkdGhcIlxuICBbYXBwZWFyYW5jZV09XCJhcHBlYXJhbmNlXCJcbiAgW2NvbG9yXT1cImNvbG9yXCJcbj5cbiAgPG1hdC1sYWJlbCAqbmdJZj1cImxhYmVsXCI+e3tsYWJlbCB8IHRyYW5zbGF0ZX19PC9tYXQtbGFiZWw+XG5cbiAgPG1hdC1jaGlwLWdyaWQgI2NoaXBzPlxuICAgIDxtYXQtY2hpcC1yb3cgKm5nRm9yPVwibGV0IGxhYmVsIG9mIGN1cnJlbnRMYWJlbHMkIHwgYXN5bmNcIlxuICAgICAgICAgICAgICBjbGFzcz1cIm5vc2VsZWN0XCJcbiAgICAgICAgICAgICAgW2NvbG9yXT1cImxhYmVsQ29sb3IobGFiZWwpXCJcbiAgICAgICAgICAgICAgW3JlbW92YWJsZV09XCJyZW1vdmFibGVcIlxuICAgICAgICAgICAgICAocmVtb3ZlZCk9XCJyZW1vdmVMYWJlbChsYWJlbClcIlxuICAgID5cbiAgICAgIHt7bGFiZWxOYW1lKGxhYmVsKX19XG4gICAgICA8bWF0LWljb24gbWF0Q2hpcFJlbW92ZSAqbmdJZj1cInJlbW92YWJsZVwiPmNhbmNlbDwvbWF0LWljb24+XG4gICAgPC9tYXQtY2hpcC1yb3c+XG5cbiAgICA8aW5wdXQgbWF0SW5wdXQgdHlwZT1cInRleHRcIlxuICAgICAgICAgICBbbWF0Q2hpcElucHV0Rm9yXT1cImNoaXBzXCJcbiAgICAgICAgICAgW21hdEF1dG9jb21wbGV0ZV09XCJsYWJlbEF1dG9Db21wbGV0ZVwiXG4gICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJsYWJlbElucHV0Q29udHJvbFwiXG4gICAgICAgICAgIChtYXRDaGlwSW5wdXRUb2tlbkVuZCk9XCJjcmVhdGVOZXdMYWJlbHMoJGV2ZW50KVwiXG4gICAgICAgICAgIFtuYW1lXT1cIm5hbWVcIlxuICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgICAgICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgICAgICAgICAjbGFiZWxJbnB1dD5cbiAgPC9tYXQtY2hpcC1ncmlkPlxuXG4gIDxtYXQtYXV0b2NvbXBsZXRlXG4gICAgICAjbGFiZWxBdXRvQ29tcGxldGU9XCJtYXRBdXRvY29tcGxldGVcIlxuICAgICAgcGFuZWxXaWR0aD1cImF1dG9cIlxuICAgICAgKG9wdGlvblNlbGVjdGVkKT1cImxhYmVsU2VsZWN0ZWQoJGV2ZW50KVwiPlxuICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCBzdWdnZXN0aW9uIG9mIGF2YWlsYWJsZVN1Z2dlc3Rpb25zJCB8IGFzeW5jXCIgW3ZhbHVlXT1cInN1Z2dlc3Rpb25cIj5cbiAgICAgIHt7bGFiZWxOYW1lKHN1Z2dlc3Rpb24pfX1cbiAgICA8L21hdC1vcHRpb24+XG4gIDwvbWF0LWF1dG9jb21wbGV0ZT5cblxuPC9tYXQtZm9ybS1maWVsZD5cblxuIl19
|
|
@@ -4,18 +4,30 @@ import { MatCommonModule } from '@angular/material/core';
|
|
|
4
4
|
import { ElderPanelComponent } from './flat/elder-panel.component';
|
|
5
5
|
import { ElderCardPanelComponent } from './card-panel/elder-card-panel.component';
|
|
6
6
|
import { ElderDialogPanelComponent } from './elder-dialog-panel/elder-dialog-panel.component';
|
|
7
|
+
import { ElderTogglePanelComponent, ElderTogglePanelPrimaryDirective, ElderTogglePanelSecondaryDirective } from './toggle-panel/elder-toggle-panel.component';
|
|
8
|
+
import { ElderTogglePanelTriggerDirective } from './toggle-panel/elder-toggle-panel-trigger.directive';
|
|
7
9
|
import * as i0 from "@angular/core";
|
|
8
10
|
export { ElderPanelComponent } from './flat/elder-panel.component';
|
|
9
11
|
export { ElderCardPanelComponent } from './card-panel/elder-card-panel.component';
|
|
10
12
|
export { ElderDialogPanelComponent } from './elder-dialog-panel/elder-dialog-panel.component';
|
|
13
|
+
export * from './toggle-panel/elder-toggle-panel.component';
|
|
14
|
+
export { ElderTogglePanelTriggerDirective } from './toggle-panel/elder-toggle-panel-trigger.directive';
|
|
11
15
|
export class ElderPanelModule {
|
|
12
16
|
}
|
|
13
17
|
ElderPanelModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ElderPanelModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
14
18
|
ElderPanelModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.0", ngImport: i0, type: ElderPanelModule, declarations: [ElderPanelComponent,
|
|
15
19
|
ElderCardPanelComponent,
|
|
16
|
-
ElderDialogPanelComponent
|
|
20
|
+
ElderDialogPanelComponent,
|
|
21
|
+
ElderTogglePanelComponent,
|
|
22
|
+
ElderTogglePanelPrimaryDirective,
|
|
23
|
+
ElderTogglePanelSecondaryDirective,
|
|
24
|
+
ElderTogglePanelTriggerDirective], imports: [CommonModule, MatCommonModule], exports: [ElderPanelComponent,
|
|
17
25
|
ElderCardPanelComponent,
|
|
18
|
-
ElderDialogPanelComponent
|
|
26
|
+
ElderDialogPanelComponent,
|
|
27
|
+
ElderTogglePanelComponent,
|
|
28
|
+
ElderTogglePanelPrimaryDirective,
|
|
29
|
+
ElderTogglePanelSecondaryDirective,
|
|
30
|
+
ElderTogglePanelTriggerDirective] });
|
|
19
31
|
ElderPanelModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ElderPanelModule, imports: [CommonModule, MatCommonModule] });
|
|
20
32
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ElderPanelModule, decorators: [{
|
|
21
33
|
type: NgModule,
|
|
@@ -26,13 +38,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImpor
|
|
|
26
38
|
declarations: [
|
|
27
39
|
ElderPanelComponent,
|
|
28
40
|
ElderCardPanelComponent,
|
|
29
|
-
ElderDialogPanelComponent
|
|
41
|
+
ElderDialogPanelComponent,
|
|
42
|
+
ElderTogglePanelComponent,
|
|
43
|
+
ElderTogglePanelPrimaryDirective,
|
|
44
|
+
ElderTogglePanelSecondaryDirective,
|
|
45
|
+
ElderTogglePanelTriggerDirective
|
|
30
46
|
],
|
|
31
47
|
exports: [
|
|
32
48
|
ElderPanelComponent,
|
|
33
49
|
ElderCardPanelComponent,
|
|
34
|
-
ElderDialogPanelComponent
|
|
50
|
+
ElderDialogPanelComponent,
|
|
51
|
+
ElderTogglePanelComponent,
|
|
52
|
+
ElderTogglePanelPrimaryDirective,
|
|
53
|
+
ElderTogglePanelSecondaryDirective,
|
|
54
|
+
ElderTogglePanelTriggerDirective
|
|
35
55
|
]
|
|
36
56
|
}]
|
|
37
57
|
}] });
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItcGFuZWwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9wYW5lbHMvZWxkZXItcGFuZWwubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkMsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN6RCxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUNsRixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUM5RixPQUFPLEVBQ0wseUJBQXlCLEVBQ3pCLGdDQUFnQyxFQUNoQyxrQ0FBa0MsRUFDbkMsTUFBTSw2Q0FBNkMsQ0FBQztBQUNyRCxPQUFPLEVBQUMsZ0NBQWdDLEVBQUMsTUFBTSxxREFBcUQsQ0FBQzs7QUFFckcsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDakUsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0seUNBQXlDLENBQUM7QUFDaEYsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sbURBQW1ELENBQUM7QUFDNUYsY0FBYyw2Q0FBNkMsQ0FBQTtBQUMzRCxPQUFPLEVBQUMsZ0NBQWdDLEVBQUMsTUFBTSxxREFBcUQsQ0FBQTtBQXlCcEcsTUFBTSxPQUFPLGdCQUFnQjs7NkdBQWhCLGdCQUFnQjs4R0FBaEIsZ0JBQWdCLGlCQWxCekIsbUJBQW1CO1FBQ25CLHVCQUF1QjtRQUN2Qix5QkFBeUI7UUFDekIseUJBQXlCO1FBQ3pCLGdDQUFnQztRQUNoQyxrQ0FBa0M7UUFDbEMsZ0NBQWdDLGFBVGhDLFlBQVksRUFBRSxlQUFlLGFBWTdCLG1CQUFtQjtRQUNuQix1QkFBdUI7UUFDdkIseUJBQXlCO1FBQ3pCLHlCQUF5QjtRQUN6QixnQ0FBZ0M7UUFDaEMsa0NBQWtDO1FBQ2xDLGdDQUFnQzs4R0FHdkIsZ0JBQWdCLFlBckJ6QixZQUFZLEVBQUUsZUFBZTsyRkFxQnBCLGdCQUFnQjtrQkF2QjVCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFHO3dCQUNSLFlBQVksRUFBRSxlQUFlO3FCQUM5QjtvQkFDRCxZQUFZLEVBQUU7d0JBQ1osbUJBQW1CO3dCQUNuQix1QkFBdUI7d0JBQ3ZCLHlCQUF5Qjt3QkFDekIseUJBQXlCO3dCQUN6QixnQ0FBZ0M7d0JBQ2hDLGtDQUFrQzt3QkFDbEMsZ0NBQWdDO3FCQUNqQztvQkFDRCxPQUFPLEVBQUc7d0JBQ1IsbUJBQW1CO3dCQUNuQix1QkFBdUI7d0JBQ3ZCLHlCQUF5Qjt3QkFDekIseUJBQXlCO3dCQUN6QixnQ0FBZ0M7d0JBQ2hDLGtDQUFrQzt3QkFDbEMsZ0NBQWdDO3FCQUNqQztpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbIlxuaW1wb3J0IHtOZ01vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NvbW1vbk1vZHVsZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE1hdENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHtFbGRlclBhbmVsQ29tcG9uZW50fSBmcm9tICcuL2ZsYXQvZWxkZXItcGFuZWwuY29tcG9uZW50JztcbmltcG9ydCB7IEVsZGVyQ2FyZFBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi9jYXJkLXBhbmVsL2VsZGVyLWNhcmQtcGFuZWwuY29tcG9uZW50JztcbmltcG9ydCB7IEVsZGVyRGlhbG9nUGFuZWxDb21wb25lbnQgfSBmcm9tICcuL2VsZGVyLWRpYWxvZy1wYW5lbC9lbGRlci1kaWFsb2ctcGFuZWwuY29tcG9uZW50JztcbmltcG9ydCB7XG4gIEVsZGVyVG9nZ2xlUGFuZWxDb21wb25lbnQsXG4gIEVsZGVyVG9nZ2xlUGFuZWxQcmltYXJ5RGlyZWN0aXZlLFxuICBFbGRlclRvZ2dsZVBhbmVsU2Vjb25kYXJ5RGlyZWN0aXZlXG59IGZyb20gJy4vdG9nZ2xlLXBhbmVsL2VsZGVyLXRvZ2dsZS1wYW5lbC5jb21wb25lbnQnO1xuaW1wb3J0IHtFbGRlclRvZ2dsZVBhbmVsVHJpZ2dlckRpcmVjdGl2ZX0gZnJvbSAnLi90b2dnbGUtcGFuZWwvZWxkZXItdG9nZ2xlLXBhbmVsLXRyaWdnZXIuZGlyZWN0aXZlJztcblxuZXhwb3J0IHtFbGRlclBhbmVsQ29tcG9uZW50fSBmcm9tICcuL2ZsYXQvZWxkZXItcGFuZWwuY29tcG9uZW50JztcbmV4cG9ydCB7RWxkZXJDYXJkUGFuZWxDb21wb25lbnR9IGZyb20gJy4vY2FyZC1wYW5lbC9lbGRlci1jYXJkLXBhbmVsLmNvbXBvbmVudCc7XG5leHBvcnQge0VsZGVyRGlhbG9nUGFuZWxDb21wb25lbnR9IGZyb20gJy4vZWxkZXItZGlhbG9nLXBhbmVsL2VsZGVyLWRpYWxvZy1wYW5lbC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi90b2dnbGUtcGFuZWwvZWxkZXItdG9nZ2xlLXBhbmVsLmNvbXBvbmVudCdcbmV4cG9ydCB7RWxkZXJUb2dnbGVQYW5lbFRyaWdnZXJEaXJlY3RpdmV9IGZyb20gJy4vdG9nZ2xlLXBhbmVsL2VsZGVyLXRvZ2dsZS1wYW5lbC10cmlnZ2VyLmRpcmVjdGl2ZSdcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0cyA6IFtcbiAgICBDb21tb25Nb2R1bGUsIE1hdENvbW1vbk1vZHVsZSxcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgRWxkZXJQYW5lbENvbXBvbmVudCxcbiAgICBFbGRlckNhcmRQYW5lbENvbXBvbmVudCxcbiAgICBFbGRlckRpYWxvZ1BhbmVsQ29tcG9uZW50LFxuICAgIEVsZGVyVG9nZ2xlUGFuZWxDb21wb25lbnQsXG4gICAgRWxkZXJUb2dnbGVQYW5lbFByaW1hcnlEaXJlY3RpdmUsXG4gICAgRWxkZXJUb2dnbGVQYW5lbFNlY29uZGFyeURpcmVjdGl2ZSxcbiAgICBFbGRlclRvZ2dsZVBhbmVsVHJpZ2dlckRpcmVjdGl2ZVxuICBdLFxuICBleHBvcnRzIDogW1xuICAgIEVsZGVyUGFuZWxDb21wb25lbnQsXG4gICAgRWxkZXJDYXJkUGFuZWxDb21wb25lbnQsXG4gICAgRWxkZXJEaWFsb2dQYW5lbENvbXBvbmVudCxcbiAgICBFbGRlclRvZ2dsZVBhbmVsQ29tcG9uZW50LFxuICAgIEVsZGVyVG9nZ2xlUGFuZWxQcmltYXJ5RGlyZWN0aXZlLFxuICAgIEVsZGVyVG9nZ2xlUGFuZWxTZWNvbmRhcnlEaXJlY3RpdmUsXG4gICAgRWxkZXJUb2dnbGVQYW5lbFRyaWdnZXJEaXJlY3RpdmVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBFbGRlclBhbmVsTW9kdWxlIHsgfVxuIl19
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { Directive, HostListener, Input } from '@angular/core';
|
|
2
|
+
import { LoggerFactory } from '@elderbyte/ts-logger';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class ElderTogglePanelTriggerDirective {
|
|
5
|
+
/***************************************************************************
|
|
6
|
+
* *
|
|
7
|
+
* Constructor *
|
|
8
|
+
* *
|
|
9
|
+
**************************************************************************/
|
|
10
|
+
constructor() {
|
|
11
|
+
/***************************************************************************
|
|
12
|
+
* *
|
|
13
|
+
* Fields *
|
|
14
|
+
* *
|
|
15
|
+
**************************************************************************/
|
|
16
|
+
this.logger = LoggerFactory.getLogger(this.constructor.name);
|
|
17
|
+
this.type = 'click';
|
|
18
|
+
this.enabled = true;
|
|
19
|
+
}
|
|
20
|
+
/***************************************************************************
|
|
21
|
+
* *
|
|
22
|
+
* Event Listeners *
|
|
23
|
+
* *
|
|
24
|
+
**************************************************************************/
|
|
25
|
+
handleClick(event) {
|
|
26
|
+
if (this.type === 'click') {
|
|
27
|
+
this.handleTrigger();
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
handleFocus(event) {
|
|
31
|
+
if (this.type === 'focus') {
|
|
32
|
+
this.handleTrigger();
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
/***************************************************************************
|
|
36
|
+
* *
|
|
37
|
+
* Private methods *
|
|
38
|
+
* *
|
|
39
|
+
**************************************************************************/
|
|
40
|
+
handleTrigger() {
|
|
41
|
+
if (this.enabled && this.panel) {
|
|
42
|
+
this.panel.toggle();
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
ElderTogglePanelTriggerDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ElderTogglePanelTriggerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
47
|
+
ElderTogglePanelTriggerDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.0", type: ElderTogglePanelTriggerDirective, selector: "[elderTogglePanelTrigger]", inputs: { panel: ["elderTogglePanelTrigger", "panel"], type: ["elderTogglePanelTriggerType", "type"], enabled: ["elderTogglePanelTriggerEnabled", "enabled"] }, host: { listeners: { "click": "handleClick($event)", "focus": "handleFocus($event)" } }, ngImport: i0 });
|
|
48
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ElderTogglePanelTriggerDirective, decorators: [{
|
|
49
|
+
type: Directive,
|
|
50
|
+
args: [{
|
|
51
|
+
selector: '[elderTogglePanelTrigger]'
|
|
52
|
+
}]
|
|
53
|
+
}], ctorParameters: function () { return []; }, propDecorators: { panel: [{
|
|
54
|
+
type: Input,
|
|
55
|
+
args: ['elderTogglePanelTrigger']
|
|
56
|
+
}], type: [{
|
|
57
|
+
type: Input,
|
|
58
|
+
args: ['elderTogglePanelTriggerType']
|
|
59
|
+
}], enabled: [{
|
|
60
|
+
type: Input,
|
|
61
|
+
args: ['elderTogglePanelTriggerEnabled']
|
|
62
|
+
}], handleClick: [{
|
|
63
|
+
type: HostListener,
|
|
64
|
+
args: ['click', ['$event']]
|
|
65
|
+
}], handleFocus: [{
|
|
66
|
+
type: HostListener,
|
|
67
|
+
args: ['focus', ['$event']]
|
|
68
|
+
}] } });
|
|
69
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItdG9nZ2xlLXBhbmVsLXRyaWdnZXIuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9wYW5lbHMvdG9nZ2xlLXBhbmVsL2VsZGVyLXRvZ2dsZS1wYW5lbC10cmlnZ2VyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDOztBQU1uRCxNQUFNLE9BQU8sZ0NBQWdDO0lBbUIzQzs7OztnRkFJNEU7SUFFNUU7UUF2QkE7Ozs7b0ZBSTRFO1FBRTNELFdBQU0sR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFNbEUsU0FBSSxHQUFzQixPQUFPLENBQUM7UUFHbEMsWUFBTyxHQUFHLElBQUksQ0FBQztJQVNsQixDQUFDO0lBRUw7Ozs7Z0ZBSTRFO0lBRzVFLFdBQVcsQ0FBQyxLQUFpQjtRQUMzQixJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssT0FBTyxFQUFFO1lBQ3pCLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztTQUN0QjtJQUNILENBQUM7SUFHRCxXQUFXLENBQUMsS0FBaUI7UUFDM0IsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLE9BQU8sRUFBRTtZQUN6QixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7U0FDdEI7SUFDSCxDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRXBFLGFBQWE7UUFDbkIsSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDOUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztTQUNyQjtJQUNILENBQUM7OzZIQTFEVSxnQ0FBZ0M7aUhBQWhDLGdDQUFnQzsyRkFBaEMsZ0NBQWdDO2tCQUg1QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSwyQkFBMkI7aUJBQ3RDOzBFQVlRLEtBQUs7c0JBRFgsS0FBSzt1QkFBQyx5QkFBeUI7Z0JBSXpCLElBQUk7c0JBRFYsS0FBSzt1QkFBQyw2QkFBNkI7Z0JBSTdCLE9BQU87c0JBRGIsS0FBSzt1QkFBQyxnQ0FBZ0M7Z0JBbUJ2QyxXQUFXO3NCQURWLFlBQVk7dUJBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQVFqQyxXQUFXO3NCQURWLFlBQVk7dUJBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEhvc3RMaXN0ZW5lciwgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtMb2dnZXJGYWN0b3J5fSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5pbXBvcnQge0VsZGVyVG9nZ2xlUGFuZWxDb21wb25lbnR9IGZyb20gJy4vZWxkZXItdG9nZ2xlLXBhbmVsLmNvbXBvbmVudCc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tlbGRlclRvZ2dsZVBhbmVsVHJpZ2dlcl0nXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyVG9nZ2xlUGFuZWxUcmlnZ2VyRGlyZWN0aXZlIHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZ2dlciA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKHRoaXMuY29uc3RydWN0b3IubmFtZSk7XG5cbiAgQElucHV0KCdlbGRlclRvZ2dsZVBhbmVsVHJpZ2dlcicpXG4gIHB1YmxpYyBwYW5lbDogRWxkZXJUb2dnbGVQYW5lbENvbXBvbmVudDtcblxuICBASW5wdXQoJ2VsZGVyVG9nZ2xlUGFuZWxUcmlnZ2VyVHlwZScpXG4gIHB1YmxpYyB0eXBlOiAnY2xpY2snIHwgJ2ZvY3VzJyA9ICdjbGljayc7XG5cbiAgQElucHV0KCdlbGRlclRvZ2dsZVBhbmVsVHJpZ2dlckVuYWJsZWQnKVxuICBwdWJsaWMgZW5hYmxlZCA9IHRydWU7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoXG4gICkgeyB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEV2ZW50IExpc3RlbmVycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudCddKVxuICBoYW5kbGVDbGljayhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnR5cGUgPT09ICdjbGljaycpIHtcbiAgICAgIHRoaXMuaGFuZGxlVHJpZ2dlcigpO1xuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2ZvY3VzJywgWyckZXZlbnQnXSlcbiAgaGFuZGxlRm9jdXMoZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAodGhpcy50eXBlID09PSAnZm9jdXMnKSB7XG4gICAgICB0aGlzLmhhbmRsZVRyaWdnZXIoKTtcbiAgICB9XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBtZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIGhhbmRsZVRyaWdnZXIoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZW5hYmxlZCAmJiB0aGlzLnBhbmVsKSB7XG4gICAgICB0aGlzLnBhbmVsLnRvZ2dsZSgpO1xuICAgIH1cbiAgfVxuXG59XG4iXX0=
|