@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,176 @@
1
+ import { useState } from "react";
2
+ import { useResolvedKnobs } from "@multiplatform.one/theme";
3
+ import { Popover, Text, XStack, YStack } from "tamagui";
4
+ import { DropdownMenuItemFrame, ToolbarSeparatorFrame } from "../styled.mjs";
5
+ import { ToolbarButton } from "./ToolbarButton.mjs";
6
+ import { SubscriptIcon, SuperscriptIcon, AlignLeftIcon, AlignCenterIcon, AlignRightIcon, AlignJustifyIcon, HorizontalRuleIcon, ClearFormattingIcon } from "./icons.mjs";
7
+ import { SHORTCUTS } from "./shortcuts.mjs";
8
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
9
+ const INLINE_ITEMS = [{
10
+ label: SHORTCUTS.subscript,
11
+ command: "subscript",
12
+ icon: SubscriptIcon,
13
+ isActive: s => s.isSubscript
14
+ }, {
15
+ label: SHORTCUTS.superscript,
16
+ command: "superscript",
17
+ icon: SuperscriptIcon,
18
+ isActive: s => s.isSuperscript
19
+ }];
20
+ const ALIGN_ITEMS = [{
21
+ label: SHORTCUTS.alignLeft,
22
+ command: "alignLeft",
23
+ icon: AlignLeftIcon,
24
+ isActive: s => s.textAlign === "left"
25
+ }, {
26
+ label: SHORTCUTS.alignCenter,
27
+ command: "alignCenter",
28
+ icon: AlignCenterIcon,
29
+ isActive: s => s.textAlign === "center"
30
+ }, {
31
+ label: SHORTCUTS.alignRight,
32
+ command: "alignRight",
33
+ icon: AlignRightIcon,
34
+ isActive: s => s.textAlign === "right"
35
+ }, {
36
+ label: SHORTCUTS.alignJustify,
37
+ command: "alignJustify",
38
+ icon: AlignJustifyIcon,
39
+ isActive: s => s.textAlign === "justify"
40
+ }];
41
+ const BLOCK_ITEMS = [{
42
+ label: SHORTCUTS.horizontalRule,
43
+ command: "horizontalRule",
44
+ icon: HorizontalRuleIcon
45
+ }, {
46
+ label: SHORTCUTS.clearFormatting,
47
+ command: "clearFormatting",
48
+ icon: ClearFormattingIcon
49
+ }];
50
+ function MoreIcon() {
51
+ return /* @__PURE__ */jsxs("svg", {
52
+ width: "16",
53
+ height: "16",
54
+ viewBox: "0 0 24 24",
55
+ fill: "currentColor",
56
+ stroke: "none",
57
+ children: [/* @__PURE__ */jsx("circle", {
58
+ cx: "5",
59
+ cy: "12",
60
+ r: "2"
61
+ }), /* @__PURE__ */jsx("circle", {
62
+ cx: "12",
63
+ cy: "12",
64
+ r: "2"
65
+ }), /* @__PURE__ */jsx("circle", {
66
+ cx: "19",
67
+ cy: "12",
68
+ r: "2"
69
+ })]
70
+ });
71
+ }
72
+ function preventFocusTheft(e) {
73
+ e.preventDefault();
74
+ }
75
+ function ItemSection({
76
+ items,
77
+ state,
78
+ onSelect
79
+ }) {
80
+ return /* @__PURE__ */jsx(Fragment, {
81
+ children: items.map(item => {
82
+ const Icon = item.icon;
83
+ return /* @__PURE__ */jsxs(DropdownMenuItemFrame, {
84
+ active: item.isActive?.(state),
85
+ onMouseDown: preventFocusTheft,
86
+ onPress: () => onSelect(item.command, item.payload),
87
+ "aria-label": item.label,
88
+ children: [/* @__PURE__ */jsx(Icon, {}), /* @__PURE__ */jsx(Text, {
89
+ fontSize: 13,
90
+ children: item.label
91
+ })]
92
+ }, item.command);
93
+ })
94
+ });
95
+ }
96
+ function MoreDropdown({
97
+ editorRef,
98
+ state,
99
+ disabled
100
+ }) {
101
+ const {
102
+ knobProps
103
+ } = useResolvedKnobs();
104
+ const [open, setOpen] = useState(false);
105
+ const handleSelect = (command, payload) => {
106
+ editorRef.current?.executeCommand(command, payload);
107
+ if (command === "horizontalRule" || command === "clearFormatting") {
108
+ setOpen(false);
109
+ }
110
+ };
111
+ return /* @__PURE__ */jsxs(Popover, {
112
+ open,
113
+ onOpenChange: setOpen,
114
+ placement: "bottom-end",
115
+ children: [/* @__PURE__ */jsx(Popover.Trigger, {
116
+ asChild: true,
117
+ children: /* @__PURE__ */jsx(ToolbarButton, {
118
+ disabled,
119
+ onPress: () => setOpen(true),
120
+ "aria-label": "More formatting options",
121
+ tooltip: "More",
122
+ children: /* @__PURE__ */jsx(MoreIcon, {})
123
+ })
124
+ }), /* @__PURE__ */jsx(Popover.Content, {
125
+ ...knobProps.panelPadding,
126
+ backgroundColor: "$background",
127
+ borderWidth: 1,
128
+ borderColor: "$borderColor",
129
+ borderRadius: knobProps.borderRadius.borderRadius,
130
+ elevation: knobProps.elevation,
131
+ enterStyle: {
132
+ opacity: 0,
133
+ y: -5
134
+ },
135
+ exitStyle: {
136
+ opacity: 0,
137
+ y: -5
138
+ },
139
+ children: /* @__PURE__ */jsxs(YStack, {
140
+ gap: "$1",
141
+ minWidth: 200,
142
+ children: [/* @__PURE__ */jsx(ItemSection, {
143
+ items: INLINE_ITEMS,
144
+ state,
145
+ onSelect: handleSelect
146
+ }), /* @__PURE__ */jsx(XStack, {
147
+ paddingVertical: "$1",
148
+ children: /* @__PURE__ */jsx(ToolbarSeparatorFrame, {
149
+ vertical: false,
150
+ width: "100%",
151
+ height: 1,
152
+ marginHorizontal: 0
153
+ })
154
+ }), /* @__PURE__ */jsx(ItemSection, {
155
+ items: ALIGN_ITEMS,
156
+ state,
157
+ onSelect: handleSelect
158
+ }), /* @__PURE__ */jsx(XStack, {
159
+ paddingVertical: "$1",
160
+ children: /* @__PURE__ */jsx(ToolbarSeparatorFrame, {
161
+ vertical: false,
162
+ width: "100%",
163
+ height: 1,
164
+ marginHorizontal: 0
165
+ })
166
+ }), /* @__PURE__ */jsx(ItemSection, {
167
+ items: BLOCK_ITEMS,
168
+ state,
169
+ onSelect: handleSelect
170
+ })]
171
+ })
172
+ })]
173
+ });
174
+ }
175
+ export { MoreDropdown };
176
+ //# sourceMappingURL=MoreDropdown.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useState","useResolvedKnobs","Popover","Text","XStack","YStack","DropdownMenuItemFrame","ToolbarSeparatorFrame","ToolbarButton","SubscriptIcon","SuperscriptIcon","AlignLeftIcon","AlignCenterIcon","AlignRightIcon","AlignJustifyIcon","HorizontalRuleIcon","ClearFormattingIcon","SHORTCUTS","Fragment","jsx","jsxs","INLINE_ITEMS","label","subscript","command","icon","isActive","s","isSubscript","superscript","isSuperscript","ALIGN_ITEMS","alignLeft","textAlign","alignCenter","alignRight","alignJustify","BLOCK_ITEMS","horizontalRule","clearFormatting","MoreIcon","width","height","viewBox","fill","stroke","children","cx","cy","r","preventFocusTheft","e","preventDefault","ItemSection","items","state","onSelect","map","item","Icon","active","onMouseDown","onPress","payload","fontSize","MoreDropdown","editorRef","disabled","knobProps","open","setOpen","handleSelect","current","executeCommand","onOpenChange","placement","Trigger","asChild","tooltip","Content","panelPadding","backgroundColor","borderWidth","borderColor","borderRadius","elevation","enterStyle","opacity","y","exitStyle","gap","minWidth","paddingVertical","vertical","marginHorizontal"],"sources":["../../../src/toolbar/MoreDropdown.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,224 @@
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 MoreDropdown_exports = {};
26
+ __export(MoreDropdown_exports, {
27
+ MoreDropdown: () => MoreDropdown
28
+ });
29
+ module.exports = __toCommonJS(MoreDropdown_exports);
30
+ var import_jsx_runtime = require("react/jsx-runtime");
31
+ var import_react = require("react");
32
+ var import_theme = require("@multiplatform.one/theme");
33
+ var import_tamagui = require("tamagui");
34
+ var import_styled = require("../styled.native.js");
35
+ var import_ToolbarButton = require("./ToolbarButton.native.js");
36
+ var import_icons = require("./icons.native.js");
37
+ var import_shortcuts = require("./shortcuts.native.js");
38
+ var INLINE_ITEMS = [{
39
+ label: import_shortcuts.SHORTCUTS.subscript,
40
+ command: "subscript",
41
+ icon: import_icons.SubscriptIcon,
42
+ isActive: function isActive(s) {
43
+ return s.isSubscript;
44
+ }
45
+ }, {
46
+ label: import_shortcuts.SHORTCUTS.superscript,
47
+ command: "superscript",
48
+ icon: import_icons.SuperscriptIcon,
49
+ isActive: function isActive2(s) {
50
+ return s.isSuperscript;
51
+ }
52
+ }];
53
+ var ALIGN_ITEMS = [{
54
+ label: import_shortcuts.SHORTCUTS.alignLeft,
55
+ command: "alignLeft",
56
+ icon: import_icons.AlignLeftIcon,
57
+ isActive: function isActive3(s) {
58
+ return s.textAlign === "left";
59
+ }
60
+ }, {
61
+ label: import_shortcuts.SHORTCUTS.alignCenter,
62
+ command: "alignCenter",
63
+ icon: import_icons.AlignCenterIcon,
64
+ isActive: function isActive4(s) {
65
+ return s.textAlign === "center";
66
+ }
67
+ }, {
68
+ label: import_shortcuts.SHORTCUTS.alignRight,
69
+ command: "alignRight",
70
+ icon: import_icons.AlignRightIcon,
71
+ isActive: function isActive5(s) {
72
+ return s.textAlign === "right";
73
+ }
74
+ }, {
75
+ label: import_shortcuts.SHORTCUTS.alignJustify,
76
+ command: "alignJustify",
77
+ icon: import_icons.AlignJustifyIcon,
78
+ isActive: function isActive6(s) {
79
+ return s.textAlign === "justify";
80
+ }
81
+ }];
82
+ var BLOCK_ITEMS = [{
83
+ label: import_shortcuts.SHORTCUTS.horizontalRule,
84
+ command: "horizontalRule",
85
+ icon: import_icons.HorizontalRuleIcon
86
+ }, {
87
+ label: import_shortcuts.SHORTCUTS.clearFormatting,
88
+ command: "clearFormatting",
89
+ icon: import_icons.ClearFormattingIcon
90
+ }];
91
+ function MoreIcon() {
92
+ return /* @__PURE__ */(0, import_jsx_runtime.jsxs)("svg", {
93
+ width: "16",
94
+ height: "16",
95
+ viewBox: "0 0 24 24",
96
+ fill: "currentColor",
97
+ stroke: "none",
98
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)("circle", {
99
+ cx: "5",
100
+ cy: "12",
101
+ r: "2"
102
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)("circle", {
103
+ cx: "12",
104
+ cy: "12",
105
+ r: "2"
106
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)("circle", {
107
+ cx: "19",
108
+ cy: "12",
109
+ r: "2"
110
+ })]
111
+ });
112
+ }
113
+ function preventFocusTheft(e) {
114
+ e.preventDefault();
115
+ }
116
+ function ItemSection(param) {
117
+ var {
118
+ items,
119
+ state,
120
+ onSelect
121
+ } = param;
122
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, {
123
+ children: items.map(function (item) {
124
+ var _item_isActive;
125
+ var Icon = item.icon;
126
+ return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_styled.DropdownMenuItemFrame, {
127
+ active: (_item_isActive = item.isActive) === null || _item_isActive === void 0 ? void 0 : _item_isActive.call(item, state),
128
+ onMouseDown: preventFocusTheft,
129
+ onPress: function onPress() {
130
+ return onSelect(item.command, item.payload);
131
+ },
132
+ "aria-label": item.label,
133
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(Icon, {}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
134
+ fontSize: 13,
135
+ children: item.label
136
+ })]
137
+ }, item.command);
138
+ })
139
+ });
140
+ }
141
+ function MoreDropdown(param) {
142
+ var {
143
+ editorRef,
144
+ state,
145
+ disabled
146
+ } = param;
147
+ var {
148
+ knobProps
149
+ } = (0, import_theme.useResolvedKnobs)();
150
+ var [open, setOpen] = (0, import_react.useState)(false);
151
+ var handleSelect = function handleSelect2(command, payload) {
152
+ var _editorRef_current;
153
+ (_editorRef_current = editorRef.current) === null || _editorRef_current === void 0 ? void 0 : _editorRef_current.executeCommand(command, payload);
154
+ if (command === "horizontalRule" || command === "clearFormatting") {
155
+ setOpen(false);
156
+ }
157
+ };
158
+ return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.Popover, {
159
+ open,
160
+ onOpenChange: setOpen,
161
+ placement: "bottom-end",
162
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Popover.Trigger, {
163
+ asChild: true,
164
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_ToolbarButton.ToolbarButton, {
165
+ disabled,
166
+ onPress: function onPress() {
167
+ return setOpen(true);
168
+ },
169
+ "aria-label": "More formatting options",
170
+ tooltip: "More",
171
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(MoreIcon, {})
172
+ })
173
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Popover.Content, {
174
+ ...knobProps.panelPadding,
175
+ backgroundColor: "$background",
176
+ borderWidth: 1,
177
+ borderColor: "$borderColor",
178
+ borderRadius: knobProps.borderRadius.borderRadius,
179
+ elevation: knobProps.elevation,
180
+ enterStyle: {
181
+ opacity: 0,
182
+ y: -5
183
+ },
184
+ exitStyle: {
185
+ opacity: 0,
186
+ y: -5
187
+ },
188
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {
189
+ gap: "$1",
190
+ minWidth: 200,
191
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(ItemSection, {
192
+ items: INLINE_ITEMS,
193
+ state,
194
+ onSelect: handleSelect
195
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.XStack, {
196
+ paddingVertical: "$1",
197
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_styled.ToolbarSeparatorFrame, {
198
+ vertical: false,
199
+ width: "100%",
200
+ height: 1,
201
+ marginHorizontal: 0
202
+ })
203
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(ItemSection, {
204
+ items: ALIGN_ITEMS,
205
+ state,
206
+ onSelect: handleSelect
207
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.XStack, {
208
+ paddingVertical: "$1",
209
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_styled.ToolbarSeparatorFrame, {
210
+ vertical: false,
211
+ width: "100%",
212
+ height: 1,
213
+ marginHorizontal: 0
214
+ })
215
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(ItemSection, {
216
+ items: BLOCK_ITEMS,
217
+ state,
218
+ onSelect: handleSelect
219
+ })]
220
+ })
221
+ })]
222
+ });
223
+ }
224
+ //# sourceMappingURL=MoreDropdown.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","MoreDropdown_exports","MoreDropdown","module","exports","import_jsx_runtime","require","import_react","import_theme","import_tamagui","import_styled","import_ToolbarButton","import_icons","import_shortcuts","INLINE_ITEMS","label","SHORTCUTS","subscript","command","icon","SubscriptIcon","isActive","s","isSubscript","superscript","SuperscriptIcon","isActive2","isSuperscript","ALIGN_ITEMS","alignLeft","AlignLeftIcon","isActive3","textAlign","alignCenter","AlignCenterIcon","isActive4","alignRight","AlignRightIcon","isActive5","alignJustify","AlignJustifyIcon","isActive6","BLOCK_ITEMS","horizontalRule","HorizontalRuleIcon","clearFormatting","ClearFormattingIcon","MoreIcon","jsxs","width","height","viewBox","fill","stroke","children","jsx","cx","cy","r","preventFocusTheft","e","preventDefault","ItemSection","param","items","state","onSelect","Fragment","map","item","_item_isActive","Icon","DropdownMenuItemFrame","active","onMouseDown","onPress","payload","Text","fontSize"],"sources":["../../../src/toolbar/MoreDropdown.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,80 @@
1
+ import { useCallback, useRef } from "react";
2
+ import { View } from "tamagui";
3
+ import { jsx, jsxs } from "react/jsx-runtime";
4
+ function GripIcon() {
5
+ return /* @__PURE__ */jsxs("svg", {
6
+ width: "12",
7
+ height: "12",
8
+ viewBox: "0 0 12 12",
9
+ fill: "currentColor",
10
+ opacity: 0.4,
11
+ children: [/* @__PURE__ */jsx("path", {
12
+ d: "M10 2L2 10",
13
+ stroke: "currentColor",
14
+ strokeWidth: "1.5",
15
+ fill: "none"
16
+ }), /* @__PURE__ */jsx("path", {
17
+ d: "M10 6L6 10",
18
+ stroke: "currentColor",
19
+ strokeWidth: "1.5",
20
+ fill: "none"
21
+ }), /* @__PURE__ */jsx("path", {
22
+ d: "M10 10L10 10",
23
+ stroke: "currentColor",
24
+ strokeWidth: "1.5",
25
+ fill: "none"
26
+ })]
27
+ });
28
+ }
29
+ function ResizeHandle({
30
+ containerRef,
31
+ minHeight = 150,
32
+ maxHeight
33
+ }) {
34
+ const startY = useRef(0);
35
+ const startHeight = useRef(0);
36
+ const onMouseDown = useCallback(e => {
37
+ e.preventDefault();
38
+ const el = containerRef.current;
39
+ if (!el) return;
40
+ startY.current = e.clientY;
41
+ startHeight.current = el.getBoundingClientRect().height;
42
+ const onMouseMove = ev => {
43
+ const delta = ev.clientY - startY.current;
44
+ let newHeight = startHeight.current + delta;
45
+ if (newHeight < minHeight) newHeight = minHeight;
46
+ if (maxHeight && newHeight > maxHeight) newHeight = maxHeight;
47
+ el.style.height = `${newHeight}px`;
48
+ };
49
+ const onMouseUp = () => {
50
+ document.removeEventListener("mousemove", onMouseMove);
51
+ document.removeEventListener("mouseup", onMouseUp);
52
+ document.body.style.cursor = "";
53
+ document.body.style.userSelect = "";
54
+ };
55
+ document.body.style.cursor = "ns-resize";
56
+ document.body.style.userSelect = "none";
57
+ document.addEventListener("mousemove", onMouseMove);
58
+ document.addEventListener("mouseup", onMouseUp);
59
+ }, [containerRef, minHeight, maxHeight]);
60
+ return /* @__PURE__ */jsx(View, {
61
+ position: "absolute",
62
+ bottom: 0,
63
+ right: 0,
64
+ width: 16,
65
+ height: 16,
66
+ cursor: "ns-resize",
67
+ alignItems: "center",
68
+ justifyContent: "center",
69
+ opacity: 0.6,
70
+ hoverStyle: {
71
+ opacity: 1
72
+ },
73
+ onMouseDown,
74
+ "aria-label": "Resize editor",
75
+ role: "separator",
76
+ children: /* @__PURE__ */jsx(GripIcon, {})
77
+ });
78
+ }
79
+ export { ResizeHandle };
80
+ //# sourceMappingURL=ResizeHandle.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useCallback","useRef","View","jsx","jsxs","GripIcon","width","height","viewBox","fill","opacity","children","d","stroke","strokeWidth","ResizeHandle","containerRef","minHeight","maxHeight","startY","startHeight","onMouseDown","e","preventDefault","el","current","clientY","getBoundingClientRect","onMouseMove","ev","delta","newHeight","style","onMouseUp","document","removeEventListener","body","cursor","userSelect","addEventListener","position","bottom","right","alignItems","justifyContent","hoverStyle","role"],"sources":["../../../src/toolbar/ResizeHandle.tsx"],"sourcesContent":[null],"mappings":"AAKA,SAASA,WAAA,EAAaC,MAAA,QAAc;AACpC,SAASC,IAAA,QAAY;AAUjB,SACEC,GAAA,EADFC,IAAA;AAFJ,SAASC,SAAA,EAAW;EAClB,OACE,eAAAD,IAAA,CAAC;IAAIE,KAAA,EAAM;IAAKC,MAAA,EAAO;IAAKC,OAAA,EAAQ;IAAYC,IAAA,EAAK;IAAeC,OAAA,EAAS;IAC3EC,QAAA,kBAAAR,GAAA,CAAC;MAAKS,CAAA,EAAE;MAAaC,MAAA,EAAO;MAAeC,WAAA,EAAY;MAAML,IAAA,EAAK;IAAA,CAAO,GACzE,eAAAN,GAAA,CAAC;MAAKS,CAAA,EAAE;MAAaC,MAAA,EAAO;MAAeC,WAAA,EAAY;MAAML,IAAA,EAAK;IAAA,CAAO,GACzE,eAAAN,GAAA,CAAC;MAAKS,CAAA,EAAE;MAAeC,MAAA,EAAO;MAAeC,WAAA,EAAY;MAAML,IAAA,EAAK;IAAA,CAAO;EAAA,CAC7E;AAEJ;AAEO,SAASM,aAAa;EAAEC,YAAA;EAAcC,SAAA,GAAY;EAAKC;AAAU,GAAsB;EAC5F,MAAMC,MAAA,GAASlB,MAAA,CAAO,CAAC;EACvB,MAAMmB,WAAA,GAAcnB,MAAA,CAAO,CAAC;EAE5B,MAAMoB,WAAA,GAAcrB,WAAA,CACjBsB,CAAA,IAAwB;IACvBA,CAAA,CAAEC,cAAA,CAAe;IACjB,MAAMC,EAAA,GAAKR,YAAA,CAAaS,OAAA;IACxB,IAAI,CAACD,EAAA,EAAI;IAETL,MAAA,CAAOM,OAAA,GAAUH,CAAA,CAAEI,OAAA;IACnBN,WAAA,CAAYK,OAAA,GAAUD,EAAA,CAAGG,qBAAA,CAAsB,EAAEpB,MAAA;IAEjD,MAAMqB,WAAA,GAAeC,EAAA,IAAmB;MACtC,MAAMC,KAAA,GAAQD,EAAA,CAAGH,OAAA,GAAUP,MAAA,CAAOM,OAAA;MAClC,IAAIM,SAAA,GAAYX,WAAA,CAAYK,OAAA,GAAUK,KAAA;MACtC,IAAIC,SAAA,GAAYd,SAAA,EAAWc,SAAA,GAAYd,SAAA;MACvC,IAAIC,SAAA,IAAaa,SAAA,GAAYb,SAAA,EAAWa,SAAA,GAAYb,SAAA;MACpDM,EAAA,CAAGQ,KAAA,CAAMzB,MAAA,GAAS,GAAGwB,SAAS;IAChC;IAEA,MAAME,SAAA,GAAYA,CAAA,KAAM;MACtBC,QAAA,CAASC,mBAAA,CAAoB,aAAaP,WAAW;MACrDM,QAAA,CAASC,mBAAA,CAAoB,WAAWF,SAAS;MACjDC,QAAA,CAASE,IAAA,CAAKJ,KAAA,CAAMK,MAAA,GAAS;MAC7BH,QAAA,CAASE,IAAA,CAAKJ,KAAA,CAAMM,UAAA,GAAa;IACnC;IAEAJ,QAAA,CAASE,IAAA,CAAKJ,KAAA,CAAMK,MAAA,GAAS;IAC7BH,QAAA,CAASE,IAAA,CAAKJ,KAAA,CAAMM,UAAA,GAAa;IACjCJ,QAAA,CAASK,gBAAA,CAAiB,aAAaX,WAAW;IAClDM,QAAA,CAASK,gBAAA,CAAiB,WAAWN,SAAS;EAChD,GACA,CAACjB,YAAA,EAAcC,SAAA,EAAWC,SAAS,CACrC;EAEA,OACE,eAAAf,GAAA,CAACD,IAAA;IACCsC,QAAA,EAAS;IACTC,MAAA,EAAQ;IACRC,KAAA,EAAO;IACPpC,KAAA,EAAO;IACPC,MAAA,EAAQ;IACR8B,MAAA,EAAO;IACPM,UAAA,EAAW;IACXC,cAAA,EAAe;IACflC,OAAA,EAAS;IACTmC,UAAA,EAAY;MAAEnC,OAAA,EAAS;IAAE;IACzBW,WAAA;IACA,cAAW;IACXyB,IAAA,EAAK;IAELnC,QAAA,iBAAAR,GAAA,CAACE,QAAA,IAAS;EAAA,CACZ;AAEJ","ignoreList":[]}
@@ -0,0 +1,109 @@
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 ResizeHandle_exports = {};
26
+ __export(ResizeHandle_exports, {
27
+ ResizeHandle: () => ResizeHandle
28
+ });
29
+ module.exports = __toCommonJS(ResizeHandle_exports);
30
+ var import_jsx_runtime = require("react/jsx-runtime");
31
+ var import_react = require("react");
32
+ var import_tamagui = require("tamagui");
33
+ function GripIcon() {
34
+ return /* @__PURE__ */(0, import_jsx_runtime.jsxs)("svg", {
35
+ width: "12",
36
+ height: "12",
37
+ viewBox: "0 0 12 12",
38
+ fill: "currentColor",
39
+ opacity: 0.4,
40
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)("path", {
41
+ d: "M10 2L2 10",
42
+ stroke: "currentColor",
43
+ strokeWidth: "1.5",
44
+ fill: "none"
45
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)("path", {
46
+ d: "M10 6L6 10",
47
+ stroke: "currentColor",
48
+ strokeWidth: "1.5",
49
+ fill: "none"
50
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)("path", {
51
+ d: "M10 10L10 10",
52
+ stroke: "currentColor",
53
+ strokeWidth: "1.5",
54
+ fill: "none"
55
+ })]
56
+ });
57
+ }
58
+ function ResizeHandle(param) {
59
+ var {
60
+ containerRef,
61
+ minHeight = 150,
62
+ maxHeight
63
+ } = param;
64
+ var startY = (0, import_react.useRef)(0);
65
+ var startHeight = (0, import_react.useRef)(0);
66
+ var onMouseDown = (0, import_react.useCallback)(function (e) {
67
+ e.preventDefault();
68
+ var el = containerRef.current;
69
+ if (!el) return;
70
+ startY.current = e.clientY;
71
+ startHeight.current = el.getBoundingClientRect().height;
72
+ var onMouseMove = function onMouseMove2(ev) {
73
+ var delta = ev.clientY - startY.current;
74
+ var newHeight = startHeight.current + delta;
75
+ if (newHeight < minHeight) newHeight = minHeight;
76
+ if (maxHeight && newHeight > maxHeight) newHeight = maxHeight;
77
+ el.style.height = `${newHeight}px`;
78
+ };
79
+ var onMouseUp = function onMouseUp1() {
80
+ document.removeEventListener("mousemove", onMouseMove);
81
+ document.removeEventListener("mouseup", onMouseUp);
82
+ document.body.style.cursor = "";
83
+ document.body.style.userSelect = "";
84
+ };
85
+ document.body.style.cursor = "ns-resize";
86
+ document.body.style.userSelect = "none";
87
+ document.addEventListener("mousemove", onMouseMove);
88
+ document.addEventListener("mouseup", onMouseUp);
89
+ }, [containerRef, minHeight, maxHeight]);
90
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.View, {
91
+ position: "absolute",
92
+ bottom: 0,
93
+ right: 0,
94
+ width: 16,
95
+ height: 16,
96
+ cursor: "ns-resize",
97
+ alignItems: "center",
98
+ justifyContent: "center",
99
+ opacity: 0.6,
100
+ hoverStyle: {
101
+ opacity: 1
102
+ },
103
+ onMouseDown,
104
+ "aria-label": "Resize editor",
105
+ role: "separator",
106
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(GripIcon, {})
107
+ });
108
+ }
109
+ //# sourceMappingURL=ResizeHandle.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","ResizeHandle_exports","ResizeHandle","module","exports","import_jsx_runtime","require","import_react","import_tamagui","GripIcon","jsxs","width","height","viewBox","fill","opacity","children","jsx","d","stroke","strokeWidth","param","containerRef","minHeight","maxHeight","startY","useRef","startHeight","onMouseDown","useCallback","e"],"sources":["../../../src/toolbar/ResizeHandle.tsx"],"sourcesContent":[null],"mappings":"AAKA,YAAS;;AACT,IAAAA,SAAS,GAAAC,MAAY,CAAAC,cAAA;AAUjB,IAAAC,gBAAA,GAAAF,MAAA,CAAAG,wBAAA;AAFJ,IAAAC,iBAAoB,GAAAJ,MAAA,CAAAK,mBAAA;AAClB,IAAAC,YACE,GAAAN,MAAA,CAAAO,SAAC,CAAAC,cAAU;AACT,IAAAC,QAAA,GAAAA,CAAAC,MAAA,EAACC,GAAA;EAAwE,KACzE,IAAAC,IAAA,IAAAD,GAAA,EACAZ,SAAA,CAAAW,MAAA,EAAAE,IAAC;IAAAC,GAAA,EAAKF,GAAE,CAAAC,IAAA;IAAAE,UAAe;EAAO;AAA6C;AAGjF,IAAAC,WAAA,GAAAA,CAAAC,EAAA,EAAAC,IAAA,EAAAC,MAAA,EAAAC,IAAA;EAEO,IAAAF,IAAS,WAAAA,IAAe,aAAc,WAAAA,IAAY,KAAK,UAAgC;IAC5F,KAAM,IAAAG,GAAA,IAAShB,iBAAQ,CAAAa,IAAA,GACvB,IAAM,CAAAX,YAAc,CAAAe,IAAA,CAAOL,EAAC,EAAAI,GAAA,KAAAA,GAAA,KAAAF,MAAA,EAEtBnB,SAAA,CAAAiB,EAAA,EAAcI,GAAA;MAAAP,GAAA,EAAAA,CAAA,KAAAI,IAAA,CAAAG,GAAA;MAAAN,UAAA,IAAAK,IAAA,GAAAjB,gBAAA,CAAAe,IAAA,EAAAG,GAAA,MAAAD,IAAA,CAAAL;IAAA;EAAA;EAEhB,OAAEE,EAAA;AACF;AACA,IAAAM,YAAS,GAAAC,GAAA,IAAAR,WAAA,CAAAhB,SAAA;EAAAyB,KAAA;AAAA,IAAAD,GAAA;AAET,IAAAE,oBAAiB,GAAE;AACnBhB,QAAA,CAAAgB,oBAAsB,EAAG;EAEzBC,YAAM,EAAAA,CAAA,KAAAA;AACJ;AACAC,MAAA,CAAAC,OAAI,GAAAN,YAAY,CAAAG,oBAAsB;AACtC,IAAAI,kBAAI,GAAYC,OAAA,oBAAuB;AACvC,IAAAC,YAAI,GAAAD,OAAa;AACjB,IAAAE,cAAS,GAAAF,OAAS,CAAG,SAAS;AAAA,SAChCG,SAAA;EAEA,sBAAkB,IAAAJ,kBAAM,CAAAK,IAAA;IACtBC,KAAA;IACAC,MAAA;IACAC,OAAA,aAAc;IACdC,IAAA,gBAAc;IAAmBC,OACnC;IAEAC,QAAA,GACA,eAAc,IAAMX,kBAAa,CAAAY,GAAA;MACjCC,CAAA,cAAS;MACTC,MAAA,EAAS;MACXC,WAAA;MACCN,IAAA;IACH,IAEA,eACE,IAAAT,kBAAA,CAAAY,GAAA;MAACC,CAAA;MAAAC,MAAA;MACCC,WAAS;MACTN,IAAA,EAAQ;IACR,IACA,eAAO,IAAAT,kBAAA,CAAAY,GAAA;MACPC,CAAA,gBAAQ;MACRC,MAAO;MACPC,WAAW;MACXN,IAAA;IACA;EACyB;AACzB;AACW,SACXZ,YAAKA,CAAAmB,KAAA;EAAA,IAEL;IAAAC,YAAA;IAAAC,SAAA,MAAC;IAAAC;EAAS,IAAAH,KAAA;EAAA,IAAAI,MAAA,OAAAlB,YAAA,CAAAmB,MAAA;EACZ,IAAAC,WAAA,OAAApB,YAAA,CAAAmB,MAAA;EAEJ,IAAAE,WAAA,OAAArB,YAAA,CAAAsB,WAAA,YAAAC,CAAA","ignoreList":[]}