diff --git a/package.json b/package.json index 6fd78bf1..5e56b9db 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "minibits_wallet", - "version": "0.1.8-beta.46", + "version": "0.1.8-beta.47", "private": true, "scripts": { "android:clean": "cd android && ./gradlew clean", diff --git a/src/screens/ReceiveScreen.tsx b/src/screens/ReceiveScreen.tsx index d4ca1b58..325d7995 100644 --- a/src/screens/ReceiveScreen.tsx +++ b/src/screens/ReceiveScreen.tsx @@ -39,7 +39,7 @@ import { translate } from '../i18n' export const ReceiveScreen: FC> = observer( function ReceiveScreen({route, navigation}) { const isInternetReachable = useIsInternetReachable() - const {mintsStore} = useStores() + const {mintsStore, walletStore} = useStores() const [token, setToken] = useState() const [encodedToken, setEncodedToken] = useState() @@ -83,7 +83,7 @@ export const ReceiveScreen: FC> = observer( setIsLoading(false) - const {error, message, transaction, receivedAmount} = result + const {error, message, transaction, receivedAmount, mintUrl} = result const {status} = transaction as Transaction setTransactionStatus(status) @@ -186,6 +186,33 @@ export const ReceiveScreen: FC> = observer( } + const increaseProofsCounterAndRetry = async function () { + try { + if(!transaction) { + return + } + + const {mint} = transaction + const walletInstance = await walletStore.getWallet( + mint, + unit, + {withSeed: true} + ) + + const mintInstance = mintsStore.findByUrl(mint) + const counter = mintInstance!.getProofsCounterByKeysetId!(walletInstance.keys.id) + counter!.increaseProofsCounter(50) + + // retry receive + receiveToken() + } catch (e: any) { + handleError(e) + } finally { + toggleResultModal() //close + } + } + + const receiveOfflineToken = async function () { setIsLoading(true) setIsReceiveTaskSentToQueue(true) @@ -434,11 +461,19 @@ export const ReceiveScreen: FC> = observer( message={resultModalInfo?.message as string} /> -