@html-graph/html-graph 9.0.0 → 9.2.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/dist/html-graph.d.ts +49 -18
- package/dist/html-graph.js +251 -93
- package/dist/html-graph.min.js +330 -237
- package/dist/html-graph.min.umd.cjs +1 -1
- package/dist/html-graph.umd.cjs +251 -93
- package/package.json +1 -1
package/dist/html-graph.js
CHANGED
|
@@ -7,7 +7,7 @@ var ConnectionCategory = /* @__PURE__ */ function(ConnectionCategory) {
|
|
|
7
7
|
}({});
|
|
8
8
|
//#endregion
|
|
9
9
|
//#region src/html-view/core-html-view/create-host/create-host.ts
|
|
10
|
-
var createHost$
|
|
10
|
+
var createHost$2 = () => {
|
|
11
11
|
const host = document.createElement("div");
|
|
12
12
|
host.style.width = "100%";
|
|
13
13
|
host.style.height = "100%";
|
|
@@ -49,7 +49,7 @@ var CoreHtmlView = class {
|
|
|
49
49
|
graphStore;
|
|
50
50
|
viewportStore;
|
|
51
51
|
element;
|
|
52
|
-
host = createHost$
|
|
52
|
+
host = createHost$2();
|
|
53
53
|
container = createContainer();
|
|
54
54
|
edgeIdToElementMap = /* @__PURE__ */ new Map();
|
|
55
55
|
attachedNodeIds = /* @__PURE__ */ new Set();
|
|
@@ -768,7 +768,7 @@ var GraphStore = class {
|
|
|
768
768
|
if (request.from !== void 0 && !this.hasPort(request.from)) throw new CanvasError(canvasErrorText.updateNonexistentEdgeSource(edgeId, request.from));
|
|
769
769
|
if (request.to !== void 0 && !this.hasPort(request.to)) throw new CanvasError(canvasErrorText.updateNonexistentEdgeTarget(edgeId, request.to));
|
|
770
770
|
const edge = this.getEdge(edgeId);
|
|
771
|
-
const payload = edge
|
|
771
|
+
const { payload } = edge;
|
|
772
772
|
this.removeEdgeInternal(edgeId);
|
|
773
773
|
this.addEdgeInternal({
|
|
774
774
|
id: edgeId,
|
|
@@ -778,7 +778,7 @@ var GraphStore = class {
|
|
|
778
778
|
priority: payload.priority
|
|
779
779
|
});
|
|
780
780
|
}
|
|
781
|
-
const edge = this.
|
|
781
|
+
const edge = this.getEdge(edgeId);
|
|
782
782
|
if (request.shape !== void 0) {
|
|
783
783
|
edge.payload.shape = request.shape;
|
|
784
784
|
this.afterEdgeShapeUpdatedEmitter.emit(edgeId);
|
|
@@ -1097,10 +1097,10 @@ var createAddNodeOverlayRequest = (payload) => {
|
|
|
1097
1097
|
};
|
|
1098
1098
|
//#endregion
|
|
1099
1099
|
//#region src/configurators/shared/find-port-at-point/find-port-for-element/find-port-for-element.ts
|
|
1100
|
-
var findPortForElement = (graph, element) => {
|
|
1100
|
+
var findPortForElement = (graph, element, portIdResolver) => {
|
|
1101
1101
|
let elementBuf = element;
|
|
1102
1102
|
while (elementBuf !== null) {
|
|
1103
|
-
const portId = graph.findPortIdsByElement(elementBuf)
|
|
1103
|
+
const portId = portIdResolver(graph.findPortIdsByElement(elementBuf));
|
|
1104
1104
|
if (portId !== null) return {
|
|
1105
1105
|
status: "portFound",
|
|
1106
1106
|
portId
|
|
@@ -1124,10 +1124,10 @@ function* getElementsAtPoint(root, point) {
|
|
|
1124
1124
|
}
|
|
1125
1125
|
//#endregion
|
|
1126
1126
|
//#region src/configurators/shared/find-port-at-point/find-port-at-point.ts
|
|
1127
|
-
var findPortAtPoint = (graph, point) => {
|
|
1127
|
+
var findPortAtPoint = (graph, point, portIdResolver) => {
|
|
1128
1128
|
const elements = getElementsAtPoint(document, point);
|
|
1129
1129
|
for (const element of elements) {
|
|
1130
|
-
const result = findPortForElement(graph, element);
|
|
1130
|
+
const result = findPortForElement(graph, element, portIdResolver);
|
|
1131
1131
|
if (result.status === "portFound") return result.portId;
|
|
1132
1132
|
if (result.status === "nodeEncountered") return null;
|
|
1133
1133
|
}
|
|
@@ -3333,7 +3333,9 @@ var DraggablePortsConfigurator = class DraggablePortsConfigurator {
|
|
|
3333
3333
|
const mouseEvent = event;
|
|
3334
3334
|
if (!this.params.mouseDownEventVerifier(mouseEvent)) return;
|
|
3335
3335
|
const target = event.currentTarget;
|
|
3336
|
-
const
|
|
3336
|
+
const portIds = this.canvas.graph.findPortIdsByElement(target);
|
|
3337
|
+
const portId = this.params.grabbedPortIdResolver(portIds);
|
|
3338
|
+
if (portId === null) return;
|
|
3337
3339
|
if (!this.params.onPointerDownVerifier(portId, {
|
|
3338
3340
|
x: mouseEvent.clientX,
|
|
3339
3341
|
y: mouseEvent.clientY
|
|
@@ -3634,6 +3636,12 @@ var ConstantDraggingPortDirectionResolver = class {
|
|
|
3634
3636
|
}
|
|
3635
3637
|
};
|
|
3636
3638
|
//#endregion
|
|
3639
|
+
//#region src/configurators/shared/port-id-resolver/default-port-id-resolver/default-port-id-resolver.ts
|
|
3640
|
+
var defaultPortIdResolver = (portIds) => {
|
|
3641
|
+
if (portIds.length > 0) return portIds[0];
|
|
3642
|
+
return null;
|
|
3643
|
+
};
|
|
3644
|
+
//#endregion
|
|
3637
3645
|
//#region src/configurators/user-draggable-nodes-configurator/user-draggable-nodes-configurator.ts
|
|
3638
3646
|
var UserDraggableNodesConfigurator = class UserDraggableNodesConfigurator {
|
|
3639
3647
|
canvas;
|
|
@@ -4299,7 +4307,8 @@ var UserConnectablePortsConfigurator = class UserConnectablePortsConfigurator {
|
|
|
4299
4307
|
const params = this.edgeInProgress;
|
|
4300
4308
|
this.resetDragState();
|
|
4301
4309
|
this.params.onEdgeCreationInterrupted(params);
|
|
4302
|
-
}
|
|
4310
|
+
},
|
|
4311
|
+
grabbedPortIdResolver: this.params.grabbedPortIdResolver
|
|
4303
4312
|
};
|
|
4304
4313
|
DraggablePortsConfigurator.configure(this.canvas, this.window, this.pointInsideVerifier, this.eventTagger, draggablePortsParams);
|
|
4305
4314
|
}
|
|
@@ -4353,18 +4362,17 @@ var UserConnectablePortsConfigurator = class UserConnectablePortsConfigurator {
|
|
|
4353
4362
|
this.overlayCanvas.clear();
|
|
4354
4363
|
}
|
|
4355
4364
|
tryCreateConnection(cursor) {
|
|
4356
|
-
const targetPortId = findPortAtPoint(this.canvas.graph, cursor);
|
|
4365
|
+
const targetPortId = findPortAtPoint(this.canvas.graph, cursor, this.params.releasedPortIdResolver);
|
|
4357
4366
|
if (targetPortId === null) {
|
|
4358
4367
|
this.params.onEdgeCreationInterrupted(this.edgeInProgress);
|
|
4359
4368
|
return;
|
|
4360
4369
|
}
|
|
4361
4370
|
const request = resolveCreateEdgeRequest(this.edgeInProgress, targetPortId);
|
|
4362
|
-
|
|
4363
|
-
|
|
4364
|
-
|
|
4365
|
-
|
|
4366
|
-
|
|
4367
|
-
if (connectionAllowed && processedRequest !== null) {
|
|
4371
|
+
if (this.params.connectionAllowedVerifier(request)) {
|
|
4372
|
+
const processedRequest = this.params.connectionPreprocessor({
|
|
4373
|
+
from: request.from,
|
|
4374
|
+
to: request.to
|
|
4375
|
+
});
|
|
4368
4376
|
this.canvas.graph.onAfterEdgeAdded.subscribe(this.onEdgeCreated);
|
|
4369
4377
|
this.canvas.addEdge(processedRequest);
|
|
4370
4378
|
this.canvas.graph.onAfterEdgeAdded.unsubscribe(this.onEdgeCreated);
|
|
@@ -4434,7 +4442,8 @@ var UserDraggableEdgesConfigurator = class UserDraggableEdgesConfigurator {
|
|
|
4434
4442
|
shape: edge.shape,
|
|
4435
4443
|
priority: edge.priority
|
|
4436
4444
|
});
|
|
4437
|
-
}
|
|
4445
|
+
},
|
|
4446
|
+
grabbedPortIdResolver: this.params.grabbedPortIdResolver
|
|
4438
4447
|
};
|
|
4439
4448
|
DraggablePortsConfigurator.configure(this.canvas, this.window, this.pointInsideVerifier, this.eventTagger, draggablePortsParams);
|
|
4440
4449
|
}
|
|
@@ -4524,7 +4533,7 @@ var UserDraggableEdgesConfigurator = class UserDraggableEdgesConfigurator {
|
|
|
4524
4533
|
}).updatePort(OverlayId.DraggingNodeId, { direction });
|
|
4525
4534
|
}
|
|
4526
4535
|
tryCreateConnection(cursor) {
|
|
4527
|
-
const draggingPortId = findPortAtPoint(this.canvas.graph, cursor);
|
|
4536
|
+
const draggingPortId = findPortAtPoint(this.canvas.graph, cursor, this.params.releasedPortIdResolver);
|
|
4528
4537
|
this.overlayCanvas.removeEdge(OverlayId.EdgeId);
|
|
4529
4538
|
if (draggingPortId === null) {
|
|
4530
4539
|
const edge = this.draggingEdgePayload;
|
|
@@ -4711,19 +4720,17 @@ var AnimatedLayoutApplier = class {
|
|
|
4711
4720
|
//#endregion
|
|
4712
4721
|
//#region src/configurators/animated-layout-configurator/animated-layout-configurator.ts
|
|
4713
4722
|
var AnimatedLayoutConfigurator = class AnimatedLayoutConfigurator {
|
|
4714
|
-
win;
|
|
4715
4723
|
applier;
|
|
4716
4724
|
step = (dt) => {
|
|
4717
4725
|
this.applier.apply(dt);
|
|
4718
4726
|
};
|
|
4719
4727
|
constructor(canvas, params, win) {
|
|
4720
|
-
this.win = win;
|
|
4721
4728
|
this.applier = new AnimatedLayoutApplier(canvas, params.algorithm, {
|
|
4722
4729
|
staticNodeResolver: params.staticNodeResolver,
|
|
4723
4730
|
onBeforeApplied: params.onBeforeApplied,
|
|
4724
4731
|
onAfterApplied: params.onAfterApplied
|
|
4725
4732
|
});
|
|
4726
|
-
new AnimationSeries(
|
|
4733
|
+
new AnimationSeries(win, this.step);
|
|
4727
4734
|
}
|
|
4728
4735
|
static configure(canvas, params, win) {
|
|
4729
4736
|
new AnimatedLayoutConfigurator(canvas, params, win);
|
|
@@ -4863,6 +4870,134 @@ var UserSelectableCanvasConfigurator = class UserSelectableCanvasConfigurator {
|
|
|
4863
4870
|
}
|
|
4864
4871
|
};
|
|
4865
4872
|
//#endregion
|
|
4873
|
+
//#region src/configurators/rectangular-selection-configurator/create-host/create-host.ts
|
|
4874
|
+
var createHost$1 = () => {
|
|
4875
|
+
const element = document.createElement("div");
|
|
4876
|
+
element.style.width = "100%";
|
|
4877
|
+
element.style.height = "100%";
|
|
4878
|
+
element.style.position = "relative";
|
|
4879
|
+
return element;
|
|
4880
|
+
};
|
|
4881
|
+
//#endregion
|
|
4882
|
+
//#region src/configurators/rectangular-selection-configurator/create-selection-rectangle-wrapper/create-selection-rectangle-wrapper.ts
|
|
4883
|
+
var createSelectionRectangleWrapper = () => {
|
|
4884
|
+
const element = document.createElement("div");
|
|
4885
|
+
element.style.position = "absolute";
|
|
4886
|
+
return element;
|
|
4887
|
+
};
|
|
4888
|
+
//#endregion
|
|
4889
|
+
//#region src/configurators/rectangular-selection-configurator/rectangular-selection-configurator.ts
|
|
4890
|
+
var RectangularSelectionConfigurator = class RectangularSelectionConfigurator {
|
|
4891
|
+
canvas;
|
|
4892
|
+
mainElement;
|
|
4893
|
+
overlayLayer;
|
|
4894
|
+
pointInsideVerifier;
|
|
4895
|
+
eventTagger;
|
|
4896
|
+
win;
|
|
4897
|
+
params;
|
|
4898
|
+
host = createHost$1();
|
|
4899
|
+
selectionRectangleWrapper = createSelectionRectangleWrapper();
|
|
4900
|
+
initialContentPoint = null;
|
|
4901
|
+
draggingViewportPoint = null;
|
|
4902
|
+
eventHandledTag = dragEventHandledTag;
|
|
4903
|
+
onAfterViewportUpdated = () => {
|
|
4904
|
+
this.updateSelectionRectangle();
|
|
4905
|
+
};
|
|
4906
|
+
onCanvasMouseDown = (event) => {
|
|
4907
|
+
const mouseEvent = event;
|
|
4908
|
+
if (!this.params.mouseDownEventVerifier(mouseEvent)) return;
|
|
4909
|
+
if (this.eventTagger.has(event, this.eventHandledTag)) return;
|
|
4910
|
+
this.params.onSelectionStarted();
|
|
4911
|
+
const rect = this.mainElement.getBoundingClientRect();
|
|
4912
|
+
const cursorViewportCoords = {
|
|
4913
|
+
x: mouseEvent.clientX - rect.x,
|
|
4914
|
+
y: mouseEvent.clientY - rect.y
|
|
4915
|
+
};
|
|
4916
|
+
this.initialContentPoint = this.canvas.viewport.createContentCoords(cursorViewportCoords);
|
|
4917
|
+
this.draggingViewportPoint = cursorViewportCoords;
|
|
4918
|
+
this.updateSelectionRectangle();
|
|
4919
|
+
this.host.appendChild(this.selectionRectangleWrapper);
|
|
4920
|
+
this.win.addEventListener("mousemove", this.onWindowMouseMove, { passive: true });
|
|
4921
|
+
this.win.addEventListener("mouseup", this.onWindowMouseUp, { passive: true });
|
|
4922
|
+
};
|
|
4923
|
+
onWindowMouseMove = (event) => {
|
|
4924
|
+
const mouseEvent = event;
|
|
4925
|
+
if (!this.pointInsideVerifier.verify(mouseEvent.clientX, mouseEvent.clientY)) {
|
|
4926
|
+
this.removeMouseListeners();
|
|
4927
|
+
this.interruptSelection();
|
|
4928
|
+
return;
|
|
4929
|
+
}
|
|
4930
|
+
const rect = this.mainElement.getBoundingClientRect();
|
|
4931
|
+
const cursorViewportCoords = {
|
|
4932
|
+
x: mouseEvent.clientX - rect.x,
|
|
4933
|
+
y: mouseEvent.clientY - rect.y
|
|
4934
|
+
};
|
|
4935
|
+
this.draggingViewportPoint = cursorViewportCoords;
|
|
4936
|
+
this.updateSelectionRectangle();
|
|
4937
|
+
const selectionRect = this.selectionRectangleWrapper.getBoundingClientRect();
|
|
4938
|
+
this.params.onSelectionChange(selectionRect);
|
|
4939
|
+
};
|
|
4940
|
+
onWindowMouseUp = (event) => {
|
|
4941
|
+
const mouseEvent = event;
|
|
4942
|
+
if (!this.params.mouseUpEventVerifier(mouseEvent)) return;
|
|
4943
|
+
this.removeMouseListeners();
|
|
4944
|
+
this.finishSelection();
|
|
4945
|
+
};
|
|
4946
|
+
constructor(canvas, mainElement, overlayLayer, pointInsideVerifier, eventTagger, win, params) {
|
|
4947
|
+
this.canvas = canvas;
|
|
4948
|
+
this.mainElement = mainElement;
|
|
4949
|
+
this.overlayLayer = overlayLayer;
|
|
4950
|
+
this.pointInsideVerifier = pointInsideVerifier;
|
|
4951
|
+
this.eventTagger = eventTagger;
|
|
4952
|
+
this.win = win;
|
|
4953
|
+
this.params = params;
|
|
4954
|
+
this.overlayLayer.appendChild(this.host);
|
|
4955
|
+
this.selectionRectangleWrapper.appendChild(this.params.rectangleElement);
|
|
4956
|
+
this.canvas.viewport.onAfterUpdated.subscribe(this.onAfterViewportUpdated);
|
|
4957
|
+
this.mainElement.addEventListener("mousedown", this.onCanvasMouseDown, { passive: true });
|
|
4958
|
+
this.canvas.onBeforeDestroy.subscribe(() => {
|
|
4959
|
+
this.mainElement.removeEventListener("mousedown", this.onCanvasMouseDown);
|
|
4960
|
+
this.removeMouseListeners();
|
|
4961
|
+
});
|
|
4962
|
+
}
|
|
4963
|
+
static configure(canvas, mainElement, overlayLayer, pointInsideVerifier, eventTagger, win, params) {
|
|
4964
|
+
new RectangularSelectionConfigurator(canvas, mainElement, overlayLayer, pointInsideVerifier, eventTagger, win, params);
|
|
4965
|
+
}
|
|
4966
|
+
updateSelectionRectangle() {
|
|
4967
|
+
if (this.initialContentPoint === null || this.draggingViewportPoint === null) return;
|
|
4968
|
+
const initialViewportPoint = this.canvas.viewport.createViewportCoords(this.initialContentPoint);
|
|
4969
|
+
const draggingViewportPoint = this.draggingViewportPoint;
|
|
4970
|
+
const x = Math.min(initialViewportPoint.x, draggingViewportPoint.x);
|
|
4971
|
+
const y = Math.min(initialViewportPoint.y, draggingViewportPoint.y);
|
|
4972
|
+
const width = Math.abs(draggingViewportPoint.x - initialViewportPoint.x);
|
|
4973
|
+
const height = Math.abs(draggingViewportPoint.y - initialViewportPoint.y);
|
|
4974
|
+
const { style } = this.selectionRectangleWrapper;
|
|
4975
|
+
style.left = `${x}px`;
|
|
4976
|
+
style.top = `${y}px`;
|
|
4977
|
+
style.width = `${width}px`;
|
|
4978
|
+
style.height = `${height}px`;
|
|
4979
|
+
}
|
|
4980
|
+
removeMouseListeners() {
|
|
4981
|
+
this.win.removeEventListener("mousemove", this.onWindowMouseMove);
|
|
4982
|
+
this.win.removeEventListener("mouseup", this.onWindowMouseUp);
|
|
4983
|
+
}
|
|
4984
|
+
finishSelection() {
|
|
4985
|
+
const selectionRect = this.selectionRectangleWrapper.getBoundingClientRect();
|
|
4986
|
+
this.terminateSelection();
|
|
4987
|
+
this.params.onSelectionFinished(selectionRect);
|
|
4988
|
+
}
|
|
4989
|
+
interruptSelection() {
|
|
4990
|
+
const selectionRect = this.selectionRectangleWrapper.getBoundingClientRect();
|
|
4991
|
+
this.terminateSelection();
|
|
4992
|
+
this.params.onSelectionInterrupted(selectionRect);
|
|
4993
|
+
}
|
|
4994
|
+
terminateSelection() {
|
|
4995
|
+
this.host.removeChild(this.selectionRectangleWrapper);
|
|
4996
|
+
this.initialContentPoint = null;
|
|
4997
|
+
this.draggingViewportPoint = null;
|
|
4998
|
+
}
|
|
4999
|
+
};
|
|
5000
|
+
//#endregion
|
|
4866
5001
|
//#region src/canvas-builder/layers/create-host/create-host.ts
|
|
4867
5002
|
var createHost = () => {
|
|
4868
5003
|
const host = document.createElement("div");
|
|
@@ -4873,16 +5008,17 @@ var createHost = () => {
|
|
|
4873
5008
|
};
|
|
4874
5009
|
//#endregion
|
|
4875
5010
|
//#region src/canvas-builder/layers/create-layer/create-layer.ts
|
|
4876
|
-
var createLayer = () => {
|
|
5011
|
+
var createLayer = (zIndex) => {
|
|
4877
5012
|
const host = document.createElement("div");
|
|
4878
5013
|
host.style.position = "absolute";
|
|
4879
5014
|
host.style.inset = "0";
|
|
5015
|
+
host.style.zIndex = `${zIndex}`;
|
|
4880
5016
|
return host;
|
|
4881
5017
|
};
|
|
4882
5018
|
//#endregion
|
|
4883
5019
|
//#region src/canvas-builder/layers/create-overlay-layer/create-overlay-layer.ts
|
|
4884
|
-
var createOverlayLayer = () => {
|
|
4885
|
-
const layer = createLayer();
|
|
5020
|
+
var createOverlayLayer = (zIndex) => {
|
|
5021
|
+
const layer = createLayer(zIndex);
|
|
4886
5022
|
layer.style.pointerEvents = "none";
|
|
4887
5023
|
return layer;
|
|
4888
5024
|
};
|
|
@@ -4890,10 +5026,11 @@ var createOverlayLayer = () => {
|
|
|
4890
5026
|
//#region src/canvas-builder/layers/layers.ts
|
|
4891
5027
|
var Layers = class {
|
|
4892
5028
|
element;
|
|
4893
|
-
background = createLayer();
|
|
4894
|
-
main = createLayer();
|
|
4895
|
-
overlayConnectablePorts = createOverlayLayer();
|
|
4896
|
-
overlayDraggableEdges = createOverlayLayer();
|
|
5029
|
+
background = createLayer(0);
|
|
5030
|
+
main = createLayer(1);
|
|
5031
|
+
overlayConnectablePorts = createOverlayLayer(1);
|
|
5032
|
+
overlayDraggableEdges = createOverlayLayer(1);
|
|
5033
|
+
overlayRectangularSelection = createOverlayLayer(2);
|
|
4897
5034
|
host = createHost();
|
|
4898
5035
|
constructor(element) {
|
|
4899
5036
|
this.element = element;
|
|
@@ -4902,12 +5039,14 @@ var Layers = class {
|
|
|
4902
5039
|
this.host.appendChild(this.main);
|
|
4903
5040
|
this.host.appendChild(this.overlayConnectablePorts);
|
|
4904
5041
|
this.host.appendChild(this.overlayDraggableEdges);
|
|
5042
|
+
this.host.appendChild(this.overlayRectangularSelection);
|
|
4905
5043
|
}
|
|
4906
5044
|
destroy() {
|
|
4907
5045
|
this.host.removeChild(this.background);
|
|
4908
5046
|
this.host.removeChild(this.main);
|
|
4909
5047
|
this.host.removeChild(this.overlayConnectablePorts);
|
|
4910
5048
|
this.host.removeChild(this.overlayDraggableEdges);
|
|
5049
|
+
this.host.removeChild(this.overlayRectangularSelection);
|
|
4911
5050
|
this.element.removeChild(this.host);
|
|
4912
5051
|
}
|
|
4913
5052
|
};
|
|
@@ -4922,20 +5061,13 @@ var forceDirectedDefaults = Object.freeze({
|
|
|
4922
5061
|
edgeStiffness: 1e3,
|
|
4923
5062
|
dtSec: .01,
|
|
4924
5063
|
maxIterations: 1e3,
|
|
4925
|
-
|
|
5064
|
+
stopVelocity: 10,
|
|
4926
5065
|
maxForce: 1e7,
|
|
4927
5066
|
nodeForceCoefficient: 1,
|
|
4928
5067
|
barnesHutAreaRadiusThreshold: .01,
|
|
4929
5068
|
barnesHutTheta: 1
|
|
4930
5069
|
});
|
|
4931
5070
|
//#endregion
|
|
4932
|
-
//#region src/canvas-builder/shared/selection-defaults.ts
|
|
4933
|
-
var selectionDefaults = Object.freeze({
|
|
4934
|
-
mouseDownEventVerifier: (event) => event.button === 0,
|
|
4935
|
-
mouseUpEventVerifier: (event) => event.button === 0,
|
|
4936
|
-
movementThreshold: 10
|
|
4937
|
-
});
|
|
4938
|
-
//#endregion
|
|
4939
5071
|
//#region src/canvas-builder/shared/noop-fn/noop-fn.ts
|
|
4940
5072
|
var noopFn = () => {};
|
|
4941
5073
|
//#endregion
|
|
@@ -5001,27 +5133,28 @@ var resolveEdgeShapeFactory = (config) => {
|
|
|
5001
5133
|
}
|
|
5002
5134
|
};
|
|
5003
5135
|
//#endregion
|
|
5136
|
+
//#region src/canvas-builder/shared/lmb-ctrl-mouse-event-verifier/lmb-ctrl-mouse-event-verifier.ts
|
|
5137
|
+
var lmbCtrlMouseEventVerifier = (event) => event.button === 0 && event.ctrlKey;
|
|
5138
|
+
//#endregion
|
|
5139
|
+
//#region src/canvas-builder/shared/lmb-mouse-event-verifier/lmb-mouse-event-verifier.ts
|
|
5140
|
+
var lmbMouseEventVerifier = (event) => event.button === 0;
|
|
5141
|
+
//#endregion
|
|
5142
|
+
//#region src/canvas-builder/shared/lmb-no-ctrl-mouse-event-verifier/lmb-no-ctrl-mouse-event-verifier.ts
|
|
5143
|
+
var lmbNoCtrlMouseEventVerifier = (event) => event.button === 0 && !event.ctrlKey;
|
|
5144
|
+
//#endregion
|
|
5004
5145
|
//#region src/canvas-builder/create-draggable-nodes-params/create-draggable-nodes-params.ts
|
|
5005
5146
|
var createDraggableNodesParams = (config) => {
|
|
5006
|
-
const nodeDragVerifier = config.nodeDragVerifier ?? (() => true);
|
|
5007
5147
|
const moveOnTop = config.moveOnTop !== false;
|
|
5008
|
-
const moveEdgesOnTop = config.moveEdgesOnTop !== false && moveOnTop;
|
|
5009
|
-
const cursor = config.mouse?.dragCursor;
|
|
5010
|
-
const dragCursor = cursor !== void 0 ? cursor : "grab";
|
|
5011
|
-
const defaultMouseDownEventVerifier = config.mouse?.mouseDownEventVerifier;
|
|
5012
|
-
const mouseDownEventVerifier = defaultMouseDownEventVerifier !== void 0 ? defaultMouseDownEventVerifier : (event) => event.button === 0;
|
|
5013
|
-
const defaultMouseUpEventVerifier = config.mouse?.mouseUpEventVerifier;
|
|
5014
|
-
const mouseUpEventVerifier = defaultMouseUpEventVerifier !== void 0 ? defaultMouseUpEventVerifier : (event) => event.button === 0;
|
|
5015
5148
|
return {
|
|
5016
5149
|
moveOnTop,
|
|
5017
|
-
moveEdgesOnTop,
|
|
5018
|
-
dragCursor,
|
|
5150
|
+
moveEdgesOnTop: config.moveEdgesOnTop !== false && moveOnTop,
|
|
5151
|
+
dragCursor: config.mouse?.dragCursor ?? "grab",
|
|
5019
5152
|
gridSize: config.gridSize ?? null,
|
|
5020
|
-
mouseDownEventVerifier,
|
|
5021
|
-
mouseUpEventVerifier,
|
|
5153
|
+
mouseDownEventVerifier: config.mouse?.mouseDownEventVerifier ?? lmbNoCtrlMouseEventVerifier,
|
|
5154
|
+
mouseUpEventVerifier: config.mouse?.mouseUpEventVerifier ?? lmbMouseEventVerifier,
|
|
5022
5155
|
onNodeDragStarted: config.events?.onNodeDragStarted ?? noopFn,
|
|
5023
5156
|
onNodeDrag: config.events?.onNodeDrag ?? noopFn,
|
|
5024
|
-
nodeDragVerifier,
|
|
5157
|
+
nodeDragVerifier: config.nodeDragVerifier ?? (() => true),
|
|
5025
5158
|
onNodeDragFinished: config.events?.onNodeDragFinished ?? noopFn
|
|
5026
5159
|
};
|
|
5027
5160
|
};
|
|
@@ -5111,33 +5244,26 @@ var resolveTransformPreprocessor = (option) => {
|
|
|
5111
5244
|
//#endregion
|
|
5112
5245
|
//#region src/canvas-builder/create-transformable-viewport-params/create-transformable-viewport-params.ts
|
|
5113
5246
|
var createTransformableViewportParams = (transformConfig) => {
|
|
5114
|
-
const configWheelSensitivity = transformConfig?.scale?.mouseWheelSensitivity;
|
|
5115
|
-
const wheelSensitivity = configWheelSensitivity !== void 0 ? configWheelSensitivity : 1.2;
|
|
5116
5247
|
const preprocessors = transformConfig?.transformPreprocessor;
|
|
5117
5248
|
let transformPreprocessor;
|
|
5118
|
-
if (preprocessors !== void 0) if (Array.isArray(preprocessors)) transformPreprocessor = createCombinedTransformPreprocessor(preprocessors.map((preprocessor) =>
|
|
5249
|
+
if (preprocessors !== void 0) if (Array.isArray(preprocessors)) transformPreprocessor = createCombinedTransformPreprocessor(preprocessors.map((preprocessor) => {
|
|
5250
|
+
return resolveTransformPreprocessor(preprocessor);
|
|
5251
|
+
}));
|
|
5119
5252
|
else transformPreprocessor = resolveTransformPreprocessor(preprocessors);
|
|
5120
5253
|
else transformPreprocessor = (params) => {
|
|
5121
5254
|
return params.nextTransform;
|
|
5122
5255
|
};
|
|
5123
|
-
const shiftCursor = transformConfig?.pan?.cursor !== void 0 ? transformConfig.pan.cursor : "grab";
|
|
5124
|
-
const defaultMouseDownEventVerifier = transformConfig?.pan?.mouseDownEventVerifier;
|
|
5125
|
-
const mouseDownEventVerifier = defaultMouseDownEventVerifier !== void 0 ? defaultMouseDownEventVerifier : (event) => event.button === 0;
|
|
5126
|
-
const defaultMouseUpEventVerifier = transformConfig?.pan?.mouseUpEventVerifier;
|
|
5127
|
-
const mouseUpEventVerifier = defaultMouseUpEventVerifier !== void 0 ? defaultMouseUpEventVerifier : (event) => event.button === 0;
|
|
5128
|
-
const defaultMouseWheelEventVerifier = transformConfig?.scale?.mouseWheelEventVerifier;
|
|
5129
|
-
const mouseWheelEventVerifier = defaultMouseWheelEventVerifier !== void 0 ? defaultMouseWheelEventVerifier : () => true;
|
|
5130
5256
|
return {
|
|
5131
|
-
wheelSensitivity,
|
|
5257
|
+
wheelSensitivity: transformConfig?.scale?.mouseWheelSensitivity ?? 1.2,
|
|
5132
5258
|
onTransformStarted: transformConfig?.events?.onTransformStarted ?? noopFn,
|
|
5133
5259
|
onTransformFinished: transformConfig?.events?.onTransformFinished ?? noopFn,
|
|
5134
5260
|
onBeforeTransformChange: transformConfig?.events?.onBeforeTransformChange ?? noopFn,
|
|
5135
5261
|
onTransformChange: transformConfig?.events?.onTransformChange ?? noopFn,
|
|
5136
5262
|
transformPreprocessor,
|
|
5137
|
-
shiftCursor,
|
|
5138
|
-
mouseDownEventVerifier,
|
|
5139
|
-
mouseUpEventVerifier,
|
|
5140
|
-
mouseWheelEventVerifier,
|
|
5263
|
+
shiftCursor: transformConfig?.pan?.cursor ?? "grab",
|
|
5264
|
+
mouseDownEventVerifier: transformConfig?.pan?.mouseDownEventVerifier ?? lmbNoCtrlMouseEventVerifier,
|
|
5265
|
+
mouseUpEventVerifier: transformConfig?.pan?.mouseUpEventVerifier ?? lmbMouseEventVerifier,
|
|
5266
|
+
mouseWheelEventVerifier: transformConfig?.scale?.mouseWheelEventVerifier ?? (() => true),
|
|
5141
5267
|
scaleWheelFinishTimeout: transformConfig?.scale?.wheelFinishTimeout ?? 500,
|
|
5142
5268
|
onResizeTransformStarted: transformConfig?.events?.onResizeTransformStarted ?? noopFn,
|
|
5143
5269
|
onResizeTransformFinished: transformConfig?.events?.onResizeTransformFinished ?? noopFn
|
|
@@ -5175,8 +5301,7 @@ var createBackgroundParams = (backgroundConfig) => {
|
|
|
5175
5301
|
var defaults$3 = Object.freeze({
|
|
5176
5302
|
connectionTypeResolver: () => "direct",
|
|
5177
5303
|
connectionPreprocessor: (request) => request,
|
|
5178
|
-
connectionAllowedVerifier: () => true
|
|
5179
|
-
mouseEventVerifier: (event) => event.button === 0
|
|
5304
|
+
connectionAllowedVerifier: () => true
|
|
5180
5305
|
});
|
|
5181
5306
|
//#endregion
|
|
5182
5307
|
//#region src/canvas-builder/create-connectable-ports-params/create-connectable-ports-params.ts
|
|
@@ -5188,20 +5313,20 @@ var createConnectablePortsParams = (config, defaultEdgeShapeFactory, graph) => {
|
|
|
5188
5313
|
draggingPortDirectionResolver: resolveDraggingPortDirectionResolver(config.dragPortDirection, graph, connectionAllowedVerifier),
|
|
5189
5314
|
edgeShapeFactory: config.edgeShape !== void 0 ? resolveEdgeShapeFactory(config.edgeShape) : defaultEdgeShapeFactory,
|
|
5190
5315
|
connectionPreprocessor: config.connectionPreprocessor ?? defaults$3.connectionPreprocessor,
|
|
5191
|
-
mouseDownEventVerifier: config.mouseDownEventVerifier ??
|
|
5192
|
-
mouseUpEventVerifier: config.mouseUpEventVerifier ??
|
|
5316
|
+
mouseDownEventVerifier: config.mouseDownEventVerifier ?? lmbNoCtrlMouseEventVerifier,
|
|
5317
|
+
mouseUpEventVerifier: config.mouseUpEventVerifier ?? lmbMouseEventVerifier,
|
|
5193
5318
|
onAfterEdgeCreated: config.events?.onAfterEdgeCreated ?? noopFn,
|
|
5194
5319
|
onEdgeCreationInterrupted: config.events?.onEdgeCreationInterrupted ?? noopFn,
|
|
5195
|
-
onEdgeCreationPrevented: config.events?.onEdgeCreationPrevented ?? noopFn
|
|
5320
|
+
onEdgeCreationPrevented: config.events?.onEdgeCreationPrevented ?? noopFn,
|
|
5321
|
+
grabbedPortIdResolver: config.grabbedPortIdResolver ?? defaultPortIdResolver,
|
|
5322
|
+
releasedPortIdResolver: config.releasedPortIdResolver ?? defaultPortIdResolver
|
|
5196
5323
|
};
|
|
5197
5324
|
};
|
|
5198
5325
|
//#endregion
|
|
5199
5326
|
//#region src/canvas-builder/create-draggable-edges-params/defaults.ts
|
|
5200
5327
|
var defaults$2 = Object.freeze({
|
|
5201
5328
|
connectionAllowedVerifier: () => true,
|
|
5202
|
-
connectionPreprocessor: (request) => request
|
|
5203
|
-
mouseDownEventVerifier: (event) => event.button === 0,
|
|
5204
|
-
mouseUpEventVerifier: (event) => event.button === 0
|
|
5329
|
+
connectionPreprocessor: (request) => request
|
|
5205
5330
|
});
|
|
5206
5331
|
//#endregion
|
|
5207
5332
|
//#region src/canvas-builder/create-draggable-edges-params/create-draggable-edges-params.ts
|
|
@@ -5215,14 +5340,16 @@ var createDraggableEdgeParams = (config, graph) => {
|
|
|
5215
5340
|
return {
|
|
5216
5341
|
connectionPreprocessor: config.connectionPreprocessor ?? defaults$2.connectionPreprocessor,
|
|
5217
5342
|
connectionAllowedVerifier,
|
|
5218
|
-
mouseDownEventVerifier: config.mouseDownEventVerifier ??
|
|
5219
|
-
mouseUpEventVerifier: config.mouseUpEventVerifier ??
|
|
5343
|
+
mouseDownEventVerifier: config.mouseDownEventVerifier ?? lmbNoCtrlMouseEventVerifier,
|
|
5344
|
+
mouseUpEventVerifier: config.mouseUpEventVerifier ?? lmbMouseEventVerifier,
|
|
5220
5345
|
draggingEdgeResolver: config.draggingEdgeResolver ?? defaultDraggingEdgeResolver,
|
|
5221
5346
|
draggingEdgeShapeFactory: config.draggingEdgeShape !== void 0 ? resolveEdgeShapeFactory(config.draggingEdgeShape) : null,
|
|
5222
5347
|
onAfterEdgeReattached: config.events?.onAfterEdgeReattached ?? noopFn,
|
|
5223
5348
|
onEdgeReattachInterrupted: config.events?.onEdgeReattachInterrupted ?? noopFn,
|
|
5224
5349
|
onEdgeReattachPrevented: config.events?.onEdgeReattachPrevented ?? noopFn,
|
|
5225
|
-
draggingPortDirectionResolver: resolveDraggingPortDirectionResolver(config.dragPortDirection, graph, connectionAllowedVerifier)
|
|
5350
|
+
draggingPortDirectionResolver: resolveDraggingPortDirectionResolver(config.dragPortDirection, graph, connectionAllowedVerifier),
|
|
5351
|
+
grabbedPortIdResolver: config.grabbedPortIdResolver ?? defaultPortIdResolver,
|
|
5352
|
+
releasedPortIdResolver: config.releasedPortIdResolver ?? defaultPortIdResolver
|
|
5226
5353
|
};
|
|
5227
5354
|
};
|
|
5228
5355
|
//#endregion
|
|
@@ -5880,14 +6007,14 @@ var ForceDirectedLayoutAlgorithm = class {
|
|
|
5880
6007
|
nodeMass;
|
|
5881
6008
|
edgeEquilibriumLength;
|
|
5882
6009
|
edgeStiffness;
|
|
5883
|
-
|
|
6010
|
+
stopVelocity;
|
|
5884
6011
|
constructor(params) {
|
|
5885
6012
|
this.maxIterations = params.maxIterations;
|
|
5886
6013
|
this.dtSec = params.dtSec;
|
|
5887
6014
|
this.nodeMass = params.nodeMass;
|
|
5888
6015
|
this.edgeEquilibriumLength = params.edgeEquilibriumLength;
|
|
5889
6016
|
this.edgeStiffness = params.edgeStiffness;
|
|
5890
|
-
this.
|
|
6017
|
+
this.stopVelocity = params.stopVelocity;
|
|
5891
6018
|
this.distanceVectorGenerator = new DistanceVectorGenerator(params.rand);
|
|
5892
6019
|
this.nodeForcesApplicationStrategy = resolveNodeForcesApplicationStrategy({
|
|
5893
6020
|
distanceVectorGenerator: this.distanceVectorGenerator,
|
|
@@ -5916,7 +6043,7 @@ var ForceDirectedLayoutAlgorithm = class {
|
|
|
5916
6043
|
nodeMass: this.nodeMass,
|
|
5917
6044
|
edgeEquilibriumLength: this.edgeEquilibriumLength,
|
|
5918
6045
|
edgeStiffness: this.edgeStiffness
|
|
5919
|
-
}).apply() < this.
|
|
6046
|
+
}).apply() < this.stopVelocity) break;
|
|
5920
6047
|
return currentCoords;
|
|
5921
6048
|
}
|
|
5922
6049
|
};
|
|
@@ -6136,14 +6263,14 @@ var incomingNextLayerNodesResolver = (params) => {
|
|
|
6136
6263
|
var ForceDirectedAnimatedLayoutAlgorithm = class {
|
|
6137
6264
|
distanceVectorGenerator;
|
|
6138
6265
|
nodeForcesApplicationStrategy;
|
|
6139
|
-
|
|
6266
|
+
stopVelocity;
|
|
6140
6267
|
maxTimeDeltaSec;
|
|
6141
6268
|
nodeMass;
|
|
6142
6269
|
edgeEquilibriumLength;
|
|
6143
6270
|
edgeStiffness;
|
|
6144
6271
|
fillerLayoutAlgorithm;
|
|
6145
6272
|
constructor(params) {
|
|
6146
|
-
this.
|
|
6273
|
+
this.stopVelocity = params.stopVelocity;
|
|
6147
6274
|
this.maxTimeDeltaSec = params.maxTimeDeltaSec;
|
|
6148
6275
|
this.nodeMass = params.nodeMass;
|
|
6149
6276
|
this.edgeEquilibriumLength = params.edgeEquilibriumLength;
|
|
@@ -6176,7 +6303,7 @@ var ForceDirectedAnimatedLayoutAlgorithm = class {
|
|
|
6176
6303
|
nodeMass: this.nodeMass,
|
|
6177
6304
|
edgeEquilibriumLength: this.edgeEquilibriumLength,
|
|
6178
6305
|
edgeStiffness: this.edgeStiffness
|
|
6179
|
-
}).apply() < this.
|
|
6306
|
+
}).apply() < this.stopVelocity) {
|
|
6180
6307
|
if (!graph.getAllNodeIds().some((nodeId) => {
|
|
6181
6308
|
const node = graph.getNode(nodeId);
|
|
6182
6309
|
return node.x === null || node.y === null;
|
|
@@ -6242,7 +6369,7 @@ var resolveAnimatedLayoutAlgorithm = (config) => {
|
|
|
6242
6369
|
nodeMass: config?.nodeMass ?? forceDirectedDefaults.nodeMass,
|
|
6243
6370
|
edgeEquilibriumLength: config?.edgeEquilibriumLength ?? forceDirectedDefaults.edgeEquilibriumLength,
|
|
6244
6371
|
edgeStiffness: config?.edgeStiffness ?? forceDirectedDefaults.edgeStiffness,
|
|
6245
|
-
stopVelocity: config?.stopVelocity ?? forceDirectedDefaults.
|
|
6372
|
+
stopVelocity: config?.stopVelocity ?? forceDirectedDefaults.stopVelocity,
|
|
6246
6373
|
maxForce: config?.maxForce ?? forceDirectedDefaults.maxForce,
|
|
6247
6374
|
nodeForceCoefficient: config?.nodeForceCoefficient ?? forceDirectedDefaults.nodeForceCoefficient,
|
|
6248
6375
|
barnesHutTheta: config?.barnesHut?.theta ?? forceDirectedDefaults.barnesHutTheta,
|
|
@@ -6466,7 +6593,7 @@ var resolveLayoutAlgorithm = (config) => {
|
|
|
6466
6593
|
nodeMass: config?.nodeMass ?? forceDirectedDefaults.nodeMass,
|
|
6467
6594
|
edgeEquilibriumLength: config?.edgeEquilibriumLength ?? forceDirectedDefaults.edgeEquilibriumLength,
|
|
6468
6595
|
edgeStiffness: config?.edgeStiffness ?? forceDirectedDefaults.edgeStiffness,
|
|
6469
|
-
stopVelocity: config?.stopVelocity ?? forceDirectedDefaults.
|
|
6596
|
+
stopVelocity: config?.stopVelocity ?? forceDirectedDefaults.stopVelocity,
|
|
6470
6597
|
maxForce: config?.maxForce ?? forceDirectedDefaults.maxForce,
|
|
6471
6598
|
nodeForceCoefficient: config?.nodeForceCoefficient ?? forceDirectedDefaults.nodeForceCoefficient,
|
|
6472
6599
|
barnesHutTheta: config?.barnesHut?.theta ?? forceDirectedDefaults.barnesHutTheta,
|
|
@@ -6592,9 +6719,9 @@ var createViewportControllerParams = (params) => {
|
|
|
6592
6719
|
var createUserSelectableNodesParams = (config) => {
|
|
6593
6720
|
return {
|
|
6594
6721
|
onNodeSelected: config.onNodeSelected,
|
|
6595
|
-
mouseDownEventVerifier: config.mouseDownEventVerifier ??
|
|
6596
|
-
mouseUpEventVerifier: config.mouseUpEventVerifier ??
|
|
6597
|
-
movementThreshold: config.movementThreshold ??
|
|
6722
|
+
mouseDownEventVerifier: config.mouseDownEventVerifier ?? lmbNoCtrlMouseEventVerifier,
|
|
6723
|
+
mouseUpEventVerifier: config.mouseUpEventVerifier ?? lmbMouseEventVerifier,
|
|
6724
|
+
movementThreshold: config.movementThreshold ?? 10
|
|
6598
6725
|
};
|
|
6599
6726
|
};
|
|
6600
6727
|
//#endregion
|
|
@@ -6602,9 +6729,9 @@ var createUserSelectableNodesParams = (config) => {
|
|
|
6602
6729
|
var createUserSelectableCanvasParams = (config) => {
|
|
6603
6730
|
return {
|
|
6604
6731
|
onCanvasSelected: config.onCanvasSelected,
|
|
6605
|
-
mouseDownEventVerifier: config.mouseDownEventVerifier ??
|
|
6606
|
-
mouseUpEventVerifier: config.mouseUpEventVerifier ??
|
|
6607
|
-
movementThreshold: config.movementThreshold ??
|
|
6732
|
+
mouseDownEventVerifier: config.mouseDownEventVerifier ?? lmbNoCtrlMouseEventVerifier,
|
|
6733
|
+
mouseUpEventVerifier: config.mouseUpEventVerifier ?? lmbMouseEventVerifier,
|
|
6734
|
+
movementThreshold: config.movementThreshold ?? 10
|
|
6608
6735
|
};
|
|
6609
6736
|
};
|
|
6610
6737
|
//#endregion
|
|
@@ -6612,9 +6739,32 @@ var createUserSelectableCanvasParams = (config) => {
|
|
|
6612
6739
|
var createUserSelectableEdgesParams = (config) => {
|
|
6613
6740
|
return {
|
|
6614
6741
|
onEdgeSelected: config.onEdgeSelected,
|
|
6615
|
-
mouseDownEventVerifier: config.mouseDownEventVerifier ??
|
|
6616
|
-
mouseUpEventVerifier: config.mouseUpEventVerifier ??
|
|
6617
|
-
movementThreshold: config.movementThreshold ??
|
|
6742
|
+
mouseDownEventVerifier: config.mouseDownEventVerifier ?? lmbNoCtrlMouseEventVerifier,
|
|
6743
|
+
mouseUpEventVerifier: config.mouseUpEventVerifier ?? lmbMouseEventVerifier,
|
|
6744
|
+
movementThreshold: config.movementThreshold ?? 10
|
|
6745
|
+
};
|
|
6746
|
+
};
|
|
6747
|
+
//#endregion
|
|
6748
|
+
//#region src/canvas-builder/create-rectangular-selection-params/create-default-rectangle-element/create-default-rectangle-element.ts
|
|
6749
|
+
var createDefaultRectangleElement = () => {
|
|
6750
|
+
const element = document.createElement("div");
|
|
6751
|
+
element.style.width = "100%";
|
|
6752
|
+
element.style.height = "100%";
|
|
6753
|
+
element.style.background = "rgba(174, 238, 255, 0.34)";
|
|
6754
|
+
element.style.border = "1px dashed rgba(96, 96, 96, 0.47)";
|
|
6755
|
+
return element;
|
|
6756
|
+
};
|
|
6757
|
+
//#endregion
|
|
6758
|
+
//#region src/canvas-builder/create-rectangular-selection-params/create-rectangular-selection-params.ts
|
|
6759
|
+
var createRectangularSelectionParams = (config) => {
|
|
6760
|
+
return {
|
|
6761
|
+
rectangleElement: config?.rectangleElement ?? createDefaultRectangleElement(),
|
|
6762
|
+
mouseDownEventVerifier: config?.mouseDownEventVerifier ?? lmbCtrlMouseEventVerifier,
|
|
6763
|
+
mouseUpEventVerifier: config?.mouseUpEventVerifier ?? lmbMouseEventVerifier,
|
|
6764
|
+
onSelectionStarted: config?.onSelectionStarted ?? noopFn,
|
|
6765
|
+
onSelectionChange: config?.onSelectionChange ?? noopFn,
|
|
6766
|
+
onSelectionInterrupted: config?.onSelectionInterrupted ?? noopFn,
|
|
6767
|
+
onSelectionFinished: config?.onSelectionFinished ?? noopFn
|
|
6618
6768
|
};
|
|
6619
6769
|
};
|
|
6620
6770
|
//#endregion
|
|
@@ -6628,6 +6778,7 @@ var CanvasBuilder = class {
|
|
|
6628
6778
|
backgroundConfig = {};
|
|
6629
6779
|
connectablePortsConfig = {};
|
|
6630
6780
|
draggableEdgesConfig = {};
|
|
6781
|
+
rectangularSelectionConfig = void 0;
|
|
6631
6782
|
virtualScrollConfig = void 0;
|
|
6632
6783
|
layoutConfig = {};
|
|
6633
6784
|
animatedLayoutConfig = {};
|
|
@@ -6640,6 +6791,7 @@ var CanvasBuilder = class {
|
|
|
6640
6791
|
hasBackground = false;
|
|
6641
6792
|
hasUserConnectablePorts = false;
|
|
6642
6793
|
hasUserDraggableEdges = false;
|
|
6794
|
+
hasRectangularSelection = false;
|
|
6643
6795
|
hasAnimatedLayout = false;
|
|
6644
6796
|
hasLayout = false;
|
|
6645
6797
|
boxRenderingTrigger = new EventSubject();
|
|
@@ -6688,6 +6840,11 @@ var CanvasBuilder = class {
|
|
|
6688
6840
|
this.draggableEdgesConfig = config ?? {};
|
|
6689
6841
|
return this;
|
|
6690
6842
|
}
|
|
6843
|
+
enableRectangularSelection(config) {
|
|
6844
|
+
this.hasRectangularSelection = true;
|
|
6845
|
+
this.rectangularSelectionConfig = config;
|
|
6846
|
+
return this;
|
|
6847
|
+
}
|
|
6691
6848
|
enableLayout(config) {
|
|
6692
6849
|
this.layoutConfig = config ?? {};
|
|
6693
6850
|
this.hasLayout = true;
|
|
@@ -6758,6 +6915,7 @@ var CanvasBuilder = class {
|
|
|
6758
6915
|
}
|
|
6759
6916
|
if (this.virtualScrollConfig !== void 0) UserTransformableViewportVirtualScrollConfigurator.configure(canvas, layers.main, this.window, createTransformableViewportParams(this.transformConfig), this.boxRenderingTrigger, this.pointInsideVerifier, this.eventTagger, createVirtualScrollParams(this.virtualScrollConfig));
|
|
6760
6917
|
else if (this.hasTransformableViewport) UserTransformableViewportConfigurator.configure(canvas, layers.main, this.window, this.pointInsideVerifier, this.eventTagger, createTransformableViewportParams(this.transformConfig));
|
|
6918
|
+
if (this.hasRectangularSelection) RectangularSelectionConfigurator.configure(canvas, layers.main, layers.overlayRectangularSelection, this.pointInsideVerifier, this.eventTagger, this.window, createRectangularSelectionParams(this.rectangularSelectionConfig));
|
|
6761
6919
|
if (this.hasLayout) LayoutConfigurator.configure(canvas, layoutParams);
|
|
6762
6920
|
if (this.hasAnimatedLayout) {
|
|
6763
6921
|
let config = createAnimatedLayoutParams(this.animatedLayoutConfig);
|