* Returns true if the node has no children * once the empty text nodes (trimmed content) have been filtered out.
(node: ElementNode)
| 418 | * once the empty text nodes (trimmed content) have been filtered out. |
| 419 | */ |
| 420 | function isEmpty(node: ElementNode) { |
| 421 | for (let i = 0; i < node.children.length; i++) { |
| 422 | const child = node.children[i] |
| 423 | if (child.type !== NodeTypes.TEXT || child.content.trim() !== '') { |
| 424 | return false |
| 425 | } |
| 426 | } |
| 427 | return true |
| 428 | } |
| 429 | |
| 430 | /** |
| 431 | * Note: this comparison assumes the prev/next script are already identical, |