@web3auth/no-modal 10.16.0 → 11.0.0-beta.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 (356) hide show
  1. package/dist/lib.cjs/account-linking/index.js +8 -0
  2. package/dist/lib.cjs/account-linking/react.js +95 -0
  3. package/dist/lib.cjs/account-linking/rest.js +54 -0
  4. package/dist/lib.cjs/account-linking/vue.js +98 -0
  5. package/dist/lib.cjs/base/analytics.js +13 -1
  6. package/dist/lib.cjs/base/connector/baseConnector.js +104 -2
  7. package/dist/lib.cjs/base/connector/connectorStatus.js +2 -0
  8. package/dist/lib.cjs/base/connector/constants.js +6 -2
  9. package/dist/lib.cjs/base/connector/utils.js +0 -21
  10. package/dist/lib.cjs/base/constants.js +4 -0
  11. package/dist/lib.cjs/base/cookie.js +6 -20
  12. package/dist/lib.cjs/base/errors/index.js +84 -12
  13. package/dist/lib.cjs/base/utils.js +22 -11
  14. package/dist/lib.cjs/base/wallet/index.js +7 -0
  15. package/dist/lib.cjs/base/wallet/solana.js +83 -0
  16. package/dist/lib.cjs/connectors/auth-connector/authConnector.js +566 -93
  17. package/dist/lib.cjs/connectors/auth-connector/authSolanaWallet.js +187 -0
  18. package/dist/lib.cjs/connectors/base-evm-connector/baseEvmConnector.js +55 -58
  19. package/dist/lib.cjs/connectors/base-solana-connector/baseSolanaConnector.js +57 -66
  20. package/dist/lib.cjs/connectors/coinbase-connector/coinbaseConnector.js +19 -14
  21. package/dist/lib.cjs/connectors/injected-evm-connector/injectedEvmConnector.js +18 -13
  22. package/dist/lib.cjs/connectors/injected-solana-connector/walletStandardConnector.js +24 -36
  23. package/dist/lib.cjs/connectors/metamask-connector/metamaskConnector.js +350 -131
  24. package/dist/lib.cjs/connectors/utils.js +8 -2
  25. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/WalletConnectV2Provider.js +12 -38
  26. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/config.js +4 -3
  27. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/walletConnectV2Connector.js +111 -73
  28. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/walletConnectV2Utils.js +24 -51
  29. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/wcSolanaWallet.js +144 -0
  30. package/dist/lib.cjs/index.js +55 -83
  31. package/dist/lib.cjs/noModal.js +957 -169
  32. package/dist/lib.cjs/plugins/wallet-services-plugin/plugin.js +23 -39
  33. package/dist/lib.cjs/providers/account-abstraction-provider/providers/AccountAbstractionProvider.js +12 -10
  34. package/dist/lib.cjs/providers/account-abstraction-provider/providers/utils.js +8 -6
  35. package/dist/lib.cjs/providers/account-abstraction-provider/rpc/ethRpcMiddlewares.js +47 -44
  36. package/dist/lib.cjs/providers/base-provider/CommonJRPCProvider.js +1 -3
  37. package/dist/lib.cjs/providers/base-provider/baseProvider.js +69 -35
  38. package/dist/lib.cjs/providers/base-provider/commonPrivateKeyProvider.js +8 -11
  39. package/dist/lib.cjs/providers/base-provider/index.js +0 -1
  40. package/dist/lib.cjs/providers/base-provider/jrpcClient.js +18 -19
  41. package/dist/lib.cjs/providers/base-provider/utils.js +0 -3
  42. package/dist/lib.cjs/providers/ethereum-provider/rpc/ethRpcMiddlewares.js +22 -43
  43. package/dist/lib.cjs/providers/ethereum-provider/rpc/jrpcClient.js +18 -19
  44. package/dist/lib.cjs/providers/ethereum-provider/rpc/walletMiddleware.js +200 -0
  45. package/dist/lib.cjs/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.js +9 -18
  46. package/dist/lib.cjs/providers/xrpl-provider/providers/privateKeyProviders/xrplWalletUtils.js +2 -1
  47. package/dist/lib.cjs/providers/xrpl-provider/rpc/JrpcClient.js +19 -26
  48. package/dist/lib.cjs/providers/xrpl-provider/rpc/xrplRpcMiddlewares.js +46 -37
  49. package/dist/lib.cjs/react/context/WalletServicesInnerContext.js +2 -69
  50. package/dist/lib.cjs/react/context/Web3AuthInnerContext.js +6 -161
  51. package/dist/lib.cjs/react/context/useWalletServicesContextValue.js +76 -0
  52. package/dist/lib.cjs/react/context/useWeb3AuthInnerContextValue.js +216 -0
  53. package/dist/lib.cjs/react/hooks/{useIdentityToken.js → useAuthTokenInfo.js} +6 -7
  54. package/dist/lib.cjs/react/hooks/useCheckout.js +4 -2
  55. package/dist/lib.cjs/react/hooks/useFunding.js +4 -2
  56. package/dist/lib.cjs/react/hooks/useReceive.js +4 -2
  57. package/dist/lib.cjs/react/hooks/useSwap.js +4 -2
  58. package/dist/lib.cjs/react/hooks/useWalletConnectScanner.js +4 -2
  59. package/dist/lib.cjs/react/hooks/useWalletServicesPlugin.js +3 -10
  60. package/dist/lib.cjs/react/hooks/useWalletUI.js +4 -2
  61. package/dist/lib.cjs/react/hooks/useWallets.js +51 -0
  62. package/dist/lib.cjs/react/hooks/useWeb3Auth.js +1 -22
  63. package/dist/lib.cjs/react/hooks/useWeb3AuthConnect.js +2 -2
  64. package/dist/lib.cjs/react/hooks/useWeb3AuthInner.js +4 -2
  65. package/dist/lib.cjs/react/index.js +12 -2
  66. package/dist/lib.cjs/react/solana/hooks/useSignAndSendTransaction.js +22 -4
  67. package/dist/lib.cjs/react/solana/hooks/useSignMessage.js +20 -2
  68. package/dist/lib.cjs/react/solana/hooks/useSignTransaction.js +22 -3
  69. package/dist/lib.cjs/react/solana/hooks/useSolanaWallet.js +34 -51
  70. package/dist/lib.cjs/react/solana/index.js +2 -0
  71. package/dist/lib.cjs/react/solana/provider.js +169 -0
  72. package/dist/lib.cjs/react/wagmi/provider.js +10 -8
  73. package/dist/lib.cjs/types/account-linking/index.d.ts +2 -0
  74. package/dist/lib.cjs/types/account-linking/interfaces.d.ts +90 -0
  75. package/dist/lib.cjs/types/account-linking/react.d.ts +19 -0
  76. package/dist/lib.cjs/types/account-linking/rest.d.ts +9 -0
  77. package/dist/lib.cjs/types/account-linking/vue.d.ts +20 -0
  78. package/dist/lib.cjs/types/base/analytics.d.ts +9 -0
  79. package/dist/lib.cjs/types/base/connector/baseConnector.d.ts +26 -5
  80. package/dist/lib.cjs/types/base/connector/connectorStatus.d.ts +1 -0
  81. package/dist/lib.cjs/types/base/connector/constants.d.ts +5 -0
  82. package/dist/lib.cjs/types/base/connector/interfaces.d.ts +72 -16
  83. package/dist/lib.cjs/types/base/connector/utils.d.ts +0 -3
  84. package/dist/lib.cjs/types/base/constants.d.ts +1 -0
  85. package/dist/lib.cjs/types/base/cookie.d.ts +0 -7
  86. package/dist/lib.cjs/types/base/core/IWeb3Auth.d.ts +57 -13
  87. package/dist/lib.cjs/types/base/errors/index.d.ts +15 -3
  88. package/dist/lib.cjs/types/base/hooks/index.d.ts +2 -2
  89. package/dist/lib.cjs/types/base/interfaces.d.ts +8 -2
  90. package/dist/lib.cjs/types/base/utils.d.ts +9 -2
  91. package/dist/lib.cjs/types/base/wallet/index.d.ts +3 -0
  92. package/dist/lib.cjs/types/base/wallet/solana.d.ts +19 -0
  93. package/dist/lib.cjs/types/connectors/auth-connector/authConnector.d.ts +37 -8
  94. package/dist/lib.cjs/types/connectors/auth-connector/authSolanaWallet.d.ts +35 -0
  95. package/dist/lib.cjs/types/connectors/auth-connector/interface.d.ts +77 -2
  96. package/dist/lib.cjs/types/connectors/base-evm-connector/baseEvmConnector.d.ts +8 -2
  97. package/dist/lib.cjs/types/connectors/base-solana-connector/baseSolanaConnector.d.ts +8 -2
  98. package/dist/lib.cjs/types/connectors/injected-evm-connector/injectedEvmConnector.d.ts +2 -2
  99. package/dist/lib.cjs/types/connectors/injected-solana-connector/walletStandardConnector.d.ts +10 -7
  100. package/dist/lib.cjs/types/connectors/metamask-connector/metamaskConnector.d.ts +35 -3
  101. package/dist/lib.cjs/types/connectors/utils.d.ts +2 -0
  102. package/dist/lib.cjs/types/connectors/wallet-connect-v2-connector/WalletConnectV2Provider.d.ts +0 -1
  103. package/dist/lib.cjs/types/connectors/wallet-connect-v2-connector/walletConnectV2Utils.d.ts +1 -5
  104. package/dist/lib.cjs/types/connectors/wallet-connect-v2-connector/wcSolanaWallet.d.ts +26 -0
  105. package/dist/lib.cjs/types/index.d.ts +1 -0
  106. package/dist/lib.cjs/types/noModal.d.ts +113 -10
  107. package/dist/lib.cjs/types/plugins/wallet-services-plugin/plugin.d.ts +1 -4
  108. package/dist/lib.cjs/types/providers/account-abstraction-provider/rpc/ethRpcMiddlewares.d.ts +4 -4
  109. package/dist/lib.cjs/types/providers/base-provider/baseProvider.d.ts +7 -0
  110. package/dist/lib.cjs/types/providers/base-provider/jrpcClient.d.ts +2 -5
  111. package/dist/lib.cjs/types/providers/base-provider/utils.d.ts +0 -1
  112. package/dist/lib.cjs/types/providers/ethereum-provider/index.d.ts +0 -1
  113. package/dist/lib.cjs/types/providers/ethereum-provider/rpc/ethRpcMiddlewares.d.ts +4 -4
  114. package/dist/lib.cjs/types/providers/ethereum-provider/rpc/index.d.ts +1 -1
  115. package/dist/lib.cjs/types/providers/ethereum-provider/rpc/jrpcClient.d.ts +2 -5
  116. package/dist/lib.cjs/types/providers/ethereum-provider/rpc/walletMiddleware.d.ts +3 -0
  117. package/dist/lib.cjs/types/providers/index.d.ts +0 -1
  118. package/dist/lib.cjs/types/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.d.ts +0 -1
  119. package/dist/lib.cjs/types/providers/xrpl-provider/rpc/JrpcClient.d.ts +3 -7
  120. package/dist/lib.cjs/types/providers/xrpl-provider/rpc/xrplRpcMiddlewares.d.ts +5 -12
  121. package/dist/lib.cjs/types/react/context/index.d.ts +4 -0
  122. package/dist/lib.cjs/types/react/context/useWalletServicesContextValue.d.ts +12 -0
  123. package/dist/lib.cjs/types/react/context/useWeb3AuthInnerContextValue.d.ts +26 -0
  124. package/dist/lib.cjs/types/react/hooks/index.d.ts +2 -1
  125. package/dist/lib.cjs/types/react/hooks/{useIdentityToken.d.ts → useAuthTokenInfo.d.ts} +4 -4
  126. package/dist/lib.cjs/types/react/hooks/useWallets.d.ts +8 -0
  127. package/dist/lib.cjs/types/react/hooks/useWeb3Auth.d.ts +1 -2
  128. package/dist/lib.cjs/types/react/hooks/useWeb3AuthConnect.d.ts +2 -2
  129. package/dist/lib.cjs/types/react/index.d.ts +1 -0
  130. package/dist/lib.cjs/types/react/solana/hooks/useSignAndSendTransaction.d.ts +7 -2
  131. package/dist/lib.cjs/types/react/solana/hooks/useSignTransaction.d.ts +8 -3
  132. package/dist/lib.cjs/types/react/solana/hooks/useSolanaWallet.d.ts +17 -4
  133. package/dist/lib.cjs/types/react/solana/index.d.ts +1 -0
  134. package/dist/lib.cjs/types/react/solana/provider.d.ts +26 -0
  135. package/dist/lib.cjs/types/vue/composables/index.d.ts +3 -1
  136. package/dist/lib.cjs/types/vue/composables/{useIdentityToken.d.ts → useAuthTokenInfo.d.ts} +3 -3
  137. package/dist/lib.cjs/types/vue/composables/useInjectedWeb3AuthInnerContext.d.ts +1 -0
  138. package/dist/lib.cjs/types/vue/composables/useWallets.d.ts +9 -0
  139. package/dist/lib.cjs/types/vue/composables/useWeb3Auth.d.ts +1 -2
  140. package/dist/lib.cjs/types/vue/composables/useWeb3AuthConnect.d.ts +2 -2
  141. package/dist/lib.cjs/types/vue/index.d.ts +2 -0
  142. package/dist/lib.cjs/types/vue/interfaces.d.ts +2 -2
  143. package/dist/lib.cjs/types/vue/solana/composables/index.d.ts +1 -0
  144. package/dist/lib.cjs/types/vue/solana/composables/useSignAndSendTransaction.d.ts +7 -2
  145. package/dist/lib.cjs/types/vue/solana/composables/useSignTransaction.d.ts +8 -3
  146. package/dist/lib.cjs/types/vue/solana/composables/useSolanaClient.d.ts +7 -0
  147. package/dist/lib.cjs/types/vue/solana/composables/useSolanaWallet.d.ts +17 -4
  148. package/dist/lib.cjs/types/vue/solana/constants.d.ts +3 -0
  149. package/dist/lib.cjs/types/vue/solana/index.d.ts +2 -0
  150. package/dist/lib.cjs/types/vue/solana/provider.d.ts +8 -0
  151. package/dist/lib.cjs/types/vue/useWalletServicesInnerContextValue.d.ts +13 -0
  152. package/dist/lib.cjs/types/vue/useWeb3AuthInnerContextValue.d.ts +26 -0
  153. package/dist/lib.cjs/types/x402/index.d.ts +43 -0
  154. package/dist/lib.cjs/types/x402/interfaces.d.ts +11 -0
  155. package/dist/lib.cjs/types/x402/react.d.ts +17 -0
  156. package/dist/lib.cjs/types/x402/vue.d.ts +18 -0
  157. package/dist/lib.cjs/vue/WalletServicesInnerProvider.js +9 -54
  158. package/dist/lib.cjs/vue/Web3AuthProvider.js +16 -177
  159. package/dist/lib.cjs/vue/composables/{useIdentityToken.js → useAuthTokenInfo.js} +10 -8
  160. package/dist/lib.cjs/vue/composables/useCheckout.js +4 -2
  161. package/dist/lib.cjs/vue/composables/useEnableMFA.js +4 -2
  162. package/dist/lib.cjs/vue/composables/useFunding.js +4 -2
  163. package/dist/lib.cjs/vue/composables/useInjectedWeb3AuthInnerContext.js +29 -0
  164. package/dist/lib.cjs/vue/composables/useManageMFA.js +4 -2
  165. package/dist/lib.cjs/vue/composables/useReceive.js +4 -2
  166. package/dist/lib.cjs/vue/composables/useSwap.js +4 -2
  167. package/dist/lib.cjs/vue/composables/useSwitchChain.js +4 -2
  168. package/dist/lib.cjs/vue/composables/useWalletConnectScanner.js +4 -2
  169. package/dist/lib.cjs/vue/composables/useWalletUI.js +4 -2
  170. package/dist/lib.cjs/vue/composables/useWallets.js +52 -0
  171. package/dist/lib.cjs/vue/composables/useWeb3Auth.js +1 -26
  172. package/dist/lib.cjs/vue/composables/useWeb3AuthConnect.js +6 -4
  173. package/dist/lib.cjs/vue/composables/useWeb3AuthDisconnect.js +4 -2
  174. package/dist/lib.cjs/vue/composables/useWeb3AuthInner.js +2 -20
  175. package/dist/lib.cjs/vue/composables/useWeb3AuthUser.js +4 -2
  176. package/dist/lib.cjs/vue/index.js +10 -2
  177. package/dist/lib.cjs/vue/solana/composables/useSignAndSendTransaction.js +6 -3
  178. package/dist/lib.cjs/vue/solana/composables/useSignMessage.js +6 -3
  179. package/dist/lib.cjs/vue/solana/composables/useSignTransaction.js +6 -3
  180. package/dist/lib.cjs/vue/solana/composables/useSolanaClient.js +14 -0
  181. package/dist/lib.cjs/vue/solana/composables/useSolanaWallet.js +60 -41
  182. package/dist/lib.cjs/vue/solana/constants.js +5 -0
  183. package/dist/lib.cjs/vue/solana/index.js +6 -0
  184. package/dist/lib.cjs/vue/solana/provider.js +110 -0
  185. package/dist/lib.cjs/vue/useWalletServicesInnerContextValue.js +75 -0
  186. package/dist/lib.cjs/vue/useWeb3AuthInnerContextValue.js +226 -0
  187. package/dist/lib.cjs/vue/wagmi/provider.js +28 -12
  188. package/dist/lib.cjs/x402/index.js +175 -0
  189. package/dist/lib.cjs/x402/interfaces.js +5 -0
  190. package/dist/lib.cjs/x402/react.js +64 -0
  191. package/dist/lib.cjs/x402/vue.js +58 -0
  192. package/dist/lib.esm/account-linking/index.js +1 -0
  193. package/dist/lib.esm/account-linking/react.js +74 -0
  194. package/dist/lib.esm/account-linking/rest.js +51 -0
  195. package/dist/lib.esm/account-linking/vue.js +78 -0
  196. package/dist/lib.esm/base/analytics.js +13 -1
  197. package/dist/lib.esm/base/connector/baseConnector.js +104 -2
  198. package/dist/lib.esm/base/connector/connectorStatus.js +2 -1
  199. package/dist/lib.esm/base/connector/constants.js +6 -2
  200. package/dist/lib.esm/base/connector/utils.js +1 -19
  201. package/dist/lib.esm/base/constants.js +4 -1
  202. package/dist/lib.esm/base/cookie.js +7 -20
  203. package/dist/lib.esm/base/errors/index.js +84 -13
  204. package/dist/lib.esm/base/utils.js +22 -7
  205. package/dist/lib.esm/base/wallet/index.js +2 -1
  206. package/dist/lib.esm/base/wallet/solana.js +81 -0
  207. package/dist/lib.esm/connectors/auth-connector/authConnector.js +527 -57
  208. package/dist/lib.esm/connectors/auth-connector/authSolanaWallet.js +175 -0
  209. package/dist/lib.esm/connectors/base-evm-connector/baseEvmConnector.js +55 -58
  210. package/dist/lib.esm/connectors/base-solana-connector/baseSolanaConnector.js +57 -66
  211. package/dist/lib.esm/connectors/coinbase-connector/coinbaseConnector.js +16 -13
  212. package/dist/lib.esm/connectors/injected-evm-connector/injectedEvmConnector.js +16 -13
  213. package/dist/lib.esm/connectors/injected-solana-connector/walletStandardConnector.js +22 -34
  214. package/dist/lib.esm/connectors/metamask-connector/metamaskConnector.js +366 -132
  215. package/dist/lib.esm/connectors/utils.js +9 -4
  216. package/dist/lib.esm/connectors/wallet-connect-v2-connector/WalletConnectV2Provider.js +12 -31
  217. package/dist/lib.esm/connectors/wallet-connect-v2-connector/config.js +1 -1
  218. package/dist/lib.esm/connectors/wallet-connect-v2-connector/walletConnectV2Connector.js +110 -73
  219. package/dist/lib.esm/connectors/wallet-connect-v2-connector/walletConnectV2Utils.js +21 -49
  220. package/dist/lib.esm/connectors/wallet-connect-v2-connector/wcSolanaWallet.js +130 -0
  221. package/dist/lib.esm/index.js +12 -19
  222. package/dist/lib.esm/noModal.js +975 -177
  223. package/dist/lib.esm/plugins/wallet-services-plugin/plugin.js +20 -39
  224. package/dist/lib.esm/providers/account-abstraction-provider/providers/AccountAbstractionProvider.js +9 -9
  225. package/dist/lib.esm/providers/account-abstraction-provider/providers/utils.js +3 -3
  226. package/dist/lib.esm/providers/account-abstraction-provider/rpc/ethRpcMiddlewares.js +48 -45
  227. package/dist/lib.esm/providers/base-provider/CommonJRPCProvider.js +2 -4
  228. package/dist/lib.esm/providers/base-provider/baseProvider.js +68 -38
  229. package/dist/lib.esm/providers/base-provider/commonPrivateKeyProvider.js +9 -12
  230. package/dist/lib.esm/providers/base-provider/index.js +1 -1
  231. package/dist/lib.esm/providers/base-provider/jrpcClient.js +20 -19
  232. package/dist/lib.esm/providers/base-provider/utils.js +1 -3
  233. package/dist/lib.esm/providers/ethereum-provider/rpc/ethRpcMiddlewares.js +23 -44
  234. package/dist/lib.esm/providers/ethereum-provider/rpc/jrpcClient.js +20 -19
  235. package/dist/lib.esm/providers/ethereum-provider/rpc/walletMiddleware.js +201 -0
  236. package/dist/lib.esm/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.js +6 -17
  237. package/dist/lib.esm/providers/xrpl-provider/providers/privateKeyProviders/xrplWalletUtils.js +2 -1
  238. package/dist/lib.esm/providers/xrpl-provider/rpc/JrpcClient.js +21 -25
  239. package/dist/lib.esm/providers/xrpl-provider/rpc/xrplRpcMiddlewares.js +48 -38
  240. package/dist/lib.esm/react/context/WalletServicesInnerContext.js +3 -57
  241. package/dist/lib.esm/react/context/Web3AuthInnerContext.js +7 -152
  242. package/dist/lib.esm/react/context/useWalletServicesContextValue.js +59 -0
  243. package/dist/lib.esm/react/context/useWeb3AuthInnerContextValue.js +203 -0
  244. package/dist/lib.esm/react/hooks/{useIdentityToken.js → useAuthTokenInfo.js} +6 -7
  245. package/dist/lib.esm/react/hooks/useWalletServicesPlugin.js +3 -10
  246. package/dist/lib.esm/react/hooks/useWallets.js +33 -0
  247. package/dist/lib.esm/react/hooks/useWeb3Auth.js +1 -22
  248. package/dist/lib.esm/react/hooks/useWeb3AuthConnect.js +2 -2
  249. package/dist/lib.esm/react/index.js +6 -1
  250. package/dist/lib.esm/react/solana/hooks/useSignAndSendTransaction.js +6 -4
  251. package/dist/lib.esm/react/solana/hooks/useSignMessage.js +4 -2
  252. package/dist/lib.esm/react/solana/hooks/useSignTransaction.js +6 -3
  253. package/dist/lib.esm/react/solana/hooks/useSolanaWallet.js +33 -28
  254. package/dist/lib.esm/react/solana/index.js +1 -0
  255. package/dist/lib.esm/react/solana/provider.js +153 -0
  256. package/dist/lib.esm/react/wagmi/provider.js +8 -8
  257. package/dist/lib.esm/vue/WalletServicesInnerProvider.js +4 -54
  258. package/dist/lib.esm/vue/Web3AuthProvider.js +7 -179
  259. package/dist/lib.esm/vue/composables/{useIdentityToken.js → useAuthTokenInfo.js} +6 -6
  260. package/dist/lib.esm/vue/composables/useCheckout.js +1 -1
  261. package/dist/lib.esm/vue/composables/useFunding.js +1 -1
  262. package/dist/lib.esm/vue/composables/useInjectedWeb3AuthInnerContext.js +11 -0
  263. package/dist/lib.esm/vue/composables/useReceive.js +1 -1
  264. package/dist/lib.esm/vue/composables/useSwap.js +1 -1
  265. package/dist/lib.esm/vue/composables/useWalletConnectScanner.js +1 -1
  266. package/dist/lib.esm/vue/composables/useWalletUI.js +1 -1
  267. package/dist/lib.esm/vue/composables/useWallets.js +35 -0
  268. package/dist/lib.esm/vue/composables/useWeb3Auth.js +1 -26
  269. package/dist/lib.esm/vue/composables/useWeb3AuthConnect.js +2 -2
  270. package/dist/lib.esm/vue/composables/useWeb3AuthInner.js +2 -6
  271. package/dist/lib.esm/vue/index.js +5 -1
  272. package/dist/lib.esm/vue/solana/composables/useSignAndSendTransaction.js +2 -1
  273. package/dist/lib.esm/vue/solana/composables/useSignMessage.js +2 -1
  274. package/dist/lib.esm/vue/solana/composables/useSignTransaction.js +3 -2
  275. package/dist/lib.esm/vue/solana/composables/useSolanaClient.js +12 -0
  276. package/dist/lib.esm/vue/solana/composables/useSolanaWallet.js +53 -35
  277. package/dist/lib.esm/vue/solana/constants.js +3 -0
  278. package/dist/lib.esm/vue/solana/index.js +3 -0
  279. package/dist/lib.esm/vue/solana/provider.js +99 -0
  280. package/dist/lib.esm/vue/useWalletServicesInnerContextValue.js +58 -0
  281. package/dist/lib.esm/vue/useWeb3AuthInnerContextValue.js +213 -0
  282. package/dist/lib.esm/vue/wagmi/provider.js +26 -12
  283. package/dist/lib.esm/x402/index.js +170 -0
  284. package/dist/lib.esm/x402/interfaces.js +3 -0
  285. package/dist/lib.esm/x402/react.js +59 -0
  286. package/dist/lib.esm/x402/vue.js +54 -0
  287. package/package.json +102 -53
  288. package/dist/lib.cjs/providers/ethereum-mpc-provider/index.js +0 -7
  289. package/dist/lib.cjs/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.js +0 -224
  290. package/dist/lib.cjs/providers/ethereum-mpc-provider/providers/signingProviders/signingUtils.js +0 -177
  291. package/dist/lib.cjs/providers/ethereum-mpc-provider/rpc/ethRpcMiddlewares.js +0 -21
  292. package/dist/lib.cjs/providers/ethereum-provider/providers/converter.js +0 -88
  293. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/constants.js +0 -27
  294. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/formatter.js +0 -383
  295. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/interfaces.js +0 -8
  296. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/utils.js +0 -93
  297. package/dist/lib.cjs/providers/ethereum-provider/providers/utils.js +0 -29
  298. package/dist/lib.cjs/providers/ethereum-provider/rpc/walletMidddleware.js +0 -251
  299. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.js +0 -65
  300. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/base/providerHandlers.js +0 -45
  301. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/utils.js +0 -16
  302. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/walletStandardProvider.js +0 -103
  303. package/dist/lib.cjs/providers/solana-provider/rpc/JrpcClient.js +0 -47
  304. package/dist/lib.cjs/providers/solana-provider/rpc/solanaRpcMiddlewares.js +0 -97
  305. package/dist/lib.cjs/providers/solana-provider/solanaWallet.js +0 -91
  306. package/dist/lib.cjs/types/connectors/injected-solana-connector/utils.d.ts +0 -3
  307. package/dist/lib.cjs/types/providers/ethereum-mpc-provider/index.d.ts +0 -1
  308. package/dist/lib.cjs/types/providers/ethereum-mpc-provider/providers/index.d.ts +0 -1
  309. package/dist/lib.cjs/types/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.d.ts +0 -74
  310. package/dist/lib.cjs/types/providers/ethereum-mpc-provider/providers/signingProviders/index.d.ts +0 -1
  311. package/dist/lib.cjs/types/providers/ethereum-mpc-provider/providers/signingProviders/signingUtils.d.ts +0 -12
  312. package/dist/lib.cjs/types/providers/ethereum-mpc-provider/rpc/ethRpcMiddlewares.d.ts +0 -3
  313. package/dist/lib.cjs/types/providers/ethereum-mpc-provider/rpc/interfaces.d.ts +0 -15
  314. package/dist/lib.cjs/types/providers/ethereum-provider/providers/converter.d.ts +0 -14
  315. package/dist/lib.cjs/types/providers/ethereum-provider/providers/index.d.ts +0 -1
  316. package/dist/lib.cjs/types/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/constants.d.ts +0 -16
  317. package/dist/lib.cjs/types/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/formatter.d.ts +0 -28
  318. package/dist/lib.cjs/types/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/index.d.ts +0 -4
  319. package/dist/lib.cjs/types/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/interfaces.d.ts +0 -46
  320. package/dist/lib.cjs/types/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/utils.d.ts +0 -11
  321. package/dist/lib.cjs/types/providers/ethereum-provider/providers/privateKeyProviders/index.d.ts +0 -1
  322. package/dist/lib.cjs/types/providers/ethereum-provider/providers/utils.d.ts +0 -5
  323. package/dist/lib.cjs/types/providers/ethereum-provider/rpc/walletMidddleware.d.ts +0 -3
  324. package/dist/lib.cjs/types/providers/solana-provider/index.d.ts +0 -4
  325. package/dist/lib.cjs/types/providers/solana-provider/interface.d.ts +0 -22
  326. package/dist/lib.cjs/types/providers/solana-provider/providers/index.d.ts +0 -1
  327. package/dist/lib.cjs/types/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.d.ts +0 -16
  328. package/dist/lib.cjs/types/providers/solana-provider/providers/injectedProviders/base/providerHandlers.d.ts +0 -3
  329. package/dist/lib.cjs/types/providers/solana-provider/providers/injectedProviders/index.d.ts +0 -2
  330. package/dist/lib.cjs/types/providers/solana-provider/providers/injectedProviders/utils.d.ts +0 -3
  331. package/dist/lib.cjs/types/providers/solana-provider/providers/injectedProviders/walletStandardProvider.d.ts +0 -9
  332. package/dist/lib.cjs/types/providers/solana-provider/rpc/JrpcClient.d.ts +0 -9
  333. package/dist/lib.cjs/types/providers/solana-provider/rpc/index.d.ts +0 -3
  334. package/dist/lib.cjs/types/providers/solana-provider/rpc/interfaces.d.ts +0 -27
  335. package/dist/lib.cjs/types/providers/solana-provider/rpc/solanaRpcMiddlewares.d.ts +0 -20
  336. package/dist/lib.cjs/types/providers/solana-provider/solanaWallet.d.ts +0 -29
  337. package/dist/lib.esm/providers/ethereum-mpc-provider/index.js +0 -1
  338. package/dist/lib.esm/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.js +0 -206
  339. package/dist/lib.esm/providers/ethereum-mpc-provider/providers/signingProviders/signingUtils.js +0 -163
  340. package/dist/lib.esm/providers/ethereum-mpc-provider/rpc/ethRpcMiddlewares.js +0 -20
  341. package/dist/lib.esm/providers/ethereum-provider/providers/converter.js +0 -85
  342. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/constants.js +0 -21
  343. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/formatter.js +0 -378
  344. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/interfaces.js +0 -8
  345. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/utils.js +0 -88
  346. package/dist/lib.esm/providers/ethereum-provider/providers/utils.js +0 -24
  347. package/dist/lib.esm/providers/ethereum-provider/rpc/walletMidddleware.js +0 -258
  348. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.js +0 -47
  349. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/base/providerHandlers.js +0 -43
  350. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/utils.js +0 -14
  351. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/walletStandardProvider.js +0 -91
  352. package/dist/lib.esm/providers/solana-provider/rpc/JrpcClient.js +0 -42
  353. package/dist/lib.esm/providers/solana-provider/rpc/solanaRpcMiddlewares.js +0 -89
  354. package/dist/lib.esm/providers/solana-provider/solanaWallet.js +0 -92
  355. package/dist/noModal.umd.min.js +0 -2
  356. package/dist/noModal.umd.min.js.LICENSE.txt +0 -46
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@web3auth/no-modal",
3
- "version": "10.16.0",
3
+ "version": "11.0.0-beta.1",
4
4
  "description": "Multi chain wallet aggregator for web3Auth",
