@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,232 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all) __defProp(target, name, {
7
+ get: all[name],
8
+ enumerable: true
9
+ });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
14
+ get: () => from[key],
15
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
16
+ });
17
+ }
18
+ return to;
19
+ };
20
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
21
+ value: true
22
+ }), mod);
23
+ var TableBubble_exports = {};
24
+ __export(TableBubble_exports, {
25
+ TableBubble: () => TableBubble
26
+ });
27
+ module.exports = __toCommonJS(TableBubble_exports);
28
+ var import_react = require("react");
29
+ var import_menus = require("@tiptap/react/menus");
30
+ var import_theme = require("@multiplatform.one/theme");
31
+ var import_tamagui = require("tamagui");
32
+ var import_styled = require("../styled.cjs");
33
+ var import_ToolbarButton = require("./ToolbarButton.cjs");
34
+ var import_jsx_runtime = require("react/jsx-runtime");
35
+ function RowPlusIcon() {
36
+ return /* @__PURE__ */(0, import_jsx_runtime.jsxs)("svg", {
37
+ width: "14",
38
+ height: "14",
39
+ viewBox: "0 0 24 24",
40
+ fill: "none",
41
+ stroke: "currentColor",
42
+ strokeWidth: "2",
43
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)("line", {
44
+ x1: "12",
45
+ y1: "5",
46
+ x2: "12",
47
+ y2: "19"
48
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)("line", {
49
+ x1: "5",
50
+ y1: "12",
51
+ x2: "19",
52
+ y2: "12"
53
+ })]
54
+ });
55
+ }
56
+ function TrashIcon() {
57
+ return /* @__PURE__ */(0, import_jsx_runtime.jsxs)("svg", {
58
+ width: "14",
59
+ height: "14",
60
+ viewBox: "0 0 24 24",
61
+ fill: "none",
62
+ stroke: "currentColor",
63
+ strokeWidth: "2",
64
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)("polyline", {
65
+ points: "3 6 5 6 21 6"
66
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)("path", {
67
+ d: "M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"
68
+ })]
69
+ });
70
+ }
71
+ const ROW_ACTIONS = [{
72
+ label: "Add row above",
73
+ action: e => e.chain().focus().addRowBefore().run()
74
+ }, {
75
+ label: "Add row below",
76
+ action: e => e.chain().focus().addRowAfter().run()
77
+ }, {
78
+ label: "Delete row",
79
+ action: e => e.chain().focus().deleteRow().run()
80
+ }];
81
+ const COL_ACTIONS = [{
82
+ label: "Add column before",
83
+ action: e => e.chain().focus().addColumnBefore().run()
84
+ }, {
85
+ label: "Add column after",
86
+ action: e => e.chain().focus().addColumnAfter().run()
87
+ }, {
88
+ label: "Delete column",
89
+ action: e => e.chain().focus().deleteColumn().run()
90
+ }];
91
+ const TABLE_ACTIONS = [{
92
+ label: "Toggle header row",
93
+ action: e => e.chain().focus().toggleHeaderRow().run()
94
+ }, {
95
+ label: "Merge cells",
96
+ action: e => e.chain().focus().mergeCells().run()
97
+ }, {
98
+ label: "Split cell",
99
+ action: e => e.chain().focus().splitCell().run()
100
+ }, {
101
+ label: "Delete table",
102
+ action: e => e.chain().focus().deleteTable().run()
103
+ }];
104
+ function TableBubble({
105
+ editor
106
+ }) {
107
+ const {
108
+ knobProps
109
+ } = (0, import_theme.useResolvedKnobs)();
110
+ const [menuOpen, setMenuOpen] = (0, import_react.useState)(false);
111
+ if (!editor) return null;
112
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_menus.BubbleMenu, {
113
+ editor,
114
+ shouldShow: ({
115
+ editor: e
116
+ }) => e.isActive("table"),
117
+ options: {
118
+ placement: "top"
119
+ },
120
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
121
+ backgroundColor: "$background",
122
+ borderWidth: 1,
123
+ borderColor: "$borderColor",
124
+ borderRadius: knobProps.borderRadius.borderRadius,
125
+ padding: "$1",
126
+ gap: "$1",
127
+ alignItems: "center",
128
+ elevation: knobProps.elevation,
129
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_ToolbarButton.ToolbarButton, {
130
+ onPress: () => editor.chain().focus().addRowAfter().run(),
131
+ "aria-label": "Add row",
132
+ tooltip: "Add row below",
133
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(RowPlusIcon, {})
134
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_ToolbarButton.ToolbarButton, {
135
+ onPress: () => editor.chain().focus().addColumnAfter().run(),
136
+ "aria-label": "Add column",
137
+ tooltip: "Add column after",
138
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
139
+ fontSize: 11,
140
+ fontWeight: "700",
141
+ children: "+Col"
142
+ })
143
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.Popover, {
144
+ open: menuOpen,
145
+ onOpenChange: setMenuOpen,
146
+ placement: "bottom",
147
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Popover.Trigger, {
148
+ asChild: true,
149
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_ToolbarButton.ToolbarDropdownButton, {
150
+ onPress: () => setMenuOpen(true),
151
+ "aria-label": "Table options",
152
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
153
+ fontSize: 12,
154
+ children: "Table"
155
+ })
156
+ })
157
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Popover.Content, {
158
+ ...knobProps.panelPadding,
159
+ backgroundColor: "$background",
160
+ borderWidth: 1,
161
+ borderColor: "$borderColor",
162
+ borderRadius: knobProps.borderRadius.borderRadius,
163
+ elevation: knobProps.elevation,
164
+ enterStyle: {
165
+ opacity: 0,
166
+ y: -5
167
+ },
168
+ exitStyle: {
169
+ opacity: 0,
170
+ y: -5
171
+ },
172
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {
173
+ gap: "$0.5",
174
+ minWidth: 180,
175
+ children: [ROW_ACTIONS.map(a => /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_styled.DropdownMenuItemFrame, {
176
+ onPress: () => {
177
+ a.action(editor);
178
+ setMenuOpen(false);
179
+ },
180
+ "aria-label": a.label,
181
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
182
+ fontSize: 13,
183
+ children: a.label
184
+ })
185
+ }, a.label)), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.XStack, {
186
+ paddingVertical: "$0.5",
187
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_styled.ToolbarSeparatorFrame, {
188
+ vertical: false,
189
+ width: "100%",
190
+ height: 1,
191
+ marginHorizontal: 0
192
+ })
193
+ }), COL_ACTIONS.map(a => /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_styled.DropdownMenuItemFrame, {
194
+ onPress: () => {
195
+ a.action(editor);
196
+ setMenuOpen(false);
197
+ },
198
+ "aria-label": a.label,
199
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
200
+ fontSize: 13,
201
+ children: a.label
202
+ })
203
+ }, a.label)), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.XStack, {
204
+ paddingVertical: "$0.5",
205
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_styled.ToolbarSeparatorFrame, {
206
+ vertical: false,
207
+ width: "100%",
208
+ height: 1,
209
+ marginHorizontal: 0
210
+ })
211
+ }), TABLE_ACTIONS.map(a => /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_styled.DropdownMenuItemFrame, {
212
+ onPress: () => {
213
+ a.action(editor);
214
+ setMenuOpen(false);
215
+ },
216
+ "aria-label": a.label,
217
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
218
+ fontSize: 13,
219
+ children: a.label
220
+ })
221
+ }, a.label))]
222
+ })
223
+ })]
224
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_ToolbarButton.ToolbarButton, {
225
+ onPress: () => editor.chain().focus().deleteTable().run(),
226
+ "aria-label": "Delete table",
227
+ tooltip: "Delete table",
228
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(TrashIcon, {})
229
+ })]
230
+ })
231
+ });
232
+ }
@@ -0,0 +1,273 @@
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 TableBubble_exports = {};
26
+ __export(TableBubble_exports, {
27
+ TableBubble: () => TableBubble
28
+ });
29
+ module.exports = __toCommonJS(TableBubble_exports);
30
+ var import_jsx_runtime = require("react/jsx-runtime");
31
+ var import_react = require("react");
32
+ var import_menus = require("@tiptap/react/menus");
33
+ var import_theme = require("@multiplatform.one/theme");
34
+ var import_tamagui = require("tamagui");
35
+ var import_styled = require("../styled.native.js");
36
+ var import_ToolbarButton = require("./ToolbarButton.native.js");
37
+ function RowPlusIcon() {
38
+ return /* @__PURE__ */(0, import_jsx_runtime.jsxs)("svg", {
39
+ width: "14",
40
+ height: "14",
41
+ viewBox: "0 0 24 24",
42
+ fill: "none",
43
+ stroke: "currentColor",
44
+ strokeWidth: "2",
45
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)("line", {
46
+ x1: "12",
47
+ y1: "5",
48
+ x2: "12",
49
+ y2: "19"
50
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)("line", {
51
+ x1: "5",
52
+ y1: "12",
53
+ x2: "19",
54
+ y2: "12"
55
+ })]
56
+ });
57
+ }
58
+ function TrashIcon() {
59
+ return /* @__PURE__ */(0, import_jsx_runtime.jsxs)("svg", {
60
+ width: "14",
61
+ height: "14",
62
+ viewBox: "0 0 24 24",
63
+ fill: "none",
64
+ stroke: "currentColor",
65
+ strokeWidth: "2",
66
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)("polyline", {
67
+ points: "3 6 5 6 21 6"
68
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)("path", {
69
+ d: "M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"
70
+ })]
71
+ });
72
+ }
73
+ var ROW_ACTIONS = [{
74
+ label: "Add row above",
75
+ action: function action(e) {
76
+ return e.chain().focus().addRowBefore().run();
77
+ }
78
+ }, {
79
+ label: "Add row below",
80
+ action: function action2(e) {
81
+ return e.chain().focus().addRowAfter().run();
82
+ }
83
+ }, {
84
+ label: "Delete row",
85
+ action: function action3(e) {
86
+ return e.chain().focus().deleteRow().run();
87
+ }
88
+ }];
89
+ var COL_ACTIONS = [{
90
+ label: "Add column before",
91
+ action: function action4(e) {
92
+ return e.chain().focus().addColumnBefore().run();
93
+ }
94
+ }, {
95
+ label: "Add column after",
96
+ action: function action5(e) {
97
+ return e.chain().focus().addColumnAfter().run();
98
+ }
99
+ }, {
100
+ label: "Delete column",
101
+ action: function action6(e) {
102
+ return e.chain().focus().deleteColumn().run();
103
+ }
104
+ }];
105
+ var TABLE_ACTIONS = [{
106
+ label: "Toggle header row",
107
+ action: function action7(e) {
108
+ return e.chain().focus().toggleHeaderRow().run();
109
+ }
110
+ }, {
111
+ label: "Merge cells",
112
+ action: function action8(e) {
113
+ return e.chain().focus().mergeCells().run();
114
+ }
115
+ }, {
116
+ label: "Split cell",
117
+ action: function action9(e) {
118
+ return e.chain().focus().splitCell().run();
119
+ }
120
+ }, {
121
+ label: "Delete table",
122
+ action: function action10(e) {
123
+ return e.chain().focus().deleteTable().run();
124
+ }
125
+ }];
126
+ function TableBubble(param) {
127
+ var {
128
+ editor
129
+ } = param;
130
+ var {
131
+ knobProps
132
+ } = (0, import_theme.useResolvedKnobs)();
133
+ var [menuOpen, setMenuOpen] = (0, import_react.useState)(false);
134
+ if (!editor) return null;
135
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_menus.BubbleMenu, {
136
+ editor,
137
+ shouldShow: function shouldShow(param2) {
138
+ var {
139
+ editor: e
140
+ } = param2;
141
+ return e.isActive("table");
142
+ },
143
+ options: {
144
+ placement: "top"
145
+ },
146
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
147
+ backgroundColor: "$background",
148
+ borderWidth: 1,
149
+ borderColor: "$borderColor",
150
+ borderRadius: knobProps.borderRadius.borderRadius,
151
+ padding: "$1",
152
+ gap: "$1",
153
+ alignItems: "center",
154
+ elevation: knobProps.elevation,
155
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_ToolbarButton.ToolbarButton, {
156
+ onPress: function onPress() {
157
+ return editor.chain().focus().addRowAfter().run();
158
+ },
159
+ "aria-label": "Add row",
160
+ tooltip: "Add row below",
161
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(RowPlusIcon, {})
162
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_ToolbarButton.ToolbarButton, {
163
+ onPress: function onPress() {
164
+ return editor.chain().focus().addColumnAfter().run();
165
+ },
166
+ "aria-label": "Add column",
167
+ tooltip: "Add column after",
168
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
169
+ fontSize: 11,
170
+ fontWeight: "700",
171
+ children: "+Col"
172
+ })
173
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.Popover, {
174
+ open: menuOpen,
175
+ onOpenChange: setMenuOpen,
176
+ placement: "bottom",
177
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Popover.Trigger, {
178
+ asChild: true,
179
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_ToolbarButton.ToolbarDropdownButton, {
180
+ onPress: function onPress() {
181
+ return setMenuOpen(true);
182
+ },
183
+ "aria-label": "Table options",
184
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
185
+ fontSize: 12,
186
+ children: "Table"
187
+ })
188
+ })
189
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Popover.Content, {
190
+ ...knobProps.panelPadding,
191
+ backgroundColor: "$background",
192
+ borderWidth: 1,
193
+ borderColor: "$borderColor",
194
+ borderRadius: knobProps.borderRadius.borderRadius,
195
+ elevation: knobProps.elevation,
196
+ enterStyle: {
197
+ opacity: 0,
198
+ y: -5
199
+ },
200
+ exitStyle: {
201
+ opacity: 0,
202
+ y: -5
203
+ },
204
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {
205
+ gap: "$0.5",
206
+ minWidth: 180,
207
+ children: [ROW_ACTIONS.map(function (a) {
208
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_styled.DropdownMenuItemFrame, {
209
+ onPress: function onPress() {
210
+ a.action(editor);
211
+ setMenuOpen(false);
212
+ },
213
+ "aria-label": a.label,
214
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
215
+ fontSize: 13,
216
+ children: a.label
217
+ })
218
+ }, a.label);
219
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.XStack, {
220
+ paddingVertical: "$0.5",
221
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_styled.ToolbarSeparatorFrame, {
222
+ vertical: false,
223
+ width: "100%",
224
+ height: 1,
225
+ marginHorizontal: 0
226
+ })
227
+ }), COL_ACTIONS.map(function (a) {
228
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_styled.DropdownMenuItemFrame, {
229
+ onPress: function onPress() {
230
+ a.action(editor);
231
+ setMenuOpen(false);
232
+ },
233
+ "aria-label": a.label,
234
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
235
+ fontSize: 13,
236
+ children: a.label
237
+ })
238
+ }, a.label);
239
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.XStack, {
240
+ paddingVertical: "$0.5",
241
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_styled.ToolbarSeparatorFrame, {
242
+ vertical: false,
243
+ width: "100%",
244
+ height: 1,
245
+ marginHorizontal: 0
246
+ })
247
+ }), TABLE_ACTIONS.map(function (a) {
248
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_styled.DropdownMenuItemFrame, {
249
+ onPress: function onPress() {
250
+ a.action(editor);
251
+ setMenuOpen(false);
252
+ },
253
+ "aria-label": a.label,
254
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
255
+ fontSize: 13,
256
+ children: a.label
257
+ })
258
+ }, a.label);
259
+ })]
260
+ })
261
+ })]
262
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_ToolbarButton.ToolbarButton, {
263
+ onPress: function onPress() {
264
+ return editor.chain().focus().deleteTable().run();
265
+ },
266
+ "aria-label": "Delete table",
267
+ tooltip: "Delete table",
268
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(TrashIcon, {})
269
+ })]
270
+ })
271
+ });
272
+ }
273
+ //# sourceMappingURL=TableBubble.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","TableBubble_exports","__export","TableBubble","module","exports","import_jsx_runtime","require","import_react","import_menus","import_theme","import_tamagui","import_styled","import_ToolbarButton","RowPlusIcon","jsxs","width","height","viewBox","fill","stroke","strokeWidth","children","jsx","x1","y1","x2","y2","TrashIcon","points","d","ROW_ACTIONS","label","action","e","chain","focus","addRowBefore","run","action2","addRowAfter","action3","deleteRow","COL_ACTIONS","action4","addColumnBefore","action5","addColumnAfter","action6","deleteColumn","TABLE_ACTIONS","action7","toggleHeaderRow","action8","mergeCells","action9","splitCell","action10","deleteTable","param","editor","knobProps","useResolvedKnobs","menuOpen","setMenuOpen","useState","BubbleMenu","shouldShow","param2","isActive","options","placement","XStack","backgroundColor","borderWidth","borderColor","borderRadius","padding","gap","alignItems","elevation","ToolbarButton","onPress","tooltip","Text","fontSize","fontWeight","Popover","open","onOpenChange","Trigger","asChild","ToolbarDropdownButton","Content","panelPadding"],"sources":["../../../src/toolbar/TableBubble.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,105 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all) __defProp(target, name, {
7
+ get: all[name],
8
+ enumerable: true
9
+ });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
14
+ get: () => from[key],
15
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
16
+ });
17
+ }
18
+ return to;
19
+ };
20
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
21
+ value: true
22
+ }), mod);
23
+ var ToolbarButton_exports = {};
24
+ __export(ToolbarButton_exports, {
25
+ ToolbarButton: () => ToolbarButton,
26
+ ToolbarDropdownButton: () => ToolbarDropdownButton
27
+ });
28
+ module.exports = __toCommonJS(ToolbarButton_exports);
29
+ var import_tamagui = require("tamagui");
30
+ var import_forms = require("@multiplatform.one/forms");
31
+ var import_components = require("@multiplatform.one/components");
32
+ var import_react = require("@phosphor-icons/react");
33
+ var import_context = require("../context.cjs");
34
+ var import_jsx_runtime = require("react/jsx-runtime");
35
+ const BUTTON_SIZE = 30;
36
+ function ToolbarButton({
37
+ active,
38
+ disabled,
39
+ onPress,
40
+ children,
41
+ tooltip,
42
+ ...props
43
+ }) {
44
+ const ctx = import_context.RichEditorContext.useStyledContext();
45
+ const isDisabled = disabled ?? ctx.disabled;
46
+ const button = /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
47
+ chromeless: true,
48
+ disabled: isDisabled,
49
+ onPress,
50
+ width: BUTTON_SIZE,
51
+ height: BUTTON_SIZE,
52
+ padding: 0,
53
+ borderRadius: "$2",
54
+ ...(active ? {
55
+ theme: "active"
56
+ } : void 0),
57
+ ...props,
58
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
59
+ alignItems: "center",
60
+ justifyContent: "center",
61
+ width: "100%",
62
+ height: "100%",
63
+ children
64
+ })
65
+ });
66
+ if (tooltip) {
67
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.Tooltip, {
68
+ content: tooltip,
69
+ placement: "bottom",
70
+ delay: 400,
71
+ children: button
72
+ });
73
+ }
74
+ return button;
75
+ }
76
+ function ToolbarDropdownButton({
77
+ active,
78
+ disabled,
79
+ onPress,
80
+ children,
81
+ ...props
82
+ }) {
83
+ const ctx = import_context.RichEditorContext.useStyledContext();
84
+ const isDisabled = disabled ?? ctx.disabled;
85
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
86
+ chromeless: true,
87
+ disabled: isDisabled,
88
+ onPress,
89
+ height: BUTTON_SIZE,
90
+ paddingHorizontal: "$2",
91
+ paddingVertical: 0,
92
+ borderRadius: "$2",
93
+ ...(active ? {
94
+ theme: "active"
95
+ } : void 0),
96
+ ...props,
97
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
98
+ alignItems: "center",
99
+ gap: "$1",
100
+ children: [children, /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_react.CaretDownIcon, {
101
+ size: 10
102
+ })]
103
+ })
104
+ });
105
+ }