@reown/appkit-core-react-native 0.0.0-feat-smart-account-20241017180406 → 0.0.0-feat-swaps-20241203153101

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 (139) hide show
  1. package/lib/commonjs/controllers/ApiController.js +19 -7
  2. package/lib/commonjs/controllers/ApiController.js.map +1 -1
  3. package/lib/commonjs/controllers/BlockchainApiController.js +163 -1
  4. package/lib/commonjs/controllers/BlockchainApiController.js.map +1 -1
  5. package/lib/commonjs/controllers/ConnectionController.js +6 -10
  6. package/lib/commonjs/controllers/ConnectionController.js.map +1 -1
  7. package/lib/commonjs/controllers/ConnectorController.js +9 -1
  8. package/lib/commonjs/controllers/ConnectorController.js.map +1 -1
  9. package/lib/commonjs/controllers/NetworkController.js +9 -0
  10. package/lib/commonjs/controllers/NetworkController.js.map +1 -1
  11. package/lib/commonjs/controllers/OptionsController.js +5 -1
  12. package/lib/commonjs/controllers/OptionsController.js.map +1 -1
  13. package/lib/commonjs/controllers/RouterController.js.map +1 -1
  14. package/lib/commonjs/controllers/SnackController.js +26 -1
  15. package/lib/commonjs/controllers/SnackController.js.map +1 -1
  16. package/lib/commonjs/controllers/SwapController.js +576 -6
  17. package/lib/commonjs/controllers/SwapController.js.map +1 -1
  18. package/lib/commonjs/controllers/WebviewController.js +13 -1
  19. package/lib/commonjs/controllers/WebviewController.js.map +1 -1
  20. package/lib/commonjs/index.js +14 -0
  21. package/lib/commonjs/index.js.map +1 -1
  22. package/lib/commonjs/utils/ApiUtil.js +9 -2
  23. package/lib/commonjs/utils/ApiUtil.js.map +1 -1
  24. package/lib/commonjs/utils/ConnectionUtil.js +34 -0
  25. package/lib/commonjs/utils/ConnectionUtil.js.map +1 -0
  26. package/lib/commonjs/utils/ConstantsUtil.js +30 -1
  27. package/lib/commonjs/utils/ConstantsUtil.js.map +1 -1
  28. package/lib/commonjs/utils/CoreHelperUtil.js +12 -12
  29. package/lib/commonjs/utils/CoreHelperUtil.js.map +1 -1
  30. package/lib/commonjs/utils/NetworkUtil.js +46 -0
  31. package/lib/commonjs/utils/NetworkUtil.js.map +1 -0
  32. package/lib/commonjs/utils/RouterUtil.js +1 -1
  33. package/lib/commonjs/utils/RouterUtil.js.map +1 -1
  34. package/lib/commonjs/utils/StorageUtil.js.map +1 -1
  35. package/lib/commonjs/utils/SwapApiUtil.js +58 -0
  36. package/lib/commonjs/utils/SwapApiUtil.js.map +1 -1
  37. package/lib/commonjs/utils/SwapCalculationUtil.js +73 -0
  38. package/lib/commonjs/utils/SwapCalculationUtil.js.map +1 -1
  39. package/lib/module/controllers/ApiController.js +19 -7
  40. package/lib/module/controllers/ApiController.js.map +1 -1
  41. package/lib/module/controllers/BlockchainApiController.js +163 -1
  42. package/lib/module/controllers/BlockchainApiController.js.map +1 -1
  43. package/lib/module/controllers/ConnectionController.js +6 -10
  44. package/lib/module/controllers/ConnectionController.js.map +1 -1
  45. package/lib/module/controllers/ConnectorController.js +9 -1
  46. package/lib/module/controllers/ConnectorController.js.map +1 -1
  47. package/lib/module/controllers/NetworkController.js +9 -0
  48. package/lib/module/controllers/NetworkController.js.map +1 -1
  49. package/lib/module/controllers/OptionsController.js +5 -1
  50. package/lib/module/controllers/OptionsController.js.map +1 -1
  51. package/lib/module/controllers/RouterController.js.map +1 -1
  52. package/lib/module/controllers/SnackController.js +26 -1
  53. package/lib/module/controllers/SnackController.js.map +1 -1
  54. package/lib/module/controllers/SwapController.js +576 -6
  55. package/lib/module/controllers/SwapController.js.map +1 -1
  56. package/lib/module/controllers/WebviewController.js +13 -1
  57. package/lib/module/controllers/WebviewController.js.map +1 -1
  58. package/lib/module/index.js +2 -0
  59. package/lib/module/index.js.map +1 -1
  60. package/lib/module/utils/ApiUtil.js +9 -2
  61. package/lib/module/utils/ApiUtil.js.map +1 -1
  62. package/lib/module/utils/ConnectionUtil.js +28 -0
  63. package/lib/module/utils/ConnectionUtil.js.map +1 -0
  64. package/lib/module/utils/ConstantsUtil.js +30 -1
  65. package/lib/module/utils/ConstantsUtil.js.map +1 -1
  66. package/lib/module/utils/CoreHelperUtil.js +12 -12
  67. package/lib/module/utils/CoreHelperUtil.js.map +1 -1
  68. package/lib/module/utils/NetworkUtil.js +40 -0
  69. package/lib/module/utils/NetworkUtil.js.map +1 -0
  70. package/lib/module/utils/RouterUtil.js +1 -1
  71. package/lib/module/utils/RouterUtil.js.map +1 -1
  72. package/lib/module/utils/StorageUtil.js.map +1 -1
  73. package/lib/module/utils/SwapApiUtil.js +58 -0
  74. package/lib/module/utils/SwapApiUtil.js.map +1 -1
  75. package/lib/module/utils/SwapCalculationUtil.js +73 -1
  76. package/lib/module/utils/SwapCalculationUtil.js.map +1 -1
  77. package/lib/typescript/controllers/ApiController.d.ts +3 -1
  78. package/lib/typescript/controllers/ApiController.d.ts.map +1 -1
  79. package/lib/typescript/controllers/BlockchainApiController.d.ts +6 -1
  80. package/lib/typescript/controllers/BlockchainApiController.d.ts.map +1 -1
  81. package/lib/typescript/controllers/ConnectionController.d.ts +3 -1
  82. package/lib/typescript/controllers/ConnectionController.d.ts.map +1 -1
  83. package/lib/typescript/controllers/ConnectorController.d.ts +1 -1
  84. package/lib/typescript/controllers/ConnectorController.d.ts.map +1 -1
  85. package/lib/typescript/controllers/NetworkController.d.ts +2 -0
  86. package/lib/typescript/controllers/NetworkController.d.ts.map +1 -1
  87. package/lib/typescript/controllers/OptionsController.d.ts +2 -0
  88. package/lib/typescript/controllers/OptionsController.d.ts.map +1 -1
  89. package/lib/typescript/controllers/RouterController.d.ts +3 -2
  90. package/lib/typescript/controllers/RouterController.d.ts.map +1 -1
  91. package/lib/typescript/controllers/SnackController.d.ts +9 -1
  92. package/lib/typescript/controllers/SnackController.d.ts.map +1 -1
  93. package/lib/typescript/controllers/SwapController.d.ts +87 -0
  94. package/lib/typescript/controllers/SwapController.d.ts.map +1 -1
  95. package/lib/typescript/controllers/WebviewController.d.ts +3 -0
  96. package/lib/typescript/controllers/WebviewController.d.ts.map +1 -1
  97. package/lib/typescript/index.d.ts +2 -0
  98. package/lib/typescript/index.d.ts.map +1 -1
  99. package/lib/typescript/utils/ApiUtil.d.ts +1 -0
  100. package/lib/typescript/utils/ApiUtil.d.ts.map +1 -1
  101. package/lib/typescript/utils/ConnectionUtil.d.ts +4 -0
  102. package/lib/typescript/utils/ConnectionUtil.d.ts.map +1 -0
  103. package/lib/typescript/utils/ConstantsUtil.d.ts +4 -0
  104. package/lib/typescript/utils/ConstantsUtil.d.ts.map +1 -1
  105. package/lib/typescript/utils/CoreHelperUtil.d.ts +2 -2
  106. package/lib/typescript/utils/CoreHelperUtil.d.ts.map +1 -1
  107. package/lib/typescript/utils/NetworkUtil.d.ts +8 -0
  108. package/lib/typescript/utils/NetworkUtil.d.ts.map +1 -0
  109. package/lib/typescript/utils/RouterUtil.d.ts.map +1 -1
  110. package/lib/typescript/utils/StorageUtil.d.ts +1 -1
  111. package/lib/typescript/utils/StorageUtil.d.ts.map +1 -1
  112. package/lib/typescript/utils/SwapApiUtil.d.ts +8 -0
  113. package/lib/typescript/utils/SwapApiUtil.d.ts.map +1 -1
  114. package/lib/typescript/utils/SwapCalculationUtil.d.ts +19 -0
  115. package/lib/typescript/utils/SwapCalculationUtil.d.ts.map +1 -1
  116. package/lib/typescript/utils/TypeUtil.d.ts +152 -5
  117. package/lib/typescript/utils/TypeUtil.d.ts.map +1 -1
  118. package/package.json +2 -2
  119. package/src/controllers/ApiController.ts +32 -17
  120. package/src/controllers/BlockchainApiController.ts +153 -1
  121. package/src/controllers/ConnectionController.ts +8 -10
  122. package/src/controllers/ConnectorController.ts +13 -1
  123. package/src/controllers/NetworkController.ts +15 -0
  124. package/src/controllers/OptionsController.ts +7 -1
  125. package/src/controllers/RouterController.ts +6 -1
  126. package/src/controllers/SnackController.ts +35 -2
  127. package/src/controllers/SwapController.ts +753 -6
  128. package/src/controllers/WebviewController.ts +16 -1
  129. package/src/index.ts +2 -0
  130. package/src/utils/ApiUtil.ts +14 -6
  131. package/src/utils/ConnectionUtil.ts +28 -0
  132. package/src/utils/ConstantsUtil.ts +121 -1
  133. package/src/utils/CoreHelperUtil.ts +20 -15
  134. package/src/utils/NetworkUtil.ts +33 -0
  135. package/src/utils/RouterUtil.ts +4 -1
  136. package/src/utils/StorageUtil.ts +1 -1
  137. package/src/utils/SwapApiUtil.ts +89 -0
  138. package/src/utils/SwapCalculationUtil.ts +125 -0
  139. package/src/utils/TypeUtil.ts +172 -10
