From d465789b99765eae9fff0e529341fe605c9f32e2 Mon Sep 17 00:00:00 2001 From: TPN Date: Tue, 25 Jun 2024 13:33:52 +0530 Subject: [PATCH] Add support for credentials in fetcher --- src/fetchers/common.ts | 1 + src/fetchers/fetch.ts | 1 + src/fetchers/standardFetch.ts | 1 + src/fetchers/types.ts | 2 ++ 4 files changed, 5 insertions(+) diff --git a/src/fetchers/common.ts b/src/fetchers/common.ts index fbdf74e..f658986 100644 --- a/src/fetchers/common.ts +++ b/src/fetchers/common.ts @@ -39,6 +39,7 @@ export function makeFetcher(fetcher: Fetcher): UseableFetcher { baseUrl: ops?.baseUrl ?? '', readHeaders: ops?.readHeaders ?? [], body: ops?.body, + credentials: ops?.credentials, }); }; const output: UseableFetcher = async (url, ops) => (await newFetcher(url, ops)).body; diff --git a/src/fetchers/fetch.ts b/src/fetchers/fetch.ts index d2156d0..741f0de 100644 --- a/src/fetchers/fetch.ts +++ b/src/fetchers/fetch.ts @@ -7,6 +7,7 @@ export type FetchOps = { headers: Record; method: string; body: any; + credentials?: 'include' | 'same-origin' | 'omit'; }; export type FetchHeaders = { diff --git a/src/fetchers/standardFetch.ts b/src/fetchers/standardFetch.ts index e697e4b..41c5500 100644 --- a/src/fetchers/standardFetch.ts +++ b/src/fetchers/standardFetch.ts @@ -28,6 +28,7 @@ export function makeStandardFetcher(f: FetchLike): Fetcher { ...ops.headers, }, body: seralizedBody.body, + credentials: ops.credentials, }); let body: any; diff --git a/src/fetchers/types.ts b/src/fetchers/types.ts index f5dbe06..efc21a5 100644 --- a/src/fetchers/types.ts +++ b/src/fetchers/types.ts @@ -7,6 +7,7 @@ export type FetcherOptions = { method?: 'HEAD' | 'GET' | 'POST'; readHeaders?: string[]; body?: Record | string | FormData | URLSearchParams; + credentials?: 'include' | 'same-origin' | 'omit'; }; // Version of the options that always has the defaults set @@ -18,6 +19,7 @@ export type DefaultedFetcherOptions = { query: Record; readHeaders: string[]; method: 'HEAD' | 'GET' | 'POST'; + credentials?: 'include' | 'same-origin' | 'omit'; }; export type FetcherResponse = {