knowledgebase_law/node_modules/mdast-util-phrasing/lib/index.js

46 lines
1.0 KiB
JavaScript
Raw Normal View History

2025-04-11 23:47:09 +08:00
/**
* @typedef {import('mdast').Html} Html
* @typedef {import('mdast').PhrasingContent} PhrasingContent
*/
import {convert} from 'unist-util-is'
/**
* Check if the given value is *phrasing content*.
*
* > 👉 **Note**: Excludes `html`, which can be both phrasing or flow.
*
* @param node
* Thing to check, typically `Node`.
* @returns
* Whether `value` is phrasing content.
*/
export const phrasing =
/** @type {(node?: unknown) => node is Exclude<PhrasingContent, Html>} */
(
convert([
'break',
'delete',
'emphasis',
// To do: next major: removed since footnotes were added to GFM.
'footnote',
'footnoteReference',
'image',
'imageReference',
'inlineCode',
// Enabled by `mdast-util-math`:
'inlineMath',
'link',
'linkReference',
// Enabled by `mdast-util-mdx`:
'mdxJsxTextElement',
// Enabled by `mdast-util-mdx`:
'mdxTextExpression',
'strong',
'text',
// Enabled by `mdast-util-directive`:
'textDirective'
])
)