ketcher-react 2.10.0-rc.1 → 2.10.0-rc.2
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/constants.d.ts +4 -0
- package/dist/index.js +280 -212
- package/dist/index.js.map +1 -1
- package/dist/index.modern.js +281 -214
- package/dist/index.modern.js.map +1 -1
- package/dist/script/editor/tool/helper/dropAndMerge.d.ts +7 -1
- package/dist/script/editor/tool/helper/isAtomOutSideCanvas.d.ts +2 -0
- package/dist/script/ui/state/shared.d.ts +4 -0
- package/dist/script/ui/views/components/ContextMenu/hooks/useFunctionalGroupEoc.d.ts +1 -1
- package/package.json +1 -1
package/dist/index.modern.js
CHANGED
|
@@ -24,7 +24,7 @@ import _asyncToGenerator from '@babel/runtime/helpers/asyncToGenerator';
|
|
|
24
24
|
import _regeneratorRuntime from '@babel/runtime/regenerator';
|
|
25
25
|
import _classCallCheck from '@babel/runtime/helpers/classCallCheck';
|
|
26
26
|
import _createClass from '@babel/runtime/helpers/createClass';
|
|
27
|
-
import { KetSerializer, MolSerializer, Ketcher, FormatterFactory, StereLabelStyleType, StereoColoringType, ShowHydrogenLabels, Bond as Bond$2, Elements, AtomList, StereoLabel, isAttachmentBond, Atom as Atom$2, findStereoAtoms, RxnArrowMode, SimpleObjectMode, SGroup as SGroup$1, Pile, getStereoAtomsMap, identifyStructFormat, SupportedFormat, ChemicalMimeType, SdfSerializer, Render,
|
|
27
|
+
import { KetSerializer, MolSerializer, Ketcher, FormatterFactory, StereLabelStyleType, StereoColoringType, ShowHydrogenLabels, Bond as Bond$2, Elements, AtomList, StereoLabel, isAttachmentBond, Atom as Atom$2, findStereoAtoms, RxnArrowMode, SimpleObjectMode, SGroup as SGroup$1, Pile, getStereoAtomsMap, identifyStructFormat, SupportedFormat, ChemicalMimeType, SdfSerializer, Render, Struct, FunctionalGroupsProvider, SaltsAndSolventsProvider, KetcherAsyncEvents, ElementColor, FunctionalGroup, fromAtomsAttrs, fracAngle, Vec2, Action, fromSgroupDeletion, fromFragmentDeletion, fromAtomAddition, fromBondAddition, fromOneBondDeletion, bondChangingAction, fromBondsAttrs, fromChain, getItemsToFuse, getHoverToFuse, fromItemsFuse, fromStereoFlagUpdate, Scale, checkOverlapping, fromSeveralSgroupAddition, SgContexts, fromSgroupAction, mergeMapOfItemsToSet, setExpandSGroup, fromSimpleObjectResizing, fromArrowResizing, fromMultipleMove, fromTextDeletion, fromTextUpdating, isCloseToEdgeOfCanvas, isCloseToEdgeOfScreen, getDirections, shiftAndExtendCanvasByVector, scrollByVector, fromOneAtomDeletion, fromArrowDeletion, fromPlusDeletion, fromSimpleObjectDeletion, fromPaste, fromTemplateOnAtom, RGroup as RGroup$2, fromRGroupFragment, fromUpdateIfThen, fromRGroupAttrs, fromArrowAddition, fromPlusAddition, fromRotate, fromFlip, fromBondAlign, fromSimpleObjectAddition, fromTemplateOnBondAction, fromTemplateOnCanvas, fromTextCreation, formatProperties, Fragment as Fragment$1, OperationType, fromHighlightCreate, fromHighlightClear, fromNewCanvas, fromDescriptorsAlign, getPropertiesByFormat, StereoFlag, getPropertiesByImgFormat, b64toBlob, Generics, TextCommand, DefaultStructServiceOptions } from 'ketcher-core';
|
|
28
28
|
import * as React from 'react';
|
|
29
29
|
import React__default, { createRef, Component, useState, useEffect, useRef, useMemo, createElement, forwardRef, useCallback, useLayoutEffect, Fragment as Fragment$2, PureComponent } from 'react';
|
|
30
30
|
import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
|
|
@@ -1932,9 +1932,9 @@ function toSgroup(sgroup) {
|
|
|
1932
1932
|
};
|
|
1933
1933
|
}
|
|
1934
1934
|
|
|
1935
|
-
function _createForOfIteratorHelper$
|
|
1936
|
-
function _unsupportedIterableToArray$
|
|
1937
|
-
function _arrayLikeToArray$
|
|
1935
|
+
function _createForOfIteratorHelper$d(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray$d(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; } } }; }
|
|
1936
|
+
function _unsupportedIterableToArray$d(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray$d(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$d(o, minLen); }
|
|
1937
|
+
function _arrayLikeToArray$d(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; }
|
|
1938
1938
|
function isFlipDisabled(editor) {
|
|
1939
1939
|
var selection = editor.selection();
|
|
1940
1940
|
var restruct = editor.render.ctab;
|
|
@@ -1947,13 +1947,13 @@ function isFlipDisabled(editor) {
|
|
|
1947
1947
|
atoms = _selection$atoms === void 0 ? [] : _selection$atoms;
|
|
1948
1948
|
var getBondIdsForAttachmentAtoms = function getBondIdsForAttachmentAtoms() {
|
|
1949
1949
|
var result = [];
|
|
1950
|
-
var _iterator = _createForOfIteratorHelper$
|
|
1950
|
+
var _iterator = _createForOfIteratorHelper$d(atoms),
|
|
1951
1951
|
_step;
|
|
1952
1952
|
try {
|
|
1953
1953
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
1954
1954
|
var atomId = _step.value;
|
|
1955
1955
|
var atomBondIds = Atom$2.getConnectedBondIds(restruct.molecule, atomId);
|
|
1956
|
-
var _iterator2 = _createForOfIteratorHelper$
|
|
1956
|
+
var _iterator2 = _createForOfIteratorHelper$d(atomBondIds),
|
|
1957
1957
|
_step2;
|
|
1958
1958
|
try {
|
|
1959
1959
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
@@ -1979,7 +1979,7 @@ function isFlipDisabled(editor) {
|
|
|
1979
1979
|
var getAmountOfAttachmentBonds = function getAmountOfAttachmentBonds() {
|
|
1980
1980
|
var amountOfAttachmentBonds = 0;
|
|
1981
1981
|
var totalBondIds = new Set([].concat(_toConsumableArray(bonds), _toConsumableArray(getBondIdsForAttachmentAtoms())));
|
|
1982
|
-
var _iterator3 = _createForOfIteratorHelper$
|
|
1982
|
+
var _iterator3 = _createForOfIteratorHelper$d(totalBondIds),
|
|
1983
1983
|
_step3;
|
|
1984
1984
|
try {
|
|
1985
1985
|
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
@@ -2469,6 +2469,10 @@ var KETCHER_SAVED_SETTINGS_KEY = 'ketcher_editor_saved_settings';
|
|
|
2469
2469
|
var MODES = {
|
|
2470
2470
|
FG: 'fg'
|
|
2471
2471
|
};
|
|
2472
|
+
var STRUCT_TYPE = {
|
|
2473
|
+
atoms: 'atoms',
|
|
2474
|
+
bonds: 'bonds'
|
|
2475
|
+
};
|
|
2472
2476
|
|
|
2473
2477
|
function ownKeys$1a(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; }
|
|
2474
2478
|
function _objectSpread$1a(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$1a(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$1a(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
@@ -2549,10 +2553,14 @@ function parseStruct(struct, server, options) {
|
|
|
2549
2553
|
return Promise.resolve(struct);
|
|
2550
2554
|
}
|
|
2551
2555
|
}
|
|
2556
|
+
function removeStructAction() {
|
|
2557
|
+
var savedSelectedTool = SettingsManager.selectionTool;
|
|
2558
|
+
return onAction(savedSelectedTool || tools$1['select-rectangle'].action);
|
|
2559
|
+
}
|
|
2552
2560
|
function load(struct, options) {
|
|
2553
2561
|
return function () {
|
|
2554
2562
|
var _ref = _asyncToGenerator( _regeneratorRuntime.mark(function _callee(dispatch, getState) {
|
|
2555
|
-
var state, editor, server, errorHandler, parsedStruct, _options2, fragment, hasUnsupportedGroups, oldStruct, stereAtomsMap
|
|
2563
|
+
var state, editor, server, errorHandler, parsedStruct, _options2, fragment, hasUnsupportedGroups, oldStruct, stereAtomsMap;
|
|
2556
2564
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
2557
2565
|
while (1) {
|
|
2558
2566
|
switch (_context.prev = _context.next) {
|
|
@@ -2617,11 +2625,7 @@ function load(struct, options) {
|
|
|
2617
2625
|
parsedStruct.markFragments();
|
|
2618
2626
|
if (fragment) {
|
|
2619
2627
|
if (parsedStruct.isBlank()) {
|
|
2620
|
-
|
|
2621
|
-
dispatch({
|
|
2622
|
-
type: 'ACTION',
|
|
2623
|
-
action: savedSelectedTool || tools$1['select-rectangle'].action
|
|
2624
|
-
});
|
|
2628
|
+
dispatch(removeStructAction());
|
|
2625
2629
|
} else {
|
|
2626
2630
|
dispatch(onAction({
|
|
2627
2631
|
tool: 'paste',
|
|
@@ -3003,7 +3007,7 @@ var zoom = {
|
|
|
3003
3007
|
|
|
3004
3008
|
var openHelpLink = function openHelpLink() {
|
|
3005
3009
|
var _window$open;
|
|
3006
|
-
return (_window$open = window.open("https://github.com/epam/ketcher/blob/".concat("v2.10.0-rc.
|
|
3010
|
+
return (_window$open = window.open("https://github.com/epam/ketcher/blob/".concat("v2.10.0-rc.2\n", "/documentation/help.md#ketcher-overview"))) === null || _window$open === void 0 ? void 0 : _window$open.focus();
|
|
3007
3011
|
};
|
|
3008
3012
|
var help = {
|
|
3009
3013
|
help: {
|
|
@@ -7880,9 +7884,11 @@ var RenderStruct = function () {
|
|
|
7880
7884
|
var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
7881
7885
|
if (el && struct) {
|
|
7882
7886
|
var _options$cachePrefix = options.cachePrefix,
|
|
7883
|
-
cachePrefix = _options$cachePrefix === void 0 ? '' : _options$cachePrefix
|
|
7887
|
+
cachePrefix = _options$cachePrefix === void 0 ? '' : _options$cachePrefix,
|
|
7888
|
+
_options$needCache = options.needCache,
|
|
7889
|
+
needCache = _options$needCache === void 0 ? true : _options$needCache;
|
|
7884
7890
|
var cacheKey = "".concat(cachePrefix).concat(struct.name);
|
|
7885
|
-
if (renderCache.has(cacheKey)) {
|
|
7891
|
+
if (renderCache.has(cacheKey) && needCache) {
|
|
7886
7892
|
el.innerHTML = renderCache.get(cacheKey);
|
|
7887
7893
|
return;
|
|
7888
7894
|
}
|
|
@@ -7896,7 +7902,9 @@ var RenderStruct = function () {
|
|
|
7896
7902
|
}, options));
|
|
7897
7903
|
rnd.setMolecule(preparedStruct);
|
|
7898
7904
|
rnd.update(true, options.viewSz);
|
|
7899
|
-
|
|
7905
|
+
if (needCache) {
|
|
7906
|
+
renderCache.set(cacheKey, rnd.clientArea.innerHTML);
|
|
7907
|
+
}
|
|
7900
7908
|
}
|
|
7901
7909
|
}
|
|
7902
7910
|
}]);
|
|
@@ -8023,6 +8031,26 @@ function memoizedDebounce(func) {
|
|
|
8023
8031
|
|
|
8024
8032
|
var showTooltipTimer = null;
|
|
8025
8033
|
var TOOLTIP_DELAY = 300;
|
|
8034
|
+
function makeStruct(editor, sGroup) {
|
|
8035
|
+
var existingStruct = editor.struct();
|
|
8036
|
+
var struct = new Struct();
|
|
8037
|
+
var atomsIdMapping = new Map();
|
|
8038
|
+
sGroup.atoms.forEach(function (atomId) {
|
|
8039
|
+
var atomIdInTooltip = struct.atoms.add(existingStruct.atoms.get(atomId));
|
|
8040
|
+
atomsIdMapping.set(atomId, atomIdInTooltip);
|
|
8041
|
+
});
|
|
8042
|
+
Array.from(existingStruct.bonds).forEach(function (value) {
|
|
8043
|
+
var _value = _slicedToArray(value, 2);
|
|
8044
|
+
_value[0];
|
|
8045
|
+
var bond = _value[1];
|
|
8046
|
+
var clonedBond = bond.clone(atomsIdMapping);
|
|
8047
|
+
var isInsideSGroup = sGroup.atoms.includes(bond.begin) || sGroup.atoms.includes(bond.end);
|
|
8048
|
+
if (isInsideSGroup) {
|
|
8049
|
+
struct.bonds.add(clonedBond);
|
|
8050
|
+
}
|
|
8051
|
+
});
|
|
8052
|
+
return struct;
|
|
8053
|
+
}
|
|
8026
8054
|
function showTooltip(editor, infoPanelData) {
|
|
8027
8055
|
editor.event.showInfo.dispatch(null);
|
|
8028
8056
|
if (showTooltipTimer) {
|
|
@@ -8043,7 +8071,8 @@ function showFunctionalGroupsTooltip(editor) {
|
|
|
8043
8071
|
var sGroup = (_editor$struct = editor.struct()) === null || _editor$struct === void 0 ? void 0 : _editor$struct.sgroups.get(closestCollapsibleStructures.id);
|
|
8044
8072
|
if (sGroup && !sGroup.data.expanded && sGroup.hovering) {
|
|
8045
8073
|
var groupName = sGroup.data.name;
|
|
8046
|
-
var groupStruct =
|
|
8074
|
+
var groupStruct = makeStruct(editor, sGroup);
|
|
8075
|
+
groupStruct.name = groupName;
|
|
8047
8076
|
infoPanelData = {
|
|
8048
8077
|
groupStruct: groupStruct,
|
|
8049
8078
|
event: event,
|
|
@@ -10039,7 +10068,8 @@ var mapDispatchToProps$e = function mapDispatchToProps(dispatch) {
|
|
|
10039
10068
|
return dispatchAction('open');
|
|
10040
10069
|
},
|
|
10041
10070
|
onSave: function onSave() {
|
|
10042
|
-
|
|
10071
|
+
dispatch(removeStructAction());
|
|
10072
|
+
dispatchAction('save');
|
|
10043
10073
|
},
|
|
10044
10074
|
onUndo: function onUndo() {
|
|
10045
10075
|
return dispatchAction('undo');
|
|
@@ -10189,9 +10219,9 @@ function lookup(map, event) {
|
|
|
10189
10219
|
}
|
|
10190
10220
|
keyNorm.lookup = lookup;
|
|
10191
10221
|
|
|
10192
|
-
function _createForOfIteratorHelper$
|
|
10193
|
-
function _unsupportedIterableToArray$
|
|
10194
|
-
function _arrayLikeToArray$
|
|
10222
|
+
function _createForOfIteratorHelper$c(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray$c(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; } } }; }
|
|
10223
|
+
function _unsupportedIterableToArray$c(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray$c(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$c(o, minLen); }
|
|
10224
|
+
function _arrayLikeToArray$c(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; }
|
|
10195
10225
|
var APointTool = function () {
|
|
10196
10226
|
function APointTool(editor) {
|
|
10197
10227
|
_classCallCheck(this, APointTool);
|
|
@@ -10227,7 +10257,7 @@ var APointTool = function () {
|
|
|
10227
10257
|
}
|
|
10228
10258
|
}
|
|
10229
10259
|
if (atomResult.length > 0) {
|
|
10230
|
-
var _iterator = _createForOfIteratorHelper$
|
|
10260
|
+
var _iterator = _createForOfIteratorHelper$c(atomResult),
|
|
10231
10261
|
_step;
|
|
10232
10262
|
try {
|
|
10233
10263
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -10338,9 +10368,9 @@ var utils = {
|
|
|
10338
10368
|
getNonGroupItemsAndAttachmentPoints: getNonGroupItemsAndAttachmentPoints
|
|
10339
10369
|
};
|
|
10340
10370
|
|
|
10341
|
-
function _createForOfIteratorHelper$
|
|
10342
|
-
function _unsupportedIterableToArray$
|
|
10343
|
-
function _arrayLikeToArray$
|
|
10371
|
+
function _createForOfIteratorHelper$b(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray$b(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; } } }; }
|
|
10372
|
+
function _unsupportedIterableToArray$b(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray$b(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$b(o, minLen); }
|
|
10373
|
+
function _arrayLikeToArray$b(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; }
|
|
10344
10374
|
function _classPrivateFieldInitSpec$2(obj, privateMap, value) { _checkPrivateRedeclaration$2(obj, privateMap); privateMap.set(obj, value); }
|
|
10345
10375
|
function _checkPrivateRedeclaration$2(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
|
|
10346
10376
|
var _bondProps = new WeakMap();
|
|
@@ -10417,7 +10447,7 @@ var AtomTool = function () {
|
|
|
10417
10447
|
if (atomId !== null) atomResult.push(atomId);
|
|
10418
10448
|
}
|
|
10419
10449
|
if (atomResult.length > 0) {
|
|
10420
|
-
var _iterator = _createForOfIteratorHelper$
|
|
10450
|
+
var _iterator = _createForOfIteratorHelper$b(atomResult),
|
|
10421
10451
|
_step;
|
|
10422
10452
|
try {
|
|
10423
10453
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -10489,7 +10519,7 @@ var AtomTool = function () {
|
|
|
10489
10519
|
if (atomId !== null) atomResult.push(atomId);
|
|
10490
10520
|
}
|
|
10491
10521
|
if (atomResult.length > 0) {
|
|
10492
|
-
var _iterator2 = _createForOfIteratorHelper$
|
|
10522
|
+
var _iterator2 = _createForOfIteratorHelper$b(atomResult),
|
|
10493
10523
|
_step2;
|
|
10494
10524
|
try {
|
|
10495
10525
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
@@ -10558,9 +10588,9 @@ function atomLongtapEvent(tool, render) {
|
|
|
10558
10588
|
};
|
|
10559
10589
|
}
|
|
10560
10590
|
|
|
10561
|
-
function _createForOfIteratorHelper$
|
|
10562
|
-
function _unsupportedIterableToArray$
|
|
10563
|
-
function _arrayLikeToArray$
|
|
10591
|
+
function _createForOfIteratorHelper$a(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray$a(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; } } }; }
|
|
10592
|
+
function _unsupportedIterableToArray$a(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray$a(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$a(o, minLen); }
|
|
10593
|
+
function _arrayLikeToArray$a(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; }
|
|
10564
10594
|
var AttachTool = function () {
|
|
10565
10595
|
function AttachTool(editor, attachPoints) {
|
|
10566
10596
|
_classCallCheck(this, AttachTool);
|
|
@@ -10613,7 +10643,7 @@ var AttachTool = function () {
|
|
|
10613
10643
|
}
|
|
10614
10644
|
}
|
|
10615
10645
|
if (atomResult.length > 0) {
|
|
10616
|
-
var _iterator = _createForOfIteratorHelper$
|
|
10646
|
+
var _iterator = _createForOfIteratorHelper$a(atomResult),
|
|
10617
10647
|
_step;
|
|
10618
10648
|
try {
|
|
10619
10649
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -10633,7 +10663,7 @@ var AttachTool = function () {
|
|
|
10633
10663
|
});
|
|
10634
10664
|
return;
|
|
10635
10665
|
} else if (bondResult.length > 0) {
|
|
10636
|
-
var _iterator2 = _createForOfIteratorHelper$
|
|
10666
|
+
var _iterator2 = _createForOfIteratorHelper$a(bondResult),
|
|
10637
10667
|
_step2;
|
|
10638
10668
|
try {
|
|
10639
10669
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
@@ -10669,9 +10699,9 @@ var AttachTool = function () {
|
|
|
10669
10699
|
return AttachTool;
|
|
10670
10700
|
}();
|
|
10671
10701
|
|
|
10672
|
-
function _createForOfIteratorHelper$
|
|
10673
|
-
function _unsupportedIterableToArray$
|
|
10674
|
-
function _arrayLikeToArray$
|
|
10702
|
+
function _createForOfIteratorHelper$9(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray$9(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; } } }; }
|
|
10703
|
+
function _unsupportedIterableToArray$9(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray$9(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$9(o, minLen); }
|
|
10704
|
+
function _arrayLikeToArray$9(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; }
|
|
10675
10705
|
var BondTool = function () {
|
|
10676
10706
|
function BondTool(editor, bondProps) {
|
|
10677
10707
|
var _editor$selection;
|
|
@@ -10708,7 +10738,7 @@ var BondTool = function () {
|
|
|
10708
10738
|
if (bondId !== null) bondResult.push(bondId);
|
|
10709
10739
|
}
|
|
10710
10740
|
if (atomResult.length > 0) {
|
|
10711
|
-
var _iterator = _createForOfIteratorHelper$
|
|
10741
|
+
var _iterator = _createForOfIteratorHelper$9(atomResult),
|
|
10712
10742
|
_step;
|
|
10713
10743
|
try {
|
|
10714
10744
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -10728,7 +10758,7 @@ var BondTool = function () {
|
|
|
10728
10758
|
});
|
|
10729
10759
|
return;
|
|
10730
10760
|
} else if (bondResult.length > 0) {
|
|
10731
|
-
var _iterator2 = _createForOfIteratorHelper$
|
|
10761
|
+
var _iterator2 = _createForOfIteratorHelper$9(bondResult),
|
|
10732
10762
|
_step2;
|
|
10733
10763
|
try {
|
|
10734
10764
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
@@ -10836,7 +10866,7 @@ var BondTool = function () {
|
|
|
10836
10866
|
}
|
|
10837
10867
|
}
|
|
10838
10868
|
if (atomResult.length > 0) {
|
|
10839
|
-
var _iterator3 = _createForOfIteratorHelper$
|
|
10869
|
+
var _iterator3 = _createForOfIteratorHelper$9(atomResult),
|
|
10840
10870
|
_step3;
|
|
10841
10871
|
try {
|
|
10842
10872
|
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
@@ -10949,7 +10979,7 @@ var BondTool = function () {
|
|
|
10949
10979
|
}, {
|
|
10950
10980
|
key: "getExistingBond",
|
|
10951
10981
|
value: function getExistingBond(struct, begin, end) {
|
|
10952
|
-
var _iterator4 = _createForOfIteratorHelper$
|
|
10982
|
+
var _iterator4 = _createForOfIteratorHelper$9(struct.bonds.entries()),
|
|
10953
10983
|
_step4;
|
|
10954
10984
|
try {
|
|
10955
10985
|
for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
|
|
@@ -10972,9 +11002,9 @@ var BondTool = function () {
|
|
|
10972
11002
|
return BondTool;
|
|
10973
11003
|
}();
|
|
10974
11004
|
|
|
10975
|
-
function _createForOfIteratorHelper$
|
|
10976
|
-
function _unsupportedIterableToArray$
|
|
10977
|
-
function _arrayLikeToArray$
|
|
11005
|
+
function _createForOfIteratorHelper$8(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray$8(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; } } }; }
|
|
11006
|
+
function _unsupportedIterableToArray$8(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray$8(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$8(o, minLen); }
|
|
11007
|
+
function _arrayLikeToArray$8(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; }
|
|
10978
11008
|
var ChainTool = function () {
|
|
10979
11009
|
function ChainTool(editor) {
|
|
10980
11010
|
_classCallCheck(this, ChainTool);
|
|
@@ -11006,7 +11036,7 @@ var ChainTool = function () {
|
|
|
11006
11036
|
}
|
|
11007
11037
|
}
|
|
11008
11038
|
if (atomResult.length > 0) {
|
|
11009
|
-
var _iterator = _createForOfIteratorHelper$
|
|
11039
|
+
var _iterator = _createForOfIteratorHelper$8(atomResult),
|
|
11010
11040
|
_step;
|
|
11011
11041
|
try {
|
|
11012
11042
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -11026,7 +11056,7 @@ var ChainTool = function () {
|
|
|
11026
11056
|
});
|
|
11027
11057
|
return;
|
|
11028
11058
|
} else if (bondResult.length > 0) {
|
|
11029
|
-
var _iterator2 = _createForOfIteratorHelper$
|
|
11059
|
+
var _iterator2 = _createForOfIteratorHelper$8(bondResult),
|
|
11030
11060
|
_step2;
|
|
11031
11061
|
try {
|
|
11032
11062
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
@@ -11131,7 +11161,7 @@ var ChainTool = function () {
|
|
|
11131
11161
|
}
|
|
11132
11162
|
}
|
|
11133
11163
|
if (atomResult.length > 0) {
|
|
11134
|
-
var _iterator3 = _createForOfIteratorHelper$
|
|
11164
|
+
var _iterator3 = _createForOfIteratorHelper$8(atomResult),
|
|
11135
11165
|
_step3;
|
|
11136
11166
|
try {
|
|
11137
11167
|
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
@@ -11193,9 +11223,9 @@ var ChainTool = function () {
|
|
|
11193
11223
|
return ChainTool;
|
|
11194
11224
|
}();
|
|
11195
11225
|
|
|
11196
|
-
function _createForOfIteratorHelper$
|
|
11197
|
-
function _unsupportedIterableToArray$
|
|
11198
|
-
function _arrayLikeToArray$
|
|
11226
|
+
function _createForOfIteratorHelper$7(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray$7(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; } } }; }
|
|
11227
|
+
function _unsupportedIterableToArray$7(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray$7(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$7(o, minLen); }
|
|
11228
|
+
function _arrayLikeToArray$7(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; }
|
|
11199
11229
|
var ChargeTool = function () {
|
|
11200
11230
|
function ChargeTool(editor, charge) {
|
|
11201
11231
|
_classCallCheck(this, ChargeTool);
|
|
@@ -11236,7 +11266,7 @@ var ChargeTool = function () {
|
|
|
11236
11266
|
}
|
|
11237
11267
|
}
|
|
11238
11268
|
if (atomResult.length > 0) {
|
|
11239
|
-
var _iterator = _createForOfIteratorHelper$
|
|
11269
|
+
var _iterator = _createForOfIteratorHelper$7(atomResult),
|
|
11240
11270
|
_step;
|
|
11241
11271
|
try {
|
|
11242
11272
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -11599,9 +11629,9 @@ var LassoHelper = function () {
|
|
|
11599
11629
|
return LassoHelper;
|
|
11600
11630
|
}();
|
|
11601
11631
|
|
|
11602
|
-
function _createForOfIteratorHelper$
|
|
11603
|
-
function _unsupportedIterableToArray$
|
|
11604
|
-
function _arrayLikeToArray$
|
|
11632
|
+
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; } } }; }
|
|
11633
|
+
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); }
|
|
11634
|
+
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; }
|
|
11605
11635
|
var searchMaps = ['atoms', 'bonds', 'sgroups', 'functionalGroups', 'sgroupData'];
|
|
11606
11636
|
var SGroupTool = function () {
|
|
11607
11637
|
function SGroupTool(editor) {
|
|
@@ -11633,7 +11663,7 @@ var SGroupTool = function () {
|
|
|
11633
11663
|
return isEqual(sgroup.atoms, selectedAtoms);
|
|
11634
11664
|
});
|
|
11635
11665
|
if (selectedAtoms && functionalGroups.size) {
|
|
11636
|
-
var _iterator = _createForOfIteratorHelper$
|
|
11666
|
+
var _iterator = _createForOfIteratorHelper$6(selectedAtoms),
|
|
11637
11667
|
_step;
|
|
11638
11668
|
try {
|
|
11639
11669
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -11645,7 +11675,7 @@ var SGroupTool = function () {
|
|
|
11645
11675
|
}
|
|
11646
11676
|
var atomFromStruct = atomId !== null && ((_struct$atoms$get = struct.atoms.get(atomId)) === null || _struct$atoms$get === void 0 ? void 0 : _struct$atoms$get.a);
|
|
11647
11677
|
if (atomFromStruct) {
|
|
11648
|
-
var _iterator2 = _createForOfIteratorHelper$
|
|
11678
|
+
var _iterator2 = _createForOfIteratorHelper$6(atomFromStruct.sgs.values()),
|
|
11649
11679
|
_step2;
|
|
11650
11680
|
try {
|
|
11651
11681
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
@@ -11678,7 +11708,7 @@ var SGroupTool = function () {
|
|
|
11678
11708
|
atomsResult = [];
|
|
11679
11709
|
}
|
|
11680
11710
|
if (atomsResult && atomsResult.length > 0) {
|
|
11681
|
-
var _iterator3 = _createForOfIteratorHelper$
|
|
11711
|
+
var _iterator3 = _createForOfIteratorHelper$6(atomsResult),
|
|
11682
11712
|
_step3;
|
|
11683
11713
|
try {
|
|
11684
11714
|
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
@@ -11742,7 +11772,7 @@ var SGroupTool = function () {
|
|
|
11742
11772
|
}
|
|
11743
11773
|
}
|
|
11744
11774
|
if (atomResult.length > 0) {
|
|
11745
|
-
var _iterator4 = _createForOfIteratorHelper$
|
|
11775
|
+
var _iterator4 = _createForOfIteratorHelper$6(atomResult),
|
|
11746
11776
|
_step4;
|
|
11747
11777
|
try {
|
|
11748
11778
|
for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
|
|
@@ -11762,7 +11792,7 @@ var SGroupTool = function () {
|
|
|
11762
11792
|
});
|
|
11763
11793
|
return;
|
|
11764
11794
|
} else if (bondResult.length > 0) {
|
|
11765
|
-
var _iterator5 = _createForOfIteratorHelper$
|
|
11795
|
+
var _iterator5 = _createForOfIteratorHelper$6(bondResult),
|
|
11766
11796
|
_step5;
|
|
11767
11797
|
try {
|
|
11768
11798
|
for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {
|
|
@@ -11824,7 +11854,7 @@ var SGroupTool = function () {
|
|
|
11824
11854
|
var result = [];
|
|
11825
11855
|
if (ci && ci.map === 'functionalGroups' && functionalGroups.size && FunctionalGroup.isContractedFunctionalGroup(ci.id, functionalGroups)) return;
|
|
11826
11856
|
if (selected && functionalGroups.size && selected.atoms) {
|
|
11827
|
-
var _iterator6 = _createForOfIteratorHelper$
|
|
11857
|
+
var _iterator6 = _createForOfIteratorHelper$6(selected.atoms),
|
|
11828
11858
|
_step6;
|
|
11829
11859
|
try {
|
|
11830
11860
|
for (_iterator6.s(); !(_step6 = _iterator6.n()).done;) {
|
|
@@ -11836,7 +11866,7 @@ var SGroupTool = function () {
|
|
|
11836
11866
|
}
|
|
11837
11867
|
var atomFromStruct = atomId !== null && ((_struct$atoms$get3 = struct.atoms.get(atomId)) === null || _struct$atoms$get3 === void 0 ? void 0 : _struct$atoms$get3.a);
|
|
11838
11868
|
if (atomFromStruct) {
|
|
11839
|
-
var _iterator7 = _createForOfIteratorHelper$
|
|
11869
|
+
var _iterator7 = _createForOfIteratorHelper$6(atomFromStruct.sgs.values()),
|
|
11840
11870
|
_step7;
|
|
11841
11871
|
try {
|
|
11842
11872
|
for (_iterator7.s(); !(_step7 = _iterator7.n()).done;) {
|
|
@@ -11866,7 +11896,7 @@ var SGroupTool = function () {
|
|
|
11866
11896
|
}
|
|
11867
11897
|
}
|
|
11868
11898
|
if (selected && functionalGroups.size && selected.bonds) {
|
|
11869
|
-
var _iterator8 = _createForOfIteratorHelper$
|
|
11899
|
+
var _iterator8 = _createForOfIteratorHelper$6(selected.bonds),
|
|
11870
11900
|
_step8;
|
|
11871
11901
|
try {
|
|
11872
11902
|
for (_iterator8.s(); !(_step8 = _iterator8.n()).done;) {
|
|
@@ -11908,7 +11938,7 @@ var SGroupTool = function () {
|
|
|
11908
11938
|
bondsResult = null;
|
|
11909
11939
|
}
|
|
11910
11940
|
if (atomsResult && atomsResult.length > 0) {
|
|
11911
|
-
var _iterator9 = _createForOfIteratorHelper$
|
|
11941
|
+
var _iterator9 = _createForOfIteratorHelper$6(atomsResult),
|
|
11912
11942
|
_step9;
|
|
11913
11943
|
try {
|
|
11914
11944
|
for (_iterator9.s(); !(_step9 = _iterator9.n()).done;) {
|
|
@@ -11925,7 +11955,7 @@ var SGroupTool = function () {
|
|
|
11925
11955
|
}
|
|
11926
11956
|
}
|
|
11927
11957
|
if (bondsResult && bondsResult.length > 0) {
|
|
11928
|
-
var _iterator10 = _createForOfIteratorHelper$
|
|
11958
|
+
var _iterator10 = _createForOfIteratorHelper$6(bondsResult),
|
|
11929
11959
|
_step10;
|
|
11930
11960
|
try {
|
|
11931
11961
|
for (_iterator10.s(); !(_step10 = _iterator10.n()).done;) {
|
|
@@ -12078,6 +12108,9 @@ function fromContextType(id, editor, newSg, currSelection) {
|
|
|
12078
12108
|
var sg = restruct.molecule.sgroups.get(id);
|
|
12079
12109
|
var sourceAtoms = sg && sg.atoms || currSelection.atoms || [];
|
|
12080
12110
|
var context = newSg.attrs.context;
|
|
12111
|
+
if (newSg.type === SGroup$1.TYPES.SUP) {
|
|
12112
|
+
newSg.attrs.expanded = true;
|
|
12113
|
+
}
|
|
12081
12114
|
var result = fromSgroupAction(context, restruct, newSg, sourceAtoms, currSelection);
|
|
12082
12115
|
result.selection = result.selection || currSelection;
|
|
12083
12116
|
if (id !== null && id !== undefined) {
|
|
@@ -12138,7 +12171,7 @@ function getGroupIdsFromItemMaps(struct, mergeMaps) {
|
|
|
12138
12171
|
});
|
|
12139
12172
|
}
|
|
12140
12173
|
|
|
12141
|
-
function dropAndMerge(editor, mergeItems, action) {
|
|
12174
|
+
function dropAndMerge(editor, mergeItems, action, resizeCanvas) {
|
|
12142
12175
|
var _dropItemAction;
|
|
12143
12176
|
var restruct = editor.render.ctab;
|
|
12144
12177
|
var isMerging = !!mergeItems;
|
|
@@ -12163,7 +12196,7 @@ function dropAndMerge(editor, mergeItems, action) {
|
|
|
12163
12196
|
if (isMerging) editor.selection(null);
|
|
12164
12197
|
if (((_dropItemAction = dropItemAction) === null || _dropItemAction === void 0 ? void 0 : _dropItemAction.operations.length) > 0) {
|
|
12165
12198
|
editor.update(dropItemAction, false, {
|
|
12166
|
-
resizeCanvas:
|
|
12199
|
+
resizeCanvas: !!resizeCanvas
|
|
12167
12200
|
});
|
|
12168
12201
|
}
|
|
12169
12202
|
return dropItemAction;
|
|
@@ -12188,27 +12221,24 @@ function extractAttachmentAtom(mergeItems, editor) {
|
|
|
12188
12221
|
atoms: new Map(mergeItems.atoms),
|
|
12189
12222
|
bonds: new Map(mergeItems.bonds)
|
|
12190
12223
|
};
|
|
12191
|
-
var
|
|
12192
|
-
var removeSGroup = new Action();
|
|
12224
|
+
var action = new Action();
|
|
12193
12225
|
(_mergeItems$atomToFun = mergeItems.atomToFunctionalGroup) === null || _mergeItems$atomToFun === void 0 ? void 0 : _mergeItems$atomToFun.forEach(function (functionalGroupId, srcAtomId) {
|
|
12194
12226
|
var sGroup = struct.sgroups.get(functionalGroupId);
|
|
12195
12227
|
var attachmentAtomId = sGroup === null || sGroup === void 0 ? void 0 : sGroup.getAttAtomId(struct);
|
|
12196
|
-
if (attachmentAtomId) {
|
|
12197
|
-
var
|
|
12198
|
-
|
|
12199
|
-
|
|
12200
|
-
|
|
12201
|
-
|
|
12202
|
-
|
|
12203
|
-
atoms:
|
|
12204
|
-
|
|
12205
|
-
}),
|
|
12206
|
-
bonds: _toConsumableArray(SGroup$1.getBonds(struct, sGroup))
|
|
12228
|
+
if (attachmentAtomId !== undefined) {
|
|
12229
|
+
var atomsToDelete = _toConsumableArray(SGroup$1.getAtoms(struct, sGroup)).filter(function (atomId) {
|
|
12230
|
+
return atomId !== attachmentAtomId;
|
|
12231
|
+
});
|
|
12232
|
+
var bondsToDelete = _toConsumableArray(SGroup$1.getBonds(struct, sGroup));
|
|
12233
|
+
action.mergeWith(fromSgroupDeletion(reStruct, functionalGroupId));
|
|
12234
|
+
action.mergeWith(fromFragmentDeletion(reStruct, {
|
|
12235
|
+
atoms: atomsToDelete,
|
|
12236
|
+
bonds: bondsToDelete
|
|
12207
12237
|
}));
|
|
12208
|
-
|
|
12238
|
+
newMergeItems.atoms.set(srcAtomId, attachmentAtomId);
|
|
12209
12239
|
}
|
|
12210
12240
|
});
|
|
12211
|
-
return [newMergeItems,
|
|
12241
|
+
return [newMergeItems, action];
|
|
12212
12242
|
}
|
|
12213
12243
|
|
|
12214
12244
|
function ownKeys$Q(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; }
|
|
@@ -12286,9 +12316,19 @@ function updateSelectedBonds(_ref) {
|
|
|
12286
12316
|
}
|
|
12287
12317
|
}
|
|
12288
12318
|
|
|
12289
|
-
function
|
|
12290
|
-
|
|
12291
|
-
|
|
12319
|
+
function hasAtomsOutsideCanvas(atoms, render, scale) {
|
|
12320
|
+
return atoms.some(function (atom) {
|
|
12321
|
+
var canvasSize = render.sz;
|
|
12322
|
+
var offset = render.options.offset;
|
|
12323
|
+
var xSize = atom.pp.x * scale;
|
|
12324
|
+
var ySize = atom.pp.y * scale;
|
|
12325
|
+
return xSize > canvasSize.x || xSize + offset.x < 0 || ySize > canvasSize.y || ySize + offset.y < 0;
|
|
12326
|
+
});
|
|
12327
|
+
}
|
|
12328
|
+
|
|
12329
|
+
function _createForOfIteratorHelper$5(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray$5(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; } } }; }
|
|
12330
|
+
function _unsupportedIterableToArray$5(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray$5(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$5(o, minLen); }
|
|
12331
|
+
function _arrayLikeToArray$5(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; }
|
|
12292
12332
|
function ownKeys$P(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; }
|
|
12293
12333
|
function _objectSpread$P(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$P(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$P(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
12294
12334
|
function _classPrivateFieldInitSpec$1(obj, privateMap, value) { _checkPrivateRedeclaration$1(obj, privateMap); privateMap.set(obj, value); }
|
|
@@ -12459,7 +12499,9 @@ var SelectTool = function () {
|
|
|
12459
12499
|
delete this.dragCtx;
|
|
12460
12500
|
}
|
|
12461
12501
|
if ((_this$dragCtx2 = this.dragCtx) !== null && _this$dragCtx2 !== void 0 && _this$dragCtx2.item) {
|
|
12462
|
-
|
|
12502
|
+
var atoms = Array.from(editor.struct().atoms.values());
|
|
12503
|
+
var shouldResizeCanvas = hasAtomsOutsideCanvas(atoms, editor.render, editor.options().scale);
|
|
12504
|
+
dropAndMerge(editor, this.dragCtx.mergeItems, this.dragCtx.action, shouldResizeCanvas);
|
|
12463
12505
|
delete this.dragCtx;
|
|
12464
12506
|
} else if (_classPrivateFieldGet(this, _lassoHelper).running()) {
|
|
12465
12507
|
this.selectElementsOnCanvas(newSelected, editor, event);
|
|
@@ -12497,7 +12539,7 @@ var SelectTool = function () {
|
|
|
12497
12539
|
bondFromStruct, sgroups, functionalGroups)) bondResult.push(bondId);
|
|
12498
12540
|
}
|
|
12499
12541
|
if (atomResult.length > 0) {
|
|
12500
|
-
var _iterator = _createForOfIteratorHelper$
|
|
12542
|
+
var _iterator = _createForOfIteratorHelper$5(atomResult),
|
|
12501
12543
|
_step;
|
|
12502
12544
|
try {
|
|
12503
12545
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -12517,7 +12559,7 @@ var SelectTool = function () {
|
|
|
12517
12559
|
});
|
|
12518
12560
|
return;
|
|
12519
12561
|
} else if (bondResult.length > 0) {
|
|
12520
|
-
var _iterator2 = _createForOfIteratorHelper$
|
|
12562
|
+
var _iterator2 = _createForOfIteratorHelper$5(bondResult),
|
|
12521
12563
|
_step2;
|
|
12522
12564
|
try {
|
|
12523
12565
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
@@ -12737,7 +12779,7 @@ function getNewSelectedItems(editor, selectedSgroups) {
|
|
|
12737
12779
|
atoms: [],
|
|
12738
12780
|
bonds: []
|
|
12739
12781
|
};
|
|
12740
|
-
var _iterator3 = _createForOfIteratorHelper$
|
|
12782
|
+
var _iterator3 = _createForOfIteratorHelper$5(selectedSgroups),
|
|
12741
12783
|
_step3;
|
|
12742
12784
|
try {
|
|
12743
12785
|
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
@@ -12759,9 +12801,9 @@ function getNewSelectedItems(editor, selectedSgroups) {
|
|
|
12759
12801
|
return newSelected;
|
|
12760
12802
|
}
|
|
12761
12803
|
|
|
12762
|
-
function _createForOfIteratorHelper$
|
|
12763
|
-
function _unsupportedIterableToArray$
|
|
12764
|
-
function _arrayLikeToArray$
|
|
12804
|
+
function _createForOfIteratorHelper$4(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray$4(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; } } }; }
|
|
12805
|
+
function _unsupportedIterableToArray$4(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray$4(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$4(o, minLen); }
|
|
12806
|
+
function _arrayLikeToArray$4(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; }
|
|
12765
12807
|
var EraserTool = function () {
|
|
12766
12808
|
function EraserTool(editor, mode) {
|
|
12767
12809
|
_classCallCheck(this, EraserTool);
|
|
@@ -12809,7 +12851,7 @@ var EraserTool = function () {
|
|
|
12809
12851
|
var bondsResult = [];
|
|
12810
12852
|
var preResult = [];
|
|
12811
12853
|
if (selected && functionalGroups.size && selected.atoms) {
|
|
12812
|
-
var _iterator = _createForOfIteratorHelper$
|
|
12854
|
+
var _iterator = _createForOfIteratorHelper$4(selected.atoms),
|
|
12813
12855
|
_step;
|
|
12814
12856
|
try {
|
|
12815
12857
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -12818,7 +12860,7 @@ var EraserTool = function () {
|
|
|
12818
12860
|
var atomId = FunctionalGroup.atomsInFunctionalGroup(functionalGroups, atom);
|
|
12819
12861
|
var atomFromStruct = atomId !== null && ((_struct$atoms$get = struct.atoms.get(atomId)) === null || _struct$atoms$get === void 0 ? void 0 : _struct$atoms$get.a);
|
|
12820
12862
|
if (atomFromStruct) {
|
|
12821
|
-
var _iterator2 = _createForOfIteratorHelper$
|
|
12863
|
+
var _iterator2 = _createForOfIteratorHelper$4(atomFromStruct.sgs.values()),
|
|
12822
12864
|
_step2;
|
|
12823
12865
|
try {
|
|
12824
12866
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
@@ -12848,7 +12890,7 @@ var EraserTool = function () {
|
|
|
12848
12890
|
}
|
|
12849
12891
|
}
|
|
12850
12892
|
if (selected && functionalGroups.size && selected.bonds) {
|
|
12851
|
-
var _iterator3 = _createForOfIteratorHelper$
|
|
12893
|
+
var _iterator3 = _createForOfIteratorHelper$4(selected.bonds),
|
|
12852
12894
|
_step3;
|
|
12853
12895
|
try {
|
|
12854
12896
|
for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) {
|
|
@@ -12867,7 +12909,7 @@ var EraserTool = function () {
|
|
|
12867
12909
|
}
|
|
12868
12910
|
}
|
|
12869
12911
|
if (atomsResult.length > 0) {
|
|
12870
|
-
var _iterator4 = _createForOfIteratorHelper$
|
|
12912
|
+
var _iterator4 = _createForOfIteratorHelper$4(atomsResult),
|
|
12871
12913
|
_step4;
|
|
12872
12914
|
try {
|
|
12873
12915
|
for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) {
|
|
@@ -12882,7 +12924,7 @@ var EraserTool = function () {
|
|
|
12882
12924
|
}
|
|
12883
12925
|
}
|
|
12884
12926
|
if (bondsResult.length > 0) {
|
|
12885
|
-
var _iterator5 = _createForOfIteratorHelper$
|
|
12927
|
+
var _iterator5 = _createForOfIteratorHelper$4(bondsResult),
|
|
12886
12928
|
_step5;
|
|
12887
12929
|
try {
|
|
12888
12930
|
for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) {
|
|
@@ -12953,7 +12995,7 @@ var EraserTool = function () {
|
|
|
12953
12995
|
}
|
|
12954
12996
|
}
|
|
12955
12997
|
if (atomResult.length) {
|
|
12956
|
-
var _iterator6 = _createForOfIteratorHelper$
|
|
12998
|
+
var _iterator6 = _createForOfIteratorHelper$4(atomResult),
|
|
12957
12999
|
_step6;
|
|
12958
13000
|
try {
|
|
12959
13001
|
for (_iterator6.s(); !(_step6 = _iterator6.n()).done;) {
|
|
@@ -12969,7 +13011,7 @@ var EraserTool = function () {
|
|
|
12969
13011
|
_iterator6.f();
|
|
12970
13012
|
}
|
|
12971
13013
|
} else if (bondResult.length) {
|
|
12972
|
-
var _iterator7 = _createForOfIteratorHelper$
|
|
13014
|
+
var _iterator7 = _createForOfIteratorHelper$4(bondResult),
|
|
12973
13015
|
_step7;
|
|
12974
13016
|
try {
|
|
12975
13017
|
for (_iterator7.s(); !(_step7 = _iterator7.n()).done;) {
|
|
@@ -13130,7 +13172,8 @@ function ownKeys$O(object, enumerableOnly) { var keys = Object.keys(object); if
|
|
|
13130
13172
|
function _objectSpread$O(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$O(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$O(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
13131
13173
|
var PasteTool = function () {
|
|
13132
13174
|
function PasteTool(editor, struct) {
|
|
13133
|
-
var _struct$functionalGro
|
|
13175
|
+
var _struct$functionalGro,
|
|
13176
|
+
_this = this;
|
|
13134
13177
|
_classCallCheck(this, PasteTool);
|
|
13135
13178
|
this.editor = editor;
|
|
13136
13179
|
this.editor.selection(null);
|
|
@@ -13150,6 +13193,15 @@ var PasteTool = function () {
|
|
|
13150
13193
|
pasteItems = _fromPaste2[1];
|
|
13151
13194
|
this.action = action;
|
|
13152
13195
|
this.editor.update(this.action, true);
|
|
13196
|
+
struct.sgroups.forEach(function (sgroup) {
|
|
13197
|
+
var countAttachmentPoint = FunctionalGroup.getAttachmentPointCount(sgroup, _this.editor.render.ctab.molecule);
|
|
13198
|
+
if (countAttachmentPoint > 1) {
|
|
13199
|
+
action.mergeWith(setExpandSGroup(_this.editor.render.ctab, sgroup.id, {
|
|
13200
|
+
expanded: true
|
|
13201
|
+
}));
|
|
13202
|
+
}
|
|
13203
|
+
});
|
|
13204
|
+
this.editor.update(this.action, true);
|
|
13153
13205
|
this.findItems = ['functionalGroups'];
|
|
13154
13206
|
this.mergeItems = getItemsToFuse(this.editor, pasteItems);
|
|
13155
13207
|
this.editor.hover(getHoverToFuse(this.mergeItems), this);
|
|
@@ -13183,6 +13235,7 @@ var PasteTool = function () {
|
|
|
13183
13235
|
}, {
|
|
13184
13236
|
key: "mousemove",
|
|
13185
13237
|
value: function mousemove(event) {
|
|
13238
|
+
var _this2 = this;
|
|
13186
13239
|
if (this.action) {
|
|
13187
13240
|
var _this$action2;
|
|
13188
13241
|
(_this$action2 = this.action) === null || _this$action2 === void 0 ? void 0 : _this$action2.perform(this.editor.render.ctab);
|
|
@@ -13213,6 +13266,12 @@ var PasteTool = function () {
|
|
|
13213
13266
|
this.dragCtx.action = action;
|
|
13214
13267
|
this.editor.update(this.dragCtx.action, true);
|
|
13215
13268
|
} else {
|
|
13269
|
+
this.struct.sgroups.forEach(function (sgroup) {
|
|
13270
|
+
var countAttachmentPoint = FunctionalGroup.getAttachmentPointCount(sgroup, _this2.struct);
|
|
13271
|
+
if (countAttachmentPoint > 1) {
|
|
13272
|
+
sgroup.setAttr('expanded', true);
|
|
13273
|
+
}
|
|
13274
|
+
});
|
|
13216
13275
|
var _fromPaste5 = fromPaste(this.editor.render.ctab, this.struct, this.editor.render.page2obj(event)),
|
|
13217
13276
|
_fromPaste6 = _slicedToArray(_fromPaste5, 2),
|
|
13218
13277
|
_action = _fromPaste6[0],
|
|
@@ -13253,7 +13312,7 @@ var PasteTool = function () {
|
|
|
13253
13312
|
var action = this.action;
|
|
13254
13313
|
delete this.action;
|
|
13255
13314
|
if (!this.isSingleContractedGroup || !this.mergeItems) {
|
|
13256
|
-
this.editor.update(dropAndMerge(this.editor, this.mergeItems, action));
|
|
13315
|
+
this.editor.update(dropAndMerge(this.editor, this.mergeItems, action, true));
|
|
13257
13316
|
}
|
|
13258
13317
|
}
|
|
13259
13318
|
}
|
|
@@ -13293,9 +13352,9 @@ function prepareTemplateFromSingleGroup(molecule) {
|
|
|
13293
13352
|
return template;
|
|
13294
13353
|
}
|
|
13295
13354
|
|
|
13296
|
-
function _createForOfIteratorHelper$
|
|
13297
|
-
function _unsupportedIterableToArray$
|
|
13298
|
-
function _arrayLikeToArray$
|
|
13355
|
+
function _createForOfIteratorHelper$3(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray$3(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; } } }; }
|
|
13356
|
+
function _unsupportedIterableToArray$3(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray$3(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$3(o, minLen); }
|
|
13357
|
+
function _arrayLikeToArray$3(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; }
|
|
13299
13358
|
var RGroupAtomTool = function () {
|
|
13300
13359
|
function RGroupAtomTool(editor) {
|
|
13301
13360
|
_classCallCheck(this, RGroupAtomTool);
|
|
@@ -13331,7 +13390,7 @@ var RGroupAtomTool = function () {
|
|
|
13331
13390
|
}
|
|
13332
13391
|
}
|
|
13333
13392
|
if (atomResult.length > 0) {
|
|
13334
|
-
var _iterator = _createForOfIteratorHelper$
|
|
13393
|
+
var _iterator = _createForOfIteratorHelper$3(atomResult),
|
|
13335
13394
|
_step;
|
|
13336
13395
|
try {
|
|
13337
13396
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -13395,9 +13454,9 @@ function propsDialog$1(editor, id, pos) {
|
|
|
13395
13454
|
});
|
|
13396
13455
|
}
|
|
13397
13456
|
|
|
13398
|
-
function _createForOfIteratorHelper$
|
|
13399
|
-
function _unsupportedIterableToArray$
|
|
13400
|
-
function _arrayLikeToArray$
|
|
13457
|
+
function _createForOfIteratorHelper$2(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray$2(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; } } }; }
|
|
13458
|
+
function _unsupportedIterableToArray$2(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray$2(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$2(o, minLen); }
|
|
13459
|
+
function _arrayLikeToArray$2(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; }
|
|
13401
13460
|
var RGroupFragmentTool = function () {
|
|
13402
13461
|
function RGroupFragmentTool(editor) {
|
|
13403
13462
|
_classCallCheck(this, RGroupFragmentTool);
|
|
@@ -13434,7 +13493,7 @@ var RGroupFragmentTool = function () {
|
|
|
13434
13493
|
}
|
|
13435
13494
|
}
|
|
13436
13495
|
if (atomResult.length > 0) {
|
|
13437
|
-
var _iterator = _createForOfIteratorHelper$
|
|
13496
|
+
var _iterator = _createForOfIteratorHelper$2(atomResult),
|
|
13438
13497
|
_step;
|
|
13439
13498
|
try {
|
|
13440
13499
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
@@ -13454,7 +13513,7 @@ var RGroupFragmentTool = function () {
|
|
|
13454
13513
|
});
|
|
13455
13514
|
return;
|
|
13456
13515
|
} else if (bondResult.length > 0) {
|
|
13457
|
-
var _iterator2 = _createForOfIteratorHelper$
|
|
13516
|
+
var _iterator2 = _createForOfIteratorHelper$2(bondResult),
|
|
13458
13517
|
_step2;
|
|
13459
13518
|
try {
|
|
13460
13519
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
@@ -14643,9 +14702,6 @@ var tools = {
|
|
|
14643
14702
|
text: TextTool
|
|
14644
14703
|
};
|
|
14645
14704
|
|
|
14646
|
-
function _createForOfIteratorHelper$2(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray$2(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; } } }; }
|
|
14647
|
-
function _unsupportedIterableToArray$2(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray$2(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$2(o, minLen); }
|
|
14648
|
-
function _arrayLikeToArray$2(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; }
|
|
14649
14705
|
function ownKeys$M(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; }
|
|
14650
14706
|
function _objectSpread$M(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$M(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$M(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
14651
14707
|
function handleHotkeyOverItem(props) {
|
|
@@ -14664,18 +14720,44 @@ function handleOtherActions(_ref) {
|
|
|
14664
14720
|
newAction = _ref.newAction;
|
|
14665
14721
|
dispatch(onAction(newAction));
|
|
14666
14722
|
}
|
|
14667
|
-
function
|
|
14723
|
+
function eraseItem(_ref2) {
|
|
14668
14724
|
var editor = _ref2.editor,
|
|
14669
|
-
|
|
14670
|
-
var action = fromFragmentDeletion(editor.render.ctab,
|
|
14725
|
+
item = _ref2.item;
|
|
14726
|
+
var action = fromFragmentDeletion(editor.render.ctab, item);
|
|
14671
14727
|
editor.update(action);
|
|
14672
14728
|
editor.hover(null);
|
|
14673
14729
|
}
|
|
14674
|
-
function
|
|
14675
|
-
var
|
|
14730
|
+
function handleEraser(_ref3) {
|
|
14731
|
+
var editor = _ref3.editor,
|
|
14732
|
+
hoveredItem = _ref3.hoveredItem,
|
|
14676
14733
|
newAction = _ref3.newAction,
|
|
14677
|
-
editor = _ref3.editor,
|
|
14678
14734
|
dispatch = _ref3.dispatch;
|
|
14735
|
+
var item = mapItemsToArrays(hoveredItem);
|
|
14736
|
+
var itemType = Object.keys(hoveredItem)[0];
|
|
14737
|
+
if ([STRUCT_TYPE.atoms, STRUCT_TYPE.bonds].includes(itemType)) {
|
|
14738
|
+
isFunctionalGroupChange({
|
|
14739
|
+
editor: editor,
|
|
14740
|
+
hoveredItemId: item[itemType][0],
|
|
14741
|
+
newAction: newAction,
|
|
14742
|
+
dispatch: dispatch
|
|
14743
|
+
}, itemType).then(function (res) {
|
|
14744
|
+
res && eraseItem({
|
|
14745
|
+
editor: editor,
|
|
14746
|
+
item: item
|
|
14747
|
+
});
|
|
14748
|
+
});
|
|
14749
|
+
return;
|
|
14750
|
+
}
|
|
14751
|
+
eraseItem({
|
|
14752
|
+
editor: editor,
|
|
14753
|
+
item: item
|
|
14754
|
+
});
|
|
14755
|
+
}
|
|
14756
|
+
function handleDialog(_ref4) {
|
|
14757
|
+
var hoveredItem = _ref4.hoveredItem,
|
|
14758
|
+
newAction = _ref4.newAction,
|
|
14759
|
+
editor = _ref4.editor,
|
|
14760
|
+
dispatch = _ref4.dispatch;
|
|
14679
14761
|
var dialogType = Object.keys(hoveredItem)[0];
|
|
14680
14762
|
var dialogHandler = getDialogHandler(dialogType);
|
|
14681
14763
|
var hoveredItemId = hoveredItem[dialogType];
|
|
@@ -14701,11 +14783,11 @@ function getDialogHandler(itemType) {
|
|
|
14701
14783
|
var dialog = dialogs[itemType];
|
|
14702
14784
|
return dialog;
|
|
14703
14785
|
}
|
|
14704
|
-
function handleAtomPropsDialog(
|
|
14705
|
-
var hoveredItemId =
|
|
14706
|
-
newAction =
|
|
14707
|
-
editor =
|
|
14708
|
-
dispatch =
|
|
14786
|
+
function handleAtomPropsDialog(_ref5) {
|
|
14787
|
+
var hoveredItemId = _ref5.hoveredItemId,
|
|
14788
|
+
newAction = _ref5.newAction,
|
|
14789
|
+
editor = _ref5.editor,
|
|
14790
|
+
dispatch = _ref5.dispatch;
|
|
14709
14791
|
var selection = editor.selection();
|
|
14710
14792
|
var atomsSelected = selection === null || selection === void 0 ? void 0 : selection.atoms;
|
|
14711
14793
|
var restruct = editor.render.ctab;
|
|
@@ -14728,11 +14810,11 @@ function handleAtomPropsDialog(_ref4) {
|
|
|
14728
14810
|
});
|
|
14729
14811
|
}
|
|
14730
14812
|
}
|
|
14731
|
-
function handleBondPropsDialog(
|
|
14732
|
-
var hoveredItemId =
|
|
14733
|
-
newAction =
|
|
14734
|
-
editor =
|
|
14735
|
-
dispatch =
|
|
14813
|
+
function handleBondPropsDialog(_ref6) {
|
|
14814
|
+
var hoveredItemId = _ref6.hoveredItemId,
|
|
14815
|
+
newAction = _ref6.newAction,
|
|
14816
|
+
editor = _ref6.editor,
|
|
14817
|
+
dispatch = _ref6.dispatch;
|
|
14736
14818
|
var restruct = editor.render.ctab;
|
|
14737
14819
|
var bondFromStruct = restruct.bonds.get(hoveredItemId);
|
|
14738
14820
|
var convertedBondForModal = fromBond(bondFromStruct === null || bondFromStruct === void 0 ? void 0 : bondFromStruct.b);
|
|
@@ -14743,11 +14825,11 @@ function handleBondPropsDialog(_ref5) {
|
|
|
14743
14825
|
return null;
|
|
14744
14826
|
});
|
|
14745
14827
|
}
|
|
14746
|
-
function handleTool(
|
|
14747
|
-
var hoveredItem =
|
|
14748
|
-
newAction =
|
|
14749
|
-
editor =
|
|
14750
|
-
dispatch =
|
|
14828
|
+
function handleTool(_ref7) {
|
|
14829
|
+
var hoveredItem = _ref7.hoveredItem,
|
|
14830
|
+
newAction = _ref7.newAction,
|
|
14831
|
+
editor = _ref7.editor,
|
|
14832
|
+
dispatch = _ref7.dispatch;
|
|
14751
14833
|
var _loop = function _loop(item) {
|
|
14752
14834
|
var toolHandler = getToolHandler(item, newAction.tool);
|
|
14753
14835
|
var isChangeStructureTool = newAction.tool !== 'hand';
|
|
@@ -14759,7 +14841,7 @@ function handleTool(_ref6) {
|
|
|
14759
14841
|
newAction: newAction,
|
|
14760
14842
|
dispatch: dispatch
|
|
14761
14843
|
};
|
|
14762
|
-
isFunctionalGroupChange(props).then(function (result) {
|
|
14844
|
+
isFunctionalGroupChange(props, item).then(function (result) {
|
|
14763
14845
|
if (!result && isChangeStructureTool) return;
|
|
14764
14846
|
toolHandler(props);
|
|
14765
14847
|
});
|
|
@@ -14769,17 +14851,17 @@ function handleTool(_ref6) {
|
|
|
14769
14851
|
_loop(item);
|
|
14770
14852
|
}
|
|
14771
14853
|
}
|
|
14772
|
-
function isFunctionalGroupChange(_x) {
|
|
14854
|
+
function isFunctionalGroupChange(_x, _x2) {
|
|
14773
14855
|
return _isFunctionalGroupChange.apply(this, arguments);
|
|
14774
14856
|
}
|
|
14775
14857
|
function _isFunctionalGroupChange() {
|
|
14776
|
-
_isFunctionalGroupChange = _asyncToGenerator( _regeneratorRuntime.mark(function _callee(props) {
|
|
14858
|
+
_isFunctionalGroupChange = _asyncToGenerator( _regeneratorRuntime.mark(function _callee(props, type) {
|
|
14777
14859
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
14778
14860
|
while (1) {
|
|
14779
14861
|
switch (_context.prev = _context.next) {
|
|
14780
14862
|
case 0:
|
|
14781
14863
|
_context.next = 2;
|
|
14782
|
-
return isChangingFunctionalGroup(props);
|
|
14864
|
+
return isChangingFunctionalGroup(props, type);
|
|
14783
14865
|
case 2:
|
|
14784
14866
|
return _context.abrupt("return", _context.sent);
|
|
14785
14867
|
case 3:
|
|
@@ -14807,13 +14889,13 @@ function getToolHandler(itemType) {
|
|
|
14807
14889
|
rgroupatom: function rgroupatom(props) {
|
|
14808
14890
|
return handleRGroupAtomTool(props);
|
|
14809
14891
|
},
|
|
14810
|
-
sgroup: function sgroup(
|
|
14811
|
-
var editor =
|
|
14812
|
-
hoveredItemId =
|
|
14892
|
+
sgroup: function sgroup(_ref8) {
|
|
14893
|
+
var editor = _ref8.editor,
|
|
14894
|
+
hoveredItemId = _ref8.hoveredItemId;
|
|
14813
14895
|
tools.sgroup.sgroupDialog(editor, hoveredItemId);
|
|
14814
14896
|
},
|
|
14815
|
-
hand: function hand(
|
|
14816
|
-
var dispatch =
|
|
14897
|
+
hand: function hand(_ref9) {
|
|
14898
|
+
var dispatch = _ref9.dispatch;
|
|
14817
14899
|
return dispatch(onAction({
|
|
14818
14900
|
tool: 'hand'
|
|
14819
14901
|
}));
|
|
@@ -14827,28 +14909,28 @@ function getToolHandler(itemType) {
|
|
|
14827
14909
|
}
|
|
14828
14910
|
return items._default[toolName];
|
|
14829
14911
|
}
|
|
14830
|
-
function handleAtomTool(
|
|
14831
|
-
var hoveredItemId =
|
|
14832
|
-
newAction =
|
|
14833
|
-
editor =
|
|
14912
|
+
function handleAtomTool(_ref10) {
|
|
14913
|
+
var hoveredItemId = _ref10.hoveredItemId,
|
|
14914
|
+
newAction = _ref10.newAction,
|
|
14915
|
+
editor = _ref10.editor;
|
|
14834
14916
|
var atomProps = _objectSpread$M({}, newAction.opts);
|
|
14835
14917
|
var updatedAtoms = fromAtomsAttrs(editor.render.ctab, hoveredItemId, atomProps, true);
|
|
14836
14918
|
editor.update(updatedAtoms);
|
|
14837
14919
|
}
|
|
14838
|
-
function handleBondTool(
|
|
14839
|
-
var hoveredItemId =
|
|
14840
|
-
newAction =
|
|
14841
|
-
editor =
|
|
14920
|
+
function handleBondTool(_ref11) {
|
|
14921
|
+
var hoveredItemId = _ref11.hoveredItemId,
|
|
14922
|
+
newAction = _ref11.newAction,
|
|
14923
|
+
editor = _ref11.editor;
|
|
14842
14924
|
var newBond = fromBondAddition(editor.render.ctab, newAction.opts, hoveredItemId, {
|
|
14843
14925
|
label: 'C'
|
|
14844
14926
|
})[0];
|
|
14845
14927
|
editor.update(newBond);
|
|
14846
14928
|
}
|
|
14847
|
-
function handleChargeTool(
|
|
14929
|
+
function handleChargeTool(_ref12) {
|
|
14848
14930
|
var _editor$render$ctab$a;
|
|
14849
|
-
var hoveredItemId =
|
|
14850
|
-
newAction =
|
|
14851
|
-
editor =
|
|
14931
|
+
var hoveredItemId = _ref12.hoveredItemId,
|
|
14932
|
+
newAction = _ref12.newAction,
|
|
14933
|
+
editor = _ref12.editor;
|
|
14852
14934
|
var existingAtom = (_editor$render$ctab$a = editor.render.ctab.atoms.get(hoveredItemId)) === null || _editor$render$ctab$a === void 0 ? void 0 : _editor$render$ctab$a.a;
|
|
14853
14935
|
if (existingAtom) {
|
|
14854
14936
|
var updatedAtom = fromAtomsAttrs(editor.render.ctab, hoveredItemId, {
|
|
@@ -14864,17 +14946,17 @@ function mapItemsToArrays(items) {
|
|
|
14864
14946
|
}
|
|
14865
14947
|
return mappedItems;
|
|
14866
14948
|
}
|
|
14867
|
-
function handleRGroupAtomTool(
|
|
14949
|
+
function handleRGroupAtomTool(_x3) {
|
|
14868
14950
|
return _handleRGroupAtomTool.apply(this, arguments);
|
|
14869
14951
|
}
|
|
14870
14952
|
function _handleRGroupAtomTool() {
|
|
14871
|
-
_handleRGroupAtomTool = _asyncToGenerator( _regeneratorRuntime.mark(function _callee2(
|
|
14953
|
+
_handleRGroupAtomTool = _asyncToGenerator( _regeneratorRuntime.mark(function _callee2(_ref13) {
|
|
14872
14954
|
var hoveredItemId, editor, struct, atom, rglabel, label, element;
|
|
14873
14955
|
return _regeneratorRuntime.wrap(function _callee2$(_context2) {
|
|
14874
14956
|
while (1) {
|
|
14875
14957
|
switch (_context2.prev = _context2.next) {
|
|
14876
14958
|
case 0:
|
|
14877
|
-
hoveredItemId =
|
|
14959
|
+
hoveredItemId = _ref13.hoveredItemId, editor = _ref13.editor;
|
|
14878
14960
|
struct = editor.render.ctab.molecule;
|
|
14879
14961
|
atom = hoveredItemId || hoveredItemId === 0 ? struct.atoms.get(hoveredItemId) : null;
|
|
14880
14962
|
rglabel = atom ? atom.rglabel : 0;
|
|
@@ -14911,64 +14993,36 @@ function _handleRGroupAtomTool() {
|
|
|
14911
14993
|
}));
|
|
14912
14994
|
return _handleRGroupAtomTool.apply(this, arguments);
|
|
14913
14995
|
}
|
|
14914
|
-
function
|
|
14996
|
+
function getFunctionalGroupIdByItem(editor, hoveredItemId, type) {
|
|
14997
|
+
var molecule = editor.render.ctab.molecule;
|
|
14998
|
+
var functionalGroups = molecule.functionalGroups;
|
|
14999
|
+
return type === 'atoms' ? FunctionalGroup.findFunctionalGroupByAtom(functionalGroups, hoveredItemId) : FunctionalGroup.findFunctionalGroupByBond(molecule, functionalGroups, hoveredItemId);
|
|
15000
|
+
}
|
|
15001
|
+
function isChangingFunctionalGroup(_x4, _x5) {
|
|
14915
15002
|
return _isChangingFunctionalGroup.apply(this, arguments);
|
|
14916
15003
|
}
|
|
14917
15004
|
function _isChangingFunctionalGroup() {
|
|
14918
|
-
_isChangingFunctionalGroup = _asyncToGenerator( _regeneratorRuntime.mark(function _callee3(
|
|
14919
|
-
var
|
|
14920
|
-
var hoveredItemId, editor, atomResult, result, atom, molecule, functionalGroups, sgroupsOnCanvas, atomId, isFunctionalGroup, _iterator, _step, id, fgId;
|
|
15005
|
+
_isChangingFunctionalGroup = _asyncToGenerator( _regeneratorRuntime.mark(function _callee3(_ref14, type) {
|
|
15006
|
+
var hoveredItemId, editor, fgId;
|
|
14921
15007
|
return _regeneratorRuntime.wrap(function _callee3$(_context3) {
|
|
14922
15008
|
while (1) {
|
|
14923
15009
|
switch (_context3.prev = _context3.next) {
|
|
14924
15010
|
case 0:
|
|
14925
|
-
hoveredItemId =
|
|
14926
|
-
|
|
14927
|
-
|
|
14928
|
-
|
|
14929
|
-
molecule = editor.render.ctab.molecule;
|
|
14930
|
-
functionalGroups = molecule.functionalGroups;
|
|
14931
|
-
sgroupsOnCanvas = Array.from(molecule.sgroups.values());
|
|
14932
|
-
if (atom && functionalGroups) {
|
|
14933
|
-
atomId = FunctionalGroup.atomsInFunctionalGroup(functionalGroups, hoveredItemId);
|
|
14934
|
-
if (atomId !== null) {
|
|
14935
|
-
atomResult.push(atomId);
|
|
14936
|
-
}
|
|
14937
|
-
}
|
|
14938
|
-
isFunctionalGroup = atomResult.length > 0;
|
|
14939
|
-
if (!isFunctionalGroup) {
|
|
14940
|
-
_context3.next = 17;
|
|
14941
|
-
break;
|
|
14942
|
-
}
|
|
14943
|
-
if (!SGroup$1.isAtomInSaltOrSolvent(hoveredItemId, sgroupsOnCanvas)) {
|
|
14944
|
-
_context3.next = 12;
|
|
15011
|
+
hoveredItemId = _ref14.hoveredItemId, editor = _ref14.editor;
|
|
15012
|
+
fgId = getFunctionalGroupIdByItem(editor, hoveredItemId, type);
|
|
15013
|
+
if (!(fgId !== null)) {
|
|
15014
|
+
_context3.next = 6;
|
|
14945
15015
|
break;
|
|
14946
15016
|
}
|
|
14947
|
-
|
|
14948
|
-
case 12:
|
|
14949
|
-
_iterator = _createForOfIteratorHelper$2(atomResult);
|
|
14950
|
-
try {
|
|
14951
|
-
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
14952
|
-
id = _step.value;
|
|
14953
|
-
fgId = FunctionalGroup.findFunctionalGroupByAtom(functionalGroups, id);
|
|
14954
|
-
if (fgId !== null && !result.includes(fgId)) {
|
|
14955
|
-
result.push(fgId);
|
|
14956
|
-
}
|
|
14957
|
-
}
|
|
14958
|
-
} catch (err) {
|
|
14959
|
-
_iterator.e(err);
|
|
14960
|
-
} finally {
|
|
14961
|
-
_iterator.f();
|
|
14962
|
-
}
|
|
14963
|
-
_context3.next = 16;
|
|
15017
|
+
_context3.next = 5;
|
|
14964
15018
|
return editor.event.removeFG.dispatch({
|
|
14965
|
-
fgIds:
|
|
15019
|
+
fgIds: [fgId]
|
|
14966
15020
|
});
|
|
14967
|
-
case
|
|
14968
|
-
return _context3.abrupt("return",
|
|
14969
|
-
case
|
|
15021
|
+
case 5:
|
|
15022
|
+
return _context3.abrupt("return", false);
|
|
15023
|
+
case 6:
|
|
14970
15024
|
return _context3.abrupt("return", true);
|
|
14971
|
-
case
|
|
15025
|
+
case 7:
|
|
14972
15026
|
case "end":
|
|
14973
15027
|
return _context3.stop();
|
|
14974
15028
|
}
|
|
@@ -14989,11 +15043,7 @@ function initKeydownListener(element) {
|
|
|
14989
15043
|
function removeNotRenderedStruct(actionTool, group, dispatch) {
|
|
14990
15044
|
var affectedTools = ['paste', 'template'];
|
|
14991
15045
|
if (affectedTools.includes(actionTool.tool) && group !== null && group !== void 0 && group.includes('save')) {
|
|
14992
|
-
|
|
14993
|
-
dispatch({
|
|
14994
|
-
type: 'ACTION',
|
|
14995
|
-
action: savedSelectedTool || tools$1['select-rectangle'].action
|
|
14996
|
-
});
|
|
15046
|
+
dispatch(removeStructAction());
|
|
14997
15047
|
}
|
|
14998
15048
|
}
|
|
14999
15049
|
function keyHandle(dispatch, state, hotKeys, event) {
|
|
@@ -15659,7 +15709,7 @@ function findClosestFG(restruct, pos, skip) {
|
|
|
15659
15709
|
reSGroupId = _step$value[0],
|
|
15660
15710
|
reSGroup = _step$value[1];
|
|
15661
15711
|
if (reSGroupId === skipId) continue;
|
|
15662
|
-
var _reSGroup$getTextHigh = reSGroup.getTextHighlightDimensions(),
|
|
15712
|
+
var _reSGroup$getTextHigh = reSGroup.getTextHighlightDimensions(0, restruct.render),
|
|
15663
15713
|
startX = _reSGroup$getTextHigh.startX,
|
|
15664
15714
|
startY = _reSGroup$getTextHigh.startY,
|
|
15665
15715
|
width = _reSGroup$getTextHigh.width,
|
|
@@ -17131,7 +17181,16 @@ var useFunctionalGroupEoc = function useFunctionalGroupEoc() {
|
|
|
17131
17181
|
return toExpand ? functionalGroup.isExpanded : !functionalGroup.isExpanded;
|
|
17132
17182
|
}));
|
|
17133
17183
|
}, []);
|
|
17134
|
-
|
|
17184
|
+
var disabled = useCallback(function (_ref3) {
|
|
17185
|
+
var _props$functionalGrou2;
|
|
17186
|
+
var props = _ref3.props;
|
|
17187
|
+
var editor = getKetcherInstance().editor;
|
|
17188
|
+
var molecule = editor.render.ctab.molecule;
|
|
17189
|
+
return Boolean(props === null || props === void 0 ? void 0 : (_props$functionalGrou2 = props.functionalGroups) === null || _props$functionalGrou2 === void 0 ? void 0 : _props$functionalGrou2.every(function (functionalGroup) {
|
|
17190
|
+
return FunctionalGroup.getAttachmentPointCount(functionalGroup === null || functionalGroup === void 0 ? void 0 : functionalGroup.relatedSGroup, molecule) > 1;
|
|
17191
|
+
}));
|
|
17192
|
+
}, []);
|
|
17193
|
+
return [handler, hidden, disabled];
|
|
17135
17194
|
};
|
|
17136
17195
|
|
|
17137
17196
|
var useFunctionalGroupRemove = function useFunctionalGroupRemove() {
|
|
@@ -17159,12 +17218,16 @@ function ownKeys$G(object, enumerableOnly) { var keys = Object.keys(object); if
|
|
|
17159
17218
|
function _objectSpread$G(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$G(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$G(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
17160
17219
|
var FunctionalGroupMenuItems = function FunctionalGroupMenuItems(props) {
|
|
17161
17220
|
var _useFunctionalGroupEo = useFunctionalGroupEoc(),
|
|
17162
|
-
_useFunctionalGroupEo2 = _slicedToArray(_useFunctionalGroupEo,
|
|
17221
|
+
_useFunctionalGroupEo2 = _slicedToArray(_useFunctionalGroupEo, 3),
|
|
17163
17222
|
handleExpandOrContract = _useFunctionalGroupEo2[0],
|
|
17164
|
-
ExpandOrContractHidden = _useFunctionalGroupEo2[1]
|
|
17223
|
+
ExpandOrContractHidden = _useFunctionalGroupEo2[1],
|
|
17224
|
+
ExpandOrContractDisabled = _useFunctionalGroupEo2[2];
|
|
17165
17225
|
var handleRemove = useFunctionalGroupRemove();
|
|
17166
17226
|
return jsxs(Fragment, {
|
|
17167
17227
|
children: [jsx(Item, _objectSpread$G(_objectSpread$G({}, props), {}, {
|
|
17228
|
+
disabled: function disabled(params) {
|
|
17229
|
+
return ExpandOrContractDisabled(params);
|
|
17230
|
+
},
|
|
17168
17231
|
hidden: function hidden(params) {
|
|
17169
17232
|
return ExpandOrContractHidden(params, true);
|
|
17170
17233
|
},
|
|
@@ -17173,6 +17236,9 @@ var FunctionalGroupMenuItems = function FunctionalGroupMenuItems(props) {
|
|
|
17173
17236
|
},
|
|
17174
17237
|
children: "Expand Abbreviation"
|
|
17175
17238
|
})), jsx(Item, _objectSpread$G(_objectSpread$G({}, props), {}, {
|
|
17239
|
+
disabled: function disabled(params) {
|
|
17240
|
+
return ExpandOrContractDisabled(params);
|
|
17241
|
+
},
|
|
17176
17242
|
hidden: function hidden(params) {
|
|
17177
17243
|
return ExpandOrContractHidden(params, false);
|
|
17178
17244
|
},
|
|
@@ -17684,6 +17750,7 @@ var InfoPanel = function InfoPanel(props) {
|
|
|
17684
17750
|
autoScaleMargin: 0,
|
|
17685
17751
|
rescaleAmount: 1,
|
|
17686
17752
|
cachePrefix: 'infoPanel',
|
|
17753
|
+
needCache: false,
|
|
17687
17754
|
viewSz: new Vec2(width, height),
|
|
17688
17755
|
width: width,
|
|
17689
17756
|
height: height
|
|
@@ -24243,8 +24310,8 @@ var KetcherBuilder = function () {
|
|
|
24243
24310
|
initApp(element, staticResourcesUrl, {
|
|
24244
24311
|
buttons: buttons || {},
|
|
24245
24312
|
errorHandler: errorHandler || null,
|
|
24246
|
-
version: "2.10.0-rc.
|
|
24247
|
-
buildDate: "2023-
|
|
24313
|
+
version: "2.10.0-rc.2" ,
|
|
24314
|
+
buildDate: "2023-05-03T14:52:11" ,
|
|
24248
24315
|
buildNumber: ''
|
|
24249
24316
|
}, structService, resolve);
|
|
24250
24317
|
});
|
|
@@ -24354,5 +24421,5 @@ function Editor(props) {
|
|
|
24354
24421
|
});
|
|
24355
24422
|
}
|
|
24356
24423
|
|
|
24357
|
-
export { Editor, KETCHER_INIT_EVENT_NAME, KETCHER_SAVED_SETTINGS_KEY, MODES };
|
|
24424
|
+
export { Editor, KETCHER_INIT_EVENT_NAME, KETCHER_SAVED_SETTINGS_KEY, MODES, STRUCT_TYPE };
|
|
24358
24425
|
//# sourceMappingURL=index.modern.js.map
|