UNPKG

marko

Version:

UI Components + streaming, async, high performance, HTML templating for Node.js and the browser.

43 lines (37 loc) 1.02 kB
function insertBefore(node, referenceNode, parentNode) { if (node.insertInto) { return node.insertInto(parentNode, referenceNode); } return parentNode.insertBefore( node, (referenceNode && referenceNode.startNode) || referenceNode, ); } function insertAfter(node, referenceNode, parentNode) { return insertBefore( node, referenceNode && referenceNode.nextSibling, parentNode, ); } function nextSibling(node) { var next = node.nextSibling; var fragment = next && next.fragment; if (fragment) { return next === fragment.startNode ? fragment : null; } return next; } function firstChild(node) { var next = node.firstChild; return (next && next.fragment) || next; } function removeChild(node) { if (node.remove) node.remove(); else node.parentNode.removeChild(node); } exports.___insertBefore = insertBefore; exports.___insertAfter = insertAfter; exports.___nextSibling = nextSibling; exports.___firstChild = firstChild; exports.___removeChild = removeChild;