@inditextech/weave-sdk 0.57.1 → 0.58.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/sdk.cjs CHANGED
@@ -17945,6 +17945,73 @@ var WeavePlugin = class {
17945
17945
  //#region src/plugins/nodes-selection/constants.ts
17946
17946
  const WEAVE_NODES_SELECTION_KEY = "nodesSelection";
17947
17947
  const WEAVE_NODES_SELECTION_LAYER_ID = "selectionLayer";
17948
+ const WEAVE_NODES_SELECTION_DEFAULT_CONFIG = {
17949
+ selection: {
17950
+ rotationSnaps: [
17951
+ 0,
17952
+ 45,
17953
+ 90,
17954
+ 135,
17955
+ 180,
17956
+ 225,
17957
+ 270,
17958
+ 315,
17959
+ 360
17960
+ ],
17961
+ rotationSnapTolerance: 3,
17962
+ ignoreStroke: true,
17963
+ rotateEnabled: true,
17964
+ resizeEnabled: true,
17965
+ flipEnabled: false,
17966
+ keepRatio: true,
17967
+ useSingleNodeRotation: true,
17968
+ shouldOverdrawWholeArea: true,
17969
+ enabledAnchors: [
17970
+ "top-left",
17971
+ "top-center",
17972
+ "top-right",
17973
+ "middle-right",
17974
+ "middle-left",
17975
+ "bottom-left",
17976
+ "bottom-center",
17977
+ "bottom-right"
17978
+ ],
17979
+ anchorStyleFunc: (anchor) => {
17980
+ anchor.stroke("#27272aff");
17981
+ anchor.cornerRadius(12);
17982
+ if (anchor.hasName("top-center") || anchor.hasName("bottom-center")) {
17983
+ anchor.height(8);
17984
+ anchor.offsetY(4);
17985
+ anchor.width(32);
17986
+ anchor.offsetX(16);
17987
+ }
17988
+ if (anchor.hasName("middle-left") || anchor.hasName("middle-right")) {
17989
+ anchor.height(32);
17990
+ anchor.offsetY(16);
17991
+ anchor.width(8);
17992
+ anchor.offsetX(4);
17993
+ }
17994
+ },
17995
+ borderStroke: "#1a1aff",
17996
+ borderStrokeWidth: 2
17997
+ },
17998
+ hover: { borderStrokeWidth: 2 },
17999
+ selectionArea: {
18000
+ fill: "#1a1aff11",
18001
+ stroke: "#1a1aff",
18002
+ strokeWidth: 1,
18003
+ dash: [12, 4]
18004
+ },
18005
+ panningWhenSelection: {
18006
+ edgeThreshold: 50,
18007
+ minScrollSpeed: 1,
18008
+ maxScrollSpeed: 15
18009
+ },
18010
+ behaviors: {
18011
+ singleSelection: { enabled: true },
18012
+ multipleSelection: { enabled: false }
18013
+ }
18014
+ };
17948
18015
 
17949
18016
  //#endregion
17950
18017
  //#region src/plugins/context-menu/constants.ts
@@ -18220,10 +18287,6 @@ function getVisibleNodes(instance, stage, nodeParent, skipNodes, referenceLayer)
18220
18287
  if (skipNodes.includes(node.getParent()?.getAttrs().nodeId)) return;
18221
18288
  if (skipNodes.includes(node.getAttrs().id ?? "")) return;
18222
18289
  if (node.getParent() !== referenceLayer && !node.getParent()?.getAttrs().nodeId) return;
18223
- if (node.getParent() !== referenceLayer && node.getParent()?.getAttrs().nodeId) {
18224
- const realNode = stage.findOne(`#${node.getParent()?.getAttrs().nodeId}`);
18225
- if (realNode && realNode !== referenceLayer) return;
18226
- }
18227
18290
  finalVisibleNodes.push(node);
18228
18291
  });
18229
18292
  if (nodesSelection) nodesSelection.getTransformer().show();
