Lexical: Added drop/paste image handling

This commit is contained in:
Dan Brown
2024-08-21 12:59:45 +01:00
parent dbb2fe3e59
commit ddf5f2543c
5 changed files with 177 additions and 79 deletions

View File

@ -24,4 +24,21 @@ export function $createLinkedImageNodeFromImageData(image: EditorImageData): Lin
});
linkNode.append(imageNode);
return linkNode;
}
/**
* Upload an image file to the server
*/
export async function uploadImageFile(file: File, pageId: string): Promise<EditorImageData> {
if (file === null || file.type.indexOf('image') !== 0) {
throw new Error('Not an image file');
}
const remoteFilename = file.name || `image-${Date.now()}.png`;
const formData = new FormData();
formData.append('file', file, remoteFilename);
formData.append('uploaded_to', pageId);
const resp = await window.$http.post('/images/gallery', formData);
return resp.data as EditorImageData;
}