nuxeo-development-framework 5.1.0 → 5.1.2
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/bundles/nuxeo-development-framework.umd.js +116 -23
- package/bundles/nuxeo-development-framework.umd.js.map +1 -1
- package/esm2015/lib/components/custom-toastr/components/custom-toastr/custom-toastr.component.js +40 -12
- package/esm2015/lib/components/diagrams/editor/overrides/connection-path.transformers.js +22 -1
- package/esm2015/lib/components/diagrams/models/base-node.model.js +1 -1
- package/esm2015/lib/components/diagrams/services/diagram.service.js +41 -30
- package/esm2015/lib/components/dynamic-table/dynamic-table/dynamic-table.component.js +2 -2
- package/esm2015/lib/components/table/page-sizes-list/page-sizes-list.component.js +32 -3
- package/esm2015/lib/components/table/table/table.component.js +3 -3
- package/fesm2015/nuxeo-development-framework.js +130 -42
- package/fesm2015/nuxeo-development-framework.js.map +1 -1
- package/lib/components/custom-toastr/components/custom-toastr/custom-toastr.component.d.ts +3 -1
- package/lib/components/diagrams/models/base-node.model.d.ts +2 -0
- package/lib/components/diagrams/services/diagram.service.d.ts +5 -3
- package/lib/components/table/page-sizes-list/page-sizes-list.component.d.ts +3 -1
- package/package.json +1 -1
package/esm2015/lib/components/custom-toastr/components/custom-toastr/custom-toastr.component.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { animate, state, style, transition, trigger
|
|
2
|
-
import { Component } from '@angular/core';
|
|
1
|
+
import { animate, state, style, transition, trigger } from '@angular/animations';
|
|
2
|
+
import { Component, Inject } from '@angular/core';
|
|
3
3
|
import { Toast } from 'ngx-toastr';
|
|
4
4
|
import { Subject } from 'rxjs';
|
|
5
5
|
import { takeUntil } from 'rxjs/operators';
|
|
6
|
-
import { UserPreferenceValues
|
|
6
|
+
import { UserPreferenceValues } from '../../../../core/services/user/user-preferences.service';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
8
|
import * as i1 from "ngx-toastr";
|
|
9
9
|
import * as i2 from "@ngx-translate/core";
|
|
@@ -11,8 +11,9 @@ import * as i3 from "../../../../core/services/user/user-preferences.service";
|
|
|
11
11
|
import * as i4 from "@angular/cdk/bidi";
|
|
12
12
|
import * as i5 from "@angular/common";
|
|
13
13
|
export class CustomToastrComponent extends Toast {
|
|
14
|
-
constructor(toastrService, toastPackage, translate, userPreferenceService) {
|
|
14
|
+
constructor(_environment, toastrService, toastPackage, translate, userPreferenceService) {
|
|
15
15
|
super(toastrService, toastPackage);
|
|
16
|
+
this._environment = _environment;
|
|
16
17
|
this.toastrService = toastrService;
|
|
17
18
|
this.toastPackage = toastPackage;
|
|
18
19
|
this.translate = translate;
|
|
@@ -32,8 +33,32 @@ export class CustomToastrComponent extends Toast {
|
|
|
32
33
|
});
|
|
33
34
|
}
|
|
34
35
|
}
|
|
36
|
+
// setbBackgroundColor() {
|
|
37
|
+
// this.toastrService.clear();
|
|
38
|
+
// let classes = {
|
|
39
|
+
// success: this.type === 'success',
|
|
40
|
+
// error: this.type === 'error',
|
|
41
|
+
// notification: this.type === 'notification',
|
|
42
|
+
// };
|
|
43
|
+
// console.log('back color function')
|
|
44
|
+
// return classes;
|
|
45
|
+
// }
|
|
46
|
+
// setTextColor() {
|
|
47
|
+
// let classes = {
|
|
48
|
+
// 'msg-success': this.type === 'success',
|
|
49
|
+
// 'msg-error': this.type === 'error',
|
|
50
|
+
// 'msg-notification': this.type === 'notification',
|
|
51
|
+
// };
|
|
52
|
+
// return classes;
|
|
53
|
+
// }
|
|
54
|
+
remove() {
|
|
55
|
+
var _a;
|
|
56
|
+
if (`${(_a = this._environment) === null || _a === void 0 ? void 0 : _a.toaster.canClear}`.toLowerCase() === 'yes') {
|
|
57
|
+
this.toastrService.clear();
|
|
58
|
+
}
|
|
59
|
+
}
|
|
35
60
|
}
|
|
36
|
-
CustomToastrComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CustomToastrComponent, deps: [{ token: i1.ToastrService }, { token: i1.ToastPackage }, { token: i2.TranslateService }, { token: i3.UserPreferencesService }], target: i0.ɵɵFactoryTarget.Component });
|
|
61
|
+
CustomToastrComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CustomToastrComponent, deps: [{ token: 'environment' }, { token: i1.ToastrService }, { token: i1.ToastPackage }, { token: i2.TranslateService }, { token: i3.UserPreferencesService }], target: i0.ɵɵFactoryTarget.Component });
|
|
37
62
|
CustomToastrComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: CustomToastrComponent, selector: "cts-custom-toastr", usesInheritance: true, ngImport: i0, template: "<div\r\n class=\"toast-container {{ type }}-container\"\r\n [style.display]=\"state.value === 'inactive' ? 'none' : ''\"\r\n [dir]=\"lang\"\r\n [@simpleFadeAnimation]=\"'in'\"\r\n>\r\n <div class=\"icon-container rounded-s-md {{ type }}\">\r\n <ng-container [ngSwitch]=\"type\">\r\n <ng-container *ngSwitchCase=\"'success'\">\r\n <span class=\"bi bi-check2 toast-icon\"></span>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'error'\">\r\n <span class=\"bi bi-x toast-icon\"></span>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'info'\">\r\n <span class=\"bi bi-info-circle toast-icon\"></span>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'warning'\">\r\n <span class=\"bi bi-exclamation-triangle toast-icon\"></span>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'notification'\">\r\n <span class=\"bi bi-bell-fill notification-icon\"></span>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n <div class=\"toast-content-container\">\r\n <div *ngIf=\"title\" [attr.aria-label]=\"title\" class=\"toast-content\">\r\n {{ title | translate }}\r\n </div>\r\n <div\r\n *ngIf=\"message\"\r\n role=\"alert\"\r\n aria-live=\"polite\"\r\n [attr.aria-label]=\"message\"\r\n class=\"message msg-{{ type }}\"\r\n >\r\n {{ message | translate : { value: value } }}\r\n </div>\r\n\r\n <div *ngIf=\"customContent\" class=\"message msg-{{ type }}\">{{ customContent }}</div>\r\n </div>\r\n <div (click)=\"remove()\" class=\"remove\">\r\n <span style=\"font-size: 26px; color: gray\" aria-hidden=\"true\">×</span>\r\n </div>\r\n</div>\r\n", styles: [".bi{margin:0!important}.memo-sorting-wrapper{width:265px;margin:0 10px;height:100%;display:flex}.memo-sorting-wrapper .sorting-direction{width:65px;height:40px;background-color:#465573;color:#fff;font-size:20px;display:flex;justify-content:center;align-items:center;cursor:pointer}.memo-sorting-wrapper .memo-sorting-trigger{width:calc(100% - 65px);height:100%;background-color:transparent;border:1px solid lightgrey;display:flex;justify-content:space-between;align-items:center;padding:0 15px;font-size:14px}.memo-sorting-wrapper .memo-sorting-trigger i{font-size:16px;color:gray}.memo-sorting-menu{width:200px}.my-button{border:1px solid #465573;color:#465573;border-radius:5px;background-color:transparent;font-weight:bold;min-width:80px;height:40px}.my-button.reset{border:none}.my-button:hover{color:#fff;background-color:#465573}.my-button:hover.reset{color:#465573;border:1px solid #465573;background-color:#fff}.app-property-value .app-input-wrapper label{color:#646f85;font-size:13px;margin-bottom:5px}.app-property-value .app-input-wrapper label .text-danger{font-size:16px;line-height:14px;margin:0 5px!important}.app-property-value .app-input-wrapper .form-control{border:1px solid #ccc;border-radius:5px;background-color:#8f98aa1a;height:40px}.app-property-value .app-input-wrapper .form-control:disabled{background-color:#e9ecef!important}.app-property-value .app-input-wrapper .form-control:focus{border:1px solid #1a96c6;box-shadow:0 0 4px #79c3c26b!important}.app-property-value .app-input-wrapper .app-textitem-editable-error .error-containers{list-style:none;padding:0;margin:0;font-size:14px}.app-property-value .app-input-wrapper .app-textitem-editable-error .error-containers .error{margin-top:5px}.autocomplete-container .input-container input:focus,hijri-gregorian-datepicker .form-group .input-group .form-control:focus,.ng-select.ng-select-focused .ng-select-container{border:1px solid #1a96c6!important;box-shadow:0 0 4px #79c3c26b!important}input::placeholder{font-size:12px}.form-control:focus{box-shadow:none!important}.mat-stepper-horizontal{margin-top:-25px}.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header.cdk-program-focused{background-color:transparent}.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header .mat-step-icon-selected{background-color:transparent;color:#fff;background-image:linear-gradient(to right,#0dbab5,#1a96c6)}@media only screen and (max-width: 576px){.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header .mat-step-label .mat-step-text-label{white-space:pre-wrap;overflow:visible}}.mat-stepper-horizontal .mat-horizontal-content-container{overflow:visible}@media only screen and (max-width: 768px){.mat-stepper-horizontal .mat-horizontal-content-container{padding:0 0 24px}}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:first-child:after,.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:last-child:before{display:none}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:first-child:before{border-top-width:1px;border-top-style:solid;content:\"\";display:inline-block;height:0;position:absolute;width:calc(50% - 20px);left:0}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:last-child:after{border-top-width:1px;border-top-style:solid;content:\"\";display:inline-block;height:0;position:absolute;width:calc(50% - 20px);right:0}.form-wrapper{padding:30px 15px;border:1px solid #dde0e2}.form-wrapper .buttons-wrapper{display:flex;justify-content:space-between}.form-wrapper .buttons-wrapper .action-buttons-wrapper{display:flex}.form-wrapper .buttons-wrapper button{background-image:linear-gradient(to right,#0dbab5,#1a96c6);height:40px;color:#fff;border:none;width:125px;margin-top:20px;border-radius:5px}.form-wrapper .buttons-wrapper button:disabled{opacity:.4;cursor:not-allowed}.form-wrapper .buttons-wrapper button:hover{opacity:.7}.form-wrapper .upload-wrapper{display:flex;flex-direction:column;justify-content:flex-end}.form-wrapper .upload-wrapper label{color:#8f98aa;font-size:14px}.form-wrapper .upload-wrapper button{padding:10px;border:1px solid lightgray}.form-wrapper .upload-wrapper button span{margin:0 10px}.renameFileComponent .form-wrapper{padding:30px 15px;border:none!important}.renameFileComponent .form-wrapper .buttons-wrapper{display:flex;justify-content:space-between}.renameFileComponent .form-wrapper .buttons-wrapper .action-buttons-wrapper{display:flex}.renameFileComponent .form-wrapper .buttons-wrapper button{background-image:linear-gradient(to right,#0dbab5,#1a96c6);height:40px;color:#fff;border:none;width:125px;margin-top:20px;border-radius:5px}.renameFileComponent .form-wrapper .buttons-wrapper button:disabled{opacity:.4;cursor:not-allowed}.renameFileComponent .form-wrapper .buttons-wrapper button:hover{opacity:.7}.renameFileComponent .form-wrapper .upload-wrapper{display:flex;flex-direction:column;justify-content:flex-end}.renameFileComponent .form-wrapper .upload-wrapper label{color:#8f98aa;font-size:14px}.renameFileComponent .form-wrapper .upload-wrapper button{padding:10px;border:1px solid lightgray}.renameFileComponent .form-wrapper .upload-wrapper button span{margin:0 10px}.my-dynamic-viewer{display:flex;align-items:center;font-size:12px;min-height:30px}.my-dynamic-viewer .my-label{font-size:12px;font-weight:500;width:150px;word-break:break-word}@media (max-width: 992px){.my-dynamic-viewer .my-label{width:50%}}.my-dynamic-viewer .my-value{width:calc(100% - 150px);word-break:break-word}@media (max-width: 992px){.my-dynamic-viewer .my-value{width:50%}}.my-dynamic-viewer .direction-img{font-size:14px}.my-dynamic-viewer .direction-img .incoming{display:none}.my-dynamic-viewer .direction-img .outgoing{display:none}.my-dynamic-viewer .direction-img .internal{display:none}.my-dynamic-viewer.draft .my-value{color:#596973}.my-dynamic-viewer.inProgress .my-value{color:#3c3cf0}.my-dynamic-viewer.registered .my-value{color:#4f008c}.my-dynamic-viewer.archived .my-value{color:#fbb62c}.my-dynamic-viewer.closed .my-value{color:#00dca5}.my-dynamic-viewer.approved .my-value{color:#06a57e}.my-dynamic-viewer.assigned .my-value{color:#fd6670}.my-dynamic-viewer.sent .my-value{color:#3c3cf0}.my-dynamic-viewer.published .my-value{color:#00dca5}.my-dynamic-viewer.Outgoing .my-value{display:flex}.my-dynamic-viewer.Outgoing .my-value .direction-img .outgoing{color:#fbb62c;margin:1px 5px;display:flex}.my-dynamic-viewer.Outgoing .my-value .text{margin:0 5px}.my-dynamic-viewer.Internal .my-value{display:flex}.my-dynamic-viewer.Internal .my-value .direction-img .internal{color:#3c3cf0;margin:1px 5px;display:flex}.my-dynamic-viewer.Internal .my-value .text{margin:0 5px}.my-dynamic-viewer.Incoming .my-value{display:flex}.my-dynamic-viewer.Incoming .my-value .direction-img .incoming{color:#00dca5;display:flex}.my-dynamic-viewer.Incoming .my-value .text{margin:-3px 5px 0}.my-dynamic-viewer.vertical{display:block}.my-dynamic-viewer.vertical .my-label{width:auto}.my-dynamic-viewer.vertical .my-value{width:auto}.my-dynamic-viewer.with-out-label{width:100%!important}.toast-container{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin-left:16px;margin-right:16px;position:relative;width:400px;height:80px;box-shadow:0 0 4px #0000003b;background-color:#fff;border-radius:5px}.toast-container .error{background-color:#ff375e}.toast-container .success{background-color:#0dbab5}.toast-container .warning{background-color:#eca15f}.toast-container .info{background-color:#1a96c6}.toast-container .notification{background-color:#1a96c6}.toast-container .toast-icon{font-size:40px;color:#fff;-webkit-text-stroke:3px white}.toast-container .notification-icon{font-size:30px;color:#fff}.toast-container .msg-error{color:#ff375e}.toast-container .msg-success{color:#0dbab5}.toast-container .msg-warning{color:#eca15f}.toast-container .msg-info{color:#1a96c6}.toast-container .msg-notification{color:#1a96c6}.toast-container .icon-container{grid-column:span 1/span 1;display:flex;align-items:center;justify-content:center}.toast-container .toast-content-container{grid-column:span 3/span 3;display:flex;flex-direction:column;padding-top:4px;padding-bottom:4px;padding-inline-start:8px;overflow:hidden}.toast-container .toast-content-container .toast-content{font-size:18px;color:#8f98aa}.toast-container .toast-content-container .message{font-size:14px;line-height:20px}.toast-container .remove{grid-column:span 1/span 1;cursor:pointer;display:flex;justify-content:flex-end;padding-inline-end:8px}.toast-container .remove mat-icon{color:#8f98aa;font-size:20px;line-height:28px}.rounded-s-md{border-start-start-radius:6px;border-end-start-radius:6px}\n"], directives: [{ type: i4.Dir, selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }, { type: i5.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i5.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "translate": i2.TranslatePipe }, animations: [
|
|
38
63
|
// the fade-in/fade-out animation.
|
|
39
64
|
trigger('simpleFadeAnimation', [
|
|
@@ -42,8 +67,8 @@ CustomToastrComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0",
|
|
|
42
67
|
// fade in when created. this could also be written as transition('void => *')
|
|
43
68
|
transition(':enter', [style({ opacity: 0 }), animate(200)]),
|
|
44
69
|
// fade out when destroyed. this could also be written as transition('void => *')
|
|
45
|
-
transition(':leave', animate(400, style({ opacity: 0 })))
|
|
46
|
-
])
|
|
70
|
+
transition(':leave', animate(400, style({ opacity: 0 })))
|
|
71
|
+
])
|
|
47
72
|
] });
|
|
48
73
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CustomToastrComponent, decorators: [{
|
|
49
74
|
type: Component,
|
|
@@ -59,9 +84,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
59
84
|
// fade in when created. this could also be written as transition('void => *')
|
|
60
85
|
transition(':enter', [style({ opacity: 0 }), animate(200)]),
|
|
61
86
|
// fade out when destroyed. this could also be written as transition('void => *')
|
|
62
|
-
transition(':leave', animate(400, style({ opacity: 0 })))
|
|
63
|
-
])
|
|
64
|
-
]
|
|
87
|
+
transition(':leave', animate(400, style({ opacity: 0 })))
|
|
88
|
+
])
|
|
89
|
+
]
|
|
65
90
|
}]
|
|
66
|
-
}], ctorParameters: function () { return [{ type:
|
|
67
|
-
|
|
91
|
+
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
92
|
+
type: Inject,
|
|
93
|
+
args: ['environment']
|
|
94
|
+
}] }, { type: i1.ToastrService }, { type: i1.ToastPackage }, { type: i2.TranslateService }, { type: i3.UserPreferencesService }]; } });
|
|
95
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLXRvYXN0ci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9udXhlby1kZXZlbG9wbWVudC1mcmFtZXdvcmsvc3JjL2xpYi9jb21wb25lbnRzL2N1c3RvbS10b2FzdHIvY29tcG9uZW50cy9jdXN0b20tdG9hc3RyL2N1c3RvbS10b2FzdHIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9jdXN0b20tdG9hc3RyL2NvbXBvbmVudHMvY3VzdG9tLXRvYXN0ci9jdXN0b20tdG9hc3RyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDakYsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFFMUQsT0FBTyxFQUFFLEtBQUssRUFBK0IsTUFBTSxZQUFZLENBQUM7QUFDaEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUEwQixvQkFBb0IsRUFBRSxNQUFNLHlEQUF5RCxDQUFDOzs7Ozs7O0FBc0J2SCxNQUFNLE9BQU8scUJBQXNCLFNBQVEsS0FBSztJQU0vQyxZQUNrQyxZQUFpQyxFQUN4RCxhQUE0QixFQUMvQixZQUEwQixFQUN6QixTQUEyQixFQUM1QixxQkFBOEM7UUFFckQsS0FBSyxDQUFDLGFBQWEsRUFBRSxZQUFZLENBQUMsQ0FBQztRQU5GLGlCQUFZLEdBQVosWUFBWSxDQUFxQjtRQUN4RCxrQkFBYSxHQUFiLGFBQWEs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VUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDOzRCQUUzRCxpRkFBaUY7NEJBQ2pGLFVBQVUsQ0FBQyxRQUFRLEVBQUUsT0FBTyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO3lCQUN6RCxDQUFDO3FCQUNGO2lCQUNEOzswQkFRRSxNQUFNOzJCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhbmltYXRlLCBzdGF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3QsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcbmltcG9ydCB7IFRvYXN0LCBUb2FzdFBhY2thZ2UsIFRvYXN0clNlcnZpY2UgfSBmcm9tICduZ3gtdG9hc3RyJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IFVzZXJQcmVmZXJlbmNlc1NlcnZpY2UsIFVzZXJQcmVmZXJlbmNlVmFsdWVzIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29yZS9zZXJ2aWNlcy91c2VyL3VzZXItcHJlZmVyZW5jZXMuc2VydmljZSc7XHJcbmltcG9ydCB7IFRvYXN0VHlwZSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvdG9hc3QtdHlwZS5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBlbnZpcm9ubWVudCB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwL2Vudmlyb25tZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHNlbGVjdG9yOiAnY3RzLWN1c3RvbS10b2FzdHInLFxyXG5cdHRlbXBsYXRlVXJsOiAnLi9jdXN0b20tdG9hc3RyLmNvbXBvbmVudC5odG1sJyxcclxuXHRzdHlsZVVybHM6IFsnLi9jdXN0b20tdG9hc3RyLmNvbXBvbmVudC5zY3NzJ10sXHJcblx0YW5pbWF0aW9uczogW1xyXG5cdFx0Ly8gdGhlIGZhZGUtaW4vZmFkZS1vdXQgYW5pbWF0aW9uLlxyXG5cdFx0dHJpZ2dlcignc2ltcGxlRmFkZUFuaW1hdGlvbicsIFtcclxuXHRcdFx0Ly8gdGhlIFwiaW5cIiBzdHlsZSBkZXRlcm1pbmVzIHRoZSBcInJlc3RpbmdcIiBzdGF0ZSBvZiB0aGUgZWxlbWVudCB3aGVuIGl0IGlzIHZpc2libGUuXHJcblx0XHRcdHN0YXRlKCdpbicsIHN0eWxlKHsgb3BhY2l0eTogMSB9KSksXHJcblxyXG5cdFx0XHQvLyBmYWRlIGluIHdoZW4gY3JlYXRlZC4gdGhpcyBjb3VsZCBhbHNvIGJlIHdyaXR0ZW4gYXMgdHJhbnNpdGlvbigndm9pZCA9PiAqJylcclxuXHRcdFx0dHJhbnNpdGlvbignOmVudGVyJywgW3N0eWxlKHsgb3BhY2l0eTogMCB9KSwgYW5pbWF0ZSgyMDApXSksXHJcblxyXG5cdFx0XHQvLyBmYWRlIG91dCB3aGVuIGRlc3Ryb3llZC4gdGhpcyBjb3VsZCBhbHNvIGJlIHdyaXR0ZW4gYXMgdHJhbnNpdGlvbigndm9pZCA9PiAqJylcclxuXHRcdFx0dHJhbnNpdGlvbignOmxlYXZlJywgYW5pbWF0ZSg0MDAsIHN0eWxlKHsgb3BhY2l0eTogMCB9KSkpXHJcblx0XHRdKVxyXG5cdF1cclxufSlcclxuZXhwb3J0IGNsYXNzIEN1c3RvbVRvYXN0ckNvbXBvbmVudCBleHRlbmRzIFRvYXN0IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHRsYW5nO1xyXG5cdHR5cGU6IFRvYXN0VHlwZTtcclxuXHR2YWx1ZTogYW55O1xyXG5cdGN1c3RvbUNvbnRlbnQ6IHN0cmluZztcclxuXHRwcml2YXRlIG9uRGVzdHJveSQgPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xyXG5cdGNvbnN0cnVjdG9yKFxyXG5cdFx0QEluamVjdCgnZW52aXJvbm1lbnQnKSBwcm90ZWN0ZWQgX2Vudmlyb25tZW50OiBSZWNvcmQ8c3RyaW5nLCBhbnk+LFxyXG5cdFx0cHJvdGVjdGVkIHRvYXN0clNlcnZpY2U6IFRvYXN0clNlcnZpY2UsXHJcblx0XHRwdWJsaWMgdG9hc3RQYWNrYWdlOiBUb2FzdFBhY2thZ2UsXHJcblx0XHRwcml2YXRlIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcclxuXHRcdHB1YmxpYyB1c2VyUHJlZmVyZW5jZVNlcnZpY2U/OiBVc2VyUHJlZmVyZW5jZXNTZXJ2aWNlXHJcblx0KSB7XHJcblx0XHRzdXBlcih0b2FzdHJTZXJ2aWNlLCB0b2FzdFBhY2thZ2UpO1xyXG5cdH1cclxuXHJcblx0bmdPbkluaXQoKTogdm9pZCB7XHJcblx0XHR0aGlzLnR5cGUgPSB0aGlzLnRvYXN0UGFja2FnZS50b2FzdFJlZi5jb21wb25lbnRJbnN0YW5jZS50eXBlO1xyXG5cdFx0dGhpcy52YWx1ZSA9IHRoaXMudG9hc3RQYWNrYWdlLnRvYXN0UmVmLmNvbXBvbmVudEluc3RhbmNlLmN1c3RvbU1zZztcclxuXHRcdHRoaXMuY3VzdG9tQ29udGVudCA9IHRoaXMudG9hc3RQYWNrYWdlLnRvYXN0UmVmLmNvbXBvbmVudEluc3RhbmNlLmN1c3RvbUNvbnRlbnQ7XHJcblx0XHRpZiAodGhpcy51c2VyUHJlZmVyZW5jZVNlcnZpY2UpIHtcclxuXHRcdFx0dGhpcy51c2VyUHJlZmVyZW5jZVNlcnZpY2VcclxuXHRcdFx0XHQuc2VsZWN0KFVzZXJQcmVmZXJlbmNlVmFsdWVzLkxvY2FsZSlcclxuXHRcdFx0XHQucGlwZSh0YWtlVW50aWwodGhpcy5vbkRlc3Ryb3kkKSlcclxuXHRcdFx0XHQuc3Vic2NyaWJlKChsb2NhbGUpID0+IHtcclxuXHRcdFx0XHRcdHRoaXMubGFuZyA9IHRoaXMudHJhbnNsYXRlLmN1cnJlbnRMYW5nID09PSAnYXInID8gJ3J0bCcgOiAnbHRyJztcclxuXHRcdFx0XHR9KTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC8vIHNldGJCYWNrZ3JvdW5kQ29sb3IoKSB7XHJcblx0Ly8gICB0aGlzLnRvYXN0clNlcnZpY2UuY2xlYXIoKTtcclxuXHQvLyAgIGxldCBjbGFzc2VzID0ge1xyXG5cdC8vICAgICBzdWNjZXNzOiB0aGlzLnR5cGUgPT09ICdzdWNjZXNzJyxcclxuXHQvLyAgICAgZXJyb3I6IHRoaXMudHlwZSA9PT0gJ2Vycm9yJyxcclxuXHQvLyAgICAgbm90aWZpY2F0aW9uOiB0aGlzLnR5cGUgPT09ICdub3RpZmljYXRpb24nLFxyXG5cdC8vICAgfTtcclxuXHQvLyAgIGNvbnNvbGUubG9nKCdiYWNrIGNvbG9yIGZ1bmN0aW9uJylcclxuXHQvLyAgIHJldHVybiBjbGFzc2VzO1xyXG5cdC8vIH1cclxuXHQvLyBzZXRUZXh0Q29sb3IoKSB7XHJcblx0Ly8gICBsZXQgY2xhc3NlcyA9IHtcclxuXHQvLyAgICAgJ21zZy1zdWNjZXNzJzogdGhpcy50eXBlID09PSAnc3VjY2VzcycsXHJcblx0Ly8gICAgICdtc2ctZXJyb3InOiB0aGlzLnR5cGUgPT09ICdlcnJvcicsXHJcblx0Ly8gICAgICdtc2ctbm90aWZpY2F0aW9uJzogdGhpcy50eXBlID09PSAnbm90aWZpY2F0aW9uJyxcclxuXHQvLyAgIH07XHJcblx0Ly8gICByZXR1cm4gY2xhc3NlcztcclxuXHQvLyB9XHJcblxyXG5cdHJlbW92ZSgpIHtcclxuXHRcdGlmIChgJHt0aGlzLl9lbnZpcm9ubWVudD8udG9hc3Rlci5jYW5DbGVhcn1gLnRvTG93ZXJDYXNlKCkgPT09ICd5ZXMnKSB7XHJcblx0XHRcdHRoaXMudG9hc3RyU2VydmljZS5jbGVhcigpO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iLCI8ZGl2XHJcbiAgY2xhc3M9XCJ0b2FzdC1jb250YWluZXIge3sgdHlwZSB9fS1jb250YWluZXJcIlxyXG4gIFtzdHlsZS5kaXNwbGF5XT1cInN0YXRlLnZhbHVlID09PSAnaW5hY3RpdmUnID8gJ25vbmUnIDogJydcIlxyXG4gIFtkaXJdPVwibGFuZ1wiXHJcbiAgW0BzaW1wbGVGYWRlQW5pbWF0aW9uXT1cIidpbidcIlxyXG4+XHJcbiAgPGRpdiBjbGFzcz1cImljb24tY29udGFpbmVyIHJvdW5kZWQtcy1tZCB7eyB0eXBlIH19XCI+XHJcbiAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJ0eXBlXCI+XHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidzdWNjZXNzJ1wiPlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwiYmkgYmktY2hlY2syIHRvYXN0LWljb25cIj48L3NwYW4+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInZXJyb3InXCI+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJiaSBiaS14IHRvYXN0LWljb25cIj48L3NwYW4+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInaW5mbydcIj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cImJpIGJpLWluZm8tY2lyY2xlIHRvYXN0LWljb25cIj48L3NwYW4+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInd2FybmluZydcIj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cImJpIGJpLWV4Y2xhbWF0aW9uLXRyaWFuZ2xlIHRvYXN0LWljb25cIj48L3NwYW4+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCInbm90aWZpY2F0aW9uJ1wiPlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwiYmkgYmktYmVsbC1maWxsIG5vdGlmaWNhdGlvbi1pY29uXCI+PC9zcGFuPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgY2xhc3M9XCJ0b2FzdC1jb250ZW50LWNvbnRhaW5lclwiPlxyXG4gICAgPGRpdiAqbmdJZj1cInRpdGxlXCIgW2F0dHIuYXJpYS1sYWJlbF09XCJ0aXRsZVwiIGNsYXNzPVwidG9hc3QtY29udGVudFwiPlxyXG4gICAgICB7eyB0aXRsZSB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2XHJcbiAgICAgICpuZ0lmPVwibWVzc2FnZVwiXHJcbiAgICAgIHJvbGU9XCJhbGVydFwiXHJcbiAgICAgIGFyaWEtbGl2ZT1cInBvbGl0ZVwiXHJcbiAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwibWVzc2FnZVwiXHJcbiAgICAgIGNsYXNzPVwibWVzc2FnZSBtc2cte3sgdHlwZSB9fVwiXHJcbiAgICA+XHJcbiAgICAgIHt7IG1lc3NhZ2UgfCB0cmFuc2xhdGUgOiB7IHZhbHVlOiB2YWx1ZSB9IH19XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8ZGl2ICpuZ0lmPVwiY3VzdG9tQ29udGVudFwiIGNsYXNzPVwibWVzc2FnZSBtc2cte3sgdHlwZSB9fVwiPnt7IGN1c3RvbUNvbnRlbnQgfX08L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8ZGl2IChjbGljayk9XCJyZW1vdmUoKVwiIGNsYXNzPVwicmVtb3ZlXCI+XHJcbiAgICA8c3BhbiBzdHlsZT1cImZvbnQtc2l6ZTogMjZweDsgY29sb3I6IGdyYXlcIiBhcmlhLWhpZGRlbj1cInRydWVcIj4mdGltZXM7PC9zcGFuPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { getRandomNumber } from '../../utilities';
|
|
2
|
+
import { NODE_MARGIN, NODE_TYPE, NODE_WIDTH } from '../../constants';
|
|
2
3
|
export const createSegmentedPath = (connection, options) => {
|
|
3
4
|
var _a;
|
|
4
5
|
const { multiPoints = true, offset = 0 } = ((_a = options === null || options === void 0 ? void 0 : options.transform) === null || _a === void 0 ? void 0 : _a.options) || {};
|
|
@@ -24,6 +25,26 @@ export const createSegmentedPath = (connection, options) => {
|
|
|
24
25
|
return [start, ..._points, end];
|
|
25
26
|
}
|
|
26
27
|
case 'forward': {
|
|
28
|
+
const _x = start.x + NODE_WIDTH + NODE_MARGIN;
|
|
29
|
+
if (end.x > _x && end.y > start.y) {
|
|
30
|
+
return [start, { x: start.x, y: end.y + offset }, end];
|
|
31
|
+
}
|
|
32
|
+
if (end.x > _x && end.y == start.y) {
|
|
33
|
+
const y = Math.random() * (70 - 5) + 20 + start.y;
|
|
34
|
+
const _points = [
|
|
35
|
+
{ x: start.x, y: y },
|
|
36
|
+
{ x: end.x, y: y }
|
|
37
|
+
];
|
|
38
|
+
return [start, ..._points, end];
|
|
39
|
+
}
|
|
40
|
+
if (end.y > start.y && end.x > start.x && connection.targetNode.type == NODE_TYPE.end) {
|
|
41
|
+
const x = Math.random() * (40 - 5) + 15 + start.x;
|
|
42
|
+
const _points = [
|
|
43
|
+
{ x: x, y: start.y },
|
|
44
|
+
{ x: x, y: end.y }
|
|
45
|
+
];
|
|
46
|
+
return [start, ..._points, end];
|
|
47
|
+
}
|
|
27
48
|
if (end.y < start.y) {
|
|
28
49
|
const _points = [{ x: start.x, y: end.y }];
|
|
29
50
|
return [start, ..._points, end];
|
|
@@ -47,4 +68,4 @@ export const createSegmentedPath = (connection, options) => {
|
|
|
47
68
|
return [start, end];
|
|
48
69
|
};
|
|
49
70
|
};
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29ubmVjdGlvbi1wYXRoLnRyYW5zZm9ybWVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL251eGVvLWRldmVsb3BtZW50LWZyYW1ld29yay9zcmMvbGliL2NvbXBvbmVudHMvZGlhZ3JhbXMvZWRpdG9yL292ZXJyaWRlcy9jb25uZWN0aW9uLXBhdGgudHJhbnNmb3JtZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUVyRSxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBdUIsQ0FBQyxVQUFVLEVBQUUsT0FBTyxFQUFFLEVBQUU7O0lBQzlFLE1BQU0sRUFBRSxXQUFXLEdBQUcsSUFBSSxFQUFFLE1BQU0sR0FBRyxDQUFDLEVBQUUsR0FBRyxDQUFBLE1BQUEsT0FBTyxhQUFQLE9BQU8sdUJBQVAsT0FBTyxDQUFFLFNBQVMsMENBQUUsT0FBTyxLQUFJLEVBQUUsQ0FBQztJQUM3RSxNQUFNLFVBQVUsR0FBRyxDQUFDLENBQUMsQ0FBQSxPQUFPLGFBQVAsT0FBTyx1QkFBUCxPQUFPLENBQUUsUUFBUSxDQUFBLENBQUM7SUFDdkMsTUFBTSxTQUFTLEdBQUcsVUFBVSxDQUFDLFNBQVMsQ0FBQztJQUN2QyxPQUFPLENBQUMsTUFBTSxFQUFFLEVBQUU7UUFDakIsSUFBSSxNQUFNLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUN4QixNQUFNLElBQUksS0FBSyxDQUFDLDBEQUEwRCxDQUFDLENBQUM7U0FDNUU7UUFFRCxNQUFNLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxHQUFHLE1BQU0sQ0FBQztRQUU1QixJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ2hCLFFBQVEsU0FBUyxFQUFFO2dCQUNsQixLQUFL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QkFDcEIsTUFBTSxPQUFPLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQzt3QkFDM0MsT0FBTyxDQUFDLEtBQUssRUFBRSxHQUFHLE9BQU8sRUFBRSxHQUFHLENBQUMsQ0FBQztxQkFDaEM7b0JBQ0QsTUFBTTtpQkFDTjthQUNEO1NBQ0Q7UUFFRCxJQUFJLFdBQVcsRUFBRTtZQUNoQixNQUFNLFNBQVMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDO1lBRWxELE1BQU0sa0JBQWtCLEdBQUc7Z0JBQzFCLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLFNBQVMsR0FBRyxNQUFNLEVBQUU7Z0JBQ3JDLEVBQUUsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLFNBQVMsR0FBRyxNQUFNLEVBQUU7YUFDbkMsQ0FBQztZQUVGLE9BQU87Z0RBQ0QsS0FBSyxLQUFFLFVBQVUsRUFBRSxFQUFFLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxTQUFTLEdBQUcsTUFBTSxFQUFFO2dCQUM3RCxHQUFHLGtCQUFrQjtnREFDaEIsR0FBRyxLQUFFLFNBQVMsRUFBRSxFQUFFLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxTQUFTLEdBQUcsTUFBTSxFQUFFO2FBQ3hELENBQUM7U0FDRjtRQUVELE9BQU8sQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDckIsQ0FBQyxDQUFDO0FBQ0gsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJhbnNmb3JtZXJGYWN0b3J5IH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xyXG5pbXBvcnQgeyBnZXRSYW5kb21OdW1iZXIgfSBmcm9tICcuLi8uLi91dGlsaXRpZXMnO1xyXG5pbXBvcnQgeyBOT0RFX01BUkdJTiwgTk9ERV9UWVBFLCBOT0RFX1dJRFRIIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzJztcclxuXHJcbmV4cG9ydCBjb25zdCBjcmVhdGVTZWdtZW50ZWRQYXRoOiBUcmFuc2Zvcm1lckZhY3RvcnkgPSAoY29ubmVjdGlvbiwgb3B0aW9ucykgPT4ge1xyXG5cdGNvbnN0IHsgbXVsdGlQb2ludHMgPSB0cnVlLCBvZmZzZXQgPSAwIH0gPSBvcHRpb25zPy50cmFuc2Zvcm0/Lm9wdGlvbnMgfHwge307XHJcblx0Y29uc3QgaXNWZXJ0aWNhbCA9ICEhb3B0aW9ucz8udmVydGljYWw7XHJcblx0Y29uc3QgZGlyZWN0aW9uID0gY29ubmVjdGlvbi5kaXJlY3Rpb247XHJcblx0cmV0dXJuIChwb2ludHMpID0+IHtcclxuXHRcdGlmIChwb2ludHMubGVuZ3RoICE9PSAyKSB7XHJcblx0XHRcdHRocm93IG5ldyBFcnJvcignRXhhY3RseSB0d28gcG9pbnRzIGFyZSByZXF1aXJlZCB0byBjcmVhdGUgYSBsaW5lYXIgcGF0aC4nKTtcclxuXHRcdH1cclxuXHJcblx0XHRjb25zdCBbc3RhcnQsIGVuZF0gPSBwb2ludHM7XHJcblxyXG5cdFx0aWYgKCFpc1ZlcnRpY2FsKSB7XHJcblx0XHRcdHN3aXRjaCAoZGlyZWN0aW9uKSB7XHJcblx0XHRcdFx0Y2FzZSAnZG93bic6IHtcclxuXHRcdFx0XHRcdGNvbnN0IG9mZnNldCA9IGdldFJhbmRvbU51bWJlcihzdGFydC54LCBzdGFydC55LCAxMCwgNTAsIDE1MCk7XHJcblx0XHRcdFx0XHRjb25zdCBfcG9pbnRzID0gW1xyXG5cdFx0XHRcdFx0XHR7IHg6IHN0YXJ0LngsIHk6IHN0YXJ0LnkgKyBvZmZzZXQgfSxcclxuXHRcdFx0XHRcdFx0eyB4OiBlbmQueCwgeTogZW5kLnkgKyBvZmZzZXQgfVxyXG5cdFx0XHRcdFx0XTtcclxuXHRcdFx0XHRcdHJldHVybiBbc3RhcnQsIC4uLl9wb2ludHMsIGVuZF07XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRjYXNlICdiYWNrd2FyZCc6IHtcclxuXHRcdFx0XHRcdGNvbnN0IF9wb2ludHMgPSBbeyB4OiBlbmQueCwgeTogc3RhcnQueSB9XTtcclxuXHRcdFx0XHRcdHJldHVybiBbc3RhcnQsIC4uLl9wb2ludHMsIGVuZF07XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRjYXNlICdmb3J3YXJkJzoge1xyXG5cdFx0XHRcdFx0Y29uc3QgX3ggPSBzdGFydC54ICsgTk9ERV9XSURUSCArIE5PREVfTUFSR0lOO1xyXG5cclxuXHRcdFx0XHRcdGlmIChlbmQueCA+IF94ICYmIGVuZC55ID4gc3RhcnQueSkge1xyXG5cdFx0XHRcdFx0XHRyZXR1cm4gW3N0YXJ0LCB7IHg6IHN0YXJ0LngsIHk6IGVuZC55ICsgb2Zmc2V0IH0sIGVuZF07XHJcblx0XHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdFx0aWYgKGVuZC54ID4gX3ggJiYgZW5kLnkgPT0gc3RhcnQueSkge1xyXG5cdFx0XHRcdFx0XHRjb25zdCB5ID0gTWF0aC5yYW5kb20oKSAqICg3MCAtIDUpICsgMjAgKyBzdGFydC55O1xyXG5cdFx0XHRcdFx0XHRjb25zdCBfcG9pbnRzID0gW1xyXG5cdFx0XHRcdFx0XHRcdHsgeDogc3RhcnQueCwgeTogeSB9LFxyXG5cdFx0XHRcdFx0XHRcdHsgeDogZW5kLngsIHk6IHkgfVxyXG5cdFx0XHRcdFx0XHRdO1xyXG5cdFx0XHRcdFx0XHRyZXR1cm4gW3N0YXJ0LCAuLi5fcG9pbnRzLCBlbmRdO1xyXG5cdFx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRcdGlmIChlbmQueSA+IHN0YXJ0LnkgJiYgZW5kLnggPiBzdGFydC54ICYmIGNvbm5lY3Rpb24udGFyZ2V0Tm9kZS50eXBlID09IE5PREVfVFlQRS5lbmQpIHtcclxuXHRcdFx0XHRcdFx0Y29uc3QgeCA9IE1hdGgucmFuZG9tKCkgKiAoNDAgLSA1KSArIDE1ICsgc3RhcnQueDtcclxuXHRcdFx0XHRcdFx0Y29uc3QgX3BvaW50cyA9IFtcclxuXHRcdFx0XHRcdFx0XHR7IHg6IHgsIHk6IHN0YXJ0LnkgfSxcclxuXHRcdFx0XHRcdFx0XHR7IHg6IHgsIHk6IGVuZC55IH1cclxuXHRcdFx0XHRcdFx0XTtcclxuXHRcdFx0XHRcdFx0cmV0dXJuIFtzdGFydCwgLi4uX3BvaW50cywgZW5kXTtcclxuXHRcdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0XHRpZiAoZW5kLnkgPCBzdGFydC55KSB7XHJcblx0XHRcdFx0XHRcdGNvbnN0IF9wb2ludHMgPSBbeyB4OiBzdGFydC54LCB5OiBlbmQueSB9XTtcclxuXHRcdFx0XHRcdFx0cmV0dXJuIFtzdGFydCwgLi4uX3BvaW50cywgZW5kXTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdGJyZWFrO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdGlmIChtdWx0aVBvaW50cykge1xyXG5cdFx0XHRjb25zdCBtaWRwb2ludFkgPSAoZW5kLnkgLSBzdGFydC55KSAvIDIgKyBzdGFydC55O1xyXG5cclxuXHRcdFx0Y29uc3QgaW50ZXJtZWRpYXRlUG9pbnRzID0gW1xyXG5cdFx0XHRcdHsgeDogc3RhcnQueCwgeTogbWlkcG9pbnRZIC0gb2Zmc2V0IH0sXHJcblx0XHRcdFx0eyB4OiBlbmQueCwgeTogbWlkcG9pbnRZICsgb2Zmc2V0IH1cclxuXHRcdFx0XTtcclxuXHJcblx0XHRcdHJldHVybiBbXHJcblx0XHRcdFx0eyAuLi5zdGFydCwgY29udHJvbE91dDogeyB4OiBzdGFydC54LCB5OiBtaWRwb2ludFkgLSBvZmZzZXQgfSB9LFxyXG5cdFx0XHRcdC4uLmludGVybWVkaWF0ZVBvaW50cyxcclxuXHRcdFx0XHR7IC4uLmVuZCwgY29udHJvbEluOiB7IHg6IGVuZC54LCB5OiBtaWRwb2ludFkgKyBvZmZzZXQgfSB9XHJcblx0XHRcdF07XHJcblx0XHR9XHJcblxyXG5cdFx0cmV0dXJuIFtzdGFydCwgZW5kXTtcclxuXHR9O1xyXG59O1xyXG4iXX0=
|
|
@@ -23,4 +23,4 @@ export class BaseNodeClass extends ClassicPreset.Node {
|
|
|
23
23
|
this.options = config === null || config === void 0 ? void 0 : config.options;
|
|
24
24
|
}
|
|
25
25
|
}
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1ub2RlLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9kaWFncmFtcy9tb2RlbHMvYmFzZS1ub2RlLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBWXBGLE1BQU0sT0FBZ0IsYUFBMkIsU0FBUSxhQUFhLENBQUMsSUFBSTtJQXVCMUUsWUFBWSxNQUEwQjtRQUNyQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBbkJyQixTQUFJLEdBQWEsU0FBUyxDQUFDLE9BQU8sQ0FBQztRQUVuQyxVQUFLLEdBQVcsVUFBVSxDQUFDO1FBQzNCLFdBQU0sR0FBVyxXQUFXLENBQUM7UUFPN0IsZUFBVSxHQUFnRDtZQUN6RCxNQUFNLEVBQUUsZ0JBQWdCLENBQUMsS0FBSztZQUM5QixPQUFPLEVBQUUsZ0JBQWdCLENBQUMsR0FBRztTQUM3QixDQUFDO1FBT0QsSUFBSSxDQUFDLElBQUksR0FBRyxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsSUFBSSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxVQUFVLEdBQUcsQ0FBQSxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsVUFBVSxLQUFJLElBQUksQ0FBQyxVQUFVLENBQUM7UUFDeEQsSUFBSSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxJQUFJLFNBQVMsQ0FBQyxPQUFPLENBQUM7UUFDN0MsSUFBSSxDQUFDLFdBQVcsR0FBRyxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsV0FBVyxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLE1BQU0sQ0FBQztRQUM3QixJQUFJLENBQUMsS0FBSyxHQUFHLENBQUEsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLEtBQUssS0FBSSxVQUFVLENBQUM7UUFDekMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFBLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxNQUFNLEtBQUksV0FBVyxDQUFDO1FBQzVDLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLE9BQU8sQ0FBQztRQUMvQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxNQUFNLENBQUM7UUFDN0IsSUFBSSxDQUFDLFVBQVUsR0FBRyxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsVUFBVSxDQUFDO1FBQ3JDLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLE9BQU8sQ0FBQztJQUNoQyxDQUFDO0NBQ0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgQ2xhc3NpY1ByZXNldCB9IGZyb20gJ3JldGUnO1xyXG5pbXBvcnQgeyBJTl9PVVRfRElSRUNUSU9OLCBOT0RFX0hFSUdIVCwgTk9ERV9UWVBFLCBOT0RFX1dJRFRIIH0gZnJvbSAnLi4vY29uc3RhbnRzJztcclxuaW1wb3J0IHtcclxuXHREaWFncmFtQ29uZmlnLFxyXG5cdERpcmVjdGlvblR5cGUsXHJcblx0Tm9kZUNvbnRlbnQsXHJcblx0Tm9kZURlZmluaXRpb25EYXRhLFxyXG5cdE5vZGVTdGF0dXMsXHJcblx0Tm9kZVR5cGUsXHJcblx0Tm90aWZ5RXZlbnRUeXBlLFxyXG5cdE9wdGlvbmFsXHJcbn0gZnJvbSAnLi4vdHlwZXMnO1xyXG5cclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VOb2RlQ2xhc3M8VCA9IHVua25vd24+IGV4dGVuZHMgQ2xhc3NpY1ByZXNldC5Ob2RlIGltcGxlbWVudHMgTm9kZURlZmluaXRpb25EYXRhIHtcclxuXHRsYWJlbDogc3RyaW5nO1xyXG5cdHRlbXBsYXRlPzogVGVtcGxhdGVSZWY8YW55PjtcclxuXHRuYW1lPzogT3B0aW9uYWw8c3RyaW5nPjtcclxuXHRkZXNjcmlwdGlvbj86IE9wdGlvbmFsPHN0cmluZz47XHJcblx0dHlwZTogTm9kZVR5cGUgPSBOT0RFX1RZUEUuY29udGVudDtcclxuXHRzdGF0dXM/OiBOb2RlU3RhdHVzIHwgc3RyaW5nO1xyXG5cdHdpZHRoOiBudW1iZXIgPSBOT0RFX1dJRFRIO1xyXG5cdGhlaWdodDogbnVtYmVyID0gTk9ERV9IRUlHSFQ7XHJcblx0Y29udGVudD86IE9wdGlvbmFsPE5vZGVDb250ZW50PFJlY29yZDxzdHJpbmcsIGFueT4+PjtcclxuXHRwYXJlbnQ/OiBPcHRpb25hbDxzdHJpbmc+O1xyXG5cdGNvbmZpZz86IE9wdGlvbmFsPERpYWdyYW1Db25maWdbJ25vZGUnXT47XHJcblx0Y2hpbGRyZW4/OiBCYXNlTm9kZUNsYXNzPFQ+W107XHJcblx0c3R5bGVDbGFzcz86IHN0cmluZztcclxuXHRvcHRpb25zPzogUmVjb3JkPHN0cmluZywgYW55PjtcclxuXHRkaXJlY3Rpb25zOiBSZWNvcmQ8J2lucHV0cycgfCAnb3V0cHV0cycsIERpcmVjdGlvblR5cGU+ID0ge1xyXG5cdFx0aW5wdXRzOiBJTl9PVVRfRElSRUNUSU9OLnN0YXJ0LFxyXG5cdFx0b3V0cHV0czogSU5fT1VUX0RJUkVDVElPTi5lbmRcclxuXHR9O1xyXG5cdGxldmVsPzogbnVtYmVyO1xyXG5cdGVkZ2VzPzogc3RyaW5nW107XHJcblx0bm90aWZ5ITogKGV2ZW50VHlwZTogTm90aWZ5RXZlbnRUeXBlLCBwYXlsb2FkOiBSZWNvcmQ8c3RyaW5nLCBhbnk+KSA9PiB2b2lkO1xyXG5cclxuXHRjb25zdHJ1Y3Rvcihjb25maWc6IE5vZGVEZWZpbml0aW9uRGF0YSkge1xyXG5cdFx0c3VwZXIoY29uZmlnLmxhYmVsKTtcclxuXHRcdHRoaXMubmFtZSA9IGNvbmZpZz8ubmFtZTtcclxuXHRcdHRoaXMuZGlyZWN0aW9ucyA9IGNvbmZpZz8uZGlyZWN0aW9ucyB8fCB0aGlzLmRpcmVjdGlvbnM7XHJcblx0XHR0aGlzLnR5cGUgPSBjb25maWcudHlwZSB8fCBOT0RFX1RZUEUuY29udGVudDtcclxuXHRcdHRoaXMuZGVzY3JpcHRpb24gPSBjb25maWc/LmRlc2NyaXB0aW9uO1xyXG5cdFx0dGhpcy5zdGF0dXMgPSBjb25maWc/LnN0YXR1cztcclxuXHRcdHRoaXMud2lkdGggPSBjb25maWc/LndpZHRoIHx8IE5PREVfV0lEVEg7XHJcblx0XHR0aGlzLmhlaWdodCA9IGNvbmZpZz8uaGVpZ2h0IHx8IE5PREVfSEVJR0hUO1xyXG5cdFx0dGhpcy5jb250ZW50ID0gY29uZmlnPy5jb250ZW50O1xyXG5cdFx0dGhpcy5jb25maWcgPSBjb25maWc/LmNvbmZpZztcclxuXHRcdHRoaXMuc3R5bGVDbGFzcyA9IGNvbmZpZz8uc3R5bGVDbGFzcztcclxuXHRcdHRoaXMub3B0aW9ucyA9IGNvbmZpZz8ub3B0aW9ucztcclxuXHR9XHJcbn1cclxuIl19
|
|
@@ -27,11 +27,10 @@ export class DiagramService {
|
|
|
27
27
|
return this.plugins.area.container.getBoundingClientRect();
|
|
28
28
|
}
|
|
29
29
|
getContentNodes() {
|
|
30
|
-
return this.editor
|
|
31
|
-
.getNodes()
|
|
32
|
-
.filter((nd) => ![NODE_TYPE.start, NODE_TYPE.end].includes(nd.type));
|
|
30
|
+
return this.editor.getNodes().filter((nd) => ![NODE_TYPE.start, NODE_TYPE.end].includes(nd.type));
|
|
33
31
|
}
|
|
34
32
|
getNodesData() {
|
|
33
|
+
//@ts-ignore
|
|
35
34
|
return this.getContentNodes().map((node) => node.content.data);
|
|
36
35
|
}
|
|
37
36
|
canAddNode(nodeType) {
|
|
@@ -67,6 +66,7 @@ export class DiagramService {
|
|
|
67
66
|
DiagramUtils.createInputsConfig(_node.id, contentPorts).forEach(({ id, config }) => this.createInput(_node, id, config));
|
|
68
67
|
DiagramUtils.createOutputsConfig(_node.id, contentPorts).forEach(({ id, config }) => this.createOutput(_node, id, config));
|
|
69
68
|
}
|
|
69
|
+
//@ts-ignore
|
|
70
70
|
_node.notify = this.notifyListener(_node);
|
|
71
71
|
return _node;
|
|
72
72
|
}
|
|
@@ -111,6 +111,14 @@ export class DiagramService {
|
|
|
111
111
|
const node = this.getViewNode(id);
|
|
112
112
|
return node ? node.position : null;
|
|
113
113
|
}
|
|
114
|
+
getLargestXPosition() {
|
|
115
|
+
return this.getViewNodes().reduce((x, node) => {
|
|
116
|
+
if (node.position.x > x) {
|
|
117
|
+
x = node.position.x;
|
|
118
|
+
}
|
|
119
|
+
return x;
|
|
120
|
+
}, 0);
|
|
121
|
+
}
|
|
114
122
|
createInput(node, id = `${node.id}-input`, config) {
|
|
115
123
|
node.addInput(id, new InputPort(Object.assign({ socket: this.socket }, config)));
|
|
116
124
|
return node;
|
|
@@ -171,10 +179,7 @@ export class DiagramService {
|
|
|
171
179
|
});
|
|
172
180
|
}
|
|
173
181
|
_creteGatewayOutput(_node) {
|
|
174
|
-
DiagramUtils.createOutputsConfig(_node.id, [
|
|
175
|
-
'secondary',
|
|
176
|
-
'tertiary'
|
|
177
|
-
]).forEach((input) => this.createOutput(_node, input.id, input === null || input === void 0 ? void 0 : input.config));
|
|
182
|
+
DiagramUtils.createOutputsConfig(_node.id, ['secondary', 'tertiary']).forEach((input) => this.createOutput(_node, input.id, input === null || input === void 0 ? void 0 : input.config));
|
|
178
183
|
}
|
|
179
184
|
_removeNode(data) {
|
|
180
185
|
return __awaiter(this, void 0, void 0, function* () {
|
|
@@ -185,32 +190,38 @@ export class DiagramService {
|
|
|
185
190
|
const viewNode = (id) => this.plugins.area.nodeViews.get(id);
|
|
186
191
|
let config = node.config;
|
|
187
192
|
let index = null;
|
|
188
|
-
let position =
|
|
193
|
+
let position = { x: 0, y: 0 };
|
|
189
194
|
let direction = null;
|
|
190
|
-
if (config
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
const
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
195
|
+
if (config) {
|
|
196
|
+
if (config === null || config === void 0 ? void 0 : config.isLinked) {
|
|
197
|
+
index = this.editor.getNodes().findIndex((nd) => nd.id === data.nodeId);
|
|
198
|
+
position = viewNode(data.nodeId).position;
|
|
199
|
+
direction = node.directions;
|
|
200
|
+
}
|
|
201
|
+
this.plugins.readonly.disable();
|
|
202
|
+
yield removeNode(data, this.editor);
|
|
203
|
+
if (config.isLinked) {
|
|
204
|
+
//@ts-ignore
|
|
205
|
+
const nodes = this.editor.getNodes().slice(index);
|
|
206
|
+
while (nodes.length) {
|
|
207
|
+
const _node = nodes.shift();
|
|
208
|
+
if (!_node) {
|
|
209
|
+
continue;
|
|
210
|
+
}
|
|
211
|
+
const _dir = Object.assign({}, _node.directions);
|
|
212
|
+
const _position = Object.assign({}, viewNode(_node.id).position);
|
|
213
|
+
_node.directions = direction;
|
|
214
|
+
if (_node.type == NODE_TYPE.end) {
|
|
215
|
+
position.y = Math.abs(Math.floor(position.y - (_node.height - NODE_CIRCLE_SIZE) / 2));
|
|
216
|
+
}
|
|
217
|
+
yield this.plugins.area.translate(_node.id, position);
|
|
218
|
+
yield this.plugins.area.update('node', _node.id);
|
|
219
|
+
position = _position;
|
|
220
|
+
direction = _dir;
|
|
206
221
|
}
|
|
207
|
-
yield this.plugins.area.translate(_node.id, position);
|
|
208
|
-
yield this.plugins.area.update('node', _node.id);
|
|
209
|
-
position = _position;
|
|
210
|
-
direction = _dir;
|
|
211
222
|
}
|
|
223
|
+
this.plugins.readonly.enable();
|
|
212
224
|
}
|
|
213
|
-
this.plugins.readonly.enable();
|
|
214
225
|
});
|
|
215
226
|
}
|
|
216
227
|
}
|
|
@@ -219,4 +230,4 @@ DiagramService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", versi
|
|
|
219
230
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DiagramService, decorators: [{
|
|
220
231
|
type: Injectable
|
|
221
232
|
}], ctorParameters: function () { return [{ type: i1.DiagramPluginsService }]; } });
|
|
222
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhZ3JhbS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9kaWFncmFtcy9zZXJ2aWNlcy9kaWFncmFtLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQzNDLE9BQU8sRUFFTCxVQUFVLEVBRVYsU0FBUyxFQUNULFVBQVUsRUFFWCxNQUFNLFdBQVcsQ0FBQztBQVluQixPQUFPLEVBQ0wsWUFBWSxFQUNaLFVBQVUsRUFDVix3QkFBd0IsRUFDekIsTUFBTSxjQUFjLENBQUM7OztBQUl0QixNQUFNLE9BQU8sY0FBYztJQVUxQjs7T0FFRztJQUNILFlBQW1CLE9BQThCO1FBQTlCLFlBQU8sR0FBUCxPQUFPLENBQXVCO1FBWnpDLGVBQVUsR0FBRyxJQUFJLE9BQU8sRUFBNEIsQ0FBQztRQUs3RCxhQUFRLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQU9VLENBQUM7SUFFckQsU0FBUyxDQUFDLE1BQWdDO1FBQ3pDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzdCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQztRQUM1QixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7UUFDNUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsT0FB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LENBQUMsTUFBTSxHQUFHLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQzlELENBQUM7cUJBQ0Y7b0JBQ0QsTUFBTSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUUsRUFBRSxRQUFRLENBQUMsQ0FBQztvQkFDdEQsTUFBTSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztvQkFDakQsUUFBUSxHQUFHLFNBQVMsQ0FBQztvQkFDckIsU0FBUyxHQUFHLElBQUksQ0FBQztpQkFDakI7YUFDRDtZQUNELElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2hDLENBQUM7S0FBQTs7NEdBcFNXLGNBQWM7Z0hBQWQsY0FBYzs0RkFBZCxjQUFjO2tCQUQxQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOb2RlRWRpdG9yIH0gZnJvbSAncmV0ZSc7XHJcbmltcG9ydCB7IFBvc2l0aW9uIH0gZnJvbSAncmV0ZS1hcmVhLXBsdWdpbi9fdHlwZXMvdHlwZXMnO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IE5PREVfQ0lSQ0xFX1NJWkUsIE5PREVfVFlQRSwgTk9USUZZX0VWRU5UIH0gZnJvbSAnLi4vY29uc3RhbnRzJztcclxuaW1wb3J0IHsgaW5pdE5vZGVCeVR5cGUgfSBmcm9tICcuLi9lZGl0b3InO1xyXG5pbXBvcnQge1xyXG4gIEJhc2VOb2RlQ2xhc3MsXHJcbiAgQ29ubmVjdGlvbixcclxuICBDb250ZW50Tm9kZSxcclxuICBJbnB1dFBvcnQsXHJcbiAgT3V0cHV0UG9ydCxcclxuICBTb2NrZXRcclxufSBmcm9tICcuLi9tb2RlbHMnO1xyXG5pbXBvcnQge1xyXG4gIENvbm5lY3Rpb25Db25maWdUeXBlLFxyXG4gIERpYWdyYW1FZGl0b3JXaXRoUGx1Z2lucyxcclxuICBJbnB1dENvbmZpZ1R5cGUsXHJcbiAgTm9kZURlZmluaXRpb25EYXRhLFxyXG4gIE5vZGVUeXBlLFxyXG4gIE5vdGlmeUV2ZW50VHlwZSxcclxuICBPdXRwdXRDb25maWdUeXBlLFxyXG4gIFBvcnRUeXBlLFxyXG4gIFNjaGVtZXNcclxufSBmcm9tICcuLi90eXBlcyc7XHJcbmltcG9ydCB7XHJcbiAgRGlhZ3JhbVV0aWxzLFxyXG4gIHJlbW92ZU5vZGUsXHJcbiAgcmVtb3ZlTm9kZUFuZENvbm5lY3Rpb25zXHJcbn0gZnJvbSAnLi4vdXRpbGl0aWVzJztcclxuaW1wb3J0IHsgRGlhZ3JhbVBsdWdpbnNTZXJ2aWNlIH0gZnJvbSAnLi9kaWFncmFtLXBsdWdpbnMuc2VydmljZSc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBEaWFncmFtU2VydmljZSB7XHJcblx0cHJpdmF0ZSBfZWRpdG9yU3ViID0gbmV3IFN1YmplY3Q8RGlhZ3JhbUVkaXRvcldpdGhQbHVnaW5zPigpO1xyXG5cclxuXHRwdWJsaWMgZWRpdG9yITogTm9kZUVkaXRvcjxTY2hlbWVzPjtcclxuXHRwdWJsaWMgc29ja2V0ITogU29ja2V0O1xyXG5cclxuXHRvblJlYWR5JCA9IHRoaXMuX2VkaXRvclN1Yi5hc09ic2VydmFibGUoKTtcclxuXHRkZXN0cm95ITogKCkgPT4gdm9pZDtcclxuXHRmaXRUb1pvb20hOiAoKSA9PiB2b2lkO1xyXG5cclxuXHQvKipcclxuXHQgKlxyXG5cdCAqL1xyXG5cdGNvbnN0cnVjdG9yKHB1YmxpYyBwbHVnaW5zOiBEaWFncmFtUGx1Z2luc1NlcnZpY2UpIHt9XHJcblxyXG5cdHNldEVkaXRvcihlZGl0b3I6IERpYWdyYW1FZGl0b3JXaXRoUGx1Z2lucykge1xyXG5cdFx0dGhpcy5fZWRpdG9yU3ViLm5leHQoZWRpdG9yKTtcclxuXHRcdHRoaXMuZWRpdG9yID0gZWRpdG9yLmVkaXRvcjtcclxuXHRcdHRoaXMuc29ja2V0ID0gZWRpdG9yLnNvY2tldDtcclxuXHRcdHRoaXMuZGVzdHJveSA9IGVkaXRvci5kZXN0cm95O1xyXG5cdFx0dGhpcy5maXRUb1pvb20gPSBlZGl0b3IuZml0VG9ab29tO1xyXG5cdH1cclxuXHJcblx0ZGlhZ3JhbUNsaWVudFJlY3QoKTogRE9NUmVjdCB8IHVuZGVmaW5lZCB7XHJcblx0XHRyZXR1cm4gdGhpcy5wbHVnaW5zLmFyZWEuY29udGFpbmVyLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xyXG5cdH1cclxuXHJcblx0Z2V0Q29udGVudE5vZGVzKCkge1xyXG5cdFx0cmV0dXJuIHRoaXMuZWRpdG9yXHJcblx0XHRcdC5nZXROb2RlcygpXHJcblx0XHRcdC5maWx0ZXIoXHJcblx0XHRcdFx0KG5kKSA9PiAhW05PREVfVFlQRS5zdGFydCwgTk9ERV9UWVBFLmVuZF0uaW5jbHVkZXMobmQudHlwZSBhcyBhbnkpXHJcblx0XHRcdCk7XHJcblx0fVxyXG5cclxuXHRnZXROb2Rlc0RhdGEoKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5nZXRDb250ZW50Tm9kZXMoKS5tYXAoKG5vZGUpID0+IG5vZGUuY29udGVudC5kYXRhKTtcclxuXHR9XHJcblxyXG5cdGNhbkFkZE5vZGUobm9kZVR5cGU6IE5vZGVUeXBlKSB7XHJcblx0XHRpZiAobm9kZVR5cGUgPT09IE5PREVfVFlQRS5jb250ZW50KSB7XHJcblx0XHRcdHJldHVybiB0cnVlO1xyXG5cdFx0fVxyXG5cdFx0Y29uc3QgX25vZGVzID0gdGhpcy5lZGl0b3IuZ2V0Tm9kZXMoKTtcclxuXHRcdGNvbnN0IF9pc0V4aXN0ID0gX25vZGVzLnNvbWUoXHJcblx0XHRcdChuZCkgPT4gKG5kIGFzIEJhc2VOb2RlQ2xhc3MpLnR5cGUgPT09IG5vZGVUeXBlXHJcblx0XHQpO1xyXG5cdFx0cmV0dXJuICFfaXNFeGlzdDtcclxuXHR9XHJcblxyXG5cdGFzeW5jIGFkZE5vZGUobm9kZTogQmFzZU5vZGVDbGFzcykge1xyXG5cdFx0YXdhaXQgdGhpcy5lZGl0b3IuYWRkTm9kZShub2RlKTtcclxuXHR9XHJcblxyXG5cdGNyZWF0ZU5vZGU8VCBleHRlbmRzIEJhc2VOb2RlQ2xhc3MgPSBDb250ZW50Tm9kZT4oXHJcblx0XHR0eXBlOiBOb2RlVHlwZSA9IE5PREVfVFlQRS5jb250ZW50LFxyXG5cdFx0Y29uZmlnOiBOb2RlRGVmaW5pdGlvbkRhdGFcclxuXHQpOiBUIHtcclxuXHRcdGNvbnN0IF9ub2RlID0gaW5pdE5vZGVCeVR5cGUodHlwZSwgY29uZmlnKTtcclxuXHJcblx0XHRpZiAoY29uZmlnLnR5cGUgIT09IE5PREVfVFlQRS5zdGFydCkge1xyXG5cdFx0XHR0aGlzLmNyZWF0ZUlucHV0KF9ub2RlLCBEaWFncmFtVXRpbHMuY3JlYXRlSW5wdXRJZChfbm9kZS5pZCksIHtcclxuXHRcdFx0XHRzdHlsZUNsYXNzOiBEaWFncmFtVXRpbHMuY3JlYXRlSW5wdXRDbGFzcygpXHJcblx0XHRcdH0pO1xyXG5cdFx0fVxyXG5cclxuXHRcdGlmIChjb25maWcudHlwZSAhPT0gTk9ERV9UWVBFLmVuZCkge1xyXG5cdFx0XHR0aGlzLmNyZWF0ZU91dHB1dChfbm9kZSwgRGlhZ3JhbVV0aWxzLmNyZWF0ZU91dHB1dElkKF9ub2RlLmlkKSwge1xyXG5cdFx0XHRcdHN0eWxlQ2xhc3M6IERpYWdyYW1VdGlscy5jcmVhdGVPdXRwdXRDbGFzcygpXHJcblx0XHRcdH0pO1xyXG5cdFx0fVxyXG5cclxuXHRcdGlmIChjb25maWcudHlwZSA9PT0gTk9ERV9UWVBFLmdhdGV3YXkpIHtcclxuXHRcdFx0dGhpcy5fY3JldGVHYXRld2F5T3V0cHV0PFQ+KF9ub2RlKTtcclxuXHRcdH1cclxuXHJcblx0XHRpZiAoW05PREVfVFlQRS5jb250ZW50LCBOT0RFX1RZUEUudGVtcGxhdGVdLmluY2x1ZGVzKGNvbmZpZy50eXBlIGFzIGFueSkpIHtcclxuXHRcdFx0Y29uc3QgY29udGVudFBvcnRzOiBQb3J0VHlwZVtdID0gWydzZWNvbmRhcnknLCAndGVydGlhcnknLCAncXVhdGVybmFyeSddO1xyXG5cclxuXHRcdFx0RGlhZ3JhbVV0aWxzLmNyZWF0ZUlucHV0c0NvbmZpZyhfbm9kZS5pZCwgY29udGVudFBvcnRzKS5mb3JFYWNoKFxyXG5cdFx0XHRcdCh7IGlkLCBjb25maWcgfSkgPT4gdGhpcy5jcmVhdGVJbnB1dChfbm9kZSwgaWQsIGNvbmZpZylcclxuXHRcdFx0KTtcclxuXHJcblx0XHRcdERpYWdyYW1VdGlscy5jcmVhdGVPdXRwdXRzQ29uZmlnKF9ub2RlLmlkLCBjb250ZW50UG9ydHMpLmZvckVhY2goXHJcblx0XHRcdFx0KHsgaWQsIGNvbmZpZyB9KSA9PiB0aGlzLmNyZWF0ZU91dHB1dChfbm9kZSwgaWQsIGNvbmZpZylcclxuXHRcdFx0KTtcclxuXHRcdH1cclxuXHJcblx0XHRfbm9kZS5ub3RpZnkgPSB0aGlzLm5vdGlmeUxpc3RlbmVyKF9ub2RlKTtcclxuXHJcblx0XHRyZXR1cm4gX25vZGUgYXMgVDtcclxuXHR9XHJcblxyXG5cdHNob3VsZEFkZFN0YXJ0KG5vZGVUeXBlOiBzdHJpbmcpIHtcclxuXHRcdGlmIChub2RlVHlwZSA9PT0gTk9ERV9UWVBFLnN0YXJ0KSB7XHJcblx0XHRcdHJldHVybiBmYWxzZTtcclxuXHRcdH1cclxuXHRcdGNvbnN0IF9ub2RlcyA9IHRoaXMuZWRpdG9yLmdldE5vZGVzKCk7XHJcblx0XHRjb25zdCBfaXNFeGlzdCA9IF9ub2Rlcy5zb21lKFxyXG5cdFx0XHQobmQpID0+IChuZCBhcyBCYXNlTm9kZUNsYXNzKS50eXBlID09PSBOT0RFX1RZUEUuc3RhcnRcclxuXHRcdCk7XHJcblxyXG5cdFx0cmV0dXJuICFfaXNFeGlzdDtcclxuXHR9XHJcblxyXG5cdGdldE5vZGUoaWQ6IHN0cmluZykge1xyXG5cdFx0cmV0dXJuIHRoaXMuZWRpdG9yLmdldE5vZGUoaWQpO1xyXG5cdH1cclxuXHJcblx0Z2V0Tm9kZXMoKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5lZGl0b3IuZ2V0Tm9kZXMoKTtcclxuXHR9XHJcblxyXG5cdGdldENvbm5lY3Rpb25zKCkge1xyXG5cdFx0cmV0dXJuIHRoaXMuZWRpdG9yLmdldENvbm5lY3Rpb25zKCk7XHJcblx0fVxyXG5cclxuXHRnZXRDb25uZWN0aW9uKGlkOiBzdHJpbmcpIHtcclxuXHRcdHJldHVybiB0aGlzLmVkaXRvci5nZXRDb25uZWN0aW9uKGlkKTtcclxuXHR9XHJcblxyXG5cdGdldExhc3ROb2RlKCkge1xyXG5cdFx0Y29uc3Qgbm9kZXMgPSB0aGlzLmVkaXRvci5nZXROb2RlcygpO1xyXG5cdFx0cmV0dXJuIG5vZGVzLmxlbmd0aCA/IG5vZGVzW25vZGVzLmxlbmd0aCAtIDFdIDogbnVsbDtcclxuXHR9XHJcblxyXG5cdGdldE5vZGVzQnlUeXBlKHR5cGU6IE5vZGVUeXBlKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5lZGl0b3IuZ2V0Tm9kZXMoKS5maWx0ZXIoKG5kKSA9PiBuZC50eXBlID09PSB0eXBlKTtcclxuXHR9XHJcblxyXG5cdGdldFZpZXdOb2RlcygpIHtcclxuXHRcdHJldHVybiBBcnJheS5mcm9tKHRoaXMucGx1Z2lucy5hcmVhLm5vZGVWaWV3cy52YWx1ZXMoKSk7XHJcblx0fVxyXG5cclxuXHRnZXRMYXN0Vmlld05vZGUoKSB7XHJcblx0XHRjb25zdCBub2RlcyA9IHRoaXMuZ2V0Vmlld05vZGVzKCk7XHJcblx0XHRyZXR1cm4gbm9kZXMubGVuZ3RoID8gbm9kZXNbbm9kZXMubGVuZ3RoIC0gMV0gOiBudWxsO1xyXG5cdH1cclxuXHJcblx0Z2V0Vmlld05vZGUoaWQ6IHN0cmluZykge1xyXG5cdFx0cmV0dXJuIHRoaXMucGx1Z2lucy5hcmVhLm5vZGVWaWV3cy5nZXQoaWQpO1xyXG5cdH1cclxuXHJcblx0Z2V0Vmlld05vZGVQb3NpdGlvbihpZDogc3RyaW5nKSB7XHJcblx0XHRjb25zdCBub2RlID0gdGhpcy5nZXRWaWV3Tm9kZShpZCk7XHJcblx0XHRyZXR1cm4gbm9kZSA/IG5vZGUucG9zaXRpb24gOiBudWxsO1xyXG5cdH1cclxuXHJcblx0Y3JlYXRlSW5wdXQoXHJcblx0XHRub2RlOiBCYXNlTm9kZUNsYXNzLFxyXG5cdFx0aWQgPSBgJHtub2RlLmlkfS1pbnB1dGAsXHJcblx0XHRjb25maWc/OiBJbnB1dENvbmZpZ1R5cGVcclxuXHQpIHtcclxuXHRcdG5vZGUuYWRkSW5wdXQoXHJcblx0XHRcdGlkLFxyXG5cdFx0XHRuZXcgSW5wdXRQb3J0KHtcclxuXHRcdFx0XHRzb2NrZXQ6IHRoaXMuc29ja2V0LFxyXG5cdFx0XHRcdC4uLmNvbmZpZ1xyXG5cdFx0XHR9KVxyXG5cdFx0KTtcclxuXHRcdHJldHVybiBub2RlO1xyXG5cdH1cclxuXHJcblx0Y3JlYXRlT3V0cHV0KFxyXG5cdFx0bm9kZTogQmFzZU5vZGVDbGFzcyxcclxuXHRcdGlkID0gYCR7bm9kZS5pZH0tb3V0cHV0YCxcclxuXHRcdGNvbmZpZz86IE91dHB1dENvbmZpZ1R5cGVcclxuXHQpIHtcclxuXHRcdG5vZGUuYWRkT3V0cHV0KFxyXG5cdFx0XHRpZCxcclxuXHRcdFx0bmV3IE91dHB1dFBvcnQoe1xyXG5cdFx0XHRcdHNvY2tldDogdGhpcy5zb2NrZXQsXHJcblx0XHRcdFx0Li4uY29uZmlnXHJcblx0XHRcdH0pXHJcblx0XHQpO1xyXG5cdFx0cmV0dXJuIG5vZGU7XHJcblx0fVxyXG5cclxuXHRhc3luYyBhZGRDb25uZWN0aW9uKFxyXG5cdFx0c291cmNlTm9kZTogQmFzZU5vZGVDbGFzcyxcclxuXHRcdHRhcmdldE5vZGU6IEJhc2VOb2RlQ2xhc3MsXHJcblx0XHRjb25maWc/OiBDb25uZWN0aW9uQ29uZmlnVHlwZVxyXG5cdCkge1xyXG5cdFx0YXdhaXQgdGhpcy5lZGl0b3IuYWRkQ29ubmVjdGlvbihcclxuXHRcdFx0dGhpcy5jcmVhdGVDb25uZWN0aW9uKHNvdXJjZU5vZGUsIHRhcmdldE5vZGUsIGNvbmZpZylcclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRjcmVhdGVDb25uZWN0aW9uKFxyXG5cdFx0c291cmNlTm9kZTogQmFzZU5vZGVDbGFzcyxcclxuXHRcdHRhcmdldE5vZGU6IEJhc2VOb2RlQ2xhc3MsXHJcblx0XHRjb25maWc/OiBDb25uZWN0aW9uQ29uZmlnVHlwZVxyXG5cdCkge1xyXG5cdFx0cmV0dXJuIG5ldyBDb25uZWN0aW9uKHNvdXJjZU5vZGUsIHRhcmdldE5vZGUsIGNvbmZpZyk7XHJcblx0fVxyXG5cclxuXHRhc3luYyBhcHBlbmRDb25uZWN0aW9uKGNvbm5lY3Rpb246IENvbm5lY3Rpb24pIHtcclxuXHRcdGF3YWl0IHRoaXMuZWRpdG9yLmFkZENvbm5lY3Rpb24oY29ubmVjdGlvbik7XHJcblx0fVxyXG5cclxuXHRhc3luYyBjbGVhcigpIHtcclxuXHRcdHJldHVybiBhd2FpdCB0aGlzLmVkaXRvci5jbGVhcigpO1xyXG5cdH1cclxuXHJcblx0cmVkcmF3KCkge1xyXG5cdFx0dGhpcy5lZGl0b3IuZ2V0Tm9kZXMoKS5mb3JFYWNoKChub2RlKSA9PiB7XHJcblx0XHRcdHRoaXMucGx1Z2lucy5hcmVhLnVwZGF0ZSgnbm9kZScsIG5vZGUuaWQpO1xyXG5cdFx0fSk7XHJcblx0fVxyXG5cclxuXHRub3RpZnlMaXN0ZW5lcihub2RlOiBCYXNlTm9kZUNsYXNzKSB7XHJcblx0XHRyZXR1cm4gKFxyXG5cdFx0XHRldmVudFR5cGU6IE5vdGlmeUV2ZW50VHlwZSxcclxuXHRcdFx0cGF5bG9hZDogTm90aWZ5RXZlbnRUeXBlIGV4dGVuZHMgJ3JlbW92ZSdcclxuXHRcdFx0XHQ/IHsgbm9kZUlkOiBzdHJpbmcgfVxyXG5cdFx0XHRcdDogUmVjb3JkPHN0cmluZywgYW55PlxyXG5cdFx0KSA9PiB7XHJcblx0XHRcdGNvbnN0IF9hY3Rpb25zID0ge1xyXG5cdFx0XHRcdFtOT1RJRllfRVZFTlQucmVtb3ZlXTogdGhpcy5fcmVtb3ZlTm9kZS5iaW5kKHRoaXMpXHJcblx0XHRcdH07XHJcblxyXG5cdFx0XHRyZXR1cm4gX2FjdGlvbnNbZXZlbnRUeXBlXT8uKHBheWxvYWQgYXMgeyBub2RlSWQ6IHN0cmluZyB9KTtcclxuXHRcdH07XHJcblx0fVxyXG5cclxuXHRhc3luYyB0cmFuc2xhdGVWaWV3KCkge1xyXG5cdFx0Y29uc3QgeyBjb250YWluZXIsIGFyZWEgfSA9IHRoaXMucGx1Z2lucy5hcmVhO1xyXG5cdFx0Y29uc3QgcmVjdCA9IGNvbnRhaW5lci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuXHRcdGNvbnN0IGsgPSBhcmVhLnRyYW5zZm9ybS5rO1xyXG5cdFx0Y29uc3QgZGVsdGEgPSAtMC4yO1xyXG5cdFx0Y29uc3Qgb3ggPSBNYXRoLm1heCgwLCAocmVjdC5sZWZ0IC0gY29udGFpbmVyLmNsaWVudFdpZHRoIC8gMikgKiBrKTtcclxuXHRcdGNvbnN0IG95ID0gTWF0aC5tYXgoMCwgKHJlY3QudG9wIC0gY29udGFpbmVyLmNsaWVudEhlaWdodCAvIDIpICogayk7XHJcblxyXG5cdFx0YXJlYS56b29tKE1hdGgubWF4KDAuMSwgayAqICgxICsgZGVsdGEpKSwgb3ggKiBkZWx0YSwgb3kgKiBkZWx0YSk7XHJcblx0fVxyXG5cclxuXHRhc3luYyByZW1vdmVFbmROb2RlKCkge1xyXG5cdFx0Y29uc3Qgbm9kZSA9IHRoaXMuZ2V0Tm9kZXNCeVR5cGUoTk9ERV9UWVBFLmVuZClbMF07XHJcblx0XHRpZiAobm9kZSkge1xyXG5cdFx0XHRhd2FpdCByZW1vdmVOb2RlQW5kQ29ubmVjdGlvbnMobm9kZSwgdGhpcy5lZGl0b3IpO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBfY3JldGVHYXRld2F5T3V0cHV0PFQgZXh0ZW5kcyBCYXNlTm9kZUNsYXNzID0gQ29udGVudE5vZGU+KFxyXG5cdFx0X25vZGU6IENvbnRlbnROb2RlPHVua25vd24+XHJcblx0KSB7XHJcblx0XHREaWFncmFtVXRpbHMuY3JlYXRlT3V0cHV0c0NvbmZpZyhfbm9kZS5pZCwgW1xyXG5cdFx0XHQnc2Vjb25kYXJ5JyxcclxuXHRcdFx0J3RlcnRpYXJ5J1xyXG5cdFx0XSkuZm9yRWFjaCgoaW5wdXQpID0+IHRoaXMuY3JlYXRlT3V0cHV0KF9ub2RlLCBpbnB1dC5pZCwgaW5wdXQ/LmNvbmZpZykpO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSBhc3luYyBfcmVtb3ZlTm9kZShkYXRhOiB7IG5vZGVJZDogc3RyaW5nIH0pIHtcclxuXHRcdGNvbnN0IG5vZGUgPSB0aGlzLmVkaXRvci5nZXROb2RlKGRhdGEubm9kZUlkKTtcclxuXHRcdGlmICghbm9kZSkge1xyXG5cdFx0XHRyZXR1cm47XHJcblx0XHR9XHJcblxyXG5cdFx0Y29uc3Qgdmlld05vZGUgPSAoaWQ6IHN0cmluZykgPT4gdGhpcy5wbHVnaW5zLmFyZWEubm9kZVZpZXdzLmdldChpZCk7XHJcblxyXG5cdFx0bGV0IGNvbmZpZyA9IG5vZGUuY29uZmlnO1xyXG5cdFx0bGV0IGluZGV4ID0gbnVsbDtcclxuXHRcdGxldCBwb3NpdGlvbjogUG9zaXRpb24gPSBudWxsO1xyXG5cdFx0bGV0IGRpcmVjdGlvbiA9IG51bGw7XHJcblx0XHRpZiAoY29uZmlnLmlzTGlua2VkKSB7XHJcblx0XHRcdGluZGV4ID0gdGhpcy5lZGl0b3IuZ2V0Tm9kZXMoKS5maW5kSW5kZXgoKG5kKSA9PiBuZC5pZCA9PT0gZGF0YS5ub2RlSWQpO1xyXG5cdFx0XHRwb3NpdGlvbiA9IHZpZXdOb2RlKGRhdGEubm9kZUlkKS5wb3NpdGlvbjtcclxuXHRcdFx0ZGlyZWN0aW9uID0gbm9kZS5kaXJlY3Rpb25zO1xyXG5cdFx0fVxyXG5cdFx0dGhpcy5wbHVnaW5zLnJlYWRvbmx5LmRpc2FibGUoKTtcclxuXHRcdGF3YWl0IHJlbW92ZU5vZGUoZGF0YSwgdGhpcy5lZGl0b3IpO1xyXG5cclxuXHRcdGlmIChjb25maWcuaXNMaW5rZWQpIHtcclxuXHRcdFx0Y29uc3Qgbm9kZXMgPSB0aGlzLmVkaXRvci5nZXROb2RlcygpLnNsaWNlKGluZGV4KTtcclxuXHJcblx0XHRcdHdoaWxlIChub2Rlcy5sZW5ndGgpIHtcclxuXHRcdFx0XHRjb25zdCBfbm9kZSA9IG5vZGVzLnNoaWZ0KCk7XHJcblx0XHRcdFx0Y29uc3QgX2RpciA9IHsgLi4uX25vZGUuZGlyZWN0aW9ucyB9O1xyXG5cdFx0XHRcdGNvbnN0IF9wb3NpdGlvbiA9IHsgLi4udmlld05vZGUoX25vZGUuaWQpLnBvc2l0aW9uIH07XHJcblx0XHRcdFx0X25vZGUuZGlyZWN0aW9ucyA9IGRpcmVjdGlvbjtcclxuXHRcdFx0XHRpZiAoX25vZGUudHlwZSA9PSBOT0RFX1RZUEUuZW5kKSB7XHJcblx0XHRcdFx0XHRwb3NpdGlvbi55ID0gTWF0aC5hYnMoXHJcblx0XHRcdFx0XHRcdE1hdGguZmxvb3IocG9zaXRpb24ueSAtIChfbm9kZS5oZWlnaHQgLSBOT0RFX0NJUkNMRV9TSVpFKSAvIDIpXHJcblx0XHRcdFx0XHQpO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRhd2FpdCB0aGlzLnBsdWdpbnMuYXJlYS50cmFuc2xhdGUoX25vZGUuaWQsIHBvc2l0aW9uKTtcclxuXHRcdFx0XHRhd2FpdCB0aGlzLnBsdWdpbnMuYXJlYS51cGRhdGUoJ25vZGUnLCBfbm9kZS5pZCk7XHJcblx0XHRcdFx0cG9zaXRpb24gPSBfcG9zaXRpb247XHJcblx0XHRcdFx0ZGlyZWN0aW9uID0gX2RpcjtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0dGhpcy5wbHVnaW5zLnJlYWRvbmx5LmVuYWJsZSgpO1xyXG5cdH1cclxufVxyXG4iXX0=
|
|
233
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhZ3JhbS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnV4ZW8tZGV2ZWxvcG1lbnQtZnJhbWV3b3JrL3NyYy9saWIvY29tcG9uZW50cy9kaWFncmFtcy9zZXJ2aWNlcy9kaWFncmFtLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0MsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQzNDLE9BQU8sRUFBaUIsVUFBVSxFQUFlLFNBQVMsRUFBRSxVQUFVLEVBQVUsTUFBTSxXQUFXLENBQUM7QUFjbEcsT0FBTyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxjQUFjLENBQUM7OztBQUlsRixNQUFNLE9BQU8sY0FBYztJQVUxQjs7T0FFRztJQUNILFlBQW1CLE9BQThCO1FBQTlCLFlBQU8sR0FBUCxPQUFPLENBQXVCO1FBWnpDLGVBQVUsR0FBRyxJQUFJLE9BQU8sRUFBNEIsQ0FBQztRQUs3RCxhQUFRLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQU9VLENBQUM7SUFFckQsU0FBUyxDQUFDLE1BQWdDO1FBQ3pDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzdCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQztRQUM1QixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7UUFDNUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsT0FB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QUU7d0JBQ3BCLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQzt3QkFDNUIsSUFBSSxDQUFDLEtBQUssRUFBRTs0QkFDWCxTQUFTO3lCQUNUO3dCQUNELE1BQU0sSUFBSSxxQkFBUSxLQUFLLENBQUMsVUFBVSxDQUFFLENBQUM7d0JBQ3JDLE1BQU0sU0FBUyxxQkFBUSxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBRSxDQUFDO3dCQUNyRCxLQUFLLENBQUMsVUFBVSxHQUFHLFNBQXdELENBQUM7d0JBQzVFLElBQUksS0FBSyxDQUFDLElBQUksSUFBSSxTQUFTLENBQUMsR0FBRyxFQUFFOzRCQUNoQyxRQUFRLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7eUJBQ3RGO3dCQUNELE1BQU0sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQUUsUUFBUSxDQUFDLENBQUM7d0JBQ3RELE1BQU0sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7d0JBQ2pELFFBQVEsR0FBRyxTQUFTLENBQUM7d0JBQ3JCLFNBQVMsR0FBRyxJQUFJLENBQUM7cUJBQ2pCO2lCQUNEO2dCQUNELElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDO2FBQy9CO1FBQ0YsQ0FBQztLQUFBOzs0R0FsUlcsY0FBYztnSEFBZCxjQUFjOzRGQUFkLGNBQWM7a0JBRDFCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5vZGVFZGl0b3IgfSBmcm9tICdyZXRlJztcclxuaW1wb3J0IHsgUG9zaXRpb24gfSBmcm9tICdyZXRlLWFyZWEtcGx1Z2luL190eXBlcy90eXBlcyc7XHJcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgTk9ERV9DSVJDTEVfU0laRSwgTk9ERV9UWVBFLCBOT1RJRllfRVZFTlQgfSBmcm9tICcuLi9jb25zdGFudHMnO1xyXG5pbXBvcnQgeyBpbml0Tm9kZUJ5VHlwZSB9IGZyb20gJy4uL2VkaXRvcic7XHJcbmltcG9ydCB7IEJhc2VOb2RlQ2xhc3MsIENvbm5lY3Rpb24sIENvbnRlbnROb2RlLCBJbnB1dFBvcnQsIE91dHB1dFBvcnQsIFNvY2tldCB9IGZyb20gJy4uL21vZGVscyc7XHJcbmltcG9ydCB7IE5vZGVWaWV3IH0gZnJvbSAncmV0ZS1hcmVhLXBsdWdpbic7XHJcbmltcG9ydCB7XHJcblx0Q29ubmVjdGlvbkNvbmZpZ1R5cGUsXHJcblx0RGlhZ3JhbUVkaXRvcldpdGhQbHVnaW5zLFxyXG5cdERpcmVjdGlvblR5cGUsXHJcblx0SW5wdXRDb25maWdUeXBlLFxyXG5cdE5vZGVEZWZpbml0aW9uRGF0YSxcclxuXHROb2RlVHlwZSxcclxuXHROb3RpZnlFdmVudFR5cGUsXHJcblx0T3V0cHV0Q29uZmlnVHlwZSxcclxuXHRQb3J0VHlwZSxcclxuXHRTY2hlbWVzXHJcbn0gZnJvbSAnLi4vdHlwZXMnO1xyXG5pbXBvcnQgeyBEaWFncmFtVXRpbHMsIHJlbW92ZU5vZGUsIHJlbW92ZU5vZGVBbmRDb25uZWN0aW9ucyB9IGZyb20gJy4uL3V0aWxpdGllcyc7XHJcbmltcG9ydCB7IERpYWdyYW1QbHVnaW5zU2VydmljZSB9IGZyb20gJy4vZGlhZ3JhbS1wbHVnaW5zLnNlcnZpY2UnO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgRGlhZ3JhbVNlcnZpY2Uge1xyXG5cdHByaXZhdGUgX2VkaXRvclN1YiA9IG5ldyBTdWJqZWN0PERpYWdyYW1FZGl0b3JXaXRoUGx1Z2lucz4oKTtcclxuXHJcblx0cHVibGljIGVkaXRvciE6IE5vZGVFZGl0b3I8U2NoZW1lcz47XHJcblx0cHVibGljIHNvY2tldCE6IFNvY2tldDtcclxuXHJcblx0b25SZWFkeSQgPSB0aGlzLl9lZGl0b3JTdWIuYXNPYnNlcnZhYmxlKCk7XHJcblx0ZGVzdHJveSE6ICgpID0+IHZvaWQ7XHJcblx0Zml0VG9ab29tITogKCkgPT4gdm9pZDtcclxuXHJcblx0LyoqXHJcblx0ICpcclxuXHQgKi9cclxuXHRjb25zdHJ1Y3RvcihwdWJsaWMgcGx1Z2luczogRGlhZ3JhbVBsdWdpbnNTZXJ2aWNlKSB7fVxyXG5cclxuXHRzZXRFZGl0b3IoZWRpdG9yOiBEaWFncmFtRWRpdG9yV2l0aFBsdWdpbnMpIHtcclxuXHRcdHRoaXMuX2VkaXRvclN1Yi5uZXh0KGVkaXRvcik7XHJcblx0XHR0aGlzLmVkaXRvciA9IGVkaXRvci5lZGl0b3I7XHJcblx0XHR0aGlzLnNvY2tldCA9IGVkaXRvci5zb2NrZXQ7XHJcblx0XHR0aGlzLmRlc3Ryb3kgPSBlZGl0b3IuZGVzdHJveTtcclxuXHRcdHRoaXMuZml0VG9ab29tID0gZWRpdG9yLmZpdFRvWm9vbTtcclxuXHR9XHJcblxyXG5cdGRpYWdyYW1DbGllbnRSZWN0KCk6IERPTVJlY3QgfCB1bmRlZmluZWQge1xyXG5cdFx0cmV0dXJuIHRoaXMucGx1Z2lucy5hcmVhLmNvbnRhaW5lci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuXHR9XHJcblxyXG5cdGdldENvbnRlbnROb2RlcygpIHtcclxuXHRcdHJldHVybiB0aGlzLmVkaXRvci5nZXROb2RlcygpLmZpbHRlcigobmQpID0+ICFbTk9ERV9UWVBFLnN0YXJ0LCBOT0RFX1RZUEUuZW5kXS5pbmNsdWRlcyhuZC50eXBlIGFzIGFueSkpO1xyXG5cdH1cclxuXHJcblx0Z2V0Tm9kZXNEYXRhKCkge1xyXG5cdFx0Ly9AdHMtaWdub3JlXHJcblx0XHRyZXR1cm4gdGhpcy5nZXRDb250ZW50Tm9kZXMoKS5tYXAoKG5vZGUpID0+IG5vZGUuY29udGVudC5kYXRhKTtcclxuXHR9XHJcblxyXG5cdGNhbkFkZE5vZGUobm9kZVR5cGU6IE5vZGVUeXBlKSB7XHJcblx0XHRpZiAobm9kZVR5cGUgPT09IE5PREVfVFlQRS5jb250ZW50KSB7XHJcblx0XHRcdHJldHVybiB0cnVlO1xyXG5cdFx0fVxyXG5cdFx0Y29uc3QgX25vZGVzID0gdGhpcy5lZGl0b3IuZ2V0Tm9kZXMoKTtcclxuXHRcdGNvbnN0IF9pc0V4aXN0ID0gX25vZGVzLnNvbWUoKG5kKSA9PiAobmQgYXMgQmFzZU5vZGVDbGFzcykudHlwZSA9PT0gbm9kZVR5cGUpO1xyXG5cdFx0cmV0dXJuICFfaXNFeGlzdDtcclxuXHR9XHJcblxyXG5cdGFzeW5jIGFkZE5vZGUobm9kZTogQmFzZU5vZGVDbGFzcykge1xyXG5cdFx0YXdhaXQgdGhpcy5lZGl0b3IuYWRkTm9kZShub2RlKTtcclxuXHR9XHJcblxyXG5cdGNyZWF0ZU5vZGU8VCBleHRlbmRzIEJhc2VOb2RlQ2xhc3MgPSBDb250ZW50Tm9kZT4odHlwZTogTm9kZVR5cGUgPSBOT0RFX1RZUEUuY29udGVudCwgY29uZmlnOiBOb2RlRGVmaW5pdGlvbkRhdGEpOiBUIHtcclxuXHRcdGNvbnN0IF9ub2RlID0gaW5pdE5vZGVCeVR5cGUodHlwZSwgY29uZmlnKTtcclxuXHJcblx0XHRpZiAoY29uZmlnLnR5cGUgIT09IE5PREVfVFlQRS5zdGFydCkge1xyXG5cdFx0XHR0aGlzLmNyZWF0ZUlucHV0KF9ub2RlLCBEaWFncmFtVXRpbHMuY3JlYXRlSW5wdXRJZChfbm9kZS5pZCksIHtcclxuXHRcdFx0XHRzdHlsZUNsYXNzOiBEaWFncmFtVXRpbHMuY3JlYXRlSW5wdXRDbGFzcygpXHJcblx0XHRcdH0pO1xyXG5cdFx0fVxyXG5cclxuXHRcdGlmIChjb25maWcudHlwZSAhPT0gTk9ERV9UWVBFLmVuZCkge1xyXG5cdFx0XHR0aGlzLmNyZWF0ZU91dHB1dChfbm9kZSwgRGlhZ3JhbVV0aWxzLmNyZWF0ZU91dHB1dElkKF9ub2RlLmlkKSwge1xyXG5cdFx0XHRcdHN0eWxlQ2xhc3M6IERpYWdyYW1VdGlscy5jcmVhdGVPdXRwdXRDbGFzcygpXHJcblx0XHRcdH0pO1xyXG5cdFx0fVxyXG5cclxuXHRcdGlmIChjb25maWcudHlwZSA9PT0gTk9ERV9UWVBFLmdhdGV3YXkpIHtcclxuXHRcdFx0dGhpcy5fY3JldGVHYXRld2F5T3V0cHV0PFQ+KF9ub2RlKTtcclxuXHRcdH1cclxuXHJcblx0XHRpZiAoW05PREVfVFlQRS5jb250ZW50LCBOT0RFX1RZUEUudGVtcGxhdGVdLmluY2x1ZGVzKGNvbmZpZy50eXBlIGFzIGFueSkpIHtcclxuXHRcdFx0Y29uc3QgY29udGVudFBvcnRzOiBQb3J0VHlwZVtdID0gWydzZWNvbmRhcnknLCAndGVydGlhcnknLCAncXVhdGVybmFyeSddO1xyXG5cclxuXHRcdFx0RGlhZ3JhbVV0aWxzLmNyZWF0ZUlucHV0c0NvbmZpZyhfbm9kZS5pZCwgY29udGVudFBvcnRzKS5mb3JFYWNoKCh7IGlkLCBjb25maWcgfSkgPT5cclxuXHRcdFx0XHR0aGlzLmNyZWF0ZUlucHV0KF9ub2RlLCBpZCwgY29uZmlnKVxyXG5cdFx0XHQpO1xyXG5cclxuXHRcdFx0RGlhZ3JhbVV0aWxzLmNyZWF0ZU91dHB1dHNDb25maWcoX25vZGUuaWQsIGNvbnRlbnRQb3J0cykuZm9yRWFjaCgoeyBpZCwgY29uZmlnIH0pID0+XHJcblx0XHRcdFx0dGhpcy5jcmVhdGVPdXRwdXQoX25vZGUsIGlkLCBjb25maWcpXHJcblx0XHRcdCk7XHJcblx0XHR9XHJcblx0XHQvL0B0cy1pZ25vcmVcclxuXHRcdF9ub2RlLm5vdGlmeSA9IHRoaXMubm90aWZ5TGlzdGVuZXIoX25vZGUpO1xyXG5cclxuXHRcdHJldHVybiBfbm9kZSBhcyBUO1xyXG5cdH1cclxuXHJcblx0c2hvdWxkQWRkU3RhcnQobm9kZVR5cGU6IHN0cmluZykge1xyXG5cdFx0aWYgKG5vZGVUeXBlID09PSBOT0RFX1RZUEUuc3RhcnQpIHtcclxuXHRcdFx0cmV0dXJuIGZhbHNlO1xyXG5cdFx0fVxyXG5cdFx0Y29uc3QgX25vZGVzID0gdGhpcy5lZGl0b3IuZ2V0Tm9kZXMoKTtcclxuXHRcdGNvbnN0IF9pc0V4aXN0ID0gX25vZGVzLnNvbWUoKG5kKSA9PiAobmQgYXMgQmFzZU5vZGVDbGFzcykudHlwZSA9PT0gTk9ERV9UWVBFLnN0YXJ0KTtcclxuXHJcblx0XHRyZXR1cm4gIV9pc0V4aXN0O1xyXG5cdH1cclxuXHJcblx0Z2V0Tm9kZShpZDogc3RyaW5nKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5lZGl0b3IuZ2V0Tm9kZShpZCk7XHJcblx0fVxyXG5cclxuXHRnZXROb2RlcygpIHtcclxuXHRcdHJldHVybiB0aGlzLmVkaXRvci5nZXROb2RlcygpO1xyXG5cdH1cclxuXHJcblx0Z2V0Q29ubmVjdGlvbnMoKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5lZGl0b3IuZ2V0Q29ubmVjdGlvbnMoKTtcclxuXHR9XHJcblxyXG5cdGdldENvbm5lY3Rpb24oaWQ6IHN0cmluZykge1xyXG5cdFx0cmV0dXJuIHRoaXMuZWRpdG9yLmdldENvbm5lY3Rpb24oaWQpO1xyXG5cdH1cclxuXHJcblx0Z2V0TGFzdE5vZGUoKSB7XHJcblx0XHRjb25zdCBub2RlcyA9IHRoaXMuZWRpdG9yLmdldE5vZGVzKCk7XHJcblx0XHRyZXR1cm4gbm9kZXMubGVuZ3RoID8gbm9kZXNbbm9kZXMubGVuZ3RoIC0gMV0gOiBudWxsO1xyXG5cdH1cclxuXHJcblx0Z2V0Tm9kZXNCeVR5cGUodHlwZTogTm9kZVR5cGUpIHtcclxuXHRcdHJldHVybiB0aGlzLmVkaXRvci5nZXROb2RlcygpLmZpbHRlcigobmQpID0+IG5kLnR5cGUgPT09IHR5cGUpO1xyXG5cdH1cclxuXHJcblx0Z2V0Vmlld05vZGVzKCkge1xyXG5cdFx0cmV0dXJuIEFycmF5LmZyb20odGhpcy5wbHVnaW5zLmFyZWEubm9kZVZpZXdzLnZhbHVlcygpKTtcclxuXHR9XHJcblxyXG5cdGdldExhc3RWaWV3Tm9kZSgpIHtcclxuXHRcdGNvbnN0IG5vZGVzID0gdGhpcy5nZXRWaWV3Tm9kZXMoKTtcclxuXHRcdHJldHVybiBub2Rlcy5sZW5ndGggPyBub2Rlc1tub2Rlcy5sZW5ndGggLSAxXSA6IG51bGw7XHJcblx0fVxyXG5cclxuXHRnZXRWaWV3Tm9kZShpZDogc3RyaW5nKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5wbHVnaW5zLmFyZWEubm9kZVZpZXdzLmdldChpZCk7XHJcblx0fVxyXG5cclxuXHRnZXRWaWV3Tm9kZVBvc2l0aW9uKGlkOiBzdHJpbmcpIHtcclxuXHRcdGNvbnN0IG5vZGUgPSB0aGlzLmdldFZpZXdOb2RlKGlkKTtcclxuXHRcdHJldHVybiBub2RlID8gbm9kZS5wb3NpdGlvbiA6IG51bGw7XHJcblx0fVxyXG5cclxuXHRnZXRMYXJnZXN0WFBvc2l0aW9uKCkge1xyXG5cdFx0cmV0dXJuIHRoaXMuZ2V0Vmlld05vZGVzKCkucmVkdWNlKCh4LCBub2RlKSA9PiB7XHJcblx0XHRcdGlmIChub2RlLnBvc2l0aW9uLnggPiB4KSB7XHJcblx0XHRcdFx0eCA9IG5vZGUucG9zaXRpb24ueDtcclxuXHRcdFx0fVxyXG5cdFx0XHRyZXR1cm4geDtcclxuXHRcdH0sIDApO1xyXG5cdH1cclxuXHJcblx0Y3JlYXRlSW5wdXQobm9kZTogQmFzZU5vZGVDbGFzcywgaWQgPSBgJHtub2RlLmlkfS1pbnB1dGAsIGNvbmZpZz86IElucHV0Q29uZmlnVHlwZSkge1xyXG5cdFx0bm9kZS5hZGRJbnB1dChcclxuXHRcdFx0aWQsXHJcblx0XHRcdG5ldyBJbnB1dFBvcnQoe1xyXG5cdFx0XHRcdHNvY2tldDogdGhpcy5zb2NrZXQsXHJcblx0XHRcdFx0Li4uY29uZmlnXHJcblx0XHRcdH0pXHJcblx0XHQpO1xyXG5cdFx0cmV0dXJuIG5vZGU7XHJcblx0fVxyXG5cclxuXHRjcmVhdGVPdXRwdXQobm9kZTogQmFzZU5vZGVDbGFzcywgaWQgPSBgJHtub2RlLmlkfS1vdXRwdXRgLCBjb25maWc/OiBPdXRwdXRDb25maWdUeXBlKSB7XHJcblx0XHRub2RlLmFkZE91dHB1dChcclxuXHRcdFx0aWQsXHJcblx0XHRcdG5ldyBPdXRwdXRQb3J0KHtcclxuXHRcdFx0XHRzb2NrZXQ6IHRoaXMuc29ja2V0LFxyXG5cdFx0XHRcdC4uLmNvbmZpZ1xyXG5cdFx0XHR9KVxyXG5cdFx0KTtcclxuXHRcdHJldHVybiBub2RlO1xyXG5cdH1cclxuXHJcblx0YXN5bmMgYWRkQ29ubmVjdGlvbihzb3VyY2VOb2RlOiBCYXNlTm9kZUNsYXNzLCB0YXJnZXROb2RlOiBCYXNlTm9kZUNsYXNzLCBjb25maWc/OiBDb25uZWN0aW9uQ29uZmlnVHlwZSkge1xyXG5cdFx0YXdhaXQgdGhpcy5lZGl0b3IuYWRkQ29ubmVjdGlvbih0aGlzLmNyZWF0ZUNvbm5lY3Rpb24oc291cmNlTm9kZSwgdGFyZ2V0Tm9kZSwgY29uZmlnKSk7XHJcblx0fVxyXG5cclxuXHRjcmVhdGVDb25uZWN0aW9uKHNvdXJjZU5vZGU6IEJhc2VOb2RlQ2xhc3MsIHRhcmdldE5vZGU6IEJhc2VOb2RlQ2xhc3MsIGNvbmZpZz86IENvbm5lY3Rpb25Db25maWdUeXBlKSB7XHJcblx0XHRyZXR1cm4gbmV3IENvbm5lY3Rpb24oc291cmNlTm9kZSwgdGFyZ2V0Tm9kZSwgY29uZmlnKTtcclxuXHR9XHJcblxyXG5cdGFzeW5jIGFwcGVuZENvbm5lY3Rpb24oY29ubmVjdGlvbjogQ29ubmVjdGlvbikge1xyXG5cdFx0YXdhaXQgdGhpcy5lZGl0b3IuYWRkQ29ubmVjdGlvbihjb25uZWN0aW9uKTtcclxuXHR9XHJcblxyXG5cdGFzeW5jIGNsZWFyKCkge1xyXG5cdFx0cmV0dXJuIGF3YWl0IHRoaXMuZWRpdG9yLmNsZWFyKCk7XHJcblx0fVxyXG5cclxuXHRyZWRyYXcoKSB7XHJcblx0XHR0aGlzLmVkaXRvci5nZXROb2RlcygpLmZvckVhY2goKG5vZGUpID0+IHtcclxuXHRcdFx0dGhpcy5wbHVnaW5zLmFyZWEudXBkYXRlKCdub2RlJywgbm9kZS5pZCk7XHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdG5vdGlmeUxpc3RlbmVyKG5vZGU6IEJhc2VOb2RlQ2xhc3MpIHtcclxuXHRcdHJldHVybiAoXHJcblx0XHRcdGV2ZW50VHlwZTogTm90aWZ5RXZlbnRUeXBlLFxyXG5cdFx0XHRwYXlsb2FkOiBOb3RpZnlFdmVudFR5cGUgZXh0ZW5kcyAncmVtb3ZlJyA/IHsgbm9kZUlkOiBzdHJpbmcgfSA6IFJlY29yZDxzdHJpbmcsIGFueT5cclxuXHRcdCkgPT4ge1xyXG5cdFx0XHRjb25zdCBfYWN0aW9ucyA9IHtcclxuXHRcdFx0XHRbTk9USUZZX0VWRU5ULnJlbW92ZV06IHRoaXMuX3JlbW92ZU5vZGUuYmluZCh0aGlzKVxyXG5cdFx0XHR9O1xyXG5cclxuXHRcdFx0cmV0dXJuIF9hY3Rpb25zW2V2ZW50VHlwZV0/LihwYXlsb2FkIGFzIHsgbm9kZUlkOiBzdHJpbmcgfSk7XHJcblx0XHR9O1xyXG5cdH1cclxuXHJcblx0YXN5bmMgdHJhbnNsYXRlVmlldygpIHtcclxuXHRcdGNvbnN0IHsgY29udGFpbmVyLCBhcmVhIH0gPSB0aGlzLnBsdWdpbnMuYXJlYTtcclxuXHRcdGNvbnN0IHJlY3QgPSBjb250YWluZXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XHJcblx0XHRjb25zdCBrID0gYXJlYS50cmFuc2Zvcm0uaztcclxuXHRcdGNvbnN0IGRlbHRhID0gLTAuMjtcclxuXHRcdGNvbnN0IG94ID0gTWF0aC5tYXgoMCwgKHJlY3QubGVmdCAtIGNvbnRhaW5lci5jbGllbnRXaWR0aCAvIDIpICogayk7XHJcblx0XHRjb25zdCBveSA9IE1hdGgubWF4KDAsIChyZWN0LnRvcCAtIGNvbnRhaW5lci5jbGllbnRIZWlnaHQgLyAyKSAqIGspO1xyXG5cclxuXHRcdGFyZWEuem9vbShNYXRoLm1heCgwLjEsIGsgKiAoMSArIGRlbHRhKSksIG94ICogZGVsdGEsIG95ICogZGVsdGEpO1xyXG5cdH1cclxuXHJcblx0YXN5bmMgcmVtb3ZlRW5kTm9kZSgpIHtcclxuXHRcdGNvbnN0IG5vZGUgPSB0aGlzLmdldE5vZGVzQnlUeXBlKE5PREVfVFlQRS5lbmQpWzBdO1xyXG5cdFx0aWYgKG5vZGUpIHtcclxuXHRcdFx0YXdhaXQgcmVtb3ZlTm9kZUFuZENvbm5lY3Rpb25zKG5vZGUsIHRoaXMuZWRpdG9yKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdHByaXZhdGUgX2NyZXRlR2F0ZXdheU91dHB1dDxUIGV4dGVuZHMgQmFzZU5vZGVDbGFzcyA9IENvbnRlbnROb2RlPihfbm9kZTogQ29udGVudE5vZGU8dW5rbm93bj4pIHtcclxuXHRcdERpYWdyYW1VdGlscy5jcmVhdGVPdXRwdXRzQ29uZmlnKF9ub2RlLmlkLCBbJ3NlY29uZGFyeScsICd0ZXJ0aWFyeSddKS5mb3JFYWNoKChpbnB1dCkgPT5cclxuXHRcdFx0dGhpcy5jcmVhdGVPdXRwdXQoX25vZGUsIGlucHV0LmlkLCBpbnB1dD8uY29uZmlnKVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdHByaXZhdGUgYXN5bmMgX3JlbW92ZU5vZGUoZGF0YTogeyBub2RlSWQ6IHN0cmluZyB9KSB7XHJcblx0XHRjb25zdCBub2RlID0gdGhpcy5lZGl0b3IuZ2V0Tm9kZShkYXRhLm5vZGVJZCk7XHJcblx0XHRpZiAoIW5vZGUpIHtcclxuXHRcdFx0cmV0dXJuO1xyXG5cdFx0fVxyXG5cclxuXHRcdGNvbnN0IHZpZXdOb2RlID0gKGlkOiBzdHJpbmcpID0+IHRoaXMucGx1Z2lucy5hcmVhLm5vZGVWaWV3cy5nZXQoaWQpIGFzIE5vZGVWaWV3O1xyXG5cclxuXHRcdGxldCBjb25maWcgPSBub2RlLmNvbmZpZztcclxuXHRcdGxldCBpbmRleCA9IG51bGw7XHJcblxyXG5cdFx0bGV0IHBvc2l0aW9uOiBQb3NpdGlvbiA9IHsgeDogMCwgeTogMCB9O1xyXG5cdFx0bGV0IGRpcmVjdGlvbjogUmVjb3JkPCdpbnB1dHMnIHwgJ291dHB1dHMnLCBEaXJlY3Rpb25UeXBlPiB8IG51bGwgPSBudWxsO1xyXG5cdFx0aWYgKGNvbmZpZykge1xyXG5cdFx0XHRpZiAoY29uZmlnPy5pc0xpbmtlZCkge1xyXG5cdFx0XHRcdGluZGV4ID0gdGhpcy5lZGl0b3IuZ2V0Tm9kZXMoKS5maW5kSW5kZXgoKG5kKSA9PiBuZC5pZCA9PT0gZGF0YS5ub2RlSWQpO1xyXG5cclxuXHRcdFx0XHRwb3NpdGlvbiA9IHZpZXdOb2RlKGRhdGEubm9kZUlkKS5wb3NpdGlvbjtcclxuXHRcdFx0XHRkaXJlY3Rpb24gPSBub2RlLmRpcmVjdGlvbnM7XHJcblx0XHRcdH1cclxuXHRcdFx0dGhpcy5wbHVnaW5zLnJlYWRvbmx5LmRpc2FibGUoKTtcclxuXHRcdFx0YXdhaXQgcmVtb3ZlTm9kZShkYXRhLCB0aGlzLmVkaXRvcik7XHJcblxyXG5cdFx0XHRpZiAoY29uZmlnLmlzTGlua2VkKSB7XHJcblx0XHRcdFx0Ly9AdHMtaWdub3JlXHJcblx0XHRcdFx0Y29uc3Qgbm9kZXMgPSB0aGlzLmVkaXRvci5nZXROb2RlcygpLnNsaWNlKGluZGV4KTtcclxuXHJcblx0XHRcdFx0d2hpbGUgKG5vZGVzLmxlbmd0aCkge1xyXG5cdFx0XHRcdFx0Y29uc3QgX25vZGUgPSBub2Rlcy5zaGlmdCgpO1xyXG5cdFx0XHRcdFx0aWYgKCFfbm9kZSkge1xyXG5cdFx0XHRcdFx0XHRjb250aW51ZTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdGNvbnN0IF9kaXIgPSB7IC4uLl9ub2RlLmRpcmVjdGlvbnMgfTtcclxuXHRcdFx0XHRcdGNvbnN0IF9wb3NpdGlvbiA9IHsgLi4udmlld05vZGUoX25vZGUuaWQpLnBvc2l0aW9uIH07XHJcblx0XHRcdFx0XHRfbm9kZS5kaXJlY3Rpb25zID0gZGlyZWN0aW9uIGFzIFJlY29yZDwnaW5wdXRzJyB8ICdvdXRwdXRzJywgRGlyZWN0aW9uVHlwZT47XHJcblx0XHRcdFx0XHRpZiAoX25vZGUudHlwZSA9PSBOT0RFX1RZUEUuZW5kKSB7XHJcblx0XHRcdFx0XHRcdHBvc2l0aW9uLnkgPSBNYXRoLmFicyhNYXRoLmZsb29yKHBvc2l0aW9uLnkgLSAoX25vZGUuaGVpZ2h0IC0gTk9ERV9DSVJDTEVfU0laRSkgLyAyKSk7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRhd2FpdCB0aGlzLnBsdWdpbnMuYXJlYS50cmFuc2xhdGUoX25vZGUuaWQsIHBvc2l0aW9uKTtcclxuXHRcdFx0XHRcdGF3YWl0IHRoaXMucGx1Z2lucy5hcmVhLnVwZGF0ZSgnbm9kZScsIF9ub2RlLmlkKTtcclxuXHRcdFx0XHRcdHBvc2l0aW9uID0gX3Bvc2l0aW9uO1xyXG5cdFx0XHRcdFx0ZGlyZWN0aW9uID0gX2RpcjtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0dGhpcy5wbHVnaW5zLnJlYWRvbmx5LmVuYWJsZSgpO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4iXX0=
|