Fix: Correct Novu migration utility query

This commit is contained in:
gpt-engineer-app[bot]
2025-10-01 13:19:43 +00:00
parent 69aa186e12
commit 88d5ad44c9

View File

@@ -28,16 +28,25 @@ export function NovuMigrationUtility() {
setProgress(0); setProgress(0);
try { try {
// First, fetch user IDs that already have Novu subscriber IDs
const { data: existingPrefs, error: prefsError } = await supabase
.from('user_notification_preferences')
.select('user_id')
.not('novu_subscriber_id', 'is', null);
if (prefsError) throw prefsError;
const existingUserIds = existingPrefs?.map(p => p.user_id) || [];
// Fetch users without Novu subscriber IDs // Fetch users without Novu subscriber IDs
const { data: users, error: fetchError } = await supabase const query = supabase
.from('profiles') .from('profiles')
.select('user_id, users:user_id(email)') .select('user_id, users:user_id(email)');
.not('user_id', 'in',
supabase // Only add the not filter if there are existing user IDs
.from('user_notification_preferences') const { data: users, error: fetchError } = existingUserIds.length > 0
.select('user_id') ? await query.not('user_id', 'in', `(${existingUserIds.join(',')})`)
.not('novu_subscriber_id', 'is', null) : await query;
);
if (fetchError) throw fetchError; if (fetchError) throw fetchError;