GitHub - syntax-tree/hast-util-heading-rank: utility to get the rank (or depth, level) of headings (original) (raw)
hast-util-heading-rank
hast utility to get the rank (also known as depth or level) of headings.
Contents
- What is this?
- When should I use this?
- Install
- Use
- API
- Types
- Compatibility
- Security
- Related
- Contribute
- License
What is this?
This package is a utility that lets you get the rank (1
, 6
) of heading elements (h1
, h6
).
When should I use this?
This utility is pretty niche, if you’re here you probably know what you’re looking for!
To change heading ranks, usehast-util-shift-heading.
Install
This package is ESM only. In Node.js (version 16+), install with npm:
npm install hast-util-heading-rank
In Deno with esm.sh:
import {headingRank} from 'https://esm.sh/hast-util-heading-rank@3'
In browsers with esm.sh:
Use
import {h} from 'hastscript' import {headingRank} from 'hast-util-heading-rank'
headingRank(h('p', 'Alpha')) //=> undefined headingRank(h('h5', 'Alpha')) //=> 5
API
This package exports the identifier headingRank. There is no default export.
headingRank(node)
Get the rank (1
to 6
) of headings (h1
to h6
).
Parameters
node
(Node) — node to check
Returns
Rank of the heading (number
) or undefined
if not a heading.
Types
This package is fully typed with TypeScript. It exports no additional types.
Compatibility
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-heading-rank@^3
, compatible with Node.js 16.
Security
hast-util-heading-rank
does not mutate. There are no openings for cross-site scripting (XSS) attacks.
Related
- hast-util-heading— check if a node is heading content
- hast-util-shift-heading— change heading rank
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.