@@ -9,34 +9,13 @@ export const cookieOptions: CookieOptionsWithName = {
9
9
sameSite : 'lax' ,
10
10
} ;
11
11
12
- export const createSupabaseServerInstance = ( context : {
12
+ type SupabaseContext = {
13
13
headers : Headers ;
14
14
cookies : AstroCookies ;
15
- } ) => {
16
- const supabase = createServerClient ( SUPABASE_URL , SUPABASE_PUBLIC_KEY , {
17
- cookieOptions,
18
- cookies : {
19
- // @ts -expect-error - correct implementation per Supabase docs
20
- getAll ( ) {
21
- const cookieHeader = context . headers . get ( 'Cookie' ) ?? '' ;
22
- return parseCookieHeader ( cookieHeader ) ;
23
- } ,
24
- setAll ( cookiesToSet ) {
25
- cookiesToSet . forEach ( ( { name, value, options } ) =>
26
- context . cookies . set ( name , value , options ) ,
27
- ) ;
28
- } ,
29
- } ,
30
- } ) ;
31
-
32
- return supabase ;
33
15
} ;
34
16
35
- export const createSupabaseAdminInstance = ( context : {
36
- headers : Headers ;
37
- cookies : AstroCookies ;
38
- } ) => {
39
- const supabase = createServerClient ( SUPABASE_URL , SUPABASE_SERVICE_ROLE_KEY , {
17
+ const createSupabaseInstance = ( apiKey : string , context : SupabaseContext ) => {
18
+ return createServerClient ( SUPABASE_URL , apiKey , {
40
19
cookieOptions,
41
20
cookies : {
42
21
// @ts -expect-error - correct implementation per Supabase docs
@@ -51,6 +30,12 @@ export const createSupabaseAdminInstance = (context: {
51
30
} ,
52
31
} ,
53
32
} ) ;
33
+ } ;
34
+
35
+ export const createSupabaseServerInstance = ( context : SupabaseContext ) => {
36
+ return createSupabaseInstance ( SUPABASE_PUBLIC_KEY , context ) ;
37
+ } ;
54
38
55
- return supabase ;
39
+ export const createSupabaseAdminInstance = ( context : SupabaseContext ) => {
40
+ return createSupabaseInstance ( SUPABASE_SERVICE_ROLE_KEY , context ) ;
56
41
} ;
0 commit comments