@dxos/react-ui-editor 0.3.11-main.5a4849d → 0.3.11-main.604a65a

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 (218) hide show
  1. package/dist/lib/browser/index.mjs +2474 -1566
  2. package/dist/lib/browser/index.mjs.map +4 -4
  3. package/dist/lib/browser/meta.json +1 -1
  4. package/dist/types/src/components/TextEditor/MarkdownEditor.stories.d.ts +16 -14
  5. package/dist/types/src/components/TextEditor/MarkdownEditor.stories.d.ts.map +1 -1
  6. package/dist/types/src/components/TextEditor/TextEditor.d.ts +20 -17
  7. package/dist/types/src/components/TextEditor/TextEditor.d.ts.map +1 -1
  8. package/dist/types/src/components/TextEditor/TextEditor.stories.d.ts +6 -6
  9. package/dist/types/src/components/TextEditor/TextEditor.stories.d.ts.map +1 -1
  10. package/dist/types/src/{hooks/automerge → components/TextEditor}/automerge.stories.d.ts +6 -1
  11. package/dist/types/src/components/TextEditor/automerge.stories.d.ts.map +1 -0
  12. package/dist/types/src/components/TextEditor/comments.stories.d.ts +26 -0
  13. package/dist/types/src/components/TextEditor/comments.stories.d.ts.map +1 -0
  14. package/dist/types/src/components/TextEditor/hooks.stories.d.ts +23 -0
  15. package/dist/types/src/components/TextEditor/hooks.stories.d.ts.map +1 -0
  16. package/dist/types/src/components/Toolbar/Toolbar.d.ts +25 -0
  17. package/dist/types/src/components/Toolbar/Toolbar.d.ts.map +1 -0
  18. package/dist/types/src/components/Toolbar/Toolbar.stories.d.ts +23 -0
  19. package/dist/types/src/components/Toolbar/Toolbar.stories.d.ts.map +1 -0
  20. package/dist/types/src/components/Toolbar/index.d.ts +2 -0
  21. package/dist/types/src/components/Toolbar/index.d.ts.map +1 -0
  22. package/dist/types/src/components/index.d.ts +1 -0
  23. package/dist/types/src/components/index.d.ts.map +1 -1
  24. package/dist/types/src/extensions/autocomplete.d.ts.map +1 -1
  25. package/dist/types/src/extensions/automerge/automerge.d.ts +9 -0
  26. package/dist/types/src/extensions/automerge/automerge.d.ts.map +1 -0
  27. package/dist/types/src/extensions/automerge/automerge.spec.d.ts +2 -0
  28. package/dist/types/src/extensions/automerge/automerge.spec.d.ts.map +1 -0
  29. package/dist/types/src/extensions/automerge/automerge.test.d.ts +2 -0
  30. package/dist/types/src/extensions/automerge/automerge.test.d.ts.map +1 -0
  31. package/dist/types/src/extensions/automerge/cursor.d.ts +5 -0
  32. package/dist/types/src/extensions/automerge/cursor.d.ts.map +1 -0
  33. package/dist/types/src/extensions/automerge/defs.d.ts +24 -0
  34. package/dist/types/src/extensions/automerge/defs.d.ts.map +1 -0
  35. package/dist/types/src/extensions/automerge/index.d.ts +3 -0
  36. package/dist/types/src/extensions/automerge/index.d.ts.map +1 -0
  37. package/dist/types/src/extensions/automerge/semaphore.d.ts +15 -0
  38. package/dist/types/src/extensions/automerge/semaphore.d.ts.map +1 -0
  39. package/dist/types/src/extensions/automerge/update-automerge.d.ts +5 -0
  40. package/dist/types/src/extensions/automerge/update-automerge.d.ts.map +1 -0
  41. package/dist/types/src/extensions/automerge/update-codemirror.d.ts.map +1 -0
  42. package/dist/types/src/extensions/awareness.d.ts +46 -0
  43. package/dist/types/src/extensions/awareness.d.ts.map +1 -0
  44. package/dist/types/src/extensions/basic.d.ts +4 -5
  45. package/dist/types/src/extensions/basic.d.ts.map +1 -1
  46. package/dist/types/src/extensions/comments.d.ts +37 -20
  47. package/dist/types/src/extensions/comments.d.ts.map +1 -1
  48. package/dist/types/src/extensions/cursor.d.ts +25 -0
  49. package/dist/types/src/extensions/cursor.d.ts.map +1 -0
  50. package/dist/types/src/extensions/index.d.ts +4 -7
  51. package/dist/types/src/extensions/index.d.ts.map +1 -1
  52. package/dist/types/src/extensions/markdown/bundle.d.ts +3 -6
  53. package/dist/types/src/extensions/markdown/bundle.d.ts.map +1 -1
  54. package/dist/types/src/extensions/markdown/code.d.ts.map +1 -0
  55. package/dist/types/src/extensions/markdown/formatting.d.ts +13 -0
  56. package/dist/types/src/extensions/markdown/formatting.d.ts.map +1 -0
  57. package/dist/types/src/extensions/markdown/heading.d.ts +6 -0
  58. package/dist/types/src/extensions/markdown/heading.d.ts.map +1 -0
  59. package/dist/types/src/extensions/markdown/highlight.d.ts.map +1 -1
  60. package/dist/types/src/extensions/markdown/hr.d.ts.map +1 -0
  61. package/dist/types/src/extensions/markdown/image.d.ts.map +1 -0
  62. package/dist/types/src/extensions/markdown/index.d.ts +8 -0
  63. package/dist/types/src/extensions/markdown/index.d.ts.map +1 -1
  64. package/dist/types/src/extensions/markdown/link.d.ts.map +1 -0
  65. package/dist/types/src/extensions/markdown/table.d.ts.map +1 -0
  66. package/dist/types/src/extensions/markdown/tasklist.d.ts.map +1 -0
  67. package/dist/types/src/extensions/mention.d.ts.map +1 -1
  68. package/dist/types/src/extensions/outliner.d.ts +4 -0
  69. package/dist/types/src/extensions/outliner.d.ts.map +1 -0
  70. package/dist/types/src/hooks/awareness-provider.d.ts +31 -0
  71. package/dist/types/src/hooks/awareness-provider.d.ts.map +1 -0
  72. package/dist/types/src/hooks/defs.d.ts +25 -0
  73. package/dist/types/src/hooks/defs.d.ts.map +1 -0
  74. package/dist/types/src/hooks/index.d.ts +5 -1
  75. package/dist/types/src/hooks/index.d.ts.map +1 -1
  76. package/dist/types/src/hooks/useActionHandler.d.ts +4 -0
  77. package/dist/types/src/hooks/useActionHandler.d.ts.map +1 -0
  78. package/dist/types/src/hooks/useEditorView.d.ts +17 -0
  79. package/dist/types/src/hooks/useEditorView.d.ts.map +1 -0
  80. package/dist/types/src/hooks/useTextEditor.d.ts +39 -0
  81. package/dist/types/src/hooks/useTextEditor.d.ts.map +1 -0
  82. package/dist/types/src/hooks/useTextModel.d.ts +2 -31
  83. package/dist/types/src/hooks/useTextModel.d.ts.map +1 -1
  84. package/dist/types/src/index.d.ts +3 -0
  85. package/dist/types/src/index.d.ts.map +1 -1
  86. package/dist/types/src/styles/cursors.d.ts.map +1 -0
  87. package/dist/types/src/styles/index.d.ts +1 -0
  88. package/dist/types/src/styles/index.d.ts.map +1 -1
  89. package/dist/types/src/styles/markdown.d.ts +2 -2
  90. package/dist/types/src/styles/markdown.d.ts.map +1 -1
  91. package/dist/types/src/styles/tokens.d.ts +1 -0
  92. package/dist/types/src/styles/tokens.d.ts.map +1 -1
  93. package/dist/types/src/themes/default.d.ts.map +1 -1
  94. package/dist/types/src/util.d.ts +7 -0
  95. package/dist/types/src/util.d.ts.map +1 -0
  96. package/package.json +48 -36
  97. package/src/components/TextEditor/MarkdownEditor.stories.tsx +84 -91
  98. package/src/components/TextEditor/TextEditor.stories.tsx +12 -46
  99. package/src/components/TextEditor/TextEditor.tsx +136 -95
  100. package/src/{hooks/automerge → components/TextEditor}/automerge.stories.tsx +65 -6
  101. package/src/components/TextEditor/comments.stories.tsx +357 -0
  102. package/src/components/TextEditor/hooks.stories.tsx +106 -0
  103. package/src/components/Toolbar/Toolbar.stories.tsx +90 -0
  104. package/src/components/Toolbar/Toolbar.tsx +166 -0
  105. package/src/components/Toolbar/index.ts +5 -0
  106. package/src/components/index.ts +1 -0
  107. package/src/extensions/autocomplete.ts +23 -19
  108. package/src/extensions/automerge/automerge.spec.tsx +76 -0
  109. package/src/extensions/automerge/automerge.test.ts +13 -0
  110. package/src/extensions/automerge/automerge.ts +103 -0
  111. package/src/extensions/automerge/cursor.ts +52 -0
  112. package/src/extensions/automerge/defs.ts +41 -0
  113. package/src/extensions/automerge/index.ts +6 -0
  114. package/src/extensions/automerge/semaphore.ts +81 -0
  115. package/src/extensions/automerge/update-automerge.ts +49 -0
  116. package/src/{hooks → extensions}/automerge/update-codemirror.ts +17 -9
  117. package/src/extensions/awareness.ts +310 -0
  118. package/src/extensions/basic.ts +17 -10
  119. package/src/extensions/comments.ts +327 -256
  120. package/src/extensions/cursor.ts +50 -0
  121. package/src/extensions/index.ts +4 -7
  122. package/src/extensions/markdown/bundle.ts +23 -28
  123. package/src/extensions/markdown/code.ts +150 -0
  124. package/src/extensions/markdown/formatting.ts +188 -0
  125. package/src/extensions/markdown/heading.ts +59 -0
  126. package/src/extensions/markdown/highlight.ts +11 -26
  127. package/src/extensions/markdown/hr.ts +71 -0
  128. package/src/extensions/markdown/image.ts +87 -0
  129. package/src/extensions/markdown/index.ts +8 -0
  130. package/src/extensions/{link.ts → markdown/link.ts} +87 -86
  131. package/src/extensions/{table.ts → markdown/table.ts} +10 -4
  132. package/src/extensions/markdown/tasklist.ts +110 -0
  133. package/src/extensions/mention.ts +9 -2
  134. package/src/extensions/outliner.ts +12 -0
  135. package/src/hooks/awareness-provider.ts +124 -0
  136. package/src/hooks/defs.ts +42 -0
  137. package/src/hooks/index.ts +6 -1
  138. package/src/hooks/useActionHandler.ts +62 -0
  139. package/src/hooks/useEditorView.ts +29 -0
  140. package/src/hooks/useTextEditor.ts +153 -0
  141. package/src/hooks/useTextModel.ts +33 -116
  142. package/src/index.ts +3 -0
  143. package/src/styles/index.ts +1 -0
  144. package/src/styles/markdown.ts +9 -12
  145. package/src/styles/tokens.ts +3 -0
  146. package/src/themes/default.ts +53 -80
  147. package/src/util.ts +41 -0
  148. package/dist/types/src/components/TextEditor/codemirror.stories.d.ts +0 -12
  149. package/dist/types/src/components/TextEditor/codemirror.stories.d.ts.map +0 -1
  150. package/dist/types/src/extensions/code.d.ts.map +0 -1
  151. package/dist/types/src/extensions/hr.d.ts.map +0 -1
  152. package/dist/types/src/extensions/image.d.ts.map +0 -1
  153. package/dist/types/src/extensions/link.d.ts.map +0 -1
  154. package/dist/types/src/extensions/mermaid.d.ts +0 -3
  155. package/dist/types/src/extensions/mermaid.d.ts.map +0 -1
  156. package/dist/types/src/extensions/table.d.ts.map +0 -1
  157. package/dist/types/src/extensions/tasklist.d.ts.map +0 -1
  158. package/dist/types/src/extensions/util.d.ts +0 -5
  159. package/dist/types/src/extensions/util.d.ts.map +0 -1
  160. package/dist/types/src/hooks/automerge/automerge.stories.d.ts.map +0 -1
  161. package/dist/types/src/hooks/automerge/handle.d.ts +0 -9
  162. package/dist/types/src/hooks/automerge/handle.d.ts.map +0 -1
  163. package/dist/types/src/hooks/automerge/index.d.ts +0 -3
  164. package/dist/types/src/hooks/automerge/index.d.ts.map +0 -1
  165. package/dist/types/src/hooks/automerge/plugin.d.ts +0 -26
  166. package/dist/types/src/hooks/automerge/plugin.d.ts.map +0 -1
  167. package/dist/types/src/hooks/automerge/semaphore.d.ts +0 -19
  168. package/dist/types/src/hooks/automerge/semaphore.d.ts.map +0 -1
  169. package/dist/types/src/hooks/automerge/update-automerge.d.ts +0 -6
  170. package/dist/types/src/hooks/automerge/update-automerge.d.ts.map +0 -1
  171. package/dist/types/src/hooks/automerge/update-codemirror.d.ts.map +0 -1
  172. package/dist/types/src/hooks/yjs/cursors.d.ts.map +0 -1
  173. package/dist/types/src/hooks/yjs/index.d.ts +0 -3
  174. package/dist/types/src/hooks/yjs/index.d.ts.map +0 -1
  175. package/dist/types/src/hooks/yjs/space-provider.d.ts +0 -27
  176. package/dist/types/src/hooks/yjs/space-provider.d.ts.map +0 -1
  177. package/dist/types/src/hooks/yjs/yjs.stories.d.ts +0 -12
  178. package/dist/types/src/hooks/yjs/yjs.stories.d.ts.map +0 -1
  179. package/dist/types/src/hooks/yjs/yjs.test.d.ts +0 -2
  180. package/dist/types/src/hooks/yjs/yjs.test.d.ts.map +0 -1
  181. package/dist/types/src/testing/index.d.ts +0 -3
  182. package/dist/types/src/testing/index.d.ts.map +0 -1
  183. package/dist/types/src/testing/proto/gen/schema.d.ts +0 -15
  184. package/dist/types/src/testing/proto/gen/schema.d.ts.map +0 -1
  185. package/dist/types/src/testing/proto/index.d.ts +0 -2
  186. package/dist/types/src/testing/proto/index.d.ts.map +0 -1
  187. package/dist/types/src/testing/replicator.d.ts +0 -45
  188. package/dist/types/src/testing/replicator.d.ts.map +0 -1
  189. package/src/components/TextEditor/codemirror.stories.ts +0 -114
  190. package/src/extensions/code.ts +0 -99
  191. package/src/extensions/hr.ts +0 -74
  192. package/src/extensions/image.ts +0 -69
  193. package/src/extensions/mermaid.ts +0 -11
  194. package/src/extensions/tasklist.ts +0 -121
  195. package/src/extensions/util.ts +0 -18
  196. package/src/hooks/automerge/handle.ts +0 -14
  197. package/src/hooks/automerge/index.ts +0 -6
  198. package/src/hooks/automerge/plugin.ts +0 -132
  199. package/src/hooks/automerge/semaphore.ts +0 -78
  200. package/src/hooks/automerge/update-automerge.ts +0 -44
  201. package/src/hooks/yjs/index.ts +0 -6
  202. package/src/hooks/yjs/space-provider.ts +0 -126
  203. package/src/hooks/yjs/yjs.stories.tsx +0 -56
  204. package/src/hooks/yjs/yjs.test.ts +0 -59
  205. package/src/testing/index.ts +0 -6
  206. package/src/testing/proto/gen/schema.ts +0 -49
  207. package/src/testing/proto/index.ts +0 -5
  208. package/src/testing/proto/schema.proto +0 -15
  209. package/src/testing/replicator.ts +0 -189
  210. /package/dist/types/src/{hooks → extensions}/automerge/update-codemirror.d.ts +0 -0
  211. /package/dist/types/src/extensions/{code.d.ts → markdown/code.d.ts} +0 -0
  212. /package/dist/types/src/extensions/{hr.d.ts → markdown/hr.d.ts} +0 -0
  213. /package/dist/types/src/extensions/{image.d.ts → markdown/image.d.ts} +0 -0
  214. /package/dist/types/src/extensions/{link.d.ts → markdown/link.d.ts} +0 -0
  215. /package/dist/types/src/extensions/{table.d.ts → markdown/table.d.ts} +0 -0
  216. /package/dist/types/src/extensions/{tasklist.d.ts → markdown/tasklist.d.ts} +0 -0
  217. /package/dist/types/src/{hooks/yjs → styles}/cursors.d.ts +0 -0
  218. /package/src/{hooks/yjs → styles}/cursors.ts +0 -0
