Skip to content

Commit 8a94aeb

Browse files
<testing> client cookie changes
1 parent c3d294f commit 8a94aeb

4 files changed

+77
-9
lines changed
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,23 @@
11
import { Database } from '@/lib/database.types';
22
import { createRouteHandlerClient } from '@supabase/auth-helpers-nextjs';
33
import { cookies } from 'next/headers';
4+
5+
type createRouteHandlerClientParams = NonNullable<
6+
Parameters<typeof createRouteHandlerClient>[1]
7+
>;
8+
type CookieOptions = createRouteHandlerClientParams['cookieOptions'];
9+
10+
const isDevelopment = process.env.NODE_ENV === 'development';
11+
12+
const optionalCookieOptions: CookieOptions = isDevelopment
13+
? undefined
14+
: {
15+
domain: '.digger.dev',
16+
secure: false,
17+
path: '/',
18+
sameSite: 'lax',
19+
};
20+
421
// Outstanding bug
522
//https://github.com/vercel/next.js/issues/45371
623
export const createSupabaseUserRouteHandlerClient = () =>
@@ -9,10 +26,6 @@ export const createSupabaseUserRouteHandlerClient = () =>
926
cookies,
1027
},
1128
{
12-
options: {
13-
global: {
14-
fetch,
15-
},
16-
},
29+
cookieOptions: optionalCookieOptions,
1730
},
1831
);

src/supabase-clients/user/createSupabaseUserServerActionClient.ts

+24-3
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,28 @@ import { Database } from '@/lib/database.types';
22
import { createServerActionClient } from '@supabase/auth-helpers-nextjs';
33
import { cookies } from 'next/headers';
44

5+
type createServerActionClientParams = NonNullable<
6+
Parameters<typeof createServerActionClient>[1]
7+
>;
8+
type CookieOptions = createServerActionClientParams['cookieOptions'];
9+
10+
const isDevelopment = process.env.NODE_ENV === 'development';
11+
12+
const optionalCookieOptions: CookieOptions = isDevelopment
13+
? undefined
14+
: {
15+
domain: '.digger.dev',
16+
secure: false,
17+
path: '/',
18+
sameSite: 'lax',
19+
};
20+
521
export const createSupabaseUserServerActionClient = () =>
6-
createServerActionClient<Database>({
7-
cookies,
8-
});
22+
createServerActionClient<Database>(
23+
{
24+
cookies,
25+
},
26+
{
27+
cookieOptions: optionalCookieOptions,
28+
},
29+
);

src/supabase-clients/user/createSupabaseUserServerComponentClient.ts

+17
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,22 @@ import { Database } from '@/lib/database.types';
22
import { createServerComponentClient } from '@supabase/auth-helpers-nextjs';
33
import { cookies } from 'next/headers';
44

5+
const isDevelopment = process.env.NODE_ENV === 'development';
6+
7+
type createServerComponentClientParams = NonNullable<
8+
Parameters<typeof createServerComponentClient>[1]
9+
>;
10+
type CookieOptions = createServerComponentClientParams['cookieOptions'];
11+
12+
const optionalCookieOptions: CookieOptions = isDevelopment
13+
? undefined
14+
: {
15+
domain: '.digger.dev',
16+
secure: false,
17+
path: '/',
18+
sameSite: 'lax',
19+
};
20+
521
export const createSupabaseUserServerComponentClient = () =>
622
createServerComponentClient<Database>(
723
{
@@ -13,5 +29,6 @@ export const createSupabaseUserServerComponentClient = () =>
1329
fetch,
1430
},
1531
},
32+
cookieOptions: optionalCookieOptions,
1633
},
1734
);

src/supabase-clients/user/supabaseUserClientComponentClient.ts

+18-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,22 @@
11
// https://supabase.com/docs/guides/auth/auth-helpers/nextjs-server-components#creating-a-supabase-client
2-
import { createClientComponentClient } from '@supabase/auth-helpers-nextjs';
32
import { Database } from '@/lib/database.types';
3+
import { createClientComponentClient } from '@supabase/auth-helpers-nextjs';
4+
5+
const isDevelopment = process.env.NODE_ENV === 'development';
6+
7+
type createClientComponentClientParams = NonNullable<
8+
Parameters<typeof createClientComponentClient>[0]
9+
>;
10+
type CookieOptions = createClientComponentClientParams['cookieOptions'];
11+
12+
const optionalCookieOptions: CookieOptions = isDevelopment
13+
? undefined
14+
: {
15+
domain: '.digger.dev',
16+
secure: false,
17+
path: '/',
18+
sameSite: 'lax',
19+
};
420

521
// apologies for the name, but it's the best I could come up with as
622
// the util exported from @supabase/auth-helpers-nextjs is called
@@ -12,4 +28,5 @@ export const supabaseUserClientComponentClient =
1228
fetch,
1329
},
1430
},
31+
cookieOptions: optionalCookieOptions,
1532
});

0 commit comments

Comments
 (0)