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

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 (144) hide show
  1. package/lib/commonjs/controllers/ApiController.js +11 -11
  2. package/lib/commonjs/controllers/ApiController.js.map +1 -1
  3. package/lib/commonjs/controllers/BlockchainApiController.js +187 -14
  4. package/lib/commonjs/controllers/BlockchainApiController.js.map +1 -1
  5. package/lib/commonjs/controllers/ConnectionController.js +7 -1
  6. package/lib/commonjs/controllers/ConnectionController.js.map +1 -1
  7. package/lib/commonjs/controllers/ConnectionsController.js +156 -0
  8. package/lib/commonjs/controllers/ConnectionsController.js.map +1 -0
  9. package/lib/commonjs/controllers/ConnectorController.js +1 -0
  10. package/lib/commonjs/controllers/ConnectorController.js.map +1 -1
  11. package/lib/commonjs/controllers/OnRampController.js +421 -0
  12. package/lib/commonjs/controllers/OnRampController.js.map +1 -0
  13. package/lib/commonjs/controllers/OptionsController.js +6 -3
  14. package/lib/commonjs/controllers/OptionsController.js.map +1 -1
  15. package/lib/commonjs/controllers/RouterController.js +3 -2
  16. package/lib/commonjs/controllers/RouterController.js.map +1 -1
  17. package/lib/commonjs/controllers/SwapController.js +13 -5
  18. package/lib/commonjs/controllers/SwapController.js.map +1 -1
  19. package/lib/commonjs/controllers/ThemeController.js +9 -1
  20. package/lib/commonjs/controllers/ThemeController.js.map +1 -1
  21. package/lib/commonjs/controllers/TransactionsController.js +2 -2
  22. package/lib/commonjs/controllers/TransactionsController.js.map +1 -1
  23. package/lib/commonjs/index.js +10 -3
  24. package/lib/commonjs/index.js.map +1 -1
  25. package/lib/commonjs/utils/AssetUtil.js +5 -6
  26. package/lib/commonjs/utils/AssetUtil.js.map +1 -1
  27. package/lib/commonjs/utils/ConstantsUtil.js +492 -7
  28. package/lib/commonjs/utils/ConstantsUtil.js.map +1 -1
  29. package/lib/commonjs/utils/CoreHelperUtil.js +28 -0
  30. package/lib/commonjs/utils/CoreHelperUtil.js.map +1 -1
  31. package/lib/commonjs/utils/FetchUtil.js +15 -4
  32. package/lib/commonjs/utils/FetchUtil.js.map +1 -1
  33. package/lib/commonjs/utils/StorageUtil.js +218 -0
  34. package/lib/commonjs/utils/StorageUtil.js.map +1 -1
  35. package/lib/commonjs/utils/SwapApiUtil.js +9 -4
  36. package/lib/commonjs/utils/SwapApiUtil.js.map +1 -1
  37. package/lib/module/controllers/ApiController.js +11 -11
  38. package/lib/module/controllers/ApiController.js.map +1 -1
  39. package/lib/module/controllers/BlockchainApiController.js +187 -14
  40. package/lib/module/controllers/BlockchainApiController.js.map +1 -1
  41. package/lib/module/controllers/ConnectionController.js +7 -1
  42. package/lib/module/controllers/ConnectionController.js.map +1 -1
  43. package/lib/module/controllers/ConnectionsController.js +151 -0
  44. package/lib/module/controllers/ConnectionsController.js.map +1 -0
  45. package/lib/module/controllers/ConnectorController.js +1 -0
  46. package/lib/module/controllers/ConnectorController.js.map +1 -1
  47. package/lib/module/controllers/OnRampController.js +416 -0
  48. package/lib/module/controllers/OnRampController.js.map +1 -0
  49. package/lib/module/controllers/OptionsController.js +6 -3
  50. package/lib/module/controllers/OptionsController.js.map +1 -1
  51. package/lib/module/controllers/RouterController.js +3 -2
  52. package/lib/module/controllers/RouterController.js.map +1 -1
  53. package/lib/module/controllers/SwapController.js +13 -5
  54. package/lib/module/controllers/SwapController.js.map +1 -1
  55. package/lib/module/controllers/ThemeController.js +9 -1
  56. package/lib/module/controllers/ThemeController.js.map +1 -1
  57. package/lib/module/controllers/TransactionsController.js +2 -2
  58. package/lib/module/controllers/TransactionsController.js.map +1 -1
  59. package/lib/module/index.js +2 -1
  60. package/lib/module/index.js.map +1 -1
  61. package/lib/module/utils/AssetUtil.js +5 -6
  62. package/lib/module/utils/AssetUtil.js.map +1 -1
  63. package/lib/module/utils/ConstantsUtil.js +491 -6
  64. package/lib/module/utils/ConstantsUtil.js.map +1 -1
  65. package/lib/module/utils/CoreHelperUtil.js +26 -0
  66. package/lib/module/utils/CoreHelperUtil.js.map +1 -1
  67. package/lib/module/utils/FetchUtil.js +15 -4
  68. package/lib/module/utils/FetchUtil.js.map +1 -1
  69. package/lib/module/utils/StorageUtil.js +219 -0
  70. package/lib/module/utils/StorageUtil.js.map +1 -1
  71. package/lib/module/utils/SwapApiUtil.js +9 -4
  72. package/lib/module/utils/SwapApiUtil.js.map +1 -1
  73. package/lib/typescript/controllers/AccountController.d.ts +2 -2
  74. package/lib/typescript/controllers/AccountController.d.ts.map +1 -1
  75. package/lib/typescript/controllers/ApiController.d.ts +1 -1
  76. package/lib/typescript/controllers/ApiController.d.ts.map +1 -1
  77. package/lib/typescript/controllers/BlockchainApiController.d.ts +27 -2
  78. package/lib/typescript/controllers/BlockchainApiController.d.ts.map +1 -1
  79. package/lib/typescript/controllers/ConnectionController.d.ts +2 -0
  80. package/lib/typescript/controllers/ConnectionController.d.ts.map +1 -1
  81. package/lib/typescript/controllers/ConnectionsController.d.ts +41 -0
  82. package/lib/typescript/controllers/ConnectionsController.d.ts.map +1 -0
  83. package/lib/typescript/controllers/ConnectorController.d.ts.map +1 -1
  84. package/lib/typescript/controllers/NetworkController.d.ts +1 -1
  85. package/lib/typescript/controllers/NetworkController.d.ts.map +1 -1
  86. package/lib/typescript/controllers/OnRampController.d.ts +54 -0
  87. package/lib/typescript/controllers/OnRampController.d.ts.map +1 -0
  88. package/lib/typescript/controllers/OptionsController.d.ts +5 -2
  89. package/lib/typescript/controllers/OptionsController.d.ts.map +1 -1
  90. package/lib/typescript/controllers/PublicStateController.d.ts +1 -1
  91. package/lib/typescript/controllers/PublicStateController.d.ts.map +1 -1
  92. package/lib/typescript/controllers/RouterController.d.ts +5 -3
  93. package/lib/typescript/controllers/RouterController.d.ts.map +1 -1
  94. package/lib/typescript/controllers/SwapController.d.ts.map +1 -1
  95. package/lib/typescript/controllers/ThemeController.d.ts +1 -1
  96. package/lib/typescript/controllers/ThemeController.d.ts.map +1 -1
  97. package/lib/typescript/index.d.ts +2 -1
  98. package/lib/typescript/index.d.ts.map +1 -1
  99. package/lib/typescript/utils/AssetUtil.d.ts +2 -2
  100. package/lib/typescript/utils/AssetUtil.d.ts.map +1 -1
  101. package/lib/typescript/utils/ConstantsUtil.d.ts +473 -1
  102. package/lib/typescript/utils/ConstantsUtil.d.ts.map +1 -1
  103. package/lib/typescript/utils/CoreHelperUtil.d.ts +5 -2
  104. package/lib/typescript/utils/CoreHelperUtil.d.ts.map +1 -1
  105. package/lib/typescript/utils/FetchUtil.d.ts +5 -5
  106. package/lib/typescript/utils/FetchUtil.d.ts.map +1 -1
  107. package/lib/typescript/utils/NetworkUtil.d.ts +1 -1
  108. package/lib/typescript/utils/NetworkUtil.d.ts.map +1 -1
  109. package/lib/typescript/utils/StorageUtil.d.ts +26 -2
  110. package/lib/typescript/utils/StorageUtil.d.ts.map +1 -1
  111. package/lib/typescript/utils/SwapApiUtil.d.ts.map +1 -1
  112. package/lib/typescript/utils/TypeUtil.d.ts +164 -14
  113. package/lib/typescript/utils/TypeUtil.d.ts.map +1 -1
  114. package/package.json +3 -2
  115. package/src/controllers/AccountController.ts +2 -2
  116. package/src/controllers/ApiController.ts +12 -7
  117. package/src/controllers/BlockchainApiController.ts +238 -15
  118. package/src/controllers/ConnectionController.ts +9 -1
  119. package/src/controllers/ConnectionsController.ts +236 -0
  120. package/src/controllers/ConnectorController.ts +1 -0
  121. package/src/controllers/NetworkController.ts +1 -1
  122. package/src/controllers/OnRampController.ts +585 -0
  123. package/src/controllers/OptionsController.ts +12 -6
  124. package/src/controllers/PublicStateController.ts +1 -1
  125. package/src/controllers/RouterController.ts +17 -3
  126. package/src/controllers/SwapController.ts +14 -5
  127. package/src/controllers/ThemeController.ts +11 -2
  128. package/src/controllers/TransactionsController.ts +2 -2
  129. package/src/index.ts +6 -1
  130. package/src/utils/AssetUtil.ts +5 -7
  131. package/src/utils/ConstantsUtil.ts +475 -6
  132. package/src/utils/CoreHelperUtil.ts +38 -3
  133. package/src/utils/FetchUtil.ts +16 -9
  134. package/src/utils/NetworkUtil.ts +1 -1
  135. package/src/utils/StorageUtil.ts +267 -2
  136. package/src/utils/SwapApiUtil.ts +10 -4
  137. package/src/utils/TypeUtil.ts +184 -17
  138. package/lib/commonjs/utils/ConnectionUtil.js +0 -33
  139. package/lib/commonjs/utils/ConnectionUtil.js.map +0 -1
  140. package/lib/module/utils/ConnectionUtil.js +0 -27
  141. package/lib/module/utils/ConnectionUtil.js.map +0 -1
  142. package/lib/typescript/utils/ConnectionUtil.d.ts +0 -4
  143. package/lib/typescript/utils/ConnectionUtil.d.ts.map +0 -1
  144. package/src/utils/ConnectionUtil.ts +0 -27
