@web3auth/no-modal 10.0.0-alpha.0 → 10.0.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (245) hide show
  1. package/dist/lib.cjs/base/chain/IChainInterface.js +2 -2
  2. package/dist/lib.cjs/base/chain/config.js +63 -22
  3. package/dist/lib.cjs/base/connector/baseConnector.js +67 -0
  4. package/dist/lib.cjs/base/connector/constants.js +26 -0
  5. package/dist/lib.cjs/base/errors/index.js +2 -2
  6. package/dist/lib.cjs/base/plugin/errors.js +2 -2
  7. package/dist/lib.cjs/base/wallet/index.js +15 -20
  8. package/dist/lib.cjs/connectors/auth-connector/authConnector.js +392 -0
  9. package/dist/lib.cjs/{adapters/base-evm-adapter/baseEvmAdapter.js → connectors/base-evm-connector/baseEvmConnector.js} +22 -19
  10. package/dist/lib.cjs/{adapters/base-solana-adapter/baseSolanaAdapter.js → connectors/base-solana-connector/baseSolanaConnector.js} +24 -23
  11. package/dist/lib.cjs/connectors/coinbase-connector/coinbaseConnector.js +151 -0
  12. package/dist/lib.cjs/connectors/injected-evm-connector/index.js +12 -0
  13. package/dist/lib.cjs/{adapters/default-evm-adapter/injectedEvmAdapter.js → connectors/injected-evm-connector/injectedEvmConnector.js} +54 -38
  14. package/dist/lib.cjs/connectors/injected-solana-connector/index.js +25 -0
  15. package/dist/lib.cjs/{adapters/default-solana-adapter/walletStandardAdapter.js → connectors/injected-solana-connector/walletStandardConnector.js} +57 -48
  16. package/dist/lib.cjs/{adapters/wallet-connect-v2-adapter → connectors/wallet-connect-v2-connector}/WalletConnectV2Provider.js +40 -90
  17. package/dist/lib.cjs/{adapters/wallet-connect-v2-adapter → connectors/wallet-connect-v2-connector}/config.js +23 -26
  18. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/index.js +20 -0
  19. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/walletConnectV2Connector.js +417 -0
  20. package/dist/lib.cjs/{adapters/wallet-connect-v2-adapter → connectors/wallet-connect-v2-connector}/walletConnectV2Utils.js +12 -25
  21. package/dist/lib.cjs/index.js +100 -82
  22. package/dist/lib.cjs/noModal.js +291 -239
  23. package/dist/lib.cjs/plugins/nft-checkout-plugin/plugin.js +9 -4
  24. package/dist/lib.cjs/plugins/wallet-services-plugin/plugin.js +43 -199
  25. package/dist/lib.cjs/providers/account-abstraction-provider/index.js +32 -0
  26. package/dist/lib.cjs/providers/account-abstraction-provider/providers/AccountAbstractionProvider.js +99 -31
  27. package/dist/lib.cjs/providers/base-provider/CommonJRPCProvider.js +21 -26
  28. package/dist/lib.cjs/providers/base-provider/baseProvider.js +29 -24
  29. package/dist/lib.cjs/providers/base-provider/commonPrivateKeyProvider.js +2 -13
  30. package/dist/lib.cjs/providers/base-provider/index.js +18 -0
  31. package/dist/lib.cjs/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.js +34 -57
  32. package/dist/lib.cjs/providers/ethereum-provider/rpc/ethRpcMiddlewares.js +1 -30
  33. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.js +9 -11
  34. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/base/providerHandlers.js +3 -5
  35. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/walletStandardProvider.js +83 -2
  36. package/dist/lib.cjs/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyProvider.js +24 -54
  37. package/dist/lib.cjs/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyUtils.js +18 -27
  38. package/dist/lib.cjs/providers/solana-provider/rpc/solanaRpcMiddlewares.js +5 -5
  39. package/dist/lib.cjs/providers/solana-provider/solanaWallet.js +44 -18
  40. package/dist/lib.cjs/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.js +23 -58
  41. package/dist/lib.cjs/providers/xrpl-provider/rpc/xrplRpcMiddlewares.js +1 -3
  42. package/dist/lib.cjs/react/no-modal/Web3AuthInnerContext.js +18 -42
  43. package/dist/lib.cjs/react/wallet-services-plugin/WalletServicesContext.js +3 -0
  44. package/dist/lib.cjs/vue/no-modal/Web3AuthProvider.js +16 -42
  45. package/dist/lib.cjs/vue/wallet-services-plugin/WalletServicesProvider.js +4 -0
  46. package/dist/lib.esm/base/chain/IChainInterface.js +2 -2
  47. package/dist/lib.esm/base/chain/config.js +63 -22
  48. package/dist/lib.esm/base/connector/baseConnector.js +65 -0
  49. package/dist/lib.esm/base/connector/constants.js +22 -0
  50. package/dist/lib.esm/base/errors/index.js +2 -2
  51. package/dist/lib.esm/base/plugin/errors.js +2 -2
  52. package/dist/lib.esm/base/wallet/index.js +11 -16
  53. package/dist/lib.esm/connectors/auth-connector/authConnector.js +390 -0
  54. package/dist/lib.esm/{adapters/base-evm-adapter/baseEvmAdapter.js → connectors/base-evm-connector/baseEvmConnector.js} +23 -20
  55. package/dist/lib.esm/{adapters/base-solana-adapter/baseSolanaAdapter.js → connectors/base-solana-connector/baseSolanaConnector.js} +25 -24
  56. package/dist/lib.esm/connectors/coinbase-connector/coinbaseConnector.js +149 -0
  57. package/dist/lib.esm/connectors/injected-evm-connector/index.js +2 -0
  58. package/dist/lib.esm/{adapters/default-evm-adapter/injectedEvmAdapter.js → connectors/injected-evm-connector/injectedEvmConnector.js} +54 -39
  59. package/dist/lib.esm/connectors/injected-solana-connector/index.js +18 -0
  60. package/dist/lib.esm/{adapters/default-solana-adapter/walletStandardAdapter.js → connectors/injected-solana-connector/walletStandardConnector.js} +57 -49
  61. package/dist/lib.esm/{adapters/wallet-connect-v2-adapter → connectors/wallet-connect-v2-connector}/WalletConnectV2Provider.js +41 -91
  62. package/dist/lib.esm/{adapters/wallet-connect-v2-adapter → connectors/wallet-connect-v2-connector}/config.js +23 -26
  63. package/dist/lib.esm/connectors/wallet-connect-v2-connector/index.js +3 -0
  64. package/dist/lib.esm/connectors/wallet-connect-v2-connector/walletConnectV2Connector.js +415 -0
  65. package/dist/lib.esm/{adapters/wallet-connect-v2-adapter → connectors/wallet-connect-v2-connector}/walletConnectV2Utils.js +13 -25
  66. package/dist/lib.esm/index.js +23 -28
  67. package/dist/lib.esm/noModal.js +290 -238
  68. package/dist/lib.esm/plugins/nft-checkout-plugin/plugin.js +9 -4
  69. package/dist/lib.esm/plugins/wallet-services-plugin/plugin.js +42 -199
  70. package/dist/lib.esm/providers/account-abstraction-provider/index.js +2 -0
  71. package/dist/lib.esm/providers/account-abstraction-provider/providers/AccountAbstractionProvider.js +96 -31
  72. package/dist/lib.esm/providers/base-provider/CommonJRPCProvider.js +22 -27
  73. package/dist/lib.esm/providers/base-provider/baseProvider.js +29 -24
  74. package/dist/lib.esm/providers/base-provider/commonPrivateKeyProvider.js +2 -13
  75. package/dist/lib.esm/providers/base-provider/index.js +5 -0
  76. package/dist/lib.esm/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.js +34 -57
  77. package/dist/lib.esm/providers/ethereum-provider/rpc/ethRpcMiddlewares.js +2 -30
  78. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.js +9 -11
  79. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/base/providerHandlers.js +3 -5
  80. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/walletStandardProvider.js +83 -2
  81. package/dist/lib.esm/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyProvider.js +24 -54
  82. package/dist/lib.esm/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyUtils.js +18 -27
  83. package/dist/lib.esm/providers/solana-provider/rpc/solanaRpcMiddlewares.js +5 -5
  84. package/dist/lib.esm/providers/solana-provider/solanaWallet.js +44 -18
  85. package/dist/lib.esm/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.js +23 -58
  86. package/dist/lib.esm/providers/xrpl-provider/rpc/xrplRpcMiddlewares.js +1 -3
  87. package/dist/lib.esm/react/no-modal/Web3AuthInnerContext.js +18 -42
  88. package/dist/lib.esm/react/wallet-services-plugin/WalletServicesContext.js +3 -0
  89. package/dist/lib.esm/vue/no-modal/Web3AuthProvider.js +16 -42
  90. package/dist/lib.esm/vue/wallet-services-plugin/WalletServicesProvider.js +4 -0
  91. package/dist/noModal.cjs.js +12650 -24362
  92. package/dist/noModal.umd.min.js +1 -1
  93. package/dist/noModal.umd.min.js.LICENSE.txt +0 -9
  94. package/dist/types/base/chain/IChainInterface.d.ts +2 -2
  95. package/dist/types/base/chain/config.d.ts +2 -2
  96. package/dist/types/base/connector/baseConnector.d.ts +37 -0
  97. package/dist/types/base/{adapter → connector}/constants.d.ts +7 -4
  98. package/dist/types/base/{adapter → connector}/index.d.ts +1 -1
  99. package/dist/types/base/{adapter → connector}/interfaces.d.ts +47 -45
  100. package/dist/types/base/core/IWeb3Auth.d.ts +75 -34
  101. package/dist/types/base/errors/index.d.ts +1 -1
  102. package/dist/types/base/hooks/index.d.ts +2 -6
  103. package/dist/types/base/index.d.ts +1 -1
  104. package/dist/types/base/plugin/IPlugin.d.ts +4 -7
  105. package/dist/types/base/plugin/errors.d.ts +1 -1
  106. package/dist/types/base/utils.d.ts +1 -1
  107. package/dist/types/base/wallet/index.d.ts +9 -13
  108. package/dist/types/connectors/auth-connector/authConnector.d.ts +45 -0
  109. package/dist/types/connectors/auth-connector/index.d.ts +2 -0
  110. package/dist/types/connectors/auth-connector/interface.d.ts +14 -0
  111. package/dist/types/connectors/base-evm-connector/baseEvmConnector.d.ts +7 -0
  112. package/dist/types/connectors/base-evm-connector/index.d.ts +1 -0
  113. package/dist/types/connectors/base-solana-connector/baseSolanaConnector.d.ts +7 -0
  114. package/dist/types/connectors/base-solana-connector/index.d.ts +1 -0
  115. package/dist/types/connectors/coinbase-connector/coinbaseConnector.d.ts +7 -0
  116. package/dist/types/connectors/coinbase-connector/index.d.ts +1 -0
  117. package/dist/types/connectors/index.d.ts +7 -0
  118. package/dist/types/connectors/injected-evm-connector/index.d.ts +2 -0
  119. package/dist/types/connectors/injected-evm-connector/injectedEvmConnector.d.ts +34 -0
  120. package/dist/types/connectors/injected-solana-connector/index.d.ts +5 -0
  121. package/dist/types/connectors/injected-solana-connector/walletStandardConnector.d.ts +33 -0
  122. package/dist/types/{adapters/wallet-connect-v2-adapter → connectors/wallet-connect-v2-connector}/WalletConnectV2Provider.d.ts +3 -4
  123. package/dist/types/{adapters/wallet-connect-v2-adapter → connectors/wallet-connect-v2-connector}/config.d.ts +4 -4
  124. package/dist/types/{adapters/wallet-connect-v2-adapter → connectors/wallet-connect-v2-connector}/index.d.ts +1 -1
  125. package/dist/types/{adapters/wallet-connect-v2-adapter → connectors/wallet-connect-v2-connector}/interface.d.ts +4 -4
  126. package/dist/types/connectors/wallet-connect-v2-connector/walletConnectV2Connector.d.ts +3 -0
  127. package/dist/types/{adapters/wallet-connect-v2-adapter → connectors/wallet-connect-v2-connector}/walletConnectV2Utils.d.ts +1 -6
  128. package/dist/types/index.d.ts +1 -1
  129. package/dist/types/noModal.d.ts +29 -14
  130. package/dist/types/plugins/nft-checkout-plugin/plugin.d.ts +11 -7
  131. package/dist/types/plugins/wallet-services-plugin/plugin.d.ts +8 -32
  132. package/dist/types/providers/account-abstraction-provider/providers/AccountAbstractionProvider.d.ts +16 -14
  133. package/dist/types/providers/account-abstraction-provider/providers/index.d.ts +0 -1
  134. package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/index.d.ts +1 -6
  135. package/dist/types/providers/base-provider/CommonJRPCProvider.d.ts +3 -3
  136. package/dist/types/providers/base-provider/baseProvider.d.ts +14 -11
  137. package/dist/types/providers/base-provider/commonPrivateKeyProvider.d.ts +2 -4
  138. package/dist/types/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.d.ts +14 -5
  139. package/dist/types/providers/ethereum-provider/providers/privateKeyProviders/index.d.ts +0 -1
  140. package/dist/types/providers/ethereum-provider/rpc/ethRpcMiddlewares.d.ts +2 -3
  141. package/dist/types/providers/ethereum-provider/rpc/interfaces.d.ts +0 -13
  142. package/dist/types/providers/solana-provider/interface.d.ts +8 -25
  143. package/dist/types/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.d.ts +2 -2
  144. package/dist/types/providers/solana-provider/providers/injectedProviders/index.d.ts +1 -2
  145. package/dist/types/providers/solana-provider/providers/injectedProviders/utils.d.ts +3 -0
  146. package/dist/types/providers/solana-provider/providers/injectedProviders/walletStandardProvider.d.ts +7 -4
  147. package/dist/types/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyProvider.d.ts +4 -4
  148. package/dist/types/providers/solana-provider/rpc/interfaces.d.ts +12 -27
  149. package/dist/types/providers/solana-provider/rpc/solanaRpcMiddlewares.d.ts +1 -1
  150. package/dist/types/providers/solana-provider/solanaWallet.d.ts +21 -7
  151. package/dist/types/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.d.ts +4 -4
  152. package/dist/types/providers/xrpl-provider/rpc/xrplRpcMiddlewares.d.ts +1 -4
  153. package/dist/types/react/no-modal/interfaces.d.ts +4 -4
  154. package/dist/types/react/wallet-services-plugin/interfaces.d.ts +2 -2
  155. package/dist/types/vue/no-modal/interfaces.d.ts +5 -8
  156. package/dist/types/vue/wallet-services-plugin/interfaces.d.ts +2 -2
  157. package/package.json +8 -7
  158. package/dist/757.noModal.cjs.js +0 -226
  159. package/dist/lib.cjs/adapters/auth-adapter/authAdapter.js +0 -262
  160. package/dist/lib.cjs/adapters/auth-adapter/config.js +0 -17
  161. package/dist/lib.cjs/adapters/coinbase-adapter/coinbaseAdapter.js +0 -156
  162. package/dist/lib.cjs/adapters/default-evm-adapter/index.js +0 -40
  163. package/dist/lib.cjs/adapters/default-evm-adapter/injectedAdapters.js +0 -42
  164. package/dist/lib.cjs/adapters/default-solana-adapter/index.js +0 -40
  165. package/dist/lib.cjs/adapters/default-solana-adapter/injectedAdapters.js +0 -53
  166. package/dist/lib.cjs/adapters/default-solana-adapter/walletStandardHandler.js +0 -77
  167. package/dist/lib.cjs/adapters/wallet-connect-v2-adapter/walletConnectV2adapter.js +0 -376
  168. package/dist/lib.cjs/base/adapter/baseAdapter.js +0 -117
  169. package/dist/lib.cjs/base/adapter/constants.js +0 -24
  170. package/dist/lib.cjs/providers/account-abstraction-provider/providers/smartAccounts/BiconomySmartAccount.js +0 -29
  171. package/dist/lib.cjs/providers/account-abstraction-provider/providers/smartAccounts/KernelSmartAccount.js +0 -22
  172. package/dist/lib.cjs/providers/account-abstraction-provider/providers/smartAccounts/NexusSmartAccount.js +0 -30
  173. package/dist/lib.cjs/providers/account-abstraction-provider/providers/smartAccounts/SafeSmartAccount.js +0 -30
  174. package/dist/lib.cjs/providers/account-abstraction-provider/providers/smartAccounts/TrustSmartAccount.js +0 -29
  175. package/dist/lib.cjs/providers/account-abstraction-provider/providers/smartAccounts/constants.js +0 -11
  176. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/EthereumPrivateKeyProvider.js +0 -185
  177. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/ethPrivatekeyUtils.js +0 -106
  178. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/injectedProviderProxy.js +0 -12
  179. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/torus/providerHandlers.js +0 -75
  180. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/torus/torusInjectedProvider.js +0 -109
  181. package/dist/lib.esm/adapters/auth-adapter/authAdapter.js +0 -260
  182. package/dist/lib.esm/adapters/auth-adapter/config.js +0 -15
  183. package/dist/lib.esm/adapters/coinbase-adapter/coinbaseAdapter.js +0 -154
  184. package/dist/lib.esm/adapters/default-evm-adapter/index.js +0 -37
  185. package/dist/lib.esm/adapters/default-evm-adapter/injectedAdapters.js +0 -40
  186. package/dist/lib.esm/adapters/default-solana-adapter/index.js +0 -37
  187. package/dist/lib.esm/adapters/default-solana-adapter/injectedAdapters.js +0 -51
  188. package/dist/lib.esm/adapters/default-solana-adapter/walletStandardHandler.js +0 -75
  189. package/dist/lib.esm/adapters/wallet-connect-v2-adapter/walletConnectV2adapter.js +0 -374
  190. package/dist/lib.esm/base/adapter/baseAdapter.js +0 -115
  191. package/dist/lib.esm/base/adapter/constants.js +0 -20
  192. package/dist/lib.esm/providers/account-abstraction-provider/providers/smartAccounts/BiconomySmartAccount.js +0 -27
  193. package/dist/lib.esm/providers/account-abstraction-provider/providers/smartAccounts/KernelSmartAccount.js +0 -20
  194. package/dist/lib.esm/providers/account-abstraction-provider/providers/smartAccounts/NexusSmartAccount.js +0 -28
  195. package/dist/lib.esm/providers/account-abstraction-provider/providers/smartAccounts/SafeSmartAccount.js +0 -28
  196. package/dist/lib.esm/providers/account-abstraction-provider/providers/smartAccounts/TrustSmartAccount.js +0 -27
  197. package/dist/lib.esm/providers/account-abstraction-provider/providers/smartAccounts/constants.js +0 -9
  198. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/EthereumPrivateKeyProvider.js +0 -183
  199. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/ethPrivatekeyUtils.js +0 -104
  200. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/injectedProviderProxy.js +0 -10
  201. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/torus/providerHandlers.js +0 -73
  202. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/torus/torusInjectedProvider.js +0 -107
  203. package/dist/types/adapters/auth-adapter/authAdapter.d.ts +0 -42
  204. package/dist/types/adapters/auth-adapter/config.d.ts +0 -2
  205. package/dist/types/adapters/auth-adapter/index.d.ts +0 -3
  206. package/dist/types/adapters/auth-adapter/interface.d.ts +0 -11
  207. package/dist/types/adapters/base-evm-adapter/baseEvmAdapter.d.ts +0 -7
  208. package/dist/types/adapters/base-evm-adapter/index.d.ts +0 -1
  209. package/dist/types/adapters/base-solana-adapter/baseSolanaAdapter.d.ts +0 -7
  210. package/dist/types/adapters/base-solana-adapter/index.d.ts +0 -1
  211. package/dist/types/adapters/coinbase-adapter/coinbaseAdapter.d.ts +0 -33
  212. package/dist/types/adapters/coinbase-adapter/index.d.ts +0 -1
  213. package/dist/types/adapters/default-evm-adapter/index.d.ts +0 -6
  214. package/dist/types/adapters/default-evm-adapter/injectedAdapters.d.ts +0 -4
  215. package/dist/types/adapters/default-evm-adapter/injectedEvmAdapter.d.ts +0 -30
  216. package/dist/types/adapters/default-solana-adapter/index.d.ts +0 -6
  217. package/dist/types/adapters/default-solana-adapter/injectedAdapters.d.ts +0 -4
  218. package/dist/types/adapters/default-solana-adapter/walletStandardAdapter.d.ts +0 -31
  219. package/dist/types/adapters/default-solana-adapter/walletStandardHandler.d.ts +0 -27
  220. package/dist/types/adapters/index.d.ts +0 -7
  221. package/dist/types/adapters/wallet-connect-v2-adapter/walletConnectV2adapter.d.ts +0 -42
  222. package/dist/types/base/adapter/baseAdapter.d.ts +0 -44
  223. package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/BiconomySmartAccount.d.ts +0 -14
  224. package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/KernelSmartAccount.d.ts +0 -13
  225. package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/LightSmartAccount.d.ts +0 -14
  226. package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/NexusSmartAccount.d.ts +0 -14
  227. package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/SafeSmartAccount.d.ts +0 -13
  228. package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/SimpleSmartAccount.d.ts +0 -13
  229. package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/TrustSmartAccount.d.ts +0 -13
  230. package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/constants.d.ts +0 -9
  231. package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/types.d.ts +0 -22
  232. package/dist/types/providers/account-abstraction-provider/providers/types.d.ts +0 -17
  233. package/dist/types/providers/ethereum-provider/providers/privateKeyProviders/EthereumPrivateKeyProvider.d.ts +0 -30
  234. package/dist/types/providers/ethereum-provider/providers/privateKeyProviders/ethPrivatekeyUtils.d.ts +0 -9
  235. package/dist/types/providers/solana-provider/providers/injectedProviders/injectedProviderProxy.d.ts +0 -3
  236. package/dist/types/providers/solana-provider/providers/injectedProviders/interface.d.ts +0 -5
  237. package/dist/types/providers/solana-provider/providers/injectedProviders/torus/providerHandlers.d.ts +0 -3
  238. package/dist/types/providers/solana-provider/providers/injectedProviders/torus/torusInjectedProvider.d.ts +0 -18
  239. /package/dist/lib.cjs/base/{adapter → connector}/utils.js +0 -0
  240. /package/dist/lib.cjs/{adapters/default-solana-adapter → providers/solana-provider/providers/injectedProviders}/utils.js +0 -0
  241. /package/dist/lib.esm/base/{adapter → connector}/utils.js +0 -0
  242. /package/dist/lib.esm/{adapters/default-solana-adapter → providers/solana-provider/providers/injectedProviders}/utils.js +0 -0
  243. /package/dist/types/base/{adapter → connector}/utils.d.ts +0 -0
  244. /package/dist/types/{adapters/default-solana-adapter → connectors/injected-solana-connector}/utils.d.ts +0 -0
  245. /package/dist/types/{adapters/wallet-connect-v2-adapter → connectors/wallet-connect-v2-connector}/utils.d.ts +0 -0
