@web3auth/no-modal 10.15.0 → 11.0.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (321) hide show
  1. package/dist/lib.cjs/base/connector/baseConnector.js +104 -2
  2. package/dist/lib.cjs/base/connector/connectorStatus.js +2 -0
  3. package/dist/lib.cjs/base/connector/constants.js +4 -2
  4. package/dist/lib.cjs/base/connector/utils.js +0 -21
  5. package/dist/lib.cjs/base/constants.js +4 -0
  6. package/dist/lib.cjs/base/cookie.js +6 -20
  7. package/dist/lib.cjs/base/errors/index.js +36 -12
  8. package/dist/lib.cjs/base/utils.js +10 -11
  9. package/dist/lib.cjs/base/wallet/index.js +7 -0
  10. package/dist/lib.cjs/base/wallet/solana.js +83 -0
  11. package/dist/lib.cjs/connectors/auth-connector/authConnector.js +145 -49
  12. package/dist/lib.cjs/connectors/auth-connector/authSolanaWallet.js +187 -0
  13. package/dist/lib.cjs/connectors/base-evm-connector/baseEvmConnector.js +18 -40
  14. package/dist/lib.cjs/connectors/base-solana-connector/baseSolanaConnector.js +30 -56
  15. package/dist/lib.cjs/connectors/coinbase-connector/coinbaseConnector.js +19 -14
  16. package/dist/lib.cjs/connectors/injected-evm-connector/injectedEvmConnector.js +18 -13
  17. package/dist/lib.cjs/connectors/injected-solana-connector/walletStandardConnector.js +24 -36
  18. package/dist/lib.cjs/connectors/metamask-connector/metamaskConnector.js +321 -133
  19. package/dist/lib.cjs/connectors/utils.js +8 -2
  20. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/WalletConnectV2Provider.js +12 -38
  21. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/config.js +4 -3
  22. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/walletConnectV2Connector.js +73 -63
  23. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/walletConnectV2Utils.js +24 -51
  24. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/wcSolanaWallet.js +144 -0
  25. package/dist/lib.cjs/index.js +36 -71
  26. package/dist/lib.cjs/noModal.js +223 -133
  27. package/dist/lib.cjs/plugins/wallet-services-plugin/plugin.js +23 -39
  28. package/dist/lib.cjs/providers/account-abstraction-provider/providers/AccountAbstractionProvider.js +12 -10
  29. package/dist/lib.cjs/providers/account-abstraction-provider/providers/utils.js +8 -6
  30. package/dist/lib.cjs/providers/account-abstraction-provider/rpc/ethRpcMiddlewares.js +47 -44
  31. package/dist/lib.cjs/providers/base-provider/CommonJRPCProvider.js +1 -3
  32. package/dist/lib.cjs/providers/base-provider/baseProvider.js +4 -2
  33. package/dist/lib.cjs/providers/base-provider/commonPrivateKeyProvider.js +8 -11
  34. package/dist/lib.cjs/providers/base-provider/index.js +0 -1
  35. package/dist/lib.cjs/providers/base-provider/jrpcClient.js +18 -19
  36. package/dist/lib.cjs/providers/base-provider/utils.js +0 -3
  37. package/dist/lib.cjs/providers/ethereum-provider/rpc/ethRpcMiddlewares.js +22 -43
  38. package/dist/lib.cjs/providers/ethereum-provider/rpc/jrpcClient.js +18 -19
  39. package/dist/lib.cjs/providers/ethereum-provider/rpc/walletMiddleware.js +200 -0
  40. package/dist/lib.cjs/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.js +9 -18
  41. package/dist/lib.cjs/providers/xrpl-provider/providers/privateKeyProviders/xrplWalletUtils.js +2 -1
  42. package/dist/lib.cjs/providers/xrpl-provider/rpc/JrpcClient.js +19 -26
  43. package/dist/lib.cjs/providers/xrpl-provider/rpc/xrplRpcMiddlewares.js +46 -37
  44. package/dist/lib.cjs/react/context/WalletServicesInnerContext.js +2 -69
  45. package/dist/lib.cjs/react/context/Web3AuthInnerContext.js +6 -161
  46. package/dist/lib.cjs/react/context/useWalletServicesContextValue.js +76 -0
  47. package/dist/lib.cjs/react/context/useWeb3AuthInnerContextValue.js +202 -0
  48. package/dist/lib.cjs/react/hooks/{useIdentityToken.js → useAuthTokenInfo.js} +6 -7
  49. package/dist/lib.cjs/react/hooks/useCheckout.js +4 -2
  50. package/dist/lib.cjs/react/hooks/useFunding.js +4 -2
  51. package/dist/lib.cjs/react/hooks/useReceive.js +4 -2
  52. package/dist/lib.cjs/react/hooks/useSwap.js +4 -2
  53. package/dist/lib.cjs/react/hooks/useWalletConnectScanner.js +4 -2
  54. package/dist/lib.cjs/react/hooks/useWalletServicesPlugin.js +3 -10
  55. package/dist/lib.cjs/react/hooks/useWalletUI.js +4 -2
  56. package/dist/lib.cjs/react/hooks/useWeb3Auth.js +1 -22
  57. package/dist/lib.cjs/react/hooks/useWeb3AuthInner.js +4 -2
  58. package/dist/lib.cjs/react/index.js +10 -2
  59. package/dist/lib.cjs/react/solana/hooks/useSignAndSendTransaction.js +22 -4
  60. package/dist/lib.cjs/react/solana/hooks/useSignMessage.js +20 -2
  61. package/dist/lib.cjs/react/solana/hooks/useSignTransaction.js +22 -3
  62. package/dist/lib.cjs/react/solana/hooks/useSolanaWallet.js +34 -51
  63. package/dist/lib.cjs/react/solana/index.js +2 -0
  64. package/dist/lib.cjs/react/solana/provider.js +167 -0
  65. package/dist/lib.cjs/react/wagmi/provider.js +10 -8
  66. package/dist/lib.cjs/types/base/connector/baseConnector.d.ts +21 -5
  67. package/dist/lib.cjs/types/base/connector/connectorStatus.d.ts +1 -0
  68. package/dist/lib.cjs/types/base/connector/constants.d.ts +3 -0
  69. package/dist/lib.cjs/types/base/connector/interfaces.d.ts +23 -12
  70. package/dist/lib.cjs/types/base/connector/utils.d.ts +0 -3
  71. package/dist/lib.cjs/types/base/constants.d.ts +1 -0
  72. package/dist/lib.cjs/types/base/cookie.d.ts +0 -7
  73. package/dist/lib.cjs/types/base/core/IWeb3Auth.d.ts +24 -12
  74. package/dist/lib.cjs/types/base/errors/index.d.ts +2 -3
  75. package/dist/lib.cjs/types/base/hooks/index.d.ts +2 -2
  76. package/dist/lib.cjs/types/base/interfaces.d.ts +5 -1
  77. package/dist/lib.cjs/types/base/utils.d.ts +2 -1
  78. package/dist/lib.cjs/types/base/wallet/index.d.ts +3 -0
  79. package/dist/lib.cjs/types/base/wallet/solana.d.ts +19 -0
  80. package/dist/lib.cjs/types/connectors/auth-connector/authConnector.d.ts +11 -6
  81. package/dist/lib.cjs/types/connectors/auth-connector/authSolanaWallet.d.ts +35 -0
  82. package/dist/lib.cjs/types/connectors/base-evm-connector/baseEvmConnector.d.ts +2 -2
  83. package/dist/lib.cjs/types/connectors/base-solana-connector/baseSolanaConnector.d.ts +2 -2
  84. package/dist/lib.cjs/types/connectors/injected-evm-connector/injectedEvmConnector.d.ts +2 -2
  85. package/dist/lib.cjs/types/connectors/injected-solana-connector/walletStandardConnector.d.ts +10 -7
  86. package/dist/lib.cjs/types/connectors/metamask-connector/metamaskConnector.d.ts +35 -3
  87. package/dist/lib.cjs/types/connectors/utils.d.ts +2 -0
  88. package/dist/lib.cjs/types/connectors/wallet-connect-v2-connector/WalletConnectV2Provider.d.ts +0 -1
  89. package/dist/lib.cjs/types/connectors/wallet-connect-v2-connector/walletConnectV2Utils.d.ts +1 -5
  90. package/dist/lib.cjs/types/connectors/wallet-connect-v2-connector/wcSolanaWallet.d.ts +26 -0
  91. package/dist/lib.cjs/types/noModal.d.ts +12 -8
  92. package/dist/lib.cjs/types/plugins/wallet-services-plugin/plugin.d.ts +1 -4
  93. package/dist/lib.cjs/types/providers/account-abstraction-provider/rpc/ethRpcMiddlewares.d.ts +4 -4
  94. package/dist/lib.cjs/types/providers/base-provider/jrpcClient.d.ts +2 -5
  95. package/dist/lib.cjs/types/providers/base-provider/utils.d.ts +0 -1
  96. package/dist/lib.cjs/types/providers/ethereum-provider/index.d.ts +0 -1
  97. package/dist/lib.cjs/types/providers/ethereum-provider/rpc/ethRpcMiddlewares.d.ts +4 -4
  98. package/dist/lib.cjs/types/providers/ethereum-provider/rpc/index.d.ts +1 -1
  99. package/dist/lib.cjs/types/providers/ethereum-provider/rpc/jrpcClient.d.ts +2 -5
  100. package/dist/lib.cjs/types/providers/ethereum-provider/rpc/walletMiddleware.d.ts +3 -0
  101. package/dist/lib.cjs/types/providers/index.d.ts +0 -1
  102. package/dist/lib.cjs/types/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.d.ts +0 -1
  103. package/dist/lib.cjs/types/providers/xrpl-provider/rpc/JrpcClient.d.ts +3 -7
  104. package/dist/lib.cjs/types/providers/xrpl-provider/rpc/xrplRpcMiddlewares.d.ts +5 -12
  105. package/dist/lib.cjs/types/react/context/index.d.ts +4 -0
  106. package/dist/lib.cjs/types/react/context/useWalletServicesContextValue.d.ts +12 -0
  107. package/dist/lib.cjs/types/react/context/useWeb3AuthInnerContextValue.d.ts +26 -0
  108. package/dist/lib.cjs/types/react/hooks/index.d.ts +1 -1
  109. package/dist/lib.cjs/types/react/hooks/{useIdentityToken.d.ts → useAuthTokenInfo.d.ts} +4 -4
  110. package/dist/lib.cjs/types/react/hooks/useWeb3Auth.d.ts +1 -2
  111. package/dist/lib.cjs/types/react/hooks/useWeb3AuthConnect.d.ts +2 -2
  112. package/dist/lib.cjs/types/react/index.d.ts +1 -0
  113. package/dist/lib.cjs/types/react/solana/hooks/useSignAndSendTransaction.d.ts +7 -2
  114. package/dist/lib.cjs/types/react/solana/hooks/useSignTransaction.d.ts +8 -3
  115. package/dist/lib.cjs/types/react/solana/hooks/useSolanaWallet.d.ts +17 -4
  116. package/dist/lib.cjs/types/react/solana/index.d.ts +1 -0
  117. package/dist/lib.cjs/types/react/solana/provider.d.ts +26 -0
  118. package/dist/lib.cjs/types/vue/composables/index.d.ts +2 -1
  119. package/dist/lib.cjs/types/vue/composables/{useIdentityToken.d.ts → useAuthTokenInfo.d.ts} +3 -3
  120. package/dist/lib.cjs/types/vue/composables/useInjectedWeb3AuthInnerContext.d.ts +1 -0
  121. package/dist/lib.cjs/types/vue/composables/useWeb3Auth.d.ts +1 -2
  122. package/dist/lib.cjs/types/vue/composables/useWeb3AuthConnect.d.ts +2 -2
  123. package/dist/lib.cjs/types/vue/index.d.ts +2 -0
  124. package/dist/lib.cjs/types/vue/interfaces.d.ts +2 -2
  125. package/dist/lib.cjs/types/vue/solana/composables/index.d.ts +1 -0
  126. package/dist/lib.cjs/types/vue/solana/composables/useSignAndSendTransaction.d.ts +7 -2
  127. package/dist/lib.cjs/types/vue/solana/composables/useSignTransaction.d.ts +8 -3
  128. package/dist/lib.cjs/types/vue/solana/composables/useSolanaClient.d.ts +7 -0
  129. package/dist/lib.cjs/types/vue/solana/composables/useSolanaWallet.d.ts +17 -4
  130. package/dist/lib.cjs/types/vue/solana/constants.d.ts +3 -0
  131. package/dist/lib.cjs/types/vue/solana/index.d.ts +2 -0
  132. package/dist/lib.cjs/types/vue/solana/provider.d.ts +8 -0
  133. package/dist/lib.cjs/types/vue/useWalletServicesInnerContextValue.d.ts +13 -0
  134. package/dist/lib.cjs/types/vue/useWeb3AuthInnerContextValue.d.ts +26 -0
  135. package/dist/lib.cjs/types/x402/index.d.ts +43 -0
  136. package/dist/lib.cjs/types/x402/interfaces.d.ts +11 -0
  137. package/dist/lib.cjs/types/x402/react.d.ts +17 -0
  138. package/dist/lib.cjs/types/x402/vue.d.ts +18 -0
  139. package/dist/lib.cjs/vue/WalletServicesInnerProvider.js +9 -54
  140. package/dist/lib.cjs/vue/Web3AuthProvider.js +16 -177
  141. package/dist/lib.cjs/vue/composables/{useIdentityToken.js → useAuthTokenInfo.js} +10 -8
  142. package/dist/lib.cjs/vue/composables/useCheckout.js +4 -2
  143. package/dist/lib.cjs/vue/composables/useEnableMFA.js +4 -2
  144. package/dist/lib.cjs/vue/composables/useFunding.js +4 -2
  145. package/dist/lib.cjs/vue/composables/useInjectedWeb3AuthInnerContext.js +29 -0
  146. package/dist/lib.cjs/vue/composables/useManageMFA.js +4 -2
  147. package/dist/lib.cjs/vue/composables/useReceive.js +4 -2
  148. package/dist/lib.cjs/vue/composables/useSwap.js +4 -2
  149. package/dist/lib.cjs/vue/composables/useSwitchChain.js +4 -2
  150. package/dist/lib.cjs/vue/composables/useWalletConnectScanner.js +4 -2
  151. package/dist/lib.cjs/vue/composables/useWalletUI.js +4 -2
  152. package/dist/lib.cjs/vue/composables/useWeb3Auth.js +1 -26
  153. package/dist/lib.cjs/vue/composables/useWeb3AuthConnect.js +4 -2
  154. package/dist/lib.cjs/vue/composables/useWeb3AuthDisconnect.js +4 -2
  155. package/dist/lib.cjs/vue/composables/useWeb3AuthInner.js +2 -20
  156. package/dist/lib.cjs/vue/composables/useWeb3AuthUser.js +4 -2
  157. package/dist/lib.cjs/vue/index.js +8 -2
  158. package/dist/lib.cjs/vue/solana/composables/useSignAndSendTransaction.js +6 -3
  159. package/dist/lib.cjs/vue/solana/composables/useSignMessage.js +6 -3
  160. package/dist/lib.cjs/vue/solana/composables/useSignTransaction.js +6 -3
  161. package/dist/lib.cjs/vue/solana/composables/useSolanaClient.js +14 -0
  162. package/dist/lib.cjs/vue/solana/composables/useSolanaWallet.js +60 -41
  163. package/dist/lib.cjs/vue/solana/constants.js +5 -0
  164. package/dist/lib.cjs/vue/solana/index.js +6 -0
  165. package/dist/lib.cjs/vue/solana/provider.js +107 -0
  166. package/dist/lib.cjs/vue/useWalletServicesInnerContextValue.js +75 -0
  167. package/dist/lib.cjs/vue/useWeb3AuthInnerContextValue.js +217 -0
  168. package/dist/lib.cjs/vue/wagmi/provider.js +12 -8
  169. package/dist/lib.cjs/x402/index.js +175 -0
  170. package/dist/lib.cjs/x402/interfaces.js +5 -0
  171. package/dist/lib.cjs/x402/react.js +64 -0
  172. package/dist/lib.cjs/x402/vue.js +58 -0
  173. package/dist/lib.esm/base/connector/baseConnector.js +104 -2
  174. package/dist/lib.esm/base/connector/connectorStatus.js +2 -1
  175. package/dist/lib.esm/base/connector/constants.js +4 -2
  176. package/dist/lib.esm/base/connector/utils.js +1 -19
  177. package/dist/lib.esm/base/constants.js +4 -1
  178. package/dist/lib.esm/base/cookie.js +7 -20
  179. package/dist/lib.esm/base/errors/index.js +36 -12
  180. package/dist/lib.esm/base/utils.js +10 -7
  181. package/dist/lib.esm/base/wallet/index.js +2 -1
  182. package/dist/lib.esm/base/wallet/solana.js +81 -0
  183. package/dist/lib.esm/connectors/auth-connector/authConnector.js +143 -50
  184. package/dist/lib.esm/connectors/auth-connector/authSolanaWallet.js +175 -0
  185. package/dist/lib.esm/connectors/base-evm-connector/baseEvmConnector.js +17 -39
  186. package/dist/lib.esm/connectors/base-solana-connector/baseSolanaConnector.js +29 -55
  187. package/dist/lib.esm/connectors/coinbase-connector/coinbaseConnector.js +14 -11
  188. package/dist/lib.esm/connectors/injected-evm-connector/injectedEvmConnector.js +14 -11
  189. package/dist/lib.esm/connectors/injected-solana-connector/walletStandardConnector.js +19 -31
  190. package/dist/lib.esm/connectors/metamask-connector/metamaskConnector.js +335 -132
  191. package/dist/lib.esm/connectors/utils.js +9 -4
  192. package/dist/lib.esm/connectors/wallet-connect-v2-connector/WalletConnectV2Provider.js +11 -30
  193. package/dist/lib.esm/connectors/wallet-connect-v2-connector/config.js +1 -1
  194. package/dist/lib.esm/connectors/wallet-connect-v2-connector/walletConnectV2Connector.js +70 -61
  195. package/dist/lib.esm/connectors/wallet-connect-v2-connector/walletConnectV2Utils.js +21 -49
  196. package/dist/lib.esm/connectors/wallet-connect-v2-connector/wcSolanaWallet.js +130 -0
  197. package/dist/lib.esm/index.js +9 -17
  198. package/dist/lib.esm/noModal.js +225 -133
  199. package/dist/lib.esm/plugins/wallet-services-plugin/plugin.js +18 -37
  200. package/dist/lib.esm/providers/account-abstraction-provider/providers/AccountAbstractionProvider.js +9 -9
  201. package/dist/lib.esm/providers/account-abstraction-provider/providers/utils.js +3 -3
  202. package/dist/lib.esm/providers/account-abstraction-provider/rpc/ethRpcMiddlewares.js +48 -45
  203. package/dist/lib.esm/providers/base-provider/CommonJRPCProvider.js +2 -4
  204. package/dist/lib.esm/providers/base-provider/commonPrivateKeyProvider.js +9 -12
  205. package/dist/lib.esm/providers/base-provider/index.js +1 -1
  206. package/dist/lib.esm/providers/base-provider/jrpcClient.js +20 -19
  207. package/dist/lib.esm/providers/base-provider/utils.js +1 -3
  208. package/dist/lib.esm/providers/ethereum-provider/rpc/ethRpcMiddlewares.js +23 -44
  209. package/dist/lib.esm/providers/ethereum-provider/rpc/jrpcClient.js +20 -19
  210. package/dist/lib.esm/providers/ethereum-provider/rpc/walletMiddleware.js +201 -0
  211. package/dist/lib.esm/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.js +6 -17
  212. package/dist/lib.esm/providers/xrpl-provider/providers/privateKeyProviders/xrplWalletUtils.js +2 -1
  213. package/dist/lib.esm/providers/xrpl-provider/rpc/JrpcClient.js +21 -25
  214. package/dist/lib.esm/providers/xrpl-provider/rpc/xrplRpcMiddlewares.js +48 -38
  215. package/dist/lib.esm/react/context/WalletServicesInnerContext.js +3 -57
  216. package/dist/lib.esm/react/context/Web3AuthInnerContext.js +7 -152
  217. package/dist/lib.esm/react/context/useWalletServicesContextValue.js +59 -0
  218. package/dist/lib.esm/react/context/useWeb3AuthInnerContextValue.js +188 -0
  219. package/dist/lib.esm/react/hooks/{useIdentityToken.js → useAuthTokenInfo.js} +6 -7
  220. package/dist/lib.esm/react/hooks/useWalletServicesPlugin.js +3 -10
  221. package/dist/lib.esm/react/hooks/useWeb3Auth.js +1 -22
  222. package/dist/lib.esm/react/index.js +5 -1
  223. package/dist/lib.esm/react/solana/hooks/useSignAndSendTransaction.js +6 -4
  224. package/dist/lib.esm/react/solana/hooks/useSignMessage.js +4 -2
  225. package/dist/lib.esm/react/solana/hooks/useSignTransaction.js +6 -3
  226. package/dist/lib.esm/react/solana/hooks/useSolanaWallet.js +33 -28
  227. package/dist/lib.esm/react/solana/index.js +1 -0
  228. package/dist/lib.esm/react/solana/provider.js +150 -0
  229. package/dist/lib.esm/react/wagmi/provider.js +7 -7
  230. package/dist/lib.esm/vue/WalletServicesInnerProvider.js +4 -54
  231. package/dist/lib.esm/vue/Web3AuthProvider.js +7 -179
  232. package/dist/lib.esm/vue/composables/{useIdentityToken.js → useAuthTokenInfo.js} +6 -6
  233. package/dist/lib.esm/vue/composables/useInjectedWeb3AuthInnerContext.js +11 -0
  234. package/dist/lib.esm/vue/composables/useWeb3Auth.js +1 -26
  235. package/dist/lib.esm/vue/composables/useWeb3AuthInner.js +2 -6
  236. package/dist/lib.esm/vue/index.js +4 -1
  237. package/dist/lib.esm/vue/solana/composables/useSignAndSendTransaction.js +2 -1
  238. package/dist/lib.esm/vue/solana/composables/useSignMessage.js +2 -1
  239. package/dist/lib.esm/vue/solana/composables/useSignTransaction.js +3 -2
  240. package/dist/lib.esm/vue/solana/composables/useSolanaClient.js +12 -0
  241. package/dist/lib.esm/vue/solana/composables/useSolanaWallet.js +53 -35
  242. package/dist/lib.esm/vue/solana/constants.js +3 -0
  243. package/dist/lib.esm/vue/solana/index.js +3 -0
  244. package/dist/lib.esm/vue/solana/provider.js +95 -0
  245. package/dist/lib.esm/vue/useWalletServicesInnerContextValue.js +58 -0
  246. package/dist/lib.esm/vue/useWeb3AuthInnerContextValue.js +204 -0
  247. package/dist/lib.esm/vue/wagmi/provider.js +9 -7
  248. package/dist/lib.esm/x402/index.js +170 -0
  249. package/dist/lib.esm/x402/interfaces.js +3 -0
  250. package/dist/lib.esm/x402/react.js +59 -0
  251. package/dist/lib.esm/x402/vue.js +54 -0
  252. package/package.json +78 -53
  253. package/dist/lib.cjs/providers/ethereum-mpc-provider/index.js +0 -7
  254. package/dist/lib.cjs/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.js +0 -224
  255. package/dist/lib.cjs/providers/ethereum-mpc-provider/providers/signingProviders/signingUtils.js +0 -177
  256. package/dist/lib.cjs/providers/ethereum-mpc-provider/rpc/ethRpcMiddlewares.js +0 -21
  257. package/dist/lib.cjs/providers/ethereum-provider/providers/converter.js +0 -88
  258. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/constants.js +0 -27
  259. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/formatter.js +0 -383
  260. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/interfaces.js +0 -8
  261. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/utils.js +0 -93
  262. package/dist/lib.cjs/providers/ethereum-provider/providers/utils.js +0 -29
  263. package/dist/lib.cjs/providers/ethereum-provider/rpc/walletMidddleware.js +0 -251
  264. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.js +0 -65
  265. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/base/providerHandlers.js +0 -45
  266. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/utils.js +0 -16
  267. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/walletStandardProvider.js +0 -103
  268. package/dist/lib.cjs/providers/solana-provider/rpc/JrpcClient.js +0 -47
  269. package/dist/lib.cjs/providers/solana-provider/rpc/solanaRpcMiddlewares.js +0 -97
  270. package/dist/lib.cjs/providers/solana-provider/solanaWallet.js +0 -91
  271. package/dist/lib.cjs/types/connectors/injected-solana-connector/utils.d.ts +0 -3
  272. package/dist/lib.cjs/types/providers/ethereum-mpc-provider/index.d.ts +0 -1
  273. package/dist/lib.cjs/types/providers/ethereum-mpc-provider/providers/index.d.ts +0 -1
  274. package/dist/lib.cjs/types/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.d.ts +0 -74
  275. package/dist/lib.cjs/types/providers/ethereum-mpc-provider/providers/signingProviders/index.d.ts +0 -1
  276. package/dist/lib.cjs/types/providers/ethereum-mpc-provider/providers/signingProviders/signingUtils.d.ts +0 -12
  277. package/dist/lib.cjs/types/providers/ethereum-mpc-provider/rpc/ethRpcMiddlewares.d.ts +0 -3
  278. package/dist/lib.cjs/types/providers/ethereum-mpc-provider/rpc/interfaces.d.ts +0 -15
  279. package/dist/lib.cjs/types/providers/ethereum-provider/providers/converter.d.ts +0 -14
  280. package/dist/lib.cjs/types/providers/ethereum-provider/providers/index.d.ts +0 -1
  281. package/dist/lib.cjs/types/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/constants.d.ts +0 -16
  282. package/dist/lib.cjs/types/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/formatter.d.ts +0 -28
  283. package/dist/lib.cjs/types/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/index.d.ts +0 -4
  284. package/dist/lib.cjs/types/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/interfaces.d.ts +0 -46
  285. package/dist/lib.cjs/types/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/utils.d.ts +0 -11
  286. package/dist/lib.cjs/types/providers/ethereum-provider/providers/privateKeyProviders/index.d.ts +0 -1
  287. package/dist/lib.cjs/types/providers/ethereum-provider/providers/utils.d.ts +0 -5
  288. package/dist/lib.cjs/types/providers/ethereum-provider/rpc/walletMidddleware.d.ts +0 -3
  289. package/dist/lib.cjs/types/providers/solana-provider/index.d.ts +0 -4
  290. package/dist/lib.cjs/types/providers/solana-provider/interface.d.ts +0 -22
  291. package/dist/lib.cjs/types/providers/solana-provider/providers/index.d.ts +0 -1
  292. package/dist/lib.cjs/types/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.d.ts +0 -16
  293. package/dist/lib.cjs/types/providers/solana-provider/providers/injectedProviders/base/providerHandlers.d.ts +0 -3
  294. package/dist/lib.cjs/types/providers/solana-provider/providers/injectedProviders/index.d.ts +0 -2
  295. package/dist/lib.cjs/types/providers/solana-provider/providers/injectedProviders/utils.d.ts +0 -3
  296. package/dist/lib.cjs/types/providers/solana-provider/providers/injectedProviders/walletStandardProvider.d.ts +0 -9
  297. package/dist/lib.cjs/types/providers/solana-provider/rpc/JrpcClient.d.ts +0 -9
  298. package/dist/lib.cjs/types/providers/solana-provider/rpc/index.d.ts +0 -3
  299. package/dist/lib.cjs/types/providers/solana-provider/rpc/interfaces.d.ts +0 -27
  300. package/dist/lib.cjs/types/providers/solana-provider/rpc/solanaRpcMiddlewares.d.ts +0 -20
  301. package/dist/lib.cjs/types/providers/solana-provider/solanaWallet.d.ts +0 -29
  302. package/dist/lib.esm/providers/ethereum-mpc-provider/index.js +0 -1
  303. package/dist/lib.esm/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.js +0 -206
  304. package/dist/lib.esm/providers/ethereum-mpc-provider/providers/signingProviders/signingUtils.js +0 -163
  305. package/dist/lib.esm/providers/ethereum-mpc-provider/rpc/ethRpcMiddlewares.js +0 -20
  306. package/dist/lib.esm/providers/ethereum-provider/providers/converter.js +0 -85
  307. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/constants.js +0 -21
  308. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/formatter.js +0 -378
  309. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/interfaces.js +0 -8
  310. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/utils.js +0 -88
  311. package/dist/lib.esm/providers/ethereum-provider/providers/utils.js +0 -24
  312. package/dist/lib.esm/providers/ethereum-provider/rpc/walletMidddleware.js +0 -258
  313. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.js +0 -47
  314. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/base/providerHandlers.js +0 -43
  315. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/utils.js +0 -14
  316. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/walletStandardProvider.js +0 -91
  317. package/dist/lib.esm/providers/solana-provider/rpc/JrpcClient.js +0 -42
  318. package/dist/lib.esm/providers/solana-provider/rpc/solanaRpcMiddlewares.js +0 -89
  319. package/dist/lib.esm/providers/solana-provider/solanaWallet.js +0 -92
  320. package/dist/noModal.umd.min.js +0 -2
  321. package/dist/noModal.umd.min.js.LICENSE.txt +0 -48
