@reown/appkit-core-react-native 0.0.0-chore-canary-20250722145858 → 0.0.0-chore-bump-builder-20250728195048
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 +27 -16
- package/lib/commonjs/controllers/ApiController.js.map +1 -1
- package/lib/commonjs/controllers/BlockchainApiController.js +173 -103
- package/lib/commonjs/controllers/BlockchainApiController.js.map +1 -1
- package/lib/commonjs/controllers/ConnectionController.js +8 -11
- package/lib/commonjs/controllers/ConnectionController.js.map +1 -1
- package/lib/commonjs/controllers/ConnectionsController.js +417 -0
- package/lib/commonjs/controllers/ConnectionsController.js.map +1 -0
- package/lib/commonjs/controllers/ModalController.js +6 -7
- package/lib/commonjs/controllers/ModalController.js.map +1 -1
- package/lib/commonjs/controllers/OnRampController.js +58 -42
- package/lib/commonjs/controllers/OnRampController.js.map +1 -1
- package/lib/commonjs/controllers/OptionsController.js +17 -3
- package/lib/commonjs/controllers/OptionsController.js.map +1 -1
- package/lib/commonjs/controllers/RouterController.js +1 -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 +151 -150
- 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/index.js +3 -38
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/package.json +1 -0
- package/lib/commonjs/utils/AssetUtil.js +3 -15
- 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 +11 -5
- package/lib/commonjs/utils/CoreHelperUtil.js.map +1 -1
- package/lib/commonjs/utils/FetchUtil.js +7 -2
- package/lib/commonjs/utils/FetchUtil.js.map +1 -1
- package/lib/commonjs/utils/StorageUtil.js +99 -71
- 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/TypeUtil.js +25 -0
- package/lib/commonjs/utils/TypeUtil.js.map +1 -1
- package/lib/module/controllers/ApiController.js +28 -16
- package/lib/module/controllers/ApiController.js.map +1 -1
- package/lib/module/controllers/AssetController.js +2 -0
- package/lib/module/controllers/AssetController.js.map +1 -1
- package/lib/module/controllers/BlockchainApiController.js +174 -102
- package/lib/module/controllers/BlockchainApiController.js.map +1 -1
- package/lib/module/controllers/ConnectionController.js +10 -11
- package/lib/module/controllers/ConnectionController.js.map +1 -1
- package/lib/module/controllers/ConnectionsController.js +414 -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 +59 -41
- package/lib/module/controllers/OnRampController.js.map +1 -1
- package/lib/module/controllers/OptionsController.js +19 -3
- 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 +3 -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 +153 -150
- 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/index.js +3 -6
- 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 +5 -15
- 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 +13 -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 +9 -2
- 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 +103 -71
- 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 +2 -0
- package/lib/module/utils/SwapCalculationUtil.js.map +1 -1
- package/lib/module/utils/TypeUtil.js +25 -1
- package/lib/module/utils/TypeUtil.js.map +1 -1
- package/lib/typescript/controllers/ApiController.d.ts +3 -2
- package/lib/typescript/controllers/ApiController.d.ts.map +1 -1
- package/lib/typescript/controllers/BlockchainApiController.d.ts +30 -11
- package/lib/typescript/controllers/BlockchainApiController.d.ts.map +1 -1
- package/lib/typescript/controllers/ConnectionController.d.ts +5 -16
- package/lib/typescript/controllers/ConnectionController.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/ModalController.d.ts.map +1 -1
- package/lib/typescript/controllers/OnRampController.d.ts +1 -2
- package/lib/typescript/controllers/OnRampController.d.ts.map +1 -1
- package/lib/typescript/controllers/OptionsController.d.ts +8 -2
- 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 +4 -16
- 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 -11
- 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/index.d.ts +1 -6
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/utils/AssetUtil.d.ts +2 -3
- package/lib/typescript/utils/AssetUtil.d.ts.map +1 -1
- package/lib/typescript/utils/ConstantsUtil.d.ts +11 -1
- 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/FetchUtil.d.ts +1 -1
- package/lib/typescript/utils/FetchUtil.d.ts.map +1 -1
- package/lib/typescript/utils/StorageUtil.d.ts +18 -12
- package/lib/typescript/utils/StorageUtil.d.ts.map +1 -1
- package/lib/typescript/utils/SwapApiUtil.d.ts +3 -3
- package/lib/typescript/utils/SwapApiUtil.d.ts.map +1 -1
- package/lib/typescript/utils/TypeUtil.d.ts +44 -184
- package/lib/typescript/utils/TypeUtil.d.ts.map +1 -1
- package/package.json +8 -22
- package/src/controllers/ApiController.ts +28 -10
- package/src/controllers/BlockchainApiController.ts +152 -89
- package/src/controllers/ConnectionController.ts +14 -29
- package/src/controllers/ConnectionsController.ts +543 -0
- package/src/controllers/ModalController.ts +6 -7
- package/src/controllers/OnRampController.ts +91 -59
- package/src/controllers/OptionsController.ts +27 -13
- package/src/controllers/PublicStateController.ts +1 -1
- package/src/controllers/RouterController.ts +5 -54
- package/src/controllers/SendController.ts +122 -111
- package/src/controllers/SnackController.ts +31 -5
- package/src/controllers/SwapController.ts +174 -181
- package/src/controllers/ThemeController.ts +11 -2
- package/src/controllers/TransactionsController.ts +25 -19
- package/src/index.ts +3 -14
- package/src/utils/AssetUtil.ts +4 -20
- package/src/utils/ConstantsUtil.ts +126 -5
- package/src/utils/CoreHelperUtil.ts +34 -7
- package/src/utils/FetchUtil.ts +9 -3
- package/src/utils/StorageUtil.ts +180 -78
- package/src/utils/SwapApiUtil.ts +27 -38
- package/src/utils/TypeUtil.ts +54 -182
- package/lib/commonjs/controllers/AccountController.js +0 -93
- package/lib/commonjs/controllers/AccountController.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/module/controllers/AccountController.js +0 -88
- package/lib/module/controllers/AccountController.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/typescript/controllers/AccountController.d.ts +0 -33
- package/lib/typescript/controllers/AccountController.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 -34
- 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/src/controllers/AccountController.ts +0 -128
- 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/StorageUtil.ts
CHANGED
|
@@ -1,37 +1,30 @@
|
|
|
1
1
|
/* eslint-disable no-console */
|
|
2
|
-
import AsyncStorage from '@react-native-async-storage/async-storage';
|
|
3
2
|
import type {
|
|
4
3
|
OnRampCountry,
|
|
5
|
-
OnRampCountryDefaults,
|
|
6
4
|
OnRampFiatCurrency,
|
|
7
5
|
OnRampFiatLimit,
|
|
8
6
|
OnRampServiceProvider,
|
|
7
|
+
OnRampCountryDefaults,
|
|
9
8
|
WcWallet
|
|
10
9
|
} from './TypeUtil';
|
|
11
10
|
import {
|
|
12
11
|
DateUtil,
|
|
13
12
|
type SocialProvider,
|
|
14
|
-
type ConnectorType
|
|
13
|
+
type ConnectorType,
|
|
14
|
+
type ChainNamespace,
|
|
15
|
+
type WalletDeepLink,
|
|
16
|
+
ConstantsUtil
|
|
15
17
|
} from '@reown/appkit-common-react-native';
|
|
18
|
+
import { OptionsController } from '../controllers/OptionsController';
|
|
16
19
|
|
|
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
20
|
// -- Utility -----------------------------------------------------------------
|
|
31
21
|
export const StorageUtil = {
|
|
32
|
-
setWalletConnectDeepLink({ href, name }:
|
|
22
|
+
setWalletConnectDeepLink({ href, name }: WalletDeepLink) {
|
|
33
23
|
try {
|
|
34
|
-
|
|
24
|
+
OptionsController.getStorage().setItem(ConstantsUtil.STORAGE_KEYS.WC_DEEPLINK, {
|
|
25
|
+
href,
|
|
26
|
+
name
|
|
27
|
+
});
|
|
35
28
|
} catch {
|
|
36
29
|
console.info('Unable to set WalletConnect deep link');
|
|
37
30
|
}
|
|
@@ -39,9 +32,11 @@ export const StorageUtil = {
|
|
|
39
32
|
|
|
40
33
|
async getWalletConnectDeepLink() {
|
|
41
34
|
try {
|
|
42
|
-
const deepLink = await
|
|
35
|
+
const deepLink = await OptionsController.getStorage().getItem<WalletDeepLink>(
|
|
36
|
+
ConstantsUtil.STORAGE_KEYS.WC_DEEPLINK
|
|
37
|
+
);
|
|
43
38
|
if (deepLink) {
|
|
44
|
-
return
|
|
39
|
+
return deepLink;
|
|
45
40
|
}
|
|
46
41
|
} catch {
|
|
47
42
|
console.info('Unable to get WalletConnect deep link');
|
|
@@ -52,9 +47,9 @@ export const StorageUtil = {
|
|
|
52
47
|
|
|
53
48
|
async removeWalletConnectDeepLink() {
|
|
54
49
|
try {
|
|
55
|
-
await
|
|
50
|
+
await OptionsController.getStorage().removeItem(ConstantsUtil.STORAGE_KEYS.WC_DEEPLINK);
|
|
56
51
|
} catch {
|
|
57
|
-
console.info('Unable to
|
|
52
|
+
console.info('Unable to remove WalletConnect deep link');
|
|
58
53
|
}
|
|
59
54
|
},
|
|
60
55
|
|
|
@@ -71,7 +66,10 @@ export const StorageUtil = {
|
|
|
71
66
|
if (recentWallets.length > 2) {
|
|
72
67
|
recentWallets.pop();
|
|
73
68
|
}
|
|
74
|
-
|
|
69
|
+
OptionsController.getStorage().setItem(
|
|
70
|
+
ConstantsUtil.STORAGE_KEYS.RECENT_WALLET,
|
|
71
|
+
recentWallets
|
|
72
|
+
);
|
|
75
73
|
|
|
76
74
|
return recentWallets;
|
|
77
75
|
} catch {
|
|
@@ -83,7 +81,10 @@ export const StorageUtil = {
|
|
|
83
81
|
|
|
84
82
|
async setRecentWallets(wallets: WcWallet[]) {
|
|
85
83
|
try {
|
|
86
|
-
await
|
|
84
|
+
await OptionsController.getStorage().setItem(
|
|
85
|
+
ConstantsUtil.STORAGE_KEYS.RECENT_WALLET,
|
|
86
|
+
wallets
|
|
87
|
+
);
|
|
87
88
|
} catch {
|
|
88
89
|
console.info('Unable to set recent wallets');
|
|
89
90
|
}
|
|
@@ -91,9 +92,11 @@ export const StorageUtil = {
|
|
|
91
92
|
|
|
92
93
|
async getRecentWallets(): Promise<WcWallet[]> {
|
|
93
94
|
try {
|
|
94
|
-
const recent = await
|
|
95
|
+
const recent = await OptionsController.getStorage().getItem(
|
|
96
|
+
ConstantsUtil.STORAGE_KEYS.RECENT_WALLET
|
|
97
|
+
);
|
|
95
98
|
|
|
96
|
-
return recent
|
|
99
|
+
return recent ?? [];
|
|
97
100
|
} catch {
|
|
98
101
|
console.info('Unable to get recent wallets');
|
|
99
102
|
}
|
|
@@ -101,29 +104,50 @@ export const StorageUtil = {
|
|
|
101
104
|
return [];
|
|
102
105
|
},
|
|
103
106
|
|
|
104
|
-
async
|
|
107
|
+
async setConnectedConnectors({
|
|
108
|
+
type,
|
|
109
|
+
namespaces
|
|
110
|
+
}: {
|
|
111
|
+
type: ConnectorType;
|
|
112
|
+
namespaces: string[];
|
|
113
|
+
}) {
|
|
105
114
|
try {
|
|
106
|
-
|
|
115
|
+
const currentConnectors = (await StorageUtil.getConnectedConnectors()) || [];
|
|
116
|
+
// Only add if it doesn't exist already
|
|
117
|
+
if (!currentConnectors.some(c => c.type === type)) {
|
|
118
|
+
const updatedConnectors = [...currentConnectors, { type, namespaces }];
|
|
119
|
+
await OptionsController.getStorage().setItem(
|
|
120
|
+
ConstantsUtil.STORAGE_KEYS.CONNECTED_CONNECTORS,
|
|
121
|
+
updatedConnectors
|
|
122
|
+
);
|
|
123
|
+
}
|
|
107
124
|
} catch {
|
|
108
125
|
console.info('Unable to set Connected Connector');
|
|
109
126
|
}
|
|
110
127
|
},
|
|
111
128
|
|
|
112
|
-
async
|
|
129
|
+
async getConnectedConnectors(): Promise<{ type: ConnectorType; namespaces: string[] }[]> {
|
|
113
130
|
try {
|
|
114
|
-
const
|
|
131
|
+
const connectors = await OptionsController.getStorage().getItem<
|
|
132
|
+
{ type: ConnectorType; namespaces: string[] }[]
|
|
133
|
+
>(ConstantsUtil.STORAGE_KEYS.CONNECTED_CONNECTORS);
|
|
115
134
|
|
|
116
|
-
return
|
|
117
|
-
} catch {
|
|
135
|
+
return connectors ?? [];
|
|
136
|
+
} catch (err) {
|
|
118
137
|
console.info('Unable to get Connected Connector');
|
|
119
138
|
}
|
|
120
139
|
|
|
121
|
-
return
|
|
140
|
+
return [];
|
|
122
141
|
},
|
|
123
142
|
|
|
124
|
-
async
|
|
143
|
+
async removeConnectedConnectors(type: ConnectorType) {
|
|
125
144
|
try {
|
|
126
|
-
await
|
|
145
|
+
const currentConnectors = await StorageUtil.getConnectedConnectors();
|
|
146
|
+
const updatedConnectors = currentConnectors.filter(c => c.type !== type);
|
|
147
|
+
await OptionsController.getStorage().setItem(
|
|
148
|
+
ConstantsUtil.STORAGE_KEYS.CONNECTED_CONNECTORS,
|
|
149
|
+
updatedConnectors
|
|
150
|
+
);
|
|
127
151
|
} catch {
|
|
128
152
|
console.info('Unable to remove Connected Connector');
|
|
129
153
|
}
|
|
@@ -131,7 +155,10 @@ export const StorageUtil = {
|
|
|
131
155
|
|
|
132
156
|
async setConnectedWalletImageUrl(url: string) {
|
|
133
157
|
try {
|
|
134
|
-
await
|
|
158
|
+
await OptionsController.getStorage().setItem(
|
|
159
|
+
ConstantsUtil.STORAGE_KEYS.CONNECTED_WALLET_IMAGE_URL,
|
|
160
|
+
url
|
|
161
|
+
);
|
|
135
162
|
} catch {
|
|
136
163
|
console.info('Unable to set Connected Wallet Image URL');
|
|
137
164
|
}
|
|
@@ -139,7 +166,9 @@ export const StorageUtil = {
|
|
|
139
166
|
|
|
140
167
|
async getConnectedWalletImageUrl() {
|
|
141
168
|
try {
|
|
142
|
-
return await
|
|
169
|
+
return await OptionsController.getStorage().getItem(
|
|
170
|
+
ConstantsUtil.STORAGE_KEYS.CONNECTED_WALLET_IMAGE_URL
|
|
171
|
+
);
|
|
143
172
|
} catch {
|
|
144
173
|
console.info('Unable to get Connected Wallet Image URL');
|
|
145
174
|
}
|
|
@@ -149,25 +178,33 @@ export const StorageUtil = {
|
|
|
149
178
|
|
|
150
179
|
async removeConnectedWalletImageUrl() {
|
|
151
180
|
try {
|
|
152
|
-
await
|
|
153
|
-
|
|
181
|
+
await OptionsController.getStorage().removeItem(
|
|
182
|
+
ConstantsUtil.STORAGE_KEYS.CONNECTED_WALLET_IMAGE_URL
|
|
183
|
+
);
|
|
184
|
+
} catch (e) {
|
|
185
|
+
console.error(e);
|
|
154
186
|
console.info('Unable to remove Connected Wallet Image URL');
|
|
155
187
|
}
|
|
156
188
|
},
|
|
157
189
|
|
|
158
190
|
async setConnectedSocialProvider(provider: SocialProvider) {
|
|
159
191
|
try {
|
|
160
|
-
await
|
|
192
|
+
await OptionsController.getStorage().setItem(
|
|
193
|
+
ConstantsUtil.STORAGE_KEYS.CONNECTED_SOCIAL,
|
|
194
|
+
provider
|
|
195
|
+
);
|
|
161
196
|
} catch {
|
|
162
197
|
console.info('Unable to set Connected Social Provider');
|
|
163
198
|
}
|
|
164
199
|
},
|
|
165
200
|
|
|
166
|
-
async getConnectedSocialProvider() {
|
|
201
|
+
async getConnectedSocialProvider(): Promise<SocialProvider | undefined> {
|
|
167
202
|
try {
|
|
168
|
-
const provider =
|
|
203
|
+
const provider = await OptionsController.getStorage().getItem<SocialProvider>(
|
|
204
|
+
ConstantsUtil.STORAGE_KEYS.CONNECTED_SOCIAL
|
|
205
|
+
);
|
|
169
206
|
|
|
170
|
-
return provider
|
|
207
|
+
return provider ?? undefined;
|
|
171
208
|
} catch {
|
|
172
209
|
console.info('Unable to get Connected Social Provider');
|
|
173
210
|
}
|
|
@@ -177,7 +214,7 @@ export const StorageUtil = {
|
|
|
177
214
|
|
|
178
215
|
async removeConnectedSocialProvider() {
|
|
179
216
|
try {
|
|
180
|
-
await
|
|
217
|
+
await OptionsController.getStorage().removeItem(ConstantsUtil.STORAGE_KEYS.CONNECTED_SOCIAL);
|
|
181
218
|
} catch {
|
|
182
219
|
console.info('Unable to remove Connected Social Provider');
|
|
183
220
|
}
|
|
@@ -185,7 +222,10 @@ export const StorageUtil = {
|
|
|
185
222
|
|
|
186
223
|
async setOnRampPreferredCountry(country: OnRampCountry) {
|
|
187
224
|
try {
|
|
188
|
-
await
|
|
225
|
+
await OptionsController.getStorage().setItem(
|
|
226
|
+
ConstantsUtil.STORAGE_KEYS.ONRAMP_PREFERRED_COUNTRY,
|
|
227
|
+
country
|
|
228
|
+
);
|
|
189
229
|
} catch {
|
|
190
230
|
console.info('Unable to set OnRamp Preferred Country');
|
|
191
231
|
}
|
|
@@ -193,9 +233,11 @@ export const StorageUtil = {
|
|
|
193
233
|
|
|
194
234
|
async getOnRampPreferredCountry() {
|
|
195
235
|
try {
|
|
196
|
-
const country = await
|
|
236
|
+
const country = await OptionsController.getStorage().getItem<OnRampCountry>(
|
|
237
|
+
ConstantsUtil.STORAGE_KEYS.ONRAMP_PREFERRED_COUNTRY
|
|
238
|
+
);
|
|
197
239
|
|
|
198
|
-
return country
|
|
240
|
+
return country ?? undefined;
|
|
199
241
|
} catch {
|
|
200
242
|
console.info('Unable to get OnRamp Preferred Country');
|
|
201
243
|
}
|
|
@@ -205,7 +247,10 @@ export const StorageUtil = {
|
|
|
205
247
|
|
|
206
248
|
async setOnRampPreferredFiatCurrency(currency: OnRampFiatCurrency) {
|
|
207
249
|
try {
|
|
208
|
-
await
|
|
250
|
+
await OptionsController.getStorage().setItem(
|
|
251
|
+
ConstantsUtil.STORAGE_KEYS.ONRAMP_PREFERRED_FIAT_CURRENCY,
|
|
252
|
+
currency
|
|
253
|
+
);
|
|
209
254
|
} catch {
|
|
210
255
|
console.info('Unable to set OnRamp Preferred Fiat Currency');
|
|
211
256
|
}
|
|
@@ -213,9 +258,11 @@ export const StorageUtil = {
|
|
|
213
258
|
|
|
214
259
|
async getOnRampPreferredFiatCurrency() {
|
|
215
260
|
try {
|
|
216
|
-
const currency = await
|
|
261
|
+
const currency = await OptionsController.getStorage().getItem<OnRampFiatCurrency>(
|
|
262
|
+
ConstantsUtil.STORAGE_KEYS.ONRAMP_PREFERRED_FIAT_CURRENCY
|
|
263
|
+
);
|
|
217
264
|
|
|
218
|
-
return currency
|
|
265
|
+
return currency ?? undefined;
|
|
219
266
|
} catch {
|
|
220
267
|
console.info('Unable to get OnRamp Preferred Fiat Currency');
|
|
221
268
|
}
|
|
@@ -225,7 +272,10 @@ export const StorageUtil = {
|
|
|
225
272
|
|
|
226
273
|
async setOnRampCountries(countries: OnRampCountry[]) {
|
|
227
274
|
try {
|
|
228
|
-
await
|
|
275
|
+
await OptionsController.getStorage().setItem(
|
|
276
|
+
ConstantsUtil.STORAGE_KEYS.ONRAMP_COUNTRIES,
|
|
277
|
+
countries
|
|
278
|
+
);
|
|
229
279
|
} catch {
|
|
230
280
|
console.info('Unable to set OnRamp Countries');
|
|
231
281
|
}
|
|
@@ -233,9 +283,11 @@ export const StorageUtil = {
|
|
|
233
283
|
|
|
234
284
|
async getOnRampCountries() {
|
|
235
285
|
try {
|
|
236
|
-
const countries = await
|
|
286
|
+
const countries = await OptionsController.getStorage().getItem<OnRampCountry[]>(
|
|
287
|
+
ConstantsUtil.STORAGE_KEYS.ONRAMP_COUNTRIES
|
|
288
|
+
);
|
|
237
289
|
|
|
238
|
-
return countries
|
|
290
|
+
return countries ?? [];
|
|
239
291
|
} catch {
|
|
240
292
|
console.info('Unable to get OnRamp Countries');
|
|
241
293
|
}
|
|
@@ -247,9 +299,9 @@ export const StorageUtil = {
|
|
|
247
299
|
try {
|
|
248
300
|
const timestamp = Date.now();
|
|
249
301
|
|
|
250
|
-
await
|
|
251
|
-
ONRAMP_COUNTRIES_DEFAULTS,
|
|
252
|
-
|
|
302
|
+
await OptionsController.getStorage().setItem(
|
|
303
|
+
ConstantsUtil.STORAGE_KEYS.ONRAMP_COUNTRIES_DEFAULTS,
|
|
304
|
+
{ data: countriesDefaults, timestamp }
|
|
253
305
|
);
|
|
254
306
|
} catch {
|
|
255
307
|
console.info('Unable to set OnRamp Countries Defaults');
|
|
@@ -258,20 +310,22 @@ export const StorageUtil = {
|
|
|
258
310
|
|
|
259
311
|
async getOnRampCountriesDefaults() {
|
|
260
312
|
try {
|
|
261
|
-
const result = await
|
|
313
|
+
const result = await OptionsController.getStorage().getItem(
|
|
314
|
+
ConstantsUtil.STORAGE_KEYS.ONRAMP_COUNTRIES_DEFAULTS
|
|
315
|
+
);
|
|
262
316
|
|
|
263
317
|
if (!result) {
|
|
264
318
|
return [];
|
|
265
319
|
}
|
|
266
320
|
|
|
267
|
-
const { data, timestamp } =
|
|
321
|
+
const { data, timestamp } = result;
|
|
268
322
|
|
|
269
323
|
// Cache for 1 week
|
|
270
324
|
if (timestamp && DateUtil.isMoreThanOneWeekAgo(timestamp)) {
|
|
271
325
|
return [];
|
|
272
326
|
}
|
|
273
327
|
|
|
274
|
-
return
|
|
328
|
+
return (data as OnRampCountryDefaults[]) ?? [];
|
|
275
329
|
} catch {
|
|
276
330
|
console.info('Unable to get OnRamp Countries Defaults');
|
|
277
331
|
}
|
|
@@ -283,9 +337,9 @@ export const StorageUtil = {
|
|
|
283
337
|
try {
|
|
284
338
|
const timestamp = Date.now();
|
|
285
339
|
|
|
286
|
-
await
|
|
287
|
-
ONRAMP_SERVICE_PROVIDERS,
|
|
288
|
-
|
|
340
|
+
await OptionsController.getStorage().setItem(
|
|
341
|
+
ConstantsUtil.STORAGE_KEYS.ONRAMP_SERVICE_PROVIDERS,
|
|
342
|
+
{ data: serviceProviders, timestamp }
|
|
289
343
|
);
|
|
290
344
|
} catch {
|
|
291
345
|
console.info('Unable to set OnRamp Service Providers');
|
|
@@ -294,20 +348,22 @@ export const StorageUtil = {
|
|
|
294
348
|
|
|
295
349
|
async getOnRampServiceProviders() {
|
|
296
350
|
try {
|
|
297
|
-
const result = await
|
|
351
|
+
const result = await OptionsController.getStorage().getItem(
|
|
352
|
+
ConstantsUtil.STORAGE_KEYS.ONRAMP_SERVICE_PROVIDERS
|
|
353
|
+
);
|
|
298
354
|
|
|
299
355
|
if (!result) {
|
|
300
356
|
return [];
|
|
301
357
|
}
|
|
302
358
|
|
|
303
|
-
const { data, timestamp } =
|
|
359
|
+
const { data, timestamp } = result;
|
|
304
360
|
|
|
305
361
|
// Cache for 1 week
|
|
306
362
|
if (timestamp && DateUtil.isMoreThanOneWeekAgo(timestamp)) {
|
|
307
363
|
return [];
|
|
308
364
|
}
|
|
309
365
|
|
|
310
|
-
return
|
|
366
|
+
return (data as OnRampServiceProvider[]) ?? [];
|
|
311
367
|
} catch (err) {
|
|
312
368
|
console.error(err);
|
|
313
369
|
console.info('Unable to get OnRamp Service Providers');
|
|
@@ -320,10 +376,10 @@ export const StorageUtil = {
|
|
|
320
376
|
try {
|
|
321
377
|
const timestamp = Date.now();
|
|
322
378
|
|
|
323
|
-
await
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
);
|
|
379
|
+
await OptionsController.getStorage().setItem(ConstantsUtil.STORAGE_KEYS.ONRAMP_FIAT_LIMITS, {
|
|
380
|
+
data: fiatLimits,
|
|
381
|
+
timestamp
|
|
382
|
+
});
|
|
327
383
|
} catch {
|
|
328
384
|
console.info('Unable to set OnRamp Fiat Limits');
|
|
329
385
|
}
|
|
@@ -331,20 +387,22 @@ export const StorageUtil = {
|
|
|
331
387
|
|
|
332
388
|
async getOnRampFiatLimits() {
|
|
333
389
|
try {
|
|
334
|
-
const result = await
|
|
390
|
+
const result = await OptionsController.getStorage().getItem(
|
|
391
|
+
ConstantsUtil.STORAGE_KEYS.ONRAMP_FIAT_LIMITS
|
|
392
|
+
);
|
|
335
393
|
|
|
336
394
|
if (!result) {
|
|
337
395
|
return [];
|
|
338
396
|
}
|
|
339
397
|
|
|
340
|
-
const { data, timestamp } =
|
|
398
|
+
const { data, timestamp } = result;
|
|
341
399
|
|
|
342
400
|
// Cache for 1 week
|
|
343
401
|
if (timestamp && DateUtil.isMoreThanOneWeekAgo(timestamp)) {
|
|
344
402
|
return [];
|
|
345
403
|
}
|
|
346
404
|
|
|
347
|
-
return
|
|
405
|
+
return (data as OnRampFiatLimit[]) ?? [];
|
|
348
406
|
} catch {
|
|
349
407
|
console.info('Unable to get OnRamp Fiat Limits');
|
|
350
408
|
}
|
|
@@ -356,9 +414,9 @@ export const StorageUtil = {
|
|
|
356
414
|
try {
|
|
357
415
|
const timestamp = Date.now();
|
|
358
416
|
|
|
359
|
-
await
|
|
360
|
-
ONRAMP_FIAT_CURRENCIES,
|
|
361
|
-
|
|
417
|
+
await OptionsController.getStorage().setItem(
|
|
418
|
+
ConstantsUtil.STORAGE_KEYS.ONRAMP_FIAT_CURRENCIES,
|
|
419
|
+
{ data: fiatCurrencies, timestamp }
|
|
362
420
|
);
|
|
363
421
|
} catch {
|
|
364
422
|
console.info('Unable to set OnRamp Fiat Currencies');
|
|
@@ -367,24 +425,68 @@ export const StorageUtil = {
|
|
|
367
425
|
|
|
368
426
|
async getOnRampFiatCurrencies() {
|
|
369
427
|
try {
|
|
370
|
-
const result = await
|
|
428
|
+
const result = await OptionsController.getStorage().getItem(
|
|
429
|
+
ConstantsUtil.STORAGE_KEYS.ONRAMP_FIAT_CURRENCIES
|
|
430
|
+
);
|
|
371
431
|
|
|
372
432
|
if (!result) {
|
|
373
433
|
return [];
|
|
374
434
|
}
|
|
375
435
|
|
|
376
|
-
const { data, timestamp } =
|
|
436
|
+
const { data, timestamp } = result;
|
|
377
437
|
|
|
378
438
|
// Cache for 1 week
|
|
379
439
|
if (timestamp && DateUtil.isMoreThanOneWeekAgo(timestamp)) {
|
|
380
440
|
return [];
|
|
381
441
|
}
|
|
382
442
|
|
|
383
|
-
return
|
|
443
|
+
return (data as OnRampFiatCurrency[]) ?? [];
|
|
384
444
|
} catch {
|
|
385
445
|
console.info('Unable to get OnRamp Fiat Currencies');
|
|
386
446
|
}
|
|
387
447
|
|
|
388
448
|
return [];
|
|
449
|
+
},
|
|
450
|
+
|
|
451
|
+
async setActiveNamespace(namespace?: ChainNamespace) {
|
|
452
|
+
try {
|
|
453
|
+
if (!namespace) {
|
|
454
|
+
await OptionsController.getStorage().removeItem(
|
|
455
|
+
ConstantsUtil.STORAGE_KEYS.ACTIVE_NAMESPACE
|
|
456
|
+
);
|
|
457
|
+
|
|
458
|
+
return;
|
|
459
|
+
}
|
|
460
|
+
|
|
461
|
+
await OptionsController.getStorage().setItem(
|
|
462
|
+
ConstantsUtil.STORAGE_KEYS.ACTIVE_NAMESPACE,
|
|
463
|
+
namespace
|
|
464
|
+
);
|
|
465
|
+
} catch {
|
|
466
|
+
console.info('Unable to set Active Namespace');
|
|
467
|
+
}
|
|
468
|
+
},
|
|
469
|
+
|
|
470
|
+
async getActiveNamespace() {
|
|
471
|
+
try {
|
|
472
|
+
const namespace = (await OptionsController.getStorage().getItem(
|
|
473
|
+
ConstantsUtil.STORAGE_KEYS.ACTIVE_NAMESPACE
|
|
474
|
+
)) as ChainNamespace;
|
|
475
|
+
|
|
476
|
+
return namespace ?? undefined;
|
|
477
|
+
} catch (err) {
|
|
478
|
+
console.error(err);
|
|
479
|
+
console.info('Unable to get Active Namespace');
|
|
480
|
+
}
|
|
481
|
+
|
|
482
|
+
return undefined;
|
|
483
|
+
},
|
|
484
|
+
|
|
485
|
+
async removeActiveNamespace() {
|
|
486
|
+
try {
|
|
487
|
+
await OptionsController.getStorage().removeItem(ConstantsUtil.STORAGE_KEYS.ACTIVE_NAMESPACE);
|
|
488
|
+
} catch {
|
|
489
|
+
console.info('Unable to remove Active Namespace');
|
|
490
|
+
}
|
|
389
491
|
}
|
|
390
492
|
};
|
package/src/utils/SwapApiUtil.ts
CHANGED
|
@@ -1,19 +1,17 @@
|
|
|
1
|
+
import type { Balance, CaipNetworkId } from '@reown/appkit-common-react-native';
|
|
1
2
|
import { BlockchainApiController } from '../controllers/BlockchainApiController';
|
|
2
3
|
import { OptionsController } from '../controllers/OptionsController';
|
|
3
|
-
import {
|
|
4
|
-
import
|
|
5
|
-
|
|
6
|
-
BlockchainApiSwapAllowanceRequest,
|
|
7
|
-
SwapTokenWithBalance
|
|
8
|
-
} from './TypeUtil';
|
|
9
|
-
import { AccountController } from '../controllers/AccountController';
|
|
10
|
-
import { ConnectionController } from '../controllers/ConnectionController';
|
|
4
|
+
import type { BlockchainApiSwapAllowanceRequest, SwapTokenWithBalance } from './TypeUtil';
|
|
5
|
+
import { ConnectionsController } from '../controllers/ConnectionsController';
|
|
6
|
+
import { ConstantsUtil } from './ConstantsUtil';
|
|
11
7
|
|
|
12
8
|
export const SwapApiUtil = {
|
|
13
9
|
async getTokenList() {
|
|
10
|
+
const chainId: CaipNetworkId =
|
|
11
|
+
ConnectionsController.state.activeNetwork?.caipNetworkId ?? 'eip155:1';
|
|
14
12
|
const response = await BlockchainApiController.fetchSwapTokens({
|
|
15
13
|
projectId: OptionsController.state.projectId,
|
|
16
|
-
chainId
|
|
14
|
+
chainId
|
|
17
15
|
});
|
|
18
16
|
const tokens =
|
|
19
17
|
response?.tokens?.map(
|
|
@@ -52,7 +50,7 @@ export const SwapApiUtil = {
|
|
|
52
50
|
|
|
53
51
|
if (response?.allowance && sourceTokenAmount && sourceTokenDecimals) {
|
|
54
52
|
const parsedValue =
|
|
55
|
-
|
|
53
|
+
ConnectionsController.parseUnits(sourceTokenAmount, sourceTokenDecimals) || 0;
|
|
56
54
|
const hasAllowance = BigInt(response.allowance) >= parsedValue;
|
|
57
55
|
|
|
58
56
|
return hasAllowance;
|
|
@@ -61,40 +59,31 @@ export const SwapApiUtil = {
|
|
|
61
59
|
return false;
|
|
62
60
|
},
|
|
63
61
|
|
|
64
|
-
|
|
65
|
-
const
|
|
66
|
-
const
|
|
62
|
+
mapBalancesToSwapTokens(balances?: Balance[]) {
|
|
63
|
+
const { activeNamespace, activeCaipNetworkId } = ConnectionsController.state;
|
|
64
|
+
const address = activeNamespace
|
|
65
|
+
? ConstantsUtil.NATIVE_TOKEN_ADDRESS[activeNamespace]
|
|
66
|
+
: undefined;
|
|
67
67
|
|
|
68
|
-
if (!address) {
|
|
69
|
-
return [];
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
const response = await BlockchainApiController.getBalance(address, chainId, forceUpdate);
|
|
73
|
-
const balances = response?.balances.filter(balance => balance.quantity.decimals !== '0');
|
|
74
|
-
|
|
75
|
-
AccountController.setTokenBalance(balances);
|
|
76
|
-
|
|
77
|
-
return this.mapBalancesToSwapTokens(balances);
|
|
78
|
-
},
|
|
79
|
-
|
|
80
|
-
mapBalancesToSwapTokens(balances?: BlockchainApiBalanceResponse['balances']) {
|
|
81
68
|
return (
|
|
82
|
-
balances
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
69
|
+
balances
|
|
70
|
+
?.filter(balance => balance?.quantity?.numeric)
|
|
71
|
+
.map(
|
|
72
|
+
token =>
|
|
73
|
+
({
|
|
74
|
+
...token,
|
|
75
|
+
address: token?.address ?? `${token?.chainId ?? activeCaipNetworkId}:${address}`,
|
|
76
|
+
decimals: parseInt(token.quantity?.decimals ?? '0', 10),
|
|
77
|
+
logoUri: token.iconUrl,
|
|
78
|
+
eip2612: false
|
|
79
|
+
}) as SwapTokenWithBalance
|
|
80
|
+
) || []
|
|
92
81
|
);
|
|
93
82
|
},
|
|
94
83
|
|
|
95
84
|
async fetchGasPrice() {
|
|
96
85
|
const projectId = OptionsController.state.projectId;
|
|
97
|
-
const caipNetwork =
|
|
86
|
+
const caipNetwork = ConnectionsController.state.activeNetwork;
|
|
98
87
|
|
|
99
88
|
if (!caipNetwork) {
|
|
100
89
|
return null;
|
|
@@ -102,7 +91,7 @@ export const SwapApiUtil = {
|
|
|
102
91
|
|
|
103
92
|
return await BlockchainApiController.fetchGasPrice({
|
|
104
93
|
projectId,
|
|
105
|
-
chainId: caipNetwork.
|
|
94
|
+
chainId: caipNetwork.caipNetworkId
|
|
106
95
|
});
|
|
107
96
|
}
|
|
108
97
|
};
|