@reown/appkit-core-react-native 2.0.0 → 2.0.1

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 (282) hide show
  1. package/lib/commonjs/controllers/ApiController.js +148 -82
  2. package/lib/commonjs/controllers/ApiController.js.map +1 -1
  3. package/lib/commonjs/controllers/AssetController.js +0 -4
  4. package/lib/commonjs/controllers/AssetController.js.map +1 -1
  5. package/lib/commonjs/controllers/BlockchainApiController.js +127 -134
  6. package/lib/commonjs/controllers/BlockchainApiController.js.map +1 -1
  7. package/lib/commonjs/controllers/ConnectionsController.js +280 -60
  8. package/lib/commonjs/controllers/ConnectionsController.js.map +1 -1
  9. package/lib/commonjs/controllers/EnsController.js +6 -4
  10. package/lib/commonjs/controllers/EnsController.js.map +1 -1
  11. package/lib/commonjs/controllers/EventsController.js +55 -5
  12. package/lib/commonjs/controllers/EventsController.js.map +1 -1
  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 +9 -7
  16. package/lib/commonjs/controllers/ModalController.js.map +1 -1
  17. package/lib/commonjs/controllers/OnRampController.js +134 -53
  18. package/lib/commonjs/controllers/OnRampController.js.map +1 -1
  19. package/lib/commonjs/controllers/OptionsController.js +20 -7
  20. package/lib/commonjs/controllers/OptionsController.js.map +1 -1
  21. package/lib/commonjs/controllers/PublicStateController.js.map +1 -1
  22. package/lib/commonjs/controllers/RouterController.js +7 -22
  23. package/lib/commonjs/controllers/RouterController.js.map +1 -1
  24. package/lib/commonjs/controllers/SendController.js +115 -99
  25. package/lib/commonjs/controllers/SendController.js.map +1 -1
  26. package/lib/commonjs/controllers/SnackController.js +29 -5
  27. package/lib/commonjs/controllers/SnackController.js.map +1 -1
  28. package/lib/commonjs/controllers/SwapController.js +119 -119
  29. package/lib/commonjs/controllers/SwapController.js.map +1 -1
  30. package/lib/commonjs/controllers/ThemeController.js +5 -0
  31. package/lib/commonjs/controllers/ThemeController.js.map +1 -1
  32. package/lib/commonjs/controllers/TransactionsController.js +25 -19
  33. package/lib/commonjs/controllers/TransactionsController.js.map +1 -1
  34. package/lib/commonjs/controllers/WcController.js +73 -0
  35. package/lib/commonjs/controllers/WcController.js.map +1 -0
  36. package/lib/commonjs/features/reown-authentication/ReownAuthentication.js +272 -0
  37. package/lib/commonjs/features/reown-authentication/ReownAuthentication.js.map +1 -0
  38. package/lib/commonjs/features/reown-authentication/ReownAuthenticationMessenger.js +48 -0
  39. package/lib/commonjs/features/reown-authentication/ReownAuthenticationMessenger.js.map +1 -0
  40. package/lib/commonjs/features/reown-authentication/index.js +28 -0
  41. package/lib/commonjs/features/reown-authentication/index.js.map +1 -0
  42. package/lib/commonjs/index.js +30 -37
  43. package/lib/commonjs/index.js.map +1 -1
  44. package/lib/commonjs/package.json +1 -0
  45. package/lib/commonjs/utils/ApiUtil.js +1 -1
  46. package/lib/commonjs/utils/ApiUtil.js.map +1 -1
  47. package/lib/commonjs/utils/AssetUtil.js +8 -17
  48. package/lib/commonjs/utils/AssetUtil.js.map +1 -1
  49. package/lib/commonjs/utils/ConstantsUtil.js +14 -431
  50. package/lib/commonjs/utils/ConstantsUtil.js.map +1 -1
  51. package/lib/commonjs/utils/CoreHelperUtil.js +33 -10
  52. package/lib/commonjs/utils/CoreHelperUtil.js.map +1 -1
  53. package/lib/commonjs/utils/EventUtil.js.map +1 -1
  54. package/lib/commonjs/utils/FetchUtil.js +41 -12
  55. package/lib/commonjs/utils/FetchUtil.js.map +1 -1
  56. package/lib/commonjs/utils/LogUtils.js +131 -0
  57. package/lib/commonjs/utils/LogUtils.js.map +1 -0
  58. package/lib/commonjs/utils/StorageUtil.js +119 -172
  59. package/lib/commonjs/utils/StorageUtil.js.map +1 -1
  60. package/lib/commonjs/utils/SwapApiUtil.js +2 -17
  61. package/lib/commonjs/utils/SwapApiUtil.js.map +1 -1
  62. package/lib/commonjs/utils/SwapCalculationUtil.js.map +1 -1
  63. package/lib/commonjs/utils/WalletUtil.js +23 -0
  64. package/lib/commonjs/utils/WalletUtil.js.map +1 -0
  65. package/lib/module/controllers/ApiController.js +150 -82
  66. package/lib/module/controllers/ApiController.js.map +1 -1
  67. package/lib/module/controllers/AssetController.js +2 -4
  68. package/lib/module/controllers/AssetController.js.map +1 -1
  69. package/lib/module/controllers/BlockchainApiController.js +128 -133
  70. package/lib/module/controllers/BlockchainApiController.js.map +1 -1
  71. package/lib/module/controllers/ConnectionsController.js +282 -60
  72. package/lib/module/controllers/ConnectionsController.js.map +1 -1
  73. package/lib/module/controllers/EnsController.js +6 -2
  74. package/lib/module/controllers/EnsController.js.map +1 -1
  75. package/lib/module/controllers/EventsController.js +54 -2
  76. package/lib/module/controllers/EventsController.js.map +1 -1
  77. package/lib/module/controllers/LogController.js +185 -0
  78. package/lib/module/controllers/LogController.js.map +1 -0
  79. package/lib/module/controllers/ModalController.js +11 -7
  80. package/lib/module/controllers/ModalController.js.map +1 -1
  81. package/lib/module/controllers/OnRampController.js +135 -52
  82. package/lib/module/controllers/OnRampController.js.map +1 -1
  83. package/lib/module/controllers/OptionsController.js +22 -7
  84. package/lib/module/controllers/OptionsController.js.map +1 -1
  85. package/lib/module/controllers/PublicStateController.js +2 -0
  86. package/lib/module/controllers/PublicStateController.js.map +1 -1
  87. package/lib/module/controllers/RouterController.js +9 -22
  88. package/lib/module/controllers/RouterController.js.map +1 -1
  89. package/lib/module/controllers/SendController.js +114 -96
  90. package/lib/module/controllers/SendController.js.map +1 -1
  91. package/lib/module/controllers/SnackController.js +31 -5
  92. package/lib/module/controllers/SnackController.js.map +1 -1
  93. package/lib/module/controllers/SwapController.js +121 -119
  94. package/lib/module/controllers/SwapController.js.map +1 -1
  95. package/lib/module/controllers/ThemeController.js +7 -0
  96. package/lib/module/controllers/ThemeController.js.map +1 -1
  97. package/lib/module/controllers/TransactionsController.js +25 -17
  98. package/lib/module/controllers/TransactionsController.js.map +1 -1
  99. package/lib/module/controllers/WcController.js +70 -0
  100. package/lib/module/controllers/WcController.js.map +1 -0
  101. package/lib/module/features/reown-authentication/ReownAuthentication.js +268 -0
  102. package/lib/module/features/reown-authentication/ReownAuthentication.js.map +1 -0
  103. package/lib/module/features/reown-authentication/ReownAuthenticationMessenger.js +43 -0
  104. package/lib/module/features/reown-authentication/ReownAuthenticationMessenger.js.map +1 -0
  105. package/lib/module/features/reown-authentication/index.js +5 -0
  106. package/lib/module/features/reown-authentication/index.js.map +1 -0
  107. package/lib/module/index.js +12 -7
  108. package/lib/module/index.js.map +1 -1
  109. package/lib/module/utils/ApiUtil.js +3 -1
  110. package/lib/module/utils/ApiUtil.js.map +1 -1
  111. package/lib/module/utils/AssetUtil.js +10 -17
  112. package/lib/module/utils/AssetUtil.js.map +1 -1
  113. package/lib/module/utils/ConstantsUtil.js +16 -431
  114. package/lib/module/utils/ConstantsUtil.js.map +1 -1
  115. package/lib/module/utils/CoreHelperUtil.js +35 -8
  116. package/lib/module/utils/CoreHelperUtil.js.map +1 -1
  117. package/lib/module/utils/EventUtil.js +2 -0
  118. package/lib/module/utils/EventUtil.js.map +1 -1
  119. package/lib/module/utils/FetchUtil.js +44 -12
  120. package/lib/module/utils/FetchUtil.js.map +1 -1
  121. package/lib/module/utils/LogUtils.js +121 -0
  122. package/lib/module/utils/LogUtils.js.map +1 -0
  123. package/lib/module/utils/StorageUtil.js +122 -172
  124. package/lib/module/utils/StorageUtil.js.map +1 -1
  125. package/lib/module/utils/SwapApiUtil.js +4 -17
  126. package/lib/module/utils/SwapApiUtil.js.map +1 -1
  127. package/lib/module/utils/SwapCalculationUtil.js +3 -0
  128. package/lib/module/utils/SwapCalculationUtil.js.map +1 -1
  129. package/lib/module/utils/WalletUtil.js +19 -0
  130. package/lib/module/utils/WalletUtil.js.map +1 -0
  131. package/lib/typescript/controllers/ApiController.d.ts +8 -7
  132. package/lib/typescript/controllers/ApiController.d.ts.map +1 -1
  133. package/lib/typescript/controllers/AssetController.d.ts +0 -2
  134. package/lib/typescript/controllers/AssetController.d.ts.map +1 -1
  135. package/lib/typescript/controllers/BlockchainApiController.d.ts +21 -13
  136. package/lib/typescript/controllers/BlockchainApiController.d.ts.map +1 -1
  137. package/lib/typescript/controllers/ConnectionsController.d.ts +22 -18
  138. package/lib/typescript/controllers/ConnectionsController.d.ts.map +1 -1
  139. package/lib/typescript/controllers/EnsController.d.ts +1 -1
  140. package/lib/typescript/controllers/EnsController.d.ts.map +1 -1
  141. package/lib/typescript/controllers/EventsController.d.ts +13 -1
  142. package/lib/typescript/controllers/EventsController.d.ts.map +1 -1
  143. package/lib/typescript/controllers/LogController.d.ts +65 -0
  144. package/lib/typescript/controllers/LogController.d.ts.map +1 -0
  145. package/lib/typescript/controllers/ModalController.d.ts +1 -1
  146. package/lib/typescript/controllers/ModalController.d.ts.map +1 -1
  147. package/lib/typescript/controllers/OnRampController.d.ts +4 -3
  148. package/lib/typescript/controllers/OnRampController.d.ts.map +1 -1
  149. package/lib/typescript/controllers/OptionsController.d.ts +8 -6
  150. package/lib/typescript/controllers/OptionsController.d.ts.map +1 -1
  151. package/lib/typescript/controllers/RouterController.d.ts +6 -21
  152. package/lib/typescript/controllers/RouterController.d.ts.map +1 -1
  153. package/lib/typescript/controllers/SendController.d.ts +5 -7
  154. package/lib/typescript/controllers/SendController.d.ts.map +1 -1
  155. package/lib/typescript/controllers/SnackController.d.ts +3 -3
  156. package/lib/typescript/controllers/SnackController.d.ts.map +1 -1
  157. package/lib/typescript/controllers/SwapController.d.ts +11 -11
  158. package/lib/typescript/controllers/SwapController.d.ts.map +1 -1
  159. package/lib/typescript/controllers/ThemeController.d.ts +2 -0
  160. package/lib/typescript/controllers/ThemeController.d.ts.map +1 -1
  161. package/lib/typescript/controllers/TransactionsController.d.ts +3 -3
  162. package/lib/typescript/controllers/TransactionsController.d.ts.map +1 -1
  163. package/lib/typescript/controllers/WcController.d.ts +27 -0
  164. package/lib/typescript/controllers/WcController.d.ts.map +1 -0
  165. package/lib/typescript/features/reown-authentication/ReownAuthentication.d.ts +174 -0
  166. package/lib/typescript/features/reown-authentication/ReownAuthentication.d.ts.map +1 -0
  167. package/lib/typescript/features/reown-authentication/ReownAuthenticationMessenger.d.ts +16 -0
  168. package/lib/typescript/features/reown-authentication/ReownAuthenticationMessenger.d.ts.map +1 -0
  169. package/lib/typescript/features/reown-authentication/index.d.ts +3 -0
  170. package/lib/typescript/features/reown-authentication/index.d.ts.map +1 -0
  171. package/lib/typescript/index.d.ts +6 -8
  172. package/lib/typescript/index.d.ts.map +1 -1
  173. package/lib/typescript/utils/ApiUtil.d.ts +1 -1
  174. package/lib/typescript/utils/AssetUtil.d.ts +3 -4
  175. package/lib/typescript/utils/AssetUtil.d.ts.map +1 -1
  176. package/lib/typescript/utils/ConstantsUtil.d.ts +7 -416
  177. package/lib/typescript/utils/ConstantsUtil.d.ts.map +1 -1
  178. package/lib/typescript/utils/CoreHelperUtil.d.ts +8 -6
  179. package/lib/typescript/utils/CoreHelperUtil.d.ts.map +1 -1
  180. package/lib/typescript/utils/EventUtil.d.ts +1 -1
  181. package/lib/typescript/utils/EventUtil.d.ts.map +1 -1
  182. package/lib/typescript/utils/FetchUtil.d.ts +3 -3
  183. package/lib/typescript/utils/FetchUtil.d.ts.map +1 -1
  184. package/lib/typescript/utils/LogUtils.d.ts +15 -0
  185. package/lib/typescript/utils/LogUtils.d.ts.map +1 -0
  186. package/lib/typescript/utils/StorageUtil.d.ts +8 -19
  187. package/lib/typescript/utils/StorageUtil.d.ts.map +1 -1
  188. package/lib/typescript/utils/SwapApiUtil.d.ts +3 -4
  189. package/lib/typescript/utils/SwapApiUtil.d.ts.map +1 -1
  190. package/lib/typescript/utils/SwapCalculationUtil.d.ts +1 -1
  191. package/lib/typescript/utils/SwapCalculationUtil.d.ts.map +1 -1
  192. package/lib/typescript/utils/WalletUtil.d.ts +5 -0
  193. package/lib/typescript/utils/WalletUtil.d.ts.map +1 -0
  194. package/package.json +12 -25
  195. package/src/controllers/ApiController.ts +158 -80
  196. package/src/controllers/AssetController.ts +0 -6
  197. package/src/controllers/BlockchainApiController.ts +109 -144
  198. package/src/controllers/ConnectionsController.ts +372 -88
  199. package/src/controllers/EnsController.ts +5 -3
  200. package/src/controllers/EventsController.ts +74 -3
  201. package/src/controllers/LogController.ts +250 -0
  202. package/src/controllers/ModalController.ts +11 -9
  203. package/src/controllers/OnRampController.ts +195 -82
  204. package/src/controllers/OptionsController.ts +40 -13
  205. package/src/controllers/RouterController.ts +20 -58
  206. package/src/controllers/SendController.ts +148 -112
  207. package/src/controllers/SnackController.ts +31 -5
  208. package/src/controllers/SwapController.ts +140 -148
  209. package/src/controllers/ThemeController.ts +7 -0
  210. package/src/controllers/TransactionsController.ts +26 -18
  211. package/src/controllers/WcController.ts +93 -0
  212. package/src/features/reown-authentication/ReownAuthentication.ts +475 -0
  213. package/src/features/reown-authentication/ReownAuthenticationMessenger.ts +80 -0
  214. package/src/features/reown-authentication/index.ts +2 -0
  215. package/src/index.ts +15 -22
  216. package/src/utils/ApiUtil.ts +1 -1
  217. package/src/utils/AssetUtil.ts +9 -20
  218. package/src/utils/ConstantsUtil.ts +16 -435
  219. package/src/utils/CoreHelperUtil.ts +62 -11
  220. package/src/utils/EventUtil.ts +1 -1
  221. package/src/utils/FetchUtil.ts +50 -14
  222. package/src/utils/LogUtils.ts +179 -0
  223. package/src/utils/StorageUtil.ts +171 -199
  224. package/src/utils/SwapApiUtil.ts +18 -37
  225. package/src/utils/SwapCalculationUtil.ts +1 -2
  226. package/src/utils/WalletUtil.ts +14 -0
  227. package/lib/commonjs/controllers/AccountController.js +0 -93
  228. package/lib/commonjs/controllers/AccountController.js.map +0 -1
  229. package/lib/commonjs/controllers/ConnectionController.js +0 -132
  230. package/lib/commonjs/controllers/ConnectionController.js.map +0 -1
  231. package/lib/commonjs/controllers/ConnectorController.js +0 -50
  232. package/lib/commonjs/controllers/ConnectorController.js.map +0 -1
  233. package/lib/commonjs/controllers/NetworkController.js +0 -90
  234. package/lib/commonjs/controllers/NetworkController.js.map +0 -1
  235. package/lib/commonjs/controllers/WebviewController.js +0 -52
  236. package/lib/commonjs/controllers/WebviewController.js.map +0 -1
  237. package/lib/commonjs/utils/NetworkUtil.js +0 -46
  238. package/lib/commonjs/utils/NetworkUtil.js.map +0 -1
  239. package/lib/commonjs/utils/RouterUtil.js +0 -25
  240. package/lib/commonjs/utils/RouterUtil.js.map +0 -1
  241. package/lib/commonjs/utils/TypeUtil.js +0 -6
  242. package/lib/commonjs/utils/TypeUtil.js.map +0 -1
  243. package/lib/module/controllers/AccountController.js +0 -88
  244. package/lib/module/controllers/AccountController.js.map +0 -1
  245. package/lib/module/controllers/ConnectionController.js +0 -127
  246. package/lib/module/controllers/ConnectionController.js.map +0 -1
  247. package/lib/module/controllers/ConnectorController.js +0 -45
  248. package/lib/module/controllers/ConnectorController.js.map +0 -1
  249. package/lib/module/controllers/NetworkController.js +0 -85
  250. package/lib/module/controllers/NetworkController.js.map +0 -1
  251. package/lib/module/controllers/WebviewController.js +0 -47
  252. package/lib/module/controllers/WebviewController.js.map +0 -1
  253. package/lib/module/utils/NetworkUtil.js +0 -40
  254. package/lib/module/utils/NetworkUtil.js.map +0 -1
  255. package/lib/module/utils/RouterUtil.js +0 -19
  256. package/lib/module/utils/RouterUtil.js.map +0 -1
  257. package/lib/module/utils/TypeUtil.js +0 -2
  258. package/lib/module/utils/TypeUtil.js.map +0 -1
  259. package/lib/typescript/controllers/AccountController.d.ts +0 -33
  260. package/lib/typescript/controllers/AccountController.d.ts.map +0 -1
  261. package/lib/typescript/controllers/ConnectionController.d.ts +0 -68
  262. package/lib/typescript/controllers/ConnectionController.d.ts.map +0 -1
  263. package/lib/typescript/controllers/ConnectorController.d.ts +0 -18
  264. package/lib/typescript/controllers/ConnectorController.d.ts.map +0 -1
  265. package/lib/typescript/controllers/NetworkController.d.ts +0 -34
  266. package/lib/typescript/controllers/NetworkController.d.ts.map +0 -1
  267. package/lib/typescript/controllers/WebviewController.d.ts +0 -21
  268. package/lib/typescript/controllers/WebviewController.d.ts.map +0 -1
  269. package/lib/typescript/utils/NetworkUtil.d.ts +0 -8
  270. package/lib/typescript/utils/NetworkUtil.d.ts.map +0 -1
  271. package/lib/typescript/utils/RouterUtil.d.ts +0 -5
  272. package/lib/typescript/utils/RouterUtil.d.ts.map +0 -1
  273. package/lib/typescript/utils/TypeUtil.d.ts +0 -817
  274. package/lib/typescript/utils/TypeUtil.d.ts.map +0 -1
  275. package/src/controllers/AccountController.ts +0 -128
  276. package/src/controllers/ConnectionController.ts +0 -208
  277. package/src/controllers/ConnectorController.ts +0 -64
  278. package/src/controllers/NetworkController.ts +0 -120
  279. package/src/controllers/WebviewController.ts +0 -63
  280. package/src/utils/NetworkUtil.ts +0 -33
  281. package/src/utils/RouterUtil.ts +0 -21
  282. package/src/utils/TypeUtil.ts +0 -995
