38 lines
1009 B
JavaScript
38 lines
1009 B
JavaScript
const router = require('express').Router();
|
|
const { createClient } = require('@supabase/supabase-js');
|
|
const { getSupabaseUrl, getSupabaseKey } = require('./get-constants');
|
|
|
|
let supabase = null;
|
|
|
|
async function initSupabaseClient() {
|
|
const supabaseUrl = await getSupabaseUrl();
|
|
const supabaseAnonKey = await getSupabaseKey();
|
|
supabase = createClient(supabaseUrl, supabaseAnonKey);
|
|
}
|
|
|
|
function getSupabaseClient() {
|
|
if (!supabase) {
|
|
throw new Error('Supabase client is not initialized. Call initSupabaseClient first.');
|
|
}
|
|
return supabase;
|
|
}
|
|
|
|
// POST /refresh-supabase-client
|
|
router.post('/refresh-supabase-client', async (req, res) => {
|
|
try {
|
|
await initSupabaseClient();
|
|
res.json({ success: true, message: 'Supabase client refreshed' });
|
|
} catch (error) {
|
|
res.status(500).json({ error: error.message });
|
|
}
|
|
});
|
|
|
|
// Инициализация клиента при старте
|
|
(async () => {
|
|
await initSupabaseClient();
|
|
})();
|
|
|
|
module.exports = {
|
|
getSupabaseClient,
|
|
router
|
|
}; |