@reown/appkit-core-react-native 2.0.0-alpha.0 → 2.0.0-alpha.2

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.
Files changed (207) hide show
  1. package/lib/commonjs/controllers/ApiController.js +16 -5
  2. package/lib/commonjs/controllers/ApiController.js.map +1 -1
  3. package/lib/commonjs/controllers/AssetController.js.map +1 -1
  4. package/lib/commonjs/controllers/BlockchainApiController.js +103 -111
  5. package/lib/commonjs/controllers/BlockchainApiController.js.map +1 -1
  6. package/lib/commonjs/controllers/ConnectionController.js +1 -10
  7. package/lib/commonjs/controllers/ConnectionController.js.map +1 -1
  8. package/lib/commonjs/controllers/ConnectionsController.js +313 -52
  9. package/lib/commonjs/controllers/ConnectionsController.js.map +1 -1
  10. package/lib/commonjs/controllers/EnsController.js +4 -4
  11. package/lib/commonjs/controllers/EnsController.js.map +1 -1
  12. package/lib/commonjs/controllers/EventsController.js +4 -4
  13. package/lib/commonjs/controllers/EventsController.js.map +1 -1
  14. package/lib/commonjs/controllers/ModalController.js +6 -7
  15. package/lib/commonjs/controllers/ModalController.js.map +1 -1
  16. package/lib/commonjs/controllers/OnRampController.js +117 -53
  17. package/lib/commonjs/controllers/OnRampController.js.map +1 -1
  18. package/lib/commonjs/controllers/OptionsController.js +14 -0
  19. package/lib/commonjs/controllers/OptionsController.js.map +1 -1
  20. package/lib/commonjs/controllers/PublicStateController.js.map +1 -1
  21. package/lib/commonjs/controllers/RouterController.js +1 -22
  22. package/lib/commonjs/controllers/RouterController.js.map +1 -1
  23. package/lib/commonjs/controllers/SendController.js +101 -101
  24. package/lib/commonjs/controllers/SendController.js.map +1 -1
  25. package/lib/commonjs/controllers/SnackController.js +29 -5
  26. package/lib/commonjs/controllers/SnackController.js.map +1 -1
  27. package/lib/commonjs/controllers/SwapController.js +140 -147
  28. package/lib/commonjs/controllers/SwapController.js.map +1 -1
  29. package/lib/commonjs/controllers/ThemeController.js.map +1 -1
  30. package/lib/commonjs/controllers/TransactionsController.js +23 -19
  31. package/lib/commonjs/controllers/TransactionsController.js.map +1 -1
  32. package/lib/commonjs/index.js +0 -35
  33. package/lib/commonjs/index.js.map +1 -1
  34. package/lib/commonjs/package.json +1 -0
  35. package/lib/commonjs/utils/ApiUtil.js.map +1 -1
  36. package/lib/commonjs/utils/AssetUtil.js +3 -14
  37. package/lib/commonjs/utils/AssetUtil.js.map +1 -1
  38. package/lib/commonjs/utils/ConstantsUtil.js +122 -426
  39. package/lib/commonjs/utils/ConstantsUtil.js.map +1 -1
  40. package/lib/commonjs/utils/CoreHelperUtil.js +13 -8
  41. package/lib/commonjs/utils/CoreHelperUtil.js.map +1 -1
  42. package/lib/commonjs/utils/EventUtil.js.map +1 -1
  43. package/lib/commonjs/utils/FetchUtil.js +34 -10
  44. package/lib/commonjs/utils/FetchUtil.js.map +1 -1
  45. package/lib/commonjs/utils/RouterUtil.js.map +1 -1
  46. package/lib/commonjs/utils/StorageUtil.js +86 -92
  47. package/lib/commonjs/utils/StorageUtil.js.map +1 -1
  48. package/lib/commonjs/utils/SwapApiUtil.js +11 -22
  49. package/lib/commonjs/utils/SwapApiUtil.js.map +1 -1
  50. package/lib/commonjs/utils/SwapCalculationUtil.js.map +1 -1
  51. package/lib/commonjs/utils/TypeUtil.js +25 -0
  52. package/lib/commonjs/utils/TypeUtil.js.map +1 -1
  53. package/lib/module/controllers/ApiController.js +18 -6
  54. package/lib/module/controllers/ApiController.js.map +1 -1
  55. package/lib/module/controllers/AssetController.js +2 -0
  56. package/lib/module/controllers/AssetController.js.map +1 -1
  57. package/lib/module/controllers/BlockchainApiController.js +104 -110
  58. package/lib/module/controllers/BlockchainApiController.js.map +1 -1
  59. package/lib/module/controllers/ConnectionController.js +3 -10
  60. package/lib/module/controllers/ConnectionController.js.map +1 -1
  61. package/lib/module/controllers/ConnectionsController.js +314 -51
  62. package/lib/module/controllers/ConnectionsController.js.map +1 -1
  63. package/lib/module/controllers/EnsController.js +4 -2
  64. package/lib/module/controllers/EnsController.js.map +1 -1
  65. package/lib/module/controllers/EventsController.js +3 -1
  66. package/lib/module/controllers/EventsController.js.map +1 -1
  67. package/lib/module/controllers/ModalController.js +8 -7
  68. package/lib/module/controllers/ModalController.js.map +1 -1
  69. package/lib/module/controllers/OnRampController.js +118 -52
  70. package/lib/module/controllers/OnRampController.js.map +1 -1
  71. package/lib/module/controllers/OptionsController.js +16 -0
  72. package/lib/module/controllers/OptionsController.js.map +1 -1
  73. package/lib/module/controllers/PublicStateController.js +2 -0
  74. package/lib/module/controllers/PublicStateController.js.map +1 -1
  75. package/lib/module/controllers/RouterController.js +3 -22
  76. package/lib/module/controllers/RouterController.js.map +1 -1
  77. package/lib/module/controllers/SendController.js +100 -98
  78. package/lib/module/controllers/SendController.js.map +1 -1
  79. package/lib/module/controllers/SnackController.js +31 -5
  80. package/lib/module/controllers/SnackController.js.map +1 -1
  81. package/lib/module/controllers/SwapController.js +142 -147
  82. package/lib/module/controllers/SwapController.js.map +1 -1
  83. package/lib/module/controllers/ThemeController.js +2 -0
  84. package/lib/module/controllers/ThemeController.js.map +1 -1
  85. package/lib/module/controllers/TransactionsController.js +23 -17
  86. package/lib/module/controllers/TransactionsController.js.map +1 -1
  87. package/lib/module/index.js +2 -5
  88. package/lib/module/index.js.map +1 -1
  89. package/lib/module/utils/ApiUtil.js +2 -0
  90. package/lib/module/utils/ApiUtil.js.map +1 -1
  91. package/lib/module/utils/AssetUtil.js +5 -14
  92. package/lib/module/utils/AssetUtil.js.map +1 -1
  93. package/lib/module/utils/ConstantsUtil.js +124 -426
  94. package/lib/module/utils/ConstantsUtil.js.map +1 -1
  95. package/lib/module/utils/CoreHelperUtil.js +14 -6
  96. package/lib/module/utils/CoreHelperUtil.js.map +1 -1
  97. package/lib/module/utils/EventUtil.js +2 -0
  98. package/lib/module/utils/EventUtil.js.map +1 -1
  99. package/lib/module/utils/FetchUtil.js +36 -10
  100. package/lib/module/utils/FetchUtil.js.map +1 -1
  101. package/lib/module/utils/RouterUtil.js +2 -0
  102. package/lib/module/utils/RouterUtil.js.map +1 -1
  103. package/lib/module/utils/StorageUtil.js +89 -91
  104. package/lib/module/utils/StorageUtil.js.map +1 -1
  105. package/lib/module/utils/SwapApiUtil.js +13 -22
  106. package/lib/module/utils/SwapApiUtil.js.map +1 -1
  107. package/lib/module/utils/SwapCalculationUtil.js +2 -0
  108. package/lib/module/utils/SwapCalculationUtil.js.map +1 -1
  109. package/lib/module/utils/TypeUtil.js +25 -1
  110. package/lib/module/utils/TypeUtil.js.map +1 -1
  111. package/lib/typescript/controllers/ApiController.d.ts +2 -1
  112. package/lib/typescript/controllers/ApiController.d.ts.map +1 -1
  113. package/lib/typescript/controllers/BlockchainApiController.d.ts +20 -13
  114. package/lib/typescript/controllers/BlockchainApiController.d.ts.map +1 -1
  115. package/lib/typescript/controllers/ConnectionController.d.ts +3 -16
  116. package/lib/typescript/controllers/ConnectionController.d.ts.map +1 -1
  117. package/lib/typescript/controllers/ConnectionsController.d.ts +26 -22
  118. package/lib/typescript/controllers/ConnectionsController.d.ts.map +1 -1
  119. package/lib/typescript/controllers/ModalController.d.ts +1 -1
  120. package/lib/typescript/controllers/ModalController.d.ts.map +1 -1
  121. package/lib/typescript/controllers/OnRampController.d.ts +3 -2
  122. package/lib/typescript/controllers/OnRampController.d.ts.map +1 -1
  123. package/lib/typescript/controllers/OptionsController.d.ts +7 -2
  124. package/lib/typescript/controllers/OptionsController.d.ts.map +1 -1
  125. package/lib/typescript/controllers/RouterController.d.ts +4 -17
  126. package/lib/typescript/controllers/RouterController.d.ts.map +1 -1
  127. package/lib/typescript/controllers/SendController.d.ts +5 -7
  128. package/lib/typescript/controllers/SendController.d.ts.map +1 -1
  129. package/lib/typescript/controllers/SnackController.d.ts +3 -3
  130. package/lib/typescript/controllers/SnackController.d.ts.map +1 -1
  131. package/lib/typescript/controllers/SwapController.d.ts +12 -11
  132. package/lib/typescript/controllers/SwapController.d.ts.map +1 -1
  133. package/lib/typescript/controllers/TransactionsController.d.ts +3 -3
  134. package/lib/typescript/controllers/TransactionsController.d.ts.map +1 -1
  135. package/lib/typescript/index.d.ts +0 -5
  136. package/lib/typescript/index.d.ts.map +1 -1
  137. package/lib/typescript/utils/AssetUtil.d.ts +2 -3
  138. package/lib/typescript/utils/AssetUtil.d.ts.map +1 -1
  139. package/lib/typescript/utils/ConstantsUtil.d.ts +7 -414
  140. package/lib/typescript/utils/ConstantsUtil.d.ts.map +1 -1
  141. package/lib/typescript/utils/CoreHelperUtil.d.ts +5 -4
  142. package/lib/typescript/utils/CoreHelperUtil.d.ts.map +1 -1
  143. package/lib/typescript/utils/FetchUtil.d.ts.map +1 -1
  144. package/lib/typescript/utils/StorageUtil.d.ts +11 -15
  145. package/lib/typescript/utils/StorageUtil.d.ts.map +1 -1
  146. package/lib/typescript/utils/SwapApiUtil.d.ts +3 -3
  147. package/lib/typescript/utils/SwapApiUtil.d.ts.map +1 -1
  148. package/lib/typescript/utils/TypeUtil.d.ts +54 -177
  149. package/lib/typescript/utils/TypeUtil.d.ts.map +1 -1
  150. package/package.json +9 -23
  151. package/src/controllers/ApiController.ts +17 -4
  152. package/src/controllers/BlockchainApiController.ts +74 -119
  153. package/src/controllers/ConnectionController.ts +5 -28
  154. package/src/controllers/ConnectionsController.ts +399 -92
  155. package/src/controllers/EnsController.ts +2 -2
  156. package/src/controllers/EventsController.ts +1 -1
  157. package/src/controllers/ModalController.ts +7 -9
  158. package/src/controllers/OnRampController.ts +178 -81
  159. package/src/controllers/OptionsController.ts +22 -9
  160. package/src/controllers/RouterController.ts +4 -54
  161. package/src/controllers/SendController.ts +124 -113
  162. package/src/controllers/SnackController.ts +31 -5
  163. package/src/controllers/SwapController.ts +165 -181
  164. package/src/controllers/TransactionsController.ts +24 -18
  165. package/src/index.ts +0 -15
  166. package/src/utils/AssetUtil.ts +4 -18
  167. package/src/utils/ConstantsUtil.ts +125 -428
  168. package/src/utils/CoreHelperUtil.ts +30 -8
  169. package/src/utils/FetchUtil.ts +37 -10
  170. package/src/utils/StorageUtil.ts +165 -106
  171. package/src/utils/SwapApiUtil.ts +25 -42
  172. package/src/utils/TypeUtil.ts +64 -171
  173. package/lib/commonjs/controllers/AccountController.js +0 -93
  174. package/lib/commonjs/controllers/AccountController.js.map +0 -1
  175. package/lib/commonjs/controllers/ConnectorController.js +0 -50
  176. package/lib/commonjs/controllers/ConnectorController.js.map +0 -1
  177. package/lib/commonjs/controllers/NetworkController.js +0 -90
  178. package/lib/commonjs/controllers/NetworkController.js.map +0 -1
  179. package/lib/commonjs/controllers/WebviewController.js +0 -52
  180. package/lib/commonjs/controllers/WebviewController.js.map +0 -1
  181. package/lib/commonjs/utils/NetworkUtil.js +0 -46
  182. package/lib/commonjs/utils/NetworkUtil.js.map +0 -1
  183. package/lib/module/controllers/AccountController.js +0 -88
  184. package/lib/module/controllers/AccountController.js.map +0 -1
  185. package/lib/module/controllers/ConnectorController.js +0 -45
  186. package/lib/module/controllers/ConnectorController.js.map +0 -1
  187. package/lib/module/controllers/NetworkController.js +0 -85
  188. package/lib/module/controllers/NetworkController.js.map +0 -1
  189. package/lib/module/controllers/WebviewController.js +0 -47
  190. package/lib/module/controllers/WebviewController.js.map +0 -1
  191. package/lib/module/utils/NetworkUtil.js +0 -40
  192. package/lib/module/utils/NetworkUtil.js.map +0 -1
  193. package/lib/typescript/controllers/AccountController.d.ts +0 -33
  194. package/lib/typescript/controllers/AccountController.d.ts.map +0 -1
  195. package/lib/typescript/controllers/ConnectorController.d.ts +0 -18
  196. package/lib/typescript/controllers/ConnectorController.d.ts.map +0 -1
  197. package/lib/typescript/controllers/NetworkController.d.ts +0 -34
  198. package/lib/typescript/controllers/NetworkController.d.ts.map +0 -1
  199. package/lib/typescript/controllers/WebviewController.d.ts +0 -21
  200. package/lib/typescript/controllers/WebviewController.d.ts.map +0 -1
  201. package/lib/typescript/utils/NetworkUtil.d.ts +0 -8
  202. package/lib/typescript/utils/NetworkUtil.d.ts.map +0 -1
  203. package/src/controllers/AccountController.ts +0 -128
  204. package/src/controllers/ConnectorController.ts +0 -64
  205. package/src/controllers/NetworkController.ts +0 -120
  206. package/src/controllers/WebviewController.ts +0 -63
  207. package/src/utils/NetworkUtil.ts +0 -33
