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

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 (378) hide show
  1. package/dist/lib.cjs/base/chain/IChainInterface.js +7 -12
  2. package/dist/lib.cjs/base/chain/config.js +76 -35
  3. package/dist/lib.cjs/base/connector/baseConnector.js +64 -0
  4. package/dist/lib.cjs/base/connector/constants.js +26 -0
  5. package/dist/lib.cjs/base/errors/index.js +2 -12
  6. package/dist/lib.cjs/base/plugin/IPlugin.js +2 -2
  7. package/dist/lib.cjs/base/plugin/errors.js +2 -4
  8. package/dist/lib.cjs/base/utils.js +7 -7
  9. package/dist/lib.cjs/base/wallet/index.js +15 -20
  10. package/dist/lib.cjs/connectors/auth-connector/authConnector.js +503 -0
  11. package/dist/lib.cjs/connectors/auth-connector/config/authConnectionConfig.js +216 -0
  12. package/dist/lib.cjs/connectors/auth-connector/config/config-build.js +54 -0
  13. package/dist/lib.cjs/connectors/auth-connector/config/config-env.js +361 -0
  14. package/dist/lib.cjs/{adapters/base-evm-adapter/baseEvmAdapter.js → connectors/base-evm-connector/baseEvmConnector.js} +28 -19
  15. package/dist/lib.cjs/connectors/base-solana-connector/baseSolanaConnector.js +83 -0
  16. package/dist/lib.cjs/connectors/coinbase-connector/coinbaseConnector.js +159 -0
  17. package/dist/lib.cjs/connectors/injected-evm-connector/index.js +12 -0
  18. package/dist/lib.cjs/{adapters/default-evm-adapter/injectedEvmAdapter.js → connectors/injected-evm-connector/injectedEvmConnector.js} +66 -42
  19. package/dist/lib.cjs/connectors/injected-solana-connector/index.js +25 -0
  20. package/dist/lib.cjs/connectors/injected-solana-connector/walletStandardConnector.js +156 -0
  21. package/dist/lib.cjs/{adapters/wallet-connect-v2-adapter → connectors/wallet-connect-v2-connector}/WalletConnectV2Provider.js +63 -95
  22. package/dist/lib.cjs/{adapters/wallet-connect-v2-adapter → connectors/wallet-connect-v2-connector}/config.js +55 -57
  23. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/index.js +32 -0
  24. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/walletConnectV2Connector.js +418 -0
  25. package/dist/lib.cjs/{adapters/wallet-connect-v2-adapter → connectors/wallet-connect-v2-connector}/walletConnectV2Utils.js +23 -26
  26. package/dist/lib.cjs/index.js +142 -102
  27. package/dist/lib.cjs/noModal.js +299 -241
  28. package/dist/lib.cjs/plugins/nft-checkout-plugin/embed.js +0 -3
  29. package/dist/lib.cjs/plugins/nft-checkout-plugin/plugin.js +18 -6
  30. package/dist/lib.cjs/plugins/wallet-services-plugin/plugin.js +50 -204
  31. package/dist/lib.cjs/providers/account-abstraction-provider/index.js +32 -0
  32. package/dist/lib.cjs/providers/account-abstraction-provider/providers/AccountAbstractionProvider.js +112 -35
  33. package/dist/lib.cjs/providers/account-abstraction-provider/providers/utils.js +10 -0
  34. package/dist/lib.cjs/providers/account-abstraction-provider/rpc/ethRpcMiddlewares.js +0 -2
  35. package/dist/lib.cjs/providers/base-provider/CommonJRPCProvider.js +21 -26
  36. package/dist/lib.cjs/providers/base-provider/baseProvider.js +49 -24
  37. package/dist/lib.cjs/providers/base-provider/commonPrivateKeyProvider.js +2 -13
  38. package/dist/lib.cjs/providers/base-provider/index.js +22 -0
  39. package/dist/lib.cjs/providers/base-provider/utils.js +10 -2
  40. package/dist/lib.cjs/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.js +51 -61
  41. package/dist/lib.cjs/providers/ethereum-mpc-provider/providers/signingProviders/signingUtils.js +12 -2
  42. package/dist/lib.cjs/providers/ethereum-mpc-provider/rpc/ethRpcMiddlewares.js +0 -1
  43. package/dist/lib.cjs/providers/ethereum-provider/providers/converter.js +0 -1
  44. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/formatter.js +12 -11
  45. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/interfaces.js +3 -5
  46. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/utils.js +1 -2
  47. package/dist/lib.cjs/providers/ethereum-provider/rpc/ethRpcMiddlewares.js +1 -30
  48. package/dist/lib.cjs/providers/ethereum-provider/rpc/walletMidddleware.js +0 -8
  49. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.js +22 -11
  50. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/base/providerHandlers.js +7 -9
  51. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/walletStandardProvider.js +90 -2
  52. package/dist/lib.cjs/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyProvider.js +37 -56
  53. package/dist/lib.cjs/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyUtils.js +30 -29
  54. package/dist/lib.cjs/providers/solana-provider/rpc/solanaRpcMiddlewares.js +5 -5
  55. package/dist/lib.cjs/providers/solana-provider/solanaWallet.js +41 -18
  56. package/dist/lib.cjs/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.js +36 -60
  57. package/dist/lib.cjs/providers/xrpl-provider/rpc/xrplRpcMiddlewares.js +1 -4
  58. package/dist/lib.cjs/react/no-modal/Web3AuthInnerContext.js +28 -44
  59. package/dist/lib.cjs/react/no-modal/hooks/useWeb3Auth.js +11 -0
  60. package/dist/lib.cjs/react/wallet-services-plugin/WalletServicesContext.js +13 -1
  61. package/dist/lib.cjs/react/wallet-services-plugin/hooks/useWalletServicesPlugin.js +11 -0
  62. package/dist/{types → lib.cjs/types}/base/chain/IChainInterface.d.ts +4 -10
  63. package/dist/{types → lib.cjs/types}/base/chain/config.d.ts +2 -2
  64. package/dist/lib.cjs/types/base/connector/baseConnector.d.ts +37 -0
  65. package/dist/{types/base/adapter → lib.cjs/types/base/connector}/constants.d.ts +7 -4
  66. package/dist/{types/base/adapter → lib.cjs/types/base/connector}/index.d.ts +1 -1
  67. package/dist/{types/base/adapter → lib.cjs/types/base/connector}/interfaces.d.ts +58 -48
  68. package/dist/lib.cjs/types/base/core/IWeb3Auth.d.ts +142 -0
  69. package/dist/{types → lib.cjs/types}/base/errors/index.d.ts +1 -1
  70. package/dist/{types → lib.cjs/types}/base/hooks/index.d.ts +2 -6
  71. package/dist/{types → lib.cjs/types}/base/index.d.ts +1 -1
  72. package/dist/{types → lib.cjs/types}/base/interfaces.d.ts +2 -1
  73. package/dist/{types → lib.cjs/types}/base/plugin/IPlugin.d.ts +4 -7
  74. package/dist/{types → lib.cjs/types}/base/plugin/errors.d.ts +1 -1
  75. package/dist/{types → lib.cjs/types}/base/utils.d.ts +1 -1
  76. package/dist/lib.cjs/types/base/wallet/index.d.ts +29 -0
  77. package/dist/lib.cjs/types/connectors/auth-connector/authConnector.d.ts +49 -0
  78. package/dist/lib.cjs/types/connectors/auth-connector/config/authConnectionConfig.d.ts +2 -0
  79. package/dist/lib.cjs/types/connectors/auth-connector/config/config-build.d.ts +18 -0
  80. package/dist/lib.cjs/types/connectors/auth-connector/config/config-env.d.ts +60 -0
  81. package/dist/lib.cjs/types/connectors/auth-connector/index.d.ts +2 -0
  82. package/dist/lib.cjs/types/connectors/auth-connector/interface.d.ts +15 -0
  83. package/dist/lib.cjs/types/connectors/base-evm-connector/baseEvmConnector.d.ts +7 -0
  84. package/dist/lib.cjs/types/connectors/base-evm-connector/index.d.ts +1 -0
  85. package/dist/lib.cjs/types/connectors/base-solana-connector/baseSolanaConnector.d.ts +7 -0
  86. package/dist/lib.cjs/types/connectors/base-solana-connector/index.d.ts +1 -0
  87. package/dist/lib.cjs/types/connectors/coinbase-connector/coinbaseConnector.d.ts +7 -0
  88. package/dist/lib.cjs/types/connectors/coinbase-connector/index.d.ts +1 -0
  89. package/dist/lib.cjs/types/connectors/index.d.ts +7 -0
  90. package/dist/lib.cjs/types/connectors/injected-evm-connector/index.d.ts +2 -0
  91. package/dist/lib.cjs/types/connectors/injected-evm-connector/injectedEvmConnector.d.ts +34 -0
  92. package/dist/lib.cjs/types/connectors/injected-solana-connector/index.d.ts +5 -0
  93. package/dist/lib.cjs/types/connectors/injected-solana-connector/walletStandardConnector.d.ts +33 -0
  94. package/dist/{types/adapters/wallet-connect-v2-adapter → lib.cjs/types/connectors/wallet-connect-v2-connector}/WalletConnectV2Provider.d.ts +4 -6
  95. package/dist/{types/adapters/wallet-connect-v2-adapter → lib.cjs/types/connectors/wallet-connect-v2-connector}/config.d.ts +4 -4
  96. package/dist/{types/adapters/wallet-connect-v2-adapter → lib.cjs/types/connectors/wallet-connect-v2-connector}/index.d.ts +1 -1
  97. package/dist/{types/adapters/wallet-connect-v2-adapter → lib.cjs/types/connectors/wallet-connect-v2-connector}/interface.d.ts +4 -4
  98. package/dist/lib.cjs/types/connectors/wallet-connect-v2-connector/walletConnectV2Connector.d.ts +3 -0
  99. package/dist/{types/adapters/wallet-connect-v2-adapter → lib.cjs/types/connectors/wallet-connect-v2-connector}/walletConnectV2Utils.d.ts +1 -6
  100. package/dist/{types → lib.cjs/types}/index.d.ts +1 -1
  101. package/dist/lib.cjs/types/noModal.d.ts +58 -0
  102. package/dist/{types → lib.cjs/types}/plugins/nft-checkout-plugin/plugin.d.ts +11 -7
  103. package/dist/lib.cjs/types/plugins/wallet-services-plugin/plugin.d.ts +27 -0
  104. package/dist/lib.cjs/types/providers/account-abstraction-provider/providers/AccountAbstractionProvider.d.ts +48 -0
  105. package/dist/{types → lib.cjs/types}/providers/account-abstraction-provider/providers/index.d.ts +0 -1
  106. package/dist/lib.cjs/types/providers/account-abstraction-provider/providers/smartAccounts/index.d.ts +1 -0
  107. package/dist/{types → lib.cjs/types}/providers/base-provider/CommonJRPCProvider.d.ts +3 -3
  108. package/dist/{types → lib.cjs/types}/providers/base-provider/baseProvider.d.ts +10 -11
  109. package/dist/{types → lib.cjs/types}/providers/base-provider/commonPrivateKeyProvider.d.ts +3 -6
  110. package/dist/{types → lib.cjs/types}/providers/base-provider/interfaces.d.ts +3 -1
  111. package/dist/lib.cjs/types/providers/base-provider/utils.d.ts +9 -0
  112. package/dist/{types → lib.cjs/types}/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.d.ts +14 -6
  113. package/dist/lib.cjs/types/providers/ethereum-provider/providers/privateKeyProviders/index.d.ts +1 -0
  114. package/dist/lib.cjs/types/providers/ethereum-provider/rpc/ethRpcMiddlewares.d.ts +4 -0
  115. package/dist/{types → lib.cjs/types}/providers/ethereum-provider/rpc/interfaces.d.ts +0 -13
  116. package/dist/lib.cjs/types/providers/solana-provider/interface.d.ts +22 -0
  117. package/dist/{types → lib.cjs/types}/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.d.ts +2 -2
  118. package/dist/lib.cjs/types/providers/solana-provider/providers/injectedProviders/index.d.ts +2 -0
  119. package/dist/lib.cjs/types/providers/solana-provider/providers/injectedProviders/utils.d.ts +3 -0
  120. package/dist/lib.cjs/types/providers/solana-provider/providers/injectedProviders/walletStandardProvider.d.ts +9 -0
  121. package/dist/{types → lib.cjs/types}/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyProvider.d.ts +5 -6
  122. package/dist/lib.cjs/types/providers/solana-provider/rpc/interfaces.d.ts +27 -0
  123. package/dist/{types → lib.cjs/types}/providers/solana-provider/rpc/solanaRpcMiddlewares.d.ts +1 -1
  124. package/dist/lib.cjs/types/providers/solana-provider/solanaWallet.d.ts +28 -0
  125. package/dist/{types → lib.cjs/types}/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.d.ts +5 -6
  126. package/dist/{types → lib.cjs/types}/providers/xrpl-provider/rpc/xrplRpcMiddlewares.d.ts +1 -4
  127. package/dist/{types → lib.cjs/types}/react/no-modal/interfaces.d.ts +4 -4
  128. package/dist/{types → lib.cjs/types}/react/wallet-services-plugin/interfaces.d.ts +2 -2
  129. package/dist/{types → lib.cjs/types}/vue/no-modal/interfaces.d.ts +5 -8
  130. package/dist/{types → lib.cjs/types}/vue/wallet-services-plugin/interfaces.d.ts +2 -2
  131. package/dist/lib.cjs/vue/no-modal/Web3AuthProvider.js +27 -44
  132. package/dist/lib.cjs/vue/no-modal/composables/useWeb3Auth.js +12 -1
  133. package/dist/lib.cjs/vue/wallet-services-plugin/WalletServicesProvider.js +14 -2
  134. package/dist/lib.cjs/vue/wallet-services-plugin/composables/useWalletServicesPlugin.js +12 -1
  135. package/dist/lib.esm/base/chain/IChainInterface.js +3 -11
  136. package/dist/lib.esm/base/chain/config.js +65 -24
  137. package/dist/lib.esm/base/connector/baseConnector.js +62 -0
  138. package/dist/lib.esm/base/connector/constants.js +22 -0
  139. package/dist/lib.esm/base/errors/index.js +2 -12
  140. package/dist/lib.esm/base/plugin/IPlugin.js +1 -1
  141. package/dist/lib.esm/base/plugin/errors.js +2 -4
  142. package/dist/lib.esm/base/utils.js +5 -5
  143. package/dist/lib.esm/base/wallet/index.js +11 -16
  144. package/dist/lib.esm/connectors/auth-connector/authConnector.js +501 -0
  145. package/dist/lib.esm/connectors/auth-connector/config/authConnectionConfig.js +214 -0
  146. package/dist/lib.esm/connectors/auth-connector/config/config-build.js +48 -0
  147. package/dist/lib.esm/connectors/auth-connector/config/config-env.js +359 -0
  148. package/dist/lib.esm/{adapters/base-evm-adapter/baseEvmAdapter.js → connectors/base-evm-connector/baseEvmConnector.js} +29 -20
  149. package/dist/lib.esm/connectors/base-solana-connector/baseSolanaConnector.js +81 -0
  150. package/dist/lib.esm/connectors/coinbase-connector/coinbaseConnector.js +157 -0
  151. package/dist/lib.esm/connectors/injected-evm-connector/index.js +2 -0
  152. package/dist/lib.esm/{adapters/default-evm-adapter/injectedEvmAdapter.js → connectors/injected-evm-connector/injectedEvmConnector.js} +64 -41
  153. package/dist/lib.esm/connectors/injected-solana-connector/index.js +18 -0
  154. package/dist/lib.esm/{adapters/default-solana-adapter/walletStandardAdapter.js → connectors/injected-solana-connector/walletStandardConnector.js} +66 -49
  155. package/dist/lib.esm/{adapters/wallet-connect-v2-adapter → connectors/wallet-connect-v2-connector}/WalletConnectV2Provider.js +63 -95
  156. package/dist/lib.esm/{adapters/wallet-connect-v2-adapter → connectors/wallet-connect-v2-connector}/config.js +47 -45
  157. package/dist/lib.esm/connectors/wallet-connect-v2-connector/index.js +3 -0
  158. package/dist/lib.esm/connectors/wallet-connect-v2-connector/walletConnectV2Connector.js +416 -0
  159. package/dist/lib.esm/{adapters/wallet-connect-v2-adapter → connectors/wallet-connect-v2-connector}/walletConnectV2Utils.js +24 -26
  160. package/dist/lib.esm/index.js +29 -34
  161. package/dist/lib.esm/noModal.js +297 -239
  162. package/dist/lib.esm/plugins/nft-checkout-plugin/embed.js +1 -4
  163. package/dist/lib.esm/plugins/nft-checkout-plugin/plugin.js +18 -6
  164. package/dist/lib.esm/plugins/wallet-services-plugin/plugin.js +46 -201
  165. package/dist/lib.esm/providers/account-abstraction-provider/index.js +2 -0
  166. package/dist/lib.esm/providers/account-abstraction-provider/providers/AccountAbstractionProvider.js +108 -34
  167. package/dist/lib.esm/providers/account-abstraction-provider/providers/utils.js +10 -0
  168. package/dist/lib.esm/providers/account-abstraction-provider/rpc/ethRpcMiddlewares.js +0 -2
  169. package/dist/lib.esm/providers/base-provider/CommonJRPCProvider.js +22 -27
  170. package/dist/lib.esm/providers/base-provider/baseProvider.js +49 -24
  171. package/dist/lib.esm/providers/base-provider/commonPrivateKeyProvider.js +2 -13
  172. package/dist/lib.esm/providers/base-provider/index.js +5 -0
  173. package/dist/lib.esm/providers/base-provider/utils.js +9 -1
  174. package/dist/lib.esm/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.js +50 -60
  175. package/dist/lib.esm/providers/ethereum-mpc-provider/providers/signingProviders/signingUtils.js +12 -2
  176. package/dist/lib.esm/providers/ethereum-mpc-provider/rpc/ethRpcMiddlewares.js +0 -1
  177. package/dist/lib.esm/providers/ethereum-provider/providers/converter.js +0 -1
  178. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/formatter.js +12 -11
  179. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/interfaces.js +3 -3
  180. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/utils.js +1 -2
  181. package/dist/lib.esm/providers/ethereum-provider/rpc/ethRpcMiddlewares.js +2 -30
  182. package/dist/lib.esm/providers/ethereum-provider/rpc/walletMidddleware.js +0 -8
  183. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.js +22 -11
  184. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/base/providerHandlers.js +4 -6
  185. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/walletStandardProvider.js +90 -2
  186. package/dist/lib.esm/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyProvider.js +36 -55
  187. package/dist/lib.esm/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyUtils.js +29 -28
  188. package/dist/lib.esm/providers/solana-provider/rpc/solanaRpcMiddlewares.js +6 -6
  189. package/dist/lib.esm/providers/solana-provider/solanaWallet.js +41 -18
  190. package/dist/lib.esm/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.js +35 -59
  191. package/dist/lib.esm/providers/xrpl-provider/rpc/xrplRpcMiddlewares.js +1 -4
  192. package/dist/lib.esm/react/no-modal/Web3AuthInnerContext.js +28 -44
  193. package/dist/lib.esm/react/no-modal/hooks/useWeb3Auth.js +11 -0
  194. package/dist/lib.esm/react/wallet-services-plugin/WalletServicesContext.js +13 -1
  195. package/dist/lib.esm/react/wallet-services-plugin/hooks/useWalletServicesPlugin.js +11 -0
  196. package/dist/lib.esm/vue/no-modal/Web3AuthProvider.js +27 -44
  197. package/dist/lib.esm/vue/no-modal/composables/useWeb3Auth.js +12 -1
  198. package/dist/lib.esm/vue/wallet-services-plugin/WalletServicesProvider.js +14 -2
  199. package/dist/lib.esm/vue/wallet-services-plugin/composables/useWalletServicesPlugin.js +12 -1
  200. package/dist/noModal.umd.min.js +1 -1
  201. package/dist/noModal.umd.min.js.LICENSE.txt +0 -9
  202. package/package.json +25 -22
  203. package/dist/757.noModal.cjs.js +0 -226
  204. package/dist/lib.cjs/adapters/auth-adapter/authAdapter.js +0 -262
  205. package/dist/lib.cjs/adapters/auth-adapter/config.js +0 -17
  206. package/dist/lib.cjs/adapters/base-solana-adapter/baseSolanaAdapter.js +0 -76
  207. package/dist/lib.cjs/adapters/coinbase-adapter/coinbaseAdapter.js +0 -156
  208. package/dist/lib.cjs/adapters/default-evm-adapter/index.js +0 -40
  209. package/dist/lib.cjs/adapters/default-evm-adapter/injectedAdapters.js +0 -42
  210. package/dist/lib.cjs/adapters/default-solana-adapter/index.js +0 -40
  211. package/dist/lib.cjs/adapters/default-solana-adapter/injectedAdapters.js +0 -53
  212. package/dist/lib.cjs/adapters/default-solana-adapter/walletStandardAdapter.js +0 -138
  213. package/dist/lib.cjs/adapters/default-solana-adapter/walletStandardHandler.js +0 -77
  214. package/dist/lib.cjs/adapters/wallet-connect-v2-adapter/walletConnectV2adapter.js +0 -376
  215. package/dist/lib.cjs/base/adapter/baseAdapter.js +0 -117
  216. package/dist/lib.cjs/base/adapter/constants.js +0 -24
  217. package/dist/lib.cjs/providers/account-abstraction-provider/providers/smartAccounts/BiconomySmartAccount.js +0 -29
  218. package/dist/lib.cjs/providers/account-abstraction-provider/providers/smartAccounts/KernelSmartAccount.js +0 -22
  219. package/dist/lib.cjs/providers/account-abstraction-provider/providers/smartAccounts/NexusSmartAccount.js +0 -30
  220. package/dist/lib.cjs/providers/account-abstraction-provider/providers/smartAccounts/SafeSmartAccount.js +0 -30
  221. package/dist/lib.cjs/providers/account-abstraction-provider/providers/smartAccounts/TrustSmartAccount.js +0 -29
  222. package/dist/lib.cjs/providers/account-abstraction-provider/providers/smartAccounts/constants.js +0 -11
  223. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/EthereumPrivateKeyProvider.js +0 -185
  224. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/ethPrivatekeyUtils.js +0 -106
  225. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/injectedProviderProxy.js +0 -12
  226. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/torus/providerHandlers.js +0 -75
  227. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/torus/torusInjectedProvider.js +0 -109
  228. package/dist/lib.esm/adapters/auth-adapter/authAdapter.js +0 -260
  229. package/dist/lib.esm/adapters/auth-adapter/config.js +0 -15
  230. package/dist/lib.esm/adapters/base-solana-adapter/baseSolanaAdapter.js +0 -74
  231. package/dist/lib.esm/adapters/coinbase-adapter/coinbaseAdapter.js +0 -154
  232. package/dist/lib.esm/adapters/default-evm-adapter/index.js +0 -37
  233. package/dist/lib.esm/adapters/default-evm-adapter/injectedAdapters.js +0 -40
  234. package/dist/lib.esm/adapters/default-solana-adapter/index.js +0 -37
  235. package/dist/lib.esm/adapters/default-solana-adapter/injectedAdapters.js +0 -51
  236. package/dist/lib.esm/adapters/default-solana-adapter/walletStandardHandler.js +0 -75
  237. package/dist/lib.esm/adapters/wallet-connect-v2-adapter/walletConnectV2adapter.js +0 -374
  238. package/dist/lib.esm/base/adapter/baseAdapter.js +0 -115
  239. package/dist/lib.esm/base/adapter/constants.js +0 -20
  240. package/dist/lib.esm/providers/account-abstraction-provider/providers/smartAccounts/BiconomySmartAccount.js +0 -27
  241. package/dist/lib.esm/providers/account-abstraction-provider/providers/smartAccounts/KernelSmartAccount.js +0 -20
  242. package/dist/lib.esm/providers/account-abstraction-provider/providers/smartAccounts/NexusSmartAccount.js +0 -28
  243. package/dist/lib.esm/providers/account-abstraction-provider/providers/smartAccounts/SafeSmartAccount.js +0 -28
  244. package/dist/lib.esm/providers/account-abstraction-provider/providers/smartAccounts/TrustSmartAccount.js +0 -27
  245. package/dist/lib.esm/providers/account-abstraction-provider/providers/smartAccounts/constants.js +0 -9
  246. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/EthereumPrivateKeyProvider.js +0 -183
  247. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/ethPrivatekeyUtils.js +0 -104
  248. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/injectedProviderProxy.js +0 -10
  249. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/torus/providerHandlers.js +0 -73
  250. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/torus/torusInjectedProvider.js +0 -107
  251. package/dist/noModal.cjs.js +0 -26385
  252. package/dist/types/adapters/auth-adapter/authAdapter.d.ts +0 -42
  253. package/dist/types/adapters/auth-adapter/config.d.ts +0 -2
  254. package/dist/types/adapters/auth-adapter/index.d.ts +0 -3
  255. package/dist/types/adapters/auth-adapter/interface.d.ts +0 -11
  256. package/dist/types/adapters/base-evm-adapter/baseEvmAdapter.d.ts +0 -7
  257. package/dist/types/adapters/base-evm-adapter/index.d.ts +0 -1
  258. package/dist/types/adapters/base-solana-adapter/baseSolanaAdapter.d.ts +0 -7
  259. package/dist/types/adapters/base-solana-adapter/index.d.ts +0 -1
  260. package/dist/types/adapters/coinbase-adapter/coinbaseAdapter.d.ts +0 -33
  261. package/dist/types/adapters/coinbase-adapter/index.d.ts +0 -1
  262. package/dist/types/adapters/default-evm-adapter/index.d.ts +0 -6
  263. package/dist/types/adapters/default-evm-adapter/injectedAdapters.d.ts +0 -4
  264. package/dist/types/adapters/default-evm-adapter/injectedEvmAdapter.d.ts +0 -30
  265. package/dist/types/adapters/default-solana-adapter/index.d.ts +0 -6
  266. package/dist/types/adapters/default-solana-adapter/injectedAdapters.d.ts +0 -4
  267. package/dist/types/adapters/default-solana-adapter/walletStandardAdapter.d.ts +0 -31
  268. package/dist/types/adapters/default-solana-adapter/walletStandardHandler.d.ts +0 -27
  269. package/dist/types/adapters/index.d.ts +0 -7
  270. package/dist/types/adapters/wallet-connect-v2-adapter/walletConnectV2adapter.d.ts +0 -42
  271. package/dist/types/base/adapter/baseAdapter.d.ts +0 -44
  272. package/dist/types/base/core/IWeb3Auth.d.ts +0 -101
  273. package/dist/types/base/wallet/index.d.ts +0 -33
  274. package/dist/types/noModal.d.ts +0 -43
  275. package/dist/types/plugins/wallet-services-plugin/plugin.d.ts +0 -51
  276. package/dist/types/providers/account-abstraction-provider/providers/AccountAbstractionProvider.d.ts +0 -46
  277. package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/BiconomySmartAccount.d.ts +0 -14
  278. package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/KernelSmartAccount.d.ts +0 -13
  279. package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/LightSmartAccount.d.ts +0 -14
  280. package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/NexusSmartAccount.d.ts +0 -14
  281. package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/SafeSmartAccount.d.ts +0 -13
  282. package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/SimpleSmartAccount.d.ts +0 -13
  283. package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/TrustSmartAccount.d.ts +0 -13
  284. package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/constants.d.ts +0 -9
  285. package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/index.d.ts +0 -6
  286. package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/types.d.ts +0 -22
  287. package/dist/types/providers/account-abstraction-provider/providers/types.d.ts +0 -17
  288. package/dist/types/providers/base-provider/utils.d.ts +0 -2
  289. package/dist/types/providers/ethereum-provider/providers/privateKeyProviders/EthereumPrivateKeyProvider.d.ts +0 -30
  290. package/dist/types/providers/ethereum-provider/providers/privateKeyProviders/ethPrivatekeyUtils.d.ts +0 -9
  291. package/dist/types/providers/ethereum-provider/providers/privateKeyProviders/index.d.ts +0 -2
  292. package/dist/types/providers/ethereum-provider/rpc/ethRpcMiddlewares.d.ts +0 -5
  293. package/dist/types/providers/solana-provider/interface.d.ts +0 -39
  294. package/dist/types/providers/solana-provider/providers/injectedProviders/index.d.ts +0 -3
  295. package/dist/types/providers/solana-provider/providers/injectedProviders/injectedProviderProxy.d.ts +0 -3
  296. package/dist/types/providers/solana-provider/providers/injectedProviders/interface.d.ts +0 -5
  297. package/dist/types/providers/solana-provider/providers/injectedProviders/torus/providerHandlers.d.ts +0 -3
  298. package/dist/types/providers/solana-provider/providers/injectedProviders/torus/torusInjectedProvider.d.ts +0 -18
  299. package/dist/types/providers/solana-provider/providers/injectedProviders/walletStandardProvider.d.ts +0 -6
  300. package/dist/types/providers/solana-provider/rpc/interfaces.d.ts +0 -42
  301. package/dist/types/providers/solana-provider/solanaWallet.d.ts +0 -14
  302. /package/dist/lib.cjs/base/{adapter → connector}/utils.js +0 -0
  303. /package/dist/lib.cjs/{adapters/default-solana-adapter → providers/solana-provider/providers/injectedProviders}/utils.js +0 -0
  304. /package/dist/{types → lib.cjs/types}/base/composables/index.d.ts +0 -0
  305. /package/dist/{types/base/adapter → lib.cjs/types/base/connector}/utils.d.ts +0 -0
  306. /package/dist/{types → lib.cjs/types}/base/loglevel.d.ts +0 -0
  307. /package/dist/{types → lib.cjs/types}/base/plugin/index.d.ts +0 -0
  308. /package/dist/{types → lib.cjs/types}/base/provider/IProvider.d.ts +0 -0
  309. /package/dist/{types/adapters/default-solana-adapter → lib.cjs/types/connectors/injected-solana-connector}/utils.d.ts +0 -0
  310. /package/dist/{types/adapters/wallet-connect-v2-adapter → lib.cjs/types/connectors/wallet-connect-v2-connector}/utils.d.ts +0 -0
  311. /package/dist/{types → lib.cjs/types}/plugins/index.d.ts +0 -0
  312. /package/dist/{types → lib.cjs/types}/plugins/nft-checkout-plugin/embed.d.ts +0 -0
  313. /package/dist/{types → lib.cjs/types}/plugins/nft-checkout-plugin/enums.d.ts +0 -0
  314. /package/dist/{types → lib.cjs/types}/plugins/nft-checkout-plugin/index.d.ts +0 -0
  315. /package/dist/{types → lib.cjs/types}/plugins/nft-checkout-plugin/utils.d.ts +0 -0
  316. /package/dist/{types → lib.cjs/types}/plugins/wallet-services-plugin/index.d.ts +0 -0
  317. /package/dist/{types → lib.cjs/types}/providers/account-abstraction-provider/index.d.ts +0 -0
  318. /package/dist/{types → lib.cjs/types}/providers/account-abstraction-provider/providers/utils.d.ts +0 -0
  319. /package/dist/{types → lib.cjs/types}/providers/account-abstraction-provider/rpc/ethRpcMiddlewares.d.ts +0 -0
  320. /package/dist/{types → lib.cjs/types}/providers/account-abstraction-provider/rpc/index.d.ts +0 -0
  321. /package/dist/{types → lib.cjs/types}/providers/base-provider/index.d.ts +0 -0
  322. /package/dist/{types → lib.cjs/types}/providers/base-provider/jrpcClient.d.ts +0 -0
  323. /package/dist/{types → lib.cjs/types}/providers/ethereum-mpc-provider/index.d.ts +0 -0
  324. /package/dist/{types → lib.cjs/types}/providers/ethereum-mpc-provider/providers/index.d.ts +0 -0
  325. /package/dist/{types → lib.cjs/types}/providers/ethereum-mpc-provider/providers/signingProviders/index.d.ts +0 -0
  326. /package/dist/{types → lib.cjs/types}/providers/ethereum-mpc-provider/providers/signingProviders/signingUtils.d.ts +0 -0
  327. /package/dist/{types → lib.cjs/types}/providers/ethereum-mpc-provider/rpc/ethRpcMiddlewares.d.ts +0 -0
  328. /package/dist/{types → lib.cjs/types}/providers/ethereum-mpc-provider/rpc/interfaces.d.ts +0 -0
  329. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/index.d.ts +0 -0
  330. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/providers/converter.d.ts +0 -0
  331. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/providers/index.d.ts +0 -0
  332. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/constants.d.ts +0 -0
  333. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/formatter.d.ts +0 -0
  334. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/index.d.ts +0 -0
  335. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/interfaces.d.ts +0 -0
  336. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/utils.d.ts +0 -0
  337. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/providers/utils.d.ts +0 -0
  338. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/rpc/index.d.ts +0 -0
  339. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/rpc/jrpcClient.d.ts +0 -0
  340. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/rpc/walletMidddleware.d.ts +0 -0
  341. /package/dist/{types → lib.cjs/types}/providers/index.d.ts +0 -0
  342. /package/dist/{types → lib.cjs/types}/providers/solana-provider/index.d.ts +0 -0
  343. /package/dist/{types → lib.cjs/types}/providers/solana-provider/providers/index.d.ts +0 -0
  344. /package/dist/{types → lib.cjs/types}/providers/solana-provider/providers/injectedProviders/base/providerHandlers.d.ts +0 -0
  345. /package/dist/{types → lib.cjs/types}/providers/solana-provider/providers/privateKeyProvider/index.d.ts +0 -0
  346. /package/dist/{types → lib.cjs/types}/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyUtils.d.ts +0 -0
  347. /package/dist/{types → lib.cjs/types}/providers/solana-provider/rpc/JrpcClient.d.ts +0 -0
  348. /package/dist/{types → lib.cjs/types}/providers/solana-provider/rpc/index.d.ts +0 -0
  349. /package/dist/{types → lib.cjs/types}/providers/xrpl-provider/index.d.ts +0 -0
  350. /package/dist/{types → lib.cjs/types}/providers/xrpl-provider/providers/index.d.ts +0 -0
  351. /package/dist/{types → lib.cjs/types}/providers/xrpl-provider/providers/privateKeyProviders/constants.d.ts +0 -0
  352. /package/dist/{types → lib.cjs/types}/providers/xrpl-provider/providers/privateKeyProviders/index.d.ts +0 -0
  353. /package/dist/{types → lib.cjs/types}/providers/xrpl-provider/providers/privateKeyProviders/interface.d.ts +0 -0
  354. /package/dist/{types → lib.cjs/types}/providers/xrpl-provider/providers/privateKeyProviders/xrplWalletUtils.d.ts +0 -0
  355. /package/dist/{types → lib.cjs/types}/providers/xrpl-provider/rpc/JrpcClient.d.ts +0 -0
  356. /package/dist/{types → lib.cjs/types}/react/index.d.ts +0 -0
  357. /package/dist/{types → lib.cjs/types}/react/no-modal/Web3AuthInnerContext.d.ts +0 -0
  358. /package/dist/{types → lib.cjs/types}/react/no-modal/Web3AuthProvider.d.ts +0 -0
  359. /package/dist/{types → lib.cjs/types}/react/no-modal/hooks/index.d.ts +0 -0
  360. /package/dist/{types → lib.cjs/types}/react/no-modal/hooks/useWeb3Auth.d.ts +0 -0
  361. /package/dist/{types → lib.cjs/types}/react/no-modal/index.d.ts +0 -0
  362. /package/dist/{types → lib.cjs/types}/react/wallet-services-plugin/WalletServicesContext.d.ts +0 -0
  363. /package/dist/{types → lib.cjs/types}/react/wallet-services-plugin/WalletServicesProvider.d.ts +0 -0
  364. /package/dist/{types → lib.cjs/types}/react/wallet-services-plugin/hooks/index.d.ts +0 -0
  365. /package/dist/{types → lib.cjs/types}/react/wallet-services-plugin/hooks/useWalletServicesPlugin.d.ts +0 -0
  366. /package/dist/{types → lib.cjs/types}/react/wallet-services-plugin/index.d.ts +0 -0
  367. /package/dist/{types → lib.cjs/types}/vue/index.d.ts +0 -0
  368. /package/dist/{types → lib.cjs/types}/vue/no-modal/Web3AuthProvider.d.ts +0 -0
  369. /package/dist/{types → lib.cjs/types}/vue/no-modal/composables/index.d.ts +0 -0
  370. /package/dist/{types → lib.cjs/types}/vue/no-modal/composables/useWeb3Auth.d.ts +0 -0
  371. /package/dist/{types → lib.cjs/types}/vue/no-modal/index.d.ts +0 -0
  372. /package/dist/{types → lib.cjs/types}/vue/wallet-services-plugin/WalletServicesProvider.d.ts +0 -0
  373. /package/dist/{types → lib.cjs/types}/vue/wallet-services-plugin/composables/index.d.ts +0 -0
  374. /package/dist/{types → lib.cjs/types}/vue/wallet-services-plugin/composables/useWalletServicesPlugin.d.ts +0 -0
  375. /package/dist/{types → lib.cjs/types}/vue/wallet-services-plugin/context.d.ts +0 -0
  376. /package/dist/{types → lib.cjs/types}/vue/wallet-services-plugin/index.d.ts +0 -0
  377. /package/dist/lib.esm/base/{adapter → connector}/utils.js +0 -0
  378. /package/dist/lib.esm/{adapters/default-solana-adapter → providers/solana-provider/providers/injectedProviders}/utils.js +0 -0
