Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Stereo flags are displayed despite enabling 'Ignore chiral flag' in MOL V2000 files #6161

Closed
Zhirnoff opened this issue Dec 16, 2024 · 3 comments · Fixed by #6179 or #6202
Closed

Stereo flags are displayed despite enabling 'Ignore chiral flag' in MOL V2000 files #6161

Zhirnoff opened this issue Dec 16, 2024 · 3 comments · Fixed by #6179 or #6202
Assignees
Labels
Priority: High Severity: High High level visibility to the user Stereochemistry Bucket: Stereochemistry related issues User`s Feedback

Comments

@Zhirnoff
Copy link
Collaborator

Zhirnoff commented Dec 16, 2024

Steps to Reproduce

  1. Go to the application settings and enable the "Ignore the chiral flag" option.
  2. Load file non-proprietary-structure.zip

Actual behavior
Despite "Ignore chiral flag" being enabled, the structure displays &1 annotations for stereocenters on the canvas.
2024-12-16_16h55_12

Expected behavior
The stereocenters (e.g., represented by &1 and AND label) should not be displayed when "Ignore chiral flag" is enabled.
2024-12-16_16h56_22

Desktop:

  • OS: Windows 11
  • Browser Chrome
  • Version 128.0.6613.120 (Official Build) (64-bit)

Ketcher version
[Version 2.28.0-rc.3]
Indigo version
[Version 1.27.0-rc.1]

Related ticket: #2161

#188701608

@Zhirnoff Zhirnoff added bug Priority: High User`s Feedback Stereochemistry Bucket: Stereochemistry related issues Severity: High High level visibility to the user labels Dec 16, 2024
@Zhirnoff Zhirnoff added this to the Ketcher 2.28.0-rc.4 milestone Dec 16, 2024
@Zhirnoff Zhirnoff changed the title Incorrect display of chiral centers (&1) when "Ignore chiral flag" is enabled in MOL V2000 format Stereo flags are displayed despite enabling 'Ignore chiral flag' in MOL V2000 files Dec 16, 2024
@AlexeyGirin
Copy link
Collaborator

Seems that Ketcher mol loader doesn't take into account that flag unlike Indigo mol loader

@rrodionov91 rrodionov91 self-assigned this Dec 17, 2024
rrodionov91 added a commit that referenced this issue Dec 19, 2024
rrodionov91 added a commit that referenced this issue Dec 23, 2024
…hiral flag' in MOL V2000 files"

This reverts commit 9d373b1.
rrodionov91 added a commit that referenced this issue Dec 23, 2024
… an SDF V3000 file

- added ignoreChiralFlag parameter to be used in mol v2000 deserialization during setMolecule and openning files methods
- removed ignoreChiralFlag parameter from serialization
rrodionov91 added a commit that referenced this issue Dec 23, 2024
…ag' in MOL V2000 files (#6179)

- added ignoreChiralFlag parameter to be used in mol v2000 deserialization during setMolecule and openning files methods
- removed ignoreChiralFlag parameter from serialization
rrodionov91 added a commit that referenced this issue Dec 23, 2024
…ag' in MOL V2000 files (#6179)

- added ignoreChiralFlag parameter to be used in mol v2000 deserialization during setMolecule and openning files methods
- removed ignoreChiralFlag parameter from serialization
rrodionov91 added a commit that referenced this issue Dec 23, 2024
…ag' in MOL V2000 files (#6202)

- added ignoreChiralFlag parameter to be used in mol v2000 deserialization during setMolecule and openning files methods
- removed ignoreChiralFlag parameter from serialization
YatsekTest pushed a commit that referenced this issue Dec 25, 2024
…ag' in MOL V2000 files (#6202)

- added ignoreChiralFlag parameter to be used in mol v2000 deserialization during setMolecule and openning files methods
- removed ignoreChiralFlag parameter from serialization
AlexeyGirin added a commit that referenced this issue Dec 25, 2024
* Added helper functions selectAromatizeTool() and selectDearomatizeTool(). Replaced explicit Aromatize and Dearomatize selections in one test with calls to the respective helper functions.

* Removed unnecessary commented lines.

* Replaced explicit Aromatize and Dearomatize selections in tests with calls to the respective helper functions.

* Unused imports removed

* Autotests: #6134 autotests introduce creating antisense chains (#6186)

* first draft

* Validate that selecting a valid backbone with the correct R1-R2 connections and right-clicking displays the "Create Antisense Strand" option (Requirement 1) and creation of antisense is possible

* Ensure that the "Create Antisense Strand" option appears but is disabled when the base connected via R3-R1 is not a sense base

* Check if any of the bases connected to the sugars via R3-R1 have more bonds (hydrogen or covalent), the "Create Antisense Strand" option appear, but disabled

* Check if multiple chains are selected and more than one satisfies the previous requirements(Requirement 1.2), the "Create Antisense Strand" option appear, multiple antisense chains are created

* Check that all non R1-R2 connections of backbone monomers (except R3-R1 for sugar and base!!!) are ignored

* 6. Check that every nucleotide (sugar and phosphate are part of the backbone and connected via R2(s)-R1(p), and the sugar is connected to a "sense base" via R3(s)-R1(b)) transform into a nucleotide on the antisense chain that contains ribose (R), phosphate (P), and the appropriate "antisense base"
7. Check that every nucleoside (not a nucleotide, sugar is connected through R2 to something that is not phosphate, or has a free R2, but is connected to a "sense base" through R3) transform into a nucleoside on the antisense chain that contains ribose (R) and the appropriate "antisense base"

* Check that all other monomers in the backbone that are not a part of the nucleotide or a nucleoside directly copied to the antisense strand

* Check that the antisense chain should be "flipped" in relation to the sense chain:If the left most sugar/amino acid of the sense chain has a terminal indicator of 5'/N, then the left most sugar/amino acid of the antisense chain should have a terminal indicator of 3'/C

* Screens update

* Screen update

* Screen update

* Check that option "Delete" deletes the selected monomers and all the bonds of those monomers and Undo restore all monomers and bonds

* 13. Validate that creating, deleting, and modifying the antisense chain supports the undo/redo functionality

* Validate that both sense and antisense strands can be exported correctly in supported file formats

* Data attribute changes

* Rename verifyFile to verifyFileExport

* Ensure that switching between (Flex, Snake, Sequence) modes does not break the alignment or hydrogen bonding between the sense and antisense strands

* Ensure that switching between macro and micro modes does not break the alignment or hydrogen bonding between the sense and antisense strands

* Verify that copying the sense and antisense strand and pasting it within the same canvas retains the correct orientation and complementary base pairing

* Last fix

* Last last fix

* view-only-mode.spec.ts updated

* view-only-mode.spec.ts updated2

* view-only-mode.spec.ts updated3

* antisense-chains.spec.ts updated

* last fix

* data-monomertype logic update

* #6022 Side chain attachment point shown in wrong place in Snake mode (#6183)

* #6027 - Support for single atom properties in macromolecules mode (#6176)

