unified

Project: syntax-tree/mdast-util-definitions

Package: mdast-util-definitions@5.1.0

  1. Dependents: 55
  2. mdast utility to find definition nodes in a tree
  1. util 137
  2. markdown 137
  3. utility 133
  4. unist 120
  5. mdast 89
  6. tree 41
  7. mdast-util 30
  8. node 23
  9. definition 14
  10. find 10

mdast-util-definitions

Build Coverage Downloads Size Sponsors Backers Chat

mdast utility to get definitions by identifier.

Supports funky keys, like __proto__ or toString.

Install

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

npm:

npm install mdast-util-definitions

Use

import {remark} from 'remark'
import {definitions} from 'mdast-util-definitions'

const tree = remark().parse('[example]: https://example.com "Example"')

const definition = definitions(tree)

definition('example')
// => {type: 'definition', 'title': 'Example', …}

definition('foo')
// => null

API

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

definitions(tree)

Create a cache of all definitions in tree.

Uses CommonMark precedence: prefers the first definitions for duplicate definitions.

Returns

Function

definition(identifier)

Parameters
Returns

Node?Definition, if found.

Security

Use of mdast-util-definitions does not involve hast or user content so there are no openings for cross-site scripting (XSS) attacks.

Additionally, safe guards are in place to protect against prototype poisoning.

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