ato-water-lib 0.0.14 → 0.0.16
Sign up to get free protection for your applications and to get access to all the features.
- package/esm2020/lib/components/asset-flow/asset-flow.component.mjs +2 -7
- package/esm2020/lib/components/flow-diagram-lib/flow-diagram-lib.component.mjs +2 -21
- package/esm2020/lib/models/gojs-editor.model.mjs +2 -2
- package/fesm2015/ato-water-lib.mjs +4 -28
- package/fesm2015/ato-water-lib.mjs.map +1 -1
- package/fesm2020/ato-water-lib.mjs +4 -27
- package/fesm2020/ato-water-lib.mjs.map +1 -1
- package/lib/components/flow-diagram-lib/flow-diagram-lib.component.d.ts +1 -2
- package/lib/models/gojs-editor.model.d.ts +1 -1
- package/package.json +1 -1
@@ -21,11 +21,6 @@ export class AssetFlowComponent {
|
|
21
21
|
this.flowData = {};
|
22
22
|
}
|
23
23
|
ngOnInit() {
|
24
|
-
// this.flowData = {
|
25
|
-
// ...ATO_COMPONENTS_GROUP_DATA[this.systemType],
|
26
|
-
// linkFromPortIdProperty: 'fromPort',
|
27
|
-
// linkToPortIdProperty: 'toPort',
|
28
|
-
// };
|
29
24
|
this.flowData = this.getDefaultFlowData();
|
30
25
|
}
|
31
26
|
onClickParamOfTable($event) {
|
@@ -47,7 +42,7 @@ export class AssetFlowComponent {
|
|
47
42
|
}
|
48
43
|
}
|
49
44
|
AssetFlowComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AssetFlowComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
50
|
-
AssetFlowComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: AssetFlowComponent, selector: "ato-asset-flow", inputs: { selectedComponent: "selectedComponent", systemType: "systemType", isUseBase64: "isUseBase64", flowData: "flowData" }, outputs: { onClickParamOfTableEvent: "onClickParamOfTableEvent" }, viewQueries: [{ propertyName: "gjFlowDiagramTemp", first: true, predicate: AtoFlowDiagramLibComponent, descendants: true }], ngImport: i0, template: "<div class=\"h-100\" style=\"height: 100%\" atoLoading [appLoading]=\"flowData === null\">\n <ato-flow-diagram-lib\n *ngIf=\"flowData !== null\"\n #gjFlowDiagramTemp\n [data]=\"flowData\"\n [initialOptions]=\"options\"\n (onClikParamOfTable)=\"onClickParamOfTable($event)\"\n ></ato-flow-diagram-lib>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.AtoFlowDiagramLibComponent, selector: "ato-flow-diagram-lib", inputs: ["
|
45
|
+
AssetFlowComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: AssetFlowComponent, selector: "ato-asset-flow", inputs: { selectedComponent: "selectedComponent", systemType: "systemType", isUseBase64: "isUseBase64", flowData: "flowData" }, outputs: { onClickParamOfTableEvent: "onClickParamOfTableEvent" }, viewQueries: [{ propertyName: "gjFlowDiagramTemp", first: true, predicate: AtoFlowDiagramLibComponent, descendants: true }], ngImport: i0, template: "<div class=\"h-100\" style=\"height: 100%\" atoLoading [appLoading]=\"flowData === null\">\n <ato-flow-diagram-lib\n *ngIf=\"flowData !== null\"\n #gjFlowDiagramTemp\n [data]=\"flowData\"\n [initialOptions]=\"options\"\n (onClikParamOfTable)=\"onClickParamOfTable($event)\"\n ></ato-flow-diagram-lib>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.AtoFlowDiagramLibComponent, selector: "ato-flow-diagram-lib", inputs: ["data", "isLoading"] }, { kind: "directive", type: i3.AtoLoadingDirective, selector: "[atoLoading]", inputs: ["appLoading"] }] });
|
51
46
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AssetFlowComponent, decorators: [{
|
52
47
|
type: Component,
|
53
48
|
args: [{ selector: 'ato-asset-flow', template: "<div class=\"h-100\" style=\"height: 100%\" atoLoading [appLoading]=\"flowData === null\">\n <ato-flow-diagram-lib\n *ngIf=\"flowData !== null\"\n #gjFlowDiagramTemp\n [data]=\"flowData\"\n [initialOptions]=\"options\"\n (onClikParamOfTable)=\"onClickParamOfTable($event)\"\n ></ato-flow-diagram-lib>\n</div>\n" }]
|
@@ -65,4 +60,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
65
60
|
}], flowData: [{
|
66
61
|
type: Input
|
67
62
|
}] } });
|
68
|
-
//# sourceMappingURL=data:application/json;base64,
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXQtZmxvdy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hdG8td2F0ZXItbGliL3NyYy9saWIvY29tcG9uZW50cy9hc3NldC1mbG93L2Fzc2V0LWZsb3cuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXRvLXdhdGVyLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvYXNzZXQtZmxvdy9hc3NldC1mbG93LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEVBQ04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM3RCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUVuRixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQzs7Ozs7QUFPNUYsTUFBTSxPQUFPLGtCQUFrQjtJQUwvQjtRQVVZLDZCQUF3QixHQUNoQyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBQ2pCLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBQzdCLE1BQUMsR0FBRyxFQUFFLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztRQUN4QixZQUFPLEdBQUc7WUFDUixNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsb0JBQW9CLEVBQUU7WUFDdEMsZ0JBQWdCO2FBQ2pCLENBQUM7WUFDRixvQkFBb0I7U0FDckIsQ0FBQztRQUNPLGFBQVEsR0FBUSxFQUFFLENBQUM7S0F3QjdCO0lBdkJDLFFBQVE7UUFDTixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzVDLENBQUM7SUFDRCxtQkFBbUIsQ0FBQyxNQUFXO1FBQzdCLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVELGtCQUFrQjtRQUNoQixNQUFNLFFBQVEsR0FBRztZQUNmLEdBQUcseUJBQXlCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQztZQUM3QyxzQkFBc0IsRUFBRSxVQUFVO1lBQ2xDLG9CQUFvQixFQUFFLFFBQVE7U0FDL0IsQ0FBQztRQUNGLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNwQixNQUFNLGFBQWEsR0FBRyxRQUFRLEVBQUUsYUFBYSxFQUFFLElBQUksQ0FDakQsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxJQUFJLEtBQUssZ0JBQWdCLENBQ3BDLENBQUM7WUFDRixJQUFJLGFBQWEsRUFBRTtnQkFDakIsYUFBYSxDQUFDLE1BQU0sR0FBRyxhQUFhLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO2FBQ3ZEO1NBQ0Y7UUFDRCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDOztnSEF0Q1Usa0JBQWtCO29HQUFsQixrQkFBa0IsNFNBQ2xCLDBCQUEwQixnRENwQnZDLDJVQVNBOzRGRFVhLGtCQUFrQjtrQkFMOUIsU0FBUzsrQkFDRSxnQkFBZ0I7OEJBTTFCLGlCQUFpQjtzQkFEaEIsU0FBUzt1QkFBQywwQkFBMEI7Z0JBRTVCLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNJLHdCQUF3QjtzQkFBakMsTUFBTTtnQkFFRSxXQUFXO3NCQUFuQixLQUFLO2dCQVFHLFFBQVE7c0JBQWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0ICogYXMgZ28gZnJvbSAnZ29qcyc7XG5pbXBvcnQgeyBBdG9Hb0pTQmFzZTY0IH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL2Jhc2U2NC5jb25zdCc7XG5pbXBvcnQgeyBBVE9fQ09NUE9ORU5UU19HUk9VUF9EQVRBIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL2NvbXBvbmVudHMtZ3JvdXAtY29uc3QnO1xuaW1wb3J0IHsgQXRvR29qc0VkaXRvck1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2dvanMtZWRpdG9yLm1vZGVsJztcbmltcG9ydCB7IEF0b0Zsb3dEaWFncmFtTGliQ29tcG9uZW50IH0gZnJvbSAnLi4vZmxvdy1kaWFncmFtLWxpYi9mbG93LWRpYWdyYW0tbGliLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F0by1hc3NldC1mbG93JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Fzc2V0LWZsb3cuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hc3NldC1mbG93LmNvbXBvbmVudC5jc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgQXNzZXRGbG93Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQFZpZXdDaGlsZChBdG9GbG93RGlhZ3JhbUxpYkNvbXBvbmVudClcbiAgZ2pGbG93RGlhZ3JhbVRlbXA6IEF0b0Zsb3dEaWFncmFtTGliQ29tcG9uZW50O1xuICBASW5wdXQoKSBzZWxlY3RlZENvbXBvbmVudDogYW55O1xuICBASW5wdXQoKSBzeXN0ZW1UeXBlOiBBdG9Hb2pzRWRpdG9yTW9kZWwuRU5VTV9UWVBFUztcbiAgQE91dHB1dCgpIG9uQ2xpY2tQYXJhbU9mVGFibGVFdmVudDogRXZlbnRFbWl0dGVyPGFueT4gPVxuICAgIG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBASW5wdXQoKSBpc1VzZUJhc2U2NCA9IGZhbHNlO1xuICAkID0gZ28uR3JhcGhPYmplY3QubWFrZTtcbiAgb3B0aW9ucyA9IHtcbiAgICBsYXlvdXQ6IHRoaXMuJChnby5MYXllcmVkRGlncmFwaExheW91dCwge1xuICAgICAgLy8gZGlyZWN0aW9uOiAwLFxuICAgIH0pLFxuICAgIC8vIGlzUmVhZE9ubHk6IHRydWUsXG4gIH07XG4gIEBJbnB1dCgpIGZsb3dEYXRhOiBhbnkgPSB7fTtcbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5mbG93RGF0YSA9IHRoaXMuZ2V0RGVmYXVsdEZsb3dEYXRhKCk7XG4gIH1cbiAgb25DbGlja1BhcmFtT2ZUYWJsZSgkZXZlbnQ6IGFueSkge1xuICAgIHRoaXMub25DbGlja1BhcmFtT2ZUYWJsZUV2ZW50LmVtaXQoJGV2ZW50KTtcbiAgfVxuXG4gIGdldERlZmF1bHRGbG93RGF0YSgpIHtcbiAgICBjb25zdCBmbG93RGF0YSA9IHtcbiAgICAgIC4uLkFUT19DT01QT05FTlRTX0dST1VQX0RBVEFbdGhpcy5zeXN0ZW1UeXBlXSxcbiAgICAgIGxpbmtGcm9tUG9ydElkUHJvcGVydHk6ICdmcm9tUG9ydCcsXG4gICAgICBsaW5rVG9Qb3J0SWRQcm9wZXJ0eTogJ3RvUG9ydCcsXG4gICAgfTtcbiAgICBpZiAodGhpcy5pc1VzZUJhc2U2NCkge1xuICAgICAgY29uc3QgaXRlbUltYWdlVGVtcCA9IGZsb3dEYXRhPy5ub2RlRGF0YUFycmF5Py5maW5kKFxuICAgICAgICAoeCkgPT4geD8udHlwZSA9PT0gJ0ltYWdlIFRlbXBsYXRlJ1xuICAgICAgKTtcbiAgICAgIGlmIChpdGVtSW1hZ2VUZW1wKSB7XG4gICAgICAgIGl0ZW1JbWFnZVRlbXAuc291cmNlID0gQXRvR29KU0Jhc2U2NFt0aGlzLnN5c3RlbVR5cGVdO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZmxvd0RhdGE7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJoLTEwMFwiIHN0eWxlPVwiaGVpZ2h0OiAxMDAlXCIgYXRvTG9hZGluZyBbYXBwTG9hZGluZ109XCJmbG93RGF0YSA9PT0gbnVsbFwiPlxuICAgIDxhdG8tZmxvdy1kaWFncmFtLWxpYlxuICAgICpuZ0lmPVwiZmxvd0RhdGEgIT09IG51bGxcIlxuICAgICNnakZsb3dEaWFncmFtVGVtcFxuICAgIFtkYXRhXT1cImZsb3dEYXRhXCJcbiAgICBbaW5pdGlhbE9wdGlvbnNdPVwib3B0aW9uc1wiXG4gICAgKG9uQ2xpa1BhcmFtT2ZUYWJsZSk9XCJvbkNsaWNrUGFyYW1PZlRhYmxlKCRldmVudClcIlxuICA+PC9hdG8tZmxvdy1kaWFncmFtLWxpYj5cbjwvZGl2PlxuIl19
|
@@ -1,5 +1,4 @@
|
|
1
1
|
import { Component, Input, ViewChild } from '@angular/core';
|
2
|
-
import _ from 'lodash';
|
3
2
|
import { AtoDefaultGojsEditor } from '../../models/default-gojs-editor.model';
|
4
3
|
import { AtoGojsEditorModel } from '../../models/gojs-editor.model';
|
5
4
|
import * as i0 from "@angular/core";
|
@@ -28,22 +27,6 @@ export class AtoFlowDiagramLibComponent extends AtoDefaultGojsEditor {
|
|
28
27
|
}));
|
29
28
|
}
|
30
29
|
loadDiagram() {
|
31
|
-
if (this.data?.nodeDataArray?.length && !!this.showNotificationIcon) {
|
32
|
-
_.map(this.data?.nodeDataArray, (node) => {
|
33
|
-
// if (node?.type === GojsEditorModel.ENUM_TEMPLATES.TEXT_NODE) {
|
34
|
-
// node.recommendation = _.some(
|
35
|
-
// this._RecommendationsService.activeRecommendations$?.value,
|
36
|
-
// (x) => x?.BoxId === node?.id,
|
37
|
-
// );
|
38
|
-
// // node.discoveries = !!_.get(
|
39
|
-
// // this._RecommendationsService.activeDiscoveries$?.value,
|
40
|
-
// // `${ENUM_KPI_METRIC.TOPOLOGY}-${node?.id}.0`,
|
41
|
-
// // null,
|
42
|
-
// // );
|
43
|
-
// }
|
44
|
-
});
|
45
|
-
}
|
46
|
-
// setTimeout(() => {
|
47
30
|
this.editor = new AtoGojsEditorModel({
|
48
31
|
class: 'go.GraphLinksModel',
|
49
32
|
nodeCategoryProperty: 'type',
|
@@ -55,18 +38,16 @@ export class AtoFlowDiagramLibComponent extends AtoDefaultGojsEditor {
|
|
55
38
|
}
|
56
39
|
}
|
57
40
|
AtoFlowDiagramLibComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AtoFlowDiagramLibComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
58
|
-
AtoFlowDiagramLibComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: AtoFlowDiagramLibComponent, selector: "ato-flow-diagram-lib", inputs: {
|
41
|
+
AtoFlowDiagramLibComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: AtoFlowDiagramLibComponent, selector: "ato-flow-diagram-lib", inputs: { data: "data", isLoading: "isLoading" }, viewQueries: [{ propertyName: "myDiagramDivTemp", first: true, predicate: ["myDiagramDivTemp"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"w-100 h-100 gj-flow-diagram-wrapper\" atoLoading [appLoading]=\"data === null || !!isLoading\" style=\"height: 100%\">\n <div class=\"w-100 h-100 d-flex\" style=\"height: 100%\">\n <!-- <button\n id=\"actionMenuId\"\n class=\"invisible-btn\"\n mat-button\n [matMenuTriggerFor]=\"menu\"\n #menuTrigger=\"matMenuTrigger\"\n ></button>\n <mat-menu #menu=\"matMenu\">\n <button mat-menu-item *ngFor=\"let item of actions\" (click)=\"item?.onClick($event)\">\n <div class=\"d-flex flex-gap-2\">\n <div><i class=\"{{ item?.iconClassName }}\"></i></div>\n <div>{{ item?.name }}</div>\n </div>\n </button>\n </mat-menu> -->\n\n <div #myDiagramDivTemp [id]=\"myDiagramDiv\" class=\"flex-grow-1\" style=\"height: 100%\"></div>\n <!-- <div *ngIf=\"initialOptions?.isReadOnly && !data?.nodeDataArray?.length\" class=\"empty-data\">\n <nz-empty nzNotFoundImage=\"simple\"></nz-empty>\n </div> -->\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.AtoLoadingDirective, selector: "[atoLoading]", inputs: ["appLoading"] }] });
|
59
42
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: AtoFlowDiagramLibComponent, decorators: [{
|
60
43
|
type: Component,
|
61
44
|
args: [{ selector: 'ato-flow-diagram-lib', template: "<div class=\"w-100 h-100 gj-flow-diagram-wrapper\" atoLoading [appLoading]=\"data === null || !!isLoading\" style=\"height: 100%\">\n <div class=\"w-100 h-100 d-flex\" style=\"height: 100%\">\n <!-- <button\n id=\"actionMenuId\"\n class=\"invisible-btn\"\n mat-button\n [matMenuTriggerFor]=\"menu\"\n #menuTrigger=\"matMenuTrigger\"\n ></button>\n <mat-menu #menu=\"matMenu\">\n <button mat-menu-item *ngFor=\"let item of actions\" (click)=\"item?.onClick($event)\">\n <div class=\"d-flex flex-gap-2\">\n <div><i class=\"{{ item?.iconClassName }}\"></i></div>\n <div>{{ item?.name }}</div>\n </div>\n </button>\n </mat-menu> -->\n\n <div #myDiagramDivTemp [id]=\"myDiagramDiv\" class=\"flex-grow-1\" style=\"height: 100%\"></div>\n <!-- <div *ngIf=\"initialOptions?.isReadOnly && !data?.nodeDataArray?.length\" class=\"empty-data\">\n <nz-empty nzNotFoundImage=\"simple\"></nz-empty>\n </div> -->\n </div>\n</div>\n" }]
|
62
45
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { myDiagramDivTemp: [{
|
63
46
|
type: ViewChild,
|
64
47
|
args: ['myDiagramDivTemp']
|
65
|
-
}], showNotificationIcon: [{
|
66
|
-
type: Input
|
67
48
|
}], data: [{
|
68
49
|
type: Input
|
69
50
|
}], isLoading: [{
|
70
51
|
type: Input
|
71
52
|
}] } });
|
72
|
-
//# sourceMappingURL=data:application/json;base64,
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxvdy1kaWFncmFtLWxpYi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hdG8td2F0ZXItbGliL3NyYy9saWIvY29tcG9uZW50cy9mbG93LWRpYWdyYW0tbGliL2Zsb3ctZGlhZ3JhbS1saWIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXRvLXdhdGVyLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvZmxvdy1kaWFncmFtLWxpYi9mbG93LWRpYWdyYW0tbGliLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsS0FBSyxFQUFVLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUdoRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7O0FBT3BFLE1BQU0sT0FBTywwQkFBMkIsU0FBUSxvQkFBb0I7SUFHbEUsSUFBYSxJQUFJLENBQUMsQ0FBQztRQUNmLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ2YsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFJRCxJQUFJLElBQUk7UUFDSixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDdEIsQ0FBQztJQUVELFlBQ0UsTUFBa0I7UUFFaEIsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBZmxCLFVBQUssR0FBUSxJQUFJLENBQUM7UUFNVCxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBVXZCLElBQUksQ0FBQyxPQUFPLEdBQUc7WUFDYixvQkFBb0IsQ0FBQyxPQUFPLENBQUMsb0JBQW9CLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQztZQUN2RSxvQkFBb0IsQ0FBQyxPQUFPLENBQUMsb0JBQW9CLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQztTQUN2RSxDQUFDO1FBQ0YsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFJRCxRQUFRO1FBQ0osSUFBSSxDQUFDLGFBQWEsQ0FDZCxJQUFJLENBQUMsMkJBQTJCLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDOUMsSUFBSSxDQUFDLDBCQUEwQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM1QyxDQUFDLENBQUMsQ0FPTCxDQUFDO0lBQ04sQ0FBQztJQUtELFdBQVc7UUFDUCxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksa0JBQWtCLENBQUM7WUFDakMsS0FBSyxFQUFFLG9CQUFvQjtZQUMzQixvQkFBb0IsRUFBRSxNQUFNO1lBQzVCLEdBQUcsSUFBSSxDQUFDLElBQUk7U0FDZixDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsY0FBYyxDQUFDLEdBQW9CO1FBQy9CLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDOUQsQ0FBQzs7d0hBdERVLDBCQUEwQjs0R0FBMUIsMEJBQTBCLDJQQ1h2Qyx3bUNBd0JBOzRGRGJhLDBCQUEwQjtrQkFMdEMsU0FBUzsrQkFDRSxzQkFBc0I7aUdBS0YsZ0JBQWdCO3NCQUE5QyxTQUFTO3VCQUFDLGtCQUFrQjtnQkFFZixJQUFJO3NCQUFoQixLQUFLO2dCQUtHLFNBQVM7c0JBQWpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0LCBPbkluaXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcblxuaW1wb3J0IHsgQXRvRGVmYXVsdEdvanNFZGl0b3IgfSBmcm9tICcuLi8uLi9tb2RlbHMvZGVmYXVsdC1nb2pzLWVkaXRvci5tb2RlbCc7XG5pbXBvcnQgeyBBdG9Hb2pzRWRpdG9yTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvZ29qcy1lZGl0b3IubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhdG8tZmxvdy1kaWFncmFtLWxpYicsXG4gIHRlbXBsYXRlVXJsOiAnLi9mbG93LWRpYWdyYW0tbGliLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZmxvdy1kaWFncmFtLWxpYi5jb21wb25lbnQuY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQXRvRmxvd0RpYWdyYW1MaWJDb21wb25lbnQgZXh0ZW5kcyBBdG9EZWZhdWx0R29qc0VkaXRvciBpbXBsZW1lbnRzIE9uSW5pdCAge1xuIEBWaWV3Q2hpbGQoJ215RGlhZ3JhbURpdlRlbXAnKSBteURpYWdyYW1EaXZUZW1wOiBhbnk7XG4gIF9kYXRhOiBhbnkgPSBudWxsO1xuICBASW5wdXQoKSBzZXQgZGF0YSh2KSB7XG4gICAgICB0aGlzLl9kYXRhID0gdjtcbiAgICAgIHRoaXMubG9hZERpYWdyYW0oKTtcbiAgfVxuXG4gIEBJbnB1dCgpIGlzTG9hZGluZyA9IGZhbHNlO1xuXG4gIGdldCBkYXRhKCkge1xuICAgICAgcmV0dXJuIHRoaXMuX2RhdGE7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBfZWxSZWY6IEVsZW1lbnRSZWYsXG4gICkge1xuICAgICAgc3VwZXIoX2VsUmVmKTtcbiAgICAgIHRoaXMuYWN0aW9ucyA9IFtcbiAgICAgICAgQXRvRGVmYXVsdEdvanNFZGl0b3IuQUNUSU9OU1tBdG9EZWZhdWx0R29qc0VkaXRvci5FTlVNX0FDVElPTlMuREVUQUlMU10sXG4gICAgICAgIEF0b0RlZmF1bHRHb2pzRWRpdG9yLkFDVElPTlNbQXRvRGVmYXVsdEdvanNFZGl0b3IuRU5VTV9BQ1RJT05TLkRFTEVURV0sXG4gICAgICBdO1xuICAgICAgdGhpcy51bnN1YnNjcmliZUFsbCgpO1xuICB9XG5cblxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgdGhpcy5hZGRTdWJzY3JpYmVzKFxuICAgICAgICAgIHRoaXMuY29tbWl0dGVkVHJhbnNhY3Rpb25TdWJqZWN0Py5zdWJzY3JpYmUoKGUpID0+IHtcbiAgICAgICAgICAgICAgdGhpcy5vbk1vZGVsQ2hhbmdlTGlzdGVuZXJFdmVudC5lbWl0KGUpO1xuICAgICAgICAgIH0pLFxuICAgICAgICAgIC8vIHRoaXMuX0dqVXRpbHNTZXJ2aWNlPy51cGRhdGVOYW1lRGF0YUJveCQ/LnN1YnNjcmliZSgocnMpID0+IHtcbiAgICAgICAgICAvLyAgICAgaWYgKHJzICYmIHJzPy5rZXkpIHtcbiAgICAgICAgICAvLyAgICAgICAgIGNvbnN0IG5vZGUgPSB0aGlzLm15RGlhZ3JhbS5maW5kTm9kZUZvcktleShycz8ua2V5KTtcbiAgICAgICAgICAvLyAgICAgICAgIHRoaXMubXlEaWFncmFtLm1vZGVsLnNldERhdGFQcm9wZXJ0eShub2RlPy5kYXRhLCAnbmFtZScsIHJzPy5uYW1lKTtcbiAgICAgICAgICAvLyAgICAgfVxuICAgICAgICAgIC8vIH0pLFxuICAgICAgKTtcbiAgfVxuXG5cblxuXG4gIGxvYWREaWFncmFtKCkge1xuICAgICAgdGhpcy5lZGl0b3IgPSBuZXcgQXRvR29qc0VkaXRvck1vZGVsKHtcbiAgICAgICAgICBjbGFzczogJ2dvLkdyYXBoTGlua3NNb2RlbCcsXG4gICAgICAgICAgbm9kZUNhdGVnb3J5UHJvcGVydHk6ICd0eXBlJyxcbiAgICAgICAgICAuLi50aGlzLmRhdGEsXG4gICAgICB9KTtcbiAgfVxuXG4gIGZpbmROb2RlRm9yS2V5KGtleTogbnVtYmVyIHwgc3RyaW5nKSB7XG4gICAgICB0aGlzLm15RGlhZ3JhbS5zZWxlY3QodGhpcy5teURpYWdyYW0uZmluZE5vZGVGb3JLZXkoa2V5KSk7XG4gIH1cbn1cblxuXG5cblxuXG4iLCI8ZGl2IGNsYXNzPVwidy0xMDAgaC0xMDAgZ2otZmxvdy1kaWFncmFtLXdyYXBwZXJcIiBhdG9Mb2FkaW5nIFthcHBMb2FkaW5nXT1cImRhdGEgPT09IG51bGwgfHwgISFpc0xvYWRpbmdcIiBzdHlsZT1cImhlaWdodDogMTAwJVwiPlxuICAgIDxkaXYgY2xhc3M9XCJ3LTEwMCBoLTEwMCBkLWZsZXhcIiBzdHlsZT1cImhlaWdodDogMTAwJVwiPlxuICAgICAgICA8IS0tIDxidXR0b25cbiAgICAgICAgICAgIGlkPVwiYWN0aW9uTWVudUlkXCJcbiAgICAgICAgICAgIGNsYXNzPVwiaW52aXNpYmxlLWJ0blwiXG4gICAgICAgICAgICBtYXQtYnV0dG9uXG4gICAgICAgICAgICBbbWF0TWVudVRyaWdnZXJGb3JdPVwibWVudVwiXG4gICAgICAgICAgICAjbWVudVRyaWdnZXI9XCJtYXRNZW51VHJpZ2dlclwiXG4gICAgICAgID48L2J1dHRvbj5cbiAgICAgICAgPG1hdC1tZW51ICNtZW51PVwibWF0TWVudVwiPlxuICAgICAgICAgICAgPGJ1dHRvbiBtYXQtbWVudS1pdGVtICpuZ0Zvcj1cImxldCBpdGVtIG9mIGFjdGlvbnNcIiAoY2xpY2spPVwiaXRlbT8ub25DbGljaygkZXZlbnQpXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBmbGV4LWdhcC0yXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXY+PGkgY2xhc3M9XCJ7eyBpdGVtPy5pY29uQ2xhc3NOYW1lIH19XCI+PC9pPjwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2Pnt7IGl0ZW0/Lm5hbWUgfX08L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L21hdC1tZW51PiAtLT5cblxuICAgICAgICA8ZGl2ICNteURpYWdyYW1EaXZUZW1wIFtpZF09XCJteURpYWdyYW1EaXZcIiBjbGFzcz1cImZsZXgtZ3Jvdy0xXCIgc3R5bGU9XCJoZWlnaHQ6IDEwMCVcIj48L2Rpdj5cbiAgICAgICAgPCEtLSA8ZGl2ICpuZ0lmPVwiaW5pdGlhbE9wdGlvbnM/LmlzUmVhZE9ubHkgJiYgIWRhdGE/Lm5vZGVEYXRhQXJyYXk/Lmxlbmd0aFwiIGNsYXNzPVwiZW1wdHktZGF0YVwiPlxuICAgICAgICAgICAgPG56LWVtcHR5IG56Tm90Rm91bmRJbWFnZT1cInNpbXBsZVwiPjwvbnotZW1wdHk+XG4gICAgICAgIDwvZGl2PiAtLT5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
|