@reown/appkit-core-react-native 0.0.0-fix-approved-networks-20250822000414 → 0.0.0-fix-ui-changes-20250828183750
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/controllers/ApiController.js +75 -38
- package/lib/commonjs/controllers/ApiController.js.map +1 -1
- package/lib/commonjs/controllers/AssetController.js +0 -4
- package/lib/commonjs/controllers/AssetController.js.map +1 -1
- package/lib/commonjs/controllers/BlockchainApiController.js +156 -57
- package/lib/commonjs/controllers/BlockchainApiController.js.map +1 -1
- package/lib/commonjs/controllers/ConnectionsController.js +402 -0
- package/lib/commonjs/controllers/ConnectionsController.js.map +1 -0
- package/lib/commonjs/controllers/EnsController.js.map +1 -1
- package/lib/commonjs/controllers/EventsController.js.map +1 -1
- package/lib/commonjs/controllers/ModalController.js +6 -7
- package/lib/commonjs/controllers/ModalController.js.map +1 -1
- package/lib/commonjs/controllers/OnRampController.js +29 -19
- package/lib/commonjs/controllers/OnRampController.js.map +1 -1
- package/lib/commonjs/controllers/OptionsController.js +22 -7
- package/lib/commonjs/controllers/OptionsController.js.map +1 -1
- package/lib/commonjs/controllers/PublicStateController.js.map +1 -1
- package/lib/commonjs/controllers/RouterController.js +7 -22
- package/lib/commonjs/controllers/RouterController.js.map +1 -1
- package/lib/commonjs/controllers/SendController.js +96 -96
- package/lib/commonjs/controllers/SendController.js.map +1 -1
- package/lib/commonjs/controllers/SnackController.js +29 -5
- package/lib/commonjs/controllers/SnackController.js.map +1 -1
- package/lib/commonjs/controllers/SwapController.js +154 -151
- package/lib/commonjs/controllers/SwapController.js.map +1 -1
- package/lib/commonjs/controllers/ThemeController.js +9 -1
- package/lib/commonjs/controllers/ThemeController.js.map +1 -1
- package/lib/commonjs/controllers/TransactionsController.js +22 -18
- package/lib/commonjs/controllers/TransactionsController.js.map +1 -1
- package/lib/commonjs/controllers/WcController.js +73 -0
- package/lib/commonjs/controllers/WcController.js.map +1 -0
- package/lib/commonjs/index.js +13 -41
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/package.json +1 -0
- package/lib/commonjs/utils/ApiUtil.js.map +1 -1
- package/lib/commonjs/utils/AssetUtil.js +8 -18
- package/lib/commonjs/utils/AssetUtil.js.map +1 -1
- package/lib/commonjs/utils/ConstantsUtil.js +122 -5
- package/lib/commonjs/utils/ConstantsUtil.js.map +1 -1
- package/lib/commonjs/utils/CoreHelperUtil.js +19 -7
- package/lib/commonjs/utils/CoreHelperUtil.js.map +1 -1
- package/lib/commonjs/utils/EventUtil.js.map +1 -1
- package/lib/commonjs/utils/FetchUtil.js.map +1 -1
- package/lib/commonjs/utils/RouterUtil.js.map +1 -1
- package/lib/commonjs/utils/StorageUtil.js +90 -108
- package/lib/commonjs/utils/StorageUtil.js.map +1 -1
- package/lib/commonjs/utils/SwapApiUtil.js +15 -21
- package/lib/commonjs/utils/SwapApiUtil.js.map +1 -1
- package/lib/commonjs/utils/SwapCalculationUtil.js.map +1 -1
- package/lib/commonjs/utils/WalletUtil.js +23 -0
- package/lib/commonjs/utils/WalletUtil.js.map +1 -0
- package/lib/module/controllers/ApiController.js +77 -38
- package/lib/module/controllers/ApiController.js.map +1 -1
- package/lib/module/controllers/AssetController.js +2 -4
- package/lib/module/controllers/AssetController.js.map +1 -1
- package/lib/module/controllers/BlockchainApiController.js +158 -57
- package/lib/module/controllers/BlockchainApiController.js.map +1 -1
- package/lib/module/controllers/ConnectionsController.js +399 -0
- package/lib/module/controllers/ConnectionsController.js.map +1 -0
- package/lib/module/controllers/EnsController.js +2 -0
- package/lib/module/controllers/EnsController.js.map +1 -1
- package/lib/module/controllers/EventsController.js +2 -0
- package/lib/module/controllers/EventsController.js.map +1 -1
- package/lib/module/controllers/ModalController.js +8 -7
- package/lib/module/controllers/ModalController.js.map +1 -1
- package/lib/module/controllers/OnRampController.js +27 -15
- package/lib/module/controllers/OnRampController.js.map +1 -1
- package/lib/module/controllers/OptionsController.js +24 -7
- package/lib/module/controllers/OptionsController.js.map +1 -1
- package/lib/module/controllers/PublicStateController.js +2 -0
- package/lib/module/controllers/PublicStateController.js.map +1 -1
- package/lib/module/controllers/RouterController.js +9 -22
- package/lib/module/controllers/RouterController.js.map +1 -1
- package/lib/module/controllers/SendController.js +98 -96
- package/lib/module/controllers/SendController.js.map +1 -1
- package/lib/module/controllers/SnackController.js +31 -5
- package/lib/module/controllers/SnackController.js.map +1 -1
- package/lib/module/controllers/SwapController.js +156 -151
- package/lib/module/controllers/SwapController.js.map +1 -1
- package/lib/module/controllers/ThemeController.js +11 -1
- package/lib/module/controllers/ThemeController.js.map +1 -1
- package/lib/module/controllers/TransactionsController.js +24 -18
- package/lib/module/controllers/TransactionsController.js.map +1 -1
- package/lib/module/controllers/WcController.js +70 -0
- package/lib/module/controllers/WcController.js.map +1 -0
- package/lib/module/index.js +7 -7
- package/lib/module/index.js.map +1 -1
- package/lib/module/utils/ApiUtil.js +2 -0
- package/lib/module/utils/ApiUtil.js.map +1 -1
- package/lib/module/utils/AssetUtil.js +10 -18
- package/lib/module/utils/AssetUtil.js.map +1 -1
- package/lib/module/utils/ConstantsUtil.js +124 -5
- package/lib/module/utils/ConstantsUtil.js.map +1 -1
- package/lib/module/utils/CoreHelperUtil.js +21 -5
- package/lib/module/utils/CoreHelperUtil.js.map +1 -1
- package/lib/module/utils/EventUtil.js +2 -0
- package/lib/module/utils/EventUtil.js.map +1 -1
- package/lib/module/utils/FetchUtil.js +2 -0
- package/lib/module/utils/FetchUtil.js.map +1 -1
- package/lib/module/utils/RouterUtil.js +2 -0
- package/lib/module/utils/RouterUtil.js.map +1 -1
- package/lib/module/utils/StorageUtil.js +93 -108
- package/lib/module/utils/StorageUtil.js.map +1 -1
- package/lib/module/utils/SwapApiUtil.js +17 -21
- package/lib/module/utils/SwapApiUtil.js.map +1 -1
- package/lib/module/utils/SwapCalculationUtil.js +3 -0
- package/lib/module/utils/SwapCalculationUtil.js.map +1 -1
- package/lib/module/utils/WalletUtil.js +19 -0
- package/lib/module/utils/WalletUtil.js.map +1 -0
- package/lib/typescript/controllers/ApiController.d.ts +4 -5
- package/lib/typescript/controllers/ApiController.d.ts.map +1 -1
- package/lib/typescript/controllers/AssetController.d.ts +0 -2
- package/lib/typescript/controllers/AssetController.d.ts.map +1 -1
- package/lib/typescript/controllers/BlockchainApiController.d.ts +29 -11
- package/lib/typescript/controllers/BlockchainApiController.d.ts.map +1 -1
- package/lib/typescript/controllers/ConnectionsController.d.ts +45 -0
- package/lib/typescript/controllers/ConnectionsController.d.ts.map +1 -0
- package/lib/typescript/controllers/EnsController.d.ts +1 -1
- package/lib/typescript/controllers/EventsController.d.ts +1 -1
- package/lib/typescript/controllers/EventsController.d.ts.map +1 -1
- package/lib/typescript/controllers/ModalController.d.ts.map +1 -1
- package/lib/typescript/controllers/OnRampController.d.ts +2 -2
- package/lib/typescript/controllers/OnRampController.d.ts.map +1 -1
- package/lib/typescript/controllers/OptionsController.d.ts +9 -4
- package/lib/typescript/controllers/OptionsController.d.ts.map +1 -1
- package/lib/typescript/controllers/PublicStateController.d.ts +1 -1
- package/lib/typescript/controllers/PublicStateController.d.ts.map +1 -1
- package/lib/typescript/controllers/RouterController.d.ts +6 -20
- package/lib/typescript/controllers/RouterController.d.ts.map +1 -1
- package/lib/typescript/controllers/SendController.d.ts +5 -7
- package/lib/typescript/controllers/SendController.d.ts.map +1 -1
- package/lib/typescript/controllers/SnackController.d.ts +3 -3
- package/lib/typescript/controllers/SnackController.d.ts.map +1 -1
- package/lib/typescript/controllers/SwapController.d.ts +12 -12
- package/lib/typescript/controllers/SwapController.d.ts.map +1 -1
- package/lib/typescript/controllers/ThemeController.d.ts +1 -1
- package/lib/typescript/controllers/ThemeController.d.ts.map +1 -1
- package/lib/typescript/controllers/TransactionsController.d.ts +3 -3
- package/lib/typescript/controllers/TransactionsController.d.ts.map +1 -1
- package/lib/typescript/controllers/WcController.d.ts +27 -0
- package/lib/typescript/controllers/WcController.d.ts.map +1 -0
- package/lib/typescript/index.d.ts +3 -8
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/utils/AssetUtil.d.ts +3 -4
- package/lib/typescript/utils/AssetUtil.d.ts.map +1 -1
- package/lib/typescript/utils/ConstantsUtil.d.ts +12 -2
- package/lib/typescript/utils/ConstantsUtil.d.ts.map +1 -1
- package/lib/typescript/utils/CoreHelperUtil.d.ts +5 -4
- package/lib/typescript/utils/CoreHelperUtil.d.ts.map +1 -1
- package/lib/typescript/utils/EventUtil.d.ts +1 -1
- package/lib/typescript/utils/EventUtil.d.ts.map +1 -1
- package/lib/typescript/utils/FetchUtil.d.ts +2 -2
- package/lib/typescript/utils/FetchUtil.d.ts.map +1 -1
- package/lib/typescript/utils/StorageUtil.d.ts +15 -16
- package/lib/typescript/utils/StorageUtil.d.ts.map +1 -1
- package/lib/typescript/utils/SwapApiUtil.d.ts +3 -4
- package/lib/typescript/utils/SwapApiUtil.d.ts.map +1 -1
- package/lib/typescript/utils/SwapCalculationUtil.d.ts +1 -1
- package/lib/typescript/utils/SwapCalculationUtil.d.ts.map +1 -1
- package/lib/typescript/utils/WalletUtil.d.ts +5 -0
- package/lib/typescript/utils/WalletUtil.d.ts.map +1 -0
- package/package.json +8 -22
- package/src/controllers/ApiController.ts +83 -40
- package/src/controllers/AssetController.ts +0 -6
- package/src/controllers/BlockchainApiController.ts +136 -44
- package/src/controllers/ConnectionsController.ts +521 -0
- package/src/controllers/EnsController.ts +1 -1
- package/src/controllers/EventsController.ts +1 -1
- package/src/controllers/ModalController.ts +6 -7
- package/src/controllers/OnRampController.ts +37 -18
- package/src/controllers/OptionsController.ts +37 -14
- package/src/controllers/PublicStateController.ts +1 -1
- package/src/controllers/RouterController.ts +17 -54
- package/src/controllers/SendController.ts +122 -111
- package/src/controllers/SnackController.ts +31 -5
- package/src/controllers/SwapController.ts +177 -183
- package/src/controllers/ThemeController.ts +11 -2
- package/src/controllers/TransactionsController.ts +25 -19
- package/src/controllers/WcController.ts +93 -0
- package/src/index.ts +6 -20
- package/src/utils/AssetUtil.ts +9 -22
- package/src/utils/ConstantsUtil.ts +126 -6
- package/src/utils/CoreHelperUtil.ts +45 -7
- package/src/utils/EventUtil.ts +1 -1
- package/src/utils/FetchUtil.ts +2 -2
- package/src/utils/StorageUtil.ts +163 -131
- package/src/utils/SwapApiUtil.ts +30 -37
- package/src/utils/SwapCalculationUtil.ts +1 -2
- package/src/utils/WalletUtil.ts +14 -0
- package/lib/commonjs/controllers/AccountController.js +0 -93
- package/lib/commonjs/controllers/AccountController.js.map +0 -1
- package/lib/commonjs/controllers/ConnectionController.js +0 -126
- package/lib/commonjs/controllers/ConnectionController.js.map +0 -1
- package/lib/commonjs/controllers/ConnectorController.js +0 -49
- package/lib/commonjs/controllers/ConnectorController.js.map +0 -1
- package/lib/commonjs/controllers/NetworkController.js +0 -90
- package/lib/commonjs/controllers/NetworkController.js.map +0 -1
- package/lib/commonjs/controllers/WebviewController.js +0 -52
- package/lib/commonjs/controllers/WebviewController.js.map +0 -1
- package/lib/commonjs/utils/ConnectionUtil.js +0 -33
- package/lib/commonjs/utils/ConnectionUtil.js.map +0 -1
- package/lib/commonjs/utils/NetworkUtil.js +0 -46
- package/lib/commonjs/utils/NetworkUtil.js.map +0 -1
- package/lib/commonjs/utils/TypeUtil.js +0 -35
- package/lib/commonjs/utils/TypeUtil.js.map +0 -1
- package/lib/module/controllers/AccountController.js +0 -88
- package/lib/module/controllers/AccountController.js.map +0 -1
- package/lib/module/controllers/ConnectionController.js +0 -121
- package/lib/module/controllers/ConnectionController.js.map +0 -1
- package/lib/module/controllers/ConnectorController.js +0 -44
- package/lib/module/controllers/ConnectorController.js.map +0 -1
- package/lib/module/controllers/NetworkController.js +0 -85
- package/lib/module/controllers/NetworkController.js.map +0 -1
- package/lib/module/controllers/WebviewController.js +0 -47
- package/lib/module/controllers/WebviewController.js.map +0 -1
- package/lib/module/utils/ConnectionUtil.js +0 -27
- package/lib/module/utils/ConnectionUtil.js.map +0 -1
- package/lib/module/utils/NetworkUtil.js +0 -40
- package/lib/module/utils/NetworkUtil.js.map +0 -1
- package/lib/module/utils/TypeUtil.js +0 -28
- package/lib/module/utils/TypeUtil.js.map +0 -1
- package/lib/typescript/controllers/AccountController.d.ts +0 -33
- package/lib/typescript/controllers/AccountController.d.ts.map +0 -1
- package/lib/typescript/controllers/ConnectionController.d.ts +0 -66
- package/lib/typescript/controllers/ConnectionController.d.ts.map +0 -1
- package/lib/typescript/controllers/ConnectorController.d.ts +0 -18
- package/lib/typescript/controllers/ConnectorController.d.ts.map +0 -1
- package/lib/typescript/controllers/NetworkController.d.ts +0 -35
- package/lib/typescript/controllers/NetworkController.d.ts.map +0 -1
- package/lib/typescript/controllers/WebviewController.d.ts +0 -21
- package/lib/typescript/controllers/WebviewController.d.ts.map +0 -1
- package/lib/typescript/utils/ConnectionUtil.d.ts +0 -4
- package/lib/typescript/utils/ConnectionUtil.d.ts.map +0 -1
- package/lib/typescript/utils/NetworkUtil.d.ts +0 -8
- package/lib/typescript/utils/NetworkUtil.d.ts.map +0 -1
- package/lib/typescript/utils/TypeUtil.d.ts +0 -850
- package/lib/typescript/utils/TypeUtil.d.ts.map +0 -1
- package/src/controllers/AccountController.ts +0 -128
- package/src/controllers/ConnectionController.ts +0 -200
- package/src/controllers/ConnectorController.ts +0 -63
- package/src/controllers/NetworkController.ts +0 -120
- package/src/controllers/WebviewController.ts +0 -63
- package/src/utils/ConnectionUtil.ts +0 -27
- package/src/utils/NetworkUtil.ts +0 -33
- package/src/utils/TypeUtil.ts +0 -1039
package/src/utils/StorageUtil.ts
CHANGED
|
@@ -1,37 +1,27 @@
|
|
|
1
1
|
/* eslint-disable no-console */
|
|
2
|
-
import AsyncStorage from '@react-native-async-storage/async-storage';
|
|
3
|
-
import type {
|
|
4
|
-
OnRampCountry,
|
|
5
|
-
OnRampCountryDefaults,
|
|
6
|
-
OnRampFiatCurrency,
|
|
7
|
-
OnRampFiatLimit,
|
|
8
|
-
OnRampServiceProvider,
|
|
9
|
-
WcWallet
|
|
10
|
-
} from './TypeUtil';
|
|
11
2
|
import {
|
|
3
|
+
type OnRampCountry,
|
|
4
|
+
type OnRampFiatCurrency,
|
|
5
|
+
type OnRampFiatLimit,
|
|
6
|
+
type OnRampServiceProvider,
|
|
7
|
+
type OnRampCountryDefaults,
|
|
8
|
+
type WcWallet,
|
|
12
9
|
DateUtil,
|
|
13
|
-
type
|
|
14
|
-
type
|
|
10
|
+
type ConnectorType,
|
|
11
|
+
type ChainNamespace,
|
|
12
|
+
type WalletDeepLink,
|
|
13
|
+
ConstantsUtil
|
|
15
14
|
} from '@reown/appkit-common-react-native';
|
|
15
|
+
import { OptionsController } from '../controllers/OptionsController';
|
|
16
16
|
|
|
17
|
-
// -- Helpers -----------------------------------------------------------------
|
|
18
|
-
const WC_DEEPLINK = 'WALLETCONNECT_DEEPLINK_CHOICE';
|
|
19
|
-
const RECENT_WALLET = '@w3m/recent';
|
|
20
|
-
const CONNECTED_WALLET_IMAGE_URL = '@w3m/connected_wallet_image_url';
|
|
21
|
-
const CONNECTED_CONNECTOR = '@w3m/connected_connector';
|
|
22
|
-
const CONNECTED_SOCIAL = '@appkit/connected_social';
|
|
23
|
-
const ONRAMP_PREFERRED_COUNTRY = '@appkit/onramp_preferred_country';
|
|
24
|
-
const ONRAMP_COUNTRIES = '@appkit/onramp_countries';
|
|
25
|
-
const ONRAMP_COUNTRIES_DEFAULTS = '@appkit/onramp_countries_defaults';
|
|
26
|
-
const ONRAMP_SERVICE_PROVIDERS = '@appkit/onramp_service_providers';
|
|
27
|
-
const ONRAMP_FIAT_LIMITS = '@appkit/onramp_fiat_limits';
|
|
28
|
-
const ONRAMP_FIAT_CURRENCIES = '@appkit/onramp_fiat_currencies';
|
|
29
|
-
const ONRAMP_PREFERRED_FIAT_CURRENCY = '@appkit/onramp_preferred_fiat_currency';
|
|
30
17
|
// -- Utility -----------------------------------------------------------------
|
|
31
18
|
export const StorageUtil = {
|
|
32
|
-
setWalletConnectDeepLink({ href, name }:
|
|
19
|
+
setWalletConnectDeepLink({ href, name }: WalletDeepLink) {
|
|
33
20
|
try {
|
|
34
|
-
|
|
21
|
+
OptionsController.getStorage().setItem(ConstantsUtil.STORAGE_KEYS.WC_DEEPLINK, {
|
|
22
|
+
href,
|
|
23
|
+
name
|
|
24
|
+
});
|
|
35
25
|
} catch {
|
|
36
26
|
console.info('Unable to set WalletConnect deep link');
|
|
37
27
|
}
|
|
@@ -39,9 +29,11 @@ export const StorageUtil = {
|
|
|
39
29
|
|
|
40
30
|
async getWalletConnectDeepLink() {
|
|
41
31
|
try {
|
|
42
|
-
const deepLink = await
|
|
32
|
+
const deepLink = await OptionsController.getStorage().getItem<WalletDeepLink>(
|
|
33
|
+
ConstantsUtil.STORAGE_KEYS.WC_DEEPLINK
|
|
34
|
+
);
|
|
43
35
|
if (deepLink) {
|
|
44
|
-
return
|
|
36
|
+
return deepLink;
|
|
45
37
|
}
|
|
46
38
|
} catch {
|
|
47
39
|
console.info('Unable to get WalletConnect deep link');
|
|
@@ -52,9 +44,9 @@ export const StorageUtil = {
|
|
|
52
44
|
|
|
53
45
|
async removeWalletConnectDeepLink() {
|
|
54
46
|
try {
|
|
55
|
-
await
|
|
47
|
+
await OptionsController.getStorage().removeItem(ConstantsUtil.STORAGE_KEYS.WC_DEEPLINK);
|
|
56
48
|
} catch {
|
|
57
|
-
console.info('Unable to
|
|
49
|
+
console.info('Unable to remove WalletConnect deep link');
|
|
58
50
|
}
|
|
59
51
|
},
|
|
60
52
|
|
|
@@ -71,7 +63,10 @@ export const StorageUtil = {
|
|
|
71
63
|
if (recentWallets.length > 2) {
|
|
72
64
|
recentWallets.pop();
|
|
73
65
|
}
|
|
74
|
-
|
|
66
|
+
OptionsController.getStorage().setItem(
|
|
67
|
+
ConstantsUtil.STORAGE_KEYS.RECENT_WALLET,
|
|
68
|
+
recentWallets
|
|
69
|
+
);
|
|
75
70
|
|
|
76
71
|
return recentWallets;
|
|
77
72
|
} catch {
|
|
@@ -83,7 +78,10 @@ export const StorageUtil = {
|
|
|
83
78
|
|
|
84
79
|
async setRecentWallets(wallets: WcWallet[]) {
|
|
85
80
|
try {
|
|
86
|
-
await
|
|
81
|
+
await OptionsController.getStorage().setItem(
|
|
82
|
+
ConstantsUtil.STORAGE_KEYS.RECENT_WALLET,
|
|
83
|
+
wallets
|
|
84
|
+
);
|
|
87
85
|
} catch {
|
|
88
86
|
console.info('Unable to set recent wallets');
|
|
89
87
|
}
|
|
@@ -91,9 +89,11 @@ export const StorageUtil = {
|
|
|
91
89
|
|
|
92
90
|
async getRecentWallets(): Promise<WcWallet[]> {
|
|
93
91
|
try {
|
|
94
|
-
const recent = await
|
|
92
|
+
const recent = await OptionsController.getStorage().getItem(
|
|
93
|
+
ConstantsUtil.STORAGE_KEYS.RECENT_WALLET
|
|
94
|
+
);
|
|
95
95
|
|
|
96
|
-
return recent
|
|
96
|
+
return recent ?? [];
|
|
97
97
|
} catch {
|
|
98
98
|
console.info('Unable to get recent wallets');
|
|
99
99
|
}
|
|
@@ -101,91 +101,61 @@ export const StorageUtil = {
|
|
|
101
101
|
return [];
|
|
102
102
|
},
|
|
103
103
|
|
|
104
|
-
async
|
|
104
|
+
async setConnectedConnectors({
|
|
105
|
+
type,
|
|
106
|
+
namespaces
|
|
107
|
+
}: {
|
|
108
|
+
type: ConnectorType;
|
|
109
|
+
namespaces: string[];
|
|
110
|
+
}) {
|
|
105
111
|
try {
|
|
106
|
-
|
|
112
|
+
const currentConnectors = (await StorageUtil.getConnectedConnectors()) || [];
|
|
113
|
+
// Only add if it doesn't exist already
|
|
114
|
+
if (!currentConnectors.some(c => c.type === type)) {
|
|
115
|
+
const updatedConnectors = [...currentConnectors, { type, namespaces }];
|
|
116
|
+
await OptionsController.getStorage().setItem(
|
|
117
|
+
ConstantsUtil.STORAGE_KEYS.CONNECTED_CONNECTORS,
|
|
118
|
+
updatedConnectors
|
|
119
|
+
);
|
|
120
|
+
}
|
|
107
121
|
} catch {
|
|
108
122
|
console.info('Unable to set Connected Connector');
|
|
109
123
|
}
|
|
110
124
|
},
|
|
111
125
|
|
|
112
|
-
async
|
|
126
|
+
async getConnectedConnectors(): Promise<{ type: ConnectorType; namespaces: string[] }[]> {
|
|
113
127
|
try {
|
|
114
|
-
const
|
|
128
|
+
const connectors = await OptionsController.getStorage().getItem<
|
|
129
|
+
{ type: ConnectorType; namespaces: string[] }[]
|
|
130
|
+
>(ConstantsUtil.STORAGE_KEYS.CONNECTED_CONNECTORS);
|
|
115
131
|
|
|
116
|
-
return
|
|
117
|
-
} catch {
|
|
132
|
+
return connectors ?? [];
|
|
133
|
+
} catch (err) {
|
|
118
134
|
console.info('Unable to get Connected Connector');
|
|
119
135
|
}
|
|
120
136
|
|
|
121
|
-
return
|
|
137
|
+
return [];
|
|
122
138
|
},
|
|
123
139
|
|
|
124
|
-
async
|
|
140
|
+
async removeConnectedConnectors(type: ConnectorType) {
|
|
125
141
|
try {
|
|
126
|
-
await
|
|
142
|
+
const currentConnectors = await StorageUtil.getConnectedConnectors();
|
|
143
|
+
const updatedConnectors = currentConnectors.filter(c => c.type !== type);
|
|
144
|
+
await OptionsController.getStorage().setItem(
|
|
145
|
+
ConstantsUtil.STORAGE_KEYS.CONNECTED_CONNECTORS,
|
|
146
|
+
updatedConnectors
|
|
147
|
+
);
|
|
127
148
|
} catch {
|
|
128
149
|
console.info('Unable to remove Connected Connector');
|
|
129
150
|
}
|
|
130
151
|
},
|
|
131
152
|
|
|
132
|
-
async setConnectedWalletImageUrl(url: string) {
|
|
133
|
-
try {
|
|
134
|
-
await AsyncStorage.setItem(CONNECTED_WALLET_IMAGE_URL, url);
|
|
135
|
-
} catch {
|
|
136
|
-
console.info('Unable to set Connected Wallet Image URL');
|
|
137
|
-
}
|
|
138
|
-
},
|
|
139
|
-
|
|
140
|
-
async getConnectedWalletImageUrl() {
|
|
141
|
-
try {
|
|
142
|
-
return await AsyncStorage.getItem(CONNECTED_WALLET_IMAGE_URL);
|
|
143
|
-
} catch {
|
|
144
|
-
console.info('Unable to get Connected Wallet Image URL');
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
return undefined;
|
|
148
|
-
},
|
|
149
|
-
|
|
150
|
-
async removeConnectedWalletImageUrl() {
|
|
151
|
-
try {
|
|
152
|
-
await AsyncStorage.removeItem(CONNECTED_WALLET_IMAGE_URL);
|
|
153
|
-
} catch {
|
|
154
|
-
console.info('Unable to remove Connected Wallet Image URL');
|
|
155
|
-
}
|
|
156
|
-
},
|
|
157
|
-
|
|
158
|
-
async setConnectedSocialProvider(provider: SocialProvider) {
|
|
159
|
-
try {
|
|
160
|
-
await AsyncStorage.setItem(CONNECTED_SOCIAL, JSON.stringify(provider));
|
|
161
|
-
} catch {
|
|
162
|
-
console.info('Unable to set Connected Social Provider');
|
|
163
|
-
}
|
|
164
|
-
},
|
|
165
|
-
|
|
166
|
-
async getConnectedSocialProvider() {
|
|
167
|
-
try {
|
|
168
|
-
const provider = (await AsyncStorage.getItem(CONNECTED_SOCIAL)) as SocialProvider;
|
|
169
|
-
|
|
170
|
-
return provider ? JSON.parse(provider) : undefined;
|
|
171
|
-
} catch {
|
|
172
|
-
console.info('Unable to get Connected Social Provider');
|
|
173
|
-
}
|
|
174
|
-
|
|
175
|
-
return undefined;
|
|
176
|
-
},
|
|
177
|
-
|
|
178
|
-
async removeConnectedSocialProvider() {
|
|
179
|
-
try {
|
|
180
|
-
await AsyncStorage.removeItem(CONNECTED_SOCIAL);
|
|
181
|
-
} catch {
|
|
182
|
-
console.info('Unable to remove Connected Social Provider');
|
|
183
|
-
}
|
|
184
|
-
},
|
|
185
|
-
|
|
186
153
|
async setOnRampPreferredCountry(country: OnRampCountry) {
|
|
187
154
|
try {
|
|
188
|
-
await
|
|
155
|
+
await OptionsController.getStorage().setItem(
|
|
156
|
+
ConstantsUtil.STORAGE_KEYS.ONRAMP_PREFERRED_COUNTRY,
|
|
157
|
+
country
|
|
158
|
+
);
|
|
189
159
|
} catch {
|
|
190
160
|
console.info('Unable to set OnRamp Preferred Country');
|
|
191
161
|
}
|
|
@@ -193,9 +163,11 @@ export const StorageUtil = {
|
|
|
193
163
|
|
|
194
164
|
async getOnRampPreferredCountry() {
|
|
195
165
|
try {
|
|
196
|
-
const country = await
|
|
166
|
+
const country = await OptionsController.getStorage().getItem<OnRampCountry>(
|
|
167
|
+
ConstantsUtil.STORAGE_KEYS.ONRAMP_PREFERRED_COUNTRY
|
|
168
|
+
);
|
|
197
169
|
|
|
198
|
-
return country
|
|
170
|
+
return country ?? undefined;
|
|
199
171
|
} catch {
|
|
200
172
|
console.info('Unable to get OnRamp Preferred Country');
|
|
201
173
|
}
|
|
@@ -205,7 +177,10 @@ export const StorageUtil = {
|
|
|
205
177
|
|
|
206
178
|
async setOnRampPreferredFiatCurrency(currency: OnRampFiatCurrency) {
|
|
207
179
|
try {
|
|
208
|
-
await
|
|
180
|
+
await OptionsController.getStorage().setItem(
|
|
181
|
+
ConstantsUtil.STORAGE_KEYS.ONRAMP_PREFERRED_FIAT_CURRENCY,
|
|
182
|
+
currency
|
|
183
|
+
);
|
|
209
184
|
} catch {
|
|
210
185
|
console.info('Unable to set OnRamp Preferred Fiat Currency');
|
|
211
186
|
}
|
|
@@ -213,9 +188,11 @@ export const StorageUtil = {
|
|
|
213
188
|
|
|
214
189
|
async getOnRampPreferredFiatCurrency() {
|
|
215
190
|
try {
|
|
216
|
-
const currency = await
|
|
191
|
+
const currency = await OptionsController.getStorage().getItem<OnRampFiatCurrency>(
|
|
192
|
+
ConstantsUtil.STORAGE_KEYS.ONRAMP_PREFERRED_FIAT_CURRENCY
|
|
193
|
+
);
|
|
217
194
|
|
|
218
|
-
return currency
|
|
195
|
+
return currency ?? undefined;
|
|
219
196
|
} catch {
|
|
220
197
|
console.info('Unable to get OnRamp Preferred Fiat Currency');
|
|
221
198
|
}
|
|
@@ -225,7 +202,10 @@ export const StorageUtil = {
|
|
|
225
202
|
|
|
226
203
|
async setOnRampCountries(countries: OnRampCountry[]) {
|
|
227
204
|
try {
|
|
228
|
-
await
|
|
205
|
+
await OptionsController.getStorage().setItem(
|
|
206
|
+
ConstantsUtil.STORAGE_KEYS.ONRAMP_COUNTRIES,
|
|
207
|
+
countries
|
|
208
|
+
);
|
|
229
209
|
} catch {
|
|
230
210
|
console.info('Unable to set OnRamp Countries');
|
|
231
211
|
}
|
|
@@ -233,9 +213,11 @@ export const StorageUtil = {
|
|
|
233
213
|
|
|
234
214
|
async getOnRampCountries() {
|
|
235
215
|
try {
|
|
236
|
-
const countries = await
|
|
216
|
+
const countries = await OptionsController.getStorage().getItem<OnRampCountry[]>(
|
|
217
|
+
ConstantsUtil.STORAGE_KEYS.ONRAMP_COUNTRIES
|
|
218
|
+
);
|
|
237
219
|
|
|
238
|
-
return countries
|
|
220
|
+
return countries ?? [];
|
|
239
221
|
} catch {
|
|
240
222
|
console.info('Unable to get OnRamp Countries');
|
|
241
223
|
}
|
|
@@ -247,9 +229,9 @@ export const StorageUtil = {
|
|
|
247
229
|
try {
|
|
248
230
|
const timestamp = Date.now();
|
|
249
231
|
|
|
250
|
-
await
|
|
251
|
-
ONRAMP_COUNTRIES_DEFAULTS,
|
|
252
|
-
|
|
232
|
+
await OptionsController.getStorage().setItem(
|
|
233
|
+
ConstantsUtil.STORAGE_KEYS.ONRAMP_COUNTRIES_DEFAULTS,
|
|
234
|
+
{ data: countriesDefaults, timestamp }
|
|
253
235
|
);
|
|
254
236
|
} catch {
|
|
255
237
|
console.info('Unable to set OnRamp Countries Defaults');
|
|
@@ -258,20 +240,22 @@ export const StorageUtil = {
|
|
|
258
240
|
|
|
259
241
|
async getOnRampCountriesDefaults() {
|
|
260
242
|
try {
|
|
261
|
-
const result = await
|
|
243
|
+
const result = await OptionsController.getStorage().getItem(
|
|
244
|
+
ConstantsUtil.STORAGE_KEYS.ONRAMP_COUNTRIES_DEFAULTS
|
|
245
|
+
);
|
|
262
246
|
|
|
263
247
|
if (!result) {
|
|
264
248
|
return [];
|
|
265
249
|
}
|
|
266
250
|
|
|
267
|
-
const { data, timestamp } =
|
|
251
|
+
const { data, timestamp } = result;
|
|
268
252
|
|
|
269
253
|
// Cache for 1 week
|
|
270
254
|
if (timestamp && DateUtil.isMoreThanOneWeekAgo(timestamp)) {
|
|
271
255
|
return [];
|
|
272
256
|
}
|
|
273
257
|
|
|
274
|
-
return
|
|
258
|
+
return (data as OnRampCountryDefaults[]) ?? [];
|
|
275
259
|
} catch {
|
|
276
260
|
console.info('Unable to get OnRamp Countries Defaults');
|
|
277
261
|
}
|
|
@@ -283,9 +267,9 @@ export const StorageUtil = {
|
|
|
283
267
|
try {
|
|
284
268
|
const timestamp = Date.now();
|
|
285
269
|
|
|
286
|
-
await
|
|
287
|
-
ONRAMP_SERVICE_PROVIDERS,
|
|
288
|
-
|
|
270
|
+
await OptionsController.getStorage().setItem(
|
|
271
|
+
ConstantsUtil.STORAGE_KEYS.ONRAMP_SERVICE_PROVIDERS,
|
|
272
|
+
{ data: serviceProviders, timestamp }
|
|
289
273
|
);
|
|
290
274
|
} catch {
|
|
291
275
|
console.info('Unable to set OnRamp Service Providers');
|
|
@@ -294,20 +278,22 @@ export const StorageUtil = {
|
|
|
294
278
|
|
|
295
279
|
async getOnRampServiceProviders() {
|
|
296
280
|
try {
|
|
297
|
-
const result = await
|
|
281
|
+
const result = await OptionsController.getStorage().getItem(
|
|
282
|
+
ConstantsUtil.STORAGE_KEYS.ONRAMP_SERVICE_PROVIDERS
|
|
283
|
+
);
|
|
298
284
|
|
|
299
285
|
if (!result) {
|
|
300
286
|
return [];
|
|
301
287
|
}
|
|
302
288
|
|
|
303
|
-
const { data, timestamp } =
|
|
289
|
+
const { data, timestamp } = result;
|
|
304
290
|
|
|
305
291
|
// Cache for 1 week
|
|
306
292
|
if (timestamp && DateUtil.isMoreThanOneWeekAgo(timestamp)) {
|
|
307
293
|
return [];
|
|
308
294
|
}
|
|
309
295
|
|
|
310
|
-
return
|
|
296
|
+
return (data as OnRampServiceProvider[]) ?? [];
|
|
311
297
|
} catch (err) {
|
|
312
298
|
console.error(err);
|
|
313
299
|
console.info('Unable to get OnRamp Service Providers');
|
|
@@ -320,10 +306,10 @@ export const StorageUtil = {
|
|
|
320
306
|
try {
|
|
321
307
|
const timestamp = Date.now();
|
|
322
308
|
|
|
323
|
-
await
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
);
|
|
309
|
+
await OptionsController.getStorage().setItem(ConstantsUtil.STORAGE_KEYS.ONRAMP_FIAT_LIMITS, {
|
|
310
|
+
data: fiatLimits,
|
|
311
|
+
timestamp
|
|
312
|
+
});
|
|
327
313
|
} catch {
|
|
328
314
|
console.info('Unable to set OnRamp Fiat Limits');
|
|
329
315
|
}
|
|
@@ -331,20 +317,22 @@ export const StorageUtil = {
|
|
|
331
317
|
|
|
332
318
|
async getOnRampFiatLimits() {
|
|
333
319
|
try {
|
|
334
|
-
const result = await
|
|
320
|
+
const result = await OptionsController.getStorage().getItem(
|
|
321
|
+
ConstantsUtil.STORAGE_KEYS.ONRAMP_FIAT_LIMITS
|
|
322
|
+
);
|
|
335
323
|
|
|
336
324
|
if (!result) {
|
|
337
325
|
return [];
|
|
338
326
|
}
|
|
339
327
|
|
|
340
|
-
const { data, timestamp } =
|
|
328
|
+
const { data, timestamp } = result;
|
|
341
329
|
|
|
342
330
|
// Cache for 1 week
|
|
343
331
|
if (timestamp && DateUtil.isMoreThanOneWeekAgo(timestamp)) {
|
|
344
332
|
return [];
|
|
345
333
|
}
|
|
346
334
|
|
|
347
|
-
return
|
|
335
|
+
return (data as OnRampFiatLimit[]) ?? [];
|
|
348
336
|
} catch {
|
|
349
337
|
console.info('Unable to get OnRamp Fiat Limits');
|
|
350
338
|
}
|
|
@@ -356,9 +344,9 @@ export const StorageUtil = {
|
|
|
356
344
|
try {
|
|
357
345
|
const timestamp = Date.now();
|
|
358
346
|
|
|
359
|
-
await
|
|
360
|
-
ONRAMP_FIAT_CURRENCIES,
|
|
361
|
-
|
|
347
|
+
await OptionsController.getStorage().setItem(
|
|
348
|
+
ConstantsUtil.STORAGE_KEYS.ONRAMP_FIAT_CURRENCIES,
|
|
349
|
+
{ data: fiatCurrencies, timestamp }
|
|
362
350
|
);
|
|
363
351
|
} catch {
|
|
364
352
|
console.info('Unable to set OnRamp Fiat Currencies');
|
|
@@ -367,24 +355,68 @@ export const StorageUtil = {
|
|
|
367
355
|
|
|
368
356
|
async getOnRampFiatCurrencies() {
|
|
369
357
|
try {
|
|
370
|
-
const result = await
|
|
358
|
+
const result = await OptionsController.getStorage().getItem(
|
|
359
|
+
ConstantsUtil.STORAGE_KEYS.ONRAMP_FIAT_CURRENCIES
|
|
360
|
+
);
|
|
371
361
|
|
|
372
362
|
if (!result) {
|
|
373
363
|
return [];
|
|
374
364
|
}
|
|
375
365
|
|
|
376
|
-
const { data, timestamp } =
|
|
366
|
+
const { data, timestamp } = result;
|
|
377
367
|
|
|
378
368
|
// Cache for 1 week
|
|
379
369
|
if (timestamp && DateUtil.isMoreThanOneWeekAgo(timestamp)) {
|
|
380
370
|
return [];
|
|
381
371
|
}
|
|
382
372
|
|
|
383
|
-
return
|
|
373
|
+
return (data as OnRampFiatCurrency[]) ?? [];
|
|
384
374
|
} catch {
|
|
385
375
|
console.info('Unable to get OnRamp Fiat Currencies');
|
|
386
376
|
}
|
|
387
377
|
|
|
388
378
|
return [];
|
|
379
|
+
},
|
|
380
|
+
|
|
381
|
+
async setActiveNamespace(namespace?: ChainNamespace) {
|
|
382
|
+
try {
|
|
383
|
+
if (!namespace) {
|
|
384
|
+
await OptionsController.getStorage().removeItem(
|
|
385
|
+
ConstantsUtil.STORAGE_KEYS.ACTIVE_NAMESPACE
|
|
386
|
+
);
|
|
387
|
+
|
|
388
|
+
return;
|
|
389
|
+
}
|
|
390
|
+
|
|
391
|
+
await OptionsController.getStorage().setItem(
|
|
392
|
+
ConstantsUtil.STORAGE_KEYS.ACTIVE_NAMESPACE,
|
|
393
|
+
namespace
|
|
394
|
+
);
|
|
395
|
+
} catch {
|
|
396
|
+
console.info('Unable to set Active Namespace');
|
|
397
|
+
}
|
|
398
|
+
},
|
|
399
|
+
|
|
400
|
+
async getActiveNamespace() {
|
|
401
|
+
try {
|
|
402
|
+
const namespace = (await OptionsController.getStorage().getItem(
|
|
403
|
+
ConstantsUtil.STORAGE_KEYS.ACTIVE_NAMESPACE
|
|
404
|
+
)) as ChainNamespace;
|
|
405
|
+
|
|
406
|
+
return namespace ?? undefined;
|
|
407
|
+
} catch (err) {
|
|
408
|
+
console.error(err);
|
|
409
|
+
console.info('Unable to get Active Namespace');
|
|
410
|
+
}
|
|
411
|
+
|
|
412
|
+
return undefined;
|
|
413
|
+
},
|
|
414
|
+
|
|
415
|
+
async removeActiveNamespace() {
|
|
416
|
+
try {
|
|
417
|
+
await OptionsController.getStorage().removeItem(ConstantsUtil.STORAGE_KEYS.ACTIVE_NAMESPACE);
|
|
418
|
+
} catch {
|
|
419
|
+
console.info('Unable to remove Active Namespace');
|
|
420
|
+
}
|
|
389
421
|
}
|
|
390
422
|
};
|
package/src/utils/SwapApiUtil.ts
CHANGED
|
@@ -1,19 +1,21 @@
|
|
|
1
|
-
import { BlockchainApiController } from '../controllers/BlockchainApiController';
|
|
2
|
-
import { OptionsController } from '../controllers/OptionsController';
|
|
3
|
-
import { NetworkController } from '../controllers/NetworkController';
|
|
4
1
|
import type {
|
|
5
|
-
|
|
2
|
+
Balance,
|
|
3
|
+
CaipNetworkId,
|
|
6
4
|
BlockchainApiSwapAllowanceRequest,
|
|
7
5
|
SwapTokenWithBalance
|
|
8
|
-
} from '
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
6
|
+
} from '@reown/appkit-common-react-native';
|
|
7
|
+
import { BlockchainApiController } from '../controllers/BlockchainApiController';
|
|
8
|
+
import { OptionsController } from '../controllers/OptionsController';
|
|
9
|
+
import { ConnectionsController } from '../controllers/ConnectionsController';
|
|
10
|
+
import { ConstantsUtil } from './ConstantsUtil';
|
|
11
11
|
|
|
12
12
|
export const SwapApiUtil = {
|
|
13
13
|
async getTokenList() {
|
|
14
|
+
const chainId: CaipNetworkId =
|
|
15
|
+
ConnectionsController.state.activeNetwork?.caipNetworkId ?? 'eip155:1';
|
|
14
16
|
const response = await BlockchainApiController.fetchSwapTokens({
|
|
15
17
|
projectId: OptionsController.state.projectId,
|
|
16
|
-
chainId
|
|
18
|
+
chainId
|
|
17
19
|
});
|
|
18
20
|
const tokens =
|
|
19
21
|
response?.tokens?.map(
|
|
@@ -52,7 +54,7 @@ export const SwapApiUtil = {
|
|
|
52
54
|
|
|
53
55
|
if (response?.allowance && sourceTokenAmount && sourceTokenDecimals) {
|
|
54
56
|
const parsedValue =
|
|
55
|
-
|
|
57
|
+
ConnectionsController.parseUnits(sourceTokenAmount, sourceTokenDecimals) || 0;
|
|
56
58
|
const hasAllowance = BigInt(response.allowance) >= parsedValue;
|
|
57
59
|
|
|
58
60
|
return hasAllowance;
|
|
@@ -61,40 +63,31 @@ export const SwapApiUtil = {
|
|
|
61
63
|
return false;
|
|
62
64
|
},
|
|
63
65
|
|
|
64
|
-
|
|
65
|
-
const
|
|
66
|
-
const
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
return [];
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
const response = await BlockchainApiController.getBalance(address, chainId, forceUpdate);
|
|
73
|
-
const balances = response?.balances.filter(balance => balance.quantity.decimals !== '0');
|
|
66
|
+
mapBalancesToSwapTokens(balances?: Balance[]) {
|
|
67
|
+
const { activeNamespace, activeCaipNetworkId } = ConnectionsController.state;
|
|
68
|
+
const address = activeNamespace
|
|
69
|
+
? ConstantsUtil.NATIVE_TOKEN_ADDRESS[activeNamespace]
|
|
70
|
+
: undefined;
|
|
74
71
|
|
|
75
|
-
AccountController.setTokenBalance(balances);
|
|
76
|
-
|
|
77
|
-
return this.mapBalancesToSwapTokens(balances);
|
|
78
|
-
},
|
|
79
|
-
|
|
80
|
-
mapBalancesToSwapTokens(balances?: BlockchainApiBalanceResponse['balances']) {
|
|
81
72
|
return (
|
|
82
|
-
balances
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
73
|
+
balances
|
|
74
|
+
?.filter(balance => balance?.quantity?.numeric)
|
|
75
|
+
.map(
|
|
76
|
+
token =>
|
|
77
|
+
({
|
|
78
|
+
...token,
|
|
79
|
+
address: token?.address ?? `${token?.chainId ?? activeCaipNetworkId}:${address}`,
|
|
80
|
+
decimals: parseInt(token.quantity?.decimals ?? '0', 10),
|
|
81
|
+
logoUri: token.iconUrl,
|
|
82
|
+
eip2612: false
|
|
83
|
+
}) as SwapTokenWithBalance
|
|
84
|
+
) || []
|
|
92
85
|
);
|
|
93
86
|
},
|
|
94
87
|
|
|
95
88
|
async fetchGasPrice() {
|
|
96
89
|
const projectId = OptionsController.state.projectId;
|
|
97
|
-
const caipNetwork =
|
|
90
|
+
const caipNetwork = ConnectionsController.state.activeNetwork;
|
|
98
91
|
|
|
99
92
|
if (!caipNetwork) {
|
|
100
93
|
return null;
|
|
@@ -102,7 +95,7 @@ export const SwapApiUtil = {
|
|
|
102
95
|
|
|
103
96
|
return await BlockchainApiController.fetchGasPrice({
|
|
104
97
|
projectId,
|
|
105
|
-
chainId: caipNetwork.
|
|
98
|
+
chainId: caipNetwork.caipNetworkId
|
|
106
99
|
});
|
|
107
100
|
}
|
|
108
101
|
};
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
// -- Types --------------------------------------------- //
|
|
2
2
|
|
|
3
|
-
import { NumberUtil } from '@reown/appkit-common-react-native';
|
|
4
|
-
import type { SwapTokenWithBalance } from './TypeUtil';
|
|
3
|
+
import { NumberUtil, type SwapTokenWithBalance } from '@reown/appkit-common-react-native';
|
|
5
4
|
|
|
6
5
|
// -- Util ---------------------------------------- //
|
|
7
6
|
export const SwapCalculationUtil = {
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { WcWallet } from '@reown/appkit-common-react-native';
|
|
2
|
+
import { ApiController } from '../controllers/ApiController';
|
|
3
|
+
import { OptionsController } from '../controllers/OptionsController';
|
|
4
|
+
|
|
5
|
+
export const WalletUtil = {
|
|
6
|
+
getWallet: (walletId: string): WcWallet | undefined => {
|
|
7
|
+
const { wallets, recommended, featured, installed } = ApiController.state;
|
|
8
|
+
const customWallets = OptionsController.state.customWallets ?? [];
|
|
9
|
+
const allWallets = [...wallets, ...recommended, ...featured, ...installed, ...customWallets];
|
|
10
|
+
const wallet = allWallets.find(w => w.id === walletId);
|
|
11
|
+
|
|
12
|
+
return wallet;
|
|
13
|
+
}
|
|
14
|
+
};
|