@@ -0,0 +1,39 @@
1
+ import { type EditorStateConfig, type Extension, type StateEffect } from '@codemirror/state';
2
+ import { EditorView } from '@codemirror/view';
3
+ import { type RefObject } from 'react';
4
+ import { type ThemeMode } from '@dxos/react-ui';
5
+ import { type ThemeStyles } from '..//styles';
6
+ export type UseTextEditorOptions = {
7
+ autoFocus?: boolean;
8
+ scrollTo?: StateEffect<any>;
9
+ debug?: boolean;
10
+ } & EditorStateConfig;
11
+ export type UseTextEditor = {
12
+ parentRef: RefObject<HTMLDivElement>;
13
+ view?: EditorView;
14
+ };
15
+ /**
16
+ * Hook for creating editor.
17
+ */
18
+ export declare const useTextEditor: ({ autoFocus, scrollTo, debug, doc, selection, extensions, }?: UseTextEditorOptions) => UseTextEditor;
19
+ export type DataExtensionsOptions = {
20
+ readonly?: boolean;
21
+ };
22
+ export declare const createDataExtensions: ({ readonly }?: {
23
+ readonly?: boolean | undefined;
24
+ }) => Extension;
25
+ export type ThemeExtensionsOptions = {
26
+ theme?: ThemeStyles;
27
+ themeMode?: ThemeMode;
28
+ lineWrap?: boolean;
29
+ slots?: {
30
+ editor?: {
31
+ className?: string;
32
+ };
33
+ content?: {
34
+ className?: string;
35
+ };
36
+ };
37
+ };
38
+ export declare const createThemeExtensions: ({ theme, themeMode, slots }?: ThemeExtensionsOptions) => Extension;
39
+ //# sourceMappingURL=useTextEditor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTextEditor.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useTextEditor.ts"],"names":[],"mappings":"AAIA,OAAO,EAGL,KAAK,iBAAiB,EACtB,KAAK,SAAS,EACd,KAAK,WAAW,EACjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,KAAK,SAAS,EAA+B,MAAM,OAAO,CAAC;AAGpE,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAGhD,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AAI9C,MAAM,MAAM,oBAAoB,GAAG;IACjC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC;IAC5B,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,GAAG,iBAAiB,CAAC;AAEtB,MAAM,MAAM,aAAa,GAAG;IAC1B,SAAS,EAAE,SAAS,CAAC,cAAc,CAAC,CAAC;IACrC,IAAI,CAAC,EAAE,UAAU,CAAC;CACnB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,aAAa,iEAOvB,oBAAoB,KAAQ,aAqE9B,CAAC;AAIF,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAGF,eAAO,MAAM,oBAAoB;;MAAgC,SAMhE,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE;QACN,MAAM,CAAC,EAAE;YACP,SAAS,CAAC,EAAE,MAAM,CAAC;SACpB,CAAC;QACF,OAAO,CAAC,EAAE;YACR,SAAS,CAAC,EAAE,MAAM,CAAC;SACpB,CAAC;KACH,CAAC;CACH,CAAC;AAEF,eAAO,MAAM,qBAAqB,iCAAiC,sBAAsB,KAAQ,SAShG,CAAC"}
@@ -1,39 +1,10 @@
1
- import { type Extension, StateField } from '@codemirror/state';
2
- import type * as awarenessProtocol from 'y-protocols/awareness';
3
- import { type DocAccessor, type Space, type TextObject } from '@dxos/react-client/echo';
1
+ import { type Space, type TextObject } from '@dxos/react-client/echo';
4
2
  import { type Identity } from '@dxos/react-client/halo';