* #6161 - Stereo flags are displayed despite enabling 'Ignore chiral flag' in MOL V2000 files (#6202)

- added ignoreChiralFlag parameter to be used in mol v2000 deserialization during setMolecule and openning files methods
- removed ignoreChiralFlag parameter from serialization

* Autotests: #6036 - autotests tests for readsave name and reaction conditions fromto rdf metadata (#6144)

* - add tests;
- add expected snapshots;
- add test files;

* - add test;
- add expected snapshot;
- add test file;

* - update test files and snapshots

* - update version package-lock.json

* - add tests;
- add expected snapshots;
- add files

* - add tests;
- add expected snapshots;
- add files

* - add tests;
- add expected snapshots;
- add files

* - add tests;
- add expected snapshots;
- add files

* - code refactoring;
- update screenshots

* - add tests;
- add expected snapshots;
- add files

* - add tests;
- add expected snapshots;
- add files

* Rename verification function for clarity in cascade reactions tests

* - update test after fix bug

* Replaced explicit Aromatize and Dearomatize selections in tests with calls to the respective helper functions.

* Replaced explicit Aromatize and Dearomatize selections in tests with calls to the respective helper functions.

* Autotests: #6184 - autotests update snake layout logic taking into account hydrogen bonds (#6203)

* 1. Check if hydrogen bonds connect monomers inside one chain, those hydrogen bonds should be considered as side chain connections for layout purposes

* 18. Flipping checks

* 2. Creating sense/antisense connection for

* 3, 4, 5 cases

* 6. Check that backbones should be placed parallel to each other

* 7. Check that distance between all monomers should be minimum one bond length
8. Check that multiple backbones/chains can be placed in on a line if they are both connected via H-bonds to the same chain (but not to each other!!!)

* 9. Check if there is a circular hydrogen bond connection between three or more chains, those hydrogen bonds should be considered as side chain connection for layout purposes

* Last fixes

* Last fix 2

* 11. Sense and antisense chains should be treated as completely separate chains in sequence mode, without any hydrogen bonds connecting them
12. Check if hydrogen bonds connect monomers between chains (but not between bases), those hydrogen bonds should be considered as side chain connections and shown correct at sequence mode

* Last fix

* Autotests: #6205 - autotests mark modified amino acids on canvas in sequence mode (#6207)

* 1. Check that in sequence mode, nucleotides with modified sugars/bases and phosphates are marked in some way (as per mockups)
2. Check that in sequence mode, modified amino acids are not marked in any way

* 1. Check that every not modified amino acid, sugar, base and phosphate on canvas (flex and snake modes) are not marked as modified
2. Check that in snake mode all modifid monomers are marked

* Test comment

* Revert "Merge branch '6046-autotests-replace-aromatizedearomatize-operations-with-valid-helper-functions' into 6210-autotests-test-branch"

This reverts commit 22de8ad, reversing
changes made to c1ef101.

* Added helper-function to select Aromatize-Dearomataze tools.

* Replacing the call to the Aromatize-Dearomatized tools with the corresponding helper functions.

---------

Co-authored-by: Alexey Girin <[email protected]>
Co-authored-by: Umur Gokalp <[email protected]>
Co-authored-by: Roman Rodionov <[email protected]>
Co-authored-by: Mikhail Zhirnov <[email protected]>
knadonenko pushed a commit that referenced this issue Dec 25, 2024
commit 443f19c
Author: Roman Rodionov <[email protected]>
Date:   Mon Dec 23 17:19:57 2024 +0100

    #6161 - Stereo flags are displayed despite enabling 'Ignore chiral flag' in MOL V2000 files (#6202)

    - added ignoreChiralFlag parameter to be used in mol v2000 deserialization during setMolecule and openning files methods
    - removed ignoreChiralFlag parameter from serialization

commit e64de6b
Author: Roman Rodionov <[email protected]>
Date:   Mon Dec 23 16:44:43 2024 +0100

    #6027 - Support for single atom properties in macromolecules mode (#6176)

commit 0fb0c60
Author: Umur Gokalp <[email protected]>
Date:   Mon Dec 23 11:30:52 2024 +0300

    #6022 Side chain attachment point shown in wrong place in Snake mode (#6183)

commit f8e15b9
Author: Alexey Girin <[email protected]>
Date:   Fri Dec 20 19:03:03 2024 +0300

    Autotests: #6134 autotests introduce creating antisense chains (#6186)

    * first draft

    * Validate that selecting a valid backbone with the correct R1-R2 connections and right-clicking displays the "Create Antisense Strand" option (Requirement 1) and creation of antisense is possible

    * Ensure that the "Create Antisense Strand" option appears but is disabled when the base connected via R3-R1 is not a sense base

    * Check if any of the bases connected to the sugars via R3-R1 have more bonds (hydrogen or covalent), the "Create Antisense Strand" option appear, but disabled

    * Check if multiple chains are selected and more than one satisfies the previous requirements(Requirement 1.2), the "Create Antisense Strand" option appear, multiple antisense chains are created

    * Check that all non R1-R2 connections of backbone monomers (except R3-R1 for sugar and base!!!) are ignored

    * 6. Check that every nucleotide (sugar and phosphate are part of the backbone and connected via R2(s)-R1(p), and the sugar is connected to a "sense base" via R3(s)-R1(b)) transform into a nucleotide on the antisense chain that contains ribose (R), phosphate (P), and the appropriate "antisense base"
    7. Check that every nucleoside (not a nucleotide, sugar is connected through R2 to something that is not phosphate, or has a free R2, but is connected to a "sense base" through R3) transform into a nucleoside on the antisense chain that contains ribose (R) and the appropriate "antisense base"

    * Check that all other monomers in the backbone that are not a part of the nucleotide or a nucleoside directly copied to the antisense strand

    * Check that the antisense chain should be "flipped" in relation to the sense chain:If the left most sugar/amino acid of the sense chain has a terminal indicator of 5'/N, then the left most sugar/amino acid of the antisense chain should have a terminal indicator of 3'/C

    * Screens update

    * Screen update

    * Screen update

    * Check that option "Delete" deletes the selected monomers and all the bonds of those monomers and Undo restore all monomers and bonds

    * 13. Validate that creating, deleting, and modifying the antisense chain supports the undo/redo functionality

    * Validate that both sense and antisense strands can be exported correctly in supported file formats

    * Data attribute changes

    * Rename verifyFile to verifyFileExport

    * Ensure that switching between (Flex, Snake, Sequence) modes does not break the alignment or hydrogen bonding between the sense and antisense strands

    * Ensure that switching between macro and micro modes does not break the alignment or hydrogen bonding between the sense and antisense strands

    * Verify that copying the sense and antisense strand and pasting it within the same canvas retains the correct orientation and complementary base pairing

    * Last fix

    * Last last fix

    * view-only-mode.spec.ts updated

    * view-only-mode.spec.ts updated2

    * view-only-mode.spec.ts updated3

    * antisense-chains.spec.ts updated

    * last fix

    * data-monomertype logic update

