@web3auth/no-modal 10.0.0-alpha.1 → 10.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 (266) hide show
  1. package/dist/lib.cjs/base/chain/IChainInterface.js +5 -10
  2. package/dist/lib.cjs/base/chain/config.js +20 -19
  3. package/dist/lib.cjs/base/connector/baseConnector.js +3 -6
  4. package/dist/lib.cjs/base/connector/constants.js +5 -0
  5. package/dist/lib.cjs/base/errors/index.js +0 -10
  6. package/dist/lib.cjs/base/plugin/IPlugin.js +2 -2
  7. package/dist/lib.cjs/base/plugin/errors.js +0 -2
  8. package/dist/lib.cjs/base/utils.js +10 -9
  9. package/dist/lib.cjs/base/wallet/index.js +2 -1
  10. package/dist/lib.cjs/connectors/auth-connector/authConnector.js +218 -59
  11. package/dist/lib.cjs/connectors/base-evm-connector/baseEvmConnector.js +8 -2
  12. package/dist/lib.cjs/connectors/base-solana-connector/baseSolanaConnector.js +7 -1
  13. package/dist/lib.cjs/connectors/coinbase-connector/coinbaseConnector.js +11 -3
  14. package/dist/lib.cjs/connectors/injected-evm-connector/injectedEvmConnector.js +13 -5
  15. package/dist/lib.cjs/connectors/injected-solana-connector/index.js +2 -2
  16. package/dist/lib.cjs/connectors/injected-solana-connector/walletStandardConnector.js +13 -5
  17. package/dist/lib.cjs/connectors/metamask-connector/metamaskConnector.js +197 -0
  18. package/dist/lib.cjs/connectors/utils.js +61 -0
  19. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/WalletConnectV2Provider.js +24 -7
  20. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/config.js +36 -90
  21. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/index.js +16 -4
  22. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/walletConnectV2Connector.js +21 -30
  23. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/walletConnectV2Utils.js +12 -2
  24. package/dist/lib.cjs/index.js +76 -55
  25. package/dist/lib.cjs/noModal.js +149 -53
  26. package/dist/lib.cjs/plugins/nft-checkout-plugin/embed.js +0 -3
  27. package/dist/lib.cjs/plugins/nft-checkout-plugin/plugin.js +10 -3
  28. package/dist/lib.cjs/plugins/wallet-services-plugin/plugin.js +13 -11
  29. package/dist/lib.cjs/providers/account-abstraction-provider/providers/AccountAbstractionProvider.js +33 -18
  30. package/dist/lib.cjs/providers/account-abstraction-provider/providers/utils.js +10 -0
  31. package/dist/lib.cjs/providers/account-abstraction-provider/rpc/ethRpcMiddlewares.js +0 -2
  32. package/dist/lib.cjs/providers/base-provider/baseProvider.js +32 -12
  33. package/dist/lib.cjs/providers/base-provider/index.js +4 -0
  34. package/dist/lib.cjs/providers/base-provider/utils.js +10 -2
  35. package/dist/lib.cjs/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.js +18 -5
  36. package/dist/lib.cjs/providers/ethereum-mpc-provider/providers/signingProviders/signingUtils.js +12 -2
  37. package/dist/lib.cjs/providers/ethereum-mpc-provider/rpc/ethRpcMiddlewares.js +0 -1
  38. package/dist/lib.cjs/providers/ethereum-provider/providers/converter.js +0 -1
  39. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/formatter.js +12 -11
  40. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/interfaces.js +3 -5
  41. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/utils.js +1 -2
  42. package/dist/lib.cjs/providers/ethereum-provider/rpc/walletMidddleware.js +0 -8
  43. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.js +13 -0
  44. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/base/providerHandlers.js +4 -4
  45. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/walletStandardProvider.js +15 -8
  46. package/dist/lib.cjs/providers/solana-provider/rpc/solanaRpcMiddlewares.js +1 -1
  47. package/dist/lib.cjs/providers/solana-provider/solanaWallet.js +0 -3
  48. package/dist/lib.cjs/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.js +13 -2
  49. package/dist/lib.cjs/providers/xrpl-provider/rpc/xrplRpcMiddlewares.js +0 -1
  50. package/dist/lib.cjs/react/no-modal/Web3AuthInnerContext.js +11 -3
  51. package/dist/lib.cjs/react/no-modal/hooks/useWeb3Auth.js +11 -0
  52. package/dist/lib.cjs/react/wallet-services-plugin/WalletServicesContext.js +10 -1
  53. package/dist/lib.cjs/react/wallet-services-plugin/hooks/useWalletServicesPlugin.js +11 -0
  54. package/dist/lib.cjs/types/base/chain/IChainInterface.d.ts +11 -0
  55. package/dist/{types → lib.cjs/types}/base/connector/constants.d.ts +4 -0
  56. package/dist/{types → lib.cjs/types}/base/connector/interfaces.d.ts +17 -5
  57. package/dist/{types → lib.cjs/types}/base/core/IWeb3Auth.d.ts +11 -5
  58. package/dist/lib.cjs/types/base/interfaces.d.ts +102 -0
  59. package/dist/{types → lib.cjs/types}/base/utils.d.ts +2 -2
  60. package/dist/{types → lib.cjs/types}/base/wallet/index.d.ts +2 -0
  61. package/dist/{types → lib.cjs/types}/connectors/auth-connector/authConnector.d.ts +9 -2
  62. package/dist/lib.cjs/types/connectors/auth-connector/interface.d.ts +17 -0
  63. package/dist/lib.cjs/types/connectors/metamask-connector/index.d.ts +1 -0
  64. package/dist/lib.cjs/types/connectors/metamask-connector/metamaskConnector.d.ts +6 -0
  65. package/dist/lib.cjs/types/connectors/utils.d.ts +8 -0
  66. package/dist/{types → lib.cjs/types}/connectors/wallet-connect-v2-connector/WalletConnectV2Provider.d.ts +1 -2
  67. package/dist/{types → lib.cjs/types}/noModal.d.ts +6 -4
  68. package/dist/{types → lib.cjs/types}/providers/account-abstraction-provider/providers/AccountAbstractionProvider.d.ts +4 -5
  69. package/dist/{types → lib.cjs/types}/providers/base-provider/baseProvider.d.ts +3 -7
  70. package/dist/{types → lib.cjs/types}/providers/base-provider/commonPrivateKeyProvider.d.ts +1 -2
  71. package/dist/{types → lib.cjs/types}/providers/base-provider/interfaces.d.ts +3 -1
  72. package/dist/lib.cjs/types/providers/base-provider/utils.d.ts +9 -0
  73. package/dist/{types → lib.cjs/types}/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.d.ts +1 -2
  74. package/dist/lib.cjs/types/providers/solana-provider/providers/index.d.ts +1 -0
  75. package/dist/{types → lib.cjs/types}/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.d.ts +1 -2
  76. package/dist/lib.cjs/vue/no-modal/Web3AuthProvider.js +12 -3
  77. package/dist/lib.cjs/vue/no-modal/composables/useWeb3Auth.js +12 -1
  78. package/dist/lib.cjs/vue/wallet-services-plugin/WalletServicesProvider.js +11 -3
  79. package/dist/lib.cjs/vue/wallet-services-plugin/composables/useWalletServicesPlugin.js +12 -1
  80. package/dist/lib.esm/base/chain/IChainInterface.js +2 -10
  81. package/dist/lib.esm/base/chain/config.js +4 -3
  82. package/dist/lib.esm/base/connector/baseConnector.js +2 -5
  83. package/dist/lib.esm/base/connector/constants.js +5 -1
  84. package/dist/lib.esm/base/errors/index.js +0 -10
  85. package/dist/lib.esm/base/plugin/IPlugin.js +1 -1
  86. package/dist/lib.esm/base/plugin/errors.js +0 -2
  87. package/dist/lib.esm/base/utils.js +8 -7
  88. package/dist/lib.esm/base/wallet/index.js +2 -1
  89. package/dist/lib.esm/connectors/auth-connector/authConnector.js +212 -53
  90. package/dist/lib.esm/connectors/base-evm-connector/baseEvmConnector.js +8 -2
  91. package/dist/lib.esm/connectors/base-solana-connector/baseSolanaConnector.js +7 -1
  92. package/dist/lib.esm/connectors/coinbase-connector/coinbaseConnector.js +10 -2
  93. package/dist/lib.esm/connectors/injected-evm-connector/injectedEvmConnector.js +12 -4
  94. package/dist/lib.esm/connectors/injected-solana-connector/walletStandardConnector.js +12 -4
  95. package/dist/lib.esm/connectors/metamask-connector/metamaskConnector.js +195 -0
  96. package/dist/lib.esm/connectors/utils.js +58 -0
  97. package/dist/lib.esm/connectors/wallet-connect-v2-connector/WalletConnectV2Provider.js +22 -5
  98. package/dist/lib.esm/connectors/wallet-connect-v2-connector/config.js +25 -75
  99. package/dist/lib.esm/connectors/wallet-connect-v2-connector/walletConnectV2Connector.js +19 -28
  100. package/dist/lib.esm/connectors/wallet-connect-v2-connector/walletConnectV2Utils.js +11 -1
  101. package/dist/lib.esm/index.js +13 -14
  102. package/dist/lib.esm/noModal.js +147 -51
  103. package/dist/lib.esm/plugins/nft-checkout-plugin/embed.js +1 -4
  104. package/dist/lib.esm/plugins/nft-checkout-plugin/plugin.js +10 -3
  105. package/dist/lib.esm/plugins/wallet-services-plugin/plugin.js +9 -7
  106. package/dist/lib.esm/providers/account-abstraction-provider/providers/AccountAbstractionProvider.js +30 -15
  107. package/dist/lib.esm/providers/account-abstraction-provider/providers/utils.js +10 -0
  108. package/dist/lib.esm/providers/account-abstraction-provider/rpc/ethRpcMiddlewares.js +0 -2
  109. package/dist/lib.esm/providers/base-provider/baseProvider.js +32 -12
  110. package/dist/lib.esm/providers/base-provider/index.js +1 -1
  111. package/dist/lib.esm/providers/base-provider/utils.js +9 -1
  112. package/dist/lib.esm/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.js +16 -3
  113. package/dist/lib.esm/providers/ethereum-mpc-provider/providers/signingProviders/signingUtils.js +12 -2
  114. package/dist/lib.esm/providers/ethereum-mpc-provider/rpc/ethRpcMiddlewares.js +0 -1
  115. package/dist/lib.esm/providers/ethereum-provider/providers/converter.js +0 -1
  116. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/formatter.js +12 -11
  117. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/interfaces.js +3 -3
  118. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/utils.js +1 -2
  119. package/dist/lib.esm/providers/ethereum-provider/rpc/walletMidddleware.js +0 -8
  120. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.js +13 -0
  121. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/base/providerHandlers.js +1 -1
  122. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/walletStandardProvider.js +12 -5
  123. package/dist/lib.esm/providers/solana-provider/rpc/solanaRpcMiddlewares.js +2 -2
  124. package/dist/lib.esm/providers/solana-provider/solanaWallet.js +0 -3
  125. package/dist/lib.esm/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.js +12 -1
  126. package/dist/lib.esm/providers/xrpl-provider/rpc/xrplRpcMiddlewares.js +0 -1
  127. package/dist/lib.esm/react/no-modal/Web3AuthInnerContext.js +11 -3
  128. package/dist/lib.esm/react/no-modal/hooks/useWeb3Auth.js +11 -0
  129. package/dist/lib.esm/react/wallet-services-plugin/WalletServicesContext.js +10 -1
  130. package/dist/lib.esm/react/wallet-services-plugin/hooks/useWalletServicesPlugin.js +11 -0
  131. package/dist/lib.esm/vue/no-modal/Web3AuthProvider.js +12 -3
  132. package/dist/lib.esm/vue/no-modal/composables/useWeb3Auth.js +12 -1
  133. package/dist/lib.esm/vue/wallet-services-plugin/WalletServicesProvider.js +11 -3
  134. package/dist/lib.esm/vue/wallet-services-plugin/composables/useWalletServicesPlugin.js +12 -1
  135. package/dist/noModal.umd.min.js +1 -1
  136. package/package.json +26 -23
  137. package/dist/lib.cjs/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyProvider.js +0 -150
  138. package/dist/lib.cjs/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyUtils.js +0 -94
  139. package/dist/lib.esm/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyProvider.js +0 -148
  140. package/dist/lib.esm/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyUtils.js +0 -92
  141. package/dist/noModal.cjs.js +0 -14673
  142. package/dist/types/base/chain/IChainInterface.d.ts +0 -59
  143. package/dist/types/base/interfaces.d.ts +0 -44
  144. package/dist/types/connectors/auth-connector/interface.d.ts +0 -14
  145. package/dist/types/providers/base-provider/utils.d.ts +0 -2
  146. package/dist/types/providers/solana-provider/providers/index.d.ts +0 -2
  147. package/dist/types/providers/solana-provider/providers/privateKeyProvider/index.d.ts +0 -1
  148. package/dist/types/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyProvider.d.ts +0 -31
  149. package/dist/types/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyUtils.d.ts +0 -7
  150. /package/dist/{types → lib.cjs/types}/base/chain/config.d.ts +0 -0
  151. /package/dist/{types → lib.cjs/types}/base/composables/index.d.ts +0 -0
  152. /package/dist/{types → lib.cjs/types}/base/connector/baseConnector.d.ts +0 -0
  153. /package/dist/{types → lib.cjs/types}/base/connector/index.d.ts +0 -0
  154. /package/dist/{types → lib.cjs/types}/base/connector/utils.d.ts +0 -0
  155. /package/dist/{types → lib.cjs/types}/base/errors/index.d.ts +0 -0
  156. /package/dist/{types → lib.cjs/types}/base/hooks/index.d.ts +0 -0
  157. /package/dist/{types → lib.cjs/types}/base/index.d.ts +0 -0
  158. /package/dist/{types → lib.cjs/types}/base/loglevel.d.ts +0 -0
  159. /package/dist/{types → lib.cjs/types}/base/plugin/IPlugin.d.ts +0 -0
  160. /package/dist/{types → lib.cjs/types}/base/plugin/errors.d.ts +0 -0
  161. /package/dist/{types → lib.cjs/types}/base/plugin/index.d.ts +0 -0
  162. /package/dist/{types → lib.cjs/types}/base/provider/IProvider.d.ts +0 -0
  163. /package/dist/{types → lib.cjs/types}/connectors/auth-connector/index.d.ts +0 -0
  164. /package/dist/{types → lib.cjs/types}/connectors/base-evm-connector/baseEvmConnector.d.ts +0 -0
  165. /package/dist/{types → lib.cjs/types}/connectors/base-evm-connector/index.d.ts +0 -0
  166. /package/dist/{types → lib.cjs/types}/connectors/base-solana-connector/baseSolanaConnector.d.ts +0 -0
  167. /package/dist/{types → lib.cjs/types}/connectors/base-solana-connector/index.d.ts +0 -0
  168. /package/dist/{types → lib.cjs/types}/connectors/coinbase-connector/coinbaseConnector.d.ts +0 -0
  169. /package/dist/{types → lib.cjs/types}/connectors/coinbase-connector/index.d.ts +0 -0
  170. /package/dist/{types → lib.cjs/types}/connectors/index.d.ts +0 -0
  171. /package/dist/{types → lib.cjs/types}/connectors/injected-evm-connector/index.d.ts +0 -0
  172. /package/dist/{types → lib.cjs/types}/connectors/injected-evm-connector/injectedEvmConnector.d.ts +0 -0
  173. /package/dist/{types → lib.cjs/types}/connectors/injected-solana-connector/index.d.ts +0 -0
  174. /package/dist/{types → lib.cjs/types}/connectors/injected-solana-connector/utils.d.ts +0 -0
  175. /package/dist/{types → lib.cjs/types}/connectors/injected-solana-connector/walletStandardConnector.d.ts +0 -0
  176. /package/dist/{types → lib.cjs/types}/connectors/wallet-connect-v2-connector/config.d.ts +0 -0
  177. /package/dist/{types → lib.cjs/types}/connectors/wallet-connect-v2-connector/index.d.ts +0 -0
  178. /package/dist/{types → lib.cjs/types}/connectors/wallet-connect-v2-connector/interface.d.ts +0 -0
  179. /package/dist/{types → lib.cjs/types}/connectors/wallet-connect-v2-connector/utils.d.ts +0 -0
  180. /package/dist/{types → lib.cjs/types}/connectors/wallet-connect-v2-connector/walletConnectV2Connector.d.ts +0 -0
  181. /package/dist/{types → lib.cjs/types}/connectors/wallet-connect-v2-connector/walletConnectV2Utils.d.ts +0 -0
  182. /package/dist/{types → lib.cjs/types}/index.d.ts +0 -0
  183. /package/dist/{types → lib.cjs/types}/plugins/index.d.ts +0 -0
  184. /package/dist/{types → lib.cjs/types}/plugins/nft-checkout-plugin/embed.d.ts +0 -0
  185. /package/dist/{types → lib.cjs/types}/plugins/nft-checkout-plugin/enums.d.ts +0 -0
  186. /package/dist/{types → lib.cjs/types}/plugins/nft-checkout-plugin/index.d.ts +0 -0
  187. /package/dist/{types → lib.cjs/types}/plugins/nft-checkout-plugin/plugin.d.ts +0 -0
  188. /package/dist/{types → lib.cjs/types}/plugins/nft-checkout-plugin/utils.d.ts +0 -0
  189. /package/dist/{types → lib.cjs/types}/plugins/wallet-services-plugin/index.d.ts +0 -0
  190. /package/dist/{types → lib.cjs/types}/plugins/wallet-services-plugin/plugin.d.ts +0 -0
  191. /package/dist/{types → lib.cjs/types}/providers/account-abstraction-provider/index.d.ts +0 -0
  192. /package/dist/{types → lib.cjs/types}/providers/account-abstraction-provider/providers/index.d.ts +0 -0
  193. /package/dist/{types → lib.cjs/types}/providers/account-abstraction-provider/providers/smartAccounts/index.d.ts +0 -0
  194. /package/dist/{types → lib.cjs/types}/providers/account-abstraction-provider/providers/utils.d.ts +0 -0
  195. /package/dist/{types → lib.cjs/types}/providers/account-abstraction-provider/rpc/ethRpcMiddlewares.d.ts +0 -0
  196. /package/dist/{types → lib.cjs/types}/providers/account-abstraction-provider/rpc/index.d.ts +0 -0
  197. /package/dist/{types → lib.cjs/types}/providers/base-provider/CommonJRPCProvider.d.ts +0 -0
  198. /package/dist/{types → lib.cjs/types}/providers/base-provider/index.d.ts +0 -0
  199. /package/dist/{types → lib.cjs/types}/providers/base-provider/jrpcClient.d.ts +0 -0
  200. /package/dist/{types → lib.cjs/types}/providers/ethereum-mpc-provider/index.d.ts +0 -0
  201. /package/dist/{types → lib.cjs/types}/providers/ethereum-mpc-provider/providers/index.d.ts +0 -0
  202. /package/dist/{types → lib.cjs/types}/providers/ethereum-mpc-provider/providers/signingProviders/index.d.ts +0 -0
  203. /package/dist/{types → lib.cjs/types}/providers/ethereum-mpc-provider/providers/signingProviders/signingUtils.d.ts +0 -0
  204. /package/dist/{types → lib.cjs/types}/providers/ethereum-mpc-provider/rpc/ethRpcMiddlewares.d.ts +0 -0
  205. /package/dist/{types → lib.cjs/types}/providers/ethereum-mpc-provider/rpc/interfaces.d.ts +0 -0
  206. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/index.d.ts +0 -0
  207. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/providers/converter.d.ts +0 -0
  208. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/providers/index.d.ts +0 -0
  209. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/constants.d.ts +0 -0
  210. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/formatter.d.ts +0 -0
  211. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/index.d.ts +0 -0
  212. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/interfaces.d.ts +0 -0
  213. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/utils.d.ts +0 -0
  214. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/providers/privateKeyProviders/index.d.ts +0 -0
  215. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/providers/utils.d.ts +0 -0
  216. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/rpc/ethRpcMiddlewares.d.ts +0 -0
  217. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/rpc/index.d.ts +0 -0
  218. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/rpc/interfaces.d.ts +0 -0
  219. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/rpc/jrpcClient.d.ts +0 -0
  220. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/rpc/walletMidddleware.d.ts +0 -0
  221. /package/dist/{types → lib.cjs/types}/providers/index.d.ts +0 -0
  222. /package/dist/{types → lib.cjs/types}/providers/solana-provider/index.d.ts +0 -0
  223. /package/dist/{types → lib.cjs/types}/providers/solana-provider/interface.d.ts +0 -0
  224. /package/dist/{types → lib.cjs/types}/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.d.ts +0 -0
  225. /package/dist/{types → lib.cjs/types}/providers/solana-provider/providers/injectedProviders/base/providerHandlers.d.ts +0 -0
  226. /package/dist/{types → lib.cjs/types}/providers/solana-provider/providers/injectedProviders/index.d.ts +0 -0
  227. /package/dist/{types → lib.cjs/types}/providers/solana-provider/providers/injectedProviders/utils.d.ts +0 -0
  228. /package/dist/{types → lib.cjs/types}/providers/solana-provider/providers/injectedProviders/walletStandardProvider.d.ts +0 -0
  229. /package/dist/{types → lib.cjs/types}/providers/solana-provider/rpc/JrpcClient.d.ts +0 -0
  230. /package/dist/{types → lib.cjs/types}/providers/solana-provider/rpc/index.d.ts +0 -0
  231. /package/dist/{types → lib.cjs/types}/providers/solana-provider/rpc/interfaces.d.ts +0 -0
  232. /package/dist/{types → lib.cjs/types}/providers/solana-provider/rpc/solanaRpcMiddlewares.d.ts +0 -0
  233. /package/dist/{types → lib.cjs/types}/providers/solana-provider/solanaWallet.d.ts +0 -0
  234. /package/dist/{types → lib.cjs/types}/providers/xrpl-provider/index.d.ts +0 -0
  235. /package/dist/{types → lib.cjs/types}/providers/xrpl-provider/providers/index.d.ts +0 -0
  236. /package/dist/{types → lib.cjs/types}/providers/xrpl-provider/providers/privateKeyProviders/constants.d.ts +0 -0
  237. /package/dist/{types → lib.cjs/types}/providers/xrpl-provider/providers/privateKeyProviders/index.d.ts +0 -0
  238. /package/dist/{types → lib.cjs/types}/providers/xrpl-provider/providers/privateKeyProviders/interface.d.ts +0 -0
  239. /package/dist/{types → lib.cjs/types}/providers/xrpl-provider/providers/privateKeyProviders/xrplWalletUtils.d.ts +0 -0
  240. /package/dist/{types → lib.cjs/types}/providers/xrpl-provider/rpc/JrpcClient.d.ts +0 -0
  241. /package/dist/{types → lib.cjs/types}/providers/xrpl-provider/rpc/xrplRpcMiddlewares.d.ts +0 -0
  242. /package/dist/{types → lib.cjs/types}/react/index.d.ts +0 -0
  243. /package/dist/{types → lib.cjs/types}/react/no-modal/Web3AuthInnerContext.d.ts +0 -0
  244. /package/dist/{types → lib.cjs/types}/react/no-modal/Web3AuthProvider.d.ts +0 -0
  245. /package/dist/{types → lib.cjs/types}/react/no-modal/hooks/index.d.ts +0 -0
  246. /package/dist/{types → lib.cjs/types}/react/no-modal/hooks/useWeb3Auth.d.ts +0 -0
  247. /package/dist/{types → lib.cjs/types}/react/no-modal/index.d.ts +0 -0
  248. /package/dist/{types → lib.cjs/types}/react/no-modal/interfaces.d.ts +0 -0
  249. /package/dist/{types → lib.cjs/types}/react/wallet-services-plugin/WalletServicesContext.d.ts +0 -0
  250. /package/dist/{types → lib.cjs/types}/react/wallet-services-plugin/WalletServicesProvider.d.ts +0 -0
  251. /package/dist/{types → lib.cjs/types}/react/wallet-services-plugin/hooks/index.d.ts +0 -0
  252. /package/dist/{types → lib.cjs/types}/react/wallet-services-plugin/hooks/useWalletServicesPlugin.d.ts +0 -0
  253. /package/dist/{types → lib.cjs/types}/react/wallet-services-plugin/index.d.ts +0 -0
  254. /package/dist/{types → lib.cjs/types}/react/wallet-services-plugin/interfaces.d.ts +0 -0
  255. /package/dist/{types → lib.cjs/types}/vue/index.d.ts +0 -0
  256. /package/dist/{types → lib.cjs/types}/vue/no-modal/Web3AuthProvider.d.ts +0 -0
  257. /package/dist/{types → lib.cjs/types}/vue/no-modal/composables/index.d.ts +0 -0
  258. /package/dist/{types → lib.cjs/types}/vue/no-modal/composables/useWeb3Auth.d.ts +0 -0
  259. /package/dist/{types → lib.cjs/types}/vue/no-modal/index.d.ts +0 -0
  260. /package/dist/{types → lib.cjs/types}/vue/no-modal/interfaces.d.ts +0 -0
  261. /package/dist/{types → lib.cjs/types}/vue/wallet-services-plugin/WalletServicesProvider.d.ts +0 -0
  262. /package/dist/{types → lib.cjs/types}/vue/wallet-services-plugin/composables/index.d.ts +0 -0
  263. /package/dist/{types → lib.cjs/types}/vue/wallet-services-plugin/composables/useWalletServicesPlugin.d.ts +0 -0
  264. /package/dist/{types → lib.cjs/types}/vue/wallet-services-plugin/context.d.ts +0 -0
  265. /package/dist/{types → lib.cjs/types}/vue/wallet-services-plugin/index.d.ts +0 -0
  266. /package/dist/{types → lib.cjs/types}/vue/wallet-services-plugin/interfaces.d.ts +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@web3auth/no-modal",
