From 5876c853d0661d39d9952bb521955f210f5f7970 Mon Sep 17 00:00:00 2001 From: Keavon Chambers Date: Wed, 2 Nov 2022 00:26:39 -0700 Subject: [PATCH] Remove regex lookbehind in rasterization which is unsupported by Safari --- frontend/src/utility-functions/files.ts | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/frontend/src/utility-functions/files.ts b/frontend/src/utility-functions/files.ts index f82b6b6e..71443420 100644 --- a/frontend/src/utility-functions/files.ts +++ b/frontend/src/utility-functions/files.ts @@ -62,11 +62,12 @@ export function blobToBase64(blob: Blob): Promise { } export async function replaceBlobURLsWithBase64(svg: string): Promise { - const splitByBlobs = svg.split(/(?<=")(blob:.*?)(?=")/); + const splitByBlobs = svg.split(/("blob:.*?")/); const onlyBlobs = splitByBlobs.filter((_, i) => i % 2 === 1); const onlyBlobsConverted = onlyBlobs.map(async (blobURL) => { - const data = await fetch(blobURL); + const urlWithoutQuotes = blobURL.slice(1, -1); + const data = await fetch(urlWithoutQuotes); const dataBlob = await data.blob(); return blobToBase64(dataBlob); }); @@ -76,7 +77,7 @@ export async function replaceBlobURLsWithBase64(svg: string): Promise { if (i % 2 === 0) return segment; const blobsIndex = Math.floor(i / 2); - return base64Images[blobsIndex]; + return `"${base64Images[blobsIndex]}"`; }); return substituted.join(""); }