-
- setForm(f => ({ ...f, joined_at: e.target.value }))}
+
+ setForm(f => ({ ...f, joined_at: e.target.value }))}
className="w-full bg-background border border-border rounded px-3 py-2 font-sans text-sm text-foreground focus:outline-none focus:border-primary" />
@@ -238,6 +236,7 @@ export function MembersClient({ members: initialMembers, currentRole, areaLeadRo
setSearch(e.target.value)}
@@ -326,20 +325,20 @@ export function MembersClient({ members: initialMembers, currentRole, areaLeadRo
{m.status === 'unverified' && (
)}
@@ -347,7 +346,7 @@ export function MembersClient({ members: initialMembers, currentRole, areaLeadRo
@@ -497,10 +497,10 @@ function KbEntryRow({
{VISIBILITY_LABELS[entry.visibility] ?? entry.visibility}
diff --git a/app/(app)/payments/payments-client.tsx b/app/(app)/payments/payments-client.tsx
index aed5d90..043ca80 100644
--- a/app/(app)/payments/payments-client.tsx
+++ b/app/(app)/payments/payments-client.tsx
@@ -101,16 +101,15 @@ export function PaymentsClient({ payments: initialPayments, members, integration
async function handleLink(paymentId: string, memberId: string) {
setLoading(true)
const result = await linkPaymentToMember(paymentId, memberId)
- if (!result.error) {
- const linkedMember = members.find(m => m.id === memberId)
- setPayments(prev => prev.map(p => p.id === paymentId ? {
- ...p,
- member_id: memberId,
- link_status: 'linked',
- space_members: linkedMember ? { display_name: linkedMember.display_name } : null,
- } : p))
- setLinkingPayment(null)
- }
+ if (result?.error) { toast.error(result.error); setLoading(false); return }
+ const linkedMember = members.find(m => m.id === memberId)
+ setPayments(prev => prev.map(p => p.id === paymentId ? {
+ ...p,
+ member_id: memberId,
+ link_status: 'linked',
+ space_members: linkedMember ? { display_name: linkedMember.display_name } : null,
+ } : p))
+ setLinkingPayment(null)
setLoading(false)
}
@@ -273,29 +272,29 @@ export function PaymentsClient({ payments: initialPayments, members, integration