@reown/appkit-react-native 2.0.0-alpha.3 → 2.0.0-alpha.5

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 (561) hide show
  1. package/lib/commonjs/AppKit.js +137 -57
  2. package/lib/commonjs/AppKit.js.map +1 -1
  3. package/lib/commonjs/AppKitContext.js +16 -10
  4. package/lib/commonjs/AppKitContext.js.map +1 -1
  5. package/lib/commonjs/connectors/WalletConnectConnector.js +16 -11
  6. package/lib/commonjs/connectors/WalletConnectConnector.js.map +1 -1
  7. package/lib/commonjs/hooks/useAccount.js +9 -4
  8. package/lib/commonjs/hooks/useAccount.js.map +1 -1
  9. package/lib/commonjs/hooks/useAppKit.js +12 -12
  10. package/lib/commonjs/hooks/useAppKit.js.map +1 -1
  11. package/lib/commonjs/hooks/useAppKitState.js +32 -0
  12. package/lib/commonjs/hooks/useAppKitState.js.map +1 -0
  13. package/lib/commonjs/hooks/useProvider.js +14 -8
  14. package/lib/commonjs/hooks/useProvider.js.map +1 -1
  15. package/lib/commonjs/hooks/useRouteTransition.js +10 -4
  16. package/lib/commonjs/hooks/useRouteTransition.js.map +1 -1
  17. package/lib/commonjs/hooks/useWalletInfo.js +6 -4
  18. package/lib/commonjs/hooks/useWalletInfo.js.map +1 -1
  19. package/lib/commonjs/index.js +7 -0
  20. package/lib/commonjs/index.js.map +1 -1
  21. package/lib/commonjs/modal/w3m-modal/index.js +27 -25
  22. package/lib/commonjs/modal/w3m-modal/index.js.map +1 -1
  23. package/lib/commonjs/modal/w3m-modal/styles.js +1 -2
  24. package/lib/commonjs/modal/w3m-modal/styles.js.map +1 -1
  25. package/lib/commonjs/modal/w3m-router/index.js +11 -5
  26. package/lib/commonjs/modal/w3m-router/index.js.map +1 -1
  27. package/lib/commonjs/partials/w3m-account-activity/index.js +1 -1
  28. package/lib/commonjs/partials/w3m-account-activity/index.js.map +1 -1
  29. package/lib/commonjs/partials/w3m-account-wallet-features/index.js +2 -5
  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 +94 -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-mobile/index.js +9 -7
  46. package/lib/commonjs/partials/w3m-connecting-mobile/index.js.map +1 -1
  47. package/lib/commonjs/partials/w3m-connecting-mobile/styles.js +2 -1
  48. package/lib/commonjs/partials/w3m-connecting-mobile/styles.js.map +1 -1
  49. package/lib/commonjs/partials/w3m-connecting-qrcode/components/ReownButton.js +36 -0
  50. package/lib/commonjs/partials/w3m-connecting-qrcode/components/ReownButton.js.map +1 -0
  51. package/lib/commonjs/partials/w3m-connecting-qrcode/index.js +12 -25
  52. package/lib/commonjs/partials/w3m-connecting-qrcode/index.js.map +1 -1
  53. package/lib/commonjs/partials/w3m-connecting-qrcode/styles.js +3 -0
  54. package/lib/commonjs/partials/w3m-connecting-qrcode/styles.js.map +1 -1
  55. package/lib/commonjs/partials/w3m-connecting-web/index.js +6 -2
  56. package/lib/commonjs/partials/w3m-connecting-web/index.js.map +1 -1
  57. package/lib/commonjs/partials/w3m-connecting-web/styles.js +3 -0
  58. package/lib/commonjs/partials/w3m-connecting-web/styles.js.map +1 -1
  59. package/lib/commonjs/partials/w3m-header/index.js +6 -5
  60. package/lib/commonjs/partials/w3m-header/index.js.map +1 -1
  61. package/lib/commonjs/partials/w3m-selector-modal/index.js +72 -57
  62. package/lib/commonjs/partials/w3m-selector-modal/index.js.map +1 -1
  63. package/lib/commonjs/partials/w3m-selector-modal/styles.js +9 -11
  64. package/lib/commonjs/partials/w3m-selector-modal/styles.js.map +1 -1
  65. package/lib/commonjs/utils/HelpersUtil.js +20 -0
  66. package/lib/commonjs/utils/HelpersUtil.js.map +1 -1
  67. package/lib/commonjs/utils/NetworkUtil.js +2 -2
  68. package/lib/commonjs/utils/NetworkUtil.js.map +1 -1
  69. package/lib/commonjs/utils/UiUtil.js +4 -0
  70. package/lib/commonjs/utils/UiUtil.js.map +1 -1
  71. package/lib/commonjs/views/w3m-account-default-view/index.js +4 -5
  72. package/lib/commonjs/views/w3m-account-default-view/index.js.map +1 -1
  73. package/lib/commonjs/views/w3m-account-view/index.js +4 -20
  74. package/lib/commonjs/views/w3m-account-view/index.js.map +1 -1
  75. package/lib/commonjs/views/w3m-account-view/styles.js +0 -5
  76. package/lib/commonjs/views/w3m-account-view/styles.js.map +1 -1
  77. package/lib/commonjs/views/w3m-all-wallets-view/index.js +8 -16
  78. package/lib/commonjs/views/w3m-all-wallets-view/index.js.map +1 -1
  79. package/lib/commonjs/views/w3m-connect-socials-view/index.js +3 -4
  80. package/lib/commonjs/views/w3m-connect-socials-view/index.js.map +1 -1
  81. package/lib/commonjs/views/w3m-connect-view/components/all-wallet-list.js +21 -13
  82. package/lib/commonjs/views/w3m-connect-view/components/all-wallet-list.js.map +1 -1
  83. package/lib/commonjs/views/w3m-connect-view/index.js +7 -16
  84. package/lib/commonjs/views/w3m-connect-view/index.js.map +1 -1
  85. package/lib/commonjs/views/w3m-connecting-external-view/index.js +31 -15
  86. package/lib/commonjs/views/w3m-connecting-external-view/index.js.map +1 -1
  87. package/lib/commonjs/views/w3m-connecting-external-view/styles.js +1 -1
  88. package/lib/commonjs/views/w3m-connecting-external-view/styles.js.map +1 -1
  89. package/lib/commonjs/views/w3m-connecting-siwe-view/index.js +55 -54
  90. package/lib/commonjs/views/w3m-connecting-siwe-view/index.js.map +1 -1
  91. package/lib/commonjs/views/w3m-connecting-siwe-view/styles.js +0 -7
  92. package/lib/commonjs/views/w3m-connecting-siwe-view/styles.js.map +1 -1
  93. package/lib/commonjs/views/w3m-connecting-social-view/index.js +37 -33
  94. package/lib/commonjs/views/w3m-connecting-social-view/index.js.map +1 -1
  95. package/lib/commonjs/views/w3m-connecting-view/index.js +2 -4
  96. package/lib/commonjs/views/w3m-connecting-view/index.js.map +1 -1
  97. package/lib/commonjs/views/w3m-get-wallet-view/index.js +7 -4
  98. package/lib/commonjs/views/w3m-get-wallet-view/index.js.map +1 -1
  99. package/lib/commonjs/views/w3m-network-switch-view/index.js +61 -80
  100. package/lib/commonjs/views/w3m-network-switch-view/index.js.map +1 -1
  101. package/lib/commonjs/views/w3m-networks-view/index.js +25 -14
  102. package/lib/commonjs/views/w3m-networks-view/index.js.map +1 -1
  103. package/lib/commonjs/views/w3m-onramp-checkout-view/index.js +160 -152
  104. package/lib/commonjs/views/w3m-onramp-checkout-view/index.js.map +1 -1
  105. package/lib/commonjs/views/w3m-onramp-loading-view/index.js +5 -6
  106. package/lib/commonjs/views/w3m-onramp-loading-view/index.js.map +1 -1
  107. package/lib/commonjs/views/w3m-onramp-loading-view/styles.js +1 -1
  108. package/lib/commonjs/views/w3m-onramp-loading-view/styles.js.map +1 -1
  109. package/lib/commonjs/views/w3m-onramp-settings-view/components/Country.js +3 -2
  110. package/lib/commonjs/views/w3m-onramp-settings-view/components/Country.js.map +1 -1
  111. package/lib/commonjs/views/w3m-onramp-settings-view/index.js +15 -7
  112. package/lib/commonjs/views/w3m-onramp-settings-view/index.js.map +1 -1
  113. package/lib/commonjs/views/w3m-onramp-settings-view/styles.js +4 -1
  114. package/lib/commonjs/views/w3m-onramp-settings-view/styles.js.map +1 -1
  115. package/lib/commonjs/views/w3m-onramp-settings-view/utils.js +17 -1
  116. package/lib/commonjs/views/w3m-onramp-settings-view/utils.js.map +1 -1
  117. package/lib/commonjs/views/w3m-onramp-transaction-view/index.js +1 -1
  118. package/lib/commonjs/views/w3m-onramp-transaction-view/index.js.map +1 -1
  119. package/lib/commonjs/views/w3m-onramp-view/components/Currency.js +3 -2
  120. package/lib/commonjs/views/w3m-onramp-view/components/Currency.js.map +1 -1
  121. package/lib/commonjs/views/w3m-onramp-view/components/Header.js +1 -1
  122. package/lib/commonjs/views/w3m-onramp-view/components/LoadingView.js +1 -1
  123. package/lib/commonjs/views/w3m-onramp-view/components/LoadingView.js.map +1 -1
  124. package/lib/commonjs/views/w3m-onramp-view/components/SelectPaymentModal.js +5 -2
  125. package/lib/commonjs/views/w3m-onramp-view/components/SelectPaymentModal.js.map +1 -1
  126. package/lib/commonjs/views/w3m-onramp-view/index.js +5 -4
  127. package/lib/commonjs/views/w3m-onramp-view/index.js.map +1 -1
  128. package/lib/commonjs/views/w3m-onramp-view/styles.js +3 -0
  129. package/lib/commonjs/views/w3m-onramp-view/styles.js.map +1 -1
  130. package/lib/commonjs/views/w3m-swap-preview-view/index.js +2 -3
  131. package/lib/commonjs/views/w3m-swap-preview-view/index.js.map +1 -1
  132. package/lib/commonjs/views/w3m-swap-preview-view/styles.js +0 -3
  133. package/lib/commonjs/views/w3m-swap-preview-view/styles.js.map +1 -1
  134. package/lib/commonjs/views/w3m-swap-view/components/select-token-modal/index.js +156 -0
  135. package/lib/commonjs/views/w3m-swap-view/components/select-token-modal/index.js.map +1 -0
  136. package/lib/commonjs/views/w3m-swap-view/components/{select-token-view → select-token-modal}/styles.js +6 -2
  137. package/lib/commonjs/views/w3m-swap-view/components/select-token-modal/styles.js.map +1 -0
  138. package/lib/commonjs/views/w3m-swap-view/components/select-token-modal/utils.js.map +1 -0
  139. package/lib/commonjs/views/w3m-swap-view/index.js +16 -17
  140. package/lib/commonjs/views/w3m-swap-view/index.js.map +1 -1
  141. package/lib/commonjs/views/w3m-swap-view/styles.js +0 -8
  142. package/lib/commonjs/views/w3m-swap-view/styles.js.map +1 -1
  143. package/lib/commonjs/views/w3m-unsupported-chain-view/index.js +6 -12
  144. package/lib/commonjs/views/w3m-unsupported-chain-view/index.js.map +1 -1
  145. package/lib/commonjs/views/w3m-unsupported-chain-view/styles.js +1 -1
  146. package/lib/commonjs/views/w3m-unsupported-chain-view/styles.js.map +1 -1
  147. package/lib/commonjs/views/w3m-upgrade-email-wallet-view/index.js +3 -5
  148. package/lib/commonjs/views/w3m-upgrade-email-wallet-view/index.js.map +1 -1
  149. package/lib/commonjs/views/w3m-wallet-compatible-networks-view/index.js +2 -4
  150. package/lib/commonjs/views/w3m-wallet-compatible-networks-view/index.js.map +1 -1
  151. package/lib/commonjs/views/w3m-wallet-receive-view/index.js +2 -3
  152. package/lib/commonjs/views/w3m-wallet-receive-view/index.js.map +1 -1
  153. package/lib/commonjs/views/w3m-wallet-send-preview-view/index.js +2 -3
  154. package/lib/commonjs/views/w3m-wallet-send-preview-view/index.js.map +1 -1
  155. package/lib/commonjs/views/w3m-wallet-send-select-token-view/index.js +6 -5
  156. package/lib/commonjs/views/w3m-wallet-send-select-token-view/index.js.map +1 -1
  157. package/lib/commonjs/views/w3m-wallet-send-view/index.js +12 -7
  158. package/lib/commonjs/views/w3m-wallet-send-view/index.js.map +1 -1
  159. package/lib/commonjs/views/w3m-wallet-send-view/styles.js +0 -3
  160. package/lib/commonjs/views/w3m-wallet-send-view/styles.js.map +1 -1
  161. package/lib/commonjs/views/w3m-what-is-a-network-view/index.js +2 -3
  162. package/lib/commonjs/views/w3m-what-is-a-network-view/index.js.map +1 -1
  163. package/lib/commonjs/views/w3m-what-is-a-wallet-view/index.js +2 -3
  164. package/lib/commonjs/views/w3m-what-is-a-wallet-view/index.js.map +1 -1
  165. package/lib/module/AppKit.js +138 -58
  166. package/lib/module/AppKit.js.map +1 -1
  167. package/lib/module/AppKitContext.js +17 -11
  168. package/lib/module/AppKitContext.js.map +1 -1
  169. package/lib/module/connectors/WalletConnectConnector.js +16 -11
  170. package/lib/module/connectors/WalletConnectConnector.js.map +1 -1
  171. package/lib/module/hooks/useAccount.js +9 -5
  172. package/lib/module/hooks/useAccount.js.map +1 -1
  173. package/lib/module/hooks/useAppKit.js +13 -13
  174. package/lib/module/hooks/useAppKit.js.map +1 -1
  175. package/lib/module/hooks/useAppKitState.js +27 -0
  176. package/lib/module/hooks/useAppKitState.js.map +1 -0
  177. package/lib/module/hooks/useProvider.js +13 -8
  178. package/lib/module/hooks/useProvider.js.map +1 -1
  179. package/lib/module/hooks/useRouteTransition.js +10 -4
  180. package/lib/module/hooks/useRouteTransition.js.map +1 -1
  181. package/lib/module/hooks/useWalletInfo.js +6 -4
  182. package/lib/module/hooks/useWalletInfo.js.map +1 -1
  183. package/lib/module/index.js +1 -0
  184. package/lib/module/index.js.map +1 -1
  185. package/lib/module/modal/w3m-modal/index.js +29 -27
  186. package/lib/module/modal/w3m-modal/index.js.map +1 -1
  187. package/lib/module/modal/w3m-modal/styles.js +1 -2
  188. package/lib/module/modal/w3m-modal/styles.js.map +1 -1
  189. package/lib/module/modal/w3m-router/index.js +12 -6
  190. package/lib/module/modal/w3m-router/index.js.map +1 -1
  191. package/lib/module/partials/w3m-account-activity/index.js +1 -1
  192. package/lib/module/partials/w3m-account-activity/index.js.map +1 -1
  193. package/lib/module/partials/w3m-account-wallet-features/index.js +2 -5
  194. package/lib/module/partials/w3m-account-wallet-features/index.js.map +1 -1
  195. package/lib/module/partials/w3m-all-wallets-list/components/Loading.js +21 -0
  196. package/lib/module/partials/w3m-all-wallets-list/components/Loading.js.map +1 -0
  197. package/lib/module/partials/w3m-all-wallets-list/components/WalletItem.js +36 -0
  198. package/lib/module/partials/w3m-all-wallets-list/components/WalletItem.js.map +1 -0
  199. package/lib/module/partials/w3m-all-wallets-list/components/WalletList.js +90 -0
  200. package/lib/module/partials/w3m-all-wallets-list/components/WalletList.js.map +1 -0
  201. package/lib/module/partials/w3m-all-wallets-list/index.js +22 -79
  202. package/lib/module/partials/w3m-all-wallets-list/index.js.map +1 -1
  203. package/lib/module/partials/w3m-all-wallets-list/styles.js +11 -7
  204. package/lib/module/partials/w3m-all-wallets-list/styles.js.map +1 -1
  205. package/lib/module/partials/w3m-all-wallets-search/index.js +28 -75
  206. package/lib/module/partials/w3m-all-wallets-search/index.js.map +1 -1
  207. package/lib/module/partials/w3m-all-wallets-search/styles.js +4 -5
  208. package/lib/module/partials/w3m-all-wallets-search/styles.js.map +1 -1
  209. package/lib/module/partials/w3m-connecting-mobile/index.js +10 -8
  210. package/lib/module/partials/w3m-connecting-mobile/index.js.map +1 -1
  211. package/lib/module/partials/w3m-connecting-mobile/styles.js +2 -1
  212. package/lib/module/partials/w3m-connecting-mobile/styles.js.map +1 -1
  213. package/lib/module/partials/w3m-connecting-qrcode/components/ReownButton.js +32 -0
  214. package/lib/module/partials/w3m-connecting-qrcode/components/ReownButton.js.map +1 -0
  215. package/lib/module/partials/w3m-connecting-qrcode/index.js +13 -26
  216. package/lib/module/partials/w3m-connecting-qrcode/index.js.map +1 -1
  217. package/lib/module/partials/w3m-connecting-qrcode/styles.js +3 -0
  218. package/lib/module/partials/w3m-connecting-qrcode/styles.js.map +1 -1
  219. package/lib/module/partials/w3m-connecting-web/index.js +7 -3
  220. package/lib/module/partials/w3m-connecting-web/index.js.map +1 -1
  221. package/lib/module/partials/w3m-connecting-web/styles.js +3 -0
  222. package/lib/module/partials/w3m-connecting-web/styles.js.map +1 -1
  223. package/lib/module/partials/w3m-header/index.js +6 -5
  224. package/lib/module/partials/w3m-header/index.js.map +1 -1
  225. package/lib/module/partials/w3m-selector-modal/index.js +74 -59
  226. package/lib/module/partials/w3m-selector-modal/index.js.map +1 -1
  227. package/lib/module/partials/w3m-selector-modal/styles.js +9 -11
  228. package/lib/module/partials/w3m-selector-modal/styles.js.map +1 -1
  229. package/lib/module/utils/HelpersUtil.js +21 -1
  230. package/lib/module/utils/HelpersUtil.js.map +1 -1
  231. package/lib/module/utils/NetworkUtil.js +2 -2
  232. package/lib/module/utils/NetworkUtil.js.map +1 -1
  233. package/lib/module/utils/UiUtil.js +4 -0
  234. package/lib/module/utils/UiUtil.js.map +1 -1
  235. package/lib/module/views/w3m-account-default-view/index.js +4 -5
  236. package/lib/module/views/w3m-account-default-view/index.js.map +1 -1
  237. package/lib/module/views/w3m-account-view/index.js +5 -21
  238. package/lib/module/views/w3m-account-view/index.js.map +1 -1
  239. package/lib/module/views/w3m-account-view/styles.js +1 -6
  240. package/lib/module/views/w3m-account-view/styles.js.map +1 -1
  241. package/lib/module/views/w3m-all-wallets-view/index.js +8 -16
  242. package/lib/module/views/w3m-all-wallets-view/index.js.map +1 -1
  243. package/lib/module/views/w3m-connect-socials-view/index.js +2 -3
  244. package/lib/module/views/w3m-connect-socials-view/index.js.map +1 -1
  245. package/lib/module/views/w3m-connect-view/components/all-wallet-list.js +22 -14
  246. package/lib/module/views/w3m-connect-view/components/all-wallet-list.js.map +1 -1
  247. package/lib/module/views/w3m-connect-view/index.js +7 -16
  248. package/lib/module/views/w3m-connect-view/index.js.map +1 -1
  249. package/lib/module/views/w3m-connecting-external-view/index.js +33 -17
  250. package/lib/module/views/w3m-connecting-external-view/index.js.map +1 -1
  251. package/lib/module/views/w3m-connecting-external-view/styles.js +1 -1
  252. package/lib/module/views/w3m-connecting-external-view/styles.js.map +1 -1
  253. package/lib/module/views/w3m-connecting-siwe-view/index.js +57 -56
  254. package/lib/module/views/w3m-connecting-siwe-view/index.js.map +1 -1
  255. package/lib/module/views/w3m-connecting-siwe-view/styles.js +0 -7
  256. package/lib/module/views/w3m-connecting-siwe-view/styles.js.map +1 -1
  257. package/lib/module/views/w3m-connecting-social-view/index.js +37 -33
  258. package/lib/module/views/w3m-connecting-social-view/index.js.map +1 -1
  259. package/lib/module/views/w3m-connecting-view/index.js +2 -4
  260. package/lib/module/views/w3m-connecting-view/index.js.map +1 -1
  261. package/lib/module/views/w3m-get-wallet-view/index.js +8 -5
  262. package/lib/module/views/w3m-get-wallet-view/index.js.map +1 -1
  263. package/lib/module/views/w3m-network-switch-view/index.js +65 -85
  264. package/lib/module/views/w3m-network-switch-view/index.js.map +1 -1
  265. package/lib/module/views/w3m-networks-view/index.js +25 -15
  266. package/lib/module/views/w3m-networks-view/index.js.map +1 -1
  267. package/lib/module/views/w3m-onramp-checkout-view/index.js +162 -154
  268. package/lib/module/views/w3m-onramp-checkout-view/index.js.map +1 -1
  269. package/lib/module/views/w3m-onramp-loading-view/index.js +5 -6
  270. package/lib/module/views/w3m-onramp-loading-view/index.js.map +1 -1
  271. package/lib/module/views/w3m-onramp-loading-view/styles.js +1 -1
  272. package/lib/module/views/w3m-onramp-loading-view/styles.js.map +1 -1
  273. package/lib/module/views/w3m-onramp-settings-view/components/Country.js +3 -2
  274. package/lib/module/views/w3m-onramp-settings-view/components/Country.js.map +1 -1
  275. package/lib/module/views/w3m-onramp-settings-view/index.js +16 -8
  276. package/lib/module/views/w3m-onramp-settings-view/index.js.map +1 -1
  277. package/lib/module/views/w3m-onramp-settings-view/styles.js +4 -1
  278. package/lib/module/views/w3m-onramp-settings-view/styles.js.map +1 -1
  279. package/lib/module/views/w3m-onramp-settings-view/utils.js +14 -0
  280. package/lib/module/views/w3m-onramp-settings-view/utils.js.map +1 -1
  281. package/lib/module/views/w3m-onramp-transaction-view/index.js +1 -1
  282. package/lib/module/views/w3m-onramp-transaction-view/index.js.map +1 -1
  283. package/lib/module/views/w3m-onramp-view/components/Currency.js +3 -2
  284. package/lib/module/views/w3m-onramp-view/components/Currency.js.map +1 -1
  285. package/lib/module/views/w3m-onramp-view/components/Header.js +1 -1
  286. package/lib/module/views/w3m-onramp-view/components/LoadingView.js +1 -1
  287. package/lib/module/views/w3m-onramp-view/components/LoadingView.js.map +1 -1
  288. package/lib/module/views/w3m-onramp-view/components/SelectPaymentModal.js +6 -3
  289. package/lib/module/views/w3m-onramp-view/components/SelectPaymentModal.js.map +1 -1
  290. package/lib/module/views/w3m-onramp-view/index.js +5 -4
  291. package/lib/module/views/w3m-onramp-view/index.js.map +1 -1
  292. package/lib/module/views/w3m-onramp-view/styles.js +3 -0
  293. package/lib/module/views/w3m-onramp-view/styles.js.map +1 -1
  294. package/lib/module/views/w3m-swap-preview-view/index.js +2 -3
  295. package/lib/module/views/w3m-swap-preview-view/index.js.map +1 -1
  296. package/lib/module/views/w3m-swap-preview-view/styles.js +0 -3
  297. package/lib/module/views/w3m-swap-preview-view/styles.js.map +1 -1
  298. package/lib/module/views/w3m-swap-view/components/select-token-modal/index.js +151 -0
  299. package/lib/module/views/w3m-swap-view/components/select-token-modal/index.js.map +1 -0
  300. package/lib/module/views/w3m-swap-view/components/{select-token-view → select-token-modal}/styles.js +6 -2
  301. package/lib/module/views/w3m-swap-view/components/select-token-modal/styles.js.map +1 -0
  302. package/lib/module/views/w3m-swap-view/components/select-token-modal/utils.js.map +1 -0
  303. package/lib/module/views/w3m-swap-view/index.js +17 -18
  304. package/lib/module/views/w3m-swap-view/index.js.map +1 -1
  305. package/lib/module/views/w3m-swap-view/styles.js +0 -8
  306. package/lib/module/views/w3m-swap-view/styles.js.map +1 -1
  307. package/lib/module/views/w3m-unsupported-chain-view/index.js +8 -14
  308. package/lib/module/views/w3m-unsupported-chain-view/index.js.map +1 -1
  309. package/lib/module/views/w3m-unsupported-chain-view/styles.js +1 -1
  310. package/lib/module/views/w3m-unsupported-chain-view/styles.js.map +1 -1
  311. package/lib/module/views/w3m-upgrade-email-wallet-view/index.js +4 -6
  312. package/lib/module/views/w3m-upgrade-email-wallet-view/index.js.map +1 -1
  313. package/lib/module/views/w3m-wallet-compatible-networks-view/index.js +2 -4
  314. package/lib/module/views/w3m-wallet-compatible-networks-view/index.js.map +1 -1
  315. package/lib/module/views/w3m-wallet-receive-view/index.js +2 -3
  316. package/lib/module/views/w3m-wallet-receive-view/index.js.map +1 -1
  317. package/lib/module/views/w3m-wallet-send-preview-view/index.js +2 -3
  318. package/lib/module/views/w3m-wallet-send-preview-view/index.js.map +1 -1
  319. package/lib/module/views/w3m-wallet-send-select-token-view/index.js +6 -5
  320. package/lib/module/views/w3m-wallet-send-select-token-view/index.js.map +1 -1
  321. package/lib/module/views/w3m-wallet-send-view/index.js +12 -7
  322. package/lib/module/views/w3m-wallet-send-view/index.js.map +1 -1
  323. package/lib/module/views/w3m-wallet-send-view/styles.js +0 -3
  324. package/lib/module/views/w3m-wallet-send-view/styles.js.map +1 -1
  325. package/lib/module/views/w3m-what-is-a-network-view/index.js +2 -3
  326. package/lib/module/views/w3m-what-is-a-network-view/index.js.map +1 -1
  327. package/lib/module/views/w3m-what-is-a-wallet-view/index.js +2 -3
  328. package/lib/module/views/w3m-what-is-a-wallet-view/index.js.map +1 -1
  329. package/lib/typescript/AppKit.d.ts +9 -4
  330. package/lib/typescript/AppKit.d.ts.map +1 -1
  331. package/lib/typescript/AppKitContext.d.ts +1 -1
  332. package/lib/typescript/AppKitContext.d.ts.map +1 -1
  333. package/lib/typescript/connectors/WalletConnectConnector.d.ts.map +1 -1
  334. package/lib/typescript/hooks/useAccount.d.ts +33 -1
  335. package/lib/typescript/hooks/useAccount.d.ts.map +1 -1
  336. package/lib/typescript/hooks/useAppKit.d.ts +0 -1
  337. package/lib/typescript/hooks/useAppKit.d.ts.map +1 -1
  338. package/lib/typescript/hooks/useAppKitState.d.ts +38 -0
  339. package/lib/typescript/hooks/useAppKitState.d.ts.map +1 -0
  340. package/lib/typescript/hooks/useProvider.d.ts.map +1 -1
  341. package/lib/typescript/hooks/useRouteTransition.d.ts.map +1 -1
  342. package/lib/typescript/hooks/useWalletInfo.d.ts.map +1 -1
  343. package/lib/typescript/index.d.ts +1 -0
  344. package/lib/typescript/index.d.ts.map +1 -1
  345. package/lib/typescript/modal/w3m-modal/styles.d.ts +0 -1
  346. package/lib/typescript/modal/w3m-modal/styles.d.ts.map +1 -1
  347. package/lib/typescript/modal/w3m-router/index.d.ts.map +1 -1
  348. package/lib/typescript/partials/w3m-account-wallet-features/index.d.ts +1 -4
  349. package/lib/typescript/partials/w3m-account-wallet-features/index.d.ts.map +1 -1
  350. package/lib/typescript/partials/w3m-all-wallets-list/components/Loading.d.ts +10 -0
  351. package/lib/typescript/partials/w3m-all-wallets-list/components/Loading.d.ts.map +1 -0
  352. package/lib/typescript/partials/w3m-all-wallets-list/components/WalletItem.d.ts +13 -0
  353. package/lib/typescript/partials/w3m-all-wallets-list/components/WalletItem.d.ts.map +1 -0
  354. package/lib/typescript/partials/w3m-all-wallets-list/components/WalletList.d.ts +14 -0
  355. package/lib/typescript/partials/w3m-all-wallets-list/components/WalletList.d.ts.map +1 -0
  356. package/lib/typescript/partials/w3m-all-wallets-list/index.d.ts +2 -3
  357. package/lib/typescript/partials/w3m-all-wallets-list/index.d.ts.map +1 -1
  358. package/lib/typescript/partials/w3m-all-wallets-list/styles.d.ts +10 -6
  359. package/lib/typescript/partials/w3m-all-wallets-list/styles.d.ts.map +1 -1
  360. package/lib/typescript/partials/w3m-all-wallets-search/index.d.ts +1 -3
  361. package/lib/typescript/partials/w3m-all-wallets-search/index.d.ts.map +1 -1
  362. package/lib/typescript/partials/w3m-all-wallets-search/styles.d.ts +3 -4
  363. package/lib/typescript/partials/w3m-all-wallets-search/styles.d.ts.map +1 -1
  364. package/lib/typescript/partials/w3m-connecting-mobile/index.d.ts.map +1 -1
  365. package/lib/typescript/partials/w3m-connecting-mobile/styles.d.ts +1 -0
  366. package/lib/typescript/partials/w3m-connecting-mobile/styles.d.ts.map +1 -1
  367. package/lib/typescript/partials/w3m-connecting-qrcode/components/ReownButton.d.ts +7 -0
  368. package/lib/typescript/partials/w3m-connecting-qrcode/components/ReownButton.d.ts.map +1 -0
  369. package/lib/typescript/partials/w3m-connecting-qrcode/index.d.ts.map +1 -1
  370. package/lib/typescript/partials/w3m-connecting-qrcode/styles.d.ts +3 -0
  371. package/lib/typescript/partials/w3m-connecting-qrcode/styles.d.ts.map +1 -1
  372. package/lib/typescript/partials/w3m-connecting-web/index.d.ts.map +1 -1
  373. package/lib/typescript/partials/w3m-connecting-web/styles.d.ts +3 -0
  374. package/lib/typescript/partials/w3m-connecting-web/styles.d.ts.map +1 -1
  375. package/lib/typescript/partials/w3m-header/index.d.ts.map +1 -1
  376. package/lib/typescript/partials/w3m-selector-modal/index.d.ts +3 -1
  377. package/lib/typescript/partials/w3m-selector-modal/index.d.ts.map +1 -1
  378. package/lib/typescript/partials/w3m-selector-modal/styles.d.ts +6 -8
  379. package/lib/typescript/partials/w3m-selector-modal/styles.d.ts.map +1 -1
  380. package/lib/typescript/utils/HelpersUtil.d.ts +3 -1
  381. package/lib/typescript/utils/HelpersUtil.d.ts.map +1 -1
  382. package/lib/typescript/utils/NetworkUtil.d.ts +1 -1
  383. package/lib/typescript/utils/UiUtil.d.ts.map +1 -1
  384. package/lib/typescript/views/w3m-account-view/index.d.ts.map +1 -1
  385. package/lib/typescript/views/w3m-account-view/styles.d.ts +0 -3
  386. package/lib/typescript/views/w3m-account-view/styles.d.ts.map +1 -1
  387. package/lib/typescript/views/w3m-all-wallets-view/index.d.ts.map +1 -1
  388. package/lib/typescript/views/w3m-connect-socials-view/index.d.ts.map +1 -1
  389. package/lib/typescript/views/w3m-connect-view/components/all-wallet-list.d.ts.map +1 -1
  390. package/lib/typescript/views/w3m-connect-view/index.d.ts.map +1 -1
  391. package/lib/typescript/views/w3m-connecting-external-view/index.d.ts.map +1 -1
  392. package/lib/typescript/views/w3m-connecting-siwe-view/index.d.ts.map +1 -1
  393. package/lib/typescript/views/w3m-connecting-siwe-view/styles.d.ts +0 -7
  394. package/lib/typescript/views/w3m-connecting-siwe-view/styles.d.ts.map +1 -1
  395. package/lib/typescript/views/w3m-connecting-social-view/index.d.ts.map +1 -1
  396. package/lib/typescript/views/w3m-connecting-view/index.d.ts.map +1 -1
  397. package/lib/typescript/views/w3m-get-wallet-view/index.d.ts.map +1 -1
  398. package/lib/typescript/views/w3m-network-switch-view/index.d.ts.map +1 -1
  399. package/lib/typescript/views/w3m-networks-view/index.d.ts.map +1 -1
  400. package/lib/typescript/views/w3m-onramp-checkout-view/index.d.ts.map +1 -1
  401. package/lib/typescript/views/w3m-onramp-loading-view/index.d.ts.map +1 -1
  402. package/lib/typescript/views/w3m-onramp-settings-view/components/Country.d.ts +3 -1
  403. package/lib/typescript/views/w3m-onramp-settings-view/components/Country.d.ts.map +1 -1
  404. package/lib/typescript/views/w3m-onramp-settings-view/index.d.ts.map +1 -1
  405. package/lib/typescript/views/w3m-onramp-settings-view/styles.d.ts +4 -1
  406. package/lib/typescript/views/w3m-onramp-settings-view/styles.d.ts.map +1 -1
  407. package/lib/typescript/views/w3m-onramp-settings-view/utils.d.ts +2 -0
  408. package/lib/typescript/views/w3m-onramp-settings-view/utils.d.ts.map +1 -1
  409. package/lib/typescript/views/w3m-onramp-view/components/Currency.d.ts +3 -1
  410. package/lib/typescript/views/w3m-onramp-view/components/Currency.d.ts.map +1 -1
  411. package/lib/typescript/views/w3m-onramp-view/components/SelectPaymentModal.d.ts.map +1 -1
  412. package/lib/typescript/views/w3m-onramp-view/index.d.ts.map +1 -1
  413. package/lib/typescript/views/w3m-onramp-view/styles.d.ts +3 -0
  414. package/lib/typescript/views/w3m-onramp-view/styles.d.ts.map +1 -1
  415. package/lib/typescript/views/w3m-swap-preview-view/index.d.ts.map +1 -1
  416. package/lib/typescript/views/w3m-swap-preview-view/styles.d.ts +0 -3
  417. package/lib/typescript/views/w3m-swap-preview-view/styles.d.ts.map +1 -1
  418. package/lib/typescript/views/w3m-swap-view/components/{select-token-view → select-token-modal}/index.d.ts +2 -1
  419. package/lib/typescript/views/w3m-swap-view/components/select-token-modal/index.d.ts.map +1 -0
  420. package/lib/typescript/views/w3m-swap-view/components/{select-token-view → select-token-modal}/styles.d.ts +6 -2
  421. package/lib/typescript/views/w3m-swap-view/components/{select-token-view → select-token-modal}/styles.d.ts.map +1 -1
  422. package/lib/typescript/views/w3m-swap-view/components/select-token-modal/utils.d.ts.map +1 -0
  423. package/lib/typescript/views/w3m-swap-view/index.d.ts.map +1 -1
  424. package/lib/typescript/views/w3m-swap-view/styles.d.ts +0 -8
  425. package/lib/typescript/views/w3m-swap-view/styles.d.ts.map +1 -1
  426. package/lib/typescript/views/w3m-unsupported-chain-view/index.d.ts.map +1 -1
  427. package/lib/typescript/views/w3m-upgrade-email-wallet-view/index.d.ts.map +1 -1
  428. package/lib/typescript/views/w3m-wallet-compatible-networks-view/index.d.ts.map +1 -1
  429. package/lib/typescript/views/w3m-wallet-send-preview-view/index.d.ts.map +1 -1
  430. package/lib/typescript/views/w3m-wallet-send-select-token-view/index.d.ts.map +1 -1
  431. package/lib/typescript/views/w3m-wallet-send-view/index.d.ts.map +1 -1
  432. package/lib/typescript/views/w3m-wallet-send-view/styles.d.ts +0 -3
  433. package/lib/typescript/views/w3m-wallet-send-view/styles.d.ts.map +1 -1
  434. package/lib/typescript/views/w3m-what-is-a-network-view/index.d.ts.map +1 -1
  435. package/lib/typescript/views/w3m-what-is-a-wallet-view/index.d.ts.map +1 -1
  436. package/package.json +10 -8
  437. package/src/AppKit.ts +170 -60
  438. package/src/AppKitContext.tsx +19 -11
  439. package/src/connectors/WalletConnectConnector.ts +20 -12
  440. package/src/hooks/useAccount.ts +15 -5
  441. package/src/hooks/useAppKit.ts +17 -12
  442. package/src/hooks/useAppKitState.ts +26 -0
  443. package/src/hooks/useProvider.ts +11 -5
  444. package/src/hooks/useRouteTransition.ts +11 -4
  445. package/src/hooks/useWalletInfo.ts +5 -2
  446. package/src/index.ts +1 -0
  447. package/src/modal/w3m-modal/index.tsx +25 -25
  448. package/src/modal/w3m-modal/styles.ts +1 -2
  449. package/src/modal/w3m-router/index.tsx +8 -6
  450. package/src/partials/w3m-account-activity/index.tsx +1 -1
  451. package/src/partials/w3m-account-wallet-features/index.tsx +2 -8
  452. package/src/partials/w3m-all-wallets-list/components/Loading.tsx +24 -0
  453. package/src/partials/w3m-all-wallets-list/components/WalletItem.tsx +38 -0
  454. package/src/partials/w3m-all-wallets-list/components/WalletList.tsx +100 -0
  455. package/src/partials/w3m-all-wallets-list/index.tsx +27 -85
  456. package/src/partials/w3m-all-wallets-list/styles.ts +11 -7
  457. package/src/partials/w3m-all-wallets-search/index.tsx +26 -87
  458. package/src/partials/w3m-all-wallets-search/styles.ts +4 -5
  459. package/src/partials/w3m-connecting-mobile/index.tsx +14 -12
  460. package/src/partials/w3m-connecting-mobile/styles.ts +2 -1
  461. package/src/partials/w3m-connecting-qrcode/components/ReownButton.tsx +20 -0
  462. package/src/partials/w3m-connecting-qrcode/index.tsx +16 -15
  463. package/src/partials/w3m-connecting-qrcode/styles.ts +3 -0
  464. package/src/partials/w3m-connecting-web/index.tsx +6 -4
  465. package/src/partials/w3m-connecting-web/styles.ts +3 -0
  466. package/src/partials/w3m-header/index.tsx +8 -5
  467. package/src/partials/w3m-selector-modal/index.tsx +81 -61
  468. package/src/partials/w3m-selector-modal/styles.ts +9 -11
  469. package/src/utils/HelpersUtil.ts +30 -0
  470. package/src/utils/NetworkUtil.ts +3 -3
  471. package/src/utils/UiUtil.ts +4 -0
  472. package/src/views/w3m-account-default-view/index.tsx +5 -5
  473. package/src/views/w3m-account-view/index.tsx +5 -29
  474. package/src/views/w3m-account-view/styles.ts +1 -4
  475. package/src/views/w3m-all-wallets-view/index.tsx +21 -25
  476. package/src/views/w3m-connect-socials-view/index.tsx +2 -3
  477. package/src/views/w3m-connect-view/components/all-wallet-list.tsx +30 -21
  478. package/src/views/w3m-connect-view/index.tsx +14 -13
  479. package/src/views/w3m-connecting-external-view/index.tsx +32 -18
  480. package/src/views/w3m-connecting-external-view/styles.ts +1 -1
  481. package/src/views/w3m-connecting-siwe-view/index.tsx +44 -42
  482. package/src/views/w3m-connecting-siwe-view/styles.ts +0 -7
  483. package/src/views/w3m-connecting-social-view/index.tsx +35 -31
  484. package/src/views/w3m-connecting-view/index.tsx +2 -4
  485. package/src/views/w3m-get-wallet-view/index.tsx +6 -5
  486. package/src/views/w3m-network-switch-view/index.tsx +70 -98
  487. package/src/views/w3m-networks-view/index.tsx +27 -19
  488. package/src/views/w3m-onramp-checkout-view/index.tsx +147 -143
  489. package/src/views/w3m-onramp-loading-view/index.tsx +11 -9
  490. package/src/views/w3m-onramp-loading-view/styles.ts +1 -1
  491. package/src/views/w3m-onramp-settings-view/components/Country.tsx +8 -3
  492. package/src/views/w3m-onramp-settings-view/index.tsx +16 -5
  493. package/src/views/w3m-onramp-settings-view/styles.ts +4 -1
  494. package/src/views/w3m-onramp-settings-view/utils.ts +18 -0
  495. package/src/views/w3m-onramp-transaction-view/index.tsx +1 -1
  496. package/src/views/w3m-onramp-view/components/Currency.tsx +4 -3
  497. package/src/views/w3m-onramp-view/components/Header.tsx +1 -1
  498. package/src/views/w3m-onramp-view/components/LoadingView.tsx +1 -1
  499. package/src/views/w3m-onramp-view/components/SelectPaymentModal.tsx +6 -3
  500. package/src/views/w3m-onramp-view/index.tsx +4 -3
  501. package/src/views/w3m-onramp-view/styles.ts +3 -0
  502. package/src/views/w3m-swap-preview-view/index.tsx +10 -3
  503. package/src/views/w3m-swap-preview-view/styles.ts +0 -3
  504. package/src/views/w3m-swap-view/components/select-token-modal/index.tsx +181 -0
  505. package/src/views/w3m-swap-view/components/{select-token-view → select-token-modal}/styles.ts +6 -2
  506. package/src/views/w3m-swap-view/index.tsx +17 -11
  507. package/src/views/w3m-swap-view/styles.ts +0 -8
  508. package/src/views/w3m-unsupported-chain-view/index.tsx +5 -7
  509. package/src/views/w3m-unsupported-chain-view/styles.ts +1 -1
  510. package/src/views/w3m-upgrade-email-wallet-view/index.tsx +4 -6
  511. package/src/views/w3m-wallet-compatible-networks-view/index.tsx +8 -3
  512. package/src/views/w3m-wallet-receive-view/index.tsx +3 -3
  513. package/src/views/w3m-wallet-send-preview-view/index.tsx +11 -3
  514. package/src/views/w3m-wallet-send-select-token-view/index.tsx +10 -5
  515. package/src/views/w3m-wallet-send-view/index.tsx +6 -6
  516. package/src/views/w3m-wallet-send-view/styles.ts +0 -3
  517. package/src/views/w3m-what-is-a-network-view/index.tsx +2 -3
  518. package/src/views/w3m-what-is-a-wallet-view/index.tsx +2 -3
  519. package/lib/commonjs/hooks/useCustomDimensions.js +0 -33
  520. package/lib/commonjs/hooks/useCustomDimensions.js.map +0 -1
  521. package/lib/commonjs/views/w3m-connect-view/components/custom-wallet-list.js +0 -39
  522. package/lib/commonjs/views/w3m-connect-view/components/custom-wallet-list.js.map +0 -1
  523. package/lib/commonjs/views/w3m-connect-view/components/recent-wallet-list.js +0 -38
  524. package/lib/commonjs/views/w3m-connect-view/components/recent-wallet-list.js.map +0 -1
  525. package/lib/commonjs/views/w3m-connect-view/utils.js +0 -14
  526. package/lib/commonjs/views/w3m-connect-view/utils.js.map +0 -1
  527. package/lib/commonjs/views/w3m-swap-view/components/select-token-view/index.js +0 -146
  528. package/lib/commonjs/views/w3m-swap-view/components/select-token-view/index.js.map +0 -1
  529. package/lib/commonjs/views/w3m-swap-view/components/select-token-view/styles.js.map +0 -1
  530. package/lib/commonjs/views/w3m-swap-view/components/select-token-view/utils.js.map +0 -1
  531. package/lib/module/hooks/useCustomDimensions.js +0 -30
  532. package/lib/module/hooks/useCustomDimensions.js.map +0 -1
  533. package/lib/module/views/w3m-connect-view/components/custom-wallet-list.js +0 -35
  534. package/lib/module/views/w3m-connect-view/components/custom-wallet-list.js.map +0 -1
  535. package/lib/module/views/w3m-connect-view/components/recent-wallet-list.js +0 -34
  536. package/lib/module/views/w3m-connect-view/components/recent-wallet-list.js.map +0 -1
  537. package/lib/module/views/w3m-connect-view/utils.js +0 -9
  538. package/lib/module/views/w3m-connect-view/utils.js.map +0 -1
  539. package/lib/module/views/w3m-swap-view/components/select-token-view/index.js +0 -141
  540. package/lib/module/views/w3m-swap-view/components/select-token-view/index.js.map +0 -1
  541. package/lib/module/views/w3m-swap-view/components/select-token-view/styles.js.map +0 -1
  542. package/lib/module/views/w3m-swap-view/components/select-token-view/utils.js.map +0 -1
  543. package/lib/typescript/hooks/useCustomDimensions.d.ts +0 -11
  544. package/lib/typescript/hooks/useCustomDimensions.d.ts.map +0 -1
  545. package/lib/typescript/views/w3m-connect-view/components/custom-wallet-list.d.ts +0 -9
  546. package/lib/typescript/views/w3m-connect-view/components/custom-wallet-list.d.ts.map +0 -1
  547. package/lib/typescript/views/w3m-connect-view/components/recent-wallet-list.d.ts +0 -9
  548. package/lib/typescript/views/w3m-connect-view/components/recent-wallet-list.d.ts.map +0 -1
  549. package/lib/typescript/views/w3m-connect-view/utils.d.ts +0 -3
  550. package/lib/typescript/views/w3m-connect-view/utils.d.ts.map +0 -1
  551. package/lib/typescript/views/w3m-swap-view/components/select-token-view/index.d.ts.map +0 -1
  552. package/lib/typescript/views/w3m-swap-view/components/select-token-view/utils.d.ts.map +0 -1
  553. package/src/hooks/useCustomDimensions.ts +0 -21
  554. package/src/views/w3m-connect-view/components/custom-wallet-list.tsx +0 -43
  555. package/src/views/w3m-connect-view/components/recent-wallet-list.tsx +0 -39
  556. package/src/views/w3m-connect-view/utils.ts +0 -14
  557. package/src/views/w3m-swap-view/components/select-token-view/index.tsx +0 -176
  558. /package/lib/commonjs/views/w3m-swap-view/components/{select-token-view → select-token-modal}/utils.js +0 -0
  559. /package/lib/module/views/w3m-swap-view/components/{select-token-view → select-token-modal}/utils.js +0 -0
  560. /package/lib/typescript/views/w3m-swap-view/components/{select-token-view → select-token-modal}/utils.d.ts +0 -0
  561. /package/src/views/w3m-swap-view/components/{select-token-view → select-token-modal}/utils.ts +0 -0
