This commit is contained in:
2026-08-05 18:24:41 +08:00
parent 4086b64fc0
commit 79562ecb5c
6 changed files with 83 additions and 57 deletions
+7 -18
View File
@@ -435,6 +435,10 @@ export default class HomeScreen extends Component<any, HomeScreenState> {
/** Token bind: client calls register (do not infer modal key from wallet type alone) */
handleBindSuccess = (key: keyof HomeScreenState, walletType: WalletType, msg: string) =>
async (result: any) => {
console.log('[Bind] onSuccess received:', walletType, {
success: result?.success,
cookieCount: result?.cookies ? Object.keys(result.cookies).length : undefined,
});
const finishSuccess = () => {
this.setState({ [key]: false } as any);
Alert.alert('Bind Success', msg);
@@ -453,10 +457,13 @@ export default class HomeScreen extends Component<any, HomeScreenState> {
this._pendingCardId = undefined;
try {
console.log('[Bind] Registering wallet:', walletType, cardId);
await Api.instance.register(walletType, result, cardId);
console.log('[Bind] Register completed:', walletType, cardId);
finishSuccess();
} catch (error: any) {
const errMsg = (error as Error).message || '';
console.error('[Bind] Register failed:', walletType, cardId, errMsg);
const phonePeMod = NativeModules.PhonePePersonalModule;
if (
walletType === WalletType.PHONEPE_PERSONAL
@@ -899,24 +906,6 @@ export default class HomeScreen extends Component<any, HomeScreenState> {
</Modal>
);
}
if (showFreechargePersonalBind && freechargePersonalBindType === 'tokenMode') {
return (
<Modal
visible
transparent
onRequestClose={close('showFreechargePersonalBind')}
>
<FreechargePersonalBind
apiBaseUrl={Api.BASE_URL}
userId={Api.instance.getUserId()}
processString="Processing..."
isDebug
onSuccess={this.handleBindSuccess('showFreechargePersonalBind', WalletType.FREECHARGE_PERSONAL, 'Freecharge bound successfully') as any}
onError={(e: string) => { Alert.alert('Bind Failed', e); close('showFreechargePersonalBind')(); }}
/>
</Modal>
);
}
if (showFreechargePersonalBind) {
return (
<Modal