5
5
  "keywords": [
6
6
  "web3Auth/no-modal",
@@ -13,18 +13,17 @@
13
13
  "sideEffects": false,
14
14
  "main": "dist/lib.cjs/index.js",
15
15
  "module": "dist/lib.esm/index.js",
16
- "unpkg": "dist/noModal.umd.min.js",
17
- "jsdelivr": "dist/noModal.umd.min.js",
16
+ "unpkg": "dist/lib.esm/index.js",
17
+ "jsdelivr": "dist/lib.esm/index.js",
18
18
  "types": "dist/lib.cjs/types/index.d.ts",
19
19
  "author": "Torus Labs",
20
20
  "homepage": "https://github.com/Web3Auth/Web3Auth/tree/master/packages/no-modal#readme",
21
21
  "license": "ISC",
22
22
  "scripts": {
23
- "test": "mocha --config ../../.mocharc.json test/**.ts",
24
- "test-debugger": "mocha --config ../../.mocharc.json --inspect-brk test/**.ts",
23
+ "test": "vitest run --config test/configs/browsers.config.mts --coverage",
25
24
  "dev": "torus-scripts start",
26
25
  "build": "torus-scripts build",
27
- "lint": "eslint --fix 'src/**/*.ts'",
26
+ "lint": "torus-scripts lint --fix",
28
27
  "prepack": "npm run build",
29
28
  "pre-commit": "lint-staged --cwd ."
30
29
  },
@@ -34,18 +33,31 @@
34
33
  "peerDependencies": {
35
34
  "@babel/runtime": "^7.x",
36
35
  "@coinbase/wallet-sdk": "^4.3.x",
36
+ "@solana/react-hooks": "^1.4.0",
37
+ "@x402/evm": "^2.7.0",
38
+ "@x402/fetch": "^2.7.0",
39
+ "@x402/svm": "^2.7.0",
37
40
  "react": ">=18",
38
- "viem": ">=2.29",
41
+ "viem": ">=2.45",
39
42
  "vue": "^3.x"
40
43
  },
41
44
  "peerDependenciesMeta": {
42
45
  "@coinbase/wallet-sdk": {
43
46
  "optional": true
44
47
  },
45
- "react": {
48
+ "@solana/react-hooks": {
49
+ "optional": true
50
+ },
51
+ "@x402/evm": {
46
52
  "optional": true
47
53
  },
48
- "viem": {
54
+ "@x402/fetch": {
55
+ "optional": true
56
+ },
57
+ "@x402/svm": {
58
+ "optional": true
59
+ },
60
+ "react": {
49
61
  "optional": true
50
62
  },
51
63
  "vue": {
@@ -53,55 +65,52 @@
53
65
  }
54
66
  },
55
67
  "dependencies": {
56
- "@ethereumjs/util": "^10.1.0",
57
- "@metamask/sdk": "^0.34.0",
58
- "@segment/analytics-next": "^1.81.1",
68
+ "@metamask/connect-evm": "^1.3.0",
69
+ "@metamask/connect-multichain": "^0.14.0",
70
+ "@metamask/connect-solana": "^1.1.0",
71
+ "@segment/analytics-next": "^1.83.0",
72
+ "@solana/client": "^1.7.0",
73
+ "@solana/kit": "^6.8.0",
59
74
  "@solana/wallet-standard-features": "^1.3.0",
60
- "@solana/web3.js": "^1.98.4",
61
- "@toruslabs/base-controllers": "^8.17.0",
62
- "@toruslabs/bs58": "^1.0.0",
63
- "@toruslabs/constants": "^15.0.0",
64
- "@toruslabs/eccrypto": "^6.2.0",
65
- "@toruslabs/ethereum-controllers": "^8.17.0",
66
- "@toruslabs/http-helpers": "^8.1.1",
67
- "@toruslabs/loglevel-sentry": "^8.1.0",
68
- "@toruslabs/secure-pub-sub": "3.0.2",
69
- "@toruslabs/tweetnacl-js": "^1.0.4",
75
+ "@toruslabs/base-controllers": "^9.5.0",
76
+ "@toruslabs/constants": "^16.1.1",
77
+ "@toruslabs/eccrypto": "^7.0.0",
78
+ "@toruslabs/ethereum-controllers": "^9.5.0",
79
+ "@toruslabs/http-helpers": "^9.0.0",
80
+ "@toruslabs/loglevel-sentry": "^9.0.0",
81
+ "@toruslabs/metadata-helpers": "^8.2.0",
82
+ "@toruslabs/secure-pub-sub": "4.3.0",
83
+ "@toruslabs/session-manager": "^5.6.0",
70
84
  "@wallet-standard/app": "^1.1.0",
71
85
  "@wallet-standard/base": "^1.1.0",
72
86
  "@wallet-standard/features": "^1.1.0",
73
- "@walletconnect/sign-client": "^2.23.3",
74
- "@walletconnect/types": "^2.23.3",
75
- "@walletconnect/utils": "^2.23.3",
76
- "@web3auth/auth": "^10.8.0",
77
- "@web3auth/ws-embed": "^5.5.0",
78
- "assert": "^2.1.0",
87
+ "@walletconnect/sign-client": "^2.23.9",
88
+ "@walletconnect/types": "^2.23.9",
89
+ "@walletconnect/utils": "^2.23.9",
90
+ "@web3auth/auth": "^11.8.0",
91
+ "@web3auth/ws-embed": "^6.0.0",
79
92
  "bignumber.js": "~9.3.1",
80
- "bn.js": "^5.2.2",
81
- "bowser": "^2.13.1",
82
93
  "deepmerge": "^4.3.1",
83
94
  "ethers": "^6.16.0",
84
- "json-rpc-random-id": "^1.0.1",
85
- "jsonschema": "^1.5.0",
86
95
  "jwt-decode": "^4.0.0",
87
96
  "loglevel": "^1.9.2",
88
97
  "mipd": "^0.0.7",
89
- "permissionless": "^0.3.2",
90
98
  "ripple-keypairs": "^1.3.1",
91
- "ts-custom-error": "^3.3.1",
92
99
  "xrpl": "^2.14.0"
93
100
  },
94
101
  "devDependencies": {
95
102
  "@coinbase/wallet-sdk": "^4.3.7",
96
- "@types/elliptic": "6.4.18",
97
- "@types/json-rpc-random-id": "^1.0.3",
98
- "@types/react": "^19.2.8",
99
- "@wagmi/core": "^2.20.1",
100
- "@wagmi/vue": "^0.2.2",
101
- "react": "^19.2.3",
102
- "viem": "^2.44.2",
103
+ "@solana/react-hooks": "^1.4.1",
104
+ "@types/react": "^19.2.14",
105
+ "@wagmi/core": "^3.4.7",
106
+ "@wagmi/vue": "^0.5.9",
107
+ "@x402/evm": "^2.11.0",
108
+ "@x402/fetch": "^2.11.0",
109
+ "@x402/svm": "^2.11.0",
110
+ "react": "^19.2.5",
111
+ "viem": "^2.48.4",
103
112
  "vue": "^3.x",
104
- "wagmi": "^2.16.6"
113
+ "wagmi": "^3.6.8"
105
114
  },
106
115
  "exports": {
107
116
  ".": {
@@ -109,6 +118,36 @@
109
118
  "require": "./dist/lib.cjs/index.js",
110
119
  "types": "./dist/lib.cjs/types/index.d.ts"
111
120
  },
121
+ "./account-linking": {
122
+ "import": "./dist/lib.esm/account-linking/index.js",
123
+ "require": "./dist/lib.cjs/account-linking/index.js",
124
+ "types": "./dist/lib.cjs/types/account-linking/index.d.ts"
125
+ },
126
+ "./account-linking/react": {
127
+ "import": "./dist/lib.esm/account-linking/react.js",
128
+ "require": "./dist/lib.cjs/account-linking/react.js",
129
+ "types": "./dist/lib.cjs/types/account-linking/react.d.ts"
130
+ },
131
+ "./account-linking/vue": {
132
+ "import": "./dist/lib.esm/account-linking/vue.js",
133
+ "require": "./dist/lib.cjs/account-linking/vue.js",
134
+ "types": "./dist/lib.cjs/types/account-linking/vue.d.ts"
135
+ },
136
+ "./x402": {
137
+ "import": "./dist/lib.esm/x402/index.js",
138
+ "require": "./dist/lib.cjs/x402/index.js",
139
+ "types": "./dist/lib.cjs/types/x402/index.d.ts"
140
+ },
141
+ "./x402/react": {
142
+ "import": "./dist/lib.esm/x402/react.js",
143
+ "require": "./dist/lib.cjs/x402/react.js",
144
+ "types": "./dist/lib.cjs/types/x402/react.d.ts"
145
+ },
146
+ "./x402/vue": {
147
+ "import": "./dist/lib.esm/x402/vue.js",
148
+ "require": "./dist/lib.cjs/x402/vue.js",
149
+ "types": "./dist/lib.cjs/types/x402/vue.d.ts"
150
+ },
112
151
  "./react": {
113
152
  "import": "./dist/lib.esm/react/index.js",
114
153
  "require": "./dist/lib.cjs/react/index.js",
@@ -148,15 +187,28 @@
148
187
  "import": "./dist/lib.esm/providers/xrpl-provider/index.js",
149
188
  "require": "./dist/lib.cjs/providers/xrpl-provider/index.js",
150
189
  "types": "./dist/lib.cjs/types/providers/xrpl-provider/index.d.ts"
151
- },
152
- "./providers/ethereum-mpc-provider": {
153
- "import": "./dist/lib.esm/providers/ethereum-mpc-provider/index.js",
154
- "require": "./dist/lib.cjs/providers/ethereum-mpc-provider/index.js",
155
- "types": "./dist/lib.cjs/types/providers/ethereum-mpc-provider/index.d.ts"
156
190
  }
157
191
  },
158
192
  "typesVersions": {
159
193
  "*": {
194
+ "account-linking": [
195
+ "./dist/lib.cjs/types/account-linking/index.d.ts"
196
+ ],
197
+ "account-linking/react": [
198
+ "./dist/lib.cjs/types/account-linking/react.d.ts"
199
+ ],
200
+ "account-linking/vue": [
201
+ "./dist/lib.cjs/types/account-linking/vue.d.ts"
202
+ ],
203
+ "x402": [
204
+ "./dist/lib.cjs/types/x402/index.d.ts"
205
+ ],
206
+ "x402/react": [
207
+ "./dist/lib.cjs/types/x402/react.d.ts"
208
+ ],
209
+ "x402/vue": [
210
+ "./dist/lib.cjs/types/x402/vue.d.ts"
211
+ ],
160
212
  "react": [
161
213
  "./dist/lib.cjs/types/react/index.d.ts"
162
214
  ],
@@ -177,9 +229,6 @@
177
229
  ],
178
230
  "providers/xrpl-provider": [
179
231
  "./dist/lib.cjs/types/providers/xrpl-provider/index.d.ts"
180
- ],
181
- "providers/ethereum-mpc-provider": [
182
- "./dist/lib.cjs/types/providers/ethereum-mpc-provider/index.d.ts"
183
232
  ]
184
233
  }
185
234
  },
@@ -200,8 +249,8 @@
200
249
  "url": "https://github.com/Web3Auth/Web3Auth/issues"
201
250
  },
202
251
  "engines": {
203
- "node": ">=20.x",
204
- "npm": ">=9.x"
252
+ "node": ">=22.x",
253
+ "npm": ">=10.x"
205
254
  },
206
- "gitHead": "3205d62cf6cff0d2c2bef09313f5e943657f0f36"
255
+ "gitHead": "a15a4f552ee844c7b743f48f4b725c52b6b7316d"
207
256
  }