@@ -1,5 +1,7 @@
1
+ /* eslint-disable valtio/state-snapshot-rule */
2
+ import { useMemo } from 'react';
1
3
  import { useSnapshot } from 'valtio';
2
- import { ConnectionsController } from '@reown/appkit-core-react-native';
4
+ import { ConnectionsController, CoreHelperUtil } from '@reown/appkit-core-react-native';
3
5
  import { useAppKit } from './useAppKit';
4
6
 
5
7
  export function useAccount() {
@@ -8,15 +10,23 @@ export function useAccount() {
8
10
  const {
9
11
  activeAddress: address,
10
12
  activeNamespace,
11
- connections
13
+ connection,
14
+ networks
12
15
  } = useSnapshot(ConnectionsController.state);
13
16
 
14
- const connection = activeNamespace ? connections.get(activeNamespace) : undefined;
17
+ const activeChain = useMemo(
18
+ () =>
19
+ connection?.caipNetwork
20
+ ? networks.find(network => network.caipNetworkId === connection?.caipNetwork)
21
+ : undefined,
22
+ [connection?.caipNetwork, networks]
23
+ );
15
24
 
16
25
  return {
17
- address: address?.split(':')[2],
26
+ address: CoreHelperUtil.getPlainAddress(address),
18
27
  isConnected: !!address,
19
- chainId: connection?.caipNetwork,
28
+ chainId: activeChain?.id,
29
+ chain: activeChain,
20
30
  namespace: activeNamespace
21
31
  };
22
32
  }
@@ -1,6 +1,4 @@
1
- import { useContext } from 'react';
2
- import { useSnapshot } from 'valtio';
3
- import { ModalController } from '@reown/appkit-core-react-native';
1
+ import { useContext, useMemo } from 'react';
4
2
 
5
3
  import type { AppKit } from '../AppKit';
6
4
  import { AppKitContext } from '../AppKitContext';
@@ -10,26 +8,33 @@ interface UseAppKitReturn {
10
8
  close: AppKit['close'];
11
9
  disconnect: (namespace?: string) => void;
12
10
  switchNetwork: AppKit['switchNetwork'];
13
- isOpen: boolean;
14
11
  }
15
12
 
16
13
  export const useAppKit = (): UseAppKitReturn => {
17
14
  const context = useContext(AppKitContext);
18
- const { open } = useSnapshot(ModalController.state);
19
15
 
20
16
  if (context === undefined) {
21
17
  throw new Error('useAppKit must be used within an AppKitProvider');
22
18
  }
19
+
23
20
  if (!context.appKit) {
24
21
  // This might happen if the provider is rendered before AppKit is initialized
25
22
  throw new Error('AppKit instance is not yet available in context.');
26
23
  }
27
24
 
28
- return {
29
- open: context.appKit.open.bind(context.appKit),
30
- close: context.appKit.close.bind(context.appKit),
31
- disconnect: (namespace?: string) => context.appKit?.disconnect.bind(context.appKit)(namespace),
32
- switchNetwork: context.appKit.switchNetwork.bind(context.appKit),
33
- isOpen: open
34
- };
25
+ const stableFunctions = useMemo(() => {
26
+ if (!context.appKit) {
27
+ throw new Error('AppKit instance is not available');
28
+ }
29
+
30
+ return {
31
+ open: context.appKit.open.bind(context.appKit),
32
+ close: context.appKit.close.bind(context.appKit),
33
+ disconnect: (namespace?: string) =>
34
+ context.appKit!.disconnect.bind(context.appKit!)(namespace),
35
+ switchNetwork: context.appKit.switchNetwork.bind(context.appKit)
36
+ };
37
+ }, [context.appKit]);
38
+
39
+ return stableFunctions;
35
40
  };
@@ -0,0 +1,26 @@
1
+ /* eslint-disable valtio/state-snapshot-rule */
2
+ import { useMemo } from 'react';
3
+ import { useSnapshot } from 'valtio';
4
+ import { ConnectionsController, ModalController } from '@reown/appkit-core-react-native';
5
+ import { useAppKit } from './useAppKit';
6
+
7
+ export function useAppKitState() {
8
+ useAppKit(); // Use the hook for checks
9
+ const { activeAddress: address, connection, networks } = useSnapshot(ConnectionsController.state);
10
+ const { open, loading } = useSnapshot(ModalController.state);
11
+
12
+ const activeChain = useMemo(
13
+ () =>
14
+ connection?.caipNetwork
15
+ ? networks.find(network => network.caipNetworkId === connection?.caipNetwork)
16
+ : undefined,
17
+ [connection?.caipNetwork, networks]
18
+ );
19
+
20
+ return {
21
+ isOpen: open,
22
+ isLoading: loading,
23
+ isConnected: !!address,
24
+ chain: activeChain
25
+ };
26
+ }
@@ -1,3 +1,5 @@
1
+ /* eslint-disable valtio/state-snapshot-rule */
2
+ import { useMemo } from 'react';
1
3
  import { useSnapshot } from 'valtio';
2
4
  import { ConnectionsController } from '@reown/appkit-core-react-native';
3
5
  import type { Provider, ChainNamespace } from '@reown/appkit-common-react-native';
@@ -37,10 +39,14 @@ interface ProviderResult {
37
39
  export function useProvider(): ProviderResult {
38
40
  const { connection } = useSnapshot(ConnectionsController.state);
39
41
 
40
- if (!connection) return { provider: undefined, providerType: undefined };
42
+ const returnValue = useMemo(() => {
43
+ if (!connection) return { provider: undefined, providerType: undefined };
41
44
 
42
- return {
43
- provider: connection.adapter.getProvider(),
44
- providerType: connection.adapter.getSupportedNamespace()
45
- };
45
+ return {
46
+ provider: connection.adapter.getProvider(),
47
+ providerType: connection.adapter.getSupportedNamespace()
48
+ };
49
+ }, [connection]);
50
+
51
+ return returnValue;
46
52
  }
@@ -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
  },
@@ -1,10 +1,13 @@
1
+ import { useMemo } from 'react';
1
2
  import { useSnapshot } from 'valtio';
2
3
  import { ConnectionsController } from '@reown/appkit-core-react-native';
3
4
  import { useAppKit } from './useAppKit';
4
5
 
5
6
  export function useWalletInfo() {
6
7
  useAppKit(); // Use the hook for checks
7
- const { walletInfo } = useSnapshot(ConnectionsController.state);
8
+ const { walletInfo: walletInfoSnapshot } = useSnapshot(ConnectionsController.state);
8
9
 
9
- return { walletInfo };
10
+ const walletInfo = useMemo(() => ({ walletInfo: walletInfoSnapshot }), [walletInfoSnapshot]);
11
+
12
+ return walletInfo;
10
13
  }
package/src/index.ts CHANGED
@@ -25,6 +25,7 @@ export { useProvider } from './hooks/useProvider';
25
25
  export { useAccount } from './hooks/useAccount';
26
26
  export { useWalletInfo } from './hooks/useWalletInfo';
27
27
  export { useAppKitEvents, useAppKitEventSubscription } from './hooks/useAppKitEvents';
28
+ export { useAppKitState } from './hooks/useAppKitState';
28
29
 
29
30
  /********** Networks **********/
30
31
  export { solana, solanaDevnet, solanaTestnet } from '@reown/appkit-common-react-native';
@@ -1,6 +1,6 @@
1
1
  import { useSnapshot } from 'valtio';
2
2
  import { useCallback, useEffect } from 'react';
3
- import { useWindowDimensions, StatusBar } from 'react-native';
3
+ import { useColorScheme } from 'react-native';
4
4
  import { Card, Modal, ThemeProvider } from '@reown/appkit-ui-react-native';
5
5
  import {
6
6
  ApiController,
@@ -10,23 +10,21 @@ import {
10
10
  RouterController,
11
11
  ThemeController
12
12
  } from '@reown/appkit-core-react-native';
13
+ import { useSafeAreaInsets } from 'react-native-safe-area-context';
13
14
 
14
15
  import { AppKitRouter } from '../w3m-router';
15
16
  import { Header } from '../../partials/w3m-header';
16
17
  import { Snackbar } from '../../partials/w3m-snackbar';
17
- import { useCustomDimensions } from '../../hooks/useCustomDimensions';
18
18
  import { useInternalAppKit } from '../../AppKitContext';
19
19
  import styles from './styles';
20
20
 
21
21
  export function AppKit() {
22
+ const theme = useColorScheme();
23
+ const { bottom, top } = useSafeAreaInsets();
22
24
  const { close } = useInternalAppKit();
23
25
  const { open } = useSnapshot(ModalController.state);
24
- const { themeMode, themeVariables } = useSnapshot(ThemeController.state);
26
+ const { themeMode, themeVariables, defaultThemeMode } = useSnapshot(ThemeController.state);
25
27
  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
28
 
31
29
  const handleBackPress = () => {
32
30
  if (RouterController.state.history.length > 1) {
@@ -36,6 +34,12 @@ export function AppKit() {
36
34
  return handleModalClose();
37
35
  };
38
36
 
37
+ useEffect(() => {
38
+ if (theme && !defaultThemeMode) {
39
+ ThemeController.setThemeMode(theme);
40
+ }
41
+ }, [theme, defaultThemeMode]);
42
+
39
43
  const prefetch = useCallback(async () => {
40
44
  await ApiController.prefetch();
41
45
  EventsController.sendEvent({ type: 'track', event: 'MODAL_LOADED' });
@@ -52,23 +56,19 @@ export function AppKit() {
52
56
  }, [projectId, prefetch]);
53
57
 
54
58
  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
- </>
59
+ <ThemeProvider themeMode={themeMode} themeVariables={themeVariables}>
60
+ <Modal
61
+ visible={open}
62
+ onRequestClose={handleBackPress}
63
+ onBackdropPress={handleModalClose}
64
+ testID="w3m-modal"
65
+ >
66
+ <Card style={[styles.card, { paddingBottom: bottom, marginTop: top }]}>
67
+ <Header />
68
+ <AppKitRouter />
69
+ <Snackbar />
70
+ </Card>
71
+ </Modal>
72
+ </ThemeProvider>
73
73
  );
74
74
  }
@@ -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
  });
@@ -1,5 +1,5 @@
1
1
  import { useSnapshot } from 'valtio';
2
- import { useEffect, useLayoutEffect, useMemo } from 'react';
2
+ import { useEffect, useMemo } from 'react';
3
3
  import { RouterController } from '@reown/appkit-core-react-native';
4
4
 
5
5
  import { AccountDefaultView } from '../../views/w3m-account-default-view';
@@ -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
@@ -47,7 +49,7 @@ export function AppKitRouter() {
47
49
  UiUtil.setRouteTransition(animateTransition);
48
50
  }, [animateTransition]);
49
51
 
50
- useLayoutEffect(() => {
52
+ useEffect(() => {
51
53
  UiUtil.createViewTransition();
52
54
  }, [view]);
53
55
 
@@ -69,7 +71,7 @@ export function AppKitRouter() {
69
71
  return ConnectingSiweView;
70
72
  case 'ConnectingSocial':
71
73
  return ConnectingSocialView;
72
- case 'ConnectingWalletConnect':
74
+ case 'WalletConnect':
73
75
  return ConnectingView;
74
76
  case 'GetWallet':
75
77
  return GetWalletView;
@@ -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
  );
@@ -123,7 +123,7 @@ export function AccountActivity({ style }: Props) {
123
123
  <ScrollView
124
124
  style={[styles.container, style]}
125
125
  fadingEdgeLength={20}
126
- contentContainerStyle={[styles.contentContainer]}
126
+ contentContainerStyle={styles.contentContainer}
127
127
  refreshControl={
128
128
  <RefreshControl
129
129
  refreshing={refreshing}
@@ -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);
@@ -141,9 +137,7 @@ export function AccountWalletFeatures({ isBalanceLoading }: AccountWalletFeature
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
+ });
@@ -0,0 +1,100 @@
1
+ import { FlatList, StyleSheet, type StyleProp, type ViewStyle } from 'react-native';
2
+ import { WalletItem } from './WalletItem';
3
+ import {
4
+ CardSelectHeight,
5
+ Spacing,
6
+ useCustomDimensions,
7
+ CardSelectLoader,
8
+ CardSelectWidth
9
+ } from '@reown/appkit-ui-react-native';
10
+ import { ApiController } from '@reown/appkit-core-react-native';
11
+ import type { WcWallet } from '@reown/appkit-common-react-native';
12
+
13
+ const imageHeaders = ApiController._getApiHeaders();
14
+
15
+ const ITEM_HEIGHT = CardSelectHeight;
16
+ const ITEM_WIDTH = CardSelectWidth;
17
+ const ITEM_HEIGHT_WITH_GAP = ITEM_HEIGHT + Spacing['3xs'];
18
+
19
+ interface Props {
20
+ data: WcWallet[];
21
+ onItemPress: (wallet: WcWallet) => void;
22
+ onEndReached?: () => void;
23
+ onEndReachedThreshold?: number;
24
+ isLoading?: boolean;
25
+ loadingItems?: number;
26
+ style?: StyleProp<ViewStyle>;
27
+ }
28
+
29
+ export function WalletList({
30
+ data,
31
+ onItemPress,
32
+ onEndReached,
33
+ onEndReachedThreshold,
34
+ isLoading = false,
35
+ loadingItems = 20,
36
+ style
37
+ }: Props) {
38
+ const { padding, maxHeight } = useCustomDimensions();
39
+
40
+ // Create loading data if isLoading is true
41
+ const displayData = isLoading
42
+ ? Array.from({ length: loadingItems }, (_, index) => ({ id: `loading-${index}` }) as WcWallet)
43
+ : data;
44
+
45
+ return (
46
+ <FlatList
47
+ fadingEdgeLength={20}
48
+ bounces={false}
49
+ numColumns={4}
50
+ data={displayData}
51
+ style={[styles.list, { height: maxHeight }, style]}
52
+ columnWrapperStyle={styles.columnWrapperStyle}
53
+ renderItem={({ item }) => {
54
+ if (isLoading) {
55
+ return <CardSelectLoader style={styles.itemContainer} />;
56
+ }
57
+
58
+ return (
59
+ <WalletItem
60
+ item={item}
61
+ imageHeaders={imageHeaders}
62
+ onItemPress={onItemPress}
63
+ style={styles.itemContainer}
64
+ />
65
+ );
66
+ }}
67
+ contentContainerStyle={[styles.contentContainer, { paddingHorizontal: padding }]}
68
+ initialNumToRender={32}
69
+ maxToRenderPerBatch={12}
70
+ windowSize={10}
71
+ onEndReached={onEndReached}
72
+ onEndReachedThreshold={onEndReachedThreshold}
73
+ keyExtractor={(item, index) => item?.id ?? `item-${index}`}
74
+ getItemLayout={(_, index) => ({
75
+ length: ITEM_HEIGHT_WITH_GAP,
76
+ offset: ITEM_HEIGHT_WITH_GAP * index,
77
+ index
78
+ })}
79
+ />
80
+ );
81
+ }
82
+
83
+ const styles = StyleSheet.create({
84
+ list: {
85
+ paddingTop: Spacing['3xs']
86
+ },
87
+ contentContainer: {
88
+ paddingBottom: Spacing['xs'],
89
+ paddingTop: Spacing['3xs'],
90
+ gap: Spacing['3xs'],
91
+ alignItems: 'center'
92
+ },
93
+ columnWrapperStyle: {
94
+ justifyContent: 'space-around'
95
+ },
96
+ itemContainer: {
97
+ width: '23%',
98
+ minWidth: ITEM_WIDTH
99
+ }
100
+ });