@dxos/react-ui-editor 0.8.4-main.c4373fc → 0.8.4-main.d05673bc65

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 (422) hide show
  1. package/dist/lib/browser/index.mjs +1143 -8424
  2. package/dist/lib/browser/index.mjs.map +4 -4
  3. package/dist/lib/browser/meta.json +1 -1
  4. package/dist/lib/node-esm/index.mjs +1143 -8423
  5. package/dist/lib/node-esm/index.mjs.map +4 -4
  6. package/dist/lib/node-esm/meta.json +1 -1
  7. package/dist/types/src/components/Editor/Editor.d.ts +43 -21
  8. package/dist/types/src/components/Editor/Editor.d.ts.map +1 -1
  9. package/dist/types/src/components/Editor/Editor.stories.d.ts +23 -0
  10. package/dist/types/src/components/Editor/Editor.stories.d.ts.map +1 -0
  11. package/dist/types/src/components/EditorContent/EditorContent.d.ts +31 -0
  12. package/dist/types/src/components/EditorContent/EditorContent.d.ts.map +1 -0
  13. package/dist/types/src/components/EditorContent/controller.d.ts +10 -0
  14. package/dist/types/src/components/EditorContent/controller.d.ts.map +1 -0
  15. package/dist/types/src/components/EditorContent/index.d.ts +3 -0
  16. package/dist/types/src/components/EditorContent/index.d.ts.map +1 -0
  17. package/dist/types/src/components/EditorMenuProvider/EditorMenuProvider.d.ts +36 -0
  18. package/dist/types/src/components/EditorMenuProvider/EditorMenuProvider.d.ts.map +1 -0
  19. package/dist/types/src/components/EditorMenuProvider/index.d.ts +6 -0
  20. package/dist/types/src/components/EditorMenuProvider/index.d.ts.map +1 -0
  21. package/dist/types/src/components/EditorMenuProvider/menu-presets.d.ts +4 -0
  22. package/dist/types/src/components/EditorMenuProvider/menu-presets.d.ts.map +1 -0
  23. package/dist/types/src/components/EditorMenuProvider/menu.d.ts +28 -0
  24. package/dist/types/src/components/EditorMenuProvider/menu.d.ts.map +1 -0
  25. package/dist/types/src/components/EditorMenuProvider/popover.d.ts +46 -0
  26. package/dist/types/src/components/EditorMenuProvider/popover.d.ts.map +1 -0
  27. package/dist/types/src/components/EditorMenuProvider/useEditorMenu.d.ts +34 -0
  28. package/dist/types/src/components/EditorMenuProvider/useEditorMenu.d.ts.map +1 -0
  29. package/dist/types/src/components/EditorPreviewProvider/EditorPreviewProvider.d.ts +16 -0
  30. package/dist/types/src/components/EditorPreviewProvider/EditorPreviewProvider.d.ts.map +1 -0
  31. package/dist/types/src/components/EditorPreviewProvider/index.d.ts +2 -0
  32. package/dist/types/src/components/EditorPreviewProvider/index.d.ts.map +1 -0
  33. package/dist/types/src/components/EditorToolbar/EditorToolbar.d.ts +28 -2
  34. package/dist/types/src/components/EditorToolbar/EditorToolbar.d.ts.map +1 -1
  35. package/dist/types/src/components/EditorToolbar/actions.d.ts +25 -0
  36. package/dist/types/src/components/EditorToolbar/actions.d.ts.map +1 -0
  37. package/dist/types/src/components/EditorToolbar/blocks.d.ts +9 -7
  38. package/dist/types/src/components/EditorToolbar/blocks.d.ts.map +1 -1
  39. package/dist/types/src/components/EditorToolbar/formatting.d.ts +9 -7
  40. package/dist/types/src/components/EditorToolbar/formatting.d.ts.map +1 -1
  41. package/dist/types/src/components/EditorToolbar/headings.d.ts +9 -7
  42. package/dist/types/src/components/EditorToolbar/headings.d.ts.map +1 -1
  43. package/dist/types/src/components/EditorToolbar/image.d.ts +5 -11
  44. package/dist/types/src/components/EditorToolbar/image.d.ts.map +1 -1
  45. package/dist/types/src/components/EditorToolbar/index.d.ts +2 -1
  46. package/dist/types/src/components/EditorToolbar/index.d.ts.map +1 -1
  47. package/dist/types/src/components/EditorToolbar/search.d.ts +5 -11
  48. package/dist/types/src/components/EditorToolbar/search.d.ts.map +1 -1
  49. package/dist/types/src/components/EditorToolbar/useEditorToolbar.d.ts +11 -0
  50. package/dist/types/src/components/EditorToolbar/useEditorToolbar.d.ts.map +1 -0
  51. package/dist/types/src/components/EditorToolbar/view-mode.d.ts +10 -8
  52. package/dist/types/src/components/EditorToolbar/view-mode.d.ts.map +1 -1
  53. package/dist/types/src/components/index.d.ts +4 -2
  54. package/dist/types/src/components/index.d.ts.map +1 -1
  55. package/dist/types/src/hooks/useTextEditor.d.ts +4 -8
  56. package/dist/types/src/hooks/useTextEditor.d.ts.map +1 -1
  57. package/dist/types/src/index.d.ts +0 -8
  58. package/dist/types/src/index.d.ts.map +1 -1
  59. package/dist/types/src/{extensions/automerge/automerge.stories.d.ts → stories/Automerge.stories.d.ts} +5 -8
  60. package/dist/types/src/stories/Automerge.stories.d.ts.map +1 -0
  61. package/dist/types/src/stories/CommandDialog.stories.d.ts.map +1 -1
  62. package/dist/types/src/stories/Comments.stories.d.ts +4 -3
  63. package/dist/types/src/stories/Comments.stories.d.ts.map +1 -1
  64. package/dist/types/src/stories/EditorToolbar.stories.d.ts +4 -4
  65. package/dist/types/src/stories/EditorToolbar.stories.d.ts.map +1 -1
  66. package/dist/types/src/stories/Experimental.stories.d.ts +4 -3
  67. package/dist/types/src/stories/Experimental.stories.d.ts.map +1 -1
  68. package/dist/types/src/stories/Markdown.stories.d.ts +4 -3
  69. package/dist/types/src/stories/Markdown.stories.d.ts.map +1 -1
  70. package/dist/types/src/stories/Outliner.stories.d.ts.map +1 -1
  71. package/dist/types/src/stories/{CommandMenu.stories.d.ts → Popover.stories.d.ts} +6 -5
  72. package/dist/types/src/stories/Popover.stories.d.ts.map +1 -0
  73. package/dist/types/src/stories/Preview.stories.d.ts +5 -3
  74. package/dist/types/src/stories/Preview.stories.d.ts.map +1 -1
  75. package/dist/types/src/stories/Tags.stories.d.ts.map +1 -1
  76. package/dist/types/src/stories/TextEditor.stories.d.ts +4 -4
  77. package/dist/types/src/stories/TextEditor.stories.d.ts.map +1 -1
  78. package/dist/types/src/stories/Theme.stories.d.ts +8 -0
  79. package/dist/types/src/stories/Theme.stories.d.ts.map +1 -0
  80. package/dist/types/src/stories/components/EditorStory.d.ts +9 -18
  81. package/dist/types/src/stories/components/EditorStory.d.ts.map +1 -1
  82. package/dist/types/src/stories/components/util.d.ts +3 -3
  83. package/dist/types/src/stories/components/util.d.ts.map +1 -1
  84. package/dist/types/src/translations.d.ts +5 -5
  85. package/dist/types/src/translations.d.ts.map +1 -1
  86. package/dist/types/src/util/index.d.ts +0 -5
  87. package/dist/types/src/util/index.d.ts.map +1 -1
  88. package/dist/types/src/util/react.d.ts +6 -5
  89. package/dist/types/src/util/react.d.ts.map +1 -1
  90. package/dist/types/tsconfig.tsbuildinfo +1 -1
  91. package/package.json +68 -72
  92. package/src/components/Editor/Editor.stories.tsx +95 -0
  93. package/src/components/Editor/Editor.tsx +167 -56
  94. package/src/components/EditorContent/EditorContent.tsx +83 -0
  95. package/src/components/EditorContent/controller.ts +50 -0
  96. package/src/components/EditorContent/index.ts +6 -0
  97. package/src/components/EditorMenuProvider/EditorMenuProvider.tsx +228 -0
  98. package/src/components/EditorMenuProvider/index.ts +10 -0
  99. package/src/components/EditorMenuProvider/menu-presets.ts +124 -0
  100. package/src/components/EditorMenuProvider/menu.ts +70 -0
  101. package/src/components/EditorMenuProvider/popover.ts +285 -0
  102. package/src/components/EditorMenuProvider/useEditorMenu.ts +179 -0
  103. package/src/components/EditorPreviewProvider/EditorPreviewProvider.tsx +79 -0
  104. package/src/components/EditorPreviewProvider/index.ts +5 -0
  105. package/src/components/EditorToolbar/EditorToolbar.tsx +102 -105
  106. package/src/components/EditorToolbar/{lists.ts → actions.ts} +48 -17
  107. package/src/components/EditorToolbar/blocks.ts +7 -7
  108. package/src/components/EditorToolbar/formatting.ts +7 -7
  109. package/src/components/EditorToolbar/headings.ts +20 -17
  110. package/src/components/EditorToolbar/image.ts +10 -3
  111. package/src/components/EditorToolbar/index.ts +3 -7
  112. package/src/components/EditorToolbar/search.ts +10 -3
  113. package/src/components/EditorToolbar/useEditorToolbar.ts +20 -0
  114. package/src/components/EditorToolbar/view-mode.ts +7 -6
  115. package/src/components/index.ts +6 -2
  116. package/src/hooks/useTextEditor.ts +33 -27
  117. package/src/index.ts +0 -10
  118. package/src/stories/Automerge.stories.tsx +173 -0
  119. package/src/stories/CommandDialog.stories.tsx +18 -26
  120. package/src/stories/Comments.stories.tsx +48 -44
  121. package/src/stories/EditorToolbar.stories.tsx +36 -21
  122. package/src/stories/Experimental.stories.tsx +7 -9
  123. package/src/stories/Markdown.stories.tsx +16 -16
  124. package/src/stories/Outliner.stories.tsx +20 -21
  125. package/src/stories/Popover.stories.tsx +158 -0
  126. package/src/stories/Preview.stories.tsx +100 -81
  127. package/src/stories/Tags.stories.tsx +36 -13
  128. package/src/stories/TextEditor.stories.tsx +16 -48
  129. package/src/stories/Theme.stories.tsx +61 -0
  130. package/src/stories/components/EditorStory.tsx +32 -25
  131. package/src/stories/components/util.tsx +60 -31
  132. package/src/translations.ts +4 -4
  133. package/src/util/index.ts +1 -6
  134. package/src/util/react.tsx +8 -13
  135. package/dist/lib/browser/chunk-HL3YF6WC.mjs +0 -22
  136. package/dist/lib/browser/chunk-HL3YF6WC.mjs.map +0 -7
  137. package/dist/lib/browser/testing/index.mjs +0 -76
  138. package/dist/lib/browser/testing/index.mjs.map +0 -7
  139. package/dist/lib/browser/types/index.mjs +0 -13
  140. package/dist/lib/browser/types/index.mjs.map +0 -7
  141. package/dist/lib/node-esm/chunk-YJZGD3LY.mjs +0 -24
  142. package/dist/lib/node-esm/chunk-YJZGD3LY.mjs.map +0 -7
  143. package/dist/lib/node-esm/testing/index.mjs +0 -78
  144. package/dist/lib/node-esm/testing/index.mjs.map +0 -7
  145. package/dist/lib/node-esm/types/index.mjs +0 -14
  146. package/dist/lib/node-esm/types/index.mjs.map +0 -7
  147. package/dist/types/src/components/CommandMenu/CommandMenu.d.ts +0 -38
  148. package/dist/types/src/components/CommandMenu/CommandMenu.d.ts.map +0 -1
  149. package/dist/types/src/components/CommandMenu/index.d.ts +0 -2
  150. package/dist/types/src/components/CommandMenu/index.d.ts.map +0 -1
  151. package/dist/types/src/components/EditorToolbar/lists.d.ts +0 -19
  152. package/dist/types/src/components/EditorToolbar/lists.d.ts.map +0 -1
  153. package/dist/types/src/components/EditorToolbar/util.d.ts +0 -51
  154. package/dist/types/src/components/EditorToolbar/util.d.ts.map +0 -1
  155. package/dist/types/src/defaults.d.ts +0 -14
  156. package/dist/types/src/defaults.d.ts.map +0 -1
  157. package/dist/types/src/extensions/annotations.d.ts +0 -9
  158. package/dist/types/src/extensions/annotations.d.ts.map +0 -1
  159. package/dist/types/src/extensions/autocomplete.d.ts +0 -26
  160. package/dist/types/src/extensions/autocomplete.d.ts.map +0 -1
  161. package/dist/types/src/extensions/automerge/automerge.d.ts +0 -4
  162. package/dist/types/src/extensions/automerge/automerge.d.ts.map +0 -1
  163. package/dist/types/src/extensions/automerge/automerge.stories.d.ts.map +0 -1
  164. package/dist/types/src/extensions/automerge/automerge.test.d.ts +0 -2
  165. package/dist/types/src/extensions/automerge/automerge.test.d.ts.map +0 -1
  166. package/dist/types/src/extensions/automerge/cursor.d.ts +0 -4
  167. package/dist/types/src/extensions/automerge/cursor.d.ts.map +0 -1
  168. package/dist/types/src/extensions/automerge/defs.d.ts +0 -17
  169. package/dist/types/src/extensions/automerge/defs.d.ts.map +0 -1
  170. package/dist/types/src/extensions/automerge/index.d.ts +0 -2
  171. package/dist/types/src/extensions/automerge/index.d.ts.map +0 -1
  172. package/dist/types/src/extensions/automerge/sync.d.ts +0 -17
  173. package/dist/types/src/extensions/automerge/sync.d.ts.map +0 -1
  174. package/dist/types/src/extensions/automerge/update-automerge.d.ts +0 -6
  175. package/dist/types/src/extensions/automerge/update-automerge.d.ts.map +0 -1
  176. package/dist/types/src/extensions/automerge/update-codemirror.d.ts +0 -5
  177. package/dist/types/src/extensions/automerge/update-codemirror.d.ts.map +0 -1
  178. package/dist/types/src/extensions/autoscroll.d.ts +0 -10
  179. package/dist/types/src/extensions/autoscroll.d.ts.map +0 -1
  180. package/dist/types/src/extensions/awareness/awareness-provider.d.ts +0 -31
  181. package/dist/types/src/extensions/awareness/awareness-provider.d.ts.map +0 -1
  182. package/dist/types/src/extensions/awareness/awareness.d.ts +0 -46
  183. package/dist/types/src/extensions/awareness/awareness.d.ts.map +0 -1
  184. package/dist/types/src/extensions/awareness/index.d.ts +0 -3
  185. package/dist/types/src/extensions/awareness/index.d.ts.map +0 -1
  186. package/dist/types/src/extensions/blast.d.ts +0 -25
  187. package/dist/types/src/extensions/blast.d.ts.map +0 -1
  188. package/dist/types/src/extensions/command-dialog/action.d.ts +0 -17
  189. package/dist/types/src/extensions/command-dialog/action.d.ts.map +0 -1
  190. package/dist/types/src/extensions/command-dialog/command-dialog.d.ts +0 -6
  191. package/dist/types/src/extensions/command-dialog/command-dialog.d.ts.map +0 -1
  192. package/dist/types/src/extensions/command-dialog/hint.d.ts +0 -19
  193. package/dist/types/src/extensions/command-dialog/hint.d.ts.map +0 -1
  194. package/dist/types/src/extensions/command-dialog/index.d.ts +0 -4
  195. package/dist/types/src/extensions/command-dialog/index.d.ts.map +0 -1
  196. package/dist/types/src/extensions/command-dialog/state.d.ts +0 -16
  197. package/dist/types/src/extensions/command-dialog/state.d.ts.map +0 -1
  198. package/dist/types/src/extensions/command-dialog/typeahead.d.ts +0 -22
  199. package/dist/types/src/extensions/command-dialog/typeahead.d.ts.map +0 -1
  200. package/dist/types/src/extensions/command-menu/command-menu.d.ts +0 -20
  201. package/dist/types/src/extensions/command-menu/command-menu.d.ts.map +0 -1
  202. package/dist/types/src/extensions/command-menu/index.d.ts +0 -3
  203. package/dist/types/src/extensions/command-menu/index.d.ts.map +0 -1
  204. package/dist/types/src/extensions/command-menu/placeholder.d.ts +0 -10
  205. package/dist/types/src/extensions/command-menu/placeholder.d.ts.map +0 -1
  206. package/dist/types/src/extensions/command-menu/useCommandMenu.d.ts +0 -24
  207. package/dist/types/src/extensions/command-menu/useCommandMenu.d.ts.map +0 -1
  208. package/dist/types/src/extensions/comments.d.ts +0 -95
  209. package/dist/types/src/extensions/comments.d.ts.map +0 -1
  210. package/dist/types/src/extensions/debug.d.ts +0 -3
  211. package/dist/types/src/extensions/debug.d.ts.map +0 -1
  212. package/dist/types/src/extensions/dnd.d.ts +0 -9
  213. package/dist/types/src/extensions/dnd.d.ts.map +0 -1
  214. package/dist/types/src/extensions/factories.d.ts +0 -83
  215. package/dist/types/src/extensions/factories.d.ts.map +0 -1
  216. package/dist/types/src/extensions/floating-menu.d.ts +0 -7
  217. package/dist/types/src/extensions/floating-menu.d.ts.map +0 -1
  218. package/dist/types/src/extensions/focus.d.ts +0 -7
  219. package/dist/types/src/extensions/focus.d.ts.map +0 -1
  220. package/dist/types/src/extensions/folding.d.ts +0 -7
  221. package/dist/types/src/extensions/folding.d.ts.map +0 -1
  222. package/dist/types/src/extensions/hashtag.d.ts +0 -3
  223. package/dist/types/src/extensions/hashtag.d.ts.map +0 -1
  224. package/dist/types/src/extensions/index.d.ts +0 -27
  225. package/dist/types/src/extensions/index.d.ts.map +0 -1
  226. package/dist/types/src/extensions/json.d.ts +0 -7
  227. package/dist/types/src/extensions/json.d.ts.map +0 -1
  228. package/dist/types/src/extensions/listener.d.ts +0 -11
  229. package/dist/types/src/extensions/listener.d.ts.map +0 -1
  230. package/dist/types/src/extensions/markdown/action.d.ts +0 -12
  231. package/dist/types/src/extensions/markdown/action.d.ts.map +0 -1
  232. package/dist/types/src/extensions/markdown/bundle.d.ts +0 -22
  233. package/dist/types/src/extensions/markdown/bundle.d.ts.map +0 -1
  234. package/dist/types/src/extensions/markdown/changes.d.ts +0 -10
  235. package/dist/types/src/extensions/markdown/changes.d.ts.map +0 -1
  236. package/dist/types/src/extensions/markdown/changes.test.d.ts +0 -2
  237. package/dist/types/src/extensions/markdown/changes.test.d.ts.map +0 -1
  238. package/dist/types/src/extensions/markdown/debug.d.ts +0 -11
  239. package/dist/types/src/extensions/markdown/debug.d.ts.map +0 -1
  240. package/dist/types/src/extensions/markdown/decorate.d.ts +0 -25
  241. package/dist/types/src/extensions/markdown/decorate.d.ts.map +0 -1
  242. package/dist/types/src/extensions/markdown/formatting.d.ts +0 -63
  243. package/dist/types/src/extensions/markdown/formatting.d.ts.map +0 -1
  244. package/dist/types/src/extensions/markdown/formatting.test.d.ts +0 -3
  245. package/dist/types/src/extensions/markdown/formatting.test.d.ts.map +0 -1
  246. package/dist/types/src/extensions/markdown/highlight.d.ts +0 -37
  247. package/dist/types/src/extensions/markdown/highlight.d.ts.map +0 -1
  248. package/dist/types/src/extensions/markdown/image.d.ts +0 -7
  249. package/dist/types/src/extensions/markdown/image.d.ts.map +0 -1
  250. package/dist/types/src/extensions/markdown/index.d.ts +0 -10
  251. package/dist/types/src/extensions/markdown/index.d.ts.map +0 -1
  252. package/dist/types/src/extensions/markdown/link.d.ts +0 -7
  253. package/dist/types/src/extensions/markdown/link.d.ts.map +0 -1
  254. package/dist/types/src/extensions/markdown/parser.test.d.ts +0 -2
  255. package/dist/types/src/extensions/markdown/parser.test.d.ts.map +0 -1
  256. package/dist/types/src/extensions/markdown/styles.d.ts +0 -4
  257. package/dist/types/src/extensions/markdown/styles.d.ts.map +0 -1
  258. package/dist/types/src/extensions/markdown/table.d.ts +0 -8
  259. package/dist/types/src/extensions/markdown/table.d.ts.map +0 -1
  260. package/dist/types/src/extensions/mention.d.ts +0 -7
  261. package/dist/types/src/extensions/mention.d.ts.map +0 -1
  262. package/dist/types/src/extensions/modes.d.ts +0 -10
  263. package/dist/types/src/extensions/modes.d.ts.map +0 -1
  264. package/dist/types/src/extensions/outliner/commands.d.ts +0 -10
  265. package/dist/types/src/extensions/outliner/commands.d.ts.map +0 -1
  266. package/dist/types/src/extensions/outliner/editor.d.ts +0 -5
  267. package/dist/types/src/extensions/outliner/editor.d.ts.map +0 -1
  268. package/dist/types/src/extensions/outliner/editor.test.d.ts +0 -2
  269. package/dist/types/src/extensions/outliner/editor.test.d.ts.map +0 -1
  270. package/dist/types/src/extensions/outliner/index.d.ts +0 -4
  271. package/dist/types/src/extensions/outliner/index.d.ts.map +0 -1
  272. package/dist/types/src/extensions/outliner/outliner.d.ts +0 -11
  273. package/dist/types/src/extensions/outliner/outliner.d.ts.map +0 -1
  274. package/dist/types/src/extensions/outliner/outliner.test.d.ts +0 -2
  275. package/dist/types/src/extensions/outliner/outliner.test.d.ts.map +0 -1
  276. package/dist/types/src/extensions/outliner/selection.d.ts +0 -12
  277. package/dist/types/src/extensions/outliner/selection.d.ts.map +0 -1
  278. package/dist/types/src/extensions/outliner/tree.d.ts +0 -79
  279. package/dist/types/src/extensions/outliner/tree.d.ts.map +0 -1
  280. package/dist/types/src/extensions/outliner/tree.test.d.ts +0 -2
  281. package/dist/types/src/extensions/outliner/tree.test.d.ts.map +0 -1
  282. package/dist/types/src/extensions/preview/index.d.ts +0 -2
  283. package/dist/types/src/extensions/preview/index.d.ts.map +0 -1
  284. package/dist/types/src/extensions/preview/preview.d.ts +0 -29
  285. package/dist/types/src/extensions/preview/preview.d.ts.map +0 -1
  286. package/dist/types/src/extensions/selection.d.ts +0 -24
  287. package/dist/types/src/extensions/selection.d.ts.map +0 -1
  288. package/dist/types/src/extensions/tags/extended-markdown.d.ts +0 -10
  289. package/dist/types/src/extensions/tags/extended-markdown.d.ts.map +0 -1
  290. package/dist/types/src/extensions/tags/extended-markdown.test.d.ts +0 -2
  291. package/dist/types/src/extensions/tags/extended-markdown.test.d.ts.map +0 -1
  292. package/dist/types/src/extensions/tags/index.d.ts +0 -4
  293. package/dist/types/src/extensions/tags/index.d.ts.map +0 -1
  294. package/dist/types/src/extensions/tags/streamer.d.ts +0 -12
  295. package/dist/types/src/extensions/tags/streamer.d.ts.map +0 -1
  296. package/dist/types/src/extensions/tags/xml-tags.d.ts +0 -72
  297. package/dist/types/src/extensions/tags/xml-tags.d.ts.map +0 -1
  298. package/dist/types/src/extensions/tags/xml-util.d.ts +0 -10
  299. package/dist/types/src/extensions/tags/xml-util.d.ts.map +0 -1
  300. package/dist/types/src/extensions/typewriter.d.ts +0 -10
  301. package/dist/types/src/extensions/typewriter.d.ts.map +0 -1
  302. package/dist/types/src/stories/CommandMenu.stories.d.ts.map +0 -1
  303. package/dist/types/src/styles/index.d.ts +0 -4
  304. package/dist/types/src/styles/index.d.ts.map +0 -1
  305. package/dist/types/src/styles/markdown.d.ts +0 -8
  306. package/dist/types/src/styles/markdown.d.ts.map +0 -1
  307. package/dist/types/src/styles/theme.d.ts +0 -38
  308. package/dist/types/src/styles/theme.d.ts.map +0 -1
  309. package/dist/types/src/styles/tokens.d.ts +0 -3
  310. package/dist/types/src/styles/tokens.d.ts.map +0 -1
  311. package/dist/types/src/testing/PreviewPopover.d.ts +0 -20
  312. package/dist/types/src/testing/PreviewPopover.d.ts.map +0 -1
  313. package/dist/types/src/testing/index.d.ts +0 -3
  314. package/dist/types/src/testing/index.d.ts.map +0 -1
  315. package/dist/types/src/testing/util.d.ts +0 -3
  316. package/dist/types/src/testing/util.d.ts.map +0 -1
  317. package/dist/types/src/types/index.d.ts +0 -2
  318. package/dist/types/src/types/index.d.ts.map +0 -1
  319. package/dist/types/src/types/types.d.ts +0 -21
  320. package/dist/types/src/types/types.d.ts.map +0 -1
  321. package/dist/types/src/util/cursor.d.ts +0 -31
  322. package/dist/types/src/util/cursor.d.ts.map +0 -1
  323. package/dist/types/src/util/debug.d.ts +0 -17
  324. package/dist/types/src/util/debug.d.ts.map +0 -1
  325. package/dist/types/src/util/decorations.d.ts +0 -4
  326. package/dist/types/src/util/decorations.d.ts.map +0 -1
  327. package/dist/types/src/util/dom.d.ts +0 -10
  328. package/dist/types/src/util/dom.d.ts.map +0 -1
  329. package/dist/types/src/util/facet.d.ts +0 -3
  330. package/dist/types/src/util/facet.d.ts.map +0 -1
  331. package/src/components/CommandMenu/CommandMenu.tsx +0 -348
  332. package/src/components/CommandMenu/index.ts +0 -5
  333. package/src/components/EditorToolbar/util.ts +0 -76
  334. package/src/defaults.ts +0 -52
  335. package/src/extensions/annotations.ts +0 -55
  336. package/src/extensions/autocomplete.ts +0 -219
  337. package/src/extensions/automerge/automerge.stories.tsx +0 -149
  338. package/src/extensions/automerge/automerge.test.tsx +0 -78
  339. package/src/extensions/automerge/automerge.ts +0 -86
  340. package/src/extensions/automerge/cursor.ts +0 -28
  341. package/src/extensions/automerge/defs.ts +0 -31
  342. package/src/extensions/automerge/index.ts +0 -5
  343. package/src/extensions/automerge/sync.ts +0 -75
  344. package/src/extensions/automerge/update-automerge.ts +0 -50
  345. package/src/extensions/automerge/update-codemirror.ts +0 -115
  346. package/src/extensions/autoscroll.ts +0 -157
  347. package/src/extensions/awareness/awareness-provider.ts +0 -127
  348. package/src/extensions/awareness/awareness.ts +0 -315
  349. package/src/extensions/awareness/index.ts +0 -6
  350. package/src/extensions/blast.ts +0 -363
  351. package/src/extensions/command-dialog/action.ts +0 -55
  352. package/src/extensions/command-dialog/command-dialog.ts +0 -34
  353. package/src/extensions/command-dialog/hint.ts +0 -103
  354. package/src/extensions/command-dialog/index.ts +0 -7
  355. package/src/extensions/command-dialog/state.ts +0 -90
  356. package/src/extensions/command-dialog/typeahead.ts +0 -129
  357. package/src/extensions/command-menu/command-menu.ts +0 -210
  358. package/src/extensions/command-menu/index.ts +0 -6
  359. package/src/extensions/command-menu/placeholder.ts +0 -113
  360. package/src/extensions/command-menu/useCommandMenu.ts +0 -134
  361. package/src/extensions/comments.ts +0 -597
  362. package/src/extensions/debug.ts +0 -15
  363. package/src/extensions/dnd.ts +0 -37
  364. package/src/extensions/factories.ts +0 -284
  365. package/src/extensions/floating-menu.ts +0 -126
  366. package/src/extensions/focus.ts +0 -36
  367. package/src/extensions/folding.tsx +0 -44
  368. package/src/extensions/hashtag.tsx +0 -68
  369. package/src/extensions/index.ts +0 -30
  370. package/src/extensions/json.ts +0 -57
  371. package/src/extensions/listener.ts +0 -38
  372. package/src/extensions/markdown/action.ts +0 -117
  373. package/src/extensions/markdown/bundle.ts +0 -93
  374. package/src/extensions/markdown/changes.test.ts +0 -26
  375. package/src/extensions/markdown/changes.ts +0 -149
  376. package/src/extensions/markdown/debug.ts +0 -44
  377. package/src/extensions/markdown/decorate.ts +0 -601
  378. package/src/extensions/markdown/formatting.test.ts +0 -498
  379. package/src/extensions/markdown/formatting.ts +0 -1267
  380. package/src/extensions/markdown/highlight.ts +0 -183
  381. package/src/extensions/markdown/image.ts +0 -118
  382. package/src/extensions/markdown/index.ts +0 -13
  383. package/src/extensions/markdown/link.ts +0 -50
  384. package/src/extensions/markdown/parser.test.ts +0 -75
  385. package/src/extensions/markdown/styles.ts +0 -135
  386. package/src/extensions/markdown/table.ts +0 -150
  387. package/src/extensions/mention.ts +0 -41
  388. package/src/extensions/modes.ts +0 -41
  389. package/src/extensions/outliner/commands.ts +0 -270
  390. package/src/extensions/outliner/editor.test.ts +0 -33
  391. package/src/extensions/outliner/editor.ts +0 -184
  392. package/src/extensions/outliner/index.ts +0 -7
  393. package/src/extensions/outliner/outliner.test.ts +0 -100
  394. package/src/extensions/outliner/outliner.ts +0 -167
  395. package/src/extensions/outliner/selection.ts +0 -50
  396. package/src/extensions/outliner/tree.test.ts +0 -168
  397. package/src/extensions/outliner/tree.ts +0 -317
  398. package/src/extensions/preview/index.ts +0 -5
  399. package/src/extensions/preview/preview.ts +0 -190
  400. package/src/extensions/selection.ts +0 -100
  401. package/src/extensions/tags/extended-markdown.test.ts +0 -261
  402. package/src/extensions/tags/extended-markdown.ts +0 -78
  403. package/src/extensions/tags/index.ts +0 -7
  404. package/src/extensions/tags/streamer.ts +0 -243
  405. package/src/extensions/tags/xml-tags.ts +0 -393
  406. package/src/extensions/tags/xml-util.ts +0 -94
  407. package/src/extensions/typewriter.ts +0 -68
  408. package/src/stories/CommandMenu.stories.tsx +0 -158
  409. package/src/styles/index.ts +0 -7
  410. package/src/styles/markdown.ts +0 -26
  411. package/src/styles/theme.ts +0 -268
  412. package/src/styles/tokens.ts +0 -17
  413. package/src/testing/PreviewPopover.tsx +0 -78
  414. package/src/testing/index.ts +0 -6
  415. package/src/testing/util.ts +0 -7
  416. package/src/types/index.ts +0 -5
  417. package/src/types/types.ts +0 -32
  418. package/src/util/cursor.ts +0 -56
  419. package/src/util/debug.ts +0 -64
  420. package/src/util/decorations.ts +0 -21
  421. package/src/util/dom.ts +0 -34
  422. package/src/util/facet.ts +0 -13
