react-native-nitro-markdown 0.5.7 → 0.6.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 +13 -26
- package/android/CMakeLists.txt +1 -1
- package/android/build.gradle +2 -2
- package/android/consumer-rules.pro +1 -1
- package/android/gradle.properties +1 -2
- package/android/src/main/java/com/margelo/nitro/com/nitromarkdown/HybridMarkdownSession.kt +8 -1
- package/ios/HybridMarkdownSession.swift +17 -0
- package/lib/commonjs/markdown-stream.js +11 -3
- package/lib/commonjs/markdown-stream.js.map +1 -1
- package/lib/commonjs/markdown.js +6 -0
- package/lib/commonjs/markdown.js.map +1 -1
- package/lib/commonjs/renderers/math.js +33 -78
- package/lib/commonjs/renderers/math.js.map +1 -1
- package/lib/module/markdown-stream.js +11 -3
- package/lib/module/markdown-stream.js.map +1 -1
- package/lib/module/markdown.js +6 -0
- package/lib/module/markdown.js.map +1 -1
- package/lib/module/renderers/math.js +33 -78
- package/lib/module/renderers/math.js.map +1 -1
- package/lib/typescript/commonjs/markdown-stream.d.ts.map +1 -1
- package/lib/typescript/commonjs/markdown.d.ts.map +1 -1
- package/lib/typescript/commonjs/renderers/math.d.ts.map +1 -1
- package/lib/typescript/module/markdown-stream.d.ts.map +1 -1
- package/lib/typescript/module/markdown.d.ts.map +1 -1
- package/lib/typescript/module/renderers/math.d.ts.map +1 -1
- package/package.json +3 -13
- package/react-native-nitro-markdown.podspec +7 -8
- package/src/markdown-stream.tsx +11 -3
- package/src/markdown.tsx +6 -0
- package/src/renderers/math.tsx +40 -97
- package/cpp/bindings/HybridMarkdownSession.cpp +0 -2
- package/cpp/core/MarkdownSessionCore.cpp +0 -2
package/README.md
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
# react-native-nitro-markdown
|
|
2
2
|
|
|
3
|
-
[](https://www.npmjs.com/package/react-native-nitro-markdown)
|
|
4
4
|
[](./LICENSE)
|
|
5
5
|
[](https://reactnative.dev/)
|
|
6
|
-
[](https://github.com/mrousavy/nitro)
|
|
7
7
|
|
|
8
8
|
<p align="center">
|
|
9
9
|
<img src="https://raw.githubusercontent.com/JoaoPauloCMarra/react-native-nitro-markdown/main/readme/demo.gif" alt="react-native-nitro-markdown demo" width="400" />
|
|
@@ -16,7 +16,7 @@ Native Markdown parsing and rendering for React Native, powered by [md4c](https:
|
|
|
16
16
|
- **Native C++ parser** -- synchronous parsing via JSI with minimal JS thread overhead
|
|
17
17
|
- **Full rendering pipeline** -- parser + renderer + streaming session in one package
|
|
18
18
|
- **GFM support** -- tables, strikethrough, task lists, autolinks
|
|
19
|
-
- **Math rendering** -- inline and block LaTeX via
|
|
19
|
+
- **Math rendering** -- inline and block LaTeX via native RaTeX
|
|
20
20
|
- **Opt-in HTML AST nodes** -- preserve raw HTML as `html_inline` / `html_block` for custom renderers
|
|
21
21
|
- **Large document support** -- top-level block virtualization and cached renderer styles
|
|
22
22
|
- **Code highlighting** -- built-in JS/TS, Python, and Bash tokenizer with custom highlighter support
|
|
@@ -29,42 +29,29 @@ Native Markdown parsing and rendering for React Native, powered by [md4c](https:
|
|
|
29
29
|
| Dependency | Version |
|
|
30
30
|
|---|---|
|
|
31
31
|
| React Native | `>=0.75.0` |
|
|
32
|
-
| react-native-nitro-modules | `>=0.35.
|
|
33
|
-
| react-native
|
|
34
|
-
| react-native-svg *(optional, for math)* | `>=13.0.0` |
|
|
32
|
+
| react-native-nitro-modules | `>=0.35.6` |
|
|
33
|
+
| ratex-react-native | `>=0.1.4` |
|
|
35
34
|
|
|
36
35
|
## Installation
|
|
37
36
|
|
|
38
37
|
With npm:
|
|
39
38
|
|
|
40
39
|
```bash
|
|
41
|
-
npm install react-native-nitro-markdown react-native-nitro-modules
|
|
40
|
+
npm install react-native-nitro-markdown react-native-nitro-modules ratex-react-native
|
|
42
41
|
cd ios && pod install
|
|
43
42
|
```
|
|
44
43
|
|
|
45
44
|
With Bun:
|
|
46
45
|
|
|
47
46
|
```bash
|
|
48
|
-
bun add react-native-nitro-markdown react-native-nitro-modules
|
|
47
|
+
bun add react-native-nitro-markdown react-native-nitro-modules ratex-react-native
|
|
49
48
|
cd ios && pod install
|
|
50
49
|
```
|
|
51
50
|
|
|
52
|
-
For math rendering:
|
|
53
|
-
|
|
54
|
-
```bash
|
|
55
|
-
npm install react-native-mathjax-svg react-native-svg
|
|
56
|
-
```
|
|
57
|
-
|
|
58
|
-
or with Bun:
|
|
59
|
-
|
|
60
|
-
```bash
|
|
61
|
-
bun add react-native-mathjax-svg react-native-svg
|
|
62
|
-
```
|
|
63
|
-
|
|
64
51
|
**Expo** (development build):
|
|
65
52
|
|
|
66
53
|
```bash
|
|
67
|
-
npx expo install react-native-nitro-markdown react-native-nitro-modules
|
|
54
|
+
npx expo install react-native-nitro-markdown react-native-nitro-modules ratex-react-native
|
|
68
55
|
npx expo prebuild
|
|
69
56
|
```
|
|
70
57
|
|
|
@@ -91,7 +78,7 @@ export function Example() {
|
|
|
91
78
|
| Option | Default | Enables | Notes |
|
|
92
79
|
|---|---:|---|---|
|
|
93
80
|
| `gfm` | `true` | Tables, strikethrough, task lists, permissive autolinks | Set `false` for stricter CommonMark-style parsing |
|
|
94
|
-
| `math` | `true` | Inline and display LaTeX spans |
|
|
81
|
+
| `math` | `true` | Inline and display LaTeX spans | Rendered with RaTeX; falls back to styled plain text if the peer dependency is unavailable at runtime |
|
|
95
82
|
| `html` | `false` | `html_inline` and `html_block` AST nodes | Raw HTML is not rendered by default; provide custom renderers |
|
|
96
83
|
|
|
97
84
|
```tsx
|
|
@@ -299,13 +286,13 @@ Do not pass untrusted HTML directly into a WebView from a renderer. Sanitize or
|
|
|
299
286
|
|
|
300
287
|
### Math Rendering
|
|
301
288
|
|
|
302
|
-
Math parsing is enabled by default. Rendering LaTeX
|
|
289
|
+
Math parsing is enabled by default. Rendering LaTeX uses the native RaTeX renderer:
|
|
303
290
|
|
|
304
291
|
```bash
|
|
305
|
-
bun add
|
|
292
|
+
bun add ratex-react-native
|
|
306
293
|
```
|
|
307
294
|
|
|
308
|
-
|
|
295
|
+
If `ratex-react-native` is unavailable at runtime, `math_inline` and `math_block` render as styled plain text fallback.
|
|
309
296
|
|
|
310
297
|
Inline math (`$...$`) stays inside text flow. Use block math (`$$...$$`) for large formulas; the default `math_block` renderer is horizontally scrollable when the equation is wider than the screen. Custom `math_block` renderers should preserve the same behavior for long display equations.
|
|
311
298
|
|
|
@@ -515,7 +502,7 @@ Parser and text utilities only -- no React dependencies. Use this for server-sid
|
|
|
515
502
|
|
|
516
503
|
| Problem | Solution |
|
|
517
504
|
|---|---|
|
|
518
|
-
| Math renders as code-style fallback | Install `
|
|
505
|
+
| Math renders as code-style fallback | Install `ratex-react-native` |
|
|
519
506
|
| Large inline math overflows text | Use block math (`$$...$$`) for wide formulas; inline math intentionally stays in text flow |
|
|
520
507
|
| iOS build fails after install | Run `pod install` in your iOS directory |
|
|
521
508
|
| Expo app doesn't load native module | Use a development build (`expo prebuild` + `expo run`), not Expo Go |
|
package/android/CMakeLists.txt
CHANGED
|
@@ -39,7 +39,7 @@ target_compile_definitions(${PROJECT_NAME} PRIVATE
|
|
|
39
39
|
# Include Nitro autolinking (adds nitrogen sources, definitions, and links)
|
|
40
40
|
include(${CMAKE_CURRENT_SOURCE_DIR}/../nitrogen/generated/android/NitroMarkdown+autolinking.cmake)
|
|
41
41
|
|
|
42
|
-
#
|
|
42
|
+
# Per-build-type optimization flags. Release builds get full optimization and strip debug
|
|
43
43
|
# symbols from the binary. Debug builds disable optimization for easier debugging.
|
|
44
44
|
target_compile_options(${CMAKE_PROJECT_NAME} PRIVATE
|
|
45
45
|
$<$<CONFIG:Release>:-O3 -DNDEBUG>
|
package/android/build.gradle
CHANGED
|
@@ -11,7 +11,7 @@ buildscript {
|
|
|
11
11
|
|
|
12
12
|
def reactNativeArchitectures() {
|
|
13
13
|
def value = rootProject.getProperties().get("reactNativeArchitectures")
|
|
14
|
-
//
|
|
14
|
+
// Default to 64-bit only. 32-bit ABIs (armeabi-v7a, x86) are excluded from the default
|
|
15
15
|
// because all Android devices on API 24+ support 64-bit, and 32-bit increases APK size with no
|
|
16
16
|
// practical benefit for this library. Override via gradle.properties if needed.
|
|
17
17
|
return value ? value.split(",") : ["arm64-v8a", "x86_64"]
|
|
@@ -51,7 +51,7 @@ android {
|
|
|
51
51
|
|
|
52
52
|
externalNativeBuild {
|
|
53
53
|
cmake {
|
|
54
|
-
//
|
|
54
|
+
// -fstack-protector-strong replaces -fstack-protector-all (better coverage/perf
|
|
55
55
|
// tradeoff). -Wformat/-Werror=format-security guard against format-string exploits.
|
|
56
56
|
// -D_FORTIFY_SOURCE=2 enables glibc/Bionic source fortification for buffer overflows.
|
|
57
57
|
cppFlags "-frtti -fexceptions -Wall -Wextra -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2"
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
-keep class com.margelo.nitro.com.nitromarkdown.** { *; }
|
|
4
4
|
-keep class com.nitromarkdown.** { *; }
|
|
5
5
|
|
|
6
|
-
#
|
|
6
|
+
# Explicitly preserve nitrogen-generated Func_* wrapper classes accessed via JNI reflection.
|
|
7
7
|
# These are already covered by the wildcard above, but explicit rules guard against future
|
|
8
8
|
# refactors that might narrow the wildcard, and make the intent clear to ProGuard/R8.
|
|
9
9
|
-keep class com.margelo.nitro.com.nitromarkdown.Func_void { *; }
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
NitroMarkdown_compileSdkVersion=34
|
|
2
|
-
#
|
|
2
|
+
# minSdkVersion stays at 24 (Android 7.0) to match the example app's minimum SDK requirement.
|
|
3
3
|
# Bumping to 26 would be preferable for security (full ASLR, etc.) but would break example builds.
|
|
4
4
|
NitroMarkdown_minSdkVersion=24
|
|
5
5
|
NitroMarkdown_targetSdkVersion=34
|
|
6
6
|
NitroMarkdown_ndkVersion=27.1.12297006
|
|
7
|
-
|
|
@@ -81,6 +81,9 @@ class HybridMarkdownSession : HybridMarkdownSessionSpec() {
|
|
|
81
81
|
|
|
82
82
|
override fun reset(text: String) {
|
|
83
83
|
synchronized(lock) {
|
|
84
|
+
if (text.length > MAX_BUFFER_SIZE) {
|
|
85
|
+
throw IllegalArgumentException("Buffer size limit exceeded (max $MAX_BUFFER_SIZE chars)")
|
|
86
|
+
}
|
|
84
87
|
buffer.replace(0, buffer.length, text)
|
|
85
88
|
highlightPosition = 0.0
|
|
86
89
|
}
|
|
@@ -97,6 +100,10 @@ class HybridMarkdownSession : HybridMarkdownSessionSpec() {
|
|
|
97
100
|
synchronized(lock) {
|
|
98
101
|
val start = from.toLong().coerceIn(0L, buffer.length.toLong()).toInt()
|
|
99
102
|
val end = to.toLong().coerceIn(start.toLong(), buffer.length.toLong()).toInt()
|
|
103
|
+
val newSize = buffer.length - (end - start) + text.length
|
|
104
|
+
if (newSize > MAX_BUFFER_SIZE) {
|
|
105
|
+
throw IllegalArgumentException("Buffer size limit exceeded (max $MAX_BUFFER_SIZE chars)")
|
|
106
|
+
}
|
|
100
107
|
buffer.replace(start, end, text)
|
|
101
108
|
newLength = buffer.length.toDouble()
|
|
102
109
|
notifyFrom = start.toDouble()
|
|
@@ -132,7 +139,7 @@ class HybridMarkdownSession : HybridMarkdownSessionSpec() {
|
|
|
132
139
|
super.dispose()
|
|
133
140
|
}
|
|
134
141
|
|
|
135
|
-
//
|
|
142
|
+
// The C++ generated file (JHybridMarkdownSessionSpec.cpp) is marked DO NOT MODIFY and
|
|
136
143
|
// cannot be edited. However, fbjni (used by Nitro) automatically propagates Java/Kotlin
|
|
137
144
|
// exceptions thrown across the JNI boundary as C++ exceptions. Therefore, an
|
|
138
145
|
// IllegalArgumentException thrown in append() will be rethrown on the C++ side without
|
|
@@ -2,6 +2,8 @@ import Foundation
|
|
|
2
2
|
import NitroModules
|
|
3
3
|
|
|
4
4
|
class HybridMarkdownSession: HybridMarkdownSessionSpec {
|
|
5
|
+
private static let maxBufferSize = 10 * 1024 * 1024
|
|
6
|
+
|
|
5
7
|
private var buffer = ""
|
|
6
8
|
private var listeners: [UUID: (Double, Double) -> Void] = [:]
|
|
7
9
|
private let lock = NSLock()
|
|
@@ -23,6 +25,18 @@ class HybridMarkdownSession: HybridMarkdownSessionSpec {
|
|
|
23
25
|
return (value as NSString).length
|
|
24
26
|
}
|
|
25
27
|
|
|
28
|
+
private func validateBufferSize(_ size: Int) throws {
|
|
29
|
+
if size > Self.maxBufferSize {
|
|
30
|
+
throw NSError(
|
|
31
|
+
domain: "NitroMarkdown",
|
|
32
|
+
code: 1,
|
|
33
|
+
userInfo: [
|
|
34
|
+
NSLocalizedDescriptionKey: "Buffer size limit exceeded (max \(Self.maxBufferSize) chars)"
|
|
35
|
+
]
|
|
36
|
+
)
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
26
40
|
func append(chunk: String) throws -> Double {
|
|
27
41
|
let notifyFrom: Double
|
|
28
42
|
let notifyTo: Double
|
|
@@ -30,6 +44,7 @@ class HybridMarkdownSession: HybridMarkdownSessionSpec {
|
|
|
30
44
|
lock.lock()
|
|
31
45
|
defer { lock.unlock() }
|
|
32
46
|
let fromInt = utf16Length(buffer)
|
|
47
|
+
try validateBufferSize(fromInt + utf16Length(chunk))
|
|
33
48
|
buffer += chunk
|
|
34
49
|
let toInt = utf16Length(buffer)
|
|
35
50
|
notifyFrom = Double(fromInt)
|
|
@@ -98,6 +113,7 @@ class HybridMarkdownSession: HybridMarkdownSessionSpec {
|
|
|
98
113
|
do {
|
|
99
114
|
lock.lock()
|
|
100
115
|
defer { lock.unlock() }
|
|
116
|
+
try validateBufferSize(utf16Length(text))
|
|
101
117
|
buffer = text
|
|
102
118
|
_highlightPosition = 0
|
|
103
119
|
notifyTo = Double((text as NSString).length)
|
|
@@ -121,6 +137,7 @@ class HybridMarkdownSession: HybridMarkdownSessionSpec {
|
|
|
121
137
|
let length = nsBuffer.length
|
|
122
138
|
start = max(0, min(Int(from), length))
|
|
123
139
|
end = max(start, min(Int(to), length))
|
|
140
|
+
try validateBufferSize(length - (end - start) + utf16Length(text))
|
|
124
141
|
nsBuffer.replaceCharacters(in: NSRange(location: start, length: end - start), with: text)
|
|
125
142
|
buffer = nsBuffer as String
|
|
126
143
|
newLength = Double((buffer as NSString).length)
|
|
@@ -27,11 +27,19 @@ const resolveStreamText = ({
|
|
|
27
27
|
return session.getAllText();
|
|
28
28
|
}
|
|
29
29
|
if (pendingFrom === previousText.length) {
|
|
30
|
-
|
|
31
|
-
|
|
30
|
+
try {
|
|
31
|
+
const appendedChunk = session.getTextRange(pendingFrom, pendingTo);
|
|
32
|
+
return `${previousText}${appendedChunk}`;
|
|
33
|
+
} catch {
|
|
34
|
+
return session.getAllText();
|
|
35
|
+
}
|
|
32
36
|
}
|
|
33
37
|
if (pendingFrom === 0) {
|
|
34
|
-
|
|
38
|
+
try {
|
|
39
|
+
return session.getTextRange(0, pendingTo);
|
|
40
|
+
} catch {
|
|
41
|
+
return session.getAllText();
|
|
42
|
+
}
|
|
35
43
|
}
|
|
36
44
|
return session.getAllText();
|
|
37
45
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_markdown","_incrementalAst","_jsxRuntime","normalizeOffset","value","Number","isFinite","Math","floor","resolveStreamText","forceFullSync","pendingFrom","pendingTo","previousText","session","getAllText","length","appendedChunk","getTextRange","MarkdownStream","updateIntervalMs","updateStrategy","useTransitionUpdates","incrementalParsing","options","plugins","props","parseText","useCallback","text","parseMarkdownAst","createEmptyAst","type","children","initialText","hasBeforeParsePlugins","some","plugin","beforeParse","renderState","setRenderState","useState","ast","renderStateRef","useRef","pendingUpdateRef","pendingFromRef","pendingToRef","forceFullSyncRef","updateTimerRef","rafRef","allowIncremental","useEffect","current","initialState","flushUpdate","cancelAnimationFrame","previousState","latest","nextAst","getNextStreamAst","nextText","previousAst","nextState","startTransition","scheduleFlush","requestAnimationFrame","setTimeout","unsubscribe","addListener","from","to","nextFrom","nextTo","currentFrom","currentTo","min","max","clearTimeout","jsx","Markdown","sourceAst","undefined","exports"],"sourceRoot":"../../src","sources":["markdown-stream.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AASA,IAAAC,SAAA,GAAAD,OAAA;AAEA,IAAAE,eAAA,GAAAF,OAAA;AAA6E,IAAAG,WAAA,GAAAH,OAAA;AAE7E,MAAMI,eAAe,GAAIC,KAAa,IAAoB;EACxD,IAAI,CAACC,MAAM,CAACC,QAAQ,CAACF,KAAK,CAAC,EAAE,OAAO,IAAI;EACxC,IAAIA,KAAK,IAAI,CAAC,EAAE,OAAO,CAAC;EACxB,OAAOG,IAAI,CAACC,KAAK,CAACJ,KAAK,CAAC;AAC1B,CAAC;AAED,MAAMK,iBAAiB,GAAGA,CAAC;EACzBC,aAAa;EACbC,WAAW;EACXC,SAAS;EACTC,YAAY;EACZC;AAOF,CAAC,KAAa;EACZ,IAAIJ,aAAa,IAAIC,WAAW,KAAK,IAAI,IAAIC,SAAS,KAAK,IAAI,EAAE;IAC/D,OAAOE,OAAO,CAACC,UAAU,CAAC,CAAC;EAC7B;EAEA,IAAIH,SAAS,GAAGD,WAAW,EAAE;IAC3B,OAAOG,OAAO,CAACC,UAAU,CAAC,CAAC;EAC7B;EAEA,IAAIJ,WAAW,KAAKE,YAAY,CAACG,MAAM,EAAE;IACvC,MAAMC,aAAa,GAAGH,OAAO,CAACI,YAAY,CAACP,WAAW,EAAEC,SAAS,CAAC;
|
|
1
|
+
{"version":3,"names":["_react","require","_markdown","_incrementalAst","_jsxRuntime","normalizeOffset","value","Number","isFinite","Math","floor","resolveStreamText","forceFullSync","pendingFrom","pendingTo","previousText","session","getAllText","length","appendedChunk","getTextRange","MarkdownStream","updateIntervalMs","updateStrategy","useTransitionUpdates","incrementalParsing","options","plugins","props","parseText","useCallback","text","parseMarkdownAst","createEmptyAst","type","children","initialText","hasBeforeParsePlugins","some","plugin","beforeParse","renderState","setRenderState","useState","ast","renderStateRef","useRef","pendingUpdateRef","pendingFromRef","pendingToRef","forceFullSyncRef","updateTimerRef","rafRef","allowIncremental","useEffect","current","initialState","flushUpdate","cancelAnimationFrame","previousState","latest","nextAst","getNextStreamAst","nextText","previousAst","nextState","startTransition","scheduleFlush","requestAnimationFrame","setTimeout","unsubscribe","addListener","from","to","nextFrom","nextTo","currentFrom","currentTo","min","max","clearTimeout","jsx","Markdown","sourceAst","undefined","exports"],"sourceRoot":"../../src","sources":["markdown-stream.tsx"],"mappings":"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","ignoreList":[]}
|
package/lib/commonjs/markdown.js
CHANGED
|
@@ -295,6 +295,9 @@ const Markdown = ({
|
|
|
295
295
|
windowSize: virtualization?.windowSize ?? 10,
|
|
296
296
|
updateCellsBatchingPeriod: virtualization?.updateCellsBatchingPeriod ?? 16,
|
|
297
297
|
removeClippedSubviews: virtualization?.removeClippedSubviews ?? true,
|
|
298
|
+
bounces: false,
|
|
299
|
+
alwaysBounceVertical: false,
|
|
300
|
+
overScrollMode: "never",
|
|
298
301
|
showsVerticalScrollIndicator: false
|
|
299
302
|
}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(NodeRenderer, {
|
|
300
303
|
node: parseResult.ast,
|
|
@@ -405,6 +408,9 @@ const NodeRendererComponent = ({
|
|
|
405
408
|
...(node.type === "code_inline" && {
|
|
406
409
|
content: node.content ?? ""
|
|
407
410
|
}),
|
|
411
|
+
...((node.type === "math_inline" || node.type === "math_block") && {
|
|
412
|
+
content: (0, _headless.getTextContent)(node)
|
|
413
|
+
}),
|
|
408
414
|
...(node.type === "list" && {
|
|
409
415
|
ordered: node.ordered ?? false,
|
|
410
416
|
start: node.start
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","_reactNative","_headless","_MarkdownContext","_blockquote","_code","_heading","_horizontalRule","_image","_link","_list","_math","_paragraph","_table","_theme","_jsxRuntime","hashString","str","hash","i","length","char","charCodeAt","ERROR_PHASE","PARSE","BEFORE_PLUGIN","AFTER_PLUGIN","safeOnError","onError","error","phase","pluginName","Error","String","callbackError","__DEV__","console","warn","baseStylesCache","WeakMap","parseAstCache","Map","MAX_PARSE_CACHE_ENTRIES","MAX_CACHEABLE_TEXT_LENGTH","EMPTY_RENDERERS","isMarkdownNode","value","Reflect","get","warnInDev","message","runtimeConsole","globalThis","cloneMarkdownNode","node","children","map","getParserOptionsKey","options","gfm","undefined","math","html","normalizeParserOptions","parseWithNativeParser","text","parseMarkdownWithOptions","parseMarkdown","getCachedParsedAst","cacheKey","cachedEntry","delete","set","ast","parsedNode","size","oldestCacheKey","keys","next","sortPluginsByPriority","plugins","sort","a","b","priority","applyBeforeParsePlugins","markdown","sortedPlugins","nextMarkdown","plugin","beforeParse","transformed","pluginLabel","name","applyAfterParsePlugins","nextAst","afterParse","Markdown","sourceAst","parseCache","astTransform","renderers","theme","userTheme","styles","nodeStyles","stylingStrategy","style","onParsingInProgress","onParseComplete","onLinkPress","virtualize","virtualizationMinBlocks","virtualization","tableOptions","highlightCode","parserOptionGfm","parserOptionMath","parserOptionHtml","onErrorRef","useRef","current","parseResult","useMemo","markdownToParse","parserOptions","parsedAst","parseError","useEffect","raw","getFlattenedText","base","minimalMarkdownTheme","defaultMarkdownTheme","mergeThemes","baseStyles","getBaseStyles","contextValue","topLevelBlocks","type","shouldVirtualizeBySetting","shouldVirtualize","keyExtractor","useCallback","index","beg","end","renderVirtualizedItem","item","jsx","NodeRenderer","depth","inListItem","View","container","Text","errorText","MarkdownContext","Provider","FlatList","data","renderItem","virtualizedList","initialNumToRender","maxToRenderPerBatch","windowSize","updateCellsBatchingPeriod","removeClippedSubviews","showsVerticalScrollIndicator","exports","isInline","NodeRendererComponent","parentIsText","useMarkdownContext","renderChildren","childInListItem","childParentIsText","elements","currentInlineGroup","flushInlineGroup","hasMath","some","child","push","flexDirection","alignItems","flexWrap","flexShrink","n","idx","Wrapper","Fragment","wrapperProps","forEach","customRenderer","childrenRendered","baseProps","Renderer","enhancedProps","level","href","title","url","alt","content","getTextContent","language","ordered","start","checked","result","document","Heading","heading","Paragraph","paragraph","bold","italic","strikethrough","Link","link","Image","image","InlineCode","code_inline","CodeBlock","code_block","Blockquote","blockquote","HorizontalRule","horizontal_rule","mathContent","replace","trim","MathInline","math_inline","MathBlock","math_block","List","list","ListItem","TaskListItem","task_list_item","TableRenderer","table","memo","previousProps","nextProps","cached","created","createBaseStyles","StyleSheet","create","width","maxWidth","flex","color","fontSize","fontFamily","fontFamilies","mono","Platform","OS","includeFontPadding","colors","fontSizes","m","lineHeight","regular","fontWeight","fontStyle","textDecorationLine"],"sourceRoot":"../../src","sources":["markdown.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","_headless","_MarkdownContext","_blockquote","_code","_heading","_horizontalRule","_image","_link","_list","_math","_paragraph","_table","_theme","_jsxRuntime","hashString","str","hash","i","length","char","charCodeAt","ERROR_PHASE","PARSE","BEFORE_PLUGIN","AFTER_PLUGIN","safeOnError","onError","error","phase","pluginName","Error","String","callbackError","__DEV__","console","warn","baseStylesCache","WeakMap","parseAstCache","Map","MAX_PARSE_CACHE_ENTRIES","MAX_CACHEABLE_TEXT_LENGTH","EMPTY_RENDERERS","isMarkdownNode","value","Reflect","get","warnInDev","message","runtimeConsole","globalThis","cloneMarkdownNode","node","children","map","getParserOptionsKey","options","gfm","undefined","math","html","normalizeParserOptions","parseWithNativeParser","text","parseMarkdownWithOptions","parseMarkdown","getCachedParsedAst","cacheKey","cachedEntry","delete","set","ast","parsedNode","size","oldestCacheKey","keys","next","sortPluginsByPriority","plugins","sort","a","b","priority","applyBeforeParsePlugins","markdown","sortedPlugins","nextMarkdown","plugin","beforeParse","transformed","pluginLabel","name","applyAfterParsePlugins","nextAst","afterParse","Markdown","sourceAst","parseCache","astTransform","renderers","theme","userTheme","styles","nodeStyles","stylingStrategy","style","onParsingInProgress","onParseComplete","onLinkPress","virtualize","virtualizationMinBlocks","virtualization","tableOptions","highlightCode","parserOptionGfm","parserOptionMath","parserOptionHtml","onErrorRef","useRef","current","parseResult","useMemo","markdownToParse","parserOptions","parsedAst","parseError","useEffect","raw","getFlattenedText","base","minimalMarkdownTheme","defaultMarkdownTheme","mergeThemes","baseStyles","getBaseStyles","contextValue","topLevelBlocks","type","shouldVirtualizeBySetting","shouldVirtualize","keyExtractor","useCallback","index","beg","end","renderVirtualizedItem","item","jsx","NodeRenderer","depth","inListItem","View","container","Text","errorText","MarkdownContext","Provider","FlatList","data","renderItem","virtualizedList","initialNumToRender","maxToRenderPerBatch","windowSize","updateCellsBatchingPeriod","removeClippedSubviews","bounces","alwaysBounceVertical","overScrollMode","showsVerticalScrollIndicator","exports","isInline","NodeRendererComponent","parentIsText","useMarkdownContext","renderChildren","childInListItem","childParentIsText","elements","currentInlineGroup","flushInlineGroup","hasMath","some","child","push","flexDirection","alignItems","flexWrap","flexShrink","n","idx","Wrapper","Fragment","wrapperProps","forEach","customRenderer","childrenRendered","baseProps","Renderer","enhancedProps","level","href","title","url","alt","content","getTextContent","language","ordered","start","checked","result","document","Heading","heading","Paragraph","paragraph","bold","italic","strikethrough","Link","link","Image","image","InlineCode","code_inline","CodeBlock","code_block","Blockquote","blockquote","HorizontalRule","horizontal_rule","mathContent","replace","trim","MathInline","math_inline","MathBlock","math_block","List","list","ListItem","TaskListItem","task_list_item","TableRenderer","table","memo","previousProps","nextProps","cached","created","createBaseStyles","StyleSheet","create","width","maxWidth","flex","color","fontSize","fontFamily","fontFamilies","mono","Platform","OS","includeFontPadding","colors","fontSizes","m","lineHeight","regular","fontWeight","fontStyle","textDecorationLine"],"sourceRoot":"../../src","sources":["markdown.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAWA,IAAAC,YAAA,GAAAD,OAAA;AAWA,IAAAE,SAAA,GAAAF,OAAA;AAQA,IAAAG,gBAAA,GAAAH,OAAA;AAOA,IAAAI,WAAA,GAAAJ,OAAA;AACA,IAAAK,KAAA,GAAAL,OAAA;AACA,IAAAM,QAAA,GAAAN,OAAA;AACA,IAAAO,eAAA,GAAAP,OAAA;AACA,IAAAQ,MAAA,GAAAR,OAAA;AACA,IAAAS,KAAA,GAAAT,OAAA;AACA,IAAAU,KAAA,GAAAV,OAAA;AACA,IAAAW,KAAA,GAAAX,OAAA;AACA,IAAAY,UAAA,GAAAZ,OAAA;AACA,IAAAa,MAAA,GAAAb,OAAA;AACA,IAAAc,MAAA,GAAAd,OAAA;AAQiB,IAAAe,WAAA,GAAAf,OAAA;AAGjB,SAASgB,UAAUA,CAACC,GAAW,EAAU;EACvC,IAAIC,IAAI,GAAG,CAAC;EACZ,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGF,GAAG,CAACG,MAAM,EAAED,CAAC,EAAE,EAAE;IACnC,MAAME,IAAI,GAAGJ,GAAG,CAACK,UAAU,CAACH,CAAC,CAAC;IAC9BD,IAAI,GAAG,CAACA,IAAI,IAAI,CAAC,IAAIA,IAAI,GAAGG,IAAI;IAChCH,IAAI,GAAGA,IAAI,GAAGA,IAAI,CAAC,CAAC;EACtB;EACA,OAAOA,IAAI;AACb;AAEA,MAAMK,WAAW,GAAG;EAClBC,KAAK,EAAE,OAAO;EACdC,aAAa,EAAE,eAAe;EAC9BC,YAAY,EAAE;AAChB,CAAU;;AAEV;AACA;AACA;AACA;AACA,SAASC,WAAWA,CAClBC,OAA4E,EAC5EC,KAAc,EACdC,KAAQ,EACRC,UAAmB,EACb;EACN,IAAI;IACFH,OAAO,GACLC,KAAK,YAAYG,KAAK,GAAGH,KAAK,GAAG,IAAIG,KAAK,CAACC,MAAM,CAACJ,KAAK,CAAC,CAAC,EACzDC,KAAK,EACLC,UACF,CAAC;EACH,CAAC,CAAC,OAAOG,aAAa,EAAE;IACtB,IAAIC,OAAO,EAAE;MACX;MACAC,OAAO,CAACC,IAAI,CACV,sDAAsD,EACtDH,aACF,CAAC;IACH;EACF;AACF;AAEA,MAAMI,eAAe,GAAG,IAAIC,OAAO,CAA4B,CAAC;AAMhE,MAAMC,aAAa,GAAG,IAAIC,GAAG,CAA6B,CAAC;AAC3D,MAAMC,uBAAuB,GAAG,EAAE;AAClC,MAAMC,yBAAyB,GAAG,MAAM;AACxC,MAAMC,eAAgC,GAAG,CAAC,CAAC;AAoC3C,MAAMC,cAAc,GAAIC,KAAc,IAA4B;EAChE,IAAI,OAAOA,KAAK,KAAK,QAAQ,IAAIA,KAAK,KAAK,IAAI,EAAE,OAAO,KAAK;EAC7D,OAAO,OAAOC,OAAO,CAACC,GAAG,CAACF,KAAK,EAAE,MAAM,CAAC,KAAK,QAAQ;AACvD,CAAC;AAED,MAAMG,SAAS,GAAGA,CAACC,OAAe,EAAErB,KAAe,KAAW;EAC5D,IAAI,OAAOM,OAAO,KAAK,WAAW,IAAI,CAACA,OAAO,EAAE;EAEhD,MAAMgB,cAAc,GAAGJ,OAAO,CAACC,GAAG,CAACI,UAAU,EAAE,SAAS,CAAC;EACzD,IACE,OAAOD,cAAc,KAAK,QAAQ,IAClCA,cAAc,KAAK,IAAI,IACvB,MAAM,IAAIA,cAAc,IACxB,OAAOA,cAAc,CAACd,IAAI,KAAK,UAAU,EACzC;IACAc,cAAc,CAACd,IAAI,CAACa,OAAO,EAAErB,KAAK,CAAC;EACrC;AACF,CAAC;AAED,MAAMwB,iBAAiB,GAAIC,IAAkB,IAAmB;EAC9D,OAAO;IACL,GAAGA,IAAI;IACPC,QAAQ,EAAED,IAAI,CAACC,QAAQ,EAAEC,GAAG,CAACH,iBAAiB;EAChD,CAAC;AACH,CAAC;AAED,MAAMI,mBAAmB,GAAIC,OAAuB,IAAa;EAC/D,IAAI,CAACA,OAAO,EAAE,OAAO,uCAAuC;EAE5D,MAAMC,GAAG,GAAGD,OAAO,CAACC,GAAG,KAAKC,SAAS,GAAG,SAAS,GAAGF,OAAO,CAACC,GAAG,GAAG,GAAG,GAAG,GAAG;EAC3E,MAAME,IAAI,GACRH,OAAO,CAACG,IAAI,KAAKD,SAAS,GAAG,SAAS,GAAGF,OAAO,CAACG,IAAI,GAAG,GAAG,GAAG,GAAG;EACnE,MAAMC,IAAI,GACRJ,OAAO,CAACI,IAAI,KAAKF,SAAS,GAAG,SAAS,GAAGF,OAAO,CAACI,IAAI,GAAG,GAAG,GAAG,GAAG;EACnE,OAAO,OAAOH,GAAG,SAASE,IAAI,SAASC,IAAI,EAAE;AAC/C,CAAC;AAED,MAAMC,sBAAsB,GAC1BL,OAAuB,IACO;EAC9B,IAAI,CAACA,OAAO,EAAE,OAAOE,SAAS;EAE9B,MAAMD,GAAG,GAAGD,OAAO,CAACC,GAAG;EACvB,MAAME,IAAI,GAAGH,OAAO,CAACG,IAAI;EACzB,MAAMC,IAAI,GAAGJ,OAAO,CAACI,IAAI;EAEzB,IAAIH,GAAG,KAAKC,SAAS,IAAIC,IAAI,KAAKD,SAAS,IAAIE,IAAI,KAAKF,SAAS,EAAE;IACjE,OAAOA,SAAS;EAClB;EAEA,OAAO;IACLD,GAAG;IACHE,IAAI;IACJC;EACF,CAAC;AACH,CAAC;AAED,MAAME,qBAAqB,GAAGA,CAC5BC,IAAY,EACZP,OAAuB,KACN;EACjB,IAAIA,OAAO,EAAE;IACX,OAAO,IAAAQ,kCAAwB,EAACD,IAAI,EAAEP,OAAO,CAAC;EAChD;EACA,OAAO,IAAAS,uBAAa,EAACF,IAAI,CAAC;AAC5B,CAAC;AAED,MAAMG,kBAAkB,GAAGA,CACzBH,IAAY,EACZP,OAAuB,KACN;EACjB,IAAIO,IAAI,CAAC7C,MAAM,GAAGuB,yBAAyB,EAAE;IAC3C,OAAOqB,qBAAqB,CAACC,IAAI,EAAEP,OAAO,CAAC;EAC7C;EAEA,MAAMW,QAAQ,GAAG,GAAGZ,mBAAmB,CAACC,OAAO,CAAC,IAAIO,IAAI,CAAC7C,MAAM,IAAIJ,UAAU,CAACiD,IAAI,CAAC,EAAE;EACrF,MAAMK,WAAW,GAAG9B,aAAa,CAACQ,GAAG,CAACqB,QAAQ,CAAC;EAC/C,IAAIC,WAAW,EAAEL,IAAI,KAAKA,IAAI,EAAE;IAC9BzB,aAAa,CAAC+B,MAAM,CAACF,QAAQ,CAAC;IAC9B7B,aAAa,CAACgC,GAAG,CAACH,QAAQ,EAAEC,WAAW,CAAC;IACxC,OAAOjB,iBAAiB,CAACiB,WAAW,CAACG,GAAG,CAAC;EAC3C;EAEA,MAAMC,UAAU,GAAGV,qBAAqB,CAACC,IAAI,EAAEP,OAAO,CAAC;EACvDlB,aAAa,CAACgC,GAAG,CAACH,QAAQ,EAAE;IAC1BJ,IAAI;IACJQ,GAAG,EAAEC;EACP,CAAC,CAAC;EACF,IAAIlC,aAAa,CAACmC,IAAI,GAAGjC,uBAAuB,EAAE;IAChD,MAAMkC,cAAc,GAAGpC,aAAa,CAACqC,IAAI,CAAC,CAAC,CAACC,IAAI,CAAC,CAAC,CAAChC,KAAK;IACxD,IAAI,OAAO8B,cAAc,KAAK,QAAQ,EAAE;MACtCpC,aAAa,CAAC+B,MAAM,CAACK,cAAc,CAAC;IACtC;EACF;EAEA,OAAOvB,iBAAiB,CAACqB,UAAU,CAAC;AACtC,CAAC;AAED,MAAMK,qBAAqB,GACzBC,OAA0B,IACO;EACjC,IAAI,CAACA,OAAO,IAAIA,OAAO,CAAC5D,MAAM,KAAK,CAAC,EAAE;IACpC,OAAOwC,SAAS;EAClB;EAEA,OAAO,CAAC,GAAGoB,OAAO,CAAC,CAACC,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAK,CAACA,CAAC,CAACC,QAAQ,IAAI,CAAC,KAAKF,CAAC,CAACE,QAAQ,IAAI,CAAC,CAAC,CAAC;AAC3E,CAAC;AAED,MAAMC,uBAAuB,GAAGA,CAC9BC,QAAgB,EAChBC,aAAgC,EAChC3D,OAA6E,KAClE;EACX,IAAI,CAAC2D,aAAa,IAAIA,aAAa,CAACnE,MAAM,KAAK,CAAC,EAAE;IAChD,OAAOkE,QAAQ;EACjB;EAEA,IAAIE,YAAY,GAAGF,QAAQ;EAC3B,KAAK,MAAMG,MAAM,IAAIF,aAAa,EAAE;IAClC,IAAI,CAACE,MAAM,CAACC,WAAW,EAAE;IAEzB,IAAI;MACF,MAAMC,WAAW,GAAGF,MAAM,CAACC,WAAW,CAACF,YAAY,CAAC;MACpD,IAAI,OAAOG,WAAW,KAAK,QAAQ,EAAE;QACnCH,YAAY,GAAGG,WAAW;MAC5B;IACF,CAAC,CAAC,OAAO9D,KAAK,EAAE;MACd,MAAM+D,WAAW,GAAGH,MAAM,CAACI,IAAI,GAAG,KAAKJ,MAAM,CAACI,IAAI,GAAG,GAAG,EAAE;MAC1D5C,SAAS,CACP,mDAAmD2C,WAAW,kCAAkC,EAChG/D,KACF,CAAC;MACDF,WAAW,CAACC,OAAO,EAAEC,KAAK,EAAEN,WAAW,CAACE,aAAa,EAAEgE,MAAM,CAACI,IAAI,CAAC;IACrE;EACF;EAEA,OAAOL,YAAY;AACrB,CAAC;AAED,MAAMM,sBAAsB,GAAGA,CAC7BrB,GAAiB,EACjBc,aAAgC,EAChC3D,OAA4E,KAC3D;EACjB,IAAI,CAAC2D,aAAa,IAAIA,aAAa,CAACnE,MAAM,KAAK,CAAC,EAAE;IAChD,OAAOqD,GAAG;EACZ;EAEA,IAAIsB,OAAO,GAAGtB,GAAG;EACjB,KAAK,MAAMgB,MAAM,IAAIF,aAAa,EAAE;IAClC,IAAI,CAACE,MAAM,CAACO,UAAU,EAAE;IAExB,IAAI;MACF,MAAML,WAAW,GAAGF,MAAM,CAACO,UAAU,CAACD,OAAO,CAAC;MAC9C,IAAIlD,cAAc,CAAC8C,WAAW,CAAC,EAAE;QAC/BI,OAAO,GAAGJ,WAAW;MACvB;IACF,CAAC,CAAC,OAAO9D,KAAK,EAAE;MACd,MAAM+D,WAAW,GAAGH,MAAM,CAACI,IAAI,GAAG,KAAKJ,MAAM,CAACI,IAAI,GAAG,GAAG,EAAE;MAC1D5C,SAAS,CACP,kDAAkD2C,WAAW,6BAA6B,EAC1F/D,KACF,CAAC;MACDF,WAAW,CAACC,OAAO,EAAEC,KAAK,EAAEN,WAAW,CAACG,YAAY,EAAE+D,MAAM,CAACI,IAAI,CAAC;IACpE;EACF;EAEA,OAAOE,OAAO;AAChB,CAAC;AA6HM,MAAME,QAA2B,GAAGA,CAAC;EAC1C1C,QAAQ;EACRG,OAAO;EACPsB,OAAO;EACPkB,SAAS;EACTC,UAAU,GAAG,IAAI;EACjBC,YAAY;EACZC,SAAS,GAAGzD,eAAe;EAC3B0D,KAAK,EAAEC,SAAS;EAChBC,MAAM,EAAEC,UAAU;EAClBC,eAAe,GAAG,aAAa;EAC/BC,KAAK;EACLC,mBAAmB;EACnBC,eAAe;EACfC,WAAW;EACXlF,OAAO;EACPmF,UAAU,GAAG,KAAK;EAClBC,uBAAuB,GAAG,EAAE;EAC5BC,cAAc;EACdC,YAAY;EACZC;AACF,CAAC,KAAK;EACJ,MAAMC,eAAe,GAAG1D,OAAO,EAAEC,GAAG;EACpC,MAAM0D,gBAAgB,GAAG3D,OAAO,EAAEG,IAAI;EACtC,MAAMyD,gBAAgB,GAAG5D,OAAO,EAAEI,IAAI;;EAEtC;EACA,MAAMyD,UAAU,GAAG,IAAAC,aAAM,EAAC5F,OAAO,CAAC;EAClC2F,UAAU,CAACE,OAAO,GAAG7F,OAAO;EAE5B,MAAM8F,WAAW,GAAG,IAAAC,cAAO,EAAC,MAAM;IAChC,IAAI;MACF,MAAMpC,aAAa,GAAGR,qBAAqB,CAACC,OAAO,CAAC;MACpD,MAAM4C,eAAe,GAAG1B,SAAS,GAC7B3C,QAAQ,GACR8B,uBAAuB,CAAC9B,QAAQ,EAAEgC,aAAa,EAAEgC,UAAU,CAACE,OAAO,CAAC;MACxE,MAAMI,aAAa,GAAG9D,sBAAsB,CAAC;QAC3CJ,GAAG,EAAEyD,eAAe;QACpBvD,IAAI,EAAEwD,gBAAgB;QACtBvD,IAAI,EAAEwD;MACR,CAAC,CAAC;MACF,IAAIQ,SAAS,GAAG5B,SAAS,GACrB7C,iBAAiB,CAAC6C,SAAS,CAAC,GAC5BC,UAAU,GACR/B,kBAAkB,CAACwD,eAAe,EAAEC,aAAa,CAAC,GAClD7D,qBAAqB,CAAC4D,eAAe,EAAEC,aAAa,CAAC;MAC3DC,SAAS,GAAGhC,sBAAsB,CAChCgC,SAAS,EACTvC,aAAa,EACbgC,UAAU,CAACE,OACb,CAAC;MAED,IAAIhD,GAAG,GAAGqD,SAAS;MACnB,IAAI1B,YAAY,EAAE;QAChB,IAAI;UACF,MAAML,OAAO,GAAGK,YAAY,CAAC0B,SAAS,CAAC;UACvC,IAAIjF,cAAc,CAACkD,OAAO,CAAC,EAAE;YAC3BtB,GAAG,GAAGsB,OAAO;UACf;QACF,CAAC,CAAC,OAAOlE,KAAK,EAAE;UACdoB,SAAS,CACP,+EAA+E,EAC/EpB,KACF,CAAC;UACD4C,GAAG,GAAGqD,SAAS;QACjB;MACF;MAEA,OAAO;QACLrD;MACF,CAAC;IACH,CAAC,CAAC,OAAOsD,UAAU,EAAE;MACnBpG,WAAW,CAAC4F,UAAU,CAACE,OAAO,EAAEM,UAAU,EAAExG,WAAW,CAACC,KAAK,CAAC;MAC9D,OAAO;QACLiD,GAAG,EAAE;MACP,CAAC;IACH;EACF,CAAC,EAAE,CACDlB,QAAQ,EACR6D,eAAe,EACfC,gBAAgB,EAChBC,gBAAgB,EAChBpB,SAAS,EACTC,UAAU,EACVC,YAAY,EACZpB,OAAO,CACR,CAAC;EACF;;EAEA,IAAAgD,gBAAS,EAAC,MAAM;IACdpB,mBAAmB,GAAG,CAAC;EACzB,CAAC,EAAE,CACDrD,QAAQ,EACR6D,eAAe,EACfC,gBAAgB,EAChBC,gBAAgB,EAChBV,mBAAmB,CACpB,CAAC;EAEF,IAAAoB,gBAAS,EAAC,MAAM;IACd,IAAI,CAACN,WAAW,CAACjD,GAAG,IAAI,CAACoC,eAAe,EAAE;IAE1CA,eAAe,CAAC;MACdoB,GAAG,EAAE1E,QAAQ;MACbkB,GAAG,EAAEiD,WAAW,CAACjD,GAAG;MACpBR,IAAI,EAAE,IAAAiE,0BAAgB,EAACR,WAAW,CAACjD,GAAG;IACxC,CAAC,CAAC;EACJ,CAAC,EAAE,CAAClB,QAAQ,EAAEsD,eAAe,EAAEa,WAAW,CAACjD,GAAG,CAAC,CAAC;EAEhD,MAAM6B,KAAK,GAAG,IAAAqB,cAAO,EAAC,MAAM;IAC1B,MAAMQ,IAAI,GACRzB,eAAe,KAAK,SAAS,GACzB0B,2BAAoB,GACpBC,2BAAoB;IAC1B,OAAO,IAAAC,kBAAW,EAACH,IAAI,EAAE5B,SAAS,CAAC;EACrC,CAAC,EAAE,CAACA,SAAS,EAAEG,eAAe,CAAC,CAAC;EAEhC,MAAM6B,UAAU,GAAGC,aAAa,CAAClC,KAAK,CAAC;EACvC,MAAMmC,YAAY,GAAG,IAAAd,cAAO,EAC1B,OAAO;IACLtB,SAAS;IACTC,KAAK;IACLE,MAAM,EAAEC,UAAU;IAClBC,eAAe;IACfI,WAAW;IACXI,YAAY;IACZC;EACF,CAAC,CAAC,EACF,CACEd,SAAS,EACTC,KAAK,EACLG,UAAU,EACVC,eAAe,EACfI,WAAW,EACXI,YAAY,EACZC,aAAa,CAEjB,CAAC;EAED,MAAMuB,cAAc,GAClBhB,WAAW,CAACjD,GAAG,EAAEkE,IAAI,KAAK,UAAU,GAC/BjB,WAAW,CAACjD,GAAG,CAAClB,QAAQ,IAAI,EAAE,GAC/BmE,WAAW,CAACjD,GAAG,GACb,CAACiD,WAAW,CAACjD,GAAG,CAAC,GACjB,EAAE;EACV,MAAMmE,yBAAyB,GAC7B7B,UAAU,KAAK,IAAI,IAClBA,UAAU,KAAK,MAAM,IAAI2B,cAAc,CAACtH,MAAM,IAAI4F,uBAAwB;EAC7E,MAAM6B,gBAAgB,GACpBnB,WAAW,CAACjD,GAAG,KAAK,IAAI,IAAImE,yBAAyB;EAEvD,MAAME,YAAY,GAAG,IAAAC,kBAAW,EAAC,CAACzF,IAAkB,EAAE0F,KAAa,KAAK;IACtE,MAAMC,GAAG,GAAG,OAAO3F,IAAI,CAAC2F,GAAG,KAAK,QAAQ,GAAG3F,IAAI,CAAC2F,GAAG,GAAGD,KAAK;IAC3D,MAAME,GAAG,GAAG,OAAO5F,IAAI,CAAC4F,GAAG,KAAK,QAAQ,GAAG5F,IAAI,CAAC4F,GAAG,GAAGF,KAAK;IAC3D,OAAO,GAAG1F,IAAI,CAACqF,IAAI,IAAIM,GAAG,IAAIC,GAAG,IAAIF,KAAK,EAAE;EAC9C,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMG,qBAAqB,GAAG,IAAAJ,kBAAW,EACvC,CAAC;IAAEK;EAAuC,CAAC,kBACzC,IAAArI,WAAA,CAAAsI,GAAA,EAACC,YAAY;IAAChG,IAAI,EAAE8F,IAAK;IAACG,KAAK,EAAE,CAAE;IAACC,UAAU,EAAE;EAAM,CAAE,CACzD,EACD,EACF,CAAC;EAED,IAAI,CAAC9B,WAAW,CAACjD,GAAG,EAAE;IACpB,oBACE,IAAA1D,WAAA,CAAAsI,GAAA,EAACpJ,YAAA,CAAAwJ,IAAI;MAAC9C,KAAK,EAAE,CAAC4B,UAAU,CAACmB,SAAS,EAAE/C,KAAK,CAAE;MAAApD,QAAA,eACzC,IAAAxC,WAAA,CAAAsI,GAAA,EAACpJ,YAAA,CAAA0J,IAAI;QAAChD,KAAK,EAAE4B,UAAU,CAACqB,SAAU;QAAArG,QAAA,EAAC;MAAsB,CAAM;IAAC,CAC5D,CAAC;EAEX;EAEA,oBACE,IAAAxC,WAAA,CAAAsI,GAAA,EAAClJ,gBAAA,CAAA0J,eAAe,CAACC,QAAQ;IAAChH,KAAK,EAAE2F,YAAa;IAAAlF,QAAA,eAC5C,IAAAxC,WAAA,CAAAsI,GAAA,EAACpJ,YAAA,CAAAwJ,IAAI;MAAC9C,KAAK,EAAE,CAAC4B,UAAU,CAACmB,SAAS,EAAE/C,KAAK,CAAE;MAAApD,QAAA,EACxCsF,gBAAgB,gBACf,IAAA9H,WAAA,CAAAsI,GAAA,EAACpJ,YAAA,CAAA8J,QAAQ;QACPC,IAAI,EAAEtB,cAAe;QACrBuB,UAAU,EAAEd,qBAAsB;QAClCL,YAAY,EAAEA,YAAa;QAC3BnC,KAAK,EAAE4B,UAAU,CAAC2B,eAAgB;QAClCC,kBAAkB,EAAElD,cAAc,EAAEkD,kBAAkB,IAAI,EAAG;QAC7DC,mBAAmB,EAAEnD,cAAc,EAAEmD,mBAAmB,IAAI,EAAG;QAC/DC,UAAU,EAAEpD,cAAc,EAAEoD,UAAU,IAAI,EAAG;QAC7CC,yBAAyB,EACvBrD,cAAc,EAAEqD,yBAAyB,IAAI,EAC9C;QACDC,qBAAqB,EACnBtD,cAAc,EAAEsD,qBAAqB,IAAI,IAC1C;QACDC,OAAO,EAAE,KAAM;QACfC,oBAAoB,EAAE,KAAM;QAC5BC,cAAc,EAAC,OAAO;QACtBC,4BAA4B,EAAE;MAAM,CACrC,CAAC,gBAEF,IAAA5J,WAAA,CAAAsI,GAAA,EAACC,YAAY;QAAChG,IAAI,EAAEoE,WAAW,CAACjD,GAAI;QAAC8E,KAAK,EAAE,CAAE;QAACC,UAAU,EAAE;MAAM,CAAE;IACpE,CACG;EAAC,CACiB,CAAC;AAE/B,CAAC;AAACoB,OAAA,CAAA3E,QAAA,GAAAA,QAAA;AAEF,MAAM4E,QAAQ,GAAIlC,IAA0B,IAAc;EACxD,OACEA,IAAI,KAAK,MAAM,IACfA,IAAI,KAAK,MAAM,IACfA,IAAI,KAAK,QAAQ,IACjBA,IAAI,KAAK,eAAe,IACxBA,IAAI,KAAK,MAAM,IACfA,IAAI,KAAK,aAAa,IACtBA,IAAI,KAAK,YAAY,IACrBA,IAAI,KAAK,YAAY,IACrBA,IAAI,KAAK,aAAa,IACtBA,IAAI,KAAK,aAAa;AAE1B,CAAC;AAED,MAAMmC,qBAA4C,GAAGA,CAAC;EACpDxH,IAAI;EACJiG,KAAK;EACLC,UAAU;EACVuB,YAAY,GAAG;AACjB,CAAC,KAAK;EACJ,MAAM;IAAE1E,SAAS;IAAEC,KAAK;IAAEE,MAAM,EAAEC;EAAW,CAAC,GAAG,IAAAuE,mCAAkB,EAAC,CAAC;EACrE,MAAMzC,UAAU,GAAGC,aAAa,CAAClC,KAAK,CAAC;EAEvC,MAAM2E,cAAc,GAAGA,CACrB1H,QAAyB,EACzB2H,eAAe,GAAG,KAAK,EACvBC,iBAAiB,GAAG,KAAK,KACX;IACd,IAAI,CAAC5H,QAAQ,IAAIA,QAAQ,CAACnC,MAAM,KAAK,CAAC,EAAE,OAAO,IAAI;IAEnD,MAAMgK,QAAqB,GAAG,EAAE;IAChC,IAAIC,kBAAkC,GAAG,EAAE;IAE3C,MAAMC,gBAAgB,GAAGA,CAAA,KAAM;MAC7B,IAAID,kBAAkB,CAACjK,MAAM,GAAG,CAAC,EAAE;QACjC,MAAMmK,OAAO,GAAGF,kBAAkB,CAACG,IAAI,CACpCC,KAAK,IAAKA,KAAK,CAAC9C,IAAI,KAAK,aAC5B,CAAC;QAED,IAAI4C,OAAO,IAAI,CAACJ,iBAAiB,EAAE;UACjCC,QAAQ,CAACM,IAAI,cACX,IAAA3K,WAAA,CAAAsI,GAAA,EAACpJ,YAAA,CAAAwJ,IAAI;YAEH9C,KAAK,EAAE;cACLgF,aAAa,EAAE,KAAK;cACpBC,UAAU,EAAE,QAAQ;cACpBC,QAAQ,EAAE,MAAM;cAChBC,UAAU,EAAE;YACd,CAAE;YAAAvI,QAAA,EAED8H,kBAAkB,CAAC7H,GAAG,CAAC,CAACuI,CAAC,EAAEC,GAAG,kBAC7B,IAAAjL,WAAA,CAAAsI,GAAA,EAACC,YAAY;cAEXhG,IAAI,EAAEyI,CAAE;cACRxC,KAAK,EAAEA,KAAK,GAAG,CAAE;cACjBC,UAAU,EAAE0B,eAAgB;cAC5BH,YAAY,EAAE;YAAM,GAJf,GAAGgB,CAAC,CAACpD,IAAI,IAAIqD,GAAG,EAKtB,CACF;UAAC,GAhBG,gBAAgBZ,QAAQ,CAAChK,MAAM,EAiBhC,CACR,CAAC;QACH,CAAC,MAAM;UACL,MAAM6K,OAAO,GAAGd,iBAAiB,GAAGe,eAAQ,GAAGvC,iBAAI;UACnD,MAAMwC,YAAY,GAAGhB,iBAAiB,GAClC,CAAC,CAAC,GACF;YAAExE,KAAK,EAAE4B,UAAU,CAACtE;UAAK,CAAC;UAE9BmH,QAAQ,CAACM,IAAI,cACX,IAAA3K,WAAA,CAAAsI,GAAA,EAAC4C,OAAO;YAAA,GAA6CE,YAAY;YAAA5I,QAAA,EAC9D8H,kBAAkB,CAAC7H,GAAG,CAAC,CAACuI,CAAC,EAAEC,GAAG,kBAC7B,IAAAjL,WAAA,CAAAsI,GAAA,EAACC,YAAY;cAEXhG,IAAI,EAAEyI,CAAE;cACRxC,KAAK,EAAEA,KAAK,GAAG,CAAE;cACjBC,UAAU,EAAE0B,eAAgB;cAC5BH,YAAY,EAAE;YAAK,GAJd,GAAGgB,CAAC,CAACpD,IAAI,IAAIqD,GAAG,EAKtB,CACF;UAAC,GATU,gBAAgBZ,QAAQ,CAAChK,MAAM,EAUpC,CACX,CAAC;QACH;QACAiK,kBAAkB,GAAG,EAAE;MACzB;IACF,CAAC;IAED9H,QAAQ,CAAC6I,OAAO,CAAC,CAACX,KAAK,EAAEzC,KAAK,KAAK;MACjC,IAAI6B,QAAQ,CAACY,KAAK,CAAC9C,IAAI,CAAC,EAAE;QACxB0C,kBAAkB,CAACK,IAAI,CAACD,KAAK,CAAC;MAChC,CAAC,MAAM;QACLH,gBAAgB,CAAC,CAAC;QAClBF,QAAQ,CAACM,IAAI,cACX,IAAA3K,WAAA,CAAAsI,GAAA,EAACC,YAAY;UAEXhG,IAAI,EAAEmI,KAAM;UACZlC,KAAK,EAAEA,KAAK,GAAG,CAAE;UACjBC,UAAU,EAAE0B,eAAgB;UAC5BH,YAAY,EAAEI;QAAkB,GAJ3B,GAAGM,KAAK,CAAC9C,IAAI,IAAIK,KAAK,EAK5B,CACH,CAAC;MACH;IACF,CAAC,CAAC;IAEFsC,gBAAgB,CAAC,CAAC;IAClB,OAAOF,QAAQ;EACjB,CAAC;EAED,MAAMiB,cAAc,GAAGhG,SAAS,CAAC/C,IAAI,CAACqF,IAAI,CAAC;EAC3C,IAAI0D,cAAc,EAAE;IAClB,MAAMC,gBAAgB,GAAGrB,cAAc,CACrC3H,IAAI,CAACC,QAAQ,EACbiG,UAAU,EACVuB,YACF,CAAC;IAED,MAAMwB,SAAS,GAAG;MAChBjJ,IAAI;MACJC,QAAQ,EAAE+I,gBAAgB;MAC1BE,QAAQ,EAAElD;IACZ,CAAC;IAED,MAAMmD,aAAa,GAAG;MACpB,GAAGF,SAAS;MACZ,IAAIjJ,IAAI,CAACqF,IAAI,KAAK,SAAS,IAAI;QAC7B+D,KAAK,EAAGpJ,IAAI,CAACoJ,KAAK,IAAI;MACxB,CAAC,CAAC;MACF,IAAIpJ,IAAI,CAACqF,IAAI,KAAK,MAAM,IAAI;QAAEgE,IAAI,EAAErJ,IAAI,CAACqJ,IAAI,IAAI,EAAE;QAAEC,KAAK,EAAEtJ,IAAI,CAACsJ;MAAM,CAAC,CAAC;MACzE,IAAItJ,IAAI,CAACqF,IAAI,KAAK,OAAO,IAAI;QAC3BkE,GAAG,EAAEvJ,IAAI,CAACqJ,IAAI,IAAI,EAAE;QACpBG,GAAG,EAAExJ,IAAI,CAACwJ,GAAG;QACbF,KAAK,EAAEtJ,IAAI,CAACsJ;MACd,CAAC,CAAC;MACF,IAAItJ,IAAI,CAACqF,IAAI,KAAK,YAAY,IAAI;QAChCoE,OAAO,EAAE,IAAAC,wBAAc,EAAC1J,IAAI,CAAC;QAC7B2J,QAAQ,EAAE3J,IAAI,CAAC2J;MACjB,CAAC,CAAC;MACF,IAAI3J,IAAI,CAACqF,IAAI,KAAK,aAAa,IAAI;QAAEoE,OAAO,EAAEzJ,IAAI,CAACyJ,OAAO,IAAI;MAAG,CAAC,CAAC;MACnE,IAAI,CAACzJ,IAAI,CAACqF,IAAI,KAAK,aAAa,IAAIrF,IAAI,CAACqF,IAAI,KAAK,YAAY,KAAK;QACjEoE,OAAO,EAAE,IAAAC,wBAAc,EAAC1J,IAAI;MAC9B,CAAC,CAAC;MACF,IAAIA,IAAI,CAACqF,IAAI,KAAK,MAAM,IAAI;QAC1BuE,OAAO,EAAE5J,IAAI,CAAC4J,OAAO,IAAI,KAAK;QAC9BC,KAAK,EAAE7J,IAAI,CAAC6J;MACd,CAAC,CAAC;MACF,IAAI7J,IAAI,CAACqF,IAAI,KAAK,gBAAgB,IAAI;QAAEyE,OAAO,EAAE9J,IAAI,CAAC8J,OAAO,IAAI;MAAM,CAAC;IAC1E,CAAC;IAED,MAAMC,MAAM,GAAGhB,cAAc,CAACI,aAAa,CAAC;IAC5C,IAAIY,MAAM,KAAKzJ,SAAS,EAAE;MACxB,OAAOyJ,MAAM;IACf;EACF;EAEA,QAAQ/J,IAAI,CAACqF,IAAI;IACf,KAAK,UAAU;MACb,oBACE,IAAA5H,WAAA,CAAAsI,GAAA,EAACpJ,YAAA,CAAAwJ,IAAI;QAAC9C,KAAK,EAAE,CAAC4B,UAAU,CAAC+E,QAAQ,EAAE7G,UAAU,EAAE6G,QAAQ,CAAE;QAAA/J,QAAA,EACtD0H,cAAc,CAAC3H,IAAI,CAACC,QAAQ,EAAE,KAAK,EAAE,KAAK;MAAC,CACxC,CAAC;IAGX,KAAK,SAAS;MACZ,oBACE,IAAAxC,WAAA,CAAAsI,GAAA,EAAC/I,QAAA,CAAAiN,OAAO;QAACb,KAAK,EAAEpJ,IAAI,CAACoJ,KAAK,IAAI,CAAE;QAAC/F,KAAK,EAAEF,UAAU,EAAE+G,OAAQ;QAAAjK,QAAA,EACzD0H,cAAc,CAAC3H,IAAI,CAACC,QAAQ,EAAEiG,UAAU,EAAE,IAAI;MAAC,CACzC,CAAC;IAGd,KAAK,WAAW;MACd,oBACE,IAAAzI,WAAA,CAAAsI,GAAA,EAACzI,UAAA,CAAA6M,SAAS;QAACjE,UAAU,EAAEA,UAAW;QAAC7C,KAAK,EAAEF,UAAU,EAAEiH,SAAU;QAAAnK,QAAA,EAC7D0H,cAAc,CAAC3H,IAAI,CAACC,QAAQ,EAAEiG,UAAU,EAAE,KAAK;MAAC,CACxC,CAAC;IAGhB,KAAK,MAAM;MACT,IAAIuB,YAAY,EAAE;QAChB,oBAAO,IAAAhK,WAAA,CAAAsI,GAAA,EAACpJ,YAAA,CAAA0J,IAAI;UAAApG,QAAA,EAAED,IAAI,CAACyJ;QAAO,CAAO,CAAC;MACpC;MACA,oBACE,IAAAhM,WAAA,CAAAsI,GAAA,EAACpJ,YAAA,CAAA0J,IAAI;QAAChD,KAAK,EAAE,CAAC4B,UAAU,CAACtE,IAAI,EAAEwC,UAAU,EAAExC,IAAI,CAAE;QAAAV,QAAA,EAAED,IAAI,CAACyJ;MAAO,CAAO,CAAC;IAG3E,KAAK,MAAM;MACT,oBACE,IAAAhM,WAAA,CAAAsI,GAAA,EAACpJ,YAAA,CAAA0J,IAAI;QAAChD,KAAK,EAAE,CAAC4B,UAAU,CAACoF,IAAI,EAAElH,UAAU,EAAEkH,IAAI,CAAE;QAAApK,QAAA,EAC9C0H,cAAc,CAAC3H,IAAI,CAACC,QAAQ,EAAEiG,UAAU,EAAE,IAAI;MAAC,CAC5C,CAAC;IAGX,KAAK,QAAQ;MACX,oBACE,IAAAzI,WAAA,CAAAsI,GAAA,EAACpJ,YAAA,CAAA0J,IAAI;QAAChD,KAAK,EAAE,CAAC4B,UAAU,CAACqF,MAAM,EAAEnH,UAAU,EAAEmH,MAAM,CAAE;QAAArK,QAAA,EAClD0H,cAAc,CAAC3H,IAAI,CAACC,QAAQ,EAAEiG,UAAU,EAAE,IAAI;MAAC,CAC5C,CAAC;IAGX,KAAK,eAAe;MAClB,oBACE,IAAAzI,WAAA,CAAAsI,GAAA,EAACpJ,YAAA,CAAA0J,IAAI;QAAChD,KAAK,EAAE,CAAC4B,UAAU,CAACsF,aAAa,EAAEpH,UAAU,EAAEoH,aAAa,CAAE;QAAAtK,QAAA,EAChE0H,cAAc,CAAC3H,IAAI,CAACC,QAAQ,EAAEiG,UAAU,EAAE,IAAI;MAAC,CAC5C,CAAC;IAGX,KAAK,MAAM;MACT,oBACE,IAAAzI,WAAA,CAAAsI,GAAA,EAAC5I,KAAA,CAAAqN,IAAI;QAACnB,IAAI,EAAErJ,IAAI,CAACqJ,IAAI,IAAI,EAAG;QAAChG,KAAK,EAAEF,UAAU,EAAEsH,IAAK;QAAAxK,QAAA,EAClD0H,cAAc,CAAC3H,IAAI,CAACC,QAAQ,EAAEiG,UAAU,EAAE,IAAI;MAAC,CAC5C,CAAC;IAGX,KAAK,OAAO;MACV,oBACE,IAAAzI,WAAA,CAAAsI,GAAA,EAAC7I,MAAA,CAAAwN,KAAK;QACJnB,GAAG,EAAEvJ,IAAI,CAACqJ,IAAI,IAAI,EAAG;QACrBC,KAAK,EAAEtJ,IAAI,CAACsJ,KAAM;QAClBE,GAAG,EAAExJ,IAAI,CAACwJ,GAAI;QACdN,QAAQ,EAAElD,YAAa;QACvB3C,KAAK,EAAEF,UAAU,EAAEwH;MAAM,CAC1B,CAAC;IAGN,KAAK,aAAa;MAChB,oBACE,IAAAlN,WAAA,CAAAsI,GAAA,EAAChJ,KAAA,CAAA6N,UAAU;QAACvH,KAAK,EAAEF,UAAU,EAAE0H,WAAY;QAAA5K,QAAA,EAAED,IAAI,CAACyJ;MAAO,CAAa,CAAC;IAG3E,KAAK,YAAY;MACf,oBACE,IAAAhM,WAAA,CAAAsI,GAAA,EAAChJ,KAAA,CAAA+N,SAAS;QACRnB,QAAQ,EAAE3J,IAAI,CAAC2J,QAAS;QACxBF,OAAO,EAAE,IAAAC,wBAAc,EAAC1J,IAAI,CAAE;QAC9BqD,KAAK,EAAEF,UAAU,EAAE4H;MAAW,CAC/B,CAAC;IAGN,KAAK,YAAY;MACf,oBACE,IAAAtN,WAAA,CAAAsI,GAAA,EAACjJ,WAAA,CAAAkO,UAAU;QAAC3H,KAAK,EAAEF,UAAU,EAAE8H,UAAW;QAAAhL,QAAA,EACvC0H,cAAc,CAAC3H,IAAI,CAACC,QAAQ,EAAEiG,UAAU,EAAE,KAAK;MAAC,CACvC,CAAC;IAGjB,KAAK,iBAAiB;MACpB,oBAAO,IAAAzI,WAAA,CAAAsI,GAAA,EAAC9I,eAAA,CAAAiO,cAAc;QAAC7H,KAAK,EAAEF,UAAU,EAAEgI;MAAgB,CAAE,CAAC;IAE/D,KAAK,YAAY;MACf,oBAAO,IAAA1N,WAAA,CAAAsI,GAAA,EAACpJ,YAAA,CAAA0J,IAAI;QAAApG,QAAA,EAAE;MAAI,CAAO,CAAC;IAE5B,KAAK,YAAY;MACf,oBAAO,IAAAxC,WAAA,CAAAsI,GAAA,EAACpJ,YAAA,CAAA0J,IAAI;QAAApG,QAAA,EAAC;MAAC,CAAM,CAAC;IAEvB,KAAK,aAAa;MAAE;QAClB,IAAImL,WAAW,GAAG,IAAA1B,wBAAc,EAAC1J,IAAI,CAAC;QACtC,IAAI,CAACoL,WAAW,EAAE,OAAO,IAAI;QAC7BA,WAAW,GAAGA,WAAW,CAACC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAACC,IAAI,CAAC,CAAC;QAC1D,oBACE,IAAA7N,WAAA,CAAAsI,GAAA,EAAC1I,KAAA,CAAAkO,UAAU;UAAC9B,OAAO,EAAE2B,WAAY;UAAC/H,KAAK,EAAEF,UAAU,EAAEqI;QAAY,CAAE,CAAC;MAExE;IAEA,KAAK,YAAY;MACf,oBACE,IAAA/N,WAAA,CAAAsI,GAAA,EAAC1I,KAAA,CAAAoO,SAAS;QACRhC,OAAO,EAAE,IAAAC,wBAAc,EAAC1J,IAAI,CAAE;QAC9BqD,KAAK,EAAEF,UAAU,EAAEuI;MAAW,CAC/B,CAAC;IAGN,KAAK,MAAM;MACT,oBACE,IAAAjO,WAAA,CAAAsI,GAAA,EAAC3I,KAAA,CAAAuO,IAAI;QACH/B,OAAO,EAAE5J,IAAI,CAAC4J,OAAO,IAAI,KAAM;QAC/BC,KAAK,EAAE7J,IAAI,CAAC6J,KAAM;QAClB5D,KAAK,EAAEA,KAAM;QACb5C,KAAK,EAAEF,UAAU,EAAEyI,IAAK;QAAA3L,QAAA,EAEvBD,IAAI,CAACC,QAAQ,EAAEC,GAAG,CAAC,CAACiI,KAAK,EAAEzC,KAAK,KAAK;UACpC,IAAIyC,KAAK,CAAC9C,IAAI,KAAK,gBAAgB,EAAE;YACnC,oBACE,IAAA5H,WAAA,CAAAsI,GAAA,EAACC,YAAY;cAEXhG,IAAI,EAAEmI,KAAM;cACZlC,KAAK,EAAEA,KAAK,GAAG,CAAE;cACjBC,UAAU,EAAE,IAAK;cACjBuB,YAAY,EAAE;YAAM,GAJf/B,KAKN,CAAC;UAEN;UACA,oBACE,IAAAjI,WAAA,CAAAsI,GAAA,EAAC3I,KAAA,CAAAyO,QAAQ;YAEPnG,KAAK,EAAEA,KAAM;YACbkE,OAAO,EAAE5J,IAAI,CAAC4J,OAAO,IAAI,KAAM;YAC/BC,KAAK,EAAE7J,IAAI,CAAC6J,KAAK,IAAI,CAAE;YAAA5J,QAAA,eAEvB,IAAAxC,WAAA,CAAAsI,GAAA,EAACC,YAAY;cACXhG,IAAI,EAAEmI,KAAM;cACZlC,KAAK,EAAEA,KAAK,GAAG,CAAE;cACjBC,UAAU,EAAE,IAAK;cACjBuB,YAAY,EAAE;YAAM,CACrB;UAAC,GAVG/B,KAWG,CAAC;QAEf,CAAC;MAAC,CACE,CAAC;IAGX,KAAK,WAAW;MACd,oBAAO,IAAAjI,WAAA,CAAAsI,GAAA,EAAAtI,WAAA,CAAAmL,QAAA;QAAA3I,QAAA,EAAG0H,cAAc,CAAC3H,IAAI,CAACC,QAAQ,EAAE,IAAI,EAAE,KAAK;MAAC,CAAG,CAAC;IAE1D,KAAK,gBAAgB;MACnB,oBACE,IAAAxC,WAAA,CAAAsI,GAAA,EAAC3I,KAAA,CAAA0O,YAAY;QACXhC,OAAO,EAAE9J,IAAI,CAAC8J,OAAO,IAAI,KAAM;QAC/BzG,KAAK,EAAEF,UAAU,EAAE4I,cAAe;QAAA9L,QAAA,EAEjC0H,cAAc,CAAC3H,IAAI,CAACC,QAAQ,EAAE,IAAI,EAAE,KAAK;MAAC,CAC/B,CAAC;IAGnB,KAAK,OAAO;MACV,oBACE,IAAAxC,WAAA,CAAAsI,GAAA,EAACxI,MAAA,CAAAyO,aAAa;QACZhM,IAAI,EAAEA,IAAK;QACXkJ,QAAQ,EAAElD,YAAa;QACvB3C,KAAK,EAAEF,UAAU,EAAE8I;MAAM,CAC1B,CAAC;IAGN,KAAK,YAAY;IACjB,KAAK,YAAY;IACjB,KAAK,WAAW;IAChB,KAAK,YAAY;MACf,OAAO,IAAI;IAEb;MACE,OAAO,IAAI;EACf;AACF,CAAC;AAED,MAAMjG,YAAY,gBAAG,IAAAkG,WAAI,EAAC1E,qBAAqB,EAAE,CAAC2E,aAAa,EAAEC,SAAS,KAAK;EAC7E,OACED,aAAa,CAACnM,IAAI,KAAKoM,SAAS,CAACpM,IAAI,IACrCmM,aAAa,CAAClG,KAAK,KAAKmG,SAAS,CAACnG,KAAK,IACvCkG,aAAa,CAACjG,UAAU,KAAKkG,SAAS,CAAClG,UAAU,IACjDiG,aAAa,CAAC1E,YAAY,KAAK2E,SAAS,CAAC3E,YAAY;AAEzD,CAAC,CAA0B;AAI3B,MAAMvC,aAAa,GAAIlC,KAAoB,IAAiB;EAC1D,MAAMqJ,MAAM,GAAGrN,eAAe,CAACU,GAAG,CAACsD,KAAK,CAAC;EACzC,IAAIqJ,MAAM,EAAE,OAAOA,MAAM;EAEzB,MAAMC,OAAO,GAAGC,gBAAgB,CAACvJ,KAAK,CAAC;EACvChE,eAAe,CAACkC,GAAG,CAAC8B,KAAK,EAAEsJ,OAAO,CAAC;EACnC,OAAOA,OAAO;AAChB,CAAC;AAED,MAAMC,gBAAgB,GAAIvJ,KAAoB,IAC5CwJ,uBAAU,CAACC,MAAM,CAAC;EAChBrG,SAAS,EAAE;IACTsG,KAAK,EAAE,MAAM;IACbC,QAAQ,EAAE,MAAM;IAChBnE,UAAU,EAAE;EACd,CAAC;EACD5B,eAAe,EAAE;IACfgG,IAAI,EAAE;EACR,CAAC;EACD5C,QAAQ,EAAE;IACR0C,KAAK,EAAE,MAAM;IACbC,QAAQ,EAAE,MAAM;IAChBnE,UAAU,EAAE;EACd,CAAC;EACDlC,SAAS,EAAE;IACTuG,KAAK,EAAE,SAAS;IAChBC,QAAQ,EAAE,EAAE;IACZC,UAAU,EAAE/J,KAAK,CAACgK,YAAY,CAACC,IAAI,IAAI,WAAW;IAClD,IAAIC,qBAAQ,CAACC,EAAE,KAAK,SAAS,IAAI;MAAEC,kBAAkB,EAAE;IAAM,CAAC;EAChE,CAAC;EACDzM,IAAI,EAAE;IACJkM,KAAK,EAAE7J,KAAK,CAACqK,MAAM,CAAC1M,IAAI;IACxBmM,QAAQ,EAAE9J,KAAK,CAACsK,SAAS,CAACC,CAAC;IAC3BC,UAAU,EAAExK,KAAK,CAACsK,SAAS,CAACC,CAAC,GAAG,GAAG;IACnCR,UAAU,EAAE/J,KAAK,CAACgK,YAAY,CAACS,OAAO;IACtC,IAAIP,qBAAQ,CAACC,EAAE,KAAK,SAAS,IAAI;MAAEC,kBAAkB,EAAE;IAAM,CAAC;EAChE,CAAC;EACD/C,IAAI,EAAE;IACJqD,UAAU,EAAE,KAAK;IACjB,IAAIR,qBAAQ,CAACC,EAAE,KAAK,SAAS,IAAI;MAAEC,kBAAkB,EAAE;IAAM,CAAC;EAChE,CAAC;EACD9C,MAAM,EAAE;IACNqD,SAAS,EAAE,QAAQ;IACnB,IAAIT,qBAAQ,CAACC,EAAE,KAAK,SAAS,IAAI;MAAEC,kBAAkB,EAAE;IAAM,CAAC;EAChE,CAAC;EACD7C,aAAa,EAAE;IACbqD,kBAAkB,EAAE,cAAc;IAClC,IAAIV,qBAAQ,CAACC,EAAE,KAAK,SAAS,IAAI;MAAEC,kBAAkB,EAAE;IAAM,CAAC;EAChE;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -9,46 +9,21 @@ var _reactNative = require("react-native");
|
|
|
9
9
|
var _styleCache = require("./style-cache.js");
|
|
10
10
|
var _MarkdownContext = require("../MarkdownContext.js");
|
|
11
11
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
12
|
-
let
|
|
13
|
-
let SvgFromXmlComponent = null;
|
|
14
|
-
let texToSvg = null;
|
|
12
|
+
let RaTeXViewComponent = null;
|
|
15
13
|
try {
|
|
16
14
|
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
17
|
-
const
|
|
18
|
-
|
|
19
|
-
texToSvg = mathJaxModule.texToSvg ?? null;
|
|
20
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
21
|
-
SvgFromXmlComponent = require("react-native-svg").SvgFromXml;
|
|
15
|
+
const ratexModule = require("ratex-react-native");
|
|
16
|
+
RaTeXViewComponent = ratexModule.RaTeXView ?? null;
|
|
22
17
|
} catch {
|
|
23
18
|
if (__DEV__) {
|
|
24
19
|
// eslint-disable-next-line no-console
|
|
25
|
-
console.warn("[NitroMarkdown] react-native
|
|
20
|
+
console.warn("[NitroMarkdown] ratex-react-native not found — math will render as plain text.");
|
|
26
21
|
}
|
|
27
22
|
}
|
|
28
23
|
const mathStylesCache = new WeakMap();
|
|
29
|
-
const
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
return color ? svg.replace(/currentColor/gim, color) : svg;
|
|
33
|
-
}
|
|
34
|
-
function createMathSvg(content, fontSize, color) {
|
|
35
|
-
if (!texToSvg) return null;
|
|
36
|
-
try {
|
|
37
|
-
const xml = colorizeSvg(texToSvg(content, fontSize / 2), color);
|
|
38
|
-
const widthMatch = SVG_WIDTH_PATTERN.exec(xml);
|
|
39
|
-
const heightMatch = SVG_HEIGHT_PATTERN.exec(xml);
|
|
40
|
-
if (!widthMatch || !heightMatch) return null;
|
|
41
|
-
const width = Number.parseFloat(widthMatch[1]);
|
|
42
|
-
const height = Number.parseFloat(heightMatch[1]);
|
|
43
|
-
if (!Number.isFinite(width) || !Number.isFinite(height)) return null;
|
|
44
|
-
return {
|
|
45
|
-
xml,
|
|
46
|
-
width,
|
|
47
|
-
height
|
|
48
|
-
};
|
|
49
|
-
} catch {
|
|
50
|
-
return null;
|
|
51
|
-
}
|
|
24
|
+
const INLINE_DISPLAY_MATH_PATTERN = /\\(?:frac|dfrac|tfrac|sqrt|sum|prod|int|lim|begin|matrix|pmatrix|bmatrix|cases)\b/;
|
|
25
|
+
function getInlineMathFontSize(content, theme) {
|
|
26
|
+
return INLINE_DISPLAY_MATH_PATTERN.test(content) ? theme.fontSizes.xl + 2 : theme.fontSizes.l;
|
|
52
27
|
}
|
|
53
28
|
const HorizontalMathViewport = ({
|
|
54
29
|
children,
|
|
@@ -147,6 +122,10 @@ const createMathStyles = theme => _reactNative.StyleSheet.create({
|
|
|
147
122
|
includeFontPadding: false
|
|
148
123
|
})
|
|
149
124
|
},
|
|
125
|
+
ratexInline: {
|
|
126
|
+
backgroundColor: "transparent",
|
|
127
|
+
flexShrink: 0
|
|
128
|
+
},
|
|
150
129
|
mathBlockContainer: {
|
|
151
130
|
width: "100%",
|
|
152
131
|
maxWidth: "100%",
|
|
@@ -158,7 +137,6 @@ const createMathStyles = theme => _reactNative.StyleSheet.create({
|
|
|
158
137
|
borderRadius: theme.borderRadius.l,
|
|
159
138
|
borderWidth: 1,
|
|
160
139
|
borderColor: theme.colors.border,
|
|
161
|
-
// Ensure we don't collapse if MathJax fails to report size immediately
|
|
162
140
|
minHeight: 48,
|
|
163
141
|
overflow: "hidden"
|
|
164
142
|
},
|
|
@@ -173,10 +151,8 @@ const createMathStyles = theme => _reactNative.StyleSheet.create({
|
|
|
173
151
|
alignItems: "center",
|
|
174
152
|
justifyContent: "center"
|
|
175
153
|
},
|
|
176
|
-
|
|
177
|
-
backgroundColor: "transparent"
|
|
178
|
-
},
|
|
179
|
-
mathBlockSvgFrame: {
|
|
154
|
+
ratexBlock: {
|
|
155
|
+
backgroundColor: "transparent",
|
|
180
156
|
flexShrink: 0
|
|
181
157
|
},
|
|
182
158
|
mathBlockFallbackContainer: {
|
|
@@ -214,19 +190,20 @@ const MathInline = ({
|
|
|
214
190
|
theme
|
|
215
191
|
} = (0, _MarkdownContext.useMarkdownContext)();
|
|
216
192
|
const styles = (0, _styleCache.getCachedStyles)(mathStylesCache, theme, createMathStyles);
|
|
193
|
+
const [hasRenderError, setHasRenderError] = (0, _react.useState)(false);
|
|
217
194
|
if (!content) return null;
|
|
218
|
-
if (
|
|
219
|
-
const fontSize = theme.fontSizes.s;
|
|
195
|
+
if (RaTeXViewComponent && !hasRenderError) {
|
|
220
196
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
221
197
|
style: [styles.mathInlineContainer, style],
|
|
222
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
223
|
-
|
|
198
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(RaTeXViewComponent, {
|
|
199
|
+
latex: content,
|
|
200
|
+
fontSize: getInlineMathFontSize(content, theme),
|
|
201
|
+
displayMode: false,
|
|
224
202
|
color: theme.colors.text,
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
}
|
|
229
|
-
children: content
|
|
203
|
+
style: styles.ratexInline,
|
|
204
|
+
onError: () => {
|
|
205
|
+
setHasRenderError(true);
|
|
206
|
+
}
|
|
230
207
|
})
|
|
231
208
|
});
|
|
232
209
|
}
|
|
@@ -247,45 +224,23 @@ const MathBlock = ({
|
|
|
247
224
|
theme
|
|
248
225
|
} = (0, _MarkdownContext.useMarkdownContext)();
|
|
249
226
|
const styles = (0, _styleCache.getCachedStyles)(mathStylesCache, theme, createMathStyles);
|
|
227
|
+
const [hasRenderError, setHasRenderError] = (0, _react.useState)(false);
|
|
250
228
|
if (!content) return null;
|
|
251
|
-
|
|
252
|
-
const blockSvg = SvgFromXmlComponent && createMathSvg(displayContent, theme.fontSizes.l, theme.colors.text);
|
|
253
|
-
if (blockSvg && SvgFromXmlComponent) {
|
|
254
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
255
|
-
style: [styles.mathBlockContainer, style],
|
|
256
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(HorizontalMathViewport, {
|
|
257
|
-
style: styles.mathBlockScroll,
|
|
258
|
-
contentStyle: styles.mathBlockScrollContent,
|
|
259
|
-
contentWidth: blockSvg.width,
|
|
260
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
261
|
-
style: [styles.mathBlockSvgFrame, {
|
|
262
|
-
width: blockSvg.width,
|
|
263
|
-
height: blockSvg.height
|
|
264
|
-
}],
|
|
265
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(SvgFromXmlComponent, {
|
|
266
|
-
xml: blockSvg.xml,
|
|
267
|
-
width: blockSvg.width,
|
|
268
|
-
height: blockSvg.height,
|
|
269
|
-
style: styles.mathBlockSvg
|
|
270
|
-
})
|
|
271
|
-
})
|
|
272
|
-
})
|
|
273
|
-
});
|
|
274
|
-
}
|
|
275
|
-
if (MathJaxComponent) {
|
|
229
|
+
if (RaTeXViewComponent && !hasRenderError) {
|
|
276
230
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
277
231
|
style: [styles.mathBlockContainer, style],
|
|
278
232
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(HorizontalMathViewport, {
|
|
279
233
|
style: styles.mathBlockScroll,
|
|
280
234
|
contentStyle: styles.mathBlockScrollContent,
|
|
281
|
-
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(
|
|
282
|
-
|
|
235
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(RaTeXViewComponent, {
|
|
236
|
+
latex: content,
|
|
237
|
+
fontSize: theme.fontSizes.xl,
|
|
238
|
+
displayMode: true,
|
|
283
239
|
color: theme.colors.text,
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
}
|
|
288
|
-
children: displayContent
|
|
240
|
+
style: styles.ratexBlock,
|
|
241
|
+
onError: () => {
|
|
242
|
+
setHasRenderError(true);
|
|
243
|
+
}
|
|
289
244
|
})
|
|
290
245
|
})
|
|
291
246
|
});
|