summaryrefslogtreecommitdiff
path: root/packages/integrations/netlify/src
diff options
context:
space:
mode:
authorGravatar Matthew Phillips <matthew@skypack.dev> 2022-09-20 15:33:01 -0400
committerGravatar GitHub <noreply@github.com> 2022-09-20 15:33:01 -0400
commit9a746fec916cffc4dac716a216f4723923e3ad38 (patch)
tree743b34ce7c43184bfb86b595e84e0af67368e106 /packages/integrations/netlify/src
parentec31c457af972397d8863c7585c520a762c215ca (diff)
downloadastro-9a746fec916cffc4dac716a216f4723923e3ad38.tar.gz
astro-9a746fec916cffc4dac716a216f4723923e3ad38.tar.zst
astro-9a746fec916cffc4dac716a216f4723923e3ad38.zip
Fixes processing of images in Netlify functions (#4820)
Diffstat (limited to 'packages/integrations/netlify/src')
-rw-r--r--packages/integrations/netlify/src/netlify-functions.ts11
1 files changed, 8 insertions, 3 deletions
diff --git a/packages/integrations/netlify/src/netlify-functions.ts b/packages/integrations/netlify/src/netlify-functions.ts
index d40254f96..c6b253b0d 100644
--- a/packages/integrations/netlify/src/netlify-functions.ts
+++ b/packages/integrations/netlify/src/netlify-functions.ts
@@ -36,6 +36,7 @@ export const createExports = (manifest: SSRManifest, args: Args) => {
'image/bmp',
'image/gif',
'image/vnd.microsoft.icon',
+ 'image/heif',
'image/jpeg',
'image/png',
'image/svg+xml',
@@ -84,9 +85,13 @@ export const createExports = (manifest: SSRManifest, args: Args) => {
const responseContentType = parseContentType(responseHeaders['content-type']);
const responseIsBase64Encoded = knownBinaryMediaTypes.has(responseContentType);
- const responseBody = responseIsBase64Encoded
- ? Buffer.from(await response.text(), 'binary').toString('base64')
- : await response.text();
+ let responseBody: string;
+ if(responseIsBase64Encoded) {
+ const ab = await response.arrayBuffer();
+ responseBody = Buffer.from(ab).toString('base64');
+ } else {
+ responseBody = await response.text();
+ }
const fnResponse: any = {
statusCode: response.status,