5
- import type { YText, YXmlFragment } from '@dxos/text-model';
6
- type Awareness = awarenessProtocol.Awareness;
7
- /**
8
- * State field makes the model available to other extensions.
9
- */
10
- export declare const modelState: StateField<EditorModel | undefined>;
11
- export type Range = {
12
- from: number;
13
- to: number;
14
- };
15
- export type CommentRange = {
16
- id: string;
17
- cursor: string;
18
- };
19
- export type EditorModel = {
20
- id: string;
21
- content: string | YText | YXmlFragment | DocAccessor;
22
- text: () => string;
23
- getCursorFromRange?: (value: Range) => string;
24
- getRangeFromCursor?: (cursor: string) => Range | undefined;
25
- extension?: Extension;
26
- awareness?: Awareness;
27
- peer?: {
28
- id: string;
29
- name?: string;
30
- };
31
- };
3
+ import { type EditorModel } from './defs';
32
4
  export type UseTextModelProps = {
33
5
  identity?: Identity | null;
34
6
  space?: Space;
35
7
  text?: TextObject;
36
8
  };
37
9
  export declare const useTextModel: (props: UseTextModelProps) => EditorModel | undefined;
38
- export {};
39
10
  //# sourceMappingURL=useTextModel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"useTextModel.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useTextModel.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,SAAS,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAI/D,OAAO,KAAK,KAAK,iBAAiB,MAAM,uBAAuB,CAAC;AAIhE,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,KAAK,EACV,KAAK,UAAU,EAIhB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAO5D,KAAK,SAAS,GAAG,iBAAiB,CAAC,SAAS,CAAC;AAE7C;;GAEG;AAEH,eAAO,MAAM,UAAU,qCAGrB,CAAC;AAEH,MAAM,MAAM,KAAK,GAAG;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;CACZ,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,EAAE,EAAE,MAAM,CAAC;IAEX,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAGF,MAAM,MAAM,WAAW,GAAG;IACxB,EAAE,EAAE,MAAM,CAAC;IAEX,OAAO,EAAE,MAAM,GAAG,KAAK,GAAG,YAAY,GAAG,WAAW,CAAC;IACrD,IAAI,EAAE,MAAM,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,MAAM,CAAC;IAC9C,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,KAAK,GAAG,SAAS,CAAC;IAC3D,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,IAAI,CAAC,EAAE;QACL,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;CACH,CAAC;AAGF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC3B,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,IAAI,CAAC,EAAE,UAAU,CAAC;CACnB,CAAC;AAIF,eAAO,MAAM,YAAY,UAAW,iBAAiB,KAAG,WAAW,GAAG,SAKrE,CAAC"}
