diff --git a/src/visitor.ts b/src/visitor.ts index 81e409c..a3b3fe2 100644 --- a/src/visitor.ts +++ b/src/visitor.ts @@ -157,10 +157,16 @@ export class Visitor { if (!node.preserve) return; /* Handle text node */ - if (isTextNode(node)) + if (isTextNode(node)) { + if ((node).wholeText) { + (node).text ??= (node).wholeText; + (node).trimmedText ??= trimNewLines((node).wholeText); + } + return node.isWhitespace && !metadata?.preserveWhitespace ? (!result.text.length || result.trailingNewlineStats.whitespace > 0) ? void 0 : this.appendResult(' ') : this.appendResult(this.processText(metadata?.preserveWhitespace ? node.text : node.trimmedText, metadata)); + } if (textOnly || !isElementNode(node)) return;