Upload dropped images

This commit is contained in:
Sinclair Chen 2022-08-31 17:18:35 -07:00
parent bc1ec414de
commit 58e671e640

View File

@ -108,10 +108,7 @@ export function useTextEditor(props: {
editor?.setOptions({
editorProps: {
handlePaste(view, event) {
const imageFiles = Array.from(event.clipboardData?.files ?? []).filter(
(file) => file.type.startsWith('image')
)
const imageFiles = getImages(event.clipboardData)
if (imageFiles.length) {
event.preventDefault()
upload.mutate(imageFiles)
@ -126,6 +123,13 @@ export function useTextEditor(props: {
return // Otherwise, use default paste handler
},
handleDrop(_view, event, _slice, moved) {
// if dragged from outside
if (!moved) {
event.preventDefault()
upload.mutate(getImages(event.dataTransfer))
}
},
},
})
@ -136,6 +140,9 @@ export function useTextEditor(props: {
return { editor, upload }
}
const getImages = (data: DataTransfer | null) =>
Array.from(data?.files ?? []).filter((file) => file.type.startsWith('image'))
function isValidIframe(text: string) {
return /^<iframe.*<\/iframe>$/.test(text)
}