@reown/appkit-react-native 0.0.0-chore-solflare-20250730210452 → 0.0.0-chore-spring-effect-20250909214820

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 (640) hide show
  1. package/lib/commonjs/AppKit.js +175 -117
  2. package/lib/commonjs/AppKit.js.map +1 -1
  3. package/lib/commonjs/AppKitContext.js +3 -5
  4. package/lib/commonjs/AppKitContext.js.map +1 -1
  5. package/lib/commonjs/connectors/WalletConnectConnector.js +26 -9
  6. package/lib/commonjs/connectors/WalletConnectConnector.js.map +1 -1
  7. package/lib/commonjs/hooks/useAccount.js +8 -4
  8. package/lib/commonjs/hooks/useAccount.js.map +1 -1
  9. package/lib/commonjs/hooks/useAppKitEvents.js.map +1 -1
  10. package/lib/commonjs/hooks/useProvider.js +29 -10
  11. package/lib/commonjs/hooks/useProvider.js.map +1 -1
  12. package/lib/commonjs/hooks/useRouteTransition.js +10 -4
  13. package/lib/commonjs/hooks/useRouteTransition.js.map +1 -1
  14. package/lib/commonjs/index.js.map +1 -1
  15. package/lib/commonjs/modal/w3m-account-button/index.js +1 -1
  16. package/lib/commonjs/modal/w3m-account-button/index.js.map +1 -1
  17. package/lib/commonjs/modal/w3m-modal/index.js +20 -26
  18. package/lib/commonjs/modal/w3m-modal/index.js.map +1 -1
  19. package/lib/commonjs/modal/w3m-modal/styles.js +1 -2
  20. package/lib/commonjs/modal/w3m-modal/styles.js.map +1 -1
  21. package/lib/commonjs/modal/w3m-network-button/index.js +1 -1
  22. package/lib/commonjs/modal/w3m-network-button/index.js.map +1 -1
  23. package/lib/commonjs/modal/w3m-router/index.js +9 -3
  24. package/lib/commonjs/modal/w3m-router/index.js.map +1 -1
  25. package/lib/commonjs/partials/w3m-account-activity/index.js +9 -9
  26. package/lib/commonjs/partials/w3m-account-activity/index.js.map +1 -1
  27. package/lib/commonjs/partials/w3m-account-tokens/index.js +5 -5
  28. package/lib/commonjs/partials/w3m-account-tokens/index.js.map +1 -1
  29. package/lib/commonjs/partials/w3m-account-wallet-features/index.js +7 -10
  30. package/lib/commonjs/partials/w3m-account-wallet-features/index.js.map +1 -1
  31. package/lib/commonjs/partials/w3m-all-wallets-list/components/Loading.js +25 -0
  32. package/lib/commonjs/partials/w3m-all-wallets-list/components/Loading.js.map +1 -0
  33. package/lib/commonjs/partials/w3m-all-wallets-list/components/WalletItem.js +41 -0
  34. package/lib/commonjs/partials/w3m-all-wallets-list/components/WalletItem.js.map +1 -0
  35. package/lib/commonjs/partials/w3m-all-wallets-list/components/WalletList.js +91 -0
  36. package/lib/commonjs/partials/w3m-all-wallets-list/components/WalletList.js.map +1 -0
  37. package/lib/commonjs/partials/w3m-all-wallets-list/index.js +21 -78
  38. package/lib/commonjs/partials/w3m-all-wallets-list/index.js.map +1 -1
  39. package/lib/commonjs/partials/w3m-all-wallets-list/styles.js +11 -7
  40. package/lib/commonjs/partials/w3m-all-wallets-list/styles.js.map +1 -1
  41. package/lib/commonjs/partials/w3m-all-wallets-search/index.js +27 -74
  42. package/lib/commonjs/partials/w3m-all-wallets-search/index.js.map +1 -1
  43. package/lib/commonjs/partials/w3m-all-wallets-search/styles.js +4 -5
  44. package/lib/commonjs/partials/w3m-all-wallets-search/styles.js.map +1 -1
  45. package/lib/commonjs/partials/w3m-connecting-body/index.js +2 -2
  46. package/lib/commonjs/partials/w3m-connecting-body/index.js.map +1 -1
  47. package/lib/commonjs/partials/w3m-connecting-mobile/index.js +21 -20
  48. package/lib/commonjs/partials/w3m-connecting-mobile/index.js.map +1 -1
  49. package/lib/commonjs/partials/w3m-connecting-mobile/styles.js +2 -1
  50. package/lib/commonjs/partials/w3m-connecting-mobile/styles.js.map +1 -1
  51. package/lib/commonjs/partials/w3m-connecting-qrcode/components/ReownButton.js +36 -0
  52. package/lib/commonjs/partials/w3m-connecting-qrcode/components/ReownButton.js.map +1 -0
  53. package/lib/commonjs/partials/w3m-connecting-qrcode/index.js +16 -14
  54. package/lib/commonjs/partials/w3m-connecting-qrcode/index.js.map +1 -1
  55. package/lib/commonjs/partials/w3m-connecting-qrcode/styles.js +3 -0
  56. package/lib/commonjs/partials/w3m-connecting-qrcode/styles.js.map +1 -1
  57. package/lib/commonjs/partials/w3m-connecting-web/index.js +16 -13
  58. package/lib/commonjs/partials/w3m-connecting-web/index.js.map +1 -1
  59. package/lib/commonjs/partials/w3m-connecting-web/styles.js +3 -0
  60. package/lib/commonjs/partials/w3m-connecting-web/styles.js.map +1 -1
  61. package/lib/commonjs/partials/w3m-header/index.js +6 -5
  62. package/lib/commonjs/partials/w3m-header/index.js.map +1 -1
  63. package/lib/commonjs/partials/w3m-placeholder/index.js +5 -5
  64. package/lib/commonjs/partials/w3m-placeholder/index.js.map +1 -1
  65. package/lib/commonjs/partials/w3m-selector-modal/index.js +73 -58
  66. package/lib/commonjs/partials/w3m-selector-modal/index.js.map +1 -1
  67. package/lib/commonjs/partials/w3m-selector-modal/styles.js +9 -11
  68. package/lib/commonjs/partials/w3m-selector-modal/styles.js.map +1 -1
  69. package/lib/commonjs/partials/w3m-send-input-token/index.js +2 -2
  70. package/lib/commonjs/partials/w3m-send-input-token/index.js.map +1 -1
  71. package/lib/commonjs/partials/w3m-swap-input/index.js +2 -2
  72. package/lib/commonjs/partials/w3m-swap-input/index.js.map +1 -1
  73. package/lib/commonjs/types.js +6 -0
  74. package/lib/commonjs/types.js.map +1 -0
  75. package/lib/commonjs/utils/HelpersUtil.js +20 -0
  76. package/lib/commonjs/utils/HelpersUtil.js.map +1 -1
  77. package/lib/commonjs/utils/NetworkUtil.js +2 -2
  78. package/lib/commonjs/utils/NetworkUtil.js.map +1 -1
  79. package/lib/commonjs/utils/UiUtil.js +4 -14
  80. package/lib/commonjs/utils/UiUtil.js.map +1 -1
  81. package/lib/commonjs/views/w3m-account-default-view/components/auth-buttons.js +2 -2
  82. package/lib/commonjs/views/w3m-account-default-view/components/auth-buttons.js.map +1 -1
  83. package/lib/commonjs/views/w3m-account-default-view/index.js +21 -22
  84. package/lib/commonjs/views/w3m-account-default-view/index.js.map +1 -1
  85. package/lib/commonjs/views/w3m-account-view/index.js +5 -21
  86. package/lib/commonjs/views/w3m-account-view/index.js.map +1 -1
  87. package/lib/commonjs/views/w3m-account-view/styles.js +0 -5
  88. package/lib/commonjs/views/w3m-account-view/styles.js.map +1 -1
  89. package/lib/commonjs/views/w3m-all-wallets-view/index.js +8 -16
  90. package/lib/commonjs/views/w3m-all-wallets-view/index.js.map +1 -1
  91. package/lib/commonjs/views/w3m-connect-socials-view/index.js +3 -4
  92. package/lib/commonjs/views/w3m-connect-socials-view/index.js.map +1 -1
  93. package/lib/commonjs/views/w3m-connect-view/components/all-wallet-list.js +22 -14
  94. package/lib/commonjs/views/w3m-connect-view/components/all-wallet-list.js.map +1 -1
  95. package/lib/commonjs/views/w3m-connect-view/components/social-login-list.js +4 -4
  96. package/lib/commonjs/views/w3m-connect-view/components/social-login-list.js.map +1 -1
  97. package/lib/commonjs/views/w3m-connect-view/index.js +12 -21
  98. package/lib/commonjs/views/w3m-connect-view/index.js.map +1 -1
  99. package/lib/commonjs/views/w3m-connecting-external-view/index.js +36 -23
  100. package/lib/commonjs/views/w3m-connecting-external-view/index.js.map +1 -1
  101. package/lib/commonjs/views/w3m-connecting-external-view/styles.js +1 -1
  102. package/lib/commonjs/views/w3m-connecting-external-view/styles.js.map +1 -1
  103. package/lib/commonjs/views/w3m-connecting-siwe-view/index.js +60 -63
  104. package/lib/commonjs/views/w3m-connecting-siwe-view/index.js.map +1 -1
  105. package/lib/commonjs/views/w3m-connecting-siwe-view/styles.js +0 -7
  106. package/lib/commonjs/views/w3m-connecting-siwe-view/styles.js.map +1 -1
  107. package/lib/commonjs/views/w3m-connecting-social-view/index.js +42 -40
  108. package/lib/commonjs/views/w3m-connecting-social-view/index.js.map +1 -1
  109. package/lib/commonjs/views/w3m-connecting-view/index.js +9 -11
  110. package/lib/commonjs/views/w3m-connecting-view/index.js.map +1 -1
  111. package/lib/commonjs/views/w3m-get-wallet-view/index.js +7 -4
  112. package/lib/commonjs/views/w3m-get-wallet-view/index.js.map +1 -1
  113. package/lib/commonjs/views/w3m-network-switch-view/index.js +63 -81
  114. package/lib/commonjs/views/w3m-network-switch-view/index.js.map +1 -1
  115. package/lib/commonjs/views/w3m-networks-view/index.js +27 -16
  116. package/lib/commonjs/views/w3m-networks-view/index.js.map +1 -1
  117. package/lib/commonjs/views/w3m-onramp-checkout-view/index.js +159 -151
  118. package/lib/commonjs/views/w3m-onramp-checkout-view/index.js.map +1 -1
  119. package/lib/commonjs/views/w3m-onramp-loading-view/index.js +5 -6
  120. package/lib/commonjs/views/w3m-onramp-loading-view/index.js.map +1 -1
  121. package/lib/commonjs/views/w3m-onramp-loading-view/styles.js +1 -1
  122. package/lib/commonjs/views/w3m-onramp-loading-view/styles.js.map +1 -1
  123. package/lib/commonjs/views/w3m-onramp-settings-view/components/Country.js +7 -6
  124. package/lib/commonjs/views/w3m-onramp-settings-view/components/Country.js.map +1 -1
  125. package/lib/commonjs/views/w3m-onramp-settings-view/index.js +19 -11
  126. package/lib/commonjs/views/w3m-onramp-settings-view/index.js.map +1 -1
  127. package/lib/commonjs/views/w3m-onramp-settings-view/styles.js +4 -1
  128. package/lib/commonjs/views/w3m-onramp-settings-view/styles.js.map +1 -1
  129. package/lib/commonjs/views/w3m-onramp-settings-view/utils.js +17 -1
  130. package/lib/commonjs/views/w3m-onramp-settings-view/utils.js.map +1 -1
  131. package/lib/commonjs/views/w3m-onramp-transaction-view/index.js +6 -6
  132. package/lib/commonjs/views/w3m-onramp-transaction-view/index.js.map +1 -1
  133. package/lib/commonjs/views/w3m-onramp-view/components/Currency.js +5 -4
  134. package/lib/commonjs/views/w3m-onramp-view/components/Currency.js.map +1 -1
  135. package/lib/commonjs/views/w3m-onramp-view/components/CurrencyInput.js +2 -2
  136. package/lib/commonjs/views/w3m-onramp-view/components/CurrencyInput.js.map +1 -1
  137. package/lib/commonjs/views/w3m-onramp-view/components/Header.js +2 -2
  138. package/lib/commonjs/views/w3m-onramp-view/components/Header.js.map +1 -1
  139. package/lib/commonjs/views/w3m-onramp-view/components/PaymentButton.js +4 -4
  140. package/lib/commonjs/views/w3m-onramp-view/components/PaymentButton.js.map +1 -1
  141. package/lib/commonjs/views/w3m-onramp-view/components/PaymentMethod.js +2 -2
  142. package/lib/commonjs/views/w3m-onramp-view/components/PaymentMethod.js.map +1 -1
  143. package/lib/commonjs/views/w3m-onramp-view/components/Quote.js +4 -4
  144. package/lib/commonjs/views/w3m-onramp-view/components/Quote.js.map +1 -1
  145. package/lib/commonjs/views/w3m-onramp-view/components/SelectPaymentModal.js +5 -2
  146. package/lib/commonjs/views/w3m-onramp-view/components/SelectPaymentModal.js.map +1 -1
  147. package/lib/commonjs/views/w3m-onramp-view/index.js +6 -5
  148. package/lib/commonjs/views/w3m-onramp-view/index.js.map +1 -1
  149. package/lib/commonjs/views/w3m-onramp-view/styles.js +3 -0
  150. package/lib/commonjs/views/w3m-onramp-view/styles.js.map +1 -1
  151. package/lib/commonjs/views/w3m-swap-preview-view/index.js +2 -3
  152. package/lib/commonjs/views/w3m-swap-preview-view/index.js.map +1 -1
  153. package/lib/commonjs/views/w3m-swap-preview-view/styles.js +0 -3
  154. package/lib/commonjs/views/w3m-swap-preview-view/styles.js.map +1 -1
  155. package/lib/commonjs/views/w3m-swap-view/components/select-token-modal/index.js +156 -0
  156. package/lib/commonjs/views/w3m-swap-view/components/select-token-modal/index.js.map +1 -0
  157. package/lib/commonjs/views/w3m-swap-view/components/{select-token-view → select-token-modal}/styles.js +6 -2
  158. package/lib/commonjs/views/w3m-swap-view/components/select-token-modal/styles.js.map +1 -0
  159. package/lib/commonjs/views/w3m-swap-view/components/select-token-modal/utils.js.map +1 -0
  160. package/lib/commonjs/views/w3m-swap-view/index.js +19 -20
  161. package/lib/commonjs/views/w3m-swap-view/index.js.map +1 -1
  162. package/lib/commonjs/views/w3m-swap-view/styles.js +0 -8
  163. package/lib/commonjs/views/w3m-swap-view/styles.js.map +1 -1
  164. package/lib/commonjs/views/w3m-unsupported-chain-view/index.js +8 -16
  165. package/lib/commonjs/views/w3m-unsupported-chain-view/index.js.map +1 -1
  166. package/lib/commonjs/views/w3m-unsupported-chain-view/styles.js +1 -1
  167. package/lib/commonjs/views/w3m-unsupported-chain-view/styles.js.map +1 -1
  168. package/lib/commonjs/views/w3m-upgrade-email-wallet-view/index.js +3 -5
  169. package/lib/commonjs/views/w3m-upgrade-email-wallet-view/index.js.map +1 -1
  170. package/lib/commonjs/views/w3m-wallet-compatible-networks-view/index.js +3 -4
  171. package/lib/commonjs/views/w3m-wallet-compatible-networks-view/index.js.map +1 -1
  172. package/lib/commonjs/views/w3m-wallet-receive-view/index.js +4 -5
  173. package/lib/commonjs/views/w3m-wallet-receive-view/index.js.map +1 -1
  174. package/lib/commonjs/views/w3m-wallet-send-preview-view/components/preview-send-details.js +1 -1
  175. package/lib/commonjs/views/w3m-wallet-send-preview-view/components/preview-send-details.js.map +1 -1
  176. package/lib/commonjs/views/w3m-wallet-send-preview-view/index.js +2 -3
  177. package/lib/commonjs/views/w3m-wallet-send-preview-view/index.js.map +1 -1
  178. package/lib/commonjs/views/w3m-wallet-send-select-token-view/index.js +7 -6
  179. package/lib/commonjs/views/w3m-wallet-send-select-token-view/index.js.map +1 -1
  180. package/lib/commonjs/views/w3m-wallet-send-view/index.js +12 -7
  181. package/lib/commonjs/views/w3m-wallet-send-view/index.js.map +1 -1
  182. package/lib/commonjs/views/w3m-wallet-send-view/styles.js +0 -3
  183. package/lib/commonjs/views/w3m-wallet-send-view/styles.js.map +1 -1
  184. package/lib/commonjs/views/w3m-what-is-a-network-view/index.js +2 -3
  185. package/lib/commonjs/views/w3m-what-is-a-network-view/index.js.map +1 -1
  186. package/lib/commonjs/views/w3m-what-is-a-wallet-view/index.js +2 -3
  187. package/lib/commonjs/views/w3m-what-is-a-wallet-view/index.js.map +1 -1
  188. package/lib/module/AppKit.js +176 -118
  189. package/lib/module/AppKit.js.map +1 -1
  190. package/lib/module/AppKitContext.js +1 -3
  191. package/lib/module/AppKitContext.js.map +1 -1
  192. package/lib/module/connectors/WalletConnectConnector.js +27 -10
  193. package/lib/module/connectors/WalletConnectConnector.js.map +1 -1
  194. package/lib/module/hooks/useAccount.js +9 -5
  195. package/lib/module/hooks/useAccount.js.map +1 -1
  196. package/lib/module/hooks/useAppKitEvents.js.map +1 -1
  197. package/lib/module/hooks/useProvider.js +30 -10
  198. package/lib/module/hooks/useProvider.js.map +1 -1
  199. package/lib/module/hooks/useRouteTransition.js +10 -4
  200. package/lib/module/hooks/useRouteTransition.js.map +1 -1
  201. package/lib/module/index.js.map +1 -1
  202. package/lib/module/modal/w3m-account-button/index.js +2 -2
  203. package/lib/module/modal/w3m-account-button/index.js.map +1 -1
  204. package/lib/module/modal/w3m-modal/index.js +22 -28
  205. package/lib/module/modal/w3m-modal/index.js.map +1 -1
  206. package/lib/module/modal/w3m-modal/styles.js +1 -2
  207. package/lib/module/modal/w3m-modal/styles.js.map +1 -1
  208. package/lib/module/modal/w3m-network-button/index.js +2 -2
  209. package/lib/module/modal/w3m-network-button/index.js.map +1 -1
  210. package/lib/module/modal/w3m-router/index.js +9 -3
  211. package/lib/module/modal/w3m-router/index.js.map +1 -1
  212. package/lib/module/partials/w3m-account-activity/index.js +10 -10
  213. package/lib/module/partials/w3m-account-activity/index.js.map +1 -1
  214. package/lib/module/partials/w3m-account-tokens/index.js +6 -6
  215. package/lib/module/partials/w3m-account-tokens/index.js.map +1 -1
  216. package/lib/module/partials/w3m-account-wallet-features/index.js +7 -10
  217. package/lib/module/partials/w3m-account-wallet-features/index.js.map +1 -1
  218. package/lib/module/partials/w3m-all-wallets-list/components/Loading.js +21 -0
  219. package/lib/module/partials/w3m-all-wallets-list/components/Loading.js.map +1 -0
  220. package/lib/module/partials/w3m-all-wallets-list/components/WalletItem.js +36 -0
  221. package/lib/module/partials/w3m-all-wallets-list/components/WalletItem.js.map +1 -0
  222. package/lib/module/partials/w3m-all-wallets-list/components/WalletList.js +87 -0
  223. package/lib/module/partials/w3m-all-wallets-list/components/WalletList.js.map +1 -0
  224. package/lib/module/partials/w3m-all-wallets-list/index.js +22 -79
  225. package/lib/module/partials/w3m-all-wallets-list/index.js.map +1 -1
  226. package/lib/module/partials/w3m-all-wallets-list/styles.js +11 -7
  227. package/lib/module/partials/w3m-all-wallets-list/styles.js.map +1 -1
  228. package/lib/module/partials/w3m-all-wallets-search/index.js +28 -75
  229. package/lib/module/partials/w3m-all-wallets-search/index.js.map +1 -1
  230. package/lib/module/partials/w3m-all-wallets-search/styles.js +4 -5
  231. package/lib/module/partials/w3m-all-wallets-search/styles.js.map +1 -1
  232. package/lib/module/partials/w3m-connecting-body/index.js +2 -2
  233. package/lib/module/partials/w3m-connecting-body/index.js.map +1 -1
  234. package/lib/module/partials/w3m-connecting-mobile/index.js +22 -21
  235. package/lib/module/partials/w3m-connecting-mobile/index.js.map +1 -1
  236. package/lib/module/partials/w3m-connecting-mobile/styles.js +2 -1
  237. package/lib/module/partials/w3m-connecting-mobile/styles.js.map +1 -1
  238. package/lib/module/partials/w3m-connecting-qrcode/components/ReownButton.js +32 -0
  239. package/lib/module/partials/w3m-connecting-qrcode/components/ReownButton.js.map +1 -0
  240. package/lib/module/partials/w3m-connecting-qrcode/index.js +17 -15
  241. package/lib/module/partials/w3m-connecting-qrcode/index.js.map +1 -1
  242. package/lib/module/partials/w3m-connecting-qrcode/styles.js +3 -0
  243. package/lib/module/partials/w3m-connecting-qrcode/styles.js.map +1 -1
  244. package/lib/module/partials/w3m-connecting-web/index.js +17 -14
  245. package/lib/module/partials/w3m-connecting-web/index.js.map +1 -1
  246. package/lib/module/partials/w3m-connecting-web/styles.js +3 -0
  247. package/lib/module/partials/w3m-connecting-web/styles.js.map +1 -1
  248. package/lib/module/partials/w3m-header/index.js +7 -6
  249. package/lib/module/partials/w3m-header/index.js.map +1 -1
  250. package/lib/module/partials/w3m-placeholder/index.js +5 -5
  251. package/lib/module/partials/w3m-placeholder/index.js.map +1 -1
  252. package/lib/module/partials/w3m-selector-modal/index.js +75 -60
  253. package/lib/module/partials/w3m-selector-modal/index.js.map +1 -1
  254. package/lib/module/partials/w3m-selector-modal/styles.js +9 -11
  255. package/lib/module/partials/w3m-selector-modal/styles.js.map +1 -1
  256. package/lib/module/partials/w3m-send-input-token/index.js +2 -2
  257. package/lib/module/partials/w3m-send-input-token/index.js.map +1 -1
  258. package/lib/module/partials/w3m-swap-input/index.js +2 -2
  259. package/lib/module/partials/w3m-swap-input/index.js.map +1 -1
  260. package/lib/module/types.js +4 -0
  261. package/lib/module/types.js.map +1 -0
  262. package/lib/module/utils/HelpersUtil.js +21 -1
  263. package/lib/module/utils/HelpersUtil.js.map +1 -1
  264. package/lib/module/utils/NetworkUtil.js +2 -2
  265. package/lib/module/utils/NetworkUtil.js.map +1 -1
  266. package/lib/module/utils/UiUtil.js +6 -15
  267. package/lib/module/utils/UiUtil.js.map +1 -1
  268. package/lib/module/views/w3m-account-default-view/components/auth-buttons.js +2 -2
  269. package/lib/module/views/w3m-account-default-view/components/auth-buttons.js.map +1 -1
  270. package/lib/module/views/w3m-account-default-view/index.js +23 -24
  271. package/lib/module/views/w3m-account-default-view/index.js.map +1 -1
  272. package/lib/module/views/w3m-account-view/index.js +7 -23
  273. package/lib/module/views/w3m-account-view/index.js.map +1 -1
  274. package/lib/module/views/w3m-account-view/styles.js +1 -6
  275. package/lib/module/views/w3m-account-view/styles.js.map +1 -1
  276. package/lib/module/views/w3m-all-wallets-view/index.js +9 -17
  277. package/lib/module/views/w3m-all-wallets-view/index.js.map +1 -1
  278. package/lib/module/views/w3m-connect-socials-view/index.js +2 -3
  279. package/lib/module/views/w3m-connect-socials-view/index.js.map +1 -1
  280. package/lib/module/views/w3m-connect-view/components/all-wallet-list.js +23 -15
  281. package/lib/module/views/w3m-connect-view/components/all-wallet-list.js.map +1 -1
  282. package/lib/module/views/w3m-connect-view/components/social-login-list.js +4 -4
  283. package/lib/module/views/w3m-connect-view/components/social-login-list.js.map +1 -1
  284. package/lib/module/views/w3m-connect-view/index.js +12 -21
  285. package/lib/module/views/w3m-connect-view/index.js.map +1 -1
  286. package/lib/module/views/w3m-connecting-external-view/index.js +39 -26
  287. package/lib/module/views/w3m-connecting-external-view/index.js.map +1 -1
  288. package/lib/module/views/w3m-connecting-external-view/styles.js +1 -1
  289. package/lib/module/views/w3m-connecting-external-view/styles.js.map +1 -1
  290. package/lib/module/views/w3m-connecting-siwe-view/index.js +63 -66
  291. package/lib/module/views/w3m-connecting-siwe-view/index.js.map +1 -1
  292. package/lib/module/views/w3m-connecting-siwe-view/styles.js +0 -7
  293. package/lib/module/views/w3m-connecting-siwe-view/styles.js.map +1 -1
  294. package/lib/module/views/w3m-connecting-social-view/index.js +44 -42
  295. package/lib/module/views/w3m-connecting-social-view/index.js.map +1 -1
  296. package/lib/module/views/w3m-connecting-view/index.js +11 -13
  297. package/lib/module/views/w3m-connecting-view/index.js.map +1 -1
  298. package/lib/module/views/w3m-get-wallet-view/index.js +8 -5
  299. package/lib/module/views/w3m-get-wallet-view/index.js.map +1 -1
  300. package/lib/module/views/w3m-network-switch-view/index.js +68 -86
  301. package/lib/module/views/w3m-network-switch-view/index.js.map +1 -1
  302. package/lib/module/views/w3m-networks-view/index.js +29 -19
  303. package/lib/module/views/w3m-networks-view/index.js.map +1 -1
  304. package/lib/module/views/w3m-onramp-checkout-view/index.js +162 -154
  305. package/lib/module/views/w3m-onramp-checkout-view/index.js.map +1 -1
  306. package/lib/module/views/w3m-onramp-loading-view/index.js +5 -6
  307. package/lib/module/views/w3m-onramp-loading-view/index.js.map +1 -1
  308. package/lib/module/views/w3m-onramp-loading-view/styles.js +1 -1
  309. package/lib/module/views/w3m-onramp-loading-view/styles.js.map +1 -1
  310. package/lib/module/views/w3m-onramp-settings-view/components/Country.js +7 -6
  311. package/lib/module/views/w3m-onramp-settings-view/components/Country.js.map +1 -1
  312. package/lib/module/views/w3m-onramp-settings-view/index.js +20 -12
  313. package/lib/module/views/w3m-onramp-settings-view/index.js.map +1 -1
  314. package/lib/module/views/w3m-onramp-settings-view/styles.js +4 -1
  315. package/lib/module/views/w3m-onramp-settings-view/styles.js.map +1 -1
  316. package/lib/module/views/w3m-onramp-settings-view/utils.js +14 -0
  317. package/lib/module/views/w3m-onramp-settings-view/utils.js.map +1 -1
  318. package/lib/module/views/w3m-onramp-transaction-view/index.js +6 -6
  319. package/lib/module/views/w3m-onramp-transaction-view/index.js.map +1 -1
  320. package/lib/module/views/w3m-onramp-view/components/Currency.js +5 -4
  321. package/lib/module/views/w3m-onramp-view/components/Currency.js.map +1 -1
  322. package/lib/module/views/w3m-onramp-view/components/CurrencyInput.js +2 -2
  323. package/lib/module/views/w3m-onramp-view/components/CurrencyInput.js.map +1 -1
  324. package/lib/module/views/w3m-onramp-view/components/Header.js +3 -3
  325. package/lib/module/views/w3m-onramp-view/components/Header.js.map +1 -1
  326. package/lib/module/views/w3m-onramp-view/components/PaymentButton.js +4 -4
  327. package/lib/module/views/w3m-onramp-view/components/PaymentButton.js.map +1 -1
  328. package/lib/module/views/w3m-onramp-view/components/PaymentMethod.js +2 -2
  329. package/lib/module/views/w3m-onramp-view/components/PaymentMethod.js.map +1 -1
  330. package/lib/module/views/w3m-onramp-view/components/Quote.js +4 -4
  331. package/lib/module/views/w3m-onramp-view/components/Quote.js.map +1 -1
  332. package/lib/module/views/w3m-onramp-view/components/SelectPaymentModal.js +6 -3
  333. package/lib/module/views/w3m-onramp-view/components/SelectPaymentModal.js.map +1 -1
  334. package/lib/module/views/w3m-onramp-view/index.js +7 -6
  335. package/lib/module/views/w3m-onramp-view/index.js.map +1 -1
  336. package/lib/module/views/w3m-onramp-view/styles.js +3 -0
  337. package/lib/module/views/w3m-onramp-view/styles.js.map +1 -1
  338. package/lib/module/views/w3m-swap-preview-view/index.js +2 -3
  339. package/lib/module/views/w3m-swap-preview-view/index.js.map +1 -1
  340. package/lib/module/views/w3m-swap-preview-view/styles.js +0 -3
  341. package/lib/module/views/w3m-swap-preview-view/styles.js.map +1 -1
  342. package/lib/module/views/w3m-swap-view/components/select-token-modal/index.js +151 -0
  343. package/lib/module/views/w3m-swap-view/components/select-token-modal/index.js.map +1 -0
  344. package/lib/module/views/w3m-swap-view/components/{select-token-view → select-token-modal}/styles.js +6 -2
  345. package/lib/module/views/w3m-swap-view/components/select-token-modal/styles.js.map +1 -0
  346. package/lib/module/views/w3m-swap-view/components/{select-token-view → select-token-modal}/utils.js.map +1 -1
  347. package/lib/module/views/w3m-swap-view/index.js +20 -21
  348. package/lib/module/views/w3m-swap-view/index.js.map +1 -1
  349. package/lib/module/views/w3m-swap-view/styles.js +0 -8
  350. package/lib/module/views/w3m-swap-view/styles.js.map +1 -1
  351. package/lib/module/views/w3m-unsupported-chain-view/index.js +12 -20
  352. package/lib/module/views/w3m-unsupported-chain-view/index.js.map +1 -1
  353. package/lib/module/views/w3m-unsupported-chain-view/styles.js +1 -1
  354. package/lib/module/views/w3m-unsupported-chain-view/styles.js.map +1 -1
  355. package/lib/module/views/w3m-upgrade-email-wallet-view/index.js +4 -6
  356. package/lib/module/views/w3m-upgrade-email-wallet-view/index.js.map +1 -1
  357. package/lib/module/views/w3m-wallet-compatible-networks-view/index.js +4 -5
  358. package/lib/module/views/w3m-wallet-compatible-networks-view/index.js.map +1 -1
  359. package/lib/module/views/w3m-wallet-receive-view/index.js +5 -6
  360. package/lib/module/views/w3m-wallet-receive-view/index.js.map +1 -1
  361. package/lib/module/views/w3m-wallet-send-preview-view/components/preview-send-details.js +2 -2
  362. package/lib/module/views/w3m-wallet-send-preview-view/components/preview-send-details.js.map +1 -1
  363. package/lib/module/views/w3m-wallet-send-preview-view/index.js +2 -3
  364. package/lib/module/views/w3m-wallet-send-preview-view/index.js.map +1 -1
  365. package/lib/module/views/w3m-wallet-send-select-token-view/index.js +8 -7
  366. package/lib/module/views/w3m-wallet-send-select-token-view/index.js.map +1 -1
  367. package/lib/module/views/w3m-wallet-send-view/index.js +12 -7
  368. package/lib/module/views/w3m-wallet-send-view/index.js.map +1 -1
  369. package/lib/module/views/w3m-wallet-send-view/styles.js +0 -3
  370. package/lib/module/views/w3m-wallet-send-view/styles.js.map +1 -1
  371. package/lib/module/views/w3m-what-is-a-network-view/index.js +2 -3
  372. package/lib/module/views/w3m-what-is-a-network-view/index.js.map +1 -1
  373. package/lib/module/views/w3m-what-is-a-wallet-view/index.js +2 -3
  374. package/lib/module/views/w3m-what-is-a-wallet-view/index.js.map +1 -1
  375. package/lib/typescript/AppKit.d.ts +12 -27
  376. package/lib/typescript/AppKit.d.ts.map +1 -1
  377. package/lib/typescript/AppKitContext.d.ts +2 -2
  378. package/lib/typescript/AppKitContext.d.ts.map +1 -1
  379. package/lib/typescript/connectors/WalletConnectConnector.d.ts +1 -1
  380. package/lib/typescript/connectors/WalletConnectConnector.d.ts.map +1 -1
  381. package/lib/typescript/hooks/useAccount.d.ts +33 -1
  382. package/lib/typescript/hooks/useAccount.d.ts.map +1 -1
  383. package/lib/typescript/hooks/useAppKitEvents.d.ts +4 -3
  384. package/lib/typescript/hooks/useAppKitEvents.d.ts.map +1 -1
  385. package/lib/typescript/hooks/useProvider.d.ts +28 -1
  386. package/lib/typescript/hooks/useProvider.d.ts.map +1 -1
  387. package/lib/typescript/hooks/useRouteTransition.d.ts.map +1 -1
  388. package/lib/typescript/index.d.ts +1 -0
  389. package/lib/typescript/index.d.ts.map +1 -1
  390. package/lib/typescript/modal/w3m-account-button/index.d.ts.map +1 -1
  391. package/lib/typescript/modal/w3m-modal/index.d.ts.map +1 -1
  392. package/lib/typescript/modal/w3m-modal/styles.d.ts +0 -1
  393. package/lib/typescript/modal/w3m-modal/styles.d.ts.map +1 -1
  394. package/lib/typescript/modal/w3m-network-button/index.d.ts.map +1 -1
  395. package/lib/typescript/modal/w3m-router/index.d.ts.map +1 -1
  396. package/lib/typescript/partials/w3m-account-activity/index.d.ts.map +1 -1
  397. package/lib/typescript/partials/w3m-account-tokens/index.d.ts.map +1 -1
  398. package/lib/typescript/partials/w3m-account-wallet-features/index.d.ts +1 -4
  399. package/lib/typescript/partials/w3m-account-wallet-features/index.d.ts.map +1 -1
  400. package/lib/typescript/partials/w3m-all-wallets-list/components/Loading.d.ts +10 -0
  401. package/lib/typescript/partials/w3m-all-wallets-list/components/Loading.d.ts.map +1 -0
  402. package/lib/typescript/partials/w3m-all-wallets-list/components/WalletItem.d.ts +13 -0
  403. package/lib/typescript/partials/w3m-all-wallets-list/components/WalletItem.d.ts.map +1 -0
  404. package/lib/typescript/partials/w3m-all-wallets-list/components/WalletList.d.ts +14 -0
  405. package/lib/typescript/partials/w3m-all-wallets-list/components/WalletList.d.ts.map +1 -0
  406. package/lib/typescript/partials/w3m-all-wallets-list/index.d.ts +3 -4
  407. package/lib/typescript/partials/w3m-all-wallets-list/index.d.ts.map +1 -1
  408. package/lib/typescript/partials/w3m-all-wallets-list/styles.d.ts +10 -6
  409. package/lib/typescript/partials/w3m-all-wallets-list/styles.d.ts.map +1 -1
  410. package/lib/typescript/partials/w3m-all-wallets-search/index.d.ts +2 -4
  411. package/lib/typescript/partials/w3m-all-wallets-search/index.d.ts.map +1 -1
  412. package/lib/typescript/partials/w3m-all-wallets-search/styles.d.ts +3 -4
  413. package/lib/typescript/partials/w3m-all-wallets-search/styles.d.ts.map +1 -1
  414. package/lib/typescript/partials/w3m-connecting-header/index.d.ts +1 -1
  415. package/lib/typescript/partials/w3m-connecting-header/index.d.ts.map +1 -1
  416. package/lib/typescript/partials/w3m-connecting-mobile/index.d.ts.map +1 -1
  417. package/lib/typescript/partials/w3m-connecting-mobile/styles.d.ts +1 -0
  418. package/lib/typescript/partials/w3m-connecting-mobile/styles.d.ts.map +1 -1
  419. package/lib/typescript/partials/w3m-connecting-qrcode/components/ReownButton.d.ts +7 -0
  420. package/lib/typescript/partials/w3m-connecting-qrcode/components/ReownButton.d.ts.map +1 -0
  421. package/lib/typescript/partials/w3m-connecting-qrcode/index.d.ts.map +1 -1
  422. package/lib/typescript/partials/w3m-connecting-qrcode/styles.d.ts +3 -0
  423. package/lib/typescript/partials/w3m-connecting-qrcode/styles.d.ts.map +1 -1
  424. package/lib/typescript/partials/w3m-connecting-web/styles.d.ts +3 -0
  425. package/lib/typescript/partials/w3m-connecting-web/styles.d.ts.map +1 -1
  426. package/lib/typescript/partials/w3m-header/index.d.ts.map +1 -1
  427. package/lib/typescript/partials/w3m-selector-modal/index.d.ts +3 -1
  428. package/lib/typescript/partials/w3m-selector-modal/index.d.ts.map +1 -1
  429. package/lib/typescript/partials/w3m-selector-modal/styles.d.ts +6 -8
  430. package/lib/typescript/partials/w3m-selector-modal/styles.d.ts.map +1 -1
  431. package/lib/typescript/partials/w3m-swap-input/index.d.ts +1 -1
  432. package/lib/typescript/partials/w3m-swap-input/index.d.ts.map +1 -1
  433. package/lib/typescript/types.d.ts +156 -0
  434. package/lib/typescript/types.d.ts.map +1 -0
  435. package/lib/typescript/utils/HelpersUtil.d.ts +5 -3
  436. package/lib/typescript/utils/HelpersUtil.d.ts.map +1 -1
  437. package/lib/typescript/utils/NetworkUtil.d.ts +2 -3
  438. package/lib/typescript/utils/NetworkUtil.d.ts.map +1 -1
  439. package/lib/typescript/utils/UiUtil.d.ts +0 -4
  440. package/lib/typescript/utils/UiUtil.d.ts.map +1 -1
  441. package/lib/typescript/views/w3m-account-default-view/index.d.ts.map +1 -1
  442. package/lib/typescript/views/w3m-account-view/index.d.ts.map +1 -1
  443. package/lib/typescript/views/w3m-account-view/styles.d.ts +0 -3
  444. package/lib/typescript/views/w3m-account-view/styles.d.ts.map +1 -1
  445. package/lib/typescript/views/w3m-all-wallets-view/index.d.ts.map +1 -1
  446. package/lib/typescript/views/w3m-connect-socials-view/index.d.ts.map +1 -1
  447. package/lib/typescript/views/w3m-connect-view/components/all-wallet-list.d.ts +1 -1
  448. package/lib/typescript/views/w3m-connect-view/components/all-wallet-list.d.ts.map +1 -1
  449. package/lib/typescript/views/w3m-connect-view/index.d.ts.map +1 -1
  450. package/lib/typescript/views/w3m-connecting-external-view/index.d.ts.map +1 -1
  451. package/lib/typescript/views/w3m-connecting-siwe-view/index.d.ts.map +1 -1
  452. package/lib/typescript/views/w3m-connecting-siwe-view/styles.d.ts +0 -7
  453. package/lib/typescript/views/w3m-connecting-siwe-view/styles.d.ts.map +1 -1
  454. package/lib/typescript/views/w3m-connecting-social-view/index.d.ts.map +1 -1
  455. package/lib/typescript/views/w3m-connecting-view/index.d.ts.map +1 -1
  456. package/lib/typescript/views/w3m-get-wallet-view/index.d.ts.map +1 -1
  457. package/lib/typescript/views/w3m-network-switch-view/index.d.ts.map +1 -1
  458. package/lib/typescript/views/w3m-networks-view/index.d.ts.map +1 -1
  459. package/lib/typescript/views/w3m-onramp-checkout-view/index.d.ts.map +1 -1
  460. package/lib/typescript/views/w3m-onramp-loading-view/index.d.ts.map +1 -1
  461. package/lib/typescript/views/w3m-onramp-settings-view/components/Country.d.ts +4 -2
  462. package/lib/typescript/views/w3m-onramp-settings-view/components/Country.d.ts.map +1 -1
  463. package/lib/typescript/views/w3m-onramp-settings-view/index.d.ts.map +1 -1
  464. package/lib/typescript/views/w3m-onramp-settings-view/styles.d.ts +4 -1
  465. package/lib/typescript/views/w3m-onramp-settings-view/styles.d.ts.map +1 -1
  466. package/lib/typescript/views/w3m-onramp-settings-view/utils.d.ts +3 -1
  467. package/lib/typescript/views/w3m-onramp-settings-view/utils.d.ts.map +1 -1
  468. package/lib/typescript/views/w3m-onramp-view/components/Currency.d.ts +4 -2
  469. package/lib/typescript/views/w3m-onramp-view/components/Currency.d.ts.map +1 -1
  470. package/lib/typescript/views/w3m-onramp-view/components/PaymentMethod.d.ts +1 -1
  471. package/lib/typescript/views/w3m-onramp-view/components/PaymentMethod.d.ts.map +1 -1
  472. package/lib/typescript/views/w3m-onramp-view/components/Quote.d.ts +1 -1
  473. package/lib/typescript/views/w3m-onramp-view/components/Quote.d.ts.map +1 -1
  474. package/lib/typescript/views/w3m-onramp-view/components/SelectPaymentModal.d.ts.map +1 -1
  475. package/lib/typescript/views/w3m-onramp-view/index.d.ts.map +1 -1
  476. package/lib/typescript/views/w3m-onramp-view/styles.d.ts +3 -0
  477. package/lib/typescript/views/w3m-onramp-view/styles.d.ts.map +1 -1
  478. package/lib/typescript/views/w3m-onramp-view/utils.d.ts +1 -1
  479. package/lib/typescript/views/w3m-onramp-view/utils.d.ts.map +1 -1
  480. package/lib/typescript/views/w3m-swap-preview-view/index.d.ts.map +1 -1
  481. package/lib/typescript/views/w3m-swap-preview-view/styles.d.ts +0 -3
  482. package/lib/typescript/views/w3m-swap-preview-view/styles.d.ts.map +1 -1
  483. package/lib/typescript/views/w3m-swap-view/components/select-token-modal/index.d.ts +11 -0
  484. package/lib/typescript/views/w3m-swap-view/components/select-token-modal/index.d.ts.map +1 -0
  485. package/lib/typescript/views/w3m-swap-view/components/{select-token-view → select-token-modal}/styles.d.ts +6 -2
  486. package/lib/typescript/views/w3m-swap-view/components/{select-token-view → select-token-modal}/styles.d.ts.map +1 -1
  487. package/lib/typescript/views/w3m-swap-view/components/{select-token-view → select-token-modal}/utils.d.ts +1 -1
  488. package/lib/typescript/views/w3m-swap-view/components/select-token-modal/utils.d.ts.map +1 -0
  489. package/lib/typescript/views/w3m-swap-view/index.d.ts.map +1 -1
  490. package/lib/typescript/views/w3m-swap-view/styles.d.ts +0 -8
  491. package/lib/typescript/views/w3m-swap-view/styles.d.ts.map +1 -1
  492. package/lib/typescript/views/w3m-unsupported-chain-view/index.d.ts.map +1 -1
  493. package/lib/typescript/views/w3m-upgrade-email-wallet-view/index.d.ts.map +1 -1
  494. package/lib/typescript/views/w3m-wallet-compatible-networks-view/index.d.ts.map +1 -1
  495. package/lib/typescript/views/w3m-wallet-receive-view/index.d.ts.map +1 -1
  496. package/lib/typescript/views/w3m-wallet-send-preview-view/index.d.ts.map +1 -1
  497. package/lib/typescript/views/w3m-wallet-send-select-token-view/index.d.ts.map +1 -1
  498. package/lib/typescript/views/w3m-wallet-send-view/index.d.ts.map +1 -1
  499. package/lib/typescript/views/w3m-wallet-send-view/styles.d.ts +0 -3
  500. package/lib/typescript/views/w3m-wallet-send-view/styles.d.ts.map +1 -1
  501. package/lib/typescript/views/w3m-what-is-a-network-view/index.d.ts.map +1 -1
  502. package/lib/typescript/views/w3m-what-is-a-wallet-view/index.d.ts.map +1 -1
  503. package/package.json +7 -6
  504. package/src/AppKit.ts +216 -164
  505. package/src/AppKitContext.tsx +1 -2
  506. package/src/connectors/WalletConnectConnector.ts +34 -11
  507. package/src/hooks/useAccount.ts +10 -5
  508. package/src/hooks/useAppKitEvents.ts +2 -5
  509. package/src/hooks/useProvider.ts +30 -9
  510. package/src/hooks/useRouteTransition.ts +11 -4
  511. package/src/index.ts +1 -0
  512. package/src/modal/w3m-account-button/index.tsx +3 -2
  513. package/src/modal/w3m-modal/index.tsx +18 -26
  514. package/src/modal/w3m-modal/styles.ts +1 -2
  515. package/src/modal/w3m-network-button/index.tsx +2 -1
  516. package/src/modal/w3m-router/index.tsx +5 -3
  517. package/src/partials/w3m-account-activity/index.tsx +10 -9
  518. package/src/partials/w3m-account-tokens/index.tsx +4 -3
  519. package/src/partials/w3m-account-wallet-features/index.tsx +8 -14
  520. package/src/partials/w3m-all-wallets-list/components/Loading.tsx +24 -0
  521. package/src/partials/w3m-all-wallets-list/components/WalletItem.tsx +38 -0
  522. package/src/partials/w3m-all-wallets-list/components/WalletList.tsx +97 -0
  523. package/src/partials/w3m-all-wallets-list/index.tsx +29 -87
  524. package/src/partials/w3m-all-wallets-list/styles.ts +11 -7
  525. package/src/partials/w3m-all-wallets-search/index.tsx +27 -92
  526. package/src/partials/w3m-all-wallets-search/styles.ts +4 -5
  527. package/src/partials/w3m-connecting-body/index.tsx +2 -2
  528. package/src/partials/w3m-connecting-header/index.tsx +1 -1
  529. package/src/partials/w3m-connecting-mobile/index.tsx +27 -26
  530. package/src/partials/w3m-connecting-mobile/styles.ts +2 -1
  531. package/src/partials/w3m-connecting-qrcode/components/ReownButton.tsx +20 -0
  532. package/src/partials/w3m-connecting-qrcode/index.tsx +22 -17
  533. package/src/partials/w3m-connecting-qrcode/styles.ts +3 -0
  534. package/src/partials/w3m-connecting-web/index.tsx +17 -17
  535. package/src/partials/w3m-connecting-web/styles.ts +3 -0
  536. package/src/partials/w3m-header/index.tsx +9 -6
  537. package/src/partials/w3m-placeholder/index.tsx +8 -8
  538. package/src/partials/w3m-selector-modal/index.tsx +82 -62
  539. package/src/partials/w3m-selector-modal/styles.ts +9 -11
  540. package/src/partials/w3m-send-input-token/index.tsx +2 -2
  541. package/src/partials/w3m-swap-input/index.tsx +3 -4
  542. package/src/types.ts +187 -0
  543. package/src/utils/HelpersUtil.ts +33 -2
  544. package/src/utils/NetworkUtil.ts +4 -4
  545. package/src/utils/UiUtil.ts +5 -25
  546. package/src/views/w3m-account-default-view/components/auth-buttons.tsx +2 -2
  547. package/src/views/w3m-account-default-view/index.tsx +30 -29
  548. package/src/views/w3m-account-view/index.tsx +7 -30
  549. package/src/views/w3m-account-view/styles.ts +1 -4
  550. package/src/views/w3m-all-wallets-view/index.tsx +21 -31
  551. package/src/views/w3m-connect-socials-view/index.tsx +2 -3
  552. package/src/views/w3m-connect-view/components/all-wallet-list.tsx +34 -25
  553. package/src/views/w3m-connect-view/components/social-login-list.tsx +4 -4
  554. package/src/views/w3m-connect-view/index.tsx +22 -23
  555. package/src/views/w3m-connecting-external-view/index.tsx +39 -28
  556. package/src/views/w3m-connecting-external-view/styles.ts +1 -1
  557. package/src/views/w3m-connecting-siwe-view/index.tsx +48 -50
  558. package/src/views/w3m-connecting-siwe-view/styles.ts +0 -7
  559. package/src/views/w3m-connecting-social-view/index.tsx +43 -41
  560. package/src/views/w3m-connecting-view/index.tsx +12 -14
  561. package/src/views/w3m-get-wallet-view/index.tsx +7 -5
  562. package/src/views/w3m-network-switch-view/index.tsx +71 -97
  563. package/src/views/w3m-networks-view/index.tsx +32 -23
  564. package/src/views/w3m-onramp-checkout-view/index.tsx +149 -144
  565. package/src/views/w3m-onramp-loading-view/index.tsx +11 -9
  566. package/src/views/w3m-onramp-loading-view/styles.ts +1 -1
  567. package/src/views/w3m-onramp-settings-view/components/Country.tsx +14 -7
  568. package/src/views/w3m-onramp-settings-view/index.tsx +22 -14
  569. package/src/views/w3m-onramp-settings-view/styles.ts +4 -1
  570. package/src/views/w3m-onramp-settings-view/utils.ts +20 -5
  571. package/src/views/w3m-onramp-transaction-view/index.tsx +7 -7
  572. package/src/views/w3m-onramp-view/components/Currency.tsx +7 -6
  573. package/src/views/w3m-onramp-view/components/CurrencyInput.tsx +2 -2
  574. package/src/views/w3m-onramp-view/components/Header.tsx +3 -3
  575. package/src/views/w3m-onramp-view/components/PaymentButton.tsx +4 -4
  576. package/src/views/w3m-onramp-view/components/PaymentMethod.tsx +4 -3
  577. package/src/views/w3m-onramp-view/components/Quote.tsx +4 -5
  578. package/src/views/w3m-onramp-view/components/SelectPaymentModal.tsx +8 -8
  579. package/src/views/w3m-onramp-view/index.tsx +12 -7
  580. package/src/views/w3m-onramp-view/styles.ts +3 -0
  581. package/src/views/w3m-swap-preview-view/index.tsx +10 -3
  582. package/src/views/w3m-swap-preview-view/styles.ts +0 -3
  583. package/src/views/w3m-swap-view/components/select-token-modal/index.tsx +181 -0
  584. package/src/views/w3m-swap-view/components/{select-token-view → select-token-modal}/styles.ts +6 -2
  585. package/src/views/w3m-swap-view/components/{select-token-view → select-token-modal}/utils.ts +2 -1
  586. package/src/views/w3m-swap-view/index.tsx +22 -17
  587. package/src/views/w3m-swap-view/styles.ts +0 -8
  588. package/src/views/w3m-unsupported-chain-view/index.tsx +9 -12
  589. package/src/views/w3m-unsupported-chain-view/styles.ts +1 -1
  590. package/src/views/w3m-upgrade-email-wallet-view/index.tsx +4 -6
  591. package/src/views/w3m-wallet-compatible-networks-view/index.tsx +10 -4
  592. package/src/views/w3m-wallet-receive-view/index.tsx +9 -5
  593. package/src/views/w3m-wallet-send-preview-view/components/preview-send-details.tsx +2 -2
  594. package/src/views/w3m-wallet-send-preview-view/index.tsx +11 -3
  595. package/src/views/w3m-wallet-send-select-token-view/index.tsx +12 -6
  596. package/src/views/w3m-wallet-send-view/index.tsx +6 -6
  597. package/src/views/w3m-wallet-send-view/styles.ts +0 -3
  598. package/src/views/w3m-what-is-a-network-view/index.tsx +2 -3
  599. package/src/views/w3m-what-is-a-wallet-view/index.tsx +2 -3
  600. package/lib/commonjs/hooks/useCustomDimensions.js +0 -33
  601. package/lib/commonjs/hooks/useCustomDimensions.js.map +0 -1
  602. package/lib/commonjs/views/w3m-connect-view/components/custom-wallet-list.js +0 -39
  603. package/lib/commonjs/views/w3m-connect-view/components/custom-wallet-list.js.map +0 -1
  604. package/lib/commonjs/views/w3m-connect-view/components/recent-wallet-list.js +0 -38
  605. package/lib/commonjs/views/w3m-connect-view/components/recent-wallet-list.js.map +0 -1
  606. package/lib/commonjs/views/w3m-connect-view/utils.js +0 -14
  607. package/lib/commonjs/views/w3m-connect-view/utils.js.map +0 -1
  608. package/lib/commonjs/views/w3m-swap-view/components/select-token-view/index.js +0 -146
  609. package/lib/commonjs/views/w3m-swap-view/components/select-token-view/index.js.map +0 -1
  610. package/lib/commonjs/views/w3m-swap-view/components/select-token-view/styles.js.map +0 -1
  611. package/lib/commonjs/views/w3m-swap-view/components/select-token-view/utils.js.map +0 -1
  612. package/lib/module/hooks/useCustomDimensions.js +0 -30
  613. package/lib/module/hooks/useCustomDimensions.js.map +0 -1
  614. package/lib/module/views/w3m-connect-view/components/custom-wallet-list.js +0 -35
  615. package/lib/module/views/w3m-connect-view/components/custom-wallet-list.js.map +0 -1
  616. package/lib/module/views/w3m-connect-view/components/recent-wallet-list.js +0 -34
  617. package/lib/module/views/w3m-connect-view/components/recent-wallet-list.js.map +0 -1
  618. package/lib/module/views/w3m-connect-view/utils.js +0 -9
  619. package/lib/module/views/w3m-connect-view/utils.js.map +0 -1
  620. package/lib/module/views/w3m-swap-view/components/select-token-view/index.js +0 -141
  621. package/lib/module/views/w3m-swap-view/components/select-token-view/index.js.map +0 -1
  622. package/lib/module/views/w3m-swap-view/components/select-token-view/styles.js.map +0 -1
  623. package/lib/typescript/hooks/useCustomDimensions.d.ts +0 -11
  624. package/lib/typescript/hooks/useCustomDimensions.d.ts.map +0 -1
  625. package/lib/typescript/views/w3m-connect-view/components/custom-wallet-list.d.ts +0 -9
  626. package/lib/typescript/views/w3m-connect-view/components/custom-wallet-list.d.ts.map +0 -1
  627. package/lib/typescript/views/w3m-connect-view/components/recent-wallet-list.d.ts +0 -9
  628. package/lib/typescript/views/w3m-connect-view/components/recent-wallet-list.d.ts.map +0 -1
  629. package/lib/typescript/views/w3m-connect-view/utils.d.ts +0 -3
  630. package/lib/typescript/views/w3m-connect-view/utils.d.ts.map +0 -1
  631. package/lib/typescript/views/w3m-swap-view/components/select-token-view/index.d.ts +0 -10
  632. package/lib/typescript/views/w3m-swap-view/components/select-token-view/index.d.ts.map +0 -1
  633. package/lib/typescript/views/w3m-swap-view/components/select-token-view/utils.d.ts.map +0 -1
  634. package/src/hooks/useCustomDimensions.ts +0 -21
  635. package/src/views/w3m-connect-view/components/custom-wallet-list.tsx +0 -43
  636. package/src/views/w3m-connect-view/components/recent-wallet-list.tsx +0 -43
  637. package/src/views/w3m-connect-view/utils.ts +0 -14
  638. package/src/views/w3m-swap-view/components/select-token-view/index.tsx +0 -175
  639. /package/lib/commonjs/views/w3m-swap-view/components/{select-token-view → select-token-modal}/utils.js +0 -0
  640. /package/lib/module/views/w3m-swap-view/components/{select-token-view → select-token-modal}/utils.js +0 -0
