hast utility to check if a node is a labelable element.
- What is this?
- When should I use this?
- Install
- Use
- API
- Types
- Compatibility
- Security
- Related
- Contribute
- License
This package is a small utility that checks if a node is a labelable element according to HTML.
This utility is super niche, if you’re here you probably know what you’re looking for!
This package is ESM only. In Node.js (version 16+), install with npm:
npm install hast-util-labelableIn Deno with esm.sh:
import {labelable} from 'https://esm.sh/hast-util-labelable@3'In browsers with esm.sh:
<script type="module">
import {labelable} from 'https://esm.sh/hast-util-labelable@3?bundle'
</script>import {labelable} from 'hast-util-labelable'
labelable({type: 'element', tagName: 'div', properties: {}, children: []}) // => false
labelable({type: 'element', tagName: 'input', properties: {}, children: []}) // => true
labelable({
type: 'element',
tagName: 'input',
properties: {type: 'hidden'},
children: []
}) // => falseThis package exports the identifier labelable.
There is no default export.
Check if the given value is a labelable element.
Whether node is a labelable element (boolean).
Labelable elements are button, input (excluding [type=hidden]), keygen,
meter, output, progress, select, and textarea.
This package is fully typed with TypeScript. It exports no additional types.
Projects maintained by the unified collective are compatible with maintained versions of Node.js.
When we cut a new major release, we drop support for unmaintained versions of
Node.
This means we try to keep the current release line, hast-util-labelable@^3,
compatible with Node.js 16.
hast-util-labelable does not change the syntax tree so there are no openings
for cross-site scripting (XSS) attacks.
hast-util-is-element— check if a node is a (certain) elementhast-util-has-property— check if a node has a propertyhast-util-is-body-ok-link— check if a node is “Body OK” link elementhast-util-is-conditional-comment— check if a node is a conditional commenthast-util-is-css-link— check if a node is a CSS link elementhast-util-is-css-style— check if a node is a CSS style elementhast-util-embedded— check if a node is an embedded elementhast-util-heading— check if a node is a heading elementhast-util-interactive— check if a node is interactivehast-util-is-javascript— check if a node is a JavaScript script elementhast-util-phrasing— check if a node is phrasing contenthast-util-script-supporting— check if a node is a script-supporting elementhast-util-sectioning— check if a node is a sectioning elementhast-util-transparent— check if a node is a transparent elementhast-util-whitespace— check if a node is inter-element whitespace
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.