Skip to content

Commit fbec19e

Browse files
Resolve Supabase public env aliases consistently
1 parent 79031ef commit fbec19e

4 files changed

Lines changed: 40 additions & 20 deletions

File tree

packages/supabase/src/ssr/admin.ts

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,16 +21,21 @@ export async function createClient(options: CreateAdminClientOptions = {}) {
2121

2222
const cookieStore = cookies();
2323

24+
const supabaseUrl =
25+
process.env.NEXT_PUBLIC_SUPABASE_URL ||
26+
process.env.SUPABASE_URL;
2427
const publicKey =
25-
process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY ??
26-
process.env.NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY;
28+
process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY ||
29+
process.env.NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY ||
30+
process.env.SUPABASE_ANON_KEY ||
31+
process.env.SUPABASE_PUBLISHABLE_KEY;
2732

28-
if (!process.env.NEXT_PUBLIC_SUPABASE_URL || !publicKey) {
29-
throw new Error('Supabase env vars (NEXT_PUBLIC_SUPABASE_URL / NEXT_PUBLIC_SUPABASE_ANON_KEY or NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY) are missing');
33+
if (!supabaseUrl || !publicKey) {
34+
throw new Error('Supabase env vars (NEXT_PUBLIC_SUPABASE_URL or SUPABASE_URL / NEXT_PUBLIC_SUPABASE_ANON_KEY, NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY, SUPABASE_ANON_KEY, or SUPABASE_PUBLISHABLE_KEY) are missing');
3035
}
3136

3237
return createServerClient(
33-
process.env.NEXT_PUBLIC_SUPABASE_URL,
38+
supabaseUrl,
3439
publicKey,
3540
{
3641
// Prefix the storage key so multiple apps on the same domain do not

packages/supabase/src/ssr/client.ts

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,16 +11,21 @@ import { createBrowserClient } from '@supabase/ssr';
1111
* exposed to the Next.js runtime via environment variables.
1212
*/
1313
export function createClient() {
14+
const supabaseUrl =
15+
process.env.NEXT_PUBLIC_SUPABASE_URL ||
16+
process.env.SUPABASE_URL;
1417
const publicKey =
15-
process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY ??
16-
process.env.NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY;
18+
process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY ||
19+
process.env.NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY ||
20+
process.env.SUPABASE_ANON_KEY ||
21+
process.env.SUPABASE_PUBLISHABLE_KEY;
1722

18-
if (!process.env.NEXT_PUBLIC_SUPABASE_URL || !publicKey) {
19-
throw new Error('Supabase env vars (NEXT_PUBLIC_SUPABASE_URL / NEXT_PUBLIC_SUPABASE_ANON_KEY or NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY) are missing');
23+
if (!supabaseUrl || !publicKey) {
24+
throw new Error('Supabase env vars (NEXT_PUBLIC_SUPABASE_URL or SUPABASE_URL / NEXT_PUBLIC_SUPABASE_ANON_KEY, NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY, SUPABASE_ANON_KEY, or SUPABASE_PUBLISHABLE_KEY) are missing');
2025
}
2126

2227
return createBrowserClient(
23-
process.env.NEXT_PUBLIC_SUPABASE_URL,
28+
supabaseUrl,
2429
publicKey,
2530
);
2631
}

packages/supabase/src/ssr/middleware.ts

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,16 +15,21 @@ export async function updateSession(request: NextRequest) {
1515
},
1616
});
1717

18+
const supabaseUrl =
19+
process.env.NEXT_PUBLIC_SUPABASE_URL ||
20+
process.env.SUPABASE_URL;
1821
const publicKey =
19-
process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY ??
20-
process.env.NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY;
22+
process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY ||
23+
process.env.NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY ||
24+
process.env.SUPABASE_ANON_KEY ||
25+
process.env.SUPABASE_PUBLISHABLE_KEY;
2126

22-
if (!process.env.NEXT_PUBLIC_SUPABASE_URL || !publicKey) {
23-
throw new Error('Supabase env vars (NEXT_PUBLIC_SUPABASE_URL / NEXT_PUBLIC_SUPABASE_ANON_KEY or NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY) are missing');
27+
if (!supabaseUrl || !publicKey) {
28+
throw new Error('Supabase env vars (NEXT_PUBLIC_SUPABASE_URL or SUPABASE_URL / NEXT_PUBLIC_SUPABASE_ANON_KEY, NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY, SUPABASE_ANON_KEY, or SUPABASE_PUBLISHABLE_KEY) are missing');
2429
}
2530

2631
const supabase = createServerClient(
27-
process.env.NEXT_PUBLIC_SUPABASE_URL,
32+
supabaseUrl,
2833
publicKey,
2934
{
3035
cookies: {

packages/supabase/src/ssr/server.ts

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,16 +17,21 @@ import { cookies } from 'next/headers';
1717
export async function createClient() {
1818
const cookieStore = cookies();
1919

20+
const supabaseUrl =
21+
process.env.NEXT_PUBLIC_SUPABASE_URL ||
22+
process.env.SUPABASE_URL;
2023
const publicKey =
21-
process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY ??
22-
process.env.NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY;
24+
process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY ||
25+
process.env.NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY ||
26+
process.env.SUPABASE_ANON_KEY ||
27+
process.env.SUPABASE_PUBLISHABLE_KEY;
2328

24-
if (!process.env.NEXT_PUBLIC_SUPABASE_URL || !publicKey) {
25-
throw new Error('Supabase env vars (NEXT_PUBLIC_SUPABASE_URL / NEXT_PUBLIC_SUPABASE_ANON_KEY or NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY) are missing');
29+
if (!supabaseUrl || !publicKey) {
30+
throw new Error('Supabase env vars (NEXT_PUBLIC_SUPABASE_URL or SUPABASE_URL / NEXT_PUBLIC_SUPABASE_ANON_KEY, NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY, SUPABASE_ANON_KEY, or SUPABASE_PUBLISHABLE_KEY) are missing');
2631
}
2732

2833
return createServerClient(
29-
process.env.NEXT_PUBLIC_SUPABASE_URL,
34+
supabaseUrl,
3035
publicKey,
3136
{
3237
cookies: {

0 commit comments

Comments
 (0)