Package Exports
- hast-util-to-parse5
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (hast-util-to-parse5) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
hast-util-to-parse5
hast utility to transform to Parse5’s AST.
Q: Why not use a Parse5 adapter? A: Because it’s more code weight to use adapters, and much more fragile.
Install
This package is ESM only:
Node 12+ is needed to use it and it must be import
ed instead of require
d.
npm:
npm install hast-util-to-parse5
Use
import {toParse5} from 'hast-util-to-parse5'
var ast = toParse5({
type: 'element',
tagName: 'h1',
properties: {},
children: [{type: 'text', value: 'World!'}]
})
console.log(ast)
Yields:
{ nodeName: 'h1',
tagName: 'h1',
attrs: [],
namespaceURI: 'http://www.w3.org/1999/xhtml',
childNodes: [ { nodeName: '#text', value: 'World!', parentNode: [Circular] } ] }
API
This package exports the following identifiers: toParse5
.
There is no default export.
toParse5(tree[, space])
Transform a hast tree to Parse5’s AST.
space
Whether the root of the given tree is in the 'html'
or 'svg'
space
(enum, 'svg'
or 'html'
, default: 'html'
).
If an svg
element is found in the HTML space, toParse5
automatically
switches to the SVG space when entering the element, and switches back when
exiting.
Security
Use of hast-util-to-parse5
can open you up to a
cross-site scripting (XSS) attack if the hast tree is unsafe.
Related
hast-util-from-parse5
— transform from Parse5’s AST to hasthast-util-to-nlcst
— transform hast to nlcsthast-util-to-mdast
— transform hast to mdasthast-util-to-xast
— transform hast to xastmdast-util-to-hast
— transform mdast to hastmdast-util-to-nlcst
— transform mdast to nlcst
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.