@@ -17,6 +17,7 @@ import { CoreHelperUtil } from '../utils/CoreHelperUtil';
17
17
  import { ConnectionController } from './ConnectionController';
18
18
  import { TransactionsController } from './TransactionsController';
19
19
  import { EventsController } from './EventsController';
20
+ import { ConnectionsController } from './ConnectionsController';
20
21
 
21
22
  // -- Constants ---------------------------------------- //
22
23
  export const INITIAL_GAS_LIMIT = 150000;
@@ -158,9 +159,17 @@ export const SwapController = {
158
159
  },
159
160
 
160
161
  getParams() {
161
- const caipAddress = AccountController.state.caipAddress;
162
- const address = CoreHelperUtil.getPlainAddress(caipAddress);
163
- const networkAddress = NetworkController.getActiveNetworkTokenAddress();
162
+ const { activeAddress, activeNamespace, activeNetwork } = ConnectionsController.state;
163
+ const address = CoreHelperUtil.getPlainAddress(activeAddress);
164
+
165
+ if (!activeNamespace || !activeNetwork) {
166
+ throw new Error('No active namespace or network found to swap the tokens from.');
167
+ }
168
+
169
+ const networkAddress = `${activeNetwork.caipNetworkId ?? 'eip155:1'}:${
170
+ ConstantsUtil.NATIVE_TOKEN_ADDRESS[activeNamespace]
171
+ }`;
172
+
164
173
  const type = ConnectorController.state.connectedConnector;
165
174
 
166
175
  if (!address) {
@@ -178,7 +187,7 @@ export const SwapController = {
178
187
  return {
179
188
  networkAddress,
180
189
  fromAddress: address,
181
- fromCaipAddress: caipAddress,
190
+ fromCaipAddress: activeAddress,
182
191
  sourceTokenAddress: state.sourceToken?.address,
183
192
  toTokenAddress: state.toToken?.address,
184
193
  toTokenAmount: state.toTokenAmount,
@@ -189,7 +198,7 @@ export const SwapController = {
189
198
  invalidSourceToken,
190
199
  invalidSourceTokenAmount,
191
200
  availableToSwap:
192
- caipAddress && !invalidToToken && !invalidSourceToken && !invalidSourceTokenAmount,
201
+ activeAddress && !invalidToToken && !invalidSourceToken && !invalidSourceTokenAmount,
193
202
  isAuthConnector: type === 'AUTH'
194
203
  };
195
204
  },
@@ -1,10 +1,11 @@
1
+ import { Appearance } from 'react-native';
1
2
  import { proxy, subscribe as sub } from 'valtio';
2
3
  import type { ThemeMode, ThemeVariables } from '@reown/appkit-common-react-native';
3
4
 
4
5
  // -- Types --------------------------------------------- //
5
6
  export interface ThemeControllerState {
6
7
  themeMode?: ThemeMode;
7
- themeVariables: ThemeVariables;
8
+ themeVariables?: ThemeVariables;
8
9
  }
9
10
 
10
11
  // -- State --------------------------------------------- //
@@ -22,10 +23,18 @@ export const ThemeController = {
22
23
  },
23
24
 
24
25
  setThemeMode(themeMode: ThemeControllerState['themeMode']) {
25
- state.themeMode = themeMode;
26
+ if (!themeMode) {
27
+ state.themeMode = Appearance.getColorScheme() as ThemeMode;
28
+ } else {
29
+ state.themeMode = themeMode;
30
+ }
26
31
  },
27
32
 
28
33
  setThemeVariables(themeVariables: ThemeControllerState['themeVariables']) {
34
+ if (!themeVariables) {
35
+ state.themeVariables = {};
36
+ }
37
+
29
38
  state.themeVariables = { ...state.themeVariables, ...themeVariables };
30
39
  }
31
40
  };
@@ -3,9 +3,9 @@ import { proxy, subscribe as sub } from 'valtio/vanilla';
3
3
  import { OptionsController } from './OptionsController';
4
4
  import { EventsController } from './EventsController';
5
5
  import { SnackController } from './SnackController';
6
- import { NetworkController } from './NetworkController';
7
6
  import { BlockchainApiController } from './BlockchainApiController';
8
7
  import { AccountController } from './AccountController';
8
+ import { ConnectionsController } from './ConnectionsController';
9
9
 
10
10
  // -- Types --------------------------------------------- //
11
11
  type TransactionByMonthMap = Record<string, Transaction[]>;
@@ -121,7 +121,7 @@ export const TransactionsController = {
121
121
  },
122
122
 
123
123
  filterByConnectedChain(transactions: Transaction[]) {
124
- const chainId = NetworkController.state.caipNetwork?.id;
124
+ const chainId = ConnectionsController.state.activeCaipNetworkId;
125
125
  const filteredTransactions = transactions.filter(
126
126
  transaction => transaction.metadata.chain === chainId
127
127
  );
package/src/index.ts CHANGED
@@ -21,6 +21,11 @@ export {
21
21
  type ConnectionControllerState
22
22
  } from './controllers/ConnectionController';
23
23
 
24
+ export {
25
+ ConnectionsController,
26
+ type ConnectionsControllerState
27
+ } from './controllers/ConnectionsController';
28
+
24
29
  export {
25
30
  ConnectorController,
26
31
  type ConnectorControllerState
@@ -56,12 +61,12 @@ export {
56
61
 
57
62
  export { SendController, type SendControllerState } from './controllers/SendController';
58
63
 
64
+ export { OnRampController, type OnRampControllerState } from './controllers/OnRampController';
59
65
  export { WebviewController, type WebviewControllerState } from './controllers/WebviewController';
60
66
 
61
67
  // -- Utils -------------------------------------------------------------------
62
68
  export { ApiUtil } from './utils/ApiUtil';
63
69
  export { AssetUtil } from './utils/AssetUtil';
64
- export { ConnectionUtil } from './utils/ConnectionUtil';
65
70
  export { ConstantsUtil } from './utils/ConstantsUtil';
66
71
  export { CoreHelperUtil } from './utils/CoreHelperUtil';
67
72
  export { StorageUtil } from './utils/StorageUtil';
@@ -1,5 +1,5 @@
1
1
  import { AssetController } from '../controllers/AssetController';
2
- import type { CaipNetwork, Connector, WcWallet } from './TypeUtil';
2
+ import type { Connector, WcWallet } from './TypeUtil';
3
3
 
4
4
  export const AssetUtil = {
5
5
  getWalletImage(wallet?: WcWallet) {
@@ -14,13 +14,11 @@ export const AssetUtil = {
14
14
  return undefined;
15
15
  },
16
16
 
17
- getNetworkImage(network?: CaipNetwork) {
18
- if (network?.imageUrl) {
19
- return network?.imageUrl;
20
- }
17
+ getNetworkImage(networkId?: string | number) {
18
+ //TODO: check if imageUrl case is needed
21
19
 
22
- if (network?.imageId) {
23
- return AssetController.state.networkImages[network.imageId];
20
+ if (networkId) {
21
+ return AssetController.state.networkImages[networkId];
24
22
  }
25
23
 
26
24
  return undefined;
@@ -1,12 +1,30 @@
1
+ import type { ChainNamespace } from '@reown/appkit-common-react-native';
1
2
  import type { Features } from './TypeUtil';
2
3
 
4
+ //TODO: enable this again after implemented
3
5
  const defaultFeatures: Features = {
4
- swaps: true,
5
- email: true,
6
- emailShowWallets: true,
6
+ swaps: false,
7
+ onramp: false,
8
+ email: false,
9
+ emailShowWallets: false,
7
10
  socials: ['x', 'discord', 'apple']
8
11
  };
9
12
 
13
+ export const OnRampErrorType = {
14
+ AMOUNT_TOO_LOW: 'INVALID_AMOUNT_TOO_LOW',
15
+ AMOUNT_TOO_HIGH: 'INVALID_AMOUNT_TOO_HIGH',
16
+ INVALID_AMOUNT: 'INVALID_AMOUNT',
17
+ INCOMPATIBLE_REQUEST: 'INCOMPATIBLE_REQUEST',
18
+ BAD_REQUEST: 'BAD_REQUEST',
19
+ FAILED_TO_LOAD: 'FAILED_TO_LOAD',
20
+ FAILED_TO_LOAD_COUNTRIES: 'FAILED_TO_LOAD_COUNTRIES',
21
+ FAILED_TO_LOAD_PROVIDERS: 'FAILED_TO_LOAD_PROVIDERS',
22
+ FAILED_TO_LOAD_METHODS: 'FAILED_TO_LOAD_METHODS',
23
+ FAILED_TO_LOAD_CURRENCIES: 'FAILED_TO_LOAD_CURRENCIES',
24
+ FAILED_TO_LOAD_LIMITS: 'FAILED_TO_LOAD_LIMITS',
25
+ UNKNOWN: 'UNKNOWN_ERROR'
26
+ } as const;
27
+
10
28
  export const ConstantsUtil = {
11
29
  FOUR_MINUTES_MS: 240000,
12
30
 
@@ -14,11 +32,18 @@ export const ConstantsUtil = {
14
32
 
15
33
  ONE_SEC_MS: 1000,
16
34
 
17
- EMAIL_REGEX: /^[a-zA-Z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)+$/,
35
+ EMAIL_REGEX: /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)+$/,
18
36
 
19
37
  LINKING_ERROR: 'LINKING_ERROR',
20
38
 
21
- NATIVE_TOKEN_ADDRESS: '0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee',
39
+ NATIVE_TOKEN_ADDRESS: {
40
+ eip155: '0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee',
41
+ solana: 'So11111111111111111111111111111111111111111',
42
+ polkadot: '0x',
43
+ bip122: '0x'
44
+ } as const satisfies Record<ChainNamespace, string>,
45
+
46
+ ONRAMP_ERROR_TYPES: OnRampErrorType,
22
47
 
23
48
  SWAP_SUGGESTED_TOKENS: [
24
49
  'ETH',
@@ -139,5 +164,449 @@ export const ConstantsUtil = {
139
164
 
140
165
  CONVERT_SLIPPAGE_TOLERANCE: 1,
141
166
 
142
- DEFAULT_FEATURES: defaultFeatures
167
+ DEFAULT_FEATURES: defaultFeatures,
168
+
169
+ //based on country-to-currency npm library
170
+ COUNTRY_CURRENCIES: {
171
+ AD: 'EUR',
172
+ AE: 'AED',
173
+ AF: 'AFN',
174
+ AG: 'XCD',
175
+ AI: 'XCD',
176
+ AL: 'ALL',
177
+ AM: 'AMD',
178
+ AN: 'ANG',
179
+ AO: 'AOA',
180
+ AQ: 'USD',
181
+ AR: 'ARS',
182
+ AS: 'USD',
183
+ AT: 'EUR',
184
+ AU: 'AUD',
185
+ AW: 'AWG',
186
+ AX: 'EUR',
187
+ AZ: 'AZN',
188
+ BA: 'BAM',
189
+ BB: 'BBD',
190
+ BD: 'BDT',
191
+ BE: 'EUR',
192
+ BF: 'XOF',
193
+ BG: 'BGN',
194
+ BH: 'BHD',
195
+ BI: 'BIF',
196
+ BJ: 'XOF',
197
+ BL: 'EUR',
198
+ BM: 'BMD',
199
+ BN: 'BND',
200
+ BO: 'BOB',
201
+ BQ: 'USD',
202
+ BR: 'BRL',
203
+ BS: 'BSD',
204
+ BT: 'BTN',
205
+ BV: 'NOK',
206
+ BW: 'BWP',
207
+ BY: 'BYN',
208
+ BZ: 'BZD',
209
+ CA: 'CAD',
210
+ CC: 'AUD',
211
+ CD: 'CDF',
212
+ CF: 'XAF',
213
+ CG: 'XAF',
214
+ CH: 'CHF',
215
+ CI: 'XOF',
216
+ CK: 'NZD',
217
+ CL: 'CLP',
218
+ CM: 'XAF',
219
+ CN: 'CNY',
220
+ CO: 'COP',
221
+ CR: 'CRC',
222
+ CU: 'CUP',
223
+ CV: 'CVE',
224
+ CW: 'ANG',
225
+ CX: 'AUD',
226
+ CY: 'EUR',
227
+ CZ: 'CZK',
228
+ DE: 'EUR',
229
+ DJ: 'DJF',
230
+ DK: 'DKK',
231
+ DM: 'XCD',
232
+ DO: 'DOP',
233
+ DZ: 'DZD',
234
+ EC: 'USD',
235
+ EE: 'EUR',
236
+ EG: 'EGP',
237
+ EH: 'MAD',
238
+ ER: 'ERN',
239
+ ES: 'EUR',
240
+ ET: 'ETB',
241
+ FI: 'EUR',
242
+ FJ: 'FJD',
243
+ FK: 'FKP',
244
+ FM: 'USD',
245
+ FO: 'DKK',
246
+ FR: 'EUR',
247
+ GA: 'XAF',
248
+ GB: 'GBP',
249
+ GD: 'XCD',
250
+ GE: 'GEL',
251
+ GF: 'EUR',
252
+ GG: 'GBP',
253
+ GH: 'GHS',
254
+ GI: 'GIP',
255
+ GL: 'DKK',
256
+ GM: 'GMD',
257
+ GN: 'GNF',
258
+ GP: 'EUR',
259
+ GQ: 'XAF',
260
+ GR: 'EUR',
261
+ GS: 'FKP',
262
+ GT: 'GTQ',
263
+ GU: 'USD',
264
+ GW: 'XOF',
265
+ GY: 'GYD',
266
+ HK: 'HKD',
267
+ HM: 'AUD',
268
+ HN: 'HNL',
269
+ HR: 'EUR',
270
+ HT: 'HTG',
271
+ HU: 'HUF',
272
+ ID: 'IDR',
273
+ IE: 'EUR',
274
+ IL: 'ILS',
275
+ IM: 'GBP',
276
+ IN: 'INR',
277
+ IO: 'USD',
278
+ IQ: 'IQD',
279
+ IR: 'IRR',
280
+ IS: 'ISK',
281
+ IT: 'EUR',
282
+ JE: 'GBP',
283
+ JM: 'JMD',
284
+ JO: 'JOD',
285
+ JP: 'JPY',
286
+ KE: 'KES',
287
+ KG: 'KGS',
288
+ KH: 'KHR',
289
+ KI: 'AUD',
290
+ KM: 'KMF',
291
+ KN: 'XCD',
292
+ KP: 'KPW',
293
+ KR: 'KRW',
294
+ KW: 'KWD',
295
+ KY: 'KYD',
296
+ KZ: 'KZT',
297
+ LA: 'LAK',
298
+ LB: 'LBP',
299
+ LC: 'XCD',
300
+ LI: 'CHF',
301
+ LK: 'LKR',
302
+ LR: 'LRD',
303
+ LS: 'LSL',
304
+ LT: 'EUR',
305
+ LU: 'EUR',
306
+ LV: 'EUR',
307
+ LY: 'LYD',
308
+ MA: 'MAD',
309
+ MC: 'EUR',
310
+ MD: 'MDL',
311
+ ME: 'EUR',
312
+ MF: 'EUR',
313
+ MG: 'MGA',
314
+ MH: 'USD',
315
+ MK: 'MKD',
316
+ ML: 'XOF',
317
+ MM: 'MMK',
318
+ MN: 'MNT',
319
+ MO: 'MOP',
320
+ MP: 'USD',
321
+ MQ: 'EUR',
322
+ MR: 'MRU',
323
+ MS: 'XCD',
324
+ MT: 'EUR',
325
+ MU: 'MUR',
326
+ MV: 'MVR',
327
+ MW: 'MWK',
328
+ MX: 'MXN',
329
+ MY: 'MYR',
330
+ MZ: 'MZN',
331
+ NA: 'NAD',
332
+ NC: 'XPF',
333
+ NE: 'XOF',
334
+ NF: 'AUD',
335
+ NG: 'NGN',
336
+ NI: 'NIO',
337
+ NL: 'EUR',
338
+ NO: 'NOK',
339
+ NP: 'NPR',
340
+ NR: 'AUD',
341
+ NU: 'NZD',
342
+ NZ: 'NZD',
343
+ OM: 'OMR',
344
+ PA: 'PAB',
345
+ PE: 'PEN',
346
+ PF: 'XPF',
347
+ PG: 'PGK',
348
+ PH: 'PHP',
349
+ PK: 'PKR',
350
+ PL: 'PLN',
351
+ PM: 'EUR',
352
+ PN: 'NZD',
353
+ PR: 'USD',
354
+ PS: 'ILS',
355
+ PT: 'EUR',
356
+ PW: 'USD',
357
+ PY: 'PYG',
358
+ QA: 'QAR',
359
+ RE: 'EUR',
360
+ RO: 'RON',
361
+ RS: 'RSD',
362
+ RU: 'RUB',
363
+ RW: 'RWF',
364
+ SA: 'SAR',
365
+ SB: 'SBD',
366
+ SC: 'SCR',
367
+ SD: 'SDG',
368
+ SE: 'SEK',
369
+ SG: 'SGD',
370
+ SH: 'SHP',
371
+ SI: 'EUR',
372
+ SJ: 'NOK',
373
+ SK: 'EUR',
374
+ SL: 'SLE',
375
+ SM: 'EUR',
376
+ SN: 'XOF',
377
+ SO: 'SOS',
378
+ SR: 'SRD',
379
+ SS: 'SSP',
380
+ ST: 'STN',
381
+ SV: 'USD',
382
+ SX: 'ANG',
383
+ SY: 'SYP',
384
+ SZ: 'SZL',
385
+ TC: 'USD',
386
+ TD: 'XAF',
387
+ TF: 'EUR',
388
+ TG: 'XOF',
389
+ TH: 'THB',
390
+ TJ: 'TJS',
391
+ TK: 'NZD',
392
+ TL: 'USD',
393
+ TM: 'TMT',
394
+ TN: 'TND',
395
+ TO: 'TOP',
396
+ TR: 'TRY',
397
+ TT: 'TTD',
398
+ TV: 'AUD',
399
+ TW: 'TWD',
400
+ TZ: 'TZS',
401
+ UA: 'UAH',
402
+ UG: 'UGX',
403
+ UM: 'USD',
404
+ US: 'USD',
405
+ UY: 'UYU',
406
+ UZ: 'UZS',
407
+ VA: 'EUR',
408
+ VC: 'XCD',
409
+ VE: 'VED',
410
+ VG: 'USD',
411
+ VI: 'USD',
412
+ VN: 'VND',
413
+ VU: 'VUV',
414
+ WF: 'XPF',
415
+ WS: 'WST',
416
+ XK: 'EUR',
417
+ YE: 'YER',
418
+ YT: 'EUR',
419
+ ZA: 'ZAR',
420
+ ZM: 'ZMW',
421
+ ZW: 'ZWG'
422
+ },
423
+
424
+ NETWORK_DEFAULT_CURRENCIES: {
425
+ 'eip155:1': 'ETH', // Ethereum Mainnet
426
+ 'eip155:56': 'BNB', // Binance Smart Chain
427
+ 'eip155:137': 'MATIC', // Polygon
428
+ 'eip155:42161': 'ETH_ARBITRUM', // Arbitrum One
429
+ 'eip155:43114': 'AVAX', // Avalanche C-Chain
430
+ 'eip155:10': 'ETH_OPTIMISM', // Optimism
431
+ 'eip155:250': 'FTM', // Fantom
432
+ 'eip155:100': 'xDAI', // Gnosis Chain (formerly xDai)
433
+ 'eip155:8453': 'ETH_BASE', // Base
434
+ 'eip155:1284': 'GLMR', // Moonbeam
435
+ 'eip155:1285': 'MOVR', // Moonriver
436
+ 'eip155:25': 'CRO', // Cronos
437
+ 'eip155:42220': 'CELO', // Celo
438
+ 'eip155:8217': 'KLAY', // Klaytn
439
+ 'eip155:1313161554': 'AURORA_ETH', // Aurora
440
+ 'eip155:40': 'TLOS', // Telos EVM
441
+ 'eip155:1088': 'METIS', // Metis Andromeda
442
+ 'eip155:2222': 'KAVA', // Kava EVM
443
+ 'eip155:7777777': 'ZETA', // ZetaChain
444
+ 'eip155:7700': 'CANTO', // Canto
445
+ 'eip155:59144': 'ETH_LINEA', // Linea
446
+ 'eip155:1101': 'ETH_POLYGONZKEVM', // Polygon zkEVM
447
+ 'eip155:196': 'XIN' // Mixin
448
+ },
449
+
450
+ COUNTRY_DEFAULT_PAYMENT_METHOD: {
451
+ AE: ['CREDIT_DEBIT_CARD', 'BINANCE_P2P', 'UAE_BANK_TRANSFER'],
452
+ AR: ['CREDIT_DEBIT_CARD', 'AR_BANK_TRANSFER', 'BINANCE_P2P'],
453
+ AT: ['CREDIT_DEBIT_CARD', 'SEPA', 'BINANCE_P2P'],
454
+ AU: ['CREDIT_DEBIT_CARD', 'APPLE_PAY', 'BINANCE_P2P'],
455
+ BD: ['BINANCE_P2P', 'BINANCE_CASH_BALANCE', 'CREDIT_DEBIT_CARD'],
456
+ BE: ['CREDIT_DEBIT_CARD', 'BANCONTACT', 'BINANCE_P2P'],
457
+ BG: ['CREDIT_DEBIT_CARD', 'SEPA', 'BINANCE_P2P'],
458
+ BR: ['PIX', 'CREDIT_DEBIT_CARD', 'BINANCE_P2P'],
459
+ CA: ['CREDIT_DEBIT_CARD', 'INTERAC', 'APPLE_PAY'],
460
+ CH: ['CREDIT_DEBIT_CARD', 'SEPA', 'BINANCE_P2P'],
461
+ CL: ['CREDIT_DEBIT_CARD', 'KHIPU', 'CL_BANK_TRANSFER'],
462
+ CN: ['CREDIT_DEBIT_CARD', 'APPLE_PAY'],
463
+ CO: ['PSE', 'CO_BANK_TRANSFER', 'ASTROPAY'],
464
+ CY: ['CREDIT_DEBIT_CARD', 'SEPA', 'BINANCE_P2P'],
465
+ CZ: ['CREDIT_DEBIT_CARD', 'SEPA', 'BINANCE_P2P'],
466
+ DE: ['CREDIT_DEBIT_CARD', 'SEPA', 'BINANCE_P2P'],
467
+ DK: ['CREDIT_DEBIT_CARD', 'SEPA', 'BINANCE_P2P'],
468
+ EC: ['CREDIT_DEBIT_CARD', 'APPLE_PAY', 'GOOGLE_PAY'],
469
+ EE: ['CREDIT_DEBIT_CARD', 'SEPA', 'BINANCE_P2P'],
470
+ ES: ['CREDIT_DEBIT_CARD', 'SEPA', 'BINANCE_P2P'],
471
+ FI: ['CREDIT_DEBIT_CARD', 'SEPA', 'BINANCE_P2P'],
472
+ FR: ['CREDIT_DEBIT_CARD', 'SEPA', 'BINANCE_P2P'],
473
+ GB: ['CREDIT_DEBIT_CARD', 'SEPA', 'BINANCE_P2P'],
474
+ GR: ['CREDIT_DEBIT_CARD', 'SEPA', 'BINANCE_P2P'],
475
+ HK: ['BINANCE_P2P', 'CREDIT_DEBIT_CARD', 'APPLE_PAY'],
476
+ HR: ['CREDIT_DEBIT_CARD', 'SEPA', 'BINANCE_P2P'],
477
+ HU: ['CREDIT_DEBIT_CARD', 'SEPA', 'BINANCE_P2P'],
478
+ ID: ['BINANCE_P2P', 'ID_BANK_TRANSFER', 'CREDIT_DEBIT_CARD'],
479
+ IE: ['CREDIT_DEBIT_CARD', 'SEPA', 'BINANCE_P2P'],
480
+ IL: ['CREDIT_DEBIT_CARD', 'APPLE_PAY', 'GOOGLE_PAY'],
481
+ IN: ['UPI', 'IMPS', 'BINANCE_P2P'],
482
+ IT: ['CREDIT_DEBIT_CARD', 'SEPA', 'BINANCE_P2P'],
483
+ JP: ['CREDIT_DEBIT_CARD', 'APPLE_PAY', 'GOOGLE_PAY'],
484
+ KE: ['BINANCE_P2P', 'MOBILE_MONEY', 'CREDIT_DEBIT_CARD'],
485
+ KR: ['CREDIT_DEBIT_CARD', 'APPLE_PAY', 'ASTROPAY'],
486
+ LT: ['CREDIT_DEBIT_CARD', 'SEPA', 'BINANCE_P2P'],
487
+ LV: ['CREDIT_DEBIT_CARD', 'SEPA', 'BINANCE_P2P'],
488
+ MA: ['BINANCE_P2P', 'CREDIT_DEBIT_CARD', 'APPLE_PAY'],
489
+ MX: ['SPEI', 'CREDIT_DEBIT_CARD', 'BINANCE_P2P'],
490
+ MY: ['CREDIT_DEBIT_CARD', 'MY_BANK_TRANSFER', 'APPLE_PAY'],
491
+ NG: ['BINANCE_P2P', 'NG_BANK_TRANSFER', 'CREDIT_DEBIT_CARD'],
492
+ NL: ['IDEAL', 'CREDIT_DEBIT_CARD', 'SEPA'],
493
+ NO: ['CREDIT_DEBIT_CARD', 'SEPA', 'BINANCE_P2P'],
494
+ NP: ['BINANCE_P2P', 'ASTROPAY', 'CREDIT_DEBIT_CARD'],
495
+ NZ: ['CREDIT_DEBIT_CARD', 'BINANCE_P2P', 'APPLE_PAY'],
496
+ PH: ['GCASH', 'BINANCE_P2P', 'PH_BANK_TRANSFER'],
497
+ PK: ['BINANCE_P2P', 'ASTROPAY', 'CREDIT_DEBIT_CARD'],
498
+ PL: ['CREDIT_DEBIT_CARD', 'SEPA', 'BINANCE_P2P'],
499
+ PR: ['CREDIT_DEBIT_CARD', 'GOOGLE_PAY'],
500
+ PT: ['CREDIT_DEBIT_CARD', 'SEPA', 'BINANCE_P2P'],
501
+ RO: ['CREDIT_DEBIT_CARD', 'SEPA', 'BINANCE_P2P'],
502
+ SA: ['CREDIT_DEBIT_CARD', 'APPLE_PAY', 'BINANCE_P2P'],
503
+ SE: ['CREDIT_DEBIT_CARD', 'SEPA', 'BINANCE_P2P'],
504
+ SG: ['CREDIT_DEBIT_CARD', 'GRABPAY', 'SHOPEEPAY'],
505
+ SI: ['CREDIT_DEBIT_CARD', 'SEPA', 'BINANCE_P2P'],
506
+ SK: ['CREDIT_DEBIT_CARD', 'SEPA', 'BINANCE_P2P'],
507
+ TH: ['PROMPTPAY', 'CREDIT_DEBIT_CARD', 'THAI_QR'],
508
+ TR: ['BINANCE_P2P', 'CREDIT_DEBIT_CARD', 'FAST'],
509
+ TW: ['BINANCE_P2P', 'CREDIT_DEBIT_CARD', 'APPLE_PAY'],
510
+ UA: ['BINANCE_P2P', 'CREDIT_DEBIT_CARD', 'GOOGLE_PAY'],
511
+ US: ['CREDIT_DEBIT_CARD', 'APPLE_PAY', 'GOOGLE_PAY'],
512
+ VN: ['BINANCE_P2P', 'VN_BANK_TRANSFER', 'CREDIT_DEBIT_CARD'],
513
+ ZA: ['BINANCE_P2P', 'LOCAL_BANK_TRANSFER', 'CREDIT_DEBIT_CARD']
514
+ },
515
+
516
+ CURRENCY_SUGGESTED_VALUES: {
517
+ AED: [50, 100, 500],
518
+ AMD: [5000, 10000, 50000],
519
+ ANG: [50, 100, 500],
520
+ AOA: [10000, 20000, 50000],
521
+ ARS: [20000, 35000, 50000],
522
+ AUD: [50, 100, 150],
523
+ AZN: [50, 100, 200],
524
+ BDT: [2500, 5000, 10000],
525
+ BGN: [50, 100, 200],
526
+ BHD: [10, 20, 50],
527
+ BOB: [150, 300, 500],
528
+ BRL: [100, 200, 500],
529
+ BWP: [200, 500, 1000],
530
+ CAD: [50, 100, 150],
531
+ CHF: [50, 100, 150],
532
+ CLP: [10000, 20000, 50000],
533
+ CNY: [200, 500, 1000],
534
+ COP: [50000, 100000, 200000],
535
+ CRC: [10000, 20000, 50000],
536
+ CZK: [500, 1000, 2000],
537
+ DKK: [200, 500, 1000],
538
+ DOP: [2000, 5000, 10000],
539
+ DZD: [3000, 5000, 10000],
540
+ EGP: [2000, 5000, 10000],
541
+ EUR: [50, 100, 150],
542
+ GBP: [50, 100, 150],
543
+ GEL: [100, 200, 500],
544
+ GHS: [100, 200, 500],
545
+ GTQ: [200, 500, 1000],
546
+ HKD: [200, 500, 1000],
547
+ HNL: [500, 1000, 2000],
548
+ HRK: [200, 500, 1000],
549
+ HTG: [3000, 5000, 10000],
550
+ HUF: [5000, 10000, 20000],
551
+ IDR: [100000, 200000, 500000],
552
+ ILS: [100, 200, 500],
553
+ INR: [1000, 2000, 5000],
554
+ IQD: [30000, 50000, 100000],
555
+ ISK: [5000, 10000, 20000],
556
+ JOD: [20, 50, 100],
557
+ JPY: [5000, 10000, 20000],
558
+ KES: [1000, 2000, 5000],
559
+ KGS: [1000, 2000, 5000],
560
+ KHR: [250000, 500000, 1000000],
561
+ KRW: [50000, 100000, 200000],
562
+ KWD: [10, 20, 50],
563
+ KZT: [10000, 20000, 50000],
564
+ LAK: [500000, 1000000, 2000000],
565
+ LBP: [2000000, 3000000, 5000000],
566
+ LKR: [5000, 6000, 7000],
567
+ MAD: [200, 500, 1000],
568
+ MDL: [500, 1000, 2000],
569
+ MMK: [50000, 100000, 200000],
570
+ MNT: [100000, 200000, 500000],
571
+ MWK: [5000, 10000, 20000],
572
+ MXN: [500, 1000, 2000],
573
+ MYR: [100, 200, 500],
574
+ NGN: [5000, 10000, 20000],
575
+ NIO: [1000, 2000, 5000],
576
+ NOK: [500, 1000, 2000],
577
+ NPR: [3000, 5000, 10000],
578
+ NZD: [50, 100, 150],
579
+ OMR: [10, 20, 50],
580
+ PAB: [50, 100, 200],
581
+ PEN: [100, 200, 500],
582
+ PGK: [1000, 2000, 5000],
583
+ PHP: [1000, 2000, 5000],
584
+ PKR: [5000, 10000, 20000],
585
+ PLN: [100, 200, 500],
586
+ PYG: [200000, 300000, 500000],
587
+ QAR: [100, 200, 500],
588
+ RON: [100, 200, 500],
589
+ RSD: [2000, 5000, 10000],
590
+ RWF: [5000, 10000, 20000],
591
+ SAR: [100, 200, 500],
592
+ SEK: [500, 1000, 2000],
593
+ SGD: [50, 100, 150],
594
+ THB: [1000, 2000, 5000],
595
+ TJS: [500, 1000, 2000],
596
+ TND: [100, 200, 500],
597
+ TRY: [500, 1000, 2000],
598
+ TWD: [1000, 2000, 5000],
599
+ TZS: [5000, 10000, 20000],
600
+ UAH: [1000, 2000, 5000],
601
+ UGX: [20000, 50000, 100000],
602
+ USD: [50, 100, 150],
603
+ UYU: [1000, 2000, 5000],
604
+ UZS: [300000, 500000, 1000000],
605
+ VND: [500000, 1000000, 2000000],
606
+ XAF: [5000, 10000, 20000],
607
+ XCD: [100, 200, 500],
608
+ XOF: [5000, 10000, 20000],
609
+ ZAR: [500, 1000, 2000],
610
+ ZMW: [500, 1000, 2000]
611
+ }
143
612
  };