1
0

feat(editor): save when pressing ctrl enter

This commit is contained in:
kolaente
2023-10-22 10:38:53 +02:00
parent 19a78f1f75
commit 63c40b29b0
3 changed files with 119 additions and 38 deletions

View File

@ -126,7 +126,24 @@ import Underline from '@tiptap/extension-underline'
import TaskItem from '@tiptap/extension-task-item'
import TaskList from '@tiptap/extension-task-list'
import StarterKit from '@tiptap/starter-kit'
import { Blockquote } from '@tiptap/extension-blockquote'
import { Bold } from '@tiptap/extension-bold'
import { BulletList } from '@tiptap/extension-bullet-list'
import { Code } from '@tiptap/extension-code'
import { CodeBlock } from '@tiptap/extension-code-block'
import { Document } from '@tiptap/extension-document'
import { Dropcursor } from '@tiptap/extension-dropcursor'
import { Gapcursor } from '@tiptap/extension-gapcursor'
import { HardBreak } from '@tiptap/extension-hard-break'
import { Heading } from '@tiptap/extension-heading'
import { History } from '@tiptap/extension-history'
import { HorizontalRule } from '@tiptap/extension-horizontal-rule'
import { Italic } from '@tiptap/extension-italic'
import { ListItem } from '@tiptap/extension-list-item'
import { OrderedList } from '@tiptap/extension-ordered-list'
import { Paragraph } from '@tiptap/extension-paragraph'
import { Strike } from '@tiptap/extension-strike'
import { Text } from '@tiptap/extension-text'
import {BubbleMenu, EditorContent, useEditor} from '@tiptap/vue-3'
import Commands from './commands'
@ -224,7 +241,6 @@ const loadedAttachments = ref<{ [key: CacheKey]: string }>({})
function loadImages() {
const attachmentImage = document.querySelectorAll<HTMLImageElement>('.tiptap__editor img')
const attachmentService = new AttachmentService()
console.log('load images', attachmentImage)
if (attachmentImage) {
Array.from(attachmentImage).forEach(async (img) => {
if (!img.src.startsWith(window.API_URL)) {
@ -268,7 +284,34 @@ const editor = useEditor({
content: inputHTML.value,
editable: isEditEnabled,
extensions: [
StarterKit,
// Starterkit:
Blockquote,
Bold,
BulletList,
Code,
CodeBlock,
Document,
Dropcursor,
Gapcursor,
HardBreak.extend({
addKeyboardShortcuts() {
return {
'Mod-Enter': () => {
bubbleSave()
},
}
},
}),
Heading,
History,
HorizontalRule,
Italic,
ListItem,
OrderedList,
Paragraph,
Strike,
Text,
Placeholder.configure({
placeholder: () => {
if (!isEditEnabled) {
@ -433,7 +476,7 @@ function setFocusToEditor(event) {
if (!hotkeyString) return
if (hotkeyString !== editShortcut || editor.value?.isFocused) return
event.preventDefault()
editor.value?.commands.focus()
}
</script>