@dxos/react-ui-editor 0.8.4-main.c4373fc → 0.8.4-main.c85a9c8dae
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.
- package/dist/lib/browser/index.mjs +1143 -8424
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/node-esm/index.mjs +1143 -8423
- package/dist/lib/node-esm/index.mjs.map +4 -4
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/types/src/components/Editor/Editor.d.ts +43 -21
- package/dist/types/src/components/Editor/Editor.d.ts.map +1 -1
- package/dist/types/src/components/Editor/Editor.stories.d.ts +23 -0
- package/dist/types/src/components/Editor/Editor.stories.d.ts.map +1 -0
- package/dist/types/src/components/EditorContent/EditorContent.d.ts +31 -0
- package/dist/types/src/components/EditorContent/EditorContent.d.ts.map +1 -0
- package/dist/types/src/components/EditorContent/controller.d.ts +10 -0
- package/dist/types/src/components/EditorContent/controller.d.ts.map +1 -0
- package/dist/types/src/components/EditorContent/index.d.ts +3 -0
- package/dist/types/src/components/EditorContent/index.d.ts.map +1 -0
- package/dist/types/src/components/EditorMenuProvider/EditorMenuProvider.d.ts +36 -0
- package/dist/types/src/components/EditorMenuProvider/EditorMenuProvider.d.ts.map +1 -0
- package/dist/types/src/components/EditorMenuProvider/index.d.ts +6 -0
- package/dist/types/src/components/EditorMenuProvider/index.d.ts.map +1 -0
- package/dist/types/src/components/EditorMenuProvider/menu-presets.d.ts +4 -0
- package/dist/types/src/components/EditorMenuProvider/menu-presets.d.ts.map +1 -0
- package/dist/types/src/components/EditorMenuProvider/menu.d.ts +28 -0
- package/dist/types/src/components/EditorMenuProvider/menu.d.ts.map +1 -0
- package/dist/types/src/components/EditorMenuProvider/popover.d.ts +46 -0
- package/dist/types/src/components/EditorMenuProvider/popover.d.ts.map +1 -0
- package/dist/types/src/components/EditorMenuProvider/useEditorMenu.d.ts +34 -0
- package/dist/types/src/components/EditorMenuProvider/useEditorMenu.d.ts.map +1 -0
- package/dist/types/src/components/EditorPreviewProvider/EditorPreviewProvider.d.ts +16 -0
- package/dist/types/src/components/EditorPreviewProvider/EditorPreviewProvider.d.ts.map +1 -0
- package/dist/types/src/components/EditorPreviewProvider/index.d.ts +2 -0
- package/dist/types/src/components/EditorPreviewProvider/index.d.ts.map +1 -0
- package/dist/types/src/components/EditorToolbar/EditorToolbar.d.ts +28 -2
- package/dist/types/src/components/EditorToolbar/EditorToolbar.d.ts.map +1 -1
- package/dist/types/src/components/EditorToolbar/actions.d.ts +25 -0
- package/dist/types/src/components/EditorToolbar/actions.d.ts.map +1 -0
- package/dist/types/src/components/EditorToolbar/blocks.d.ts +9 -7
- package/dist/types/src/components/EditorToolbar/blocks.d.ts.map +1 -1
- package/dist/types/src/components/EditorToolbar/formatting.d.ts +9 -7
- package/dist/types/src/components/EditorToolbar/formatting.d.ts.map +1 -1
- package/dist/types/src/components/EditorToolbar/headings.d.ts +9 -7
- package/dist/types/src/components/EditorToolbar/headings.d.ts.map +1 -1
- package/dist/types/src/components/EditorToolbar/image.d.ts +5 -11
- package/dist/types/src/components/EditorToolbar/image.d.ts.map +1 -1
- package/dist/types/src/components/EditorToolbar/index.d.ts +2 -1
- package/dist/types/src/components/EditorToolbar/index.d.ts.map +1 -1
- package/dist/types/src/components/EditorToolbar/search.d.ts +5 -11
- package/dist/types/src/components/EditorToolbar/search.d.ts.map +1 -1
- package/dist/types/src/components/EditorToolbar/useEditorToolbar.d.ts +11 -0
- package/dist/types/src/components/EditorToolbar/useEditorToolbar.d.ts.map +1 -0
- package/dist/types/src/components/EditorToolbar/view-mode.d.ts +10 -8
- package/dist/types/src/components/EditorToolbar/view-mode.d.ts.map +1 -1
- package/dist/types/src/components/index.d.ts +4 -2
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/hooks/useTextEditor.d.ts +4 -8
- package/dist/types/src/hooks/useTextEditor.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +0 -8
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/{extensions/automerge/automerge.stories.d.ts → stories/Automerge.stories.d.ts} +5 -8
- package/dist/types/src/stories/Automerge.stories.d.ts.map +1 -0
- package/dist/types/src/stories/CommandDialog.stories.d.ts.map +1 -1
- package/dist/types/src/stories/Comments.stories.d.ts +4 -3
- package/dist/types/src/stories/Comments.stories.d.ts.map +1 -1
- package/dist/types/src/stories/EditorToolbar.stories.d.ts +4 -4
- package/dist/types/src/stories/EditorToolbar.stories.d.ts.map +1 -1
- package/dist/types/src/stories/Experimental.stories.d.ts +4 -3
- package/dist/types/src/stories/Experimental.stories.d.ts.map +1 -1
- package/dist/types/src/stories/Markdown.stories.d.ts +4 -3
- package/dist/types/src/stories/Markdown.stories.d.ts.map +1 -1
- package/dist/types/src/stories/Outliner.stories.d.ts.map +1 -1
- package/dist/types/src/stories/{CommandMenu.stories.d.ts → Popover.stories.d.ts} +6 -5
- package/dist/types/src/stories/Popover.stories.d.ts.map +1 -0
- package/dist/types/src/stories/Preview.stories.d.ts +5 -3
- package/dist/types/src/stories/Preview.stories.d.ts.map +1 -1
- package/dist/types/src/stories/Tags.stories.d.ts.map +1 -1
- package/dist/types/src/stories/TextEditor.stories.d.ts +4 -4
- package/dist/types/src/stories/TextEditor.stories.d.ts.map +1 -1
- package/dist/types/src/stories/Theme.stories.d.ts +8 -0
- package/dist/types/src/stories/Theme.stories.d.ts.map +1 -0
- package/dist/types/src/stories/components/EditorStory.d.ts +9 -18
- package/dist/types/src/stories/components/EditorStory.d.ts.map +1 -1
- package/dist/types/src/stories/components/util.d.ts +3 -3
- package/dist/types/src/stories/components/util.d.ts.map +1 -1
- package/dist/types/src/translations.d.ts +5 -5
- package/dist/types/src/translations.d.ts.map +1 -1
- package/dist/types/src/util/index.d.ts +0 -5
- package/dist/types/src/util/index.d.ts.map +1 -1
- package/dist/types/src/util/react.d.ts +6 -5
- package/dist/types/src/util/react.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +68 -72
- package/src/components/Editor/Editor.stories.tsx +95 -0
- package/src/components/Editor/Editor.tsx +167 -56
- package/src/components/EditorContent/EditorContent.tsx +83 -0
- package/src/components/EditorContent/controller.ts +50 -0
- package/src/components/EditorContent/index.ts +6 -0
- package/src/components/EditorMenuProvider/EditorMenuProvider.tsx +228 -0
- package/src/components/EditorMenuProvider/index.ts +10 -0
- package/src/components/EditorMenuProvider/menu-presets.ts +124 -0
- package/src/components/EditorMenuProvider/menu.ts +70 -0
- package/src/components/EditorMenuProvider/popover.ts +285 -0
- package/src/components/EditorMenuProvider/useEditorMenu.ts +179 -0
- package/src/components/EditorPreviewProvider/EditorPreviewProvider.tsx +79 -0
- package/src/components/EditorPreviewProvider/index.ts +5 -0
- package/src/components/EditorToolbar/EditorToolbar.tsx +102 -105
- package/src/components/EditorToolbar/{lists.ts → actions.ts} +48 -17
- package/src/components/EditorToolbar/blocks.ts +7 -7
- package/src/components/EditorToolbar/formatting.ts +7 -7
- package/src/components/EditorToolbar/headings.ts +20 -17
- package/src/components/EditorToolbar/image.ts +10 -3
- package/src/components/EditorToolbar/index.ts +3 -7
- package/src/components/EditorToolbar/search.ts +10 -3
- package/src/components/EditorToolbar/useEditorToolbar.ts +20 -0
- package/src/components/EditorToolbar/view-mode.ts +7 -6
- package/src/components/index.ts +6 -2
- package/src/hooks/useTextEditor.ts +33 -27
- package/src/index.ts +0 -10
- package/src/stories/Automerge.stories.tsx +174 -0
- package/src/stories/CommandDialog.stories.tsx +18 -26
- package/src/stories/Comments.stories.tsx +48 -44
- package/src/stories/EditorToolbar.stories.tsx +36 -21
- package/src/stories/Experimental.stories.tsx +6 -8
- package/src/stories/Markdown.stories.tsx +16 -16
- package/src/stories/Outliner.stories.tsx +20 -21
- package/src/stories/Popover.stories.tsx +158 -0
- package/src/stories/Preview.stories.tsx +100 -81
- package/src/stories/Tags.stories.tsx +36 -13
- package/src/stories/TextEditor.stories.tsx +16 -48
- package/src/stories/Theme.stories.tsx +61 -0
- package/src/stories/components/EditorStory.tsx +32 -25
- package/src/stories/components/util.tsx +60 -31
- package/src/translations.ts +4 -4
- package/src/util/index.ts +1 -6
- package/src/util/react.tsx +8 -13
- package/dist/lib/browser/chunk-HL3YF6WC.mjs +0 -22
- package/dist/lib/browser/chunk-HL3YF6WC.mjs.map +0 -7
- package/dist/lib/browser/testing/index.mjs +0 -76
- package/dist/lib/browser/testing/index.mjs.map +0 -7
- package/dist/lib/browser/types/index.mjs +0 -13
- package/dist/lib/browser/types/index.mjs.map +0 -7
- package/dist/lib/node-esm/chunk-YJZGD3LY.mjs +0 -24
- package/dist/lib/node-esm/chunk-YJZGD3LY.mjs.map +0 -7
- package/dist/lib/node-esm/testing/index.mjs +0 -78
- package/dist/lib/node-esm/testing/index.mjs.map +0 -7
- package/dist/lib/node-esm/types/index.mjs +0 -14
- package/dist/lib/node-esm/types/index.mjs.map +0 -7
- package/dist/types/src/components/CommandMenu/CommandMenu.d.ts +0 -38
- package/dist/types/src/components/CommandMenu/CommandMenu.d.ts.map +0 -1
- package/dist/types/src/components/CommandMenu/index.d.ts +0 -2
- package/dist/types/src/components/CommandMenu/index.d.ts.map +0 -1
- package/dist/types/src/components/EditorToolbar/lists.d.ts +0 -19
- package/dist/types/src/components/EditorToolbar/lists.d.ts.map +0 -1
- package/dist/types/src/components/EditorToolbar/util.d.ts +0 -51
- package/dist/types/src/components/EditorToolbar/util.d.ts.map +0 -1
- package/dist/types/src/defaults.d.ts +0 -14
- package/dist/types/src/defaults.d.ts.map +0 -1
- package/dist/types/src/extensions/annotations.d.ts +0 -9
- package/dist/types/src/extensions/annotations.d.ts.map +0 -1
- package/dist/types/src/extensions/autocomplete.d.ts +0 -26
- package/dist/types/src/extensions/autocomplete.d.ts.map +0 -1
- package/dist/types/src/extensions/automerge/automerge.d.ts +0 -4
- package/dist/types/src/extensions/automerge/automerge.d.ts.map +0 -1
- package/dist/types/src/extensions/automerge/automerge.stories.d.ts.map +0 -1
- package/dist/types/src/extensions/automerge/automerge.test.d.ts +0 -2
- package/dist/types/src/extensions/automerge/automerge.test.d.ts.map +0 -1
- package/dist/types/src/extensions/automerge/cursor.d.ts +0 -4
- package/dist/types/src/extensions/automerge/cursor.d.ts.map +0 -1
- package/dist/types/src/extensions/automerge/defs.d.ts +0 -17
- package/dist/types/src/extensions/automerge/defs.d.ts.map +0 -1
- package/dist/types/src/extensions/automerge/index.d.ts +0 -2
- package/dist/types/src/extensions/automerge/index.d.ts.map +0 -1
- package/dist/types/src/extensions/automerge/sync.d.ts +0 -17
- package/dist/types/src/extensions/automerge/sync.d.ts.map +0 -1
- package/dist/types/src/extensions/automerge/update-automerge.d.ts +0 -6
- package/dist/types/src/extensions/automerge/update-automerge.d.ts.map +0 -1
- package/dist/types/src/extensions/automerge/update-codemirror.d.ts +0 -5
- package/dist/types/src/extensions/automerge/update-codemirror.d.ts.map +0 -1
- package/dist/types/src/extensions/autoscroll.d.ts +0 -10
- package/dist/types/src/extensions/autoscroll.d.ts.map +0 -1
- package/dist/types/src/extensions/awareness/awareness-provider.d.ts +0 -31
- package/dist/types/src/extensions/awareness/awareness-provider.d.ts.map +0 -1
- package/dist/types/src/extensions/awareness/awareness.d.ts +0 -46
- package/dist/types/src/extensions/awareness/awareness.d.ts.map +0 -1
- package/dist/types/src/extensions/awareness/index.d.ts +0 -3
- package/dist/types/src/extensions/awareness/index.d.ts.map +0 -1
- package/dist/types/src/extensions/blast.d.ts +0 -25
- package/dist/types/src/extensions/blast.d.ts.map +0 -1
- package/dist/types/src/extensions/command-dialog/action.d.ts +0 -17
- package/dist/types/src/extensions/command-dialog/action.d.ts.map +0 -1
- package/dist/types/src/extensions/command-dialog/command-dialog.d.ts +0 -6
- package/dist/types/src/extensions/command-dialog/command-dialog.d.ts.map +0 -1
- package/dist/types/src/extensions/command-dialog/hint.d.ts +0 -19
- package/dist/types/src/extensions/command-dialog/hint.d.ts.map +0 -1
- package/dist/types/src/extensions/command-dialog/index.d.ts +0 -4
- package/dist/types/src/extensions/command-dialog/index.d.ts.map +0 -1
- package/dist/types/src/extensions/command-dialog/state.d.ts +0 -16
- package/dist/types/src/extensions/command-dialog/state.d.ts.map +0 -1
- package/dist/types/src/extensions/command-dialog/typeahead.d.ts +0 -22
- package/dist/types/src/extensions/command-dialog/typeahead.d.ts.map +0 -1
- package/dist/types/src/extensions/command-menu/command-menu.d.ts +0 -20
- package/dist/types/src/extensions/command-menu/command-menu.d.ts.map +0 -1
- package/dist/types/src/extensions/command-menu/index.d.ts +0 -3
- package/dist/types/src/extensions/command-menu/index.d.ts.map +0 -1
- package/dist/types/src/extensions/command-menu/placeholder.d.ts +0 -10
- package/dist/types/src/extensions/command-menu/placeholder.d.ts.map +0 -1
- package/dist/types/src/extensions/command-menu/useCommandMenu.d.ts +0 -24
- package/dist/types/src/extensions/command-menu/useCommandMenu.d.ts.map +0 -1
- package/dist/types/src/extensions/comments.d.ts +0 -95
- package/dist/types/src/extensions/comments.d.ts.map +0 -1
- package/dist/types/src/extensions/debug.d.ts +0 -3
- package/dist/types/src/extensions/debug.d.ts.map +0 -1
- package/dist/types/src/extensions/dnd.d.ts +0 -9
- package/dist/types/src/extensions/dnd.d.ts.map +0 -1
- package/dist/types/src/extensions/factories.d.ts +0 -83
- package/dist/types/src/extensions/factories.d.ts.map +0 -1
- package/dist/types/src/extensions/floating-menu.d.ts +0 -7
- package/dist/types/src/extensions/floating-menu.d.ts.map +0 -1
- package/dist/types/src/extensions/focus.d.ts +0 -7
- package/dist/types/src/extensions/focus.d.ts.map +0 -1
- package/dist/types/src/extensions/folding.d.ts +0 -7
- package/dist/types/src/extensions/folding.d.ts.map +0 -1
- package/dist/types/src/extensions/hashtag.d.ts +0 -3
- package/dist/types/src/extensions/hashtag.d.ts.map +0 -1
- package/dist/types/src/extensions/index.d.ts +0 -27
- package/dist/types/src/extensions/index.d.ts.map +0 -1
- package/dist/types/src/extensions/json.d.ts +0 -7
- package/dist/types/src/extensions/json.d.ts.map +0 -1
- package/dist/types/src/extensions/listener.d.ts +0 -11
- package/dist/types/src/extensions/listener.d.ts.map +0 -1
- package/dist/types/src/extensions/markdown/action.d.ts +0 -12
- package/dist/types/src/extensions/markdown/action.d.ts.map +0 -1
- package/dist/types/src/extensions/markdown/bundle.d.ts +0 -22
- package/dist/types/src/extensions/markdown/bundle.d.ts.map +0 -1
- package/dist/types/src/extensions/markdown/changes.d.ts +0 -10
- package/dist/types/src/extensions/markdown/changes.d.ts.map +0 -1
- package/dist/types/src/extensions/markdown/changes.test.d.ts +0 -2
- package/dist/types/src/extensions/markdown/changes.test.d.ts.map +0 -1
- package/dist/types/src/extensions/markdown/debug.d.ts +0 -11
- package/dist/types/src/extensions/markdown/debug.d.ts.map +0 -1
- package/dist/types/src/extensions/markdown/decorate.d.ts +0 -25
- package/dist/types/src/extensions/markdown/decorate.d.ts.map +0 -1
- package/dist/types/src/extensions/markdown/formatting.d.ts +0 -63
- package/dist/types/src/extensions/markdown/formatting.d.ts.map +0 -1
- package/dist/types/src/extensions/markdown/formatting.test.d.ts +0 -3
- package/dist/types/src/extensions/markdown/formatting.test.d.ts.map +0 -1
- package/dist/types/src/extensions/markdown/highlight.d.ts +0 -37
- package/dist/types/src/extensions/markdown/highlight.d.ts.map +0 -1
- package/dist/types/src/extensions/markdown/image.d.ts +0 -7
- package/dist/types/src/extensions/markdown/image.d.ts.map +0 -1
- package/dist/types/src/extensions/markdown/index.d.ts +0 -10
- package/dist/types/src/extensions/markdown/index.d.ts.map +0 -1
- package/dist/types/src/extensions/markdown/link.d.ts +0 -7
- package/dist/types/src/extensions/markdown/link.d.ts.map +0 -1
- package/dist/types/src/extensions/markdown/parser.test.d.ts +0 -2
- package/dist/types/src/extensions/markdown/parser.test.d.ts.map +0 -1
- package/dist/types/src/extensions/markdown/styles.d.ts +0 -4
- package/dist/types/src/extensions/markdown/styles.d.ts.map +0 -1
- package/dist/types/src/extensions/markdown/table.d.ts +0 -8
- package/dist/types/src/extensions/markdown/table.d.ts.map +0 -1
- package/dist/types/src/extensions/mention.d.ts +0 -7
- package/dist/types/src/extensions/mention.d.ts.map +0 -1
- package/dist/types/src/extensions/modes.d.ts +0 -10
- package/dist/types/src/extensions/modes.d.ts.map +0 -1
- package/dist/types/src/extensions/outliner/commands.d.ts +0 -10
- package/dist/types/src/extensions/outliner/commands.d.ts.map +0 -1
- package/dist/types/src/extensions/outliner/editor.d.ts +0 -5
- package/dist/types/src/extensions/outliner/editor.d.ts.map +0 -1
- package/dist/types/src/extensions/outliner/editor.test.d.ts +0 -2
- package/dist/types/src/extensions/outliner/editor.test.d.ts.map +0 -1
- package/dist/types/src/extensions/outliner/index.d.ts +0 -4
- package/dist/types/src/extensions/outliner/index.d.ts.map +0 -1
- package/dist/types/src/extensions/outliner/outliner.d.ts +0 -11
- package/dist/types/src/extensions/outliner/outliner.d.ts.map +0 -1
- package/dist/types/src/extensions/outliner/outliner.test.d.ts +0 -2
- package/dist/types/src/extensions/outliner/outliner.test.d.ts.map +0 -1
- package/dist/types/src/extensions/outliner/selection.d.ts +0 -12
- package/dist/types/src/extensions/outliner/selection.d.ts.map +0 -1
- package/dist/types/src/extensions/outliner/tree.d.ts +0 -79
- package/dist/types/src/extensions/outliner/tree.d.ts.map +0 -1
- package/dist/types/src/extensions/outliner/tree.test.d.ts +0 -2
- package/dist/types/src/extensions/outliner/tree.test.d.ts.map +0 -1
- package/dist/types/src/extensions/preview/index.d.ts +0 -2
- package/dist/types/src/extensions/preview/index.d.ts.map +0 -1
- package/dist/types/src/extensions/preview/preview.d.ts +0 -29
- package/dist/types/src/extensions/preview/preview.d.ts.map +0 -1
- package/dist/types/src/extensions/selection.d.ts +0 -24
- package/dist/types/src/extensions/selection.d.ts.map +0 -1
- package/dist/types/src/extensions/tags/extended-markdown.d.ts +0 -10
- package/dist/types/src/extensions/tags/extended-markdown.d.ts.map +0 -1
- package/dist/types/src/extensions/tags/extended-markdown.test.d.ts +0 -2
- package/dist/types/src/extensions/tags/extended-markdown.test.d.ts.map +0 -1
- package/dist/types/src/extensions/tags/index.d.ts +0 -4
- package/dist/types/src/extensions/tags/index.d.ts.map +0 -1
- package/dist/types/src/extensions/tags/streamer.d.ts +0 -12
- package/dist/types/src/extensions/tags/streamer.d.ts.map +0 -1
- package/dist/types/src/extensions/tags/xml-tags.d.ts +0 -72
- package/dist/types/src/extensions/tags/xml-tags.d.ts.map +0 -1
- package/dist/types/src/extensions/tags/xml-util.d.ts +0 -10
- package/dist/types/src/extensions/tags/xml-util.d.ts.map +0 -1
- package/dist/types/src/extensions/typewriter.d.ts +0 -10
- package/dist/types/src/extensions/typewriter.d.ts.map +0 -1
- package/dist/types/src/stories/CommandMenu.stories.d.ts.map +0 -1
- package/dist/types/src/styles/index.d.ts +0 -4
- package/dist/types/src/styles/index.d.ts.map +0 -1
- package/dist/types/src/styles/markdown.d.ts +0 -8
- package/dist/types/src/styles/markdown.d.ts.map +0 -1
- package/dist/types/src/styles/theme.d.ts +0 -38
- package/dist/types/src/styles/theme.d.ts.map +0 -1
- package/dist/types/src/styles/tokens.d.ts +0 -3
- package/dist/types/src/styles/tokens.d.ts.map +0 -1
- package/dist/types/src/testing/PreviewPopover.d.ts +0 -20
- package/dist/types/src/testing/PreviewPopover.d.ts.map +0 -1
- package/dist/types/src/testing/index.d.ts +0 -3
- package/dist/types/src/testing/index.d.ts.map +0 -1
- package/dist/types/src/testing/util.d.ts +0 -3
- package/dist/types/src/testing/util.d.ts.map +0 -1
- package/dist/types/src/types/index.d.ts +0 -2
- package/dist/types/src/types/index.d.ts.map +0 -1
- package/dist/types/src/types/types.d.ts +0 -21
- package/dist/types/src/types/types.d.ts.map +0 -1
- package/dist/types/src/util/cursor.d.ts +0 -31
- package/dist/types/src/util/cursor.d.ts.map +0 -1
- package/dist/types/src/util/debug.d.ts +0 -17
- package/dist/types/src/util/debug.d.ts.map +0 -1
- package/dist/types/src/util/decorations.d.ts +0 -4
- package/dist/types/src/util/decorations.d.ts.map +0 -1
- package/dist/types/src/util/dom.d.ts +0 -10
- package/dist/types/src/util/dom.d.ts.map +0 -1
- package/dist/types/src/util/facet.d.ts +0 -3
- package/dist/types/src/util/facet.d.ts.map +0 -1
- package/src/components/CommandMenu/CommandMenu.tsx +0 -348
- package/src/components/CommandMenu/index.ts +0 -5
- package/src/components/EditorToolbar/util.ts +0 -76
- package/src/defaults.ts +0 -52
- package/src/extensions/annotations.ts +0 -55
- package/src/extensions/autocomplete.ts +0 -219
- package/src/extensions/automerge/automerge.stories.tsx +0 -149
- package/src/extensions/automerge/automerge.test.tsx +0 -78
- package/src/extensions/automerge/automerge.ts +0 -86
- package/src/extensions/automerge/cursor.ts +0 -28
- package/src/extensions/automerge/defs.ts +0 -31
- package/src/extensions/automerge/index.ts +0 -5
- package/src/extensions/automerge/sync.ts +0 -75
- package/src/extensions/automerge/update-automerge.ts +0 -50
- package/src/extensions/automerge/update-codemirror.ts +0 -115
- package/src/extensions/autoscroll.ts +0 -157
- package/src/extensions/awareness/awareness-provider.ts +0 -127
- package/src/extensions/awareness/awareness.ts +0 -315
- package/src/extensions/awareness/index.ts +0 -6
- package/src/extensions/blast.ts +0 -363
- package/src/extensions/command-dialog/action.ts +0 -55
- package/src/extensions/command-dialog/command-dialog.ts +0 -34
- package/src/extensions/command-dialog/hint.ts +0 -103
- package/src/extensions/command-dialog/index.ts +0 -7
- package/src/extensions/command-dialog/state.ts +0 -90
- package/src/extensions/command-dialog/typeahead.ts +0 -129
- package/src/extensions/command-menu/command-menu.ts +0 -210
- package/src/extensions/command-menu/index.ts +0 -6
- package/src/extensions/command-menu/placeholder.ts +0 -113
- package/src/extensions/command-menu/useCommandMenu.ts +0 -134
- package/src/extensions/comments.ts +0 -597
- package/src/extensions/debug.ts +0 -15
- package/src/extensions/dnd.ts +0 -37
- package/src/extensions/factories.ts +0 -284
- package/src/extensions/floating-menu.ts +0 -126
- package/src/extensions/focus.ts +0 -36
- package/src/extensions/folding.tsx +0 -44
- package/src/extensions/hashtag.tsx +0 -68
- package/src/extensions/index.ts +0 -30
- package/src/extensions/json.ts +0 -57
- package/src/extensions/listener.ts +0 -38
- package/src/extensions/markdown/action.ts +0 -117
- package/src/extensions/markdown/bundle.ts +0 -93
- package/src/extensions/markdown/changes.test.ts +0 -26
- package/src/extensions/markdown/changes.ts +0 -149
- package/src/extensions/markdown/debug.ts +0 -44
- package/src/extensions/markdown/decorate.ts +0 -601
- package/src/extensions/markdown/formatting.test.ts +0 -498
- package/src/extensions/markdown/formatting.ts +0 -1267
- package/src/extensions/markdown/highlight.ts +0 -183
- package/src/extensions/markdown/image.ts +0 -118
- package/src/extensions/markdown/index.ts +0 -13
- package/src/extensions/markdown/link.ts +0 -50
- package/src/extensions/markdown/parser.test.ts +0 -75
- package/src/extensions/markdown/styles.ts +0 -135
- package/src/extensions/markdown/table.ts +0 -150
- package/src/extensions/mention.ts +0 -41
- package/src/extensions/modes.ts +0 -41
- package/src/extensions/outliner/commands.ts +0 -270
- package/src/extensions/outliner/editor.test.ts +0 -33
- package/src/extensions/outliner/editor.ts +0 -184
- package/src/extensions/outliner/index.ts +0 -7
- package/src/extensions/outliner/outliner.test.ts +0 -100
- package/src/extensions/outliner/outliner.ts +0 -167
- package/src/extensions/outliner/selection.ts +0 -50
- package/src/extensions/outliner/tree.test.ts +0 -168
- package/src/extensions/outliner/tree.ts +0 -317
- package/src/extensions/preview/index.ts +0 -5
- package/src/extensions/preview/preview.ts +0 -190
- package/src/extensions/selection.ts +0 -100
- package/src/extensions/tags/extended-markdown.test.ts +0 -261
- package/src/extensions/tags/extended-markdown.ts +0 -78
- package/src/extensions/tags/index.ts +0 -7
- package/src/extensions/tags/streamer.ts +0 -243
- package/src/extensions/tags/xml-tags.ts +0 -393
- package/src/extensions/tags/xml-util.ts +0 -94
- package/src/extensions/typewriter.ts +0 -68
- package/src/stories/CommandMenu.stories.tsx +0 -158
- package/src/styles/index.ts +0 -7
- package/src/styles/markdown.ts +0 -26
- package/src/styles/theme.ts +0 -268
- package/src/styles/tokens.ts +0 -17
- package/src/testing/PreviewPopover.tsx +0 -78
- package/src/testing/index.ts +0 -6
- package/src/testing/util.ts +0 -7
- package/src/types/index.ts +0 -5
- package/src/types/types.ts +0 -32
- package/src/util/cursor.ts +0 -56
- package/src/util/debug.ts +0 -64
- package/src/util/decorations.ts +0 -21
- package/src/util/dom.ts +0 -34
- package/src/util/facet.ts +0 -13
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
//
|
|
2
|
-
// Copyright 2025 DXOS.org
|
|
3
|
-
// Based on https://github.com/codemirror/view/blob/main/src/placeholder.ts
|
|
4
|
-
//
|
|
5
|
-
|
|
6
|
-
import { type Extension } from '@codemirror/state';
|
|
7
|
-
import { Decoration, EditorView, ViewPlugin, type ViewUpdate, WidgetType } from '@codemirror/view';
|
|
8
|
-
|
|
9
|
-
import { clientRectsFor, flattenRect } from '../../util';
|
|
10
|
-
|
|
11
|
-
type Content = string | HTMLElement | ((view: EditorView) => HTMLElement);
|
|
12
|
-
|
|
13
|
-
export type PlaceholderOptions = {
|
|
14
|
-
delay?: number;
|
|
15
|
-
content: Content;
|
|
16
|
-
};
|
|
17
|
-
|
|
18
|
-
export const placeholder = ({ delay = 3_000, content }: PlaceholderOptions): Extension => {
|
|
19
|
-
const plugin = ViewPlugin.fromClass(
|
|
20
|
-
class {
|
|
21
|
-
decorations = Decoration.none;
|
|
22
|
-
timeout: ReturnType<typeof setTimeout> | undefined;
|
|
23
|
-
|
|
24
|
-
update(update: ViewUpdate) {
|
|
25
|
-
if (this.timeout) {
|
|
26
|
-
window.clearTimeout(this.timeout);
|
|
27
|
-
this.timeout = undefined;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
// Check if the active line (where cursor is) is empty.
|
|
31
|
-
const activeLine = update.view.state.doc.lineAt(update.view.state.selection.main.head);
|
|
32
|
-
const isEmpty = activeLine.text.trim() === '';
|
|
33
|
-
if (isEmpty) {
|
|
34
|
-
// Create widget decoration at the start of the current line.
|
|
35
|
-
const lineStart = activeLine.from;
|
|
36
|
-
this.timeout = setTimeout(() => {
|
|
37
|
-
this.decorations = Decoration.set([
|
|
38
|
-
Decoration.widget({
|
|
39
|
-
widget: new Placeholder(content),
|
|
40
|
-
side: 1,
|
|
41
|
-
}).range(lineStart),
|
|
42
|
-
]);
|
|
43
|
-
|
|
44
|
-
update.view.update([]);
|
|
45
|
-
}, delay);
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
this.decorations = Decoration.none;
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
destroy() {
|
|
52
|
-
if (this.timeout) {
|
|
53
|
-
clearTimeout(this.timeout);
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
},
|
|
57
|
-
{
|
|
58
|
-
provide: (plugin) => {
|
|
59
|
-
return [EditorView.decorations.of((view) => view.plugin(plugin)?.decorations ?? Decoration.none)];
|
|
60
|
-
},
|
|
61
|
-
},
|
|
62
|
-
);
|
|
63
|
-
|
|
64
|
-
return typeof content === 'string'
|
|
65
|
-
? [plugin, EditorView.contentAttributes.of({ 'aria-placeholder': content })]
|
|
66
|
-
: plugin;
|
|
67
|
-
};
|
|
68
|
-
|
|
69
|
-
class Placeholder extends WidgetType {
|
|
70
|
-
constructor(readonly content: Content) {
|
|
71
|
-
super();
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
toDOM(view: EditorView) {
|
|
75
|
-
const wrap = document.createElement('span');
|
|
76
|
-
wrap.className = 'cm-placeholder';
|
|
77
|
-
wrap.style.pointerEvents = 'none';
|
|
78
|
-
wrap.appendChild(
|
|
79
|
-
typeof this.content === 'string'
|
|
80
|
-
? document.createTextNode(this.content)
|
|
81
|
-
: typeof this.content === 'function'
|
|
82
|
-
? this.content(view)
|
|
83
|
-
: this.content.cloneNode(true),
|
|
84
|
-
);
|
|
85
|
-
wrap.setAttribute('aria-hidden', 'true');
|
|
86
|
-
return wrap;
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
override coordsAt(dom: HTMLElement) {
|
|
90
|
-
const rects = dom.firstChild ? clientRectsFor(dom.firstChild) : [];
|
|
91
|
-
if (!rects.length) {
|
|
92
|
-
return null;
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
const style = window.getComputedStyle(dom.parentNode as HTMLElement);
|
|
96
|
-
const rect = flattenRect(rects[0], style.direction !== 'rtl');
|
|
97
|
-
const lineHeight = parseInt(style.lineHeight);
|
|
98
|
-
if (rect.bottom - rect.top > lineHeight * 1.5) {
|
|
99
|
-
return {
|
|
100
|
-
left: rect.left,
|
|
101
|
-
right: rect.right,
|
|
102
|
-
top: rect.top,
|
|
103
|
-
bottom: rect.top + lineHeight,
|
|
104
|
-
};
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
return rect;
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
override ignoreEvent() {
|
|
111
|
-
return false;
|
|
112
|
-
}
|
|
113
|
-
}
|
|
@@ -1,134 +0,0 @@
|
|
|
1
|
-
//
|
|
2
|
-
// Copyright 2024 DXOS.org
|
|
3
|
-
//
|
|
4
|
-
|
|
5
|
-
import { type Extension } from '@codemirror/state';
|
|
6
|
-
import { type EditorView } from '@codemirror/view';
|
|
7
|
-
import { type RefObject, useCallback, useMemo, useRef, useState } from 'react';
|
|
8
|
-
|
|
9
|
-
import { type DxAnchorActivate } from '@dxos/react-ui';
|
|
10
|
-
import { type MaybePromise } from '@dxos/util';
|
|
11
|
-
|
|
12
|
-
import { type CommandMenuGroup, type CommandMenuItem, getItem, getNextItem, getPreviousItem } from '../../components';
|
|
13
|
-
|
|
14
|
-
import { commandMenu, commandRangeEffect } from './command-menu';
|
|
15
|
-
import { type PlaceholderOptions } from './placeholder';
|
|
16
|
-
|
|
17
|
-
export type UseCommandMenuOptions = {
|
|
18
|
-
// TODO(burdon): Extensions should not depend directly on the editor view.
|
|
19
|
-
viewRef: RefObject<EditorView | null>;
|
|
20
|
-
trigger: string | string[];
|
|
21
|
-
placeholder?: Partial<PlaceholderOptions>;
|
|
22
|
-
getMenu: (trigger: string, query?: string) => MaybePromise<CommandMenuGroup[]>;
|
|
23
|
-
};
|
|
24
|
-
|
|
25
|
-
export type UseCommandMenu = {
|
|
26
|
-
groupsRef: RefObject<CommandMenuGroup[]>;
|
|
27
|
-
commandMenu: Extension;
|
|
28
|
-
currentItem: string | undefined;
|
|
29
|
-
open: boolean;
|
|
30
|
-
onOpenChange: (open: boolean) => void;
|
|
31
|
-
onActivate: (event: DxAnchorActivate) => void;
|
|
32
|
-
onSelect: (item: CommandMenuItem) => void;
|
|
33
|
-
};
|
|
34
|
-
|
|
35
|
-
export const useCommandMenu = ({ viewRef, trigger, placeholder, getMenu }: UseCommandMenuOptions): UseCommandMenu => {
|
|
36
|
-
const currentRef = useRef<CommandMenuItem | null>(null);
|
|
37
|
-
const groupsRef = useRef<CommandMenuGroup[]>([]);
|
|
38
|
-
const [currentItem, setCurrentItem] = useState<string>();
|
|
39
|
-
const [open, setOpen] = useState(false);
|
|
40
|
-
const [_, refresh] = useState({});
|
|
41
|
-
|
|
42
|
-
const handleOpenChange = useCallback(
|
|
43
|
-
async (open: boolean, trigger?: string) => {
|
|
44
|
-
if (open && trigger) {
|
|
45
|
-
groupsRef.current = await getMenu(trigger);
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
setOpen(open);
|
|
49
|
-
if (!open) {
|
|
50
|
-
setCurrentItem(undefined);
|
|
51
|
-
viewRef.current?.dispatch({ effects: [commandRangeEffect.of(null)] });
|
|
52
|
-
}
|
|
53
|
-
},
|
|
54
|
-
[getMenu],
|
|
55
|
-
);
|
|
56
|
-
|
|
57
|
-
const handleActivate = useCallback<UseCommandMenu['onActivate']>(
|
|
58
|
-
async (event) => {
|
|
59
|
-
const item = getItem(groupsRef.current, currentItem);
|
|
60
|
-
if (item) {
|
|
61
|
-
currentRef.current = item;
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
const triggerKey = event.trigger.getAttribute('data-trigger');
|
|
65
|
-
if (!open && triggerKey) {
|
|
66
|
-
await handleOpenChange(true, triggerKey);
|
|
67
|
-
}
|
|
68
|
-
},
|
|
69
|
-
[open, handleOpenChange],
|
|
70
|
-
);
|
|
71
|
-
|
|
72
|
-
// TODO(burdon): Move outside.
|
|
73
|
-
const handleSelect = useCallback<UseCommandMenu['onSelect']>((item) => {
|
|
74
|
-
if (!viewRef.current) {
|
|
75
|
-
return;
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
const selection = viewRef.current.state.selection.main;
|
|
79
|
-
void item.onSelect?.(viewRef.current, selection.head);
|
|
80
|
-
}, []);
|
|
81
|
-
|
|
82
|
-
const serializedTrigger = Array.isArray(trigger) ? trigger.join(',') : trigger;
|
|
83
|
-
|
|
84
|
-
const memoizedCommandMenu = useMemo<Extension>(() => {
|
|
85
|
-
return commandMenu({
|
|
86
|
-
trigger,
|
|
87
|
-
placeholder,
|
|
88
|
-
onClose: () => handleOpenChange(false),
|
|
89
|
-
onArrowDown: () => {
|
|
90
|
-
setCurrentItem((currentItem) => {
|
|
91
|
-
const next = getNextItem(groupsRef.current, currentItem);
|
|
92
|
-
currentRef.current = next;
|
|
93
|
-
return next.id;
|
|
94
|
-
});
|
|
95
|
-
},
|
|
96
|
-
onArrowUp: () => {
|
|
97
|
-
setCurrentItem((currentItem) => {
|
|
98
|
-
const previous = getPreviousItem(groupsRef.current, currentItem);
|
|
99
|
-
currentRef.current = previous;
|
|
100
|
-
return previous.id;
|
|
101
|
-
});
|
|
102
|
-
},
|
|
103
|
-
onEnter: () => {
|
|
104
|
-
if (currentRef.current) {
|
|
105
|
-
handleSelect(currentRef.current);
|
|
106
|
-
}
|
|
107
|
-
},
|
|
108
|
-
onTextChange: async (trigger, text) => {
|
|
109
|
-
if (/\W/.test(text)) {
|
|
110
|
-
return queueMicrotask(() => handleOpenChange(false));
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
groupsRef.current = await getMenu(trigger, text);
|
|
114
|
-
const firstItem = groupsRef.current.filter((group) => group.items.length > 0)[0]?.items[0];
|
|
115
|
-
if (firstItem) {
|
|
116
|
-
setCurrentItem(firstItem.id);
|
|
117
|
-
currentRef.current = firstItem;
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
refresh({});
|
|
121
|
-
},
|
|
122
|
-
});
|
|
123
|
-
}, [handleOpenChange, getMenu, serializedTrigger, placeholder]);
|
|
124
|
-
|
|
125
|
-
return {
|
|
126
|
-
groupsRef,
|
|
127
|
-
commandMenu: memoizedCommandMenu,
|
|
128
|
-
currentItem,
|
|
129
|
-
open,
|
|
130
|
-
onOpenChange: setOpen,
|
|
131
|
-
onActivate: handleActivate,
|
|
132
|
-
onSelect: handleSelect,
|
|
133
|
-
};
|
|
134
|
-
};
|