async-unist-util-visit

Recursively walk over unist nodes

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
async-unist-util-visit
17201.0.07 years ago7 years agoMinified + gzip package size for async-unist-util-visit in KB

Readme

Unist node visitor. Useful with working with remarkremark or retextretext.

Installation

npm install unist-util-visit
**unist-util-visit** is also available as an AMD, CommonJS, and
globals module, [uncompressed and compressed][releases].

## Usage

Dependencies:

```javascript
var remark = require('remark');
var visit = require('unist-util-visit');

remark().use(function () {
    return function (ast) {
        visit(ast, 'text', function (node) {
          console.log(node)
        });
    };
}).process('Some _emphasis_, **strongness**, and `code`.');

Yields:
{'type': 'text', 'value': 'Some '}
{'type': 'text', 'value': 'emphasis'}
{'type': 'text', 'value': ', '}
{'type': 'text', 'value': 'strongness'}
{'type': 'text', 'value': ', and '}
{'type': 'text', 'value': '.'}

API

visit(node[, type], visitor[, reverse])

Visit nodes. Optionally by node type. Optionally in reverse.
— Node to search;
  • type (string, optional)
— Node type;
— Visitor invoked when a node is found;
  • reverse (boolean, default: false)
— When falsey, checking starts at the first child and continues
through to later children.  When truthy, this is reversed.

This **does not** mean checking starts at the deepest node and
continues on to the highest node.

stop? = visitor(node, index, parent)

Invoked when a node (when type is given, matching type) is found.
Parameters:
  • node (Node) — Found node;
  • index (number?) — Position of node in parent;
  • index (Node?) — Parent of node.

Returns: boolean? - When false, visiting is immediately stopped.

License

MITlicense © Titus Wormerauthor