fets 0.2.7 → 0.2.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1,18 +1,31 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.useClientCookieStore = void 0;
|
|
4
|
+
const cookie_store_1 = require("@whatwg-node/cookie-store");
|
|
5
|
+
const fetch_1 = require("@whatwg-node/fetch");
|
|
6
|
+
const server_1 = require("@whatwg-node/server");
|
|
4
7
|
function useClientCookieStore(cookieStore) {
|
|
5
8
|
return {
|
|
6
|
-
onRequestInit({ requestInit }) {
|
|
7
|
-
requestInit.headers =
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+
async onRequestInit({ requestInit }) {
|
|
10
|
+
requestInit.headers = new fetch_1.Headers(requestInit.headers);
|
|
11
|
+
let cookieHeader = requestInit.headers.get('cookie') || '';
|
|
12
|
+
if (cookieHeader) {
|
|
13
|
+
cookieHeader += '; ';
|
|
14
|
+
}
|
|
15
|
+
const cookies = await cookieStore.getAll();
|
|
16
|
+
cookieHeader += cookies.map(cookie => `${cookie.name}=${cookie.value}`).join('; ');
|
|
17
|
+
requestInit.headers.set('cookie', cookieHeader);
|
|
11
18
|
},
|
|
12
19
|
onResponse({ response }) {
|
|
13
20
|
const setCookie = response.headers.get('set-cookie');
|
|
14
21
|
if (setCookie) {
|
|
15
|
-
|
|
22
|
+
const setCookieHeaders = (0, server_1.splitSetCookieHeader)(setCookie);
|
|
23
|
+
for (const setCookieHeader of setCookieHeaders) {
|
|
24
|
+
const cookieMap = (0, cookie_store_1.parse)(setCookieHeader);
|
|
25
|
+
for (const [, cookie] of cookieMap) {
|
|
26
|
+
cookieStore.set(cookie);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
16
29
|
}
|
|
17
30
|
},
|
|
18
31
|
};
|
|
@@ -1,15 +1,28 @@
|
|
|
1
|
+
import { parse } from '@whatwg-node/cookie-store';
|
|
2
|
+
import { Headers } from '@whatwg-node/fetch';
|
|
3
|
+
import { splitSetCookieHeader } from '@whatwg-node/server';
|
|
1
4
|
export function useClientCookieStore(cookieStore) {
|
|
2
5
|
return {
|
|
3
|
-
onRequestInit({ requestInit }) {
|
|
4
|
-
requestInit.headers =
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
async onRequestInit({ requestInit }) {
|
|
7
|
+
requestInit.headers = new Headers(requestInit.headers);
|
|
8
|
+
let cookieHeader = requestInit.headers.get('cookie') || '';
|
|
9
|
+
if (cookieHeader) {
|
|
10
|
+
cookieHeader += '; ';
|
|
11
|
+
}
|
|
12
|
+
const cookies = await cookieStore.getAll();
|
|
13
|
+
cookieHeader += cookies.map(cookie => `${cookie.name}=${cookie.value}`).join('; ');
|
|
14
|
+
requestInit.headers.set('cookie', cookieHeader);
|
|
8
15
|
},
|
|
9
16
|
onResponse({ response }) {
|
|
10
17
|
const setCookie = response.headers.get('set-cookie');
|
|
11
18
|
if (setCookie) {
|
|
12
|
-
|
|
19
|
+
const setCookieHeaders = splitSetCookieHeader(setCookie);
|
|
20
|
+
for (const setCookieHeader of setCookieHeaders) {
|
|
21
|
+
const cookieMap = parse(setCookieHeader);
|
|
22
|
+
for (const [, cookie] of cookieMap) {
|
|
23
|
+
cookieStore.set(cookie);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
13
26
|
}
|
|
14
27
|
},
|
|
15
28
|
};
|
package/package.json
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "fets",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.8",
|
|
4
4
|
"description": "TypeScript HTTP Framework focusing on e2e type-safety, easy setup, performance & great developer experience",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"dependencies": {
|
|
7
7
|
"@ardatan/fast-json-stringify": "^0.0.6",
|
|
8
|
-
"@whatwg-node/cookie-store": "^0.
|
|
8
|
+
"@whatwg-node/cookie-store": "^0.2.0",
|
|
9
9
|
"@whatwg-node/fetch": "^0.9.4",
|
|
10
10
|
"@whatwg-node/server": "^0.8.7",
|
|
11
11
|
"ajv": "^8.12.0",
|