ketcher-react 2.28.0-rc.3 → 2.28.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -24,7 +24,7 @@ import _asyncToGenerator from '@babel/runtime/helpers/asyncToGenerator';
24
24
  import _regeneratorRuntime from '@babel/runtime/regenerator';
25
25
  import _classCallCheck$2 from '@babel/runtime/helpers/classCallCheck';
26
26
  import _createClass$2 from '@babel/runtime/helpers/createClass';
27
- import { KetSerializer, MolSerializer, KetcherLogger, Ketcher, defaultBondThickness, FormatterFactory, isClipboardAPIAvailable, notifyCopyCut, notifyRequestCompleted, isControlKey, StereLabelStyleType, StereoColoringType, ShowHydrogenLabels, ShowHydrogenLabelNames, SettingsManager, SdfSerializer, KETCHER_SAVED_OPTIONS_KEY, Bond as Bond$2, Elements, AtomList, getAtomType, StereoLabel, isAttachmentBond, Atom as Atom$2, findStereoAtoms, RxnArrowMode, MULTITAIL_ARROW_TOOL_NAME, SimpleObjectMode, IMAGE_KEY, SGroup as SGroup$1, Pile, identifyStructFormat, SupportedFormat, MULTITAIL_ARROW_KEY, ChemicalMimeType, RenderStruct, Struct, ZoomTool, shortcutStr, MonomerMicromolecule, UnresolvedMonomer, FunctionalGroupsProvider, SaltsAndSolventsProvider, KetcherAsyncEvents, ElementColor, ketcherProvider, generateMenuShortcuts, Vec2, Scale, fromMultipleMove, FunctionalGroup, mergeMapOfItemsToSet, fromSgroupDeletion, fromFragmentDeletion, vectorUtils, fromBondAddition, Action, fromAtomAddition, fromAtomsAttrs, checkOverlapping, fromSeveralSgroupAddition, expandSGroupWithMultipleAttachmentPoint, SgContexts, fromSgroupAction, fromItemsFuse, ReBond, setExpandSGroup, fromBondsAttrs, OperationType, ReStruct, imageReferencePositionToCursor, multitailArrowReferenceLinesToCursor, multitailReferencePositionToCursor, CoordinateTransformation, MultitailArrowRefName, fromMultitailArrowHeadTailMove, fromMultitailArrowHeadTailsResize, fromMultitailArrowMove, fromArrowResizing, fromPaste, fromImageResize, fromSimpleObjectResizing, getItemsToFuse, getHoverToFuse, fromTextDeletion, fromTextUpdating, fromTemplateOnCanvas, fromTemplateOnBondAction, fromTemplateOnAtom, BondAttr, AtomAttr, formatProperties, runAsyncAction, getStructStringFromClipboardData, getStructure, initHotKeys, keyNorm, Fragment as Fragment$1, fromRGroupAttachmentPointUpdate, fromOneBondDeletion, bondChangingAction, fromChain, fromStereoFlagUpdate, fromOneAtomDeletion, fromArrowDeletion, fromPlusDeletion, fromSimpleObjectDeletion, fromRGroupAttachmentPointDeletion, fromImageDeletion, fromMultitailArrowDeletion, notifyItemsToMergeInitializationComplete, RGroup as RGroup$2, fromRGroupFragment, fromUpdateIfThen, fromRGroupAttrs, fromArrowAddition, fromMultitailArrowCreation, fromPlusAddition, fromRotate, fromFlip, fromSimpleObjectAddition, fromTextCreation, fromImageMove, fromImageCreation, fromHighlightCreate, fromHighlightClear, getOptionsWithConvertedUnits, provideEditorSettings, fromNewCanvas, Render, fromDescriptorsAlign, fromSgroupAttachmentPointAddition, SGroupAttachmentPoint, fromSgroupAddition, atomGetAttr, fromBondFlipping, fromMultitailArrowTailAdd, MultitailArrow, fromMultitailArrowTailRemove, setExpandMonomerSGroup, AmbiguousMonomer, genericsList, getAtomCustomQuery, getFormatMimeTypeByFileName, getPropertiesByFormat, StereoFlag, getPropertiesByImgFormat, legacyCopy as legacyCopy$1, b64toBlob, Generics, TextCommand, DefaultStructServiceOptions } from 'ketcher-core';
27
+ import { KetSerializer, MolSerializer, KetcherLogger, Ketcher, defaultBondThickness, FormatterFactory, isClipboardAPIAvailable, notifyCopyCut, notifyRequestCompleted, isControlKey, StereLabelStyleType, StereoColoringType, ShowHydrogenLabels, ShowHydrogenLabelNames, SettingsManager, SdfSerializer, KETCHER_SAVED_OPTIONS_KEY, Bond as Bond$2, Elements, AtomList, getAtomType, StereoLabel, isAttachmentBond, Atom as Atom$2, findStereoAtoms, RxnArrowMode, MULTITAIL_ARROW_TOOL_NAME, SimpleObjectMode, IMAGE_KEY, SGroup as SGroup$1, Pile, identifyStructFormat, SupportedFormat, MULTITAIL_ARROW_KEY, ChemicalMimeType, RenderStruct, Struct, ZoomTool, shortcutStr, MonomerMicromolecule, UnresolvedMonomer, FunctionalGroupsProvider, SaltsAndSolventsProvider, KetcherAsyncEvents, ElementColor, ketcherProvider, generateMenuShortcuts, Vec2, Scale, fromMultipleMove, FunctionalGroup, mergeMapOfItemsToSet, fromSgroupDeletion, fromFragmentDeletion, vectorUtils, fromBondAddition, Action, fromAtomAddition, fromAtomsAttrs, checkOverlapping, fromSeveralSgroupAddition, expandSGroupWithMultipleAttachmentPoint, SgContexts, fromSgroupAction, fromItemsFuse, ReBond, setExpandSGroup, fromBondsAttrs, OperationType, ReStruct, imageReferencePositionToCursor, multitailArrowReferenceLinesToCursor, multitailReferencePositionToCursor, CoordinateTransformation, MultitailArrowRefName, fromMultitailArrowHeadTailMove, fromMultitailArrowHeadTailsResize, fromMultitailArrowMove, fromArrowResizing, fromPaste, fromImageResize, fromSimpleObjectResizing, getItemsToFuse, getHoverToFuse, fromTextDeletion, fromTextUpdating, fromTemplateOnCanvas, fromTemplateOnBondAction, fromTemplateOnAtom, BondAttr, AtomAttr, formatProperties, runAsyncAction, getStructStringFromClipboardData, getStructure, initHotKeys, keyNorm, Fragment as Fragment$1, fromRGroupAttachmentPointUpdate, fromOneBondDeletion, bondChangingAction, fromChain, fromStereoFlagUpdate, fromOneAtomDeletion, fromArrowDeletion, fromPlusDeletion, fromSimpleObjectDeletion, fromRGroupAttachmentPointDeletion, fromImageDeletion, fromMultitailArrowDeletion, notifyItemsToMergeInitializationComplete, RGroup as RGroup$2, fromRGroupFragment, fromUpdateIfThen, fromRGroupAttrs, fromArrowAddition, fromMultitailArrowCreation, fromPlusAddition, fromRotate, fromFlip, fromSimpleObjectAddition, fromTextCreation, fromImageMove, fromImageCreation, fromHighlightCreate, fromHighlightClear, getOptionsWithConvertedUnits, provideEditorSettings, fromNewCanvas, Render, fromDescriptorsAlign, fromSgroupAttachmentPointAddition, SGroupAttachmentPoint, fromSgroupAddition, atomGetAttr, fromBondFlipping, setExpandMonomerSGroup, fromMultitailArrowTailAdd, MultitailArrow, fromMultitailArrowTailRemove, AmbiguousMonomer, genericsList, getAtomCustomQuery, getFormatMimeTypeByFileName, getPropertiesByFormat, StereoFlag, getPropertiesByImgFormat, legacyCopy as legacyCopy$1, b64toBlob, Generics, TextCommand, DefaultStructServiceOptions } from 'ketcher-core';
28
28
  import * as React from 'react';