1
+ {"version":3,"file":"useTextModel.d.ts","sourceRoot":"","sources":["../../../../src/hooks/useTextModel.ts"],"names":[],"mappings":"AAUA,OAAO,EAAqB,KAAK,KAAK,EAAE,KAAK,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACzF,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAGxD,OAAO,EAAE,KAAK,WAAW,EAAc,MAAM,QAAQ,CAAC;AAKtD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC3B,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,IAAI,CAAC,EAAE,UAAU,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,YAAY,UAAW,iBAAiB,KAAG,WAAW,GAAG,SAKrE,CAAC"}
@@ -1,8 +1,11 @@
1
1
  export { TextKind } from '@dxos/protocols/proto/dxos/echo/model/text';
2
2
  export { Doc, YText, YXmlFragment } from '@dxos/text-model';
3
3
  export { type Extension } from '@codemirror/state';
4
+ export { type EditorView } from '@codemirror/view';
4
5
  export * from './components';
5
6
  export * from './extensions';
6
7
  export * from './hooks';
8
+ export { getToken } from './styles';
7
9
  export * from './themes';
10
+ export * from './util';
8
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,4CAA4C,CAAC;AACtE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEnD,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,4CAA4C,CAAC;AACtE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cursors.d.ts","sourceRoot":"","sources":["../../../../src/styles/cursors.ts"],"names":[],"mappings":"AAoBA,eAAO,MAAM,WAAW;;;CAAsD,CAAC"}
@@ -1,3 +1,4 @@
1
+ export * from './cursors';
1
2
  export * from './markdown';
