| /** | |
| * @license | |
| * Copyright (c) 2017 The Polymer Project Authors. All rights reserved. | |
| * This code may only be used under the BSD style license found at | |
| * http://polymer.github.io/LICENSE.txt | |
| * The complete set of authors may be found at | |
| * http://polymer.github.io/AUTHORS.txt | |
| * The complete set of contributors may be found at | |
| * http://polymer.github.io/CONTRIBUTORS.txt | |
| * Code distributed by Google as part of the polymer project is also | |
| * subject to an additional IP rights grant found at | |
| * http://polymer.github.io/PATENTS.txt | |
| */ | |
| /** | |
| * True if the custom elements polyfill is in use. | |
| */ | |
| export const isCEPolyfill = typeof window !== 'undefined' && | |
| window.customElements != null && | |
| window.customElements.polyfillWrapFlushCallback !== | |
| undefined; | |
| /** | |
| * Reparents nodes, starting from `start` (inclusive) to `end` (exclusive), | |
| * into another container (could be the same container), before `before`. If | |
| * `before` is null, it appends the nodes to the container. | |
| */ | |
| export const reparentNodes = (container, start, end = null, before = null) => { | |
| while (start !== end) { | |
| const n = start.nextSibling; | |
| container.insertBefore(start, before); | |
| start = n; | |
| } | |
| }; | |
| /** | |
| * Removes nodes, starting from `start` (inclusive) to `end` (exclusive), from | |
| * `container`. | |
| */ | |
| export const removeNodes = (container, start, end = null) => { | |
| while (start !== end) { | |
| const n = start.nextSibling; | |
| container.removeChild(start); | |
| start = n; | |
| } | |
| }; | |
| //# sourceMappingURL=dom.js.map |