From 7eaa04c6c7e2bab3aed84895424f8a009affb85b Mon Sep 17 00:00:00 2001 From: Dmitrii Polovnev Date: Wed, 12 Jun 2024 18:50:56 +0300 Subject: [PATCH] #4607 - Bugfix (Chain.ts): Correct the definition of individual phosphate and linker in `add(1)` (step 2) --- .../src/domain/entities/monomer-chains/Chain.ts | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/packages/ketcher-core/src/domain/entities/monomer-chains/Chain.ts b/packages/ketcher-core/src/domain/entities/monomer-chains/Chain.ts index 7271a94b20..acf95fdd9b 100644 --- a/packages/ketcher-core/src/domain/entities/monomer-chains/Chain.ts +++ b/packages/ketcher-core/src/domain/entities/monomer-chains/Chain.ts @@ -74,7 +74,7 @@ export class Chain { }; if ( monomer instanceof Phosphate && - this.lastNode instanceof Nucleoside && + (!this.lastNode || this.lastNode instanceof Nucleoside) && (!nextMonomer || isNextMonomerNucleosideOrNucleotideOrPeptide()) ) { this.lastSubChain.add(new MonomerSequenceNode(monomer)); @@ -117,7 +117,12 @@ export class Chain { return nodes; } - public get lastNode() { + public get lastNode(): + | EmptySequenceNode + | MonomerSequenceNode + | Nucleoside + | Nucleotide + | undefined { return this.lastSubChain?.lastNode; }