react-native-marcus 0.1.1 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (294) hide show
  1. package/README.md +220 -63
  2. package/RNMarcus.podspec +6 -0
  3. package/android/src/main/java/app/getbullet/marcus/MarcusPackage.kt +2 -1
  4. package/android/src/main/java/app/getbullet/marcus/MarcusTextDecoratorView.kt +168 -0
  5. package/android/src/main/java/app/getbullet/marcus/MarcusTextDecoratorViewManager.kt +38 -0
  6. package/android/src/main/java/app/getbullet/marcus/MarcusTextDecoratorViewManagerSpec.kt +19 -0
  7. package/android/src/main/java/app/getbullet/marcus/MarcusTextInputDecoratorView.kt +23 -1
  8. package/android/src/main/java/app/getbullet/marcus/MarkdownBackgroundPainter.kt +147 -0
  9. package/android/src/main/java/app/getbullet/marcus/MarkdownBackgroundPass.kt +19 -0
  10. package/android/src/main/java/app/getbullet/marcus/MarkdownCopy.kt +87 -0
  11. package/android/src/main/java/app/getbullet/marcus/MarkdownFormatter.kt +652 -113
  12. package/android/src/main/java/app/getbullet/marcus/MarkdownRanges.kt +47 -0
  13. package/android/src/main/java/app/getbullet/marcus/MarkdownStyle.kt +140 -61
  14. package/android/src/main/java/app/getbullet/marcus/MarkdownUtils.kt +37 -7
  15. package/android/src/main/java/app/getbullet/marcus/spans/MarkdownAbsoluteLineHeightSpan.kt +48 -0
  16. package/android/src/main/java/app/getbullet/marcus/spans/MarkdownBackgroundSpan.kt +102 -48
  17. package/android/src/main/java/app/getbullet/marcus/spans/MarkdownBlockIndentSpan.kt +22 -4
  18. package/android/src/main/java/app/getbullet/marcus/spans/MarkdownBulletSpan.kt +78 -0
  19. package/android/src/main/java/app/getbullet/marcus/spans/MarkdownCodeBlockSpan.kt +177 -0
  20. package/android/src/main/java/app/getbullet/marcus/spans/MarkdownFontStyleSpan.kt +32 -0
  21. package/android/src/main/java/app/getbullet/marcus/spans/MarkdownFontWeightSpan.kt +34 -0
  22. package/android/src/main/java/app/getbullet/marcus/spans/MarkdownGapSpan.kt +24 -11
  23. package/android/src/main/java/app/getbullet/marcus/spans/MarkdownLetterSpacingSpan.kt +32 -0
  24. package/android/src/main/java/app/getbullet/marcus/spans/MarkdownTextShadowSpan.kt +32 -0
  25. package/android/src/main/new_arch/CMakeLists.txt +17 -0
  26. package/android/src/main/new_arch/RNMarcusSpec.h +1 -0
  27. package/android/src/main/new_arch/react/renderer/components/RNMarcusSpec/MarcusTextDecoratorShadowNode.cpp +235 -0
  28. package/android/src/main/new_arch/react/renderer/components/RNMarcusSpec/MarcusTextDecoratorShadowNode.h +62 -0
  29. package/android/src/reactNativeVersionPatch/CustomMountingManager/81/app/getbullet/marcus/CustomFabricUIManager.java +22 -3
  30. package/android/src/reactNativeVersionPatch/CustomMountingManager/latest/app/getbullet/marcus/CustomFabricUIManager.java +22 -3
  31. package/android/src/test/java/app/getbullet/marcus/MarkdownCopyTest.kt +69 -0
  32. package/android/src/test/java/app/getbullet/marcus/MarkdownFormatterTest.kt +170 -25
  33. package/android/src/test/java/app/getbullet/marcus/RenderModel.kt +22 -5
  34. package/android/src/test/java/app/getbullet/marcus/spans/MarkdownCodeBlockSpanTest.kt +91 -0
  35. package/android/src/test/resources/render-model.txt +221 -16
  36. package/apple/MarcusSwizzle.h +25 -0
  37. package/apple/MarcusTextDecoratorComponentView.h +22 -0
  38. package/apple/MarcusTextDecoratorComponentView.mm +72 -0
  39. package/apple/MarcusTextDecoratorShadowNode.h +62 -0
  40. package/apple/MarcusTextDecoratorShadowNode.mm +192 -0
  41. package/apple/MarcusTextDecoratorViewManager.h +4 -0
  42. package/apple/MarcusTextDecoratorViewManager.mm +11 -0
  43. package/apple/MarcusTextInputDecoratorComponentView.mm +1 -1
  44. package/apple/MarcusTextInputDecoratorShadowNode.mm +1 -1
  45. package/apple/MarcusTextLayoutManager.h +40 -0
  46. package/apple/MarcusTextLayoutManager.mm +173 -0
  47. package/apple/MarkdownAttributes.h +23 -2
  48. package/apple/MarkdownAttributes.m +6 -0
  49. package/apple/MarkdownCopy.swift +63 -0
  50. package/apple/MarkdownDecorator.swift +2 -2
  51. package/apple/MarkdownFormatter+React.swift +23 -0
  52. package/apple/MarkdownFormatter.swift +869 -148
  53. package/apple/MarkdownParagraphLayoutManager.swift +455 -0
  54. package/apple/MarkdownSwiftInterop.h +0 -1
  55. package/apple/MarkdownTextBackground.swift +59 -1
  56. package/apple/MarkdownTextFieldObserver.swift +2 -2
  57. package/apple/MarkdownTextLayoutFragment.swift +159 -33
  58. package/apple/MarkdownTextLayoutManagerDelegate.swift +67 -3
  59. package/apple/MarkdownTextStorageDelegate.swift +2 -2
  60. package/apple/MarkdownTextViewObserver.swift +2 -2
  61. package/apple/MarkdownUtils.swift +38 -0
  62. package/apple/MarkdownWritingDirection.swift +132 -0
  63. package/apple/RCTMarcusStyle+Codegen.h +115 -9
  64. package/apple/RCTMarcusStyle.h +128 -31
  65. package/apple/RCTMarcusStyle.m +48 -0
  66. package/apple/RCTParagraphComponentView+Marcus.h +17 -0
  67. package/apple/RCTParagraphComponentView+Marcus.mm +38 -0
  68. package/apple/RCTTextInputComponentView+Marcus.mm +1 -25
  69. package/cpp/react/renderer/components/RNMarcusSpec/MarcusTextDecoratorState.h +37 -0
  70. package/cpp/react/renderer/components/RNMarcusSpec/MarcusTextDecoratorViewComponentDescriptor.h +17 -0
  71. package/lib/commonjs/MarcusTextDecoratorViewNativeComponent.ts +199 -0
  72. package/lib/commonjs/MarcusTextInputDecoratorViewNativeComponent.ts +145 -58
  73. package/lib/commonjs/MarkdownText.js +330 -0
  74. package/lib/commonjs/MarkdownText.js.map +1 -0
  75. package/lib/commonjs/MarkdownText.web.js +529 -0
  76. package/lib/commonjs/MarkdownText.web.js.map +1 -0
  77. package/lib/commonjs/MarkdownTextInput.js +22 -27
  78. package/lib/commonjs/MarkdownTextInput.js.map +1 -1
  79. package/lib/commonjs/MarkdownTextInput.web.js +12 -7
  80. package/lib/commonjs/MarkdownTextInput.web.js.map +1 -1
  81. package/lib/commonjs/atomUtils.js +112 -0
  82. package/lib/commonjs/atomUtils.js.map +1 -0
  83. package/lib/commonjs/childrenUtils.js +36 -0
  84. package/lib/commonjs/childrenUtils.js.map +1 -0
  85. package/lib/commonjs/index.js +8 -7
  86. package/lib/commonjs/index.js.map +1 -1
  87. package/lib/commonjs/math/environment.js +69 -0
  88. package/lib/commonjs/math/environment.js.map +1 -0
  89. package/lib/commonjs/math/index.js +61 -0
  90. package/lib/commonjs/math/index.js.map +1 -0
  91. package/lib/commonjs/math/mathjax.js +548 -0
  92. package/lib/commonjs/math/mathjax.js.map +1 -0
  93. package/lib/commonjs/metro.js +172 -0
  94. package/lib/commonjs/metro.js.map +1 -0
  95. package/lib/commonjs/parser/index.d.ts +3 -0
  96. package/lib/commonjs/parser/index.js +450 -42
  97. package/lib/commonjs/parser/index.js.map +4 -4
  98. package/lib/commonjs/stripUtils.js +743 -0
  99. package/lib/commonjs/stripUtils.js.map +1 -0
  100. package/lib/commonjs/styleUtils.js +194 -23
  101. package/lib/commonjs/styleUtils.js.map +1 -1
  102. package/lib/commonjs/web/MarkdownElements.css +67 -0
  103. package/lib/commonjs/web/MarkdownTextInput.css +9 -7
  104. package/lib/commonjs/web/utils/blockLayout.js +95 -7
  105. package/lib/commonjs/web/utils/blockLayout.js.map +1 -1
  106. package/lib/commonjs/web/utils/blockUtils.js +327 -54
  107. package/lib/commonjs/web/utils/blockUtils.js.map +1 -1
  108. package/lib/commonjs/web/utils/elementUtils.js +80 -0
  109. package/lib/commonjs/web/utils/elementUtils.js.map +1 -0
  110. package/lib/commonjs/web/utils/parserUtils.js +84 -28
  111. package/lib/commonjs/web/utils/parserUtils.js.map +1 -1
  112. package/lib/commonjs/web/utils/treeUtils.js +6 -0
  113. package/lib/commonjs/web/utils/treeUtils.js.map +1 -1
  114. package/lib/commonjs/web/utils/webStyleUtils.js +25 -5
  115. package/lib/commonjs/web/utils/webStyleUtils.js.map +1 -1
  116. package/lib/module/MarcusTextDecoratorViewNativeComponent.ts +199 -0
  117. package/lib/module/MarcusTextInputDecoratorViewNativeComponent.ts +145 -58
  118. package/lib/module/MarkdownText.js +325 -0
  119. package/lib/module/MarkdownText.js.map +1 -0
  120. package/lib/module/MarkdownText.web.js +524 -0
  121. package/lib/module/MarkdownText.web.js.map +1 -0
  122. package/lib/module/MarkdownTextInput.js +24 -29
  123. package/lib/module/MarkdownTextInput.js.map +1 -1
  124. package/lib/module/MarkdownTextInput.web.js +12 -7
  125. package/lib/module/MarkdownTextInput.web.js.map +1 -1
  126. package/lib/module/atomUtils.js +106 -0
  127. package/lib/module/atomUtils.js.map +1 -0
  128. package/lib/module/childrenUtils.js +33 -0
  129. package/lib/module/childrenUtils.js.map +1 -0
  130. package/lib/module/index.js +1 -1
  131. package/lib/module/index.js.map +1 -1
  132. package/lib/module/math/environment.js +67 -0
  133. package/lib/module/math/environment.js.map +1 -0
  134. package/lib/module/math/index.js +56 -0
  135. package/lib/module/math/index.js.map +1 -0
  136. package/lib/module/math/mathjax.js +541 -0
  137. package/lib/module/math/mathjax.js.map +1 -0
  138. package/lib/module/metro.js +169 -0
  139. package/lib/module/metro.js.map +1 -0
  140. package/lib/module/parser/index.d.ts +3 -0
  141. package/lib/module/parser/index.js +450 -42
  142. package/lib/module/parser/index.js.map +4 -4
  143. package/lib/module/stripUtils.js +739 -0
  144. package/lib/module/stripUtils.js.map +1 -0
  145. package/lib/module/styleUtils.js +196 -25
  146. package/lib/module/styleUtils.js.map +1 -1
  147. package/lib/module/web/MarkdownElements.css +67 -0
  148. package/lib/module/web/MarkdownTextInput.css +9 -7
  149. package/lib/module/web/utils/blockLayout.js +94 -8
  150. package/lib/module/web/utils/blockLayout.js.map +1 -1
  151. package/lib/module/web/utils/blockUtils.js +328 -56
  152. package/lib/module/web/utils/blockUtils.js.map +1 -1
  153. package/lib/module/web/utils/elementUtils.js +75 -0
  154. package/lib/module/web/utils/elementUtils.js.map +1 -0
  155. package/lib/module/web/utils/parserUtils.js +86 -30
  156. package/lib/module/web/utils/parserUtils.js.map +1 -1
  157. package/lib/module/web/utils/treeUtils.js +6 -0
  158. package/lib/module/web/utils/treeUtils.js.map +1 -1
  159. package/lib/module/web/utils/webStyleUtils.js +25 -5
  160. package/lib/module/web/utils/webStyleUtils.js.map +1 -1
  161. package/lib/typescript/commonjs/e2e/links.test.d.ts +2 -0
  162. package/lib/typescript/commonjs/e2e/links.test.d.ts.map +1 -0
  163. package/lib/typescript/commonjs/src/MarcusTextDecoratorViewNativeComponent.d.ts +93 -0
  164. package/lib/typescript/commonjs/src/MarcusTextDecoratorViewNativeComponent.d.ts.map +1 -0
  165. package/lib/typescript/commonjs/src/MarcusTextInputDecoratorViewNativeComponent.d.ts +64 -51
  166. package/lib/typescript/commonjs/src/MarcusTextInputDecoratorViewNativeComponent.d.ts.map +1 -1
  167. package/lib/typescript/commonjs/src/MarkdownText.d.ts +127 -0
  168. package/lib/typescript/commonjs/src/MarkdownText.d.ts.map +1 -0
  169. package/lib/typescript/commonjs/src/MarkdownText.web.d.ts +126 -0
  170. package/lib/typescript/commonjs/src/MarkdownText.web.d.ts.map +1 -0
  171. package/lib/typescript/commonjs/src/MarkdownTextInput.d.ts +23 -1
  172. package/lib/typescript/commonjs/src/MarkdownTextInput.d.ts.map +1 -1
  173. package/lib/typescript/commonjs/src/MarkdownTextInput.web.d.ts +26 -4
  174. package/lib/typescript/commonjs/src/MarkdownTextInput.web.d.ts.map +1 -1
  175. package/lib/typescript/commonjs/src/atomUtils.d.ts +58 -0
  176. package/lib/typescript/commonjs/src/atomUtils.d.ts.map +1 -0
  177. package/lib/typescript/commonjs/src/childrenUtils.d.ts +12 -0
  178. package/lib/typescript/commonjs/src/childrenUtils.d.ts.map +1 -0
  179. package/lib/typescript/commonjs/src/commonTypes.d.ts +39 -3
  180. package/lib/typescript/commonjs/src/commonTypes.d.ts.map +1 -1
  181. package/lib/typescript/commonjs/src/index.d.ts +2 -1
  182. package/lib/typescript/commonjs/src/index.d.ts.map +1 -1
  183. package/lib/typescript/commonjs/src/math/environment.d.ts +7 -0
  184. package/lib/typescript/commonjs/src/math/environment.d.ts.map +1 -0
  185. package/lib/typescript/commonjs/src/math/index.d.ts +64 -0
  186. package/lib/typescript/commonjs/src/math/index.d.ts.map +1 -0
  187. package/lib/typescript/commonjs/src/math/mathjax.d.ts +63 -0
  188. package/lib/typescript/commonjs/src/math/mathjax.d.ts.map +1 -0
  189. package/lib/typescript/commonjs/src/metro.d.ts +59 -0
  190. package/lib/typescript/commonjs/src/metro.d.ts.map +1 -0
  191. package/lib/typescript/commonjs/src/parser/index.d.ts +3 -3
  192. package/lib/typescript/commonjs/src/parser/index.d.ts.map +1 -1
  193. package/lib/typescript/commonjs/src/parser/micromark-extension-mentions.d.ts.map +1 -1
  194. package/lib/typescript/commonjs/src/rangeUtils.d.ts +1 -1
  195. package/lib/typescript/commonjs/src/stripUtils.d.ts +108 -0
  196. package/lib/typescript/commonjs/src/stripUtils.d.ts.map +1 -0
  197. package/lib/typescript/commonjs/src/styleUtils.d.ts +62 -4
  198. package/lib/typescript/commonjs/src/styleUtils.d.ts.map +1 -1
  199. package/lib/typescript/commonjs/src/web/utils/blockLayout.d.ts +32 -4
  200. package/lib/typescript/commonjs/src/web/utils/blockLayout.d.ts.map +1 -1
  201. package/lib/typescript/commonjs/src/web/utils/blockUtils.d.ts +20 -8
  202. package/lib/typescript/commonjs/src/web/utils/blockUtils.d.ts.map +1 -1
  203. package/lib/typescript/commonjs/src/web/utils/elementUtils.d.ts +37 -0
  204. package/lib/typescript/commonjs/src/web/utils/elementUtils.d.ts.map +1 -0
  205. package/lib/typescript/commonjs/src/web/utils/parserUtils.d.ts +5 -5
  206. package/lib/typescript/commonjs/src/web/utils/parserUtils.d.ts.map +1 -1
  207. package/lib/typescript/commonjs/src/web/utils/treeUtils.d.ts +6 -1
  208. package/lib/typescript/commonjs/src/web/utils/treeUtils.d.ts.map +1 -1
  209. package/lib/typescript/commonjs/src/web/utils/webStyleUtils.d.ts +2 -2
  210. package/lib/typescript/commonjs/src/web/utils/webStyleUtils.d.ts.map +1 -1
  211. package/lib/typescript/module/e2e/links.test.d.ts +2 -0
  212. package/lib/typescript/module/e2e/links.test.d.ts.map +1 -0
  213. package/lib/typescript/module/src/MarcusTextDecoratorViewNativeComponent.d.ts +93 -0
  214. package/lib/typescript/module/src/MarcusTextDecoratorViewNativeComponent.d.ts.map +1 -0
  215. package/lib/typescript/module/src/MarcusTextInputDecoratorViewNativeComponent.d.ts +64 -51
  216. package/lib/typescript/module/src/MarcusTextInputDecoratorViewNativeComponent.d.ts.map +1 -1
  217. package/lib/typescript/module/src/MarkdownText.d.ts +127 -0
  218. package/lib/typescript/module/src/MarkdownText.d.ts.map +1 -0
  219. package/lib/typescript/module/src/MarkdownText.web.d.ts +126 -0
  220. package/lib/typescript/module/src/MarkdownText.web.d.ts.map +1 -0
  221. package/lib/typescript/module/src/MarkdownTextInput.d.ts +23 -1
  222. package/lib/typescript/module/src/MarkdownTextInput.d.ts.map +1 -1
  223. package/lib/typescript/module/src/MarkdownTextInput.web.d.ts +26 -4
  224. package/lib/typescript/module/src/MarkdownTextInput.web.d.ts.map +1 -1
  225. package/lib/typescript/module/src/atomUtils.d.ts +58 -0
  226. package/lib/typescript/module/src/atomUtils.d.ts.map +1 -0
  227. package/lib/typescript/module/src/childrenUtils.d.ts +12 -0
  228. package/lib/typescript/module/src/childrenUtils.d.ts.map +1 -0
  229. package/lib/typescript/module/src/commonTypes.d.ts +39 -3
  230. package/lib/typescript/module/src/commonTypes.d.ts.map +1 -1
  231. package/lib/typescript/module/src/index.d.ts +2 -1
  232. package/lib/typescript/module/src/index.d.ts.map +1 -1
  233. package/lib/typescript/module/src/math/environment.d.ts +7 -0
  234. package/lib/typescript/module/src/math/environment.d.ts.map +1 -0
  235. package/lib/typescript/module/src/math/index.d.ts +64 -0
  236. package/lib/typescript/module/src/math/index.d.ts.map +1 -0
  237. package/lib/typescript/module/src/math/mathjax.d.ts +63 -0
  238. package/lib/typescript/module/src/math/mathjax.d.ts.map +1 -0
  239. package/lib/typescript/module/src/metro.d.ts +59 -0
  240. package/lib/typescript/module/src/metro.d.ts.map +1 -0
  241. package/lib/typescript/module/src/parser/index.d.ts +3 -3
  242. package/lib/typescript/module/src/parser/index.d.ts.map +1 -1
  243. package/lib/typescript/module/src/parser/micromark-extension-mentions.d.ts.map +1 -1
  244. package/lib/typescript/module/src/rangeUtils.d.ts +1 -1
  245. package/lib/typescript/module/src/stripUtils.d.ts +108 -0
  246. package/lib/typescript/module/src/stripUtils.d.ts.map +1 -0
  247. package/lib/typescript/module/src/styleUtils.d.ts +62 -4
  248. package/lib/typescript/module/src/styleUtils.d.ts.map +1 -1
  249. package/lib/typescript/module/src/web/utils/blockLayout.d.ts +32 -4
  250. package/lib/typescript/module/src/web/utils/blockLayout.d.ts.map +1 -1
  251. package/lib/typescript/module/src/web/utils/blockUtils.d.ts +20 -8
  252. package/lib/typescript/module/src/web/utils/blockUtils.d.ts.map +1 -1
  253. package/lib/typescript/module/src/web/utils/elementUtils.d.ts +37 -0
  254. package/lib/typescript/module/src/web/utils/elementUtils.d.ts.map +1 -0
  255. package/lib/typescript/module/src/web/utils/parserUtils.d.ts +5 -5
  256. package/lib/typescript/module/src/web/utils/parserUtils.d.ts.map +1 -1
  257. package/lib/typescript/module/src/web/utils/treeUtils.d.ts +6 -1
  258. package/lib/typescript/module/src/web/utils/treeUtils.d.ts.map +1 -1
  259. package/lib/typescript/module/src/web/utils/webStyleUtils.d.ts +2 -2
  260. package/lib/typescript/module/src/web/utils/webStyleUtils.d.ts.map +1 -1
  261. package/package.json +29 -2
  262. package/react-native.config.js +8 -1
  263. package/src/MarcusTextDecoratorViewNativeComponent.ts +199 -0
  264. package/src/MarcusTextInputDecoratorViewNativeComponent.ts +145 -58
  265. package/src/MarkdownText.tsx +472 -0
  266. package/src/MarkdownText.web.tsx +668 -0
  267. package/src/MarkdownTextInput.tsx +42 -38
  268. package/src/MarkdownTextInput.web.tsx +36 -13
  269. package/src/atomUtils.ts +112 -0
  270. package/src/childrenUtils.ts +39 -0
  271. package/src/commonTypes.ts +69 -9
  272. package/src/index.tsx +2 -1
  273. package/src/math/environment.ts +68 -0
  274. package/src/math/index.ts +78 -0
  275. package/src/math/mathjax.ts +604 -0
  276. package/src/metro.ts +238 -0
  277. package/src/parser/index.ts +175 -10
  278. package/src/parser/micromark-extension-mentions.ts +104 -11
  279. package/src/stripUtils.ts +919 -0
  280. package/src/styleUtils.ts +290 -26
  281. package/src/web/MarkdownElements.css +67 -0
  282. package/src/web/MarkdownTextInput.css +9 -7
  283. package/src/web/utils/blockLayout.ts +124 -14
  284. package/src/web/utils/blockUtils.ts +365 -59
  285. package/src/web/utils/elementUtils.ts +87 -0
  286. package/src/web/utils/parserUtils.ts +119 -31
  287. package/src/web/utils/treeUtils.ts +6 -1
  288. package/src/web/utils/webStyleUtils.ts +32 -8
  289. package/android/src/main/java/app/getbullet/marcus/spans/MarkdownBackgroundColorSpan.kt +0 -6
  290. package/android/src/main/java/app/getbullet/marcus/spans/MarkdownBoldSpan.kt +0 -6
  291. package/android/src/main/java/app/getbullet/marcus/spans/MarkdownItalicSpan.kt +0 -6
  292. package/apple/RCTMarcusStyle+Codegen.mm +0 -64
  293. package/apple/RCTMarcusUtils.h +0 -26
  294. package/apple/RCTMarcusUtils.mm +0 -26
