import { getSupabaseServerClient } from '@kit/supabase/server-client'; import { createVerbandApi } from '@kit/verbandsverwaltung/api'; import { VerbandTabNavigation, ClubsDataTable } from '@kit/verbandsverwaltung/components'; import { CmsPageShell } from '~/components/cms-page-shell'; import { AccountNotFound } from '~/components/account-not-found'; interface Props { params: Promise<{ account: string }>; searchParams: Promise>; } export default async function ClubsPage({ params, searchParams }: Props) { const { account } = await params; const search = await searchParams; const client = getSupabaseServerClient(); const { data: acct } = await client .from('accounts') .select('id') .eq('slug', account) .single(); if (!acct) return ; const api = createVerbandApi(client); const page = Number(search.page) || 1; const showArchived = search.archived === '1'; const [result, types] = await Promise.all([ api.listClubs(acct.id, { search: search.q as string, typeId: search.type as string, archived: showArchived ? undefined : false, page, pageSize: 25, }), api.listTypes(acct.id), ]); return ( ({ id: t.id, name: t.name }))} /> ); }