@reown/appkit-core-react-native 0.0.0-fix-approved-networks-20250822000414 → 0.0.0-fix-improvements-20250827190629
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/controllers/ApiController.js +75 -38
- package/lib/commonjs/controllers/ApiController.js.map +1 -1
- package/lib/commonjs/controllers/AssetController.js +0 -4
- package/lib/commonjs/controllers/AssetController.js.map +1 -1
- package/lib/commonjs/controllers/BlockchainApiController.js +156 -57
- package/lib/commonjs/controllers/BlockchainApiController.js.map +1 -1
- package/lib/commonjs/controllers/ConnectionsController.js +402 -0
- package/lib/commonjs/controllers/ConnectionsController.js.map +1 -0
- package/lib/commonjs/controllers/EnsController.js.map +1 -1
- package/lib/commonjs/controllers/EventsController.js.map +1 -1
- package/lib/commonjs/controllers/ModalController.js +6 -7
- package/lib/commonjs/controllers/ModalController.js.map +1 -1
- package/lib/commonjs/controllers/OnRampController.js +29 -19
- package/lib/commonjs/controllers/OnRampController.js.map +1 -1
- package/lib/commonjs/controllers/OptionsController.js +22 -7
- package/lib/commonjs/controllers/OptionsController.js.map +1 -1
- package/lib/commonjs/controllers/PublicStateController.js.map +1 -1
- package/lib/commonjs/controllers/RouterController.js +7 -22
- package/lib/commonjs/controllers/RouterController.js.map +1 -1
- package/lib/commonjs/controllers/SendController.js +96 -96
- package/lib/commonjs/controllers/SendController.js.map +1 -1
- package/lib/commonjs/controllers/SnackController.js +29 -5
- package/lib/commonjs/controllers/SnackController.js.map +1 -1
- package/lib/commonjs/controllers/SwapController.js +154 -151
- package/lib/commonjs/controllers/SwapController.js.map +1 -1
- package/lib/commonjs/controllers/ThemeController.js +9 -1
- package/lib/commonjs/controllers/ThemeController.js.map +1 -1
- package/lib/commonjs/controllers/TransactionsController.js +22 -18
- package/lib/commonjs/controllers/TransactionsController.js.map +1 -1
- package/lib/commonjs/controllers/WcController.js +73 -0
- package/lib/commonjs/controllers/WcController.js.map +1 -0
- package/lib/commonjs/index.js +13 -41
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/package.json +1 -0
- package/lib/commonjs/utils/ApiUtil.js.map +1 -1
- package/lib/commonjs/utils/AssetUtil.js +15 -19
- package/lib/commonjs/utils/AssetUtil.js.map +1 -1
- package/lib/commonjs/utils/ConstantsUtil.js +122 -5
- package/lib/commonjs/utils/ConstantsUtil.js.map +1 -1
- package/lib/commonjs/utils/CoreHelperUtil.js +19 -7
- package/lib/commonjs/utils/CoreHelperUtil.js.map +1 -1
- package/lib/commonjs/utils/EventUtil.js.map +1 -1
- package/lib/commonjs/utils/FetchUtil.js.map +1 -1
- package/lib/commonjs/utils/RouterUtil.js.map +1 -1
- package/lib/commonjs/utils/StorageUtil.js +90 -108
- package/lib/commonjs/utils/StorageUtil.js.map +1 -1
- package/lib/commonjs/utils/SwapApiUtil.js +15 -21
- package/lib/commonjs/utils/SwapApiUtil.js.map +1 -1
- package/lib/commonjs/utils/SwapCalculationUtil.js.map +1 -1
- package/lib/commonjs/utils/WalletUtil.js +23 -0
- package/lib/commonjs/utils/WalletUtil.js.map +1 -0
- package/lib/module/controllers/ApiController.js +77 -38
- package/lib/module/controllers/ApiController.js.map +1 -1
- package/lib/module/controllers/AssetController.js +2 -4
- package/lib/module/controllers/AssetController.js.map +1 -1
- package/lib/module/controllers/BlockchainApiController.js +158 -57
- package/lib/module/controllers/BlockchainApiController.js.map +1 -1
- package/lib/module/controllers/ConnectionsController.js +399 -0
- package/lib/module/controllers/ConnectionsController.js.map +1 -0
- package/lib/module/controllers/EnsController.js +2 -0
- package/lib/module/controllers/EnsController.js.map +1 -1
- package/lib/module/controllers/EventsController.js +2 -0
- package/lib/module/controllers/EventsController.js.map +1 -1
- package/lib/module/controllers/ModalController.js +8 -7
- package/lib/module/controllers/ModalController.js.map +1 -1
- package/lib/module/controllers/OnRampController.js +27 -15
- package/lib/module/controllers/OnRampController.js.map +1 -1
- package/lib/module/controllers/OptionsController.js +24 -7
- package/lib/module/controllers/OptionsController.js.map +1 -1
- package/lib/module/controllers/PublicStateController.js +2 -0
- package/lib/module/controllers/PublicStateController.js.map +1 -1
- package/lib/module/controllers/RouterController.js +9 -22
- package/lib/module/controllers/RouterController.js.map +1 -1
- package/lib/module/controllers/SendController.js +98 -96
- package/lib/module/controllers/SendController.js.map +1 -1
- package/lib/module/controllers/SnackController.js +31 -5
- package/lib/module/controllers/SnackController.js.map +1 -1
- package/lib/module/controllers/SwapController.js +156 -151
- package/lib/module/controllers/SwapController.js.map +1 -1
- package/lib/module/controllers/ThemeController.js +11 -1
- package/lib/module/controllers/ThemeController.js.map +1 -1
- package/lib/module/controllers/TransactionsController.js +24 -18
- package/lib/module/controllers/TransactionsController.js.map +1 -1
- package/lib/module/controllers/WcController.js +70 -0
- package/lib/module/controllers/WcController.js.map +1 -0
- package/lib/module/index.js +7 -7
- package/lib/module/index.js.map +1 -1
- package/lib/module/utils/ApiUtil.js +2 -0
- package/lib/module/utils/ApiUtil.js.map +1 -1
- package/lib/module/utils/AssetUtil.js +17 -19
- package/lib/module/utils/AssetUtil.js.map +1 -1
- package/lib/module/utils/ConstantsUtil.js +124 -5
- package/lib/module/utils/ConstantsUtil.js.map +1 -1
- package/lib/module/utils/CoreHelperUtil.js +21 -5
- package/lib/module/utils/CoreHelperUtil.js.map +1 -1
- package/lib/module/utils/EventUtil.js +2 -0
- package/lib/module/utils/EventUtil.js.map +1 -1
- package/lib/module/utils/FetchUtil.js +2 -0
- package/lib/module/utils/FetchUtil.js.map +1 -1
- package/lib/module/utils/RouterUtil.js +2 -0
- package/lib/module/utils/RouterUtil.js.map +1 -1
- package/lib/module/utils/StorageUtil.js +93 -108
- package/lib/module/utils/StorageUtil.js.map +1 -1
- package/lib/module/utils/SwapApiUtil.js +17 -21
- package/lib/module/utils/SwapApiUtil.js.map +1 -1
- package/lib/module/utils/SwapCalculationUtil.js +3 -0
- package/lib/module/utils/SwapCalculationUtil.js.map +1 -1
- package/lib/module/utils/WalletUtil.js +19 -0
- package/lib/module/utils/WalletUtil.js.map +1 -0
- package/lib/typescript/controllers/ApiController.d.ts +4 -5
- package/lib/typescript/controllers/ApiController.d.ts.map +1 -1
- package/lib/typescript/controllers/AssetController.d.ts +0 -2
- package/lib/typescript/controllers/AssetController.d.ts.map +1 -1
- package/lib/typescript/controllers/BlockchainApiController.d.ts +29 -11
- package/lib/typescript/controllers/BlockchainApiController.d.ts.map +1 -1
- package/lib/typescript/controllers/ConnectionsController.d.ts +45 -0
- package/lib/typescript/controllers/ConnectionsController.d.ts.map +1 -0
- package/lib/typescript/controllers/EnsController.d.ts +1 -1
- package/lib/typescript/controllers/EventsController.d.ts +1 -1
- package/lib/typescript/controllers/EventsController.d.ts.map +1 -1
- package/lib/typescript/controllers/ModalController.d.ts.map +1 -1
- package/lib/typescript/controllers/OnRampController.d.ts +2 -2
- package/lib/typescript/controllers/OnRampController.d.ts.map +1 -1
- package/lib/typescript/controllers/OptionsController.d.ts +9 -4
- package/lib/typescript/controllers/OptionsController.d.ts.map +1 -1
- package/lib/typescript/controllers/PublicStateController.d.ts +1 -1
- package/lib/typescript/controllers/PublicStateController.d.ts.map +1 -1
- package/lib/typescript/controllers/RouterController.d.ts +6 -20
- package/lib/typescript/controllers/RouterController.d.ts.map +1 -1
- package/lib/typescript/controllers/SendController.d.ts +5 -7
- package/lib/typescript/controllers/SendController.d.ts.map +1 -1
- package/lib/typescript/controllers/SnackController.d.ts +3 -3
- package/lib/typescript/controllers/SnackController.d.ts.map +1 -1
- package/lib/typescript/controllers/SwapController.d.ts +12 -12
- package/lib/typescript/controllers/SwapController.d.ts.map +1 -1
- package/lib/typescript/controllers/ThemeController.d.ts +1 -1
- package/lib/typescript/controllers/ThemeController.d.ts.map +1 -1
- package/lib/typescript/controllers/TransactionsController.d.ts +3 -3
- package/lib/typescript/controllers/TransactionsController.d.ts.map +1 -1
- package/lib/typescript/controllers/WcController.d.ts +27 -0
- package/lib/typescript/controllers/WcController.d.ts.map +1 -0
- package/lib/typescript/index.d.ts +3 -8
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/utils/AssetUtil.d.ts +3 -4
- package/lib/typescript/utils/AssetUtil.d.ts.map +1 -1
- package/lib/typescript/utils/ConstantsUtil.d.ts +12 -2
- package/lib/typescript/utils/ConstantsUtil.d.ts.map +1 -1
- package/lib/typescript/utils/CoreHelperUtil.d.ts +5 -4
- package/lib/typescript/utils/CoreHelperUtil.d.ts.map +1 -1
- package/lib/typescript/utils/EventUtil.d.ts +1 -1
- package/lib/typescript/utils/EventUtil.d.ts.map +1 -1
- package/lib/typescript/utils/FetchUtil.d.ts +2 -2
- package/lib/typescript/utils/FetchUtil.d.ts.map +1 -1
- package/lib/typescript/utils/StorageUtil.d.ts +15 -16
- package/lib/typescript/utils/StorageUtil.d.ts.map +1 -1
- package/lib/typescript/utils/SwapApiUtil.d.ts +3 -4
- package/lib/typescript/utils/SwapApiUtil.d.ts.map +1 -1
- package/lib/typescript/utils/SwapCalculationUtil.d.ts +1 -1
- package/lib/typescript/utils/SwapCalculationUtil.d.ts.map +1 -1
- package/lib/typescript/utils/WalletUtil.d.ts +5 -0
- package/lib/typescript/utils/WalletUtil.d.ts.map +1 -0
- package/package.json +8 -22
- package/src/controllers/ApiController.ts +83 -40
- package/src/controllers/AssetController.ts +0 -6
- package/src/controllers/BlockchainApiController.ts +136 -44
- package/src/controllers/ConnectionsController.ts +521 -0
- package/src/controllers/EnsController.ts +1 -1
- package/src/controllers/EventsController.ts +1 -1
- package/src/controllers/ModalController.ts +6 -7
- package/src/controllers/OnRampController.ts +37 -18
- package/src/controllers/OptionsController.ts +37 -14
- package/src/controllers/PublicStateController.ts +1 -1
- package/src/controllers/RouterController.ts +17 -54
- package/src/controllers/SendController.ts +122 -111
- package/src/controllers/SnackController.ts +31 -5
- package/src/controllers/SwapController.ts +177 -183
- package/src/controllers/ThemeController.ts +11 -2
- package/src/controllers/TransactionsController.ts +25 -19
- package/src/controllers/WcController.ts +93 -0
- package/src/index.ts +6 -20
- package/src/utils/AssetUtil.ts +17 -22
- package/src/utils/ConstantsUtil.ts +126 -6
- package/src/utils/CoreHelperUtil.ts +45 -7
- package/src/utils/EventUtil.ts +1 -1
- package/src/utils/FetchUtil.ts +2 -2
- package/src/utils/StorageUtil.ts +163 -131
- package/src/utils/SwapApiUtil.ts +30 -37
- package/src/utils/SwapCalculationUtil.ts +1 -2
- package/src/utils/WalletUtil.ts +14 -0
- package/lib/commonjs/controllers/AccountController.js +0 -93
- package/lib/commonjs/controllers/AccountController.js.map +0 -1
- package/lib/commonjs/controllers/ConnectionController.js +0 -126
- package/lib/commonjs/controllers/ConnectionController.js.map +0 -1
- package/lib/commonjs/controllers/ConnectorController.js +0 -49
- package/lib/commonjs/controllers/ConnectorController.js.map +0 -1
- package/lib/commonjs/controllers/NetworkController.js +0 -90
- package/lib/commonjs/controllers/NetworkController.js.map +0 -1
- package/lib/commonjs/controllers/WebviewController.js +0 -52
- package/lib/commonjs/controllers/WebviewController.js.map +0 -1
- package/lib/commonjs/utils/ConnectionUtil.js +0 -33
- package/lib/commonjs/utils/ConnectionUtil.js.map +0 -1
- package/lib/commonjs/utils/NetworkUtil.js +0 -46
- package/lib/commonjs/utils/NetworkUtil.js.map +0 -1
- package/lib/commonjs/utils/TypeUtil.js +0 -35
- package/lib/commonjs/utils/TypeUtil.js.map +0 -1
- package/lib/module/controllers/AccountController.js +0 -88
- package/lib/module/controllers/AccountController.js.map +0 -1
- package/lib/module/controllers/ConnectionController.js +0 -121
- package/lib/module/controllers/ConnectionController.js.map +0 -1
- package/lib/module/controllers/ConnectorController.js +0 -44
- package/lib/module/controllers/ConnectorController.js.map +0 -1
- package/lib/module/controllers/NetworkController.js +0 -85
- package/lib/module/controllers/NetworkController.js.map +0 -1
- package/lib/module/controllers/WebviewController.js +0 -47
- package/lib/module/controllers/WebviewController.js.map +0 -1
- package/lib/module/utils/ConnectionUtil.js +0 -27
- package/lib/module/utils/ConnectionUtil.js.map +0 -1
- package/lib/module/utils/NetworkUtil.js +0 -40
- package/lib/module/utils/NetworkUtil.js.map +0 -1
- package/lib/module/utils/TypeUtil.js +0 -28
- package/lib/module/utils/TypeUtil.js.map +0 -1
- package/lib/typescript/controllers/AccountController.d.ts +0 -33
- package/lib/typescript/controllers/AccountController.d.ts.map +0 -1
- package/lib/typescript/controllers/ConnectionController.d.ts +0 -66
- package/lib/typescript/controllers/ConnectionController.d.ts.map +0 -1
- package/lib/typescript/controllers/ConnectorController.d.ts +0 -18
- package/lib/typescript/controllers/ConnectorController.d.ts.map +0 -1
- package/lib/typescript/controllers/NetworkController.d.ts +0 -35
- package/lib/typescript/controllers/NetworkController.d.ts.map +0 -1
- package/lib/typescript/controllers/WebviewController.d.ts +0 -21
- package/lib/typescript/controllers/WebviewController.d.ts.map +0 -1
- package/lib/typescript/utils/ConnectionUtil.d.ts +0 -4
- package/lib/typescript/utils/ConnectionUtil.d.ts.map +0 -1
- package/lib/typescript/utils/NetworkUtil.d.ts +0 -8
- package/lib/typescript/utils/NetworkUtil.d.ts.map +0 -1
- package/lib/typescript/utils/TypeUtil.d.ts +0 -850
- package/lib/typescript/utils/TypeUtil.d.ts.map +0 -1
- package/src/controllers/AccountController.ts +0 -128
- package/src/controllers/ConnectionController.ts +0 -200
- package/src/controllers/ConnectorController.ts +0 -63
- package/src/controllers/NetworkController.ts +0 -120
- package/src/controllers/WebviewController.ts +0 -63
- package/src/utils/ConnectionUtil.ts +0 -27
- package/src/utils/NetworkUtil.ts +0 -33
- package/src/utils/TypeUtil.ts +0 -1039
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { subscribeKey as subKey } from 'valtio/
|
|
2
|
-
import { proxy, subscribe as sub } from 'valtio
|
|
1
|
+
import { subscribeKey as subKey } from 'valtio/utils';
|
|
2
|
+
import { proxy, subscribe as sub } from 'valtio';
|
|
3
3
|
import {
|
|
4
4
|
type OnRampPaymentMethod,
|
|
5
5
|
type OnRampCountry,
|
|
@@ -12,17 +12,16 @@ import {
|
|
|
12
12
|
type OnRampErrorTypeValues,
|
|
13
13
|
type OnRampCountryDefaults,
|
|
14
14
|
BlockchainOnRampError
|
|
15
|
-
} from '
|
|
15
|
+
} from '@reown/appkit-common-react-native';
|
|
16
16
|
|
|
17
17
|
import { CoreHelperUtil } from '../utils/CoreHelperUtil';
|
|
18
|
-
import { NetworkController } from './NetworkController';
|
|
19
|
-
import { AccountController } from './AccountController';
|
|
20
18
|
import { OptionsController } from './OptionsController';
|
|
21
19
|
import { ConstantsUtil, OnRampErrorType } from '../utils/ConstantsUtil';
|
|
22
20
|
import { StorageUtil } from '../utils/StorageUtil';
|
|
23
21
|
import { SnackController } from './SnackController';
|
|
24
22
|
import { EventsController } from './EventsController';
|
|
25
23
|
import { BlockchainApiController, EXCLUDED_ONRAMP_PROVIDERS } from './BlockchainApiController';
|
|
24
|
+
import { ConnectionsController } from './ConnectionsController';
|
|
26
25
|
|
|
27
26
|
// -- Helpers ------------------------------------------- //
|
|
28
27
|
|
|
@@ -188,16 +187,16 @@ export const OnRampController = {
|
|
|
188
187
|
|
|
189
188
|
updateSelectedPurchaseCurrency() {
|
|
190
189
|
let selectedCurrency;
|
|
191
|
-
if (
|
|
190
|
+
if (ConnectionsController.state.activeNetwork?.caipNetworkId) {
|
|
192
191
|
const defaultCurrency =
|
|
193
192
|
ConstantsUtil.NETWORK_DEFAULT_CURRENCIES[
|
|
194
|
-
|
|
195
|
-
?.
|
|
193
|
+
ConnectionsController.state.activeNetwork
|
|
194
|
+
?.caipNetworkId as keyof typeof ConstantsUtil.NETWORK_DEFAULT_CURRENCIES
|
|
196
195
|
];
|
|
197
196
|
selectedCurrency = state.purchaseCurrencies?.find(c => c.currencyCode === defaultCurrency);
|
|
198
197
|
}
|
|
199
198
|
|
|
200
|
-
state.purchaseCurrency = selectedCurrency ??
|
|
199
|
+
state.purchaseCurrency = selectedCurrency ?? undefined;
|
|
201
200
|
},
|
|
202
201
|
|
|
203
202
|
getServiceProviderImage(serviceProviderName?: string) {
|
|
@@ -328,16 +327,16 @@ export const OnRampController = {
|
|
|
328
327
|
state.purchaseCurrencies = cryptoCurrencies || [];
|
|
329
328
|
|
|
330
329
|
let selectedCurrency;
|
|
331
|
-
if (
|
|
330
|
+
if (ConnectionsController.state.activeNetwork?.caipNetworkId) {
|
|
332
331
|
const defaultCurrency =
|
|
333
332
|
ConstantsUtil.NETWORK_DEFAULT_CURRENCIES[
|
|
334
|
-
|
|
335
|
-
?.
|
|
336
|
-
]
|
|
333
|
+
ConnectionsController.state.activeNetwork
|
|
334
|
+
?.caipNetworkId as keyof typeof ConstantsUtil.NETWORK_DEFAULT_CURRENCIES
|
|
335
|
+
];
|
|
337
336
|
selectedCurrency = state.purchaseCurrencies?.find(c => c.currencyCode === defaultCurrency);
|
|
338
337
|
}
|
|
339
338
|
|
|
340
|
-
state.purchaseCurrency = selectedCurrency ||
|
|
339
|
+
state.purchaseCurrency = selectedCurrency || undefined;
|
|
341
340
|
} catch (error) {
|
|
342
341
|
state.error = {
|
|
343
342
|
type: OnRampErrorType.FAILED_TO_LOAD_CURRENCIES,
|
|
@@ -420,7 +419,7 @@ export const OnRampController = {
|
|
|
420
419
|
!state.selectedCountry?.countryCode ||
|
|
421
420
|
!state.purchaseCurrency?.currencyCode ||
|
|
422
421
|
!state.paymentCurrency?.currencyCode ||
|
|
423
|
-
!
|
|
422
|
+
!ConnectionsController.state.activeAddress
|
|
424
423
|
) {
|
|
425
424
|
throw new BlockchainOnRampError(OnRampErrorType.UNKNOWN, 'Invalid quote parameters');
|
|
426
425
|
}
|
|
@@ -430,12 +429,20 @@ export const OnRampController = {
|
|
|
430
429
|
state.selectedServiceProvider = undefined;
|
|
431
430
|
state.error = undefined;
|
|
432
431
|
|
|
432
|
+
const plainAddress = CoreHelperUtil.getPlainAddress(
|
|
433
|
+
ConnectionsController.state.activeAddress
|
|
434
|
+
);
|
|
435
|
+
|
|
436
|
+
if (!plainAddress) {
|
|
437
|
+
throw new Error('Invalid address');
|
|
438
|
+
}
|
|
439
|
+
|
|
433
440
|
const body = {
|
|
434
441
|
countryCode: state.selectedCountry.countryCode,
|
|
435
442
|
destinationCurrencyCode: state.purchaseCurrency.currencyCode,
|
|
436
443
|
sourceAmount: state.paymentAmount!,
|
|
437
444
|
sourceCurrencyCode: state.paymentCurrency.currencyCode,
|
|
438
|
-
walletAddress:
|
|
445
|
+
walletAddress: plainAddress,
|
|
439
446
|
excludeProviders: EXCLUDED_ONRAMP_PROVIDERS
|
|
440
447
|
};
|
|
441
448
|
|
|
@@ -524,7 +531,7 @@ export const OnRampController = {
|
|
|
524
531
|
state.paymentCurrency?.currencyCode &&
|
|
525
532
|
state.selectedCountry &&
|
|
526
533
|
!state.loading &&
|
|
527
|
-
|
|
534
|
+
ConnectionsController.state.activeAddress
|
|
528
535
|
);
|
|
529
536
|
},
|
|
530
537
|
|
|
@@ -551,6 +558,10 @@ export const OnRampController = {
|
|
|
551
558
|
},
|
|
552
559
|
|
|
553
560
|
async generateWidget({ quote }: { quote: OnRampQuote }) {
|
|
561
|
+
if (!ConnectionsController.state.activeAddress) {
|
|
562
|
+
throw new Error('No active address');
|
|
563
|
+
}
|
|
564
|
+
|
|
554
565
|
const metadata = OptionsController.state.metadata;
|
|
555
566
|
const eventProperties = {
|
|
556
567
|
asset: quote.destinationCurrencyCode,
|
|
@@ -567,6 +578,14 @@ export const OnRampController = {
|
|
|
567
578
|
throw new Error('Invalid quote');
|
|
568
579
|
}
|
|
569
580
|
|
|
581
|
+
const plainAddress = CoreHelperUtil.getPlainAddress(
|
|
582
|
+
ConnectionsController.state.activeAddress
|
|
583
|
+
);
|
|
584
|
+
|
|
585
|
+
if (!plainAddress) {
|
|
586
|
+
throw new Error('Invalid address');
|
|
587
|
+
}
|
|
588
|
+
|
|
570
589
|
const body = {
|
|
571
590
|
countryCode: quote.countryCode,
|
|
572
591
|
destinationCurrencyCode: quote.destinationCurrencyCode,
|
|
@@ -574,7 +593,7 @@ export const OnRampController = {
|
|
|
574
593
|
serviceProvider: quote.serviceProvider,
|
|
575
594
|
sourceAmount: quote.sourceAmount,
|
|
576
595
|
sourceCurrencyCode: quote.sourceCurrencyCode,
|
|
577
|
-
walletAddress:
|
|
596
|
+
walletAddress: plainAddress,
|
|
578
597
|
redirectUrl: metadata?.redirect?.universal ?? metadata?.redirect?.native
|
|
579
598
|
};
|
|
580
599
|
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
import { proxy, ref } from 'valtio';
|
|
2
2
|
import type {
|
|
3
|
+
Storage,
|
|
4
|
+
Metadata,
|
|
5
|
+
AppKitNetwork,
|
|
3
6
|
CustomWallet,
|
|
4
7
|
Features,
|
|
5
|
-
Metadata,
|
|
6
8
|
ProjectId,
|
|
7
9
|
SdkType,
|
|
8
|
-
SdkVersion
|
|
9
|
-
|
|
10
|
-
|
|
10
|
+
SdkVersion
|
|
11
|
+
} from '@reown/appkit-common-react-native';
|
|
12
|
+
|
|
11
13
|
import { ConstantsUtil } from '../utils/ConstantsUtil';
|
|
12
14
|
|
|
13
15
|
// -- Types --------------------------------------------- //
|
|
@@ -17,12 +19,12 @@ export interface ClipboardClient {
|
|
|
17
19
|
|
|
18
20
|
export interface OptionsControllerState {
|
|
19
21
|
projectId: ProjectId;
|
|
20
|
-
|
|
22
|
+
clipboardClient?: ClipboardClient;
|
|
23
|
+
storage?: Storage;
|
|
21
24
|
includeWalletIds?: string[];
|
|
22
25
|
excludeWalletIds?: string[];
|
|
23
26
|
featuredWalletIds?: string[];
|
|
24
27
|
customWallets?: CustomWallet[];
|
|
25
|
-
tokens?: Tokens;
|
|
26
28
|
enableAnalytics?: boolean;
|
|
27
29
|
sdkType: SdkType;
|
|
28
30
|
sdkVersion: SdkVersion;
|
|
@@ -31,14 +33,17 @@ export interface OptionsControllerState {
|
|
|
31
33
|
isOnRampEnabled?: boolean;
|
|
32
34
|
features?: Features;
|
|
33
35
|
debug?: boolean;
|
|
36
|
+
defaultNetwork?: AppKitNetwork;
|
|
37
|
+
requestedNetworks?: AppKitNetwork[];
|
|
34
38
|
}
|
|
35
39
|
|
|
36
40
|
// -- State --------------------------------------------- //
|
|
37
41
|
const state = proxy<OptionsControllerState>({
|
|
38
42
|
projectId: '',
|
|
39
43
|
sdkType: 'appkit',
|
|
40
|
-
sdkVersion: 'react-native-
|
|
44
|
+
sdkVersion: 'react-native-undefined-undefined',
|
|
41
45
|
features: ConstantsUtil.DEFAULT_FEATURES,
|
|
46
|
+
customWallets: [],
|
|
42
47
|
debug: false
|
|
43
48
|
});
|
|
44
49
|
|
|
@@ -47,7 +52,7 @@ export const OptionsController = {
|
|
|
47
52
|
state,
|
|
48
53
|
|
|
49
54
|
setClipboardClient(client: ClipboardClient) {
|
|
50
|
-
state.
|
|
55
|
+
state.clipboardClient = ref(client);
|
|
51
56
|
},
|
|
52
57
|
|
|
53
58
|
setProjectId(projectId: OptionsControllerState['projectId']) {
|
|
@@ -66,10 +71,6 @@ export const OptionsController = {
|
|
|
66
71
|
state.featuredWalletIds = featuredWalletIds;
|
|
67
72
|
},
|
|
68
73
|
|
|
69
|
-
setTokens(tokens: OptionsControllerState['tokens']) {
|
|
70
|
-
state.tokens = tokens;
|
|
71
|
-
},
|
|
72
|
-
|
|
73
74
|
setCustomWallets(customWallets: OptionsControllerState['customWallets']) {
|
|
74
75
|
state.customWallets = customWallets;
|
|
75
76
|
},
|
|
@@ -102,12 +103,34 @@ export const OptionsController = {
|
|
|
102
103
|
state.isOnRampEnabled = isOnRampEnabled;
|
|
103
104
|
},
|
|
104
105
|
|
|
106
|
+
setStorage(storage?: OptionsControllerState['storage']) {
|
|
107
|
+
if (storage) {
|
|
108
|
+
state.storage = ref(storage);
|
|
109
|
+
}
|
|
110
|
+
},
|
|
111
|
+
|
|
112
|
+
setDefaultNetwork(defaultNetwork?: OptionsControllerState['defaultNetwork']) {
|
|
113
|
+
state.defaultNetwork = defaultNetwork;
|
|
114
|
+
},
|
|
115
|
+
|
|
116
|
+
setRequestedNetworks(requestedNetworks?: OptionsControllerState['requestedNetworks']) {
|
|
117
|
+
state.requestedNetworks = requestedNetworks;
|
|
118
|
+
},
|
|
119
|
+
|
|
105
120
|
isClipboardAvailable() {
|
|
106
|
-
return !!state.
|
|
121
|
+
return !!state.clipboardClient;
|
|
122
|
+
},
|
|
123
|
+
|
|
124
|
+
getStorage() {
|
|
125
|
+
if (!state.storage) {
|
|
126
|
+
throw new Error('AppKit: Storage is not set');
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
return state.storage;
|
|
107
130
|
},
|
|
108
131
|
|
|
109
132
|
copyToClipboard(value: string) {
|
|
110
|
-
const client = state.
|
|
133
|
+
const client = state.clipboardClient;
|
|
111
134
|
if (client) {
|
|
112
135
|
client?.setString(value);
|
|
113
136
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { proxy, subscribe as sub } from 'valtio';
|
|
2
2
|
import { subscribeKey as subKey } from 'valtio/utils';
|
|
3
|
-
import type { CaipNetworkId } from '
|
|
3
|
+
import type { CaipNetworkId } from '@reown/appkit-common-react-native';
|
|
4
4
|
|
|
5
5
|
// -- Types --------------------------------------------- //
|
|
6
6
|
export interface PublicStateControllerState {
|
|
@@ -1,22 +1,12 @@
|
|
|
1
1
|
import { proxy } from 'valtio';
|
|
2
2
|
import type {
|
|
3
|
+
AppKitNetwork,
|
|
4
|
+
SocialProvider,
|
|
3
5
|
WcWallet,
|
|
4
|
-
CaipNetwork,
|
|
5
|
-
Connector,
|
|
6
|
-
SwapInputTarget,
|
|
7
6
|
OnRampTransactionResult
|
|
8
|
-
} from '
|
|
7
|
+
} from '@reown/appkit-common-react-native';
|
|
9
8
|
|
|
10
9
|
// -- Types --------------------------------------------- //
|
|
11
|
-
type TransactionAction = {
|
|
12
|
-
goBack: boolean;
|
|
13
|
-
view: RouterControllerState['view'] | null;
|
|
14
|
-
close?: boolean;
|
|
15
|
-
replace?: boolean;
|
|
16
|
-
onSuccess?: () => void;
|
|
17
|
-
onCancel?: () => void;
|
|
18
|
-
};
|
|
19
|
-
|
|
20
10
|
export interface RouterControllerState {
|
|
21
11
|
view:
|
|
22
12
|
| 'Account'
|
|
@@ -27,11 +17,7 @@ export interface RouterControllerState {
|
|
|
27
17
|
| 'ConnectingExternal'
|
|
28
18
|
| 'ConnectingSiwe'
|
|
29
19
|
| 'ConnectingSocial'
|
|
30
|
-
| 'ConnectingFarcaster'
|
|
31
20
|
| 'ConnectingWalletConnect'
|
|
32
|
-
| 'Create'
|
|
33
|
-
| 'EmailVerifyDevice'
|
|
34
|
-
| 'EmailVerifyOtp'
|
|
35
21
|
| 'GetWallet'
|
|
36
22
|
| 'Networks'
|
|
37
23
|
| 'OnRamp'
|
|
@@ -41,15 +27,10 @@ export interface RouterControllerState {
|
|
|
41
27
|
| 'OnRampTransaction'
|
|
42
28
|
| 'SwitchNetwork'
|
|
43
29
|
| 'Swap'
|
|
44
|
-
| 'SwapSelectToken'
|
|
45
30
|
| 'SwapPreview'
|
|
46
31
|
| 'Transactions'
|
|
47
32
|
| 'UnsupportedChain'
|
|
48
|
-
| 'UpdateEmailPrimaryOtp'
|
|
49
|
-
| 'UpdateEmailSecondaryOtp'
|
|
50
|
-
| 'UpdateEmailWallet'
|
|
51
33
|
| 'UpgradeEmailWallet'
|
|
52
|
-
| 'UpgradeToSmartAccount'
|
|
53
34
|
| 'WalletCompatibleNetworks'
|
|
54
35
|
| 'WalletReceive'
|
|
55
36
|
| 'WalletSend'
|
|
@@ -58,62 +39,41 @@ export interface RouterControllerState {
|
|
|
58
39
|
| 'WhatIsANetwork'
|
|
59
40
|
| 'WhatIsAWallet';
|
|
60
41
|
history: RouterControllerState['view'][];
|
|
42
|
+
navigationDirection: 'forward' | 'backward' | 'none';
|
|
61
43
|
data?: {
|
|
62
|
-
connector?: Connector;
|
|
63
44
|
wallet?: WcWallet;
|
|
64
|
-
network?:
|
|
65
|
-
email?: string;
|
|
66
|
-
newEmail?: string;
|
|
67
|
-
swapTarget?: SwapInputTarget;
|
|
45
|
+
network?: AppKitNetwork;
|
|
68
46
|
onrampResult?: OnRampTransactionResult;
|
|
47
|
+
socialProvider?: SocialProvider;
|
|
69
48
|
};
|
|
70
|
-
transactionStack: TransactionAction[];
|
|
71
49
|
}
|
|
72
50
|
|
|
73
51
|
// -- State --------------------------------------------- //
|
|
74
52
|
const state = proxy<RouterControllerState>({
|
|
75
53
|
view: 'Connect',
|
|
76
54
|
history: ['Connect'],
|
|
77
|
-
|
|
55
|
+
navigationDirection: 'none'
|
|
78
56
|
});
|
|
79
57
|
|
|
80
58
|
// -- Controller ---------------------------------------- //
|
|
81
59
|
export const RouterController = {
|
|
82
60
|
state,
|
|
83
61
|
|
|
84
|
-
push(
|
|
62
|
+
push(
|
|
63
|
+
view: RouterControllerState['view'],
|
|
64
|
+
data?: RouterControllerState['data'],
|
|
65
|
+
direction: 'forward' | 'backward' = 'forward'
|
|
66
|
+
) {
|
|
85
67
|
if (view !== state.view) {
|
|
68
|
+
state.navigationDirection = direction;
|
|
86
69
|
state.view = view;
|
|
87
70
|
state.history = [...state.history, view];
|
|
88
71
|
state.data = data;
|
|
89
72
|
}
|
|
90
73
|
},
|
|
91
74
|
|
|
92
|
-
pushTransactionStack(action: TransactionAction) {
|
|
93
|
-
state.transactionStack = [...state.transactionStack, action];
|
|
94
|
-
},
|
|
95
|
-
|
|
96
|
-
popTransactionStack(cancel?: boolean) {
|
|
97
|
-
const action = state.transactionStack.pop();
|
|
98
|
-
|
|
99
|
-
if (!action) {
|
|
100
|
-
return;
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
if (cancel) {
|
|
104
|
-
this.goBack();
|
|
105
|
-
action?.onCancel?.();
|
|
106
|
-
} else {
|
|
107
|
-
if (action.goBack) {
|
|
108
|
-
this.goBack();
|
|
109
|
-
} else if (action.view) {
|
|
110
|
-
this.reset(action.view);
|
|
111
|
-
}
|
|
112
|
-
action?.onSuccess?.();
|
|
113
|
-
}
|
|
114
|
-
},
|
|
115
|
-
|
|
116
75
|
reset(view: RouterControllerState['view'], data?: RouterControllerState['data']) {
|
|
76
|
+
state.navigationDirection = 'none';
|
|
117
77
|
state.view = view;
|
|
118
78
|
state.history = [view];
|
|
119
79
|
state.data = data;
|
|
@@ -121,6 +81,7 @@ export const RouterController = {
|
|
|
121
81
|
|
|
122
82
|
replace(view: RouterControllerState['view'], data?: RouterControllerState['data']) {
|
|
123
83
|
if (state.history.length >= 1 && state.history.at(-1) !== view) {
|
|
84
|
+
state.navigationDirection = 'none';
|
|
124
85
|
state.view = view;
|
|
125
86
|
state.history[state.history.length - 1] = view;
|
|
126
87
|
state.data = data;
|
|
@@ -132,6 +93,7 @@ export const RouterController = {
|
|
|
132
93
|
state.history.pop();
|
|
133
94
|
const [last] = state.history.slice(-1);
|
|
134
95
|
if (last) {
|
|
96
|
+
state.navigationDirection = 'backward';
|
|
135
97
|
state.view = last;
|
|
136
98
|
}
|
|
137
99
|
}
|
|
@@ -142,6 +104,7 @@ export const RouterController = {
|
|
|
142
104
|
state.history = state.history.slice(0, historyIndex + 1);
|
|
143
105
|
const [last] = state.history.slice(-1);
|
|
144
106
|
if (last) {
|
|
107
|
+
state.navigationDirection = 'backward';
|
|
145
108
|
state.view = last;
|
|
146
109
|
}
|
|
147
110
|
}
|