@inditextech/weave-sdk 3.8.0 → 3.9.0-SNAPSHOT.172.1

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.js CHANGED
@@ -17679,19 +17679,20 @@ function moveNodeToContainerNT(instance, node, containerToMove, originalNode, or
17679
17679
  node.rotation(nodeRotation);
17680
17680
  node.x(node.x() - (layerToMoveAttrs.containerOffsetX ?? 0));
17681
17681
  node.y(node.y() - (layerToMoveAttrs.containerOffsetY ?? 0));
17682
- node.movedToContainer(layerToMove);
17682
+ node.destroy();
17683
+ const newNode = node.clone();
17683
17684
  instance.emitEvent("onNodeMovedToContainer", {
17684
- node: node.clone(),
17685
+ node: newNode,
17685
17686
  container: layerToMove,
17686
17687
  originalNode,
17687
17688
  originalContainer
17688
17689
  });
17689
17690
  const nodeHandler = instance.getNodeHandler(node.getAttrs().nodeType);
17690
17691
  if (nodeHandler) {
17691
- node.setAttrs({ onMoveContainer: true });
17692
- const actualNode = nodeHandler.serialize(node);
17693
- instance.removeNodeNT(actualNode, { emitUserChangeEvent: false });
17694
- instance.addNodeNT(actualNode, layerToMoveAttrs.id, {
17692
+ const actualNodeState = nodeHandler.serialize(node);
17693
+ const newNodeState = nodeHandler.serialize(newNode);
17694
+ instance.removeNodeNT(actualNodeState, { emitUserChangeEvent: false });
17695
+ instance.addNodeNT(newNodeState, layerToMoveAttrs.id, {
17695
17696
  emitUserChangeEvent: false,
17696
17697
  overrideUserChangeType: WEAVE_NODE_CHANGE_TYPE.UPDATE
17697
17698
  });
@@ -17920,17 +17921,6 @@ function isIOS() {
17920
17921
  return /iPad|iPhone|iPod/.test(navigator.userAgent) || navigator.userAgent.includes("Mac") && "ontouchend" in document;
17921
17922
  }
17922
17923
  const isServer = () => typeof window === "undefined";
17923
- const getPositionRelativeToContainerOnPosition = (instance) => {
17924
- let position = instance.getStage().getRelativePointerPosition();
17925
- if (!position) return position;
17926
- const container = containerOverCursor(instance, [], position);
17927
- if (container) if (container.getAttrs().containerId) {
17928
- const containerNode = container.findOne(`#${container.getAttrs().containerId}`);
17929
- if (containerNode) position = containerNode?.getRelativePointerPosition();
17930
- } else position = container?.getRelativePointerPosition();
17931
- if (!position) return position;
17932
- return position;
17933
- };
17934
17924
  const canComposite = (node) => {
17935
17925
  const parent = node.getParent();
17936
17926
  return parent?.getClassName() === "Group" && parent?.getAttrs().nodeType !== "frame" && parent?.getAttrs().nodeId === void 0;
@@ -18838,16 +18828,21 @@ var WeaveNodesSelectionPlugin = class extends WeavePlugin {
18838
18828
  if (moved) this.getContextMenuPlugin()?.cancelLongPressTimer();
18839
18829
  this.triggerSelectedNodesEvent();
18840
18830
  if (this.getUsersPresencePlugin()) {
18841
- for (const node of tr.nodes()) this.getUsersPresencePlugin()?.setPresence(node.id(), {
18842
- x: node.x(),
18843
- y: node.y(),
18844
- width: node.width(),
18845
- height: node.height(),
18846
- scaleX: node.scaleX(),
18847
- scaleY: node.scaleY(),
18848
- rotation: node.rotation(),
18849
- strokeScaleEnabled: false
18850
- }, false);
18831
+ for (const node of tr.nodes()) {
18832
+ let parentId = node.getParent()?.id() ?? "";
18833
+ const parent = node.getParent();
18834
+ if (parent?.getAttrs().nodeId) parentId = parent.getAttrs().nodeId;
18835
+ this.getUsersPresencePlugin()?.setPresence(node.id(), parentId, {
18836
+ x: node.x(),
18837
+ y: node.y(),
18838
+ width: node.width(),
18839
+ height: node.height(),
18840
+ scaleX: node.scaleX(),
18841
+ scaleY: node.scaleY(),
18842
+ rotation: node.rotation(),
18843
+ strokeScaleEnabled: false
18844
+ }, false);
18845
+ }
18851
18846
  this.getUsersPresencePlugin()?.forceSendPresence();
18852
18847
  }
18853
18848
  };
@@ -18935,10 +18930,15 @@ var WeaveNodesSelectionPlugin = class extends WeavePlugin {
18935
18930
  clearContainerTargets(this.instance);
18936
18931
  const layerToMove = containerOverCursor(this.instance, selectedNodes);
18937
18932
  if (this.getUsersPresencePlugin() && this.dragInProcess) {
18938
- for (const node of selectedNodes) this.getUsersPresencePlugin()?.setPresence(node.id(), {
18939
- x: node.x(),
18940
- y: node.y()
18941
- }, false);
18933
+ for (const node of selectedNodes) {
18934
+ let parentId = node.getParent()?.id() ?? "";
18935
+ const parent = node.getParent();
18936
+ if (parent?.getAttrs().nodeId) parentId = parent.getAttrs().nodeId;
18937
+ this.getUsersPresencePlugin()?.setPresence(node.id(), parentId, {
18938
+ x: node.x(),
18939
+ y: node.y()
18940
+ }, false);
18941
+ }
18942
18942
  this.getUsersPresencePlugin()?.forceSendPresence();
18943
18943
  }
18944
18944
  if (layerToMove && !selectionContainsFrames) layerToMove.fire(WEAVE_NODE_CUSTOM_EVENTS.onTargetEnter, { bubbles: true });
@@ -20167,7 +20167,6 @@ const augmentKonvaNodeClass = (config) => {
20167
20167
  Konva.Node.prototype.getRealClientRect = function(config$1) {
20168
20168
  return this.getClientRect(config$1);
20169
20169
  };
20170
- Konva.Node.prototype.movedToContainer = function() {};
20171
20170
  Konva.Node.prototype.updatePosition = function() {};
20172
20171
  Konva.Node.prototype.triggerCrop = function() {};
20173
20172
  Konva.Node.prototype.closeCrop = function() {};
@@ -20217,7 +20216,6 @@ var WeaveNode = class {
20217
20216
  "bottom-right"
20218
20217
  ];
20219
20218
  };
20220
- node.movedToContainer = function() {};
20221
20219
  node.updatePosition = function() {};
20222
20220
  node.resetCrop = function() {};
20223
20221
  node.handleMouseover = function() {};
@@ -20406,7 +20404,10 @@ var WeaveNode = class {
20406
20404
  const nodesEdgeSnappingPlugin = this.getNodesEdgeSnappingPlugin();
20407
20405
  if (nodesSelectionPlugin && this.isSelecting() && this.isNodeSelected(node$1)) nodesSelectionPlugin.getTransformer().forceUpdate();
20408
20406
  if (nodesEdgeSnappingPlugin && transforming && this.isSelecting() && this.isNodeSelected(node$1)) nodesEdgeSnappingPlugin.evaluateGuidelines(e);
20409
- this.getUsersPresencePlugin()?.setPresence(node$1.id(), {
20407
+ let parentId = node$1.getParent()?.id() ?? "";
20408
+ const parent = node$1.getParent();
20409
+ if (parent?.getAttrs().nodeId) parentId = parent.getAttrs().nodeId;
20410
+ this.getUsersPresencePlugin()?.setPresence(node$1.id(), parentId, {
20410
20411
  x: node$1.x(),
20411
20412
  y: node$1.y(),
20412
20413
  width: node$1.width(),
@@ -20558,7 +20559,10 @@ var WeaveNode = class {
20558
20559
  }
20559
20560
  if (this.isSelecting() && this.getSelectionPlugin()?.getSelectedNodes().length === 1) {
20560
20561
  clearContainerTargets(this.instance);
20561
- this.getUsersPresencePlugin()?.setPresence(realNodeTarget.id(), {
20562
+ let parentId = realNodeTarget.getParent()?.id() ?? "";
20563
+ const parent = realNodeTarget.getParent();
20564
+ if (parent?.getAttrs().nodeId) parentId = parent.getAttrs().nodeId;
20565
+ this.getUsersPresencePlugin()?.setPresence(realNodeTarget.id(), parentId, {
20562
20566
  x: realNodeTarget.x(),
20563
20567
  y: realNodeTarget.y()
20564
20568
  });
@@ -20771,7 +20775,6 @@ var WeaveNode = class {
20771
20775
  delete cleanedAttrs.mutexUserId;
20772
20776
  delete cleanedAttrs.draggable;
20773
20777
  delete cleanedAttrs.overridesMouseControl;
20774
- delete cleanedAttrs.onMoveContainer;
20775
20778
  delete cleanedAttrs.dragBoundFunc;
20776
20779
  return {
20777
20780
  key: attrs.id ?? "",
@@ -21386,45 +21389,23 @@ var WeaveTargetingManager = class {
21386
21389
  }
21387
21390
  getMousePointer(point) {
21388
21391
  this.logger.debug({ point }, "getMousePointer");
21389
- const stage = this.instance.getStage();
21390
21392
  const mainLayer = this.instance.getMainLayer();
21391
21393
  let relativeMousePointer = typeof point !== "undefined" ? point : mainLayer?.getRelativePointerPosition() ?? {
21392
21394
  x: 0,
21393
21395
  y: 0
21394
21396
  };
21395
- let measureContainer = mainLayer;
21396
- let container = mainLayer;
21397
21397
  const utilityLayer = this.instance.getUtilityLayer();
21398
21398
  if (utilityLayer) utilityLayer.visible(false);
21399
+ const containerAlt = containerOverCursor(this.instance, [], relativeMousePointer);
21399
21400
  const nodesSelection = this.instance.getPlugin("nodesSelection");
21400
21401
  if (nodesSelection) nodesSelection.getTransformer().visible(false);
21401
- const dummyRect = new Konva.Rect({
21402
- width: 10,
21403
- height: 10,
21404
- x: relativeMousePointer.x,
21405
- y: relativeMousePointer.y
21406
- });
21407
- mainLayer?.add(dummyRect);
21408
- const intersectedNode = this.nodeIntersectsContainerElement(dummyRect);
21409
- if (intersectedNode) {
21410
- const containerOfNode = stage.findOne(`#${intersectedNode.getAttrs().containerId}`);
21411
- if (containerOfNode) {
21412
- container = intersectedNode;
21413
- measureContainer = containerOfNode;
21414
- }
21415
- }
21416
- if (typeof point === "undefined" && container?.getAttrs().nodeType !== "layer") relativeMousePointer = measureContainer?.getRelativePointerPosition() ?? relativeMousePointer;
21417
- if (typeof point === "undefined" && container?.getAttrs().nodeType === "layer") relativeMousePointer = measureContainer?.getRelativePointerPosition() ?? {
21418
- x: 0,
21419
- y: 0
21420
- };
21402
+ relativeMousePointer = containerAlt?.getRelativePointerPosition() ?? relativeMousePointer;
21421
21403
  if (utilityLayer) utilityLayer.visible(true);
21422
21404
  if (nodesSelection) nodesSelection.getTransformer().visible(true);
21423
- dummyRect.destroy();
21424
21405
  return {
21425
21406
  mousePoint: relativeMousePointer,
21426
- container,
21427
- measureContainer
21407
+ container: containerAlt,
21408
+ measureContainer: containerAlt
21428
21409
  };
21429
21410
  }
21430
21411
  getMousePointerRelativeToContainer(container) {
@@ -22013,7 +21994,7 @@ var WeaveRegisterManager = class {
22013
21994
 
22014
21995
  //#endregion
22015
21996
  //#region package.json
22016
- var version = "3.8.0";
21997
+ var version = "3.9.0-SNAPSHOT.172.1";
22017
21998
 
22018
21999
  //#endregion
22019
22000
  //#region src/managers/setup.ts
@@ -23453,7 +23434,7 @@ var Weave = class {
23453
23434
  this.moduleLogger.info("Start instance");
23454
23435
  if (!this.isServerSide()) {
23455
23436
  this.eventsController = new AbortController();
23456
- if (!window.weave) window.weave = this;
23437
+ window.weave = this;
23457
23438
  }
23458
23439
  this.emitEvent("onRoomLoaded", false);
23459
23440
  this.status = WEAVE_INSTANCE_STATUS.STARTING;
@@ -24444,7 +24425,6 @@ var WeaveLayerNode = class extends WeaveNode {
24444
24425
  delete cleanedAttrs.mutexUserId;
24445
24426
  delete cleanedAttrs.draggable;
24446
24427
  delete cleanedAttrs.overridesMouseControl;
24447
- delete cleanedAttrs.onMoveContainer;
24448
24428
  delete cleanedAttrs.dragBoundFunc;
24449
24429
  return {
24450
24430
  key: attrs.id ?? "",
@@ -24529,7 +24509,6 @@ var WeaveGroupNode = class extends WeaveNode {
24529
24509
  delete cleanedAttrs.mutexUserId;
24530
24510
  delete cleanedAttrs.draggable;
24531
24511
  delete cleanedAttrs.overridesMouseControl;
24532
- delete cleanedAttrs.onMoveContainer;
24533
24512
  delete cleanedAttrs.dragBoundFunc;
24534
24513
  return {
24535
24514
  key: attrs.id ?? "",
@@ -25318,7 +25297,6 @@ var WeaveTextNode = class extends WeaveNode {
25318
25297
  delete cleanedAttrs.measureMultilineText;
25319
25298
  delete cleanedAttrs.overridesMouseControl;
25320
25299
  delete cleanedAttrs.shouldUpdateOnTransform;
25321
- delete cleanedAttrs.onMoveContainer;
25322
25300
  delete cleanedAttrs.dragBoundFunc;
25323
25301
  return {
25324
25302
  key: attrs.id ?? "",
@@ -25710,6 +25688,7 @@ const WEAVE_IMAGE_CROP_ANCHOR_POSITION = {
25710
25688
  ["BOTTOM_CENTER"]: "bottom-center"
25711
25689
  };
25712
25690
  const WEAVE_IMAGE_DEFAULT_CONFIG = {
25691
+ cleanup: { intervalMs: 60 * 1e3 },
25713
25692
  performance: { cache: { enabled: false } },
25714
25693
  style: {
25715
25694
  placeholder: { fill: "#aaaaaa" },
@@ -26409,6 +26388,25 @@ var WeaveImageNode = class extends WeaveNode {
26409
26388
  this.imageTryoutAttempts = {};
26410
26389
  this.imageFallback = {};
26411
26390
  }
26391
+ setupNotUsedImagesCleanup() {
26392
+ const cleanupHandler = () => {
26393
+ this.notUsedImagesCleanup = null;
26394
+ const stage = this.instance.getStage();
26395
+ const nodesIds = Object.keys(this.imageState);
26396
+ for (const nodeId of nodesIds) {
26397
+ const node = stage.findOne(`#${nodeId}`);
26398
+ if (!node) {
26399
+ delete this.imageSource[nodeId];
26400
+ delete this.imageState[nodeId];
26401
+ delete this.imageTryoutAttempts[nodeId];
26402
+ delete this.imageFallback[nodeId];
26403
+ }
26404
+ }
26405
+ this.setupNotUsedImagesCleanup();
26406
+ };
26407
+ const bindedCleanupHandler = cleanupHandler.bind(this);
26408
+ if (!this.notUsedImagesCleanup) setTimeout(bindedCleanupHandler, this.config.cleanup.intervalMs);
26409
+ }
26412
26410
  preloadCursors() {
26413
26411
  return new Promise((resolve) => {
26414
26412
  (async () => {
@@ -26485,6 +26483,7 @@ var WeaveImageNode = class extends WeaveNode {
26485
26483
  this.instance.resolveAsyncElement(nodeId, WEAVE_IMAGE_NODE_TYPE);
26486
26484
  }
26487
26485
  onRender(props) {
26486
+ this.setupNotUsedImagesCleanup();
26488
26487
  const imageProperties = props.imageProperties;
26489
26488
  const imageProps = props;
26490
26489
  const { id } = imageProps;
@@ -26510,11 +26509,6 @@ var WeaveImageNode = class extends WeaveNode {
26510
26509
  if (this.isSelecting() && selectedNodes.includes(image)) return "grab";
26511
26510
  return "pointer";
26512
26511
  };
26513
- image.movedToContainer = () => {
26514
- const stage = this.instance.getStage();
26515
- const image$1 = stage.findOne(`#${id}`);
26516
- if (!image$1) return;
26517
- };
26518
26512
  if (this.config.cropMode.enabled) {
26519
26513
  image.triggerCrop = () => {
26520
26514
  this.triggerCrop(image, { cmdCtrl: { triggered: false } });
@@ -27226,8 +27220,6 @@ var WeaveImageNode = class extends WeaveNode {
27226
27220
  }
27227
27221
  onDestroy(nodeInstance) {
27228
27222
  const nodeId = nodeInstance.getAttrs().id ?? "";
27229
- const isMoveContainer = nodeInstance.getAttr("onMoveContainer");
27230
- nodeInstance.setAttr("onMoveContainer", void 0);
27231
27223
  const utilityLayer = this.instance.getUtilityLayer();
27232
27224
  const nodes = utilityLayer?.find(".cropMode") ?? [];
27233
27225
  nodes.forEach((n) => {
@@ -27237,12 +27229,6 @@ var WeaveImageNode = class extends WeaveNode {
27237
27229
  clearTimeout(this.imageTryoutIds[nodeId]);
27238
27230
  delete this.imageTryoutIds[nodeId];
27239
27231
  }
27240
- if (!isMoveContainer) {
27241
- delete this.imageSource[nodeId];
27242
- delete this.imageState[nodeId];
27243
- delete this.imageTryoutAttempts[nodeId];
27244
- delete this.imageFallback[nodeId];
27245
- }
27246
27232
  nodeInstance.destroy();
27247
27233
  }
27248
27234
  };
@@ -27789,7 +27775,6 @@ var WeaveFrameNode = class extends WeaveNode {
27789
27775
  delete cleanedAttrs.draggable;
27790
27776
  delete cleanedAttrs.onTargetEnter;
27791
27777
  delete cleanedAttrs.overridesMouseControl;
27792
- delete cleanedAttrs.onMoveContainer;
27793
27778
  delete cleanedAttrs.dragBoundFunc;
27794
27779
  return {
27795
27780
  key: realAttrs?.id ?? "",
@@ -28028,7 +28013,6 @@ var WeaveStrokeNode = class extends WeaveNode {
28028
28013
  delete cleanedAttrs.sceneFunc;
28029
28014
  delete cleanedAttrs.hitFunc;
28030
28015
  delete cleanedAttrs.overridesMouseControl;
28031
- delete cleanedAttrs.onMoveContainer;
28032
28016
  delete cleanedAttrs.dragBoundFunc;
28033
28017
  return {
28034
28018
  key: attrs.id ?? "",
@@ -29573,6 +29557,7 @@ var WeaveVideoNode = class extends WeaveNode {
29573
29557
  const videoIconGroup = video.findOne(`#${id}-video-icon-group`);
29574
29558
  if (!videoPlaceholder || !videoIconGroup) return;
29575
29559
  const realVideoPlaceholderURL = this.config.urlTransformer?.(videoProps.videoPlaceholderURL ?? "", video) ?? videoProps.videoPlaceholderURL;
29560
+ if (!this.videoPlaceholder) this.initialize();
29576
29561
  this.videoPlaceholder[id] = Konva.Util.createImageElement();
29577
29562
  this.videoPlaceholder[id].crossOrigin = this.config.crossOrigin;
29578
29563
  this.videoPlaceholder[id].src = realVideoPlaceholderURL;
@@ -31960,7 +31945,6 @@ var WeaveConnectorNode = class extends WeaveNode {
31960
31945
  delete cleanedAttrs.startInfoLoaded;
31961
31946
  delete cleanedAttrs.endInfoLoaded;
31962
31947
  delete cleanedAttrs.overridesMouseControl;
31963
- delete cleanedAttrs.onMoveContainer;
31964
31948
  delete cleanedAttrs.dragBoundFunc;
31965
31949
  return {
31966
31950
  key: attrs.id ?? "",
@@ -34419,7 +34403,7 @@ var WeaveImageToolAction = class extends WeaveAction {
34419
34403
  const dragProperties = this.instance.getDragProperties();
34420
34404
  if (dragProperties && dragId === WEAVE_IMAGE_TOOL_ACTION_NAME) {
34421
34405
  this.instance.getStage().setPointersPositions(e);
34422
- const position = getPositionRelativeToContainerOnPosition(this.instance);
34406
+ const position = this.instance.getStage().getRelativePointerPosition();
34423
34407
  if (!position) return;
34424
34408
  this.instance.triggerAction(WEAVE_IMAGE_TOOL_ACTION_NAME, {
34425
34409
  type: WEAVE_IMAGE_TOOL_UPLOAD_TYPE.IMAGE_URL,
@@ -34869,7 +34853,7 @@ var WeaveImagesToolAction = class extends WeaveAction {
34869
34853
  const dragProperties = this.instance.getDragProperties();
34870
34854
  if (dragProperties && dragId === WEAVE_IMAGES_TOOL_ACTION_NAME) {
34871
34855
  this.instance.getStage().setPointersPositions(e);
34872
- const position = getPositionRelativeToContainerOnPosition(this.instance);
34856
+ const position = this.instance.getStage().getRelativePointerPosition();
34873
34857
  if (!position) return;
34874
34858
  this.instance.triggerAction(WEAVE_IMAGES_TOOL_ACTION_NAME, {
34875
34859
  type: WEAVE_IMAGES_TOOL_UPLOAD_TYPE.IMAGE_URL,
@@ -36980,7 +36964,7 @@ var WeaveVideoToolAction = class extends WeaveAction {
36980
36964
  const dragProperties = this.instance.getDragProperties();
36981
36965
  if (dragProperties && dragId === VIDEO_TOOL_ACTION_NAME) {
36982
36966
  this.instance.getStage().setPointersPositions(e);
36983
- const position = getPositionRelativeToContainerOnPosition(this.instance);
36967
+ const position = this.instance.getStage().getRelativePointerPosition();
36984
36968
  this.instance.triggerAction(VIDEO_TOOL_ACTION_NAME, {
36985
36969
  videoId: dragProperties.videoId,
36986
36970
  videoParams: dragProperties.videoParams,
@@ -39258,7 +39242,11 @@ var WeaveUsersPresencePlugin = class extends WeavePlugin {
39258
39242
  const presenceInfo = userPresence[nodeId];
39259
39243
  if (this.config.getUser().id === presenceInfo.userId) continue;
39260
39244
  const nodeInstance = stage.findOne(`#${presenceInfo.nodeId}`);
39261
- if (nodeInstance) {
39245
+ if (!nodeInstance) continue;
39246
+ let parentId = nodeInstance.getParent()?.id() ?? "";
39247
+ const parent = nodeInstance.getParent();
39248
+ if (parent?.getAttrs().nodeId) parentId = parent.getAttrs().nodeId;
39249
+ if (nodeInstance && presenceInfo.parentId === parentId) {
39262
39250
  const newProps = {
39263
39251
  ...nodeInstance.getAttrs(),
39264
39252
  ...presenceInfo.attrs
@@ -39273,10 +39261,11 @@ var WeaveUsersPresencePlugin = class extends WeavePlugin {
39273
39261
  const store = this.instance.getStore();
39274
39262
  store.setAwarenessInfo(WEAVE_USER_PRESENCE_KEY, this.userPresence);
39275
39263
  }
39276
- setPresence(nodeId, attrs, forceUpdate = true) {
39264
+ setPresence(nodeId, parentId, attrs, forceUpdate = true) {
39277
39265
  const userInfo = this.config.getUser();
39278
39266
  this.userPresence[nodeId] = {
39279
39267
  userId: userInfo.id,
39268
+ parentId,
39280
39269
  nodeId,
39281
39270
  attrs
39282
39271
  };
@@ -40602,4 +40591,4 @@ function getJSONFromYjsBinary(actualState) {
40602
40591
  }
40603
40592
 
40604
40593
  //#endregion
40605
- export { ALIGN_NODES_ALIGN_TO, ALIGN_NODES_TOOL_ACTION_NAME, ALIGN_NODES_TOOL_STATE, BRUSH_TOOL_ACTION_NAME, BRUSH_TOOL_DEFAULT_CONFIG, BRUSH_TOOL_STATE, CONNECTOR_TOOL_ACTION_NAME, CONNECTOR_TOOL_DEFAULT_CONFIG, CONNECTOR_TOOL_STATE, COPY_PASTE_NODES_PLUGIN_STATE, 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, LINE_TOOL_ACTION_NAME, LINE_TOOL_DEFAULT_CONFIG, LINE_TOOL_STATE, MEASURE_TOOL_ACTION_NAME, MEASURE_TOOL_STATE, MOVE_TOOL_ACTION_NAME, MOVE_TOOL_STATE, NODE_SNAP, NODE_SNAP_HORIZONTAL, NODE_SNAP_VERTICAL, PEN_TOOL_ACTION_NAME, PEN_TOOL_STATE, RECTANGLE_TOOL_ACTION_NAME, RECTANGLE_TOOL_STATE, REGULAR_POLYGON_TOOL_ACTION_NAME, REGULAR_POLYGON_TOOL_STATE, SELECTION_TOOL_ACTION_NAME, SELECTION_TOOL_STATE, STAGE_MINIMAP_DEFAULT_CONFIG, STAR_TOOL_ACTION_NAME, STAR_TOOL_STATE, TEXT_LAYOUT, TEXT_TOOL_ACTION_NAME, TEXT_TOOL_STATE, VIDEO_TOOL_ACTION_NAME, VIDEO_TOOL_STATE, WEAVE_ARROW_NODE_TYPE, WEAVE_ARROW_TOOL_ACTION_NAME, WEAVE_ARROW_TOOL_STATE, WEAVE_COMMENTS_RENDERER_KEY, WEAVE_COMMENTS_TOOL_LAYER_ID, WEAVE_COMMENT_CREATE_ACTION, WEAVE_COMMENT_NODE_ACTION, WEAVE_COMMENT_NODE_DEFAULTS, WEAVE_COMMENT_NODE_TYPE, WEAVE_COMMENT_STATUS, WEAVE_COMMENT_TOOL_ACTION_NAME, WEAVE_COMMENT_TOOL_DEFAULT_CONFIG, WEAVE_COMMENT_TOOL_STATE, WEAVE_COMMENT_VIEW_ACTION, WEAVE_CONNECTOR_NODE_ANCHOR_ORIGIN, WEAVE_CONNECTOR_NODE_DECORATOR_TYPE, WEAVE_CONNECTOR_NODE_DEFAULT_CONFIG, WEAVE_CONNECTOR_NODE_LINE_ORIGIN, WEAVE_CONNECTOR_NODE_LINE_TYPE, WEAVE_CONNECTOR_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_DEFAULT_BACKGROUND_COLOR, WEAVE_FRAME_NODE_DEFAULT_CONFIG, WEAVE_FRAME_NODE_DEFAULT_PROPS, WEAVE_FRAME_NODE_TYPE, WEAVE_GRID_DEFAULT_CONFIG, WEAVE_GRID_DOT_TYPES, WEAVE_GRID_LAYER_ID, WEAVE_GRID_TYPES, WEAVE_GROUP_NODE_TYPE, WEAVE_IMAGES_TOOL_ACTION_NAME, WEAVE_IMAGES_TOOL_DEFAULT_CONFIG, WEAVE_IMAGES_TOOL_STATE, WEAVE_IMAGES_TOOL_UPLOAD_TYPE, WEAVE_IMAGE_CROP_ANCHOR_POSITION, WEAVE_IMAGE_CROP_END_TYPE, WEAVE_IMAGE_DEFAULT_CONFIG, WEAVE_IMAGE_NODE_TYPE, WEAVE_IMAGE_TOOL_ACTION_NAME, WEAVE_IMAGE_TOOL_CONFIG_DEFAULT, WEAVE_IMAGE_TOOL_STATE, WEAVE_IMAGE_TOOL_UPLOAD_TYPE, WEAVE_LAYER_NODE_TYPE, WEAVE_LINE_NODE_DEFAULT_CONFIG, WEAVE_LINE_NODE_TYPE, WEAVE_MEASURE_NODE_DEFAULT_CONFIG, WEAVE_MEASURE_NODE_TYPE, WEAVE_MEASURE_TOOL_DEFAULT_CONFIG, WEAVE_NODES_DISTANCE_SNAPPING_PLUGIN_KEY, WEAVE_NODES_EDGE_SNAPPING_PLUGIN_KEY, WEAVE_NODES_MULTI_SELECTION_FEEDBACK_PLUGIN_DEFAULT_CONFIG, WEAVE_NODES_MULTI_SELECTION_FEEDBACK_PLUGIN_KEY, WEAVE_NODES_MULTI_SELECTION_FEEDBACK_PLUGIN_LAYER_ID, 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_DROP_AREA_KEY, WEAVE_STAGE_GRID_PLUGIN_KEY, WEAVE_STAGE_IMAGE_CROPPING_MODE, WEAVE_STAGE_KEYBOARD_MOVE_DEFAULT_CONFIG, WEAVE_STAGE_KEYBOARD_MOVE_KEY, WEAVE_STAGE_KEYBOARD_MOVE_ORIENTATION, WEAVE_STAGE_MINIMAP_KEY, WEAVE_STAGE_NODE_TYPE, WEAVE_STAGE_PANNING_DEFAULT_CONFIG, WEAVE_STAGE_PANNING_KEY, WEAVE_STAGE_PANNING_THROTTLE_MS, WEAVE_STAGE_TEXT_EDITION_MODE, WEAVE_STAGE_ZOOM_DEFAULT_CONFIG, WEAVE_STAGE_ZOOM_KEY, WEAVE_STAGE_ZOOM_TYPE, WEAVE_STAR_NODE_TYPE, WEAVE_STROKE_NODE_DEFAULT_CONFIG, WEAVE_STROKE_NODE_TYPE, WEAVE_STROKE_SINGLE_NODE_DEFAULT_CONFIG, WEAVE_STROKE_SINGLE_NODE_TIP_SIDE, WEAVE_STROKE_SINGLE_NODE_TIP_TYPE, WEAVE_STROKE_SINGLE_NODE_TYPE, WEAVE_STROKE_TOOL_ACTION_NAME, WEAVE_STROKE_TOOL_ACTION_NAME_ALIASES, WEAVE_STROKE_TOOL_DEFAULT_CONFIG, WEAVE_STROKE_TOOL_STATE, WEAVE_TEXT_NODE_DEFAULT_CONFIG, WEAVE_TEXT_NODE_TYPE, WEAVE_USERS_POINTERS_CONFIG_DEFAULT_PROPS, WEAVE_USERS_POINTERS_KEY, WEAVE_USERS_PRESENCE_CONFIG_DEFAULT_PROPS, WEAVE_USERS_PRESENCE_PLUGIN_KEY, WEAVE_USERS_SELECTION_KEY, WEAVE_USER_POINTER_KEY, WEAVE_USER_PRESENCE_KEY, WEAVE_USER_SELECTION_KEY, WEAVE_VIDEO_DEFAULT_CONFIG, WEAVE_VIDEO_NODE_TYPE, Weave, WeaveAction, WeaveAlignNodesToolAction, WeaveArrowNode, WeaveArrowToolAction, WeaveBrushToolAction, WeaveCommentNode, WeaveCommentToolAction, WeaveCommentsRendererPlugin, WeaveConnectedUsersPlugin, WeaveConnectorNode, WeaveConnectorToolAction, WeaveContextMenuPlugin, WeaveCopyPasteNodesPlugin, WeaveEllipseNode, WeaveEllipseToolAction, WeaveEraserToolAction, WeaveExportNodesToolAction, WeaveExportStageToolAction, WeaveFitToScreenToolAction, WeaveFitToSelectionToolAction, WeaveFrameNode, WeaveFrameToolAction, WeaveGroupNode, WeaveImageNode, WeaveImageToolAction, WeaveImagesToolAction, WeaveLayerNode, WeaveLineNode, WeaveLineToolAction, WeaveMeasureNode, WeaveMeasureToolAction, WeaveMoveToolAction, WeaveNode, WeaveNodesDistanceSnappingPlugin, WeaveNodesEdgeSnappingPlugin, WeaveNodesMultiSelectionFeedbackPlugin, WeaveNodesSelectionPlugin, WeavePenToolAction, WeavePlugin, WeaveRectangleNode, WeaveRectangleToolAction, WeaveRegularPolygonNode, WeaveRegularPolygonToolAction, WeaveRenderer, WeaveSelectionToolAction, WeaveStageDropAreaPlugin, WeaveStageGridPlugin, WeaveStageKeyboardMovePlugin, WeaveStageMinimapPlugin, WeaveStageNode, WeaveStagePanningPlugin, WeaveStageResizePlugin, WeaveStageZoomPlugin, WeaveStarNode, WeaveStarToolAction, WeaveStore, WeaveStrokeNode, WeaveStrokeSingleNode, WeaveStrokeToolAction, WeaveTextNode, WeaveTextToolAction, WeaveUsersPointersPlugin, WeaveUsersPresencePlugin, WeaveUsersSelectionPlugin, WeaveVideoNode, WeaveVideoToolAction, WeaveZoomInToolAction, WeaveZoomOutToolAction, canComposite, clearContainerTargets, containerOverCursor, containsNodeDeep, defaultInitialState, downscaleImageFile, downscaleImageFromURL, getBoundingBox, getDownscaleRatio, getExportBoundingBox, getImageSizeFromFile, getJSONFromYjsBinary, getPositionRelativeToContainerOnPosition, getSelectedNodesMetadata, getStageClickPoint, getTargetAndSkipNodes, getTargetedNode, getTopmostShadowHost, getVisibleNodes, getVisibleNodesInViewport, hasFrames, hasImages, intersectArrays, isArray, isIOS, isInShadowDOM, isNodeInSelection, isObject, isServer, loadImageSource, mapJsonToYjsArray, mapJsonToYjsElements, mapJsonToYjsMap, memoize, mergeExceptArrays, moveNodeToContainer, moveNodeToContainerNT, resetScale, weavejsToYjsBinary };
40594
+ export { ALIGN_NODES_ALIGN_TO, ALIGN_NODES_TOOL_ACTION_NAME, ALIGN_NODES_TOOL_STATE, BRUSH_TOOL_ACTION_NAME, BRUSH_TOOL_DEFAULT_CONFIG, BRUSH_TOOL_STATE, CONNECTOR_TOOL_ACTION_NAME, CONNECTOR_TOOL_DEFAULT_CONFIG, CONNECTOR_TOOL_STATE, COPY_PASTE_NODES_PLUGIN_STATE, 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, LINE_TOOL_ACTION_NAME, LINE_TOOL_DEFAULT_CONFIG, LINE_TOOL_STATE, MEASURE_TOOL_ACTION_NAME, MEASURE_TOOL_STATE, MOVE_TOOL_ACTION_NAME, MOVE_TOOL_STATE, NODE_SNAP, NODE_SNAP_HORIZONTAL, NODE_SNAP_VERTICAL, PEN_TOOL_ACTION_NAME, PEN_TOOL_STATE, RECTANGLE_TOOL_ACTION_NAME, RECTANGLE_TOOL_STATE, REGULAR_POLYGON_TOOL_ACTION_NAME, REGULAR_POLYGON_TOOL_STATE, SELECTION_TOOL_ACTION_NAME, SELECTION_TOOL_STATE, STAGE_MINIMAP_DEFAULT_CONFIG, STAR_TOOL_ACTION_NAME, STAR_TOOL_STATE, TEXT_LAYOUT, TEXT_TOOL_ACTION_NAME, TEXT_TOOL_STATE, VIDEO_TOOL_ACTION_NAME, VIDEO_TOOL_STATE, WEAVE_ARROW_NODE_TYPE, WEAVE_ARROW_TOOL_ACTION_NAME, WEAVE_ARROW_TOOL_STATE, WEAVE_COMMENTS_RENDERER_KEY, WEAVE_COMMENTS_TOOL_LAYER_ID, WEAVE_COMMENT_CREATE_ACTION, WEAVE_COMMENT_NODE_ACTION, WEAVE_COMMENT_NODE_DEFAULTS, WEAVE_COMMENT_NODE_TYPE, WEAVE_COMMENT_STATUS, WEAVE_COMMENT_TOOL_ACTION_NAME, WEAVE_COMMENT_TOOL_DEFAULT_CONFIG, WEAVE_COMMENT_TOOL_STATE, WEAVE_COMMENT_VIEW_ACTION, WEAVE_CONNECTOR_NODE_ANCHOR_ORIGIN, WEAVE_CONNECTOR_NODE_DECORATOR_TYPE, WEAVE_CONNECTOR_NODE_DEFAULT_CONFIG, WEAVE_CONNECTOR_NODE_LINE_ORIGIN, WEAVE_CONNECTOR_NODE_LINE_TYPE, WEAVE_CONNECTOR_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_DEFAULT_BACKGROUND_COLOR, WEAVE_FRAME_NODE_DEFAULT_CONFIG, WEAVE_FRAME_NODE_DEFAULT_PROPS, WEAVE_FRAME_NODE_TYPE, WEAVE_GRID_DEFAULT_CONFIG, WEAVE_GRID_DOT_TYPES, WEAVE_GRID_LAYER_ID, WEAVE_GRID_TYPES, WEAVE_GROUP_NODE_TYPE, WEAVE_IMAGES_TOOL_ACTION_NAME, WEAVE_IMAGES_TOOL_DEFAULT_CONFIG, WEAVE_IMAGES_TOOL_STATE, WEAVE_IMAGES_TOOL_UPLOAD_TYPE, WEAVE_IMAGE_CROP_ANCHOR_POSITION, WEAVE_IMAGE_CROP_END_TYPE, WEAVE_IMAGE_DEFAULT_CONFIG, WEAVE_IMAGE_NODE_TYPE, WEAVE_IMAGE_TOOL_ACTION_NAME, WEAVE_IMAGE_TOOL_CONFIG_DEFAULT, WEAVE_IMAGE_TOOL_STATE, WEAVE_IMAGE_TOOL_UPLOAD_TYPE, WEAVE_LAYER_NODE_TYPE, WEAVE_LINE_NODE_DEFAULT_CONFIG, WEAVE_LINE_NODE_TYPE, WEAVE_MEASURE_NODE_DEFAULT_CONFIG, WEAVE_MEASURE_NODE_TYPE, WEAVE_MEASURE_TOOL_DEFAULT_CONFIG, WEAVE_NODES_DISTANCE_SNAPPING_PLUGIN_KEY, WEAVE_NODES_EDGE_SNAPPING_PLUGIN_KEY, WEAVE_NODES_MULTI_SELECTION_FEEDBACK_PLUGIN_DEFAULT_CONFIG, WEAVE_NODES_MULTI_SELECTION_FEEDBACK_PLUGIN_KEY, WEAVE_NODES_MULTI_SELECTION_FEEDBACK_PLUGIN_LAYER_ID, 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_DROP_AREA_KEY, WEAVE_STAGE_GRID_PLUGIN_KEY, WEAVE_STAGE_IMAGE_CROPPING_MODE, WEAVE_STAGE_KEYBOARD_MOVE_DEFAULT_CONFIG, WEAVE_STAGE_KEYBOARD_MOVE_KEY, WEAVE_STAGE_KEYBOARD_MOVE_ORIENTATION, WEAVE_STAGE_MINIMAP_KEY, WEAVE_STAGE_NODE_TYPE, WEAVE_STAGE_PANNING_DEFAULT_CONFIG, WEAVE_STAGE_PANNING_KEY, WEAVE_STAGE_PANNING_THROTTLE_MS, WEAVE_STAGE_TEXT_EDITION_MODE, WEAVE_STAGE_ZOOM_DEFAULT_CONFIG, WEAVE_STAGE_ZOOM_KEY, WEAVE_STAGE_ZOOM_TYPE, WEAVE_STAR_NODE_TYPE, WEAVE_STROKE_NODE_DEFAULT_CONFIG, WEAVE_STROKE_NODE_TYPE, WEAVE_STROKE_SINGLE_NODE_DEFAULT_CONFIG, WEAVE_STROKE_SINGLE_NODE_TIP_SIDE, WEAVE_STROKE_SINGLE_NODE_TIP_TYPE, WEAVE_STROKE_SINGLE_NODE_TYPE, WEAVE_STROKE_TOOL_ACTION_NAME, WEAVE_STROKE_TOOL_ACTION_NAME_ALIASES, WEAVE_STROKE_TOOL_DEFAULT_CONFIG, WEAVE_STROKE_TOOL_STATE, WEAVE_TEXT_NODE_DEFAULT_CONFIG, WEAVE_TEXT_NODE_TYPE, WEAVE_USERS_POINTERS_CONFIG_DEFAULT_PROPS, WEAVE_USERS_POINTERS_KEY, WEAVE_USERS_PRESENCE_CONFIG_DEFAULT_PROPS, WEAVE_USERS_PRESENCE_PLUGIN_KEY, WEAVE_USERS_SELECTION_KEY, WEAVE_USER_POINTER_KEY, WEAVE_USER_PRESENCE_KEY, WEAVE_USER_SELECTION_KEY, WEAVE_VIDEO_DEFAULT_CONFIG, WEAVE_VIDEO_NODE_TYPE, Weave, WeaveAction, WeaveAlignNodesToolAction, WeaveArrowNode, WeaveArrowToolAction, WeaveBrushToolAction, WeaveCommentNode, WeaveCommentToolAction, WeaveCommentsRendererPlugin, WeaveConnectedUsersPlugin, WeaveConnectorNode, WeaveConnectorToolAction, WeaveContextMenuPlugin, WeaveCopyPasteNodesPlugin, WeaveEllipseNode, WeaveEllipseToolAction, WeaveEraserToolAction, WeaveExportNodesToolAction, WeaveExportStageToolAction, WeaveFitToScreenToolAction, WeaveFitToSelectionToolAction, WeaveFrameNode, WeaveFrameToolAction, WeaveGroupNode, WeaveImageNode, WeaveImageToolAction, WeaveImagesToolAction, WeaveLayerNode, WeaveLineNode, WeaveLineToolAction, WeaveMeasureNode, WeaveMeasureToolAction, WeaveMoveToolAction, WeaveNode, WeaveNodesDistanceSnappingPlugin, WeaveNodesEdgeSnappingPlugin, WeaveNodesMultiSelectionFeedbackPlugin, WeaveNodesSelectionPlugin, WeavePenToolAction, WeavePlugin, WeaveRectangleNode, WeaveRectangleToolAction, WeaveRegularPolygonNode, WeaveRegularPolygonToolAction, WeaveRenderer, WeaveSelectionToolAction, WeaveStageDropAreaPlugin, WeaveStageGridPlugin, WeaveStageKeyboardMovePlugin, WeaveStageMinimapPlugin, WeaveStageNode, WeaveStagePanningPlugin, WeaveStageResizePlugin, WeaveStageZoomPlugin, WeaveStarNode, WeaveStarToolAction, WeaveStore, WeaveStrokeNode, WeaveStrokeSingleNode, WeaveStrokeToolAction, WeaveTextNode, WeaveTextToolAction, WeaveUsersPointersPlugin, WeaveUsersPresencePlugin, WeaveUsersSelectionPlugin, WeaveVideoNode, WeaveVideoToolAction, WeaveZoomInToolAction, WeaveZoomOutToolAction, canComposite, clearContainerTargets, containerOverCursor, containsNodeDeep, defaultInitialState, downscaleImageFile, downscaleImageFromURL, getBoundingBox, getDownscaleRatio, getExportBoundingBox, getImageSizeFromFile, getJSONFromYjsBinary, getSelectedNodesMetadata, getStageClickPoint, getTargetAndSkipNodes, getTargetedNode, getTopmostShadowHost, getVisibleNodes, getVisibleNodesInViewport, hasFrames, hasImages, intersectArrays, isArray, isIOS, isInShadowDOM, isNodeInSelection, isObject, isServer, loadImageSource, mapJsonToYjsArray, mapJsonToYjsElements, mapJsonToYjsMap, memoize, mergeExceptArrays, moveNodeToContainer, moveNodeToContainerNT, resetScale, weavejsToYjsBinary };