@reown/appkit-core-react-native 0.0.0-accounts-canary.1-20251023174733

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 (234) hide show
  1. package/lib/commonjs/controllers/ApiController.js +410 -0
  2. package/lib/commonjs/controllers/ApiController.js.map +1 -0
  3. package/lib/commonjs/controllers/AssetController.js +30 -0
  4. package/lib/commonjs/controllers/AssetController.js.map +1 -0
  5. package/lib/commonjs/controllers/BlockchainApiController.js +384 -0
  6. package/lib/commonjs/controllers/BlockchainApiController.js.map +1 -0
  7. package/lib/commonjs/controllers/ConnectionsController.js +425 -0
  8. package/lib/commonjs/controllers/ConnectionsController.js.map +1 -0
  9. package/lib/commonjs/controllers/EnsController.js +37 -0
  10. package/lib/commonjs/controllers/EnsController.js.map +1 -0
  11. package/lib/commonjs/controllers/EventsController.js +122 -0
  12. package/lib/commonjs/controllers/EventsController.js.map +1 -0
  13. package/lib/commonjs/controllers/LogController.js +188 -0
  14. package/lib/commonjs/controllers/LogController.js.map +1 -0
  15. package/lib/commonjs/controllers/ModalController.js +68 -0
  16. package/lib/commonjs/controllers/ModalController.js.map +1 -0
  17. package/lib/commonjs/controllers/OnRampController.js +502 -0
  18. package/lib/commonjs/controllers/OnRampController.js.map +1 -0
  19. package/lib/commonjs/controllers/OptionsController.js +96 -0
  20. package/lib/commonjs/controllers/OptionsController.js.map +1 -0
  21. package/lib/commonjs/controllers/PublicStateController.js +33 -0
  22. package/lib/commonjs/controllers/PublicStateController.js.map +1 -0
  23. package/lib/commonjs/controllers/RouterController.js +63 -0
  24. package/lib/commonjs/controllers/RouterController.js.map +1 -0
  25. package/lib/commonjs/controllers/SendController.js +192 -0
  26. package/lib/commonjs/controllers/SendController.js.map +1 -0
  27. package/lib/commonjs/controllers/SnackController.js +83 -0
  28. package/lib/commonjs/controllers/SnackController.js.map +1 -0
  29. package/lib/commonjs/controllers/SwapController.js +674 -0
  30. package/lib/commonjs/controllers/SwapController.js.map +1 -0
  31. package/lib/commonjs/controllers/ThemeController.js +45 -0
  32. package/lib/commonjs/controllers/ThemeController.js.map +1 -0
  33. package/lib/commonjs/controllers/TransactionsController.js +118 -0
  34. package/lib/commonjs/controllers/TransactionsController.js.map +1 -0
  35. package/lib/commonjs/controllers/WcController.js +73 -0
  36. package/lib/commonjs/controllers/WcController.js.map +1 -0
  37. package/lib/commonjs/features/reown-authentication/ReownAuthentication.js +272 -0
  38. package/lib/commonjs/features/reown-authentication/ReownAuthentication.js.map +1 -0
  39. package/lib/commonjs/features/reown-authentication/ReownAuthenticationMessenger.js +48 -0
  40. package/lib/commonjs/features/reown-authentication/ReownAuthenticationMessenger.js.map +1 -0
  41. package/lib/commonjs/features/reown-authentication/index.js +28 -0
  42. package/lib/commonjs/features/reown-authentication/index.js.map +1 -0
  43. package/lib/commonjs/index.js +202 -0
  44. package/lib/commonjs/index.js.map +1 -0
  45. package/lib/commonjs/package.json +1 -0
  46. package/lib/commonjs/utils/ApiUtil.js +43 -0
  47. package/lib/commonjs/utils/ApiUtil.js.map +1 -0
  48. package/lib/commonjs/utils/AssetUtil.js +27 -0
  49. package/lib/commonjs/utils/AssetUtil.js.map +1 -0
  50. package/lib/commonjs/utils/ConstantsUtil.js +226 -0
  51. package/lib/commonjs/utils/ConstantsUtil.js.map +1 -0
  52. package/lib/commonjs/utils/CoreHelperUtil.js +298 -0
  53. package/lib/commonjs/utils/CoreHelperUtil.js.map +1 -0
  54. package/lib/commonjs/utils/EventUtil.js +25 -0
  55. package/lib/commonjs/utils/EventUtil.js.map +1 -0
  56. package/lib/commonjs/utils/FetchUtil.js +158 -0
  57. package/lib/commonjs/utils/FetchUtil.js.map +1 -0
  58. package/lib/commonjs/utils/LogUtils.js +131 -0
  59. package/lib/commonjs/utils/LogUtils.js.map +1 -0
  60. package/lib/commonjs/utils/StorageUtil.js +319 -0
  61. package/lib/commonjs/utils/StorageUtil.js.map +1 -0
  62. package/lib/commonjs/utils/SwapApiUtil.js +75 -0
  63. package/lib/commonjs/utils/SwapApiUtil.js.map +1 -0
  64. package/lib/commonjs/utils/SwapCalculationUtil.js +97 -0
  65. package/lib/commonjs/utils/SwapCalculationUtil.js.map +1 -0
  66. package/lib/commonjs/utils/WalletUtil.js +23 -0
  67. package/lib/commonjs/utils/WalletUtil.js.map +1 -0
  68. package/lib/module/controllers/ApiController.js +407 -0
  69. package/lib/module/controllers/ApiController.js.map +1 -0
  70. package/lib/module/controllers/AssetController.js +27 -0
  71. package/lib/module/controllers/AssetController.js.map +1 -0
  72. package/lib/module/controllers/BlockchainApiController.js +381 -0
  73. package/lib/module/controllers/BlockchainApiController.js.map +1 -0
  74. package/lib/module/controllers/ConnectionsController.js +422 -0
  75. package/lib/module/controllers/ConnectionsController.js.map +1 -0
  76. package/lib/module/controllers/EnsController.js +34 -0
  77. package/lib/module/controllers/EnsController.js.map +1 -0
  78. package/lib/module/controllers/EventsController.js +118 -0
  79. package/lib/module/controllers/EventsController.js.map +1 -0
  80. package/lib/module/controllers/LogController.js +185 -0
  81. package/lib/module/controllers/LogController.js.map +1 -0
  82. package/lib/module/controllers/ModalController.js +65 -0
  83. package/lib/module/controllers/ModalController.js.map +1 -0
  84. package/lib/module/controllers/OnRampController.js +499 -0
  85. package/lib/module/controllers/OnRampController.js.map +1 -0
  86. package/lib/module/controllers/OptionsController.js +93 -0
  87. package/lib/module/controllers/OptionsController.js.map +1 -0
  88. package/lib/module/controllers/PublicStateController.js +30 -0
  89. package/lib/module/controllers/PublicStateController.js.map +1 -0
  90. package/lib/module/controllers/RouterController.js +60 -0
  91. package/lib/module/controllers/RouterController.js.map +1 -0
  92. package/lib/module/controllers/SendController.js +189 -0
  93. package/lib/module/controllers/SendController.js.map +1 -0
  94. package/lib/module/controllers/SnackController.js +80 -0
  95. package/lib/module/controllers/SnackController.js.map +1 -0
  96. package/lib/module/controllers/SwapController.js +671 -0
  97. package/lib/module/controllers/SwapController.js.map +1 -0
  98. package/lib/module/controllers/ThemeController.js +42 -0
  99. package/lib/module/controllers/ThemeController.js.map +1 -0
  100. package/lib/module/controllers/TransactionsController.js +115 -0
  101. package/lib/module/controllers/TransactionsController.js.map +1 -0
  102. package/lib/module/controllers/WcController.js +70 -0
  103. package/lib/module/controllers/WcController.js.map +1 -0
  104. package/lib/module/features/reown-authentication/ReownAuthentication.js +268 -0
  105. package/lib/module/features/reown-authentication/ReownAuthentication.js.map +1 -0
  106. package/lib/module/features/reown-authentication/ReownAuthenticationMessenger.js +43 -0
  107. package/lib/module/features/reown-authentication/ReownAuthenticationMessenger.js.map +1 -0
  108. package/lib/module/features/reown-authentication/index.js +5 -0
  109. package/lib/module/features/reown-authentication/index.js.map +1 -0
  110. package/lib/module/index.js +38 -0
  111. package/lib/module/index.js.map +1 -0
  112. package/lib/module/utils/ApiUtil.js +39 -0
  113. package/lib/module/utils/ApiUtil.js.map +1 -0
  114. package/lib/module/utils/AssetUtil.js +23 -0
  115. package/lib/module/utils/AssetUtil.js.map +1 -0
  116. package/lib/module/utils/ConstantsUtil.js +222 -0
  117. package/lib/module/utils/ConstantsUtil.js.map +1 -0
  118. package/lib/module/utils/CoreHelperUtil.js +294 -0
  119. package/lib/module/utils/CoreHelperUtil.js.map +1 -0
  120. package/lib/module/utils/EventUtil.js +21 -0
  121. package/lib/module/utils/EventUtil.js.map +1 -0
  122. package/lib/module/utils/FetchUtil.js +154 -0
  123. package/lib/module/utils/FetchUtil.js.map +1 -0
  124. package/lib/module/utils/LogUtils.js +121 -0
  125. package/lib/module/utils/LogUtils.js.map +1 -0
  126. package/lib/module/utils/StorageUtil.js +315 -0
  127. package/lib/module/utils/StorageUtil.js.map +1 -0
  128. package/lib/module/utils/SwapApiUtil.js +71 -0
  129. package/lib/module/utils/SwapApiUtil.js.map +1 -0
  130. package/lib/module/utils/SwapCalculationUtil.js +94 -0
  131. package/lib/module/utils/SwapCalculationUtil.js.map +1 -0
  132. package/lib/module/utils/WalletUtil.js +19 -0
  133. package/lib/module/utils/WalletUtil.js.map +1 -0
  134. package/lib/typescript/controllers/ApiController.d.ts +40 -0
  135. package/lib/typescript/controllers/ApiController.d.ts.map +1 -0
  136. package/lib/typescript/controllers/AssetController.d.ts +12 -0
  137. package/lib/typescript/controllers/AssetController.d.ts.map +1 -0
  138. package/lib/typescript/controllers/BlockchainApiController.d.ts +55 -0
  139. package/lib/typescript/controllers/BlockchainApiController.d.ts.map +1 -0
  140. package/lib/typescript/controllers/ConnectionsController.d.ts +47 -0
  141. package/lib/typescript/controllers/ConnectionsController.d.ts.map +1 -0
  142. package/lib/typescript/controllers/EnsController.d.ts +10 -0
  143. package/lib/typescript/controllers/EnsController.d.ts.map +1 -0
  144. package/lib/typescript/controllers/EventsController.d.ts +25 -0
  145. package/lib/typescript/controllers/EventsController.d.ts.map +1 -0
  146. package/lib/typescript/controllers/LogController.d.ts +65 -0
  147. package/lib/typescript/controllers/LogController.d.ts.map +1 -0
  148. package/lib/typescript/controllers/ModalController.d.ts +17 -0
  149. package/lib/typescript/controllers/ModalController.d.ts.map +1 -0
  150. package/lib/typescript/controllers/OnRampController.d.ts +55 -0
  151. package/lib/typescript/controllers/OnRampController.d.ts.map +1 -0
  152. package/lib/typescript/controllers/OptionsController.d.ts +46 -0
  153. package/lib/typescript/controllers/OptionsController.d.ts.map +1 -0
  154. package/lib/typescript/controllers/PublicStateController.d.ts +12 -0
  155. package/lib/typescript/controllers/PublicStateController.d.ts.map +1 -0
  156. package/lib/typescript/controllers/RouterController.d.ts +21 -0
  157. package/lib/typescript/controllers/RouterController.d.ts.map +1 -0
  158. package/lib/typescript/controllers/SendController.d.ts +39 -0
  159. package/lib/typescript/controllers/SendController.d.ts.map +1 -0
  160. package/lib/typescript/controllers/SnackController.d.ts +20 -0
  161. package/lib/typescript/controllers/SnackController.d.ts.map +1 -0
  162. package/lib/typescript/controllers/SwapController.d.ts +116 -0
  163. package/lib/typescript/controllers/SwapController.d.ts.map +1 -0
  164. package/lib/typescript/controllers/ThemeController.d.ts +14 -0
  165. package/lib/typescript/controllers/ThemeController.d.ts.map +1 -0
  166. package/lib/typescript/controllers/TransactionsController.d.ts +21 -0
  167. package/lib/typescript/controllers/TransactionsController.d.ts.map +1 -0
  168. package/lib/typescript/controllers/WcController.d.ts +27 -0
  169. package/lib/typescript/controllers/WcController.d.ts.map +1 -0
  170. package/lib/typescript/features/reown-authentication/ReownAuthentication.d.ts +174 -0
  171. package/lib/typescript/features/reown-authentication/ReownAuthentication.d.ts.map +1 -0
  172. package/lib/typescript/features/reown-authentication/ReownAuthenticationMessenger.d.ts +16 -0
  173. package/lib/typescript/features/reown-authentication/ReownAuthenticationMessenger.d.ts.map +1 -0
  174. package/lib/typescript/features/reown-authentication/index.d.ts +3 -0
  175. package/lib/typescript/features/reown-authentication/index.d.ts.map +1 -0
  176. package/lib/typescript/index.d.ts +29 -0
  177. package/lib/typescript/index.d.ts.map +1 -0
  178. package/lib/typescript/utils/ApiUtil.d.ts +7 -0
  179. package/lib/typescript/utils/ApiUtil.d.ts.map +1 -0
  180. package/lib/typescript/utils/AssetUtil.d.ts +6 -0
  181. package/lib/typescript/utils/AssetUtil.d.ts.map +1 -0
  182. package/lib/typescript/utils/ConstantsUtil.d.ts +79 -0
  183. package/lib/typescript/utils/ConstantsUtil.d.ts.map +1 -0
  184. package/lib/typescript/utils/CoreHelperUtil.d.ts +43 -0
  185. package/lib/typescript/utils/CoreHelperUtil.d.ts.map +1 -0
  186. package/lib/typescript/utils/EventUtil.d.ts +5 -0
  187. package/lib/typescript/utils/EventUtil.d.ts.map +1 -0
  188. package/lib/typescript/utils/FetchUtil.d.ts +29 -0
  189. package/lib/typescript/utils/FetchUtil.d.ts.map +1 -0
  190. package/lib/typescript/utils/LogUtils.d.ts +15 -0
  191. package/lib/typescript/utils/LogUtils.d.ts.map +1 -0
  192. package/lib/typescript/utils/StorageUtil.d.ts +36 -0
  193. package/lib/typescript/utils/StorageUtil.d.ts.map +1 -0
  194. package/lib/typescript/utils/SwapApiUtil.d.ts +11 -0
  195. package/lib/typescript/utils/SwapApiUtil.d.ts.map +1 -0
  196. package/lib/typescript/utils/SwapCalculationUtil.d.ts +24 -0
  197. package/lib/typescript/utils/SwapCalculationUtil.d.ts.map +1 -0
  198. package/lib/typescript/utils/WalletUtil.d.ts +5 -0
  199. package/lib/typescript/utils/WalletUtil.d.ts.map +1 -0
  200. package/package.json +57 -0
  201. package/readme.md +9 -0
  202. package/src/controllers/ApiController.ts +454 -0
  203. package/src/controllers/AssetController.ts +32 -0
  204. package/src/controllers/BlockchainApiController.ts +418 -0
  205. package/src/controllers/ConnectionsController.ts +575 -0
  206. package/src/controllers/EnsController.ts +41 -0
  207. package/src/controllers/EventsController.ts +146 -0
  208. package/src/controllers/LogController.ts +250 -0
  209. package/src/controllers/ModalController.ts +68 -0
  210. package/src/controllers/OnRampController.ts +698 -0
  211. package/src/controllers/OptionsController.ts +143 -0
  212. package/src/controllers/PublicStateController.ts +37 -0
  213. package/src/controllers/RouterController.ts +112 -0
  214. package/src/controllers/SendController.ts +270 -0
  215. package/src/controllers/SnackController.ts +95 -0
  216. package/src/controllers/SwapController.ts +863 -0
  217. package/src/controllers/ThemeController.ts +47 -0
  218. package/src/controllers/TransactionsController.ts +150 -0
  219. package/src/controllers/WcController.ts +93 -0
  220. package/src/features/reown-authentication/ReownAuthentication.ts +475 -0
  221. package/src/features/reown-authentication/ReownAuthenticationMessenger.ts +80 -0
  222. package/src/features/reown-authentication/index.ts +2 -0
  223. package/src/index.ts +70 -0
  224. package/src/utils/ApiUtil.ts +50 -0
  225. package/src/utils/AssetUtil.ts +27 -0
  226. package/src/utils/ConstantsUtil.ts +303 -0
  227. package/src/utils/CoreHelperUtil.ts +377 -0
  228. package/src/utils/EventUtil.ts +22 -0
  229. package/src/utils/FetchUtil.ts +164 -0
  230. package/src/utils/LogUtils.ts +179 -0
  231. package/src/utils/StorageUtil.ts +405 -0
  232. package/src/utils/SwapApiUtil.ts +101 -0
  233. package/src/utils/SwapCalculationUtil.ts +145 -0
  234. package/src/utils/WalletUtil.ts +14 -0
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_utils","require","_valtio","_appkitCommonReactNative","_ConstantsUtil","_SwapApiUtil","_BlockchainApiController","_OptionsController","_SwapCalculationUtil","_SnackController","_LogController","_RouterController","_CoreHelperUtil","_TransactionsController","_EventsController","_ConnectionsController","INITIAL_GAS_LIMIT","exports","TO_AMOUNT_DECIMALS","TransactionError","Error","constructor","message","shortMessage","name","initialState","loadingTokens","loadingPrices","loadingQuote","loadingApprovalTransaction","loadingBuildTransaction","loadingTransaction","fetchError","approvalTransaction","undefined","swapTransaction","transactionError","sourceToken","sourceTokenAmount","sourceTokenPriceInUSD","toToken","toTokenAmount","toTokenPriceInUSD","networkPrice","networkTokenSymbol","inputError","slippage","ConstantsUtil","CONVERT_SLIPPAGE_TOLERANCE","tokens","popularTokens","suggestedTokens","foundTokens","myTokensWithBalance","tokensPriceMap","gasFee","gasPriceInUSD","priceImpact","maxSlippage","providerFee","state","proxy","SwapController","subscribe","callback","sub","subscribeKey","key","subKey","getParams","activeAddress","activeNamespace","activeNetwork","connection","ConnectionsController","address","CoreHelperUtil","getPlainAddress","networkAddress","caipNetworkId","NATIVE_TOKEN_ADDRESS","invalidToToken","decimals","invalidSourceToken","NumberUtil","bigNumber","isGreaterThan","invalidSourceTokenAmount","network","fromAddress","fromCaipAddress","sourceTokenAddress","toTokenAddress","toTokenDecimals","sourceTokenDecimals","availableToSwap","isAuthConnector","properties","provider","switchTokens","newSourceToken","sourceTokenWithBalance","find","token","newToToken","newSourceTokenAmount","setSourceToken","setToToken","setSourceTokenAmount","setToTokenAmount","swapTokens","fetchTokens","getTokenList","getNetworkTokenPrice","getMyTokensWithBalance","networkToken","symbol","length","startsWith","error","LogController","sendError","SnackController","showError","RouterController","goBack","SwapApiUtil","sort","aTokenInfo","bTokenInfo","filter","SWAP_SUGGESTED_TOKENS","includes","forceUpdate","fetchBalance","swapBalances","mapBalancesToSwapTokens","balances","getInitialGasPrice","setBalances","getFilteredPopularTokens","some","t","setTokenPrice","amount","getAddressPrice","namespace","chain","split","networkId","existPrice","response","BlockchainApiController","fetchTokenPrice","projectId","OptionsController","addresses","fungibles","allTokens","price","p","toLowerCase","priceAsFloat","parseFloat","toString","res","fetchGasPrice","gasPrice","gasPriceInUsd","value","standard","BigInt","gasLimit","SwapCalculationUtil","getGasPriceInUSD","getProviderFeePrice","forEach","formatNumberToLocalString","target","haveSourceTokenAmount","amountDecimal","multipliedBy","integerValue","quoteResponse","fetchSwapQuote","userAddress","from","to","quoteToAmount","quotes","toAmount","dividedBy","isInsufficientToken","hasInsufficientToken","setTransactionDetails","getTransaction","hasAllowance","fetchSwapAllowance","tokenAddress","transaction","createSwapTransaction","createAllowanceTransaction","generateApproveCalldata","estimateGas","tx","data","gas","eip155","parseUnits","generateSwapCalldata","isSourceNetworkToken","sendTransactionForApproval","showLoading","sendTransaction","chainNamespace","err","sendTransactionForSwap","snackbarSuccessMessage","forceUpdateAddresses","Boolean","transactionHash","showSuccess","EventsController","sendEvent","type","event","swapFromToken","swapToToken","swapFromAmount","swapToAmount","isSmartAccount","accountType","replace","clearTokens","setTimeout","TransactionsController","fetchTransactions","clearTransactionLoaders","resetState","networkBalanceInUSD","multiply","quantity","numeric","isInsufficientSourceTokenForSwap","insufficientNetworkTokenForGas","isInsufficientNetworkTokenForGas","getPriceImpact","getMaxSlippage","getProviderFee"],"sourceRoot":"../../../src","sources":["controllers/SwapController.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.ThemeController = void 0;
7
+ var _reactNative = require("react-native");
8
+ var _valtio = require("valtio");
9
+ // -- Types --------------------------------------------- //
10
+
11
+ // -- State --------------------------------------------- //
12
+ const state = (0, _valtio.proxy)({
13
+ themeMode: undefined,
14
+ defaultThemeMode: undefined,
15
+ themeVariables: {}
16
+ });
17
+
18
+ // -- Controller ---------------------------------------- //
19
+ const ThemeController = exports.ThemeController = {
20
+ state,
21
+ subscribe(callback) {
22
+ return (0, _valtio.subscribe)(state, () => callback(state));
23
+ },
24
+ setThemeMode(themeMode) {
25
+ if (!themeMode) {
26
+ state.themeMode = _reactNative.Appearance.getColorScheme();
27
+ } else {
28
+ state.themeMode = themeMode;
29
+ }
30
+ },
31
+ setDefaultThemeMode(themeMode) {
32
+ state.defaultThemeMode = themeMode;
33
+ this.setThemeMode(themeMode);
34
+ },
35
+ setThemeVariables(themeVariables) {
36
+ if (!themeVariables) {
37
+ state.themeVariables = {};
38
+ }
39
+ state.themeVariables = {
40
+ ...state.themeVariables,
41
+ ...themeVariables
42
+ };
43
+ }
44
+ };
45
+ //# sourceMappingURL=ThemeController.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_reactNative","require","_valtio","state","proxy","themeMode","undefined","defaultThemeMode","themeVariables","ThemeController","exports","subscribe","callback","sub","setThemeMode","Appearance","getColorScheme","setDefaultThemeMode","setThemeVariables"],"sourceRoot":"../../../src","sources":["controllers/ThemeController.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AAGA;;AAOA;AACA,MAAME,KAAK,GAAG,IAAAC,aAAK,EAAuB;EACxCC,SAAS,EAAEC,SAAS;EACpBC,gBAAgB,EAAED,SAAS;EAC3BE,cAAc,EAAE,CAAC;AACnB,CAAC,CAAC;;AAEF;AACO,MAAMC,eAAe,GAAAC,OAAA,CAAAD,eAAA,GAAG;EAC7BN,KAAK;EAELQ,SAASA,CAACC,QAAkD,EAAE;IAC5D,OAAO,IAAAC,iBAAG,EAACV,KAAK,EAAE,MAAMS,QAAQ,CAACT,KAAK,CAAC,CAAC;EAC1C,CAAC;EAEDW,YAAYA,CAACT,SAA4C,EAAE;IACzD,IAAI,CAACA,SAAS,EAAE;MACdF,KAAK,CAACE,SAAS,GAAGU,uBAAU,CAACC,cAAc,CAAC,CAAc;IAC5D,CAAC,MAAM;MACLb,KAAK,CAACE,SAAS,GAAGA,SAAS;IAC7B;EACF,CAAC;EAEDY,mBAAmBA,CAACZ,SAAmD,EAAE;IACvEF,KAAK,CAACI,gBAAgB,GAAGF,SAAS;IAClC,IAAI,CAACS,YAAY,CAACT,SAAS,CAAC;EAC9B,CAAC;EAEDa,iBAAiBA,CAACV,cAAsD,EAAE;IACxE,IAAI,CAACA,cAAc,EAAE;MACnBL,KAAK,CAACK,cAAc,GAAG,CAAC,CAAC;IAC3B;IAEAL,KAAK,CAACK,cAAc,GAAG;MAAE,GAAGL,KAAK,CAACK,cAAc;MAAE,GAAGA;IAAe,CAAC;EACvE;AACF,CAAC","ignoreList":[]}
@@ -0,0 +1,118 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.TransactionsController = void 0;
7
+ var _valtio = require("valtio");
8
+ var _OptionsController = require("./OptionsController");
9
+ var _EventsController = require("./EventsController");
10
+ var _SnackController = require("./SnackController");
11
+ var _BlockchainApiController = require("./BlockchainApiController");
12
+ var _ConnectionsController = require("./ConnectionsController");
13
+ var _LogController = require("./LogController");
14
+ // -- Types --------------------------------------------- //
15
+
16
+ // -- State --------------------------------------------- //
17
+ const state = (0, _valtio.proxy)({
18
+ transactions: [],
19
+ loading: false,
20
+ empty: false,
21
+ next: undefined
22
+ });
23
+
24
+ // -- Controller ---------------------------------------- //
25
+ const TransactionsController = exports.TransactionsController = {
26
+ state,
27
+ subscribe(callback) {
28
+ return (0, _valtio.subscribe)(state, () => callback(state));
29
+ },
30
+ async fetchTransactions(accountAddress, reset) {
31
+ try {
32
+ const {
33
+ projectId
34
+ } = _OptionsController.OptionsController.state;
35
+ if (!projectId || !accountAddress) {
36
+ throw new Error("Transactions can't be fetched without a projectId and an accountAddress");
37
+ }
38
+ state.loading = true;
39
+ if (reset) {
40
+ state.next = undefined;
41
+ }
42
+ const [namespace, chain, address] = accountAddress?.split(':') ?? [];
43
+ if (!namespace || !chain || !address) {
44
+ throw new Error('Invalid address');
45
+ }
46
+ const response = await _BlockchainApiController.BlockchainApiController.fetchTransactions({
47
+ account: address,
48
+ chainId: `${namespace}:${chain}`,
49
+ projectId,
50
+ cursor: state.next
51
+ });
52
+ const nonSpamTransactions = this.filterSpamTransactions(response?.data ?? []);
53
+ let filteredTransactions = [...state.transactions, ...nonSpamTransactions];
54
+ if (reset) {
55
+ filteredTransactions = nonSpamTransactions;
56
+ }
57
+ state.loading = false;
58
+ state.transactions = filteredTransactions;
59
+ state.empty = nonSpamTransactions.length === 0;
60
+ state.next = response?.next ? response.next : undefined;
61
+ } catch (error) {
62
+ _LogController.LogController.sendError(error, 'TransactionsController.ts', 'fetchTransactions');
63
+ _EventsController.EventsController.sendEvent({
64
+ type: 'track',
65
+ event: 'ERROR_FETCH_TRANSACTIONS',
66
+ properties: {
67
+ address: accountAddress ?? '',
68
+ projectId: _OptionsController.OptionsController.state.projectId,
69
+ cursor: state.next,
70
+ isSmartAccount: _ConnectionsController.ConnectionsController.state.accountType === 'smartAccount'
71
+ }
72
+ });
73
+ _SnackController.SnackController.showError('Failed to fetch transactions');
74
+ state.loading = false;
75
+ state.empty = true;
76
+ state.next = undefined;
77
+ }
78
+ },
79
+ getTransactionsByYearAndMonth(transactions) {
80
+ const grouped = {};
81
+ let filteredTransactions = this.filterByConnectedChain(transactions);
82
+ filteredTransactions.forEach(transaction => {
83
+ const year = new Date(transaction.metadata.minedAt).getFullYear();
84
+ const month = new Date(transaction.metadata.minedAt).getMonth();
85
+ const yearTransactions = grouped[year] ?? {};
86
+ const monthTransactions = yearTransactions[month] ?? [];
87
+
88
+ // If there's a transaction with the same id, remove the old one
89
+ const newMonthTransactions = monthTransactions.filter(tx => tx.id !== transaction.id);
90
+ grouped[year] = {
91
+ ...yearTransactions,
92
+ [month]: [...newMonthTransactions, transaction].sort((a, b) => new Date(b.metadata.minedAt).getTime() - new Date(a.metadata.minedAt).getTime())
93
+ };
94
+ });
95
+ return grouped;
96
+ },
97
+ filterSpamTransactions(transactions) {
98
+ return transactions.filter(transaction => {
99
+ const isAllSpam = transaction.transfers.every(transfer => transfer.nft_info?.flags.is_spam === true);
100
+ return !isAllSpam;
101
+ });
102
+ },
103
+ filterByConnectedChain(transactions) {
104
+ const chainId = _ConnectionsController.ConnectionsController.state.activeCaipNetworkId;
105
+ const filteredTransactions = transactions.filter(transaction => transaction.metadata.chain === chainId);
106
+ return filteredTransactions;
107
+ },
108
+ clearCursor() {
109
+ state.next = undefined;
110
+ },
111
+ resetState() {
112
+ state.transactions = [];
113
+ state.loading = false;
114
+ state.empty = false;
115
+ state.next = undefined;
116
+ }
117
+ };
118
+ //# sourceMappingURL=TransactionsController.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_valtio","require","_OptionsController","_EventsController","_SnackController","_BlockchainApiController","_ConnectionsController","_LogController","state","proxy","transactions","loading","empty","next","undefined","TransactionsController","exports","subscribe","callback","sub","fetchTransactions","accountAddress","reset","projectId","OptionsController","Error","namespace","chain","address","split","response","BlockchainApiController","account","chainId","cursor","nonSpamTransactions","filterSpamTransactions","data","filteredTransactions","length","error","LogController","sendError","EventsController","sendEvent","type","event","properties","isSmartAccount","ConnectionsController","accountType","SnackController","showError","getTransactionsByYearAndMonth","grouped","filterByConnectedChain","forEach","transaction","year","Date","metadata","minedAt","getFullYear","month","getMonth","yearTransactions","monthTransactions","newMonthTransactions","filter","tx","id","sort","a","b","getTime","isAllSpam","transfers","every","transfer","nft_info","flags","is_spam","activeCaipNetworkId","clearCursor","resetState"],"sourceRoot":"../../../src","sources":["controllers/TransactionsController.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.WcController = void 0;
7
+ var _valtio = require("valtio");
8
+ var _utils = require("valtio/utils");
9
+ var _CoreHelperUtil = require("../utils/CoreHelperUtil");
10
+ var _StorageUtil = require("../utils/StorageUtil");
11
+ // -- Types --------------------------------------------- //
12
+
13
+ // -- State --------------------------------------------- //
14
+ const state = (0, _valtio.proxy)({
15
+ wcError: false
16
+ });
17
+
18
+ // -- Controller ---------------------------------------- //
19
+ const WcController = exports.WcController = {
20
+ state,
21
+ subscribeKey(key, callback) {
22
+ return (0, _utils.subscribeKey)(state, key, callback);
23
+ },
24
+ setWcLinking(wcLinking) {
25
+ state.wcLinking = wcLinking;
26
+ },
27
+ removeWcLinking() {
28
+ state.wcLinking = undefined;
29
+ },
30
+ setWcError(wcError) {
31
+ state.wcError = wcError;
32
+ },
33
+ setPressedWallet(wallet) {
34
+ state.pressedWallet = wallet;
35
+ },
36
+ removePressedWallet() {
37
+ state.pressedWallet = undefined;
38
+ },
39
+ setWcPromise(wcPromise) {
40
+ state.wcPromise = wcPromise;
41
+ },
42
+ setWcUri(wcUri) {
43
+ state.wcUri = wcUri;
44
+ state.wcPairingExpiry = _CoreHelperUtil.CoreHelperUtil.getPairingExpiry();
45
+ },
46
+ setRecentWallets(wallets) {
47
+ state.recentWallets = wallets;
48
+ },
49
+ async addRecentWallet(wallet) {
50
+ const recentWallets = await _StorageUtil.StorageUtil.addRecentWallet(wallet);
51
+ if (recentWallets) {
52
+ WcController.setRecentWallets(recentWallets);
53
+ }
54
+ },
55
+ setConnectedWallet: async (wcLinking, pressedWallet) => {
56
+ _StorageUtil.StorageUtil.setWalletConnectDeepLink(wcLinking);
57
+ if (pressedWallet) {
58
+ WcController.addRecentWallet(pressedWallet);
59
+ }
60
+ },
61
+ clearUri() {
62
+ state.wcUri = undefined;
63
+ state.wcPairingExpiry = undefined;
64
+ state.wcPromise = undefined;
65
+ state.wcLinking = undefined;
66
+ },
67
+ resetState() {
68
+ this.clearUri();
69
+ state.pressedWallet = undefined;
70
+ _StorageUtil.StorageUtil.removeWalletConnectDeepLink();
71
+ }
72
+ };
73
+ //# sourceMappingURL=WcController.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_valtio","require","_utils","_CoreHelperUtil","_StorageUtil","state","proxy","wcError","WcController","exports","subscribeKey","key","callback","subKey","setWcLinking","wcLinking","removeWcLinking","undefined","setWcError","setPressedWallet","wallet","pressedWallet","removePressedWallet","setWcPromise","wcPromise","setWcUri","wcUri","wcPairingExpiry","CoreHelperUtil","getPairingExpiry","setRecentWallets","wallets","recentWallets","addRecentWallet","StorageUtil","setConnectedWallet","setWalletConnectDeepLink","clearUri","resetState","removeWalletConnectDeepLink"],"sourceRoot":"../../../src","sources":["controllers/WcController.ts"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAEA,IAAAE,eAAA,GAAAF,OAAA;AACA,IAAAG,YAAA,GAAAH,OAAA;AAEA;;AAaA;AACA,MAAMI,KAAK,GAAG,IAAAC,aAAK,EAAoB;EACrCC,OAAO,EAAE;AACX,CAAC,CAAC;;AAEF;AACO,MAAMC,YAAY,GAAAC,OAAA,CAAAD,YAAA,GAAG;EAC1BH,KAAK;EAELK,YAAYA,CAAqBC,GAAM,EAAEC,QAA+C,EAAE;IACxF,OAAO,IAAAC,mBAAM,EAACR,KAAK,EAAEM,GAAG,EAAEC,QAAQ,CAAC;EACrC,CAAC;EAEDE,YAAYA,CAACC,SAAyC,EAAE;IACtDV,KAAK,CAACU,SAAS,GAAGA,SAAS;EAC7B,CAAC;EAEDC,eAAeA,CAAA,EAAG;IAChBX,KAAK,CAACU,SAAS,GAAGE,SAAS;EAC7B,CAAC;EAEDC,UAAUA,CAACX,OAAqC,EAAE;IAChDF,KAAK,CAACE,OAAO,GAAGA,OAAO;EACzB,CAAC;EAEDY,gBAAgBA,CAACC,MAA0C,EAAE;IAC3Df,KAAK,CAACgB,aAAa,GAAGD,MAAM;EAC9B,CAAC;EAEDE,mBAAmBA,CAAA,EAAG;IACpBjB,KAAK,CAACgB,aAAa,GAAGJ,SAAS;EACjC,CAAC;EAEDM,YAAYA,CAACC,SAAyC,EAAE;IACtDnB,KAAK,CAACmB,SAAS,GAAGA,SAAS;EAC7B,CAAC;EAEDC,QAAQA,CAACC,KAAiC,EAAE;IAC1CrB,KAAK,CAACqB,KAAK,GAAGA,KAAK;IACnBrB,KAAK,CAACsB,eAAe,GAAGC,8BAAc,CAACC,gBAAgB,CAAC,CAAC;EAC3D,CAAC;EAEDC,gBAAgBA,CAACC,OAA2C,EAAE;IAC5D1B,KAAK,CAAC2B,aAAa,GAAGD,OAAO;EAC/B,CAAC;EAED,MAAME,eAAeA,CAACb,MAAgB,EAAE;IACtC,MAAMY,aAAa,GAAG,MAAME,wBAAW,CAACD,eAAe,CAACb,MAAM,CAAC;IAC/D,IAAIY,aAAa,EAAE;MACjBxB,YAAY,CAACsB,gBAAgB,CAACE,aAAa,CAAC;IAC9C;EACF,CAAC;EAEDG,kBAAkB,EAAE,MAAAA,CAAOpB,SAAyB,EAAEM,aAAwB,KAAK;IACjFa,wBAAW,CAACE,wBAAwB,CAACrB,SAAS,CAAC;IAE/C,IAAIM,aAAa,EAAE;MACjBb,YAAY,CAACyB,eAAe,CAACZ,aAAa,CAAC;IAC7C;EACF,CAAC;EAEDgB,QAAQA,CAAA,EAAG;IACThC,KAAK,CAACqB,KAAK,GAAGT,SAAS;IACvBZ,KAAK,CAACsB,eAAe,GAAGV,SAAS;IACjCZ,KAAK,CAACmB,SAAS,GAAGP,SAAS;IAC3BZ,KAAK,CAACU,SAAS,GAAGE,SAAS;EAC7B,CAAC;EAEDqB,UAAUA,CAAA,EAAG;IACX,IAAI,CAACD,QAAQ,CAAC,CAAC;IACfhC,KAAK,CAACgB,aAAa,GAAGJ,SAAS;IAC/BiB,wBAAW,CAACK,2BAA2B,CAAC,CAAC;EAC3C;AACF,CAAC","ignoreList":[]}
@@ -0,0 +1,272 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.ReownAuthentication = void 0;
7
+ var _appkitCommonReactNative = require("@reown/appkit-common-react-native");
8
+ var _ApiController = require("../../controllers/ApiController");
9
+ var _BlockchainApiController = require("../../controllers/BlockchainApiController");
10
+ var _ReownAuthenticationMessenger = require("./ReownAuthenticationMessenger");
11
+ var _ConnectionsController = require("../../controllers/ConnectionsController");
12
+ var _CoreHelperUtil = require("../../utils/CoreHelperUtil");
13
+ var _OptionsController = require("../../controllers/OptionsController");
14
+ var _FetchUtil = require("../../utils/FetchUtil");
15
+ var _ApiUtil = require("../../utils/ApiUtil");
16
+ var _LogController = require("../../controllers/LogController");
17
+ /**
18
+ * This is the configuration for using SIWX with Reown Authentication service.
19
+ * It allows you to authenticate and capture user sessions through the Reown Dashboard.
20
+ */
21
+ class ReownAuthentication {
22
+ fetchUtil = new _FetchUtil.FetchUtil({
23
+ baseUrl: _CoreHelperUtil.CoreHelperUtil.getApiUrl()
24
+ });
25
+ listeners = {
26
+ sessionChanged: []
27
+ };
28
+ constructor(params = {}) {
29
+ this.localAuthStorageKey = params.localAuthStorageKey || _appkitCommonReactNative.SafeStorageKeys.SIWX_AUTH_TOKEN;
30
+ this.localNonceStorageKey = params.localNonceStorageKey || _appkitCommonReactNative.SafeStorageKeys.SIWX_NONCE_TOKEN;
31
+ this.required = params.required ?? true;
32
+ this.messenger = new _ReownAuthenticationMessenger.ReownAuthenticationMessenger({
33
+ getNonce: this.getNonce.bind(this)
34
+ });
35
+ this.signOutOnDisconnect = params.signOutOnDisconnect ?? true;
36
+ }
37
+ async createMessage(input) {
38
+ return this.messenger.createMessage(input);
39
+ }
40
+ async addSession(session) {
41
+ const response = await this.request({
42
+ method: 'POST',
43
+ key: 'authenticate',
44
+ body: {
45
+ data: session.cacao ? undefined : session.data,
46
+ message: session.message,
47
+ signature: session.signature,
48
+ clientId: this.getClientId(),
49
+ walletInfo: this.getWalletInfo()
50
+ },
51
+ headers: ['nonce']
52
+ });
53
+ this.setStorageToken(response.token, this.localAuthStorageKey);
54
+ this.emit('sessionChanged', session);
55
+ }
56
+ async getSessions(chainId, address) {
57
+ try {
58
+ const sessions = await this.getStorageToken(this.localAuthStorageKey);
59
+ if (!sessions) {
60
+ return [];
61
+ }
62
+ const account = await this.request({
63
+ method: 'GET',
64
+ key: 'me',
65
+ query: {},
66
+ headers: ['auth']
67
+ });
68
+ if (!account) {
69
+ return [];
70
+ }
71
+ const isSameAddress = account.address.toLowerCase() === address.toLowerCase();
72
+ const isSameNetwork = account.caip2Network === chainId;
73
+ if (!isSameAddress || !isSameNetwork) {
74
+ return [];
75
+ }
76
+ const session = {
77
+ data: {
78
+ accountAddress: account.address,
79
+ chainId: account.caip2Network
80
+ },
81
+ message: '',
82
+ signature: ''
83
+ };
84
+ this.emit('sessionChanged', session);
85
+ return [session];
86
+ } catch (error) {
87
+ _LogController.LogController.sendError(error, 'ReownAuthentication.ts', 'getSessions');
88
+ return [];
89
+ }
90
+ }
91
+ async revokeSession(_chainId, _address) {
92
+ return Promise.resolve(this.clearStorageTokens());
93
+ }
94
+ async setSessions(sessions) {
95
+ if (sessions.length === 0) {
96
+ this.clearStorageTokens();
97
+ } else {
98
+ const session = sessions.find(s => s.data.chainId === _ConnectionsController.ConnectionsController.state.activeCaipNetworkId) || sessions[0];
99
+ await this.addSession(session);
100
+ }
101
+ }
102
+ getRequired() {
103
+ return this.required;
104
+ }
105
+ async getSessionAccount() {
106
+ const sessions = await this.getStorageToken(this.localAuthStorageKey);
107
+ if (!sessions) {
108
+ throw new Error('Not authenticated');
109
+ }
110
+ return this.request({
111
+ method: 'GET',
112
+ key: 'me',
113
+ body: undefined,
114
+ query: {
115
+ includeAppKitAccount: true
116
+ },
117
+ headers: ['auth']
118
+ });
119
+ }
120
+ async setSessionAccountMetadata(metadata = null) {
121
+ const sessions = await this.getStorageToken(this.localAuthStorageKey);
122
+ if (!sessions) {
123
+ throw new Error('Not authenticated');
124
+ }
125
+ return this.request({
126
+ method: 'PUT',
127
+ key: 'account-metadata',
128
+ body: {
129
+ metadata
130
+ },
131
+ headers: ['auth']
132
+ });
133
+ }
134
+ on(event, callback) {
135
+ this.listeners[event].push(callback);
136
+ return () => {
137
+ this.listeners[event] = this.listeners[event].filter(cb => cb !== callback);
138
+ };
139
+ }
140
+ removeAllListeners() {
141
+ const keys = Object.keys(this.listeners);
142
+ keys.forEach(key => {
143
+ this.listeners[key] = [];
144
+ });
145
+ }
146
+ async request({
147
+ method,
148
+ key,
149
+ query,
150
+ body,
151
+ headers
152
+ }) {
153
+ const {
154
+ projectId,
155
+ st,
156
+ sv,
157
+ domain
158
+ } = this.getSDKProperties();
159
+ const url = this.fetchUtil.createUrl({
160
+ path: `/auth/v1/${String(key)}`,
161
+ params: {
162
+ projectId,
163
+ st,
164
+ sv,
165
+ domain,
166
+ ...query
167
+ }
168
+ });
169
+ const nonceJwt = await this.getStorageToken(this.localNonceStorageKey);
170
+ const auth = await this.getStorageToken(this.localAuthStorageKey);
171
+ const response = await fetch(url, {
172
+ method,
173
+ body: body ? JSON.stringify(body) : undefined,
174
+ headers: {
175
+ 'Content-Type': 'application/json',
176
+ ...(Array.isArray(headers) ? headers.reduce((acc, header) => {
177
+ switch (header) {
178
+ case 'nonce':
179
+ acc['x-nonce-jwt'] = `Bearer ${nonceJwt}`;
180
+ break;
181
+ case 'auth':
182
+ acc['Authorization'] = `Bearer ${auth}`;
183
+ break;
184
+ default:
185
+ break;
186
+ }
187
+ return acc;
188
+ }, {}) : {})
189
+ }
190
+ });
191
+ if (!response.ok) {
192
+ throw new Error(await response.text());
193
+ }
194
+ if (response.headers.get('content-type')?.includes('application/json')) {
195
+ return response.json();
196
+ }
197
+ return null;
198
+ }
199
+ async getStorageToken(key) {
200
+ return _OptionsController.OptionsController.getStorage().getItem(key);
201
+ }
202
+ setStorageToken(token, key) {
203
+ _OptionsController.OptionsController.getStorage().setItem(key, token);
204
+ }
205
+ clearStorageTokens() {
206
+ _OptionsController.OptionsController.getStorage().removeItem(this.localAuthStorageKey);
207
+ _OptionsController.OptionsController.getStorage().removeItem(this.localNonceStorageKey);
208
+ this.emit('sessionChanged', undefined);
209
+ }
210
+ async getNonce() {
211
+ const {
212
+ nonce,
213
+ token
214
+ } = await this.request({
215
+ method: 'GET',
216
+ key: 'nonce'
217
+ });
218
+ this.setStorageToken(token, this.localNonceStorageKey);
219
+ return nonce;
220
+ }
221
+ getClientId() {
222
+ return _BlockchainApiController.BlockchainApiController.state.clientId;
223
+ }
224
+ getWalletInfo() {
225
+ const connectedWalletInfo = _ConnectionsController.ConnectionsController.state.walletInfo;
226
+ const connectionProperties = _ConnectionsController.ConnectionsController.state.connection?.properties;
227
+ if (!connectedWalletInfo || !connectionProperties) {
228
+ return undefined;
229
+ }
230
+ if (connectionProperties?.provider) {
231
+ const social = connectionProperties.provider;
232
+ const identifier = connectionProperties.email || 'unknown';
233
+ return {
234
+ type: 'social',
235
+ social,
236
+ identifier
237
+ };
238
+ }
239
+ let {
240
+ name,
241
+ icon,
242
+ type
243
+ } = connectedWalletInfo;
244
+ if (!type || type !== 'walletconnect') {
245
+ type = 'unknown';
246
+ }
247
+ return {
248
+ type,
249
+ name,
250
+ icon
251
+ };
252
+ }
253
+ getSDKProperties() {
254
+ const {
255
+ projectId,
256
+ st,
257
+ sv
258
+ } = _ApiController.ApiController._getApiParams();
259
+ const domain = _ApiUtil.ApiUtil.getOrigin();
260
+ return {
261
+ projectId,
262
+ st,
263
+ sv,
264
+ domain
265
+ };
266
+ }
267
+ emit(event, data) {
268
+ this.listeners[event].forEach(listener => listener(data));
269
+ }
270
+ }
271
+ exports.ReownAuthentication = ReownAuthentication;
272
+ //# sourceMappingURL=ReownAuthentication.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_appkitCommonReactNative","require","_ApiController","_BlockchainApiController","_ReownAuthenticationMessenger","_ConnectionsController","_CoreHelperUtil","_OptionsController","_FetchUtil","_ApiUtil","_LogController","ReownAuthentication","fetchUtil","FetchUtil","baseUrl","CoreHelperUtil","getApiUrl","listeners","sessionChanged","constructor","params","localAuthStorageKey","SafeStorageKeys","SIWX_AUTH_TOKEN","localNonceStorageKey","SIWX_NONCE_TOKEN","required","messenger","ReownAuthenticationMessenger","getNonce","bind","signOutOnDisconnect","createMessage","input","addSession","session","response","request","method","key","body","data","cacao","undefined","message","signature","clientId","getClientId","walletInfo","getWalletInfo","headers","setStorageToken","token","emit","getSessions","chainId","address","sessions","getStorageToken","account","query","isSameAddress","toLowerCase","isSameNetwork","caip2Network","accountAddress","error","LogController","sendError","revokeSession","_chainId","_address","Promise","resolve","clearStorageTokens","setSessions","length","find","s","ConnectionsController","state","activeCaipNetworkId","getRequired","getSessionAccount","Error","includeAppKitAccount","setSessionAccountMetadata","metadata","on","event","callback","push","filter","cb","removeAllListeners","keys","Object","forEach","projectId","st","sv","domain","getSDKProperties","url","createUrl","path","String","nonceJwt","auth","fetch","JSON","stringify","Array","isArray","reduce","acc","header","ok","text","get","includes","json","OptionsController","getStorage","getItem","setItem","removeItem","nonce","BlockchainApiController","connectedWalletInfo","connectionProperties","connection","properties","provider","social","identifier","email","type","name","icon","ApiController","_getApiParams","ApiUtil","getOrigin","listener","exports"],"sourceRoot":"../../../../src","sources":["features/reown-authentication/ReownAuthentication.ts"],"mappings":"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","ignoreList":[]}