@@ -1,23 +1,24 @@
1
1
  import { signChallenge, verifySignedChallenge } from '@toruslabs/base-controllers';
2
- import { getChainConfig } from '../../base/chain/config.js';
3
- import { CHAIN_NAMESPACES } from '../../base/chain/IChainInterface.js';
4
- import { WalletLoginError } from '../../base/errors/index.js';
5
- import { getSavedToken, checkIfTokenIsExpired, saveToken, clearToken } from '../../base/adapter/utils.js';
6
- import { BaseAdapter } from '../../base/adapter/baseAdapter.js';
7
- import { ADAPTER_STATUS, ADAPTER_EVENTS } from '../../base/adapter/constants.js';
2
+ import { EVM_METHOD_TYPES } from '@web3auth/ws-embed';
3
+ import { WalletLoginError, WalletInitializationError } from '../../base/errors/index.js';
4
+ import { BaseConnector } from '../../base/connector/baseConnector.js';
5
+ import { CONNECTOR_STATUS, CONNECTOR_EVENTS } from '../../base/connector/constants.js';
6
+ import '@web3auth/auth';
7
+ import { getSavedToken, checkIfTokenIsExpired, saveToken, clearToken } from '../../base/connector/utils.js';
8
+ import '../../base/loglevel.js';
9
+ import '../../base/plugin/errors.js';
10
+ import '../../base/plugin/IPlugin.js';
11
+ import '@toruslabs/constants';
12
+ import '@toruslabs/http-helpers';
13
+ import '../../base/wallet/index.js';
8
14
 
