Note This repository is automatically generated from the main parser monorepo. Please submit any issues or pull requests there.
Port of (hast-util-select)[https://github.com/syntax-tree/hast-util-select]
for use with xast
nodes.
A tool which allows you to select items from xast
trees using CSS-like queries.
This is a very naive port, so there's still a lot of HTML-specific logic included that could be removed to improve the size and efficiency of the program.
One thing to watch out for is that it's much more common to find <namespace:tagname/>
style tags in XML. Make sure you escape the colon
const node = select('namespace\\:tagname', tree)
This is also something that could be improved in the future as pseudo-class selectors are not really necessary in generic XML, but I want to keep the API as similar to hast-util-select
as possible for the time being.
You are doing something low level with xast
trees.
This package is ESM only. In Node.js (version 12.20+, 14.14+, 16.0+, 18.0+), install as
pnpm add xast-util-select
# or with yarn
# yarn add xast-util-select
# or with npm
# npm install xast-util-select
matches(selector: string, node?: XastNode, space?: Space): boolean;
Name | Type |
---|---|
selector |
string |
node? |
XastNode |
space? |
Space |
boolean
Defined in: index.ts:6
select(selector: string, node?: XastNode, space?: Space): Element | null;
Name | Type |
---|---|
selector |
string |
node? |
XastNode |
space? |
Space |
Element
| null
Defined in: index.ts:10
selectAll(selector: string, node?: XastNode, space?: Space): Element[];
Name | Type |
---|---|
selector |
string |
node? |
XastNode |
space? |
Space |
Element
[]
Defined in: index.ts:14
MIT © Thomas F. K. Jorna