summaryrefslogtreecommitdiff
path: root/packages/integrations/netlify/src/netlify-functions.ts
diff options
context:
space:
mode:
authorGravatar Matthew Phillips <matthew@skypack.dev> 2022-09-28 16:55:27 -0400
committerGravatar GitHub <noreply@github.com> 2022-09-28 16:55:27 -0400
commitd3091f89e92fcfe1ad48daca74055d54b1c853a3 (patch)
tree78a49dcdd19b970ba42fb100ec2f25a39f047d97 /packages/integrations/netlify/src/netlify-functions.ts
parentec55745ae5454207fa0405170588d898b49b9a48 (diff)
downloadastro-d3091f89e92fcfe1ad48daca74055d54b1c853a3.tar.gz
astro-d3091f89e92fcfe1ad48daca74055d54b1c853a3.tar.zst
astro-d3091f89e92fcfe1ad48daca74055d54b1c853a3.zip
Astro.cookies implementation (#4876)
* Astro.cookies implementation * Remove unused var * Fix build * Add a changesetp * Remove spoken-word expires
Diffstat (limited to 'packages/integrations/netlify/src/netlify-functions.ts')
-rw-r--r--packages/integrations/netlify/src/netlify-functions.ts10
1 files changed, 10 insertions, 0 deletions
diff --git a/packages/integrations/netlify/src/netlify-functions.ts b/packages/integrations/netlify/src/netlify-functions.ts
index 94c9b6eee..7945b4687 100644
--- a/packages/integrations/netlify/src/netlify-functions.ts
+++ b/packages/integrations/netlify/src/netlify-functions.ts
@@ -120,6 +120,16 @@ export const createExports = (manifest: SSRManifest, args: Args) => {
}
}
+ // Apply cookies set via Astro.cookies.set/delete
+ if(app.setCookieHeaders) {
+ const setCookieHeaders = Array.from(app.setCookieHeaders(response));
+ fnResponse.multiValueHeaders = fnResponse.multiValueHeaders || {};
+ if(!fnResponse.multiValueHeaders['set-cookie']) {
+ fnResponse.multiValueHeaders['set-cookie'] = [];
+ }
+ fnResponse.multiValueHeaders['set-cookie'].push(...setCookieHeaders);
+ }
+
return fnResponse;
};