@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,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,28 +0,0 @@
|
|
|
1
|
-
import type { Editor, Editor as PmEditor } from "@tiptap/core";
|
|
2
|
-
import type { createLowlight } from "lowlight";
|
|
3
|
-
import { type Ref, type ShallowRef } from "vue";
|
|
4
|
-
import { type HighlightJsLanguageInfo } from "../highlightJsInfo.js.js";
|
|
5
|
-
/**
|
|
6
|
-
* Listens for transactions and scans the document, dynamically loading the used highlight.js language themes.
|
|
7
|
-
*
|
|
8
|
-
* Automatically provides them using {@link langsInfoInjectionKey}.
|
|
9
|
-
*
|
|
10
|
-
* Allows passing additional themes via the additionalThemes prop.
|
|
11
|
-
*
|
|
12
|
-
* You should not need to use them directly, but returns the functions used to load, lazy load, and query the editor, and also the provided langsInfo.
|
|
13
|
-
*
|
|
14
|
-
*/
|
|
15
|
-
export declare function useAsyncCodeBlockHighlighting({ lowlightInstance, editor: editorRef, onError, debug }: {
|
|
16
|
-
lowlightInstance: ReturnType<typeof createLowlight>;
|
|
17
|
-
editor: ShallowRef<Editor | undefined>;
|
|
18
|
-
onError?: ((e: any) => void);
|
|
19
|
-
debug?: boolean;
|
|
20
|
-
}): {
|
|
21
|
-
loadLang: (lang: string) => Promise<string | Error>;
|
|
22
|
-
lazyLoadCodeBlockLangs: ({ editor }: {
|
|
23
|
-
editor: PmEditor;
|
|
24
|
-
}) => Promise<void>;
|
|
25
|
-
getLangListFromEditor: (editor: PmEditor) => string[];
|
|
26
|
-
/** All importable highlight.js languages. */
|
|
27
|
-
langsInfo: Ref<HighlightJsLanguageInfo>;
|
|
28
|
-
};
|
|
@@ -1,137 +0,0 @@
|
|
|
1
|
-
import { keys } from "@alanscodelog/utils/keys";
|
|
2
|
-
import { pushIfNotIn } from "@alanscodelog/utils/pushIfNotIn";
|
|
3
|
-
import { provide, ref, watch } from "vue";
|
|
4
|
-
import { highlightJsLanaguages } from "../highlightJsInfo.js";
|
|
5
|
-
import { langsInfoInjectionKey } from "../types.js";
|
|
6
|
-
let langModulesDirectory = "../../../../../../../../highlight.js/es/languages";
|
|
7
|
-
let langModules = import.meta.glob("../../../../../../../../highlight.js/es/languages/*.js", { import: "default" });
|
|
8
|
-
const fallback = import.meta.glob("../../../../../../node_modules/highlight.js/es/languages/*.js", { import: "default" });
|
|
9
|
-
if (keys(langModules).length === 0 && keys(fallback).length !== 0) {
|
|
10
|
-
langModules = fallback;
|
|
11
|
-
langModulesDirectory = "../../../../../../node_modules/highlight.js/es/languages";
|
|
12
|
-
console.warn("Using fallback highlight.js languages locations. This should not be happening unless developing the library locally from it's playground using the linked module.");
|
|
13
|
-
}
|
|
14
|
-
if (keys(langModules).length === 0) {
|
|
15
|
-
console.warn("Could not find any highlight.js languages. This is probably an issue with the editor package. Please report it.");
|
|
16
|
-
}
|
|
17
|
-
function defaultOnError(e) {
|
|
18
|
-
console.log(e);
|
|
19
|
-
}
|
|
20
|
-
export function useAsyncCodeBlockHighlighting({
|
|
21
|
-
lowlightInstance,
|
|
22
|
-
editor: editorRef,
|
|
23
|
-
onError = defaultOnError,
|
|
24
|
-
debug = false
|
|
25
|
-
}) {
|
|
26
|
-
const allLangs = ref(highlightJsLanaguages);
|
|
27
|
-
if (debug) {
|
|
28
|
-
console.log({ langModulesDirectory, langModules, allLangs });
|
|
29
|
-
}
|
|
30
|
-
provide(langsInfoInjectionKey, allLangs);
|
|
31
|
-
async function loadLang(lang) {
|
|
32
|
-
if (lowlightInstance.registered(lang)) {
|
|
33
|
-
if (debug) {
|
|
34
|
-
console.log(`Already registered: ${lang}`);
|
|
35
|
-
}
|
|
36
|
-
const error = new Error(`Already registered: ${lang}`);
|
|
37
|
-
error.code = "ALREADY_REGISTERED";
|
|
38
|
-
return error;
|
|
39
|
-
}
|
|
40
|
-
if (allLangs.value.aliases[lang] === void 0) {
|
|
41
|
-
if (debug) {
|
|
42
|
-
console.error(`Unknown language or alias: ${lang}`);
|
|
43
|
-
}
|
|
44
|
-
return new Error(`Unknown language or alias: ${lang}`);
|
|
45
|
-
}
|
|
46
|
-
const fullName = allLangs.value.aliases[lang];
|
|
47
|
-
const langLoadingKey = `${langModulesDirectory}/${fullName}.js`;
|
|
48
|
-
const func = langModules[langLoadingKey];
|
|
49
|
-
if (func === void 0) {
|
|
50
|
-
return new Error(`Could not find language: ${langLoadingKey} in ${langModulesDirectory}. Valid paths are:
|
|
51
|
-
${keys(langModules).join(",\n")}`);
|
|
52
|
-
}
|
|
53
|
-
const hljs = await func();
|
|
54
|
-
lowlightInstance.register(lang, hljs);
|
|
55
|
-
return lang;
|
|
56
|
-
}
|
|
57
|
-
function getLangListFromEditor(editor) {
|
|
58
|
-
const langs = [];
|
|
59
|
-
const doc = editor.state.doc;
|
|
60
|
-
editor.state.doc.nodesBetween(0, doc.nodeSize - 2, (node, pos) => {
|
|
61
|
-
if (node.type?.name === "codeBlock") {
|
|
62
|
-
const lang = node.attrs?.language;
|
|
63
|
-
const loading = node.attrs.loading;
|
|
64
|
-
if (debug) {
|
|
65
|
-
console.log(`Looked at node at pos ${pos} (lang: ${lang}, loading: ${loading}).`);
|
|
66
|
-
}
|
|
67
|
-
if (lang && loading) {
|
|
68
|
-
if (debug) {
|
|
69
|
-
console.log(`Found node at pos ${pos}.`);
|
|
70
|
-
}
|
|
71
|
-
pushIfNotIn(langs, [lang]);
|
|
72
|
-
}
|
|
73
|
-
return false;
|
|
74
|
-
}
|
|
75
|
-
return true;
|
|
76
|
-
});
|
|
77
|
-
return langs;
|
|
78
|
-
}
|
|
79
|
-
async function lazyLoadCodeBlocks({ editor, transaction }) {
|
|
80
|
-
if (debug) {
|
|
81
|
-
console.log(`lazyLoadCodeBlocks called, docChanged: ${transaction?.docChanged}.`);
|
|
82
|
-
}
|
|
83
|
-
if (!transaction?.docChanged) return;
|
|
84
|
-
const tr = editor.state.tr;
|
|
85
|
-
const langs = getLangListFromEditor(editor);
|
|
86
|
-
const loadableLangs = (await Promise.allSettled(langs.map(loadLang))).filter((_) => {
|
|
87
|
-
if (_.status === "rejected") {
|
|
88
|
-
onError(_.reason);
|
|
89
|
-
}
|
|
90
|
-
return _.status === "fulfilled" && !(_.value instanceof Error);
|
|
91
|
-
}).map((_) => _.value);
|
|
92
|
-
if (debug) {
|
|
93
|
-
console.log(`Found ${loadableLangs.length} loadable languages.
|
|
94
|
-
${loadableLangs.join("\n ")}`);
|
|
95
|
-
}
|
|
96
|
-
editor.state.doc.nodesBetween(0, editor.state.doc.resolve(0).end(), (node, pos) => {
|
|
97
|
-
if (node.type?.name === "codeBlock") {
|
|
98
|
-
const langAttr = node.attrs?.language;
|
|
99
|
-
const loading = node.attrs.loading;
|
|
100
|
-
if (langAttr && loading && loadableLangs.includes(langAttr)) {
|
|
101
|
-
if (debug) {
|
|
102
|
-
console.log(`Set node at pos ${pos} as loaded.`);
|
|
103
|
-
}
|
|
104
|
-
tr.setNodeMarkup(pos, void 0, {
|
|
105
|
-
...node.attrs,
|
|
106
|
-
language: langAttr,
|
|
107
|
-
loading: false
|
|
108
|
-
});
|
|
109
|
-
}
|
|
110
|
-
return false;
|
|
111
|
-
}
|
|
112
|
-
return true;
|
|
113
|
-
});
|
|
114
|
-
if (debug) {
|
|
115
|
-
console.log(`tr.docChanged: ${tr.docChanged}.`);
|
|
116
|
-
}
|
|
117
|
-
if (tr.docChanged) {
|
|
118
|
-
editor.view.dispatch(tr);
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
watch(editorRef, () => {
|
|
122
|
-
if (editorRef.value) {
|
|
123
|
-
editorRef.value.on("transaction", lazyLoadCodeBlocks);
|
|
124
|
-
} else {
|
|
125
|
-
editorRef.value.off("transaction", lazyLoadCodeBlocks);
|
|
126
|
-
}
|
|
127
|
-
});
|
|
128
|
-
if (editorRef.value) {
|
|
129
|
-
editorRef.value.on("transaction", lazyLoadCodeBlocks);
|
|
130
|
-
}
|
|
131
|
-
return {
|
|
132
|
-
loadLang,
|
|
133
|
-
lazyLoadCodeBlockLangs: lazyLoadCodeBlocks,
|
|
134
|
-
getLangListFromEditor,
|
|
135
|
-
langsInfo: allLangs
|
|
136
|
-
};
|
|
137
|
-
}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { type Ref } from "vue";
|
|
2
|
-
/**
|
|
3
|
-
* Dynamically loads and creates the css for a given theme.
|
|
4
|
-
*
|
|
5
|
-
* It's result, themeCss should be added as a head tag (e.g. using useHead or teleporting a `<component :is="'style'">` to the head).
|
|
6
|
-
*
|
|
7
|
-
* By default it's an array of one item so you can more easily pass it to {@link unhead https://unhead.unjs.io/}'s useHead.
|
|
8
|
-
*
|
|
9
|
-
* By default, it will only apply the theme to the code blocks in the prosemirror editor. This is done via css nesting so might not work in older browsers.
|
|
10
|
-
*
|
|
11
|
-
* While additionalThemes can be provided, it is dangerous to inject them from user input.
|
|
12
|
-
*
|
|
13
|
-
* Instead, you can create a theme that only uses css variables, then allow the user to customize the css variables instead.
|
|
14
|
-
*
|
|
15
|
-
* Dark theme detection is just done by checking if the theme name contains "dark".
|
|
16
|
-
*
|
|
17
|
-
* You can provide different background colors for dark and light themes by providing a `darkLightBgs` and it will automatically apply them.
|
|
18
|
-
*/
|
|
19
|
-
export declare function useHighlightJsTheme({ defaultTheme, darkLightBgs, additionalThemes, classes, debug }?: {
|
|
20
|
-
defaultTheme?: string;
|
|
21
|
-
darkLightBgs?: Ref<{
|
|
22
|
-
dark: string;
|
|
23
|
-
light: string;
|
|
24
|
-
}>;
|
|
25
|
-
/** Additional class to wrap the loaded css in. */
|
|
26
|
-
classes?: string;
|
|
27
|
-
additionalThemes?: Ref<Record<string, string>>;
|
|
28
|
-
debug?: boolean;
|
|
29
|
-
}): {
|
|
30
|
-
theme: Ref<string, string>;
|
|
31
|
-
knownThemes: Ref<string[], string[]>;
|
|
32
|
-
loadTheme: (themeName: string) => Promise<undefined | Error>;
|
|
33
|
-
isDark: import("@vue/reactivity").ComputedRef<boolean>;
|
|
34
|
-
backgroundColor: import("@vue/reactivity").ComputedRef<string>;
|
|
35
|
-
themeCss: import("@vue/reactivity").ComputedRef<string[]>;
|
|
36
|
-
rawThemeCss: Ref<string, string>;
|
|
37
|
-
};
|
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
import { crop } from "@alanscodelog/utils/crop";
|
|
2
|
-
import { dedupe } from "@alanscodelog/utils/dedupe";
|
|
3
|
-
import { indent } from "@alanscodelog/utils/indent";
|
|
4
|
-
import { isWhitespace } from "@alanscodelog/utils/isWhitespace";
|
|
5
|
-
import { keys } from "@alanscodelog/utils/keys";
|
|
6
|
-
import { computed, ref, watch } from "vue";
|
|
7
|
-
let themeModulePath = "../../../../../../../../highlight.js/styles/";
|
|
8
|
-
let themeModules = import.meta.glob("../../../../../../../../highlight.js/styles/*.css", {
|
|
9
|
-
query: "?raw",
|
|
10
|
-
import: "default"
|
|
11
|
-
});
|
|
12
|
-
const fallback = import.meta.glob("../../../../../../node_modules/highlight.js/styles/*.css", {
|
|
13
|
-
query: "?raw",
|
|
14
|
-
import: "default"
|
|
15
|
-
});
|
|
16
|
-
if (keys(themeModules).length === 0 && keys(fallback).length !== 0) {
|
|
17
|
-
themeModules = fallback;
|
|
18
|
-
themeModulePath = "../../../../../../node_modules/highlight.js/styles/";
|
|
19
|
-
console.warn("Using fallback highlight.js themes locations. This should not be happening unless developing the library locally from it's playground using the linked module.");
|
|
20
|
-
}
|
|
21
|
-
if (keys(themeModules).length === 0) {
|
|
22
|
-
console.warn("Could not find any highlight.js themes. This is probably an issue with the editor package. Please report it.");
|
|
23
|
-
}
|
|
24
|
-
const themeModuleNames = dedupe(keys(themeModules).map((k) => {
|
|
25
|
-
const end = k.endsWith(".min.css") ? ".min.css" : ".css";
|
|
26
|
-
return k.slice(`${themeModulePath}`.length, end.length * -1);
|
|
27
|
-
}));
|
|
28
|
-
export function useHighlightJsTheme({
|
|
29
|
-
defaultTheme = "github-dark",
|
|
30
|
-
darkLightBgs,
|
|
31
|
-
additionalThemes,
|
|
32
|
-
classes = ".ProseMirror",
|
|
33
|
-
debug = false
|
|
34
|
-
} = {}) {
|
|
35
|
-
if (debug) {
|
|
36
|
-
console.log({ themeModules, themeModuleNames });
|
|
37
|
-
}
|
|
38
|
-
const theme = ref(defaultTheme);
|
|
39
|
-
const knownThemes = ref(themeModuleNames);
|
|
40
|
-
const loadedThemes = ref({});
|
|
41
|
-
if (additionalThemes) {
|
|
42
|
-
watch(additionalThemes, (newThemes) => {
|
|
43
|
-
if (debug) {
|
|
44
|
-
console.log("Adding additional themes:", additionalThemes);
|
|
45
|
-
}
|
|
46
|
-
for (const [themeName, themeCss2] of Object.entries(newThemes)) {
|
|
47
|
-
loadedThemes.value[themeName] = themeCss2;
|
|
48
|
-
}
|
|
49
|
-
});
|
|
50
|
-
}
|
|
51
|
-
const rawThemeCss = ref("");
|
|
52
|
-
async function loadTheme(themeName) {
|
|
53
|
-
if (loadedThemes.value[themeName]) return;
|
|
54
|
-
const themeLoadingKey = `${themeModulePath}${themeName}.css`;
|
|
55
|
-
const func = themeModules[themeLoadingKey];
|
|
56
|
-
if (func === void 0) {
|
|
57
|
-
throw new Error(`Could not find theme: ${themeLoadingKey} in ${themeModulePath}. Valid paths are:
|
|
58
|
-
${keys(themeModules).join(",\n")}`);
|
|
59
|
-
}
|
|
60
|
-
const themeStyle = await func();
|
|
61
|
-
if (debug) {
|
|
62
|
-
console.log("Loading theme:", { themeName, themeLoadingKey, themeStyle });
|
|
63
|
-
}
|
|
64
|
-
rawThemeCss.value = themeStyle;
|
|
65
|
-
return void 0;
|
|
66
|
-
}
|
|
67
|
-
void loadTheme(theme.value);
|
|
68
|
-
const isDark = computed(() => theme.value.includes("dark"));
|
|
69
|
-
const backgroundColor = computed(() => {
|
|
70
|
-
const colors = {
|
|
71
|
-
dark: "#1e1e1e",
|
|
72
|
-
light: "#ffffff",
|
|
73
|
-
...darkLightBgs?.value ?? {}
|
|
74
|
-
};
|
|
75
|
-
return colors[isDark.value ? "dark" : "light"];
|
|
76
|
-
});
|
|
77
|
-
const themeCss = computed(() => {
|
|
78
|
-
const innerCss = `
|
|
79
|
-
${indent(rawThemeCss.value, 3)}
|
|
80
|
-
.hljs {
|
|
81
|
-
background-color: ${backgroundColor.value};
|
|
82
|
-
}
|
|
83
|
-
`;
|
|
84
|
-
return [
|
|
85
|
-
isWhitespace(classes) ? innerCss : crop`
|
|
86
|
-
${classes} {
|
|
87
|
-
${indent(innerCss, 1)}
|
|
88
|
-
}
|
|
89
|
-
`
|
|
90
|
-
];
|
|
91
|
-
});
|
|
92
|
-
return {
|
|
93
|
-
theme,
|
|
94
|
-
knownThemes,
|
|
95
|
-
loadTheme,
|
|
96
|
-
isDark,
|
|
97
|
-
backgroundColor,
|
|
98
|
-
themeCss,
|
|
99
|
-
rawThemeCss
|
|
100
|
-
};
|
|
101
|
-
}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* This is an auto-generated file.
|
|
3
|
-
*
|
|
4
|
-
* Do not edit manually.
|
|
5
|
-
*
|
|
6
|
-
* See build/utils/generateHighlightJsInfo.js
|
|
7
|
-
*/
|
|
8
|
-
type LanguageState = Record<string, {
|
|
9
|
-
loaded: boolean;
|
|
10
|
-
aliases: string[];
|
|
11
|
-
}>;
|
|
12
|
-
export type HighlightJsLanguageInfo = {
|
|
13
|
-
languages: LanguageState;
|
|
14
|
-
aliases: Record<string, string>;
|
|
15
|
-
};
|
|
16
|
-
export declare const highlightJsLanaguages: HighlightJsLanguageInfo;
|
|
17
|
-
export {};
|