@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,230 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useCallback, useEffect, useRef, useState } from "react";
3
+ import { View } from "tamagui";
4
+ import { LinearGradient } from "@tamagui/linear-gradient";
5
+ import { CaretLeftIcon, CaretRightIcon } from "@phosphor-icons/react";
6
+ var scrollArrowThreshold = 8;
7
+ function useHorizontalScroll(ref) {
8
+ useEffect(function () {
9
+ var el = ref.current;
10
+ if (!el) return;
11
+ var handleWheel = function handleWheel2(e) {
12
+ var delta = e.deltaY !== 0 ? e.deltaY : e.deltaX;
13
+ if (delta !== 0 && el.scrollWidth > el.clientWidth) {
14
+ e.preventDefault();
15
+ el.scrollLeft += delta;
16
+ }
17
+ };
18
+ var isDown = false;
19
+ var isDragging = false;
20
+ var startX = 0;
21
+ var scrollLeft = 0;
22
+ var handleMouseDown = function handleMouseDown2(e) {
23
+ if (e.button !== 0) return;
24
+ isDown = true;
25
+ isDragging = false;
26
+ startX = e.clientX;
27
+ scrollLeft = el.scrollLeft;
28
+ };
29
+ var handleMouseUp = function handleMouseUp2(e) {
30
+ if (isDragging) {
31
+ e.preventDefault();
32
+ e.stopPropagation();
33
+ }
34
+ isDown = false;
35
+ isDragging = false;
36
+ };
37
+ var handleMouseMove = function handleMouseMove2(e) {
38
+ if (!isDown) return;
39
+ var x = e.clientX;
40
+ var diff = Math.abs(x - startX);
41
+ if (diff > 5) {
42
+ isDragging = true;
43
+ e.preventDefault();
44
+ var walk = x - startX;
45
+ el.scrollLeft = scrollLeft - walk;
46
+ }
47
+ };
48
+ el.addEventListener("wheel", handleWheel, {
49
+ passive: false
50
+ });
51
+ el.addEventListener("mousedown", handleMouseDown, {
52
+ capture: true
53
+ });
54
+ el.addEventListener("mouseup", handleMouseUp, {
55
+ capture: true
56
+ });
57
+ el.addEventListener("mousemove", handleMouseMove);
58
+ document.addEventListener("mouseup", function () {
59
+ isDown = false;
60
+ isDragging = false;
61
+ });
62
+ return function () {
63
+ el.removeEventListener("wheel", handleWheel);
64
+ el.removeEventListener("mousedown", handleMouseDown, {
65
+ capture: true
66
+ });
67
+ el.removeEventListener("mouseup", handleMouseUp, {
68
+ capture: true
69
+ });
70
+ el.removeEventListener("mousemove", handleMouseMove);
71
+ };
72
+ }, [ref]);
73
+ }
74
+ function useHorizontalScrollArrows() {
75
+ var [arrowLeft, setArrowLeft] = useState(false);
76
+ var [arrowRight, setArrowRight] = useState(false);
77
+ var arrowScrollDirRef = useRef(null);
78
+ var updateArrows = useCallback(function (element) {
79
+ var left = element.scrollLeft > scrollArrowThreshold;
80
+ var right = element.scrollLeft < element.scrollWidth - element.clientWidth - scrollArrowThreshold;
81
+ setArrowLeft(function (prev) {
82
+ return prev !== left ? left : prev;
83
+ });
84
+ setArrowRight(function (prev) {
85
+ return prev !== right ? right : prev;
86
+ });
87
+ }, []);
88
+ return {
89
+ arrowLeft,
90
+ arrowRight,
91
+ arrowScrollDirRef,
92
+ updateArrows
93
+ };
94
+ }
95
+ function HorizontalScrollArrow(param) {
96
+ var {
97
+ direction,
98
+ scrollRef,
99
+ visible,
100
+ arrowScrollDirRef,
101
+ transition
102
+ } = param;
103
+ var isLeft = direction === "left";
104
+ var animationFrameRef = useRef(0);
105
+ var lastTimeRef = useRef(0);
106
+ var resumeTimerRef = useRef(null);
107
+ var hoveringRef = useRef(false);
108
+ var activeRef = useRef(false);
109
+ var selfScrollingRef = useRef(false);
110
+ var resumeDelay = 100;
111
+ var stopLoop = useCallback(function () {
112
+ activeRef.current = false;
113
+ cancelAnimationFrame(animationFrameRef.current);
114
+ animationFrameRef.current = 0;
115
+ }, []);
116
+ var startLoop = useCallback(function () {
117
+ if (activeRef.current || !hoveringRef.current) return;
118
+ activeRef.current = true;
119
+ lastTimeRef.current = performance.now();
120
+ var tick = function tick1() {
121
+ var el = scrollRef.current;
122
+ if (!el || !hoveringRef.current || !activeRef.current) {
123
+ activeRef.current = false;
124
+ return;
125
+ }
126
+ var now = performance.now();
127
+ var elapsed = now - lastTimeRef.current;
128
+ lastTimeRef.current = now;
129
+ var px = Math.min(elapsed / 2, Math.max(isLeft ? el.scrollLeft : el.scrollWidth - el.clientWidth - el.scrollLeft, 0));
130
+ if (px > 0) {
131
+ selfScrollingRef.current = true;
132
+ arrowScrollDirRef.current = isLeft ? "left" : "right";
133
+ el.scrollLeft += isLeft ? -px : px;
134
+ }
135
+ animationFrameRef.current = requestAnimationFrame(tick);
136
+ };
137
+ animationFrameRef.current = requestAnimationFrame(tick);
138
+ }, [isLeft, scrollRef, arrowScrollDirRef]);
139
+ var openTimestampRef = useRef(0);
140
+ useEffect(function () {
141
+ openTimestampRef.current = performance.now();
142
+ }, [visible]);
143
+ var handlePointerEnter = useCallback(function () {
144
+ hoveringRef.current = true;
145
+ var elapsed = performance.now() - openTimestampRef.current;
146
+ var wasOverOnOpen = elapsed < 80;
147
+ if (wasOverOnOpen) {
148
+ if (resumeTimerRef.current) clearTimeout(resumeTimerRef.current);
149
+ resumeTimerRef.current = setTimeout(function () {
150
+ resumeTimerRef.current = null;
151
+ if (hoveringRef.current) startLoop();
152
+ }, 600);
153
+ } else {
154
+ startLoop();
155
+ }
156
+ }, [startLoop]);
157
+ var handlePointerLeave = useCallback(function () {
158
+ hoveringRef.current = false;
159
+ if (resumeTimerRef.current) {
160
+ clearTimeout(resumeTimerRef.current);
161
+ resumeTimerRef.current = null;
162
+ }
163
+ stopLoop();
164
+ }, [stopLoop]);
165
+ useEffect(function () {
166
+ var el = scrollRef.current;
167
+ if (!el || !visible) return;
168
+ var onScroll = function onScroll2() {
169
+ if (selfScrollingRef.current) {
170
+ selfScrollingRef.current = false;
171
+ return;
172
+ }
173
+ if (!hoveringRef.current) return;
174
+ stopLoop();
175
+ if (resumeTimerRef.current) clearTimeout(resumeTimerRef.current);
176
+ resumeTimerRef.current = setTimeout(function () {
177
+ resumeTimerRef.current = null;
178
+ if (hoveringRef.current) startLoop();
179
+ }, resumeDelay);
180
+ };
181
+ el.addEventListener("scroll", onScroll, {
182
+ passive: true
183
+ });
184
+ return function () {
185
+ return el.removeEventListener("scroll", onScroll);
186
+ };
187
+ }, [scrollRef, visible, startLoop, stopLoop]);
188
+ useEffect(function () {
189
+ return function () {
190
+ handlePointerLeave();
191
+ };
192
+ }, [handlePointerLeave]);
193
+ var Icon = isLeft ? CaretLeftIcon : CaretRightIcon;
194
+ return /* @__PURE__ */_jsxs(View, {
195
+ position: "absolute",
196
+ [isLeft ? "left" : "right"]: 0,
197
+ top: 0,
198
+ bottom: 0,
199
+ width: 28,
200
+ alignItems: "center",
201
+ justifyContent: "center",
202
+ zIndex: 2,
203
+ pointerEvents: visible ? "auto" : "none",
204
+ opacity: visible ? 1 : 0,
205
+ ...(transition ? {
206
+ animation: transition
207
+ } : void 0),
208
+ onPointerEnter: visible ? handlePointerEnter : void 0,
209
+ onPointerLeave: handlePointerLeave,
210
+ "data-testid": `toolbar-scroll-arrow-${direction}`,
211
+ children: [/* @__PURE__ */_jsx(LinearGradient, {
212
+ position: "absolute",
213
+ top: 0,
214
+ left: 0,
215
+ right: 0,
216
+ bottom: 0,
217
+ colors: isLeft ? ["$color3", "transparent"] : ["transparent", "$color3"],
218
+ start: isLeft ? [0, 0] : [0.6, 0],
219
+ end: isLeft ? [0.6, 0] : [1, 0]
220
+ }), /* @__PURE__ */_jsx(View, {
221
+ position: "relative",
222
+ zIndex: 1,
223
+ children: /* @__PURE__ */_jsx(Icon, {
224
+ size: 16
225
+ })
226
+ })]
227
+ });
228
+ }
229
+ export { HorizontalScrollArrow, useHorizontalScroll, useHorizontalScrollArrows };
230
+ //# sourceMappingURL=useHorizontalScroll.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["jsx","_jsx","jsxs","_jsxs","useCallback","useEffect","useRef","useState","View","LinearGradient","CaretLeftIcon","CaretRightIcon","scrollArrowThreshold","useHorizontalScroll","ref","el","current","handleWheel","handleWheel2","e","delta","deltaY","deltaX","scrollWidth","clientWidth","preventDefault","scrollLeft","isDown","isDragging","startX","handleMouseDown","handleMouseDown2","button","clientX","handleMouseUp","handleMouseUp2","stopPropagation","handleMouseMove","handleMouseMove2","x","diff","Math","abs","walk","addEventListener","passive","capture","document","removeEventListener","useHorizontalScrollArrows","arrowLeft","setArrowLeft","arrowRight","setArrowRight","arrowScrollDirRef","updateArrows","element","left","right","prev","HorizontalScrollArrow","param","direction","scrollRef","visible","transition","isLeft","animationFrameRef","lastTimeRef","resumeTimerRef","hoveringRef","activeRef","selfScrollingRef","resumeDelay","stopLoop","cancelAnimationFrame","startLoop","performance","now","tick","tick1","elapsed","px","min","max","requestAnimationFrame","openTimestampRef","handlePointerEnter","wasOverOnOpen","clearTimeout","setTimeout","handlePointerLeave","onScroll","onScroll2","Icon","position"],"sources":["../../../src/toolbar/useHorizontalScroll.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,31 @@
1
+ const defaultEditorState = {
2
+ isBold: false,
3
+ isItalic: false,
4
+ isUnderline: false,
5
+ isStrike: false,
6
+ isCode: false,
7
+ isSubscript: false,
8
+ isSuperscript: false,
9
+ isHeading1: false,
10
+ isHeading2: false,
11
+ isHeading3: false,
12
+ isHeading4: false,
13
+ isHeading5: false,
14
+ isHeading6: false,
15
+ isParagraph: true,
16
+ isBulletList: false,
17
+ isOrderedList: false,
18
+ isTaskList: false,
19
+ isBlockquote: false,
20
+ isCodeBlock: false,
21
+ isLink: false,
22
+ canUndo: false,
23
+ canRedo: false,
24
+ textAlign: "left",
25
+ textColor: null,
26
+ highlightColor: null,
27
+ wordCount: 0,
28
+ characterCount: 0
29
+ };
30
+ export { defaultEditorState };
31
+ //# sourceMappingURL=types.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["defaultEditorState","isBold","isItalic","isUnderline","isStrike","isCode","isSubscript","isSuperscript","isHeading1","isHeading2","isHeading3","isHeading4","isHeading5","isHeading6","isParagraph","isBulletList","isOrderedList","isTaskList","isBlockquote","isCodeBlock","isLink","canUndo","canRedo","textAlign","textColor","highlightColor","wordCount","characterCount"],"sources":["../../src/types.ts"],"sourcesContent":[null],"mappings":"AA8FO,MAAMA,kBAAA,GAAkC;EAC7CC,MAAA,EAAQ;EACRC,QAAA,EAAU;EACVC,WAAA,EAAa;EACbC,QAAA,EAAU;EACVC,MAAA,EAAQ;EACRC,WAAA,EAAa;EACbC,aAAA,EAAe;EACfC,UAAA,EAAY;EACZC,UAAA,EAAY;EACZC,UAAA,EAAY;EACZC,UAAA,EAAY;EACZC,UAAA,EAAY;EACZC,UAAA,EAAY;EACZC,WAAA,EAAa;EACbC,YAAA,EAAc;EACdC,aAAA,EAAe;EACfC,UAAA,EAAY;EACZC,YAAA,EAAc;EACdC,WAAA,EAAa;EACbC,MAAA,EAAQ;EACRC,OAAA,EAAS;EACTC,OAAA,EAAS;EACTC,SAAA,EAAW;EACXC,SAAA,EAAW;EACXC,cAAA,EAAgB;EAChBC,SAAA,EAAW;EACXC,cAAA,EAAgB;AAClB","ignoreList":[]}
@@ -0,0 +1,31 @@
1
+ var defaultEditorState = {
2
+ isBold: false,
3
+ isItalic: false,
4
+ isUnderline: false,
5
+ isStrike: false,
6
+ isCode: false,
7
+ isSubscript: false,
8
+ isSuperscript: false,
9
+ isHeading1: false,
10
+ isHeading2: false,
11
+ isHeading3: false,
12
+ isHeading4: false,
13
+ isHeading5: false,
14
+ isHeading6: false,
15
+ isParagraph: true,
16
+ isBulletList: false,
17
+ isOrderedList: false,
18
+ isTaskList: false,
19
+ isBlockquote: false,
20
+ isCodeBlock: false,
21
+ isLink: false,
22
+ canUndo: false,
23
+ canRedo: false,
24
+ textAlign: "left",
25
+ textColor: null,
26
+ highlightColor: null,
27
+ wordCount: 0,
28
+ characterCount: 0
29
+ };
30
+ export { defaultEditorState };
31
+ //# sourceMappingURL=types.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["defaultEditorState","isBold","isItalic","isUnderline","isStrike","isCode","isSubscript","isSuperscript","isHeading1","isHeading2","isHeading3","isHeading4","isHeading5","isHeading6","isParagraph","isBulletList","isOrderedList","isTaskList","isBlockquote","isCodeBlock","isLink","canUndo","canRedo","textAlign","textColor","highlightColor","wordCount","characterCount"],"sources":["../../src/types.ts"],"sourcesContent":[null],"mappings":"AA8FO,IAAAA,kBAAM;EACXC,MAAA,EAAQ;EACRC,QAAA,EAAU;EACVC,WAAA,EAAa;EACbC,QAAA,EAAU;EACVC,MAAA,EAAQ;EACRC,WAAA,EAAa;EACbC,aAAA,EAAe;EACfC,UAAA,EAAY;EACZC,UAAA,EAAY;EACZC,UAAA,EAAY;EACZC,UAAA,EAAY;EACZC,UAAA,EAAY;EACZC,UAAA,EAAY;EACZC,WAAA,EAAa;EACbC,YAAA,EAAc;EACdC,aAAA,EAAe;EACfC,UAAA,EAAY;EACZC,YAAA,EAAc;EACdC,WAAA,EAAa;EACbC,MAAA,EAAQ;EACRC,OAAA,EAAS;EACTC,OAAA,EAAS;EACTC,SAAA,EAAW;EACXC,SAAA,EAAW;EACXC,cAAA,EAAgB;EAChBC,SAAA,EAAW;EACXC,cAAA,EAAgB;AAClB","ignoreList":[]}
@@ -0,0 +1,107 @@
1
+ import { forwardRef, useCallback, useImperativeHandle, useMemo, useRef, useState } from "react";
2
+ import { getConfig, withStaticProperties } from "tamagui";
3
+ import { useResolvedKnobs } from "@multiplatform.one/theme";
4
+ import { clampRadiusForLargeComponent } from "@multiplatform.one/forms";
5
+ import { defaultEditorState } from "./types.mjs";
6
+ import { RichEditorContext } from "./context.mjs";
7
+ import { EditorFrame } from "./styled.mjs";
8
+ import { TiptapEditor } from "./editor/TiptapEditor.mjs";
9
+ import { FixedToolbar } from "./toolbar/FixedToolbar.mjs";
10
+ import { BubbleToolbar } from "./toolbar/BubbleToolbar.mjs";
11
+ import { ResizeHandle } from "./toolbar/ResizeHandle.mjs";
12
+ import { StatusBar } from "./toolbar/StatusBar.mjs";
13
+ import { jsx, jsxs } from "react/jsx-runtime";
14
+ const RichEditorImpl = forwardRef(({
15
+ size,
16
+ compact = false,
17
+ showToolbar = true,
18
+ showBubbleToolbar = false,
19
+ resizable = true,
20
+ showStatusBar = true,
21
+ sections,
22
+ hasError,
23
+ editable = true,
24
+ onStateChange,
25
+ ...editorProps
26
+ }, ref) => {
27
+ const internalRef = useRef(null);
28
+ const frameRef = useRef(null);
29
+ const [editorState, setEditorState] = useState(defaultEditorState);
30
+ const [editorMode, setEditorMode] = useState("richtext");
31
+ const {
32
+ knobProps
33
+ } = useResolvedKnobs({
34
+ component: "RichEditor",
35
+ size,
36
+ compact
37
+ });
38
+ const handleStateChange = useCallback(state => {
39
+ setEditorState(state);
40
+ onStateChange?.(state);
41
+ }, [onStateChange]);
42
+ useImperativeHandle(ref, () => internalRef.current, []);
43
+ const cappedRadius = clampRadiusForLargeComponent(knobProps.borderRadius.borderRadius, 4);
44
+ const {
45
+ bodyFontFamily,
46
+ headingFontFamily
47
+ } = useMemo(() => {
48
+ const fonts = getConfig()?.fonts;
49
+ const resolve = token => {
50
+ if (!token) return void 0;
51
+ const key = token.startsWith("$") ? token.slice(1) : token;
52
+ return fonts?.[key]?.family;
53
+ };
54
+ return {
55
+ bodyFontFamily: resolve(knobProps.body?.fontFamily),
56
+ headingFontFamily: resolve(knobProps.heading?.fontFamily)
57
+ };
58
+ }, [knobProps.body?.fontFamily, knobProps.heading?.fontFamily]);
59
+ const disabled = !editable;
60
+ return /* @__PURE__ */jsx(RichEditorContext.Provider, {
61
+ size: knobProps.sizeToken ?? "$true",
62
+ compact,
63
+ disabled,
64
+ children: /* @__PURE__ */jsxs(EditorFrame, {
65
+ ref: frameRef,
66
+ hasError,
67
+ borderRadius: cappedRadius,
68
+ borderWidth: knobProps.borderRadius.borderWidth,
69
+ borderColor: hasError ? "$red10" : "$color6",
70
+ backgroundColor: knobProps.inputBackground ?? "$color2",
71
+ disabled,
72
+ position: "relative",
73
+ children: [showToolbar && !disabled && editorMode === "richtext" && /* @__PURE__ */jsx(FixedToolbar, {
74
+ editorRef: internalRef,
75
+ state: editorState,
76
+ sections,
77
+ hasError
78
+ }), /* @__PURE__ */jsx(TiptapEditor, {
79
+ ref: internalRef,
80
+ ...editorProps,
81
+ editable,
82
+ onStateChange: handleStateChange,
83
+ hasError: false,
84
+ showBubbleToolbar,
85
+ bodyFontFamily,
86
+ headingFontFamily,
87
+ editorMode
88
+ }), showStatusBar && /* @__PURE__ */jsx(StatusBar, {
89
+ state: editorState,
90
+ mode: editorMode,
91
+ onModeChange: setEditorMode
92
+ }), resizable && !disabled && /* @__PURE__ */jsx(ResizeHandle, {
93
+ containerRef: frameRef,
94
+ minHeight: editorProps.minHeight ?? 150,
95
+ maxHeight: editorProps.maxHeight
96
+ })]
97
+ })
98
+ });
99
+ });
100
+ RichEditorImpl.displayName = "RichEditor";
101
+ const RichEditor = withStaticProperties(RichEditorImpl, {
102
+ FixedToolbar,
103
+ BubbleToolbar,
104
+ Editor: TiptapEditor
105
+ });
106
+ export { RichEditor };
107
+ //# sourceMappingURL=RichEditor.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["forwardRef","useCallback","useImperativeHandle","useMemo","useRef","useState","getConfig","withStaticProperties","useResolvedKnobs","clampRadiusForLargeComponent","defaultEditorState","RichEditorContext","EditorFrame","TiptapEditor","FixedToolbar","BubbleToolbar","ResizeHandle","StatusBar","jsx","jsxs","RichEditorImpl","size","compact","showToolbar","showBubbleToolbar","resizable","showStatusBar","sections","hasError","editable","onStateChange","editorProps","ref","internalRef","frameRef","editorState","setEditorState","editorMode","setEditorMode","knobProps","component","handleStateChange","state","current","cappedRadius","borderRadius","bodyFontFamily","headingFontFamily","fonts","resolve","token","key","startsWith","slice","family","body","fontFamily","heading","disabled","Provider","sizeToken","children","borderWidth","borderColor","backgroundColor","inputBackground","position","editorRef","mode","onModeChange","containerRef","minHeight","maxHeight","displayName","RichEditor","Editor"],"sources":["../../src/RichEditor.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,120 @@
1
+ "use strict";
2
+
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
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 __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
23
+ value: true
24
+ }), mod);
25
+ var RichEditor_native_exports = {};
26
+ __export(RichEditor_native_exports, {
27
+ RichEditor: () => RichEditor
28
+ });
29
+ module.exports = __toCommonJS(RichEditor_native_exports);
30
+ var import_jsx_runtime = require("react/jsx-runtime");
31
+ var import_react = require("react");
32
+ var import_tamagui = require("tamagui");
33
+ var import_theme = require("@multiplatform.one/theme");
34
+ var import_forms = require("@multiplatform.one/forms");
35
+ var import_types = require("./types.native.js");
36
+ var import_context = require("./context.native.js");
37
+ var import_styled = require("./styled.native.js");
38
+ var import_FixedToolbar = require("./toolbar/FixedToolbar.native.js");
39
+ function NativeBubbleToolbar() {
40
+ return null;
41
+ }
42
+ var TentapEditor = null;
43
+ try {
44
+ TentapEditor = require("./editor/TentapEditor.native").TentapEditor;
45
+ } catch (unused) {}
46
+ var RichEditorImpl = /* @__PURE__ */(0, import_react.forwardRef)(function (param, ref) {
47
+ var {
48
+ size,
49
+ compact = false,
50
+ showToolbar = true,
51
+ showBubbleToolbar: _showBubbleToolbar,
52
+ sections,
53
+ hasError,
54
+ editable = true,
55
+ onStateChange,
56
+ minHeight = 150,
57
+ ...editorProps
58
+ } = param;
59
+ var _knobProps_sizeToken;
60
+ var internalRef = (0, import_react.useRef)(null);
61
+ var [editorState, setEditorState] = (0, import_react.useState)(import_types.defaultEditorState);
62
+ var {
63
+ knobProps
64
+ } = (0, import_theme.useResolvedKnobs)({
65
+ component: "RichEditor",
66
+ size,
67
+ compact
68
+ });
69
+ var handleStateChange = (0, import_react.useCallback)(function (state) {
70
+ setEditorState(state);
71
+ onStateChange === null || onStateChange === void 0 ? void 0 : onStateChange(state);
72
+ }, [onStateChange]);
73
+ (0, import_react.useImperativeHandle)(ref, function () {
74
+ return internalRef.current;
75
+ }, []);
76
+ var cappedRadius = (0, import_forms.clampRadiusForLargeComponent)(knobProps.borderRadius.borderRadius, 4);
77
+ var disabled = !editable;
78
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_context.RichEditorContext.Provider, {
79
+ size: (_knobProps_sizeToken = knobProps.sizeToken) !== null && _knobProps_sizeToken !== void 0 ? _knobProps_sizeToken : "$true",
80
+ compact,
81
+ disabled,
82
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_styled.EditorFrame, {
83
+ hasError,
84
+ borderRadius: cappedRadius,
85
+ borderWidth: knobProps.borderRadius.borderWidth,
86
+ borderColor: hasError ? "$red10" : "$color6",
87
+ disabled,
88
+ children: [showToolbar && !disabled && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_FixedToolbar.FixedToolbar, {
89
+ editorRef: internalRef,
90
+ state: editorState,
91
+ sections,
92
+ hasError
93
+ }), TentapEditor ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(TentapEditor, {
94
+ ref: internalRef,
95
+ minHeight,
96
+ ...editorProps,
97
+ editable,
98
+ onStateChange: handleStateChange,
99
+ hasError: false
100
+ }) : /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
101
+ minHeight,
102
+ padding: knobProps.panelPadding.padding,
103
+ justifyContent: "center",
104
+ alignItems: "center",
105
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
106
+ color: "$colorSubtle",
107
+ fontSize: knobProps.sizeToken,
108
+ children: "Rich text editor requires a development build"
109
+ })
110
+ })]
111
+ })
112
+ });
113
+ });
114
+ RichEditorImpl.displayName = "RichEditor";
115
+ var RichEditor = (0, import_tamagui.withStaticProperties)(RichEditorImpl, {
116
+ FixedToolbar: import_FixedToolbar.FixedToolbar,
117
+ BubbleToolbar: NativeBubbleToolbar,
118
+ Editor: TentapEditor !== null && TentapEditor !== void 0 ? TentapEditor : import_tamagui.View
119
+ });
120
+ //# sourceMappingURL=RichEditor.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["RichEditor_native_exports","__export","RichEditor","module","exports","__toCommonJS","import_jsx_runtime","require","import_react","import_tamagui","import_theme","import_forms","import_types","import_context","import_styled","import_FixedToolbar","NativeBubbleToolbar","TentapEditor","unused","RichEditorImpl","forwardRef","param","ref","size","compact","showToolbar","showBubbleToolbar","_showBubbleToolbar","sections","hasError","editable","onStateChange","minHeight","editorProps","_knobProps_sizeToken","internalRef","useRef","editorState","setEditorState","useState","defaultEditorState","knobProps","useResolvedKnobs","component","handleStateChange","useCallback","state","useImperativeHandle","current","cappedRadius","clampRadiusForLargeComponent","borderRadius","disabled","jsx","RichEditorContext","Provider","sizeToken","children","jsxs","EditorFrame","borderWidth","borderColor","FixedToolbar","editorRef","View","padding","panelPadding","justifyContent","alignItems","Text","color","fontSize","displayName","withStaticProperties","BubbleToolbar","Editor"],"sources":["../../src/RichEditor.native.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}