@@ -1,38 +0,0 @@
1
- import { type StyleSpec } from 'style-mod';
2
- export type ThemeStyles = Record<string, StyleSpec>;
3
- /**
4
- * Minimal styles.
5
- * https://codemirror.net/examples/styling
6
- *
7
- * Examples:
8
- * - https://github.com/codemirror/view/blob/main/src/theme.ts
9
- * - https://github.com/codemirror/theme-one-dark/blob/main/src/one-dark.ts
10
- *
11
- * Main layout:
12
- * https://codemirror.net/examples/styling
13
- * https://codemirror.net/docs/guide (DOM Structure).
14
- *
15
- * <div class="cm-editor [cm-focused] [generated classes]">
16
- * <div class="cm-scroller">
17
- * <div class="cm-gutters">
18
- * <div class="cm-gutter [...]">
19
- * <div class="cm-gutterElement">...</div>
20
- * </div>
21
- * </div>
22
- * <div class="cm-content" role="textbox" contenteditable="true">
23
- * <div class="cm-line"></div>
24
- * </div>
25
- * <div class="cm-selectionLayer">
26
- * <div class="cm-selectionBackground"></div>
27
- * </div>
28
- * <div class="cm-cursorLayer">
29
- * <div class="cm-cursor"></div>
30
- * </div>
31
- * </div>
32
- * </div>
33
- *
34
- * NOTE: `light` and `dark` selectors are preprocessed by CodeMirror and can only be in the base theme.
35
- * NOTE: Use 'unset' to remove default CM style.
36
- */
37
- export declare const defaultTheme: ThemeStyles;
38
- //# sourceMappingURL=theme.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../../../src/styles/theme.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,WAAW,CAAC;AAI3C,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AAEpD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,eAAO,MAAM,YAAY,EAAE,WA+N1B,CAAC"}
@@ -1,3 +0,0 @@
1
- export declare const fontBody: string;
2
- export declare const fontMono: string;
3
- //# sourceMappingURL=tokens.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../../../src/styles/tokens.ts"],"names":[],"mappings":"AAeA,eAAO,MAAM,QAAQ,QAA8B,CAAC;AACpD,eAAO,MAAM,QAAQ,QAA8B,CAAC"}
@@ -1,20 +0,0 @@
1
- import React, { type PropsWithChildren } from 'react';
2
- import { type PreviewLinkRef, type PreviewLinkTarget } from '../extensions';
3
- type PreviewLookup = (link: PreviewLinkRef) => Promise<PreviewLinkTarget | null | undefined>;
4
- type PreviewPopoverValue = Partial<{
5
- link: PreviewLinkRef;
6
- target: PreviewLinkTarget;
7
- pending: boolean;
8
- }>;
9
- declare const usePreviewPopover: (consumerName: string) => Partial<{
10
- link: PreviewLinkRef;
11
- target: PreviewLinkTarget;
12
- pending: boolean;
13
- }>;
14
- type PopoverLookupProviderProps = PropsWithChildren<{
15
- onLookup?: PreviewLookup;
16
- }>;
17
- declare const PreviewPopoverProvider: ({ children, onLookup }: PopoverLookupProviderProps) => React.JSX.Element;
18
- export { PreviewPopoverProvider, usePreviewPopover };
19
- export type { PopoverLookupProviderProps, PreviewPopoverValue };
20
- //# sourceMappingURL=PreviewPopover.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PreviewPopover.d.ts","sourceRoot":"","sources":["../../../../src/testing/PreviewPopover.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,EAAE,KAAK,iBAAiB,EAA4D,MAAM,OAAO,CAAC;AAKhH,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAE5E,KAAK,aAAa,GAAG,CAAC,IAAI,EAAE,cAAc,KAAK,OAAO,CAAC,iBAAiB,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;AAE7F,KAAK,mBAAmB,GAAG,OAAO,CAAC;IACjC,IAAI,EAAE,cAAc,CAAC;IACrB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC,CAAC;AAEH,QAAA,MAAsC,iBAAiB;UAL/C,cAAc;YACZ,iBAAiB;aAChB,OAAO;EAGiG,CAAC;AAEpH,KAAK,0BAA0B,GAAG,iBAAiB,CAAC;IAClD,QAAQ,CAAC,EAAE,aAAa,CAAC;CAC1B,CAAC,CAAC;AAEH,QAAA,MAAM,sBAAsB,GAAI,wBAAwB,0BAA0B,sBAgDjF,CAAC;AACF,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,CAAC;AAErD,YAAY,EAAE,0BAA0B,EAAE,mBAAmB,EAAE,CAAC"}
@@ -1,3 +0,0 @@
1
- export * from './util';
2
- export * from './PreviewPopover';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/testing/index.ts"],"names":[],"mappings":"AAIA,cAAc,QAAQ,CAAC;AACvB,cAAc,kBAAkB,CAAC"}
@@ -1,3 +0,0 @@
1
- /** deprecated Replace with @dxos/util trim */
2
- export declare const str: (...lines: string[]) => string;
3
- //# sourceMappingURL=util.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../../src/testing/util.ts"],"names":[],"mappings":"AAIA,8CAA8C;AAE9C,eAAO,MAAM,GAAG,GAAI,GAAG,OAAO,MAAM,EAAE,WAAqB,CAAC"}
@@ -1,2 +0,0 @@
1
- export * from './types';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/types/index.ts"],"names":[],"mappings":"AAIA,cAAc,SAAS,CAAC"}
@@ -1,21 +0,0 @@
1
- import { type EditorView } from '@codemirror/view';
2
- import * as Schema from 'effect/Schema';
3
- export type Range = {
4
- from: number;
5
- to: number;
6
- };
7
- export type Comment = {
8
- id: string;
9
- cursor?: string;
10
- };
11
- /**
12
- * Callback that renders into a DOM element within the editor.
13
- */
14
- export type RenderCallback<Props extends object> = (el: HTMLElement, props: Props, view: EditorView) => void;
15
- export declare const EditorViewModes: readonly ["preview", "readonly", "source"];
16
- export declare const EditorViewMode: Schema.Schema<"source" | "preview" | "readonly", "source" | "preview" | "readonly", never>;
17
- export type EditorViewMode = Schema.Schema.Type<typeof EditorViewMode>;
18
- export declare const EditorInputModes: readonly ["default", "vim", "vscode"];
19
- export declare const EditorInputMode: Schema.Schema<"default" | "vim" | "vscode", "default" | "vim" | "vscode", never>;
20
- export type EditorInputMode = Schema.Schema.Type<typeof EditorInputMode>;
21
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/types/types.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AAGxC,MAAM,MAAM,KAAK,GAAG;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;CACZ,CAAC;AAIF,MAAM,MAAM,OAAO,GAAG;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,cAAc,CAAC,KAAK,SAAS,MAAM,IAAI,CAAC,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,KAAK,IAAI,CAAC;AAE7G,eAAO,MAAM,eAAe,4CAA6C,CAAC;AAC1E,eAAO,MAAM,cAAc,4FAAuE,CAAC;AACnG,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,cAAc,CAAC,CAAC;AAEvE,eAAO,MAAM,gBAAgB,uCAAwC,CAAC;AACtE,eAAO,MAAM,eAAe,kFAAwE,CAAC;AACrG,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,eAAe,CAAC,CAAC"}
@@ -1,31 +0,0 @@
1
- import { type EditorState } from '@codemirror/state';
2
- import { type Range } from '../types';
3
- /**
4
- * Determines if two ranges overlap.
5
- * A range is considered to overlap if there is any intersection
6
- * between the two ranges, inclusive of their boundaries.
7
- */
8
- export declare const overlap: (a: Range, b: Range) => boolean;
9
- /**
10
- * Converts indexes into the text document into stable peer-independent cursors.
11
- *
12
- * See:
13
- * - https://automerge.org/automerge/api-docs/js/functions/next.getCursor.html
14
- * - https://github.com/yjs/yjs?tab=readme-ov-file#relative-positions
15
- *
16
- * @param {assoc} number Negative values will associate the cursor with the previous character
17
- * while positive - with the next one.
18
- */
19
- export interface CursorConverter {
20
- toCursor(position: number, assoc?: -1 | 1 | undefined): string;
21
- fromCursor(cursor: string): number;
22
- }
23
- export declare class Cursor {
24
- static readonly converter: import("@codemirror/state").Facet<unknown, CursorConverter>;
25
- static readonly getCursorFromRange: (state: EditorState, range: Range) => string;
26
- static readonly getRangeFromCursor: (state: EditorState, cursor: string) => {
27
- from: number;
28
- to: number;
29
- } | undefined;
30
- }
31
- //# sourceMappingURL=cursor.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cursor.d.ts","sourceRoot":"","sources":["../../../../src/util/cursor.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,UAAU,CAAC;AAItC;;;;GAIG;AACH,eAAO,MAAM,OAAO,GAAI,GAAG,KAAK,EAAE,GAAG,KAAK,KAAG,OAA2C,CAAC;AAEzF;;;;;;;;;GASG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,SAAS,GAAG,MAAM,CAAC;IAC/D,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;CACpC;AAOD,qBAAa,MAAM;IACjB,MAAM,CAAC,QAAQ,CAAC,SAAS,8DAA4C;IAErE,MAAM,CAAC,QAAQ,CAAC,kBAAkB,GAAI,OAAO,WAAW,EAAE,OAAO,KAAK,YAKpE;IAEF,MAAM,CAAC,QAAQ,CAAC,kBAAkB,GAAI,OAAO,WAAW,EAAE,QAAQ,MAAM;;;kBAOtE;CACH"}
@@ -1,17 +0,0 @@
1
- import { type Transaction } from '@codemirror/state';
2
- import { type EditorView } from '@codemirror/view';
3
- export declare const wrapWithCatch: (fn: (...args: any[]) => any, label?: string) => (...args: any[]) => any;
4
- /**
5
- * CodeMirror callbacks swallow errors so wrap handlers.
6
- */
7
- export declare const callbackWrapper: <T extends Function>(fn: T) => T;
8
- /**
9
- * Log all changes before dispatching them to the view.
10
- * https://codemirror.net/docs/ref/#view.EditorView.dispatch
11
- */
12
- export declare const debugDispatcher: (trs: readonly Transaction[], view: EditorView) => void;
13
- /**
14
- * Util to log transactions in update listener.
15
- */
16
- export declare const logChanges: (trs: readonly Transaction[]) => void;
17
- //# sourceMappingURL=debug.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"debug.d.ts","sourceRoot":"","sources":["../../../../src/util/debug.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAInD,eAAO,MAAM,aAAa,GAAI,IAAI,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAAE,QAAQ,MAAM,MAC/D,GAAG,MAAM,GAAG,EAAE,QAOvB,CAAC;AAEF;;GAEG;AAEH,eAAO,MAAM,eAAe,GAAI,CAAC,SAAS,QAAQ,EAAE,IAAI,CAAC,KAAG,CAOxC,CAAC;AAErB;;;GAGG;AACH,eAAO,MAAM,eAAe,GAAI,KAAK,SAAS,WAAW,EAAE,EAAE,MAAM,UAAU,SAG5E,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,UAAU,GAAI,KAAK,SAAS,WAAW,EAAE,SAmBrD,CAAC"}
@@ -1,4 +0,0 @@
1
- import { type Range } from '@codemirror/state';
2
- import { type Decoration, type DecorationSet } from '@codemirror/view';
3
- export declare const decorationSetToArray: (deco: DecorationSet) => readonly Range<Decoration>[];
4
- //# sourceMappingURL=decorations.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"decorations.d.ts","sourceRoot":"","sources":["../../../../src/util/decorations.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEvE,eAAO,MAAM,oBAAoB,GAAI,MAAM,aAAa,KAAG,SAAS,KAAK,CAAC,UAAU,CAAC,EAapF,CAAC"}
@@ -1,10 +0,0 @@
1
- export type Rect = {
2
- readonly left: number;
3
- readonly right: number;
4
- readonly top: number;
5
- readonly bottom: number;
6
- };
7
- export declare const flattenRect: (rect: Rect, left: boolean) => Rect;
8
- export declare const textRange: (node: Text, from: number, to?: number) => Range;
9
- export declare const clientRectsFor: (dom: Node) => DOMRectList;
10
- //# sourceMappingURL=dom.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dom.d.ts","sourceRoot":"","sources":["../../../../src/util/dom.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,IAAI,GAAG;IACjB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,MAAM,IAAI,EAAE,MAAM,OAAO,KAAG,IAGvD,CAAC;AAIF,eAAO,MAAM,SAAS,GAAI,MAAM,IAAI,EAAE,MAAM,MAAM,EAAE,WAAS,KAAG,KAK/D,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,KAAK,IAAI,KAAG,WAQ1C,CAAC"}
@@ -1,3 +0,0 @@
1
- import { Facet } from '@codemirror/state';
2
- export declare const singleValueFacet: <I, O = I>(defaultValue?: O) => Facet<I, O>;
3
- //# sourceMappingURL=facet.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"facet.d.ts","sourceRoot":"","sources":["../../../../src/util/facet.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE1C,eAAO,MAAM,gBAAgB,GAAI,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,eAAe,CAAC,gBAMvD,CAAC"}
@@ -1,348 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import { type EditorView } from '@codemirror/view';
6
- import { useControllableState } from '@radix-ui/react-use-controllable-state';
7
- import React, { Fragment, type PropsWithChildren, useCallback, useEffect, useRef, useState } from 'react';
8
-
9
- import { addEventListener } from '@dxos/async';
10
- import {
11
- type DxAnchorActivate,
12
- Icon,
13
- type Label,
14
- Popover,
15
- toLocalizedString,
16
- useThemeContext,
17
- useTranslation,
18
- } from '@dxos/react-ui';
19
- import { type MaybePromise } from '@dxos/util';
20
-
21
- import { commandRangeEffect } from '../../extensions';
22
-
23
- // TODO(burdon): Rename ComboBox (and factor out to separate package).
24
-
25
- export type CommandMenuGroup = {
26
- id: string;
27
- label?: Label;
28
- items: CommandMenuItem[];
29
- };
30
-
31
- export type CommandMenuItem = {
32
- id: string;
33
- label: Label;
34
- icon?: string;
35
- onSelect?: (view: EditorView, head: number) => MaybePromise<void>;
36
- };
37
-
38
- export type CommandMenuProps = PropsWithChildren<{
39
- groups: CommandMenuGroup[];
40
- onSelect: (item: CommandMenuItem) => void;
41
- onActivate?: (event: DxAnchorActivate) => void;
42
- currentItem?: string;
43
- open?: boolean;
44
- onOpenChange?: (nextOpen: boolean) => void;
45
- defaultOpen?: boolean;
46
- }>;
47
-
48
- // NOTE: Not using DropdownMenu because the command menu needs to manage focus explicitly.
49
- export const CommandMenuProvider = ({
50
- groups,
51
- onSelect,
52
- onActivate,
53
- currentItem,
54
- children,
55
- open: propsOpen,
56
- onOpenChange,
57
- defaultOpen,
58
- }: CommandMenuProps) => {
59
- const { tx } = useThemeContext();
60
- const groupsWithItems = groups.filter((group) => group.items.length > 0);
61
- const trigger = useRef<HTMLButtonElement | null>(null);
62
-
63
- const [open, setOpen] = useControllableState({
64
- prop: propsOpen,
65
- onChange: onOpenChange,
66
- defaultProp: defaultOpen,
67
- });
68
-
69
- const handleDxAnchorActivate = useCallback(
70
- (event: DxAnchorActivate) => {
71
- const { trigger: dxTrigger, refId } = event;
72
- // If this has a `refId`, then it’s probably a URL or DXN and out of scope for this component.
73
- if (!refId) {
74
- trigger.current = dxTrigger as HTMLButtonElement;
75
- if (onActivate) {
76
- onActivate(event);
77
- } else {
78
- queueMicrotask(() => setOpen(true));
79
- }
80
- }
81
- },
82
- [onActivate],
83
- );
84
-
85
- const [rootRef, setRootRef] = useState<HTMLDivElement | null>(null);
86
-
87
- useEffect(() => {
88
- if (!rootRef || !handleDxAnchorActivate) {
89
- return;
90
- }
91
-
92
- return addEventListener(rootRef, 'dx-anchor-activate' as any, handleDxAnchorActivate, {
93
- capture: true,
94
- passive: false,
95
- });
96
- }, [rootRef, handleDxAnchorActivate]);
97
-
98
- return (
99
- <Popover.Root modal={false} open={open} onOpenChange={setOpen}>
100
- <Popover.Portal>
101
- <Popover.Content
102
- align='start'
103
- onOpenAutoFocus={(event) => event.preventDefault()}
104
- classNames={tx('menu.content', 'menu--exotic-unfocusable', { elevation: 'positioned' }, [
105
- 'max-bs-80 overflow-y-auto',
106
- ])}
107
- >
108
- <Popover.Viewport classNames={tx('menu.viewport', 'menu__viewport--exotic-unfocusable', {})}>
109
- <ul>
110
- {groupsWithItems.map((group, index) => (
111
- <Fragment key={group.id}>
112
- <CommandGroup group={group} currentItem={currentItem} onSelect={onSelect} />
113
- {index < groupsWithItems.length - 1 && <div className={tx('menu.separator', 'menu__item', {})} />}
114
- </Fragment>
115
- ))}
116
- </ul>
117
- </Popover.Viewport>
118
- <Popover.Arrow />
119
- </Popover.Content>
120
- </Popover.Portal>
121
- <Popover.VirtualTrigger virtualRef={trigger} />
122
- <div role='none' className='contents' ref={setRootRef}>
123
- {children}
124
- </div>
125
- </Popover.Root>
126
- );
127
- };
128
-
129
- const CommandGroup = ({
130
- group,
131
- currentItem,
132
- onSelect,
133
- }: {
134
- group: CommandMenuGroup;
135
- currentItem?: string;
136
- onSelect: (item: CommandMenuItem) => void;
137
- }) => {
138
- const { tx } = useThemeContext();
139
- const { t } = useTranslation();
140
- return (
141
- <>
142
- {group.label && (
143
- <div className={tx('menu.groupLabel', 'menu__group__label', {})}>
144
- <span>{toLocalizedString(group.label, t)}</span>
145
- </div>
146
- )}
147
- {group.items.map((item) => (
148
- <CommandItem key={item.id} item={item} current={currentItem === item.id} onSelect={onSelect} />
149
- ))}
150
- </>
151
- );
152
- };
153
-
154
- const CommandItem = ({
155
- item,
156
- current,
157
- onSelect,
158
- }: {
159
- item: CommandMenuItem;
160
- current: boolean;
161
- onSelect: (item: CommandMenuItem) => void;
162
- }) => {
163
- const ref = useRef<HTMLLIElement>(null);
164
- const { tx } = useThemeContext();
165
- const { t } = useTranslation();
166
- const handleSelect = useCallback(() => onSelect(item), [item, onSelect]);
167
-
168
- useEffect(() => {
169
- if (current && ref.current) {
170
- ref.current.scrollIntoView({ behavior: 'smooth', block: 'nearest' });
171
- }
172
- }, [current]);
173
-
174
- return (
175
- <li
176
- ref={ref}
177
- className={tx('menu.item', 'menu__item--exotic-unfocusable', {}, [current && 'bg-hoverSurface'])}
178
- onClick={handleSelect}
179
- >
180
- {item.icon && <Icon icon={item.icon} size={5} />}
181
- <span className='grow truncate'>{toLocalizedString(item.label, t)}</span>
182
- </li>
183
- );
184
- };
185
-
186
- // TODO(wittjosiah): Factor out into a separate file.
187
-
188
- //
189
- // Helpers
190
- //
191
-
192
- export const getItem = (groups: CommandMenuGroup[], id?: string): CommandMenuItem | undefined => {
193
- return groups.flatMap((group) => group.items).find((item) => item.id === id);
194
- };
195
-
196
- export const getNextItem = (groups: CommandMenuGroup[], id?: string): CommandMenuItem => {
197
- const items = groups.flatMap((group) => group.items);
198
- const index = items.findIndex((item) => item.id === id);
199
- return items[(index + 1) % items.length];
200
- };
201
-
202
- export const getPreviousItem = (groups: CommandMenuGroup[], id?: string): CommandMenuItem => {
203
- const items = groups.flatMap((group) => group.items);
204
- const index = items.findIndex((item) => item.id === id);
205
- return items[(index - 1 + items.length) % items.length];
206
- };
207
-
208
- export const filterItems = (
209
- groups: CommandMenuGroup[],
210
- filter: (item: CommandMenuItem) => boolean,
211
- ): CommandMenuGroup[] => {
212
- return groups.map((group) => ({
213
- ...group,
214
- items: group.items.filter(filter),
215
- }));
216
- };
217
-
218
- export const insertAtCursor = (view: EditorView, head: number, insert: string) => {
219
- view.dispatch({
220
- changes: { from: head, to: head, insert },
221
- selection: { anchor: head + insert.length, head: head + insert.length },
222
- });
223
- };
224
-
225
- /**
226
- * If the cursor is at the start of a line, insert the text at the cursor.
227
- * Otherwise, insert the text on a new line.
228
- */
229
- export const insertAtLineStart = (view: EditorView, head: number, insert: string) => {
230
- const line = view.state.doc.lineAt(head);
231
- if (line.from === head) {
232
- insertAtCursor(view, head, insert);
233
- } else {
234
- insert = '\n' + insert;
235
- view.dispatch({
236
- changes: { from: line.to, to: line.to, insert },
237
- selection: { anchor: line.to + insert.length, head: line.to + insert.length },
238
- });
239
- }
240
- };
241
-
242
- export const coreSlashCommands: CommandMenuGroup = {
243
- id: 'markdown',
244
- label: 'Markdown',
245
- items: [
246
- {
247
- id: 'heading-1',
248
- label: 'Heading 1',
249
- icon: 'ph--text-h-one--regular',
250
- onSelect: (view, head) => insertAtLineStart(view, head, '# '),
251
- },
252
- {
253
- id: 'heading-2',
254
- label: 'Heading 2',
255
- icon: 'ph--text-h-two--regular',
256
- onSelect: (view, head) => insertAtLineStart(view, head, '## '),
257
- },
258
- {
259
- id: 'heading-3',
260
- label: 'Heading 3',
261
- icon: 'ph--text-h-three--regular',
262
- onSelect: (view, head) => insertAtLineStart(view, head, '### '),
263
- },
264
- {
265
- id: 'heading-4',
266
- label: 'Heading 4',
267
- icon: 'ph--text-h-four--regular',
268
- onSelect: (view, head) => insertAtLineStart(view, head, '#### '),
269
- },
270
- {
271
- id: 'heading-5',
272
- label: 'Heading 5',
273
- icon: 'ph--text-h-five--regular',
274
- onSelect: (view, head) => insertAtLineStart(view, head, '##### '),
275
- },
276
- {
277
- id: 'heading-6',
278
- label: 'Heading 6',
279
- icon: 'ph--text-h-six--regular',
280
- onSelect: (view, head) => insertAtLineStart(view, head, '###### '),
281
- },
282
- {
283
- id: 'bullet-list',
284
- label: 'Bullet List',
285
- icon: 'ph--list-bullets--regular',
286
- onSelect: (view, head) => insertAtLineStart(view, head, '- '),
287
- },
288
- {
289
- id: 'numbered-list',
290
- label: 'Numbered List',
291
- icon: 'ph--list-numbers--regular',
292
- onSelect: (view, head) => insertAtLineStart(view, head, '1. '),
293
- },
294
- {
295
- id: 'task-list',
296
- label: 'Task List',
297
- icon: 'ph--list-checks--regular',
298
- onSelect: (view, head) => insertAtLineStart(view, head, '- [ ] '),
299
- },
300
- {
301
- id: 'quote',
302
- label: 'Quote',
303
- icon: 'ph--quotes--regular',
304
- onSelect: (view, head) => insertAtLineStart(view, head, '> '),
305
- },
306
- {
307
- id: 'code-block',
308
- label: 'Code Block',
309
- icon: 'ph--code-block--regular',
310
- onSelect: (view, head) => insertAtLineStart(view, head, '```\n\n```'),
311
- },
312
- {
313
- id: 'table',
314
- label: 'Table',
315
- icon: 'ph--table--regular',
316
- onSelect: (view, head) => insertAtLineStart(view, head, '| | | |\n|---|---|---|\n| | | |'),
317
- },
318
- ],
319
- };
320
-
321
- export const linkSlashCommands: CommandMenuGroup = {
322
- id: 'link',
323
- label: 'Link',
324
- items: [
325
- {
326
- id: 'inline-link',
327
- label: 'Inline link',
328
- icon: 'ph--link--regular',
329
- onSelect: (view, head) =>
330
- view.dispatch({
331
- changes: { from: head, insert: '@' },
332
- selection: { anchor: head + 1, head: head + 1 },
333
- effects: commandRangeEffect.of({ trigger: '@', range: { from: head, to: head + 1 } }),
334
- }),
335
- },
336
- {
337
- id: 'block-embed',
338
- label: 'Block embed',
339
- icon: 'ph--lego--regular',
340
- onSelect: (view, head) =>
341
- view.dispatch({
342
- changes: { from: head, insert: '@@' },
343
- selection: { anchor: head + 2, head: head + 2 },
344
- effects: commandRangeEffect.of({ trigger: '@', range: { from: head, to: head + 2 } }),
345
- }),
346
- },
347
- ],
348
- };
@@ -1,5 +0,0 @@
1
- //
2
- // Copyright 2022 DXOS.org
3
- //
4
-
5
- export * from './CommandMenu';
@@ -1,76 +0,0 @@
1
- //
2
- // Copyright 2025 DXOS.org
3
- //
4
-
5
- import { type EditorView } from '@codemirror/view';
6
- import { type Rx } from '@effect-rx/rx-react';
7
- import { useMemo } from 'react';
8
-
9
- import { type Action } from '@dxos/app-graph';
10
- import { type Live, live } from '@dxos/live-object';
11
- import { type ThemedClassName } from '@dxos/react-ui';
12
- import {
13
- type ActionGraphProps,
14
- type MenuActionProperties,
15
- type MenuItemGroup,
16
- type MenuSeparator,
17
- type ToolbarMenuActionGroupProperties,
18
- createMenuAction,
19
- createMenuItemGroup,
20
- } from '@dxos/react-ui-menu';
21
-
22
- import type { EditorAction, Formatting } from '../../extensions';
23
- import { translationKey } from '../../translations';
24
- import { type EditorViewMode } from '../../types';
25
-
26
- export type EditorToolbarState = Formatting & Partial<{ viewMode: EditorViewMode }>;
27
-
28
- export const useEditorToolbarState = (initialState: Partial<EditorToolbarState> = {}) => {
29
- return useMemo(() => live<EditorToolbarState>(initialState), []);
30
- };
31
-
32
- export type EditorToolbarFeatureFlags = Partial<{
33
- headings: boolean;
34
- formatting: boolean;
35
- lists: boolean;
36
- blocks: boolean;
37
- search: boolean;
38
- // TODO(wittjosiah): Factor out. Depend on plugin-level capabilities.
39
- image: () => void;
40
- viewMode: (mode: EditorViewMode) => void;
41
- }>;
42
-
43
- export type EditorToolbarActionGraphProps = {
44
- state: Live<EditorToolbarState>;
45
- getView: () => EditorView;
46
- // TODO(wittjosiah): Control positioning.
47
- customActions?: Rx.Rx<ActionGraphProps>;
48
- };
49
-
50
- export type EditorToolbarProps = ThemedClassName<
51
- EditorToolbarActionGraphProps & EditorToolbarFeatureFlags & { attendableId?: string; role?: string }
52
- >;
53
-
54
- export type EditorToolbarItem = EditorAction | MenuItemGroup | MenuSeparator;
55
-
56
- export const createEditorAction = (id: string, props: Partial<MenuActionProperties>, invoke: () => void) => {
57
- const { label = [`${id} label`, { ns: translationKey }], ...rest } = props;
58
- return createMenuAction(id, invoke, {
59
- label,
60
- ...rest,
61
- }) as Action<MenuActionProperties>;
62
- };
63
-
64
- export const createEditorActionGroup = (
65
- id: string,
66
- props: Omit<ToolbarMenuActionGroupProperties, 'icon'>,
67
- icon?: string,
68
- ) => {
69
- const { label = [`${id} label`, { ns: translationKey }], ...rest } = props;
70
- return createMenuItemGroup(id, {
71
- label,
72
- icon,
73
- iconOnly: true,
74
- ...rest,
75
- });
76
- };