'use server' import { auth, clerkClient } from '@clerk/nextjs/server' export const completeOnboarding = async () => { const { userId } = await auth() if (!userId) { throw new Error('User not authenticated'); } const client = await clerkClient() try { await client.users.updateUser(userId, { publicMetadata: { onboardingComplete: true, }, }); return { success: true }; } catch (err) { console.error('Error updating user metadata:', err); throw new Error('Failed to complete onboarding'); } }; export const checkOnboardingStatus = async () => { const { userId } = await auth(); if (!userId) { return { onboardingComplete: false }; } const client = await clerkClient() const user = await client.users.getUser(userId); return { onboardingComplete: user.publicMetadata.onboardingComplete === true, }; };