@@ -1,87 +1,61 @@
1
- import { signChallenge, verifySignedChallenge } from '@toruslabs/base-controllers';
2
- import { SOLANA_METHOD_TYPES } from '@web3auth/ws-embed';
1
+ import { CHAIN_NAMESPACES, signChallenge } from '@toruslabs/base-controllers';
2
+ import { generateSiweNonce } from 'viem/siwe';
3
+ import { getSolanaChainByChainConfig, walletSignMessage } from '../../base/wallet/solana.js';
3
4
  import { BaseConnector } from '../../base/connector/baseConnector.js';
4
5
  import { WalletLoginError, WalletInitializationError } from '../../base/errors/index.js';
5
6
  import { CONNECTOR_STATUS, CONNECTOR_EVENTS } from '../../base/connector/constants.js';
6
- import { getSavedToken, checkIfTokenIsExpired, saveToken, clearToken } from '../../base/connector/utils.js';
7
+ import { citadelServerUrl } from '../../base/utils.js';
7
8
 
8
9
  class BaseSolanaConnector extends BaseConnector {
9
10
  async init(_) {}
10
- async getIdentityToken() {
11
- if (!this.provider || !this.canAuthorize) throw WalletLoginError.notConnectedError();
11
+ async getAuthTokenInfo() {
12
+ if (!this.solanaWallet || !this.canAuthorize) throw WalletLoginError.notConnectedError();
12
13
  if (!this.coreOptions) throw WalletInitializationError.invalidParams("Please initialize Web3Auth with a valid options");
13
14
  this.status = CONNECTOR_STATUS.AUTHORIZING;
14
15
  this.emit(CONNECTOR_EVENTS.AUTHORIZING, {
15
16
  connector: this.name
16
17
  });
17
- const accounts = await this.provider.request({
18
- method: SOLANA_METHOD_TYPES.GET_ACCOUNTS
19
- });
20
- if (accounts && accounts.length > 0) {
21
- const existingToken = getSavedToken(accounts[0], this.name);
22
- if (existingToken) {
23
- const isExpired = checkIfTokenIsExpired(existingToken);
24
- if (!isExpired) {
25
- this.status = CONNECTOR_STATUS.AUTHORIZED;
26
- this.emit(CONNECTOR_EVENTS.AUTHORIZED, {
27
- connector: this.name,
28
- identityTokenInfo: {
29
- idToken: existingToken
30
- }
31
- });
32
- return {
33
- idToken: existingToken
34
- };
35
- }
36
- }
37
- const chainId = await this.provider.request({
38
- method: "solana_chainId"
18
+ const accounts = this.solanaWallet.accounts.map(a => a.address);
19
+ if (accounts.length > 0) {
20
+ const cached = await this.getCachedOrNullAuthTokenInfo(accounts[0]);
21
+ if (cached) return cached;
22
+ const walletChains = new Set(this.solanaWallet.chains);
23
+ const currentChainConfig = this.coreOptions.chains.find(c => {
24
+ if (c.chainNamespace !== CHAIN_NAMESPACES.SOLANA) return false;
25
+ const id = getSolanaChainByChainConfig(c);
26
+ return id != null && walletChains.has(id);
39
27
  });
40
- const currentChainConfig = this.coreOptions.chains.find(x => x.chainId === chainId);
41
- if (!currentChainConfig) throw WalletInitializationError.invalidParams("chainConfig is required before authentication");
28
+ if (!currentChainConfig) {
29
+ throw WalletInitializationError.invalidParams("No Solana chain in common between the connected wallet and Web3Auth chain configuration");
30
+ }
42
31
  const {
32
+ chainId,
43
33
  chainNamespace
44
34
  } = currentChainConfig;
35
+ const authServer = citadelServerUrl(this.coreOptions.authBuildEnv);
45
36
  const payload = {
46
37
  domain: window.location.origin,
47
38
  uri: window.location.href,
48
39
  address: accounts[0],
49
40
  chainId: parseInt(chainId, 16),
50
41
  version: "1",
51
- nonce: Math.random().toString(36).slice(2),
42
+ nonce: generateSiweNonce(),
52
43
  issuedAt: new Date().toISOString()
53
44
  };
54
- const challenge = await signChallenge(payload, chainNamespace);
55
- const signedMessage = await this.provider.request({
56
- method: SOLANA_METHOD_TYPES.SIGN_MESSAGE,
57
- params: {
58
- data: challenge,
59
- display: "utf8"
60
- }
61
- });
62
- const idToken = await verifySignedChallenge(chainNamespace, signedMessage, challenge, this.name, this.coreOptions.sessionTime, this.coreOptions.clientId, this.coreOptions.web3AuthNetwork);
63
- saveToken(accounts[0], this.name, idToken);
64
- this.status = CONNECTOR_STATUS.AUTHORIZED;
65
- this.emit(CONNECTOR_EVENTS.AUTHORIZED, {
66
- connector: this.name,
67
- identityTokenInfo: {
68
- idToken
69
- }
45
+ const challenge = await signChallenge(payload, chainNamespace, authServer);
46
+ const signedMessage = await walletSignMessage(this.solanaWallet, challenge, accounts[0]);
47
+ return this.verifyAndAuthorize({
48
+ chainNamespace,
49
+ signedMessage,
50
+ challenge,
51
+ authServer
70
52
  });
71
- return {
72
- idToken
73
- };
74
53
  }
75
54
  throw WalletLoginError.notConnectedError("Not connected with wallet, Please login/connect first");
76
55
  }
77
56
  async disconnectSession() {
78
57
  super.checkDisconnectionRequirements();
79
- const accounts = await this.provider.request({
80
- method: SOLANA_METHOD_TYPES.GET_ACCOUNTS
81
- });
82
- if (accounts && accounts.length > 0) {
83
- clearToken(accounts[0], this.name);
84
- }
58
+ await this.clearWalletSession();
85
59
  }
86
60
  async disconnect() {
87
61
  this.rehydrated = false;
@@ -53,12 +53,12 @@ class CoinbaseConnector extends BaseEvmConnector {
53
53
  try {
54
54
  if (options.autoConnect) {
55
55
  this.rehydrated = true;
56
- const provider = await this.connect({
56
+ const connection = await this.connect({
57
57
  chainId: options.chainId,
58
- getIdentityToken: options.getIdentityToken
58
+ getAuthTokenInfo: options.getAuthTokenInfo
59
59
  });
60
60
  // the connect function could fail silently as well.
61
- if (!provider) {
61
+ if (!connection) {
62
62
  this.rehydrated = false;
63
63
  throw WalletLoginError.connectionError("Failed to rehydrate.");
64
64
  }
@@ -69,7 +69,7 @@ class CoinbaseConnector extends BaseEvmConnector {
69
69
  }
70
70
  async connect({
71
71
  chainId,
72
- getIdentityToken
72
+ getAuthTokenInfo
73
73
  }) {
74
74
  super.checkConnectionRequirements();
75
75
  if (!this.coinbaseProvider) throw WalletLoginError.notConnectedError("Connector is not initialized");
@@ -95,17 +95,20 @@ class CoinbaseConnector extends BaseEvmConnector {
95
95
  // ready to be connected again
96
96
  this.disconnect();
97
97
  });
98
- let identityTokenInfo;
99
98
  this.emit(CONNECTOR_EVENTS.CONNECTED, {
100
- connector: WALLET_CONNECTORS.COINBASE,
99
+ connectorName: WALLET_CONNECTORS.COINBASE,
101
100
  reconnected: this.rehydrated,
102
- provider: this.provider,
103
- identityTokenInfo
101
+ ethereumProvider: this.provider,
102
+ solanaWallet: null
104
103
  });
105
- if (getIdentityToken) {
106
- identityTokenInfo = await this.getIdentityToken();
104
+ if (getAuthTokenInfo) {
105
+ await this.getAuthTokenInfo();
107
106
  }
108
- return this.provider;
107
+ return {
108
+ ethereumProvider: this.provider,
109
+ solanaWallet: null,
110
+ connectorName: this.name
111
+ };
109
112
  } catch (error) {
110
113
  // ready again to be connected
111
114
  this.status = CONNECTOR_STATUS.READY;
@@ -42,11 +42,11 @@ class InjectedEvmConnector extends BaseEvmConnector {
42
42
  log.debug(`initializing ${this.name} injected connector`);
43
43
  if (options.autoConnect) {
44
44
  this.rehydrated = true;
45
- const provider = await this.connect({
45
+ const connection = await this.connect({
46
46
  chainId: options.chainId,
47
- getIdentityToken: options.getIdentityToken
47
+ getAuthTokenInfo: options.getAuthTokenInfo
48
48
  });
49
- if (!provider) {
49
+ if (!connection) {
50
50
  this.rehydrated = false;
51
51
  throw WalletLoginError.connectionError("Failed to rehydrate.");
52
52
  }
@@ -57,7 +57,7 @@ class InjectedEvmConnector extends BaseEvmConnector {
57
57
  }
58
58
  async connect({
59
59
  chainId,
60
- getIdentityToken
60
+ getAuthTokenInfo
61
61
  }) {
62
62
  super.checkConnectionRequirements();
63
63
  if (!this.injectedProvider) throw WalletLoginError.connectionError("Injected provider is not available");
@@ -89,17 +89,20 @@ class InjectedEvmConnector extends BaseEvmConnector {
89
89
  }
90
90
  };
91
91
  this.injectedProvider.on("accountsChanged", accountDisconnectHandler);
92
- let identityTokenInfo;
93
92
  this.emit(CONNECTOR_EVENTS.CONNECTED, {
94
- connector: this.name,
93
+ connectorName: this.name,
95
94
  reconnected: this.rehydrated,
96
- provider: this.injectedProvider,
97
- identityTokenInfo
95
+ ethereumProvider: this.injectedProvider,
96
+ solanaWallet: null
98
97
  });
99
- if (getIdentityToken) {
100
- identityTokenInfo = await this.getIdentityToken();
98
+ if (getAuthTokenInfo) {
99
+ await this.getAuthTokenInfo();
101
100
  }
102
- return this.injectedProvider;
101
+ return {
102
+ ethereumProvider: this.injectedProvider,
103
+ solanaWallet: null,
104
+ connectorName: this.name
105
+ };
103
106
  } catch (error) {
104
107
  // ready again to be connected
105
108
  this.status = CONNECTOR_STATUS.READY;
@@ -1,14 +1,13 @@
1
1
  import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
2
  import { StandardConnect, StandardDisconnect } from '@wallet-standard/features';
3
3
  import { BaseSolanaConnector } from '../base-solana-connector/baseSolanaConnector.js';
4
- import { WalletStandardProvider } from '../../providers/solana-provider/providers/injectedProviders/walletStandardProvider.js';
5
- import { getSolanaChainByChainConfig } from '../../providers/solana-provider/providers/injectedProviders/utils.js';
6
4
  import { normalizeWalletName } from '../../base/utils.js';
7
5
  import { CONNECTOR_NAMESPACES } from '../../base/chain/IChainInterface.js';
8
6
  import { CHAIN_NAMESPACES } from '@toruslabs/base-controllers';
9
7
  import { CONNECTOR_CATEGORY, CONNECTOR_STATUS, CONNECTOR_EVENTS } from '../../base/connector/constants.js';
10
8
  import { log } from '../../base/loglevel.js';
11
9
  import { WalletLoginError } from '../../base/errors/index.js';
10
+ import { getSolanaChainByChainConfig } from '../../base/wallet/solana.js';
12
11
 
13
12
  class WalletStandardConnector extends BaseSolanaConnector {
14
13
  constructor(options) {
@@ -20,7 +19,6 @@ class WalletStandardConnector extends BaseSolanaConnector {
20
19
  _defineProperty(this, "isInjected", true);
21
20
  _defineProperty(this, "status", CONNECTOR_STATUS.NOT_READY);
22
21
  _defineProperty(this, "wallet", null);
23
- _defineProperty(this, "injectedProvider", null);
24
22
  this.name = options.name;
25
23
  this.icon = options.wallet.icon;
26
24
  // in VueJS, for some wallets e.g. Gate, Solflare, when connecting it throws error "attempted to get private field on non-instance"
@@ -28,11 +26,8 @@ class WalletStandardConnector extends BaseSolanaConnector {
28
26
  // ref: https://stackoverflow.com/questions/64917686/vue-array-converted-to-proxy-object
29
27
  this.wallet = ["gate", "solflare"].includes(this.name) ? Object.freeze(options.wallet) : options.wallet;
30
28
  }
31
- get provider() {
32
- if (this.status !== CONNECTOR_STATUS.NOT_READY && this.injectedProvider) {
33
- return this.injectedProvider;
34
- }
35
- return null;
29
+ get solanaWallet() {
30
+ return this.wallet;
36
31
  }
37
32
  get isWalletConnected() {
38
33
  return !!(this.connected && this.wallet.accounts.length > 0);
@@ -43,24 +38,17 @@ class WalletStandardConnector extends BaseSolanaConnector {
43
38
  super.checkInitializationRequirements({
44
39
  chainConfig
45
40
  });
46
- this.injectedProvider = new WalletStandardProvider({
47
- config: {
48
- chain: chainConfig,
49
- chains: this.coreOptions.chains
50
- }
51
- });
52
- await this.injectedProvider.setupProvider(this.wallet, options.chainId);
53
41
  this.status = CONNECTOR_STATUS.READY;
54
42
  this.emit(CONNECTOR_EVENTS.READY, this.name);
55
43
  try {
56
44
  log.debug("initializing solana injected connector");
57
45
  if (options.autoConnect) {
58
46
  this.rehydrated = true;
59
- const provider = await this.connect({
47
+ const connection = await this.connect({
60
48
  chainId: options.chainId,
61
- getIdentityToken: options.getIdentityToken
49
+ getAuthTokenInfo: options.getAuthTokenInfo
62
50
  });
63
- if (!provider) {
51
+ if (!connection) {
64
52
  this.rehydrated = false;
65
53
  throw WalletLoginError.connectionError("Failed to rehydrate.");
66
54
  }
@@ -71,7 +59,7 @@ class WalletStandardConnector extends BaseSolanaConnector {
71
59
  }
72
60
  async connect({
73
61
  chainId,
74
- getIdentityToken
62
+ getAuthTokenInfo
75
63
  }) {
76
64
  try {
77
65
  super.checkConnectionRequirements();
@@ -88,17 +76,20 @@ class WalletStandardConnector extends BaseSolanaConnector {
88
76
  }
89
77
  if (this.wallet.accounts.length === 0) throw WalletLoginError.connectionError();
90
78
  this.status = CONNECTOR_STATUS.CONNECTED;
91
- let identityTokenInfo;
92
79
  this.emit(CONNECTOR_EVENTS.CONNECTED, {
93
- connector: this.name,
80
+ connectorName: this.name,
94
81
  reconnected: this.rehydrated,
95
- provider: this.provider,
96
- identityTokenInfo
82
+ ethereumProvider: null,
83
+ solanaWallet: this.solanaWallet
97
84
  });
98
- if (getIdentityToken) {
99
- identityTokenInfo = await this.getIdentityToken();
85
+ if (getAuthTokenInfo) {
86
+ await this.getAuthTokenInfo();
100
87
  }
101
- return this.provider;
88
+ return {
89
+ ethereumProvider: null,
90
+ solanaWallet: this.solanaWallet,
91
+ connectorName: this.name
92
+ };
102
93
  } catch (error) {
103
94
  // ready again to be connected
104
95
  this.status = CONNECTOR_STATUS.READY;
@@ -116,7 +107,6 @@ class WalletStandardConnector extends BaseSolanaConnector {
116
107
  await ((_this$wallet$features = this.wallet.features[StandardDisconnect]) === null || _this$wallet$features === void 0 ? void 0 : _this$wallet$features.disconnect());
117
108
  if (options.cleanup) {
118
109
  this.status = CONNECTOR_STATUS.NOT_READY;
119
- this.injectedProvider = null;
120
110
  } else {
121
111
  this.status = CONNECTOR_STATUS.READY;
122
112
  }
@@ -129,10 +119,8 @@ class WalletStandardConnector extends BaseSolanaConnector {
129
119
  if (!this.canAuthorize) throw WalletLoginError.notConnectedError("Not connected with wallet, Please login/connect first");
130
120
  return {};
131
121
  }
132
- async switchChain(params, init = false) {
133
- var _this$injectedProvide;
134
- super.checkSwitchChainRequirements(params, init);
135
- await ((_this$injectedProvide = this.injectedProvider) === null || _this$injectedProvide === void 0 ? void 0 : _this$injectedProvide.switchChain(params));
122
+ async switchChain(_params, _init = false) {
123
+ throw WalletLoginError.unsupportedOperation("Injected Solana wallets do not support chain switching.");
136
124
  }
137
125
  async enableMFA() {
138
126
  throw new Error("Method not implemented.");