diff --git a/shop/components/admin/user-dialog.tsx b/shop/components/admin/user-dialog.tsx index 59f0a6c..c9236b5 100644 --- a/shop/components/admin/user-dialog.tsx +++ b/shop/components/admin/user-dialog.tsx @@ -286,6 +286,7 @@ export function UserDialog({ companies }: UserDialogProps) { field.onChange(created.id) setShowNewCompanyInput(false) setNewCompanyName('') + router.refresh() } } catch (err) { console.error('Failed to create company:', err) diff --git a/shop/lib/actions/companies.ts b/shop/lib/actions/companies.ts index 85f366f..adc8881 100644 --- a/shop/lib/actions/companies.ts +++ b/shop/lib/actions/companies.ts @@ -1,8 +1,9 @@ 'use server' import { createAdminClient } from '@/lib/supabase/admin' -import { revalidatePath } from 'next/cache' +import { revalidatePath, unstable_noStore as noStore } from 'next/cache' export async function getCompanies() { + noStore() const admin = createAdminClient() const { data, error } = await admin.from('companies').select('*') if (error) throw error @@ -20,6 +21,7 @@ export async function createCompany(data: { name: string; street?: string; zip?: }).select().single() if (error) throw error revalidatePath('/admin/companies') + revalidatePath('/admin/users') return dbData } @@ -34,6 +36,7 @@ export async function updateCompany(id: string, data: { name: string; street?: s }).eq('id', id).select().single() if (error) throw error revalidatePath('/admin/companies') + revalidatePath('/admin/users') return dbData } @@ -42,6 +45,7 @@ export async function deleteCompany(id: string) { const { error } = await admin.from('companies').delete().eq('id', id) if (error) throw error revalidatePath('/admin/companies') + revalidatePath('/admin/users') return true } diff --git a/shop/lib/actions/users.ts b/shop/lib/actions/users.ts index 00543f4..1378fbe 100644 --- a/shop/lib/actions/users.ts +++ b/shop/lib/actions/users.ts @@ -1,10 +1,11 @@ 'use server'; import { createAdminClient } from '@/lib/supabase/admin'; -import { revalidatePath } from 'next/cache'; +import { revalidatePath, unstable_noStore as noStore } from 'next/cache'; import { sendMail } from '@/utils/mail'; export async function getUsers() { + noStore(); const admin = createAdminClient(); const { data: { users }, error } = await admin.auth.admin.listUsers(); if (error) throw error;