@multiplatform.one/markdown 6.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -0
- package/dist/cjs/Aside/index.cjs +112 -0
- package/dist/cjs/Aside/index.native.js +119 -0
- package/dist/cjs/Aside/index.native.js.map +1 -0
- package/dist/cjs/ExternalIcon/ExternalIcon.spec.cjs +37 -0
- package/dist/cjs/ExternalIcon/ExternalIcon.spec.native.js +40 -0
- package/dist/cjs/ExternalIcon/ExternalIcon.spec.native.js.map +1 -0
- package/dist/cjs/ExternalIcon/index.cjs +46 -0
- package/dist/cjs/ExternalIcon/index.native.js +51 -0
- package/dist/cjs/ExternalIcon/index.native.js.map +1 -0
- package/dist/cjs/Hr/hr.spec.cjs +21 -0
- package/dist/cjs/Hr/hr.spec.native.js +24 -0
- package/dist/cjs/Hr/hr.spec.native.js.map +1 -0
- package/dist/cjs/Hr/index.cjs +41 -0
- package/dist/cjs/Hr/index.native.js +46 -0
- package/dist/cjs/Hr/index.native.js.map +1 -0
- package/dist/cjs/Li/index.cjs +38 -0
- package/dist/cjs/Li/index.native.js +41 -0
- package/dist/cjs/Li/index.native.js.map +1 -0
- package/dist/cjs/Li/li.spec.cjs +45 -0
- package/dist/cjs/Li/li.spec.native.js +50 -0
- package/dist/cjs/Li/li.spec.native.js.map +1 -0
- package/dist/cjs/Markdown.cjs +66 -0
- package/dist/cjs/Markdown.native.js +71 -0
- package/dist/cjs/Markdown.native.js.map +1 -0
- package/dist/cjs/Markdown.stories.cjs +153 -0
- package/dist/cjs/Markdown.stories.native.js +162 -0
- package/dist/cjs/Markdown.stories.native.js.map +1 -0
- package/dist/cjs/Mdx/index.cjs +58 -0
- package/dist/cjs/Mdx/index.native.js +62 -0
- package/dist/cjs/Mdx/index.native.js.map +1 -0
- package/dist/cjs/Mdx/mdx.spec.cjs +139 -0
- package/dist/cjs/Mdx/mdx.spec.native.js +158 -0
- package/dist/cjs/Mdx/mdx.spec.native.js.map +1 -0
- package/dist/cjs/MdxCodeBlock/index.cjs +185 -0
- package/dist/cjs/MdxCodeBlock/index.native.js +205 -0
- package/dist/cjs/MdxCodeBlock/index.native.js.map +1 -0
- package/dist/cjs/MdxCodeBlock/mdxCodeBlock.spec.cjs +90 -0
- package/dist/cjs/MdxCodeBlock/mdxCodeBlock.spec.native.js +122 -0
- package/dist/cjs/MdxCodeBlock/mdxCodeBlock.spec.native.js.map +1 -0
- package/dist/cjs/MdxCodeBlock/mdxCodeBlockContext.cjs +29 -0
- package/dist/cjs/MdxCodeBlock/mdxCodeBlockContext.native.js +32 -0
- package/dist/cjs/MdxCodeBlock/mdxCodeBlockContext.native.js.map +1 -0
- package/dist/cjs/Notice/index.cjs +94 -0
- package/dist/cjs/Notice/index.native.js +98 -0
- package/dist/cjs/Notice/index.native.js.map +1 -0
- package/dist/cjs/SimpleTable/index.cjs +132 -0
- package/dist/cjs/SimpleTable/index.native.js +162 -0
- package/dist/cjs/SimpleTable/index.native.js.map +1 -0
- package/dist/cjs/Table/index.cjs +121 -0
- package/dist/cjs/Table/index.native.js +130 -0
- package/dist/cjs/Table/index.native.js.map +1 -0
- package/dist/cjs/Tabs/index.cjs +93 -0
- package/dist/cjs/Tabs/index.native.js +103 -0
- package/dist/cjs/Tabs/index.native.js.map +1 -0
- package/dist/cjs/Ul/index.cjs +35 -0
- package/dist/cjs/Ul/index.native.js +38 -0
- package/dist/cjs/Ul/index.native.js.map +1 -0
- package/dist/cjs/Ul/ul.spec.cjs +150 -0
- package/dist/cjs/Ul/ul.spec.native.js +153 -0
- package/dist/cjs/Ul/ul.spec.native.js.map +1 -0
- package/dist/cjs/Video/index.cjs +84 -0
- package/dist/cjs/Video/index.native.js +89 -0
- package/dist/cjs/Video/index.native.js.map +1 -0
- package/dist/cjs/components/Blockquote.cjs +47 -0
- package/dist/cjs/components/Blockquote.native.js +51 -0
- package/dist/cjs/components/Blockquote.native.js.map +1 -0
- package/dist/cjs/components/Break.cjs +34 -0
- package/dist/cjs/components/Break.native.js +37 -0
- package/dist/cjs/components/Break.native.js.map +1 -0
- package/dist/cjs/components/CodeBlock.cjs +109 -0
- package/dist/cjs/components/CodeBlock.native.js +119 -0
- package/dist/cjs/components/CodeBlock.native.js.map +1 -0
- package/dist/cjs/components/Heading.cjs +48 -0
- package/dist/cjs/components/Heading.native.js +52 -0
- package/dist/cjs/components/Heading.native.js.map +1 -0
- package/dist/cjs/components/HorizontalRule.cjs +34 -0
- package/dist/cjs/components/HorizontalRule.native.js +37 -0
- package/dist/cjs/components/HorizontalRule.native.js.map +1 -0
- package/dist/cjs/components/Image.cjs +53 -0
- package/dist/cjs/components/Image.native.js +57 -0
- package/dist/cjs/components/Image.native.js.map +1 -0
- package/dist/cjs/components/InlineCode.cjs +48 -0
- package/dist/cjs/components/InlineCode.native.js +52 -0
- package/dist/cjs/components/InlineCode.native.js.map +1 -0
- package/dist/cjs/components/InlineStyles.cjs +55 -0
- package/dist/cjs/components/InlineStyles.native.js +61 -0
- package/dist/cjs/components/InlineStyles.native.js.map +1 -0
- package/dist/cjs/components/Link.cjs +54 -0
- package/dist/cjs/components/Link.native.js +58 -0
- package/dist/cjs/components/Link.native.js.map +1 -0
- package/dist/cjs/components/List.cjs +74 -0
- package/dist/cjs/components/List.native.js +79 -0
- package/dist/cjs/components/List.native.js.map +1 -0
- package/dist/cjs/components/Paragraph.cjs +38 -0
- package/dist/cjs/components/Paragraph.native.js +42 -0
- package/dist/cjs/components/Paragraph.native.js.map +1 -0
- package/dist/cjs/components/Table.cjs +86 -0
- package/dist/cjs/components/Table.native.js +92 -0
- package/dist/cjs/components/Table.native.js.map +1 -0
- package/dist/cjs/components/index.cjs +55 -0
- package/dist/cjs/components/index.native.js +58 -0
- package/dist/cjs/components/index.native.js.map +1 -0
- package/dist/cjs/hooks/index.cjs +22 -0
- package/dist/cjs/hooks/index.native.js +25 -0
- package/dist/cjs/hooks/index.native.js.map +1 -0
- package/dist/cjs/hooks/useCompileAndEvaluateMdx.cjs +42 -0
- package/dist/cjs/hooks/useCompileAndEvaluateMdx.native.js +45 -0
- package/dist/cjs/hooks/useCompileAndEvaluateMdx.native.js.map +1 -0
- package/dist/cjs/hooks/useCompileAndEvaluateMdx.spec.cjs +34 -0
- package/dist/cjs/hooks/useCompileAndEvaluateMdx.spec.native.js +49 -0
- package/dist/cjs/hooks/useCompileAndEvaluateMdx.spec.native.js.map +1 -0
- package/dist/cjs/hooks/useCompileMdx.cjs +80 -0
- package/dist/cjs/hooks/useCompileMdx.native.js +83 -0
- package/dist/cjs/hooks/useCompileMdx.native.js.map +1 -0
- package/dist/cjs/hooks/useEvaluateMdx.cjs +58 -0
- package/dist/cjs/hooks/useEvaluateMdx.native.js +63 -0
- package/dist/cjs/hooks/useEvaluateMdx.native.js.map +1 -0
- package/dist/cjs/icons/index.cjs +205 -0
- package/dist/cjs/icons/index.native.js +226 -0
- package/dist/cjs/icons/index.native.js.map +1 -0
- package/dist/cjs/index.cjs +51 -0
- package/dist/cjs/index.native.js +54 -0
- package/dist/cjs/index.native.js.map +1 -0
- package/dist/cjs/mdx.spec.cjs +400 -0
- package/dist/cjs/mdx.spec.native.js +465 -0
- package/dist/cjs/mdx.spec.native.js.map +1 -0
- package/dist/cjs/mdxComponents.cjs +317 -0
- package/dist/cjs/mdxComponents.native.js +376 -0
- package/dist/cjs/mdxComponents.native.js.map +1 -0
- package/dist/cjs/parser.cjs +49 -0
- package/dist/cjs/parser.native.js +52 -0
- package/dist/cjs/parser.native.js.map +1 -0
- package/dist/cjs/parser.spec.cjs +109 -0
- package/dist/cjs/parser.spec.native.js +114 -0
- package/dist/cjs/parser.spec.native.js.map +1 -0
- package/dist/cjs/renderer.cjs +326 -0
- package/dist/cjs/renderer.native.js +348 -0
- package/dist/cjs/renderer.native.js.map +1 -0
- package/dist/cjs/shared/colorRamps.cjs +74 -0
- package/dist/cjs/shared/colorRamps.native.js +77 -0
- package/dist/cjs/shared/colorRamps.native.js.map +1 -0
- package/dist/cjs/shared/index.cjs +20 -0
- package/dist/cjs/shared/index.native.js +23 -0
- package/dist/cjs/shared/index.native.js.map +1 -0
- package/dist/cjs/shiki/highlighter.cjs +89 -0
- package/dist/cjs/shiki/highlighter.native.js +94 -0
- package/dist/cjs/shiki/highlighter.native.js.map +1 -0
- package/dist/cjs/shiki/index.cjs +33 -0
- package/dist/cjs/shiki/index.native.js +36 -0
- package/dist/cjs/shiki/index.native.js.map +1 -0
- package/dist/cjs/types.cjs +18 -0
- package/dist/cjs/types.native.js +21 -0
- package/dist/cjs/types.native.js.map +1 -0
- package/dist/cjs/util/rehypeMetaAttributes.cjs +45 -0
- package/dist/cjs/util/rehypeMetaAttributes.native.js +49 -0
- package/dist/cjs/util/rehypeMetaAttributes.native.js.map +1 -0
- package/dist/cjs/util/util.spec.cjs +81 -0
- package/dist/cjs/util/util.spec.native.js +84 -0
- package/dist/cjs/util/util.spec.native.js.map +1 -0
- package/dist/esm/Aside/index.mjs +86 -0
- package/dist/esm/Aside/index.mjs.map +1 -0
- package/dist/esm/Aside/index.native.js +90 -0
- package/dist/esm/Aside/index.native.js.map +1 -0
- package/dist/esm/ExternalIcon/ExternalIcon.spec.mjs +38 -0
- package/dist/esm/ExternalIcon/ExternalIcon.spec.mjs.map +1 -0
- package/dist/esm/ExternalIcon/ExternalIcon.spec.native.js +38 -0
- package/dist/esm/ExternalIcon/ExternalIcon.spec.native.js.map +1 -0
- package/dist/esm/ExternalIcon/index.mjs +21 -0
- package/dist/esm/ExternalIcon/index.mjs.map +1 -0
- package/dist/esm/ExternalIcon/index.native.js +23 -0
- package/dist/esm/ExternalIcon/index.native.js.map +1 -0
- package/dist/esm/Hr/hr.spec.mjs +22 -0
- package/dist/esm/Hr/hr.spec.mjs.map +1 -0
- package/dist/esm/Hr/hr.spec.native.js +22 -0
- package/dist/esm/Hr/hr.spec.native.js.map +1 -0
- package/dist/esm/Hr/index.mjs +16 -0
- package/dist/esm/Hr/index.mjs.map +1 -0
- package/dist/esm/Hr/index.native.js +18 -0
- package/dist/esm/Hr/index.native.js.map +1 -0
- package/dist/esm/Li/index.mjs +13 -0
- package/dist/esm/Li/index.mjs.map +1 -0
- package/dist/esm/Li/index.native.js +13 -0
- package/dist/esm/Li/index.native.js.map +1 -0
- package/dist/esm/Li/li.spec.mjs +46 -0
- package/dist/esm/Li/li.spec.mjs.map +1 -0
- package/dist/esm/Li/li.spec.native.js +48 -0
- package/dist/esm/Li/li.spec.native.js.map +1 -0
- package/dist/esm/Markdown.mjs +41 -0
- package/dist/esm/Markdown.mjs.map +1 -0
- package/dist/esm/Markdown.native.js +43 -0
- package/dist/esm/Markdown.native.js.map +1 -0
- package/dist/esm/Markdown.stories.mjs +125 -0
- package/dist/esm/Markdown.stories.mjs.map +1 -0
- package/dist/esm/Markdown.stories.native.js +131 -0
- package/dist/esm/Markdown.stories.native.js.map +1 -0
- package/dist/esm/Mdx/index.mjs +33 -0
- package/dist/esm/Mdx/index.mjs.map +1 -0
- package/dist/esm/Mdx/index.native.js +34 -0
- package/dist/esm/Mdx/index.native.js.map +1 -0
- package/dist/esm/Mdx/mdx.spec.mjs +140 -0
- package/dist/esm/Mdx/mdx.spec.mjs.map +1 -0
- package/dist/esm/Mdx/mdx.spec.native.js +156 -0
- package/dist/esm/Mdx/mdx.spec.native.js.map +1 -0
- package/dist/esm/MdxCodeBlock/index.mjs +149 -0
- package/dist/esm/MdxCodeBlock/index.mjs.map +1 -0
- package/dist/esm/MdxCodeBlock/index.native.js +166 -0
- package/dist/esm/MdxCodeBlock/index.native.js.map +1 -0
- package/dist/esm/MdxCodeBlock/mdxCodeBlock.spec.mjs +91 -0
- package/dist/esm/MdxCodeBlock/mdxCodeBlock.spec.mjs.map +1 -0
- package/dist/esm/MdxCodeBlock/mdxCodeBlock.spec.native.js +96 -0
- package/dist/esm/MdxCodeBlock/mdxCodeBlock.spec.native.js.map +1 -0
- package/dist/esm/MdxCodeBlock/mdxCodeBlockContext.mjs +4 -0
- package/dist/esm/MdxCodeBlock/mdxCodeBlockContext.mjs.map +1 -0
- package/dist/esm/MdxCodeBlock/mdxCodeBlockContext.native.js +4 -0
- package/dist/esm/MdxCodeBlock/mdxCodeBlockContext.native.js.map +1 -0
- package/dist/esm/Notice/index.mjs +68 -0
- package/dist/esm/Notice/index.mjs.map +1 -0
- package/dist/esm/Notice/index.native.js +69 -0
- package/dist/esm/Notice/index.native.js.map +1 -0
- package/dist/esm/SimpleTable/index.mjs +107 -0
- package/dist/esm/SimpleTable/index.mjs.map +1 -0
- package/dist/esm/SimpleTable/index.native.js +134 -0
- package/dist/esm/SimpleTable/index.native.js.map +1 -0
- package/dist/esm/Table/index.mjs +91 -0
- package/dist/esm/Table/index.mjs.map +1 -0
- package/dist/esm/Table/index.native.js +97 -0
- package/dist/esm/Table/index.native.js.map +1 -0
- package/dist/esm/Tabs/index.mjs +67 -0
- package/dist/esm/Tabs/index.mjs.map +1 -0
- package/dist/esm/Tabs/index.native.js +74 -0
- package/dist/esm/Tabs/index.native.js.map +1 -0
- package/dist/esm/Ul/index.mjs +10 -0
- package/dist/esm/Ul/index.mjs.map +1 -0
- package/dist/esm/Ul/index.native.js +10 -0
- package/dist/esm/Ul/index.native.js.map +1 -0
- package/dist/esm/Ul/ul.spec.mjs +151 -0
- package/dist/esm/Ul/ul.spec.mjs.map +1 -0
- package/dist/esm/Ul/ul.spec.native.js +151 -0
- package/dist/esm/Ul/ul.spec.native.js.map +1 -0
- package/dist/esm/Video/index.mjs +59 -0
- package/dist/esm/Video/index.mjs.map +1 -0
- package/dist/esm/Video/index.native.js +61 -0
- package/dist/esm/Video/index.native.js.map +1 -0
- package/dist/esm/components/Blockquote.mjs +22 -0
- package/dist/esm/components/Blockquote.mjs.map +1 -0
- package/dist/esm/components/Blockquote.native.js +23 -0
- package/dist/esm/components/Blockquote.native.js.map +1 -0
- package/dist/esm/components/Break.mjs +9 -0
- package/dist/esm/components/Break.mjs.map +1 -0
- package/dist/esm/components/Break.native.js +9 -0
- package/dist/esm/components/Break.native.js.map +1 -0
- package/dist/esm/components/CodeBlock.mjs +84 -0
- package/dist/esm/components/CodeBlock.mjs.map +1 -0
- package/dist/esm/components/CodeBlock.native.js +91 -0
- package/dist/esm/components/CodeBlock.native.js.map +1 -0
- package/dist/esm/components/Heading.mjs +23 -0
- package/dist/esm/components/Heading.mjs.map +1 -0
- package/dist/esm/components/Heading.native.js +24 -0
- package/dist/esm/components/Heading.native.js.map +1 -0
- package/dist/esm/components/HorizontalRule.mjs +9 -0
- package/dist/esm/components/HorizontalRule.mjs.map +1 -0
- package/dist/esm/components/HorizontalRule.native.js +9 -0
- package/dist/esm/components/HorizontalRule.native.js.map +1 -0
- package/dist/esm/components/Image.mjs +28 -0
- package/dist/esm/components/Image.mjs.map +1 -0
- package/dist/esm/components/Image.native.js +29 -0
- package/dist/esm/components/Image.native.js.map +1 -0
- package/dist/esm/components/InlineCode.mjs +23 -0
- package/dist/esm/components/InlineCode.mjs.map +1 -0
- package/dist/esm/components/InlineCode.native.js +24 -0
- package/dist/esm/components/InlineCode.native.js.map +1 -0
- package/dist/esm/components/InlineStyles.mjs +28 -0
- package/dist/esm/components/InlineStyles.mjs.map +1 -0
- package/dist/esm/components/InlineStyles.native.js +31 -0
- package/dist/esm/components/InlineStyles.native.js.map +1 -0
- package/dist/esm/components/Link.mjs +29 -0
- package/dist/esm/components/Link.mjs.map +1 -0
- package/dist/esm/components/Link.native.js +30 -0
- package/dist/esm/components/Link.native.js.map +1 -0
- package/dist/esm/components/List.mjs +48 -0
- package/dist/esm/components/List.mjs.map +1 -0
- package/dist/esm/components/List.native.js +50 -0
- package/dist/esm/components/List.native.js.map +1 -0
- package/dist/esm/components/Paragraph.mjs +13 -0
- package/dist/esm/components/Paragraph.mjs.map +1 -0
- package/dist/esm/components/Paragraph.native.js +14 -0
- package/dist/esm/components/Paragraph.native.js.map +1 -0
- package/dist/esm/components/Table.mjs +59 -0
- package/dist/esm/components/Table.mjs.map +1 -0
- package/dist/esm/components/Table.native.js +62 -0
- package/dist/esm/components/Table.native.js.map +1 -0
- package/dist/esm/components/index.mjs +14 -0
- package/dist/esm/components/index.mjs.map +1 -0
- package/dist/esm/components/index.native.js +14 -0
- package/dist/esm/components/index.native.js.map +1 -0
- package/dist/esm/hooks/index.mjs +4 -0
- package/dist/esm/hooks/index.mjs.map +1 -0
- package/dist/esm/hooks/index.native.js +4 -0
- package/dist/esm/hooks/index.native.js.map +1 -0
- package/dist/esm/hooks/useCompileAndEvaluateMdx.mjs +17 -0
- package/dist/esm/hooks/useCompileAndEvaluateMdx.mjs.map +1 -0
- package/dist/esm/hooks/useCompileAndEvaluateMdx.native.js +17 -0
- package/dist/esm/hooks/useCompileAndEvaluateMdx.native.js.map +1 -0
- package/dist/esm/hooks/useCompileAndEvaluateMdx.spec.mjs +35 -0
- package/dist/esm/hooks/useCompileAndEvaluateMdx.spec.mjs.map +1 -0
- package/dist/esm/hooks/useCompileAndEvaluateMdx.spec.native.js +47 -0
- package/dist/esm/hooks/useCompileAndEvaluateMdx.spec.native.js.map +1 -0
- package/dist/esm/hooks/useCompileMdx.mjs +44 -0
- package/dist/esm/hooks/useCompileMdx.mjs.map +1 -0
- package/dist/esm/hooks/useCompileMdx.native.js +44 -0
- package/dist/esm/hooks/useCompileMdx.native.js.map +1 -0
- package/dist/esm/hooks/useEvaluateMdx.mjs +22 -0
- package/dist/esm/hooks/useEvaluateMdx.mjs.map +1 -0
- package/dist/esm/hooks/useEvaluateMdx.native.js +24 -0
- package/dist/esm/hooks/useEvaluateMdx.native.js.map +1 -0
- package/dist/esm/icons/index.mjs +175 -0
- package/dist/esm/icons/index.mjs.map +1 -0
- package/dist/esm/icons/index.native.js +193 -0
- package/dist/esm/icons/index.native.js.map +1 -0
- package/dist/esm/index.mjs +21 -0
- package/dist/esm/index.mjs.map +1 -0
- package/dist/esm/index.native.js +21 -0
- package/dist/esm/index.native.js.map +1 -0
- package/dist/esm/mdx.spec.mjs +377 -0
- package/dist/esm/mdx.spec.mjs.map +1 -0
- package/dist/esm/mdx.spec.native.js +439 -0
- package/dist/esm/mdx.spec.native.js.map +1 -0
- package/dist/esm/mdxComponents.mjs +291 -0
- package/dist/esm/mdxComponents.mjs.map +1 -0
- package/dist/esm/mdxComponents.native.js +347 -0
- package/dist/esm/mdxComponents.native.js.map +1 -0
- package/dist/esm/parser.mjs +12 -0
- package/dist/esm/parser.mjs.map +1 -0
- package/dist/esm/parser.native.js +12 -0
- package/dist/esm/parser.native.js.map +1 -0
- package/dist/esm/parser.spec.mjs +110 -0
- package/dist/esm/parser.spec.mjs.map +1 -0
- package/dist/esm/parser.spec.native.js +112 -0
- package/dist/esm/parser.spec.native.js.map +1 -0
- package/dist/esm/renderer.mjs +300 -0
- package/dist/esm/renderer.mjs.map +1 -0
- package/dist/esm/renderer.native.js +319 -0
- package/dist/esm/renderer.native.js.map +1 -0
- package/dist/esm/shared/colorRamps.mjs +45 -0
- package/dist/esm/shared/colorRamps.mjs.map +1 -0
- package/dist/esm/shared/colorRamps.native.js +45 -0
- package/dist/esm/shared/colorRamps.native.js.map +1 -0
- package/dist/esm/shared/index.mjs +2 -0
- package/dist/esm/shared/index.mjs.map +1 -0
- package/dist/esm/shared/index.native.js +2 -0
- package/dist/esm/shared/index.native.js.map +1 -0
- package/dist/esm/shiki/highlighter.mjs +59 -0
- package/dist/esm/shiki/highlighter.mjs.map +1 -0
- package/dist/esm/shiki/highlighter.native.js +61 -0
- package/dist/esm/shiki/highlighter.native.js.map +1 -0
- package/dist/esm/shiki/index.mjs +3 -0
- package/dist/esm/shiki/index.mjs.map +1 -0
- package/dist/esm/shiki/index.native.js +3 -0
- package/dist/esm/shiki/index.native.js.map +1 -0
- package/dist/esm/types.mjs +2 -0
- package/dist/esm/types.mjs.map +1 -0
- package/dist/esm/types.native.js +2 -0
- package/dist/esm/types.native.js.map +1 -0
- package/dist/esm/util/rehypeMetaAttributes.mjs +20 -0
- package/dist/esm/util/rehypeMetaAttributes.mjs.map +1 -0
- package/dist/esm/util/rehypeMetaAttributes.native.js +21 -0
- package/dist/esm/util/rehypeMetaAttributes.native.js.map +1 -0
- package/dist/esm/util/util.spec.mjs +82 -0
- package/dist/esm/util/util.spec.mjs.map +1 -0
- package/dist/esm/util/util.spec.native.js +82 -0
- package/dist/esm/util/util.spec.native.js.map +1 -0
- package/dist/jsx/Aside/index.mjs +86 -0
- package/dist/jsx/Aside/index.mjs.map +1 -0
- package/dist/jsx/Aside/index.native.js +119 -0
- package/dist/jsx/Aside/index.native.js.map +1 -0
- package/dist/jsx/ExternalIcon/ExternalIcon.spec.mjs +38 -0
- package/dist/jsx/ExternalIcon/ExternalIcon.spec.mjs.map +1 -0
- package/dist/jsx/ExternalIcon/ExternalIcon.spec.native.js +40 -0
- package/dist/jsx/ExternalIcon/ExternalIcon.spec.native.js.map +1 -0
- package/dist/jsx/ExternalIcon/index.mjs +21 -0
- package/dist/jsx/ExternalIcon/index.mjs.map +1 -0
- package/dist/jsx/ExternalIcon/index.native.js +51 -0
- package/dist/jsx/ExternalIcon/index.native.js.map +1 -0
- package/dist/jsx/Hr/hr.spec.mjs +22 -0
- package/dist/jsx/Hr/hr.spec.mjs.map +1 -0
- package/dist/jsx/Hr/hr.spec.native.js +24 -0
- package/dist/jsx/Hr/hr.spec.native.js.map +1 -0
- package/dist/jsx/Hr/index.mjs +16 -0
- package/dist/jsx/Hr/index.mjs.map +1 -0
- package/dist/jsx/Hr/index.native.js +46 -0
- package/dist/jsx/Hr/index.native.js.map +1 -0
- package/dist/jsx/Li/index.mjs +13 -0
- package/dist/jsx/Li/index.mjs.map +1 -0
- package/dist/jsx/Li/index.native.js +41 -0
- package/dist/jsx/Li/index.native.js.map +1 -0
- package/dist/jsx/Li/li.spec.mjs +46 -0
- package/dist/jsx/Li/li.spec.mjs.map +1 -0
- package/dist/jsx/Li/li.spec.native.js +50 -0
- package/dist/jsx/Li/li.spec.native.js.map +1 -0
- package/dist/jsx/Markdown.mjs +41 -0
- package/dist/jsx/Markdown.mjs.map +1 -0
- package/dist/jsx/Markdown.native.js +71 -0
- package/dist/jsx/Markdown.native.js.map +1 -0
- package/dist/jsx/Markdown.stories.mjs +125 -0
- package/dist/jsx/Markdown.stories.mjs.map +1 -0
- package/dist/jsx/Markdown.stories.native.js +162 -0
- package/dist/jsx/Markdown.stories.native.js.map +1 -0
- package/dist/jsx/Mdx/index.mjs +33 -0
- package/dist/jsx/Mdx/index.mjs.map +1 -0
- package/dist/jsx/Mdx/index.native.js +62 -0
- package/dist/jsx/Mdx/index.native.js.map +1 -0
- package/dist/jsx/Mdx/mdx.spec.mjs +140 -0
- package/dist/jsx/Mdx/mdx.spec.mjs.map +1 -0
- package/dist/jsx/Mdx/mdx.spec.native.js +158 -0
- package/dist/jsx/Mdx/mdx.spec.native.js.map +1 -0
- package/dist/jsx/MdxCodeBlock/index.mjs +149 -0
- package/dist/jsx/MdxCodeBlock/index.mjs.map +1 -0
- package/dist/jsx/MdxCodeBlock/index.native.js +205 -0
- package/dist/jsx/MdxCodeBlock/index.native.js.map +1 -0
- package/dist/jsx/MdxCodeBlock/mdxCodeBlock.spec.mjs +91 -0
- package/dist/jsx/MdxCodeBlock/mdxCodeBlock.spec.mjs.map +1 -0
- package/dist/jsx/MdxCodeBlock/mdxCodeBlock.spec.native.js +122 -0
- package/dist/jsx/MdxCodeBlock/mdxCodeBlock.spec.native.js.map +1 -0
- package/dist/jsx/MdxCodeBlock/mdxCodeBlockContext.mjs +4 -0
- package/dist/jsx/MdxCodeBlock/mdxCodeBlockContext.mjs.map +1 -0
- package/dist/jsx/MdxCodeBlock/mdxCodeBlockContext.native.js +32 -0
- package/dist/jsx/MdxCodeBlock/mdxCodeBlockContext.native.js.map +1 -0
- package/dist/jsx/Notice/index.mjs +68 -0
- package/dist/jsx/Notice/index.mjs.map +1 -0
- package/dist/jsx/Notice/index.native.js +98 -0
- package/dist/jsx/Notice/index.native.js.map +1 -0
- package/dist/jsx/SimpleTable/index.mjs +107 -0
- package/dist/jsx/SimpleTable/index.mjs.map +1 -0
- package/dist/jsx/SimpleTable/index.native.js +162 -0
- package/dist/jsx/SimpleTable/index.native.js.map +1 -0
- package/dist/jsx/Table/index.mjs +91 -0
- package/dist/jsx/Table/index.mjs.map +1 -0
- package/dist/jsx/Table/index.native.js +130 -0
- package/dist/jsx/Table/index.native.js.map +1 -0
- package/dist/jsx/Tabs/index.mjs +67 -0
- package/dist/jsx/Tabs/index.mjs.map +1 -0
- package/dist/jsx/Tabs/index.native.js +103 -0
- package/dist/jsx/Tabs/index.native.js.map +1 -0
- package/dist/jsx/Ul/index.mjs +10 -0
- package/dist/jsx/Ul/index.mjs.map +1 -0
- package/dist/jsx/Ul/index.native.js +38 -0
- package/dist/jsx/Ul/index.native.js.map +1 -0
- package/dist/jsx/Ul/ul.spec.mjs +151 -0
- package/dist/jsx/Ul/ul.spec.mjs.map +1 -0
- package/dist/jsx/Ul/ul.spec.native.js +153 -0
- package/dist/jsx/Ul/ul.spec.native.js.map +1 -0
- package/dist/jsx/Video/index.mjs +59 -0
- package/dist/jsx/Video/index.mjs.map +1 -0
- package/dist/jsx/Video/index.native.js +89 -0
- package/dist/jsx/Video/index.native.js.map +1 -0
- package/dist/jsx/components/Blockquote.mjs +22 -0
- package/dist/jsx/components/Blockquote.mjs.map +1 -0
- package/dist/jsx/components/Blockquote.native.js +51 -0
- package/dist/jsx/components/Blockquote.native.js.map +1 -0
- package/dist/jsx/components/Break.mjs +9 -0
- package/dist/jsx/components/Break.mjs.map +1 -0
- package/dist/jsx/components/Break.native.js +37 -0
- package/dist/jsx/components/Break.native.js.map +1 -0
- package/dist/jsx/components/CodeBlock.mjs +84 -0
- package/dist/jsx/components/CodeBlock.mjs.map +1 -0
- package/dist/jsx/components/CodeBlock.native.js +119 -0
- package/dist/jsx/components/CodeBlock.native.js.map +1 -0
- package/dist/jsx/components/Heading.mjs +23 -0
- package/dist/jsx/components/Heading.mjs.map +1 -0
- package/dist/jsx/components/Heading.native.js +52 -0
- package/dist/jsx/components/Heading.native.js.map +1 -0
- package/dist/jsx/components/HorizontalRule.mjs +9 -0
- package/dist/jsx/components/HorizontalRule.mjs.map +1 -0
- package/dist/jsx/components/HorizontalRule.native.js +37 -0
- package/dist/jsx/components/HorizontalRule.native.js.map +1 -0
- package/dist/jsx/components/Image.mjs +28 -0
- package/dist/jsx/components/Image.mjs.map +1 -0
- package/dist/jsx/components/Image.native.js +57 -0
- package/dist/jsx/components/Image.native.js.map +1 -0
- package/dist/jsx/components/InlineCode.mjs +23 -0
- package/dist/jsx/components/InlineCode.mjs.map +1 -0
- package/dist/jsx/components/InlineCode.native.js +52 -0
- package/dist/jsx/components/InlineCode.native.js.map +1 -0
- package/dist/jsx/components/InlineStyles.mjs +28 -0
- package/dist/jsx/components/InlineStyles.mjs.map +1 -0
- package/dist/jsx/components/InlineStyles.native.js +61 -0
- package/dist/jsx/components/InlineStyles.native.js.map +1 -0
- package/dist/jsx/components/Link.mjs +29 -0
- package/dist/jsx/components/Link.mjs.map +1 -0
- package/dist/jsx/components/Link.native.js +58 -0
- package/dist/jsx/components/Link.native.js.map +1 -0
- package/dist/jsx/components/List.mjs +48 -0
- package/dist/jsx/components/List.mjs.map +1 -0
- package/dist/jsx/components/List.native.js +79 -0
- package/dist/jsx/components/List.native.js.map +1 -0
- package/dist/jsx/components/Paragraph.mjs +13 -0
- package/dist/jsx/components/Paragraph.mjs.map +1 -0
- package/dist/jsx/components/Paragraph.native.js +42 -0
- package/dist/jsx/components/Paragraph.native.js.map +1 -0
- package/dist/jsx/components/Table.mjs +59 -0
- package/dist/jsx/components/Table.mjs.map +1 -0
- package/dist/jsx/components/Table.native.js +92 -0
- package/dist/jsx/components/Table.native.js.map +1 -0
- package/dist/jsx/components/index.mjs +14 -0
- package/dist/jsx/components/index.mjs.map +1 -0
- package/dist/jsx/components/index.native.js +58 -0
- package/dist/jsx/components/index.native.js.map +1 -0
- package/dist/jsx/hooks/index.mjs +4 -0
- package/dist/jsx/hooks/index.mjs.map +1 -0
- package/dist/jsx/hooks/index.native.js +25 -0
- package/dist/jsx/hooks/index.native.js.map +1 -0
- package/dist/jsx/hooks/useCompileAndEvaluateMdx.mjs +17 -0
- package/dist/jsx/hooks/useCompileAndEvaluateMdx.mjs.map +1 -0
- package/dist/jsx/hooks/useCompileAndEvaluateMdx.native.js +45 -0
- package/dist/jsx/hooks/useCompileAndEvaluateMdx.native.js.map +1 -0
- package/dist/jsx/hooks/useCompileAndEvaluateMdx.spec.mjs +35 -0
- package/dist/jsx/hooks/useCompileAndEvaluateMdx.spec.mjs.map +1 -0
- package/dist/jsx/hooks/useCompileAndEvaluateMdx.spec.native.js +49 -0
- package/dist/jsx/hooks/useCompileAndEvaluateMdx.spec.native.js.map +1 -0
- package/dist/jsx/hooks/useCompileMdx.mjs +44 -0
- package/dist/jsx/hooks/useCompileMdx.mjs.map +1 -0
- package/dist/jsx/hooks/useCompileMdx.native.js +83 -0
- package/dist/jsx/hooks/useCompileMdx.native.js.map +1 -0
- package/dist/jsx/hooks/useEvaluateMdx.mjs +22 -0
- package/dist/jsx/hooks/useEvaluateMdx.mjs.map +1 -0
- package/dist/jsx/hooks/useEvaluateMdx.native.js +63 -0
- package/dist/jsx/hooks/useEvaluateMdx.native.js.map +1 -0
- package/dist/jsx/icons/index.mjs +175 -0
- package/dist/jsx/icons/index.mjs.map +1 -0
- package/dist/jsx/icons/index.native.js +226 -0
- package/dist/jsx/icons/index.native.js.map +1 -0
- package/dist/jsx/index.js +21 -0
- package/dist/jsx/index.js.map +1 -0
- package/dist/jsx/index.mjs +21 -0
- package/dist/jsx/index.mjs.map +1 -0
- package/dist/jsx/index.native.js +54 -0
- package/dist/jsx/index.native.js.map +1 -0
- package/dist/jsx/mdx.spec.mjs +377 -0
- package/dist/jsx/mdx.spec.mjs.map +1 -0
- package/dist/jsx/mdx.spec.native.js +465 -0
- package/dist/jsx/mdx.spec.native.js.map +1 -0
- package/dist/jsx/mdxComponents.mjs +291 -0
- package/dist/jsx/mdxComponents.mjs.map +1 -0
- package/dist/jsx/mdxComponents.native.js +376 -0
- package/dist/jsx/mdxComponents.native.js.map +1 -0
- package/dist/jsx/parser.mjs +12 -0
- package/dist/jsx/parser.mjs.map +1 -0
- package/dist/jsx/parser.native.js +52 -0
- package/dist/jsx/parser.native.js.map +1 -0
- package/dist/jsx/parser.spec.mjs +110 -0
- package/dist/jsx/parser.spec.mjs.map +1 -0
- package/dist/jsx/parser.spec.native.js +114 -0
- package/dist/jsx/parser.spec.native.js.map +1 -0
- package/dist/jsx/renderer.mjs +300 -0
- package/dist/jsx/renderer.mjs.map +1 -0
- package/dist/jsx/renderer.native.js +348 -0
- package/dist/jsx/renderer.native.js.map +1 -0
- package/dist/jsx/shared/colorRamps.mjs +45 -0
- package/dist/jsx/shared/colorRamps.mjs.map +1 -0
- package/dist/jsx/shared/colorRamps.native.js +77 -0
- package/dist/jsx/shared/colorRamps.native.js.map +1 -0
- package/dist/jsx/shared/index.mjs +2 -0
- package/dist/jsx/shared/index.mjs.map +1 -0
- package/dist/jsx/shared/index.native.js +23 -0
- package/dist/jsx/shared/index.native.js.map +1 -0
- package/dist/jsx/shiki/highlighter.mjs +59 -0
- package/dist/jsx/shiki/highlighter.mjs.map +1 -0
- package/dist/jsx/shiki/highlighter.native.js +94 -0
- package/dist/jsx/shiki/highlighter.native.js.map +1 -0
- package/dist/jsx/shiki/index.mjs +3 -0
- package/dist/jsx/shiki/index.mjs.map +1 -0
- package/dist/jsx/shiki/index.native.js +36 -0
- package/dist/jsx/shiki/index.native.js.map +1 -0
- package/dist/jsx/types.mjs +2 -0
- package/dist/jsx/types.mjs.map +1 -0
- package/dist/jsx/types.native.js +21 -0
- package/dist/jsx/types.native.js.map +1 -0
- package/dist/jsx/util/rehypeMetaAttributes.mjs +20 -0
- package/dist/jsx/util/rehypeMetaAttributes.mjs.map +1 -0
- package/dist/jsx/util/rehypeMetaAttributes.native.js +49 -0
- package/dist/jsx/util/rehypeMetaAttributes.native.js.map +1 -0
- package/dist/jsx/util/util.spec.mjs +82 -0
- package/dist/jsx/util/util.spec.mjs.map +1 -0
- package/dist/jsx/util/util.spec.native.js +84 -0
- package/dist/jsx/util/util.spec.native.js.map +1 -0
- package/package.json +94 -0
- package/src/Aside/index.tsx +89 -0
- package/src/ExternalIcon/ExternalIcon.spec.tsx +33 -0
- package/src/ExternalIcon/index.tsx +15 -0
- package/src/Hr/hr.spec.tsx +18 -0
- package/src/Hr/index.tsx +7 -0
- package/src/Li/index.tsx +14 -0
- package/src/Li/li.spec.tsx +33 -0
- package/src/Markdown.stories.tsx +127 -0
- package/src/Markdown.tsx +62 -0
- package/src/Mdx/index.tsx +32 -0
- package/src/Mdx/mdx.spec.tsx +118 -0
- package/src/MdxCodeBlock/index.tsx +168 -0
- package/src/MdxCodeBlock/mdxCodeBlock.spec.tsx +66 -0
- package/src/MdxCodeBlock/mdxCodeBlockContext.ts +15 -0
- package/src/Notice/index.tsx +76 -0
- package/src/SimpleTable/index.tsx +125 -0
- package/src/Table/index.tsx +80 -0
- package/src/Tabs/index.tsx +76 -0
- package/src/Ul/index.ts +11 -0
- package/src/Ul/ul.spec.tsx +131 -0
- package/src/Video/index.tsx +62 -0
- package/src/components/Blockquote.tsx +20 -0
- package/src/components/Break.tsx +6 -0
- package/src/components/CodeBlock.tsx +94 -0
- package/src/components/Heading.tsx +20 -0
- package/src/components/HorizontalRule.tsx +6 -0
- package/src/components/Image.tsx +20 -0
- package/src/components/InlineCode.tsx +21 -0
- package/src/components/InlineStyles.tsx +14 -0
- package/src/components/Link.tsx +26 -0
- package/src/components/List.tsx +41 -0
- package/src/components/Paragraph.tsx +10 -0
- package/src/components/Table.tsx +56 -0
- package/src/components/index.ts +12 -0
- package/src/hooks/index.ts +3 -0
- package/src/hooks/useCompileAndEvaluateMdx.spec.tsx +31 -0
- package/src/hooks/useCompileAndEvaluateMdx.ts +22 -0
- package/src/hooks/useCompileMdx.ts +55 -0
- package/src/hooks/useEvaluateMdx.ts +27 -0
- package/src/icons/index.tsx +116 -0
- package/src/index.ts +33 -0
- package/src/mdx.spec.tsx +347 -0
- package/src/mdxComponents.tsx +225 -0
- package/src/parser.spec.ts +126 -0
- package/src/parser.ts +27 -0
- package/src/renderer.tsx +391 -0
- package/src/shared/colorRamps.ts +52 -0
- package/src/shared/index.ts +1 -0
- package/src/shiki/highlighter.ts +148 -0
- package/src/shiki/index.ts +11 -0
- package/src/types.ts +225 -0
- package/src/util/rehypeMetaAttributes.ts +21 -0
- package/src/util/util.spec.tsx +90 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["unified","remarkParse","remarkGfm","processor","use","parseMarkdown","markdown","parse","parseMarkdownAsync"],"sources":["../../src/parser.ts"],"sourcesContent":[null],"mappings":"AAIA,SAASA,OAAA,QAAe;AACxB,OAAOC,WAAA,MAAiB;AACxB,OAAOC,SAAA,MAAe;AAItB,IAAAC,SAAM,GAAAH,OAAY,GAAQI,GAAE,CAAAH,WAAI,EAAWG,GAAE,CAAAF,SAAI;AAK1C,SAASG,cAAcC,QAAA,EAAwB;EACpD,OAAOH,SAAA,CAAUI,KAAA,CAAMD,QAAQ;AACjC;AAKA,eAAsBE,mBAAmBF,QAAA,EAAiC;EACxE,OAAOH,SAAA,CAAUI,KAAA,CAAMD,QAAQ;AACjC","ignoreList":[]}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import { describe, expect, it } from "vitest";
|
|
2
|
+
import { parseMarkdown, parseMarkdownAsync } from "./parser.mjs";
|
|
3
|
+
describe("parseMarkdown", () => {
|
|
4
|
+
it("parses a heading", () => {
|
|
5
|
+
const ast = parseMarkdown("# Hello");
|
|
6
|
+
expect(ast.type).toBe("root");
|
|
7
|
+
expect(ast.children).toHaveLength(1);
|
|
8
|
+
expect(ast.children[0].type).toBe("heading");
|
|
9
|
+
const heading = ast.children[0];
|
|
10
|
+
expect(heading.depth).toBe(1);
|
|
11
|
+
expect(heading.children[0].value).toBe("Hello");
|
|
12
|
+
});
|
|
13
|
+
it("parses a paragraph", () => {
|
|
14
|
+
const ast = parseMarkdown("Just some text.");
|
|
15
|
+
expect(ast.children[0].type).toBe("paragraph");
|
|
16
|
+
});
|
|
17
|
+
it("parses inline formatting", () => {
|
|
18
|
+
const ast = parseMarkdown("**bold** and *italic*");
|
|
19
|
+
const paragraph = ast.children[0];
|
|
20
|
+
expect(paragraph.children[0].type).toBe("strong");
|
|
21
|
+
expect(paragraph.children[2].type).toBe("emphasis");
|
|
22
|
+
});
|
|
23
|
+
it("parses an unordered list", () => {
|
|
24
|
+
const ast = parseMarkdown("- item 1\n- item 2\n- item 3");
|
|
25
|
+
expect(ast.children[0].type).toBe("list");
|
|
26
|
+
const list = ast.children[0];
|
|
27
|
+
expect(list.ordered).toBe(false);
|
|
28
|
+
expect(list.children).toHaveLength(3);
|
|
29
|
+
});
|
|
30
|
+
it("parses an ordered list", () => {
|
|
31
|
+
const ast = parseMarkdown("1. first\n2. second");
|
|
32
|
+
const list = ast.children[0];
|
|
33
|
+
expect(list.type).toBe("list");
|
|
34
|
+
expect(list.ordered).toBe(true);
|
|
35
|
+
expect(list.children).toHaveLength(2);
|
|
36
|
+
});
|
|
37
|
+
it("parses a code block", () => {
|
|
38
|
+
const ast = parseMarkdown("```js\nconsole.log('hi');\n```");
|
|
39
|
+
const code = ast.children[0];
|
|
40
|
+
expect(code.type).toBe("code");
|
|
41
|
+
expect(code.lang).toBe("js");
|
|
42
|
+
expect(code.value).toBe("console.log('hi');");
|
|
43
|
+
});
|
|
44
|
+
it("parses inline code", () => {
|
|
45
|
+
const ast = parseMarkdown("Use `const x = 1` here.");
|
|
46
|
+
const paragraph = ast.children[0];
|
|
47
|
+
const inlineCode = paragraph.children.find(c => c.type === "inlineCode");
|
|
48
|
+
expect(inlineCode).toBeDefined();
|
|
49
|
+
expect(inlineCode.value).toBe("const x = 1");
|
|
50
|
+
});
|
|
51
|
+
it("parses a blockquote", () => {
|
|
52
|
+
const ast = parseMarkdown("> A quote");
|
|
53
|
+
expect(ast.children[0].type).toBe("blockquote");
|
|
54
|
+
});
|
|
55
|
+
it("parses a link", () => {
|
|
56
|
+
const ast = parseMarkdown("[example](https://example.com)");
|
|
57
|
+
const paragraph = ast.children[0];
|
|
58
|
+
const link = paragraph.children[0];
|
|
59
|
+
expect(link.type).toBe("link");
|
|
60
|
+
expect(link.url).toBe("https://example.com");
|
|
61
|
+
expect(link.children[0].value).toBe("example");
|
|
62
|
+
});
|
|
63
|
+
it("parses an image", () => {
|
|
64
|
+
const ast = parseMarkdown("");
|
|
65
|
+
const paragraph = ast.children[0];
|
|
66
|
+
const image = paragraph.children[0];
|
|
67
|
+
expect(image.type).toBe("image");
|
|
68
|
+
expect(image.url).toBe("image.png");
|
|
69
|
+
expect(image.alt).toBe("alt text");
|
|
70
|
+
});
|
|
71
|
+
it("parses a horizontal rule", () => {
|
|
72
|
+
const ast = parseMarkdown("---");
|
|
73
|
+
expect(ast.children[0].type).toBe("thematicBreak");
|
|
74
|
+
});
|
|
75
|
+
it("parses GFM tables", () => {
|
|
76
|
+
const md = "| A | B |\n| --- | --- |\n| 1 | 2 |";
|
|
77
|
+
const ast = parseMarkdown(md);
|
|
78
|
+
expect(ast.children[0].type).toBe("table");
|
|
79
|
+
});
|
|
80
|
+
it("parses GFM strikethrough", () => {
|
|
81
|
+
const ast = parseMarkdown("~~deleted~~");
|
|
82
|
+
const paragraph = ast.children[0];
|
|
83
|
+
expect(paragraph.children[0].type).toBe("delete");
|
|
84
|
+
});
|
|
85
|
+
it("parses GFM task lists", () => {
|
|
86
|
+
const ast = parseMarkdown("- [x] done\n- [ ] todo");
|
|
87
|
+
const list = ast.children[0];
|
|
88
|
+
expect(list.children[0].checked).toBe(true);
|
|
89
|
+
expect(list.children[1].checked).toBe(false);
|
|
90
|
+
});
|
|
91
|
+
it("handles empty input", () => {
|
|
92
|
+
const ast = parseMarkdown("");
|
|
93
|
+
expect(ast.type).toBe("root");
|
|
94
|
+
expect(ast.children).toHaveLength(0);
|
|
95
|
+
});
|
|
96
|
+
it("handles complex multi-element markdown", () => {
|
|
97
|
+
const md = "# Title\n\nParagraph.\n\n- item\n\n```\ncode\n```";
|
|
98
|
+
const ast = parseMarkdown(md);
|
|
99
|
+
expect(ast.children.length).toBeGreaterThanOrEqual(4);
|
|
100
|
+
});
|
|
101
|
+
});
|
|
102
|
+
describe("parseMarkdownAsync", () => {
|
|
103
|
+
it("returns the same AST as sync version", async () => {
|
|
104
|
+
const md = "# Hello\n\nWorld";
|
|
105
|
+
const syncAst = parseMarkdown(md);
|
|
106
|
+
const asyncAst = await parseMarkdownAsync(md);
|
|
107
|
+
expect(asyncAst).toEqual(syncAst);
|
|
108
|
+
});
|
|
109
|
+
});
|
|
110
|
+
//# sourceMappingURL=parser.spec.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["describe","expect","it","parseMarkdown","parseMarkdownAsync","ast","type","toBe","children","toHaveLength","heading","depth","value","paragraph","list","ordered","code","lang","inlineCode","find","c","toBeDefined","link","url","image","alt","md","checked","length","toBeGreaterThanOrEqual","syncAst","asyncAst","toEqual"],"sources":["../../src/parser.spec.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import { describe, expect, it } from "vitest";
|
|
2
|
+
import { parseMarkdown, parseMarkdownAsync } from "./parser.native.js";
|
|
3
|
+
describe("parseMarkdown", function () {
|
|
4
|
+
it("parses a heading", function () {
|
|
5
|
+
var ast = parseMarkdown("# Hello");
|
|
6
|
+
expect(ast.type).toBe("root");
|
|
7
|
+
expect(ast.children).toHaveLength(1);
|
|
8
|
+
expect(ast.children[0].type).toBe("heading");
|
|
9
|
+
var heading = ast.children[0];
|
|
10
|
+
expect(heading.depth).toBe(1);
|
|
11
|
+
expect(heading.children[0].value).toBe("Hello");
|
|
12
|
+
});
|
|
13
|
+
it("parses a paragraph", function () {
|
|
14
|
+
var ast = parseMarkdown("Just some text.");
|
|
15
|
+
expect(ast.children[0].type).toBe("paragraph");
|
|
16
|
+
});
|
|
17
|
+
it("parses inline formatting", function () {
|
|
18
|
+
var ast = parseMarkdown("**bold** and *italic*");
|
|
19
|
+
var paragraph = ast.children[0];
|
|
20
|
+
expect(paragraph.children[0].type).toBe("strong");
|
|
21
|
+
expect(paragraph.children[2].type).toBe("emphasis");
|
|
22
|
+
});
|
|
23
|
+
it("parses an unordered list", function () {
|
|
24
|
+
var ast = parseMarkdown("- item 1\n- item 2\n- item 3");
|
|
25
|
+
expect(ast.children[0].type).toBe("list");
|
|
26
|
+
var list = ast.children[0];
|
|
27
|
+
expect(list.ordered).toBe(false);
|
|
28
|
+
expect(list.children).toHaveLength(3);
|
|
29
|
+
});
|
|
30
|
+
it("parses an ordered list", function () {
|
|
31
|
+
var ast = parseMarkdown("1. first\n2. second");
|
|
32
|
+
var list = ast.children[0];
|
|
33
|
+
expect(list.type).toBe("list");
|
|
34
|
+
expect(list.ordered).toBe(true);
|
|
35
|
+
expect(list.children).toHaveLength(2);
|
|
36
|
+
});
|
|
37
|
+
it("parses a code block", function () {
|
|
38
|
+
var ast = parseMarkdown("```js\nconsole.log('hi');\n```");
|
|
39
|
+
var code = ast.children[0];
|
|
40
|
+
expect(code.type).toBe("code");
|
|
41
|
+
expect(code.lang).toBe("js");
|
|
42
|
+
expect(code.value).toBe("console.log('hi');");
|
|
43
|
+
});
|
|
44
|
+
it("parses inline code", function () {
|
|
45
|
+
var ast = parseMarkdown("Use `const x = 1` here.");
|
|
46
|
+
var paragraph = ast.children[0];
|
|
47
|
+
var inlineCode = paragraph.children.find(function (c) {
|
|
48
|
+
return c.type === "inlineCode";
|
|
49
|
+
});
|
|
50
|
+
expect(inlineCode).toBeDefined();
|
|
51
|
+
expect(inlineCode.value).toBe("const x = 1");
|
|
52
|
+
});
|
|
53
|
+
it("parses a blockquote", function () {
|
|
54
|
+
var ast = parseMarkdown("> A quote");
|
|
55
|
+
expect(ast.children[0].type).toBe("blockquote");
|
|
56
|
+
});
|
|
57
|
+
it("parses a link", function () {
|
|
58
|
+
var ast = parseMarkdown("[example](https://example.com)");
|
|
59
|
+
var paragraph = ast.children[0];
|
|
60
|
+
var link = paragraph.children[0];
|
|
61
|
+
expect(link.type).toBe("link");
|
|
62
|
+
expect(link.url).toBe("https://example.com");
|
|
63
|
+
expect(link.children[0].value).toBe("example");
|
|
64
|
+
});
|
|
65
|
+
it("parses an image", function () {
|
|
66
|
+
var ast = parseMarkdown("");
|
|
67
|
+
var paragraph = ast.children[0];
|
|
68
|
+
var image = paragraph.children[0];
|
|
69
|
+
expect(image.type).toBe("image");
|
|
70
|
+
expect(image.url).toBe("image.png");
|
|
71
|
+
expect(image.alt).toBe("alt text");
|
|
72
|
+
});
|
|
73
|
+
it("parses a horizontal rule", function () {
|
|
74
|
+
var ast = parseMarkdown("---");
|
|
75
|
+
expect(ast.children[0].type).toBe("thematicBreak");
|
|
76
|
+
});
|
|
77
|
+
it("parses GFM tables", function () {
|
|
78
|
+
var md = "| A | B |\n| --- | --- |\n| 1 | 2 |";
|
|
79
|
+
var ast = parseMarkdown(md);
|
|
80
|
+
expect(ast.children[0].type).toBe("table");
|
|
81
|
+
});
|
|
82
|
+
it("parses GFM strikethrough", function () {
|
|
83
|
+
var ast = parseMarkdown("~~deleted~~");
|
|
84
|
+
var paragraph = ast.children[0];
|
|
85
|
+
expect(paragraph.children[0].type).toBe("delete");
|
|
86
|
+
});
|
|
87
|
+
it("parses GFM task lists", function () {
|
|
88
|
+
var ast = parseMarkdown("- [x] done\n- [ ] todo");
|
|
89
|
+
var list = ast.children[0];
|
|
90
|
+
expect(list.children[0].checked).toBe(true);
|
|
91
|
+
expect(list.children[1].checked).toBe(false);
|
|
92
|
+
});
|
|
93
|
+
it("handles empty input", function () {
|
|
94
|
+
var ast = parseMarkdown("");
|
|
95
|
+
expect(ast.type).toBe("root");
|
|
96
|
+
expect(ast.children).toHaveLength(0);
|
|
97
|
+
});
|
|
98
|
+
it("handles complex multi-element markdown", function () {
|
|
99
|
+
var md = "# Title\n\nParagraph.\n\n- item\n\n```\ncode\n```";
|
|
100
|
+
var ast = parseMarkdown(md);
|
|
101
|
+
expect(ast.children.length).toBeGreaterThanOrEqual(4);
|
|
102
|
+
});
|
|
103
|
+
});
|
|
104
|
+
describe("parseMarkdownAsync", function () {
|
|
105
|
+
it("returns the same AST as sync version", async function () {
|
|
106
|
+
var md = "# Hello\n\nWorld";
|
|
107
|
+
var syncAst = parseMarkdown(md);
|
|
108
|
+
var asyncAst = await parseMarkdownAsync(md);
|
|
109
|
+
expect(asyncAst).toEqual(syncAst);
|
|
110
|
+
});
|
|
111
|
+
});
|
|
112
|
+
//# sourceMappingURL=parser.spec.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["describe","expect","it","parseMarkdown","parseMarkdownAsync","ast","type","toBe","children","toHaveLength","heading","depth","value","paragraph","list","ordered","code","lang","inlineCode","find","c","toBeDefined","link","url","image","alt","md","checked","length","toBeGreaterThanOrEqual","syncAst","asyncAst","toEqual"],"sources":["../../src/parser.spec.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,300 @@
|
|
|
1
|
+
import { Text, View, isWeb } from "tamagui";
|
|
2
|
+
import { Heading, Paragraph, Strong, Emphasis, Strikethrough, InlineCode, CodeBlock, Link, MarkdownImage, MarkdownList, MarkdownListItem, Blockquote, HorizontalRule, MarkdownTable, MarkdownTableRow, MarkdownTableCell, Break } from "./components/index.mjs";
|
|
3
|
+
import { jsx } from "react/jsx-runtime";
|
|
4
|
+
function renderNode(node, key, options = {}) {
|
|
5
|
+
const {
|
|
6
|
+
components = {},
|
|
7
|
+
codeTheme = "github-dark",
|
|
8
|
+
listContext
|
|
9
|
+
} = options;
|
|
10
|
+
switch (node.type) {
|
|
11
|
+
case "root":
|
|
12
|
+
return renderChildren(node, options);
|
|
13
|
+
case "heading":
|
|
14
|
+
{
|
|
15
|
+
const heading = node;
|
|
16
|
+
const CustomHeading = components[`h${heading.depth}`];
|
|
17
|
+
if (CustomHeading) {
|
|
18
|
+
return /* @__PURE__ */jsx(CustomHeading, {
|
|
19
|
+
level: heading.depth,
|
|
20
|
+
children: renderChildren(heading, options)
|
|
21
|
+
}, key);
|
|
22
|
+
}
|
|
23
|
+
return /* @__PURE__ */jsx(Heading, {
|
|
24
|
+
level: heading.depth,
|
|
25
|
+
children: renderChildren(heading, options)
|
|
26
|
+
}, key);
|
|
27
|
+
}
|
|
28
|
+
case "paragraph":
|
|
29
|
+
{
|
|
30
|
+
const para = node;
|
|
31
|
+
const CustomP = components.p;
|
|
32
|
+
if (CustomP) {
|
|
33
|
+
return /* @__PURE__ */jsx(CustomP, {
|
|
34
|
+
children: renderChildren(para, options)
|
|
35
|
+
}, key);
|
|
36
|
+
}
|
|
37
|
+
return /* @__PURE__ */jsx(Paragraph, {
|
|
38
|
+
children: renderChildren(para, options)
|
|
39
|
+
}, key);
|
|
40
|
+
}
|
|
41
|
+
case "text":
|
|
42
|
+
{
|
|
43
|
+
const textNode = node;
|
|
44
|
+
return textNode.value;
|
|
45
|
+
}
|
|
46
|
+
case "strong":
|
|
47
|
+
{
|
|
48
|
+
const strongNode = node;
|
|
49
|
+
const CustomStrong = components.strong;
|
|
50
|
+
if (CustomStrong) {
|
|
51
|
+
return /* @__PURE__ */jsx(CustomStrong, {
|
|
52
|
+
children: renderChildren(strongNode, options)
|
|
53
|
+
}, key);
|
|
54
|
+
}
|
|
55
|
+
return /* @__PURE__ */jsx(Strong, {
|
|
56
|
+
children: renderChildren(strongNode, options)
|
|
57
|
+
}, key);
|
|
58
|
+
}
|
|
59
|
+
case "emphasis":
|
|
60
|
+
{
|
|
61
|
+
const emNode = node;
|
|
62
|
+
const CustomEm = components.em;
|
|
63
|
+
if (CustomEm) {
|
|
64
|
+
return /* @__PURE__ */jsx(CustomEm, {
|
|
65
|
+
children: renderChildren(emNode, options)
|
|
66
|
+
}, key);
|
|
67
|
+
}
|
|
68
|
+
return /* @__PURE__ */jsx(Emphasis, {
|
|
69
|
+
children: renderChildren(emNode, options)
|
|
70
|
+
}, key);
|
|
71
|
+
}
|
|
72
|
+
case "delete":
|
|
73
|
+
{
|
|
74
|
+
const delNode = node;
|
|
75
|
+
const CustomDel = components.del;
|
|
76
|
+
if (CustomDel) {
|
|
77
|
+
return /* @__PURE__ */jsx(CustomDel, {
|
|
78
|
+
children: renderChildren(delNode, options)
|
|
79
|
+
}, key);
|
|
80
|
+
}
|
|
81
|
+
return /* @__PURE__ */jsx(Strikethrough, {
|
|
82
|
+
children: renderChildren(delNode, options)
|
|
83
|
+
}, key);
|
|
84
|
+
}
|
|
85
|
+
case "inlineCode":
|
|
86
|
+
{
|
|
87
|
+
const inlineCodeNode = node;
|
|
88
|
+
const CustomInlineCode = components.inlineCode;
|
|
89
|
+
if (CustomInlineCode) {
|
|
90
|
+
return /* @__PURE__ */jsx(CustomInlineCode, {
|
|
91
|
+
children: inlineCodeNode.value
|
|
92
|
+
}, key);
|
|
93
|
+
}
|
|
94
|
+
return /* @__PURE__ */jsx(InlineCode, {
|
|
95
|
+
children: inlineCodeNode.value
|
|
96
|
+
}, key);
|
|
97
|
+
}
|
|
98
|
+
case "code":
|
|
99
|
+
{
|
|
100
|
+
const codeNode = node;
|
|
101
|
+
const CustomCode = components.code;
|
|
102
|
+
if (CustomCode) {
|
|
103
|
+
return /* @__PURE__ */jsx(CustomCode, {
|
|
104
|
+
lang: codeNode.lang,
|
|
105
|
+
meta: codeNode.meta,
|
|
106
|
+
children: codeNode.value
|
|
107
|
+
}, key);
|
|
108
|
+
}
|
|
109
|
+
return /* @__PURE__ */jsx(CodeBlock, {
|
|
110
|
+
lang: codeNode.lang,
|
|
111
|
+
theme: codeTheme,
|
|
112
|
+
children: codeNode.value
|
|
113
|
+
}, key);
|
|
114
|
+
}
|
|
115
|
+
case "link":
|
|
116
|
+
{
|
|
117
|
+
const linkNode = node;
|
|
118
|
+
const CustomLink = components.a;
|
|
119
|
+
if (CustomLink) {
|
|
120
|
+
return /* @__PURE__ */jsx(CustomLink, {
|
|
121
|
+
href: linkNode.url,
|
|
122
|
+
title: linkNode.title,
|
|
123
|
+
children: renderChildren(linkNode, options)
|
|
124
|
+
}, key);
|
|
125
|
+
}
|
|
126
|
+
return /* @__PURE__ */jsx(Link, {
|
|
127
|
+
href: linkNode.url,
|
|
128
|
+
title: linkNode.title,
|
|
129
|
+
children: renderChildren(linkNode, options)
|
|
130
|
+
}, key);
|
|
131
|
+
}
|
|
132
|
+
case "image":
|
|
133
|
+
{
|
|
134
|
+
const imgNode = node;
|
|
135
|
+
const CustomImg = components.img;
|
|
136
|
+
if (CustomImg) {
|
|
137
|
+
return /* @__PURE__ */jsx(CustomImg, {
|
|
138
|
+
src: imgNode.url,
|
|
139
|
+
alt: imgNode.alt,
|
|
140
|
+
title: imgNode.title
|
|
141
|
+
}, key);
|
|
142
|
+
}
|
|
143
|
+
return /* @__PURE__ */jsx(MarkdownImage, {
|
|
144
|
+
src: imgNode.url,
|
|
145
|
+
alt: imgNode.alt,
|
|
146
|
+
title: imgNode.title
|
|
147
|
+
}, key);
|
|
148
|
+
}
|
|
149
|
+
case "list":
|
|
150
|
+
{
|
|
151
|
+
const listNode = node;
|
|
152
|
+
const CustomList = listNode.ordered ? components.ol : components.ul;
|
|
153
|
+
const listChildren = listNode.children.map((child, i) => renderNode(child, i, {
|
|
154
|
+
...options,
|
|
155
|
+
listContext: {
|
|
156
|
+
ordered: listNode.ordered ?? false,
|
|
157
|
+
index: i
|
|
158
|
+
}
|
|
159
|
+
}));
|
|
160
|
+
if (CustomList) {
|
|
161
|
+
return /* @__PURE__ */jsx(CustomList, {
|
|
162
|
+
ordered: listNode.ordered ?? false,
|
|
163
|
+
start: listNode.start,
|
|
164
|
+
children: listChildren
|
|
165
|
+
}, key);
|
|
166
|
+
}
|
|
167
|
+
return /* @__PURE__ */jsx(MarkdownList, {
|
|
168
|
+
ordered: listNode.ordered ?? false,
|
|
169
|
+
start: listNode.start,
|
|
170
|
+
children: listChildren
|
|
171
|
+
}, key);
|
|
172
|
+
}
|
|
173
|
+
case "listItem":
|
|
174
|
+
{
|
|
175
|
+
const liNode = node;
|
|
176
|
+
const CustomLi = components.li;
|
|
177
|
+
if (CustomLi) {
|
|
178
|
+
return /* @__PURE__ */jsx(CustomLi, {
|
|
179
|
+
checked: liNode.checked,
|
|
180
|
+
children: renderChildren(liNode, options)
|
|
181
|
+
}, key);
|
|
182
|
+
}
|
|
183
|
+
return /* @__PURE__ */jsx(MarkdownListItem, {
|
|
184
|
+
checked: liNode.checked,
|
|
185
|
+
index: listContext?.index,
|
|
186
|
+
ordered: listContext?.ordered,
|
|
187
|
+
children: renderChildren(liNode, options)
|
|
188
|
+
}, key);
|
|
189
|
+
}
|
|
190
|
+
case "blockquote":
|
|
191
|
+
{
|
|
192
|
+
const bqNode = node;
|
|
193
|
+
const CustomBq = components.blockquote;
|
|
194
|
+
if (CustomBq) {
|
|
195
|
+
return /* @__PURE__ */jsx(CustomBq, {
|
|
196
|
+
children: renderChildren(bqNode, options)
|
|
197
|
+
}, key);
|
|
198
|
+
}
|
|
199
|
+
return /* @__PURE__ */jsx(Blockquote, {
|
|
200
|
+
children: renderChildren(bqNode, options)
|
|
201
|
+
}, key);
|
|
202
|
+
}
|
|
203
|
+
case "thematicBreak":
|
|
204
|
+
{
|
|
205
|
+
const CustomHr = components.hr;
|
|
206
|
+
if (CustomHr) {
|
|
207
|
+
return /* @__PURE__ */jsx(CustomHr, {}, key);
|
|
208
|
+
}
|
|
209
|
+
return /* @__PURE__ */jsx(HorizontalRule, {}, key);
|
|
210
|
+
}
|
|
211
|
+
case "table":
|
|
212
|
+
{
|
|
213
|
+
const tableNode = node;
|
|
214
|
+
const CustomTable = components.table;
|
|
215
|
+
const tableChildren = tableNode.children.map((row, i) => renderTableRow(row, i, i === 0, tableNode.align, options));
|
|
216
|
+
if (CustomTable) {
|
|
217
|
+
return /* @__PURE__ */jsx(CustomTable, {
|
|
218
|
+
children: tableChildren
|
|
219
|
+
}, key);
|
|
220
|
+
}
|
|
221
|
+
return /* @__PURE__ */jsx(MarkdownTable, {
|
|
222
|
+
children: tableChildren
|
|
223
|
+
}, key);
|
|
224
|
+
}
|
|
225
|
+
case "html":
|
|
226
|
+
{
|
|
227
|
+
const htmlNode = node;
|
|
228
|
+
if (isWeb) {
|
|
229
|
+
return /* @__PURE__ */jsx("div", {
|
|
230
|
+
dangerouslySetInnerHTML: {
|
|
231
|
+
__html: htmlNode.value
|
|
232
|
+
}
|
|
233
|
+
}, key);
|
|
234
|
+
}
|
|
235
|
+
return null;
|
|
236
|
+
}
|
|
237
|
+
case "break":
|
|
238
|
+
{
|
|
239
|
+
const CustomBr = components.br;
|
|
240
|
+
if (CustomBr) {
|
|
241
|
+
return /* @__PURE__ */jsx(CustomBr, {}, key);
|
|
242
|
+
}
|
|
243
|
+
return /* @__PURE__ */jsx(Break, {}, key);
|
|
244
|
+
}
|
|
245
|
+
default:
|
|
246
|
+
if ("children" in node && Array.isArray(node.children)) {
|
|
247
|
+
return /* @__PURE__ */jsx(View, {
|
|
248
|
+
children: node.children.map((child, i) => renderNode(child, i, options))
|
|
249
|
+
}, key);
|
|
250
|
+
}
|
|
251
|
+
if ("value" in node && typeof node.value === "string") {
|
|
252
|
+
return /* @__PURE__ */jsx(Text, {
|
|
253
|
+
children: node.value
|
|
254
|
+
}, key);
|
|
255
|
+
}
|
|
256
|
+
return null;
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
function renderTableRow(row, key, isHeader, align, options) {
|
|
260
|
+
const CustomTr = options.components?.tr;
|
|
261
|
+
const cells = row.children.map((cell, i) => renderTableCell(cell, i, isHeader, align?.[i] || null, options));
|
|
262
|
+
if (CustomTr) {
|
|
263
|
+
return /* @__PURE__ */jsx(CustomTr, {
|
|
264
|
+
isHeader,
|
|
265
|
+
children: cells
|
|
266
|
+
}, key);
|
|
267
|
+
}
|
|
268
|
+
return /* @__PURE__ */jsx(MarkdownTableRow, {
|
|
269
|
+
isHeader,
|
|
270
|
+
children: cells
|
|
271
|
+
}, key);
|
|
272
|
+
}
|
|
273
|
+
function renderTableCell(cell, key, isHeader, align, options) {
|
|
274
|
+
const CustomTd = isHeader ? options.components?.th : options.components?.td;
|
|
275
|
+
const children = renderChildren(cell, options);
|
|
276
|
+
if (CustomTd) {
|
|
277
|
+
return /* @__PURE__ */jsx(CustomTd, {
|
|
278
|
+
isHeader,
|
|
279
|
+
align,
|
|
280
|
+
children
|
|
281
|
+
}, key);
|
|
282
|
+
}
|
|
283
|
+
return /* @__PURE__ */jsx(MarkdownTableCell, {
|
|
284
|
+
isHeader,
|
|
285
|
+
align,
|
|
286
|
+
children
|
|
287
|
+
}, key);
|
|
288
|
+
}
|
|
289
|
+
function renderChildren(node, options) {
|
|
290
|
+
if (!node.children) return [];
|
|
291
|
+
return node.children.map((child, i) => renderNode(child, i, options));
|
|
292
|
+
}
|
|
293
|
+
function renderMarkdown(root, options = {}) {
|
|
294
|
+
return /* @__PURE__ */jsx(View, {
|
|
295
|
+
gap: "$1",
|
|
296
|
+
children: root.children.map((child, i) => renderNode(child, i, options))
|
|
297
|
+
});
|
|
298
|
+
}
|
|
299
|
+
export { renderMarkdown, renderNode };
|
|
300
|
+
//# sourceMappingURL=renderer.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Text","View","isWeb","Heading","Paragraph","Strong","Emphasis","Strikethrough","InlineCode","CodeBlock","Link","MarkdownImage","MarkdownList","MarkdownListItem","Blockquote","HorizontalRule","MarkdownTable","MarkdownTableRow","MarkdownTableCell","Break","jsx","renderNode","node","key","options","components","codeTheme","listContext","type","renderChildren","heading","CustomHeading","depth","level","children","para","CustomP","p","textNode","value","strongNode","CustomStrong","strong","emNode","CustomEm","em","delNode","CustomDel","del","inlineCodeNode","CustomInlineCode","inlineCode","codeNode","CustomCode","code","lang","meta","theme","linkNode","CustomLink","a","href","url","title","imgNode","CustomImg","img","src","alt","listNode","CustomList","ordered","ol","ul","listChildren","map","child","i","index","start","liNode","CustomLi","li","checked","bqNode","CustomBq","blockquote","CustomHr","hr","tableNode","CustomTable","table","tableChildren","row","renderTableRow","align","htmlNode","dangerouslySetInnerHTML","__html","CustomBr","br","Array","isArray","isHeader","CustomTr","tr","cells","cell","renderTableCell","CustomTd","th","td","renderMarkdown","root","gap"],"sources":["../../src/renderer.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|