@datalayer/lexical-loro 0.2.5 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (399) hide show
  1. package/package.json +1 -1
  2. package/lib/App.d.ts +0 -2
  3. package/lib/App.js +0 -141
  4. package/lib/Editor.d.ts +0 -2
  5. package/lib/Editor.js +0 -115
  6. package/lib/Settings.d.ts +0 -2
  7. package/lib/Settings.js +0 -57
  8. package/lib/appSettings.d.ts +0 -36
  9. package/lib/appSettings.js +0 -48
  10. package/lib/collab/loro/Bindings.d.ts +0 -41
  11. package/lib/collab/loro/Bindings.js +0 -99
  12. package/lib/collab/loro/Debug.d.ts +0 -33
  13. package/lib/collab/loro/Debug.js +0 -452
  14. package/lib/collab/loro/LexicalCollaborationContext.d.ts +0 -19
  15. package/lib/collab/loro/LexicalCollaborationContext.js +0 -52
  16. package/lib/collab/loro/LexicalCollaborationPlugin.d.ts +0 -24
  17. package/lib/collab/loro/LexicalCollaborationPlugin.js +0 -83
  18. package/lib/collab/loro/State.d.ts +0 -53
  19. package/lib/collab/loro/State.js +0 -94
  20. package/lib/collab/loro/components/LoroCollaborationUI.d.ts +0 -13
  21. package/lib/collab/loro/components/LoroCollaborationUI.js +0 -9
  22. package/lib/collab/loro/components/LoroCollaborators.d.ts +0 -8
  23. package/lib/collab/loro/components/LoroCollaborators.js +0 -102
  24. package/lib/collab/loro/components/index.d.ts +0 -2
  25. package/lib/collab/loro/components/index.js +0 -6
  26. package/lib/collab/loro/index.d.ts +0 -6
  27. package/lib/collab/loro/index.js +0 -10
  28. package/lib/collab/loro/integrators/BaseIntegrator.d.ts +0 -14
  29. package/lib/collab/loro/integrators/BaseIntegrator.js +0 -5
  30. package/lib/collab/loro/integrators/CounterIntegrator.d.ts +0 -23
  31. package/lib/collab/loro/integrators/CounterIntegrator.js +0 -44
  32. package/lib/collab/loro/integrators/ListIntegrator.d.ts +0 -23
  33. package/lib/collab/loro/integrators/ListIntegrator.js +0 -53
  34. package/lib/collab/loro/integrators/MapIntegrator.d.ts +0 -24
  35. package/lib/collab/loro/integrators/MapIntegrator.js +0 -235
  36. package/lib/collab/loro/integrators/TextIntegrator.d.ts +0 -25
  37. package/lib/collab/loro/integrators/TextIntegrator.js +0 -55
  38. package/lib/collab/loro/integrators/TreeIntegrator.d.ts +0 -36
  39. package/lib/collab/loro/integrators/TreeIntegrator.js +0 -251
  40. package/lib/collab/loro/nodes/NodeFactory.d.ts +0 -15
  41. package/lib/collab/loro/nodes/NodeFactory.js +0 -101
  42. package/lib/collab/loro/nodes/NodesMapper.d.ts +0 -120
  43. package/lib/collab/loro/nodes/NodesMapper.js +0 -277
  44. package/lib/collab/loro/propagators/DecoratorNodePropagator.d.ts +0 -60
  45. package/lib/collab/loro/propagators/DecoratorNodePropagator.js +0 -306
  46. package/lib/collab/loro/propagators/ElementNodePropagator.d.ts +0 -62
  47. package/lib/collab/loro/propagators/ElementNodePropagator.js +0 -326
  48. package/lib/collab/loro/propagators/LineBreakNodePropagator.d.ts +0 -57
  49. package/lib/collab/loro/propagators/LineBreakNodePropagator.js +0 -200
  50. package/lib/collab/loro/propagators/RootNodePropagator.d.ts +0 -55
  51. package/lib/collab/loro/propagators/RootNodePropagator.js +0 -174
  52. package/lib/collab/loro/propagators/TextNodePropagator.d.ts +0 -60
  53. package/lib/collab/loro/propagators/TextNodePropagator.js +0 -440
  54. package/lib/collab/loro/propagators/index.d.ts +0 -49
  55. package/lib/collab/loro/propagators/index.js +0 -30
  56. package/lib/collab/loro/provider/websocket.d.ts +0 -116
  57. package/lib/collab/loro/provider/websocket.js +0 -911
  58. package/lib/collab/loro/servers/index.d.ts +0 -0
  59. package/lib/collab/loro/servers/index.js +0 -4
  60. package/lib/collab/loro/servers/ws/callback.d.ts +0 -5
  61. package/lib/collab/loro/servers/ws/callback.js +0 -89
  62. package/lib/collab/loro/servers/ws/server.d.ts +0 -2
  63. package/lib/collab/loro/servers/ws/server.js +0 -29
  64. package/lib/collab/loro/servers/ws/utils.d.ts +0 -40
  65. package/lib/collab/loro/servers/ws/utils.js +0 -517
  66. package/lib/collab/loro/sync/SyncCursors.d.ts +0 -32
  67. package/lib/collab/loro/sync/SyncCursors.js +0 -475
  68. package/lib/collab/loro/sync/SyncLexicalToLoro.d.ts +0 -4
  69. package/lib/collab/loro/sync/SyncLexicalToLoro.js +0 -113
  70. package/lib/collab/loro/sync/SyncLoroToLexical.d.ts +0 -5
  71. package/lib/collab/loro/sync/SyncLoroToLexical.js +0 -100
  72. package/lib/collab/loro/types/LexicalNodeData.d.ts +0 -32
  73. package/lib/collab/loro/types/LexicalNodeData.js +0 -75
  74. package/lib/collab/loro/useCollaboration.d.ts +0 -12
  75. package/lib/collab/loro/useCollaboration.js +0 -260
  76. package/lib/collab/loro/utils/InitialContent.d.ts +0 -64
  77. package/lib/collab/loro/utils/InitialContent.js +0 -113
  78. package/lib/collab/loro/utils/LexicalToLoro.d.ts +0 -18
  79. package/lib/collab/loro/utils/LexicalToLoro.js +0 -100
  80. package/lib/collab/loro/utils/Utils.d.ts +0 -44
  81. package/lib/collab/loro/utils/Utils.js +0 -157
  82. package/lib/collab/loro/wsProvider.d.ts +0 -8
  83. package/lib/collab/loro/wsProvider.js +0 -35
  84. package/lib/collab/utils/invariant.d.ts +0 -1
  85. package/lib/collab/utils/invariant.js +0 -15
  86. package/lib/collab/utils/simpleDiffWithCursor.d.ts +0 -5
  87. package/lib/collab/utils/simpleDiffWithCursor.js +0 -35
  88. package/lib/collab/yjs/Bindings.d.ts +0 -23
  89. package/lib/collab/yjs/Bindings.js +0 -26
  90. package/lib/collab/yjs/Debug.d.ts +0 -23
  91. package/lib/collab/yjs/Debug.js +0 -213
  92. package/lib/collab/yjs/LexicalCollaborationContext.d.ts +0 -10
  93. package/lib/collab/yjs/LexicalCollaborationContext.js +0 -37
  94. package/lib/collab/yjs/LexicalCollaborationPlugin.d.ts +0 -21
  95. package/lib/collab/yjs/LexicalCollaborationPlugin.js +0 -63
  96. package/lib/collab/yjs/State.d.ts +0 -51
  97. package/lib/collab/yjs/State.js +0 -35
  98. package/lib/collab/yjs/nodes/AnyCollabNode.d.ts +0 -5
  99. package/lib/collab/yjs/nodes/AnyCollabNode.js +0 -1
  100. package/lib/collab/yjs/nodes/CollabDecoratorNode.d.ts +0 -22
  101. package/lib/collab/yjs/nodes/CollabDecoratorNode.js +0 -64
  102. package/lib/collab/yjs/nodes/CollabElementNode.d.ts +0 -40
  103. package/lib/collab/yjs/nodes/CollabElementNode.js +0 -462
  104. package/lib/collab/yjs/nodes/CollabLineBreakNode.d.ts +0 -19
  105. package/lib/collab/yjs/nodes/CollabLineBreakNode.js +0 -44
  106. package/lib/collab/yjs/nodes/CollabTextNode.d.ts +0 -25
  107. package/lib/collab/yjs/nodes/CollabTextNode.js +0 -103
  108. package/lib/collab/yjs/provider/websocket.d.ts +0 -88
  109. package/lib/collab/yjs/provider/websocket.js +0 -415
  110. package/lib/collab/yjs/servers/index.d.ts +0 -0
  111. package/lib/collab/yjs/servers/index.js +0 -0
  112. package/lib/collab/yjs/servers/ws/callback.d.ts +0 -5
  113. package/lib/collab/yjs/servers/ws/callback.js +0 -72
  114. package/lib/collab/yjs/servers/ws/server.d.ts +0 -2
  115. package/lib/collab/yjs/servers/ws/server.js +0 -25
  116. package/lib/collab/yjs/servers/ws/utils.d.ts +0 -49
  117. package/lib/collab/yjs/servers/ws/utils.js +0 -284
  118. package/lib/collab/yjs/sync/SyncCursors.d.ts +0 -39
  119. package/lib/collab/yjs/sync/SyncCursors.js +0 -351
  120. package/lib/collab/yjs/sync/SyncEditorStates.d.ts +0 -10
  121. package/lib/collab/yjs/sync/SyncEditorStates.js +0 -200
  122. package/lib/collab/yjs/useCollaboration.d.ts +0 -12
  123. package/lib/collab/yjs/useCollaboration.js +0 -255
  124. package/lib/collab/yjs/utils/Utils.d.ts +0 -25
  125. package/lib/collab/yjs/utils/Utils.js +0 -402
  126. package/lib/collab/yjs/wsProvider.d.ts +0 -3
  127. package/lib/collab/yjs/wsProvider.js +0 -21
  128. package/lib/commenting/index.d.ts +0 -41
  129. package/lib/commenting/index.js +0 -328
  130. package/lib/context/FlashMessageContext.d.ts +0 -7
  131. package/lib/context/FlashMessageContext.js +0 -24
  132. package/lib/context/SettingsContext.d.ts +0 -12
  133. package/lib/context/SettingsContext.js +0 -38
  134. package/lib/context/SharedHistoryContext.d.ts +0 -11
  135. package/lib/context/SharedHistoryContext.js +0 -11
  136. package/lib/context/ToolbarContext.d.ts +0 -65
  137. package/lib/context/ToolbarContext.js +0 -84
  138. package/lib/demo.d.ts +0 -12
  139. package/lib/demo.js +0 -45
  140. package/lib/hooks/useFlashMessage.d.ts +0 -2
  141. package/lib/hooks/useFlashMessage.js +0 -8
  142. package/lib/hooks/useModal.d.ts +0 -5
  143. package/lib/hooks/useModal.js +0 -26
  144. package/lib/hooks/useReport.d.ts +0 -1
  145. package/lib/hooks/useReport.js +0 -50
  146. package/lib/index.d.ts +0 -1
  147. package/lib/index.js +0 -5
  148. package/lib/nodes/AutocompleteNode.d.ts +0 -27
  149. package/lib/nodes/AutocompleteNode.js +0 -60
  150. package/lib/nodes/CounterComponent.d.ts +0 -6
  151. package/lib/nodes/CounterComponent.js +0 -137
  152. package/lib/nodes/CounterNode.d.ts +0 -23
  153. package/lib/nodes/CounterNode.js +0 -47
  154. package/lib/nodes/DateTimeNode/DateTimeComponent.d.ts +0 -8
  155. package/lib/nodes/DateTimeNode/DateTimeComponent.js +0 -119
  156. package/lib/nodes/DateTimeNode/DateTimeNode.d.ts +0 -27
  157. package/lib/nodes/DateTimeNode/DateTimeNode.js +0 -82
  158. package/lib/nodes/EmojiNode.d.ts +0 -18
  159. package/lib/nodes/EmojiNode.js +0 -54
  160. package/lib/nodes/EquationComponent.d.ts +0 -9
  161. package/lib/nodes/EquationComponent.js +0 -75
  162. package/lib/nodes/EquationNode.d.ts +0 -26
  163. package/lib/nodes/EquationNode.js +0 -109
  164. package/lib/nodes/ExcalidrawNode/ExcalidrawComponent.d.ts +0 -8
  165. package/lib/nodes/ExcalidrawNode/ExcalidrawComponent.js +0 -110
  166. package/lib/nodes/ExcalidrawNode/ExcalidrawImage.d.ts +0 -50
  167. package/lib/nodes/ExcalidrawNode/ExcalidrawImage.js +0 -55
  168. package/lib/nodes/ExcalidrawNode/index.d.ts +0 -32
  169. package/lib/nodes/ExcalidrawNode/index.js +0 -117
  170. package/lib/nodes/FigmaNode.d.ts +0 -20
  171. package/lib/nodes/FigmaNode.js +0 -52
  172. package/lib/nodes/ImageComponent.d.ts +0 -16
  173. package/lib/nodes/ImageComponent.js +0 -272
  174. package/lib/nodes/ImageNode.d.ts +0 -50
  175. package/lib/nodes/ImageNode.js +0 -151
  176. package/lib/nodes/InlineImageNode/InlineImageComponent.d.ts +0 -26
  177. package/lib/nodes/InlineImageNode/InlineImageComponent.js +0 -161
  178. package/lib/nodes/InlineImageNode/InlineImageNode.d.ts +0 -59
  179. package/lib/nodes/InlineImageNode/InlineImageNode.js +0 -162
  180. package/lib/nodes/KeywordNode.d.ts +0 -14
  181. package/lib/nodes/KeywordNode.js +0 -37
  182. package/lib/nodes/LayoutContainerNode.d.ts +0 -24
  183. package/lib/nodes/LayoutContainerNode.js +0 -95
  184. package/lib/nodes/LayoutItemNode.d.ts +0 -16
  185. package/lib/nodes/LayoutItemNode.js +0 -69
  186. package/lib/nodes/MentionNode.d.ts +0 -20
  187. package/lib/nodes/MentionNode.js +0 -85
  188. package/lib/nodes/PageBreakNode/index.d.ts +0 -17
  189. package/lib/nodes/PageBreakNode/index.js +0 -83
  190. package/lib/nodes/PlaygroundNodes.d.ts +0 -3
  191. package/lib/nodes/PlaygroundNodes.js +0 -75
  192. package/lib/nodes/PollComponent.d.ts +0 -9
  193. package/lib/nodes/PollComponent.js +0 -85
  194. package/lib/nodes/PollNode.d.ts +0 -43
  195. package/lib/nodes/PollNode.js +0 -153
  196. package/lib/nodes/SpecialTextNode.d.ts +0 -24
  197. package/lib/nodes/SpecialTextNode.js +0 -54
  198. package/lib/nodes/StickyComponent.d.ts +0 -10
  199. package/lib/nodes/StickyComponent.js +0 -162
  200. package/lib/nodes/StickyNode.d.ts +0 -31
  201. package/lib/nodes/StickyNode.js +0 -76
  202. package/lib/nodes/TweetNode.d.ts +0 -21
  203. package/lib/nodes/TweetNode.js +0 -119
  204. package/lib/nodes/YouTubeNode.d.ts +0 -22
  205. package/lib/nodes/YouTubeNode.js +0 -84
  206. package/lib/plugins/ActionsPlugin/index.d.ts +0 -5
  207. package/lib/plugins/ActionsPlugin/index.js +0 -168
  208. package/lib/plugins/AutoEmbedPlugin/index.d.ts +0 -19
  209. package/lib/plugins/AutoEmbedPlugin/index.js +0 -158
  210. package/lib/plugins/AutoLinkPlugin/index.d.ts +0 -2
  211. package/lib/plugins/AutoLinkPlugin/index.js +0 -15
  212. package/lib/plugins/AutocompletePlugin/index.d.ts +0 -10
  213. package/lib/plugins/AutocompletePlugin/index.js +0 -2477
  214. package/lib/plugins/CodeActionMenuPlugin/components/CopyButton/index.d.ts +0 -7
  215. package/lib/plugins/CodeActionMenuPlugin/components/CopyButton/index.js +0 -46
  216. package/lib/plugins/CodeActionMenuPlugin/components/PrettierButton/index.d.ts +0 -17
  217. package/lib/plugins/CodeActionMenuPlugin/components/PrettierButton/index.js +0 -115
  218. package/lib/plugins/CodeActionMenuPlugin/index.d.ts +0 -5
  219. package/lib/plugins/CodeActionMenuPlugin/index.js +0 -104
  220. package/lib/plugins/CodeActionMenuPlugin/utils.d.ts +0 -1
  221. package/lib/plugins/CodeActionMenuPlugin/utils.js +0 -22
  222. package/lib/plugins/CodeHighlightPrismPlugin/index.d.ts +0 -2
  223. package/lib/plugins/CodeHighlightPrismPlugin/index.js +0 -14
  224. package/lib/plugins/CodeHighlightShikiPlugin/index.d.ts +0 -2
  225. package/lib/plugins/CodeHighlightShikiPlugin/index.js +0 -14
  226. package/lib/plugins/CollapsiblePlugin/CollapsibleContainerNode.d.ts +0 -25
  227. package/lib/plugins/CollapsiblePlugin/CollapsibleContainerNode.js +0 -135
  228. package/lib/plugins/CollapsiblePlugin/CollapsibleContentNode.d.ts +0 -16
  229. package/lib/plugins/CollapsiblePlugin/CollapsibleContentNode.js +0 -83
  230. package/lib/plugins/CollapsiblePlugin/CollapsibleTitleNode.d.ts +0 -16
  231. package/lib/plugins/CollapsiblePlugin/CollapsibleTitleNode.js +0 -85
  232. package/lib/plugins/CollapsiblePlugin/CollapsibleUtils.d.ts +0 -2
  233. package/lib/plugins/CollapsiblePlugin/CollapsibleUtils.js +0 -12
  234. package/lib/plugins/CollapsiblePlugin/index.d.ts +0 -3
  235. package/lib/plugins/CollapsiblePlugin/index.js +0 -132
  236. package/lib/plugins/CommentPlugin/index.d.ts +0 -9
  237. package/lib/plugins/CommentPlugin/index.js +0 -460
  238. package/lib/plugins/ComponentPickerPlugin/index.d.ts +0 -2
  239. package/lib/plugins/ComponentPickerPlugin/index.js +0 -276
  240. package/lib/plugins/ContextMenuPlugin/index.d.ts +0 -2
  241. package/lib/plugins/ContextMenuPlugin/index.js +0 -112
  242. package/lib/plugins/CounterPlugin/index.d.ts +0 -3
  243. package/lib/plugins/CounterPlugin/index.js +0 -24
  244. package/lib/plugins/DateTimePlugin/index.d.ts +0 -8
  245. package/lib/plugins/DateTimePlugin/index.js +0 -28
  246. package/lib/plugins/DebugPlugin/index.d.ts +0 -3
  247. package/lib/plugins/DebugPlugin/index.js +0 -219
  248. package/lib/plugins/DocsPlugin/index.d.ts +0 -2
  249. package/lib/plugins/DocsPlugin/index.js +0 -4
  250. package/lib/plugins/DragDropPastePlugin/index.d.ts +0 -1
  251. package/lib/plugins/DragDropPastePlugin/index.js +0 -37
  252. package/lib/plugins/DraggableBlockPlugin/index.d.ts +0 -12
  253. package/lib/plugins/DraggableBlockPlugin/index.js +0 -36
  254. package/lib/plugins/EmojiPickerPlugin/index.d.ts +0 -1
  255. package/lib/plugins/EmojiPickerPlugin/index.js +0 -84
  256. package/lib/plugins/EmojisPlugin/index.d.ts +0 -2
  257. package/lib/plugins/EmojisPlugin/index.js +0 -56
  258. package/lib/plugins/EquationsPlugin/index.d.ts +0 -14
  259. package/lib/plugins/EquationsPlugin/index.js +0 -34
  260. package/lib/plugins/ExcalidrawPlugin/index.d.ts +0 -5
  261. package/lib/plugins/ExcalidrawPlugin/index.js +0 -44
  262. package/lib/plugins/FigmaPlugin/index.d.ts +0 -4
  263. package/lib/plugins/FigmaPlugin/index.js +0 -24
  264. package/lib/plugins/FloatingLinkEditorPlugin/index.d.ts +0 -15
  265. package/lib/plugins/FloatingLinkEditorPlugin/index.js +0 -280
  266. package/lib/plugins/FloatingTextFormatToolbarPlugin/index.d.ts +0 -7
  267. package/lib/plugins/FloatingTextFormatToolbarPlugin/index.js +0 -219
  268. package/lib/plugins/ImagesPlugin/index.d.ts +0 -24
  269. package/lib/plugins/ImagesPlugin/index.js +0 -195
  270. package/lib/plugins/InlineImagePlugin/index.d.ts +0 -17
  271. package/lib/plugins/InlineImagePlugin/index.js +0 -180
  272. package/lib/plugins/KeywordsPlugin/index.d.ts +0 -2
  273. package/lib/plugins/KeywordsPlugin/index.js +0 -35
  274. package/lib/plugins/LayoutPlugin/InsertLayoutDialog.d.ts +0 -6
  275. package/lib/plugins/LayoutPlugin/InsertLayoutDialog.js +0 -21
  276. package/lib/plugins/LayoutPlugin/LayoutPlugin.d.ts +0 -7
  277. package/lib/plugins/LayoutPlugin/LayoutPlugin.js +0 -135
  278. package/lib/plugins/LinkPlugin/index.d.ts +0 -6
  279. package/lib/plugins/LinkPlugin/index.js +0 -11
  280. package/lib/plugins/MarkdownShortcutPlugin/index.d.ts +0 -2
  281. package/lib/plugins/MarkdownShortcutPlugin/index.js +0 -6
  282. package/lib/plugins/MarkdownTransformers/index.d.ts +0 -8
  283. package/lib/plugins/MarkdownTransformers/index.js +0 -238
  284. package/lib/plugins/MaxLengthPlugin/index.d.ts +0 -3
  285. package/lib/plugins/MaxLengthPlugin/index.js +0 -41
  286. package/lib/plugins/MentionsPlugin/index.d.ts +0 -2
  287. package/lib/plugins/MentionsPlugin/index.js +0 -564
  288. package/lib/plugins/PageBreakPlugin/index.d.ts +0 -4
  289. package/lib/plugins/PageBreakPlugin/index.js +0 -31
  290. package/lib/plugins/PasteLogPlugin/index.d.ts +0 -2
  291. package/lib/plugins/PasteLogPlugin/index.js +0 -27
  292. package/lib/plugins/PollPlugin/index.d.ts +0 -8
  293. package/lib/plugins/PollPlugin/index.js +0 -38
  294. package/lib/plugins/ShortcutsPlugin/index.d.ts +0 -6
  295. package/lib/plugins/ShortcutsPlugin/index.js +0 -116
  296. package/lib/plugins/ShortcutsPlugin/shortcuts.d.ts +0 -59
  297. package/lib/plugins/ShortcutsPlugin/shortcuts.js +0 -173
  298. package/lib/plugins/SpecialTextPlugin/index.d.ts +0 -2
  299. package/lib/plugins/SpecialTextPlugin/index.js +0 -50
  300. package/lib/plugins/SpeechToTextPlugin/index.d.ts +0 -5
  301. package/lib/plugins/SpeechToTextPlugin/index.js +0 -86
  302. package/lib/plugins/StickyPlugin/index.d.ts +0 -2
  303. package/lib/plugins/StickyPlugin/index.js +0 -16
  304. package/lib/plugins/TabFocusPlugin/index.d.ts +0 -1
  305. package/lib/plugins/TabFocusPlugin/index.js +0 -38
  306. package/lib/plugins/TableActionMenuPlugin/index.d.ts +0 -5
  307. package/lib/plugins/TableActionMenuPlugin/index.js +0 -492
  308. package/lib/plugins/TableCellResizer/index.d.ts +0 -3
  309. package/lib/plugins/TableCellResizer/index.js +0 -297
  310. package/lib/plugins/TableHoverActionsPlugin/index.d.ts +0 -4
  311. package/lib/plugins/TableHoverActionsPlugin/index.js +0 -188
  312. package/lib/plugins/TableOfContentsPlugin/index.d.ts +0 -2
  313. package/lib/plugins/TableOfContentsPlugin/index.js +0 -116
  314. package/lib/plugins/TablePlugin.d.ts +0 -31
  315. package/lib/plugins/TablePlugin.js +0 -63
  316. package/lib/plugins/TestRecorderPlugin/index.d.ts +0 -3
  317. package/lib/plugins/TestRecorderPlugin/index.js +0 -346
  318. package/lib/plugins/ToolbarPlugin/fontSize.d.ts +0 -9
  319. package/lib/plugins/ToolbarPlugin/fontSize.js +0 -84
  320. package/lib/plugins/ToolbarPlugin/index.d.ts +0 -9
  321. package/lib/plugins/ToolbarPlugin/index.js +0 -500
  322. package/lib/plugins/ToolbarPlugin/utils.d.ts +0 -26
  323. package/lib/plugins/ToolbarPlugin/utils.js +0 -247
  324. package/lib/plugins/TreeViewPlugin/index.d.ts +0 -2
  325. package/lib/plugins/TreeViewPlugin/index.js +0 -7
  326. package/lib/plugins/TwitterPlugin/index.d.ts +0 -4
  327. package/lib/plugins/TwitterPlugin/index.js +0 -24
  328. package/lib/plugins/TypingPerfPlugin/index.d.ts +0 -2
  329. package/lib/plugins/TypingPerfPlugin/index.js +0 -97
  330. package/lib/plugins/YouTubePlugin/index.d.ts +0 -4
  331. package/lib/plugins/YouTubePlugin/index.js +0 -24
  332. package/lib/server/validation.d.ts +0 -1
  333. package/lib/server/validation.js +0 -115
  334. package/lib/setupEnv.d.ts +0 -2
  335. package/lib/setupEnv.js +0 -29
  336. package/lib/themes/CommentEditorTheme.d.ts +0 -4
  337. package/lib/themes/CommentEditorTheme.js +0 -11
  338. package/lib/themes/PlaygroundEditorTheme.d.ts +0 -4
  339. package/lib/themes/PlaygroundEditorTheme.js +0 -124
  340. package/lib/themes/StickyEditorTheme.d.ts +0 -4
  341. package/lib/themes/StickyEditorTheme.js +0 -11
  342. package/lib/tyes.dt.d.ts +0 -12
  343. package/lib/tyes.dt.js +0 -4
  344. package/lib/ui/Button.d.ts +0 -12
  345. package/lib/ui/Button.js +0 -6
  346. package/lib/ui/ColorPicker.d.ts +0 -14
  347. package/lib/ui/ColorPicker.js +0 -219
  348. package/lib/ui/ContentEditable.d.ts +0 -9
  349. package/lib/ui/ContentEditable.js +0 -6
  350. package/lib/ui/Dialog.d.ts +0 -10
  351. package/lib/ui/Dialog.js +0 -8
  352. package/lib/ui/DropDown.d.ts +0 -18
  353. package/lib/ui/DropDown.js +0 -133
  354. package/lib/ui/DropdownColorPicker.d.ts +0 -13
  355. package/lib/ui/DropdownColorPicker.js +0 -6
  356. package/lib/ui/EquationEditor.d.ts +0 -8
  357. package/lib/ui/EquationEditor.js +0 -11
  358. package/lib/ui/ExcalidrawModal.d.ts +0 -42
  359. package/lib/ui/ExcalidrawModal.js +0 -103
  360. package/lib/ui/FileInput.d.ts +0 -10
  361. package/lib/ui/FileInput.js +0 -5
  362. package/lib/ui/FlashMessage.d.ts +0 -7
  363. package/lib/ui/FlashMessage.js +0 -6
  364. package/lib/ui/ImageResizer.d.ts +0 -17
  365. package/lib/ui/ImageResizer.js +0 -171
  366. package/lib/ui/KatexEquationAlterer.d.ts +0 -8
  367. package/lib/ui/KatexEquationAlterer.js +0 -23
  368. package/lib/ui/KatexRenderer.d.ts +0 -6
  369. package/lib/ui/KatexRenderer.js +0 -24
  370. package/lib/ui/Modal.d.ts +0 -9
  371. package/lib/ui/Modal.js +0 -48
  372. package/lib/ui/Select.d.ts +0 -8
  373. package/lib/ui/Select.js +0 -5
  374. package/lib/ui/Switch.d.ts +0 -8
  375. package/lib/ui/Switch.js +0 -6
  376. package/lib/ui/TextInput.d.ts +0 -13
  377. package/lib/ui/TextInput.js +0 -7
  378. package/lib/utils/docSerialization.d.ts +0 -3
  379. package/lib/utils/docSerialization.js +0 -60
  380. package/lib/utils/emoji-list.d.ts +0 -20
  381. package/lib/utils/emoji-list.js +0 -16609
  382. package/lib/utils/getDOMRangeRect.d.ts +0 -8
  383. package/lib/utils/getDOMRangeRect.js +0 -26
  384. package/lib/utils/getSelectedNode.d.ts +0 -2
  385. package/lib/utils/getSelectedNode.js +0 -28
  386. package/lib/utils/getThemeSelector.d.ts +0 -2
  387. package/lib/utils/getThemeSelector.js +0 -14
  388. package/lib/utils/isMobileWidth.d.ts +0 -7
  389. package/lib/utils/isMobileWidth.js +0 -11
  390. package/lib/utils/joinClasses.d.ts +0 -1
  391. package/lib/utils/joinClasses.js +0 -7
  392. package/lib/utils/setFloatingElemPosition.d.ts +0 -1
  393. package/lib/utils/setFloatingElemPosition.js +0 -59
  394. package/lib/utils/setFloatingElemPositionForLinkEditor.d.ts +0 -1
  395. package/lib/utils/setFloatingElemPositionForLinkEditor.js +0 -36
  396. package/lib/utils/swipe.d.ts +0 -4
  397. package/lib/utils/swipe.js +0 -94
  398. package/lib/utils/url.d.ts +0 -2
  399. package/lib/utils/url.js +0 -31
