ngssm-tree 15.2.8 → 15.2.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/actions/delete-ngssm-tree.action.mjs +8 -0
- package/esm2020/lib/actions/index.mjs +2 -1
- package/esm2020/lib/actions/ngssm-tree-action-type.mjs +2 -1
- package/esm2020/lib/components/index.mjs +2 -1
- package/esm2020/lib/components/ngssm-breadcrumb/ngssm-breadcrumb.component.mjs +63 -0
- package/esm2020/lib/components/ngssm-tree/ngssm-tree.component.mjs +50 -31
- package/esm2020/lib/effects/tree-node-loading.effect.mjs +2 -2
- package/esm2020/lib/public-api.mjs +2 -1
- package/esm2020/lib/reducers/tree-node-expand.reducer.mjs +34 -4
- package/esm2020/lib/reducers/tree-nodes.reducer.mjs +2 -2
- package/esm2020/lib/reducers/trees.reducer.mjs +8 -2
- package/fesm2015/ngssm-tree.mjs +153 -37
- package/fesm2015/ngssm-tree.mjs.map +1 -1
- package/fesm2020/ngssm-tree.mjs +150 -36
- package/fesm2020/ngssm-tree.mjs.map +1 -1
- package/lib/actions/delete-ngssm-tree.action.d.ts +4 -0
- package/lib/actions/index.d.ts +1 -0
- package/lib/actions/ngssm-tree-action-type.d.ts +1 -0
- package/lib/components/index.d.ts +1 -0
- package/lib/components/ngssm-breadcrumb/ngssm-breadcrumb.component.d.ts +14 -0
- package/lib/components/ngssm-tree/ngssm-tree.component.d.ts +1 -0
- package/lib/public-api.d.ts +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { NgssmTreeActionType } from './ngssm-tree-action-type';
|
|
2
|
+
import { TreeAction } from './tree-action';
|
|
3
|
+
export class DeleteNgssmTreeAction extends TreeAction {
|
|
4
|
+
constructor(treeId) {
|
|
5
|
+
super(NgssmTreeActionType.deleteNgssmTree, treeId);
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsZXRlLW5nc3NtLXRyZWUuYWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmdzc20tdHJlZS9zcmMvbGliL2FjdGlvbnMvZGVsZXRlLW5nc3NtLXRyZWUuYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsTUFBTSxPQUFPLHFCQUFzQixTQUFRLFVBQVU7SUFDbkQsWUFBWSxNQUFjO1FBQ3hCLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxlQUFlLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDckQsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdzc21UcmVlQWN0aW9uVHlwZSB9IGZyb20gJy4vbmdzc20tdHJlZS1hY3Rpb24tdHlwZSc7XG5pbXBvcnQgeyBUcmVlQWN0aW9uIH0gZnJvbSAnLi90cmVlLWFjdGlvbic7XG5cbmV4cG9ydCBjbGFzcyBEZWxldGVOZ3NzbVRyZWVBY3Rpb24gZXh0ZW5kcyBUcmVlQWN0aW9uIHtcbiAgY29uc3RydWN0b3IodHJlZUlkOiBzdHJpbmcpIHtcbiAgICBzdXBlcihOZ3NzbVRyZWVBY3Rpb25UeXBlLmRlbGV0ZU5nc3NtVHJlZSwgdHJlZUlkKTtcbiAgfVxufVxuIl19
|
|
@@ -5,4 +5,5 @@ export * from './tree-action';
|
|
|
5
5
|
export * from './register-nodes.action';
|
|
6
6
|
export * from './collapse-node.action';
|
|
7
7
|
export * from './select-node.action';
|
|
8
|
-
|
|
8
|
+
export * from './delete-ngssm-tree.action';
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3NzbS10cmVlL3NyYy9saWIvYWN0aW9ucy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLDRCQUE0QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9uZ3NzbS10cmVlLWFjdGlvbi10eXBlJztcbmV4cG9ydCAqIGZyb20gJy4vaW5pdC1uZ3NzbS10cmVlLmFjdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL2V4cGFuZC1ub2RlLmFjdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL3RyZWUtYWN0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vcmVnaXN0ZXItbm9kZXMuYWN0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vY29sbGFwc2Utbm9kZS5hY3Rpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9zZWxlY3Qtbm9kZS5hY3Rpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9kZWxldGUtbmdzc20tdHJlZS5hY3Rpb24nO1xuIl19
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
export var NgssmTreeActionType;
|
|
2
2
|
(function (NgssmTreeActionType) {
|
|
3
3
|
NgssmTreeActionType["initNgssmTree"] = "[NgssmTreeActionType] initNgssmTree";
|
|
4
|
+
NgssmTreeActionType["deleteNgssmTree"] = "[NgssmTreeActionType] deleteNgssmTree";
|
|
4
5
|
NgssmTreeActionType["expandNode"] = "[NgssmTreeActionType] expandNode";
|
|
5
6
|
NgssmTreeActionType["collapseNode"] = "[NgssmTreeActionType] collapseNode";
|
|
6
7
|
NgssmTreeActionType["registerNodes"] = "[NgssmTreeActionType] registerNodes";
|
|
7
8
|
NgssmTreeActionType["selectNode"] = "[NgssmTreeActionType] selectNode";
|
|
8
9
|
})(NgssmTreeActionType || (NgssmTreeActionType = {}));
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmdzc20tdHJlZS1hY3Rpb24tdHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nc3NtLXRyZWUvc3JjL2xpYi9hY3Rpb25zL25nc3NtLXRyZWUtYWN0aW9uLXR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksbUJBT1g7QUFQRCxXQUFZLG1CQUFtQjtJQUM3Qiw0RUFBcUQsQ0FBQTtJQUNyRCxnRkFBeUQsQ0FBQTtJQUN6RCxzRUFBK0MsQ0FBQTtJQUMvQywwRUFBbUQsQ0FBQTtJQUNuRCw0RUFBcUQsQ0FBQTtJQUNyRCxzRUFBK0MsQ0FBQTtBQUNqRCxDQUFDLEVBUFcsbUJBQW1CLEtBQW5CLG1CQUFtQixRQU85QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIE5nc3NtVHJlZUFjdGlvblR5cGUge1xuICBpbml0Tmdzc21UcmVlID0gJ1tOZ3NzbVRyZWVBY3Rpb25UeXBlXSBpbml0Tmdzc21UcmVlJyxcbiAgZGVsZXRlTmdzc21UcmVlID0gJ1tOZ3NzbVRyZWVBY3Rpb25UeXBlXSBkZWxldGVOZ3NzbVRyZWUnLFxuICBleHBhbmROb2RlID0gJ1tOZ3NzbVRyZWVBY3Rpb25UeXBlXSBleHBhbmROb2RlJyxcbiAgY29sbGFwc2VOb2RlID0gJ1tOZ3NzbVRyZWVBY3Rpb25UeXBlXSBjb2xsYXBzZU5vZGUnLFxuICByZWdpc3Rlck5vZGVzID0gJ1tOZ3NzbVRyZWVBY3Rpb25UeXBlXSByZWdpc3Rlck5vZGVzJyxcbiAgc2VsZWN0Tm9kZSA9ICdbTmdzc21UcmVlQWN0aW9uVHlwZV0gc2VsZWN0Tm9kZSdcbn1cbiJdfQ==
|
|
@@ -1,2 +1,3 @@
|
|
|
1
1
|
export * from './ngssm-tree/ngssm-tree.component';
|
|
2
|
-
|
|
2
|
+
export * from './ngssm-breadcrumb/ngssm-breadcrumb.component';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3NzbS10cmVlL3NyYy9saWIvY29tcG9uZW50cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsK0NBQStDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL25nc3NtLXRyZWUvbmdzc20tdHJlZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9uZ3NzbS1icmVhZGNydW1iL25nc3NtLWJyZWFkY3J1bWIuY29tcG9uZW50JztcbiJdfQ==
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { Component, ChangeDetectionStrategy, Input } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { MatIconModule } from '@angular/material/icon';
|
|
4
|
+
import { MatButtonModule } from '@angular/material/button';
|
|
5
|
+
import { BehaviorSubject, combineLatest } from 'rxjs';
|
|
6
|
+
import { NgSsmComponent } from 'ngssm-store';
|
|
7
|
+
import { selectNgssmTreeState } from '../../state';
|
|
8
|
+
import { SelectNodeAction } from '../../actions';
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
import * as i1 from "ngssm-store";
|
|
11
|
+
import * as i2 from "@angular/common";
|
|
12
|
+
import * as i3 from "@angular/material/icon";
|
|
13
|
+
import * as i4 from "@angular/material/button";
|
|
14
|
+
export class NgssmBreadcrumbComponent extends NgSsmComponent {
|
|
15
|
+
constructor(store) {
|
|
16
|
+
super(store);
|
|
17
|
+
this._treeId$ = new BehaviorSubject(undefined);
|
|
18
|
+
this._nodes$ = new BehaviorSubject([]);
|
|
19
|
+
combineLatest([this._treeId$, this.watch((s) => selectNgssmTreeState(s))]).subscribe((values) => {
|
|
20
|
+
if (!values[0]) {
|
|
21
|
+
this._nodes$.next([]);
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
const tree = values[1]?.trees[values[0]];
|
|
25
|
+
if (!tree) {
|
|
26
|
+
this._nodes$.next([]);
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
const nodesPerId = new Map(tree.nodes.map((n) => [n.node.nodeId, n.node]));
|
|
30
|
+
const path = [];
|
|
31
|
+
let node = tree.selectedNode ? nodesPerId.get(tree.selectedNode) : undefined;
|
|
32
|
+
while (node) {
|
|
33
|
+
path.unshift(node);
|
|
34
|
+
node = node.parentNodeId ? nodesPerId.get(node.parentNodeId) : undefined;
|
|
35
|
+
}
|
|
36
|
+
if (path.length === 0 && tree.nodes.length > 0) {
|
|
37
|
+
path.push(tree.nodes[0]?.node);
|
|
38
|
+
}
|
|
39
|
+
this._nodes$.next(path);
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
set treeId(value) {
|
|
43
|
+
this._treeId$.next(value);
|
|
44
|
+
}
|
|
45
|
+
get nodes$() {
|
|
46
|
+
return this._nodes$.asObservable();
|
|
47
|
+
}
|
|
48
|
+
selectNode(node) {
|
|
49
|
+
const treeId = this._treeId$.getValue();
|
|
50
|
+
if (treeId) {
|
|
51
|
+
this.dispatchAction(new SelectNodeAction(treeId, node.nodeId));
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
NgssmBreadcrumbComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: NgssmBreadcrumbComponent, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Component });
|
|
56
|
+
NgssmBreadcrumbComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.5", type: NgssmBreadcrumbComponent, isStandalone: true, selector: "ngssm-breadcrumb", inputs: { treeId: "treeId" }, usesInheritance: true, ngImport: i0, template: "<div class=\"flex-row-center\">\n <mat-icon class=\"fa-solid fa-folder-tree\" color=\"primary\"></mat-icon>\n <span *ngFor=\"let node of nodes$ | async; last as last\" class=\"flex-row-center\">\n\n <button mat-button [disabled]=\"last\" (click)=\"selectNode(node)\">\n {{node.label}}\n </button>\n\n <div class=\"ngssm-breadcrumb-separator\" *ngIf=\"!last\">/</div>\n </span>\n</div>", styles: [".ngssm-breadcrumb-separator{font-weight:700}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
57
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: NgssmBreadcrumbComponent, decorators: [{
|
|
58
|
+
type: Component,
|
|
59
|
+
args: [{ selector: 'ngssm-breadcrumb', standalone: true, imports: [CommonModule, MatIconModule, MatButtonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"flex-row-center\">\n <mat-icon class=\"fa-solid fa-folder-tree\" color=\"primary\"></mat-icon>\n <span *ngFor=\"let node of nodes$ | async; last as last\" class=\"flex-row-center\">\n\n <button mat-button [disabled]=\"last\" (click)=\"selectNode(node)\">\n {{node.label}}\n </button>\n\n <div class=\"ngssm-breadcrumb-separator\" *ngIf=\"!last\">/</div>\n </span>\n</div>", styles: [".ngssm-breadcrumb-separator{font-weight:700}\n"] }]
|
|
60
|
+
}], ctorParameters: function () { return [{ type: i1.Store }]; }, propDecorators: { treeId: [{
|
|
61
|
+
type: Input
|
|
62
|
+
}] } });
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmdzc20tYnJlYWRjcnVtYi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3NzbS10cmVlL3NyYy9saWIvY29tcG9uZW50cy9uZ3NzbS1icmVhZGNydW1iL25nc3NtLWJyZWFkY3J1bWIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmdzc20tdHJlZS9zcmMvbGliL2NvbXBvbmVudHMvbmdzc20tYnJlYWRjcnVtYi9uZ3NzbS1icmVhZGNydW1iLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsdUJBQXVCLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBRWxFLE9BQU8sRUFBRSxjQUFjLEVBQVMsTUFBTSxhQUFhLENBQUM7QUFHcEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBVWpELE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxjQUFjO0lBSTFELFlBQVksS0FBWTtRQUN0QixLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFKRSxhQUFRLEdBQUcsSUFBSSxlQUFlLENBQXFCLFNBQVMsQ0FBQyxDQUFDO1FBQzlELFlBQU8sR0FBRyxJQUFJLGVBQWUsQ0FBYSxFQUFFLENBQUMsQ0FBQztRQUs3RCxhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQzlGLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUU7Z0JBQ2QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQ3RCLE9BQU87YUFDUjtZQUVELE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDekMsSUFBSSxDQUFDLElBQUksRUFBRTtnQkFDVCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDdEIsT0FBTzthQUNSO1lBRUQsTUFBTSxVQUFVLEdBQUcsSUFBSSxHQUFHLENBQW1CLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDN0YsTUFBTSxJQUFJLEdBQWUsRUFBRSxDQUFDO1lBQzVCLElBQUksSUFBSSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7WUFDN0UsT0FBTyxJQUFJLEVBQUU7Z0JBQ1gsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDbkIsSUFBSSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7YUFDMUU7WUFFRCxJQUFJLElBQUksQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtnQkFDOUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO2FBQ2hDO1lBRUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDMUIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsSUFBb0IsTUFBTSxDQUFDLEtBQWE7UUFDdEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVELElBQVcsTUFBTTtRQUNmLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRU0sVUFBVSxDQUFDLElBQWM7UUFDOUIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUN4QyxJQUFJLE1BQU0sRUFBRTtZQUNWLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7U0FDaEU7SUFDSCxDQUFDOztxSEFoRFUsd0JBQXdCO3lHQUF4Qix3QkFBd0IsaUlDcEJyQywyYUFVTSx1R0RLTSxZQUFZLG9UQUFFLGFBQWEsbUxBQUUsZUFBZTsyRkFLM0Msd0JBQXdCO2tCQVJwQyxTQUFTOytCQUNFLGtCQUFrQixjQUNoQixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsYUFBYSxFQUFFLGVBQWUsQ0FBQyxtQkFHdEMsdUJBQXVCLENBQUMsTUFBTTs0RkFxQzNCLE1BQU07c0JBQXpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgTmdTc21Db21wb25lbnQsIFN0b3JlIH0gZnJvbSAnbmdzc20tc3RvcmUnO1xuXG5pbXBvcnQgeyBOb2RlRGF0YSB9IGZyb20gJy4uLy4uL21vZGVsJztcbmltcG9ydCB7IHNlbGVjdE5nc3NtVHJlZVN0YXRlIH0gZnJvbSAnLi4vLi4vc3RhdGUnO1xuaW1wb3J0IHsgU2VsZWN0Tm9kZUFjdGlvbiB9IGZyb20gJy4uLy4uL2FjdGlvbnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICduZ3NzbS1icmVhZGNydW1iJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgTWF0SWNvbk1vZHVsZSwgTWF0QnV0dG9uTW9kdWxlXSxcbiAgdGVtcGxhdGVVcmw6ICcuL25nc3NtLWJyZWFkY3J1bWIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9uZ3NzbS1icmVhZGNydW1iLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIE5nc3NtQnJlYWRjcnVtYkNvbXBvbmVudCBleHRlbmRzIE5nU3NtQ29tcG9uZW50IHtcbiAgcHJpdmF0ZSByZWFkb25seSBfdHJlZUlkJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9ub2RlcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE5vZGVEYXRhW10+KFtdKTtcblxuICBjb25zdHJ1Y3RvcihzdG9yZTogU3RvcmUpIHtcbiAgICBzdXBlcihzdG9yZSk7XG5cbiAgICBjb21iaW5lTGF0ZXN0KFt0aGlzLl90cmVlSWQkLCB0aGlzLndhdGNoKChzKSA9PiBzZWxlY3ROZ3NzbVRyZWVTdGF0ZShzKSldKS5zdWJzY3JpYmUoKHZhbHVlcykgPT4ge1xuICAgICAgaWYgKCF2YWx1ZXNbMF0pIHtcbiAgICAgICAgdGhpcy5fbm9kZXMkLm5leHQoW10pO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHRyZWUgPSB2YWx1ZXNbMV0/LnRyZWVzW3ZhbHVlc1swXV07XG4gICAgICBpZiAoIXRyZWUpIHtcbiAgICAgICAgdGhpcy5fbm9kZXMkLm5leHQoW10pO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IG5vZGVzUGVySWQgPSBuZXcgTWFwPHN0cmluZywgTm9kZURhdGE+KHRyZWUubm9kZXMubWFwKChuKSA9PiBbbi5ub2RlLm5vZGVJZCwgbi5ub2RlXSkpO1xuICAgICAgY29uc3QgcGF0aDogTm9kZURhdGFbXSA9IFtdO1xuICAgICAgbGV0IG5vZGUgPSB0cmVlLnNlbGVjdGVkTm9kZSA/IG5vZGVzUGVySWQuZ2V0KHRyZWUuc2VsZWN0ZWROb2RlKSA6IHVuZGVmaW5lZDtcbiAgICAgIHdoaWxlIChub2RlKSB7XG4gICAgICAgIHBhdGgudW5zaGlmdChub2RlKTtcbiAgICAgICAgbm9kZSA9IG5vZGUucGFyZW50Tm9kZUlkID8gbm9kZXNQZXJJZC5nZXQobm9kZS5wYXJlbnROb2RlSWQpIDogdW5kZWZpbmVkO1xuICAgICAgfVxuXG4gICAgICBpZiAocGF0aC5sZW5ndGggPT09IDAgJiYgdHJlZS5ub2Rlcy5sZW5ndGggPiAwKSB7XG4gICAgICAgIHBhdGgucHVzaCh0cmVlLm5vZGVzWzBdPy5ub2RlKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5fbm9kZXMkLm5leHQocGF0aCk7XG4gICAgfSk7XG4gIH1cblxuICBASW5wdXQoKSBwdWJsaWMgc2V0IHRyZWVJZCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5fdHJlZUlkJC5uZXh0KHZhbHVlKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgbm9kZXMkKCk6IE9ic2VydmFibGU8Tm9kZURhdGFbXT4ge1xuICAgIHJldHVybiB0aGlzLl9ub2RlcyQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBwdWJsaWMgc2VsZWN0Tm9kZShub2RlOiBOb2RlRGF0YSk6IHZvaWQge1xuICAgIGNvbnN0IHRyZWVJZCA9IHRoaXMuX3RyZWVJZCQuZ2V0VmFsdWUoKTtcbiAgICBpZiAodHJlZUlkKSB7XG4gICAgICB0aGlzLmRpc3BhdGNoQWN0aW9uKG5ldyBTZWxlY3ROb2RlQWN0aW9uKHRyZWVJZCwgbm9kZS5ub2RlSWQpKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJmbGV4LXJvdy1jZW50ZXJcIj5cbiAgICA8bWF0LWljb24gY2xhc3M9XCJmYS1zb2xpZCBmYS1mb2xkZXItdHJlZVwiIGNvbG9yPVwicHJpbWFyeVwiPjwvbWF0LWljb24+XG4gICAgPHNwYW4gKm5nRm9yPVwibGV0IG5vZGUgb2Ygbm9kZXMkIHwgYXN5bmM7IGxhc3QgYXMgbGFzdFwiIGNsYXNzPVwiZmxleC1yb3ctY2VudGVyXCI+XG5cbiAgICAgICAgPGJ1dHRvbiBtYXQtYnV0dG9uIFtkaXNhYmxlZF09XCJsYXN0XCIgKGNsaWNrKT1cInNlbGVjdE5vZGUobm9kZSlcIj5cbiAgICAgICAgICAgIHt7bm9kZS5sYWJlbH19XG4gICAgICAgIDwvYnV0dG9uPlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJuZ3NzbS1icmVhZGNydW1iLXNlcGFyYXRvclwiICpuZ0lmPVwiIWxhc3RcIj4vPC9kaXY+XG4gICAgPC9zcGFuPlxuPC9kaXY+Il19
|
|
@@ -4,7 +4,7 @@ import { ScrollingModule } from '@angular/cdk/scrolling';
|
|
|
4
4
|
import { MatCardModule } from '@angular/material/card';
|
|
5
5
|
import { MatIconModule } from '@angular/material/icon';
|
|
6
6
|
import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
|
|
7
|
-
import { BehaviorSubject
|
|
7
|
+
import { BehaviorSubject } from 'rxjs';
|
|
8
8
|
import { NgSsmComponent } from 'ngssm-store';
|
|
9
9
|
import { DataStatus } from 'ngssm-remote-data';
|
|
10
10
|
import { selectNgssmTreeState } from '../../state';
|
|
@@ -23,38 +23,57 @@ export class NgssmTreeComponent extends NgSsmComponent {
|
|
|
23
23
|
this._displayedItems$ = new BehaviorSubject([]);
|
|
24
24
|
this._selectedNodeId$ = new BehaviorSubject(undefined);
|
|
25
25
|
this.dataStatus = DataStatus;
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
.
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
const items = [];
|
|
37
|
-
let hiddenLevel = -1;
|
|
38
|
-
(values[1][values[0].treeId]?.nodes ?? []).forEach((t) => {
|
|
39
|
-
if (t.node.isExpandable && t.isExpanded === false && hiddenLevel === -1) {
|
|
40
|
-
hiddenLevel = t.level;
|
|
26
|
+
}
|
|
27
|
+
set treeConfig(value) {
|
|
28
|
+
if (value) {
|
|
29
|
+
this._treeConfig$.next({ ...value });
|
|
30
|
+
this.treeSubscription?.unsubscribe();
|
|
31
|
+
this.treeSubscription = this.watch((s) => selectNgssmTreeState(s).trees[value.treeId]).subscribe((tree) => {
|
|
32
|
+
const config = this._treeConfig$.getValue();
|
|
33
|
+
if (!tree || !config) {
|
|
34
|
+
this._displayedItems$.next([]);
|
|
35
|
+
return;
|
|
41
36
|
}
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
37
|
+
const alwaysTrue = (_) => true;
|
|
38
|
+
const filter = config.filter ?? alwaysTrue;
|
|
39
|
+
const items = [];
|
|
40
|
+
let hiddenLevel = -1;
|
|
41
|
+
const nodesToFindSelected = new Map();
|
|
42
|
+
(tree.nodes ?? []).forEach((t) => {
|
|
43
|
+
if (t.node.isExpandable && t.isExpanded === false && hiddenLevel === -1) {
|
|
44
|
+
hiddenLevel = t.level;
|
|
45
|
+
}
|
|
46
|
+
if (hiddenLevel === -1 || t.level <= hiddenLevel) {
|
|
47
|
+
if (filter(t.node)) {
|
|
48
|
+
items.push(t);
|
|
49
|
+
nodesToFindSelected.set(t.node.nodeId, { isDisplayed: true, node: t });
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
if (t.node.isExpandable && t.level <= hiddenLevel) {
|
|
53
|
+
hiddenLevel = t.isExpanded === true ? -1 : t.level;
|
|
45
54
|
}
|
|
55
|
+
if (!nodesToFindSelected.has(t.node.nodeId)) {
|
|
56
|
+
nodesToFindSelected.set(t.node.nodeId, { isDisplayed: false, node: t });
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
this._displayedItems$.next(items);
|
|
60
|
+
let selectedNode = tree.selectedNode;
|
|
61
|
+
if (!selectedNode) {
|
|
62
|
+
this._selectedNodeId$.next(undefined);
|
|
46
63
|
}
|
|
47
|
-
|
|
48
|
-
|
|
64
|
+
else {
|
|
65
|
+
while (selectedNode) {
|
|
66
|
+
const item = nodesToFindSelected.get(selectedNode);
|
|
67
|
+
if (item?.isDisplayed !== true) {
|
|
68
|
+
selectedNode = item?.node.node.parentNodeId;
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
break;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
this._selectedNodeId$.next(selectedNode);
|
|
49
75
|
}
|
|
50
76
|
});
|
|
51
|
-
this._displayedItems$.next(items);
|
|
52
|
-
this._selectedNodeId$.next(values[1][values[0].treeId]?.selectedNode);
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
set treeConfig(value) {
|
|
56
|
-
if (value) {
|
|
57
|
-
this._treeConfig$.next(value);
|
|
58
77
|
}
|
|
59
78
|
}
|
|
60
79
|
get treeConfig$() {
|
|
@@ -89,11 +108,11 @@ export class NgssmTreeComponent extends NgSsmComponent {
|
|
|
89
108
|
}
|
|
90
109
|
}
|
|
91
110
|
NgssmTreeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: NgssmTreeComponent, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Component });
|
|
92
|
-
NgssmTreeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.5", type: NgssmTreeComponent, isStandalone: true, selector: "ngssm-tree", inputs: { treeConfig: "treeConfig" }, usesInheritance: true, ngImport: i0, template: "<mat-card class=\"flex-column-stretch fxFlex\">\n <mat-card-content class=\"flex-column-stretch fxFlex\" *ngIf=\"(treeConfig$ | async) as treeConfig\">\n <cdk-virtual-scroll-viewport itemSize=\"30\" class=\"fxFlex\">\n <div *cdkVirtualFor=\"let item of displayedItems$ | async; trackBy: getItemId\" class=\"ngssm-tree-node\"\n [style.padding-left.px]=\"item.level * 20\" (click)=\"selectNode(item)\"\n [ngClass]=\"{'selected' : (selectedNodeId$ | async) === item.node.nodeId}\">\n <mat-icon class=\"fa-solid fa-chevron-right\" *ngIf=\"item.node.isExpandable && item.isExpanded === false\"\n (click)=\"$event.stopPropagation();expand(item);\"></mat-icon>\n <mat-icon class=\"fa-solid fa-chevron-down\" *ngIf=\"item.node.isExpandable && item.isExpanded\"\n (click)=\"$event.stopPropagation();collapse(item)\"></mat-icon>\n <mat-spinner diameter=\"20\"\n *ngIf=\"item.node.isExpandable && item.status === dataStatus.loading\"></mat-spinner>\n <span *ngIf=\"!item.node.isExpandable\" class=\"not-
|
|
111
|
+
NgssmTreeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.5", type: NgssmTreeComponent, isStandalone: true, selector: "ngssm-tree", inputs: { treeConfig: "treeConfig" }, usesInheritance: true, ngImport: i0, template: "<mat-card class=\"flex-column-stretch fxFlex\">\n <mat-card-content class=\"flex-column-stretch fxFlex\" *ngIf=\"(treeConfig$ | async) as treeConfig\">\n <cdk-virtual-scroll-viewport itemSize=\"30\" class=\"fxFlex\">\n <div *cdkVirtualFor=\"let item of displayedItems$ | async; trackBy: getItemId\" class=\"ngssm-tree-node\"\n [style.padding-left.px]=\"item.level * 20\" (click)=\"selectNode(item)\"\n [ngClass]=\"{'selected' : (selectedNodeId$ | async) === item.node.nodeId}\">\n <mat-icon class=\"fa-solid fa-chevron-right\" *ngIf=\"item.node.isExpandable && item.isExpanded === false && item.status !== dataStatus.loading\"\n (click)=\"$event.stopPropagation();expand(item);\"></mat-icon>\n <mat-icon class=\"fa-solid fa-chevron-down\" *ngIf=\"item.node.isExpandable && item.isExpanded && item.status !== dataStatus.loading\"\n (click)=\"$event.stopPropagation();collapse(item)\"></mat-icon>\n <mat-spinner diameter=\"20\"\n *ngIf=\"item.node.isExpandable && item.status === dataStatus.loading\"></mat-spinner>\n <span *ngIf=\"!item.node.isExpandable\" class=\"not-expandable-padding\"></span>\n\n <mat-icon class=\"{{treeConfig.iconClasses[item.node.type]}}\" color=\"primary\"></mat-icon>\n\n <span class=\"ngssm-tree-node-label\">\n {{item.node.label}}\n </span>\n </div>\n </cdk-virtual-scroll-viewport>\n </mat-card-content>\n</mat-card>", styles: [":host{display:flex;flex-direction:column}:host .ngssm-tree-node{height:30px;display:flex;flex-direction:row;align-items:center}:host .ngssm-tree-node .fa-folder{margin-right:4px}:host .ngssm-tree-node .fa-chevron-right:hover{cursor:pointer}:host .ngssm-tree-node.selected{background-color:#e4e6f1}:host .ngssm-tree-node:hover{cursor:pointer}:host .ngssm-tree-node:hover:not(.selected){background-color:#f3f3f3}:host .not-expandable-padding{width:24px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }, { kind: "ngmodule", type: ScrollingModule }, { kind: "directive", type: i3.CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { kind: "directive", type: i3.CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { kind: "component", type: i3.CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { kind: "ngmodule", type: MatCardModule }, { kind: "component", type: i4.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "directive", type: i4.MatCardContent, selector: "mat-card-content" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatProgressSpinnerModule }, { kind: "component", type: i6.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
93
112
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: NgssmTreeComponent, decorators: [{
|
|
94
113
|
type: Component,
|
|
95
|
-
args: [{ selector: 'ngssm-tree', standalone: true, imports: [CommonModule, ScrollingModule, MatCardModule, MatIconModule, MatProgressSpinnerModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-card class=\"flex-column-stretch fxFlex\">\n <mat-card-content class=\"flex-column-stretch fxFlex\" *ngIf=\"(treeConfig$ | async) as treeConfig\">\n <cdk-virtual-scroll-viewport itemSize=\"30\" class=\"fxFlex\">\n <div *cdkVirtualFor=\"let item of displayedItems$ | async; trackBy: getItemId\" class=\"ngssm-tree-node\"\n [style.padding-left.px]=\"item.level * 20\" (click)=\"selectNode(item)\"\n [ngClass]=\"{'selected' : (selectedNodeId$ | async) === item.node.nodeId}\">\n <mat-icon class=\"fa-solid fa-chevron-right\" *ngIf=\"item.node.isExpandable && item.isExpanded === false\"\n (click)=\"$event.stopPropagation();expand(item);\"></mat-icon>\n <mat-icon class=\"fa-solid fa-chevron-down\" *ngIf=\"item.node.isExpandable && item.isExpanded\"\n (click)=\"$event.stopPropagation();collapse(item)\"></mat-icon>\n <mat-spinner diameter=\"20\"\n *ngIf=\"item.node.isExpandable && item.status === dataStatus.loading\"></mat-spinner>\n <span *ngIf=\"!item.node.isExpandable\" class=\"not-
|
|
114
|
+
args: [{ selector: 'ngssm-tree', standalone: true, imports: [CommonModule, ScrollingModule, MatCardModule, MatIconModule, MatProgressSpinnerModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-card class=\"flex-column-stretch fxFlex\">\n <mat-card-content class=\"flex-column-stretch fxFlex\" *ngIf=\"(treeConfig$ | async) as treeConfig\">\n <cdk-virtual-scroll-viewport itemSize=\"30\" class=\"fxFlex\">\n <div *cdkVirtualFor=\"let item of displayedItems$ | async; trackBy: getItemId\" class=\"ngssm-tree-node\"\n [style.padding-left.px]=\"item.level * 20\" (click)=\"selectNode(item)\"\n [ngClass]=\"{'selected' : (selectedNodeId$ | async) === item.node.nodeId}\">\n <mat-icon class=\"fa-solid fa-chevron-right\" *ngIf=\"item.node.isExpandable && item.isExpanded === false && item.status !== dataStatus.loading\"\n (click)=\"$event.stopPropagation();expand(item);\"></mat-icon>\n <mat-icon class=\"fa-solid fa-chevron-down\" *ngIf=\"item.node.isExpandable && item.isExpanded && item.status !== dataStatus.loading\"\n (click)=\"$event.stopPropagation();collapse(item)\"></mat-icon>\n <mat-spinner diameter=\"20\"\n *ngIf=\"item.node.isExpandable && item.status === dataStatus.loading\"></mat-spinner>\n <span *ngIf=\"!item.node.isExpandable\" class=\"not-expandable-padding\"></span>\n\n <mat-icon class=\"{{treeConfig.iconClasses[item.node.type]}}\" color=\"primary\"></mat-icon>\n\n <span class=\"ngssm-tree-node-label\">\n {{item.node.label}}\n </span>\n </div>\n </cdk-virtual-scroll-viewport>\n </mat-card-content>\n</mat-card>", styles: [":host{display:flex;flex-direction:column}:host .ngssm-tree-node{height:30px;display:flex;flex-direction:row;align-items:center}:host .ngssm-tree-node .fa-folder{margin-right:4px}:host .ngssm-tree-node .fa-chevron-right:hover{cursor:pointer}:host .ngssm-tree-node.selected{background-color:#e4e6f1}:host .ngssm-tree-node:hover{cursor:pointer}:host .ngssm-tree-node:hover:not(.selected){background-color:#f3f3f3}:host .not-expandable-padding{width:24px}\n"] }]
|
|
96
115
|
}], ctorParameters: function () { return [{ type: i1.Store }]; }, propDecorators: { treeConfig: [{
|
|
97
116
|
type: Input
|
|
98
117
|
}] } });
|
|
99
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmdzc20tdHJlZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3NzbS10cmVlL3NyYy9saWIvY29tcG9uZW50cy9uZ3NzbS10cmVlL25nc3NtLXRyZWUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmdzc20tdHJlZS9zcmMvbGliL2NvbXBvbmVudHMvbmdzc20tdHJlZS9uZ3NzbS10cmVlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsdUJBQXVCLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBYyxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFN0UsT0FBTyxFQUFFLGNBQWMsRUFBUyxNQUFNLGFBQWEsQ0FBQztBQUNwRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFHL0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7QUFVdkYsTUFBTSxPQUFPLGtCQUFtQixTQUFRLGNBQWM7SUFPcEQsWUFBWSxLQUFZO1FBQ3RCLEtBQUssQ0FBQyxLQUFLLENB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RSxhQUFhLG1MQUFFLHdCQUF3QjsyRkFLcEYsa0JBQWtCO2tCQVI5QixTQUFTOytCQUNFLFlBQVksY0FDVixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxhQUFhLEVBQUUsd0JBQXdCLENBQUMsbUJBRy9FLHVCQUF1QixDQUFDLE1BQU07NEZBZ0RsQyxVQUFVO3NCQUF0QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBTY3JvbGxpbmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvc2Nyb2xsaW5nJztcbmltcG9ydCB7IE1hdENhcmRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jYXJkJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Byb2dyZXNzLXNwaW5uZXInO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgTmdTc21Db21wb25lbnQsIFN0b3JlIH0gZnJvbSAnbmdzc20tc3RvcmUnO1xuaW1wb3J0IHsgRGF0YVN0YXR1cyB9IGZyb20gJ25nc3NtLXJlbW90ZS1kYXRhJztcblxuaW1wb3J0IHsgTmdzc21UcmVlQ29uZmlnLCBOZ3NzbVRyZWVOb2RlLCBOb2RlRGF0YSB9IGZyb20gJy4uLy4uL21vZGVsJztcbmltcG9ydCB7IHNlbGVjdE5nc3NtVHJlZVN0YXRlIH0gZnJvbSAnLi4vLi4vc3RhdGUnO1xuaW1wb3J0IHsgQ29sbGFwc2VOb2RlQWN0aW9uLCBFeHBhbmROb2RlQWN0aW9uLCBTZWxlY3ROb2RlQWN0aW9uIH0gZnJvbSAnLi4vLi4vYWN0aW9ucyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ25nc3NtLXRyZWUnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBTY3JvbGxpbmdNb2R1bGUsIE1hdENhcmRNb2R1bGUsIE1hdEljb25Nb2R1bGUsIE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZV0sXG4gIHRlbXBsYXRlVXJsOiAnLi9uZ3NzbS10cmVlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbmdzc20tdHJlZS5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBOZ3NzbVRyZWVDb21wb25lbnQgZXh0ZW5kcyBOZ1NzbUNvbXBvbmVudCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3RyZWVDb25maWckID0gbmV3IEJlaGF2aW9yU3ViamVjdDxOZ3NzbVRyZWVDb25maWcgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2Rpc3BsYXllZEl0ZW1zJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Tmdzc21UcmVlTm9kZVtdPihbXSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3NlbGVjdGVkTm9kZUlkJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpO1xuXG4gIHB1YmxpYyByZWFkb25seSBkYXRhU3RhdHVzID0gRGF0YVN0YXR1cztcblxuICBjb25zdHJ1Y3RvcihzdG9yZTogU3RvcmUpIHtcbiAgICBzdXBlcihzdG9yZSk7XG5cbiAgICAvLyBUT0RPIC0gc3RhcnQgd2F0Y2hpbmcgd2hlbiB0cmVlQ29uZmlnIGlzIHNldFxuICAgIGNvbWJpbmVMYXRlc3QoW3RoaXMuX3RyZWVDb25maWckLCB0aGlzLndhdGNoKChzKSA9PiBzZWxlY3ROZ3NzbVRyZWVTdGF0ZShzKS50cmVlcyldKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzY3JpYmVBbGwkKSlcbiAgICAgIC5zdWJzY3JpYmUoKHZhbHVlcykgPT4ge1xuICAgICAgICBpZiAoIXZhbHVlc1swXSkge1xuICAgICAgICAgIHRoaXMuX2Rpc3BsYXllZEl0ZW1zJC5uZXh0KFtdKTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBhbHdheXNUcnVlID0gKF86IE5vZGVEYXRhKSA9PiB0cnVlO1xuICAgICAgICBjb25zdCBmaWx0ZXI6IChub2RlOiBOb2RlRGF0YSkgPT4gYm9vbGVhbiA9IHZhbHVlc1swXS5maWx0ZXIgPz8gYWx3YXlzVHJ1ZTtcblxuICAgICAgICBjb25zdCBpdGVtczogTmdzc21UcmVlTm9kZVtdID0gW107XG4gICAgICAgIGxldCBoaWRkZW5MZXZlbCA9IC0xO1xuICAgICAgICAodmFsdWVzWzFdW3ZhbHVlc1swXS50cmVlSWRdPy5ub2RlcyA/PyBbXSkuZm9yRWFjaCgodCkgPT4ge1xuICAgICAgICAgIGlmICh0Lm5vZGUuaXNFeHBhbmRhYmxlICYmIHQuaXNFeHBhbmRlZCA9PT0gZmFsc2UgJiYgaGlkZGVuTGV2ZWwgPT09IC0xKSB7XG4gICAgICAgICAgICBoaWRkZW5MZXZlbCA9IHQubGV2ZWw7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKGhpZGRlbkxldmVsID09PSAtMSB8fCB0LmxldmVsIDw9IGhpZGRlbkxldmVsKSB7XG4gICAgICAgICAgICBpZiAoZmlsdGVyKHQubm9kZSkpIHtcbiAgICAgICAgICAgICAgaXRlbXMucHVzaCh0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAodC5ub2RlLmlzRXhwYW5kYWJsZSAmJiB0LmxldmVsIDw9IGhpZGRlbkxldmVsKSB7XG4gICAgICAgICAgICBoaWRkZW5MZXZlbCA9IHQuaXNFeHBhbmRlZCA9PT0gdHJ1ZSA/IC0xIDogdC5sZXZlbDtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuX2Rpc3BsYXllZEl0ZW1zJC5uZXh0KGl0ZW1zKTtcblxuICAgICAgICB0aGlzLl9zZWxlY3RlZE5vZGVJZCQubmV4dCh2YWx1ZXNbMV1bdmFsdWVzWzBdLnRyZWVJZF0/LnNlbGVjdGVkTm9kZSk7XG4gICAgICB9KTtcbiAgfVxuXG4gIEBJbnB1dCgpIHNldCB0cmVlQ29uZmlnKHZhbHVlOiBOZ3NzbVRyZWVDb25maWcgfCB1bmRlZmluZWQgfCBudWxsKSB7XG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICB0aGlzLl90cmVlQ29uZmlnJC5uZXh0KHZhbHVlKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0IHRyZWVDb25maWckKCk6IE9ic2VydmFibGU8Tmdzc21UcmVlQ29uZmlnIHwgdW5kZWZpbmVkPiB7XG4gICAgcmV0dXJuIHRoaXMuX3RyZWVDb25maWckLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHVibGljIGdldCBkaXNwbGF5ZWRJdGVtcyQoKTogT2JzZXJ2YWJsZTxOZ3NzbVRyZWVOb2RlW10+IHtcbiAgICByZXR1cm4gdGhpcy5fZGlzcGxheWVkSXRlbXMkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHVibGljIGdldCBzZWxlY3RlZE5vZGVJZCQoKTogT2JzZXJ2YWJsZTxzdHJpbmcgfCB1bmRlZmluZWQ+IHtcbiAgICByZXR1cm4gdGhpcy5fc2VsZWN0ZWROb2RlSWQkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHVibGljIGdldEl0ZW1JZChfOiBudW1iZXIsIG5vZGU6IE5nc3NtVHJlZU5vZGUpOiBzdHJpbmcge1xuICAgIHJldHVybiBub2RlLm5vZGUubm9kZUlkO1xuICB9XG5cbiAgcHVibGljIGV4cGFuZChub2RlOiBOZ3NzbVRyZWVOb2RlKTogdm9pZCB7XG4gICAgY29uc3QgdHJlZUlkID0gdGhpcy5fdHJlZUNvbmZpZyQuZ2V0VmFsdWUoKT8udHJlZUlkO1xuICAgIGlmICh0cmVlSWQpIHtcbiAgICAgIHRoaXMuZGlzcGF0Y2hBY3Rpb24obmV3IEV4cGFuZE5vZGVBY3Rpb24odHJlZUlkLCBub2RlLm5vZGUubm9kZUlkKSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGNvbGxhcHNlKG5vZGU6IE5nc3NtVHJlZU5vZGUpOiB2b2lkIHtcbiAgICBjb25zdCB0cmVlSWQgPSB0aGlzLl90cmVlQ29uZmlnJC5nZXRWYWx1ZSgpPy50cmVlSWQ7XG4gICAgaWYgKHRyZWVJZCkge1xuICAgICAgdGhpcy5kaXNwYXRjaEFjdGlvbihuZXcgQ29sbGFwc2VOb2RlQWN0aW9uKHRyZWVJZCwgbm9kZS5ub2RlLm5vZGVJZCkpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBzZWxlY3ROb2RlKG5vZGU6IE5nc3NtVHJlZU5vZGUpOiB2b2lkIHtcbiAgICBjb25zdCB0cmVlSWQgPSB0aGlzLl90cmVlQ29uZmlnJC5nZXRWYWx1ZSgpPy50cmVlSWQ7XG4gICAgaWYgKHRyZWVJZCkge1xuICAgICAgdGhpcy5kaXNwYXRjaEFjdGlvbihuZXcgU2VsZWN0Tm9kZUFjdGlvbih0cmVlSWQsIG5vZGUubm9kZS5ub2RlSWQpKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxtYXQtY2FyZCBjbGFzcz1cImZsZXgtY29sdW1uLXN0cmV0Y2ggZnhGbGV4XCI+XG4gICAgPG1hdC1jYXJkLWNvbnRlbnQgY2xhc3M9XCJmbGV4LWNvbHVtbi1zdHJldGNoIGZ4RmxleFwiICpuZ0lmPVwiKHRyZWVDb25maWckIHwgYXN5bmMpIGFzIHRyZWVDb25maWdcIj5cbiAgICAgICAgPGNkay12aXJ0dWFsLXNjcm9sbC12aWV3cG9ydCBpdGVtU2l6ZT1cIjMwXCIgY2xhc3M9XCJmeEZsZXhcIj5cbiAgICAgICAgICAgIDxkaXYgKmNka1ZpcnR1YWxGb3I9XCJsZXQgaXRlbSBvZiBkaXNwbGF5ZWRJdGVtcyQgfCBhc3luYzsgdHJhY2tCeTogZ2V0SXRlbUlkXCIgY2xhc3M9XCJuZ3NzbS10cmVlLW5vZGVcIlxuICAgICAgICAgICAgICAgIFtzdHlsZS5wYWRkaW5nLWxlZnQucHhdPVwiaXRlbS5sZXZlbCAqIDIwXCIgKGNsaWNrKT1cInNlbGVjdE5vZGUoaXRlbSlcIlxuICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnc2VsZWN0ZWQnIDogKHNlbGVjdGVkTm9kZUlkJCB8IGFzeW5jKSA9PT0gaXRlbS5ub2RlLm5vZGVJZH1cIj5cbiAgICAgICAgICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJmYS1zb2xpZCBmYS1jaGV2cm9uLXJpZ2h0XCIgKm5nSWY9XCJpdGVtLm5vZGUuaXNFeHBhbmRhYmxlICYmIGl0ZW0uaXNFeHBhbmRlZCA9PT0gZmFsc2VcIlxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO2V4cGFuZChpdGVtKTtcIj48L21hdC1pY29uPlxuICAgICAgICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cImZhLXNvbGlkIGZhLWNoZXZyb24tZG93blwiICpuZ0lmPVwiaXRlbS5ub2RlLmlzRXhwYW5kYWJsZSAmJiBpdGVtLmlzRXhwYW5kZWRcIlxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO2NvbGxhcHNlKGl0ZW0pXCI+PC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICA8bWF0LXNwaW5uZXIgZGlhbWV0ZXI9XCIyMFwiXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiaXRlbS5ub2RlLmlzRXhwYW5kYWJsZSAmJiBpdGVtLnN0YXR1cyA9PT0gZGF0YVN0YXR1cy5sb2FkaW5nXCI+PC9tYXQtc3Bpbm5lcj5cbiAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cIiFpdGVtLm5vZGUuaXNFeHBhbmRhYmxlXCIgY2xhc3M9XCJub3QtZXhhbmRhYmxlLXBhZGRpbmdcIj48L3NwYW4+XG5cbiAgICAgICAgICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJ7e3RyZWVDb25maWcuaWNvbkNsYXNzZXNbaXRlbS5ub2RlLnR5cGVdfX1cIiBjb2xvcj1cInByaW1hcnlcIj48L21hdC1pY29uPlxuXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJuZ3NzbS10cmVlLW5vZGUtbGFiZWxcIj5cbiAgICAgICAgICAgICAgICAgICAge3tpdGVtLm5vZGUubGFiZWx9fVxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Nkay12aXJ0dWFsLXNjcm9sbC12aWV3cG9ydD5cbiAgICA8L21hdC1jYXJkLWNvbnRlbnQ+XG48L21hdC1jYXJkPiJdfQ==
|
|
118
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmdzc20tdHJlZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3NzbS10cmVlL3NyYy9saWIvY29tcG9uZW50cy9uZ3NzbS10cmVlL25nc3NtLXRyZWUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmdzc20tdHJlZS9zcmMvbGliL2NvbXBvbmVudHMvbmdzc20tdHJlZS9uZ3NzbS10cmVlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsdUJBQXVCLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsZUFBZSxFQUE0QixNQUFNLE1BQU0sQ0FBQztBQUVqRSxPQUFPLEVBQUUsY0FBYyxFQUFTLE1BQU0sYUFBYSxDQUFDO0FBQ3BELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUcvQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDbkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLGdCQUFnQixFQUFFLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7OztBQVV2RixNQUFNLE9BQU8sa0JBQW1CLFNBQVEsY0FBYztJQVNwRCxZQUFZLEtBQVk7UUFDdEIsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBVEUsaUJBQVks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LElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1NBQ3JFO0lBQ0gsQ0FBQztJQUVNLFFBQVEsQ0FBQyxJQUFtQjtRQUNqQyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxFQUFFLE1BQU0sQ0FBQztRQUNwRCxJQUFJLE1BQU0sRUFBRTtZQUNWLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1NBQ3ZFO0lBQ0gsQ0FBQztJQUVNLFVBQVUsQ0FBQyxJQUFtQjtRQUNuQyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxFQUFFLE1BQU0sQ0FBQztRQUNwRCxJQUFJLE1BQU0sRUFBRTtZQUNWLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1NBQ3JFO0lBQ0gsQ0FBQzs7K0dBNUdVLGtCQUFrQjttR0FBbEIsa0JBQWtCLG1JQ3ZCL0IsZ2tEQXNCVyw4ZkRKQyxZQUFZLHFSQUFFLGVBQWUsMmpCQUFFLGFBQWEsME5BQUUsYUFBYSxtTEFBRSx3QkFBd0I7MkZBS3BGLGtCQUFrQjtrQkFSOUIsU0FBUzsrQkFDRSxZQUFZLGNBQ1YsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLHdCQUF3QixDQUFDLG1CQUcvRSx1QkFBdUIsQ0FBQyxNQUFNOzRGQWVsQyxVQUFVO3NCQUF0QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBTY3JvbGxpbmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvc2Nyb2xsaW5nJztcbmltcG9ydCB7IE1hdENhcmRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jYXJkJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Byb2dyZXNzLXNwaW5uZXInO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgTmdTc21Db21wb25lbnQsIFN0b3JlIH0gZnJvbSAnbmdzc20tc3RvcmUnO1xuaW1wb3J0IHsgRGF0YVN0YXR1cyB9IGZyb20gJ25nc3NtLXJlbW90ZS1kYXRhJztcblxuaW1wb3J0IHsgTmdzc21UcmVlLCBOZ3NzbVRyZWVDb25maWcsIE5nc3NtVHJlZU5vZGUsIE5vZGVEYXRhIH0gZnJvbSAnLi4vLi4vbW9kZWwnO1xuaW1wb3J0IHsgc2VsZWN0Tmdzc21UcmVlU3RhdGUgfSBmcm9tICcuLi8uLi9zdGF0ZSc7XG5pbXBvcnQgeyBDb2xsYXBzZU5vZGVBY3Rpb24sIEV4cGFuZE5vZGVBY3Rpb24sIFNlbGVjdE5vZGVBY3Rpb24gfSBmcm9tICcuLi8uLi9hY3Rpb25zJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmdzc20tdHJlZScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFNjcm9sbGluZ01vZHVsZSwgTWF0Q2FyZE1vZHVsZSwgTWF0SWNvbk1vZHVsZSwgTWF0UHJvZ3Jlc3NTcGlubmVyTW9kdWxlXSxcbiAgdGVtcGxhdGVVcmw6ICcuL25nc3NtLXRyZWUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9uZ3NzbS10cmVlLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIE5nc3NtVHJlZUNvbXBvbmVudCBleHRlbmRzIE5nU3NtQ29tcG9uZW50IHtcbiAgcHJpdmF0ZSByZWFkb25seSBfdHJlZUNvbmZpZyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE5nc3NtVHJlZUNvbmZpZyB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfZGlzcGxheWVkSXRlbXMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxOZ3NzbVRyZWVOb2RlW10+KFtdKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfc2VsZWN0ZWROb2RlSWQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmcgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XG5cbiAgcHJpdmF0ZSB0cmVlU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gfCB1bmRlZmluZWQ7XG5cbiAgcHVibGljIHJlYWRvbmx5IGRhdGFTdGF0dXMgPSBEYXRhU3RhdHVzO1xuXG4gIGNvbnN0cnVjdG9yKHN0b3JlOiBTdG9yZSkge1xuICAgIHN1cGVyKHN0b3JlKTtcbiAgfVxuXG4gIEBJbnB1dCgpIHNldCB0cmVlQ29uZmlnKHZhbHVlOiBOZ3NzbVRyZWVDb25maWcgfCB1bmRlZmluZWQgfCBudWxsKSB7XG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICB0aGlzLl90cmVlQ29uZmlnJC5uZXh0KHsgLi4udmFsdWUgfSk7XG5cbiAgICAgIHRoaXMudHJlZVN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICAgIHRoaXMudHJlZVN1YnNjcmlwdGlvbiA9IHRoaXMud2F0Y2goKHMpID0+IHNlbGVjdE5nc3NtVHJlZVN0YXRlKHMpLnRyZWVzW3ZhbHVlLnRyZWVJZF0pLnN1YnNjcmliZSgodHJlZTogTmdzc21UcmVlIHwgdW5kZWZpbmVkKSA9PiB7XG4gICAgICAgIGNvbnN0IGNvbmZpZyA9IHRoaXMuX3RyZWVDb25maWckLmdldFZhbHVlKCk7XG4gICAgICAgIGlmICghdHJlZSB8fCAhY29uZmlnKSB7XG4gICAgICAgICAgdGhpcy5fZGlzcGxheWVkSXRlbXMkLm5leHQoW10pO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGFsd2F5c1RydWUgPSAoXzogTm9kZURhdGEpID0+IHRydWU7XG4gICAgICAgIGNvbnN0IGZpbHRlcjogKG5vZGU6IE5vZGVEYXRhKSA9PiBib29sZWFuID0gY29uZmlnLmZpbHRlciA/PyBhbHdheXNUcnVlO1xuXG4gICAgICAgIGNvbnN0IGl0ZW1zOiBOZ3NzbVRyZWVOb2RlW10gPSBbXTtcbiAgICAgICAgbGV0IGhpZGRlbkxldmVsID0gLTE7XG4gICAgICAgIGNvbnN0IG5vZGVzVG9GaW5kU2VsZWN0ZWQgPSBuZXcgTWFwPHN0cmluZywgeyBpc0Rpc3BsYXllZDogYm9vbGVhbjsgbm9kZTogTmdzc21UcmVlTm9kZSB9PigpO1xuICAgICAgICAodHJlZS5ub2RlcyA/PyBbXSkuZm9yRWFjaCgodCkgPT4ge1xuICAgICAgICAgIGlmICh0Lm5vZGUuaXNFeHBhbmRhYmxlICYmIHQuaXNFeHBhbmRlZCA9PT0gZmFsc2UgJiYgaGlkZGVuTGV2ZWwgPT09IC0xKSB7XG4gICAgICAgICAgICBoaWRkZW5MZXZlbCA9IHQubGV2ZWw7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKGhpZGRlbkxldmVsID09PSAtMSB8fCB0LmxldmVsIDw9IGhpZGRlbkxldmVsKSB7XG4gICAgICAgICAgICBpZiAoZmlsdGVyKHQubm9kZSkpIHtcbiAgICAgICAgICAgICAgaXRlbXMucHVzaCh0KTtcbiAgICAgICAgICAgICAgbm9kZXNUb0ZpbmRTZWxlY3RlZC5zZXQodC5ub2RlLm5vZGVJZCwgeyBpc0Rpc3BsYXllZDogdHJ1ZSwgbm9kZTogdCB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAodC5ub2RlLmlzRXhwYW5kYWJsZSAmJiB0LmxldmVsIDw9IGhpZGRlbkxldmVsKSB7XG4gICAgICAgICAgICBoaWRkZW5MZXZlbCA9IHQuaXNFeHBhbmRlZCA9PT0gdHJ1ZSA/IC0xIDogdC5sZXZlbDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoIW5vZGVzVG9GaW5kU2VsZWN0ZWQuaGFzKHQubm9kZS5ub2RlSWQpKSB7XG4gICAgICAgICAgICBub2Rlc1RvRmluZFNlbGVjdGVkLnNldCh0Lm5vZGUubm9kZUlkLCB7IGlzRGlzcGxheWVkOiBmYWxzZSwgbm9kZTogdCB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuX2Rpc3BsYXllZEl0ZW1zJC5uZXh0KGl0ZW1zKTtcblxuICAgICAgICBsZXQgc2VsZWN0ZWROb2RlID0gdHJlZS5zZWxlY3RlZE5vZGU7XG4gICAgICAgIGlmICghc2VsZWN0ZWROb2RlKSB7XG4gICAgICAgICAgdGhpcy5fc2VsZWN0ZWROb2RlSWQkLm5leHQodW5kZWZpbmVkKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB3aGlsZSAoc2VsZWN0ZWROb2RlKSB7XG4gICAgICAgICAgICBjb25zdCBpdGVtID0gbm9kZXNUb0ZpbmRTZWxlY3RlZC5nZXQoc2VsZWN0ZWROb2RlKTtcbiAgICAgICAgICAgIGlmIChpdGVtPy5pc0Rpc3BsYXllZCAhPT0gdHJ1ZSkge1xuICAgICAgICAgICAgICBzZWxlY3RlZE5vZGUgPSBpdGVtPy5ub2RlLm5vZGUucGFyZW50Tm9kZUlkO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdGhpcy5fc2VsZWN0ZWROb2RlSWQkLm5leHQoc2VsZWN0ZWROb2RlKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldCB0cmVlQ29uZmlnJCgpOiBPYnNlcnZhYmxlPE5nc3NtVHJlZUNvbmZpZyB8IHVuZGVmaW5lZD4ge1xuICAgIHJldHVybiB0aGlzLl90cmVlQ29uZmlnJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZGlzcGxheWVkSXRlbXMkKCk6IE9ic2VydmFibGU8Tmdzc21UcmVlTm9kZVtdPiB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc3BsYXllZEl0ZW1zJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgc2VsZWN0ZWROb2RlSWQkKCk6IE9ic2VydmFibGU8c3RyaW5nIHwgdW5kZWZpbmVkPiB7XG4gICAgcmV0dXJuIHRoaXMuX3NlbGVjdGVkTm9kZUlkJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRJdGVtSWQoXzogbnVtYmVyLCBub2RlOiBOZ3NzbVRyZWVOb2RlKTogc3RyaW5nIHtcbiAgICByZXR1cm4gbm9kZS5ub2RlLm5vZGVJZDtcbiAgfVxuXG4gIHB1YmxpYyBleHBhbmQobm9kZTogTmdzc21UcmVlTm9kZSk6IHZvaWQge1xuICAgIGNvbnN0IHRyZWVJZCA9IHRoaXMuX3RyZWVDb25maWckLmdldFZhbHVlKCk/LnRyZWVJZDtcbiAgICBpZiAodHJlZUlkKSB7XG4gICAgICB0aGlzLmRpc3BhdGNoQWN0aW9uKG5ldyBFeHBhbmROb2RlQWN0aW9uKHRyZWVJZCwgbm9kZS5ub2RlLm5vZGVJZCkpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjb2xsYXBzZShub2RlOiBOZ3NzbVRyZWVOb2RlKTogdm9pZCB7XG4gICAgY29uc3QgdHJlZUlkID0gdGhpcy5fdHJlZUNvbmZpZyQuZ2V0VmFsdWUoKT8udHJlZUlkO1xuICAgIGlmICh0cmVlSWQpIHtcbiAgICAgIHRoaXMuZGlzcGF0Y2hBY3Rpb24obmV3IENvbGxhcHNlTm9kZUFjdGlvbih0cmVlSWQsIG5vZGUubm9kZS5ub2RlSWQpKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgc2VsZWN0Tm9kZShub2RlOiBOZ3NzbVRyZWVOb2RlKTogdm9pZCB7XG4gICAgY29uc3QgdHJlZUlkID0gdGhpcy5fdHJlZUNvbmZpZyQuZ2V0VmFsdWUoKT8udHJlZUlkO1xuICAgIGlmICh0cmVlSWQpIHtcbiAgICAgIHRoaXMuZGlzcGF0Y2hBY3Rpb24obmV3IFNlbGVjdE5vZGVBY3Rpb24odHJlZUlkLCBub2RlLm5vZGUubm9kZUlkKSk7XG4gICAgfVxuICB9XG59XG4iLCI8bWF0LWNhcmQgY2xhc3M9XCJmbGV4LWNvbHVtbi1zdHJldGNoIGZ4RmxleFwiPlxuICAgIDxtYXQtY2FyZC1jb250ZW50IGNsYXNzPVwiZmxleC1jb2x1bW4tc3RyZXRjaCBmeEZsZXhcIiAqbmdJZj1cIih0cmVlQ29uZmlnJCB8IGFzeW5jKSBhcyB0cmVlQ29uZmlnXCI+XG4gICAgICAgIDxjZGstdmlydHVhbC1zY3JvbGwtdmlld3BvcnQgaXRlbVNpemU9XCIzMFwiIGNsYXNzPVwiZnhGbGV4XCI+XG4gICAgICAgICAgICA8ZGl2ICpjZGtWaXJ0dWFsRm9yPVwibGV0IGl0ZW0gb2YgZGlzcGxheWVkSXRlbXMkIHwgYXN5bmM7IHRyYWNrQnk6IGdldEl0ZW1JZFwiIGNsYXNzPVwibmdzc20tdHJlZS1ub2RlXCJcbiAgICAgICAgICAgICAgICBbc3R5bGUucGFkZGluZy1sZWZ0LnB4XT1cIml0ZW0ubGV2ZWwgKiAyMFwiIChjbGljayk9XCJzZWxlY3ROb2RlKGl0ZW0pXCJcbiAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J3NlbGVjdGVkJyA6IChzZWxlY3RlZE5vZGVJZCQgfCBhc3luYykgPT09IGl0ZW0ubm9kZS5ub2RlSWR9XCI+XG4gICAgICAgICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwiZmEtc29saWQgZmEtY2hldnJvbi1yaWdodFwiICpuZ0lmPVwiaXRlbS5ub2RlLmlzRXhwYW5kYWJsZSAmJiBpdGVtLmlzRXhwYW5kZWQgPT09IGZhbHNlICYmIGl0ZW0uc3RhdHVzICE9PSBkYXRhU3RhdHVzLmxvYWRpbmdcIlxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO2V4cGFuZChpdGVtKTtcIj48L21hdC1pY29uPlxuICAgICAgICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cImZhLXNvbGlkIGZhLWNoZXZyb24tZG93blwiICpuZ0lmPVwiaXRlbS5ub2RlLmlzRXhwYW5kYWJsZSAmJiBpdGVtLmlzRXhwYW5kZWQgJiYgaXRlbS5zdGF0dXMgIT09IGRhdGFTdGF0dXMubG9hZGluZ1wiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7Y29sbGFwc2UoaXRlbSlcIj48L21hdC1pY29uPlxuICAgICAgICAgICAgICAgIDxtYXQtc3Bpbm5lciBkaWFtZXRlcj1cIjIwXCJcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJpdGVtLm5vZGUuaXNFeHBhbmRhYmxlICYmIGl0ZW0uc3RhdHVzID09PSBkYXRhU3RhdHVzLmxvYWRpbmdcIj48L21hdC1zcGlubmVyPlxuICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiIWl0ZW0ubm9kZS5pc0V4cGFuZGFibGVcIiBjbGFzcz1cIm5vdC1leHBhbmRhYmxlLXBhZGRpbmdcIj48L3NwYW4+XG5cbiAgICAgICAgICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJ7e3RyZWVDb25maWcuaWNvbkNsYXNzZXNbaXRlbS5ub2RlLnR5cGVdfX1cIiBjb2xvcj1cInByaW1hcnlcIj48L21hdC1pY29uPlxuXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJuZ3NzbS10cmVlLW5vZGUtbGFiZWxcIj5cbiAgICAgICAgICAgICAgICAgICAge3tpdGVtLm5vZGUubGFiZWx9fVxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Nkay12aXJ0dWFsLXNjcm9sbC12aWV3cG9ydD5cbiAgICA8L21hdC1jYXJkLWNvbnRlbnQ+XG48L21hdC1jYXJkPiJdfQ==
|
|
@@ -10,7 +10,7 @@ export class TreeNodeLoadingEffect {
|
|
|
10
10
|
constructor(dataServices, logger) {
|
|
11
11
|
this.dataServices = dataServices;
|
|
12
12
|
this.logger = logger;
|
|
13
|
-
this.processedActions = [NgssmTreeActionType.expandNode];
|
|
13
|
+
this.processedActions = [NgssmTreeActionType.expandNode, NgssmTreeActionType.selectNode];
|
|
14
14
|
}
|
|
15
15
|
processAction(store, state, action) {
|
|
16
16
|
const expandNodeAction = action;
|
|
@@ -52,4 +52,4 @@ export const treeNodeLoadingEffectProvider = {
|
|
|
52
52
|
useClass: TreeNodeLoadingEffect,
|
|
53
53
|
multi: true
|
|
54
54
|
};
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1ub2RlLWxvYWRpbmcuZWZmZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmdzc20tdHJlZS9zcmMvbGliL2VmZmVjdHMvdHJlZS1ub2RlLWxvYWRpbmcuZWZmZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBWSxNQUFNLGVBQWUsQ0FBQztBQUV2RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDL0MsT0FBTyxFQUFnQyxZQUFZLEVBQVUsTUFBTSxhQUFhLENBQUM7QUFFakYsT0FBTyxFQUFvQixtQkFBbUIsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUN4RixPQUFPLEVBQXdCLHVCQUF1QixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7O0FBR2hELE1BQU0sT0FBTyxxQkFBcUI7SUFHaEMsWUFBaUUsWUFBb0MsRUFBVSxNQUFjO1FBQTVELGlCQUFZLEdBQVosWUFBWSxDQUF3QjtRQUFVLFdBQU0sR0FBTixNQUFNLENBQVE7UUFGN0cscUJBQWdCLEdBQWEsQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLEVBQUUsbUJBQW1CLENBQUMsVUFBVSxDQUFDLENBQUM7SUFFa0IsQ0FBQztJQUUxSCxhQUFhLENBQUMsS0FBWSxFQUFFLEtBQVksRUFBRSxNQUFjO1FBQzdELE1BQU0sZ0JBQWdCLEdBQUcsTUFBMEIsQ0FBQztRQUNwRCxJQUFJLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQy9ELElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLHNEQUFzRCxnQkFBZ0IsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1lBQ3BHLE9BQU87U0FDUjtRQUVELE1BQU0sUUFBUSxHQUFHLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDakYsTUFBTSxXQUFXLEdBQUcsQ0FBQyxJQUFJLENBQUMsWUFBWSxJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsS0FBSyxRQUFRLENBQUMsQ0FBQztRQUNuRixJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ2hCLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLDJEQUEyRCxnQkFBZ0IsQ0FBQyxNQUFNLE1BQU0sUUFBUSxHQUFHLENBQUMsQ0FBQztZQUN2SCxPQUFPO1NBQ1I7UUFFRCxNQUFNLElBQUksR0FBRyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLEtBQUssZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDckksSUFBSSxJQUFJLEVBQUUsTUFBTSxLQUFLLFVBQVUsQ0FBQyxPQUFPLEVBQUU7WUFDdkMsT0FBTztTQUNSO1FBRUQsV0FBVyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUMsU0FBUyxDQUFDO1lBQzNFLElBQUksRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQ2QsS0FBSyxDQUFDLGNBQWMsQ0FBQyxJQUFJLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLGdCQUFnQixDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQztZQUMzSCxLQUFLLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRTtnQkFDZixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FDZiwyQ0FBMkMsZ0JBQWdCLENBQUMsTUFBTSxlQUFlLGdCQUFnQixDQUFDLE1BQU0sR0FBRyxFQUMzRyxLQUFLLENBQ04sQ0FBQztnQkFDRixLQUFLLENBQUMsY0FBYyxDQUFDLElBQUksbUJBQW1CLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztZQUNwSCxDQUFDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7a0hBbkNVLHFCQUFxQixrQkFHWix1QkFBdUI7c0hBSGhDLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQURqQyxVQUFVOzswQkFJSSxNQUFNOzJCQUFDLHVCQUF1Qjs7MEJBQUcsUUFBUTs7QUFtQ3hELE1BQU0sQ0FBQyxNQUFNLDZCQUE2QixHQUFhO0lBQ3JELE9BQU8sRUFBRSxZQUFZO0lBQ3JCLFFBQVEsRUFBRSxxQkFBcUI7SUFDL0IsS0FBSyxFQUFFLElBQUk7Q0FDWixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBPcHRpb25hbCwgUHJvdmlkZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgRGF0YVN0YXR1cyB9IGZyb20gJ25nc3NtLXJlbW90ZS1kYXRhJztcbmltcG9ydCB7IEVmZmVjdCwgU3RvcmUsIFN0YXRlLCBBY3Rpb24sIE5HU1NNX0VGRkVDVCwgTG9nZ2VyIH0gZnJvbSAnbmdzc20tc3RvcmUnO1xuXG5pbXBvcnQgeyBFeHBhbmROb2RlQWN0aW9uLCBOZ3NzbVRyZWVBY3Rpb25UeXBlLCBSZWdpc3Rlck5vZGVzQWN0aW9uIH0gZnJvbSAnLi4vYWN0aW9ucyc7XG5pbXBvcnQgeyBOZ3NzbVRyZWVEYXRhU2VydmljZSwgTkdTU01fVFJFRV9EQVRBX1NFUlZJQ0UgfSBmcm9tICcuLi9tb2RlbCc7XG5pbXBvcnQgeyBzZWxlY3ROZ3NzbVRyZWVTdGF0ZSB9IGZyb20gJy4uL3N0YXRlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFRyZWVOb2RlTG9hZGluZ0VmZmVjdCBpbXBsZW1lbnRzIEVmZmVjdCB7XG4gIHB1YmxpYyByZWFkb25seSBwcm9jZXNzZWRBY3Rpb25zOiBzdHJpbmdbXSA9IFtOZ3NzbVRyZWVBY3Rpb25UeXBlLmV4cGFuZE5vZGUsIE5nc3NtVHJlZUFjdGlvblR5cGUuc2VsZWN0Tm9kZV07XG5cbiAgY29uc3RydWN0b3IoQEluamVjdChOR1NTTV9UUkVFX0RBVEFfU0VSVklDRSkgQE9wdGlvbmFsKCkgcHJpdmF0ZSBkYXRhU2VydmljZXM6IE5nc3NtVHJlZURhdGFTZXJ2aWNlW10sIHByaXZhdGUgbG9nZ2VyOiBMb2dnZXIpIHt9XG5cbiAgcHVibGljIHByb2Nlc3NBY3Rpb24oc3RvcmU6IFN0b3JlLCBzdGF0ZTogU3RhdGUsIGFjdGlvbjogQWN0aW9uKTogdm9pZCB7XG4gICAgY29uc3QgZXhwYW5kTm9kZUFjdGlvbiA9IGFjdGlvbiBhcyBFeHBhbmROb2RlQWN0aW9uO1xuICAgIGlmICghc2VsZWN0Tmdzc21UcmVlU3RhdGUoc3RhdGUpLnRyZWVzW2V4cGFuZE5vZGVBY3Rpb24udHJlZUlkXSkge1xuICAgICAgdGhpcy5sb2dnZXIuZXJyb3IoYFRyeWluZyB0byBwcm9jZXNzIGFjdGlvbiBmb3IgdHJlZSBub3QgaW5pdGlhbGl6ZWQ6ICR7ZXhwYW5kTm9kZUFjdGlvbi50cmVlSWR9LmApO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHRyZWVUeXBlID0gc2VsZWN0Tmdzc21UcmVlU3RhdGUoc3RhdGUpLnRyZWVzW2V4cGFuZE5vZGVBY3Rpb24udHJlZUlkXS50eXBlO1xuICAgIGNvbnN0IGRhdGFTZXJ2aWNlID0gKHRoaXMuZGF0YVNlcnZpY2VzID8/IFtdKS5maW5kKChkKSA9PiBkLnRyZWVUeXBlID09PSB0cmVlVHlwZSk7XG4gICAgaWYgKCFkYXRhU2VydmljZSkge1xuICAgICAgdGhpcy5sb2dnZXIuZXJyb3IoYFRyeWluZyB0byBwcm9jZXNzIGFjdGlvbiBmb3IgdHJlZSB3aXRoIG5vIGRhdGEgc2VydmljZTogJHtleHBhbmROb2RlQWN0aW9uLnRyZWVJZH0gLyAke3RyZWVUeXBlfS5gKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBub2RlID0gc2VsZWN0Tmdzc21UcmVlU3RhdGUoc3RhdGUpLnRyZWVzW2V4cGFuZE5vZGVBY3Rpb24udHJlZUlkXS5ub2Rlcy5maW5kKChuKSA9PiBuLm5vZGUubm9kZUlkID09PSBleHBhbmROb2RlQWN0aW9uLm5vZGVJZCk7XG4gICAgaWYgKG5vZGU/LnN0YXR1cyAhPT0gRGF0YVN0YXR1cy5sb2FkaW5nKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgZGF0YVNlcnZpY2UubG9hZChleHBhbmROb2RlQWN0aW9uLnRyZWVJZCwgZXhwYW5kTm9kZUFjdGlvbi5ub2RlSWQpLnN1YnNjcmliZSh7XG4gICAgICBuZXh0OiAodmFsdWUpID0+XG4gICAgICAgIHN0b3JlLmRpc3BhdGNoQWN0aW9uKG5ldyBSZWdpc3Rlck5vZGVzQWN0aW9uKERhdGFTdGF0dXMubG9hZGVkLCBleHBhbmROb2RlQWN0aW9uLnRyZWVJZCwgZXhwYW5kTm9kZUFjdGlvbi5ub2RlSWQsIHZhbHVlKSksXG4gICAgICBlcnJvcjogKGVycm9yKSA9PiB7XG4gICAgICAgIHRoaXMubG9nZ2VyLmVycm9yKFxuICAgICAgICAgIGBVbmFibGUgdG8gbG9hZCBjaGlsZHJlbiBub2RlcyBmb3IgdHJlZSAnJHtleHBhbmROb2RlQWN0aW9uLnRyZWVJZH0nIGFuZCBub2RlICcke2V4cGFuZE5vZGVBY3Rpb24ubm9kZUlkfSdgLFxuICAgICAgICAgIGVycm9yXG4gICAgICAgICk7XG4gICAgICAgIHN0b3JlLmRpc3BhdGNoQWN0aW9uKG5ldyBSZWdpc3Rlck5vZGVzQWN0aW9uKERhdGFTdGF0dXMuZXJyb3IsIGV4cGFuZE5vZGVBY3Rpb24udHJlZUlkLCBleHBhbmROb2RlQWN0aW9uLm5vZGVJZCkpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCB0cmVlTm9kZUxvYWRpbmdFZmZlY3RQcm92aWRlcjogUHJvdmlkZXIgPSB7XG4gIHByb3ZpZGU6IE5HU1NNX0VGRkVDVCxcbiAgdXNlQ2xhc3M6IFRyZWVOb2RlTG9hZGluZ0VmZmVjdCxcbiAgbXVsdGk6IHRydWVcbn07XG4iXX0=
|
|
@@ -2,4 +2,5 @@ export * from './provide-ngssm-tree';
|
|
|
2
2
|
export * from './model';
|
|
3
3
|
export * from './components';
|
|
4
4
|
export * from './actions';
|
|
5
|
-
|
|
5
|
+
export * from './state';
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25nc3NtLXRyZWUvc3JjL2xpYi9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3Byb3ZpZGUtbmdzc20tdHJlZSc7XG5leHBvcnQgKiBmcm9tICcuL21vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vY29tcG9uZW50cyc7XG5leHBvcnQgKiBmcm9tICcuL2FjdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9zdGF0ZSc7XG4iXX0=
|
|
@@ -3,11 +3,15 @@ import update from 'immutability-helper';
|
|
|
3
3
|
import { DataStatus } from 'ngssm-remote-data';
|
|
4
4
|
import { NGSSM_REDUCER } from 'ngssm-store';
|
|
5
5
|
import { NgssmTreeActionType } from '../actions';
|
|
6
|
-
import { updateNgssmTreeState } from '../state';
|
|
6
|
+
import { selectNgssmTreeState, updateNgssmTreeState } from '../state';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
8
|
export class TreeNodeExpandReducer {
|
|
9
9
|
constructor() {
|
|
10
|
-
this.processedActions = [
|
|
10
|
+
this.processedActions = [
|
|
11
|
+
NgssmTreeActionType.expandNode,
|
|
12
|
+
NgssmTreeActionType.collapseNode,
|
|
13
|
+
NgssmTreeActionType.selectNode
|
|
14
|
+
];
|
|
11
15
|
}
|
|
12
16
|
updateState(state, action) {
|
|
13
17
|
switch (action.type) {
|
|
@@ -29,7 +33,7 @@ export class TreeNodeExpandReducer {
|
|
|
29
33
|
}
|
|
30
34
|
else {
|
|
31
35
|
item = update(result[index], {
|
|
32
|
-
isExpanded: { $set:
|
|
36
|
+
isExpanded: { $set: true },
|
|
33
37
|
status: { $set: DataStatus.loading }
|
|
34
38
|
});
|
|
35
39
|
}
|
|
@@ -64,6 +68,32 @@ export class TreeNodeExpandReducer {
|
|
|
64
68
|
}
|
|
65
69
|
});
|
|
66
70
|
}
|
|
71
|
+
case NgssmTreeActionType.selectNode: {
|
|
72
|
+
const selectNodeAction = action;
|
|
73
|
+
if (selectNgssmTreeState(state).trees[selectNodeAction.treeId].nodes.find((n) => n.node.nodeId === selectNodeAction.nodeId)
|
|
74
|
+
?.status === DataStatus.loaded) {
|
|
75
|
+
break;
|
|
76
|
+
}
|
|
77
|
+
return updateNgssmTreeState(state, {
|
|
78
|
+
trees: {
|
|
79
|
+
[selectNodeAction.treeId]: {
|
|
80
|
+
nodes: {
|
|
81
|
+
$apply: (nodes) => {
|
|
82
|
+
const result = [...nodes];
|
|
83
|
+
const index = result.findIndex((n) => n.node.nodeId === selectNodeAction.nodeId);
|
|
84
|
+
if (index !== -1) {
|
|
85
|
+
const item = update(result[index], {
|
|
86
|
+
status: { $set: DataStatus.loading }
|
|
87
|
+
});
|
|
88
|
+
result.splice(index, 1, item);
|
|
89
|
+
}
|
|
90
|
+
return result;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
});
|
|
96
|
+
}
|
|
67
97
|
}
|
|
68
98
|
return state;
|
|
69
99
|
}
|
|
@@ -78,4 +108,4 @@ export const treeNodeExpandReducerProvider = {
|
|
|
78
108
|
useClass: TreeNodeExpandReducer,
|
|
79
109
|
multi: true
|
|
80
110
|
};
|
|
81
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
111
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1ub2RlLWV4cGFuZC5yZWR1Y2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmdzc20tdHJlZS9zcmMvbGliL3JlZHVjZXJzL3RyZWUtbm9kZS1leHBhbmQucmVkdWNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBRXJELE9BQU8sTUFBTSxNQUFNLHFCQUFxQixDQUFDO0FBRXpDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMvQyxPQUFPLEVBQTBCLGFBQWEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUVwRSxPQUFPLEVBQXdDLG1CQUFtQixFQUFvQixNQUFNLFlBQVksQ0FBQztBQUV6RyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxVQUFVLENBQUM7O0FBR3RFLE1BQU0sT0FBTyxxQkFBcUI7SUFEbEM7UUFFa0IscUJBQWdCLEdBQWE7WUFDM0MsbUJBQW1CLENBQUMsVUFBVTtZQUM5QixtQkFBbUIsQ0FBQyxZQUFZO1lBQ2hDLG1CQUFtQixDQUFDLFVBQVU7U0FDL0IsQ0FBQztLQWlHSDtJQS9GUSxXQUFXLENBQUMsS0FBWSxFQUFFLE1BQWM7UUFDN0MsUUFBUSxNQUFNLENBQUMsSUFBSSxFQUFFO1lBQ25CLEtBQUssbUJBQW1CLENBQUMsVUFBVSxDQUFDLENBQUM7Z0JBQ25DLE1BQU0sZ0JBQWdCLEdBQUcsTUFBMEIsQ0FBQztnQkFDcEQsT0FBTyxvQkFBb0IsQ0FBQyxLQUFLLEVBQUU7b0JBQ2pDLEtBQUssRUFBRTt3QkFDTCxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxFQUFFOzRCQUN6QixLQUFLLEVBQUU7Z0NBQ0wsTUFBTSxFQUFFLENBQUMsS0FBc0IsRUFBRSxFQUFFO29DQUNqQyxNQUFNLE1BQU0sR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUM7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LEtBQXNCLEVBQUUsRUFBRTtvQ0FDakMsTUFBTSxNQUFNLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQyxDQUFDO29DQUMxQixNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sS0FBSyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztvQ0FDakYsSUFBSSxLQUFLLEtBQUssQ0FBQyxDQUFDLEVBQUU7d0NBQ2hCLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUU7NENBQ2pDLE1BQU0sRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLENBQUMsT0FBTyxFQUFFO3lDQUNyQyxDQUFDLENBQUM7d0NBRUgsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO3FDQUMvQjtvQ0FFRCxPQUFPLE1BQU0sQ0FBQztnQ0FDaEIsQ0FBQzs2QkFDRjt5QkFDRjtxQkFDRjtpQkFDRixDQUFDLENBQUM7YUFDSjtTQUNGO1FBRUQsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDOztrSEFyR1UscUJBQXFCO3NIQUFyQixxQkFBcUI7MkZBQXJCLHFCQUFxQjtrQkFEakMsVUFBVTs7QUF5R1gsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQWE7SUFDckQsT0FBTyxFQUFFLGFBQWE7SUFDdEIsUUFBUSxFQUFFLHFCQUFxQjtJQUMvQixLQUFLLEVBQUUsSUFBSTtDQUNaLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBQcm92aWRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgdXBkYXRlIGZyb20gJ2ltbXV0YWJpbGl0eS1oZWxwZXInO1xuXG5pbXBvcnQgeyBEYXRhU3RhdHVzIH0gZnJvbSAnbmdzc20tcmVtb3RlLWRhdGEnO1xuaW1wb3J0IHsgUmVkdWNlciwgU3RhdGUsIEFjdGlvbiwgTkdTU01fUkVEVUNFUiB9IGZyb20gJ25nc3NtLXN0b3JlJztcblxuaW1wb3J0IHsgQ29sbGFwc2VOb2RlQWN0aW9uLCBFeHBhbmROb2RlQWN0aW9uLCBOZ3NzbVRyZWVBY3Rpb25UeXBlLCBTZWxlY3ROb2RlQWN0aW9uIH0gZnJvbSAnLi4vYWN0aW9ucyc7XG5pbXBvcnQgeyBOZ3NzbVRyZWVOb2RlIH0gZnJvbSAnLi4vbW9kZWwnO1xuaW1wb3J0IHsgc2VsZWN0Tmdzc21UcmVlU3RhdGUsIHVwZGF0ZU5nc3NtVHJlZVN0YXRlIH0gZnJvbSAnLi4vc3RhdGUnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVHJlZU5vZGVFeHBhbmRSZWR1Y2VyIGltcGxlbWVudHMgUmVkdWNlciB7XG4gIHB1YmxpYyByZWFkb25seSBwcm9jZXNzZWRBY3Rpb25zOiBzdHJpbmdbXSA9IFtcbiAgICBOZ3NzbVRyZWVBY3Rpb25UeXBlLmV4cGFuZE5vZGUsXG4gICAgTmdzc21UcmVlQWN0aW9uVHlwZS5jb2xsYXBzZU5vZGUsXG4gICAgTmdzc21UcmVlQWN0aW9uVHlwZS5zZWxlY3ROb2RlXG4gIF07XG5cbiAgcHVibGljIHVwZGF0ZVN0YXRlKHN0YXRlOiBTdGF0ZSwgYWN0aW9uOiBBY3Rpb24pOiBTdGF0ZSB7XG4gICAgc3dpdGNoIChhY3Rpb24udHlwZSkge1xuICAgICAgY2FzZSBOZ3NzbVRyZWVBY3Rpb25UeXBlLmV4cGFuZE5vZGU6IHtcbiAgICAgICAgY29uc3QgZXhwYW5kTm9kZUFjdGlvbiA9IGFjdGlvbiBhcyBFeHBhbmROb2RlQWN0aW9uO1xuICAgICAgICByZXR1cm4gdXBkYXRlTmdzc21UcmVlU3RhdGUoc3RhdGUsIHtcbiAgICAgICAgICB0cmVlczoge1xuICAgICAgICAgICAgW2V4cGFuZE5vZGVBY3Rpb24udHJlZUlkXToge1xuICAgICAgICAgICAgICBub2Rlczoge1xuICAgICAgICAgICAgICAgICRhcHBseTogKG5vZGVzOiBOZ3NzbVRyZWVOb2RlW10pID0+IHtcbiAgICAgICAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IFsuLi5ub2Rlc107XG4gICAgICAgICAgICAgICAgICBjb25zdCBpbmRleCA9IHJlc3VsdC5maW5kSW5kZXgoKG4pID0+IG4ubm9kZS5ub2RlSWQgPT09IGV4cGFuZE5vZGVBY3Rpb24ubm9kZUlkKTtcbiAgICAgICAgICAgICAgICAgIGlmIChpbmRleCAhPT0gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgbGV0IGl0ZW0gPSByZXN1bHRbaW5kZXhdO1xuICAgICAgICAgICAgICAgICAgICBpZiAoaXRlbS5zdGF0dXMgPT09IERhdGFTdGF0dXMubG9hZGVkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgaXRlbSA9IHVwZGF0ZShyZXN1bHRbaW5kZXhdLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpc0V4cGFuZGVkOiB7ICRzZXQ6IHRydWUgfVxuICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgIGl0ZW0gPSB1cGRhdGUocmVzdWx0W2luZGV4XSwge1xuICAgICAgICAgICAgICAgICAgICAgICAgaXNFeHBhbmRlZDogeyAkc2V0OiB0cnVlIH0sXG4gICAgICAgICAgICAgICAgICAgICAgICBzdGF0dXM6IHsgJHNldDogRGF0YVN0YXR1cy5sb2FkaW5nIH1cbiAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHJlc3VsdC5zcGxpY2UoaW5kZXgsIDEsIGl0ZW0pO1xuICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAgIGNhc2UgTmdzc21UcmVlQWN0aW9uVHlwZS5jb2xsYXBzZU5vZGU6IHtcbiAgICAgICAgY29uc3QgY29sbGFwc2VOb2RlQWN0aW9uID0gYWN0aW9uIGFzIENvbGxhcHNlTm9kZUFjdGlvbjtcbiAgICAgICAgcmV0dXJuIHVwZGF0ZU5nc3NtVHJlZVN0YXRlKHN0YXRlLCB7XG4gICAgICAgICAgdHJlZXM6IHtcbiAgICAgICAgICAgIFtjb2xsYXBzZU5vZGVBY3Rpb24udHJlZUlkXToge1xuICAgICAgICAgICAgICBub2Rlczoge1xuICAgICAgICAgICAgICAgICRhcHBseTogKG5vZGVzOiBOZ3NzbVRyZWVOb2RlW10pID0+IHtcbiAgICAgICAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IFsuLi5ub2Rlc107XG4gICAgICAgICAgICAgICAgICBjb25zdCBpbmRleCA9IHJlc3VsdC5maW5kSW5kZXgoKG4pID0+IG4ubm9kZS5ub2RlSWQgPT09IGNvbGxhcHNlTm9kZUFjdGlvbi5ub2RlSWQpO1xuICAgICAgICAgICAgICAgICAgaWYgKGluZGV4ICE9PSAtMSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBpdGVtID0gdXBkYXRlKHJlc3VsdFtpbmRleF0sIHtcbiAgICAgICAgICAgICAgICAgICAgICBpc0V4cGFuZGVkOiB7ICRzZXQ6IGZhbHNlIH1cbiAgICAgICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0LnNwbGljZShpbmRleCwgMSwgaXRlbSk7XG4gICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgY2FzZSBOZ3NzbVRyZWVBY3Rpb25UeXBlLnNlbGVjdE5vZGU6IHtcbiAgICAgICAgY29uc3Qgc2VsZWN0Tm9kZUFjdGlvbiA9IGFjdGlvbiBhcyBTZWxlY3ROb2RlQWN0aW9uO1xuICAgICAgICBpZiAoXG4gICAgICAgICAgc2VsZWN0Tmdzc21UcmVlU3RhdGUoc3RhdGUpLnRyZWVzW3NlbGVjdE5vZGVBY3Rpb24udHJlZUlkXS5ub2Rlcy5maW5kKChuKSA9PiBuLm5vZGUubm9kZUlkID09PSBzZWxlY3ROb2RlQWN0aW9uLm5vZGVJZClcbiAgICAgICAgICAgID8uc3RhdHVzID09PSBEYXRhU3RhdHVzLmxvYWRlZFxuICAgICAgICApIHtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB1cGRhdGVOZ3NzbVRyZWVTdGF0ZShzdGF0ZSwge1xuICAgICAgICAgIHRyZWVzOiB7XG4gICAgICAgICAgICBbc2VsZWN0Tm9kZUFjdGlvbi50cmVlSWRdOiB7XG4gICAgICAgICAgICAgIG5vZGVzOiB7XG4gICAgICAgICAgICAgICAgJGFwcGx5OiAobm9kZXM6IE5nc3NtVHJlZU5vZGVbXSkgPT4ge1xuICAgICAgICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gWy4uLm5vZGVzXTtcbiAgICAgICAgICAgICAgICAgIGNvbnN0IGluZGV4ID0gcmVzdWx0LmZpbmRJbmRleCgobikgPT4gbi5ub2RlLm5vZGVJZCA9PT0gc2VsZWN0Tm9kZUFjdGlvbi5ub2RlSWQpO1xuICAgICAgICAgICAgICAgICAgaWYgKGluZGV4ICE9PSAtMSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBpdGVtID0gdXBkYXRlKHJlc3VsdFtpbmRleF0sIHtcbiAgICAgICAgICAgICAgICAgICAgICBzdGF0dXM6IHsgJHNldDogRGF0YVN0YXR1cy5sb2FkaW5nIH1cbiAgICAgICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICAgICAgcmVzdWx0LnNwbGljZShpbmRleCwgMSwgaXRlbSk7XG4gICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gc3RhdGU7XG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IHRyZWVOb2RlRXhwYW5kUmVkdWNlclByb3ZpZGVyOiBQcm92aWRlciA9IHtcbiAgcHJvdmlkZTogTkdTU01fUkVEVUNFUixcbiAgdXNlQ2xhc3M6IFRyZWVOb2RlRXhwYW5kUmVkdWNlcixcbiAgbXVsdGk6IHRydWVcbn07XG4iXX0=
|
|
@@ -24,7 +24,7 @@ export class TreeNodesReducer {
|
|
|
24
24
|
}
|
|
25
25
|
return [
|
|
26
26
|
...nodes.slice(0, index),
|
|
27
|
-
update(nodes[index], { status: { $set: registerNodesAction.dataStatus }
|
|
27
|
+
update(nodes[index], { status: { $set: registerNodesAction.dataStatus } }),
|
|
28
28
|
...registerNodesAction.nodes.map((i) => ({
|
|
29
29
|
status: DataStatus.none,
|
|
30
30
|
isExpanded: false,
|
|
@@ -53,4 +53,4 @@ export const treeNodesReducerProvider = {
|
|
|
53
53
|
useClass: TreeNodesReducer,
|
|
54
54
|
multi: true
|
|
55
55
|
};
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1ub2Rlcy5yZWR1Y2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmdzc20tdHJlZS9zcmMvbGliL3JlZHVjZXJzL3RyZWUtbm9kZXMucmVkdWNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBRXJELE9BQU8sTUFBTSxNQUFNLHFCQUFxQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUUvQyxPQUFPLEVBQTBCLGFBQWEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUVwRSxPQUFPLEVBQUUsbUJBQW1CLEVBQXVCLE1BQU0sWUFBWSxDQUFDO0FBRXRFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7QUFHaEQsTUFBTSxPQUFPLGdCQUFnQjtJQUQ3QjtRQUVrQixxQkFBZ0IsR0FBYSxDQUFDLG1CQUFtQixDQUFDLGFBQWEsQ0FBQyxDQUFDO0tBcUNsRjtJQW5DUSxXQUFXLENBQUMsS0FBWSxFQUFFLE1BQWM7UUFDN0MsUUFBUSxNQUFNLENBQUMsSUFBSSxFQUFFO1lBQ25CLEtBQUssbUJBQW1CLENBQUMsYUFBYSxDQUFDLENBQUM7Z0JBQ3RDLE1BQU0sbUJBQW1CLEdBQUcsTUFBNkIsQ0FBQztnQkFDMUQsT0FBTyxvQkFBb0IsQ0FBQyxLQUFLLEVBQUU7b0JBQ2pDLEtBQUssRUFBRTt3QkFDTCxDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxFQUFFOzRCQUM1QixLQUFLLEVBQUU7Z0NBQ0wsTUFBTSxFQUFFLENBQUMsS0FBc0IsRUFBRSxFQUFFO29DQUNqQyxNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sS0FBSyxtQkFBbUIsQ0FBQyxZQUFZLENBQUMsQ0FBQztvQ0FDekYsSUFBSSxLQUFLLEtBQUssQ0FBQyxDQUFDLEVBQUU7d0NBQ2hCLE9BQU8sS0FBSyxDQUFDO3FDQUNkO29DQUVELE9BQU87d0NBQ0wsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUM7d0NBQ3hCLE1BQU0sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUUsRUFBRSxNQUFNLEVBQUUsRUFBRSxJQUFJLEVBQUUsbUJBQW1CLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQzt3Q0FDMUUsR0FBRyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDOzRDQUN2QyxNQUFNLEVBQUUsVUFBVSxDQUFDLElBQUk7NENBQ3ZCLFVBQVUsRUFBRSxLQUFLOzRDQUNqQixLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUFDOzRDQUM3QixJQUFJLEVBQUUsQ0FBQzt5Q0FDUixDQUFDLENBQUM7d0NBQ0gsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7cUNBQzFCLENBQUM7Z0NBQ0osQ0FBQzs2QkFDRjt5QkFDRjtxQkFDRjtpQkFDRixDQUFDLENBQUM7YUFDSjtTQUNGO1FBRUQsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDOzs2R0FyQ1UsZ0JBQWdCO2lIQUFoQixnQkFBZ0I7MkZBQWhCLGdCQUFnQjtrQkFENUIsVUFBVTs7QUF5Q1gsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQWE7SUFDaEQsT0FBTyxFQUFFLGFBQWE7SUFDdEIsUUFBUSxFQUFFLGdCQUFnQjtJQUMxQixLQUFLLEVBQUUsSUFBSTtDQUNaLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBQcm92aWRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgdXBkYXRlIGZyb20gJ2ltbXV0YWJpbGl0eS1oZWxwZXInO1xuaW1wb3J0IHsgRGF0YVN0YXR1cyB9IGZyb20gJ25nc3NtLXJlbW90ZS1kYXRhJztcblxuaW1wb3J0IHsgUmVkdWNlciwgU3RhdGUsIEFjdGlvbiwgTkdTU01fUkVEVUNFUiB9IGZyb20gJ25nc3NtLXN0b3JlJztcblxuaW1wb3J0IHsgTmdzc21UcmVlQWN0aW9uVHlwZSwgUmVnaXN0ZXJOb2Rlc0FjdGlvbiB9IGZyb20gJy4uL2FjdGlvbnMnO1xuaW1wb3J0IHsgTmdzc21UcmVlTm9kZSB9IGZyb20gJy4uL21vZGVsJztcbmltcG9ydCB7IHVwZGF0ZU5nc3NtVHJlZVN0YXRlIH0gZnJvbSAnLi4vc3RhdGUnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgVHJlZU5vZGVzUmVkdWNlciBpbXBsZW1lbnRzIFJlZHVjZXIge1xuICBwdWJsaWMgcmVhZG9ubHkgcHJvY2Vzc2VkQWN0aW9uczogc3RyaW5nW10gPSBbTmdzc21UcmVlQWN0aW9uVHlwZS5yZWdpc3Rlck5vZGVzXTtcblxuICBwdWJsaWMgdXBkYXRlU3RhdGUoc3RhdGU6IFN0YXRlLCBhY3Rpb246IEFjdGlvbik6IFN0YXRlIHtcbiAgICBzd2l0Y2ggKGFjdGlvbi50eXBlKSB7XG4gICAgICBjYXNlIE5nc3NtVHJlZUFjdGlvblR5cGUucmVnaXN0ZXJOb2Rlczoge1xuICAgICAgICBjb25zdCByZWdpc3Rlck5vZGVzQWN0aW9uID0gYWN0aW9uIGFzIFJlZ2lzdGVyTm9kZXNBY3Rpb247XG4gICAgICAgIHJldHVybiB1cGRhdGVOZ3NzbVRyZWVTdGF0ZShzdGF0ZSwge1xuICAgICAgICAgIHRyZWVzOiB7XG4gICAgICAgICAgICBbcmVnaXN0ZXJOb2Rlc0FjdGlvbi50cmVlSWRdOiB7XG4gICAgICAgICAgICAgIG5vZGVzOiB7XG4gICAgICAgICAgICAgICAgJGFwcGx5OiAobm9kZXM6IE5nc3NtVHJlZU5vZGVbXSkgPT4ge1xuICAgICAgICAgICAgICAgICAgY29uc3QgaW5kZXggPSBub2Rlcy5maW5kSW5kZXgoKG4pID0+IG4ubm9kZS5ub2RlSWQgPT09IHJlZ2lzdGVyTm9kZXNBY3Rpb24ucGFyZW50Tm9kZUlkKTtcbiAgICAgICAgICAgICAgICAgIGlmIChpbmRleCA9PT0gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG5vZGVzO1xuICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgICAgICAgICAuLi5ub2Rlcy5zbGljZSgwLCBpbmRleCksXG4gICAgICAgICAgICAgICAgICAgIHVwZGF0ZShub2Rlc1tpbmRleF0sIHsgc3RhdHVzOiB7ICRzZXQ6IHJlZ2lzdGVyTm9kZXNBY3Rpb24uZGF0YVN0YXR1cyB9IH0pLFxuICAgICAgICAgICAgICAgICAgICAuLi5yZWdpc3Rlck5vZGVzQWN0aW9uLm5vZGVzLm1hcCgoaSkgPT4gKHtcbiAgICAgICAgICAgICAgICAgICAgICBzdGF0dXM6IERhdGFTdGF0dXMubm9uZSxcbiAgICAgICAgICAgICAgICAgICAgICBpc0V4cGFuZGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgICAgICBsZXZlbDogbm9kZXNbaW5kZXhdLmxldmVsICsgMSxcbiAgICAgICAgICAgICAgICAgICAgICBub2RlOiBpXG4gICAgICAgICAgICAgICAgICAgIH0pKSxcbiAgICAgICAgICAgICAgICAgICAgLi4ubm9kZXMuc2xpY2UoaW5kZXggKyAxKVxuICAgICAgICAgICAgICAgICAgXTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBzdGF0ZTtcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgdHJlZU5vZGVzUmVkdWNlclByb3ZpZGVyOiBQcm92aWRlciA9IHtcbiAgcHJvdmlkZTogTkdTU01fUkVEVUNFUixcbiAgdXNlQ2xhc3M6IFRyZWVOb2Rlc1JlZHVjZXIsXG4gIG11bHRpOiB0cnVlXG59O1xuIl19
|
|
@@ -6,7 +6,7 @@ import { updateNgssmTreeState } from '../state';
|
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
export class TreesReducer {
|
|
8
8
|
constructor() {
|
|
9
|
-
this.processedActions = [NgssmTreeActionType.initNgssmTree];
|
|
9
|
+
this.processedActions = [NgssmTreeActionType.initNgssmTree, NgssmTreeActionType.deleteNgssmTree];
|
|
10
10
|
}
|
|
11
11
|
updateState(state, action) {
|
|
12
12
|
switch (action.type) {
|
|
@@ -30,6 +30,12 @@ export class TreesReducer {
|
|
|
30
30
|
}
|
|
31
31
|
});
|
|
32
32
|
}
|
|
33
|
+
case NgssmTreeActionType.deleteNgssmTree: {
|
|
34
|
+
const deleteNgssmTreeAction = action;
|
|
35
|
+
return updateNgssmTreeState(state, {
|
|
36
|
+
trees: { $unset: [deleteNgssmTreeAction.treeId] }
|
|
37
|
+
});
|
|
38
|
+
}
|
|
33
39
|
}
|
|
34
40
|
return state;
|
|
35
41
|
}
|
|
@@ -44,4 +50,4 @@ export const treesReducerProvider = {
|
|
|
44
50
|
useClass: TreesReducer,
|
|
45
51
|
multi: true
|
|
46
52
|
};
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZXMucmVkdWNlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nc3NtLXRyZWUvc3JjL2xpYi9yZWR1Y2Vycy90cmVlcy5yZWR1Y2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQVksTUFBTSxlQUFlLENBQUM7QUFDckQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRS9DLE9BQU8sRUFBMEIsYUFBYSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRXBFLE9BQU8sRUFBOEMsbUJBQW1CLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDN0YsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sVUFBVSxDQUFDOztBQUdoRCxNQUFNLE9BQU8sWUFBWTtJQUR6QjtRQUVrQixxQkFBZ0IsR0FBYSxDQUFDLG1CQUFtQixDQUFDLGFBQWEsRUFBRSxtQkFBbUIsQ0FBQyxlQUFlLENBQUMsQ0FBQztLQW1Ddkg7SUFqQ1EsV0FBVyxDQUFDLEtBQVksRUFBRSxNQUFjO1FBQzdDLFFBQVEsTUFBTSxDQUFDLElBQUksRUFBRTtZQUNuQixLQUFLLG1CQUFtQixDQUFDLGFBQWEsQ0FBQyxDQUFDO2dCQUN0QyxNQUFNLG1CQUFtQixHQUFHLE1BQTZCLENBQUM7Z0JBQzFELE9BQU8sb0JBQW9CLENBQUMsS0FBSyxFQUFFO29CQUNqQyxLQUFLLEVBQUU7d0JBQ0wsQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsRUFBRTs0QkFDNUIsSUFBSSxFQUFFO2dDQUNKLEtBQUssRUFBRTtvQ0FDTDt3Q0FDRSxNQUFNLEVBQUUsVUFBVSxDQUFDLElBQUk7d0NBQ3ZCLFVBQVUsRUFBRSxLQUFLO3dDQUNqQixLQUFLLEVBQUUsQ0FBQzt3Q0FDUixJQUFJLEVBQUUsbUJBQW1CLENBQUMsSUFBSTtxQ0FDL0I7aUNBQ0Y7Z0NBQ0QsSUFBSSxFQUFFLG1CQUFtQixDQUFDLFFBQVE7NkJBQ25DO3lCQUNGO3FCQUNGO2lCQUNGLENBQUMsQ0FBQzthQUNKO1lBRUQsS0FBSyxtQkFBbUIsQ0FBQyxlQUFlLENBQUMsQ0FBQztnQkFDeEMsTUFBTSxxQkFBcUIsR0FBRyxNQUErQixDQUFDO2dCQUM5RCxPQUFPLG9CQUFvQixDQUFDLEtBQUssRUFBRTtvQkFDakMsS0FBSyxFQUFFLEVBQUUsTUFBTSxFQUFFLENBQUMscUJBQXFCLENBQUMsTUFBTSxDQUFDLEVBQUU7aUJBQ2xELENBQUMsQ0FBQzthQUNKO1NBQ0Y7UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7O3lHQW5DVSxZQUFZOzZHQUFaLFlBQVk7MkZBQVosWUFBWTtrQkFEeEIsVUFBVTs7QUF1Q1gsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQWE7SUFDNUMsT0FBTyxFQUFFLGFBQWE7SUFDdEIsUUFBUSxFQUFFLFlBQVk7SUFDdEIsS0FBSyxFQUFFLElBQUk7Q0FDWixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgUHJvdmlkZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERhdGFTdGF0dXMgfSBmcm9tICduZ3NzbS1yZW1vdGUtZGF0YSc7XG5cbmltcG9ydCB7IFJlZHVjZXIsIFN0YXRlLCBBY3Rpb24sIE5HU1NNX1JFRFVDRVIgfSBmcm9tICduZ3NzbS1zdG9yZSc7XG5cbmltcG9ydCB7IERlbGV0ZU5nc3NtVHJlZUFjdGlvbiwgSW5pdE5nc3NtVHJlZUFjdGlvbiwgTmdzc21UcmVlQWN0aW9uVHlwZSB9IGZyb20gJy4uL2FjdGlvbnMnO1xuaW1wb3J0IHsgdXBkYXRlTmdzc21UcmVlU3RhdGUgfSBmcm9tICcuLi9zdGF0ZSc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBUcmVlc1JlZHVjZXIgaW1wbGVtZW50cyBSZWR1Y2VyIHtcbiAgcHVibGljIHJlYWRvbmx5IHByb2Nlc3NlZEFjdGlvbnM6IHN0cmluZ1tdID0gW05nc3NtVHJlZUFjdGlvblR5cGUuaW5pdE5nc3NtVHJlZSwgTmdzc21UcmVlQWN0aW9uVHlwZS5kZWxldGVOZ3NzbVRyZWVdO1xuXG4gIHB1YmxpYyB1cGRhdGVTdGF0ZShzdGF0ZTogU3RhdGUsIGFjdGlvbjogQWN0aW9uKTogU3RhdGUge1xuICAgIHN3aXRjaCAoYWN0aW9uLnR5cGUpIHtcbiAgICAgIGNhc2UgTmdzc21UcmVlQWN0aW9uVHlwZS5pbml0Tmdzc21UcmVlOiB7XG4gICAgICAgIGNvbnN0IGluaXROZ3NzbVRyZWVBY3Rpb24gPSBhY3Rpb24gYXMgSW5pdE5nc3NtVHJlZUFjdGlvbjtcbiAgICAgICAgcmV0dXJuIHVwZGF0ZU5nc3NtVHJlZVN0YXRlKHN0YXRlLCB7XG4gICAgICAgICAgdHJlZXM6IHtcbiAgICAgICAgICAgIFtpbml0Tmdzc21UcmVlQWN0aW9uLnRyZWVJZF06IHtcbiAgICAgICAgICAgICAgJHNldDoge1xuICAgICAgICAgICAgICAgIG5vZGVzOiBbXG4gICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHN0YXR1czogRGF0YVN0YXR1cy5ub25lLFxuICAgICAgICAgICAgICAgICAgICBpc0V4cGFuZGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgICAgbGV2ZWw6IDAsXG4gICAgICAgICAgICAgICAgICAgIG5vZGU6IGluaXROZ3NzbVRyZWVBY3Rpb24ucm9vdFxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgICAgdHlwZTogaW5pdE5nc3NtVHJlZUFjdGlvbi50cmVlVHlwZVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgY2FzZSBOZ3NzbVRyZWVBY3Rpb25UeXBlLmRlbGV0ZU5nc3NtVHJlZToge1xuICAgICAgICBjb25zdCBkZWxldGVOZ3NzbVRyZWVBY3Rpb24gPSBhY3Rpb24gYXMgRGVsZXRlTmdzc21UcmVlQWN0aW9uO1xuICAgICAgICByZXR1cm4gdXBkYXRlTmdzc21UcmVlU3RhdGUoc3RhdGUsIHtcbiAgICAgICAgICB0cmVlczogeyAkdW5zZXQ6IFtkZWxldGVOZ3NzbVRyZWVBY3Rpb24udHJlZUlkXSB9XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBzdGF0ZTtcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgdHJlZXNSZWR1Y2VyUHJvdmlkZXI6IFByb3ZpZGVyID0ge1xuICBwcm92aWRlOiBOR1NTTV9SRURVQ0VSLFxuICB1c2VDbGFzczogVHJlZXNSZWR1Y2VyLFxuICBtdWx0aTogdHJ1ZVxufTtcbiJdfQ==
|