@fluxdown/react-native-plugins 0.0.0-stage → 0.2.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/CHANGELOG.md +21 -0
- package/LICENSE +21 -0
- package/README.md +4 -2
- package/dist/cjs/base/animation/hooks.cjs +71 -0
- package/dist/cjs/base/animation/hooks.d.cts +5 -0
- package/dist/cjs/base/animation/index.cjs +76 -0
- package/dist/cjs/base/animation/index.d.cts +3 -0
- package/dist/cjs/base/animation/inline.cjs +110 -0
- package/dist/cjs/base/animation/inline.d.cts +10 -0
- package/dist/cjs/base/animation/measurement.cjs +123 -0
- package/dist/cjs/base/animation/measurement.d.cts +13 -0
- package/dist/cjs/base/components/index.cjs +62 -0
- package/dist/cjs/base/components/index.d.cts +1 -0
- package/dist/cjs/base/components/inherited-text/hooks.cjs +59 -0
- package/dist/cjs/base/components/inherited-text/hooks.d.cts +3 -0
- package/dist/cjs/base/components/inherited-text/index.cjs +75 -0
- package/dist/cjs/base/components/inherited-text/index.d.cts +6 -0
- package/dist/cjs/base/index.cjs +97 -0
- package/dist/cjs/base/index.d.cts +6 -0
- package/dist/cjs/base/render/children.cjs +123 -0
- package/dist/cjs/base/render/children.d.cts +7 -0
- package/dist/cjs/base/render/hast.cjs +59 -0
- package/dist/cjs/base/render/hast.d.cts +5 -0
- package/dist/cjs/base/render/index.cjs +69 -0
- package/dist/cjs/base/render/index.d.cts +2 -0
- package/dist/cjs/base/slot/index.cjs +62 -0
- package/dist/cjs/base/slot/index.d.cts +1 -0
- package/dist/cjs/base/slot/type.cjs +18 -0
- package/dist/cjs/base/slot/type.d.cts +19 -0
- package/dist/cjs/base/theme/index.cjs +103 -0
- package/dist/cjs/base/theme/index.d.cts +5 -0
- package/dist/cjs/base/theme/presets/base.cjs +133 -0
- package/dist/cjs/base/theme/presets/base.d.cts +2 -0
- package/dist/cjs/base/theme/presets/dark.cjs +67 -0
- package/dist/cjs/base/theme/presets/dark.d.cts +2 -0
- package/dist/cjs/base/theme/presets/index.cjs +69 -0
- package/dist/cjs/base/theme/presets/index.d.cts +2 -0
- package/dist/cjs/base/theme/presets/light.cjs +67 -0
- package/dist/cjs/base/theme/presets/light.d.cts +2 -0
- package/dist/cjs/base.browser.cjs +1 -0
- package/dist/cjs/base.cjs +1 -0
- package/dist/cjs/plugins/blockquote/index.cjs +84 -0
- package/dist/cjs/plugins/blockquote/index.d.cts +2 -0
- package/dist/cjs/plugins/blockquote/slot/blockquote/index.cjs +46 -0
- package/dist/cjs/plugins/blockquote/slot/blockquote/index.d.cts +13 -0
- package/dist/cjs/plugins/blockquote/slot/blockquote/renderer/index.cjs +59 -0
- package/dist/cjs/plugins/blockquote/slot/blockquote/renderer/index.d.cts +2 -0
- package/dist/cjs/plugins/blockquote/slot/index.cjs +62 -0
- package/dist/cjs/plugins/blockquote/slot/index.d.cts +1 -0
- package/dist/cjs/plugins/blockquote.browser.cjs +1 -0
- package/dist/cjs/plugins/blockquote.cjs +1 -0
- package/dist/cjs/plugins/break-line/index.cjs +84 -0
- package/dist/cjs/plugins/break-line/index.d.cts +2 -0
- package/dist/cjs/plugins/break-line/slot/break-line/index.cjs +46 -0
- package/dist/cjs/plugins/break-line/slot/break-line/index.d.cts +13 -0
- package/dist/cjs/plugins/break-line/slot/break-line/renderer/index.cjs +44 -0
- package/dist/cjs/plugins/break-line/slot/break-line/renderer/index.d.cts +1 -0
- package/dist/cjs/plugins/break-line/slot/index.cjs +62 -0
- package/dist/cjs/plugins/break-line/slot/index.d.cts +1 -0
- package/dist/cjs/plugins/break-line.browser.cjs +1 -0
- package/dist/cjs/plugins/break-line.cjs +1 -0
- package/dist/cjs/plugins/code/index.cjs +86 -0
- package/dist/cjs/plugins/code/index.d.cts +2 -0
- package/dist/cjs/plugins/code/slot/code-block/index.cjs +46 -0
- package/dist/cjs/plugins/code/slot/code-block/index.d.cts +13 -0
- package/dist/cjs/plugins/code/slot/code-block/renderer/index.cjs +74 -0
- package/dist/cjs/plugins/code/slot/code-block/renderer/index.d.cts +2 -0
- package/dist/cjs/plugins/code/slot/code-header/index.cjs +46 -0
- package/dist/cjs/plugins/code/slot/code-header/index.d.cts +13 -0
- package/dist/cjs/plugins/code/slot/code-header/renderer/index.cjs +81 -0
- package/dist/cjs/plugins/code/slot/code-header/renderer/index.d.cts +2 -0
- package/dist/cjs/plugins/code/slot/code-header/renderer/styles.cjs +53 -0
- package/dist/cjs/plugins/code/slot/code-header/renderer/styles.d.cts +13 -0
- package/dist/cjs/plugins/code/slot/code-highlighter/index.cjs +80 -0
- package/dist/cjs/plugins/code/slot/code-highlighter/index.d.cts +14 -0
- package/dist/cjs/plugins/code/slot/code-highlighter/renderer/index.cjs +65 -0
- package/dist/cjs/plugins/code/slot/code-highlighter/renderer/index.d.cts +5 -0
- package/dist/cjs/plugins/code/slot/index.cjs +76 -0
- package/dist/cjs/plugins/code/slot/index.d.cts +3 -0
- package/dist/cjs/plugins/code-highlight/index.cjs +84 -0
- package/dist/cjs/plugins/code-highlight/index.d.cts +2 -0
- package/dist/cjs/plugins/code-highlight/slot/code-highlight/index.cjs +80 -0
- package/dist/cjs/plugins/code-highlight/slot/code-highlight/index.d.cts +14 -0
- package/dist/cjs/plugins/code-highlight/slot/code-highlight/renderer/components/highlight/index.cjs +88 -0
- package/dist/cjs/plugins/code-highlight/slot/code-highlight/renderer/components/highlight/index.d.cts +3 -0
- package/dist/cjs/plugins/code-highlight/slot/code-highlight/renderer/components/highlight/utils.cjs +95 -0
- package/dist/cjs/plugins/code-highlight/slot/code-highlight/renderer/components/highlight/utils.d.cts +3 -0
- package/dist/cjs/plugins/code-highlight/slot/code-highlight/renderer/index.cjs +51 -0
- package/dist/cjs/plugins/code-highlight/slot/code-highlight/renderer/index.d.cts +2 -0
- package/dist/cjs/plugins/code-highlight/slot/index.cjs +62 -0
- package/dist/cjs/plugins/code-highlight/slot/index.d.cts +1 -0
- package/dist/cjs/plugins/code-highlight.browser.cjs +1 -0
- package/dist/cjs/plugins/code-highlight.cjs +1 -0
- package/dist/cjs/plugins/code-mermaid/index.cjs +76 -0
- package/dist/cjs/plugins/code-mermaid/index.d.cts +3 -0
- package/dist/cjs/plugins/code-mermaid/slot/code-mermaid/index.cjs +80 -0
- package/dist/cjs/plugins/code-mermaid/slot/code-mermaid/index.d.cts +14 -0
- package/dist/cjs/plugins/code-mermaid/slot/code-mermaid/renderer/components/mermaid/index.cjs +111 -0
- package/dist/cjs/plugins/code-mermaid/slot/code-mermaid/renderer/components/mermaid/index.d.cts +3 -0
- package/dist/cjs/plugins/code-mermaid/slot/code-mermaid/renderer/components/mermaid/type.cjs +18 -0
- package/dist/cjs/plugins/code-mermaid/slot/code-mermaid/renderer/components/mermaid/type.d.cts +6 -0
- package/dist/cjs/plugins/code-mermaid/slot/code-mermaid/renderer/components/mermaid/utils.cjs +92 -0
- package/dist/cjs/plugins/code-mermaid/slot/code-mermaid/renderer/components/mermaid/utils.d.cts +5 -0
- package/dist/cjs/plugins/code-mermaid/slot/code-mermaid/renderer/index.cjs +56 -0
- package/dist/cjs/plugins/code-mermaid/slot/code-mermaid/renderer/index.d.cts +2 -0
- package/dist/cjs/plugins/code-mermaid/slot/index.cjs +62 -0
- package/dist/cjs/plugins/code-mermaid/slot/index.d.cts +1 -0
- package/dist/cjs/plugins/code-mermaid.browser.cjs +1 -0
- package/dist/cjs/plugins/code-mermaid.cjs +1 -0
- package/dist/cjs/plugins/code.browser.cjs +1 -0
- package/dist/cjs/plugins/code.cjs +1 -0
- package/dist/cjs/plugins/effect-chunk/index.cjs +84 -0
- package/dist/cjs/plugins/effect-chunk/index.d.cts +2 -0
- package/dist/cjs/plugins/effect-chunk/slot/effect-chunk/index.cjs +80 -0
- package/dist/cjs/plugins/effect-chunk/slot/effect-chunk/index.d.cts +14 -0
- package/dist/cjs/plugins/effect-chunk/slot/effect-chunk/renderer/consts.cjs +41 -0
- package/dist/cjs/plugins/effect-chunk/slot/effect-chunk/renderer/consts.d.cts +1 -0
- package/dist/cjs/plugins/effect-chunk/slot/effect-chunk/renderer/index.cjs +85 -0
- package/dist/cjs/plugins/effect-chunk/slot/effect-chunk/renderer/index.d.cts +2 -0
- package/dist/cjs/plugins/effect-chunk/slot/index.cjs +62 -0
- package/dist/cjs/plugins/effect-chunk/slot/index.d.cts +1 -0
- package/dist/cjs/plugins/effect-chunk.browser.cjs +1 -0
- package/dist/cjs/plugins/effect-chunk.cjs +1 -0
- package/dist/cjs/plugins/effect-scale/index.cjs +85 -0
- package/dist/cjs/plugins/effect-scale/index.d.cts +2 -0
- package/dist/cjs/plugins/effect-scale/slot/effect-scale/index.cjs +80 -0
- package/dist/cjs/plugins/effect-scale/slot/effect-scale/index.d.cts +14 -0
- package/dist/cjs/plugins/effect-scale/slot/effect-scale/renderer/components/drawing/index.cjs +147 -0
- package/dist/cjs/plugins/effect-scale/slot/effect-scale/renderer/components/drawing/index.d.cts +13 -0
- package/dist/cjs/plugins/effect-scale/slot/effect-scale/renderer/consts.cjs +79 -0
- package/dist/cjs/plugins/effect-scale/slot/effect-scale/renderer/consts.d.cts +4 -0
- package/dist/cjs/plugins/effect-scale/slot/effect-scale/renderer/index.cjs +74 -0
- package/dist/cjs/plugins/effect-scale/slot/effect-scale/renderer/index.d.cts +2 -0
- package/dist/cjs/plugins/effect-scale/slot/effect-scale-word/index.cjs +80 -0
- package/dist/cjs/plugins/effect-scale/slot/effect-scale-word/index.d.cts +14 -0
- package/dist/cjs/plugins/effect-scale/slot/effect-scale-word/renderer/index.cjs +51 -0
- package/dist/cjs/plugins/effect-scale/slot/effect-scale-word/renderer/index.d.cts +2 -0
- package/dist/cjs/plugins/effect-scale/slot/index.cjs +69 -0
- package/dist/cjs/plugins/effect-scale/slot/index.d.cts +2 -0
- package/dist/cjs/plugins/effect-scale.browser.cjs +1 -0
- package/dist/cjs/plugins/effect-scale.cjs +1 -0
- package/dist/cjs/plugins/effect-shad/index.cjs +84 -0
- package/dist/cjs/plugins/effect-shad/index.d.cts +2 -0
- package/dist/cjs/plugins/effect-shad/slot/effect-shad/index.cjs +80 -0
- package/dist/cjs/plugins/effect-shad/slot/effect-shad/index.d.cts +14 -0
- package/dist/cjs/plugins/effect-shad/slot/effect-shad/renderer/components/content/index.cjs +215 -0
- package/dist/cjs/plugins/effect-shad/slot/effect-shad/renderer/components/content/index.d.cts +2 -0
- package/dist/cjs/plugins/effect-shad/slot/effect-shad/renderer/index.cjs +55 -0
- package/dist/cjs/plugins/effect-shad/slot/effect-shad/renderer/index.d.cts +2 -0
- package/dist/cjs/plugins/effect-shad/slot/effect-shad/renderer/utils.cjs +129 -0
- package/dist/cjs/plugins/effect-shad/slot/effect-shad/renderer/utils.d.cts +22 -0
- package/dist/cjs/plugins/effect-shad/slot/index.cjs +62 -0
- package/dist/cjs/plugins/effect-shad/slot/index.d.cts +1 -0
- package/dist/cjs/plugins/effect-shad.browser.cjs +1 -0
- package/dist/cjs/plugins/effect-shad.cjs +1 -0
- package/dist/cjs/plugins/effect-suffix/index.cjs +84 -0
- package/dist/cjs/plugins/effect-suffix/index.d.cts +2 -0
- package/dist/cjs/plugins/effect-suffix/slot/effect-suffix/index.cjs +80 -0
- package/dist/cjs/plugins/effect-suffix/slot/effect-suffix/index.d.cts +14 -0
- package/dist/cjs/plugins/effect-suffix/slot/effect-suffix/renderer/consts.cjs +41 -0
- package/dist/cjs/plugins/effect-suffix/slot/effect-suffix/renderer/consts.d.cts +1 -0
- package/dist/cjs/plugins/effect-suffix/slot/effect-suffix/renderer/index.cjs +107 -0
- package/dist/cjs/plugins/effect-suffix/slot/effect-suffix/renderer/index.d.cts +2 -0
- package/dist/cjs/plugins/effect-suffix/slot/index.cjs +62 -0
- package/dist/cjs/plugins/effect-suffix/slot/index.d.cts +1 -0
- package/dist/cjs/plugins/effect-suffix.browser.cjs +1 -0
- package/dist/cjs/plugins/effect-suffix.cjs +1 -0
- package/dist/cjs/plugins/emphasis/index.cjs +84 -0
- package/dist/cjs/plugins/emphasis/index.d.cts +2 -0
- package/dist/cjs/plugins/emphasis/slot/emphasis/index.cjs +46 -0
- package/dist/cjs/plugins/emphasis/slot/emphasis/index.d.cts +13 -0
- package/dist/cjs/plugins/emphasis/slot/emphasis/renderer/index.cjs +47 -0
- package/dist/cjs/plugins/emphasis/slot/emphasis/renderer/index.d.cts +2 -0
- package/dist/cjs/plugins/emphasis/slot/index.cjs +62 -0
- package/dist/cjs/plugins/emphasis/slot/index.d.cts +1 -0
- package/dist/cjs/plugins/emphasis.browser.cjs +1 -0
- package/dist/cjs/plugins/emphasis.cjs +1 -0
- package/dist/cjs/plugins/fallback/index.cjs +97 -0
- package/dist/cjs/plugins/fallback/index.d.cts +3 -0
- package/dist/cjs/plugins/fallback/render/index.cjs +62 -0
- package/dist/cjs/plugins/fallback/render/index.d.cts +1 -0
- package/dist/cjs/plugins/fallback/render/native-fallback/index.cjs +90 -0
- package/dist/cjs/plugins/fallback/render/native-fallback/index.d.cts +16 -0
- package/dist/cjs/plugins/fallback/slot/element/index.cjs +46 -0
- package/dist/cjs/plugins/fallback/slot/element/index.d.cts +13 -0
- package/dist/cjs/plugins/fallback/slot/element/renderer/index.cjs +92 -0
- package/dist/cjs/plugins/fallback/slot/element/renderer/index.d.cts +4 -0
- package/dist/cjs/plugins/fallback/slot/index.cjs +62 -0
- package/dist/cjs/plugins/fallback/slot/index.d.cts +1 -0
- package/dist/cjs/plugins/fallback.browser.cjs +1 -0
- package/dist/cjs/plugins/fallback.cjs +1 -0
- package/dist/cjs/plugins/heading/index.cjs +84 -0
- package/dist/cjs/plugins/heading/index.d.cts +2 -0
- package/dist/cjs/plugins/heading/slot/heading/index.cjs +46 -0
- package/dist/cjs/plugins/heading/slot/heading/index.d.cts +13 -0
- package/dist/cjs/plugins/heading/slot/heading/renderer/index.cjs +65 -0
- package/dist/cjs/plugins/heading/slot/heading/renderer/index.d.cts +2 -0
- package/dist/cjs/plugins/heading/slot/index.cjs +62 -0
- package/dist/cjs/plugins/heading/slot/index.d.cts +1 -0
- package/dist/cjs/plugins/heading.browser.cjs +1 -0
- package/dist/cjs/plugins/heading.cjs +1 -0
- package/dist/cjs/plugins/image/index.cjs +84 -0
- package/dist/cjs/plugins/image/index.d.cts +2 -0
- package/dist/cjs/plugins/image/slot/image/index.cjs +46 -0
- package/dist/cjs/plugins/image/slot/image/index.d.cts +13 -0
- package/dist/cjs/plugins/image/slot/image/renderer/index.cjs +109 -0
- package/dist/cjs/plugins/image/slot/image/renderer/index.d.cts +2 -0
- package/dist/cjs/plugins/image/slot/image/renderer/utils.cjs +46 -0
- package/dist/cjs/plugins/image/slot/image/renderer/utils.d.cts +2 -0
- package/dist/cjs/plugins/image/slot/index.cjs +62 -0
- package/dist/cjs/plugins/image/slot/index.d.cts +1 -0
- package/dist/cjs/plugins/image.browser.cjs +1 -0
- package/dist/cjs/plugins/image.cjs +1 -0
- package/dist/cjs/plugins/link/index.cjs +84 -0
- package/dist/cjs/plugins/link/index.d.cts +2 -0
- package/dist/cjs/plugins/link/slot/index.cjs +62 -0
- package/dist/cjs/plugins/link/slot/index.d.cts +1 -0
- package/dist/cjs/plugins/link/slot/link/index.cjs +46 -0
- package/dist/cjs/plugins/link/slot/link/index.d.cts +13 -0
- package/dist/cjs/plugins/link/slot/link/renderer/index.cjs +61 -0
- package/dist/cjs/plugins/link/slot/link/renderer/index.d.cts +2 -0
- package/dist/cjs/plugins/link.browser.cjs +1 -0
- package/dist/cjs/plugins/link.cjs +1 -0
- package/dist/cjs/plugins/list/index.cjs +84 -0
- package/dist/cjs/plugins/list/index.d.cts +2 -0
- package/dist/cjs/plugins/list/slot/index.cjs +62 -0
- package/dist/cjs/plugins/list/slot/index.d.cts +1 -0
- package/dist/cjs/plugins/list/slot/list/index.cjs +46 -0
- package/dist/cjs/plugins/list/slot/list/index.d.cts +13 -0
- package/dist/cjs/plugins/list/slot/list/renderer/index.cjs +89 -0
- package/dist/cjs/plugins/list/slot/list/renderer/index.d.cts +2 -0
- package/dist/cjs/plugins/list/slot/list/renderer/styles.cjs +50 -0
- package/dist/cjs/plugins/list/slot/list/renderer/styles.d.cts +10 -0
- package/dist/cjs/plugins/list/slot/list/renderer/utils.cjs +44 -0
- package/dist/cjs/plugins/list/slot/list/renderer/utils.d.cts +3 -0
- package/dist/cjs/plugins/list.browser.cjs +1 -0
- package/dist/cjs/plugins/list.cjs +1 -0
- package/dist/cjs/plugins/paragraph/index.cjs +84 -0
- package/dist/cjs/plugins/paragraph/index.d.cts +2 -0
- package/dist/cjs/plugins/paragraph/slot/index.cjs +62 -0
- package/dist/cjs/plugins/paragraph/slot/index.d.cts +1 -0
- package/dist/cjs/plugins/paragraph/slot/paragraph/index.cjs +46 -0
- package/dist/cjs/plugins/paragraph/slot/paragraph/index.d.cts +13 -0
- package/dist/cjs/plugins/paragraph/slot/paragraph/renderer/index.cjs +64 -0
- package/dist/cjs/plugins/paragraph/slot/paragraph/renderer/index.d.cts +2 -0
- package/dist/cjs/plugins/paragraph.browser.cjs +1 -0
- package/dist/cjs/plugins/paragraph.cjs +1 -0
- package/dist/cjs/plugins/strong/index.cjs +84 -0
- package/dist/cjs/plugins/strong/index.d.cts +2 -0
- package/dist/cjs/plugins/strong/slot/index.cjs +62 -0
- package/dist/cjs/plugins/strong/slot/index.d.cts +1 -0
- package/dist/cjs/plugins/strong/slot/strong/index.cjs +46 -0
- package/dist/cjs/plugins/strong/slot/strong/index.d.cts +13 -0
- package/dist/cjs/plugins/strong/slot/strong/renderer/index.cjs +50 -0
- package/dist/cjs/plugins/strong/slot/strong/renderer/index.d.cts +2 -0
- package/dist/cjs/plugins/strong.browser.cjs +1 -0
- package/dist/cjs/plugins/strong.cjs +1 -0
- package/dist/cjs/plugins/table/index.cjs +85 -0
- package/dist/cjs/plugins/table/index.d.cts +2 -0
- package/dist/cjs/plugins/table/slot/index.cjs +69 -0
- package/dist/cjs/plugins/table/slot/index.d.cts +2 -0
- package/dist/cjs/plugins/table/slot/table/index.cjs +46 -0
- package/dist/cjs/plugins/table/slot/table/index.d.cts +13 -0
- package/dist/cjs/plugins/table/slot/table/renderer/index.cjs +64 -0
- package/dist/cjs/plugins/table/slot/table/renderer/index.d.cts +2 -0
- package/dist/cjs/plugins/table/slot/table-cell/index.cjs +46 -0
- package/dist/cjs/plugins/table/slot/table-cell/index.d.cts +13 -0
- package/dist/cjs/plugins/table/slot/table-cell/renderer/index.cjs +68 -0
- package/dist/cjs/plugins/table/slot/table-cell/renderer/index.d.cts +2 -0
- package/dist/cjs/plugins/table.browser.cjs +1 -0
- package/dist/cjs/plugins/table.cjs +1 -0
- package/dist/cjs/plugins/tex/index.cjs +84 -0
- package/dist/cjs/plugins/tex/index.d.cts +2 -0
- package/dist/cjs/plugins/tex/slot/index.cjs +62 -0
- package/dist/cjs/plugins/tex/slot/index.d.cts +1 -0
- package/dist/cjs/plugins/tex/slot/tex/index.cjs +80 -0
- package/dist/cjs/plugins/tex/slot/tex/index.d.cts +14 -0
- package/dist/cjs/plugins/tex/slot/tex/renderer/index.cjs +55 -0
- package/dist/cjs/plugins/tex/slot/tex/renderer/index.d.cts +2 -0
- package/dist/cjs/plugins/tex-svg/index.cjs +84 -0
- package/dist/cjs/plugins/tex-svg/index.d.cts +2 -0
- package/dist/cjs/plugins/tex-svg/slot/index.cjs +62 -0
- package/dist/cjs/plugins/tex-svg/slot/index.d.cts +1 -0
- package/dist/cjs/plugins/tex-svg/slot/tex-svg/index.cjs +80 -0
- package/dist/cjs/plugins/tex-svg/slot/tex-svg/index.d.cts +14 -0
- package/dist/cjs/plugins/tex-svg/slot/tex-svg/renderer/components/svg/index.cjs +75 -0
- package/dist/cjs/plugins/tex-svg/slot/tex-svg/renderer/components/svg/index.d.cts +3 -0
- package/dist/cjs/plugins/tex-svg/slot/tex-svg/renderer/components/svg/type.cjs +18 -0
- package/dist/cjs/plugins/tex-svg/slot/tex-svg/renderer/components/svg/type.d.cts +5 -0
- package/dist/cjs/plugins/tex-svg/slot/tex-svg/renderer/components/svg/utils.cjs +116 -0
- package/dist/cjs/plugins/tex-svg/slot/tex-svg/renderer/components/svg/utils.d.cts +15 -0
- package/dist/cjs/plugins/tex-svg/slot/tex-svg/renderer/index.cjs +52 -0
- package/dist/cjs/plugins/tex-svg/slot/tex-svg/renderer/index.d.cts +2 -0
- package/dist/cjs/plugins/tex-svg/slot/tex-svg/renderer/utils.cjs +62 -0
- package/dist/cjs/plugins/tex-svg/slot/tex-svg/renderer/utils.d.cts +1 -0
- package/dist/cjs/plugins/tex-svg.browser.cjs +1 -0
- package/dist/cjs/plugins/tex-svg.cjs +1 -0
- package/dist/cjs/plugins/tex.browser.cjs +1 -0
- package/dist/cjs/plugins/tex.cjs +1 -0
- package/dist/cjs/presets/full/index.cjs +83 -0
- package/dist/cjs/presets/full/index.d.cts +2 -0
- package/dist/cjs/presets/full.browser.cjs +1 -0
- package/dist/cjs/presets/full.cjs +1 -0
- package/dist/cjs/presets/lite/index.cjs +77 -0
- package/dist/cjs/presets/lite/index.d.cts +2 -0
- package/dist/cjs/presets/lite.browser.cjs +1 -0
- package/dist/cjs/presets/lite.cjs +1 -0
- package/dist/cjs/typings/index.cjs +77 -0
- package/dist/cjs/typings/index.d.cts +4 -0
- package/dist/cjs/typings/plugins/index.cjs +7 -0
- package/dist/cjs/typings/plugins/index.d.cts +1 -0
- package/dist/cjs/typings/plugins/plugins.d.cts +20 -0
- package/dist/cjs/typings/theme.cjs +18 -0
- package/dist/cjs/typings/theme.d.cts +80 -0
- package/dist/esm/121~0.js +167 -0
- package/dist/esm/319~0.js +72 -0
- package/dist/esm/390~0.js +85 -0
- package/dist/esm/480~0.js +15 -0
- package/dist/esm/493~0.js +79 -0
- package/dist/esm/855~0.js +53 -0
- package/dist/esm/856~0.js +33 -0
- package/dist/esm/992~0.js +1 -0
- package/dist/esm/base/animation/hooks.d.ts +5 -0
- package/dist/esm/base/animation/index.d.ts +3 -0
- package/dist/esm/base/animation/inline.d.ts +10 -0
- package/dist/esm/base/animation/measurement.d.ts +13 -0
- package/dist/esm/base/components/index.d.ts +1 -0
- package/dist/esm/base/components/inherited-text/hooks.d.ts +3 -0
- package/dist/esm/base/components/inherited-text/index.d.ts +6 -0
- package/dist/esm/base/index.d.ts +6 -0
- package/dist/esm/base/render/children.d.ts +7 -0
- package/dist/esm/base/render/hast.d.ts +5 -0
- package/dist/esm/base/render/index.d.ts +2 -0
- package/dist/esm/base/slot/index.d.ts +1 -0
- package/dist/esm/base/slot/type.d.ts +19 -0
- package/dist/esm/base/theme/index.d.ts +5 -0
- package/dist/esm/base/theme/presets/base.d.ts +2 -0
- package/dist/esm/base/theme/presets/dark.d.ts +2 -0
- package/dist/esm/base/theme/presets/index.d.ts +2 -0
- package/dist/esm/base/theme/presets/light.d.ts +2 -0
- package/dist/esm/base.js +8 -0
- package/dist/esm/highlight~0.js +101 -0
- package/dist/esm/mermaid~0.js +129 -0
- package/dist/esm/plugins/blockquote/index.d.ts +2 -0
- package/dist/esm/plugins/blockquote/slot/blockquote/index.d.ts +13 -0
- package/dist/esm/plugins/blockquote/slot/blockquote/renderer/index.d.ts +2 -0
- package/dist/esm/plugins/blockquote/slot/index.d.ts +1 -0
- package/dist/esm/plugins/blockquote.js +33 -0
- package/dist/esm/plugins/break-line/index.d.ts +2 -0
- package/dist/esm/plugins/break-line/slot/break-line/index.d.ts +13 -0
- package/dist/esm/plugins/break-line/slot/break-line/renderer/index.d.ts +1 -0
- package/dist/esm/plugins/break-line/slot/index.d.ts +1 -0
- package/dist/esm/plugins/break-line.js +18 -0
- package/dist/esm/plugins/code/index.d.ts +2 -0
- package/dist/esm/plugins/code/slot/code-block/index.d.ts +13 -0
- package/dist/esm/plugins/code/slot/code-block/renderer/index.d.ts +2 -0
- package/dist/esm/plugins/code/slot/code-header/index.d.ts +13 -0
- package/dist/esm/plugins/code/slot/code-header/renderer/index.d.ts +2 -0
- package/dist/esm/plugins/code/slot/code-header/renderer/styles.d.ts +13 -0
- package/dist/esm/plugins/code/slot/code-highlighter/index.d.ts +14 -0
- package/dist/esm/plugins/code/slot/code-highlighter/renderer/index.d.ts +5 -0
- package/dist/esm/plugins/code/slot/index.d.ts +3 -0
- package/dist/esm/plugins/code-highlight/index.d.ts +2 -0
- package/dist/esm/plugins/code-highlight/slot/code-highlight/index.d.ts +14 -0
- package/dist/esm/plugins/code-highlight/slot/code-highlight/renderer/components/highlight/index.d.ts +3 -0
- package/dist/esm/plugins/code-highlight/slot/code-highlight/renderer/components/highlight/utils.d.ts +3 -0
- package/dist/esm/plugins/code-highlight/slot/code-highlight/renderer/index.d.ts +2 -0
- package/dist/esm/plugins/code-highlight/slot/index.d.ts +1 -0
- package/dist/esm/plugins/code-highlight.js +25 -0
- package/dist/esm/plugins/code-mermaid/index.d.ts +3 -0
- package/dist/esm/plugins/code-mermaid/slot/code-mermaid/index.d.ts +14 -0
- package/dist/esm/plugins/code-mermaid/slot/code-mermaid/renderer/components/mermaid/index.d.ts +3 -0
- package/dist/esm/plugins/code-mermaid/slot/code-mermaid/renderer/components/mermaid/type.d.ts +6 -0
- package/dist/esm/plugins/code-mermaid/slot/code-mermaid/renderer/components/mermaid/utils.d.ts +5 -0
- package/dist/esm/plugins/code-mermaid/slot/code-mermaid/renderer/index.d.ts +2 -0
- package/dist/esm/plugins/code-mermaid/slot/index.d.ts +1 -0
- package/dist/esm/plugins/code-mermaid.js +29 -0
- package/dist/esm/plugins/code.js +135 -0
- package/dist/esm/plugins/effect-chunk/index.d.ts +2 -0
- package/dist/esm/plugins/effect-chunk/slot/effect-chunk/index.d.ts +14 -0
- package/dist/esm/plugins/effect-chunk/slot/effect-chunk/renderer/consts.d.ts +1 -0
- package/dist/esm/plugins/effect-chunk/slot/effect-chunk/renderer/index.d.ts +2 -0
- package/dist/esm/plugins/effect-chunk/slot/index.d.ts +1 -0
- package/dist/esm/plugins/effect-chunk.js +60 -0
- package/dist/esm/plugins/effect-scale/index.d.ts +2 -0
- package/dist/esm/plugins/effect-scale/slot/effect-scale/index.d.ts +14 -0
- package/dist/esm/plugins/effect-scale/slot/effect-scale/renderer/components/drawing/index.d.ts +13 -0
- package/dist/esm/plugins/effect-scale/slot/effect-scale/renderer/consts.d.ts +4 -0
- package/dist/esm/plugins/effect-scale/slot/effect-scale/renderer/index.d.ts +2 -0
- package/dist/esm/plugins/effect-scale/slot/effect-scale-word/index.d.ts +14 -0
- package/dist/esm/plugins/effect-scale/slot/effect-scale-word/renderer/index.d.ts +2 -0
- package/dist/esm/plugins/effect-scale/slot/index.d.ts +2 -0
- package/dist/esm/plugins/effect-scale.js +188 -0
- package/dist/esm/plugins/effect-shad/index.d.ts +2 -0
- package/dist/esm/plugins/effect-shad/slot/effect-shad/index.d.ts +14 -0
- package/dist/esm/plugins/effect-shad/slot/effect-shad/renderer/components/content/index.d.ts +2 -0
- package/dist/esm/plugins/effect-shad/slot/effect-shad/renderer/index.d.ts +2 -0
- package/dist/esm/plugins/effect-shad/slot/effect-shad/renderer/utils.d.ts +22 -0
- package/dist/esm/plugins/effect-shad/slot/index.d.ts +1 -0
- package/dist/esm/plugins/effect-shad.js +271 -0
- package/dist/esm/plugins/effect-suffix/index.d.ts +2 -0
- package/dist/esm/plugins/effect-suffix/slot/effect-suffix/index.d.ts +14 -0
- package/dist/esm/plugins/effect-suffix/slot/effect-suffix/renderer/consts.d.ts +1 -0
- package/dist/esm/plugins/effect-suffix/slot/effect-suffix/renderer/index.d.ts +2 -0
- package/dist/esm/plugins/effect-suffix/slot/index.d.ts +1 -0
- package/dist/esm/plugins/effect-suffix.js +82 -0
- package/dist/esm/plugins/emphasis/index.d.ts +2 -0
- package/dist/esm/plugins/emphasis/slot/emphasis/index.d.ts +13 -0
- package/dist/esm/plugins/emphasis/slot/emphasis/renderer/index.d.ts +2 -0
- package/dist/esm/plugins/emphasis/slot/index.d.ts +1 -0
- package/dist/esm/plugins/emphasis.js +21 -0
- package/dist/esm/plugins/fallback/index.d.ts +3 -0
- package/dist/esm/plugins/fallback/render/index.d.ts +1 -0
- package/dist/esm/plugins/fallback/render/native-fallback/index.d.ts +16 -0
- package/dist/esm/plugins/fallback/slot/element/index.d.ts +13 -0
- package/dist/esm/plugins/fallback/slot/element/renderer/index.d.ts +4 -0
- package/dist/esm/plugins/fallback/slot/index.d.ts +1 -0
- package/dist/esm/plugins/fallback.js +119 -0
- package/dist/esm/plugins/heading/index.d.ts +2 -0
- package/dist/esm/plugins/heading/slot/heading/index.d.ts +13 -0
- package/dist/esm/plugins/heading/slot/heading/renderer/index.d.ts +2 -0
- package/dist/esm/plugins/heading/slot/index.d.ts +1 -0
- package/dist/esm/plugins/heading.js +40 -0
- package/dist/esm/plugins/image/index.d.ts +2 -0
- package/dist/esm/plugins/image/slot/image/index.d.ts +13 -0
- package/dist/esm/plugins/image/slot/image/renderer/index.d.ts +2 -0
- package/dist/esm/plugins/image/slot/image/renderer/utils.d.ts +2 -0
- package/dist/esm/plugins/image/slot/index.d.ts +1 -0
- package/dist/esm/plugins/image.js +90 -0
- package/dist/esm/plugins/link/index.d.ts +2 -0
- package/dist/esm/plugins/link/slot/index.d.ts +1 -0
- package/dist/esm/plugins/link/slot/link/index.d.ts +13 -0
- package/dist/esm/plugins/link/slot/link/renderer/index.d.ts +2 -0
- package/dist/esm/plugins/link.js +36 -0
- package/dist/esm/plugins/list/index.d.ts +2 -0
- package/dist/esm/plugins/list/slot/index.d.ts +1 -0
- package/dist/esm/plugins/list/slot/list/index.d.ts +13 -0
- package/dist/esm/plugins/list/slot/list/renderer/index.d.ts +2 -0
- package/dist/esm/plugins/list/slot/list/renderer/styles.d.ts +10 -0
- package/dist/esm/plugins/list/slot/list/renderer/utils.d.ts +3 -0
- package/dist/esm/plugins/list.js +74 -0
- package/dist/esm/plugins/paragraph/index.d.ts +2 -0
- package/dist/esm/plugins/paragraph/slot/index.d.ts +1 -0
- package/dist/esm/plugins/paragraph/slot/paragraph/index.d.ts +13 -0
- package/dist/esm/plugins/paragraph/slot/paragraph/renderer/index.d.ts +2 -0
- package/dist/esm/plugins/paragraph.js +40 -0
- package/dist/esm/plugins/strong/index.d.ts +2 -0
- package/dist/esm/plugins/strong/slot/index.d.ts +1 -0
- package/dist/esm/plugins/strong/slot/strong/index.d.ts +13 -0
- package/dist/esm/plugins/strong/slot/strong/renderer/index.d.ts +2 -0
- package/dist/esm/plugins/strong.js +25 -0
- package/dist/esm/plugins/table/index.d.ts +2 -0
- package/dist/esm/plugins/table/slot/index.d.ts +2 -0
- package/dist/esm/plugins/table/slot/table/index.d.ts +13 -0
- package/dist/esm/plugins/table/slot/table/renderer/index.d.ts +2 -0
- package/dist/esm/plugins/table/slot/table-cell/index.d.ts +13 -0
- package/dist/esm/plugins/table/slot/table-cell/renderer/index.d.ts +2 -0
- package/dist/esm/plugins/table.js +71 -0
- package/dist/esm/plugins/tex/index.d.ts +2 -0
- package/dist/esm/plugins/tex/slot/index.d.ts +1 -0
- package/dist/esm/plugins/tex/slot/tex/index.d.ts +14 -0
- package/dist/esm/plugins/tex/slot/tex/renderer/index.d.ts +2 -0
- package/dist/esm/plugins/tex-svg/index.d.ts +2 -0
- package/dist/esm/plugins/tex-svg/slot/index.d.ts +1 -0
- package/dist/esm/plugins/tex-svg/slot/tex-svg/index.d.ts +14 -0
- package/dist/esm/plugins/tex-svg/slot/tex-svg/renderer/components/svg/index.d.ts +3 -0
- package/dist/esm/plugins/tex-svg/slot/tex-svg/renderer/components/svg/type.d.ts +5 -0
- package/dist/esm/plugins/tex-svg/slot/tex-svg/renderer/components/svg/utils.d.ts +15 -0
- package/dist/esm/plugins/tex-svg/slot/tex-svg/renderer/index.d.ts +2 -0
- package/dist/esm/plugins/tex-svg/slot/tex-svg/renderer/utils.d.ts +1 -0
- package/dist/esm/plugins/tex-svg.js +48 -0
- package/dist/esm/plugins/tex.js +30 -0
- package/dist/esm/presets/full/index.d.ts +2 -0
- package/dist/esm/presets/full.js +45 -0
- package/dist/esm/presets/lite/index.d.ts +2 -0
- package/dist/esm/presets/lite.js +39 -0
- package/dist/esm/rslib-runtime~0.js +27 -0
- package/dist/esm/svg~0.js +119 -0
- package/dist/esm/typings/index.d.ts +4 -0
- package/dist/esm/typings/plugins/index.d.ts +1 -0
- package/dist/esm/typings/plugins/plugins.d.ts +20 -0
- package/dist/esm/typings/theme.d.ts +80 -0
- package/package.json +120 -3
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useLatestFn } from "@fluxdown/react-hooks";
|
|
3
|
+
import { useLayoutEffect, useState } from "react";
|
|
4
|
+
import { PixelRatio, Text, View } from "react-native";
|
|
5
|
+
const TextMeasurement = ({ children, length = 1, style, onMeasure })=>{
|
|
6
|
+
const [layout, setLayout] = useState(null);
|
|
7
|
+
const [baseline, setBaseline] = useState(null);
|
|
8
|
+
const [anchoredWidth, setAnchoredWidth] = useState(null);
|
|
9
|
+
const notify = useLatestFn(onMeasure);
|
|
10
|
+
const width = ((style.fontSize ?? 16) * PixelRatio.getFontScale() * 2 + Math.abs(style.letterSpacing ?? 0)) * Math.max(length, 1);
|
|
11
|
+
useLayoutEffect(()=>{
|
|
12
|
+
if (layout && null !== baseline && null !== anchoredWidth) notify({
|
|
13
|
+
...layout,
|
|
14
|
+
baseline,
|
|
15
|
+
advance: Math.max(0, anchoredWidth - layout.width)
|
|
16
|
+
});
|
|
17
|
+
}, [
|
|
18
|
+
anchoredWidth,
|
|
19
|
+
baseline,
|
|
20
|
+
layout,
|
|
21
|
+
notify
|
|
22
|
+
]);
|
|
23
|
+
return /*#__PURE__*/ jsxs(View, {
|
|
24
|
+
pointerEvents: "none",
|
|
25
|
+
style: {
|
|
26
|
+
position: 'absolute',
|
|
27
|
+
left: 0,
|
|
28
|
+
top: 0,
|
|
29
|
+
width,
|
|
30
|
+
flexDirection: 'row',
|
|
31
|
+
alignItems: 'baseline',
|
|
32
|
+
opacity: 0
|
|
33
|
+
},
|
|
34
|
+
accessibilityElementsHidden: true,
|
|
35
|
+
importantForAccessibility: "no-hide-descendants",
|
|
36
|
+
"aria-hidden": true,
|
|
37
|
+
children: [
|
|
38
|
+
/*#__PURE__*/ jsx(Text, {
|
|
39
|
+
selectable: false,
|
|
40
|
+
style: [
|
|
41
|
+
style,
|
|
42
|
+
{
|
|
43
|
+
flexShrink: 0
|
|
44
|
+
}
|
|
45
|
+
],
|
|
46
|
+
onLayout: ({ nativeEvent })=>setLayout(nativeEvent.layout),
|
|
47
|
+
children: children
|
|
48
|
+
}),
|
|
49
|
+
/*#__PURE__*/ jsxs(Text, {
|
|
50
|
+
selectable: false,
|
|
51
|
+
style: [
|
|
52
|
+
style,
|
|
53
|
+
{
|
|
54
|
+
position: 'absolute',
|
|
55
|
+
left: 0,
|
|
56
|
+
top: 0,
|
|
57
|
+
flexShrink: 0
|
|
58
|
+
}
|
|
59
|
+
],
|
|
60
|
+
onLayout: ({ nativeEvent })=>setAnchoredWidth(nativeEvent.layout.width),
|
|
61
|
+
children: [
|
|
62
|
+
children,
|
|
63
|
+
'\u2060',
|
|
64
|
+
/*#__PURE__*/ jsx(View, {
|
|
65
|
+
style: {
|
|
66
|
+
width: 0,
|
|
67
|
+
height: 0
|
|
68
|
+
}
|
|
69
|
+
})
|
|
70
|
+
]
|
|
71
|
+
}),
|
|
72
|
+
/*#__PURE__*/ jsx(View, {
|
|
73
|
+
style: {
|
|
74
|
+
width: 1,
|
|
75
|
+
height: 1
|
|
76
|
+
},
|
|
77
|
+
onLayout: ({ nativeEvent })=>{
|
|
78
|
+
const { y, height } = nativeEvent.layout;
|
|
79
|
+
setBaseline(y + height);
|
|
80
|
+
}
|
|
81
|
+
})
|
|
82
|
+
]
|
|
83
|
+
});
|
|
84
|
+
};
|
|
85
|
+
export { TextMeasurement };
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
const getNativeProps = (node)=>{
|
|
2
|
+
const properties = node?.properties ?? {};
|
|
3
|
+
return {
|
|
4
|
+
nativeID: 'string' == typeof properties.id ? properties.id : void 0,
|
|
5
|
+
accessibilityLabel: 'string' == typeof properties.ariaLabel ? properties.ariaLabel : void 0,
|
|
6
|
+
checked: true === properties.checked
|
|
7
|
+
};
|
|
8
|
+
};
|
|
9
|
+
const isLastChild = (current, parents)=>{
|
|
10
|
+
const parent = parents[parents.length - 1];
|
|
11
|
+
const children = parent?.children.filter((child)=>'text' !== child.type || child.value.trim());
|
|
12
|
+
return children?.[children.length - 1] === current;
|
|
13
|
+
};
|
|
14
|
+
const isImageOnlyParagraph = (node)=>'element' === node.type && 'tagName' in node && 'p' === node.tagName && node.children.every((child)=>'element' === child.type && 'img' === child.tagName || 'text' === child.type && '' === child.value.trim());
|
|
15
|
+
export { getNativeProps, isImageOnlyParagraph, isLastChild };
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
import { Fragment } from "react";
|
|
3
|
+
import { useTheme } from "./121~0.js";
|
|
4
|
+
import { InheritedText } from "./855~0.js";
|
|
5
|
+
const BLOCK_TAG_NAMES = [
|
|
6
|
+
'address',
|
|
7
|
+
'article',
|
|
8
|
+
'aside',
|
|
9
|
+
'blockquote',
|
|
10
|
+
'dd',
|
|
11
|
+
'details',
|
|
12
|
+
'div',
|
|
13
|
+
'dl',
|
|
14
|
+
'dt',
|
|
15
|
+
'fieldset',
|
|
16
|
+
'figcaption',
|
|
17
|
+
'figure',
|
|
18
|
+
'footer',
|
|
19
|
+
'form',
|
|
20
|
+
'h1',
|
|
21
|
+
'h2',
|
|
22
|
+
'h3',
|
|
23
|
+
'h4',
|
|
24
|
+
'h5',
|
|
25
|
+
'h6',
|
|
26
|
+
'header',
|
|
27
|
+
'hr',
|
|
28
|
+
'li',
|
|
29
|
+
'main',
|
|
30
|
+
'nav',
|
|
31
|
+
'ol',
|
|
32
|
+
'p',
|
|
33
|
+
'pre',
|
|
34
|
+
'section',
|
|
35
|
+
'summary',
|
|
36
|
+
'table',
|
|
37
|
+
'ul'
|
|
38
|
+
];
|
|
39
|
+
const InlineRenderer = ({ children })=>{
|
|
40
|
+
const { tokens } = useTheme();
|
|
41
|
+
return /*#__PURE__*/ jsx(InheritedText, {
|
|
42
|
+
style: {
|
|
43
|
+
color: tokens.colors.fg,
|
|
44
|
+
fontFamily: tokens.typography.fontSans,
|
|
45
|
+
fontSize: tokens.typography.fontSize.md,
|
|
46
|
+
lineHeight: tokens.typography.fontSize.md * tokens.typography.lineHeight.md
|
|
47
|
+
},
|
|
48
|
+
children: children
|
|
49
|
+
});
|
|
50
|
+
};
|
|
51
|
+
const renderNativeChildren = (nodes, render)=>{
|
|
52
|
+
const children = [];
|
|
53
|
+
let inline = [];
|
|
54
|
+
const flush = ()=>{
|
|
55
|
+
if (inline.length > 0) {
|
|
56
|
+
children.push(/*#__PURE__*/ jsx(InlineRenderer, {
|
|
57
|
+
children: inline
|
|
58
|
+
}, `inline:${children.length}`));
|
|
59
|
+
inline = [];
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
nodes.forEach((node, index)=>{
|
|
63
|
+
const isBlock = 'element' === node.type && BLOCK_TAG_NAMES.includes(node.tagName);
|
|
64
|
+
if (isBlock) {
|
|
65
|
+
flush();
|
|
66
|
+
children.push(/*#__PURE__*/ jsx(Fragment, {
|
|
67
|
+
children: render(node)
|
|
68
|
+
}, index));
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
if (0 === inline.length && 'text' === node.type && '' === node.value.trim()) return;
|
|
72
|
+
inline.push(/*#__PURE__*/ jsx(Fragment, {
|
|
73
|
+
children: render(node)
|
|
74
|
+
}, index));
|
|
75
|
+
});
|
|
76
|
+
flush();
|
|
77
|
+
return children;
|
|
78
|
+
};
|
|
79
|
+
export { BLOCK_TAG_NAMES, InlineRenderer, renderNativeChildren };
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useMemoValue } from "@fluxdown/react-hooks";
|
|
3
|
+
import { isEqual, pickBy } from "lodash-es";
|
|
4
|
+
import { StyleSheet, Text } from "react-native";
|
|
5
|
+
import { createContext, useContext, useMemo } from "react";
|
|
6
|
+
import { useTheme } from "./121~0.js";
|
|
7
|
+
const TextContext = /*#__PURE__*/ createContext(null);
|
|
8
|
+
const TextProvider = TextContext.Provider;
|
|
9
|
+
const useTextStyle = ()=>{
|
|
10
|
+
const inherited = useContext(TextContext);
|
|
11
|
+
const { tokens } = useTheme();
|
|
12
|
+
return useMemo(()=>inherited ?? {
|
|
13
|
+
color: tokens.colors.fg,
|
|
14
|
+
fontFamily: tokens.typography.fontSans,
|
|
15
|
+
fontSize: tokens.typography.fontSize.md,
|
|
16
|
+
lineHeight: tokens.typography.fontSize.md * tokens.typography.lineHeight.md
|
|
17
|
+
}, [
|
|
18
|
+
inherited,
|
|
19
|
+
tokens
|
|
20
|
+
]);
|
|
21
|
+
};
|
|
22
|
+
const TEXT_KEYS = [
|
|
23
|
+
'color',
|
|
24
|
+
'fontFamily',
|
|
25
|
+
'fontSize',
|
|
26
|
+
'fontStyle',
|
|
27
|
+
'fontWeight',
|
|
28
|
+
'fontVariant',
|
|
29
|
+
'letterSpacing',
|
|
30
|
+
'lineHeight',
|
|
31
|
+
'textDecorationColor',
|
|
32
|
+
'textDecorationLine',
|
|
33
|
+
'textDecorationStyle',
|
|
34
|
+
'textTransform',
|
|
35
|
+
'writingDirection'
|
|
36
|
+
];
|
|
37
|
+
const InheritedText = ({ children, style, textBreakStrategy = 'simple', ...props })=>{
|
|
38
|
+
const inherited = useTextStyle();
|
|
39
|
+
const value = useMemoValue({
|
|
40
|
+
...inherited,
|
|
41
|
+
...pickBy(StyleSheet.flatten(style), (item, key)=>void 0 !== item && TEXT_KEYS.includes(key))
|
|
42
|
+
}, isEqual);
|
|
43
|
+
return /*#__PURE__*/ jsx(TextProvider, {
|
|
44
|
+
value: value,
|
|
45
|
+
children: /*#__PURE__*/ jsx(Text, {
|
|
46
|
+
...props,
|
|
47
|
+
style: style,
|
|
48
|
+
textBreakStrategy: textBreakStrategy,
|
|
49
|
+
children: 'function' == typeof children ? children(value) : children
|
|
50
|
+
})
|
|
51
|
+
});
|
|
52
|
+
};
|
|
53
|
+
export { InheritedText };
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { useStatic } from "@fluxdown/react-hooks";
|
|
2
|
+
import { useLayoutEffect, useState } from "react";
|
|
3
|
+
import { Animated, Easing } from "react-native";
|
|
4
|
+
const getProgress = (start, duration)=>start < 0 || duration <= 0 ? 1 : Math.min(1, Math.max(0, performance.now() - start) / duration);
|
|
5
|
+
const useAppear = (start, duration)=>{
|
|
6
|
+
const progress = useStatic(()=>new Animated.Value(getProgress(start, duration)));
|
|
7
|
+
const [complete, setComplete] = useState(()=>getProgress(start, duration) >= 1);
|
|
8
|
+
useLayoutEffect(()=>{
|
|
9
|
+
const current = getProgress(start, duration);
|
|
10
|
+
const remaining = duration * (1 - current);
|
|
11
|
+
progress.setValue(current);
|
|
12
|
+
setComplete(current >= 1);
|
|
13
|
+
if (0 === remaining) return;
|
|
14
|
+
const animation = Animated.timing(progress, {
|
|
15
|
+
toValue: 1,
|
|
16
|
+
duration: remaining,
|
|
17
|
+
easing: Easing.linear,
|
|
18
|
+
useNativeDriver: false,
|
|
19
|
+
isInteraction: false
|
|
20
|
+
});
|
|
21
|
+
animation.start(({ finished })=>finished && setComplete(true));
|
|
22
|
+
return ()=>animation.stop();
|
|
23
|
+
}, [
|
|
24
|
+
duration,
|
|
25
|
+
progress,
|
|
26
|
+
start
|
|
27
|
+
]);
|
|
28
|
+
return {
|
|
29
|
+
complete,
|
|
30
|
+
progress
|
|
31
|
+
};
|
|
32
|
+
};
|
|
33
|
+
export { useAppear };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { BaseReactRenderPlugin, BaseSlotPlugin, createTypeOfSlot, isHastElement, pluginExtends } from "@fluxdown/react-base-plugins/base";
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
import type { LayoutRectangle, TextStyle } from 'react-native';
|
|
3
|
+
export type InlineDrawingProps = {
|
|
4
|
+
children?: ReactNode;
|
|
5
|
+
active: boolean;
|
|
6
|
+
length?: number;
|
|
7
|
+
onMeasure?: (layout: LayoutRectangle) => void;
|
|
8
|
+
renderDrawing: (layout: LayoutRectangle, text: ReactNode, style: TextStyle) => ReactNode;
|
|
9
|
+
};
|
|
10
|
+
export declare const InlineDrawing: ({ children, active, length, renderDrawing, onMeasure, }: InlineDrawingProps) => import("react").JSX.Element;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
import type { LayoutRectangle, TextStyle } from 'react-native';
|
|
3
|
+
export type TextMeasurementValue = LayoutRectangle & {
|
|
4
|
+
baseline: number;
|
|
5
|
+
advance: number;
|
|
6
|
+
};
|
|
7
|
+
export type TextMeasurementProps = {
|
|
8
|
+
children?: ReactNode;
|
|
9
|
+
length?: number;
|
|
10
|
+
style: TextStyle;
|
|
11
|
+
onMeasure: (value: TextMeasurementValue) => void;
|
|
12
|
+
};
|
|
13
|
+
export declare const TextMeasurement: ({ children, length, style, onMeasure, }: TextMeasurementProps) => import("react").JSX.Element;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './inherited-text/index.js';
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
import type { TextProps, TextStyle } from 'react-native';
|
|
3
|
+
export type InheritedTextProps = Omit<TextProps, 'children'> & {
|
|
4
|
+
children?: ReactNode | ((style: TextStyle) => ReactNode);
|
|
5
|
+
};
|
|
6
|
+
export declare const InheritedText: ({ children, style, textBreakStrategy, ...props }: InheritedTextProps) => import("react").JSX.Element;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { ElementContent } from 'hast';
|
|
2
|
+
import type { ReactNode } from 'react';
|
|
3
|
+
export declare const BLOCK_TAG_NAMES: string[];
|
|
4
|
+
export declare const InlineRenderer: ({ children }: {
|
|
5
|
+
children?: ReactNode;
|
|
6
|
+
}) => import("react").JSX.Element;
|
|
7
|
+
export declare const renderNativeChildren: (nodes: ElementContent[], render: (node: ElementContent) => ReactNode) => ReactNode[];
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { Element, Parent } from 'hast';
|
|
2
|
+
import type { GetPropsFunction } from '../../typings/index.js';
|
|
3
|
+
export declare const getNativeProps: GetPropsFunction;
|
|
4
|
+
export declare const isLastChild: (current: Element | object, parents: Parent[]) => boolean;
|
|
5
|
+
export declare const isImageOnlyParagraph: (node: Parent) => boolean;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './type.js';
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { GestureResponderEvent } from 'react-native';
|
|
2
|
+
export interface ImagePressParams {
|
|
3
|
+
event: GestureResponderEvent;
|
|
4
|
+
}
|
|
5
|
+
export interface LinkPressParams {
|
|
6
|
+
event: GestureResponderEvent;
|
|
7
|
+
}
|
|
8
|
+
declare global {
|
|
9
|
+
interface SlotBaseAttributes {
|
|
10
|
+
nativeID?: string;
|
|
11
|
+
accessibilityLabel?: string;
|
|
12
|
+
}
|
|
13
|
+
interface ImageSlotAttributes {
|
|
14
|
+
onPress?: (params: ImagePressParams) => void;
|
|
15
|
+
}
|
|
16
|
+
interface LinkSlotAttributes {
|
|
17
|
+
onPress?: (params: LinkPressParams) => void;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { Theme, ThemeConfig } from '../../typings/theme.js';
|
|
2
|
+
export * from './presets/index.js';
|
|
3
|
+
export declare const ThemeProvider: import("react").Provider<ThemeConfig>;
|
|
4
|
+
export declare const useTheme: () => ThemeConfig;
|
|
5
|
+
export declare const useThemeConfig: (theme?: Theme) => ThemeConfig;
|
package/dist/esm/base.js
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export * from "@fluxdown/react-base-plugins/base";
|
|
2
|
+
export { BLOCK_TAG_NAMES, InlineRenderer, renderNativeChildren } from "./493~0.js";
|
|
3
|
+
export { DARK_THEME, LIGHT_THEME, ThemeProvider, useTheme, useThemeConfig } from "./121~0.js";
|
|
4
|
+
export { InheritedText } from "./855~0.js";
|
|
5
|
+
export { InlineDrawing } from "./319~0.js";
|
|
6
|
+
export { TextMeasurement } from "./390~0.js";
|
|
7
|
+
export { getNativeProps, isImageOnlyParagraph, isLastChild } from "./480~0.js";
|
|
8
|
+
export { useAppear } from "./856~0.js";
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { __webpack_require__ } from "./rslib-runtime~0.js";
|
|
2
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { useMemo } from "react";
|
|
4
|
+
import { Text, View } from "react-native";
|
|
5
|
+
import react_native_code_highlighter from "react-native-code-highlighter";
|
|
6
|
+
import { useTheme } from "./121~0.js";
|
|
7
|
+
var highlight_namespaceObject = {};
|
|
8
|
+
__webpack_require__.r(highlight_namespaceObject);
|
|
9
|
+
__webpack_require__.d(highlight_namespaceObject, {
|
|
10
|
+
default: ()=>highlight
|
|
11
|
+
});
|
|
12
|
+
const createHighlightStyle = ({ colors, syntax })=>({
|
|
13
|
+
hljs: {
|
|
14
|
+
color: colors.fg
|
|
15
|
+
},
|
|
16
|
+
'hljs-comment': {
|
|
17
|
+
color: syntax.comment
|
|
18
|
+
},
|
|
19
|
+
'hljs-quote': {
|
|
20
|
+
color: syntax.comment
|
|
21
|
+
},
|
|
22
|
+
'hljs-keyword': {
|
|
23
|
+
color: syntax.keyword
|
|
24
|
+
},
|
|
25
|
+
'hljs-selector-tag': {
|
|
26
|
+
color: syntax.keyword
|
|
27
|
+
},
|
|
28
|
+
'hljs-literal': {
|
|
29
|
+
color: syntax.keyword
|
|
30
|
+
},
|
|
31
|
+
'hljs-string': {
|
|
32
|
+
color: syntax.string
|
|
33
|
+
},
|
|
34
|
+
'hljs-regexp': {
|
|
35
|
+
color: syntax.string
|
|
36
|
+
},
|
|
37
|
+
'hljs-number': {
|
|
38
|
+
color: syntax.number
|
|
39
|
+
},
|
|
40
|
+
'hljs-attr': {
|
|
41
|
+
color: syntax.variable
|
|
42
|
+
},
|
|
43
|
+
'hljs-variable': {
|
|
44
|
+
color: syntax.variable
|
|
45
|
+
},
|
|
46
|
+
'hljs-title': {
|
|
47
|
+
color: syntax.function
|
|
48
|
+
},
|
|
49
|
+
'hljs-built_in': {
|
|
50
|
+
color: syntax.function
|
|
51
|
+
},
|
|
52
|
+
'hljs-symbol': {
|
|
53
|
+
color: syntax.punctuation
|
|
54
|
+
},
|
|
55
|
+
'hljs-addition': {
|
|
56
|
+
color: syntax.inserted
|
|
57
|
+
},
|
|
58
|
+
'hljs-deletion': {
|
|
59
|
+
color: syntax.deleted
|
|
60
|
+
},
|
|
61
|
+
'hljs-emphasis': {
|
|
62
|
+
fontStyle: 'italic'
|
|
63
|
+
},
|
|
64
|
+
'hljs-strong': {
|
|
65
|
+
fontWeight: 'bold'
|
|
66
|
+
}
|
|
67
|
+
});
|
|
68
|
+
const HighlightRenderer = ({ code, language, suffix })=>{
|
|
69
|
+
const { tokens } = useTheme();
|
|
70
|
+
const hljsStyle = useMemo(()=>createHighlightStyle(tokens), [
|
|
71
|
+
tokens
|
|
72
|
+
]);
|
|
73
|
+
return /*#__PURE__*/ jsxs(View, {
|
|
74
|
+
children: [
|
|
75
|
+
/*#__PURE__*/ jsx(react_native_code_highlighter, {
|
|
76
|
+
hljsStyle: hljsStyle,
|
|
77
|
+
language: language,
|
|
78
|
+
textStyle: {
|
|
79
|
+
fontFamily: tokens.typography.fontMono,
|
|
80
|
+
fontSize: tokens.code.fontSize,
|
|
81
|
+
lineHeight: tokens.code.fontSize * tokens.code.lineHeight,
|
|
82
|
+
minHeight: tokens.code.fontSize * tokens.code.lineHeight,
|
|
83
|
+
userSelect: 'text'
|
|
84
|
+
},
|
|
85
|
+
scrollViewProps: {
|
|
86
|
+
contentContainerStyle: {
|
|
87
|
+
minWidth: '100%',
|
|
88
|
+
padding: tokens.spacing.lg,
|
|
89
|
+
backgroundColor: tokens.colors.surfaceSubtle
|
|
90
|
+
}
|
|
91
|
+
},
|
|
92
|
+
children: code
|
|
93
|
+
}),
|
|
94
|
+
suffix ? /*#__PURE__*/ jsx(Text, {
|
|
95
|
+
children: suffix
|
|
96
|
+
}) : null
|
|
97
|
+
]
|
|
98
|
+
});
|
|
99
|
+
};
|
|
100
|
+
const highlight = HighlightRenderer;
|
|
101
|
+
export { highlight_namespaceObject };
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import { __webpack_require__ } from "./rslib-runtime~0.js";
|
|
2
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { useEffect, useId, useMemo, useState } from "react";
|
|
4
|
+
import { ScrollView, View } from "react-native";
|
|
5
|
+
import { SvgAst, parse } from "react-native-svg";
|
|
6
|
+
import { createTypeOfSlot } from "./992~0.js";
|
|
7
|
+
import { useTheme } from "./121~0.js";
|
|
8
|
+
var mermaid_namespaceObject = {};
|
|
9
|
+
__webpack_require__.r(mermaid_namespaceObject);
|
|
10
|
+
__webpack_require__.d(mermaid_namespaceObject, {
|
|
11
|
+
default: ()=>mermaid
|
|
12
|
+
});
|
|
13
|
+
const XML_ENTITIES = {
|
|
14
|
+
'&': '&',
|
|
15
|
+
'<': '<',
|
|
16
|
+
'>': '>',
|
|
17
|
+
'"': '"',
|
|
18
|
+
''': "'"
|
|
19
|
+
};
|
|
20
|
+
const decodeEntities = (value)=>value.replace(/&(amp|lt|gt|quot|apos);/g, (entity)=>XML_ENTITIES[entity]);
|
|
21
|
+
const decodeSvgEntities = (node)=>{
|
|
22
|
+
node.children = node.children.map((child)=>'string' == typeof child ? decodeEntities(child) : decodeSvgEntities(child));
|
|
23
|
+
for (const [key, value] of Object.entries(node.props))if ('string' == typeof value) node.props[key] = decodeEntities(value);
|
|
24
|
+
return node;
|
|
25
|
+
};
|
|
26
|
+
const renderDiagram = async (source, tokens, id)=>{
|
|
27
|
+
const { estimateText, layoutDiagram, lightTheme, parseDiagramAsync, renderToSvg } = await import("@osuki-dev/skia-diagrams");
|
|
28
|
+
const parsed = await parseDiagramAsync(source);
|
|
29
|
+
if ('error' === parsed.kind || 'unsupported' === parsed.kind) return null;
|
|
30
|
+
const { colors, typography } = tokens;
|
|
31
|
+
const theme = {
|
|
32
|
+
...lightTheme,
|
|
33
|
+
background: colors.bg,
|
|
34
|
+
nodeFill: colors.surfaceMuted,
|
|
35
|
+
nodeStroke: colors.borderEmphasis,
|
|
36
|
+
nodeText: colors.fg,
|
|
37
|
+
edgeStroke: colors.fgMuted,
|
|
38
|
+
edgeText: colors.fg,
|
|
39
|
+
edgeTextBackground: colors.bg,
|
|
40
|
+
clusterFill: colors.surfaceSubtle,
|
|
41
|
+
clusterStroke: colors.border,
|
|
42
|
+
clusterText: colors.fg,
|
|
43
|
+
accent: colors.accent,
|
|
44
|
+
noteFill: colors.surfaceMuted,
|
|
45
|
+
noteText: colors.fg,
|
|
46
|
+
fontFamily: typography.fontSans,
|
|
47
|
+
fontFamilyMono: typography.fontMono,
|
|
48
|
+
fontSize: typography.fontSize.sm
|
|
49
|
+
};
|
|
50
|
+
const scene = layoutDiagram(parsed, estimateText, {
|
|
51
|
+
...theme.layout,
|
|
52
|
+
fontSize: theme.fontSize,
|
|
53
|
+
radius: theme.radius
|
|
54
|
+
});
|
|
55
|
+
const svg = renderToSvg(scene, theme).replaceAll('diagram-gradient-', `${id}-gradient-`);
|
|
56
|
+
return {
|
|
57
|
+
svg,
|
|
58
|
+
width: scene.bounds.width,
|
|
59
|
+
height: scene.bounds.height,
|
|
60
|
+
label: scene.accessibilityLabel
|
|
61
|
+
};
|
|
62
|
+
};
|
|
63
|
+
const CodeHeader = /*#__PURE__*/ createTypeOfSlot('CodeHeader');
|
|
64
|
+
const MermaidRenderer = ({ Raw, ...props })=>{
|
|
65
|
+
const { code, language, meta, loading, onCopy, showHeader = true, suffix } = props;
|
|
66
|
+
const { tokens } = useTheme();
|
|
67
|
+
const id = useId().replaceAll(':', '');
|
|
68
|
+
const [diagram, setDiagram] = useState(null);
|
|
69
|
+
const ast = useMemo(()=>diagram ? parse(diagram.svg, decodeSvgEntities) : null, [
|
|
70
|
+
diagram
|
|
71
|
+
]);
|
|
72
|
+
useEffect(()=>{
|
|
73
|
+
let active = true;
|
|
74
|
+
if (code.trim()) renderDiagram(code, tokens, id).then((result)=>{
|
|
75
|
+
if (active && (result || !loading)) setDiagram(result);
|
|
76
|
+
}, ()=>{
|
|
77
|
+
if (active && !loading) setDiagram(null);
|
|
78
|
+
});
|
|
79
|
+
else setDiagram(null);
|
|
80
|
+
return ()=>{
|
|
81
|
+
active = false;
|
|
82
|
+
};
|
|
83
|
+
}, [
|
|
84
|
+
code,
|
|
85
|
+
loading,
|
|
86
|
+
tokens,
|
|
87
|
+
id
|
|
88
|
+
]);
|
|
89
|
+
if (!diagram) return Raw && /*#__PURE__*/ jsx(Raw, {
|
|
90
|
+
...props
|
|
91
|
+
});
|
|
92
|
+
return /*#__PURE__*/ jsxs(View, {
|
|
93
|
+
accessibilityState: {
|
|
94
|
+
busy: loading
|
|
95
|
+
},
|
|
96
|
+
style: {
|
|
97
|
+
marginVertical: tokens.spacing.lg,
|
|
98
|
+
borderWidth: 1,
|
|
99
|
+
borderColor: tokens.colors.border,
|
|
100
|
+
borderRadius: tokens.radius.md,
|
|
101
|
+
overflow: 'hidden'
|
|
102
|
+
},
|
|
103
|
+
children: [
|
|
104
|
+
showHeader ? /*#__PURE__*/ jsx(CodeHeader, {
|
|
105
|
+
code: code,
|
|
106
|
+
language: language,
|
|
107
|
+
meta: meta,
|
|
108
|
+
onCopy: onCopy
|
|
109
|
+
}) : null,
|
|
110
|
+
/*#__PURE__*/ jsx(ScrollView, {
|
|
111
|
+
horizontal: true,
|
|
112
|
+
contentContainerStyle: {
|
|
113
|
+
padding: tokens.spacing.lg
|
|
114
|
+
},
|
|
115
|
+
children: /*#__PURE__*/ jsx(SvgAst, {
|
|
116
|
+
ast: ast,
|
|
117
|
+
override: {
|
|
118
|
+
width: diagram.width,
|
|
119
|
+
height: diagram.height,
|
|
120
|
+
accessibilityLabel: meta || diagram.label
|
|
121
|
+
}
|
|
122
|
+
})
|
|
123
|
+
}),
|
|
124
|
+
suffix
|
|
125
|
+
]
|
|
126
|
+
});
|
|
127
|
+
};
|
|
128
|
+
const mermaid = MermaidRenderer;
|
|
129
|
+
export { mermaid_namespaceObject };
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { IPluggableConfig } from '@fluxdown/types';
|
|
2
|
+
import { BaseSlotPlugin } from '../../../../base/index.js';
|
|
3
|
+
import { BlockquoteRenderer } from './renderer/index.js';
|
|
4
|
+
declare global {
|
|
5
|
+
interface SlotConfigs {
|
|
6
|
+
'slot-blockquote': IPluggableConfig<void>;
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
export declare class BlockquoteSlotPlugin extends BaseSlotPlugin<'Blockquote'> {
|
|
10
|
+
static readonly key = "slot-blockquote";
|
|
11
|
+
readonly Component: typeof BlockquoteRenderer;
|
|
12
|
+
readonly type = "Blockquote";
|
|
13
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './blockquote/index.js';
|