@multiplatform.one/rich-text 6.1.0 → 6.3.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 (649) hide show
  1. package/README.md +60 -0
  2. package/dist/cjs/RichEditor.cjs +84 -9
  3. package/dist/cjs/RichEditor.native.js +422 -35
  4. package/dist/cjs/RichEditor.native.js.map +1 -1
  5. package/dist/cjs/RichTextEditor/index.cjs +18 -2
  6. package/dist/cjs/RichTextEditor/index.native.js +18 -2
  7. package/dist/cjs/RichTextEditor/index.native.js.map +1 -1
  8. package/dist/cjs/constants.cjs +52 -29
  9. package/dist/cjs/constants.native.js +59 -29
  10. package/dist/cjs/constants.native.js.map +1 -1
  11. package/dist/cjs/editor/BlockDragHandle.cjs +22 -7
  12. package/dist/cjs/editor/BlockDragHandle.native.js +41 -7
  13. package/dist/cjs/editor/BlockDragHandle.native.js.map +1 -1
  14. package/dist/cjs/editor/SlashCommands.cjs +249 -293
  15. package/dist/cjs/editor/SlashCommands.native.js +306 -340
  16. package/dist/cjs/editor/SlashCommands.native.js.map +1 -1
  17. package/dist/cjs/editor/TentapEditor.native.js +44 -12
  18. package/dist/cjs/editor/TentapEditor.native.js.map +1 -1
  19. package/dist/cjs/editor/TiptapEditor.cjs +140 -33
  20. package/dist/cjs/editor/TiptapEditor.native.js +153 -33
  21. package/dist/cjs/editor/TiptapEditor.native.js.map +1 -1
  22. package/dist/cjs/editor/blockAnchor.cjs +43 -0
  23. package/dist/cjs/editor/blockAnchor.native.js +68 -0
  24. package/dist/cjs/editor/blockAnchor.native.js.map +1 -0
  25. package/dist/cjs/editor/codeBlockPreview.cjs +230 -0
  26. package/dist/cjs/editor/codeBlockPreview.native.js +265 -0
  27. package/dist/cjs/editor/codeBlockPreview.native.js.map +1 -0
  28. package/dist/cjs/editor/editorStyles.cjs +203 -34
  29. package/dist/cjs/editor/editorStyles.native.js +203 -34
  30. package/dist/cjs/editor/editorStyles.native.js.map +1 -1
  31. package/dist/cjs/editor/emoji.cjs +128 -0
  32. package/dist/cjs/editor/emoji.native.js +184 -0
  33. package/dist/cjs/editor/emoji.native.js.map +1 -0
  34. package/dist/cjs/editor/lazyKatex.cjs +78 -0
  35. package/dist/cjs/editor/lazyKatex.native.js +117 -0
  36. package/dist/cjs/editor/lazyKatex.native.js.map +1 -0
  37. package/dist/cjs/editor/markdown.cjs +216 -0
  38. package/dist/cjs/editor/markdown.native.js +278 -0
  39. package/dist/cjs/editor/markdown.native.js.map +1 -0
  40. package/dist/cjs/editor/mathematics.cjs +168 -0
  41. package/dist/cjs/editor/mathematics.native.js +202 -0
  42. package/dist/cjs/editor/mathematics.native.js.map +1 -0
  43. package/dist/cjs/editor/media.cjs +138 -0
  44. package/dist/cjs/editor/media.native.js +172 -0
  45. package/dist/cjs/editor/media.native.js.map +1 -0
  46. package/dist/cjs/editor/mentions.cjs +73 -0
  47. package/dist/cjs/editor/mentions.native.js +84 -0
  48. package/dist/cjs/editor/mentions.native.js.map +1 -0
  49. package/dist/cjs/editor/pasteCleanup.cjs +83 -0
  50. package/dist/cjs/editor/pasteCleanup.native.js +175 -0
  51. package/dist/cjs/editor/pasteCleanup.native.js.map +1 -0
  52. package/dist/cjs/editor/suggestionPopup.cjs +297 -0
  53. package/dist/cjs/editor/suggestionPopup.native.js +327 -0
  54. package/dist/cjs/editor/suggestionPopup.native.js.map +1 -0
  55. package/dist/cjs/preview.cjs +263 -0
  56. package/dist/cjs/preview.native.js +294 -0
  57. package/dist/cjs/preview.native.js.map +1 -0
  58. package/dist/cjs/shared/t.cjs +53 -0
  59. package/dist/cjs/shared/t.native.js +56 -0
  60. package/dist/cjs/shared/t.native.js.map +1 -0
  61. package/dist/cjs/shared/url.cjs +35 -0
  62. package/dist/cjs/shared/url.native.js +38 -0
  63. package/dist/cjs/shared/url.native.js.map +1 -0
  64. package/dist/cjs/styled.cjs +13 -6
  65. package/dist/cjs/styled.native.js +13 -6
  66. package/dist/cjs/styled.native.js.map +1 -1
  67. package/dist/cjs/toolbar/BubbleToolbar.cjs +10 -8
  68. package/dist/cjs/toolbar/BubbleToolbar.native.js +10 -8
  69. package/dist/cjs/toolbar/BubbleToolbar.native.js.map +1 -1
  70. package/dist/cjs/toolbar/CodeBlockBubble.cjs +59 -23
  71. package/dist/cjs/toolbar/CodeBlockBubble.native.js +71 -25
  72. package/dist/cjs/toolbar/CodeBlockBubble.native.js.map +1 -1
  73. package/dist/cjs/toolbar/ColorPicker.cjs +19 -54
  74. package/dist/cjs/toolbar/ColorPicker.native.js +81 -179
  75. package/dist/cjs/toolbar/ColorPicker.native.js.map +1 -1
  76. package/dist/cjs/toolbar/FixedToolbar.cjs +33 -10
  77. package/dist/cjs/toolbar/FixedToolbar.native.js +46 -54
  78. package/dist/cjs/toolbar/FixedToolbar.native.js.map +1 -1
  79. package/dist/cjs/toolbar/HeadingPicker.cjs +32 -39
  80. package/dist/cjs/toolbar/HeadingPicker.native.js +61 -51
  81. package/dist/cjs/toolbar/HeadingPicker.native.js.map +1 -1
  82. package/dist/cjs/toolbar/ImageBubble.cjs +20 -43
  83. package/dist/cjs/toolbar/ImageBubble.native.js +20 -43
  84. package/dist/cjs/toolbar/ImageBubble.native.js.map +1 -1
  85. package/dist/cjs/toolbar/ImageDialog.cjs +5 -4
  86. package/dist/cjs/toolbar/ImageDialog.native.js +76 -65
  87. package/dist/cjs/toolbar/ImageDialog.native.js.map +1 -1
  88. package/dist/cjs/toolbar/LinkBubble.cjs +23 -70
  89. package/dist/cjs/toolbar/LinkBubble.native.js +23 -70
  90. package/dist/cjs/toolbar/LinkBubble.native.js.map +1 -1
  91. package/dist/cjs/toolbar/LinkDialog.cjs +19 -18
  92. package/dist/cjs/toolbar/LinkDialog.native.js +86 -83
  93. package/dist/cjs/toolbar/LinkDialog.native.js.map +1 -1
  94. package/dist/cjs/toolbar/ListPicker.cjs +32 -43
  95. package/dist/cjs/toolbar/ListPicker.native.js +43 -44
  96. package/dist/cjs/toolbar/ListPicker.native.js.map +1 -1
  97. package/dist/cjs/toolbar/MathBubble.cjs +159 -0
  98. package/dist/cjs/toolbar/MathBubble.native.js +169 -0
  99. package/dist/cjs/toolbar/MathBubble.native.js.map +1 -0
  100. package/dist/cjs/toolbar/MoreDropdown.cjs +51 -98
  101. package/dist/cjs/toolbar/MoreDropdown.native.js +73 -98
  102. package/dist/cjs/toolbar/MoreDropdown.native.js.map +1 -1
  103. package/dist/cjs/toolbar/StatusBar.cjs +19 -10
  104. package/dist/cjs/toolbar/StatusBar.native.js +19 -10
  105. package/dist/cjs/toolbar/StatusBar.native.js.map +1 -1
  106. package/dist/cjs/toolbar/TableBubble.cjs +77 -95
  107. package/dist/cjs/toolbar/TableBubble.native.js +73 -71
  108. package/dist/cjs/toolbar/TableBubble.native.js.map +1 -1
  109. package/dist/cjs/toolbar/ToolbarButton.cjs +86 -21
  110. package/dist/cjs/toolbar/ToolbarButton.native.js +14 -4
  111. package/dist/cjs/toolbar/ToolbarButton.native.js.map +1 -1
  112. package/dist/cjs/toolbar/icons.cjs +111 -468
  113. package/dist/cjs/toolbar/shortcuts.cjs +73 -24
  114. package/dist/cjs/toolbar/shortcuts.native.js +73 -24
  115. package/dist/cjs/toolbar/shortcuts.native.js.map +1 -1
  116. package/dist/cjs/toolbar/useHorizontalScroll.cjs +25 -5
  117. package/dist/cjs/toolbar/useHorizontalScroll.native.js +25 -5
  118. package/dist/cjs/toolbar/useHorizontalScroll.native.js.map +1 -1
  119. package/dist/cjs/toolbar/useRovingFocus.cjs +80 -0
  120. package/dist/cjs/toolbar/useRovingFocus.native.js +113 -0
  121. package/dist/cjs/toolbar/useRovingFocus.native.js.map +1 -0
  122. package/dist/cjs/types.native.js.map +1 -1
  123. package/dist/esm/RichEditor.mjs +85 -10
  124. package/dist/esm/RichEditor.mjs.map +1 -1
  125. package/dist/esm/RichEditor.native.js +425 -38
  126. package/dist/esm/RichEditor.native.js.map +1 -1
  127. package/dist/esm/RichTextEditor/index.mjs +18 -2
  128. package/dist/esm/RichTextEditor/index.mjs.map +1 -1
  129. package/dist/esm/RichTextEditor/index.native.js +18 -2
  130. package/dist/esm/RichTextEditor/index.native.js.map +1 -1
  131. package/dist/esm/constants.mjs +47 -29
  132. package/dist/esm/constants.mjs.map +1 -1
  133. package/dist/esm/constants.native.js +54 -29
  134. package/dist/esm/constants.native.js.map +1 -1
  135. package/dist/esm/editor/BlockDragHandle.mjs +22 -7
  136. package/dist/esm/editor/BlockDragHandle.mjs.map +1 -1
  137. package/dist/esm/editor/BlockDragHandle.native.js +41 -7
  138. package/dist/esm/editor/BlockDragHandle.native.js.map +1 -1
  139. package/dist/esm/editor/SlashCommands.mjs +250 -294
  140. package/dist/esm/editor/SlashCommands.mjs.map +1 -1
  141. package/dist/esm/editor/SlashCommands.native.js +307 -341
  142. package/dist/esm/editor/SlashCommands.native.js.map +1 -1
  143. package/dist/esm/editor/TentapEditor.native.js +45 -13
  144. package/dist/esm/editor/TentapEditor.native.js.map +1 -1
  145. package/dist/esm/editor/TiptapEditor.mjs +142 -35
  146. package/dist/esm/editor/TiptapEditor.mjs.map +1 -1
  147. package/dist/esm/editor/TiptapEditor.native.js +155 -35
  148. package/dist/esm/editor/TiptapEditor.native.js.map +1 -1
  149. package/dist/esm/editor/blockAnchor.mjs +18 -0
  150. package/dist/esm/editor/blockAnchor.mjs.map +1 -0
  151. package/dist/esm/editor/blockAnchor.native.js +40 -0
  152. package/dist/esm/editor/blockAnchor.native.js.map +1 -0
  153. package/dist/esm/editor/codeBlockPreview.mjs +190 -0
  154. package/dist/esm/editor/codeBlockPreview.mjs.map +1 -0
  155. package/dist/esm/editor/codeBlockPreview.native.js +222 -0
  156. package/dist/esm/editor/codeBlockPreview.native.js.map +1 -0
  157. package/dist/esm/editor/editorStyles.mjs +203 -34
  158. package/dist/esm/editor/editorStyles.mjs.map +1 -1
  159. package/dist/esm/editor/editorStyles.native.js +203 -34
  160. package/dist/esm/editor/editorStyles.native.js.map +1 -1
  161. package/dist/esm/editor/emoji.mjs +88 -0
  162. package/dist/esm/editor/emoji.mjs.map +1 -0
  163. package/dist/esm/editor/emoji.native.js +141 -0
  164. package/dist/esm/editor/emoji.native.js.map +1 -0
  165. package/dist/esm/editor/lazyKatex.mjs +40 -0
  166. package/dist/esm/editor/lazyKatex.mjs.map +1 -0
  167. package/dist/esm/editor/lazyKatex.native.js +76 -0
  168. package/dist/esm/editor/lazyKatex.native.js.map +1 -0
  169. package/dist/esm/editor/markdown.mjs +179 -0
  170. package/dist/esm/editor/markdown.mjs.map +1 -0
  171. package/dist/esm/editor/markdown.native.js +238 -0
  172. package/dist/esm/editor/markdown.native.js.map +1 -0
  173. package/dist/esm/editor/mathematics.mjs +142 -0
  174. package/dist/esm/editor/mathematics.mjs.map +1 -0
  175. package/dist/esm/editor/mathematics.native.js +173 -0
  176. package/dist/esm/editor/mathematics.native.js.map +1 -0
  177. package/dist/esm/editor/media.mjs +113 -0
  178. package/dist/esm/editor/media.mjs.map +1 -0
  179. package/dist/esm/editor/media.native.js +144 -0
  180. package/dist/esm/editor/media.native.js.map +1 -0
  181. package/dist/esm/editor/mentions.mjs +37 -0
  182. package/dist/esm/editor/mentions.mjs.map +1 -0
  183. package/dist/esm/editor/mentions.native.js +45 -0
  184. package/dist/esm/editor/mentions.native.js.map +1 -0
  185. package/dist/esm/editor/pasteCleanup.mjs +57 -0
  186. package/dist/esm/editor/pasteCleanup.mjs.map +1 -0
  187. package/dist/esm/editor/pasteCleanup.native.js +146 -0
  188. package/dist/esm/editor/pasteCleanup.native.js.map +1 -0
  189. package/dist/esm/editor/suggestionPopup.mjs +268 -0
  190. package/dist/esm/editor/suggestionPopup.mjs.map +1 -0
  191. package/dist/esm/editor/suggestionPopup.native.js +295 -0
  192. package/dist/esm/editor/suggestionPopup.native.js.map +1 -0
  193. package/dist/esm/preview.mjs +236 -0
  194. package/dist/esm/preview.mjs.map +1 -0
  195. package/dist/esm/preview.native.js +264 -0
  196. package/dist/esm/preview.native.js.map +1 -0
  197. package/dist/esm/shared/t.mjs +17 -0
  198. package/dist/esm/shared/t.mjs.map +1 -0
  199. package/dist/esm/shared/t.native.js +17 -0
  200. package/dist/esm/shared/t.native.js.map +1 -0
  201. package/dist/esm/shared/url.mjs +10 -0
  202. package/dist/esm/shared/url.mjs.map +1 -0
  203. package/dist/esm/shared/url.native.js +10 -0
  204. package/dist/esm/shared/url.native.js.map +1 -0
  205. package/dist/esm/styled.mjs +13 -6
  206. package/dist/esm/styled.mjs.map +1 -1
  207. package/dist/esm/styled.native.js +13 -6
  208. package/dist/esm/styled.native.js.map +1 -1
  209. package/dist/esm/toolbar/BubbleToolbar.mjs +11 -9
  210. package/dist/esm/toolbar/BubbleToolbar.mjs.map +1 -1
  211. package/dist/esm/toolbar/BubbleToolbar.native.js +11 -9
  212. package/dist/esm/toolbar/BubbleToolbar.native.js.map +1 -1
  213. package/dist/esm/toolbar/CodeBlockBubble.mjs +60 -24
  214. package/dist/esm/toolbar/CodeBlockBubble.mjs.map +1 -1
  215. package/dist/esm/toolbar/CodeBlockBubble.native.js +72 -26
  216. package/dist/esm/toolbar/CodeBlockBubble.native.js.map +1 -1
  217. package/dist/esm/toolbar/ColorPicker.mjs +21 -56
  218. package/dist/esm/toolbar/ColorPicker.mjs.map +1 -1
  219. package/dist/esm/toolbar/ColorPicker.native.js +82 -180
  220. package/dist/esm/toolbar/ColorPicker.native.js.map +1 -1
  221. package/dist/esm/toolbar/FixedToolbar.mjs +34 -11
  222. package/dist/esm/toolbar/FixedToolbar.mjs.map +1 -1
  223. package/dist/esm/toolbar/FixedToolbar.native.js +47 -55
  224. package/dist/esm/toolbar/FixedToolbar.native.js.map +1 -1
  225. package/dist/esm/toolbar/HeadingPicker.mjs +34 -41
  226. package/dist/esm/toolbar/HeadingPicker.mjs.map +1 -1
  227. package/dist/esm/toolbar/HeadingPicker.native.js +63 -53
  228. package/dist/esm/toolbar/HeadingPicker.native.js.map +1 -1
  229. package/dist/esm/toolbar/ImageBubble.mjs +20 -43
  230. package/dist/esm/toolbar/ImageBubble.mjs.map +1 -1
  231. package/dist/esm/toolbar/ImageBubble.native.js +20 -43
  232. package/dist/esm/toolbar/ImageBubble.native.js.map +1 -1
  233. package/dist/esm/toolbar/ImageDialog.mjs +5 -4
  234. package/dist/esm/toolbar/ImageDialog.mjs.map +1 -1
  235. package/dist/esm/toolbar/ImageDialog.native.js +75 -64
  236. package/dist/esm/toolbar/ImageDialog.native.js.map +1 -1
  237. package/dist/esm/toolbar/LinkBubble.mjs +23 -70
  238. package/dist/esm/toolbar/LinkBubble.mjs.map +1 -1
  239. package/dist/esm/toolbar/LinkBubble.native.js +23 -70
  240. package/dist/esm/toolbar/LinkBubble.native.js.map +1 -1
  241. package/dist/esm/toolbar/LinkDialog.mjs +17 -16
  242. package/dist/esm/toolbar/LinkDialog.mjs.map +1 -1
  243. package/dist/esm/toolbar/LinkDialog.native.js +84 -80
  244. package/dist/esm/toolbar/LinkDialog.native.js.map +1 -1
  245. package/dist/esm/toolbar/ListPicker.mjs +33 -44
  246. package/dist/esm/toolbar/ListPicker.mjs.map +1 -1
  247. package/dist/esm/toolbar/ListPicker.native.js +44 -45
  248. package/dist/esm/toolbar/ListPicker.native.js.map +1 -1
  249. package/dist/esm/toolbar/MathBubble.mjs +134 -0
  250. package/dist/esm/toolbar/MathBubble.mjs.map +1 -0
  251. package/dist/esm/toolbar/MathBubble.native.js +141 -0
  252. package/dist/esm/toolbar/MathBubble.native.js.map +1 -0
  253. package/dist/esm/toolbar/MoreDropdown.mjs +50 -97
  254. package/dist/esm/toolbar/MoreDropdown.mjs.map +1 -1
  255. package/dist/esm/toolbar/MoreDropdown.native.js +72 -97
  256. package/dist/esm/toolbar/MoreDropdown.native.js.map +1 -1
  257. package/dist/esm/toolbar/StatusBar.mjs +19 -10
  258. package/dist/esm/toolbar/StatusBar.mjs.map +1 -1
  259. package/dist/esm/toolbar/StatusBar.native.js +19 -10
  260. package/dist/esm/toolbar/StatusBar.native.js.map +1 -1
  261. package/dist/esm/toolbar/TableBubble.mjs +77 -95
  262. package/dist/esm/toolbar/TableBubble.mjs.map +1 -1
  263. package/dist/esm/toolbar/TableBubble.native.js +73 -71
  264. package/dist/esm/toolbar/TableBubble.native.js.map +1 -1
  265. package/dist/esm/toolbar/ToolbarButton.mjs +87 -22
  266. package/dist/esm/toolbar/ToolbarButton.mjs.map +1 -1
  267. package/dist/esm/toolbar/ToolbarButton.native.js +14 -4
  268. package/dist/esm/toolbar/ToolbarButton.native.js.map +1 -1
  269. package/dist/esm/toolbar/icons.mjs +109 -469
  270. package/dist/esm/toolbar/icons.mjs.map +1 -1
  271. package/dist/esm/toolbar/shortcuts.mjs +73 -24
  272. package/dist/esm/toolbar/shortcuts.mjs.map +1 -1
  273. package/dist/esm/toolbar/shortcuts.native.js +73 -24
  274. package/dist/esm/toolbar/shortcuts.native.js.map +1 -1
  275. package/dist/esm/toolbar/useHorizontalScroll.mjs +25 -6
  276. package/dist/esm/toolbar/useHorizontalScroll.mjs.map +1 -1
  277. package/dist/esm/toolbar/useHorizontalScroll.native.js +25 -6
  278. package/dist/esm/toolbar/useHorizontalScroll.native.js.map +1 -1
  279. package/dist/esm/toolbar/useRovingFocus.mjs +55 -0
  280. package/dist/esm/toolbar/useRovingFocus.mjs.map +1 -0
  281. package/dist/esm/toolbar/useRovingFocus.native.js +85 -0
  282. package/dist/esm/toolbar/useRovingFocus.native.js.map +1 -0
  283. package/dist/esm/types.mjs.map +1 -1
  284. package/dist/esm/types.native.js.map +1 -1
  285. package/dist/jsx/RichEditor.mjs +85 -10
  286. package/dist/jsx/RichEditor.mjs.map +1 -1
  287. package/dist/jsx/RichEditor.native.js +422 -35
  288. package/dist/jsx/RichEditor.native.js.map +1 -1
  289. package/dist/jsx/RichTextEditor/index.mjs +18 -2
  290. package/dist/jsx/RichTextEditor/index.mjs.map +1 -1
  291. package/dist/jsx/RichTextEditor/index.native.js +18 -2
  292. package/dist/jsx/RichTextEditor/index.native.js.map +1 -1
  293. package/dist/jsx/constants.mjs +47 -29
  294. package/dist/jsx/constants.mjs.map +1 -1
  295. package/dist/jsx/constants.native.js +59 -29
  296. package/dist/jsx/constants.native.js.map +1 -1
  297. package/dist/jsx/editor/BlockDragHandle.mjs +22 -7
  298. package/dist/jsx/editor/BlockDragHandle.mjs.map +1 -1
  299. package/dist/jsx/editor/BlockDragHandle.native.js +41 -7
  300. package/dist/jsx/editor/BlockDragHandle.native.js.map +1 -1
  301. package/dist/jsx/editor/SlashCommands.mjs +250 -294
  302. package/dist/jsx/editor/SlashCommands.mjs.map +1 -1
  303. package/dist/jsx/editor/SlashCommands.native.js +306 -340
  304. package/dist/jsx/editor/SlashCommands.native.js.map +1 -1
  305. package/dist/jsx/editor/TentapEditor.native.js +44 -12
  306. package/dist/jsx/editor/TentapEditor.native.js.map +1 -1
  307. package/dist/jsx/editor/TiptapEditor.mjs +142 -35
  308. package/dist/jsx/editor/TiptapEditor.mjs.map +1 -1
  309. package/dist/jsx/editor/TiptapEditor.native.js +153 -33
  310. package/dist/jsx/editor/TiptapEditor.native.js.map +1 -1
  311. package/dist/jsx/editor/blockAnchor.mjs +18 -0
  312. package/dist/jsx/editor/blockAnchor.mjs.map +1 -0
  313. package/dist/jsx/editor/blockAnchor.native.js +68 -0
  314. package/dist/jsx/editor/blockAnchor.native.js.map +1 -0
  315. package/dist/jsx/editor/codeBlockPreview.mjs +190 -0
  316. package/dist/jsx/editor/codeBlockPreview.mjs.map +1 -0
  317. package/dist/jsx/editor/codeBlockPreview.native.js +265 -0
  318. package/dist/jsx/editor/codeBlockPreview.native.js.map +1 -0
  319. package/dist/jsx/editor/editorStyles.mjs +203 -34
  320. package/dist/jsx/editor/editorStyles.mjs.map +1 -1
  321. package/dist/jsx/editor/editorStyles.native.js +203 -34
  322. package/dist/jsx/editor/editorStyles.native.js.map +1 -1
  323. package/dist/jsx/editor/emoji.mjs +88 -0
  324. package/dist/jsx/editor/emoji.mjs.map +1 -0
  325. package/dist/jsx/editor/emoji.native.js +184 -0
  326. package/dist/jsx/editor/emoji.native.js.map +1 -0
  327. package/dist/jsx/editor/lazyKatex.mjs +40 -0
  328. package/dist/jsx/editor/lazyKatex.mjs.map +1 -0
  329. package/dist/jsx/editor/lazyKatex.native.js +117 -0
  330. package/dist/jsx/editor/lazyKatex.native.js.map +1 -0
  331. package/dist/jsx/editor/markdown.mjs +179 -0
  332. package/dist/jsx/editor/markdown.mjs.map +1 -0
  333. package/dist/jsx/editor/markdown.native.js +278 -0
  334. package/dist/jsx/editor/markdown.native.js.map +1 -0
  335. package/dist/jsx/editor/mathematics.mjs +142 -0
  336. package/dist/jsx/editor/mathematics.mjs.map +1 -0
  337. package/dist/jsx/editor/mathematics.native.js +202 -0
  338. package/dist/jsx/editor/mathematics.native.js.map +1 -0
  339. package/dist/jsx/editor/media.mjs +113 -0
  340. package/dist/jsx/editor/media.mjs.map +1 -0
  341. package/dist/jsx/editor/media.native.js +172 -0
  342. package/dist/jsx/editor/media.native.js.map +1 -0
  343. package/dist/jsx/editor/mentions.mjs +37 -0
  344. package/dist/jsx/editor/mentions.mjs.map +1 -0
  345. package/dist/jsx/editor/mentions.native.js +84 -0
  346. package/dist/jsx/editor/mentions.native.js.map +1 -0
  347. package/dist/jsx/editor/pasteCleanup.mjs +57 -0
  348. package/dist/jsx/editor/pasteCleanup.mjs.map +1 -0
  349. package/dist/jsx/editor/pasteCleanup.native.js +175 -0
  350. package/dist/jsx/editor/pasteCleanup.native.js.map +1 -0
  351. package/dist/jsx/editor/suggestionPopup.mjs +268 -0
  352. package/dist/jsx/editor/suggestionPopup.mjs.map +1 -0
  353. package/dist/jsx/editor/suggestionPopup.native.js +327 -0
  354. package/dist/jsx/editor/suggestionPopup.native.js.map +1 -0
  355. package/dist/jsx/preview.mjs +236 -0
  356. package/dist/jsx/preview.mjs.map +1 -0
  357. package/dist/jsx/preview.native.js +294 -0
  358. package/dist/jsx/preview.native.js.map +1 -0
  359. package/dist/jsx/shared/t.mjs +17 -0
  360. package/dist/jsx/shared/t.mjs.map +1 -0
  361. package/dist/jsx/shared/t.native.js +56 -0
  362. package/dist/jsx/shared/t.native.js.map +1 -0
  363. package/dist/jsx/shared/url.mjs +10 -0
  364. package/dist/jsx/shared/url.mjs.map +1 -0
  365. package/dist/jsx/shared/url.native.js +38 -0
  366. package/dist/jsx/shared/url.native.js.map +1 -0
  367. package/dist/jsx/styled.mjs +13 -6
  368. package/dist/jsx/styled.mjs.map +1 -1
  369. package/dist/jsx/styled.native.js +13 -6
  370. package/dist/jsx/styled.native.js.map +1 -1
  371. package/dist/jsx/toolbar/BubbleToolbar.mjs +11 -9
  372. package/dist/jsx/toolbar/BubbleToolbar.mjs.map +1 -1
  373. package/dist/jsx/toolbar/BubbleToolbar.native.js +10 -8
  374. package/dist/jsx/toolbar/BubbleToolbar.native.js.map +1 -1
  375. package/dist/jsx/toolbar/CodeBlockBubble.mjs +60 -24
  376. package/dist/jsx/toolbar/CodeBlockBubble.mjs.map +1 -1
  377. package/dist/jsx/toolbar/CodeBlockBubble.native.js +71 -25
  378. package/dist/jsx/toolbar/CodeBlockBubble.native.js.map +1 -1
  379. package/dist/jsx/toolbar/ColorPicker.mjs +21 -56
  380. package/dist/jsx/toolbar/ColorPicker.mjs.map +1 -1
  381. package/dist/jsx/toolbar/ColorPicker.native.js +81 -179
  382. package/dist/jsx/toolbar/ColorPicker.native.js.map +1 -1
  383. package/dist/jsx/toolbar/FixedToolbar.mjs +34 -11
  384. package/dist/jsx/toolbar/FixedToolbar.mjs.map +1 -1
  385. package/dist/jsx/toolbar/FixedToolbar.native.js +46 -54
  386. package/dist/jsx/toolbar/FixedToolbar.native.js.map +1 -1
  387. package/dist/jsx/toolbar/HeadingPicker.mjs +34 -41
  388. package/dist/jsx/toolbar/HeadingPicker.mjs.map +1 -1
  389. package/dist/jsx/toolbar/HeadingPicker.native.js +61 -51
  390. package/dist/jsx/toolbar/HeadingPicker.native.js.map +1 -1
  391. package/dist/jsx/toolbar/ImageBubble.mjs +20 -43
  392. package/dist/jsx/toolbar/ImageBubble.mjs.map +1 -1
  393. package/dist/jsx/toolbar/ImageBubble.native.js +20 -43
  394. package/dist/jsx/toolbar/ImageBubble.native.js.map +1 -1
  395. package/dist/jsx/toolbar/ImageDialog.mjs +5 -4
  396. package/dist/jsx/toolbar/ImageDialog.mjs.map +1 -1
  397. package/dist/jsx/toolbar/ImageDialog.native.js +76 -65
  398. package/dist/jsx/toolbar/ImageDialog.native.js.map +1 -1
  399. package/dist/jsx/toolbar/LinkBubble.mjs +23 -70
  400. package/dist/jsx/toolbar/LinkBubble.mjs.map +1 -1
  401. package/dist/jsx/toolbar/LinkBubble.native.js +23 -70
  402. package/dist/jsx/toolbar/LinkBubble.native.js.map +1 -1
  403. package/dist/jsx/toolbar/LinkDialog.mjs +17 -16
  404. package/dist/jsx/toolbar/LinkDialog.mjs.map +1 -1
  405. package/dist/jsx/toolbar/LinkDialog.native.js +86 -83
  406. package/dist/jsx/toolbar/LinkDialog.native.js.map +1 -1
  407. package/dist/jsx/toolbar/ListPicker.mjs +33 -44
  408. package/dist/jsx/toolbar/ListPicker.mjs.map +1 -1
  409. package/dist/jsx/toolbar/ListPicker.native.js +43 -44
  410. package/dist/jsx/toolbar/ListPicker.native.js.map +1 -1
  411. package/dist/jsx/toolbar/MathBubble.mjs +134 -0
  412. package/dist/jsx/toolbar/MathBubble.mjs.map +1 -0
  413. package/dist/jsx/toolbar/MathBubble.native.js +169 -0
  414. package/dist/jsx/toolbar/MathBubble.native.js.map +1 -0
  415. package/dist/jsx/toolbar/MoreDropdown.mjs +50 -97
  416. package/dist/jsx/toolbar/MoreDropdown.mjs.map +1 -1
  417. package/dist/jsx/toolbar/MoreDropdown.native.js +73 -98
  418. package/dist/jsx/toolbar/MoreDropdown.native.js.map +1 -1
  419. package/dist/jsx/toolbar/StatusBar.mjs +19 -10
  420. package/dist/jsx/toolbar/StatusBar.mjs.map +1 -1
  421. package/dist/jsx/toolbar/StatusBar.native.js +19 -10
  422. package/dist/jsx/toolbar/StatusBar.native.js.map +1 -1
  423. package/dist/jsx/toolbar/TableBubble.mjs +77 -95
  424. package/dist/jsx/toolbar/TableBubble.mjs.map +1 -1
  425. package/dist/jsx/toolbar/TableBubble.native.js +73 -71
  426. package/dist/jsx/toolbar/TableBubble.native.js.map +1 -1
  427. package/dist/jsx/toolbar/ToolbarButton.mjs +87 -22
  428. package/dist/jsx/toolbar/ToolbarButton.mjs.map +1 -1
  429. package/dist/jsx/toolbar/ToolbarButton.native.js +14 -4
  430. package/dist/jsx/toolbar/ToolbarButton.native.js.map +1 -1
  431. package/dist/jsx/toolbar/icons.mjs +109 -469
  432. package/dist/jsx/toolbar/icons.mjs.map +1 -1
  433. package/dist/jsx/toolbar/shortcuts.mjs +73 -24
  434. package/dist/jsx/toolbar/shortcuts.mjs.map +1 -1
  435. package/dist/jsx/toolbar/shortcuts.native.js +73 -24
  436. package/dist/jsx/toolbar/shortcuts.native.js.map +1 -1
  437. package/dist/jsx/toolbar/useHorizontalScroll.mjs +25 -6
  438. package/dist/jsx/toolbar/useHorizontalScroll.mjs.map +1 -1
  439. package/dist/jsx/toolbar/useHorizontalScroll.native.js +25 -5
  440. package/dist/jsx/toolbar/useHorizontalScroll.native.js.map +1 -1
  441. package/dist/jsx/toolbar/useRovingFocus.mjs +55 -0
  442. package/dist/jsx/toolbar/useRovingFocus.mjs.map +1 -0
  443. package/dist/jsx/toolbar/useRovingFocus.native.js +113 -0
  444. package/dist/jsx/toolbar/useRovingFocus.native.js.map +1 -0
  445. package/dist/jsx/types.mjs.map +1 -1
  446. package/dist/jsx/types.native.js.map +1 -1
  447. package/package.json +28 -13
  448. package/src/RichEditor.native.tsx +451 -49
  449. package/src/RichEditor.stories.tsx +158 -0
  450. package/src/RichEditor.tsx +121 -7
  451. package/src/RichTextEditor/index.tsx +41 -3
  452. package/src/RichTextEditor/richTextEditor.spec.tsx +11 -4
  453. package/src/constants.ts +86 -24
  454. package/src/editor/BlockDragHandle.ts +30 -5
  455. package/src/editor/SlashCommands.tsx +228 -293
  456. package/src/editor/TentapEditor.native.tsx +68 -17
  457. package/src/editor/TiptapEditor.tsx +187 -22
  458. package/src/editor/blockAnchor.spec.ts +70 -0
  459. package/src/editor/blockAnchor.ts +42 -0
  460. package/src/editor/codeBlockPreview.spec.ts +144 -0
  461. package/src/editor/codeBlockPreview.ts +266 -0
  462. package/src/editor/css.d.ts +2 -0
  463. package/src/editor/details.spec.ts +48 -0
  464. package/src/editor/editorStyles.spec.ts +25 -0
  465. package/src/editor/editorStyles.ts +218 -34
  466. package/src/editor/emoji.spec.ts +88 -0
  467. package/src/editor/emoji.ts +147 -0
  468. package/src/editor/emojilib.d.ts +16 -0
  469. package/src/editor/lazyKatex.spec.ts +38 -0
  470. package/src/editor/lazyKatex.ts +68 -0
  471. package/src/editor/markdown.spec.ts +196 -0
  472. package/src/editor/markdown.ts +249 -0
  473. package/src/editor/mathematics.spec.ts +97 -0
  474. package/src/editor/mathematics.ts +179 -0
  475. package/src/editor/media.spec.ts +121 -0
  476. package/src/editor/media.ts +133 -0
  477. package/src/editor/mentions.spec.ts +41 -0
  478. package/src/editor/mentions.ts +55 -0
  479. package/src/editor/pasteCleanup.spec.ts +84 -0
  480. package/src/editor/pasteCleanup.ts +124 -0
  481. package/src/editor/suggestionPopup.spec.tsx +105 -0
  482. package/src/editor/suggestionPopup.tsx +414 -0
  483. package/src/editor/tiptapEditor.spec.tsx +15 -8
  484. package/src/exports.spec.ts +4 -2
  485. package/src/index.ts +7 -1
  486. package/src/integration.spec.tsx +38 -9
  487. package/src/preview.spec.ts +130 -0
  488. package/src/preview.ts +287 -0
  489. package/src/richEditor.spec.tsx +10 -3
  490. package/src/shared/t.ts +25 -0
  491. package/src/shared/url.ts +16 -0
  492. package/src/styled.ts +13 -6
  493. package/src/toolbar/BubbleToolbar.tsx +11 -8
  494. package/src/toolbar/CodeBlockBubble.tsx +66 -28
  495. package/src/toolbar/ColorPicker.native.tsx +126 -0
  496. package/src/toolbar/ColorPicker.tsx +23 -67
  497. package/src/toolbar/FixedToolbar.native.tsx +51 -51
  498. package/src/toolbar/FixedToolbar.tsx +54 -10
  499. package/src/toolbar/HeadingPicker.tsx +46 -38
  500. package/src/toolbar/ImageBubble.tsx +26 -44
  501. package/src/toolbar/ImageDialog.native.tsx +97 -0
  502. package/src/toolbar/ImageDialog.tsx +5 -4
  503. package/src/toolbar/LinkBubble.tsx +27 -64
  504. package/src/toolbar/LinkDialog.native.tsx +117 -0
  505. package/src/toolbar/LinkDialog.tsx +28 -24
  506. package/src/toolbar/ListPicker.tsx +47 -43
  507. package/src/toolbar/MathBubble.tsx +140 -0
  508. package/src/toolbar/MoreDropdown.tsx +53 -60
  509. package/src/toolbar/StatusBar.tsx +13 -8
  510. package/src/toolbar/TableBubble.tsx +82 -94
  511. package/src/toolbar/ToolbarButton.native.tsx +14 -4
  512. package/src/toolbar/ToolbarButton.tsx +98 -19
  513. package/src/toolbar/bubbleToolbar.spec.tsx +2 -1
  514. package/src/toolbar/fixedToolbar.spec.tsx +4 -2
  515. package/src/toolbar/icons.tsx +113 -323
  516. package/src/toolbar/shortcuts.ts +77 -24
  517. package/src/toolbar/toolbarPrimitives.spec.tsx +29 -1
  518. package/src/toolbar/toolbarSubComponents.spec.tsx +4 -2
  519. package/src/toolbar/useHorizontalScroll.spec.ts +67 -0
  520. package/src/toolbar/useHorizontalScroll.tsx +39 -12
  521. package/src/toolbar/useRovingFocus.spec.tsx +100 -0
  522. package/src/toolbar/useRovingFocus.ts +82 -0
  523. package/src/types.spec.ts +40 -1
  524. package/src/types.ts +28 -0
  525. package/types/RichEditor.d.ts +51 -0
  526. package/types/RichEditor.d.ts.map +1 -0
  527. package/types/RichEditor.native.d.ts +59 -0
  528. package/types/RichEditor.native.d.ts.map +1 -0
  529. package/types/RichTextEditor/index.d.ts +71 -0
  530. package/types/RichTextEditor/index.d.ts.map +1 -0
  531. package/types/constants.d.ts +49 -0
  532. package/types/constants.d.ts.map +1 -0
  533. package/types/context.d.ts +10 -0
  534. package/types/context.d.ts.map +1 -0
  535. package/types/editor/BlockDragHandle.d.ts +8 -0
  536. package/types/editor/BlockDragHandle.d.ts.map +1 -0
  537. package/types/editor/MarkdownPaste.d.ts +8 -0
  538. package/types/editor/MarkdownPaste.d.ts.map +1 -0
  539. package/types/editor/SlashCommands.d.ts +24 -0
  540. package/types/editor/SlashCommands.d.ts.map +1 -0
  541. package/types/editor/TentapEditor.native.d.ts +21 -0
  542. package/types/editor/TentapEditor.native.d.ts.map +1 -0
  543. package/types/editor/TiptapEditor.d.ts +24 -0
  544. package/types/editor/TiptapEditor.d.ts.map +1 -0
  545. package/types/editor/blockAnchor.d.ts +25 -0
  546. package/types/editor/blockAnchor.d.ts.map +1 -0
  547. package/types/editor/codeBlockPreview.d.ts +51 -0
  548. package/types/editor/codeBlockPreview.d.ts.map +1 -0
  549. package/types/editor/editorStyles.d.ts +25 -0
  550. package/types/editor/editorStyles.d.ts.map +1 -0
  551. package/types/editor/emoji.d.ts +45 -0
  552. package/types/editor/emoji.d.ts.map +1 -0
  553. package/types/editor/index.d.ts +11 -0
  554. package/types/editor/index.d.ts.map +1 -0
  555. package/types/editor/lazyKatex.d.ts +33 -0
  556. package/types/editor/lazyKatex.d.ts.map +1 -0
  557. package/types/editor/markdown.d.ts +24 -0
  558. package/types/editor/markdown.d.ts.map +1 -0
  559. package/types/editor/mathematics.d.ts +44 -0
  560. package/types/editor/mathematics.d.ts.map +1 -0
  561. package/types/editor/media.d.ts +32 -0
  562. package/types/editor/media.d.ts.map +1 -0
  563. package/types/editor/mentions.d.ts +15 -0
  564. package/types/editor/mentions.d.ts.map +1 -0
  565. package/types/editor/pasteCleanup.d.ts +24 -0
  566. package/types/editor/pasteCleanup.d.ts.map +1 -0
  567. package/types/editor/suggestionPopup.d.ts +113 -0
  568. package/types/editor/suggestionPopup.d.ts.map +1 -0
  569. package/types/editor/types.d.ts +80 -0
  570. package/types/editor/types.d.ts.map +1 -0
  571. package/types/editor/useEditorState.d.ts +19 -0
  572. package/types/editor/useEditorState.d.ts.map +1 -0
  573. package/types/index.d.ts +11 -0
  574. package/types/index.d.ts.map +1 -0
  575. package/types/preview.d.ts +44 -0
  576. package/types/preview.d.ts.map +1 -0
  577. package/types/shared/t.d.ts +10 -0
  578. package/types/shared/t.d.ts.map +1 -0
  579. package/types/shared/url.d.ts +9 -0
  580. package/types/shared/url.d.ts.map +1 -0
  581. package/types/styled.d.ts +40 -0
  582. package/types/styled.d.ts.map +1 -0
  583. package/types/toolbar/BubbleToolbar.d.ts +23 -0
  584. package/types/toolbar/BubbleToolbar.d.ts.map +1 -0
  585. package/types/toolbar/CodeBlockBubble.d.ts +10 -0
  586. package/types/toolbar/CodeBlockBubble.d.ts.map +1 -0
  587. package/types/toolbar/ColorPicker.d.ts +15 -0
  588. package/types/toolbar/ColorPicker.d.ts.map +1 -0
  589. package/types/toolbar/ColorPicker.native.d.ts +20 -0
  590. package/types/toolbar/ColorPicker.native.d.ts.map +1 -0
  591. package/types/toolbar/FixedToolbar.d.ts +32 -0
  592. package/types/toolbar/FixedToolbar.d.ts.map +1 -0
  593. package/types/toolbar/FixedToolbar.native.d.ts +30 -0
  594. package/types/toolbar/FixedToolbar.native.d.ts.map +1 -0
  595. package/types/toolbar/HeadingPicker.d.ts +14 -0
  596. package/types/toolbar/HeadingPicker.d.ts.map +1 -0
  597. package/types/toolbar/ImageBubble.d.ts +10 -0
  598. package/types/toolbar/ImageBubble.d.ts.map +1 -0
  599. package/types/toolbar/ImageDialog.d.ts +12 -0
  600. package/types/toolbar/ImageDialog.d.ts.map +1 -0
  601. package/types/toolbar/ImageDialog.native.d.ts +15 -0
  602. package/types/toolbar/ImageDialog.native.d.ts.map +1 -0
  603. package/types/toolbar/LinkBubble.d.ts +10 -0
  604. package/types/toolbar/LinkBubble.d.ts.map +1 -0
  605. package/types/toolbar/LinkDialog.d.ts +20 -0
  606. package/types/toolbar/LinkDialog.d.ts.map +1 -0
  607. package/types/toolbar/LinkDialog.native.d.ts +18 -0
  608. package/types/toolbar/LinkDialog.native.d.ts.map +1 -0
  609. package/types/toolbar/ListPicker.d.ts +14 -0
  610. package/types/toolbar/ListPicker.d.ts.map +1 -0
  611. package/types/toolbar/MathBubble.d.ts +11 -0
  612. package/types/toolbar/MathBubble.d.ts.map +1 -0
  613. package/types/toolbar/MoreDropdown.d.ts +13 -0
  614. package/types/toolbar/MoreDropdown.d.ts.map +1 -0
  615. package/types/toolbar/ResizeHandle.d.ts +11 -0
  616. package/types/toolbar/ResizeHandle.d.ts.map +1 -0
  617. package/types/toolbar/StatusBar.d.ts +11 -0
  618. package/types/toolbar/StatusBar.d.ts.map +1 -0
  619. package/types/toolbar/TableBubble.d.ts +10 -0
  620. package/types/toolbar/TableBubble.d.ts.map +1 -0
  621. package/types/toolbar/ToolbarButton.d.ts +35 -0
  622. package/types/toolbar/ToolbarButton.d.ts.map +1 -0
  623. package/types/toolbar/ToolbarButton.native.d.ts +30 -0
  624. package/types/toolbar/ToolbarButton.native.d.ts.map +1 -0
  625. package/types/toolbar/ToolbarGroup.d.ts +14 -0
  626. package/types/toolbar/ToolbarGroup.d.ts.map +1 -0
  627. package/types/toolbar/icons.d.ts +52 -0
  628. package/types/toolbar/icons.d.ts.map +1 -0
  629. package/types/toolbar/icons.native.d.ts +41 -0
  630. package/types/toolbar/icons.native.d.ts.map +1 -0
  631. package/types/toolbar/shortcuts.d.ts +34 -0
  632. package/types/toolbar/shortcuts.d.ts.map +1 -0
  633. package/types/toolbar/useHorizontalScroll.d.ts +43 -0
  634. package/types/toolbar/useHorizontalScroll.d.ts.map +1 -0
  635. package/types/toolbar/useRovingFocus.d.ts +10 -0
  636. package/types/toolbar/useRovingFocus.d.ts.map +1 -0
  637. package/types/types.d.ts +125 -0
  638. package/types/types.d.ts.map +1 -0
  639. package/dist/cjs/RichEditor.stories.cjs +0 -327
  640. package/dist/cjs/RichEditor.stories.native.js +0 -342
  641. package/dist/cjs/RichEditor.stories.native.js.map +0 -1
  642. package/dist/esm/RichEditor.stories.mjs +0 -291
  643. package/dist/esm/RichEditor.stories.mjs.map +0 -1
  644. package/dist/esm/RichEditor.stories.native.js +0 -303
  645. package/dist/esm/RichEditor.stories.native.js.map +0 -1
  646. package/dist/jsx/RichEditor.stories.mjs +0 -291
  647. package/dist/jsx/RichEditor.stories.mjs.map +0 -1
  648. package/dist/jsx/RichEditor.stories.native.js +0 -342
  649. package/dist/jsx/RichEditor.stories.native.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"names":["jsx","_jsx","jsxs","_jsxs","Extension","ReactRenderer","Suggestion","forwardRef","useCallback","useEffect","useImperativeHandle","useRef","useState","SLASH_ITEMS","title","description","icon","command","param","editor","range","chain","focus","deleteRange","setHeading","level","run","command2","command3","command4","toggleBulletList","command5","toggleOrderedList","command6","toggleTaskList","command7","toggleCodeBlock","command8","toggleBlockquote","command9","setHorizontalRule","command10","insertTable","rows","cols","withHeaderRow","command11","url","window","prompt","setImage","src","SlashCommandsList","ref","items","command12","selectedIndex","setSelectedIndex","listRef","_listRef_current","el","current","children","scrollIntoView","block","selectItem","index","item","onKeyDown","param2","event","key","i","length","style","styles","container","empty","map","itemSelected","onClick","onMouseEnter","type","textGroup","displayName","background","border","borderRadius","boxShadow","padding","maxHeight","overflowY","minWidth","display","alignItems","gap","width","textAlign","cursor","fontSize","lineHeight","height","justifyContent","fontWeight","flexShrink","flexDirection","color","SlashCommands","create","name","addOptions"],"sources":["../../../src/editor/SlashCommands.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["jsx","_jsx","Extension","Suggestion","CaretCircleDownIcon","CodeIcon","FunctionIcon","ImageIcon","ListBulletsIcon","ListChecksIcon","ListNumbersIcon","MathOperationsIcon","MinusIcon","QuotesIcon","SmileyIcon","TableIcon","TextHOneIcon","TextHThreeIcon","TextHTwoIcon","TextTIcon","TreeStructureIcon","t","createSuggestionRenderer","getSuggestionChrome","insertImageFromSlash","editor","range","_ref","_editor_storage_mediaUpload","handlers","storage","mediaUpload","onImageUpload","document","input","createElement","type","accept","onchange","_input_files","file","files","src","chain","focus","deleteRange","setImage","alt","name","replace","run","err","console","warn","click","url","window","prompt","ICON_SIZE","getSlashItems","id","title","description","icon","size","command","param","setParagraph","setHeading","level","toggleBulletList","toggleOrderedList","toggleTaskList","toggleCodeBlock","toggleBlockquote","setHorizontalRule","insertTable","rows","cols","withHeaderRow","setCodeBlock","language"],"sources":["../../../src/editor/SlashCommands.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -2,13 +2,15 @@ import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { forwardRef, useCallback, useEffect, useImperativeHandle, useRef } from "react";
3
3
  import { StyleSheet, useColorScheme } from "react-native";
4
4
  import { RichText, useEditorBridge, TenTapStartKit, UnderlineBridge, LinkBridge, PlaceholderBridge, ColorBridge, HighlightBridge, ImageBridge, TaskListBridge, darkEditorCss, darkEditorTheme } from "@10play/tentap-editor";
5
- import { View, useThemeName } from "tamagui";
5
+ import { View, useTheme, useThemeName } from "tamagui";
6
6
  import { RichEditorContext } from "../context.native.js";
7
+ import { PALETTE_THEME_TOKENS } from "../constants.native.js";
8
+ import { t } from "../shared/t.native.js";
7
9
  import { getEditorStateFromBridge } from "./useEditorState.native.js";
8
10
  function useNativeEditorDarkMode() {
9
11
  var themeName = useThemeName();
10
12
  var osScheme = useColorScheme();
11
- if (themeName != null && `${themeName}` !== "") {
13
+ if (themeName) {
12
14
  return String(themeName).startsWith("dark");
13
15
  }
14
16
  return osScheme === "dark";
@@ -17,16 +19,18 @@ var TentapEditor = /* @__PURE__ */forwardRef(function (param, ref) {
17
19
  var {
18
20
  initialContent = "",
19
21
  initialJSON,
20
- placeholder = "Start writing...",
22
+ placeholder: placeholderProp,
21
23
  editable = true,
22
24
  autoFocus = false,
23
25
  onChange,
24
26
  onStateChange,
25
27
  minHeight = 150,
26
28
  maxHeight,
29
+ fill = false,
27
30
  hasError: _hasError
28
31
  } = param;
29
32
  var ctx = RichEditorContext.useStyledContext();
33
+ var placeholder = placeholderProp !== null && placeholderProp !== void 0 ? placeholderProp : t("Start writing...");
30
34
  var isDarkMode = useNativeEditorDarkMode();
31
35
  var cachedHtml = useRef("");
32
36
  var cachedJson = useRef(null);
@@ -35,7 +39,9 @@ var TentapEditor = /* @__PURE__ */forwardRef(function (param, ref) {
35
39
  placeholder
36
40
  })],
37
41
  theme: isDarkMode ? darkEditorTheme : void 0,
38
- initialContent: initialJSON ? JSON.stringify(initialJSON) : initialContent,
42
+ // Tentap accepts HTML string OR a ProseMirror JSON object. Never
43
+ // JSON.stringify the object — that loads as broken HTML and wipes the doc.
44
+ initialContent: initialJSON !== null && initialJSON !== void 0 ? initialJSON : initialContent,
39
45
  autofocus: autoFocus,
40
46
  editable,
41
47
  onChange: async function onChange1() {
@@ -60,6 +66,20 @@ var TentapEditor = /* @__PURE__ */forwardRef(function (param, ref) {
60
66
  return clearTimeout(id);
61
67
  };
62
68
  }, [editor, isDarkMode]);
69
+ var theme = useTheme();
70
+ useEffect(function () {
71
+ var id = setTimeout(function () {
72
+ var decls = PALETTE_THEME_TOKENS.map(function (token) {
73
+ var _theme_token;
74
+ var value = (_theme_token = theme[token]) === null || _theme_token === void 0 ? void 0 : _theme_token.val;
75
+ return value ? `--${token}: ${value};` : "";
76
+ }).join(" ");
77
+ editor.injectCSS(`:root { ${decls} }`, "multiplatform-tentap-palette");
78
+ }, 150);
79
+ return function () {
80
+ return clearTimeout(id);
81
+ };
82
+ }, [editor, theme]);
63
83
  useEffect(function () {
64
84
  var unsubscribe = editor._subscribeToEditorStateUpdate(function (state) {
65
85
  var editorState = getEditorStateFromBridge(state);
@@ -148,13 +168,21 @@ var TentapEditor = /* @__PURE__ */forwardRef(function (param, ref) {
148
168
  case "alignJustify":
149
169
  break;
150
170
  case "textColor":
151
- if (payload === null || payload === void 0 ? void 0 : payload.color) {
152
- editor.setColor(payload.color);
171
+ if (payload && "color" in payload) {
172
+ if (typeof payload.color === "string" && payload.color.length > 0) {
173
+ editor.setColor(payload.color);
174
+ } else {
175
+ editor.unsetColor();
176
+ }
153
177
  }
154
178
  break;
155
179
  case "highlight":
156
- if (payload === null || payload === void 0 ? void 0 : payload.color) {
157
- editor.setHighlight(payload.color);
180
+ if (payload && "color" in payload) {
181
+ if (typeof payload.color === "string" && payload.color.length > 0) {
182
+ editor.setHighlight(payload.color);
183
+ } else {
184
+ editor.unsetHighlight();
185
+ }
158
186
  }
159
187
  break;
160
188
  /** 10Tap does not have a horizontal rule bridge extension */
@@ -181,7 +209,7 @@ var TentapEditor = /* @__PURE__ */forwardRef(function (param, ref) {
181
209
  return editor.setContent(html);
182
210
  },
183
211
  setJSON: function setJSON(json) {
184
- return editor.setContent(JSON.stringify(json));
212
+ return editor.setContent(json);
185
213
  },
186
214
  focus: function focus() {
187
215
  return editor.focus();
@@ -192,14 +220,15 @@ var TentapEditor = /* @__PURE__ */forwardRef(function (param, ref) {
192
220
  };
193
221
  }, [editor, executeCommand]);
194
222
  return /* @__PURE__ */_jsx(View, {
195
- minHeight,
196
- maxHeight,
197
- backgroundColor: ctx.disabled ? "$color3" : "$color2",
223
+ flex: fill ? 1 : void 0,
224
+ minHeight: fill ? void 0 : minHeight,
225
+ maxHeight: fill ? void 0 : maxHeight,
226
+ backgroundColor: ctx.disabled ? "$color3" : fill ? "$background" : "$color2",
198
227
  overflow: "hidden",
199
228
  opacity: ctx.disabled ? 0.5 : 1,
200
229
  children: /* @__PURE__ */_jsx(RichText, {
201
230
  editor,
202
- style: styles.editor
231
+ style: fill ? styles.editorFill : styles.editor
203
232
  })
204
233
  });
205
234
  });
@@ -208,6 +237,9 @@ var styles = StyleSheet.create({
208
237
  editor: {
209
238
  flex: 1,
210
239
  minHeight: 150
240
+ },
241
+ editorFill: {
242
+ flex: 1
211
243
  }
212
244
  });
213
245
  export { TentapEditor };
@@ -1 +1 @@
1
- {"version":3,"names":["jsx","_jsx","forwardRef","useCallback","useEffect","useImperativeHandle","useRef","StyleSheet","useColorScheme","RichText","useEditorBridge","TenTapStartKit","UnderlineBridge","LinkBridge","PlaceholderBridge","ColorBridge","HighlightBridge","ImageBridge","TaskListBridge","darkEditorCss","darkEditorTheme","View","useThemeName","RichEditorContext","getEditorStateFromBridge","useNativeEditorDarkMode","themeName","osScheme","String","startsWith","TentapEditor","param","ref","initialContent","initialJSON","placeholder","editable","autoFocus","onChange","onStateChange","minHeight","maxHeight","hasError","_hasError","ctx","useStyledContext","isDarkMode","cachedHtml","cachedJson","editor","bridgeExtensions","configureExtension","theme","JSON","stringify","autofocus","onChange1","html","getHTML","json","getJSON","current","unused","id","setTimeout","injectCSS","clearTimeout","unsubscribe","_subscribeToEditorStateUpdate","state","editorState","executeCommand","command","payload","toggleBold","toggleItalic","toggleUnderline","toggleStrike","toggleCode","toggleHeading","toggleBulletList","toggleOrderedList","toggleTaskList","src","setImage","toggleBlockquote","href","setLink","undo","redo","color","setColor","setHighlight","getState","getEditorState","setHTML","setContent","setJSON","focus","blur","backgroundColor","disabled","overflow","opacity","children","style","styles","displayName","create","flex"],"sources":["../../../src/editor/TentapEditor.native.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["jsx","_jsx","forwardRef","useCallback","useEffect","useImperativeHandle","useRef","StyleSheet","useColorScheme","RichText","useEditorBridge","TenTapStartKit","UnderlineBridge","LinkBridge","PlaceholderBridge","ColorBridge","HighlightBridge","ImageBridge","TaskListBridge","darkEditorCss","darkEditorTheme","View","useTheme","useThemeName","RichEditorContext","PALETTE_THEME_TOKENS","t","getEditorStateFromBridge","useNativeEditorDarkMode","themeName","osScheme","String","startsWith","TentapEditor","param","ref","initialContent","initialJSON","placeholder","placeholderProp","editable","autoFocus","onChange","onStateChange","minHeight","maxHeight","fill","hasError","_hasError","ctx","useStyledContext","isDarkMode","cachedHtml","cachedJson","editor","bridgeExtensions","configureExtension","theme","autofocus","onChange1","html","getHTML","json","getJSON","current","unused","id","setTimeout","injectCSS","clearTimeout","decls","map","token","_theme_token","value","val","join","unsubscribe","_subscribeToEditorStateUpdate","state","editorState","executeCommand","command","payload","toggleBold","toggleItalic","toggleUnderline","toggleStrike","toggleCode","toggleHeading","toggleBulletList","toggleOrderedList","toggleTaskList","src","setImage","toggleBlockquote","href","setLink","undo","redo","color","length","setColor","unsetColor","setHighlight","unsetHighlight","getState","getEditorState","setHTML","setContent","setJSON","focus","blur","flex","backgroundColor","disabled","overflow","opacity","children","style","styles","editorFill","displayName","create"],"sources":["../../../src/editor/TentapEditor.native.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import { forwardRef, memo, useCallback, useEffect, useImperativeHandle, useMemo, useRef, useState } from "react";
1
+ import { forwardRef, memo, useCallback, useEffect, useId, useImperativeHandle, useMemo, useRef, useState } from "react";
2
2
  import { useEditor, EditorContent } from "@tiptap/react";
3
3
  import { Extension } from "@tiptap/core";
4
4
  import StarterKit from "@tiptap/starter-kit";
@@ -12,36 +12,43 @@ import { Superscript } from "@tiptap/extension-superscript";
12
12
  import TaskList from "@tiptap/extension-task-list";
13
13
  import TaskItem from "@tiptap/extension-task-item";
14
14
  import Image from "@tiptap/extension-image";
15
- import CodeBlockLowlight from "@tiptap/extension-code-block-lowlight";
16
15
  import Typography from "@tiptap/extension-typography";
17
16
  import CharacterCount from "@tiptap/extension-character-count";
17
+ import { Details, DetailsContent, DetailsSummary } from "@tiptap/extension-details";
18
18
  import { Table } from "@tiptap/extension-table";
19
19
  import { TableRow } from "@tiptap/extension-table-row";
20
20
  import { TableHeader } from "@tiptap/extension-table-header";
21
21
  import { TableCell } from "@tiptap/extension-table-cell";
22
22
  import { common, createLowlight } from "lowlight";
23
- import TurndownService from "turndown";
24
- import { marked } from "marked";
25
- import { View, styled } from "tamagui";
23
+ import { View, getTokens, styled, useTheme, useThemeName } from "tamagui";
26
24
  import { isWeb } from "@tamagui/constants";
25
+ import { menuRowFrame, useResolvedKnobs } from "@multiplatform.one/theme";
26
+ import { clampRadiusForLargeComponent } from "@multiplatform.one/forms";
27
27
  import { defaultEditorState } from "../types.mjs";
28
28
  import { RichEditorContext } from "../context.mjs";
29
+ import { t } from "../shared/t.mjs";
29
30
  import { getEditorCSS } from "./editorStyles.mjs";
30
31
  import { SlashCommands } from "./SlashCommands.mjs";
31
32
  import { MarkdownPaste } from "./MarkdownPaste.mjs";
32
33
  import { BlockDragHandle } from "./BlockDragHandle.mjs";
34
+ import { MediaUpload } from "./media.mjs";
35
+ import { createMentionExtension } from "./mentions.mjs";
36
+ import { EmojiSuggestion } from "./emoji.mjs";
37
+ import { InlineMath } from "./mathematics.mjs";
38
+ import { CodeBlockWithPreview, PreviewChromeStore, setPreviewChrome } from "./codeBlockPreview.mjs";
39
+ import { htmlToMarkdown, markdownToHtml } from "./markdown.mjs";
40
+ import { cleanPastedHtml } from "./pasteCleanup.mjs";
41
+ import { SuggestionChromeStore, fallbackSuggestionChrome } from "./suggestionPopup.mjs";
33
42
  import { getEditorStateFromTiptap } from "./useEditorState.mjs";
34
43
  import { BubbleToolbar } from "../toolbar/BubbleToolbar.mjs";
35
44
  import { LinkBubble } from "../toolbar/LinkBubble.mjs";
36
45
  import { CodeBlockBubble } from "../toolbar/CodeBlockBubble.mjs";
37
46
  import { ImageBubble } from "../toolbar/ImageBubble.mjs";
38
47
  import { TableBubble } from "../toolbar/TableBubble.mjs";
48
+ import { MathBubble } from "../toolbar/MathBubble.mjs";
39
49
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
40
50
  const lowlight = createLowlight(common);
41
- const turndownService = new TurndownService({
42
- headingStyle: "atx",
43
- codeBlockStyle: "fenced"
44
- });
51
+ const MOTION_MS = 120;
45
52
  const CodeBlockTabIndent = Extension.create({
46
53
  name: "codeBlockTabIndent",
47
54
  addKeyboardShortcuts() {
@@ -175,7 +182,7 @@ const EditorContainer = styled(View, {
175
182
  const TiptapEditor = memo(forwardRef(({
176
183
  initialContent = "",
177
184
  initialJSON,
178
- placeholder = "Start writing...",
185
+ placeholder: placeholderProp,
179
186
  editable = true,
180
187
  autoFocus = false,
181
188
  onChange,
@@ -188,9 +195,14 @@ const TiptapEditor = memo(forwardRef(({
188
195
  showBubbleToolbar = false,
189
196
  bodyFontFamily,
190
197
  headingFontFamily,
191
- editorMode = "richtext"
198
+ editorMode = "richtext",
199
+ fullscreen = false,
200
+ onImageUpload,
201
+ onFileUpload,
202
+ mentions
192
203
  }, ref) => {
193
204
  const _ctx = RichEditorContext.useStyledContext();
205
+ const placeholder = placeholderProp ?? t("Start writing...");
194
206
  const internalRef = useRef(null);
195
207
  const stateRafRef = useRef(0);
196
208
  const changeRafRef = useRef(0);
@@ -198,6 +210,19 @@ const TiptapEditor = memo(forwardRef(({
198
210
  const onChangeRef = useRef(onChange);
199
211
  const [markdownSource, setMarkdownSource] = useState("");
200
212
  const prevModeRef = useRef(editorMode);
213
+ const theme = useTheme();
214
+ const themeName = useThemeName();
215
+ const {
216
+ knobProps
217
+ } = useResolvedKnobs();
218
+ const motionMs = knobProps.transition !== void 0 ? MOTION_MS : 0;
219
+ const scopeClass = `rt-scope-${useId().replace(/[^a-zA-Z0-9-]/g, "")}`;
220
+ const mentionsRef = useRef(mentions);
221
+ mentionsRef.current = mentions;
222
+ const [mentionExtension] = useState(() => mentions ? createMentionExtension({
223
+ trigger: mentions.trigger,
224
+ items: query => mentionsRef.current?.items(query) ?? []
225
+ }) : null);
201
226
  useEffect(() => {
202
227
  onStateChangeRef.current = onStateChange;
203
228
  onChangeRef.current = onChange;
@@ -230,11 +255,26 @@ const TiptapEditor = memo(forwardRef(({
230
255
  },
231
256
  codeBlock: false,
232
257
  hardBreak: false
233
- }), CodeBlockLowlight.configure({
258
+ }), CodeBlockWithPreview.configure({
234
259
  lowlight,
235
260
  exitOnTripleEnter: true,
236
261
  exitOnArrowDown: false
237
- }), ParagraphEnterKeys, CodeBlockTabIndent, ListItemKeys, Typography, CharacterCount, SlashCommands, MarkdownPaste, BlockDragHandle, Table.configure({
262
+ }), ParagraphEnterKeys, CodeBlockTabIndent, ListItemKeys,
263
+ // superscriptTwo/Three would mangle typed TeX (`$E=mc^2$` became
264
+ // `E=mc²` before the math input rule ran) — off, rest stays.
265
+ Typography.configure({
266
+ superscriptTwo: false,
267
+ superscriptThree: false
268
+ }), CharacterCount, SlashCommands, MarkdownPaste, MediaUpload, SuggestionChromeStore, PreviewChromeStore, EmojiSuggestion, InlineMath,
269
+ // Collapsible sections (GitLab <details> parity). persist: true
270
+ // is the extension's supported mode: its node view re-syncs the
271
+ // open state from node.attrs on every update, so ephemeral
272
+ // (persist: false) toggles get reverted by the next transaction.
273
+ // The open state therefore lives in the doc and serializes as
274
+ // `<details open>` — valid GitLab markdown.
275
+ Details.configure({
276
+ persist: true
277
+ }), DetailsSummary, DetailsContent, ...(mentionExtension ? [mentionExtension] : []), BlockDragHandle, Table.configure({
238
278
  resizable: true
239
279
  }), TableRow, TableHeader, TableCell, Placeholder.configure({
240
280
  placeholder
@@ -252,6 +292,17 @@ const TiptapEditor = memo(forwardRef(({
252
292
  content: initialJSON || initialContent,
253
293
  editable,
254
294
  autofocus: autoFocus,
295
+ // No htmlFor target exists for the contenteditable — name it directly
296
+ // (axe aria-input-field-name); placeholder doubles as the name.
297
+ editorProps: {
298
+ attributes: {
299
+ role: "textbox",
300
+ "aria-multiline": "true",
301
+ "aria-label": placeholder || t("Rich text editor")
302
+ },
303
+ // Strip Google Docs / Word clipboard junk before ProseMirror parses
304
+ transformPastedHTML: cleanPastedHtml
305
+ },
255
306
  injectCSS: false,
256
307
  immediatelyRender: false,
257
308
  shouldRerenderOnTransaction: false,
@@ -276,26 +327,56 @@ const TiptapEditor = memo(forwardRef(({
276
327
  onFocus: () => onFocus?.(),
277
328
  onBlur: () => onBlur?.()
278
329
  });
330
+ useEffect(() => {
331
+ if (!editor) return;
332
+ editor.storage.mediaUpload.handlers = {
333
+ onImageUpload,
334
+ onFileUpload
335
+ };
336
+ }, [editor, onImageUpload, onFileUpload]);
337
+ useEffect(() => {
338
+ if (!editor) return;
339
+ const radiusToken = clampRadiusForLargeComponent(knobProps.borderRadius.borderRadius, 4);
340
+ const radiusValue = typeof radiusToken === "number" ? radiusToken : getTokens().radius?.[radiusToken]?.val ?? fallbackSuggestionChrome.radius;
341
+ const rowPadToken = menuRowFrame.paddingHorizontal;
342
+ const rowPaddingX = getTokens().space?.[rowPadToken]?.val ?? fallbackSuggestionChrome.rowPaddingX;
343
+ const shadowMain = theme.shadow2?.val;
344
+ const shadowSoft = theme.shadow1?.val;
345
+ const chrome = {
346
+ background: theme.background?.val ?? fallbackSuggestionChrome.background,
347
+ borderColor: theme.borderColor?.val ?? fallbackSuggestionChrome.borderColor,
348
+ activeBackground: theme.color4?.val ?? fallbackSuggestionChrome.activeBackground,
349
+ iconTileBackground: theme.color3?.val ?? fallbackSuggestionChrome.iconTileBackground,
350
+ titleColor: theme.color12?.val ?? fallbackSuggestionChrome.titleColor,
351
+ descriptionColor: theme.color11?.val ?? fallbackSuggestionChrome.descriptionColor,
352
+ radius: typeof radiusValue === "number" ? radiusValue : fallbackSuggestionChrome.radius,
353
+ shadow: shadowMain && shadowSoft ? `0px 8px 28px ${shadowMain}, 0px 2px 6px ${shadowSoft}` : fallbackSuggestionChrome.shadow,
354
+ motionMs,
355
+ rowPaddingX: typeof rowPaddingX === "number" ? rowPaddingX : fallbackSuggestionChrome.rowPaddingX
356
+ };
357
+ editor.storage.suggestionChrome.value = chrome;
358
+ }, [editor, theme, knobProps.borderRadius.borderRadius, motionMs]);
359
+ useEffect(() => {
360
+ if (!editor) return;
361
+ setPreviewChrome(editor, {
362
+ scheme: String(themeName).startsWith("dark") ? "dark" : "light",
363
+ fontFamily: bodyFontFamily
364
+ });
365
+ }, [editor, themeName, bodyFontFamily]);
279
366
  useEffect(() => {
280
367
  if (!editor) return;
281
368
  if (prevModeRef.current === editorMode) return;
282
369
  prevModeRef.current = editorMode;
283
370
  if (editorMode === "markdown") {
284
- setMarkdownSource(turndownService.turndown(editor.getHTML()));
371
+ setMarkdownSource(htmlToMarkdown(editor.getHTML()));
285
372
  } else {
286
- const html = marked.parse(markdownSource, {
287
- async: false
288
- });
289
- editor.commands.setContent(html);
373
+ editor.commands.setContent(markdownToHtml(markdownSource));
290
374
  }
291
375
  }, [editorMode, editor, markdownSource]);
292
376
  const handleMarkdownChange = useCallback(e => {
293
377
  const md = e.target.value;
294
378
  setMarkdownSource(md);
295
- const html = marked.parse(md, {
296
- async: false
297
- });
298
- onChangeRef.current?.(html, null);
379
+ onChangeRef.current?.(markdownToHtml(md), null);
299
380
  }, []);
300
381
  const executeCommand = useCallback((command, payload) => {
301
382
  if (!editor) return;
@@ -380,11 +461,24 @@ const TiptapEditor = memo(forwardRef(({
380
461
  break;
381
462
  case "link":
382
463
  if (payload?.href) {
383
- chain.setLink({
384
- href: payload.href
385
- }).run();
464
+ if (editor.state.selection.empty && !editor.isActive("link")) {
465
+ chain.insertContent({
466
+ type: "text",
467
+ text: payload.text ?? payload.href,
468
+ marks: [{
469
+ type: "link",
470
+ attrs: {
471
+ href: payload.href
472
+ }
473
+ }]
474
+ }).run();
475
+ } else {
476
+ chain.extendMarkRange("link").setLink({
477
+ href: payload.href
478
+ }).run();
479
+ }
386
480
  } else {
387
- chain.unsetLink().run();
481
+ chain.extendMarkRange("link").unsetLink().run();
388
482
  }
389
483
  break;
390
484
  case "undo":
@@ -482,20 +576,25 @@ const TiptapEditor = memo(forwardRef(({
482
576
  minHeight,
483
577
  maxHeight,
484
578
  bodyFontFamily,
485
- headingFontFamily
486
- }), [minHeight, maxHeight, bodyFontFamily, headingFontFamily]);
579
+ headingFontFamily,
580
+ fullscreen,
581
+ motionMs,
582
+ scopeClass
583
+ }), [minHeight, maxHeight, bodyFontFamily, headingFontFamily, fullscreen, motionMs, scopeClass]);
487
584
  if (editorMode === "markdown") {
488
585
  return /* @__PURE__ */jsx(EditorContainer, {
489
- minHeight,
490
- maxHeight,
586
+ minHeight: fullscreen ? 0 : minHeight,
587
+ maxHeight: fullscreen ? void 0 : maxHeight,
491
588
  overflow: "hidden",
492
589
  children: /* @__PURE__ */jsx("textarea", {
493
590
  value: markdownSource,
494
591
  onChange: handleMarkdownChange,
592
+ "aria-label": t("Markdown source"),
495
593
  style: {
496
594
  width: "100%",
497
- minHeight,
498
- maxHeight: maxHeight || void 0,
595
+ minHeight: fullscreen ? 0 : minHeight,
596
+ maxHeight: fullscreen ? void 0 : maxHeight || void 0,
597
+ flex: fullscreen ? "1 1 0%" : void 0,
499
598
  padding: "12px 12px 12px 16px",
500
599
  border: "none",
501
600
  outline: "none",
@@ -513,8 +612,9 @@ const TiptapEditor = memo(forwardRef(({
513
612
  });
514
613
  }
515
614
  return /* @__PURE__ */jsxs(EditorContainer, {
516
- minHeight,
517
- maxHeight,
615
+ className: scopeClass,
616
+ minHeight: fullscreen ? 0 : minHeight,
617
+ maxHeight: fullscreen ? void 0 : maxHeight,
518
618
  overflow: "hidden",
519
619
  children: [isWeb && /* @__PURE__ */jsx("style", {
520
620
  children: editorCSS
@@ -532,8 +632,15 @@ const TiptapEditor = memo(forwardRef(({
532
632
  }), /* @__PURE__ */jsx(TableBubble, {
533
633
  editor
534
634
  })]
535
- }), /* @__PURE__ */jsx(EditorContent, {
635
+ }), editable && /* @__PURE__ */jsx(MathBubble, {
536
636
  editor
637
+ }), /* @__PURE__ */jsx(EditorContent, {
638
+ editor,
639
+ style: fullscreen ? {
640
+ flex: "1 1 0%",
641
+ minHeight: 0,
642
+ overflowY: "auto"
643
+ } : void 0
537
644
  })]
538
645
  });
539
646
  }));