3
- "version": "10.0.0-alpha.1",
3
+ "version": "10.0.0-beta.0",
4
4
  "description": "Multi chain wallet aggregator for web3Auth",
5
5
  "keywords": [
6
6
  "web3Auth/no-modal",
@@ -15,7 +15,7 @@
15
15
  "module": "dist/lib.esm/index.js",
16
16
  "unpkg": "dist/noModal.umd.min.js",
17
17
  "jsdelivr": "dist/noModal.umd.min.js",
18
- "types": "dist/types/index.d.ts",
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",
@@ -50,26 +50,29 @@
50
50
  },
51
51
  "dependencies": {
52
52
  "@ethereumjs/util": "^9.1.0",
53
+ "@metamask/sdk": "^0.32.1",
53
54
  "@solana/wallet-standard-features": "^1.3.0",
54
55
  "@solana/web3.js": "^1.98.0",
55
- "@toruslabs/base-controllers": "^7.2.1",
56
- "@toruslabs/constants": "^14.2.0",
57
- "@toruslabs/eccrypto": "^5.0.4",
58
- "@toruslabs/ethereum-controllers": "^7.2.1",
59
- "@toruslabs/http-helpers": "^7.0.0",
56
+ "@toruslabs/base-controllers": "^8.0.0",
57
+ "@toruslabs/bs58": "^1.0.0",
58
+ "@toruslabs/constants": "^15.0.0",
59
+ "@toruslabs/eccrypto": "^6.0.2",
60
+ "@toruslabs/ethereum-controllers": "^8.1.0",
61
+ "@toruslabs/http-helpers": "^8.1.1",
62
+ "@toruslabs/secure-pub-sub": "3.0.2",
60
63
  "@toruslabs/tweetnacl-js": "^1.0.4",
61
64
  "@wallet-standard/app": "^1.1.0",
62
65
  "@wallet-standard/base": "^1.1.0",
63
66
  "@wallet-standard/features": "^1.1.0",
64
- "@walletconnect/sign-client": "^2.17.3",
65
- "@walletconnect/types": "^2.17.3",
66
- "@walletconnect/utils": "^2.17.3",
67
- "@web3auth/auth": "^9.6.4",
68
- "@web3auth/ws-embed": "^4.0.4",
67
+ "@walletconnect/sign-client": "^2.19.1",
68
+ "@walletconnect/types": "^2.19.1",
69
+ "@walletconnect/utils": "^2.19.1",
70
+ "@web3auth/auth": "^10.2.3",
71
+ "@web3auth/ws-embed": "^5.0.0",
69
72
  "assert": "^2.1.0",
70
73
  "bignumber.js": "^9.1.2",
71
74
  "bn.js": "^5.2.1",
72
- "bs58": "^5.0.0",
75
+ "bowser": "^2.11.0",
73
76
  "deepmerge": "^4.3.1",
74
77
  "ethers": "^6.13.5",
75
78
  "json-rpc-random-id": "^1.0.1",
@@ -77,14 +80,14 @@
77
80
  "jwt-decode": "^4.0.0",
78
81
  "loglevel": "^1.9.2",
79
82
  "mipd": "^0.0.7",
80
- "permissionless": "^0.2.30",
83
+ "permissionless": "^0.2.38",
81
84
  "ripple-keypairs": "^1.3.1",
82
85
  "ts-custom-error": "^3.3.1",
83
- "viem": "^2.23.0",
86
+ "viem": "^2.23.14",
84
87
  "xrpl": "^2.14.0"
85
88
  },
