X-Git-Url: https://git.mdrn.pl/fnpeditor.git/blobdiff_plain/729243168cee79db77626f00e5b0073f692aba2e..87b603a0cc0a310b8166d8126e84259096a7a83d:/src/smartxml/core.js?ds=sidebyside diff --git a/src/smartxml/core.js b/src/smartxml/core.js index ae445e0..a2d39a6 100644 --- a/src/smartxml/core.js +++ b/src/smartxml/core.js @@ -45,9 +45,12 @@ var documentNodeTransformations = { if(this.isRoot()) { return this.document.replaceRoot(node); } - toret = this.after(node); - this.detach(); - return toret; + if(this.parent()) { + toret = this.after(node); + this.detach(); + return toret; + } + throw new Error('Cannot replace node without a parent.'); }, after: INSERTION(function(node) { @@ -74,8 +77,9 @@ var documentNodeTransformations = { wrapWith: function(node) { var insertion = this.getNodeInsertion(node); - if(this.parent()) { - this.before(insertion.ofNode); + + if(this.parent() || this.isRoot()) { + this.replaceWith(insertion.ofNode); } insertion.ofNode.append(this); return insertion.ofNode;