@witchcraft/editor 0.0.3 → 0.0.5
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/module.d.cts +2 -0
- package/dist/module.d.mts +2 -15
- package/dist/module.json +1 -1
- package/dist/module.mjs +13 -72
- package/dist/types.d.mts +12 -2
- package/package.json +228 -237
- package/src/module.ts +1 -2
- package/src/runtime/assets/handle-border-circles.svg +0 -0
- package/src/runtime/components/Editor.vue +0 -0
- package/src/runtime/pm/features/Blocks/components/ItemNodeView.vue +1 -1
- package/src/runtime/pm/features/EmbeddedDocument/components/EmbeddedDocumentPicker.vue +0 -2
- package/src/runtime/pm/features/EmbeddedDocument/components/EmbeddedNodeView.vue +1 -3
- package/src/runtime/pm/features/Iframe/components/IframeNodeView.vue +0 -3
- package/src/runtime/pm/features/Link/components/BubbleMenuExternalLink.vue +0 -1
- package/src/runtime/pm/features/Link/components/BubbleMenuInternalLink.vue +1 -4
- package/src/runtime/pm/features/Link/components/BubbleMenuLinkActions.vue +0 -3
- package/src/runtime/pm/features/Menus/components/MarkMenuManager.vue +0 -1
- package/src/runtime/pm/schema.ts +0 -0
- package/src/runtime/pm/utils/createDropIndicator.ts +9 -3
- package/src/runtime/pm/utils/getElPropertyAsInt.ts +3 -0
- package/src/runtime/pm/utils/internal/debugSel.ts +0 -0
- package/src/runtime/pm/utils/internal/recurse.ts +0 -0
- package/dist/runtime/assets/base.css +0 -1
- package/dist/runtime/assets/handle-arrow.svg +0 -16
- package/dist/runtime/assets/handle-border-circles-single.svg +0 -44
- package/dist/runtime/assets/handle-border-circles.svg +0 -27
- package/dist/runtime/assets/handle-temp.svg +0 -1
- package/dist/runtime/assets/utils.css +0 -1
- package/dist/runtime/components/CodeBlockThemePicker.d.vue.ts +0 -12
- package/dist/runtime/components/CodeBlockThemePicker.vue +0 -123
- package/dist/runtime/components/CodeBlockThemePicker.vue.d.ts +0 -12
- package/dist/runtime/components/Commands.d.vue.ts +0 -10
- package/dist/runtime/components/Commands.vue +0 -60
- package/dist/runtime/components/Commands.vue.d.ts +0 -10
- package/dist/runtime/components/Editor.d.vue.ts +0 -40
- package/dist/runtime/components/Editor.vue +0 -208
- package/dist/runtime/components/Editor.vue.d.ts +0 -40
- package/dist/runtime/components/EditorDemoApp.d.vue.ts +0 -2
- package/dist/runtime/components/EditorDemoApp.vue +0 -104
- package/dist/runtime/components/EditorDemoApp.vue.d.ts +0 -2
- package/dist/runtime/components/EditorDemoControls.d.vue.ts +0 -12
- package/dist/runtime/components/EditorDemoControls.vue +0 -36
- package/dist/runtime/components/EditorDemoControls.vue.d.ts +0 -12
- package/dist/runtime/components/TestWrapper.d.vue.ts +0 -11
- package/dist/runtime/components/TestWrapper.vue +0 -63
- package/dist/runtime/components/TestWrapper.vue.d.ts +0 -11
- package/dist/runtime/composables/useEditor.d.ts +0 -9
- package/dist/runtime/composables/useEditor.js +0 -21
- package/dist/runtime/composables/useWindowDebugging.d.ts +0 -3
- package/dist/runtime/composables/useWindowDebugging.js +0 -16
- package/dist/runtime/demo/App.d.vue.ts +0 -2
- package/dist/runtime/demo/App.vue +0 -101
- package/dist/runtime/demo/App.vue.d.ts +0 -2
- package/dist/runtime/demo/README.md +0 -1
- package/dist/runtime/demo/main.d.ts +0 -1
- package/dist/runtime/demo/main.js +0 -4
- package/dist/runtime/demo/tailwind.css +0 -1
- package/dist/runtime/env.d.ts +0 -2
- package/dist/runtime/injectionKeys.d.ts +0 -6
- package/dist/runtime/injectionKeys.js +0 -3
- package/dist/runtime/main.lib.d.ts +0 -2
- package/dist/runtime/main.lib.js +0 -2
- package/dist/runtime/pm/commands/backspace.d.ts +0 -12
- package/dist/runtime/pm/commands/backspace.js +0 -26
- package/dist/runtime/pm/commands/changeAttrs.d.ts +0 -9
- package/dist/runtime/pm/commands/changeAttrs.js +0 -15
- package/dist/runtime/pm/commands/deleteSelection.d.ts +0 -9
- package/dist/runtime/pm/commands/deleteSelection.js +0 -8
- package/dist/runtime/pm/commands/enter.d.ts +0 -14
- package/dist/runtime/pm/commands/enter.js +0 -9
- package/dist/runtime/pm/commands/insertBreak.d.ts +0 -9
- package/dist/runtime/pm/commands/insertBreak.js +0 -22
- package/dist/runtime/pm/features/Base/Base.d.ts +0 -4
- package/dist/runtime/pm/features/Base/Base.js +0 -32
- package/dist/runtime/pm/features/Base/commands/deleteNodes.d.ts +0 -10
- package/dist/runtime/pm/features/Base/commands/deleteNodes.js +0 -29
- package/dist/runtime/pm/features/Base/commands/setCursorVisible.d.ts +0 -12
- package/dist/runtime/pm/features/Base/commands/setCursorVisible.js +0 -7
- package/dist/runtime/pm/features/Base/plugins/debugSelectionPlugin.d.ts +0 -9
- package/dist/runtime/pm/features/Base/plugins/debugSelectionPlugin.js +0 -48
- package/dist/runtime/pm/features/Base/plugins/isCursorVisiblePlugin.d.ts +0 -3
- package/dist/runtime/pm/features/Base/plugins/isCursorVisiblePlugin.js +0 -26
- package/dist/runtime/pm/features/Base/plugins/isUsingTouchPlugin.d.ts +0 -3
- package/dist/runtime/pm/features/Base/plugins/isUsingTouchPlugin.js +0 -38
- package/dist/runtime/pm/features/Base/plugins/selectingIndicator.d.ts +0 -5
- package/dist/runtime/pm/features/Base/plugins/selectingIndicator.js +0 -35
- package/dist/runtime/pm/features/Base/plugins/unfocusedSelectionIndicatorPlugin.d.ts +0 -33
- package/dist/runtime/pm/features/Base/plugins/unfocusedSelectionIndicatorPlugin.js +0 -66
- package/dist/runtime/pm/features/Base/types.d.ts +0 -3
- package/dist/runtime/pm/features/Base/types.js +0 -0
- package/dist/runtime/pm/features/BaseShortcuts/BaseShortcuts.d.ts +0 -3
- package/dist/runtime/pm/features/BaseShortcuts/BaseShortcuts.js +0 -34
- package/dist/runtime/pm/features/Blockquote/Blockquote.d.ts +0 -5
- package/dist/runtime/pm/features/Blockquote/Blockquote.js +0 -65
- package/dist/runtime/pm/features/Blockquote/commands/blockquoteEnter.d.ts +0 -11
- package/dist/runtime/pm/features/Blockquote/commands/blockquoteEnter.js +0 -31
- package/dist/runtime/pm/features/Blockquote/commands/blockquoteShiftEnter.d.ts +0 -11
- package/dist/runtime/pm/features/Blockquote/commands/blockquoteShiftEnter.js +0 -12
- package/dist/runtime/pm/features/Blocks/Blocks.d.ts +0 -2
- package/dist/runtime/pm/features/Blocks/Blocks.js +0 -2
- package/dist/runtime/pm/features/Blocks/Item.d.ts +0 -11
- package/dist/runtime/pm/features/Blocks/Item.js +0 -157
- package/dist/runtime/pm/features/Blocks/List.d.ts +0 -4
- package/dist/runtime/pm/features/Blocks/List.js +0 -59
- package/dist/runtime/pm/features/Blocks/commands/changeItemType.d.ts +0 -20
- package/dist/runtime/pm/features/Blocks/commands/changeItemType.js +0 -40
- package/dist/runtime/pm/features/Blocks/commands/changeTypeAttr.d.ts +0 -14
- package/dist/runtime/pm/features/Blocks/commands/changeTypeAttr.js +0 -28
- package/dist/runtime/pm/features/Blocks/commands/copyOrMoveItem.d.ts +0 -23
- package/dist/runtime/pm/features/Blocks/commands/copyOrMoveItem.js +0 -124
- package/dist/runtime/pm/features/Blocks/commands/deleteItem.d.ts +0 -12
- package/dist/runtime/pm/features/Blocks/commands/deleteItem.js +0 -8
- package/dist/runtime/pm/features/Blocks/commands/indentItem.d.ts +0 -12
- package/dist/runtime/pm/features/Blocks/commands/indentItem.js +0 -58
- package/dist/runtime/pm/features/Blocks/commands/itemMenuCommands.d.ts +0 -18
- package/dist/runtime/pm/features/Blocks/commands/itemMenuCommands.js +0 -40
- package/dist/runtime/pm/features/Blocks/commands/moveItem.d.ts +0 -12
- package/dist/runtime/pm/features/Blocks/commands/moveItem.js +0 -80
- package/dist/runtime/pm/features/Blocks/commands/setNode.d.ts +0 -20
- package/dist/runtime/pm/features/Blocks/commands/setNode.js +0 -87
- package/dist/runtime/pm/features/Blocks/commands/splitItem.d.ts +0 -17
- package/dist/runtime/pm/features/Blocks/commands/splitItem.js +0 -87
- package/dist/runtime/pm/features/Blocks/commands/unindentItem.d.ts +0 -12
- package/dist/runtime/pm/features/Blocks/commands/unindentItem.js +0 -42
- package/dist/runtime/pm/features/Blocks/components/DragTreeHandle.d.vue.ts +0 -0
- package/dist/runtime/pm/features/Blocks/components/DragTreeHandle.vue +0 -122
- package/dist/runtime/pm/features/Blocks/components/DragTreeHandle.vue.d.ts +0 -0
- package/dist/runtime/pm/features/Blocks/components/ItemMenu.d.vue.ts +0 -6
- package/dist/runtime/pm/features/Blocks/components/ItemMenu.vue +0 -78
- package/dist/runtime/pm/features/Blocks/components/ItemMenu.vue.d.ts +0 -6
- package/dist/runtime/pm/features/Blocks/components/ItemNodeView.d.vue.ts +0 -92
- package/dist/runtime/pm/features/Blocks/components/ItemNodeView.vue +0 -350
- package/dist/runtime/pm/features/Blocks/components/ItemNodeView.vue.d.ts +0 -92
- package/dist/runtime/pm/features/Blocks/components/defaultItemMenu.d.ts +0 -5
- package/dist/runtime/pm/features/Blocks/components/defaultItemMenu.js +0 -42
- package/dist/runtime/pm/features/Blocks/composables/useDragWithThreshold.d.ts +0 -1
- package/dist/runtime/pm/features/Blocks/composables/useDragWithThreshold.js +0 -0
- package/dist/runtime/pm/features/Blocks/composables/useHandleHeight.d.ts +0 -5
- package/dist/runtime/pm/features/Blocks/composables/useHandleHeight.js +0 -22
- package/dist/runtime/pm/features/Blocks/composables/useHasChildren.d.ts +0 -5
- package/dist/runtime/pm/features/Blocks/composables/useHasChildren.js +0 -10
- package/dist/runtime/pm/features/Blocks/composables/useNodeStates.d.ts +0 -7
- package/dist/runtime/pm/features/Blocks/composables/useNodeStates.js +0 -20
- package/dist/runtime/pm/features/Blocks/itemMenuMenuItems.d.ts +0 -20
- package/dist/runtime/pm/features/Blocks/itemMenuMenuItems.js +0 -138
- package/dist/runtime/pm/features/Blocks/plugins/ensureLastItemIsContentPlugin.d.ts +0 -11
- package/dist/runtime/pm/features/Blocks/plugins/ensureLastItemIsContentPlugin.js +0 -36
- package/dist/runtime/pm/features/Blocks/plugins/itemBlockIdPlugin.d.ts +0 -8
- package/dist/runtime/pm/features/Blocks/plugins/itemBlockIdPlugin.js +0 -30
- package/dist/runtime/pm/features/Blocks/plugins/itemHasSingularSelectionPlugin.d.ts +0 -3
- package/dist/runtime/pm/features/Blocks/plugins/itemHasSingularSelectionPlugin.js +0 -30
- package/dist/runtime/pm/features/Blocks/plugins/itemMenuPlugin.d.ts +0 -4
- package/dist/runtime/pm/features/Blocks/plugins/itemMenuPlugin.js +0 -17
- package/dist/runtime/pm/features/Blocks/states/stateful.d.ts +0 -2
- package/dist/runtime/pm/features/Blocks/states/stateful.js +0 -37
- package/dist/runtime/pm/features/Blocks/states/task/cancelled.svg +0 -32
- package/dist/runtime/pm/features/Blocks/states/task/checked.svg +0 -27
- package/dist/runtime/pm/features/Blocks/states/task/checked2.svg +0 -24
- package/dist/runtime/pm/features/Blocks/states/task/partial.svg +0 -24
- package/dist/runtime/pm/features/Blocks/states/task/partial2.svg +0 -31
- package/dist/runtime/pm/features/Blocks/states/task/unchecked.svg +0 -20
- package/dist/runtime/pm/features/Blocks/types.d.ts +0 -43
- package/dist/runtime/pm/features/Blocks/types.js +0 -2
- package/dist/runtime/pm/features/Blocks/utils/createItemMenuCommandExecuter.d.ts +0 -3
- package/dist/runtime/pm/features/Blocks/utils/createItemMenuCommandExecuter.js +0 -24
- package/dist/runtime/pm/features/Blocks/utils/fixBlockIds.d.ts +0 -4
- package/dist/runtime/pm/features/Blocks/utils/fixBlockIds.js +0 -23
- package/dist/runtime/pm/features/Blocks/utils/isValidId.d.ts +0 -2
- package/dist/runtime/pm/features/Blocks/utils/isValidId.js +0 -7
- package/dist/runtime/pm/features/CodeBlock/CodeBlock.d.ts +0 -16
- package/dist/runtime/pm/features/CodeBlock/CodeBlock.js +0 -91
- package/dist/runtime/pm/features/CodeBlock/build/generateHighlightJsInfo.d.ts +0 -1
- package/dist/runtime/pm/features/CodeBlock/build/generateHighlightJsInfo.js +0 -63
- package/dist/runtime/pm/features/CodeBlock/commands/codeBlockEnterOrSplit.d.ts +0 -9
- package/dist/runtime/pm/features/CodeBlock/commands/codeBlockEnterOrSplit.js +0 -28
- package/dist/runtime/pm/features/CodeBlock/commands/codeBlockIndent.d.ts +0 -9
- package/dist/runtime/pm/features/CodeBlock/commands/codeBlockIndent.js +0 -39
- package/dist/runtime/pm/features/CodeBlock/commands/codeBlockUnindent.d.ts +0 -9
- package/dist/runtime/pm/features/CodeBlock/commands/codeBlockUnindent.js +0 -50
- package/dist/runtime/pm/features/CodeBlock/commands/focusCodeBlockLanguage.d.ts +0 -9
- package/dist/runtime/pm/features/CodeBlock/commands/focusCodeBlockLanguage.js +0 -27
- package/dist/runtime/pm/features/CodeBlock/components/CodeBlockView.d.vue.ts +0 -92
- package/dist/runtime/pm/features/CodeBlock/components/CodeBlockView.vue +0 -112
- package/dist/runtime/pm/features/CodeBlock/components/CodeBlockView.vue.d.ts +0 -92
- package/dist/runtime/pm/features/CodeBlock/composables/useAsyncCodeBlockHighlighting.d.ts +0 -28
- package/dist/runtime/pm/features/CodeBlock/composables/useAsyncCodeBlockHighlighting.js +0 -137
- package/dist/runtime/pm/features/CodeBlock/composables/useHighlightJsTheme.d.ts +0 -37
- package/dist/runtime/pm/features/CodeBlock/composables/useHighlightJsTheme.js +0 -101
- package/dist/runtime/pm/features/CodeBlock/highlightJsInfo.d.ts +0 -17
- package/dist/runtime/pm/features/CodeBlock/highlightJsInfo.js +0 -711
- package/dist/runtime/pm/features/CodeBlock/types.d.ts +0 -4
- package/dist/runtime/pm/features/CodeBlock/types.js +0 -2
- package/dist/runtime/pm/features/Collaboration/Collaboration.d.ts +0 -66
- package/dist/runtime/pm/features/Collaboration/Collaboration.js +0 -169
- package/dist/runtime/pm/features/CommandsMenus/CommandBar.d.ts +0 -19
- package/dist/runtime/pm/features/CommandsMenus/CommandBar.js +0 -97
- package/dist/runtime/pm/features/CommandsMenus/commandBarMenuItems.d.ts +0 -20
- package/dist/runtime/pm/features/CommandsMenus/commandBarMenuItems.js +0 -188
- package/dist/runtime/pm/features/CommandsMenus/components/CommandBar.d.vue.ts +0 -8
- package/dist/runtime/pm/features/CommandsMenus/components/CommandBar.vue +0 -58
- package/dist/runtime/pm/features/CommandsMenus/components/CommandBar.vue.d.ts +0 -8
- package/dist/runtime/pm/features/CommandsMenus/components/CommandBarItem.d.vue.ts +0 -12
- package/dist/runtime/pm/features/CommandsMenus/components/CommandBarItem.vue +0 -42
- package/dist/runtime/pm/features/CommandsMenus/components/CommandBarItem.vue.d.ts +0 -12
- package/dist/runtime/pm/features/CommandsMenus/components/CommandMenuGroup.d.vue.ts +0 -10
- package/dist/runtime/pm/features/CommandsMenus/components/CommandMenuGroup.vue +0 -55
- package/dist/runtime/pm/features/CommandsMenus/components/CommandMenuGroup.vue.d.ts +0 -10
- package/dist/runtime/pm/features/CommandsMenus/components/CommandMenuItem.d.vue.ts +0 -11
- package/dist/runtime/pm/features/CommandsMenus/components/CommandMenuItem.vue +0 -58
- package/dist/runtime/pm/features/CommandsMenus/components/CommandMenuItem.vue.d.ts +0 -11
- package/dist/runtime/pm/features/CommandsMenus/components/CommandMenuList.d.vue.ts +0 -11
- package/dist/runtime/pm/features/CommandsMenus/components/CommandMenuList.vue +0 -54
- package/dist/runtime/pm/features/CommandsMenus/components/CommandMenuList.vue.d.ts +0 -11
- package/dist/runtime/pm/features/CommandsMenus/components/TextIcon.d.vue.ts +0 -5
- package/dist/runtime/pm/features/CommandsMenus/components/TextIcon.vue +0 -13
- package/dist/runtime/pm/features/CommandsMenus/components/TextIcon.vue.d.ts +0 -5
- package/dist/runtime/pm/features/CommandsMenus/icons/HighlightIcon.d.vue.ts +0 -8
- package/dist/runtime/pm/features/CommandsMenus/icons/HighlightIcon.vue +0 -45
- package/dist/runtime/pm/features/CommandsMenus/icons/HighlightIcon.vue.d.ts +0 -8
- package/dist/runtime/pm/features/CommandsMenus/icons/SubscriptIcon.d.vue.ts +0 -2
- package/dist/runtime/pm/features/CommandsMenus/icons/SubscriptIcon.vue +0 -5
- package/dist/runtime/pm/features/CommandsMenus/icons/SubscriptIcon.vue.d.ts +0 -2
- package/dist/runtime/pm/features/CommandsMenus/icons/SuperscriptIcon.d.vue.ts +0 -2
- package/dist/runtime/pm/features/CommandsMenus/icons/SuperscriptIcon.vue +0 -5
- package/dist/runtime/pm/features/CommandsMenus/icons/SuperscriptIcon.vue.d.ts +0 -2
- package/dist/runtime/pm/features/CommandsMenus/types.d.ts +0 -61
- package/dist/runtime/pm/features/CommandsMenus/types.js +0 -5
- package/dist/runtime/pm/features/CommandsMenus/utils/defaultCommandExecutor.d.ts +0 -3
- package/dist/runtime/pm/features/CommandsMenus/utils/defaultCommandExecutor.js +0 -11
- package/dist/runtime/pm/features/CommandsMenus/utils/findCommand.d.ts +0 -10
- package/dist/runtime/pm/features/CommandsMenus/utils/findCommand.js +0 -16
- package/dist/runtime/pm/features/CommandsMenus/utils/popupPositionModifier.d.ts +0 -5
- package/dist/runtime/pm/features/CommandsMenus/utils/popupPositionModifier.js +0 -9
- package/dist/runtime/pm/features/CommandsMenus/utils/popupVerticalPositioner.d.ts +0 -5
- package/dist/runtime/pm/features/CommandsMenus/utils/popupVerticalPositioner.js +0 -11
- package/dist/runtime/pm/features/Document/Document.d.ts +0 -3
- package/dist/runtime/pm/features/Document/Document.js +0 -6
- package/dist/runtime/pm/features/DocumentApi/DocumentApi.d.ts +0 -86
- package/dist/runtime/pm/features/DocumentApi/DocumentApi.js +0 -170
- package/dist/runtime/pm/features/DocumentApi/composables/useEditorContent.d.ts +0 -13
- package/dist/runtime/pm/features/DocumentApi/composables/useEditorContent.js +0 -76
- package/dist/runtime/pm/features/DocumentApi/composables/useTestDocumentApi.d.ts +0 -23
- package/dist/runtime/pm/features/DocumentApi/composables/useTestDocumentApi.js +0 -70
- package/dist/runtime/pm/features/DocumentApi/types.d.ts +0 -133
- package/dist/runtime/pm/features/DocumentApi/types.js +0 -1
- package/dist/runtime/pm/features/DocumentApi/utils/convertFullTransactionForPartialState.d.ts +0 -3
- package/dist/runtime/pm/features/DocumentApi/utils/convertFullTransactionForPartialState.js +0 -37
- package/dist/runtime/pm/features/DocumentApi/utils/convertTrForInstance.d.ts +0 -4
- package/dist/runtime/pm/features/DocumentApi/utils/convertTrForInstance.js +0 -13
- package/dist/runtime/pm/features/DocumentApi/utils/convertTransactionForFullState.d.ts +0 -2
- package/dist/runtime/pm/features/DocumentApi/utils/convertTransactionForFullState.js +0 -22
- package/dist/runtime/pm/features/DocumentApi/utils/copyMeta.d.ts +0 -2
- package/dist/runtime/pm/features/DocumentApi/utils/copyMeta.js +0 -6
- package/dist/runtime/pm/features/DocumentApi/utils/getEmbedJson.d.ts +0 -1
- package/dist/runtime/pm/features/DocumentApi/utils/getEmbedJson.js +0 -14
- package/dist/runtime/pm/features/DocumentApi/utils/getEmbedNodeFromDoc.d.ts +0 -1
- package/dist/runtime/pm/features/DocumentApi/utils/getEmbedNodeFromDoc.js +0 -14
- package/dist/runtime/pm/features/DocumentApi/utils/getStateEmbedRange.d.ts +0 -9
- package/dist/runtime/pm/features/DocumentApi/utils/getStateEmbedRange.js +0 -19
- package/dist/runtime/pm/features/DocumentApi/utils/isEmbedId.d.ts +0 -2
- package/dist/runtime/pm/features/DocumentApi/utils/isEmbedId.js +0 -3
- package/dist/runtime/pm/features/EmbeddedDocument/Embedded.d.ts +0 -24
- package/dist/runtime/pm/features/EmbeddedDocument/Embedded.js +0 -73
- package/dist/runtime/pm/features/EmbeddedDocument/EmbeddedDocument.d.ts +0 -23
- package/dist/runtime/pm/features/EmbeddedDocument/EmbeddedDocument.js +0 -70
- package/dist/runtime/pm/features/EmbeddedDocument/components/EmbeddedDocumentPicker.d.vue.ts +0 -14
- package/dist/runtime/pm/features/EmbeddedDocument/components/EmbeddedDocumentPicker.vue +0 -171
- package/dist/runtime/pm/features/EmbeddedDocument/components/EmbeddedDocumentPicker.vue.d.ts +0 -14
- package/dist/runtime/pm/features/EmbeddedDocument/components/EmbeddedNodeView.d.vue.ts +0 -92
- package/dist/runtime/pm/features/EmbeddedDocument/components/EmbeddedNodeView.vue +0 -172
- package/dist/runtime/pm/features/EmbeddedDocument/components/EmbeddedNodeView.vue.d.ts +0 -92
- package/dist/runtime/pm/features/EmbeddedDocument/composables/useEmbeddedEditor.d.ts +0 -31
- package/dist/runtime/pm/features/EmbeddedDocument/composables/useEmbeddedEditor.js +0 -199
- package/dist/runtime/pm/features/EmbeddedDocument/types.d.ts +0 -49
- package/dist/runtime/pm/features/EmbeddedDocument/types.js +0 -6
- package/dist/runtime/pm/features/EmbeddedDocument/utils/isEmbeddedBlock.d.ts +0 -9
- package/dist/runtime/pm/features/EmbeddedDocument/utils/isEmbeddedBlock.js +0 -3
- package/dist/runtime/pm/features/EmbeddedDocument/utils/redirectFromEmbedded.d.ts +0 -28
- package/dist/runtime/pm/features/EmbeddedDocument/utils/redirectFromEmbedded.js +0 -17
- package/dist/runtime/pm/features/FileLoader/FileLoader.d.ts +0 -16
- package/dist/runtime/pm/features/FileLoader/FileLoader.js +0 -99
- package/dist/runtime/pm/features/FileLoader/FileLoaderHandler/FileLoaderHandler.d.ts +0 -28
- package/dist/runtime/pm/features/FileLoader/FileLoaderHandler/FileLoaderHandler.js +0 -69
- package/dist/runtime/pm/features/FileLoader/FileLoaderHandler/TestFileLoaderHandler.d.ts +0 -11
- package/dist/runtime/pm/features/FileLoader/FileLoaderHandler/TestFileLoaderHandler.js +0 -49
- package/dist/runtime/pm/features/FileLoader/commands/insertFile.d.ts +0 -17
- package/dist/runtime/pm/features/FileLoader/commands/insertFile.js +0 -39
- package/dist/runtime/pm/features/FileLoader/components/FileLoaderNodeView.d.vue.ts +0 -92
- package/dist/runtime/pm/features/FileLoader/components/FileLoaderNodeView.vue +0 -38
- package/dist/runtime/pm/features/FileLoader/components/FileLoaderNodeView.vue.d.ts +0 -92
- package/dist/runtime/pm/features/FileLoader/plugins/fileLoaderPlugin.d.ts +0 -5
- package/dist/runtime/pm/features/FileLoader/plugins/fileLoaderPlugin.js +0 -61
- package/dist/runtime/pm/features/FileLoader/types.d.ts +0 -73
- package/dist/runtime/pm/features/FileLoader/types.js +0 -0
- package/dist/runtime/pm/features/FileLoader/utils/cleanupFileLoaderNode.d.ts +0 -4
- package/dist/runtime/pm/features/FileLoader/utils/cleanupFileLoaderNode.js +0 -27
- package/dist/runtime/pm/features/FileLoader/utils/cleanupFileLoaderNodes.d.ts +0 -9
- package/dist/runtime/pm/features/FileLoader/utils/cleanupFileLoaderNodes.js +0 -22
- package/dist/runtime/pm/features/FileLoader/utils/findLoadingNodePos.d.ts +0 -2
- package/dist/runtime/pm/features/FileLoader/utils/findLoadingNodePos.js +0 -11
- package/dist/runtime/pm/features/FileLoader/utils/optionsCheck.d.ts +0 -3
- package/dist/runtime/pm/features/FileLoader/utils/optionsCheck.js +0 -8
- package/dist/runtime/pm/features/FileLoader/utils/readAsDataUrl.d.ts +0 -1
- package/dist/runtime/pm/features/FileLoader/utils/readAsDataUrl.js +0 -12
- package/dist/runtime/pm/features/HardBreak/HardBreak.d.ts +0 -5
- package/dist/runtime/pm/features/HardBreak/HardBreak.js +0 -14
- package/dist/runtime/pm/features/Heading/Heading.d.ts +0 -24
- package/dist/runtime/pm/features/Heading/Heading.js +0 -85
- package/dist/runtime/pm/features/Heading/commands/changeLevelAttr.d.ts +0 -16
- package/dist/runtime/pm/features/Heading/commands/changeLevelAttr.js +0 -33
- package/dist/runtime/pm/features/Heading/types.d.ts +0 -14
- package/dist/runtime/pm/features/Heading/types.js +0 -0
- package/dist/runtime/pm/features/Highlight/Highlight.d.ts +0 -72
- package/dist/runtime/pm/features/Highlight/Highlight.js +0 -163
- package/dist/runtime/pm/features/Highlight/retyped/tiptapHighlight.d.ts +0 -3
- package/dist/runtime/pm/features/Highlight/retyped/tiptapHighlight.js +0 -5
- package/dist/runtime/pm/features/Highlight/types.d.ts +0 -27
- package/dist/runtime/pm/features/Highlight/types.js +0 -2
- package/dist/runtime/pm/features/History/History.d.ts +0 -35
- package/dist/runtime/pm/features/History/History.js +0 -63
- package/dist/runtime/pm/features/Iframe/Iframe.d.ts +0 -21
- package/dist/runtime/pm/features/Iframe/Iframe.js +0 -127
- package/dist/runtime/pm/features/Iframe/IframeParsers.d.ts +0 -37
- package/dist/runtime/pm/features/Iframe/IframeParsers.js +0 -88
- package/dist/runtime/pm/features/Iframe/components/IframeNodeView.d.vue.ts +0 -92
- package/dist/runtime/pm/features/Iframe/components/IframeNodeView.vue +0 -82
- package/dist/runtime/pm/features/Iframe/components/IframeNodeView.vue.d.ts +0 -92
- package/dist/runtime/pm/features/Iframe/types.d.ts +0 -5
- package/dist/runtime/pm/features/Iframe/types.js +0 -0
- package/dist/runtime/pm/features/Image/Image.d.ts +0 -2
- package/dist/runtime/pm/features/Image/Image.js +0 -13
- package/dist/runtime/pm/features/Link/Link.d.ts +0 -38
- package/dist/runtime/pm/features/Link/Link.js +0 -241
- package/dist/runtime/pm/features/Link/components/BubbleMenuExternalLink.d.vue.ts +0 -28
- package/dist/runtime/pm/features/Link/components/BubbleMenuExternalLink.vue +0 -114
- package/dist/runtime/pm/features/Link/components/BubbleMenuExternalLink.vue.d.ts +0 -28
- package/dist/runtime/pm/features/Link/components/BubbleMenuInternalLink.d.vue.ts +0 -29
- package/dist/runtime/pm/features/Link/components/BubbleMenuInternalLink.vue +0 -107
- package/dist/runtime/pm/features/Link/components/BubbleMenuInternalLink.vue.d.ts +0 -29
- package/dist/runtime/pm/features/Link/components/BubbleMenuLink.d.vue.ts +0 -11
- package/dist/runtime/pm/features/Link/components/BubbleMenuLink.vue +0 -126
- package/dist/runtime/pm/features/Link/components/BubbleMenuLink.vue.d.ts +0 -11
- package/dist/runtime/pm/features/Link/components/BubbleMenuLinkActions.d.vue.ts +0 -18
- package/dist/runtime/pm/features/Link/components/BubbleMenuLinkActions.vue +0 -57
- package/dist/runtime/pm/features/Link/components/BubbleMenuLinkActions.vue.d.ts +0 -18
- package/dist/runtime/pm/features/Link/types.d.ts +0 -44
- package/dist/runtime/pm/features/Link/types.js +0 -3
- package/dist/runtime/pm/features/Menus/Menus.d.ts +0 -45
- package/dist/runtime/pm/features/Menus/Menus.js +0 -142
- package/dist/runtime/pm/features/Menus/components/MarkMenuManager.d.vue.ts +0 -6
- package/dist/runtime/pm/features/Menus/components/MarkMenuManager.vue +0 -166
- package/dist/runtime/pm/features/Menus/components/MarkMenuManager.vue.d.ts +0 -6
- package/dist/runtime/pm/features/Menus/types.d.ts +0 -51
- package/dist/runtime/pm/features/Menus/types.js +0 -3
- package/dist/runtime/pm/features/Menus/utils/isMarkMenu.d.ts +0 -2
- package/dist/runtime/pm/features/Menus/utils/isMarkMenu.js +0 -3
- package/dist/runtime/pm/features/Tables/commands/tableEnter.d.ts +0 -15
- package/dist/runtime/pm/features/Tables/commands/tableEnter.js +0 -19
- package/dist/runtime/pm/features/Tables/index.d.ts +0 -9
- package/dist/runtime/pm/features/Tables/index.js +0 -44
- package/dist/runtime/pm/schema.d.ts +0 -4
- package/dist/runtime/pm/schema.js +0 -80
- package/dist/runtime/pm/testSchema.d.ts +0 -5
- package/dist/runtime/pm/testSchema.js +0 -30
- package/dist/runtime/pm/utils/createDropIndicator.d.ts +0 -23
- package/dist/runtime/pm/utils/createDropIndicator.js +0 -32
- package/dist/runtime/pm/utils/createStateOnlyPluginApply.d.ts +0 -2
- package/dist/runtime/pm/utils/createStateOnlyPluginApply.js +0 -9
- package/dist/runtime/pm/utils/createStateOnlyPluginObjApply.d.ts +0 -2
- package/dist/runtime/pm/utils/createStateOnlyPluginObjApply.js +0 -14
- package/dist/runtime/pm/utils/dropPointInfo.d.ts +0 -56
- package/dist/runtime/pm/utils/dropPointInfo.js +0 -28
- package/dist/runtime/pm/utils/findUpwards.d.ts +0 -20
- package/dist/runtime/pm/utils/findUpwards.js +0 -18
- package/dist/runtime/pm/utils/getChildChunks.d.ts +0 -3
- package/dist/runtime/pm/utils/getChildChunks.js +0 -15
- package/dist/runtime/pm/utils/getDiffReplacementRange.d.ts +0 -20
- package/dist/runtime/pm/utils/getDiffReplacementRange.js +0 -9
- package/dist/runtime/pm/utils/getElMaxVisualSize.d.ts +0 -9
- package/dist/runtime/pm/utils/getElMaxVisualSize.js +0 -7
- package/dist/runtime/pm/utils/getElPropertyAsInt.d.ts +0 -1
- package/dist/runtime/pm/utils/getElPropertyAsInt.js +0 -8
- package/dist/runtime/pm/utils/getGroupNodeNames.d.ts +0 -2
- package/dist/runtime/pm/utils/getGroupNodeNames.js +0 -7
- package/dist/runtime/pm/utils/getMarkPosition.d.ts +0 -11
- package/dist/runtime/pm/utils/getMarkPosition.js +0 -34
- package/dist/runtime/pm/utils/getMarksInSelection.d.ts +0 -3
- package/dist/runtime/pm/utils/getMarksInSelection.js +0 -16
- package/dist/runtime/pm/utils/getTypeByName.d.ts +0 -2
- package/dist/runtime/pm/utils/getTypeByName.js +0 -5
- package/dist/runtime/pm/utils/index.d.ts +0 -15
- package/dist/runtime/pm/utils/index.js +0 -15
- package/dist/runtime/pm/utils/internal/createNodeTypesList.d.ts +0 -2
- package/dist/runtime/pm/utils/internal/createNodeTypesList.js +0 -17
- package/dist/runtime/pm/utils/internal/debugMap.d.ts +0 -7
- package/dist/runtime/pm/utils/internal/debugMap.js +0 -24
- package/dist/runtime/pm/utils/internal/debugNode.d.ts +0 -2
- package/dist/runtime/pm/utils/internal/debugNode.js +0 -18
- package/dist/runtime/pm/utils/internal/debugSel.d.ts +0 -5
- package/dist/runtime/pm/utils/internal/debugSel.js +0 -8
- package/dist/runtime/pm/utils/internal/recurse.d.ts +0 -2
- package/dist/runtime/pm/utils/internal/recurse.js +0 -39
- package/dist/runtime/pm/utils/internal/stripBlockId.d.ts +0 -2
- package/dist/runtime/pm/utils/internal/stripBlockId.js +0 -9
- package/dist/runtime/pm/utils/mapSelection.d.ts +0 -8
- package/dist/runtime/pm/utils/mapSelection.js +0 -12
- package/dist/runtime/pm/utils/nodesBetween.d.ts +0 -21
- package/dist/runtime/pm/utils/nodesBetween.js +0 -21
- package/dist/runtime/pm/utils/pointToPmPoint.d.ts +0 -2
- package/dist/runtime/pm/utils/pointToPmPoint.js +0 -3
- package/dist/runtime/pm/utils/splitIntoChunks.d.ts +0 -32
- package/dist/runtime/pm/utils/splitIntoChunks.js +0 -31
- package/dist/runtime/testDocuments.d.ts +0 -53
- package/dist/runtime/testDocuments.js +0 -122
- package/dist/runtime/types/index.d.ts +0 -53
- package/dist/runtime/types/index.js +0 -9
|
@@ -1,172 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<!-- @vue-expect-error -->
|
|
3
|
-
<node-view-wrapper
|
|
4
|
-
:class="`
|
|
5
|
-
group/embedded-doc
|
|
6
|
-
relative
|
|
7
|
-
after:pointer-events-none
|
|
8
|
-
after:content-['']
|
|
9
|
-
after:absolute after:inset-0
|
|
10
|
-
after:border after:border-neutral-500 after:rounded-sm
|
|
11
|
-
after:drop-shadow-xs
|
|
12
|
-
focus-within:after:border-accent-500
|
|
13
|
-
focus:after:border-accent-500
|
|
14
|
-
`"
|
|
15
|
-
tabindex="0"
|
|
16
|
-
v-bind="{
|
|
17
|
-
...node.attrs,
|
|
18
|
-
embedId: void 0,
|
|
19
|
-
embedDocId: node.attrs.embedId.docId,
|
|
20
|
-
embedBlockId: node.attrs.embedId.blockId
|
|
21
|
-
}"
|
|
22
|
-
@pointerdown="setEditorSelection"
|
|
23
|
-
>
|
|
24
|
-
<div
|
|
25
|
-
class="text-sm relative"
|
|
26
|
-
contenteditable="false"
|
|
27
|
-
>
|
|
28
|
-
<div
|
|
29
|
-
class="bg-neutral-100 dark:bg-neutral-900 flex p-1 gap-2 no-wrap justify-between align-center"
|
|
30
|
-
contenteditable="false"
|
|
31
|
-
>
|
|
32
|
-
<div
|
|
33
|
-
v-if="name"
|
|
34
|
-
class="pl-1"
|
|
35
|
-
>
|
|
36
|
-
File: {{ name }}
|
|
37
|
-
</div>
|
|
38
|
-
<div
|
|
39
|
-
v-else
|
|
40
|
-
class="pl-1 text-center w-full"
|
|
41
|
-
>
|
|
42
|
-
Blank Embed
|
|
43
|
-
</div>
|
|
44
|
-
<!-- @vue-expect-error -->
|
|
45
|
-
<WButton
|
|
46
|
-
v-if="editor?.isEditable"
|
|
47
|
-
title="Change embed link."
|
|
48
|
-
:border="true"
|
|
49
|
-
@click="showChangeEmbed = true"
|
|
50
|
-
>
|
|
51
|
-
<WIcon><i-fa-solid-link class="w-[0.7rem]"/></WIcon>
|
|
52
|
-
</WButton>
|
|
53
|
-
<!-- @vue-expect-error -->
|
|
54
|
-
<WPopup
|
|
55
|
-
:use-backdrop="true"
|
|
56
|
-
:preferred-horizontal="['center-screen']"
|
|
57
|
-
:preferred-vertical="['center-screen']"
|
|
58
|
-
class="backdrop:bg-neutral-900/50 backdrop:dark:bg-neutral-100/50"
|
|
59
|
-
v-model="showChangeEmbed"
|
|
60
|
-
>
|
|
61
|
-
<template #popup="{ extractEl }">
|
|
62
|
-
<EmbeddedDocumentPicker
|
|
63
|
-
:is-shown="showChangeEmbed"
|
|
64
|
-
:embed-id="embedId"
|
|
65
|
-
v-extract-root-el="extractEl"
|
|
66
|
-
@submit="pickEmbed"
|
|
67
|
-
@cancel="showChangeEmbed = false"
|
|
68
|
-
/>
|
|
69
|
-
</template>
|
|
70
|
-
>
|
|
71
|
-
</WPopup>
|
|
72
|
-
</div>
|
|
73
|
-
<Transition>
|
|
74
|
-
<div
|
|
75
|
-
v-if="showUndoWarning"
|
|
76
|
-
class="absolute inset-0 bg-red-100 dark:bg-red-900 text-red-600 dark:text-red-400 px-2"
|
|
77
|
-
contenteditable="false"
|
|
78
|
-
>
|
|
79
|
-
Warning: Undo applied to document part that is not visible/embedded.
|
|
80
|
-
</div>
|
|
81
|
-
</Transition>
|
|
82
|
-
</div>
|
|
83
|
-
|
|
84
|
-
<div v-if="!name"/>
|
|
85
|
-
<div
|
|
86
|
-
v-else-if="isEmbeddedTooDeep"
|
|
87
|
-
class="px-2 text-center"
|
|
88
|
-
contenteditable="false"
|
|
89
|
-
>
|
|
90
|
-
Cannot preview nested content deeper than one level.
|
|
91
|
-
</div>
|
|
92
|
-
<div
|
|
93
|
-
v-else-if="isRecursivelyEmbedded"
|
|
94
|
-
class="px-2 text-center"
|
|
95
|
-
contenteditable="false"
|
|
96
|
-
>
|
|
97
|
-
Cannot preview recursively embedded content.
|
|
98
|
-
</div>
|
|
99
|
-
|
|
100
|
-
<template
|
|
101
|
-
v-else-if="content"
|
|
102
|
-
>
|
|
103
|
-
<component
|
|
104
|
-
:is-embedded="true"
|
|
105
|
-
:content="content"
|
|
106
|
-
:editor-options="editorOptions"
|
|
107
|
-
:is="editorComponent"
|
|
108
|
-
ref="editorWrapper"
|
|
109
|
-
/>
|
|
110
|
-
</template>
|
|
111
|
-
<div
|
|
112
|
-
v-else
|
|
113
|
-
class="px-2 text-center"
|
|
114
|
-
>
|
|
115
|
-
{{ isLoading ? "Loading..." : "Could not find reference to wanted block." }}
|
|
116
|
-
</div>
|
|
117
|
-
</node-view-wrapper>
|
|
118
|
-
</template>
|
|
119
|
-
|
|
120
|
-
<script setup>
|
|
121
|
-
import { nodeViewProps, NodeViewWrapper } from "@tiptap/vue-3";
|
|
122
|
-
import WIcon from "@witchcraft/ui/components/Icon";
|
|
123
|
-
import WButton from "@witchcraft/ui/components/LibButton";
|
|
124
|
-
import WPopup from "@witchcraft/ui/components/LibPopup";
|
|
125
|
-
import { vExtractRootEl } from "@witchcraft/ui/directives/vExtractRootEl";
|
|
126
|
-
import { computed, inject, ref, watch } from "vue";
|
|
127
|
-
import EmbeddedDocumentPicker from "./EmbeddedDocumentPicker.vue";
|
|
128
|
-
import IFaSolidLink from "~icons/fa-solid/link";
|
|
129
|
-
import Editor from "../../../../components/Editor.vue";
|
|
130
|
-
import { useEmbeddedEditor } from "../composables/useEmbeddedEditor.js";
|
|
131
|
-
import { embeddedEditorComponentInjectionKey } from "../types.js";
|
|
132
|
-
const props = defineProps(nodeViewProps);
|
|
133
|
-
const editorComponent = inject(embeddedEditorComponentInjectionKey, Editor);
|
|
134
|
-
const editorWrapper = ref(null);
|
|
135
|
-
const innerEditor = computed(() => editorWrapper.value?.editor);
|
|
136
|
-
const embedId = computed(() => props.node.attrs.embedId);
|
|
137
|
-
const showChangeEmbed = ref(false);
|
|
138
|
-
function pickEmbed(newEmbedId) {
|
|
139
|
-
showChangeEmbed.value = false;
|
|
140
|
-
props.updateAttributes({ ...props.node.attrs, embedId: { ...newEmbedId } });
|
|
141
|
-
}
|
|
142
|
-
function setEditorSelection() {
|
|
143
|
-
const pos = props.getPos();
|
|
144
|
-
if (props.editor.state.selection.from !== pos && pos) {
|
|
145
|
-
props.editor?.commands.setNodeSelection(pos);
|
|
146
|
-
}
|
|
147
|
-
}
|
|
148
|
-
function autoFocusOnSelection() {
|
|
149
|
-
if (props.editor.state.selection.from === props.getPos() && document.activeElement !== innerEditor.value?.view.dom) {
|
|
150
|
-
innerEditor.value?.commands.focus();
|
|
151
|
-
}
|
|
152
|
-
}
|
|
153
|
-
watch([() => props.editor.state.selection.from, innerEditor], () => {
|
|
154
|
-
autoFocusOnSelection();
|
|
155
|
-
});
|
|
156
|
-
const {
|
|
157
|
-
content,
|
|
158
|
-
// api,
|
|
159
|
-
isEmbeddedTooDeep,
|
|
160
|
-
// isEmbeddedBlock,
|
|
161
|
-
isRecursivelyEmbedded,
|
|
162
|
-
showUndoWarning,
|
|
163
|
-
name,
|
|
164
|
-
isLoading,
|
|
165
|
-
editorOptions
|
|
166
|
-
} = useEmbeddedEditor(
|
|
167
|
-
embedId,
|
|
168
|
-
innerEditor,
|
|
169
|
-
props.editor,
|
|
170
|
-
props.getPos
|
|
171
|
-
);
|
|
172
|
-
</script>
|
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
2
|
-
editor: {
|
|
3
|
-
type: import("vue").PropType<import("@tiptap/core").NodeViewProps["editor"]>;
|
|
4
|
-
required: true;
|
|
5
|
-
};
|
|
6
|
-
node: {
|
|
7
|
-
type: import("vue").PropType<import("@tiptap/core").NodeViewProps["node"]>;
|
|
8
|
-
required: true;
|
|
9
|
-
};
|
|
10
|
-
decorations: {
|
|
11
|
-
type: import("vue").PropType<import("@tiptap/core").NodeViewProps["decorations"]>;
|
|
12
|
-
required: true;
|
|
13
|
-
};
|
|
14
|
-
selected: {
|
|
15
|
-
type: import("vue").PropType<import("@tiptap/core").NodeViewProps["selected"]>;
|
|
16
|
-
required: true;
|
|
17
|
-
};
|
|
18
|
-
extension: {
|
|
19
|
-
type: import("vue").PropType<import("@tiptap/core").NodeViewProps["extension"]>;
|
|
20
|
-
required: true;
|
|
21
|
-
};
|
|
22
|
-
getPos: {
|
|
23
|
-
type: import("vue").PropType<import("@tiptap/core").NodeViewProps["getPos"]>;
|
|
24
|
-
required: true;
|
|
25
|
-
};
|
|
26
|
-
updateAttributes: {
|
|
27
|
-
type: import("vue").PropType<import("@tiptap/core").NodeViewProps["updateAttributes"]>;
|
|
28
|
-
required: true;
|
|
29
|
-
};
|
|
30
|
-
deleteNode: {
|
|
31
|
-
type: import("vue").PropType<import("@tiptap/core").NodeViewProps["deleteNode"]>;
|
|
32
|
-
required: true;
|
|
33
|
-
};
|
|
34
|
-
view: {
|
|
35
|
-
type: import("vue").PropType<import("@tiptap/core").NodeViewProps["view"]>;
|
|
36
|
-
required: true;
|
|
37
|
-
};
|
|
38
|
-
innerDecorations: {
|
|
39
|
-
type: import("vue").PropType<import("@tiptap/core").NodeViewProps["innerDecorations"]>;
|
|
40
|
-
required: true;
|
|
41
|
-
};
|
|
42
|
-
HTMLAttributes: {
|
|
43
|
-
type: import("vue").PropType<import("@tiptap/core").NodeViewProps["HTMLAttributes"]>;
|
|
44
|
-
required: true;
|
|
45
|
-
};
|
|
46
|
-
}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
47
|
-
editor: {
|
|
48
|
-
type: import("vue").PropType<import("@tiptap/core").NodeViewProps["editor"]>;
|
|
49
|
-
required: true;
|
|
50
|
-
};
|
|
51
|
-
node: {
|
|
52
|
-
type: import("vue").PropType<import("@tiptap/core").NodeViewProps["node"]>;
|
|
53
|
-
required: true;
|
|
54
|
-
};
|
|
55
|
-
decorations: {
|
|
56
|
-
type: import("vue").PropType<import("@tiptap/core").NodeViewProps["decorations"]>;
|
|
57
|
-
required: true;
|
|
58
|
-
};
|
|
59
|
-
selected: {
|
|
60
|
-
type: import("vue").PropType<import("@tiptap/core").NodeViewProps["selected"]>;
|
|
61
|
-
required: true;
|
|
62
|
-
};
|
|
63
|
-
extension: {
|
|
64
|
-
type: import("vue").PropType<import("@tiptap/core").NodeViewProps["extension"]>;
|
|
65
|
-
required: true;
|
|
66
|
-
};
|
|
67
|
-
getPos: {
|
|
68
|
-
type: import("vue").PropType<import("@tiptap/core").NodeViewProps["getPos"]>;
|
|
69
|
-
required: true;
|
|
70
|
-
};
|
|
71
|
-
updateAttributes: {
|
|
72
|
-
type: import("vue").PropType<import("@tiptap/core").NodeViewProps["updateAttributes"]>;
|
|
73
|
-
required: true;
|
|
74
|
-
};
|
|
75
|
-
deleteNode: {
|
|
76
|
-
type: import("vue").PropType<import("@tiptap/core").NodeViewProps["deleteNode"]>;
|
|
77
|
-
required: true;
|
|
78
|
-
};
|
|
79
|
-
view: {
|
|
80
|
-
type: import("vue").PropType<import("@tiptap/core").NodeViewProps["view"]>;
|
|
81
|
-
required: true;
|
|
82
|
-
};
|
|
83
|
-
innerDecorations: {
|
|
84
|
-
type: import("vue").PropType<import("@tiptap/core").NodeViewProps["innerDecorations"]>;
|
|
85
|
-
required: true;
|
|
86
|
-
};
|
|
87
|
-
HTMLAttributes: {
|
|
88
|
-
type: import("vue").PropType<import("@tiptap/core").NodeViewProps["HTMLAttributes"]>;
|
|
89
|
-
required: true;
|
|
90
|
-
};
|
|
91
|
-
}>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
92
|
-
export default _default;
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import type { Content, Editor, EditorOptions } from "@tiptap/core";
|
|
2
|
-
import { type ComputedRef, type Ref, type ShallowRef } from "vue";
|
|
3
|
-
import { type DocumentApiInterface, type MaybeEmbedId } from "../../DocumentApi/types.js.js";
|
|
4
|
-
/** Sets up nearly everything for the embedded editor nodeview. */
|
|
5
|
-
export declare function useEmbeddedEditor(embedIdRef: ComputedRef<MaybeEmbedId> | Ref<MaybeEmbedId>, editor: ShallowRef<Editor | undefined>, rootEditor: Editor,
|
|
6
|
-
/** For forwarding commands the embedded editor can't handle. See {@link Embedded}. */
|
|
7
|
-
getPos: () => number | undefined, { undoTimeouts, selfSymbol, onUndoWarning, onUndoOk, alwaysLoad, injectIsEmbedded, injectIsDeepEmbedded }?: {
|
|
8
|
-
undoTimeouts?: [number, number];
|
|
9
|
-
onUndoWarning?: ((ref: Ref<boolean>) => void);
|
|
10
|
-
onUndoOk?: ((ref: Ref<boolean>) => void);
|
|
11
|
-
selfSymbol?: symbol;
|
|
12
|
-
/** By default, documents will not be loaded if they are embedded too deeply or recursively embedded. Passing true will ignore all checks and load them anyways. This also usually requires disabling the injections with the `injectIsEmbedded` and `injectIsDeepEmbedded` options. */
|
|
13
|
-
alwaysLoad?: boolean;
|
|
14
|
-
/** By default, the composable injects the `isEmbedded*InjectionKey`s. Passing false will not inject them. */
|
|
15
|
-
injectIsEmbedded?: boolean;
|
|
16
|
-
/** By default, the composable injects `isDeepEmbeddedInjectionKey` with true if it is false. Passing false will not inject it. */
|
|
17
|
-
injectIsDeepEmbedded?: boolean;
|
|
18
|
-
}): {
|
|
19
|
-
content: Ref<Content | null>;
|
|
20
|
-
api: DocumentApiInterface;
|
|
21
|
-
selfSymbol: symbol;
|
|
22
|
-
isEmbeddedTooDeep: boolean;
|
|
23
|
-
isEmbeddedBlock?: Ref<boolean>;
|
|
24
|
-
isRecursivelyEmbedded: ComputedRef<boolean>;
|
|
25
|
-
showUndoWarning: Ref<boolean>;
|
|
26
|
-
/** If name is undefined, the embed is a new embed without a document id. */
|
|
27
|
-
name: ComputedRef<string | undefined>;
|
|
28
|
-
isLoading: Ref<boolean>;
|
|
29
|
-
/** The root editor needs to provide it's options so we can pass them to the embedded editor. If we don't, extra extensions (e.g. BaseShortcuts) and options won't be registered on the embedded editor. See the `embeddedEditorOptionsInjectionKey` for why `autofocus` is ommitted. */
|
|
30
|
-
editorOptions: Partial<Omit<EditorOptions, "autofocus">>;
|
|
31
|
-
};
|
|
@@ -1,199 +0,0 @@
|
|
|
1
|
-
import { castType } from "@alanscodelog/utils/castType";
|
|
2
|
-
import { computed, inject, onBeforeUnmount, onMounted, provide, ref, watch } from "vue";
|
|
3
|
-
import { getDiffReplacementRange } from "../../../utils/getDiffReplacementRange.js";
|
|
4
|
-
import { documentApiInjectionKey } from "../../DocumentApi/types.js";
|
|
5
|
-
import { convertFullTransactionForPartialState } from "../../DocumentApi/utils/convertFullTransactionForPartialState.js";
|
|
6
|
-
import { getStateEmbedRange } from "../../DocumentApi/utils/getStateEmbedRange.js";
|
|
7
|
-
import { isEmbedId } from "../../DocumentApi/utils/isEmbedId.js";
|
|
8
|
-
import { Embedded } from "../Embedded.js";
|
|
9
|
-
import { embededEditorOptionsInjectionKey, isDeepEmbeddedInjectionKey, isEmbeddedBlockInjectionKey, isEmbeddedInjectionKey, parentEditorIdInjectionKey } from "../types.js";
|
|
10
|
-
function defaultOnUndoWarning(r, state, undoTimeouts = [50, 2e3]) {
|
|
11
|
-
clearTimeout(state.smallTimeout);
|
|
12
|
-
clearTimeout(state.timeout);
|
|
13
|
-
r.value = false;
|
|
14
|
-
if (state.justWarned) {
|
|
15
|
-
r.value = true;
|
|
16
|
-
}
|
|
17
|
-
state.justWarned = true;
|
|
18
|
-
state.smallTimeout = setTimeout(() => {
|
|
19
|
-
state.justWarned = false;
|
|
20
|
-
r.value = true;
|
|
21
|
-
clearTimeout(state.timeout);
|
|
22
|
-
state.timeout = setTimeout(() => {
|
|
23
|
-
r.value = false;
|
|
24
|
-
}, undoTimeouts[1]);
|
|
25
|
-
}, undoTimeouts[0]);
|
|
26
|
-
}
|
|
27
|
-
function defaultOnUndoOk(r, state) {
|
|
28
|
-
clearTimeout(state.smallTimeout);
|
|
29
|
-
clearTimeout(state.timeout);
|
|
30
|
-
r.value = false;
|
|
31
|
-
}
|
|
32
|
-
export function useEmbeddedEditor(embedIdRef, editor, rootEditor, getPos, {
|
|
33
|
-
undoTimeouts = [50, 2e3],
|
|
34
|
-
selfSymbol = Symbol(`embedded-editor`),
|
|
35
|
-
onUndoWarning,
|
|
36
|
-
onUndoOk,
|
|
37
|
-
alwaysLoad = false,
|
|
38
|
-
injectIsEmbedded = true,
|
|
39
|
-
injectIsDeepEmbedded = true
|
|
40
|
-
} = {}) {
|
|
41
|
-
const showUndoWarning = ref(false);
|
|
42
|
-
const content = ref(null);
|
|
43
|
-
const api = inject(documentApiInjectionKey);
|
|
44
|
-
if (!api) {
|
|
45
|
-
throw new Error("No embed api provided.");
|
|
46
|
-
}
|
|
47
|
-
const editorOptions = inject(embededEditorOptionsInjectionKey);
|
|
48
|
-
if (!editorOptions) {
|
|
49
|
-
throw new Error("No editor options provided.");
|
|
50
|
-
}
|
|
51
|
-
editorOptions.extensions = [
|
|
52
|
-
...(editorOptions.extensions ?? []).filter((ext) => ext.name !== Embedded.name),
|
|
53
|
-
Embedded.configure({
|
|
54
|
-
rootEditor,
|
|
55
|
-
getPos,
|
|
56
|
-
getEmbedId: () => embedIdRef.value
|
|
57
|
-
})
|
|
58
|
-
];
|
|
59
|
-
const isEmbeddedTooDeep = inject(isDeepEmbeddedInjectionKey, false);
|
|
60
|
-
if (injectIsDeepEmbedded && !isEmbeddedTooDeep) {
|
|
61
|
-
provide(isDeepEmbeddedInjectionKey, true);
|
|
62
|
-
}
|
|
63
|
-
const isEmbeddedBlock = computed(() => !!embedIdRef.value.blockId);
|
|
64
|
-
if (injectIsEmbedded) {
|
|
65
|
-
provide(isEmbeddedInjectionKey, true);
|
|
66
|
-
provide(isEmbeddedBlockInjectionKey, isEmbeddedBlock);
|
|
67
|
-
}
|
|
68
|
-
const parentId = inject(parentEditorIdInjectionKey, void 0);
|
|
69
|
-
const isRecursivelyEmbedded = computed(() => parentId?.value === embedIdRef.value.docId);
|
|
70
|
-
const isLoading = ref(false);
|
|
71
|
-
const name = computed(() => isEmbedId(embedIdRef.value) ? api.getEmbedTitle(embedIdRef.value) : void 0);
|
|
72
|
-
const warningState = {
|
|
73
|
-
smallTimeout: void 0,
|
|
74
|
-
timeout: void 0,
|
|
75
|
-
justWarned: false
|
|
76
|
-
};
|
|
77
|
-
function forwardDispatchToFullState(tr) {
|
|
78
|
-
castType(embedIdRef.value);
|
|
79
|
-
const stateBefore = api.getFromCache(embedIdRef.value);
|
|
80
|
-
if (!stateBefore) {
|
|
81
|
-
throw new Error("Expected stateBefore to exist.");
|
|
82
|
-
}
|
|
83
|
-
if (!tr) return;
|
|
84
|
-
const diff = getDiffReplacementRange(stateBefore.doc, tr.doc);
|
|
85
|
-
const { start, end } = getStateEmbedRange(tr.doc, embedIdRef.value);
|
|
86
|
-
if (diff && end !== void 0 && start !== void 0 && (diff.start < start || diff.end > end)) {
|
|
87
|
-
onUndoWarning ? onUndoWarning(showUndoWarning) : defaultOnUndoWarning(showUndoWarning, warningState, undoTimeouts);
|
|
88
|
-
} else {
|
|
89
|
-
onUndoOk ? onUndoOk(showUndoWarning) : defaultOnUndoOk(showUndoWarning, warningState);
|
|
90
|
-
}
|
|
91
|
-
tr.setMeta("no-step-convert", true);
|
|
92
|
-
tr.setMeta("no-schema-convert", true);
|
|
93
|
-
if (!embedIdRef.value.blockId) {
|
|
94
|
-
tr.setMeta("no-step-convert", true);
|
|
95
|
-
}
|
|
96
|
-
api.updateDocument?.(
|
|
97
|
-
embedIdRef.value,
|
|
98
|
-
tr,
|
|
99
|
-
void 0
|
|
100
|
-
);
|
|
101
|
-
}
|
|
102
|
-
function onTransaction({ transaction }) {
|
|
103
|
-
castType(embedIdRef.value);
|
|
104
|
-
if (!transaction.docChanged || transaction.getMeta("ignore")) {
|
|
105
|
-
return;
|
|
106
|
-
}
|
|
107
|
-
if (!embedIdRef.value.blockId) {
|
|
108
|
-
transaction.setMeta("no-step-convert", true);
|
|
109
|
-
}
|
|
110
|
-
api.updateDocument?.(
|
|
111
|
-
embedIdRef.value,
|
|
112
|
-
transaction,
|
|
113
|
-
selfSymbol
|
|
114
|
-
);
|
|
115
|
-
}
|
|
116
|
-
const onUpdateDocument = (incomingEmbedId, tr, _stateBefore, _incomingState, incomingSelfSymbol) => {
|
|
117
|
-
castType(embedIdRef.value);
|
|
118
|
-
if (incomingSelfSymbol === selfSymbol || embedIdRef.value.docId !== incomingEmbedId.docId || !tr.docChanged || tr.getMeta("ignore")) {
|
|
119
|
-
return;
|
|
120
|
-
}
|
|
121
|
-
if (content.value) {
|
|
122
|
-
const convertedTr = convertFullTransactionForPartialState(
|
|
123
|
-
editor.value.state,
|
|
124
|
-
tr,
|
|
125
|
-
embedIdRef.value
|
|
126
|
-
);
|
|
127
|
-
if (convertedTr) {
|
|
128
|
-
if (!convertedTr.before.eq(editor.value.state.doc)) {
|
|
129
|
-
return;
|
|
130
|
-
}
|
|
131
|
-
editor.value.view.dispatch(convertedTr);
|
|
132
|
-
} else {
|
|
133
|
-
unloadDocument(embedIdRef.value, { partial: true });
|
|
134
|
-
}
|
|
135
|
-
} else {
|
|
136
|
-
void loadDocument(embedIdRef.value, { partial: true });
|
|
137
|
-
}
|
|
138
|
-
};
|
|
139
|
-
let attached = false;
|
|
140
|
-
async function loadDocument(embedId, { partial = false } = {}) {
|
|
141
|
-
if (!isEmbedId(embedId)) return;
|
|
142
|
-
if (!alwaysLoad && (isRecursivelyEmbedded.value || isEmbeddedTooDeep)) return;
|
|
143
|
-
if (!partial) {
|
|
144
|
-
isLoading.value = true;
|
|
145
|
-
await api.load(embedId);
|
|
146
|
-
}
|
|
147
|
-
const res = api.getEmbeddedContent?.(embedId);
|
|
148
|
-
if (!res) return;
|
|
149
|
-
if (!partial) {
|
|
150
|
-
api.addEventListener?.("update", onUpdateDocument);
|
|
151
|
-
}
|
|
152
|
-
content.value = res;
|
|
153
|
-
watch(editor, () => {
|
|
154
|
-
editor.value.commands.setHistoryRedirect(
|
|
155
|
-
() => api.getFromCache(embedId),
|
|
156
|
-
forwardDispatchToFullState
|
|
157
|
-
);
|
|
158
|
-
editor.value?.on("transaction", onTransaction);
|
|
159
|
-
isLoading.value = false;
|
|
160
|
-
attached = true;
|
|
161
|
-
}, { once: true });
|
|
162
|
-
}
|
|
163
|
-
function unloadDocument(embedId, { partial = false } = {}) {
|
|
164
|
-
if (!isEmbedId(embedId)) return;
|
|
165
|
-
if (!alwaysLoad && (isRecursivelyEmbedded.value || isEmbeddedTooDeep)) return;
|
|
166
|
-
editor.value?.off("transaction", onTransaction);
|
|
167
|
-
if (!partial && attached) {
|
|
168
|
-
api.removeEventListener?.("update", onUpdateDocument);
|
|
169
|
-
api.unload(embedId);
|
|
170
|
-
attached = false;
|
|
171
|
-
}
|
|
172
|
-
editor.value?.commands.setHistoryRedirect(void 0, void 0);
|
|
173
|
-
content.value = null;
|
|
174
|
-
}
|
|
175
|
-
watch(embedIdRef, (newVal, oldVal) => {
|
|
176
|
-
if (newVal.docId !== oldVal.docId || newVal.blockId !== oldVal.blockId) {
|
|
177
|
-
unloadDocument(oldVal);
|
|
178
|
-
void loadDocument(newVal);
|
|
179
|
-
}
|
|
180
|
-
});
|
|
181
|
-
onMounted(async () => {
|
|
182
|
-
await loadDocument(embedIdRef.value);
|
|
183
|
-
});
|
|
184
|
-
onBeforeUnmount(() => {
|
|
185
|
-
unloadDocument(embedIdRef.value);
|
|
186
|
-
});
|
|
187
|
-
return {
|
|
188
|
-
content,
|
|
189
|
-
api,
|
|
190
|
-
selfSymbol,
|
|
191
|
-
isEmbeddedTooDeep,
|
|
192
|
-
isEmbeddedBlock,
|
|
193
|
-
isRecursivelyEmbedded,
|
|
194
|
-
showUndoWarning,
|
|
195
|
-
name,
|
|
196
|
-
isLoading,
|
|
197
|
-
editorOptions
|
|
198
|
-
};
|
|
199
|
-
}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import type { Dispatch, Editor, EditorOptions } from "@tiptap/core";
|
|
2
|
-
import type { ComputedRef, InjectionKey, Ref } from "vue";
|
|
3
|
-
import type { MaybeEmbedId } from "../DocumentApi/types.js.js";
|
|
4
|
-
export interface EmbeddedDocumentNodeOptions extends WithOnTriggerByEmbeddedBlockOptions {
|
|
5
|
-
rootEditor: Editor;
|
|
6
|
-
/** Provided by the embedded node view. */
|
|
7
|
-
getPos: () => number | undefined;
|
|
8
|
-
getEmbedId: () => MaybeEmbedId;
|
|
9
|
-
}
|
|
10
|
-
/** Tells the editor and embedded doc view whether it's deeply embedded (more than one level) or not. */
|
|
11
|
-
export declare const isDeepEmbeddedInjectionKey: InjectionKey<boolean>;
|
|
12
|
-
/** Tells the editor and embedded doc view whether it's embedded or not. */
|
|
13
|
-
export declare const isEmbeddedInjectionKey: InjectionKey<boolean>;
|
|
14
|
-
export declare const isEmbeddedBlockInjectionKey: InjectionKey<ComputedRef<boolean> | Ref<boolean>>;
|
|
15
|
-
/** Injects the editor component to use for embedded editors. */
|
|
16
|
-
export declare const embeddedEditorComponentInjectionKey: InjectionKey<new (...args: any) => {
|
|
17
|
-
editor?: Editor;
|
|
18
|
-
}>;
|
|
19
|
-
/** Injects the parent editor id so the embedded editor can know who is embedding it (to track recursive/disallowed embeds). */
|
|
20
|
-
export declare const parentEditorIdInjectionKey: InjectionKey<Ref<string | undefined>>;
|
|
21
|
-
/**
|
|
22
|
-
* Injects the editor options so the embedded editor can use the same ones as it's parent.
|
|
23
|
-
*
|
|
24
|
-
* Note that autofocus is always disabled for embedded editors, hence it's omission.
|
|
25
|
-
*/
|
|
26
|
-
export declare const embededEditorOptionsInjectionKey: InjectionKey<Partial<Omit<EditorOptions, "autofocus">>>;
|
|
27
|
-
export type WithOnTriggerByEmbeddedBlockOptions = {
|
|
28
|
-
/**
|
|
29
|
-
* When the editor is embedded and it's embedding a single block, certain commands are nullified and just return true and do nothing because they would break the embedding (e.g. enter, split, indent, etc).
|
|
30
|
-
*
|
|
31
|
-
* All such commands forward to the `embeddedCommandRedirect` command if it's available (otherwise a warning is logged). The `Embedded` extension takes care of registering this redirect and can redirect some of the commands to the root editor, but not all of them.
|
|
32
|
-
*
|
|
33
|
-
* You can use this function to handle the redirection yourself. You will get passed both editor instances (root and embedded) to facilitate communication. If you can handle the command, you should return a boolean as with a regular command. Otherwise you can return undefined to let the default handler take care of it.
|
|
34
|
-
*
|
|
35
|
-
* Note that if the change moves the node, the component will get remounted and the embedded editor will no longer exist (to, for example, focus it).
|
|
36
|
-
*
|
|
37
|
-
* The included EmbeddedNodeView takes care of auto-focusing when the selection matches it's position. So as a workaround for focus at least, you can use `tr.setNodeSelection(nodePos + offset)`. Note the use of `offset`. The node's position will have probably changed depending on the command so you will need to know how much to offset it or have some way to find it's position again. While the embedId is provided, it's not guaranteed there is only one node embedding that id, there might be multiple. A better way is to first find the parent embedding item id before executing your command, note the `blockId`, then use it to find the node again.
|
|
38
|
-
*
|
|
39
|
-
* See {@link redirectFromEmbedded} for creating redirectable commands.
|
|
40
|
-
*/
|
|
41
|
-
embeddedBlockCommandRedirect?: (commandName: string, args: any, context: {
|
|
42
|
-
editor: Editor;
|
|
43
|
-
rootEditor: Editor;
|
|
44
|
-
nodePos: number | undefined;
|
|
45
|
-
embedId: MaybeEmbedId;
|
|
46
|
-
dispatch: Dispatch;
|
|
47
|
-
}) => boolean | undefined;
|
|
48
|
-
};
|
|
49
|
-
export type OnTriggerByEmbeddedBlock = WithOnTriggerByEmbeddedBlockOptions["embeddedBlockCommandRedirect"];
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
export const isDeepEmbeddedInjectionKey = Symbol("isEmbeddedInjectionKey");
|
|
2
|
-
export const isEmbeddedInjectionKey = Symbol("isEmbeddedInjectionKey");
|
|
3
|
-
export const isEmbeddedBlockInjectionKey = Symbol("isEmbeddedBlockInjectionKey");
|
|
4
|
-
export const embeddedEditorComponentInjectionKey = Symbol("embeddedEditorComponentInjectionKey");
|
|
5
|
-
export const parentEditorIdInjectionKey = Symbol("parentEditorIdInjectionKey");
|
|
6
|
-
export const embededEditorOptionsInjectionKey = Symbol("embededEditorOptionsInjectionKey");
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import type { EditorView } from "@tiptap/pm/view";
|
|
2
|
-
/**
|
|
3
|
-
* Returns whether the current view is a block embed embedded in another view.
|
|
4
|
-
*
|
|
5
|
-
* This is done by checking if the immediate parent has the class `editor-is-embedded-block` which the editor component adds when it receives the {@link isEmbeddedBlockInjectionKey} injection key.
|
|
6
|
-
*
|
|
7
|
-
* We cannot do this via state since a document can be both embedded and not embedded at the same time.
|
|
8
|
-
*/
|
|
9
|
-
export declare function isEmbeddedBlock(view: EditorView): boolean;
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import type { SingleCommands } from "@tiptap/core";
|
|
2
|
-
import type { EditorView } from "@tiptap/pm/view";
|
|
3
|
-
/**
|
|
4
|
-
* Commands that can split a block or modify it's position (indent/unindent) should not be called when the editor is in embedded block mode.
|
|
5
|
-
*
|
|
6
|
-
* This takes care of redirecting the command if possible (see {@link WithOnTriggerByEmbeddedBlockOptions.onTriggerByEmbeddedBlock}), otherwise it logs a warning.
|
|
7
|
-
*
|
|
8
|
-
* If the command should not be called at all and offers no redirect, don't pass the redirect parameter and it will log a different warning.
|
|
9
|
-
*
|
|
10
|
-
* You can use it in a command like this:
|
|
11
|
-
*
|
|
12
|
-
* ```ts
|
|
13
|
-
* commandName: (arg:any) => ({ commands, view, dispatch }) => {
|
|
14
|
-
* const redirect = isEmbeddedBlock(view, "commandName", { args:[arg], view, commands, dispatch }))
|
|
15
|
-
* if (redirect.redirected) { return redirect.result }
|
|
16
|
-
* }
|
|
17
|
-
* ```
|
|
18
|
-
*/
|
|
19
|
-
export declare function redirectFromEmbedded(view: EditorView, name: string, redirect?: {
|
|
20
|
-
args: any[];
|
|
21
|
-
view: EditorView;
|
|
22
|
-
commands: SingleCommands;
|
|
23
|
-
}): {
|
|
24
|
-
redirected: true;
|
|
25
|
-
result: any;
|
|
26
|
-
} | {
|
|
27
|
-
redirected: false;
|
|
28
|
-
};
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { isEmbeddedBlock } from "./isEmbeddedBlock.js";
|
|
2
|
-
export function redirectFromEmbedded(view, name, redirect) {
|
|
3
|
-
if (isEmbeddedBlock(view)) {
|
|
4
|
-
if (redirect && "embeddedCommandRedirect" in redirect.commands) {
|
|
5
|
-
const result = redirect.commands.embeddedCommandRedirect(
|
|
6
|
-
name,
|
|
7
|
-
redirect.args
|
|
8
|
-
);
|
|
9
|
-
return { redirected: true, result };
|
|
10
|
-
}
|
|
11
|
-
console.warn(
|
|
12
|
-
redirect ? `Command ${name} called from an embedded editor. This command supports command redirection, but no "embeddedCommandRedirect" command found. Command ignored (returning true to prevent further action).` : `Command ${name} should not be called from an embedded editor. Command ignored (returning true to prevent further action).`
|
|
13
|
-
);
|
|
14
|
-
return { redirected: true, result: true };
|
|
15
|
-
}
|
|
16
|
-
return { redirected: false };
|
|
17
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { Node } from "@tiptap/core";
|
|
2
|
-
import type { FileLoaderExtensionOptions } from "./types.js.js";
|
|
3
|
-
/**
|
|
4
|
-
* Provides a way to asynchronously load files into the editor and a node to display while they are loading.
|
|
5
|
-
*
|
|
6
|
-
* An {@link IFileLoaderHandler} interface should be passed to describe what to do with the file at each step. There is a default implementation at {@link FileLoaderHandler} that tries to handler as much as possible. See it for details.
|
|
7
|
-
*
|
|
8
|
-
* It also automatically removes fileLoader nodes when the document is loaded. You can disable this with the `cleanupOnLoad` option.
|
|
9
|
-
*
|
|
10
|
-
* To force the plugin to cleanup after the first load you can do `tr.setMeta("cleanFileLoaders")`.
|
|
11
|
-
*
|
|
12
|
-
* A basic node view that can preview images is provided but not configured.
|
|
13
|
-
*
|
|
14
|
-
*/
|
|
15
|
-
export declare const FileLoader: Node<FileLoaderExtensionOptions, any>;
|
|
16
|
-
export type NodeFileLoaderName = "fileLoader";
|