9
- class BaseEvmAdapter extends BaseAdapter {
10
- async init(_) {
11
- if (!this.chainConfig) this.chainConfig = getChainConfig(CHAIN_NAMESPACES.EIP155, 1);
12
- }
15
+ class BaseEvmConnector extends BaseConnector {
16
+ async init(_) {}
13
17
  async authenticateUser() {
14
- if (!this.provider || this.status !== ADAPTER_STATUS.CONNECTED) throw WalletLoginError.notConnectedError();
15
- const {
16
- chainNamespace,
17
- chainId
18
- } = this.chainConfig;
18
+ if (!this.provider || this.status !== CONNECTOR_STATUS.CONNECTED) throw WalletLoginError.notConnectedError();
19
+ if (!this.coreOptions) throw WalletInitializationError.invalidParams("Please initialize Web3Auth with valid options");
19
20
  const accounts = await this.provider.request({
20
- method: "eth_accounts"
21
+ method: EVM_METHOD_TYPES.GET_ACCOUNTS
21
22
  });
22
23
  if (accounts && accounts.length > 0) {
23
24
  const existingToken = getSavedToken(accounts[0], this.name);
@@ -29,6 +30,14 @@ class BaseEvmAdapter extends BaseAdapter {
29
30
  };
30
31
  }
31
32
  }
33
+ const chainId = await this.provider.request({
34
+ method: "eth_chainId"
35
+ });
36
+ const currentChainConfig = this.coreOptions.chains.find(x => x.chainId === chainId);
37
+ if (!currentChainConfig) throw WalletInitializationError.invalidParams("chainConfig is required before authentication");
38
+ const {
39
+ chainNamespace
40
+ } = currentChainConfig;
32
41
  const payload = {
33
42
  domain: window.location.origin,
34
43
  uri: window.location.href,
@@ -41,10 +50,10 @@ class BaseEvmAdapter extends BaseAdapter {
41
50
  const challenge = await signChallenge(payload, chainNamespace);
42
51
  const hexChallenge = `0x${Buffer.from(challenge, "utf8").toString("hex")}`;
43
52
  const signedMessage = await this.provider.request({
44
- method: "personal_sign",
53
+ method: EVM_METHOD_TYPES.PERSONAL_SIGN,
45
54
  params: [hexChallenge, accounts[0]]
46
55
  });
47
- const idToken = await verifySignedChallenge(chainNamespace, signedMessage, challenge, this.name, this.sessionTime, this.clientId, this.web3AuthNetwork);
56
+ const idToken = await verifySignedChallenge(chainNamespace, signedMessage, challenge, this.name, this.coreOptions.sessionTime, this.coreOptions.clientId, this.coreOptions.web3AuthNetwork);
48
57
  saveToken(accounts[0], this.name, idToken);
49
58
  return {
50
59
  idToken
@@ -63,8 +72,8 @@ class BaseEvmAdapter extends BaseAdapter {
63
72
  }
64
73
  async disconnect() {
65
74
  this.rehydrated = false;
66
- this.emit(ADAPTER_EVENTS.DISCONNECTED);
75
+ this.emit(CONNECTOR_EVENTS.DISCONNECTED);
67
76
  }
68
77
  }
69
78
 
70
- export { BaseEvmAdapter };
79
+ export { BaseEvmConnector };
@@ -0,0 +1,81 @@
1
+ import { signChallenge, verifySignedChallenge } from '@toruslabs/base-controllers';
2
+ import { SOLANA_METHOD_TYPES } from '@web3auth/ws-embed';
3
+ import { WalletLoginError, WalletInitializationError } from '../../base/errors/index.js';
4
+ import { BaseConnector } from '../../base/connector/baseConnector.js';
5
+ import { CONNECTOR_STATUS, CONNECTOR_EVENTS } from '../../base/connector/constants.js';
6
+ import '@web3auth/auth';
7
+ import { getSavedToken, checkIfTokenIsExpired, saveToken, clearToken } from '../../base/connector/utils.js';
8
+ import '../../base/loglevel.js';
9
+ import '../../base/plugin/errors.js';
10
+ import '../../base/plugin/IPlugin.js';
11
+ import '@toruslabs/constants';
12
+ import '@toruslabs/http-helpers';
13
+ import '../../base/wallet/index.js';
14
+
15
+ class BaseSolanaConnector extends BaseConnector {
16
+ async init(_) {}
17
+ async authenticateUser() {
18
+ if (!this.provider || this.status !== CONNECTOR_STATUS.CONNECTED) throw WalletLoginError.notConnectedError();
19
+ if (!this.coreOptions) throw WalletInitializationError.invalidParams("Please initialize Web3Auth with a valid options");
20
+ const accounts = await this.provider.request({
21
+ method: SOLANA_METHOD_TYPES.GET_ACCOUNTS
22
+ });
23
+ if (accounts && accounts.length > 0) {
24
+ const existingToken = getSavedToken(accounts[0], this.name);
25
+ if (existingToken) {
26
+ const isExpired = checkIfTokenIsExpired(existingToken);
27
+ if (!isExpired) {
28
+ return {
29
+ idToken: existingToken
30
+ };
31
+ }
32
+ }
33
+ const chainId = await this.provider.request({
34
+ method: "solana_chainId"
35
+ });
36
+ const currentChainConfig = this.coreOptions.chains.find(x => x.chainId === chainId);
37
+ if (!currentChainConfig) throw WalletInitializationError.invalidParams("chainConfig is required before authentication");
38
+ const {
39
+ chainNamespace
40
+ } = currentChainConfig;
41
+ const payload = {
42
+ domain: window.location.origin,
43
+ uri: window.location.href,
44
+ address: accounts[0],
45
+ chainId: parseInt(chainId, 16),
46
+ version: "1",
47
+ nonce: Math.random().toString(36).slice(2),
48
+ issuedAt: new Date().toISOString()
49
+ };
50
+ const challenge = await signChallenge(payload, chainNamespace);
51
+ const signedMessage = await this.provider.request({
52
+ method: SOLANA_METHOD_TYPES.SIGN_MESSAGE,
53
+ params: {
54
+ data: challenge,
55
+ display: "utf8"
56
+ }
57
+ });
58
+ const idToken = await verifySignedChallenge(chainNamespace, signedMessage, challenge, this.name, this.coreOptions.sessionTime, this.coreOptions.clientId, this.coreOptions.web3AuthNetwork);
59
+ saveToken(accounts[0], this.name, idToken);
60
+ return {
61
+ idToken
62
+ };
63
+ }
64
+ throw WalletLoginError.notConnectedError("Not connected with wallet, Please login/connect first");
65
+ }
66
+ async disconnectSession() {
67
+ super.checkDisconnectionRequirements();
68
+ const accounts = await this.provider.request({
69
+ method: SOLANA_METHOD_TYPES.GET_ACCOUNTS
70
+ });
71
+ if (accounts && accounts.length > 0) {
72
+ clearToken(accounts[0], this.name);
73
+ }
74
+ }
75
+ async disconnect() {
76
+ this.rehydrated = false;
77
+ this.emit(CONNECTOR_EVENTS.DISCONNECTED);
78
+ }
79
+ }
80
+
81
+ export { BaseSolanaConnector };
@@ -0,0 +1,157 @@
1
+ import _objectSpread from '@babel/runtime/helpers/objectSpread2';
2
+ import _defineProperty from '@babel/runtime/helpers/defineProperty';
3
+ import { createCoinbaseWalletSDK } from '@coinbase/wallet-sdk';
4
+ import { WalletLoginError, Web3AuthError } from '../../base/errors/index.js';
5
+ import { CONNECTOR_NAMESPACES } from '../../base/chain/IChainInterface.js';
6
+ import '@web3auth/auth';
7
+ import { WALLET_CONNECTORS } from '../../base/wallet/index.js';
8
+ import { CONNECTOR_CATEGORY, CONNECTOR_STATUS, CONNECTOR_EVENTS } from '../../base/connector/constants.js';
9
+ import 'jwt-decode';
10
+ import '../../base/loglevel.js';
11
+ import '../../base/plugin/errors.js';
12
+ import '../../base/plugin/IPlugin.js';
13
+ import { CHAIN_NAMESPACES } from '@toruslabs/base-controllers';
14
+ import '@toruslabs/constants';
15
+ import '@toruslabs/http-helpers';
16
+ import { BaseEvmConnector } from '../base-evm-connector/baseEvmConnector.js';
17
+
18
+ class CoinbaseConnector extends BaseEvmConnector {
19
+ constructor(connectorOptions) {
20
+ super(connectorOptions);
21
+ _defineProperty(this, "connectorNamespace", CONNECTOR_NAMESPACES.EIP155);
22
+ _defineProperty(this, "currentChainNamespace", CHAIN_NAMESPACES.EIP155);
23
+ _defineProperty(this, "type", CONNECTOR_CATEGORY.EXTERNAL);
24
+ _defineProperty(this, "name", WALLET_CONNECTORS.COINBASE);
25
+ _defineProperty(this, "status", CONNECTOR_STATUS.NOT_READY);
26
+ _defineProperty(this, "coinbaseProvider", null);
27
+ _defineProperty(this, "coinbaseOptions", {
28
+ appName: "Web3Auth"
29
+ });
30
+ this.coinbaseOptions = _objectSpread(_objectSpread({}, this.coinbaseOptions), connectorOptions.connectorSettings);
31
+ }
32
+ get provider() {
33
+ if (this.status !== CONNECTOR_STATUS.NOT_READY && this.coinbaseProvider) {
34
+ return this.coinbaseProvider;
35
+ }
36
+ return null;
37
+ }
38
+ set provider(_) {
39
+ throw new Error("Not implemented");
40
+ }
41
+ async init(options) {
42
+ await super.init(options);
43
+ const chainConfig = this.coreOptions.chains.find(x => x.chainId === options.chainId);
44
+ super.checkInitializationRequirements({
45
+ chainConfig
46
+ });
47
+ const coinbaseInstance = createCoinbaseWalletSDK(_objectSpread(_objectSpread({}, this.coinbaseOptions), {}, {
48
+ preference: {
49
+ options: this.coinbaseOptions.options || "smartWalletOnly"
50
+ },
51
+ appChainIds: this.coreOptions.chains.map(x => Number.parseInt(x.chainId, 16)),
52
+ appName: this.coinbaseOptions.appName || "Web3Auth",
53
+ appLogoUrl: this.coinbaseOptions.appLogoUrl || ""
54
+ }));
55
+ this.coinbaseProvider = coinbaseInstance.getProvider();
56
+ this.status = CONNECTOR_STATUS.READY;
57
+ this.emit(CONNECTOR_EVENTS.READY, WALLET_CONNECTORS.COINBASE);
58
+ try {
59
+ if (options.autoConnect) {
60
+ this.rehydrated = true;
61
+ await this.connect({
62
+ chainId: options.chainId
63
+ });
64
+ }
65
+ } catch (error) {
66
+ this.emit(CONNECTOR_EVENTS.ERRORED, error);
67
+ }
68
+ }
69
+ async connect({
70
+ chainId
71
+ }) {
72
+ super.checkConnectionRequirements();
73
+ if (!this.coinbaseProvider) throw WalletLoginError.notConnectedError("Connector is not initialized");
74
+ this.status = CONNECTOR_STATUS.CONNECTING;
75
+ this.emit(CONNECTOR_EVENTS.CONNECTING, {
76
+ connector: WALLET_CONNECTORS.COINBASE
77
+ });
78
+ try {
79
+ const chainConfig = this.coreOptions.chains.find(x => x.chainId === chainId);
80
+ if (!chainConfig) throw WalletLoginError.connectionError("Chain config is not available");
81
+ await this.coinbaseProvider.request({
82
+ method: "eth_requestAccounts"
83
+ });
84
+ const currentChainId = await this.coinbaseProvider.request({
85
+ method: "eth_chainId"
86
+ });
87
+ if (currentChainId !== chainConfig.chainId) {
88
+ await this.switchChain(chainConfig, true);
89
+ }
90
+ this.status = CONNECTOR_STATUS.CONNECTED;
91
+ if (!this.provider) throw WalletLoginError.notConnectedError("Failed to connect with provider");
92
+ this.provider.once("disconnect", () => {
93
+ // ready to be connected again
94
+ this.disconnect();
95
+ });
96
+ this.emit(CONNECTOR_EVENTS.CONNECTED, {
97
+ connector: WALLET_CONNECTORS.COINBASE,
98
+ reconnected: this.rehydrated,
99
+ provider: this.provider
100
+ });
101
+ return this.provider;
102
+ } catch (error) {
103
+ // ready again to be connected
104
+ this.status = CONNECTOR_STATUS.READY;
105
+ this.rehydrated = false;
106
+ this.emit(CONNECTOR_EVENTS.ERRORED, error);
107
+ if (error instanceof Web3AuthError) throw error;
108
+ throw WalletLoginError.connectionError("Failed to login with coinbase wallet", error);
109
+ }
110
+ }
111
+ async disconnect(options = {
112
+ cleanup: false
113
+ }) {
114
+ var _this$provider;
115
+ await super.disconnectSession();
116
+ (_this$provider = this.provider) === null || _this$provider === void 0 || _this$provider.removeAllListeners();
117
+ if (options.cleanup) {
118
+ this.status = CONNECTOR_STATUS.NOT_READY;
119
+ this.coinbaseProvider = null;
120
+ } else {
121
+ // ready to be connected again
122
+ this.status = CONNECTOR_STATUS.READY;
123
+ }
124
+ await super.disconnect();
125
+ }
126
+ async getUserInfo() {
127
+ if (this.status !== CONNECTOR_STATUS.CONNECTED) throw WalletLoginError.notConnectedError("Not connected with wallet, Please login/connect first");
128
+ return {};
129
+ }
130
+ async switchChain(params, init = false) {
131
+ super.checkSwitchChainRequirements(params, init);
132
+ await this.coinbaseProvider.request({
133
+ method: "wallet_switchEthereumChain",
134
+ params: [{
135
+ chainId: params.chainId
136
+ }]
137
+ });
138
+ }
139
+ async enableMFA() {
140
+ throw new Error("Method Not implemented");
141
+ }
142
+ async manageMFA() {
143
+ throw new Error("Method Not implemented");
144
+ }
145
+ }
146
+ const coinbaseConnector = params => {
147
+ return ({
148
+ coreOptions
149
+ }) => {
150
+ return new CoinbaseConnector({
151
+ connectorSettings: params,
152
+ coreOptions
153
+ });
154
+ };
155
+ };
156
+
157
+ export { coinbaseConnector };
@@ -0,0 +1,2 @@
1
+ export { injectedEvmConnector } from './injectedEvmConnector.js';
2
+ export { createStore as createMipd } from 'mipd';
@@ -1,25 +1,32 @@
1
1
  import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
- import { ADAPTER_NAMESPACES, CHAIN_NAMESPACES } from '../../base/chain/IChainInterface.js';
3
2
  import { WalletLoginError, Web3AuthError } from '../../base/errors/index.js';
3
+ import { CONNECTOR_NAMESPACES } from '../../base/chain/IChainInterface.js';
4
+ import '@web3auth/auth';
5
+ import '../../base/wallet/index.js';
6
+ import { CONNECTOR_CATEGORY, CONNECTOR_STATUS, CONNECTOR_EVENTS } from '../../base/connector/constants.js';
7
+ import 'jwt-decode';
4
8
  import { log } from '../../base/loglevel.js';
5
- import { BaseEvmAdapter } from '../base-evm-adapter/baseEvmAdapter.js';
6
- import { ADAPTER_CATEGORY, ADAPTER_STATUS, ADAPTER_EVENTS } from '../../base/adapter/constants.js';
9
+ import '../../base/plugin/errors.js';
10
+ import '../../base/plugin/IPlugin.js';
11
+ import { normalizeWalletName } from '../../base/utils.js';
12
+ import { BaseEvmConnector } from '../base-evm-connector/baseEvmConnector.js';
13
+ import { CHAIN_NAMESPACES } from '@toruslabs/base-controllers';
7
14
 
8
- class InjectedEvmAdapter extends BaseEvmAdapter {
15
+ class InjectedEvmConnector extends BaseEvmConnector {
9
16
  constructor(options) {
10
17
  super(options);
11
- _defineProperty(this, "adapterNamespace", ADAPTER_NAMESPACES.EIP155);
18
+ _defineProperty(this, "connectorNamespace", CONNECTOR_NAMESPACES.EIP155);
12
19
  _defineProperty(this, "currentChainNamespace", CHAIN_NAMESPACES.EIP155);
13
- _defineProperty(this, "type", ADAPTER_CATEGORY.EXTERNAL);
20
+ _defineProperty(this, "type", CONNECTOR_CATEGORY.EXTERNAL);
14
21
  _defineProperty(this, "name", void 0);
15
22
  _defineProperty(this, "isInjected", true);
16
- _defineProperty(this, "status", ADAPTER_STATUS.NOT_READY);
23
+ _defineProperty(this, "status", CONNECTOR_STATUS.NOT_READY);
17
24
  _defineProperty(this, "injectedProvider", null);
18
25
  this.name = options.name;
19
26
  this.injectedProvider = options.provider;
20
27
  }
21
28
  get provider() {
22
- if (this.status !== ADAPTER_STATUS.NOT_READY && this.injectedProvider) {
29
+ if (this.status !== CONNECTOR_STATUS.NOT_READY && this.injectedProvider) {
23
30
  return this.injectedProvider;
24
31
  }
25
32
  return null;
@@ -27,43 +34,51 @@ class InjectedEvmAdapter extends BaseEvmAdapter {
27
34
  set provider(_) {
28
35
  throw new Error("Not implemented");
29
36
  }
30
- async init(options = {}) {
37
+ async init(options) {
31
38
  await super.init(options);
32
- super.checkInitializationRequirements();
33
- this.status = ADAPTER_STATUS.READY;
34
- this.emit(ADAPTER_EVENTS.READY, this.name);
39
+ const chainConfig = this.coreOptions.chains.find(x => x.chainId === options.chainId);
40
+ super.checkInitializationRequirements({
41
+ chainConfig
42
+ });
43
+ this.status = CONNECTOR_STATUS.READY;
44
+ this.emit(CONNECTOR_EVENTS.READY, this.name);
35
45
  try {
36
- log.debug(`initializing ${this.name} injected adapter`);
46
+ log.debug(`initializing ${this.name} injected connector`);
37
47
  if (options.autoConnect) {
38
48
  this.rehydrated = true;
39
- await this.connect();
49
+ await this.connect({
50
+ chainId: options.chainId
51
+ });
40
52
  }
41
53
  } catch (error) {
42
- this.emit(ADAPTER_EVENTS.ERRORED, error);
54
+ this.emit(CONNECTOR_EVENTS.ERRORED, error);
43
55
  }
44
56
  }
45
- async connect() {
57
+ async connect({
58
+ chainId
59
+ }) {
46
60
  super.checkConnectionRequirements();
47
61
  if (!this.injectedProvider) throw WalletLoginError.connectionError("Injected provider is not available");
48
- if (!this.chainConfig) throw WalletLoginError.connectionError("Chain config is not available");
49
- this.status = ADAPTER_STATUS.CONNECTING;
50
- this.emit(ADAPTER_EVENTS.CONNECTING, {
51
- adapter: this.name
62
+ const chainConfig = this.coreOptions.chains.find(x => x.chainId === chainId);
63
+ if (!chainConfig) throw WalletLoginError.connectionError("Chain config is not available");
64
+ this.status = CONNECTOR_STATUS.CONNECTING;
65
+ this.emit(CONNECTOR_EVENTS.CONNECTING, {
66
+ connector: this.name
52
67
  });
53
68
  try {
54
69
  await this.injectedProvider.request({
55
70
  method: "eth_requestAccounts"
56
71
  });
57
72
  // switch chain if not connected to the right chain
58
- if (this.injectedProvider.chainId !== this.chainConfig.chainId) {
73
+ if (this.injectedProvider.chainId !== chainConfig.chainId) {
59
74
  try {
60
- await this.switchChain(this.chainConfig, true);
61
- } catch (error) {
62
- await this.addChain(this.chainConfig, true);
63
- await this.switchChain(this.chainConfig, true);
75
+ await this.switchChain(chainConfig, true);
76
+ } catch {
77
+ await this.addChain(chainConfig, true);
78
+ await this.switchChain(chainConfig, true);
64
79
  }
65
80
  }
66
- this.status = ADAPTER_STATUS.CONNECTED;
81
+ this.status = CONNECTOR_STATUS.CONNECTED;
67
82
  const accountDisconnectHandler = accounts => {
68
83
  if (accounts.length === 0) {
69
84
  var _this$injectedProvide;
@@ -72,17 +87,17 @@ class InjectedEvmAdapter extends BaseEvmAdapter {
72
87
  }
73
88
  };
74
89
  this.injectedProvider.on("accountsChanged", accountDisconnectHandler);
75
- this.emit(ADAPTER_EVENTS.CONNECTED, {
76
- adapter: this.name,
90
+ this.emit(CONNECTOR_EVENTS.CONNECTED, {
91
+ connector: this.name,
77
92
  reconnected: this.rehydrated,
78
93
  provider: this.injectedProvider
79
94
  });
80
95
  return this.injectedProvider;
81
96
  } catch (error) {
82
97
  // ready again to be connected
83
- this.status = ADAPTER_STATUS.READY;
98
+ this.status = CONNECTOR_STATUS.READY;
84
99
  this.rehydrated = false;
85
- this.emit(ADAPTER_EVENTS.ERRORED, error);
100
+ this.emit(CONNECTOR_EVENTS.ERRORED, error);
86
101
  if (error instanceof Web3AuthError) throw error;
87
102
  throw WalletLoginError.connectionError(`Failed to login with ${this.name} injected wallet`);
88
103
  }
@@ -100,23 +115,24 @@ class InjectedEvmAdapter extends BaseEvmAdapter {
100
115
  eth_accounts: {}
101
116
  }]
102
117
  });
103
- } catch (error) {}
118
+ } catch {
119
+ // ignore error
120
+ }
104
121
  if (options.cleanup) {
105
- this.status = ADAPTER_STATUS.NOT_READY;
122
+ this.status = CONNECTOR_STATUS.NOT_READY;
106
123
  this.injectedProvider = null;
107
124
  } else {
108
125
  // ready to be connected again
109
- this.status = ADAPTER_STATUS.READY;
126
+ this.status = CONNECTOR_STATUS.READY;
110
127
  }
111
128
  await super.disconnect();
112
129
  }
113
130
  async getUserInfo() {
114
- if (this.status !== ADAPTER_STATUS.CONNECTED) throw WalletLoginError.notConnectedError("Not connected with wallet, Please login/connect first");
131
+ if (this.status !== CONNECTOR_STATUS.CONNECTED) throw WalletLoginError.notConnectedError("Not connected with wallet, Please login/connect first");
115
132
  return {};
116
133
  }
117
- async addChain(chainConfig, init = false) {
134
+ async addChain(chainConfig, _init = false) {
118
135
  if (!this.injectedProvider) throw WalletLoginError.connectionError("Injected provider is not available");
119
- super.checkAddChainRequirements(chainConfig, init);
120
136
  await this.injectedProvider.request({
121
137
  method: "wallet_addEthereumChain",
122
138
  params: [{
@@ -132,7 +148,6 @@ class InjectedEvmAdapter extends BaseEvmAdapter {
132
148
  iconUrls: [chainConfig.logo]
133
149
  }]
134
150
  });
135
- this.addChainConfig(chainConfig);
136
151
  }
137
152
  async switchChain(params, init = false) {
138
153
  if (!this.injectedProvider) throw WalletLoginError.connectionError("Injected provider is not available");
@@ -143,9 +158,6 @@ class InjectedEvmAdapter extends BaseEvmAdapter {
143
158
  chainId: params.chainId
144
159
  }]
145
160
  });
146
- this.setAdapterSettings({
147
- chainConfig: this.getChainConfig(params.chainId)
148
- });
149
161
  }
150
162
  async enableMFA() {
151
163
  throw new Error("Method Not implemented");
@@ -154,5 +166,16 @@ class InjectedEvmAdapter extends BaseEvmAdapter {
154
166
  throw new Error("Method Not implemented");
155
167
  }
156
168
  }
169
+ const injectedEvmConnector = providerDetail => {
170
+ return ({
171
+ coreOptions
172
+ }) => {
173
+ return new InjectedEvmConnector({
174
+ name: normalizeWalletName(providerDetail.info.name),
175
+ provider: providerDetail.provider,
176
+ coreOptions
177
+ });
178
+ };
179
+ };
157
180
 
158
- export { InjectedEvmAdapter };
181
+ export { InjectedEvmConnector, injectedEvmConnector };
@@ -0,0 +1,18 @@
1
+ import { SolanaSignMessage, SolanaSignTransaction, SolanaSignAndSendTransaction } from '@solana/wallet-standard-features';
2
+ export { getWallets as createSolanaMipd } from '@wallet-standard/app';
3
+ import { StandardConnect } from '@wallet-standard/features';
4
+ export { walletStandardConnector } from './walletStandardConnector.js';
5
+
6
+ const hasSolanaWalletStandardFeatures = wallet => {
7
+ const {
8
+ chains,
9
+ features
10
+ } = wallet;
11
+ const isSolana = chains.some(chain => chain.startsWith("solana"));
12
+ if (!isSolana) return;
13
+ const hasRequiredFeatures = [StandardConnect, SolanaSignMessage, SolanaSignTransaction, SolanaSignAndSendTransaction].every(feature => Object.keys(features).includes(feature));
14
+ if (!hasRequiredFeatures) return false;
15
+ return true;
16
+ };
17
+
18
+ export { hasSolanaWalletStandardFeatures };