@foblex/flow 12.3.7 → 12.5.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 +25 -9
- package/domain/emit-transform-changes/emit-transform-changes.execution.d.ts +11 -0
- package/domain/emit-transform-changes/emit-transform-changes.request.d.ts +2 -0
- package/domain/emit-transform-changes/index.d.ts +2 -0
- package/domain/get-external-nodes-rect/get-external-nodes-rect.execution.d.ts +14 -0
- package/domain/get-external-nodes-rect/get-external-nodes-rect.request.d.ts +2 -0
- package/domain/get-external-nodes-rect/index.d.ts +2 -0
- package/domain/get-nodes-rect/get-nodes-rect.execution.d.ts +2 -0
- package/domain/index.d.ts +3 -0
- package/domain/intersections/rounded-rect/rounded-rect.d.ts +1 -0
- package/domain/providers.d.ts +4 -1
- package/domain/subscribe-on-transform-changes/index.d.ts +2 -0
- package/domain/subscribe-on-transform-changes/subscribe-on-transform-changes.execution.d.ts +13 -0
- package/domain/subscribe-on-transform-changes/subscribe-on-transform-changes.request.d.ts +2 -0
- package/esm2022/domain/emit-transform-changes/emit-transform-changes.execution.mjs +25 -0
- package/esm2022/domain/emit-transform-changes/emit-transform-changes.request.mjs +3 -0
- package/esm2022/domain/emit-transform-changes/index.mjs +3 -0
- package/esm2022/domain/get-external-nodes-rect/get-external-nodes-rect.execution.mjs +35 -0
- package/esm2022/domain/get-external-nodes-rect/get-external-nodes-rect.request.mjs +3 -0
- package/esm2022/domain/get-external-nodes-rect/index.mjs +3 -0
- package/esm2022/domain/get-nodes-rect/get-nodes-rect.execution.mjs +8 -6
- package/esm2022/domain/index.mjs +4 -1
- package/esm2022/domain/intersections/rounded-rect/rounded-rect.mjs +31 -5
- package/esm2022/domain/providers.mjs +7 -1
- package/esm2022/domain/subscribe-on-transform-changes/index.mjs +3 -0
- package/esm2022/domain/subscribe-on-transform-changes/subscribe-on-transform-changes.execution.mjs +28 -0
- package/esm2022/domain/subscribe-on-transform-changes/subscribe-on-transform-changes.request.mjs +3 -0
- package/esm2022/f-canvas/f-canvas.component.mjs +5 -4
- package/esm2022/f-canvas/index.mjs +1 -2
- package/esm2022/f-canvas/providers.mjs +1 -3
- package/esm2022/f-connection/common/f-connection-base.mjs +2 -2
- package/esm2022/f-connection/common/f-drag-handle/f-connection-drag-handle.component.mjs +10 -2
- package/esm2022/f-connection/common/f-path/get-path-marker-id.mjs +2 -2
- package/esm2022/f-draggable/connections/create-connection/create-connection.drag-handler.mjs +1 -4
- package/esm2022/f-draggable/connections/reassign-connection/reassign-connection-preparation/reassign-connection-preparation.execution.mjs +4 -1
- package/esm2022/f-draggable/e-f-draggable-type.mjs +2 -2
- package/esm2022/f-draggable/external-item/external-item-preparation/external-item-preparation.execution.mjs +1 -1
- package/esm2022/f-draggable/f-draggable-base.mjs +4 -4
- package/esm2022/f-draggable/f-draggable.directive.mjs +44 -9
- package/esm2022/f-draggable/i-f-drag-and-drop-plugin.mjs +3 -0
- package/esm2022/f-draggable/index.mjs +2 -1
- package/esm2022/f-draggable/providers.mjs +4 -2
- package/esm2022/f-draggable/selection-area/selection-area.drag-handle.mjs +3 -1
- package/esm2022/f-draggable/single-select/single-select.validator.mjs +9 -5
- package/esm2022/f-flow/f-flow.component.mjs +8 -6
- package/esm2022/f-flow.module.mjs +17 -7
- package/esm2022/f-minimap/domain/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.execution.mjs +43 -0
- package/esm2022/f-minimap/domain/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.request.mjs +13 -0
- package/esm2022/f-minimap/domain/calculate-flow-point-from-minimap-point/index.mjs +3 -0
- package/esm2022/f-minimap/domain/f-minimap-data.mjs +12 -0
- package/esm2022/f-minimap/domain/f-minimap.drag-handler.mjs +43 -0
- package/esm2022/f-minimap/domain/index.mjs +7 -0
- package/esm2022/f-minimap/domain/minimap-drag-finalize/index.mjs +5 -0
- package/esm2022/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.execution.mjs +27 -0
- package/esm2022/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.request.mjs +7 -0
- package/esm2022/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.validator.mjs +26 -0
- package/esm2022/f-minimap/domain/minimap-drag-finalize/providers.mjs +7 -0
- package/esm2022/f-minimap/domain/minimap-drag-preparation/index.mjs +5 -0
- package/esm2022/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.execution.mjs +52 -0
- package/esm2022/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.request.mjs +9 -0
- package/esm2022/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.validator.mjs +30 -0
- package/esm2022/f-minimap/domain/minimap-drag-preparation/providers.mjs +7 -0
- package/esm2022/f-minimap/domain/providers.mjs +9 -0
- package/esm2022/f-minimap/f-minimap-canvas.directive.mjs +65 -0
- package/esm2022/f-minimap/f-minimap-flow.directive.mjs +78 -0
- package/esm2022/f-minimap/f-minimap-view.directive.mjs +40 -0
- package/esm2022/f-minimap/f-minimap.component.mjs +72 -0
- package/esm2022/f-minimap/index.mjs +7 -0
- package/esm2022/f-minimap/providers.mjs +11 -0
- package/esm2022/f-node/f-node.directive.mjs +12 -4
- package/esm2022/f-storage/f-components-store.mjs +1 -1
- package/esm2022/f-storage/f-transform-store.mjs +12 -0
- package/esm2022/f-storage/index.mjs +2 -1
- package/esm2022/f-zoom/f-zoom-base.mjs +97 -0
- package/esm2022/f-zoom/f-zoom.directive.mjs +59 -0
- package/esm2022/f-zoom/index.mjs +4 -0
- package/esm2022/f-zoom/providers.mjs +5 -0
- package/esm2022/infrastructure/pipeline/pipeline.mjs +1 -1
- package/esm2022/public-api.mjs +3 -1
- package/f-canvas/index.d.ts +0 -1
- package/f-canvas/providers.d.ts +1 -2
- package/f-connection/common/f-drag-handle/f-connection-drag-handle.component.d.ts +2 -1
- package/f-draggable/e-f-draggable-type.d.ts +1 -1
- package/f-draggable/f-draggable-base.d.ts +2 -2
- package/f-draggable/f-draggable.directive.d.ts +8 -4
- package/f-draggable/i-f-drag-and-drop-plugin.d.ts +9 -0
- package/f-draggable/index.d.ts +1 -0
- package/f-draggable/providers.d.ts +1 -1
- package/f-draggable/single-select/single-select.validator.d.ts +3 -1
- package/f-flow/f-flow.component.d.ts +1 -1
- package/f-flow.module.d.ts +12 -8
- package/f-minimap/domain/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.execution.d.ts +18 -0
- package/f-minimap/domain/calculate-flow-point-from-minimap-point/calculate-flow-point-from-minimap-point.request.d.ts +9 -0
- package/f-minimap/domain/calculate-flow-point-from-minimap-point/index.d.ts +2 -0
- package/f-minimap/domain/f-minimap-data.d.ts +7 -0
- package/f-minimap/domain/f-minimap.drag-handler.d.ts +21 -0
- package/f-minimap/domain/index.d.ts +6 -0
- package/f-minimap/domain/minimap-drag-finalize/index.d.ts +4 -0
- package/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.execution.d.ts +11 -0
- package/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.request.d.ts +5 -0
- package/f-minimap/domain/minimap-drag-finalize/minimap-drag-finalize.validator.d.ts +11 -0
- package/f-minimap/domain/minimap-drag-finalize/providers.d.ts +3 -0
- package/f-minimap/domain/minimap-drag-preparation/index.d.ts +4 -0
- package/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.execution.d.ts +17 -0
- package/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.request.d.ts +7 -0
- package/f-minimap/domain/minimap-drag-preparation/minimap-drag-preparation.validator.d.ts +13 -0
- package/f-minimap/domain/minimap-drag-preparation/providers.d.ts +3 -0
- package/f-minimap/domain/providers.d.ts +2 -0
- package/f-minimap/f-minimap-canvas.directive.d.ts +22 -0
- package/f-minimap/f-minimap-flow.directive.d.ts +28 -0
- package/f-minimap/f-minimap-view.directive.d.ts +14 -0
- package/f-minimap/f-minimap.component.d.ts +26 -0
- package/f-minimap/index.d.ts +6 -0
- package/f-minimap/providers.d.ts +5 -0
- package/f-node/f-node.directive.d.ts +4 -1
- package/f-storage/f-transform-store.d.ts +7 -0
- package/f-storage/index.d.ts +1 -0
- package/{f-canvas/f-zoom → f-zoom}/f-zoom-base.d.ts +1 -1
- package/{f-canvas/f-zoom → f-zoom}/f-zoom.directive.d.ts +1 -1
- package/{f-canvas/f-zoom → f-zoom}/index.d.ts +1 -0
- package/f-zoom/providers.d.ts +2 -0
- package/fesm2022/foblex-flow.mjs +3434 -2789
- package/fesm2022/foblex-flow.mjs.map +1 -1
- package/package.json +4 -4
- package/public-api.d.ts +2 -0
- package/esm2022/f-canvas/f-zoom/f-zoom-base.mjs +0 -95
- package/esm2022/f-canvas/f-zoom/f-zoom.directive.mjs +0 -59
- package/esm2022/f-canvas/f-zoom/index.mjs +0 -3
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Directive, EventEmitter, Inject, Input, Output } from "@angular/core";
|
|
1
|
+
import { ContentChildren, Directive, EventEmitter, Inject, Input, NgZone, Optional, Output } from "@angular/core";
|
|
2
2
|
import { F_DRAGGABLE, FDraggableBase } from './f-draggable-base';
|
|
3
3
|
import { Subscription } from 'rxjs';
|
|
4
4
|
import { ExternalItemPreparationRequest, ExternalItemFinalizeRequest } from './external-item';
|
|
@@ -7,11 +7,12 @@ import { NodeMoveFinalizeRequest, NodeMovePreparationRequest } from './node';
|
|
|
7
7
|
import { CanvasMoveFinalizeRequest, CanvasMovePreparationRequest } from './canvas';
|
|
8
8
|
import { DOCUMENT } from '@angular/common';
|
|
9
9
|
import { ReassignConnectionPreparationRequest, ReassignConnectionFinalizeRequest, CreateConnectionPreparationRequest, CreateConnectionFinalizeRequest } from './connections';
|
|
10
|
-
import { GetSelectionRequest } from '../domain';
|
|
10
|
+
import { EmitTransformChangesRequest, GetSelectionRequest } from '../domain';
|
|
11
11
|
import { isExternalItem } from '../f-external-item';
|
|
12
12
|
import { SingleSelectRequest } from './single-select';
|
|
13
13
|
import { NodeResizeFinalizeRequest, NodeResizePreparationRequest } from './node-resize';
|
|
14
14
|
import { SelectionAreaFinalizeRequest, SelectionAreaPreparationRequest } from './selection-area';
|
|
15
|
+
import { F_DRAG_AND_DROP_PLUGIN } from './i-f-drag-and-drop-plugin';
|
|
15
16
|
import * as i0 from "@angular/core";
|
|
16
17
|
import * as i1 from "./f-draggable-data-context";
|
|
17
18
|
import * as i2 from "../f-storage";
|
|
@@ -33,6 +34,7 @@ export class FDraggableDirective extends FDraggableBase {
|
|
|
33
34
|
fCreateNode = new EventEmitter();
|
|
34
35
|
fReassignConnection = new EventEmitter();
|
|
35
36
|
fCreateConnection = new EventEmitter();
|
|
37
|
+
plugins;
|
|
36
38
|
constructor(elementReference, fDraggableDataContext, ngZone, fComponentsStore, fMediator, doc) {
|
|
37
39
|
super(ngZone);
|
|
38
40
|
this.elementReference = elementReference;
|
|
@@ -50,6 +52,9 @@ export class FDraggableDirective extends FDraggableBase {
|
|
|
50
52
|
onPointerDown(event) {
|
|
51
53
|
this.fDraggableDataContext.reset();
|
|
52
54
|
let result = event.isMouseLeftButton();
|
|
55
|
+
this.plugins.forEach((p) => {
|
|
56
|
+
p.onPointerDown?.(event);
|
|
57
|
+
});
|
|
53
58
|
this.fMediator.send(new SingleSelectRequest(event));
|
|
54
59
|
this.fMediator.send(new ReassignConnectionPreparationRequest(event));
|
|
55
60
|
this.fMediator.send(new CreateConnectionPreparationRequest(event));
|
|
@@ -59,6 +64,9 @@ export class FDraggableDirective extends FDraggableBase {
|
|
|
59
64
|
return result;
|
|
60
65
|
}
|
|
61
66
|
prepareDragSequence(event) {
|
|
67
|
+
this.plugins.forEach((p) => {
|
|
68
|
+
p.prepareDragSequence?.(event);
|
|
69
|
+
});
|
|
62
70
|
this.fMediator.send(new SelectionAreaPreparationRequest(event));
|
|
63
71
|
this.fMediator.send(new NodeResizePreparationRequest(event));
|
|
64
72
|
this.fMediator.send(new NodeMovePreparationRequest(event));
|
|
@@ -73,12 +81,27 @@ export class FDraggableDirective extends FDraggableBase {
|
|
|
73
81
|
}
|
|
74
82
|
}
|
|
75
83
|
onSelect(event) {
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
84
|
+
this.plugins.forEach((p) => {
|
|
85
|
+
p.onSelect?.(event);
|
|
86
|
+
});
|
|
87
|
+
if (this.isTargetItemExternal(event)) {
|
|
79
88
|
event.preventDefault();
|
|
80
89
|
}
|
|
81
90
|
}
|
|
91
|
+
isTargetItemExternal(event) {
|
|
92
|
+
let isTargetItemExternal = this.isExternalItem(event.target);
|
|
93
|
+
let isTargetParentItemExternal = this.isExternalItem(event.target.parentNode);
|
|
94
|
+
return isTargetItemExternal || isTargetParentItemExternal;
|
|
95
|
+
}
|
|
96
|
+
isExternalItem(target) {
|
|
97
|
+
let result = false;
|
|
98
|
+
try {
|
|
99
|
+
result = isExternalItem(target);
|
|
100
|
+
}
|
|
101
|
+
catch (e) {
|
|
102
|
+
}
|
|
103
|
+
return result;
|
|
104
|
+
}
|
|
82
105
|
onPointerMove(event) {
|
|
83
106
|
const pointerPositionInCanvas = Point.fromPoint(event.getPosition()).elementTransform(this.hostElement);
|
|
84
107
|
const difference = pointerPositionInCanvas.div(this.fDraggableDataContext.onPointerDownScale).sub(this.fDraggableDataContext.onPointerDownPosition);
|
|
@@ -87,6 +110,9 @@ export class FDraggableDirective extends FDraggableBase {
|
|
|
87
110
|
});
|
|
88
111
|
}
|
|
89
112
|
onPointerUp(event) {
|
|
113
|
+
this.plugins.forEach((p) => {
|
|
114
|
+
p.onPointerUp?.(event);
|
|
115
|
+
});
|
|
90
116
|
this.fMediator.send(new ReassignConnectionFinalizeRequest(event));
|
|
91
117
|
this.fMediator.send(new CreateConnectionFinalizeRequest(event));
|
|
92
118
|
this.fMediator.send(new SelectionAreaFinalizeRequest(event));
|
|
@@ -106,15 +132,16 @@ export class FDraggableDirective extends FDraggableBase {
|
|
|
106
132
|
}
|
|
107
133
|
this.fSelectionChange.emit(this.fMediator.send(new GetSelectionRequest()));
|
|
108
134
|
this.fDraggableDataContext.isSelectedChanged = false;
|
|
135
|
+
this.fMediator.send(new EmitTransformChangesRequest());
|
|
109
136
|
}
|
|
110
137
|
ngOnDestroy() {
|
|
111
138
|
super.unsubscribe();
|
|
112
139
|
this.subscriptions$.unsubscribe();
|
|
113
140
|
}
|
|
114
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: FDraggableDirective, deps: [{ token: i0.ElementRef }, { token: i1.FDraggableDataContext }, { token:
|
|
141
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: FDraggableDirective, deps: [{ token: i0.ElementRef }, { token: i1.FDraggableDataContext }, { token: NgZone, optional: true }, { token: i2.FComponentsStore }, { token: i3.FFlowMediator }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Directive });
|
|
115
142
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.2", type: FDraggableDirective, selector: "f-flow[fDraggable]", inputs: { disabled: ["fDraggableDisabled", "disabled"] }, outputs: { fSelectionChange: "fSelectionChange", fCreateNode: "fCreateNode", fReassignConnection: "fReassignConnection", fCreateConnection: "fCreateConnection" }, providers: [
|
|
116
143
|
{ provide: F_DRAGGABLE, useExisting: FDraggableDirective }
|
|
117
|
-
], exportAs: ["fDraggable"], usesInheritance: true, ngImport: i0 });
|
|
144
|
+
], queries: [{ propertyName: "plugins", predicate: F_DRAG_AND_DROP_PLUGIN, descendants: true }], exportAs: ["fDraggable"], usesInheritance: true, ngImport: i0 });
|
|
118
145
|
}
|
|
119
146
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: FDraggableDirective, decorators: [{
|
|
120
147
|
type: Directive,
|
|
@@ -125,7 +152,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImpor
|
|
|
125
152
|
{ provide: F_DRAGGABLE, useExisting: FDraggableDirective }
|
|
126
153
|
]
|
|
127
154
|
}]
|
|
128
|
-
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.FDraggableDataContext }, { type:
|
|
155
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.FDraggableDataContext }, { type: undefined, decorators: [{
|
|
156
|
+
type: Inject,
|
|
157
|
+
args: [NgZone]
|
|
158
|
+
}, {
|
|
159
|
+
type: Optional
|
|
160
|
+
}] }, { type: i2.FComponentsStore }, { type: i3.FFlowMediator }, { type: Document, decorators: [{
|
|
129
161
|
type: Inject,
|
|
130
162
|
args: [DOCUMENT]
|
|
131
163
|
}] }], propDecorators: { disabled: [{
|
|
@@ -139,5 +171,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImpor
|
|
|
139
171
|
type: Output
|
|
140
172
|
}], fCreateConnection: [{
|
|
141
173
|
type: Output
|
|
174
|
+
}], plugins: [{
|
|
175
|
+
type: ContentChildren,
|
|
176
|
+
args: [F_DRAG_AND_DROP_PLUGIN, { descendants: true }]
|
|
142
177
|
}] } });
|
|
143
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1kcmFnZ2FibGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9mLWRyYWdnYWJsZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFFVCxZQUFZLEVBQUUsTUFBTSxFQUNwQixLQUFLLEVBR0csTUFBTSxFQUNmLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFHakUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNwQyxPQUFPLEVBQW9CLDhCQUE4QixFQUFFLDJCQUEyQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDaEgsT0FBTyxFQUFpQixLQUFLLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDcEQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLDBCQUEwQixFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQzdFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSw0QkFBNEIsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNuRixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUdMLG9DQUFvQyxFQUNwQyxpQ0FBaUMsRUFDakMsa0NBQWtDLEVBQ2xDLCtCQUErQixFQUNoQyxNQUFNLGVBQWUsQ0FBQztBQUd2QixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDaEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3RELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsK0JBQStC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QUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsY0FBYyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3BDLENBQUM7dUdBeElVLG1CQUFtQixvS0FnQ3BCLFFBQVE7MkZBaENQLG1CQUFtQiwwUUFKbkI7WUFDVCxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFO1NBQzNEOzsyRkFFVSxtQkFBbUI7a0JBUC9CLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG9CQUFvQjtvQkFDOUIsUUFBUSxFQUFFLFlBQVk7b0JBQ3RCLFNBQVMsRUFBRTt3QkFDVCxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsV0FBVyxxQkFBcUIsRUFBRTtxQkFDM0Q7aUJBQ0Y7OzBCQWlDSSxNQUFNOzJCQUFDLFFBQVE7eUNBM0JGLFFBQVE7c0JBRHZCLEtBQUs7dUJBQUMsb0JBQW9CO2dCQVFYLGdCQUFnQjtzQkFEL0IsTUFBTTtnQkFPUyxXQUFXO3NCQUQxQixNQUFNO2dCQUlTLG1CQUFtQjtzQkFEbEMsTUFBTTtnQkFJUyxpQkFBaUI7c0JBRGhDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlclZpZXdJbml0LFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlciwgSW5qZWN0LFxuICBJbnB1dCxcbiAgTmdab25lLFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCwgT3V0cHV0XG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBGX0RSQUdHQUJMRSwgRkRyYWdnYWJsZUJhc2UgfSBmcm9tICcuL2YtZHJhZ2dhYmxlLWJhc2UnO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBGRHJhZ2dhYmxlRGF0YUNvbnRleHQgfSBmcm9tICcuL2YtZHJhZ2dhYmxlLWRhdGEtY29udGV4dCc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEZDcmVhdGVOb2RlRXZlbnQsIEV4dGVybmFsSXRlbVByZXBhcmF0aW9uUmVxdWVzdCwgRXh0ZXJuYWxJdGVtRmluYWxpemVSZXF1ZXN0IH0gZnJvbSAnLi9leHRlcm5hbC1pdGVtJztcbmltcG9ydCB7IElQb2ludGVyRXZlbnQsIFBvaW50IH0gZnJvbSAnQGZvYmxleC9jb3JlJztcbmltcG9ydCB7IE5vZGVNb3ZlRmluYWxpemVSZXF1ZXN0LCBOb2RlTW92ZVByZXBhcmF0aW9uUmVxdWVzdCB9IGZyb20gJy4vbm9kZSc7XG5pbXBvcnQgeyBDYW52YXNNb3ZlRmluYWxpemVSZXF1ZXN0LCBDYW52YXNNb3ZlUHJlcGFyYXRpb25SZXF1ZXN0IH0gZnJvbSAnLi9jYW52YXMnO1xuaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgRkNyZWF0ZUNvbm5lY3Rpb25FdmVudCxcbiAgRlJlYXNzaWduQ29ubmVjdGlvbkV2ZW50LFxuICBSZWFzc2lnbkNvbm5lY3Rpb25QcmVwYXJhdGlvblJlcXVlc3QsXG4gIFJlYXNzaWduQ29ubmVjdGlvbkZpbmFsaXplUmVxdWVzdCxcbiAgQ3JlYXRlQ29ubmVjdGlvblByZXBhcmF0aW9uUmVxdWVzdCxcbiAgQ3JlYXRlQ29ubmVjdGlvbkZpbmFsaXplUmVxdWVzdFxufSBmcm9tICcuL2Nvbm5lY3Rpb25zJztcbmltcG9ydCB7IEZTZWxlY3Rpb25DaGFuZ2VFdmVudCB9IGZyb20gJy4vZi1zZWxlY3Rpb24tY2hhbmdlLWV2ZW50JztcbmltcG9ydCB7IEZGbG93TWVkaWF0b3IgfSBmcm9tICcuLi9pbmZyYXN0cnVjdHVyZSc7XG5pbXBvcnQgeyBHZXRTZWxlY3Rpb25SZXF1ZXN0IH0gZnJvbSAnLi4vZG9tYWluJztcbmltcG9ydCB7IGlzRXh0ZXJuYWxJdGVtIH0gZnJvbSAnLi4vZi1leHRlcm5hbC1pdGVtJztcbmltcG9ydCB7IFNpbmdsZVNlbGVjdFJlcXVlc3QgfSBmcm9tICcuL3NpbmdsZS1zZWxlY3QnO1xuaW1wb3J0IHsgTm9kZVJlc2l6ZUZpbmFsaXplUmVxdWVzdCwgTm9kZVJlc2l6ZVByZXBhcmF0aW9uUmVxdWVzdCB9IGZyb20gJy4vbm9kZS1yZXNpemUnO1xuaW1wb3J0IHsgU2VsZWN0aW9uQXJlYUZpbmFsaXplUmVxdWVzdCwgU2VsZWN0aW9uQXJlYVByZXBhcmF0aW9uUmVxdWVzdCB9IGZyb20gJy4vc2VsZWN0aW9uLWFyZWEnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6IFwiZi1mbG93W2ZEcmFnZ2FibGVdXCIsXG4gIGV4cG9ydEFzOiAnZkRyYWdnYWJsZScsXG4gIHByb3ZpZGVyczogW1xuICAgIHsgcHJvdmlkZTogRl9EUkFHR0FCTEUsIHVzZUV4aXN0aW5nOiBGRHJhZ2dhYmxlRGlyZWN0aXZlIH1cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBGRHJhZ2dhYmxlRGlyZWN0aXZlIGV4dGVuZHMgRkRyYWdnYWJsZUJhc2UgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG5cbiAgcHJpdmF0ZSBzdWJzY3JpcHRpb25zJDogU3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gIEBJbnB1dCgnZkRyYWdnYWJsZURpc2FibGVkJylcbiAgcHVibGljIG92ZXJyaWRlIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgcHVibGljIG92ZXJyaWRlIGdldCBob3N0RWxlbWVudCgpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZmVyZW5jZS5uYXRpdmVFbGVtZW50O1xuICB9XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBvdmVycmlkZSBmU2VsZWN0aW9uQ2hhbmdlOiBFdmVudEVtaXR0ZXI8RlNlbGVjdGlvbkNoYW5nZUV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8RlNlbGVjdGlvbkNoYW5nZUV2ZW50PigpO1xuXG4gIC8vIEBPdXRwdXQoKVxuICAvLyBwdWJsaWMgb3ZlcnJpZGUgZkNvbm5lY3Rpb25JbnRlcnNlY3ROb2RlOiBFdmVudEVtaXR0ZXI8Q29ubmVjdGlvbkludGVyc2VjdE5vZGVFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPENvbm5lY3Rpb25JbnRlcnNlY3ROb2RlRXZlbnQ+KCk7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBvdmVycmlkZSBmQ3JlYXRlTm9kZTogRXZlbnRFbWl0dGVyPEZDcmVhdGVOb2RlRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxGQ3JlYXRlTm9kZUV2ZW50PigpO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgb3ZlcnJpZGUgZlJlYXNzaWduQ29ubmVjdGlvbjogRXZlbnRFbWl0dGVyPEZSZWFzc2lnbkNvbm5lY3Rpb25FdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEZSZWFzc2lnbkNvbm5lY3Rpb25FdmVudD4oKTtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIG92ZXJyaWRlIGZDcmVhdGVDb25uZWN0aW9uOiBFdmVudEVtaXR0ZXI8RkNyZWF0ZUNvbm5lY3Rpb25FdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEZDcmVhdGVDb25uZWN0aW9uRXZlbnQ+KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBlbGVtZW50UmVmZXJlbmNlOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICBwcml2YXRlIGZEcmFnZ2FibGVEYXRhQ29udGV4dDogRkRyYWdnYWJsZURhdGFDb250ZXh0LFxuICAgIG5nWm9uZTogTmdab25lLFxuICAgIHByaXZhdGUgZkNvbXBvbmVudHNTdG9yZTogRkNvbXBvbmVudHNTdG9yZSxcbiAgICBwcml2YXRlIGZNZWRpYXRvcjogRkZsb3dNZWRpYXRvcixcbiAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIGRvYzogRG9jdW1lbnRcbiAgKSB7XG4gICAgc3VwZXIobmdab25lKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkRyYWdnYWJsZSA9IHRoaXM7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHN1cGVyLnN1YnNjcmliZSh0aGlzLmRvYyk7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgb25Qb2ludGVyRG93bihldmVudDogSVBvaW50ZXJFdmVudCk6IGJvb2xlYW4ge1xuICAgIHRoaXMuZkRyYWdnYWJsZURhdGFDb250ZXh0LnJlc2V0KCk7XG4gICAgbGV0IHJlc3VsdDogYm9vbGVhbiA9IGV2ZW50LmlzTW91c2VMZWZ0QnV0dG9uKCk7XG5cbiAgICB0aGlzLmZNZWRpYXRvci5zZW5kPHZvaWQ+KG5ldyBTaW5nbGVTZWxlY3RSZXF1ZXN0KGV2ZW50KSk7XG5cbiAgICB0aGlzLmZNZWRpYXRvci5zZW5kPHZvaWQ+KG5ldyBSZWFzc2lnbkNvbm5lY3Rpb25QcmVwYXJhdGlvblJlcXVlc3QoZXZlbnQpKTtcblxuICAgIHRoaXMuZk1lZGlhdG9yLnNlbmQ8dm9pZD4obmV3IENyZWF0ZUNvbm5lY3Rpb25QcmVwYXJhdGlvblJlcXVlc3QoZXZlbnQpKTtcblxuICAgIGlmICghcmVzdWx0KSB7XG4gICAgICB0aGlzLmZpbmFsaXplRHJhZ1NlcXVlbmNlKCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBwcmVwYXJlRHJhZ1NlcXVlbmNlKGV2ZW50OiBJUG9pbnRlckV2ZW50KSB7XG4gICAgdGhpcy5mTWVkaWF0b3Iuc2VuZDx2b2lkPihuZXcgU2VsZWN0aW9uQXJlYVByZXBhcmF0aW9uUmVxdWVzdChldmVudCkpO1xuXG4gICAgdGhpcy5mTWVkaWF0b3Iuc2VuZDx2b2lkPihuZXcgTm9kZVJlc2l6ZVByZXBhcmF0aW9uUmVxdWVzdChldmVudCkpO1xuXG4gICAgdGhpcy5mTWVkaWF0b3Iuc2VuZDx2b2lkPihuZXcgTm9kZU1vdmVQcmVwYXJhdGlvblJlcXVlc3QoZXZlbnQpKTtcblxuICAgIHRoaXMuZk1lZGlhdG9yLnNlbmQ8dm9pZD4obmV3IENhbnZhc01vdmVQcmVwYXJhdGlvblJlcXVlc3QoZXZlbnQpKTtcblxuICAgIHRoaXMuZk1lZGlhdG9yLnNlbmQ8dm9pZD4obmV3IEV4dGVybmFsSXRlbVByZXBhcmF0aW9uUmVxdWVzdChldmVudCkpO1xuXG4gICAgdGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQuZHJhZ2dhYmxlSXRlbXMuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgaXRlbS5pbml0aWFsaXplPy4oKTtcbiAgICB9KTtcblxuICAgIGlmICh0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5kcmFnZ2FibGVJdGVtcy5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLmhvc3RFbGVtZW50LmNsYXNzTGlzdC5hZGQoJ2YtZHJhZ2dpbmcnKTtcbiAgICAgIHRoaXMuZW1pdFNlbGVjdGlvbkNoYW5nZUV2ZW50KCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIG9uU2VsZWN0KGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IGlzVGFyZ2V0Tm90SHRtbCA9IGV2ZW50LmNvbnN0cnVjdG9yLm5hbWUgPT09ICdFdmVudCc7XG4gICAgY29uc3QgdGFyZ2V0ID0gaXNUYXJnZXROb3RIdG1sID8gKGV2ZW50LnRhcmdldCBhcyBOb2RlKS5wYXJlbnROb2RlIGFzIEhUTUxFbGVtZW50IDogZXZlbnQudGFyZ2V0O1xuICAgIGlmICh0YXJnZXQgJiYgaXNFeHRlcm5hbEl0ZW0odGFyZ2V0IGFzIEhUTUxFbGVtZW50KSkge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgb25Qb2ludGVyTW92ZShldmVudDogSVBvaW50ZXJFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IHBvaW50ZXJQb3NpdGlvbkluQ2FudmFzID0gUG9pbnQuZnJvbVBvaW50KGV2ZW50LmdldFBvc2l0aW9uKCkpLmVsZW1lbnRUcmFuc2Zvcm0odGhpcy5ob3N0RWxlbWVudCk7XG4gICAgY29uc3QgZGlmZmVyZW5jZSA9IHBvaW50ZXJQb3NpdGlvbkluQ2FudmFzLmRpdih0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5vblBvaW50ZXJEb3duU2NhbGUpLnN1Yih0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5vblBvaW50ZXJEb3duUG9zaXRpb24pO1xuICAgIHRoaXMuZkRyYWdnYWJsZURhdGFDb250ZXh0LmRyYWdnYWJsZUl0ZW1zLmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgIGl0ZW0ubW92ZShkaWZmZXJlbmNlKTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBvblBvaW50ZXJVcChldmVudDogSVBvaW50ZXJFdmVudCk6IHZvaWQge1xuICAgIHRoaXMuZk1lZGlhdG9yLnNlbmQ8dm9pZD4obmV3IFJlYXNzaWduQ29ubmVjdGlvbkZpbmFsaXplUmVxdWVzdChldmVudCkpO1xuXG4gICAgdGhpcy5mTWVkaWF0b3Iuc2VuZDx2b2lkPihuZXcgQ3JlYXRlQ29ubmVjdGlvbkZpbmFsaXplUmVxdWVzdChldmVudCkpO1xuXG4gICAgdGhpcy5mTWVkaWF0b3Iuc2VuZDx2b2lkPihuZXcgU2VsZWN0aW9uQXJlYUZpbmFsaXplUmVxdWVzdChldmVudCkpO1xuXG4gICAgdGhpcy5mTWVkaWF0b3Iuc2VuZDx2b2lkPihuZXcgTm9kZVJlc2l6ZUZpbmFsaXplUmVxdWVzdChldmVudCkpO1xuXG4gICAgdGhpcy5mTWVkaWF0b3Iuc2VuZDx2b2lkPihuZXcgTm9kZU1vdmVGaW5hbGl6ZVJlcXVlc3QoZXZlbnQpKTtcblxuICAgIHRoaXMuZk1lZGlhdG9yLnNlbmQ8dm9pZD4obmV3IENhbnZhc01vdmVGaW5hbGl6ZVJlcXVlc3QoZXZlbnQpKTtcblxuICAgIHRoaXMuZk1lZGlhdG9yLnNlbmQ8dm9pZD4obmV3IEV4dGVybmFsSXRlbUZpbmFsaXplUmVxdWVzdChldmVudCkpO1xuXG4gICAgdGhpcy5ob3N0RWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKCdmLWRyYWdnaW5nJyk7XG5cbiAgICB0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5yZXNldCgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGZpbmFsaXplRHJhZ1NlcXVlbmNlKCk6IHZvaWQge1xuICAgIHRoaXMuZW1pdFNlbGVjdGlvbkNoYW5nZUV2ZW50KCk7XG4gIH1cblxuICBwcml2YXRlIGVtaXRTZWxlY3Rpb25DaGFuZ2VFdmVudCgpOiB2b2lkIHtcbiAgICBpZiAoXG4gICAgICAhdGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQuaXNTZWxlY3RlZENoYW5nZWRcbiAgICApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5mU2VsZWN0aW9uQ2hhbmdlLmVtaXQodGhpcy5mTWVkaWF0b3Iuc2VuZDxGU2VsZWN0aW9uQ2hhbmdlRXZlbnQ+KG5ldyBHZXRTZWxlY3Rpb25SZXF1ZXN0KCkpKTtcbiAgICB0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5pc1NlbGVjdGVkQ2hhbmdlZCA9IGZhbHNlO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHN1cGVyLnVuc3Vic2NyaWJlKCk7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zJC51bnN1YnNjcmliZSgpO1xuICB9XG59XG5cbiJdfQ==
|
|
178
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1kcmFnZ2FibGUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9mLWRyYWdnYWJsZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNVLGVBQWUsRUFDOUIsU0FBUyxFQUVULFlBQVksRUFBRSxNQUFNLEVBQ3BCLEtBQUssRUFDTCxNQUFNLEVBRUUsUUFBUSxFQUFFLE1BQU0sRUFDekIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUdqRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BDLE9BQU8sRUFBb0IsOEJBQThCLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNoSCxPQUFPLEVBQWlCLEtBQUssRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNwRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDN0UsT0FBTyxFQUFFLHlCQUF5QixFQUFFLDRCQUE0QixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ25GLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBR0wsb0NBQW9DLEVBQ3BDLGlDQUFpQyxFQUNqQyxrQ0FBa0MsRUFDbEMsK0JBQStCLEVBQ2hDLE1BQU0sZUFBZSxDQUFDO0FBR3ZCLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUM3RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDcEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDdEQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLDRCQUE0QixFQUFFLE1BQU0s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QUFLLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNwQyxDQUFDO3VHQTNLVSxtQkFBbUIsaUZBZ0NwQixNQUFNLDBGQUdOLFFBQVE7MkZBbkNQLG1CQUFtQiwwUUFKbkI7WUFDVCxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFO1NBQzNELGtEQTRCZ0Isc0JBQXNCOzsyRkExQjVCLG1CQUFtQjtrQkFQL0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsb0JBQW9CO29CQUM5QixRQUFRLEVBQUUsWUFBWTtvQkFDdEIsU0FBUyxFQUFFO3dCQUNULEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxXQUFXLHFCQUFxQixFQUFFO3FCQUMzRDtpQkFDRjs7MEJBaUNJLE1BQU07MkJBQUMsTUFBTTs7MEJBQUcsUUFBUTs7MEJBR3hCLE1BQU07MkJBQUMsUUFBUTt5Q0E5QkYsUUFBUTtzQkFEdkIsS0FBSzt1QkFBQyxvQkFBb0I7Z0JBUVgsZ0JBQWdCO3NCQUQvQixNQUFNO2dCQU9TLFdBQVc7c0JBRDFCLE1BQU07Z0JBSVMsbUJBQW1CO3NCQURsQyxNQUFNO2dCQUlTLGlCQUFpQjtzQkFEaEMsTUFBTTtnQkFJQyxPQUFPO3NCQURkLGVBQWU7dUJBQUMsc0JBQXNCLEVBQUUsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCwgQ29udGVudENoaWxkcmVuLFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlciwgSW5qZWN0LFxuICBJbnB1dCxcbiAgTmdab25lLFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCwgT3B0aW9uYWwsIE91dHB1dCwgUXVlcnlMaXN0XG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBGX0RSQUdHQUJMRSwgRkRyYWdnYWJsZUJhc2UgfSBmcm9tICcuL2YtZHJhZ2dhYmxlLWJhc2UnO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBGRHJhZ2dhYmxlRGF0YUNvbnRleHQgfSBmcm9tICcuL2YtZHJhZ2dhYmxlLWRhdGEtY29udGV4dCc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEZDcmVhdGVOb2RlRXZlbnQsIEV4dGVybmFsSXRlbVByZXBhcmF0aW9uUmVxdWVzdCwgRXh0ZXJuYWxJdGVtRmluYWxpemVSZXF1ZXN0IH0gZnJvbSAnLi9leHRlcm5hbC1pdGVtJztcbmltcG9ydCB7IElQb2ludGVyRXZlbnQsIFBvaW50IH0gZnJvbSAnQGZvYmxleC9jb3JlJztcbmltcG9ydCB7IE5vZGVNb3ZlRmluYWxpemVSZXF1ZXN0LCBOb2RlTW92ZVByZXBhcmF0aW9uUmVxdWVzdCB9IGZyb20gJy4vbm9kZSc7XG5pbXBvcnQgeyBDYW52YXNNb3ZlRmluYWxpemVSZXF1ZXN0LCBDYW52YXNNb3ZlUHJlcGFyYXRpb25SZXF1ZXN0IH0gZnJvbSAnLi9jYW52YXMnO1xuaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgRkNyZWF0ZUNvbm5lY3Rpb25FdmVudCxcbiAgRlJlYXNzaWduQ29ubmVjdGlvbkV2ZW50LFxuICBSZWFzc2lnbkNvbm5lY3Rpb25QcmVwYXJhdGlvblJlcXVlc3QsXG4gIFJlYXNzaWduQ29ubmVjdGlvbkZpbmFsaXplUmVxdWVzdCxcbiAgQ3JlYXRlQ29ubmVjdGlvblByZXBhcmF0aW9uUmVxdWVzdCxcbiAgQ3JlYXRlQ29ubmVjdGlvbkZpbmFsaXplUmVxdWVzdFxufSBmcm9tICcuL2Nvbm5lY3Rpb25zJztcbmltcG9ydCB7IEZTZWxlY3Rpb25DaGFuZ2VFdmVudCB9IGZyb20gJy4vZi1zZWxlY3Rpb24tY2hhbmdlLWV2ZW50JztcbmltcG9ydCB7IEZGbG93TWVkaWF0b3IgfSBmcm9tICcuLi9pbmZyYXN0cnVjdHVyZSc7XG5pbXBvcnQgeyBFbWl0VHJhbnNmb3JtQ2hhbmdlc1JlcXVlc3QsIEdldFNlbGVjdGlvblJlcXVlc3QgfSBmcm9tICcuLi9kb21haW4nO1xuaW1wb3J0IHsgaXNFeHRlcm5hbEl0ZW0gfSBmcm9tICcuLi9mLWV4dGVybmFsLWl0ZW0nO1xuaW1wb3J0IHsgU2luZ2xlU2VsZWN0UmVxdWVzdCB9IGZyb20gJy4vc2luZ2xlLXNlbGVjdCc7XG5pbXBvcnQgeyBOb2RlUmVzaXplRmluYWxpemVSZXF1ZXN0LCBOb2RlUmVzaXplUHJlcGFyYXRpb25SZXF1ZXN0IH0gZnJvbSAnLi9ub2RlLXJlc2l6ZSc7XG5pbXBvcnQgeyBTZWxlY3Rpb25BcmVhRmluYWxpemVSZXF1ZXN0LCBTZWxlY3Rpb25BcmVhUHJlcGFyYXRpb25SZXF1ZXN0IH0gZnJvbSAnLi9zZWxlY3Rpb24tYXJlYSc7XG5pbXBvcnQgeyBJQ2FuUnVuT3V0c2lkZUFuZ3VsYXIgfSBmcm9tICcuL2ktY2FuLXJ1bi1vdXRzaWRlLWFuZ3VsYXInO1xuaW1wb3J0IHsgRl9EUkFHX0FORF9EUk9QX1BMVUdJTiwgSUZEcmFnQW5kRHJvcFBsdWdpbiB9IGZyb20gJy4vaS1mLWRyYWctYW5kLWRyb3AtcGx1Z2luJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiBcImYtZmxvd1tmRHJhZ2dhYmxlXVwiLFxuICBleHBvcnRBczogJ2ZEcmFnZ2FibGUnLFxuICBwcm92aWRlcnM6IFtcbiAgICB7IHByb3ZpZGU6IEZfRFJBR0dBQkxFLCB1c2VFeGlzdGluZzogRkRyYWdnYWJsZURpcmVjdGl2ZSB9XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgRkRyYWdnYWJsZURpcmVjdGl2ZSBleHRlbmRzIEZEcmFnZ2FibGVCYXNlIGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9ucyQ6IFN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcblxuICBASW5wdXQoJ2ZEcmFnZ2FibGVEaXNhYmxlZCcpXG4gIHB1YmxpYyBvdmVycmlkZSBkaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHB1YmxpYyBvdmVycmlkZSBnZXQgaG9zdEVsZW1lbnQoKTogSFRNTEVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWZlcmVuY2UubmF0aXZlRWxlbWVudDtcbiAgfVxuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgb3ZlcnJpZGUgZlNlbGVjdGlvbkNoYW5nZTogRXZlbnRFbWl0dGVyPEZTZWxlY3Rpb25DaGFuZ2VFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEZTZWxlY3Rpb25DaGFuZ2VFdmVudD4oKTtcblxuICAvLyBAT3V0cHV0KClcbiAgLy8gcHVibGljIG92ZXJyaWRlIGZDb25uZWN0aW9uSW50ZXJzZWN0Tm9kZTogRXZlbnRFbWl0dGVyPENvbm5lY3Rpb25JbnRlcnNlY3ROb2RlRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxDb25uZWN0aW9uSW50ZXJzZWN0Tm9kZUV2ZW50PigpO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgb3ZlcnJpZGUgZkNyZWF0ZU5vZGU6IEV2ZW50RW1pdHRlcjxGQ3JlYXRlTm9kZUV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8RkNyZWF0ZU5vZGVFdmVudD4oKTtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIG92ZXJyaWRlIGZSZWFzc2lnbkNvbm5lY3Rpb246IEV2ZW50RW1pdHRlcjxGUmVhc3NpZ25Db25uZWN0aW9uRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxGUmVhc3NpZ25Db25uZWN0aW9uRXZlbnQ+KCk7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBvdmVycmlkZSBmQ3JlYXRlQ29ubmVjdGlvbjogRXZlbnRFbWl0dGVyPEZDcmVhdGVDb25uZWN0aW9uRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxGQ3JlYXRlQ29ubmVjdGlvbkV2ZW50PigpO1xuXG4gIEBDb250ZW50Q2hpbGRyZW4oRl9EUkFHX0FORF9EUk9QX1BMVUdJTiwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KVxuICBwcml2YXRlIHBsdWdpbnMhOiBRdWVyeUxpc3Q8SUZEcmFnQW5kRHJvcFBsdWdpbj47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBlbGVtZW50UmVmZXJlbmNlOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICBwcml2YXRlIGZEcmFnZ2FibGVEYXRhQ29udGV4dDogRkRyYWdnYWJsZURhdGFDb250ZXh0LFxuICAgIEBJbmplY3QoTmdab25lKSBAT3B0aW9uYWwoKSBuZ1pvbmU6IElDYW5SdW5PdXRzaWRlQW5ndWxhcixcbiAgICBwcml2YXRlIGZDb21wb25lbnRzU3RvcmU6IEZDb21wb25lbnRzU3RvcmUsXG4gICAgcHJpdmF0ZSBmTWVkaWF0b3I6IEZGbG93TWVkaWF0b3IsXG4gICAgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSBkb2M6IERvY3VtZW50XG4gICkge1xuICAgIHN1cGVyKG5nWm9uZSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZEcmFnZ2FibGUgPSB0aGlzO1xuICB9XG5cbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICBzdXBlci5zdWJzY3JpYmUodGhpcy5kb2MpO1xuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIG9uUG9pbnRlckRvd24oZXZlbnQ6IElQb2ludGVyRXZlbnQpOiBib29sZWFuIHtcbiAgICB0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5yZXNldCgpO1xuICAgIGxldCByZXN1bHQ6IGJvb2xlYW4gPSBldmVudC5pc01vdXNlTGVmdEJ1dHRvbigpO1xuXG4gICAgdGhpcy5wbHVnaW5zLmZvckVhY2goKHApID0+IHtcbiAgICAgIHAub25Qb2ludGVyRG93bj8uKGV2ZW50KTtcbiAgICB9KTtcblxuICAgIHRoaXMuZk1lZGlhdG9yLnNlbmQ8dm9pZD4obmV3IFNpbmdsZVNlbGVjdFJlcXVlc3QoZXZlbnQpKTtcblxuICAgIHRoaXMuZk1lZGlhdG9yLnNlbmQ8dm9pZD4obmV3IFJlYXNzaWduQ29ubmVjdGlvblByZXBhcmF0aW9uUmVxdWVzdChldmVudCkpO1xuXG4gICAgdGhpcy5mTWVkaWF0b3Iuc2VuZDx2b2lkPihuZXcgQ3JlYXRlQ29ubmVjdGlvblByZXBhcmF0aW9uUmVxdWVzdChldmVudCkpO1xuXG4gICAgaWYgKCFyZXN1bHQpIHtcbiAgICAgIHRoaXMuZmluYWxpemVEcmFnU2VxdWVuY2UoKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBwcmVwYXJlRHJhZ1NlcXVlbmNlKGV2ZW50OiBJUG9pbnRlckV2ZW50KSB7XG5cbiAgICB0aGlzLnBsdWdpbnMuZm9yRWFjaCgocCkgPT4ge1xuICAgICAgcC5wcmVwYXJlRHJhZ1NlcXVlbmNlPy4oZXZlbnQpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5mTWVkaWF0b3Iuc2VuZDx2b2lkPihuZXcgU2VsZWN0aW9uQXJlYVByZXBhcmF0aW9uUmVxdWVzdChldmVudCkpO1xuXG4gICAgdGhpcy5mTWVkaWF0b3Iuc2VuZDx2b2lkPihuZXcgTm9kZVJlc2l6ZVByZXBhcmF0aW9uUmVxdWVzdChldmVudCkpO1xuXG4gICAgdGhpcy5mTWVkaWF0b3Iuc2VuZDx2b2lkPihuZXcgTm9kZU1vdmVQcmVwYXJhdGlvblJlcXVlc3QoZXZlbnQpKTtcblxuICAgIHRoaXMuZk1lZGlhdG9yLnNlbmQ8dm9pZD4obmV3IENhbnZhc01vdmVQcmVwYXJhdGlvblJlcXVlc3QoZXZlbnQpKTtcblxuICAgIHRoaXMuZk1lZGlhdG9yLnNlbmQ8dm9pZD4obmV3IEV4dGVybmFsSXRlbVByZXBhcmF0aW9uUmVxdWVzdChldmVudCkpO1xuXG4gICAgdGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQuZHJhZ2dhYmxlSXRlbXMuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgaXRlbS5pbml0aWFsaXplPy4oKTtcbiAgICB9KTtcblxuICAgIGlmICh0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5kcmFnZ2FibGVJdGVtcy5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLmhvc3RFbGVtZW50LmNsYXNzTGlzdC5hZGQoJ2YtZHJhZ2dpbmcnKTtcbiAgICAgIHRoaXMuZW1pdFNlbGVjdGlvbkNoYW5nZUV2ZW50KCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIG9uU2VsZWN0KGV2ZW50OiBFdmVudCk6IHZvaWQge1xuXG4gICAgdGhpcy5wbHVnaW5zLmZvckVhY2goKHApID0+IHtcbiAgICAgIHAub25TZWxlY3Q/LihldmVudCk7XG4gICAgfSk7XG5cbiAgICBpZiAodGhpcy5pc1RhcmdldEl0ZW1FeHRlcm5hbChldmVudCkpIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBpc1RhcmdldEl0ZW1FeHRlcm5hbChldmVudDogRXZlbnQpOiBib29sZWFuIHtcbiAgICBsZXQgaXNUYXJnZXRJdGVtRXh0ZXJuYWwgPSB0aGlzLmlzRXh0ZXJuYWxJdGVtKGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudCk7XG4gICAgbGV0IGlzVGFyZ2V0UGFyZW50SXRlbUV4dGVybmFsID0gdGhpcy5pc0V4dGVybmFsSXRlbSgoZXZlbnQudGFyZ2V0IGFzIE5vZGUpLnBhcmVudE5vZGUgYXMgSFRNTEVsZW1lbnQpO1xuICAgIHJldHVybiBpc1RhcmdldEl0ZW1FeHRlcm5hbCB8fCBpc1RhcmdldFBhcmVudEl0ZW1FeHRlcm5hbDtcbiAgfVxuXG4gIHByaXZhdGUgaXNFeHRlcm5hbEl0ZW0odGFyZ2V0OiBIVE1MRWxlbWVudCk6IGJvb2xlYW4ge1xuICAgIGxldCByZXN1bHQgPSBmYWxzZTtcbiAgICB0cnkge1xuICAgICAgcmVzdWx0ID0gaXNFeHRlcm5hbEl0ZW0odGFyZ2V0KTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBwdWJsaWMgb3ZlcnJpZGUgb25Qb2ludGVyTW92ZShldmVudDogSVBvaW50ZXJFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IHBvaW50ZXJQb3NpdGlvbkluQ2FudmFzID0gUG9pbnQuZnJvbVBvaW50KGV2ZW50LmdldFBvc2l0aW9uKCkpLmVsZW1lbnRUcmFuc2Zvcm0odGhpcy5ob3N0RWxlbWVudCk7XG4gICAgY29uc3QgZGlmZmVyZW5jZSA9IHBvaW50ZXJQb3NpdGlvbkluQ2FudmFzLmRpdih0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5vblBvaW50ZXJEb3duU2NhbGUpLnN1Yih0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5vblBvaW50ZXJEb3duUG9zaXRpb24pO1xuICAgIHRoaXMuZkRyYWdnYWJsZURhdGFDb250ZXh0LmRyYWdnYWJsZUl0ZW1zLmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgIGl0ZW0ubW92ZShkaWZmZXJlbmNlKTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBvdmVycmlkZSBvblBvaW50ZXJVcChldmVudDogSVBvaW50ZXJFdmVudCk6IHZvaWQge1xuXG4gICAgdGhpcy5wbHVnaW5zLmZvckVhY2goKHApID0+IHtcbiAgICAgIHAub25Qb2ludGVyVXA/LihldmVudCk7XG4gICAgfSk7XG5cbiAgICB0aGlzLmZNZWRpYXRvci5zZW5kPHZvaWQ+KG5ldyBSZWFzc2lnbkNvbm5lY3Rpb25GaW5hbGl6ZVJlcXVlc3QoZXZlbnQpKTtcblxuICAgIHRoaXMuZk1lZGlhdG9yLnNlbmQ8dm9pZD4obmV3IENyZWF0ZUNvbm5lY3Rpb25GaW5hbGl6ZVJlcXVlc3QoZXZlbnQpKTtcblxuICAgIHRoaXMuZk1lZGlhdG9yLnNlbmQ8dm9pZD4obmV3IFNlbGVjdGlvbkFyZWFGaW5hbGl6ZVJlcXVlc3QoZXZlbnQpKTtcblxuICAgIHRoaXMuZk1lZGlhdG9yLnNlbmQ8dm9pZD4obmV3IE5vZGVSZXNpemVGaW5hbGl6ZVJlcXVlc3QoZXZlbnQpKTtcblxuICAgIHRoaXMuZk1lZGlhdG9yLnNlbmQ8dm9pZD4obmV3IE5vZGVNb3ZlRmluYWxpemVSZXF1ZXN0KGV2ZW50KSk7XG5cbiAgICB0aGlzLmZNZWRpYXRvci5zZW5kPHZvaWQ+KG5ldyBDYW52YXNNb3ZlRmluYWxpemVSZXF1ZXN0KGV2ZW50KSk7XG5cbiAgICB0aGlzLmZNZWRpYXRvci5zZW5kPHZvaWQ+KG5ldyBFeHRlcm5hbEl0ZW1GaW5hbGl6ZVJlcXVlc3QoZXZlbnQpKTtcblxuICAgIHRoaXMuaG9zdEVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZSgnZi1kcmFnZ2luZycpO1xuXG4gICAgdGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQucmVzZXQoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBmaW5hbGl6ZURyYWdTZXF1ZW5jZSgpOiB2b2lkIHtcbiAgICB0aGlzLmVtaXRTZWxlY3Rpb25DaGFuZ2VFdmVudCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBlbWl0U2VsZWN0aW9uQ2hhbmdlRXZlbnQoKTogdm9pZCB7XG4gICAgaWYgKFxuICAgICAgIXRoaXMuZkRyYWdnYWJsZURhdGFDb250ZXh0LmlzU2VsZWN0ZWRDaGFuZ2VkXG4gICAgKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuZlNlbGVjdGlvbkNoYW5nZS5lbWl0KHRoaXMuZk1lZGlhdG9yLnNlbmQ8RlNlbGVjdGlvbkNoYW5nZUV2ZW50PihuZXcgR2V0U2VsZWN0aW9uUmVxdWVzdCgpKSk7XG4gICAgdGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQuaXNTZWxlY3RlZENoYW5nZWQgPSBmYWxzZTtcbiAgICB0aGlzLmZNZWRpYXRvci5zZW5kPHZvaWQ+KG5ldyBFbWl0VHJhbnNmb3JtQ2hhbmdlc1JlcXVlc3QoKSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgc3VwZXIudW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbnMkLnVuc3Vic2NyaWJlKCk7XG4gIH1cbn1cblxuIl19
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { InjectionToken } from '@angular/core';
|
|
2
|
+
export const F_DRAG_AND_DROP_PLUGIN = new InjectionToken('F_DRAG_AND_DROP_PLUGIN');
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS1mLWRyYWctYW5kLWRyb3AtcGx1Z2luLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9pLWYtZHJhZy1hbmQtZHJvcC1wbHVnaW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUvQyxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBd0MsSUFBSSxjQUFjLENBQXNCLHdCQUF3QixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJUG9pbnRlckV2ZW50IH0gZnJvbSAnQGZvYmxleC9jb3JlJztcbmltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCBjb25zdCBGX0RSQUdfQU5EX0RST1BfUExVR0lOOiBJbmplY3Rpb25Ub2tlbjxJRkRyYWdBbmREcm9wUGx1Z2luPiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxJRkRyYWdBbmREcm9wUGx1Z2luPignRl9EUkFHX0FORF9EUk9QX1BMVUdJTicpO1xuXG5leHBvcnQgaW50ZXJmYWNlIElGRHJhZ0FuZERyb3BQbHVnaW4ge1xuXG4gIG9uU2VsZWN0PyhldmVudDogRXZlbnQpOiB2b2lkO1xuXG4gIG9uUG9pbnRlckRvd24/KGV2ZW50OiBJUG9pbnRlckV2ZW50KTogdm9pZDtcblxuICBwcmVwYXJlRHJhZ1NlcXVlbmNlPyhldmVudDogSVBvaW50ZXJFdmVudCk6IHZvaWQ7XG5cbiAgb25Qb2ludGVyVXA/KGV2ZW50OiBJUG9pbnRlckV2ZW50KTogdm9pZDtcbn1cbiJdfQ==
|
|
@@ -11,6 +11,7 @@ export * from './f-draggable-base';
|
|
|
11
11
|
export * from './f-draggable-data-context';
|
|
12
12
|
export * from './f-selection-change-event';
|
|
13
13
|
export * from './i-can-run-outside-angular';
|
|
14
|
+
export * from './i-f-drag-and-drop-plugin';
|
|
14
15
|
export * from './i-draggable-item';
|
|
15
16
|
export * from './providers';
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsVUFBVSxDQUFDO0FBRXpCLGNBQWMsZUFBZSxDQUFDO0FBRTlCLGNBQWMsaUJBQWlCLENBQUM7QUFFaEMsY0FBYyxRQUFRLENBQUM7QUFFdkIsY0FBYyxlQUFlLENBQUM7QUFFOUIsY0FBYyxrQkFBa0IsQ0FBQztBQUVqQyxjQUFjLGlCQUFpQixDQUFDO0FBRWhDLGNBQWMsc0JBQXNCLENBQUM7QUFFckMsY0FBYyx5QkFBeUIsQ0FBQztBQUV4QyxjQUFjLG9CQUFvQixDQUFDO0FBRW5DLGNBQWMsNEJBQTRCLENBQUM7QUFFM0MsY0FBYyw0QkFBNEIsQ0FBQztBQUUzQyxjQUFjLDZCQUE2QixDQUFDO0FBRTVDLGNBQWMsNEJBQTRCLENBQUM7QUFFM0MsY0FBYyxvQkFBb0IsQ0FBQztBQUVuQyxjQUFjLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2FudmFzJztcblxuZXhwb3J0ICogZnJvbSAnLi9jb25uZWN0aW9ucyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZXh0ZXJuYWwtaXRlbSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbm9kZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vbm9kZS1yZXNpemUnO1xuXG5leHBvcnQgKiBmcm9tICcuL3NlbGVjdGlvbi1hcmVhJztcblxuZXhwb3J0ICogZnJvbSAnLi9zaW5nbGUtc2VsZWN0JztcblxuZXhwb3J0ICogZnJvbSAnLi9lLWYtZHJhZ2dhYmxlLXR5cGUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2YtZHJhZ2dhYmxlLmRpcmVjdGl2ZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1kcmFnZ2FibGUtYmFzZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1kcmFnZ2FibGUtZGF0YS1jb250ZXh0JztcblxuZXhwb3J0ICogZnJvbSAnLi9mLXNlbGVjdGlvbi1jaGFuZ2UtZXZlbnQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2ktY2FuLXJ1bi1vdXRzaWRlLWFuZ3VsYXInO1xuXG5leHBvcnQgKiBmcm9tICcuL2ktZi1kcmFnLWFuZC1kcm9wLXBsdWdpbic7XG5cbmV4cG9ydCAqIGZyb20gJy4vaS1kcmFnZ2FibGUtaXRlbSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vcHJvdmlkZXJzJztcblxuXG5cbiJdfQ==
|
|
@@ -5,6 +5,7 @@ import { EXTERNAL_ITEM_PROVIDERS } from './external-item';
|
|
|
5
5
|
import { NODE_PROVIDERS } from './node';
|
|
6
6
|
import { NODE_RESIZE_PROVIDERS } from './node-resize';
|
|
7
7
|
import { SELECTION_AREA_PROVIDERS } from './selection-area';
|
|
8
|
+
import { F_MINIMAP_DRAG_AND_DROP_PROVIDERS } from '../f-minimap/domain/providers';
|
|
8
9
|
export const F_DRAGGABLE_PROVIDERS = [
|
|
9
10
|
...CANVAS_PROVIDERS,
|
|
10
11
|
...CONNECTIONS_PROVIDERS,
|
|
@@ -12,6 +13,7 @@ export const F_DRAGGABLE_PROVIDERS = [
|
|
|
12
13
|
...EXTERNAL_ITEM_PROVIDERS,
|
|
13
14
|
...NODE_PROVIDERS,
|
|
14
15
|
...NODE_RESIZE_PROVIDERS,
|
|
15
|
-
...SELECTION_AREA_PROVIDERS
|
|
16
|
+
...SELECTION_AREA_PROVIDERS,
|
|
17
|
+
...F_MINIMAP_DRAG_AND_DROP_PROVIDERS
|
|
16
18
|
];
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9mLWRyYWdnYWJsZS9wcm92aWRlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM1RCxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUVsRixNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRztJQUVuQyxHQUFHLGdCQUFnQjtJQUVuQixHQUFHLHFCQUFxQjtJQUV4QixHQUFHLHVCQUF1QjtJQUUxQixHQUFHLHVCQUF1QjtJQUUxQixHQUFHLGNBQWM7SUFFakIsR0FBRyxxQkFBcUI7SUFFeEIsR0FBRyx3QkFBd0I7SUFFM0IsR0FBRyxpQ0FBaUM7Q0FDckMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENBTlZBU19QUk9WSURFUlMgfSBmcm9tICcuL2NhbnZhcyc7XG5pbXBvcnQgeyBDT05ORUNUSU9OU19QUk9WSURFUlMgfSBmcm9tICcuL2Nvbm5lY3Rpb25zJztcbmltcG9ydCB7IFNJTkdMRV9TRUxFQ1RfUFJPVklERVJTIH0gZnJvbSAnLi9zaW5nbGUtc2VsZWN0JztcbmltcG9ydCB7IEVYVEVSTkFMX0lURU1fUFJPVklERVJTIH0gZnJvbSAnLi9leHRlcm5hbC1pdGVtJztcbmltcG9ydCB7IE5PREVfUFJPVklERVJTIH0gZnJvbSAnLi9ub2RlJztcbmltcG9ydCB7IE5PREVfUkVTSVpFX1BST1ZJREVSUyB9IGZyb20gJy4vbm9kZS1yZXNpemUnO1xuaW1wb3J0IHsgU0VMRUNUSU9OX0FSRUFfUFJPVklERVJTIH0gZnJvbSAnLi9zZWxlY3Rpb24tYXJlYSc7XG5pbXBvcnQgeyBGX01JTklNQVBfRFJBR19BTkRfRFJPUF9QUk9WSURFUlMgfSBmcm9tICcuLi9mLW1pbmltYXAvZG9tYWluL3Byb3ZpZGVycyc7XG5cbmV4cG9ydCBjb25zdCBGX0RSQUdHQUJMRV9QUk9WSURFUlMgPSBbXG5cbiAgLi4uQ0FOVkFTX1BST1ZJREVSUyxcblxuICAuLi5DT05ORUNUSU9OU19QUk9WSURFUlMsXG5cbiAgLi4uU0lOR0xFX1NFTEVDVF9QUk9WSURFUlMsXG5cbiAgLi4uRVhURVJOQUxfSVRFTV9QUk9WSURFUlMsXG5cbiAgLi4uTk9ERV9QUk9WSURFUlMsXG5cbiAgLi4uTk9ERV9SRVNJWkVfUFJPVklERVJTLFxuXG4gIC4uLlNFTEVDVElPTl9BUkVBX1BST1ZJREVSUyxcblxuICAuLi5GX01JTklNQVBfRFJBR19BTkRfRFJPUF9QUk9WSURFUlNcbl07XG4iXX0=
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Point, RectExtensions } from '@foblex/core';
|
|
2
2
|
import { EFDraggableType } from '../e-f-draggable-type';
|
|
3
|
+
import { EmitTransformChangesRequest } from '../../domain';
|
|
3
4
|
import { GetCanBeSelectedItemsRequest } from '../../domain/get-can-be-selected-items/get-can-be-selected-items-request';
|
|
4
5
|
export class SelectionAreaDragHandle {
|
|
5
6
|
fComponentsStore;
|
|
@@ -43,6 +44,7 @@ export class SelectionAreaDragHandle {
|
|
|
43
44
|
this.selectedByMove.push(item.element);
|
|
44
45
|
}
|
|
45
46
|
});
|
|
47
|
+
this.fMediator.send(new EmitTransformChangesRequest());
|
|
46
48
|
}
|
|
47
49
|
complete() {
|
|
48
50
|
this.fDraggableDataContext.fSelectionArea?.hide();
|
|
@@ -52,4 +54,4 @@ export class SelectionAreaDragHandle {
|
|
|
52
54
|
}
|
|
53
55
|
}
|
|
54
56
|
}
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLWFyZWEuZHJhZy1oYW5kbGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL3NlbGVjdGlvbi1hcmVhL3NlbGVjdGlvbi1hcmVhLmRyYWctaGFuZGxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBVSxLQUFLLEVBQUUsY0FBYyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRTdELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUd4RCxPQUFPLEVBQUUsMkJBQTJCLEVBQXVCLE1BQU0sY0FBYyxDQUFDO0FBR2hGLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDBFQUEwRSxDQUFDO0FBRXhILE1BQU0sT0FBTyx1QkFBdUI7SUFhdEI7SUFDQTtJQUNBO0lBYkksSUFBSSxHQUFvQixlQUFlLENBQUMsU0FBUyxDQUFDO0lBRTFELGFBQWEsR0FBMEIsRUFBRSxDQUFDO0lBRTFDLGNBQWMsR0FBa0IsRUFBRSxDQUFDO0lBRTNDLElBQVksY0FBYztRQUN4QixPQUFPLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQVEsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFRLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ3pJLENBQUM7SUFFRCxZQUNZLGdCQUFrQyxFQUNsQyxxQkFBNEMsRUFDNUMsU0FBd0I7UUFGeEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQywwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FBQzVDLGNBQVMsR0FBVCxTQUFTLENBQWU7SUFFcEMsQ0FBQztJQUVNLFVBQVU7UUFDZixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElB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eHRlbnNpb25zIH0gZnJvbSAnQGZvYmxleC9jb3JlJztcbmltcG9ydCB7IElEcmFnZ2FibGVJdGVtIH0gZnJvbSAnLi4vaS1kcmFnZ2FibGUtaXRlbSc7XG5pbXBvcnQgeyBFRkRyYWdnYWJsZVR5cGUgfSBmcm9tICcuLi9lLWYtZHJhZ2dhYmxlLXR5cGUnO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uL2Ytc3RvcmFnZSc7XG5pbXBvcnQgeyBGRHJhZ2dhYmxlRGF0YUNvbnRleHQgfSBmcm9tICcuLi9mLWRyYWdnYWJsZS1kYXRhLWNvbnRleHQnO1xuaW1wb3J0IHsgRW1pdFRyYW5zZm9ybUNoYW5nZXNSZXF1ZXN0LCBJU2VsZWN0YWJsZVdpdGhSZWN0IH0gZnJvbSAnLi4vLi4vZG9tYWluJztcbmltcG9ydCB7IElTZWxlY3RhYmxlIH0gZnJvbSAnLi4vLi4vZi1jb25uZWN0aW9uJztcbmltcG9ydCB7IEZGbG93TWVkaWF0b3IgfSBmcm9tICcuLi8uLi9pbmZyYXN0cnVjdHVyZSc7XG5pbXBvcnQgeyBHZXRDYW5CZVNlbGVjdGVkSXRlbXNSZXF1ZXN0IH0gZnJvbSAnLi4vLi4vZG9tYWluL2dldC1jYW4tYmUtc2VsZWN0ZWQtaXRlbXMvZ2V0LWNhbi1iZS1zZWxlY3RlZC1pdGVtcy1yZXF1ZXN0JztcblxuZXhwb3J0IGNsYXNzIFNlbGVjdGlvbkFyZWFEcmFnSGFuZGxlIGltcGxlbWVudHMgSURyYWdnYWJsZUl0ZW0ge1xuXG4gIHB1YmxpYyByZWFkb25seSB0eXBlOiBFRkRyYWdnYWJsZVR5cGUgPSBFRkRyYWdnYWJsZVR5cGUuU0VMRUNUSU9OO1xuXG4gIHByaXZhdGUgY2FuQmVTZWxlY3RlZDogSVNlbGVjdGFibGVXaXRoUmVjdFtdID0gW107XG5cbiAgcHJpdmF0ZSBzZWxlY3RlZEJ5TW92ZTogSVNlbGVjdGFibGVbXSA9IFtdO1xuXG4gIHByaXZhdGUgZ2V0IGNhbnZhc1Bvc2l0aW9uKCk6IFBvaW50IHtcbiAgICByZXR1cm4gUG9pbnQuZnJvbVBvaW50KHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mQ2FudmFzIS50cmFuc2Zvcm0ucG9zaXRpb24pLmFkZCh0aGlzLmZDb21wb25lbnRzU3RvcmUuZkNhbnZhcyEudHJhbnNmb3JtLnNjYWxlZFBvc2l0aW9uKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlLFxuICAgICAgcHJpdmF0ZSBmRHJhZ2dhYmxlRGF0YUNvbnRleHQ6IEZEcmFnZ2FibGVEYXRhQ29udGV4dCxcbiAgICAgIHByaXZhdGUgZk1lZGlhdG9yOiBGRmxvd01lZGlhdG9yLFxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBpbml0aWFsaXplKCk6IHZvaWQge1xuICAgIHRoaXMuY2FuQmVTZWxlY3RlZCA9IHRoaXMuZk1lZGlhdG9yLnNlbmQobmV3IEdldENhbkJlU2VsZWN0ZWRJdGVtc1JlcXVlc3QoKSk7XG5cbiAgICB0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5mU2VsZWN0aW9uQXJlYT8uc2hvdygpO1xuICAgIHRoaXMuZkRyYWdnYWJsZURhdGFDb250ZXh0LmZTZWxlY3Rpb25BcmVhPy5kcmF3KHtcbiAgICAgIGxlZnQ6IHRoaXMuZkRyYWdnYWJsZURhdGFDb250ZXh0Lm9uUG9pbnRlckRvd25Qb3NpdGlvbi54LFxuICAgICAgdG9wOiB0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5vblBvaW50ZXJEb3duUG9zaXRpb24ueSxcbiAgICAgIHdpZHRoOiAwLFxuICAgICAgaGVpZ2h0OiAwXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgbW92ZShkaWZmZXJlbmNlOiBJUG9pbnQpOiB2b2lkIHtcbiAgICBjb25zdCBjdXJyZW50UG9pbnQgPSBQb2ludC5mcm9tUG9pbnQoZGlmZmVyZW5jZSkuYWRkKHRoaXMuZkRyYWdnYWJsZURhdGFDb250ZXh0Lm9uUG9pbnRlckRvd25Qb3NpdGlvbik7XG4gICAgY29uc3QgeDogbnVtYmVyID0gTWF0aC5taW4odGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQub25Qb2ludGVyRG93blBvc2l0aW9uLngsIGN1cnJlbnRQb2ludC54KTtcbiAgICBjb25zdCB5OiBudW1iZXIgPSBNYXRoLm1pbih0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5vblBvaW50ZXJEb3duUG9zaXRpb24ueSwgY3VycmVudFBvaW50LnkpO1xuXG4gICAgY29uc3Qgd2lkdGggPSBNYXRoLmFicyhkaWZmZXJlbmNlLngpO1xuICAgIGNvbnN0IGhlaWdodCA9IE1hdGguYWJzKGRpZmZlcmVuY2UueSk7XG5cbiAgICB0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5mU2VsZWN0aW9uQXJlYT8uZHJhdyh7IGxlZnQ6IHgsIHRvcDogeSwgd2lkdGgsIGhlaWdodCB9KTtcbiAgICB0aGlzLnNlbGVjdGVkQnlNb3ZlID0gW107XG4gICAgdGhpcy5jYW5CZVNlbGVjdGVkLmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgIGl0ZW0uZWxlbWVudC5kZXNlbGVjdCgpO1xuXG4gICAgICBjb25zdCBpdGVtUmVjdCA9IFJlY3RFeHRlbnNpb25zLmFkZFBvaW50KGl0ZW0ucmVjdCwgdGhpcy5jYW52YXNQb3NpdGlvbik7XG5cbiAgICAgIGNvbnN0IGlzSW50ZXJzZWN0ID0gUmVjdEV4dGVuc2lvbnMuaW50ZXJzZWN0aW9uV2l0aFJlY3QoaXRlbVJlY3QsIFJlY3RFeHRlbnNpb25zLmluaXRpYWxpemUoeCwgeSwgd2lkdGgsIGhlaWdodCkpO1xuICAgICAgaWYgKGlzSW50ZXJzZWN0KSB7XG5cbiAgICAgICAgaXRlbS5lbGVtZW50LnNlbGVjdCgpO1xuICAgICAgICB0aGlzLnNlbGVjdGVkQnlNb3ZlLnB1c2goaXRlbS5lbGVtZW50KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICB0aGlzLmZNZWRpYXRvci5zZW5kPHZvaWQ+KG5ldyBFbWl0VHJhbnNmb3JtQ2hhbmdlc1JlcXVlc3QoKSk7XG4gIH1cblxuICBwdWJsaWMgY29tcGxldGUoKTogdm9pZCB7XG4gICAgdGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQuZlNlbGVjdGlvbkFyZWE/LmhpZGUoKTtcbiAgICB0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5zZWxlY3RlZEl0ZW1zLnB1c2goLi4udGhpcy5zZWxlY3RlZEJ5TW92ZSk7XG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRCeU1vdmUubGVuZ3RoID4gMCkge1xuICAgICAgdGhpcy5mRHJhZ2dhYmxlRGF0YUNvbnRleHQuaXNTZWxlY3RlZENoYW5nZWQgPSB0cnVlO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -4,15 +4,19 @@ import { FValidatorRegister } from '../../infrastructure';
|
|
|
4
4
|
import { SingleSelectRequest } from './single-select.request';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
import * as i1 from "../../f-storage";
|
|
7
|
+
import * as i2 from "../f-draggable-data-context";
|
|
7
8
|
let SingleSelectValidator = class SingleSelectValidator {
|
|
8
9
|
fComponentsStore;
|
|
9
|
-
|
|
10
|
+
fDraggableDataContext;
|
|
11
|
+
constructor(fComponentsStore, fDraggableDataContext) {
|
|
10
12
|
this.fComponentsStore = fComponentsStore;
|
|
13
|
+
this.fDraggableDataContext = fDraggableDataContext;
|
|
11
14
|
}
|
|
12
15
|
handle(request) {
|
|
13
|
-
return this.fComponentsStore.fFlow.hostElement.contains(request.event.targetElement)
|
|
16
|
+
return this.fComponentsStore.fFlow.hostElement.contains(request.event.targetElement)
|
|
17
|
+
&& !this.fDraggableDataContext.draggableItems.length;
|
|
14
18
|
}
|
|
15
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SingleSelectValidator, deps: [{ token: i1.FComponentsStore }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
19
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SingleSelectValidator, deps: [{ token: i1.FComponentsStore }, { token: i2.FDraggableDataContext }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
16
20
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SingleSelectValidator });
|
|
17
21
|
};
|
|
18
22
|
SingleSelectValidator = __decorate([
|
|
@@ -21,5 +25,5 @@ SingleSelectValidator = __decorate([
|
|
|
21
25
|
export { SingleSelectValidator };
|
|
22
26
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: SingleSelectValidator, decorators: [{
|
|
23
27
|
type: Injectable
|
|
24
|
-
}], ctorParameters: () => [{ type: i1.FComponentsStore }] });
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
}], ctorParameters: () => [{ type: i1.FComponentsStore }, { type: i2.FDraggableDataContext }] });
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2luZ2xlLXNlbGVjdC52YWxpZGF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZHJhZ2dhYmxlL3NpbmdsZS1zZWxlY3Qvc2luZ2xlLXNlbGVjdC52YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGtCQUFrQixFQUFjLE1BQU0sc0JBQXNCLENBQUM7QUFDdEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7QUFNdkQsSUFBTSxxQkFBcUIsR0FBM0IsTUFBTSxxQkFBcUI7SUFHdEI7SUFDQTtJQUZWLFlBQ1UsZ0JBQWtDLEVBQ2xDLHFCQUE0QztRQUQ1QyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBdUI7SUFFdEQsQ0FBQztJQUVNLE1BQU0sQ0FBQyxPQUE0QjtRQUN4QyxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFNLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQztlQUNoRixDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDO0lBQ3pELENBQUM7dUdBWFUscUJBQXFCOzJHQUFyQixxQkFBcUI7O0FBQXJCLHFCQUFxQjtJQURqQyxrQkFBa0IsQ0FBQyxtQkFBbUIsQ0FBQztHQUMzQixxQkFBcUIsQ0FZakM7OzJGQVpZLHFCQUFxQjtrQkFGakMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZWYWxpZGF0b3JSZWdpc3RlciwgSVZhbGlkYXRvciB9IGZyb20gJy4uLy4uL2luZnJhc3RydWN0dXJlJztcbmltcG9ydCB7IFNpbmdsZVNlbGVjdFJlcXVlc3QgfSBmcm9tICcuL3NpbmdsZS1zZWxlY3QucmVxdWVzdCc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7IEZEcmFnZ2FibGVEYXRhQ29udGV4dCB9IGZyb20gJy4uL2YtZHJhZ2dhYmxlLWRhdGEtY29udGV4dCc7XG5cbkBJbmplY3RhYmxlKClcbkBGVmFsaWRhdG9yUmVnaXN0ZXIoU2luZ2xlU2VsZWN0UmVxdWVzdClcbmV4cG9ydCBjbGFzcyBTaW5nbGVTZWxlY3RWYWxpZGF0b3IgaW1wbGVtZW50cyBJVmFsaWRhdG9yPFNpbmdsZVNlbGVjdFJlcXVlc3Q+IHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGZDb21wb25lbnRzU3RvcmU6IEZDb21wb25lbnRzU3RvcmUsXG4gICAgcHJpdmF0ZSBmRHJhZ2dhYmxlRGF0YUNvbnRleHQ6IEZEcmFnZ2FibGVEYXRhQ29udGV4dFxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUocmVxdWVzdDogU2luZ2xlU2VsZWN0UmVxdWVzdCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkZsb3chLmhvc3RFbGVtZW50LmNvbnRhaW5zKHJlcXVlc3QuZXZlbnQudGFyZ2V0RWxlbWVudClcbiAgICAgICYmICF0aGlzLmZEcmFnZ2FibGVEYXRhQ29udGV4dC5kcmFnZ2FibGVJdGVtcy5sZW5ndGg7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
2
|
import { F_FLOW, FFlowBase } from './f-flow-base';
|
|
3
3
|
import { debounceTime, startWith, Subscription } from 'rxjs';
|
|
4
|
-
import { ClearSelectionRequest, COMMON_PROVIDERS,
|
|
4
|
+
import { ClearSelectionRequest, COMMON_PROVIDERS, GetExternalNodesRectRequest, GetPositionInFlowRequest, GetSelectionRequest, RedrawConnectionsRequest, SelectAllRequest, SelectRequest, } from '../domain';
|
|
5
5
|
import { FFlowMediator } from '../infrastructure';
|
|
6
6
|
import { F_DRAGGABLE_PROVIDERS, FDraggableDataContext } from '../f-draggable';
|
|
7
7
|
import { FConnectionFactory } from '../f-connection';
|
|
8
|
-
import { FComponentsStore } from '../f-storage';
|
|
8
|
+
import { FComponentsStore, FTransformStore } from '../f-storage';
|
|
9
9
|
import * as i0 from "@angular/core";
|
|
10
10
|
import * as i1 from "../f-storage";
|
|
11
11
|
import * as i2 from "../infrastructure";
|
|
@@ -49,7 +49,7 @@ export class FFlowComponent extends FFlowBase {
|
|
|
49
49
|
this.isLoaded = false;
|
|
50
50
|
}
|
|
51
51
|
getNodesRect() {
|
|
52
|
-
return this.fMediator.send(new
|
|
52
|
+
return this.fMediator.send(new GetExternalNodesRectRequest());
|
|
53
53
|
}
|
|
54
54
|
getSelection() {
|
|
55
55
|
return this.fMediator.send(new GetSelectionRequest());
|
|
@@ -73,12 +73,13 @@ export class FFlowComponent extends FFlowBase {
|
|
|
73
73
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.2", type: FFlowComponent, selector: "f-flow", inputs: { fFlowId: "fFlowId" }, outputs: { fLoaded: "fLoaded" }, host: { properties: { "attr.id": "fFlowId" }, classAttribute: "f-component f-flow" }, providers: [
|
|
74
74
|
FFlowMediator,
|
|
75
75
|
FComponentsStore,
|
|
76
|
+
FTransformStore,
|
|
76
77
|
FDraggableDataContext,
|
|
77
78
|
FConnectionFactory,
|
|
78
79
|
...F_DRAGGABLE_PROVIDERS,
|
|
79
80
|
...COMMON_PROVIDERS,
|
|
80
81
|
{ provide: F_FLOW, useExisting: FFlowComponent },
|
|
81
|
-
], usesInheritance: true, ngImport: i0, template: "<ng-container>\n <ng-content select=\"[fDefinitions]\"></ng-content>\n\n <ng-content select=\"f-background\"></ng-content>\n\n <ng-content select=\"f-line-alignment\"></ng-content>\n\n <ng-content select=\"f-canvas\"></ng-content>\n\n <ng-content select=\"f-selection-area\"></ng-content>\n\n <ng-content select=\"f-
|
|
82
|
+
], usesInheritance: true, ngImport: i0, template: "<ng-container>\n <ng-content select=\"[fDefinitions]\"></ng-content>\n\n <ng-content select=\"f-background\"></ng-content>\n\n <ng-content select=\"f-line-alignment\"></ng-content>\n\n <ng-content select=\"f-canvas\"></ng-content>\n\n <ng-content select=\"f-selection-area\"></ng-content>\n\n <ng-content select=\"f-minimap\"></ng-content>\n</ng-container>\n", styles: [":host{display:block;position:relative;width:100%;height:100%;overflow:hidden;pointer-events:all;-webkit-user-select:none;user-select:none;touch-action:none}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
82
83
|
}
|
|
83
84
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: FFlowComponent, decorators: [{
|
|
84
85
|
type: Component,
|
|
@@ -88,15 +89,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImpor
|
|
|
88
89
|
}, providers: [
|
|
89
90
|
FFlowMediator,
|
|
90
91
|
FComponentsStore,
|
|
92
|
+
FTransformStore,
|
|
91
93
|
FDraggableDataContext,
|
|
92
94
|
FConnectionFactory,
|
|
93
95
|
...F_DRAGGABLE_PROVIDERS,
|
|
94
96
|
...COMMON_PROVIDERS,
|
|
95
97
|
{ provide: F_FLOW, useExisting: FFlowComponent },
|
|
96
|
-
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container>\n <ng-content select=\"[fDefinitions]\"></ng-content>\n\n <ng-content select=\"f-background\"></ng-content>\n\n <ng-content select=\"f-line-alignment\"></ng-content>\n\n <ng-content select=\"f-canvas\"></ng-content>\n\n <ng-content select=\"f-selection-area\"></ng-content>\n\n <ng-content select=\"f-
|
|
98
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container>\n <ng-content select=\"[fDefinitions]\"></ng-content>\n\n <ng-content select=\"f-background\"></ng-content>\n\n <ng-content select=\"f-line-alignment\"></ng-content>\n\n <ng-content select=\"f-canvas\"></ng-content>\n\n <ng-content select=\"f-selection-area\"></ng-content>\n\n <ng-content select=\"f-minimap\"></ng-content>\n</ng-container>\n", styles: [":host{display:block;position:relative;width:100%;height:100%;overflow:hidden;pointer-events:all;-webkit-user-select:none;user-select:none;touch-action:none}\n"] }]
|
|
97
99
|
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.FComponentsStore }, { type: i2.FFlowMediator }], propDecorators: { fFlowId: [{
|
|
98
100
|
type: Input
|
|
99
101
|
}], fLoaded: [{
|
|
100
102
|
type: Output
|
|
101
103
|
}] } });
|
|
102
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
104
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1mbG93LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1mbG93L2YtZmxvdy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2YtZmxvdy9mLWZsb3cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUN2QixTQUFTLEVBQWMsWUFBWSxFQUNuQyxLQUFLLEVBQXFCLE1BQU0sRUFDakMsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzdELE9BQU8sRUFDTCxxQkFBcUIsRUFDckIsZ0JBQWdCLEVBQUUsMkJBQTJCLEVBQUUsd0JBQXdCLEVBQ3ZFLG1CQUFtQixFQUNuQix3QkFBd0IsRUFDeEIsZ0JBQWdCLEVBQUUsYUFBYSxHQUNoQyxNQUFNLFdBQVcsQ0FBQztBQUVuQixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbEQsT0FBTyxFQUNMLHFCQUFxQixFQUNyQixxQkFBcUIsRUFDdEIsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxFQUFFLE1BQU0sY0FBYyxDQUFDOzs7O0FBRWpFLElBQUksUUFBUSxHQUFXLENBQUMsQ0FBQztBQXNCekIsTUFBTSxPQUFPLGNBQWUsU0FBUSxTQUFTO0lBaUJqQztJQUNBO0lBQ0E7SUFqQkYsYUFBYSxHQUFpQixJQUFJLFlBQVksRUFBRSxDQUFDO0lBR3pDLE9BQU8sR0FBVyxVQUFXLFFBQVEsRUFBRyxFQUFFLENBQUM7SUFFM0QsSUFBb0IsV0FBVztRQUM3QixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUM7SUFDN0MsQ0FBQztJQUdlLE9BQU8sR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztJQUUvRCxRQUFRLEdBQVksS0FBSyxDQUFDO0lBRWxDLFlBQ1UsZ0JBQXlDLEVBQ3pDLGdCQUFrQyxFQUNsQyxTQUF3QjtRQUVoQyxLQUFLLEVBQUUsQ0FBQztRQUpBLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBeUI7UUFDekMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxjQUFTLEdBQVQsU0FBUyxDQUFlO0lBR2xDLENBQUM7SUFFTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7SUFDckMsQ0FBQztJQUVNLGtCQUFrQjtRQUN2QixJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FDcEIsSUFBSSxDQUFDLDBCQUEwQixFQUFFLENBQ2xDLENBQUM7SUFDSixDQUFDO0lBRU8sMEJBQTBCO1FBQ2hDLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLFlBQVksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDMUYsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSx3QkFBd0IsRUFBRSxDQUFDLENBQUM7WUFFcEQsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDbkIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7Z0JBQ3JCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDdEIsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLE1BQU07UUFDWCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3ZDLENBQUM7SUFFTSxLQUFLO1FBQ1YsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7SUFDeEIsQ0FBQztJQUVNLFlBQVk7UUFDakIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBUSxJQUFJLDJCQUEyQixFQUFFLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRU0sWUFBWTtRQUNqQixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUF3QixJQUFJLG1CQUFtQixFQUFFLENBQUMsQ0FBQztJQUMvRSxDQUFDO0lBRU0saUJBQWlCLENBQUMsUUFBZ0I7UUFDdkMsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLHdCQUF3QixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDckUsQ0FBQztJQUVNLFNBQVM7UUFDZCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBTyxJQUFJLGdCQUFnQixFQUFFLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBRU0sTUFBTSxDQUFDLEtBQWUsRUFBRSxXQUFxQjtRQUNsRCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBTyxJQUFJLGFBQWEsQ0FBQyxLQUFLLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRU0sY0FBYztRQUNuQixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBTyxJQUFJLHFCQUFxQixFQUFFLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ25DLENBQUM7dUdBL0VVLGNBQWM7MkZBQWQsY0FBYyx3TEFaZDtZQUNULGFBQWE7WUFDYixnQkFBZ0I7WUFDaEIsZUFBZTtZQUNmLHFCQUFxQjtZQUNyQixrQkFBa0I7WUFDbEIsR0FBRyxxQkFBcUI7WUFDeEIsR0FBRyxnQkFBZ0I7WUFDbkIsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUU7U0FDakQsaURDM0NILDhXQWFBOzsyRkRpQ2EsY0FBYztrQkFwQjFCLFNBQVM7K0JBQ0UsUUFBUSxRQUdaO3dCQUNKLFdBQVcsRUFBRSxTQUFTO3dCQUN0QixLQUFLLEVBQUUsb0JBQW9CO3FCQUM1QixhQUNVO3dCQUNULGFBQWE7d0JBQ2IsZ0JBQWdCO3dCQUNoQixlQUFlO3dCQUNmLHFCQUFxQjt3QkFDckIsa0JBQWtCO3dCQUNsQixHQUFHLHFCQUFxQjt3QkFDeEIsR0FBRyxnQkFBZ0I7d0JBQ25CLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxXQUFXLGdCQUFnQixFQUFFO3FCQUNqRCxtQkFDZ0IsdUJBQXVCLENBQUMsTUFBTTswSUFPL0IsT0FBTztzQkFEdEIsS0FBSztnQkFRVSxPQUFPO3NCQUR0QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZfRkxPVywgRkZsb3dCYXNlIH0gZnJvbSAnLi9mLWZsb3ctYmFzZSc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIHN0YXJ0V2l0aCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICBDbGVhclNlbGVjdGlvblJlcXVlc3QsXG4gIENPTU1PTl9QUk9WSURFUlMsIEdldEV4dGVybmFsTm9kZXNSZWN0UmVxdWVzdCwgR2V0UG9zaXRpb25JbkZsb3dSZXF1ZXN0LFxuICBHZXRTZWxlY3Rpb25SZXF1ZXN0LFxuICBSZWRyYXdDb25uZWN0aW9uc1JlcXVlc3QsXG4gIFNlbGVjdEFsbFJlcXVlc3QsIFNlbGVjdFJlcXVlc3QsXG59IGZyb20gJy4uL2RvbWFpbic7XG5pbXBvcnQgeyBJUG9pbnQsIElSZWN0IH0gZnJvbSAnQGZvYmxleC9jb3JlJztcbmltcG9ydCB7IEZGbG93TWVkaWF0b3IgfSBmcm9tICcuLi9pbmZyYXN0cnVjdHVyZSc7XG5pbXBvcnQge1xuICBGX0RSQUdHQUJMRV9QUk9WSURFUlMsXG4gIEZEcmFnZ2FibGVEYXRhQ29udGV4dCwgRlNlbGVjdGlvbkNoYW5nZUV2ZW50XG59IGZyb20gJy4uL2YtZHJhZ2dhYmxlJztcbmltcG9ydCB7IEZDb25uZWN0aW9uRmFjdG9yeSB9IGZyb20gJy4uL2YtY29ubmVjdGlvbic7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlLCBGVHJhbnNmb3JtU3RvcmUgfSBmcm9tICcuLi9mLXN0b3JhZ2UnO1xuXG5sZXQgdW5pcXVlSWQ6IG51bWJlciA9IDA7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2YtZmxvdycsXG4gIHRlbXBsYXRlVXJsOiAnLi9mLWZsb3cuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsgJy4vZi1mbG93LmNvbXBvbmVudC5zY3NzJyBdLFxuICBob3N0OiB7XG4gICAgJ1thdHRyLmlkXSc6ICdmRmxvd0lkJyxcbiAgICBjbGFzczogXCJmLWNvbXBvbmVudCBmLWZsb3dcIixcbiAgfSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgRkZsb3dNZWRpYXRvcixcbiAgICBGQ29tcG9uZW50c1N0b3JlLFxuICAgIEZUcmFuc2Zvcm1TdG9yZSxcbiAgICBGRHJhZ2dhYmxlRGF0YUNvbnRleHQsXG4gICAgRkNvbm5lY3Rpb25GYWN0b3J5LFxuICAgIC4uLkZfRFJBR0dBQkxFX1BST1ZJREVSUyxcbiAgICAuLi5DT01NT05fUFJPVklERVJTLFxuICAgIHsgcHJvdmlkZTogRl9GTE9XLCB1c2VFeGlzdGluZzogRkZsb3dDb21wb25lbnQgfSxcbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEZGbG93Q29tcG9uZW50IGV4dGVuZHMgRkZsb3dCYXNlIGltcGxlbWVudHMgT25Jbml0LCBBZnRlckNvbnRlbnRJbml0LCBPbkRlc3Ryb3kge1xuXG4gIHByaXZhdGUgc3Vic2NyaXB0aW9uJDogU3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBvdmVycmlkZSBmRmxvd0lkOiBzdHJpbmcgPSBgZi1mbG93LSR7IHVuaXF1ZUlkKysgfWA7XG5cbiAgcHVibGljIG92ZXJyaWRlIGdldCBob3N0RWxlbWVudCgpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZmVyZW5jZS5uYXRpdmVFbGVtZW50O1xuICB9XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBvdmVycmlkZSBmTG9hZGVkOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgcHJpdmF0ZSBpc0xvYWRlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZWxlbWVudFJlZmVyZW5jZTogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgcHJpdmF0ZSBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlLFxuICAgIHByaXZhdGUgZk1lZGlhdG9yOiBGRmxvd01lZGlhdG9yLFxuICApIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mRmxvdyA9IHRoaXM7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9uJC5hZGQoXG4gICAgICB0aGlzLnN1YnNjcmliZU9uRWxlbWVudHNDaGFuZ2VzKClcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBzdWJzY3JpYmVPbkVsZW1lbnRzQ2hhbmdlcygpOiBTdWJzY3JpcHRpb24ge1xuICAgIHJldHVybiB0aGlzLmZDb21wb25lbnRzU3RvcmUuY2hhbmdlcy5waXBlKHN0YXJ0V2l0aChudWxsKSwgZGVib3VuY2VUaW1lKDIwKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuZk1lZGlhdG9yLnNlbmQobmV3IFJlZHJhd0Nvbm5lY3Rpb25zUmVxdWVzdCgpKTtcblxuICAgICAgaWYgKCF0aGlzLmlzTG9hZGVkKSB7XG4gICAgICAgIHRoaXMuaXNMb2FkZWQgPSB0cnVlO1xuICAgICAgICB0aGlzLmZMb2FkZWQuZW1pdCgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHJlZHJhdygpOiB2b2lkIHtcbiAgICB0aGlzLmZDb21wb25lbnRzU3RvcmUuY2hhbmdlcy5uZXh0KCk7XG4gIH1cblxuICBwdWJsaWMgcmVzZXQoKTogdm9pZCB7XG4gICAgdGhpcy5pc0xvYWRlZCA9IGZhbHNlO1xuICB9XG5cbiAgcHVibGljIGdldE5vZGVzUmVjdCgpOiBJUmVjdCB7XG4gICAgcmV0dXJuIHRoaXMuZk1lZGlhdG9yLnNlbmQ8SVJlY3Q+KG5ldyBHZXRFeHRlcm5hbE5vZGVzUmVjdFJlcXVlc3QoKSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0U2VsZWN0aW9uKCk6IEZTZWxlY3Rpb25DaGFuZ2VFdmVudCB7XG4gICAgcmV0dXJuIHRoaXMuZk1lZGlhdG9yLnNlbmQ8RlNlbGVjdGlvbkNoYW5nZUV2ZW50PihuZXcgR2V0U2VsZWN0aW9uUmVxdWVzdCgpKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRQb3NpdGlvbkluRmxvdyhwb3NpdGlvbjogSVBvaW50KTogSVJlY3Qge1xuICAgIHJldHVybiB0aGlzLmZNZWRpYXRvci5zZW5kKG5ldyBHZXRQb3NpdGlvbkluRmxvd1JlcXVlc3QocG9zaXRpb24pKTtcbiAgfVxuXG4gIHB1YmxpYyBzZWxlY3RBbGwoKTogdm9pZCB7XG4gICAgdGhpcy5mTWVkaWF0b3Iuc2VuZDx2b2lkPihuZXcgU2VsZWN0QWxsUmVxdWVzdCgpKTtcbiAgfVxuXG4gIHB1YmxpYyBzZWxlY3Qobm9kZXM6IHN0cmluZ1tdLCBjb25uZWN0aW9uczogc3RyaW5nW10pOiB2b2lkIHtcbiAgICB0aGlzLmZNZWRpYXRvci5zZW5kPHZvaWQ+KG5ldyBTZWxlY3RSZXF1ZXN0KG5vZGVzLCBjb25uZWN0aW9ucykpO1xuICB9XG5cbiAgcHVibGljIGNsZWFyU2VsZWN0aW9uKCk6IHZvaWQge1xuICAgIHRoaXMuZk1lZGlhdG9yLnNlbmQ8dm9pZD4obmV3IENsZWFyU2VsZWN0aW9uUmVxdWVzdCgpKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLnN1YnNjcmlwdGlvbiQudW5zdWJzY3JpYmUoKTtcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lcj5cbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2ZEZWZpbml0aW9uc11cIj48L25nLWNvbnRlbnQ+XG5cbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZi1iYWNrZ3JvdW5kXCI+PC9uZy1jb250ZW50PlxuXG4gIDxuZy1jb250ZW50IHNlbGVjdD1cImYtbGluZS1hbGlnbm1lbnRcIj48L25nLWNvbnRlbnQ+XG5cbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZi1jYW52YXNcIj48L25nLWNvbnRlbnQ+XG5cbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiZi1zZWxlY3Rpb24tYXJlYVwiPjwvbmctY29udGVudD5cblxuICA8bmctY29udGVudCBzZWxlY3Q9XCJmLW1pbmltYXBcIj48L25nLWNvbnRlbnQ+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
|
|
@@ -10,12 +10,14 @@ import { FDraggableDirective } from './f-draggable';
|
|
|
10
10
|
import { F_EXTERNAL_ITEM_PROVIDERS } from './f-external-item';
|
|
11
11
|
import { F_SELECTION_AREA_PROVIDERS } from './f-selection-area';
|
|
12
12
|
import { F_LINE_ALIGNMENT_PROVIDERS } from './f-line-alignment';
|
|
13
|
+
import { F_MINIMAP_PROVIDERS } from './f-minimap';
|
|
14
|
+
import { F_ZOOM_PROVIDERS } from './f-zoom';
|
|
13
15
|
import * as i0 from "@angular/core";
|
|
14
16
|
import * as i1 from "./f-backgroud/f-background.component";
|
|
15
17
|
import * as i2 from "./f-backgroud/f-rect-pattern/f-rect-pattern.component";
|
|
16
18
|
import * as i3 from "./f-backgroud/f-circle-pattern/f-circle-pattern.component";
|
|
17
19
|
import * as i4 from "./f-canvas/f-canvas.component";
|
|
18
|
-
import * as i5 from "./f-
|
|
20
|
+
import * as i5 from "./f-zoom/f-zoom.directive";
|
|
19
21
|
import * as i6 from "./f-connection/common/f-connection-text/f-connection-text.component";
|
|
20
22
|
import * as i7 from "./f-connection/common/f-connection-text/f-connection-text-path.directive";
|
|
21
23
|
import * as i8 from "./f-connection/common/f-drag-handle/f-connection-drag-handle.component";
|
|
@@ -32,13 +34,17 @@ import * as i18 from "./f-connectors/f-node-output/f-node-output.directive";
|
|
|
32
34
|
import * as i19 from "./f-external-item/f-external-item.directive";
|
|
33
35
|
import * as i20 from "./f-flow/f-flow.component";
|
|
34
36
|
import * as i21 from "./f-line-alignment/f-line-alignment.component";
|
|
35
|
-
import * as i22 from "./f-
|
|
36
|
-
import * as i23 from "./f-
|
|
37
|
-
import * as i24 from "./f-
|
|
38
|
-
import * as i25 from "./f-
|
|
37
|
+
import * as i22 from "./f-minimap/f-minimap.component";
|
|
38
|
+
import * as i23 from "./f-minimap/f-minimap-canvas.directive";
|
|
39
|
+
import * as i24 from "./f-minimap/f-minimap-view.directive";
|
|
40
|
+
import * as i25 from "./f-minimap/f-minimap-flow.directive";
|
|
41
|
+
import * as i26 from "./f-node/f-node.directive";
|
|
42
|
+
import * as i27 from "./f-node/f-drag-handle/f-drag-handle.directive";
|
|
43
|
+
import * as i28 from "./f-node/f-resize-handle/f-resize-handle.directive";
|
|
44
|
+
import * as i29 from "./f-selection-area/f-selection-area.component";
|
|
39
45
|
export class FFlowModule {
|
|
40
46
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: FFlowModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
41
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.1.2", ngImport: i0, type: FFlowModule, declarations: [i1.FBackgroundComponent, i2.FRectPatternComponent, i3.FCirclePatternComponent, i4.FCanvasComponent, i5.FZoomDirective, i6.FConnectionTextComponent, i7.FConnectionTextPathDirective, i8.FConnectionDragHandleComponent, i9.FConnectionGradientComponent, i10.FConnectionPathComponent, i11.FConnectionSelectionComponent, i12.FConnectionComponent, i13.FConnectionCenterDirective, i14.FConnectionForCreateComponent, i15.FMarkerDirective, i16.FNodeInputDirective, i17.FNodeOutletDirective, i18.FNodeOutputDirective, i19.FExternalItemDirective, i20.FFlowComponent, i21.FLineAlignmentComponent, i22.
|
|
47
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.1.2", ngImport: i0, type: FFlowModule, declarations: [i1.FBackgroundComponent, i2.FRectPatternComponent, i3.FCirclePatternComponent, i4.FCanvasComponent, i5.FZoomDirective, i6.FConnectionTextComponent, i7.FConnectionTextPathDirective, i8.FConnectionDragHandleComponent, i9.FConnectionGradientComponent, i10.FConnectionPathComponent, i11.FConnectionSelectionComponent, i12.FConnectionComponent, i13.FConnectionCenterDirective, i14.FConnectionForCreateComponent, i15.FMarkerDirective, i16.FNodeInputDirective, i17.FNodeOutletDirective, i18.FNodeOutputDirective, i19.FExternalItemDirective, i20.FFlowComponent, i21.FLineAlignmentComponent, i22.FMinimapComponent, i23.FMinimapCanvasDirective, i24.FMinimapViewDirective, i25.FMinimapFlowDirective, i26.FNodeDirective, i27.FDragHandleDirective, i28.FResizeHandleDirective, i29.FSelectionAreaComponent, FDraggableDirective], imports: [CommonModule], exports: [i1.FBackgroundComponent, i2.FRectPatternComponent, i3.FCirclePatternComponent, i4.FCanvasComponent, i5.FZoomDirective, i6.FConnectionTextComponent, i7.FConnectionTextPathDirective, i8.FConnectionDragHandleComponent, i9.FConnectionGradientComponent, i10.FConnectionPathComponent, i11.FConnectionSelectionComponent, i12.FConnectionComponent, i13.FConnectionCenterDirective, i14.FConnectionForCreateComponent, i15.FMarkerDirective, i16.FNodeInputDirective, i17.FNodeOutletDirective, i18.FNodeOutputDirective, i19.FExternalItemDirective, i20.FFlowComponent, i21.FLineAlignmentComponent, i22.FMinimapComponent, i23.FMinimapCanvasDirective, i24.FMinimapViewDirective, i25.FMinimapFlowDirective, i26.FNodeDirective, i27.FDragHandleDirective, i28.FResizeHandleDirective, i29.FSelectionAreaComponent, FDraggableDirective] });
|
|
42
48
|
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: FFlowModule, imports: [CommonModule] });
|
|
43
49
|
}
|
|
44
50
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: FFlowModule, decorators: [{
|
|
@@ -47,11 +53,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImpor
|
|
|
47
53
|
declarations: [
|
|
48
54
|
...F_BACKGROUND_PROVIDERS,
|
|
49
55
|
...F_CANVAS_PROVIDERS,
|
|
56
|
+
...F_ZOOM_PROVIDERS,
|
|
50
57
|
...F_CONNECTION_PROVIDERS,
|
|
51
58
|
...F_CONNECTORS_PROVIDERS,
|
|
52
59
|
...F_EXTERNAL_ITEM_PROVIDERS,
|
|
53
60
|
...F_FLOW_PROVIDERS,
|
|
54
61
|
...F_LINE_ALIGNMENT_PROVIDERS,
|
|
62
|
+
...F_MINIMAP_PROVIDERS,
|
|
55
63
|
...F_NODE_PROVIDERS,
|
|
56
64
|
...F_SELECTION_AREA_PROVIDERS,
|
|
57
65
|
FDraggableDirective,
|
|
@@ -62,15 +70,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImpor
|
|
|
62
70
|
exports: [
|
|
63
71
|
...F_BACKGROUND_PROVIDERS,
|
|
64
72
|
...F_CANVAS_PROVIDERS,
|
|
73
|
+
...F_ZOOM_PROVIDERS,
|
|
65
74
|
...F_CONNECTION_PROVIDERS,
|
|
66
75
|
...F_CONNECTORS_PROVIDERS,
|
|
67
76
|
...F_EXTERNAL_ITEM_PROVIDERS,
|
|
68
77
|
...F_FLOW_PROVIDERS,
|
|
69
78
|
...F_LINE_ALIGNMENT_PROVIDERS,
|
|
79
|
+
...F_MINIMAP_PROVIDERS,
|
|
70
80
|
...F_NODE_PROVIDERS,
|
|
71
81
|
...F_SELECTION_AREA_PROVIDERS,
|
|
72
82
|
FDraggableDirective,
|
|
73
83
|
]
|
|
74
84
|
}]
|
|
75
85
|
}] });
|
|
76
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
86
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1mbG93Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1mbG93Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsc0JBQXNCLEdBQUcsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDNUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDaEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzlELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNsRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxVQUFVLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFxQzVDLE1BQU0sT0FBTyxXQUFXO3VHQUFYLFdBQVc7d0dBQVgsV0FBVyx5eUJBckJwQixtQkFBbUIsYUFHbkIsWUFBWSxxeUJBZVosbUJBQW1CO3dHQUdWLFdBQVcsWUFsQnBCLFlBQVk7OzJGQWtCSCxXQUFXO2tCQW5DdkIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osR0FBRyxzQkFBc0I7d0JBQ3pCLEdBQUcsa0JBQWtCO3dCQUNyQixHQUFHLGdCQUFnQjt3QkFDbkIsR0FBRyxzQkFBc0I7d0JBQ3pCLEdBQUcsc0JBQXNCO3dCQUN6QixHQUFHLHlCQUF5Qjt3QkFDNUIsR0FBRyxnQkFBZ0I7d0JBQ25CLEdBQUcsMEJBQTBCO3dCQUM3QixHQUFHLG1CQUFtQjt3QkFDdEIsR0FBRyxnQkFBZ0I7d0JBQ25CLEdBQUcsMEJBQTBCO3dCQUU3QixtQkFBbUI7cUJBQ3BCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3FCQUNiO29CQUNELE9BQU8sRUFBRTt3QkFDUCxHQUFHLHNCQUFzQjt3QkFDekIsR0FBRyxrQkFBa0I7d0JBQ3JCLEdBQUcsZ0JBQWdCO3dCQUNuQixHQUFHLHNCQUFzQjt3QkFDekIsR0FBRyxzQkFBc0I7d0JBQ3pCLEdBQUcseUJBQXlCO3dCQUM1QixHQUFHLGdCQUFnQjt3QkFDbkIsR0FBRywwQkFBMEI7d0JBQzdCLEdBQUcsbUJBQW1CO3dCQUN0QixHQUFHLGdCQUFnQjt3QkFDbkIsR0FBRywwQkFBMEI7d0JBRTdCLG1CQUFtQjtxQkFDcEI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEZfQ09OTkVDVElPTl9QUk9WSURFUlMsIH0gZnJvbSAnLi9mLWNvbm5lY3Rpb24nO1xuaW1wb3J0IHsgRl9OT0RFX1BST1ZJREVSUyB9IGZyb20gJy4vZi1ub2RlJztcbmltcG9ydCB7IEZfRkxPV19QUk9WSURFUlMgfSBmcm9tICcuL2YtZmxvdyc7XG5pbXBvcnQgeyBGX0JBQ0tHUk9VTkRfUFJPVklERVJTIH0gZnJvbSAnLi9mLWJhY2tncm91ZCc7XG5pbXBvcnQgeyBGX0NBTlZBU19QUk9WSURFUlMgfSBmcm9tICcuL2YtY2FudmFzJztcbmltcG9ydCB7IEZfQ09OTkVDVE9SU19QUk9WSURFUlMgfSBmcm9tICcuL2YtY29ubmVjdG9ycyc7XG5pbXBvcnQgeyBGRHJhZ2dhYmxlRGlyZWN0aXZlIH0gZnJvbSAnLi9mLWRyYWdnYWJsZSc7XG5pbXBvcnQgeyBGX0VYVEVSTkFMX0lURU1fUFJPVklERVJTIH0gZnJvbSAnLi9mLWV4dGVybmFsLWl0ZW0nO1xuaW1wb3J0IHsgRl9TRUxFQ1RJT05fQVJFQV9QUk9WSURFUlMgfSBmcm9tICcuL2Ytc2VsZWN0aW9uLWFyZWEnO1xuaW1wb3J0IHsgRl9MSU5FX0FMSUdOTUVOVF9QUk9WSURFUlMgfSBmcm9tICcuL2YtbGluZS1hbGlnbm1lbnQnO1xuaW1wb3J0IHsgRl9NSU5JTUFQX1BST1ZJREVSUyB9IGZyb20gJy4vZi1taW5pbWFwJztcbmltcG9ydCB7IEZfWk9PTV9QUk9WSURFUlMgfSBmcm9tICcuL2Ytem9vbSc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIC4uLkZfQkFDS0dST1VORF9QUk9WSURFUlMsXG4gICAgLi4uRl9DQU5WQVNfUFJPVklERVJTLFxuICAgIC4uLkZfWk9PTV9QUk9WSURFUlMsXG4gICAgLi4uRl9DT05ORUNUSU9OX1BST1ZJREVSUyxcbiAgICAuLi5GX0NPTk5FQ1RPUlNfUFJPVklERVJTLFxuICAgIC4uLkZfRVhURVJOQUxfSVRFTV9QUk9WSURFUlMsXG4gICAgLi4uRl9GTE9XX1BST1ZJREVSUyxcbiAgICAuLi5GX0xJTkVfQUxJR05NRU5UX1BST1ZJREVSUyxcbiAgICAuLi5GX01JTklNQVBfUFJPVklERVJTLFxuICAgIC4uLkZfTk9ERV9QUk9WSURFUlMsXG4gICAgLi4uRl9TRUxFQ1RJT05fQVJFQV9QUk9WSURFUlMsXG5cbiAgICBGRHJhZ2dhYmxlRGlyZWN0aXZlLFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgLi4uRl9CQUNLR1JPVU5EX1BST1ZJREVSUyxcbiAgICAuLi5GX0NBTlZBU19QUk9WSURFUlMsXG4gICAgLi4uRl9aT09NX1BST1ZJREVSUyxcbiAgICAuLi5GX0NPTk5FQ1RJT05fUFJPVklERVJTLFxuICAgIC4uLkZfQ09OTkVDVE9SU19QUk9WSURFUlMsXG4gICAgLi4uRl9FWFRFUk5BTF9JVEVNX1BST1ZJREVSUyxcbiAgICAuLi5GX0ZMT1dfUFJPVklERVJTLFxuICAgIC4uLkZfTElORV9BTElHTk1FTlRfUFJPVklERVJTLFxuICAgIC4uLkZfTUlOSU1BUF9QUk9WSURFUlMsXG4gICAgLi4uRl9OT0RFX1BST1ZJREVSUyxcbiAgICAuLi5GX1NFTEVDVElPTl9BUkVBX1BST1ZJREVSUyxcblxuICAgIEZEcmFnZ2FibGVEaXJlY3RpdmUsXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgRkZsb3dNb2R1bGUge1xufVxuIl19
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { Point, PointExtensions, RectExtensions } from '@foblex/core';
|
|
3
|
+
import { CalculateFlowPointFromMinimapPointRequest } from './calculate-flow-point-from-minimap-point.request';
|
|
4
|
+
import { Injectable } from '@angular/core';
|
|
5
|
+
import { FExecutionRegister } from '../../../infrastructure';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "../../../f-storage";
|
|
8
|
+
let CalculateFlowPointFromMinimapPointExecution = class CalculateFlowPointFromMinimapPointExecution {
|
|
9
|
+
fComponentsStore;
|
|
10
|
+
get canvasScale() {
|
|
11
|
+
return this.fComponentsStore.fCanvas.transform.scale;
|
|
12
|
+
}
|
|
13
|
+
constructor(fComponentsStore) {
|
|
14
|
+
this.fComponentsStore = fComponentsStore;
|
|
15
|
+
}
|
|
16
|
+
handle(payload) {
|
|
17
|
+
return PointExtensions.sub(payload.canvasPosition, PointExtensions.sub(this.getPositionInViewBox(payload.eventPoint, payload.minimap), this.getNormalizedFlowCenter(payload.flowRect)));
|
|
18
|
+
}
|
|
19
|
+
getNormalizedFlowCenter(flowRect) {
|
|
20
|
+
return Point.fromPoint(flowRect.gravityCenter).sub(flowRect);
|
|
21
|
+
}
|
|
22
|
+
getPositionInViewBox(eventPoint, minimap) {
|
|
23
|
+
const eventPointInFlow = this.normalizeEventPoint(eventPoint, minimap);
|
|
24
|
+
return PointExtensions.sum(eventPointInFlow, RectExtensions.mult(minimap.viewBox, this.canvasScale));
|
|
25
|
+
}
|
|
26
|
+
normalizeEventPoint(point, minimap) {
|
|
27
|
+
return this.getEventPointInMinimap(point, minimap)
|
|
28
|
+
.mult(minimap.scale).mult(this.canvasScale);
|
|
29
|
+
}
|
|
30
|
+
getEventPointInMinimap(eventPoint, minimap) {
|
|
31
|
+
return Point.fromPoint(eventPoint).elementTransform(minimap.element);
|
|
32
|
+
}
|
|
33
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: CalculateFlowPointFromMinimapPointExecution, deps: [{ token: i1.FComponentsStore }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
34
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: CalculateFlowPointFromMinimapPointExecution });
|
|
35
|
+
};
|
|
36
|
+
CalculateFlowPointFromMinimapPointExecution = __decorate([
|
|
37
|
+
FExecutionRegister(CalculateFlowPointFromMinimapPointRequest)
|
|
38
|
+
], CalculateFlowPointFromMinimapPointExecution);
|
|
39
|
+
export { CalculateFlowPointFromMinimapPointExecution };
|
|
40
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.2", ngImport: i0, type: CalculateFlowPointFromMinimapPointExecution, decorators: [{
|
|
41
|
+
type: Injectable
|
|
42
|
+
}], ctorParameters: () => [{ type: i1.FComponentsStore }] });
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsY3VsYXRlLWZsb3ctcG9pbnQtZnJvbS1taW5pbWFwLXBvaW50LmV4ZWN1dGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvZi1taW5pbWFwL2RvbWFpbi9jYWxjdWxhdGUtZmxvdy1wb2ludC1mcm9tLW1pbmltYXAtcG9pbnQvY2FsY3VsYXRlLWZsb3ctcG9pbnQtZnJvbS1taW5pbWFwLXBvaW50LmV4ZWN1dGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFpQixLQUFLLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNyRixPQUFPLEVBQUUseUNBQXlDLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUM5RyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxrQkFBa0IsRUFBYyxNQUFNLHlCQUF5QixDQUFDOzs7QUFLbEUsSUFBTSwyQ0FBMkMsR0FBakQsTUFBTSwyQ0FBMkM7SUFRNUM7SUFMVixJQUFZLFdBQVc7UUFDckIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBUSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUM7SUFDeEQsQ0FBQztJQUVELFlBQ1UsZ0JBQWtDO1FBQWxDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7SUFFNUMsQ0FBQztJQUVNLE1BQU0sQ0FBQyxPQUFrRDtRQUM5RCxPQUFPLGVBQWUsQ0FBQyxHQUFHLENBQ3hCLE9BQU8sQ0FBQyxjQUFjLEVBQ3RCLGVBQWUsQ0FBQyxHQUFHLENBQ2pCLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFDOUQsSUFBSSxDQUFDLHVCQUF1QixDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FDL0MsQ0FDRixDQUFDO0lBQ0osQ0FBQztJQUVPLHVCQUF1QixDQUFDLFFBQWU7UUFDN0MsT0FBTyxLQUFLLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVPLG9CQUFvQixDQUFDLFVBQWtCLEVBQUUsT0FBcUI7UUFDcEUsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ3ZFLE9BQU8sZUFBZSxDQUFDLEdBQUcsQ0FDeEIsZ0JBQWdCLEVBQ2hCLGNBQWMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQ3ZELENBQUM7SUFDSixDQUFDO0lBRU0sbUJBQW1CLENBQUMsS0FBYSxFQUFFLE9BQXFCO1FBQzdELE9BQU8sSUFBSSxDQUFDLHNCQUFzQixDQUFDLEtBQUssRUFBRSxPQUFPLENBQUM7YUFDaEQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFTyxzQkFBc0IsQ0FBQyxVQUFrQixFQUFFLE9BQXFCO1FBQ3RFLE9BQU8sS0FBSyxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsT0FBaUMsQ0FBQyxDQUFDO0lBQ2pHLENBQUM7dUdBekNVLDJDQUEyQzsyR0FBM0MsMkNBQTJDOztBQUEzQywyQ0FBMkM7SUFEdkQsa0JBQWtCLENBQUMseUNBQXlDLENBQUM7R0FDakQsMkNBQTJDLENBMEN2RDs7MkZBMUNZLDJDQUEyQztrQkFGdkQsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElQb2ludCwgSVJlY3QsIFBvaW50LCBQb2ludEV4dGVuc2lvbnMsIFJlY3RFeHRlbnNpb25zIH0gZnJvbSAnQGZvYmxleC9jb3JlJztcbmltcG9ydCB7IENhbGN1bGF0ZUZsb3dQb2ludEZyb21NaW5pbWFwUG9pbnRSZXF1ZXN0IH0gZnJvbSAnLi9jYWxjdWxhdGUtZmxvdy1wb2ludC1mcm9tLW1pbmltYXAtcG9pbnQucmVxdWVzdCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vZi1zdG9yYWdlJztcbmltcG9ydCB7IEZFeGVjdXRpb25SZWdpc3RlciwgSUV4ZWN1dGlvbiB9IGZyb20gJy4uLy4uLy4uL2luZnJhc3RydWN0dXJlJztcbmltcG9ydCB7IEZNaW5pbWFwRGF0YSB9IGZyb20gJy4uL2YtbWluaW1hcC1kYXRhJztcblxuQEluamVjdGFibGUoKVxuQEZFeGVjdXRpb25SZWdpc3RlcihDYWxjdWxhdGVGbG93UG9pbnRGcm9tTWluaW1hcFBvaW50UmVxdWVzdClcbmV4cG9ydCBjbGFzcyBDYWxjdWxhdGVGbG93UG9pbnRGcm9tTWluaW1hcFBvaW50RXhlY3V0aW9uXG4gIGltcGxlbWVudHMgSUV4ZWN1dGlvbjxDYWxjdWxhdGVGbG93UG9pbnRGcm9tTWluaW1hcFBvaW50UmVxdWVzdCwgSVBvaW50PiB7XG5cbiAgcHJpdmF0ZSBnZXQgY2FudmFzU2NhbGUoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZDYW52YXMhLnRyYW5zZm9ybS5zY2FsZTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZkNvbXBvbmVudHNTdG9yZTogRkNvbXBvbmVudHNTdG9yZVxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGUocGF5bG9hZDogQ2FsY3VsYXRlRmxvd1BvaW50RnJvbU1pbmltYXBQb2ludFJlcXVlc3QpOiBJUG9pbnQge1xuICAgIHJldHVybiBQb2ludEV4dGVuc2lvbnMuc3ViKFxuICAgICAgcGF5bG9hZC5jYW52YXNQb3NpdGlvbixcbiAgICAgIFBvaW50RXh0ZW5zaW9ucy5zdWIoXG4gICAgICAgIHRoaXMuZ2V0UG9zaXRpb25JblZpZXdCb3gocGF5bG9hZC5ldmVudFBvaW50LCBwYXlsb2FkLm1pbmltYXApLFxuICAgICAgICB0aGlzLmdldE5vcm1hbGl6ZWRGbG93Q2VudGVyKHBheWxvYWQuZmxvd1JlY3QpXG4gICAgICApXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Tm9ybWFsaXplZEZsb3dDZW50ZXIoZmxvd1JlY3Q6IElSZWN0KTogSVBvaW50IHtcbiAgICByZXR1cm4gUG9pbnQuZnJvbVBvaW50KGZsb3dSZWN0LmdyYXZpdHlDZW50ZXIpLnN1YihmbG93UmVjdCk7XG4gIH1cblxuICBwcml2YXRlIGdldFBvc2l0aW9uSW5WaWV3Qm94KGV2ZW50UG9pbnQ6IElQb2ludCwgbWluaW1hcDogRk1pbmltYXBEYXRhKTogSVBvaW50IHtcbiAgICBjb25zdCBldmVudFBvaW50SW5GbG93ID0gdGhpcy5ub3JtYWxpemVFdmVudFBvaW50KGV2ZW50UG9pbnQsIG1pbmltYXApO1xuICAgIHJldHVybiBQb2ludEV4dGVuc2lvbnMuc3VtKFxuICAgICAgZXZlbnRQb2ludEluRmxvdyxcbiAgICAgIFJlY3RFeHRlbnNpb25zLm11bHQobWluaW1hcC52aWV3Qm94LCB0aGlzLmNhbnZhc1NjYWxlKVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgbm9ybWFsaXplRXZlbnRQb2ludChwb2ludDogSVBvaW50LCBtaW5pbWFwOiBGTWluaW1hcERhdGEpOiBQb2ludCB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0RXZlbnRQb2ludEluTWluaW1hcChwb2ludCwgbWluaW1hcClcbiAgICAgLm11bHQobWluaW1hcC5zY2FsZSkubXVsdCh0aGlzLmNhbnZhc1NjYWxlKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0RXZlbnRQb2ludEluTWluaW1hcChldmVudFBvaW50OiBJUG9pbnQsIG1pbmltYXA6IEZNaW5pbWFwRGF0YSk6IFBvaW50IHtcbiAgICByZXR1cm4gUG9pbnQuZnJvbVBvaW50KGV2ZW50UG9pbnQpLmVsZW1lbnRUcmFuc2Zvcm0obWluaW1hcC5lbGVtZW50IGFzIHVua25vd24gYXMgSFRNTEVsZW1lbnQpO1xuICB9XG59XG4iXX0=
|