86
89
  "devDependencies": {
87
- "@coinbase/wallet-sdk": "^4.2.x",
90
+ "@coinbase/wallet-sdk": "^4.3.x",
88
91
  "@types/elliptic": "6.4.18",
89
92
  "@types/json-rpc-random-id": "^1.0.3",
90
93
  "react": "^18.x",
@@ -94,26 +97,26 @@
94
97
  ".": {
95
98
  "import": "./dist/lib.esm/index.js",
96
99
  "require": "./dist/lib.cjs/index.js",
97
- "types": "./dist/types/index.d.ts"
100
+ "types": "./dist/lib.cjs/types/index.d.ts"
98
101
  },
99
102
  "./react": {
100
103
  "import": "./dist/lib.esm/react/index.js",
101
104
  "require": "./dist/lib.cjs/react/index.js",
102
- "types": "./dist/types/react/index.d.ts"
105
+ "types": "./dist/lib.cjs/types/react/index.d.ts"
103
106
  },
104
107
  "./vue": {
105
108
  "import": "./dist/lib.esm/vue/index.js",
106
109
  "require": "./dist/lib.cjs/vue/index.js",
107
- "types": "./dist/types/vue/index.d.ts"
110
+ "types": "./dist/lib.cjs/types/vue/index.d.ts"
108
111
  }
109
112
  },