@@ -5,65 +5,143 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.ConnectionsController = void 0;
7
7
  var _valtio = require("valtio");
8
- var _utils = require("valtio/utils");
8
+ var _deriveValtio = require("derive-valtio");
9
9
  var _appkitCommonReactNative = require("@reown/appkit-common-react-native");
10
10
  var _StorageUtil = require("../utils/StorageUtil");
11
+ var _BlockchainApiController = require("./BlockchainApiController");
12
+ var _SnackController = require("./SnackController");
13
+ var _LogController = require("./LogController");
14
+ var _CoreHelperUtil = require("../utils/CoreHelperUtil");
11
15
  // -- Types --------------------------------------------- //
12
16
 
13
- //TODO: balance could be elsewhere
14
-
15
17
  // -- State --------------------------------------------- //
16
18
  const baseState = (0, _valtio.proxy)({
17
19
  activeNamespace: undefined,
18
20
  connections: new Map(),
19
21
  networks: []
20
22
  });
21
- const derivedState = (0, _utils.derive)({
22
- activeAddress: get => {
23
- const snap = get(baseState);
24
- if (!snap.activeNamespace) {
25
- return undefined;
26
- }
27
- const connection = snap.connections.get(snap.activeNamespace);
28
- if (!connection || !connection.accounts || connection.accounts.length === 0) {
29
- return undefined;
23
+
24
+ // -- Helper Functions --------------------------------------------- //
25
+ const getActiveConnection = snap => {
26
+ if (!snap.activeNamespace) return undefined;
27
+ return snap.connections.get(snap.activeNamespace);
28
+ };
29
+ const hasValidAccounts = connection => {
30
+ return connection?.accounts && connection.accounts.length > 0;
31
+ };
32
+ const findSmartAccountForNetwork = connection => {
33
+ return connection.properties?.smartAccounts?.find(account => account.startsWith(connection.caipNetwork));
34
+ };
35
+ const findEOAForNetwork = connection => {
36
+ const smartAccounts = connection.properties?.smartAccounts || [];
37
+ return connection.accounts.find(account => account.startsWith(connection.caipNetwork) && !smartAccounts.includes(account));
38
+ };
39
+ const getActiveAddress = connection => {
40
+ if (!hasValidAccounts(connection)) {
41
+ return undefined;
42
+ }
43
+
44
+ // For smart accounts, prioritize smart account addresses
45
+ if (connection.type === 'smartAccount') {
46
+ const smartAccount = findSmartAccountForNetwork(connection);
47
+ if (smartAccount) {
48
+ return smartAccount;
30
49
  }
50
+ }
31
51
 
32
- //TODO: what happens if there are several accounts on the same chain?
33
- const activeAccount = connection.accounts.find(account => account.startsWith(connection.caipNetwork));
34
- return activeAccount;
52
+ // Fall back to EOA or any account that matches the network
53
+ return findEOAForNetwork(connection);
54
+ };
55
+ const updateConnection = (namespace, connection, updates) => {
56
+ const newConnectionsMap = new Map(baseState.connections);
57
+ const newConnection = {
58
+ ...connection,
59
+ ...updates
60
+ };
61
+ newConnectionsMap.set(namespace, newConnection);
62
+ baseState.connections = newConnectionsMap;
63
+ return newConnection;
64
+ };
65
+ const getActiveIdentity = connection => {
66
+ const activeAddress = getActiveAddress(connection);
67
+ if (!activeAddress) return undefined;
68
+ return connection.identities?.get(activeAddress);
69
+ };
70
+ const derivedState = (0, _deriveValtio.derive)({
71
+ isConnected: get => {
72
+ const snap = get(baseState);
73
+ return !!snap.activeNamespace && !!snap.connections.size;
74
+ },
75
+ activeAddress: get => {
76
+ const snap = get(baseState);
77
+ const connection = getActiveConnection(snap);
78
+ return connection ? getActiveAddress(connection) : undefined;
79
+ },
80
+ identity: get => {
81
+ const snap = get(baseState);
82
+ const connection = getActiveConnection(snap);
83
+ return connection ? getActiveIdentity(connection) : undefined;
35
84
  },
36
85
  activeBalance: get => {
37
86
  const snap = get(baseState);
38
- if (!snap.activeNamespace) return undefined;
39
- const connection = snap.connections.get(snap.activeNamespace);
40
- if (!connection || !connection.accounts || connection.accounts.length === 0) {
87
+ const connection = getActiveConnection(snap);
88
+ if (!connection) {
41
89
  return undefined;
42
90
  }
43
- const activeAccount = connection.accounts.find(account => account.startsWith(connection.caipNetwork));
44
- if (!connection || !connection.balances || !activeAccount || Object.keys(connection.balances).length === 0) {
91
+ const activeAddress = getActiveAddress(connection);
92
+ if (!activeAddress || !connection.balances || connection.balances.size === 0) {
45
93
  return undefined;
46
94
  }
47
- return connection.balances[activeAccount];
95
+ const addressBalances = connection.balances.get(activeAddress);
96
+ if (!addressBalances || addressBalances.length === 0) {
97
+ return undefined;
98
+ }
99
+
100
+ // Return the native token (first balance without address)
101
+ const nativeToken = addressBalances.find(balance => !balance.address);
102
+ if (nativeToken) {
103
+ return nativeToken;
104
+ }
105
+
106
+ // Fallback to first available balance
107
+ return addressBalances[0];
48
108
  },
49
109
  activeNetwork: get => {
50
110
  const snap = get(baseState);
51
- if (!snap.activeNamespace) return undefined;
52
- const connection = snap.connections.get(snap.activeNamespace);
111
+ const connection = getActiveConnection(snap);
53
112
  if (!connection) return undefined;
54
113
  return snap.networks.find(network => network.chainNamespace === snap.activeNamespace && network.id?.toString() === connection.caipNetwork?.split(':')[1]);
55
114
  },
56
115
  activeCaipNetworkId: get => {
57
116
  const snap = get(baseState);
58
- if (!snap.activeNamespace) return undefined;
59
- const connection = snap.connections.get(snap.activeNamespace);
60
- if (!connection) return undefined;
61
- return connection.caipNetwork;
117
+ const connection = getActiveConnection(snap);
118
+ return connection?.caipNetwork;
119
+ },
120
+ accountType: get => {
121
+ const snap = get(baseState);
122
+ const connection = getActiveConnection(snap);
123
+ return connection?.type;
124
+ },
125
+ connection: get => {
126
+ const snap = get(baseState);
127
+ return getActiveConnection(snap);
128
+ },
129
+ balances: get => {
130
+ const snap = get(baseState);
131
+ const _connection = getActiveConnection(snap);
132
+ if (!_connection) {
133
+ return undefined;
134
+ }
135
+ const _activeAddress = getActiveAddress(_connection);
136
+ if (!_activeAddress) return [];
137
+ return _connection?.balances.get(_activeAddress)
138
+ // Filter out tokens with no quantity
139
+ ?.filter(balance => balance?.quantity?.numeric);
62
140
  },
63
141
  walletInfo: get => {
64
142
  const snap = get(baseState);
65
- if (!snap.activeNamespace) return undefined;
66
- return snap.connections.get(snap.activeNamespace)?.wallet;
143
+ const connection = getActiveConnection(snap);
144
+ return connection?.wallet;
67
145
  }
68
146
  }, {
69
147
  proxy: baseState // Link derived proxy to the base state proxy
@@ -73,24 +151,29 @@ const derivedState = (0, _utils.derive)({
73
151
  const ConnectionsController = exports.ConnectionsController = {
74
152
  state: derivedState,
75
153
  setActiveNamespace(namespace) {
154
+ if (baseState.activeNamespace === namespace) {
155
+ return;
156
+ }
76
157
  baseState.activeNamespace = namespace;
77
158
  _StorageUtil.StorageUtil.setActiveNamespace(namespace);
78
159
  },
79
- storeConnection({
80
- namespace,
81
- adapter,
160
+ setConnection({
82
161
  accounts,
83
- chains,
84
- wallet,
85
- caipNetwork
162
+ adapter,
163
+ caipNetwork,
164
+ namespace,
165
+ properties,
166
+ wallet
86
167
  }) {
168
+ const type = properties?.smartAccounts?.length && properties.smartAccounts.find(account => account.startsWith(caipNetwork)) ? 'smartAccount' : 'eoa';
87
169
  const newConnectionEntry = {
88
- balances: {},
89
- caipNetwork: caipNetwork ?? chains[0],
170
+ balances: new Map(),
171
+ caipNetwork,
90
172
  adapter: (0, _valtio.ref)(adapter),
91
173
  accounts,
92
- chains,
93
- wallet
174
+ wallet,
175
+ properties,
176
+ type
94
177
  };
95
178
 
96
179
  // Create a new Map to ensure Valtio detects the change
@@ -101,49 +184,108 @@ const ConnectionsController = exports.ConnectionsController = {
101
184
  updateAccounts(namespace, accounts) {
102
185
  const connection = baseState.connections.get(namespace);
103
186
  if (!connection) {
104
- return;
187
+ return false;
105
188
  }
106
- const newConnectionsMap = new Map(baseState.connections);
107
- const updatedConnection = {
108
- ...connection,
189
+ if (connection.accounts.toString() === accounts.toString()) {
190
+ return false;
191
+ }
192
+ updateConnection(namespace, connection, {
109
193
  accounts
110
- };
111
- newConnectionsMap.set(namespace, updatedConnection);
112
- baseState.connections = newConnectionsMap;
194
+ });
195
+ return true;
113
196
  },
114
197
  updateBalance(namespace, address, balance) {
115
198
  const connection = baseState.connections.get(namespace);
116
199
  if (!connection) {
200
+ console.warn(`No connection found for namespace: ${namespace}`);
117
201
  return;
118
202
  }
119
- const newBalances = {
120
- ...connection.balances,
121
- [address]: balance
122
- };
123
- const updatedConnection = {
124
- ...connection,
203
+ const newBalances = new Map(connection.balances);
204
+ const existingBalances = connection.balances.get(address) || [];
205
+ // Check if this token already exists by contract address or symbol
206
+ const existingIndex = existingBalances.findIndex(existingBalance => {
207
+ if (balance.address && existingBalance.address) {
208
+ return _CoreHelperUtil.CoreHelperUtil.getPlainAddress(existingBalance.address) === _CoreHelperUtil.CoreHelperUtil.getPlainAddress(balance.address);
209
+ }
210
+ return existingBalance.symbol === balance.symbol;
211
+ });
212
+ let updatedBalances;
213
+ if (existingIndex >= 0) {
214
+ // Update existing token
215
+ updatedBalances = [...existingBalances];
216
+ updatedBalances[existingIndex] = {
217
+ ...updatedBalances[existingIndex],
218
+ ...balance
219
+ };
220
+ } else {
221
+ // Add new token
222
+ updatedBalances = [...existingBalances, balance];
223
+ }
224
+ newBalances.set(address, updatedBalances);
225
+ updateConnection(namespace, connection, {
125
226
  balances: newBalances
126
- };
127
- const newConnectionsMap = new Map(baseState.connections);
128
- newConnectionsMap.set(namespace, updatedConnection);
129
- baseState.connections = newConnectionsMap;
227
+ });
228
+ },
229
+ updateIdentity(namespace, connection, plainAddress, identity) {
230
+ const accounts = connection.accounts.filter(account => _CoreHelperUtil.CoreHelperUtil.getPlainAddress(account) === plainAddress);
231
+ if (accounts.length > 0) {
232
+ const newIdentities = new Map(connection.identities || []);
233
+ let hasChanges = false;
234
+ accounts.forEach(account => {
235
+ const existingIdentity = newIdentities.get(account);
236
+ if (!existingIdentity || existingIdentity.name !== identity.name) {
237
+ newIdentities.set(account, identity);
238
+ hasChanges = true;
239
+ }
240
+ });
241
+ if (hasChanges) {
242
+ updateConnection(namespace, connection, {
243
+ identities: newIdentities
244
+ });
245
+ }
246
+ }
130
247
  },
131
248
  setActiveNetwork(namespace, networkId) {
132
249
  const connection = baseState.connections.get(namespace);
133
250
  if (!connection) {
134
251
  return;
135
252
  }
136
- baseState.connections.set(namespace, {
137
- ...connection,
253
+ updateConnection(namespace, connection, {
138
254
  caipNetwork: networkId
139
255
  });
256
+ this.setActiveNamespace(namespace);
140
257
  },
141
258
  setNetworks(networks) {
142
259
  baseState.networks = networks;
143
260
  },
144
261
  getConnectedNetworks() {
262
+ const connection = getActiveConnection(baseState);
263
+ if (!connection) {
264
+ return [];
265
+ }
145
266
  return baseState.networks.filter(network => baseState.connections.get(network.chainNamespace)?.accounts.some(account => account.startsWith(network.caipNetworkId)));
146
267
  },
268
+ getAvailableNetworks() {
269
+ const connection = getActiveConnection(baseState);
270
+ if (!connection) {
271
+ return baseState.networks;
272
+ }
273
+ const canAddEvmChain = connection.properties?.canAddEvmChain;
274
+ return baseState.networks.filter(network => baseState.connections.get(network.chainNamespace)?.accounts.some(account => account.startsWith(network.caipNetworkId)) || canAddEvmChain && network.chainNamespace === 'eip155');
275
+ },
276
+ setAccountType(namespace, type) {
277
+ const connection = baseState.connections.get(namespace);
278
+ if (!connection) return;
279
+ const newConnection = updateConnection(namespace, connection, {
280
+ type
281
+ });
282
+ return getActiveAddress(newConnection);
283
+ },
284
+ getActiveNetworkId(namespace) {
285
+ const connection = namespace ? baseState.connections.get(namespace) : getActiveConnection(baseState);
286
+ if (!connection) return undefined;
287
+ return connection.caipNetwork;
288
+ },
147
289
  async disconnect(namespace, isInternal = true) {
148
290
  const connection = baseState.connections.get(namespace);
149
291
  if (!connection) return;
@@ -185,21 +327,99 @@ const ConnectionsController = exports.ConnectionsController = {
185
327
  if (!baseState.activeNamespace) return undefined;
186
328
  return baseState.connections.get(baseState.activeNamespace)?.adapter.parseUnits(value, decimals);
187
329
  },
330
+ async signMessage(address, message) {
331
+ if (!baseState.activeNamespace) return undefined;
332
+ const [namespace, chainId, plainAddress] = address.split(':');
333
+ if (!namespace || namespace !== baseState.activeNamespace || !chainId || !plainAddress) {
334
+ return undefined;
335
+ }
336
+ const adapter = baseState.connections.get(baseState.activeNamespace)?.adapter;
337
+ if ((adapter instanceof _appkitCommonReactNative.EVMAdapter || adapter instanceof _appkitCommonReactNative.SolanaBaseAdapter || adapter instanceof _appkitCommonReactNative.BitcoinBaseAdapter) && plainAddress && chainId) {
338
+ return adapter.signMessage(plainAddress, message, chainId);
339
+ }
340
+ return undefined;
341
+ },
188
342
  async sendTransaction(args) {
189
343
  if (!baseState.activeNamespace) return undefined;
190
344
  const adapter = baseState.connections.get(baseState.activeNamespace)?.adapter;
191
- if (adapter instanceof _appkitCommonReactNative.EVMAdapter) {
345
+ if (adapter instanceof _appkitCommonReactNative.EVMAdapter || adapter instanceof _appkitCommonReactNative.SolanaBaseAdapter) {
192
346
  return adapter.sendTransaction(args);
193
347
  }
194
348
  return undefined;
195
349
  },
196
350
  async estimateGas(args) {
197
- if (!baseState.activeNamespace) return undefined;
351
+ if (!baseState.activeNamespace || baseState.activeNamespace !== 'eip155') return undefined;
198
352
  const adapter = baseState.connections.get(baseState.activeNamespace)?.adapter;
199
353
  if (adapter instanceof _appkitCommonReactNative.EVMAdapter) {
200
354
  return adapter.estimateGas(args);
201
355
  }
202
356
  return undefined;
357
+ },
358
+ async writeContract(args) {
359
+ if (!baseState.activeNamespace) return undefined;
360
+ const adapter = baseState.connections.get(baseState.activeNamespace)?.adapter;
361
+ if (adapter instanceof _appkitCommonReactNative.EVMAdapter) {
362
+ return adapter.writeContract(args);
363
+ }
364
+ return undefined;
365
+ },
366
+ async fetchBalance(forceUpdateAddresses) {
367
+ const connection = getActiveConnection(baseState);
368
+ if (!connection) {
369
+ throw new Error('No active connection found for balance fetch');
370
+ }
371
+ const chainId = connection.caipNetwork;
372
+ const address = getActiveAddress(connection);
373
+ const namespace = baseState.activeNamespace;
374
+ if (!namespace || !address || !chainId) {
375
+ throw new Error('Missing required data for balance fetch');
376
+ }
377
+ try {
378
+ const response = await _BlockchainApiController.BlockchainApiController.getBalance(address, forceUpdateAddresses);
379
+ if (!response) {
380
+ throw new Error('Failed to fetch token balance');
381
+ }
382
+ // Update balances for each token in the response
383
+ response.balances.forEach(balance => {
384
+ this.updateBalance(namespace, address, {
385
+ name: balance.name,
386
+ symbol: balance.symbol,
387
+ amount: balance.quantity.numeric,
388
+ address: balance.address,
389
+ quantity: balance.quantity,
390
+ price: balance.price,
391
+ value: balance.value,
392
+ iconUrl: balance.iconUrl
393
+ });
394
+ });
395
+ } catch (error) {
396
+ _LogController.LogController.sendError(error, 'ConnectionsController.ts', 'fetchBalance', {
397
+ address,
398
+ namespace
399
+ });
400
+ _SnackController.SnackController.showError('Failed to get account balance');
401
+ }
402
+ },
403
+ getSmartAccountEnabledNetworks() {
404
+ const activeConnection = getActiveConnection(baseState);
405
+ if (!activeConnection) {
406
+ return [];
407
+ }
408
+ if (!activeConnection.properties?.smartAccounts?.length) {
409
+ return [];
410
+ }
411
+ const smartAccountNetworks = new Set();
412
+ activeConnection.properties.smartAccounts.forEach(smartAccount => {
413
+ const parts = smartAccount.split(':');
414
+ if (parts.length >= 2) {
415
+ const networkId = `${parts[0]}:${parts[1]}`;
416
+ smartAccountNetworks.add(networkId);
417
+ }
418
+ });
419
+ return baseState.networks.filter(network => {
420
+ const networkId = `${network.chainNamespace}:${network.id}`;
421
+ return smartAccountNetworks.has(networkId);
422
+ });
203
423
  }
204
424
  };
205
425
  //# sourceMappingURL=ConnectionsController.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_valtio","require","_utils","_appkitCommonReactNative","_StorageUtil","baseState","proxy","activeNamespace","undefined","connections","Map","networks","derivedState","derive","activeAddress","get","snap","connection","accounts","length","activeAccount","find","account","startsWith","caipNetwork","activeBalance","balances","Object","keys","activeNetwork","network","chainNamespace","id","toString","split","activeCaipNetworkId","walletInfo","wallet","ConnectionsController","exports","state","setActiveNamespace","namespace","StorageUtil","storeConnection","adapter","chains","newConnectionEntry","ref","newConnectionsMap","set","updateAccounts","updatedConnection","updateBalance","address","balance","newBalances","setActiveNetwork","networkId","setNetworks","getConnectedNetworks","filter","some","caipNetworkId","disconnect","isInternal","connector","namespacesUsingConnector","Array","from","ns","forEach","_connection","removeAllListeners","delete","includes","parseUnits","value","decimals","sendTransaction","args","EVMAdapter","estimateGas"],"sourceRoot":"../../../src","sources":["controllers/ConnectionsController.ts"],"mappings":"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"}
1
+ {"version":3,"names":["_valtio","require","_deriveValtio","_appkitCommonReactNative","_StorageUtil","_BlockchainApiController","_SnackController","_LogController","_CoreHelperUtil","baseState","proxy","activeNamespace","undefined","connections","Map","networks","getActiveConnection","snap","get","hasValidAccounts","connection","accounts","length","findSmartAccountForNetwork","properties","smartAccounts","find","account","startsWith","caipNetwork","findEOAForNetwork","includes","getActiveAddress","type","smartAccount","updateConnection","namespace","updates","newConnectionsMap","newConnection","set","getActiveIdentity","activeAddress","identities","derivedState","derive","isConnected","size","identity","activeBalance","balances","addressBalances","nativeToken","balance","address","activeNetwork","network","chainNamespace","id","toString","split","activeCaipNetworkId","accountType","_connection","_activeAddress","filter","quantity","numeric","walletInfo","wallet","ConnectionsController","exports","state","setActiveNamespace","StorageUtil","setConnection","adapter","newConnectionEntry","ref","updateAccounts","updateBalance","console","warn","newBalances","existingBalances","existingIndex","findIndex","existingBalance","CoreHelperUtil","getPlainAddress","symbol","updatedBalances","updateIdentity","plainAddress","newIdentities","hasChanges","forEach","existingIdentity","name","setActiveNetwork","networkId","setNetworks","getConnectedNetworks","some","caipNetworkId","getAvailableNetworks","canAddEvmChain","setAccountType","getActiveNetworkId","disconnect","isInternal","connector","namespacesUsingConnector","Array","from","keys","ns","removeAllListeners","delete","parseUnits","value","decimals","signMessage","message","chainId","EVMAdapter","SolanaBaseAdapter","BitcoinBaseAdapter","sendTransaction","args","estimateGas","writeContract","fetchBalance","forceUpdateAddresses","Error","response","BlockchainApiController","getBalance","amount","price","iconUrl","error","LogController","sendError","SnackController","showError","getSmartAccountEnabledNetworks","activeConnection","smartAccountNetworks","Set","parts","add","has"],"sourceRoot":"../../../src","sources":["controllers/ConnectionsController.ts"],"mappings":"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","ignoreList":[]}
@@ -4,13 +4,14 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.EnsController = void 0;
7
- var _utils = require("valtio/vanilla/utils");
8
- var _vanilla = require("valtio/vanilla");
7
+ var _utils = require("valtio/utils");
8
+ var _valtio = require("valtio");
9
9
  var _BlockchainApiController = require("./BlockchainApiController");
10
+ var _LogController = require("./LogController");
10
11
  // -- Types --------------------------------------------- //
11
12
 
12
13
  // -- State --------------------------------------------- //
13
- const state = (0, _vanilla.proxy)({
14
+ const state = (0, _valtio.proxy)({
14
15
  loading: false
15
16
  });
16
17
 
@@ -18,7 +19,7 @@ const state = (0, _vanilla.proxy)({
18
19
  const EnsController = exports.EnsController = {
19
20
  state,
20
21
  subscribe(callback) {
21
- return (0, _vanilla.subscribe)(state, () => callback(state));
22
+ return (0, _valtio.subscribe)(state, () => callback(state));
22
23
  },
23
24
  subscribeKey(key, callback) {
24
25
  return (0, _utils.subscribeKey)(state, key, callback);
@@ -27,6 +28,7 @@ const EnsController = exports.EnsController = {
27
28
  try {
28
29
  return await _BlockchainApiController.BlockchainApiController.lookupEnsName(name);
29
30
  } catch (e) {
31
+ _LogController.LogController.sendError(e, 'EnsController.ts', 'resolveName');
30
32
  const error = e;
31
33
  throw new Error(error?.reasons?.[0]?.description || 'Error resolving name');
32
34
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_utils","require","_vanilla","_BlockchainApiController","state","proxy","loading","EnsController","exports","subscribe","callback","sub","subscribeKey","key","subKey","resolveName","name","BlockchainApiController","lookupEnsName","e","error","Error","reasons","description"],"sourceRoot":"../../../src","sources":["controllers/EnsController.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,wBAAA,GAAAF,OAAA;AAGA;;AAQA;AACA,MAAMG,KAAK,GAAG,IAAAC,cAAK,EAAqB;EACtCC,OAAO,EAAE;AACX,CAAC,CAAC;;AAEF;AACO,MAAMC,aAAa,GAAAC,OAAA,CAAAD,aAAA,GAAG;EAC3BH,KAAK;EAELK,SAASA,CAACC,QAAgD,EAAE;IAC1D,OAAO,IAAAC,kBAAG,EAACP,KAAK,EAAE,MAAMM,QAAQ,CAACN,KAAK,CAAC,CAAC;EAC1C,CAAC;EAEDQ,YAAYA,CAAqBC,GAAM,EAAEH,QAAgD,EAAE;IACzF,OAAO,IAAAI,mBAAM,EAACV,KAAK,EAAES,GAAG,EAAEH,QAAQ,CAAC;EACrC,CAAC;EAED,MAAMK,WAAWA,CAACC,IAAY,EAAE;IAC9B,IAAI;MACF,OAAO,MAAMC,gDAAuB,CAACC,aAAa,CAACF,IAAI,CAAC;IAC1D,CAAC,CAAC,OAAOG,CAAC,EAAE;MACV,MAAMC,KAAK,GAAGD,CAA0B;MACxC,MAAM,IAAIE,KAAK,CAACD,KAAK,EAAEE,OAAO,GAAG,CAAC,CAAC,EAAEC,WAAW,IAAI,sBAAsB,CAAC;IAC7E;EACF;AACF,CAAC"}
1
+ {"version":3,"names":["_utils","require","_valtio","_BlockchainApiController","_LogController","state","proxy","loading","EnsController","exports","subscribe","callback","sub","subscribeKey","key","subKey","resolveName","name","BlockchainApiController","lookupEnsName","e","LogController","sendError","error","Error","reasons","description"],"sourceRoot":"../../../src","sources":["controllers/EnsController.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,wBAAA,GAAAF,OAAA;AAEA,IAAAG,cAAA,GAAAH,OAAA;AAEA;;AAQA;AACA,MAAMI,KAAK,GAAG,IAAAC,aAAK,EAAqB;EACtCC,OAAO,EAAE;AACX,CAAC,CAAC;;AAEF;AACO,MAAMC,aAAa,GAAAC,OAAA,CAAAD,aAAA,GAAG;EAC3BH,KAAK;EAELK,SAASA,CAACC,QAAgD,EAAE;IAC1D,OAAO,IAAAC,iBAAG,EAACP,KAAK,EAAE,MAAMM,QAAQ,CAACN,KAAK,CAAC,CAAC;EAC1C,CAAC;EAEDQ,YAAYA,CAAqBC,GAAM,EAAEH,QAAgD,EAAE;IACzF,OAAO,IAAAI,mBAAM,EAACV,KAAK,EAAES,GAAG,EAAEH,QAAQ,CAAC;EACrC,CAAC;EAED,MAAMK,WAAWA,CAACC,IAAY,EAAE;IAC9B,IAAI;MACF,OAAO,MAAMC,gDAAuB,CAACC,aAAa,CAACF,IAAI,CAAC;IAC1D,CAAC,CAAC,OAAOG,CAAC,EAAE;MACVC,4BAAa,CAACC,SAAS,CAACF,CAAC,EAAE,kBAAkB,EAAE,aAAa,CAAC;MAC7D,MAAMG,KAAK,GAAGH,CAA0B;MACxC,MAAM,IAAII,KAAK,CAACD,KAAK,EAAEE,OAAO,GAAG,CAAC,CAAC,EAAEC,WAAW,IAAI,sBAAsB,CAAC;IAC7E;EACF;AACF,CAAC","ignoreList":[]}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.EventsController = void 0;
7
- var _vanilla = require("valtio/vanilla");
7
+ var _valtio = require("valtio");
8
8
  var _ApiController = require("./ApiController");
9
9
  var _OptionsController = require("./OptionsController");
10
10
  var _CoreHelperUtil = require("../utils/CoreHelperUtil");
@@ -15,31 +15,68 @@ const api = new _FetchUtil.FetchUtil({
15
15
  baseUrl
16
16
  });
17
17
  const excluded = ['MODAL_CREATED'];
18
+ const IMPRESSION_TIMEOUT = 3000;
18
19
 
19
20
  // -- Types --------------------------------------------- //
20
21
 
21
22
  // -- State --------------------------------------------- //
22
- const state = (0, _vanilla.proxy)({
23
+ const state = (0, _valtio.proxy)({
23
24
  timestamp: Date.now(),
24
25
  data: {
25
26
  type: 'track',
26
27
  event: 'MODAL_CREATED' // just for init purposes
27
- }
28
+ },
29
+ pendingWalletImpressions: [],
30
+ pendingImpressionTimeout: undefined
28
31
  });
29
32
 
30
33
  // -- Controller ---------------------------------------- //
31
34
  const EventsController = exports.EventsController = {
32
35
  state,
33
36
  subscribe(callback) {
34
- return (0, _vanilla.subscribe)(state, () => callback(state));
37
+ return (0, _valtio.subscribe)(state, () => callback(state));
35
38
  },
36
39
  subscribeEvent(event, callback) {
37
- return (0, _vanilla.subscribe)(state, () => {
40
+ return (0, _valtio.subscribe)(state, () => {
38
41
  if (state.data.event === event) {
39
42
  callback(state);
40
43
  }
41
44
  });
42
45
  },
46
+ trackWalletImpression(props) {
47
+ state.pendingWalletImpressions.push({
48
+ name: props.wallet.name ?? 'Unknown',
49
+ walletRank: props.wallet.order,
50
+ explorerId: props.wallet.id,
51
+ certified: props.wallet.badge_type === 'certified',
52
+ displayIndex: props.displayIndex,
53
+ view: props.view,
54
+ query: props.query,
55
+ installed: props.installed
56
+ });
57
+ if (state.pendingImpressionTimeout) {
58
+ clearTimeout(state.pendingImpressionTimeout);
59
+ }
60
+ state.pendingImpressionTimeout = setTimeout(() => {
61
+ EventsController.sendWalletImpressions();
62
+ }, IMPRESSION_TIMEOUT);
63
+ },
64
+ sendWalletImpressions() {
65
+ if (state.pendingImpressionTimeout) {
66
+ clearTimeout(state.pendingImpressionTimeout);
67
+ state.pendingImpressionTimeout = undefined;
68
+ }
69
+ const impressions = state.pendingWalletImpressions;
70
+ if (impressions.length === 0) {
71
+ return;
72
+ }
73
+ state.pendingWalletImpressions = [];
74
+ EventsController.sendEvent({
75
+ type: 'track',
76
+ event: 'WALLET_IMPRESSION',
77
+ items: impressions
78
+ });
79
+ },
43
80
  async _sendAnalyticsEvent(data, timestamp) {
44
81
  if (excluded.includes(data.event)) {
45
82
  return;
@@ -48,6 +85,7 @@ const EventsController = exports.EventsController = {
48
85
  await api.post({
49
86
  path: '/e',
50
87
  headers: _ApiController.ApiController._getApiHeaders(),
88
+ params: _ApiController.ApiController._getApiParams(),
51
89
  body: {
52
90
  eventId: _CoreHelperUtil.CoreHelperUtil.getUUID(),
53
91
  bundleId: _CoreHelperUtil.CoreHelperUtil.getBundleId(),
@@ -67,6 +105,18 @@ const EventsController = exports.EventsController = {
67
105
  if (_OptionsController.OptionsController.state.enableAnalytics) {
68
106
  EventsController._sendAnalyticsEvent(data, timestamp);
69
107
  }
108
+ },
109
+ resetState() {
110
+ if (state.pendingImpressionTimeout) {
111
+ clearTimeout(state.pendingImpressionTimeout);
112
+ state.pendingImpressionTimeout = undefined;
113
+ }
114
+ state.pendingWalletImpressions = [];
115
+ state.data = {
116
+ type: 'track',
117
+ event: 'MODAL_CREATED'
118
+ };
119
+ state.timestamp = Date.now();
70
120
  }
71
121
  };
72
122
  //# sourceMappingURL=EventsController.js.map