From c826f95f5231e79e40f1597fbbe1c98d9504a2b6 Mon Sep 17 00:00:00 2001 From: Eddie Arevalo Date: Wed, 21 Dec 2022 16:17:08 -0800 Subject: [PATCH] Fix Release Page In Firefox Bug #167 (#177) -Release page would not run on firefox due to xml styler xsl. -Replaced xsl styler with xml-formatter. --- package-lock.json | 33 +++++++++++++++++++++++++++++++++ package.json | 1 + src/utils/xmlUtil.js | 23 ++++------------------- 3 files changed, 38 insertions(+), 19 deletions(-) diff --git a/package-lock.json b/package-lock.json index 5032b14..3fa5588 100644 --- a/package-lock.json +++ b/package-lock.json @@ -28,6 +28,7 @@ "redux-saga": "^1.1.3", "styled-components": "^5.3.5", "xlsx": "^0.17.0", + "xml-formatter": "^3.2.0", "xml-js": "^1.6.11" } }, @@ -19308,6 +19309,17 @@ "resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz", "integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==" }, + "node_modules/xml-formatter": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/xml-formatter/-/xml-formatter-3.2.0.tgz", + "integrity": "sha512-PYROODIUDHz1SDFePg2VThajPOuSmvo/PrYRKARcSc9xxKKs62EN9uar60IIxxknzmOSNDAxlylpw34bQp0g/Q==", + "dependencies": { + "xml-parser-xo": "^4.0.1" + }, + "engines": { + "node": ">= 14" + } + }, "node_modules/xml-js": { "version": "1.6.11", "resolved": "https://registry.npmjs.org/xml-js/-/xml-js-1.6.11.tgz", @@ -19324,6 +19336,14 @@ "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==" }, + "node_modules/xml-parser-xo": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xml-parser-xo/-/xml-parser-xo-4.0.1.tgz", + "integrity": "sha512-wJmRjzVZr7D+kYSajd3zqT7tt+y9L2vVWp+s7ARxzPMtk/gZcTY0KB14B801QX2D2wqIQ1d3bV/LgcnwlpKyyg==", + "engines": { + "node": ">= 14" + } + }, "node_modules/xmlchars": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", @@ -33224,6 +33244,14 @@ } } }, + "xml-formatter": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/xml-formatter/-/xml-formatter-3.2.0.tgz", + "integrity": "sha512-PYROODIUDHz1SDFePg2VThajPOuSmvo/PrYRKARcSc9xxKKs62EN9uar60IIxxknzmOSNDAxlylpw34bQp0g/Q==", + "requires": { + "xml-parser-xo": "^4.0.1" + } + }, "xml-js": { "version": "1.6.11", "resolved": "https://registry.npmjs.org/xml-js/-/xml-js-1.6.11.tgz", @@ -33237,6 +33265,11 @@ "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==" }, + "xml-parser-xo": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xml-parser-xo/-/xml-parser-xo-4.0.1.tgz", + "integrity": "sha512-wJmRjzVZr7D+kYSajd3zqT7tt+y9L2vVWp+s7ARxzPMtk/gZcTY0KB14B801QX2D2wqIQ1d3bV/LgcnwlpKyyg==" + }, "xmlchars": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", diff --git a/package.json b/package.json index 47bbbe9..fda8a00 100644 --- a/package.json +++ b/package.json @@ -24,6 +24,7 @@ "redux-saga": "^1.1.3", "styled-components": "^5.3.5", "xlsx": "^0.17.0", + "xml-formatter": "^3.2.0", "xml-js": "^1.6.11" }, "scripts": { diff --git a/src/utils/xmlUtil.js b/src/utils/xmlUtil.js index 357ec36..4b9fc76 100644 --- a/src/utils/xmlUtil.js +++ b/src/utils/xmlUtil.js @@ -1,23 +1,8 @@ -const printXML = (sourceXml) => { - var xmlDoc = new DOMParser().parseFromString(sourceXml, 'application/xml'); - var xsltDoc = new DOMParser().parseFromString([ - '', - ' ', - ' ', - ' ', - ' ', - ' ', - ' ', - ' ', - ' ', - '' - ].join('\n'), 'application/xml'); +import xmlFormat from 'xml-formatter'; - var xsltProcessor = new XSLTProcessor(); - xsltProcessor.importStylesheet(xsltDoc); - var resultDoc = xsltProcessor.transformToDocument(xmlDoc); - var resultXml = new XMLSerializer().serializeToString(resultDoc); - return resultXml; +const printXML = (sourceXml) => { + var styledXml = xmlFormat(sourceXml); + return styledXml; }; const findXmlTag = (sourceXml, tag) => {