src/language-html/utils.js
function forceBreakContent(node) {
  return (
    forceBreakChildren(node) ||
    (node.type === "element" &&
      node.children.length !== 0 &&
      (["body", "template", "script", "style"].indexOf(node.name) !== -1 ||
        node.children.some(child => hasNonTextChild(child)))) ||
    (node.firstChild &&
      node.firstChild === node.lastChild &&
      (hasLeadingLineBreak(node.firstChild) &&
        (!node.lastChild.isTrailingSpaceSensitive ||
          hasTrailingLineBreak(node.lastChild))))
  );
}
function forceBreakContent(node) {
  return (
    forceBreakChildren(node) ||
    (node.type === "element" &&
      node.children.length !== 0 &&
      (["body", "template", "script", "style"].indexOf(node.name) !== -1 ||
        node.children.some(child => hasNonTextChild(child)))) ||
    (node.firstChild &&
      node.firstChild === node.lastChild &&
      (hasLeadingLineBreak(node.firstChild) &&
        (!node.lastChild.isTrailingSpaceSensitive ||
          hasTrailingLineBreak(node.lastChild))))
  );
}
function forceBreakContent ( node ) { return ( forceBreakChildren ( node ) || ( node . type === "element" && node . children . length !== 0 && ( [ "body" , "template" , "script" , "style" ] . indexOf ( node . name ) !== - 1 || node . children . some ( child => hasNonTextChild ( child ) ) ) ) || ( node . firstChild && node . firstChild === node . lastChild && ( hasLeadingLineBreak ( node . firstChild ) && ( ! node . lastChild . isTrailingSpaceSensitive || hasTrailingLineBreak ( node . lastChild ) ) ) ) ) ; }
firstChild leadingSpaces and lastChild trailingSpaces
firstChild leadingSpaces and lastChild trailingSpaces