29
29
  import React__default, { createRef, Component, useRef, useEffect, useLayoutEffect, useMemo, useState, createElement, forwardRef, useCallback, Fragment as Fragment$2, PureComponent, lazy, Suspense } from 'react';
30
30
  import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
@@ -898,6 +898,12 @@ var server = {
898
898
  description: 'slider',
899
899
  "default": true
900
900
  },
901
+ ignoreChiralFlag: {
902
+ title: 'Ignore the chiral flag',
903
+ type: 'boolean',
904
+ description: 'slider',
905
+ "default": false
906
+ },
901
907
  'ignore-stereochemistry-errors': {
902
908
  title: 'Ignore stereochemistry errors',
903
909
  type: 'boolean',
@@ -3737,7 +3743,7 @@ var zoom = {
3737
3743
 
3738
3744
  var openHelpLink = function openHelpLink() {
3739
3745
  var _window$open;
3740
- return (_window$open = window.open("https://github.com/epam/ketcher/blob/".concat("v2.28.0-rc.3\n", "/documentation/help.md#ketcher-overview"))) === null || _window$open === void 0 ? void 0 : _window$open.focus();
3746
+ return (_window$open = window.open("https://github.com/epam/ketcher/blob/".concat("v2.28.0\n", "/documentation/help.md#ketcher-overview"))) === null || _window$open === void 0 ? void 0 : _window$open.focus();
3741
3747
  };
3742
3748
  var help = {
3743
3749
  help: {
@@ -18907,7 +18913,7 @@ var TemplateTool = function () {
18907
18913
  value: function () {
18908
18914
  var _mousedown = _asyncToGenerator( _regeneratorRuntime.mark(function _callee(event) {
18909
18915
  var _this$templatePreview;
18910
- var target, struct, _this$closestItem2, _this$closestItem3, _this$closestItem4, dragCtx, ci, bond;
18916
+ var target, struct, _this$closestItem2, _this$closestItem3, _this$closestItem4, _this$closestItem5, dragCtx, ci, bond;
18911
18917
  return _regeneratorRuntime.wrap(function _callee$(_context) {
18912
18918
  while (1) switch (_context.prev = _context.next) {
18913
18919
  case 0:
@@ -18922,7 +18928,7 @@ var TemplateTool = function () {
18922
18928
  bonds: [this.closestItem.id]
18923
18929
  }));
18924
18930
  if (
18925
- ((_this$closestItem4 = this.closestItem) === null || _this$closestItem4 === void 0 ? void 0 : _this$closestItem4.map) === 'functionalGroups' && FunctionalGroup.isContractedFunctionalGroup(this.closestItem.id, this.functionalGroups)) {
18931
+ (((_this$closestItem4 = this.closestItem) === null || _this$closestItem4 === void 0 ? void 0 : _this$closestItem4.map) === 'functionalGroups' || ((_this$closestItem5 = this.closestItem) === null || _this$closestItem5 === void 0 ? void 0 : _this$closestItem5.map) === 'sgroups') && FunctionalGroup.isContractedFunctionalGroup(this.closestItem.id, this.functionalGroups)) {
18926
18932
  this.targetGroupsIds.push(this.closestItem.id);
18927
18933
  }
18928
18934
  }
@@ -20399,7 +20405,20 @@ function findClosestSGroup(restruct, pos) {
20399
20405
  var ret = null;
20400
20406
  var minDist = SELECTION_DISTANCE_COEFFICIENT;
20401
20407
  restruct.molecule.sgroups.forEach(function (sg, sgid) {
20402
- if (sg.isContracted() || sg.isSuperatomWithoutLabel) return;
20408
+ if (sg.isSuperatomWithoutLabel) {
20409
+ return;
20410
+ }
20411
+ if (sg.isContracted()) {
20412
+ var sGroupPosition = sg.pp;
20413
+ if (sGroupPosition) {
20414
+ var dist = Vec2.dist(pos, sGroupPosition);
20415
+ if (dist < minDist) {
20416
+ ret = sgid;
20417
+ minDist = dist;
20418
+ }
20419
+ }
20420
+ return;
20421
+ }
20403
20422
  var d = sg.bracketDirection;
20404
20423
  var n = d.rotateSC(1, 0);
20405
20424
  var pg = new Vec2(Vec2.dot(pos, d), Vec2.dot(pos, n));
@@ -21780,7 +21799,7 @@ var EraserTool = function () {
21780
21799
  this.editor.update(fromOneAtomDeletion(restruct, ci.id));
21781
21800
  } else if (ci.map === 'bonds') {
21782
21801
  this.editor.update(fromOneBondDeletion(restruct, ci.id));
21783
- } else if (ci.map === 'functionalGroups' && FunctionalGroup.isContractedFunctionalGroup(ci.id, functionalGroups)) {
21802
+ } else if ((ci.map === 'sgroups' || ci.map === 'functionalGroups') && FunctionalGroup.isContractedFunctionalGroup(ci.id, functionalGroups)) {
21784
21803
  var _sGroup = sgroups.get(ci.id);
21785
21804
  this.editor.update(fromFragmentDeletion(rnd.ctab, {
21786
21805
  atoms: _toConsumableArray(SGroup$1.getAtoms(molecule, _sGroup === null || _sGroup === void 0 ? void 0 : _sGroup.item)),
@@ -25949,7 +25968,7 @@ var useFunctionalGroupEoc = function useFunctionalGroupEoc() {
25949
25968
  var selectedFunctionalGroups = props === null || props === void 0 ? void 0 : props.functionalGroups;
25950
25969
  var action = new Action();
25951
25970
  selectedFunctionalGroups === null || selectedFunctionalGroups === void 0 || selectedFunctionalGroups.forEach(function (functionalGroup) {
25952
- action.mergeWith(setExpandSGroup(molecule, functionalGroup.relatedSGroupId, {
25971
+ action.mergeWith(setExpandMonomerSGroup(molecule, functionalGroup.relatedSGroupId, {
25953
25972
  expanded: toExpand
25954
25973
  }));
25955
25974
  });
@@ -25967,16 +25986,7 @@ var useFunctionalGroupEoc = function useFunctionalGroupEoc() {
25967
25986
  return toExpand ? functionalGroup.isExpanded : !functionalGroup.isExpanded;
25968
25987
  }));
25969
25988
  }, []);
25970
- var disabled = useCallback(function (_ref3) {
25971
- var _props$functionalGrou2;
25972
- var props = _ref3.props;
25973
- var editor = getKetcherInstance().editor;
25974
- var molecule = editor.render.ctab.molecule;
25975
- return Boolean(props === null || props === void 0 || (_props$functionalGrou2 = props.functionalGroups) === null || _props$functionalGrou2 === void 0 ? void 0 : _props$functionalGrou2.every(function (functionalGroup) {
25976
- return functionalGroup === null || functionalGroup === void 0 ? void 0 : functionalGroup.relatedSGroup.isNotContractible(molecule);
25977
- }));
25978
- }, []);
25979
- return [handler, hidden, disabled];
25989
+ return [handler, hidden];
25980
25990
  };
25981
25991
 
25982
25992
  var useFunctionalGroupRemove = function useFunctionalGroupRemove() {
@@ -26004,16 +26014,12 @@ function ownKeys$M(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymb
26004
26014
  function _objectSpread$M(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$M(Object(t), !0).forEach(function (r) { _defineProperty$1(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$M(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
26005
26015
  var FunctionalGroupMenuItems = function FunctionalGroupMenuItems(props) {
26006
26016
  var _useFunctionalGroupEo = useFunctionalGroupEoc(),
26007
- _useFunctionalGroupEo2 = _slicedToArray$1(_useFunctionalGroupEo, 3),
26017
+ _useFunctionalGroupEo2 = _slicedToArray$1(_useFunctionalGroupEo, 2),
26008
26018
  handleExpandOrContract = _useFunctionalGroupEo2[0],
26009
- ExpandOrContractHidden = _useFunctionalGroupEo2[1],
26010
- ExpandOrContractDisabled = _useFunctionalGroupEo2[2];
26019
+ ExpandOrContractHidden = _useFunctionalGroupEo2[1];
26011
26020
  var handleRemove = useFunctionalGroupRemove();
26012
26021
  return jsxs(Fragment, {
26013
26022
  children: [jsx(Item, _objectSpread$M(_objectSpread$M({}, props), {}, {
26014
- disabled: function disabled(params) {
26015
- return ExpandOrContractDisabled(params);
26016
- },
26017
26023
  hidden: function hidden(params) {
26018
26024
  return ExpandOrContractHidden(params, true);
26019
26025
  },
@@ -26022,9 +26028,6 @@ var FunctionalGroupMenuItems = function FunctionalGroupMenuItems(props) {
26022
26028
  },
26023
26029
  children: "Expand Abbreviation"
26024
26030
  })), jsx(Item, _objectSpread$M(_objectSpread$M({}, props), {}, {
26025
- disabled: function disabled(params) {
26026
- return ExpandOrContractDisabled(params);
26027
- },
26028
26031
  hidden: function hidden(params) {
26029
26032
  return ExpandOrContractHidden(params, false);
26030
26033
  },
@@ -34964,8 +34967,8 @@ var KetcherBuilder = function () {
34964
34967
  cleanup = initApp(element, appRoot, staticResourcesUrl, {
34965
34968
  buttons: buttons || {},
34966
34969
  errorHandler: errorHandler || null,
34967
- version: "2.28.0-rc.3" ,
34968
- buildDate: "2024-12-11T14:41:49" ,
34970
+ version: "2.28.0" ,
34971
+ buildDate: "2025-02-17T19:11:53" ,
34969
34972
  buildNumber: '',
34970
34973
  customButtons: customButtons || []
34971
34974
  }, structService, resolve, togglerComponent);