Files
hackerspace.sh/app/(app)/payments/page.tsx
T
2026-03-11 04:44:48 +00:00

38 lines
1.2 KiB
TypeScript

import { createClient } from '@/lib/supabase/server'
import { PaymentsClient } from './payments-client'
export default async function PaymentsPage() {
const supabase = await createClient()
const { data: { user } } = await supabase.auth.getUser()
if (!user) return null
const { data: member } = await supabase
.from('space_members').select('space_id, role').eq('user_id', user.id).eq('status', 'current').single()
if (!member) return null
const [{ data: payments }, { data: members }, { data: integrations }] = await Promise.all([
supabase.from('payments')
.select('*, space_members(display_name)')
.eq('space_id', member.space_id)
.order('transaction_date', { ascending: false })
.limit(100),
supabase.from('space_members')
.select('id, display_name, email')
.eq('space_id', member.space_id)
.eq('status', 'current'),
supabase.from('integrations')
.select('platform, is_connected, config')
.eq('space_id', member.space_id),
])
return (
<PaymentsClient
payments={payments ?? []}
members={members ?? []}
integrations={integrations ?? []}
currentRole={member.role}
spaceId={member.space_id}
/>
)
}