2
3
  export * from './tokens';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/styles/index.ts"],"names":[],"mappings":"AAIA,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/styles/index.ts"],"names":[],"mappings":"AAIA,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC"}
@@ -1,6 +1,6 @@
1
1
  export type HeadingLevel = 1 | 2 | 3 | 4 | 5 | 6;
2
- export declare const headings: Record<HeadingLevel, string[]>;
3
- export declare const heading: (level: HeadingLevel, readonly?: boolean) => string;
2
+ export declare const headings: Record<HeadingLevel, string>;
3
+ export declare const heading: (level: HeadingLevel) => string;
4
4
  export declare const text = "text-neutral-800 dark:text-neutral-200";
5
5
  export declare const light = "text-neutral-200 dark:text-neutral-800";
6
6
  export declare const mark: string;
@@ -1 +1 @@
1
- {"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../../../../src/styles/markdown.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAIjD,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,CAOnD,CAAC;AAEF,eAAO,MAAM,OAAO,UAAW,YAAY,aAAa,OAAO,WAG9D,CAAC;AAEF,eAAO,MAAM,IAAI,2CAA2C,CAAC;AAC7D,eAAO,MAAM,KAAK,2CAA2C,CAAC;AAE9D,eAAO,MAAM,IAAI,QAAmE,CAAC;AAErF,eAAO,MAAM,SAAS,UAAU,CAAC;AAEjC,eAAO,MAAM,IAAI,cAAc,CAAC;AAChC,eAAO,MAAM,MAAM,WAAW,CAAC;AAC/B,eAAO,MAAM,aAAa,iBAAiB,CAAC;AAE5C,eAAO,MAAM,IAAI,mEAAmE,CAAC;AACrF,eAAO,MAAM,QAAQ,+BAA+B,CAAC;AACrD,eAAO,MAAM,SAAS,kDAAkD,CAAC;AAEzE,eAAO,MAAM,SAAS,QAAmB,CAAC;AAG1C,eAAO,MAAM,UAAU,QAAsF,CAAC;AAG9G,eAAO,MAAM,cAAc,0GAC8E,CAAC;AAG1G,eAAO,MAAM,aAAa,wHAC6F,CAAC;AACxH,eAAO,MAAM,WAAW,+IACkH,CAAC;AAE3I,eAAO,MAAM,QAAQ,gDAAgD,CAAC"}
1
+ {"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../../../../src/styles/markdown.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAIjD,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,YAAY,EAAE,MAAM,CAOjD,CAAC;AAEF,eAAO,MAAM,OAAO,UAAW,YAAY,WAE1C,CAAC;AAEF,eAAO,MAAM,IAAI,2CAA2C,CAAC;AAC7D,eAAO,MAAM,KAAK,2CAA2C,CAAC;AAE9D,eAAO,MAAM,IAAI,QAAmE,CAAC;AAErF,eAAO,MAAM,SAAS,UAAU,CAAC;AAEjC,eAAO,MAAM,IAAI,cAAc,CAAC;AAChC,eAAO,MAAM,MAAM,WAAW,CAAC;AAC/B,eAAO,MAAM,aAAa,iBAAiB,CAAC;AAE5C,eAAO,MAAM,IAAI,mEAAmE,CAAC;AACrF,eAAO,MAAM,QAAQ,+BAA+B,CAAC;AACrD,eAAO,MAAM,SAAS,kDAAkD,CAAC;AAEzE,eAAO,MAAM,SAAS,QAAmB,CAAC;AAE1C,eAAO,MAAM,UAAU,QAAsF,CAAC;AAE9G,eAAO,MAAM,cAAc,0GAC8E,CAAC;AAG1G,eAAO,MAAM,aAAa,wHAC6F,CAAC;AACxH,eAAO,MAAM,WAAW,+IACkH,CAAC;AAE3I,eAAO,MAAM,QAAQ,gDAAgD,CAAC"}
@@ -4,4 +4,5 @@ export type ThemeStyles = {
4
4
  [selector: string]: StyleSpec;
5
5
  };
