From 3b516ed11ac7a61f302fabe038a40bdcc6b23123 Mon Sep 17 00:00:00 2001 From: Anonymous Date: Wed, 12 Jan 2022 14:08:31 +0100 Subject: [PATCH] Working: ordinary embeds, third-eye. [Not Tested]: pomf --- src/Embedding.svelte | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/src/Embedding.svelte b/src/Embedding.svelte index 287043b..7a71b0c 100644 --- a/src/Embedding.svelte +++ b/src/Embedding.svelte @@ -44,16 +44,18 @@ if (settled) return settled = true - if(file.thumbnail == null) return - const thumb = typeof file.thumbnail === 'function' ? (await file.thumbnail()) : file.data; + // media is to be either thumbnail or data // const thumb = file.thumbnail || file.data + const media = typeof file.thumbnail === 'function' ? (await file.thumbnail()) : file.data; + if(media == null) return + let type: FileTypeResult | undefined - if (thumb instanceof Buffer) { - type = await fileTypeFromBuffer(thumb); - url = URL.createObjectURL(new Blob([thumb], { type: type?.mime })) + if (media instanceof ArrayBuffer || media instanceof Uint8Array) { + type = await fileTypeFromBuffer(media); + url = URL.createObjectURL(new Blob([media], { type: type?.mime })) // if (!type) return; // extracted out below for TypeScript - } else if (typeof thumb === 'string'){ - let head = headerStringToObject(await GM_head(thumb, undefined)) + } else if (typeof media === 'string'){ + let head = headerStringToObject(await GM_head(media, undefined)) // TODO write a proper getExt() and getMime() type = { ext: '' as any, mime: head['content-type'].split(';')[0].trim() } }