unified

Project: syntax-tree/xast-util-to-string

Package: xast-util-to-string@2.0.0

  1. Dependencies: 1·Dependents: 1
  2. xast utility to get the text value of a node
  1. util 128
  2. utility 124
  3. unist 120
  4. content 18
  5. text 18
  6. xast 8
  7. xml 8
  8. xast-util 7
  9. string 5

xast-util-to-string

Build Coverage Downloads Size Sponsors Backers Chat

xast utility to get the plain text value of a node.

This is like the DOMs Node#textContent getter but there are some deviations. The resulting text is returned.

Install

This package is ESM only: Node 12+ is needed to use it and it must be imported instead of required.

npm:

npm install xast-util-to-string

Use

import {x} from 'xastscript'
import {toString} from 'xast-util-to-string'

var tree = x(
  'ncx',
  {xmlns: 'http://www.daisy.org/z3986/2005/ncx/', version: '2005-1'},
  [
    x('head', [
      x('meta', {name: 'dtb:uid', content: 'urn:isbn:9781234567891'})
    ]),
    x('docTitle', [x('text', 'A Christmas Carol')]),
    x('docAuthor', [x('text', 'Charles Dickens')])
  ]
)

console.log(toString(tree))

Yields:

A Christmas CarolCharles Dickens

API

This package exports the following identifiers: toString. There is no default export.

toString(node)

Utility to get the plain text value of a node. If the node has a value field (cdata, comment, doctype, instruction, or text), returns it. If the node has a children field (root or element), recurses into it to concatenate all texts.

Returns

string — Serialized node.

Security

xast-util-to-string does not change the syntax tree so there are no openings for cross-site scripting (XSS) attacks.

Contribute

See contributing.md in syntax-tree/.github for ways to get started. See support.md for ways to get help.

This project has a code of conduct. By interacting with this repository, organization, or community you agree to abide by its terms.

License

MIT © Titus Wormer