ketcher-react 2.9.0-rc.8 → 2.9.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.
@@ -3013,7 +3013,7 @@ var zoom = {
3013
3013
 
3014
3014
  var openHelpLink = function openHelpLink() {
3015
3015
  var _window$open;
3016
- return (_window$open = window.open("https://github.com/epam/ketcher/blob/".concat("v2.9.0-rc.8\n", "/documentation/help.md#ketcher-overview"))) === null || _window$open === void 0 ? void 0 : _window$open.focus();
3016
+ return (_window$open = window.open("https://github.com/epam/ketcher/blob/".concat("v2.9.0\n", "/documentation/help.md#ketcher-overview"))) === null || _window$open === void 0 ? void 0 : _window$open.focus();
3017
3017
  };
3018
3018
  var help = {
3019
3019
  help: {
@@ -12121,7 +12121,7 @@ function getGroupIdsFromItemMaps(struct, mergeMaps) {
12121
12121
  });
12122
12122
  }
12123
12123
 
12124
- function dropAndMerge(editor, mergeItems, action, isPaste) {
12124
+ function dropAndMerge(editor, mergeItems, action, resizeCanvas) {
12125
12125
  var _dropItemAction;
12126
12126
  var restruct = editor.render.ctab;
12127
12127
  var isMerging = !!mergeItems;
@@ -12138,7 +12138,7 @@ function dropAndMerge(editor, mergeItems, action, isPaste) {
12138
12138
  if (isMerging) editor.selection(null);
12139
12139
  if (((_dropItemAction = dropItemAction) === null || _dropItemAction === void 0 ? void 0 : _dropItemAction.operations.length) > 0) {
12140
12140
  editor.update(dropItemAction, false, {
12141
- resizeCanvas: !!isPaste
12141
+ resizeCanvas: !!resizeCanvas
12142
12142
  });
12143
12143
  }
12144
12144
  }
@@ -12231,6 +12231,16 @@ function updateSelectedAtoms(_ref) {
12231
12231
  }
12232
12232
  }
12233
12233
 
12234
+ function hasAtomsOutsideCanvas(atoms, render, scale) {
12235
+ return atoms.some(function (atom) {
12236
+ var canvasSize = render.sz;
12237
+ var offset = render.options.offset;
12238
+ var xSize = atom.pp.x * scale;
12239
+ var ySize = atom.pp.y * scale;
12240
+ return xSize > canvasSize.x || xSize + offset.x < 0 || ySize > canvasSize.y || ySize + offset.y < 0;
12241
+ });
12242
+ }
12243
+
12234
12244
  function _createForOfIteratorHelper$6(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray$6(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
12235
12245
  function _unsupportedIterableToArray$6(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray$6(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$6(o, minLen); }
12236
12246
  function _arrayLikeToArray$6(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
@@ -12403,7 +12413,9 @@ var SelectTool = function () {
12403
12413
  delete this.dragCtx;
12404
12414
  }
12405
12415
  if ((_this$dragCtx2 = this.dragCtx) !== null && _this$dragCtx2 !== void 0 && _this$dragCtx2.item) {
12406
- dropAndMerge(editor, this.dragCtx.mergeItems, this.dragCtx.action);
12416
+ var atoms = Array.from(editor.struct().atoms.values());
12417
+ var shouldResizeCanvas = hasAtomsOutsideCanvas(atoms, editor.render, editor.options().scale);
12418
+ dropAndMerge(editor, this.dragCtx.mergeItems, this.dragCtx.action, shouldResizeCanvas);
12407
12419
  delete this.dragCtx;
12408
12420
  } else if (_classPrivateFieldGet(this, _lassoHelper).running()) {
12409
12421
  this.selectElementsOnCanvas(newSelected, editor, event);
@@ -24048,8 +24060,8 @@ var KetcherBuilder = function () {
24048
24060
  initApp(element, staticResourcesUrl, {
24049
24061
  buttons: buttons || {},
24050
24062
  errorHandler: errorHandler || null,
24051
- version: "2.9.0-rc.8" ,
24052
- buildDate: "2023-04-21T12:27:20" ,
24063
+ version: "2.9.0" ,
24064
+ buildDate: "2023-05-08T12:01:45" ,
24053
24065
  buildNumber: ''
24054
24066
  }, structService, resolve);
24055
24067
  });