@multiplatform.one/rich-text 6.0.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 (450) hide show
  1. package/LICENSE +201 -0
  2. package/dist/cjs/RichEditor.cjs +132 -0
  3. package/dist/cjs/RichEditor.native.js +120 -0
  4. package/dist/cjs/RichEditor.native.js.map +1 -0
  5. package/dist/cjs/RichEditor.stories.cjs +327 -0
  6. package/dist/cjs/RichEditor.stories.native.js +342 -0
  7. package/dist/cjs/RichEditor.stories.native.js.map +1 -0
  8. package/dist/cjs/RichTextEditor/index.cjs +148 -0
  9. package/dist/cjs/RichTextEditor/index.native.js +160 -0
  10. package/dist/cjs/RichTextEditor/index.native.js.map +1 -0
  11. package/dist/cjs/constants.cjs +135 -0
  12. package/dist/cjs/constants.native.js +138 -0
  13. package/dist/cjs/constants.native.js.map +1 -0
  14. package/dist/cjs/context.cjs +33 -0
  15. package/dist/cjs/context.native.js +36 -0
  16. package/dist/cjs/context.native.js.map +1 -0
  17. package/dist/cjs/editor/BlockDragHandle.cjs +137 -0
  18. package/dist/cjs/editor/BlockDragHandle.native.js +142 -0
  19. package/dist/cjs/editor/BlockDragHandle.native.js.map +1 -0
  20. package/dist/cjs/editor/MarkdownPaste.cjs +65 -0
  21. package/dist/cjs/editor/MarkdownPaste.native.js +68 -0
  22. package/dist/cjs/editor/MarkdownPaste.native.js.map +1 -0
  23. package/dist/cjs/editor/SlashCommands.cjs +369 -0
  24. package/dist/cjs/editor/SlashCommands.native.js +424 -0
  25. package/dist/cjs/editor/SlashCommands.native.js.map +1 -0
  26. package/dist/cjs/editor/TentapEditor.native.js +242 -0
  27. package/dist/cjs/editor/TentapEditor.native.js.map +1 -0
  28. package/dist/cjs/editor/TiptapEditor.cjs +578 -0
  29. package/dist/cjs/editor/TiptapEditor.native.js +661 -0
  30. package/dist/cjs/editor/TiptapEditor.native.js.map +1 -0
  31. package/dist/cjs/editor/editorStyles.cjs +272 -0
  32. package/dist/cjs/editor/editorStyles.native.js +276 -0
  33. package/dist/cjs/editor/editorStyles.native.js.map +1 -0
  34. package/dist/cjs/editor/index.cjs +33 -0
  35. package/dist/cjs/editor/index.native.js +36 -0
  36. package/dist/cjs/editor/index.native.js.map +1 -0
  37. package/dist/cjs/editor/types.cjs +54 -0
  38. package/dist/cjs/editor/types.native.js +57 -0
  39. package/dist/cjs/editor/types.native.js.map +1 -0
  40. package/dist/cjs/editor/useEditorState.cjs +129 -0
  41. package/dist/cjs/editor/useEditorState.native.js +135 -0
  42. package/dist/cjs/editor/useEditorState.native.js.map +1 -0
  43. package/dist/cjs/index.cjs +30 -0
  44. package/dist/cjs/index.native.js +33 -0
  45. package/dist/cjs/index.native.js.map +1 -0
  46. package/dist/cjs/styled.cjs +173 -0
  47. package/dist/cjs/styled.native.js +185 -0
  48. package/dist/cjs/styled.native.js.map +1 -0
  49. package/dist/cjs/toolbar/BubbleToolbar.cjs +130 -0
  50. package/dist/cjs/toolbar/BubbleToolbar.native.js +159 -0
  51. package/dist/cjs/toolbar/BubbleToolbar.native.js.map +1 -0
  52. package/dist/cjs/toolbar/CodeBlockBubble.cjs +211 -0
  53. package/dist/cjs/toolbar/CodeBlockBubble.native.js +228 -0
  54. package/dist/cjs/toolbar/CodeBlockBubble.native.js.map +1 -0
  55. package/dist/cjs/toolbar/ColorPicker.cjs +217 -0
  56. package/dist/cjs/toolbar/ColorPicker.native.js +234 -0
  57. package/dist/cjs/toolbar/ColorPicker.native.js.map +1 -0
  58. package/dist/cjs/toolbar/FixedToolbar.cjs +221 -0
  59. package/dist/cjs/toolbar/FixedToolbar.native.js +322 -0
  60. package/dist/cjs/toolbar/FixedToolbar.native.js.map +1 -0
  61. package/dist/cjs/toolbar/HeadingPicker.cjs +158 -0
  62. package/dist/cjs/toolbar/HeadingPicker.native.js +167 -0
  63. package/dist/cjs/toolbar/HeadingPicker.native.js.map +1 -0
  64. package/dist/cjs/toolbar/ImageBubble.cjs +156 -0
  65. package/dist/cjs/toolbar/ImageBubble.native.js +165 -0
  66. package/dist/cjs/toolbar/ImageBubble.native.js.map +1 -0
  67. package/dist/cjs/toolbar/ImageDialog.cjs +115 -0
  68. package/dist/cjs/toolbar/ImageDialog.native.js +122 -0
  69. package/dist/cjs/toolbar/ImageDialog.native.js.map +1 -0
  70. package/dist/cjs/toolbar/LinkBubble.cjs +195 -0
  71. package/dist/cjs/toolbar/LinkBubble.native.js +204 -0
  72. package/dist/cjs/toolbar/LinkBubble.native.js.map +1 -0
  73. package/dist/cjs/toolbar/LinkDialog.cjs +138 -0
  74. package/dist/cjs/toolbar/LinkDialog.native.js +146 -0
  75. package/dist/cjs/toolbar/LinkDialog.native.js.map +1 -0
  76. package/dist/cjs/toolbar/ListPicker.cjs +117 -0
  77. package/dist/cjs/toolbar/ListPicker.native.js +124 -0
  78. package/dist/cjs/toolbar/ListPicker.native.js.map +1 -0
  79. package/dist/cjs/toolbar/MoreDropdown.cjs +201 -0
  80. package/dist/cjs/toolbar/MoreDropdown.native.js +224 -0
  81. package/dist/cjs/toolbar/MoreDropdown.native.js.map +1 -0
  82. package/dist/cjs/toolbar/ResizeHandle.cjs +105 -0
  83. package/dist/cjs/toolbar/ResizeHandle.native.js +109 -0
  84. package/dist/cjs/toolbar/ResizeHandle.native.js.map +1 -0
  85. package/dist/cjs/toolbar/StatusBar.cjs +91 -0
  86. package/dist/cjs/toolbar/StatusBar.native.js +100 -0
  87. package/dist/cjs/toolbar/StatusBar.native.js.map +1 -0
  88. package/dist/cjs/toolbar/TableBubble.cjs +232 -0
  89. package/dist/cjs/toolbar/TableBubble.native.js +273 -0
  90. package/dist/cjs/toolbar/TableBubble.native.js.map +1 -0
  91. package/dist/cjs/toolbar/ToolbarButton.cjs +105 -0
  92. package/dist/cjs/toolbar/ToolbarButton.native.js +97 -0
  93. package/dist/cjs/toolbar/ToolbarButton.native.js.map +1 -0
  94. package/dist/cjs/toolbar/ToolbarGroup.cjs +41 -0
  95. package/dist/cjs/toolbar/ToolbarGroup.native.js +45 -0
  96. package/dist/cjs/toolbar/ToolbarGroup.native.js.map +1 -0
  97. package/dist/cjs/toolbar/icons.cjs +601 -0
  98. package/dist/cjs/toolbar/icons.native.js +165 -0
  99. package/dist/cjs/toolbar/icons.native.js.map +1 -0
  100. package/dist/cjs/toolbar/shortcuts.cjs +62 -0
  101. package/dist/cjs/toolbar/shortcuts.native.js +66 -0
  102. package/dist/cjs/toolbar/shortcuts.native.js.map +1 -0
  103. package/dist/cjs/toolbar/useHorizontalScroll.cjs +250 -0
  104. package/dist/cjs/toolbar/useHorizontalScroll.native.js +260 -0
  105. package/dist/cjs/toolbar/useHorizontalScroll.native.js.map +1 -0
  106. package/dist/cjs/types.cjs +56 -0
  107. package/dist/cjs/types.native.js +59 -0
  108. package/dist/cjs/types.native.js.map +1 -0
  109. package/dist/esm/RichEditor.mjs +107 -0
  110. package/dist/esm/RichEditor.mjs.map +1 -0
  111. package/dist/esm/RichEditor.native.js +92 -0
  112. package/dist/esm/RichEditor.native.js.map +1 -0
  113. package/dist/esm/RichEditor.stories.mjs +291 -0
  114. package/dist/esm/RichEditor.stories.mjs.map +1 -0
  115. package/dist/esm/RichEditor.stories.native.js +303 -0
  116. package/dist/esm/RichEditor.stories.native.js.map +1 -0
  117. package/dist/esm/RichTextEditor/index.mjs +123 -0
  118. package/dist/esm/RichTextEditor/index.mjs.map +1 -0
  119. package/dist/esm/RichTextEditor/index.native.js +132 -0
  120. package/dist/esm/RichTextEditor/index.native.js.map +1 -0
  121. package/dist/esm/constants.mjs +108 -0
  122. package/dist/esm/constants.mjs.map +1 -0
  123. package/dist/esm/constants.native.js +108 -0
  124. package/dist/esm/constants.native.js.map +1 -0
  125. package/dist/esm/context.mjs +8 -0
  126. package/dist/esm/context.mjs.map +1 -0
  127. package/dist/esm/context.native.js +8 -0
  128. package/dist/esm/context.native.js.map +1 -0
  129. package/dist/esm/editor/BlockDragHandle.mjs +112 -0
  130. package/dist/esm/editor/BlockDragHandle.mjs.map +1 -0
  131. package/dist/esm/editor/BlockDragHandle.native.js +114 -0
  132. package/dist/esm/editor/BlockDragHandle.native.js.map +1 -0
  133. package/dist/esm/editor/MarkdownPaste.mjs +40 -0
  134. package/dist/esm/editor/MarkdownPaste.mjs.map +1 -0
  135. package/dist/esm/editor/MarkdownPaste.native.js +40 -0
  136. package/dist/esm/editor/MarkdownPaste.native.js.map +1 -0
  137. package/dist/esm/editor/SlashCommands.mjs +333 -0
  138. package/dist/esm/editor/SlashCommands.mjs.map +1 -0
  139. package/dist/esm/editor/SlashCommands.native.js +385 -0
  140. package/dist/esm/editor/SlashCommands.native.js.map +1 -0
  141. package/dist/esm/editor/TentapEditor.native.js +214 -0
  142. package/dist/esm/editor/TentapEditor.native.js.map +1 -0
  143. package/dist/esm/editor/TiptapEditor.mjs +542 -0
  144. package/dist/esm/editor/TiptapEditor.mjs.map +1 -0
  145. package/dist/esm/editor/TiptapEditor.native.js +622 -0
  146. package/dist/esm/editor/TiptapEditor.native.js.map +1 -0
  147. package/dist/esm/editor/editorStyles.mjs +247 -0
  148. package/dist/esm/editor/editorStyles.mjs.map +1 -0
  149. package/dist/esm/editor/editorStyles.native.js +248 -0
  150. package/dist/esm/editor/editorStyles.native.js.map +1 -0
  151. package/dist/esm/editor/index.mjs +5 -0
  152. package/dist/esm/editor/index.mjs.map +1 -0
  153. package/dist/esm/editor/index.native.js +5 -0
  154. package/dist/esm/editor/index.native.js.map +1 -0
  155. package/dist/esm/editor/types.mjs +29 -0
  156. package/dist/esm/editor/types.mjs.map +1 -0
  157. package/dist/esm/editor/types.native.js +29 -0
  158. package/dist/esm/editor/types.native.js.map +1 -0
  159. package/dist/esm/editor/useEditorState.mjs +102 -0
  160. package/dist/esm/editor/useEditorState.mjs.map +1 -0
  161. package/dist/esm/editor/useEditorState.native.js +105 -0
  162. package/dist/esm/editor/useEditorState.native.js.map +1 -0
  163. package/dist/esm/index.mjs +4 -0
  164. package/dist/esm/index.mjs.map +1 -0
  165. package/dist/esm/index.native.js +4 -0
  166. package/dist/esm/index.native.js.map +1 -0
  167. package/dist/esm/styled.mjs +144 -0
  168. package/dist/esm/styled.mjs.map +1 -0
  169. package/dist/esm/styled.native.js +153 -0
  170. package/dist/esm/styled.native.js.map +1 -0
  171. package/dist/esm/toolbar/BubbleToolbar.mjs +105 -0
  172. package/dist/esm/toolbar/BubbleToolbar.mjs.map +1 -0
  173. package/dist/esm/toolbar/BubbleToolbar.native.js +131 -0
  174. package/dist/esm/toolbar/BubbleToolbar.native.js.map +1 -0
  175. package/dist/esm/toolbar/CodeBlockBubble.mjs +186 -0
  176. package/dist/esm/toolbar/CodeBlockBubble.mjs.map +1 -0
  177. package/dist/esm/toolbar/CodeBlockBubble.native.js +200 -0
  178. package/dist/esm/toolbar/CodeBlockBubble.native.js.map +1 -0
  179. package/dist/esm/toolbar/ColorPicker.mjs +191 -0
  180. package/dist/esm/toolbar/ColorPicker.mjs.map +1 -0
  181. package/dist/esm/toolbar/ColorPicker.native.js +205 -0
  182. package/dist/esm/toolbar/ColorPicker.native.js.map +1 -0
  183. package/dist/esm/toolbar/FixedToolbar.mjs +196 -0
  184. package/dist/esm/toolbar/FixedToolbar.mjs.map +1 -0
  185. package/dist/esm/toolbar/FixedToolbar.native.js +294 -0
  186. package/dist/esm/toolbar/FixedToolbar.native.js.map +1 -0
  187. package/dist/esm/toolbar/HeadingPicker.mjs +133 -0
  188. package/dist/esm/toolbar/HeadingPicker.mjs.map +1 -0
  189. package/dist/esm/toolbar/HeadingPicker.native.js +139 -0
  190. package/dist/esm/toolbar/HeadingPicker.native.js.map +1 -0
  191. package/dist/esm/toolbar/ImageBubble.mjs +131 -0
  192. package/dist/esm/toolbar/ImageBubble.mjs.map +1 -0
  193. package/dist/esm/toolbar/ImageBubble.native.js +137 -0
  194. package/dist/esm/toolbar/ImageBubble.native.js.map +1 -0
  195. package/dist/esm/toolbar/ImageDialog.mjs +90 -0
  196. package/dist/esm/toolbar/ImageDialog.mjs.map +1 -0
  197. package/dist/esm/toolbar/ImageDialog.native.js +94 -0
  198. package/dist/esm/toolbar/ImageDialog.native.js.map +1 -0
  199. package/dist/esm/toolbar/LinkBubble.mjs +170 -0
  200. package/dist/esm/toolbar/LinkBubble.mjs.map +1 -0
  201. package/dist/esm/toolbar/LinkBubble.native.js +176 -0
  202. package/dist/esm/toolbar/LinkBubble.native.js.map +1 -0
  203. package/dist/esm/toolbar/LinkDialog.mjs +112 -0
  204. package/dist/esm/toolbar/LinkDialog.mjs.map +1 -0
  205. package/dist/esm/toolbar/LinkDialog.native.js +117 -0
  206. package/dist/esm/toolbar/LinkDialog.native.js.map +1 -0
  207. package/dist/esm/toolbar/ListPicker.mjs +92 -0
  208. package/dist/esm/toolbar/ListPicker.mjs.map +1 -0
  209. package/dist/esm/toolbar/ListPicker.native.js +96 -0
  210. package/dist/esm/toolbar/ListPicker.native.js.map +1 -0
  211. package/dist/esm/toolbar/MoreDropdown.mjs +176 -0
  212. package/dist/esm/toolbar/MoreDropdown.mjs.map +1 -0
  213. package/dist/esm/toolbar/MoreDropdown.native.js +196 -0
  214. package/dist/esm/toolbar/MoreDropdown.native.js.map +1 -0
  215. package/dist/esm/toolbar/ResizeHandle.mjs +80 -0
  216. package/dist/esm/toolbar/ResizeHandle.mjs.map +1 -0
  217. package/dist/esm/toolbar/ResizeHandle.native.js +81 -0
  218. package/dist/esm/toolbar/ResizeHandle.native.js.map +1 -0
  219. package/dist/esm/toolbar/StatusBar.mjs +66 -0
  220. package/dist/esm/toolbar/StatusBar.mjs.map +1 -0
  221. package/dist/esm/toolbar/StatusBar.native.js +72 -0
  222. package/dist/esm/toolbar/StatusBar.native.js.map +1 -0
  223. package/dist/esm/toolbar/TableBubble.mjs +207 -0
  224. package/dist/esm/toolbar/TableBubble.mjs.map +1 -0
  225. package/dist/esm/toolbar/TableBubble.native.js +245 -0
  226. package/dist/esm/toolbar/TableBubble.native.js.map +1 -0
  227. package/dist/esm/toolbar/ToolbarButton.mjs +79 -0
  228. package/dist/esm/toolbar/ToolbarButton.mjs.map +1 -0
  229. package/dist/esm/toolbar/ToolbarButton.native.js +68 -0
  230. package/dist/esm/toolbar/ToolbarButton.native.js.map +1 -0
  231. package/dist/esm/toolbar/ToolbarGroup.mjs +16 -0
  232. package/dist/esm/toolbar/ToolbarGroup.mjs.map +1 -0
  233. package/dist/esm/toolbar/ToolbarGroup.native.js +17 -0
  234. package/dist/esm/toolbar/ToolbarGroup.native.js.map +1 -0
  235. package/dist/esm/toolbar/icons.mjs +554 -0
  236. package/dist/esm/toolbar/icons.mjs.map +1 -0
  237. package/dist/esm/toolbar/icons.native.js +115 -0
  238. package/dist/esm/toolbar/icons.native.js.map +1 -0
  239. package/dist/esm/toolbar/shortcuts.mjs +36 -0
  240. package/dist/esm/toolbar/shortcuts.mjs.map +1 -0
  241. package/dist/esm/toolbar/shortcuts.native.js +37 -0
  242. package/dist/esm/toolbar/shortcuts.native.js.map +1 -0
  243. package/dist/esm/toolbar/useHorizontalScroll.mjs +223 -0
  244. package/dist/esm/toolbar/useHorizontalScroll.mjs.map +1 -0
  245. package/dist/esm/toolbar/useHorizontalScroll.native.js +230 -0
  246. package/dist/esm/toolbar/useHorizontalScroll.native.js.map +1 -0
  247. package/dist/esm/types.mjs +31 -0
  248. package/dist/esm/types.mjs.map +1 -0
  249. package/dist/esm/types.native.js +31 -0
  250. package/dist/esm/types.native.js.map +1 -0
  251. package/dist/jsx/RichEditor.mjs +107 -0
  252. package/dist/jsx/RichEditor.mjs.map +1 -0
  253. package/dist/jsx/RichEditor.native.js +120 -0
  254. package/dist/jsx/RichEditor.native.js.map +1 -0
  255. package/dist/jsx/RichEditor.stories.mjs +291 -0
  256. package/dist/jsx/RichEditor.stories.mjs.map +1 -0
  257. package/dist/jsx/RichEditor.stories.native.js +342 -0
  258. package/dist/jsx/RichEditor.stories.native.js.map +1 -0
  259. package/dist/jsx/RichTextEditor/index.mjs +123 -0
  260. package/dist/jsx/RichTextEditor/index.mjs.map +1 -0
  261. package/dist/jsx/RichTextEditor/index.native.js +160 -0
  262. package/dist/jsx/RichTextEditor/index.native.js.map +1 -0
  263. package/dist/jsx/constants.mjs +108 -0
  264. package/dist/jsx/constants.mjs.map +1 -0
  265. package/dist/jsx/constants.native.js +138 -0
  266. package/dist/jsx/constants.native.js.map +1 -0
  267. package/dist/jsx/context.mjs +8 -0
  268. package/dist/jsx/context.mjs.map +1 -0
  269. package/dist/jsx/context.native.js +36 -0
  270. package/dist/jsx/context.native.js.map +1 -0
  271. package/dist/jsx/editor/BlockDragHandle.mjs +112 -0
  272. package/dist/jsx/editor/BlockDragHandle.mjs.map +1 -0
  273. package/dist/jsx/editor/BlockDragHandle.native.js +142 -0
  274. package/dist/jsx/editor/BlockDragHandle.native.js.map +1 -0
  275. package/dist/jsx/editor/MarkdownPaste.mjs +40 -0
  276. package/dist/jsx/editor/MarkdownPaste.mjs.map +1 -0
  277. package/dist/jsx/editor/MarkdownPaste.native.js +68 -0
  278. package/dist/jsx/editor/MarkdownPaste.native.js.map +1 -0
  279. package/dist/jsx/editor/SlashCommands.mjs +333 -0
  280. package/dist/jsx/editor/SlashCommands.mjs.map +1 -0
  281. package/dist/jsx/editor/SlashCommands.native.js +424 -0
  282. package/dist/jsx/editor/SlashCommands.native.js.map +1 -0
  283. package/dist/jsx/editor/TentapEditor.native.js +242 -0
  284. package/dist/jsx/editor/TentapEditor.native.js.map +1 -0
  285. package/dist/jsx/editor/TiptapEditor.mjs +542 -0
  286. package/dist/jsx/editor/TiptapEditor.mjs.map +1 -0
  287. package/dist/jsx/editor/TiptapEditor.native.js +661 -0
  288. package/dist/jsx/editor/TiptapEditor.native.js.map +1 -0
  289. package/dist/jsx/editor/editorStyles.mjs +247 -0
  290. package/dist/jsx/editor/editorStyles.mjs.map +1 -0
  291. package/dist/jsx/editor/editorStyles.native.js +276 -0
  292. package/dist/jsx/editor/editorStyles.native.js.map +1 -0
  293. package/dist/jsx/editor/index.mjs +5 -0
  294. package/dist/jsx/editor/index.mjs.map +1 -0
  295. package/dist/jsx/editor/index.native.js +36 -0
  296. package/dist/jsx/editor/index.native.js.map +1 -0
  297. package/dist/jsx/editor/types.mjs +29 -0
  298. package/dist/jsx/editor/types.mjs.map +1 -0
  299. package/dist/jsx/editor/types.native.js +57 -0
  300. package/dist/jsx/editor/types.native.js.map +1 -0
  301. package/dist/jsx/editor/useEditorState.mjs +102 -0
  302. package/dist/jsx/editor/useEditorState.mjs.map +1 -0
  303. package/dist/jsx/editor/useEditorState.native.js +135 -0
  304. package/dist/jsx/editor/useEditorState.native.js.map +1 -0
  305. package/dist/jsx/index.js +4 -0
  306. package/dist/jsx/index.js.map +1 -0
  307. package/dist/jsx/index.mjs +4 -0
  308. package/dist/jsx/index.mjs.map +1 -0
  309. package/dist/jsx/index.native.js +33 -0
  310. package/dist/jsx/index.native.js.map +1 -0
  311. package/dist/jsx/styled.mjs +144 -0
  312. package/dist/jsx/styled.mjs.map +1 -0
  313. package/dist/jsx/styled.native.js +185 -0
  314. package/dist/jsx/styled.native.js.map +1 -0
  315. package/dist/jsx/toolbar/BubbleToolbar.mjs +105 -0
  316. package/dist/jsx/toolbar/BubbleToolbar.mjs.map +1 -0
  317. package/dist/jsx/toolbar/BubbleToolbar.native.js +159 -0
  318. package/dist/jsx/toolbar/BubbleToolbar.native.js.map +1 -0
  319. package/dist/jsx/toolbar/CodeBlockBubble.mjs +186 -0
  320. package/dist/jsx/toolbar/CodeBlockBubble.mjs.map +1 -0
  321. package/dist/jsx/toolbar/CodeBlockBubble.native.js +228 -0
  322. package/dist/jsx/toolbar/CodeBlockBubble.native.js.map +1 -0
  323. package/dist/jsx/toolbar/ColorPicker.mjs +191 -0
  324. package/dist/jsx/toolbar/ColorPicker.mjs.map +1 -0
  325. package/dist/jsx/toolbar/ColorPicker.native.js +234 -0
  326. package/dist/jsx/toolbar/ColorPicker.native.js.map +1 -0
  327. package/dist/jsx/toolbar/FixedToolbar.mjs +196 -0
  328. package/dist/jsx/toolbar/FixedToolbar.mjs.map +1 -0
  329. package/dist/jsx/toolbar/FixedToolbar.native.js +322 -0
  330. package/dist/jsx/toolbar/FixedToolbar.native.js.map +1 -0
  331. package/dist/jsx/toolbar/HeadingPicker.mjs +133 -0
  332. package/dist/jsx/toolbar/HeadingPicker.mjs.map +1 -0
  333. package/dist/jsx/toolbar/HeadingPicker.native.js +167 -0
  334. package/dist/jsx/toolbar/HeadingPicker.native.js.map +1 -0
  335. package/dist/jsx/toolbar/ImageBubble.mjs +131 -0
  336. package/dist/jsx/toolbar/ImageBubble.mjs.map +1 -0
  337. package/dist/jsx/toolbar/ImageBubble.native.js +165 -0
  338. package/dist/jsx/toolbar/ImageBubble.native.js.map +1 -0
  339. package/dist/jsx/toolbar/ImageDialog.mjs +90 -0
  340. package/dist/jsx/toolbar/ImageDialog.mjs.map +1 -0
  341. package/dist/jsx/toolbar/ImageDialog.native.js +122 -0
  342. package/dist/jsx/toolbar/ImageDialog.native.js.map +1 -0
  343. package/dist/jsx/toolbar/LinkBubble.mjs +170 -0
  344. package/dist/jsx/toolbar/LinkBubble.mjs.map +1 -0
  345. package/dist/jsx/toolbar/LinkBubble.native.js +204 -0
  346. package/dist/jsx/toolbar/LinkBubble.native.js.map +1 -0
  347. package/dist/jsx/toolbar/LinkDialog.mjs +112 -0
  348. package/dist/jsx/toolbar/LinkDialog.mjs.map +1 -0
  349. package/dist/jsx/toolbar/LinkDialog.native.js +146 -0
  350. package/dist/jsx/toolbar/LinkDialog.native.js.map +1 -0
  351. package/dist/jsx/toolbar/ListPicker.mjs +92 -0
  352. package/dist/jsx/toolbar/ListPicker.mjs.map +1 -0
  353. package/dist/jsx/toolbar/ListPicker.native.js +124 -0
  354. package/dist/jsx/toolbar/ListPicker.native.js.map +1 -0
  355. package/dist/jsx/toolbar/MoreDropdown.mjs +176 -0
  356. package/dist/jsx/toolbar/MoreDropdown.mjs.map +1 -0
  357. package/dist/jsx/toolbar/MoreDropdown.native.js +224 -0
  358. package/dist/jsx/toolbar/MoreDropdown.native.js.map +1 -0
  359. package/dist/jsx/toolbar/ResizeHandle.mjs +80 -0
  360. package/dist/jsx/toolbar/ResizeHandle.mjs.map +1 -0
  361. package/dist/jsx/toolbar/ResizeHandle.native.js +109 -0
  362. package/dist/jsx/toolbar/ResizeHandle.native.js.map +1 -0
  363. package/dist/jsx/toolbar/StatusBar.mjs +66 -0
  364. package/dist/jsx/toolbar/StatusBar.mjs.map +1 -0
  365. package/dist/jsx/toolbar/StatusBar.native.js +100 -0
  366. package/dist/jsx/toolbar/StatusBar.native.js.map +1 -0
  367. package/dist/jsx/toolbar/TableBubble.mjs +207 -0
  368. package/dist/jsx/toolbar/TableBubble.mjs.map +1 -0
  369. package/dist/jsx/toolbar/TableBubble.native.js +273 -0
  370. package/dist/jsx/toolbar/TableBubble.native.js.map +1 -0
  371. package/dist/jsx/toolbar/ToolbarButton.mjs +79 -0
  372. package/dist/jsx/toolbar/ToolbarButton.mjs.map +1 -0
  373. package/dist/jsx/toolbar/ToolbarButton.native.js +97 -0
  374. package/dist/jsx/toolbar/ToolbarButton.native.js.map +1 -0
  375. package/dist/jsx/toolbar/ToolbarGroup.mjs +16 -0
  376. package/dist/jsx/toolbar/ToolbarGroup.mjs.map +1 -0
  377. package/dist/jsx/toolbar/ToolbarGroup.native.js +45 -0
  378. package/dist/jsx/toolbar/ToolbarGroup.native.js.map +1 -0
  379. package/dist/jsx/toolbar/icons.mjs +554 -0
  380. package/dist/jsx/toolbar/icons.mjs.map +1 -0
  381. package/dist/jsx/toolbar/icons.native.js +165 -0
  382. package/dist/jsx/toolbar/icons.native.js.map +1 -0
  383. package/dist/jsx/toolbar/shortcuts.mjs +36 -0
  384. package/dist/jsx/toolbar/shortcuts.mjs.map +1 -0
  385. package/dist/jsx/toolbar/shortcuts.native.js +66 -0
  386. package/dist/jsx/toolbar/shortcuts.native.js.map +1 -0
  387. package/dist/jsx/toolbar/useHorizontalScroll.mjs +223 -0
  388. package/dist/jsx/toolbar/useHorizontalScroll.mjs.map +1 -0
  389. package/dist/jsx/toolbar/useHorizontalScroll.native.js +260 -0
  390. package/dist/jsx/toolbar/useHorizontalScroll.native.js.map +1 -0
  391. package/dist/jsx/types.mjs +31 -0
  392. package/dist/jsx/types.mjs.map +1 -0
  393. package/dist/jsx/types.native.js +59 -0
  394. package/dist/jsx/types.native.js.map +1 -0
  395. package/package.json +117 -0
  396. package/src/RichEditor.native.tsx +161 -0
  397. package/src/RichEditor.stories.tsx +324 -0
  398. package/src/RichEditor.tsx +185 -0
  399. package/src/RichTextEditor/index.tsx +245 -0
  400. package/src/RichTextEditor/richTextEditor.spec.tsx +239 -0
  401. package/src/constants.ts +100 -0
  402. package/src/context.spec.ts +9 -0
  403. package/src/context.ts +16 -0
  404. package/src/editor/BlockDragHandle.ts +141 -0
  405. package/src/editor/MarkdownPaste.ts +50 -0
  406. package/src/editor/SlashCommands.tsx +357 -0
  407. package/src/editor/TentapEditor.native.tsx +269 -0
  408. package/src/editor/TiptapEditor.tsx +616 -0
  409. package/src/editor/editorStyles.spec.ts +24 -0
  410. package/src/editor/editorStyles.ts +260 -0
  411. package/src/editor/index.ts +10 -0
  412. package/src/editor/tentapEditor.spec.ts +125 -0
  413. package/src/editor/tiptapEditor.spec.tsx +169 -0
  414. package/src/editor/types.ts +142 -0
  415. package/src/editor/useEditorState.spec.ts +93 -0
  416. package/src/editor/useEditorState.ts +125 -0
  417. package/src/exports.spec.ts +128 -0
  418. package/src/index.ts +13 -0
  419. package/src/integration.spec.tsx +430 -0
  420. package/src/richEditor.spec.tsx +169 -0
  421. package/src/styled.spec.tsx +42 -0
  422. package/src/styled.ts +177 -0
  423. package/src/toolbar/BubbleToolbar.tsx +151 -0
  424. package/src/toolbar/CodeBlockBubble.tsx +141 -0
  425. package/src/toolbar/ColorPicker.tsx +211 -0
  426. package/src/toolbar/FixedToolbar.native.tsx +381 -0
  427. package/src/toolbar/FixedToolbar.tsx +252 -0
  428. package/src/toolbar/HeadingPicker.tsx +169 -0
  429. package/src/toolbar/ImageBubble.tsx +126 -0
  430. package/src/toolbar/ImageDialog.tsx +93 -0
  431. package/src/toolbar/LinkBubble.tsx +166 -0
  432. package/src/toolbar/LinkDialog.tsx +124 -0
  433. package/src/toolbar/ListPicker.tsx +121 -0
  434. package/src/toolbar/MoreDropdown.tsx +185 -0
  435. package/src/toolbar/ResizeHandle.tsx +80 -0
  436. package/src/toolbar/StatusBar.tsx +76 -0
  437. package/src/toolbar/TableBubble.tsx +197 -0
  438. package/src/toolbar/ToolbarButton.native.tsx +105 -0
  439. package/src/toolbar/ToolbarButton.tsx +114 -0
  440. package/src/toolbar/ToolbarGroup.tsx +38 -0
  441. package/src/toolbar/bubbleToolbar.spec.tsx +93 -0
  442. package/src/toolbar/fixedToolbar.spec.tsx +127 -0
  443. package/src/toolbar/icons.native.tsx +112 -0
  444. package/src/toolbar/icons.tsx +417 -0
  445. package/src/toolbar/shortcuts.ts +42 -0
  446. package/src/toolbar/toolbarPrimitives.spec.tsx +118 -0
  447. package/src/toolbar/toolbarSubComponents.spec.tsx +115 -0
  448. package/src/toolbar/useHorizontalScroll.tsx +270 -0
  449. package/src/types.spec.ts +102 -0
  450. package/src/types.ts +217 -0