110
113
  "typesVersions": {
111
114
  "*": {
112
115
  "react": [
113
- "./dist/types/react/index.d.ts"
116
+ "./dist/lib.cjs/types/react/index.d.ts"
114
117
  ],
115
118
  "vue": [
116
- "./dist/types/vue/index.d.ts"
119
+ "./dist/lib.cjs/types/vue/index.d.ts"
117
120
  ]
118
121
  }
119
122
  },
@@ -134,8 +137,8 @@
134
137
  "url": "https://github.com/Web3Auth/Web3Auth/issues"
135
138
  },
136
139
  "engines": {
137
- "node": ">=18.x",
140
+ "node": ">=20.x",
138
141
  "npm": ">=9.x"
139
142
  },
140
- "gitHead": "d22af091d1b195115c5c570be82c64ee92353245"
143
+ "gitHead": "827d490e28e2c77805995cbb2db5eb849350a7c8"
141
144
  }
@@ -1,150 +0,0 @@
1
- 'use strict';
2
-
3
- var _defineProperty = require('@babel/runtime/helpers/defineProperty');
4
- var auth = require('@web3auth/auth');
5
- var IChainInterface = require('../../../../base/chain/IChainInterface.js');
6
- var index = require('../../../../base/errors/index.js');
7
- var baseProvider = require('../../../base-provider/baseProvider.js');
8
- var JrpcClient = require('../../rpc/JrpcClient.js');
9
- var solanaRpcMiddlewares = require('../../rpc/solanaRpcMiddlewares.js');
10
- var solanaPrivateKeyUtils = require('./solanaPrivateKeyUtils.js');
11
-
12
- var _SolanaPrivateKeyProvider;
13
- class SolanaPrivateKeyProvider extends baseProvider.BaseProvider {
14
- constructor({
15
- config,
16
- state
17
- }) {
18
- super({
19
- config,
20
- state
21
- });
22
- _defineProperty(this, "PROVIDER_CHAIN_NAMESPACE", IChainInterface.CHAIN_NAMESPACES.SOLANA);
23
- }
24
- async enable() {
25
- if (!this.state.privateKey) throw auth.providerErrors.custom({
26
- message: "Private key is not found in state, plz pass it in constructor state param",
27
- code: 4902
28
- });
29
- await this.setupProvider(this.state.privateKey, this.chainId);
30
- return this._providerEngineProxy.request({
31
- method: "eth_accounts"
32
- });
33
- }
34
- getEd25519Key(privateKey) {
35
- return auth.getED25519Key(privateKey).sk.toString("hex").padStart(128, "0");
36
- }
37
- async setupProvider(privKey, chainId) {
38
- const chain = this.getChain(chainId);
39
- const {
40
- chainNamespace
41
- } = chain;
42
- if (chainNamespace !== this.PROVIDER_CHAIN_NAMESPACE) throw index.WalletInitializationError.incompatibleChainNameSpace("Invalid chain namespace");
43
- const providerHandlers = await solanaPrivateKeyUtils.getProviderHandlers({
44
- privKey,
45
- getProviderEngineProxy: this.getProviderEngineProxy.bind(this),
46
- keyExportEnabled: this.config.keyExportEnabled
47
- });
48
- const solanaMiddleware = solanaRpcMiddlewares.createSolanaMiddleware(providerHandlers);
49
- const engine = new auth.JRPCEngine();
50
- const {
51
- networkMiddleware
52
- } = JrpcClient.createSolanaJsonRpcClient(chain);
53
- engine.push(this.getChainSwitchMiddleware());
54
- engine.push(this.getAccountMiddleware());
55
- engine.push(solanaMiddleware);
56
- engine.push(networkMiddleware);
57
- const provider = auth.providerFromEngine(engine);
58
- this.updateProviderEngineProxy(provider);
59
- await this.lookupNetwork(chainId);
60
- this.emit("chainChanged", chainId);
61
- this.emit("connect", {
62
- chainId
63
- });
64
- this.update({
65
- chainId
66
- });
67
- }
68
- async updateAccount(params) {
69
- if (!this._providerEngineProxy) throw auth.providerErrors.custom({
70
- message: "Provider is not initialized",
71
- code: 4902
72
- });
73
- const existingKey = await this._providerEngineProxy.request({
74
- method: "solanaPrivateKey"
75
- });
76
- if (existingKey !== params.privateKey) {
77
- await this.setupProvider(params.privateKey, this.chainId);
78
- const accounts = await this._providerEngineProxy.request({
79
- method: "requestAccounts"
80
- });
81
- this.emit("accountsChanged", accounts);
82
- }
83
- }
84
- async switchChain(params) {
85
- if (!this._providerEngineProxy) throw auth.providerErrors.custom({
86
- message: "Provider is not initialized",
87
- code: 4902
88
- });
89
- const newChainId = params.chainId;
90
- if (this.chainId === newChainId) return;
91
- this.update({
92
- chainId: "loading"
93
- });
94
- const privKey = await this._providerEngineProxy.request({
95
- method: "solanaPrivateKey"
96
- });
97
- await this.setupProvider(privKey, newChainId);
98
- }
99
- async lookupNetwork(chainId) {
100
- if (!this._providerEngineProxy) throw auth.providerErrors.custom({
101
- message: "Provider is not initialized",
102
- code: 4902
103
- });
104
- const health = await this._providerEngineProxy.request({
105
- method: "getHealth",
106
- params: []
107
- });
108
- const chain = this.getChain(chainId);
109
- if (health !== "ok") throw index.WalletInitializationError.rpcConnectionError(`Failed to lookup network for following rpc target: ${chain.rpcTarget}`);
110
- }
111
- getChainSwitchMiddleware() {
112
- const chainSwitchHandlers = {
113
- switchSolanaChain: async req => {
114
- if (!req.params) throw auth.rpcErrors.invalidParams("Missing request params");
115
- if (!req.params.chainId) throw auth.rpcErrors.invalidParams("Missing chainId");
116
- await this.switchChain(req.params);
117
- }
118
- };
119
- const chainSwitchMiddleware = solanaRpcMiddlewares.createSolanaChainSwitchMiddleware(chainSwitchHandlers);
120
- return chainSwitchMiddleware;
121
- }
122
- getAccountMiddleware() {
123
- const accountHandlers = {
124
- updatePrivatekey: async req => {
125
- if (!req.params) throw auth.rpcErrors.invalidParams("Missing request params");
126
- if (!req.params.privateKey) throw auth.rpcErrors.invalidParams("Missing privateKey");
127
- const {
128
- privateKey
129
- } = req.params;
130
- await this.updateAccount({
131
- privateKey
132
- });
133
- }
134
- };
135
- return solanaRpcMiddlewares.createSolanaAccountMiddleware(accountHandlers);
136
- }
137
- }
138
- _SolanaPrivateKeyProvider = SolanaPrivateKeyProvider;
139
- _defineProperty(SolanaPrivateKeyProvider, "getProviderInstance", async params => {
140
- const providerFactory = new _SolanaPrivateKeyProvider({
141
- config: {
142
- chain: params.chain,
143
- chains: params.chains
144
- }
145
- });
146
- await providerFactory.setupProvider(params.privKey, params.chain.chainId);
147
- return providerFactory;
148
- });
149
-
150
- exports.SolanaPrivateKeyProvider = SolanaPrivateKeyProvider;
@@ -1,94 +0,0 @@
1
- 'use strict';
2
-
3
- var web3_js = require('@solana/web3.js');
4
- var tweetnaclJs = require('@toruslabs/tweetnacl-js');
5
- var auth = require('@web3auth/auth');
6
- var bs58 = require('bs58');
7
- var index = require('../../../../base/errors/index.js');
8
-
9
- async function getProviderHandlers({
10
- privKey,
11
- keyExportEnabled,
12
- getProviderEngineProxy
13
- }) {
14
- const keyPairGenerator = () => {
15
- return web3_js.Keypair.fromSecretKey(Buffer.from(privKey, "hex"));
16
- };
17
- if (typeof privKey !== "string") throw index.WalletInitializationError.invalidParams("privKey must be a string");
18
- const keyPair = keyPairGenerator();
19
- const providerHandlers = {
20
- requestAccounts: async () => {
21
- return [keyPair.publicKey.toBase58()];
22
- },
23
- getAccounts: async () => [keyPair.publicKey.toBase58()],
24
- getPublicKey: async () => keyPair.publicKey.toBase58(),
25
- getPrivateKey: async () => {
26
- if (!keyExportEnabled) {
27
- throw auth.providerErrors.custom({
28
- message: "Private key export is disabled",
29
- code: 4902
30
- });
31
- }
32
- return privKey;
33
- },
34
- getSecretKey: async () => bs58.encode(keyPair.secretKey),
35
- signTransaction: async req => {
36
- var _req$params;
37
- if (!((_req$params = req.params) !== null && _req$params !== void 0 && _req$params.message)) {
38
- throw auth.rpcErrors.invalidParams("message");
39
- }
40
- const serializedTransaction = req.params.message;
41
- const transaction = web3_js.VersionedTransaction.deserialize(Buffer.from(serializedTransaction, "base64"));
42
- transaction.sign([keyPair]);
43
- return bs58.encode(transaction.signatures[0]);
44
- },
45
- signMessage: async req => {
46
- var _req$params2;
47
- if (!((_req$params2 = req.params) !== null && _req$params2 !== void 0 && _req$params2.data)) {
48
- throw auth.rpcErrors.invalidParams("data");
49
- }
50
- const signedMsg = tweetnaclJs.sign.detached(Buffer.from(req.params.data, "utf-8"), keyPair.secretKey);
51
- return bs58.encode(signedMsg);
52
- },
53
- signAndSendTransaction: async req => {
54
- var _req$params3;
55
- if (!((_req$params3 = req.params) !== null && _req$params3 !== void 0 && _req$params3.message)) {
56
- throw auth.rpcErrors.invalidParams("message");
57
- }
58
- const _providerEngineProxy = getProviderEngineProxy();
59
- if (!_providerEngineProxy) throw auth.providerErrors.custom({
60
- message: "Provider is not initialized",
61
- code: 4902
62
- });
63
- const serializedTransaction = req.params.message;
64
- const transaction = web3_js.VersionedTransaction.deserialize(Buffer.from(serializedTransaction, "base64"));
65
- transaction.sign([keyPair]);
66
- const sig = await _providerEngineProxy.request({
67
- method: "sendTransaction",
68
- params: [Buffer.from(transaction.serialize()).toString("base64"), {
69
- encoding: "base64",
70
- preflightCommitment: "confirmed"
71
- }]
72
- });
73
- return sig;
74
- },
75
- signAllTransactions: async req => {
76
- var _req$params4, _req$params5, _req$params6;
77
- if (!((_req$params4 = req.params) !== null && _req$params4 !== void 0 && _req$params4.message) || !((_req$params5 = req.params) !== null && _req$params5 !== void 0 && _req$params5.message.length)) {
78
- throw auth.rpcErrors.invalidParams("message");
79
- }
80
- const txns = (_req$params6 = req.params) === null || _req$params6 === void 0 ? void 0 : _req$params6.message;
81
- const res = [];
82
- for (const tx of txns || []) {
83
- const serializedTransaction = tx;
84
- const transaction = web3_js.VersionedTransaction.deserialize(Buffer.from(serializedTransaction, "base64"));
85
- transaction.sign([keyPair]);
86
- res.push(Buffer.from(transaction.serialize()).toString("base64"));
87
- }
88
- return res;
89
- }
90
- };
91
- return providerHandlers;
92
- }
93
-
94
- exports.getProviderHandlers = getProviderHandlers;
@@ -1,148 +0,0 @@
1
- import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
- import { providerErrors, getED25519Key, JRPCEngine, providerFromEngine, rpcErrors } from '@web3auth/auth';
3
- import { CHAIN_NAMESPACES } from '../../../../base/chain/IChainInterface.js';
4
- import { WalletInitializationError } from '../../../../base/errors/index.js';
5
- import { BaseProvider } from '../../../base-provider/baseProvider.js';
6
- import { createSolanaJsonRpcClient } from '../../rpc/JrpcClient.js';
7
- import { createSolanaMiddleware, createSolanaChainSwitchMiddleware, createSolanaAccountMiddleware } from '../../rpc/solanaRpcMiddlewares.js';
8
- import { getProviderHandlers } from './solanaPrivateKeyUtils.js';
9
-
10
- var _SolanaPrivateKeyProvider;
11
- class SolanaPrivateKeyProvider extends BaseProvider {
12
- constructor({
13
- config,
14
- state
15
- }) {
16
- super({
17
- config,
18
- state
19
- });
20
- _defineProperty(this, "PROVIDER_CHAIN_NAMESPACE", CHAIN_NAMESPACES.SOLANA);
21
- }
22
- async enable() {
23
- if (!this.state.privateKey) throw providerErrors.custom({
24
- message: "Private key is not found in state, plz pass it in constructor state param",
25
- code: 4902
26
- });
27
- await this.setupProvider(this.state.privateKey, this.chainId);
28
- return this._providerEngineProxy.request({
29
- method: "eth_accounts"
30
- });
31
- }
32
- getEd25519Key(privateKey) {
33
- return getED25519Key(privateKey).sk.toString("hex").padStart(128, "0");
34
- }
35
- async setupProvider(privKey, chainId) {
36
- const chain = this.getChain(chainId);
37
- const {
38
- chainNamespace
39
- } = chain;
40
- if (chainNamespace !== this.PROVIDER_CHAIN_NAMESPACE) throw WalletInitializationError.incompatibleChainNameSpace("Invalid chain namespace");
41
- const providerHandlers = await getProviderHandlers({
42
- privKey,
43
- getProviderEngineProxy: this.getProviderEngineProxy.bind(this),
44
- keyExportEnabled: this.config.keyExportEnabled
45
- });
46
- const solanaMiddleware = createSolanaMiddleware(providerHandlers);
47
- const engine = new JRPCEngine();
48
- const {
49
- networkMiddleware
50
- } = createSolanaJsonRpcClient(chain);
51
- engine.push(this.getChainSwitchMiddleware());
52
- engine.push(this.getAccountMiddleware());
53
- engine.push(solanaMiddleware);
54
- engine.push(networkMiddleware);
55
- const provider = providerFromEngine(engine);
56
- this.updateProviderEngineProxy(provider);
57
- await this.lookupNetwork(chainId);
58
- this.emit("chainChanged", chainId);
59
- this.emit("connect", {
60
- chainId
61
- });
62
- this.update({
63
- chainId
64
- });
65
- }
66
- async updateAccount(params) {
67
- if (!this._providerEngineProxy) throw providerErrors.custom({
68
- message: "Provider is not initialized",
69
- code: 4902
70
- });
71
- const existingKey = await this._providerEngineProxy.request({
72
- method: "solanaPrivateKey"
73
- });
74
- if (existingKey !== params.privateKey) {
75
- await this.setupProvider(params.privateKey, this.chainId);
76
- const accounts = await this._providerEngineProxy.request({
77
- method: "requestAccounts"
78
- });
79
- this.emit("accountsChanged", accounts);
80
- }
81
- }
82
- async switchChain(params) {
83
- if (!this._providerEngineProxy) throw providerErrors.custom({
84
- message: "Provider is not initialized",
85
- code: 4902
86
- });
87
- const newChainId = params.chainId;
88
- if (this.chainId === newChainId) return;
89
- this.update({
90
- chainId: "loading"
91
- });
92
- const privKey = await this._providerEngineProxy.request({
93
- method: "solanaPrivateKey"
94
- });
95
- await this.setupProvider(privKey, newChainId);
96
- }
97
- async lookupNetwork(chainId) {
98
- if (!this._providerEngineProxy) throw providerErrors.custom({
99
- message: "Provider is not initialized",
100
- code: 4902
101
- });
102
- const health = await this._providerEngineProxy.request({
103
- method: "getHealth",
104
- params: []
105
- });
106
- const chain = this.getChain(chainId);
107
- if (health !== "ok") throw WalletInitializationError.rpcConnectionError(`Failed to lookup network for following rpc target: ${chain.rpcTarget}`);
108
- }
109
- getChainSwitchMiddleware() {
110
- const chainSwitchHandlers = {
111
- switchSolanaChain: async req => {
112
- if (!req.params) throw rpcErrors.invalidParams("Missing request params");
113
- if (!req.params.chainId) throw rpcErrors.invalidParams("Missing chainId");
114
- await this.switchChain(req.params);
115
- }
116
- };
117
- const chainSwitchMiddleware = createSolanaChainSwitchMiddleware(chainSwitchHandlers);
118
- return chainSwitchMiddleware;
119
- }
120
- getAccountMiddleware() {
121
- const accountHandlers = {
122
- updatePrivatekey: async req => {
123
- if (!req.params) throw rpcErrors.invalidParams("Missing request params");
124
- if (!req.params.privateKey) throw rpcErrors.invalidParams("Missing privateKey");
125
- const {
126
- privateKey
127
- } = req.params;
128
- await this.updateAccount({
129
- privateKey
130
- });
131
- }
132
- };
133
- return createSolanaAccountMiddleware(accountHandlers);
134
- }
135
- }
136
- _SolanaPrivateKeyProvider = SolanaPrivateKeyProvider;
137
- _defineProperty(SolanaPrivateKeyProvider, "getProviderInstance", async params => {
138
- const providerFactory = new _SolanaPrivateKeyProvider({
139
- config: {
140
- chain: params.chain,
141
- chains: params.chains
142
- }
143
- });
144
- await providerFactory.setupProvider(params.privKey, params.chain.chainId);
145
- return providerFactory;
146
- });
147
-
148
- export { SolanaPrivateKeyProvider };
@@ -1,92 +0,0 @@
1
- import { Keypair, VersionedTransaction } from '@solana/web3.js';
2
- import { sign } from '@toruslabs/tweetnacl-js';
3
- import { rpcErrors, providerErrors } from '@web3auth/auth';
4
- import bs58 from 'bs58';
5
- import { WalletInitializationError } from '../../../../base/errors/index.js';
6
-
7
- async function getProviderHandlers({
8
- privKey,
9
- keyExportEnabled,
10
- getProviderEngineProxy
11
- }) {
12
- const keyPairGenerator = () => {
13
- return Keypair.fromSecretKey(Buffer.from(privKey, "hex"));
14
- };
15
- if (typeof privKey !== "string") throw WalletInitializationError.invalidParams("privKey must be a string");
16
- const keyPair = keyPairGenerator();
17
- const providerHandlers = {
18
- requestAccounts: async () => {
19
- return [keyPair.publicKey.toBase58()];
20
- },
21
- getAccounts: async () => [keyPair.publicKey.toBase58()],
22
- getPublicKey: async () => keyPair.publicKey.toBase58(),
23
- getPrivateKey: async () => {
24
- if (!keyExportEnabled) {
25
- throw providerErrors.custom({
26
- message: "Private key export is disabled",
27
- code: 4902
28
- });
29
- }
30
- return privKey;
31
- },
32
- getSecretKey: async () => bs58.encode(keyPair.secretKey),
33
- signTransaction: async req => {
34
- var _req$params;
35
- if (!((_req$params = req.params) !== null && _req$params !== void 0 && _req$params.message)) {
36
- throw rpcErrors.invalidParams("message");
37
- }
38
- const serializedTransaction = req.params.message;
39
- const transaction = VersionedTransaction.deserialize(Buffer.from(serializedTransaction, "base64"));
40
- transaction.sign([keyPair]);
41
- return bs58.encode(transaction.signatures[0]);
42
- },
43
- signMessage: async req => {
44
- var _req$params2;
45
- if (!((_req$params2 = req.params) !== null && _req$params2 !== void 0 && _req$params2.data)) {
46
- throw rpcErrors.invalidParams("data");
47
- }
48
- const signedMsg = sign.detached(Buffer.from(req.params.data, "utf-8"), keyPair.secretKey);
49
- return bs58.encode(signedMsg);
50
- },
51
- signAndSendTransaction: async req => {
52
- var _req$params3;
53
- if (!((_req$params3 = req.params) !== null && _req$params3 !== void 0 && _req$params3.message)) {
54
- throw rpcErrors.invalidParams("message");
55
- }
56
- const _providerEngineProxy = getProviderEngineProxy();
57
- if (!_providerEngineProxy) throw providerErrors.custom({
58
- message: "Provider is not initialized",
59
- code: 4902
60
- });
61
- const serializedTransaction = req.params.message;
62
- const transaction = VersionedTransaction.deserialize(Buffer.from(serializedTransaction, "base64"));
63
- transaction.sign([keyPair]);
64
- const sig = await _providerEngineProxy.request({
65
- method: "sendTransaction",
66
- params: [Buffer.from(transaction.serialize()).toString("base64"), {
67
- encoding: "base64",
68
- preflightCommitment: "confirmed"
69
- }]
70
- });
71
- return sig;
72
- },
73
- signAllTransactions: async req => {
74
- var _req$params4, _req$params5, _req$params6;
75
- if (!((_req$params4 = req.params) !== null && _req$params4 !== void 0 && _req$params4.message) || !((_req$params5 = req.params) !== null && _req$params5 !== void 0 && _req$params5.message.length)) {
76
- throw rpcErrors.invalidParams("message");
77
- }
78
- const txns = (_req$params6 = req.params) === null || _req$params6 === void 0 ? void 0 : _req$params6.message;
79
- const res = [];
80
- for (const tx of txns || []) {
81
- const serializedTransaction = tx;
82
- const transaction = VersionedTransaction.deserialize(Buffer.from(serializedTransaction, "base64"));
83
- transaction.sign([keyPair]);
84
- res.push(Buffer.from(transaction.serialize()).toString("base64"));
85
- }
86
- return res;
87
- }
88
- };
89
- return providerHandlers;
90
- }
91
-
92
- export { getProviderHandlers };