react-native-nitro-markdown 0.4.2 → 0.5.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 +605 -318
- package/android/src/main/java/com/margelo/nitro/com/nitromarkdown/HybridMarkdownSession.kt +27 -8
- package/cpp/bindings/HybridMarkdownParser.cpp +216 -66
- package/cpp/bindings/HybridMarkdownParser.hpp +2 -0
- package/ios/HybridMarkdownSession.swift +33 -7
- package/lib/commonjs/MarkdownContext.js +2 -1
- package/lib/commonjs/MarkdownContext.js.map +1 -1
- package/lib/commonjs/headless.js +41 -5
- package/lib/commonjs/headless.js.map +1 -1
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/markdown-stream.js +109 -13
- package/lib/commonjs/markdown-stream.js.map +1 -1
- package/lib/commonjs/markdown.js +215 -44
- package/lib/commonjs/markdown.js.map +1 -1
- package/lib/commonjs/renderers/code.js +4 -3
- package/lib/commonjs/renderers/code.js.map +1 -1
- package/lib/commonjs/renderers/heading.js +1 -1
- package/lib/commonjs/renderers/heading.js.map +1 -1
- package/lib/commonjs/renderers/image.js +7 -5
- package/lib/commonjs/renderers/image.js.map +1 -1
- package/lib/commonjs/renderers/link.js +15 -3
- package/lib/commonjs/renderers/link.js.map +1 -1
- package/lib/commonjs/renderers/list.js +2 -2
- package/lib/commonjs/renderers/list.js.map +1 -1
- package/lib/commonjs/renderers/table.js +126 -21
- package/lib/commonjs/renderers/table.js.map +1 -1
- package/lib/commonjs/use-markdown-stream.js +16 -14
- package/lib/commonjs/use-markdown-stream.js.map +1 -1
- package/lib/commonjs/utils/incremental-ast.js +153 -0
- package/lib/commonjs/utils/incremental-ast.js.map +1 -0
- package/lib/commonjs/utils/link-security.js +21 -0
- package/lib/commonjs/utils/link-security.js.map +1 -0
- package/lib/commonjs/utils/stream-timeline.js +62 -0
- package/lib/commonjs/utils/stream-timeline.js.map +1 -0
- package/lib/module/MarkdownContext.js +2 -1
- package/lib/module/MarkdownContext.js.map +1 -1
- package/lib/module/headless.js +37 -4
- package/lib/module/headless.js.map +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/markdown-stream.js +110 -14
- package/lib/module/markdown-stream.js.map +1 -1
- package/lib/module/markdown.js +217 -46
- package/lib/module/markdown.js.map +1 -1
- package/lib/module/renderers/blockquote.js.map +1 -1
- package/lib/module/renderers/code.js +4 -3
- package/lib/module/renderers/code.js.map +1 -1
- package/lib/module/renderers/heading.js +1 -1
- package/lib/module/renderers/heading.js.map +1 -1
- package/lib/module/renderers/image.js +7 -5
- package/lib/module/renderers/image.js.map +1 -1
- package/lib/module/renderers/link.js +15 -3
- package/lib/module/renderers/link.js.map +1 -1
- package/lib/module/renderers/list.js +2 -2
- package/lib/module/renderers/list.js.map +1 -1
- package/lib/module/renderers/paragraph.js.map +1 -1
- package/lib/module/renderers/table.js +127 -22
- package/lib/module/renderers/table.js.map +1 -1
- package/lib/module/use-markdown-stream.js +16 -14
- package/lib/module/use-markdown-stream.js.map +1 -1
- package/lib/module/utils/incremental-ast.js +147 -0
- package/lib/module/utils/incremental-ast.js.map +1 -0
- package/lib/module/utils/link-security.js +15 -0
- package/lib/module/utils/link-security.js.map +1 -0
- package/lib/module/utils/stream-timeline.js +56 -0
- package/lib/module/utils/stream-timeline.js.map +1 -0
- package/lib/typescript/commonjs/Markdown.nitro.d.ts +5 -3
- package/lib/typescript/commonjs/Markdown.nitro.d.ts.map +1 -1
- package/lib/typescript/commonjs/MarkdownContext.d.ts +26 -25
- package/lib/typescript/commonjs/MarkdownContext.d.ts.map +1 -1
- package/lib/typescript/commonjs/headless.d.ts +15 -2
- package/lib/typescript/commonjs/headless.d.ts.map +1 -1
- package/lib/typescript/commonjs/index.d.ts +3 -1
- package/lib/typescript/commonjs/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/markdown-stream.d.ts +7 -2
- package/lib/typescript/commonjs/markdown-stream.d.ts.map +1 -1
- package/lib/typescript/commonjs/markdown.d.ts +62 -5
- package/lib/typescript/commonjs/markdown.d.ts.map +1 -1
- package/lib/typescript/commonjs/renderers/blockquote.d.ts +3 -3
- package/lib/typescript/commonjs/renderers/blockquote.d.ts.map +1 -1
- package/lib/typescript/commonjs/renderers/code.d.ts +5 -5
- package/lib/typescript/commonjs/renderers/code.d.ts.map +1 -1
- package/lib/typescript/commonjs/renderers/heading.d.ts +3 -3
- package/lib/typescript/commonjs/renderers/heading.d.ts.map +1 -1
- package/lib/typescript/commonjs/renderers/horizontal-rule.d.ts +2 -2
- package/lib/typescript/commonjs/renderers/horizontal-rule.d.ts.map +1 -1
- package/lib/typescript/commonjs/renderers/image.d.ts +2 -2
- package/lib/typescript/commonjs/renderers/image.d.ts.map +1 -1
- package/lib/typescript/commonjs/renderers/link.d.ts +3 -3
- package/lib/typescript/commonjs/renderers/link.d.ts.map +1 -1
- package/lib/typescript/commonjs/renderers/list.d.ts +7 -7
- package/lib/typescript/commonjs/renderers/list.d.ts.map +1 -1
- package/lib/typescript/commonjs/renderers/math.d.ts +4 -4
- package/lib/typescript/commonjs/renderers/math.d.ts.map +1 -1
- package/lib/typescript/commonjs/renderers/paragraph.d.ts +3 -3
- package/lib/typescript/commonjs/renderers/paragraph.d.ts.map +1 -1
- package/lib/typescript/commonjs/renderers/table.d.ts +3 -3
- package/lib/typescript/commonjs/renderers/table.d.ts.map +1 -1
- package/lib/typescript/commonjs/specs/MarkdownSession.nitro.d.ts +5 -2
- package/lib/typescript/commonjs/specs/MarkdownSession.nitro.d.ts.map +1 -1
- package/lib/typescript/commonjs/theme.d.ts +2 -2
- package/lib/typescript/commonjs/theme.d.ts.map +1 -1
- package/lib/typescript/commonjs/use-markdown-stream.d.ts.map +1 -1
- package/lib/typescript/commonjs/utils/incremental-ast.d.ts +12 -0
- package/lib/typescript/commonjs/utils/incremental-ast.d.ts.map +1 -0
- package/lib/typescript/commonjs/utils/link-security.d.ts +3 -0
- package/lib/typescript/commonjs/utils/link-security.d.ts.map +1 -0
- package/lib/typescript/commonjs/utils/stream-timeline.d.ts +11 -0
- package/lib/typescript/commonjs/utils/stream-timeline.d.ts.map +1 -0
- package/lib/typescript/module/Markdown.nitro.d.ts +5 -3
- package/lib/typescript/module/Markdown.nitro.d.ts.map +1 -1
- package/lib/typescript/module/MarkdownContext.d.ts +26 -25
- package/lib/typescript/module/MarkdownContext.d.ts.map +1 -1
- package/lib/typescript/module/headless.d.ts +15 -2
- package/lib/typescript/module/headless.d.ts.map +1 -1
- package/lib/typescript/module/index.d.ts +3 -1
- package/lib/typescript/module/index.d.ts.map +1 -1
- package/lib/typescript/module/markdown-stream.d.ts +7 -2
- package/lib/typescript/module/markdown-stream.d.ts.map +1 -1
- package/lib/typescript/module/markdown.d.ts +62 -5
- package/lib/typescript/module/markdown.d.ts.map +1 -1
- package/lib/typescript/module/renderers/blockquote.d.ts +3 -3
- package/lib/typescript/module/renderers/blockquote.d.ts.map +1 -1
- package/lib/typescript/module/renderers/code.d.ts +5 -5
- package/lib/typescript/module/renderers/code.d.ts.map +1 -1
- package/lib/typescript/module/renderers/heading.d.ts +3 -3
- package/lib/typescript/module/renderers/heading.d.ts.map +1 -1
- package/lib/typescript/module/renderers/horizontal-rule.d.ts +2 -2
- package/lib/typescript/module/renderers/horizontal-rule.d.ts.map +1 -1
- package/lib/typescript/module/renderers/image.d.ts +2 -2
- package/lib/typescript/module/renderers/image.d.ts.map +1 -1
- package/lib/typescript/module/renderers/link.d.ts +3 -3
- package/lib/typescript/module/renderers/link.d.ts.map +1 -1
- package/lib/typescript/module/renderers/list.d.ts +7 -7
- package/lib/typescript/module/renderers/list.d.ts.map +1 -1
- package/lib/typescript/module/renderers/math.d.ts +4 -4
- package/lib/typescript/module/renderers/math.d.ts.map +1 -1
- package/lib/typescript/module/renderers/paragraph.d.ts +3 -3
- package/lib/typescript/module/renderers/paragraph.d.ts.map +1 -1
- package/lib/typescript/module/renderers/table.d.ts +3 -3
- package/lib/typescript/module/renderers/table.d.ts.map +1 -1
- package/lib/typescript/module/specs/MarkdownSession.nitro.d.ts +5 -2
- package/lib/typescript/module/specs/MarkdownSession.nitro.d.ts.map +1 -1
- package/lib/typescript/module/theme.d.ts +2 -2
- package/lib/typescript/module/theme.d.ts.map +1 -1
- package/lib/typescript/module/use-markdown-stream.d.ts.map +1 -1
- package/lib/typescript/module/utils/incremental-ast.d.ts +12 -0
- package/lib/typescript/module/utils/incremental-ast.d.ts.map +1 -0
- package/lib/typescript/module/utils/link-security.d.ts +3 -0
- package/lib/typescript/module/utils/link-security.d.ts.map +1 -0
- package/lib/typescript/module/utils/stream-timeline.d.ts +11 -0
- package/lib/typescript/module/utils/stream-timeline.d.ts.map +1 -0
- package/nitrogen/generated/android/NitroMarkdownOnLoad.cpp +2 -0
- package/nitrogen/generated/android/c++/JFunc_void_double_double.hpp +75 -0
- package/nitrogen/generated/android/c++/JHybridMarkdownSessionSpec.cpp +18 -6
- package/nitrogen/generated/android/c++/JHybridMarkdownSessionSpec.hpp +4 -2
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/com/nitromarkdown/Func_void_double_double.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/com/nitromarkdown/HybridMarkdownSessionSpec.kt +11 -3
- package/nitrogen/generated/ios/NitroMarkdown-Swift-Cxx-Bridge.cpp +8 -0
- package/nitrogen/generated/ios/NitroMarkdown-Swift-Cxx-Bridge.hpp +31 -0
- package/nitrogen/generated/ios/c++/HybridMarkdownSessionSpecSwift.hpp +20 -2
- package/nitrogen/generated/ios/swift/Func_void.swift +0 -1
- package/nitrogen/generated/ios/swift/Func_void_double_double.swift +46 -0
- package/nitrogen/generated/ios/swift/HybridMarkdownSessionSpec.swift +4 -3
- package/nitrogen/generated/ios/swift/HybridMarkdownSessionSpec_cxx.swift +34 -10
- package/nitrogen/generated/shared/c++/HybridMarkdownParserSpec.cpp +2 -0
- package/nitrogen/generated/shared/c++/HybridMarkdownParserSpec.hpp +2 -0
- package/nitrogen/generated/shared/c++/HybridMarkdownSessionSpec.cpp +2 -0
- package/nitrogen/generated/shared/c++/HybridMarkdownSessionSpec.hpp +4 -2
- package/package.json +7 -5
- package/src/Markdown.nitro.ts +7 -3
- package/src/MarkdownContext.ts +31 -25
- package/src/headless.ts +44 -6
- package/src/index.ts +8 -0
- package/src/markdown-stream.tsx +159 -15
- package/src/markdown.tsx +406 -50
- package/src/renderers/blockquote.tsx +4 -4
- package/src/renderers/code.tsx +16 -10
- package/src/renderers/heading.tsx +4 -4
- package/src/renderers/horizontal-rule.tsx +3 -3
- package/src/renderers/image.tsx +11 -9
- package/src/renderers/link.tsx +25 -7
- package/src/renderers/list.tsx +9 -12
- package/src/renderers/math.tsx +4 -4
- package/src/renderers/paragraph.tsx +3 -3
- package/src/renderers/table.tsx +270 -98
- package/src/specs/MarkdownSession.nitro.ts +6 -2
- package/src/theme.ts +3 -3
- package/src/use-markdown-stream.ts +22 -16
- package/src/utils/incremental-ast.ts +224 -0
- package/src/utils/link-security.ts +22 -0
- package/src/utils/stream-timeline.ts +72 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_reactNative","
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","_headless","_MarkdownContext","_jsxRuntime","CodeBlock","language","content","node","style","theme","useMarkdownContext","displayContent","getTextContent","styles","useMemo","StyleSheet","create","codeBlock","backgroundColor","colors","codeBackground","borderRadius","m","padding","spacing","l","marginVertical","borderWidth","borderColor","border","codeLanguage","color","fontSize","fontSizes","xs","fontWeight","marginBottom","s","textTransform","letterSpacing","fontFamily","fontFamilies","mono","Platform","OS","includeFontPadding","codeBlockText","select","ios","android","text","lineHeight","showLanguage","showCodeLanguage","jsxs","View","children","jsx","Text","ScrollView","horizontal","showsHorizontalScrollIndicator","bounces","exports","InlineCode","codeInline","code","paddingHorizontal","paddingVertical"],"sourceRoot":"../../../src","sources":["renderers/code.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -61,7 +61,7 @@ const Heading = ({
|
|
|
61
61
|
lineHeight: theme.fontSizes.h6 * 1.3,
|
|
62
62
|
color: theme.colors.textMuted
|
|
63
63
|
}
|
|
64
|
-
}), [theme]);
|
|
64
|
+
}), [headingWeight, theme]);
|
|
65
65
|
const headingStyles = [styles.heading, level === 1 && styles.h1, level === 2 && styles.h2, level === 3 && styles.h3, level === 4 && styles.h4, level === 5 && styles.h5, level === 6 && styles.h6];
|
|
66
66
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
67
67
|
style: [...headingStyles, style],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_reactNative","_MarkdownContext","_jsxRuntime","ANDROID_SYSTEM_FONTS","Set","Heading","level","children","style","theme","useMarkdownContext","headingWeight","Platform","OS","fontFamilies","heading","has","styles","useMemo","StyleSheet","create","color","colors","fontWeight","marginTop","spacing","xl","marginBottom","m","fontFamily","letterSpacing","includeFontPadding","h1","fontSize","fontSizes","lineHeight","borderBottomWidth","borderBottomColor","border","paddingBottom","s","h2","h3","h4","h5","h6","textMuted","headingStyles","jsx","Text","exports"],"sourceRoot":"../../../src","sources":["renderers/heading.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,gBAAA,GAAAF,OAAA;AAAwD,IAAAG,WAAA,GAAAH,OAAA;AAQxD,MAAMI,oBAAoB,GAAG,IAAIC,GAAG,CAAC,CACnC,YAAY,EACZ,mBAAmB,EACnB,kBAAkB,EAClB,sBAAsB,EACtB,iBAAiB,EACjB,OAAO,EACP,WAAW,CACZ,CAAC;AAEK,MAAMC,OAAyB,GAAGA,CAAC;EAAEC,KAAK;EAAEC,QAAQ;EAAEC;AAAM,CAAC,KAAK;EACvE,MAAM;IAAEC;EAAM,CAAC,GAAG,IAAAC,mCAAkB,EAAC,CAAC;EACtC,MAAMC,aAAa,GACjBF,KAAK,CAACE,aAAa,KAClBC,qBAAQ,CAACC,EAAE,KAAK,SAAS,IAC1BJ,KAAK,CAACK,YAAY,CAACC,OAAO,IAC1B,CAACZ,oBAAoB,CAACa,GAAG,CAACP,KAAK,CAACK,YAAY,CAACC,OAAO,CAAC,GACjD,QAAQ,GACR,KAAK,CAAC;EACZ,MAAME,MAAM,GAAG,IAAAC,cAAO,EACpB,MACEC,uBAAU,CAACC,MAAM,CAAC;IAChBL,OAAO,EAAE;MACPM,KAAK,EAAEZ,KAAK,CAACa,MAAM,CAACP,OAAO;MAC3BQ,UAAU,EAAEZ,aAAa;MACzBa,SAAS,EAAEf,KAAK,CAACgB,OAAO,CAACC,EAAE;MAC3BC,YAAY,EAAElB,KAAK,CAACgB,OAAO,CAACG,CAAC;MAC7BC,UAAU,EAAEpB,KAAK,CAACK,YAAY,CAACC,OAAO;MACtCe,aAAa,EAAE,CAAC,GAAG;MACnB,IAAIlB,qBAAQ,CAACC,EAAE,KAAK,SAAS,IAAI;QAAEkB,kBAAkB,EAAE;MAAM,CAAC;IAChE,CAAC;IACDC,EAAE,EAAE;MACFC,QAAQ,EAAExB,KAAK,CAACyB,SAAS,CAACF,EAAE;MAC5BG,UAAU,EAAE1B,KAAK,CAACyB,SAAS,CAACF,EAAE,GAAG,GAAG;MACpCI,iBAAiB,EAAE,CAAC;MACpBC,iBAAiB,EAAE5B,KAAK,CAACa,MAAM,CAACgB,MAAM;MACtCC,aAAa,EAAE9B,KAAK,CAACgB,OAAO,CAACe,CAAC;MAC9BV,aAAa,EAAE,CAAC;IAClB,CAAC;IACDW,EAAE,EAAE;MACFR,QAAQ,EAAExB,KAAK,CAACyB,SAAS,CAACO,EAAE;MAC5BN,UAAU,EAAE1B,KAAK,CAACyB,SAAS,CAACO,EAAE,GAAG,GAAG;MACpCX,aAAa,EAAE,CAAC;IAClB,CAAC;IACDY,EAAE,EAAE;MACFT,QAAQ,EAAExB,KAAK,CAACyB,SAAS,CAACQ,EAAE;MAC5BP,UAAU,EAAE1B,KAAK,CAACyB,SAAS,CAACQ,EAAE,GAAG,GAAG;MACpCZ,aAAa,EAAE,CAAC;IAClB,CAAC;IACDa,EAAE,EAAE;MACFV,QAAQ,EAAExB,KAAK,CAACyB,SAAS,CAACS,EAAE;MAC5BR,UAAU,EAAE1B,KAAK,CAACyB,SAAS,CAACS,EAAE,GAAG;IACnC,CAAC;IACDC,EAAE,EAAE;MACFX,QAAQ,EAAExB,KAAK,CAACyB,SAAS,CAACU,EAAE;MAC5BT,UAAU,EAAE1B,KAAK,CAACyB,SAAS,CAACU,EAAE,GAAG;IACnC,CAAC;IACDC,EAAE,EAAE;MACFZ,QAAQ,EAAExB,KAAK,CAACyB,SAAS,CAACW,EAAE;MAC5BV,UAAU,EAAE1B,KAAK,CAACyB,SAAS,CAACW,EAAE,GAAG,GAAG;MACpCxB,KAAK,EAAEZ,KAAK,CAACa,MAAM,CAACwB;IACtB;EACF,CAAC,CAAC,EACJ,
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","_MarkdownContext","_jsxRuntime","ANDROID_SYSTEM_FONTS","Set","Heading","level","children","style","theme","useMarkdownContext","headingWeight","Platform","OS","fontFamilies","heading","has","styles","useMemo","StyleSheet","create","color","colors","fontWeight","marginTop","spacing","xl","marginBottom","m","fontFamily","letterSpacing","includeFontPadding","h1","fontSize","fontSizes","lineHeight","borderBottomWidth","borderBottomColor","border","paddingBottom","s","h2","h3","h4","h5","h6","textMuted","headingStyles","jsx","Text","exports"],"sourceRoot":"../../../src","sources":["renderers/heading.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -166,27 +166,29 @@ const Image = ({
|
|
|
166
166
|
}
|
|
167
167
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
168
168
|
style: [styles.imageContainer, style],
|
|
169
|
-
children: [loading && !aspectRatio
|
|
169
|
+
children: [loading && !aspectRatio ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
170
170
|
style: styles.imageLoading,
|
|
171
171
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
172
172
|
style: styles.imageLoadingText,
|
|
173
173
|
children: "Loading image..."
|
|
174
174
|
})
|
|
175
|
-
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Image, {
|
|
175
|
+
}) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Image, {
|
|
176
176
|
source: {
|
|
177
177
|
uri: url
|
|
178
178
|
},
|
|
179
179
|
style: [styles.image, loading && !aspectRatio && styles.imageHidden],
|
|
180
180
|
resizeMode: "contain",
|
|
181
|
-
onLoad: () =>
|
|
181
|
+
onLoad: () => {
|
|
182
|
+
setLoading(false);
|
|
183
|
+
},
|
|
182
184
|
onError: () => {
|
|
183
185
|
setLoading(false);
|
|
184
186
|
setError(true);
|
|
185
187
|
}
|
|
186
|
-
}), title && !loading
|
|
188
|
+
}), title && !loading ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
187
189
|
style: styles.imageCaption,
|
|
188
190
|
children: title
|
|
189
|
-
})]
|
|
191
|
+
}) : null]
|
|
190
192
|
});
|
|
191
193
|
};
|
|
192
194
|
exports.Image = Image;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_reactNative","_headless","_MarkdownContext","_jsxRuntime","renderInlineContent","node","Renderer","type","children","jsx","Fragment","map","child","idx","depth","inListItem","Image","url","title","alt","style","loading","setLoading","useState","error","setError","aspectRatio","setAspectRatio","undefined","theme","useMarkdownContext","styles","useMemo","StyleSheet","create","imageContainer","marginVertical","spacing","m","alignItems","image","width","minHeight","borderRadius","backgroundColor","colors","surface","imageHidden","opacity","position","imageLoading","height","justifyContent","imageLoadingText","color","textMuted","fontSize","fontSizes","s","fontFamily","fontFamilies","regular","Platform","OS","includeFontPadding","imageError","padding","l","imageErrorText","imageCaption","xs","marginTop","fontStyle","textAlign","useLayoutEffect","picsumMatch","match","w","parseInt","h","isNaN","RNImage","getSize","altContent","includes","ast","parseMarkdownWithOptions","math","gfm","paragraph","inlineContent","Text","View","jsxs","flexDirection","flexWrap","source","uri","resizeMode","onLoad","onError","exports"],"sourceRoot":"../../../src","sources":["renderers/image.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","_headless","_MarkdownContext","_jsxRuntime","renderInlineContent","node","Renderer","type","children","jsx","Fragment","map","child","idx","depth","inListItem","Image","url","title","alt","style","loading","setLoading","useState","error","setError","aspectRatio","setAspectRatio","undefined","theme","useMarkdownContext","styles","useMemo","StyleSheet","create","imageContainer","marginVertical","spacing","m","alignItems","image","width","minHeight","borderRadius","backgroundColor","colors","surface","imageHidden","opacity","position","imageLoading","height","justifyContent","imageLoadingText","color","textMuted","fontSize","fontSizes","s","fontFamily","fontFamilies","regular","Platform","OS","includeFontPadding","imageError","padding","l","imageErrorText","imageCaption","xs","marginTop","fontStyle","textAlign","useLayoutEffect","picsumMatch","match","w","parseInt","h","isNaN","RNImage","getSize","altContent","includes","ast","parseMarkdownWithOptions","math","gfm","paragraph","inlineContent","Text","View","jsxs","flexDirection","flexWrap","source","uri","resizeMode","onLoad","onError","exports"],"sourceRoot":"../../../src","sources":["renderers/image.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -7,6 +7,7 @@ exports.Link = void 0;
|
|
|
7
7
|
var _react = require("react");
|
|
8
8
|
var _reactNative = require("react-native");
|
|
9
9
|
var _MarkdownContext = require("../MarkdownContext.js");
|
|
10
|
+
var _linkSecurity = require("../utils/link-security.js");
|
|
10
11
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
11
12
|
const Link = ({
|
|
12
13
|
href,
|
|
@@ -14,7 +15,8 @@ const Link = ({
|
|
|
14
15
|
style
|
|
15
16
|
}) => {
|
|
16
17
|
const {
|
|
17
|
-
theme
|
|
18
|
+
theme,
|
|
19
|
+
onLinkPress
|
|
18
20
|
} = (0, _MarkdownContext.useMarkdownContext)();
|
|
19
21
|
const styles = (0, _react.useMemo)(() => _reactNative.StyleSheet.create({
|
|
20
22
|
link: {
|
|
@@ -27,8 +29,18 @@ const Link = ({
|
|
|
27
29
|
})
|
|
28
30
|
}
|
|
29
31
|
}), [theme]);
|
|
30
|
-
const handlePress = () => {
|
|
31
|
-
|
|
32
|
+
const handlePress = async () => {
|
|
33
|
+
const normalizedHref = (0, _linkSecurity.normalizeLinkHref)(href);
|
|
34
|
+
if (!normalizedHref) return;
|
|
35
|
+
try {
|
|
36
|
+
const shouldOpen = (await onLinkPress?.(normalizedHref)) !== false;
|
|
37
|
+
if (!shouldOpen) return;
|
|
38
|
+
const allowedExternalHref = (0, _linkSecurity.getAllowedExternalHref)(normalizedHref);
|
|
39
|
+
if (!allowedExternalHref) return;
|
|
40
|
+
const canOpen = await _reactNative.Linking.canOpenURL(allowedExternalHref);
|
|
41
|
+
if (!canOpen) return;
|
|
42
|
+
await _reactNative.Linking.openURL(allowedExternalHref);
|
|
43
|
+
} catch {}
|
|
32
44
|
};
|
|
33
45
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
34
46
|
style: [styles.link, style],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_reactNative","_MarkdownContext","_jsxRuntime","Link","href","children","style","theme","useMarkdownContext","styles","useMemo","StyleSheet","create","link","color","colors","textDecorationLine","textDecorationColor","fontFamily","fontFamilies","regular","Platform","OS","includeFontPadding","handlePress","Linking","openURL","jsx","Text","onPress","exports"],"sourceRoot":"../../../src","sources":["renderers/link.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAOA,IAAAE,gBAAA,GAAAF,OAAA;
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","_MarkdownContext","_linkSecurity","_jsxRuntime","Link","href","children","style","theme","onLinkPress","useMarkdownContext","styles","useMemo","StyleSheet","create","link","color","colors","textDecorationLine","textDecorationColor","fontFamily","fontFamilies","regular","Platform","OS","includeFontPadding","handlePress","normalizedHref","normalizeLinkHref","shouldOpen","allowedExternalHref","getAllowedExternalHref","canOpen","Linking","canOpenURL","openURL","jsx","Text","onPress","exports"],"sourceRoot":"../../../src","sources":["renderers/link.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAOA,IAAAE,gBAAA,GAAAF,OAAA;AACA,IAAAG,aAAA,GAAAH,OAAA;AAGgC,IAAAI,WAAA,GAAAJ,OAAA;AAQzB,MAAMK,IAAmB,GAAGA,CAAC;EAAEC,IAAI;EAAEC,QAAQ;EAAEC;AAAM,CAAC,KAAK;EAChE,MAAM;IAAEC,KAAK;IAAEC;EAAY,CAAC,GAAG,IAAAC,mCAAkB,EAAC,CAAC;EACnD,MAAMC,MAAM,GAAG,IAAAC,cAAO,EACpB,MACEC,uBAAU,CAACC,MAAM,CAAC;IAChBC,IAAI,EAAE;MACJC,KAAK,EAAER,KAAK,CAACS,MAAM,CAACF,IAAI;MACxBG,kBAAkB,EAAE,WAAW;MAC/BC,mBAAmB,EAAEX,KAAK,CAACS,MAAM,CAACF,IAAI;MACtCK,UAAU,EAAEZ,KAAK,CAACa,YAAY,CAACC,OAAO;MACtC,IAAIC,qBAAQ,CAACC,EAAE,KAAK,SAAS,IAAI;QAAEC,kBAAkB,EAAE;MAAM,CAAC;IAChE;EACF,CAAC,CAAC,EACJ,CAACjB,KAAK,CACR,CAAC;EAED,MAAMkB,WAAW,GAAG,MAAAA,CAAA,KAAY;IAC9B,MAAMC,cAAc,GAAG,IAAAC,+BAAiB,EAACvB,IAAI,CAAC;IAC9C,IAAI,CAACsB,cAAc,EAAE;IAErB,IAAI;MACF,MAAME,UAAU,GAAG,CAAC,MAAMpB,WAAW,GAAGkB,cAAc,CAAC,MAAM,KAAK;MAClE,IAAI,CAACE,UAAU,EAAE;MAEjB,MAAMC,mBAAmB,GAAG,IAAAC,oCAAsB,EAACJ,cAAc,CAAC;MAClE,IAAI,CAACG,mBAAmB,EAAE;MAE1B,MAAME,OAAO,GAAG,MAAMC,oBAAO,CAACC,UAAU,CAACJ,mBAAmB,CAAC;MAC7D,IAAI,CAACE,OAAO,EAAE;MAEd,MAAMC,oBAAO,CAACE,OAAO,CAACL,mBAAmB,CAAC;IAC5C,CAAC,CAAC,MAAM,CAAC;EACX,CAAC;EAED,oBACE,IAAA3B,WAAA,CAAAiC,GAAA,EAACpC,YAAA,CAAAqC,IAAI;IAAC9B,KAAK,EAAE,CAACI,MAAM,CAACI,IAAI,EAAER,KAAK,CAAE;IAAC+B,OAAO,EAAEZ,WAAY;IAAApB,QAAA,EACrDA;EAAQ,CACL,CAAC;AAEX,CAAC;AAACiC,OAAA,CAAAnC,IAAA,GAAAA,IAAA","ignoreList":[]}
|
|
@@ -124,10 +124,10 @@ const TaskListItem = ({
|
|
|
124
124
|
style: [styles.taskListItem, style],
|
|
125
125
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
126
126
|
style: [styles.taskCheckbox, checked && styles.taskCheckboxChecked],
|
|
127
|
-
children: checked
|
|
127
|
+
children: checked ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
128
128
|
style: styles.taskCheckboxText,
|
|
129
129
|
children: "\u2713"
|
|
130
|
-
})
|
|
130
|
+
}) : null
|
|
131
131
|
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
132
132
|
style: styles.taskContent,
|
|
133
133
|
children: children
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_reactNative","_MarkdownContext","_jsxRuntime","List","depth","children","style","theme","useMarkdownContext","styles","useMemo","StyleSheet","create","list","marginBottom","spacing","m","listNested","marginLeft","s","jsx","View","exports","ListItem","index","ordered","start","listItem","flexDirection","alignItems","listBullet","color","colors","accent","fontSize","fontSizes","lineHeight","marginRight","minWidth","textAlign","fontFamily","fontFamilies","regular","Platform","OS","includeFontPadding","listItemContent","flex","bullet","jsxs","Text","TaskListItem","checked","taskListItem","taskCheckbox","width","height","borderRadius","borderWidth","borderColor","justifyContent","marginTop","taskCheckboxChecked","backgroundColor","taskCheckboxText","surface","fontWeight","taskContent"],"sourceRoot":"../../../src","sources":["renderers/list.tsx"],"mappings":"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
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","_MarkdownContext","_jsxRuntime","List","depth","children","style","theme","useMarkdownContext","styles","useMemo","StyleSheet","create","list","marginBottom","spacing","m","listNested","marginLeft","s","jsx","View","exports","ListItem","index","ordered","start","listItem","flexDirection","alignItems","listBullet","color","colors","accent","fontSize","fontSizes","lineHeight","marginRight","minWidth","textAlign","fontFamily","fontFamilies","regular","Platform","OS","includeFontPadding","listItemContent","flex","bullet","jsxs","Text","TaskListItem","checked","taskListItem","taskCheckbox","width","height","borderRadius","borderWidth","borderColor","justifyContent","marginTop","taskCheckboxChecked","backgroundColor","taskCheckboxText","surface","fontWeight","taskContent"],"sourceRoot":"../../../src","sources":["renderers/list.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,gBAAA,GAAAF,OAAA;AAAwD,IAAAG,WAAA,GAAAH,OAAA;AAUjD,MAAMI,IAAmB,GAAGA,CAAC;EAAEC,KAAK;EAAEC,QAAQ;EAAEC;AAAM,CAAC,KAAK;EACjE,MAAM;IAAEC;EAAM,CAAC,GAAG,IAAAC,mCAAkB,EAAC,CAAC;EACtC,MAAMC,MAAM,GAAG,IAAAC,cAAO,EACpB,MACEC,uBAAU,CAACC,MAAM,CAAC;IAChBC,IAAI,EAAE;MACJC,YAAY,EAAEP,KAAK,CAACQ,OAAO,CAACC;IAC9B,CAAC;IACDC,UAAU,EAAE;MACVC,UAAU,EAAEX,KAAK,CAACQ,OAAO,CAACI,CAAC;MAC3BL,YAAY,EAAE;IAChB;EACF,CAAC,CAAC,EACJ,CAACP,KAAK,CACR,CAAC;EACD,oBACE,IAAAL,WAAA,CAAAkB,GAAA,EAACpB,YAAA,CAAAqB,IAAI;IAACf,KAAK,EAAE,CAACG,MAAM,CAACI,IAAI,EAAET,KAAK,GAAG,CAAC,IAAIK,MAAM,CAACQ,UAAU,EAAEX,KAAK,CAAE;IAAAD,QAAA,EAC/DA;EAAQ,CACL,CAAC;AAEX,CAAC;AAACiB,OAAA,CAAAnB,IAAA,GAAAA,IAAA;AAUK,MAAMoB,QAA2B,GAAGA,CAAC;EAC1ClB,QAAQ;EACRmB,KAAK;EACLC,OAAO;EACPC,KAAK;EACLpB;AACF,CAAC,KAAK;EACJ,MAAM;IAAEC;EAAM,CAAC,GAAG,IAAAC,mCAAkB,EAAC,CAAC;EACtC,MAAMC,MAAM,GAAG,IAAAC,cAAO,EACpB,MACEC,uBAAU,CAACC,MAAM,CAAC;IAChBe,QAAQ,EAAE;MACRC,aAAa,EAAE,KAAK;MACpBd,YAAY,EAAEP,KAAK,CAACQ,OAAO,CAACI,CAAC;MAC7BU,UAAU,EAAE;IACd,CAAC;IACDC,UAAU,EAAE;MACVC,KAAK,EAAExB,KAAK,CAACyB,MAAM,CAACC,MAAM;MAC1BC,QAAQ,EAAE3B,KAAK,CAAC4B,SAAS,CAACnB,CAAC;MAC3BoB,UAAU,EAAE7B,KAAK,CAAC4B,SAAS,CAACnB,CAAC,GAAG,GAAG;MACnCqB,WAAW,EAAE9B,KAAK,CAACQ,OAAO,CAACI,CAAC;MAC5BmB,QAAQ,EAAE,EAAE;MACZC,SAAS,EAAE,QAAQ;MACnBC,UAAU,EAAEjC,KAAK,CAACkC,YAAY,CAACC,OAAO;MACtC,IAAIC,qBAAQ,CAACC,EAAE,KAAK,SAAS,IAAI;QAAEC,kBAAkB,EAAE;MAAM,CAAC;IAChE,CAAC;IACDC,eAAe,EAAE;MACfC,IAAI,EAAE,CAAC;MACPT,QAAQ,EAAE;IACZ;EACF,CAAC,CAAC,EACJ,CAAC/B,KAAK,CACR,CAAC;EACD,MAAMyC,MAAM,GAAGvB,OAAO,GAAG,GAAGC,KAAK,GAAGF,KAAK,GAAG,GAAG,GAAG;EAClD,oBACE,IAAAtB,WAAA,CAAA+C,IAAA,EAACjD,YAAA,CAAAqB,IAAI;IAACf,KAAK,EAAE,CAACG,MAAM,CAACkB,QAAQ,EAAErB,KAAK,CAAE;IAAAD,QAAA,gBACpC,IAAAH,WAAA,CAAAkB,GAAA,EAACpB,YAAA,CAAAkD,IAAI;MAAC5C,KAAK,EAAEG,MAAM,CAACqB,UAAW;MAAAzB,QAAA,EAAE2C;IAAM,CAAO,CAAC,eAC/C,IAAA9C,WAAA,CAAAkB,GAAA,EAACpB,YAAA,CAAAqB,IAAI;MAACf,KAAK,EAAEG,MAAM,CAACqC,eAAgB;MAAAzC,QAAA,EAAEA;IAAQ,CAAO,CAAC;EAAA,CAClD,CAAC;AAEX,CAAC;AAACiB,OAAA,CAAAC,QAAA,GAAAA,QAAA;AAQK,MAAM4B,YAAmC,GAAGA,CAAC;EAClD9C,QAAQ;EACR+C,OAAO;EACP9C;AACF,CAAC,KAAK;EACJ,MAAM;IAAEC;EAAM,CAAC,GAAG,IAAAC,mCAAkB,EAAC,CAAC;EACtC,MAAMC,MAAM,GAAG,IAAAC,cAAO,EACpB,MACEC,uBAAU,CAACC,MAAM,CAAC;IAChByC,YAAY,EAAE;MACZzB,aAAa,EAAE,KAAK;MACpBC,UAAU,EAAE,YAAY;MACxBf,YAAY,EAAEP,KAAK,CAACQ,OAAO,CAACI;IAC9B,CAAC;IACDmC,YAAY,EAAE;MACZC,KAAK,EAAE,EAAE;MACTC,MAAM,EAAE,EAAE;MACVC,YAAY,EAAE,CAAC;MACfC,WAAW,EAAE,CAAC;MACdC,WAAW,EAAEpD,KAAK,CAACyB,MAAM,CAACC,MAAM;MAChCJ,UAAU,EAAE,QAAQ;MACpB+B,cAAc,EAAE,QAAQ;MACxBvB,WAAW,EAAE9B,KAAK,CAACQ,OAAO,CAACI,CAAC;MAC5B0C,SAAS,EAAE;IACb,CAAC;IACDC,mBAAmB,EAAE;MACnBC,eAAe,EAAExD,KAAK,CAACyB,MAAM,CAACC;IAChC,CAAC;IACD+B,gBAAgB,EAAE;MAChBjC,KAAK,EAAExB,KAAK,CAACyB,MAAM,CAACiC,OAAO;MAC3B/B,QAAQ,EAAE,EAAE;MACZE,UAAU,EAAE,EAAE;MACd8B,UAAU,EAAE,KAAK;MACjB1B,UAAU,EAAEjC,KAAK,CAACkC,YAAY,CAACC,OAAO;MACtC,IAAIC,qBAAQ,CAACC,EAAE,KAAK,SAAS,IAAI;QAAEC,kBAAkB,EAAE;MAAM,CAAC;IAChE,CAAC;IACDsB,WAAW,EAAE;MACXpB,IAAI,EAAE,CAAC;MACPT,QAAQ,EAAE;IACZ;EACF,CAAC,CAAC,EACJ,CAAC/B,KAAK,CACR,CAAC;EACD,oBACE,IAAAL,WAAA,CAAA+C,IAAA,EAACjD,YAAA,CAAAqB,IAAI;IAACf,KAAK,EAAE,CAACG,MAAM,CAAC4C,YAAY,EAAE/C,KAAK,CAAE;IAAAD,QAAA,gBACxC,IAAAH,WAAA,CAAAkB,GAAA,EAACpB,YAAA,CAAAqB,IAAI;MACHf,KAAK,EAAE,CAACG,MAAM,CAAC6C,YAAY,EAAEF,OAAO,IAAI3C,MAAM,CAACqD,mBAAmB,CAAE;MAAAzD,QAAA,EAEnE+C,OAAO,gBAAG,IAAAlD,WAAA,CAAAkB,GAAA,EAACpB,YAAA,CAAAkD,IAAI;QAAC5C,KAAK,EAAEG,MAAM,CAACuD,gBAAiB;QAAA3D,QAAA,EAAC;MAAC,CAAM,CAAC,GAAG;IAAI,CAC5D,CAAC,eACP,IAAAH,WAAA,CAAAkB,GAAA,EAACpB,YAAA,CAAAqB,IAAI;MAACf,KAAK,EAAEG,MAAM,CAAC0D,WAAY;MAAA9D,QAAA,EAAEA;IAAQ,CAAO,CAAC;EAAA,CAC9C,CAAC;AAEX,CAAC;AAACiB,OAAA,CAAA6B,YAAA,GAAAA,YAAA","ignoreList":[]}
|
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.TableRenderer = void 0;
|
|
7
7
|
var _react = require("react");
|
|
8
8
|
var _reactNative = require("react-native");
|
|
9
|
+
var _headless = require("../headless.js");
|
|
9
10
|
var _MarkdownContext = require("../MarkdownContext.js");
|
|
10
11
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
11
12
|
const extractTableData = node => {
|
|
@@ -40,10 +41,55 @@ const extractTableData = node => {
|
|
|
40
41
|
alignments
|
|
41
42
|
};
|
|
42
43
|
};
|
|
44
|
+
const MIN_COLUMN_WIDTH = 60;
|
|
45
|
+
const COLUMN_MEASUREMENT_PADDING = 8;
|
|
46
|
+
const APPROX_CHAR_WIDTH = 7;
|
|
47
|
+
const MAX_ESTIMATED_CHARS = 120;
|
|
48
|
+
const ESTIMATED_WIDTH_STEP = 24;
|
|
49
|
+
const MEASUREMENT_STABILIZE_MS = 140;
|
|
50
|
+
const IS_ACT_TEST_ENVIRONMENT = Reflect.get(globalThis, "IS_REACT_ACT_ENVIRONMENT") === true;
|
|
51
|
+
const SHOULD_DEBOUNCE_MEASUREMENT = !IS_ACT_TEST_ENVIRONMENT;
|
|
43
52
|
const columnWidthsReducer = (state, action) => {
|
|
44
|
-
if (action.type === "
|
|
53
|
+
if (action.type === "RESET_WIDTHS") {
|
|
54
|
+
if (state.length === action.payload.length && state.every((width, index) => width === action.payload[index])) {
|
|
55
|
+
return state;
|
|
56
|
+
}
|
|
57
|
+
return action.payload;
|
|
58
|
+
}
|
|
59
|
+
if (action.type === "SET_MONOTONIC_WIDTHS") {
|
|
60
|
+
if (state.length !== action.payload.length) {
|
|
61
|
+
return action.payload;
|
|
62
|
+
}
|
|
63
|
+
const merged = action.payload.map((width, index) => Math.max(width, state[index] ?? width));
|
|
64
|
+
if (state.every((width, index) => width === merged[index])) {
|
|
65
|
+
return state;
|
|
66
|
+
}
|
|
67
|
+
return merged;
|
|
68
|
+
}
|
|
45
69
|
return state;
|
|
46
70
|
};
|
|
71
|
+
const estimateColumnWidths = (headers, rows, columnCount) => {
|
|
72
|
+
const widths = new Array(columnCount).fill(MIN_COLUMN_WIDTH);
|
|
73
|
+
for (let col = 0; col < columnCount; col++) {
|
|
74
|
+
const headerChars = Math.min((0, _headless.getTextContent)(headers[col] ?? {
|
|
75
|
+
type: "text",
|
|
76
|
+
content: ""
|
|
77
|
+
}).trim().length, MAX_ESTIMATED_CHARS);
|
|
78
|
+
let maxChars = headerChars;
|
|
79
|
+
for (let row = 0; row < rows.length; row++) {
|
|
80
|
+
const cell = rows[row][col];
|
|
81
|
+
if (!cell) continue;
|
|
82
|
+
const cellChars = Math.min((0, _headless.getTextContent)(cell).trim().length, MAX_ESTIMATED_CHARS);
|
|
83
|
+
if (cellChars > maxChars) {
|
|
84
|
+
maxChars = cellChars;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
const estimatedWidth = maxChars * APPROX_CHAR_WIDTH + COLUMN_MEASUREMENT_PADDING;
|
|
88
|
+
const steppedEstimatedWidth = Math.ceil(estimatedWidth / ESTIMATED_WIDTH_STEP) * ESTIMATED_WIDTH_STEP;
|
|
89
|
+
widths[col] = Math.max(MIN_COLUMN_WIDTH, steppedEstimatedWidth);
|
|
90
|
+
}
|
|
91
|
+
return widths;
|
|
92
|
+
};
|
|
47
93
|
const TableRenderer = ({
|
|
48
94
|
node,
|
|
49
95
|
Renderer,
|
|
@@ -59,44 +105,102 @@ const TableRenderer = ({
|
|
|
59
105
|
} = (0, _react.useMemo)(() => extractTableData(node), [node]);
|
|
60
106
|
const columnCount = headers.length;
|
|
61
107
|
const styles = (0, _react.useMemo)(() => createTableStyles(theme), [theme]);
|
|
62
|
-
const
|
|
108
|
+
const estimatedColumnWidths = (0, _react.useMemo)(() => estimateColumnWidths(headers, rows, columnCount), [headers, rows, columnCount]);
|
|
109
|
+
const [columnWidths, dispatch] = (0, _react.useReducer)(columnWidthsReducer, estimatedColumnWidths);
|
|
63
110
|
const measuredWidths = (0, _react.useRef)(new Map());
|
|
64
111
|
const measuredCells = (0, _react.useRef)(new Set());
|
|
65
112
|
const widthsCalculated = (0, _react.useRef)(false);
|
|
66
|
-
const
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
113
|
+
const columnWidthsRef = (0, _react.useRef)(columnWidths);
|
|
114
|
+
const lastCellKeySignatureRef = (0, _react.useRef)("");
|
|
115
|
+
const measurementTimerRef = (0, _react.useRef)(null);
|
|
116
|
+
const [needsMeasurement, setNeedsMeasurement] = (0, _react.useReducer)((_previous, nextValue) => nextValue, false);
|
|
117
|
+
const expectedCellKeys = (0, _react.useMemo)(() => {
|
|
118
|
+
const keys = [];
|
|
119
|
+
headers.forEach((_, colIndex) => {
|
|
120
|
+
keys.push(`header-${colIndex}`);
|
|
121
|
+
});
|
|
122
|
+
rows.forEach((row, rowIndex) => {
|
|
123
|
+
row.forEach((_, colIndex) => {
|
|
124
|
+
keys.push(`cell-${rowIndex}-${colIndex}`);
|
|
125
|
+
});
|
|
126
|
+
});
|
|
127
|
+
return keys;
|
|
128
|
+
}, [headers, rows]);
|
|
129
|
+
const expectedCellKeySignature = (0, _react.useMemo)(() => expectedCellKeys.join("|"), [expectedCellKeys]);
|
|
130
|
+
(0, _react.useEffect)(() => {
|
|
131
|
+
columnWidthsRef.current = columnWidths;
|
|
132
|
+
}, [columnWidths]);
|
|
133
|
+
(0, _react.useEffect)(() => {
|
|
134
|
+
const structureChanged = lastCellKeySignatureRef.current !== expectedCellKeySignature;
|
|
135
|
+
lastCellKeySignatureRef.current = expectedCellKeySignature;
|
|
136
|
+
if (measurementTimerRef.current) {
|
|
137
|
+
clearTimeout(measurementTimerRef.current);
|
|
138
|
+
measurementTimerRef.current = null;
|
|
72
139
|
}
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
140
|
+
if (structureChanged) {
|
|
141
|
+
measuredWidths.current.clear();
|
|
142
|
+
measuredCells.current.clear();
|
|
143
|
+
widthsCalculated.current = false;
|
|
144
|
+
setNeedsMeasurement(false);
|
|
145
|
+
dispatch({
|
|
146
|
+
type: "RESET_WIDTHS",
|
|
147
|
+
payload: estimatedColumnWidths
|
|
148
|
+
});
|
|
149
|
+
} else {
|
|
150
|
+
dispatch({
|
|
151
|
+
type: "SET_MONOTONIC_WIDTHS",
|
|
152
|
+
payload: estimatedColumnWidths
|
|
153
|
+
});
|
|
154
|
+
if (widthsCalculated.current) {
|
|
155
|
+
return;
|
|
76
156
|
}
|
|
77
157
|
}
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
158
|
+
if (!SHOULD_DEBOUNCE_MEASUREMENT) {
|
|
159
|
+
setNeedsMeasurement(true);
|
|
160
|
+
return;
|
|
161
|
+
}
|
|
162
|
+
measurementTimerRef.current = setTimeout(() => {
|
|
163
|
+
measurementTimerRef.current = null;
|
|
164
|
+
setNeedsMeasurement(true);
|
|
165
|
+
}, MEASUREMENT_STABILIZE_MS);
|
|
166
|
+
return () => {
|
|
167
|
+
if (measurementTimerRef.current) {
|
|
168
|
+
clearTimeout(measurementTimerRef.current);
|
|
169
|
+
measurementTimerRef.current = null;
|
|
170
|
+
}
|
|
171
|
+
};
|
|
172
|
+
}, [estimatedColumnWidths, expectedCellKeySignature]);
|
|
173
|
+
const onCellLayout = (0, _react.useCallback)((cellKey, width) => {
|
|
174
|
+
if (width <= 0 || widthsCalculated.current || !needsMeasurement) return;
|
|
175
|
+
measuredWidths.current.set(cellKey, width);
|
|
176
|
+
if (!measuredCells.current.has(cellKey)) {
|
|
177
|
+
measuredCells.current.add(cellKey);
|
|
178
|
+
}
|
|
179
|
+
if (measuredCells.current.size < expectedCellKeys.length) return;
|
|
180
|
+
const allCellsMeasured = expectedCellKeys.every(key => measuredCells.current.has(key));
|
|
181
|
+
if (!allCellsMeasured) return;
|
|
182
|
+
const maxWidths = [...columnWidthsRef.current];
|
|
81
183
|
for (let col = 0; col < columnCount; col++) {
|
|
82
184
|
const headerWidth = measuredWidths.current.get(`header-${col}`);
|
|
83
185
|
if (headerWidth && headerWidth > 0) {
|
|
84
186
|
maxWidths[col] = Math.max(maxWidths[col], headerWidth);
|
|
85
187
|
}
|
|
86
188
|
for (let row = 0; row < rows.length; row++) {
|
|
189
|
+
if (col >= rows[row].length) continue;
|
|
87
190
|
const cellWidth = measuredWidths.current.get(`cell-${row}-${col}`);
|
|
88
191
|
if (cellWidth && cellWidth > 0) {
|
|
89
192
|
maxWidths[col] = Math.max(maxWidths[col], cellWidth);
|
|
90
193
|
}
|
|
91
194
|
}
|
|
92
|
-
maxWidths[col] = Math.max(maxWidths[col] +
|
|
195
|
+
maxWidths[col] = Math.max(maxWidths[col] + COLUMN_MEASUREMENT_PADDING, MIN_COLUMN_WIDTH);
|
|
93
196
|
}
|
|
94
197
|
widthsCalculated.current = true;
|
|
198
|
+
setNeedsMeasurement(false);
|
|
95
199
|
dispatch({
|
|
96
|
-
type: "
|
|
200
|
+
type: "RESET_WIDTHS",
|
|
97
201
|
payload: maxWidths
|
|
98
202
|
});
|
|
99
|
-
}, [columnCount, rows
|
|
203
|
+
}, [columnCount, expectedCellKeys, needsMeasurement, rows]);
|
|
100
204
|
const getAlignment = index => {
|
|
101
205
|
const align = alignments[index];
|
|
102
206
|
if (align === "center") return "center";
|
|
@@ -105,9 +209,10 @@ const TableRenderer = ({
|
|
|
105
209
|
};
|
|
106
210
|
if (columnCount === 0) return null;
|
|
107
211
|
const hasWidths = columnWidths.length === columnCount;
|
|
212
|
+
const resolvedWidths = hasWidths ? columnWidths : estimatedColumnWidths;
|
|
108
213
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
109
214
|
style: [styles.container, style],
|
|
110
|
-
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
215
|
+
children: [needsMeasurement ? /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
111
216
|
style: styles.measurementContainer,
|
|
112
217
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
113
218
|
style: styles.measurementRow,
|
|
@@ -136,7 +241,7 @@ const TableRenderer = ({
|
|
|
136
241
|
})
|
|
137
242
|
}, `measure-cell-${rowIndex}-${colIndex}`))
|
|
138
243
|
}, `measure-row-${rowIndex}`))]
|
|
139
|
-
})
|
|
244
|
+
}) : null, /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.ScrollView, {
|
|
140
245
|
horizontal: true,
|
|
141
246
|
showsHorizontalScrollIndicator: true,
|
|
142
247
|
style: styles.tableScroll,
|
|
@@ -149,7 +254,7 @@ const TableRenderer = ({
|
|
|
149
254
|
style: styles.headerRow,
|
|
150
255
|
children: headers.map((cell, colIndex) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
151
256
|
style: [styles.headerCell, {
|
|
152
|
-
width:
|
|
257
|
+
width: resolvedWidths[colIndex] ?? MIN_COLUMN_WIDTH,
|
|
153
258
|
alignItems: getAlignment(colIndex)
|
|
154
259
|
}, colIndex === columnCount - 1 && styles.lastCell],
|
|
155
260
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(CellContent, {
|
|
@@ -163,7 +268,7 @@ const TableRenderer = ({
|
|
|
163
268
|
style: [styles.bodyRow, rowIndex === rows.length - 1 && styles.lastRow, rowIndex % 2 === 0 ? styles.evenRow : styles.oddRow],
|
|
164
269
|
children: row.map((cell, colIndex) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
165
270
|
style: [styles.bodyCell, {
|
|
166
|
-
width:
|
|
271
|
+
width: resolvedWidths[colIndex] ?? MIN_COLUMN_WIDTH,
|
|
167
272
|
alignItems: getAlignment(colIndex)
|
|
168
273
|
}, colIndex === columnCount - 1 && styles.lastCell],
|
|
169
274
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(CellContent, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_reactNative","_MarkdownContext","_jsxRuntime","extractTableData","node","headers","rows","alignments","child","children","type","row","cell","push","align","rowCells","columnWidthsReducer","state","action","payload","TableRenderer","Renderer","style","theme","useMarkdownContext","useMemo","columnCount","length","styles","createTableStyles","columnWidths","dispatch","useReducer","measuredWidths","useRef","Map","measuredCells","Set","widthsCalculated","onCellLayout","useCallback","cellKey","width","current","set","add","expectedCells","col","allCellsMeasured","every","key","has","maxWidths","Array","fill","headerWidth","get","Math","max","cellWidth","getAlignment","index","hasWidths","jsxs","View","container","measurementContainer","jsx","measurementRow","map","colIndex","measurementCell","onLayout","e","nativeEvent","layout","CellContent","rowIndex","ScrollView","horizontal","showsHorizontalScrollIndicator","tableScroll","bounces","table","backgroundColor","colors","surface","headerRow","headerCell","alignItems","lastCell","textStyle","headerText","bodyRow","lastRow","evenRow","oddRow","bodyCell","cellText","exports","Text","content","cellContentWrapper","idx","depth","inListItem","parentIsText","borderRadius","m","StyleSheet","create","marginVertical","spacing","s","position","opacity","pointerEvents","left","flexDirection","paddingVertical","paddingHorizontal","flexGrow","overflow","borderWidth","borderColor","tableBorder","tableHeader","borderBottomWidth","borderBottomColor","tableRowEven","tableRowOdd","flexShrink","minWidth","borderRightWidth","borderRightColor","justifyContent","color","tableHeaderText","fontSize","fontWeight","fontFamily","fontFamilies","regular","Platform","OS","includeFontPadding","text","lineHeight","flexWrap"],"sourceRoot":"../../../src","sources":["renderers/table.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","_headless","_MarkdownContext","_jsxRuntime","extractTableData","node","headers","rows","alignments","child","children","type","row","cell","push","align","rowCells","MIN_COLUMN_WIDTH","COLUMN_MEASUREMENT_PADDING","APPROX_CHAR_WIDTH","MAX_ESTIMATED_CHARS","ESTIMATED_WIDTH_STEP","MEASUREMENT_STABILIZE_MS","IS_ACT_TEST_ENVIRONMENT","Reflect","get","globalThis","SHOULD_DEBOUNCE_MEASUREMENT","columnWidthsReducer","state","action","length","payload","every","width","index","merged","map","Math","max","estimateColumnWidths","columnCount","widths","Array","fill","col","headerChars","min","getTextContent","content","trim","maxChars","cellChars","estimatedWidth","steppedEstimatedWidth","ceil","TableRenderer","Renderer","style","theme","useMarkdownContext","useMemo","styles","createTableStyles","estimatedColumnWidths","columnWidths","dispatch","useReducer","measuredWidths","useRef","Map","measuredCells","Set","widthsCalculated","columnWidthsRef","lastCellKeySignatureRef","measurementTimerRef","needsMeasurement","setNeedsMeasurement","_previous","nextValue","expectedCellKeys","keys","forEach","_","colIndex","rowIndex","expectedCellKeySignature","join","useEffect","current","structureChanged","clearTimeout","clear","setTimeout","onCellLayout","useCallback","cellKey","set","has","add","size","allCellsMeasured","key","maxWidths","headerWidth","cellWidth","getAlignment","hasWidths","resolvedWidths","jsxs","View","container","measurementContainer","jsx","measurementRow","measurementCell","onLayout","e","nativeEvent","layout","CellContent","ScrollView","horizontal","showsHorizontalScrollIndicator","tableScroll","bounces","table","backgroundColor","colors","surface","headerRow","headerCell","alignItems","lastCell","textStyle","headerText","bodyRow","lastRow","evenRow","oddRow","bodyCell","cellText","exports","Text","cellContentWrapper","idx","depth","inListItem","parentIsText","borderRadius","m","StyleSheet","create","marginVertical","spacing","s","position","opacity","pointerEvents","left","flexDirection","paddingVertical","paddingHorizontal","flexGrow","overflow","borderWidth","borderColor","tableBorder","tableHeader","borderBottomWidth","borderBottomColor","tableRowEven","tableRowOdd","flexShrink","minWidth","borderRightWidth","borderRightColor","justifyContent","color","tableHeaderText","fontSize","fontWeight","fontFamily","fontFamilies","regular","Platform","OS","includeFontPadding","text","lineHeight","flexWrap"],"sourceRoot":"../../../src","sources":["renderers/table.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -7,6 +7,7 @@ exports.useMarkdownSession = useMarkdownSession;
|
|
|
7
7
|
exports.useStream = useStream;
|
|
8
8
|
var _react = require("react");
|
|
9
9
|
var _MarkdownSession = require("./MarkdownSession.js");
|
|
10
|
+
var _streamTimeline = require("./utils/stream-timeline.js");
|
|
10
11
|
function useMarkdownSession() {
|
|
11
12
|
const sessionRef = (0, _react.useRef)(null);
|
|
12
13
|
if (sessionRef.current === null) {
|
|
@@ -42,25 +43,26 @@ function useMarkdownSession() {
|
|
|
42
43
|
}
|
|
43
44
|
function useStream(timestamps) {
|
|
44
45
|
const engine = useMarkdownSession();
|
|
46
|
+
const {
|
|
47
|
+
setHighlight
|
|
48
|
+
} = engine;
|
|
45
49
|
const [isPlaying, setIsPlaying] = (0, _react.useState)(false);
|
|
46
|
-
const
|
|
50
|
+
const timelineRef = (0, _react.useRef)({
|
|
51
|
+
entries: [],
|
|
52
|
+
monotonic: true
|
|
53
|
+
});
|
|
54
|
+
const lastHighlightRef = (0, _react.useRef)(-1);
|
|
47
55
|
(0, _react.useEffect)(() => {
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
}
|
|
56
|
+
timelineRef.current = (0, _streamTimeline.createTimestampTimeline)(timestamps);
|
|
57
|
+
lastHighlightRef.current = -1;
|
|
51
58
|
}, [timestamps]);
|
|
52
59
|
const sync = (0, _react.useCallback)(currentTimeMs => {
|
|
53
60
|
if (!timestamps) return;
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
break;
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
engine.setHighlight(wordIdx);
|
|
63
|
-
}, [timestamps, engine]);
|
|
61
|
+
const nextHighlight = (0, _streamTimeline.resolveHighlightPosition)(timelineRef.current, currentTimeMs);
|
|
62
|
+
if (nextHighlight === lastHighlightRef.current) return;
|
|
63
|
+
lastHighlightRef.current = nextHighlight;
|
|
64
|
+
setHighlight(nextHighlight);
|
|
65
|
+
}, [setHighlight, timestamps]);
|
|
64
66
|
return {
|
|
65
67
|
...engine,
|
|
66
68
|
isPlaying,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_MarkdownSession","useMarkdownSession","sessionRef","useRef","current","createMarkdownSession","isStreaming","setIsStreaming","useState","useEffect","session","clear","stop","useCallback","highlightPosition","setHighlight","position","getSession","useStream","timestamps","engine","isPlaying","setIsPlaying","
|
|
1
|
+
{"version":3,"names":["_react","require","_MarkdownSession","_streamTimeline","useMarkdownSession","sessionRef","useRef","current","createMarkdownSession","isStreaming","setIsStreaming","useState","useEffect","session","clear","stop","useCallback","highlightPosition","setHighlight","position","getSession","useStream","timestamps","engine","isPlaying","setIsPlaying","timelineRef","entries","monotonic","lastHighlightRef","createTimestampTimeline","sync","currentTimeMs","nextHighlight","resolveHighlightPosition"],"sourceRoot":"../../src","sources":["use-markdown-stream.ts"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,gBAAA,GAAAD,OAAA;AACA,IAAAE,eAAA,GAAAF,OAAA;AAQO,SAASG,kBAAkBA,CAAA,EAAG;EACnC,MAAMC,UAAU,GAAG,IAAAC,aAAM,EAAyB,IAAI,CAAC;EACvD,IAAID,UAAU,CAACE,OAAO,KAAK,IAAI,EAAE;IAC/BF,UAAU,CAACE,OAAO,GAAG,IAAAC,sCAAqB,EAAC,CAAC;EAC9C;EAEA,MAAM,CAACC,WAAW,EAAEC,cAAc,CAAC,GAAG,IAAAC,eAAQ,EAAC,KAAK,CAAC;EAErD,IAAAC,gBAAS,EAAC,MAAM;IACd,MAAMC,OAAO,GAAGR,UAAU,CAACE,OAAQ;IACnC,OAAO,MAAM;MACXM,OAAO,CAACC,KAAK,CAAC,CAAC;IACjB,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,IAAI,GAAG,IAAAC,kBAAW,EAAC,MAAM;IAC7BN,cAAc,CAAC,KAAK,CAAC;EACvB,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMI,KAAK,GAAG,IAAAE,kBAAW,EAAC,MAAM;IAC9BD,IAAI,CAAC,CAAC;IACNV,UAAU,CAACE,OAAO,CAAEO,KAAK,CAAC,CAAC;IAC3BT,UAAU,CAACE,OAAO,CAAEU,iBAAiB,GAAG,CAAC;EAC3C,CAAC,EAAE,CAACF,IAAI,CAAC,CAAC;EAEV,MAAMG,YAAY,GAAG,IAAAF,kBAAW,EAAEG,QAAgB,IAAK;IACrDd,UAAU,CAACE,OAAO,CAAEU,iBAAiB,GAAGE,QAAQ;EAClD,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMC,UAAU,GAAG,IAAAJ,kBAAW,EAAC,MAAMX,UAAU,CAACE,OAAQ,EAAE,EAAE,CAAC;EAE7D,OAAO;IACLa,UAAU;IACVX,WAAW;IACXC,cAAc;IACdK,IAAI;IACJD,KAAK;IACLI;EACF,CAAC;AACH;AAEO,SAASG,SAASA,CAACC,UAAmC,EAAE;EAC7D,MAAMC,MAAM,GAAGnB,kBAAkB,CAAC,CAAC;EACnC,MAAM;IAAEc;EAAa,CAAC,GAAGK,MAAM;EAC/B,MAAM,CAACC,SAAS,EAAEC,YAAY,CAAC,GAAG,IAAAd,eAAQ,EAAC,KAAK,CAAC;EACjD,MAAMe,WAAW,GAAG,IAAApB,aAAM,EAAoB;IAC5CqB,OAAO,EAAE,EAAE;IACXC,SAAS,EAAE;EACb,CAAC,CAAC;EACF,MAAMC,gBAAgB,GAAG,IAAAvB,aAAM,EAAS,CAAC,CAAC,CAAC;EAE3C,IAAAM,gBAAS,EAAC,MAAM;IACdc,WAAW,CAACnB,OAAO,GAAG,IAAAuB,uCAAuB,EAACR,UAAU,CAAC;IACzDO,gBAAgB,CAACtB,OAAO,GAAG,CAAC,CAAC;EAC/B,CAAC,EAAE,CAACe,UAAU,CAAC,CAAC;EAEhB,MAAMS,IAAI,GAAG,IAAAf,kBAAW,EACrBgB,aAAqB,IAAK;IACzB,IAAI,CAACV,UAAU,EAAE;IAEjB,MAAMW,aAAa,GAAG,IAAAC,wCAAwB,EAC5CR,WAAW,CAACnB,OAAO,EACnByB,aACF,CAAC;IACD,IAAIC,aAAa,KAAKJ,gBAAgB,CAACtB,OAAO,EAAE;IAEhDsB,gBAAgB,CAACtB,OAAO,GAAG0B,aAAa;IACxCf,YAAY,CAACe,aAAa,CAAC;EAC7B,CAAC,EACD,CAACf,YAAY,EAAEI,UAAU,CAC3B,CAAC;EAED,OAAO;IACL,GAAGC,MAAM;IACTC,SAAS;IACTC,YAAY;IACZM;EACF,CAAC;AACH","ignoreList":[]}
|