diff --git a/webapp/components/Editor/MenuBar.vue b/webapp/components/Editor/MenuBar.vue index b64cf779e..9300f602b 100644 --- a/webapp/components/Editor/MenuBar.vue +++ b/webapp/components/Editor/MenuBar.vue @@ -60,6 +60,10 @@ icon="minus" /> + + + + @@ -80,6 +84,23 @@ export default { editor: Object, toggleLinkInput: Function, }, + methods: { + openFileDialog() { + this.$refs.file.click() + }, + fileChange(event) { + const files = event.target.files + if (files.length === 0) return + for (const file of files) { + this.editor.commands.image({ + src: URL.createObjectURL(file), + alt: file.name, + }) + } + // Reset the input value + event.target.value = '' + }, + }, } diff --git a/webapp/components/Editor/defaultExtensions.js b/webapp/components/Editor/defaultExtensions.js index 63cf8c73f..3bc112cc2 100644 --- a/webapp/components/Editor/defaultExtensions.js +++ b/webapp/components/Editor/defaultExtensions.js @@ -15,6 +15,7 @@ import { HorizontalRule, Placeholder, Underline, + Image, } from 'tiptap-extensions' export default function defaultExtensions(component) { @@ -53,5 +54,6 @@ export default function defaultExtensions(component) { return embed }, }), + new Image(), ] }