ketcher-react 2.13.0-rc.2 → 2.13.0-rc.3
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.js +62 -40
- package/dist/index.js.map +1 -1
- package/dist/index.modern.js +62 -40
- package/dist/index.modern.js.map +1 -1
- package/dist/script/editor/Editor.d.ts +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -2576,7 +2576,8 @@ var SettingsManager = function () {
|
|
|
2576
2576
|
return SettingsManager;
|
|
2577
2577
|
}();
|
|
2578
2578
|
|
|
2579
|
-
var _excluded$y = ["rescale", "fragment"]
|
|
2579
|
+
var _excluded$y = ["rescale", "fragment"],
|
|
2580
|
+
_excluded2$6 = ["isPaste"];
|
|
2580
2581
|
function ownKeys$1b(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
2581
2582
|
function _objectSpread$1c(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$1b(Object(source), !0).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$1b(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
2582
2583
|
function onAction(action) {
|
|
@@ -2622,7 +2623,7 @@ function removeStructAction() {
|
|
|
2622
2623
|
function load(struct, options) {
|
|
2623
2624
|
return function () {
|
|
2624
2625
|
var _ref = _asyncToGenerator__default["default"]( _regeneratorRuntime__default["default"].mark(function _callee(dispatch, getState) {
|
|
2625
|
-
var state, editor, server, errorHandler, parsedStruct,
|
|
2626
|
+
var state, editor, server, errorHandler, _options2, isPaste, otherOptions, parsedStruct, _otherOptions, fragment, hasUnsupportedGroups, oldStruct, stereAtomsMap;
|
|
2626
2627
|
return _regeneratorRuntime__default["default"].wrap(function _callee$(_context) {
|
|
2627
2628
|
while (1) {
|
|
2628
2629
|
switch (_context.prev = _context.next) {
|
|
@@ -2632,31 +2633,32 @@ function load(struct, options) {
|
|
|
2632
2633
|
server = state.server;
|
|
2633
2634
|
errorHandler = editor.errorHandler;
|
|
2634
2635
|
options = options || {};
|
|
2635
|
-
|
|
2636
|
+
_options2 = options, isPaste = _options2.isPaste, otherOptions = _objectWithoutProperties__default["default"](_options2, _excluded2$6);
|
|
2637
|
+
otherOptions = _objectSpread$1c(_objectSpread$1c({}, otherOptions), {}, {
|
|
2636
2638
|
'dearomatize-on-load': editor.options()['dearomatize-on-load'],
|
|
2637
2639
|
ignoreChiralFlag: editor.options().ignoreChiralFlag
|
|
2638
2640
|
});
|
|
2639
2641
|
dispatch(setAnalyzingFile(true));
|
|
2640
|
-
_context.prev =
|
|
2641
|
-
_context.next =
|
|
2642
|
-
return parseStruct(struct, server,
|
|
2643
|
-
case
|
|
2642
|
+
_context.prev = 8;
|
|
2643
|
+
_context.next = 11;
|
|
2644
|
+
return parseStruct(struct, server, otherOptions);
|
|
2645
|
+
case 11:
|
|
2644
2646
|
parsedStruct = _context.sent;
|
|
2645
|
-
|
|
2647
|
+
_otherOptions = otherOptions, fragment = _otherOptions.fragment;
|
|
2646
2648
|
hasUnsupportedGroups = parsedStruct.sgroups.some(function (sGroup) {
|
|
2647
2649
|
return !supportedSGroupTypes[sGroup.type];
|
|
2648
2650
|
});
|
|
2649
2651
|
if (!hasUnsupportedGroups) {
|
|
2650
|
-
_context.next =
|
|
2652
|
+
_context.next = 18;
|
|
2651
2653
|
break;
|
|
2652
2654
|
}
|
|
2653
|
-
_context.next =
|
|
2655
|
+
_context.next = 17;
|
|
2654
2656
|
return editor.event.confirm.dispatch();
|
|
2655
|
-
case
|
|
2657
|
+
case 17:
|
|
2656
2658
|
parsedStruct.sgroups = parsedStruct.sgroups.filter(function (_key, sGroup) {
|
|
2657
2659
|
return supportedSGroupTypes[sGroup.type];
|
|
2658
2660
|
});
|
|
2659
|
-
case
|
|
2661
|
+
case 18:
|
|
2660
2662
|
parsedStruct.rescale();
|
|
2661
2663
|
if (editor.struct().atoms.size) {
|
|
2662
2664
|
oldStruct = editor.struct().clone();
|
|
@@ -2701,29 +2703,31 @@ function load(struct, options) {
|
|
|
2701
2703
|
} else {
|
|
2702
2704
|
editor.struct(parsedStruct);
|
|
2703
2705
|
}
|
|
2704
|
-
editor.zoomAccordingContent();
|
|
2705
|
-
|
|
2706
|
+
editor.zoomAccordingContent(parsedStruct);
|
|
2707
|
+
if (!isPaste) {
|
|
2708
|
+
editor.centerStruct();
|
|
2709
|
+
}
|
|
2706
2710
|
dispatch(setAnalyzingFile(false));
|
|
2707
2711
|
dispatch({
|
|
2708
2712
|
type: 'MODAL_CLOSE'
|
|
2709
2713
|
});
|
|
2710
|
-
_context.next =
|
|
2714
|
+
_context.next = 36;
|
|
2711
2715
|
break;
|
|
2712
|
-
case
|
|
2713
|
-
_context.prev =
|
|
2714
|
-
_context.t0 = _context["catch"](
|
|
2716
|
+
case 32:
|
|
2717
|
+
_context.prev = 32;
|
|
2718
|
+
_context.t0 = _context["catch"](8);
|
|
2715
2719
|
dispatch(setAnalyzingFile(false));
|
|
2716
2720
|
_context.t0 && errorHandler && errorHandler(_context.t0.message);
|
|
2717
|
-
case
|
|
2718
|
-
_context.prev =
|
|
2721
|
+
case 36:
|
|
2722
|
+
_context.prev = 36;
|
|
2719
2723
|
ketcherCore.emitEventRequestIsFinished();
|
|
2720
|
-
return _context.finish(
|
|
2721
|
-
case
|
|
2724
|
+
return _context.finish(36);
|
|
2725
|
+
case 39:
|
|
2722
2726
|
case "end":
|
|
2723
2727
|
return _context.stop();
|
|
2724
2728
|
}
|
|
2725
2729
|
}
|
|
2726
|
-
}, _callee, null, [[
|
|
2730
|
+
}, _callee, null, [[8, 32, 36, 39]]);
|
|
2727
2731
|
}));
|
|
2728
2732
|
return function (_x, _x2) {
|
|
2729
2733
|
return _ref.apply(this, arguments);
|
|
@@ -2853,6 +2857,11 @@ function serverTransform(method, data, struct) {
|
|
|
2853
2857
|
});
|
|
2854
2858
|
};
|
|
2855
2859
|
}
|
|
2860
|
+
function resetStereoFlagsPosition(struct) {
|
|
2861
|
+
struct.frags.forEach(function (fragment) {
|
|
2862
|
+
return fragment.stereoFlagPosition = undefined;
|
|
2863
|
+
});
|
|
2864
|
+
}
|
|
2856
2865
|
function serverCall(editor, server, method, options, struct) {
|
|
2857
2866
|
var selection = editor.selection();
|
|
2858
2867
|
var selectedAtoms = [];
|
|
@@ -2863,6 +2872,9 @@ function serverCall(editor, server, method, options, struct) {
|
|
|
2863
2872
|
return aidMap.get(aid);
|
|
2864
2873
|
});
|
|
2865
2874
|
}
|
|
2875
|
+
if (method === 'layout') {
|
|
2876
|
+
resetStereoFlagsPosition(currentStruct);
|
|
2877
|
+
}
|
|
2866
2878
|
var ketSerializer = new ketcherCore.KetSerializer();
|
|
2867
2879
|
return server.then(function () {
|
|
2868
2880
|
return server[method](Object.assign({
|
|
@@ -3090,7 +3102,7 @@ var zoom = {
|
|
|
3090
3102
|
|
|
3091
3103
|
var openHelpLink = function openHelpLink() {
|
|
3092
3104
|
var _window$open;
|
|
3093
|
-
return (_window$open = window.open("https://github.com/epam/ketcher/blob/".concat("v2.13.0-rc.
|
|
3105
|
+
return (_window$open = window.open("https://github.com/epam/ketcher/blob/".concat("v2.13.0-rc.3\n", "/documentation/help.md#ketcher-overview"))) === null || _window$open === void 0 ? void 0 : _window$open.focus();
|
|
3094
3106
|
};
|
|
3095
3107
|
var help = {
|
|
3096
3108
|
help: {
|
|
@@ -12595,7 +12607,8 @@ function initClipboard(dispatch) {
|
|
|
12595
12607
|
onPaste: function onPaste(data) {
|
|
12596
12608
|
var structStr = data[ketcherCore.ChemicalMimeType.KET] || data[ketcherCore.ChemicalMimeType.Mol] || data[ketcherCore.ChemicalMimeType.Rxn] || data['text/plain'];
|
|
12597
12609
|
if (structStr || !rxnTextPlain.test(data['text/plain'])) loadStruct(structStr, {
|
|
12598
|
-
fragment: true
|
|
12610
|
+
fragment: true,
|
|
12611
|
+
isPaste: true
|
|
12599
12612
|
});
|
|
12600
12613
|
}
|
|
12601
12614
|
};
|
|
@@ -21597,18 +21610,27 @@ var Editor$3 = function () {
|
|
|
21597
21610
|
}
|
|
21598
21611
|
}, {
|
|
21599
21612
|
key: "zoomAccordingContent",
|
|
21600
|
-
value: function zoomAccordingContent() {
|
|
21601
|
-
this.zoom(1);
|
|
21602
|
-
var clientAreaBoundingBox = this.render.clientArea.getBoundingClientRect();
|
|
21603
|
-
var paper = this.render.paper;
|
|
21613
|
+
value: function zoomAccordingContent(struct) {
|
|
21604
21614
|
var MIN_ZOOM_VALUE = 0.1;
|
|
21605
21615
|
var MAX_ZOOM_VALUE = 1;
|
|
21606
|
-
var
|
|
21607
|
-
var
|
|
21608
|
-
|
|
21609
|
-
|
|
21610
|
-
|
|
21616
|
+
var MARGIN_IN_PIXELS = 40;
|
|
21617
|
+
var parsedStructCoordBoundingBox = struct.getCoordBoundingBox();
|
|
21618
|
+
var parsedStructSize = new ketcherCore.Vec2(parsedStructCoordBoundingBox.max.x - parsedStructCoordBoundingBox.min.x, parsedStructCoordBoundingBox.max.y - parsedStructCoordBoundingBox.min.y);
|
|
21619
|
+
var parsedStructSizeInPixels = {
|
|
21620
|
+
width: parsedStructSize.x * this.render.options.scale * this.render.options.zoom,
|
|
21621
|
+
height: parsedStructSize.y * this.render.options.scale * this.render.options.zoom
|
|
21622
|
+
};
|
|
21623
|
+
var clientAreaBoundingBox = this.render.clientArea.getBoundingClientRect();
|
|
21624
|
+
if (parsedStructSizeInPixels.width + MARGIN_IN_PIXELS < clientAreaBoundingBox.width && parsedStructSizeInPixels.height + MARGIN_IN_PIXELS < clientAreaBoundingBox.height) {
|
|
21625
|
+
return;
|
|
21611
21626
|
}
|
|
21627
|
+
var newZoomValue = this.render.options.zoom / (parsedStructSizeInPixels.height - clientAreaBoundingBox.height > parsedStructSizeInPixels.width - clientAreaBoundingBox.width ? parsedStructSizeInPixels.height / clientAreaBoundingBox.height : parsedStructSizeInPixels.width / clientAreaBoundingBox.width);
|
|
21628
|
+
if (newZoomValue >= MAX_ZOOM_VALUE) {
|
|
21629
|
+
this.zoom(MAX_ZOOM_VALUE);
|
|
21630
|
+
return;
|
|
21631
|
+
}
|
|
21632
|
+
newZoomValue -= MARGIN_IN_PIXELS / clientAreaBoundingBox.width;
|
|
21633
|
+
this.zoom(newZoomValue < MIN_ZOOM_VALUE ? MIN_ZOOM_VALUE : Number(newZoomValue.toFixed(2)));
|
|
21612
21634
|
}
|
|
21613
21635
|
}, {
|
|
21614
21636
|
key: "selection",
|
|
@@ -29609,10 +29631,10 @@ var mapDispatchToProps$1 = function mapDispatchToProps(dispatch) {
|
|
|
29609
29631
|
var onZoomOut = function onZoomOut() {
|
|
29610
29632
|
return dispatchAction(dispatch, 'zoom-out');
|
|
29611
29633
|
};
|
|
29612
|
-
return _objectSpread$2({
|
|
29613
|
-
|
|
29614
|
-
|
|
29615
|
-
}
|
|
29634
|
+
return _objectSpread$2(_objectSpread$2({}, dispatch(initEditor)), {}, {
|
|
29635
|
+
onZoomOut: onZoomOut,
|
|
29636
|
+
onZoomIn: onZoomIn
|
|
29637
|
+
});
|
|
29616
29638
|
};
|
|
29617
29639
|
var Editor$1 = reactRedux.connect(function (state) {
|
|
29618
29640
|
return {
|
|
@@ -30054,8 +30076,8 @@ var KetcherBuilder = function () {
|
|
|
30054
30076
|
initApp(element, staticResourcesUrl, {
|
|
30055
30077
|
buttons: buttons || {},
|
|
30056
30078
|
errorHandler: errorHandler || null,
|
|
30057
|
-
version: "2.13.0-rc.
|
|
30058
|
-
buildDate: "2023-
|
|
30079
|
+
version: "2.13.0-rc.3" ,
|
|
30080
|
+
buildDate: "2023-08-04T11:43:37" ,
|
|
30059
30081
|
buildNumber: ''
|
|
30060
30082
|
}, structService, resolve);
|
|
30061
30083
|
});
|