@@ -18856,77 +18919,19 @@ const NODE_SNAP_VERTICAL = {
18856
18919
  //#endregion
18857
18920
  //#region src/plugins/nodes-selection/nodes-selection.ts
18858
18921
  var WeaveNodesSelectionPlugin = class extends WeavePlugin {
18922
+ selectionStart = null;
18923
+ panSpeed = {
18924
+ x: 0,
18925
+ y: 0
18926
+ };
18927
+ panDirection = {
18928
+ x: 0,
18929
+ y: 0
18930
+ };
18931
+ panLoopId = null;
18859
18932
  constructor(params) {
18860
18933
  super();
18861
- const { config } = params ?? {};
18862
- this.config = {
18863
- selection: {
18864
- rotationSnaps: [
18865
- 0,
18866
- 45,
18867
- 90,
18868
- 135,
18869
- 180,
18870
- 225,
18871
- 270,
18872
- 315,
18873
- 360
18874
- ],
18875
- rotationSnapTolerance: 3,
18876
- ignoreStroke: true,
18877
- rotateEnabled: true,
18878
- resizeEnabled: true,
18879
- flipEnabled: false,
18880
- keepRatio: true,
18881
- useSingleNodeRotation: true,
18882
- shouldOverdrawWholeArea: true,
18883
- enabledAnchors: [
18884
- "top-left",
18885
- "top-center",
18886
- "top-right",
18887
- "middle-right",
18888
- "middle-left",
18889
- "bottom-left",
18890
- "bottom-center",
18891
- "bottom-right"
18892
- ],
18893
- anchorStyleFunc: (anchor) => {
18894
- anchor.stroke("#27272aff");
18895
- anchor.cornerRadius(12);
18896
- if (anchor.hasName("top-center") || anchor.hasName("bottom-center")) {
18897
- anchor.height(8);
18898
- anchor.offsetY(4);
18899
- anchor.width(32);
18900
- anchor.offsetX(16);
18901
- }
18902
- if (anchor.hasName("middle-left") || anchor.hasName("middle-right")) {
18903
- anchor.height(32);
18904
- anchor.offsetY(16);
18905
- anchor.width(8);
18906
- anchor.offsetX(4);
18907
- }
18908
- },
18909
- borderStroke: "#1a1aff",
18910
- borderStrokeWidth: 2,
18911
- ...config?.selection
18912
- },
18913
- hover: {
18914
- borderStrokeWidth: 2,
18915
- ...config?.hover
18916
- },
18917
- selectionArea: {
18918
- fill: "#1a1aff11",
18919
- stroke: "#1a1aff",
18920
- strokeWidth: 1,
18921
- dash: [12, 4],
18922
- ...config?.selectionArea
18923
- },
18924
- behaviors: {
18925
- singleSelection: { enabled: true },
18926
- multipleSelection: { enabled: false },
18927
- ...config?.behaviors
18928
- }
18929
- };
18934
+ this.config = (0, import_merge.default)(WEAVE_NODES_SELECTION_DEFAULT_CONFIG, params?.config ?? {});
18930
18935
  this.defaultEnabledAnchors = this.config.selection?.enabledAnchors ?? [
18931
18936
  "top-left",
18932
18937
  "top-center",
@@ -18952,6 +18957,7 @@ var WeaveNodesSelectionPlugin = class extends WeavePlugin {
18952
18957
  this.initialized = false;
18953
18958
  this.enabled = false;
18954
18959
  this.pointers = {};
18960
+ this.panLoopId = null;
18955
18961
  }
18956
18962
  getName() {
18957
18963
  return WEAVE_NODES_SELECTION_KEY;
@@ -19206,6 +19212,79 @@ var WeaveNodesSelectionPlugin = class extends WeavePlugin {
19206
19212
  this.tr.nodes([]);
19207
19213
  this.triggerSelectedNodesEvent();
19208
19214
  }
19215
+ updateSelectionRect() {
19216
+ const stage = this.instance.getStage();
19217
+ this.x2 = stage.getRelativePointerPosition()?.x ?? 0;
19218
+ this.y2 = stage.getRelativePointerPosition()?.y ?? 0;
19219
+ this.getTransformer().nodes([]);
19220
+ this.selectionRectangle.setAttrs({
19221
+ visible: true,
19222
+ x: Math.min(this.x1, this.x2),
19223
+ y: Math.min(this.y1, this.y2),
19224
+ width: Math.abs(this.x2 - this.x1),
19225
+ height: Math.abs(this.y2 - this.y1)
19226
+ });
19227
+ }
19228
+ getSpeedFromEdge(distanceFromEdge) {
19229
+ if (distanceFromEdge < this.config.panningWhenSelection.edgeThreshold) {
19230
+ const factor = 1 - distanceFromEdge / this.config.panningWhenSelection.edgeThreshold;
19231
+ return this.config.panningWhenSelection.minScrollSpeed + (this.config.panningWhenSelection.maxScrollSpeed - this.config.panningWhenSelection.minScrollSpeed) * factor;
19232
+ }
19233
+ return 0;
19234
+ }
19235
+ updatePanDirection() {
19236
+ const stage = this.instance.getStage();
19237
+ const pos = stage.getPointerPosition();
19238
+ const viewWidth = stage.width();
19239
+ const viewHeight = stage.height();
19240
+ if (!pos) return;
19241
+ const distLeft = pos.x;
19242
+ const distRight = viewWidth - pos.x;
19243
+ const distTop = pos.y;
19244
+ const distBottom = viewHeight - pos.y;
19245
+ this.panDirection.x = 0;
19246
+ this.panDirection.y = 0;
19247
+ this.panSpeed = {
19248
+ x: 0,
19249
+ y: 0
19250
+ };
19251
+ if (distLeft < this.config.panningWhenSelection.edgeThreshold) {
19252
+ this.panDirection.x = 1;
19253
+ this.panSpeed.x = this.getSpeedFromEdge(distLeft);
19254
+ } else if (distRight < this.config.panningWhenSelection.edgeThreshold) {
19255
+ this.panDirection.x = -1;
19256
+ this.panSpeed.x = this.getSpeedFromEdge(distRight);
19257
+ }
19258
+ if (distTop < this.config.panningWhenSelection.edgeThreshold) {
19259
+ this.panDirection.y = 1;
19260
+ this.panSpeed.y = this.getSpeedFromEdge(distTop);
19261
+ } else if (distBottom < this.config.panningWhenSelection.edgeThreshold) {
19262
+ this.panDirection.y = -1;
19263
+ this.panSpeed.y = this.getSpeedFromEdge(distBottom);
19264
+ }
19265
+ }
19266
+ stopPanLoop() {
19267
+ if (this.panLoopId) {
19268
+ cancelAnimationFrame(this.panLoopId);
19269
+ this.panLoopId = null;
19270
+ }
19271
+ }
19272
+ panLoop() {
19273
+ const stage = this.instance.getStage();
19274
+ if (this.isAreaSelecting() && (this.panDirection.x !== 0 || this.panDirection.y !== 0)) {
19275
+ const scale = stage.scaleX();
19276
+ const stepX = (this.panSpeed.x || 0) / scale;
19277
+ const stepY = (this.panSpeed.y || 0) / scale;
19278
+ stage.x(stage.x() + this.panDirection.x * stepX);
19279
+ stage.y(stage.y() + this.panDirection.y * stepY);
19280
+ if (this.selectionStart) {
19281
+ this.selectionStart.x += this.panDirection.x * stepX;
19282
+ this.selectionStart.y += this.panDirection.y * stepY;
19283
+ }
19284
+ this.updateSelectionRect();
19285
+ }
19286
+ this.panLoopId = requestAnimationFrame(() => this.panLoop());
19287
+ }
19209
19288
  setTapStart(e) {
19210
19289
  this.tapStart = {
19211
19290
  x: e.evt.clientX,
@@ -19264,18 +19343,17 @@ var WeaveNodesSelectionPlugin = class extends WeavePlugin {
19264
19343
  });
19265
19344
  }
19266
19345
  initEvents() {
19267
- let x1, y1, x2, y2;
19268
19346
  this.selecting = false;
19269
19347
  const stage = this.instance.getStage();
19270
19348
  stage.container().addEventListener("keydown", (e) => {
19271
19349
  if (e.code === "Space") this.isSpaceKeyPressed = true;
19272
- if ((e.key === "Backspace" || e.key === "Delete") && Object.keys(window.weaveTextEditing).length === 0) {
19350
+ if ((e.code === "Backspace" || e.code === "Delete") && Object.keys(window.weaveTextEditing).length === 0) {
19273
19351
  this.removeSelectedNodes();
19274
19352
  return;
19275
19353
  }
19276
19354
  });
19277
19355
  stage.container().addEventListener("keyup", (e) => {
19278
- if (e.key === "Space") this.isSpaceKeyPressed = false;
19356
+ if (e.code === "Space") this.isSpaceKeyPressed = false;
19279
19357
  });
19280
19358
  stage.on("pointerdown", (e) => {
19281
19359
  this.setTapStart(e);
@@ -19289,6 +19367,7 @@ var WeaveNodesSelectionPlugin = class extends WeavePlugin {
19289
19367
  const selectedGroup = getTargetedNode(this.instance);
19290
19368
  if (selectedGroup?.getParent() instanceof konva.default.Transformer) {
19291
19369
  this.selecting = false;
19370
+ this.stopPanLoop();
19292
19371
  this.hideSelectorArea();
19293
19372
  return;
19294
19373
  }
@@ -19299,15 +19378,26 @@ var WeaveNodesSelectionPlugin = class extends WeavePlugin {
19299
19378
  if (isTransformer) return;
19300
19379
  if (!isStage && !isContainerEmptyArea && isTargetable) {
19301
19380
  this.selecting = false;
19381
+ this.stopPanLoop();
19302
19382
  this.hideSelectorArea();
19303
19383
  this.handleClickOrTap(e);
19304
19384
  return;
19305
19385
  }
19386
+ this.panDirection.x = 0;
19387
+ this.panDirection.y = 0;
19388
+ this.panSpeed = {
19389
+ x: 0,
19390
+ y: 0
19391
+ };
19306
19392
  const intStage = this.instance.getStage();
19307
- x1 = intStage.getRelativePointerPosition()?.x ?? 0;
19308
- y1 = intStage.getRelativePointerPosition()?.y ?? 0;
19309
- x2 = intStage.getRelativePointerPosition()?.x ?? 0;
19310
- y2 = intStage.getRelativePointerPosition()?.y ?? 0;
19393
+ this.x1 = intStage.getRelativePointerPosition()?.x ?? 0;
19394
+ this.y1 = intStage.getRelativePointerPosition()?.y ?? 0;
19395
+ this.x2 = intStage.getRelativePointerPosition()?.x ?? 0;
19396
+ this.y2 = intStage.getRelativePointerPosition()?.y ?? 0;
19397
+ this.selectionStart = {
19398
+ x: this.x1,
19399
+ y: this.y1
19400
+ };
19311
19401
  this.selectionRectangle.strokeWidth(this.config.selectionArea.strokeWidth / stage.scaleX());
19312
19402
  this.selectionRectangle.dash(this.config.selectionArea.dash?.map((d) => d / stage.scaleX()) ?? []);
19313
19403
  this.selectionRectangle.width(0);
@@ -19315,6 +19405,7 @@ var WeaveNodesSelectionPlugin = class extends WeavePlugin {
19315
19405
  this.selecting = true;
19316
19406
  this.tr.nodes([]);
19317
19407
  this.instance.emitEvent("onSelectionState", true);
19408
+ if (!this.panLoopId) this.panLoopId = requestAnimationFrame(() => this.panLoop());
19318
19409
  });
19319
19410
  const handleMouseMove = (e) => {
19320
19411
  const moved = this.checkMoved(e);
@@ -19327,25 +19418,20 @@ var WeaveNodesSelectionPlugin = class extends WeavePlugin {
19327
19418
  else this.hideSelectorArea();
19328
19419
  if (contextMenuPlugin && contextMenuPlugin.isContextMenuVisible()) {
19329
19420
  this.selecting = false;
19421
+ this.stopPanLoop();
19330
19422
  return;
19331
19423
  }
19332
19424
  if (this.isSpaceKeyPressed) return;
19333
19425
  if (!this.selecting) return;
19334
- const intStage = this.instance.getStage();
19335
- x2 = intStage.getRelativePointerPosition()?.x ?? 0;
19336
- y2 = intStage.getRelativePointerPosition()?.y ?? 0;
19337
- this.getTransformer().nodes([]);
19338
- this.selectionRectangle.setAttrs({
19339
- visible: true,
19340
- x: Math.min(x1, x2),
19341
- y: Math.min(y1, y2),
19342
- width: Math.abs(x2 - x1),
19343
- height: Math.abs(y2 - y1)
19344
- });
19426
+ this.updateSelectionRect();
19427
+ this.updatePanDirection();
19345
19428
  };
19346
19429
  stage.on("pointermove", handleMouseMove);
19430
+ this.panLoop();
19347
19431
  stage.on("pointerup", (e) => {
19348
19432
  this.tr.setAttrs({ listening: true });
19433
+ this.selecting = false;
19434
+ this.stopPanLoop();
19349
19435
  const moved = this.checkMoved(e);
19350
19436
  this.checkDoubleTap(e);
19351
19437
  delete this.pointers[e.evt.pointerId];
@@ -19362,7 +19448,6 @@ var WeaveNodesSelectionPlugin = class extends WeavePlugin {
19362
19448
  this.hideSelectorArea();
19363
19449
  return;
19364
19450
  }
19365
- this.selecting = false;
19366
19451
  this.instance.emitEvent("onSelectionState", false);
19367
19452
  if (this.isDoubleTap) {
19368
19453
  this.taps = 0;
@@ -19380,6 +19465,7 @@ var WeaveNodesSelectionPlugin = class extends WeavePlugin {
19380
19465
  const isContainerEmptyArea = typeof e.target.getAttrs().isContainerPrincipal !== "undefined" && !e.target.getAttrs().isContainerPrincipal;
19381
19466
  if ((isStage || isContainerEmptyArea) && !moved) {
19382
19467
  this.selecting = false;
19468
+ this.stopPanLoop();
19383
19469
  this.hideSelectorArea();
19384
19470
  this.getSelectionPlugin()?.setSelectedNodes([]);
19385
19471
  return;
@@ -19390,6 +19476,7 @@ var WeaveNodesSelectionPlugin = class extends WeavePlugin {
19390
19476
  }
19391
19477
  if (contextMenuPlugin && contextMenuPlugin.isContextMenuVisible()) {
19392
19478
  this.selecting = false;
19479
+ this.stopPanLoop();
19393
19480
  return;
19394
19481
  }
19395
19482
  if (!this.selectionRectangle.visible()) {
@@ -19433,6 +19520,7 @@ var WeaveNodesSelectionPlugin = class extends WeavePlugin {
19433
19520
  if (!frameNode.getAttrs().locked) selectedNodes.add(node);
19434
19521
  });
19435
19522
  this.selecting = false;
19523
+ this.stopPanLoop();
19436
19524
  this.tr.nodes([...selectedNodes]);
19437
19525
  this.handleBehaviors();
19438
19526
  this.triggerSelectedNodesEvent();
@@ -19474,6 +19562,7 @@ var WeaveNodesSelectionPlugin = class extends WeavePlugin {
19474
19562
  const contextMenuPlugin = this.getContextMenuPlugin();
19475
19563
  if (contextMenuPlugin?.isContextMenuVisible()) {
19476
19564
  this.selecting = false;
19565
+ this.stopPanLoop();
19477
19566
  return;
19478
19567
  }
19479
19568
  this.hideHoverState();
@@ -19543,11 +19632,13 @@ var WeaveNodesSelectionPlugin = class extends WeavePlugin {
19543
19632
  if (nodesSelected > 1 && !this.config.behaviors.multipleSelection.enabled || nodesSelected === 1 && !this.config.behaviors.singleSelection.enabled) this.tr.enabledAnchors([]);
19544
19633
  if (nodesSelected > 1 && this.config.behaviors.multipleSelection.enabled || nodesSelected === 1 && this.config.behaviors.singleSelection.enabled) this.tr.enabledAnchors(this.defaultEnabledAnchors);
19545
19634
  let transformerAttrs = { ...this.config.selection };
19546
- const currentAttrs = this.tr.getAttrs();
19547
- Object.keys(currentAttrs).forEach((key) => {
19548
- if (["rotationSnaps", "enabledAnchors"].includes(key)) this.tr?.setAttr(key, []);
19549
- else this.tr?.setAttr(key, void 0);
19550
- });
19635
+ if (this.tr && this.tr.nodes().length > 0) {
19636
+ const currentAttrs = this.tr.getAttrs();
19637
+ Object.keys(currentAttrs).forEach((key) => {
19638
+ if (["rotationSnaps", "enabledAnchors"].includes(key)) this.tr.setAttr(key, []);
19639
+ else this.tr.setAttr(key, void 0);
19640
+ });
19641
+ }
19551
19642
  if (nodesSelected === 1) {
19552
19643
  transformerAttrs = (0, import_merge.default)(transformerAttrs, nodes[0].getTransformerProperties());
19553
19644
  transformerAttrs.enabledAnchors = nodes[0].allowedAnchors();
@@ -19557,8 +19648,10 @@ var WeaveNodesSelectionPlugin = class extends WeavePlugin {
19557
19648
  for (const node of nodes) anchorsArrays.push(node.allowedAnchors());
19558
19649
  transformerAttrs.enabledAnchors = intersectArrays(anchorsArrays);
19559
19650
  }
19560
- this.tr?.setAttrs(transformerAttrs);
19561
- this.tr?.forceUpdate();
19651
+ if (this.tr && this.tr.nodes().length > 0) {
19652
+ this.tr.setAttrs(transformerAttrs);
19653
+ this.tr.forceUpdate();
19654
+ }
19562
19655
  }
19563
19656
  setSelectedNodes(nodes) {
19564
19657
  this.tr.setNodes(nodes);
@@ -21930,7 +22023,7 @@ var WeaveRegisterManager = class {
21930
22023
 
21931
22024
  //#endregion
21932
22025
  //#region package.json
21933
- var version = "0.57.1";
22026
+ var version = "0.58.0";
21934
22027
 
21935
22028
  //#endregion
21936
22029
  //#region src/managers/setup.ts
@@ -28563,7 +28656,8 @@ var WeaveStagePanningPlugin = class extends WeavePlugin {
28563
28656
  if (activeAction === MOVE_TOOL_ACTION_NAME) this.moveToolActive = true;
28564
28657
  if (e.evt.pointerType === "mouse" && e.evt.buttons === 1) this.isMouseLeftButtonPressed = true;
28565
28658
  if (e.evt.pointerType === "mouse" && e.evt.buttons === 4) this.isMouseMiddleButtonPressed = true;
28566
- if (this.enabled && (this.isSpaceKeyPressed || this.moveToolActive && this.isMouseLeftButtonPressed || this.isMouseMiddleButtonPressed)) this.enableMove = true;
28659
+ const isTouchOrPen = ["touch", "pen"].includes(e.evt.pointerType);
28660
+ if (this.enabled && (this.isSpaceKeyPressed || this.moveToolActive && (this.isMouseLeftButtonPressed || isTouchOrPen) || this.isMouseMiddleButtonPressed)) this.enableMove = true;
28567
28661
  if (this.enableMove) {
28568
28662
  this.isDragging = true;
28569
28663
  lastPos = stage.getPointerPosition();
@@ -28575,6 +28669,7 @@ var WeaveStagePanningPlugin = class extends WeavePlugin {
28575
28669
  lastPos = null;
28576
28670
  });
28577
28671
  const handleMouseMove = (e) => {
28672
+ if (["touch", "pen"].includes(e.evt.pointerType) && e.evt.buttons !== 1) return;
28578
28673
  this.pointers.set(e.evt.pointerId, {
28579
28674
  x: e.evt.clientX,
28580
28675
  y: e.evt.clientY
@@ -30063,6 +30158,7 @@ exports.WEAVE_LAYER_NODE_TYPE = WEAVE_LAYER_NODE_TYPE
30063
30158
  exports.WEAVE_LINE_NODE_TYPE = WEAVE_LINE_NODE_TYPE
30064
30159
  exports.WEAVE_NODES_DISTANCE_SNAPPING_PLUGIN_KEY = WEAVE_NODES_DISTANCE_SNAPPING_PLUGIN_KEY
30065
30160
  exports.WEAVE_NODES_EDGE_SNAPPING_PLUGIN_KEY = WEAVE_NODES_EDGE_SNAPPING_PLUGIN_KEY
30161
+ exports.WEAVE_NODES_SELECTION_DEFAULT_CONFIG = WEAVE_NODES_SELECTION_DEFAULT_CONFIG
30066
30162
  exports.WEAVE_NODES_SELECTION_KEY = WEAVE_NODES_SELECTION_KEY
30067
30163
  exports.WEAVE_NODES_SELECTION_LAYER_ID = WEAVE_NODES_SELECTION_LAYER_ID
30068
30164
  exports.WEAVE_RECTANGLE_NODE_TYPE = WEAVE_RECTANGLE_NODE_TYPE
package/dist/sdk.d.cts CHANGED
@@ -7,8 +7,6 @@ import * as konva_lib_Node0 from "konva/lib/Node";
7
7
  import * as konva_lib_Node1 from "konva/lib/Node";
8
8
  import * as konva_lib_Node2 from "konva/lib/Node";
9
9
  import * as konva_lib_Node3 from "konva/lib/Node";
10
- import * as konva_lib_Node4 from "konva/lib/Node";
11
- import * as konva_lib_Node5 from "konva/lib/Node";
12
10
  import { KonvaEventObject } from "konva/lib/Node";
13
11
  import { Stage, StageConfig } from "konva/lib/Stage";
14
12
  import { TransformerConfig } from "konva/lib/shapes/Transformer";
@@ -269,10 +267,16 @@ type WeaveNodesSelectionBehaviorsConfig = {
269
267
  enabled: boolean;
270
268
  };
271
269
  };
270
+ type WeaveNodesSelectionPanningOnSelectionConfig = {
271
+ edgeThreshold: number;
272
+ minScrollSpeed: number;
273
+ maxScrollSpeed: number;
274
+ };
272
275
  type WeaveNodesSelectionConfig = {
273
276
  selection: Konva.TransformerConfig;
274
277
  hover: Konva.TransformerConfig;
275
278
  selectionArea: Konva.RectConfig;
279
+ panningWhenSelection: WeaveNodesSelectionPanningOnSelectionConfig;
276
280
  behaviors: WeaveNodesSelectionBehaviorsConfig;
277
281
  };
278
282
  type WeaveNodesSelectionPluginConfig = Partial<WeaveNodesSelectionConfig>;
@@ -548,7 +552,15 @@ declare class WeaveNodesSelectionPlugin extends WeavePlugin {
548
552
  time: number;
549
553
  } | null;
550
554
  protected lastTapTime: number;
555
+ private x1;
556
+ private y1;
557
+ private x2;
558
+ private y2;
559
+ private selectionStart;
560
+ private panSpeed;
561
+ private readonly panDirection;
551
562
  private pointers;
563
+ private panLoopId;
552
564
  onRender: undefined;
553
565
  constructor(params?: WeaveNodesSelectionPluginParams);
554
566
  getName(): string;
@@ -562,6 +574,11 @@ declare class WeaveNodesSelectionPlugin extends WeavePlugin {
562
574
  private getLayer;
563
575
  triggerSelectedNodesEvent(): void;
564
576
  removeSelectedNodes(): void;
577
+ private updateSelectionRect;
578
+ private getSpeedFromEdge;
579
+ private updatePanDirection;
580
+ private stopPanLoop;
581
+ private panLoop;
565
582
  private setTapStart;
566
583
  private checkMovedDrag;
567
584
  private checkMoved;
@@ -897,7 +914,7 @@ declare function getVisibleNodesInViewport(stage: Konva.Stage, referenceLayer: K
897
914
  declare function getClosestParentWithId(el: DOMElement): DOMElement;
898
915
  declare function isInShadowDOM(el: DOMElement): boolean;
899
916
  declare function getTopmostShadowHost(el: DOMElement): ShadowRoot | null;
900
- declare function getVisibleNodes(instance: Weave, stage: Konva.Stage, nodeParent: Konva.Node, skipNodes: string[], referenceLayer: Konva.Layer | Konva.Group): konva_lib_Node5.Node<konva_lib_Node4.NodeConfig>[];
917
+ declare function getVisibleNodes(instance: Weave, stage: Konva.Stage, nodeParent: Konva.Node, skipNodes: string[], referenceLayer: Konva.Layer | Konva.Group): Konva.Node[];
901
918
  declare function memoize<T extends (...args: any[]) => any>(fn: T): T;
902
919
  declare function isIOS(): boolean;
903
920
 
@@ -2475,6 +2492,45 @@ declare class WeaveStageResizePlugin extends WeavePlugin {
2475
2492
  //# sourceMappingURL=stage-resize.d.ts.map
2476
2493
  declare const WEAVE_NODES_SELECTION_KEY = "nodesSelection";
2477
2494
  declare const WEAVE_NODES_SELECTION_LAYER_ID = "selectionLayer";
2495
+ declare const WEAVE_NODES_SELECTION_DEFAULT_CONFIG: {
2496
+ selection: {
2497
+ rotationSnaps: number[];
2498
+ rotationSnapTolerance: number;
2499
+ ignoreStroke: boolean;
2500
+ rotateEnabled: boolean;
2501
+ resizeEnabled: boolean;
2502
+ flipEnabled: boolean;
2503
+ keepRatio: boolean;
2504
+ useSingleNodeRotation: boolean;
2505
+ shouldOverdrawWholeArea: boolean;
2506
+ enabledAnchors: string[];
2507
+ anchorStyleFunc: (anchor: any) => void;
2508
+ borderStroke: string;
2509
+ borderStrokeWidth: number;
2510
+ };
2511
+ hover: {
2512
+ borderStrokeWidth: number;
2513
+ };
2514
+ selectionArea: {
2515
+ fill: string;
2516
+ stroke: string;
2517
+ strokeWidth: number;
2518
+ dash: number[];
2519
+ };
2520
+ panningWhenSelection: {
2521
+ edgeThreshold: number;
2522
+ minScrollSpeed: number;
2523
+ maxScrollSpeed: number;
2524
+ };
2525
+ behaviors: {
2526
+ singleSelection: {
2527
+ enabled: boolean;
2528
+ };
2529
+ multipleSelection: {
2530
+ enabled: boolean;
2531
+ };
2532
+ };
2533
+ };
2478
2534
 
2479
2535
  //#endregion
2480
2536
  //#region src/plugins/connected-users/constants.d.ts
@@ -2778,5 +2834,5 @@ declare class WeaveCopyPasteNodesPlugin extends WeavePlugin {
2778
2834
  //#endregion
2779
2835
  //# sourceMappingURL=copy-paste-nodes.d.ts.map
2780
2836
 
2781
- export { ALIGN_NODES_ALIGN_TO, ALIGN_NODES_TOOL_ACTION_NAME, ALIGN_NODES_TOOL_STATE, ARROW_TOOL_ACTION_NAME, ARROW_TOOL_STATE, BRUSH_TOOL_ACTION_NAME, BRUSH_TOOL_DEFAULT_CONFIG, BRUSH_TOOL_STATE, COPY_PASTE_NODES_PLUGIN_STATE, DistanceInfoH, DistanceInfoV, ELLIPSE_TOOL_ACTION_NAME, ELLIPSE_TOOL_STATE, ERASER_TOOL_ACTION_NAME, ERASER_TOOL_STATE, FRAME_TOOL_ACTION_NAME, FRAME_TOOL_STATE, GUIDE_DISTANCE_LINE_DEFAULT_CONFIG, GUIDE_ENTER_SNAPPING_TOLERANCE, GUIDE_EXIT_SNAPPING_TOLERANCE, GUIDE_HORIZONTAL_LINE_NAME, GUIDE_LINE_DEFAULT_CONFIG, GUIDE_LINE_DRAG_SNAPPING_THRESHOLD, GUIDE_LINE_NAME, GUIDE_LINE_TRANSFORM_SNAPPING_THRESHOLD, GUIDE_ORIENTATION, GUIDE_VERTICAL_LINE_NAME, Guide, GuideOrientation, GuideOrientationKeys, IMAGE_TOOL_ACTION_NAME, IMAGE_TOOL_STATE, ImageOptions, ImageProps, LineGuide, LineGuideStop, MOVE_TOOL_ACTION_NAME, MOVE_TOOL_STATE, NODE_SNAP, NODE_SNAP_HORIZONTAL, NODE_SNAP_VERTICAL, NodeSnap, NodeSnapHorizontal, NodeSnapHorizontalKeys, NodeSnapKeys, NodeSnapVertical, NodeSnapVerticalKeys, NodeSnappingEdge, NodeSnappingEdges, PEN_TOOL_ACTION_NAME, PEN_TOOL_STATE, PaddingOnPaste, RECTANGLE_TOOL_ACTION_NAME, RECTANGLE_TOOL_STATE, REGULAR_POLYGON_TOOL_ACTION_NAME, REGULAR_POLYGON_TOOL_STATE, SELECTION_TOOL_ACTION_NAME, SELECTION_TOOL_STATE, STAR_TOOL_ACTION_NAME, STAR_TOOL_STATE, TEXT_LAYOUT, TEXT_TOOL_ACTION_NAME, TEXT_TOOL_STATE, TextSerializable, WEAVE_ARROW_NODE_TYPE, WEAVE_COPY_PASTE_CONFIG_DEFAULT, WEAVE_COPY_PASTE_NODES_KEY, WEAVE_COPY_PASTE_PASTE_CATCHER_ID, WEAVE_COPY_PASTE_PASTE_MODES, WEAVE_DEFAULT_USER_INFO_FUNCTION, WEAVE_ELLIPSE_NODE_TYPE, WEAVE_FRAME_NODE_DEFAULT_CONFIG, WEAVE_FRAME_NODE_DEFAULT_PROPS, WEAVE_FRAME_NODE_TYPE, WEAVE_GRID_DEFAULT_COLOR, WEAVE_GRID_DEFAULT_DOT_MAX_DOTS_PER_AXIS, WEAVE_GRID_DEFAULT_MAJOR_DOT_RATIO, WEAVE_GRID_DEFAULT_MAJOR_EVERY, WEAVE_GRID_DEFAULT_MAJOR_LINE_RATIO, WEAVE_GRID_DEFAULT_ORIGIN_COLOR, WEAVE_GRID_DEFAULT_RADIUS, WEAVE_GRID_DEFAULT_SIZE, WEAVE_GRID_DEFAULT_STROKE, WEAVE_GRID_DEFAULT_TYPE, WEAVE_GRID_LAYER_ID, WEAVE_GRID_TYPES, WEAVE_GROUP_NODE_TYPE, WEAVE_IMAGE_CROP_END_TYPE, WEAVE_IMAGE_NODE_TYPE, WEAVE_LAYER_NODE_TYPE, WEAVE_LINE_NODE_TYPE, WEAVE_NODES_DISTANCE_SNAPPING_PLUGIN_KEY, WEAVE_NODES_EDGE_SNAPPING_PLUGIN_KEY, WEAVE_NODES_SELECTION_KEY, WEAVE_NODES_SELECTION_LAYER_ID, WEAVE_RECTANGLE_NODE_TYPE, WEAVE_REGULAR_POLYGON_NODE_TYPE, WEAVE_STAGE_DEFAULT_MODE, WEAVE_STAGE_GRID_KEY, WEAVE_STAGE_NODE_TYPE, WEAVE_STAR_NODE_TYPE, WEAVE_STROKE_NODE_DEFAULT_CONFIG, WEAVE_STROKE_NODE_TYPE, WEAVE_TEXT_NODE_TYPE, WEAVE_USERS_POINTERS_KEY, WEAVE_USERS_SELECTION_KEY, WEAVE_USER_POINTERS_DEFAULT_PROPS, WEAVE_USER_POINTER_KEY, WEAVE_USER_SELECTION_KEY, Weave, WeaveAction, WeaveActionPropsChangeEvent, WeaveAlignNodesToolAction, WeaveAlignNodesToolActionAlignTo, WeaveAlignNodesToolActionAlignToKeys, WeaveAlignNodesToolActionState, WeaveAlignNodesToolActionStateKeys, WeaveAlignNodesToolActionTriggerParams, WeaveArrowNode, WeaveArrowNodeParams, WeaveArrowProperties, WeaveArrowToolAction, WeaveArrowToolActionOnAddedEvent, WeaveArrowToolActionOnAddingEvent, WeaveArrowToolActionState, WeaveArrowToolActionStateKeys, WeaveBrushToolAction, WeaveBrushToolActionOnAddedEvent, WeaveBrushToolActionOnAddingEvent, WeaveBrushToolActionParams, WeaveBrushToolActionProperties, WeaveBrushToolActionState, WeaveBrushToolActionStateKeys, WeaveConnectedUserInfoKey, WeaveConnectedUsers, WeaveConnectedUsersChangeEvent, WeaveConnectedUsersPlugin, WeaveConnectedUsersPluginConfig, WeaveConnectedUsersPluginParams, WeaveContextMenuPlugin, WeaveCopyPasteNodesPlugin, WeaveCopyPasteNodesPluginConfig, WeaveCopyPasteNodesPluginOnCopyEvent, WeaveCopyPasteNodesPluginOnPasteEvent, WeaveCopyPasteNodesPluginOnPasteExternalEvent, WeaveCopyPasteNodesPluginParams, WeaveCopyPasteNodesPluginState, WeaveCopyPasteNodesPluginStateKeys, WeaveCopyPastePasteMode, WeaveCopyPastePasteModeKeys, WeaveEllipseNode, WeaveEllipseNodeParams, WeaveEllipseProperties, WeaveEllipseToolAction, WeaveEllipseToolActionOnAddedEvent, WeaveEllipseToolActionOnAddingEvent, WeaveEllipseToolActionState, WeaveEllipseToolActionStateKeys, WeaveEraserToolAction, WeaveEraserToolActionState, WeaveEraserToolActionStateKeys, WeaveExportNodesActionParams, WeaveExportNodesToolAction, WeaveExportStageActionParams, WeaveExportStageToolAction, WeaveFitToScreenToolAction, WeaveFitToScreenToolActionParams, WeaveFitToSelectionToolAction, WeaveFitToSelectionToolActionParams, WeaveFrameAttributes, WeaveFrameNode, WeaveFrameNodeParams, WeaveFrameProperties, WeaveFrameToolAction, WeaveFrameToolActionOnAddedEvent, WeaveFrameToolActionOnAddingEvent, WeaveFrameToolActionState, WeaveFrameToolActionStateKeys, WeaveFrameToolActionTriggerParams, WeaveFrameToolProps, WeaveGroupNode, WeaveGroupNodeParams, WeaveGroupProperties, WeaveImageCropEndType, WeaveImageCropEndTypeKeys, WeaveImageNode, WeaveImageNodeParams, WeaveImageOnCropEndEvent, WeaveImageOnCropStartEvent, WeaveImageProperties, WeaveImageToolAction, WeaveImageToolActionOnAddedEvent, WeaveImageToolActionOnAddingEvent, WeaveImageToolActionOnEndLoadImageEvent, WeaveImageToolActionOnStartLoadImageEvent, WeaveImageToolActionState, WeaveImageToolActionStateKeys, WeaveImageToolActionTriggerParams, WeaveImageToolActionTriggerReturn, WeaveLayerNode, WeaveLineNode, WeaveLineNodeParams, WeaveLineProperties, WeaveMoveToolAction, WeaveMoveToolActionParams, WeaveMoveToolActionState, WeaveMoveToolActionStateKeys, WeaveNode, WeaveNodesDistanceSnappingPlugin, WeaveNodesDistanceSnappingPluginConfig, WeaveNodesDistanceSnappingPluginParams, WeaveNodesDistanceSnappingUIConfig, WeaveNodesEdgeSnappingPlugin, WeaveNodesEdgeSnappingPluginConfig, WeaveNodesEdgeSnappingPluginParams, WeaveNodesSelectionBehaviorsConfig, WeaveNodesSelectionConfig, WeaveNodesSelectionPlugin, WeaveNodesSelectionPluginConfig, WeaveNodesSelectionPluginOnNodesChangeEvent, WeaveNodesSelectionPluginOnSelectionStateEvent, WeaveNodesSelectionPluginOnStageSelectionEvent, WeaveNodesSelectionPluginParams, WeavePasteModel, WeavePenToolAction, WeavePenToolActionOnAddedEvent, WeavePenToolActionOnAddingEvent, WeavePenToolActionState, WeavePenToolActionStateKeys, WeavePlugin, WeaveRectangleNode, WeaveRectangleNodeParams, WeaveRectangleProperties, WeaveRectangleToolAction, WeaveRectangleToolActionOnAddedEvent, WeaveRectangleToolActionOnAddingEvent, WeaveRectangleToolActionState, WeaveRectangleToolActionStateKeys, WeaveRegularPolygonNode, WeaveRegularPolygonNodeParams, WeaveRegularPolygonProperties, WeaveRegularPolygonToolAction, WeaveRegularPolygonToolActionOnAddedEvent, WeaveRegularPolygonToolActionOnAddingEvent, WeaveRegularPolygonToolActionState, WeaveRegularPolygonToolActionStateKeys, WeaveSelectionToolAction, WeaveSelectionToolActionState, WeaveSelectionToolActionStateKeys, WeaveStageContextMenuPluginConfig, WeaveStageContextMenuPluginOnNodeContextMenuEvent, WeaveStageContextMenuPluginParams, WeaveStageDropAreaPlugin, WeaveStageDropPluginOnStageDropEvent, WeaveStageGridPlugin, WeaveStageGridPluginConfig, WeaveStageGridPluginParams, WeaveStageGridType, WeaveStageGridTypeKeys, WeaveStageNode, WeaveStagePanningPlugin, WeaveStageResizePlugin, WeaveStageZoomChanged, WeaveStageZoomPlugin, WeaveStageZoomPluginConfig, WeaveStageZoomPluginOnZoomChangeEvent, WeaveStageZoomPluginParams, WeaveStageZoomType, WeaveStageZoomTypeKeys, WeaveStarNode, WeaveStarNodeParams, WeaveStarProperties, WeaveStarToolAction, WeaveStarToolActionOnAddedEvent, WeaveStarToolActionOnAddingEvent, WeaveStarToolActionState, WeaveStarToolActionStateKeys, WeaveStore, WeaveStoreOnNodeChangeEvent, WeaveStoreOnRoomLoadedEvent, WeaveStoreOnStateChangeEvent, WeaveStoreOnUndoRedoChangeEvent, WeaveStrokeNode, WeaveStrokeNodeParams, WeaveStrokePoint, WeaveStrokeProperties, WeaveTextLayout, WeaveTextLayoutKeys, WeaveTextNode, WeaveTextNodeParams, WeaveTextProperties, WeaveTextToolAction, WeaveTextToolActionOnAddedEvent, WeaveTextToolActionOnAddingEvent, WeaveTextToolActionState, WeaveTextToolActionStateKeys, WeaveToPasteNode, WeaveUserPointer, WeaveUserPointerKey, WeaveUserPointersUIProperties, WeaveUserSelectionInfo, WeaveUserSelectionKey, WeaveUsersPointersPlugin, WeaveUsersPointersPluginConfig, WeaveUsersPointersPluginParams, WeaveUsersSelectionPlugin, WeaveUsersSelectionPluginConfig, WeaveUsersSelectionPluginParams, WeaveZoomInToolAction, WeaveZoomInToolActionParams, WeaveZoomOutToolAction, WeaveZoomOutToolActionParams, clearContainerTargets, containerOverCursor, containsNodeDeep, getBoundingBox, getClosestParentWithId, getExportBoundingBox, getSelectedNodesMetadata, getTargetAndSkipNodes, getTargetedNode, getTopmostShadowHost, getVisibleNodes, getVisibleNodesInViewport, hasFrames, hasImages, intersectArrays, isIOS, isInShadowDOM, isNodeInSelection, memoize, moveNodeToContainer, resetScale };
2837
+ export { ALIGN_NODES_ALIGN_TO, ALIGN_NODES_TOOL_ACTION_NAME, ALIGN_NODES_TOOL_STATE, ARROW_TOOL_ACTION_NAME, ARROW_TOOL_STATE, BRUSH_TOOL_ACTION_NAME, BRUSH_TOOL_DEFAULT_CONFIG, BRUSH_TOOL_STATE, COPY_PASTE_NODES_PLUGIN_STATE, DistanceInfoH, DistanceInfoV, ELLIPSE_TOOL_ACTION_NAME, ELLIPSE_TOOL_STATE, ERASER_TOOL_ACTION_NAME, ERASER_TOOL_STATE, FRAME_TOOL_ACTION_NAME, FRAME_TOOL_STATE, GUIDE_DISTANCE_LINE_DEFAULT_CONFIG, GUIDE_ENTER_SNAPPING_TOLERANCE, GUIDE_EXIT_SNAPPING_TOLERANCE, GUIDE_HORIZONTAL_LINE_NAME, GUIDE_LINE_DEFAULT_CONFIG, GUIDE_LINE_DRAG_SNAPPING_THRESHOLD, GUIDE_LINE_NAME, GUIDE_LINE_TRANSFORM_SNAPPING_THRESHOLD, GUIDE_ORIENTATION, GUIDE_VERTICAL_LINE_NAME, Guide, GuideOrientation, GuideOrientationKeys, IMAGE_TOOL_ACTION_NAME, IMAGE_TOOL_STATE, ImageOptions, ImageProps, LineGuide, LineGuideStop, MOVE_TOOL_ACTION_NAME, MOVE_TOOL_STATE, NODE_SNAP, NODE_SNAP_HORIZONTAL, NODE_SNAP_VERTICAL, NodeSnap, NodeSnapHorizontal, NodeSnapHorizontalKeys, NodeSnapKeys, NodeSnapVertical, NodeSnapVerticalKeys, NodeSnappingEdge, NodeSnappingEdges, PEN_TOOL_ACTION_NAME, PEN_TOOL_STATE, PaddingOnPaste, RECTANGLE_TOOL_ACTION_NAME, RECTANGLE_TOOL_STATE, REGULAR_POLYGON_TOOL_ACTION_NAME, REGULAR_POLYGON_TOOL_STATE, SELECTION_TOOL_ACTION_NAME, SELECTION_TOOL_STATE, STAR_TOOL_ACTION_NAME, STAR_TOOL_STATE, TEXT_LAYOUT, TEXT_TOOL_ACTION_NAME, TEXT_TOOL_STATE, TextSerializable, WEAVE_ARROW_NODE_TYPE, WEAVE_COPY_PASTE_CONFIG_DEFAULT, WEAVE_COPY_PASTE_NODES_KEY, WEAVE_COPY_PASTE_PASTE_CATCHER_ID, WEAVE_COPY_PASTE_PASTE_MODES, WEAVE_DEFAULT_USER_INFO_FUNCTION, WEAVE_ELLIPSE_NODE_TYPE, WEAVE_FRAME_NODE_DEFAULT_CONFIG, WEAVE_FRAME_NODE_DEFAULT_PROPS, WEAVE_FRAME_NODE_TYPE, WEAVE_GRID_DEFAULT_COLOR, WEAVE_GRID_DEFAULT_DOT_MAX_DOTS_PER_AXIS, WEAVE_GRID_DEFAULT_MAJOR_DOT_RATIO, WEAVE_GRID_DEFAULT_MAJOR_EVERY, WEAVE_GRID_DEFAULT_MAJOR_LINE_RATIO, WEAVE_GRID_DEFAULT_ORIGIN_COLOR, WEAVE_GRID_DEFAULT_RADIUS, WEAVE_GRID_DEFAULT_SIZE, WEAVE_GRID_DEFAULT_STROKE, WEAVE_GRID_DEFAULT_TYPE, WEAVE_GRID_LAYER_ID, WEAVE_GRID_TYPES, WEAVE_GROUP_NODE_TYPE, WEAVE_IMAGE_CROP_END_TYPE, WEAVE_IMAGE_NODE_TYPE, WEAVE_LAYER_NODE_TYPE, WEAVE_LINE_NODE_TYPE, WEAVE_NODES_DISTANCE_SNAPPING_PLUGIN_KEY, WEAVE_NODES_EDGE_SNAPPING_PLUGIN_KEY, WEAVE_NODES_SELECTION_DEFAULT_CONFIG, WEAVE_NODES_SELECTION_KEY, WEAVE_NODES_SELECTION_LAYER_ID, WEAVE_RECTANGLE_NODE_TYPE, WEAVE_REGULAR_POLYGON_NODE_TYPE, WEAVE_STAGE_DEFAULT_MODE, WEAVE_STAGE_GRID_KEY, WEAVE_STAGE_NODE_TYPE, WEAVE_STAR_NODE_TYPE, WEAVE_STROKE_NODE_DEFAULT_CONFIG, WEAVE_STROKE_NODE_TYPE, WEAVE_TEXT_NODE_TYPE, WEAVE_USERS_POINTERS_KEY, WEAVE_USERS_SELECTION_KEY, WEAVE_USER_POINTERS_DEFAULT_PROPS, WEAVE_USER_POINTER_KEY, WEAVE_USER_SELECTION_KEY, Weave, WeaveAction, WeaveActionPropsChangeEvent, WeaveAlignNodesToolAction, WeaveAlignNodesToolActionAlignTo, WeaveAlignNodesToolActionAlignToKeys, WeaveAlignNodesToolActionState, WeaveAlignNodesToolActionStateKeys, WeaveAlignNodesToolActionTriggerParams, WeaveArrowNode, WeaveArrowNodeParams, WeaveArrowProperties, WeaveArrowToolAction, WeaveArrowToolActionOnAddedEvent, WeaveArrowToolActionOnAddingEvent, WeaveArrowToolActionState, WeaveArrowToolActionStateKeys, WeaveBrushToolAction, WeaveBrushToolActionOnAddedEvent, WeaveBrushToolActionOnAddingEvent, WeaveBrushToolActionParams, WeaveBrushToolActionProperties, WeaveBrushToolActionState, WeaveBrushToolActionStateKeys, WeaveConnectedUserInfoKey, WeaveConnectedUsers, WeaveConnectedUsersChangeEvent, WeaveConnectedUsersPlugin, WeaveConnectedUsersPluginConfig, WeaveConnectedUsersPluginParams, WeaveContextMenuPlugin, WeaveCopyPasteNodesPlugin, WeaveCopyPasteNodesPluginConfig, WeaveCopyPasteNodesPluginOnCopyEvent, WeaveCopyPasteNodesPluginOnPasteEvent, WeaveCopyPasteNodesPluginOnPasteExternalEvent, WeaveCopyPasteNodesPluginParams, WeaveCopyPasteNodesPluginState, WeaveCopyPasteNodesPluginStateKeys, WeaveCopyPastePasteMode, WeaveCopyPastePasteModeKeys, WeaveEllipseNode, WeaveEllipseNodeParams, WeaveEllipseProperties, WeaveEllipseToolAction, WeaveEllipseToolActionOnAddedEvent, WeaveEllipseToolActionOnAddingEvent, WeaveEllipseToolActionState, WeaveEllipseToolActionStateKeys, WeaveEraserToolAction, WeaveEraserToolActionState, WeaveEraserToolActionStateKeys, WeaveExportNodesActionParams, WeaveExportNodesToolAction, WeaveExportStageActionParams, WeaveExportStageToolAction, WeaveFitToScreenToolAction, WeaveFitToScreenToolActionParams, WeaveFitToSelectionToolAction, WeaveFitToSelectionToolActionParams, WeaveFrameAttributes, WeaveFrameNode, WeaveFrameNodeParams, WeaveFrameProperties, WeaveFrameToolAction, WeaveFrameToolActionOnAddedEvent, WeaveFrameToolActionOnAddingEvent, WeaveFrameToolActionState, WeaveFrameToolActionStateKeys, WeaveFrameToolActionTriggerParams, WeaveFrameToolProps, WeaveGroupNode, WeaveGroupNodeParams, WeaveGroupProperties, WeaveImageCropEndType, WeaveImageCropEndTypeKeys, WeaveImageNode, WeaveImageNodeParams, WeaveImageOnCropEndEvent, WeaveImageOnCropStartEvent, WeaveImageProperties, WeaveImageToolAction, WeaveImageToolActionOnAddedEvent, WeaveImageToolActionOnAddingEvent, WeaveImageToolActionOnEndLoadImageEvent, WeaveImageToolActionOnStartLoadImageEvent, WeaveImageToolActionState, WeaveImageToolActionStateKeys, WeaveImageToolActionTriggerParams, WeaveImageToolActionTriggerReturn, WeaveLayerNode, WeaveLineNode, WeaveLineNodeParams, WeaveLineProperties, WeaveMoveToolAction, WeaveMoveToolActionParams, WeaveMoveToolActionState, WeaveMoveToolActionStateKeys, WeaveNode, WeaveNodesDistanceSnappingPlugin, WeaveNodesDistanceSnappingPluginConfig, WeaveNodesDistanceSnappingPluginParams, WeaveNodesDistanceSnappingUIConfig, WeaveNodesEdgeSnappingPlugin, WeaveNodesEdgeSnappingPluginConfig, WeaveNodesEdgeSnappingPluginParams, WeaveNodesSelectionBehaviorsConfig, WeaveNodesSelectionConfig, WeaveNodesSelectionPanningOnSelectionConfig, WeaveNodesSelectionPlugin, WeaveNodesSelectionPluginConfig, WeaveNodesSelectionPluginOnNodesChangeEvent, WeaveNodesSelectionPluginOnSelectionStateEvent, WeaveNodesSelectionPluginOnStageSelectionEvent, WeaveNodesSelectionPluginParams, WeavePasteModel, WeavePenToolAction, WeavePenToolActionOnAddedEvent, WeavePenToolActionOnAddingEvent, WeavePenToolActionState, WeavePenToolActionStateKeys, WeavePlugin, WeaveRectangleNode, WeaveRectangleNodeParams, WeaveRectangleProperties, WeaveRectangleToolAction, WeaveRectangleToolActionOnAddedEvent, WeaveRectangleToolActionOnAddingEvent, WeaveRectangleToolActionState, WeaveRectangleToolActionStateKeys, WeaveRegularPolygonNode, WeaveRegularPolygonNodeParams, WeaveRegularPolygonProperties, WeaveRegularPolygonToolAction, WeaveRegularPolygonToolActionOnAddedEvent, WeaveRegularPolygonToolActionOnAddingEvent, WeaveRegularPolygonToolActionState, WeaveRegularPolygonToolActionStateKeys, WeaveSelectionToolAction, WeaveSelectionToolActionState, WeaveSelectionToolActionStateKeys, WeaveStageContextMenuPluginConfig, WeaveStageContextMenuPluginOnNodeContextMenuEvent, WeaveStageContextMenuPluginParams, WeaveStageDropAreaPlugin, WeaveStageDropPluginOnStageDropEvent, WeaveStageGridPlugin, WeaveStageGridPluginConfig, WeaveStageGridPluginParams, WeaveStageGridType, WeaveStageGridTypeKeys, WeaveStageNode, WeaveStagePanningPlugin, WeaveStageResizePlugin, WeaveStageZoomChanged, WeaveStageZoomPlugin, WeaveStageZoomPluginConfig, WeaveStageZoomPluginOnZoomChangeEvent, WeaveStageZoomPluginParams, WeaveStageZoomType, WeaveStageZoomTypeKeys, WeaveStarNode, WeaveStarNodeParams, WeaveStarProperties, WeaveStarToolAction, WeaveStarToolActionOnAddedEvent, WeaveStarToolActionOnAddingEvent, WeaveStarToolActionState, WeaveStarToolActionStateKeys, WeaveStore, WeaveStoreOnNodeChangeEvent, WeaveStoreOnRoomLoadedEvent, WeaveStoreOnStateChangeEvent, WeaveStoreOnUndoRedoChangeEvent, WeaveStrokeNode, WeaveStrokeNodeParams, WeaveStrokePoint, WeaveStrokeProperties, WeaveTextLayout, WeaveTextLayoutKeys, WeaveTextNode, WeaveTextNodeParams, WeaveTextProperties, WeaveTextToolAction, WeaveTextToolActionOnAddedEvent, WeaveTextToolActionOnAddingEvent, WeaveTextToolActionState, WeaveTextToolActionStateKeys, WeaveToPasteNode, WeaveUserPointer, WeaveUserPointerKey, WeaveUserPointersUIProperties, WeaveUserSelectionInfo, WeaveUserSelectionKey, WeaveUsersPointersPlugin, WeaveUsersPointersPluginConfig, WeaveUsersPointersPluginParams, WeaveUsersSelectionPlugin, WeaveUsersSelectionPluginConfig, WeaveUsersSelectionPluginParams, WeaveZoomInToolAction, WeaveZoomInToolActionParams, WeaveZoomOutToolAction, WeaveZoomOutToolActionParams, clearContainerTargets, containerOverCursor, containsNodeDeep, getBoundingBox, getClosestParentWithId, getExportBoundingBox, getSelectedNodesMetadata, getTargetAndSkipNodes, getTargetedNode, getTopmostShadowHost, getVisibleNodes, getVisibleNodesInViewport, hasFrames, hasImages, intersectArrays, isIOS, isInShadowDOM, isNodeInSelection, memoize, moveNodeToContainer, resetScale };
2782
2838
  //# sourceMappingURL=sdk.d.cts.map