Blame view

lib/jsdom/living/helpers/text.js 542 Bytes
858f2bdf5   Boyan Georgiev   fixes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
  "use strict";
  const { domSymbolTree } = require("./internal-constants");
  const { CDATA_SECTION_NODE, TEXT_NODE } = require("../node-type");
  
  //
  // https://dom.spec.whatwg.org/#concept-child-text-content
  //
  exports.childTextContent = node => {
    let result = "";
    const iterator = domSymbolTree.childrenIterator(node);
    for (const child of iterator) {
      if (child.nodeType === TEXT_NODE ||
          // The CDataSection extends Text.
          child.nodeType === CDATA_SECTION_NODE) {
        result += child.data;
      }
    }
    return result;
  };