@multiplatform.one/markdown 6.0.4 → 6.3.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/README.md +61 -0
- package/dist/cjs/Aside/index.cjs +37 -32
- package/dist/cjs/Aside/index.native.js +41 -34
- package/dist/cjs/Aside/index.native.js.map +1 -1
- package/dist/cjs/ExternalIcon/index.cjs +2 -0
- package/dist/cjs/ExternalIcon/index.native.js +2 -0
- package/dist/cjs/ExternalIcon/index.native.js.map +1 -1
- package/dist/cjs/Hr/index.cjs +3 -11
- package/dist/cjs/Hr/index.native.js +3 -11
- package/dist/cjs/Hr/index.native.js.map +1 -1
- package/dist/cjs/{SimpleTable → MarkdownSimpleTable}/index.cjs +27 -9
- package/dist/{jsx/SimpleTable → cjs/MarkdownSimpleTable}/index.native.js +32 -11
- package/dist/cjs/MarkdownSimpleTable/index.native.js.map +1 -0
- package/dist/cjs/Mdx/index.cjs +15 -7
- package/dist/cjs/Mdx/index.native.js +15 -7
- package/dist/cjs/Mdx/index.native.js.map +1 -1
- package/dist/cjs/MdxCodeBlock/index.cjs +28 -20
- package/dist/cjs/MdxCodeBlock/index.native.js +33 -22
- package/dist/cjs/MdxCodeBlock/index.native.js.map +1 -1
- package/dist/cjs/Notice/index.cjs +13 -56
- package/dist/cjs/Notice/index.native.js +13 -56
- package/dist/cjs/Notice/index.native.js.map +1 -1
- package/dist/cjs/Table/index.cjs +13 -0
- package/dist/cjs/Table/index.native.js +15 -0
- package/dist/cjs/Table/index.native.js.map +1 -1
- package/dist/cjs/Tabs/index.cjs +15 -47
- package/dist/cjs/Tabs/index.native.js +20 -52
- package/dist/cjs/Tabs/index.native.js.map +1 -1
- package/dist/cjs/Ul/index.cjs +2 -2
- package/dist/cjs/Ul/index.native.js +2 -2
- package/dist/cjs/Ul/index.native.js.map +1 -1
- package/dist/cjs/Video/index.cjs +4 -2
- package/dist/cjs/Video/index.native.js +4 -2
- package/dist/cjs/Video/index.native.js.map +1 -1
- package/dist/cjs/components/Blockquote.cjs +16 -3
- package/dist/cjs/components/Blockquote.native.js +25 -3
- package/dist/cjs/components/Blockquote.native.js.map +1 -1
- package/dist/cjs/components/Break.cjs +1 -0
- package/dist/cjs/components/Break.native.js +1 -0
- package/dist/cjs/components/Break.native.js.map +1 -1
- package/dist/cjs/components/CodeBlock.cjs +20 -60
- package/dist/cjs/components/CodeBlock.native.js +22 -64
- package/dist/cjs/components/CodeBlock.native.js.map +1 -1
- package/dist/cjs/components/Heading.cjs +23 -0
- package/dist/cjs/components/Heading.native.js +24 -0
- package/dist/cjs/components/Heading.native.js.map +1 -1
- package/dist/cjs/components/Image.cjs +3 -5
- package/dist/cjs/components/Image.native.js +6 -5
- package/dist/cjs/components/Image.native.js.map +1 -1
- package/dist/cjs/components/InlineCode.cjs +3 -6
- package/dist/cjs/components/InlineCode.native.js +3 -6
- package/dist/cjs/components/InlineCode.native.js.map +1 -1
- package/dist/cjs/components/InlineStyles.cjs +3 -0
- package/dist/cjs/components/InlineStyles.native.js +3 -0
- package/dist/cjs/components/InlineStyles.native.js.map +1 -1
- package/dist/cjs/components/Link.cjs +22 -5
- package/dist/cjs/components/Link.native.js +23 -5
- package/dist/cjs/components/Link.native.js.map +1 -1
- package/dist/cjs/components/List.cjs +87 -9
- package/dist/cjs/components/List.native.js +91 -9
- package/dist/cjs/components/List.native.js.map +1 -1
- package/dist/cjs/components/Paragraph.cjs +6 -1
- package/dist/cjs/components/Paragraph.native.js +6 -1
- package/dist/cjs/components/Paragraph.native.js.map +1 -1
- package/dist/cjs/components/Table.cjs +57 -24
- package/dist/cjs/components/Table.native.js +67 -25
- package/dist/cjs/components/Table.native.js.map +1 -1
- package/dist/cjs/hooks/useCompileMdx.cjs +61 -28
- package/dist/cjs/hooks/useCompileMdx.native.js +80 -28
- package/dist/cjs/hooks/useCompileMdx.native.js.map +1 -1
- package/dist/cjs/hooks/useEvaluateMdx.cjs +7 -1
- package/dist/cjs/hooks/useEvaluateMdx.native.js +9 -3
- package/dist/cjs/hooks/useEvaluateMdx.native.js.map +1 -1
- package/dist/cjs/icons/index.cjs +31 -101
- package/dist/cjs/icons/index.native.js +36 -116
- package/dist/cjs/icons/index.native.js.map +1 -1
- package/dist/cjs/index.cjs +6 -4
- package/dist/cjs/index.native.js +6 -4
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/mdxComponents.cjs +13 -6
- package/dist/cjs/mdxComponents.native.js +16 -6
- package/dist/cjs/mdxComponents.native.js.map +1 -1
- package/dist/cjs/mermaid/MermaidBlock.cjs +110 -0
- package/dist/cjs/mermaid/MermaidBlock.native.js +41 -0
- package/dist/cjs/mermaid/MermaidBlock.native.js.map +1 -0
- package/dist/cjs/mermaid/index.cjs +31 -0
- package/dist/cjs/mermaid/index.native.js +34 -0
- package/dist/cjs/mermaid/index.native.js.map +1 -0
- package/dist/cjs/mermaid/mountDiagramSvg.cjs +54 -0
- package/dist/cjs/mermaid/mountDiagramSvg.native.js +98 -0
- package/dist/cjs/mermaid/mountDiagramSvg.native.js.map +1 -0
- package/dist/cjs/mermaid/renderMermaidDiagram.cjs +92 -0
- package/dist/cjs/mermaid/renderMermaidDiagram.native.js +110 -0
- package/dist/cjs/mermaid/renderMermaidDiagram.native.js.map +1 -0
- package/dist/cjs/renderer.cjs +9 -1
- package/dist/cjs/renderer.native.js +10 -2
- package/dist/cjs/renderer.native.js.map +1 -1
- package/dist/cjs/shared/colorRamps.cjs +1 -11
- package/dist/cjs/shared/colorRamps.native.js +1 -11
- package/dist/cjs/shared/colorRamps.native.js.map +1 -1
- package/dist/cjs/shared/cutoffGradient.cjs +54 -0
- package/dist/cjs/shared/cutoffGradient.native.js +63 -0
- package/dist/cjs/shared/cutoffGradient.native.js.map +1 -0
- package/dist/cjs/shiki/index.cjs +1 -16
- package/dist/cjs/shiki/index.native.js +0 -15
- package/dist/cjs/shiki/index.native.js.map +1 -1
- package/dist/esm/Aside/index.mjs +39 -34
- package/dist/esm/Aside/index.mjs.map +1 -1
- package/dist/esm/Aside/index.native.js +43 -36
- package/dist/esm/Aside/index.native.js.map +1 -1
- package/dist/esm/ExternalIcon/index.mjs +2 -0
- package/dist/esm/ExternalIcon/index.mjs.map +1 -1
- package/dist/esm/ExternalIcon/index.native.js +2 -0
- package/dist/esm/ExternalIcon/index.native.js.map +1 -1
- package/dist/esm/Hr/index.mjs +4 -12
- package/dist/esm/Hr/index.mjs.map +1 -1
- package/dist/esm/Hr/index.native.js +4 -12
- package/dist/esm/Hr/index.native.js.map +1 -1
- package/dist/esm/{SimpleTable → MarkdownSimpleTable}/index.mjs +24 -6
- package/dist/esm/MarkdownSimpleTable/index.mjs.map +1 -0
- package/dist/esm/{SimpleTable → MarkdownSimpleTable}/index.native.js +29 -8
- package/dist/esm/MarkdownSimpleTable/index.native.js.map +1 -0
- package/dist/esm/Mdx/index.mjs +15 -7
- package/dist/esm/Mdx/index.mjs.map +1 -1
- package/dist/esm/Mdx/index.native.js +15 -7
- package/dist/esm/Mdx/index.native.js.map +1 -1
- package/dist/esm/MdxCodeBlock/index.mjs +30 -22
- package/dist/esm/MdxCodeBlock/index.mjs.map +1 -1
- package/dist/esm/MdxCodeBlock/index.native.js +35 -24
- package/dist/esm/MdxCodeBlock/index.native.js.map +1 -1
- package/dist/esm/Notice/index.mjs +15 -57
- package/dist/esm/Notice/index.mjs.map +1 -1
- package/dist/esm/Notice/index.native.js +15 -57
- package/dist/esm/Notice/index.native.js.map +1 -1
- package/dist/esm/Table/index.mjs +13 -0
- package/dist/esm/Table/index.mjs.map +1 -1
- package/dist/esm/Table/index.native.js +15 -0
- package/dist/esm/Table/index.native.js.map +1 -1
- package/dist/esm/Tabs/index.mjs +17 -49
- package/dist/esm/Tabs/index.mjs.map +1 -1
- package/dist/esm/Tabs/index.native.js +22 -54
- package/dist/esm/Tabs/index.native.js.map +1 -1
- package/dist/esm/Ul/index.mjs +2 -2
- package/dist/esm/Ul/index.mjs.map +1 -1
- package/dist/esm/Ul/index.native.js +2 -2
- package/dist/esm/Ul/index.native.js.map +1 -1
- package/dist/esm/Video/index.mjs +4 -2
- package/dist/esm/Video/index.mjs.map +1 -1
- package/dist/esm/Video/index.native.js +4 -2
- package/dist/esm/Video/index.native.js.map +1 -1
- package/dist/esm/components/Blockquote.mjs +17 -4
- package/dist/esm/components/Blockquote.mjs.map +1 -1
- package/dist/esm/components/Blockquote.native.js +26 -4
- package/dist/esm/components/Blockquote.native.js.map +1 -1
- package/dist/esm/components/Break.mjs +2 -1
- package/dist/esm/components/Break.mjs.map +1 -1
- package/dist/esm/components/Break.native.js +2 -1
- package/dist/esm/components/Break.native.js.map +1 -1
- package/dist/esm/components/CodeBlock.mjs +21 -61
- package/dist/esm/components/CodeBlock.mjs.map +1 -1
- package/dist/esm/components/CodeBlock.native.js +23 -65
- package/dist/esm/components/CodeBlock.native.js.map +1 -1
- package/dist/esm/components/Heading.mjs +24 -1
- package/dist/esm/components/Heading.mjs.map +1 -1
- package/dist/esm/components/Heading.native.js +25 -1
- package/dist/esm/components/Heading.native.js.map +1 -1
- package/dist/esm/components/Image.mjs +3 -5
- package/dist/esm/components/Image.mjs.map +1 -1
- package/dist/esm/components/Image.native.js +6 -5
- package/dist/esm/components/Image.native.js.map +1 -1
- package/dist/esm/components/InlineCode.mjs +3 -6
- package/dist/esm/components/InlineCode.mjs.map +1 -1
- package/dist/esm/components/InlineCode.native.js +3 -6
- package/dist/esm/components/InlineCode.native.js.map +1 -1
- package/dist/esm/components/InlineStyles.mjs +3 -0
- package/dist/esm/components/InlineStyles.mjs.map +1 -1
- package/dist/esm/components/InlineStyles.native.js +3 -0
- package/dist/esm/components/InlineStyles.native.js.map +1 -1
- package/dist/esm/components/Link.mjs +23 -6
- package/dist/esm/components/Link.mjs.map +1 -1
- package/dist/esm/components/Link.native.js +24 -6
- package/dist/esm/components/Link.native.js.map +1 -1
- package/dist/esm/components/List.mjs +88 -10
- package/dist/esm/components/List.mjs.map +1 -1
- package/dist/esm/components/List.native.js +92 -10
- package/dist/esm/components/List.native.js.map +1 -1
- package/dist/esm/components/Paragraph.mjs +6 -1
- package/dist/esm/components/Paragraph.mjs.map +1 -1
- package/dist/esm/components/Paragraph.native.js +6 -1
- package/dist/esm/components/Paragraph.native.js.map +1 -1
- package/dist/esm/components/Table.mjs +59 -26
- package/dist/esm/components/Table.mjs.map +1 -1
- package/dist/esm/components/Table.native.js +69 -27
- package/dist/esm/components/Table.native.js.map +1 -1
- package/dist/esm/hooks/useCompileMdx.mjs +61 -29
- package/dist/esm/hooks/useCompileMdx.mjs.map +1 -1
- package/dist/esm/hooks/useCompileMdx.native.js +80 -29
- package/dist/esm/hooks/useCompileMdx.native.js.map +1 -1
- package/dist/esm/hooks/useEvaluateMdx.mjs +7 -1
- package/dist/esm/hooks/useEvaluateMdx.mjs.map +1 -1
- package/dist/esm/hooks/useEvaluateMdx.native.js +9 -3
- package/dist/esm/hooks/useEvaluateMdx.native.js.map +1 -1
- package/dist/esm/icons/index.mjs +32 -100
- package/dist/esm/icons/index.mjs.map +1 -1
- package/dist/esm/icons/index.native.js +37 -115
- package/dist/esm/icons/index.native.js.map +1 -1
- package/dist/esm/index.mjs +5 -3
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.js +5 -3
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/mdxComponents.mjs +14 -7
- package/dist/esm/mdxComponents.mjs.map +1 -1
- package/dist/esm/mdxComponents.native.js +17 -7
- package/dist/esm/mdxComponents.native.js.map +1 -1
- package/dist/esm/mermaid/MermaidBlock.mjs +85 -0
- package/dist/esm/mermaid/MermaidBlock.mjs.map +1 -0
- package/dist/esm/mermaid/MermaidBlock.native.js +13 -0
- package/dist/esm/mermaid/MermaidBlock.native.js.map +1 -0
- package/dist/esm/mermaid/index.mjs +4 -0
- package/dist/esm/mermaid/index.mjs.map +1 -0
- package/dist/esm/mermaid/index.native.js +4 -0
- package/dist/esm/mermaid/index.native.js.map +1 -0
- package/dist/esm/mermaid/mountDiagramSvg.mjs +29 -0
- package/dist/esm/mermaid/mountDiagramSvg.mjs.map +1 -0
- package/dist/esm/mermaid/mountDiagramSvg.native.js +70 -0
- package/dist/esm/mermaid/mountDiagramSvg.native.js.map +1 -0
- package/dist/esm/mermaid/renderMermaidDiagram.mjs +55 -0
- package/dist/esm/mermaid/renderMermaidDiagram.mjs.map +1 -0
- package/dist/esm/mermaid/renderMermaidDiagram.native.js +70 -0
- package/dist/esm/mermaid/renderMermaidDiagram.native.js.map +1 -0
- package/dist/esm/renderer.mjs +9 -1
- package/dist/esm/renderer.mjs.map +1 -1
- package/dist/esm/renderer.native.js +10 -2
- package/dist/esm/renderer.native.js.map +1 -1
- package/dist/esm/shared/colorRamps.mjs +1 -10
- package/dist/esm/shared/colorRamps.mjs.map +1 -1
- package/dist/esm/shared/colorRamps.native.js +1 -10
- package/dist/esm/shared/colorRamps.native.js.map +1 -1
- package/dist/esm/shared/cutoffGradient.mjs +28 -0
- package/dist/esm/shared/cutoffGradient.mjs.map +1 -0
- package/dist/esm/shared/cutoffGradient.native.js +34 -0
- package/dist/esm/shared/cutoffGradient.native.js.map +1 -0
- package/dist/esm/shiki/index.mjs +1 -2
- package/dist/esm/shiki/index.mjs.map +1 -1
- package/dist/esm/shiki/index.native.js +1 -2
- package/dist/esm/shiki/index.native.js.map +1 -1
- package/dist/jsx/Aside/index.mjs +39 -34
- package/dist/jsx/Aside/index.mjs.map +1 -1
- package/dist/jsx/Aside/index.native.js +41 -34
- package/dist/jsx/Aside/index.native.js.map +1 -1
- package/dist/jsx/ExternalIcon/index.mjs +2 -0
- package/dist/jsx/ExternalIcon/index.mjs.map +1 -1
- package/dist/jsx/ExternalIcon/index.native.js +2 -0
- package/dist/jsx/ExternalIcon/index.native.js.map +1 -1
- package/dist/jsx/Hr/index.mjs +4 -12
- package/dist/jsx/Hr/index.mjs.map +1 -1
- package/dist/jsx/Hr/index.native.js +3 -11
- package/dist/jsx/Hr/index.native.js.map +1 -1
- package/dist/jsx/{SimpleTable → MarkdownSimpleTable}/index.mjs +24 -6
- package/dist/jsx/MarkdownSimpleTable/index.mjs.map +1 -0
- package/dist/{cjs/SimpleTable → jsx/MarkdownSimpleTable}/index.native.js +32 -11
- package/dist/jsx/MarkdownSimpleTable/index.native.js.map +1 -0
- package/dist/jsx/Mdx/index.mjs +15 -7
- package/dist/jsx/Mdx/index.mjs.map +1 -1
- package/dist/jsx/Mdx/index.native.js +15 -7
- package/dist/jsx/Mdx/index.native.js.map +1 -1
- package/dist/jsx/MdxCodeBlock/index.mjs +30 -22
- package/dist/jsx/MdxCodeBlock/index.mjs.map +1 -1
- package/dist/jsx/MdxCodeBlock/index.native.js +33 -22
- package/dist/jsx/MdxCodeBlock/index.native.js.map +1 -1
- package/dist/jsx/Notice/index.mjs +15 -57
- package/dist/jsx/Notice/index.mjs.map +1 -1
- package/dist/jsx/Notice/index.native.js +13 -56
- package/dist/jsx/Notice/index.native.js.map +1 -1
- package/dist/jsx/Table/index.mjs +13 -0
- package/dist/jsx/Table/index.mjs.map +1 -1
- package/dist/jsx/Table/index.native.js +15 -0
- package/dist/jsx/Table/index.native.js.map +1 -1
- package/dist/jsx/Tabs/index.mjs +17 -49
- package/dist/jsx/Tabs/index.mjs.map +1 -1
- package/dist/jsx/Tabs/index.native.js +20 -52
- package/dist/jsx/Tabs/index.native.js.map +1 -1
- package/dist/jsx/Ul/index.mjs +2 -2
- package/dist/jsx/Ul/index.mjs.map +1 -1
- package/dist/jsx/Ul/index.native.js +2 -2
- package/dist/jsx/Ul/index.native.js.map +1 -1
- package/dist/jsx/Video/index.mjs +4 -2
- package/dist/jsx/Video/index.mjs.map +1 -1
- package/dist/jsx/Video/index.native.js +4 -2
- package/dist/jsx/Video/index.native.js.map +1 -1
- package/dist/jsx/components/Blockquote.mjs +17 -4
- package/dist/jsx/components/Blockquote.mjs.map +1 -1
- package/dist/jsx/components/Blockquote.native.js +25 -3
- package/dist/jsx/components/Blockquote.native.js.map +1 -1
- package/dist/jsx/components/Break.mjs +2 -1
- package/dist/jsx/components/Break.mjs.map +1 -1
- package/dist/jsx/components/Break.native.js +1 -0
- package/dist/jsx/components/Break.native.js.map +1 -1
- package/dist/jsx/components/CodeBlock.mjs +21 -61
- package/dist/jsx/components/CodeBlock.mjs.map +1 -1
- package/dist/jsx/components/CodeBlock.native.js +22 -64
- package/dist/jsx/components/CodeBlock.native.js.map +1 -1
- package/dist/jsx/components/Heading.mjs +24 -1
- package/dist/jsx/components/Heading.mjs.map +1 -1
- package/dist/jsx/components/Heading.native.js +24 -0
- package/dist/jsx/components/Heading.native.js.map +1 -1
- package/dist/jsx/components/Image.mjs +3 -5
- package/dist/jsx/components/Image.mjs.map +1 -1
- package/dist/jsx/components/Image.native.js +6 -5
- package/dist/jsx/components/Image.native.js.map +1 -1
- package/dist/jsx/components/InlineCode.mjs +3 -6
- package/dist/jsx/components/InlineCode.mjs.map +1 -1
- package/dist/jsx/components/InlineCode.native.js +3 -6
- package/dist/jsx/components/InlineCode.native.js.map +1 -1
- package/dist/jsx/components/InlineStyles.mjs +3 -0
- package/dist/jsx/components/InlineStyles.mjs.map +1 -1
- package/dist/jsx/components/InlineStyles.native.js +3 -0
- package/dist/jsx/components/InlineStyles.native.js.map +1 -1
- package/dist/jsx/components/Link.mjs +23 -6
- package/dist/jsx/components/Link.mjs.map +1 -1
- package/dist/jsx/components/Link.native.js +23 -5
- package/dist/jsx/components/Link.native.js.map +1 -1
- package/dist/jsx/components/List.mjs +88 -10
- package/dist/jsx/components/List.mjs.map +1 -1
- package/dist/jsx/components/List.native.js +91 -9
- package/dist/jsx/components/List.native.js.map +1 -1
- package/dist/jsx/components/Paragraph.mjs +6 -1
- package/dist/jsx/components/Paragraph.mjs.map +1 -1
- package/dist/jsx/components/Paragraph.native.js +6 -1
- package/dist/jsx/components/Paragraph.native.js.map +1 -1
- package/dist/jsx/components/Table.mjs +59 -26
- package/dist/jsx/components/Table.mjs.map +1 -1
- package/dist/jsx/components/Table.native.js +67 -25
- package/dist/jsx/components/Table.native.js.map +1 -1
- package/dist/jsx/hooks/useCompileMdx.mjs +61 -29
- package/dist/jsx/hooks/useCompileMdx.mjs.map +1 -1
- package/dist/jsx/hooks/useCompileMdx.native.js +80 -28
- package/dist/jsx/hooks/useCompileMdx.native.js.map +1 -1
- package/dist/jsx/hooks/useEvaluateMdx.mjs +7 -1
- package/dist/jsx/hooks/useEvaluateMdx.mjs.map +1 -1
- package/dist/jsx/hooks/useEvaluateMdx.native.js +9 -3
- package/dist/jsx/hooks/useEvaluateMdx.native.js.map +1 -1
- package/dist/jsx/icons/index.mjs +32 -100
- package/dist/jsx/icons/index.mjs.map +1 -1
- package/dist/jsx/icons/index.native.js +36 -116
- package/dist/jsx/icons/index.native.js.map +1 -1
- package/dist/jsx/index.js +5 -3
- package/dist/jsx/index.js.map +1 -1
- package/dist/jsx/index.mjs +5 -3
- package/dist/jsx/index.mjs.map +1 -1
- package/dist/jsx/index.native.js +6 -4
- package/dist/jsx/index.native.js.map +1 -1
- package/dist/jsx/mdxComponents.mjs +14 -7
- package/dist/jsx/mdxComponents.mjs.map +1 -1
- package/dist/jsx/mdxComponents.native.js +16 -6
- package/dist/jsx/mdxComponents.native.js.map +1 -1
- package/dist/jsx/mermaid/MermaidBlock.mjs +85 -0
- package/dist/jsx/mermaid/MermaidBlock.mjs.map +1 -0
- package/dist/jsx/mermaid/MermaidBlock.native.js +41 -0
- package/dist/jsx/mermaid/MermaidBlock.native.js.map +1 -0
- package/dist/jsx/mermaid/index.mjs +4 -0
- package/dist/jsx/mermaid/index.mjs.map +1 -0
- package/dist/jsx/mermaid/index.native.js +34 -0
- package/dist/jsx/mermaid/index.native.js.map +1 -0
- package/dist/jsx/mermaid/mountDiagramSvg.mjs +29 -0
- package/dist/jsx/mermaid/mountDiagramSvg.mjs.map +1 -0
- package/dist/jsx/mermaid/mountDiagramSvg.native.js +98 -0
- package/dist/jsx/mermaid/mountDiagramSvg.native.js.map +1 -0
- package/dist/jsx/mermaid/renderMermaidDiagram.mjs +55 -0
- package/dist/jsx/mermaid/renderMermaidDiagram.mjs.map +1 -0
- package/dist/jsx/mermaid/renderMermaidDiagram.native.js +110 -0
- package/dist/jsx/mermaid/renderMermaidDiagram.native.js.map +1 -0
- package/dist/jsx/renderer.mjs +9 -1
- package/dist/jsx/renderer.mjs.map +1 -1
- package/dist/jsx/renderer.native.js +10 -2
- package/dist/jsx/renderer.native.js.map +1 -1
- package/dist/jsx/shared/colorRamps.mjs +1 -10
- package/dist/jsx/shared/colorRamps.mjs.map +1 -1
- package/dist/jsx/shared/colorRamps.native.js +1 -11
- package/dist/jsx/shared/colorRamps.native.js.map +1 -1
- package/dist/jsx/shared/cutoffGradient.mjs +28 -0
- package/dist/jsx/shared/cutoffGradient.mjs.map +1 -0
- package/dist/jsx/shared/cutoffGradient.native.js +63 -0
- package/dist/jsx/shared/cutoffGradient.native.js.map +1 -0
- package/dist/jsx/shiki/index.mjs +1 -2
- package/dist/jsx/shiki/index.mjs.map +1 -1
- package/dist/jsx/shiki/index.native.js +0 -15
- package/dist/jsx/shiki/index.native.js.map +1 -1
- package/package.json +25 -14
- package/src/Aside/index.tsx +42 -35
- package/src/ExternalIcon/index.tsx +8 -1
- package/src/Hr/index.tsx +3 -6
- package/src/{SimpleTable → MarkdownSimpleTable}/index.tsx +30 -12
- package/src/MarkdownSimpleTable/markdownSimpleTable.spec.tsx +92 -0
- package/src/Mdx/index.tsx +12 -7
- package/src/MdxCodeBlock/index.tsx +33 -20
- package/src/Notice/index.tsx +12 -54
- package/src/Table/index.tsx +22 -6
- package/src/Tabs/index.tsx +26 -52
- package/src/Ul/index.ts +2 -2
- package/src/Video/index.tsx +15 -12
- package/src/components/Blockquote.tsx +29 -4
- package/src/components/Break.tsx +3 -1
- package/src/components/CodeBlock.tsx +49 -79
- package/src/components/Heading.tsx +15 -2
- package/src/components/Image.tsx +6 -3
- package/src/components/InlineCode.tsx +14 -7
- package/src/components/InlineStyles.tsx +15 -3
- package/src/components/Link.tsx +29 -6
- package/src/components/List.tsx +111 -11
- package/src/components/Paragraph.tsx +6 -1
- package/src/components/Table.tsx +56 -35
- package/src/components/markdownPrimitives.spec.tsx +121 -0
- package/src/docBlocks.spec.tsx +85 -0
- package/src/hooks/useCompileMdx.ts +75 -35
- package/src/hooks/useEvaluateMdx.ts +7 -1
- package/src/icons/index.tsx +36 -58
- package/src/index.ts +15 -3
- package/src/markdownComponent.spec.tsx +58 -0
- package/src/mdx.spec.tsx +4 -0
- package/src/mdxComponents.spec.tsx +185 -0
- package/src/mdxComponents.tsx +14 -5
- package/src/mermaid/MermaidBlock.native.tsx +15 -0
- package/src/mermaid/MermaidBlock.tsx +88 -0
- package/src/mermaid/index.ts +23 -0
- package/src/mermaid/mountDiagramSvg.ts +49 -0
- package/src/mermaid/renderMermaidDiagram.spec.ts +89 -0
- package/src/mermaid/renderMermaidDiagram.ts +78 -0
- package/src/renderer.spec.tsx +276 -0
- package/src/renderer.tsx +13 -1
- package/src/shared/colorRamps.ts +0 -10
- package/src/shared/cutoffGradient.ts +40 -0
- package/src/shiki/index.ts +7 -11
- package/src/stories/Blocks.stories.tsx +232 -0
- package/src/stories/Callouts.stories.tsx +147 -0
- package/src/stories/Code.stories.tsx +116 -0
- package/src/stories/Inline.stories.tsx +162 -0
- package/src/stories/Mdx.stories.tsx +107 -0
- package/src/stories/Media.stories.tsx +148 -0
- package/src/stories/Tables.stories.tsx +173 -0
- package/types/Aside/index.d.ts +11 -0
- package/types/Aside/index.d.ts.map +1 -0
- package/types/ExternalIcon/index.d.ts +2 -0
- package/types/ExternalIcon/index.d.ts.map +1 -0
- package/types/Hr/index.d.ts +2 -0
- package/types/Hr/index.d.ts.map +1 -0
- package/types/Li/index.d.ts +6 -0
- package/types/Li/index.d.ts.map +1 -0
- package/types/Markdown.d.ts +22 -0
- package/types/Markdown.d.ts.map +1 -0
- package/types/MarkdownSimpleTable/index.d.ts +16 -0
- package/types/MarkdownSimpleTable/index.d.ts.map +1 -0
- package/types/Mdx/index.d.ts +9 -0
- package/types/Mdx/index.d.ts.map +1 -0
- package/types/MdxCodeBlock/index.d.ts +7 -0
- package/types/MdxCodeBlock/index.d.ts.map +1 -0
- package/types/MdxCodeBlock/mdxCodeBlockContext.d.ts +13 -0
- package/types/MdxCodeBlock/mdxCodeBlockContext.d.ts.map +1 -0
- package/types/Notice/index.d.ts +12 -0
- package/types/Notice/index.d.ts.map +1 -0
- package/types/Table/index.d.ts +20 -0
- package/types/Table/index.d.ts.map +1 -0
- package/types/Tabs/index.d.ts +21 -0
- package/types/Tabs/index.d.ts.map +1 -0
- package/types/Ul/index.d.ts +6 -0
- package/types/Ul/index.d.ts.map +1 -0
- package/types/Video/index.d.ts +12 -0
- package/types/Video/index.d.ts.map +1 -0
- package/types/components/Blockquote.d.ts +3 -0
- package/types/components/Blockquote.d.ts.map +1 -0
- package/types/components/Break.d.ts +3 -0
- package/types/components/Break.d.ts.map +1 -0
- package/types/components/CodeBlock.d.ts +17 -0
- package/types/components/CodeBlock.d.ts.map +1 -0
- package/types/components/Heading.d.ts +3 -0
- package/types/components/Heading.d.ts.map +1 -0
- package/types/components/HorizontalRule.d.ts +3 -0
- package/types/components/HorizontalRule.d.ts.map +1 -0
- package/types/components/Image.d.ts +3 -0
- package/types/components/Image.d.ts.map +1 -0
- package/types/components/InlineCode.d.ts +12 -0
- package/types/components/InlineCode.d.ts.map +1 -0
- package/types/components/InlineStyles.d.ts +5 -0
- package/types/components/InlineStyles.d.ts.map +1 -0
- package/types/components/Link.d.ts +3 -0
- package/types/components/Link.d.ts.map +1 -0
- package/types/components/List.d.ts +10 -0
- package/types/components/List.d.ts.map +1 -0
- package/types/components/Paragraph.d.ts +3 -0
- package/types/components/Paragraph.d.ts.map +1 -0
- package/types/components/Table.d.ts +13 -0
- package/types/components/Table.d.ts.map +1 -0
- package/types/components/index.d.ts +13 -0
- package/types/components/index.d.ts.map +1 -0
- package/types/hooks/index.d.ts +4 -0
- package/types/hooks/index.d.ts.map +1 -0
- package/types/hooks/useCompileAndEvaluateMdx.d.ts +9 -0
- package/types/hooks/useCompileAndEvaluateMdx.d.ts.map +1 -0
- package/types/hooks/useCompileMdx.d.ts +13 -0
- package/types/hooks/useCompileMdx.d.ts.map +1 -0
- package/types/hooks/useEvaluateMdx.d.ts +5 -0
- package/types/hooks/useEvaluateMdx.d.ts.map +1 -0
- package/types/icons/index.d.ts +12 -0
- package/types/icons/index.d.ts.map +1 -0
- package/types/index.d.ts +29 -0
- package/types/index.d.ts.map +1 -0
- package/types/mdxComponents.d.ts +8 -0
- package/types/mdxComponents.d.ts.map +1 -0
- package/types/mermaid/MermaidBlock.d.ts +15 -0
- package/types/mermaid/MermaidBlock.d.ts.map +1 -0
- package/types/mermaid/MermaidBlock.native.d.ts +10 -0
- package/types/mermaid/MermaidBlock.native.d.ts.map +1 -0
- package/types/mermaid/index.d.ts +18 -0
- package/types/mermaid/index.d.ts.map +1 -0
- package/types/mermaid/mountDiagramSvg.d.ts +11 -0
- package/types/mermaid/mountDiagramSvg.d.ts.map +1 -0
- package/types/mermaid/renderMermaidDiagram.d.ts +33 -0
- package/types/mermaid/renderMermaidDiagram.d.ts.map +1 -0
- package/types/parser.d.ts +11 -0
- package/types/parser.d.ts.map +1 -0
- package/types/renderer.d.ts +32 -0
- package/types/renderer.d.ts.map +1 -0
- package/types/shared/colorRamps.d.ts +39 -0
- package/types/shared/colorRamps.d.ts.map +1 -0
- package/types/shared/cutoffGradient.d.ts +12 -0
- package/types/shared/cutoffGradient.d.ts.map +1 -0
- package/types/shared/index.d.ts +2 -0
- package/types/shared/index.d.ts.map +1 -0
- package/types/shiki/index.d.ts +8 -0
- package/types/shiki/index.d.ts.map +1 -0
- package/types/types.d.ts +160 -0
- package/types/types.d.ts.map +1 -0
- package/types/util/rehypeMetaAttributes.d.ts +2 -0
- package/types/util/rehypeMetaAttributes.d.ts.map +1 -0
- package/dist/cjs/ExternalIcon/ExternalIcon.spec.cjs +0 -37
- package/dist/cjs/ExternalIcon/ExternalIcon.spec.native.js +0 -40
- package/dist/cjs/ExternalIcon/ExternalIcon.spec.native.js.map +0 -1
- package/dist/cjs/Hr/hr.spec.cjs +0 -21
- package/dist/cjs/Hr/hr.spec.native.js +0 -24
- package/dist/cjs/Hr/hr.spec.native.js.map +0 -1
- package/dist/cjs/Li/li.spec.cjs +0 -45
- package/dist/cjs/Li/li.spec.native.js +0 -50
- package/dist/cjs/Li/li.spec.native.js.map +0 -1
- package/dist/cjs/Markdown.stories.cjs +0 -153
- package/dist/cjs/Markdown.stories.native.js +0 -162
- package/dist/cjs/Markdown.stories.native.js.map +0 -1
- package/dist/cjs/Mdx/mdx.spec.cjs +0 -139
- package/dist/cjs/Mdx/mdx.spec.native.js +0 -158
- package/dist/cjs/Mdx/mdx.spec.native.js.map +0 -1
- package/dist/cjs/MdxCodeBlock/mdxCodeBlock.spec.cjs +0 -90
- package/dist/cjs/MdxCodeBlock/mdxCodeBlock.spec.native.js +0 -122
- package/dist/cjs/MdxCodeBlock/mdxCodeBlock.spec.native.js.map +0 -1
- package/dist/cjs/SimpleTable/index.native.js.map +0 -1
- package/dist/cjs/Ul/ul.spec.cjs +0 -150
- package/dist/cjs/Ul/ul.spec.native.js +0 -153
- package/dist/cjs/Ul/ul.spec.native.js.map +0 -1
- package/dist/cjs/hooks/useCompileAndEvaluateMdx.spec.cjs +0 -34
- package/dist/cjs/hooks/useCompileAndEvaluateMdx.spec.native.js +0 -49
- package/dist/cjs/hooks/useCompileAndEvaluateMdx.spec.native.js.map +0 -1
- package/dist/cjs/mdx.spec.cjs +0 -400
- package/dist/cjs/mdx.spec.native.js +0 -465
- package/dist/cjs/mdx.spec.native.js.map +0 -1
- package/dist/cjs/parser.spec.cjs +0 -109
- package/dist/cjs/parser.spec.native.js +0 -114
- package/dist/cjs/parser.spec.native.js.map +0 -1
- package/dist/cjs/shiki/highlighter.cjs +0 -89
- package/dist/cjs/shiki/highlighter.native.js +0 -94
- package/dist/cjs/shiki/highlighter.native.js.map +0 -1
- package/dist/cjs/util/util.spec.cjs +0 -81
- package/dist/cjs/util/util.spec.native.js +0 -84
- package/dist/cjs/util/util.spec.native.js.map +0 -1
- package/dist/esm/ExternalIcon/ExternalIcon.spec.mjs +0 -38
- package/dist/esm/ExternalIcon/ExternalIcon.spec.mjs.map +0 -1
- package/dist/esm/ExternalIcon/ExternalIcon.spec.native.js +0 -38
- package/dist/esm/ExternalIcon/ExternalIcon.spec.native.js.map +0 -1
- package/dist/esm/Hr/hr.spec.mjs +0 -22
- package/dist/esm/Hr/hr.spec.mjs.map +0 -1
- package/dist/esm/Hr/hr.spec.native.js +0 -22
- package/dist/esm/Hr/hr.spec.native.js.map +0 -1
- package/dist/esm/Li/li.spec.mjs +0 -46
- package/dist/esm/Li/li.spec.mjs.map +0 -1
- package/dist/esm/Li/li.spec.native.js +0 -48
- package/dist/esm/Li/li.spec.native.js.map +0 -1
- package/dist/esm/Markdown.stories.mjs +0 -125
- package/dist/esm/Markdown.stories.mjs.map +0 -1
- package/dist/esm/Markdown.stories.native.js +0 -131
- package/dist/esm/Markdown.stories.native.js.map +0 -1
- package/dist/esm/Mdx/mdx.spec.mjs +0 -140
- package/dist/esm/Mdx/mdx.spec.mjs.map +0 -1
- package/dist/esm/Mdx/mdx.spec.native.js +0 -156
- package/dist/esm/Mdx/mdx.spec.native.js.map +0 -1
- package/dist/esm/MdxCodeBlock/mdxCodeBlock.spec.mjs +0 -91
- package/dist/esm/MdxCodeBlock/mdxCodeBlock.spec.mjs.map +0 -1
- package/dist/esm/MdxCodeBlock/mdxCodeBlock.spec.native.js +0 -96
- package/dist/esm/MdxCodeBlock/mdxCodeBlock.spec.native.js.map +0 -1
- package/dist/esm/SimpleTable/index.mjs.map +0 -1
- package/dist/esm/SimpleTable/index.native.js.map +0 -1
- package/dist/esm/Ul/ul.spec.mjs +0 -151
- package/dist/esm/Ul/ul.spec.mjs.map +0 -1
- package/dist/esm/Ul/ul.spec.native.js +0 -151
- package/dist/esm/Ul/ul.spec.native.js.map +0 -1
- package/dist/esm/hooks/useCompileAndEvaluateMdx.spec.mjs +0 -35
- package/dist/esm/hooks/useCompileAndEvaluateMdx.spec.mjs.map +0 -1
- package/dist/esm/hooks/useCompileAndEvaluateMdx.spec.native.js +0 -47
- package/dist/esm/hooks/useCompileAndEvaluateMdx.spec.native.js.map +0 -1
- package/dist/esm/mdx.spec.mjs +0 -377
- package/dist/esm/mdx.spec.mjs.map +0 -1
- package/dist/esm/mdx.spec.native.js +0 -439
- package/dist/esm/mdx.spec.native.js.map +0 -1
- package/dist/esm/parser.spec.mjs +0 -110
- package/dist/esm/parser.spec.mjs.map +0 -1
- package/dist/esm/parser.spec.native.js +0 -112
- package/dist/esm/parser.spec.native.js.map +0 -1
- package/dist/esm/shiki/highlighter.mjs +0 -59
- package/dist/esm/shiki/highlighter.mjs.map +0 -1
- package/dist/esm/shiki/highlighter.native.js +0 -61
- package/dist/esm/shiki/highlighter.native.js.map +0 -1
- package/dist/esm/util/util.spec.mjs +0 -82
- package/dist/esm/util/util.spec.mjs.map +0 -1
- package/dist/esm/util/util.spec.native.js +0 -82
- package/dist/esm/util/util.spec.native.js.map +0 -1
- package/dist/jsx/ExternalIcon/ExternalIcon.spec.mjs +0 -38
- package/dist/jsx/ExternalIcon/ExternalIcon.spec.mjs.map +0 -1
- package/dist/jsx/ExternalIcon/ExternalIcon.spec.native.js +0 -40
- package/dist/jsx/ExternalIcon/ExternalIcon.spec.native.js.map +0 -1
- package/dist/jsx/Hr/hr.spec.mjs +0 -22
- package/dist/jsx/Hr/hr.spec.mjs.map +0 -1
- package/dist/jsx/Hr/hr.spec.native.js +0 -24
- package/dist/jsx/Hr/hr.spec.native.js.map +0 -1
- package/dist/jsx/Li/li.spec.mjs +0 -46
- package/dist/jsx/Li/li.spec.mjs.map +0 -1
- package/dist/jsx/Li/li.spec.native.js +0 -50
- package/dist/jsx/Li/li.spec.native.js.map +0 -1
- package/dist/jsx/Markdown.stories.mjs +0 -125
- package/dist/jsx/Markdown.stories.mjs.map +0 -1
- package/dist/jsx/Markdown.stories.native.js +0 -162
- package/dist/jsx/Markdown.stories.native.js.map +0 -1
- package/dist/jsx/Mdx/mdx.spec.mjs +0 -140
- package/dist/jsx/Mdx/mdx.spec.mjs.map +0 -1
- package/dist/jsx/Mdx/mdx.spec.native.js +0 -158
- package/dist/jsx/Mdx/mdx.spec.native.js.map +0 -1
- package/dist/jsx/MdxCodeBlock/mdxCodeBlock.spec.mjs +0 -91
- package/dist/jsx/MdxCodeBlock/mdxCodeBlock.spec.mjs.map +0 -1
- package/dist/jsx/MdxCodeBlock/mdxCodeBlock.spec.native.js +0 -122
- package/dist/jsx/MdxCodeBlock/mdxCodeBlock.spec.native.js.map +0 -1
- package/dist/jsx/SimpleTable/index.mjs.map +0 -1
- package/dist/jsx/SimpleTable/index.native.js.map +0 -1
- package/dist/jsx/Ul/ul.spec.mjs +0 -151
- package/dist/jsx/Ul/ul.spec.mjs.map +0 -1
- package/dist/jsx/Ul/ul.spec.native.js +0 -153
- package/dist/jsx/Ul/ul.spec.native.js.map +0 -1
- package/dist/jsx/hooks/useCompileAndEvaluateMdx.spec.mjs +0 -35
- package/dist/jsx/hooks/useCompileAndEvaluateMdx.spec.mjs.map +0 -1
- package/dist/jsx/hooks/useCompileAndEvaluateMdx.spec.native.js +0 -49
- package/dist/jsx/hooks/useCompileAndEvaluateMdx.spec.native.js.map +0 -1
- package/dist/jsx/mdx.spec.mjs +0 -377
- package/dist/jsx/mdx.spec.mjs.map +0 -1
- package/dist/jsx/mdx.spec.native.js +0 -465
- package/dist/jsx/mdx.spec.native.js.map +0 -1
- package/dist/jsx/parser.spec.mjs +0 -110
- package/dist/jsx/parser.spec.mjs.map +0 -1
- package/dist/jsx/parser.spec.native.js +0 -114
- package/dist/jsx/parser.spec.native.js.map +0 -1
- package/dist/jsx/shiki/highlighter.mjs +0 -59
- package/dist/jsx/shiki/highlighter.mjs.map +0 -1
- package/dist/jsx/shiki/highlighter.native.js +0 -94
- package/dist/jsx/shiki/highlighter.native.js.map +0 -1
- package/dist/jsx/util/util.spec.mjs +0 -82
- package/dist/jsx/util/util.spec.mjs.map +0 -1
- package/dist/jsx/util/util.spec.native.js +0 -84
- package/dist/jsx/util/util.spec.native.js.map +0 -1
- package/src/shiki/highlighter.ts +0 -148
|
@@ -1,114 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var import_vitest = require("vitest");
|
|
4
|
-
var import_parser = require("./parser.native.js");
|
|
5
|
-
(0, import_vitest.describe)("parseMarkdown", function () {
|
|
6
|
-
(0, import_vitest.it)("parses a heading", function () {
|
|
7
|
-
var ast = (0, import_parser.parseMarkdown)("# Hello");
|
|
8
|
-
(0, import_vitest.expect)(ast.type).toBe("root");
|
|
9
|
-
(0, import_vitest.expect)(ast.children).toHaveLength(1);
|
|
10
|
-
(0, import_vitest.expect)(ast.children[0].type).toBe("heading");
|
|
11
|
-
var heading = ast.children[0];
|
|
12
|
-
(0, import_vitest.expect)(heading.depth).toBe(1);
|
|
13
|
-
(0, import_vitest.expect)(heading.children[0].value).toBe("Hello");
|
|
14
|
-
});
|
|
15
|
-
(0, import_vitest.it)("parses a paragraph", function () {
|
|
16
|
-
var ast = (0, import_parser.parseMarkdown)("Just some text.");
|
|
17
|
-
(0, import_vitest.expect)(ast.children[0].type).toBe("paragraph");
|
|
18
|
-
});
|
|
19
|
-
(0, import_vitest.it)("parses inline formatting", function () {
|
|
20
|
-
var ast = (0, import_parser.parseMarkdown)("**bold** and *italic*");
|
|
21
|
-
var paragraph = ast.children[0];
|
|
22
|
-
(0, import_vitest.expect)(paragraph.children[0].type).toBe("strong");
|
|
23
|
-
(0, import_vitest.expect)(paragraph.children[2].type).toBe("emphasis");
|
|
24
|
-
});
|
|
25
|
-
(0, import_vitest.it)("parses an unordered list", function () {
|
|
26
|
-
var ast = (0, import_parser.parseMarkdown)("- item 1\n- item 2\n- item 3");
|
|
27
|
-
(0, import_vitest.expect)(ast.children[0].type).toBe("list");
|
|
28
|
-
var list = ast.children[0];
|
|
29
|
-
(0, import_vitest.expect)(list.ordered).toBe(false);
|
|
30
|
-
(0, import_vitest.expect)(list.children).toHaveLength(3);
|
|
31
|
-
});
|
|
32
|
-
(0, import_vitest.it)("parses an ordered list", function () {
|
|
33
|
-
var ast = (0, import_parser.parseMarkdown)("1. first\n2. second");
|
|
34
|
-
var list = ast.children[0];
|
|
35
|
-
(0, import_vitest.expect)(list.type).toBe("list");
|
|
36
|
-
(0, import_vitest.expect)(list.ordered).toBe(true);
|
|
37
|
-
(0, import_vitest.expect)(list.children).toHaveLength(2);
|
|
38
|
-
});
|
|
39
|
-
(0, import_vitest.it)("parses a code block", function () {
|
|
40
|
-
var ast = (0, import_parser.parseMarkdown)("```js\nconsole.log('hi');\n```");
|
|
41
|
-
var code = ast.children[0];
|
|
42
|
-
(0, import_vitest.expect)(code.type).toBe("code");
|
|
43
|
-
(0, import_vitest.expect)(code.lang).toBe("js");
|
|
44
|
-
(0, import_vitest.expect)(code.value).toBe("console.log('hi');");
|
|
45
|
-
});
|
|
46
|
-
(0, import_vitest.it)("parses inline code", function () {
|
|
47
|
-
var ast = (0, import_parser.parseMarkdown)("Use `const x = 1` here.");
|
|
48
|
-
var paragraph = ast.children[0];
|
|
49
|
-
var inlineCode = paragraph.children.find(function (c) {
|
|
50
|
-
return c.type === "inlineCode";
|
|
51
|
-
});
|
|
52
|
-
(0, import_vitest.expect)(inlineCode).toBeDefined();
|
|
53
|
-
(0, import_vitest.expect)(inlineCode.value).toBe("const x = 1");
|
|
54
|
-
});
|
|
55
|
-
(0, import_vitest.it)("parses a blockquote", function () {
|
|
56
|
-
var ast = (0, import_parser.parseMarkdown)("> A quote");
|
|
57
|
-
(0, import_vitest.expect)(ast.children[0].type).toBe("blockquote");
|
|
58
|
-
});
|
|
59
|
-
(0, import_vitest.it)("parses a link", function () {
|
|
60
|
-
var ast = (0, import_parser.parseMarkdown)("[example](https://example.com)");
|
|
61
|
-
var paragraph = ast.children[0];
|
|
62
|
-
var link = paragraph.children[0];
|
|
63
|
-
(0, import_vitest.expect)(link.type).toBe("link");
|
|
64
|
-
(0, import_vitest.expect)(link.url).toBe("https://example.com");
|
|
65
|
-
(0, import_vitest.expect)(link.children[0].value).toBe("example");
|
|
66
|
-
});
|
|
67
|
-
(0, import_vitest.it)("parses an image", function () {
|
|
68
|
-
var ast = (0, import_parser.parseMarkdown)("");
|
|
69
|
-
var paragraph = ast.children[0];
|
|
70
|
-
var image = paragraph.children[0];
|
|
71
|
-
(0, import_vitest.expect)(image.type).toBe("image");
|
|
72
|
-
(0, import_vitest.expect)(image.url).toBe("image.png");
|
|
73
|
-
(0, import_vitest.expect)(image.alt).toBe("alt text");
|
|
74
|
-
});
|
|
75
|
-
(0, import_vitest.it)("parses a horizontal rule", function () {
|
|
76
|
-
var ast = (0, import_parser.parseMarkdown)("---");
|
|
77
|
-
(0, import_vitest.expect)(ast.children[0].type).toBe("thematicBreak");
|
|
78
|
-
});
|
|
79
|
-
(0, import_vitest.it)("parses GFM tables", function () {
|
|
80
|
-
var md = "| A | B |\n| --- | --- |\n| 1 | 2 |";
|
|
81
|
-
var ast = (0, import_parser.parseMarkdown)(md);
|
|
82
|
-
(0, import_vitest.expect)(ast.children[0].type).toBe("table");
|
|
83
|
-
});
|
|
84
|
-
(0, import_vitest.it)("parses GFM strikethrough", function () {
|
|
85
|
-
var ast = (0, import_parser.parseMarkdown)("~~deleted~~");
|
|
86
|
-
var paragraph = ast.children[0];
|
|
87
|
-
(0, import_vitest.expect)(paragraph.children[0].type).toBe("delete");
|
|
88
|
-
});
|
|
89
|
-
(0, import_vitest.it)("parses GFM task lists", function () {
|
|
90
|
-
var ast = (0, import_parser.parseMarkdown)("- [x] done\n- [ ] todo");
|
|
91
|
-
var list = ast.children[0];
|
|
92
|
-
(0, import_vitest.expect)(list.children[0].checked).toBe(true);
|
|
93
|
-
(0, import_vitest.expect)(list.children[1].checked).toBe(false);
|
|
94
|
-
});
|
|
95
|
-
(0, import_vitest.it)("handles empty input", function () {
|
|
96
|
-
var ast = (0, import_parser.parseMarkdown)("");
|
|
97
|
-
(0, import_vitest.expect)(ast.type).toBe("root");
|
|
98
|
-
(0, import_vitest.expect)(ast.children).toHaveLength(0);
|
|
99
|
-
});
|
|
100
|
-
(0, import_vitest.it)("handles complex multi-element markdown", function () {
|
|
101
|
-
var md = "# Title\n\nParagraph.\n\n- item\n\n```\ncode\n```";
|
|
102
|
-
var ast = (0, import_parser.parseMarkdown)(md);
|
|
103
|
-
(0, import_vitest.expect)(ast.children.length).toBeGreaterThanOrEqual(4);
|
|
104
|
-
});
|
|
105
|
-
});
|
|
106
|
-
(0, import_vitest.describe)("parseMarkdownAsync", function () {
|
|
107
|
-
(0, import_vitest.it)("returns the same AST as sync version", async function () {
|
|
108
|
-
var md = "# Hello\n\nWorld";
|
|
109
|
-
var syncAst = (0, import_parser.parseMarkdown)(md);
|
|
110
|
-
var asyncAst = await (0, import_parser.parseMarkdownAsync)(md);
|
|
111
|
-
(0, import_vitest.expect)(asyncAst).toEqual(syncAst);
|
|
112
|
-
});
|
|
113
|
-
});
|
|
114
|
-
//# sourceMappingURL=parser.spec.native.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["import_vitest","require","import_parser","describe","it","ast","parseMarkdown","expect","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","parseMarkdownAsync"],"sources":["../../src/parser.spec.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import { createHighlighter } from "shiki";
|
|
2
|
-
import { createJavaScriptRegexEngine } from "shiki/engine/javascript";
|
|
3
|
-
const DEFAULT_LANGS = ["javascript", "typescript", "tsx", "jsx", "python", "bash", "shell", "json", "html", "css", "markdown", "yaml", "sql", "graphql", "rust", "go", "java", "c", "cpp"];
|
|
4
|
-
const DEFAULT_THEMES = ["github-dark", "github-light", "dracula", "nord", "one-dark-pro"];
|
|
5
|
-
let highlighterPromise = null;
|
|
6
|
-
let highlighterInstance = null;
|
|
7
|
-
async function getHighlighter() {
|
|
8
|
-
if (highlighterInstance) {
|
|
9
|
-
return highlighterInstance;
|
|
10
|
-
}
|
|
11
|
-
if (!highlighterPromise) {
|
|
12
|
-
highlighterPromise = createHighlighter({
|
|
13
|
-
themes: DEFAULT_THEMES,
|
|
14
|
-
langs: DEFAULT_LANGS,
|
|
15
|
-
engine: createJavaScriptRegexEngine()
|
|
16
|
-
}).then(h => {
|
|
17
|
-
highlighterInstance = h;
|
|
18
|
-
return h;
|
|
19
|
-
});
|
|
20
|
-
}
|
|
21
|
-
return highlighterPromise;
|
|
22
|
-
}
|
|
23
|
-
async function highlightCode(code, lang, theme = "github-dark") {
|
|
24
|
-
const highlighter = await getHighlighter();
|
|
25
|
-
const loadedLangs = highlighter.getLoadedLanguages();
|
|
26
|
-
const resolvedLang = loadedLangs.includes(lang) ? lang : "text";
|
|
27
|
-
const result = highlighter.codeToTokens(code, {
|
|
28
|
-
lang: resolvedLang,
|
|
29
|
-
theme
|
|
30
|
-
});
|
|
31
|
-
return result.tokens;
|
|
32
|
-
}
|
|
33
|
-
function highlightCodeSync(code, lang, theme = "github-dark") {
|
|
34
|
-
if (!highlighterInstance) {
|
|
35
|
-
return null;
|
|
36
|
-
}
|
|
37
|
-
const loadedLangs = highlighterInstance.getLoadedLanguages();
|
|
38
|
-
const resolvedLang = loadedLangs.includes(lang) ? lang : "text";
|
|
39
|
-
const result = highlighterInstance.codeToTokens(code, {
|
|
40
|
-
lang: resolvedLang,
|
|
41
|
-
theme
|
|
42
|
-
});
|
|
43
|
-
return result.tokens;
|
|
44
|
-
}
|
|
45
|
-
function preloadHighlighter() {
|
|
46
|
-
return getHighlighter().then(() => {});
|
|
47
|
-
}
|
|
48
|
-
async function loadLanguage(lang) {
|
|
49
|
-
const highlighter = await getHighlighter();
|
|
50
|
-
const loadedLangs = highlighter.getLoadedLanguages();
|
|
51
|
-
if (!loadedLangs.includes(lang)) {
|
|
52
|
-
await highlighter.loadLanguage(lang);
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
function isHighlighterReady() {
|
|
56
|
-
return highlighterInstance !== null;
|
|
57
|
-
}
|
|
58
|
-
export { getHighlighter, highlightCode, highlightCodeSync, isHighlighterReady, loadLanguage, preloadHighlighter };
|
|
59
|
-
//# sourceMappingURL=highlighter.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["createHighlighter","createJavaScriptRegexEngine","DEFAULT_LANGS","DEFAULT_THEMES","highlighterPromise","highlighterInstance","getHighlighter","themes","langs","engine","then","h","highlightCode","code","lang","theme","highlighter","loadedLangs","getLoadedLanguages","resolvedLang","includes","result","codeToTokens","tokens","highlightCodeSync","preloadHighlighter","loadLanguage","isHighlighterReady"],"sources":["../../../src/shiki/highlighter.ts"],"sourcesContent":[null],"mappings":"AAIA,SACEA,iBAAA,QAKK;AACP,SAASC,2BAAA,QAAmC;AAK5C,MAAMC,aAAA,GAAmC,CACvC,cACA,cACA,OACA,OACA,UACA,QACA,SACA,QACA,QACA,OACA,YACA,QACA,OACA,WACA,QACA,MACA,QACA,KACA,MACF;AAGA,MAAMC,cAAA,GAAiC,CACrC,eACA,gBACA,WACA,QACA,eACF;AAEA,IAAIC,kBAAA,GAAkD;AACtD,IAAIC,mBAAA,GAA0C;AAM9C,eAAsBC,eAAA,EAAuC;EAC3D,IAAID,mBAAA,EAAqB;IACvB,OAAOA,mBAAA;EACT;EAEA,IAAI,CAACD,kBAAA,EAAoB;IACvBA,kBAAA,GAAqBJ,iBAAA,CAAkB;MACrCO,MAAA,EAAQJ,cAAA;MACRK,KAAA,EAAON,aAAA;MACPO,MAAA,EAAQR,2BAAA,CAA4B;IACtC,CAAC,EAAES,IAAA,CAAMC,CAAA,IAAM;MACbN,mBAAA,GAAsBM,CAAA;MACtB,OAAOA,CAAA;IACT,CAAC;EACH;EAEA,OAAOP,kBAAA;AACT;AAKA,eAAsBQ,cACpBC,IAAA,EACAC,IAAA,EACAC,KAAA,GAAsB,eACI;EAC1B,MAAMC,WAAA,GAAc,MAAMV,cAAA,CAAe;EAGzC,MAAMW,WAAA,GAAcD,WAAA,CAAYE,kBAAA,CAAmB;EACnD,MAAMC,YAAA,GACJF,WAAA,CAAYG,QAAA,CAASN,IAAuB,IAAIA,IAAA,GAAO;EAGzD,MAAMO,MAAA,GAASL,WAAA,CAAYM,YAAA,CAAaT,IAAA,EAAM;IAC5CC,IAAA,EAAMK,YAAA;IACNJ;EACF,CAAC;EAED,OAAOM,MAAA,CAAOE,MAAA;AAChB;AAMO,SAASC,kBACdX,IAAA,EACAC,IAAA,EACAC,KAAA,GAAsB,eACE;EACxB,IAAI,CAACV,mBAAA,EAAqB;IACxB,OAAO;EACT;EAEA,MAAMY,WAAA,GAAcZ,mBAAA,CAAoBa,kBAAA,CAAmB;EAC3D,MAAMC,YAAA,GACJF,WAAA,CAAYG,QAAA,CAASN,IAAuB,IAAIA,IAAA,GAAO;EAGzD,MAAMO,MAAA,GAAShB,mBAAA,CAAoBiB,YAAA,CAAaT,IAAA,EAAM;IACpDC,IAAA,EAAMK,YAAA;IACNJ;EACF,CAAC;EAED,OAAOM,MAAA,CAAOE,MAAA;AAChB;AAKO,SAASE,mBAAA,EAAoC;EAClD,OAAOnB,cAAA,CAAe,EAAEI,IAAA,CAAK,MAAM,CAAC,CAAC;AACvC;AAKA,eAAsBgB,aAAaZ,IAAA,EAAsC;EACvE,MAAME,WAAA,GAAc,MAAMV,cAAA,CAAe;EACzC,MAAMW,WAAA,GAAcD,WAAA,CAAYE,kBAAA,CAAmB;EAEnD,IAAI,CAACD,WAAA,CAAYG,QAAA,CAASN,IAAI,GAAG;IAC/B,MAAME,WAAA,CAAYU,YAAA,CAAaZ,IAAI;EACrC;AACF;AAKO,SAASa,mBAAA,EAA8B;EAC5C,OAAOtB,mBAAA,KAAwB;AACjC","ignoreList":[]}
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var __defProp = Object.defineProperty;
|
|
4
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
-
var __export = (target, all) => {
|
|
8
|
-
for (var name in all) __defProp(target, name, {
|
|
9
|
-
get: all[name],
|
|
10
|
-
enumerable: true
|
|
11
|
-
});
|
|
12
|
-
};
|
|
13
|
-
var __copyProps = (to, from, except, desc) => {
|
|
14
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
15
|
-
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
16
|
-
get: () => from[key],
|
|
17
|
-
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
18
|
-
});
|
|
19
|
-
}
|
|
20
|
-
return to;
|
|
21
|
-
};
|
|
22
|
-
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
23
|
-
value: true
|
|
24
|
-
}), mod);
|
|
25
|
-
var highlighter_exports = {};
|
|
26
|
-
__export(highlighter_exports, {
|
|
27
|
-
getHighlighter: () => getHighlighter,
|
|
28
|
-
highlightCode: () => highlightCode,
|
|
29
|
-
highlightCodeSync: () => highlightCodeSync,
|
|
30
|
-
isHighlighterReady: () => isHighlighterReady,
|
|
31
|
-
loadLanguage: () => loadLanguage,
|
|
32
|
-
preloadHighlighter: () => preloadHighlighter
|
|
33
|
-
});
|
|
34
|
-
module.exports = __toCommonJS(highlighter_exports);
|
|
35
|
-
var import_shiki = require("shiki");
|
|
36
|
-
var import_javascript = require("shiki/engine/javascript");
|
|
37
|
-
var DEFAULT_LANGS = ["javascript", "typescript", "tsx", "jsx", "python", "bash", "shell", "json", "html", "css", "markdown", "yaml", "sql", "graphql", "rust", "go", "java", "c", "cpp"];
|
|
38
|
-
var DEFAULT_THEMES = ["github-dark", "github-light", "dracula", "nord", "one-dark-pro"];
|
|
39
|
-
var highlighterPromise = null;
|
|
40
|
-
var highlighterInstance = null;
|
|
41
|
-
async function getHighlighter() {
|
|
42
|
-
if (highlighterInstance) {
|
|
43
|
-
return highlighterInstance;
|
|
44
|
-
}
|
|
45
|
-
if (!highlighterPromise) {
|
|
46
|
-
highlighterPromise = (0, import_shiki.createHighlighter)({
|
|
47
|
-
themes: DEFAULT_THEMES,
|
|
48
|
-
langs: DEFAULT_LANGS,
|
|
49
|
-
engine: (0, import_javascript.createJavaScriptRegexEngine)()
|
|
50
|
-
}).then(function (h) {
|
|
51
|
-
highlighterInstance = h;
|
|
52
|
-
return h;
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
return highlighterPromise;
|
|
56
|
-
}
|
|
57
|
-
async function highlightCode(code, lang) {
|
|
58
|
-
var theme = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : "github-dark";
|
|
59
|
-
var highlighter = await getHighlighter();
|
|
60
|
-
var loadedLangs = highlighter.getLoadedLanguages();
|
|
61
|
-
var resolvedLang = loadedLangs.includes(lang) ? lang : "text";
|
|
62
|
-
var result = highlighter.codeToTokens(code, {
|
|
63
|
-
lang: resolvedLang,
|
|
64
|
-
theme
|
|
65
|
-
});
|
|
66
|
-
return result.tokens;
|
|
67
|
-
}
|
|
68
|
-
function highlightCodeSync(code, lang) {
|
|
69
|
-
var theme = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : "github-dark";
|
|
70
|
-
if (!highlighterInstance) {
|
|
71
|
-
return null;
|
|
72
|
-
}
|
|
73
|
-
var loadedLangs = highlighterInstance.getLoadedLanguages();
|
|
74
|
-
var resolvedLang = loadedLangs.includes(lang) ? lang : "text";
|
|
75
|
-
var result = highlighterInstance.codeToTokens(code, {
|
|
76
|
-
lang: resolvedLang,
|
|
77
|
-
theme
|
|
78
|
-
});
|
|
79
|
-
return result.tokens;
|
|
80
|
-
}
|
|
81
|
-
function preloadHighlighter() {
|
|
82
|
-
return getHighlighter().then(function () {});
|
|
83
|
-
}
|
|
84
|
-
async function loadLanguage(lang) {
|
|
85
|
-
var highlighter = await getHighlighter();
|
|
86
|
-
var loadedLangs = highlighter.getLoadedLanguages();
|
|
87
|
-
if (!loadedLangs.includes(lang)) {
|
|
88
|
-
await highlighter.loadLanguage(lang);
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
function isHighlighterReady() {
|
|
92
|
-
return highlighterInstance !== null;
|
|
93
|
-
}
|
|
94
|
-
//# sourceMappingURL=highlighter.native.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","highlighter_exports","getHighlighter","highlightCode","highlightCodeSync","isHighlighterReady","loadLanguage","preloadHighlighter","module","exports","import_shiki","require","import_javascript","DEFAULT_LANGS","DEFAULT_THEMES","highlighterPromise","highlighterInstance","createHighlighter","themes","langs","engine","createJavaScriptRegexEngine","then","h","code","lang","theme","arguments","length","highlighter","loadedLangs","getLoadedLanguages","resolvedLang","includes","result","codeToTokens","tokens"],"sources":["../../../src/shiki/highlighter.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
import { visit } from "unist-util-visit";
|
|
2
|
-
import { describe, expect, it } from "vitest";
|
|
3
|
-
import { rehypeMetaAttributes } from "./rehypeMetaAttributes.mjs";
|
|
4
|
-
const mockAST = {
|
|
5
|
-
type: "root",
|
|
6
|
-
children: [{
|
|
7
|
-
type: "element",
|
|
8
|
-
tagName: "pre",
|
|
9
|
-
children: [{
|
|
10
|
-
type: "element",
|
|
11
|
-
tagName: "code",
|
|
12
|
-
properties: {
|
|
13
|
-
className: ["language-tsx"]
|
|
14
|
-
},
|
|
15
|
-
data: {
|
|
16
|
-
meta: 'title="Example Code" highlight="1-2" showLineNumbers'
|
|
17
|
-
},
|
|
18
|
-
children: [{
|
|
19
|
-
type: "text",
|
|
20
|
-
value: "const x: number = 42;\nconsole.log(x);"
|
|
21
|
-
}]
|
|
22
|
-
}]
|
|
23
|
-
}]
|
|
24
|
-
};
|
|
25
|
-
describe("rehypeMetaAttributes", () => {
|
|
26
|
-
it("should extract and apply meta attributes as properties", () => {
|
|
27
|
-
const transformer = rehypeMetaAttributes();
|
|
28
|
-
transformer(mockAST);
|
|
29
|
-
let foundCodeNode = false;
|
|
30
|
-
visit(mockAST, "element", node => {
|
|
31
|
-
if (node.tagName === "code") {
|
|
32
|
-
foundCodeNode = true;
|
|
33
|
-
expect(node.properties).toHaveProperty("title", "Example Code");
|
|
34
|
-
expect(node.properties).toHaveProperty("highlight", "1-2");
|
|
35
|
-
expect(node.properties).toHaveProperty("showLineNumbers", "");
|
|
36
|
-
}
|
|
37
|
-
});
|
|
38
|
-
expect(foundCodeNode).toBe(true);
|
|
39
|
-
});
|
|
40
|
-
it("should handle multiple attributes correctly", () => {
|
|
41
|
-
const transformer = rehypeMetaAttributes();
|
|
42
|
-
transformer(mockAST);
|
|
43
|
-
visit(mockAST, "element", node => {
|
|
44
|
-
if (node.tagName === "code") {
|
|
45
|
-
expect(Object.keys(node.properties)).toEqual(expect.arrayContaining(["className", "title", "highlight", "showLineNumbers"]));
|
|
46
|
-
}
|
|
47
|
-
});
|
|
48
|
-
});
|
|
49
|
-
it("should not modify nodes without meta attributes", () => {
|
|
50
|
-
const originalAST = JSON.parse(JSON.stringify(mockAST));
|
|
51
|
-
originalAST.children[0].children[0].data = void 0;
|
|
52
|
-
originalAST.children[0].children[0].properties = {
|
|
53
|
-
className: ["language-tsx"]
|
|
54
|
-
};
|
|
55
|
-
const transformer = rehypeMetaAttributes();
|
|
56
|
-
transformer(originalAST);
|
|
57
|
-
visit(originalAST, "element", node => {
|
|
58
|
-
if (node.tagName === "code") {
|
|
59
|
-
expect(node.properties).toEqual({
|
|
60
|
-
className: ["language-tsx"]
|
|
61
|
-
});
|
|
62
|
-
}
|
|
63
|
-
});
|
|
64
|
-
});
|
|
65
|
-
it("should handle empty meta attributes without breaking", () => {
|
|
66
|
-
const emptyMetaAST = JSON.parse(JSON.stringify(mockAST));
|
|
67
|
-
emptyMetaAST.children[0].children[0].data.meta = "";
|
|
68
|
-
emptyMetaAST.children[0].children[0].properties = {
|
|
69
|
-
className: ["language-tsx"]
|
|
70
|
-
};
|
|
71
|
-
const transformer = rehypeMetaAttributes();
|
|
72
|
-
transformer(emptyMetaAST);
|
|
73
|
-
visit(emptyMetaAST, "element", node => {
|
|
74
|
-
if (node.tagName === "code") {
|
|
75
|
-
expect(node.properties).toEqual({
|
|
76
|
-
className: ["language-tsx"]
|
|
77
|
-
});
|
|
78
|
-
}
|
|
79
|
-
});
|
|
80
|
-
});
|
|
81
|
-
});
|
|
82
|
-
//# sourceMappingURL=util.spec.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["visit","describe","expect","it","rehypeMetaAttributes","mockAST","type","children","tagName","properties","className","data","meta","value","transformer","foundCodeNode","node","toHaveProperty","toBe","Object","keys","toEqual","arrayContaining","originalAST","JSON","parse","stringify","emptyMetaAST"],"sources":["../../../src/util/util.spec.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var import_unist_util_visit = require("unist-util-visit");
|
|
4
|
-
var import_vitest = require("vitest");
|
|
5
|
-
var import_rehypeMetaAttributes = require("./rehypeMetaAttributes.native.js");
|
|
6
|
-
var mockAST = {
|
|
7
|
-
type: "root",
|
|
8
|
-
children: [{
|
|
9
|
-
type: "element",
|
|
10
|
-
tagName: "pre",
|
|
11
|
-
children: [{
|
|
12
|
-
type: "element",
|
|
13
|
-
tagName: "code",
|
|
14
|
-
properties: {
|
|
15
|
-
className: ["language-tsx"]
|
|
16
|
-
},
|
|
17
|
-
data: {
|
|
18
|
-
meta: 'title="Example Code" highlight="1-2" showLineNumbers'
|
|
19
|
-
},
|
|
20
|
-
children: [{
|
|
21
|
-
type: "text",
|
|
22
|
-
value: "const x: number = 42;\nconsole.log(x);"
|
|
23
|
-
}]
|
|
24
|
-
}]
|
|
25
|
-
}]
|
|
26
|
-
};
|
|
27
|
-
(0, import_vitest.describe)("rehypeMetaAttributes", function () {
|
|
28
|
-
(0, import_vitest.it)("should extract and apply meta attributes as properties", function () {
|
|
29
|
-
var transformer = (0, import_rehypeMetaAttributes.rehypeMetaAttributes)();
|
|
30
|
-
transformer(mockAST);
|
|
31
|
-
var foundCodeNode = false;
|
|
32
|
-
(0, import_unist_util_visit.visit)(mockAST, "element", function (node) {
|
|
33
|
-
if (node.tagName === "code") {
|
|
34
|
-
foundCodeNode = true;
|
|
35
|
-
(0, import_vitest.expect)(node.properties).toHaveProperty("title", "Example Code");
|
|
36
|
-
(0, import_vitest.expect)(node.properties).toHaveProperty("highlight", "1-2");
|
|
37
|
-
(0, import_vitest.expect)(node.properties).toHaveProperty("showLineNumbers", "");
|
|
38
|
-
}
|
|
39
|
-
});
|
|
40
|
-
(0, import_vitest.expect)(foundCodeNode).toBe(true);
|
|
41
|
-
});
|
|
42
|
-
(0, import_vitest.it)("should handle multiple attributes correctly", function () {
|
|
43
|
-
var transformer = (0, import_rehypeMetaAttributes.rehypeMetaAttributes)();
|
|
44
|
-
transformer(mockAST);
|
|
45
|
-
(0, import_unist_util_visit.visit)(mockAST, "element", function (node) {
|
|
46
|
-
if (node.tagName === "code") {
|
|
47
|
-
(0, import_vitest.expect)(Object.keys(node.properties)).toEqual(import_vitest.expect.arrayContaining(["className", "title", "highlight", "showLineNumbers"]));
|
|
48
|
-
}
|
|
49
|
-
});
|
|
50
|
-
});
|
|
51
|
-
(0, import_vitest.it)("should not modify nodes without meta attributes", function () {
|
|
52
|
-
var originalAST = JSON.parse(JSON.stringify(mockAST));
|
|
53
|
-
originalAST.children[0].children[0].data = void 0;
|
|
54
|
-
originalAST.children[0].children[0].properties = {
|
|
55
|
-
className: ["language-tsx"]
|
|
56
|
-
};
|
|
57
|
-
var transformer = (0, import_rehypeMetaAttributes.rehypeMetaAttributes)();
|
|
58
|
-
transformer(originalAST);
|
|
59
|
-
(0, import_unist_util_visit.visit)(originalAST, "element", function (node) {
|
|
60
|
-
if (node.tagName === "code") {
|
|
61
|
-
(0, import_vitest.expect)(node.properties).toEqual({
|
|
62
|
-
className: ["language-tsx"]
|
|
63
|
-
});
|
|
64
|
-
}
|
|
65
|
-
});
|
|
66
|
-
});
|
|
67
|
-
(0, import_vitest.it)("should handle empty meta attributes without breaking", function () {
|
|
68
|
-
var emptyMetaAST = JSON.parse(JSON.stringify(mockAST));
|
|
69
|
-
emptyMetaAST.children[0].children[0].data.meta = "";
|
|
70
|
-
emptyMetaAST.children[0].children[0].properties = {
|
|
71
|
-
className: ["language-tsx"]
|
|
72
|
-
};
|
|
73
|
-
var transformer = (0, import_rehypeMetaAttributes.rehypeMetaAttributes)();
|
|
74
|
-
transformer(emptyMetaAST);
|
|
75
|
-
(0, import_unist_util_visit.visit)(emptyMetaAST, "element", function (node) {
|
|
76
|
-
if (node.tagName === "code") {
|
|
77
|
-
(0, import_vitest.expect)(node.properties).toEqual({
|
|
78
|
-
className: ["language-tsx"]
|
|
79
|
-
});
|
|
80
|
-
}
|
|
81
|
-
});
|
|
82
|
-
});
|
|
83
|
-
});
|
|
84
|
-
//# sourceMappingURL=util.spec.native.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["import_unist_util_visit","require","import_vitest","import_rehypeMetaAttributes","mockAST","type","children","tagName","properties","className","data","meta","value","describe","it","transformer","rehypeMetaAttributes","foundCodeNode","visit","node","expect","toHaveProperty","toBe","Object","keys","toEqual","arrayContaining","originalAST","JSON","parse","stringify","emptyMetaAST"],"sources":["../../../src/util/util.spec.tsx"],"sourcesContent":[null],"mappings":"AAAA,YAAS;;AACT,IAAAA,uBAA2B,GAAAC,OAAU;AACrC,IAAAC,aAAS,GAAAD,OAAA,UAA4B;AAErC,IAAAE,2BAAgB,GAAAF,OAAA;AAAA,IACdG,OAAM;EACNC,IAAA,QAAU;EAAAC,QACR;IAEED,IAAA,WAAS;IACTE,OAAA,OAAU;IAAAD,QACR;MAEED,IAAA,WAAS;MACTE,OAAA,QAAY;MAAAC,UACV;QACFC,SAAA,GACA,cAAM;MAEN;MACAC,IAAA;QACEC,IAAA;MAAA;MACQL,QACN,GACF;QACFD,IAAA;QACFO,KAAA;MACF;IAEJ;EAGF;AAEI;AACA,IAAAV,aAAY,CAAAW,QAAO;EACnB,IAAAX,aAAI,CAAAY,EAAA,EAAgB;IACpB,IAAAC,WAAe,OAAAZ,2BAA0B,CAAAa,oBAAA;IACvCD,WAAS,CAAAX,OAAA;IACP,IAAAa,aAAA,GAAgB;IAChB,IAAAjB,uBAAsB,CAAEkB,KAAA,EAAAd,OAAA,EAAe,SAAS,YAAAe,IAAc;MAC9D,IAAAA,IAAA,CAAOZ,OAAK,WAAY;QACxBU,aAAY;QACd,IAAAf,aAAA,CAAAkB,MAAA,EAAAD,IAAA,CAAAX,UAAA,EAAAa,cAAA;QACD,IAAAnB,aAAA,CAAAkB,MAAA,EAAAD,IAAA,CAAAX,UAAA,EAAAa,cAAA;QACD,IAAOnB,aAAa,CAAEkB,MAAK,EAAAD,IAAI,CAAAX,UAAA,EAAAa,cAAA;MAChC;IAED,CAAG;IACD,IAAAnB,aAAM,CAAAkB,MAAc,EAAAH,aAAA,EAAqBK,IAAA;EACzC;EACA,IAAApB,aAAe,CAAAY,EAAA,+CAA0B;IACvC,IAAAC,WAAS,OAAAZ,2BAAoB,CAAAa,oBAAA;IAC3BD,WAAO,CAAAX,OAAO;IAAuB,IAAAJ,uBAC5B,CAAAkB,KAAiB,EAAAd,OAAA,EAAa,SAAS,YAAAe,IAAa;MAAkB,IAC/EA,IAAA,CAAAZ,OAAA;QACF,IAAAL,aAAA,CAAAkB,MAAA,EAAAG,MAAA,CAAAC,IAAA,CAAAL,IAAA,CAAAX,UAAA,GAAAiB,OAAA,CAAAvB,aAAA,CAAAkB,MAAA,CAAAM,eAAA,EACD,aACF,SAEE,aACK,iBAAc,CACpB;MACA;IAAiD,EAC/C;EAA0B,EAC5B;EACA,IAAAxB,aAAM,CAAAY,EAAA,EAAc,iDAAqB;IACzC,IAAAa,WAAY,GAAAC,IAAA,CAAWC,KAAA,CAAAD,IAAA,CAAAE,SAAA,CAAA1B,OAAA;IACvBuB,WAAM,CAAArB,QAAa,IAAAA,QAAY,IAAAI,IAAS;IACtCiB,WAAS,CAAArB,QAAA,GAAY,CAAAA,QAAQ,IAAAE,UAAA;MAC3BC,SAAO,GACT;IAEH;IAED,IAAGM,WAAA,OAAAZ,2BAAA,CAAAa,oBAA8D;IAC/DD,WAAM,CAAAY,WAAe;IACrB,IAAA3B,uBAAyB,CAAAkB,KAAA,EAAUS,WAAO,WAAO,YAAAR,IAAA;MACjD,IAAAA,IAAA,CAAAZ,OAAa,KAAU,MAAE;QACvB,IAAAL,aAAY,CAAAkB,MAAc,EAAAD,IAAA,CAAAX,UAAA,EAAAiB,OAAA;UAC5BhB,SAAA,GACM,cAAc;QAEpB,EAAM;MACJ;IACE;EAA+D;EACjE,EACF,EAACP,aAAA,CAAAY,EAAA;IACF,IAAAiB,YAAA,GAAAH,IAAA,CAAAC,KAAA,CAAAD,IAAA,CAAAE,SAAA,CAAA1B,OAAA;IACF2B,YAAA,CAAAzB,QAAA,IAAAA,QAAA,IAAAI,IAAA,CAAAC,IAAA","ignoreList":[]}
|
package/src/shiki/highlighter.ts
DELETED
|
@@ -1,148 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Shiki syntax highlighter using the pure JavaScript engine
|
|
3
|
-
* Works on web, Expo Go, and native without WASM or native modules
|
|
4
|
-
*/
|
|
5
|
-
import {
|
|
6
|
-
createHighlighter,
|
|
7
|
-
type Highlighter,
|
|
8
|
-
type ThemedToken,
|
|
9
|
-
type BundledLanguage,
|
|
10
|
-
type BundledTheme,
|
|
11
|
-
} from "shiki";
|
|
12
|
-
import { createJavaScriptRegexEngine } from "shiki/engine/javascript";
|
|
13
|
-
|
|
14
|
-
export type { ThemedToken, BundledLanguage, BundledTheme };
|
|
15
|
-
|
|
16
|
-
// Common languages to preload
|
|
17
|
-
const DEFAULT_LANGS: BundledLanguage[] = [
|
|
18
|
-
"javascript",
|
|
19
|
-
"typescript",
|
|
20
|
-
"tsx",
|
|
21
|
-
"jsx",
|
|
22
|
-
"python",
|
|
23
|
-
"bash",
|
|
24
|
-
"shell",
|
|
25
|
-
"json",
|
|
26
|
-
"html",
|
|
27
|
-
"css",
|
|
28
|
-
"markdown",
|
|
29
|
-
"yaml",
|
|
30
|
-
"sql",
|
|
31
|
-
"graphql",
|
|
32
|
-
"rust",
|
|
33
|
-
"go",
|
|
34
|
-
"java",
|
|
35
|
-
"c",
|
|
36
|
-
"cpp",
|
|
37
|
-
];
|
|
38
|
-
|
|
39
|
-
// Supported themes
|
|
40
|
-
const DEFAULT_THEMES: BundledTheme[] = [
|
|
41
|
-
"github-dark",
|
|
42
|
-
"github-light",
|
|
43
|
-
"dracula",
|
|
44
|
-
"nord",
|
|
45
|
-
"one-dark-pro",
|
|
46
|
-
];
|
|
47
|
-
|
|
48
|
-
let highlighterPromise: Promise<Highlighter> | null = null;
|
|
49
|
-
let highlighterInstance: Highlighter | null = null;
|
|
50
|
-
|
|
51
|
-
/**
|
|
52
|
-
* Get the shared highlighter instance
|
|
53
|
-
* Lazily initializes on first call
|
|
54
|
-
*/
|
|
55
|
-
export async function getHighlighter(): Promise<Highlighter> {
|
|
56
|
-
if (highlighterInstance) {
|
|
57
|
-
return highlighterInstance;
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
if (!highlighterPromise) {
|
|
61
|
-
highlighterPromise = createHighlighter({
|
|
62
|
-
themes: DEFAULT_THEMES,
|
|
63
|
-
langs: DEFAULT_LANGS,
|
|
64
|
-
engine: createJavaScriptRegexEngine(),
|
|
65
|
-
}).then((h) => {
|
|
66
|
-
highlighterInstance = h;
|
|
67
|
-
return h;
|
|
68
|
-
});
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
return highlighterPromise;
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
/**
|
|
75
|
-
* Highlight code and return themed tokens
|
|
76
|
-
*/
|
|
77
|
-
export async function highlightCode(
|
|
78
|
-
code: string,
|
|
79
|
-
lang: string,
|
|
80
|
-
theme: BundledTheme = "github-dark",
|
|
81
|
-
): Promise<ThemedToken[][]> {
|
|
82
|
-
const highlighter = await getHighlighter();
|
|
83
|
-
|
|
84
|
-
// Check if language is supported, fallback to plaintext
|
|
85
|
-
const loadedLangs = highlighter.getLoadedLanguages();
|
|
86
|
-
const resolvedLang = (
|
|
87
|
-
loadedLangs.includes(lang as BundledLanguage) ? lang : "text"
|
|
88
|
-
) as BundledLanguage;
|
|
89
|
-
|
|
90
|
-
const result = highlighter.codeToTokens(code, {
|
|
91
|
-
lang: resolvedLang,
|
|
92
|
-
theme,
|
|
93
|
-
});
|
|
94
|
-
|
|
95
|
-
return result.tokens;
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
/**
|
|
99
|
-
* Highlight code synchronously (requires highlighter to be pre-loaded)
|
|
100
|
-
* Returns null if highlighter is not ready
|
|
101
|
-
*/
|
|
102
|
-
export function highlightCodeSync(
|
|
103
|
-
code: string,
|
|
104
|
-
lang: string,
|
|
105
|
-
theme: BundledTheme = "github-dark",
|
|
106
|
-
): ThemedToken[][] | null {
|
|
107
|
-
if (!highlighterInstance) {
|
|
108
|
-
return null;
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
const loadedLangs = highlighterInstance.getLoadedLanguages();
|
|
112
|
-
const resolvedLang = (
|
|
113
|
-
loadedLangs.includes(lang as BundledLanguage) ? lang : "text"
|
|
114
|
-
) as BundledLanguage;
|
|
115
|
-
|
|
116
|
-
const result = highlighterInstance.codeToTokens(code, {
|
|
117
|
-
lang: resolvedLang,
|
|
118
|
-
theme,
|
|
119
|
-
});
|
|
120
|
-
|
|
121
|
-
return result.tokens;
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
/**
|
|
125
|
-
* Preload the highlighter (call on app startup for better UX)
|
|
126
|
-
*/
|
|
127
|
-
export function preloadHighlighter(): Promise<void> {
|
|
128
|
-
return getHighlighter().then(() => {});
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
/**
|
|
132
|
-
* Load an additional language on demand
|
|
133
|
-
*/
|
|
134
|
-
export async function loadLanguage(lang: BundledLanguage): Promise<void> {
|
|
135
|
-
const highlighter = await getHighlighter();
|
|
136
|
-
const loadedLangs = highlighter.getLoadedLanguages();
|
|
137
|
-
|
|
138
|
-
if (!loadedLangs.includes(lang)) {
|
|
139
|
-
await highlighter.loadLanguage(lang);
|
|
140
|
-
}
|
|
141
|
-
}
|
|
142
|
-
|
|
143
|
-
/**
|
|
144
|
-
* Check if highlighter is ready
|
|
145
|
-
*/
|
|
146
|
-
export function isHighlighterReady(): boolean {
|
|
147
|
-
return highlighterInstance !== null;
|
|
148
|
-
}
|