@@ -0,0 +1,7 @@
1
+ import { BaseConnector, ConnectorInitOptions, UserAuthInfo } from "../../base";
2
+ export declare abstract class BaseSolanaConnector<T> extends BaseConnector<T> {
3
+ init(_?: ConnectorInitOptions): Promise<void>;
4
+ authenticateUser(): Promise<UserAuthInfo>;
5
+ disconnectSession(): Promise<void>;
6
+ disconnect(): Promise<void>;
7
+ }
@@ -0,0 +1 @@
1
+ export * from "./baseSolanaConnector";
@@ -0,0 +1,7 @@
1
+ import { AppMetadata, Preference } from "@coinbase/wallet-sdk";
2
+ import { BaseConnectorSettings, ConnectorFn } from "../../base";
3
+ export type CoinbaseWalletSDKOptions = Partial<AppMetadata & Preference>;
4
+ export interface CoinbaseConnectorOptions extends BaseConnectorSettings {
5
+ connectorSettings?: CoinbaseWalletSDKOptions;
6
+ }
7
+ export declare const coinbaseConnector: (params?: CoinbaseWalletSDKOptions) => ConnectorFn;
@@ -0,0 +1 @@
1
+ export * from "./coinbaseConnector";
@@ -0,0 +1,7 @@
1
+ export * from "./auth-connector";
2
+ export * from "./base-evm-connector";
3
+ export * from "./base-solana-connector";
4
+ export * from "./coinbase-connector";
5
+ export * from "./injected-evm-connector";
6
+ export * from "./injected-solana-connector";
7
+ export * from "./wallet-connect-v2-connector";
@@ -0,0 +1,2 @@
1
+ export { injectedEvmConnector } from "./injectedEvmConnector";
2
+ export { createStore as createMipd } from "mipd";
@@ -0,0 +1,34 @@
1
+ import { type EIP6963ProviderDetail } from "mipd";
2
+ import { BaseConnectorSettings, ChainNamespaceType, CONNECTOR_CATEGORY_TYPE, CONNECTOR_STATUS_TYPE, ConnectorFn, ConnectorInitOptions, ConnectorNamespaceType, CustomChainConfig, IProvider, UserInfo } from "../../base";
3
+ import { BaseEvmConnector } from "../base-evm-connector";
4
+ declare class InjectedEvmConnector extends BaseEvmConnector<void> {
5
+ readonly connectorNamespace: ConnectorNamespaceType;
6
+ readonly currentChainNamespace: ChainNamespaceType;
7
+ readonly type: CONNECTOR_CATEGORY_TYPE;
8
+ readonly name: string;
9
+ readonly isInjected = true;
10
+ status: CONNECTOR_STATUS_TYPE;
11
+ private injectedProvider;
12
+ constructor(options: BaseConnectorSettings & {
13
+ name: string;
14
+ provider: IProvider;
15
+ });
16
+ get provider(): IProvider | null;
17
+ set provider(_: IProvider | null);
18
+ init(options: ConnectorInitOptions): Promise<void>;
19
+ connect({ chainId }: {
20
+ chainId: string;
21
+ }): Promise<IProvider | null>;
22
+ disconnect(options?: {
23
+ cleanup: boolean;
24
+ }): Promise<void>;
25
+ getUserInfo(): Promise<Partial<UserInfo>>;
26
+ addChain(chainConfig: CustomChainConfig, _init?: boolean): Promise<void>;
27
+ switchChain(params: {
28
+ chainId: string;
29
+ }, init?: boolean): Promise<void>;
30
+ enableMFA(): Promise<void>;
31
+ manageMFA(): Promise<void>;
32
+ }
33
+ export declare const injectedEvmConnector: (providerDetail: EIP6963ProviderDetail) => ConnectorFn;
34
+ export { InjectedEvmConnector };
@@ -0,0 +1,5 @@
1
+ import { getWallets, type WalletsEventNames } from "@wallet-standard/app";
2
+ import { type Wallet } from "@wallet-standard/base";
3
+ import { walletStandardConnector } from "./walletStandardConnector";
4
+ declare const hasSolanaWalletStandardFeatures: (wallet: Wallet) => boolean;
5
+ export { getWallets as createSolanaMipd, hasSolanaWalletStandardFeatures, type WalletsEventNames, walletStandardConnector };
@@ -0,0 +1,33 @@
1
+ import { Wallet } from "@wallet-standard/base";
2
+ import { BaseConnectorSettings, ChainNamespaceType, CONNECTOR_CATEGORY_TYPE, CONNECTOR_STATUS_TYPE, ConnectorFn, ConnectorInitOptions, ConnectorNamespaceType, IProvider, UserInfo } from "../../base";
3
+ import { BaseSolanaConnector } from "../base-solana-connector";
4
+ export declare class WalletStandardConnector extends BaseSolanaConnector<void> {
5
+ readonly name: string;
6
+ readonly connectorNamespace: ConnectorNamespaceType;
7
+ readonly currentChainNamespace: ChainNamespaceType;
8
+ readonly type: CONNECTOR_CATEGORY_TYPE;
9
+ readonly isInjected = true;
10
+ status: CONNECTOR_STATUS_TYPE;
11
+ private wallet;
12
+ private injectedProvider;
13
+ constructor(options: BaseConnectorSettings & {
14
+ name: string;
15
+ wallet: Wallet;
16
+ });
17
+ get provider(): IProvider;
18
+ get isWalletConnected(): boolean;
19
+ init(options: ConnectorInitOptions): Promise<void>;
20
+ connect({ chainId }: {
21
+ chainId: string;
22
+ }): Promise<IProvider>;
23
+ disconnect(options?: {
24
+ cleanup: boolean;
25
+ }): Promise<void>;
26
+ getUserInfo(): Promise<Partial<UserInfo>>;
27
+ switchChain(params: {
28
+ chainId: string;
29
+ }, init?: boolean): Promise<void>;
30
+ enableMFA(): Promise<void>;
31
+ manageMFA(): Promise<void>;
32
+ }
33
+ export declare const walletStandardConnector: (wallet: Wallet) => ConnectorFn;
@@ -2,7 +2,6 @@ import type { ISignClient } from "@walletconnect/types";
2
2
  import { CustomChainConfig } from "../../base";
