2025-01-04 17:22:46 -07:00
|
|
|
import { createClient } from '@supabase/supabase-js';
|
|
|
|
import { env } from '../config/env';
|
|
|
|
|
|
|
|
// Validate Supabase configuration
|
2025-01-06 21:25:15 -07:00
|
|
|
if (!env.SUPABASE_URL || !env.SUPABASE_KEY) {
|
2025-01-04 17:22:46 -07:00
|
|
|
throw new Error('Missing Supabase configuration');
|
|
|
|
}
|
|
|
|
|
|
|
|
// Create Supabase client
|
|
|
|
export const supabase = createClient(
|
2025-01-06 21:25:15 -07:00
|
|
|
env.SUPABASE_URL,
|
|
|
|
env.SUPABASE_KEY,
|
2025-01-04 17:22:46 -07:00
|
|
|
{
|
|
|
|
auth: {
|
|
|
|
autoRefreshToken: true,
|
2025-01-06 21:25:15 -07:00
|
|
|
persistSession: true,
|
|
|
|
detectSessionInUrl: true
|
2025-01-04 17:22:46 -07:00
|
|
|
}
|
|
|
|
}
|
|
|
|
);
|
|
|
|
|
2025-01-06 21:25:15 -07:00
|
|
|
// Test connection function
|
|
|
|
export async function testConnection() {
|
2025-01-04 17:22:46 -07:00
|
|
|
try {
|
2025-01-06 21:25:15 -07:00
|
|
|
console.log('Testing Supabase connection...');
|
|
|
|
console.log('URL:', env.SUPABASE_URL);
|
|
|
|
const { data, error } = await supabase.from('searches').select('count');
|
|
|
|
if (error) throw error;
|
|
|
|
console.log('Supabase connection successful');
|
|
|
|
return true;
|
2025-01-04 17:22:46 -07:00
|
|
|
} catch (error) {
|
2025-01-06 21:25:15 -07:00
|
|
|
console.error('Supabase connection failed:', error);
|
|
|
|
return false;
|
2025-01-04 17:22:46 -07:00
|
|
|
}
|
2025-01-06 21:25:15 -07:00
|
|
|
}
|