@dxos/react-ui-editor 0.8.4-main.f9ba587 → 0.8.4-main.fcfe5033a5

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 (404) hide show
  1. package/dist/lib/browser/index.mjs +1384 -7468
  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 +1534 -7617
  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 +42 -15
  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/Editor/EditorView.d.ts +31 -0
  12. package/dist/types/src/components/Editor/EditorView.d.ts.map +1 -0
  13. package/dist/types/src/components/Editor/controller.d.ts +10 -0
  14. package/dist/types/src/components/Editor/controller.d.ts.map +1 -0
  15. package/dist/types/src/components/EditorMenuProvider/EditorMenuProvider.d.ts +34 -0
  16. package/dist/types/src/components/EditorMenuProvider/EditorMenuProvider.d.ts.map +1 -0
  17. package/dist/types/src/components/EditorMenuProvider/index.d.ts +6 -0
  18. package/dist/types/src/components/EditorMenuProvider/index.d.ts.map +1 -0
  19. package/dist/types/src/components/EditorMenuProvider/menu-presets.d.ts +4 -0
  20. package/dist/types/src/components/EditorMenuProvider/menu-presets.d.ts.map +1 -0
  21. package/dist/types/src/components/EditorMenuProvider/menu.d.ts +28 -0
  22. package/dist/types/src/components/EditorMenuProvider/menu.d.ts.map +1 -0
  23. package/dist/types/src/components/EditorMenuProvider/popover.d.ts +46 -0
  24. package/dist/types/src/components/EditorMenuProvider/popover.d.ts.map +1 -0
  25. package/dist/types/src/components/EditorMenuProvider/useEditorMenu.d.ts +34 -0
  26. package/dist/types/src/components/EditorMenuProvider/useEditorMenu.d.ts.map +1 -0
  27. package/dist/types/src/components/EditorPreviewProvider/EditorPreviewProvider.d.ts +16 -0
  28. package/dist/types/src/components/EditorPreviewProvider/EditorPreviewProvider.d.ts.map +1 -0
  29. package/dist/types/src/components/EditorPreviewProvider/index.d.ts +2 -0
  30. package/dist/types/src/components/EditorPreviewProvider/index.d.ts.map +1 -0
  31. package/dist/types/src/components/EditorToolbar/EditorToolbar.d.ts +28 -2
  32. package/dist/types/src/components/EditorToolbar/EditorToolbar.d.ts.map +1 -1
  33. package/dist/types/src/components/EditorToolbar/blocks.d.ts +4 -17
  34. package/dist/types/src/components/EditorToolbar/blocks.d.ts.map +1 -1
  35. package/dist/types/src/components/EditorToolbar/formatting.d.ts +4 -17
  36. package/dist/types/src/components/EditorToolbar/formatting.d.ts.map +1 -1
  37. package/dist/types/src/components/EditorToolbar/headings.d.ts +4 -17
  38. package/dist/types/src/components/EditorToolbar/headings.d.ts.map +1 -1
  39. package/dist/types/src/components/EditorToolbar/image.d.ts +3 -15
  40. package/dist/types/src/components/EditorToolbar/image.d.ts.map +1 -1
  41. package/dist/types/src/components/EditorToolbar/index.d.ts +1 -1
  42. package/dist/types/src/components/EditorToolbar/index.d.ts.map +1 -1
  43. package/dist/types/src/components/EditorToolbar/lists.d.ts +4 -17
  44. package/dist/types/src/components/EditorToolbar/lists.d.ts.map +1 -1
  45. package/dist/types/src/components/EditorToolbar/search.d.ts +3 -15
  46. package/dist/types/src/components/EditorToolbar/search.d.ts.map +1 -1
  47. package/dist/types/src/components/EditorToolbar/types.d.ts +5 -0
  48. package/dist/types/src/components/EditorToolbar/types.d.ts.map +1 -0
  49. package/dist/types/src/components/EditorToolbar/view-mode.d.ts +5 -18
  50. package/dist/types/src/components/EditorToolbar/view-mode.d.ts.map +1 -1
  51. package/dist/types/src/components/index.d.ts +2 -2
  52. package/dist/types/src/components/index.d.ts.map +1 -1
  53. package/dist/types/src/extensions/Assistant.stories.d.ts +10 -0
  54. package/dist/types/src/extensions/Assistant.stories.d.ts.map +1 -0
  55. package/dist/types/src/extensions/assistant-extension.d.ts +24 -0
  56. package/dist/types/src/extensions/assistant-extension.d.ts.map +1 -0
  57. package/dist/types/src/extensions/index.d.ts +1 -22
  58. package/dist/types/src/extensions/index.d.ts.map +1 -1
  59. package/dist/types/src/hooks/useTextEditor.d.ts +6 -10
  60. package/dist/types/src/hooks/useTextEditor.d.ts.map +1 -1
  61. package/dist/types/src/index.d.ts +0 -7
  62. package/dist/types/src/index.d.ts.map +1 -1
  63. package/dist/types/src/stories/Automerge.stories.d.ts +44 -0
  64. package/dist/types/src/stories/Automerge.stories.d.ts.map +1 -0
  65. package/dist/types/src/stories/Comments.stories.d.ts +22 -10
  66. package/dist/types/src/stories/Comments.stories.d.ts.map +1 -1
  67. package/dist/types/src/stories/EditorToolbar.stories.d.ts +42 -4
  68. package/dist/types/src/stories/EditorToolbar.stories.d.ts.map +1 -1
  69. package/dist/types/src/stories/Experimental.stories.d.ts +23 -13
  70. package/dist/types/src/stories/Experimental.stories.d.ts.map +1 -1
  71. package/dist/types/src/stories/Markdown.stories.d.ts +33 -43
  72. package/dist/types/src/stories/Markdown.stories.d.ts.map +1 -1
  73. package/dist/types/src/stories/Outliner.stories.d.ts +16 -22
  74. package/dist/types/src/stories/Outliner.stories.d.ts.map +1 -1
  75. package/dist/types/src/stories/Popover.stories.d.ts +20 -0
  76. package/dist/types/src/stories/Popover.stories.d.ts.map +1 -0
  77. package/dist/types/src/stories/Preview.stories.d.ts +23 -7
  78. package/dist/types/src/stories/Preview.stories.d.ts.map +1 -1
  79. package/dist/types/src/stories/Tags.stories.d.ts +16 -0
  80. package/dist/types/src/stories/Tags.stories.d.ts.map +1 -0
  81. package/dist/types/src/stories/TextEditor.stories.d.ts +38 -52
  82. package/dist/types/src/stories/TextEditor.stories.d.ts.map +1 -1
  83. package/dist/types/src/stories/Theme.stories.d.ts +8 -0
  84. package/dist/types/src/stories/Theme.stories.d.ts.map +1 -0
  85. package/dist/types/src/stories/components/EditorStory.d.ts +11 -23
  86. package/dist/types/src/stories/components/EditorStory.d.ts.map +1 -1
  87. package/dist/types/src/stories/components/util.d.ts +3 -3
  88. package/dist/types/src/stories/components/util.d.ts.map +1 -1
  89. package/dist/types/src/translations.d.ts +26 -26
  90. package/dist/types/src/translations.d.ts.map +1 -1
  91. package/dist/types/src/util/index.d.ts +0 -4
  92. package/dist/types/src/util/index.d.ts.map +1 -1
  93. package/dist/types/src/util/react.d.ts +7 -6
  94. package/dist/types/src/util/react.d.ts.map +1 -1
  95. package/dist/types/tsconfig.tsbuildinfo +1 -1
  96. package/package.json +87 -80
  97. package/src/components/Editor/Editor.stories.tsx +89 -0
  98. package/src/components/Editor/Editor.tsx +177 -24
  99. package/src/components/Editor/EditorView.tsx +83 -0
  100. package/src/components/Editor/controller.ts +50 -0
  101. package/src/components/EditorMenuProvider/EditorMenuProvider.tsx +226 -0
  102. package/src/components/EditorMenuProvider/index.ts +10 -0
  103. package/src/components/EditorMenuProvider/menu-presets.ts +125 -0
  104. package/src/components/EditorMenuProvider/menu.ts +70 -0
  105. package/src/components/EditorMenuProvider/popover.ts +285 -0
  106. package/src/components/EditorMenuProvider/useEditorMenu.ts +180 -0
  107. package/src/components/EditorPreviewProvider/EditorPreviewProvider.tsx +79 -0
  108. package/src/components/EditorPreviewProvider/index.ts +5 -0
  109. package/src/components/EditorToolbar/EditorToolbar.tsx +90 -103
  110. package/src/components/EditorToolbar/blocks.ts +52 -48
  111. package/src/components/EditorToolbar/formatting.ts +43 -48
  112. package/src/components/EditorToolbar/headings.ts +46 -45
  113. package/src/components/EditorToolbar/image.ts +16 -10
  114. package/src/components/EditorToolbar/index.ts +2 -7
  115. package/src/components/EditorToolbar/lists.ts +39 -41
  116. package/src/components/EditorToolbar/search.ts +16 -10
  117. package/src/components/EditorToolbar/types.ts +7 -0
  118. package/src/components/EditorToolbar/view-mode.ts +39 -40
  119. package/src/components/index.ts +3 -2
  120. package/src/extensions/Assistant.stories.tsx +111 -0
  121. package/src/extensions/assistant-extension.tsx +223 -0
  122. package/src/extensions/index.ts +2 -23
  123. package/src/hooks/useTextEditor.ts +39 -45
  124. package/src/index.ts +0 -9
  125. package/src/stories/Automerge.stories.tsx +173 -0
  126. package/src/stories/Comments.stories.tsx +58 -51
  127. package/src/stories/EditorToolbar.stories.tsx +48 -61
  128. package/src/stories/Experimental.stories.tsx +21 -19
  129. package/src/stories/Markdown.stories.tsx +37 -33
  130. package/src/stories/Outliner.stories.tsx +54 -44
  131. package/src/stories/Popover.stories.tsx +157 -0
  132. package/src/stories/Preview.stories.tsx +114 -95
  133. package/src/stories/Tags.stories.tsx +104 -0
  134. package/src/stories/TextEditor.stories.tsx +50 -75
  135. package/src/stories/Theme.stories.tsx +61 -0
  136. package/src/stories/components/EditorStory.tsx +48 -35
  137. package/src/stories/components/util.tsx +90 -59
  138. package/src/translations.ts +30 -25
  139. package/src/util/index.ts +1 -5
  140. package/src/util/react.tsx +9 -14
  141. package/dist/lib/browser/chunk-22UMM3QJ.mjs +0 -22
  142. package/dist/lib/browser/chunk-22UMM3QJ.mjs.map +0 -7
  143. package/dist/lib/browser/testing/index.mjs +0 -6
  144. package/dist/lib/browser/testing/index.mjs.map +0 -7
  145. package/dist/lib/browser/types/index.mjs +0 -13
  146. package/dist/lib/browser/types/index.mjs.map +0 -7
  147. package/dist/lib/node-esm/chunk-YXYQPV6R.mjs +0 -24
  148. package/dist/lib/node-esm/chunk-YXYQPV6R.mjs.map +0 -7
  149. package/dist/lib/node-esm/testing/index.mjs +0 -8
  150. package/dist/lib/node-esm/testing/index.mjs.map +0 -7
  151. package/dist/lib/node-esm/types/index.mjs +0 -14
  152. package/dist/lib/node-esm/types/index.mjs.map +0 -7
  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/components/Popover/CommandMenu.d.ts +0 -34
  156. package/dist/types/src/components/Popover/CommandMenu.d.ts.map +0 -1
  157. package/dist/types/src/components/Popover/RefDropdownMenu.d.ts +0 -21
  158. package/dist/types/src/components/Popover/RefDropdownMenu.d.ts.map +0 -1
  159. package/dist/types/src/components/Popover/RefPopover.d.ts +0 -34
  160. package/dist/types/src/components/Popover/RefPopover.d.ts.map +0 -1
  161. package/dist/types/src/components/Popover/index.d.ts +0 -4
  162. package/dist/types/src/components/Popover/index.d.ts.map +0 -1
  163. package/dist/types/src/defaults.d.ts +0 -14
  164. package/dist/types/src/defaults.d.ts.map +0 -1
  165. package/dist/types/src/extensions/annotations.d.ts +0 -9
  166. package/dist/types/src/extensions/annotations.d.ts.map +0 -1
  167. package/dist/types/src/extensions/autocomplete.d.ts +0 -13
  168. package/dist/types/src/extensions/autocomplete.d.ts.map +0 -1
  169. package/dist/types/src/extensions/automerge/automerge.d.ts +0 -4
  170. package/dist/types/src/extensions/automerge/automerge.d.ts.map +0 -1
  171. package/dist/types/src/extensions/automerge/automerge.stories.d.ts +0 -56
  172. package/dist/types/src/extensions/automerge/automerge.stories.d.ts.map +0 -1
  173. package/dist/types/src/extensions/automerge/automerge.test.d.ts +0 -2
  174. package/dist/types/src/extensions/automerge/automerge.test.d.ts.map +0 -1
  175. package/dist/types/src/extensions/automerge/cursor.d.ts +0 -4
  176. package/dist/types/src/extensions/automerge/cursor.d.ts.map +0 -1
  177. package/dist/types/src/extensions/automerge/defs.d.ts +0 -17
  178. package/dist/types/src/extensions/automerge/defs.d.ts.map +0 -1
  179. package/dist/types/src/extensions/automerge/index.d.ts +0 -2
  180. package/dist/types/src/extensions/automerge/index.d.ts.map +0 -1
  181. package/dist/types/src/extensions/automerge/sync.d.ts +0 -17
  182. package/dist/types/src/extensions/automerge/sync.d.ts.map +0 -1
  183. package/dist/types/src/extensions/automerge/update-automerge.d.ts +0 -6
  184. package/dist/types/src/extensions/automerge/update-automerge.d.ts.map +0 -1
  185. package/dist/types/src/extensions/automerge/update-codemirror.d.ts +0 -5
  186. package/dist/types/src/extensions/automerge/update-codemirror.d.ts.map +0 -1
  187. package/dist/types/src/extensions/awareness/awareness-provider.d.ts +0 -31
  188. package/dist/types/src/extensions/awareness/awareness-provider.d.ts.map +0 -1
  189. package/dist/types/src/extensions/awareness/awareness.d.ts +0 -46
  190. package/dist/types/src/extensions/awareness/awareness.d.ts.map +0 -1
  191. package/dist/types/src/extensions/awareness/index.d.ts +0 -3
  192. package/dist/types/src/extensions/awareness/index.d.ts.map +0 -1
  193. package/dist/types/src/extensions/blast.d.ts +0 -25
  194. package/dist/types/src/extensions/blast.d.ts.map +0 -1
  195. package/dist/types/src/extensions/command/action.d.ts +0 -17
  196. package/dist/types/src/extensions/command/action.d.ts.map +0 -1
  197. package/dist/types/src/extensions/command/command-menu.d.ts +0 -20
  198. package/dist/types/src/extensions/command/command-menu.d.ts.map +0 -1
  199. package/dist/types/src/extensions/command/command.d.ts +0 -6
  200. package/dist/types/src/extensions/command/command.d.ts.map +0 -1
  201. package/dist/types/src/extensions/command/floating-menu.d.ts +0 -7
  202. package/dist/types/src/extensions/command/floating-menu.d.ts.map +0 -1
  203. package/dist/types/src/extensions/command/hint.d.ts +0 -24
  204. package/dist/types/src/extensions/command/hint.d.ts.map +0 -1
  205. package/dist/types/src/extensions/command/index.d.ts +0 -7
  206. package/dist/types/src/extensions/command/index.d.ts.map +0 -1
  207. package/dist/types/src/extensions/command/placeholder.d.ts +0 -10
  208. package/dist/types/src/extensions/command/placeholder.d.ts.map +0 -1
  209. package/dist/types/src/extensions/command/state.d.ts +0 -16
  210. package/dist/types/src/extensions/command/state.d.ts.map +0 -1
  211. package/dist/types/src/extensions/command/typeahead.d.ts +0 -22
  212. package/dist/types/src/extensions/command/typeahead.d.ts.map +0 -1
  213. package/dist/types/src/extensions/command/useCommandMenu.d.ts +0 -26
  214. package/dist/types/src/extensions/command/useCommandMenu.d.ts.map +0 -1
  215. package/dist/types/src/extensions/comments.d.ts +0 -95
  216. package/dist/types/src/extensions/comments.d.ts.map +0 -1
  217. package/dist/types/src/extensions/debug.d.ts +0 -3
  218. package/dist/types/src/extensions/debug.d.ts.map +0 -1
  219. package/dist/types/src/extensions/dnd.d.ts +0 -9
  220. package/dist/types/src/extensions/dnd.d.ts.map +0 -1
  221. package/dist/types/src/extensions/factories.d.ts +0 -82
  222. package/dist/types/src/extensions/factories.d.ts.map +0 -1
  223. package/dist/types/src/extensions/focus.d.ts +0 -7
  224. package/dist/types/src/extensions/focus.d.ts.map +0 -1
  225. package/dist/types/src/extensions/folding.d.ts +0 -7
  226. package/dist/types/src/extensions/folding.d.ts.map +0 -1
  227. package/dist/types/src/extensions/hashtag.d.ts +0 -3
  228. package/dist/types/src/extensions/hashtag.d.ts.map +0 -1
  229. package/dist/types/src/extensions/json.d.ts +0 -7
  230. package/dist/types/src/extensions/json.d.ts.map +0 -1
  231. package/dist/types/src/extensions/listener.d.ts +0 -11
  232. package/dist/types/src/extensions/listener.d.ts.map +0 -1
  233. package/dist/types/src/extensions/markdown/action.d.ts +0 -12
  234. package/dist/types/src/extensions/markdown/action.d.ts.map +0 -1
  235. package/dist/types/src/extensions/markdown/bundle.d.ts +0 -16
  236. package/dist/types/src/extensions/markdown/bundle.d.ts.map +0 -1
  237. package/dist/types/src/extensions/markdown/changes.d.ts +0 -10
  238. package/dist/types/src/extensions/markdown/changes.d.ts.map +0 -1
  239. package/dist/types/src/extensions/markdown/changes.test.d.ts +0 -2
  240. package/dist/types/src/extensions/markdown/changes.test.d.ts.map +0 -1
  241. package/dist/types/src/extensions/markdown/debug.d.ts +0 -11
  242. package/dist/types/src/extensions/markdown/debug.d.ts.map +0 -1
  243. package/dist/types/src/extensions/markdown/decorate.d.ts +0 -17
  244. package/dist/types/src/extensions/markdown/decorate.d.ts.map +0 -1
  245. package/dist/types/src/extensions/markdown/formatting.d.ts +0 -63
  246. package/dist/types/src/extensions/markdown/formatting.d.ts.map +0 -1
  247. package/dist/types/src/extensions/markdown/formatting.test.d.ts +0 -3
  248. package/dist/types/src/extensions/markdown/formatting.test.d.ts.map +0 -1
  249. package/dist/types/src/extensions/markdown/highlight.d.ts +0 -37
  250. package/dist/types/src/extensions/markdown/highlight.d.ts.map +0 -1
  251. package/dist/types/src/extensions/markdown/image.d.ts +0 -7
  252. package/dist/types/src/extensions/markdown/image.d.ts.map +0 -1
  253. package/dist/types/src/extensions/markdown/index.d.ts +0 -10
  254. package/dist/types/src/extensions/markdown/index.d.ts.map +0 -1
  255. package/dist/types/src/extensions/markdown/link.d.ts +0 -7
  256. package/dist/types/src/extensions/markdown/link.d.ts.map +0 -1
  257. package/dist/types/src/extensions/markdown/parser.test.d.ts +0 -2
  258. package/dist/types/src/extensions/markdown/parser.test.d.ts.map +0 -1
  259. package/dist/types/src/extensions/markdown/styles.d.ts +0 -4
  260. package/dist/types/src/extensions/markdown/styles.d.ts.map +0 -1
  261. package/dist/types/src/extensions/markdown/table.d.ts +0 -8
  262. package/dist/types/src/extensions/markdown/table.d.ts.map +0 -1
  263. package/dist/types/src/extensions/mention.d.ts +0 -7
  264. package/dist/types/src/extensions/mention.d.ts.map +0 -1
  265. package/dist/types/src/extensions/modes.d.ts +0 -10
  266. package/dist/types/src/extensions/modes.d.ts.map +0 -1
  267. package/dist/types/src/extensions/outliner/commands.d.ts +0 -10
  268. package/dist/types/src/extensions/outliner/commands.d.ts.map +0 -1
  269. package/dist/types/src/extensions/outliner/editor.d.ts +0 -5
  270. package/dist/types/src/extensions/outliner/editor.d.ts.map +0 -1
  271. package/dist/types/src/extensions/outliner/editor.test.d.ts +0 -2
  272. package/dist/types/src/extensions/outliner/editor.test.d.ts.map +0 -1
  273. package/dist/types/src/extensions/outliner/index.d.ts +0 -4
  274. package/dist/types/src/extensions/outliner/index.d.ts.map +0 -1
  275. package/dist/types/src/extensions/outliner/outliner.d.ts +0 -11
  276. package/dist/types/src/extensions/outliner/outliner.d.ts.map +0 -1
  277. package/dist/types/src/extensions/outliner/outliner.test.d.ts +0 -2
  278. package/dist/types/src/extensions/outliner/outliner.test.d.ts.map +0 -1
  279. package/dist/types/src/extensions/outliner/selection.d.ts +0 -12
  280. package/dist/types/src/extensions/outliner/selection.d.ts.map +0 -1
  281. package/dist/types/src/extensions/outliner/tree.d.ts +0 -79
  282. package/dist/types/src/extensions/outliner/tree.d.ts.map +0 -1
  283. package/dist/types/src/extensions/outliner/tree.test.d.ts +0 -2
  284. package/dist/types/src/extensions/outliner/tree.test.d.ts.map +0 -1
  285. package/dist/types/src/extensions/preview/index.d.ts +0 -2
  286. package/dist/types/src/extensions/preview/index.d.ts.map +0 -1
  287. package/dist/types/src/extensions/preview/preview.d.ts +0 -32
  288. package/dist/types/src/extensions/preview/preview.d.ts.map +0 -1
  289. package/dist/types/src/extensions/selection.d.ts +0 -24
  290. package/dist/types/src/extensions/selection.d.ts.map +0 -1
  291. package/dist/types/src/extensions/typewriter.d.ts +0 -10
  292. package/dist/types/src/extensions/typewriter.d.ts.map +0 -1
  293. package/dist/types/src/stories/Command.stories.d.ts +0 -7
  294. package/dist/types/src/stories/Command.stories.d.ts.map +0 -1
  295. package/dist/types/src/stories/CommandMenu.stories.d.ts +0 -13
  296. package/dist/types/src/stories/CommandMenu.stories.d.ts.map +0 -1
  297. package/dist/types/src/styles/index.d.ts +0 -4
  298. package/dist/types/src/styles/index.d.ts.map +0 -1
  299. package/dist/types/src/styles/markdown.d.ts +0 -8
  300. package/dist/types/src/styles/markdown.d.ts.map +0 -1
  301. package/dist/types/src/styles/theme.d.ts +0 -38
  302. package/dist/types/src/styles/theme.d.ts.map +0 -1
  303. package/dist/types/src/styles/tokens.d.ts +0 -3
  304. package/dist/types/src/styles/tokens.d.ts.map +0 -1
  305. package/dist/types/src/testing/index.d.ts +0 -2
  306. package/dist/types/src/testing/index.d.ts.map +0 -1
  307. package/dist/types/src/testing/util.d.ts +0 -2
  308. package/dist/types/src/testing/util.d.ts.map +0 -1
  309. package/dist/types/src/types/index.d.ts +0 -2
  310. package/dist/types/src/types/index.d.ts.map +0 -1
  311. package/dist/types/src/types/types.d.ts +0 -21
  312. package/dist/types/src/types/types.d.ts.map +0 -1
  313. package/dist/types/src/util/cursor.d.ts +0 -31
  314. package/dist/types/src/util/cursor.d.ts.map +0 -1
  315. package/dist/types/src/util/debug.d.ts +0 -17
  316. package/dist/types/src/util/debug.d.ts.map +0 -1
  317. package/dist/types/src/util/dom.d.ts +0 -20
  318. package/dist/types/src/util/dom.d.ts.map +0 -1
  319. package/dist/types/src/util/facet.d.ts +0 -3
  320. package/dist/types/src/util/facet.d.ts.map +0 -1
  321. package/src/components/EditorToolbar/util.ts +0 -65
  322. package/src/components/Popover/CommandMenu.tsx +0 -279
  323. package/src/components/Popover/RefDropdownMenu.tsx +0 -85
  324. package/src/components/Popover/RefPopover.tsx +0 -99
  325. package/src/components/Popover/index.ts +0 -7
  326. package/src/defaults.ts +0 -49
  327. package/src/extensions/annotations.ts +0 -55
  328. package/src/extensions/autocomplete.ts +0 -69
  329. package/src/extensions/automerge/automerge.stories.tsx +0 -142
  330. package/src/extensions/automerge/automerge.test.tsx +0 -78
  331. package/src/extensions/automerge/automerge.ts +0 -85
  332. package/src/extensions/automerge/cursor.ts +0 -28
  333. package/src/extensions/automerge/defs.ts +0 -31
  334. package/src/extensions/automerge/index.ts +0 -5
  335. package/src/extensions/automerge/sync.ts +0 -75
  336. package/src/extensions/automerge/update-automerge.ts +0 -50
  337. package/src/extensions/automerge/update-codemirror.ts +0 -115
  338. package/src/extensions/awareness/awareness-provider.ts +0 -127
  339. package/src/extensions/awareness/awareness.ts +0 -315
  340. package/src/extensions/awareness/index.ts +0 -6
  341. package/src/extensions/blast.ts +0 -363
  342. package/src/extensions/command/action.ts +0 -56
  343. package/src/extensions/command/command-menu.ts +0 -210
  344. package/src/extensions/command/command.ts +0 -34
  345. package/src/extensions/command/floating-menu.ts +0 -133
  346. package/src/extensions/command/hint.ts +0 -102
  347. package/src/extensions/command/index.ts +0 -10
  348. package/src/extensions/command/placeholder.ts +0 -113
  349. package/src/extensions/command/state.ts +0 -89
  350. package/src/extensions/command/typeahead.ts +0 -129
  351. package/src/extensions/command/useCommandMenu.ts +0 -118
  352. package/src/extensions/comments.ts +0 -592
  353. package/src/extensions/debug.ts +0 -15
  354. package/src/extensions/dnd.ts +0 -37
  355. package/src/extensions/factories.ts +0 -259
  356. package/src/extensions/focus.ts +0 -35
  357. package/src/extensions/folding.tsx +0 -46
  358. package/src/extensions/hashtag.tsx +0 -68
  359. package/src/extensions/json.ts +0 -57
  360. package/src/extensions/listener.ts +0 -38
  361. package/src/extensions/markdown/action.ts +0 -116
  362. package/src/extensions/markdown/bundle.ts +0 -71
  363. package/src/extensions/markdown/changes.test.ts +0 -26
  364. package/src/extensions/markdown/changes.ts +0 -149
  365. package/src/extensions/markdown/debug.ts +0 -44
  366. package/src/extensions/markdown/decorate.ts +0 -591
  367. package/src/extensions/markdown/formatting.test.ts +0 -498
  368. package/src/extensions/markdown/formatting.ts +0 -1267
  369. package/src/extensions/markdown/highlight.ts +0 -183
  370. package/src/extensions/markdown/image.ts +0 -119
  371. package/src/extensions/markdown/index.ts +0 -13
  372. package/src/extensions/markdown/link.ts +0 -47
  373. package/src/extensions/markdown/parser.test.ts +0 -75
  374. package/src/extensions/markdown/styles.ts +0 -135
  375. package/src/extensions/markdown/table.ts +0 -144
  376. package/src/extensions/mention.ts +0 -41
  377. package/src/extensions/modes.ts +0 -41
  378. package/src/extensions/outliner/commands.ts +0 -270
  379. package/src/extensions/outliner/editor.test.ts +0 -33
  380. package/src/extensions/outliner/editor.ts +0 -184
  381. package/src/extensions/outliner/index.ts +0 -7
  382. package/src/extensions/outliner/outliner.test.ts +0 -99
  383. package/src/extensions/outliner/outliner.ts +0 -166
  384. package/src/extensions/outliner/selection.ts +0 -50
  385. package/src/extensions/outliner/tree.test.ts +0 -167
  386. package/src/extensions/outliner/tree.ts +0 -317
  387. package/src/extensions/preview/index.ts +0 -5
  388. package/src/extensions/preview/preview.ts +0 -193
  389. package/src/extensions/selection.ts +0 -100
  390. package/src/extensions/typewriter.ts +0 -68
  391. package/src/stories/Command.stories.tsx +0 -97
  392. package/src/stories/CommandMenu.stories.tsx +0 -159
  393. package/src/styles/index.ts +0 -7
  394. package/src/styles/markdown.ts +0 -26
  395. package/src/styles/theme.ts +0 -266
  396. package/src/styles/tokens.ts +0 -17
  397. package/src/testing/index.ts +0 -5
  398. package/src/testing/util.ts +0 -5
  399. package/src/types/index.ts +0 -5
  400. package/src/types/types.ts +0 -32
  401. package/src/util/cursor.ts +0 -55
  402. package/src/util/debug.ts +0 -64
  403. package/src/util/dom.ts +0 -56
  404. package/src/util/facet.ts +0 -13
