@multiplatform.one/web3 7.19.0 → 7.20.0

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 (565) hide show
  1. package/README.md +49 -4
  2. package/dist/cjs/bridge/BridgeClient.native.js.map +1 -1
  3. package/dist/cjs/bridge/BridgeHost.native.js.map +1 -1
  4. package/dist/cjs/bridge/SolanaBridge.native.js.map +1 -1
  5. package/dist/cjs/bridge/base64.native.js.map +1 -1
  6. package/dist/cjs/bridge/bridgeConnector.native.js.map +1 -1
  7. package/dist/cjs/bridge/eip1193.native.js.map +1 -1
  8. package/dist/cjs/bridge/index.native.js.map +1 -1
  9. package/dist/cjs/bridge/postMessageTransport.native.js.map +1 -1
  10. package/dist/cjs/bridge/protocol.native.js.map +1 -1
  11. package/dist/cjs/bridge/transport.native.js.map +1 -1
  12. package/dist/cjs/bundler/metaMaskConnectTimeouts.cjs +92 -0
  13. package/dist/cjs/bundler/metaMaskConnectTimeouts.native.js +123 -0
  14. package/dist/cjs/bundler/metaMaskConnectTimeouts.native.js.map +1 -0
  15. package/dist/cjs/clients/adapter.native.js.map +1 -1
  16. package/dist/cjs/clients/bitcoin.native.js.map +1 -1
  17. package/dist/cjs/clients/connector.native.js.map +1 -1
  18. package/dist/cjs/clients/evm.native.js.map +1 -1
  19. package/dist/cjs/clients/gpg.native.js.map +1 -1
  20. package/dist/cjs/clients/hooks.native.js.map +1 -1
  21. package/dist/cjs/clients/index.native.js.map +1 -1
  22. package/dist/cjs/clients/solana.native.js.map +1 -1
  23. package/dist/cjs/clients/solanaMessage.native.js.map +1 -1
  24. package/dist/cjs/clients/sui.native.js.map +1 -1
  25. package/dist/cjs/clients/types.native.js.map +1 -1
  26. package/dist/cjs/clients/useSolanaClient.native.js.map +1 -1
  27. package/dist/cjs/clients/walletStandard.native.js.map +1 -1
  28. package/dist/cjs/components/NetworkSwitcher.native.js.map +1 -1
  29. package/dist/cjs/components/TransactionStatus.native.js.map +1 -1
  30. package/dist/cjs/components/index.native.js.map +1 -1
  31. package/dist/cjs/connectkit/adapters/BitcoinAdapter.native.js.map +1 -1
  32. package/dist/cjs/connectkit/adapters/EthereumAdapter.native.js.map +1 -1
  33. package/dist/cjs/connectkit/adapters/SolanaAdapter.native.js.map +1 -1
  34. package/dist/cjs/connectkit/adapters/SuiAdapter.native.js.map +1 -1
  35. package/dist/cjs/connectkit/adapters/discover.native.js.map +1 -1
  36. package/dist/cjs/connectkit/adapters/index.native.js.map +1 -1
  37. package/dist/cjs/connectkit/adapters/messages.native.js.map +1 -1
  38. package/dist/cjs/connectkit/adapters/types.native.js.map +1 -1
  39. package/dist/cjs/connectkit/assets/chains.native.js.map +1 -1
  40. package/dist/cjs/connectkit/components/BalanceButton/index.native.js +1 -1
  41. package/dist/cjs/connectkit/components/BalanceButton/index.native.js.map +1 -1
  42. package/dist/cjs/connectkit/components/Common/Avatar/index.native.js.map +1 -1
  43. package/dist/cjs/connectkit/components/Common/Avatar/styles.native.js.map +1 -1
  44. package/dist/cjs/connectkit/components/Common/Chain/index.native.js.map +1 -1
  45. package/dist/cjs/connectkit/components/Common/Chain/styles.native.js.map +1 -1
  46. package/dist/cjs/connectkit/components/Common/ChainSelect/index.native.js +2 -2
  47. package/dist/cjs/connectkit/components/Common/ChainSelect/index.native.js.map +1 -1
  48. package/dist/cjs/connectkit/components/Common/ChainSelectDropdown/index.native.js +1 -1
  49. package/dist/cjs/connectkit/components/Common/ChainSelectDropdown/index.native.js.map +1 -1
  50. package/dist/cjs/connectkit/components/Common/ChainSelectDropdown/styles.native.js.map +1 -1
  51. package/dist/cjs/connectkit/components/Common/ChainSelectList/index.native.js.map +1 -1
  52. package/dist/cjs/connectkit/components/Common/ChainSelectList/styles.native.js.map +1 -1
  53. package/dist/cjs/connectkit/components/Common/ConnectorList/index.cjs +10 -29
  54. package/dist/cjs/connectkit/components/Common/ConnectorList/index.native.js +11 -32
  55. package/dist/cjs/connectkit/components/Common/ConnectorList/index.native.js.map +1 -1
  56. package/dist/cjs/connectkit/components/Common/ConnectorList/styles.native.js.map +1 -1
  57. package/dist/cjs/connectkit/components/ConnectButton/index.native.js +4 -4
  58. package/dist/cjs/connectkit/components/ConnectButton/index.native.js.map +1 -1
  59. package/dist/cjs/connectkit/components/ConnectButton/styles.native.js.map +1 -1
  60. package/dist/cjs/connectkit/components/ConnectModal/ConnectUsing.cjs +4 -38
  61. package/dist/cjs/connectkit/components/ConnectModal/ConnectUsing.native.js +5 -43
  62. package/dist/cjs/connectkit/components/ConnectModal/ConnectUsing.native.js.map +1 -1
  63. package/dist/cjs/connectkit/components/ConnectModal/ConnectWithInjector/CircleSpinner/index.native.js.map +1 -1
  64. package/dist/cjs/connectkit/components/ConnectModal/ConnectWithInjector/CircleSpinner/styles.native.js.map +1 -1
  65. package/dist/cjs/connectkit/components/ConnectModal/ConnectWithInjector/SquircleSpinner/index.native.js.map +1 -1
  66. package/dist/cjs/connectkit/components/ConnectModal/ConnectWithInjector/SquircleSpinner/styles.native.js.map +1 -1
  67. package/dist/cjs/connectkit/components/ConnectModal/ConnectWithInjector/index.cjs +0 -14
  68. package/dist/cjs/connectkit/components/ConnectModal/ConnectWithInjector/index.native.js +10 -65
  69. package/dist/cjs/connectkit/components/ConnectModal/ConnectWithInjector/index.native.js.map +1 -1
  70. package/dist/cjs/connectkit/components/ConnectModal/ConnectWithInjector/styles.native.js.map +1 -1
  71. package/dist/cjs/connectkit/components/ConnectModal/demo.cjs +0 -15
  72. package/dist/cjs/connectkit/components/ConnectModal/demo.native.js +9 -24
  73. package/dist/cjs/connectkit/components/ConnectModal/demo.native.js.map +1 -1
  74. package/dist/cjs/connectkit/components/NetworkButton/index.native.js +2 -2
  75. package/dist/cjs/connectkit/components/NetworkButton/index.native.js.map +1 -1
  76. package/dist/cjs/connectkit/components/Pages/About/graphics.native.js.map +1 -1
  77. package/dist/cjs/connectkit/components/Pages/About/index.native.js.map +1 -1
  78. package/dist/cjs/connectkit/components/Pages/About/styles.native.js.map +1 -1
  79. package/dist/cjs/connectkit/components/Pages/Connectors/index.native.js +1 -1
  80. package/dist/cjs/connectkit/components/Pages/Connectors/index.native.js.map +1 -1
  81. package/dist/cjs/connectkit/components/Pages/Connectors/styles.native.js.map +1 -1
  82. package/dist/cjs/connectkit/components/Pages/DownloadApp/index.native.js.map +1 -1
  83. package/dist/cjs/connectkit/components/Pages/Onboarding/index.native.js.map +1 -1
  84. package/dist/cjs/connectkit/components/Pages/Onboarding/styles.native.js.map +1 -1
  85. package/dist/cjs/connectkit/components/Pages/Profile/index.native.js +2 -2
  86. package/dist/cjs/connectkit/components/Pages/Profile/index.native.js.map +1 -1
  87. package/dist/cjs/connectkit/components/Pages/Profile/styles.native.js.map +1 -1
  88. package/dist/cjs/connectkit/components/Pages/SignInWithEthereum/index.native.js +3 -3
  89. package/dist/cjs/connectkit/components/Pages/SignInWithEthereum/index.native.js.map +1 -1
  90. package/dist/cjs/connectkit/components/Pages/SignInWithEthereum/styles.native.js.map +1 -1
  91. package/dist/cjs/connectkit/components/Pages/SwitchNetworks/index.native.js +1 -1
  92. package/dist/cjs/connectkit/components/Pages/SwitchNetworks/index.native.js.map +1 -1
  93. package/dist/cjs/connectkit/components/Standard/SIWE/index.native.js +1 -1
  94. package/dist/cjs/connectkit/components/Standard/SIWE/index.native.js.map +1 -1
  95. package/dist/cjs/connectkit/components/Standard/SIWE/styles.native.js.map +1 -1
  96. package/dist/cjs/connectkit/components/contexts/web3/index.cjs +0 -15
  97. package/dist/cjs/connectkit/components/contexts/web3/index.native.js +0 -17
  98. package/dist/cjs/connectkit/components/contexts/web3/index.native.js.map +1 -1
  99. package/dist/cjs/connectkit/connectors/aaveAccountConnector.cjs +57 -0
  100. package/dist/cjs/connectkit/connectors/aaveAccountConnector.native.js +67 -0
  101. package/dist/cjs/connectkit/connectors/aaveAccountConnector.native.js.map +1 -0
  102. package/dist/cjs/connectkit/connectors/createWalletMessage.native.js.map +1 -1
  103. package/dist/cjs/connectkit/connectors/embeddedDesktop.cjs +1 -1
  104. package/dist/cjs/connectkit/connectors/embeddedDesktop.native.js +1 -1
  105. package/dist/cjs/connectkit/connectors/embeddedDesktop.native.js.map +1 -1
  106. package/dist/cjs/connectkit/connectors/ensureWalletConnectors.native.js.map +1 -1
  107. package/dist/cjs/connectkit/connectors/getWalletConnectors.native.js.map +1 -1
  108. package/dist/cjs/connectkit/connectors/metaMaskConnectConnector.cjs +255 -0
  109. package/dist/cjs/connectkit/connectors/metaMaskConnectConnector.native.js +315 -0
  110. package/dist/cjs/connectkit/connectors/metaMaskConnectConnector.native.js.map +1 -0
  111. package/dist/cjs/connectkit/connectors/syntheticChains.native.js.map +1 -1
  112. package/dist/cjs/connectkit/connectors/walletAdapterConnector.native.js.map +1 -1
  113. package/dist/cjs/connectkit/constants/chainConfigs.native.js.map +1 -1
  114. package/dist/cjs/connectkit/defaultConfig.cjs +8 -2
  115. package/dist/cjs/connectkit/defaultConfig.native.js +8 -2
  116. package/dist/cjs/connectkit/defaultConfig.native.js.map +1 -1
  117. package/dist/cjs/connectkit/defaultConnectors.cjs +19 -37
  118. package/dist/cjs/connectkit/defaultConnectors.native.js +19 -37
  119. package/dist/cjs/connectkit/defaultConnectors.native.js.map +1 -1
  120. package/dist/cjs/connectkit/defaultTransports.native.js.map +1 -1
  121. package/dist/cjs/connectkit/hooks/useChainIsSupported.native.js.map +1 -1
  122. package/dist/cjs/connectkit/hooks/useChains.native.js.map +1 -1
  123. package/dist/cjs/connectkit/hooks/useConnect.native.js.map +1 -1
  124. package/dist/cjs/connectkit/hooks/useConnectCallback.native.js.map +1 -1
  125. package/dist/cjs/connectkit/hooks/useConnectors.cjs +1 -5
  126. package/dist/cjs/connectkit/hooks/useConnectors.native.js +1 -5
  127. package/dist/cjs/connectkit/hooks/useConnectors.native.js.map +1 -1
  128. package/dist/cjs/connectkit/hooks/useEnsFallbackConfig.native.js.map +1 -1
  129. package/dist/cjs/connectkit/hooks/useLastConnector.native.js.map +1 -1
  130. package/dist/cjs/connectkit/index.cjs +2 -0
  131. package/dist/cjs/connectkit/index.native.js +10 -8
  132. package/dist/cjs/connectkit/index.native.js.map +1 -1
  133. package/dist/cjs/connectkit/openConnector/context.native.js.map +1 -1
  134. package/dist/cjs/connectkit/openConnector/device.native.js.map +1 -1
  135. package/dist/cjs/connectkit/openConnector/index.native.js.map +1 -1
  136. package/dist/cjs/connectkit/openConnector/launcher.native.js.map +1 -1
  137. package/dist/cjs/connectkit/profileHeaderAction.native.js +1 -1
  138. package/dist/cjs/connectkit/profileHeaderAction.native.js.map +1 -1
  139. package/dist/cjs/connectkit/screens.cjs +1 -14
  140. package/dist/cjs/connectkit/screens.native.js +23 -40
  141. package/dist/cjs/connectkit/screens.native.js.map +1 -1
  142. package/dist/cjs/connectkit/siwe/SIWEContext.native.js.map +1 -1
  143. package/dist/cjs/connectkit/siwe/SIWEProvider.cjs +3 -2
  144. package/dist/cjs/connectkit/siwe/SIWEProvider.native.js +6 -4
  145. package/dist/cjs/connectkit/siwe/SIWEProvider.native.js.map +1 -1
  146. package/dist/cjs/connectkit/siwe/connectIntent.native.js.map +1 -1
  147. package/dist/cjs/connectkit/siwe/index.native.js.map +1 -1
  148. package/dist/cjs/connectkit/siwe/useSIWE.native.js.map +1 -1
  149. package/dist/cjs/connectkit/useWeb3Modal.native.js +2 -2
  150. package/dist/cjs/connectkit/useWeb3Modal.native.js.map +1 -1
  151. package/dist/cjs/connectkit/wallets/index.cjs +4 -3
  152. package/dist/cjs/connectkit/wallets/index.native.js +4 -3
  153. package/dist/cjs/connectkit/wallets/index.native.js.map +1 -1
  154. package/dist/cjs/connectkit/wallets/useWallets.cjs +7 -22
  155. package/dist/cjs/connectkit/wallets/useWallets.native.js +6 -22
  156. package/dist/cjs/connectkit/wallets/useWallets.native.js.map +1 -1
  157. package/dist/cjs/connectkit/wallets/walletConfigs.cjs +3 -62
  158. package/dist/cjs/connectkit/wallets/walletConfigs.native.js +2 -65
  159. package/dist/cjs/connectkit/wallets/walletConfigs.native.js.map +1 -1
  160. package/dist/cjs/connectkit/web3Bridge.cjs +2 -6
  161. package/dist/cjs/connectkit/web3Bridge.native.js +4 -9
  162. package/dist/cjs/connectkit/web3Bridge.native.js.map +1 -1
  163. package/dist/cjs/connectkit/web3Provider.native.js.map +1 -1
  164. package/dist/cjs/esbuild.cjs +54 -0
  165. package/dist/cjs/esbuild.native.js +57 -0
  166. package/dist/cjs/esbuild.native.js.map +1 -0
  167. package/dist/cjs/examples/LockContract.native.js.map +1 -1
  168. package/dist/cjs/examples/index.native.js.map +1 -1
  169. package/dist/cjs/hooks/index.native.js.map +1 -1
  170. package/dist/cjs/hooks/useContractRead.native.js.map +1 -1
  171. package/dist/cjs/hooks/useContractWrite.native.js.map +1 -1
  172. package/dist/cjs/hooks/useWallet.cjs +1 -2
  173. package/dist/cjs/hooks/useWallet.native.js +1 -4
  174. package/dist/cjs/hooks/useWallet.native.js.map +1 -1
  175. package/dist/cjs/index.native.js +6 -6
  176. package/dist/cjs/index.native.js.map +1 -1
  177. package/dist/cjs/providers/WalletProvider.cjs +1 -2
  178. package/dist/cjs/providers/index.native.js.map +1 -1
  179. package/dist/cjs/providers/mockConnector.native.js.map +1 -1
  180. package/dist/cjs/providers/native/deepLink.cjs +1 -1
  181. package/dist/cjs/providers/native/deepLink.native.js +1 -1
  182. package/dist/cjs/providers/native/deepLink.native.js.map +1 -1
  183. package/dist/cjs/providers/native/inject.native.js.map +1 -1
  184. package/dist/cjs/providers/native/visibility.native.js.map +1 -1
  185. package/dist/cjs/providers/walletConfig.native.js.map +1 -1
  186. package/dist/cjs/siws/index.native.js.map +1 -1
  187. package/dist/cjs/siws/message.native.js.map +1 -1
  188. package/dist/cjs/siws/signWithBridge.native.js.map +1 -1
  189. package/dist/cjs/siws/verify.native.js.map +1 -1
  190. package/dist/cjs/solana.native.js.map +1 -1
  191. package/dist/cjs/vite.cjs +76 -0
  192. package/dist/cjs/vite.native.js +79 -0
  193. package/dist/cjs/vite.native.js.map +1 -0
  194. package/dist/esm/bundler/metaMaskConnectTimeouts.mjs +64 -0
  195. package/dist/esm/bundler/metaMaskConnectTimeouts.mjs.map +1 -0
  196. package/dist/esm/bundler/metaMaskConnectTimeouts.native.js +92 -0
  197. package/dist/esm/bundler/metaMaskConnectTimeouts.native.js.map +1 -0
  198. package/dist/esm/connectkit/components/Common/ConnectorList/index.mjs +11 -30
  199. package/dist/esm/connectkit/components/Common/ConnectorList/index.mjs.map +1 -1
  200. package/dist/esm/connectkit/components/Common/ConnectorList/index.native.js +12 -33
  201. package/dist/esm/connectkit/components/Common/ConnectorList/index.native.js.map +1 -1
  202. package/dist/esm/connectkit/components/ConnectModal/ConnectUsing.mjs +4 -38
  203. package/dist/esm/connectkit/components/ConnectModal/ConnectUsing.mjs.map +1 -1
  204. package/dist/esm/connectkit/components/ConnectModal/ConnectUsing.native.js +4 -42
  205. package/dist/esm/connectkit/components/ConnectModal/ConnectUsing.native.js.map +1 -1
  206. package/dist/esm/connectkit/components/ConnectModal/ConnectWithInjector/index.mjs +1 -15
  207. package/dist/esm/connectkit/components/ConnectModal/ConnectWithInjector/index.mjs.map +1 -1
  208. package/dist/esm/connectkit/components/ConnectModal/ConnectWithInjector/index.native.js +8 -63
  209. package/dist/esm/connectkit/components/ConnectModal/ConnectWithInjector/index.native.js.map +1 -1
  210. package/dist/esm/connectkit/components/ConnectModal/demo.mjs +0 -15
  211. package/dist/esm/connectkit/components/ConnectModal/demo.mjs.map +1 -1
  212. package/dist/esm/connectkit/components/ConnectModal/demo.native.js +0 -15
  213. package/dist/esm/connectkit/components/ConnectModal/demo.native.js.map +1 -1
  214. package/dist/esm/connectkit/components/contexts/web3/index.mjs +0 -15
  215. package/dist/esm/connectkit/components/contexts/web3/index.mjs.map +1 -1
  216. package/dist/esm/connectkit/components/contexts/web3/index.native.js +0 -17
  217. package/dist/esm/connectkit/components/contexts/web3/index.native.js.map +1 -1
  218. package/dist/esm/connectkit/connectors/aaveAccountConnector.mjs +31 -0
  219. package/dist/esm/connectkit/connectors/aaveAccountConnector.mjs.map +1 -0
  220. package/dist/esm/connectkit/connectors/aaveAccountConnector.native.js +38 -0
  221. package/dist/esm/connectkit/connectors/aaveAccountConnector.native.js.map +1 -0
  222. package/dist/esm/connectkit/connectors/embeddedDesktop.mjs +1 -1
  223. package/dist/esm/connectkit/connectors/embeddedDesktop.mjs.map +1 -1
  224. package/dist/esm/connectkit/connectors/embeddedDesktop.native.js +1 -1
  225. package/dist/esm/connectkit/connectors/embeddedDesktop.native.js.map +1 -1
  226. package/dist/esm/connectkit/connectors/metaMaskConnectConnector.mjs +216 -0
  227. package/dist/esm/connectkit/connectors/metaMaskConnectConnector.mjs.map +1 -0
  228. package/dist/esm/connectkit/connectors/metaMaskConnectConnector.native.js +273 -0
  229. package/dist/esm/connectkit/connectors/metaMaskConnectConnector.native.js.map +1 -0
  230. package/dist/esm/connectkit/defaultConfig.mjs +8 -2
  231. package/dist/esm/connectkit/defaultConfig.mjs.map +1 -1
  232. package/dist/esm/connectkit/defaultConfig.native.js +8 -2
  233. package/dist/esm/connectkit/defaultConfig.native.js.map +1 -1
  234. package/dist/esm/connectkit/defaultConnectors.mjs +16 -34
  235. package/dist/esm/connectkit/defaultConnectors.mjs.map +1 -1
  236. package/dist/esm/connectkit/defaultConnectors.native.js +16 -34
  237. package/dist/esm/connectkit/defaultConnectors.native.js.map +1 -1
  238. package/dist/esm/connectkit/hooks/useConnectors.mjs +1 -4
  239. package/dist/esm/connectkit/hooks/useConnectors.mjs.map +1 -1
  240. package/dist/esm/connectkit/hooks/useConnectors.native.js +1 -4
  241. package/dist/esm/connectkit/hooks/useConnectors.native.js.map +1 -1
  242. package/dist/esm/connectkit/index.mjs +2 -1
  243. package/dist/esm/connectkit/index.mjs.map +1 -1
  244. package/dist/esm/connectkit/index.native.js +2 -1
  245. package/dist/esm/connectkit/index.native.js.map +1 -1
  246. package/dist/esm/connectkit/screens.mjs +1 -14
  247. package/dist/esm/connectkit/screens.mjs.map +1 -1
  248. package/dist/esm/connectkit/screens.native.js +16 -33
  249. package/dist/esm/connectkit/screens.native.js.map +1 -1
  250. package/dist/esm/connectkit/siwe/SIWEProvider.mjs +3 -2
  251. package/dist/esm/connectkit/siwe/SIWEProvider.mjs.map +1 -1
  252. package/dist/esm/connectkit/siwe/SIWEProvider.native.js +6 -4
  253. package/dist/esm/connectkit/siwe/SIWEProvider.native.js.map +1 -1
  254. package/dist/esm/connectkit/wallets/index.mjs +3 -2
  255. package/dist/esm/connectkit/wallets/index.mjs.map +1 -1
  256. package/dist/esm/connectkit/wallets/index.native.js +3 -2
  257. package/dist/esm/connectkit/wallets/index.native.js.map +1 -1
  258. package/dist/esm/connectkit/wallets/useWallets.mjs +2 -17
  259. package/dist/esm/connectkit/wallets/useWallets.mjs.map +1 -1
  260. package/dist/esm/connectkit/wallets/useWallets.native.js +1 -17
  261. package/dist/esm/connectkit/wallets/useWallets.native.js.map +1 -1
  262. package/dist/esm/connectkit/wallets/walletConfigs.mjs +4 -63
  263. package/dist/esm/connectkit/wallets/walletConfigs.mjs.map +1 -1
  264. package/dist/esm/connectkit/wallets/walletConfigs.native.js +3 -66
  265. package/dist/esm/connectkit/wallets/walletConfigs.native.js.map +1 -1
  266. package/dist/esm/connectkit/web3Bridge.mjs +3 -7
  267. package/dist/esm/connectkit/web3Bridge.mjs.map +1 -1
  268. package/dist/esm/connectkit/web3Bridge.native.js +3 -8
  269. package/dist/esm/connectkit/web3Bridge.native.js.map +1 -1
  270. package/dist/esm/esbuild.mjs +29 -0
  271. package/dist/esm/esbuild.mjs.map +1 -0
  272. package/dist/esm/esbuild.native.js +29 -0
  273. package/dist/esm/esbuild.native.js.map +1 -0
  274. package/dist/esm/hooks/useWallet.mjs +1 -2
  275. package/dist/esm/hooks/useWallet.mjs.map +1 -1
  276. package/dist/esm/hooks/useWallet.native.js +1 -4
  277. package/dist/esm/hooks/useWallet.native.js.map +1 -1
  278. package/dist/esm/providers/WalletProvider.mjs +1 -2
  279. package/dist/esm/providers/WalletProvider.mjs.map +1 -1
  280. package/dist/esm/providers/native/deepLink.mjs +1 -1
  281. package/dist/esm/providers/native/deepLink.mjs.map +1 -1
  282. package/dist/esm/providers/native/deepLink.native.js +1 -1
  283. package/dist/esm/providers/native/deepLink.native.js.map +1 -1
  284. package/dist/esm/providers/walletConfig.mjs.map +1 -1
  285. package/dist/esm/providers/walletConfig.native.js.map +1 -1
  286. package/dist/esm/vite.mjs +51 -0
  287. package/dist/esm/vite.mjs.map +1 -0
  288. package/dist/esm/vite.native.js +51 -0
  289. package/dist/esm/vite.native.js.map +1 -0
  290. package/dist/jsx/bundler/metaMaskConnectTimeouts.mjs +64 -0
  291. package/dist/jsx/bundler/metaMaskConnectTimeouts.mjs.map +1 -0
  292. package/dist/jsx/bundler/metaMaskConnectTimeouts.native.js +123 -0
  293. package/dist/jsx/bundler/metaMaskConnectTimeouts.native.js.map +1 -0
  294. package/dist/jsx/connectkit/components/Common/ConnectorList/index.mjs +11 -30
  295. package/dist/jsx/connectkit/components/Common/ConnectorList/index.mjs.map +1 -1
  296. package/dist/jsx/connectkit/components/Common/ConnectorList/index.native.js +11 -32
  297. package/dist/jsx/connectkit/components/Common/ConnectorList/index.native.js.map +1 -1
  298. package/dist/jsx/connectkit/components/ConnectModal/ConnectUsing.mjs +4 -38
  299. package/dist/jsx/connectkit/components/ConnectModal/ConnectUsing.mjs.map +1 -1
  300. package/dist/jsx/connectkit/components/ConnectModal/ConnectUsing.native.js +4 -42
  301. package/dist/jsx/connectkit/components/ConnectModal/ConnectUsing.native.js.map +1 -1
  302. package/dist/jsx/connectkit/components/ConnectModal/ConnectWithInjector/index.mjs +1 -15
  303. package/dist/jsx/connectkit/components/ConnectModal/ConnectWithInjector/index.mjs.map +1 -1
  304. package/dist/jsx/connectkit/components/ConnectModal/ConnectWithInjector/index.native.js +7 -62
  305. package/dist/jsx/connectkit/components/ConnectModal/ConnectWithInjector/index.native.js.map +1 -1
  306. package/dist/jsx/connectkit/components/ConnectModal/demo.mjs +0 -15
  307. package/dist/jsx/connectkit/components/ConnectModal/demo.mjs.map +1 -1
  308. package/dist/jsx/connectkit/components/ConnectModal/demo.native.js +0 -15
  309. package/dist/jsx/connectkit/components/ConnectModal/demo.native.js.map +1 -1
  310. package/dist/jsx/connectkit/components/contexts/web3/index.mjs +0 -15
  311. package/dist/jsx/connectkit/components/contexts/web3/index.mjs.map +1 -1
  312. package/dist/jsx/connectkit/components/contexts/web3/index.native.js +0 -17
  313. package/dist/jsx/connectkit/components/contexts/web3/index.native.js.map +1 -1
  314. package/dist/jsx/connectkit/connectors/aaveAccountConnector.mjs +31 -0
  315. package/dist/jsx/connectkit/connectors/aaveAccountConnector.mjs.map +1 -0
  316. package/dist/jsx/connectkit/connectors/aaveAccountConnector.native.js +67 -0
  317. package/dist/jsx/connectkit/connectors/aaveAccountConnector.native.js.map +1 -0
  318. package/dist/jsx/connectkit/connectors/embeddedDesktop.mjs +1 -1
  319. package/dist/jsx/connectkit/connectors/embeddedDesktop.mjs.map +1 -1
  320. package/dist/jsx/connectkit/connectors/embeddedDesktop.native.js +1 -1
  321. package/dist/jsx/connectkit/connectors/metaMaskConnectConnector.mjs +216 -0
  322. package/dist/jsx/connectkit/connectors/metaMaskConnectConnector.mjs.map +1 -0
  323. package/dist/jsx/connectkit/connectors/metaMaskConnectConnector.native.js +315 -0
  324. package/dist/jsx/connectkit/connectors/metaMaskConnectConnector.native.js.map +1 -0
  325. package/dist/jsx/connectkit/defaultConfig.mjs +8 -2
  326. package/dist/jsx/connectkit/defaultConfig.mjs.map +1 -1
  327. package/dist/jsx/connectkit/defaultConfig.native.js +8 -2
  328. package/dist/jsx/connectkit/defaultConfig.native.js.map +1 -1
  329. package/dist/jsx/connectkit/defaultConnectors.mjs +16 -34
  330. package/dist/jsx/connectkit/defaultConnectors.mjs.map +1 -1
  331. package/dist/jsx/connectkit/defaultConnectors.native.js +19 -37
  332. package/dist/jsx/connectkit/defaultConnectors.native.js.map +1 -1
  333. package/dist/jsx/connectkit/hooks/useConnectors.mjs +1 -4
  334. package/dist/jsx/connectkit/hooks/useConnectors.mjs.map +1 -1
  335. package/dist/jsx/connectkit/hooks/useConnectors.native.js +1 -5
  336. package/dist/jsx/connectkit/hooks/useConnectors.native.js.map +1 -1
  337. package/dist/jsx/connectkit/index.mjs +2 -1
  338. package/dist/jsx/connectkit/index.mjs.map +1 -1
  339. package/dist/jsx/connectkit/index.native.js +2 -0
  340. package/dist/jsx/connectkit/index.native.js.map +1 -1
  341. package/dist/jsx/connectkit/screens.mjs +1 -14
  342. package/dist/jsx/connectkit/screens.mjs.map +1 -1
  343. package/dist/jsx/connectkit/screens.native.js +16 -33
  344. package/dist/jsx/connectkit/screens.native.js.map +1 -1
  345. package/dist/jsx/connectkit/siwe/SIWEProvider.mjs +3 -2
  346. package/dist/jsx/connectkit/siwe/SIWEProvider.mjs.map +1 -1
  347. package/dist/jsx/connectkit/siwe/SIWEProvider.native.js +6 -4
  348. package/dist/jsx/connectkit/siwe/SIWEProvider.native.js.map +1 -1
  349. package/dist/jsx/connectkit/wallets/index.mjs +3 -2
  350. package/dist/jsx/connectkit/wallets/index.mjs.map +1 -1
  351. package/dist/jsx/connectkit/wallets/index.native.js +4 -3
  352. package/dist/jsx/connectkit/wallets/index.native.js.map +1 -1
  353. package/dist/jsx/connectkit/wallets/useWallets.mjs +2 -17
  354. package/dist/jsx/connectkit/wallets/useWallets.mjs.map +1 -1
  355. package/dist/jsx/connectkit/wallets/useWallets.native.js +6 -22
  356. package/dist/jsx/connectkit/wallets/useWallets.native.js.map +1 -1
  357. package/dist/jsx/connectkit/wallets/walletConfigs.mjs +4 -63
  358. package/dist/jsx/connectkit/wallets/walletConfigs.mjs.map +1 -1
  359. package/dist/jsx/connectkit/wallets/walletConfigs.native.js +2 -65
  360. package/dist/jsx/connectkit/wallets/walletConfigs.native.js.map +1 -1
  361. package/dist/jsx/connectkit/web3Bridge.mjs +3 -7
  362. package/dist/jsx/connectkit/web3Bridge.mjs.map +1 -1
  363. package/dist/jsx/connectkit/web3Bridge.native.js +2 -7
  364. package/dist/jsx/connectkit/web3Bridge.native.js.map +1 -1
  365. package/dist/jsx/esbuild.mjs +29 -0
  366. package/dist/jsx/esbuild.mjs.map +1 -0
  367. package/dist/jsx/esbuild.native.js +57 -0
  368. package/dist/jsx/esbuild.native.js.map +1 -0
  369. package/dist/jsx/hooks/useWallet.mjs +1 -2
  370. package/dist/jsx/hooks/useWallet.mjs.map +1 -1
  371. package/dist/jsx/hooks/useWallet.native.js +1 -4
  372. package/dist/jsx/hooks/useWallet.native.js.map +1 -1
  373. package/dist/jsx/index.native.js.map +1 -1
  374. package/dist/jsx/providers/WalletProvider.mjs +1 -2
  375. package/dist/jsx/providers/WalletProvider.mjs.map +1 -1
  376. package/dist/jsx/providers/native/deepLink.mjs +1 -1
  377. package/dist/jsx/providers/native/deepLink.mjs.map +1 -1
  378. package/dist/jsx/providers/native/deepLink.native.js +1 -1
  379. package/dist/jsx/providers/native/deepLink.native.js.map +1 -1
  380. package/dist/jsx/providers/walletConfig.mjs.map +1 -1
  381. package/dist/jsx/providers/walletConfig.native.js.map +1 -1
  382. package/dist/jsx/vite.mjs +51 -0
  383. package/dist/jsx/vite.mjs.map +1 -0
  384. package/dist/jsx/vite.native.js +79 -0
  385. package/dist/jsx/vite.native.js.map +1 -0
  386. package/package.json +22 -10
  387. package/src/bundler/metaMaskConnectTimeouts.spec.ts +390 -0
  388. package/src/bundler/metaMaskConnectTimeouts.ts +126 -0
  389. package/src/connectkit/adapters/SolanaAdapter.ts +1 -1
  390. package/src/connectkit/adapters/discover.ts +1 -1
  391. package/src/connectkit/components/Common/ConnectorList/index.tsx +20 -50
  392. package/src/connectkit/components/ConnectModal/ConnectUsing.tsx +11 -62
  393. package/src/connectkit/components/ConnectModal/ConnectWithInjector/index.tsx +10 -70
  394. package/src/connectkit/components/ConnectModal/demo.tsx +1 -19
  395. package/src/connectkit/components/contexts/web3/index.tsx +1 -23
  396. package/src/connectkit/connectors/aaveAccountConnector.spec.ts +87 -0
  397. package/src/connectkit/connectors/aaveAccountConnector.ts +43 -0
  398. package/src/connectkit/connectors/embeddedDesktop.spec.ts +5 -5
  399. package/src/connectkit/connectors/embeddedDesktop.ts +5 -5
  400. package/src/connectkit/connectors/metaMaskConnectConnector.spec.ts +230 -0
  401. package/src/connectkit/connectors/metaMaskConnectConnector.ts +272 -0
  402. package/src/connectkit/defaultConfig.ts +16 -7
  403. package/src/connectkit/defaultConnectors.ts +19 -40
  404. package/src/connectkit/hooks/useConnectors.ts +0 -10
  405. package/src/connectkit/index.ts +4 -0
  406. package/src/connectkit/screens.tsx +1 -21
  407. package/src/connectkit/siwe/SIWEProvider.spec.tsx +70 -2
  408. package/src/connectkit/siwe/SIWEProvider.tsx +5 -3
  409. package/src/connectkit/wallets/index.ts +5 -2
  410. package/src/connectkit/wallets/useWallets.tsx +1 -20
  411. package/src/connectkit/wallets/walletConfigs.tsx +2 -64
  412. package/src/connectkit/web3Bridge.tsx +4 -21
  413. package/src/esbuild.ts +42 -0
  414. package/src/hooks/useWallet.spec.ts +6 -15
  415. package/src/hooks/useWallet.ts +1 -2
  416. package/src/providers/WalletProvider.native.tsx +1 -1
  417. package/src/providers/WalletProvider.tsx +5 -7
  418. package/src/providers/mockConnector.ts +2 -2
  419. package/src/providers/native/deepLink.spec.ts +3 -4
  420. package/src/providers/native/deepLink.ts +1 -2
  421. package/src/providers/native/inject.spec.ts +1 -1
  422. package/src/providers/walletConfig.spec.ts +1 -1
  423. package/src/providers/walletConfig.ts +2 -1
  424. package/src/vite.ts +60 -0
  425. package/types/bundler/metaMaskConnectTimeouts.d.ts +36 -0
  426. package/types/bundler/metaMaskConnectTimeouts.d.ts.map +1 -0
  427. package/types/connectkit/adapters/discover.d.ts +1 -1
  428. package/types/connectkit/components/Common/ConnectorList/index.d.ts.map +1 -1
  429. package/types/connectkit/components/ConnectModal/ConnectUsing.d.ts.map +1 -1
  430. package/types/connectkit/components/ConnectModal/ConnectWithInjector/index.d.ts +0 -1
  431. package/types/connectkit/components/ConnectModal/ConnectWithInjector/index.d.ts.map +1 -1
  432. package/types/connectkit/components/ConnectModal/demo.d.ts.map +1 -1
  433. package/types/connectkit/components/contexts/web3/index.d.ts +1 -5
  434. package/types/connectkit/components/contexts/web3/index.d.ts.map +1 -1
  435. package/types/connectkit/connectors/aaveAccountConnector.d.ts +5 -0
  436. package/types/connectkit/connectors/aaveAccountConnector.d.ts.map +1 -0
  437. package/types/connectkit/connectors/embeddedDesktop.d.ts +4 -4
  438. package/types/connectkit/connectors/embeddedDesktop.d.ts.map +1 -1
  439. package/types/connectkit/connectors/metaMaskConnectConnector.d.ts +35 -0
  440. package/types/connectkit/connectors/metaMaskConnectConnector.d.ts.map +1 -0
  441. package/types/connectkit/defaultConfig.d.ts +3 -2
  442. package/types/connectkit/defaultConfig.d.ts.map +1 -1
  443. package/types/connectkit/defaultConnectors.d.ts +3 -4
  444. package/types/connectkit/defaultConnectors.d.ts.map +1 -1
  445. package/types/connectkit/hooks/useConnectors.d.ts +0 -1
  446. package/types/connectkit/hooks/useConnectors.d.ts.map +1 -1
  447. package/types/connectkit/index.d.ts +1 -0
  448. package/types/connectkit/index.d.ts.map +1 -1
  449. package/types/connectkit/screens.d.ts +0 -4
  450. package/types/connectkit/screens.d.ts.map +1 -1
  451. package/types/connectkit/siwe/SIWEProvider.d.ts.map +1 -1
  452. package/types/connectkit/wallets/index.d.ts.map +1 -1
  453. package/types/connectkit/wallets/useWallets.d.ts.map +1 -1
  454. package/types/connectkit/wallets/walletConfigs.d.ts +0 -2
  455. package/types/connectkit/wallets/walletConfigs.d.ts.map +1 -1
  456. package/types/connectkit/web3Bridge.d.ts.map +1 -1
  457. package/types/esbuild.d.ts +31 -0
  458. package/types/esbuild.d.ts.map +1 -0
  459. package/types/hooks/useWallet.d.ts.map +1 -1
  460. package/types/providers/WalletProvider.d.ts.map +1 -1
  461. package/types/providers/mockConnector.d.ts +2 -2
  462. package/types/providers/native/deepLink.d.ts +1 -1
  463. package/types/providers/native/deepLink.d.ts.map +1 -1
  464. package/types/providers/walletConfig.d.ts +2 -1
  465. package/types/providers/walletConfig.d.ts.map +1 -1
  466. package/types/vite.d.ts +12 -0
  467. package/types/vite.d.ts.map +1 -0
  468. package/dist/cjs/connectkit/components/ConnectModal/ConnectWithQRCode.cjs +0 -133
  469. package/dist/cjs/connectkit/components/ConnectModal/ConnectWithQRCode.native.js +0 -179
  470. package/dist/cjs/connectkit/components/ConnectModal/ConnectWithQRCode.native.js.map +0 -1
  471. package/dist/cjs/connectkit/components/Pages/MobileConnectors/index.cjs +0 -158
  472. package/dist/cjs/connectkit/components/Pages/MobileConnectors/index.native.js +0 -183
  473. package/dist/cjs/connectkit/components/Pages/MobileConnectors/index.native.js.map +0 -1
  474. package/dist/cjs/connectkit/components/Pages/MobileConnectors/styles.cjs +0 -90
  475. package/dist/cjs/connectkit/components/Pages/MobileConnectors/styles.native.js +0 -99
  476. package/dist/cjs/connectkit/components/Pages/MobileConnectors/styles.native.js.map +0 -1
  477. package/dist/cjs/connectkit/connectors/metaMaskSdkConnector.cjs +0 -398
  478. package/dist/cjs/connectkit/connectors/metaMaskSdkConnector.native.js +0 -453
  479. package/dist/cjs/connectkit/connectors/metaMaskSdkConnector.native.js.map +0 -1
  480. package/dist/cjs/connectkit/hooks/connectors/useCoinbaseWalletUri.cjs +0 -0
  481. package/dist/cjs/connectkit/hooks/connectors/useCoinbaseWalletUri.native.js +0 -2
  482. package/dist/cjs/connectkit/hooks/connectors/useCoinbaseWalletUri.native.js.map +0 -1
  483. package/dist/cjs/connectkit/hooks/connectors/useWalletConnectUri.cjs +0 -113
  484. package/dist/cjs/connectkit/hooks/connectors/useWalletConnectUri.native.js +0 -117
  485. package/dist/cjs/connectkit/hooks/connectors/useWalletConnectUri.native.js.map +0 -1
  486. package/dist/cjs/connectkit/hooks/useWalletConnectModal.cjs +0 -74
  487. package/dist/cjs/connectkit/hooks/useWalletConnectModal.native.js +0 -79
  488. package/dist/cjs/connectkit/hooks/useWalletConnectModal.native.js.map +0 -1
  489. package/dist/esm/connectkit/components/ConnectModal/ConnectWithQRCode.mjs +0 -108
  490. package/dist/esm/connectkit/components/ConnectModal/ConnectWithQRCode.mjs.map +0 -1
  491. package/dist/esm/connectkit/components/ConnectModal/ConnectWithQRCode.native.js +0 -140
  492. package/dist/esm/connectkit/components/ConnectModal/ConnectWithQRCode.native.js.map +0 -1
  493. package/dist/esm/connectkit/components/Pages/MobileConnectors/index.mjs +0 -133
  494. package/dist/esm/connectkit/components/Pages/MobileConnectors/index.mjs.map +0 -1
  495. package/dist/esm/connectkit/components/Pages/MobileConnectors/index.native.js +0 -144
  496. package/dist/esm/connectkit/components/Pages/MobileConnectors/index.native.js.map +0 -1
  497. package/dist/esm/connectkit/components/Pages/MobileConnectors/styles.mjs +0 -61
  498. package/dist/esm/connectkit/components/Pages/MobileConnectors/styles.mjs.map +0 -1
  499. package/dist/esm/connectkit/components/Pages/MobileConnectors/styles.native.js +0 -67
  500. package/dist/esm/connectkit/components/Pages/MobileConnectors/styles.native.js.map +0 -1
  501. package/dist/esm/connectkit/connectors/metaMaskSdkConnector.mjs +0 -362
  502. package/dist/esm/connectkit/connectors/metaMaskSdkConnector.mjs.map +0 -1
  503. package/dist/esm/connectkit/connectors/metaMaskSdkConnector.native.js +0 -414
  504. package/dist/esm/connectkit/connectors/metaMaskSdkConnector.native.js.map +0 -1
  505. package/dist/esm/connectkit/hooks/connectors/useCoinbaseWalletUri.mjs +0 -2
  506. package/dist/esm/connectkit/hooks/connectors/useCoinbaseWalletUri.mjs.map +0 -1
  507. package/dist/esm/connectkit/hooks/connectors/useCoinbaseWalletUri.native.js +0 -2
  508. package/dist/esm/connectkit/hooks/connectors/useCoinbaseWalletUri.native.js.map +0 -1
  509. package/dist/esm/connectkit/hooks/connectors/useWalletConnectUri.mjs +0 -88
  510. package/dist/esm/connectkit/hooks/connectors/useWalletConnectUri.mjs.map +0 -1
  511. package/dist/esm/connectkit/hooks/connectors/useWalletConnectUri.native.js +0 -89
  512. package/dist/esm/connectkit/hooks/connectors/useWalletConnectUri.native.js.map +0 -1
  513. package/dist/esm/connectkit/hooks/useWalletConnectModal.mjs +0 -49
  514. package/dist/esm/connectkit/hooks/useWalletConnectModal.mjs.map +0 -1
  515. package/dist/esm/connectkit/hooks/useWalletConnectModal.native.js +0 -51
  516. package/dist/esm/connectkit/hooks/useWalletConnectModal.native.js.map +0 -1
  517. package/dist/jsx/connectkit/components/ConnectModal/ConnectWithQRCode.mjs +0 -108
  518. package/dist/jsx/connectkit/components/ConnectModal/ConnectWithQRCode.mjs.map +0 -1
  519. package/dist/jsx/connectkit/components/ConnectModal/ConnectWithQRCode.native.js +0 -179
  520. package/dist/jsx/connectkit/components/ConnectModal/ConnectWithQRCode.native.js.map +0 -1
  521. package/dist/jsx/connectkit/components/Pages/MobileConnectors/index.mjs +0 -133
  522. package/dist/jsx/connectkit/components/Pages/MobileConnectors/index.mjs.map +0 -1
  523. package/dist/jsx/connectkit/components/Pages/MobileConnectors/index.native.js +0 -183
  524. package/dist/jsx/connectkit/components/Pages/MobileConnectors/index.native.js.map +0 -1
  525. package/dist/jsx/connectkit/components/Pages/MobileConnectors/styles.mjs +0 -61
  526. package/dist/jsx/connectkit/components/Pages/MobileConnectors/styles.mjs.map +0 -1
  527. package/dist/jsx/connectkit/components/Pages/MobileConnectors/styles.native.js +0 -99
  528. package/dist/jsx/connectkit/components/Pages/MobileConnectors/styles.native.js.map +0 -1
  529. package/dist/jsx/connectkit/connectors/metaMaskSdkConnector.mjs +0 -362
  530. package/dist/jsx/connectkit/connectors/metaMaskSdkConnector.mjs.map +0 -1
  531. package/dist/jsx/connectkit/connectors/metaMaskSdkConnector.native.js +0 -453
  532. package/dist/jsx/connectkit/connectors/metaMaskSdkConnector.native.js.map +0 -1
  533. package/dist/jsx/connectkit/hooks/connectors/useCoinbaseWalletUri.mjs +0 -2
  534. package/dist/jsx/connectkit/hooks/connectors/useCoinbaseWalletUri.mjs.map +0 -1
  535. package/dist/jsx/connectkit/hooks/connectors/useCoinbaseWalletUri.native.js +0 -2
  536. package/dist/jsx/connectkit/hooks/connectors/useCoinbaseWalletUri.native.js.map +0 -1
  537. package/dist/jsx/connectkit/hooks/connectors/useWalletConnectUri.mjs +0 -88
  538. package/dist/jsx/connectkit/hooks/connectors/useWalletConnectUri.mjs.map +0 -1
  539. package/dist/jsx/connectkit/hooks/connectors/useWalletConnectUri.native.js +0 -117
  540. package/dist/jsx/connectkit/hooks/connectors/useWalletConnectUri.native.js.map +0 -1
  541. package/dist/jsx/connectkit/hooks/useWalletConnectModal.mjs +0 -49
  542. package/dist/jsx/connectkit/hooks/useWalletConnectModal.mjs.map +0 -1
  543. package/dist/jsx/connectkit/hooks/useWalletConnectModal.native.js +0 -79
  544. package/dist/jsx/connectkit/hooks/useWalletConnectModal.native.js.map +0 -1
  545. package/src/connectkit/components/ConnectModal/ConnectWithQRCode.tsx +0 -188
  546. package/src/connectkit/components/Pages/MobileConnectors/index.tsx +0 -142
  547. package/src/connectkit/components/Pages/MobileConnectors/styles.ts +0 -66
  548. package/src/connectkit/connectors/metaMaskSdkConnector.ts +0 -505
  549. package/src/connectkit/hooks/connectors/useCoinbaseWalletUri.tsx +0 -101
  550. package/src/connectkit/hooks/connectors/useWalletConnectUri.ts +0 -99
  551. package/src/connectkit/hooks/useWalletConnectModal.tsx +0 -52
  552. package/types/connectkit/components/ConnectModal/ConnectWithQRCode.d.ts +0 -6
  553. package/types/connectkit/components/ConnectModal/ConnectWithQRCode.d.ts.map +0 -1
  554. package/types/connectkit/components/Pages/MobileConnectors/index.d.ts +0 -4
  555. package/types/connectkit/components/Pages/MobileConnectors/index.d.ts.map +0 -1
  556. package/types/connectkit/components/Pages/MobileConnectors/styles.d.ts +0 -6
  557. package/types/connectkit/components/Pages/MobileConnectors/styles.d.ts.map +0 -1
  558. package/types/connectkit/connectors/metaMaskSdkConnector.d.ts +0 -30
  559. package/types/connectkit/connectors/metaMaskSdkConnector.d.ts.map +0 -1
  560. package/types/connectkit/hooks/connectors/useCoinbaseWalletUri.d.ts +0 -1
  561. package/types/connectkit/hooks/connectors/useCoinbaseWalletUri.d.ts.map +0 -1
  562. package/types/connectkit/hooks/connectors/useWalletConnectUri.d.ts +0 -8
  563. package/types/connectkit/hooks/connectors/useWalletConnectUri.d.ts.map +0 -1
  564. package/types/connectkit/hooks/useWalletConnectModal.d.ts +0 -5
  565. package/types/connectkit/hooks/useWalletConnectModal.d.ts.map +0 -1
