123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- /**
- * @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'
- ])
- )
|