@@ -1,7 +0,0 @@
1
- 'use strict';
2
-
3
- var EthereumSigningProvider = require('./providers/signingProviders/EthereumSigningProvider.js');
4
-
5
-
6
-
7
- exports.EthereumSigningProvider = EthereumSigningProvider.EthereumSigningProvider;
@@ -1,224 +0,0 @@
1
- 'use strict';
2
-
3
- var _objectSpread = require('@babel/runtime/helpers/objectSpread2');
4
- var _defineProperty = require('@babel/runtime/helpers/defineProperty');
5
- var util = require('@ethereumjs/util');
6
- var auth = require('@web3auth/auth');
7
- require('@segment/analytics-next');
8
- require('../../../../base/loglevel.js');
9
- var baseControllers = require('@toruslabs/base-controllers');
10
- var index = require('../../../../base/errors/index.js');
11
- require('../../../../base/wallet/index.js');
12
- require('../../../../base/connector/connectorStatus.js');
13
- require('../../../../base/connector/constants.js');
14
- require('jwt-decode');
15
- require('../../../../base/plugin/errors.js');
16
- require('../../../../base/plugin/IPlugin.js');
17
- require('@toruslabs/constants');
18
- require('@toruslabs/http-helpers');
19
- var baseProvider = require('../../../base-provider/baseProvider.js');
20
- require('../../../base-provider/CommonJRPCProvider.js');
21
- require('../../../base-provider/commonPrivateKeyProvider.js');
22
- require('../../../base-provider/utils.js');
23
- var formatter = require('../../../ethereum-provider/providers/privateKeyProviders/TransactionFormatter/formatter.js');
24
- require('../../../ethereum-provider/providers/privateKeyProviders/TransactionFormatter/interfaces.js');
25
- require('../../../ethereum-provider/providers/converter.js');
26
- var ethRpcMiddlewares = require('../../../ethereum-provider/rpc/ethRpcMiddlewares.js');
27
- var jrpcClient = require('../../../ethereum-provider/rpc/jrpcClient.js');
28
- require('viem');
29
- var ethRpcMiddlewares$1 = require('../../rpc/ethRpcMiddlewares.js');
30
- var signingUtils = require('./signingUtils.js');
31
-
32
- var _EthereumSigningProvider;
33
- class EthereumSigningProvider extends baseProvider.BaseProvider {
34
- constructor({
35
- config,
36
- state
37
- }) {
38
- super({
39
- config: {
40
- chain: _objectSpread(_objectSpread({}, config.chain), {}, {
41
- chainNamespace: baseControllers.CHAIN_NAMESPACES.EIP155 // TODO: is this needed ?
42
- }),
43
- chains: config.chains
44
- },
45
- state
46
- });
47
- _defineProperty(this, "PROVIDER_CHAIN_NAMESPACE", baseControllers.CHAIN_NAMESPACES.EIP155);
48
- }
49
- async enable() {
50
- if (!this.state.signMethods) throw auth.providerErrors.custom({
51
- message: "signMethods are not found in state, plz pass it in constructor state param",
52
- code: 4902
53
- });
54
- await this.setupProvider(this.state.signMethods, this.chainId);
55
- return this._providerEngineProxy.request({
56
- method: "eth_accounts"
57
- });
58
- }
59
- async setupProvider(params, chainId) {
60
- const {
61
- sign,
62
- getPublic
63
- } = params;
64
- const chain = this.getChain(chainId);
65
- const {
66
- chainNamespace
67
- } = chain;
68
- if (chainNamespace !== this.PROVIDER_CHAIN_NAMESPACE) throw index.WalletInitializationError.incompatibleChainNameSpace("Invalid chain namespace");
69
- const txFormatter = new formatter.TransactionFormatter({
70
- getProviderEngineProxy: this.getProviderEngineProxy.bind(this)
71
- });
72
- const providerHandlers = signingUtils.getProviderHandlers({
73
- txFormatter,
74
- sign,
75
- getPublic,
76
- getProviderEngineProxy: this.getProviderEngineProxy.bind(this)
77
- });
78
- const ethMiddleware = ethRpcMiddlewares.createEthMiddleware(providerHandlers);
79
- const chainSwitchMiddleware = this.getChainSwitchMiddleware();
80
- const engine = new auth.JRPCEngine();
81
- // Not a partial anymore because of checks in ctor
82
- const {
83
- networkMiddleware
84
- } = jrpcClient.createEthJsonRpcClient(chain);
85
- engine.push(ethMiddleware);
86
- engine.push(chainSwitchMiddleware);
87
- engine.push(this.getAccountMiddleware());
88
- engine.push(networkMiddleware);
89
- const provider = auth.providerFromEngine(engine);
90
- this.updateProviderEngineProxy(provider);
91
- await txFormatter.init();
92
- await this.lookupNetwork(params, chainId);
93
- this.state.signMethods = {
94
- sign,
95
- getPublic
96
- };
97
- this.emit("chainChanged", chainId);
98
- this.emit("connect", {
99
- chainId
100
- });
101
- this.update({
102
- chainId
103
- });
104
- }
105
- async updateAccount(params) {
106
- if (!this._providerEngineProxy) throw auth.providerErrors.custom({
107
- message: "Provider is not initialized",
108
- code: 4902
109
- });
110
- const currentSignMethods = this.state.signMethods;
111
- if (!currentSignMethods) {
112
- throw auth.providerErrors.custom({
113
- message: "signing methods are unavailable ",
114
- code: 4092
115
- });
116
- }
117
- const currentPubKey = (await currentSignMethods.getPublic()).toString("hex");
118
- const updatePubKey = (await params.signMethods.getPublic()).toString("hex");
119
- if (currentPubKey !== updatePubKey) {
120
- await this.setupProvider(params.signMethods, this.chainId);
121
- const accounts = await this._providerEngineProxy.request({
122
- method: "eth_accounts"
123
- });
124
- this.emit("accountsChanged", accounts);
125
- }
126
- }
127
- async switchChain(params) {
128
- if (!this._providerEngineProxy) throw auth.providerErrors.custom({
129
- message: "Provider is not initialized",
130
- code: 4902
131
- });
132
- if (!this.state.signMethods) {
133
- throw auth.providerErrors.custom({
134
- message: "sign methods are undefined",
135
- code: 4902
136
- });
137
- }
138
- if (params.chainId === this.chainId) {
139
- return;
140
- }
141
- this.update({
142
- chainId: "loading"
143
- });
144
- await this.setupProvider(this.state.signMethods, params.chainId);
145
- }
146
- async addChain(chainConfig) {
147
- if (!this._providerEngineProxy) throw auth.providerErrors.custom({
148
- message: "Provider is not initialized",
149
- code: 4902
150
- });
151
- if (!this.state.signMethods) {
152
- throw auth.providerErrors.custom({
153
- message: "sign methods are undefined",
154
- code: 4902
155
- });
156
- }
157
- // find existing chain config with the same chainId
158
- const existingChain = this.config.chains.find(chain => chain.chainId === chainConfig.chainId);
159
- if (existingChain) {
160
- return;
161
- }
162
- // add the chain config to the config
163
- this.config.chains.push({
164
- chainId: chainConfig.chainId,
165
- displayName: chainConfig.chainName,
166
- rpcTarget: chainConfig.rpcUrls[0],
167
- chainNamespace: baseControllers.CHAIN_NAMESPACES.EIP155,
168
- blockExplorerUrl: chainConfig.blockExplorerUrls[0],
169
- logo: chainConfig.iconUrls[0],
170
- tickerName: chainConfig.nativeCurrency.name,
171
- ticker: chainConfig.nativeCurrency.symbol,
172
- decimals: chainConfig.nativeCurrency.decimals
173
- });
174
- }
175
- async lookupNetwork(_, chainId) {
176
- if (!this._providerEngineProxy) throw auth.providerErrors.custom({
177
- message: "Provider is not initialized",
178
- code: 4902
179
- });
180
- if (!chainId) throw auth.rpcErrors.invalidParams("chainId is required while lookupNetwork");
181
- const network = await this._providerEngineProxy.request({
182
- method: "net_version",
183
- params: []
184
- });
185
- const finalNetwork = util.isHexString(network) ? parseInt(network, 16) : parseInt(network, 10);
186
- if (parseInt(chainId, 16) !== finalNetwork) throw auth.providerErrors.chainDisconnected(`Invalid network, net_version is: ${network}`);
187
- return network;
188
- }
189
- getChainSwitchMiddleware() {
190
- const chainSwitchHandlers = {
191
- switchChain: async params => {
192
- const {
193
- chainId
194
- } = params;
195
- await this.switchChain({
196
- chainId
197
- });
198
- },
199
- addChain: async params => {
200
- await this.addChain(params);
201
- }
202
- };
203
- const chainSwitchMiddleware = ethRpcMiddlewares.createEthChainSwitchMiddleware(chainSwitchHandlers);
204
- return chainSwitchMiddleware;
205
- }
206
- getAccountMiddleware() {
207
- const accountHandlers = {
208
- };
209
- return ethRpcMiddlewares$1.createEthAccountMiddleware(accountHandlers);
210
- }
211
- }
212
- _EthereumSigningProvider = EthereumSigningProvider;
213
- _defineProperty(EthereumSigningProvider, "getProviderInstance", async params => {
214
- const providerFactory = new _EthereumSigningProvider({
215
- config: {
216
- chain: params.chain,
217
- chains: params.chains
218
- }
219
- });
220
- await providerFactory.setupProvider(params.signMethods, params.chain.chainId);
221
- return providerFactory;
222
- });
223
-
224
- exports.EthereumSigningProvider = EthereumSigningProvider;
@@ -1,177 +0,0 @@
1
- 'use strict';
2
-
3
- var _objectSpread = require('@babel/runtime/helpers/objectSpread2');
4
- var util = require('@ethereumjs/util');
5
- var baseControllers = require('@toruslabs/base-controllers');
6
- var auth = require('@web3auth/auth');
7
- var ethers = require('ethers');
8
- var viem = require('viem');
9
- require('@babel/runtime/helpers/defineProperty');
10
- require('@segment/analytics-next');
11
- var loglevel = require('../../../../base/loglevel.js');
12
- require('../../../../base/errors/index.js');
13
- require('../../../../base/wallet/index.js');
14
- require('../../../../base/connector/connectorStatus.js');
15
- require('../../../../base/connector/constants.js');
16
- require('jwt-decode');
17
- require('../../../../base/plugin/errors.js');
18
- require('../../../../base/plugin/IPlugin.js');
19
- require('@toruslabs/constants');
20
- require('@toruslabs/http-helpers');
21
- require('bignumber.js');
22
- require('../../../ethereum-provider/providers/converter.js');
23
- require('bn.js');
24
- var utils = require('../../../ethereum-provider/providers/privateKeyProviders/TransactionFormatter/utils.js');
25
- var interfaces = require('../../../ethereum-provider/providers/privateKeyProviders/TransactionFormatter/interfaces.js');
26
-
27
- async function signTx(txParams, sign, txFormatter) {
28
- const {
29
- Transaction
30
- } = await import('ethers');
31
- const finalTxParams = await txFormatter.formatTransaction(txParams);
32
- const ethTx = Transaction.from(_objectSpread(_objectSpread({}, finalTxParams), {}, {
33
- from: undefined // from is already calculated inside Transaction.from and is not allowed to be passed in
34
- }));
35
- const msgHash = util.stripHexPrefix(ethTx.unsignedHash);
36
- const vrs = await sign(Buffer.from(msgHash, "hex"));
37
- let {
38
- v
39
- } = vrs;
40
- const {
41
- r,
42
- s
43
- } = vrs;
44
- // mpc-core-kit workaround (revert back to 0/1)
45
- if (v > 1) {
46
- v = v - 27;
47
- }
48
- // addSignature will handle the v value
49
- const tx = ethTx;
50
- tx.signature = ethers.Signature.from({
51
- v,
52
- r: `0x${r.toString("hex")}`,
53
- s: `0x${s.toString("hex")}`
54
- });
55
- return tx.serialized;
56
- }
57
- async function signMessage(sign, data) {
58
- const message = util.stripHexPrefix(data);
59
- const msgSig = await sign(Buffer.from(message, "hex"));
60
- let modifiedV = msgSig.v;
61
- if (modifiedV <= 1) {
62
- modifiedV = modifiedV + 27;
63
- }
64
- const rawMsgSig = baseControllers.concatSig(Buffer.from(util.intToBytes(modifiedV)), msgSig.r, msgSig.s);
65
- return rawMsgSig;
66
- }
67
- async function personalSign(sign, data) {
68
- if (data === null || data === undefined) {
69
- throw new Error("Missing data parameter");
70
- }
71
- // we need to check if the data is hex or not
72
- // For historical reasons, you must submit the message to sign in hex-encoded UTF-8.
73
- // https://docs.metamask.io/wallet/how-to/sign-data/#use-personal_sign
74
- const message = util.isHexString(data) ? Buffer.from(util.stripHexPrefix(data), "hex") : Buffer.from(data);
75
- const msgHash = ethers.hashMessage(message);
76
- const prefix = Buffer.from(`\u0019Ethereum Signed Message:\n${message.length}`, "utf-8");
77
- const sig = await sign(Buffer.from(msgHash.slice(2), "hex"), Buffer.concat([prefix, message]));
78
- let modifiedV = sig.v;
79
- if (modifiedV <= 1) {
80
- modifiedV = modifiedV + 27;
81
- }
82
- const serialized = baseControllers.concatSig(Buffer.from(util.toBytes(modifiedV)), sig.r, sig.s);
83
- return serialized;
84
- }
85
- function validateVersion(version, allowedVersions) {
86
- if (!Object.keys(interfaces.SignTypedDataVersion).includes(version)) {
87
- throw new Error(`Invalid version: '${version}'`);
88
- }
89
- }
90
- async function signTypedData(sign, data, version) {
91
- validateVersion(version); // Note: this is intentional;
92
- if (data === null || data === undefined) {
93
- throw new Error("Missing data parameter");
94
- }
95
- const message = typeof data === "string" ? JSON.parse(data) : data;
96
- viem.validateTypedData(message);
97
- const {
98
- v,
99
- r,
100
- s
101
- } = await sign(Buffer.from(viem.hexToBytes(viem.hashTypedData(message))));
102
- let modifiedV = v;
103
- if (modifiedV <= 1) {
104
- modifiedV = modifiedV + 27;
105
- }
106
- return baseControllers.concatSig(Buffer.from(util.toBytes(modifiedV)), r, s);
107
- }
108
- function getProviderHandlers({
109
- txFormatter,
110
- sign,
111
- getPublic,
112
- getProviderEngineProxy
113
- }) {
114
- return {
115
- getAccounts: async _ => {
116
- const pubKey = await getPublic();
117
- return [`0x${Buffer.from(util.publicToAddress(pubKey)).toString("hex")}`];
118
- },
119
- getPrivateKey: async _ => {
120
- throw auth.providerErrors.custom({
121
- message: "MPC Provider cannot return private key",
122
- code: 4902
123
- });
124
- },
125
- getPublicKey: async _ => {
126
- const pubKey = await getPublic();
127
- return `0x${pubKey.toString("hex")}`;
128
- },
129
- processTransaction: async (txParams, _) => {
130
- const providerEngineProxy = getProviderEngineProxy();
131
- if (!providerEngineProxy) throw auth.providerErrors.custom({
132
- message: "Provider is not initialized",
133
- code: 4902
134
- });
135
- const serializedTxn = await signTx(txParams, sign, txFormatter);
136
- const txHash = await providerEngineProxy.request({
137
- method: "eth_sendRawTransaction",
138
- params: [serializedTxn]
139
- });
140
- return txHash;
141
- },
142
- processSignTransaction: async (txParams, _) => {
143
- const providerEngineProxy = getProviderEngineProxy();
144
- if (!providerEngineProxy) throw auth.providerErrors.custom({
145
- message: "Provider is not initialized",
146
- code: 4902
147
- });
148
- const serializedTxn = await signTx(txParams, sign, txFormatter);
149
- return serializedTxn;
150
- },
151
- processEthSignMessage: async (msgParams, _) => {
152
- const rawMessageSig = signMessage(sign, msgParams.data);
153
- return rawMessageSig;
154
- },
155
- processPersonalMessage: async (msgParams, _) => {
156
- const sig = personalSign(sign, msgParams.data);
157
- return sig;
158
- },
159
- processTypedMessageV4: async (msgParams, _) => {
160
- loglevel.log.debug("processTypedMessageV4", msgParams);
161
- const providerEngineProxy = getProviderEngineProxy();
162
- if (!providerEngineProxy) throw auth.providerErrors.custom({
163
- message: "Provider is not initialized",
164
- code: 4902
165
- });
166
- const chainId = await providerEngineProxy.request({
167
- method: "eth_chainId"
168
- });
169
- await utils.validateTypedSignMessageDataV4(msgParams, chainId);
170
- const data = typeof msgParams.data === "string" ? JSON.parse(msgParams.data) : msgParams.data;
171
- const sig = signTypedData(sign, data, interfaces.SignTypedDataVersion.V4);
172
- return sig;
173
- }
174
- };
175
- }
176
-
177
- exports.getProviderHandlers = getProviderHandlers;
@@ -1,21 +0,0 @@
1
- 'use strict';
2
-
3
- var auth = require('@web3auth/auth');
4
-
5
- // #region account middlewares
6
- function createEthAccountMiddleware({
7
- updatePrivatekey
8
- }) {
9
- async function updateAccount(req, res) {
10
- var _req$params;
11
- const accountParams = (_req$params = req.params) !== null && _req$params !== void 0 && _req$params.length ? req.params[0] : undefined;
12
- if (!(accountParams !== null && accountParams !== void 0 && accountParams.privateKey)) throw auth.rpcErrors.invalidParams("Missing privateKey");
13
- res.result = await updatePrivatekey(accountParams);
14
- }
15
- return auth.createScaffoldMiddleware({
16
- wallet_updateAccount: auth.createAsyncMiddleware(updateAccount)
17
- });
18
- }
19
- // #endregion account middlewares
20
-
21
- exports.createEthAccountMiddleware = createEthAccountMiddleware;