@ecodev/natural 45.5.0 → 46.0.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/esm2020/lib/classes/abstract-controller.mjs +2 -2
- package/esm2020/lib/classes/abstract-detail.mjs +10 -3
- package/esm2020/lib/classes/abstract-navigable-list.mjs +1 -1
- package/esm2020/lib/classes/rxjs.mjs +1 -1
- package/esm2020/lib/classes/validators.mjs +2 -2
- package/esm2020/lib/modules/avatar/service/avatar.service.mjs +2 -2
- package/esm2020/lib/modules/avatar/service/md5.mjs +4 -4
- package/esm2020/lib/modules/columns-picker/columns-picker-column.directive.mjs +1 -1
- package/esm2020/lib/modules/common/pipes/swiss-date.pipe.mjs +1 -1
- package/esm2020/lib/modules/dropdown-components/type-date/type-date.component.mjs +3 -3
- package/esm2020/lib/modules/dropdown-components/type-date-range/type-date-range.component.mjs +4 -4
- package/esm2020/lib/modules/dropdown-components/type-hierarchic-selector/type-hierarchic-selector.component.mjs +1 -1
- package/esm2020/lib/modules/dropdown-components/type-text/type-text.component.mjs +2 -2
- package/esm2020/lib/modules/file/abstract-file.mjs +2 -2
- package/esm2020/lib/modules/file/component/file.component.mjs +32 -24
- package/esm2020/lib/modules/file/file-drop.directive.mjs +1 -1
- package/esm2020/lib/modules/file/file-select.directive.mjs +1 -1
- package/esm2020/lib/modules/fixed-button/fixed-button.component.mjs +2 -2
- package/esm2020/lib/modules/hierarchic-selector/classes/hierarchic-filters-configuration.mjs +1 -1
- package/esm2020/lib/modules/logger/error-handler.mjs +1 -1
- package/esm2020/lib/modules/panels/fallback-if-no-opened-panels.urlmatcher.mjs +2 -2
- package/esm2020/lib/modules/panels/panels.service.mjs +2 -2
- package/esm2020/lib/modules/panels/types.mjs +1 -1
- package/esm2020/lib/modules/relations/relations.component.mjs +2 -2
- package/esm2020/lib/modules/search/input/input.component.mjs +4 -4
- package/esm2020/lib/modules/search/search/search.component.mjs +2 -2
- package/esm2020/lib/modules/search/types/facet.mjs +1 -1
- package/esm2020/lib/modules/search/types/values.mjs +1 -1
- package/esm2020/lib/modules/select/abstract-select.component.mjs +2 -2
- package/esm2020/lib/modules/select/select/select.component.mjs +1 -1
- package/esm2020/lib/modules/select/select-enum/select-enum.component.mjs +1 -2
- package/esm2020/lib/modules/select/select-hierarchic/select-hierarchic.component.mjs +1 -1
- package/esm2020/lib/modules/sidenav/sidenav/sidenav.component.mjs +2 -3
- package/esm2020/lib/modules/sidenav/sidenav-content/sidenav-content.component.mjs +2 -3
- package/esm2020/lib/modules/sidenav/sidenav.service.mjs +1 -1
- package/esm2020/lib/modules/table-button/table-button.component.mjs +2 -2
- package/esm2020/lib/services/abstract-model.service.mjs +8 -1
- package/esm2020/lib/services/debounce.service.mjs +1 -1
- package/esm2020/lib/services/persistence.service.mjs +4 -2
- package/esm2020/lib/services/swiss-parsing-date-adapter.service.mjs +1 -1
- package/fesm2015/ecodev-natural.mjs +67 -46
- package/fesm2015/ecodev-natural.mjs.map +1 -1
- package/fesm2020/ecodev-natural.mjs +66 -46
- package/fesm2020/ecodev-natural.mjs.map +1 -1
- package/lib/classes/abstract-controller.d.ts +0 -1
- package/lib/modules/avatar/service/avatar.service.d.ts +0 -1
- package/lib/modules/dropdown-components/type-date-range/type-date-range.component.d.ts +1 -1
- package/lib/modules/dropdown-components/type-hierarchic-selector/type-hierarchic-selector.component.d.ts +1 -2
- package/lib/modules/dropdown-components/type-text/type-text.component.d.ts +2 -2
- package/lib/modules/file/abstract-file.d.ts +1 -1
- package/lib/modules/file/component/file.component.d.ts +32 -9
- package/lib/modules/fixed-button/fixed-button.component.d.ts +0 -1
- package/lib/modules/hierarchic-selector/classes/hierarchic-filters-configuration.d.ts +1 -2
- package/lib/modules/panels/types.d.ts +1 -2
- package/lib/modules/relations/relations.component.d.ts +2 -2
- package/lib/modules/search/input/input.component.d.ts +6 -5
- package/lib/modules/search/search/search.component.d.ts +2 -2
- package/lib/modules/search/types/facet.d.ts +1 -2
- package/lib/modules/search/types/values.d.ts +2 -4
- package/lib/modules/select/abstract-select.component.d.ts +2 -2
- package/lib/modules/select/select-enum/select-enum.component.d.ts +0 -1
- package/lib/modules/sidenav/sidenav/sidenav.component.d.ts +0 -1
- package/lib/modules/sidenav/sidenav-content/sidenav-content.component.d.ts +0 -1
- package/lib/modules/table-button/table-button.component.d.ts +2 -2
- package/lib/services/debounce.service.d.ts +1 -1
- package/package.json +1 -1
|
@@ -1,33 +1,42 @@
|
|
|
1
1
|
import { Component, EventEmitter, HostBinding, Inject, Input, Output, } from '@angular/core';
|
|
2
|
-
import { of, Subject } from 'rxjs';
|
|
2
|
+
import { of, Subject, tap } from 'rxjs';
|
|
3
3
|
import { DOCUMENT } from '@angular/common';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
import * as i1 from "../file.service";
|
|
6
|
-
import * as i2 from "
|
|
7
|
-
import * as i3 from "@angular/
|
|
8
|
-
import * as i4 from "
|
|
9
|
-
import * as i5 from "
|
|
10
|
-
import * as i6 from "
|
|
11
|
-
import * as i7 from "
|
|
6
|
+
import * as i2 from "../../alert/alert.service";
|
|
7
|
+
import * as i3 from "@angular/platform-browser";
|
|
8
|
+
import * as i4 from "@angular/common";
|
|
9
|
+
import * as i5 from "../../icon/icon.component";
|
|
10
|
+
import * as i6 from "@angular/material/core";
|
|
11
|
+
import * as i7 from "../file-drop.directive";
|
|
12
|
+
import * as i8 from "../../common/pipes/capitalize.pipe";
|
|
12
13
|
// @dynamic
|
|
13
14
|
export class FileComponent {
|
|
14
|
-
constructor(naturalFileService, sanitizer, document) {
|
|
15
|
+
constructor(naturalFileService, alertService, sanitizer, document) {
|
|
15
16
|
this.naturalFileService = naturalFileService;
|
|
17
|
+
this.alertService = alertService;
|
|
16
18
|
this.sanitizer = sanitizer;
|
|
17
19
|
this.document = document;
|
|
18
20
|
this.height = 250;
|
|
19
21
|
this.action = null;
|
|
20
22
|
this.backgroundSize = 'contain';
|
|
21
23
|
/**
|
|
22
|
-
* Comma
|
|
24
|
+
* Comma-separated list of unique file type specifiers. Like the native element
|
|
25
|
+
* it can be a mix of mime-type and file extensions.
|
|
26
|
+
*
|
|
27
|
+
* See https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/file#accept
|
|
23
28
|
*/
|
|
24
29
|
this.accept = 'image/bmp,image/gif,image/jpeg,image/pjpeg,image/png,image/svg+xml,image/svg,image/webp';
|
|
25
30
|
this.model = null;
|
|
26
31
|
/**
|
|
27
|
-
* If provided, get updated
|
|
28
|
-
*
|
|
32
|
+
* If provided, its value will get updated when the model changes.
|
|
33
|
+
* But its value is never read, so if you want to set a value use `[model]` instead.
|
|
29
34
|
*/
|
|
30
35
|
this.formCtrl = null;
|
|
36
|
+
/**
|
|
37
|
+
* This **must not** be used to mutate the server, because it is very likely it will never be called if the
|
|
38
|
+
* human navigates away from the page before the upload is finished. Instead, you should use `[uploader]`.
|
|
39
|
+
*/
|
|
31
40
|
this.modelChange = new EventEmitter();
|
|
32
41
|
this.imagePreview = null;
|
|
33
42
|
this.filePreview = null;
|
|
@@ -46,15 +55,14 @@ export class FileComponent {
|
|
|
46
55
|
if (this.formCtrl) {
|
|
47
56
|
this.formCtrl.setValue(this.model);
|
|
48
57
|
}
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
else {
|
|
58
|
+
const observable = this.uploader?.(file).pipe(tap(() => this.alertService.info($localize `Mis à jour`))) ?? of(this.model);
|
|
59
|
+
observable.subscribe(result => {
|
|
60
|
+
this.model = result;
|
|
61
|
+
if (this.formCtrl) {
|
|
62
|
+
this.formCtrl.setValue(this.model);
|
|
63
|
+
}
|
|
56
64
|
this.modelChange.emit(this.model);
|
|
57
|
-
}
|
|
65
|
+
});
|
|
58
66
|
}
|
|
59
67
|
getDownloadLink() {
|
|
60
68
|
if (this.action !== 'download') {
|
|
@@ -112,12 +120,12 @@ export class FileComponent {
|
|
|
112
120
|
return subject.asObservable();
|
|
113
121
|
}
|
|
114
122
|
}
|
|
115
|
-
FileComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: FileComponent, deps: [{ token: i1.NaturalFileService }, { token: i2.DomSanitizer }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component });
|
|
116
|
-
FileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.1", type: FileComponent, selector: "natural-file", inputs: { height: "height", action: "action", backgroundSize: "backgroundSize", accept: "accept",
|
|
123
|
+
FileComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: FileComponent, deps: [{ token: i1.NaturalFileService }, { token: i2.NaturalAlertService }, { token: i3.DomSanitizer }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component });
|
|
124
|
+
FileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.1", type: FileComponent, selector: "natural-file", inputs: { height: "height", action: "action", backgroundSize: "backgroundSize", accept: "accept", uploader: "uploader", model: "model", formCtrl: "formCtrl" }, outputs: { modelChange: "modelChange" }, host: { properties: { "style.height.px": "this.height" } }, usesOnChanges: true, ngImport: i0, template: "<a\n (fileChange)=\"upload($event)\"\n naturalFileDrop\n [selectable]=\"true\"\n [accept]=\"accept\"\n [attr.href]=\"getDownloadLink()\"\n [class.has-action]=\"!!action\"\n [class.suggest-upload]=\"!model && action === 'upload'\"\n [fileSelectionDisabled]=\"action !== 'upload'\"\n [matRippleDisabled]=\"!action\"\n [style.backgroundImage]=\"imagePreview\"\n [style.backgroundSize]=\"backgroundSize\"\n matRipple\n target=\"_blank\"\n>\n <div *ngIf=\"filePreview\" class=\"file-preview\">\n <natural-icon [size]=\"height * 0.33\" name=\"attachment\"></natural-icon>\n {{ filePreview | uppercase }}\n </div>\n\n <div class=\"action-overlay\">\n <natural-icon *ngIf=\"action === 'upload'\" [size]=\"height * 0.66\" name=\"cloud_upload\"></natural-icon>\n <natural-icon *ngIf=\"action === 'download'\" [size]=\"height * 0.66\" name=\"get_app\"></natural-icon>\n {{ action | capitalize }}\n </div>\n</a>\n", styles: [":host{display:flex;flex-direction:row;overflow:hidden;position:relative}:host>a{position:relative;flex:1;background-position:center;background-repeat:no-repeat}:host>a.has-action{cursor:pointer}:host>a.has-action.suggest-upload .action-overlay{opacity:.66}:host>a.has-action:hover .action-overlay,:host>a.has-action.natural-file-over .action-overlay{opacity:1}:host .action-overlay,:host .file-preview{display:flex;flex-direction:column;position:absolute;top:0;left:0;right:0;bottom:0;justify-content:center;align-items:center;font-size:36px;line-height:1.3em;text-align:center}:host .action-overlay{opacity:0}:host .action-overlay>div{opacity:0;position:absolute;top:0;left:0;right:0;bottom:0;display:flex;justify-content:center;align-items:center}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i5.NaturalIconComponent, selector: "natural-icon", inputs: ["label", "labelColor", "labelPosition", "name", "size"] }, { kind: "directive", type: i6.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "directive", type: i7.NaturalFileDropDirective, selector: ":not([naturalFileSelect])[naturalFileDrop]", outputs: ["fileOver"] }, { kind: "pipe", type: i4.UpperCasePipe, name: "uppercase" }, { kind: "pipe", type: i8.NaturalCapitalizePipe, name: "capitalize" }] });
|
|
117
125
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: FileComponent, decorators: [{
|
|
118
126
|
type: Component,
|
|
119
127
|
args: [{ selector: 'natural-file', template: "<a\n (fileChange)=\"upload($event)\"\n naturalFileDrop\n [selectable]=\"true\"\n [accept]=\"accept\"\n [attr.href]=\"getDownloadLink()\"\n [class.has-action]=\"!!action\"\n [class.suggest-upload]=\"!model && action === 'upload'\"\n [fileSelectionDisabled]=\"action !== 'upload'\"\n [matRippleDisabled]=\"!action\"\n [style.backgroundImage]=\"imagePreview\"\n [style.backgroundSize]=\"backgroundSize\"\n matRipple\n target=\"_blank\"\n>\n <div *ngIf=\"filePreview\" class=\"file-preview\">\n <natural-icon [size]=\"height * 0.33\" name=\"attachment\"></natural-icon>\n {{ filePreview | uppercase }}\n </div>\n\n <div class=\"action-overlay\">\n <natural-icon *ngIf=\"action === 'upload'\" [size]=\"height * 0.66\" name=\"cloud_upload\"></natural-icon>\n <natural-icon *ngIf=\"action === 'download'\" [size]=\"height * 0.66\" name=\"get_app\"></natural-icon>\n {{ action | capitalize }}\n </div>\n</a>\n", styles: [":host{display:flex;flex-direction:row;overflow:hidden;position:relative}:host>a{position:relative;flex:1;background-position:center;background-repeat:no-repeat}:host>a.has-action{cursor:pointer}:host>a.has-action.suggest-upload .action-overlay{opacity:.66}:host>a.has-action:hover .action-overlay,:host>a.has-action.natural-file-over .action-overlay{opacity:1}:host .action-overlay,:host .file-preview{display:flex;flex-direction:column;position:absolute;top:0;left:0;right:0;bottom:0;justify-content:center;align-items:center;font-size:36px;line-height:1.3em;text-align:center}:host .action-overlay{opacity:0}:host .action-overlay>div{opacity:0;position:absolute;top:0;left:0;right:0;bottom:0;display:flex;justify-content:center;align-items:center}\n"] }]
|
|
120
|
-
}], ctorParameters: function () { return [{ type: i1.NaturalFileService }, { type: i2.DomSanitizer }, { type: Document, decorators: [{
|
|
128
|
+
}], ctorParameters: function () { return [{ type: i1.NaturalFileService }, { type: i2.NaturalAlertService }, { type: i3.DomSanitizer }, { type: Document, decorators: [{
|
|
121
129
|
type: Inject,
|
|
122
130
|
args: [DOCUMENT]
|
|
123
131
|
}] }]; }, propDecorators: { height: [{
|
|
@@ -131,7 +139,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.1", ngImpor
|
|
|
131
139
|
type: Input
|
|
132
140
|
}], accept: [{
|
|
133
141
|
type: Input
|
|
134
|
-
}],
|
|
142
|
+
}], uploader: [{
|
|
135
143
|
type: Input
|
|
136
144
|
}], model: [{
|
|
137
145
|
type: Input
|
|
@@ -140,4 +148,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.1", ngImpor
|
|
|
140
148
|
}], modelChange: [{
|
|
141
149
|
type: Output
|
|
142
150
|
}] } });
|
|
143
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uYXR1cmFsL3NyYy9saWIvbW9kdWxlcy9maWxlL2NvbXBvbmVudC9maWxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9tb2R1bGVzL2ZpbGUvY29tcG9uZW50L2ZpbGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFDVCxZQUFZLEVBQ1osV0FBVyxFQUNYLE1BQU0sRUFDTixLQUFLLEVBR0wsTUFBTSxHQUVULE1BQU0sZUFBZSxDQUFDO0FBR3ZCLE9BQU8sRUFBYSxFQUFFLEVBQUUsT0FBTyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBRzdDLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7Ozs7O0FBR3pDLFdBQVc7QUFNWCxNQUFNLE9BQU8sYUFBYTtJQThCdEIsWUFDcUIsa0JBQXNDLEVBQ3RDLFNBQXVCLEVBQ0wsUUFBa0I7UUFGcEMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQUN0QyxjQUFTLEdBQVQsU0FBUyxDQUFjO1FBQ0wsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQTdCVCxXQUFNLEdBQUcsR0FBRyxDQUFDO1FBRTdDLFdBQU0sR0FBaUMsSUFBSSxDQUFDO1FBRTVDLG1CQUFjLEdBQUcsU0FBUyxDQUFDO1FBRTNDOztXQUVHO1FBQ2EsV0FBTSxHQUFHLHlGQUF5RixDQUFDO1FBSW5HLFVBQUssR0FBcUIsSUFBSSxDQUFDO1FBRS9DOzs7V0FHRztRQUNhLGFBQVEsR0FBdUMsSUFBSSxDQUFDO1FBRTFDLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQWEsQ0FBQztRQUUvRCxpQkFBWSxHQUFxQixJQUFJLENBQUM7UUFDdEMsZ0JBQVcsR0FBa0IsSUFBSSxDQUFDO0lB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QUFJLFVBQVUsRUFBRSxDQUFDO1FBQ2hDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFPLEVBQUUsRUFBRTtZQUN4QyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7WUFDckMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3ZCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBRWhDLE9BQU8sT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ2xDLENBQUM7OzBHQTNIUSxhQUFhLGdGQWlDVixRQUFROzhGQWpDWCxhQUFhLDRVQ3pCMUIsNjlCQTBCQTsyRkREYSxhQUFhO2tCQUx6QixTQUFTOytCQUNJLGNBQWM7c0hBcUN5QixRQUFROzBCQUFwRCxNQUFNOzJCQUFDLFFBQVE7NENBN0I0QixNQUFNO3NCQUFyRCxXQUFXO3VCQUFDLGlCQUFpQjs7c0JBQUcsS0FBSztnQkFFdEIsTUFBTTtzQkFBckIsS0FBSztnQkFFVSxjQUFjO3NCQUE3QixLQUFLO2dCQUtVLE1BQU07c0JBQXJCLEtBQUs7Z0JBRVUsT0FBTztzQkFBdEIsS0FBSztnQkFFVSxLQUFLO3NCQUFwQixLQUFLO2dCQU1VLFFBQVE7c0JBQXZCLEtBQUs7Z0JBRW9CLFdBQVc7c0JBQXBDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE9uQ2hhbmdlcyxcbiAgICBPbkluaXQsXG4gICAgT3V0cHV0LFxuICAgIFNpbXBsZUNoYW5nZXMsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBYnN0cmFjdENvbnRyb2x9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7RG9tU2FuaXRpemVyLCBTYWZlU3R5bGV9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHtPYnNlcnZhYmxlLCBvZiwgU3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge05hdHVyYWxGaWxlU2VydmljZX0gZnJvbSAnLi4vZmlsZS5zZXJ2aWNlJztcbmltcG9ydCB7TmF0dXJhbEFic3RyYWN0TW9kZWxTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9hYnN0cmFjdC1tb2RlbC5zZXJ2aWNlJztcbmltcG9ydCB7RE9DVU1FTlR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0ZpbGVNb2RlbH0gZnJvbSAnLi4vdHlwZXMnO1xuXG4vLyBAZHluYW1pY1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduYXR1cmFsLWZpbGUnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9maWxlLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9maWxlLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEZpbGVDb21wb25lbnQ8XG4gICAgVFNlcnZpY2UgZXh0ZW5kcyBOYXR1cmFsQWJzdHJhY3RNb2RlbFNlcnZpY2U8YW55LCBhbnksIGFueSwgYW55LCBGaWxlTW9kZWwsIGFueSwgYW55LCBhbnksIGFueSwgYW55Pixcbj4gaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlc1xue1xuICAgIEBIb3N0QmluZGluZygnc3R5bGUuaGVpZ2h0LnB4JykgQElucHV0KCkgcHVibGljIGhlaWdodCA9IDI1MDtcblxuICAgIEBJbnB1dCgpIHB1YmxpYyBhY3Rpb246ICd1cGxvYWQnIHwgJ2Rvd25sb2FkJyB8IG51bGwgPSBudWxsO1xuXG4gICAgQElucHV0KCkgcHVibGljIGJhY2tncm91bmRTaXplID0gJ2NvbnRhaW4nO1xuXG4gICAgLyoqXG4gICAgICogQ29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgYWNjZXB0ZWQgbWltZXR5cGVzXG4gICAgICovXG4gICAgQElucHV0KCkgcHVibGljIGFjY2VwdCA9ICdpbWFnZS9ibXAsaW1hZ2UvZ2lmLGltYWdlL2pwZWcsaW1hZ2UvcGpwZWcsaW1hZ2UvcG5nLGltYWdlL3N2Zyt4bWwsaW1hZ2Uvc3ZnLGltYWdlL3dlYnAnO1xuXG4gICAgQElucHV0KCkgcHVibGljIHNlcnZpY2U/OiBUU2VydmljZTtcblxuICAgIEBJbnB1dCgpIHB1YmxpYyBtb2RlbDogRmlsZU1vZGVsIHwgbnVsbCA9IG51bGw7XG5cbiAgICAvKipcbiAgICAgKiBJZiBwcm92aWRlZCwgZ2V0IHVwZGF0ZWQgb24gY2hhbmdlXG4gICAgICogSXMgbm90IHVzZWQgZm9yIHJlYWRpbmcgLT4gdXNlIFttb2RlbF1cbiAgICAgKi9cbiAgICBASW5wdXQoKSBwdWJsaWMgZm9ybUN0cmw6IEFic3RyYWN0Q29udHJvbCB8IG51bGwgfCB1bmRlZmluZWQgPSBudWxsO1xuXG4gICAgQE91dHB1dCgpIHB1YmxpYyByZWFkb25seSBtb2RlbENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8RmlsZU1vZGVsPigpO1xuXG4gICAgcHVibGljIGltYWdlUHJldmlldzogU2FmZVN0eWxlIHwgbnVsbCA9IG51bGw7XG4gICAgcHVibGljIGZpbGVQcmV2aWV3OiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBuYXR1cmFsRmlsZVNlcnZpY2U6IE5hdHVyYWxGaWxlU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBzYW5pdGl6ZXI6IERvbVNhbml0aXplcixcbiAgICAgICAgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSByZWFkb25seSBkb2N1bWVudDogRG9jdW1lbnQsXG4gICAgKSB7fVxuXG4gICAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnVwZGF0ZUltYWdlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAgICAgaWYgKGNoYW5nZXMubW9kZWwgJiYgY2hhbmdlcy5tb2RlbC5wcmV2aW91c1ZhbHVlICE9PSBjaGFuZ2VzLm1vZGVsLmN1cnJlbnRWYWx1ZSkge1xuICAgICAgICAgICAgdGhpcy51cGRhdGVJbWFnZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHVwbG9hZChmaWxlOiBGaWxlKTogdm9pZCB7XG4gICAgICAgIHRoaXMubW9kZWwgPSB7ZmlsZTogZmlsZX07XG4gICAgICAgIHRoaXMudXBkYXRlSW1hZ2UoKTtcblxuICAgICAgICBpZiAodGhpcy5mb3JtQ3RybCkge1xuICAgICAgICAgICAgdGhpcy5mb3JtQ3RybC5zZXRWYWx1ZSh0aGlzLm1vZGVsKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLnNlcnZpY2UpIHtcbiAgICAgICAgICAgIHRoaXMuc2VydmljZS5jcmVhdGUodGhpcy5tb2RlbCkuc3Vic2NyaWJlKHJlc3VsdCA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5tb2RlbCA9IHJlc3VsdDtcbiAgICAgICAgICAgICAgICB0aGlzLm1vZGVsQ2hhbmdlLmVtaXQocmVzdWx0KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5tb2RlbENoYW5nZS5lbWl0KHRoaXMubW9kZWwpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGdldERvd25sb2FkTGluaygpOiBudWxsIHwgc3RyaW5nIHtcbiAgICAgICAgaWYgKHRoaXMuYWN0aW9uICE9PSAnZG93bmxvYWQnKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLm5hdHVyYWxGaWxlU2VydmljZS5nZXREb3dubG9hZExpbmsodGhpcy5tb2RlbCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB1cGRhdGVJbWFnZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pbWFnZVByZXZpZXcgPSBudWxsO1xuICAgICAgICB0aGlzLmZpbGVQcmV2aWV3ID0gbnVsbDtcbiAgICAgICAgaWYgKCF0aGlzLm1vZGVsKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5tb2RlbC5maWxlPy50eXBlLmluY2x1ZGVzKCdpbWFnZS8nKSkge1xuICAgICAgICAgICAgLy8gTW9kZWwgZnJvbSB1cGxvYWQgKGJlZm9yZSBzYXZpbmcpXG4gICAgICAgICAgICB0aGlzLmdldEJhc2U2NCh0aGlzLm1vZGVsLmZpbGUpLnN1YnNjcmliZShyZXN1bHQgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGNvbnRlbnQgPSAndXJsKGRhdGE6JyArIHRoaXMubW9kZWw/LmZpbGU/LnR5cGUgKyAnO2Jhc2U2NCwnICsgcmVzdWx0ICsgJyknO1xuICAgICAgICAgICAgICAgIHRoaXMuaW1hZ2VQcmV2aWV3ID0gdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFN0eWxlKGNvbnRlbnQpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5tb2RlbC5maWxlKSB7XG4gICAgICAgICAgICB0aGlzLmZpbGVQcmV2aWV3ID0gdGhpcy5tb2RlbC5maWxlLnR5cGUuc3BsaXQoJy8nKVsxXTtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLm1vZGVsLl9fdHlwZW5hbWUgPT09ICdJbWFnZScgJiYgdGhpcy5tb2RlbC5pZCkge1xuICAgICAgICAgICAgLy8gTW9kZWwgaW1hZ2Ugd2l0aCBpZCwgdXNlIHNwZWNpZmljIEFQSSB0byByZW5kZXIgaW1hZ2UgYnkgc2l6ZVxuICAgICAgICAgICAgY29uc3Qgd2luZG93ID0gdGhpcy5kb2N1bWVudC5kZWZhdWx0VmlldztcbiAgICAgICAgICAgIGlmICghd2luZG93KSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdDb3VsZCBub3Qgc2hvdyBpbWFnZSBwcmV2aWV3IGJlY2F1c2UgYHdpbmRvd2AgaXMgdW5kZWZpbmVkJyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IGxvYyA9IHdpbmRvdy5sb2NhdGlvbjtcbiAgICAgICAgICAgIGNvbnN0IGhlaWdodCA9IHRoaXMuaGVpZ2h0ID8gJy8nICsgdGhpcy5oZWlnaHQgOiAnJztcblxuICAgICAgICAgICAgLy8gY3JlYXRlIGltYWdlIHVybCB3aXRob3V0IHBvcnQgdG8gc3RheSBjb21wYXRpYmxlIHdpdGggZGV2IG1vZGVcbiAgICAgICAgICAgIGNvbnN0IGltYWdlID0gbG9jLnByb3RvY29sICsgJy8vJyArIGxvYy5ob3N0bmFtZSArICcvYXBpL2ltYWdlLycgKyB0aGlzLm1vZGVsLmlkICsgaGVpZ2h0O1xuICAgICAgICAgICAgdGhpcy5pbWFnZVByZXZpZXcgPSB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0U3R5bGUoJ3VybCgnICsgaW1hZ2UgKyAnKScpO1xuICAgICAgICB9IGVsc2UgaWYgKHRoaXMubW9kZWw/Lm1pbWUgJiYgWydGaWxlJywgJ0FjY291bnRpbmdEb2N1bWVudCddLmluY2x1ZGVzKHRoaXMubW9kZWwuX190eXBlbmFtZSB8fCAnJykpIHtcbiAgICAgICAgICAgIHRoaXMuZmlsZVByZXZpZXcgPSB0aGlzLm1vZGVsLm1pbWUuc3BsaXQoJy8nKVsxXTtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLm1vZGVsLnNyYykge1xuICAgICAgICAgICAgLy8gZXh0ZXJuYWwgdXJsXG4gICAgICAgICAgICB0aGlzLmltYWdlUHJldmlldyA9IHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RTdHlsZSgndXJsKCcgKyB0aGlzLm1vZGVsLnNyYyArICcpJyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEJhc2U2NChmaWxlOiBGaWxlIHwgbnVsbCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgICAgIGlmICghZmlsZSkge1xuICAgICAgICAgICAgcmV0dXJuIG9mKCcnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHN1YmplY3QgPSBuZXcgU3ViamVjdDxzdHJpbmc+KCk7XG5cbiAgICAgICAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcbiAgICAgICAgcmVhZGVyLmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCAoZXY6IGFueSkgPT4ge1xuICAgICAgICAgICAgc3ViamVjdC5uZXh0KGJ0b2EoZXYudGFyZ2V0LnJlc3VsdCkpO1xuICAgICAgICAgICAgc3ViamVjdC5jb21wbGV0ZSgpO1xuICAgICAgICB9KTtcbiAgICAgICAgcmVhZGVyLnJlYWRBc0JpbmFyeVN0cmluZyhmaWxlKTtcblxuICAgICAgICByZXR1cm4gc3ViamVjdC5hc09ic2VydmFibGUoKTtcbiAgICB9XG59XG4iLCI8YVxuICAgIChmaWxlQ2hhbmdlKT1cInVwbG9hZCgkZXZlbnQpXCJcbiAgICBuYXR1cmFsRmlsZURyb3BcbiAgICBbc2VsZWN0YWJsZV09XCJ0cnVlXCJcbiAgICBbYWNjZXB0XT1cImFjY2VwdFwiXG4gICAgW2F0dHIuaHJlZl09XCJnZXREb3dubG9hZExpbmsoKVwiXG4gICAgW2NsYXNzLmhhcy1hY3Rpb25dPVwiISFhY3Rpb25cIlxuICAgIFtjbGFzcy5zdWdnZXN0LXVwbG9hZF09XCIhbW9kZWwgJiYgYWN0aW9uID09PSAndXBsb2FkJ1wiXG4gICAgW2ZpbGVTZWxlY3Rpb25EaXNhYmxlZF09XCJhY3Rpb24gIT09ICd1cGxvYWQnXCJcbiAgICBbbWF0UmlwcGxlRGlzYWJsZWRdPVwiIWFjdGlvblwiXG4gICAgW3N0eWxlLmJhY2tncm91bmRJbWFnZV09XCJpbWFnZVByZXZpZXdcIlxuICAgIFtzdHlsZS5iYWNrZ3JvdW5kU2l6ZV09XCJiYWNrZ3JvdW5kU2l6ZVwiXG4gICAgbWF0UmlwcGxlXG4gICAgdGFyZ2V0PVwiX2JsYW5rXCJcbj5cbiAgICA8ZGl2ICpuZ0lmPVwiZmlsZVByZXZpZXdcIiBjbGFzcz1cImZpbGUtcHJldmlld1wiPlxuICAgICAgICA8bmF0dXJhbC1pY29uIFtzaXplXT1cImhlaWdodCAqIDAuMzNcIiBuYW1lPVwiYXR0YWNobWVudFwiPjwvbmF0dXJhbC1pY29uPlxuICAgICAgICB7eyBmaWxlUHJldmlldyB8IHVwcGVyY2FzZSB9fVxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cImFjdGlvbi1vdmVybGF5XCI+XG4gICAgICAgIDxuYXR1cmFsLWljb24gKm5nSWY9XCJhY3Rpb24gPT09ICd1cGxvYWQnXCIgW3NpemVdPVwiaGVpZ2h0ICogMC42NlwiIG5hbWU9XCJjbG91ZF91cGxvYWRcIj48L25hdHVyYWwtaWNvbj5cbiAgICAgICAgPG5hdHVyYWwtaWNvbiAqbmdJZj1cImFjdGlvbiA9PT0gJ2Rvd25sb2FkJ1wiIFtzaXplXT1cImhlaWdodCAqIDAuNjZcIiBuYW1lPVwiZ2V0X2FwcFwiPjwvbmF0dXJhbC1pY29uPlxuICAgICAgICB7eyBhY3Rpb24gfCBjYXBpdGFsaXplIH19XG4gICAgPC9kaXY+XG48L2E+XG4iXX0=
|
|
151
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uYXR1cmFsL3NyYy9saWIvbW9kdWxlcy9maWxlL2NvbXBvbmVudC9maWxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9tb2R1bGVzL2ZpbGUvY29tcG9uZW50L2ZpbGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFDVCxZQUFZLEVBQ1osV0FBVyxFQUNYLE1BQU0sRUFDTixLQUFLLEVBR0wsTUFBTSxHQUVULE1BQU0sZUFBZSxDQUFDO0FBR3ZCLE9BQU8sRUFBYSxFQUFFLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUVsRCxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0saUJBQWlCLENBQUM7Ozs7Ozs7Ozs7QUFJekMsV0FBVztBQU1YLE1BQU0sT0FBTyxhQUFhO0lBZ0R0QixZQUNxQixrQkFBc0MsRUFDdEMsWUFBaUMsRUFDakMsU0FBdUIsRUFDTCxRQUFrQjtRQUhwQyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBQ3RDLGlCQUFZLEdBQVosWUFBWSxDQUFxQjtRQUNqQyxjQUFTLEdBQVQsU0FBUyxDQUFjO1FBQ0wsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQW5EVCxXQUFNLEdBQUcsR0FBRyxDQUFDO1FBRTdDLFdBQU0sR0FBaUMsSUFBSSxDQUFDO1FBRTVDLG1CQUFjLEdBQUcsU0FBUyxDQUFDO1FBRTNDOzs7OztXQUtHO1FBQ2EsV0FBTSxHQUFHLHlGQUF5RixDQUFDO1FBa0JuRyxVQUFLLEdBQXFCLElBQUksQ0FBQztRQUUvQzs7O1dBR0c7UUFDYSxhQUFRLEdBQXVDLElBQUksQ0FBQztRQUVwRTs7O1dBR0c7UUFDdUIsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBYSxDQUFDO1FBRS9ELGlCQUFZLEdBQXFCLElBQUksQ0FBQztRQUN0QyxnQkFBVyxHQUFrQixJQUFJLENBQUM7SUFPdEMsQ0FBQztJQUVHLFFBQVE7UUFDWCxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVNLFdBQVcsQ0FBQyxPQUFzQjtRQUNyQyxJQUFJLE9BQU8sQ0FBQyxLQUFLLElBQUksT0FBTyxDQUFDLEtBQUssQ0FBQyxhQUFhLEtBQUssT0FBTyxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUU7WUFDN0UsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQ3RCO0lBQ0wsQ0FBQztJQUVNLE1BQU0sQ0FBQyxJQUFVO1FBQ3BCLElBQUksQ0FBQyxLQUFLLEdBQUcsRUFBQyxJQUFJLEVBQUUsSUFBSSxFQUFDLENBQUM7UUFDMUIsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBRW5CLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNmLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUN0QztRQUVELE1BQU0sVUFBVSxHQUNaLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQSxZQUFZLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUUzRyxVQUFVLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQzFCLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDO1lBQ3BCLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtnQkFDZixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDdEM7WUFFRCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdEMsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU0sZUFBZTtRQUNsQixJQUFJLElBQUksQ0FBQyxNQUFNLEtBQUssVUFBVSxFQUFFO1lBQzVCLE9BQU8sSUFBSSxDQUFDO1NBQ2Y7UUFFRCxPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFTyxXQUFXO1FBQ2YsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUM7UUFDekIsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7UUFDeEIsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDYixPQUFPO1NBQ1Y7UUFFRCxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDMUMsb0NBQW9DO1lBQ3BDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUU7Z0JBQy9DLE1BQU0sT0FBTyxHQUFHLFdBQVcsR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxJQUFJLEdBQUcsVUFBVSxHQUFHLE1BQU0sR0FBRyxHQUFHLENBQUM7Z0JBQ2pGLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyx3QkFBd0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUN6RSxDQUFDLENBQUMsQ0FBQztTQUNOO2FBQU0sSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRTtZQUN4QixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDekQ7YUFBTSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxLQUFLLE9BQU8sSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsRUFBRTtZQUMzRCxnRUFBZ0U7WUFDaEUsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUM7WUFDekMsSUFBSSxDQUFDLE1BQU0sRUFBRTtnQkFDVCxNQUFNLElBQUksS0FBSyxDQUFDLDREQUE0RCxDQUFDLENBQUM7YUFDakY7WUFFRCxNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDO1lBQzVCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFFcEQsaUVBQWlFO1lBQ2pFLE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxRQUFRLEdBQUcsSUFBSSxHQUFHLEdBQUcsQ0FBQyxRQUFRLEdBQUcsYUFBYSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxHQUFHLE1BQU0sQ0FBQztZQUMxRixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsd0JBQXdCLENBQUMsTUFBTSxHQUFHLEtBQUssR0FBRyxHQUFHLENBQUMsQ0FBQztTQUNyRjthQUFNLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsb0JBQW9CLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLElBQUksRUFBRSxDQUFDLEVBQUU7WUFDakcsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDcEQ7YUFBTSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFO1lBQ3ZCLGVBQWU7WUFDZixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsd0JBQXdCLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQyxDQUFDO1NBQzlGO0lBQ0wsQ0FBQztJQUVPLFNBQVMsQ0FBQyxJQUFpQjtRQUMvQixJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ1AsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDakI7UUFFRCxNQUFNLE9BQU8sR0FBRyxJQUFJLE9BQU8sRUFBVSxDQUFDO1FBRXRDLE1BQU0sTUFBTSxHQUFHLElBQUksVUFBVSxFQUFFLENBQUM7UUFDaEMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQU8sRUFBRSxFQUFFO1lBQ3hDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztZQUNyQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDdkIsQ0FBQyxDQUFDLENBQUM7UUFDSCxNQUFNLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFaEMsT0FBTyxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDbEMsQ0FBQzs7MEdBakpRLGFBQWEsbUhBb0RWLFFBQVE7OEZBcERYLGFBQWEsOFVDekIxQiw2OUJBMEJBOzJGRERhLGFBQWE7a0JBTHpCLFNBQVM7K0JBQ0ksY0FBYzt3SkF3RHlCLFFBQVE7MEJBQXBELE1BQU07MkJBQUMsUUFBUTs0Q0FuRDRCLE1BQU07c0JBQXJELFdBQVc7dUJBQUMsaUJBQWlCOztzQkFBRyxLQUFLO2dCQUV0QixNQUFNO3NCQUFyQixLQUFLO2dCQUVVLGNBQWM7c0JBQTdCLEtBQUs7Z0JBUVUsTUFBTTtzQkFBckIsS0FBSztnQkFnQlUsUUFBUTtzQkFBdkIsS0FBSztnQkFFVSxLQUFLO3NCQUFwQixLQUFLO2dCQU1VLFFBQVE7c0JBQXZCLEtBQUs7Z0JBTW9CLFdBQVc7c0JBQXBDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE9uQ2hhbmdlcyxcbiAgICBPbkluaXQsXG4gICAgT3V0cHV0LFxuICAgIFNpbXBsZUNoYW5nZXMsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBYnN0cmFjdENvbnRyb2x9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7RG9tU2FuaXRpemVyLCBTYWZlU3R5bGV9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHtPYnNlcnZhYmxlLCBvZiwgU3ViamVjdCwgdGFwfSBmcm9tICdyeGpzJztcbmltcG9ydCB7TmF0dXJhbEZpbGVTZXJ2aWNlfSBmcm9tICcuLi9maWxlLnNlcnZpY2UnO1xuaW1wb3J0IHtET0NVTUVOVH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7RmlsZU1vZGVsfSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQge05hdHVyYWxBbGVydFNlcnZpY2V9IGZyb20gJy4uLy4uL2FsZXJ0L2FsZXJ0LnNlcnZpY2UnO1xuXG4vLyBAZHluYW1pY1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduYXR1cmFsLWZpbGUnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9maWxlLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9maWxlLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEZpbGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gICAgQEhvc3RCaW5kaW5nKCdzdHlsZS5oZWlnaHQucHgnKSBASW5wdXQoKSBwdWJsaWMgaGVpZ2h0ID0gMjUwO1xuXG4gICAgQElucHV0KCkgcHVibGljIGFjdGlvbjogJ3VwbG9hZCcgfCAnZG93bmxvYWQnIHwgbnVsbCA9IG51bGw7XG5cbiAgICBASW5wdXQoKSBwdWJsaWMgYmFja2dyb3VuZFNpemUgPSAnY29udGFpbic7XG5cbiAgICAvKipcbiAgICAgKiBDb21tYS1zZXBhcmF0ZWQgbGlzdCBvZiB1bmlxdWUgZmlsZSB0eXBlIHNwZWNpZmllcnMuIExpa2UgdGhlIG5hdGl2ZSBlbGVtZW50XG4gICAgICogaXQgY2FuIGJlIGEgbWl4IG9mIG1pbWUtdHlwZSBhbmQgZmlsZSBleHRlbnNpb25zLlxuICAgICAqXG4gICAgICogU2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0hUTUwvRWxlbWVudC9pbnB1dC9maWxlI2FjY2VwdFxuICAgICAqL1xuICAgIEBJbnB1dCgpIHB1YmxpYyBhY2NlcHQgPSAnaW1hZ2UvYm1wLGltYWdlL2dpZixpbWFnZS9qcGVnLGltYWdlL3BqcGVnLGltYWdlL3BuZyxpbWFnZS9zdmcreG1sLGltYWdlL3N2ZyxpbWFnZS93ZWJwJztcblxuICAgIC8qKlxuICAgICAqIElmIGdpdmVuIGl0IHdpbGwgYmUgY2FsbGVkIHdoZW4gYSBuZXcgZmlsZSBpcyBzZWxlY3RlZC4gVGhlIGNhbGxiYWNrIHNob3VsZCB0eXBpY2FsbHkgdXBsb2FkIHRoZSBmaWxlXG4gICAgICogdG8gdGhlIHNlcnZlciBhbmQgbGluayB0aGUgbmV3bHkgdXBsb2FkZWQgZmlsZSB0byB0aGUgZXhpc3RpbmcgcmVsYXRlZCBvYmplY3QuXG4gICAgICpcbiAgICAgKiBUaGUgY2FsbGJhY2sgKiptdXN0KiogYmUgYWJsZSB0byBydW4gZXZlbiBpZiB0aGUgY2FsbGluZyBjb21wb25lbnQgaGFzIGJlZW4gZGVzdHJveWVkLiBUaGF0IG1lYW5zIGluIG1vc3RcbiAgICAgKiBjYXNlcyB5b3UgKiptdXN0KiogYGJpbmQoKWAgdGhlIGNhbGxiYWNrIGV4cGxpY2l0bHksIGxpa2Ugc286XG4gICAgICpcbiAgICAgKiBgYGBodG1sXG4gICAgICogPG5hdHVyYWwtZmlsZSBbdXBsb2FkZXJdPVwibXlDYWxsYmFjay5iaW5kKHRoaXMpXCI+PC9uYXR1cmFsLWZpbGU+XG4gICAgICogYGBgXG4gICAgICpcbiAgICAgKiBBbHNvLCB5b3UgcHJvYmFibHkgKipzaG91bGQqKiBzZXQgYSBgW2Zvcm1DdHJsXWAgc28gdGhhdCB0aGUgZm9ybSBpcyB1cGRhdGVkIGF1dG9tYXRpY2FsbHksIGluc3RlYWQgb2YgZG9pbmdcbiAgICAgKiBpdCBtYW51YWxseSB3aXRoaW4gdGhlIGNhbGxiYWNrLlxuICAgICAqL1xuICAgIEBJbnB1dCgpIHB1YmxpYyB1cGxvYWRlcj86IChmaWxlOiBGaWxlKSA9PiBPYnNlcnZhYmxlPEZpbGVNb2RlbD47XG5cbiAgICBASW5wdXQoKSBwdWJsaWMgbW9kZWw6IEZpbGVNb2RlbCB8IG51bGwgPSBudWxsO1xuXG4gICAgLyoqXG4gICAgICogSWYgcHJvdmlkZWQsIGl0cyB2YWx1ZSB3aWxsIGdldCB1cGRhdGVkIHdoZW4gdGhlIG1vZGVsIGNoYW5nZXMuXG4gICAgICogQnV0IGl0cyB2YWx1ZSBpcyBuZXZlciByZWFkLCBzbyBpZiB5b3Ugd2FudCB0byBzZXQgYSB2YWx1ZSB1c2UgYFttb2RlbF1gIGluc3RlYWQuXG4gICAgICovXG4gICAgQElucHV0KCkgcHVibGljIGZvcm1DdHJsOiBBYnN0cmFjdENvbnRyb2wgfCBudWxsIHwgdW5kZWZpbmVkID0gbnVsbDtcblxuICAgIC8qKlxuICAgICAqIFRoaXMgKiptdXN0IG5vdCoqIGJlIHVzZWQgdG8gbXV0YXRlIHRoZSBzZXJ2ZXIsIGJlY2F1c2UgaXQgaXMgdmVyeSBsaWtlbHkgaXQgd2lsbCBuZXZlciBiZSBjYWxsZWQgaWYgdGhlXG4gICAgICogaHVtYW4gbmF2aWdhdGVzIGF3YXkgZnJvbSB0aGUgcGFnZSBiZWZvcmUgdGhlIHVwbG9hZCBpcyBmaW5pc2hlZC4gSW5zdGVhZCwgeW91IHNob3VsZCB1c2UgYFt1cGxvYWRlcl1gLlxuICAgICAqL1xuICAgIEBPdXRwdXQoKSBwdWJsaWMgcmVhZG9ubHkgbW9kZWxDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPEZpbGVNb2RlbD4oKTtcblxuICAgIHB1YmxpYyBpbWFnZVByZXZpZXc6IFNhZmVTdHlsZSB8IG51bGwgPSBudWxsO1xuICAgIHB1YmxpYyBmaWxlUHJldmlldzogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgbmF0dXJhbEZpbGVTZXJ2aWNlOiBOYXR1cmFsRmlsZVNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgYWxlcnRTZXJ2aWNlOiBOYXR1cmFsQWxlcnRTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IHNhbml0aXplcjogRG9tU2FuaXRpemVyLFxuICAgICAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIHJlYWRvbmx5IGRvY3VtZW50OiBEb2N1bWVudCxcbiAgICApIHt9XG5cbiAgICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMudXBkYXRlSW1hZ2UoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgICAgICBpZiAoY2hhbmdlcy5tb2RlbCAmJiBjaGFuZ2VzLm1vZGVsLnByZXZpb3VzVmFsdWUgIT09IGNoYW5nZXMubW9kZWwuY3VycmVudFZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZUltYWdlKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgdXBsb2FkKGZpbGU6IEZpbGUpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5tb2RlbCA9IHtmaWxlOiBmaWxlfTtcbiAgICAgICAgdGhpcy51cGRhdGVJbWFnZSgpO1xuXG4gICAgICAgIGlmICh0aGlzLmZvcm1DdHJsKSB7XG4gICAgICAgICAgICB0aGlzLmZvcm1DdHJsLnNldFZhbHVlKHRoaXMubW9kZWwpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qgb2JzZXJ2YWJsZSA9XG4gICAgICAgICAgICB0aGlzLnVwbG9hZGVyPy4oZmlsZSkucGlwZSh0YXAoKCkgPT4gdGhpcy5hbGVydFNlcnZpY2UuaW5mbygkbG9jYWxpemVgTWlzIMOgIGpvdXJgKSkpID8/IG9mKHRoaXMubW9kZWwpO1xuXG4gICAgICAgIG9ic2VydmFibGUuc3Vic2NyaWJlKHJlc3VsdCA9PiB7XG4gICAgICAgICAgICB0aGlzLm1vZGVsID0gcmVzdWx0O1xuICAgICAgICAgICAgaWYgKHRoaXMuZm9ybUN0cmwpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmZvcm1DdHJsLnNldFZhbHVlKHRoaXMubW9kZWwpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGlzLm1vZGVsQ2hhbmdlLmVtaXQodGhpcy5tb2RlbCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXREb3dubG9hZExpbmsoKTogbnVsbCB8IHN0cmluZyB7XG4gICAgICAgIGlmICh0aGlzLmFjdGlvbiAhPT0gJ2Rvd25sb2FkJykge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5uYXR1cmFsRmlsZVNlcnZpY2UuZ2V0RG93bmxvYWRMaW5rKHRoaXMubW9kZWwpO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlSW1hZ2UoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaW1hZ2VQcmV2aWV3ID0gbnVsbDtcbiAgICAgICAgdGhpcy5maWxlUHJldmlldyA9IG51bGw7XG4gICAgICAgIGlmICghdGhpcy5tb2RlbCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMubW9kZWwuZmlsZT8udHlwZS5pbmNsdWRlcygnaW1hZ2UvJykpIHtcbiAgICAgICAgICAgIC8vIE1vZGVsIGZyb20gdXBsb2FkIChiZWZvcmUgc2F2aW5nKVxuICAgICAgICAgICAgdGhpcy5nZXRCYXNlNjQodGhpcy5tb2RlbC5maWxlKS5zdWJzY3JpYmUocmVzdWx0ID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBjb250ZW50ID0gJ3VybChkYXRhOicgKyB0aGlzLm1vZGVsPy5maWxlPy50eXBlICsgJztiYXNlNjQsJyArIHJlc3VsdCArICcpJztcbiAgICAgICAgICAgICAgICB0aGlzLmltYWdlUHJldmlldyA9IHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RTdHlsZShjb250ZW50KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2UgaWYgKHRoaXMubW9kZWwuZmlsZSkge1xuICAgICAgICAgICAgdGhpcy5maWxlUHJldmlldyA9IHRoaXMubW9kZWwuZmlsZS50eXBlLnNwbGl0KCcvJylbMV07XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5tb2RlbC5fX3R5cGVuYW1lID09PSAnSW1hZ2UnICYmIHRoaXMubW9kZWwuaWQpIHtcbiAgICAgICAgICAgIC8vIE1vZGVsIGltYWdlIHdpdGggaWQsIHVzZSBzcGVjaWZpYyBBUEkgdG8gcmVuZGVyIGltYWdlIGJ5IHNpemVcbiAgICAgICAgICAgIGNvbnN0IHdpbmRvdyA9IHRoaXMuZG9jdW1lbnQuZGVmYXVsdFZpZXc7XG4gICAgICAgICAgICBpZiAoIXdpbmRvdykge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignQ291bGQgbm90IHNob3cgaW1hZ2UgcHJldmlldyBiZWNhdXNlIGB3aW5kb3dgIGlzIHVuZGVmaW5lZCcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb25zdCBsb2MgPSB3aW5kb3cubG9jYXRpb247XG4gICAgICAgICAgICBjb25zdCBoZWlnaHQgPSB0aGlzLmhlaWdodCA/ICcvJyArIHRoaXMuaGVpZ2h0IDogJyc7XG5cbiAgICAgICAgICAgIC8vIGNyZWF0ZSBpbWFnZSB1cmwgd2l0aG91dCBwb3J0IHRvIHN0YXkgY29tcGF0aWJsZSB3aXRoIGRldiBtb2RlXG4gICAgICAgICAgICBjb25zdCBpbWFnZSA9IGxvYy5wcm90b2NvbCArICcvLycgKyBsb2MuaG9zdG5hbWUgKyAnL2FwaS9pbWFnZS8nICsgdGhpcy5tb2RlbC5pZCArIGhlaWdodDtcbiAgICAgICAgICAgIHRoaXMuaW1hZ2VQcmV2aWV3ID0gdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFN0eWxlKCd1cmwoJyArIGltYWdlICsgJyknKTtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLm1vZGVsPy5taW1lICYmIFsnRmlsZScsICdBY2NvdW50aW5nRG9jdW1lbnQnXS5pbmNsdWRlcyh0aGlzLm1vZGVsLl9fdHlwZW5hbWUgfHwgJycpKSB7XG4gICAgICAgICAgICB0aGlzLmZpbGVQcmV2aWV3ID0gdGhpcy5tb2RlbC5taW1lLnNwbGl0KCcvJylbMV07XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5tb2RlbC5zcmMpIHtcbiAgICAgICAgICAgIC8vIGV4dGVybmFsIHVybFxuICAgICAgICAgICAgdGhpcy5pbWFnZVByZXZpZXcgPSB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0U3R5bGUoJ3VybCgnICsgdGhpcy5tb2RlbC5zcmMgKyAnKScpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRCYXNlNjQoZmlsZTogRmlsZSB8IG51bGwpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgICAgICBpZiAoIWZpbGUpIHtcbiAgICAgICAgICAgIHJldHVybiBvZignJyk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBzdWJqZWN0ID0gbmV3IFN1YmplY3Q8c3RyaW5nPigpO1xuXG4gICAgICAgIGNvbnN0IHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7XG4gICAgICAgIHJlYWRlci5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgKGV2OiBhbnkpID0+IHtcbiAgICAgICAgICAgIHN1YmplY3QubmV4dChidG9hKGV2LnRhcmdldC5yZXN1bHQpKTtcbiAgICAgICAgICAgIHN1YmplY3QuY29tcGxldGUoKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHJlYWRlci5yZWFkQXNCaW5hcnlTdHJpbmcoZmlsZSk7XG5cbiAgICAgICAgcmV0dXJuIHN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XG4gICAgfVxufVxuIiwiPGFcbiAgICAoZmlsZUNoYW5nZSk9XCJ1cGxvYWQoJGV2ZW50KVwiXG4gICAgbmF0dXJhbEZpbGVEcm9wXG4gICAgW3NlbGVjdGFibGVdPVwidHJ1ZVwiXG4gICAgW2FjY2VwdF09XCJhY2NlcHRcIlxuICAgIFthdHRyLmhyZWZdPVwiZ2V0RG93bmxvYWRMaW5rKClcIlxuICAgIFtjbGFzcy5oYXMtYWN0aW9uXT1cIiEhYWN0aW9uXCJcbiAgICBbY2xhc3Muc3VnZ2VzdC11cGxvYWRdPVwiIW1vZGVsICYmIGFjdGlvbiA9PT0gJ3VwbG9hZCdcIlxuICAgIFtmaWxlU2VsZWN0aW9uRGlzYWJsZWRdPVwiYWN0aW9uICE9PSAndXBsb2FkJ1wiXG4gICAgW21hdFJpcHBsZURpc2FibGVkXT1cIiFhY3Rpb25cIlxuICAgIFtzdHlsZS5iYWNrZ3JvdW5kSW1hZ2VdPVwiaW1hZ2VQcmV2aWV3XCJcbiAgICBbc3R5bGUuYmFja2dyb3VuZFNpemVdPVwiYmFja2dyb3VuZFNpemVcIlxuICAgIG1hdFJpcHBsZVxuICAgIHRhcmdldD1cIl9ibGFua1wiXG4+XG4gICAgPGRpdiAqbmdJZj1cImZpbGVQcmV2aWV3XCIgY2xhc3M9XCJmaWxlLXByZXZpZXdcIj5cbiAgICAgICAgPG5hdHVyYWwtaWNvbiBbc2l6ZV09XCJoZWlnaHQgKiAwLjMzXCIgbmFtZT1cImF0dGFjaG1lbnRcIj48L25hdHVyYWwtaWNvbj5cbiAgICAgICAge3sgZmlsZVByZXZpZXcgfCB1cHBlcmNhc2UgfX1cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24tb3ZlcmxheVwiPlxuICAgICAgICA8bmF0dXJhbC1pY29uICpuZ0lmPVwiYWN0aW9uID09PSAndXBsb2FkJ1wiIFtzaXplXT1cImhlaWdodCAqIDAuNjZcIiBuYW1lPVwiY2xvdWRfdXBsb2FkXCI+PC9uYXR1cmFsLWljb24+XG4gICAgICAgIDxuYXR1cmFsLWljb24gKm5nSWY9XCJhY3Rpb24gPT09ICdkb3dubG9hZCdcIiBbc2l6ZV09XCJoZWlnaHQgKiAwLjY2XCIgbmFtZT1cImdldF9hcHBcIj48L25hdHVyYWwtaWNvbj5cbiAgICAgICAge3sgYWN0aW9uIHwgY2FwaXRhbGl6ZSB9fVxuICAgIDwvZGl2PlxuPC9hPlxuIl19
|
|
@@ -107,4 +107,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.1", ngImpor
|
|
|
107
107
|
type: HostListener,
|
|
108
108
|
args: ['dragleave', ['$event']]
|
|
109
109
|
}] } });
|
|
110
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
110
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1kcm9wLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9tb2R1bGVzL2ZpbGUvZmlsZS1kcm9wLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFVLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNqRyxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQUMsWUFBWSxFQUFFLFNBQVMsRUFBQyxNQUFNLFNBQVMsQ0FBQztBQUNoRCxPQUFPLEVBQUMsY0FBYyxFQUFFLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUM3QyxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBQyxNQUFNLGdCQUFnQixDQUFDOztBQUV2RDs7Ozs7Ozs7Ozs7R0FXRztBQUlILE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxtQkFBbUI7SUFIakU7O1FBSW1ELGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBRXJFOztXQUVHO1FBQ3VCLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRWhELGdCQUFXLEdBQUcsSUFBSSxPQUFPLEVBQVcsQ0FBQztLQWtGekQ7SUFoRm1CLFFBQVE7UUFDcEIsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBRWpCLG9FQUFvRTtRQUNwRSw0RUFBNEU7UUFDNUUsMEVBQTBFO1FBQzFFLHFFQUFxRTtRQUNyRSxJQUFJLENBQUMsV0FBVzthQUNYLElBQUksQ0FDRCxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxFQUM3QixZQUFZLENBQUMsR0FBRyxFQUFFLGNBQWMsRUFBRTtZQUM5QixPQUFPLEVBQUUsSUFBSTtZQUNiLFFBQVEsRUFBRSxJQUFJO1NBQ2pCLENBQUMsQ0FDTDthQUNBLFNBQVMsQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUNsQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUM3QixJQUFJLENBQUMsYUFBYSxHQUFHLFFBQVEsQ0FBQztRQUNsQyxDQUFDLENBQUMsQ0FBQztJQUNYLENBQUM7SUFHTSxNQUFNLENBQUMsS0FBZ0I7UUFDMUIsSUFBSSxJQUFJLENBQUMscUJBQXFCLEVBQUU7WUFDNUIsT0FBTztTQUNWO1FBRUQsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBRWxCLE1BQU0sS0FBSyxHQUFHLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRTtZQUNmLE9BQU87U0FDVjtRQUVELFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNqQixJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFHTSxVQUFVLENBQUMsS0FBZ0I7UUFDOUIsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsRUFBRTtZQUN0QixPQUFPO1NBQ1Y7UUFFRCxJQUFJLElBQUksQ0FBQyxxQkFBcUIsRUFBRTtZQUM1QixPQUFPO1NBQ1Y7UUFFRCxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFakIsZ0JBQWdCO1FBQ2hCLE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxZQUFZLENBQUM7UUFDcEMsSUFBSSxRQUFRLEVBQUU7WUFDVixRQUFRLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQztTQUNoQztRQUVELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFTyxVQUFVO1FBQ2QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUdNLFdBQVcsQ0FBQyxLQUFnQjtRQUMvQixJQUFJLElBQUksQ0FBQyxxQkFBcUIsRUFBRTtZQUM1QixPQUFPO1NBQ1Y7UUFFRCxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDakIsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFTyxZQUFZO1FBQ2hCLE9BQU8sQ0FDSCxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVE7WUFDeEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRO1lBQ3pCLENBQUMsSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsa0JBQWtCLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxDQUNwRSxDQUFDO0lBQ04sQ0FBQzs7cUhBekZRLHdCQUF3Qjt5R0FBeEIsd0JBQXdCOzJGQUF4Qix3QkFBd0I7a0JBSHBDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLDRDQUE0QztpQkFDekQ7OEJBRWtELGFBQWE7c0JBQTNELFdBQVc7dUJBQUMseUJBQXlCO2dCQUtaLFFBQVE7c0JBQWpDLE1BQU07Z0JBMEJBLE1BQU07c0JBRFosWUFBWTt1QkFBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBa0J6QixVQUFVO3NCQURoQixZQUFZO3VCQUFDLFVBQVUsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkEwQjdCLFdBQVc7c0JBRGpCLFlBQVk7dUJBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIEhvc3RMaXN0ZW5lciwgT25Jbml0LCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtOYXR1cmFsQWJzdHJhY3RGaWxlfSBmcm9tICcuL2Fic3RyYWN0LWZpbGUnO1xuaW1wb3J0IHtldmVudFRvRmlsZXMsIHN0b3BFdmVudH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQge2FzeW5jU2NoZWR1bGVyLCBTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7dGFrZVVudGlsLCB0aHJvdHRsZVRpbWV9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuLyoqXG4gKiBUaGlzIGRpcmVjdGl2ZSBoYXMgYWxsIG9wdGlvbnMgdG8gc2VsZWN0IGZpbGVzLCBhbmQgYWRkcyBzdXBwb3J0IGZvciBkcmFnJ24nZHJvcC5cbiAqXG4gKiBJdCB3aWxsIGFkZCB0aGUgQ1NTIGNsYXNzIGBuYXR1cmFsLWZpbGUtb3ZlcmAgb24gdGhlIGNvbXBvbmVudCB3aGVuIGEgZmlsZSBpc1xuICogZHJhZ2dlZCBvdmVyLiBJdCBpcyB1cCB0byB0aGUgY29tcG9uZW50IHRvIGhhdmUgc29tZSBzcGVjaWZpYyBzdHlsaW5nIGJ5IHVzaW5nXG4gKiB0aGlzIGNsYXNzLlxuICpcbiAqIEluIG1vc3QgY2FzZXMgeW91IHByb2JhYmx5IGFsc28gd2FudCBjbGljay10by1zZWxlY3QsIHNvIHlvdSBzaG91bGQgdXNlOlxuICpcbiAqICAgICA8ZGl2IG5hdHVyYWxGaWxlRHJvcCBbc2VsZWN0YWJsZV09XCJ0cnVlXCI+PC9kaXY+XG4gKlxuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJzpub3QoW25hdHVyYWxGaWxlU2VsZWN0XSlbbmF0dXJhbEZpbGVEcm9wXScsXG59KVxuZXhwb3J0IGNsYXNzIE5hdHVyYWxGaWxlRHJvcERpcmVjdGl2ZSBleHRlbmRzIE5hdHVyYWxBYnN0cmFjdEZpbGUgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MubmF0dXJhbC1maWxlLW92ZXInKSBwdWJsaWMgZmlsZU92ZXJDbGFzcyA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogRW1pdHMgd2hlbmV2ZXIgZmlsZXMgYXJlIGJlaW5nIGRyYWdnZWQgb3ZlclxuICAgICAqL1xuICAgIEBPdXRwdXQoKSBwdWJsaWMgcmVhZG9ubHkgZmlsZU92ZXIgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IHJhd0ZpbGVPdmVyID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcblxuICAgIHB1YmxpYyBvdmVycmlkZSBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcblxuICAgICAgICAvLyBBdXRvbWF0aWNhbGx5IGNoYW5nZSB0aGUgY2xhc3MsIGJ1dCBub3QgdG9vIG9mdGVuIHRvIGF2b2lkIHZpc3VhbFxuICAgICAgICAvLyBmbGlja2VyaW5nIGluIENocm9tZSB3aGVuIGhvdmVyaW5nIGFjcm9zcyBjaGlsZCBIVE1MIGVsZW1lbnQgb2Ygb3VyIGhvc3QuXG4gICAgICAgIC8vIEl0J3Mgbm90IGFic29sdXRlbHkgcGVyZmVjdCBhbmQgaWYgZHJhZ2dpbmcgc2xvd2x5IGFuZCBwcmVjaXNlbHkgd2UgY2FuXG4gICAgICAgIC8vIHN0aWxsIHNlZSBmbGlja2VyLCBidXQgaXQgc2hvdWxkIGJlIGJldHRlciBmb3IgbW9zdCBub3JtYWwgdXNhZ2VzLlxuICAgICAgICB0aGlzLnJhd0ZpbGVPdmVyXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSxcbiAgICAgICAgICAgICAgICB0aHJvdHRsZVRpbWUoMjAwLCBhc3luY1NjaGVkdWxlciwge1xuICAgICAgICAgICAgICAgICAgICBsZWFkaW5nOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICB0cmFpbGluZzogdHJ1ZSxcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoZmlsZU92ZXIgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuZmlsZU92ZXIuZW1pdChmaWxlT3Zlcik7XG4gICAgICAgICAgICAgICAgdGhpcy5maWxlT3ZlckNsYXNzID0gZmlsZU92ZXI7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdkcm9wJywgWyckZXZlbnQnXSlcbiAgICBwdWJsaWMgb25Ecm9wKGV2ZW50OiBEcmFnRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZmlsZVNlbGVjdGlvbkRpc2FibGVkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmNsb3NlRHJhZ3MoKTtcblxuICAgICAgICBjb25zdCBmaWxlcyA9IGV2ZW50VG9GaWxlcyhldmVudCk7XG4gICAgICAgIGlmICghZmlsZXMubGVuZ3RoKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBzdG9wRXZlbnQoZXZlbnQpO1xuICAgICAgICB0aGlzLmhhbmRsZUZpbGVzKGZpbGVzKTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdkcmFnb3ZlcicsIFsnJGV2ZW50J10pXG4gICAgcHVibGljIG9uRHJhZ092ZXIoZXZlbnQ6IERyYWdFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuaGFzT2JzZXJ2ZXJzKCkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmZpbGVTZWxlY3Rpb25EaXNhYmxlZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgc3RvcEV2ZW50KGV2ZW50KTtcblxuICAgICAgICAvLyBDaGFuZ2UgY3Vyc29yXG4gICAgICAgIGNvbnN0IHRyYW5zZmVyID0gZXZlbnQuZGF0YVRyYW5zZmVyO1xuICAgICAgICBpZiAodHJhbnNmZXIpIHtcbiAgICAgICAgICAgIHRyYW5zZmVyLmRyb3BFZmZlY3QgPSAnY29weSc7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnJhd0ZpbGVPdmVyLm5leHQodHJ1ZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjbG9zZURyYWdzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJhd0ZpbGVPdmVyLm5leHQoZmFsc2UpO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2RyYWdsZWF2ZScsIFsnJGV2ZW50J10pXG4gICAgcHVibGljIG9uRHJhZ0xlYXZlKGV2ZW50OiBEcmFnRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZmlsZVNlbGVjdGlvbkRpc2FibGVkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBzdG9wRXZlbnQoZXZlbnQpO1xuICAgICAgICB0aGlzLmNsb3NlRHJhZ3MoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGhhc09ic2VydmVycygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIHRoaXMuZmlsZUNoYW5nZS5vYnNlcnZlZCB8fFxuICAgICAgICAgICAgdGhpcy5maWxlc0NoYW5nZS5vYnNlcnZlZCB8fFxuICAgICAgICAgICAgKHRoaXMuYnJvYWRjYXN0ICYmIHRoaXMubmF0dXJhbEZpbGVTZXJ2aWNlLmZpbGVzQ2hhbmdlZC5vYnNlcnZlZClcbiAgICAgICAgKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -25,4 +25,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.1", ngImpor
|
|
|
25
25
|
}], propDecorators: { selectable: [{
|
|
26
26
|
type: Input
|
|
27
27
|
}] } });
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1zZWxlY3QuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC9zcmMvbGliL21vZHVsZXMvZmlsZS9maWxlLXNlbGVjdC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDL0MsT0FBTyxFQUFDLG1CQUFtQixFQUFDLE1BQU0saUJBQWlCLENBQUM7O0FBRXBEOztHQUVHO0FBSUgsTUFBTSxPQUFPLDBCQUEyQixTQUFRLG1CQUFtQjtJQUhuRTs7UUFJSTs7OztXQUlHO1FBQ3NCLGVBQVUsR0FBRyxJQUFJLENBQUM7S0FDOUM7O3VIQVBZLDBCQUEwQjsyR0FBMUIsMEJBQTBCOzJGQUExQiwwQkFBMEI7a0JBSHRDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLDRDQUE0QztpQkFDekQ7OEJBTzRCLFVBQVU7c0JBQWxDLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RpcmVjdGl2ZSwgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtOYXR1cmFsQWJzdHJhY3RGaWxlfSBmcm9tICcuL2Fic3RyYWN0LWZpbGUnO1xuXG4vKipcbiAqIFRoaXMgZGlyZWN0aXZlIGhhcyBhbGwgb3B0aW9ucyB0byBzZWxlY3QgZmlsZXMsIGV4Y2VwdCBkcmFnJ24nZHJvcC5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICc6bm90KFtuYXR1cmFsRmlsZURyb3BdKVtuYXR1cmFsRmlsZVNlbGVjdF0nLFxufSlcbmV4cG9ydCBjbGFzcyBOYXR1cmFsRmlsZVNlbGVjdERpcmVjdGl2ZSBleHRlbmRzIE5hdHVyYWxBYnN0cmFjdEZpbGUge1xuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdGhlIHVzZXIgY2FuIGNsaWNrIG9uIHRoZSBlbGVtZW50IHRvIHNlbGVjdCBzb21ldGhpbmdcbiAgICAgKlxuICAgICAqIE92ZXJyaWRlIHBhcmVudCB0byBlbmFibGUgaXQgYnkgZGVmYXVsdFxuICAgICAqL1xuICAgIEBJbnB1dCgpIHB1YmxpYyBvdmVycmlkZSBzZWxlY3RhYmxlID0gdHJ1ZTtcbn1cbiJdfQ==
|
|
@@ -15,7 +15,7 @@ NaturalFixedButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.
|
|
|
15
15
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: NaturalFixedButtonComponent, decorators: [{
|
|
16
16
|
type: Component,
|
|
17
17
|
args: [{ selector: 'natural-fixed-button', template: "<button\n [color]=\"color\"\n [disabled]=\"disabled\"\n [routerLink]=\"link\"\n class=\"floating-button bottom-right\"\n mat-fab\n mat-raised-button\n>\n <natural-icon [name]=\"icon\"></natural-icon>\n</button>\n", styles: [":host{position:fixed!important;z-index:999;bottom:32px;right:32px}\n"] }]
|
|
18
|
-
}],
|
|
18
|
+
}], propDecorators: { icon: [{
|
|
19
19
|
type: Input
|
|
20
20
|
}], link: [{
|
|
21
21
|
type: Input
|
|
@@ -24,4 +24,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.1", ngImpor
|
|
|
24
24
|
}], disabled: [{
|
|
25
25
|
type: Input
|
|
26
26
|
}] } });
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZml4ZWQtYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9tb2R1bGVzL2ZpeGVkLWJ1dHRvbi9maXhlZC1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC9zcmMvbGliL21vZHVsZXMvZml4ZWQtYnV0dG9uL2ZpeGVkLWJ1dHRvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBQyxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFTL0MsTUFBTSxPQUFPLDJCQUEyQjtJQUx4QztRQU9vQixTQUFJLEdBQTZCLEVBQUUsQ0FBQztRQUNwQyxVQUFLLEdBQWlCLFFBQVEsQ0FBQztRQUMvQixhQUFRLEdBQUcsS0FBSyxDQUFDO0tBQ3BDOzt3SEFMWSwyQkFBMkI7NEdBQTNCLDJCQUEyQiwwSUNUeEMsMk9BVUE7MkZERGEsMkJBQTJCO2tCQUx2QyxTQUFTOytCQUNJLHNCQUFzQjs4QkFLaEIsSUFBSTtzQkFBbkIsS0FBSztnQkFDVSxJQUFJO3NCQUFuQixLQUFLO2dCQUNVLEtBQUs7c0JBQXBCLEtBQUs7Z0JBQ1UsUUFBUTtzQkFBdkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbnB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1RoZW1lUGFsZXR0ZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5pbXBvcnQge1JvdXRlckxpbmt9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbmF0dXJhbC1maXhlZC1idXR0b24nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9maXhlZC1idXR0b24uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2ZpeGVkLWJ1dHRvbi5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBOYXR1cmFsRml4ZWRCdXR0b25Db21wb25lbnQge1xuICAgIEBJbnB1dCgpIHB1YmxpYyBpY29uITogc3RyaW5nO1xuICAgIEBJbnB1dCgpIHB1YmxpYyBsaW5rOiBSb3V0ZXJMaW5rWydyb3V0ZXJMaW5rJ10gPSBbXTtcbiAgICBASW5wdXQoKSBwdWJsaWMgY29sb3I6IFRoZW1lUGFsZXR0ZSA9ICdhY2NlbnQnO1xuICAgIEBJbnB1dCgpIHB1YmxpYyBkaXNhYmxlZCA9IGZhbHNlO1xufVxuIiwiPGJ1dHRvblxuICAgIFtjb2xvcl09XCJjb2xvclwiXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICBbcm91dGVyTGlua109XCJsaW5rXCJcbiAgICBjbGFzcz1cImZsb2F0aW5nLWJ1dHRvbiBib3R0b20tcmlnaHRcIlxuICAgIG1hdC1mYWJcbiAgICBtYXQtcmFpc2VkLWJ1dHRvblxuPlxuICAgIDxuYXR1cmFsLWljb24gW25hbWVdPVwiaWNvblwiPjwvbmF0dXJhbC1pY29uPlxuPC9idXR0b24+XG4iXX0=
|
package/esm2020/lib/modules/hierarchic-selector/classes/hierarchic-filters-configuration.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGllcmFyY2hpYy1maWx0ZXJzLWNvbmZpZ3VyYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uYXR1cmFsL3NyYy9saWIvbW9kdWxlcy9oaWVyYXJjaGljLXNlbGVjdG9yL2NsYXNzZXMvaGllcmFyY2hpYy1maWx0ZXJzLWNvbmZpZ3VyYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TGl0ZXJhbH0gZnJvbSAnLi4vLi4vLi4vdHlwZXMvdHlwZXMnO1xuaW1wb3J0IHtOYXR1cmFsSGllcmFyY2hpY0NvbmZpZ3VyYXRpb259IGZyb20gJy4vaGllcmFyY2hpYy1jb25maWd1cmF0aW9uJztcblxuZXhwb3J0IGludGVyZmFjZSBIaWVyYXJjaGljRmlsdGVyQ29uZmlndXJhdGlvbjxUID0gTGl0ZXJhbD4ge1xuICAgIHNlcnZpY2U6IE5hdHVyYWxIaWVyYXJjaGljQ29uZmlndXJhdGlvblsnc2VydmljZSddO1xuICAgIGZpbHRlcjogVDtcbn1cblxuZXhwb3J0IHR5cGUgSGllcmFyY2hpY0ZpbHRlcnNDb25maWd1cmF0aW9uPFQgPSBMaXRlcmFsPiA9IEFycmF5PEhpZXJhcmNoaWNGaWx0ZXJDb25maWd1cmF0aW9uPFQ+PjtcbiJdfQ==
|
|
@@ -98,4 +98,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.1", ngImpor
|
|
|
98
98
|
type: Inject,
|
|
99
99
|
args: [NaturalLoggerConfigExtra]
|
|
100
100
|
}] }]; } });
|
|
101
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
101
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3ItaGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwvc3JjL2xpYi9tb2R1bGVzL2xvZ2dlci9lcnJvci1oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQWEsV0FBVyxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDN0QsT0FBTyxFQUFDLFlBQVksRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBRSxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxFQUFDLFVBQVUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFjLEVBQUUsRUFBQyxNQUFNLE1BQU0sQ0FBQzs7O0FBNEI5RCxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxJQUFJLGNBQWMsQ0FBUyxnQ0FBZ0MsQ0FBQyxDQUFDO0FBQ25HLE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLElBQUksY0FBYyxDQUN0RCwwQ0FBMEMsQ0FDN0MsQ0FBQztBQUVGOzs7Ozs7OztHQVFHO0FBSUgsTUFBTSxPQUFPLG1CQUFvQixTQUFRLFlBQVk7SUFDakQsWUFDcUIsSUFBZ0IsRUFDRSxRQUFrQixFQUNRLEdBQVcsRUFDVCxXQUFnQztRQUUvRixLQUFLLEVBQUUsQ0FBQztRQUxTLFNBQUksR0FBSixJQUFJLENBQVk7UUFDRSxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ1EsUUFBRyxHQUFILEdBQUcsQ0FBUTtRQUNULGdCQUFXLEdBQVgsV0FBVyxDQUFxQjtJQUduRyxDQUFDO0lBRWUsV0FBVyxDQUFDLEtBQVU7UUFDbEMsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVyQixNQUFNLE1BQU0sR0FBc0I7WUFDOUIsT0FBTyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFD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QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RE9DVU1FTlR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0h0dHBDbGllbnQsIEh0dHBIZWFkZXJzfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQge0Vycm9ySGFuZGxlciwgSW5qZWN0LCBJbmplY3RhYmxlLCBJbmplY3Rpb25Ub2tlbiwgT3B0aW9uYWx9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtjYXRjaEVycm9yLCBFTVBUWSwgZmlyc3QsIE9ic2VydmFibGUsIG9mfSBmcm9tICdyeGpzJztcblxuZXhwb3J0IGludGVyZmFjZSBOYXR1cmFsTG9nZ2VyVHlwZSB7XG4gICAgbWVzc2FnZTogc3RyaW5nO1xuICAgIHN0YWNrdHJhY2U/OiBzdHJpbmc7XG4gICAgaHJlZj86IHN0cmluZztcbiAgICBob3N0Pzogc3RyaW5nO1xuICAgIHBhdGg/OiBzdHJpbmc7XG4gICAgYWdlbnQ/OiBzdHJpbmc7XG4gICAgc3RhdHVzPzogbnVtYmVyO1xuICAgIHJlZmVycmVyPzogc3RyaW5nO1xuICAgIHVybD86IHN0cmluZztcbiAgICB1c2VySWQ/OiBzdHJpbmc7XG4gICAgdXNlcj86IHN0cmluZztcblxuICAgIFtrZXk6IHN0cmluZ106IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOYXR1cmFsTG9nZ2VyRXh0cmEge1xuICAgIC8qKlxuICAgICAqIFJldHVybiBhbiBvYnNlcnZhYmxlIG9mIGV4dHJhIGRhdGEgdGhhdCB3aWxsIGJlIGxvZ2dlZC4gVGhvc2UgZGF0YSB3aWxsIGJlIG1lcmdlZCBpbnRvXG4gICAgICogdGhlIG9yaWdpbmFsIGRhdGEsIGFuZCBzbyBpdCBjYW4gb3ZlcnJpZGUgdGhpbmdzLlxuICAgICAqXG4gICAgICogT25seSB0aGUgZmlyc3QgZW1pdHRlZCB2YWx1ZSB3aWxsIGJlIHVzZWQuXG4gICAgICovXG4gICAgZ2V0RXh0cmFzKGVycm9yOiB1bmtub3duKTogT2JzZXJ2YWJsZTxQYXJ0aWFsPE5hdHVyYWxMb2dnZXJUeXBlPj47XG59XG5cbmV4cG9ydCBjb25zdCBOYXR1cmFsTG9nZ2VyQ29uZmlnVXJsID0gbmV3IEluamVjdGlvblRva2VuPHN0cmluZz4oJ0Fic29sdXRlIFVSTCBvZiB0aGUgbG9nIHNlcnZlcicpO1xuZXhwb3J0IGNvbnN0IE5hdHVyYWxMb2dnZXJDb25maWdFeHRyYSA9IG5ldyBJbmplY3Rpb25Ub2tlbjxOYXR1cmFsTG9nZ2VyRXh0cmE+KFxuICAgICdDbGFzcyB0aGF0IG1heSBwcm92aWRlIGV4dHJhIGRhdGEgdG8gbG9nJyxcbik7XG5cbi8qKlxuICogUmVwbGFjZSBBbmd1bGFyJ3MgZXJyb3IgaGFuZGxlciB0byBhbHNvIHNlbmQgdGhlIGxvZyB0byBhIHJlbW90ZSBzZXJ2ZXIgdmlhIEhUVFAgUE9TVC5cbiAqXG4gKiBVc2FnZSBpcyBhdXRvbWF0aWMgYXMgc29vbiB3ZSBpbXBvcnQgdGhlIG1vZHVsZSB2aWE6XG4gKlxuICogYGBgdHNcbiAqIE5hdHVyYWxFcnJvck1vZHVsZS5mb3JSb290KCdodHRwOi8vZXhhbXBsZS5jb20nLCBFeHRyYVNlcnZpY2UpLFxuICogYGBgXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIE5hdHVyYWxFcnJvckhhbmRsZXIgZXh0ZW5kcyBFcnJvckhhbmRsZXIge1xuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBodHRwOiBIdHRwQ2xpZW50LFxuICAgICAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIHJlYWRvbmx5IGRvY3VtZW50OiBEb2N1bWVudCxcbiAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChOYXR1cmFsTG9nZ2VyQ29uZmlnVXJsKSBwcml2YXRlIHJlYWRvbmx5IHVybDogc3RyaW5nLFxuICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KE5hdHVyYWxMb2dnZXJDb25maWdFeHRyYSkgcHJpdmF0ZSByZWFkb25seSBsb2dnZXJFeHRyYT86IE5hdHVyYWxMb2dnZXJFeHRyYSxcbiAgICApIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb3ZlcnJpZGUgaGFuZGxlRXJyb3IoZXJyb3I6IGFueSk6IHZvaWQge1xuICAgICAgICBjb25zb2xlLmVycm9yKGVycm9yKTtcblxuICAgICAgICBjb25zdCBwYXJhbXM6IE5hdHVyYWxMb2dnZXJUeXBlID0ge1xuICAgICAgICAgICAgbWVzc2FnZTogdGhpcy50b01lc3NhZ2UoZXJyb3IpLFxuICAgICAgICAgICAgaHJlZjogdGhpcy5kb2N1bWVudC5kZWZhdWx0Vmlldz8ud2luZG93LmxvY2F0aW9uLmhyZWYsXG4gICAgICAgICAgICBob3N0OiB0aGlzLmRvY3VtZW50LmRlZmF1bHRWaWV3Py53aW5kb3cubG9jYXRpb24uaG9zdG5hbWUsXG4gICAgICAgICAgICBwYXRoOiB0aGlzLmRvY3VtZW50LmRlZmF1bHRWaWV3Py53aW5kb3cubG9jYXRpb24ucGF0aG5hbWUsXG4gICAgICAgICAgICBhZ2VudDogdGhpcy5kb2N1bWVudC5kZWZhdWx0Vmlldz8ud2luZG93Lm5hdmlnYXRvci51c2VyQWdlbnQsXG4gICAgICAgICAgICBsZXZlbDogJ2Vycm9yJyxcbiAgICAgICAgfTtcblxuICAgICAgICBpZiAoZXJyb3I/LnN0YWNrKSB7XG4gICAgICAgICAgICBwYXJhbXMuc3RhY2t0cmFjZSA9IGVycm9yLnN0YWNrO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHR5cGVvZiBlcnJvcj8uc3RhdHVzICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgICAgICAgcGFyYW1zLnN0YXR1cyA9IGVycm9yLnN0YXR1cztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChlcnJvcj8ucmVmZXJyZXIpIHtcbiAgICAgICAgICAgIHBhcmFtcy5yZWZlcnJlciA9IGVycm9yLnJlZmVycmVyO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGVycm9yPy51cmwpIHtcbiAgICAgICAgICAgIHBhcmFtcy51cmwgPSBlcnJvci51cmw7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5sb2dnZXJFeHRyYSkge1xuICAgICAgICAgICAgdGhpcy5sb2dnZXJFeHRyYVxuICAgICAgICAgICAgICAgIC5nZXRFeHRyYXMoZXJyb3IpXG4gICAgICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgIGNhdGNoRXJyb3IoZSA9PiBvZih7Z2V0RXh0cmFzRXJyb3JNZXNzYWdlOiB0aGlzLnRvTWVzc2FnZShlKX0pKSxcbiAgICAgICAgICAgICAgICAgICAgZmlyc3QoKSxcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgLnN1YnNjcmliZShyZXN1bHQgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBvc3RMb2coT2JqZWN0LmFzc2lnbihwYXJhbXMsIHJlc3VsdCkpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5wb3N0TG9nKHBhcmFtcyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIHRvTWVzc2FnZShlcnJvcjogYW55KTogc3RyaW5nIHtcbiAgICAgICAgaWYgKGVycm9yICYmIHR5cGVvZiBlcnJvciA9PT0gJ29iamVjdCcgJiYgJ21lc3NhZ2UnIGluIGVycm9yKSB7XG4gICAgICAgICAgICByZXR1cm4gJycgKyBlcnJvci5tZXNzYWdlO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuICcnICsgZXJyb3I7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZW5kIHBhcmFtZXRlcnMgdG8gcmVtb3RlIGxvZ1xuICAgICAqL1xuICAgIHByaXZhdGUgcG9zdExvZyhwYXJhbXM6IE5hdHVyYWxMb2dnZXJUeXBlKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnVybCkge1xuICAgICAgICAgICAgdGhpcy5odHRwXG4gICAgICAgICAgICAgICAgLnBvc3QodGhpcy51cmwsIHBhcmFtcywge2hlYWRlcnM6IG5ldyBIdHRwSGVhZGVycygpLnNldCgnY29udGVudC10eXBlJywgJ2FwcGxpY2F0aW9uL2pzb24nKX0pXG4gICAgICAgICAgICAgICAgLnBpcGUoY2F0Y2hFcnJvcigoKSA9PiBFTVBUWSkpXG4gICAgICAgICAgICAgICAgLnN1YnNjcmliZSgpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
|
|
@@ -3,10 +3,10 @@ import { NaturalPanelsService } from './panels.service';
|
|
|
3
3
|
* Url fallback matcher to be used instead of `path: '**'` when Panel system
|
|
4
4
|
* is used in the project.
|
|
5
5
|
*/
|
|
6
|
-
export const fallbackIfNoOpenedPanels = (segments
|
|
6
|
+
export const fallbackIfNoOpenedPanels = (segments) => {
|
|
7
7
|
if (!NaturalPanelsService.opened) {
|
|
8
8
|
return { consumed: segments };
|
|
9
9
|
}
|
|
10
10
|
return null;
|
|
11
11
|
};
|
|
12
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFsbGJhY2staWYtbm8tb3BlbmVkLXBhbmVscy51cmxtYXRjaGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC9zcmMvbGliL21vZHVsZXMvcGFuZWxzL2ZhbGxiYWNrLWlmLW5vLW9wZW5lZC1wYW5lbHMudXJsbWF0Y2hlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUV0RDs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBZSxDQUFDLFFBQXNCLEVBQXlCLEVBQUU7SUFDbEcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLE1BQU0sRUFBRTtRQUM5QixPQUFPLEVBQUMsUUFBUSxFQUFFLFFBQVEsRUFBQyxDQUFDO0tBQy9CO0lBRUQsT0FBTyxJQUFJLENBQUM7QUFDaEIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtVcmxNYXRjaGVyLCBVcmxNYXRjaFJlc3VsdCwgVXJsU2VnbWVudH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7TmF0dXJhbFBhbmVsc1NlcnZpY2V9IGZyb20gJy4vcGFuZWxzLnNlcnZpY2UnO1xuXG4vKipcbiAqIFVybCBmYWxsYmFjayBtYXRjaGVyIHRvIGJlIHVzZWQgaW5zdGVhZCBvZiBgcGF0aDogJyoqJ2Agd2hlbiBQYW5lbCBzeXN0ZW1cbiAqIGlzIHVzZWQgaW4gdGhlIHByb2plY3QuXG4gKi9cbmV4cG9ydCBjb25zdCBmYWxsYmFja0lmTm9PcGVuZWRQYW5lbHM6IFVybE1hdGNoZXIgPSAoc2VnbWVudHM6IFVybFNlZ21lbnRbXSk6IFVybE1hdGNoUmVzdWx0IHwgbnVsbCA9PiB7XG4gICAgaWYgKCFOYXR1cmFsUGFuZWxzU2VydmljZS5vcGVuZWQpIHtcbiAgICAgICAgcmV0dXJuIHtjb25zdW1lZDogc2VnbWVudHN9O1xuICAgIH1cblxuICAgIHJldHVybiBudWxsO1xufTtcbiJdfQ==
|
|
@@ -118,7 +118,7 @@ export class NaturalPanelsService {
|
|
|
118
118
|
const originalErrorHandler = this.router.errorHandler;
|
|
119
119
|
// Nullify error handler (will be de-neutralized after route redirection)
|
|
120
120
|
if (config) {
|
|
121
|
-
this.router.errorHandler = () =>
|
|
121
|
+
this.router.errorHandler = () => undefined;
|
|
122
122
|
}
|
|
123
123
|
// Navigate to same url + /risk/new Result : /risk/risk/new
|
|
124
124
|
const newUrl = config.map(conf => segmentsToString(conf.route.segments)).join('/');
|
|
@@ -322,4 +322,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.1", ngImpor
|
|
|
322
322
|
type: Inject,
|
|
323
323
|
args: [PanelsHooksConfig]
|
|
324
324
|
}] }, { type: i3.MediaObserver }]; } });
|
|
325
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFuZWxzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uYXR1cmFsL3NyYy9saWIvbW9kdWxlcy9wYW5lbHMvcGFuZWxzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLE1BQU0sRUFBRSxVQUFVLEVBQVcsTUFBTSxlQUFlLENBQUM7QUFHM0QsT0FBTyxFQUFpQixvQkFBb0IsRUFBRSxlQUFlLEVBQXFCLE1BQU0saUJBQWlCLENBQUM7QUFDMUcsT0FBTyxFQUFDLGNBQWMsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFDLE1BQU0sV0FBVyxDQUFDO0FBQzNELE9BQU8sRUFBQyxRQUFRLEVBQWMsRUFBRSxFQUFFLE9BQU8sRUFBZSxNQUFNLE1BQU0sQ0FBQztBQUNyRSxPQUFPLEVBQUMsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFbkMsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELE9BQU8sRUFNSCxpQkFBaUIsR0FDcEIsTUFBTSxTQUFTLENBQUM7Ozs7O0FBRWpCLFNBQVMsZ0JBQWdCLENBQUMsUUFBc0I7SUFDNUMsT0FBTyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ3JELENBQUM7QUFFRCxTQUFTLGNBQWMsQ0FBQyxDQUFxQixFQUFFLENBQXFCO0lBQ2hFLE9BQU8sQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLElBQUksS0FBSyxDQUFDLENBQUMsSUFBSSxJQUFJLE9BQU8sQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUM3RixDQUFDO0FBRUQ7OztH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cGV9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHtJbmplY3QsIEluamVjdGFibGUsIEluamVjdG9yfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TWVkaWFPYnNlcnZlcn0gZnJvbSAnQGFuZ3VsYXIvZmxleC1sYXlvdXQnO1xuaW1wb3J0IHtNYXREaWFsb2csIE1hdERpYWxvZ0NvbmZpZ30gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7QWN0aXZhdGVkUm91dGUsIERlZmF1bHRVcmxTZXJpYWxpemVyLCBOYXZpZ2F0aW9uRXJyb3IsIFJvdXRlciwgVXJsU2VnbWVudH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7ZGlmZmVyZW5jZVdpdGgsIGZsYXR0ZW4sIGlzRXF1YWx9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQge2ZvcmtKb2luLCBPYnNlcnZhYmxlLCBvZiwgU3ViamVjdCwgU3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge05hdHVyYWxBYnN0cmFjdFBhbmVsfSBmcm9tICcuL2Fic3RyYWN0LXBhbmVsJztcbmltcG9ydCB7Z2V0U3RhY2tDb25maWd9IGZyb20gJy4vcGFuZWxzLnVybG1hdGNoZXInO1xuaW1wb3J0IHtcbiAgICBOYXR1cmFsUGFuZWxDb25maWcsXG4gICAgTmF0dXJhbFBhbmVsRGF0YSxcbiAgICBOYXR1cmFsUGFuZWxzQmVmb3JlT3BlblBhbmVsLFxuICAgIE5hdHVyYWxQYW5lbHNIb29rc0NvbmZpZyxcbiAgICBOYXR1cmFsUGFuZWxzUm91dGVyUnVsZSxcbiAgICBQYW5lbHNIb29rc0NvbmZpZyxcbn0gZnJvbSAnLi90eXBlcyc7XG5cbmZ1bmN0aW9uIHNlZ21lbnRzVG9TdHJpbmcoc2VnbWVudHM6IFVybFNlZ21lbnRbXSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHNlZ21lbnRzLm1hcChzID0+IHMudG9TdHJpbmcoKSkuam9pbignLycpO1xufVxuXG5mdW5jdGlvbiBjb21wYXJlQ29uZmlncyhhOiBOYXR1cmFsUGFuZWxDb25maWcsIGI6IE5hdHVyYWxQYW5lbENvbmZpZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBhLnJvdXRlLnBhdGggPT09IGIucm91dGUucGF0aCAmJiBhLnJ1bGUgPT09IGIucnVsZSAmJiBpc0VxdWFsKGEucGFyYW1zLCBiLnBhcmFtcyk7XG59XG5cbi8qKlxuICogVE9ETzogaW1wbGVtZW50IHJvdXRlIHVwZGF0ZSB3aGVuIGNsb3NpbmcgZGlhbG9nIHdpdGggZXNjYXBlXG4gKiBAZHluYW1pY1xuICovXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBOYXR1cmFsUGFuZWxzU2VydmljZSB7XG4gICAgLyoqXG4gICAgICogQmVjYXVzZSBvZiB0aGlzIHN0YXRpYyBwcm9wZXJ0eSBQYW5lbHMgYXJlICoqbm90KiogY29tcGF0aWJsZSB3aXRoIFNTUi5cbiAgICAgKiBBbmQgd2UgY2Fubm90IG1ha2UgaXQgbm9uLXN0YXRpYywgYmVjYXVzZSBgVXJsTWF0Y2hlcmAgY2Fubm90IGJlIGluamVjdGVkLlxuICAgICAqL1xuICAgIHByaXZhdGUgc3RhdGljIF9vcGVuZWQgPSBmYWxzZTtcbiAgICBwdWJsaWMgc3RhdGljIGdldCBvcGVuZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9vcGVuZWQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU3RyZWFtIHRoYXQgZW1pdHMgd2hlbiBhbGwgb3BlbiBkaWFsb2cgaGF2ZSBmaW5pc2hlZCBjbG9zaW5nXG4gICAgICovXG4gICAgcHVibGljIGFmdGVyQWxsQ2xvc2VkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgICAvKipcbiAgICAgKiBDYWNoZSBmb3IgcGFuZWxzIGNvdW50ZXIuIFdvcmtzIG1vcmUgbGlrZSBhbiBJRC5cbiAgICAgKiBJcyB1c2VkIHRvIGdpdmUgYW4gdW5pcXVlIGlkZW50aWZpZXIgdG8gbXVsdGlwbGUgc2ltaWxhciBwYW5lbHMgY29uZmlndXJhdGlvbnNcbiAgICAgKi9cbiAgICBwcml2YXRlIGNvdW50ZXIgPSAxO1xuICAgIC8qKlxuICAgICAqIENsYXNzIGFwcGxpZWQgdG8gZGlhbG9nIG92ZXJsYXkgcmVsYXRlZCB3aXRoIHBhbmVsc1xuICAgICAqIElmIGNoYW5nZSwgY2hhbmdlIENTUyB0b29cbiAgICAgKi9cbiAgICBwcml2YXRlIHBhbmVsQ2xhc3MgPSAncGFuZWwnO1xuXG4gICAgLyoqXG4gICAgICogQ2FjaGUgZm9yIHBhbmVscyBzZXR1cCBiZWZvcmUgbmF2aWdhdGlvbiBjaGFuZ2UuXG4gICAgICogVXNlZCB0byBkZXRlY3QgcGFuZWxzIG9wZW5pbmdzL2Nsb3NpbmdzIGFuZCBhZGFwdCBmb3IgbmV3IGNvbmZpZ3VyYXRpb25cbiAgICAgKi9cbiAgICBwcml2YXRlIG9sZEZ1bGxDb25maWc6IE5hdHVyYWxQYW5lbENvbmZpZ1tdID0gW107XG5cbiAgICAvKipcbiAgICAgKiBDYWNoZSBmb3Igc3Vic2NyaXB0aW9uIHN0b3BcbiAgICAgKi9cbiAgICBwcml2YXRlIHJvdXRlU3ViPzogU3Vic2NyaXB0aW9uO1xuXG4gICAgLyoqXG4gICAgICogQ2FjaGUgZm9yIHN1YnNjcmlwdGlvbiBzdG9wXG4gICAgICovXG4gICAgcHJpdmF0ZSBuYXZTdWI/OiBTdWJzY3JpcHRpb247XG5cbiAgICAvKipcbiAgICAgKiBIb3Jpem9udGFsIGdhcHMgYmV0d2VlbiBwYW5lbHNcbiAgICAgKi9cbiAgICBwcml2YXRlIHBhbmVsc09mZnNldEggPSAzNTtcblxuICAgIC8qKlxuICAgICAqIFZlcnRpY2FsIGdhcHMgYmV0d2VlbiBwYW5lbHNcbiAgICAgKi9cbiAgICBwcml2YXRlIHBhbmVsc09mZnNldFYgPSA0MDtcblxuICAgIC8qKlxuICAgICAqIENhY2hlIG9mIHByZXZpb3VzIHNjcmVlbiBzaXplXG4gICAgICogVXNlZCB0byBjaGFuZ2UgcGFuZWxzIHN0YWNrIG9yaWVudGF0aW9uIG9uIHNtYWxsIHNjcmVlbnNcbiAgICAgKi9cbiAgICBwcml2YXRlIG1lZGlhOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZXI6IFJvdXRlcixcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBkaWFsb2c6IE1hdERpYWxvZyxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgICAgIEBJbmplY3QoUGFuZWxzSG9va3NDb25maWcpIHByaXZhdGUgaG9va3NDb25maWc6IE5hdHVyYWxQYW5lbHNIb29rc0NvbmZpZyxcbiAgICAgICAgcHJpdmF0ZSBtZWRpYVNlcnZpY2U6IE1lZGlhT2JzZXJ2ZXIsXG4gICAgKSB7XG4gICAgICAgIC8vIFdhdGNoIG1lZGlhIHRvIGtub3cgaWYgZGlzcGxheSBwYW5lbHMgaG9yaXpvbnRhbGx5IG9yIHZlcnRpY2FsbHlcbiAgICAgICAgdGhpcy5tZWRpYVNlcnZpY2UuYXNPYnNlcnZhYmxlKCkuc3Vic2NyaWJlKG1lZGlhcyA9PiB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IG1lZGlhIG9mIG1lZGlhcykge1xuICAgICAgICAgICAgICAgIGlmICghdGhpcy5tZWRpYSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm1lZGlhID0gbWVkaWEubXFBbGlhcztcbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMubWVkaWEgIT09IG1lZGlhLm1xQWxpYXMpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5tZWRpYSA9IG1lZGlhLm1xQWxpYXM7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlQ29tcG9uZW50c1Bvc2l0aW9uKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhcnQocm91dGU6IEFjdGl2YXRlZFJvdXRlKTogdm9pZCB7XG4gICAgICAgIE5hdHVyYWxQYW5lbHNTZXJ2aWNlLl9vcGVuZWQgPSB0cnVlO1xuICAgICAgICB0aGlzLnJvdXRlU3ViID0gcm91dGUudXJsLnN1YnNjcmliZShzZWdtZW50cyA9PiB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVBhbmVscyhzZWdtZW50cywgcm91dGUuc25hcHNob3QuZGF0YS5wYW5lbHNSb3V0ZXMpO1xuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLm5hdlN1YiA9IHRoaXMucm91dGVyLmV2ZW50cy5zdWJzY3JpYmUoZXYgPT4ge1xuICAgICAgICAgICAgaWYgKCEoZXYgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRXJyb3IpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBBYm9ydCBhbmQgcHJvcGFnYXRlIG5hdmlnYXRpb24gZXJyb3JcbiAgICAgICAgICAgIGlmIChldi51cmwuZW5kc1dpdGgoJy8nKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuc3RvcCgpO1xuXG4gICAgICAgICAgICAgICAgLy8gVGhpcyBpcyBhIGJpdCBoYWNraXNoOiB3ZSBoYXJkY29kZSBhbiBpbXBvc3NpYmxlIHVybCB0byB0cmlnZ2VyIG5vcm1hbCBuYXZpZ2F0aW9uIGVycm9yIG1lY2hhbmlzbVxuICAgICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoJ3BhbmVscy1yZWFjaGVkLWludmFsaWQtdXJsJyk7XG5cbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuY291bnRlcisrO1xuXG4gICAgICAgICAgICAvLyBwYyBzdGFuZHMgZm9yIFwicGFuZWwgY291bnRlclwiLCByZXF1aXJlZCB0byBnaXZlIGFuIGlkZW50aWZpY2F0aW9uIHRvIHBhbmVscyB3aXRoIGV4YWN0IHNhbWUgY29uZmlnXG4gICAgICAgICAgICAvLyBFLmcgL25ld1xuICAgICAgICAgICAgY29uc3Qgd2FudGVkVXJsID0gZXYudXJsICsgJztwYz0nICsgdGhpcy5jb3VudGVyO1xuXG4gICAgICAgICAgICAvLyBTZWdtZW50cyBtYXRjaGluZyBmcm9tIHdhbnRlZCB1cmwuIEUuZyB+IFsnbmV3J11cbiAgICAgICAgICAgIGNvbnN0IHdhbnRlZFVyU2VnbWVudHMgPSBuZXcgRGVmYXVsdFVybFNlcmlhbGl6ZXIoKS5wYXJzZSh3YW50ZWRVcmwpLnJvb3QuY2hpbGRyZW4ucHJpbWFyeS5zZWdtZW50cztcblxuICAgICAgICAgICAgLy8gRG9uJ3QgbWF0Y2ggYW55IGNvbmZpZ1xuICAgICAgICAgICAgY29uc3Qgd2FudGVkQ29uZmlnID0gZ2V0U3RhY2tDb25maWcod2FudGVkVXJTZWdtZW50cywgcm91dGUuc25hcHNob3QuZGF0YS5wYW5lbHNSb3V0ZXMsIHRoaXMuaW5qZWN0b3IpO1xuXG4gICAgICAgICAgICBpZiAod2FudGVkQ29uZmlnLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmFwcGVuZENvbmZpZ1RvQ3VycmVudFVybCh3YW50ZWRDb25maWcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBDdXJyZW50bHkgYWN0aXZhdGVkIHJvdXRlcy4gRS5nIFsnb2JqZWN0aXZlJywgJ29iamVjdGl2ZScsIDEyMywgJ3Jpc2snXVxuICAgICAgICAgICAgY29uc3QgY3VycmVudFNlZ21lbnRzID0gZmxhdHRlbihcbiAgICAgICAgICAgICAgICB0aGlzLmRpYWxvZy5vcGVuRGlhbG9ncy5tYXAoZCA9PiBkLmNvbXBvbmVudEluc3RhbmNlLnBhbmVsRGF0YS5jb25maWcucm91dGUuc2VnbWVudHMpLFxuICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgLy8gTGFzdCBzZWdtZW50LiBFLmcgWydyaXNrJ11cbiAgICAgICAgICAgIGNvbnN0IGxhc3RPZkN1cnJlbnRTZWdtZW50cyA9IGN1cnJlbnRTZWdtZW50cy5zbGljZSgtMSk7XG5cbiAgICAgICAgICAgIC8vIENvbmZpZyBmb3IgWydyaXNrJywgJ25ldyddXG4gICAgICAgICAgICBjb25zdCBjdXJyZW50QW5kV2FudGVkQ29uZmlnID0gZ2V0U3RhY2tDb25maWcoXG4gICAgICAgICAgICAgICAgbGFzdE9mQ3VycmVudFNlZ21lbnRzLmNvbmNhdCh3YW50ZWRVclNlZ21lbnRzKSxcbiAgICAgICAgICAgICAgICByb3V0ZS5zbmFwc2hvdC5kYXRhLnBhbmVsc1JvdXRlcyxcbiAgICAgICAgICAgICAgICB0aGlzLmluamVjdG9yLFxuICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuYXBwZW5kQ29uZmlnVG9DdXJyZW50VXJsKGN1cnJlbnRBbmRXYW50ZWRDb25maWcpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBVc2VzIGdpdmVuIGNvbmZpZ3VyYXRpb24gdG8gYWRkIGluIHRoZSBlbmQgb2YgY3VycmVudCB1cmxcbiAgICAgKiBOZXV0cmFsaXplcyByb3V0ZXIgZXJyb3IgaGFuZGxpbmdcbiAgICAgKi9cbiAgICBwcml2YXRlIGFwcGVuZENvbmZpZ1RvQ3VycmVudFVybChjb25maWc6IE5hdHVyYWxQYW5lbENvbmZpZ1tdKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IG9yaWdpbmFsRXJyb3JIYW5kbGVyID0gdGhpcy5yb3V0ZXIuZXJyb3JIYW5kbGVyO1xuXG4gICAgICAgIC8vIE51bGxpZnkgZXJyb3IgaGFuZGxlciAod2lsbCBiZSBkZS1uZXV0cmFsaXplZCBhZnRlciByb3V0ZSByZWRpcmVjdGlvbilcbiAgICAgICAgaWYgKGNvbmZpZykge1xuICAgICAgICAgICAgdGhpcy5yb3V0ZXIuZXJyb3JIYW5kbGVyID0gKCkgPT4ge307XG4gICAgICAgIH1cblxuICAgICAgICAvLyBOYXZpZ2F0ZSB0byBzYW1lIHVybCArIC9yaXNrL25ldyBSZXN1bHQgOiAvcmlzay9yaXNrL25ld1xuICAgICAgICBjb25zdCBuZXdVcmwgPSBjb25maWcubWFwKGNvbmYgPT4gc2VnbWVudHNUb1N0cmluZyhjb25mLnJvdXRlLnNlZ21lbnRzKSkuam9pbignLycpO1xuXG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwodGhpcy5yb3V0ZXIudXJsICsgJy8nICsgbmV3VXJsKS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgIC8vIEFmdGVyIG5hdmlnYXRpb24gaGFzIGVuZGVkLCByZXN0b3JlIG9yaWdpbmFsIGVycm9yIGhhbmRsZXIgYmVjYXVzZSBoZSdzIG5vdCBhIGJhZCBndXlcbiAgICAgICAgICAgIHRoaXMucm91dGVyLmVycm9ySGFuZGxlciA9IG9yaWdpbmFsRXJyb3JIYW5kbGVyO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RvcCgpOiB2b2lkIHtcbiAgICAgICAgTmF0dXJhbFBhbmVsc1NlcnZpY2UuX29wZW5lZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLnJvdXRlU3ViPy51bnN1YnNjcmliZSgpO1xuICAgICAgICB0aGlzLm5hdlN1Yj8udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy5kaWFsb2cuY2xvc2VBbGwoKTtcbiAgICAgICAgdGhpcy5vbGRGdWxsQ29uZmlnID0gW107XG4gICAgICAgIHRoaXMuYWZ0ZXJBbGxDbG9zZWQubmV4dCgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdvIHRvIHBhbmVsIG1hdGNoaW5nIGdpdmVuIGNvbXBvbmVudC4gQ2F1c2VzIGFuIHVybCBjaGFuZ2UuXG4gICAgICovXG4gICAgcHVibGljIGdvVG9QYW5lbEJ5Q29tcG9uZW50KGNvbXBvbmVudDogTmF0dXJhbEFic3RyYWN0UGFuZWwpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5nb1RvUGFuZWxCeUluZGV4KHRoaXMuZ2V0UGFuZWxJbmRleChjb21wb25lbnQpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHbyB0byBwYW5lbCBtYXRjaGluZyBnaXZlbiBjb21wb25lbnQuIENhdXNlcyBhbiB1cmwgY2hhbmdlLlxuICAgICAqL1xuICAgIHB1YmxpYyBnb1RvUGVudWx0aW1hdGVQYW5lbCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5nb1RvUGFuZWxCeUluZGV4KHRoaXMuZGlhbG9nLm9wZW5EaWFsb2dzLmxlbmd0aCAtIDIpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENhbGxzIHRoZSBuZXcgdXJsIHRoYXQgb25seSBpbmNsdWRlcyB0aGUgc2VnbWVudHMgZnJvbSB0aGUgcGFuZWxzIHdlIHdhbnQgdG8gc3RheSBvcGVuXG4gICAgICovXG4gICAgcHJpdmF0ZSBnb1RvUGFuZWxCeUluZGV4KGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgLy8gRXh0cmFjdHMgdXJsIHNlZ21lbnRzIGZyb20gbmV4dCBwYW5lbCB1bnRpbCBsYXN0IG9uZVxuICAgICAgICBjb25zdCB1cmwgPSB0aGlzLmRpYWxvZy5vcGVuRGlhbG9nc1xuICAgICAgICAgICAgLnNsaWNlKGluZGV4ICsgMSlcbiAgICAgICAgICAgIC5tYXAoZGlhbG9nID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gc2VnbWVudHNUb1N0cmluZyhkaWFsb2cuY29tcG9uZW50SW5zdGFuY2UucGFuZWxEYXRhLmNvbmZpZy5yb3V0ZS5zZWdtZW50cyk7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLmpvaW4oJy8nKTtcblxuICAgICAgICAvLyBSZW1vdmUgZXh0cmEgc2VnbWVudHMgYW5kIHJlZGlyZWN0cyB0byByb290XG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwodGhpcy5yb3V0ZXIudXJsLnJlcGxhY2UoJy8nICsgdXJsLCAnJykpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNlbGVjdGluZyBhIHBhbmVsIGlzIGVxdWl2YWxlbnQgdG8gY2xvc2UgYWxsIHRob3NlIHRoYXQgYXJlIGluIGZyb250IG9mIGhpbVxuICAgICAqIEBwYXJhbSBpbmRleCBvZiBwYW5lbCBpbiBzdGFjay4gVGhlIG1vc3QgYmVoaW5kICh0aGUgZmlyc3Qgb25lKSBpcyAwLlxuICAgICAqL1xuICAgIHByaXZhdGUgc2VsZWN0UGFuZWxCeUluZGV4KGluZGV4OiBudW1iZXIpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICAgICAgY29uc3QgbGFzdERpYWxvZyA9IHRoaXMuZGlhbG9nLm9wZW5EaWFsb2dzW3RoaXMuZGlhbG9nLm9wZW5EaWFsb2dzLmxlbmd0aCAtIDFdO1xuXG4gICAgICAgIC8vIFVwZGF0ZSBuZXcgcGFuZWxzIHNldCBwb3NpdGlvbnNcbiAgICAgICAgdGhpcy51cGRhdGVDb21wb25lbnRzUG9zaXRpb24oKTtcblxuICAgICAgICBmb3IgKGxldCBpID0gdGhpcy5kaWFsb2cub3BlbkRpYWxvZ3MubGVuZ3RoIC0gMTsgaSA+PSBpbmRleCArIDE7IGktLSkge1xuICAgICAgICAgICAgdGhpcy5kaWFsb2cub3BlbkRpYWxvZ3NbaV0uY2xvc2UoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBsYXN0RGlhbG9nLmFmdGVyQ2xvc2VkKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogT3BlbiBuZXcgcGFuZWxzIGlmIHVybCBoYXMgY2hhbmdlZCB3aXRoIG5ldyBzZWdtZW50c1xuICAgICAqL1xuICAgIHByaXZhdGUgdXBkYXRlUGFuZWxzKHNlZ21lbnRzOiBVcmxTZWdtZW50W10sIHJvdXRlczogTmF0dXJhbFBhbmVsc1JvdXRlclJ1bGVbXSk6IHZvaWQge1xuICAgICAgICAvLyBUcmFuc2Zvcm0gdXJsIHNlZ21lbnRzIGludG8gYSBjb25maWcgd2l0aCBjb21wb25lbnQgbmFtZSBhbmQgSUQgaWYgcHJvdmlkZWQgaW4gbmV4dCBzZWdtZW50XG4gICAgICAgIC8vIFJldHVybnMgYW4gYXJyYXkgb2YgY29uZmlncywgZWFjaCBjb25maWcgcmVwcmVzZW50cyB0aGUgY29udGVudCByZWxhdGl2ZSB0byBhIHBhbmVsXG4gICAgICAgIGNvbnN0IG5ld0Z1bGxDb25maWcgPSBnZXRTdGFja0NvbmZpZyhzZWdtZW50cywgcm91dGVzLCB0aGlzLmluamVjdG9yKTtcbiAgICAgICAgY29uc3QgY29uZmlnc1RvUmVtb3ZlID0gZGlmZmVyZW5jZVdpdGgodGhpcy5vbGRGdWxsQ29uZmlnLCBuZXdGdWxsQ29uZmlnLCBjb21wYXJlQ29uZmlncyk7XG4gICAgICAgIGNvbnN0IGNvbmZpZ3NUb0FkZCA9IGRpZmZlcmVuY2VXaXRoKG5ld0Z1bGxDb25maWcsIHRoaXMub2xkRnVsbENvbmZpZywgY29tcGFyZUNvbmZpZ3MpO1xuXG4gICAgICAgIGNvbnN0IGluZGV4T2ZOZXh0UGFuZWwgPSB0aGlzLm9sZEZ1bGxDb25maWcubGVuZ3RoIC0gY29uZmlnc1RvUmVtb3ZlLmxlbmd0aCAtIDE7XG5cbiAgICAgICAgaWYgKGNvbmZpZ3NUb1JlbW92ZS5sZW5ndGggJiYgY29uZmlnc1RvQWRkLmxlbmd0aCkge1xuICAgICAgICAgICAgLy8gQWRkIGFuZCByZW1vdmUgcGFuZWxzXG4gICAgICAgICAgICB0aGlzLnNlbGVjdFBhbmVsQnlJbmRleChpbmRleE9mTmV4dFBhbmVsKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMub3BlblBhbmVscyhjb25maWdzVG9BZGQsIG5ld0Z1bGxDb25maWcpLnN1YnNjcmliZSgoKSA9PiB0aGlzLnVwZGF0ZUNvbXBvbmVudHNQb3NpdGlvbigpKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2UgaWYgKGNvbmZpZ3NUb1JlbW92ZS5sZW5ndGggJiYgIWNvbmZpZ3NUb0FkZC5sZW5ndGgpIHtcbiAgICAgICAgICAgIC8vIG9ubHkgcmVtb3ZlIHBhbmVsc1xuICAgICAgICAgICAgdGhpcy5zZWxlY3RQYW5lbEJ5SW5kZXgoaW5kZXhPZk5leHRQYW5lbCkuc3Vic2NyaWJlKCgpID0+IHRoaXMudXBkYXRlQ29tcG9uZW50c1Bvc2l0aW9uKCkpO1xuICAgICAgICB9IGVsc2UgaWYgKCFjb25maWdzVG9SZW1vdmUubGVuZ3RoICYmIGNvbmZpZ3NUb0FkZC5sZW5ndGgpIHtcbiAgICAgICAgICAgIC8vIG9ubHkgYWRkIHBhbmVsc1xuICAgICAgICAgICAgdGhpcy5vcGVuUGFuZWxzKGNvbmZpZ3NUb0FkZCwgbmV3RnVsbENvbmZpZykuc3Vic2NyaWJlKCgpID0+IHRoaXMudXBkYXRlQ29tcG9uZW50c1Bvc2l0aW9uKCkpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5vbGRGdWxsQ29uZmlnID0gbmV3RnVsbENvbmZpZztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXNvbHZlIGFsbCBzZXJ2aWNlcywgdGhlbiBvcGVuIHBhbmVsc1xuICAgICAqL1xuICAgIHByaXZhdGUgb3BlblBhbmVscyhcbiAgICAgICAgbmV3SXRlbXNDb25maWc6IE5hdHVyYWxQYW5lbENvbmZpZ1tdLFxuICAgICAgICBmdWxsQ29uZmlnOiBOYXR1cmFsUGFuZWxDb25maWdbXSxcbiAgICApOiBPYnNlcnZhYmxlPE9ic2VydmFibGU8YW55PiB8IG51bGw+IHtcbiAgICAgICAgY29uc3Qgc3ViamVjdCA9IG5ldyBTdWJqZWN0PE9ic2VydmFibGU8YW55PiB8IG51bGw+KCk7XG5cbiAgICAgICAgLy8gUmVzb2x2ZSBldmVyeXRoaW5nIGJlZm9yZSBvcGVuaW5nIGEgc2luZ2xlIHBhbmVsXG4gICAgICAgIGNvbnN0IHJlc29sdmVzID0gbmV3SXRlbXNDb25maWcubWFwKChjb25mOiBOYXR1cmFsUGFuZWxDb25maWcpID0+IHRoaXMuZ2V0UmVzb2x2ZWREYXRhKGNvbmYpKTtcblxuICAgICAgICAvLyBGb3JrSm9pbiBlbWl0cyB3aGVuIGFsbCBwcm9taXNlcyBhcmUgZXhlY3V0ZWQ7XG4gICAgICAgIGZvcmtKb2luKHJlc29sdmVzKS5zdWJzY3JpYmUocmVzb2x2ZWRSZXN1bHQgPT4ge1xuICAgICAgICAgICAgLy8gRm9yIGVhY2ggbmV3IGNvbmZpZyBlbnRyeSwgb3BlbiBhIG5ldyBwYW5lbFxuICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBuZXdJdGVtc0NvbmZpZy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGNvbmZpZyA9IG5ld0l0ZW1zQ29uZmlnW2ldO1xuICAgICAgICAgICAgICAgIGxldCBpdGVtRGF0YTogTmF0dXJhbFBhbmVsRGF0YSA9IHtcbiAgICAgICAgICAgICAgICAgICAgLy8gQ29uZmlnIG9mIGFjdHVhbCBwYW5lbCByb3V0ZVxuICAgICAgICAgICAgICAgICAgICBjb25maWc6IGNvbmZpZyxcblxuICAgICAgICAgICAgICAgICAgICAvLyBEYXRhIHJlc29sdmVkIGJ5IHNlcnZpY2VcbiAgICAgICAgICAgICAgICAgICAgLy8gVXNlIGluIGNvbXBvbmVudCBieSBjYWxsaW5nIHRoaXMucGFuZWxEYXRhLmRhdGEueHl6XG4gICAgICAgICAgICAgICAgICAgIGRhdGE6IHJlc29sdmVkUmVzdWx0W2ldLFxuICAgICAgICAgICAgICAgICAgICBsaW5rYWJsZU9iamVjdHM6IFtdLFxuICAgICAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgICAgICBpZiAodGhpcy5ob29rc0NvbmZpZyAmJiB0aGlzLmhvb2tzQ29uZmlnLmJlZm9yZU9wZW5QYW5lbCkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBldmVudDogTmF0dXJhbFBhbmVsc0JlZm9yZU9wZW5QYW5lbCA9IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1EYXRhOiBpdGVtRGF0YSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhbmVsQ29uZmlnOiBjb25maWcsXG4gICAgICAgICAgICAgICAgICAgICAgICByZXNvbHZlZFJlc3VsdDogcmVzb2x2ZWRSZXN1bHQsXG4gICAgICAgICAgICAgICAgICAgICAgICBmdWxsUGFuZWxzQ29uZmlnOiBmdWxsQ29uZmlnLFxuICAgICAgICAgICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICAgICAgICAgIGl0ZW1EYXRhID0gdGhpcy5ob29rc0NvbmZpZy5iZWZvcmVPcGVuUGFuZWwodGhpcy5pbmplY3RvciwgZXZlbnQpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHRoaXMub3BlblBhbmVsKGNvbmZpZy5jb21wb25lbnQsIGl0ZW1EYXRhKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5kaWFsb2cub3BlbkRpYWxvZ3NbdGhpcy5kaWFsb2cub3BlbkRpYWxvZ3MubGVuZ3RoIC0gMV0uYWZ0ZXJPcGVuZWQoKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHN1YmplY3QubmV4dChudWxsKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gc3ViamVjdDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFJlc29sdmVkRGF0YShjb25maWc6IE5hdHVyYWxQYW5lbENvbmZpZyk6IE9ic2VydmFibGU8e1trZXk6IHN0cmluZ106IHVua25vd259PiB7XG4gICAgICAgIGlmICghY29uZmlnLnJlc29sdmUgfHwgKGNvbmZpZy5yZXNvbHZlICYmIE9iamVjdC5rZXlzKGNvbmZpZy5yZXNvbHZlKS5sZW5ndGggPT09IDApKSB7XG4gICAgICAgICAgICByZXR1cm4gb2Yoe30pO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgcmVzb2x2ZUtleXMgPSBPYmplY3Qua2V5cyhjb25maWcucmVzb2x2ZSk7XG4gICAgICAgIGNvbnN0IHJlc29sdmVkRGF0YToge1trZXk6IHN0cmluZ106IE9ic2VydmFibGU8dW5rbm93bj59ID0ge307XG4gICAgICAgIHJlc29sdmVLZXlzLmZvckVhY2goa2V5ID0+IHtcbiAgICAgICAgICAgIHJlc29sdmVkRGF0YVtrZXldID0gY29uZmlnLnJlc29sdmVba2V5XS5yZXNvbHZlKGNvbmZpZyk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiBmb3JrSm9pbihyZXNvbHZlZERhdGEpLnBpcGUoXG4gICAgICAgICAgICBtYXAocmVzdWx0ID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gKHJlc3VsdCBhcyBhbnkpLm1vZGVsIHx8IHJlc3VsdDtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgb3BlblBhbmVsPFQ+KGNvbXBvbmVudE9yVGVtcGxhdGVSZWY6IENvbXBvbmVudFR5cGU8TmF0dXJhbEFic3RyYWN0UGFuZWw+LCBkYXRhOiBOYXR1cmFsUGFuZWxEYXRhKTogYW55IHtcbiAgICAgICAgY29uc3QgY29uZjogTWF0RGlhbG9nQ29uZmlnID0ge1xuICAgICAgICAgICAgcGFuZWxDbGFzczogdGhpcy5wYW5lbENsYXNzLFxuICAgICAgICAgICAgY2xvc2VPbk5hdmlnYXRpb246IGZhbHNlLFxuICAgICAgICAgICAgaGFzQmFja2Ryb3A6IHRoaXMuZGlhbG9nLm9wZW5EaWFsb2dzLmxlbmd0aCA9PT0gMCxcbiAgICAgICAgICAgIGhlaWdodDogJzEwMCUnLFxuICAgICAgICAgICAgd2lkdGg6ICc5NjBweCcsXG4gICAgICAgICAgICBwb3NpdGlvbjoge1xuICAgICAgICAgICAgICAgIHRvcDogJzAnLFxuICAgICAgICAgICAgICAgIHJpZ2h0OiAnMCcsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW48TmF0dXJhbEFic3RyYWN0UGFuZWw+KGNvbXBvbmVudE9yVGVtcGxhdGVSZWYsIGNvbmYpO1xuXG4gICAgICAgIC8vIFBhbmVsaXNhYmxlIGludGVyZmFjZSBhdHRyaWJ1dGVzL2Z1bmN0aW9uc1xuICAgICAgICBkaWFsb2dSZWYuY29tcG9uZW50SW5zdGFuY2UuaW5pdFBhbmVsKGRhdGEpO1xuXG4gICAgICAgIGRpYWxvZ1JlZi5iZWZvcmVDbG9zZWQoKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgaW5kZXggPSB0aGlzLmdldFBhbmVsSW5kZXgoZGlhbG9nUmVmLmNvbXBvbmVudEluc3RhbmNlKTtcbiAgICAgICAgICAgIHRoaXMuZ29Ub1BhbmVsQnlJbmRleChpbmRleCAtIDEpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm4gcGFuZWwgcG9zaXRpb24gKGluZGV4KSBieSBzZWFyY2hpbmcgbWF0Y2hpbmcgY29tcG9uZW50XG4gICAgICovXG4gICAgcHJpdmF0ZSBnZXRQYW5lbEluZGV4KGNvbXBvbmVudDogTmF0dXJhbEFic3RyYWN0UGFuZWwpOiBudW1iZXIge1xuICAgICAgICBpZiAoIWNvbXBvbmVudCkge1xuICAgICAgICAgICAgcmV0dXJuIC0xO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuZGlhbG9nLm9wZW5EaWFsb2dzLmZpbmRJbmRleChkaWFsb2cgPT4gZGlhbG9nLmNvbXBvbmVudEluc3RhbmNlID09PSBjb21wb25lbnQpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlcG9zaXRpb25zIHBhbmVscyBmcm9tIHN0YXJ0IHVudGlsIGdpdmVuIGluZGV4XG4gICAgICovXG4gICAgcHJpdmF0ZSB1cGRhdGVDb21wb25lbnRzUG9zaXRpb24oKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5kaWFsb2cub3BlbkRpYWxvZ3MubGVuZ3RoKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTZWxlY3QgdGhlIHBhbmVscyB0aGF0IGFyZSBzdGlsbCBvcGVuZWQsIGlnbm9yZSB0aGUgb3RoZXJzIGJlY2F1c2UgdGhleSdsbCBiZSBjbG9zZWRcbiAgICAgICAgY29uc3QgYWZmZWN0ZWRFbGVtZW50cyA9IHRoaXMuZGlhbG9nLm9wZW5EaWFsb2dzO1xuXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYWZmZWN0ZWRFbGVtZW50cy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgY29uc3QgZGlhbG9nID0gYWZmZWN0ZWRFbGVtZW50c1tpXTtcblxuICAgICAgICAgICAgLy8gU2V0IGFsbCBwYW5lbHMgYXMgXCJoaWRkZW5cIiBleGNlcHQgbGFzdCBvbmUuIElzRnJvbnRQYW5lbCBhdHRyaWJ1dGUgY2F1c2VzIGEgQ1NTIHRoYXQgaGlkZXMgYm9keSB2aWEgaG9zdGJpbmRpbmdcbiAgICAgICAgICAgIGRpYWxvZy5jb21wb25lbnRJbnN0YW5jZS5pc0Zyb250UGFuZWwgPSBpID09PSBhZmZlY3RlZEVsZW1lbnRzLmxlbmd0aCAtIDE7XG4gICAgICAgICAgICBkaWFsb2cuY29tcG9uZW50SW5zdGFuY2UucGFuZWxTZXJ2aWNlID0gdGhpcztcblxuICAgICAgICAgICAgLy8gQXNzaWduIG9mZnNldFxuICAgICAgICAgICAgY29uc3QgZGVlcCA9IGFmZmVjdGVkRWxlbWVudHMubGVuZ3RoIC0gMSAtIGk7XG5cbiAgICAgICAgICAgIGxldCBwb3NpdGlvbjogYW55ID0ge3JpZ2h0OiBkZWVwICogdGhpcy5wYW5lbHNPZmZzZXRIICsgJ3B4J307XG4gICAgICAgICAgICBpZiAodGhpcy5tZWRpYSA9PT0gJ3hzJyAmJiBhZmZlY3RlZEVsZW1lbnRzLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbiA9IHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiBpICogdGhpcy5wYW5lbHNPZmZzZXRWICsgJ3B4JyxcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6ICcwcHgnLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGRpYWxvZy51cGRhdGVQb3NpdGlvbihwb3NpdGlvbik7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
|
|
325
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFuZWxzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uYXR1cmFsL3NyYy9saWIvbW9kdWxlcy9wYW5lbHMvcGFuZWxzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLE1BQU0sRUFBRSxVQUFVLEVBQVcsTUFBTSxlQUFlLENBQUM7QUFHM0QsT0FBTyxFQUFpQixvQkFBb0IsRUFBRSxlQUFlLEVBQXFCLE1BQU0saUJBQWlCLENBQUM7QUFDMUcsT0FBTyxFQUFDLGNBQWMsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFDLE1BQU0sV0FBVyxDQUFDO0FBQzNELE9BQU8sRUFBQyxRQUFRLEVBQWMsRUFBRSxFQUFFLE9BQU8sRUFBZSxNQUFNLE1BQU0sQ0FBQztBQUNyRSxPQUFPLEVBQUMsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFFbkMsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELE9BQU8sRUFNSCxpQkFBaUIsR0FDcEIsTUFBTSxTQUFTLENBQUM7Ozs7O0FBRWpCLFNBQVMsZ0JBQWdCLENBQUMsUUFBc0I7SUFDNUMsT0FBTyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ3JELENBQUM7QUFFRCxTQUFTLGNBQWMsQ0FBQyxDQUFxQixFQUFFLENBQXFCO0lBQ2hFLE9BQU8sQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLElBQUksS0FBSyxDQUFDLENBQUMsSUFBSSxJQUFJLE9BQU8sQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUM3RixDQUFDO0FBRUQ7OztH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cGV9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHtJbmplY3QsIEluamVjdGFibGUsIEluamVjdG9yfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TWVkaWFPYnNlcnZlcn0gZnJvbSAnQGFuZ3VsYXIvZmxleC1sYXlvdXQnO1xuaW1wb3J0IHtNYXREaWFsb2csIE1hdERpYWxvZ0NvbmZpZ30gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7QWN0aXZhdGVkUm91dGUsIERlZmF1bHRVcmxTZXJpYWxpemVyLCBOYXZpZ2F0aW9uRXJyb3IsIFJvdXRlciwgVXJsU2VnbWVudH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7ZGlmZmVyZW5jZVdpdGgsIGZsYXR0ZW4sIGlzRXF1YWx9IGZyb20gJ2xvZGFzaC1lcyc7XG5pbXBvcnQge2ZvcmtKb2luLCBPYnNlcnZhYmxlLCBvZiwgU3ViamVjdCwgU3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge05hdHVyYWxBYnN0cmFjdFBhbmVsfSBmcm9tICcuL2Fic3RyYWN0LXBhbmVsJztcbmltcG9ydCB7Z2V0U3RhY2tDb25maWd9IGZyb20gJy4vcGFuZWxzLnVybG1hdGNoZXInO1xuaW1wb3J0IHtcbiAgICBOYXR1cmFsUGFuZWxDb25maWcsXG4gICAgTmF0dXJhbFBhbmVsRGF0YSxcbiAgICBOYXR1cmFsUGFuZWxzQmVmb3JlT3BlblBhbmVsLFxuICAgIE5hdHVyYWxQYW5lbHNIb29rc0NvbmZpZyxcbiAgICBOYXR1cmFsUGFuZWxzUm91dGVyUnVsZSxcbiAgICBQYW5lbHNIb29rc0NvbmZpZyxcbn0gZnJvbSAnLi90eXBlcyc7XG5cbmZ1bmN0aW9uIHNlZ21lbnRzVG9TdHJpbmcoc2VnbWVudHM6IFVybFNlZ21lbnRbXSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHNlZ21lbnRzLm1hcChzID0+IHMudG9TdHJpbmcoKSkuam9pbignLycpO1xufVxuXG5mdW5jdGlvbiBjb21wYXJlQ29uZmlncyhhOiBOYXR1cmFsUGFuZWxDb25maWcsIGI6IE5hdHVyYWxQYW5lbENvbmZpZyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBhLnJvdXRlLnBhdGggPT09IGIucm91dGUucGF0aCAmJiBhLnJ1bGUgPT09IGIucnVsZSAmJiBpc0VxdWFsKGEucGFyYW1zLCBiLnBhcmFtcyk7XG59XG5cbi8qKlxuICogVE9ETzogaW1wbGVtZW50IHJvdXRlIHVwZGF0ZSB3aGVuIGNsb3NpbmcgZGlhbG9nIHdpdGggZXNjYXBlXG4gKiBAZHluYW1pY1xuICovXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBOYXR1cmFsUGFuZWxzU2VydmljZSB7XG4gICAgLyoqXG4gICAgICogQmVjYXVzZSBvZiB0aGlzIHN0YXRpYyBwcm9wZXJ0eSBQYW5lbHMgYXJlICoqbm90KiogY29tcGF0aWJsZSB3aXRoIFNTUi5cbiAgICAgKiBBbmQgd2UgY2Fubm90IG1ha2UgaXQgbm9uLXN0YXRpYywgYmVjYXVzZSBgVXJsTWF0Y2hlcmAgY2Fubm90IGJlIGluamVjdGVkLlxuICAgICAqL1xuICAgIHByaXZhdGUgc3RhdGljIF9vcGVuZWQgPSBmYWxzZTtcbiAgICBwdWJsaWMgc3RhdGljIGdldCBvcGVuZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9vcGVuZWQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU3RyZWFtIHRoYXQgZW1pdHMgd2hlbiBhbGwgb3BlbiBkaWFsb2cgaGF2ZSBmaW5pc2hlZCBjbG9zaW5nXG4gICAgICovXG4gICAgcHVibGljIGFmdGVyQWxsQ2xvc2VkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgICAvKipcbiAgICAgKiBDYWNoZSBmb3IgcGFuZWxzIGNvdW50ZXIuIFdvcmtzIG1vcmUgbGlrZSBhbiBJRC5cbiAgICAgKiBJcyB1c2VkIHRvIGdpdmUgYW4gdW5pcXVlIGlkZW50aWZpZXIgdG8gbXVsdGlwbGUgc2ltaWxhciBwYW5lbHMgY29uZmlndXJhdGlvbnNcbiAgICAgKi9cbiAgICBwcml2YXRlIGNvdW50ZXIgPSAxO1xuICAgIC8qKlxuICAgICAqIENsYXNzIGFwcGxpZWQgdG8gZGlhbG9nIG92ZXJsYXkgcmVsYXRlZCB3aXRoIHBhbmVsc1xuICAgICAqIElmIGNoYW5nZSwgY2hhbmdlIENTUyB0b29cbiAgICAgKi9cbiAgICBwcml2YXRlIHBhbmVsQ2xhc3MgPSAncGFuZWwnO1xuXG4gICAgLyoqXG4gICAgICogQ2FjaGUgZm9yIHBhbmVscyBzZXR1cCBiZWZvcmUgbmF2aWdhdGlvbiBjaGFuZ2UuXG4gICAgICogVXNlZCB0byBkZXRlY3QgcGFuZWxzIG9wZW5pbmdzL2Nsb3NpbmdzIGFuZCBhZGFwdCBmb3IgbmV3IGNvbmZpZ3VyYXRpb25cbiAgICAgKi9cbiAgICBwcml2YXRlIG9sZEZ1bGxDb25maWc6IE5hdHVyYWxQYW5lbENvbmZpZ1tdID0gW107XG5cbiAgICAvKipcbiAgICAgKiBDYWNoZSBmb3Igc3Vic2NyaXB0aW9uIHN0b3BcbiAgICAgKi9cbiAgICBwcml2YXRlIHJvdXRlU3ViPzogU3Vic2NyaXB0aW9uO1xuXG4gICAgLyoqXG4gICAgICogQ2FjaGUgZm9yIHN1YnNjcmlwdGlvbiBzdG9wXG4gICAgICovXG4gICAgcHJpdmF0ZSBuYXZTdWI/OiBTdWJzY3JpcHRpb247XG5cbiAgICAvKipcbiAgICAgKiBIb3Jpem9udGFsIGdhcHMgYmV0d2VlbiBwYW5lbHNcbiAgICAgKi9cbiAgICBwcml2YXRlIHBhbmVsc09mZnNldEggPSAzNTtcblxuICAgIC8qKlxuICAgICAqIFZlcnRpY2FsIGdhcHMgYmV0d2VlbiBwYW5lbHNcbiAgICAgKi9cbiAgICBwcml2YXRlIHBhbmVsc09mZnNldFYgPSA0MDtcblxuICAgIC8qKlxuICAgICAqIENhY2hlIG9mIHByZXZpb3VzIHNjcmVlbiBzaXplXG4gICAgICogVXNlZCB0byBjaGFuZ2UgcGFuZWxzIHN0YWNrIG9yaWVudGF0aW9uIG9uIHNtYWxsIHNjcmVlbnNcbiAgICAgKi9cbiAgICBwcml2YXRlIG1lZGlhOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZXI6IFJvdXRlcixcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBkaWFsb2c6IE1hdERpYWxvZyxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgICAgIEBJbmplY3QoUGFuZWxzSG9va3NDb25maWcpIHByaXZhdGUgaG9va3NDb25maWc6IE5hdHVyYWxQYW5lbHNIb29rc0NvbmZpZyxcbiAgICAgICAgcHJpdmF0ZSBtZWRpYVNlcnZpY2U6IE1lZGlhT2JzZXJ2ZXIsXG4gICAgKSB7XG4gICAgICAgIC8vIFdhdGNoIG1lZGlhIHRvIGtub3cgaWYgZGlzcGxheSBwYW5lbHMgaG9yaXpvbnRhbGx5IG9yIHZlcnRpY2FsbHlcbiAgICAgICAgdGhpcy5tZWRpYVNlcnZpY2UuYXNPYnNlcnZhYmxlKCkuc3Vic2NyaWJlKG1lZGlhcyA9PiB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IG1lZGlhIG9mIG1lZGlhcykge1xuICAgICAgICAgICAgICAgIGlmICghdGhpcy5tZWRpYSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm1lZGlhID0gbWVkaWEubXFBbGlhcztcbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMubWVkaWEgIT09IG1lZGlhLm1xQWxpYXMpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5tZWRpYSA9IG1lZGlhLm1xQWxpYXM7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlQ29tcG9uZW50c1Bvc2l0aW9uKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhcnQocm91dGU6IEFjdGl2YXRlZFJvdXRlKTogdm9pZCB7XG4gICAgICAgIE5hdHVyYWxQYW5lbHNTZXJ2aWNlLl9vcGVuZWQgPSB0cnVlO1xuICAgICAgICB0aGlzLnJvdXRlU3ViID0gcm91dGUudXJsLnN1YnNjcmliZShzZWdtZW50cyA9PiB7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVBhbmVscyhzZWdtZW50cywgcm91dGUuc25hcHNob3QuZGF0YS5wYW5lbHNSb3V0ZXMpO1xuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLm5hdlN1YiA9IHRoaXMucm91dGVyLmV2ZW50cy5zdWJzY3JpYmUoZXYgPT4ge1xuICAgICAgICAgICAgaWYgKCEoZXYgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRXJyb3IpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBBYm9ydCBhbmQgcHJvcGFnYXRlIG5hdmlnYXRpb24gZXJyb3JcbiAgICAgICAgICAgIGlmIChldi51cmwuZW5kc1dpdGgoJy8nKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuc3RvcCgpO1xuXG4gICAgICAgICAgICAgICAgLy8gVGhpcyBpcyBhIGJpdCBoYWNraXNoOiB3ZSBoYXJkY29kZSBhbiBpbXBvc3NpYmxlIHVybCB0byB0cmlnZ2VyIG5vcm1hbCBuYXZpZ2F0aW9uIGVycm9yIG1lY2hhbmlzbVxuICAgICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoJ3BhbmVscy1yZWFjaGVkLWludmFsaWQtdXJsJyk7XG5cbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuY291bnRlcisrO1xuXG4gICAgICAgICAgICAvLyBwYyBzdGFuZHMgZm9yIFwicGFuZWwgY291bnRlclwiLCByZXF1aXJlZCB0byBnaXZlIGFuIGlkZW50aWZpY2F0aW9uIHRvIHBhbmVscyB3aXRoIGV4YWN0IHNhbWUgY29uZmlnXG4gICAgICAgICAgICAvLyBFLmcgL25ld1xuICAgICAgICAgICAgY29uc3Qgd2FudGVkVXJsID0gZXYudXJsICsgJztwYz0nICsgdGhpcy5jb3VudGVyO1xuXG4gICAgICAgICAgICAvLyBTZWdtZW50cyBtYXRjaGluZyBmcm9tIHdhbnRlZCB1cmwuIEUuZyB+IFsnbmV3J11cbiAgICAgICAgICAgIGNvbnN0IHdhbnRlZFVyU2VnbWVudHMgPSBuZXcgRGVmYXVsdFVybFNlcmlhbGl6ZXIoKS5wYXJzZSh3YW50ZWRVcmwpLnJvb3QuY2hpbGRyZW4ucHJpbWFyeS5zZWdtZW50cztcblxuICAgICAgICAgICAgLy8gRG9uJ3QgbWF0Y2ggYW55IGNvbmZpZ1xuICAgICAgICAgICAgY29uc3Qgd2FudGVkQ29uZmlnID0gZ2V0U3RhY2tDb25maWcod2FudGVkVXJTZWdtZW50cywgcm91dGUuc25hcHNob3QuZGF0YS5wYW5lbHNSb3V0ZXMsIHRoaXMuaW5qZWN0b3IpO1xuXG4gICAgICAgICAgICBpZiAod2FudGVkQ29uZmlnLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmFwcGVuZENvbmZpZ1RvQ3VycmVudFVybCh3YW50ZWRDb25maWcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBDdXJyZW50bHkgYWN0aXZhdGVkIHJvdXRlcy4gRS5nIFsnb2JqZWN0aXZlJywgJ29iamVjdGl2ZScsIDEyMywgJ3Jpc2snXVxuICAgICAgICAgICAgY29uc3QgY3VycmVudFNlZ21lbnRzID0gZmxhdHRlbihcbiAgICAgICAgICAgICAgICB0aGlzLmRpYWxvZy5vcGVuRGlhbG9ncy5tYXAoZCA9PiBkLmNvbXBvbmVudEluc3RhbmNlLnBhbmVsRGF0YS5jb25maWcucm91dGUuc2VnbWVudHMpLFxuICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgLy8gTGFzdCBzZWdtZW50LiBFLmcgWydyaXNrJ11cbiAgICAgICAgICAgIGNvbnN0IGxhc3RPZkN1cnJlbnRTZWdtZW50cyA9IGN1cnJlbnRTZWdtZW50cy5zbGljZSgtMSk7XG5cbiAgICAgICAgICAgIC8vIENvbmZpZyBmb3IgWydyaXNrJywgJ25ldyddXG4gICAgICAgICAgICBjb25zdCBjdXJyZW50QW5kV2FudGVkQ29uZmlnID0gZ2V0U3RhY2tDb25maWcoXG4gICAgICAgICAgICAgICAgbGFzdE9mQ3VycmVudFNlZ21lbnRzLmNvbmNhdCh3YW50ZWRVclNlZ21lbnRzKSxcbiAgICAgICAgICAgICAgICByb3V0ZS5zbmFwc2hvdC5kYXRhLnBhbmVsc1JvdXRlcyxcbiAgICAgICAgICAgICAgICB0aGlzLmluamVjdG9yLFxuICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuYXBwZW5kQ29uZmlnVG9DdXJyZW50VXJsKGN1cnJlbnRBbmRXYW50ZWRDb25maWcpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBVc2VzIGdpdmVuIGNvbmZpZ3VyYXRpb24gdG8gYWRkIGluIHRoZSBlbmQgb2YgY3VycmVudCB1cmxcbiAgICAgKiBOZXV0cmFsaXplcyByb3V0ZXIgZXJyb3IgaGFuZGxpbmdcbiAgICAgKi9cbiAgICBwcml2YXRlIGFwcGVuZENvbmZpZ1RvQ3VycmVudFVybChjb25maWc6IE5hdHVyYWxQYW5lbENvbmZpZ1tdKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IG9yaWdpbmFsRXJyb3JIYW5kbGVyID0gdGhpcy5yb3V0ZXIuZXJyb3JIYW5kbGVyO1xuXG4gICAgICAgIC8vIE51bGxpZnkgZXJyb3IgaGFuZGxlciAod2lsbCBiZSBkZS1uZXV0cmFsaXplZCBhZnRlciByb3V0ZSByZWRpcmVjdGlvbilcbiAgICAgICAgaWYgKGNvbmZpZykge1xuICAgICAgICAgICAgdGhpcy5yb3V0ZXIuZXJyb3JIYW5kbGVyID0gKCkgPT4gdW5kZWZpbmVkO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gTmF2aWdhdGUgdG8gc2FtZSB1cmwgKyAvcmlzay9uZXcgUmVzdWx0IDogL3Jpc2svcmlzay9uZXdcbiAgICAgICAgY29uc3QgbmV3VXJsID0gY29uZmlnLm1hcChjb25mID0+IHNlZ21lbnRzVG9TdHJpbmcoY29uZi5yb3V0ZS5zZWdtZW50cykpLmpvaW4oJy8nKTtcblxuICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKHRoaXMucm91dGVyLnVybCArICcvJyArIG5ld1VybCkudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAvLyBBZnRlciBuYXZpZ2F0aW9uIGhhcyBlbmRlZCwgcmVzdG9yZSBvcmlnaW5hbCBlcnJvciBoYW5kbGVyIGJlY2F1c2UgaGUncyBub3QgYSBiYWQgZ3V5XG4gICAgICAgICAgICB0aGlzLnJvdXRlci5lcnJvckhhbmRsZXIgPSBvcmlnaW5hbEVycm9ySGFuZGxlcjtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0b3AoKTogdm9pZCB7XG4gICAgICAgIE5hdHVyYWxQYW5lbHNTZXJ2aWNlLl9vcGVuZWQgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5yb3V0ZVN1Yj8udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy5uYXZTdWI/LnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMuZGlhbG9nLmNsb3NlQWxsKCk7XG4gICAgICAgIHRoaXMub2xkRnVsbENvbmZpZyA9IFtdO1xuICAgICAgICB0aGlzLmFmdGVyQWxsQ2xvc2VkLm5leHQoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHbyB0byBwYW5lbCBtYXRjaGluZyBnaXZlbiBjb21wb25lbnQuIENhdXNlcyBhbiB1cmwgY2hhbmdlLlxuICAgICAqL1xuICAgIHB1YmxpYyBnb1RvUGFuZWxCeUNvbXBvbmVudChjb21wb25lbnQ6IE5hdHVyYWxBYnN0cmFjdFBhbmVsKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZ29Ub1BhbmVsQnlJbmRleCh0aGlzLmdldFBhbmVsSW5kZXgoY29tcG9uZW50KSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR28gdG8gcGFuZWwgbWF0Y2hpbmcgZ2l2ZW4gY29tcG9uZW50LiBDYXVzZXMgYW4gdXJsIGNoYW5nZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgZ29Ub1BlbnVsdGltYXRlUGFuZWwoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZ29Ub1BhbmVsQnlJbmRleCh0aGlzLmRpYWxvZy5vcGVuRGlhbG9ncy5sZW5ndGggLSAyKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDYWxscyB0aGUgbmV3IHVybCB0aGF0IG9ubHkgaW5jbHVkZXMgdGhlIHNlZ21lbnRzIGZyb20gdGhlIHBhbmVscyB3ZSB3YW50IHRvIHN0YXkgb3BlblxuICAgICAqL1xuICAgIHByaXZhdGUgZ29Ub1BhbmVsQnlJbmRleChpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIC8vIEV4dHJhY3RzIHVybCBzZWdtZW50cyBmcm9tIG5leHQgcGFuZWwgdW50aWwgbGFzdCBvbmVcbiAgICAgICAgY29uc3QgdXJsID0gdGhpcy5kaWFsb2cub3BlbkRpYWxvZ3NcbiAgICAgICAgICAgIC5zbGljZShpbmRleCArIDEpXG4gICAgICAgICAgICAubWFwKGRpYWxvZyA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHNlZ21lbnRzVG9TdHJpbmcoZGlhbG9nLmNvbXBvbmVudEluc3RhbmNlLnBhbmVsRGF0YS5jb25maWcucm91dGUuc2VnbWVudHMpO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5qb2luKCcvJyk7XG5cbiAgICAgICAgLy8gUmVtb3ZlIGV4dHJhIHNlZ21lbnRzIGFuZCByZWRpcmVjdHMgdG8gcm9vdFxuICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKHRoaXMucm91dGVyLnVybC5yZXBsYWNlKCcvJyArIHVybCwgJycpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZWxlY3RpbmcgYSBwYW5lbCBpcyBlcXVpdmFsZW50IHRvIGNsb3NlIGFsbCB0aG9zZSB0aGF0IGFyZSBpbiBmcm9udCBvZiBoaW1cbiAgICAgKiBAcGFyYW0gaW5kZXggb2YgcGFuZWwgaW4gc3RhY2suIFRoZSBtb3N0IGJlaGluZCAodGhlIGZpcnN0IG9uZSkgaXMgMC5cbiAgICAgKi9cbiAgICBwcml2YXRlIHNlbGVjdFBhbmVsQnlJbmRleChpbmRleDogbnVtYmVyKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgICAgIGNvbnN0IGxhc3REaWFsb2cgPSB0aGlzLmRpYWxvZy5vcGVuRGlhbG9nc1t0aGlzLmRpYWxvZy5vcGVuRGlhbG9ncy5sZW5ndGggLSAxXTtcblxuICAgICAgICAvLyBVcGRhdGUgbmV3IHBhbmVscyBzZXQgcG9zaXRpb25zXG4gICAgICAgIHRoaXMudXBkYXRlQ29tcG9uZW50c1Bvc2l0aW9uKCk7XG5cbiAgICAgICAgZm9yIChsZXQgaSA9IHRoaXMuZGlhbG9nLm9wZW5EaWFsb2dzLmxlbmd0aCAtIDE7IGkgPj0gaW5kZXggKyAxOyBpLS0pIHtcbiAgICAgICAgICAgIHRoaXMuZGlhbG9nLm9wZW5EaWFsb2dzW2ldLmNsb3NlKCk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gbGFzdERpYWxvZy5hZnRlckNsb3NlZCgpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIE9wZW4gbmV3IHBhbmVscyBpZiB1cmwgaGFzIGNoYW5nZWQgd2l0aCBuZXcgc2VnbWVudHNcbiAgICAgKi9cbiAgICBwcml2YXRlIHVwZGF0ZVBhbmVscyhzZWdtZW50czogVXJsU2VnbWVudFtdLCByb3V0ZXM6IE5hdHVyYWxQYW5lbHNSb3V0ZXJSdWxlW10pOiB2b2lkIHtcbiAgICAgICAgLy8gVHJhbnNmb3JtIHVybCBzZWdtZW50cyBpbnRvIGEgY29uZmlnIHdpdGggY29tcG9uZW50IG5hbWUgYW5kIElEIGlmIHByb3ZpZGVkIGluIG5leHQgc2VnbWVudFxuICAgICAgICAvLyBSZXR1cm5zIGFuIGFycmF5IG9mIGNvbmZpZ3MsIGVhY2ggY29uZmlnIHJlcHJlc2VudHMgdGhlIGNvbnRlbnQgcmVsYXRpdmUgdG8gYSBwYW5lbFxuICAgICAgICBjb25zdCBuZXdGdWxsQ29uZmlnID0gZ2V0U3RhY2tDb25maWcoc2VnbWVudHMsIHJvdXRlcywgdGhpcy5pbmplY3Rvcik7XG4gICAgICAgIGNvbnN0IGNvbmZpZ3NUb1JlbW92ZSA9IGRpZmZlcmVuY2VXaXRoKHRoaXMub2xkRnVsbENvbmZpZywgbmV3RnVsbENvbmZpZywgY29tcGFyZUNvbmZpZ3MpO1xuICAgICAgICBjb25zdCBjb25maWdzVG9BZGQgPSBkaWZmZXJlbmNlV2l0aChuZXdGdWxsQ29uZmlnLCB0aGlzLm9sZEZ1bGxDb25maWcsIGNvbXBhcmVDb25maWdzKTtcblxuICAgICAgICBjb25zdCBpbmRleE9mTmV4dFBhbmVsID0gdGhpcy5vbGRGdWxsQ29uZmlnLmxlbmd0aCAtIGNvbmZpZ3NUb1JlbW92ZS5sZW5ndGggLSAxO1xuXG4gICAgICAgIGlmIChjb25maWdzVG9SZW1vdmUubGVuZ3RoICYmIGNvbmZpZ3NUb0FkZC5sZW5ndGgpIHtcbiAgICAgICAgICAgIC8vIEFkZCBhbmQgcmVtb3ZlIHBhbmVsc1xuICAgICAgICAgICAgdGhpcy5zZWxlY3RQYW5lbEJ5SW5kZXgoaW5kZXhPZk5leHRQYW5lbCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLm9wZW5QYW5lbHMoY29uZmlnc1RvQWRkLCBuZXdGdWxsQ29uZmlnKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy51cGRhdGVDb21wb25lbnRzUG9zaXRpb24oKSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIGlmIChjb25maWdzVG9SZW1vdmUubGVuZ3RoICYmICFjb25maWdzVG9BZGQubGVuZ3RoKSB7XG4gICAgICAgICAgICAvLyBvbmx5IHJlbW92ZSBwYW5lbHNcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0UGFuZWxCeUluZGV4KGluZGV4T2ZOZXh0UGFuZWwpLnN1YnNjcmliZSgoKSA9PiB0aGlzLnVwZGF0ZUNvbXBvbmVudHNQb3NpdGlvbigpKTtcbiAgICAgICAgfSBlbHNlIGlmICghY29uZmlnc1RvUmVtb3ZlLmxlbmd0aCAmJiBjb25maWdzVG9BZGQubGVuZ3RoKSB7XG4gICAgICAgICAgICAvLyBvbmx5IGFkZCBwYW5lbHNcbiAgICAgICAgICAgIHRoaXMub3BlblBhbmVscyhjb25maWdzVG9BZGQsIG5ld0Z1bGxDb25maWcpLnN1YnNjcmliZSgoKSA9PiB0aGlzLnVwZGF0ZUNvbXBvbmVudHNQb3NpdGlvbigpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMub2xkRnVsbENvbmZpZyA9IG5ld0Z1bGxDb25maWc7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVzb2x2ZSBhbGwgc2VydmljZXMsIHRoZW4gb3BlbiBwYW5lbHNcbiAgICAgKi9cbiAgICBwcml2YXRlIG9wZW5QYW5lbHMoXG4gICAgICAgIG5ld0l0ZW1zQ29uZmlnOiBOYXR1cmFsUGFuZWxDb25maWdbXSxcbiAgICAgICAgZnVsbENvbmZpZzogTmF0dXJhbFBhbmVsQ29uZmlnW10sXG4gICAgKTogT2JzZXJ2YWJsZTxPYnNlcnZhYmxlPGFueT4gfCBudWxsPiB7XG4gICAgICAgIGNvbnN0IHN1YmplY3QgPSBuZXcgU3ViamVjdDxPYnNlcnZhYmxlPGFueT4gfCBudWxsPigpO1xuXG4gICAgICAgIC8vIFJlc29sdmUgZXZlcnl0aGluZyBiZWZvcmUgb3BlbmluZyBhIHNpbmdsZSBwYW5lbFxuICAgICAgICBjb25zdCByZXNvbHZlcyA9IG5ld0l0ZW1zQ29uZmlnLm1hcCgoY29uZjogTmF0dXJhbFBhbmVsQ29uZmlnKSA9PiB0aGlzLmdldFJlc29sdmVkRGF0YShjb25mKSk7XG5cbiAgICAgICAgLy8gRm9ya0pvaW4gZW1pdHMgd2hlbiBhbGwgcHJvbWlzZXMgYXJlIGV4ZWN1dGVkO1xuICAgICAgICBmb3JrSm9pbihyZXNvbHZlcykuc3Vic2NyaWJlKHJlc29sdmVkUmVzdWx0ID0+IHtcbiAgICAgICAgICAgIC8vIEZvciBlYWNoIG5ldyBjb25maWcgZW50cnksIG9wZW4gYSBuZXcgcGFuZWxcbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbmV3SXRlbXNDb25maWcubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgICBjb25zdCBjb25maWcgPSBuZXdJdGVtc0NvbmZpZ1tpXTtcbiAgICAgICAgICAgICAgICBsZXQgaXRlbURhdGE6IE5hdHVyYWxQYW5lbERhdGEgPSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIENvbmZpZyBvZiBhY3R1YWwgcGFuZWwgcm91dGVcbiAgICAgICAgICAgICAgICAgICAgY29uZmlnOiBjb25maWcsXG5cbiAgICAgICAgICAgICAgICAgICAgLy8gRGF0YSByZXNvbHZlZCBieSBzZXJ2aWNlXG4gICAgICAgICAgICAgICAgICAgIC8vIFVzZSBpbiBjb21wb25lbnQgYnkgY2FsbGluZyB0aGlzLnBhbmVsRGF0YS5kYXRhLnh5elxuICAgICAgICAgICAgICAgICAgICBkYXRhOiByZXNvbHZlZFJlc3VsdFtpXSxcbiAgICAgICAgICAgICAgICAgICAgbGlua2FibGVPYmplY3RzOiBbXSxcbiAgICAgICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuaG9va3NDb25maWcgJiYgdGhpcy5ob29rc0NvbmZpZy5iZWZvcmVPcGVuUGFuZWwpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZXZlbnQ6IE5hdHVyYWxQYW5lbHNCZWZvcmVPcGVuUGFuZWwgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtRGF0YTogaXRlbURhdGEsXG4gICAgICAgICAgICAgICAgICAgICAgICBwYW5lbENvbmZpZzogY29uZmlnLFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZWRSZXN1bHQ6IHJlc29sdmVkUmVzdWx0LFxuICAgICAgICAgICAgICAgICAgICAgICAgZnVsbFBhbmVsc0NvbmZpZzogZnVsbENvbmZpZyxcbiAgICAgICAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICAgICAgICBpdGVtRGF0YSA9IHRoaXMuaG9va3NDb25maWcuYmVmb3JlT3BlblBhbmVsKHRoaXMuaW5qZWN0b3IsIGV2ZW50KTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB0aGlzLm9wZW5QYW5lbChjb25maWcuY29tcG9uZW50LCBpdGVtRGF0YSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuZGlhbG9nLm9wZW5EaWFsb2dzW3RoaXMuZGlhbG9nLm9wZW5EaWFsb2dzLmxlbmd0aCAtIDFdLmFmdGVyT3BlbmVkKCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICBzdWJqZWN0Lm5leHQobnVsbCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgcmV0dXJuIHN1YmplY3Q7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRSZXNvbHZlZERhdGEoY29uZmlnOiBOYXR1cmFsUGFuZWxDb25maWcpOiBPYnNlcnZhYmxlPHtba2V5OiBzdHJpbmddOiB1bmtub3dufT4ge1xuICAgICAgICBpZiAoIWNvbmZpZy5yZXNvbHZlIHx8IChjb25maWcucmVzb2x2ZSAmJiBPYmplY3Qua2V5cyhjb25maWcucmVzb2x2ZSkubGVuZ3RoID09PSAwKSkge1xuICAgICAgICAgICAgcmV0dXJuIG9mKHt9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHJlc29sdmVLZXlzID0gT2JqZWN0LmtleXMoY29uZmlnLnJlc29sdmUpO1xuICAgICAgICBjb25zdCByZXNvbHZlZERhdGE6IHtba2V5OiBzdHJpbmddOiBPYnNlcnZhYmxlPHVua25vd24+fSA9IHt9O1xuICAgICAgICByZXNvbHZlS2V5cy5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgICByZXNvbHZlZERhdGFba2V5XSA9IGNvbmZpZy5yZXNvbHZlW2tleV0ucmVzb2x2ZShjb25maWcpO1xuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gZm9ya0pvaW4ocmVzb2x2ZWREYXRhKS5waXBlKFxuICAgICAgICAgICAgbWFwKHJlc3VsdCA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIChyZXN1bHQgYXMgYW55KS5tb2RlbCB8fCByZXN1bHQ7XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIG9wZW5QYW5lbChjb21wb25lbnRPclRlbXBsYXRlUmVmOiBDb21wb25lbnRUeXBlPE5hdHVyYWxBYnN0cmFjdFBhbmVsPiwgZGF0YTogTmF0dXJhbFBhbmVsRGF0YSk6IHZvaWQge1xuICAgICAgICBjb25zdCBjb25mOiBNYXREaWFsb2dDb25maWcgPSB7XG4gICAgICAgICAgICBwYW5lbENsYXNzOiB0aGlzLnBhbmVsQ2xhc3MsXG4gICAgICAgICAgICBjbG9zZU9uTmF2aWdhdGlvbjogZmFsc2UsXG4gICAgICAgICAgICBoYXNCYWNrZHJvcDogdGhpcy5kaWFsb2cub3BlbkRpYWxvZ3MubGVuZ3RoID09PSAwLFxuICAgICAgICAgICAgaGVpZ2h0OiAnMTAwJScsXG4gICAgICAgICAgICB3aWR0aDogJzk2MHB4JyxcbiAgICAgICAgICAgIHBvc2l0aW9uOiB7XG4gICAgICAgICAgICAgICAgdG9wOiAnMCcsXG4gICAgICAgICAgICAgICAgcmlnaHQ6ICcwJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH07XG5cbiAgICAgICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbjxOYXR1cmFsQWJzdHJhY3RQYW5lbD4oY29tcG9uZW50T3JUZW1wbGF0ZVJlZiwgY29uZik7XG5cbiAgICAgICAgLy8gUGFuZWxpc2FibGUgaW50ZXJmYWNlIGF0dHJpYnV0ZXMvZnVuY3Rpb25zXG4gICAgICAgIGRpYWxvZ1JlZi5jb21wb25lbnRJbnN0YW5jZS5pbml0UGFuZWwoZGF0YSk7XG5cbiAgICAgICAgZGlhbG9nUmVmLmJlZm9yZUNsb3NlZCgpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMuZ2V0UGFuZWxJbmRleChkaWFsb2dSZWYuY29tcG9uZW50SW5zdGFuY2UpO1xuICAgICAgICAgICAgdGhpcy5nb1RvUGFuZWxCeUluZGV4KGluZGV4IC0gMSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybiBwYW5lbCBwb3NpdGlvbiAoaW5kZXgpIGJ5IHNlYXJjaGluZyBtYXRjaGluZyBjb21wb25lbnRcbiAgICAgKi9cbiAgICBwcml2YXRlIGdldFBhbmVsSW5kZXgoY29tcG9uZW50OiBOYXR1cmFsQWJzdHJhY3RQYW5lbCk6IG51bWJlciB7XG4gICAgICAgIGlmICghY29tcG9uZW50KSB7XG4gICAgICAgICAgICByZXR1cm4gLTE7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5kaWFsb2cub3BlbkRpYWxvZ3MuZmluZEluZGV4KGRpYWxvZyA9PiBkaWFsb2cuY29tcG9uZW50SW5zdGFuY2UgPT09IGNvbXBvbmVudCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVwb3NpdGlvbnMgcGFuZWxzIGZyb20gc3RhcnQgdW50aWwgZ2l2ZW4gaW5kZXhcbiAgICAgKi9cbiAgICBwcml2YXRlIHVwZGF0ZUNvbXBvbmVudHNQb3NpdGlvbigpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmRpYWxvZy5vcGVuRGlhbG9ncy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFNlbGVjdCB0aGUgcGFuZWxzIHRoYXQgYXJlIHN0aWxsIG9wZW5lZCwgaWdub3JlIHRoZSBvdGhlcnMgYmVjYXVzZSB0aGV5J2xsIGJlIGNsb3NlZFxuICAgICAgICBjb25zdCBhZmZlY3RlZEVsZW1lbnRzID0gdGhpcy5kaWFsb2cub3BlbkRpYWxvZ3M7XG5cbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhZmZlY3RlZEVsZW1lbnRzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBjb25zdCBkaWFsb2cgPSBhZmZlY3RlZEVsZW1lbnRzW2ldO1xuXG4gICAgICAgICAgICAvLyBTZXQgYWxsIHBhbmVscyBhcyBcImhpZGRlblwiIGV4Y2VwdCBsYXN0IG9uZS4gSXNGcm9udFBhbmVsIGF0dHJpYnV0ZSBjYXVzZXMgYSBDU1MgdGhhdCBoaWRlcyBib2R5IHZpYSBob3N0YmluZGluZ1xuICAgICAgICAgICAgZGlhbG9nLmNvbXBvbmVudEluc3RhbmNlLmlzRnJvbnRQYW5lbCA9IGkgPT09IGFmZmVjdGVkRWxlbWVudHMubGVuZ3RoIC0gMTtcbiAgICAgICAgICAgIGRpYWxvZy5jb21wb25lbnRJbnN0YW5jZS5wYW5lbFNlcnZpY2UgPSB0aGlzO1xuXG4gICAgICAgICAgICAvLyBBc3NpZ24gb2Zmc2V0XG4gICAgICAgICAgICBjb25zdCBkZWVwID0gYWZmZWN0ZWRFbGVtZW50cy5sZW5ndGggLSAxIC0gaTtcblxuICAgICAgICAgICAgbGV0IHBvc2l0aW9uOiBhbnkgPSB7cmlnaHQ6IGRlZXAgKiB0aGlzLnBhbmVsc09mZnNldEggKyAncHgnfTtcbiAgICAgICAgICAgIGlmICh0aGlzLm1lZGlhID09PSAneHMnICYmIGFmZmVjdGVkRWxlbWVudHMubGVuZ3RoID4gMSkge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uID0ge1xuICAgICAgICAgICAgICAgICAgICB0b3A6IGkgKiB0aGlzLnBhbmVsc09mZnNldFYgKyAncHgnLFxuICAgICAgICAgICAgICAgICAgICByaWdodDogJzBweCcsXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZGlhbG9nLnVwZGF0ZVBvc2l0aW9uKHBvc2l0aW9uKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { InjectionToken } from '@angular/core';
|
|
2
2
|
export const PanelsHooksConfig = new InjectionToken('NaturalPanelsHooksConfig');
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uYXR1cmFsL3NyYy9saWIvbW9kdWxlcy9wYW5lbHMvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLGNBQWMsRUFBaUIsTUFBTSxlQUFlLENBQUM7QUEwRTdELE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLElBQUksY0FBYyxDQUEyQiwwQkFBMEIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnRUeXBlfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7SW5qZWN0aW9uVG9rZW4sIEluamVjdG9yLCBUeXBlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VXJsU2VnbWVudH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7TGl0ZXJhbH0gZnJvbSAnLi4vLi4vdHlwZXMvdHlwZXMnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7TmF0dXJhbEFic3RyYWN0UGFuZWx9IGZyb20gJy4vYWJzdHJhY3QtcGFuZWwnO1xuaW1wb3J0IHtMaW5rYWJsZU9iamVjdH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbGluay1tdXRhdGlvbi5zZXJ2aWNlJztcblxuLyoqXG4gKiBLaW5kIG9mIHNuYXBzaG90IG9mIHRoZSBpbnN0YW5jZSBvZiBhIHBhbmVsIGFjdGl2YXRlZCByb3V0ZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIE5hdHVyYWxQYW5lbHNSb3V0ZUNvbmZpZyB7XG4gICAgc2VnbWVudHM6IFVybFNlZ21lbnRbXTtcbiAgICBwYXRoOiBzdHJpbmc7XG59XG5cbmV4cG9ydCB0eXBlIE5hdHVyYWxQYW5lbFJlc29sdmVJbnN0YW5jZXMgPSB7W2tleTogc3RyaW5nXTogTmF0dXJhbFBhbmVsUmVzb2x2ZTx1bmtub3duPn07XG5cbi8qKlxuICogQ29uZmlnIHJlcXVpcmVkIHRvIG1hbmFnZSB1cmwgYW5kIGluc3RhbnRpYXRlIGNvbXBvbmVudCBjb3JyZWN0bHlcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBOYXR1cmFsUGFuZWxDb25maWcge1xuICAgIGNvbXBvbmVudDogQ29tcG9uZW50VHlwZTxOYXR1cmFsQWJzdHJhY3RQYW5lbD47XG4gICAgcmVzb2x2ZTogTmF0dXJhbFBhbmVsUmVzb2x2ZUluc3RhbmNlcztcbiAgICBwYXJhbXM6IExpdGVyYWw7XG4gICAgcnVsZTogTmF0dXJhbFBhbmVsc1JvdXRlclJ1bGU7XG4gICAgcm91dGU6IE5hdHVyYWxQYW5lbHNSb3V0ZUNvbmZpZztcbn1cblxuLyoqXG4gKiBEYXRhIHByb3ZpZGVkIHRvIGluc3RhbnRpYXRlZCBjb21wb25lbnRzIGluIGNvbnRleHQgb2YgYSBwYW5lbC9kaWFsb2dcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBOYXR1cmFsUGFuZWxEYXRhIHtcbiAgICBjb25maWc6IE5hdHVyYWxQYW5lbENvbmZpZztcbiAgICBkYXRhOiBMaXRlcmFsO1xuXG4gICAgLyoqXG4gICAgICogUmVsYXRlZCBvYmplY3RzIHRoYXQgc2hvdWxkIGJlIGxpbmtlZCB0byB0aGUgb2JqZWN0IHNob3duIGluIHRoZSBwYW5lbCBhZnRlciBpdHMgY3JlYXRpb25cbiAgICAgKi9cbiAgICBsaW5rYWJsZU9iamVjdHM6IExpbmthYmxlT2JqZWN0W107XG59XG5cbi8qKlxuICogU2ltaWxhciB0byBBbmd1bGFyIFJlc29sdmUgaW50ZXJmYWNlLCBidXQgc2ltcGxlciBmb3Igb3VyIHBhbmVscyBuZWVkc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIE5hdHVyYWxQYW5lbFJlc29sdmU8VD4ge1xuICAgIHJlc29sdmUocm91dGU6IE5hdHVyYWxQYW5lbENvbmZpZyk6IE9ic2VydmFibGU8VD47XG59XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBmb3IgYSByb3V0ZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIE5hdHVyYWxQYW5lbHNSb3V0ZXJSdWxlIHtcbiAgICBwYXRoOiBzdHJpbmc7XG4gICAgY29tcG9uZW50OiBDb21wb25lbnRUeXBlPE5hdHVyYWxBYnN0cmFjdFBhbmVsPjtcbiAgICByZXNvbHZlPzoge1trZXk6IHN0cmluZ106IFR5cGU8TmF0dXJhbFBhbmVsUmVzb2x2ZTx1bmtub3duPj59O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5hdHVyYWxQYW5lbHNCZWZvcmVPcGVuUGFuZWwge1xuICAgIGl0ZW1EYXRhOiBOYXR1cmFsUGFuZWxEYXRhO1xuICAgIHBhbmVsQ29uZmlnOiBOYXR1cmFsUGFuZWxDb25maWc7XG4gICAgZnVsbFBhbmVsc0NvbmZpZzogTmF0dXJhbFBhbmVsQ29uZmlnW107XG4gICAgcmVzb2x2ZWRSZXN1bHQ6IGFueTsgLy8gdG9kbyA6IEdlbmVyaWMgb3IgTmF0dXJhbEFic3RyYWN0TW9kZWxTZXJ2aWNlXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmF0dXJhbFBhbmVsc0hvb2tzQ29uZmlnIHtcbiAgICBiZWZvcmVPcGVuUGFuZWw/OiAoXG4gICAgICAgIGluamVjdG9yOiBJbmplY3RvcixcbiAgICAgICAgbmF0dXJhbFBhbmVsc0JlZm9yZU9wZW5QYW5lbDogTmF0dXJhbFBhbmVsc0JlZm9yZU9wZW5QYW5lbCxcbiAgICApID0+
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uYXR1cmFsL3NyYy9saWIvbW9kdWxlcy9wYW5lbHMvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLGNBQWMsRUFBaUIsTUFBTSxlQUFlLENBQUM7QUEwRTdELE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLElBQUksY0FBYyxDQUEyQiwwQkFBMEIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnRUeXBlfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7SW5qZWN0aW9uVG9rZW4sIEluamVjdG9yLCBUeXBlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VXJsU2VnbWVudH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7TGl0ZXJhbH0gZnJvbSAnLi4vLi4vdHlwZXMvdHlwZXMnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7TmF0dXJhbEFic3RyYWN0UGFuZWx9IGZyb20gJy4vYWJzdHJhY3QtcGFuZWwnO1xuaW1wb3J0IHtMaW5rYWJsZU9iamVjdH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbGluay1tdXRhdGlvbi5zZXJ2aWNlJztcblxuLyoqXG4gKiBLaW5kIG9mIHNuYXBzaG90IG9mIHRoZSBpbnN0YW5jZSBvZiBhIHBhbmVsIGFjdGl2YXRlZCByb3V0ZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIE5hdHVyYWxQYW5lbHNSb3V0ZUNvbmZpZyB7XG4gICAgc2VnbWVudHM6IFVybFNlZ21lbnRbXTtcbiAgICBwYXRoOiBzdHJpbmc7XG59XG5cbmV4cG9ydCB0eXBlIE5hdHVyYWxQYW5lbFJlc29sdmVJbnN0YW5jZXMgPSB7W2tleTogc3RyaW5nXTogTmF0dXJhbFBhbmVsUmVzb2x2ZTx1bmtub3duPn07XG5cbi8qKlxuICogQ29uZmlnIHJlcXVpcmVkIHRvIG1hbmFnZSB1cmwgYW5kIGluc3RhbnRpYXRlIGNvbXBvbmVudCBjb3JyZWN0bHlcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBOYXR1cmFsUGFuZWxDb25maWcge1xuICAgIGNvbXBvbmVudDogQ29tcG9uZW50VHlwZTxOYXR1cmFsQWJzdHJhY3RQYW5lbD47XG4gICAgcmVzb2x2ZTogTmF0dXJhbFBhbmVsUmVzb2x2ZUluc3RhbmNlcztcbiAgICBwYXJhbXM6IExpdGVyYWw7XG4gICAgcnVsZTogTmF0dXJhbFBhbmVsc1JvdXRlclJ1bGU7XG4gICAgcm91dGU6IE5hdHVyYWxQYW5lbHNSb3V0ZUNvbmZpZztcbn1cblxuLyoqXG4gKiBEYXRhIHByb3ZpZGVkIHRvIGluc3RhbnRpYXRlZCBjb21wb25lbnRzIGluIGNvbnRleHQgb2YgYSBwYW5lbC9kaWFsb2dcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBOYXR1cmFsUGFuZWxEYXRhIHtcbiAgICBjb25maWc6IE5hdHVyYWxQYW5lbENvbmZpZztcbiAgICBkYXRhOiBMaXRlcmFsO1xuXG4gICAgLyoqXG4gICAgICogUmVsYXRlZCBvYmplY3RzIHRoYXQgc2hvdWxkIGJlIGxpbmtlZCB0byB0aGUgb2JqZWN0IHNob3duIGluIHRoZSBwYW5lbCBhZnRlciBpdHMgY3JlYXRpb25cbiAgICAgKi9cbiAgICBsaW5rYWJsZU9iamVjdHM6IExpbmthYmxlT2JqZWN0W107XG59XG5cbi8qKlxuICogU2ltaWxhciB0byBBbmd1bGFyIFJlc29sdmUgaW50ZXJmYWNlLCBidXQgc2ltcGxlciBmb3Igb3VyIHBhbmVscyBuZWVkc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIE5hdHVyYWxQYW5lbFJlc29sdmU8VD4ge1xuICAgIHJlc29sdmUocm91dGU6IE5hdHVyYWxQYW5lbENvbmZpZyk6IE9ic2VydmFibGU8VD47XG59XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBmb3IgYSByb3V0ZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIE5hdHVyYWxQYW5lbHNSb3V0ZXJSdWxlIHtcbiAgICBwYXRoOiBzdHJpbmc7XG4gICAgY29tcG9uZW50OiBDb21wb25lbnRUeXBlPE5hdHVyYWxBYnN0cmFjdFBhbmVsPjtcbiAgICByZXNvbHZlPzoge1trZXk6IHN0cmluZ106IFR5cGU8TmF0dXJhbFBhbmVsUmVzb2x2ZTx1bmtub3duPj59O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5hdHVyYWxQYW5lbHNCZWZvcmVPcGVuUGFuZWwge1xuICAgIGl0ZW1EYXRhOiBOYXR1cmFsUGFuZWxEYXRhO1xuICAgIHBhbmVsQ29uZmlnOiBOYXR1cmFsUGFuZWxDb25maWc7XG4gICAgZnVsbFBhbmVsc0NvbmZpZzogTmF0dXJhbFBhbmVsQ29uZmlnW107XG4gICAgcmVzb2x2ZWRSZXN1bHQ6IGFueTsgLy8gdG9kbyA6IEdlbmVyaWMgb3IgTmF0dXJhbEFic3RyYWN0TW9kZWxTZXJ2aWNlXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmF0dXJhbFBhbmVsc0hvb2tzQ29uZmlnIHtcbiAgICBiZWZvcmVPcGVuUGFuZWw/OiAoXG4gICAgICAgIGluamVjdG9yOiBJbmplY3RvcixcbiAgICAgICAgbmF0dXJhbFBhbmVsc0JlZm9yZU9wZW5QYW5lbDogTmF0dXJhbFBhbmVsc0JlZm9yZU9wZW5QYW5lbCxcbiAgICApID0+IE5hdHVyYWxQYW5lbERhdGE7XG59XG5cbi8vIEFycmF5IG9mIE5hdHVyYWxQYW5lbHNSb3V0ZXJSdWxlXG5leHBvcnQgdHlwZSBOYXR1cmFsUGFuZWxzUm91dGVzQ29uZmlnID0gQXJyYXk8TmF0dXJhbFBhbmVsc1JvdXRlclJ1bGU+O1xuXG5leHBvcnQgY29uc3QgUGFuZWxzSG9va3NDb25maWcgPSBuZXcgSW5qZWN0aW9uVG9rZW48TmF0dXJhbFBhbmVsc0hvb2tzQ29uZmlnPignTmF0dXJhbFBhbmVsc0hvb2tzQ29uZmlnJyk7XG4iXX0=
|