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

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 (466) hide show
  1. package/README.md +54 -8
  2. package/ReactNativeEnrichedMarkdown.podspec +82 -73
  3. package/android/build.gradle +186 -1
  4. package/android/consumer-rules.pro +1 -1
  5. package/android/generated/java/com/facebook/react/viewmanagers/EnrichedMarkdownManagerDelegate.java +9 -0
  6. package/android/generated/java/com/facebook/react/viewmanagers/EnrichedMarkdownManagerInterface.java +3 -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 +9 -0
  10. package/android/generated/java/com/facebook/react/viewmanagers/EnrichedMarkdownTextManagerInterface.java +3 -0
  11. package/android/generated/jni/react/renderer/components/EnrichedMarkdownTextSpec/EventEmitters.cpp +75 -0
  12. package/android/generated/jni/react/renderer/components/EnrichedMarkdownTextSpec/EventEmitters.h +63 -0
  13. package/android/generated/jni/react/renderer/components/EnrichedMarkdownTextSpec/Props.cpp +35 -0
  14. package/android/generated/jni/react/renderer/components/EnrichedMarkdownTextSpec/Props.h +838 -23
  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 +175 -11
  18. package/android/src/main/java/com/swmansion/enriched/markdown/EnrichedMarkdownInternalText.kt +17 -0
  19. package/android/src/main/java/com/swmansion/enriched/markdown/EnrichedMarkdownManager.kt +50 -0
  20. package/android/src/main/java/com/swmansion/enriched/markdown/EnrichedMarkdownText.kt +48 -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 +42 -0
  23. package/android/src/main/java/com/swmansion/enriched/markdown/MeasurementStore.kt +82 -4
  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/input/EnrichedMarkdownTextInputManager.kt +54 -4
  26. package/android/src/main/java/com/swmansion/enriched/markdown/input/EnrichedMarkdownTextInputView.kt +901 -462
  27. package/android/src/main/java/com/swmansion/enriched/markdown/input/MarkdownClipboard.kt +42 -0
  28. package/android/src/main/java/com/swmansion/enriched/markdown/input/editing/BlockEditCoordinator.kt +196 -0
  29. package/android/src/main/java/com/swmansion/enriched/markdown/input/editing/ClipboardCoordinator.kt +73 -0
  30. package/android/src/main/java/com/swmansion/enriched/markdown/input/editing/EditContext.kt +19 -0
  31. package/android/src/main/java/com/swmansion/enriched/markdown/input/editing/EditPipeline.kt +248 -0
  32. package/android/src/main/java/com/swmansion/enriched/markdown/input/editing/EditSession.kt +52 -0
  33. package/android/src/main/java/com/swmansion/enriched/markdown/input/editing/InputConnectionWrapper.kt +101 -7
  34. package/android/src/main/java/com/swmansion/enriched/markdown/input/editing/LinkCoordinator.kt +69 -0
  35. package/android/src/main/java/com/swmansion/enriched/markdown/input/editing/MarkdownTextWatcher.kt +3 -3
  36. package/android/src/main/java/com/swmansion/enriched/markdown/input/editing/MentionCoordinator.kt +118 -0
  37. package/android/src/main/java/com/swmansion/enriched/markdown/input/events/OnChangeStateEvent.kt +26 -0
  38. package/android/src/main/java/com/swmansion/enriched/markdown/input/events/OnContextMenuItemPressEvent.kt +26 -0
  39. package/android/src/main/java/com/swmansion/enriched/markdown/input/events/OnInputKeyPressEvent.kt +24 -0
  40. package/android/src/main/java/com/swmansion/enriched/markdown/input/events/OnPasteEvent.kt +24 -0
  41. package/android/src/main/java/com/swmansion/enriched/markdown/input/formatting/BlockStore.kt +254 -0
  42. package/android/src/main/java/com/swmansion/enriched/markdown/input/formatting/FormattingStore.kt +80 -87
  43. package/android/src/main/java/com/swmansion/enriched/markdown/input/formatting/InputFormatter.kt +109 -1
  44. package/android/src/main/java/com/swmansion/enriched/markdown/input/formatting/InputParser.kt +116 -22
  45. package/android/src/main/java/com/swmansion/enriched/markdown/input/formatting/MarkdownSerializer.kt +167 -38
  46. package/android/src/main/java/com/swmansion/enriched/markdown/input/formatting/RangeEditAdjustment.kt +149 -0
  47. package/android/src/main/java/com/swmansion/enriched/markdown/input/layout/InputEventEmitter.kt +66 -5
  48. package/android/src/main/java/com/swmansion/enriched/markdown/input/layout/InputMeasurementStore.kt +4 -2
  49. package/android/src/main/java/com/swmansion/enriched/markdown/input/model/BlockRange.kt +27 -0
  50. package/android/src/main/java/com/swmansion/enriched/markdown/input/model/BlockType.kt +48 -0
  51. package/android/src/main/java/com/swmansion/enriched/markdown/input/model/FormattingRange.kt +9 -4
  52. package/android/src/main/java/com/swmansion/enriched/markdown/input/model/InputFormatterStyle.kt +39 -2
  53. package/android/src/main/java/com/swmansion/enriched/markdown/input/model/MathAtom.kt +20 -0
  54. package/android/src/main/java/com/swmansion/enriched/markdown/input/model/MathChipStyle.kt +1 -1
  55. package/android/src/main/java/com/swmansion/enriched/markdown/input/model/MutableRangeBounds.kt +11 -0
  56. package/android/src/main/java/com/swmansion/enriched/markdown/input/spans/InputBulletSpan.kt +82 -0
  57. package/android/src/main/java/com/swmansion/enriched/markdown/input/spans/InputHeadingSpan.kt +58 -0
  58. package/android/src/main/java/com/swmansion/enriched/markdown/input/spans/InputListItemSpacingSpan.kt +37 -0
  59. package/android/src/main/java/com/swmansion/enriched/markdown/input/spans/InputOrderedListMarkerSpan.kt +63 -0
  60. package/android/src/main/java/com/swmansion/enriched/markdown/input/styles/BlockHandler.kt +54 -0
  61. package/android/src/main/java/com/swmansion/enriched/markdown/input/styles/HeadingBlockHandler.kt +27 -0
  62. package/android/src/main/java/com/swmansion/enriched/markdown/input/styles/OrderedListBlockHandler.kt +38 -0
  63. package/android/src/main/java/com/swmansion/enriched/markdown/input/styles/UnorderedListBlockHandler.kt +37 -0
  64. package/android/src/main/java/com/swmansion/enriched/markdown/input/toolbar/InputContextMenu.kt +8 -26
  65. package/android/src/main/java/com/swmansion/enriched/markdown/parser/MarkdownASTNode.kt +1 -0
  66. package/android/src/main/java/com/swmansion/enriched/markdown/parser/Parser.kt +1 -0
  67. package/android/src/main/java/com/swmansion/enriched/markdown/renderer/BlockStyleContext.kt +9 -2
  68. package/android/src/main/java/com/swmansion/enriched/markdown/renderer/BlockquoteRenderer.kt +100 -12
  69. package/android/src/main/java/com/swmansion/enriched/markdown/renderer/CodeBlockRenderer.kt +16 -1
  70. package/android/src/main/java/com/swmansion/enriched/markdown/renderer/HeadingRenderer.kt +4 -0
  71. package/android/src/main/java/com/swmansion/enriched/markdown/renderer/ListContextManager.kt +2 -1
  72. package/android/src/main/java/com/swmansion/enriched/markdown/renderer/ListItemRenderer.kt +74 -18
  73. package/android/src/main/java/com/swmansion/enriched/markdown/renderer/ListRenderer.kt +43 -4
  74. package/android/src/main/java/com/swmansion/enriched/markdown/renderer/NodeRenderer.kt +9 -1
  75. package/android/src/main/java/com/swmansion/enriched/markdown/renderer/SoftBreakRenderer.kt +16 -0
  76. package/android/src/main/java/com/swmansion/enriched/markdown/renderer/SpanStyleCache.kt +30 -27
  77. package/android/src/main/java/com/swmansion/enriched/markdown/spans/BaseListSpan.kt +24 -0
  78. package/android/src/main/java/com/swmansion/enriched/markdown/spans/BlockquoteSpan.kt +174 -24
  79. package/android/src/main/java/com/swmansion/enriched/markdown/spans/CodeBackgroundSpan.kt +27 -3
  80. package/android/src/main/java/com/swmansion/enriched/markdown/spans/CodeBlockSpan.kt +13 -16
  81. package/android/src/main/java/com/swmansion/enriched/markdown/spans/CodeSpan.kt +1 -1
  82. package/android/src/main/java/com/swmansion/enriched/markdown/spans/EmphasisSpan.kt +1 -1
  83. package/android/src/main/java/com/swmansion/enriched/markdown/spans/ImageSpan.kt +182 -46
  84. package/android/src/main/java/com/swmansion/enriched/markdown/spans/ListItemSpacingSpan.kt +33 -0
  85. package/android/src/main/java/com/swmansion/enriched/markdown/spans/ListMarkerAnchorSpan.kt +38 -0
  86. package/android/src/main/java/com/swmansion/enriched/markdown/spans/OrderedListSpan.kt +2 -0
  87. package/android/src/main/java/com/swmansion/enriched/markdown/spans/StrongSpan.kt +1 -1
  88. package/android/src/main/java/com/swmansion/enriched/markdown/spans/TaskListSpan.kt +3 -2
  89. package/android/src/main/java/com/swmansion/enriched/markdown/spans/UnorderedListSpan.kt +3 -2
  90. package/android/src/main/java/com/swmansion/enriched/markdown/styles/BlockquoteStyle.kt +6 -0
  91. package/android/src/main/java/com/swmansion/enriched/markdown/styles/CodeBlockStyle.kt +26 -0
  92. package/android/src/main/java/com/swmansion/enriched/markdown/styles/ImageStyle.kt +7 -1
  93. package/android/src/main/java/com/swmansion/enriched/markdown/styles/ListStyle.kt +4 -1
  94. package/android/src/main/java/com/swmansion/enriched/markdown/styles/StyleConfig.kt +13 -4
  95. package/android/src/main/java/com/swmansion/enriched/markdown/styles/TableStyle.kt +6 -0
  96. package/android/src/main/java/com/swmansion/enriched/markdown/utils/common/CodeBlockHighlighter.kt +90 -0
  97. package/android/src/main/java/com/swmansion/enriched/markdown/utils/common/CodeBlockNode.kt +57 -0
  98. package/android/src/main/java/com/swmansion/enriched/markdown/utils/common/FeatureFlags.kt +1 -0
  99. package/android/src/main/java/com/swmansion/enriched/markdown/utils/common/MarkdownSegment.kt +9 -0
  100. package/android/src/main/java/com/swmansion/enriched/markdown/utils/common/MarkdownViewManagerUtils.kt +33 -7
  101. package/android/src/main/java/com/swmansion/enriched/markdown/utils/common/ReadableMapExtensions.kt +3 -0
  102. package/android/src/main/java/com/swmansion/enriched/markdown/utils/common/RenderedSegment.kt +10 -0
  103. package/android/src/main/java/com/swmansion/enriched/markdown/utils/common/SegmentSignature.kt +1 -0
  104. package/android/src/main/java/com/swmansion/enriched/markdown/utils/common/StreamingMarkdownFilter.kt +83 -5
  105. package/android/src/main/java/com/swmansion/enriched/markdown/utils/common/serialization/MarkdownASTSerializer.kt +4 -0
  106. package/android/src/main/java/com/swmansion/enriched/markdown/utils/input/MarkdownStyleParser.kt +74 -44
  107. package/android/src/main/java/com/swmansion/enriched/markdown/utils/input/PasteTextUtils.kt +20 -0
  108. package/android/src/main/java/com/swmansion/enriched/markdown/utils/text/ImageCache.kt +26 -3
  109. package/android/src/main/java/com/swmansion/enriched/markdown/utils/text/ImageDownloader.kt +22 -9
  110. package/android/src/main/java/com/swmansion/enriched/markdown/utils/text/LocalImageLoader.kt +161 -0
  111. package/android/src/main/java/com/swmansion/enriched/markdown/utils/text/extensions/TextPaintExtensions.kt +23 -0
  112. package/android/src/main/java/com/swmansion/enriched/markdown/utils/text/interaction/CheckboxTouchHelper.kt +7 -0
  113. package/android/src/main/java/com/swmansion/enriched/markdown/utils/text/interaction/TaskListTapUtils.kt +41 -21
  114. package/android/src/main/java/com/swmansion/enriched/markdown/utils/text/span/BlockSpacing.kt +15 -8
  115. package/android/src/main/java/com/swmansion/enriched/markdown/utils/text/view/LinkLongPressMovementMethod.kt +58 -27
  116. package/android/src/main/java/com/swmansion/enriched/markdown/utils/text/view/SelectionActionMode.kt +19 -2
  117. package/android/src/main/java/com/swmansion/enriched/markdown/views/CodeBlockContainerView.kt +388 -0
  118. package/android/src/main/java/com/swmansion/enriched/markdown/views/ContextMenuPopup.kt +9 -6
  119. package/android/src/main/java/com/swmansion/enriched/markdown/views/CopyGlyph.kt +101 -0
  120. package/android/src/main/java/com/swmansion/enriched/markdown/views/TableContainerView.kt +32 -5
  121. package/android/src/main/jni/CMakeLists.txt +53 -0
  122. package/android/src/main/jni/react/renderer/components/EnrichedMarkdownTextSpec/MarkdownContainerShadowNode.cpp +10 -0
  123. package/android/src/main/jni/react/renderer/components/EnrichedMarkdownTextSpec/MarkdownContainerShadowNode.h +11 -2
  124. package/android/src/main/jni/react/renderer/components/EnrichedMarkdownTextSpec/MarkdownTextShadowNode.cpp +10 -0
  125. package/android/src/main/jni/react/renderer/components/EnrichedMarkdownTextSpec/MarkdownTextShadowNode.h +12 -2
  126. package/android/src/main/jni/react/renderer/components/EnrichedMarkdownTextSpec/MarkdownTextState.cpp +9 -0
  127. package/android/src/main/jni/react/renderer/components/EnrichedMarkdownTextSpec/MarkdownTextState.h +24 -0
  128. package/android/src/main/jni/react/renderer/components/EnrichedMarkdownTextSpec/conversions.h +16 -0
  129. package/android/src/math/java/com/swmansion/enriched/markdown/input/math/MathChipControllerImpl.kt +21 -4
  130. package/android/src/math/java/com/swmansion/enriched/markdown/renderer/MathInlineRenderer.kt +7 -2
  131. package/android/src/math/java/com/swmansion/enriched/markdown/spans/MathChipSpan.kt +1 -1
  132. package/android/src/math/java/com/swmansion/enriched/markdown/views/MathContainerView.kt +2 -0
  133. package/cpp/highlight/CodeBlockHighlighter.cpp +284 -0
  134. package/cpp/highlight/CodeBlockHighlighter.hpp +66 -0
  135. package/cpp/highlight/CodeBlockLanguages.cpp +138 -0
  136. package/cpp/highlight/CodeBlockLanguages.hpp +25 -0
  137. package/cpp/highlight/HighlightGrammars.hpp +28 -0
  138. package/cpp/highlight/code_highlight_podspec.rb +211 -0
  139. package/cpp/highlight/gen-registry.mjs +155 -0
  140. package/cpp/highlight/grammar-versions.json +159 -0
  141. package/cpp/highlight/vendor/generated/generated_queries.h +1665 -0
  142. package/cpp/highlight/vendor/generated/generated_registry.cpp +59 -0
  143. package/cpp/parser/MD4CParser.cpp +173 -61
  144. package/cpp/parser/MD4CParser.hpp +1 -0
  145. package/cpp/parser/MarkdownASTNode.hpp +2 -1
  146. package/cpp/wasm/ASTSerializer.cpp +2 -0
  147. package/cpp/wasm/build.sh +1 -0
  148. package/cpp/wasm/md4c_wasm.cpp +3 -1
  149. package/docs/ACCESSIBILITY.md +14 -2
  150. package/docs/API_REFERENCE.md +222 -8
  151. package/docs/BREAKING_CHANGES.md +129 -0
  152. package/docs/CODE_HIGHLIGHT.md +133 -0
  153. package/docs/COPY_OPTIONS.md +21 -3
  154. package/docs/ELEMENTS_STRUCTURE.md +52 -4
  155. package/docs/IMAGE_CACHING.md +30 -0
  156. package/docs/INPUT.md +108 -11
  157. package/docs/LATEX_MATH.md +87 -45
  158. package/docs/MACOS.md +1 -1
  159. package/docs/MARKDOWN_STREAMING.md +27 -1
  160. package/docs/NATIVE_ASSETS.md +127 -0
  161. package/docs/RTL.md +1 -1
  162. package/docs/STYLES.md +46 -6
  163. package/docs/TESTING.md +112 -0
  164. package/docs/TEXT.md +16 -6
  165. package/docs/WEB.md +3 -1
  166. package/ios/EnrichedMarkdown.h +7 -0
  167. package/ios/EnrichedMarkdown.mm +262 -67
  168. package/ios/EnrichedMarkdownText.h +7 -0
  169. package/ios/EnrichedMarkdownText.mm +97 -68
  170. package/ios/attachments/ENRMImageAttachment.h +9 -0
  171. package/ios/attachments/ENRMImageAttachment.m +143 -40
  172. package/ios/attachments/ENRMMathInlineAttachment.h +2 -0
  173. package/ios/attachments/ENRMMathInlineAttachment.m +48 -81
  174. package/ios/attachments/ENRMMathInlineAttachmentShared.h +2 -0
  175. package/ios/generated/ReactCodegen/EnrichedMarkdownTextSpec/EventEmitters.cpp +75 -0
  176. package/ios/generated/ReactCodegen/EnrichedMarkdownTextSpec/EventEmitters.h +63 -0
  177. package/ios/generated/ReactCodegen/EnrichedMarkdownTextSpec/Props.cpp +35 -0
  178. package/ios/generated/ReactCodegen/EnrichedMarkdownTextSpec/Props.h +838 -23
  179. package/ios/generated/ReactCodegen/EnrichedMarkdownTextSpec/RCTComponentViewHelpers.h +131 -0
  180. package/ios/input/ENRMAutoLinkDetector.h +2 -1
  181. package/ios/input/ENRMAutoLinkDetector.mm +79 -41
  182. package/ios/input/ENRMBlockEditCoordinator.h +71 -0
  183. package/ios/input/ENRMBlockEditCoordinator.mm +195 -0
  184. package/ios/input/ENRMBlockRange.h +28 -0
  185. package/ios/input/ENRMBlockRange.mm +30 -0
  186. package/ios/input/ENRMBlockStore.h +56 -0
  187. package/ios/input/ENRMBlockStore.mm +275 -0
  188. package/ios/input/ENRMClipboardCoordinator.h +45 -0
  189. package/ios/input/ENRMClipboardCoordinator.mm +120 -0
  190. package/ios/input/ENRMDetectorPipeline.h +2 -1
  191. package/ios/input/ENRMEditPipeline.h +76 -0
  192. package/ios/input/ENRMEditPipeline.mm +228 -0
  193. package/ios/input/ENRMEditSession.h +36 -0
  194. package/ios/input/ENRMEditSession.mm +63 -0
  195. package/ios/input/ENRMFormattingStore.h +17 -0
  196. package/ios/input/ENRMFormattingStore.mm +95 -105
  197. package/ios/input/ENRMInputBlockType.h +91 -0
  198. package/ios/input/ENRMInputBlockType.mm +5 -0
  199. package/ios/input/ENRMInputDecorationDrawer.h +18 -0
  200. package/ios/input/ENRMInputEventEmitter.h +56 -0
  201. package/ios/input/ENRMInputEventEmitter.mm +308 -0
  202. package/ios/input/ENRMInputFormatter.h +29 -69
  203. package/ios/input/ENRMInputFormatter.mm +216 -124
  204. package/ios/input/ENRMInputFormatterStyle.h +99 -0
  205. package/ios/input/ENRMInputFormatterStyle.mm +188 -0
  206. package/ios/input/ENRMInputLayoutManager.h +9 -0
  207. package/ios/input/ENRMInputLayoutManager.mm +30 -0
  208. package/ios/input/ENRMInputListMarkerDrawer.h +32 -0
  209. package/ios/input/ENRMInputListMarkerDrawer.mm +426 -0
  210. package/ios/input/ENRMInputParser.h +5 -6
  211. package/ios/input/ENRMInputParser.mm +461 -178
  212. package/ios/input/ENRMInputRemend.mm +2 -2
  213. package/ios/input/ENRMInputStyleStateBuilder.h +40 -0
  214. package/ios/input/ENRMInputStyleStateBuilder.mm +60 -0
  215. package/ios/input/ENRMInputTextView.mm +103 -8
  216. package/ios/input/ENRMInputTypingAttributesController.h +42 -0
  217. package/ios/input/ENRMInputTypingAttributesController.mm +203 -0
  218. package/ios/input/ENRMLinkCoordinator.h +41 -0
  219. package/ios/input/ENRMLinkCoordinator.mm +89 -0
  220. package/ios/input/ENRMMarkdownSerializer.h +29 -5
  221. package/ios/input/ENRMMarkdownSerializer.mm +170 -48
  222. package/ios/input/ENRMMathAtom.h +26 -0
  223. package/ios/input/ENRMMathAtom.mm +12 -0
  224. package/ios/input/ENRMMentionCoordinator.h +45 -0
  225. package/ios/input/ENRMMentionCoordinator.mm +167 -0
  226. package/ios/input/ENRMRangeEditAdjustment.h +38 -0
  227. package/ios/input/ENRMRangeEditAdjustment.mm +91 -0
  228. package/ios/input/ENRMRangeStoreUtils.h +39 -0
  229. package/ios/input/EnrichedMarkdownTextInput+ContextMenu.mm +6 -6
  230. package/ios/input/EnrichedMarkdownTextInput+Internal.h +11 -3
  231. package/ios/input/EnrichedMarkdownTextInput.h +7 -1
  232. package/ios/input/EnrichedMarkdownTextInput.mm +1089 -1023
  233. package/ios/input/InputStylePropsUtils.h +109 -68
  234. package/ios/input/internals/EnrichedMarkdownTextInputShadowNode.mm +2 -1
  235. package/ios/input/styles/ENRMBlockHandler.h +46 -0
  236. package/ios/input/styles/ENRMHeadingBlockHandler.h +15 -0
  237. package/ios/input/styles/ENRMHeadingBlockHandler.mm +38 -0
  238. package/ios/input/styles/ENRMOrderedListBlockHandler.h +14 -0
  239. package/ios/input/styles/ENRMOrderedListBlockHandler.mm +48 -0
  240. package/ios/input/styles/ENRMUnorderedListBlockHandler.h +15 -0
  241. package/ios/input/styles/ENRMUnorderedListBlockHandler.mm +51 -0
  242. package/ios/internals/ENRMViewFreeMeasurement.h +331 -0
  243. package/ios/internals/EnrichedMarkdownShadowNode.h +1 -3
  244. package/ios/internals/EnrichedMarkdownShadowNode.mm +16 -20
  245. package/ios/internals/EnrichedMarkdownTextShadowNode.h +1 -3
  246. package/ios/internals/EnrichedMarkdownTextShadowNode.mm +15 -20
  247. package/ios/internals/MeasurementCache.h +33 -7
  248. package/ios/internals/ShadowMeasurementUtils.h +63 -58
  249. package/ios/math/ENRMMathChipController.h +74 -0
  250. package/ios/math/ENRMMathChipController.mm +476 -0
  251. package/ios/math/ENRMRaTeXBridge.swift +4 -1
  252. package/ios/parser/ENRMMarkdownParser.h +1 -8
  253. package/ios/parser/ENRMMarkdownParser.mm +2 -11
  254. package/ios/parser/MarkdownASTNode.h +2 -1
  255. package/ios/parser/MarkdownParserBridge.mm +4 -0
  256. package/ios/renderer/AttributedRenderer.m +20 -2
  257. package/ios/renderer/BaseRenderer.h +17 -2
  258. package/ios/renderer/BaseRenderer.m +30 -0
  259. package/ios/renderer/BlockquoteRenderer.h +1 -1
  260. package/ios/renderer/BlockquoteRenderer.m +144 -35
  261. package/ios/renderer/CodeBlockRenderer.h +1 -1
  262. package/ios/renderer/CodeBlockRenderer.m +27 -23
  263. package/ios/renderer/CodeRenderer.h +1 -1
  264. package/ios/renderer/CodeRenderer.m +3 -1
  265. package/ios/renderer/ENRMImageRenderer.h +1 -1
  266. package/ios/renderer/ENRMImageRenderer.m +5 -1
  267. package/ios/renderer/ENRMMathInlineRenderer.h +1 -1
  268. package/ios/renderer/ENRMMathInlineRenderer.m +5 -1
  269. package/ios/renderer/ENRMSpoilerRenderer.h +1 -1
  270. package/ios/renderer/ENRMSpoilerRenderer.m +3 -1
  271. package/ios/renderer/EmphasisRenderer.h +1 -1
  272. package/ios/renderer/EmphasisRenderer.m +3 -1
  273. package/ios/renderer/HeadingRenderer.h +1 -1
  274. package/ios/renderer/HeadingRenderer.m +13 -6
  275. package/ios/renderer/HighlightRenderer.h +1 -1
  276. package/ios/renderer/HighlightRenderer.m +3 -1
  277. package/ios/renderer/LinkRenderer.h +1 -1
  278. package/ios/renderer/LinkRenderer.m +3 -1
  279. package/ios/renderer/ListItemRenderer.h +13 -1
  280. package/ios/renderer/ListItemRenderer.m +102 -44
  281. package/ios/renderer/ListRenderer.h +2 -2
  282. package/ios/renderer/ListRenderer.m +63 -25
  283. package/ios/renderer/ParagraphRenderer.h +1 -1
  284. package/ios/renderer/ParagraphRenderer.m +16 -8
  285. package/ios/renderer/RenderContext.h +10 -0
  286. package/ios/renderer/RenderContext.m +44 -0
  287. package/ios/renderer/RendererFactory.m +14 -0
  288. package/ios/renderer/StrikethroughRenderer.h +1 -1
  289. package/ios/renderer/StrikethroughRenderer.m +3 -1
  290. package/ios/renderer/StrongRenderer.h +1 -1
  291. package/ios/renderer/StrongRenderer.m +3 -1
  292. package/ios/renderer/SubscriptRenderer.h +1 -1
  293. package/ios/renderer/SubscriptRenderer.m +3 -1
  294. package/ios/renderer/SuperscriptRenderer.h +1 -1
  295. package/ios/renderer/SuperscriptRenderer.m +3 -1
  296. package/ios/renderer/TextRenderer.h +2 -2
  297. package/ios/renderer/TextRenderer.m +3 -1
  298. package/ios/renderer/ThematicBreakRenderer.h +1 -1
  299. package/ios/renderer/ThematicBreakRenderer.m +3 -1
  300. package/ios/renderer/UnderlineRenderer.h +1 -1
  301. package/ios/renderer/UnderlineRenderer.m +3 -1
  302. package/ios/styles/StyleConfig.h +22 -0
  303. package/ios/styles/StyleConfig.mm +132 -0
  304. package/ios/utils/BlockquoteBorder.h +6 -0
  305. package/ios/utils/BlockquoteBorder.m +249 -52
  306. package/ios/utils/CodeBlockBackground.m +16 -2
  307. package/ios/utils/ENRMAtomicSize.h +65 -0
  308. package/ios/utils/ENRMCodeBlockContent.h +37 -0
  309. package/ios/utils/ENRMCodeBlockContent.mm +79 -0
  310. package/ios/utils/ENRMCodeBlockHighlighter.h +37 -0
  311. package/ios/utils/ENRMCodeBlockHighlighter.mm +51 -0
  312. package/ios/utils/ENRMFeatureFlags.h +7 -0
  313. package/ios/utils/ENRMImageDownloader.h +11 -1
  314. package/ios/utils/ENRMImageDownloader.m +60 -16
  315. package/ios/utils/ENRMLocalImageLoader.h +31 -0
  316. package/ios/utils/ENRMLocalImageLoader.m +68 -0
  317. package/ios/utils/ENRMMathFallback.h +26 -0
  318. package/ios/utils/ENRMMathFallback.m +18 -0
  319. package/ios/utils/ENRMTextViewSetup.h +35 -17
  320. package/ios/utils/EditMenuUtils.m +22 -1
  321. package/ios/utils/ImageRequestHeaderUtils.h +35 -0
  322. package/ios/utils/LastElementUtils.h +1 -0
  323. package/ios/utils/ListMarkerDrawer.m +29 -42
  324. package/ios/utils/MarkdownASTSerializer.m +4 -0
  325. package/ios/utils/ParagraphStyleUtils.h +5 -0
  326. package/ios/utils/ParagraphStyleUtils.m +77 -17
  327. package/ios/utils/RenderedMarkdownSegment.h +13 -1
  328. package/ios/utils/RenderedMarkdownSegment.m +20 -0
  329. package/ios/utils/SegmentRenderer.m +17 -4
  330. package/ios/utils/StreamingMarkdownFilter.h +11 -1
  331. package/ios/utils/StreamingMarkdownFilter.m +98 -2
  332. package/ios/utils/StylePropsUtils.h +63 -0
  333. package/ios/utils/TaskListTapUtils.m +24 -0
  334. package/ios/views/ENRMCodeBlockContainerView.h +46 -0
  335. package/ios/views/ENRMCodeBlockContainerView.m +566 -0
  336. package/ios/views/ENRMMathContainerView.h +12 -0
  337. package/ios/views/ENRMMathContainerView.m +71 -1
  338. package/ios/views/TableContainerView.h +18 -0
  339. package/ios/views/TableContainerView.m +259 -159
  340. package/jest.d.ts +1 -0
  341. package/jest.js +5 -0
  342. package/lib/module/EnrichedMarkdownNativeComponent.ts +65 -0
  343. package/lib/module/EnrichedMarkdownTextInput.js +84 -5
  344. package/lib/module/EnrichedMarkdownTextInput.js.map +1 -1
  345. package/lib/module/EnrichedMarkdownTextInputNativeComponent.ts +78 -5
  346. package/lib/module/EnrichedMarkdownTextNativeComponent.ts +66 -0
  347. package/lib/module/headingDefaults.js +34 -0
  348. package/lib/module/headingDefaults.js.map +1 -0
  349. package/lib/module/index.js.map +1 -1
  350. package/lib/module/jest/index.js +191 -0
  351. package/lib/module/jest/index.js.map +1 -0
  352. package/lib/module/native/EnrichedMarkdownText.js +30 -4
  353. package/lib/module/native/EnrichedMarkdownText.js.map +1 -1
  354. package/lib/module/normalizeMarkdownStyle.js +81 -19
  355. package/lib/module/normalizeMarkdownStyle.js.map +1 -1
  356. package/lib/module/normalizeMarkdownStyle.web.js +56 -18
  357. package/lib/module/normalizeMarkdownStyle.web.js.map +1 -1
  358. package/lib/module/normalizeMarkdownTextInputStyle.js +62 -15
  359. package/lib/module/normalizeMarkdownTextInputStyle.js.map +1 -1
  360. package/lib/module/normalizeMenuItem.js +1 -1
  361. package/lib/module/utils/textInputState.js +26 -0
  362. package/lib/module/utils/textInputState.js.map +1 -0
  363. package/lib/module/web/EnrichedMarkdownText.js +9 -5
  364. package/lib/module/web/EnrichedMarkdownText.js.map +1 -1
  365. package/lib/module/web/parseMarkdown.js +4 -3
  366. package/lib/module/web/parseMarkdown.js.map +1 -1
  367. package/lib/module/web/renderers/InlineRenderers.js +6 -0
  368. package/lib/module/web/renderers/InlineRenderers.js.map +1 -1
  369. package/lib/module/web/renderers/ListRenderers.js +7 -2
  370. package/lib/module/web/renderers/ListRenderers.js.map +1 -1
  371. package/lib/module/web/renderers/index.js +7 -4
  372. package/lib/module/web/renderers/index.js.map +1 -1
  373. package/lib/module/web/styles.js +83 -6
  374. package/lib/module/web/styles.js.map +1 -1
  375. package/lib/module/web/utils.js +1 -0
  376. package/lib/module/web/utils.js.map +1 -1
  377. package/lib/module/web/wasm/md4c.js +0 -0
  378. package/lib/module/web/wasm/md4c.js.map +1 -1
  379. package/lib/typescript/src/EnrichedMarkdownNativeComponent.d.ts +62 -0
  380. package/lib/typescript/src/EnrichedMarkdownNativeComponent.d.ts.map +1 -1
  381. package/lib/typescript/src/EnrichedMarkdownTextInput.d.ts +94 -9
  382. package/lib/typescript/src/EnrichedMarkdownTextInput.d.ts.map +1 -1
  383. package/lib/typescript/src/EnrichedMarkdownTextInputNativeComponent.d.ts +69 -5
  384. package/lib/typescript/src/EnrichedMarkdownTextInputNativeComponent.d.ts.map +1 -1
  385. package/lib/typescript/src/EnrichedMarkdownTextNativeComponent.d.ts +62 -0
  386. package/lib/typescript/src/EnrichedMarkdownTextNativeComponent.d.ts.map +1 -1
  387. package/lib/typescript/src/headingDefaults.d.ts +9 -0
  388. package/lib/typescript/src/headingDefaults.d.ts.map +1 -0
  389. package/lib/typescript/src/index.d.ts +2 -2
  390. package/lib/typescript/src/index.d.ts.map +1 -1
  391. package/lib/typescript/src/index.web.d.ts +1 -1
  392. package/lib/typescript/src/index.web.d.ts.map +1 -1
  393. package/lib/typescript/src/jest/index.d.ts +6 -0
  394. package/lib/typescript/src/jest/index.d.ts.map +1 -0
  395. package/lib/typescript/src/native/EnrichedMarkdownText.d.ts +3 -3
  396. package/lib/typescript/src/native/EnrichedMarkdownText.d.ts.map +1 -1
  397. package/lib/typescript/src/normalizeMarkdownStyle.d.ts.map +1 -1
  398. package/lib/typescript/src/normalizeMarkdownStyle.web.d.ts.map +1 -1
  399. package/lib/typescript/src/normalizeMarkdownTextInputStyle.d.ts +19 -5
  400. package/lib/typescript/src/normalizeMarkdownTextInputStyle.d.ts.map +1 -1
  401. package/lib/typescript/src/types/MarkdownStyle.d.ts +72 -0
  402. package/lib/typescript/src/types/MarkdownStyle.d.ts.map +1 -1
  403. package/lib/typescript/src/types/MarkdownStyleInternal.d.ts +27 -0
  404. package/lib/typescript/src/types/MarkdownStyleInternal.d.ts.map +1 -1
  405. package/lib/typescript/src/types/MarkdownTextProps.d.ts +65 -1
  406. package/lib/typescript/src/types/MarkdownTextProps.d.ts.map +1 -1
  407. package/lib/typescript/src/types/MarkdownTextProps.web.d.ts +19 -0
  408. package/lib/typescript/src/types/MarkdownTextProps.web.d.ts.map +1 -1
  409. package/lib/typescript/src/types/events.d.ts +19 -0
  410. package/lib/typescript/src/types/events.d.ts.map +1 -1
  411. package/lib/typescript/src/utils/textInputState.d.ts +24 -0
  412. package/lib/typescript/src/utils/textInputState.d.ts.map +1 -0
  413. package/lib/typescript/src/web/EnrichedMarkdownText.d.ts +1 -1
  414. package/lib/typescript/src/web/EnrichedMarkdownText.d.ts.map +1 -1
  415. package/lib/typescript/src/web/parseMarkdown.d.ts +1 -1
  416. package/lib/typescript/src/web/parseMarkdown.d.ts.map +1 -1
  417. package/lib/typescript/src/web/renderers/InlineRenderers.d.ts.map +1 -1
  418. package/lib/typescript/src/web/renderers/ListRenderers.d.ts.map +1 -1
  419. package/lib/typescript/src/web/renderers/index.d.ts +2 -1
  420. package/lib/typescript/src/web/renderers/index.d.ts.map +1 -1
  421. package/lib/typescript/src/web/styles.d.ts +2 -1
  422. package/lib/typescript/src/web/styles.d.ts.map +1 -1
  423. package/lib/typescript/src/web/types.d.ts +6 -2
  424. package/lib/typescript/src/web/types.d.ts.map +1 -1
  425. package/lib/typescript/src/web/utils.d.ts.map +1 -1
  426. package/package.json +36 -9
  427. package/postinstall.mjs +131 -0
  428. package/ratex-version.json +21 -0
  429. package/src/EnrichedMarkdownNativeComponent.ts +65 -0
  430. package/src/EnrichedMarkdownTextInput.tsx +159 -8
  431. package/src/EnrichedMarkdownTextInputNativeComponent.ts +78 -5
  432. package/src/EnrichedMarkdownTextNativeComponent.ts +66 -0
  433. package/src/headingDefaults.ts +21 -0
  434. package/src/index.tsx +9 -0
  435. package/src/index.web.tsx +1 -0
  436. package/src/jest/index.tsx +215 -0
  437. package/src/native/EnrichedMarkdownText.tsx +40 -2
  438. package/src/normalizeMarkdownStyle.ts +102 -16
  439. package/src/normalizeMarkdownStyle.web.ts +63 -15
  440. package/src/normalizeMarkdownTextInputStyle.ts +110 -35
  441. package/src/normalizeMenuItem.ts +1 -1
  442. package/src/types/MarkdownStyle.ts +74 -0
  443. package/src/types/MarkdownStyleInternal.ts +39 -0
  444. package/src/types/MarkdownTextProps.ts +65 -0
  445. package/src/types/MarkdownTextProps.web.ts +19 -0
  446. package/src/types/events.ts +21 -0
  447. package/src/utils/textInputState.ts +35 -0
  448. package/src/web/EnrichedMarkdownText.tsx +16 -2
  449. package/src/web/parseMarkdown.ts +6 -2
  450. package/src/web/renderers/InlineRenderers.tsx +5 -0
  451. package/src/web/renderers/ListRenderers.tsx +14 -2
  452. package/src/web/renderers/index.tsx +6 -2
  453. package/src/web/styles.ts +89 -5
  454. package/src/web/types.ts +6 -1
  455. package/src/web/utils.ts +1 -0
  456. package/src/web/wasm/md4c.js +0 -0
  457. package/vendor-grammars.mjs +511 -0
  458. package/vendor-ratex.mjs +173 -0
  459. package/app.plugin.js +0 -2
  460. package/plugin/build/withAndroidMath.js +0 -19
  461. package/plugin/build/withIosMath.js +0 -28
  462. package/plugin/build/withReactNativeEnrichedMarkdown.js +0 -11
  463. package/plugin/src/withAndroidMath.ts +0 -24
  464. package/plugin/src/withIosMath.ts +0 -35
  465. package/plugin/src/withReactNativeEnrichedMarkdown.ts +0 -17
  466. package/plugin/tsconfig.build.json +0 -16