6
6
  export declare const tokens: TailwindConfig['theme'];
7
+ export declare const getToken: (path: string, defaultValue?: any) => any;
7
8
  //# sourceMappingURL=tokens.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../../../src/styles/tokens.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAE3C,OAAO,EAAkB,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3E,MAAM,MAAM,WAAW,GAAG;IACxB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;CAC/B,CAAC;AAGF,eAAO,MAAM,MAAM,EAAE,cAAc,CAAC,OAAO,CAA4B,CAAC"}
1
+ {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../../../src/styles/tokens.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAE3C,OAAO,EAAkB,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3E,MAAM,MAAM,WAAW,GAAG;IACxB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;CAC/B,CAAC;AAGF,eAAO,MAAM,MAAM,EAAE,cAAc,CAAC,OAAO,CAA4B,CAAC;AAExE,eAAO,MAAM,QAAQ,SAAU,MAAM,iBAAgB,GAAG,QAAgD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"default.d.ts","sourceRoot":"","sources":["../../../../src/themes/default.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,WAAW,EAAU,MAAM,WAAW,CAAC;AAKrD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,YAAY,EAAE,WA8P1B,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,WAOvB,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,WAK3B,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,WAOvB,CAAC"}
1
+ {"version":3,"file":"default.d.ts","sourceRoot":"","sources":["../../../../src/themes/default.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,WAAW,EAAU,MAAM,WAAW,CAAC;AAKrD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,YAAY,EAAE,WAiO1B,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,WAOvB,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,WAO3B,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,WAOvB,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { Transaction } from '@codemirror/state';
2
+ /**
3
+ * CodeMirror callbacks swallow errors so wrap handlers.
4
+ */
5
+ export declare const callbackWrapper: <T extends Function>(fn: T) => T;
6
+ export declare const logChanges: (trs: readonly Transaction[]) => void;
7
+ //# sourceMappingURL=util.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../src/util.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAIrD;;GAEG;AAEH,eAAO,MAAM,eAAe,kCAOR,CAAC;AAErB,eAAO,MAAM,UAAU,QAAS,SAAS,WAAW,EAAE,SAmBrD,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dxos/react-ui-editor",
3
- "version": "0.3.11-main.5a4849d",
3
+ "version": "0.3.11-main.604a65a",
4
4
  "description": "Document editing experience within a DXOS shell.",
5
5
  "homepage": "https://dxos.org",
6
6
  "bugs": "https://github.com/dxos/dxos/issues",
@@ -13,20 +13,21 @@
13
13
  "src"
14
14
  ],
15
15
  "dependencies": {
16
- "@codemirror/autocomplete": "^6.11.1",
17
- "@codemirror/commands": "^6.3.2",
18
- "@codemirror/lang-markdown": "^6.2.3",
19
- "@codemirror/language": "^6.9.3",
16
+ "@codemirror/autocomplete": "^6.12.0",
17
+ "@codemirror/commands": "^6.3.3",
18
+ "@codemirror/lang-markdown": "^6.2.4",
19
+ "@codemirror/language": "^6.10.0",
20
20
  "@codemirror/language-data": "^6.3.1",
21
21
  "@codemirror/lint": "^6.4.2",
22
22
  "@codemirror/search": "^6.5.5",
23
- "@codemirror/state": "^6.3.3",
23
+ "@codemirror/state": "^6.4.0",
24
24
  "@codemirror/theme-one-dark": "^6.1.2",
25
- "@codemirror/view": "^6.22.2",
26
- "@fluentui/react-tabster": "^9.16.1",
27
- "@lezer/common": "^1.1.1",
25
+ "@codemirror/view": "^6.23.0",
26
+ "@fluentui/react-tabster": "^9.17.4",
27
+ "@lezer/common": "^1.2.1",
28
28
  "@lezer/highlight": "^1.2.0",
29
- "@lezer/markdown": "^1.1.1",
29
+ "@lezer/markdown": "^1.2.0",
30
+ "@radix-ui/react-context": "^1.0.0",
30
31
  "@replit/codemirror-vim": "^6.0.14",
31
32
  "codemirror": "6.0.1",
32
33
  "lib0": "^0.2.65",
@@ -35,54 +36,65 @@
35
36
  "lodash.pick": "^4.4.0",
36
37
  "lodash.sortby": "^4.7.0",
37
38
  "style-mod": "^4.1.0",
38
- "y-codemirror.next": "^0.3.2",
39
- "y-protocols": "^1.0.5",
40
- "yjs": "^13.6.10",
41
- "@dxos/async": "0.3.11-main.5a4849d",
42
- "@dxos/automerge": "0.3.11-main.5a4849d",
43
- "@dxos/debug": "0.3.11-main.5a4849d",
44
- "@dxos/display-name": "0.3.11-main.5a4849d",
45
- "@dxos/echo-schema": "0.3.11-main.5a4849d",
46
- "@dxos/invariant": "0.3.11-main.5a4849d",
47
- "@dxos/log": "0.3.11-main.5a4849d",
48
- "@dxos/react-async": "0.3.11-main.5a4849d",
49
- "@dxos/react-ui": "0.3.11-main.5a4849d",
50
- "@dxos/protocols": "0.3.11-main.5a4849d",
51
- "@dxos/react-ui-theme": "0.3.11-main.5a4849d",
52
- "@dxos/text-model": "0.3.11-main.5a4849d",
53
- "@dxos/util": "0.3.11-main.5a4849d"
39
+ "@dxos/async": "0.3.11-main.604a65a",
40
+ "@dxos/automerge": "0.3.11-main.604a65a",
41
+ "@dxos/context": "0.3.11-main.604a65a",
42
+ "@dxos/display-name": "0.3.11-main.604a65a",
43
+ "@dxos/debug": "0.3.11-main.604a65a",
44
+ "@dxos/echo-schema": "0.3.11-main.604a65a",
45
+ "@dxos/log": "0.3.11-main.604a65a",
46
+ "@dxos/invariant": "0.3.11-main.604a65a",
47
+ "@dxos/protocols": "0.3.11-main.604a65a",
48
+ "@dxos/react-async": "0.3.11-main.604a65a",
49
+ "@dxos/react-ui": "0.3.11-main.604a65a",
50
+ "@dxos/text-model": "0.3.11-main.604a65a",
51
+ "@dxos/util": "0.3.11-main.604a65a",
52
+ "@dxos/react-ui-theme": "0.3.11-main.604a65a"
54
53
  },
55
54
  "devDependencies": {
56
- "@automerge/automerge-repo-network-broadcastchannel": "^1.0.19",
57
- "@faker-js/faker": "^8.0.2",
55
+ "@automerge/automerge-repo-network-broadcastchannel": "^1.1.0",
56
+ "@faker-js/faker": "^8.3.1",
58
57
  "@phosphor-icons/react": "^2.0.5",
59
58
  "@preact/signals-react": "^1.3.6",
59
+ "@testing-library/dom": "^8.17.1",
60
+ "@testing-library/react": "^13.4.0",
61
+ "@testing-library/user-event": "^14.4.3",
60
62
  "@types/lodash.defaultsdeep": "^4.6.6",
61
63
  "@types/lodash.get": "^4.4.7",
62
64
  "@types/lodash.pick": "^4.4.7",
63
65
  "@types/lodash.sortby": "^4.7.7",
64
66
  "@types/react": "^18.0.21",
65
67
  "@types/react-dom": "^18.0.6",
68
+ "@types/react-test-renderer": "^17.0.2",
69
+ "@vitest/ui": "^1.2.1",
66
70
  "deepsignal": "1.4.0-shallow.0",
71
+ "happy-dom": "^13.3.1",
72
+ "jsdom": "^20.0.1",
67
73
  "react": "^18.2.0",
68
74
  "react-dom": "^18.2.0",
69
- "@dxos/config": "0.3.11-main.5a4849d",
70
- "@dxos/echo-signals": "0.3.11-main.5a4849d",
71
- "@dxos/react-client": "0.3.11-main.5a4849d",
72
- "@dxos/react-ui": "0.3.11-main.5a4849d",
73
- "@dxos/storybook-utils": "0.3.11-main.5a4849d",
74
- "@dxos/echo-typegen": "0.3.11-main.5a4849d"
75
+ "react-test-renderer": "^18.2.0",
76
+ "vite": "^5.0.12",
77
+ "vite-plugin-top-level-await": "^1.4.1",
78
+ "vite-plugin-wasm": "^3.3.0",
79
+ "vitest": "^1.2.1",
80
+ "@dxos/config": "0.3.11-main.604a65a",
81
+ "@dxos/echo-signals": "0.3.11-main.604a65a",
82
+ "@dxos/keyboard": "0.3.11-main.604a65a",
83
+ "@dxos/react-ui": "0.3.11-main.604a65a",
84
+ "@dxos/echo-typegen": "0.3.11-main.604a65a",
85
+ "@dxos/react-client": "0.3.11-main.604a65a",
86
+ "@dxos/storybook-utils": "0.3.11-main.604a65a"
75
87
  },
76
88
  "peerDependencies": {
77
89
  "@phosphor-icons/react": "^2.0.5",
78
90
  "react": "^18.2.0",
79
91
  "react-dom": "^18.2.0",
80
- "@dxos/react-client": "0.3.11-main.5a4849d"
92
+ "@dxos/react-client": "0.3.11-main.604a65a"
81
93
  },
82
94
  "publishConfig": {
83
95
  "access": "public"
84
96
  },
85
97
  "scripts": {
86
- "prebuild": "dxtype src/testing/proto/schema.proto src/testing/proto/gen/schema.ts"
98
+ "vitest": "vitest --ui"
87
99
  }
88
100
  }