@@ -1,4 +1,5 @@
1
1
  /// <reference types="node" />
2
+ /// <reference types="react" />
2
3
  import { type EventEmitter } from 'events';
3
4
  import type { Balance, SocialProvider, Transaction } from '@reown/appkit-common-react-native';
4
5
  export interface BaseError {
@@ -45,6 +46,11 @@ export type CaipNamespaces = Record<string, {
45
46
  export type SdkType = 'appkit';
46
47
  export type SdkVersion = `react-native-wagmi-${string}` | `react-native-ethers5-${string}` | `react-native-ethers-${string}`;
47
48
  export type Features = {
49
+ /**
50
+ * @description Enable or disable the swaps feature. Enabled by default.
51
+ * @type {boolean}
52
+ */
53
+ swaps?: boolean;
48
54
  /**
49
55
  * @description Enable or disable the email feature. Enabled by default.
50
56
  * @type {boolean}
@@ -125,6 +131,51 @@ export interface BlockchainApiTransactionsResponse {
125
131
  data: Transaction[];
126
132
  next: string | null;
127
133
  }
134
+ export interface BlockchainApiSwapAllowanceResponse {
135
+ allowance: string;
136
+ }
137
+ export interface BlockchainApiGenerateSwapCalldataRequest {
138
+ projectId: string;
139
+ userAddress: string;
140
+ from: string;
141
+ to: string;
142
+ amount: string;
143
+ eip155?: {
144
+ slippage: string;
145
+ permit?: string;
146
+ };
147
+ }
148
+ export interface BlockchainApiGenerateSwapCalldataResponse {
149
+ tx: {
150
+ from: CaipAddress;
151
+ to: CaipAddress;
152
+ data: `0x${string}`;
153
+ amount: string;
154
+ eip155: {
155
+ gas: string;
156
+ gasPrice: string;
157
+ };
158
+ };
159
+ }
160
+ export interface BlockchainApiGenerateApproveCalldataRequest {
161
+ projectId: string;
162
+ userAddress: string;
163
+ from: string;
164
+ to: string;
165
+ amount?: number;
166
+ }
167
+ export interface BlockchainApiGenerateApproveCalldataResponse {
168
+ tx: {
169
+ from: CaipAddress;
170
+ to: CaipAddress;
171
+ data: `0x${string}`;
172
+ value: string;
173
+ eip155: {
174
+ gas: number;
175
+ gasPrice: string;
176
+ };
177
+ };
178
+ }
128
179
  export interface BlockchainApiTokenPriceRequest {
129
180
  projectId: string;
130
181
  currency?: 'usd' | 'eur' | 'gbp' | 'aud' | 'cad' | 'inr' | 'jpy' | 'btc' | 'eth';
@@ -138,6 +189,11 @@ export interface BlockchainApiTokenPriceResponse {
138
189
  price: number;
139
190
  }[];
140
191
  }
192
+ export interface BlockchainApiSwapAllowanceRequest {
193
+ projectId: string;
194
+ tokenAddress: string;
195
+ userAddress: string;
196
+ }
141
197
  export interface BlockchainApiGasPriceRequest {
142
198
  projectId: string;
143
199
  chainId: string;
@@ -168,6 +224,31 @@ export interface BlockchainApiLookupEnsName {
168
224
  bio?: string;
169
225
  }[];
170
226
  }
227
+ export interface BlockchainApiSwapQuoteRequest {
228
+ projectId: string;
229
+ chainId?: string;
230
+ amount: string;
231
+ userAddress: string;
232
+ from: string;
233
+ to: string;
234
+ gasPrice: string;
235
+ }
236
+ export interface BlockchainApiSwapQuoteResponse {
237
+ quotes: {
238
+ id: string | null;
239
+ fromAmount: string;
240
+ fromAccount: string;
241
+ toAmount: string;
242
+ toAccount: string;
243
+ }[];
244
+ }
245
+ export interface BlockchainApiSwapTokensRequest {
246
+ projectId: string;
247
+ chainId?: string;
248
+ }
249
+ export interface BlockchainApiSwapTokensResponse {
250
+ tokens: SwapToken[];
251
+ }
171
252
  export interface Token {
172
253
  address: string;
173
254
  image?: string;
@@ -338,6 +419,47 @@ export type Event = {
338
419
  isSmartAccount: boolean;
339
420
  network: string;
340
421
  };
422
+ } | {
423
+ type: 'track';
424
+ event: 'OPEN_SWAP';
425
+ properties: {
426
+ isSmartAccount: boolean;
427
+ network: string;
428
+ };
429
+ } | {
430
+ type: 'track';
431
+ event: 'INITIATE_SWAP';
432
+ properties: {
433
+ isSmartAccount: boolean;
434
+ network: string;
435
+ swapFromToken: string;
436
+ swapToToken: string;
437
+ swapFromAmount: string;
438
+ swapToAmount: string;
439
+ };
440
+ } | {
441
+ type: 'track';
442
+ event: 'SWAP_SUCCESS';
443
+ properties: {
444
+ isSmartAccount: boolean;
445
+ network: string;
446
+ swapFromToken: string;
447
+ swapToToken: string;
448
+ swapFromAmount: string;
449
+ swapToAmount: string;
450
+ };
451
+ } | {
452
+ type: 'track';
453
+ event: 'SWAP_ERROR';
454
+ properties: {
455
+ isSmartAccount: boolean;
456
+ network: string;
457
+ swapFromToken: string;
458
+ swapToToken: string;
459
+ swapFromAmount: string;
460
+ swapToAmount: string;
461
+ message: string;
462
+ };
341
463
  } | {
342
464
  type: 'track';
343
465
  event: 'SEND_INITIATED';
@@ -391,6 +513,12 @@ export type Event = {
391
513
  network: string;
392
514
  };
393
515
  };
516
+ export type EstimateGasTransactionArgs = {
517
+ chainNamespace?: undefined | 'eip155';
518
+ address: `0x${string}`;
519
+ to: `0x${string}`;
520
+ data: `0x${string}`;
521
+ };
394
522
  export interface SendTransactionArgs {
395
523
  to: `0x${string}`;
396
524
  data: `0x${string}`;
@@ -398,6 +526,7 @@ export interface SendTransactionArgs {
398
526
  gas?: bigint;
399
527
  gasPrice: bigint;
400
528
  address: `0x${string}`;
529
+ chainNamespace?: 'eip155';
401
530
  }
402
531
  export interface WriteContractArgs {
403
532
  receiverAddress: `0x${string}`;
@@ -407,6 +536,23 @@ export interface WriteContractArgs {
407
536
  method: 'send' | 'transfer' | 'call';
408
537
  abi: any;
409
538
  }
539
+ export type SwapToken = {
540
+ name: string;
541
+ symbol: string;
542
+ address: CaipAddress;
543
+ decimals: number;
544
+ logoUri: string;
545
+ eip2612?: boolean;
546
+ };
547
+ export type SwapTokenWithBalance = SwapToken & {
548
+ quantity: {
549
+ decimals: string;
550
+ numeric: string;
551
+ };
552
+ price: number;
553
+ value: number;
554
+ };
555
+ export type SwapInputTarget = 'sourceToken' | 'toToken';
410
556
  /**
411
557
  * Matches type defined for packages/wallet/src/AppKitFrameProvider.ts
412
558
  * It's duplicated in order to decouple scaffold from email package
@@ -437,8 +583,8 @@ export interface AppKitFrameProvider {
437
583
  accounts?: {
438
584
  type: AppKitFrameAccountType;
439
585
  address: string;
440
- }[] | undefined;
441
- userName?: string | undefined;
586
+ }[];
587
+ userName?: string;
442
588
  }>;
443
589
  getSocialRedirectUri(payload: {
444
590
  provider: SocialProvider;
@@ -487,7 +633,7 @@ export interface AppKitFrameProvider {
487
633
  chainId: number | undefined;
488
634
  }): Promise<{
489
635
  chainId: number;
490
- email?: string | null | undefined;
636
+ email?: string | null;
491
637
  address: string;
492
638
  smartAccountDeployed: boolean;
493
639
  preferredAccountType: AppKitFrameAccountType;
@@ -499,13 +645,14 @@ export interface AppKitFrameProvider {
499
645
  type: AppKitFrameAccountType;
500
646
  address: string;
501
647
  }>;
648
+ setOnTimeout(callback: () => void): void;
502
649
  getSmartAccountEnabledNetworks(): Promise<{
503
650
  smartAccountEnabledNetworks: number[];
504
651
  }>;
505
652
  disconnect(): Promise<unknown>;
506
653
  request(req: any): Promise<any>;
507
- AuthView: () => JSX.Element | null;
508
- Webview: () => JSX.Element | null;
654
+ AuthView: () => React.JSX.Element | null;
655
+ Webview: () => React.JSX.Element | null;
509
656
  onSetPreferredAccount: (callback: (values: {
510
657
  type: AppKitFrameAccountType;
511
658
  address: string;
@@ -1 +1 @@
1
- {"version":3,"file":"TypeUtil.d.ts","sourceRoot":"","sources":["../../../src/utils/TypeUtil.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,QAAQ,CAAC;AAC3C,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAE9F,MAAM,WAAW,SAAS;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,WAAW,GAAG,GAAG,MAAM,IAAI,MAAM,IAAI,MAAM,EAAE,CAAC;AAE1D,MAAM,MAAM,aAAa,GAAG,GAAG,MAAM,IAAI,MAAM,EAAE,CAAC;AAElD,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,aAAa,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,mBAAmB,GAC3B;IACE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,GACD,SAAS,CAAC;AAEd,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAE/B,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG,KAAK,GAAG,QAAQ,GAAG,OAAO,GAAG,aAAa,CAAC;AAE7E,MAAM,MAAM,aAAa,GAAG,gBAAgB,GAAG,UAAU,GAAG,MAAM,GAAG,UAAU,CAAC;AAEhF,MAAM,MAAM,SAAS,GAAG;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,MAAM,CACjC,MAAM,EACN;IACE,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB,CACF,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG,QAAQ,CAAC;AAE/B,MAAM,MAAM,UAAU,GAClB,sBAAsB,MAAM,EAAE,GAC9B,wBAAwB,MAAM,EAAE,GAChC,uBAAuB,MAAM,EAAE,CAAC;AAEpC,MAAM,MAAM,QAAQ,GAAG;IACrB;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;OAGG;IACH,OAAO,CAAC,EAAE,cAAc,EAAE,GAAG,KAAK,CAAC;CACpC,CAAC;AAGF,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,QAAQ,EAAE,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,UAAU,EAAE,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,6BAA6B;IAC5C,kBAAkB,EAAE,OAAO,CAAC;CAC7B;AAED,MAAM,MAAM,YAAY,GACpB,SAAS,GACT,aAAa,GACb,UAAU,GACV,UAAU,GACV,gBAAgB,GAChB,QAAQ,CAAC;AAIb,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,OAAO,CAAC;AAEzC,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAGD,MAAM,WAAW,4BAA4B;IAC3C,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,6BAA6B;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,EAAE,OAAO,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,gCAAgC;IAC/C,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,KAAK,CAAC,EAAE,YAAY,CAAC;CACtB;AAED,MAAM,WAAW,iCAAiC;IAChD,IAAI,EAAE,WAAW,EAAE,CAAC;IACpB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB;AAED,MAAM,WAAW,8BAA8B;IAC7C,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;IACjF,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,+BAA+B;IAC9C,SAAS,EAAE;QACT,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;KACf,EAAE,CAAC;CACL;AAED,MAAM,WAAW,4BAA4B;IAC3C,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,qBAAsB,SAAQ,SAAS;IACtD,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAClD;AAED,MAAM,MAAM,SAAS,GAAG,GAAG,MAAM,WAAW,GAAG,GAAG,MAAM,SAAS,CAAC;AAElE,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,SAAS,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CACf,MAAM,EACN;QACE,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;KACjB,CACF,CAAC;IACF,UAAU,EAAE;QACV,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,GAAG,CAAC,EAAE,MAAM,CAAC;KACd,EAAE,CAAC;CACL;AAGD,MAAM,WAAW,KAAK;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,MAAM,GAAG,MAAM,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;AAElD,MAAM,MAAM,QAAQ,GAAG;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE;QACT,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;KACpB,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,IAAI,CAC7B,QAAQ,EACN,IAAI,GACJ,MAAM,GACN,UAAU,GACV,WAAW,GACX,aAAa,GACb,cAAc,GACd,aAAa,GACb,WAAW,GACX,WAAW,GACX,YAAY,CACf,CAAC;AAIF,MAAM,MAAM,KAAK,GACb;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,eAAe,CAAC;CACxB,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,cAAc,CAAC;CACvB,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,YAAY,CAAC;IACpB,UAAU,EAAE;QACV,SAAS,EAAE,OAAO,CAAC;KACpB,CAAC;CACH,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,aAAa,CAAC;IACrB,UAAU,EAAE;QACV,SAAS,EAAE,OAAO,CAAC;KACpB,CAAC;CACH,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,mBAAmB,CAAC;CAC5B,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,gBAAgB,CAAC;CACzB,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,gBAAgB,CAAC;IACxB,UAAU,EAAE;QACV,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;CACH,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,eAAe,CAAC;IACvB,UAAU,EAAE;QACV,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,CAAC,EAAE,QAAQ,CAAC;QACpB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;CACH,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,iBAAiB,CAAC;IACzB,UAAU,EAAE;QACV,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,QAAQ,CAAC;QACjB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;CACH,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,eAAe,CAAC;IACvB,UAAU,EAAE;QACV,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;CACH,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,oBAAoB,CAAC;CAC7B,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,kBAAkB,CAAC;CAC3B,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,mBAAmB,CAAC;CAC5B,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,oBAAoB,CAAC;CAC7B,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,kBAAkB,CAAC;CAC3B,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,sBAAsB,CAAC;CAC/B,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,iBAAiB,CAAC;CAC1B,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,6BAA6B,CAAC;CACtC,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,8BAA8B,CAAC;CACvC,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,8BAA8B,CAAC;CACvC,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,8BAA8B,CAAC;CACvC,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,YAAY,CAAC;CACrB,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,qBAAqB,CAAC;CAC9B,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,0BAA0B,CAAC;CACnC,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,yBAAyB,CAAC;IACjC,UAAU,EAAE;QACV,OAAO,EAAE,MAAM,CAAC;QAChB,cAAc,EAAE,OAAO,CAAC;KACzB,CAAC;CACH,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,mBAAmB,CAAC;IAC3B,UAAU,EAAE;QACV,OAAO,EAAE,MAAM,CAAC;QAChB,cAAc,EAAE,OAAO,CAAC;KACzB,CAAC;CACH,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,mBAAmB,CAAC;IAC3B,UAAU,EAAE;QACV,OAAO,EAAE,MAAM,CAAC;QAChB,cAAc,EAAE,OAAO,CAAC;KACzB,CAAC;CACH,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,iBAAiB,CAAC;IACzB,UAAU,EAAE;QACV,OAAO,EAAE,MAAM,CAAC;QAChB,cAAc,EAAE,OAAO,CAAC;KACzB,CAAC;CACH,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,oBAAoB,CAAC;IAC5B,UAAU,EAAE;QACV,cAAc,EAAE,OAAO,CAAC;KACzB,CAAC;CACH,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,0BAA0B,CAAC;IAClC,UAAU,EAAE;QACV,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;QAC3B,cAAc,EAAE,OAAO,CAAC;KACzB,CAAC;CACH,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,wBAAwB,CAAC;IAChC,UAAU,EAAE;QACV,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;QAC5B,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;QAC3B,cAAc,EAAE,OAAO,CAAC;KACzB,CAAC;CACH,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,WAAW,CAAC;IACnB,UAAU,EAAE;QACV,cAAc,EAAE,OAAO,CAAC;QACxB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;CACH,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,gBAAgB,CAAC;IACxB,UAAU,EAAE;QACV,cAAc,EAAE,OAAO,CAAC;QACxB,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;CACH,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,cAAc,CAAC;IACtB,UAAU,EAAE;QACV,cAAc,EAAE,OAAO,CAAC;QACxB,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;CACH,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,YAAY,CAAC;IACpB,UAAU,EAAE;QACV,cAAc,EAAE,OAAO,CAAC;QACxB,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;CACH,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,sBAAsB,CAAC;IAC9B,UAAU,EAAE;QACV,QAAQ,EAAE,cAAc,CAAC;KAC1B,CAAC;CACH,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,sBAAsB,CAAC;IAC9B,UAAU,EAAE;QACV,QAAQ,EAAE,cAAc,CAAC;KAC1B,CAAC;CACH,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,oBAAoB,CAAC;IAC5B,UAAU,EAAE;QACV,QAAQ,EAAE,cAAc,CAAC;KAC1B,CAAC;CACH,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,4BAA4B,CAAC;IACpC,UAAU,EAAE;QACV,WAAW,EAAE,sBAAsB,CAAC;QACpC,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;CACH,CAAC;AAIN,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,KAAK,MAAM,EAAE,CAAC;IAClB,IAAI,EAAE,KAAK,MAAM,EAAE,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,KAAK,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,iBAAiB;IAChC,eAAe,EAAE,KAAK,MAAM,EAAE,CAAC;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,KAAK,MAAM,EAAE,CAAC;IAC5B,WAAW,EAAE,KAAK,MAAM,EAAE,CAAC;IAC3B,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,CAAC;IACrC,GAAG,EAAE,GAAG,CAAC;CACV;AAGD;;;GAGG;AAEH,MAAM,MAAM,sBAAsB,GAAG,KAAK,GAAG,cAAc,CAAC;AAE5D,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,eAAe,IAAI,YAAY,CAAC;IAChC,gBAAgB,IAAI,MAAM,CAAC;IAC3B,yBAAyB,IAAI,MAAM,CAAC;IACpC,oBAAoB,IAAI,MAAM,CAAC;IAC/B,oBAAoB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/C,QAAQ,IAAI,MAAM,GAAG,SAAS,CAAC;IAC/B,WAAW,IAAI,MAAM,GAAG,SAAS,CAAC;IAClC,kBAAkB,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAClD,gBAAgB,IAAI,IAAI,CAAC;IACzB,YAAY,CAAC,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;QAChD,MAAM,EAAE,eAAe,GAAG,YAAY,CAAC;KACxC,CAAC,CAAC;IACH,aAAa,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAClC,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;QAClC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;QACzB,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EACL;YACE,IAAI,EAAE,sBAAsB,CAAC;YAC7B,OAAO,EAAE,MAAM,CAAC;SACjB,EAAE,GACH,SAAS,CAAC;QACd,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;KAC/B,CAAC,CAAC;IACH,oBAAoB,CAAC,OAAO,EAAE;QAAE,QAAQ,EAAE,cAAc,CAAA;KAAE,GAAG,OAAO,CAAC;QACnE,GAAG,EAAE,MAAM,CAAC;KACb,CAAC,CAAC;IACH,UAAU,CAAC,OAAO,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACvD,gBAAgB,EAAE,MAAM,OAAO,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACtD,eAAe,IAAI,OAAO,CAAC;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC5C,WAAW,IAAI,OAAO,CAAC;QACrB,WAAW,EAAE,OAAO,CAAC;KACtB,CAAC,CAAC;IACH,UAAU,IAAI,OAAO,CAAC;QACpB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IACH,WAAW,CAAC,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;QAC/C,MAAM,EAAE,oBAAoB,GAAG,sBAAsB,CAAC;KACvD,CAAC,CAAC;IACH,qBAAqB,CAAC,OAAO,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAClE,uBAAuB,CAAC,OAAO,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;QACzD,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC,CAAC;IACH,SAAS,CAAC,OAAO,EAAE;QACjB,SAAS,EAAE,SAAS,GAAG,SAAS,CAAC;QACjC,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,GAAG,SAAS,CAAC;KAC7D,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACrB,YAAY,CAAC,OAAO,EAAE;QACpB,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,UAAU,CAAC;QACvB,OAAO,EAAE,OAAO,CAAC;QACjB,QAAQ,CAAC,EAAE,QAAQ,CAAC;KACrB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACrB,OAAO,CAAC,OAAO,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,GAAG,OAAO,CAAC;QAC1D,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;QAClC,OAAO,EAAE,MAAM,CAAC;QAChB,oBAAoB,EAAE,OAAO,CAAC;QAC9B,oBAAoB,EAAE,sBAAsB,CAAC;KAC9C,CAAC,CAAC;IACH,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;QACtC,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IACH,mBAAmB,CAAC,IAAI,EAAE,sBAAsB,GAAG,OAAO,CAAC;QACzD,IAAI,EAAE,sBAAsB,CAAC;QAC7B,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IACH,8BAA8B,IAAI,OAAO,CAAC;QACxC,2BAA2B,EAAE,MAAM,EAAE,CAAC;KACvC,CAAC,CAAC;IACH,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/B,OAAO,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAChC,QAAQ,EAAE,MAAM,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC;IACnC,OAAO,EAAE,MAAM,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC;IAClC,qBAAqB,EAAE,CACrB,QAAQ,EAAE,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,sBAAsB,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,KAC1E,IAAI,CAAC;CACX"}
1
+ {"version":3,"file":"TypeUtil.d.ts","sourceRoot":"","sources":["../../../src/utils/TypeUtil.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reown/appkit-core-react-native",
3
- "version": "0.0.0-feat-smart-account-20241017180406",
3
+ "version": "0.0.0-feat-swaps-20241203153101",
4
4
  "main": "lib/commonjs/index.js",
5
5
  "types": "lib/typescript/index.d.ts",
6
6
  "module": "lib/module/index.js",
@@ -38,7 +38,7 @@
38
38
  "access": "public"
39
39
  },
40
40
  "dependencies": {
41
- "@reown/appkit-common-react-native": "0.0.0-feat-smart-account-20241017180406",
41
+ "@reown/appkit-common-react-native": "0.0.0-feat-swaps-20241203153101",
42
42
  "valtio": "1.11.2"
43
43
  },
44
44
  "peerDependencies": {
@@ -17,6 +17,7 @@ import { OptionsController } from './OptionsController';
17
17
  import { ConnectorController } from './ConnectorController';
18
18
  import { ConnectionController } from './ConnectionController';
19
19
  import { ApiUtil } from '../utils/ApiUtil';
20
+ import { SnackController } from './SnackController';
20
21
 
21
22
  // -- Helpers ------------------------------------------- //
22
23
  const baseUrl = CoreHelperUtil.getApiUrl();
@@ -27,6 +28,8 @@ const recommendedEntries = '4';
27
28
  // -- Types --------------------------------------------- //
28
29
  export interface ApiControllerState {
29
30
  prefetchPromise?: Promise<unknown>;
31
+ prefetchError?: boolean;
32
+ prefetchLoading?: boolean;
30
33
  page: number;
31
34
  count: number;
32
35
  featured: WcWallet[];
@@ -69,7 +72,7 @@ export const ApiController = {
69
72
  'x-sdk-type': sdkType,
70
73
  'x-sdk-version': sdkVersion,
71
74
  'User-Agent': ApiUtil.getUserAgent(),
72
- 'Origin': ApiUtil.getOrigin()
75
+ 'origin': ApiUtil.getOrigin()
73
76
  };
74
77
  },
75
78
 
@@ -326,23 +329,35 @@ export const ApiController = {
326
329
  },
327
330
 
328
331
  async prefetch() {
329
- // this fetch must resolve first so we filter them in the other wallet requests
330
- await ApiController.fetchInstalledWallets();
331
-
332
- const promises = [
333
- ApiController.fetchFeaturedWallets(),
334
- ApiController.fetchRecommendedWallets(),
335
- ApiController.fetchNetworkImages(),
336
- ApiController.fetchConnectorImages()
337
- ];
338
- if (OptionsController.state.enableAnalytics === undefined) {
339
- promises.push(ApiController.fetchAnalyticsConfig());
340
- }
332
+ try {
333
+ state.prefetchError = false;
334
+ state.prefetchLoading = true;
335
+ // this fetch must resolve first so we filter them in the other wallet requests
336
+ await ApiController.fetchInstalledWallets();
337
+
338
+ const promises = [
339
+ ApiController.fetchFeaturedWallets(),
340
+ ApiController.fetchRecommendedWallets(),
341
+ ApiController.fetchNetworkImages(),
342
+ ApiController.fetchConnectorImages()
343
+ ];
344
+ if (OptionsController.state.enableAnalytics === undefined) {
345
+ promises.push(ApiController.fetchAnalyticsConfig());
346
+ }
341
347
 
342
- state.prefetchPromise = Promise.race([
343
- CoreHelperUtil.allSettled(promises),
344
- CoreHelperUtil.wait(3000)
345
- ]);
348
+ state.prefetchPromise = Promise.race([
349
+ CoreHelperUtil.allSettled(promises),
350
+ CoreHelperUtil.wait(3000)
351
+ ]);
352
+
353
+ state.prefetchPromise.then(() => {
354
+ state.prefetchLoading = false;
355
+ });
356
+ } catch (error) {
357
+ state.prefetchError = true;
358
+ state.prefetchLoading = false;
359
+ SnackController.showError('Failed to load wallets');
360
+ }
346
361
  },
347
362
 
348
363
  async fetchAnalyticsConfig() {
@@ -6,15 +6,26 @@ import type {
6
6
  BlockchainApiBalanceResponse,
7
7
  BlockchainApiGasPriceRequest,
8
8
  BlockchainApiGasPriceResponse,
9
+ BlockchainApiGenerateApproveCalldataRequest,
10
+ BlockchainApiGenerateApproveCalldataResponse,
11
+ BlockchainApiGenerateSwapCalldataRequest,
12
+ BlockchainApiGenerateSwapCalldataResponse,
9
13
  BlockchainApiIdentityRequest,
10
14
  BlockchainApiIdentityResponse,
11
15
  BlockchainApiLookupEnsName,
16
+ BlockchainApiSwapAllowanceRequest,
17
+ BlockchainApiSwapAllowanceResponse,
18
+ BlockchainApiSwapQuoteRequest,
19
+ BlockchainApiSwapQuoteResponse,
20
+ BlockchainApiSwapTokensRequest,
21
+ BlockchainApiSwapTokensResponse,
12
22
  BlockchainApiTokenPriceRequest,
13
23
  BlockchainApiTokenPriceResponse,
14
24
  BlockchainApiTransactionsRequest,
15
25
  BlockchainApiTransactionsResponse
16
26
  } from '../utils/TypeUtil';
17
27
  import { OptionsController } from './OptionsController';
28
+ import { ConstantsUtil } from '../utils/ConstantsUtil';
18
29
 
19
30
  // -- Helpers ------------------------------------------- //
20
31
  const baseUrl = CoreHelperUtil.getBlockchainApiUrl();
@@ -36,10 +47,17 @@ export const BlockchainApiController = {
36
47
  state,
37
48
 
38
49
  fetchIdentity({ address }: BlockchainApiIdentityRequest) {
50
+ const { sdkType, sdkVersion } = OptionsController.state;
51
+
39
52
  return state.api.get<BlockchainApiIdentityResponse>({
40
53
  path: `/v1/identity/${address}`,
41
54
  params: {
42
55
  projectId: OptionsController.state.projectId
56
+ },
57
+ headers: {
58
+ 'Content-Type': 'application/json',
59
+ 'x-sdk-type': sdkType,
60
+ 'x-sdk-version': sdkVersion
43
61
  }
44
62
  });
45
63
  },
@@ -52,8 +70,15 @@ export const BlockchainApiController = {
52
70
  signal,
53
71
  cache
54
72
  }: BlockchainApiTransactionsRequest) {
73
+ const { sdkType, sdkVersion } = OptionsController.state;
74
+
55
75
  return state.api.get<BlockchainApiTransactionsResponse>({
56
76
  path: `/v1/account/${account}/history`,
77
+ headers: {
78
+ 'Content-Type': 'application/json',
79
+ 'x-sdk-type': sdkType,
80
+ 'x-sdk-version': sdkVersion
81
+ },
57
82
  params: {
58
83
  projectId,
59
84
  cursor,
@@ -65,6 +90,8 @@ export const BlockchainApiController = {
65
90
  },
66
91
 
67
92
  fetchTokenPrice({ projectId, addresses }: BlockchainApiTokenPriceRequest) {
93
+ const { sdkType, sdkVersion } = OptionsController.state;
94
+
68
95
  return state.api.post<BlockchainApiTokenPriceResponse>({
69
96
  path: '/v1/fungible/price',
70
97
  body: {
@@ -73,7 +100,27 @@ export const BlockchainApiController = {
73
100
  addresses
74
101
  },
75
102
  headers: {
76
- 'Content-Type': 'application/json'
103
+ 'Content-Type': 'application/json',
104
+ 'x-sdk-type': sdkType,
105
+ 'x-sdk-version': sdkVersion
106
+ }
107
+ });
108
+ },
109
+
110
+ fetchSwapAllowance({ projectId, tokenAddress, userAddress }: BlockchainApiSwapAllowanceRequest) {
111
+ const { sdkType, sdkVersion } = OptionsController.state;
112
+
113
+ return state.api.get<BlockchainApiSwapAllowanceResponse>({
114
+ path: `/v1/convert/allowance`,
115
+ params: {
116
+ projectId,
117
+ tokenAddress,
118
+ userAddress
119
+ },
120
+ headers: {
121
+ 'Content-Type': 'application/json',
122
+ 'x-sdk-type': sdkType,
123
+ 'x-sdk-version': sdkVersion
77
124
  }
78
125
  });
79
126
  },
@@ -95,6 +142,104 @@ export const BlockchainApiController = {
95
142
  });
96
143
  },
97
144
 
145
+ fetchSwapQuote({
146
+ projectId,
147
+ amount,
148
+ userAddress,
149
+ from,
150
+ to,
151
+ gasPrice
152
+ }: BlockchainApiSwapQuoteRequest) {
153
+ const { sdkType, sdkVersion } = OptionsController.state;
154
+
155
+ return state.api.get<BlockchainApiSwapQuoteResponse>({
156
+ path: `/v1/convert/quotes`,
157
+ headers: {
158
+ 'Content-Type': 'application/json',
159
+ 'x-sdk-type': sdkType,
160
+ 'x-sdk-version': sdkVersion
161
+ },
162
+ params: {
163
+ projectId,
164
+ amount,
165
+ userAddress,
166
+ from,
167
+ to,
168
+ gasPrice
169
+ }
170
+ });
171
+ },
172
+
173
+ fetchSwapTokens({ projectId, chainId }: BlockchainApiSwapTokensRequest) {
174
+ const { sdkType, sdkVersion } = OptionsController.state;
175
+
176
+ return state.api.get<BlockchainApiSwapTokensResponse>({
177
+ path: `/v1/convert/tokens`,
178
+ headers: {
179
+ 'Content-Type': 'application/json',
180
+ 'x-sdk-type': sdkType,
181
+ 'x-sdk-version': sdkVersion
182
+ },
183
+ params: {
184
+ projectId,
185
+ chainId
186
+ }
187
+ });
188
+ },
189
+
190
+ generateSwapCalldata({
191
+ amount,
192
+ from,
193
+ projectId,
194
+ to,
195
+ userAddress
196
+ }: BlockchainApiGenerateSwapCalldataRequest) {
197
+ const { sdkType, sdkVersion } = OptionsController.state;
198
+
199
+ return state.api.post<BlockchainApiGenerateSwapCalldataResponse>({
200
+ path: '/v1/convert/build-transaction',
201
+ headers: {
202
+ 'Content-Type': 'application/json',
203
+ 'x-sdk-type': sdkType,
204
+ 'x-sdk-version': sdkVersion
205
+ },
206
+ body: {
207
+ amount,
208
+ eip155: {
209
+ slippage: ConstantsUtil.CONVERT_SLIPPAGE_TOLERANCE
210
+ },
211
+ from,
212
+ projectId,
213
+ to,
214
+ userAddress
215
+ }
216
+ });
217
+ },
218
+
219
+ generateApproveCalldata({
220
+ from,
221
+ projectId,
222
+ to,
223
+ userAddress
224
+ }: BlockchainApiGenerateApproveCalldataRequest) {
225
+ const { sdkType, sdkVersion } = OptionsController.state;
226
+
227
+ return state.api.get<BlockchainApiGenerateApproveCalldataResponse>({
228
+ path: `/v1/convert/build-approve`,
229
+ headers: {
230
+ 'Content-Type': 'application/json',
231
+ 'x-sdk-type': sdkType,
232
+ 'x-sdk-version': sdkVersion
233
+ },
234
+ params: {
235
+ projectId,
236
+ userAddress,
237
+ from,
238
+ to
239
+ }
240
+ });
241
+ },
242
+
98
243
  async getBalance(address: string, chainId?: string, forceUpdate?: string) {
99
244
  const { sdkType, sdkVersion } = OptionsController.state;
100
245
 
@@ -114,8 +259,15 @@ export const BlockchainApiController = {
114
259
  },
115
260
 
116
261
  async lookupEnsName(name: string) {
262
+ const { sdkType, sdkVersion } = OptionsController.state;
263
+
117
264
  return state.api.get<BlockchainApiLookupEnsName>({
118
265
  path: `/v1/profile/account/${name}`,
266
+ headers: {
267
+ 'Content-Type': 'application/json',
268
+ 'x-sdk-type': sdkType,
269
+ 'x-sdk-version': sdkVersion
270
+ },
119
271
  params: {
120
272
  projectId: OptionsController.state.projectId,
121
273
  apiVersion: '2'
@@ -5,11 +5,11 @@ import { CoreHelperUtil } from '../utils/CoreHelperUtil';
5
5
  import { StorageUtil } from '../utils/StorageUtil';
6
6
  import type {
7
7
  Connector,
8
+ EstimateGasTransactionArgs,
8
9
  SendTransactionArgs,
9
10
  WcWallet,
10
11
  WriteContractArgs
11
12
  } from '../utils/TypeUtil';
12
- import { RouterController } from './RouterController';
13
13
  import { ConnectorController } from './ConnectorController';
14
14
 
15
15
  // -- Types --------------------------------------------- //
@@ -31,6 +31,7 @@ export interface ConnectionControllerClient {
31
31
  parseUnits: (value: string, decimals: number) => bigint;
32
32
  formatUnits: (value: bigint, decimals: number) => string;
33
33
  writeContract: (args: WriteContractArgs) => Promise<`0x${string}` | null>;
34
+ estimateGas: (args: EstimateGasTransactionArgs) => Promise<bigint>;
34
35
  disconnect: () => Promise<void>;
35
36
  getEnsAddress: (value: string) => Promise<false | string>;
36
37
  getEnsAvatar: (value: string) => Promise<false | string>;
@@ -86,15 +87,12 @@ export const ConnectionController = {
86
87
  state.wcPromise = this._getClient().connectWalletConnect(uri => {
87
88
  state.wcUri = uri;
88
89
  state.wcPairingExpiry = CoreHelperUtil.getPairingExpiry();
89
- ConnectorController.setConnectedConnector('WALLET_CONNECT');
90
- StorageUtil.setConnectedConnector('WALLET_CONNECT');
91
90
  }, walletUniversalLink);
92
91
  },
93
92
 
94
93
  async connectExternal(options: ConnectExternalOptions) {
95
94
  await this._getClient().connectExternal?.(options);
96
95
  ConnectorController.setConnectedConnector(options.type);
97
- StorageUtil.setConnectedConnector(options.type);
98
96
  },
99
97
 
100
98
  async signMessage(message: string) {
@@ -157,6 +155,9 @@ export const ConnectionController = {
157
155
  return this._getClient().sendTransaction(args);
158
156
  },
159
157
 
158
+ async estimateGas(args: EstimateGasTransactionArgs) {
159
+ return this._getClient()?.estimateGas(args);
160
+ },
160
161
  async writeContract(args: WriteContractArgs) {
161
162
  return this._getClient().writeContract(args);
162
163
  },
@@ -179,19 +180,16 @@ export const ConnectionController = {
179
180
  resetWcConnection() {
180
181
  this.clearUri();
181
182
  state.pressedWallet = undefined;
182
- state.connectedWalletImageUrl = undefined;
183
- state.connectedSocialProvider = undefined;
183
+ ConnectionController.setConnectedSocialProvider(undefined);
184
+ ConnectionController.setConnectedWalletImageUrl(undefined);
184
185
  ConnectorController.setConnectedConnector(undefined);
185
186
  StorageUtil.removeWalletConnectDeepLink();
186
- StorageUtil.removeConnectedWalletImageUrl();
187
- StorageUtil.removeConnectedConnector();
188
- StorageUtil.removeConnectedSocialProvider();
189
187
  },
190
188
 
191
189
  async disconnect() {
192
190
  await this._getClient().disconnect();
193
191
  this.resetWcConnection();
194
192
  // remove transactions
195
- RouterController.reset('Connect');
193
+ // RouterController.reset('Connect');
196
194
  }
197
195
  };