@yozora/ast-util
v2.4.0
Published
Utility functions to handle Yozora markdown ast
Readme
Utilities for collecting, transforming, searching, and annotating Yozora AST nodes.
Install
npm install --save @yozora/ast-utilUsage
| Area | Main exports |
| :------------- | :---------------------------------------------------------------------------------------- |
| Definitions | collectDefinitions, calcIdentifierSet, calcDefinitionMap |
| Footnotes | collectFootnoteDefinitions, calcFootnoteDefinitionMap, replaceFootnotesInReferences |
| Collection | collectNodes, collectInlineNodes, collectTexts |
| Traversal | traverseAst, searchNode, shallowCloneAst |
| Mutation | shallowMutateAstInPreorder, shallowMutateAstInPostorder and their async variants |
| Excerpts | calcExcerptAst, getExcerptAst |
| Headings | calcHeadingToc, calcIdentifierFromNodes |
| Positions/URLs | removePositions, resolveUrlsForAst, defaultUrlResolver |
Example
import type { Root } from '@yozora/ast'
import {
calcDefinitionMap,
calcExcerptAst,
calcHeadingToc,
} from '@yozora/ast-util'
declare const root: Root
const { definitionMap } = calcDefinitionMap(root)
const excerpt = calcExcerptAst(root, 200)
const toc = calcHeadingToc(root)