diff --git a/src/components/Milkdown/Tooltip.vue b/src/components/Milkdown/Tooltip.vue index 7f7b692..1e3facd 100644 --- a/src/components/Milkdown/Tooltip.vue +++ b/src/components/Milkdown/Tooltip.vue @@ -7,7 +7,13 @@ import { onMounted, onUnmounted, ref, watch } from 'vue' import type { VNodeRef } from 'vue' import { useCommands } from '../../composables/commands' -const { toggleBold, toggleInlineCode, toggleItalic } = useCommands() +const { + toggleBold, + toggleInlineCode, + toggleItalic, + wrapInBlockQuote, + toggleStrikeThrough, +} = useCommands() const { view, prevState } = usePluginViewContext() const divRef = ref() @@ -51,5 +57,17 @@ onUnmounted(() => { > Italic + + diff --git a/src/composables/commands.ts b/src/composables/commands.ts index 1b77ddb..d0db419 100644 --- a/src/composables/commands.ts +++ b/src/composables/commands.ts @@ -5,7 +5,9 @@ import { toggleEmphasisCommand, toggleInlineCodeCommand, toggleStrongCommand, + wrapInBlockquoteCommand, } from '@milkdown/preset-commonmark' +import { toggleStrikethroughCommand } from '@milkdown/preset-gfm' import { callCommand } from '@milkdown/utils' import { editorViewCtx } from '@milkdown/core' @@ -29,7 +31,17 @@ export const useCommands = () => { e.preventDefault() get()!.action(callCommand(toggleEmphasisCommand.key)) } + const toggleStrikeThrough = (e: Event) => { + if (loading.value) return + e.preventDefault() + get()!.action(callCommand(toggleStrikethroughCommand.key)) + } + const wrapInBlockQuote = (e: Event) => { + if (loading.value) return + e.preventDefault() + get()!.action(callCommand(wrapInBlockquoteCommand.key)) + } const addCodeBlock = (e: Event) => { if (loading.value) return e.preventDefault() @@ -43,5 +55,12 @@ export const useCommands = () => { }) } - return { toggleBold, addCodeBlock, toggleInlineCode, toggleItalic } + return { + toggleBold, + toggleInlineCode, + toggleItalic, + toggleStrikeThrough, + wrapInBlockQuote, + addCodeBlock, + } }