@@ -0,0 +1 @@
1
+ {"version":3,"names":["TentapEditor_native_exports","__export","TentapEditor","module","exports","__toCommonJS","import_jsx_runtime","require","import_react","import_react_native","import_tentap_editor","import_tamagui","import_context","import_useEditorState","useNativeEditorDarkMode","themeName","useThemeName","osScheme","useColorScheme","String","startsWith","forwardRef","param","ref","initialContent","initialJSON","placeholder","editable","autoFocus","onChange","onStateChange","minHeight","maxHeight","hasError","_hasError","ctx","RichEditorContext","useStyledContext","isDarkMode","cachedHtml","useRef","cachedJson","editor","useEditorBridge","bridgeExtensions","TenTapStartKit","UnderlineBridge","LinkBridge","ColorBridge","HighlightBridge","ImageBridge","TaskListBridge","PlaceholderBridge","configureExtension","theme","darkEditorTheme","JSON","stringify","autofocus","onChange1","html","getHTML","json","getJSON","current","unused","useEffect","id","setTimeout","injectCSS","darkEditorCss","clearTimeout","unsubscribe","_subscribeToEditorStateUpdate","state","editorState","getEditorStateFromBridge","executeCommand","useCallback","command","payload","toggleBold","toggleItalic","toggleUnderline","toggleStrike","toggleCode","toggleHeading","toggleBulletList","toggleOrderedList","toggleTaskList","src","setImage","toggleBlockquote","href","setLink","undo","redo","color","setColor","setHighlight","useImperativeHandle","getState","getEditorState","setHTML","setContent","setJSON","focus","blur","jsx","View","backgroundColor","disabled","overflow","opacity","children","RichText","style","styles","displayName","StyleSheet","create","flex"],"sources":["../../../src/editor/TentapEditor.native.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,578 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all) __defProp(target, name, {
9
+ get: all[name],
10
+ enumerable: true
11
+ });
12
+ };
13
+ var __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from === "object" || typeof from === "function") {
15
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
16
+ get: () => from[key],
17
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
18
+ });
19
+ }
20
+ return to;
21
+ };
22
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
23
+ // If the importer is in node compatibility mode or this is not an ESM
24
+ // file that has been converted to a CommonJS file using a Babel-
25
+ // compatible transform (i.e. "__esModule" has not been set), then set
26
+ // "default" to the CommonJS "module.exports" for node compatibility.
27
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
28
+ value: mod,
29
+ enumerable: true
30
+ }) : target, mod));
31
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
32
+ value: true
33
+ }), mod);
34
+ var TiptapEditor_exports = {};
35
+ __export(TiptapEditor_exports, {
36
+ TiptapEditor: () => TiptapEditor
37
+ });
38
+ module.exports = __toCommonJS(TiptapEditor_exports);
39
+ var import_react = require("react");
40
+ var import_react2 = require("@tiptap/react");
41
+ var import_core = require("@tiptap/core");
42
+ var import_starter_kit = __toESM(require("@tiptap/starter-kit"));
43
+ var import_extension_placeholder = __toESM(require("@tiptap/extension-placeholder"));
44
+ var import_extension_text_align = __toESM(require("@tiptap/extension-text-align"));
45
+ var import_extension_color = require("@tiptap/extension-color");
46
+ var import_extension_text_style = require("@tiptap/extension-text-style");
47
+ var import_extension_highlight = require("@tiptap/extension-highlight");
48
+ var import_extension_subscript = require("@tiptap/extension-subscript");
49
+ var import_extension_superscript = require("@tiptap/extension-superscript");
50
+ var import_extension_task_list = __toESM(require("@tiptap/extension-task-list"));
51
+ var import_extension_task_item = __toESM(require("@tiptap/extension-task-item"));
52
+ var import_extension_image = __toESM(require("@tiptap/extension-image"));
53
+ var import_extension_code_block_lowlight = __toESM(require("@tiptap/extension-code-block-lowlight"));
54
+ var import_extension_typography = __toESM(require("@tiptap/extension-typography"));
55
+ var import_extension_character_count = __toESM(require("@tiptap/extension-character-count"));
56
+ var import_extension_table = require("@tiptap/extension-table");
57
+ var import_extension_table_row = require("@tiptap/extension-table-row");
58
+ var import_extension_table_header = require("@tiptap/extension-table-header");
59
+ var import_extension_table_cell = require("@tiptap/extension-table-cell");
60
+ var import_lowlight = require("lowlight");
61
+ var import_turndown = __toESM(require("turndown"));
62
+ var import_marked = require("marked");
63
+ var import_tamagui = require("tamagui");
64
+ var import_constants = require("@tamagui/constants");
65
+ var import_types = require("../types.cjs");
66
+ var import_context = require("../context.cjs");
67
+ var import_editorStyles = require("./editorStyles.cjs");
68
+ var import_SlashCommands = require("./SlashCommands.cjs");
69
+ var import_MarkdownPaste = require("./MarkdownPaste.cjs");
70
+ var import_BlockDragHandle = require("./BlockDragHandle.cjs");
71
+ var import_useEditorState = require("./useEditorState.cjs");
72
+ var import_BubbleToolbar = require("../toolbar/BubbleToolbar.cjs");
73
+ var import_LinkBubble = require("../toolbar/LinkBubble.cjs");
74
+ var import_CodeBlockBubble = require("../toolbar/CodeBlockBubble.cjs");
75
+ var import_ImageBubble = require("../toolbar/ImageBubble.cjs");
76
+ var import_TableBubble = require("../toolbar/TableBubble.cjs");
77
+ var import_jsx_runtime = require("react/jsx-runtime");
78
+ const lowlight = (0, import_lowlight.createLowlight)(import_lowlight.common);
79
+ const turndownService = new import_turndown.default({
80
+ headingStyle: "atx",
81
+ codeBlockStyle: "fenced"
82
+ });
83
+ const CodeBlockTabIndent = import_core.Extension.create({
84
+ name: "codeBlockTabIndent",
85
+ addKeyboardShortcuts() {
86
+ return {
87
+ Tab: ({
88
+ editor
89
+ }) => {
90
+ if (!editor.isActive("codeBlock")) return false;
91
+ const {
92
+ state,
93
+ dispatch
94
+ } = editor.view;
95
+ const {
96
+ from,
97
+ to
98
+ } = state.selection;
99
+ if (from === to) {
100
+ dispatch(state.tr.insertText(" ", from, to));
101
+ return true;
102
+ }
103
+ const doc = state.doc;
104
+ const lines = [];
105
+ doc.nodesBetween(from, to, (node, pos) => {
106
+ if (node.isTextblock) {
107
+ lines.push({
108
+ start: pos + 1
109
+ });
110
+ }
111
+ });
112
+ if (lines.length === 0) {
113
+ dispatch(state.tr.insertText(" ", from, to));
114
+ return true;
115
+ }
116
+ let tr = state.tr;
117
+ let offset = 0;
118
+ for (const line of lines) {
119
+ const lineStart = line.start + offset;
120
+ tr = tr.insertText(" ", lineStart);
121
+ offset += 2;
122
+ }
123
+ dispatch(tr);
124
+ return true;
125
+ },
126
+ "Shift-Tab": ({
127
+ editor
128
+ }) => {
129
+ if (!editor.isActive("codeBlock")) return false;
130
+ const {
131
+ state,
132
+ dispatch
133
+ } = editor.view;
134
+ const {
135
+ from,
136
+ to,
137
+ $from
138
+ } = state.selection;
139
+ if (from === to) {
140
+ const lineStart = from - $from.parentOffset;
141
+ const text = state.doc.textBetween(lineStart, from);
142
+ const leadingSpaces = text.match(/^ {1,2}/)?.[0];
143
+ if (leadingSpaces) {
144
+ dispatch(state.tr.delete(lineStart, lineStart + leadingSpaces.length));
145
+ }
146
+ return true;
147
+ }
148
+ const doc = state.doc;
149
+ let tr = state.tr;
150
+ let offset = 0;
151
+ doc.nodesBetween(from, to, (node, pos) => {
152
+ if (node.isTextblock) {
153
+ const lineStart = pos + 1 + offset;
154
+ const text = tr.doc.textBetween(lineStart, Math.min(lineStart + node.content.size, tr.doc.content.size));
155
+ const leadingSpaces = text.match(/^ {1,2}/)?.[0];
156
+ if (leadingSpaces) {
157
+ tr = tr.delete(lineStart, lineStart + leadingSpaces.length);
158
+ offset -= leadingSpaces.length;
159
+ }
160
+ }
161
+ });
162
+ dispatch(tr);
163
+ return true;
164
+ }
165
+ };
166
+ }
167
+ });
168
+ const ParagraphEnterKeys = import_core.Extension.create({
169
+ name: "paragraphEnterKeys",
170
+ priority: 1e3,
171
+ addKeyboardShortcuts() {
172
+ return {
173
+ "Shift-Enter": ({
174
+ editor
175
+ }) => editor.commands.first([() => editor.commands.newlineInCode(), () => editor.commands.splitListItem("listItem"), () => editor.commands.createParagraphNear(), () => editor.commands.liftEmptyBlock(), () => editor.commands.splitBlock()]),
176
+ "Mod-Enter": ({
177
+ editor
178
+ }) => editor.commands.first([() => editor.commands.newlineInCode(), () => editor.commands.createParagraphNear(), () => editor.commands.liftEmptyBlock(), () => editor.commands.splitBlock()])
179
+ };
180
+ }
181
+ });
182
+ const ListItemKeys = import_core.Extension.create({
183
+ name: "listItemKeys",
184
+ addKeyboardShortcuts() {
185
+ return {
186
+ Tab: ({
187
+ editor
188
+ }) => {
189
+ if (editor.isActive("codeBlock")) return false;
190
+ if (editor.isActive("bulletList") || editor.isActive("orderedList") || editor.isActive("taskList")) {
191
+ return editor.commands.sinkListItem("listItem") || editor.commands.sinkListItem("taskItem");
192
+ }
193
+ return false;
194
+ },
195
+ "Shift-Tab": ({
196
+ editor
197
+ }) => {
198
+ if (editor.isActive("codeBlock")) return false;
199
+ if (editor.isActive("bulletList") || editor.isActive("orderedList") || editor.isActive("taskList")) {
200
+ return editor.commands.liftListItem("listItem") || editor.commands.liftListItem("taskItem");
201
+ }
202
+ return false;
203
+ }
204
+ };
205
+ }
206
+ });
207
+ const EditorContainer = (0, import_tamagui.styled)(import_tamagui.View, {
208
+ name: "TiptapEditorContainer",
209
+ flex: 1,
210
+ minHeight: 150,
211
+ overflow: "hidden"
212
+ });
213
+ const TiptapEditor = (0, import_react.memo)((0, import_react.forwardRef)(({
214
+ initialContent = "",
215
+ initialJSON,
216
+ placeholder = "Start writing...",
217
+ editable = true,
218
+ autoFocus = false,
219
+ onChange,
220
+ onStateChange,
221
+ onFocus,
222
+ onBlur,
223
+ minHeight = 150,
224
+ maxHeight,
225
+ hasError: _hasError,
226
+ showBubbleToolbar = false,
227
+ bodyFontFamily,
228
+ headingFontFamily,
229
+ editorMode = "richtext"
230
+ }, ref) => {
231
+ const _ctx = import_context.RichEditorContext.useStyledContext();
232
+ const internalRef = (0, import_react.useRef)(null);
233
+ const stateRafRef = (0, import_react.useRef)(0);
234
+ const changeRafRef = (0, import_react.useRef)(0);
235
+ const onStateChangeRef = (0, import_react.useRef)(onStateChange);
236
+ const onChangeRef = (0, import_react.useRef)(onChange);
237
+ const [markdownSource, setMarkdownSource] = (0, import_react.useState)("");
238
+ const prevModeRef = (0, import_react.useRef)(editorMode);
239
+ (0, import_react.useEffect)(() => {
240
+ onStateChangeRef.current = onStateChange;
241
+ onChangeRef.current = onChange;
242
+ });
243
+ const editor = (0, import_react2.useEditor)({
244
+ extensions: [import_starter_kit.default.configure({
245
+ heading: {
246
+ levels: [1, 2, 3, 4, 5, 6],
247
+ HTMLAttributes: {
248
+ dir: "auto"
249
+ }
250
+ },
251
+ paragraph: {
252
+ HTMLAttributes: {
253
+ dir: "auto"
254
+ }
255
+ },
256
+ link: {
257
+ openOnClick: false,
258
+ HTMLAttributes: {
259
+ rel: "noopener noreferrer",
260
+ target: "_blank"
261
+ }
262
+ },
263
+ bulletList: {
264
+ keepMarks: true
265
+ },
266
+ orderedList: {
267
+ keepMarks: true
268
+ },
269
+ codeBlock: false,
270
+ hardBreak: false
271
+ }), import_extension_code_block_lowlight.default.configure({
272
+ lowlight,
273
+ exitOnTripleEnter: true,
274
+ exitOnArrowDown: false
275
+ }), ParagraphEnterKeys, CodeBlockTabIndent, ListItemKeys, import_extension_typography.default, import_extension_character_count.default, import_SlashCommands.SlashCommands, import_MarkdownPaste.MarkdownPaste, import_BlockDragHandle.BlockDragHandle, import_extension_table.Table.configure({
276
+ resizable: true
277
+ }), import_extension_table_row.TableRow, import_extension_table_header.TableHeader, import_extension_table_cell.TableCell, import_extension_placeholder.default.configure({
278
+ placeholder
279
+ }), import_extension_text_align.default.configure({
280
+ types: ["heading", "paragraph"],
281
+ defaultAlignment: "left"
282
+ }), import_extension_text_style.TextStyle, import_extension_color.Color, import_extension_highlight.Highlight.configure({
283
+ multicolor: true
284
+ }), import_extension_subscript.Subscript, import_extension_superscript.Superscript, import_extension_task_list.default, import_extension_task_item.default.configure({
285
+ nested: true
286
+ }), import_extension_image.default.configure({
287
+ inline: true,
288
+ allowBase64: true
289
+ })],
290
+ content: initialJSON || initialContent,
291
+ editable,
292
+ autofocus: autoFocus,
293
+ injectCSS: false,
294
+ immediatelyRender: false,
295
+ shouldRerenderOnTransaction: false,
296
+ onUpdate: ({
297
+ editor: editor2
298
+ }) => {
299
+ cancelAnimationFrame(changeRafRef.current);
300
+ changeRafRef.current = requestAnimationFrame(() => {
301
+ const html = editor2.getHTML();
302
+ const json = editor2.getJSON();
303
+ onChangeRef.current?.(html, json);
304
+ });
305
+ },
306
+ onTransaction: ({
307
+ editor: editor2
308
+ }) => {
309
+ cancelAnimationFrame(stateRafRef.current);
310
+ stateRafRef.current = requestAnimationFrame(() => {
311
+ onStateChangeRef.current?.((0, import_useEditorState.getEditorStateFromTiptap)(editor2));
312
+ });
313
+ },
314
+ onFocus: () => onFocus?.(),
315
+ onBlur: () => onBlur?.()
316
+ });
317
+ (0, import_react.useEffect)(() => {
318
+ if (!editor) return;
319
+ if (prevModeRef.current === editorMode) return;
320
+ prevModeRef.current = editorMode;
321
+ if (editorMode === "markdown") {
322
+ setMarkdownSource(turndownService.turndown(editor.getHTML()));
323
+ } else {
324
+ const html = import_marked.marked.parse(markdownSource, {
325
+ async: false
326
+ });
327
+ editor.commands.setContent(html);
328
+ }
329
+ }, [editorMode, editor, markdownSource]);
330
+ const handleMarkdownChange = (0, import_react.useCallback)(e => {
331
+ const md = e.target.value;
332
+ setMarkdownSource(md);
333
+ const html = import_marked.marked.parse(md, {
334
+ async: false
335
+ });
336
+ onChangeRef.current?.(html, null);
337
+ }, []);
338
+ const executeCommand = (0, import_react.useCallback)((command, payload) => {
339
+ if (!editor) return;
340
+ const chain = editor.chain().focus();
341
+ switch (command) {
342
+ case "bold":
343
+ chain.toggleBold().run();
344
+ break;
345
+ case "italic":
346
+ chain.toggleItalic().run();
347
+ break;
348
+ case "underline":
349
+ chain.toggleUnderline().run();
350
+ break;
351
+ case "strike":
352
+ chain.toggleStrike().run();
353
+ break;
354
+ case "code":
355
+ chain.toggleCode().run();
356
+ break;
357
+ case "subscript":
358
+ chain.toggleSubscript().run();
359
+ break;
360
+ case "superscript":
361
+ chain.toggleSuperscript().run();
362
+ break;
363
+ case "heading1":
364
+ chain.toggleHeading({
365
+ level: 1
366
+ }).run();
367
+ break;
368
+ case "heading2":
369
+ chain.toggleHeading({
370
+ level: 2
371
+ }).run();
372
+ break;
373
+ case "heading3":
374
+ chain.toggleHeading({
375
+ level: 3
376
+ }).run();
377
+ break;
378
+ case "heading4":
379
+ chain.toggleHeading({
380
+ level: 4
381
+ }).run();
382
+ break;
383
+ case "heading5":
384
+ chain.toggleHeading({
385
+ level: 5
386
+ }).run();
387
+ break;
388
+ case "heading6":
389
+ chain.toggleHeading({
390
+ level: 6
391
+ }).run();
392
+ break;
393
+ case "paragraph":
394
+ chain.setParagraph().run();
395
+ break;
396
+ case "bulletList":
397
+ chain.toggleBulletList().run();
398
+ break;
399
+ case "orderedList":
400
+ chain.toggleOrderedList().run();
401
+ break;
402
+ case "taskList":
403
+ chain.toggleTaskList().run();
404
+ break;
405
+ case "image":
406
+ if (payload?.src) {
407
+ chain.setImage({
408
+ src: payload.src,
409
+ alt: payload.alt || ""
410
+ }).run();
411
+ }
412
+ break;
413
+ case "blockquote":
414
+ chain.toggleBlockquote().run();
415
+ break;
416
+ case "codeBlock":
417
+ chain.toggleCodeBlock().run();
418
+ break;
419
+ case "link":
420
+ if (payload?.href) {
421
+ chain.setLink({
422
+ href: payload.href
423
+ }).run();
424
+ } else {
425
+ chain.unsetLink().run();
426
+ }
427
+ break;
428
+ case "undo":
429
+ chain.undo().run();
430
+ break;
431
+ case "redo":
432
+ chain.redo().run();
433
+ break;
434
+ case "alignLeft":
435
+ chain.setTextAlign("left").run();
436
+ break;
437
+ case "alignCenter":
438
+ chain.setTextAlign("center").run();
439
+ break;
440
+ case "alignRight":
441
+ chain.setTextAlign("right").run();
442
+ break;
443
+ case "alignJustify":
444
+ chain.setTextAlign("justify").run();
445
+ break;
446
+ case "textColor":
447
+ if (payload?.color) {
448
+ chain.setColor(payload.color).run();
449
+ } else {
450
+ chain.unsetColor().run();
451
+ }
452
+ break;
453
+ case "highlight":
454
+ if (payload?.color) {
455
+ chain.setHighlight({
456
+ color: payload.color
457
+ }).run();
458
+ } else {
459
+ chain.unsetHighlight().run();
460
+ }
461
+ break;
462
+ case "horizontalRule":
463
+ chain.setHorizontalRule().run();
464
+ break;
465
+ case "clearFormatting":
466
+ chain.unsetAllMarks().clearNodes().run();
467
+ break;
468
+ case "insertTable":
469
+ chain.insertTable({
470
+ rows: payload?.rows ?? 3,
471
+ cols: payload?.cols ?? 3,
472
+ withHeaderRow: payload?.withHeaderRow ?? true
473
+ }).run();
474
+ break;
475
+ case "addColumnBefore":
476
+ chain.addColumnBefore().run();
477
+ break;
478
+ case "addColumnAfter":
479
+ chain.addColumnAfter().run();
480
+ break;
481
+ case "deleteColumn":
482
+ chain.deleteColumn().run();
483
+ break;
484
+ case "addRowBefore":
485
+ chain.addRowBefore().run();
486
+ break;
487
+ case "addRowAfter":
488
+ chain.addRowAfter().run();
489
+ break;
490
+ case "deleteRow":
491
+ chain.deleteRow().run();
492
+ break;
493
+ case "deleteTable":
494
+ chain.deleteTable().run();
495
+ break;
496
+ case "mergeCells":
497
+ chain.mergeCells().run();
498
+ break;
499
+ case "splitCell":
500
+ chain.splitCell().run();
501
+ break;
502
+ case "toggleHeaderRow":
503
+ chain.toggleHeaderRow().run();
504
+ break;
505
+ }
506
+ }, [editor]);
507
+ const refMethods = (0, import_react.useMemo)(() => ({
508
+ executeCommand,
509
+ getState: () => (0, import_useEditorState.getEditorStateFromTiptap)(editor),
510
+ getHTML: () => editor?.getHTML() || "",
511
+ getJSON: () => editor?.getJSON() || null,
512
+ setHTML: html => editor?.commands.setContent(html),
513
+ setJSON: json => editor?.commands.setContent(json),
514
+ focus: () => editor?.commands.focus(),
515
+ blur: () => editor?.commands.blur()
516
+ }), [editor, executeCommand]);
517
+ (0, import_react.useImperativeHandle)(ref, () => refMethods, [refMethods]);
518
+ internalRef.current = refMethods;
519
+ const editorCSS = (0, import_react.useMemo)(() => (0, import_editorStyles.getEditorCSS)({
520
+ minHeight,
521
+ maxHeight,
522
+ bodyFontFamily,
523
+ headingFontFamily
524
+ }), [minHeight, maxHeight, bodyFontFamily, headingFontFamily]);
525
+ if (editorMode === "markdown") {
526
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(EditorContainer, {
527
+ minHeight,
528
+ maxHeight,
529
+ overflow: "hidden",
530
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)("textarea", {
531
+ value: markdownSource,
532
+ onChange: handleMarkdownChange,
533
+ style: {
534
+ width: "100%",
535
+ minHeight,
536
+ maxHeight: maxHeight || void 0,
537
+ padding: "12px 12px 12px 16px",
538
+ border: "none",
539
+ outline: "none",
540
+ resize: "none",
541
+ background: "transparent",
542
+ color: "inherit",
543
+ fontFamily: "ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace",
544
+ fontSize: "0.875em",
545
+ lineHeight: "1.6",
546
+ overflow: "auto",
547
+ boxSizing: "border-box"
548
+ },
549
+ spellCheck: false
550
+ })
551
+ });
552
+ }
553
+ return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(EditorContainer, {
554
+ minHeight,
555
+ maxHeight,
556
+ overflow: "hidden",
557
+ children: [import_constants.isWeb && /* @__PURE__ */(0, import_jsx_runtime.jsx)("style", {
558
+ children: editorCSS
559
+ }), showBubbleToolbar && /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, {
560
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_BubbleToolbar.BubbleToolbar, {
561
+ editor,
562
+ editorRef: internalRef,
563
+ state: import_types.defaultEditorState
564
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_LinkBubble.LinkBubble, {
565
+ editor
566
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_CodeBlockBubble.CodeBlockBubble, {
567
+ editor
568
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_ImageBubble.ImageBubble, {
569
+ editor
570
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_TableBubble.TableBubble, {
571
+ editor
572
+ })]
573
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_react2.EditorContent, {
574
+ editor
575
+ })]
576
+ });
577
+ }));
578
+ TiptapEditor.displayName = "TiptapEditor";