From 697322cfffdb4ae84dec5ae9f91c3e0ee4b9fbf3 Mon Sep 17 00:00:00 2001 From: Aart Rost Date: Tue, 12 Apr 2022 12:06:50 -0700 Subject: [PATCH] Use correct namespace when generating dom nodes for SVG content --- src/types/YXmlElement.js | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/types/YXmlElement.js b/src/types/YXmlElement.js index 464951b4..e91bb3be 100644 --- a/src/types/YXmlElement.js +++ b/src/types/YXmlElement.js @@ -201,7 +201,20 @@ export class YXmlElement extends YXmlFragment { * @public */ toDOM (_document = document, hooks = {}, binding) { - const dom = _document.createElement(this.nodeName) + let dom; + switch(this.nodeName){ + case "polyline": + case "path": + case "rect": + case "circle": + case "ellipse": + case "line": + case "svg": + dom = _document.createElementNS('http://www.w3.org/2000/svg', this.nodeName); + break; + default: + dom = _document.createElement(this.nodeName); + } const attrs = this.getAttributes() for (const key in attrs) { dom.setAttribute(key, attrs[key])