@@ -10,9 +10,11 @@ var _reactNative = require("react-native");
10
10
  var _parserUtils = require("./web/utils/parserUtils.js");
11
11
  var _InputHistory = _interopRequireDefault(require("./web/InputHistory.js"));
12
12
  var _cursorUtils = require("./web/utils/cursorUtils.js");
13
+ require("./web/MarkdownElements.css");
13
14
  require("./web/MarkdownTextInput.css");
14
15
  var _inputUtils = require("./web/utils/inputUtils.js");
15
16
  var _webStyleUtils = require("./web/utils/webStyleUtils.js");
17
+ var _index = require("./parser/index.js");
16
18
  var _jsxRuntime = require("react/jsx-runtime");
17
19
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
18
20
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
@@ -35,7 +37,9 @@ const MarkdownTextInput = /*#__PURE__*/_react.default.forwardRef(({
35
37
  numberOfLines,
36
38
  multiline = false,
37
39
  markdownStyle,
38
- parser,
40
+ gfm,
41
+ mention,
42
+ math,
39
43
  onBlur,
40
44
  onChange,
41
45
  onChangeText,
@@ -58,12 +62,13 @@ const MarkdownTextInput = /*#__PURE__*/_react.default.forwardRef(({
58
62
  onTouchStart,
59
63
  maxLength
60
64
  }, ref) => {
61
- if (parser === undefined) {
62
- throw new Error("[react-native-marcus] `parser` is undefined");
63
- }
64
- if (typeof parser !== "function") {
65
- throw new Error("[react-native-marcus] `parser` is not a function");
66
- }
65
+ // The same function for as long as the flavour is the same one, so every
66
+ // callback below that holds on to it keeps its identity too.
67
+ const parser = (0, _index.createParser)({
68
+ gfm,
69
+ mention,
70
+ math
71
+ });
67
72
  const divRef = (0, _react.useRef)(null);
68
73
  const currentlyFocusedField = (0, _react.useRef)(null);
69
74
  const contentSelection = (0, _react.useRef)(null);
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_parserUtils","_InputHistory","_interopRequireDefault","_cursorUtils","_inputUtils","_webStyleUtils","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","useClientEffect","window","useEffect","useLayoutEffect","focusTimeout","MarkdownTextInput","React","forwardRef","accessibilityLabel","accessibilityLabelledBy","accessibilityRole","autoCapitalize","autoCorrect","blurOnSubmit","submitBehavior","caretHidden","clearTextOnFocus","dir","disabled","numberOfLines","multiline","markdownStyle","parser","onBlur","onChange","onChangeText","onClick","onFocus","onKeyPress","onSelectionChange","onSubmitEditing","placeholder","placeholderTextColor","selectTextOnFocus","spellCheck","selection","style","value","autoFocus","onContentSizeChange","id","inputMode","onTouchStart","maxLength","ref","undefined","Error","divRef","useRef","currentlyFocusedField","contentSelection","className","history","dimensions","pasteContent","hasJustBeenFocused","current","InputHistory","flattenedStyle","useMemo","StyleSheet","flatten","hashedMarkdownStyle","JSON","stringify","heightSafePlaceholder","getPlaceholderValue","setEventProps","useCallback","text","target","nativeEvent","parseText","parserFunction","customMarkdownStyles","cursorPosition","shouldAddToHistory","shouldForceDOMUpdate","shouldScrollIntoView","parsedText","updateInputStructure","throttledAdd","processedMarkdownStyle","newMarkdownStyle","processMarkdownStyle","inputStyles","styles","defaultInputStyles","caretColor","color","whiteSpace","disabledInputStyles","parseToReactDOMStyle","undo","item","undoValue","redo","redoValue","updateTextColor","node","String","handleSelectionChange","event","updateRefSelectionVariables","newSelection","start","end","updateSelection","predefinedSelection","getCurrentCursorPosition","handleOnSelect","setCursorPosition","handleContentSizeChange","offsetWidth","newWidth","offsetHeight","newHeight","height","width","contentSize","handleOnChangeText","HTMLElement","inputType","isComposing","isEventComposing","textContent","previousText","normalizeValue","parseInnerHTMLToText","length","prevSelection","newCursorPosition","Math","max","newInputUpdate","addedText","slice","count","prevSelectionRange","before","insertText","insertedText","availableLength","prefix","substring","suffix","newText","document","execCommand","handleKeyPress","hostNode","stopPropagation","key","ctrlKey","metaKey","preventDefault","shiftKey","shouldBlurOnSubmit","shouldSubmit","blurOnSubmitDefault","isDefaultPrevented","setTimeout","blur","handleFocus","RNTextInput","State","focusTextInput","valueLength","scrollIntoView","block","clearTimeout","handleBlur","activeElement","blurTextInput","removeSelection","handleClick","handleCopy","clipboardData","setData","handleCut","handlePaste","getData","trim","endComposition","setRef","currentRef","isFocused","clear","handleTouchStart","parseAndStyleValue","normalizedValue","adjustHeight","elementHeight","getElementHeight","maxHeight","focus","uniqueId","idGenerator","next","jsx","contentEditable","role","onKeyDown","onCompositionEnd","onInput","onCopy","onCut","onPaste","onSelect","create","borderColor","borderWidth","borderStyle","fontFamily","boxSizing","overflowY","overflowX","overflowWrap","opacity","cursor","_default","exports","getWorkletRuntime"],"sourceRoot":"../../src","sources":["MarkdownTextInput.web.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_parserUtils","_InputHistory","_interopRequireDefault","_cursorUtils","_inputUtils","_webStyleUtils","_index","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","useClientEffect","window","useEffect","useLayoutEffect","focusTimeout","MarkdownTextInput","React","forwardRef","accessibilityLabel","accessibilityLabelledBy","accessibilityRole","autoCapitalize","autoCorrect","blurOnSubmit","submitBehavior","caretHidden","clearTextOnFocus","dir","disabled","numberOfLines","multiline","markdownStyle","gfm","mention","math","onBlur","onChange","onChangeText","onClick","onFocus","onKeyPress","onSelectionChange","onSubmitEditing","placeholder","placeholderTextColor","selectTextOnFocus","spellCheck","selection","style","value","autoFocus","onContentSizeChange","id","inputMode","onTouchStart","maxLength","ref","parser","createParser","divRef","useRef","currentlyFocusedField","contentSelection","className","history","dimensions","pasteContent","hasJustBeenFocused","current","InputHistory","flattenedStyle","useMemo","StyleSheet","flatten","hashedMarkdownStyle","JSON","stringify","heightSafePlaceholder","getPlaceholderValue","setEventProps","useCallback","text","target","nativeEvent","parseText","parserFunction","customMarkdownStyles","cursorPosition","shouldAddToHistory","shouldForceDOMUpdate","shouldScrollIntoView","parsedText","updateInputStructure","throttledAdd","processedMarkdownStyle","newMarkdownStyle","processMarkdownStyle","inputStyles","styles","defaultInputStyles","caretColor","color","whiteSpace","disabledInputStyles","parseToReactDOMStyle","undo","item","undoValue","redo","redoValue","updateTextColor","node","String","handleSelectionChange","event","updateRefSelectionVariables","newSelection","start","end","updateSelection","predefinedSelection","getCurrentCursorPosition","handleOnSelect","setCursorPosition","handleContentSizeChange","offsetWidth","newWidth","offsetHeight","newHeight","height","width","contentSize","handleOnChangeText","HTMLElement","inputType","isComposing","isEventComposing","textContent","previousText","normalizeValue","parseInnerHTMLToText","undefined","length","prevSelection","newCursorPosition","Math","max","newInputUpdate","addedText","slice","count","prevSelectionRange","before","insertText","insertedText","availableLength","prefix","substring","suffix","newText","document","execCommand","handleKeyPress","hostNode","stopPropagation","key","ctrlKey","metaKey","preventDefault","shiftKey","shouldBlurOnSubmit","shouldSubmit","blurOnSubmitDefault","isDefaultPrevented","setTimeout","blur","handleFocus","RNTextInput","State","focusTextInput","valueLength","scrollIntoView","block","clearTimeout","handleBlur","activeElement","blurTextInput","removeSelection","handleClick","handleCopy","clipboardData","setData","handleCut","handlePaste","getData","trim","endComposition","setRef","currentRef","isFocused","clear","handleTouchStart","parseAndStyleValue","normalizedValue","adjustHeight","elementHeight","getElementHeight","maxHeight","focus","uniqueId","idGenerator","next","jsx","contentEditable","role","onKeyDown","onCompositionEnd","onInput","onCopy","onCut","onPaste","onSelect","create","borderColor","borderWidth","borderStyle","fontFamily","boxSizing","overflowY","overflowX","overflowWrap","opacity","cursor","_default","exports","getWorkletRuntime","Error"],"sourceRoot":"../../src","sources":["MarkdownTextInput.web.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,112 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.NO_ATOMS = void 0;
7
+ exports.atomsOf = atomsOf;
8
+ exports.describeAtoms = describeAtoms;
9
+ exports.sourceOf = sourceOf;
10
+ // An image and a maths span are the same problem to a display: a run of
11
+ // markdown that is drawn rather than read, that the strip has already replaced
12
+ // with a single placeholder character, and that something has to be mounted
13
+ // over. `stripSyntax` reports them apart because what a caller needs to know
14
+ // about each is different; the two components need them together, in the one
15
+ // order the placeholders appear in.
16
+
17
+ /**
18
+ * How a maths span is said out loud, or nothing for one that cannot be said.
19
+ *
20
+ * Passed in rather than imported so that this module knows nothing about
21
+ * typesetting: it is `./math`'s `speakMath` at both call sites, and a display
22
+ * with no maths backend passes one that always declines.
23
+ */
24
+
25
+ const NO_ATOMS = exports.NO_ATOMS = [];
26
+
27
+ /**
28
+ * Every placeholder in the stripped text, in the order it stands there.
29
+ *
30
+ * Sorting is enough to interleave the two kinds correctly: each index is a
31
+ * distinct character in the same string, so no two atoms can share one.
32
+ */
33
+ function atomsOf(markdown) {
34
+ const {
35
+ embeds,
36
+ maths
37
+ } = markdown;
38
+ if (embeds.length === 0 && maths.length === 0) {
39
+ return NO_ATOMS;
40
+ }
41
+ const atoms = [];
42
+ for (const embed of embeds) {
43
+ atoms.push({
44
+ kind: "embed",
45
+ ...embed
46
+ });
47
+ }
48
+ for (const math of maths) {
49
+ atoms.push({
50
+ kind: "math",
51
+ ...math
52
+ });
53
+ }
54
+ return atoms.length > 1 ? atoms.sort((a, b) => a.index - b.index) : atoms;
55
+ }
56
+
57
+ /**
58
+ * The text as it should be read out, with every placeholder written back out
59
+ * as what it stands for.
60
+ *
61
+ * A drawing costs exactly one character in the string the platform lays out --
62
+ * U+FFFC, the object replacement character -- and there is nothing in that
63
+ * character for a screen reader to say. An image's `alt` is its accessible name
64
+ * by every spec there is, and left empty it declares the image decorative, so
65
+ * it is used as written. A maths span is read as what was drawn, which is what
66
+ * `speak` answers; the TeX behind it is the fallback, because an expression
67
+ * read out as its source is still better than a sentence with a hole in it.
68
+ *
69
+ * `locale` is the language the maths is said in, and is passed straight
70
+ * through: the prose around it is in whatever language it was written in, and
71
+ * nothing here can or should change that.
72
+ */
73
+ function describeAtoms(markdown, speak, locale) {
74
+ const atoms = atomsOf(markdown);
75
+ if (atoms.length === 0) {
76
+ return markdown.text;
77
+ }
78
+ let described = "";
79
+ let cursor = 0;
80
+ for (const atom of atoms) {
81
+ described += markdown.text.slice(cursor, atom.index);
82
+ described += atom.kind === "embed" ? atom.alt : speak(atom.tex, atom.display, locale) ?? atom.tex;
83
+ cursor = atom.index + 1;
84
+ }
85
+ return described + markdown.text.slice(cursor);
86
+ }
87
+
88
+ /**
89
+ * What a placeholder puts on the clipboard, which is the markdown it was
90
+ * written as.
91
+ *
92
+ * A copy of rendered text is plain text: `**bold**` comes off the screen as
93
+ * "bold", because that is what a copy of styled text has always been. A drawing
94
+ * has no plain text at all -- it is one U+FFFC, which pastes as a box -- and
95
+ * the source is the only honest thing to put there. Written back out with its
96
+ * dollar signs, a copied paragraph is markdown again and goes back into an
97
+ * editor as the document it came from.
98
+ *
99
+ * An image copies as nothing, the way an `<img>` does on the web: its alt text
100
+ * describes the picture for someone who cannot see it, and pasting a
101
+ * description where a picture was is not what anyone asked for.
102
+ */
103
+ function sourceOf(atom) {
104
+ if (atom.kind === "embed") {
105
+ return "";
106
+ }
107
+
108
+ // A display equation is written on lines of its own, and lands in the
109
+ // clipboard that way: pasted back, it is a display equation again.
110
+ return atom.display ? `$$\n${atom.tex}\n$$` : `$$${atom.tex}$$`;
111
+ }
112
+ //# sourceMappingURL=atomUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["NO_ATOMS","exports","atomsOf","markdown","embeds","maths","length","atoms","embed","push","kind","math","sort","a","b","index","describeAtoms","speak","locale","text","described","cursor","atom","slice","alt","tex","display","sourceOf"],"sourceRoot":"../../src","sources":["atomUtils.ts"],"mappings":";;;;;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;;AAGA,MAAMA,QAAgB,GAAAC,OAAA,CAAAD,QAAA,GAAG,EAAE;;AAE3B;AACA;AACA;AACA;AACA;AACA;AACA,SAASE,OAAOA,CAACC,QAA0B,EAAU;EACnD,MAAM;IAAEC,MAAM;IAAEC;EAAM,CAAC,GAAGF,QAAQ;EAElC,IAAIC,MAAM,CAACE,MAAM,KAAK,CAAC,IAAID,KAAK,CAACC,MAAM,KAAK,CAAC,EAAE;IAC7C,OAAON,QAAQ;EACjB;EAEA,MAAMO,KAAa,GAAG,EAAE;EAExB,KAAK,MAAMC,KAAK,IAAIJ,MAAM,EAAE;IAC1BG,KAAK,CAACE,IAAI,CAAC;MAAEC,IAAI,EAAE,OAAO;MAAE,GAAGF;IAAM,CAAC,CAAC;EACzC;EAEA,KAAK,MAAMG,IAAI,IAAIN,KAAK,EAAE;IACxBE,KAAK,CAACE,IAAI,CAAC;MAAEC,IAAI,EAAE,MAAM;MAAE,GAAGC;IAAK,CAAC,CAAC;EACvC;EAEA,OAAOJ,KAAK,CAACD,MAAM,GAAG,CAAC,GAAGC,KAAK,CAACK,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKD,CAAC,CAACE,KAAK,GAAGD,CAAC,CAACC,KAAK,CAAC,GAAGR,KAAK;AAC3E;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASS,aAAaA,CAACb,QAA0B,EAAEc,KAAgB,EAAEC,MAAe,EAAU;EAC5F,MAAMX,KAAK,GAAGL,OAAO,CAACC,QAAQ,CAAC;EAE/B,IAAII,KAAK,CAACD,MAAM,KAAK,CAAC,EAAE;IACtB,OAAOH,QAAQ,CAACgB,IAAI;EACtB;EAEA,IAAIC,SAAS,GAAG,EAAE;EAClB,IAAIC,MAAM,GAAG,CAAC;EAEd,KAAK,MAAMC,IAAI,IAAIf,KAAK,EAAE;IACxBa,SAAS,IAAIjB,QAAQ,CAACgB,IAAI,CAACI,KAAK,CAACF,MAAM,EAAEC,IAAI,CAACP,KAAK,CAAC;IACpDK,SAAS,IACPE,IAAI,CAACZ,IAAI,KAAK,OAAO,GAAGY,IAAI,CAACE,GAAG,GAAGP,KAAK,CAACK,IAAI,CAACG,GAAG,EAAEH,IAAI,CAACI,OAAO,EAAER,MAAM,CAAC,IAAII,IAAI,CAACG,GAAG;IACtFJ,MAAM,GAAGC,IAAI,CAACP,KAAK,GAAG,CAAC;EACzB;EAEA,OAAOK,SAAS,GAAGjB,QAAQ,CAACgB,IAAI,CAACI,KAAK,CAACF,MAAM,CAAC;AAChD;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASM,QAAQA,CAACL,IAAU,EAAU;EACpC,IAAIA,IAAI,CAACZ,IAAI,KAAK,OAAO,EAAE;IACzB,OAAO,EAAE;EACX;;EAEA;EACA;EACA,OAAOY,IAAI,CAACI,OAAO,GAAG,OAAOJ,IAAI,CAACG,GAAG,MAAM,GAAG,KAAKH,IAAI,CAACG,GAAG,IAAI;AACjE","ignoreList":[]}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.flattenText = flattenText;
7
+ /**
8
+ * Flattens children into the string they render as, or null if they are not
9
+ * text.
10
+ *
11
+ * Only strings and numbers are markdown. An element child is content there are
12
+ * no parser offsets for and no way to strip syntax out of, so a subtree
13
+ * containing one renders unformatted rather than half formatted.
14
+ */
15
+ function flattenText(children) {
16
+ const parts = [];
17
+ return collect(children, parts) ? parts.join("") : null;
18
+ }
19
+ function collect(children, parts) {
20
+ if (children === null || children === undefined || typeof children === "boolean") {
21
+ return true;
22
+ }
23
+ if (typeof children === "string") {
24
+ parts.push(children);
25
+ return true;
26
+ }
27
+ if (typeof children === "number") {
28
+ parts.push(String(children));
29
+ return true;
30
+ }
31
+ if (Array.isArray(children)) {
32
+ return children.every(child => collect(child, parts));
33
+ }
34
+ return false;
35
+ }
36
+ //# sourceMappingURL=childrenUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["flattenText","children","parts","collect","join","undefined","push","String","Array","isArray","every","child"],"sourceRoot":"../../src","sources":["childrenUtils.ts"],"mappings":";;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,WAAWA,CAACC,QAAyB,EAAiB;EAC7D,MAAMC,KAAe,GAAG,EAAE;EAE1B,OAAOC,OAAO,CAACF,QAAQ,EAAEC,KAAK,CAAC,GAAGA,KAAK,CAACE,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI;AACzD;AAEA,SAASD,OAAOA,CAACF,QAAyB,EAAEC,KAAe,EAAW;EACpE,IAAID,QAAQ,KAAK,IAAI,IAAIA,QAAQ,KAAKI,SAAS,IAAI,OAAOJ,QAAQ,KAAK,SAAS,EAAE;IAChF,OAAO,IAAI;EACb;EAEA,IAAI,OAAOA,QAAQ,KAAK,QAAQ,EAAE;IAChCC,KAAK,CAACI,IAAI,CAACL,QAAQ,CAAC;IACpB,OAAO,IAAI;EACb;EAEA,IAAI,OAAOA,QAAQ,KAAK,QAAQ,EAAE;IAChCC,KAAK,CAACI,IAAI,CAACC,MAAM,CAACN,QAAQ,CAAC,CAAC;IAC5B,OAAO,IAAI;EACb;EAEA,IAAIO,KAAK,CAACC,OAAO,CAACR,QAAQ,CAAC,EAAE;IAC3B,OAAOA,QAAQ,CAACS,KAAK,CAAEC,KAAK,IAAKR,OAAO,CAACQ,KAAK,EAAET,KAAK,CAAC,CAAC;EACzD;EAEA,OAAO,KAAK;AACd","ignoreList":[]}
@@ -3,25 +3,26 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- Object.defineProperty(exports, "MarkdownTextInput", {
6
+ Object.defineProperty(exports, "MarkdownText", {
7
7
  enumerable: true,
8
8
  get: function () {
9
- return _MarkdownTextInput.default;
9
+ return _MarkdownText.default;
10
10
  }
11
11
  });
12
- Object.defineProperty(exports, "getWorkletRuntime", {
12
+ Object.defineProperty(exports, "MarkdownTextInput", {
13
13
  enumerable: true,
14
14
  get: function () {
15
- return _MarkdownTextInput.getWorkletRuntime;
15
+ return _MarkdownTextInput.default;
16
16
  }
17
17
  });
18
- Object.defineProperty(exports, "parser", {
18
+ Object.defineProperty(exports, "getWorkletRuntime", {
19
19
  enumerable: true,
20
20
  get: function () {
21
- return _index.parse;
21
+ return _MarkdownTextInput.getWorkletRuntime;
22
22
  }
23
23
  });
24
24
  var _MarkdownTextInput = _interopRequireWildcard(require("./MarkdownTextInput"));
25
- var _index = require("./parser/index.js");
25
+ var _MarkdownText = _interopRequireDefault(require("./MarkdownText"));
26
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
26
27
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
27
28
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_MarkdownTextInput","_interopRequireWildcard","require","_index","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,kBAAA,GAAAC,uBAAA,CAAAC,OAAA;AAGA,IAAAC,MAAA,GAAAD,OAAA;AAA0C,SAAAD,wBAAAG,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAL,uBAAA,YAAAA,CAAAG,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA","ignoreList":[]}
1
+ {"version":3,"names":["_MarkdownTextInput","_interopRequireWildcard","require","_MarkdownText","_interopRequireDefault","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,kBAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,aAAA,GAAAC,sBAAA,CAAAF,OAAA;AAAwD,SAAAE,uBAAAC,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAJ,wBAAAI,CAAA,EAAAG,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAR,uBAAA,YAAAA,CAAAI,CAAA,EAAAG,CAAA,SAAAA,CAAA,IAAAH,CAAA,IAAAA,CAAA,CAAAC,UAAA,SAAAD,CAAA,MAAAO,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAR,OAAA,EAAAF,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAS,CAAA,MAAAF,CAAA,GAAAJ,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAE,CAAA,CAAAI,GAAA,CAAAX,CAAA,UAAAO,CAAA,CAAAK,GAAA,CAAAZ,CAAA,GAAAO,CAAA,CAAAM,GAAA,CAAAb,CAAA,EAAAS,CAAA,gBAAAN,CAAA,IAAAH,CAAA,gBAAAG,CAAA,OAAAW,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAG,CAAA,OAAAK,CAAA,IAAAD,CAAA,GAAAS,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAG,CAAA,OAAAK,CAAA,CAAAI,GAAA,IAAAJ,CAAA,CAAAK,GAAA,IAAAN,CAAA,CAAAE,CAAA,EAAAN,CAAA,EAAAK,CAAA,IAAAC,CAAA,CAAAN,CAAA,IAAAH,CAAA,CAAAG,CAAA,WAAAM,CAAA,KAAAT,CAAA,EAAAG,CAAA","ignoreList":[]}
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ /**
7
+ * What MathJax and SRE assume about their host that React Native does not
8
+ * provide. Imported before either of them, and first, because `import`
9
+ * statements are hoisted and run in the order they are written.
10
+ */
11
+
12
+ /**
13
+ * MathJax guesses the operating system from `window.navigator.appVersion`,
14
+ * behind nothing but a `typeof window !== "undefined"` check
15
+ * (`@mathjax/src/mjs/util/context.js`). React Native defines `window` and
16
+ * `navigator` but not `appVersion`, so the check passes and the read throws
17
+ * `Cannot read property 'includes' of undefined` before a line of MathJax's own
18
+ * code runs.
19
+ *
20
+ * What it is guessing at is only ever used to rewrite Windows file paths, which
21
+ * nothing here does, so an empty string is both harmless and enough.
22
+ */
23
+ const nav = globalThis.navigator;
24
+ for (const key of ["appVersion", "userAgent"]) {
25
+ if (nav && nav[key] === undefined) {
26
+ try {
27
+ nav[key] = "";
28
+ } catch {
29
+ Object.defineProperty(nav, key, {
30
+ value: "",
31
+ configurable: true
32
+ });
33
+ }
34
+ }
35
+ }
36
+
37
+ /**
38
+ * The file system, which SRE reaches for before anything has had a chance to
39
+ * tell it not to.
40
+ *
41
+ * `speech-rule-engine/js/common/system_external.js` decides at import time how
42
+ * it will read its rule tables, and on anything that is not a browser it
43
+ * settles on Node's `fs` and a path worked out from `require.resolve` or
44
+ * `process.cwd()`. React Native has neither: `require` is the bundler's, which
45
+ * throws on a name it was not built with, and `process` is a stub with no
46
+ * `cwd`. Either one is an exception thrown from the top level of a module, so
47
+ * SRE cannot even be imported.
48
+ *
49
+ * None of it is wanted in any case -- the rules are bundled and handed over by
50
+ * a loader of our own -- so both routes are stubbed out here rather than fixed.
51
+ * `__non_webpack_require__` is the escape hatch SRE checks first, and a
52
+ * function that returns nothing for every name satisfies it, leaves `fs` null,
53
+ * and makes the path guessing fail its way harmlessly to the end.
54
+ */
55
+ const scope = globalThis;
56
+ if (scope.__non_webpack_require__ === undefined) {
57
+ try {
58
+ scope.__non_webpack_require__ = () => null;
59
+ } catch {
60
+ Object.defineProperty(scope, "__non_webpack_require__", {
61
+ value: () => null,
62
+ configurable: true
63
+ });
64
+ }
65
+ }
66
+ if (scope.process !== undefined && scope.process.cwd === undefined) {
67
+ scope.process.cwd = () => "";
68
+ }
69
+ //# sourceMappingURL=environment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["nav","globalThis","navigator","key","undefined","Object","defineProperty","value","configurable","scope","__non_webpack_require__","process","cwd"],"sourceRoot":"../../../src","sources":["math/environment.ts"],"mappings":";;;;;AAAA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMA,GAAG,GAAIC,UAAU,CAAwDC,SAAS;AAExF,KAAK,MAAMC,GAAG,IAAI,CAAC,YAAY,EAAE,WAAW,CAAC,EAAE;EAC7C,IAAIH,GAAG,IAAIA,GAAG,CAACG,GAAG,CAAC,KAAKC,SAAS,EAAE;IACjC,IAAI;MACFJ,GAAG,CAACG,GAAG,CAAC,GAAG,EAAE;IACf,CAAC,CAAC,MAAM;MACNE,MAAM,CAACC,cAAc,CAACN,GAAG,EAAEG,GAAG,EAAE;QAAEI,KAAK,EAAE,EAAE;QAAEC,YAAY,EAAE;MAAK,CAAC,CAAC;IACpE;EACF;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,KAAK,GAAGR,UAGb;AAED,IAAIQ,KAAK,CAACC,uBAAuB,KAAKN,SAAS,EAAE;EAC/C,IAAI;IACFK,KAAK,CAACC,uBAAuB,GAAG,MAAM,IAAI;EAC5C,CAAC,CAAC,MAAM;IACNL,MAAM,CAACC,cAAc,CAACG,KAAK,EAAE,yBAAyB,EAAE;MACtDF,KAAK,EAAEA,CAAA,KAAM,IAAI;MACjBC,YAAY,EAAE;IAChB,CAAC,CAAC;EACJ;AACF;AAEA,IAAIC,KAAK,CAACE,OAAO,KAAKP,SAAS,IAAIK,KAAK,CAACE,OAAO,CAACC,GAAG,KAAKR,SAAS,EAAE;EAClEK,KAAK,CAACE,OAAO,CAACC,GAAG,GAAG,MAAM,EAAE;AAC9B","ignoreList":[]}
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.available = void 0;
7
+ exports.renderMath = renderMath;
8
+ exports.speakMath = speakMath;
9
+ /**
10
+ * The maths backend, in its "there isn't one" form.
11
+ *
12
+ * Typesetting TeX takes a library an order of magnitude larger than this one,
13
+ * and most applications will never draw an equation. So the real backend --
14
+ * `./mathjax.ts`, right beside this -- is never imported by anything: a
15
+ * bundler would follow the import and pull MathJax into every app that has
16
+ * ever installed this package, whether or not it renders maths.
17
+ *
18
+ * Instead the two are swapped at build time. `react-native-marcus/metro`'s
19
+ * `withMath()` resolves this module to that one, so an application opts in by
20
+ * editing its `metro.config.js` and the default bundle carries nothing.
21
+ *
22
+ * What the swap has to preserve is this shape and nothing else.
23
+ */
24
+
25
+ /** One expression, drawn, with the box it needs. */
26
+
27
+ /**
28
+ * Whether maths can be drawn at all.
29
+ *
30
+ * Read by the display components, which leave a maths span exactly as it was
31
+ * written when this is false. Showing `$$x^2$$` is a good deal better than
32
+ * showing an empty box where an equation should be, and it is the one hint an
33
+ * application will get that its Metro config is missing a line.
34
+ */
35
+ const available = exports.available = false;
36
+ function renderMath(_tex, _display, _fontSize, _color) {
37
+ return null;
38
+ }
39
+
40
+ /**
41
+ * The expression as it should be read out, or nothing.
42
+ *
43
+ * A drawn equation is a picture, and the TeX behind it is source code: an
44
+ * author reading `\frac{a}{b}` knows what it means, and a reader who asked
45
+ * for a document rather than for its markup hears three words of punctuation.
46
+ * So a display says what it drew -- "StartFraction a Over b EndFraction" --
47
+ * while an input, where the TeX is what is on the screen and what the caret
48
+ * moves through, keeps the TeX.
49
+ *
50
+ * `locale` is the language it should be said in, as a name the backend knows;
51
+ * nothing means the backend's own default. What a document is written in and
52
+ * what its reader speaks are two different questions, and only the application
53
+ * knows the answer to the second.
54
+ *
55
+ * Returning nothing means the caller falls back to the TeX, which is what the
56
+ * stub does and what a backend does for an expression it cannot say.
57
+ */
58
+ function speakMath(_tex, _display, _locale) {
59
+ return null;
60
+ }
61
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["available","exports","renderMath","_tex","_display","_fontSize","_color","speakMath","_locale"],"sourceRoot":"../../../src","sources":["math/index.ts"],"mappings":";;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAkBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMA,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAG,KAAK;AAEvB,SAASE,UAAUA,CACjBC,IAAY,EACZC,QAAiB,EACjBC,SAAiB,EACjBC,MAA0B,EACL;EACrB,OAAO,IAAI;AACb;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,SAASA,CAACJ,IAAY,EAAEC,QAAiB,EAAEI,OAAgB,EAAiB;EACnF,OAAO,IAAI;AACb","ignoreList":[]}