Skip to content

Commit b19ca97

Browse files
authored
Merge pull request #540 from karfau/update-xmldom
Update dependency xmldom
2 parents 9228ae3 + 0909dbf commit b19ca97

File tree

5 files changed

+19
-12
lines changed

5 files changed

+19
-12
lines changed

package-lock.json

+5-5
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

+2-2
Original file line numberDiff line numberDiff line change
@@ -45,12 +45,12 @@
4545
"bugs": "http://github.com/linkeddata/rdflib.js/issues",
4646
"dependencies": {
4747
"@babel/runtime": "^7.16.0",
48+
"@xmldom/xmldom": "^0.8.0",
4849
"async": "^3.2.2",
4950
"cross-fetch": "^3.1.4",
5051
"jsonld": "^5.2.0",
5152
"n3": "^1.12.2",
52-
"solid-namespace": "^0.5.2",
53-
"xmldom": "^0.6.0"
53+
"solid-namespace": "^0.5.2"
5454
},
5555
"devDependencies": {
5656
"@babel/cli": "^7.16.0",

src/fetcher.ts

+9-2
Original file line numberDiff line numberDiff line change
@@ -343,6 +343,11 @@ class XMLHandler extends Handler {
343343
fetcher.mediatypes['application/xml'] = { 'q': 0.5 }
344344
}
345345

346+
static isElement(node: Node): node is Element {
347+
return node.nodeType === Node.ELEMENT_NODE;
348+
}
349+
350+
346351
parse (
347352
fetcher: Fetcher,
348353
responseText: string,
@@ -357,10 +362,12 @@ class XMLHandler extends Handler {
357362
// XML Semantics defined by root element namespace
358363
// figure out the root element
359364
for (let c = 0; c < dom.childNodes.length; c++) {
365+
const node = dom.childNodes[c]
360366
// is this node an element?
361-
if (dom.childNodes[c].nodeType === 1) {
367+
if (XMLHandler.isElement(node)) {
368+
362369
// We've found the first element, it's the root
363-
let ns = dom.childNodes[c].namespaceURI
370+
let ns = node.namespaceURI
364371

365372
// Is it RDF/XML?
366373
if (ns && ns === ns['rdf']) {

src/utils-js.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -245,10 +245,10 @@ export function output (o) {
245245
document.body.appendChild(k)
246246
}
247247

248-
import { DOMParser } from 'xmldom'
248+
import { DOMParser } from '@xmldom/xmldom'
249249

250250
/**
251-
* Returns a DOM from parsex XML.
251+
* Returns a DOM from parsed XML.
252252
*/
253253
export function parseXML (str, options) {
254254
var dparser

webpack.config.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -29,13 +29,13 @@ module.exports = (env, args) => {
2929
resolve: { extensions: ['.js', '.ts'] },
3030
externals: {
3131
'@trust/webcrypto': 'crypto',
32+
'@xmldom/xmldom': 'window',
3233
'child_process': 'null',
3334
'node-fetch': 'fetch',
3435
'text-encoding': 'TextEncoder',
3536
'whatwg-url': 'window',
3637
'isomorphic-fetch': 'fetch',
3738
'fs': 'null',
38-
'xmldom': 'window'
3939
},
4040
devtool: 'source-map'
4141
}

0 commit comments

Comments
 (0)