package/src/AppKit.ts CHANGED
@@ -1,5 +1,5 @@
1
+ import { subscribeKey } from 'valtio/utils';
1
2
  import {
2
- type Features,
3
3
  EventsController,
4
4
  ModalController,
5
5
  ConnectionsController,
@@ -7,14 +7,15 @@ import {
7
7
  RouterController,
8
8
  TransactionsController,
9
9
  StorageUtil,
10
- type OptionsControllerState,
11
10
  ThemeController,
12
- ConnectionController,
11
+ WcController,
13
12
  SwapController,
14
13
  OnRampController,
15
14
  CoreHelperUtil,
16
15
  SendController,
17
- BlockchainApiController
16
+ BlockchainApiController,
17
+ WalletUtil,
18
+ type RouterControllerState
18
19
  } from '@reown/appkit-core-react-native';
19
20
 
20
21
  import {
@@ -23,23 +24,18 @@ import {
23
24
  type ProposalNamespaces,
24
25
  type ConnectorType,
25
26
  type Namespaces,
26
- type Metadata,
27
27
  type CaipNetworkId,
28
28
  type AppKitNetwork,
29
29
  type Provider,
30
- type ThemeVariables,
31
- type ThemeMode,
32
30
  type WalletInfo,
33
- type Network,
34
31
  type ChainNamespace,
35
- type Storage,
36
32
  type AppKitConnectOptions,
37
- type AppKitSIWEClient,
38
33
  type ConnectionProperties,
39
34
  type AccountType,
40
35
  type AppKitOpenOptions,
41
36
  ConstantsUtil,
42
- type Connection
37
+ type Connection,
38
+ type WcWallet
43
39
  } from '@reown/appkit-common-react-native';
44
40
  import { SIWEController } from '@reown/appkit-siwe-react-native';
45
41
 
@@ -47,29 +43,7 @@ import { WalletConnectConnector } from './connectors/WalletConnectConnector';
47
43
  import { WcHelpersUtil } from './utils/HelpersUtil';
48
44
  import { NetworkUtil } from './utils/NetworkUtil';
49
45
  import { RouterUtil } from './utils/RouterUtil';
50
-
51
- interface AppKitConfig {
52
- projectId: string;
53
- metadata: Metadata;
54
- adapters: BlockchainAdapter[];
55
- networks: Network[];
56
- storage: Storage;
57
- extraConnectors?: WalletConnector[];
58
- clipboardClient?: OptionsControllerState['clipboardClient'];
59
- includeWalletIds?: OptionsControllerState['includeWalletIds'];
60
- excludeWalletIds?: OptionsControllerState['excludeWalletIds'];
61
- featuredWalletIds?: OptionsControllerState['featuredWalletIds'];
62
- customWallets?: OptionsControllerState['customWallets'];
63
- tokens?: OptionsControllerState['tokens']; //TODO: check if needed in OptionsController
64
- enableAnalytics?: OptionsControllerState['enableAnalytics'];
65
- debug?: OptionsControllerState['debug'];
66
- themeMode?: ThemeMode;
67
- themeVariables?: ThemeVariables;
68
- siweConfig?: AppKitSIWEClient;
69
- defaultNetwork?: Network;
70
- features?: Features;
71
- // chainImages?: Record<number, string>; //TODO: rename to networkImages
72
- }
46
+ import { type AppKitConfig } from './types';
73
47
 
74
48
  export class AppKit {
75
49
  private projectId: string;
@@ -79,6 +53,7 @@ export class AppKit {
79
53
  private config: AppKitConfig;
80
54
  private extraConnectors: WalletConnector[];
81
55
  private walletConnectConnector?: WalletConnector;
56
+ private balanceIntervalId?: ReturnType<typeof setInterval>;
82
57
 
83
58
  constructor(config: AppKitConfig) {
84
59
  this.projectId = config.projectId;
@@ -115,12 +90,16 @@ export class AppKit {
115
90
  });
116
91
 
117
92
  this.networks = networksWithAdapters;
118
- this.namespaces = WcHelpersUtil.createNamespaces(this.networks) as ProposalNamespaces;
93
+ this.namespaces = WcHelpersUtil.createNamespaces(
94
+ this.networks,
95
+ config.universalProviderConfigOverride
96
+ ) as ProposalNamespaces;
119
97
  this.config = config;
120
98
  this.extraConnectors = config.extraConnectors || [];
121
99
 
122
100
  this.initControllers(config);
123
101
  this.initConnectors();
102
+ this.watchBalance();
124
103
  }
125
104
 
126
105
  /**
@@ -128,59 +107,42 @@ export class AppKit {
128
107
  * @param type - The type of connector to use.
129
108
  * @param options - Optional connection options.
130
109
  */
131
- async connect(type: ConnectorType, options?: AppKitConnectOptions): Promise<void> {
110
+ async connect(options?: AppKitConnectOptions): Promise<void> {
132
111
  try {
133
- const { namespaces, defaultChain, universalLink } = options ?? {};
134
- const connector = await this.createConnector(type);
135
-
136
- const chain =
137
- defaultChain ??
138
- NetworkUtil.getDefaultChainId(this.namespaces, OptionsController.state.defaultNetwork);
112
+ const { wallet, walletId } = options ?? {};
139
113
 
140
- const approvedNamespaces = await connector.connect({
141
- namespaces: namespaces ?? this.namespaces,
142
- defaultChain: chain,
143
- universalLink,
144
- siweConfig: this.config?.siweConfig
145
- });
114
+ let targetWallet: WcWallet | undefined;
146
115
 
147
- const walletInfo = connector.getWalletInfo();
148
- const properties = connector.getProperties();
149
-
150
- if (!approvedNamespaces || Object.keys(approvedNamespaces).length === 0) {
151
- throw new Error('Connection cancelled or failed: No approved namespaces returned.');
116
+ if (walletId) {
117
+ targetWallet = WalletUtil.getWallet(walletId);
118
+ } else if (wallet) {
119
+ targetWallet = wallet;
152
120
  }
153
121
 
154
- // Setup adapters and subscribe to adapter events
155
- const approvedAdapters = this.setupAdaptersAndSubscribe(
156
- connector,
157
- Object.keys(approvedNamespaces)
158
- );
122
+ const connectorType = WcHelpersUtil.getConnectorTypeByWallet(targetWallet);
159
123
 
160
- // Check if any compatible adapters were found for the *approved* namespaces
161
- if (approvedAdapters.length === 0) {
162
- //TODO: handle case where devs want to connect to a namespace that has no adapters. Could use the provider directly.
163
- throw new Error('No compatible adapters found for the approved namespaces');
164
- }
124
+ const connector = await this.createConnector(connectorType);
165
125
 
166
- // Store the connection details for the successfully connected adapters
167
- this.setConnection(approvedAdapters, approvedNamespaces, walletInfo, properties);
126
+ const chain = NetworkUtil.getDefaultNetwork(
127
+ this.namespaces,
128
+ OptionsController.state.defaultNetwork
129
+ );
168
130
 
169
- // Store connector type and namespaces in storage
170
- await StorageUtil.setConnectedConnectors({
171
- type: connector.type,
172
- namespaces: Object.keys(approvedNamespaces)
131
+ const approvedNamespaces = await connector.connect({
132
+ namespaces: this.namespaces,
133
+ defaultNetwork: chain,
134
+ universalLink: targetWallet?.link_mode ?? undefined,
135
+ siweConfig: this.config?.siweConfig
173
136
  });
174
137
 
175
- this.syncAccounts(approvedAdapters);
138
+ this.processConnection(connector, approvedNamespaces);
176
139
 
177
- if (
178
- OptionsController.state.isSiweEnabled &&
179
- ConnectionsController.state.activeNamespace === 'eip155'
180
- ) {
181
- this.handleSiweChange({ isConnection: true });
182
- } else {
183
- ModalController.close();
140
+ // Save connector type and namespaces in storage
141
+ if (approvedNamespaces && Object.keys(approvedNamespaces).length > 0) {
142
+ await StorageUtil.setConnectedConnectors({
143
+ type: connector.type,
144
+ namespaces: Object.keys(approvedNamespaces)
145
+ });
184
146
  }
185
147
  } catch (error) {
186
148
  console.warn('Connection failed:', error);
@@ -188,6 +150,47 @@ export class AppKit {
188
150
  }
189
151
  }
190
152
 
153
+ private async processConnection(
154
+ connector: WalletConnector,
155
+ namespaces?: Namespaces,
156
+ shouldCloseModal: boolean = true
157
+ ) {
158
+ if (!namespaces || Object.keys(namespaces).length === 0) {
159
+ throw new Error('No namespaces provided');
160
+ }
161
+
162
+ const walletInfo = connector.getWalletInfo();
163
+ const properties = connector.getProperties();
164
+
165
+ const initializedAdapters = this.setupAdaptersAndSubscribe(connector, Object.keys(namespaces));
166
+
167
+ if (initializedAdapters.length === 0) {
168
+ console.warn('No compatible adapters found for namespaces:', Object.keys(namespaces));
169
+
170
+ return;
171
+ }
172
+
173
+ // Store the connection details
174
+ this.setConnection(initializedAdapters, namespaces, walletInfo, properties);
175
+
176
+ // Sync accounts
177
+ await this.syncAccounts(initializedAdapters);
178
+
179
+ // Handle SIWE if enabled
180
+ this.handleSiweConnectionIfEnabled(shouldCloseModal);
181
+ }
182
+
183
+ private handleSiweConnectionIfEnabled(shouldCloseModal: boolean = true): void {
184
+ if (
185
+ OptionsController.state.isSiweEnabled &&
186
+ ConnectionsController.state.activeNamespace === 'eip155'
187
+ ) {
188
+ this.handleSiweChange({ isConnection: true });
189
+ } else if (shouldCloseModal) {
190
+ ModalController.close();
191
+ }
192
+ }
193
+
191
194
  /**
192
195
  * Disconnects from a given namespace.
193
196
  * @param namespace - The namespace to disconnect from.
@@ -219,7 +222,7 @@ export class AppKit {
219
222
  SwapController.resetState();
220
223
  SendController.resetState();
221
224
  OnRampController.resetState();
222
- ConnectionController.disconnect();
225
+ WcController.resetState();
223
226
 
224
227
  if (ConnectionsController.state.activeNamespace === undefined) {
225
228
  ConnectionsController.setActiveNamespace(
@@ -287,10 +290,6 @@ export class AppKit {
287
290
  });
288
291
 
289
292
  ConnectionsController.setActiveNetwork(network.chainNamespace, network.caipNetworkId);
290
-
291
- if (ConnectionsController.state.activeNamespace !== network.chainNamespace) {
292
- ConnectionsController.setActiveNamespace(network.chainNamespace);
293
- }
294
293
  }
295
294
 
296
295
  open(options?: AppKitOpenOptions) {
@@ -308,10 +307,14 @@ export class AppKit {
308
307
  ConnectionsController.state.activeNamespace === 'eip155' &&
309
308
  !!ConnectionsController.state.activeAddress
310
309
  ) {
311
- await this.disconnect();
310
+ return await this.disconnect();
312
311
  }
313
312
  }
314
313
 
314
+ if (RouterController.state.view === 'UnsupportedChain') {
315
+ return await this.disconnect();
316
+ }
317
+
315
318
  RouterUtil.checkOnRampBack();
316
319
  RouterUtil.checkSocialLoginBack();
317
320
  }
@@ -330,13 +333,18 @@ export class AppKit {
330
333
  const adapter = this.getAdapterByNamespace(namespace);
331
334
  if (!adapter) throw new Error('No active adapter');
332
335
 
333
- ConnectionsController.setAccountType(namespace, type);
336
+ const address = ConnectionsController.setAccountType(namespace, type);
334
337
 
335
338
  // Get balances from API
336
339
  ConnectionsController.fetchBalance();
337
340
 
341
+ // Fetch transactions for the new account
342
+ if (address) {
343
+ TransactionsController.fetchTransactions(address, true);
344
+ }
345
+
338
346
  // Sync balances from adapter
339
- this.syncBalances(adapter, network);
347
+ this.syncNativeBalance(adapter, network);
340
348
 
341
349
  EventsController.sendEvent({
342
350
  type: 'track',
@@ -383,13 +391,12 @@ export class AppKit {
383
391
  return this.walletConnectConnector;
384
392
  }
385
393
 
386
- //TODO: reuse logic with connect method
387
394
  /**
388
395
  * Initializes connectors based on stored connection data.
389
396
  * This attempts to restore previous sessions.
390
397
  */
391
398
  private async initConnectors() {
392
- const connectedConnectors = await StorageUtil.getConnectedConnectors(); // Fetch stored connectors
399
+ const connectedConnectors = await StorageUtil.getConnectedConnectors();
393
400
  if (connectedConnectors.length > 0) {
394
401
  ModalController.setLoading(true);
395
402
 
@@ -398,31 +405,8 @@ export class AppKit {
398
405
  const connector = await this.createConnector(connected.type);
399
406
 
400
407
  const namespaces = connector.getNamespaces();
401
- const walletInfo = connector.getWalletInfo();
402
- const properties = connector.getProperties();
403
-
404
- if (namespaces && Object.keys(namespaces).length > 0) {
405
- // Ensure namespaces is not empty
406
- // Setup adapters and subscribe to events
407
- const initializedAdapters = this.setupAdaptersAndSubscribe(
408
- connector,
409
- Object.keys(namespaces)
410
- );
411
-
412
- // If adapters were successfully initialized, store the connection details
413
- if (initializedAdapters.length > 0) {
414
- this.setConnection(initializedAdapters, namespaces, walletInfo, properties);
415
- }
416
-
417
- this.syncAccounts(initializedAdapters);
418
-
419
- if (
420
- OptionsController.state.isSiweEnabled &&
421
- ConnectionsController.state.activeNamespace === 'eip155'
422
- ) {
423
- this.handleSiweChange({ isConnection: true });
424
- }
425
- }
408
+
409
+ await this.processConnection(connector, namespaces, false);
426
410
  } catch (error) {
427
411
  // Use console.warn for non-critical initialization failures
428
412
  console.warn(`Failed to initialize connector type ${connected.type}:`, error);
@@ -449,7 +433,7 @@ export class AppKit {
449
433
  }
450
434
 
451
435
  adapters.forEach(adapter => {
452
- adapter.setConnector(connector);
436
+ adapter.init({ connector });
453
437
  this.subscribeToAdapterEvents(adapter);
454
438
  });
455
439
 
@@ -473,12 +457,12 @@ export class AppKit {
473
457
  n => n.id?.toString() === connection?.caipNetwork?.split(':')[1]
474
458
  );
475
459
 
476
- this.syncBalances(adapter, network);
460
+ this.syncNativeBalance(adapter, network);
477
461
  this.syncIdentity(namespace, connection);
478
462
  });
479
463
  }
480
464
 
481
- private syncBalances(adapter: BlockchainAdapter, network?: AppKitNetwork) {
465
+ private syncNativeBalance(adapter: BlockchainAdapter, network?: AppKitNetwork) {
482
466
  if (adapter && network) {
483
467
  const accounts = adapter.getAccounts();
484
468
  if (accounts && accounts.length > 0) {
@@ -527,6 +511,55 @@ export class AppKit {
527
511
  }
528
512
  }
529
513
 
514
+ private refreshBalance(fetchAllBalances: boolean = false) {
515
+ try {
516
+ if (fetchAllBalances) {
517
+ ConnectionsController.fetchBalance();
518
+ }
519
+ const ns = ConnectionsController.state.activeNamespace;
520
+ const network = ConnectionsController.state.activeNetwork;
521
+ if (ns && network) {
522
+ const adapter = this.getAdapterByNamespace(ns);
523
+ if (adapter) {
524
+ this.syncNativeBalance(adapter, network);
525
+ }
526
+ }
527
+ } catch {
528
+ // ignore
529
+ }
530
+ }
531
+
532
+ private startBalancePolling(fetchAllBalances: boolean = false) {
533
+ if (this.balanceIntervalId) return;
534
+ // immediate fetch
535
+ this.refreshBalance(fetchAllBalances);
536
+ this.balanceIntervalId = setInterval(() => this.refreshBalance(fetchAllBalances), 10000);
537
+ }
538
+
539
+ private stopBalancePolling() {
540
+ if (this.balanceIntervalId) {
541
+ clearInterval(this.balanceIntervalId);
542
+ this.balanceIntervalId = undefined;
543
+ }
544
+ }
545
+
546
+ private watchBalance() {
547
+ // watch balance when user is on account or account default view
548
+ const recomputePolling = () => {
549
+ const open = ModalController.state.open;
550
+ const view = RouterController.state.view;
551
+ if (open && (view === 'Account' || view === 'AccountDefault')) {
552
+ // fetch all balances when user is using embedded wallet
553
+ this.startBalancePolling(view === 'Account');
554
+ } else {
555
+ this.stopBalancePolling();
556
+ }
557
+ };
558
+ recomputePolling();
559
+ subscribeKey(RouterController.state, 'view', () => recomputePolling());
560
+ subscribeKey(ModalController.state, 'open', () => recomputePolling());
561
+ }
562
+
530
563
  private setConnection(
531
564
  adapters: BlockchainAdapter[],
532
565
  approvedNamespaces: Namespaces,
@@ -543,7 +576,8 @@ export class AppKit {
543
576
  const caipNetwork = adapter?.connector?.getChainId(namespace);
544
577
  const namespaceProperties = {
545
578
  ...properties,
546
- smartAccounts: properties?.smartAccounts?.filter(account => account.startsWith(namespace))
579
+ smartAccounts: properties?.smartAccounts?.filter(account => account.startsWith(namespace)),
580
+ canAddEvmChain: wallet?.name === 'MetaMask Wallet' // MetaMask allows adding EVM chains after connecting
547
581
  };
548
582
 
549
583
  ConnectionsController.setConnection({
@@ -569,32 +603,43 @@ export class AppKit {
569
603
  private subscribeToAdapterEvents(adapter: BlockchainAdapter): void {
570
604
  adapter.on('accountsChanged', ({ accounts }) => {
571
605
  const namespace = adapter.getSupportedNamespace();
572
- //eslint-disable-next-line no-console
573
- console.log('accountsChanged', accounts, namespace);
574
- //TODO: check this
606
+ const hasChanged = ConnectionsController.updateAccounts(namespace, accounts);
575
607
 
576
- if (namespace === 'eip155') {
608
+ if (hasChanged && namespace === 'eip155') {
577
609
  this.handleSiweChange({ isAccountChange: true });
578
610
  }
579
611
  });
580
612
 
581
- adapter.on('chainChanged', ({ chainId }) => {
582
- //eslint-disable-next-line no-console
583
- console.log('chainChanged', chainId);
613
+ adapter.on('chainChanged', async ({ chainId }) => {
614
+ const isSupported = this.networks.some(network => network.id?.toString() === chainId);
615
+ if (!isSupported) {
616
+ return this.navigate('UnsupportedChain');
617
+ }
618
+
584
619
  const namespace = adapter.getSupportedNamespace();
585
620
  const chain = `${namespace}:${chainId}` as CaipNetworkId;
586
621
  ConnectionsController.setActiveNetwork(namespace, chain);
622
+
587
623
  const connection = ConnectionsController.state.connections.get(namespace);
588
624
  const isAuth = !!connection?.properties?.provider;
589
625
 
590
626
  const network = this.networks.find(n => n.id?.toString() === chainId);
591
- this.syncBalances(adapter, network);
627
+ this.syncNativeBalance(adapter, network);
592
628
  SendController.resetState();
593
629
 
630
+ // Refresh balance for embedded wallets
594
631
  if (isAuth) {
595
632
  ConnectionsController.fetchBalance();
596
633
  }
597
634
 
635
+ const address = connection?.accounts?.find(account =>
636
+ account.startsWith(`${namespace}:${chainId}`)
637
+ );
638
+ if (address) {
639
+ TransactionsController.fetchTransactions(address, true);
640
+ }
641
+
642
+ // Check if user needs to sign in again
598
643
  if (namespace === 'eip155') {
599
644
  this.handleSiweChange({ isNetworkChange: true });
600
645
  }
@@ -605,10 +650,7 @@ export class AppKit {
605
650
  this.disconnect(namespace, false);
606
651
  });
607
652
 
608
- //TODO: Add types to this events
609
653
  adapter.on('balanceChanged', ({ address, balance }) => {
610
- //eslint-disable-next-line no-console
611
- console.log('balanceChanged', address, balance);
612
654
  const namespace = adapter.getSupportedNamespace();
613
655
  ConnectionsController.updateBalance(namespace, address, balance);
614
656
  });
@@ -623,10 +665,10 @@ export class AppKit {
623
665
  this.setExcludedWallets(options);
624
666
  this.setCustomWallets(options);
625
667
  OptionsController.setFeaturedWalletIds(options.featuredWalletIds);
626
- OptionsController.setTokens(options.tokens);
627
668
  OptionsController.setEnableAnalytics(options.enableAnalytics);
628
669
  OptionsController.setDebug(options.debug);
629
670
  OptionsController.setFeatures(options.features);
671
+ OptionsController.setRequestedNetworks(this.networks);
630
672
 
631
673
  if (options.defaultNetwork) {
632
674
  const network = NetworkUtil.formatNetwork(options.defaultNetwork, this.projectId);
@@ -648,6 +690,7 @@ export class AppKit {
648
690
 
649
691
  if (options.siweConfig) {
650
692
  SIWEController.setSIWEClient(options.siweConfig);
693
+ OptionsController.setIsSiweEnabled(options.siweConfig.options.enabled);
651
694
  }
652
695
 
653
696
  if (
@@ -671,25 +714,22 @@ export class AppKit {
671
714
 
672
715
  private async initRecentWallets(options: AppKitConfig) {
673
716
  const wallets = await StorageUtil.getRecentWallets();
674
- const connectedWalletImage = await StorageUtil.getConnectedWalletImageUrl();
675
-
676
717
  const filteredWallets = wallets.filter(wallet => {
677
718
  const { includeWalletIds, excludeWalletIds } = options;
678
- if (includeWalletIds) {
719
+
720
+ if (includeWalletIds?.length) {
679
721
  return includeWalletIds.includes(wallet.id);
680
722
  }
681
- if (excludeWalletIds) {
723
+ if (excludeWalletIds?.length) {
682
724
  return !excludeWalletIds.includes(wallet.id);
683
725
  }
684
726
 
685
- return true;
727
+ return this.networks.some(
728
+ network => wallet.chains?.some(chain => network.caipNetworkId === chain)
729
+ );
686
730
  });
687
731
 
688
- ConnectionController.setRecentWallets(filteredWallets);
689
-
690
- if (connectedWalletImage) {
691
- ConnectionController.setConnectedWalletImageUrl(connectedWalletImage);
692
- }
732
+ WcController.setRecentWallets(filteredWallets);
693
733
  }
694
734
 
695
735
  private setExcludedWallets(options: AppKitConfig) {
@@ -699,7 +739,7 @@ export class AppKit {
699
739
  const excludeCoinbase = !this.extraConnectors.some(connector => connector.type === 'coinbase');
700
740
 
701
741
  if (excludeCoinbase) {
702
- excludedWallets.push(ConstantsUtil.COINBASE_EXPLORER_ID);
742
+ excludedWallets.push(ConstantsUtil.COINBASE_CUSTOM_WALLET.id);
703
743
  }
704
744
 
705
745
  OptionsController.setExcludeWalletIds(excludedWallets);
@@ -710,8 +750,12 @@ export class AppKit {
710
750
 
711
751
  const customList = [...(customWallets ?? [])];
712
752
 
713
- const addPhantom =
753
+ const isSolanaEnabled =
714
754
  adapters.some(adapter => adapter.getSupportedNamespace() === 'solana') &&
755
+ this.networks.some(network => network.chainNamespace === 'solana');
756
+
757
+ const addPhantom =
758
+ isSolanaEnabled &&
715
759
  extraConnectors?.some(connector => connector.type.toLowerCase() === 'phantom') &&
716
760
  !customList.some(wallet => wallet.id === ConstantsUtil.PHANTOM_CUSTOM_WALLET.id);
717
761
 
@@ -720,7 +764,7 @@ export class AppKit {
720
764
  }
721
765
 
722
766
  const addSolflare =
723
- adapters.some(adapter => adapter.getSupportedNamespace() === 'solana') &&
767
+ isSolanaEnabled &&
724
768
  extraConnectors?.some(connector => connector.type.toLowerCase() === 'solflare') &&
725
769
  !customList.some(wallet => wallet.id === ConstantsUtil.SOLFLARE_CUSTOM_WALLET.id);
726
770
 
@@ -741,11 +785,15 @@ export class AppKit {
741
785
  await this.initRecentWallets(options);
742
786
  }
743
787
 
744
- private onSiweNavigation = () => {
788
+ private navigate = (routeName: RouterControllerState['view']) => {
789
+ if (RouterController.state.view === routeName) {
790
+ return;
791
+ }
792
+
745
793
  if (ModalController.state.open) {
746
- RouterController.push('ConnectingSiwe');
794
+ RouterController.push(routeName);
747
795
  } else {
748
- ModalController.open({ view: 'ConnectingSiwe' });
796
+ ModalController.open({ view: routeName });
749
797
  }
750
798
  };
751
799
 
@@ -758,29 +806,33 @@ export class AppKit {
758
806
  const { enabled, signOutOnAccountChange, signOutOnNetworkChange } =
759
807
  SIWEController.state._client?.options ?? {};
760
808
 
761
- if (enabled) {
762
- const session = await SIWEController.getSession();
763
- if (session && isAccountChange) {
764
- if (signOutOnAccountChange) {
765
- // If the address has changed and signOnAccountChange is enabled, sign out
766
- await SIWEController.signOut();
809
+ if (!enabled || RouterController.state.view === 'ConnectingSiwe') {
810
+ // Do nothing if view is connecting siwe or siwe is not enabled
811
+ return;
812
+ }
767
813
 
768
- return this.onSiweNavigation();
769
- }
770
- } else if (isNetworkChange) {
771
- if (signOutOnNetworkChange) {
772
- // If the network has changed and signOnNetworkChange is enabled, sign out
773
- await SIWEController.signOut();
814
+ const session = await SIWEController.getSession();
815
+ if (session && isAccountChange) {
816
+ if (signOutOnAccountChange) {
817
+ // If the address has changed and signOnAccountChange is enabled, sign out
818
+ await SIWEController.signOut();
774
819
 
775
- return this.onSiweNavigation();
776
- }
777
- } else if (!session) {
778
- // If it's connected but there's no session, show sign view
779
- return this.onSiweNavigation();
780
- } else if (isConnection) {
781
- // Connected with 1CA
782
- ModalController.close();
820
+ return this.navigate('ConnectingSiwe');
783
821
  }
822
+ } else if (session && isNetworkChange) {
823
+ if (signOutOnNetworkChange) {
824
+ // If the network has changed and signOnNetworkChange is enabled, sign out
825
+ await SIWEController.signOut();
826
+
827
+ return this.navigate('ConnectingSiwe');
828
+ }
829
+ } else if (!session) {
830
+ // If it's connected but there's no session, show sign view
831
+
832
+ return this.navigate('ConnectingSiwe');
833
+ } else if (isConnection) {
834
+ // Already connected with 1CA
835
+ ModalController.close();
784
836
  }
785
837
  }
786
838
  }
@@ -16,8 +16,7 @@ export const AppKitProvider: React.FC<AppKitProviderProps> = ({ children, instan
16
16
  return <AppKitContext.Provider value={{ appKit: instance }}>{children}</AppKitContext.Provider>;
17
17
  };
18
18
 
19
- //TODO: rename this so it doesn't conflict with the useAppKit hook in the hooks folder
20
- export const useAppKit = () => {
19
+ export const useInternalAppKit = () => {
21
20
  const context = useContext(AppKitContext);
22
21
  if (context === undefined) {
23
22
  throw new Error('useAppKit must be used within an AppKitProvider');