@@ -9,7 +9,6 @@ import {
9
9
  isCoinbaseWalletConnector,
10
10
  isMetaMaskConnector,
11
11
  isPortoConnector,
12
- isWalletConnectConnector,
13
12
  resolveListEntries,
14
13
  useModalState,
15
14
  useScreenRegistry,
@@ -25,7 +24,6 @@ import {
25
24
  RecentlyUsedTag,
26
25
  } from "./styles";
27
26
 
28
- import { useWeb3 } from "../../contexts/web3";
29
27
  import { WalletProps, useWallets } from "../../../wallets/useWallets";
30
28
  import { useLastConnector } from "../../../hooks/useLastConnector";
31
29
  import { setConnectIntent } from "../../../siwe/connectIntent";
@@ -62,13 +60,12 @@ const ConnectorList = () => {
62
60
 
63
61
  const filteredWallets = wallets.filter((wallet) => wallet.id !== aaveAccountConnector?.id);
64
62
 
65
- const walletsToDisplay =
66
- context.options?.hideRecentBadge || lastConnectorId === "walletConnect" // do not hoist walletconnect to top of list
67
- ? filteredWallets
68
- : [
69
- ...filteredWallets.filter((wallet) => lastConnectorId === wallet.connector.id),
70
- ...filteredWallets.filter((wallet) => lastConnectorId !== wallet.connector.id),
71
- ];
63
+ const walletsToDisplay = context.options?.hideRecentBadge
64
+ ? filteredWallets
65
+ : [
66
+ ...filteredWallets.filter((wallet) => lastConnectorId === wallet.connector.id),
67
+ ...filteredWallets.filter((wallet) => lastConnectorId !== wallet.connector.id),
68
+ ];
72
69
 
73
70
  // Group by brand name (first-seen order preserved).
74
71
  const groups: WalletGroup[] = [];
@@ -205,63 +202,36 @@ const ConnectorItem = ({
205
202
  isRecent?: boolean;
206
203
  labelOverride?: string;
207
204
  }) => {
208
- const {
209
- connect: { getUri },
210
- } = useWeb3();
211
- const uri = getUri();
212
205
  const isMobile = useIsMobile();
213
206
  const context = useContext();
214
207
 
215
208
  const { connect } = useConnect();
216
209
 
217
- let deeplink =
218
- !isMetaMaskConnector(wallet.connector.id) && // metaMaskSDK deep-links via the SDK's connect(), never via WalletConnect
219
- ((!wallet.isInstalled && isMobile) || (wallet.shouldDeeplinkDesktop && !isMobile))
220
- ? wallet.getWalletConnectDeeplink?.(uri ?? "")
221
- : undefined;
222
-
223
- const redirectToMoreWallets = isMobile && isWalletConnectConnector(wallet.id);
224
210
  // Safari requires opening popup on user gesture, so we connect immediately here.
225
- // metaMaskSDK on mobile must also connect inside the tap gesture so the SDK's
226
- // app deeplink isn't blocked by the browser's user-activation rules.
211
+ // MetaMask on mobile must also connect inside the tap gesture so its app
212
+ // deeplink isn't blocked by the browser's user-activation rules.
227
213
  const shouldConnectImmediately =
228
214
  ((detectBrowser() === "safari" || detectBrowser() === "ios") &&
229
215
  (isCoinbaseWalletConnector(wallet.connector.id) || isPortoConnector(wallet.connector.id))) ||
230
216
  (isMobile && isMetaMaskConnector(wallet.connector.id));
231
217
 
232
- if (redirectToMoreWallets || shouldConnectImmediately) deeplink = undefined; // mobile redirects to more wallets page
233
-
234
218
  return (
235
219
  <ConnectorButton
236
220
  type="button"
237
- as={deeplink ? "a" : undefined}
238
- href={deeplink ? deeplink : undefined}
239
221
  disabled={context.route !== routes.CONNECTORS}
240
- onClick={
241
- deeplink
242
- ? undefined
243
- : () => {
244
- if (redirectToMoreWallets) {
245
- context.setRoute(routes.MOBILECONNECTORS);
246
- } else {
247
- if (shouldConnectImmediately) {
248
- // Mobile deeplinks out to the wallet app and comes back through a
249
- // page remount, so record the intent to continue into signing before
250
- // we lose all in-memory state (see connectIntent).
251
- setConnectIntent();
252
- connect({ connector: wallet?.connector });
253
- }
254
- context.setRoute(routes.CONNECT);
255
- context.setConnector({ id: wallet.id });
256
- }
257
- }
258
- }
222
+ onClick={() => {
223
+ if (shouldConnectImmediately) {
224
+ // Mobile deeplinks out to the wallet app and comes back through a
225
+ // page remount, so record the intent to continue into signing before
226
+ // we lose all in-memory state (see connectIntent).
227
+ setConnectIntent();
228
+ connect({ connector: wallet?.connector });
229
+ }
230
+ context.setRoute(routes.CONNECT);
231
+ context.setConnector({ id: wallet.id });
232
+ }}
259
233
  >
260
- <ConnectorIcon
261
- data-small={wallet.iconShouldShrink}
262
- data-shape={wallet.iconShape}
263
- data-background={redirectToMoreWallets}
264
- >
234
+ <ConnectorIcon data-small={wallet.iconShouldShrink} data-shape={wallet.iconShape}>
265
235
  {wallet.iconConnector ?? wallet.icon}
266
236
  </ConnectorIcon>
267
237
  <ConnectorLabel>
@@ -1,80 +1,29 @@
1
1
  import { AnimatePresence, motion } from "framer-motion";
2
- import { useEffect, useState } from "react";
3
2
 
4
3
  import { useContext, contentVariants, Alert } from "@multiplatform.one/connectkit";
5
4
  import { useWallet } from "../../wallets/useWallets";
6
5
 
7
6
  import ConnectWithInjector from "./ConnectWithInjector";
8
- import ConnectWithQRCode from "./ConnectWithQRCode";
9
-
10
- const states = {
11
- QRCODE: "qrcode",
12
- INJECTOR: "injector",
13
- };
14
7
 
15
8
  const ConnectUsing = () => {
16
9
  const context = useContext();
17
10
  const wallet = useWallet(context.connector.id);
18
11
 
19
- // If cannot be scanned, display injector flow, which if extension is not installed will show CTA to install it.
20
- // wallet non-EVM wallets are always injected/extension (no WalletConnect URI) → never QR.
21
- const isQrCode =
22
- (wallet?.ecosystem ?? "evm") === "evm" &&
23
- !wallet?.isInstalled &&
24
- wallet?.getWalletConnectDeeplink;
25
-
26
- const [status, setStatus] = useState(isQrCode ? states.QRCODE : states.INJECTOR);
27
-
28
- useEffect(() => {
29
- // if no provider, change to qrcode
30
- const checkProvider = async () => {
31
- const res = await wallet?.connector.getProvider();
32
- if (!res) {
33
- setStatus(states.QRCODE);
34
- setTimeout(context.triggerResize, 10); // delay required here for modal to resize
35
- }
36
- };
37
- if (status === states.INJECTOR && (wallet?.ecosystem ?? "evm") === "evm") checkProvider();
38
- }, []);
39
-
40
12
  if (!wallet) return <Alert>Connector not found {context.connector.id}</Alert>;
41
13
 
14
+ // Every connector runs its own flow: an extension, a wallet app deeplink, or the
15
+ // wallet SDK's own popup or QR. An unavailable one shows the install call to action.
42
16
  return (
43
17
  <AnimatePresence>
44
- {status === states.QRCODE && (
45
- <motion.div
46
- key={states.QRCODE}
47
- initial={"initial"}
48
- animate={"animate"}
49
- exit={"exit"}
50
- variants={contentVariants}
51
- >
52
- <ConnectWithQRCode
53
- switchConnectMethod={(id?: string) => {
54
- //if (id) setId(id);
55
- setStatus(states.INJECTOR);
56
- setTimeout(context.triggerResize, 10); // delay required here for modal to resize
57
- }}
58
- />
59
- </motion.div>
60
- )}
61
- {status === states.INJECTOR && (
62
- <motion.div
63
- key={states.INJECTOR}
64
- initial={"initial"}
65
- animate={"animate"}
66
- exit={"exit"}
67
- variants={contentVariants}
68
- >
69
- <ConnectWithInjector
70
- switchConnectMethod={(id?: string) => {
71
- //if (id) setId(id);
72
- setStatus(states.QRCODE);
73
- setTimeout(context.triggerResize, 10); // delay required here for modal to resize
74
- }}
75
- />
76
- </motion.div>
77
- )}
18
+ <motion.div
19
+ key="injector"
20
+ initial={"initial"}
21
+ animate={"animate"}
22
+ exit={"exit"}
23
+ variants={contentVariants}
24
+ >
25
+ <ConnectWithInjector />
26
+ </motion.div>
78
27
  </AnimatePresence>
79
28
  );
80
29
  };
@@ -26,7 +26,6 @@ import {
26
26
  CustomQRCode,
27
27
  detectBrowser,
28
28
  isMetaMaskConnector,
29
- isWalletConnectConnector,
30
29
  useIsMobile,
31
30
  useLocales,
32
31
  useContext,
@@ -81,9 +80,8 @@ const contentVariants: Variants = {
81
80
  };
82
81
 
83
82
  const ConnectWithInjector: React.FC<{
84
- switchConnectMethod: (id?: string) => void;
85
83
  forceState?: typeof states;
86
- }> = ({ switchConnectMethod, forceState }) => {
84
+ }> = ({ forceState }) => {
87
85
  const { connect } = useConnect({
88
86
  mutation: {
89
87
  onMutate: (connector?: any) => {
@@ -147,11 +145,11 @@ const ConnectWithInjector: React.FC<{
147
145
 
148
146
  const [showTryAgainTooltip, setShowTryAgainTooltip] = useState(false);
149
147
 
150
- // The MetaMask SDK's mobile deeplink (metamask://connect/mwp?p=...), captured
148
+ // MetaMask Connect's mobile deeplink (metamask://connect/mwp?p=...), captured
151
149
  // from its display_uri event so we can offer it as a real tap target (see the
152
- // CONNECTING render below). If the SDK never emits the event — e.g. it threw
153
- // during init — this stays undefined and no tap target renders, so the modal
154
- // sits on "Open <wallet>" forever; that failure mode is upstream of here.
150
+ // CONNECTING render below). If it never emits the event — e.g. it threw during
151
+ // init — this stays undefined and no tap target renders, so the modal sits on
152
+ // "Open <wallet>" forever; that failure mode is upstream of here.
155
153
  const [sdkDeeplink, setSdkDeeplink] = useState<string | undefined>(undefined);
156
154
  useEffect(() => {
157
155
  const connector = wallet?.connector;
@@ -178,7 +176,7 @@ const ConnectWithInjector: React.FC<{
178
176
 
179
177
  const browser = detectBrowser();
180
178
  const isMobile = useIsMobile();
181
- // Tauri (and similar) shells: MetaMask SDK runs headless and emits display_uri;
179
+ // Tauri (and similar) shells: MetaMask Connect runs headless and emits display_uri;
182
180
  // render that URI as a QR here. Mobile keeps the anchor-tap deeplink path.
183
181
  const showEmbeddedDesktopMetaMaskQr =
184
182
  !isMobile &&
@@ -273,22 +271,6 @@ const ConnectWithInjector: React.FC<{
273
271
  );
274
272
  }
275
273
 
276
- // TODO: Make this more generic
277
- if (isWalletConnectConnector(wallet?.connector.id)) {
278
- return (
279
- <PageContent>
280
- <Container>
281
- <ModalHeading>Invalid State</ModalHeading>
282
- <ModalContent>
283
- <Alert>
284
- WalletConnect does not have an injection flow. This state should never happen.
285
- </Alert>
286
- </ModalContent>
287
- </Container>
288
- </PageContent>
289
- );
290
- }
291
-
292
274
  return (
293
275
  <PageContent>
294
276
  <Container>
@@ -385,22 +367,6 @@ const ConnectWithInjector: React.FC<{
385
367
  </ModalH1>
386
368
  <ModalBody>{locales.injectionScreen_failed_p}</ModalBody>
387
369
  </ModalContent>
388
-
389
- {/* Reason: Coinbase Wallet does not expose a QRURI when extension is installed */}
390
- {/*
391
- {wallet?.getWalletConnectDeeplink &&
392
- wallet.id !== 'coinbaseWalletSDK' && (
393
- <>
394
- <OrDivider />
395
- <Button
396
- icon={<Scan />}
397
- onClick={() => switchConnectMethod(id)}
398
- >
399
- {locales.scanTheQRCode}
400
- </Button>
401
- </>
402
- )}
403
- */}
404
370
  </Content>
405
371
  )}
406
372
  {status === states.REJECTED && (
@@ -415,22 +381,6 @@ const ConnectWithInjector: React.FC<{
415
381
  <ModalH1>{locales.injectionScreen_rejected_h1}</ModalH1>
416
382
  <ModalBody>{locales.injectionScreen_rejected_p}</ModalBody>
417
383
  </ModalContent>
418
-
419
- {/* Reason: Coinbase Wallet does not expose a QRURI when extension is installed */}
420
- {/*
421
- {wallet?.getWalletConnectDeeplink &&
422
- wallet.id !== 'coinbaseWalletSDK' && (
423
- <>
424
- <OrDivider />
425
- <Button
426
- icon={<Scan />}
427
- onClick={() => switchConnectMethod(id)}
428
- >
429
- {locales.scanTheQRCode}
430
- </Button>
431
- </>
432
- )}
433
- */}
434
384
  </Content>
435
385
  )}
436
386
  {(status === states.CONNECTING || status === states.EXPIRING) && (
@@ -479,15 +429,15 @@ const ConnectWithInjector: React.FC<{
479
429
  {showEmbeddedDesktopMetaMaskQr && (
480
430
  <CustomQRCode value={deeplink} image={walletInfo.icon} imagePosition="center" />
481
431
  )}
482
- {/* The SDK auto-opens its deeplink, but browsers drop external-
483
- protocol navigations whose user activation expired while the
484
- SDK did its async setup (chunk import + relay round-trip) —
432
+ {/* MetaMask Connect auto-opens its deeplink, but browsers drop external-
433
+ protocol navigations whose user activation expired while it
434
+ did its async setup (chunk import + relay round-trip) —
485
435
  silently, on slow networks especially. And a JS navigation
486
436
  (location.href) to a universal link NEVER app-switches on
487
437
  iOS: WebKit only follows universal links into the app from a
488
438
  genuine same-tab anchor tap; JS-set locations land on the
489
439
  metamask.app.link web fallback instead (observed inside
490
- ASWebAuthenticationSession). So once the SDK emits
440
+ ASWebAuthenticationSession). So once it emits
491
441
  display_uri we render it as a REAL anchor — same-tab,
492
442
  because auth sheets can't open new tabs. */}
493
443
  {isMobile && isMetaMaskConnector(wallet?.connector.id) && deeplink && (
@@ -557,16 +507,6 @@ const ConnectWithInjector: React.FC<{
557
507
  <ModalH1>{locales.injectionScreen_install_h1}</ModalH1>
558
508
  <ModalBody>{locales.injectionScreen_install_p}</ModalBody>
559
509
  </ModalContent>
560
- {/**
561
- {(wallet.getWalletConnectDeeplink &&
562
- (!wallet.isInstalled && extensionUrl)) && <OrDivider />}
563
-
564
- {wallet.getWalletConnectDeeplink && (
565
- <Button icon={<Scan />} onClick={switchConnectMethod}>
566
- {locales.scanTheQRCode}
567
- </Button>
568
- )}
569
- */}
570
510
  {!wallet.isInstalled && extensionUrl && (
571
511
  <Button href={extensionUrl} icon={<BrowserIcon />}>
572
512
  {locales.installTheExtension}
@@ -17,11 +17,9 @@ import ConnectUsing from "./ConnectUsing";
17
17
  import DownloadApp from "../Pages/DownloadApp";
18
18
  import Profile from "../Pages/Profile";
19
19
  import SwitchNetworks from "../Pages/SwitchNetworks";
20
- import MobileConnectors from "../Pages/MobileConnectors";
21
20
  import SignInWithEthereum from "../Pages/SignInWithEthereum";
22
21
 
23
22
  import { ConnectKitButton } from "../ConnectButton";
24
- import { getAppName } from "../../defaultConfig";
25
23
  import { ConnectKitThemeProvider, styled, useModalState } from "@multiplatform.one/connectkit";
26
24
  import { keyframes } from "styled-components";
27
25
  import { Web3ContextProvider } from "../contexts/web3";
@@ -135,7 +133,6 @@ const ConnectModal: React.FC<{
135
133
  about: <About />,
136
134
  download: <DownloadApp />,
137
135
  connectors: <Connectors />,
138
- mobileConnectors: <MobileConnectors />,
139
136
  connect: <ConnectUsing />,
140
137
  profile: <Profile closeModal={() => setIsOpen(false)} />,
141
138
  switchNetworks: <SwitchNetworks />,
@@ -203,23 +200,8 @@ const ConnectModal: React.FC<{
203
200
  }
204
201
  }, [isConnected]);
205
202
 
206
- /* When pulling data into WalletConnect, it prioritises the og:title tag over the title tag */
207
- useEffect(() => {
208
- const appName = getAppName();
209
- if (!appName || (!open && !inline)) return;
210
-
211
- const title = document.createElement("meta");
212
- title.setAttribute("property", "og:title");
213
- title.setAttribute("content", appName);
214
- document.head.prepend(title);
215
-
216
- return () => {
217
- document.head.removeChild(title);
218
- };
219
- }, [open, inline]);
220
-
221
203
  return (
222
- <Web3ContextProvider enabled={isOpen}>
204
+ <Web3ContextProvider>
223
205
  <ConnectKitThemeProvider theme={theme} customTheme={customTheme} mode={mode}>
224
206
  <Container ref={ref}>
225
207
  {inline && onClose && (
@@ -8,13 +8,9 @@ import { Address, Chain } from "viem";
8
8
  import { useAccount } from "wagmi";
9
9
 
10
10
  import { useChains } from "../../../hooks/useChains";
11
- import { useWalletConnectUri } from "../../../hooks/connectors/useWalletConnectUri";
12
11
  import { useChainIsSupported } from "../../../hooks/useChainIsSupported";
13
12
 
14
13
  type Web3Context = {
15
- connect: {
16
- getUri: (id?: string) => string;
17
- };
18
14
  dapp: {
19
15
  chains: Chain[];
20
16
  };
@@ -26,36 +22,18 @@ type Web3Context = {
26
22
  };
27
23
 
28
24
  const Web3Context = React.createContext({
29
- connect: {
30
- getUri: () => "",
31
- },
32
25
  dapp: {
33
26
  chains: [],
34
27
  },
35
28
  account: undefined,
36
29
  } as Web3Context);
37
30
 
38
- export const Web3ContextProvider = ({
39
- enabled,
40
- children,
41
- }: {
42
- enabled?: boolean;
43
- children: React.ReactNode;
44
- }) => {
45
- const { uri: walletConnectUri } = useWalletConnectUri({
46
- enabled,
47
- });
48
-
31
+ export const Web3ContextProvider = ({ children }: { children: React.ReactNode }) => {
49
32
  const { address: currentAddress, chain } = useAccount();
50
33
  const chainIsSupported = useChainIsSupported(chain?.id);
51
34
  const chains = useChains();
52
35
 
53
36
  const value = {
54
- connect: {
55
- getUri: (id?: string) => {
56
- return walletConnectUri;
57
- },
58
- },
59
37
  dapp: {
60
38
  chains,
61
39
  },
@@ -0,0 +1,87 @@
1
+ // @vitest-environment happy-dom
2
+ import { createConfig, createStorage, http } from "@wagmi/core";
3
+ import { mainnet } from "viem/chains";
4
+ import { beforeEach, describe, expect, it, vi } from "vitest";
5
+
6
+ const { providerBuilt } = vi.hoisted(() => ({ providerBuilt: vi.fn() }));
7
+
8
+ // The real module's constructor mounts Aave's iframe and starts AaveAccountSdk.connect().
9
+ // Its own aaveAccountConnector() builds that provider as soon as it is called, which
10
+ // is what the pre-fix defaultConnectors used.
11
+ vi.mock("@aave/account", async () => {
12
+ const { injected } = await import("@wagmi/connectors/injected");
13
+ class EthereumProvider {
14
+ constructor(options?: unknown) {
15
+ providerBuilt(options);
16
+ }
17
+ request = vi.fn(async ({ method }: { method: string }) =>
18
+ method === "eth_chainId" ? "0x1" : ["0x0000000000000000000000000000000000000001"],
19
+ );
20
+ on = vi.fn();
21
+ removeListener = vi.fn();
22
+ }
23
+ return {
24
+ EthereumProvider,
25
+ aaveAccountConnector: (options?: unknown) => {
26
+ const provider = new EthereumProvider(options);
27
+ return injected({
28
+ shimDisconnect: false,
29
+ target: () => ({
30
+ id: "aaveAccountProvider",
31
+ name: "Aave Account",
32
+ provider: provider as never,
33
+ }),
34
+ });
35
+ },
36
+ };
37
+ });
38
+ vi.mock("@metamask/connect-evm", () => ({ createEVMClient: vi.fn(() => new Promise(() => {})) }));
39
+
40
+ import getDefaultConfig from "../defaultConfig";
41
+ import { aaveAccountConnector, aaveAccountConnectorId } from "./aaveAccountConnector";
42
+
43
+ const memory = () => {
44
+ const store = new Map<string, string>();
45
+ return {
46
+ getItem: (key: string) => store.get(key) ?? null,
47
+ setItem: (key: string, value: string) => void store.set(key, value),
48
+ removeItem: (key: string) => void store.delete(key),
49
+ };
50
+ };
51
+
52
+ describe("Aave Account connector", () => {
53
+ beforeEach(() => providerBuilt.mockClear());
54
+
55
+ it("is off by default in getDefaultConfig", () => {
56
+ const config = createConfig(getDefaultConfig({ appName: "test", chains: [mainnet] }));
57
+ expect(config.connectors.some((c) => c.id === aaveAccountConnectorId)).toBe(false);
58
+ });
59
+
60
+ it("builds no Aave provider when a config opts in, until the user connects", async () => {
61
+ const config = createConfig({
62
+ ...getDefaultConfig({ appName: "test", chains: [mainnet], enableAaveAccount: true }),
63
+ storage: createStorage({ storage: memory() }),
64
+ });
65
+ const aave = config.connectors.find((c) => c.id === aaveAccountConnectorId)!;
66
+ expect(aave).toBeDefined();
67
+ expect(await aave.getProvider()).toBeUndefined();
68
+ expect(await aave.isAuthorized()).toBe(false);
69
+ expect(providerBuilt).not.toHaveBeenCalled();
70
+
71
+ await aave.connect();
72
+ expect(providerBuilt).toHaveBeenCalledOnce();
73
+ });
74
+
75
+ it("builds the provider to reconnect when Aave Account was the last connector", async () => {
76
+ const storage = createStorage({ storage: memory() });
77
+ await storage.setItem("recentConnectorId", aaveAccountConnectorId);
78
+ const config = createConfig({
79
+ chains: [mainnet],
80
+ connectors: [aaveAccountConnector()],
81
+ transports: { [mainnet.id]: http() },
82
+ storage,
83
+ });
84
+ expect(await config.connectors[0].getProvider()).toBeDefined();
85
+ expect(providerBuilt).toHaveBeenCalledOnce();
86
+ });
87
+ });
@@ -0,0 +1,43 @@
1
+ // @aave/account's own aaveAccountConnector() builds its EthereumProvider while the
2
+ // wagmi config is built. That constructor mounts Aave's hidden iframe and calls
3
+ // AaveAccountSdk.connect() on every page load, and when the connect does not
4
+ // finish the SDK rejects unhandled: "Aave Account is not connected" on every
5
+ // Keycloak login page (MPO-378). This builds the provider only when the user picks
6
+ // Aave Account, or when wagmi reconnects the Aave Account it connected last.
7
+ import { EthereumProvider, type EthereumProviderOptions } from "@aave/account";
8
+ import { injected } from "@wagmi/connectors/injected";
9
+ import type { CreateConnectorFn } from "wagmi";
10
+
11
+ export const aaveAccountConnectorId = "aaveAccountProvider";
12
+
13
+ export function aaveAccountConnector(options?: EthereumProviderOptions): CreateConnectorFn {
14
+ let provider: EthereumProvider | undefined;
15
+ const ensureProvider = () => (provider ??= new EthereumProvider(options));
16
+ const base = injected({
17
+ shimDisconnect: false,
18
+ target: () => ({
19
+ id: aaveAccountConnectorId,
20
+ name: "Aave Account",
21
+ provider: () => provider as never,
22
+ }),
23
+ });
24
+
25
+ return (config) => {
26
+ const connector = base(config);
27
+ return {
28
+ ...connector,
29
+ async connect(parameters) {
30
+ ensureProvider();
31
+ return connector.connect.call(this, parameters);
32
+ },
33
+ async getProvider(parameters) {
34
+ if (
35
+ !provider &&
36
+ (await config.storage?.getItem("recentConnectorId")) === aaveAccountConnectorId
37
+ )
38
+ ensureProvider();
39
+ return connector.getProvider.call(this, parameters);
40
+ },
41
+ } as ReturnType<typeof base>;
42
+ };
43
+ }
@@ -23,21 +23,21 @@ describe("metaMaskOptionsForEmbeddedDesktop", () => {
23
23
  window.open = originalOpen;
24
24
  });
25
25
 
26
- it("disables deeplink navigation and SDK modal", () => {
26
+ it("disables deeplink navigation and the MetaMask Connect modal", () => {
27
27
  const opts = metaMaskOptionsForEmbeddedDesktop();
28
28
  expect(opts.useDeeplink).toBe(false);
29
29
  expect(opts.headless).toBe(true);
30
30
  });
31
31
 
32
- it("openDeeplink opens https in a new window and ignores custom schemes", () => {
32
+ it("preferredOpenLink opens https in a new window and ignores custom schemes", () => {
33
33
  const open = vi.fn();
34
34
  window.open = open;
35
- const { openDeeplink } = metaMaskOptionsForEmbeddedDesktop();
35
+ const { preferredOpenLink } = metaMaskOptionsForEmbeddedDesktop();
36
36
 
37
- openDeeplink("metamask://connect?channelId=abc");
37
+ preferredOpenLink("metamask://connect?channelId=abc");
38
38
  expect(open).not.toHaveBeenCalled();
39
39
 
40
- openDeeplink("https://metamask.app.link/connect?channelId=abc");
40
+ preferredOpenLink("https://metamask.app.link/connect?channelId=abc");
41
41
  expect(open).toHaveBeenCalledWith(
42
42
  "https://metamask.app.link/connect?channelId=abc",
43
43
  "_blank",
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Tauri (and similar) desktop shells load the *web* bundle inside a native
3
- * WebView. Browser extensions never inject there, so MetaMask must use the SDK
3
+ * WebView. Browser extensions never inject there, so MetaMask must use the
4
4
  * remote/QR path — never `window.location.href = metamask://…`, which would
5
5
  * navigate the whole WebView away from the app.
6
6
  *
@@ -22,21 +22,21 @@ export function isEmbeddedDesktopWebview(
22
22
  export type MetaMaskEmbeddedDesktopOptions = {
23
23
  /** Prefer https://metamask.app.link over metamask:// in the QR payload. */
24
24
  useDeeplink: false;
25
- /** Suppress SDK InstallModal custom-elements (WKWebView-hostile); ConnectKit renders QR. */
25
+ /** Suppress MetaMask Connect's install modal (WKWebView-hostile); ConnectKit renders QR. */
26
26
  headless: true;
27
27
  /**
28
28
  * Never assign location.href for custom schemes. https universal links may
29
29
  * open in the system browser via window.open; custom schemes are ignored.
30
30
  */
31
- openDeeplink: (url: string) => void;
31
+ preferredOpenLink: (url: string) => void;
32
32
  };
33
33
 
34
- /** MetaMask SDK options that are safe inside Tauri/WebView2/WKWebView. */
34
+ /** MetaMask Connect options that are safe inside Tauri/WebView2/WKWebView. */
35
35
  export function metaMaskOptionsForEmbeddedDesktop(): MetaMaskEmbeddedDesktopOptions {
36
36
  return {
37
37
  useDeeplink: false,
38
38
  headless: true,
39
- openDeeplink: (url: string) => {
39
+ preferredOpenLink: (url: string) => {
40
40
  if (typeof window === "undefined") return;
41
41
  // Custom schemes (metamask://) must not navigate the WebView.
42
42
  if (!/^https?:\/\//i.test(url)) return;