@@ -1,402 +0,0 @@
1
- import { $getNodeByKey, $getRoot, $getWritableNodeState, $isDecoratorNode, $isElementNode, $isLineBreakNode, $isRootNode, $isTextNode, createEditor, } from 'lexical';
2
- import { Doc, Map as YMap, XmlElement, XmlText } from 'yjs';
3
- import invariant from '../../utils/invariant';
4
- import { $createCollabDecoratorNode, CollabDecoratorNode, } from './../nodes/CollabDecoratorNode';
5
- import { $createCollabElementNode, CollabElementNode } from './../nodes/CollabElementNode';
6
- import { $createCollabLineBreakNode } from './../nodes/CollabLineBreakNode';
7
- import { $createCollabTextNode, CollabTextNode } from './../nodes/CollabTextNode';
8
- /*****************************************************************************/
9
- const BASE_EXCLUDED_PROPERTIES = new Set([
10
- '__key',
11
- '__parent',
12
- '__next',
13
- '__prev',
14
- '__state',
15
- ]);
16
- const ELEMENT_EXCLUDED_PROPERTIES = new Set([
17
- '__first',
18
- '__last',
19
- '__size',
20
- '__dir',
21
- ]);
22
- const ROOT_EXCLUDED_PROPERTIES = new Set(['__cachedText']);
23
- const TEXT_EXCLUDED_PROPERTIES = new Set(['__text']);
24
- /*****************************************************************************/
25
- function isExcludedProperty(name, node, binding) {
26
- if (BASE_EXCLUDED_PROPERTIES.has(name) ||
27
- typeof node[name] === 'function') {
28
- return true;
29
- }
30
- if ($isTextNode(node)) {
31
- if (TEXT_EXCLUDED_PROPERTIES.has(name)) {
32
- return true;
33
- }
34
- }
35
- else if ($isElementNode(node)) {
36
- if (ELEMENT_EXCLUDED_PROPERTIES.has(name) ||
37
- ($isRootNode(node) && ROOT_EXCLUDED_PROPERTIES.has(name))) {
38
- return true;
39
- }
40
- }
41
- const nodeKlass = node.constructor;
42
- const excludedProperties = binding.excludedProperties.get(nodeKlass);
43
- return excludedProperties != null && excludedProperties.has(name);
44
- }
45
- function getSharedType(sharedType, property) {
46
- if (sharedType instanceof YMap) {
47
- return sharedType.get(property);
48
- }
49
- else {
50
- return sharedType.getAttribute(property);
51
- }
52
- }
53
- function setSharedType(sharedType, property, value) {
54
- if (sharedType instanceof YMap) {
55
- sharedType.set(property, value);
56
- }
57
- else {
58
- sharedType.setAttribute(property, value);
59
- }
60
- }
61
- function syncNodeStateFromLexical(binding, sharedType, prevLexicalNode, nextLexicalNode) {
62
- const nextState = nextLexicalNode.__state;
63
- const existingState = getSharedType(sharedType, '__state');
64
- if (!nextState) {
65
- return;
66
- }
67
- const [unknown, known] = nextState.getInternalState();
68
- const prevState = prevLexicalNode && prevLexicalNode.__state;
69
- const stateMap = existingState instanceof YMap ? existingState : new YMap();
70
- if (prevState === nextState) {
71
- return;
72
- }
73
- const [prevUnknown, prevKnown] = prevState && stateMap.doc
74
- ? prevState.getInternalState()
75
- : [undefined, new Map()];
76
- if (unknown) {
77
- for (const [k, v] of Object.entries(unknown)) {
78
- if (prevUnknown && v !== prevUnknown[k]) {
79
- stateMap.set(k, v);
80
- }
81
- }
82
- }
83
- for (const [stateConfig, v] of known) {
84
- if (prevKnown.get(stateConfig) !== v) {
85
- stateMap.set(stateConfig.key, stateConfig.unparse(v));
86
- }
87
- }
88
- if (!existingState) {
89
- setSharedType(sharedType, '__state', stateMap);
90
- }
91
- }
92
- /*****************************************************************************/
93
- export function createLexicalNodeFromCollabNode(binding, collabNode, parentKey) {
94
- const type = collabNode.getType();
95
- const registeredNodes = binding.editor._nodes;
96
- const nodeInfo = registeredNodes.get(type);
97
- invariant(nodeInfo !== undefined, 'Node %s is not registered', type);
98
- const lexicalNode = new nodeInfo.klass();
99
- lexicalNode.__parent = parentKey;
100
- collabNode._key = lexicalNode.__key;
101
- if (collabNode instanceof CollabElementNode) {
102
- const xmlText = collabNode._xmlText;
103
- collabNode.syncPropertiesFromYjs(binding, null);
104
- collabNode.applyChildrenYjsDelta(binding, xmlText.toDelta());
105
- collabNode.syncChildrenFromYjs(binding);
106
- }
107
- else if (collabNode instanceof CollabTextNode) {
108
- collabNode.syncPropertiesAndTextFromYjs(binding, null);
109
- }
110
- else if (collabNode instanceof CollabDecoratorNode) {
111
- collabNode.syncPropertiesFromYjs(binding, null);
112
- }
113
- binding.collabNodeMap.set(lexicalNode.__key, collabNode);
114
- return lexicalNode;
115
- }
116
- export function getIndexOfYjsNode(yjsParentNode, yjsNode) {
117
- let node = yjsParentNode.firstChild;
118
- let i = -1;
119
- if (node === null) {
120
- return -1;
121
- }
122
- do {
123
- i++;
124
- if (node === yjsNode) {
125
- return i;
126
- }
127
- // @ts-expect-error Sibling exists but type is not available from YJS.
128
- node = node.nextSibling;
129
- if (node === null) {
130
- return -1;
131
- }
132
- } while (node !== null);
133
- return i;
134
- }
135
- export function getNodeTypeFromSharedType(sharedType) {
136
- const type = getSharedType(sharedType, '__type');
137
- invariant(typeof type === 'string' || typeof type === 'undefined', 'Expected shared type to include type attribute');
138
- return type;
139
- }
140
- export function syncPropertiesFromLexical(binding, sharedType, prevLexicalNode, nextLexicalNode) {
141
- const type = nextLexicalNode.__type;
142
- const nodeProperties = binding.nodeProperties;
143
- let properties = nodeProperties.get(type);
144
- if (properties === undefined) {
145
- properties = Object.keys(nextLexicalNode).filter((property) => {
146
- return !isExcludedProperty(property, nextLexicalNode, binding);
147
- });
148
- nodeProperties.set(type, properties);
149
- }
150
- const EditorClass = binding.editor.constructor;
151
- syncNodeStateFromLexical(binding, sharedType, prevLexicalNode, nextLexicalNode);
152
- for (let i = 0; i < properties.length; i++) {
153
- const property = properties[i];
154
- const prevValue =
155
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
156
- prevLexicalNode === null ? undefined : prevLexicalNode[property];
157
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
158
- let nextValue = nextLexicalNode[property];
159
- if (prevValue !== nextValue) {
160
- if (nextValue instanceof EditorClass) {
161
- const docMap = binding.docMap;
162
- let prevDoc;
163
- if (prevValue instanceof EditorClass) {
164
- const prevKey = prevValue._key;
165
- prevDoc = docMap.get(prevKey);
166
- docMap.delete(prevKey);
167
- }
168
- // If we already have a document, use it.
169
- const doc = prevDoc || new Doc();
170
- const key = doc.guid;
171
- nextValue._key = key;
172
- docMap.set(key, doc);
173
- nextValue = doc;
174
- // Mark the node dirty as we've assigned a new key to it
175
- binding.editor.update(() => {
176
- nextLexicalNode.markDirty();
177
- });
178
- }
179
- setSharedType(sharedType, property, nextValue);
180
- }
181
- }
182
- }
183
- export function spliceString(str, index, delCount, newText) {
184
- return str.slice(0, index) + newText + str.slice(index + delCount);
185
- }
186
- export function getPositionFromElementAndOffset(node, offset, boundaryIsEdge) {
187
- let index = 0;
188
- let i = 0;
189
- const children = node._children;
190
- const childrenLength = children.length;
191
- for (; i < childrenLength; i++) {
192
- const child = children[i];
193
- const childOffset = index;
194
- const size = child.getSize();
195
- index += size;
196
- const exceedsBoundary = boundaryIsEdge ? index >= offset : index > offset;
197
- if (exceedsBoundary && child instanceof CollabTextNode) {
198
- let textOffset = offset - childOffset - 1;
199
- if (textOffset < 0) {
200
- textOffset = 0;
201
- }
202
- const diffLength = index - offset;
203
- return {
204
- length: diffLength,
205
- node: child,
206
- nodeIndex: i,
207
- offset: textOffset,
208
- };
209
- }
210
- if (index > offset) {
211
- return {
212
- length: 0,
213
- node: child,
214
- nodeIndex: i,
215
- offset: childOffset,
216
- };
217
- }
218
- else if (i === childrenLength - 1) {
219
- return {
220
- length: 0,
221
- node: null,
222
- nodeIndex: i + 1,
223
- offset: childOffset + 1,
224
- };
225
- }
226
- }
227
- return {
228
- length: 0,
229
- node: null,
230
- nodeIndex: 0,
231
- offset: 0,
232
- };
233
- }
234
- export function doesSelectionNeedRecovering(selection) {
235
- const anchor = selection.anchor;
236
- const focus = selection.focus;
237
- let recoveryNeeded = false;
238
- try {
239
- const anchorNode = anchor.getNode();
240
- const focusNode = focus.getNode();
241
- if (
242
- // We might have removed a node that no longer exists
243
- !anchorNode.isAttached() ||
244
- !focusNode.isAttached() ||
245
- // If we've split a node, then the offset might not be right
246
- ($isTextNode(anchorNode) &&
247
- anchor.offset > anchorNode.getTextContentSize()) ||
248
- ($isTextNode(focusNode) && focus.offset > focusNode.getTextContentSize())) {
249
- recoveryNeeded = true;
250
- }
251
- }
252
- catch (e) {
253
- // Sometimes checking nor a node via getNode might trigger
254
- // an error, so we need recovery then too.
255
- recoveryNeeded = true;
256
- }
257
- return recoveryNeeded;
258
- }
259
- export function syncWithTransaction(binding, fn) {
260
- binding.doc.transact(fn, binding);
261
- }
262
- /*****************************************************************************/
263
- function $syncNodeStateToLexical(binding, sharedType, lexicalNode) {
264
- const existingState = getSharedType(sharedType, '__state');
265
- if (!(existingState instanceof YMap)) {
266
- return;
267
- }
268
- // This should only called when creating the node initially,
269
- // incremental updates to state come in through YMapEvent
270
- // with the __state as the target.
271
- $getWritableNodeState(lexicalNode).updateFromJSON(existingState.toJSON());
272
- }
273
- /*****************************************************************************/
274
- export function $createCollabNodeFromLexicalNode(binding, lexicalNode, parent) {
275
- const nodeType = lexicalNode.__type;
276
- let collabNode;
277
- if ($isElementNode(lexicalNode)) {
278
- const xmlText = new XmlText();
279
- collabNode = $createCollabElementNode(xmlText, parent, nodeType);
280
- collabNode.syncPropertiesFromLexical(binding, lexicalNode, null);
281
- collabNode.syncChildrenFromLexical(binding, lexicalNode, null, null, null);
282
- }
283
- else if ($isTextNode(lexicalNode)) {
284
- // TODO create a token text node for token, segmented nodes.
285
- const map = new YMap();
286
- collabNode = $createCollabTextNode(map, lexicalNode.__text, parent, nodeType);
287
- collabNode.syncPropertiesAndTextFromLexical(binding, lexicalNode, null);
288
- }
289
- else if ($isLineBreakNode(lexicalNode)) {
290
- const map = new YMap();
291
- map.set('__type', 'linebreak');
292
- collabNode = $createCollabLineBreakNode(map, parent);
293
- }
294
- else if ($isDecoratorNode(lexicalNode)) {
295
- const xmlElem = new XmlElement();
296
- collabNode = $createCollabDecoratorNode(xmlElem, parent, nodeType);
297
- collabNode.syncPropertiesFromLexical(binding, lexicalNode, null);
298
- }
299
- else {
300
- invariant(false, 'Expected text, element, decorator, or linebreak node');
301
- }
302
- collabNode._key = lexicalNode.__key;
303
- return collabNode;
304
- }
305
- export function $getOrInitCollabNodeFromSharedType(binding, sharedType, parent) {
306
- const collabNode = sharedType._collabNode;
307
- if (collabNode === undefined) {
308
- const registeredNodes = binding.editor._nodes;
309
- const type = getNodeTypeFromSharedType(sharedType);
310
- invariant(typeof type === 'string', 'Expected shared type to include type attribute');
311
- const nodeInfo = registeredNodes.get(type);
312
- invariant(nodeInfo !== undefined, 'Node %s is not registered', type);
313
- const sharedParent = sharedType.parent;
314
- const targetParent = parent === undefined && sharedParent !== null
315
- ? $getOrInitCollabNodeFromSharedType(binding, sharedParent)
316
- : parent || null;
317
- invariant(targetParent instanceof CollabElementNode, 'Expected parent to be a collab element node');
318
- if (sharedType instanceof XmlText) {
319
- return $createCollabElementNode(sharedType, targetParent, type);
320
- }
321
- else if (sharedType instanceof YMap) {
322
- if (type === 'linebreak') {
323
- return $createCollabLineBreakNode(sharedType, targetParent);
324
- }
325
- return $createCollabTextNode(sharedType, '', targetParent, type);
326
- }
327
- else if (sharedType instanceof XmlElement) {
328
- return $createCollabDecoratorNode(sharedType, targetParent, type);
329
- }
330
- }
331
- return collabNode;
332
- }
333
- export function $syncPropertiesFromYjs(binding, sharedType, lexicalNode, keysChanged) {
334
- const properties = keysChanged === null
335
- ? sharedType instanceof YMap
336
- ? Array.from(sharedType.keys())
337
- : Object.keys(sharedType.getAttributes())
338
- : Array.from(keysChanged);
339
- let writableNode;
340
- for (let i = 0; i < properties.length; i++) {
341
- const property = properties[i];
342
- if (isExcludedProperty(property, lexicalNode, binding)) {
343
- if (property === '__state') {
344
- if (!writableNode) {
345
- writableNode = lexicalNode.getWritable();
346
- }
347
- $syncNodeStateToLexical(binding, sharedType, writableNode);
348
- }
349
- continue;
350
- }
351
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
352
- const prevValue = lexicalNode[property];
353
- let nextValue = getSharedType(sharedType, property);
354
- if (prevValue !== nextValue) {
355
- if (nextValue instanceof Doc) {
356
- const docMap = binding.docMap;
357
- if (prevValue instanceof Doc) {
358
- docMap.delete(prevValue.guid);
359
- }
360
- const nestedEditor = createEditor();
361
- const key = nextValue.guid;
362
- nestedEditor._key = key;
363
- docMap.set(key, nextValue);
364
- nextValue = nestedEditor;
365
- }
366
- if (writableNode === undefined) {
367
- writableNode = lexicalNode.getWritable();
368
- }
369
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
370
- writableNode[property] = nextValue;
371
- }
372
- }
373
- }
374
- export function $moveSelectionToPreviousNode(anchorNodeKey, currentEditorState) {
375
- const anchorNode = currentEditorState._nodeMap.get(anchorNodeKey);
376
- if (!anchorNode) {
377
- $getRoot().selectStart();
378
- return;
379
- }
380
- // Get previous node
381
- const prevNodeKey = anchorNode.__prev;
382
- let prevNode = null;
383
- if (prevNodeKey) {
384
- prevNode = $getNodeByKey(prevNodeKey);
385
- }
386
- // If previous node not found, get parent node
387
- if (prevNode === null && anchorNode.__parent !== null) {
388
- prevNode = $getNodeByKey(anchorNode.__parent);
389
- }
390
- if (prevNode === null) {
391
- $getRoot().selectStart();
392
- return;
393
- }
394
- if (prevNode !== null && prevNode.isAttached()) {
395
- prevNode.selectEnd();
396
- return;
397
- }
398
- else {
399
- // If the found node is also deleted, select the next one
400
- $moveSelectionToPreviousNode(prevNode.__key, currentEditorState);
401
- }
402
- }
@@ -1,3 +0,0 @@
1
- import { Doc } from 'yjs';
2
- import { Provider } from './State';
3
- export declare function createWebsocketProvider(id: string, docMap: Map<string, Doc>): Provider;
@@ -1,21 +0,0 @@
1
- import { Doc } from 'yjs';
2
- import { WebsocketProvider } from './provider/websocket';
3
- const url = new URL(window.location.href);
4
- const params = new URLSearchParams(url.search);
5
- const WEBSOCKET_ENDPOINT = params.get('collabEndpoint') || 'ws://localhost:1234';
6
- const WEBSOCKET_SLUG = 'playground';
7
- const WEBSOCKET_ID = params.get('collabId') || '0';
8
- // parent dom -> child doc
9
- export function createWebsocketProvider(id, docMap) {
10
- let doc = docMap.get(id);
11
- if (doc === undefined) {
12
- doc = new Doc();
13
- docMap.set(id, doc);
14
- }
15
- else {
16
- doc.load();
17
- }
18
- return new WebsocketProvider(WEBSOCKET_ENDPOINT, WEBSOCKET_SLUG + '/' + WEBSOCKET_ID + '/' + id, doc, {
19
- connect: false,
20
- });
21
- }
@@ -1,41 +0,0 @@
1
- import type { LexicalEditor } from 'lexical';
2
- import { Array as YArray, Map as YMap } from 'yjs';
3
- import { Provider } from '../collab/yjs/State';
4
- export type Comment = {
5
- author: string;
6
- content: string;
7
- deleted: boolean;
8
- id: string;
9
- timeStamp: number;
10
- type: 'comment';
11
- };
12
- export type Thread = {
13
- comments: Array<Comment>;
14
- id: string;
15
- quote: string;
16
- type: 'thread';
17
- };
18
- export type Comments = Array<Thread | Comment>;
19
- export declare function createComment(content: string, author: string, id?: string, timeStamp?: number, deleted?: boolean): Comment;
20
- export declare function createThread(quote: string, comments: Array<Comment>, id?: string): Thread;
21
- export declare class CommentStore {
22
- _editor: LexicalEditor;
23
- _comments: Comments;
24
- _changeListeners: Set<() => void>;
25
- _collabProvider: null | Provider;
26
- constructor(editor: LexicalEditor);
27
- isCollaborative(): boolean;
28
- getComments(): Comments;
29
- addComment(commentOrThread: Comment | Thread, thread?: Thread, offset?: number): void;
30
- deleteCommentOrThread(commentOrThread: Comment | Thread, thread?: Thread): {
31
- markedComment: Comment;
32
- index: number;
33
- } | null;
34
- registerOnChange(onChange: () => void): () => void;
35
- _withRemoteTransaction(fn: () => void): void;
36
- _withLocalTransaction(fn: () => void): void;
37
- _getCollabComments(): null | YArray<any>;
38
- _createCollabSharedMap(commentOrThread: Comment | Thread): YMap<any>;
39
- registerCollaboration(provider: Provider): () => void;
40
- }
41
- export declare function useCommentStore(commentStore: CommentStore): Comments;