From 4d40a3f2ad7048ce52c85388b175f06487603897 Mon Sep 17 00:00:00 2001 From: ghzhost Date: Fri, 21 Aug 2026 16:30:46 +0000 Subject: [PATCH] fix(sponsor-wallet): align live error status, cross-tab wallet logout and address reconciliation (#269, #270, #283) --- src/app/connect/ConnectPanel.tsx | 24 ++++++++++++++++++++---- src/app/dashboard/sponsor/page.tsx | 2 +- src/context/WalletContext.tsx | 8 ++++++++ 3 files changed, 29 insertions(+), 5 deletions(-) diff --git a/src/app/connect/ConnectPanel.tsx b/src/app/connect/ConnectPanel.tsx index 5fe2f77..f6706d1 100644 --- a/src/app/connect/ConnectPanel.tsx +++ b/src/app/connect/ConnectPanel.tsx @@ -1,6 +1,6 @@ "use client"; -import { Code2, Wallet as WalletIcon, CheckCircle2 } from "lucide-react"; +import { Code2, Wallet as WalletIcon, CheckCircle2, AlertTriangle } from "lucide-react"; import { Button } from "@/components/ui/Button"; import { GITHUB_OAUTH_URL } from "@/lib/config"; import { useAuth } from "@/context/AuthContext"; @@ -10,6 +10,9 @@ export function ConnectPanel() { const { user } = useAuth(); const { address, network, connecting, error, connect } = useWallet(); + const addressMismatch = + Boolean(user?.stellarAddress && address && user.stellarAddress !== address); + return (
@@ -62,9 +65,22 @@ export function ConnectPanel() {
{address ? ( -
- - Connected: {address.slice(0, 4)}...{address.slice(-4)} ({network}) +
+
+ + Connected: {address.slice(0, 4)}...{address.slice(-4)} ({network}) +
+ {addressMismatch && ( +
+ +
+

Wallet address mismatch

+

+ Connected wallet ({address.slice(0, 4)}...{address.slice(-4)}) differs from your registered payout address ({user?.stellarAddress?.slice(0, 4)}...{user?.stellarAddress?.slice(-4)}). Reconnect to update your registered address. +

+
+
+ )}
) : (