react-native-nitro-markdown 0.6.1 → 0.7.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 +77 -8
- package/android/gradle.properties +2 -2
- package/android/src/main/java/com/margelo/nitro/com/nitromarkdown/HybridMarkdownSession.kt +21 -3
- package/ios/HybridMarkdownSession.swift +53 -3
- package/lib/commonjs/MarkdownContext.js.map +1 -1
- package/lib/commonjs/headless.js +0 -4
- package/lib/commonjs/headless.js.map +1 -1
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/markdown-stream.js +40 -15
- package/lib/commonjs/markdown-stream.js.map +1 -1
- package/lib/commonjs/markdown.js +4 -3
- package/lib/commonjs/markdown.js.map +1 -1
- package/lib/commonjs/renderers/heading.js +1 -0
- package/lib/commonjs/renderers/heading.js.map +1 -1
- package/lib/commonjs/renderers/image.js +22 -8
- package/lib/commonjs/renderers/image.js.map +1 -1
- package/lib/commonjs/renderers/link.js +1 -1
- package/lib/commonjs/renderers/link.js.map +1 -1
- package/lib/commonjs/renderers/list.js +4 -0
- package/lib/commonjs/renderers/list.js.map +1 -1
- package/lib/commonjs/renderers/math.js +0 -1
- package/lib/commonjs/renderers/math.js.map +1 -1
- package/lib/commonjs/use-markdown-stream.js +9 -1
- package/lib/commonjs/use-markdown-stream.js.map +1 -1
- package/lib/commonjs/utils/link-security.js +42 -5
- package/lib/commonjs/utils/link-security.js.map +1 -1
- package/lib/module/MarkdownContext.js.map +1 -1
- package/lib/module/headless.js +0 -4
- package/lib/module/headless.js.map +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/markdown-stream.js +40 -15
- package/lib/module/markdown-stream.js.map +1 -1
- package/lib/module/markdown.js +4 -3
- package/lib/module/markdown.js.map +1 -1
- package/lib/module/renderers/heading.js +1 -0
- package/lib/module/renderers/heading.js.map +1 -1
- package/lib/module/renderers/image.js +22 -8
- package/lib/module/renderers/image.js.map +1 -1
- package/lib/module/renderers/link.js +1 -1
- package/lib/module/renderers/link.js.map +1 -1
- package/lib/module/renderers/list.js +4 -0
- package/lib/module/renderers/list.js.map +1 -1
- package/lib/module/renderers/math.js +0 -1
- package/lib/module/renderers/math.js.map +1 -1
- package/lib/module/use-markdown-stream.js +9 -1
- package/lib/module/use-markdown-stream.js.map +1 -1
- package/lib/module/utils/link-security.js +40 -4
- package/lib/module/utils/link-security.js.map +1 -1
- package/lib/typescript/commonjs/MarkdownContext.d.ts +44 -7
- package/lib/typescript/commonjs/MarkdownContext.d.ts.map +1 -1
- package/lib/typescript/commonjs/headless.d.ts +6 -3
- package/lib/typescript/commonjs/headless.d.ts.map +1 -1
- package/lib/typescript/commonjs/index.d.ts +4 -3
- package/lib/typescript/commonjs/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/markdown-stream.d.ts.map +1 -1
- package/lib/typescript/commonjs/markdown.d.ts +12 -11
- package/lib/typescript/commonjs/markdown.d.ts.map +1 -1
- package/lib/typescript/commonjs/renderers/heading.d.ts.map +1 -1
- package/lib/typescript/commonjs/renderers/image.d.ts.map +1 -1
- package/lib/typescript/commonjs/renderers/link.d.ts.map +1 -1
- package/lib/typescript/commonjs/renderers/list.d.ts.map +1 -1
- package/lib/typescript/commonjs/renderers/math.d.ts.map +1 -1
- package/lib/typescript/commonjs/use-markdown-stream.d.ts.map +1 -1
- package/lib/typescript/commonjs/utils/link-security.d.ts +5 -0
- package/lib/typescript/commonjs/utils/link-security.d.ts.map +1 -1
- package/lib/typescript/module/MarkdownContext.d.ts +44 -7
- package/lib/typescript/module/MarkdownContext.d.ts.map +1 -1
- package/lib/typescript/module/headless.d.ts +6 -3
- package/lib/typescript/module/headless.d.ts.map +1 -1
- package/lib/typescript/module/index.d.ts +4 -3
- package/lib/typescript/module/index.d.ts.map +1 -1
- package/lib/typescript/module/markdown-stream.d.ts.map +1 -1
- package/lib/typescript/module/markdown.d.ts +12 -11
- package/lib/typescript/module/markdown.d.ts.map +1 -1
- package/lib/typescript/module/renderers/heading.d.ts.map +1 -1
- package/lib/typescript/module/renderers/image.d.ts.map +1 -1
- package/lib/typescript/module/renderers/link.d.ts.map +1 -1
- package/lib/typescript/module/renderers/list.d.ts.map +1 -1
- package/lib/typescript/module/renderers/math.d.ts.map +1 -1
- package/lib/typescript/module/use-markdown-stream.d.ts.map +1 -1
- package/lib/typescript/module/utils/link-security.d.ts +5 -0
- package/lib/typescript/module/utils/link-security.d.ts.map +1 -1
- package/package.json +5 -5
- package/react-native-nitro-markdown.podspec +1 -1
- package/src/MarkdownContext.ts +51 -11
- package/src/headless.ts +35 -34
- package/src/index.ts +14 -1
- package/src/markdown-stream.tsx +49 -17
- package/src/markdown.tsx +20 -13
- package/src/renderers/heading.tsx +5 -1
- package/src/renderers/image.tsx +31 -9
- package/src/renderers/link.tsx +5 -2
- package/src/renderers/list.tsx +5 -1
- package/src/renderers/math.tsx +0 -1
- package/src/use-markdown-stream.ts +9 -1
- package/src/utils/link-security.ts +68 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useCallback","useEffect","useRef","useState","View","Text","PanResponder","StyleSheet","Platform","getCachedStyles","useMarkdownContext","jsx","_jsx","RaTeXViewComponent","ratexModule","require","RaTeXView","__DEV__","console","warn","mathStylesCache","WeakMap","INLINE_DISPLAY_MATH_PATTERN","getInlineMathFontSize","content","theme","test","fontSizes","xl","l","HorizontalMathViewport","children","contentWidth","style","contentStyle","viewportWidth","setViewportWidth","measuredContentWidth","setMeasuredContentWidth","offset","setOffset","viewportWidthRef","contentWidthRef","offsetRef","gestureStartOffsetRef","panHandlers","setPanHandlers","setClampedOffset","nextOffset","maxOffset","Math","max","current","clampedOffset","min","handleViewportLayout","event","nativeEvent","layout","width","handleContentLayout","responder","create","onMoveShouldSetPanResponder","_event","gestureState","hasOverflow","isHorizontal","abs","dx","dy","onPanResponderGrant","onPanResponderMove","onPanResponderTerminationRequest","centeredOffset","onLayout","pointerEvents","transform","translateX","createMathStyles","mathInlineContainer","marginHorizontal","justifyContent","mathInlineFallbackContainer","backgroundColor","colors","codeBackground","paddingHorizontal","spacing","xs","paddingVertical","borderRadius","s","mathInlineFallback","fontFamily","fontFamilies","mono","select","ios","android","fontSize","color","code","OS","includeFontPadding","ratexInline","flexShrink","mathBlockContainer","maxWidth","alignSelf","marginVertical","m","surface","borderWidth","borderColor","border","minHeight","overflow","mathBlockScroll","mathBlockScrollContent","alignItems","ratexBlock","mathBlockFallbackContainer","mathBlockFallback","textAlign","MathInline","styles","hasRenderError","setHasRenderError","latex","displayMode","text","onError","MathBlock"],"sourceRoot":"../../../src","sources":["renderers/math.tsx"],"mappings":";;AACA,SAASA,WAAW,EAAEC,SAAS,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,OAAO;AAChE,SACEC,IAAI,EACJC,IAAI,EACJC,YAAY,EACZC,UAAU,EACVC,QAAQ,QAIH,cAAc;AACrB,SAASC,eAAe,QAAQ,kBAAe;AAC/C,SAASC,kBAAkB,QAAQ,uBAAoB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAGxD,IAAIC,kBAOK,GAAG,IAAI;AAEhB,IAAI;EACF;EACA,MAAMC,WAAW,GAAGC,OAAO,CAAC,oBAAoB,CAAC;EACjDF,kBAAkB,GAAGC,WAAW,CAACE,SAAS,IAAI,IAAI;AACpD,CAAC,CAAC,MAAM;EACN,IAAIC,OAAO,EAAE;
|
|
1
|
+
{"version":3,"names":["useCallback","useEffect","useRef","useState","View","Text","PanResponder","StyleSheet","Platform","getCachedStyles","useMarkdownContext","jsx","_jsx","RaTeXViewComponent","ratexModule","require","RaTeXView","__DEV__","console","warn","mathStylesCache","WeakMap","INLINE_DISPLAY_MATH_PATTERN","getInlineMathFontSize","content","theme","test","fontSizes","xl","l","HorizontalMathViewport","children","contentWidth","style","contentStyle","viewportWidth","setViewportWidth","measuredContentWidth","setMeasuredContentWidth","offset","setOffset","viewportWidthRef","contentWidthRef","offsetRef","gestureStartOffsetRef","panHandlers","setPanHandlers","setClampedOffset","nextOffset","maxOffset","Math","max","current","clampedOffset","min","handleViewportLayout","event","nativeEvent","layout","width","handleContentLayout","responder","create","onMoveShouldSetPanResponder","_event","gestureState","hasOverflow","isHorizontal","abs","dx","dy","onPanResponderGrant","onPanResponderMove","onPanResponderTerminationRequest","centeredOffset","onLayout","pointerEvents","transform","translateX","createMathStyles","mathInlineContainer","marginHorizontal","justifyContent","mathInlineFallbackContainer","backgroundColor","colors","codeBackground","paddingHorizontal","spacing","xs","paddingVertical","borderRadius","s","mathInlineFallback","fontFamily","fontFamilies","mono","select","ios","android","fontSize","color","code","OS","includeFontPadding","ratexInline","flexShrink","mathBlockContainer","maxWidth","alignSelf","marginVertical","m","surface","borderWidth","borderColor","border","minHeight","overflow","mathBlockScroll","mathBlockScrollContent","alignItems","ratexBlock","mathBlockFallbackContainer","mathBlockFallback","textAlign","MathInline","styles","hasRenderError","setHasRenderError","latex","displayMode","text","onError","MathBlock"],"sourceRoot":"../../../src","sources":["renderers/math.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -12,7 +12,15 @@ export function useMarkdownSession() {
|
|
|
12
12
|
useEffect(() => {
|
|
13
13
|
const session = sessionRef.current;
|
|
14
14
|
return () => {
|
|
15
|
-
|
|
15
|
+
try {
|
|
16
|
+
session.clear();
|
|
17
|
+
} finally {
|
|
18
|
+
try {
|
|
19
|
+
session.dispose();
|
|
20
|
+
} finally {
|
|
21
|
+
sessionRef.current = null;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
16
24
|
};
|
|
17
25
|
}, []);
|
|
18
26
|
const stop = useCallback(() => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useRef","useCallback","useState","useEffect","createMarkdownSession","createTimestampTimeline","resolveHighlightPosition","useMarkdownSession","sessionRef","current","isStreaming","setIsStreaming","session","clear","stop","highlightPosition","setHighlight","position","getSession","reset","text","replace","from","to","useStream","timestamps","engine","isPlaying","setIsPlaying","timelineRef","entries","monotonic","lastHighlightRef","sync","currentTimeMs","nextHighlight"],"sourceRoot":"../../src","sources":["use-markdown-stream.ts"],"mappings":";;AAAA,SAASA,MAAM,EAAEC,WAAW,EAAEC,QAAQ,EAAEC,SAAS,QAAQ,OAAO;AAChE,SAASC,qBAAqB,QAAQ,sBAAmB;AACzD,SACEC,uBAAuB,EACvBC,wBAAwB,QAEnB,4BAAyB;AAIhC,OAAO,SAASC,kBAAkBA,CAAA,EAAG;EACnC,MAAMC,UAAU,GAAGR,MAAM,CAAyB,IAAI,CAAC;EACvD,IAAIQ,UAAU,CAACC,OAAO,KAAK,IAAI,EAAE;IAC/BD,UAAU,CAACC,OAAO,GAAGL,qBAAqB,CAAC,CAAC;EAC9C;EAEA,MAAM,CAACM,WAAW,EAAEC,cAAc,CAAC,GAAGT,QAAQ,CAAC,KAAK,CAAC;EAErDC,SAAS,CAAC,MAAM;IACd,MAAMS,OAAO,GAAGJ,UAAU,CAACC,OAAQ;IACnC,OAAO,MAAM;
|
|
1
|
+
{"version":3,"names":["useRef","useCallback","useState","useEffect","createMarkdownSession","createTimestampTimeline","resolveHighlightPosition","useMarkdownSession","sessionRef","current","isStreaming","setIsStreaming","session","clear","dispose","stop","highlightPosition","setHighlight","position","getSession","reset","text","replace","from","to","useStream","timestamps","engine","isPlaying","setIsPlaying","timelineRef","entries","monotonic","lastHighlightRef","sync","currentTimeMs","nextHighlight"],"sourceRoot":"../../src","sources":["use-markdown-stream.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,15 +1,51 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
const ALLOWED_LINK_PROTOCOLS = new Set(["http:", "https:", "mailto:", "tel:", "sms:"]);
|
|
4
|
+
const DEFAULT_IMAGE_PROTOCOLS = ["http:", "https:"];
|
|
5
|
+
const CONTROL_CHARACTER_PATTERN = /[\u0000-\u001F\u007F]/;
|
|
4
6
|
export const normalizeLinkHref = href => {
|
|
5
7
|
const normalizedHref = href.trim();
|
|
8
|
+
if (CONTROL_CHARACTER_PATTERN.test(normalizedHref)) return null;
|
|
6
9
|
return normalizedHref.length > 0 ? normalizedHref : null;
|
|
7
10
|
};
|
|
8
|
-
|
|
11
|
+
const parseAbsoluteHref = href => {
|
|
9
12
|
const protocolMatch = href.match(/^([a-z][a-z0-9+.-]*):/i);
|
|
10
13
|
if (!protocolMatch) return null;
|
|
11
|
-
const protocol =
|
|
12
|
-
|
|
13
|
-
|
|
14
|
+
const protocol = normalizeProtocol(protocolMatch[1]);
|
|
15
|
+
const rest = href.slice(protocolMatch[0].length);
|
|
16
|
+
const authorityMatch = rest.match(/^\/\/([^/?#]*)/);
|
|
17
|
+
const rawHost = authorityMatch?.[1] ?? "";
|
|
18
|
+
const hostname = rawHost.replace(/^[^@]*@/, "").replace(/^\[|\]$/g, "").split(":")[0].toLowerCase();
|
|
19
|
+
return {
|
|
20
|
+
protocol,
|
|
21
|
+
hostname
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
const normalizeProtocol = protocol => {
|
|
25
|
+
const normalized = protocol.trim().toLowerCase();
|
|
26
|
+
return normalized.endsWith(":") ? normalized : `${normalized}:`;
|
|
27
|
+
};
|
|
28
|
+
export const getAllowedExternalHref = href => {
|
|
29
|
+
const normalizedHref = normalizeLinkHref(href);
|
|
30
|
+
if (!normalizedHref) return null;
|
|
31
|
+
const parsed = parseAbsoluteHref(normalizedHref);
|
|
32
|
+
if (!parsed) return null;
|
|
33
|
+
if (!ALLOWED_LINK_PROTOCOLS.has(parsed.protocol)) return null;
|
|
34
|
+
return normalizedHref;
|
|
35
|
+
};
|
|
36
|
+
export const getAllowedImageHref = (href, options) => {
|
|
37
|
+
const normalizedHref = normalizeLinkHref(href);
|
|
38
|
+
if (!normalizedHref) return null;
|
|
39
|
+
const parsed = parseAbsoluteHref(normalizedHref);
|
|
40
|
+
if (!parsed) return null;
|
|
41
|
+
const allowedProtocols = new Set((options?.allowedProtocols ?? DEFAULT_IMAGE_PROTOCOLS).map(normalizeProtocol));
|
|
42
|
+
if (!allowedProtocols.has(parsed.protocol)) return null;
|
|
43
|
+
const allowedHosts = options?.allowedHosts;
|
|
44
|
+
if (allowedHosts && allowedHosts.length > 0) {
|
|
45
|
+
const normalizedHost = parsed.hostname.toLowerCase();
|
|
46
|
+
const allowedHostSet = new Set(allowedHosts.map(host => host.trim().toLowerCase()).filter(Boolean));
|
|
47
|
+
if (!allowedHostSet.has(normalizedHost)) return null;
|
|
48
|
+
}
|
|
49
|
+
return normalizedHref;
|
|
14
50
|
};
|
|
15
51
|
//# sourceMappingURL=link-security.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ALLOWED_LINK_PROTOCOLS","Set","normalizeLinkHref","href","normalizedHref","trim","length","
|
|
1
|
+
{"version":3,"names":["ALLOWED_LINK_PROTOCOLS","Set","DEFAULT_IMAGE_PROTOCOLS","CONTROL_CHARACTER_PATTERN","normalizeLinkHref","href","normalizedHref","trim","test","length","parseAbsoluteHref","protocolMatch","match","protocol","normalizeProtocol","rest","slice","authorityMatch","rawHost","hostname","replace","split","toLowerCase","normalized","endsWith","getAllowedExternalHref","parsed","has","getAllowedImageHref","options","allowedProtocols","map","allowedHosts","normalizedHost","allowedHostSet","host","filter","Boolean"],"sourceRoot":"../../../src","sources":["utils/link-security.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,6 +2,7 @@ import { type ReactNode, type ComponentType } from "react";
|
|
|
2
2
|
import type { MarkdownNode } from "./headless";
|
|
3
3
|
import { type MarkdownTheme, type NodeStyleOverrides, type StylingStrategy } from "./theme";
|
|
4
4
|
import type { CodeHighlighter } from "./utils/code-highlight";
|
|
5
|
+
import type { UrlSafetyOptions } from "./utils/link-security";
|
|
5
6
|
export type NodeRendererProps = {
|
|
6
7
|
node: MarkdownNode;
|
|
7
8
|
depth: number;
|
|
@@ -51,10 +52,48 @@ export type ListRendererProps = {
|
|
|
51
52
|
export type TaskListItemRendererProps = {
|
|
52
53
|
checked: boolean;
|
|
53
54
|
} & BaseCustomRendererProps;
|
|
54
|
-
export type
|
|
55
|
+
export type MathRendererProps = {
|
|
56
|
+
content: string;
|
|
57
|
+
} & BaseCustomRendererProps;
|
|
58
|
+
export type CustomRendererProps = EnhancedRendererProps;
|
|
55
59
|
export type LinkPressHandler = (href: string) => void | boolean | Promise<void | boolean>;
|
|
56
|
-
export type CustomRenderer = (props:
|
|
57
|
-
export type
|
|
60
|
+
export type CustomRenderer<Props extends EnhancedRendererProps = EnhancedRendererProps> = (props: Props) => ReactNode | undefined;
|
|
61
|
+
export type CustomRendererPropsByNode = {
|
|
62
|
+
document: CustomRendererProps;
|
|
63
|
+
heading: HeadingRendererProps;
|
|
64
|
+
paragraph: CustomRendererProps;
|
|
65
|
+
text: CustomRendererProps;
|
|
66
|
+
bold: CustomRendererProps;
|
|
67
|
+
italic: CustomRendererProps;
|
|
68
|
+
strikethrough: CustomRendererProps;
|
|
69
|
+
link: LinkRendererProps;
|
|
70
|
+
image: ImageRendererProps;
|
|
71
|
+
code_inline: InlineCodeRendererProps;
|
|
72
|
+
code_block: CodeBlockRendererProps;
|
|
73
|
+
blockquote: CustomRendererProps;
|
|
74
|
+
horizontal_rule: CustomRendererProps;
|
|
75
|
+
line_break: CustomRendererProps;
|
|
76
|
+
soft_break: CustomRendererProps;
|
|
77
|
+
table: CustomRendererProps;
|
|
78
|
+
table_head: CustomRendererProps;
|
|
79
|
+
table_body: CustomRendererProps;
|
|
80
|
+
table_row: CustomRendererProps;
|
|
81
|
+
table_cell: CustomRendererProps;
|
|
82
|
+
list: ListRendererProps;
|
|
83
|
+
list_item: CustomRendererProps;
|
|
84
|
+
task_list_item: TaskListItemRendererProps;
|
|
85
|
+
math_inline: MathRendererProps;
|
|
86
|
+
math_block: MathRendererProps;
|
|
87
|
+
html_block: CustomRendererProps;
|
|
88
|
+
html_inline: CustomRendererProps;
|
|
89
|
+
};
|
|
90
|
+
export type CustomRenderers = Partial<{
|
|
91
|
+
[Type in MarkdownNode["type"]]: CustomRenderer<CustomRendererPropsByNode[Type]>;
|
|
92
|
+
}>;
|
|
93
|
+
export type TableOptions = {
|
|
94
|
+
minColumnWidth?: number;
|
|
95
|
+
measurementStabilizeMs?: number;
|
|
96
|
+
};
|
|
58
97
|
export type MarkdownContextValue = {
|
|
59
98
|
renderers: CustomRenderers;
|
|
60
99
|
theme: MarkdownTheme;
|
|
@@ -62,10 +101,8 @@ export type MarkdownContextValue = {
|
|
|
62
101
|
stylingStrategy: StylingStrategy;
|
|
63
102
|
onLinkPress?: LinkPressHandler;
|
|
64
103
|
highlightCode?: boolean | CodeHighlighter;
|
|
65
|
-
tableOptions?:
|
|
66
|
-
|
|
67
|
-
measurementStabilizeMs?: number;
|
|
68
|
-
};
|
|
104
|
+
tableOptions?: TableOptions;
|
|
105
|
+
imageOptions?: UrlSafetyOptions;
|
|
69
106
|
};
|
|
70
107
|
export declare const MarkdownContext: import("react").Context<MarkdownContextValue>;
|
|
71
108
|
export declare const useMarkdownContext: () => MarkdownContextValue;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MarkdownContext.d.ts","sourceRoot":"","sources":["../../../src/MarkdownContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,SAAS,EACd,KAAK,aAAa,EACnB,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAEL,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACrB,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,YAAY,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,IAAI,EAAE,YAAY,CAAC;IACnB,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;CAC5C,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GAAG,uBAAuB,CAAC;AAE5B,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;CAC9B,GAAG,uBAAuB,CAAC;AAE5B,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GAAG,uBAAuB,CAAC;AAE5B,MAAM,MAAM,kBAAkB,GAAG;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GAAG,uBAAuB,CAAC;AAE5B,MAAM,MAAM,sBAAsB,GAAG;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,uBAAuB,CAAC;AAE5B,MAAM,MAAM,uBAAuB,GAAG;IACpC,OAAO,EAAE,MAAM,CAAC;CACjB,GAAG,uBAAuB,CAAC;AAE5B,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GAAG,uBAAuB,CAAC;AAE5B,MAAM,MAAM,yBAAyB,GAAG;IACtC,OAAO,EAAE,OAAO,CAAC;CAClB,GAAG,uBAAuB,CAAC;AAE5B,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"MarkdownContext.d.ts","sourceRoot":"","sources":["../../../src/MarkdownContext.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +1,19 @@
|
|
|
1
1
|
import type { MarkdownParser, ParserOptions } from "./Markdown.nitro";
|
|
2
2
|
export type { ParserOptions } from "./Markdown.nitro";
|
|
3
|
+
export type MarkdownNodeType = "document" | "heading" | "paragraph" | "text" | "bold" | "italic" | "strikethrough" | "link" | "image" | "code_inline" | "code_block" | "blockquote" | "horizontal_rule" | "line_break" | "soft_break" | "table" | "table_head" | "table_body" | "table_row" | "table_cell" | "list" | "list_item" | "task_list_item" | "math_inline" | "math_block" | "html_block" | "html_inline";
|
|
4
|
+
export type HeadingLevel = 1 | 2 | 3 | 4 | 5 | 6;
|
|
5
|
+
export type TableCellAlign = "left" | "center" | "right";
|
|
3
6
|
/**
|
|
4
7
|
* Represents a node in the Markdown AST (Abstract Syntax Tree).
|
|
5
8
|
* Each node has a type and optional properties depending on the node type.
|
|
6
9
|
*/
|
|
7
10
|
export type MarkdownNode = {
|
|
8
11
|
/** The type of markdown element this node represents. Used to decide how to render the node. */
|
|
9
|
-
type:
|
|
12
|
+
type: MarkdownNodeType;
|
|
10
13
|
/** Text content for text, code, and similar nodes. */
|
|
11
14
|
content?: string;
|
|
12
15
|
/** Heading level (1-6) for heading nodes. */
|
|
13
|
-
level?:
|
|
16
|
+
level?: HeadingLevel;
|
|
14
17
|
/** URL for link and image nodes. */
|
|
15
18
|
href?: string;
|
|
16
19
|
/** Title attribute for link and image nodes. */
|
|
@@ -28,7 +31,7 @@ export type MarkdownNode = {
|
|
|
28
31
|
/** Whether a table cell is part of the header row. */
|
|
29
32
|
isHeader?: boolean;
|
|
30
33
|
/** Text alignment for table cells: 'left', 'center', or 'right'. */
|
|
31
|
-
align?:
|
|
34
|
+
align?: TableCellAlign;
|
|
32
35
|
/** Source start offset in original markdown text (when provided by native parser). */
|
|
33
36
|
beg?: number;
|
|
34
37
|
/** Source end offset in original markdown text (when provided by native parser). */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"headless.d.ts","sourceRoot":"","sources":["../../../src/headless.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtE,YAAY,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD
|
|
1
|
+
{"version":3,"file":"headless.d.ts","sourceRoot":"","sources":["../../../src/headless.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtE,YAAY,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD,MAAM,MAAM,gBAAgB,GACxB,UAAU,GACV,SAAS,GACT,WAAW,GACX,MAAM,GACN,MAAM,GACN,QAAQ,GACR,eAAe,GACf,MAAM,GACN,OAAO,GACP,aAAa,GACb,YAAY,GACZ,YAAY,GACZ,iBAAiB,GACjB,YAAY,GACZ,YAAY,GACZ,OAAO,GACP,YAAY,GACZ,YAAY,GACZ,WAAW,GACX,YAAY,GACZ,MAAM,GACN,WAAW,GACX,gBAAgB,GAChB,aAAa,GACb,YAAY,GACZ,YAAY,GACZ,aAAa,CAAC;AAElB,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACjD,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEzD;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,gGAAgG;IAChG,IAAI,EAAE,gBAAgB,CAAC;IACvB,sDAAsD;IACtD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,6CAA6C;IAC7C,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,oCAAoC;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gDAAgD;IAChD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gCAAgC;IAChC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yDAAyD;IACzD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,6CAA6C;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qDAAqD;IACrD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,sDAAsD;IACtD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oEAAoE;IACpE,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,sFAAsF;IACtF,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,oFAAoF;IACpF,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,uFAAuF;IACvF,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC;CAC3B,CAAC;AAgBF,QAAA,IAAI,oBAAoB,EAAE,cAAc,GAAG,IAAW,CAAC;AASvD,OAAO,EAAE,oBAAoB,EAAE,CAAC;AAEhC;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CAAC;AAC1D;;;;;GAKG;AACH,wBAAgB,aAAa,CAC3B,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,aAAa,GACrB,YAAY,CAAC;AA6BhB;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,aAAa,GACrB,YAAY,CAoBd;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAarD;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,aAAa,GACrB,MAAM,CAaR;AAED,YAAY,EAAE,cAAc,EAAE,CAAC;AAE/B;;;;;GAKG;AACH,eAAO,MAAM,cAAc,GAAI,MAAM,YAAY,KAAG,MAGnD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB,GAAI,MAAM,YAAY,KAAG,MAoDrD,CAAC;AAEF;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,YAAY,GAAG,YAAY,CAMnE"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
export { MarkdownParserModule, parseMarkdown, parseMarkdownWithOptions, extractPlainText, extractPlainTextWithOptions, getTextContent, getFlattenedText, stripSourceOffsets, } from "./headless";
|
|
2
|
-
export type { MarkdownNode, ParserOptions, MarkdownParser } from "./headless";
|
|
2
|
+
export type { MarkdownNode, MarkdownNodeType, HeadingLevel, TableCellAlign, ParserOptions, MarkdownParser, } from "./headless";
|
|
3
3
|
export { Markdown } from "./markdown";
|
|
4
|
-
export type { MarkdownProps, AstTransform, MarkdownPlugin, MarkdownVirtualizationOptions, } from "./markdown";
|
|
4
|
+
export type { MarkdownProps, AstTransform, MarkdownPlugin, MarkdownErrorPhase, MarkdownParseCompleteResult, MarkdownVirtualizationOptions, } from "./markdown";
|
|
5
5
|
export { MarkdownStream } from "./markdown-stream";
|
|
6
6
|
export type { MarkdownStreamProps } from "./markdown-stream";
|
|
7
7
|
export { useMarkdownContext, MarkdownContext } from "./MarkdownContext";
|
|
8
|
-
export type { CustomRenderer, CustomRenderers, CustomRendererProps, NodeRendererProps, BaseCustomRendererProps, EnhancedRendererProps, HeadingRendererProps, LinkRendererProps, ImageRendererProps, CodeBlockRendererProps, InlineCodeRendererProps, ListRendererProps, TaskListItemRendererProps, LinkPressHandler, MarkdownContextValue, } from "./MarkdownContext";
|
|
8
|
+
export type { CustomRenderer, CustomRenderers, CustomRendererProps, NodeRendererProps, BaseCustomRendererProps, EnhancedRendererProps, HeadingRendererProps, LinkRendererProps, ImageRendererProps, CodeBlockRendererProps, InlineCodeRendererProps, ListRendererProps, TaskListItemRendererProps, MathRendererProps, LinkPressHandler, MarkdownContextValue, CustomRendererPropsByNode, TableOptions, } from "./MarkdownContext";
|
|
9
9
|
export { defaultMarkdownTheme, minimalMarkdownTheme, mergeThemes, } from "./theme";
|
|
10
10
|
export type { MarkdownTheme, PartialMarkdownTheme, NodeStyleOverrides, StylingStrategy, } from "./theme";
|
|
11
11
|
export { Heading } from "./renderers/heading";
|
|
@@ -23,4 +23,5 @@ export type { MarkdownSession } from "./MarkdownSession";
|
|
|
23
23
|
export { useMarkdownSession, useStream } from "./use-markdown-stream";
|
|
24
24
|
export type { HighlightedToken, TokenType, CodeHighlighter, } from "./utils/code-highlight";
|
|
25
25
|
export { defaultHighlighter } from "./utils/code-highlight";
|
|
26
|
+
export type { UrlSafetyOptions } from "./utils/link-security";
|
|
26
27
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,wBAAwB,EACxB,gBAAgB,EAChB,2BAA2B,EAC3B,cAAc,EACd,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,YAAY,CAAC;AACpB,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,wBAAwB,EACxB,gBAAgB,EAChB,2BAA2B,EAC3B,cAAc,EACd,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,YAAY,CAAC;AACpB,YAAY,EACV,YAAY,EACZ,gBAAgB,EAChB,YAAY,EACZ,cAAc,EACd,aAAa,EACb,cAAc,GACf,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EACV,aAAa,EACb,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,2BAA2B,EAC3B,6BAA6B,GAC9B,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,YAAY,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAE7D,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACxE,YAAY,EACV,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,iBAAiB,EACjB,uBAAuB,EACvB,qBAAqB,EACrB,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EAClB,sBAAsB,EACtB,uBAAuB,EACvB,iBAAiB,EACjB,yBAAyB,EACzB,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,EACpB,yBAAyB,EACzB,YAAY,GACb,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,WAAW,GACZ,MAAM,SAAS,CAAC;AACjB,YAAY,EACV,aAAa,EACb,oBAAoB,EACpB,kBAAkB,EAClB,eAAe,GAChB,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAEzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEtE,YAAY,EACV,gBAAgB,EAChB,SAAS,EACT,eAAe,GAChB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,YAAY,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markdown-stream.d.ts","sourceRoot":"","sources":["../../../src/markdown-stream.tsx"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,EAAE,EACR,MAAM,OAAO,CAAC;AAEf,OAAO,EAAY,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAC1D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"markdown-stream.d.ts","sourceRoot":"","sources":["../../../src/markdown-stream.tsx"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,EAAE,EACR,MAAM,OAAO,CAAC;AAEf,OAAO,EAAY,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAC1D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AA2DrE,MAAM,MAAM,mBAAmB,GAAG;IAChC;;OAEG;IACH,OAAO,EAAE,eAAe,CAAC;IACzB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;OAIG;IACH,cAAc,CAAC,EAAE,UAAU,GAAG,KAAK,CAAC;IACpC;;;OAGG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B;;;OAGG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,GAAG,IAAI,CAAC,aAAa,EAAE,UAAU,GAAG,WAAW,CAAC,CAAC;AAElD;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,EAAE,CAAC,mBAAmB,CAgMlD,CAAC"}
|
|
@@ -2,9 +2,10 @@ import { type FC } from "react";
|
|
|
2
2
|
import { type FlatListProps, type StyleProp, type ViewStyle } from "react-native";
|
|
3
3
|
import { type MarkdownNode } from "./headless";
|
|
4
4
|
import type { ParserOptions } from "./Markdown.nitro";
|
|
5
|
-
import { type CustomRenderers, type LinkPressHandler } from "./MarkdownContext";
|
|
5
|
+
import { type CustomRenderers, type LinkPressHandler, type TableOptions } from "./MarkdownContext";
|
|
6
6
|
import { type PartialMarkdownTheme, type NodeStyleOverrides, type StylingStrategy } from "./theme";
|
|
7
7
|
import type { CodeHighlighter } from "./utils/code-highlight";
|
|
8
|
+
import type { UrlSafetyOptions } from "./utils/link-security";
|
|
8
9
|
export type AstTransform = (ast: MarkdownNode) => MarkdownNode;
|
|
9
10
|
export type MarkdownVirtualizationOptions = Pick<FlatListProps<MarkdownNode>, "initialNumToRender" | "maxToRenderPerBatch" | "windowSize" | "updateCellsBatchingPeriod" | "removeClippedSubviews">;
|
|
10
11
|
export type MarkdownPlugin = {
|
|
@@ -30,6 +31,12 @@ export type MarkdownPlugin = {
|
|
|
30
31
|
*/
|
|
31
32
|
afterParse?: AstTransform;
|
|
32
33
|
};
|
|
34
|
+
export type MarkdownErrorPhase = "parse" | "before-plugin" | "after-plugin";
|
|
35
|
+
export type MarkdownParseCompleteResult = {
|
|
36
|
+
raw: string;
|
|
37
|
+
ast: MarkdownNode;
|
|
38
|
+
text: string;
|
|
39
|
+
};
|
|
33
40
|
export type MarkdownProps = {
|
|
34
41
|
/**
|
|
35
42
|
* The markdown string to parse and render.
|
|
@@ -71,18 +78,14 @@ export type MarkdownProps = {
|
|
|
71
78
|
/**
|
|
72
79
|
* Callback fired when parsing completes.
|
|
73
80
|
*/
|
|
74
|
-
onParseComplete?: (result:
|
|
75
|
-
raw: string;
|
|
76
|
-
ast: MarkdownNode;
|
|
77
|
-
text: string;
|
|
78
|
-
}) => void;
|
|
81
|
+
onParseComplete?: (result: MarkdownParseCompleteResult) => void;
|
|
79
82
|
/**
|
|
80
83
|
* Called when a parse error or plugin error occurs.
|
|
81
84
|
* @param error - The thrown error.
|
|
82
85
|
* @param phase - Where the error occurred.
|
|
83
86
|
* @param pluginName - The plugin name, if applicable.
|
|
84
87
|
*/
|
|
85
|
-
onError?: (error: Error, phase:
|
|
88
|
+
onError?: (error: Error, phase: MarkdownErrorPhase, pluginName?: string) => void;
|
|
86
89
|
/**
|
|
87
90
|
* Custom renderers for specific markdown node types.
|
|
88
91
|
* Each renderer receives { node, children, Renderer } plus type-specific props.
|
|
@@ -138,10 +141,8 @@ export type MarkdownProps = {
|
|
|
138
141
|
/**
|
|
139
142
|
* Optional configuration for the table renderer.
|
|
140
143
|
*/
|
|
141
|
-
tableOptions?:
|
|
142
|
-
|
|
143
|
-
measurementStabilizeMs?: number;
|
|
144
|
-
};
|
|
144
|
+
tableOptions?: TableOptions;
|
|
145
|
+
imageOptions?: UrlSafetyOptions;
|
|
145
146
|
/**
|
|
146
147
|
* Enable built-in syntax highlighting for code blocks.
|
|
147
148
|
* Pass `true` to use the built-in tokenizer, or a custom highlighter function.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../../../src/markdown.tsx"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,EAAE,EAIR,MAAM,OAAO,CAAC;AACf,OAAO,EAOL,KAAK,aAAa,EAClB,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AACtB,OAAO,EAKL,KAAK,YAAY,EAClB,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,
|
|
1
|
+
{"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../../../src/markdown.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"heading.d.ts","sourceRoot":"","sources":["../../../../src/renderers/heading.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,EAA8B,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAK1E,KAAK,YAAY,GAAG;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,SAAS,CAAC;IACpB,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB,CAAC;AAYF,eAAO,MAAM,OAAO,EAAE,EAAE,CAAC,YAAY,
|
|
1
|
+
{"version":3,"file":"heading.d.ts","sourceRoot":"","sources":["../../../../src/renderers/heading.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,EAA8B,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAK1E,KAAK,YAAY,GAAG;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,SAAS,CAAC;IACpB,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB,CAAC;AAYF,eAAO,MAAM,OAAO,EAAE,EAAE,CAAC,YAAY,CAmBpC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"image.d.ts","sourceRoot":"","sources":["../../../../src/renderers/image.tsx"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,EAAE,EACP,KAAK,aAAa,EACnB,MAAM,OAAO,CAAC;AACf,OAAO,EAML,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"image.d.ts","sourceRoot":"","sources":["../../../../src/renderers/image.tsx"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,EAAE,EACP,KAAK,aAAa,EACnB,MAAM,OAAO,CAAC;AACf,OAAO,EAML,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAItB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAkB5D,KAAK,UAAU,GAAG;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;IAC5C,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,KAAK,EAAE,EAAE,CAAC,UAAU,CA6MhC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"link.d.ts","sourceRoot":"","sources":["../../../../src/renderers/link.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAW,KAAK,EAAE,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,EAKL,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAOtB,KAAK,SAAS,GAAG;IACf,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,SAAS,CAAC;IACpB,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,EAAE,CAAC,SAAS,
|
|
1
|
+
{"version":3,"file":"link.d.ts","sourceRoot":"","sources":["../../../../src/renderers/link.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAW,KAAK,EAAE,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,EAKL,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAOtB,KAAK,SAAS,GAAG;IACf,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,SAAS,CAAC;IACpB,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,EAAE,CAAC,SAAS,CAgD9B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../../src/renderers/list.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,EAAoC,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAKhF,KAAK,SAAS,GAAG;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,SAAS,CAAC;IACpB,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB,CAAC;AAGF,eAAO,MAAM,IAAI,EAAE,EAAE,CAAC,SAAS,CAQ9B,CAAC;AAEF,KAAK,aAAa,GAAG;IACnB,QAAQ,EAAE,SAAS,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,EAAE,CAAC,aAAa,CAoBtC,CAAC;AAEF,KAAK,iBAAiB,GAAG;IACvB,QAAQ,EAAE,SAAS,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,EAAE,CAAC,iBAAiB,
|
|
1
|
+
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../../src/renderers/list.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,EAAoC,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AAKhF,KAAK,SAAS,GAAG;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,SAAS,CAAC;IACpB,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB,CAAC;AAGF,eAAO,MAAM,IAAI,EAAE,EAAE,CAAC,SAAS,CAQ9B,CAAC;AAEF,KAAK,aAAa,GAAG;IACnB,QAAQ,EAAE,SAAS,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,QAAQ,EAAE,EAAE,CAAC,aAAa,CAoBtC,CAAC;AAEF,KAAK,iBAAiB,GAAG;IACvB,QAAQ,EAAE,SAAS,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,EAAE,CAAC,iBAAiB,CAyB9C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"math.d.ts","sourceRoot":"","sources":["../../../../src/renderers/math.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAA4B,MAAM,OAAO,CAAC;AAE1D,OAAO,EAQL,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"math.d.ts","sourceRoot":"","sources":["../../../../src/renderers/math.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAA4B,MAAM,OAAO,CAAC;AAE1D,OAAO,EAQL,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AA0BtB,KAAK,eAAe,GAAG;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB,CAAC;AA6MF,eAAO,MAAM,UAAU,EAAE,EAAE,CAAC,eAAe,CA6B1C,CAAC;AAEF,KAAK,cAAc,GAAG;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,EAAE,CAAC,cAAc,CAuCxC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-markdown-stream.d.ts","sourceRoot":"","sources":["../../../src/use-markdown-stream.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAO1D,MAAM,MAAM,eAAe,GAAG,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEvE,wBAAgB,kBAAkB;;;;;;
|
|
1
|
+
{"version":3,"file":"use-markdown-stream.d.ts","sourceRoot":"","sources":["../../../src/use-markdown-stream.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAO1D,MAAM,MAAM,eAAe,GAAG,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEvE,wBAAgB,kBAAkB;;;;;;6BAiCY,MAAM;kBAMjB,MAAM;oBAIJ,MAAM,MAAM,MAAM,QAAQ,MAAM;EAcpE;AAED,wBAAgB,SAAS,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;;;0BAgBzC,MAAM;;;;;;6BA1CoB,MAAM;kBAMjB,MAAM;oBAIJ,MAAM,MAAM,MAAM,QAAQ,MAAM;EAqDpE"}
|
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
export type UrlSafetyOptions = {
|
|
2
|
+
allowedProtocols?: readonly string[];
|
|
3
|
+
allowedHosts?: readonly string[];
|
|
4
|
+
};
|
|
1
5
|
export declare const normalizeLinkHref: (href: string) => string | null;
|
|
2
6
|
export declare const getAllowedExternalHref: (href: string) => string | null;
|
|
7
|
+
export declare const getAllowedImageHref: (href: string, options?: UrlSafetyOptions) => string | null;
|
|
3
8
|
//# sourceMappingURL=link-security.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"link-security.d.ts","sourceRoot":"","sources":["../../../../src/utils/link-security.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"link-security.d.ts","sourceRoot":"","sources":["../../../../src/utils/link-security.ts"],"names":[],"mappings":"AAWA,MAAM,MAAM,gBAAgB,GAAG;IAC7B,gBAAgB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAClC,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,MAAM,MAAM,KAAG,MAAM,GAAG,IAIzD,CAAC;AA0BF,eAAO,MAAM,sBAAsB,GAAI,MAAM,MAAM,KAAG,MAAM,GAAG,IAU9D,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAC9B,MAAM,MAAM,EACZ,UAAU,gBAAgB,KACzB,MAAM,GAAG,IAwBX,CAAC"}
|
|
@@ -2,6 +2,7 @@ import { type ReactNode, type ComponentType } from "react";
|
|
|
2
2
|
import type { MarkdownNode } from "./headless";
|
|
3
3
|
import { type MarkdownTheme, type NodeStyleOverrides, type StylingStrategy } from "./theme";
|
|
4
4
|
import type { CodeHighlighter } from "./utils/code-highlight";
|
|
5
|
+
import type { UrlSafetyOptions } from "./utils/link-security";
|
|
5
6
|
export type NodeRendererProps = {
|
|
6
7
|
node: MarkdownNode;
|
|
7
8
|
depth: number;
|
|
@@ -51,10 +52,48 @@ export type ListRendererProps = {
|
|
|
51
52
|
export type TaskListItemRendererProps = {
|
|
52
53
|
checked: boolean;
|
|
53
54
|
} & BaseCustomRendererProps;
|
|
54
|
-
export type
|
|
55
|
+
export type MathRendererProps = {
|
|
56
|
+
content: string;
|
|
57
|
+
} & BaseCustomRendererProps;
|
|
58
|
+
export type CustomRendererProps = EnhancedRendererProps;
|
|
55
59
|
export type LinkPressHandler = (href: string) => void | boolean | Promise<void | boolean>;
|
|
56
|
-
export type CustomRenderer = (props:
|
|
57
|
-
export type
|
|
60
|
+
export type CustomRenderer<Props extends EnhancedRendererProps = EnhancedRendererProps> = (props: Props) => ReactNode | undefined;
|
|
61
|
+
export type CustomRendererPropsByNode = {
|
|
62
|
+
document: CustomRendererProps;
|
|
63
|
+
heading: HeadingRendererProps;
|
|
64
|
+
paragraph: CustomRendererProps;
|
|
65
|
+
text: CustomRendererProps;
|
|
66
|
+
bold: CustomRendererProps;
|
|
67
|
+
italic: CustomRendererProps;
|
|
68
|
+
strikethrough: CustomRendererProps;
|
|
69
|
+
link: LinkRendererProps;
|
|
70
|
+
image: ImageRendererProps;
|
|
71
|
+
code_inline: InlineCodeRendererProps;
|
|
72
|
+
code_block: CodeBlockRendererProps;
|
|
73
|
+
blockquote: CustomRendererProps;
|
|
74
|
+
horizontal_rule: CustomRendererProps;
|
|
75
|
+
line_break: CustomRendererProps;
|
|
76
|
+
soft_break: CustomRendererProps;
|
|
77
|
+
table: CustomRendererProps;
|
|
78
|
+
table_head: CustomRendererProps;
|
|
79
|
+
table_body: CustomRendererProps;
|
|
80
|
+
table_row: CustomRendererProps;
|
|
81
|
+
table_cell: CustomRendererProps;
|
|
82
|
+
list: ListRendererProps;
|
|
83
|
+
list_item: CustomRendererProps;
|
|
84
|
+
task_list_item: TaskListItemRendererProps;
|
|
85
|
+
math_inline: MathRendererProps;
|
|
86
|
+
math_block: MathRendererProps;
|
|
87
|
+
html_block: CustomRendererProps;
|
|
88
|
+
html_inline: CustomRendererProps;
|
|
89
|
+
};
|
|
90
|
+
export type CustomRenderers = Partial<{
|
|
91
|
+
[Type in MarkdownNode["type"]]: CustomRenderer<CustomRendererPropsByNode[Type]>;
|
|
92
|
+
}>;
|
|
93
|
+
export type TableOptions = {
|
|
94
|
+
minColumnWidth?: number;
|
|
95
|
+
measurementStabilizeMs?: number;
|
|
96
|
+
};
|
|
58
97
|
export type MarkdownContextValue = {
|
|
59
98
|
renderers: CustomRenderers;
|
|
60
99
|
theme: MarkdownTheme;
|
|
@@ -62,10 +101,8 @@ export type MarkdownContextValue = {
|
|
|
62
101
|
stylingStrategy: StylingStrategy;
|
|
63
102
|
onLinkPress?: LinkPressHandler;
|
|
64
103
|
highlightCode?: boolean | CodeHighlighter;
|
|
65
|
-
tableOptions?:
|
|
66
|
-
|
|
67
|
-
measurementStabilizeMs?: number;
|
|
68
|
-
};
|
|
104
|
+
tableOptions?: TableOptions;
|
|
105
|
+
imageOptions?: UrlSafetyOptions;
|
|
69
106
|
};
|
|
70
107
|
export declare const MarkdownContext: import("react").Context<MarkdownContextValue>;
|
|
71
108
|
export declare const useMarkdownContext: () => MarkdownContextValue;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MarkdownContext.d.ts","sourceRoot":"","sources":["../../../src/MarkdownContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,SAAS,EACd,KAAK,aAAa,EACnB,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAEL,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACrB,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,YAAY,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,IAAI,EAAE,YAAY,CAAC;IACnB,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,EAAE,aAAa,CAAC,iBAAiB,CAAC,CAAC;CAC5C,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GAAG,uBAAuB,CAAC;AAE5B,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;CAC9B,GAAG,uBAAuB,CAAC;AAE5B,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GAAG,uBAAuB,CAAC;AAE5B,MAAM,MAAM,kBAAkB,GAAG;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GAAG,uBAAuB,CAAC;AAE5B,MAAM,MAAM,sBAAsB,GAAG;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,uBAAuB,CAAC;AAE5B,MAAM,MAAM,uBAAuB,GAAG;IACpC,OAAO,EAAE,MAAM,CAAC;CACjB,GAAG,uBAAuB,CAAC;AAE5B,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GAAG,uBAAuB,CAAC;AAE5B,MAAM,MAAM,yBAAyB,GAAG;IACtC,OAAO,EAAE,OAAO,CAAC;CAClB,GAAG,uBAAuB,CAAC;AAE5B,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"MarkdownContext.d.ts","sourceRoot":"","sources":["../../../src/MarkdownContext.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +1,19 @@
|
|
|
1
1
|
import type { MarkdownParser, ParserOptions } from "./Markdown.nitro";
|
|
2
2
|
export type { ParserOptions } from "./Markdown.nitro";
|
|
3
|
+
export type MarkdownNodeType = "document" | "heading" | "paragraph" | "text" | "bold" | "italic" | "strikethrough" | "link" | "image" | "code_inline" | "code_block" | "blockquote" | "horizontal_rule" | "line_break" | "soft_break" | "table" | "table_head" | "table_body" | "table_row" | "table_cell" | "list" | "list_item" | "task_list_item" | "math_inline" | "math_block" | "html_block" | "html_inline";
|
|
4
|
+
export type HeadingLevel = 1 | 2 | 3 | 4 | 5 | 6;
|
|
5
|
+
export type TableCellAlign = "left" | "center" | "right";
|
|
3
6
|
/**
|
|
4
7
|
* Represents a node in the Markdown AST (Abstract Syntax Tree).
|
|
5
8
|
* Each node has a type and optional properties depending on the node type.
|
|
6
9
|
*/
|
|
7
10
|
export type MarkdownNode = {
|
|
8
11
|
/** The type of markdown element this node represents. Used to decide how to render the node. */
|
|
9
|
-
type:
|
|
12
|
+
type: MarkdownNodeType;
|
|
10
13
|
/** Text content for text, code, and similar nodes. */
|
|
11
14
|
content?: string;
|
|
12
15
|
/** Heading level (1-6) for heading nodes. */
|
|
13
|
-
level?:
|
|
16
|
+
level?: HeadingLevel;
|
|
14
17
|
/** URL for link and image nodes. */
|
|
15
18
|
href?: string;
|
|
16
19
|
/** Title attribute for link and image nodes. */
|
|
@@ -28,7 +31,7 @@ export type MarkdownNode = {
|
|
|
28
31
|
/** Whether a table cell is part of the header row. */
|
|
29
32
|
isHeader?: boolean;
|
|
30
33
|
/** Text alignment for table cells: 'left', 'center', or 'right'. */
|
|
31
|
-
align?:
|
|
34
|
+
align?: TableCellAlign;
|
|
32
35
|
/** Source start offset in original markdown text (when provided by native parser). */
|
|
33
36
|
beg?: number;
|
|
34
37
|
/** Source end offset in original markdown text (when provided by native parser). */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"headless.d.ts","sourceRoot":"","sources":["../../../src/headless.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtE,YAAY,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD
|
|
1
|
+
{"version":3,"file":"headless.d.ts","sourceRoot":"","sources":["../../../src/headless.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtE,YAAY,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD,MAAM,MAAM,gBAAgB,GACxB,UAAU,GACV,SAAS,GACT,WAAW,GACX,MAAM,GACN,MAAM,GACN,QAAQ,GACR,eAAe,GACf,MAAM,GACN,OAAO,GACP,aAAa,GACb,YAAY,GACZ,YAAY,GACZ,iBAAiB,GACjB,YAAY,GACZ,YAAY,GACZ,OAAO,GACP,YAAY,GACZ,YAAY,GACZ,WAAW,GACX,YAAY,GACZ,MAAM,GACN,WAAW,GACX,gBAAgB,GAChB,aAAa,GACb,YAAY,GACZ,YAAY,GACZ,aAAa,CAAC;AAElB,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACjD,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEzD;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,gGAAgG;IAChG,IAAI,EAAE,gBAAgB,CAAC;IACvB,sDAAsD;IACtD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,6CAA6C;IAC7C,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,oCAAoC;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gDAAgD;IAChD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gCAAgC;IAChC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yDAAyD;IACzD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,6CAA6C;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qDAAqD;IACrD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,sDAAsD;IACtD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oEAAoE;IACpE,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,sFAAsF;IACtF,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,oFAAoF;IACpF,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,uFAAuF;IACvF,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC;CAC3B,CAAC;AAgBF,QAAA,IAAI,oBAAoB,EAAE,cAAc,GAAG,IAAW,CAAC;AASvD,OAAO,EAAE,oBAAoB,EAAE,CAAC;AAEhC;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CAAC;AAC1D;;;;;GAKG;AACH,wBAAgB,aAAa,CAC3B,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,aAAa,GACrB,YAAY,CAAC;AA6BhB;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,aAAa,GACrB,YAAY,CAoBd;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAarD;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,aAAa,GACrB,MAAM,CAaR;AAED,YAAY,EAAE,cAAc,EAAE,CAAC;AAE/B;;;;;GAKG;AACH,eAAO,MAAM,cAAc,GAAI,MAAM,YAAY,KAAG,MAGnD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB,GAAI,MAAM,YAAY,KAAG,MAoDrD,CAAC;AAEF;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,YAAY,GAAG,YAAY,CAMnE"}
|