packages/building-webpack/dom5-fork/index.js
function normalize(node) {
  if (!(isElement(node) || isDocument(node) || isDocumentFragment(node))) {
    return;
  }
  if (!node.childNodes) {
    return;
  }
  var textRangeStart = -1;
  for (var i = node.childNodes.length - 1, n = void 0; i >= 0; i--) {
    n = node.childNodes[i];
    if (isTextNode(n)) {
      if (textRangeStart === -1) {
        textRangeStart = i;
      }
      if (i === 0) {
        // collapse leading text nodes
        collapseTextRange(node, 0, textRangeStart);
      }
    } else {
      // recurse
      normalize(n);
      // collapse the range after this node
      if (textRangeStart > -1) {
        collapseTextRange(node, i + 1, textRangeStart);
        textRangeStart = -1;
      }
    }
  }
}
function normalize(node) {
  if (!(isElement(node) || isDocument(node) || isDocumentFragment(node))) {
    return;
  }
  if (!node.childNodes) {
    return;
  }
  var textRangeStart = -1;
  for (var i = node.childNodes.length - 1, n = void 0; i >= 0; i--) {
    n = node.childNodes[i];
    if (isTextNode(n)) {
      if (textRangeStart === -1) {
        textRangeStart = i;
      }
      if (i === 0) {
        // collapse leading text nodes
        collapseTextRange(node, 0, textRangeStart);
      }
    } else {
      // recurse
      normalize(n);
      // collapse the range after this node
      if (textRangeStart > -1) {
        collapseTextRange(node, i + 1, textRangeStart);
        textRangeStart = -1;
      }
    }
  }
}
function normalize ( node ) { if ( ! ( isElement ( node ) || isDocument ( node ) || isDocumentFragment ( node ) ) ) { return ; } if ( ! node . childNodes ) { return ; } var textRangeStart = - 1 ; for ( var i = node . childNodes . length - 1 , n = void 0 ; i >= 0 ; i -- ) { n = node . childNodes [ i ] ; if ( isTextNode ( n ) ) { if ( textRangeStart === - 1 ) { textRangeStart = i ; } if ( i === 0 ) { // collapse leading text nodes collapseTextRange ( node , 0 , textRangeStart ) ; } } else { // recurse normalize ( n ) ; // collapse the range after this node if ( textRangeStart > - 1 ) { collapseTextRange ( node , i + 1 , textRangeStart ) ; textRangeStart = - 1 ; } } } }
Normalize the text inside an element

Equivalent to `element.normalize()` in the browser
See https://developer.mozilla.org/en-US/docs/Web/API/Node/normalize
Normalize the text inside an element