@@ -1,183 +0,0 @@
1
- //
2
- // Copyright 2023 DXOS.org
3
- //
4
-
5
- import { markdownLanguage } from '@codemirror/lang-markdown';
6
- import { HighlightStyle } from '@codemirror/language';
7
- import { tags, styleTags, Tag } from '@lezer/highlight';
8
- import { type MarkdownConfig, Table } from '@lezer/markdown';
9
-
10
- import { fontBody, theme } from '../../styles';
11
-
12
- /**
13
- * Custom tags defined and processed by the GFM lezer extension.
14
- * https://github.com/lezer-parser/markdown
15
- * https://github.com/lezer-parser/markdown/blob/main/src/markdown.ts
16
- */
17
- export const markdownTags = {
18
- Blockquote: Tag.define(),
19
- CodeMark: Tag.define(),
20
- CodeText: Tag.define(),
21
- EmphasisMark: Tag.define(),
22
- HeaderMark: Tag.define(),
23
- InlineCode: Tag.define(),
24
- LinkLabel: Tag.define(),
25
- LinkReference: Tag.define(),
26
- ListMark: Tag.define(),
27
- QuoteMark: Tag.define(),
28
- URL: Tag.define(),
29
-
30
- // Custom.
31
- TableCell: Tag.define(),
32
- };
33
-
34
- // TODO(burdon): Customize table parser (make all content monospace).
35
- // https://github.com/lezer-parser/markdown/blob/main/src/extension.ts
36
- Table.defineNodes?.forEach((node: any) => {
37
- switch (node?.name) {
38
- case 'TableCell': {
39
- node.style = markdownTags.TableCell;
40
- break;
41
- }
42
- }
43
- });
44
-
45
- export const markdownTagsExtensions: MarkdownConfig[] = [
46
- Table,
47
- {
48
- props: [styleTags(markdownTags)],
49
- },
50
- ];
51
-
52
- export type HighlightOptions = {};
53
-
54
- /**
55
- * Styling based on `lezer` parser tags.
56
- * https://codemirror.net/examples/styling
57
- * https://github.com/lezer-parser/highlight
58
- * https://github.com/lezer-parser/highlight/blob/main/src/highlight.ts#L427
59
- * https://lezer.codemirror.net/docs/ref/#highlight.tags (list of tags)
60
- *
61
- * Examples:
62
- * - https://github.com/codemirror/language/blob/main/src/highlight.ts#L194
63
- * - https://github.com/codemirror/theme-one-dark/blob/main/src/one-dark.ts#L115
64
- */
65
- export const markdownHighlightStyle = (_options: HighlightOptions = {}) => {
66
- return HighlightStyle.define(
67
- [
68
- {
69
- tag: [
70
- tags.keyword,
71
- tags.name,
72
- tags.deleted,
73
- tags.character,
74
- tags.propertyName,
75
- tags.macroName,
76
- tags.color,
77
- tags.constant(tags.name),
78
- tags.standard(tags.name),
79
- tags.definition(tags.name),
80
- tags.separator,
81
- tags.typeName,
82
- tags.className,
83
- tags.number,
84
- tags.changed,
85
- tags.annotation,
86
- tags.modifier,
87
- tags.self,
88
- tags.namespace,
89
- tags.operator,
90
- tags.operatorKeyword,
91
- tags.escape,
92
- tags.regexp,
93
- tags.special(tags.string),
94
- tags.meta,
95
- tags.comment,
96
- tags.atom,
97
- tags.bool,
98
- tags.special(tags.variableName),
99
- tags.processingInstruction,
100
- tags.string,
101
- tags.inserted,
102
- tags.invalid,
103
- ],
104
- // TODO(burdon): Explain.
105
- color: 'inherit !important',
106
- },
107
-
108
- // Markdown marks.
109
- {
110
- tag: [
111
- tags.meta,
112
- tags.processingInstruction,
113
- markdownTags.LinkLabel,
114
- markdownTags.LinkReference,
115
- markdownTags.ListMark,
116
- ],
117
- class: theme.mark,
118
- },
119
-
120
- // Markdown marks.
121
- {
122
- tag: [
123
- //
124
- markdownTags.CodeMark,
125
- markdownTags.HeaderMark,
126
- markdownTags.QuoteMark,
127
- markdownTags.EmphasisMark,
128
- ],
129
- class: theme.mark,
130
- },
131
-
132
- // E.g., code block language (after ```).
133
- {
134
- tag: [
135
- //
136
- tags.function(tags.variableName),
137
- tags.labelName,
138
- ],
139
- class: theme.codeMark,
140
- },
141
-
142
- // Fonts.
143
- {
144
- tag: [tags.monospace],
145
- class: 'font-mono',
146
- },
147
-
148
- // Headings.
149
- { tag: tags.heading1, class: theme.heading(1) },
150
- { tag: tags.heading2, class: theme.heading(2) },
151
- { tag: tags.heading3, class: theme.heading(3) },
152
- { tag: tags.heading4, class: theme.heading(4) },
153
- { tag: tags.heading5, class: theme.heading(5) },
154
- { tag: tags.heading6, class: theme.heading(6) },
155
-
156
- // Emphasis.
157
- { tag: tags.emphasis, class: 'italic' },
158
- { tag: tags.strong, class: 'font-bold' },
159
- { tag: tags.strikethrough, class: 'line-through' },
160
-
161
- // NOTE: The `markdown` extension configures extensions for `lezer` to parse markdown tokens (incl. below).
162
- // However, since `codeLanguages` is also defined, the `lezer` will not parse fenced code blocks,
163
- // when a language is specified. In this case, the syntax highlighting extensions will colorize
164
- // the code, but all other CSS properties will be inherited.
165
- // IMPORTANT: Therefore, the fenced code block will use the base editor font unless changed by an extension.
166
- {
167
- tag: [markdownTags.CodeText, markdownTags.InlineCode],
168
- class: theme.code,
169
- },
170
-
171
- {
172
- tag: [markdownTags.TableCell],
173
- class: 'font-mono',
174
- },
175
- ],
176
- {
177
- scope: markdownLanguage,
178
- all: {
179
- fontFamily: fontBody,
180
- },
181
- },
182
- );
183
- };
@@ -1,119 +0,0 @@
1
- //
2
- // Copyright 2023 DXOS.org
3
- //
4
-
5
- import { syntaxTree } from '@codemirror/language';
6
- import { type EditorState, type Extension, type Range, StateField, type Transaction } from '@codemirror/state';
7
- import { Decoration, type DecorationSet, EditorView, WidgetType } from '@codemirror/view';
8
-
9
- import { focusField } from '../focus';
10
-
11
- export type ImageOptions = {};
12
-
13
- /**
14
- * Create image decorations.
15
- */
16
- export const image = (_options: ImageOptions = {}): Extension => {
17
- return [
18
- StateField.define<DecorationSet>({
19
- create: (state) => {
20
- // Process all images.
21
- return Decoration.set(buildDecorations(0, state.doc.length, state));
22
- },
23
- update: (value: DecorationSet, tr: Transaction) => {
24
- if (!tr.docChanged && !tr.selection) {
25
- return value;
26
- }
27
-
28
- // Find range of changes and cursor changes.
29
- const cursor = tr.state.selection.main.head;
30
- const oldCursor = tr.changes.mapPos(tr.startState.selection.main.head);
31
- let from = Math.min(cursor, oldCursor);
32
- let to = Math.max(cursor, oldCursor);
33
- tr.changes.iterChangedRanges((fromA, toA, fromB, toB) => {
34
- from = Math.min(from, fromB);
35
- to = Math.max(to, toB);
36
- });
37
-
38
- // Expand to cover lines.
39
- from = tr.state.doc.lineAt(from).from;
40
- to = tr.state.doc.lineAt(to).to;
41
-
42
- return value.map(tr.changes).update({
43
- filterFrom: from,
44
- filterTo: to,
45
- filter: () => false,
46
- add: buildDecorations(from, to, tr.state),
47
- });
48
- },
49
- provide: (field) => EditorView.decorations.from(field),
50
- }),
51
- ];
52
- };
53
-
54
- const buildDecorations = (from: number, to: number, state: EditorState) => {
55
- const decorations: Range<Decoration>[] = [];
56
- const cursor = state.selection.main.head;
57
- syntaxTree(state).iterate({
58
- enter: (node) => {
59
- if (node.name === 'Image') {
60
- const urlNode = node.node.getChild('URL');
61
- if (urlNode) {
62
- const hide = state.readOnly || cursor < node.from || cursor > node.to || !state.field(focusField);
63
-
64
- const url = state.sliceDoc(urlNode.from, urlNode.to);
65
- // Some plugins might be using custom URLs; avoid attempts to render those URLs.
66
- if (url.match(/^https?:\/\//) === null && url.match(/^file?:\/\//) === null) {
67
- return;
68
- }
69
-
70
- preloadImage(url);
71
- decorations.push(
72
- Decoration.replace({
73
- block: true, // Prevent cursor from entering.
74
- widget: new ImageWidget(url),
75
- }).range(hide ? node.from : node.to, node.to),
76
- );
77
- }
78
- }
79
- },
80
- from,
81
- to,
82
- });
83
-
84
- return decorations;
85
- };
86
-
87
- const preloaded = new Set<string>();
88
-
89
- const preloadImage = (url: string) => {
90
- if (!preloaded.has(url)) {
91
- const img = document.createElement('img');
92
- img.src = url;
93
- preloaded.add(url);
94
- }
95
- };
96
-
97
- class ImageWidget extends WidgetType {
98
- constructor(readonly _url: string) {
99
- super();
100
- }
101
-
102
- override eq(other: this): boolean {
103
- return this._url === other._url;
104
- }
105
-
106
- override toDOM(view: EditorView): HTMLImageElement {
107
- const img = document.createElement('img');
108
- img.setAttribute('src', this._url);
109
- img.setAttribute('class', 'cm-image');
110
- // If focused, hide image until successfully loaded to avoid flickering effects.
111
- if (view.state.field(focusField)) {
112
- img.onload = () => img.classList.add('cm-loaded-image');
113
- } else {
114
- img.classList.add('cm-loaded-image');
115
- }
116
-
117
- return img;
118
- }
119
- }
@@ -1,13 +0,0 @@
1
- //
2
- // Copyright 2023 DXOS.org
3
- //
4
-
5
- export * from './action';
6
- export * from './bundle';
7
- export * from './debug';
8
- export * from './decorate';
9
- export * from './formatting';
10
- export * from './highlight';
11
- export * from './image';
12
- export * from './link';
13
- export * from './table';
@@ -1,47 +0,0 @@
1
- //
2
- // Copyright 2023 DXOS.org
3
- // Copyright CodeMirror
4
- //
5
-
6
- import { syntaxTree } from '@codemirror/language';
7
- import { hoverTooltip } from '@codemirror/view';
8
- import { type SyntaxNode } from '@lezer/common';
9
-
10
- import { tooltipContent } from '@dxos/react-ui-theme';
11
-
12
- import { type RenderCallback } from '../../types';
13
-
14
- export const linkTooltip = (renderTooltip: RenderCallback<{ url: string }>) => {
15
- return hoverTooltip(
16
- (view, pos, side) => {
17
- const syntax = syntaxTree(view.state).resolveInner(pos, side);
18
- let link = null;
19
- for (let i = 0, node: SyntaxNode | null = syntax; !link && node && i < 5; node = node.parent, i++) {
20
- link = node.name === 'Link' ? node : null;
21
- }
22
-
23
- const url = link && link.getChild('URL');
24
- if (!url || !link) {
25
- return null;
26
- }
27
-
28
- const urlText = view.state.sliceDoc(url.from, url.to);
29
- return {
30
- pos: link.from,
31
- end: link.to,
32
- // NOTE: Forcing above causes the tooltip to flicker.
33
- // above: true,
34
- create: () => {
35
- const el = document.createElement('div');
36
- el.className = tooltipContent({});
37
- renderTooltip(el, { url: urlText }, view);
38
- return { dom: el, offset: { x: 0, y: 4 } };
39
- },
40
- };
41
- },
42
- {
43
- // NOTE: 0 = default of 300ms.
44
- hoverTime: 1,
45
- },
46
- );
47
- };
@@ -1,75 +0,0 @@
1
- //
2
- // Copyright 2024 DXOS.org
3
- //
4
-
5
- // @ts-ignore
6
- import { testTree } from '@lezer/generator/test';
7
- import { parser } from '@lezer/markdown';
8
- import { describe, test } from 'vitest';
9
-
10
- describe('parser', () => {
11
- // test.only('list-mark', () => {
12
- // const newParser = parser.configure({
13
- // parseBlock: [
14
- // {
15
- // name: 'ListItem',
16
- // parse: (cx, line) => {
17
- // console.log(`[${line.text}]`, cx.lineStart, line.text.length);
18
- // // line.skipSpace(1);
19
- // return true;
20
- // },
21
- // },
22
- // ],
23
- // });
24
- //
25
- // {
26
- // const result = newParser.parse(' - ');
27
- // testTree(result, 'Document(BulletList(ListItem(ListMark)))');
28
- // }
29
- // {
30
- // const result = newParser.parse('-x');
31
- // testTree(result, 'Document(Paragraph)');
32
- // }
33
- // {
34
- // const result = newParser.parse('- x');
35
- // testTree(result, 'Document(BulletList(ListItem(ListMark,Paragraph)))');
36
- // }
37
- // });
38
-
39
- // https://www.markdownguide.org/basic-syntax/#lists-1
40
- test('lists', () => {
41
- // Indented list must have 4 spaces.
42
- const result = parser.parse(
43
- [
44
- '# H1',
45
- '1. one',
46
- '2. two',
47
- '3. three',
48
- ' 1. four',
49
- '',
50
- // TODO(burdon): Test list termination without heading as break.
51
- '# H2',
52
- '1. one',
53
- ].join('\n'),
54
- );
55
-
56
- testTree(
57
- result,
58
- [
59
- 'Document(',
60
- 'ATXHeading1(HeaderMark)',
61
- 'OrderedList(',
62
- 'ListItem(ListMark,Paragraph),',
63
- 'ListItem(ListMark,Paragraph),',
64
- 'ListItem(ListMark,Paragraph,OrderedList(ListItem(ListMark,Paragraph)))',
65
- ')',
66
- '',
67
- 'ATXHeading1(HeaderMark)',
68
- 'OrderedList(',
69
- 'ListItem(ListMark,Paragraph),',
70
- ')',
71
- ')',
72
- ].join(''),
73
- );
74
- });
75
- });
@@ -1,135 +0,0 @@
1
- //
2
- // Copyright 2024 DXOS.org
3
- //
4
-
5
- import { EditorView } from '@codemirror/view';
6
-
7
- import { fontMono } from '../../styles';
8
-
9
- export const bulletListIndentationWidth = 24;
10
- export const orderedListIndentationWidth = 36; // TODO(burdon): Make variable length based on number of digits.
11
-
12
- export const formattingStyles = EditorView.theme({
13
- /**
14
- * Horizontal rule.
15
- */
16
- '& .cm-hr': {
17
- display: 'inline-block',
18
- width: '100%',
19
- height: '0',
20
- verticalAlign: 'middle',
21
- borderTop: '1px solid var(--dx-cmSeparator)',
22
- opacity: 0.5,
23
- },
24
-
25
- /**
26
- * Lists.
27
- */
28
- '& .cm-list-item': {},
29
- '& .cm-list-mark': {
30
- display: 'inline-block',
31
- textAlign: 'right',
32
- paddingRight: '0.5em',
33
- fontVariant: 'tabular-nums',
34
- },
35
- '& .cm-list-mark-bullet': {
36
- width: `${bulletListIndentationWidth}px`,
37
- },
38
- '& .cm-list-mark-ordered': {
39
- width: `${orderedListIndentationWidth}px`,
40
- },
41
-
42
- /**
43
- * Blockquote.
44
- */
45
- '& .cm-blockquote': {
46
- background: 'var(--dx-cmCodeblock)',
47
- borderLeft: '2px solid var(--dx-cmSeparator)',
48
- paddingLeft: '1rem',
49
- margin: '0',
50
- },
51
-
52
- /**
53
- * Code and codeblocks.
54
- */
55
- '& .cm-code': {
56
- fontFamily: fontMono,
57
- },
58
- '& .cm-codeblock-line': {
59
- background: 'var(--dx-cmCodeblock)',
60
- paddingInline: '1rem !important',
61
- },
62
- '& .cm-codeblock-start': {
63
- borderTopLeftRadius: '.25rem',
64
- borderTopRightRadius: '.25rem',
65
- },
66
- '& .cm-codeblock-end': {
67
- borderBottomLeftRadius: '.25rem',
68
- borderBottomRightRadius: '.25rem',
69
- },
70
-
71
- /**
72
- * Task list.
73
- */
74
- '& .cm-task': {
75
- display: 'inline-flex',
76
- width: `${bulletListIndentationWidth}px`,
77
- height: '20px',
78
- },
79
- '& .cm-task-checkbox': {
80
- display: 'grid',
81
- margin: '0',
82
- transform: 'translateY(2px)',
83
- },
84
-
85
- /**
86
- * Table.
87
- */
88
- '.cm-table *': {
89
- fontFamily: fontMono,
90
- textDecoration: 'none !important',
91
- },
92
- '.cm-table-head': {
93
- padding: '2px 16px 2px 0px',
94
- textAlign: 'left',
95
- borderBottom: '1px solid var(--dx-cmSeparator)',
96
- color: 'var(--dx-subdued)',
97
- },
98
- '.cm-table-cell': {
99
- padding: '2px 16px 2px 0px',
100
- },
101
-
102
- /**
103
- * Image.
104
- */
105
- '.cm-image': {
106
- display: 'block',
107
- height: '0',
108
- },
109
- '.cm-image.cm-loaded-image': {
110
- height: 'auto',
111
- borderTop: '0.5rem solid transparent',
112
- borderBottom: '0.5rem solid transparent',
113
- },
114
- '.cm-image-with-loader': {
115
- display: 'block',
116
- opacity: '0',
117
- transitionDuration: '350ms',
118
- transitionProperty: 'opacity',
119
- },
120
- '.cm-image-with-loader.cm-loaded-image': {
121
- opacity: '1',
122
- },
123
- '.cm-image-wrapper': {
124
- 'grid-template-columns': '1fr',
125
- display: 'grid',
126
- margin: '0.5rem 0',
127
- overflow: 'hidden',
128
- transitionDuration: '350ms',
129
- transitionProperty: 'height',
130
- '& > *': {
131
- 'grid-row-start': 1,
132
- 'grid-column-start': 1,
133
- },
134
- },
135
- });