From f9e79198eb839236bc1a5505db08edfd0abdcddb Mon Sep 17 00:00:00 2001 From: Matt Carvin <90224411+mcarvin8@users.noreply.github.com> Date: Wed, 21 Feb 2024 11:02:53 -0500 Subject: [PATCH] fix: ensure all matches of duplicate parent elements are removed in the reassembled file, including opening tags which have the namespace in them --- src/service/buildReassembledFiles.ts | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/service/buildReassembledFiles.ts b/src/service/buildReassembledFiles.ts index 745fa53..60bd9f1 100644 --- a/src/service/buildReassembledFiles.ts +++ b/src/service/buildReassembledFiles.ts @@ -19,8 +19,17 @@ export async function buildReassembledFile( ); // Remove duplicate parent elements - finalXmlContent = finalXmlContent.replace(`<${xmlElement}>`, ""); - finalXmlContent = finalXmlContent.replace(``, ""); + finalXmlContent = finalXmlContent.replace( + new RegExp( + `<${xmlElement}[^>]*${xmlNamespace ? `( xmlns="${xmlNamespace}")?` : ""}>`, + "g", + ), + "", + ); + finalXmlContent = finalXmlContent.replace( + new RegExp(``, "g"), + "", + ); // Remove extra indentation within CDATA sections finalXmlContent = finalXmlContent.replace(