@@ -32,13 +32,14 @@ import type {
32
32
  OnRampQuote,
33
33
  BlockchainApiOnRampWidgetRequest,
34
34
  BlockchainApiOnRampQuotesRequest,
35
- OnRampFiatLimit
35
+ OnRampFiatLimit,
36
+ OnRampCountryDefaults
36
37
  } from '../utils/TypeUtil';
37
38
  import { OptionsController } from './OptionsController';
38
39
  import { ConstantsUtil } from '../utils/ConstantsUtil';
39
40
  import { ApiUtil } from '../utils/ApiUtil';
40
- import type { CaipNetworkId } from '@reown/appkit-common-react-native';
41
- import { ConnectionsController } from './ConnectionsController';
41
+ import type { CaipAddress, CaipNetworkId } from '@reown/appkit-common-react-native';
42
+
42
43
  import { SnackController } from './SnackController';
43
44
 
44
45
  // -- Helpers ------------------------------------------- //
@@ -56,7 +57,11 @@ const getHeaders = () => {
56
57
  };
57
58
  };
58
59
 
60
+ export const EXCLUDED_ONRAMP_PROVIDERS = ['BINANCECONNECT', 'COINBASEPAY'];
61
+
59
62
  // -- Types --------------------------------------------- //
63
+ type WithCaipNetworkId = { caipNetworkId: CaipNetworkId };
64
+
60
65
  export interface BlockchainApiControllerState {
61
66
  clientId: string | null;
62
67
  api: FetchUtil;
@@ -99,14 +104,8 @@ export const BlockchainApiController = {
99
104
  return supportedChains;
100
105
  },
101
106
 
102
- async fetchIdentity({ address }: BlockchainApiIdentityRequest) {
103
- const isSupported = await BlockchainApiController.isNetworkSupported(
104
- ConnectionsController.state.activeCaipNetworkId
105
- );
106
-
107
- if (!isSupported) {
108
- return { avatar: '', name: '' };
109
- }
107
+ async fetchIdentity(params: BlockchainApiIdentityRequest) {
108
+ const { address } = params;
110
109
 
111
110
  return state.api.get<BlockchainApiIdentityResponse>({
112
111
  path: `/v1/identity/${address}`,
@@ -117,17 +116,9 @@ export const BlockchainApiController = {
117
116
  });
118
117
  },
119
118
 
120
- async fetchTransactions({
121
- account,
122
- projectId,
123
- cursor,
124
- onramp,
125
- signal,
126
- cache,
127
- chainId
128
- }: BlockchainApiTransactionsRequest) {
129
- const _chainId = chainId ?? ConnectionsController.state.activeCaipNetworkId;
130
- const isSupported = await BlockchainApiController.isNetworkSupported(_chainId);
119
+ async fetchTransactions(params: BlockchainApiTransactionsRequest) {
120
+ const { account, projectId, cursor, onramp, signal, cache, chainId } = params;
121
+ const isSupported = await BlockchainApiController.isNetworkSupported(chainId);
131
122
 
132
123
  if (!isSupported) {
133
124
  return { data: [], next: undefined };
@@ -140,7 +131,7 @@ export const BlockchainApiController = {
140
131
  projectId,
141
132
  cursor,
142
133
  onramp,
143
- chainId: _chainId
134
+ chainId
144
135
  },
145
136
  signal,
146
137
  cache
@@ -149,10 +140,9 @@ export const BlockchainApiController = {
149
140
  return response;
150
141
  },
151
142
 
152
- async fetchTokenPrice({ projectId, addresses }: BlockchainApiTokenPriceRequest) {
153
- const isSupported = await BlockchainApiController.isNetworkSupported(
154
- ConnectionsController.state.activeCaipNetworkId
155
- );
143
+ async fetchTokenPrice(params: BlockchainApiTokenPriceRequest & WithCaipNetworkId) {
144
+ const { projectId, addresses, caipNetworkId } = params;
145
+ const isSupported = await BlockchainApiController.isNetworkSupported(caipNetworkId);
156
146
 
157
147
  if (!isSupported) {
158
148
  return { fungibles: [] };
@@ -171,14 +161,11 @@ export const BlockchainApiController = {
171
161
  return response;
172
162
  },
173
163
 
174
- async fetchSwapAllowance({
175
- projectId,
176
- tokenAddress,
177
- userAddress
178
- }: BlockchainApiSwapAllowanceRequest) {
179
- const isSupported = await BlockchainApiController.isNetworkSupported(
180
- ConnectionsController.state.activeCaipNetworkId
181
- );
164
+ async fetchSwapAllowance(params: BlockchainApiSwapAllowanceRequest) {
165
+ const { projectId, tokenAddress, userAddress } = params;
166
+ const [namespace, chain] = userAddress.split(':');
167
+ const networkId: CaipNetworkId = `${namespace}:${chain}`;
168
+ const isSupported = await BlockchainApiController.isNetworkSupported(networkId);
182
169
 
183
170
  if (!isSupported) {
184
171
  return { allowance: '0' };
@@ -195,10 +182,9 @@ export const BlockchainApiController = {
195
182
  });
196
183
  },
197
184
 
198
- async fetchGasPrice({ projectId, chainId }: BlockchainApiGasPriceRequest) {
199
- const isSupported = await BlockchainApiController.isNetworkSupported(
200
- ConnectionsController.state.activeCaipNetworkId
201
- );
185
+ async fetchGasPrice(params: BlockchainApiGasPriceRequest) {
186
+ const { projectId, chainId } = params;
187
+ const isSupported = await BlockchainApiController.isNetworkSupported(chainId);
202
188
 
203
189
  if (!isSupported) {
204
190
  throw new Error('Network not supported for Gas Price');
@@ -214,17 +200,11 @@ export const BlockchainApiController = {
214
200
  });
215
201
  },
216
202
 
217
- async fetchSwapQuote({
218
- projectId,
219
- amount,
220
- userAddress,
221
- from,
222
- to,
223
- gasPrice
224
- }: BlockchainApiSwapQuoteRequest) {
225
- const isSupported = await BlockchainApiController.isNetworkSupported(
226
- ConnectionsController.state.activeCaipNetworkId
227
- );
203
+ async fetchSwapQuote(params: BlockchainApiSwapQuoteRequest) {
204
+ const { projectId, amount, userAddress, from, to, gasPrice } = params;
205
+ const [namespace, chain] = userAddress.split(':');
206
+ const networkId: CaipNetworkId = `${namespace}:${chain}`;
207
+ const isSupported = await BlockchainApiController.isNetworkSupported(networkId);
228
208
 
229
209
  if (!isSupported) {
230
210
  return { quotes: [] };
@@ -244,10 +224,9 @@ export const BlockchainApiController = {
244
224
  });
245
225
  },
246
226
 
247
- async fetchSwapTokens({ projectId, chainId }: BlockchainApiSwapTokensRequest) {
248
- const isSupported = await BlockchainApiController.isNetworkSupported(
249
- ConnectionsController.state.activeCaipNetworkId
250
- );
227
+ async fetchSwapTokens(params: BlockchainApiSwapTokensRequest) {
228
+ const { projectId, chainId } = params;
229
+ const isSupported = await BlockchainApiController.isNetworkSupported(chainId);
251
230
 
252
231
  if (!isSupported) {
253
232
  return { tokens: [] };
@@ -263,16 +242,11 @@ export const BlockchainApiController = {
263
242
  });
264
243
  },
265
244
 
266
- async generateSwapCalldata({
267
- amount,
268
- from,
269
- projectId,
270
- to,
271
- userAddress
272
- }: BlockchainApiGenerateSwapCalldataRequest) {
273
- const isSupported = await BlockchainApiController.isNetworkSupported(
274
- ConnectionsController.state.activeCaipNetworkId
275
- );
245
+ async generateSwapCalldata(params: BlockchainApiGenerateSwapCalldataRequest) {
246
+ const { amount, from, projectId, to, userAddress } = params;
247
+ const [namespace, chain] = userAddress.split(':');
248
+ const networkId: CaipNetworkId = `${namespace}:${chain}`;
249
+ const isSupported = await BlockchainApiController.isNetworkSupported(networkId);
276
250
 
277
251
  if (!isSupported) {
278
252
  throw new Error('Network not supported for Swaps');
@@ -294,15 +268,11 @@ export const BlockchainApiController = {
294
268
  });
295
269
  },
296
270
 
297
- async generateApproveCalldata({
298
- from,
299
- projectId,
300
- to,
301
- userAddress
302
- }: BlockchainApiGenerateApproveCalldataRequest) {
303
- const isSupported = await BlockchainApiController.isNetworkSupported(
304
- ConnectionsController.state.activeCaipNetworkId
305
- );
271
+ async generateApproveCalldata(params: BlockchainApiGenerateApproveCalldataRequest) {
272
+ const { from, projectId, to, userAddress } = params;
273
+ const [namespace, chain] = userAddress.split(':');
274
+ const networkId: CaipNetworkId = `${namespace}:${chain}`;
275
+ const isSupported = await BlockchainApiController.isNetworkSupported(networkId);
306
276
 
307
277
  if (!isSupported) {
308
278
  throw new Error('Network not supported for Swaps');
@@ -320,10 +290,15 @@ export const BlockchainApiController = {
320
290
  });
321
291
  },
322
292
 
323
- async getBalance(address: string, chainId?: string, forceUpdate?: string) {
324
- const isSupported = await BlockchainApiController.isNetworkSupported(
325
- ConnectionsController.state.activeCaipNetworkId
326
- );
293
+ async getBalance(address?: CaipAddress, forceUpdate?: CaipAddress[]) {
294
+ const [namespace, chain, plainAddress] = address?.split(':') ?? [];
295
+
296
+ if (!namespace || !chain || !plainAddress) {
297
+ throw new Error('Invalid address');
298
+ }
299
+
300
+ const isSupported = await BlockchainApiController.isNetworkSupported(`${namespace}:${chain}`);
301
+
327
302
  if (!isSupported) {
328
303
  SnackController.showError('Token Balance Unavailable');
329
304
 
@@ -331,13 +306,13 @@ export const BlockchainApiController = {
331
306
  }
332
307
 
333
308
  return state.api.get<BlockchainApiBalanceResponse>({
334
- path: `/v1/account/${address}/balance`,
309
+ path: `/v1/account/${plainAddress}/balance`,
335
310
  headers: getHeaders(),
336
311
  params: {
337
312
  currency: 'usd',
338
313
  projectId: OptionsController.state.projectId,
339
- chainId,
340
- forceUpdate
314
+ chainId: `${namespace}:${chain}`,
315
+ forceUpdate: forceUpdate?.join(',')
341
316
  }
342
317
  });
343
318
  },
@@ -353,17 +328,6 @@ export const BlockchainApiController = {
353
328
  });
354
329
  },
355
330
 
356
- async fetchOnRampCountries() {
357
- return await state.api.get<OnRampCountry[]>({
358
- path: '/v1/onramp/providers/properties',
359
- headers: getHeaders(),
360
- params: {
361
- projectId: OptionsController.state.projectId,
362
- type: 'countries'
363
- }
364
- });
365
- },
366
-
367
331
  async fetchOnRampServiceProviders() {
368
332
  return await state.api.get<OnRampServiceProvider[]>({
369
333
  path: '/v1/onramp/providers',
@@ -374,48 +338,39 @@ export const BlockchainApiController = {
374
338
  });
375
339
  },
376
340
 
341
+ async fetchOnRampCountries() {
342
+ return await this.fetchProperties<OnRampCountry[]>('countries');
343
+ },
344
+
377
345
  async fetchOnRampPaymentMethods(params: { countries?: string }) {
378
- return await state.api.get<OnRampPaymentMethod[]>({
379
- path: '/v1/onramp/providers/properties',
380
- headers: getHeaders(),
381
- params: {
382
- projectId: OptionsController.state.projectId,
383
- type: 'payment-methods',
384
- ...params
385
- }
386
- });
346
+ return await this.fetchProperties<OnRampPaymentMethod[]>('payment-methods', params);
387
347
  },
388
348
 
389
349
  async fetchOnRampCryptoCurrencies(params: { countries?: string }) {
390
- return await state.api.get<OnRampCryptoCurrency[]>({
391
- path: '/v1/onramp/providers/properties',
392
- headers: getHeaders(),
393
- params: {
394
- projectId: OptionsController.state.projectId,
395
- type: 'crypto-currencies',
396
- ...params
397
- }
398
- });
350
+ return await this.fetchProperties<OnRampCryptoCurrency[]>('crypto-currencies', params);
399
351
  },
400
352
 
401
353
  async fetchOnRampFiatCurrencies() {
402
- return await state.api.get<OnRampFiatCurrency[]>({
403
- path: '/v1/onramp/providers/properties',
404
- headers: getHeaders(),
405
- params: {
406
- projectId: OptionsController.state.projectId,
407
- type: 'fiat-currencies'
408
- }
409
- });
354
+ return await this.fetchProperties<OnRampFiatCurrency[]>('fiat-currencies');
410
355
  },
411
356
 
412
357
  async fetchOnRampFiatLimits() {
413
- return await state.api.get<OnRampFiatLimit[]>({
358
+ return await this.fetchProperties<OnRampFiatLimit[]>('fiat-purchases-limits');
359
+ },
360
+
361
+ async fetchOnRampCountriesDefaults() {
362
+ return await this.fetchProperties<OnRampCountryDefaults[]>('countries-defaults');
363
+ },
364
+
365
+ async fetchProperties<T>(type: string, params?: Record<string, string>) {
366
+ return await state.api.get<T>({
414
367
  path: '/v1/onramp/providers/properties',
415
368
  headers: getHeaders(),
416
369
  params: {
417
370
  projectId: OptionsController.state.projectId,
418
- type: 'fiat-purchases-limits'
371
+ type,
372
+ excludeProviders: EXCLUDED_ONRAMP_PROVIDERS.join(','),
373
+ ...params
419
374
  }
420
375
  });
421
376
  },
@@ -1,31 +1,22 @@
1
1
  import { proxy, ref } from 'valtio';
2
2
  import { subscribeKey as subKey } from 'valtio/utils';
3
- import type { SocialProvider } from '@reown/appkit-common-react-native';
3
+ import type { SocialProvider, WalletDeepLink } from '@reown/appkit-common-react-native';
4
4
  import { CoreHelperUtil } from '../utils/CoreHelperUtil';
5
5
  import { StorageUtil } from '../utils/StorageUtil';
6
6
  import type {
7
- Connector,
8
7
  EstimateGasTransactionArgs,
9
8
  SendTransactionArgs,
10
9
  WcWallet,
11
10
  WriteContractArgs
12
11
  } from '../utils/TypeUtil';
13
- import { ConnectorController } from './ConnectorController';
14
12
 
15
13
  // -- Types --------------------------------------------- //
16
- export interface ConnectExternalOptions {
17
- id: Connector['id'];
18
- type: Connector['type'];
19
- provider?: Connector['provider'];
20
- info?: Connector['info'];
21
- }
22
14
 
23
15
  export interface ConnectionControllerClient {
24
16
  connectWalletConnect: (
25
17
  onUri: (uri: string) => void,
26
18
  walletUniversalLink?: string
27
19
  ) => Promise<void>;
28
- connectExternal?: (options: ConnectExternalOptions) => Promise<void>;
29
20
  signMessage: (message: string) => Promise<string>;
30
21
  sendTransaction: (args: SendTransactionArgs) => Promise<`0x${string}` | null>;
31
22
  parseUnits: (value: string, decimals: number) => bigint;
@@ -42,16 +33,12 @@ export interface ConnectionControllerState {
42
33
  wcUri?: string;
43
34
  wcPromise?: Promise<void>;
44
35
  wcPairingExpiry?: number;
45
- wcLinking?: {
46
- href: string;
47
- name: string;
48
- };
36
+ wcLinking?: WalletDeepLink;
49
37
  wcError?: boolean;
50
38
  pressedWallet?: WcWallet;
51
39
  recentWallets?: WcWallet[];
52
- selectedSocialProvider?: SocialProvider;
53
- connectedWalletImageUrl?: string;
54
- connectedSocialProvider?: SocialProvider;
40
+ connectedWalletImageUrl?: string; //TODO: remove this
41
+ connectedSocialProvider?: SocialProvider; // TODO: remove this
55
42
  }
56
43
 
57
44
  type StateKey = keyof ConnectionControllerState;
@@ -91,11 +78,6 @@ export const ConnectionController = {
91
78
  }, walletUniversalLink);
92
79
  },
93
80
 
94
- async connectExternal(options: ConnectExternalOptions) {
95
- await this._getClient().connectExternal?.(options);
96
- ConnectorController.setConnectedConnector(options.type);
97
- },
98
-
99
81
  async signMessage(message: string) {
100
82
  return this._getClient().signMessage(message);
101
83
  },
@@ -133,10 +115,6 @@ export const ConnectionController = {
133
115
  state.recentWallets = wallets;
134
116
  },
135
117
 
136
- setSelectedSocialProvider(provider: ConnectionControllerState['selectedSocialProvider']) {
137
- state.selectedSocialProvider = provider;
138
- },
139
-
140
118
  async setConnectedWalletImageUrl(url: ConnectionControllerState['connectedWalletImageUrl']) {
141
119
  state.connectedWalletImageUrl = url;
142
120
 
@@ -194,9 +172,8 @@ export const ConnectionController = {
194
172
  resetWcConnection() {
195
173
  this.clearUri();
196
174
  state.pressedWallet = undefined;
197
- state.selectedSocialProvider = undefined;
198
175
  ConnectionController.setConnectedWalletImageUrl(undefined);
199
- ConnectorController.setConnectedConnector(undefined);
176
+ // ConnectorController.setConnectedConnector(undefined);
200
177
  StorageUtil.removeWalletConnectDeepLink();
201
178
  },
202
179