@limble/limble-tree 0.12.4 → 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +149 -149
- package/{esm2015/lib/classes/Branch.js → esm2020/lib/classes/Branch.mjs} +1 -1
- package/{esm2015/lib/classes/DropZone.js → esm2020/lib/classes/DropZone.mjs} +1 -1
- package/{esm2015/lib/classes/DropZoneLocation.js → esm2020/lib/classes/DropZoneLocation.mjs} +1 -1
- package/{esm2015/lib/custom-event-bindings/dragleave-no-change-detect.directive.js → esm2020/lib/custom-event-bindings/dragleave-no-change-detect.directive.mjs} +0 -0
- package/{esm2015/lib/custom-event-bindings/dragover-no-change-detect.directive.js → esm2020/lib/custom-event-bindings/dragover-no-change-detect.directive.mjs} +1 -1
- package/esm2020/lib/drop-zone/drop-zone.component.mjs +75 -0
- package/esm2020/lib/limble-tree-branch/limble-tree-branch.component.mjs +110 -0
- package/esm2020/lib/limble-tree-node/limble-tree-node.component.mjs +467 -0
- package/{esm2015/lib/limble-tree-placeholder/limble-tree-placeholder.component.js → esm2020/lib/limble-tree-placeholder/limble-tree-placeholder.component.mjs} +3 -8
- package/esm2020/lib/limble-tree-root/drop-zone.service.mjs +376 -0
- package/esm2020/lib/limble-tree-root/limble-tree-root.component.mjs +172 -0
- package/{esm2015/lib/limble-tree-root/tree-construction-status.service.js → esm2020/lib/limble-tree-root/tree-construction-status.service.mjs} +1 -1
- package/esm2020/lib/limble-tree-root/tree.service.mjs +297 -0
- package/{esm2015/lib/limble-tree.module.js → esm2020/lib/limble-tree.module.mjs} +5 -5
- package/{esm2015/lib/singletons/component-creator.service.js → esm2020/lib/singletons/component-creator.service.mjs} +1 -1
- package/esm2020/lib/singletons/drag-state.service.mjs +63 -0
- package/esm2020/lib/singletons/global-events.service.mjs +136 -0
- package/{esm2015/lib/util.js → esm2020/lib/util.mjs} +1 -1
- package/{esm2015/limble-limble-tree.js → esm2020/limble-limble-tree.mjs} +0 -0
- package/{esm2015/public-api.js → esm2020/public-api.mjs} +1 -1
- package/fesm2015/limble-limble-tree.mjs +2256 -0
- package/fesm2015/limble-limble-tree.mjs.map +1 -0
- package/{fesm2015/limble-limble-tree.js → fesm2020/limble-limble-tree.mjs} +89 -136
- package/fesm2020/limble-limble-tree.mjs.map +1 -0
- package/{limble-limble-tree.d.ts → index.d.ts} +0 -0
- package/lib/custom-event-bindings/dragleave-no-change-detect.directive.d.ts +1 -1
- package/lib/custom-event-bindings/dragover-no-change-detect.directive.d.ts +1 -1
- package/lib/drop-zone/drop-zone.component.d.ts +1 -1
- package/lib/limble-tree-branch/limble-tree-branch.component.d.ts +1 -1
- package/lib/limble-tree-node/limble-tree-node.component.d.ts +1 -1
- package/lib/limble-tree-placeholder/limble-tree-placeholder.component.d.ts +1 -1
- package/lib/limble-tree-root/limble-tree-root.component.d.ts +1 -1
- package/package.json +22 -9
- package/bundles/limble-limble-tree.umd.js +0 -2910
- package/bundles/limble-limble-tree.umd.js.map +0 -1
- package/esm2015/lib/drop-zone/drop-zone.component.js +0 -81
- package/esm2015/lib/limble-tree-branch/limble-tree-branch.component.js +0 -116
- package/esm2015/lib/limble-tree-node/limble-tree-node.component.js +0 -484
- package/esm2015/lib/limble-tree-root/drop-zone.service.js +0 -377
- package/esm2015/lib/limble-tree-root/limble-tree-root.component.js +0 -178
- package/esm2015/lib/limble-tree-root/tree.service.js +0 -301
- package/esm2015/lib/singletons/drag-state.service.js +0 -64
- package/esm2015/lib/singletons/global-events.service.js +0 -137
- package/fesm2015/limble-limble-tree.js.map +0 -1
|
@@ -16,4 +16,4 @@ ComponentCreatorService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token:
|
|
|
16
16
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ComponentCreatorService, [{
|
|
17
17
|
type: Injectable
|
|
18
18
|
}], function () { return [{ type: i0.ComponentFactoryResolver }]; }, null); })();
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LWNyZWF0b3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xpbWJsZS10cmVlL3NyYy9saWIvc2luZ2xldG9ucy9jb21wb25lbnQtY3JlYXRvci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFSixVQUFVLEVBR1osTUFBTSxlQUFlLENBQUM7O0FBR3ZCLE1BQU0sT0FBTyx1QkFBdUI7SUFDakMsWUFBNkIsZUFBeUM7UUFBekMsb0JBQWUsR0FBZixlQUFlLENBQTBCO1FBQ25FLElBQUksQ0FBQyxlQUFlLEdBQUcsZUFBZSxDQUFDO0lBQzFDLENBQUM7SUFFRCxlQUFlLENBQ1osU0FBa0IsRUFDbEIsZ0JBQWtDLEVBQ2xDLFFBQTRCLFNBQVM7UUFFckMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLHVCQUF1QixDQUNsRSxTQUFTLENBQ1gsQ0FBQztRQUNGLE1BQU0sWUFBWSxHQUFHLGdCQUFnQixDQUFDLGVBQWUsQ0FDbEQsZ0JBQWdCLEVBQ2hCLEtBQUssQ0FDUCxDQUFDO1FBQ0YsT0FBTyxZQUFZLENBQUM7SUFDdkIsQ0FBQzs7OEZBbEJTLHVCQUF1Qjs2RUFBdkIsdUJBQXVCLFdBQXZCLHVCQUF1Qjt1RkFBdkIsdUJBQXVCO2NBRG5DLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICAgSW5qZWN0YWJsZSxcbiAgIFR5cGUsXG4gICBWaWV3Q29udGFpbmVyUmVmXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBDb21wb25lbnRDcmVhdG9yU2VydmljZSB7XG4gICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGZhY3RvcnlSZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyKSB7XG4gICAgICB0aGlzLmZhY3RvcnlSZXNvbHZlciA9IGZhY3RvcnlSZXNvbHZlcjtcbiAgIH1cblxuICAgYXBwZW5kQ29tcG9uZW50PFQgPSB1bmtub3duPihcbiAgICAgIGNvbXBvbmVudDogVHlwZTxUPixcbiAgICAgIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICAgICBpbmRleDogbnVtYmVyIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkXG4gICApIHtcbiAgICAgIGNvbnN0IGNvbXBvbmVudEZhY3RvcnkgPSB0aGlzLmZhY3RvcnlSZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShcbiAgICAgICAgIGNvbXBvbmVudFxuICAgICAgKTtcbiAgICAgIGNvbnN0IGNvbXBvbmVudFJlZiA9IHZpZXdDb250YWluZXJSZWYuY3JlYXRlQ29tcG9uZW50PFQ+KFxuICAgICAgICAgY29tcG9uZW50RmFjdG9yeSxcbiAgICAgICAgIGluZGV4XG4gICAgICApO1xuICAgICAgcmV0dXJuIGNvbXBvbmVudFJlZjtcbiAgIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { Injectable } from "@angular/core";
|
|
2
|
+
import { BehaviorSubject } from "rxjs";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class DragStateService {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.state = "idle";
|
|
7
|
+
this.state$ = new BehaviorSubject(this.state);
|
|
8
|
+
}
|
|
9
|
+
/** Called to indicate that something is being dragged. Stores that something for later. */
|
|
10
|
+
dragging(branch, parentContainer) {
|
|
11
|
+
this._tempData = {
|
|
12
|
+
branch: branch,
|
|
13
|
+
parentContainer: parentContainer
|
|
14
|
+
};
|
|
15
|
+
this.state = "dragging";
|
|
16
|
+
this.state$.next(this.state);
|
|
17
|
+
}
|
|
18
|
+
/** Called to indicate that there is a valid active drop zone. Drop is now possible. */
|
|
19
|
+
droppable() {
|
|
20
|
+
if (this.state !== "dragging") {
|
|
21
|
+
throw new Error("Can only call `droppable` when state is `dragging`");
|
|
22
|
+
}
|
|
23
|
+
this.state = "droppable";
|
|
24
|
+
this.state$.next(this.state);
|
|
25
|
+
}
|
|
26
|
+
/** Called to indicate that there is no longer a valid active drop zone. Drop is no longer possible. */
|
|
27
|
+
notDroppable() {
|
|
28
|
+
if (this.state !== "droppable") {
|
|
29
|
+
throw new Error("Can only call `notDroppable` when state is `droppable`");
|
|
30
|
+
}
|
|
31
|
+
this.state = "dragging";
|
|
32
|
+
this.state$.next(this.state);
|
|
33
|
+
}
|
|
34
|
+
/** Called to indicate that a drop into a valid drop zone has occurred. Returns the item that was dropped. */
|
|
35
|
+
capture() {
|
|
36
|
+
if (this.state !== "droppable") {
|
|
37
|
+
throw new Error("Can only move to `captured` state from `droppable` state");
|
|
38
|
+
}
|
|
39
|
+
this.state = "captured";
|
|
40
|
+
this.state$.next(this.state);
|
|
41
|
+
return this._tempData?.branch;
|
|
42
|
+
}
|
|
43
|
+
/** Called to reset the service for future drags */
|
|
44
|
+
release() {
|
|
45
|
+
this._tempData = undefined;
|
|
46
|
+
this.state = "idle";
|
|
47
|
+
this.state$.next(this.state);
|
|
48
|
+
}
|
|
49
|
+
/** gets the current thing being dragged, if any. */
|
|
50
|
+
getData() {
|
|
51
|
+
return this._tempData;
|
|
52
|
+
}
|
|
53
|
+
/** gets the current state */
|
|
54
|
+
getState() {
|
|
55
|
+
return this.state;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
DragStateService.ɵfac = function DragStateService_Factory(t) { return new (t || DragStateService)(); };
|
|
59
|
+
DragStateService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: DragStateService, factory: DragStateService.ɵfac });
|
|
60
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DragStateService, [{
|
|
61
|
+
type: Injectable
|
|
62
|
+
}], function () { return []; }, null); })();
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhZy1zdGF0ZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbGltYmxlLXRyZWUvc3JjL2xpYi9zaW5nbGV0b25zL2RyYWctc3RhdGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFvQixNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQVd2QyxNQUFNLE9BQU8sZ0JBQWdCO0lBVTFCO1FBQ0csSUFBSSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUM7UUFDcEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLGVBQWUsQ0FBWSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVELDJGQUEyRjtJQUNwRixRQUFRLENBQUMsTUFBbUIsRUFBRSxlQUFpQztRQUNuRSxJQUFJLENBQUMsU0FBUyxHQUFHO1lBQ2QsTUFBTSxFQUFFLE1BQU07WUFDZCxlQUFlLEVBQUUsZUFBZTtTQUNsQyxDQUFDO1FBQ0YsSUFBSSxDQUFDLEtBQUssR0FBRyxVQUFVLENBQUM7UUFDeEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCx1RkFBdUY7SUFDaEYsU0FBUztRQUNiLElBQUksSUFBSSxDQUFDLEtBQUssS0FBSyxVQUFVLEVBQUU7WUFDNUIsTUFBTSxJQUFJLEtBQUssQ0FBQyxvREFBb0QsQ0FBQyxDQUFDO1NBQ3hFO1FBQ0QsSUFBSSxDQUFDLEtBQUssR0FBRyxXQUFXLENBQUM7UUFDekIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCx1R0FBdUc7SUFDaEcsWUFBWTtRQUNoQixJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssV0FBVyxFQUFFO1lBQzdCLE1BQU0sSUFBSSxLQUFLLENBQ1osd0RBQXdELENBQzFELENBQUM7U0FDSjtRQUNELElBQUksQ0FBQyxLQUFLLEdBQUcsVUFBVSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsOEdBQThHO0lBQ3ZHLE9BQU87UUFDWCxJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssV0FBVyxFQUFFO1lBQzdCLE1BQU0sSUFBSSxLQUFLLENBQ1osMERBQTBELENBQzVELENBQUM7U0FDSjtRQUNELElBQUksQ0FBQyxLQUFLLEdBQUcsVUFBVSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM3QixPQUFPLElBQUksQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDO0lBQ2pDLENBQUM7SUFFRCxtREFBbUQ7SUFDNUMsT0FBTztRQUNYLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzNCLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsb0RBQW9EO0lBQzdDLE9BQU87UUFDWCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDekIsQ0FBQztJQUVELDZCQUE2QjtJQUN0QixRQUFRO1FBQ1osT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3JCLENBQUM7O2dGQXhFUyxnQkFBZ0I7c0VBQWhCLGdCQUFnQixXQUFoQixnQkFBZ0I7dUZBQWhCLGdCQUFnQjtjQUQ1QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHR5cGUgeyBCcmFuY2ggfSBmcm9tIFwiLi4vY2xhc3Nlcy9CcmFuY2hcIjtcblxuZXhwb3J0IHR5cGUgRHJhZ1N0YXRlID0gXCJpZGxlXCIgfCBcImRyYWdnaW5nXCIgfCBcImRyb3BwYWJsZVwiIHwgXCJjYXB0dXJlZFwiO1xuXG5pbnRlcmZhY2UgVGVtcERhdGEge1xuICAgYnJhbmNoOiBCcmFuY2g8YW55PjtcbiAgIHBhcmVudENvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZjtcbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIERyYWdTdGF0ZVNlcnZpY2Uge1xuICAgLyoqIHB1c2hlcyB0aGUgbmV3IHN0YXRlIHdoZW5ldmVyIHRoZSBzdGF0ZSBjaGFuZ2VzICovXG4gICBwdWJsaWMgc3RhdGUkOiBCZWhhdmlvclN1YmplY3Q8RHJhZ1N0YXRlPjtcblxuICAgLyoqIGhvbGRzIGRhdGEgYWJvdXQgdGhlIHRoaW5nIGJlaW5nIGRyYWdnZWQgKi9cbiAgIHByaXZhdGUgX3RlbXBEYXRhOiBUZW1wRGF0YSB8IHVuZGVmaW5lZDtcblxuICAgLyoqIHRoZSBjdXJyZW50IHN0YXRlIG9mIHRoZSBkcmFnIHByb2Nlc3MgKi9cbiAgIHByaXZhdGUgc3RhdGU6IERyYWdTdGF0ZTtcblxuICAgY29uc3RydWN0b3IoKSB7XG4gICAgICB0aGlzLnN0YXRlID0gXCJpZGxlXCI7XG4gICAgICB0aGlzLnN0YXRlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RHJhZ1N0YXRlPih0aGlzLnN0YXRlKTtcbiAgIH1cblxuICAgLyoqIENhbGxlZCB0byBpbmRpY2F0ZSB0aGF0IHNvbWV0aGluZyBpcyBiZWluZyBkcmFnZ2VkLiBTdG9yZXMgdGhhdCBzb21ldGhpbmcgZm9yIGxhdGVyLiAqL1xuICAgcHVibGljIGRyYWdnaW5nKGJyYW5jaDogQnJhbmNoPGFueT4sIHBhcmVudENvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZikge1xuICAgICAgdGhpcy5fdGVtcERhdGEgPSB7XG4gICAgICAgICBicmFuY2g6IGJyYW5jaCxcbiAgICAgICAgIHBhcmVudENvbnRhaW5lcjogcGFyZW50Q29udGFpbmVyXG4gICAgICB9O1xuICAgICAgdGhpcy5zdGF0ZSA9IFwiZHJhZ2dpbmdcIjtcbiAgICAgIHRoaXMuc3RhdGUkLm5leHQodGhpcy5zdGF0ZSk7XG4gICB9XG5cbiAgIC8qKiBDYWxsZWQgdG8gaW5kaWNhdGUgdGhhdCB0aGVyZSBpcyBhIHZhbGlkIGFjdGl2ZSBkcm9wIHpvbmUuIERyb3AgaXMgbm93IHBvc3NpYmxlLiAqL1xuICAgcHVibGljIGRyb3BwYWJsZSgpIHtcbiAgICAgIGlmICh0aGlzLnN0YXRlICE9PSBcImRyYWdnaW5nXCIpIHtcbiAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIkNhbiBvbmx5IGNhbGwgYGRyb3BwYWJsZWAgd2hlbiBzdGF0ZSBpcyBgZHJhZ2dpbmdgXCIpO1xuICAgICAgfVxuICAgICAgdGhpcy5zdGF0ZSA9IFwiZHJvcHBhYmxlXCI7XG4gICAgICB0aGlzLnN0YXRlJC5uZXh0KHRoaXMuc3RhdGUpO1xuICAgfVxuXG4gICAvKiogQ2FsbGVkIHRvIGluZGljYXRlIHRoYXQgdGhlcmUgaXMgbm8gbG9uZ2VyIGEgdmFsaWQgYWN0aXZlIGRyb3Agem9uZS4gRHJvcCBpcyBubyBsb25nZXIgcG9zc2libGUuICovXG4gICBwdWJsaWMgbm90RHJvcHBhYmxlKCkge1xuICAgICAgaWYgKHRoaXMuc3RhdGUgIT09IFwiZHJvcHBhYmxlXCIpIHtcbiAgICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAgIFwiQ2FuIG9ubHkgY2FsbCBgbm90RHJvcHBhYmxlYCB3aGVuIHN0YXRlIGlzIGBkcm9wcGFibGVgXCJcbiAgICAgICAgICk7XG4gICAgICB9XG4gICAgICB0aGlzLnN0YXRlID0gXCJkcmFnZ2luZ1wiO1xuICAgICAgdGhpcy5zdGF0ZSQubmV4dCh0aGlzLnN0YXRlKTtcbiAgIH1cblxuICAgLyoqIENhbGxlZCB0byBpbmRpY2F0ZSB0aGF0IGEgZHJvcCBpbnRvIGEgdmFsaWQgZHJvcCB6b25lIGhhcyBvY2N1cnJlZC4gUmV0dXJucyB0aGUgaXRlbSB0aGF0IHdhcyBkcm9wcGVkLiAgKi9cbiAgIHB1YmxpYyBjYXB0dXJlKCkge1xuICAgICAgaWYgKHRoaXMuc3RhdGUgIT09IFwiZHJvcHBhYmxlXCIpIHtcbiAgICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAgIFwiQ2FuIG9ubHkgbW92ZSB0byBgY2FwdHVyZWRgIHN0YXRlIGZyb20gYGRyb3BwYWJsZWAgc3RhdGVcIlxuICAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuc3RhdGUgPSBcImNhcHR1cmVkXCI7XG4gICAgICB0aGlzLnN0YXRlJC5uZXh0KHRoaXMuc3RhdGUpO1xuICAgICAgcmV0dXJuIHRoaXMuX3RlbXBEYXRhPy5icmFuY2g7XG4gICB9XG5cbiAgIC8qKiBDYWxsZWQgdG8gcmVzZXQgdGhlIHNlcnZpY2UgZm9yIGZ1dHVyZSBkcmFncyAqL1xuICAgcHVibGljIHJlbGVhc2UoKSB7XG4gICAgICB0aGlzLl90ZW1wRGF0YSA9IHVuZGVmaW5lZDtcbiAgICAgIHRoaXMuc3RhdGUgPSBcImlkbGVcIjtcbiAgICAgIHRoaXMuc3RhdGUkLm5leHQodGhpcy5zdGF0ZSk7XG4gICB9XG5cbiAgIC8qKiBnZXRzIHRoZSBjdXJyZW50IHRoaW5nIGJlaW5nIGRyYWdnZWQsIGlmIGFueS4gKi9cbiAgIHB1YmxpYyBnZXREYXRhKCkge1xuICAgICAgcmV0dXJuIHRoaXMuX3RlbXBEYXRhO1xuICAgfVxuXG4gICAvKiogZ2V0cyB0aGUgY3VycmVudCBzdGF0ZSAqL1xuICAgcHVibGljIGdldFN0YXRlKCkge1xuICAgICAgcmV0dXJuIHRoaXMuc3RhdGU7XG4gICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { Injectable } from "@angular/core";
|
|
2
|
+
import { fromEvent } from "rxjs";
|
|
3
|
+
import { filter, throttleTime } from "rxjs/operators";
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
function getScrollParent(element) {
|
|
6
|
+
const regex = /(auto|scroll)/;
|
|
7
|
+
const parents = (_node, parentList) => {
|
|
8
|
+
if (_node === null || _node.parentNode === null) {
|
|
9
|
+
return parentList;
|
|
10
|
+
}
|
|
11
|
+
return parents(_node.parentElement, parentList.concat([_node]));
|
|
12
|
+
};
|
|
13
|
+
const style = (_node, prop) => getComputedStyle(_node, null).getPropertyValue(prop);
|
|
14
|
+
const overflow = (_node) => style(_node, "overflow") +
|
|
15
|
+
style(_node, "overflow-y") +
|
|
16
|
+
style(_node, "overflow-x");
|
|
17
|
+
const scroll = (_node) => regex.test(overflow(_node));
|
|
18
|
+
const parentList = parents(element.parentElement, []);
|
|
19
|
+
for (const parent of parentList) {
|
|
20
|
+
if (scroll(parent)) {
|
|
21
|
+
return parent;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
return (document.scrollingElement ?? document.documentElement);
|
|
25
|
+
}
|
|
26
|
+
export class GlobalEventsService {
|
|
27
|
+
constructor(ngZone) {
|
|
28
|
+
this.ngZone = ngZone;
|
|
29
|
+
this.ngZone.runOutsideAngular(() => {
|
|
30
|
+
this.globalDrag$ = fromEvent(document, "drag");
|
|
31
|
+
});
|
|
32
|
+
this.scrolling = false;
|
|
33
|
+
}
|
|
34
|
+
addScrolling() {
|
|
35
|
+
this.ngZone.runOutsideAngular(() => {
|
|
36
|
+
if (this.globalDragSubscription !== undefined) {
|
|
37
|
+
return;
|
|
38
|
+
}
|
|
39
|
+
if (this.globalDrag$ === undefined) {
|
|
40
|
+
throw new Error("Could not get observable");
|
|
41
|
+
}
|
|
42
|
+
let viewPortHeight;
|
|
43
|
+
let scrollAreaSize;
|
|
44
|
+
let edgeTop;
|
|
45
|
+
let edgeBottom;
|
|
46
|
+
let isInTopScrollArea;
|
|
47
|
+
let isInBottomScrollArea;
|
|
48
|
+
let timer;
|
|
49
|
+
let scrollableDiv;
|
|
50
|
+
let relativeY;
|
|
51
|
+
this.globalDragSubscription = this.globalDrag$
|
|
52
|
+
.pipe(throttleTime(25), filter((event) => {
|
|
53
|
+
if (!event.target) {
|
|
54
|
+
return false;
|
|
55
|
+
}
|
|
56
|
+
scrollableDiv = getScrollParent(event.target);
|
|
57
|
+
viewPortHeight = scrollableDiv.clientHeight;
|
|
58
|
+
const viewPortWidth = scrollableDiv.clientWidth;
|
|
59
|
+
let relativeX;
|
|
60
|
+
if (window
|
|
61
|
+
.getComputedStyle(scrollableDiv)
|
|
62
|
+
.getPropertyValue("position")
|
|
63
|
+
.toLowerCase() === "fixed") {
|
|
64
|
+
relativeX = event.clientX;
|
|
65
|
+
relativeY = event.clientY;
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
const boundingRect = scrollableDiv.getBoundingClientRect();
|
|
69
|
+
const scrollableDivAncestor = getScrollParent(scrollableDiv);
|
|
70
|
+
relativeX =
|
|
71
|
+
event.clientX -
|
|
72
|
+
(boundingRect.left + scrollableDivAncestor.scrollLeft);
|
|
73
|
+
relativeY =
|
|
74
|
+
event.clientY -
|
|
75
|
+
(boundingRect.top + scrollableDivAncestor.scrollTop);
|
|
76
|
+
}
|
|
77
|
+
if (relativeX < 0 ||
|
|
78
|
+
relativeX > viewPortWidth ||
|
|
79
|
+
relativeY < 0 ||
|
|
80
|
+
relativeY > viewPortHeight) {
|
|
81
|
+
//Outside of scrollable div
|
|
82
|
+
return false;
|
|
83
|
+
}
|
|
84
|
+
scrollAreaSize = Math.max(viewPortHeight * 0.1, 100);
|
|
85
|
+
edgeTop = scrollAreaSize;
|
|
86
|
+
edgeBottom = viewPortHeight - scrollAreaSize;
|
|
87
|
+
isInTopScrollArea = relativeY < edgeTop;
|
|
88
|
+
isInBottomScrollArea = relativeY > edgeBottom;
|
|
89
|
+
return isInTopScrollArea || isInBottomScrollArea;
|
|
90
|
+
}))
|
|
91
|
+
.subscribe(() => {
|
|
92
|
+
if (scrollableDiv === null) {
|
|
93
|
+
return;
|
|
94
|
+
}
|
|
95
|
+
const height = scrollableDiv.scrollHeight;
|
|
96
|
+
const maxScrollY = height - viewPortHeight;
|
|
97
|
+
const currentScrollY = scrollableDiv.scrollTop;
|
|
98
|
+
const canScrollUp = currentScrollY > 0;
|
|
99
|
+
const canScrollDown = currentScrollY < maxScrollY;
|
|
100
|
+
let nextScrollY;
|
|
101
|
+
const maxStep = 75;
|
|
102
|
+
if (isInTopScrollArea && canScrollUp) {
|
|
103
|
+
const intensity = (edgeTop - relativeY) / scrollAreaSize;
|
|
104
|
+
nextScrollY = currentScrollY - maxStep * intensity;
|
|
105
|
+
}
|
|
106
|
+
else if (isInBottomScrollArea && canScrollDown) {
|
|
107
|
+
const intensity = (relativeY - edgeBottom) / scrollAreaSize;
|
|
108
|
+
nextScrollY = currentScrollY + maxStep * intensity;
|
|
109
|
+
}
|
|
110
|
+
else {
|
|
111
|
+
return;
|
|
112
|
+
}
|
|
113
|
+
nextScrollY = Math.max(0, Math.min(maxScrollY, nextScrollY));
|
|
114
|
+
if (nextScrollY !== currentScrollY) {
|
|
115
|
+
scrollableDiv.scrollTo({ top: nextScrollY });
|
|
116
|
+
this.scrolling = true;
|
|
117
|
+
clearTimeout(timer);
|
|
118
|
+
timer = setTimeout(() => {
|
|
119
|
+
this.scrolling = false;
|
|
120
|
+
}, 100);
|
|
121
|
+
}
|
|
122
|
+
});
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
removeScrolling() {
|
|
126
|
+
if (this.globalDragSubscription !== undefined) {
|
|
127
|
+
this.globalDragSubscription.unsubscribe();
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
GlobalEventsService.ɵfac = function GlobalEventsService_Factory(t) { return new (t || GlobalEventsService)(i0.ɵɵinject(i0.NgZone)); };
|
|
132
|
+
GlobalEventsService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: GlobalEventsService, factory: GlobalEventsService.ɵfac });
|
|
133
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(GlobalEventsService, [{
|
|
134
|
+
type: Injectable
|
|
135
|
+
}], function () { return [{ type: i0.NgZone }]; }, null); })();
|
|
136
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsLWV2ZW50cy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbGltYmxlLXRyZWUvc3JjL2xpYi9zaW5nbGV0b25zL2dsb2JhbC1ldmVudHMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxTQUFTLEVBQTRCLE1BQU0sTUFBTSxDQUFDO0FBQzNELE9BQU8sRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBRXRELFNBQVMsZUFBZSxDQUFDLE9BQW9CO0lBQzFDLE1BQU0sS0FBSyxHQUFHLGVBQWUsQ0FBQztJQUM5QixNQUFNLE9BQU8sR0FBRyxDQUNiLEtBQXlCLEVBQ3pCLFVBQThCLEVBQ1gsRUFBRTtRQUNyQixJQUFJLEtBQUssS0FBSyxJQUFJLElBQUksS0FBSyxDQUFDLFVBQVUsS0FBSyxJQUFJLEVBQUU7WUFDOUMsT0FBTyxVQUFVLENBQUM7U0FDcEI7UUFDRCxPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbkUsQ0FBQyxDQUFDO0lBRUYsTUFBTSxLQUFLLEdBQUcsQ0FBQyxLQUFrQixFQUFFLElBQVksRUFBRSxFQUFFLENBQ2hELGdCQUFnQixDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN4RCxNQUFNLFFBQVEsR0FBRyxDQUFDLEtBQWtCLEVBQUUsRUFBRSxDQUNyQyxLQUFLLENBQUMsS0FBSyxFQUFFLFVBQVUsQ0FBQztRQUN4QixLQUFLLENBQUMsS0FBSyxFQUFFLFlBQVksQ0FBQztRQUMxQixLQUFLLENBQUMsS0FBSyxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQzlCLE1BQU0sTUFBTSxHQUFHLENBQUMsS0FBa0IsRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUVuRSxNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN0RCxLQUFLLE1BQU0sTUFBTSxJQUFJLFVBQVUsRUFBRTtRQUM5QixJQUFJLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUNqQixPQUFPLE1BQU0sQ0FBQztTQUNoQjtLQUNIO0lBQ0QsT0FBTyxDQUNILFFBQVEsQ0FBQyxnQkFBZ0MsSUFBSSxRQUFRLENBQUMsZUFBZSxDQUN4RSxDQUFDO0FBQ0wsQ0FBQztBQUdELE1BQU0sT0FBTyxtQkFBbUI7SUFLN0IsWUFBNkIsTUFBYztRQUFkLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDeEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLEVBQUU7WUFDaEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxTQUFTLENBQVksUUFBUSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQzdELENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7SUFDMUIsQ0FBQztJQUVNLFlBQVk7UUFDaEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLEVBQUU7WUFDaEMsSUFBSSxJQUFJLENBQUMsc0JBQXNCLEtBQUssU0FBUyxFQUFFO2dCQUM1QyxPQUFPO2FBQ1Q7WUFDRCxJQUFJLElBQUksQ0FBQyxXQUFXLEtBQUssU0FBUyxFQUFFO2dCQUNqQyxNQUFNLElBQUksS0FBSyxDQUFDLDBCQUEwQixDQUFDLENBQUM7YUFDOUM7WUFDRCxJQUFJLGNBQXNCLENBQUM7WUFDM0IsSUFBSSxjQUFzQixDQUFDO1lBQzNCLElBQUksT0FBZSxDQUFDO1lBQ3BCLElBQUksVUFBa0IsQ0FBQztZQUN2QixJQUFJLGlCQUEwQixDQUFDO1lBQy9CLElBQUksb0JBQTZCLENBQUM7WUFDbEMsSUFBSSxLQUFvQyxDQUFDO1lBQ3pDLElBQUksYUFBaUMsQ0FBQztZQUN0QyxJQUFJLFNBQWlCLENBQUM7WUFDdEIsSUFBSSxDQUFDLHNCQUFzQixHQUFHLElBQUksQ0FBQyxXQUFXO2lCQUMxQyxJQUFJLENBQ0YsWUFBWSxDQUFDLEVBQUUsQ0FBQyxFQUNoQixNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtnQkFDZCxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRTtvQkFDaEIsT0FBTyxLQUFLLENBQUM7aUJBQ2Y7Z0JBQ0QsYUFBYSxHQUFHLGVBQWUsQ0FBQyxLQUFLLENBQUMsTUFBcUIsQ0FBQyxDQUFDO2dCQUM3RCxjQUFjLEdBQUcsYUFBYSxDQUFDLFlBQVksQ0FBQztnQkFDNUMsTUFBTSxhQUFhLEdBQUcsYUFBYSxDQUFDLFdBQVcsQ0FBQztnQkFDaEQsSUFBSSxTQUFpQixDQUFDO2dCQUN0QixJQUNHLE1BQU07cUJBQ0YsZ0JBQWdCLENBQUMsYUFBYSxDQUFDO3FCQUMvQixnQkFBZ0IsQ0FBQyxVQUFVLENBQUM7cUJBQzVCLFdBQVcsRUFBRSxLQUFLLE9BQU8sRUFDOUI7b0JBQ0MsU0FBUyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUM7b0JBQzFCLFNBQVMsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDO2lCQUM1QjtxQkFBTTtvQkFDSixNQUFNLFlBQVksR0FBRyxhQUFhLENBQUMscUJBQXFCLEVBQUUsQ0FBQztvQkFDM0QsTUFBTSxxQkFBcUIsR0FBRyxlQUFlLENBQzFDLGFBQWEsQ0FDZixDQUFDO29CQUNGLFNBQVM7d0JBQ04sS0FBSyxDQUFDLE9BQU87NEJBQ2IsQ0FBQyxZQUFZLENBQUMsSUFBSSxHQUFHLHFCQUFxQixDQUFDLFVBQVUsQ0FBQyxDQUFDO29CQUMxRCxTQUFTO3dCQUNOLEtBQUssQ0FBQyxPQUFPOzRCQUNiLENBQUMsWUFBWSxDQUFDLEdBQUcsR0FBRyxxQkFBcUIsQ0FBQyxTQUFTLENBQUMsQ0FBQztpQkFDMUQ7Z0JBQ0QsSUFDRyxTQUFTLEdBQUcsQ0FBQztvQkFDYixTQUFTLEdBQUcsYUFBYTtvQkFDekIsU0FBUyxHQUFHLENBQUM7b0JBQ2IsU0FBUyxHQUFHLGNBQWMsRUFDM0I7b0JBQ0MsMkJBQTJCO29CQUMzQixPQUFPLEtBQUssQ0FBQztpQkFDZjtnQkFDRCxjQUFjLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxjQUFjLEdBQUcsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO2dCQUNyRCxPQUFPLEdBQUcsY0FBYyxDQUFDO2dCQUN6QixVQUFVLEdBQUcsY0FBYyxHQUFHLGNBQWMsQ0FBQztnQkFDN0MsaUJBQWlCLEdBQUcsU0FBUyxHQUFHLE9BQU8sQ0FBQztnQkFDeEMsb0JBQW9CLEdBQUcsU0FBUyxHQUFHLFVBQVUsQ0FBQztnQkFDOUMsT0FBTyxpQkFBaUIsSUFBSSxvQkFBb0IsQ0FBQztZQUNwRCxDQUFDLENBQUMsQ0FDSjtpQkFDQSxTQUFTLENBQUMsR0FBRyxFQUFFO2dCQUNiLElBQUksYUFBYSxLQUFLLElBQUksRUFBRTtvQkFDekIsT0FBTztpQkFDVDtnQkFDRCxNQUFNLE1BQU0sR0FBRyxhQUFhLENBQUMsWUFBWSxDQUFDO2dCQUMxQyxNQUFNLFVBQVUsR0FBRyxNQUFNLEdBQUcsY0FBYyxDQUFDO2dCQUMzQyxNQUFNLGNBQWMsR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDO2dCQUMvQyxNQUFNLFdBQVcsR0FBRyxjQUFjLEdBQUcsQ0FBQyxDQUFDO2dCQUN2QyxNQUFNLGFBQWEsR0FBRyxjQUFjLEdBQUcsVUFBVSxDQUFDO2dCQUNsRCxJQUFJLFdBQW1CLENBQUM7Z0JBQ3hCLE1BQU0sT0FBTyxHQUFHLEVBQUUsQ0FBQztnQkFDbkIsSUFBSSxpQkFBaUIsSUFBSSxXQUFXLEVBQUU7b0JBQ25DLE1BQU0sU0FBUyxHQUFHLENBQUMsT0FBTyxHQUFHLFNBQVMsQ0FBQyxHQUFHLGNBQWMsQ0FBQztvQkFDekQsV0FBVyxHQUFHLGNBQWMsR0FBRyxPQUFPLEdBQUcsU0FBUyxDQUFDO2lCQUNyRDtxQkFBTSxJQUFJLG9CQUFvQixJQUFJLGFBQWEsRUFBRTtvQkFDL0MsTUFBTSxTQUFTLEdBQUcsQ0FBQyxTQUFTLEdBQUcsVUFBVSxDQUFDLEdBQUcsY0FBYyxDQUFDO29CQUM1RCxXQUFXLEdBQUcsY0FBYyxHQUFHLE9BQU8sR0FBRyxTQUFTLENBQUM7aUJBQ3JEO3FCQUFNO29CQUNKLE9BQU87aUJBQ1Q7Z0JBQ0QsV0FBVyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUM7Z0JBQzdELElBQUksV0FBVyxLQUFLLGNBQWMsRUFBRTtvQkFDakMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO29CQUM3QyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztvQkFDdEIsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO29CQUNwQixLQUFLLEdBQUcsVUFBVSxDQUFDLEdBQUcsRUFBRTt3QkFDckIsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7b0JBQzFCLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztpQkFDVjtZQUNKLENBQUMsQ0FBQyxDQUFDO1FBQ1QsQ0FBQyxDQUFDLENBQUM7SUFDTixDQUFDO0lBRU0sZUFBZTtRQUNuQixJQUFJLElBQUksQ0FBQyxzQkFBc0IsS0FBSyxTQUFTLEVBQUU7WUFDNUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQzVDO0lBQ0osQ0FBQzs7c0ZBbEhTLG1CQUFtQjt5RUFBbkIsbUJBQW1CLFdBQW5CLG1CQUFtQjt1RkFBbkIsbUJBQW1CO2NBRC9CLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBOZ1pvbmUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgZnJvbUV2ZW50LCBPYnNlcnZhYmxlLCBTdWJzY3JpcHRpb24gfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgZmlsdGVyLCB0aHJvdHRsZVRpbWUgfSBmcm9tIFwicnhqcy9vcGVyYXRvcnNcIjtcblxuZnVuY3Rpb24gZ2V0U2Nyb2xsUGFyZW50KGVsZW1lbnQ6IEhUTUxFbGVtZW50KTogSFRNTEVsZW1lbnQge1xuICAgY29uc3QgcmVnZXggPSAvKGF1dG98c2Nyb2xsKS87XG4gICBjb25zdCBwYXJlbnRzID0gKFxuICAgICAgX25vZGU6IEhUTUxFbGVtZW50IHwgbnVsbCxcbiAgICAgIHBhcmVudExpc3Q6IEFycmF5PEhUTUxFbGVtZW50PlxuICAgKTogQXJyYXk8SFRNTEVsZW1lbnQ+ID0+IHtcbiAgICAgIGlmIChfbm9kZSA9PT0gbnVsbCB8fCBfbm9kZS5wYXJlbnROb2RlID09PSBudWxsKSB7XG4gICAgICAgICByZXR1cm4gcGFyZW50TGlzdDtcbiAgICAgIH1cbiAgICAgIHJldHVybiBwYXJlbnRzKF9ub2RlLnBhcmVudEVsZW1lbnQsIHBhcmVudExpc3QuY29uY2F0KFtfbm9kZV0pKTtcbiAgIH07XG5cbiAgIGNvbnN0IHN0eWxlID0gKF9ub2RlOiBIVE1MRWxlbWVudCwgcHJvcDogc3RyaW5nKSA9PlxuICAgICAgZ2V0Q29tcHV0ZWRTdHlsZShfbm9kZSwgbnVsbCkuZ2V0UHJvcGVydHlWYWx1ZShwcm9wKTtcbiAgIGNvbnN0IG92ZXJmbG93ID0gKF9ub2RlOiBIVE1MRWxlbWVudCkgPT5cbiAgICAgIHN0eWxlKF9ub2RlLCBcIm92ZXJmbG93XCIpICtcbiAgICAgIHN0eWxlKF9ub2RlLCBcIm92ZXJmbG93LXlcIikgK1xuICAgICAgc3R5bGUoX25vZGUsIFwib3ZlcmZsb3cteFwiKTtcbiAgIGNvbnN0IHNjcm9sbCA9IChfbm9kZTogSFRNTEVsZW1lbnQpID0+IHJlZ2V4LnRlc3Qob3ZlcmZsb3coX25vZGUpKTtcblxuICAgY29uc3QgcGFyZW50TGlzdCA9IHBhcmVudHMoZWxlbWVudC5wYXJlbnRFbGVtZW50LCBbXSk7XG4gICBmb3IgKGNvbnN0IHBhcmVudCBvZiBwYXJlbnRMaXN0KSB7XG4gICAgICBpZiAoc2Nyb2xsKHBhcmVudCkpIHtcbiAgICAgICAgIHJldHVybiBwYXJlbnQ7XG4gICAgICB9XG4gICB9XG4gICByZXR1cm4gKFxuICAgICAgKGRvY3VtZW50LnNjcm9sbGluZ0VsZW1lbnQgYXMgSFRNTEVsZW1lbnQpID8/IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudFxuICAgKTtcbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEdsb2JhbEV2ZW50c1NlcnZpY2Uge1xuICAgcHJpdmF0ZSBnbG9iYWxEcmFnJDogT2JzZXJ2YWJsZTxEcmFnRXZlbnQ+IHwgdW5kZWZpbmVkO1xuICAgcHJpdmF0ZSBnbG9iYWxEcmFnU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gfCB1bmRlZmluZWQ7XG4gICBwdWJsaWMgc2Nyb2xsaW5nOiBib29sZWFuO1xuXG4gICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IG5nWm9uZTogTmdab25lKSB7XG4gICAgICB0aGlzLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAgICB0aGlzLmdsb2JhbERyYWckID0gZnJvbUV2ZW50PERyYWdFdmVudD4oZG9jdW1lbnQsIFwiZHJhZ1wiKTtcbiAgICAgIH0pO1xuICAgICAgdGhpcy5zY3JvbGxpbmcgPSBmYWxzZTtcbiAgIH1cblxuICAgcHVibGljIGFkZFNjcm9sbGluZygpIHtcbiAgICAgIHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgICAgIGlmICh0aGlzLmdsb2JhbERyYWdTdWJzY3JpcHRpb24gIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgfVxuICAgICAgICAgaWYgKHRoaXMuZ2xvYmFsRHJhZyQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiQ291bGQgbm90IGdldCBvYnNlcnZhYmxlXCIpO1xuICAgICAgICAgfVxuICAgICAgICAgbGV0IHZpZXdQb3J0SGVpZ2h0OiBudW1iZXI7XG4gICAgICAgICBsZXQgc2Nyb2xsQXJlYVNpemU6IG51bWJlcjtcbiAgICAgICAgIGxldCBlZGdlVG9wOiBudW1iZXI7XG4gICAgICAgICBsZXQgZWRnZUJvdHRvbTogbnVtYmVyO1xuICAgICAgICAgbGV0IGlzSW5Ub3BTY3JvbGxBcmVhOiBib29sZWFuO1xuICAgICAgICAgbGV0IGlzSW5Cb3R0b21TY3JvbGxBcmVhOiBib29sZWFuO1xuICAgICAgICAgbGV0IHRpbWVyOiBSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0PjtcbiAgICAgICAgIGxldCBzY3JvbGxhYmxlRGl2OiBIVE1MRWxlbWVudCB8IG51bGw7XG4gICAgICAgICBsZXQgcmVsYXRpdmVZOiBudW1iZXI7XG4gICAgICAgICB0aGlzLmdsb2JhbERyYWdTdWJzY3JpcHRpb24gPSB0aGlzLmdsb2JhbERyYWckXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgIHRocm90dGxlVGltZSgyNSksXG4gICAgICAgICAgICAgICBmaWx0ZXIoKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgICBpZiAoIWV2ZW50LnRhcmdldCkge1xuICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgc2Nyb2xsYWJsZURpdiA9IGdldFNjcm9sbFBhcmVudChldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQpO1xuICAgICAgICAgICAgICAgICAgdmlld1BvcnRIZWlnaHQgPSBzY3JvbGxhYmxlRGl2LmNsaWVudEhlaWdodDtcbiAgICAgICAgICAgICAgICAgIGNvbnN0IHZpZXdQb3J0V2lkdGggPSBzY3JvbGxhYmxlRGl2LmNsaWVudFdpZHRoO1xuICAgICAgICAgICAgICAgICAgbGV0IHJlbGF0aXZlWDogbnVtYmVyO1xuICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgd2luZG93XG4gICAgICAgICAgICAgICAgICAgICAgICAuZ2V0Q29tcHV0ZWRTdHlsZShzY3JvbGxhYmxlRGl2KVxuICAgICAgICAgICAgICAgICAgICAgICAgLmdldFByb3BlcnR5VmFsdWUoXCJwb3NpdGlvblwiKVxuICAgICAgICAgICAgICAgICAgICAgICAgLnRvTG93ZXJDYXNlKCkgPT09IFwiZml4ZWRcIlxuICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICByZWxhdGl2ZVggPSBldmVudC5jbGllbnRYO1xuICAgICAgICAgICAgICAgICAgICAgcmVsYXRpdmVZID0gZXZlbnQuY2xpZW50WTtcbiAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICBjb25zdCBib3VuZGluZ1JlY3QgPSBzY3JvbGxhYmxlRGl2LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc2Nyb2xsYWJsZURpdkFuY2VzdG9yID0gZ2V0U2Nyb2xsUGFyZW50KFxuICAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsYWJsZURpdlxuICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgIHJlbGF0aXZlWCA9XG4gICAgICAgICAgICAgICAgICAgICAgICBldmVudC5jbGllbnRYIC1cbiAgICAgICAgICAgICAgICAgICAgICAgIChib3VuZGluZ1JlY3QubGVmdCArIHNjcm9sbGFibGVEaXZBbmNlc3Rvci5zY3JvbGxMZWZ0KTtcbiAgICAgICAgICAgICAgICAgICAgIHJlbGF0aXZlWSA9XG4gICAgICAgICAgICAgICAgICAgICAgICBldmVudC5jbGllbnRZIC1cbiAgICAgICAgICAgICAgICAgICAgICAgIChib3VuZGluZ1JlY3QudG9wICsgc2Nyb2xsYWJsZURpdkFuY2VzdG9yLnNjcm9sbFRvcCk7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICByZWxhdGl2ZVggPCAwIHx8XG4gICAgICAgICAgICAgICAgICAgICByZWxhdGl2ZVggPiB2aWV3UG9ydFdpZHRoIHx8XG4gICAgICAgICAgICAgICAgICAgICByZWxhdGl2ZVkgPCAwIHx8XG4gICAgICAgICAgICAgICAgICAgICByZWxhdGl2ZVkgPiB2aWV3UG9ydEhlaWdodFxuICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAvL091dHNpZGUgb2Ygc2Nyb2xsYWJsZSBkaXZcbiAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIHNjcm9sbEFyZWFTaXplID0gTWF0aC5tYXgodmlld1BvcnRIZWlnaHQgKiAwLjEsIDEwMCk7XG4gICAgICAgICAgICAgICAgICBlZGdlVG9wID0gc2Nyb2xsQXJlYVNpemU7XG4gICAgICAgICAgICAgICAgICBlZGdlQm90dG9tID0gdmlld1BvcnRIZWlnaHQgLSBzY3JvbGxBcmVhU2l6ZTtcbiAgICAgICAgICAgICAgICAgIGlzSW5Ub3BTY3JvbGxBcmVhID0gcmVsYXRpdmVZIDwgZWRnZVRvcDtcbiAgICAgICAgICAgICAgICAgIGlzSW5Cb3R0b21TY3JvbGxBcmVhID0gcmVsYXRpdmVZID4gZWRnZUJvdHRvbTtcbiAgICAgICAgICAgICAgICAgIHJldHVybiBpc0luVG9wU2Nyb2xsQXJlYSB8fCBpc0luQm90dG9tU2Nyb2xsQXJlYTtcbiAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgIGlmIChzY3JvbGxhYmxlRGl2ID09PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICBjb25zdCBoZWlnaHQgPSBzY3JvbGxhYmxlRGl2LnNjcm9sbEhlaWdodDtcbiAgICAgICAgICAgICAgIGNvbnN0IG1heFNjcm9sbFkgPSBoZWlnaHQgLSB2aWV3UG9ydEhlaWdodDtcbiAgICAgICAgICAgICAgIGNvbnN0IGN1cnJlbnRTY3JvbGxZID0gc2Nyb2xsYWJsZURpdi5zY3JvbGxUb3A7XG4gICAgICAgICAgICAgICBjb25zdCBjYW5TY3JvbGxVcCA9IGN1cnJlbnRTY3JvbGxZID4gMDtcbiAgICAgICAgICAgICAgIGNvbnN0IGNhblNjcm9sbERvd24gPSBjdXJyZW50U2Nyb2xsWSA8IG1heFNjcm9sbFk7XG4gICAgICAgICAgICAgICBsZXQgbmV4dFNjcm9sbFk6IG51bWJlcjtcbiAgICAgICAgICAgICAgIGNvbnN0IG1heFN0ZXAgPSA3NTtcbiAgICAgICAgICAgICAgIGlmIChpc0luVG9wU2Nyb2xsQXJlYSAmJiBjYW5TY3JvbGxVcCkge1xuICAgICAgICAgICAgICAgICAgY29uc3QgaW50ZW5zaXR5ID0gKGVkZ2VUb3AgLSByZWxhdGl2ZVkpIC8gc2Nyb2xsQXJlYVNpemU7XG4gICAgICAgICAgICAgICAgICBuZXh0U2Nyb2xsWSA9IGN1cnJlbnRTY3JvbGxZIC0gbWF4U3RlcCAqIGludGVuc2l0eTtcbiAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoaXNJbkJvdHRvbVNjcm9sbEFyZWEgJiYgY2FuU2Nyb2xsRG93bikge1xuICAgICAgICAgICAgICAgICAgY29uc3QgaW50ZW5zaXR5ID0gKHJlbGF0aXZlWSAtIGVkZ2VCb3R0b20pIC8gc2Nyb2xsQXJlYVNpemU7XG4gICAgICAgICAgICAgICAgICBuZXh0U2Nyb2xsWSA9IGN1cnJlbnRTY3JvbGxZICsgbWF4U3RlcCAqIGludGVuc2l0eTtcbiAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICBuZXh0U2Nyb2xsWSA9IE1hdGgubWF4KDAsIE1hdGgubWluKG1heFNjcm9sbFksIG5leHRTY3JvbGxZKSk7XG4gICAgICAgICAgICAgICBpZiAobmV4dFNjcm9sbFkgIT09IGN1cnJlbnRTY3JvbGxZKSB7XG4gICAgICAgICAgICAgICAgICBzY3JvbGxhYmxlRGl2LnNjcm9sbFRvKHsgdG9wOiBuZXh0U2Nyb2xsWSB9KTtcbiAgICAgICAgICAgICAgICAgIHRoaXMuc2Nyb2xsaW5nID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgIGNsZWFyVGltZW91dCh0aW1lcik7XG4gICAgICAgICAgICAgICAgICB0aW1lciA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgdGhpcy5zY3JvbGxpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgIH0sIDEwMCk7XG4gICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgfVxuXG4gICBwdWJsaWMgcmVtb3ZlU2Nyb2xsaW5nKCkge1xuICAgICAgaWYgKHRoaXMuZ2xvYmFsRHJhZ1N1YnNjcmlwdGlvbiAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICB0aGlzLmdsb2JhbERyYWdTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgIH1cbiAgIH1cbn1cbiJdfQ==
|
|
@@ -71,4 +71,4 @@ export function suddenTreeExit(event) {
|
|
|
71
71
|
}
|
|
72
72
|
return false;
|
|
73
73
|
}
|
|
74
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2xpbWJsZS10cmVlL3NyYy9saWIvdXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQSxNQUFNLFVBQVUsY0FBYyxDQUMzQixNQUFzQixFQUN0QixNQUFzQjtJQUV0QixJQUFJLE1BQU0sQ0FBQyxNQUFNLEtBQUssTUFBTSxDQUFDLE1BQU0sRUFBRTtRQUNsQyxPQUFPLEtBQUssQ0FBQztLQUNmO0lBQ0QsS0FBSyxNQUFNLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLEVBQUUsRUFBRTtRQUM3QyxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDN0IsSUFBSSxNQUFNLFlBQVksS0FBSyxJQUFJLE1BQU0sWUFBWSxLQUFLLEVBQUU7WUFDckQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLEVBQUU7Z0JBQ2xDLE9BQU8sS0FBSyxDQUFDO2FBQ2Y7U0FDSDthQUFNLElBQUksTUFBTSxLQUFLLE1BQU0sRUFBRTtZQUMzQixPQUFPLEtBQUssQ0FBQztTQUNmO0tBQ0g7SUFDRCxPQUFPLElBQUksQ0FBQztBQUNmLENBQUM7QUFFRCxNQUFNLFVBQVUsbUJBQW1CLENBQ2hDLGlCQUF1QixFQUN2QixtQkFBeUI7SUFFekIsSUFBSSxpQkFBaUIsS0FBSyxtQkFBbUIsRUFBRTtRQUM1QyxPQUFPLElBQUksQ0FBQztLQUNkO0lBQ0QsSUFBSSxNQUFNLEdBQUcsbUJBQW1CLENBQUMsVUFBVSxDQUFDO0lBQzVDLE9BQU8sTUFBTSxLQUFLLFFBQVEsRUFBRTtRQUN6QixJQUFJLE1BQU0sS0FBSyxJQUFJLEVBQUU7WUFDbEIsbUZBQW1GO1lBQ25GLE9BQU8sU0FBUyxDQUFDO1NBQ25CO1FBQ0QsSUFBSSxNQUFNLEtBQUssaUJBQWlCLEVBQUU7WUFDL0IsT0FBTyxJQUFJLENBQUM7U0FDZDtRQUNELE1BQU0sR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDO0tBQzdCO0lBQ0QsT0FBTyxLQUFLLENBQUM7QUFDaEIsQ0FBQztBQUVELE1BQU0sVUFBVSxnQkFBZ0IsQ0FDN0IsT0FBMEIsRUFDMUIsUUFBeUI7SUFFekIsT0FBTyxDQUNKLE9BQU8sS0FBSyxTQUFTO1FBQ3JCLENBQUMsT0FBTyxDQUFDLFlBQVksS0FBSyxJQUFJO1lBQzNCLENBQUMsT0FBTyxPQUFPLENBQUMsWUFBWSxLQUFLLFVBQVU7Z0JBQ3hDLFFBQVEsS0FBSyxTQUFTO2dCQUN0QixPQUFPLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDLENBQ2pELENBQUM7QUFDTCxDQUFDO0FBRUQsTUFBTSxVQUFVLGlCQUFpQixDQUM5QixPQUEwQixFQUMxQixRQUF5QjtJQUV6QixPQUFPLENBQ0osT0FBTyxLQUFLLFNBQVM7UUFDckIsQ0FBQyxPQUFPLENBQUMsYUFBYSxLQUFLLElBQUk7WUFDNUIsQ0FBQyxPQUFPLE9BQU8sQ0FBQyxhQUFhLEtBQUssVUFBVTtnQkFDekMsUUFBUSxLQUFLLFNBQVM7Z0JBQ3RCLE9BQU8sQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FDbEQsQ0FBQztBQUNMLENBQUM7QUFFRCxNQUFNLFVBQVUsU0FBUztJQUN0QixPQUFPLFNBQVMsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0FBQ2xELENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILE1BQU0sVUFBVSxjQUFjLENBQUMsS0FBZ0I7SUFDNUMsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLElBQUksSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sWUFBWSxPQUFPLENBQUMsRUFBRTtRQUM5RCxNQUFNLElBQUksS0FBSyxDQUFDLG9DQUFvQyxDQUFDLENBQUM7S0FDeEQ7SUFDRCxNQUFNLGFBQWEsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQy9ELElBQUksYUFBYSxLQUFLLElBQUksRUFBRTtRQUN6QixPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMxQixNQUFNLElBQUksS0FBSyxDQUFDLDhCQUE4QixDQUFDLENBQUM7S0FDbEQ7SUFDRCxNQUFNLElBQUksR0FBRyxhQUFhLENBQUMscUJBQXFCLEVBQUUsQ0FBQztJQUNuRCxNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDO0lBQzlCLElBQUksT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLElBQUksT0FBTyxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUU7UUFDOUMsT0FBTyxJQUFJLENBQUM7S0FDZDtJQUNELE9BQU8sS0FBSyxDQUFDO0FBQ2hCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gICBMaW1ibGVUcmVlTm9kZSxcbiAgIFByb2Nlc3NlZE9wdGlvbnNcbn0gZnJvbSBcIi4vbGltYmxlLXRyZWUtcm9vdC90cmVlLnNlcnZpY2VcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIGFycmF5c0FyZUVxdWFsKFxuICAgYXJyYXkxOiBBcnJheTx1bmtub3duPixcbiAgIGFycmF5MjogQXJyYXk8dW5rbm93bj5cbik6IGJvb2xlYW4ge1xuICAgaWYgKGFycmF5MS5sZW5ndGggIT09IGFycmF5Mi5sZW5ndGgpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgIH1cbiAgIGZvciAoY29uc3QgW2luZGV4LCB2YWx1ZTFdIG9mIGFycmF5MS5lbnRyaWVzKCkpIHtcbiAgICAgIGNvbnN0IHZhbHVlMiA9IGFycmF5MltpbmRleF07XG4gICAgICBpZiAodmFsdWUxIGluc3RhbmNlb2YgQXJyYXkgJiYgdmFsdWUyIGluc3RhbmNlb2YgQXJyYXkpIHtcbiAgICAgICAgIGlmICghYXJyYXlzQXJlRXF1YWwodmFsdWUxLCB2YWx1ZTIpKSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICB9XG4gICAgICB9IGVsc2UgaWYgKHZhbHVlMSAhPT0gdmFsdWUyKSB7XG4gICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICB9XG4gICByZXR1cm4gdHJ1ZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzRWxlbWVudERlc2NlbmRhbnQoXG4gICBwb3RlbnRpYWxBbmNlc3RvcjogTm9kZSxcbiAgIHBvdGVudGlhbERlc2NlbmRhbnQ6IE5vZGVcbik6IGJvb2xlYW4gfCB1bmRlZmluZWQge1xuICAgaWYgKHBvdGVudGlhbEFuY2VzdG9yID09PSBwb3RlbnRpYWxEZXNjZW5kYW50KSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgIH1cbiAgIGxldCBjdXJzb3IgPSBwb3RlbnRpYWxEZXNjZW5kYW50LnBhcmVudE5vZGU7XG4gICB3aGlsZSAoY3Vyc29yICE9PSBkb2N1bWVudCkge1xuICAgICAgaWYgKGN1cnNvciA9PT0gbnVsbCkge1xuICAgICAgICAgLy9EaWQgbm90IHJlYWNoIGBkb2N1bWVudGAgb3IgYW5jZXN0b3IuIHBvdGVudGlhbERlc2NlbmRhbnQgaXMgbm90IHBhcnQgb2YgdGhlIERPTS5cbiAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICB9XG4gICAgICBpZiAoY3Vyc29yID09PSBwb3RlbnRpYWxBbmNlc3Rvcikge1xuICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG4gICAgICBjdXJzb3IgPSBjdXJzb3IucGFyZW50Tm9kZTtcbiAgIH1cbiAgIHJldHVybiBmYWxzZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzTmVzdGluZ0FsbG93ZWQoXG4gICBvcHRpb25zPzogUHJvY2Vzc2VkT3B0aW9ucyxcbiAgIG5vZGVEYXRhPzogTGltYmxlVHJlZU5vZGVcbik6IGJvb2xlYW4ge1xuICAgcmV0dXJuIChcbiAgICAgIG9wdGlvbnMgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgKG9wdGlvbnMuYWxsb3dOZXN0aW5nID09PSB0cnVlIHx8XG4gICAgICAgICAodHlwZW9mIG9wdGlvbnMuYWxsb3dOZXN0aW5nID09PSBcImZ1bmN0aW9uXCIgJiZcbiAgICAgICAgICAgIG5vZGVEYXRhICE9PSB1bmRlZmluZWQgJiZcbiAgICAgICAgICAgIG9wdGlvbnMuYWxsb3dOZXN0aW5nKG5vZGVEYXRhKSA9PT0gdHJ1ZSkpXG4gICApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNEcmFnZ2luZ0FsbG93ZWQoXG4gICBvcHRpb25zPzogUHJvY2Vzc2VkT3B0aW9ucyxcbiAgIG5vZGVEYXRhPzogTGltYmxlVHJlZU5vZGVcbik6IGJvb2xlYW4ge1xuICAgcmV0dXJuIChcbiAgICAgIG9wdGlvbnMgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgKG9wdGlvbnMuYWxsb3dEcmFnZ2luZyA9PT0gdHJ1ZSB8fFxuICAgICAgICAgKHR5cGVvZiBvcHRpb25zLmFsbG93RHJhZ2dpbmcgPT09IFwiZnVuY3Rpb25cIiAmJlxuICAgICAgICAgICAgbm9kZURhdGEgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgICAgICAgb3B0aW9ucy5hbGxvd0RyYWdnaW5nKG5vZGVEYXRhKSA9PT0gdHJ1ZSkpXG4gICApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNGaXJlZm94KCk6IGJvb2xlYW4ge1xuICAgcmV0dXJuIG5hdmlnYXRvci51c2VyQWdlbnQuaW5jbHVkZXMoXCJGaXJlZm94XCIpO1xufVxuXG4vKiogQmVjYXVzZSBkcm9wIHpvbmVzIGNhbiBkaXNhcHBlYXIgd2hlbiB0aGUgbW91c2UgbW92ZXMsIHNvbWV0aW1lc1xuICogbW92aW5nIHRoZSBtb3VzZSBqdXN0IGEgbGl0dGxlIGJpdCBpbnNpZGUgdGhlIHRyZWUgY2F1c2VzIHRoZSB0cmVlIHRvXG4gKiBzaHJpbmsgc3VjaCB0aGF0IHRoZSBtb3VzZSBpcyBubyBsb25nZXIgb3ZlciB0aGUgdHJlZS4gSW4gdGhpcyBjYXNlLFxuICogYSBkcmFnbGVhdmUgZXZlbnQgbWF5IG5vdCBmaXJlLCBhbmQgd2UgY2FuJ3QgY2xlYXIgdGhlIGRyb3Agem9uZXMuIFRoaXNcbiAqIGZ1bmN0aW9uIGlzIHVzZWQgdG8gY2F0Y2ggdGhpcyBlZGdlIGNhc2UuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzdWRkZW5UcmVlRXhpdChldmVudDogRHJhZ0V2ZW50KTogYm9vbGVhbiB7XG4gICBpZiAoZXZlbnQudGFyZ2V0ID09PSBudWxsIHx8ICEoZXZlbnQudGFyZ2V0IGluc3RhbmNlb2YgRWxlbWVudCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcImZhaWxlZCB0byBnZXQgZXZlbnQgdGFyZ2V0IGVsZW1lbnRcIik7XG4gICB9XG4gICBjb25zdCB0cmVlRXZlbnRIb3N0ID0gZXZlbnQudGFyZ2V0LmNsb3Nlc3QoXCIudHJlZS1ldmVudC1ob3N0XCIpO1xuICAgaWYgKHRyZWVFdmVudEhvc3QgPT09IG51bGwpIHtcbiAgICAgIGNvbnNvbGUubG9nKGV2ZW50LnRhcmdldCk7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJmYWlsZWQgdG8gZmluZCB0cmVlRXZlbnRIb3N0XCIpO1xuICAgfVxuICAgY29uc3QgcmVjdCA9IHRyZWVFdmVudEhvc3QuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICBjb25zdCBjbGllbnRZID0gZXZlbnQuY2xpZW50WTtcbiAgIGlmIChjbGllbnRZID4gcmVjdC5ib3R0b20gfHwgY2xpZW50WSA8IHJlY3QudG9wKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgIH1cbiAgIHJldHVybiBmYWxzZTtcbn1cbiJdfQ==
|
|
File without changes
|
|
@@ -3,4 +3,4 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export { LimbleTreeRootComponent } from "./lib/limble-tree-root/limble-tree-root.component";
|
|
5
5
|
export { LimbleTreeModule } from "./lib/limble-tree.module";
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2xpbWJsZS10cmVlL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBU0gsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDNUYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMEJBQTBCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIGxpbWJsZS10cmVlXG4gKi9cblxuZXhwb3J0IHtcbiAgIExpbWJsZVRyZWVOb2RlLFxuICAgTGltYmxlVHJlZURhdGEsXG4gICBMaW1ibGVUcmVlT3B0aW9ucyxcbiAgIENvbXBvbmVudE9iaixcbiAgIFRyZWVEcm9wXG59IGZyb20gXCIuL2xpYi9saW1ibGUtdHJlZS1yb290L3RyZWUuc2VydmljZVwiO1xuZXhwb3J0IHsgTGltYmxlVHJlZVJvb3RDb21wb25lbnQgfSBmcm9tIFwiLi9saWIvbGltYmxlLXRyZWUtcm9vdC9saW1ibGUtdHJlZS1yb290LmNvbXBvbmVudFwiO1xuZXhwb3J0IHsgTGltYmxlVHJlZU1vZHVsZSB9IGZyb20gXCIuL2xpYi9saW1ibGUtdHJlZS5tb2R1bGVcIjtcbiJdfQ==
|