From 123ee8e06fa98c8932727d13c048f23a7eb483e3 Mon Sep 17 00:00:00 2001 From: Jeff Cross Date: Thu, 26 Mar 2015 16:26:44 -0700 Subject: [PATCH] feat(dom): add replaceChild to DOM adapter --- modules/angular2/src/dom/browser_adapter.dart | 3 +++ modules/angular2/src/dom/browser_adapter.es6 | 3 +++ modules/angular2/src/dom/dom_adapter.js | 3 +++ 3 files changed, 9 insertions(+) diff --git a/modules/angular2/src/dom/browser_adapter.dart b/modules/angular2/src/dom/browser_adapter.dart index 320ff28956..5c812212a4 100644 --- a/modules/angular2/src/dom/browser_adapter.dart +++ b/modules/angular2/src/dom/browser_adapter.dart @@ -67,6 +67,9 @@ class BrowserDomAdapter extends GenericBrowserDomAdapter { void removeChild(Element el, Node node) { node.remove(); } + void replaceChild(Node el, Node newNode, Node oldNode) { + oldNode.replaceWith(newNode); + } Element remove(Element el) { return el..remove(); } diff --git a/modules/angular2/src/dom/browser_adapter.es6 b/modules/angular2/src/dom/browser_adapter.es6 index df9cf0e331..28678d3421 100644 --- a/modules/angular2/src/dom/browser_adapter.es6 +++ b/modules/angular2/src/dom/browser_adapter.es6 @@ -90,6 +90,9 @@ export class BrowserDomAdapter extends GenericBrowserDomAdapter { removeChild(el, node) { el.removeChild(node); } + replaceChild(el: Node, newChild, oldChild) { + el.replaceChild(newChild, oldChild); + } remove(el) { var parent = el.parentNode; parent.removeChild(el); diff --git a/modules/angular2/src/dom/dom_adapter.js b/modules/angular2/src/dom/dom_adapter.js index d17d944830..ff18592c29 100644 --- a/modules/angular2/src/dom/dom_adapter.js +++ b/modules/angular2/src/dom/dom_adapter.js @@ -90,6 +90,9 @@ export class DomAdapter { removeChild(el, node) { throw _abstract(); } + replaceChild(el, newNode, oldNode) { + throw _abstract(); + } remove(el) { throw _abstract(); }