@next-core/editor-bricks-helper 0.42.24 → 0.43.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/index.esm.js CHANGED
@@ -722,6 +722,7 @@ var BuilderInternalEventType;
722
722
  BuilderInternalEventType["NODE_MOVE"] = "builder.node.move";
723
723
  BuilderInternalEventType["NODE_REORDER"] = "builder.node.reorder";
724
724
  BuilderInternalEventType["NODE_CLICK"] = "builder.node.click";
725
+ BuilderInternalEventType["NODE_UPDATE"] = "builder.node.update";
725
726
  BuilderInternalEventType["SNIPPET_APPLY"] = "builder.snippet.apply";
726
727
  BuilderInternalEventType["CONTEXT_MENU_CHANGE"] = "builder.contextMenu.change";
727
728
  BuilderInternalEventType["DATA_CHANGE"] = "builder.data.change";
@@ -857,7 +858,9 @@ class BuilderDataManager {
857
858
  var rootNode = nodes.find(node => node.$$uid === rootId);
858
859
  var rootNodeIsCustomTemplate = rootNode.type === "custom-template";
859
860
  this.relatedNodesBasedOnEventsMap = getRelatedNodesBasedOnEvents(nodes, rootNodeIsCustomTemplate);
860
- this.eventTarget.dispatchEvent(new CustomEvent(BuilderInternalEventType.DATA_CHANGE));
861
+ this.eventTarget.dispatchEvent(new CustomEvent(BuilderInternalEventType.DATA_CHANGE, {
862
+ detail: this.data
863
+ }));
861
864
  }
862
865
 
863
866
  runAddNodeAction(detail) {
@@ -906,6 +909,31 @@ class BuilderDataManager {
906
909
  this.runAddNodeAction(detail);
907
910
  }
908
911
 
912
+ updateNode(instanceId, detail) {
913
+ var {
914
+ rootId,
915
+ nodes,
916
+ edges,
917
+ wrapperNode
918
+ } = this.data;
919
+ var newNodes = nodes.map(item => {
920
+ if (item.instanceId === instanceId) {
921
+ return _objectSpread(_objectSpread({}, item), detail);
922
+ }
923
+
924
+ return item;
925
+ });
926
+ this.data = {
927
+ rootId,
928
+ nodes: newNodes,
929
+ edges,
930
+ wrapperNode
931
+ };
932
+ this.eventTarget.dispatchEvent(new CustomEvent(BuilderInternalEventType.NODE_UPDATE, {
933
+ detail: this.data
934
+ }));
935
+ }
936
+
909
937
  redirectMountPoint(detail) {
910
938
  var {
911
939
  rootId,
@@ -1201,14 +1229,14 @@ class BuilderDataManager {
1201
1229
  var {
1202
1230
  nodeData,
1203
1231
  dragOverInstanceId,
1204
- parentInstanceId,
1205
1232
  dragStatus,
1206
1233
  mountPoint
1207
1234
  } = detail;
1208
1235
 
1209
- if (nodeData.instanceId) ; else {
1236
+ if (nodeData.instanceId && !nodeData.instanceId.startsWith("mock")) ; else {
1210
1237
  // insert
1211
- var newNodeUid = getUniqueNodeId();
1238
+ var parentInstanceId = detail.parent || detail.parentInstanceId;
1239
+ var newNodeUid = nodeData.$$uid || getUniqueNodeId();
1212
1240
  var overNode = nodes.find(item => item.instanceId === dragOverInstanceId);
1213
1241
  var dragOverNodeUid = overNode.$$uid;
1214
1242
  var realDragStatus = dragStatus;
@@ -1241,6 +1269,7 @@ class BuilderDataManager {
1241
1269
  });
1242
1270
  nodeData.parent = parentInstanceId;
1243
1271
  nodeData.mountPoint = mountPoint;
1272
+ nodeData.sort = sortIndex;
1244
1273
 
1245
1274
  if (nodeData.bricks) {
1246
1275
  // snippet
@@ -1484,6 +1513,13 @@ class BuilderDataManager {
1484
1513
  };
1485
1514
  }
1486
1515
 
1516
+ onNodeUpdate(fn) {
1517
+ this.eventTarget.addEventListener(BuilderInternalEventType.NODE_UPDATE, fn);
1518
+ return () => {
1519
+ this.eventTarget.removeEventListener(BuilderInternalEventType.NODE_UPDATE, fn);
1520
+ };
1521
+ }
1522
+
1487
1523
  onContextMenuChange(fn) {
1488
1524
  this.eventTarget.addEventListener(BuilderInternalEventType.CONTEXT_MENU_CHANGE, fn);
1489
1525
  return () => {