import React from 'react'; import { supabaseAdmin } from '@/lib/supabase'; import { Search, Filter, Download, ExternalLink, MoreVertical } from 'lucide-react'; import { format } from 'date-fns'; import { tr } from 'date-fns/locale'; async function getTransactions() { const { data, error } = await supabaseAdmin .from('transactions') .select('*') .order('created_at', { ascending: false }); if (error) return []; return data; } export default async function TransactionsPage() { const transactions = await getTransactions(); return (
{/* Search and Filters Header */}
{/* Full Transactions Table */}
{transactions.map((t) => ( ))}
İşlem ID Referans / Kaynak Tarih & Saat Tutar Durum İşlemler
#{t.stripe_pi_id?.slice(-12).toUpperCase() || 'MOCK'}
{t.customer_name || t.source_ref_id || 'Doğrudan Ödeme'} {t.customer_phone ? ( {t.customer_phone} ) : ( {t.callback_url || 'Geri dönüş yok'} )}
{format(new Date(t.created_at), 'dd MMM yyyy, HH:mm', { locale: tr })} {Number(t.amount).toLocaleString('tr-TR', { minimumFractionDigits: 2 })} {t.currency.toUpperCase() === 'TRY' ? '₺' : t.currency.toUpperCase()}
{t.status === 'succeeded' ? 'Başarılı' : t.status === 'failed' ? 'Hatalı' : 'Bekliyor'}
{t.callback_url && ( )}
{transactions.length === 0 && (

İşlem bulunamadı

)}
); }