ketcher-react 2.26.0-rc.9 → 2.27.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/components/MonomerPreview/AmbiguousMonomerPreview/AmbiguousMonomerPreview.d.ts +3 -1
- package/dist/index.css +1 -1
- package/dist/index.css.map +1 -1
- package/dist/index.js +104 -42
- package/dist/index.js.map +1 -1
- package/dist/index.modern.js +104 -42
- package/dist/index.modern.js.map +1 -1
- package/dist/script/editor/highlighter.d.ts +1 -0
- package/dist/script/ui/views/components/ContextMenu/contextMenu.types.d.ts +6 -6
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -3798,7 +3798,7 @@ var zoom = {
|
|
|
3798
3798
|
|
|
3799
3799
|
var openHelpLink = function openHelpLink() {
|
|
3800
3800
|
var _window$open;
|
|
3801
|
-
return (_window$open = window.open("https://github.com/epam/ketcher/blob/".concat("v2.
|
|
3801
|
+
return (_window$open = window.open("https://github.com/epam/ketcher/blob/".concat("v2.27.0-rc.2\n", "/documentation/help.md#ketcher-overview"))) === null || _window$open === void 0 ? void 0 : _window$open.focus();
|
|
3802
3802
|
};
|
|
3803
3803
|
var help = {
|
|
3804
3804
|
help: {
|
|
@@ -8315,11 +8315,6 @@ var DetailsContainer = styled__default["default"].div({
|
|
|
8315
8315
|
overflowX: 'hidden',
|
|
8316
8316
|
overflowY: 'auto',
|
|
8317
8317
|
transition: 'all .3s'
|
|
8318
|
-
}, function (_ref) {
|
|
8319
|
-
var expanded = _ref.expanded;
|
|
8320
|
-
return {
|
|
8321
|
-
maxHeight: expanded ? '9999px' : '0'
|
|
8322
|
-
};
|
|
8323
8318
|
});
|
|
8324
8319
|
|
|
8325
8320
|
var Accordion$1 = function Accordion(_ref) {
|
|
@@ -8334,7 +8329,7 @@ var Accordion$1 = function Accordion(_ref) {
|
|
|
8334
8329
|
children: [jsxRuntime.jsx(SummaryContainer, {
|
|
8335
8330
|
onClick: onSummaryClick,
|
|
8336
8331
|
children: summary
|
|
8337
|
-
}), jsxRuntime.jsx(DetailsContainer, {
|
|
8332
|
+
}), expanded && jsxRuntime.jsx(DetailsContainer, {
|
|
8338
8333
|
"data-testid": dataTestIdDetails,
|
|
8339
8334
|
expanded: expanded,
|
|
8340
8335
|
children: details
|
|
@@ -8501,7 +8496,8 @@ var MonomerName = styled__default["default"].div(_templateObject6$2 || (_templat
|
|
|
8501
8496
|
|
|
8502
8497
|
var AmbiguousMonomerPreview = function AmbiguousMonomerPreview(_ref) {
|
|
8503
8498
|
var className = _ref.className,
|
|
8504
|
-
preview = _ref.preview
|
|
8499
|
+
preview = _ref.preview,
|
|
8500
|
+
style = _ref.style;
|
|
8505
8501
|
var monomer = preview.monomer,
|
|
8506
8502
|
presetMonomers = preview.presetMonomers;
|
|
8507
8503
|
var isAlternatives = monomer.subtype === 'alternatives';
|
|
@@ -8559,6 +8555,7 @@ var AmbiguousMonomerPreview = function AmbiguousMonomerPreview(_ref) {
|
|
|
8559
8555
|
return sortedData.slice(0, 5);
|
|
8560
8556
|
}, [previewData, isAlternatives]);
|
|
8561
8557
|
return jsxRuntime.jsxs(Container, {
|
|
8558
|
+
style: style,
|
|
8562
8559
|
className: className,
|
|
8563
8560
|
"data-testid": "polymer-library-preview",
|
|
8564
8561
|
children: [jsxRuntime.jsx(Header$1, {
|
|
@@ -14625,7 +14622,7 @@ var groupDescriptors = groups.reduce(function (accum, group, index) {
|
|
|
14625
14622
|
var rGroupOptions = makeItems(['rgroup-label', 'rgroup-fragment', 'rgroup-attpoints']);
|
|
14626
14623
|
var shapeOptions = makeItems(['shape-ellipse', 'shape-rectangle', 'shape-line']);
|
|
14627
14624
|
var selectOptions$2 = makeItems(['select-rectangle', 'select-lasso', 'select-fragment']);
|
|
14628
|
-
var arrowsOptions = makeItems(['reaction-arrow-open-angle', 'reaction-arrow-filled-triangle', 'reaction-arrow-filled-bow', 'reaction-arrow-dashed-open-angle', 'reaction-arrow-failed', 'reaction-arrow-retrosynthetic', 'reaction-arrow-both-ends-filled-triangle', 'reaction-arrow-equilibrium-filled-half-bow', 'reaction-arrow-equilibrium-filled-triangle', 'reaction-arrow-equilibrium-open-angle', 'reaction-arrow-unbalanced-equilibrium-filled-half-bow', 'reaction-arrow-unbalanced-equilibrium-open-half-angle', 'reaction-arrow-unbalanced-equilibrium-large-filled-half-bow', 'reaction-arrow-unbalanced-equilibrium-filled-half-triangle', 'reaction-arrow-elliptical-arc-arrow-
|
|
14625
|
+
var arrowsOptions = makeItems(['reaction-arrow-open-angle', 'reaction-arrow-filled-triangle', 'reaction-arrow-filled-bow', 'reaction-arrow-dashed-open-angle', 'reaction-arrow-failed', 'reaction-arrow-retrosynthetic', 'reaction-arrow-both-ends-filled-triangle', 'reaction-arrow-equilibrium-filled-half-bow', 'reaction-arrow-equilibrium-filled-triangle', 'reaction-arrow-equilibrium-open-angle', 'reaction-arrow-unbalanced-equilibrium-filled-half-bow', 'reaction-arrow-unbalanced-equilibrium-open-half-angle', 'reaction-arrow-unbalanced-equilibrium-large-filled-half-bow', 'reaction-arrow-unbalanced-equilibrium-filled-half-triangle', 'reaction-arrow-elliptical-arc-arrow-filled-bow', 'reaction-arrow-elliptical-arc-arrow-filled-triangle', 'reaction-arrow-elliptical-arc-arrow-open-angle', 'reaction-arrow-elliptical-arc-arrow-open-half-angle', ketcherCore.MULTITAIL_ARROW_TOOL_NAME]);
|
|
14629
14626
|
var mappingOptions = makeItems(['reaction-map', 'reaction-unmap', 'reaction-automap']);
|
|
14630
14627
|
|
|
14631
14628
|
var classes$M = {"scroll":"ArrowScroll-module_scroll__h9kCx","button":"ArrowScroll-module_button__ygMgL","down":"ArrowScroll-module_down__yDzZX","up":"ArrowScroll-module_up__Q1ubd"};
|
|
@@ -15410,14 +15407,16 @@ var UndoRedo = function UndoRedo(_ref) {
|
|
|
15410
15407
|
iconName: "undo",
|
|
15411
15408
|
disabled: disabledButtons.includes('undo'),
|
|
15412
15409
|
isHidden: hiddenButtons.includes('undo'),
|
|
15413
|
-
shortcut: shortcuts.undo
|
|
15410
|
+
shortcut: shortcuts.undo,
|
|
15411
|
+
testId: "undo"
|
|
15414
15412
|
}), jsxRuntime.jsx(TopToolbarIconButton, {
|
|
15415
15413
|
title: "Redo",
|
|
15416
15414
|
onClick: onRedo,
|
|
15417
15415
|
iconName: "redo",
|
|
15418
15416
|
disabled: disabledButtons.includes('redo'),
|
|
15419
15417
|
isHidden: hiddenButtons.includes('redo'),
|
|
15420
|
-
shortcut: shortcuts.redo
|
|
15418
|
+
shortcut: shortcuts.redo,
|
|
15419
|
+
testId: "redo"
|
|
15421
15420
|
}), jsxRuntime.jsx(Divider$1, {})]
|
|
15422
15421
|
});
|
|
15423
15422
|
};
|
|
@@ -21551,7 +21550,12 @@ var EnhancedStereoTool = function () {
|
|
|
21551
21550
|
}
|
|
21552
21551
|
var action = stereoAtoms.reduce(function (acc, stereoAtom) {
|
|
21553
21552
|
var _struct$atoms$get;
|
|
21554
|
-
|
|
21553
|
+
var frid = (_struct$atoms$get = struct.atoms.get(stereoAtom)) === null || _struct$atoms$get === void 0 ? void 0 : _struct$atoms$get.fragment;
|
|
21554
|
+
var frag = frid !== undefined ? restruct.molecule.frags.get(frid) : null;
|
|
21555
|
+
if (frag && frag.stereoAtoms) {
|
|
21556
|
+
return acc.mergeWith(ketcherCore.fromStereoFlagUpdate(restruct, frid));
|
|
21557
|
+
}
|
|
21558
|
+
return acc;
|
|
21555
21559
|
}, ketcherCore.fromAtomsAttrs(restruct, stereoAtoms, {
|
|
21556
21560
|
stereoLabel: stereoLabel
|
|
21557
21561
|
}, false));
|
|
@@ -23587,23 +23591,26 @@ var Highlighter = function () {
|
|
|
23587
23591
|
args.forEach(function (arg) {
|
|
23588
23592
|
var atoms = arg.atoms,
|
|
23589
23593
|
bonds = arg.bonds,
|
|
23594
|
+
rgroupAttachmentPoints = arg.rgroupAttachmentPoints,
|
|
23590
23595
|
color = arg.color;
|
|
23591
23596
|
if (typeof color !== 'string') {
|
|
23592
23597
|
return;
|
|
23593
23598
|
}
|
|
23594
|
-
if (!atoms && !bonds) {
|
|
23599
|
+
if (!atoms && !bonds && !rgroupAttachmentPoints) {
|
|
23595
23600
|
return;
|
|
23596
23601
|
}
|
|
23597
23602
|
var restruct = _this.editor.render.ctab;
|
|
23598
|
-
var _getValidInputOnly = getValidInputOnly(restruct.molecule, atoms, bonds),
|
|
23603
|
+
var _getValidInputOnly = getValidInputOnly(restruct.molecule, atoms, bonds, rgroupAttachmentPoints),
|
|
23599
23604
|
validAtoms = _getValidInputOnly.validAtoms,
|
|
23600
|
-
validBonds = _getValidInputOnly.validBonds
|
|
23601
|
-
|
|
23605
|
+
validBonds = _getValidInputOnly.validBonds,
|
|
23606
|
+
validRgroupAttachmentPoints = _getValidInputOnly.validRgroupAttachmentPoints;
|
|
23607
|
+
if (validAtoms.length === 0 && validBonds.length === 0 && validRgroupAttachmentPoints.length === 0) {
|
|
23602
23608
|
return;
|
|
23603
23609
|
}
|
|
23604
23610
|
createdHighlights.push({
|
|
23605
23611
|
atoms: validAtoms,
|
|
23606
23612
|
bonds: validBonds,
|
|
23613
|
+
rgroupAttachmentPoints: validRgroupAttachmentPoints,
|
|
23607
23614
|
color: color
|
|
23608
23615
|
});
|
|
23609
23616
|
});
|
|
@@ -23619,15 +23626,19 @@ var Highlighter = function () {
|
|
|
23619
23626
|
}]);
|
|
23620
23627
|
return Highlighter;
|
|
23621
23628
|
}();
|
|
23622
|
-
function getValidInputOnly(struct, atoms, bonds) {
|
|
23629
|
+
function getValidInputOnly(struct, atoms, bonds, rgroupAttachmentPoints) {
|
|
23623
23630
|
if (!Array.isArray(atoms)) {
|
|
23624
23631
|
atoms = [];
|
|
23625
23632
|
}
|
|
23626
23633
|
if (!Array.isArray(bonds)) {
|
|
23627
23634
|
bonds = [];
|
|
23628
23635
|
}
|
|
23636
|
+
if (!Array.isArray(rgroupAttachmentPoints)) {
|
|
23637
|
+
rgroupAttachmentPoints = [];
|
|
23638
|
+
}
|
|
23629
23639
|
var structAtoms = struct.atoms,
|
|
23630
|
-
structBonds = struct.bonds
|
|
23640
|
+
structBonds = struct.bonds,
|
|
23641
|
+
structRgroupAttachmentPoints = struct.rgroupAttachmentPoints;
|
|
23631
23642
|
if (atoms.length > 0) {
|
|
23632
23643
|
atoms = atoms.filter(function (aid) {
|
|
23633
23644
|
return structAtoms.has(aid);
|
|
@@ -23638,9 +23649,15 @@ function getValidInputOnly(struct, atoms, bonds) {
|
|
|
23638
23649
|
return structBonds.has(bid);
|
|
23639
23650
|
});
|
|
23640
23651
|
}
|
|
23652
|
+
if (rgroupAttachmentPoints.length > 0) {
|
|
23653
|
+
rgroupAttachmentPoints = rgroupAttachmentPoints.filter(function (rgroupAPId) {
|
|
23654
|
+
return structRgroupAttachmentPoints.has(rgroupAPId);
|
|
23655
|
+
});
|
|
23656
|
+
}
|
|
23641
23657
|
return {
|
|
23642
23658
|
validAtoms: atoms,
|
|
23643
|
-
validBonds: bonds
|
|
23659
|
+
validBonds: bonds,
|
|
23660
|
+
validRgroupAttachmentPoints: rgroupAttachmentPoints
|
|
23644
23661
|
};
|
|
23645
23662
|
}
|
|
23646
23663
|
|
|
@@ -24426,7 +24443,7 @@ function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedec
|
|
|
24426
24443
|
function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
|
|
24427
24444
|
var SCALE = ketcherCore.provideEditorSettings().microModeScale;
|
|
24428
24445
|
var HISTORY_SIZE = 32;
|
|
24429
|
-
var structObjects = ['atoms', 'bonds', 'frags', 'sgroups', 'sgroupData', 'rgroups', 'rxnArrows', 'rxnPluses', 'enhancedFlags', 'simpleObjects', 'texts', ketcherCore.IMAGE_KEY, ketcherCore.MULTITAIL_ARROW_KEY];
|
|
24446
|
+
var structObjects = ['atoms', 'bonds', 'frags', 'sgroups', 'sgroupData', 'rgroups', 'rxnArrows', 'rxnPluses', 'enhancedFlags', 'simpleObjects', 'texts', 'rgroupAttachmentPoints', ketcherCore.IMAGE_KEY, ketcherCore.MULTITAIL_ARROW_KEY];
|
|
24430
24447
|
var highlightTargets = ['atoms', 'bonds', 'rxnArrows', 'rxnPluses', 'functionalGroups', 'frags', 'merge', 'rgroups', 'rgroupAttachmentPoints', 'sgroups', 'sgroupData', 'enhancedFlags', 'simpleObjects', 'texts', ketcherCore.IMAGE_KEY, ketcherCore.MULTITAIL_ARROW_KEY];
|
|
24431
24448
|
function selectStereoFlagsIfNecessary(atoms, expAtoms) {
|
|
24432
24449
|
var atomsOfFragments = {};
|
|
@@ -25599,15 +25616,20 @@ var AtomMenuItems = function AtomMenuItems(props) {
|
|
|
25599
25616
|
var atomIds = ((_props$propsFromTrigg6 = props.propsFromTrigger) === null || _props$propsFromTrigg6 === void 0 ? void 0 : _props$propsFromTrigg6.atomIds) || [];
|
|
25600
25617
|
editor.highlights.create({
|
|
25601
25618
|
atoms: atomIds,
|
|
25619
|
+
rgroupAttachmentPoints: [],
|
|
25602
25620
|
bonds: [],
|
|
25603
25621
|
color: color === '' ? 'transparent' : color
|
|
25604
25622
|
});
|
|
25605
25623
|
};
|
|
25606
25624
|
if (isAtomSuperatomLeavingGroup && onlyOneAtomSelected) {
|
|
25607
|
-
return jsxRuntime.
|
|
25608
|
-
|
|
25609
|
-
|
|
25610
|
-
|
|
25625
|
+
return jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
25626
|
+
children: [jsxRuntime.jsx(HighlightMenu, {
|
|
25627
|
+
onHighlight: highlightAtomWithColor
|
|
25628
|
+
}), jsxRuntime.jsx(reactContexify.Item, _objectSpread$O(_objectSpread$O({}, props), {}, {
|
|
25629
|
+
onClick: handleDelete,
|
|
25630
|
+
children: "Delete"
|
|
25631
|
+
}))]
|
|
25632
|
+
});
|
|
25611
25633
|
}
|
|
25612
25634
|
return jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
25613
25635
|
children: [jsxRuntime.jsx(reactContexify.Item, _objectSpread$O(_objectSpread$O({}, props), {}, {
|
|
@@ -25721,6 +25743,7 @@ var useBondSGroupAttach = function useBondSGroupAttach() {
|
|
|
25721
25743
|
SGroupTool.sgroupDialog(editor, null);
|
|
25722
25744
|
}, [getKetcherInstance]);
|
|
25723
25745
|
var hidden = React.useCallback(function (_ref2) {
|
|
25746
|
+
var _struct$sgroups$get;
|
|
25724
25747
|
var props = _ref2.props;
|
|
25725
25748
|
var editor = getKetcherInstance().editor;
|
|
25726
25749
|
var struct = editor.render.ctab;
|
|
@@ -25730,6 +25753,12 @@ var useBondSGroupAttach = function useBondSGroupAttach() {
|
|
|
25730
25753
|
}
|
|
25731
25754
|
var bond = struct.bonds.get(bondIds[0]);
|
|
25732
25755
|
var attachedSGroups = bond.b.getAttachedSGroups(struct.molecule);
|
|
25756
|
+
var _attachedSGroups = _slicedToArray__default["default"](attachedSGroups, 1),
|
|
25757
|
+
sgGroupId = _attachedSGroups[0];
|
|
25758
|
+
var sgroup = (_struct$sgroups$get = struct.sgroups.get(sgGroupId)) === null || _struct$sgroups$get === void 0 ? void 0 : _struct$sgroups$get.item;
|
|
25759
|
+
if (sgroup !== null && sgroup !== void 0 && sgroup.isSuperatomWithoutLabel) {
|
|
25760
|
+
return false;
|
|
25761
|
+
}
|
|
25733
25762
|
return attachedSGroups.size > 0;
|
|
25734
25763
|
}, [getKetcherInstance]);
|
|
25735
25764
|
return [handler, hidden];
|
|
@@ -25757,8 +25786,17 @@ var useBondSGroupEdit = function useBondSGroupEdit() {
|
|
|
25757
25786
|
return sGroupsRef.current.size > 1;
|
|
25758
25787
|
}, [getKetcherInstance]);
|
|
25759
25788
|
var hidden = React.useCallback(function () {
|
|
25789
|
+
var _struct$sgroups$get;
|
|
25790
|
+
var editor = getKetcherInstance().editor;
|
|
25791
|
+
var struct = editor.render.ctab;
|
|
25792
|
+
var _sGroupsRef$current = _slicedToArray__default["default"](sGroupsRef.current, 1),
|
|
25793
|
+
sgGroupId = _sGroupsRef$current[0];
|
|
25794
|
+
var sgroup = (_struct$sgroups$get = struct.sgroups.get(sgGroupId)) === null || _struct$sgroups$get === void 0 ? void 0 : _struct$sgroups$get.item;
|
|
25795
|
+
if (sgroup !== null && sgroup !== void 0 && sgroup.isSuperatomWithoutLabel) {
|
|
25796
|
+
return true;
|
|
25797
|
+
}
|
|
25760
25798
|
return sGroupsRef.current.size === 0;
|
|
25761
|
-
}, []);
|
|
25799
|
+
}, [getKetcherInstance]);
|
|
25762
25800
|
return [handler, disabled, hidden];
|
|
25763
25801
|
};
|
|
25764
25802
|
|
|
@@ -25874,6 +25912,7 @@ var BondMenuItems = function BondMenuItems(props) {
|
|
|
25874
25912
|
editor.highlights.create({
|
|
25875
25913
|
atoms: [],
|
|
25876
25914
|
bonds: bondIds,
|
|
25915
|
+
rgroupAttachmentPoints: [],
|
|
25877
25916
|
color: color === '' ? 'transparent' : color
|
|
25878
25917
|
});
|
|
25879
25918
|
};
|
|
@@ -26064,12 +26103,14 @@ var SelectionMenuItems = function SelectionMenuItems(props) {
|
|
|
26064
26103
|
atomStereoDisabled = _useAtomStereo2[1];
|
|
26065
26104
|
var handleDelete = useDelete$1();
|
|
26066
26105
|
var highlightBondWithColor = function highlightBondWithColor(color) {
|
|
26067
|
-
var _props$propsFromTrigg, _props$propsFromTrigg2;
|
|
26106
|
+
var _props$propsFromTrigg, _props$propsFromTrigg2, _props$propsFromTrigg3;
|
|
26068
26107
|
var bondIds = ((_props$propsFromTrigg = props.propsFromTrigger) === null || _props$propsFromTrigg === void 0 ? void 0 : _props$propsFromTrigg.bondIds) || [];
|
|
26069
26108
|
var atomIds = ((_props$propsFromTrigg2 = props.propsFromTrigger) === null || _props$propsFromTrigg2 === void 0 ? void 0 : _props$propsFromTrigg2.atomIds) || [];
|
|
26109
|
+
var rgroupAttachmentPoints = ((_props$propsFromTrigg3 = props.propsFromTrigger) === null || _props$propsFromTrigg3 === void 0 ? void 0 : _props$propsFromTrigg3.rgroupAttachmentPoints) || [];
|
|
26070
26110
|
editor.highlights.create({
|
|
26071
26111
|
atoms: atomIds,
|
|
26072
26112
|
bonds: bondIds,
|
|
26113
|
+
rgroupAttachmentPoints: rgroupAttachmentPoints,
|
|
26073
26114
|
color: color === '' ? 'transparent' : color
|
|
26074
26115
|
});
|
|
26075
26116
|
};
|
|
@@ -26191,19 +26232,34 @@ var useRGroupAttachmentPointEdit = function useRGroupAttachmentPointEdit() {
|
|
|
26191
26232
|
function ownKeys$K(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
26192
26233
|
function _objectSpread$K(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$K(Object(t), !0).forEach(function (r) { _defineProperty__default["default"](e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$K(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
26193
26234
|
var RGroupAttachmentPointMenuItems = function RGroupAttachmentPointMenuItems(props) {
|
|
26235
|
+
var _useAppContext = useAppContext(),
|
|
26236
|
+
getKetcherInstance = _useAppContext.getKetcherInstance;
|
|
26194
26237
|
var handleRemove = useDelete();
|
|
26195
26238
|
var _useRGroupAttachmentP = useRGroupAttachmentPointEdit(),
|
|
26196
26239
|
_useRGroupAttachmentP2 = _slicedToArray__default["default"](_useRGroupAttachmentP, 3),
|
|
26197
26240
|
handleEditRGroupAttachmentPoint = _useRGroupAttachmentP2[0],
|
|
26198
26241
|
rgroupAttachmentPointDisabled = _useRGroupAttachmentP2[1],
|
|
26199
26242
|
rgroupAttachmentPointHidden = _useRGroupAttachmentP2[2];
|
|
26243
|
+
var editor = getKetcherInstance().editor;
|
|
26244
|
+
var highlight = function highlight(color) {
|
|
26245
|
+
var _props$propsFromTrigg;
|
|
26246
|
+
var rgroupAttachmentPoints = ((_props$propsFromTrigg = props.propsFromTrigger) === null || _props$propsFromTrigg === void 0 ? void 0 : _props$propsFromTrigg.rgroupAttachmentPoints) || [];
|
|
26247
|
+
editor.highlights.create({
|
|
26248
|
+
rgroupAttachmentPoints: rgroupAttachmentPoints,
|
|
26249
|
+
atoms: [],
|
|
26250
|
+
bonds: [],
|
|
26251
|
+
color: color === '' ? 'transparent' : color
|
|
26252
|
+
});
|
|
26253
|
+
};
|
|
26200
26254
|
return jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
26201
26255
|
children: [jsxRuntime.jsx(reactContexify.Item, _objectSpread$K(_objectSpread$K({}, props), {}, {
|
|
26202
26256
|
disabled: rgroupAttachmentPointDisabled,
|
|
26203
26257
|
hidden: rgroupAttachmentPointHidden,
|
|
26204
26258
|
onClick: handleEditRGroupAttachmentPoint,
|
|
26205
26259
|
children: "Edit..."
|
|
26206
|
-
})), jsxRuntime.jsx(
|
|
26260
|
+
})), jsxRuntime.jsx(HighlightMenu, {
|
|
26261
|
+
onHighlight: highlight
|
|
26262
|
+
}), jsxRuntime.jsx(reactContexify.Item, _objectSpread$K(_objectSpread$K({}, props), {}, {
|
|
26207
26263
|
onClick: handleRemove,
|
|
26208
26264
|
children: "Remove"
|
|
26209
26265
|
}))]
|
|
@@ -26307,10 +26363,14 @@ var useMonomerExpansionHandlers = function useMonomerExpansionHandlers() {
|
|
|
26307
26363
|
function ownKeys$I(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
26308
26364
|
function _objectSpread$I(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$I(Object(t), !0).forEach(function (r) { _defineProperty__default["default"](e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$I(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
26309
26365
|
var MacromoleculeMenuItems = function MacromoleculeMenuItems(props) {
|
|
26366
|
+
var _props$propsFromTrigg;
|
|
26310
26367
|
var _useMonomerExpansionH = useMonomerExpansionHandlers(),
|
|
26311
26368
|
_useMonomerExpansionH2 = _slicedToArray__default["default"](_useMonomerExpansionH, 2),
|
|
26312
26369
|
action = _useMonomerExpansionH2[0],
|
|
26313
26370
|
_hidden = _useMonomerExpansionH2[1];
|
|
26371
|
+
var multipleMonomersSelected = (props === null || props === void 0 || (_props$propsFromTrigg = props.propsFromTrigger) === null || _props$propsFromTrigg === void 0 ? void 0 : _props$propsFromTrigg.functionalGroups) && props.propsFromTrigger.functionalGroups.length > 1;
|
|
26372
|
+
var expandText = multipleMonomersSelected ? 'Expand monomers' : 'Expand monomer';
|
|
26373
|
+
var collapseText = multipleMonomersSelected ? 'Collapse monomers' : 'Collapse monomer';
|
|
26314
26374
|
return jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
26315
26375
|
children: [jsxRuntime.jsx(reactContexify.Item, _objectSpread$I(_objectSpread$I({}, props), {}, {
|
|
26316
26376
|
hidden: function hidden(params) {
|
|
@@ -26319,7 +26379,7 @@ var MacromoleculeMenuItems = function MacromoleculeMenuItems(props) {
|
|
|
26319
26379
|
onClick: function onClick(params) {
|
|
26320
26380
|
return action(params, true);
|
|
26321
26381
|
},
|
|
26322
|
-
children:
|
|
26382
|
+
children: expandText
|
|
26323
26383
|
})), jsxRuntime.jsx(reactContexify.Item, _objectSpread$I(_objectSpread$I({}, props), {}, {
|
|
26324
26384
|
hidden: function hidden(params) {
|
|
26325
26385
|
return _hidden(params, false);
|
|
@@ -26327,7 +26387,7 @@ var MacromoleculeMenuItems = function MacromoleculeMenuItems(props) {
|
|
|
26327
26387
|
onClick: function onClick(params) {
|
|
26328
26388
|
return action(params, false);
|
|
26329
26389
|
},
|
|
26330
|
-
children:
|
|
26390
|
+
children: collapseText
|
|
26331
26391
|
}))]
|
|
26332
26392
|
});
|
|
26333
26393
|
};
|
|
@@ -26610,7 +26670,8 @@ function getMenuPropsForSelection(selection, selectedFunctionalGroups) {
|
|
|
26610
26670
|
return {
|
|
26611
26671
|
id: CONTEXT_MENU_ID.FOR_SELECTION,
|
|
26612
26672
|
bondIds: bonds,
|
|
26613
|
-
atomIds: atoms
|
|
26673
|
+
atomIds: atoms,
|
|
26674
|
+
rgroupAttachmentPoints: rgroupAttachmentPoints
|
|
26614
26675
|
};
|
|
26615
26676
|
}
|
|
26616
26677
|
}
|
|
@@ -26911,16 +26972,17 @@ var InfoPanel = function InfoPanel(props) {
|
|
|
26911
26972
|
return isAmbiguousMonomer ? jsxRuntime.jsx(AmbiguousMonomerPreview, {
|
|
26912
26973
|
preview: {
|
|
26913
26974
|
type: exports.PreviewType.AmbiguousMonomer,
|
|
26914
|
-
monomer: sGroup.monomer.variantMonomerItem
|
|
26915
|
-
|
|
26916
|
-
|
|
26917
|
-
|
|
26918
|
-
|
|
26919
|
-
|
|
26920
|
-
|
|
26921
|
-
|
|
26922
|
-
|
|
26923
|
-
}
|
|
26975
|
+
monomer: sGroup.monomer.variantMonomerItem
|
|
26976
|
+
},
|
|
26977
|
+
style: {
|
|
26978
|
+
position: 'absolute',
|
|
26979
|
+
left: "".concat(clientX - 50, "px"),
|
|
26980
|
+
top: calculateAmbiguousMonomerPreviewTop(sGroup.monomer.variantMonomerItem)({
|
|
26981
|
+
left: clientX - 50,
|
|
26982
|
+
top: clientY - 65,
|
|
26983
|
+
bottom: clientY - 25
|
|
26984
|
+
}),
|
|
26985
|
+
transform: 'translate(-50%, 0)'
|
|
26924
26986
|
}
|
|
26925
26987
|
}) : showMolecule ? jsxRuntime.jsx("div", {
|
|
26926
26988
|
style: {
|
|
@@ -34887,8 +34949,8 @@ var KetcherBuilder = function () {
|
|
|
34887
34949
|
cleanup = initApp(element, appRoot, staticResourcesUrl, {
|
|
34888
34950
|
buttons: buttons || {},
|
|
34889
34951
|
errorHandler: errorHandler || null,
|
|
34890
|
-
version: "2.
|
|
34891
|
-
buildDate: "2024-11-
|
|
34952
|
+
version: "2.27.0-rc.2" ,
|
|
34953
|
+
buildDate: "2024-11-12T19:33:40" ,
|
|
34892
34954
|
buildNumber: '',
|
|
34893
34955
|
customButtons: customButtons || []
|
|
34894
34956
|
}, structService, resolve, togglerComponent);
|