From da0ef17a049ce25338a5afcbfc042e2fecb54b02 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20Ska=C5=82ka?= <michal.skalka@swmansion.com>
Date: Fri, 9 May 2025 10:09:30 +0200
Subject: [PATCH 01/13] Fix getting card status on iOS

---
 src/libs/Wallet/index.ios.ts | 5 +++--
 src/types/onyx/Card.ts       | 4 ++++
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/src/libs/Wallet/index.ios.ts b/src/libs/Wallet/index.ios.ts
index 565deeb7b003..f1313c3f0983 100644
--- a/src/libs/Wallet/index.ios.ts
+++ b/src/libs/Wallet/index.ios.ts
@@ -32,13 +32,14 @@ function handleAddCardToWallet(card: Card, cardHolderName: string, cardDescripti
 }
 
 function isCardInWallet(card: Card): Promise<boolean> {
-    if (card.state !== CONST.EXPENSIFY_CARD.STATE.OPEN) {
+    const panReferenceID = card.nameValuePairs?.expensifyCard_panReferenceID;
+    if (!panReferenceID) {
         return Promise.resolve(false);
     }
 
     let callback = null;
     if (card.token) {
-        callback = getCardStatusByIdentifier(card.token, ExpensifyCardNetwork);
+        callback = getCardStatusByIdentifier(panReferenceID, ExpensifyCardNetwork);
     } else if (card.lastFourPAN) {
         callback = getCardStatusBySuffix(card.lastFourPAN);
     }
diff --git a/src/types/onyx/Card.ts b/src/types/onyx/Card.ts
index 3c0c2f093078..0f67150ea64f 100644
--- a/src/types/onyx/Card.ts
+++ b/src/types/onyx/Card.ts
@@ -111,6 +111,10 @@ type Card = OnyxCommon.OnyxValueWithOfflineFeedback<{
         /** Card expiration date */
         expirationDate?: string;
 
+        /** Card's primary account identifier */
+        // eslint-disable-next-line @typescript-eslint/naming-convention
+        expensifyCard_panReferenceID?: string;
+
         /** Collection of errors coming from BE */
         errors?: OnyxCommon.Errors;
 

From f4ca7873288050089ee2c51b23693177def15764 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20Ska=C5=82ka?= <michal.skalka@swmansion.com>
Date: Mon, 12 May 2025 13:20:16 +0200
Subject: [PATCH 02/13] Update react-native-wallet library

---
 modules/expensify-react-native-wallet.tgz | Bin 850621 -> 851355 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

diff --git a/modules/expensify-react-native-wallet.tgz b/modules/expensify-react-native-wallet.tgz
index 1ae0b279de47c4622aeff9b1e6216d8eb841f3db..f87225e934bd0b91494f2d3db5eaa945be0fb83d 100644
GIT binary patch

From c24717158f06820c35c78be452fccb36d5adc644 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20Ska=C5=82ka?= <michal.skalka@swmansion.com>
Date: Mon, 12 May 2025 13:25:57 +0200
Subject: [PATCH 03/13] Update Podfile

---
 ios/Podfile.lock | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/ios/Podfile.lock b/ios/Podfile.lock
index e8c288a34d62..7951c12d2e20 100644
--- a/ios/Podfile.lock
+++ b/ios/Podfile.lock
@@ -3373,8 +3373,8 @@ SPEC CHECKSUMS:
   AirshipServiceExtension: 9c73369f426396d9fb9ff222d86d842fac76ba46
   AppAuth: 501c04eda8a8d11f179dbe8637b7a91bb7e5d2fa
   AppLogs: 3bc4e9b141dbf265b9464409caaa40416a9ee0e0
-  boost: d7090b1a93a9798c029277a8288114f2948f471c
-  DoubleConversion: f16ae600a246532c4020132d54af21d0ddb2a385
+  boost: 659a89341ea4ab3df8259733813b52f26d8be9a5
+  DoubleConversion: cb417026b2400c8f53ae97020b2be961b59470cb
   EXAV: 57ea461614a714b8b8fcc72c6fbc298b8f1ec78b
   EXImageLoader: 759063a65ab016b836f73972d3bb25404888713d
   expensify-react-native-background-task: f180077e77a41952128fdc2c83ce1d980994d125
@@ -3399,7 +3399,7 @@ SPEC CHECKSUMS:
   ForkInputMask: 55e3fbab504b22da98483e9f9a6514b98fdd2f3c
   FullStory: c8a10b2358c0d33c57be84d16e4c440b0434b33d
   fullstory_react-native: 5132c9dfa5e1ea4ec42679a708af782d4c4ec4bc
-  glog: 08b301085f15bcbb6ff8632a8ebaf239aae04e6a
+  glog: eb93e2f488219332457c3c4eafd2738ddc7e80b8
   GoogleAppMeasurement: 5ba1164e3c844ba84272555e916d0a6d3d977e91
   GoogleDataTransport: 6c09b596d841063d76d4288cc2d2f42cc36e1e2a
   GoogleSignIn: d4281ab6cf21542b1cfaff85c191f230b399d2db
@@ -3476,7 +3476,6 @@ SPEC CHECKSUMS:
   react-native-safe-area-context: b3edb1da341e5e61f865763d9e0b6d3d34706464
   react-native-view-shot: bb169342812ded991a4a0387e7d0b17cb515e62a
   react-native-wallet: 46df147c6089b2490dc5f4cbf25c58ce70b0215d
-  react-native-webrtc: 0f1c94069ff1eb9d8fb1618c2dc71f73542c8cfa
   react-native-webview: b375842af66a9f0ab979378bdc8b26eeb5d8e3ee
   React-nativeconfig: cb207ebba7cafce30657c7ad9f1587a8f32e4564
   React-NativeModulesApple: 82a8bee52df9f5b378195a500f22be3a6ef0f890

From 869e8736af7e300df2c5ddd787c6e8ae6bc2151d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20Ska=C5=82ka?= <michal.skalka@swmansion.com>
Date: Mon, 12 May 2025 13:26:46 +0200
Subject: [PATCH 04/13] Refresh a card list when the card is added to the
 wallet

---
 src/components/AddToWalletButton/index.ios.tsx |  2 +-
 src/libs/Wallet/index.ios.ts                   | 10 ++++++++--
 2 files changed, 9 insertions(+), 3 deletions(-)

diff --git a/src/components/AddToWalletButton/index.ios.tsx b/src/components/AddToWalletButton/index.ios.tsx
index ee8720213a22..3fe52a33f95b 100644
--- a/src/components/AddToWalletButton/index.ios.tsx
+++ b/src/components/AddToWalletButton/index.ios.tsx
@@ -27,7 +27,7 @@ function AddToWalletButton({card, cardHolderName, cardDescription, buttonStyle}:
 
     useEffect(() => {
         checkIfCardIsInWallet();
-    }, [checkIfCardIsInWallet]);
+    }, [checkIfCardIsInWallet, card]);
 
     useEffect(() => {
         checkIfWalletIsAvailable()
diff --git a/src/libs/Wallet/index.ios.ts b/src/libs/Wallet/index.ios.ts
index f1313c3f0983..c3f87457d8ef 100644
--- a/src/libs/Wallet/index.ios.ts
+++ b/src/libs/Wallet/index.ios.ts
@@ -1,6 +1,7 @@
 import {addCardToAppleWallet, checkWalletAvailability, getCardStatusByIdentifier, getCardStatusBySuffix} from '@expensify/react-native-wallet';
 import type {IOSCardData} from '@expensify/react-native-wallet/lib/typescript/src/NativeWallet';
 import {Alert} from 'react-native';
+import {openWalletPage} from '@libs/actions/PaymentMethods';
 import {issuerEncryptPayloadCallback} from '@libs/actions/Wallet';
 import Log from '@libs/Log';
 import CONST from '@src/CONST';
@@ -21,9 +22,14 @@ function handleAddCardToWallet(card: Card, cardHolderName: string, cardDescripti
     } as IOSCardData;
 
     addCardToAppleWallet(data, issuerEncryptPayloadCallback)
-        .then(() => {
+        .then((status) => {
             Log.info('Card added to wallet');
-            onFinished?.();
+            if (status === 'success') {
+                Log.info('Card added to wallet');
+                openWalletPage();
+            } else {
+                onFinished?.();
+            }
         })
         .catch((e) => {
             Log.warn(`handleAddCardToWallet error: ${e}`);

From dccb8873e9da734d7ff26ef39813e6559ee4ad55 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20Ska=C5=82ka?= <michal.skalka@swmansion.com>
Date: Tue, 13 May 2025 08:24:26 +0200
Subject: [PATCH 05/13] Update package-lock.json

---
 package-lock.json | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/package-lock.json b/package-lock.json
index f29b4aec398b..9ff7e76304bf 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -3839,7 +3839,7 @@
     "node_modules/@expensify/react-native-wallet": {
       "version": "0.1.0",
       "resolved": "file:modules/expensify-react-native-wallet.tgz",
-      "integrity": "sha512-Ep28REFzl0slpkCk896C4lospoa+NMQjSfrAQDD4mojJ4OWcWyNlD5bZzF5VRSENWideo7F5BdP7NI6ulZ15OQ==",
+      "integrity": "sha512-KaR2q+2X0rDp1Cd0+HyinptiurYkQgLp0Sn0HuOz+mLP1QEj7CkYqRwnGdae3bkWN5ABKMzHqWZE1RKGqzm1Wg==",
       "license": "MIT",
       "workspaces": [
         "./example"

From d7178f0ef00f8bd1131b79df8b4a6b95f959b192 Mon Sep 17 00:00:00 2001
From: Zuzanna Furtak <zuzkafurtak@gmail.com>
Date: Tue, 13 May 2025 12:36:05 +0200
Subject: [PATCH 06/13] Improve error handling

---
 .../AddToWalletButton/index.native.tsx        | 20 +++++++++--
 src/libs/Wallet/index.android.ts              | 34 ++++---------------
 src/libs/Wallet/index.ios.ts                  | 19 ++---------
 src/libs/Wallet/index.ts                      |  5 +--
 4 files changed, 29 insertions(+), 49 deletions(-)

diff --git a/src/components/AddToWalletButton/index.native.tsx b/src/components/AddToWalletButton/index.native.tsx
index 3214a9951c5b..15c3edcd320f 100644
--- a/src/components/AddToWalletButton/index.native.tsx
+++ b/src/components/AddToWalletButton/index.native.tsx
@@ -1,11 +1,14 @@
 import {AddToWalletButton as RNAddToWalletButton} from '@expensify/react-native-wallet';
+import type {TokenizationStatus} from '@expensify/react-native-wallet';
 import React, {useCallback, useEffect, useState} from 'react';
-import {ActivityIndicator, View} from 'react-native';
+import {ActivityIndicator, Alert, View} from 'react-native';
 import Text from '@components/Text';
 import useLocalize from '@hooks/useLocalize';
 import useTheme from '@hooks/useTheme';
 import useThemeStyles from '@hooks/useThemeStyles';
+import {openWalletPage} from '@libs/actions/PaymentMethods';
 import getPlatform from '@libs/getPlatform';
+import Log from '@libs/Log';
 import {handleAddCardToWallet, isCardInWallet} from '@libs/Wallet/index';
 import CONST from '@src/CONST';
 import type AddToWalletButtonProps from './types';
@@ -34,7 +37,20 @@ function AddToWalletButton({card, cardHolderName, cardDescription, buttonStyle}:
 
     const handleOnPress = useCallback(() => {
         setIsLoading(true);
-        handleAddCardToWallet(card, cardHolderName, cardDescription, () => setIsLoading(false));
+        handleAddCardToWallet(card, cardHolderName, cardDescription, () => setIsLoading(false))
+            .then((status: TokenizationStatus) => {
+                if (status === 'success') {
+                    Log.info('Card added to wallet');
+                    openWalletPage();
+                } else {
+                    setIsLoading(false);
+                }
+            })
+            .catch((error) => {
+                setIsLoading(false);
+                Log.warn(`Error while adding card to wallet: ${error}`);
+                Alert.alert('Failed to add card to wallet', 'Please try again later.');
+            });
     }, [card, cardDescription, cardHolderName]);
 
     useEffect(() => {
diff --git a/src/libs/Wallet/index.android.ts b/src/libs/Wallet/index.android.ts
index fa036806b536..9688af980150 100644
--- a/src/libs/Wallet/index.android.ts
+++ b/src/libs/Wallet/index.android.ts
@@ -1,7 +1,5 @@
 import {addCardToGoogleWallet, checkWalletAvailability, getCardStatusByIdentifier, getSecureWalletInfo} from '@expensify/react-native-wallet';
 import type {AndroidCardData, AndroidWalletData, CardStatus, TokenizationStatus} from '@expensify/react-native-wallet';
-import {Alert} from 'react-native';
-import {openWalletPage} from '@libs/actions/PaymentMethods';
 import {createDigitalGoogleWallet} from '@libs/actions/Wallet';
 import Log from '@libs/Log';
 import CONST from '@src/CONST';
@@ -11,34 +9,14 @@ function checkIfWalletIsAvailable(): Promise<boolean> {
     return checkWalletAvailability();
 }
 
-function handleAddCardToWallet(card: Card, cardHolderName: string, cardDescription: string, onFinished?: () => void) {
-    checkIfWalletIsAvailable().then((response) => {
+function handleAddCardToWallet(card: Card, cardHolderName: string): Promise<TokenizationStatus> {
+    return checkIfWalletIsAvailable().then((response) => {
         if (!response) {
-            onFinished?.();
-            return;
+            throw new Error('Wallet not available');
         }
-        getSecureWalletInfo()
-            .then((walletData: AndroidWalletData) => {
-                createDigitalGoogleWallet({cardHolderName, ...walletData})
-                    .then((cardData: AndroidCardData) => {
-                        addCardToGoogleWallet(cardData)
-                            .then((status: TokenizationStatus) => {
-                                if (status === 'success') {
-                                    Log.info('Card added to wallet');
-                                    openWalletPage();
-                                } else {
-                                    onFinished?.();
-                                }
-                            })
-                            .catch((error) => {
-                                Log.warn(`addCardToGoogleWallet error: ${error}`);
-                                Alert.alert('Failed to add card to wallet', 'Please try again later.');
-                            });
-                    })
-
-                    .catch((error) => Log.warn(`createDigitalWallet error: ${error}`));
-            })
-            .catch((error) => Log.warn(`getSecureWalletInfo error: ${error}`));
+        return getSecureWalletInfo().then((walletData: AndroidWalletData) =>
+            createDigitalGoogleWallet({cardHolderName, ...walletData}).then((cardData: AndroidCardData) => addCardToGoogleWallet(cardData)),
+        );
     });
 }
 
diff --git a/src/libs/Wallet/index.ios.ts b/src/libs/Wallet/index.ios.ts
index 44b81a0f012a..de723ba32194 100644
--- a/src/libs/Wallet/index.ios.ts
+++ b/src/libs/Wallet/index.ios.ts
@@ -1,7 +1,5 @@
 import {addCardToAppleWallet, checkWalletAvailability, getCardStatusByIdentifier, getCardStatusBySuffix} from '@expensify/react-native-wallet';
 import type {IOSCardData} from '@expensify/react-native-wallet';
-import {Alert} from 'react-native';
-import {openWalletPage} from '@libs/actions/PaymentMethods';
 import {issuerEncryptPayloadCallback} from '@libs/actions/Wallet';
 import Log from '@libs/Log';
 import CONST from '@src/CONST';
@@ -11,7 +9,7 @@ function checkIfWalletIsAvailable(): Promise<boolean> {
     return checkWalletAvailability();
 }
 
-function handleAddCardToWallet(card: Card, cardHolderName: string, cardDescription: string, onFinished?: () => void) {
+function handleAddCardToWallet(card: Card, cardHolderName: string, cardDescription: string): Promise<void> {
     const data = {
         network: CONST.COMPANY_CARDS.CARD_TYPE.VISA,
         lastDigits: card.lastFourPAN,
@@ -19,20 +17,7 @@ function handleAddCardToWallet(card: Card, cardHolderName: string, cardDescripti
         cardHolderName,
     } as IOSCardData;
 
-    addCardToAppleWallet(data, issuerEncryptPayloadCallback)
-        .then((status) => {
-            Log.info('Card added to wallet');
-            if (status === 'success') {
-                Log.info('Card added to wallet');
-                openWalletPage();
-            } else {
-                onFinished?.();
-            }
-        })
-        .catch((e) => {
-            Log.warn(`handleAddCardToWallet error: ${e}`);
-            Alert.alert('Failed to add card to wallet', 'Please try again later.');
-        });
+    return addCardToAppleWallet(data, issuerEncryptPayloadCallback);
 }
 
 function isCardInWallet(card: Card): Promise<boolean> {
diff --git a/src/libs/Wallet/index.ts b/src/libs/Wallet/index.ts
index 7707db63b35c..21f8bf240284 100644
--- a/src/libs/Wallet/index.ts
+++ b/src/libs/Wallet/index.ts
@@ -1,3 +1,4 @@
+import type {TokenizationStatus} from '@expensify/react-native-wallet';
 import type {Card} from '@src/types/onyx';
 
 function checkIfWalletIsAvailable(): Promise<boolean> {
@@ -5,8 +6,8 @@ function checkIfWalletIsAvailable(): Promise<boolean> {
 }
 
 // eslint-disable-next-line @typescript-eslint/no-unused-vars
-function handleAddCardToWallet(_card: Card, _cardHolderName: string, _cardDescription: string, _onFinished?: () => void) {
-    Promise.reject(new Error('Add to wallet is not supported on this platform'));
+function handleAddCardToWallet(_card: Card, _cardHolderName: string, _cardDescription: string, _onFinished?: () => void): Promise<TokenizationStatus> {
+    return Promise.reject(new Error('Add to wallet is not supported on this platform'));
 }
 
 // eslint-disable-next-line @typescript-eslint/no-unused-vars

From 8349d02cb16e51cb84b5dafa97911153c433720d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20Ska=C5=82ka?= <michal.skalka@swmansion.com>
Date: Tue, 13 May 2025 12:41:45 +0200
Subject: [PATCH 07/13] Fix iOS handleAddCardToWallet return type

---
 src/libs/Wallet/index.ios.ts | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/libs/Wallet/index.ios.ts b/src/libs/Wallet/index.ios.ts
index de723ba32194..8f3dd391de96 100644
--- a/src/libs/Wallet/index.ios.ts
+++ b/src/libs/Wallet/index.ios.ts
@@ -1,5 +1,5 @@
 import {addCardToAppleWallet, checkWalletAvailability, getCardStatusByIdentifier, getCardStatusBySuffix} from '@expensify/react-native-wallet';
-import type {IOSCardData} from '@expensify/react-native-wallet';
+import type {IOSCardData, TokenizationStatus} from '@expensify/react-native-wallet';
 import {issuerEncryptPayloadCallback} from '@libs/actions/Wallet';
 import Log from '@libs/Log';
 import CONST from '@src/CONST';
@@ -9,7 +9,7 @@ function checkIfWalletIsAvailable(): Promise<boolean> {
     return checkWalletAvailability();
 }
 
-function handleAddCardToWallet(card: Card, cardHolderName: string, cardDescription: string): Promise<void> {
+function handleAddCardToWallet(card: Card, cardHolderName: string, cardDescription: string): Promise<TokenizationStatus> {
     const data = {
         network: CONST.COMPANY_CARDS.CARD_TYPE.VISA,
         lastDigits: card.lastFourPAN,

From 2d31d490b626e73dc1ae9df366bd64b653238429 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20Ska=C5=82ka?= <michal.skalka@swmansion.com>
Date: Tue, 13 May 2025 14:20:21 +0200
Subject: [PATCH 08/13] Update react-native-wallet library

---
 modules/expensify-react-native-wallet.tgz | Bin 851355 -> 851246 bytes
 package-lock.json                         |   2 +-
 2 files changed, 1 insertion(+), 1 deletion(-)

diff --git a/modules/expensify-react-native-wallet.tgz b/modules/expensify-react-native-wallet.tgz
index f87225e934bd0b91494f2d3db5eaa945be0fb83d..9f4490ee81634bee98d8510137b7aa3d6fd4e326 100644
GIT binary patch
diff --git a/package-lock.json b/package-lock.json
index 0bcba9670da2..a3b3fdb3f406 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -3839,7 +3839,7 @@
     "node_modules/@expensify/react-native-wallet": {
       "version": "0.1.0",
       "resolved": "file:modules/expensify-react-native-wallet.tgz",
-      "integrity": "sha512-KaR2q+2X0rDp1Cd0+HyinptiurYkQgLp0Sn0HuOz+mLP1QEj7CkYqRwnGdae3bkWN5ABKMzHqWZE1RKGqzm1Wg==",
+      "integrity": "sha512-QQ66ohFuI+vCdGsrdUcZi/NkJMSIcNd2FVCoCPdxphVTcRj6t/83re031jlbtsCBOms0NTqrLqy/gFQxazUodQ==",
       "license": "MIT",
       "workspaces": [
         "./example"

From 54cf6c101b67c88371f9bd48749a5e0fa6c617b6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20Ska=C5=82ka?= <michal.skalka@swmansion.com>
Date: Thu, 15 May 2025 15:58:02 +0200
Subject: [PATCH 09/13] Remove submodule change

---
 Mobile-Expensify | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Mobile-Expensify b/Mobile-Expensify
index 787ffe4b8892..eeb73ca1f3ca 160000
--- a/Mobile-Expensify
+++ b/Mobile-Expensify
@@ -1 +1 @@
-Subproject commit 787ffe4b8892e772dcb8151ef293da77d7fe487b
+Subproject commit eeb73ca1f3ca1c13b144b7b169b17dd82c76ea71

From 9abd03b1c29a4179d312db9b066e57c20f2ce0ca Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20Ska=C5=82ka?= <michal.skalka@swmansion.com>
Date: Thu, 15 May 2025 17:15:18 +0200
Subject: [PATCH 10/13] Update react-native-wallet library

---
 modules/expensify-react-native-wallet.tgz | Bin 851246 -> 851507 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)

diff --git a/modules/expensify-react-native-wallet.tgz b/modules/expensify-react-native-wallet.tgz
index 9f4490ee81634bee98d8510137b7aa3d6fd4e326..4341827d4d9fc21d84c804bda96f0d31560a79d4 100644
GIT binary patch

From a1d928679bea6945f7c60b7021befcf12796a822 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20Ska=C5=82ka?= <michal.skalka@swmansion.com>
Date: Thu, 15 May 2025 17:16:09 +0200
Subject: [PATCH 11/13] Remove Podfile.lock changes

---
 ios/Podfile.lock | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/ios/Podfile.lock b/ios/Podfile.lock
index 7951c12d2e20..e8c288a34d62 100644
--- a/ios/Podfile.lock
+++ b/ios/Podfile.lock
@@ -3373,8 +3373,8 @@ SPEC CHECKSUMS:
   AirshipServiceExtension: 9c73369f426396d9fb9ff222d86d842fac76ba46
   AppAuth: 501c04eda8a8d11f179dbe8637b7a91bb7e5d2fa
   AppLogs: 3bc4e9b141dbf265b9464409caaa40416a9ee0e0
-  boost: 659a89341ea4ab3df8259733813b52f26d8be9a5
-  DoubleConversion: cb417026b2400c8f53ae97020b2be961b59470cb
+  boost: d7090b1a93a9798c029277a8288114f2948f471c
+  DoubleConversion: f16ae600a246532c4020132d54af21d0ddb2a385
   EXAV: 57ea461614a714b8b8fcc72c6fbc298b8f1ec78b
   EXImageLoader: 759063a65ab016b836f73972d3bb25404888713d
   expensify-react-native-background-task: f180077e77a41952128fdc2c83ce1d980994d125
@@ -3399,7 +3399,7 @@ SPEC CHECKSUMS:
   ForkInputMask: 55e3fbab504b22da98483e9f9a6514b98fdd2f3c
   FullStory: c8a10b2358c0d33c57be84d16e4c440b0434b33d
   fullstory_react-native: 5132c9dfa5e1ea4ec42679a708af782d4c4ec4bc
-  glog: eb93e2f488219332457c3c4eafd2738ddc7e80b8
+  glog: 08b301085f15bcbb6ff8632a8ebaf239aae04e6a
   GoogleAppMeasurement: 5ba1164e3c844ba84272555e916d0a6d3d977e91
   GoogleDataTransport: 6c09b596d841063d76d4288cc2d2f42cc36e1e2a
   GoogleSignIn: d4281ab6cf21542b1cfaff85c191f230b399d2db
@@ -3476,6 +3476,7 @@ SPEC CHECKSUMS:
   react-native-safe-area-context: b3edb1da341e5e61f865763d9e0b6d3d34706464
   react-native-view-shot: bb169342812ded991a4a0387e7d0b17cb515e62a
   react-native-wallet: 46df147c6089b2490dc5f4cbf25c58ce70b0215d
+  react-native-webrtc: 0f1c94069ff1eb9d8fb1618c2dc71f73542c8cfa
   react-native-webview: b375842af66a9f0ab979378bdc8b26eeb5d8e3ee
   React-nativeconfig: cb207ebba7cafce30657c7ad9f1587a8f32e4564
   React-NativeModulesApple: 82a8bee52df9f5b378195a500f22be3a6ef0f890

From 4ec36b9cda7ac229276b88d53b5806759689c91a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20Ska=C5=82ka?= <michal.skalka@swmansion.com>
Date: Thu, 15 May 2025 17:20:15 +0200
Subject: [PATCH 12/13] Update package-lock.json

---
 package-lock.json | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/package-lock.json b/package-lock.json
index aa1a6e0607e3..c2ba1fd4adb6 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -3841,7 +3841,7 @@
     "node_modules/@expensify/react-native-wallet": {
       "version": "0.1.0",
       "resolved": "file:modules/expensify-react-native-wallet.tgz",
-      "integrity": "sha512-QQ66ohFuI+vCdGsrdUcZi/NkJMSIcNd2FVCoCPdxphVTcRj6t/83re031jlbtsCBOms0NTqrLqy/gFQxazUodQ==",
+      "integrity": "sha512-1nMDZVHQRBRcHX0BRbOxYfeAUXuGYS8oBV1sOUGbwaOSGh39IkBrNBozBF8vDv5zYrPSxlhYs8oZYV5J5u+gJA==",
       "license": "MIT",
       "workspaces": [
         "./example"

From 6a457cac5eaf5806973ba41aea560c6a55daddb8 Mon Sep 17 00:00:00 2001
From: Zuzanna Furtak <zuzkafurtak@gmail.com>
Date: Fri, 16 May 2025 13:57:28 +0200
Subject: [PATCH 13/13] Remove useless check of wallet availability

---
 src/libs/Wallet/index.android.ts | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

diff --git a/src/libs/Wallet/index.android.ts b/src/libs/Wallet/index.android.ts
index 289d7caf81cd..bc0388deb36b 100644
--- a/src/libs/Wallet/index.android.ts
+++ b/src/libs/Wallet/index.android.ts
@@ -9,14 +9,9 @@ function checkIfWalletIsAvailable(): Promise<boolean> {
 }
 
 function handleAddCardToWallet(card: Card, cardHolderName: string): Promise<TokenizationStatus> {
-    return checkIfWalletIsAvailable().then((response) => {
-        if (!response) {
-            throw new Error('Wallet not available');
-        }
-        return getSecureWalletInfo().then((walletData: AndroidWalletData) =>
-            createDigitalGoogleWallet({cardHolderName, ...walletData}).then((cardData: AndroidCardData) => addCardToGoogleWallet(cardData)),
-        );
-    });
+    return getSecureWalletInfo().then((walletData: AndroidWalletData) =>
+        createDigitalGoogleWallet({cardHolderName, ...walletData}).then((cardData: AndroidCardData) => addCardToGoogleWallet(cardData)),
+    );
 }
 
 function isCardInWallet(card: Card): Promise<boolean> {