3
3
  import { BaseProvider, BaseProviderConfig, BaseProviderState } from "../../providers/base-provider";
4
4
  export interface WalletConnectV2ProviderConfig extends BaseProviderConfig {
5
- chainConfig: CustomChainConfig;
6
5
  }
7
6
  export interface WalletConnectV2ProviderState extends BaseProviderState {
8
7
  accounts: string[];
@@ -16,16 +15,16 @@ export declare class WalletConnectV2Provider extends BaseProvider<BaseProviderCo
16
15
  });
17
16
  static getProviderInstance: (params: {
18
17
  connector: ISignClient;
19
- chainConfig: CustomChainConfig;
20
18
  skipLookupNetwork: boolean;
19
+ chain: CustomChainConfig;
20
+ chains: CustomChainConfig[];
21
21
  }) => Promise<WalletConnectV2Provider>;
22
22
  enable(): Promise<string[]>;
23
23
  setupProvider(connector: ISignClient): Promise<void>;
24
24
  switchChain({ chainId }: {
25
25
  chainId: string;
26
26
  }): Promise<void>;
27
- addChain(chainConfig: CustomChainConfig): Promise<void>;
28
- protected lookupNetwork(_: ISignClient): Promise<string>;
27
+ protected lookupNetwork(_: ISignClient, chainId: string): Promise<string>;
29
28
  private setupEngine;