commit ca780ce
Author: Mikhail Zhirnov <[email protected]>
Date:   Fri Dec 20 13:25:51 2024 +0300

    Autotests: #6143 - tests for add copy to clipboard to the export window (#6151)

    * - add tests;
    - add expected snapshots;
    - add function 'copyToClipboardByIcon'

    * - update snapshot

commit aa7b97e
Author: Anrei Menshikov <[email protected]>
Date:   Fri Dec 20 13:36:13 2024 +0400

    #4723 - When pressing Enter, a user can create new sequences in the “Modify RNA Builder” mode (#6178)

    * 4723-when-pressing-enter-a-user-can-create-new-sequences-in-the-modify-rna-builder-mode

    * clean code

    ---------

    Co-authored-by: Andrey Menshikov <[email protected]>

commit e1275a1
Author: Maksim Labovich <[email protected]>
Date:   Fri Dec 20 11:08:14 2024 +0300

    #6026 - Bond length is different for monomers loaded from HELM and from the library (#6152)

    * #6026 - Bond length is different for monomers loaded from HELM and from the library

    - updated RNA_MONOMER_DISTANCE constant value

    * 6026 - changed fix approach

    - renamed constant related to bond length
    - reused it instead of rna_monomer_distance constant
    - removed debugger

    * 6026 - resolved build issue caused by merge

    * 6026 - updated snapshots

    ---------

    Co-authored-by: Natalia_Loginova1 <[email protected]>

commit 7343fdd
Author: Ivan Maslov <[email protected]>
Date:   Thu Dec 19 11:51:45 2024 +0300

    Autotests: #5943 Multi-Tailed Arrows and Indigo functions (#5950)

    * - Refactored verifyFile in multi-tailed-arrow-tool.spec.ts;
    - 5943: Added test/test files for Aromatize/Dearomatize case and MTA;

    * - Added /* eslint-disable @typescript-eslint/no-explicit-any */ to fix issue with unexpected any in setAndCheckQuerySpecificProperties

    * package-lock changes from dev and update of ketcher-autotests/tests/test-data/KET/ket-cascade-single-reactions-3-1-2-1-1-2x2-aromatize-expected.ket

    * Autotests 5943- added new tests, screenshots, files

    * Autotests 5943: added tests, files and screenshots for layout

    * Autotests 5943: Added tests, files and screenshots for cip, check and calculated actions

    * Autotests 5843: Added tests, files and screenshots for layout, clean up and hydrogen cases

    * 5943: Comments after code review - updated names and description of tests, updated screenshots
knadonenko pushed a commit that referenced this issue Dec 25, 2024
commit c2eee5a
Author: Alexey Girin <[email protected]>
Date:   Wed Dec 25 15:07:29 2024 +0300

    Autotests: #6209 - Stabilization fixes (#6212)

    * Stabilization fixes

    * Last fix

    * Last last fix

