@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
@@ -1,4 +1,4 @@
1
- import { ConnectionController } from '@reown/appkit-core-react-native';
1
+ import { WcController } from '@reown/appkit-core-react-native';
2
2
  import { UniversalProvider, type IUniversalProvider } from '@walletconnect/universal-provider';
3
3
  import {
4
4
  WalletConnector,
@@ -11,7 +11,8 @@ import {
11
11
  type ConnectOptions,
12
12
  type ConnectorInitOptions,
13
13
  type Metadata,
14
- type ConnectionProperties
14
+ type ConnectionProperties,
15
+ type RequestArguments
15
16
  } from '@reown/appkit-common-react-native';
16
17
  import { getDidAddress, getDidChainId, SIWEController } from '@reown/appkit-siwe-react-native';
17
18
 
@@ -93,9 +94,9 @@ export class WalletConnectConnector extends WalletConnector {
93
94
  }
94
95
 
95
96
  override async connect(opts: ConnectOptions) {
96
- const { siweConfig, namespaces, defaultChain, universalLink } = opts;
97
+ const { siweConfig, namespaces, defaultNetwork, universalLink } = opts;
97
98
  function onUri(uri: string) {
98
- ConnectionController.setWcUri(uri);
99
+ WcController.setWcUri(uri);
99
100
  }
100
101
 
101
102
  const provider = this.getProvider() as IUniversalProvider;
@@ -180,8 +181,8 @@ export class WalletConnectConnector extends WalletConnector {
180
181
  this.wallet = undefined;
181
182
  }
182
183
 
183
- if (defaultChain) {
184
- (this.provider as IUniversalProvider).setDefaultChain(defaultChain);
184
+ if (defaultNetwork?.caipNetworkId) {
185
+ (this.provider as IUniversalProvider).setDefaultChain(defaultNetwork.caipNetworkId);
185
186
  }
186
187
 
187
188
  if (session?.sessionProperties) {
@@ -198,19 +199,40 @@ export class WalletConnectConnector extends WalletConnector {
198
199
 
199
200
  provider.off('display_uri', onUri);
200
201
 
201
- return this.namespaces;
202
+ return (session?.namespaces as Namespaces) ?? {};
202
203
  }
203
204
 
204
- override getProvider(): Provider {
205
+ override getProvider(namespace?: ChainNamespace): Provider {
205
206
  if (!this.provider) {
206
207
  throw new Error('WalletConnectConnector: Provider not initialized. Call init() first.');
207
208
  }
208
209
 
210
+ const provider = this.provider;
211
+
212
+ if (namespace) {
213
+ return {
214
+ ...this.provider,
215
+ connect: async (params?: any) => provider.connect(params) as Promise<any>,
216
+ disconnect: provider.disconnect.bind(provider),
217
+ on: provider.on.bind(provider),
218
+ off: provider.off.bind(provider),
219
+ request: async (args: RequestArguments, chainId?: CaipNetworkId) => {
220
+ const _chainId = this.getChainId(namespace);
221
+
222
+ return provider.request(args, chainId || _chainId);
223
+ }
224
+ };
225
+ }
226
+
209
227
  return this.provider;
210
228
  }
211
229
 
212
230
  override getNamespaces(): Namespaces {
213
- return this.namespaces ?? {};
231
+ const namespaces =
232
+ ((this.provider as IUniversalProvider)?.session?.namespaces as Namespaces) ?? {};
233
+ this.namespaces = namespaces;
234
+
235
+ return namespaces;
214
236
  }
215
237
 
216
238
  override getProperties(): ConnectionProperties | undefined {
@@ -232,13 +254,14 @@ export class WalletConnectConnector extends WalletConnector {
232
254
  }
233
255
 
234
256
  override getChainId(namespace: ChainNamespace): CaipNetworkId | undefined {
235
- if (!this.namespaces || !this.namespaces[namespace]) {
257
+ const namespaces = this.getNamespaces();
258
+ if (!namespaces || !namespaces[namespace]) {
236
259
  return undefined;
237
260
  }
238
261
 
239
262
  const chainId = (this.provider as IUniversalProvider).rpcProviders[
240
263
  namespace
241
- ]?.getDefaultChain();
264
+ ]?.getDefaultChain?.();
242
265
 
243
266
  if (!chainId) {
244
267
  return undefined;
@@ -1,5 +1,5 @@
1
1
  import { useSnapshot } from 'valtio';
2
- import { ConnectionsController } from '@reown/appkit-core-react-native';
2
+ import { ConnectionsController, CoreHelperUtil } from '@reown/appkit-core-react-native';
3
3
  import { useAppKit } from './useAppKit';
4
4
 
5
5
  export function useAccount() {
@@ -8,15 +8,20 @@ export function useAccount() {
8
8
  const {
9
9
  activeAddress: address,
10
10
  activeNamespace,
11
- connections
11
+ connection,
12
+ networks
12
13
  } = useSnapshot(ConnectionsController.state);
13
14
 
14
- const connection = activeNamespace ? connections.get(activeNamespace) : undefined;
15
+ const activeChain = connection?.caipNetwork
16
+ ? // eslint-disable-next-line valtio/state-snapshot-rule
17
+ networks.find(network => network.caipNetworkId === connection?.caipNetwork)
18
+ : undefined;
15
19
 
16
20
  return {
17
- address: address?.split(':')[2],
21
+ address: CoreHelperUtil.getPlainAddress(address),
18
22
  isConnected: !!address,
19
- chainId: connection?.caipNetwork,
23
+ chainId: activeChain?.id,
24
+ chain: activeChain,
20
25
  namespace: activeNamespace
21
26
  };
22
27
  }
@@ -1,10 +1,7 @@
1
1
  import { useEffect } from 'react';
2
2
  import { useSnapshot } from 'valtio';
3
- import {
4
- EventsController,
5
- type EventName,
6
- type EventsControllerState
7
- } from '@reown/appkit-core-react-native';
3
+ import { EventsController, type EventsControllerState } from '@reown/appkit-core-react-native';
4
+ import { type EventName } from '@reown/appkit-common-react-native';
8
5
  import { useAppKit } from './useAppKit';
9
6
 
10
7
  export function useAppKitEvents(callback?: (newEvent: EventsControllerState) => void) {
@@ -2,24 +2,45 @@ import { useSnapshot } from 'valtio';
2
2
  import { ConnectionsController } from '@reown/appkit-core-react-native';
3
3
  import type { Provider, ChainNamespace } from '@reown/appkit-common-react-native';
4
4
 
5
+ /**
6
+ * Interface representing the result of the useProvider hook
7
+ */
5
8
  interface ProviderResult {
9
+ /** The active connection provider instance */
6
10
  provider?: Provider;
11
+ /** The chain namespace supported by the provider */
7
12
  providerType?: ChainNamespace;
8
13
  }
9
14
 
10
- export function useProvider(namespace?: ChainNamespace): ProviderResult {
11
- const { connections, activeNamespace } = useSnapshot(ConnectionsController.state);
12
-
13
- const targetNamespace = namespace ?? activeNamespace;
14
-
15
- if (!targetNamespace) return { provider: undefined, providerType: undefined };
16
-
17
- const connection = connections.get(targetNamespace);
15
+ /**
16
+ * Hook that returns the active connection provider and its supported chain namespace.
17
+ *
18
+ * This hook accesses the current connection and returns the provider instance along with its supported namespace.
19
+ *
20
+ * @returns {ProviderResult} An object containing:
21
+ * - `provider`: The active connection provider instance, or undefined if no connection exists
22
+ * - `providerType`: The chain namespace supported by the provider, or undefined if no connection exists
23
+ *
24
+ * @example
25
+ * ```typescript
26
+ * const { provider, providerType } = useProvider();
27
+ *
28
+ * if (provider) {
29
+ * // Use the provider for blockchain operations
30
+ * const balance = await provider.request({
31
+ * method: 'eth_getBalance',
32
+ * params: [address, 'latest']
33
+ * });
34
+ * }
35
+ * ```
36
+ */
37
+ export function useProvider(): ProviderResult {
38
+ const { connection } = useSnapshot(ConnectionsController.state);
18
39
 
19
40
  if (!connection) return { provider: undefined, providerType: undefined };
20
41
 
21
42
  return {
22
- provider: connection.adapter.connector?.getProvider(),
43
+ provider: connection.adapter.getProvider(),
23
44
  providerType: connection.adapter.getSupportedNamespace()
24
45
  };
25
46
  }
@@ -55,11 +55,18 @@ export function useRouteTransition(config: RouteTransitionConfig = {}) {
55
55
  currentAnimation.current = animation;
56
56
 
57
57
  animation.start(({ finished }) => {
58
- if (finished) {
59
- isAnimating.current = false;
60
- currentAnimation.current = null;
61
- resolve();
58
+ // Always clean up and resolve, even if the animation was interrupted
59
+ // Android often reports finished=false when interrupted, which otherwise
60
+ // would leave the view stuck at opacity 0 and block future animations.
61
+ if (!finished) {
62
+ // Ensure we end in the expected target state
63
+ fadeAnim.setValue(1);
64
+ slideAnim.setValue(0);
62
65
  }
66
+
67
+ isAnimating.current = false;
68
+ currentAnimation.current = null;
69
+ resolve();
63
70
  });
64
71
  });
65
72
  },
package/src/index.ts CHANGED
@@ -17,6 +17,7 @@ export { AppKit } from './modal/w3m-modal';
17
17
  /********** Types **********/
18
18
  export type * from '@reown/appkit-core-react-native';
19
19
  export type { AppKitNetwork, Storage } from '@reown/appkit-common-react-native';
20
+ export type { AppKitConfig } from './types';
20
21
 
21
22
  /****** Hooks *******/
22
23
  export { useAppKit } from './hooks/useAppKit';
@@ -5,7 +5,8 @@ import {
5
5
  ModalController,
6
6
  ThemeController,
7
7
  ConnectionsController,
8
- AssetController
8
+ AssetController,
9
+ AssetUtil
9
10
  } from '@reown/appkit-core-react-native';
10
11
  import { AccountButton as AccountButtonUI, ThemeProvider } from '@reown/appkit-ui-react-native';
11
12
 
@@ -26,7 +27,7 @@ export function AccountButton({ balance, disabled, style, testID }: AccountButto
26
27
  identity
27
28
  } = useSnapshot(ConnectionsController.state);
28
29
 
29
- const networkImage = activeNetwork ? networkImages[activeNetwork.id] : undefined;
30
+ const networkImage = AssetUtil.getNetworkImage(activeNetwork, networkImages);
30
31
  const showBalance = balance === 'show';
31
32
 
32
33
  return (
@@ -1,6 +1,5 @@
1
1
  import { useSnapshot } from 'valtio';
2
2
  import { useCallback, useEffect } from 'react';
3
- import { useWindowDimensions, StatusBar } from 'react-native';
4
3
  import { Card, Modal, ThemeProvider } from '@reown/appkit-ui-react-native';
5
4
  import {
6
5
  ApiController,
@@ -10,23 +9,20 @@ import {
10
9
  RouterController,
11
10
  ThemeController
12
11
  } from '@reown/appkit-core-react-native';
12
+ import { useSafeAreaInsets } from 'react-native-safe-area-context';
13
13
 
14
14
  import { AppKitRouter } from '../w3m-router';
15
15
  import { Header } from '../../partials/w3m-header';
16
16
  import { Snackbar } from '../../partials/w3m-snackbar';
17
- import { useCustomDimensions } from '../../hooks/useCustomDimensions';
18
- import { useAppKit } from '../../AppKitContext';
17
+ import { useInternalAppKit } from '../../AppKitContext';
19
18
  import styles from './styles';
20
19
 
21
20
  export function AppKit() {
22
- const { close } = useAppKit();
21
+ const { bottom, top } = useSafeAreaInsets();
22
+ const { close } = useInternalAppKit();
23
23
  const { open } = useSnapshot(ModalController.state);
24
24
  const { themeMode, themeVariables } = useSnapshot(ThemeController.state);
25
25
  const { projectId } = useSnapshot(OptionsController.state);
26
- const { height } = useWindowDimensions();
27
- const { isLandscape } = useCustomDimensions();
28
- const portraitHeight = height - 80;
29
- const landScapeHeight = height * 0.95 - (StatusBar.currentHeight ?? 0);
30
26
 
31
27
  const handleBackPress = () => {
32
28
  if (RouterController.state.history.length > 1) {
@@ -52,23 +48,19 @@ export function AppKit() {
52
48
  }, [projectId, prefetch]);
53
49
 
54
50
  return (
55
- <>
56
- <ThemeProvider themeMode={themeMode} themeVariables={themeVariables}>
57
- <Modal
58
- visible={open}
59
- onRequestClose={handleBackPress}
60
- onBackdropPress={handleModalClose}
61
- testID="w3m-modal"
62
- >
63
- <Card
64
- style={[styles.card, { maxHeight: isLandscape ? landScapeHeight : portraitHeight }]}
65
- >
66
- <Header />
67
- <AppKitRouter />
68
- <Snackbar />
69
- </Card>
70
- </Modal>
71
- </ThemeProvider>
72
- </>
51
+ <ThemeProvider themeMode={themeMode} themeVariables={themeVariables}>
52
+ <Modal
53
+ visible={open}
54
+ onRequestClose={handleBackPress}
55
+ onBackdropPress={handleModalClose}
56
+ testID="w3m-modal"
57
+ >
58
+ <Card style={[styles.card, { paddingBottom: bottom, marginTop: top }]}>
59
+ <Header />
60
+ <AppKitRouter />
61
+ <Snackbar />
62
+ </Card>
63
+ </Modal>
64
+ </ThemeProvider>
73
65
  );
74
66
  }
@@ -3,7 +3,6 @@ import { StyleSheet } from 'react-native';
3
3
  export default StyleSheet.create({
4
4
  card: {
5
5
  borderBottomLeftRadius: 0,
6
- borderBottomRightRadius: 0,
7
- maxHeight: '80%'
6
+ borderBottomRightRadius: 0
8
7
  }
9
8
  });
@@ -3,6 +3,7 @@ import type { StyleProp, ViewStyle } from 'react-native';
3
3
  import {
4
4
  ApiController,
5
5
  AssetController,
6
+ AssetUtil,
6
7
  ConnectionsController,
7
8
  EventsController,
8
9
  ModalController,
@@ -24,7 +25,7 @@ export function NetworkButton({ disabled, style }: NetworkButtonProps) {
24
25
  const { themeMode, themeVariables } = useSnapshot(ThemeController.state);
25
26
 
26
27
  const network = isConnected ? activeNetwork : defaultNetwork;
27
- const networkImage = network ? networkImages[network.id] : undefined;
28
+ const networkImage = AssetUtil.getNetworkImage(network, networkImages);
28
29
 
29
30
  const onNetworkPress = () => {
30
31
  ModalController.open({ view: 'Networks' });
@@ -35,9 +35,11 @@ import { UiUtil } from '../../utils/UiUtil';
35
35
  import { useRouteTransition } from '../../hooks/useRouteTransition';
36
36
 
37
37
  import { Animated } from 'react-native';
38
+ import { useCustomDimensions } from '@reown/appkit-ui-react-native';
38
39
 
39
40
  export function AppKitRouter() {
40
41
  const { view } = useSnapshot(RouterController.state);
42
+ const { maxHeight } = useCustomDimensions();
41
43
  const { animateTransition, getAnimatedStyle } = useRouteTransition({
42
44
  duration: 300,
43
45
  useNativeDriver: true
@@ -83,14 +85,14 @@ export function AppKitRouter() {
83
85
  return OnRampSettingsView;
84
86
  case 'OnRampLoading':
85
87
  return OnRampLoadingView;
86
- case 'SwitchNetwork':
87
- return NetworkSwitchView;
88
88
  case 'OnRampTransaction':
89
89
  return OnRampTransactionView;
90
90
  case 'Swap':
91
91
  return SwapView;
92
92
  case 'SwapPreview':
93
93
  return SwapPreviewView;
94
+ case 'SwitchNetwork':
95
+ return NetworkSwitchView;
94
96
  case 'Transactions':
95
97
  return TransactionsView;
96
98
  case 'UnsupportedChain':
@@ -117,7 +119,7 @@ export function AppKitRouter() {
117
119
  }, [view]);
118
120
 
119
121
  return (
120
- <Animated.View style={[getAnimatedStyle()]}>
122
+ <Animated.View style={[getAnimatedStyle(), { maxHeight }]}>
121
123
  <ViewComponent />
122
124
  </Animated.View>
123
125
  );
@@ -13,6 +13,7 @@ import {
13
13
  import { type Transaction, type TransactionImage } from '@reown/appkit-common-react-native';
14
14
  import {
15
15
  AssetController,
16
+ AssetUtil,
16
17
  ConnectionsController,
17
18
  ConstantsUtil,
18
19
  EventsController,
@@ -34,7 +35,7 @@ export function AccountActivity({ style }: Props) {
34
35
  const { loading, transactions, next } = useSnapshot(TransactionsController.state);
35
36
  const { activeNetwork } = useSnapshot(ConnectionsController.state);
36
37
  const { networkImages } = useSnapshot(AssetController.state);
37
- const networkImage = activeNetwork ? networkImages[activeNetwork.id] : undefined;
38
+ const networkImage = AssetUtil.getNetworkImage(activeNetwork, networkImages);
38
39
  const isSupported =
39
40
  activeNetwork?.caipNetworkId &&
40
41
  ConstantsUtil.ACTIVITY_SUPPORTED_CHAINS.includes(activeNetwork.caipNetworkId);
@@ -77,14 +78,14 @@ export function AccountActivity({ style }: Props) {
77
78
 
78
79
  useEffect(() => {
79
80
  const address = ConnectionsController.state.activeAddress;
80
- if (!TransactionsController.state.transactions.length && address) {
81
+ if (!TransactionsController.state.transactions.length && address && isSupported) {
81
82
  TransactionsController.fetchTransactions(address, true);
82
83
  }
83
84
  // Set initial load to false after first fetch
84
85
  const timer = setTimeout(() => setInitialLoad(false), 100);
85
86
 
86
87
  return () => clearTimeout(timer);
87
- }, []);
88
+ }, [isSupported]);
88
89
 
89
90
  // Show loading spinner during initial load or when loading with no transactions
90
91
  if ((initialLoad || loading) && !transactions.length) {
@@ -122,7 +123,7 @@ export function AccountActivity({ style }: Props) {
122
123
  <ScrollView
123
124
  style={[styles.container, style]}
124
125
  fadingEdgeLength={20}
125
- contentContainerStyle={[styles.contentContainer]}
126
+ contentContainerStyle={styles.contentContainer}
126
127
  refreshControl={
127
128
  <RefreshControl
128
129
  refreshing={refreshing}
@@ -185,16 +186,16 @@ export function AccountActivity({ style }: Props) {
185
186
  ))}
186
187
  </View>
187
188
  ))}
188
- {(next || loading) && !refreshing && (
189
+ {(next || loading) && !refreshing ? (
189
190
  <FlexView style={styles.footer} alignItems="center" justifyContent="center">
190
- {next && !loading && (
191
+ {next && !loading ? (
191
192
  <Link size="md" style={styles.loadMoreButton} onPress={handleLoadMore}>
192
193
  Load more
193
194
  </Link>
194
- )}
195
- {loading && <LoadingSpinner color="accent-100" />}
195
+ ) : null}
196
+ {loading ? <LoadingSpinner color="accent-100" /> : null}
196
197
  </FlexView>
197
- )}
198
+ ) : null}
198
199
  </ScrollView>
199
200
  );
200
201
  }
@@ -9,6 +9,7 @@ import {
9
9
  import { useSnapshot } from 'valtio';
10
10
  import {
11
11
  AssetController,
12
+ AssetUtil,
12
13
  ConnectionsController,
13
14
  RouterController
14
15
  } from '@reown/appkit-core-react-native';
@@ -32,7 +33,7 @@ export function AccountTokens({ style, isLoading }: Props) {
32
33
  const [refreshing, setRefreshing] = useState(false);
33
34
  const { activeNetwork, balances } = useSnapshot(ConnectionsController.state);
34
35
  const { networkImages } = useSnapshot(AssetController.state);
35
- const networkImage = activeNetwork ? networkImages[activeNetwork.id] : undefined;
36
+ const networkImage = AssetUtil.getNetworkImage(activeNetwork, networkImages);
36
37
 
37
38
  const getBalance = useCallback(async () => {
38
39
  setRefreshing(true);
@@ -62,7 +63,7 @@ export function AccountTokens({ style, isLoading }: Props) {
62
63
  </Text>
63
64
  </FlexView>
64
65
  </ListItem>
65
- {isLoading && <LoadingSpinner size="sm" style={styles.loadingSpinner} />}
66
+ {isLoading ? <LoadingSpinner size="sm" style={styles.loadingSpinner} /> : null}
66
67
  </>
67
68
  );
68
69
  }
@@ -92,7 +93,7 @@ export function AccountTokens({ style, isLoading }: Props) {
92
93
  pressable={false}
93
94
  />
94
95
  ))}
95
- {isLoading && <LoadingSpinner size="sm" style={styles.loadingSpinner} />}
96
+ {isLoading ? <LoadingSpinner size="sm" style={styles.loadingSpinner} /> : null}
96
97
  </ScrollView>
97
98
  );
98
99
  }
@@ -16,11 +16,7 @@ import { AccountActivity } from '../w3m-account-activity';
16
16
  import { AccountTokens } from '../w3m-account-tokens';
17
17
  import styles from './styles';
18
18
 
19
- export interface AccountWalletFeaturesProps {
20
- isBalanceLoading: boolean;
21
- }
22
-
23
- export function AccountWalletFeatures({ isBalanceLoading }: AccountWalletFeaturesProps) {
19
+ export function AccountWalletFeatures() {
24
20
  const [activeTab, setActiveTab] = useState(0);
25
21
  const { features, isOnRampEnabled } = useSnapshot(OptionsController.state);
26
22
  const { activeNetwork, balances, activeNamespace } = useSnapshot(ConnectionsController.state);
@@ -90,7 +86,7 @@ export function AccountWalletFeatures({ isBalanceLoading }: AccountWalletFeature
90
86
  justifyContent="space-around"
91
87
  padding={['0', 's', '0', 's']}
92
88
  >
93
- {isOnRampEnabled && (
89
+ {isOnRampEnabled ? (
94
90
  <IconLink
95
91
  icon="card"
96
92
  size="lg"
@@ -101,8 +97,8 @@ export function AccountWalletFeatures({ isBalanceLoading }: AccountWalletFeature
101
97
  style={[styles.action, isSwapsEnabled ? styles.actionCenter : styles.actionLeft]}
102
98
  onPress={onBuyPress}
103
99
  />
104
- )}
105
- {isSwapsEnabled && (
100
+ ) : null}
101
+ {isSwapsEnabled ? (
106
102
  <IconLink
107
103
  icon="recycleHorizontal"
108
104
  size="lg"
@@ -113,7 +109,7 @@ export function AccountWalletFeatures({ isBalanceLoading }: AccountWalletFeature
113
109
  style={[styles.action, styles.actionLeft]}
114
110
  onPress={onSwapPress}
115
111
  />
116
- )}
112
+ ) : null}
117
113
  <IconLink
118
114
  icon="arrowBottomCircle"
119
115
  size="lg"
@@ -124,7 +120,7 @@ export function AccountWalletFeatures({ isBalanceLoading }: AccountWalletFeature
124
120
  style={[styles.action, isSwapsEnabled ? styles.actionCenter : styles.actionLeft]}
125
121
  onPress={onReceivePress}
126
122
  />
127
- {showSend && (
123
+ {showSend ? (
128
124
  <IconLink
129
125
  icon="paperplane"
130
126
  size="lg"
@@ -135,15 +131,13 @@ export function AccountWalletFeatures({ isBalanceLoading }: AccountWalletFeature
135
131
  style={[styles.action, styles.actionRight]}
136
132
  onPress={onSendPress}
137
133
  />
138
- )}
134
+ ) : null}
139
135
  </FlexView>
140
136
  <FlexView style={styles.tab}>
141
137
  <Tabs tabs={['Tokens', 'Activity']} onTabChange={onTabChange} />
142
138
  </FlexView>
143
139
  <FlexView padding={['m', '0', '0', '0']} style={styles.tabContainer}>
144
- {activeTab === 0 && (
145
- <AccountTokens style={styles.tabContent} isLoading={isBalanceLoading} />
146
- )}
140
+ {activeTab === 0 && <AccountTokens style={styles.tabContent} />}
147
141
  {activeTab === 1 && <AccountActivity style={styles.tabContent} />}
148
142
  </FlexView>
149
143
  </FlexView>
@@ -0,0 +1,24 @@
1
+ import { memo } from 'react';
2
+ import { WalletList } from './WalletList';
3
+ import type { StyleProp, ViewStyle } from 'react-native';
4
+
5
+ interface LoadingProps {
6
+ loadingItems?: number;
7
+ style?: StyleProp<ViewStyle>;
8
+ }
9
+
10
+ function _Loading({ loadingItems = 20, style }: LoadingProps) {
11
+ return (
12
+ <WalletList
13
+ data={[]}
14
+ onItemPress={() => {}}
15
+ isLoading={true}
16
+ loadingItems={loadingItems}
17
+ style={style}
18
+ />
19
+ );
20
+ }
21
+
22
+ export const Loading = memo(_Loading, () => {
23
+ return true;
24
+ });
@@ -0,0 +1,38 @@
1
+ import { useSnapshot } from 'valtio';
2
+ import { ApiController, AssetController, AssetUtil } from '@reown/appkit-core-react-native';
3
+ import { CardSelect, CardSelectLoader } from '@reown/appkit-ui-react-native';
4
+ import type { WcWallet } from '@reown/appkit-common-react-native';
5
+ import type { StyleProp, ViewStyle } from 'react-native';
6
+ import { memo } from 'react';
7
+
8
+ interface WalletItemProps {
9
+ item: WcWallet;
10
+ imageHeaders?: Record<string, string>;
11
+ onItemPress: (wallet: WcWallet) => void;
12
+ style?: StyleProp<ViewStyle>;
13
+ }
14
+
15
+ export function WalletItem({ item, imageHeaders, onItemPress, style }: WalletItemProps) {
16
+ const { walletImages } = useSnapshot(AssetController.state);
17
+ const isInstalled = ApiController.state.installed.find(wallet => wallet?.id === item?.id);
18
+ const imageSrc = AssetUtil.getWalletImage(item, walletImages);
19
+
20
+ if (!item?.id) {
21
+ return <CardSelectLoader style={style} />;
22
+ }
23
+
24
+ return (
25
+ <CardSelect
26
+ imageSrc={imageSrc}
27
+ style={style}
28
+ imageHeaders={imageHeaders}
29
+ name={item?.name ?? 'Unknown'}
30
+ onPress={() => onItemPress(item)}
31
+ installed={!!isInstalled}
32
+ />
33
+ );
34
+ }
35
+
36
+ export const MemoizedWalletItem = memo(WalletItem, (prevProps, nextProps) => {
37
+ return prevProps.item.id === nextProps.item.id;
38
+ });