30
29
  private setupEthEngine;
31
30
  private setupSolEngine;
@@ -1,6 +1,6 @@
1
1
  import type { EngineTypes, ProposalTypes } from "@walletconnect/types";
2
- import { ChainNamespaceType } from "../../base";
3
- import { IAdapterSettings } from "./interface";
2
+ import { CustomChainConfig } from "../../base";
3
+ import { IConnectorSettings } from "./interface";
4
4
  export declare enum DEFAULT_EIP155_METHODS {
5
5
  ETH_SEND_TRANSACTION = "eth_sendTransaction",
6
6
  ETH_SIGN_TRANSACTION = "eth_signTransaction",
@@ -29,7 +29,7 @@ export declare const getNamespacesFromChains: (chains: string[]) => string[];
29
29
  export declare const getSupportedMethodsByNamespace: (namespace: string) => DEFAULT_EIP155_METHODS[] | DEFAULT_SOLANA_METHODS[];
30
30
  export declare const getSupportedEventsByNamespace: (namespace: string) => DEFAULT_EIP_155_EVENTS[] | DEFAULT_SOLANA_EVENTS[];
31
31
  export declare const getRequiredNamespaces: (chains: string[]) => ProposalTypes.RequiredNamespaces;
32
- export declare const getWalletConnectV2Settings: (namespace: ChainNamespaceType, chainIds: string[], projectID: string) => Promise<{
33
- adapterSettings: IAdapterSettings;
32
+ export declare const getWalletConnectV2Settings: (chains: CustomChainConfig[], projectID: string) => Promise<{
33
+ connectorSettings: IConnectorSettings;
34
34
  loginSettings: EngineTypes.ConnectParams;
35
35
  }>;
@@ -1,4 +1,4 @@
1
1
  export * from "./config";
2
2
  export * from "./interface";
3
- export * from "./walletConnectV2adapter";
3
+ export * from "./walletConnectV2Connector";
4
4
  export * from "./WalletConnectV2Provider";
@@ -1,5 +1,5 @@
1
1
  import type { EngineTypes, SignClientTypes } from "@walletconnect/types";
2
- import { BaseAdapterSettings } from "../../base";
2
+ import { BaseConnectorSettings } from "../../base";
3
3
  export interface OpenOptions {
4
4
  uri: string;
5
5
  chains?: string[];
@@ -8,11 +8,11 @@ export interface IQRCodeModal {
8
8
  openModal: (options?: OpenOptions) => Promise<void>;
9
9
  closeModal: () => void;
10
10
  }
11
- export interface IAdapterSettings {
11
+ export interface IConnectorSettings {
12
12
  walletConnectInitOptions?: SignClientTypes.Options;
13
13
  qrcodeModal?: IQRCodeModal;
14
14
  }
15
- export interface WalletConnectV2AdapterOptions extends BaseAdapterSettings {
16
- adapterSettings?: IAdapterSettings;
15
+ export interface WalletConnectV2ConnectorOptions extends BaseConnectorSettings {
16
+ connectorSettings?: IConnectorSettings;
17
17
  loginSettings?: EngineTypes.ConnectParams;
18
18
  }
@@ -0,0 +1,3 @@
1
+ import { ConnectorFn } from "../../base";
2
+ import { IConnectorSettings } from "./interface";
3
+ export declare const walletConnectV2Connector: (params?: IConnectorSettings) => ConnectorFn;
@@ -1,5 +1,5 @@
1
1
  import type { ISignClient } from "@walletconnect/types";
2
- import type { AddEthereumChainParameter, IEthProviderHandlers } from "../../providers/ethereum-provider";
2
+ import type { IEthProviderHandlers } from "../../providers/ethereum-provider";
3
3
  import type { ISolanaProviderHandlers } from "../../providers/solana-provider";
4
4
  export declare function sendJrpcRequest<T, U>(signClient: ISignClient, chainId: string, method: string, params: U): Promise<T>;
5
5
  export declare function getAccounts(signClient: ISignClient): Promise<string[]>;
@@ -16,8 +16,3 @@ export declare function switchChain({ connector, chainId, newChainId, }: {
16
16
  chainId: number;
17
17
  newChainId: string;
18
18
  }): Promise<void>;
19
- export declare function addChain({ connector, chainId, chainConfig, }: {
20
- connector: ISignClient;
21
- chainId: number;
22
- chainConfig: AddEthereumChainParameter;
23
- }): Promise<void>;
@@ -1,5 +1,5 @@
1
- export * from "./adapters";
2
1
  export * from "./base";
2
+ export * from "./connectors";
3
3
  export * from "./noModal";
4
4
  export * from "./plugins";
5
5
  export * from "./providers";
@@ -1,32 +1,33 @@
1
1
  import { SafeEventEmitter } from "@web3auth/auth";
2
- import { ADAPTER_STATUS_TYPE, CustomChainConfig, IAdapter, IPlugin, IProvider, IWeb3Auth, IWeb3AuthCoreOptions, UserAuthInfo, UserInfo, WALLET_ADAPTER_TYPE, Web3AuthNoModalEvents } from "./base";
3
- import { CommonJRPCProvider } from "./providers";
2
+ import { CONNECTOR_STATUS_TYPE, CustomChainConfig, IConnector, IPlugin, IProvider, IWeb3Auth, IWeb3AuthCoreOptions, PROJECT_CONFIG_RESPONSE, UserAuthInfo, UserInfo, WALLET_CONNECTOR_TYPE, Web3AuthNoModalEvents } from "./base";
3
+ import { CommonJRPCProvider } from "./providers/base-provider";
4
4
  export declare class Web3AuthNoModal extends SafeEventEmitter<Web3AuthNoModalEvents> implements IWeb3Auth {
5
5
  readonly coreOptions: IWeb3AuthCoreOptions;
6
- connectedAdapterName: WALLET_ADAPTER_TYPE | null;
7
- status: ADAPTER_STATUS_TYPE;
8
- cachedAdapter: string | null;
9
- walletAdapters: Record<string, IAdapter<unknown>>;
6
+ connectedConnectorName: WALLET_CONNECTOR_TYPE | null;
7
+ status: CONNECTOR_STATUS_TYPE;
8
+ cachedConnector: string | null;
9
+ protected currentChainId: string;
10
+ protected connectors: IConnector<unknown>[];
10
11
  protected commonJRPCProvider: CommonJRPCProvider | null;
11
12
  private plugins;
12
13
  private storage;
13
14
  constructor(options: IWeb3AuthCoreOptions);
15
+ get currentChain(): CustomChainConfig;
14
16
  get connected(): boolean;
15
17
  get provider(): IProvider | null;
18
+ get connectedConnector(): IConnector<unknown> | null;
16
19
  set provider(_: IProvider | null);
17
20
  init(): Promise<void>;
18
- getAdapter(adapterName: WALLET_ADAPTER_TYPE): IAdapter<unknown> | null;
19
- configureAdapter(adapter: IAdapter<unknown>): Web3AuthNoModal;
21
+ getConnector(connectorName: WALLET_CONNECTOR_TYPE): IConnector<unknown> | null;
20
22
  clearCache(): void;
21
- addChain(chainConfig: CustomChainConfig): Promise<void>;
22
23
  switchChain(params: {
23
24
  chainId: string;
24
25
  }): Promise<void>;
25
26
  /**
26
- * Connect to a specific wallet adapter
27
- * @param walletName - Key of the walletAdapter to use.
27
+ * Connect to a specific wallet connector
28
+ * @param connectorName - Key of the wallet connector to use.
28
29
  */
29
- connectTo<T>(walletName: WALLET_ADAPTER_TYPE, loginParams?: T): Promise<IProvider | null>;
30
+ connectTo<T>(connectorName: WALLET_CONNECTOR_TYPE, loginParams?: T): Promise<IProvider | null>;
30
31
  logout(options?: {
31
32
  cleanup: boolean;
32
33
  }): Promise<void>;
@@ -34,10 +35,24 @@ export declare class Web3AuthNoModal extends SafeEventEmitter<Web3AuthNoModalEve
34
35
  enableMFA<T>(loginParams?: T): Promise<void>;
35
36
  manageMFA<T>(loginParams?: T): Promise<void>;
36
37
  authenticateUser(): Promise<UserAuthInfo>;
37
- addPlugin(plugin: IPlugin): IWeb3Auth;
38
38
  getPlugin(name: string): IPlugin | null;
39
- protected subscribeToAdapterEvents(walletAdapter: IAdapter<unknown>): void;
39
+ protected initCachedConnectorAndChainId(): void;
40
+ protected setupCommonJRPCProvider(): Promise<void>;
41
+ protected setupConnector(connector: IConnector<unknown>): Promise<void>;
42
+ protected loadConnectors({ projectConfig }: {
43
+ projectConfig: PROJECT_CONFIG_RESPONSE;
44
+ }): Promise<void>;
45
+ protected initPlugins(): Promise<void>;
46
+ protected setConnectors(connectors: IConnector<unknown>[]): void;
47
+ protected subscribeToConnectorEvents(connector: IConnector<unknown>): void;
40
48
  protected checkInitRequirements(): void;
49
+ /**
50
+ * Gets the initial chain configuration for a connector
51
+ * @throws WalletInitializationError If no chain is found for the connector's namespace
52
+ */
53
+ protected getInitialChainIdForConnector(connector: IConnector<unknown>): CustomChainConfig;
41
54
  private cacheWallet;
55
+ private setCurrentChain;
56
+ private cacheCurrentChain;
42
57
  private connectToPlugins;
43
58
  }
@@ -1,18 +1,19 @@
1
1
  import { SafeEventEmitter, type WhiteLabelData } from "@web3auth/auth";
2
- import { IPlugin, IWeb3AuthCore, PLUGIN_STATUS_TYPE } from "../../base";
3
- export declare class NFTCheckoutPlugin extends SafeEventEmitter implements IPlugin {
2
+ import { IPlugin, IWeb3AuthCore, PLUGIN_STATUS_TYPE, PluginFn } from "../../base";
3
+ export interface NFTCheckoutPluginParams {
4
+ modalZIndex?: number;
5
+ clientId: string;
6
+ }
7
+ declare class NFTCheckoutPlugin extends SafeEventEmitter implements IPlugin {
4
8
  name: "nft-checkout";
5
9
  status: PLUGIN_STATUS_TYPE;
6
- SUPPORTED_ADAPTERS: string[];
10
+ SUPPORTED_CONNECTORS: string[];
7
11
  pluginNamespace: "eip155";
8
12
  private web3auth;
9
13
  private nftCheckoutEmbedInstance;
10
14
  private isInitialized;
11
15
  private receiverAddress;
12
- constructor(params: {
13
- modalZIndex?: number;
14
- clientId: string;
15
- });
16
+ constructor(params: NFTCheckoutPluginParams);
16
17
  initWithWeb3Auth(web3auth: IWeb3AuthCore, whiteLabel?: WhiteLabelData): Promise<void>;
17
18
  connect(): Promise<void>;
18
19
  show({ contractId }: {
@@ -21,3 +22,6 @@ export declare class NFTCheckoutPlugin extends SafeEventEmitter implements IPlug
21
22
  disconnect(): Promise<void>;
22
23
  cleanup(): Promise<void>;
23
24
  }
25
+ export type NFTCheckoutPluginType = NFTCheckoutPlugin;
26
+ export declare const nftCheckoutPlugin: (params: NFTCheckoutPluginParams) => PluginFn;
27
+ export {};
@@ -1,51 +1,27 @@
1
1
  import { type BaseEmbedControllerState } from "@toruslabs/base-controllers";
2
2
  import { SafeEventEmitter, type WhiteLabelData } from "@web3auth/auth";
3
- import WsEmbed, { CtorArgs, WsEmbedParams } from "@web3auth/ws-embed";
4
- import { IPlugin, IWeb3AuthCore, PLUGIN_STATUS_TYPE, PluginConnectParams, SafeEventEmitterProvider } from "../../base";
5
- type WsPluginEmbedParams = Omit<WsEmbedParams, "buildEnv" | "enableLogging" | "chainConfig" | "confirmationStrategy"> & {
6
- /**
7
- * Determines how to show confirmation screens
8
- * @defaultValue default
9
- *
10
- * default & auto-approve
11
- * - use auto-approve as default
12
- * - if wallet connect request use modal
13
- *
14
- * modal
15
- * - use modal always
16
- */
17
- confirmationStrategy?: Exclude<WsEmbedParams["confirmationStrategy"], "popup">;
18
- };
3
+ import WsEmbed from "@web3auth/ws-embed";
4
+ import { IPlugin, IWeb3AuthCore, PLUGIN_STATUS_TYPE, PluginFn, SafeEventEmitterProvider } from "../../base";
19
5
  export { BUTTON_POSITION, type BUTTON_POSITION_TYPE, CONFIRMATION_STRATEGY, type CONFIRMATION_STRATEGY_TYPE } from "@web3auth/ws-embed";
20
- export declare class WalletServicesPlugin extends SafeEventEmitter implements IPlugin {
6
+ declare class WalletServicesPlugin extends SafeEventEmitter implements IPlugin {
21
7
  name: "wallet-services";
22
8
  status: PLUGIN_STATUS_TYPE;
23
- readonly SUPPORTED_ADAPTERS: string[];
9
+ readonly SUPPORTED_CONNECTORS: string[];
24
10
  readonly pluginNamespace: "multichain";
25
11
  wsEmbedInstance: WsEmbed;
26
12
  private provider;
27
13
  private web3auth;
28
14
  private isInitialized;
29
- private walletInitOptions;
30
- constructor(options?: {
31
- wsEmbedOpts?: Partial<CtorArgs>;
32
- walletInitOptions?: WsPluginEmbedParams;
33
- });
34
15
  get proxyProvider(): SafeEventEmitterProvider | null;
35
- initWithWeb3Auth(web3auth: IWeb3AuthCore, whiteLabel?: WhiteLabelData): Promise<void>;
16
+ initWithWeb3Auth(web3auth: IWeb3AuthCore, _whiteLabel?: WhiteLabelData): Promise<void>;
36
17
  initWithProvider(): Promise<void>;
37
- connect({ sessionId, sessionNamespace }: PluginConnectParams): Promise<void>;
18
+ connect(): Promise<void>;
38
19
  showWalletConnectScanner(showWalletConnectParams?: BaseEmbedControllerState["showWalletConnect"]): Promise<void>;
39
20
  showCheckout(showCheckoutParams?: BaseEmbedControllerState["showCheckout"]): Promise<void>;
40
21
  showWalletUi(showWalletUiParams?: BaseEmbedControllerState["showWalletUi"]): Promise<void>;
41
22
  showSwap(showSwapParams?: BaseEmbedControllerState["showSwap"]): Promise<void>;
42
23
  cleanup(): Promise<void>;
43
24
  disconnect(): Promise<void>;
44
- private subscribeToWalletEvents;
45
- private subscribeToProviderEvents;
46
- private subscribeToWeb3AuthEvents;
47
- private sessionConfig;
48
- private walletServicesSessionConfig;
49
- private setSelectedAddress;
50
- private setChainID;
51
25
  }
26
+ export type WalletServicesPluginType = WalletServicesPlugin;
27
+ export declare const walletServicesPlugin: () => PluginFn;
@@ -1,18 +1,17 @@
1
- import { Client } from "viem";
2
- import { BundlerClient, PaymasterClient, SmartAccount } from "viem/account-abstraction";
3
- import { CustomChainConfig, IProvider } from "../../../base";
4
- import { BaseProvider, BaseProviderConfig, BaseProviderState } from "../../base-provider";
5
- import { ISmartAccount } from "./smartAccounts";
6
- import { BundlerConfig, PaymasterConfig } from "./types";
7
- export interface AccountAbstractionProviderConfig extends BaseProviderConfig {
1
+ import { type AccountAbstractionConfig, type BundlerConfig, type ISmartAccount, type PaymasterConfig, SMART_ACCOUNT } from "@toruslabs/ethereum-controllers";
2
+ import { type Client } from "viem";
3
+ import { type BundlerClient, type PaymasterClient, type SmartAccount } from "viem/account-abstraction";
4
+ import { type CustomChainConfig, type IProvider } from "../../../base";
5
+ import { BaseProvider, type BaseProviderConfig, type BaseProviderState } from "../../base-provider";
6
+ interface AccountAbstractionProviderConfig extends BaseProviderConfig {
8
7
  smartAccountInit: ISmartAccount;
9
8
  bundlerConfig: BundlerConfig;
10
9
  paymasterConfig?: PaymasterConfig;
11
10
  }
12
- export interface AccountAbstractionProviderState extends BaseProviderState {
11
+ interface AccountAbstractionProviderState extends BaseProviderState {
13
12
  eoaProvider?: IProvider;
14
13
  }
15
- export declare class AccountAbstractionProvider extends BaseProvider<AccountAbstractionProviderConfig, AccountAbstractionProviderState, IProvider> {
14
+ declare class AccountAbstractionProvider extends BaseProvider<AccountAbstractionProviderConfig, AccountAbstractionProviderState, IProvider> {
16
15
  readonly PROVIDER_CHAIN_NAMESPACE: "eip155";
17
16
  private _smartAccount;
18
17
  private _publicClient;
@@ -26,12 +25,8 @@ export declare class AccountAbstractionProvider extends BaseProvider<AccountAbst
26
25
  get bundlerClient(): BundlerClient | null;
27
26
  get paymasterClient(): PaymasterClient | null;
28
27
  get publicClient(): Client | null;
29
- static getProviderInstance: (params: {
28
+ static getProviderInstance: (params: AccountAbstractionProviderConfig & {
30
29
  eoaProvider: IProvider;
31
- smartAccountInit: ISmartAccount;
32
- chainConfig: CustomChainConfig;
33
- bundlerConfig: BundlerConfig;
34
- paymasterConfig?: PaymasterConfig;
35
30
  }) => Promise<AccountAbstractionProvider>;
36
31
  enable(): Promise<string[]>;
37
32
  setupProvider(eoaProvider: IProvider): Promise<void>;
@@ -44,3 +39,10 @@ export declare class AccountAbstractionProvider extends BaseProvider<AccountAbst
44
39
  protected lookupNetwork(): Promise<string>;
45
40
  private setupChainSwitchMiddleware;
46
41
  }
42
+ export declare const accountAbstractionProvider: ({ accountAbstractionConfig, chain, chains, provider, }: {
43
+ accountAbstractionConfig: AccountAbstractionConfig;
44
+ chain: CustomChainConfig;
45
+ chains: CustomChainConfig[];
46
+ provider: IProvider;
47
+ }) => Promise<AccountAbstractionProvider>;
48
+ export { type AccountAbstractionConfig, type BundlerConfig, type PaymasterConfig, SMART_ACCOUNT };
@@ -1,3 +1,2 @@
1
1
  export * from "./AccountAbstractionProvider";
2
2
  export * from "./smartAccounts";
3
- export * from "./types";
@@ -1,6 +1 @@
1
- export * from "./BiconomySmartAccount";
2
- export * from "./KernelSmartAccount";
3
- export * from "./NexusSmartAccount";
4
- export * from "./SafeSmartAccount";
5
- export * from "./TrustSmartAccount";
6
- export * from "./types";
1
+ export { BiconomySmartAccount, type BiconomySmartAccountConfig, type ISmartAccount, KernelSmartAccount, type KernelSmartAccountConfig, NexusSmartAccount, type NexusSmartAccountConfig, SafeSmartAccount, type SafeSmartAccountConfig, TrustSmartAccount, type TrustSmartAccountConfig, } from "@toruslabs/ethereum-controllers";
@@ -8,13 +8,13 @@ export declare class CommonJRPCProvider extends BaseProvider<CommonJRPCProviderC
8
8
  state?: CommonJRPCProviderState;
9
9
  });
10
10
  static getProviderInstance: (params: {
11
- chainConfig: CustomChainConfig;
11
+ chain: CustomChainConfig;
12
+ chains: CustomChainConfig[];
12
13
  }) => Promise<CommonJRPCProvider>;
13
- setupProvider(): Promise<void>;
14
+ setupProvider(chainId: string): Promise<void>;
14
15
  switchChain(params: {
15
16
  chainId: string;
16
17
  }): Promise<void>;
17
- updateProviderEngineProxy(provider: SafeEventEmitterProvider): void;
18
18
  protected getProviderEngineProxy(): SafeEventEmitterProvider | null;
19
19
  protected lookupNetwork(): Promise<string | void>;
20
20
  }
@@ -1,39 +1,42 @@
1
1
  import { BaseConfig, BaseController, BaseState } from "@toruslabs/base-controllers";
2
- import { JRPCRequest, JRPCResponse, SendCallBack } from "@web3auth/auth";
2
+ import { JRPCRequest, JRPCResponse, ProviderEvents, SendCallBack } from "@web3auth/auth";
3
3
  import { CustomChainConfig, IBaseProvider, Maybe, RequestArguments, SafeEventEmitterProvider } from "../../base";
4
4
  import { BaseProviderEvents } from "./interfaces";
5
5
  export interface BaseProviderState extends BaseState {
6
6
  chainId: string;
7
7
  }
8
8
  export interface BaseProviderConfig extends BaseConfig {
9
- chainConfig: CustomChainConfig;
10
- networks?: Record<string, CustomChainConfig>;
9
+ chain: CustomChainConfig;
10
+ chains: CustomChainConfig[];
11
11
  skipLookupNetwork?: boolean;
12
12
  keyExportEnabled?: boolean;
13
13
  }
14
+ export interface CommonProviderEvents extends ProviderEvents {
15
+ chainChanged: (chainId: string) => void;
16
+ }
14
17
  export declare abstract class BaseProvider<C extends BaseProviderConfig, S extends BaseProviderState, P> extends BaseController<C, S, BaseProviderEvents<S>> implements IBaseProvider<P> {
15
- _providerEngineProxy: SafeEventEmitterProvider | null;
18
+ _providerEngineProxy: SafeEventEmitterProvider<CommonProviderEvents> | null;
16
19
  private keyExportFlagSetByCode;
17
20
  constructor({ config, state }: {
18
21
  config: C;
19
22
  state?: S;
20
23
  });
21
- get currentChainConfig(): CustomChainConfig;
22
- get provider(): SafeEventEmitterProvider | null;
24
+ get currentChain(): CustomChainConfig;
25
+ get provider(): SafeEventEmitterProvider<CommonProviderEvents> | null;
23
26
  get chainId(): string;
24
- set provider(_: SafeEventEmitterProvider | null);
27
+ set provider(_: SafeEventEmitterProvider<CommonProviderEvents> | null);
25
28
  request<T, R>(args: RequestArguments<T>): Promise<Maybe<R>>;
26
29
  sendAsync<T, U>(req: JRPCRequest<T>, callback: SendCallBack<JRPCResponse<U>>): void;
27
30
  sendAsync<T, U>(req: JRPCRequest<T>): Promise<JRPCResponse<U>>;
28
31
  send<T, U>(req: JRPCRequest<T>, callback: SendCallBack<JRPCResponse<U>>): void;
29
- addChain(chainConfig: CustomChainConfig): void;
30
- getChainConfig(chainId: string): CustomChainConfig | null;
31
32
  updateProviderEngineProxy(provider: SafeEventEmitterProvider): void;
32
33
  setKeyExportFlag(flag: boolean): void;
33
34
  protected getProviderEngineProxy(): SafeEventEmitterProvider | null;
34
- abstract setupProvider(provider: P): Promise<void>;
35
+ protected getChain(chainId: string): CustomChainConfig;
36
+ private handleChainChangedProvider;
37
+ abstract setupProvider(provider: P, chainId: string): Promise<void>;
35
38
  abstract switchChain(params: {
36
39
  chainId: string;
37
40
  }): Promise<void>;
38
- protected abstract lookupNetwork(provider?: P): Promise<string | void>;
41
+ protected abstract lookupNetwork(provider?: P, chainId?: string): Promise<string | void>;
39
42
  }
@@ -1,7 +1,6 @@
1
1
  import { CustomChainConfig, IBaseProvider, SafeEventEmitterProvider } from "../../base";
2
2
  import { BaseProvider, BaseProviderConfig, BaseProviderState } from "./baseProvider";
3
3
  export interface CommonPrivKeyProviderConfig extends BaseProviderConfig {
4
- chainConfig: CustomChainConfig;
5
4
  }
6
5
  export interface CommonPrivKeyProviderState extends BaseProviderState {
7
6
  privateKey?: string;
@@ -16,11 +15,10 @@ export declare class CommonPrivateKeyProvider extends BaseProvider<BaseProviderC
16
15
  set provider(_: SafeEventEmitterProvider | null);
17
16
  static getProviderInstance: (params: {
18
17
  privKey: string;
19
- chainConfig: CustomChainConfig;
18
+ chain: CustomChainConfig;
19
+ chains: CustomChainConfig[];
20
20
  }) => Promise<CommonPrivateKeyProvider>;
21
- addChain(_: CustomChainConfig): void;
22
21
  setupProvider(privKey: string): Promise<void>;
23
- updateProviderEngineProxy(provider: SafeEventEmitterProvider): void;
24
22
  switchChain(_: {
25
23
  chainId: string;
26
24
  }): Promise<void>;
@@ -1,7 +1,14 @@
1
1
  import { CustomChainConfig } from "../../../../base";
2
2
  import { BaseProvider, BaseProviderConfig, BaseProviderState } from "../../../base-provider";
3
+ interface ProviderParams {
4
+ sign: (msgHash: Buffer, rawMsg?: Buffer) => Promise<{
5
+ v: number;
6
+ r: Buffer;
7
+ s: Buffer;
8
+ }>;
9
+ getPublic: () => Promise<Buffer>;
10
+ }
3
11
  export interface EthereumSigningProviderConfig extends BaseProviderConfig {
4
- chainConfig: CustomChainConfig;
5
12
  }
6
13
  export interface EthereumSigningProviderState extends BaseProviderState {
7
14
  signMethods?: {
@@ -35,17 +42,18 @@ export declare class EthereumSigningProvider extends BaseProvider<BaseProviderCo
35
42
  }>;
36
43
  getPublic: () => Promise<Buffer>;
37
44
  };
38
- chainConfig: CustomChainConfig;
45
+ chain: CustomChainConfig;
46
+ chains: CustomChainConfig[];
39
47
  }) => Promise<EthereumSigningProvider>;
40
48
  enable(): Promise<string[]>;
41
- setupProvider({ sign, getPublic, }: {
49
+ setupProvider(params: {
42
50
  sign: (msgHash: Buffer, rawMsg?: Buffer) => Promise<{
43
51
  v: number;
44
52
  r: Buffer;
45
53
  s: Buffer;
46
54
  }>;
47
55
  getPublic: () => Promise<Buffer>;
48
- }): Promise<void>;
56
+ }, chainId: string): Promise<void>;
49
57
  updateAccount(params: {
50
58
  signMethods: {
51
59
  sign: (msgHash: Buffer, rawMsg?: Buffer) => Promise<{
@@ -59,7 +67,8 @@ export declare class EthereumSigningProvider extends BaseProvider<BaseProviderCo
59
67
  switchChain(params: {
60
68
  chainId: string;
61
69
  }): Promise<void>;
62
- protected lookupNetwork(): Promise<string>;
70
+ protected lookupNetwork(_: ProviderParams, chainId: string): Promise<string>;
63
71
  private getChainSwitchMiddleware;
64
72
  private getAccountMiddleware;
65
73
  }
74
+ export {};
@@ -1,2 +1 @@
1
- export * from "./EthereumPrivateKeyProvider";
2
1
  export * from "./TransactionFormatter";
@@ -1,5 +1,4 @@
1
1
  import { JRPCMiddleware } from "@web3auth/auth";
2
- import { IEthAccountHandlers, IEthChainSwitchHandlers, IEthProviderHandlers } from "./interfaces";
2
+ import { IEthChainSwitchHandlers, IEthProviderHandlers } from "./interfaces";
3
3
  export declare function createEthMiddleware(providerHandlers: IEthProviderHandlers): JRPCMiddleware<unknown, unknown>;
4
- export declare function createEthChainSwitchMiddleware({ addChain, switchChain }: IEthChainSwitchHandlers): JRPCMiddleware<unknown, unknown>;
5
- export declare function createEthAccountMiddleware({ updatePrivatekey }: IEthAccountHandlers): JRPCMiddleware<unknown, unknown>;
4
+ export declare function createEthChainSwitchMiddleware({ switchChain }: IEthChainSwitchHandlers): JRPCMiddleware<unknown, unknown>;
@@ -5,20 +5,7 @@ export interface IEthAccountHandlers {
5
5
  privateKey: string;
6
6
  }) => Promise<void>;
7
7
  }
8
- export interface AddEthereumChainParameter {
9
- chainId: string;
10
- chainName: string;
11
- nativeCurrency: {
12
- name: string;
13
- symbol: string;
14
- decimals: 18;
15
- };
16
- rpcUrls: string[];
17
- blockExplorerUrls?: string[];
18
- iconUrls?: string[];
19
- }
20
8
  export interface IEthChainSwitchHandlers {
21
- addChain: (params: AddEthereumChainParameter) => Promise<void>;
22
9
  switchChain: (params: {
23
10
  chainId: string;
24
11
  }) => Promise<void>;