react-native-enriched-markdown-scaffold 0.7.4-scaffold.9 → 1.0.2-scaffold.10

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.
Files changed (505) hide show
  1. package/README.md +54 -8
  2. package/ReactNativeEnrichedMarkdown.podspec +82 -73
  3. package/android/build.gradle +188 -1
  4. package/android/consumer-rules.pro +1 -1
  5. package/android/generated/java/com/facebook/react/viewmanagers/EnrichedMarkdownManagerDelegate.java +27 -0
  6. package/android/generated/java/com/facebook/react/viewmanagers/EnrichedMarkdownManagerInterface.java +7 -0
  7. package/android/generated/java/com/facebook/react/viewmanagers/EnrichedMarkdownTextInputManagerDelegate.java +24 -0
  8. package/android/generated/java/com/facebook/react/viewmanagers/EnrichedMarkdownTextInputManagerInterface.java +8 -0
  9. package/android/generated/java/com/facebook/react/viewmanagers/EnrichedMarkdownTextManagerDelegate.java +27 -0
  10. package/android/generated/java/com/facebook/react/viewmanagers/EnrichedMarkdownTextManagerInterface.java +7 -0
  11. package/android/generated/jni/react/renderer/components/EnrichedMarkdownTextSpec/EventEmitters.cpp +223 -0
  12. package/android/generated/jni/react/renderer/components/EnrichedMarkdownTextSpec/EventEmitters.h +183 -0
  13. package/android/generated/jni/react/renderer/components/EnrichedMarkdownTextSpec/Props.cpp +65 -0
  14. package/android/generated/jni/react/renderer/components/EnrichedMarkdownTextSpec/Props.h +1086 -61
  15. package/android/src/main/baseline-prof.txt +1 -1
  16. package/android/src/main/cpp/jni-adapter.cpp +74 -0
  17. package/android/src/main/java/com/swmansion/enriched/markdown/EnrichedMarkdown.kt +351 -13
  18. package/android/src/main/java/com/swmansion/enriched/markdown/EnrichedMarkdownInternalText.kt +62 -0
  19. package/android/src/main/java/com/swmansion/enriched/markdown/EnrichedMarkdownManager.kt +85 -0
  20. package/android/src/main/java/com/swmansion/enriched/markdown/EnrichedMarkdownText.kt +160 -1
  21. package/android/src/main/java/com/swmansion/enriched/markdown/EnrichedMarkdownTextLayoutManager.kt +10 -1
  22. package/android/src/main/java/com/swmansion/enriched/markdown/EnrichedMarkdownTextManager.kt +76 -0
  23. package/android/src/main/java/com/swmansion/enriched/markdown/MeasurementStore.kt +126 -10
  24. package/android/src/main/java/com/swmansion/enriched/markdown/events/CopyPressEvent.kt +24 -0
  25. package/android/src/main/java/com/swmansion/enriched/markdown/events/CopyRequestEvent.kt +28 -0
  26. package/android/src/main/java/com/swmansion/enriched/markdown/events/LinkLayoutEvent.kt +36 -0
  27. package/android/src/main/java/com/swmansion/enriched/markdown/events/SelectionChangeEvent.kt +43 -0
  28. package/android/src/main/java/com/swmansion/enriched/markdown/input/EnrichedMarkdownTextInputManager.kt +54 -4
  29. package/android/src/main/java/com/swmansion/enriched/markdown/input/EnrichedMarkdownTextInputView.kt +923 -462
  30. package/android/src/main/java/com/swmansion/enriched/markdown/input/MarkdownClipboard.kt +42 -0
  31. package/android/src/main/java/com/swmansion/enriched/markdown/input/editing/BlockEditCoordinator.kt +196 -0
  32. package/android/src/main/java/com/swmansion/enriched/markdown/input/editing/ClipboardCoordinator.kt +73 -0
  33. package/android/src/main/java/com/swmansion/enriched/markdown/input/editing/EditContext.kt +19 -0
  34. package/android/src/main/java/com/swmansion/enriched/markdown/input/editing/EditPipeline.kt +248 -0
  35. package/android/src/main/java/com/swmansion/enriched/markdown/input/editing/EditSession.kt +52 -0
  36. package/android/src/main/java/com/swmansion/enriched/markdown/input/editing/InputConnectionWrapper.kt +108 -7
  37. package/android/src/main/java/com/swmansion/enriched/markdown/input/editing/LinkCoordinator.kt +69 -0
  38. package/android/src/main/java/com/swmansion/enriched/markdown/input/editing/MarkdownTextWatcher.kt +3 -3
  39. package/android/src/main/java/com/swmansion/enriched/markdown/input/editing/MentionCoordinator.kt +118 -0
  40. package/android/src/main/java/com/swmansion/enriched/markdown/input/events/OnChangeStateEvent.kt +26 -0
  41. package/android/src/main/java/com/swmansion/enriched/markdown/input/events/OnContextMenuItemPressEvent.kt +26 -0
  42. package/android/src/main/java/com/swmansion/enriched/markdown/input/events/OnInputKeyPressEvent.kt +24 -0
  43. package/android/src/main/java/com/swmansion/enriched/markdown/input/events/OnPasteEvent.kt +24 -0
  44. package/android/src/main/java/com/swmansion/enriched/markdown/input/formatting/BlockStore.kt +254 -0
  45. package/android/src/main/java/com/swmansion/enriched/markdown/input/formatting/FormattingStore.kt +80 -87
  46. package/android/src/main/java/com/swmansion/enriched/markdown/input/formatting/InputFormatter.kt +109 -1
  47. package/android/src/main/java/com/swmansion/enriched/markdown/input/formatting/InputParser.kt +116 -22
  48. package/android/src/main/java/com/swmansion/enriched/markdown/input/formatting/MarkdownSerializer.kt +167 -38
  49. package/android/src/main/java/com/swmansion/enriched/markdown/input/formatting/RangeEditAdjustment.kt +149 -0
  50. package/android/src/main/java/com/swmansion/enriched/markdown/input/layout/InputEventEmitter.kt +66 -5
  51. package/android/src/main/java/com/swmansion/enriched/markdown/input/layout/InputMeasurementStore.kt +4 -2
  52. package/android/src/main/java/com/swmansion/enriched/markdown/input/model/BlockRange.kt +27 -0
  53. package/android/src/main/java/com/swmansion/enriched/markdown/input/model/BlockType.kt +48 -0
  54. package/android/src/main/java/com/swmansion/enriched/markdown/input/model/FormattingRange.kt +9 -4
  55. package/android/src/main/java/com/swmansion/enriched/markdown/input/model/InputFormatterStyle.kt +39 -2
  56. package/android/src/main/java/com/swmansion/enriched/markdown/input/model/MathAtom.kt +20 -0
  57. package/android/src/main/java/com/swmansion/enriched/markdown/input/model/MathChipStyle.kt +1 -1
  58. package/android/src/main/java/com/swmansion/enriched/markdown/input/model/MutableRangeBounds.kt +11 -0
  59. package/android/src/main/java/com/swmansion/enriched/markdown/input/spans/InputBulletSpan.kt +82 -0
  60. package/android/src/main/java/com/swmansion/enriched/markdown/input/spans/InputHeadingSpan.kt +58 -0
  61. package/android/src/main/java/com/swmansion/enriched/markdown/input/spans/InputListItemSpacingSpan.kt +37 -0
  62. package/android/src/main/java/com/swmansion/enriched/markdown/input/spans/InputOrderedListMarkerSpan.kt +63 -0
  63. package/android/src/main/java/com/swmansion/enriched/markdown/input/styles/BlockHandler.kt +54 -0
  64. package/android/src/main/java/com/swmansion/enriched/markdown/input/styles/HeadingBlockHandler.kt +27 -0
  65. package/android/src/main/java/com/swmansion/enriched/markdown/input/styles/OrderedListBlockHandler.kt +38 -0
  66. package/android/src/main/java/com/swmansion/enriched/markdown/input/styles/UnorderedListBlockHandler.kt +37 -0
  67. package/android/src/main/java/com/swmansion/enriched/markdown/input/toolbar/InputContextMenu.kt +8 -26
  68. package/android/src/main/java/com/swmansion/enriched/markdown/parser/MarkdownASTNode.kt +1 -0
  69. package/android/src/main/java/com/swmansion/enriched/markdown/parser/Parser.kt +1 -0
  70. package/android/src/main/java/com/swmansion/enriched/markdown/renderer/BlockStyleContext.kt +9 -2
  71. package/android/src/main/java/com/swmansion/enriched/markdown/renderer/BlockquoteRenderer.kt +100 -12
  72. package/android/src/main/java/com/swmansion/enriched/markdown/renderer/CodeBlockRenderer.kt +16 -1
  73. package/android/src/main/java/com/swmansion/enriched/markdown/renderer/HeadingRenderer.kt +4 -0
  74. package/android/src/main/java/com/swmansion/enriched/markdown/renderer/LinkRenderer.kt +37 -7
  75. package/android/src/main/java/com/swmansion/enriched/markdown/renderer/ListContextManager.kt +2 -1
  76. package/android/src/main/java/com/swmansion/enriched/markdown/renderer/ListItemRenderer.kt +74 -18
  77. package/android/src/main/java/com/swmansion/enriched/markdown/renderer/ListRenderer.kt +43 -4
  78. package/android/src/main/java/com/swmansion/enriched/markdown/renderer/NodeRenderer.kt +9 -1
  79. package/android/src/main/java/com/swmansion/enriched/markdown/renderer/SoftBreakRenderer.kt +16 -0
  80. package/android/src/main/java/com/swmansion/enriched/markdown/renderer/SpanStyleCache.kt +35 -28
  81. package/android/src/main/java/com/swmansion/enriched/markdown/spans/BaseListSpan.kt +24 -0
  82. package/android/src/main/java/com/swmansion/enriched/markdown/spans/BlockquoteSpan.kt +174 -24
  83. package/android/src/main/java/com/swmansion/enriched/markdown/spans/CodeBackgroundSpan.kt +20 -82
  84. package/android/src/main/java/com/swmansion/enriched/markdown/spans/CodeBlockSpan.kt +13 -16
  85. package/android/src/main/java/com/swmansion/enriched/markdown/spans/CodeSpan.kt +1 -1
  86. package/android/src/main/java/com/swmansion/enriched/markdown/spans/EmphasisSpan.kt +1 -1
  87. package/android/src/main/java/com/swmansion/enriched/markdown/spans/ImageSpan.kt +182 -46
  88. package/android/src/main/java/com/swmansion/enriched/markdown/spans/InlineChipPainter.kt +140 -0
  89. package/android/src/main/java/com/swmansion/enriched/markdown/spans/LinkChipSpans.kt +177 -0
  90. package/android/src/main/java/com/swmansion/enriched/markdown/spans/LinkSpan.kt +1 -6
  91. package/android/src/main/java/com/swmansion/enriched/markdown/spans/ListItemSpacingSpan.kt +33 -0
  92. package/android/src/main/java/com/swmansion/enriched/markdown/spans/ListMarkerAnchorSpan.kt +38 -0
  93. package/android/src/main/java/com/swmansion/enriched/markdown/spans/OrderedListSpan.kt +2 -0
  94. package/android/src/main/java/com/swmansion/enriched/markdown/spans/StrongSpan.kt +1 -1
  95. package/android/src/main/java/com/swmansion/enriched/markdown/spans/TaskListSpan.kt +3 -2
  96. package/android/src/main/java/com/swmansion/enriched/markdown/spans/UnorderedListSpan.kt +3 -2
  97. package/android/src/main/java/com/swmansion/enriched/markdown/styles/BlockquoteStyle.kt +6 -0
  98. package/android/src/main/java/com/swmansion/enriched/markdown/styles/CodeBlockStyle.kt +26 -0
  99. package/android/src/main/java/com/swmansion/enriched/markdown/styles/ImageStyle.kt +7 -1
  100. package/android/src/main/java/com/swmansion/enriched/markdown/styles/InlineMathStyle.kt +16 -1
  101. package/android/src/main/java/com/swmansion/enriched/markdown/styles/LinkStyle.kt +36 -1
  102. package/android/src/main/java/com/swmansion/enriched/markdown/styles/LinkVariantEntry.kt +7 -3
  103. package/android/src/main/java/com/swmansion/enriched/markdown/styles/ListStyle.kt +4 -1
  104. package/android/src/main/java/com/swmansion/enriched/markdown/styles/MathStyle.kt +3 -0
  105. package/android/src/main/java/com/swmansion/enriched/markdown/styles/StyleConfig.kt +13 -4
  106. package/android/src/main/java/com/swmansion/enriched/markdown/styles/TableStyle.kt +6 -0
  107. package/android/src/main/java/com/swmansion/enriched/markdown/utils/common/CodeBlockHighlighter.kt +90 -0
  108. package/android/src/main/java/com/swmansion/enriched/markdown/utils/common/CodeBlockNode.kt +57 -0
  109. package/android/src/main/java/com/swmansion/enriched/markdown/utils/common/FeatureFlags.kt +1 -0
  110. package/android/src/main/java/com/swmansion/enriched/markdown/utils/common/MarkdownSegment.kt +9 -0
  111. package/android/src/main/java/com/swmansion/enriched/markdown/utils/common/MarkdownViewManagerUtils.kt +84 -7
  112. package/android/src/main/java/com/swmansion/enriched/markdown/utils/common/ReadableMapExtensions.kt +3 -0
  113. package/android/src/main/java/com/swmansion/enriched/markdown/utils/common/RenderedSegment.kt +10 -0
  114. package/android/src/main/java/com/swmansion/enriched/markdown/utils/common/SegmentSignature.kt +1 -0
  115. package/android/src/main/java/com/swmansion/enriched/markdown/utils/common/StreamingMarkdownFilter.kt +83 -5
  116. package/android/src/main/java/com/swmansion/enriched/markdown/utils/common/serialization/MarkdownASTSerializer.kt +4 -0
  117. package/android/src/main/java/com/swmansion/enriched/markdown/utils/input/MarkdownStyleParser.kt +74 -44
  118. package/android/src/main/java/com/swmansion/enriched/markdown/utils/input/PasteTextUtils.kt +52 -0
  119. package/android/src/main/java/com/swmansion/enriched/markdown/utils/text/ImageCache.kt +26 -3
  120. package/android/src/main/java/com/swmansion/enriched/markdown/utils/text/ImageDownloader.kt +22 -9
  121. package/android/src/main/java/com/swmansion/enriched/markdown/utils/text/LocalImageLoader.kt +161 -0
  122. package/android/src/main/java/com/swmansion/enriched/markdown/utils/text/conversion/HTMLGenerator.kt +2 -1
  123. package/android/src/main/java/com/swmansion/enriched/markdown/utils/text/conversion/MarkdownExtractor.kt +6 -0
  124. package/android/src/main/java/com/swmansion/enriched/markdown/utils/text/extensions/TextPaintExtensions.kt +23 -0
  125. package/android/src/main/java/com/swmansion/enriched/markdown/utils/text/interaction/CheckboxTouchHelper.kt +7 -0
  126. package/android/src/main/java/com/swmansion/enriched/markdown/utils/text/interaction/TaskListTapUtils.kt +41 -21
  127. package/android/src/main/java/com/swmansion/enriched/markdown/utils/text/span/BlockSpacing.kt +15 -8
  128. package/android/src/main/java/com/swmansion/enriched/markdown/utils/text/view/HeadlessActionMode.kt +88 -0
  129. package/android/src/main/java/com/swmansion/enriched/markdown/utils/text/view/LinkLayoutCollector.kt +100 -0
  130. package/android/src/main/java/com/swmansion/enriched/markdown/utils/text/view/LinkLongPressMovementMethod.kt +58 -27
  131. package/android/src/main/java/com/swmansion/enriched/markdown/utils/text/view/SelectionActionMode.kt +72 -16
  132. package/android/src/main/java/com/swmansion/enriched/markdown/utils/text/view/SelectionChangeReporter.kt +232 -0
  133. package/android/src/main/java/com/swmansion/enriched/markdown/views/BlockMenuOptions.kt +64 -0
  134. package/android/src/main/java/com/swmansion/enriched/markdown/views/CodeBlockContainerView.kt +414 -0
  135. package/android/src/main/java/com/swmansion/enriched/markdown/views/ContextMenuPopup.kt +9 -6
  136. package/android/src/main/java/com/swmansion/enriched/markdown/views/CopyGlyph.kt +101 -0
  137. package/android/src/main/java/com/swmansion/enriched/markdown/views/TableContainerView.kt +61 -11
  138. package/android/src/main/jni/CMakeLists.txt +53 -0
  139. package/android/src/main/jni/react/renderer/components/EnrichedMarkdownTextSpec/MarkdownContainerShadowNode.cpp +10 -0
  140. package/android/src/main/jni/react/renderer/components/EnrichedMarkdownTextSpec/MarkdownContainerShadowNode.h +11 -2
  141. package/android/src/main/jni/react/renderer/components/EnrichedMarkdownTextSpec/MarkdownTextShadowNode.cpp +10 -0
  142. package/android/src/main/jni/react/renderer/components/EnrichedMarkdownTextSpec/MarkdownTextShadowNode.h +12 -2
  143. package/android/src/main/jni/react/renderer/components/EnrichedMarkdownTextSpec/MarkdownTextState.cpp +9 -0
  144. package/android/src/main/jni/react/renderer/components/EnrichedMarkdownTextSpec/MarkdownTextState.h +24 -0
  145. package/android/src/main/jni/react/renderer/components/EnrichedMarkdownTextSpec/conversions.h +16 -0
  146. package/android/src/math/java/com/swmansion/enriched/markdown/input/math/MathChipControllerImpl.kt +21 -4
  147. package/android/src/math/java/com/swmansion/enriched/markdown/renderer/MathInlineRenderer.kt +8 -2
  148. package/android/src/math/java/com/swmansion/enriched/markdown/spans/MathChipSpan.kt +1 -1
  149. package/android/src/math/java/com/swmansion/enriched/markdown/spans/MathInlineSpan.kt +13 -6
  150. package/android/src/math/java/com/swmansion/enriched/markdown/spans/MathMeasureHelper.kt +2 -1
  151. package/android/src/math/java/com/swmansion/enriched/markdown/views/MathContainerView.kt +26 -8
  152. package/cpp/highlight/CodeBlockHighlighter.cpp +284 -0
  153. package/cpp/highlight/CodeBlockHighlighter.hpp +66 -0
  154. package/cpp/highlight/CodeBlockLanguages.cpp +138 -0
  155. package/cpp/highlight/CodeBlockLanguages.hpp +25 -0
  156. package/cpp/highlight/HighlightGrammars.hpp +28 -0
  157. package/cpp/highlight/code_highlight_podspec.rb +211 -0
  158. package/cpp/highlight/gen-registry.mjs +155 -0
  159. package/cpp/highlight/grammar-versions.json +159 -0
  160. package/cpp/highlight/vendor/generated/generated_queries.h +1665 -0
  161. package/cpp/highlight/vendor/generated/generated_registry.cpp +59 -0
  162. package/cpp/parser/MD4CParser.cpp +173 -61
  163. package/cpp/parser/MD4CParser.hpp +1 -0
  164. package/cpp/parser/MarkdownASTNode.hpp +2 -1
  165. package/cpp/wasm/ASTSerializer.cpp +2 -0
  166. package/cpp/wasm/build.sh +1 -0
  167. package/cpp/wasm/md4c_wasm.cpp +3 -1
  168. package/docs/ACCESSIBILITY.md +14 -2
  169. package/docs/API_REFERENCE.md +405 -12
  170. package/docs/BREAKING_CHANGES.md +129 -0
  171. package/docs/CODE_HIGHLIGHT.md +133 -0
  172. package/docs/COPY_OPTIONS.md +61 -3
  173. package/docs/ELEMENTS_STRUCTURE.md +52 -4
  174. package/docs/IMAGE_CACHING.md +30 -0
  175. package/docs/INPUT.md +110 -11
  176. package/docs/LATEX_MATH.md +87 -45
  177. package/docs/MACOS.md +1 -1
  178. package/docs/MARKDOWN_STREAMING.md +27 -1
  179. package/docs/MENTIONS.md +8 -1
  180. package/docs/NATIVE_ASSETS.md +127 -0
  181. package/docs/RTL.md +1 -1
  182. package/docs/STYLES.md +73 -6
  183. package/docs/TESTING.md +112 -0
  184. package/docs/TEXT.md +18 -6
  185. package/docs/WEB.md +4 -1
  186. package/ios/EnrichedMarkdown.h +7 -0
  187. package/ios/EnrichedMarkdown.mm +583 -76
  188. package/ios/EnrichedMarkdownText.h +7 -0
  189. package/ios/EnrichedMarkdownText.mm +299 -73
  190. package/ios/attachments/ENRMImageAttachment.h +9 -0
  191. package/ios/attachments/ENRMImageAttachment.m +143 -40
  192. package/ios/attachments/ENRMMathInlineAttachment+macOS.m +2 -1
  193. package/ios/attachments/ENRMMathInlineAttachment.h +5 -0
  194. package/ios/attachments/ENRMMathInlineAttachment.m +50 -82
  195. package/ios/attachments/ENRMMathInlineAttachmentShared.h +2 -0
  196. package/ios/generated/ReactCodegen/EnrichedMarkdownTextSpec/EventEmitters.cpp +223 -0
  197. package/ios/generated/ReactCodegen/EnrichedMarkdownTextSpec/EventEmitters.h +183 -0
  198. package/ios/generated/ReactCodegen/EnrichedMarkdownTextSpec/Props.cpp +65 -0
  199. package/ios/generated/ReactCodegen/EnrichedMarkdownTextSpec/Props.h +1086 -61
  200. package/ios/generated/ReactCodegen/EnrichedMarkdownTextSpec/RCTComponentViewHelpers.h +181 -2
  201. package/ios/input/ENRMAutoLinkDetector.h +2 -1
  202. package/ios/input/ENRMAutoLinkDetector.mm +79 -41
  203. package/ios/input/ENRMBlockEditCoordinator.h +71 -0
  204. package/ios/input/ENRMBlockEditCoordinator.mm +195 -0
  205. package/ios/input/ENRMBlockRange.h +28 -0
  206. package/ios/input/ENRMBlockRange.mm +30 -0
  207. package/ios/input/ENRMBlockStore.h +56 -0
  208. package/ios/input/ENRMBlockStore.mm +275 -0
  209. package/ios/input/ENRMClipboardCoordinator.h +45 -0
  210. package/ios/input/ENRMClipboardCoordinator.mm +120 -0
  211. package/ios/input/ENRMDetectorPipeline.h +2 -1
  212. package/ios/input/ENRMEditPipeline.h +76 -0
  213. package/ios/input/ENRMEditPipeline.mm +228 -0
  214. package/ios/input/ENRMEditSession.h +36 -0
  215. package/ios/input/ENRMEditSession.mm +63 -0
  216. package/ios/input/ENRMFormattingStore.h +17 -0
  217. package/ios/input/ENRMFormattingStore.mm +95 -105
  218. package/ios/input/ENRMInputBlockType.h +91 -0
  219. package/ios/input/ENRMInputBlockType.mm +5 -0
  220. package/ios/input/ENRMInputDecorationDrawer.h +18 -0
  221. package/ios/input/ENRMInputEventEmitter.h +56 -0
  222. package/ios/input/ENRMInputEventEmitter.mm +308 -0
  223. package/ios/input/ENRMInputFormatter.h +29 -69
  224. package/ios/input/ENRMInputFormatter.mm +216 -124
  225. package/ios/input/ENRMInputFormatterStyle.h +99 -0
  226. package/ios/input/ENRMInputFormatterStyle.mm +188 -0
  227. package/ios/input/ENRMInputLayoutManager.h +9 -0
  228. package/ios/input/ENRMInputLayoutManager.mm +30 -0
  229. package/ios/input/ENRMInputListMarkerDrawer.h +32 -0
  230. package/ios/input/ENRMInputListMarkerDrawer.mm +426 -0
  231. package/ios/input/ENRMInputParser.h +5 -6
  232. package/ios/input/ENRMInputParser.mm +461 -178
  233. package/ios/input/ENRMInputRemend.mm +2 -2
  234. package/ios/input/ENRMInputStyleStateBuilder.h +40 -0
  235. package/ios/input/ENRMInputStyleStateBuilder.mm +60 -0
  236. package/ios/input/ENRMInputTextView.mm +103 -8
  237. package/ios/input/ENRMInputTypingAttributesController.h +42 -0
  238. package/ios/input/ENRMInputTypingAttributesController.mm +203 -0
  239. package/ios/input/ENRMLinkCoordinator.h +41 -0
  240. package/ios/input/ENRMLinkCoordinator.mm +89 -0
  241. package/ios/input/ENRMMarkdownSerializer.h +29 -5
  242. package/ios/input/ENRMMarkdownSerializer.mm +170 -48
  243. package/ios/input/ENRMMathAtom.h +26 -0
  244. package/ios/input/ENRMMathAtom.mm +12 -0
  245. package/ios/input/ENRMMentionCoordinator.h +45 -0
  246. package/ios/input/ENRMMentionCoordinator.mm +167 -0
  247. package/ios/input/ENRMRangeEditAdjustment.h +38 -0
  248. package/ios/input/ENRMRangeEditAdjustment.mm +91 -0
  249. package/ios/input/ENRMRangeStoreUtils.h +39 -0
  250. package/ios/input/EnrichedMarkdownTextInput+ContextMenu.mm +6 -6
  251. package/ios/input/EnrichedMarkdownTextInput+Internal.h +11 -3
  252. package/ios/input/EnrichedMarkdownTextInput.h +7 -1
  253. package/ios/input/EnrichedMarkdownTextInput.mm +1089 -1023
  254. package/ios/input/InputStylePropsUtils.h +109 -68
  255. package/ios/input/internals/EnrichedMarkdownTextInputShadowNode.mm +2 -1
  256. package/ios/input/styles/ENRMBlockHandler.h +46 -0
  257. package/ios/input/styles/ENRMHeadingBlockHandler.h +15 -0
  258. package/ios/input/styles/ENRMHeadingBlockHandler.mm +38 -0
  259. package/ios/input/styles/ENRMOrderedListBlockHandler.h +14 -0
  260. package/ios/input/styles/ENRMOrderedListBlockHandler.mm +48 -0
  261. package/ios/input/styles/ENRMUnorderedListBlockHandler.h +15 -0
  262. package/ios/input/styles/ENRMUnorderedListBlockHandler.mm +51 -0
  263. package/ios/internals/ENRMViewFreeMeasurement.h +331 -0
  264. package/ios/internals/EnrichedMarkdownShadowNode.h +1 -3
  265. package/ios/internals/EnrichedMarkdownShadowNode.mm +16 -20
  266. package/ios/internals/EnrichedMarkdownTextShadowNode.h +1 -3
  267. package/ios/internals/EnrichedMarkdownTextShadowNode.mm +15 -20
  268. package/ios/internals/MeasurementCache.h +41 -9
  269. package/ios/internals/ShadowMeasurementUtils.h +63 -58
  270. package/ios/math/ENRMMathChipController.h +74 -0
  271. package/ios/math/ENRMMathChipController.mm +476 -0
  272. package/ios/math/ENRMRaTeXBridge.swift +27 -6
  273. package/ios/parser/ENRMMarkdownParser.h +1 -8
  274. package/ios/parser/ENRMMarkdownParser.mm +2 -11
  275. package/ios/parser/MarkdownASTNode.h +2 -1
  276. package/ios/parser/MarkdownParserBridge.mm +4 -0
  277. package/ios/renderer/AttributedRenderer.m +20 -2
  278. package/ios/renderer/BaseRenderer.h +17 -2
  279. package/ios/renderer/BaseRenderer.m +30 -0
  280. package/ios/renderer/BlockquoteRenderer.h +1 -1
  281. package/ios/renderer/BlockquoteRenderer.m +144 -35
  282. package/ios/renderer/CodeBlockRenderer.h +1 -1
  283. package/ios/renderer/CodeBlockRenderer.m +27 -23
  284. package/ios/renderer/CodeRenderer.h +1 -1
  285. package/ios/renderer/CodeRenderer.m +3 -1
  286. package/ios/renderer/ENRMImageRenderer.h +1 -1
  287. package/ios/renderer/ENRMImageRenderer.m +5 -1
  288. package/ios/renderer/ENRMMathInlineRenderer.h +1 -1
  289. package/ios/renderer/ENRMMathInlineRenderer.m +6 -1
  290. package/ios/renderer/ENRMSpoilerRenderer.h +1 -1
  291. package/ios/renderer/ENRMSpoilerRenderer.m +3 -1
  292. package/ios/renderer/EmphasisRenderer.h +1 -1
  293. package/ios/renderer/EmphasisRenderer.m +3 -1
  294. package/ios/renderer/HeadingRenderer.h +1 -1
  295. package/ios/renderer/HeadingRenderer.m +13 -6
  296. package/ios/renderer/HighlightRenderer.h +1 -1
  297. package/ios/renderer/HighlightRenderer.m +3 -1
  298. package/ios/renderer/LinkRenderer.h +1 -1
  299. package/ios/renderer/LinkRenderer.m +50 -16
  300. package/ios/renderer/ListItemRenderer.h +13 -1
  301. package/ios/renderer/ListItemRenderer.m +102 -44
  302. package/ios/renderer/ListRenderer.h +2 -2
  303. package/ios/renderer/ListRenderer.m +63 -25
  304. package/ios/renderer/ParagraphRenderer.h +1 -1
  305. package/ios/renderer/ParagraphRenderer.m +16 -8
  306. package/ios/renderer/RenderContext.h +10 -0
  307. package/ios/renderer/RenderContext.m +44 -0
  308. package/ios/renderer/RendererFactory.m +14 -0
  309. package/ios/renderer/StrikethroughRenderer.h +1 -1
  310. package/ios/renderer/StrikethroughRenderer.m +3 -1
  311. package/ios/renderer/StrongRenderer.h +1 -1
  312. package/ios/renderer/StrongRenderer.m +3 -1
  313. package/ios/renderer/SubscriptRenderer.h +1 -1
  314. package/ios/renderer/SubscriptRenderer.m +3 -1
  315. package/ios/renderer/SuperscriptRenderer.h +1 -1
  316. package/ios/renderer/SuperscriptRenderer.m +3 -1
  317. package/ios/renderer/TextRenderer.h +2 -2
  318. package/ios/renderer/TextRenderer.m +3 -1
  319. package/ios/renderer/ThematicBreakRenderer.h +1 -1
  320. package/ios/renderer/ThematicBreakRenderer.m +3 -1
  321. package/ios/renderer/UnderlineRenderer.h +1 -1
  322. package/ios/renderer/UnderlineRenderer.m +3 -1
  323. package/ios/styles/StyleConfig.h +42 -0
  324. package/ios/styles/StyleConfig.mm +216 -0
  325. package/ios/utils/BlockquoteBorder.h +6 -0
  326. package/ios/utils/BlockquoteBorder.m +249 -52
  327. package/ios/utils/CodeBackground.m +3 -65
  328. package/ios/utils/CodeBlockBackground.m +16 -2
  329. package/ios/utils/ENRMAtomicSize.h +65 -0
  330. package/ios/utils/ENRMBlockMenu.h +66 -0
  331. package/ios/utils/ENRMChipDrawing.h +24 -0
  332. package/ios/utils/ENRMChipDrawing.m +83 -0
  333. package/ios/utils/ENRMCodeBlockContent.h +37 -0
  334. package/ios/utils/ENRMCodeBlockContent.mm +79 -0
  335. package/ios/utils/ENRMCodeBlockHighlighter.h +37 -0
  336. package/ios/utils/ENRMCodeBlockHighlighter.mm +51 -0
  337. package/ios/utils/ENRMFeatureFlags.h +7 -0
  338. package/ios/utils/ENRMImageDownloader.h +11 -1
  339. package/ios/utils/ENRMImageDownloader.m +60 -16
  340. package/ios/utils/ENRMLinkChip.h +70 -0
  341. package/ios/utils/ENRMLinkChip.m +213 -0
  342. package/ios/utils/ENRMLinkLayout.h +50 -0
  343. package/ios/utils/ENRMLinkLayout.m +45 -0
  344. package/ios/utils/ENRMLocalImageLoader.h +31 -0
  345. package/ios/utils/ENRMLocalImageLoader.m +68 -0
  346. package/ios/utils/ENRMMathFallback.h +26 -0
  347. package/ios/utils/ENRMMathFallback.m +18 -0
  348. package/ios/utils/ENRMSelectionChange.h +120 -0
  349. package/ios/utils/ENRMSelectionChange.m +282 -0
  350. package/ios/utils/ENRMTextViewSetup.h +35 -17
  351. package/ios/utils/EditMenuUtils+macOS.m +4 -1
  352. package/ios/utils/EditMenuUtils.h +35 -6
  353. package/ios/utils/EditMenuUtils.m +188 -11
  354. package/ios/utils/HTMLGenerator.m +2 -1
  355. package/ios/utils/ImageRequestHeaderUtils.h +35 -0
  356. package/ios/utils/LastElementUtils.h +1 -0
  357. package/ios/utils/ListMarkerDrawer.m +29 -42
  358. package/ios/utils/MarkdownASTSerializer.m +4 -0
  359. package/ios/utils/MarkdownAccessibilityElementBuilder.m +3 -1
  360. package/ios/utils/MarkdownExtractor.m +2 -1
  361. package/ios/utils/ParagraphStyleUtils.h +5 -0
  362. package/ios/utils/ParagraphStyleUtils.m +77 -17
  363. package/ios/utils/RTFExportUtils.m +2 -0
  364. package/ios/utils/RenderedMarkdownSegment.h +13 -1
  365. package/ios/utils/RenderedMarkdownSegment.m +20 -0
  366. package/ios/utils/SegmentRenderer.m +17 -4
  367. package/ios/utils/StreamingMarkdownFilter.h +11 -1
  368. package/ios/utils/StreamingMarkdownFilter.m +98 -2
  369. package/ios/utils/StylePropsUtils.h +110 -1
  370. package/ios/utils/TaskListTapUtils.m +24 -0
  371. package/ios/utils/TextViewLayoutManager.mm +3 -0
  372. package/ios/views/ENRMCodeBlockContainerView.h +60 -0
  373. package/ios/views/ENRMCodeBlockContainerView.m +569 -0
  374. package/ios/views/ENRMMathContainerView.h +23 -0
  375. package/ios/views/ENRMMathContainerView.m +87 -20
  376. package/ios/views/TableContainerView.h +32 -0
  377. package/ios/views/TableContainerView.m +291 -175
  378. package/jest.d.ts +1 -0
  379. package/jest.js +5 -0
  380. package/lib/module/EnrichedMarkdownNativeComponent.ts +203 -1
  381. package/lib/module/EnrichedMarkdownTextInput.js +84 -5
  382. package/lib/module/EnrichedMarkdownTextInput.js.map +1 -1
  383. package/lib/module/EnrichedMarkdownTextInputNativeComponent.ts +78 -5
  384. package/lib/module/EnrichedMarkdownTextNativeComponent.ts +204 -1
  385. package/lib/module/headingDefaults.js +34 -0
  386. package/lib/module/headingDefaults.js.map +1 -0
  387. package/lib/module/index.js.map +1 -1
  388. package/lib/module/jest/index.js +205 -0
  389. package/lib/module/jest/index.js.map +1 -0
  390. package/lib/module/native/EnrichedMarkdownText.js +199 -15
  391. package/lib/module/native/EnrichedMarkdownText.js.map +1 -1
  392. package/lib/module/normalizeMarkdownStyle.js +98 -23
  393. package/lib/module/normalizeMarkdownStyle.js.map +1 -1
  394. package/lib/module/normalizeMarkdownStyle.web.js +73 -22
  395. package/lib/module/normalizeMarkdownStyle.web.js.map +1 -1
  396. package/lib/module/normalizeMarkdownTextInputStyle.js +62 -15
  397. package/lib/module/normalizeMarkdownTextInputStyle.js.map +1 -1
  398. package/lib/module/normalizeMenuItem.js +1 -1
  399. package/lib/module/utils/textInputState.js +26 -0
  400. package/lib/module/utils/textInputState.js.map +1 -0
  401. package/lib/module/web/EnrichedMarkdownText.js +15 -8
  402. package/lib/module/web/EnrichedMarkdownText.js.map +1 -1
  403. package/lib/module/web/parseMarkdown.js +4 -3
  404. package/lib/module/web/parseMarkdown.js.map +1 -1
  405. package/lib/module/web/renderers/InlineRenderers.js +102 -3
  406. package/lib/module/web/renderers/InlineRenderers.js.map +1 -1
  407. package/lib/module/web/renderers/ListRenderers.js +7 -2
  408. package/lib/module/web/renderers/ListRenderers.js.map +1 -1
  409. package/lib/module/web/renderers/index.js +7 -4
  410. package/lib/module/web/renderers/index.js.map +1 -1
  411. package/lib/module/web/styles.js +101 -6
  412. package/lib/module/web/styles.js.map +1 -1
  413. package/lib/module/web/utils.js +14 -0
  414. package/lib/module/web/utils.js.map +1 -1
  415. package/lib/module/web/wasm/md4c.js +0 -0
  416. package/lib/module/web/wasm/md4c.js.map +1 -1
  417. package/lib/typescript/src/EnrichedMarkdownNativeComponent.d.ts +185 -2
  418. package/lib/typescript/src/EnrichedMarkdownNativeComponent.d.ts.map +1 -1
  419. package/lib/typescript/src/EnrichedMarkdownTextInput.d.ts +94 -9
  420. package/lib/typescript/src/EnrichedMarkdownTextInput.d.ts.map +1 -1
  421. package/lib/typescript/src/EnrichedMarkdownTextInputNativeComponent.d.ts +69 -5
  422. package/lib/typescript/src/EnrichedMarkdownTextInputNativeComponent.d.ts.map +1 -1
  423. package/lib/typescript/src/EnrichedMarkdownTextNativeComponent.d.ts +185 -2
  424. package/lib/typescript/src/EnrichedMarkdownTextNativeComponent.d.ts.map +1 -1
  425. package/lib/typescript/src/headingDefaults.d.ts +9 -0
  426. package/lib/typescript/src/headingDefaults.d.ts.map +1 -0
  427. package/lib/typescript/src/index.d.ts +3 -3
  428. package/lib/typescript/src/index.d.ts.map +1 -1
  429. package/lib/typescript/src/index.web.d.ts +2 -2
  430. package/lib/typescript/src/index.web.d.ts.map +1 -1
  431. package/lib/typescript/src/jest/index.d.ts +6 -0
  432. package/lib/typescript/src/jest/index.d.ts.map +1 -0
  433. package/lib/typescript/src/native/EnrichedMarkdownText.d.ts +5 -5
  434. package/lib/typescript/src/native/EnrichedMarkdownText.d.ts.map +1 -1
  435. package/lib/typescript/src/normalizeMarkdownStyle.d.ts.map +1 -1
  436. package/lib/typescript/src/normalizeMarkdownStyle.web.d.ts.map +1 -1
  437. package/lib/typescript/src/normalizeMarkdownTextInputStyle.d.ts +19 -5
  438. package/lib/typescript/src/normalizeMarkdownTextInputStyle.d.ts.map +1 -1
  439. package/lib/typescript/src/types/MarkdownStyle.d.ts +122 -5
  440. package/lib/typescript/src/types/MarkdownStyle.d.ts.map +1 -1
  441. package/lib/typescript/src/types/MarkdownStyleInternal.d.ts +39 -0
  442. package/lib/typescript/src/types/MarkdownStyleInternal.d.ts.map +1 -1
  443. package/lib/typescript/src/types/MarkdownTextProps.d.ts +207 -10
  444. package/lib/typescript/src/types/MarkdownTextProps.d.ts.map +1 -1
  445. package/lib/typescript/src/types/MarkdownTextProps.web.d.ts +60 -1
  446. package/lib/typescript/src/types/MarkdownTextProps.web.d.ts.map +1 -1
  447. package/lib/typescript/src/types/events.d.ts +85 -0
  448. package/lib/typescript/src/types/events.d.ts.map +1 -1
  449. package/lib/typescript/src/utils/textInputState.d.ts +24 -0
  450. package/lib/typescript/src/utils/textInputState.d.ts.map +1 -0
  451. package/lib/typescript/src/web/EnrichedMarkdownText.d.ts +1 -1
  452. package/lib/typescript/src/web/EnrichedMarkdownText.d.ts.map +1 -1
  453. package/lib/typescript/src/web/parseMarkdown.d.ts +1 -1
  454. package/lib/typescript/src/web/parseMarkdown.d.ts.map +1 -1
  455. package/lib/typescript/src/web/renderers/InlineRenderers.d.ts.map +1 -1
  456. package/lib/typescript/src/web/renderers/ListRenderers.d.ts.map +1 -1
  457. package/lib/typescript/src/web/renderers/index.d.ts +2 -1
  458. package/lib/typescript/src/web/renderers/index.d.ts.map +1 -1
  459. package/lib/typescript/src/web/styles.d.ts +2 -1
  460. package/lib/typescript/src/web/styles.d.ts.map +1 -1
  461. package/lib/typescript/src/web/types.d.ts +10 -2
  462. package/lib/typescript/src/web/types.d.ts.map +1 -1
  463. package/lib/typescript/src/web/utils.d.ts +4 -0
  464. package/lib/typescript/src/web/utils.d.ts.map +1 -1
  465. package/package.json +36 -9
  466. package/postinstall.mjs +131 -0
  467. package/ratex-version.json +21 -0
  468. package/src/EnrichedMarkdownNativeComponent.ts +203 -1
  469. package/src/EnrichedMarkdownTextInput.tsx +159 -8
  470. package/src/EnrichedMarkdownTextInputNativeComponent.ts +78 -5
  471. package/src/EnrichedMarkdownTextNativeComponent.ts +204 -1
  472. package/src/headingDefaults.ts +21 -0
  473. package/src/index.tsx +15 -0
  474. package/src/index.web.tsx +6 -1
  475. package/src/jest/index.tsx +236 -0
  476. package/src/native/EnrichedMarkdownText.tsx +260 -11
  477. package/src/normalizeMarkdownStyle.ts +117 -16
  478. package/src/normalizeMarkdownStyle.web.ts +76 -15
  479. package/src/normalizeMarkdownTextInputStyle.ts +110 -35
  480. package/src/normalizeMenuItem.ts +1 -1
  481. package/src/types/MarkdownStyle.ts +125 -5
  482. package/src/types/MarkdownStyleInternal.ts +51 -0
  483. package/src/types/MarkdownTextProps.ts +215 -10
  484. package/src/types/MarkdownTextProps.web.ts +62 -1
  485. package/src/types/events.ts +90 -0
  486. package/src/utils/textInputState.ts +35 -0
  487. package/src/web/EnrichedMarkdownText.tsx +26 -5
  488. package/src/web/parseMarkdown.ts +6 -2
  489. package/src/web/renderers/InlineRenderers.tsx +116 -3
  490. package/src/web/renderers/ListRenderers.tsx +14 -2
  491. package/src/web/renderers/index.tsx +6 -2
  492. package/src/web/styles.ts +114 -5
  493. package/src/web/types.ts +10 -1
  494. package/src/web/utils.ts +9 -0
  495. package/src/web/wasm/md4c.js +0 -0
  496. package/vendor-grammars.mjs +511 -0
  497. package/vendor-ratex.mjs +173 -0
  498. package/app.plugin.js +0 -2
  499. package/plugin/build/withAndroidMath.js +0 -19
  500. package/plugin/build/withIosMath.js +0 -28
  501. package/plugin/build/withReactNativeEnrichedMarkdown.js +0 -11
  502. package/plugin/src/withAndroidMath.ts +0 -24
  503. package/plugin/src/withIosMath.ts +0 -35
  504. package/plugin/src/withReactNativeEnrichedMarkdown.ts +0 -17
  505. package/plugin/tsconfig.build.json +0 -16
@@ -3,6 +3,7 @@
3
3
  import { processColor } from 'react-native';
4
4
  import { normalizeLinkVariantEntries } from "./linkVariantUtils.js";
5
5
  import { normalizeColor } from "./styleUtils.js";
6
+ import { DEFAULT_HEADING_FONT_WEIGHT, HEADING_DEFAULTS } from "./headingDefaults.js";
6
7
  const DEFAULT_LINK_COLOR = '#2563EB';
7
8
  const DEFAULT_LINK_BG_COLOR = 'transparent';
8
9
  const DEFAULT_SPOILER_COLOR = '#374151';
@@ -11,7 +12,7 @@ const DEFAULT_MATH_COLOR = '#111827';
11
12
  const DEFAULT_MATH_BG_COLOR = 'transparent';
12
13
  const DEFAULT_MATH_BORDER_COLOR = 'transparent';
13
14
  const TRANSPARENT = processColor('transparent');
14
- const defaultMathInternal = Object.freeze({
15
+ const defaultInlineMathInternal = Object.freeze({
15
16
  color: processColor(DEFAULT_MATH_COLOR),
16
17
  fontSize: 16,
17
18
  backgroundColor: processColor(DEFAULT_MATH_BG_COLOR),
@@ -24,7 +25,7 @@ const defaultMathInternal = Object.freeze({
24
25
  selectedBorderColor: TRANSPARENT,
25
26
  fontWeight: 'normal'
26
27
  });
27
- const defaultMathBlockInternal = Object.freeze({
28
+ const defaultBlockMathInternal = Object.freeze({
28
29
  color: processColor(DEFAULT_MATH_COLOR),
29
30
  fontSize: 20,
30
31
  backgroundColor: processColor(DEFAULT_MATH_BG_COLOR),
@@ -38,8 +39,19 @@ const defaultMathBlockInternal = Object.freeze({
38
39
  fontWeight: 'normal',
39
40
  marginTop: 8,
40
41
  marginBottom: 8,
41
- alignment: 'center'
42
+ textAlign: 'center'
42
43
  });
44
+
45
+ // Defaults shared with the read-only renderer via headingDefaults; consumers
46
+ // override per level via markdownStyle h1..h6.
47
+ const defaultHeadingInternal = key => {
48
+ const d = HEADING_DEFAULTS[key];
49
+ return {
50
+ fontSize: d.fontSize,
51
+ fontWeight: DEFAULT_HEADING_FONT_WEIGHT,
52
+ color: processColor(d.color)
53
+ };
54
+ };
43
55
  const defaultInternal = Object.freeze({
44
56
  strong: {
45
57
  color: undefined
@@ -57,9 +69,26 @@ const defaultInternal = Object.freeze({
57
69
  color: processColor(DEFAULT_SPOILER_COLOR),
58
70
  backgroundColor: processColor(DEFAULT_SPOILER_BG_COLOR)
59
71
  },
60
- math: defaultMathInternal,
61
- mathBlock: defaultMathBlockInternal
72
+ inlineMath: defaultInlineMathInternal,
73
+ math: defaultBlockMathInternal,
74
+ h1: defaultHeadingInternal('h1'),
75
+ h2: defaultHeadingInternal('h2'),
76
+ h3: defaultHeadingInternal('h3'),
77
+ h4: defaultHeadingInternal('h4'),
78
+ h5: defaultHeadingInternal('h5'),
79
+ h6: defaultHeadingInternal('h6'),
80
+ list: {
81
+ itemSpacing: 0
82
+ }
62
83
  });
84
+ const normalizeHeadingStyle = (key, style) => {
85
+ const fallback = defaultInternal[key];
86
+ return {
87
+ fontSize: style?.fontSize ?? fallback.fontSize,
88
+ fontWeight: style?.fontWeight ?? fallback.fontWeight,
89
+ color: normalizeColor(style?.color) ?? fallback.color
90
+ };
91
+ };
63
92
  let cachedInput;
64
93
  let cachedResult;
65
94
  function normalizeInputLinkStyle(style, fallback) {
@@ -69,7 +98,7 @@ function normalizeInputLinkStyle(style, fallback) {
69
98
  backgroundColor: normalizeColor(style?.backgroundColor) ?? fallback.backgroundColor
70
99
  };
71
100
  }
72
- function normalizeMathStyle(style, fallback) {
101
+ function normalizeInlineMathStyle(style, fallback) {
73
102
  const color = normalizeColor(style?.color) ?? fallback.color;
74
103
  const backgroundColor = normalizeColor(style?.backgroundColor) ?? fallback.backgroundColor;
75
104
  const borderColor = normalizeColor(style?.borderColor) ?? fallback.borderColor;
@@ -87,7 +116,10 @@ function normalizeMathStyle(style, fallback) {
87
116
  fontWeight: style?.fontWeight ?? fallback.fontWeight
88
117
  };
89
118
  }
90
- function normalizeMathBlockStyle(style, baseInline, fallback) {
119
+
120
+ // Block math (`markdownStyle.math`). Inherits the chip look from the inline
121
+ // key so a single override styles both, then applies its own block-only fields.
122
+ function normalizeBlockMathStyle(style, baseInline, fallback) {
91
123
  const merged = {
92
124
  color: baseInline.color,
93
125
  fontSize: fallback.fontSize,
@@ -101,16 +133,22 @@ function normalizeMathBlockStyle(style, baseInline, fallback) {
101
133
  selectedBorderColor: baseInline.selectedBorderColor,
102
134
  fontWeight: baseInline.fontWeight
103
135
  };
104
- const inheritedInline = normalizeMathStyle(style, merged);
105
- let alignment = fallback.alignment;
106
- if (style?.alignment === 'left' || style?.alignment === 'center' || style?.alignment === 'right') {
107
- alignment = style.alignment;
136
+ const inheritedInline = normalizeInlineMathStyle(style, merged);
137
+ let textAlign = fallback.textAlign;
138
+ if (style?.textAlign === 'left' || style?.textAlign === 'center' || style?.textAlign === 'right') {
139
+ textAlign = style.textAlign;
108
140
  }
141
+ // `padding` is the renderer-compatible shorthand; the per-axis fields win
142
+ // when both are given. Resolved here so the bridge only ever carries the
143
+ // two axes and no native side has to know about the shorthand.
144
+ const padding = style?.padding;
109
145
  return {
110
146
  ...inheritedInline,
147
+ paddingHorizontal: style?.paddingHorizontal ?? padding ?? inheritedInline.paddingHorizontal,
148
+ paddingVertical: style?.paddingVertical ?? padding ?? inheritedInline.paddingVertical,
111
149
  marginTop: style?.marginTop ?? fallback.marginTop,
112
150
  marginBottom: style?.marginBottom ?? fallback.marginBottom,
113
- alignment
151
+ textAlign
114
152
  };
115
153
  }
116
154
  export const normalizeMarkdownTextInputStyle = style => {
@@ -139,10 +177,19 @@ export const normalizeMarkdownTextInputStyle = style => {
139
177
  color: normalizeColor(style.spoiler?.color) ?? defaultInternal.spoiler.color,
140
178
  backgroundColor: normalizeColor(style.spoiler?.backgroundColor) ?? defaultInternal.spoiler.backgroundColor
141
179
  },
142
- math: normalizeMathStyle(style.math, defaultInternal.math),
143
- mathBlock: defaultInternal.mathBlock
180
+ inlineMath: normalizeInlineMathStyle(style.inlineMath, defaultInternal.inlineMath),
181
+ math: defaultInternal.math,
182
+ h1: normalizeHeadingStyle('h1', style.h1),
183
+ h2: normalizeHeadingStyle('h2', style.h2),
184
+ h3: normalizeHeadingStyle('h3', style.h3),
185
+ h4: normalizeHeadingStyle('h4', style.h4),
186
+ h5: normalizeHeadingStyle('h5', style.h5),
187
+ h6: normalizeHeadingStyle('h6', style.h6),
188
+ list: {
189
+ itemSpacing: style.list?.itemSpacing ?? defaultInternal.list.itemSpacing
190
+ }
144
191
  };
145
- result.mathBlock = normalizeMathBlockStyle(style.mathBlock, result.math, defaultInternal.mathBlock);
192
+ result.math = normalizeBlockMathStyle(style.math, result.inlineMath, defaultInternal.math);
146
193
  cachedInput = style;
147
194
  cachedResult = result;
148
195
  return result;
@@ -1 +1 @@
1
- {"version":3,"names":["processColor","normalizeLinkVariantEntries","normalizeColor","DEFAULT_LINK_COLOR","DEFAULT_LINK_BG_COLOR","DEFAULT_SPOILER_COLOR","DEFAULT_SPOILER_BG_COLOR","DEFAULT_MATH_COLOR","DEFAULT_MATH_BG_COLOR","DEFAULT_MATH_BORDER_COLOR","TRANSPARENT","defaultMathInternal","Object","freeze","color","fontSize","backgroundColor","borderColor","borderWidth","borderRadius","paddingHorizontal","paddingVertical","selectedBackgroundColor","selectedBorderColor","fontWeight","defaultMathBlockInternal","marginTop","marginBottom","alignment","defaultInternal","strong","undefined","em","link","underline","linkVariants","spoiler","math","mathBlock","cachedInput","cachedResult","normalizeInputLinkStyle","style","fallback","normalizeMathStyle","normalizeMathBlockStyle","baseInline","merged","inheritedInline","normalizeMarkdownTextInputStyle","keys","length","linkBase","result","map","pattern","override"],"sourceRoot":"../../src","sources":["normalizeMarkdownTextInputStyle.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["processColor","normalizeLinkVariantEntries","normalizeColor","DEFAULT_HEADING_FONT_WEIGHT","HEADING_DEFAULTS","DEFAULT_LINK_COLOR","DEFAULT_LINK_BG_COLOR","DEFAULT_SPOILER_COLOR","DEFAULT_SPOILER_BG_COLOR","DEFAULT_MATH_COLOR","DEFAULT_MATH_BG_COLOR","DEFAULT_MATH_BORDER_COLOR","TRANSPARENT","defaultInlineMathInternal","Object","freeze","color","fontSize","backgroundColor","borderColor","borderWidth","borderRadius","paddingHorizontal","paddingVertical","selectedBackgroundColor","selectedBorderColor","fontWeight","defaultBlockMathInternal","marginTop","marginBottom","textAlign","defaultHeadingInternal","key","d","defaultInternal","strong","undefined","em","link","underline","linkVariants","spoiler","inlineMath","math","h1","h2","h3","h4","h5","h6","list","itemSpacing","normalizeHeadingStyle","style","fallback","cachedInput","cachedResult","normalizeInputLinkStyle","normalizeInlineMathStyle","normalizeBlockMathStyle","baseInline","merged","inheritedInline","padding","normalizeMarkdownTextInputStyle","keys","length","linkBase","result","map","pattern","override"],"sourceRoot":"../../src","sources":["normalizeMarkdownTextInputStyle.ts"],"mappings":"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","ignoreList":[]}
@@ -27,7 +27,7 @@ export const normalizeMenuItem = (raw, defaultEnabled, defaultLabel) => {
27
27
  };
28
28
  export const normalizeLegacyBooleanMenuItem = (raw, parentProp, field, defaultEnabled, defaultLabel) => {
29
29
  if (typeof raw === 'boolean') {
30
- warnOnce(`${parentProp}.${field}`, `[react-native-enriched-markdown] ${parentProp}.${field} as a boolean is ` + `deprecated; use { enabled: ${raw} }. The boolean form will be removed in 0.8.`);
30
+ warnOnce(`${parentProp}.${field}`, `[react-native-enriched-markdown-scaffold] ${parentProp}.${field} as a boolean is ` + `deprecated; use { enabled: ${raw} }. The boolean form will be removed in 0.8.`);
31
31
  return {
32
32
  enabled: raw,
33
33
  label: defaultLabel
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * Bridges EnrichedMarkdownTextInput into React Native's TextInputState focus
5
+ * registry so it participates in RN's keyboard-dismiss behavior (issue #577).
6
+ *
7
+ * Registering a non-TextInput host component is safe: TextInputState's
8
+ * blurTextInput dispatches the built-in TextInput's "blur" command at the
9
+ * registered instance, and Fabric command dispatch is name-based — it works
10
+ * as long as the component ships a command with that name, which ours does.
11
+ *
12
+ * A deep import is required because the public TextInput.State API lacks the
13
+ * registerInput/focusInput/blurInput bookkeeping functions.
14
+ */
15
+
16
+ /**
17
+ * The internal module's export shape has changed across RN versions: newer
18
+ * versions use `export default` (surfacing as `.default` after Metro's CJS
19
+ * transform) while older ones assigned `module.exports` directly. A raw
20
+ * require bypasses Babel's import interop, so both shapes are handled here.
21
+ */
22
+ const TextInputStateModuleImpl =
23
+ // eslint-disable-next-line @react-native/no-deep-imports
24
+ require('react-native/Libraries/Components/TextInput/TextInputState');
25
+ export const TextInputState = TextInputStateModuleImpl.default ?? TextInputStateModuleImpl;
26
+ //# sourceMappingURL=textInputState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["TextInputStateModuleImpl","require","TextInputState","default"],"sourceRoot":"../../../src","sources":["utils/textInputState.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAYA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMA,wBAAwB;AAC5B;AACAC,OAAO,CAAC,4DAA4D,CAAC;AAEvE,OAAO,MAAMC,cAAc,GAAIF,wBAAwB,CAACG,OAAO,IAC7DH,wBAAiD","ignoreList":[]}
@@ -5,7 +5,7 @@ import { normalizeMarkdownStyle } from "../normalizeMarkdownStyle.web.js";
5
5
  import { zeroTrailingMargins, parseErrorFallbackStyle, buildStyles } from "./styles.js";
6
6
  import { parseMarkdown } from "./parseMarkdown.js";
7
7
  import { RenderNode } from "./renderers/index.js";
8
- import { indexTaskItems, markInlineImages } from "./utils.js";
8
+ import { indexLinks, indexTaskItems, markInlineImages } from "./utils.js";
9
9
  import { loadKaTeX } from "./katex.js";
10
10
  import { ENRM_TEXT_CLASS, ENRM_SELECTION_BG_VAR } from "./globalStyles.js";
11
11
  import { jsx as _jsx } from "react/jsx-runtime";
@@ -16,11 +16,13 @@ export const EnrichedMarkdownText = ({
16
16
  onLinkPress,
17
17
  onLinkLongPress,
18
18
  onTaskListItemPress,
19
+ enableTaskListItemToggle = true,
19
20
  allowTrailingMargin = false,
20
21
  containerStyle,
21
22
  selectable = true,
22
23
  dir,
23
24
  selectionColor,
25
+ renderLinkDecoration,
24
26
  ...rest
25
27
  }) => {
26
28
  const normalizedStyle = useMemo(() => normalizeMarkdownStyle(markdownStyle), [markdownStyle]);
@@ -32,7 +34,8 @@ export const EnrichedMarkdownText = ({
32
34
  latexMath = true,
33
35
  superscript = false,
34
36
  subscript = false,
35
- highlight = false
37
+ highlight = false,
38
+ hardSoftBreaks = false
36
39
  } = md4cFlags;
37
40
  useEffect(() => {
38
41
  let cancelled = false;
@@ -42,10 +45,12 @@ export const EnrichedMarkdownText = ({
42
45
  latexMath,
43
46
  superscript,
44
47
  subscript,
45
- highlight
48
+ highlight,
49
+ hardSoftBreaks
46
50
  }), katexPromise]).then(([result, katexInstance]) => {
47
51
  if (!cancelled) {
48
52
  indexTaskItems(result);
53
+ indexLinks(result);
49
54
  markInlineImages(result);
50
55
  setParseError(false);
51
56
  setKatex(katexInstance);
@@ -64,15 +69,17 @@ export const EnrichedMarkdownText = ({
64
69
  return () => {
65
70
  cancelled = true;
66
71
  };
67
- }, [markdown, underline, latexMath, superscript, subscript, highlight]);
72
+ }, [markdown, underline, latexMath, superscript, subscript, highlight, hardSoftBreaks]);
68
73
  const callbacks = useMemo(() => ({
69
74
  onLinkPress,
70
75
  onLinkLongPress,
71
- onTaskListItemPress
72
- }), [onLinkPress, onLinkLongPress, onTaskListItemPress]);
76
+ onTaskListItemPress,
77
+ renderLinkDecoration
78
+ }), [onLinkPress, onLinkLongPress, onTaskListItemPress, renderLinkDecoration]);
73
79
  const capabilities = useMemo(() => ({
74
- katex
75
- }), [katex]);
80
+ katex,
81
+ enableTaskListItemToggle
82
+ }), [katex, enableTaskListItemToggle]);
76
83
  const lastChildStyle = useMemo(() => allowTrailingMargin ? normalizedStyle : zeroTrailingMargins(normalizedStyle), [normalizedStyle, allowTrailingMargin]);
77
84
  const styles = useMemo(() => buildStyles(normalizedStyle), [normalizedStyle]);
78
85
  const lastChildStyles = useMemo(() => buildStyles(lastChildStyle), [lastChildStyle]);
@@ -1 +1 @@
1
- {"version":3,"names":["useState","useEffect","useMemo","normalizeMarkdownStyle","zeroTrailingMargins","parseErrorFallbackStyle","buildStyles","parseMarkdown","RenderNode","indexTaskItems","markInlineImages","loadKaTeX","ENRM_TEXT_CLASS","ENRM_SELECTION_BG_VAR","jsx","_jsx","EnrichedMarkdownText","markdown","markdownStyle","md4cFlags","onLinkPress","onLinkLongPress","onTaskListItemPress","allowTrailingMargin","containerStyle","selectable","dir","selectionColor","rest","normalizedStyle","ast","setAst","katex","setKatex","parseError","setParseError","underline","latexMath","superscript","subscript","highlight","cancelled","katexPromise","Promise","resolve","all","then","result","katexInstance","catch","error","__DEV__","console","callbacks","capabilities","lastChildStyle","styles","lastChildStyles","wrapperStyle","display","flexDirection","undefined","userSelect","className","style","children","lastIdx","length","map","child","index","node","type"],"sourceRoot":"../../../src","sources":["web/EnrichedMarkdownText.tsx"],"mappings":";;AAAA,SAASA,QAAQ,EAAEC,SAAS,EAAEC,OAAO,QAA4B,OAAO;AAExE,SAASC,sBAAsB,QAAQ,kCAA+B;AACtE,SACEC,mBAAmB,EACnBC,uBAAuB,EACvBC,WAAW,QACN,aAAU;AACjB,SAASC,aAAa,QAAQ,oBAAiB;AAC/C,SAASC,UAAU,QAAQ,sBAAa;AAExC,SAASC,cAAc,EAAEC,gBAAgB,QAAQ,YAAS;AAC1D,SAASC,SAAS,QAAQ,YAAS;AAEnC,SAASC,eAAe,EAAEC,qBAAqB,QAAQ,mBAAgB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAExE,OAAO,MAAMC,oBAAoB,GAAGA,CAAC;EACnCC,QAAQ;EACRC,aAAa,GAAG,CAAC,CAAC;EAClBC,SAAS,GAAG,CAAC,CAAC;EACdC,WAAW;EACXC,eAAe;EACfC,mBAAmB;EACnBC,mBAAmB,GAAG,KAAK;EAC3BC,cAAc;EACdC,UAAU,GAAG,IAAI;EACjBC,GAAG;EACHC,cAAc;EACd,GAAGC;AACsB,CAAC,KAAK;EAC/B,MAAMC,eAAe,GAAG3B,OAAO,CAC7B,MAAMC,sBAAsB,CAACe,aAAa,CAAC,EAC3C,CAACA,aAAa,CAChB,CAAC;EAED,MAAM,CAACY,GAAG,EAAEC,MAAM,CAAC,GAAG/B,QAAQ,CAAiB,IAAI,CAAC;EACpD,MAAM,CAACgC,KAAK,EAAEC,QAAQ,CAAC,GAAGjC,QAAQ,CAAuB,IAAI,CAAC;EAC9D,MAAM,CAACkC,UAAU,EAAEC,aAAa,CAAC,GAAGnC,QAAQ,CAAU,KAAK,CAAC;EAE5D,MAAM;IACJoC,SAAS,GAAG,KAAK;IACjBC,SAAS,GAAG,IAAI;IAChBC,WAAW,GAAG,KAAK;IACnBC,SAAS,GAAG,KAAK;IACjBC,SAAS,GAAG;EACd,CAAC,GAAGrB,SAAS;EAEblB,SAAS,CAAC,MAAM;IACd,IAAIwC,SAAS,GAAG,KAAK;IAErB,MAAMC,YAAY,GAAGL,SAAS,GAAG1B,SAAS,CAAC,CAAC,GAAGgC,OAAO,CAACC,OAAO,CAAC,IAAI,CAAC;IAEpED,OAAO,CAACE,GAAG,CAAC,CACVtC,aAAa,CAACU,QAAQ,EAAE;MACtBmB,SAAS;MACTC,SAAS;MACTC,WAAW;MACXC,SAAS;MACTC;IACF,CAAC,CAAC,EACFE,YAAY,CACb,CAAC,CACCI,IAAI,CAAC,CAAC,CAACC,MAAM,EAAEC,aAAa,CAAC,KAAK;MACjC,IAAI,CAACP,SAAS,EAAE;QACdhC,cAAc,CAACsC,MAAM,CAAC;QACtBrC,gBAAgB,CAACqC,MAAM,CAAC;QAExBZ,aAAa,CAAC,KAAK,CAAC;QACpBF,QAAQ,CAACe,aAAa,CAAC;QACvBjB,MAAM,CAACgB,MAAM,CAAC;MAChB;IACF,CAAC,CAAC,CACDE,KAAK,CAAEC,KAAK,IAAK;MAChB,IAAI,CAACT,SAAS,EAAE;QACd,IAAIU,OAAO,EAAE;UACXC,OAAO,CAACF,KAAK,CAAC,sCAAsC,EAAEA,KAAK,CAAC;QAC9D;QAEAf,aAAa,CAAC,IAAI,CAAC;QACnBJ,MAAM,CAAC,IAAI,CAAC;QACZE,QAAQ,CAAC,IAAI,CAAC;MAChB;IACF,CAAC,CAAC;IAEJ,OAAO,MAAM;MACXQ,SAAS,GAAG,IAAI;IAClB,CAAC;EACH,CAAC,EAAE,CAACxB,QAAQ,EAAEmB,SAAS,EAAEC,SAAS,EAAEC,WAAW,EAAEC,SAAS,EAAEC,SAAS,CAAC,CAAC;EAEvE,MAAMa,SAAS,GAAGnD,OAAO,CACvB,OAAO;IAAEkB,WAAW;IAAEC,eAAe;IAAEC;EAAoB,CAAC,CAAC,EAC7D,CAACF,WAAW,EAAEC,eAAe,EAAEC,mBAAmB,CACpD,CAAC;EAED,MAAMgC,YAAY,GAAGpD,OAAO,CAAqB,OAAO;IAAE8B;EAAM,CAAC,CAAC,EAAE,CAACA,KAAK,CAAC,CAAC;EAE5E,MAAMuB,cAAc,GAAGrD,OAAO,CAC5B,MACEqB,mBAAmB,GACfM,eAAe,GACfzB,mBAAmB,CAACyB,eAAe,CAAC,EAC1C,CAACA,eAAe,EAAEN,mBAAmB,CACvC,CAAC;EAED,MAAMiC,MAAM,GAAGtD,OAAO,CAAC,MAAMI,WAAW,CAACuB,eAAe,CAAC,EAAE,CAACA,eAAe,CAAC,CAAC;EAE7E,MAAM4B,eAAe,GAAGvD,OAAO,CAC7B,MAAMI,WAAW,CAACiD,cAAc,CAAC,EACjC,CAACA,cAAc,CACjB,CAAC;EAED,MAAMG,YAAY,GAAGxD,OAAO,CAC1B,OAAO;IACLyD,OAAO,EAAE,MAAM;IACfC,aAAa,EAAE,QAAQ;IACvB,GAAIpC,cAAgC;IACpC,IAAIC,UAAU,GAAGoC,SAAS,GAAG;MAAEC,UAAU,EAAE;IAAO,CAAC,CAAC;IACpD,IAAInC,cAAc,GACb;MAAE,CAACd,qBAAqB,GAAGc;IAAe,CAAC,GAC5C,IAAI;EACV,CAAC,CAAC,EACF,CAACH,cAAc,EAAEC,UAAU,EAAEE,cAAc,CAC7C,CAAC;EAED,IAAIO,UAAU,EAAE;IACd,oBACEnB,IAAA;MAAKgD,SAAS,EAAEnD,eAAgB;MAACoD,KAAK,EAAEN,YAAa;MAAChC,GAAG,EAAEA,GAAI;MAAA,GAAKE,IAAI;MAAAqC,QAAA,eACtElD,IAAA;QAAKiD,KAAK,EAAE3D,uBAAwB;QAAA4D,QAAA,EAAEhD;MAAQ,CAAM;IAAC,CAClD,CAAC;EAEV;EAEA,IAAI,CAACa,GAAG,EAAE,OAAO,IAAI;EAErB,MAAMmC,QAAQ,GAAGnC,GAAG,CAACmC,QAAQ,IAAI,EAAE;EACnC,MAAMC,OAAO,GAAGD,QAAQ,CAACE,MAAM,GAAG,CAAC;EAEnC,oBACEpD,IAAA;IAAKgD,SAAS,EAAEnD,eAAgB;IAACoD,KAAK,EAAEN,YAAa;IAAChC,GAAG,EAAEA,GAAI;IAAA,GAAKE,IAAI;IAAAqC,QAAA,EACrEA,QAAQ,CAACG,GAAG,CAAC,CAACC,KAAK,EAAEC,KAAK,kBACzBvD,IAAA,CAACP,UAAU;MAET+D,IAAI,EAAEF,KAAM;MACZL,KAAK,EAAEM,KAAK,KAAKJ,OAAO,GAAGX,cAAc,GAAG1B,eAAgB;MAC5D2B,MAAM,EAAEc,KAAK,KAAKJ,OAAO,GAAGT,eAAe,GAAGD,MAAO;MACrDH,SAAS,EAAEA,SAAU;MACrBC,YAAY,EAAEA;IAAa,GALtB,GAAGe,KAAK,CAACG,IAAI,IAAIF,KAAK,EAM5B,CACF;EAAC,CACC,CAAC;AAEV,CAAC;AAED,eAAetD,oBAAoB","ignoreList":[]}
1
+ {"version":3,"names":["useState","useEffect","useMemo","normalizeMarkdownStyle","zeroTrailingMargins","parseErrorFallbackStyle","buildStyles","parseMarkdown","RenderNode","indexLinks","indexTaskItems","markInlineImages","loadKaTeX","ENRM_TEXT_CLASS","ENRM_SELECTION_BG_VAR","jsx","_jsx","EnrichedMarkdownText","markdown","markdownStyle","md4cFlags","onLinkPress","onLinkLongPress","onTaskListItemPress","enableTaskListItemToggle","allowTrailingMargin","containerStyle","selectable","dir","selectionColor","renderLinkDecoration","rest","normalizedStyle","ast","setAst","katex","setKatex","parseError","setParseError","underline","latexMath","superscript","subscript","highlight","hardSoftBreaks","cancelled","katexPromise","Promise","resolve","all","then","result","katexInstance","catch","error","__DEV__","console","callbacks","capabilities","lastChildStyle","styles","lastChildStyles","wrapperStyle","display","flexDirection","undefined","userSelect","className","style","children","lastIdx","length","map","child","index","node","type"],"sourceRoot":"../../../src","sources":["web/EnrichedMarkdownText.tsx"],"mappings":"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","ignoreList":[]}
@@ -8,7 +8,7 @@ let parserPromise = null;
8
8
  // network fetch is needed — only a one-time decode + compile on first call.
9
9
  function initializeParser() {
10
10
  if (!parserPromise) {
11
- parserPromise = import('./wasm/md4c').then(module => module.default()).then(wasmModule => wasmModule.cwrap('parseMarkdown', 'string', ['string', 'number', 'number', 'number', 'number', 'number'])).catch(error => {
11
+ parserPromise = import('./wasm/md4c').then(module => module.default()).then(wasmModule => wasmModule.cwrap('parseMarkdown', 'string', ['string', 'number', 'number', 'number', 'number', 'number', 'number'])).catch(error => {
12
12
  parserPromise = null;
13
13
  throw error;
14
14
  });
@@ -23,10 +23,11 @@ export async function parseMarkdown(markdown, {
23
23
  latexMath = true,
24
24
  superscript = false,
25
25
  subscript = false,
26
- highlight = false
26
+ highlight = false,
27
+ hardSoftBreaks = false
27
28
  } = {}) {
28
29
  const parse = await initializeParser();
29
- const result = JSON.parse(parse(markdown, underline ? 1 : 0, latexMath ? 1 : 0, superscript ? 1 : 0, subscript ? 1 : 0, highlight ? 1 : 0));
30
+ const result = JSON.parse(parse(markdown, underline ? 1 : 0, latexMath ? 1 : 0, superscript ? 1 : 0, subscript ? 1 : 0, highlight ? 1 : 0, hardSoftBreaks ? 1 : 0));
30
31
  if (!isASTNode(result)) {
31
32
  throw new Error('WASM parser returned invalid AST');
32
33
  }
@@ -1 +1 @@
1
- {"version":3,"names":["parserPromise","initializeParser","then","module","default","wasmModule","cwrap","catch","error","isASTNode","value","type","parseMarkdown","markdown","underline","latexMath","superscript","subscript","highlight","parse","result","JSON","Error"],"sourceRoot":"../../../src","sources":["web/parseMarkdown.ts"],"mappings":";;AAYA;AACA;AACA,IAAIA,aAAsC,GAAG,IAAI;;AAEjD;AACA;AACA,SAASC,gBAAgBA,CAAA,EAAqB;EAC5C,IAAI,CAACD,aAAa,EAAE;IAClBA,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC,CAClCE,IAAI,CAAEC,MAAM,IAAKA,MAAM,CAACC,OAAO,CAAC,CAAC,CAAC,CAClCF,IAAI,CAAEG,UAAU,IACfA,UAAU,CAACC,KAAK,CAAC,eAAe,EAAE,QAAQ,EAAE,CAC1C,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,CACT,CACH,CAAC,CACAC,KAAK,CAAEC,KAAK,IAAK;MAChBR,aAAa,GAAG,IAAI;MACpB,MAAMQ,KAAK;IACb,CAAC,CAAqB;EAC1B;EACA,OAAOR,aAAa;AACtB;AAEA,SAASS,SAASA,CAACC,KAAc,EAAoB;EACnD,OACE,OAAOA,KAAK,KAAK,QAAQ,IACzBA,KAAK,KAAK,IAAI,IACd,MAAM,IAAIA,KAAK,IACf,OAAQA,KAAK,CAAaC,IAAI,KAAK,QAAQ;AAE/C;AAEA,OAAO,eAAeC,aAAaA,CACjCC,QAAgB,EAChB;EACEC,SAAS,GAAG,KAAK;EACjBC,SAAS,GAAG,IAAI;EAChBC,WAAW,GAAG,KAAK;EACnBC,SAAS,GAAG,KAAK;EACjBC,SAAS,GAAG;AACH,CAAC,GAAG,CAAC,CAAC,EACC;EAClB,MAAMC,KAAK,GAAG,MAAMlB,gBAAgB,CAAC,CAAC;EAEtC,MAAMmB,MAAe,GAAGC,IAAI,CAACF,KAAK,CAChCA,KAAK,CACHN,QAAQ,EACRC,SAAS,GAAG,CAAC,GAAG,CAAC,EACjBC,SAAS,GAAG,CAAC,GAAG,CAAC,EACjBC,WAAW,GAAG,CAAC,GAAG,CAAC,EACnBC,SAAS,GAAG,CAAC,GAAG,CAAC,EACjBC,SAAS,GAAG,CAAC,GAAG,CAClB,CACF,CAAC;EAED,IAAI,CAACT,SAAS,CAACW,MAAM,CAAC,EAAE;IACtB,MAAM,IAAIE,KAAK,CAAC,kCAAkC,CAAC;EACrD;EAEA,OAAOF,MAAM;AACf","ignoreList":[]}
1
+ {"version":3,"names":["parserPromise","initializeParser","then","module","default","wasmModule","cwrap","catch","error","isASTNode","value","type","parseMarkdown","markdown","underline","latexMath","superscript","subscript","highlight","hardSoftBreaks","parse","result","JSON","Error"],"sourceRoot":"../../../src","sources":["web/parseMarkdown.ts"],"mappings":";;AAaA;AACA;AACA,IAAIA,aAAsC,GAAG,IAAI;;AAEjD;AACA;AACA,SAASC,gBAAgBA,CAAA,EAAqB;EAC5C,IAAI,CAACD,aAAa,EAAE;IAClBA,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC,CAClCE,IAAI,CAAEC,MAAM,IAAKA,MAAM,CAACC,OAAO,CAAC,CAAC,CAAC,CAClCF,IAAI,CAAEG,UAAU,IACfA,UAAU,CAACC,KAAK,CAAC,eAAe,EAAE,QAAQ,EAAE,CAC1C,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,CACT,CACH,CAAC,CACAC,KAAK,CAAEC,KAAK,IAAK;MAChBR,aAAa,GAAG,IAAI;MACpB,MAAMQ,KAAK;IACb,CAAC,CAAqB;EAC1B;EACA,OAAOR,aAAa;AACtB;AAEA,SAASS,SAASA,CAACC,KAAc,EAAoB;EACnD,OACE,OAAOA,KAAK,KAAK,QAAQ,IACzBA,KAAK,KAAK,IAAI,IACd,MAAM,IAAIA,KAAK,IACf,OAAQA,KAAK,CAAaC,IAAI,KAAK,QAAQ;AAE/C;AAEA,OAAO,eAAeC,aAAaA,CACjCC,QAAgB,EAChB;EACEC,SAAS,GAAG,KAAK;EACjBC,SAAS,GAAG,IAAI;EAChBC,WAAW,GAAG,KAAK;EACnBC,SAAS,GAAG,KAAK;EACjBC,SAAS,GAAG,KAAK;EACjBC,cAAc,GAAG;AACR,CAAC,GAAG,CAAC,CAAC,EACC;EAClB,MAAMC,KAAK,GAAG,MAAMnB,gBAAgB,CAAC,CAAC;EAEtC,MAAMoB,MAAe,GAAGC,IAAI,CAACF,KAAK,CAChCA,KAAK,CACHP,QAAQ,EACRC,SAAS,GAAG,CAAC,GAAG,CAAC,EACjBC,SAAS,GAAG,CAAC,GAAG,CAAC,EACjBC,WAAW,GAAG,CAAC,GAAG,CAAC,EACnBC,SAAS,GAAG,CAAC,GAAG,CAAC,EACjBC,SAAS,GAAG,CAAC,GAAG,CAAC,EACjBC,cAAc,GAAG,CAAC,GAAG,CACvB,CACF,CAAC;EAED,IAAI,CAACV,SAAS,CAACY,MAAM,CAAC,EAAE;IACtB,MAAM,IAAIE,KAAK,CAAC,kCAAkC,CAAC;EACrD;EAEA,OAAOF,MAAM;AACf","ignoreList":[]}
@@ -1,9 +1,10 @@
1
1
  "use strict";
2
2
 
3
+ import { useLayoutEffect, useRef, useState } from 'react';
3
4
  import { extractNodeText } from "../utils.js";
4
5
  import { KaTeXRenderer } from "./KaTeXRenderer.js";
5
6
  import { linkStyleForUrl } from "../styles.js";
6
- import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
7
+ import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
7
8
  function TextRenderer({
8
9
  node
9
10
  }) {
@@ -14,6 +15,11 @@ function TextRenderer({
14
15
  function LineBreakRenderer(_props) {
15
16
  return /*#__PURE__*/_jsx("br", {});
16
17
  }
18
+ function SoftBreakRenderer(_props) {
19
+ return /*#__PURE__*/_jsx(_Fragment, {
20
+ children: " "
21
+ });
22
+ }
17
23
  function StrongRenderer({
18
24
  node,
19
25
  styles,
@@ -120,14 +126,106 @@ function LinkRenderer({
120
126
  });
121
127
  }
122
128
  };
129
+ const linkStyle = linkStyleForUrl(style, url);
130
+ const children = renderChildren(node);
131
+ if (callbacks.renderLinkDecoration) {
132
+ return /*#__PURE__*/_jsx(DecoratedLink, {
133
+ url: url,
134
+ index: node.attributes?.linkIndex ?? 0,
135
+ text: extractNodeText(node),
136
+ linkStyle: linkStyle,
137
+ renderLinkDecoration: callbacks.renderLinkDecoration,
138
+ onClick: handleClick,
139
+ onContextMenu: handleContextMenu,
140
+ children: children
141
+ });
142
+ }
123
143
  return /*#__PURE__*/_jsx("a", {
124
144
  href: url,
125
- style: linkStyleForUrl(style, url),
145
+ style: linkStyle,
126
146
  target: "_blank",
127
147
  rel: "noopener noreferrer",
128
148
  onClick: handleClick,
129
149
  onContextMenu: handleContextMenu,
130
- children: renderChildren(node)
150
+ children: children
151
+ });
152
+ }
153
+ const EMPTY_RECT = {
154
+ x: 0,
155
+ y: 0,
156
+ width: 0,
157
+ height: 0
158
+ };
159
+ const decorationLayerStyle = {
160
+ position: 'absolute',
161
+ inset: 0,
162
+ pointerEvents: 'none'
163
+ };
164
+ const decorationContentStyle = {
165
+ pointerEvents: 'auto'
166
+ };
167
+
168
+ /**
169
+ * A link with a `renderLinkDecoration` overlay. Unlike native, the overlay
170
+ * anchors to the link's whole inline box (not the last line fragment of a
171
+ * wrapping link), and `rect` is that box relative to itself.
172
+ */
173
+ function DecoratedLink({
174
+ url,
175
+ index,
176
+ text,
177
+ linkStyle,
178
+ renderLinkDecoration,
179
+ onClick,
180
+ onContextMenu,
181
+ children
182
+ }) {
183
+ const anchorRef = useRef(null);
184
+ const [rect, setRect] = useState(EMPTY_RECT);
185
+
186
+ // The overlay itself is sized by CSS (inset: 0); `rect` is informational, so
187
+ // re-measuring when the content or chip style changes is enough.
188
+ useLayoutEffect(() => {
189
+ const anchor = anchorRef.current;
190
+ if (!anchor) return;
191
+ const {
192
+ width,
193
+ height
194
+ } = anchor.getBoundingClientRect();
195
+ setRect(prev => prev.width === width && prev.height === height ? prev : {
196
+ x: 0,
197
+ y: 0,
198
+ width,
199
+ height
200
+ });
201
+ }, [text, linkStyle]);
202
+ const decoration = renderLinkDecoration({
203
+ index,
204
+ url,
205
+ text,
206
+ rect,
207
+ rects: [rect]
208
+ });
209
+ return /*#__PURE__*/_jsxs("a", {
210
+ ref: anchorRef,
211
+ href: url,
212
+ style: {
213
+ ...linkStyle,
214
+ position: 'relative'
215
+ } // eslint-disable-line react-native/no-inline-styles
216
+ ,
217
+ target: "_blank",
218
+ rel: "noopener noreferrer",
219
+ onClick: onClick,
220
+ onContextMenu: onContextMenu,
221
+ children: [children, decoration != null && /*#__PURE__*/_jsx("span", {
222
+ "aria-hidden": true,
223
+ style: decorationLayerStyle,
224
+ children: /*#__PURE__*/_jsx("span", {
225
+ style: decorationContentStyle,
226
+ children: decoration
227
+ })
228
+ })]
131
229
  });
132
230
  }
133
231
  function LatexMathInlineRenderer({
@@ -146,6 +244,7 @@ function LatexMathInlineRenderer({
146
244
  export const inlineRenderers = {
147
245
  Text: TextRenderer,
148
246
  LineBreak: LineBreakRenderer,
247
+ SoftBreak: SoftBreakRenderer,
149
248
  Strong: StrongRenderer,
150
249
  Emphasis: EmphasisRenderer,
151
250
  Strikethrough: StrikethroughRenderer,
@@ -1 +1 @@
1
- {"version":3,"names":["extractNodeText","KaTeXRenderer","linkStyleForUrl","Fragment","_Fragment","jsx","_jsx","TextRenderer","node","children","content","LineBreakRenderer","_props","StrongRenderer","styles","renderChildren","style","strong","EmphasisRenderer","emphasis","StrikethroughRenderer","strikethrough","UnderlineRenderer","underline","SuperscriptRenderer","superscript","SubscriptRenderer","subscript","HighlightRenderer","highlight","CodeRenderer","code","LinkRenderer","callbacks","url","attributes","handleClick","event","onLinkPress","preventDefault","handleContextMenu","onLinkLongPress","href","target","rel","onClick","onContextMenu","LatexMathInlineRenderer","capabilities","katex","displayMode","mathInline","inlineRenderers","Text","LineBreak","Strong","Emphasis","Strikethrough","Underline","Superscript","Subscript","Highlight","Code","Link","LatexMathInline"],"sourceRoot":"../../../../src","sources":["web/renderers/InlineRenderers.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useLayoutEffect","useRef","useState","extractNodeText","KaTeXRenderer","linkStyleForUrl","Fragment","_Fragment","jsx","_jsx","jsxs","_jsxs","TextRenderer","node","children","content","LineBreakRenderer","_props","SoftBreakRenderer","StrongRenderer","styles","renderChildren","style","strong","EmphasisRenderer","emphasis","StrikethroughRenderer","strikethrough","UnderlineRenderer","underline","SuperscriptRenderer","superscript","SubscriptRenderer","subscript","HighlightRenderer","highlight","CodeRenderer","code","LinkRenderer","callbacks","url","attributes","handleClick","event","onLinkPress","preventDefault","handleContextMenu","onLinkLongPress","linkStyle","renderLinkDecoration","DecoratedLink","index","linkIndex","text","onClick","onContextMenu","href","target","rel","EMPTY_RECT","x","y","width","height","decorationLayerStyle","position","inset","pointerEvents","decorationContentStyle","anchorRef","rect","setRect","anchor","current","getBoundingClientRect","prev","decoration","rects","ref","LatexMathInlineRenderer","capabilities","katex","displayMode","mathInline","inlineRenderers","Text","LineBreak","SoftBreak","Strong","Emphasis","Strikethrough","Underline","Superscript","Subscript","Highlight","Code","Link","LatexMathInline"],"sourceRoot":"../../../../src","sources":["web/renderers/InlineRenderers.tsx"],"mappings":"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","ignoreList":[]}
@@ -39,7 +39,9 @@ function ListItemRenderer({
39
39
  node,
40
40
  style,
41
41
  styles,
42
+ index,
42
43
  callbacks,
44
+ capabilities,
43
45
  renderChildren
44
46
  }) {
45
47
  const isTask = node.attributes?.isTask === 'true';
@@ -50,6 +52,7 @@ function ListItemRenderer({
50
52
  setIsChecked(initialChecked);
51
53
  }, [initialChecked]);
52
54
  const handleChange = () => {
55
+ if (!capabilities.enableTaskListItemToggle) return;
53
56
  const taskIndex = node.attributes?.taskIndex;
54
57
  if (taskIndex === undefined) return;
55
58
  const newChecked = !isChecked;
@@ -71,14 +74,16 @@ function ListItemRenderer({
71
74
  children: node.children?.filter(isNestedList)
72
75
  } : null;
73
76
  return /*#__PURE__*/_jsxs("li", {
74
- style: listItemStyle(isTask),
77
+ style: listItemStyle(style, isTask, (index ?? 0) === 0),
75
78
  children: [/*#__PURE__*/_jsxs("span", {
76
79
  style: checkedStyle,
77
80
  children: [isTask && /*#__PURE__*/_jsx("input", {
78
81
  type: "checkbox",
79
82
  checked: isChecked,
80
83
  onChange: handleChange,
81
- style: styles.taskCheckbox,
84
+ readOnly: !capabilities.enableTaskListItemToggle,
85
+ "aria-disabled": capabilities.enableTaskListItemToggle ? undefined : true,
86
+ style: capabilities.enableTaskListItemToggle ? styles.taskCheckbox : styles.taskCheckboxDisabled,
82
87
  "aria-label": `Task: ${taskText}`
83
88
  }), renderChildren(inlineNode)]
84
89
  }), nestedNode && renderChildren(nestedNode)]
@@ -1 +1 @@
1
- {"version":3,"names":["useState","useEffect","extractNodeText","listItemStyle","checkedTaskTextStyle","jsx","_jsx","jsxs","_jsxs","NESTED_LIST_TYPES","Set","ListRenderer","node","styles","parentType","renderChildren","listTag","ListTag","isNested","hasTaskChild","children","some","child","attributes","isTask","resolvedStyle","listNested","listTask","list","style","UnorderedListRenderer","props","OrderedListRenderer","isNestedList","has","type","ListItemRenderer","callbacks","initialChecked","taskChecked","taskText","isChecked","setIsChecked","handleChange","taskIndex","undefined","newChecked","onTaskListItemPress","index","checked","text","hasNestedList","checkedStyle","inlineNode","filter","nestedNode","onChange","taskCheckbox","listRenderers","UnorderedList","OrderedList","ListItem"],"sourceRoot":"../../../../src","sources":["web/renderers/ListRenderers.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useState","useEffect","extractNodeText","listItemStyle","checkedTaskTextStyle","jsx","_jsx","jsxs","_jsxs","NESTED_LIST_TYPES","Set","ListRenderer","node","styles","parentType","renderChildren","listTag","ListTag","isNested","hasTaskChild","children","some","child","attributes","isTask","resolvedStyle","listNested","listTask","list","style","UnorderedListRenderer","props","OrderedListRenderer","isNestedList","has","type","ListItemRenderer","index","callbacks","capabilities","initialChecked","taskChecked","taskText","isChecked","setIsChecked","handleChange","enableTaskListItemToggle","taskIndex","undefined","newChecked","onTaskListItemPress","checked","text","hasNestedList","checkedStyle","inlineNode","filter","nestedNode","onChange","readOnly","taskCheckbox","taskCheckboxDisabled","listRenderers","UnorderedList","OrderedList","ListItem"],"sourceRoot":"../../../../src","sources":["web/renderers/ListRenderers.tsx"],"mappings":"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","ignoreList":[]}