@asgerami/zemenay-blog
Version:
Plug-and-play blog system for Next.js - Get a fully functional blog running in minutes with zero configuration
26 lines (25 loc) • 1.11 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.initializeSupabase = initializeSupabase;
exports.getSupabaseClient = getSupabaseClient;
const supabase_js_1 = require("@supabase/supabase-js");
let supabaseClient = null;
function initializeSupabase(config) {
if (!config.supabaseUrl || !config.supabaseAnonKey) {
throw new Error("Supabase URL and anonymous key are required");
}
supabaseClient = (0, supabase_js_1.createClient)(config.supabaseUrl, config.supabaseAnonKey);
return supabaseClient;
}
function getSupabaseClient() {
if (!supabaseClient) {
// Try to initialize with environment variables as fallback
const supabaseUrl = process.env.NEXT_PUBLIC_SUPABASE_URL;
const supabaseAnonKey = process.env.NEXT_PUBLIC_SUPABASE_ANON_KEY;
if (supabaseUrl && supabaseAnonKey) {
return initializeSupabase({ supabaseUrl, supabaseAnonKey });
}
throw new Error("Supabase client not initialized. Call initializeSupabase() first or set environment variables.");
}
return supabaseClient;
}