@@ -562,6 +562,8 @@ struct EnrichedMarkdownMarkdownStyleBlockquoteStruct {
562
562
  Float borderWidth{0.0};
563
563
  Float gapWidth{0.0};
564
564
  SharedColor backgroundColor{};
565
+ Float borderRadius{0.0};
566
+ Float padding{0.0};
565
567
 
566
568
 
567
569
  #ifdef RN_SERIALIZABLE_STATE
@@ -580,6 +582,8 @@ struct EnrichedMarkdownMarkdownStyleBlockquoteStruct {
580
582
  result["borderWidth"] = borderWidth;
581
583
  result["gapWidth"] = gapWidth;
582
584
  result["backgroundColor"] = ::facebook::react::toDynamic(backgroundColor);
585
+ result["borderRadius"] = borderRadius;
586
+ result["padding"] = padding;
583
587
  return result;
584
588
  }
585
589
  #endif
@@ -632,6 +636,14 @@ static inline void fromRawValue(const PropsParserContext& context, const RawValu
632
636
  if (tmp_backgroundColor != map.end()) {
633
637
  fromRawValue(context, tmp_backgroundColor->second, result.backgroundColor);
634
638
  }
639
+ auto tmp_borderRadius = map.find("borderRadius");
640
+ if (tmp_borderRadius != map.end()) {
641
+ fromRawValue(context, tmp_borderRadius->second, result.borderRadius);
642
+ }
643
+ auto tmp_padding = map.find("padding");
644
+ if (tmp_padding != map.end()) {
645
+ fromRawValue(context, tmp_padding->second, result.padding);
646
+ }
635
647
  }
636
648
 
637
649
  static inline std::string toString(const EnrichedMarkdownMarkdownStyleBlockquoteStruct &value) {
@@ -659,6 +671,7 @@ struct EnrichedMarkdownMarkdownStyleListStruct {
659
671
  std::string markerFontWeight{};
660
672
  Float gapWidth{0.0};
661
673
  Float marginLeft{0.0};
674
+ Float itemSpacing{0.0};
662
675
 
663
676
 
664
677
  #ifdef RN_SERIALIZABLE_STATE
@@ -680,6 +693,7 @@ struct EnrichedMarkdownMarkdownStyleListStruct {
680
693
  result["markerFontWeight"] = markerFontWeight;
681
694
  result["gapWidth"] = gapWidth;
682
695
  result["marginLeft"] = marginLeft;
696
+ result["itemSpacing"] = itemSpacing;
683
697
  return result;
684
698
  }
685
699
  #endif
@@ -744,6 +758,10 @@ static inline void fromRawValue(const PropsParserContext& context, const RawValu
744
758
  if (tmp_marginLeft != map.end()) {
745
759
  fromRawValue(context, tmp_marginLeft->second, result.marginLeft);
746
760
  }
761
+ auto tmp_itemSpacing = map.find("itemSpacing");
762
+ if (tmp_itemSpacing != map.end()) {
763
+ fromRawValue(context, tmp_itemSpacing->second, result.itemSpacing);
764
+ }
747
765
  }
748
766
 
749
767
  static inline std::string toString(const EnrichedMarkdownMarkdownStyleListStruct &value) {
@@ -756,6 +774,118 @@ static inline folly::dynamic toDynamic(const EnrichedMarkdownMarkdownStyleListSt
756
774
  }
757
775
  #endif
758
776
 
777
+ struct EnrichedMarkdownMarkdownStyleCodeBlockSyntaxColorsStruct {
778
+ SharedColor keyword{};
779
+ SharedColor operatorColor{};
780
+ SharedColor punctuation{};
781
+ SharedColor string{};
782
+ SharedColor number{};
783
+ SharedColor constant{};
784
+ SharedColor comment{};
785
+ SharedColor function{};
786
+ SharedColor type{};
787
+ SharedColor variable{};
788
+ SharedColor property{};
789
+ SharedColor tag{};
790
+ SharedColor attribute{};
791
+ SharedColor embedded{};
792
+
793
+
794
+ #ifdef RN_SERIALIZABLE_STATE
795
+ bool operator==(const EnrichedMarkdownMarkdownStyleCodeBlockSyntaxColorsStruct&) const = default;
796
+
797
+ folly::dynamic toDynamic() const {
798
+ folly::dynamic result = folly::dynamic::object();
799
+ result["keyword"] = ::facebook::react::toDynamic(keyword);
800
+ result["operatorColor"] = ::facebook::react::toDynamic(operatorColor);
801
+ result["punctuation"] = ::facebook::react::toDynamic(punctuation);
802
+ result["string"] = ::facebook::react::toDynamic(string);
803
+ result["number"] = ::facebook::react::toDynamic(number);
804
+ result["constant"] = ::facebook::react::toDynamic(constant);
805
+ result["comment"] = ::facebook::react::toDynamic(comment);
806
+ result["function"] = ::facebook::react::toDynamic(function);
807
+ result["type"] = ::facebook::react::toDynamic(type);
808
+ result["variable"] = ::facebook::react::toDynamic(variable);
809
+ result["property"] = ::facebook::react::toDynamic(property);
810
+ result["tag"] = ::facebook::react::toDynamic(tag);
811
+ result["attribute"] = ::facebook::react::toDynamic(attribute);
812
+ result["embedded"] = ::facebook::react::toDynamic(embedded);
813
+ return result;
814
+ }
815
+ #endif
816
+ };
817
+
818
+ static inline void fromRawValue(const PropsParserContext& context, const RawValue &value, EnrichedMarkdownMarkdownStyleCodeBlockSyntaxColorsStruct &result) {
819
+ auto map = (std::unordered_map<std::string, RawValue>)value;
820
+
821
+ auto tmp_keyword = map.find("keyword");
822
+ if (tmp_keyword != map.end()) {
823
+ fromRawValue(context, tmp_keyword->second, result.keyword);
824
+ }
825
+ auto tmp_operatorColor = map.find("operatorColor");
826
+ if (tmp_operatorColor != map.end()) {
827
+ fromRawValue(context, tmp_operatorColor->second, result.operatorColor);
828
+ }
829
+ auto tmp_punctuation = map.find("punctuation");
830
+ if (tmp_punctuation != map.end()) {
831
+ fromRawValue(context, tmp_punctuation->second, result.punctuation);
832
+ }
833
+ auto tmp_string = map.find("string");
834
+ if (tmp_string != map.end()) {
835
+ fromRawValue(context, tmp_string->second, result.string);
836
+ }
837
+ auto tmp_number = map.find("number");
838
+ if (tmp_number != map.end()) {
839
+ fromRawValue(context, tmp_number->second, result.number);
840
+ }
841
+ auto tmp_constant = map.find("constant");
842
+ if (tmp_constant != map.end()) {
843
+ fromRawValue(context, tmp_constant->second, result.constant);
844
+ }
845
+ auto tmp_comment = map.find("comment");
846
+ if (tmp_comment != map.end()) {
847
+ fromRawValue(context, tmp_comment->second, result.comment);
848
+ }
849
+ auto tmp_function = map.find("function");
850
+ if (tmp_function != map.end()) {
851
+ fromRawValue(context, tmp_function->second, result.function);
852
+ }
853
+ auto tmp_type = map.find("type");
854
+ if (tmp_type != map.end()) {
855
+ fromRawValue(context, tmp_type->second, result.type);
856
+ }
857
+ auto tmp_variable = map.find("variable");
858
+ if (tmp_variable != map.end()) {
859
+ fromRawValue(context, tmp_variable->second, result.variable);
860
+ }
861
+ auto tmp_property = map.find("property");
862
+ if (tmp_property != map.end()) {
863
+ fromRawValue(context, tmp_property->second, result.property);
864
+ }
865
+ auto tmp_tag = map.find("tag");
866
+ if (tmp_tag != map.end()) {
867
+ fromRawValue(context, tmp_tag->second, result.tag);
868
+ }
869
+ auto tmp_attribute = map.find("attribute");
870
+ if (tmp_attribute != map.end()) {
871
+ fromRawValue(context, tmp_attribute->second, result.attribute);
872
+ }
873
+ auto tmp_embedded = map.find("embedded");
874
+ if (tmp_embedded != map.end()) {
875
+ fromRawValue(context, tmp_embedded->second, result.embedded);
876
+ }
877
+ }
878
+
879
+ static inline std::string toString(const EnrichedMarkdownMarkdownStyleCodeBlockSyntaxColorsStruct &value) {
880
+ return "[Object EnrichedMarkdownMarkdownStyleCodeBlockSyntaxColorsStruct]";
881
+ }
882
+
883
+ #ifdef RN_SERIALIZABLE_STATE
884
+ static inline folly::dynamic toDynamic(const EnrichedMarkdownMarkdownStyleCodeBlockSyntaxColorsStruct &value) {
885
+ return value.toDynamic();
886
+ }
887
+ #endif
888
+
759
889
  struct EnrichedMarkdownMarkdownStyleCodeBlockStruct {
760
890
  Float fontSize{0.0};
761
891
  std::string fontFamily{};
@@ -769,6 +899,7 @@ struct EnrichedMarkdownMarkdownStyleCodeBlockStruct {
769
899
  Float borderRadius{0.0};
770
900
  Float borderWidth{0.0};
771
901
  Float padding{0.0};
902
+ EnrichedMarkdownMarkdownStyleCodeBlockSyntaxColorsStruct syntaxColors{};
772
903
 
773
904
 
774
905
  #ifdef RN_SERIALIZABLE_STATE
@@ -788,6 +919,7 @@ struct EnrichedMarkdownMarkdownStyleCodeBlockStruct {
788
919
  result["borderRadius"] = borderRadius;
789
920
  result["borderWidth"] = borderWidth;
790
921
  result["padding"] = padding;
922
+ result["syntaxColors"] = ::facebook::react::toDynamic(syntaxColors);
791
923
  return result;
792
924
  }
793
925
  #endif
@@ -844,6 +976,10 @@ static inline void fromRawValue(const PropsParserContext& context, const RawValu
844
976
  if (tmp_padding != map.end()) {
845
977
  fromRawValue(context, tmp_padding->second, result.padding);
846
978
  }
979
+ auto tmp_syntaxColors = map.find("syntaxColors");
980
+ if (tmp_syntaxColors != map.end()) {
981
+ fromRawValue(context, tmp_syntaxColors->second, result.syntaxColors);
982
+ }
847
983
  }
848
984
 
849
985
  static inline std::string toString(const EnrichedMarkdownMarkdownStyleCodeBlockStruct &value) {
@@ -1190,6 +1326,9 @@ static inline folly::dynamic toDynamic(const EnrichedMarkdownMarkdownStyleCodeSt
1190
1326
 
1191
1327
  struct EnrichedMarkdownMarkdownStyleImageStruct {
1192
1328
  Float height{0.0};
1329
+ Float maxHeight{0.0};
1330
+ Float aspectRatio{0.0};
1331
+ std::string resizeMode{};
1193
1332
  Float borderRadius{0.0};
1194
1333
  Float marginTop{0.0};
1195
1334
  Float marginBottom{0.0};
@@ -1201,6 +1340,9 @@ struct EnrichedMarkdownMarkdownStyleImageStruct {
1201
1340
  folly::dynamic toDynamic() const {
1202
1341
  folly::dynamic result = folly::dynamic::object();
1203
1342
  result["height"] = height;
1343
+ result["maxHeight"] = maxHeight;
1344
+ result["aspectRatio"] = aspectRatio;
1345
+ result["resizeMode"] = resizeMode;
1204
1346
  result["borderRadius"] = borderRadius;
1205
1347
  result["marginTop"] = marginTop;
1206
1348
  result["marginBottom"] = marginBottom;
@@ -1216,6 +1358,18 @@ static inline void fromRawValue(const PropsParserContext& context, const RawValu
1216
1358
  if (tmp_height != map.end()) {
1217
1359
  fromRawValue(context, tmp_height->second, result.height);
1218
1360
  }
1361
+ auto tmp_maxHeight = map.find("maxHeight");
1362
+ if (tmp_maxHeight != map.end()) {
1363
+ fromRawValue(context, tmp_maxHeight->second, result.maxHeight);
1364
+ }
1365
+ auto tmp_aspectRatio = map.find("aspectRatio");
1366
+ if (tmp_aspectRatio != map.end()) {
1367
+ fromRawValue(context, tmp_aspectRatio->second, result.aspectRatio);
1368
+ }
1369
+ auto tmp_resizeMode = map.find("resizeMode");
1370
+ if (tmp_resizeMode != map.end()) {
1371
+ fromRawValue(context, tmp_resizeMode->second, result.resizeMode);
1372
+ }
1219
1373
  auto tmp_borderRadius = map.find("borderRadius");
1220
1374
  if (tmp_borderRadius != map.end()) {
1221
1375
  fromRawValue(context, tmp_borderRadius->second, result.borderRadius);
@@ -1344,6 +1498,8 @@ struct EnrichedMarkdownMarkdownStyleTableStruct {
1344
1498
  Float borderRadius{0.0};
1345
1499
  Float cellPaddingHorizontal{0.0};
1346
1500
  Float cellPaddingVertical{0.0};
1501
+ Float horizontalOverflow{0.0};
1502
+ std::string align{};
1347
1503
 
1348
1504
 
1349
1505
  #ifdef RN_SERIALIZABLE_STATE
@@ -1368,6 +1524,8 @@ struct EnrichedMarkdownMarkdownStyleTableStruct {
1368
1524
  result["borderRadius"] = borderRadius;
1369
1525
  result["cellPaddingHorizontal"] = cellPaddingHorizontal;
1370
1526
  result["cellPaddingVertical"] = cellPaddingVertical;
1527
+ result["horizontalOverflow"] = horizontalOverflow;
1528
+ result["align"] = align;
1371
1529
  return result;
1372
1530
  }
1373
1531
  #endif
@@ -1444,6 +1602,14 @@ static inline void fromRawValue(const PropsParserContext& context, const RawValu
1444
1602
  if (tmp_cellPaddingVertical != map.end()) {
1445
1603
  fromRawValue(context, tmp_cellPaddingVertical->second, result.cellPaddingVertical);
1446
1604
  }
1605
+ auto tmp_horizontalOverflow = map.find("horizontalOverflow");
1606
+ if (tmp_horizontalOverflow != map.end()) {
1607
+ fromRawValue(context, tmp_horizontalOverflow->second, result.horizontalOverflow);
1608
+ }
1609
+ auto tmp_align = map.find("align");
1610
+ if (tmp_align != map.end()) {
1611
+ fromRawValue(context, tmp_align->second, result.align);
1612
+ }
1447
1613
  }
1448
1614
 
1449
1615
  static inline std::string toString(const EnrichedMarkdownMarkdownStyleTableStruct &value) {
@@ -2090,6 +2256,7 @@ struct EnrichedMarkdownMd4cFlagsStruct {
2090
2256
  bool subscript{false};
2091
2257
  bool latexMath{false};
2092
2258
  bool highlight{false};
2259
+ bool hardSoftBreaks{false};
2093
2260
 
2094
2261
 
2095
2262
  #ifdef RN_SERIALIZABLE_STATE
@@ -2102,6 +2269,7 @@ struct EnrichedMarkdownMd4cFlagsStruct {
2102
2269
  result["subscript"] = subscript;
2103
2270
  result["latexMath"] = latexMath;
2104
2271
  result["highlight"] = highlight;
2272
+ result["hardSoftBreaks"] = hardSoftBreaks;
2105
2273
  return result;
2106
2274
  }
2107
2275
  #endif
@@ -2130,6 +2298,10 @@ static inline void fromRawValue(const PropsParserContext& context, const RawValu
2130
2298
  if (tmp_highlight != map.end()) {
2131
2299
  fromRawValue(context, tmp_highlight->second, result.highlight);
2132
2300
  }
2301
+ auto tmp_hardSoftBreaks = map.find("hardSoftBreaks");
2302
+ if (tmp_hardSoftBreaks != map.end()) {
2303
+ fromRawValue(context, tmp_hardSoftBreaks->second, result.hardSoftBreaks);
2304
+ }
2133
2305
  }
2134
2306
 
2135
2307
  static inline std::string toString(const EnrichedMarkdownMd4cFlagsStruct &value) {
@@ -2144,6 +2316,7 @@ static inline folly::dynamic toDynamic(const EnrichedMarkdownMd4cFlagsStruct &va
2144
2316
 
2145
2317
  struct EnrichedMarkdownStreamingConfigStruct {
2146
2318
  std::string tableMode{};
2319
+ std::string codeBlockMode{};
2147
2320
 
2148
2321
 
2149
2322
  #ifdef RN_SERIALIZABLE_STATE
@@ -2152,6 +2325,7 @@ struct EnrichedMarkdownStreamingConfigStruct {
2152
2325
  folly::dynamic toDynamic() const {
2153
2326
  folly::dynamic result = folly::dynamic::object();
2154
2327
  result["tableMode"] = tableMode;
2328
+ result["codeBlockMode"] = codeBlockMode;
2155
2329
  return result;
2156
2330
  }
2157
2331
  #endif
@@ -2164,6 +2338,10 @@ static inline void fromRawValue(const PropsParserContext& context, const RawValu
2164
2338
  if (tmp_tableMode != map.end()) {
2165
2339
  fromRawValue(context, tmp_tableMode->second, result.tableMode);
2166
2340
  }
2341
+ auto tmp_codeBlockMode = map.find("codeBlockMode");
2342
+ if (tmp_codeBlockMode != map.end()) {
2343
+ fromRawValue(context, tmp_codeBlockMode->second, result.codeBlockMode);
2344
+ }
2167
2345
  }
2168
2346
 
2169
2347
  static inline std::string toString(const EnrichedMarkdownStreamingConfigStruct &value) {
@@ -2226,6 +2404,56 @@ static inline void fromRawValue(const PropsParserContext& context, const RawValu
2226
2404
  }
2227
2405
 
2228
2406
 
2407
+ struct EnrichedMarkdownImageRequestHeadersStruct {
2408
+ std::string name{};
2409
+ std::string value{};
2410
+
2411
+
2412
+ #ifdef RN_SERIALIZABLE_STATE
2413
+ bool operator==(const EnrichedMarkdownImageRequestHeadersStruct&) const = default;
2414
+
2415
+ folly::dynamic toDynamic() const {
2416
+ folly::dynamic result = folly::dynamic::object();
2417
+ result["name"] = name;
2418
+ result["value"] = value;
2419
+ return result;
2420
+ }
2421
+ #endif
2422
+ };
2423
+
2424
+ static inline void fromRawValue(const PropsParserContext& context, const RawValue &value, EnrichedMarkdownImageRequestHeadersStruct &result) {
2425
+ auto map = (std::unordered_map<std::string, RawValue>)value;
2426
+
2427
+ auto tmp_name = map.find("name");
2428
+ if (tmp_name != map.end()) {
2429
+ fromRawValue(context, tmp_name->second, result.name);
2430
+ }
2431
+ auto tmp_value = map.find("value");
2432
+ if (tmp_value != map.end()) {
2433
+ fromRawValue(context, tmp_value->second, result.value);
2434
+ }
2435
+ }
2436
+
2437
+ static inline std::string toString(const EnrichedMarkdownImageRequestHeadersStruct &value) {
2438
+ return "[Object EnrichedMarkdownImageRequestHeadersStruct]";
2439
+ }
2440
+
2441
+ #ifdef RN_SERIALIZABLE_STATE
2442
+ static inline folly::dynamic toDynamic(const EnrichedMarkdownImageRequestHeadersStruct &value) {
2443
+ return value.toDynamic();
2444
+ }
2445
+ #endif
2446
+
2447
+ static inline void fromRawValue(const PropsParserContext& context, const RawValue &value, std::vector<EnrichedMarkdownImageRequestHeadersStruct> &result) {
2448
+ auto items = (std::vector<RawValue>)value;
2449
+ for (const auto &item : items) {
2450
+ EnrichedMarkdownImageRequestHeadersStruct newItem;
2451
+ fromRawValue(context, item, newItem);
2452
+ result.emplace_back(newItem);
2453
+ }
2454
+ }
2455
+
2456
+
2229
2457
  struct EnrichedMarkdownSelectionMenuConfigStruct {
2230
2458
  bool copyAsMarkdown{false};
2231
2459
  bool copyImageUrl{false};
@@ -2568,6 +2796,7 @@ class EnrichedMarkdownProps final : public ViewProps {
2568
2796
 
2569
2797
  std::string markdown{};
2570
2798
  EnrichedMarkdownMarkdownStyleStruct markdownStyle{};
2799
+ bool enableTaskListItemToggle{true};
2571
2800
  bool enableLinkPreview{true};
2572
2801
  bool selectable{false};
2573
2802
  SharedColor selectionColor{};
@@ -2579,7 +2808,9 @@ class EnrichedMarkdownProps final : public ViewProps {
2579
2808
  bool streamingAnimation{false};
2580
2809
  EnrichedMarkdownStreamingConfigStruct streamingConfig{};
2581
2810
  std::string spoilerOverlay{std::string{"particles"}};
2811
+ bool contextMenuHidden{false};
2582
2812
  std::vector<EnrichedMarkdownContextMenuItemsStruct> contextMenuItems{};
2813
+ std::vector<EnrichedMarkdownImageRequestHeadersStruct> imageRequestHeaders{};
2583
2814
  EnrichedMarkdownSelectionMenuConfigStruct selectionMenuConfig{};
2584
2815
  EnrichedMarkdownAccessibilityLabelsStruct accessibilityLabels{};
2585
2816
  std::string textBreakStrategy{std::string{"highQuality"}};
@@ -2811,7 +3042,317 @@ static inline folly::dynamic toDynamic(const EnrichedMarkdownTextInputMarkdownSt
2811
3042
  }
2812
3043
  #endif
2813
3044
 
2814
- struct EnrichedMarkdownTextInputMarkdownStyleMathStruct {
3045
+ struct EnrichedMarkdownTextInputMarkdownStyleH1Struct {
3046
+ Float fontSize{0.0};
3047
+ std::string fontWeight{};
3048
+ SharedColor color{};
3049
+
3050
+
3051
+ #ifdef RN_SERIALIZABLE_STATE
3052
+ bool operator==(const EnrichedMarkdownTextInputMarkdownStyleH1Struct&) const = default;
3053
+
3054
+ folly::dynamic toDynamic() const {
3055
+ folly::dynamic result = folly::dynamic::object();
3056
+ result["fontSize"] = fontSize;
3057
+ result["fontWeight"] = fontWeight;
3058
+ result["color"] = ::facebook::react::toDynamic(color);
3059
+ return result;
3060
+ }
3061
+ #endif
3062
+ };
3063
+
3064
+ static inline void fromRawValue(const PropsParserContext& context, const RawValue &value, EnrichedMarkdownTextInputMarkdownStyleH1Struct &result) {
3065
+ auto map = (std::unordered_map<std::string, RawValue>)value;
3066
+
3067
+ auto tmp_fontSize = map.find("fontSize");
3068
+ if (tmp_fontSize != map.end()) {
3069
+ fromRawValue(context, tmp_fontSize->second, result.fontSize);
3070
+ }
3071
+ auto tmp_fontWeight = map.find("fontWeight");
3072
+ if (tmp_fontWeight != map.end()) {
3073
+ fromRawValue(context, tmp_fontWeight->second, result.fontWeight);
3074
+ }
3075
+ auto tmp_color = map.find("color");
3076
+ if (tmp_color != map.end()) {
3077
+ fromRawValue(context, tmp_color->second, result.color);
3078
+ }
3079
+ }
3080
+
3081
+ static inline std::string toString(const EnrichedMarkdownTextInputMarkdownStyleH1Struct &value) {
3082
+ return "[Object EnrichedMarkdownTextInputMarkdownStyleH1Struct]";
3083
+ }
3084
+
3085
+ #ifdef RN_SERIALIZABLE_STATE
3086
+ static inline folly::dynamic toDynamic(const EnrichedMarkdownTextInputMarkdownStyleH1Struct &value) {
3087
+ return value.toDynamic();
3088
+ }
3089
+ #endif
3090
+
3091
+ struct EnrichedMarkdownTextInputMarkdownStyleH2Struct {
3092
+ Float fontSize{0.0};
3093
+ std::string fontWeight{};
3094
+ SharedColor color{};
3095
+
3096
+
3097
+ #ifdef RN_SERIALIZABLE_STATE
3098
+ bool operator==(const EnrichedMarkdownTextInputMarkdownStyleH2Struct&) const = default;
3099
+
3100
+ folly::dynamic toDynamic() const {
3101
+ folly::dynamic result = folly::dynamic::object();
3102
+ result["fontSize"] = fontSize;
3103
+ result["fontWeight"] = fontWeight;
3104
+ result["color"] = ::facebook::react::toDynamic(color);
3105
+ return result;
3106
+ }
3107
+ #endif
3108
+ };
3109
+
3110
+ static inline void fromRawValue(const PropsParserContext& context, const RawValue &value, EnrichedMarkdownTextInputMarkdownStyleH2Struct &result) {
3111
+ auto map = (std::unordered_map<std::string, RawValue>)value;
3112
+
3113
+ auto tmp_fontSize = map.find("fontSize");
3114
+ if (tmp_fontSize != map.end()) {
3115
+ fromRawValue(context, tmp_fontSize->second, result.fontSize);
3116
+ }
3117
+ auto tmp_fontWeight = map.find("fontWeight");
3118
+ if (tmp_fontWeight != map.end()) {
3119
+ fromRawValue(context, tmp_fontWeight->second, result.fontWeight);
3120
+ }
3121
+ auto tmp_color = map.find("color");
3122
+ if (tmp_color != map.end()) {
3123
+ fromRawValue(context, tmp_color->second, result.color);
3124
+ }
3125
+ }
3126
+
3127
+ static inline std::string toString(const EnrichedMarkdownTextInputMarkdownStyleH2Struct &value) {
3128
+ return "[Object EnrichedMarkdownTextInputMarkdownStyleH2Struct]";
3129
+ }
3130
+
3131
+ #ifdef RN_SERIALIZABLE_STATE
3132
+ static inline folly::dynamic toDynamic(const EnrichedMarkdownTextInputMarkdownStyleH2Struct &value) {
3133
+ return value.toDynamic();
3134
+ }
3135
+ #endif
3136
+
3137
+ struct EnrichedMarkdownTextInputMarkdownStyleH3Struct {
3138
+ Float fontSize{0.0};
3139
+ std::string fontWeight{};
3140
+ SharedColor color{};
3141
+
3142
+
3143
+ #ifdef RN_SERIALIZABLE_STATE
3144
+ bool operator==(const EnrichedMarkdownTextInputMarkdownStyleH3Struct&) const = default;
3145
+
3146
+ folly::dynamic toDynamic() const {
3147
+ folly::dynamic result = folly::dynamic::object();
3148
+ result["fontSize"] = fontSize;
3149
+ result["fontWeight"] = fontWeight;
3150
+ result["color"] = ::facebook::react::toDynamic(color);
3151
+ return result;
3152
+ }
3153
+ #endif
3154
+ };
3155
+
3156
+ static inline void fromRawValue(const PropsParserContext& context, const RawValue &value, EnrichedMarkdownTextInputMarkdownStyleH3Struct &result) {
3157
+ auto map = (std::unordered_map<std::string, RawValue>)value;
3158
+
3159
+ auto tmp_fontSize = map.find("fontSize");
3160
+ if (tmp_fontSize != map.end()) {
3161
+ fromRawValue(context, tmp_fontSize->second, result.fontSize);
3162
+ }
3163
+ auto tmp_fontWeight = map.find("fontWeight");
3164
+ if (tmp_fontWeight != map.end()) {
3165
+ fromRawValue(context, tmp_fontWeight->second, result.fontWeight);
3166
+ }
3167
+ auto tmp_color = map.find("color");
3168
+ if (tmp_color != map.end()) {
3169
+ fromRawValue(context, tmp_color->second, result.color);
3170
+ }
3171
+ }
3172
+
3173
+ static inline std::string toString(const EnrichedMarkdownTextInputMarkdownStyleH3Struct &value) {
3174
+ return "[Object EnrichedMarkdownTextInputMarkdownStyleH3Struct]";
3175
+ }
3176
+
3177
+ #ifdef RN_SERIALIZABLE_STATE
3178
+ static inline folly::dynamic toDynamic(const EnrichedMarkdownTextInputMarkdownStyleH3Struct &value) {
3179
+ return value.toDynamic();
3180
+ }
3181
+ #endif
3182
+
3183
+ struct EnrichedMarkdownTextInputMarkdownStyleH4Struct {
3184
+ Float fontSize{0.0};
3185
+ std::string fontWeight{};
3186
+ SharedColor color{};
3187
+
3188
+
3189
+ #ifdef RN_SERIALIZABLE_STATE
3190
+ bool operator==(const EnrichedMarkdownTextInputMarkdownStyleH4Struct&) const = default;
3191
+
3192
+ folly::dynamic toDynamic() const {
3193
+ folly::dynamic result = folly::dynamic::object();
3194
+ result["fontSize"] = fontSize;
3195
+ result["fontWeight"] = fontWeight;
3196
+ result["color"] = ::facebook::react::toDynamic(color);
3197
+ return result;
3198
+ }
3199
+ #endif
3200
+ };
3201
+
3202
+ static inline void fromRawValue(const PropsParserContext& context, const RawValue &value, EnrichedMarkdownTextInputMarkdownStyleH4Struct &result) {
3203
+ auto map = (std::unordered_map<std::string, RawValue>)value;
3204
+
3205
+ auto tmp_fontSize = map.find("fontSize");
3206
+ if (tmp_fontSize != map.end()) {
3207
+ fromRawValue(context, tmp_fontSize->second, result.fontSize);
3208
+ }
3209
+ auto tmp_fontWeight = map.find("fontWeight");
3210
+ if (tmp_fontWeight != map.end()) {
3211
+ fromRawValue(context, tmp_fontWeight->second, result.fontWeight);
3212
+ }
3213
+ auto tmp_color = map.find("color");
3214
+ if (tmp_color != map.end()) {
3215
+ fromRawValue(context, tmp_color->second, result.color);
3216
+ }
3217
+ }
3218
+
3219
+ static inline std::string toString(const EnrichedMarkdownTextInputMarkdownStyleH4Struct &value) {
3220
+ return "[Object EnrichedMarkdownTextInputMarkdownStyleH4Struct]";
3221
+ }
3222
+
3223
+ #ifdef RN_SERIALIZABLE_STATE
3224
+ static inline folly::dynamic toDynamic(const EnrichedMarkdownTextInputMarkdownStyleH4Struct &value) {
3225
+ return value.toDynamic();
3226
+ }
3227
+ #endif
3228
+
3229
+ struct EnrichedMarkdownTextInputMarkdownStyleH5Struct {
3230
+ Float fontSize{0.0};
3231
+ std::string fontWeight{};
3232
+ SharedColor color{};
3233
+
3234
+
3235
+ #ifdef RN_SERIALIZABLE_STATE
3236
+ bool operator==(const EnrichedMarkdownTextInputMarkdownStyleH5Struct&) const = default;
3237
+
3238
+ folly::dynamic toDynamic() const {
3239
+ folly::dynamic result = folly::dynamic::object();
3240
+ result["fontSize"] = fontSize;
3241
+ result["fontWeight"] = fontWeight;
3242
+ result["color"] = ::facebook::react::toDynamic(color);
3243
+ return result;
3244
+ }
3245
+ #endif
3246
+ };
3247
+
3248
+ static inline void fromRawValue(const PropsParserContext& context, const RawValue &value, EnrichedMarkdownTextInputMarkdownStyleH5Struct &result) {
3249
+ auto map = (std::unordered_map<std::string, RawValue>)value;
3250
+
3251
+ auto tmp_fontSize = map.find("fontSize");
3252
+ if (tmp_fontSize != map.end()) {
3253
+ fromRawValue(context, tmp_fontSize->second, result.fontSize);
3254
+ }
3255
+ auto tmp_fontWeight = map.find("fontWeight");
3256
+ if (tmp_fontWeight != map.end()) {
3257
+ fromRawValue(context, tmp_fontWeight->second, result.fontWeight);
3258
+ }
3259
+ auto tmp_color = map.find("color");
3260
+ if (tmp_color != map.end()) {
3261
+ fromRawValue(context, tmp_color->second, result.color);
3262
+ }
3263
+ }
3264
+
3265
+ static inline std::string toString(const EnrichedMarkdownTextInputMarkdownStyleH5Struct &value) {
3266
+ return "[Object EnrichedMarkdownTextInputMarkdownStyleH5Struct]";
3267
+ }
3268
+
3269
+ #ifdef RN_SERIALIZABLE_STATE
3270
+ static inline folly::dynamic toDynamic(const EnrichedMarkdownTextInputMarkdownStyleH5Struct &value) {
3271
+ return value.toDynamic();
3272
+ }
3273
+ #endif
3274
+
3275
+ struct EnrichedMarkdownTextInputMarkdownStyleH6Struct {
3276
+ Float fontSize{0.0};
3277
+ std::string fontWeight{};
3278
+ SharedColor color{};
3279
+
3280
+
3281
+ #ifdef RN_SERIALIZABLE_STATE
3282
+ bool operator==(const EnrichedMarkdownTextInputMarkdownStyleH6Struct&) const = default;
3283
+
3284
+ folly::dynamic toDynamic() const {
3285
+ folly::dynamic result = folly::dynamic::object();
3286
+ result["fontSize"] = fontSize;
3287
+ result["fontWeight"] = fontWeight;
3288
+ result["color"] = ::facebook::react::toDynamic(color);
3289
+ return result;
3290
+ }
3291
+ #endif
3292
+ };
3293
+
3294
+ static inline void fromRawValue(const PropsParserContext& context, const RawValue &value, EnrichedMarkdownTextInputMarkdownStyleH6Struct &result) {
3295
+ auto map = (std::unordered_map<std::string, RawValue>)value;
3296
+
3297
+ auto tmp_fontSize = map.find("fontSize");
3298
+ if (tmp_fontSize != map.end()) {
3299
+ fromRawValue(context, tmp_fontSize->second, result.fontSize);
3300
+ }
3301
+ auto tmp_fontWeight = map.find("fontWeight");
3302
+ if (tmp_fontWeight != map.end()) {
3303
+ fromRawValue(context, tmp_fontWeight->second, result.fontWeight);
3304
+ }
3305
+ auto tmp_color = map.find("color");
3306
+ if (tmp_color != map.end()) {
3307
+ fromRawValue(context, tmp_color->second, result.color);
3308
+ }
3309
+ }
3310
+
3311
+ static inline std::string toString(const EnrichedMarkdownTextInputMarkdownStyleH6Struct &value) {
3312
+ return "[Object EnrichedMarkdownTextInputMarkdownStyleH6Struct]";
3313
+ }
3314
+
3315
+ #ifdef RN_SERIALIZABLE_STATE
3316
+ static inline folly::dynamic toDynamic(const EnrichedMarkdownTextInputMarkdownStyleH6Struct &value) {
3317
+ return value.toDynamic();
3318
+ }
3319
+ #endif
3320
+
3321
+ struct EnrichedMarkdownTextInputMarkdownStyleListStruct {
3322
+ Float itemSpacing{0.0};
3323
+
3324
+
3325
+ #ifdef RN_SERIALIZABLE_STATE
3326
+ bool operator==(const EnrichedMarkdownTextInputMarkdownStyleListStruct&) const = default;
3327
+
3328
+ folly::dynamic toDynamic() const {
3329
+ folly::dynamic result = folly::dynamic::object();
3330
+ result["itemSpacing"] = itemSpacing;
3331
+ return result;
3332
+ }
3333
+ #endif
3334
+ };
3335
+
3336
+ static inline void fromRawValue(const PropsParserContext& context, const RawValue &value, EnrichedMarkdownTextInputMarkdownStyleListStruct &result) {
3337
+ auto map = (std::unordered_map<std::string, RawValue>)value;
3338
+
3339
+ auto tmp_itemSpacing = map.find("itemSpacing");
3340
+ if (tmp_itemSpacing != map.end()) {
3341
+ fromRawValue(context, tmp_itemSpacing->second, result.itemSpacing);
3342
+ }
3343
+ }
3344
+
3345
+ static inline std::string toString(const EnrichedMarkdownTextInputMarkdownStyleListStruct &value) {
3346
+ return "[Object EnrichedMarkdownTextInputMarkdownStyleListStruct]";
3347
+ }
3348
+
3349
+ #ifdef RN_SERIALIZABLE_STATE
3350
+ static inline folly::dynamic toDynamic(const EnrichedMarkdownTextInputMarkdownStyleListStruct &value) {
3351
+ return value.toDynamic();
3352
+ }
3353
+ #endif
3354
+
3355
+ struct EnrichedMarkdownTextInputMarkdownStyleInlineMathStruct {
2815
3356
  SharedColor color{};
2816
3357
  Float fontSize{0.0};
2817
3358
  SharedColor backgroundColor{};
@@ -2826,7 +3367,7 @@ struct EnrichedMarkdownTextInputMarkdownStyleMathStruct {
2826
3367
 
2827
3368
 
2828
3369
  #ifdef RN_SERIALIZABLE_STATE
2829
- bool operator==(const EnrichedMarkdownTextInputMarkdownStyleMathStruct&) const = default;
3370
+ bool operator==(const EnrichedMarkdownTextInputMarkdownStyleInlineMathStruct&) const = default;
2830
3371
 
2831
3372
  folly::dynamic toDynamic() const {
2832
3373
  folly::dynamic result = folly::dynamic::object();
@@ -2846,7 +3387,7 @@ struct EnrichedMarkdownTextInputMarkdownStyleMathStruct {
2846
3387
  #endif
2847
3388
  };
2848
3389
 
2849
- static inline void fromRawValue(const PropsParserContext& context, const RawValue &value, EnrichedMarkdownTextInputMarkdownStyleMathStruct &result) {
3390
+ static inline void fromRawValue(const PropsParserContext& context, const RawValue &value, EnrichedMarkdownTextInputMarkdownStyleInlineMathStruct &result) {
2850
3391
  auto map = (std::unordered_map<std::string, RawValue>)value;
2851
3392
 
2852
3393
  auto tmp_color = map.find("color");
@@ -2895,17 +3436,17 @@ static inline void fromRawValue(const PropsParserContext& context, const RawValu
2895
3436
  }
2896
3437
  }
2897
3438
 
2898
- static inline std::string toString(const EnrichedMarkdownTextInputMarkdownStyleMathStruct &value) {
2899
- return "[Object EnrichedMarkdownTextInputMarkdownStyleMathStruct]";
3439
+ static inline std::string toString(const EnrichedMarkdownTextInputMarkdownStyleInlineMathStruct &value) {
3440
+ return "[Object EnrichedMarkdownTextInputMarkdownStyleInlineMathStruct]";
2900
3441
  }
2901
3442
 
2902
3443
  #ifdef RN_SERIALIZABLE_STATE
2903
- static inline folly::dynamic toDynamic(const EnrichedMarkdownTextInputMarkdownStyleMathStruct &value) {
3444
+ static inline folly::dynamic toDynamic(const EnrichedMarkdownTextInputMarkdownStyleInlineMathStruct &value) {
2904
3445
  return value.toDynamic();
2905
3446
  }
2906
3447
  #endif
2907
3448
 
2908
- struct EnrichedMarkdownTextInputMarkdownStyleMathBlockStruct {
3449
+ struct EnrichedMarkdownTextInputMarkdownStyleMathStruct {
2909
3450
  SharedColor color{};
2910
3451
  Float fontSize{0.0};
2911
3452
  SharedColor backgroundColor{};
@@ -2919,11 +3460,11 @@ struct EnrichedMarkdownTextInputMarkdownStyleMathBlockStruct {
2919
3460
  std::string fontWeight{};
2920
3461
  Float marginTop{0.0};
2921
3462
  Float marginBottom{0.0};
2922
- std::string alignment{};
3463
+ std::string textAlign{};
2923
3464
 
2924
3465
 
2925
3466
  #ifdef RN_SERIALIZABLE_STATE
2926
- bool operator==(const EnrichedMarkdownTextInputMarkdownStyleMathBlockStruct&) const = default;
3467
+ bool operator==(const EnrichedMarkdownTextInputMarkdownStyleMathStruct&) const = default;
2927
3468
 
2928
3469
  folly::dynamic toDynamic() const {
2929
3470
  folly::dynamic result = folly::dynamic::object();
@@ -2940,13 +3481,13 @@ struct EnrichedMarkdownTextInputMarkdownStyleMathBlockStruct {
2940
3481
  result["fontWeight"] = fontWeight;
2941
3482
  result["marginTop"] = marginTop;
2942
3483
  result["marginBottom"] = marginBottom;
2943
- result["alignment"] = alignment;
3484
+ result["textAlign"] = textAlign;
2944
3485
  return result;
2945
3486
  }
2946
3487
  #endif
2947
3488
  };
2948
3489
 
2949
- static inline void fromRawValue(const PropsParserContext& context, const RawValue &value, EnrichedMarkdownTextInputMarkdownStyleMathBlockStruct &result) {
3490
+ static inline void fromRawValue(const PropsParserContext& context, const RawValue &value, EnrichedMarkdownTextInputMarkdownStyleMathStruct &result) {
2950
3491
  auto map = (std::unordered_map<std::string, RawValue>)value;
2951
3492
 
2952
3493
  auto tmp_color = map.find("color");
@@ -3001,18 +3542,18 @@ static inline void fromRawValue(const PropsParserContext& context, const RawValu
3001
3542
  if (tmp_marginBottom != map.end()) {
3002
3543
  fromRawValue(context, tmp_marginBottom->second, result.marginBottom);
3003
3544
  }
3004
- auto tmp_alignment = map.find("alignment");
3005
- if (tmp_alignment != map.end()) {
3006
- fromRawValue(context, tmp_alignment->second, result.alignment);
3545
+ auto tmp_textAlign = map.find("textAlign");
3546
+ if (tmp_textAlign != map.end()) {
3547
+ fromRawValue(context, tmp_textAlign->second, result.textAlign);
3007
3548
  }
3008
3549
  }
3009
3550
 
3010
- static inline std::string toString(const EnrichedMarkdownTextInputMarkdownStyleMathBlockStruct &value) {
3011
- return "[Object EnrichedMarkdownTextInputMarkdownStyleMathBlockStruct]";
3551
+ static inline std::string toString(const EnrichedMarkdownTextInputMarkdownStyleMathStruct &value) {
3552
+ return "[Object EnrichedMarkdownTextInputMarkdownStyleMathStruct]";
3012
3553
  }
3013
3554
 
3014
3555
  #ifdef RN_SERIALIZABLE_STATE
3015
- static inline folly::dynamic toDynamic(const EnrichedMarkdownTextInputMarkdownStyleMathBlockStruct &value) {
3556
+ static inline folly::dynamic toDynamic(const EnrichedMarkdownTextInputMarkdownStyleMathStruct &value) {
3016
3557
  return value.toDynamic();
3017
3558
  }
3018
3559
  #endif
@@ -3023,8 +3564,15 @@ struct EnrichedMarkdownTextInputMarkdownStyleStruct {
3023
3564
  EnrichedMarkdownTextInputMarkdownStyleLinkStruct link{};
3024
3565
  std::vector<EnrichedMarkdownTextInputMarkdownStyleLinkVariantsStruct> linkVariants{};
3025
3566
  EnrichedMarkdownTextInputMarkdownStyleSpoilerStruct spoiler{};
3567
+ EnrichedMarkdownTextInputMarkdownStyleH1Struct h1{};
3568
+ EnrichedMarkdownTextInputMarkdownStyleH2Struct h2{};
3569
+ EnrichedMarkdownTextInputMarkdownStyleH3Struct h3{};
3570
+ EnrichedMarkdownTextInputMarkdownStyleH4Struct h4{};
3571
+ EnrichedMarkdownTextInputMarkdownStyleH5Struct h5{};
3572
+ EnrichedMarkdownTextInputMarkdownStyleH6Struct h6{};
3573
+ EnrichedMarkdownTextInputMarkdownStyleListStruct list{};
3574
+ EnrichedMarkdownTextInputMarkdownStyleInlineMathStruct inlineMath{};
3026
3575
  EnrichedMarkdownTextInputMarkdownStyleMathStruct math{};
3027
- EnrichedMarkdownTextInputMarkdownStyleMathBlockStruct mathBlock{};
3028
3576
 
3029
3577
 
3030
3578
  #ifdef RN_SERIALIZABLE_STATE
@@ -3037,8 +3585,15 @@ struct EnrichedMarkdownTextInputMarkdownStyleStruct {
3037
3585
  result["link"] = ::facebook::react::toDynamic(link);
3038
3586
  result["linkVariants"] = ::facebook::react::toDynamic(linkVariants);
3039
3587
  result["spoiler"] = ::facebook::react::toDynamic(spoiler);
3588
+ result["h1"] = ::facebook::react::toDynamic(h1);
3589
+ result["h2"] = ::facebook::react::toDynamic(h2);
3590
+ result["h3"] = ::facebook::react::toDynamic(h3);
3591
+ result["h4"] = ::facebook::react::toDynamic(h4);
3592
+ result["h5"] = ::facebook::react::toDynamic(h5);
3593
+ result["h6"] = ::facebook::react::toDynamic(h6);
3594
+ result["list"] = ::facebook::react::toDynamic(list);
3595
+ result["inlineMath"] = ::facebook::react::toDynamic(inlineMath);
3040
3596
  result["math"] = ::facebook::react::toDynamic(math);
3041
- result["mathBlock"] = ::facebook::react::toDynamic(mathBlock);
3042
3597
  return result;
3043
3598
  }
3044
3599
  #endif
@@ -3067,14 +3622,42 @@ static inline void fromRawValue(const PropsParserContext& context, const RawValu
3067
3622
  if (tmp_spoiler != map.end()) {
3068
3623
  fromRawValue(context, tmp_spoiler->second, result.spoiler);
3069
3624
  }
3625
+ auto tmp_h1 = map.find("h1");
3626
+ if (tmp_h1 != map.end()) {
3627
+ fromRawValue(context, tmp_h1->second, result.h1);
3628
+ }
3629
+ auto tmp_h2 = map.find("h2");
3630
+ if (tmp_h2 != map.end()) {
3631
+ fromRawValue(context, tmp_h2->second, result.h2);
3632
+ }
3633
+ auto tmp_h3 = map.find("h3");
3634
+ if (tmp_h3 != map.end()) {
3635
+ fromRawValue(context, tmp_h3->second, result.h3);
3636
+ }
3637
+ auto tmp_h4 = map.find("h4");
3638
+ if (tmp_h4 != map.end()) {
3639
+ fromRawValue(context, tmp_h4->second, result.h4);
3640
+ }
3641
+ auto tmp_h5 = map.find("h5");
3642
+ if (tmp_h5 != map.end()) {
3643
+ fromRawValue(context, tmp_h5->second, result.h5);
3644
+ }
3645
+ auto tmp_h6 = map.find("h6");
3646
+ if (tmp_h6 != map.end()) {
3647
+ fromRawValue(context, tmp_h6->second, result.h6);
3648
+ }
3649
+ auto tmp_list = map.find("list");
3650
+ if (tmp_list != map.end()) {
3651
+ fromRawValue(context, tmp_list->second, result.list);
3652
+ }
3653
+ auto tmp_inlineMath = map.find("inlineMath");
3654
+ if (tmp_inlineMath != map.end()) {
3655
+ fromRawValue(context, tmp_inlineMath->second, result.inlineMath);
3656
+ }
3070
3657
  auto tmp_math = map.find("math");
3071
3658
  if (tmp_math != map.end()) {
3072
3659
  fromRawValue(context, tmp_math->second, result.math);
3073
3660
  }
3074
- auto tmp_mathBlock = map.find("mathBlock");
3075
- if (tmp_mathBlock != map.end()) {
3076
- fromRawValue(context, tmp_mathBlock->second, result.mathBlock);
3077
- }
3078
3661
  }
3079
3662
 
3080
3663
  static inline std::string toString(const EnrichedMarkdownTextInputMarkdownStyleStruct &value) {
@@ -3361,6 +3944,7 @@ class EnrichedMarkdownTextInputProps final : public ViewProps {
3361
3944
  bool scrollEnabled{false};
3362
3945
  bool blockSyntax{false};
3363
3946
  std::string autoCapitalize{};
3947
+ bool interceptPaste{false};
3364
3948
  bool multiline{false};
3365
3949
  SharedColor cursorColor{};
3366
3950
  SharedColor selectionColor{};
@@ -3931,6 +4515,8 @@ struct EnrichedMarkdownTextMarkdownStyleBlockquoteStruct {
3931
4515
  Float borderWidth{0.0};
3932
4516
  Float gapWidth{0.0};
3933
4517
  SharedColor backgroundColor{};
4518
+ Float borderRadius{0.0};
4519
+ Float padding{0.0};
3934
4520
 
3935
4521
 
3936
4522
  #ifdef RN_SERIALIZABLE_STATE
@@ -3949,6 +4535,8 @@ struct EnrichedMarkdownTextMarkdownStyleBlockquoteStruct {
3949
4535
  result["borderWidth"] = borderWidth;
3950
4536
  result["gapWidth"] = gapWidth;
3951
4537
  result["backgroundColor"] = ::facebook::react::toDynamic(backgroundColor);
4538
+ result["borderRadius"] = borderRadius;
4539
+ result["padding"] = padding;
3952
4540
  return result;
3953
4541
  }
3954
4542
  #endif
@@ -4001,6 +4589,14 @@ static inline void fromRawValue(const PropsParserContext& context, const RawValu
4001
4589
  if (tmp_backgroundColor != map.end()) {
4002
4590
  fromRawValue(context, tmp_backgroundColor->second, result.backgroundColor);
4003
4591
  }
4592
+ auto tmp_borderRadius = map.find("borderRadius");
4593
+ if (tmp_borderRadius != map.end()) {
4594
+ fromRawValue(context, tmp_borderRadius->second, result.borderRadius);
4595
+ }
4596
+ auto tmp_padding = map.find("padding");
4597
+ if (tmp_padding != map.end()) {
4598
+ fromRawValue(context, tmp_padding->second, result.padding);
4599
+ }
4004
4600
  }
4005
4601
 
4006
4602
  static inline std::string toString(const EnrichedMarkdownTextMarkdownStyleBlockquoteStruct &value) {
@@ -4028,6 +4624,7 @@ struct EnrichedMarkdownTextMarkdownStyleListStruct {
4028
4624
  std::string markerFontWeight{};
4029
4625
  Float gapWidth{0.0};
4030
4626
  Float marginLeft{0.0};
4627
+ Float itemSpacing{0.0};
4031
4628
 
4032
4629
 
4033
4630
  #ifdef RN_SERIALIZABLE_STATE
@@ -4049,6 +4646,7 @@ struct EnrichedMarkdownTextMarkdownStyleListStruct {
4049
4646
  result["markerFontWeight"] = markerFontWeight;
4050
4647
  result["gapWidth"] = gapWidth;
4051
4648
  result["marginLeft"] = marginLeft;
4649
+ result["itemSpacing"] = itemSpacing;
4052
4650
  return result;
4053
4651
  }
4054
4652
  #endif
@@ -4113,6 +4711,10 @@ static inline void fromRawValue(const PropsParserContext& context, const RawValu
4113
4711
  if (tmp_marginLeft != map.end()) {
4114
4712
  fromRawValue(context, tmp_marginLeft->second, result.marginLeft);
4115
4713
  }
4714
+ auto tmp_itemSpacing = map.find("itemSpacing");
4715
+ if (tmp_itemSpacing != map.end()) {
4716
+ fromRawValue(context, tmp_itemSpacing->second, result.itemSpacing);
4717
+ }
4116
4718
  }
4117
4719
 
4118
4720
  static inline std::string toString(const EnrichedMarkdownTextMarkdownStyleListStruct &value) {
@@ -4125,6 +4727,118 @@ static inline folly::dynamic toDynamic(const EnrichedMarkdownTextMarkdownStyleLi
4125
4727
  }
4126
4728
  #endif
4127
4729
 
4730
+ struct EnrichedMarkdownTextMarkdownStyleCodeBlockSyntaxColorsStruct {
4731
+ SharedColor keyword{};
4732
+ SharedColor operatorColor{};
4733
+ SharedColor punctuation{};
4734
+ SharedColor string{};
4735
+ SharedColor number{};
4736
+ SharedColor constant{};
4737
+ SharedColor comment{};
4738
+ SharedColor function{};
4739
+ SharedColor type{};
4740
+ SharedColor variable{};
4741
+ SharedColor property{};
4742
+ SharedColor tag{};
4743
+ SharedColor attribute{};
4744
+ SharedColor embedded{};
4745
+
4746
+
4747
+ #ifdef RN_SERIALIZABLE_STATE
4748
+ bool operator==(const EnrichedMarkdownTextMarkdownStyleCodeBlockSyntaxColorsStruct&) const = default;
4749
+
4750
+ folly::dynamic toDynamic() const {
4751
+ folly::dynamic result = folly::dynamic::object();
4752
+ result["keyword"] = ::facebook::react::toDynamic(keyword);
4753
+ result["operatorColor"] = ::facebook::react::toDynamic(operatorColor);
4754
+ result["punctuation"] = ::facebook::react::toDynamic(punctuation);
4755
+ result["string"] = ::facebook::react::toDynamic(string);
4756
+ result["number"] = ::facebook::react::toDynamic(number);
4757
+ result["constant"] = ::facebook::react::toDynamic(constant);
4758
+ result["comment"] = ::facebook::react::toDynamic(comment);
4759
+ result["function"] = ::facebook::react::toDynamic(function);
4760
+ result["type"] = ::facebook::react::toDynamic(type);
4761
+ result["variable"] = ::facebook::react::toDynamic(variable);
4762
+ result["property"] = ::facebook::react::toDynamic(property);
4763
+ result["tag"] = ::facebook::react::toDynamic(tag);
4764
+ result["attribute"] = ::facebook::react::toDynamic(attribute);
4765
+ result["embedded"] = ::facebook::react::toDynamic(embedded);
4766
+ return result;
4767
+ }
4768
+ #endif
4769
+ };
4770
+
4771
+ static inline void fromRawValue(const PropsParserContext& context, const RawValue &value, EnrichedMarkdownTextMarkdownStyleCodeBlockSyntaxColorsStruct &result) {
4772
+ auto map = (std::unordered_map<std::string, RawValue>)value;
4773
+
4774
+ auto tmp_keyword = map.find("keyword");
4775
+ if (tmp_keyword != map.end()) {
4776
+ fromRawValue(context, tmp_keyword->second, result.keyword);
4777
+ }
4778
+ auto tmp_operatorColor = map.find("operatorColor");
4779
+ if (tmp_operatorColor != map.end()) {
4780
+ fromRawValue(context, tmp_operatorColor->second, result.operatorColor);
4781
+ }
4782
+ auto tmp_punctuation = map.find("punctuation");
4783
+ if (tmp_punctuation != map.end()) {
4784
+ fromRawValue(context, tmp_punctuation->second, result.punctuation);
4785
+ }
4786
+ auto tmp_string = map.find("string");
4787
+ if (tmp_string != map.end()) {
4788
+ fromRawValue(context, tmp_string->second, result.string);
4789
+ }
4790
+ auto tmp_number = map.find("number");
4791
+ if (tmp_number != map.end()) {
4792
+ fromRawValue(context, tmp_number->second, result.number);
4793
+ }
4794
+ auto tmp_constant = map.find("constant");
4795
+ if (tmp_constant != map.end()) {
4796
+ fromRawValue(context, tmp_constant->second, result.constant);
4797
+ }
4798
+ auto tmp_comment = map.find("comment");
4799
+ if (tmp_comment != map.end()) {
4800
+ fromRawValue(context, tmp_comment->second, result.comment);
4801
+ }
4802
+ auto tmp_function = map.find("function");
4803
+ if (tmp_function != map.end()) {
4804
+ fromRawValue(context, tmp_function->second, result.function);
4805
+ }
4806
+ auto tmp_type = map.find("type");
4807
+ if (tmp_type != map.end()) {
4808
+ fromRawValue(context, tmp_type->second, result.type);
4809
+ }
4810
+ auto tmp_variable = map.find("variable");
4811
+ if (tmp_variable != map.end()) {
4812
+ fromRawValue(context, tmp_variable->second, result.variable);
4813
+ }
4814
+ auto tmp_property = map.find("property");
4815
+ if (tmp_property != map.end()) {
4816
+ fromRawValue(context, tmp_property->second, result.property);
4817
+ }
4818
+ auto tmp_tag = map.find("tag");
4819
+ if (tmp_tag != map.end()) {
4820
+ fromRawValue(context, tmp_tag->second, result.tag);
4821
+ }
4822
+ auto tmp_attribute = map.find("attribute");
4823
+ if (tmp_attribute != map.end()) {
4824
+ fromRawValue(context, tmp_attribute->second, result.attribute);
4825
+ }
4826
+ auto tmp_embedded = map.find("embedded");
4827
+ if (tmp_embedded != map.end()) {
4828
+ fromRawValue(context, tmp_embedded->second, result.embedded);
4829
+ }
4830
+ }
4831
+
4832
+ static inline std::string toString(const EnrichedMarkdownTextMarkdownStyleCodeBlockSyntaxColorsStruct &value) {
4833
+ return "[Object EnrichedMarkdownTextMarkdownStyleCodeBlockSyntaxColorsStruct]";
4834
+ }
4835
+
4836
+ #ifdef RN_SERIALIZABLE_STATE
4837
+ static inline folly::dynamic toDynamic(const EnrichedMarkdownTextMarkdownStyleCodeBlockSyntaxColorsStruct &value) {
4838
+ return value.toDynamic();
4839
+ }
4840
+ #endif
4841
+
4128
4842
  struct EnrichedMarkdownTextMarkdownStyleCodeBlockStruct {
4129
4843
  Float fontSize{0.0};
4130
4844
  std::string fontFamily{};
@@ -4138,6 +4852,7 @@ struct EnrichedMarkdownTextMarkdownStyleCodeBlockStruct {
4138
4852
  Float borderRadius{0.0};
4139
4853
  Float borderWidth{0.0};
4140
4854
  Float padding{0.0};
4855
+ EnrichedMarkdownTextMarkdownStyleCodeBlockSyntaxColorsStruct syntaxColors{};
4141
4856
 
4142
4857
 
4143
4858
  #ifdef RN_SERIALIZABLE_STATE
@@ -4157,6 +4872,7 @@ struct EnrichedMarkdownTextMarkdownStyleCodeBlockStruct {
4157
4872
  result["borderRadius"] = borderRadius;
4158
4873
  result["borderWidth"] = borderWidth;
4159
4874
  result["padding"] = padding;
4875
+ result["syntaxColors"] = ::facebook::react::toDynamic(syntaxColors);
4160
4876
  return result;
4161
4877
  }
4162
4878
  #endif
@@ -4213,6 +4929,10 @@ static inline void fromRawValue(const PropsParserContext& context, const RawValu
4213
4929
  if (tmp_padding != map.end()) {
4214
4930
  fromRawValue(context, tmp_padding->second, result.padding);
4215
4931
  }
4932
+ auto tmp_syntaxColors = map.find("syntaxColors");
4933
+ if (tmp_syntaxColors != map.end()) {
4934
+ fromRawValue(context, tmp_syntaxColors->second, result.syntaxColors);
4935
+ }
4216
4936
  }
4217
4937
 
4218
4938
  static inline std::string toString(const EnrichedMarkdownTextMarkdownStyleCodeBlockStruct &value) {
@@ -4559,6 +5279,9 @@ static inline folly::dynamic toDynamic(const EnrichedMarkdownTextMarkdownStyleCo
4559
5279
 
4560
5280
  struct EnrichedMarkdownTextMarkdownStyleImageStruct {
4561
5281
  Float height{0.0};
5282
+ Float maxHeight{0.0};
5283
+ Float aspectRatio{0.0};
5284
+ std::string resizeMode{};
4562
5285
  Float borderRadius{0.0};
4563
5286
  Float marginTop{0.0};
4564
5287
  Float marginBottom{0.0};
@@ -4570,6 +5293,9 @@ struct EnrichedMarkdownTextMarkdownStyleImageStruct {
4570
5293
  folly::dynamic toDynamic() const {
4571
5294
  folly::dynamic result = folly::dynamic::object();
4572
5295
  result["height"] = height;
5296
+ result["maxHeight"] = maxHeight;
5297
+ result["aspectRatio"] = aspectRatio;
5298
+ result["resizeMode"] = resizeMode;
4573
5299
  result["borderRadius"] = borderRadius;
4574
5300
  result["marginTop"] = marginTop;
4575
5301
  result["marginBottom"] = marginBottom;
@@ -4585,6 +5311,18 @@ static inline void fromRawValue(const PropsParserContext& context, const RawValu
4585
5311
  if (tmp_height != map.end()) {
4586
5312
  fromRawValue(context, tmp_height->second, result.height);
4587
5313
  }
5314
+ auto tmp_maxHeight = map.find("maxHeight");
5315
+ if (tmp_maxHeight != map.end()) {
5316
+ fromRawValue(context, tmp_maxHeight->second, result.maxHeight);
5317
+ }
5318
+ auto tmp_aspectRatio = map.find("aspectRatio");
5319
+ if (tmp_aspectRatio != map.end()) {
5320
+ fromRawValue(context, tmp_aspectRatio->second, result.aspectRatio);
5321
+ }
5322
+ auto tmp_resizeMode = map.find("resizeMode");
5323
+ if (tmp_resizeMode != map.end()) {
5324
+ fromRawValue(context, tmp_resizeMode->second, result.resizeMode);
5325
+ }
4588
5326
  auto tmp_borderRadius = map.find("borderRadius");
4589
5327
  if (tmp_borderRadius != map.end()) {
4590
5328
  fromRawValue(context, tmp_borderRadius->second, result.borderRadius);
@@ -4713,6 +5451,8 @@ struct EnrichedMarkdownTextMarkdownStyleTableStruct {
4713
5451
  Float borderRadius{0.0};
4714
5452
  Float cellPaddingHorizontal{0.0};
4715
5453
  Float cellPaddingVertical{0.0};
5454
+ Float horizontalOverflow{0.0};
5455
+ std::string align{};
4716
5456
 
4717
5457
 
4718
5458
  #ifdef RN_SERIALIZABLE_STATE
@@ -4737,6 +5477,8 @@ struct EnrichedMarkdownTextMarkdownStyleTableStruct {
4737
5477
  result["borderRadius"] = borderRadius;
4738
5478
  result["cellPaddingHorizontal"] = cellPaddingHorizontal;
4739
5479
  result["cellPaddingVertical"] = cellPaddingVertical;
5480
+ result["horizontalOverflow"] = horizontalOverflow;
5481
+ result["align"] = align;
4740
5482
  return result;
4741
5483
  }
4742
5484
  #endif
@@ -4813,6 +5555,14 @@ static inline void fromRawValue(const PropsParserContext& context, const RawValu
4813
5555
  if (tmp_cellPaddingVertical != map.end()) {
4814
5556
  fromRawValue(context, tmp_cellPaddingVertical->second, result.cellPaddingVertical);
4815
5557
  }
5558
+ auto tmp_horizontalOverflow = map.find("horizontalOverflow");
5559
+ if (tmp_horizontalOverflow != map.end()) {
5560
+ fromRawValue(context, tmp_horizontalOverflow->second, result.horizontalOverflow);
5561
+ }
5562
+ auto tmp_align = map.find("align");
5563
+ if (tmp_align != map.end()) {
5564
+ fromRawValue(context, tmp_align->second, result.align);
5565
+ }
4816
5566
  }
4817
5567
 
4818
5568
  static inline std::string toString(const EnrichedMarkdownTextMarkdownStyleTableStruct &value) {
@@ -5459,6 +6209,7 @@ struct EnrichedMarkdownTextMd4cFlagsStruct {
5459
6209
  bool subscript{false};
5460
6210
  bool latexMath{false};
5461
6211
  bool highlight{false};
6212
+ bool hardSoftBreaks{false};
5462
6213
 
5463
6214
 
5464
6215
  #ifdef RN_SERIALIZABLE_STATE
@@ -5471,6 +6222,7 @@ struct EnrichedMarkdownTextMd4cFlagsStruct {
5471
6222
  result["subscript"] = subscript;
5472
6223
  result["latexMath"] = latexMath;
5473
6224
  result["highlight"] = highlight;
6225
+ result["hardSoftBreaks"] = hardSoftBreaks;
5474
6226
  return result;
5475
6227
  }
5476
6228
  #endif
@@ -5499,6 +6251,10 @@ static inline void fromRawValue(const PropsParserContext& context, const RawValu
5499
6251
  if (tmp_highlight != map.end()) {
5500
6252
  fromRawValue(context, tmp_highlight->second, result.highlight);
5501
6253
  }
6254
+ auto tmp_hardSoftBreaks = map.find("hardSoftBreaks");
6255
+ if (tmp_hardSoftBreaks != map.end()) {
6256
+ fromRawValue(context, tmp_hardSoftBreaks->second, result.hardSoftBreaks);
6257
+ }
5502
6258
  }
5503
6259
 
5504
6260
  static inline std::string toString(const EnrichedMarkdownTextMd4cFlagsStruct &value) {
@@ -5513,6 +6269,7 @@ static inline folly::dynamic toDynamic(const EnrichedMarkdownTextMd4cFlagsStruct
5513
6269
 
5514
6270
  struct EnrichedMarkdownTextStreamingConfigStruct {
5515
6271
  std::string tableMode{};
6272
+ std::string codeBlockMode{};
5516
6273
 
5517
6274
 
5518
6275
  #ifdef RN_SERIALIZABLE_STATE
@@ -5521,6 +6278,7 @@ struct EnrichedMarkdownTextStreamingConfigStruct {
5521
6278
  folly::dynamic toDynamic() const {
5522
6279
  folly::dynamic result = folly::dynamic::object();
5523
6280
  result["tableMode"] = tableMode;
6281
+ result["codeBlockMode"] = codeBlockMode;
5524
6282
  return result;
5525
6283
  }
5526
6284
  #endif
@@ -5533,6 +6291,10 @@ static inline void fromRawValue(const PropsParserContext& context, const RawValu
5533
6291
  if (tmp_tableMode != map.end()) {
5534
6292
  fromRawValue(context, tmp_tableMode->second, result.tableMode);
5535
6293
  }
6294
+ auto tmp_codeBlockMode = map.find("codeBlockMode");
6295
+ if (tmp_codeBlockMode != map.end()) {
6296
+ fromRawValue(context, tmp_codeBlockMode->second, result.codeBlockMode);
6297
+ }
5536
6298
  }
5537
6299
 
5538
6300
  static inline std::string toString(const EnrichedMarkdownTextStreamingConfigStruct &value) {
@@ -5595,6 +6357,56 @@ static inline void fromRawValue(const PropsParserContext& context, const RawValu
5595
6357
  }
5596
6358
 
5597
6359
 
6360
+ struct EnrichedMarkdownTextImageRequestHeadersStruct {
6361
+ std::string name{};
6362
+ std::string value{};
6363
+
6364
+
6365
+ #ifdef RN_SERIALIZABLE_STATE
6366
+ bool operator==(const EnrichedMarkdownTextImageRequestHeadersStruct&) const = default;
6367
+
6368
+ folly::dynamic toDynamic() const {
6369
+ folly::dynamic result = folly::dynamic::object();
6370
+ result["name"] = name;
6371
+ result["value"] = value;
6372
+ return result;
6373
+ }
6374
+ #endif
6375
+ };
6376
+
6377
+ static inline void fromRawValue(const PropsParserContext& context, const RawValue &value, EnrichedMarkdownTextImageRequestHeadersStruct &result) {
6378
+ auto map = (std::unordered_map<std::string, RawValue>)value;
6379
+
6380
+ auto tmp_name = map.find("name");
6381
+ if (tmp_name != map.end()) {
6382
+ fromRawValue(context, tmp_name->second, result.name);
6383
+ }
6384
+ auto tmp_value = map.find("value");
6385
+ if (tmp_value != map.end()) {
6386
+ fromRawValue(context, tmp_value->second, result.value);
6387
+ }
6388
+ }
6389
+
6390
+ static inline std::string toString(const EnrichedMarkdownTextImageRequestHeadersStruct &value) {
6391
+ return "[Object EnrichedMarkdownTextImageRequestHeadersStruct]";
6392
+ }
6393
+
6394
+ #ifdef RN_SERIALIZABLE_STATE
6395
+ static inline folly::dynamic toDynamic(const EnrichedMarkdownTextImageRequestHeadersStruct &value) {
6396
+ return value.toDynamic();
6397
+ }
6398
+ #endif
6399
+
6400
+ static inline void fromRawValue(const PropsParserContext& context, const RawValue &value, std::vector<EnrichedMarkdownTextImageRequestHeadersStruct> &result) {
6401
+ auto items = (std::vector<RawValue>)value;
6402
+ for (const auto &item : items) {
6403
+ EnrichedMarkdownTextImageRequestHeadersStruct newItem;
6404
+ fromRawValue(context, item, newItem);
6405
+ result.emplace_back(newItem);
6406
+ }
6407
+ }
6408
+
6409
+
5598
6410
  struct EnrichedMarkdownTextSelectionMenuConfigStruct {
5599
6411
  bool copyAsMarkdown{false};
5600
6412
  bool copyImageUrl{false};
@@ -5937,6 +6749,7 @@ class EnrichedMarkdownTextProps final : public ViewProps {
5937
6749
 
5938
6750
  std::string markdown{};
5939
6751
  EnrichedMarkdownTextMarkdownStyleStruct markdownStyle{};
6752
+ bool enableTaskListItemToggle{true};
5940
6753
  bool enableLinkPreview{true};
5941
6754
  bool selectable{false};
5942
6755
  SharedColor selectionColor{};
@@ -5948,7 +6761,9 @@ class EnrichedMarkdownTextProps final : public ViewProps {
5948
6761
  bool streamingAnimation{false};
5949
6762
  EnrichedMarkdownTextStreamingConfigStruct streamingConfig{};
5950
6763
  std::string spoilerOverlay{std::string{"particles"}};
6764
+ bool contextMenuHidden{false};
5951
6765
  std::vector<EnrichedMarkdownTextContextMenuItemsStruct> contextMenuItems{};
6766
+ std::vector<EnrichedMarkdownTextImageRequestHeadersStruct> imageRequestHeaders{};
5952
6767
  EnrichedMarkdownTextSelectionMenuConfigStruct selectionMenuConfig{};
5953
6768
  EnrichedMarkdownTextAccessibilityLabelsStruct accessibilityLabels{};
5954
6769
  std::string textBreakStrategy{std::string{"highQuality"}};