commit d90e35a
Author: Yaroslav Kovalsky <[email protected]>
Date:   Wed Dec 25 15:02:49 2024 +0400

    Test comment (#6211)

    * Added helper functions selectAromatizeTool() and selectDearomatizeTool(). Replaced explicit Aromatize and Dearomatize selections in one test with calls to the respective helper functions.

    * Removed unnecessary commented lines.

    * Replaced explicit Aromatize and Dearomatize selections in tests with calls to the respective helper functions.

    * Unused imports removed

    * Autotests: #6134 autotests introduce creating antisense chains (#6186)

    * first draft

    * Validate that selecting a valid backbone with the correct R1-R2 connections and right-clicking displays the "Create Antisense Strand" option (Requirement 1) and creation of antisense is possible

    * Ensure that the "Create Antisense Strand" option appears but is disabled when the base connected via R3-R1 is not a sense base

    * Check if any of the bases connected to the sugars via R3-R1 have more bonds (hydrogen or covalent), the "Create Antisense Strand" option appear, but disabled

    * Check if multiple chains are selected and more than one satisfies the previous requirements(Requirement 1.2), the "Create Antisense Strand" option appear, multiple antisense chains are created

    * Check that all non R1-R2 connections of backbone monomers (except R3-R1 for sugar and base!!!) are ignored

    * 6. Check that every nucleotide (sugar and phosphate are part of the backbone and connected via R2(s)-R1(p), and the sugar is connected to a "sense base" via R3(s)-R1(b)) transform into a nucleotide on the antisense chain that contains ribose (R), phosphate (P), and the appropriate "antisense base"
    7. Check that every nucleoside (not a nucleotide, sugar is connected through R2 to something that is not phosphate, or has a free R2, but is connected to a "sense base" through R3) transform into a nucleoside on the antisense chain that contains ribose (R) and the appropriate "antisense base"

    * Check that all other monomers in the backbone that are not a part of the nucleotide or a nucleoside directly copied to the antisense strand

    * Check that the antisense chain should be "flipped" in relation to the sense chain:If the left most sugar/amino acid of the sense chain has a terminal indicator of 5'/N, then the left most sugar/amino acid of the antisense chain should have a terminal indicator of 3'/C

    * Screens update

    * Screen update

    * Screen update

    * Check that option "Delete" deletes the selected monomers and all the bonds of those monomers and Undo restore all monomers and bonds

    * 13. Validate that creating, deleting, and modifying the antisense chain supports the undo/redo functionality

    * Validate that both sense and antisense strands can be exported correctly in supported file formats

    * Data attribute changes

    * Rename verifyFile to verifyFileExport

    * Ensure that switching between (Flex, Snake, Sequence) modes does not break the alignment or hydrogen bonding between the sense and antisense strands

    * Ensure that switching between macro and micro modes does not break the alignment or hydrogen bonding between the sense and antisense strands

    * Verify that copying the sense and antisense strand and pasting it within the same canvas retains the correct orientation and complementary base pairing

    * Last fix

    * Last last fix

    * view-only-mode.spec.ts updated

    * view-only-mode.spec.ts updated2

    * view-only-mode.spec.ts updated3

    * antisense-chains.spec.ts updated

    * last fix

    * data-monomertype logic update

    * #6022 Side chain attachment point shown in wrong place in Snake mode (#6183)

    * #6027 - Support for single atom properties in macromolecules mode (#6176)

    * #6161 - Stereo flags are displayed despite enabling 'Ignore chiral flag' in MOL V2000 files (#6202)

    - added ignoreChiralFlag parameter to be used in mol v2000 deserialization during setMolecule and openning files methods
    - removed ignoreChiralFlag parameter from serialization

    * Autotests: #6036 - autotests tests for readsave name and reaction conditions fromto rdf metadata (#6144)

    * - add tests;
    - add expected snapshots;
    - add test files;

    * - add test;
    - add expected snapshot;
    - add test file;

    * - update test files and snapshots

    * - update version package-lock.json

    * - add tests;
    - add expected snapshots;
    - add files

    * - add tests;
    - add expected snapshots;
    - add files

    * - add tests;
    - add expected snapshots;
    - add files

    * - add tests;
    - add expected snapshots;
    - add files

    * - code refactoring;
    - update screenshots

    * - add tests;
    - add expected snapshots;
    - add files

    * - add tests;
    - add expected snapshots;
    - add files

    * Rename verification function for clarity in cascade reactions tests

    * - update test after fix bug

    * Replaced explicit Aromatize and Dearomatize selections in tests with calls to the respective helper functions.

    * Replaced explicit Aromatize and Dearomatize selections in tests with calls to the respective helper functions.

    * Autotests: #6184 - autotests update snake layout logic taking into account hydrogen bonds (#6203)

    * 1. Check if hydrogen bonds connect monomers inside one chain, those hydrogen bonds should be considered as side chain connections for layout purposes

    * 18. Flipping checks

    * 2. Creating sense/antisense connection for

    * 3, 4, 5 cases

    * 6. Check that backbones should be placed parallel to each other

    * 7. Check that distance between all monomers should be minimum one bond length
    8. Check that multiple backbones/chains can be placed in on a line if they are both connected via H-bonds to the same chain (but not to each other!!!)

    * 9. Check if there is a circular hydrogen bond connection between three or more chains, those hydrogen bonds should be considered as side chain connection for layout purposes

    * Last fixes

    * Last fix 2

    * 11. Sense and antisense chains should be treated as completely separate chains in sequence mode, without any hydrogen bonds connecting them
    12. Check if hydrogen bonds connect monomers between chains (but not between bases), those hydrogen bonds should be considered as side chain connections and shown correct at sequence mode

    * Last fix

    * Autotests: #6205 - autotests mark modified amino acids on canvas in sequence mode (#6207)

    * 1. Check that in sequence mode, nucleotides with modified sugars/bases and phosphates are marked in some way (as per mockups)
    2. Check that in sequence mode, modified amino acids are not marked in any way

    * 1. Check that every not modified amino acid, sugar, base and phosphate on canvas (flex and snake modes) are not marked as modified
    2. Check that in snake mode all modifid monomers are marked

    * Test comment

    * Revert "Merge branch '6046-autotests-replace-aromatizedearomatize-operations-with-valid-helper-functions' into 6210-autotests-test-branch"

    This reverts commit 22de8ad, reversing
    changes made to c1ef101.

    * Added helper-function to select Aromatize-Dearomataze tools.

    * Replacing the call to the Aromatize-Dearomatized tools with the corresponding helper functions.

    ---------

    Co-authored-by: Alexey Girin <[email protected]>
    Co-authored-by: Umur Gokalp <[email protected]>
    Co-authored-by: Roman Rodionov <[email protected]>
    Co-authored-by: Mikhail Zhirnov <[email protected]>

commit 8868780
Author: Alexey Girin <[email protected]>
Date:   Wed Dec 25 10:34:56 2024 +0300

    Autotests: #6205 - autotests mark modified amino acids on canvas in sequence mode (#6207)

    * 1. Check that in sequence mode, nucleotides with modified sugars/bases and phosphates are marked in some way (as per mockups)
    2. Check that in sequence mode, modified amino acids are not marked in any way

    * 1. Check that every not modified amino acid, sugar, base and phosphate on canvas (flex and snake modes) are not marked as modified
    2. Check that in snake mode all modifid monomers are marked

commit f18e26b
Author: Alexey Girin <[email protected]>
Date:   Tue Dec 24 14:47:04 2024 +0300

    Autotests: #6184 - autotests update snake layout logic taking into account hydrogen bonds (#6203)

    * 1. Check if hydrogen bonds connect monomers inside one chain, those hydrogen bonds should be considered as side chain connections for layout purposes

    * 18. Flipping checks

    * 2. Creating sense/antisense connection for

    * 3, 4, 5 cases

    * 6. Check that backbones should be placed parallel to each other

    * 7. Check that distance between all monomers should be minimum one bond length
    8. Check that multiple backbones/chains can be placed in on a line if they are both connected via H-bonds to the same chain (but not to each other!!!)

    * 9. Check if there is a circular hydrogen bond connection between three or more chains, those hydrogen bonds should be considered as side chain connection for layout purposes

    * Last fixes

    * Last fix 2

    * 11. Sense and antisense chains should be treated as completely separate chains in sequence mode, without any hydrogen bonds connecting them
    12. Check if hydrogen bonds connect monomers between chains (but not between bases), those hydrogen bonds should be considered as side chain connections and shown correct at sequence mode

    * Last fix

commit ed8ab09
Author: Mikhail Zhirnov <[email protected]>
Date:   Tue Dec 24 12:47:59 2024 +0300

    Autotests: #6036 - autotests tests for readsave name and reaction conditions fromto rdf metadata (#6144)

    * - add tests;
    - add expected snapshots;
    - add test files;

    * - add test;
    - add expected snapshot;
    - add test file;

    * - update test files and snapshots

    * - update version package-lock.json

    * - add tests;
    - add expected snapshots;
    - add files

    * - add tests;
    - add expected snapshots;
    - add files

    * - add tests;
    - add expected snapshots;
    - add files

    * - add tests;
    - add expected snapshots;
    - add files

    * - code refactoring;
    - update screenshots

    * - add tests;
    - add expected snapshots;
    - add files

    * - add tests;
    - add expected snapshots;
    - add files

    * Rename verification function for clarity in cascade reactions tests

    * - update test after fix bug

commit 443f19c
Author: Roman Rodionov <[email protected]>
Date:   Mon Dec 23 17:19:57 2024 +0100

    #6161 - Stereo flags are displayed despite enabling 'Ignore chiral flag' in MOL V2000 files (#6202)

    - added ignoreChiralFlag parameter to be used in mol v2000 deserialization during setMolecule and openning files methods
    - removed ignoreChiralFlag parameter from serialization

commit e64de6b
Author: Roman Rodionov <[email protected]>
Date:   Mon Dec 23 16:44:43 2024 +0100

    #6027 - Support for single atom properties in macromolecules mode (#6176)

commit 0fb0c60
Author: Umur Gokalp <[email protected]>
Date:   Mon Dec 23 11:30:52 2024 +0300

    #6022 Side chain attachment point shown in wrong place in Snake mode (#6183)

commit f8e15b9
Author: Alexey Girin <[email protected]>
Date:   Fri Dec 20 19:03:03 2024 +0300

    Autotests: #6134 autotests introduce creating antisense chains (#6186)

    * first draft

    * Validate that selecting a valid backbone with the correct R1-R2 connections and right-clicking displays the "Create Antisense Strand" option (Requirement 1) and creation of antisense is possible

    * Ensure that the "Create Antisense Strand" option appears but is disabled when the base connected via R3-R1 is not a sense base

    * Check if any of the bases connected to the sugars via R3-R1 have more bonds (hydrogen or covalent), the "Create Antisense Strand" option appear, but disabled

    * Check if multiple chains are selected and more than one satisfies the previous requirements(Requirement 1.2), the "Create Antisense Strand" option appear, multiple antisense chains are created

    * Check that all non R1-R2 connections of backbone monomers (except R3-R1 for sugar and base!!!) are ignored

    * 6. Check that every nucleotide (sugar and phosphate are part of the backbone and connected via R2(s)-R1(p), and the sugar is connected to a "sense base" via R3(s)-R1(b)) transform into a nucleotide on the antisense chain that contains ribose (R), phosphate (P), and the appropriate "antisense base"
    7. Check that every nucleoside (not a nucleotide, sugar is connected through R2 to something that is not phosphate, or has a free R2, but is connected to a "sense base" through R3) transform into a nucleoside on the antisense chain that contains ribose (R) and the appropriate "antisense base"

    * Check that all other monomers in the backbone that are not a part of the nucleotide or a nucleoside directly copied to the antisense strand

    * Check that the antisense chain should be "flipped" in relation to the sense chain:If the left most sugar/amino acid of the sense chain has a terminal indicator of 5'/N, then the left most sugar/amino acid of the antisense chain should have a terminal indicator of 3'/C

    * Screens update

    * Screen update

    * Screen update

    * Check that option "Delete" deletes the selected monomers and all the bonds of those monomers and Undo restore all monomers and bonds

    * 13. Validate that creating, deleting, and modifying the antisense chain supports the undo/redo functionality

    * Validate that both sense and antisense strands can be exported correctly in supported file formats

    * Data attribute changes

    * Rename verifyFile to verifyFileExport

    * Ensure that switching between (Flex, Snake, Sequence) modes does not break the alignment or hydrogen bonding between the sense and antisense strands

    * Ensure that switching between macro and micro modes does not break the alignment or hydrogen bonding between the sense and antisense strands

    * Verify that copying the sense and antisense strand and pasting it within the same canvas retains the correct orientation and complementary base pairing

    * Last fix

    * Last last fix

    * view-only-mode.spec.ts updated

    * view-only-mode.spec.ts updated2

    * view-only-mode.spec.ts updated3

    * antisense-chains.spec.ts updated

    * last fix

    * data-monomertype logic update

commit ca780ce
Author: Mikhail Zhirnov <[email protected]>
Date:   Fri Dec 20 13:25:51 2024 +0300

    Autotests: #6143 - tests for add copy to clipboard to the export window (#6151)

    * - add tests;
    - add expected snapshots;
    - add function 'copyToClipboardByIcon'

    * - update snapshot

commit aa7b97e
Author: Anrei Menshikov <[email protected]>
Date:   Fri Dec 20 13:36:13 2024 +0400

    #4723 - When pressing Enter, a user can create new sequences in the “Modify RNA Builder” mode (#6178)

    * 4723-when-pressing-enter-a-user-can-create-new-sequences-in-the-modify-rna-builder-mode

    * clean code

    ---------

    Co-authored-by: Andrey Menshikov <[email protected]>

commit e1275a1
Author: Maksim Labovich <[email protected]>
Date:   Fri Dec 20 11:08:14 2024 +0300

    #6026 - Bond length is different for monomers loaded from HELM and from the library (#6152)

    * #6026 - Bond length is different for monomers loaded from HELM and from the library

    - updated RNA_MONOMER_DISTANCE constant value

    * 6026 - changed fix approach

    - renamed constant related to bond length
    - reused it instead of rna_monomer_distance constant
    - removed debugger

    * 6026 - resolved build issue caused by merge

    * 6026 - updated snapshots

    ---------

    Co-authored-by: Natalia_Loginova1 <[email protected]>

commit 7343fdd
Author: Ivan Maslov <[email protected]>
Date:   Thu Dec 19 11:51:45 2024 +0300

    Autotests: #5943 Multi-Tailed Arrows and Indigo functions (#5950)

    * - Refactored verifyFile in multi-tailed-arrow-tool.spec.ts;
    - 5943: Added test/test files for Aromatize/Dearomatize case and MTA;

    * - Added /* eslint-disable @typescript-eslint/no-explicit-any */ to fix issue with unexpected any in setAndCheckQuerySpecificProperties

    * package-lock changes from dev and update of ketcher-autotests/tests/test-data/KET/ket-cascade-single-reactions-3-1-2-1-1-2x2-aromatize-expected.ket

    * Autotests 5943- added new tests, screenshots, files

    * Autotests 5943: added tests, files and screenshots for layout

    * Autotests 5943: Added tests, files and screenshots for cip, check and calculated actions

    * Autotests 5843: Added tests, files and screenshots for layout, clean up and hydrogen cases

    * 5943: Comments after code review - updated names and description of tests, updated screenshots
AlexeyGirin pushed a commit that referenced this issue Dec 25, 2024
…er functions (#6214)

* new helper function

* Squashed commit of the following:

commit 443f19c
Author: Roman Rodionov <[email protected]>
Date:   Mon Dec 23 17:19:57 2024 +0100

    #6161 - Stereo flags are displayed despite enabling 'Ignore chiral flag' in MOL V2000 files (#6202)

    - added ignoreChiralFlag parameter to be used in mol v2000 deserialization during setMolecule and openning files methods
    - removed ignoreChiralFlag parameter from serialization

commit e64de6b
Author: Roman Rodionov <[email protected]>
Date:   Mon Dec 23 16:44:43 2024 +0100

    #6027 - Support for single atom properties in macromolecules mode (#6176)

commit 0fb0c60
Author: Umur Gokalp <[email protected]>
Date:   Mon Dec 23 11:30:52 2024 +0300

    #6022 Side chain attachment point shown in wrong place in Snake mode (#6183)

commit f8e15b9
Author: Alexey Girin <[email protected]>
Date:   Fri Dec 20 19:03:03 2024 +0300

    Autotests: #6134 autotests introduce creating antisense chains (#6186)

    * first draft

    * Validate that selecting a valid backbone with the correct R1-R2 connections and right-clicking displays the "Create Antisense Strand" option (Requirement 1) and creation of antisense is possible

    * Ensure that the "Create Antisense Strand" option appears but is disabled when the base connected via R3-R1 is not a sense base

    * Check if any of the bases connected to the sugars via R3-R1 have more bonds (hydrogen or covalent), the "Create Antisense Strand" option appear, but disabled

    * Check if multiple chains are selected and more than one satisfies the previous requirements(Requirement 1.2), the "Create Antisense Strand" option appear, multiple antisense chains are created

    * Check that all non R1-R2 connections of backbone monomers (except R3-R1 for sugar and base!!!) are ignored

    * 6. Check that every nucleotide (sugar and phosphate are part of the backbone and connected via R2(s)-R1(p), and the sugar is connected to a "sense base" via R3(s)-R1(b)) transform into a nucleotide on the antisense chain that contains ribose (R), phosphate (P), and the appropriate "antisense base"
    7. Check that every nucleoside (not a nucleotide, sugar is connected through R2 to something that is not phosphate, or has a free R2, but is connected to a "sense base" through R3) transform into a nucleoside on the antisense chain that contains ribose (R) and the appropriate "antisense base"

    * Check that all other monomers in the backbone that are not a part of the nucleotide or a nucleoside directly copied to the antisense strand

    * Check that the antisense chain should be "flipped" in relation to the sense chain:If the left most sugar/amino acid of the sense chain has a terminal indicator of 5'/N, then the left most sugar/amino acid of the antisense chain should have a terminal indicator of 3'/C

    * Screens update

    * Screen update

    * Screen update

    * Check that option "Delete" deletes the selected monomers and all the bonds of those monomers and Undo restore all monomers and bonds

    * 13. Validate that creating, deleting, and modifying the antisense chain supports the undo/redo functionality

    * Validate that both sense and antisense strands can be exported correctly in supported file formats

    * Data attribute changes

    * Rename verifyFile to verifyFileExport

    * Ensure that switching between (Flex, Snake, Sequence) modes does not break the alignment or hydrogen bonding between the sense and antisense strands

    * Ensure that switching between macro and micro modes does not break the alignment or hydrogen bonding between the sense and antisense strands

    * Verify that copying the sense and antisense strand and pasting it within the same canvas retains the correct orientation and complementary base pairing

    * Last fix

    * Last last fix

    * view-only-mode.spec.ts updated

    * view-only-mode.spec.ts updated2

    * view-only-mode.spec.ts updated3

    * antisense-chains.spec.ts updated

    * last fix

    * data-monomertype logic update

commit ca780ce
Author: Mikhail Zhirnov <[email protected]>
Date:   Fri Dec 20 13:25:51 2024 +0300

    Autotests: #6143 - tests for add copy to clipboard to the export window (#6151)

    * - add tests;
    - add expected snapshots;
    - add function 'copyToClipboardByIcon'

    * - update snapshot

commit aa7b97e
Author: Anrei Menshikov <[email protected]>
Date:   Fri Dec 20 13:36:13 2024 +0400

    #4723 - When pressing Enter, a user can create new sequences in the “Modify RNA Builder” mode (#6178)

    * 4723-when-pressing-enter-a-user-can-create-new-sequences-in-the-modify-rna-builder-mode

    * clean code

    ---------

    Co-authored-by: Andrey Menshikov <[email protected]>

commit e1275a1
Author: Maksim Labovich <[email protected]>
Date:   Fri Dec 20 11:08:14 2024 +0300

    #6026 - Bond length is different for monomers loaded from HELM and from the library (#6152)

    * #6026 - Bond length is different for monomers loaded from HELM and from the library

    - updated RNA_MONOMER_DISTANCE constant value

    * 6026 - changed fix approach

    - renamed constant related to bond length
    - reused it instead of rna_monomer_distance constant
    - removed debugger

    * 6026 - resolved build issue caused by merge

    * 6026 - updated snapshots

    ---------

    Co-authored-by: Natalia_Loginova1 <[email protected]>

commit 7343fdd
Author: Ivan Maslov <[email protected]>
Date:   Thu Dec 19 11:51:45 2024 +0300

    Autotests: #5943 Multi-Tailed Arrows and Indigo functions (#5950)

    * - Refactored verifyFile in multi-tailed-arrow-tool.spec.ts;
    - 5943: Added test/test files for Aromatize/Dearomatize case and MTA;

    * - Added /* eslint-disable @typescript-eslint/no-explicit-any */ to fix issue with unexpected any in setAndCheckQuerySpecificProperties

    * package-lock changes from dev and update of ketcher-autotests/tests/test-data/KET/ket-cascade-single-reactions-3-1-2-1-1-2x2-aromatize-expected.ket

    * Autotests 5943- added new tests, screenshots, files

    * Autotests 5943: added tests, files and screenshots for layout

    * Autotests 5943: Added tests, files and screenshots for cip, check and calculated actions

    * Autotests 5843: Added tests, files and screenshots for layout, clean up and hydrogen cases

    * 5943: Comments after code review - updated names and description of tests, updated screenshots

* new function for removing hydrogens, refactoring

* removed unused imports

* Squashed commit of the following:

commit c2eee5a
Author: Alexey Girin <[email protected]>
Date:   Wed Dec 25 15:07:29 2024 +0300

    Autotests: #6209 - Stabilization fixes (#6212)

    * Stabilization fixes

    * Last fix

    * Last last fix

commit d90e35a
Author: Yaroslav Kovalsky <[email protected]>
Date:   Wed Dec 25 15:02:49 2024 +0400

    Test comment (#6211)

    * Added helper functions selectAromatizeTool() and selectDearomatizeTool(). Replaced explicit Aromatize and Dearomatize selections in one test with calls to the respective helper functions.

    * Removed unnecessary commented lines.

    * Replaced explicit Aromatize and Dearomatize selections in tests with calls to the respective helper functions.

    * Unused imports removed

    * Autotests: #6134 autotests introduce creating antisense chains (#6186)

    * first draft

    * Validate that selecting a valid backbone with the correct R1-R2 connections and right-clicking displays the "Create Antisense Strand" option (Requirement 1) and creation of antisense is possible

    * Ensure that the "Create Antisense Strand" option appears but is disabled when the base connected via R3-R1 is not a sense base

    * Check if any of the bases connected to the sugars via R3-R1 have more bonds (hydrogen or covalent), the "Create Antisense Strand" option appear, but disabled

    * Check if multiple chains are selected and more than one satisfies the previous requirements(Requirement 1.2), the "Create Antisense Strand" option appear, multiple antisense chains are created

    * Check that all non R1-R2 connections of backbone monomers (except R3-R1 for sugar and base!!!) are ignored

    * 6. Check that every nucleotide (sugar and phosphate are part of the backbone and connected via R2(s)-R1(p), and the sugar is connected to a "sense base" via R3(s)-R1(b)) transform into a nucleotide on the antisense chain that contains ribose (R), phosphate (P), and the appropriate "antisense base"
    7. Check that every nucleoside (not a nucleotide, sugar is connected through R2 to something that is not phosphate, or has a free R2, but is connected to a "sense base" through R3) transform into a nucleoside on the antisense chain that contains ribose (R) and the appropriate "antisense base"

    * Check that all other monomers in the backbone that are not a part of the nucleotide or a nucleoside directly copied to the antisense strand

    * Check that the antisense chain should be "flipped" in relation to the sense chain:If the left most sugar/amino acid of the sense chain has a terminal indicator of 5'/N, then the left most sugar/amino acid of the antisense chain should have a terminal indicator of 3'/C

    * Screens update

    * Screen update

    * Screen update

    * Check that option "Delete" deletes the selected monomers and all the bonds of those monomers and Undo restore all monomers and bonds

    * 13. Validate that creating, deleting, and modifying the antisense chain supports the undo/redo functionality

    * Validate that both sense and antisense strands can be exported correctly in supported file formats

    * Data attribute changes

    * Rename verifyFile to verifyFileExport

    * Ensure that switching between (Flex, Snake, Sequence) modes does not break the alignment or hydrogen bonding between the sense and antisense strands

    * Ensure that switching between macro and micro modes does not break the alignment or hydrogen bonding between the sense and antisense strands

    * Verify that copying the sense and antisense strand and pasting it within the same canvas retains the correct orientation and complementary base pairing

    * Last fix

    * Last last fix

    * view-only-mode.spec.ts updated

    * view-only-mode.spec.ts updated2

    * view-only-mode.spec.ts updated3

    * antisense-chains.spec.ts updated

    * last fix

    * data-monomertype logic update

    * #6022 Side chain attachment point shown in wrong place in Snake mode (#6183)

    * #6027 - Support for single atom properties in macromolecules mode (#6176)

    * #6161 - Stereo flags are displayed despite enabling 'Ignore chiral flag' in MOL V2000 files (#6202)

    - added ignoreChiralFlag parameter to be used in mol v2000 deserialization during setMolecule and openning files methods
    - removed ignoreChiralFlag parameter from serialization

    * Autotests: #6036 - autotests tests for readsave name and reaction conditions fromto rdf metadata (#6144)

    * - add tests;
    - add expected snapshots;
    - add test files;

    * - add test;
    - add expected snapshot;
    - add test file;

    * - update test files and snapshots

    * - update version package-lock.json

    * - add tests;
    - add expected snapshots;
    - add files

    * - add tests;
    - add expected snapshots;
    - add files

    * - add tests;
    - add expected snapshots;
    - add files

    * - add tests;
    - add expected snapshots;
    - add files

    * - code refactoring;
    - update screenshots

    * - add tests;
    - add expected snapshots;
    - add files

    * - add tests;
    - add expected snapshots;
    - add files

    * Rename verification function for clarity in cascade reactions tests

    * - update test after fix bug

    * Replaced explicit Aromatize and Dearomatize selections in tests with calls to the respective helper functions.

    * Replaced explicit Aromatize and Dearomatize selections in tests with calls to the respective helper functions.

    * Autotests: #6184 - autotests update snake layout logic taking into account hydrogen bonds (#6203)

    * 1. Check if hydrogen bonds connect monomers inside one chain, those hydrogen bonds should be considered as side chain connections for layout purposes

    * 18. Flipping checks

    * 2. Creating sense/antisense connection for

    * 3, 4, 5 cases

    * 6. Check that backbones should be placed parallel to each other

    * 7. Check that distance between all monomers should be minimum one bond length
    8. Check that multiple backbones/chains can be placed in on a line if they are both connected via H-bonds to the same chain (but not to each other!!!)

    * 9. Check if there is a circular hydrogen bond connection between three or more chains, those hydrogen bonds should be considered as side chain connection for layout purposes

    * Last fixes

    * Last fix 2

    * 11. Sense and antisense chains should be treated as completely separate chains in sequence mode, without any hydrogen bonds connecting them
    12. Check if hydrogen bonds connect monomers between chains (but not between bases), those hydrogen bonds should be considered as side chain connections and shown correct at sequence mode

    * Last fix

    * Autotests: #6205 - autotests mark modified amino acids on canvas in sequence mode (#6207)

    * 1. Check that in sequence mode, nucleotides with modified sugars/bases and phosphates are marked in some way (as per mockups)
    2. Check that in sequence mode, modified amino acids are not marked in any way

    * 1. Check that every not modified amino acid, sugar, base and phosphate on canvas (flex and snake modes) are not marked as modified
    2. Check that in snake mode all modifid monomers are marked

    * Test comment

    * Revert "Merge branch '6046-autotests-replace-aromatizedearomatize-operations-with-valid-helper-functions' into 6210-autotests-test-branch"

    This reverts commit 22de8ad, reversing
    changes made to c1ef101.

    * Added helper-function to select Aromatize-Dearomataze tools.

    * Replacing the call to the Aromatize-Dearomatized tools with the corresponding helper functions.

    ---------

    Co-authored-by: Alexey Girin <[email protected]>
    Co-authored-by: Umur Gokalp <[email protected]>
    Co-authored-by: Roman Rodionov <[email protected]>
    Co-authored-by: Mikhail Zhirnov <[email protected]>

commit 8868780
Author: Alexey Girin <[email protected]>
Date:   Wed Dec 25 10:34:56 2024 +0300

    Autotests: #6205 - autotests mark modified amino acids on canvas in sequence mode (#6207)

    * 1. Check that in sequence mode, nucleotides with modified sugars/bases and phosphates are marked in some way (as per mockups)
    2. Check that in sequence mode, modified amino acids are not marked in any way

    * 1. Check that every not modified amino acid, sugar, base and phosphate on canvas (flex and snake modes) are not marked as modified
    2. Check that in snake mode all modifid monomers are marked

commit f18e26b
Author: Alexey Girin <[email protected]>
Date:   Tue Dec 24 14:47:04 2024 +0300

    Autotests: #6184 - autotests update snake layout logic taking into account hydrogen bonds (#6203)

    * 1. Check if hydrogen bonds connect monomers inside one chain, those hydrogen bonds should be considered as side chain connections for layout purposes

    * 18. Flipping checks

    * 2. Creating sense/antisense connection for

    * 3, 4, 5 cases

    * 6. Check that backbones should be placed parallel to each other

    * 7. Check that distance between all monomers should be minimum one bond length
    8. Check that multiple backbones/chains can be placed in on a line if they are both connected via H-bonds to the same chain (but not to each other!!!)

    * 9. Check if there is a circular hydrogen bond connection between three or more chains, those hydrogen bonds should be considered as side chain connection for layout purposes

    * Last fixes

    * Last fix 2

    * 11. Sense and antisense chains should be treated as completely separate chains in sequence mode, without any hydrogen bonds connecting them
    12. Check if hydrogen bonds connect monomers between chains (but not between bases), those hydrogen bonds should be considered as side chain connections and shown correct at sequence mode

    * Last fix

commit ed8ab09
Author: Mikhail Zhirnov <[email protected]>
Date:   Tue Dec 24 12:47:59 2024 +0300

    Autotests: #6036 - autotests tests for readsave name and reaction conditions fromto rdf metadata (#6144)

    * - add tests;
    - add expected snapshots;
    - add test files;

    * - add test;
    - add expected snapshot;
    - add test file;

    * - update test files and snapshots

    * - update version package-lock.json

    * - add tests;
    - add expected snapshots;
    - add files

    * - add tests;
    - add expected snapshots;
    - add files

    * - add tests;
    - add expected snapshots;
    - add files

    * - add tests;
    - add expected snapshots;
    - add files

    * - code refactoring;
    - update screenshots

    * - add tests;
    - add expected snapshots;
    - add files

    * - add tests;
    - add expected snapshots;
    - add files

    * Rename verification function for clarity in cascade reactions tests

    * - update test after fix bug

commit 443f19c
Author: Roman Rodionov <[email protected]>
Date:   Mon Dec 23 17:19:57 2024 +0100

    #6161 - Stereo flags are displayed despite enabling 'Ignore chiral flag' in MOL V2000 files (#6202)

    - added ignoreChiralFlag parameter to be used in mol v2000 deserialization during setMolecule and openning files methods
    - removed ignoreChiralFlag parameter from serialization

commit e64de6b
Author: Roman Rodionov <[email protected]>
Date:   Mon Dec 23 16:44:43 2024 +0100

    #6027 - Support for single atom properties in macromolecules mode (#6176)

commit 0fb0c60
Author: Umur Gokalp <[email protected]>
Date:   Mon Dec 23 11:30:52 2024 +0300

    #6022 Side chain attachment point shown in wrong place in Snake mode (#6183)

commit f8e15b9
Author: Alexey Girin <[email protected]>
Date:   Fri Dec 20 19:03:03 2024 +0300

    Autotests: #6134 autotests introduce creating antisense chains (#6186)

    * first draft

    * Validate that selecting a valid backbone with the correct R1-R2 connections and right-clicking displays the "Create Antisense Strand" option (Requirement 1) and creation of antisense is possible

    * Ensure that the "Create Antisense Strand" option appears but is disabled when the base connected via R3-R1 is not a sense base

    * Check if any of the bases connected to the sugars via R3-R1 have more bonds (hydrogen or covalent), the "Create Antisense Strand" option appear, but disabled

    * Check if multiple chains are selected and more than one satisfies the previous requirements(Requirement 1.2), the "Create Antisense Strand" option appear, multiple antisense chains are created

    * Check that all non R1-R2 connections of backbone monomers (except R3-R1 for sugar and base!!!) are ignored

    * 6. Check that every nucleotide (sugar and phosphate are part of the backbone and connected via R2(s)-R1(p), and the sugar is connected to a "sense base" via R3(s)-R1(b)) transform into a nucleotide on the antisense chain that contains ribose (R), phosphate (P), and the appropriate "antisense base"
    7. Check that every nucleoside (not a nucleotide, sugar is connected through R2 to something that is not phosphate, or has a free R2, but is connected to a "sense base" through R3) transform into a nucleoside on the antisense chain that contains ribose (R) and the appropriate "antisense base"

    * Check that all other monomers in the backbone that are not a part of the nucleotide or a nucleoside directly copied to the antisense strand

    * Check that the antisense chain should be "flipped" in relation to the sense chain:If the left most sugar/amino acid of the sense chain has a terminal indicator of 5'/N, then the left most sugar/amino acid of the antisense chain should have a terminal indicator of 3'/C

    * Screens update

    * Screen update

    * Screen update

    * Check that option "Delete" deletes the selected monomers and all the bonds of those monomers and Undo restore all monomers and bonds

    * 13. Validate that creating, deleting, and modifying the antisense chain supports the undo/redo functionality

    * Validate that both sense and antisense strands can be exported correctly in supported file formats

    * Data attribute changes

    * Rename verifyFile to verifyFileExport

    * Ensure that switching between (Flex, Snake, Sequence) modes does not break the alignment or hydrogen bonding between the sense and antisense strands

    * Ensure that switching between macro and micro modes does not break the alignment or hydrogen bonding between the sense and antisense strands

    * Verify that copying the sense and antisense strand and pasting it within the same canvas retains the correct orientation and complementary base pairing

    * Last fix

    * Last last fix

    * view-only-mode.spec.ts updated

    * view-only-mode.spec.ts updated2

    * view-only-mode.spec.ts updated3

    * antisense-chains.spec.ts updated

    * last fix

    * data-monomertype logic update

commit ca780ce
Author: Mikhail Zhirnov <[email protected]>
Date:   Fri Dec 20 13:25:51 2024 +0300

    Autotests: #6143 - tests for add copy to clipboard to the export window (#6151)

    * - add tests;
    - add expected snapshots;
    - add function 'copyToClipboardByIcon'

    * - update snapshot

commit aa7b97e
Author: Anrei Menshikov <[email protected]>
Date:   Fri Dec 20 13:36:13 2024 +0400

    #4723 - When pressing Enter, a user can create new sequences in the “Modify RNA Builder” mode (#6178)

    * 4723-when-pressing-enter-a-user-can-create-new-sequences-in-the-modify-rna-builder-mode

    * clean code

    ---------

    Co-authored-by: Andrey Menshikov <[email protected]>

commit e1275a1
Author: Maksim Labovich <[email protected]>
Date:   Fri Dec 20 11:08:14 2024 +0300

    #6026 - Bond length is different for monomers loaded from HELM and from the library (#6152)

    * #6026 - Bond length is different for monomers loaded from HELM and from the library

    - updated RNA_MONOMER_DISTANCE constant value

    * 6026 - changed fix approach

    - renamed constant related to bond length
    - reused it instead of rna_monomer_distance constant
    - removed debugger

    * 6026 - resolved build issue caused by merge

    * 6026 - updated snapshots

    ---------

    Co-authored-by: Natalia_Loginova1 <[email protected]>

commit 7343fdd
Author: Ivan Maslov <[email protected]>
Date:   Thu Dec 19 11:51:45 2024 +0300

    Autotests: #5943 Multi-Tailed Arrows and Indigo functions (#5950)

    * - Refactored verifyFile in multi-tailed-arrow-tool.spec.ts;
    - 5943: Added test/test files for Aromatize/Dearomatize case and MTA;

    * - Added /* eslint-disable @typescript-eslint/no-explicit-any */ to fix issue with unexpected any in setAndCheckQuerySpecificProperties

    * package-lock changes from dev and update of ketcher-autotests/tests/test-data/KET/ket-cascade-single-reactions-3-1-2-1-1-2x2-aromatize-expected.ket

    * Autotests 5943- added new tests, screenshots, files

    * Autotests 5943: added tests, files and screenshots for layout

    * Autotests 5943: Added tests, files and screenshots for cip, check and calculated actions

    * Autotests 5843: Added tests, files and screenshots for layout, clean up and hydrogen cases

    * 5943: Comments after code review - updated names and description of tests, updated screenshots

* removed deprecated options

* return

* fix

---------

Co-authored-by: Konstantin_Nadonenko <[email protected]>
@Zhirnoff
Copy link
Collaborator Author

Tested. Bug fixed partially.
When opening a structure with the "Ignore chiral flag" option disabled and then switching the flag to the enabled position, stereocenters appear on the bonds.

2024-12-26_10h35_06.mp4

Desktop:

  • OS: Windows 11
  • Browser Chrome
  • Version 124.0.6367.79 (Official Build) (64-bit)

Ketcher version
[Version 2.28.0-rc.4]
Indigo version
[Version 1.27.0-rc.2]

@Zhirnoff Zhirnoff reopened this Dec 26, 2024
@Zhirnoff Zhirnoff modified the milestones: Ketcher 2.28.0-rc.4, Ketcher 2.28.0-rc.5 Dec 26, 2024
@Zhirnoff
Copy link
Collaborator Author

After discussing with @AlexanderSavelyev and @ljubica-milovic , the behavior described above is not considered a bug.

@Zhirnoff Zhirnoff removed this from the Ketcher 2.28.0-rc.5 milestone Dec 26, 2024
@Zhirnoff Zhirnoff added this to the Ketcher 2.28.0-rc.4 milestone Dec 26, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment