@web3auth/no-modal 9.6.0 → 10.0.0-alpha.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 (351) hide show
  1. package/dist/757.noModal.cjs.js +226 -0
  2. package/dist/lib.cjs/adapters/auth-adapter/authAdapter.js +262 -0
  3. package/dist/lib.cjs/adapters/auth-adapter/config.js +17 -0
  4. package/dist/lib.cjs/adapters/base-evm-adapter/baseEvmAdapter.js +72 -0
  5. package/dist/lib.cjs/adapters/base-solana-adapter/baseSolanaAdapter.js +76 -0
  6. package/dist/lib.cjs/adapters/coinbase-adapter/coinbaseAdapter.js +156 -0
  7. package/dist/lib.cjs/adapters/default-evm-adapter/index.js +40 -0
  8. package/dist/lib.cjs/adapters/default-evm-adapter/injectedAdapters.js +42 -0
  9. package/dist/lib.cjs/adapters/default-evm-adapter/injectedEvmAdapter.js +160 -0
  10. package/dist/lib.cjs/adapters/default-solana-adapter/index.js +40 -0
  11. package/dist/lib.cjs/adapters/default-solana-adapter/injectedAdapters.js +53 -0
  12. package/dist/lib.cjs/adapters/default-solana-adapter/utils.js +16 -0
  13. package/dist/lib.cjs/adapters/default-solana-adapter/walletStandardAdapter.js +138 -0
  14. package/dist/lib.cjs/adapters/default-solana-adapter/walletStandardHandler.js +77 -0
  15. package/dist/lib.cjs/adapters/wallet-connect-v2-adapter/WalletConnectV2Provider.js +278 -0
  16. package/dist/lib.cjs/adapters/wallet-connect-v2-adapter/config.js +183 -0
  17. package/dist/lib.cjs/adapters/wallet-connect-v2-adapter/walletConnectV2Utils.js +165 -0
  18. package/dist/lib.cjs/adapters/wallet-connect-v2-adapter/walletConnectV2adapter.js +376 -0
  19. package/dist/lib.cjs/base/adapter/baseAdapter.js +117 -0
  20. package/dist/lib.cjs/base/adapter/constants.js +24 -0
  21. package/dist/lib.cjs/base/adapter/utils.js +66 -0
  22. package/dist/lib.cjs/base/chain/IChainInterface.js +22 -0
  23. package/dist/lib.cjs/base/chain/config.js +281 -0
  24. package/dist/lib.cjs/base/composables/index.js +5 -0
  25. package/dist/lib.cjs/base/errors/index.js +244 -0
  26. package/dist/lib.cjs/base/loglevel.js +7 -0
  27. package/dist/lib.cjs/base/plugin/IPlugin.js +31 -0
  28. package/dist/lib.cjs/base/plugin/errors.js +107 -0
  29. package/dist/lib.cjs/base/provider/IProvider.js +8 -0
  30. package/dist/lib.cjs/base/utils.js +56 -0
  31. package/dist/lib.cjs/base/wallet/index.js +31 -0
  32. package/dist/lib.cjs/index.js +200 -0
  33. package/dist/lib.cjs/noModal.js +98 -90
  34. package/dist/lib.cjs/plugins/nft-checkout-plugin/embed.js +134 -0
  35. package/dist/lib.cjs/plugins/nft-checkout-plugin/enums.js +24 -0
  36. package/dist/lib.cjs/plugins/nft-checkout-plugin/plugin.js +71 -0
  37. package/dist/lib.cjs/plugins/nft-checkout-plugin/utils.js +18 -0
  38. package/dist/lib.cjs/plugins/wallet-services-plugin/plugin.js +285 -0
  39. package/dist/lib.cjs/providers/account-abstraction-provider/providers/AccountAbstractionProvider.js +164 -0
  40. package/dist/lib.cjs/providers/account-abstraction-provider/providers/smartAccounts/BiconomySmartAccount.js +29 -0
  41. package/dist/lib.cjs/providers/account-abstraction-provider/providers/smartAccounts/KernelSmartAccount.js +22 -0
  42. package/dist/lib.cjs/providers/account-abstraction-provider/providers/smartAccounts/NexusSmartAccount.js +30 -0
  43. package/dist/lib.cjs/providers/account-abstraction-provider/providers/smartAccounts/SafeSmartAccount.js +30 -0
  44. package/dist/lib.cjs/providers/account-abstraction-provider/providers/smartAccounts/TrustSmartAccount.js +29 -0
  45. package/dist/lib.cjs/providers/account-abstraction-provider/providers/smartAccounts/constants.js +11 -0
  46. package/dist/lib.cjs/providers/account-abstraction-provider/providers/utils.js +134 -0
  47. package/dist/lib.cjs/providers/account-abstraction-provider/rpc/ethRpcMiddlewares.js +174 -0
  48. package/dist/lib.cjs/providers/base-provider/CommonJRPCProvider.js +79 -0
  49. package/dist/lib.cjs/providers/base-provider/baseProvider.js +127 -0
  50. package/dist/lib.cjs/providers/base-provider/commonPrivateKeyProvider.js +89 -0
  51. package/dist/lib.cjs/providers/base-provider/jrpcClient.js +41 -0
  52. package/dist/lib.cjs/providers/base-provider/utils.js +12 -0
  53. package/dist/lib.cjs/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.js +199 -0
  54. package/dist/lib.cjs/providers/ethereum-mpc-provider/providers/signingProviders/signingUtils.js +165 -0
  55. package/dist/lib.cjs/providers/ethereum-mpc-provider/rpc/ethRpcMiddlewares.js +22 -0
  56. package/dist/lib.cjs/providers/ethereum-provider/providers/converter.js +89 -0
  57. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/EthereumPrivateKeyProvider.js +185 -0
  58. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/constants.js +27 -0
  59. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/formatter.js +380 -0
  60. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/interfaces.js +10 -0
  61. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/utils.js +94 -0
  62. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/ethPrivatekeyUtils.js +106 -0
  63. package/dist/lib.cjs/providers/ethereum-provider/providers/utils.js +29 -0
  64. package/dist/lib.cjs/providers/ethereum-provider/rpc/ethRpcMiddlewares.js +75 -0
  65. package/dist/lib.cjs/providers/ethereum-provider/rpc/jrpcClient.js +41 -0
  66. package/dist/lib.cjs/providers/ethereum-provider/rpc/walletMidddleware.js +179 -0
  67. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.js +51 -0
  68. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/base/providerHandlers.js +47 -0
  69. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/injectedProviderProxy.js +12 -0
  70. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/torus/providerHandlers.js +75 -0
  71. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/torus/torusInjectedProvider.js +109 -0
  72. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/walletStandardProvider.js +12 -0
  73. package/dist/lib.cjs/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyProvider.js +180 -0
  74. package/dist/lib.cjs/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyUtils.js +103 -0
  75. package/dist/lib.cjs/providers/solana-provider/rpc/JrpcClient.js +47 -0
  76. package/dist/lib.cjs/providers/solana-provider/rpc/solanaRpcMiddlewares.js +97 -0
  77. package/dist/lib.cjs/providers/solana-provider/solanaWallet.js +62 -0
  78. package/dist/lib.cjs/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.js +158 -0
  79. package/dist/lib.cjs/providers/xrpl-provider/providers/privateKeyProviders/xrplWalletUtils.js +89 -0
  80. package/dist/lib.cjs/providers/xrpl-provider/rpc/JrpcClient.js +48 -0
  81. package/dist/lib.cjs/providers/xrpl-provider/rpc/xrplRpcMiddlewares.js +73 -0
  82. package/dist/lib.cjs/react/index.js +16 -0
  83. package/dist/lib.cjs/react/no-modal/Web3AuthInnerContext.js +216 -0
  84. package/dist/lib.cjs/react/no-modal/Web3AuthProvider.js +15 -0
  85. package/dist/lib.cjs/react/no-modal/hooks/useWeb3Auth.js +15 -0
  86. package/dist/lib.cjs/react/wallet-services-plugin/WalletServicesContext.js +86 -0
  87. package/dist/lib.cjs/react/wallet-services-plugin/WalletServicesProvider.js +16 -0
  88. package/dist/lib.cjs/react/wallet-services-plugin/hooks/useWalletServicesPlugin.js +15 -0
  89. package/dist/lib.cjs/vue/index.js +15 -0
  90. package/dist/lib.cjs/vue/no-modal/Web3AuthProvider.js +222 -0
  91. package/dist/lib.cjs/vue/no-modal/composables/useWeb3Auth.js +13 -0
  92. package/dist/lib.cjs/vue/wallet-services-plugin/WalletServicesProvider.js +86 -0
  93. package/dist/lib.cjs/vue/wallet-services-plugin/composables/useWalletServicesPlugin.js +13 -0
  94. package/dist/lib.cjs/vue/wallet-services-plugin/context.js +5 -0
  95. package/dist/lib.esm/adapters/auth-adapter/authAdapter.js +260 -0
  96. package/dist/lib.esm/adapters/auth-adapter/config.js +15 -0
  97. package/dist/lib.esm/adapters/base-evm-adapter/baseEvmAdapter.js +70 -0
  98. package/dist/lib.esm/adapters/base-solana-adapter/baseSolanaAdapter.js +74 -0
  99. package/dist/lib.esm/adapters/coinbase-adapter/coinbaseAdapter.js +154 -0
  100. package/dist/lib.esm/adapters/default-evm-adapter/index.js +37 -0
  101. package/dist/lib.esm/adapters/default-evm-adapter/injectedAdapters.js +40 -0
  102. package/dist/lib.esm/adapters/default-evm-adapter/injectedEvmAdapter.js +158 -0
  103. package/dist/lib.esm/adapters/default-solana-adapter/index.js +37 -0
  104. package/dist/lib.esm/adapters/default-solana-adapter/injectedAdapters.js +51 -0
  105. package/dist/lib.esm/adapters/default-solana-adapter/utils.js +14 -0
  106. package/dist/lib.esm/adapters/default-solana-adapter/walletStandardAdapter.js +136 -0
  107. package/dist/lib.esm/adapters/default-solana-adapter/walletStandardHandler.js +75 -0
  108. package/dist/lib.esm/adapters/wallet-connect-v2-adapter/WalletConnectV2Provider.js +276 -0
  109. package/dist/lib.esm/adapters/wallet-connect-v2-adapter/config.js +172 -0
  110. package/dist/lib.esm/adapters/wallet-connect-v2-adapter/walletConnectV2Utils.js +158 -0
  111. package/dist/lib.esm/adapters/wallet-connect-v2-adapter/walletConnectV2adapter.js +374 -0
  112. package/dist/lib.esm/base/adapter/baseAdapter.js +115 -0
  113. package/dist/lib.esm/base/adapter/constants.js +20 -0
  114. package/dist/lib.esm/base/adapter/utils.js +60 -0
  115. package/dist/lib.esm/base/chain/IChainInterface.js +19 -0
  116. package/dist/lib.esm/base/chain/config.js +276 -0
  117. package/dist/lib.esm/base/composables/index.js +3 -0
  118. package/dist/lib.esm/base/errors/index.js +237 -0
  119. package/dist/lib.esm/base/loglevel.js +5 -0
  120. package/dist/lib.esm/base/plugin/IPlugin.js +24 -0
  121. package/dist/lib.esm/base/plugin/errors.js +104 -0
  122. package/dist/lib.esm/base/provider/IProvider.js +6 -0
  123. package/dist/lib.esm/base/utils.js +46 -0
  124. package/dist/lib.esm/base/wallet/index.js +25 -0
  125. package/dist/lib.esm/index.js +58 -0
  126. package/dist/lib.esm/noModal.js +12 -4
  127. package/dist/lib.esm/plugins/nft-checkout-plugin/embed.js +132 -0
  128. package/dist/lib.esm/plugins/nft-checkout-plugin/enums.js +20 -0
  129. package/dist/lib.esm/plugins/nft-checkout-plugin/plugin.js +69 -0
  130. package/dist/lib.esm/plugins/nft-checkout-plugin/utils.js +15 -0
  131. package/dist/lib.esm/plugins/wallet-services-plugin/plugin.js +276 -0
  132. package/dist/lib.esm/providers/account-abstraction-provider/providers/AccountAbstractionProvider.js +162 -0
  133. package/dist/lib.esm/providers/account-abstraction-provider/providers/smartAccounts/BiconomySmartAccount.js +27 -0
  134. package/dist/lib.esm/providers/account-abstraction-provider/providers/smartAccounts/KernelSmartAccount.js +20 -0
  135. package/dist/lib.esm/providers/account-abstraction-provider/providers/smartAccounts/NexusSmartAccount.js +28 -0
  136. package/dist/lib.esm/providers/account-abstraction-provider/providers/smartAccounts/SafeSmartAccount.js +28 -0
  137. package/dist/lib.esm/providers/account-abstraction-provider/providers/smartAccounts/TrustSmartAccount.js +27 -0
  138. package/dist/lib.esm/providers/account-abstraction-provider/providers/smartAccounts/constants.js +9 -0
  139. package/dist/lib.esm/providers/account-abstraction-provider/providers/utils.js +132 -0
  140. package/dist/lib.esm/providers/account-abstraction-provider/rpc/ethRpcMiddlewares.js +171 -0
  141. package/dist/lib.esm/providers/base-provider/CommonJRPCProvider.js +77 -0
  142. package/dist/lib.esm/providers/base-provider/baseProvider.js +125 -0
  143. package/dist/lib.esm/providers/base-provider/commonPrivateKeyProvider.js +87 -0
  144. package/dist/lib.esm/providers/base-provider/jrpcClient.js +37 -0
  145. package/dist/lib.esm/providers/base-provider/utils.js +6 -0
  146. package/dist/lib.esm/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.js +197 -0
  147. package/dist/lib.esm/providers/ethereum-mpc-provider/providers/signingProviders/signingUtils.js +163 -0
  148. package/dist/lib.esm/providers/ethereum-mpc-provider/rpc/ethRpcMiddlewares.js +20 -0
  149. package/dist/lib.esm/providers/ethereum-provider/providers/converter.js +85 -0
  150. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/EthereumPrivateKeyProvider.js +183 -0
  151. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/constants.js +21 -0
  152. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/formatter.js +378 -0
  153. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/interfaces.js +8 -0
  154. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/utils.js +88 -0
  155. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/ethPrivatekeyUtils.js +104 -0
  156. package/dist/lib.esm/providers/ethereum-provider/providers/utils.js +24 -0
  157. package/dist/lib.esm/providers/ethereum-provider/rpc/ethRpcMiddlewares.js +71 -0
  158. package/dist/lib.esm/providers/ethereum-provider/rpc/jrpcClient.js +37 -0
  159. package/dist/lib.esm/providers/ethereum-provider/rpc/walletMidddleware.js +177 -0
  160. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.js +49 -0
  161. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/base/providerHandlers.js +45 -0
  162. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/injectedProviderProxy.js +10 -0
  163. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/torus/providerHandlers.js +73 -0
  164. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/torus/torusInjectedProvider.js +107 -0
  165. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/walletStandardProvider.js +10 -0
  166. package/dist/lib.esm/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyProvider.js +178 -0
  167. package/dist/lib.esm/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyUtils.js +101 -0
  168. package/dist/lib.esm/providers/solana-provider/rpc/JrpcClient.js +42 -0
  169. package/dist/lib.esm/providers/solana-provider/rpc/solanaRpcMiddlewares.js +89 -0
  170. package/dist/lib.esm/providers/solana-provider/solanaWallet.js +60 -0
  171. package/dist/lib.esm/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.js +156 -0
  172. package/dist/lib.esm/providers/xrpl-provider/providers/privateKeyProviders/xrplWalletUtils.js +87 -0
  173. package/dist/lib.esm/providers/xrpl-provider/rpc/JrpcClient.js +43 -0
  174. package/dist/lib.esm/providers/xrpl-provider/rpc/xrplRpcMiddlewares.js +67 -0
  175. package/dist/lib.esm/react/index.js +5 -0
  176. package/dist/lib.esm/react/no-modal/Web3AuthInnerContext.js +213 -0
  177. package/dist/lib.esm/react/no-modal/Web3AuthProvider.js +13 -0
  178. package/dist/lib.esm/react/no-modal/hooks/useWeb3Auth.js +13 -0
  179. package/dist/lib.esm/react/wallet-services-plugin/WalletServicesContext.js +83 -0
  180. package/dist/lib.esm/react/wallet-services-plugin/WalletServicesProvider.js +14 -0
  181. package/dist/lib.esm/react/wallet-services-plugin/hooks/useWalletServicesPlugin.js +13 -0
  182. package/dist/lib.esm/vue/index.js +5 -0
  183. package/dist/lib.esm/vue/no-modal/Web3AuthProvider.js +220 -0
  184. package/dist/lib.esm/vue/no-modal/composables/useWeb3Auth.js +11 -0
  185. package/dist/lib.esm/vue/wallet-services-plugin/WalletServicesProvider.js +84 -0
  186. package/dist/lib.esm/vue/wallet-services-plugin/composables/useWalletServicesPlugin.js +11 -0
  187. package/dist/lib.esm/vue/wallet-services-plugin/context.js +3 -0
  188. package/dist/noModal.cjs.js +26314 -364
  189. package/dist/noModal.umd.min.js +1 -1
  190. package/dist/noModal.umd.min.js.LICENSE.txt +54 -0
  191. package/dist/types/adapters/auth-adapter/authAdapter.d.ts +42 -0
  192. package/dist/types/adapters/auth-adapter/config.d.ts +2 -0
  193. package/dist/types/adapters/auth-adapter/index.d.ts +3 -0
  194. package/dist/types/adapters/auth-adapter/interface.d.ts +11 -0
  195. package/dist/types/adapters/base-evm-adapter/baseEvmAdapter.d.ts +7 -0
  196. package/dist/types/adapters/base-evm-adapter/index.d.ts +1 -0
  197. package/dist/types/adapters/base-solana-adapter/baseSolanaAdapter.d.ts +7 -0
  198. package/dist/types/adapters/base-solana-adapter/index.d.ts +1 -0
  199. package/dist/types/adapters/coinbase-adapter/coinbaseAdapter.d.ts +33 -0
  200. package/dist/types/adapters/coinbase-adapter/index.d.ts +1 -0
  201. package/dist/types/adapters/default-evm-adapter/index.d.ts +6 -0
  202. package/dist/types/adapters/default-evm-adapter/injectedAdapters.d.ts +4 -0
  203. package/dist/types/adapters/default-evm-adapter/injectedEvmAdapter.d.ts +30 -0
  204. package/dist/types/adapters/default-solana-adapter/index.d.ts +6 -0
  205. package/dist/types/adapters/default-solana-adapter/injectedAdapters.d.ts +4 -0
  206. package/dist/types/adapters/default-solana-adapter/utils.d.ts +3 -0
  207. package/dist/types/adapters/default-solana-adapter/walletStandardAdapter.d.ts +31 -0
  208. package/dist/types/adapters/default-solana-adapter/walletStandardHandler.d.ts +27 -0
  209. package/dist/types/adapters/index.d.ts +7 -0
  210. package/dist/types/adapters/wallet-connect-v2-adapter/WalletConnectV2Provider.d.ts +36 -0
  211. package/dist/types/adapters/wallet-connect-v2-adapter/config.d.ts +35 -0
  212. package/dist/types/adapters/wallet-connect-v2-adapter/index.d.ts +4 -0
  213. package/dist/types/adapters/wallet-connect-v2-adapter/interface.d.ts +18 -0
  214. package/dist/types/adapters/wallet-connect-v2-adapter/utils.d.ts +3 -0
  215. package/dist/types/adapters/wallet-connect-v2-adapter/walletConnectV2Utils.d.ts +23 -0
  216. package/dist/types/adapters/wallet-connect-v2-adapter/walletConnectV2adapter.d.ts +42 -0
  217. package/dist/types/base/adapter/baseAdapter.d.ts +44 -0
  218. package/dist/types/base/adapter/constants.d.ts +22 -0
  219. package/dist/types/base/adapter/index.d.ts +4 -0
  220. package/dist/types/base/adapter/interfaces.d.ts +143 -0
  221. package/dist/types/base/adapter/utils.d.ts +5 -0
  222. package/dist/types/base/chain/IChainInterface.d.ts +59 -0
  223. package/dist/types/base/chain/config.d.ts +5 -0
  224. package/dist/types/base/composables/index.d.ts +1 -0
  225. package/dist/types/base/core/IWeb3Auth.d.ts +101 -0
  226. package/dist/types/base/errors/index.d.ts +69 -0
  227. package/dist/types/base/hooks/index.d.ts +37 -0
  228. package/dist/types/base/index.d.ts +13 -0
  229. package/dist/types/base/interfaces.d.ts +44 -0
  230. package/dist/types/base/loglevel.d.ts +2 -0
  231. package/dist/types/base/plugin/IPlugin.d.ts +53 -0
  232. package/dist/types/base/plugin/errors.d.ts +28 -0
  233. package/dist/types/base/plugin/index.d.ts +2 -0
  234. package/dist/types/base/provider/IProvider.d.ts +16 -0
  235. package/dist/types/base/utils.d.ts +9 -0
  236. package/dist/types/base/wallet/index.d.ts +33 -0
  237. package/dist/types/index.d.ts +4 -0
  238. package/dist/types/noModal.d.ts +2 -2
  239. package/dist/types/plugins/index.d.ts +2 -0
  240. package/dist/types/plugins/nft-checkout-plugin/embed.d.ts +24 -0
  241. package/dist/types/plugins/nft-checkout-plugin/enums.d.ts +14 -0
  242. package/dist/types/plugins/nft-checkout-plugin/index.d.ts +2 -0
  243. package/dist/types/plugins/nft-checkout-plugin/plugin.d.ts +23 -0
  244. package/dist/types/plugins/nft-checkout-plugin/utils.d.ts +3 -0
  245. package/dist/types/plugins/wallet-services-plugin/index.d.ts +1 -0
  246. package/dist/types/plugins/wallet-services-plugin/plugin.d.ts +51 -0
  247. package/dist/types/providers/account-abstraction-provider/index.d.ts +1 -0
  248. package/dist/types/providers/account-abstraction-provider/providers/AccountAbstractionProvider.d.ts +46 -0
  249. package/dist/types/providers/account-abstraction-provider/providers/index.d.ts +3 -0
  250. package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/BiconomySmartAccount.d.ts +14 -0
  251. package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/KernelSmartAccount.d.ts +13 -0
  252. package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/LightSmartAccount.d.ts +14 -0
  253. package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/NexusSmartAccount.d.ts +14 -0
  254. package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/SafeSmartAccount.d.ts +13 -0
  255. package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/SimpleSmartAccount.d.ts +13 -0
  256. package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/TrustSmartAccount.d.ts +13 -0
  257. package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/constants.d.ts +9 -0
  258. package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/index.d.ts +6 -0
  259. package/dist/types/providers/account-abstraction-provider/providers/smartAccounts/types.d.ts +22 -0
  260. package/dist/types/providers/account-abstraction-provider/providers/types.d.ts +17 -0
  261. package/dist/types/providers/account-abstraction-provider/providers/utils.d.ts +10 -0
  262. package/dist/types/providers/account-abstraction-provider/rpc/ethRpcMiddlewares.d.ts +8 -0
  263. package/dist/types/providers/account-abstraction-provider/rpc/index.d.ts +1 -0
  264. package/dist/types/providers/base-provider/CommonJRPCProvider.d.ts +20 -0
  265. package/dist/types/providers/base-provider/baseProvider.d.ts +39 -0
  266. package/dist/types/providers/base-provider/commonPrivateKeyProvider.d.ts +31 -0
  267. package/dist/types/providers/base-provider/index.d.ts +5 -0
  268. package/dist/types/providers/base-provider/interfaces.d.ts +3 -0
  269. package/dist/types/providers/base-provider/jrpcClient.d.ts +8 -0
  270. package/dist/types/providers/base-provider/utils.d.ts +2 -0
  271. package/dist/types/providers/ethereum-mpc-provider/index.d.ts +1 -0
  272. package/dist/types/providers/ethereum-mpc-provider/providers/index.d.ts +1 -0
  273. package/dist/types/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.d.ts +65 -0
  274. package/dist/types/providers/ethereum-mpc-provider/providers/signingProviders/index.d.ts +1 -0
  275. package/dist/types/providers/ethereum-mpc-provider/providers/signingProviders/signingUtils.d.ts +12 -0
  276. package/dist/types/providers/ethereum-mpc-provider/rpc/ethRpcMiddlewares.d.ts +3 -0
  277. package/dist/types/providers/ethereum-mpc-provider/rpc/interfaces.d.ts +15 -0
  278. package/dist/types/providers/ethereum-provider/index.d.ts +2 -0
  279. package/dist/types/providers/ethereum-provider/providers/converter.d.ts +15 -0
  280. package/dist/types/providers/ethereum-provider/providers/index.d.ts +1 -0
  281. package/dist/types/providers/ethereum-provider/providers/privateKeyProviders/EthereumPrivateKeyProvider.d.ts +30 -0
  282. package/dist/types/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/constants.d.ts +16 -0
  283. package/dist/types/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/formatter.d.ts +28 -0
  284. package/dist/types/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/index.d.ts +4 -0
  285. package/dist/types/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/interfaces.d.ts +46 -0
  286. package/dist/types/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/utils.d.ts +12 -0
  287. package/dist/types/providers/ethereum-provider/providers/privateKeyProviders/ethPrivatekeyUtils.d.ts +9 -0
  288. package/dist/types/providers/ethereum-provider/providers/privateKeyProviders/index.d.ts +2 -0
  289. package/dist/types/providers/ethereum-provider/providers/utils.d.ts +5 -0
  290. package/dist/types/providers/ethereum-provider/rpc/ethRpcMiddlewares.d.ts +5 -0
  291. package/dist/types/providers/ethereum-provider/rpc/index.d.ts +4 -0
  292. package/dist/types/providers/ethereum-provider/rpc/interfaces.d.ts +65 -0
  293. package/dist/types/providers/ethereum-provider/rpc/jrpcClient.d.ts +8 -0
  294. package/dist/types/providers/ethereum-provider/rpc/walletMidddleware.d.ts +3 -0
  295. package/dist/types/providers/index.d.ts +6 -0
  296. package/dist/types/providers/solana-provider/index.d.ts +4 -0
  297. package/dist/types/providers/solana-provider/interface.d.ts +39 -0
  298. package/dist/types/providers/solana-provider/providers/index.d.ts +2 -0
  299. package/dist/types/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.d.ts +16 -0
  300. package/dist/types/providers/solana-provider/providers/injectedProviders/base/providerHandlers.d.ts +3 -0
  301. package/dist/types/providers/solana-provider/providers/injectedProviders/index.d.ts +3 -0
  302. package/dist/types/providers/solana-provider/providers/injectedProviders/injectedProviderProxy.d.ts +3 -0
  303. package/dist/types/providers/solana-provider/providers/injectedProviders/interface.d.ts +5 -0
  304. package/dist/types/providers/solana-provider/providers/injectedProviders/torus/providerHandlers.d.ts +3 -0
  305. package/dist/types/providers/solana-provider/providers/injectedProviders/torus/torusInjectedProvider.d.ts +18 -0
  306. package/dist/types/providers/solana-provider/providers/injectedProviders/walletStandardProvider.d.ts +6 -0
  307. package/dist/types/providers/solana-provider/providers/privateKeyProvider/index.d.ts +1 -0
  308. package/dist/types/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyProvider.d.ts +31 -0
  309. package/dist/types/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyUtils.d.ts +7 -0
  310. package/dist/types/providers/solana-provider/rpc/JrpcClient.d.ts +9 -0
  311. package/dist/types/providers/solana-provider/rpc/index.d.ts +3 -0
  312. package/dist/types/providers/solana-provider/rpc/interfaces.d.ts +42 -0
  313. package/dist/types/providers/solana-provider/rpc/solanaRpcMiddlewares.d.ts +20 -0
  314. package/dist/types/providers/solana-provider/solanaWallet.d.ts +14 -0
  315. package/dist/types/providers/xrpl-provider/index.d.ts +1 -0
  316. package/dist/types/providers/xrpl-provider/providers/index.d.ts +1 -0
  317. package/dist/types/providers/xrpl-provider/providers/privateKeyProviders/constants.d.ts +5 -0
  318. package/dist/types/providers/xrpl-provider/providers/privateKeyProviders/index.d.ts +3 -0
  319. package/dist/types/providers/xrpl-provider/providers/privateKeyProviders/interface.d.ts +2 -0
  320. package/dist/types/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.d.ts +26 -0
  321. package/dist/types/providers/xrpl-provider/providers/privateKeyProviders/xrplWalletUtils.d.ts +7 -0
  322. package/dist/types/providers/xrpl-provider/rpc/JrpcClient.d.ts +9 -0
  323. package/dist/types/providers/xrpl-provider/rpc/xrplRpcMiddlewares.d.ts +52 -0
  324. package/dist/types/react/index.d.ts +2 -0
  325. package/dist/types/react/no-modal/Web3AuthInnerContext.d.ts +4 -0
  326. package/dist/types/react/no-modal/Web3AuthProvider.d.ts +3 -0
  327. package/dist/types/react/no-modal/hooks/index.d.ts +1 -0
  328. package/dist/types/react/no-modal/hooks/useWeb3Auth.d.ts +2 -0
  329. package/dist/types/react/no-modal/index.d.ts +3 -0
  330. package/dist/types/react/no-modal/interfaces.d.ts +15 -0
  331. package/dist/types/react/wallet-services-plugin/WalletServicesContext.d.ts +7 -0
  332. package/dist/types/react/wallet-services-plugin/WalletServicesProvider.d.ts +7 -0
  333. package/dist/types/react/wallet-services-plugin/hooks/index.d.ts +1 -0
  334. package/dist/types/react/wallet-services-plugin/hooks/useWalletServicesPlugin.d.ts +2 -0
  335. package/dist/types/react/wallet-services-plugin/index.d.ts +4 -0
  336. package/dist/types/react/wallet-services-plugin/interfaces.d.ts +5 -0
  337. package/dist/types/vue/index.d.ts +2 -0
  338. package/dist/types/vue/no-modal/Web3AuthProvider.d.ts +13 -0
  339. package/dist/types/vue/no-modal/composables/index.d.ts +1 -0
  340. package/dist/types/vue/no-modal/composables/useWeb3Auth.d.ts +2 -0
  341. package/dist/types/vue/no-modal/index.d.ts +3 -0
  342. package/dist/types/vue/no-modal/interfaces.d.ts +42 -0
  343. package/dist/types/vue/wallet-services-plugin/WalletServicesProvider.d.ts +1 -0
  344. package/dist/types/vue/wallet-services-plugin/composables/index.d.ts +1 -0
  345. package/dist/types/vue/wallet-services-plugin/composables/useWalletServicesPlugin.d.ts +2 -0
  346. package/dist/types/vue/wallet-services-plugin/context.d.ts +3 -0
  347. package/dist/types/vue/wallet-services-plugin/index.d.ts +4 -0
  348. package/dist/types/vue/wallet-services-plugin/interfaces.d.ts +13 -0
  349. package/package.json +76 -15
  350. package/README.md +0 -82
  351. package/dist/noModal.esm.js +0 -359
@@ -0,0 +1,75 @@
1
+ 'use strict';
2
+
3
+ var auth = require('@web3auth/auth');
4
+ var walletMidddleware = require('./walletMidddleware.js');
5
+
6
+ function createEthMiddleware(providerHandlers) {
7
+ const {
8
+ getAccounts,
9
+ getPrivateKey,
10
+ getPublicKey,
11
+ processTransaction,
12
+ processSignTransaction,
13
+ processEthSignMessage,
14
+ processTypedMessageV4,
15
+ processPersonalMessage
16
+ } = providerHandlers;
17
+ const ethMiddleware = auth.mergeMiddleware([auth.createScaffoldMiddleware({
18
+ eth_syncing: false
19
+ }), walletMidddleware.createWalletMiddleware({
20
+ getAccounts,
21
+ getPrivateKey,
22
+ getPublicKey,
23
+ processTransaction,
24
+ processEthSignMessage,
25
+ processSignTransaction,
26
+ processTypedMessageV4,
27
+ processPersonalMessage
28
+ })]);
29
+ return ethMiddleware;
30
+ }
31
+ function createEthChainSwitchMiddleware({
32
+ addChain,
33
+ switchChain
34
+ }) {
35
+ async function addNewChain(req, res) {
36
+ var _req$params;
37
+ const chainParams = (_req$params = req.params) !== null && _req$params !== void 0 && _req$params.length ? req.params[0] : undefined;
38
+ if (!chainParams) throw auth.rpcErrors.invalidParams("Missing chain params");
39
+ if (!chainParams.chainId) throw auth.rpcErrors.invalidParams("Missing chainId in chainParams");
40
+ if (!chainParams.rpcUrls || chainParams.rpcUrls.length === 0) throw auth.rpcErrors.invalidParams("Missing rpcUrls in chainParams");
41
+ if (!chainParams.nativeCurrency) throw auth.rpcErrors.invalidParams("Missing nativeCurrency in chainParams");
42
+ res.result = await addChain(chainParams);
43
+ }
44
+ async function updateChain(req, res) {
45
+ var _req$params2;
46
+ const chainParams = (_req$params2 = req.params) !== null && _req$params2 !== void 0 && _req$params2.length ? req.params[0] : undefined;
47
+ if (!chainParams) throw auth.rpcErrors.invalidParams("Missing chainId");
48
+ res.result = await switchChain(chainParams);
49
+ }
50
+ return auth.createScaffoldMiddleware({
51
+ wallet_addEthereumChain: auth.createAsyncMiddleware(addNewChain),
52
+ wallet_switchEthereumChain: auth.createAsyncMiddleware(updateChain)
53
+ });
54
+ }
55
+
56
+ // #region account middlewares
57
+ function createEthAccountMiddleware({
58
+ updatePrivatekey
59
+ }) {
60
+ async function updateAccount(req, res) {
61
+ var _req$params3;
62
+ const accountParams = (_req$params3 = req.params) !== null && _req$params3 !== void 0 && _req$params3.length ? req.params[0] : undefined;
63
+ if (!(accountParams !== null && accountParams !== void 0 && accountParams.privateKey)) throw auth.rpcErrors.invalidParams("Missing privateKey");
64
+ res.result = await updatePrivatekey(accountParams);
65
+ }
66
+ return auth.createScaffoldMiddleware({
67
+ wallet_updateAccount: auth.createAsyncMiddleware(updateAccount)
68
+ });
69
+ }
70
+
71
+ // #endregion account middlewares
72
+
73
+ exports.createEthAccountMiddleware = createEthAccountMiddleware;
74
+ exports.createEthChainSwitchMiddleware = createEthChainSwitchMiddleware;
75
+ exports.createEthMiddleware = createEthMiddleware;
@@ -0,0 +1,41 @@
1
+ 'use strict';
2
+
3
+ var baseControllers = require('@toruslabs/base-controllers');
4
+ var auth = require('@web3auth/auth');
5
+
6
+ function createEthChainIdMiddleware(chainId) {
7
+ return (req, res, next, end) => {
8
+ if (req.method === "eth_chainId") {
9
+ res.result = chainId;
10
+ return end();
11
+ }
12
+ return next();
13
+ };
14
+ }
15
+ function createEthProviderConfigMiddleware(providerConfig) {
16
+ return (req, res, next, end) => {
17
+ if (req.method === "eth_provider_config") {
18
+ res.result = providerConfig;
19
+ return end();
20
+ }
21
+ return next();
22
+ };
23
+ }
24
+ function createEthJsonRpcClient(providerConfig) {
25
+ const {
26
+ chainId,
27
+ rpcTarget
28
+ } = providerConfig;
29
+ const fetchMiddleware = baseControllers.createFetchMiddleware({
30
+ rpcTarget
31
+ });
32
+ const networkMiddleware = auth.mergeMiddleware([createEthChainIdMiddleware(chainId), createEthProviderConfigMiddleware(providerConfig), fetchMiddleware]);
33
+ return {
34
+ networkMiddleware,
35
+ fetchMiddleware
36
+ };
37
+ }
38
+
39
+ exports.createEthChainIdMiddleware = createEthChainIdMiddleware;
40
+ exports.createEthJsonRpcClient = createEthJsonRpcClient;
41
+ exports.createEthProviderConfigMiddleware = createEthProviderConfigMiddleware;
@@ -0,0 +1,179 @@
1
+ 'use strict';
2
+
3
+ var _objectSpread = require('@babel/runtime/helpers/objectSpread2');
4
+ var auth = require('@web3auth/auth');
5
+
6
+ function createWalletMiddleware({
7
+ getAccounts,
8
+ getPrivateKey,
9
+ getPublicKey,
10
+ processEthSignMessage,
11
+ processPersonalMessage,
12
+ processTransaction,
13
+ processSignTransaction,
14
+ processTypedMessageV4
15
+ }) {
16
+ if (!getAccounts) {
17
+ throw new Error("opts.getAccounts is required");
18
+ }
19
+
20
+ //
21
+ // utility
22
+ //
23
+
24
+ /**
25
+ * Validates the keyholder address, and returns a normalized (i.e. lowercase)
26
+ * copy of it.
27
+ *
28
+ * an error
29
+ */
30
+ async function validateAndNormalizeKeyholder(address, req) {
31
+ if (typeof address === "string" && address.length > 0) {
32
+ // ensure address is included in provided accounts
33
+ const accounts = await getAccounts(req);
34
+ const normalizedAccounts = accounts.map(_address => _address.toLowerCase());
35
+ const normalizedAddress = address.toLowerCase();
36
+ if (normalizedAccounts.includes(normalizedAddress)) {
37
+ return normalizedAddress;
38
+ }
39
+ }
40
+ throw auth.rpcErrors.invalidParams({
41
+ message: `Invalid parameters: must provide an Ethereum address.`
42
+ });
43
+ }
44
+
45
+ //
46
+ // account lookups
47
+ //
48
+
49
+ async function lookupAccounts(req, res) {
50
+ res.result = await getAccounts(req);
51
+ }
52
+
53
+ //
54
+ // transaction signatures
55
+ //
56
+
57
+ async function sendTransaction(req, res) {
58
+ if (!processTransaction) {
59
+ throw auth.rpcErrors.methodNotSupported();
60
+ }
61
+ const txParams = req.params[0] || {
62
+ from: ""
63
+ };
64
+ txParams.from = await validateAndNormalizeKeyholder(txParams.from, req);
65
+ res.result = await processTransaction(txParams, req);
66
+ }
67
+ async function signTransaction(req, res) {
68
+ if (!processSignTransaction) {
69
+ throw auth.rpcErrors.methodNotSupported();
70
+ }
71
+ const txParams = req.params[0] || {
72
+ from: ""
73
+ };
74
+ txParams.from = await validateAndNormalizeKeyholder(txParams.from, req);
75
+ res.result = await processSignTransaction(txParams, req);
76
+ }
77
+
78
+ //
79
+ // message signatures
80
+ //
81
+
82
+ async function ethSign(req, res) {
83
+ if (!processEthSignMessage) {
84
+ throw auth.rpcErrors.methodNotSupported();
85
+ }
86
+ let msgParams = req.params;
87
+ const extraParams = req.params[2] || {};
88
+ if (Array.isArray(req.params)) {
89
+ if (!(req.params.length === 2)) throw new Error(`WalletMiddleware - incorrect params for ${req.method} method. expected [address, message]`);
90
+ const params = req.params;
91
+ const address = params[0];
92
+ const message = params[1];
93
+ msgParams = {
94
+ from: address,
95
+ data: message
96
+ };
97
+ }
98
+ msgParams = _objectSpread(_objectSpread({}, extraParams), msgParams);
99
+ res.result = await processEthSignMessage(msgParams, req);
100
+ }
101
+ async function signTypedDataV4(req, res) {
102
+ if (!processTypedMessageV4) {
103
+ throw auth.rpcErrors.methodNotSupported();
104
+ }
105
+ if (!(req !== null && req !== void 0 && req.params)) throw new Error("WalletMiddleware - missing params");
106
+ let msgParams = req.params;
107
+ if (Array.isArray(req.params)) {
108
+ if (!(req.params.length === 2)) throw new Error(`WalletMiddleware - incorrect params for ${req.method} method. expected [address, typedData]`);
109
+ const params = req.params;
110
+ const address = params[0];
111
+ const message = params[1];
112
+ msgParams = {
113
+ from: address,
114
+ data: message
115
+ };
116
+ }
117
+ res.result = await processTypedMessageV4(msgParams, req);
118
+ }
119
+ async function personalSign(req, res) {
120
+ if (!processPersonalMessage) {
121
+ throw auth.rpcErrors.methodNotSupported();
122
+ }
123
+ let msgParams = req.params;
124
+ const extraParams = req.params[2] || {};
125
+ if (Array.isArray(req.params)) {
126
+ if (!(req.params.length >= 2)) throw new Error(`WalletMiddleware - incorrect params for ${req.method} method. expected [message, address]`);
127
+ const params = req.params;
128
+ if (typeof params[0] === "object") {
129
+ const {
130
+ challenge,
131
+ address
132
+ } = params[0];
133
+ msgParams = {
134
+ from: address,
135
+ data: challenge
136
+ };
137
+ } else {
138
+ const message = params[0];
139
+ const address = params[1];
140
+ msgParams = {
141
+ from: address,
142
+ data: message
143
+ };
144
+ }
145
+ }
146
+ msgParams = _objectSpread(_objectSpread({}, extraParams), msgParams);
147
+ res.result = await processPersonalMessage(msgParams, req);
148
+ }
149
+ async function fetchPrivateKey(req, res) {
150
+ if (!getPrivateKey) {
151
+ throw auth.rpcErrors.methodNotSupported();
152
+ }
153
+ res.result = await getPrivateKey(req);
154
+ }
155
+ async function fetchPublicKey(req, res) {
156
+ if (!getPublicKey) {
157
+ throw auth.rpcErrors.methodNotSupported();
158
+ }
159
+ res.result = await getPublicKey(req);
160
+ }
161
+ return auth.createScaffoldMiddleware({
162
+ // account lookups
163
+ eth_accounts: auth.createAsyncMiddleware(lookupAccounts),
164
+ eth_requestAccounts: auth.createAsyncMiddleware(lookupAccounts),
165
+ eth_private_key: auth.createAsyncMiddleware(fetchPrivateKey),
166
+ eth_public_key: auth.createAsyncMiddleware(fetchPublicKey),
167
+ public_key: auth.createAsyncMiddleware(fetchPublicKey),
168
+ private_key: auth.createAsyncMiddleware(fetchPrivateKey),
169
+ // tx signatures
170
+ eth_sendTransaction: auth.createAsyncMiddleware(sendTransaction),
171
+ eth_signTransaction: auth.createAsyncMiddleware(signTransaction),
172
+ // message signatures
173
+ eth_sign: auth.createAsyncMiddleware(ethSign),
174
+ eth_signTypedData_v4: auth.createAsyncMiddleware(signTypedDataV4),
175
+ personal_sign: auth.createAsyncMiddleware(personalSign)
176
+ });
177
+ }
178
+
179
+ exports.createWalletMiddleware = createWalletMiddleware;
@@ -0,0 +1,51 @@
1
+ 'use strict';
2
+
3
+ var auth = require('@web3auth/auth');
4
+ var index = require('../../../../../base/errors/index.js');
5
+ var JrpcClient = require('../../../rpc/JrpcClient.js');
6
+ var solanaRpcMiddlewares = require('../../../rpc/solanaRpcMiddlewares.js');
7
+ var baseProvider = require('../../../../base-provider/baseProvider.js');
8
+
9
+ class BaseInjectedProvider extends baseProvider.BaseProvider {
10
+ constructor({
11
+ config,
12
+ state
13
+ }) {
14
+ super({
15
+ config,
16
+ state
17
+ });
18
+ }
19
+ async switchChain(_) {
20
+ throw index.WalletLoginError.unsupportedOperation("Chain switching is not supported by this adapter");
21
+ }
22
+ async setupProvider(injectedProvider) {
23
+ const engine = new auth.JRPCEngine();
24
+ const providerHandlers = this.getProviderHandlers(injectedProvider);
25
+ const solanaMiddleware = solanaRpcMiddlewares.createSolanaMiddleware(providerHandlers);
26
+ engine.push(solanaMiddleware);
27
+ const configMiddleware = JrpcClient.createConfigMiddleware(this.config.chainConfig);
28
+ engine.push(configMiddleware);
29
+ const injectedProviderProxy = this.getInjectedProviderProxy(injectedProvider);
30
+ if (injectedProviderProxy) {
31
+ engine.push(injectedProviderProxy);
32
+ }
33
+ const provider = auth.providerFromEngine(engine);
34
+ this.updateProviderEngineProxy(provider);
35
+ await this.lookupNetwork();
36
+ }
37
+ async lookupNetwork() {
38
+ const {
39
+ chainConfig
40
+ } = this.config;
41
+ this.update({
42
+ chainId: chainConfig.chainId
43
+ });
44
+ return chainConfig.chainId || "";
45
+ }
46
+ getInjectedProviderProxy(_) {
47
+ return undefined;
48
+ }
49
+ }
50
+
51
+ exports.BaseInjectedProvider = BaseInjectedProvider;
@@ -0,0 +1,47 @@
1
+ 'use strict';
2
+
3
+ var auth = require('@web3auth/auth');
4
+ var bs58 = require('bs58');
5
+
6
+ const getBaseProviderHandlers = injectedProvider => {
7
+ const providerHandlers = {
8
+ requestAccounts: async () => {
9
+ return injectedProvider.publicKey ? [bs58.encode(injectedProvider.publicKey.toBytes())] : [];
10
+ },
11
+ getPublicKey: async () => {
12
+ return injectedProvider.publicKey ? bs58.encode(injectedProvider.publicKey.toBytes()) : "";
13
+ },
14
+ getAccounts: async () => injectedProvider.publicKey ? [bs58.encode(injectedProvider.publicKey.toBytes())] : [],
15
+ getPrivateKey: async () => {
16
+ throw auth.rpcErrors.methodNotSupported();
17
+ },
18
+ getSecretKey: async () => {
19
+ throw auth.rpcErrors.methodNotSupported();
20
+ },
21
+ signTransaction: async req => {
22
+ const transaction = await injectedProvider.signTransaction(req.params.message);
23
+ return transaction;
24
+ },
25
+ signMessage: async req => {
26
+ const sigData = await injectedProvider.signMessage(req.params.message, req.params.display);
27
+ return sigData.signature;
28
+ },
29
+ signAllTransactions: async req => {
30
+ var _req$params, _req$params2;
31
+ if (!((_req$params = req.params) !== null && _req$params !== void 0 && _req$params.message) || !((_req$params2 = req.params) !== null && _req$params2 !== void 0 && _req$params2.message.length)) {
32
+ throw auth.rpcErrors.invalidParams("message");
33
+ }
34
+ const transaction = await injectedProvider.signAllTransactions(req.params.message);
35
+ return transaction;
36
+ },
37
+ signAndSendTransaction: async req => {
38
+ const txRes = await injectedProvider.signAndSendTransaction(req.params.message);
39
+ return {
40
+ signature: txRes.signature
41
+ };
42
+ }
43
+ };
44
+ return providerHandlers;
45
+ };
46
+
47
+ exports.getBaseProviderHandlers = getBaseProviderHandlers;
@@ -0,0 +1,12 @@
1
+ 'use strict';
2
+
3
+ var auth = require('@web3auth/auth');
4
+
5
+ function createInjectedProviderProxyMiddleware(provider) {
6
+ return auth.createAsyncMiddleware(async (req, res, _next) => {
7
+ const result = await provider.request(req);
8
+ res.result = result;
9
+ });
10
+ }
11
+
12
+ exports.createInjectedProviderProxyMiddleware = createInjectedProviderProxyMiddleware;
@@ -0,0 +1,75 @@
1
+ 'use strict';
2
+
3
+ var auth = require('@web3auth/auth');
4
+
5
+ const getTorusHandlers = injectedProvider => {
6
+ const providerHandlers = {
7
+ requestAccounts: async () => {
8
+ const accounts = await injectedProvider.request({
9
+ method: "solana_requestAccounts",
10
+ params: {}
11
+ });
12
+ return accounts;
13
+ },
14
+ getPublicKey: async () => {
15
+ const publicKeys = await injectedProvider.request({
16
+ method: "solana_requestAccounts",
17
+ params: {}
18
+ });
19
+ return publicKeys[0];
20
+ },
21
+ getAccounts: async () => {
22
+ const accounts = await injectedProvider.request({
23
+ method: "solana_requestAccounts",
24
+ params: {}
25
+ });
26
+ return accounts;
27
+ },
28
+ getPrivateKey: async () => {
29
+ throw auth.rpcErrors.methodNotSupported();
30
+ },
31
+ getSecretKey: async () => {
32
+ throw auth.rpcErrors.methodNotSupported();
33
+ },
34
+ signMessage: async req => {
35
+ var _req$params;
36
+ if (!((_req$params = req.params) !== null && _req$params !== void 0 && _req$params.message)) {
37
+ throw auth.rpcErrors.invalidParams("message");
38
+ }
39
+ const message = await injectedProvider.signMessage(req.params.message);
40
+ return message;
41
+ },
42
+ signTransaction: async req => {
43
+ var _req$params2;
44
+ if (!((_req$params2 = req.params) !== null && _req$params2 !== void 0 && _req$params2.message)) {
45
+ throw auth.rpcErrors.invalidParams("message");
46
+ }
47
+ const txMessage = req.params.message;
48
+ const response = await injectedProvider.signTransaction(txMessage);
49
+ return response;
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 auth.rpcErrors.invalidParams("message");
55
+ }
56
+ const txMessage = req.params.message;
57
+ const response = await injectedProvider.sendTransaction(txMessage);
58
+ return {
59
+ signature: response
60
+ };
61
+ },
62
+ signAllTransactions: async req => {
63
+ var _req$params4, _req$params5;
64
+ 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)) {
65
+ throw auth.rpcErrors.invalidParams("message");
66
+ }
67
+ const transactions = req.params.message;
68
+ const response = await injectedProvider.signAllTransactions(transactions);
69
+ return response;
70
+ }
71
+ };
72
+ return providerHandlers;
73
+ };
74
+
75
+ exports.getTorusHandlers = getTorusHandlers;
@@ -0,0 +1,109 @@
1
+ 'use strict';
2
+
3
+ var _objectSpread = require('@babel/runtime/helpers/objectSpread2');
4
+ var _defineProperty = require('@babel/runtime/helpers/defineProperty');
5
+ var auth = require('@web3auth/auth');
6
+ var index = require('../../../../../base/errors/index.js');
7
+ var utils = require('../../../../../base/utils.js');
8
+ var solanaRpcMiddlewares = require('../../../rpc/solanaRpcMiddlewares.js');
9
+ var injectedProviderProxy = require('../injectedProviderProxy.js');
10
+ var providerHandlers = require('./providerHandlers.js');
11
+ var baseProvider = require('../../../../base-provider/baseProvider.js');
12
+
13
+ class TorusInjectedProvider extends baseProvider.BaseProvider {
14
+ constructor({
15
+ config,
16
+ state
17
+ }) {
18
+ super({
19
+ config,
20
+ state
21
+ });
22
+ _defineProperty(this, "PROVIDER_CHAIN_NAMESPACE", "solana");
23
+ }
24
+ async switchChain(params) {
25
+ // overrides the base provider implementation
26
+ await this.provider.request({
27
+ method: "switchSolanaChain",
28
+ params: [{
29
+ chainId: params.chainId
30
+ }]
31
+ });
32
+ }
33
+ async addChain(chainConfig) {
34
+ super.addChain(chainConfig);
35
+ await this.provider.request({
36
+ method: "addNewChainConfig",
37
+ params: [{
38
+ chainId: chainConfig.chainId,
39
+ chainName: chainConfig.displayName,
40
+ rpcUrls: [chainConfig.rpcTarget],
41
+ blockExplorerUrls: [chainConfig.blockExplorerUrl],
42
+ iconUrls: [chainConfig.logo],
43
+ nativeCurrency: {
44
+ name: chainConfig.tickerName,
45
+ symbol: chainConfig.ticker,
46
+ decimals: chainConfig.decimals || 18
47
+ }
48
+ }]
49
+ });
50
+ }
51
+ async setupProvider(injectedProvider) {
52
+ this.handleInjectedProviderUpdate(injectedProvider);
53
+ const {
54
+ chainNamespace
55
+ } = this.config.chainConfig;
56
+ if (chainNamespace !== this.PROVIDER_CHAIN_NAMESPACE) throw index.WalletInitializationError.incompatibleChainNameSpace("Invalid chain namespace");
57
+ await this.setupEngine(injectedProvider);
58
+ }
59
+ async lookupNetwork() {
60
+ if (!this.provider) throw auth.providerErrors.custom({
61
+ message: "Torus solana provider is not initialized",
62
+ code: 4902
63
+ });
64
+ const {
65
+ chainId
66
+ } = this.config.chainConfig;
67
+ const connectedChainId = await this.provider.request({
68
+ method: "solana_chainId"
69
+ });
70
+ const connectedHexChainId = utils.isHexStrict(connectedChainId.toString()) ? connectedChainId : `0x${parseInt(connectedChainId, 10).toString(16)}`;
71
+ if (chainId !== connectedHexChainId) throw index.WalletInitializationError.rpcConnectionError(`Invalid network, net_version is: ${connectedHexChainId}, expected: ${chainId}`);
72
+ this.update({
73
+ chainId: connectedHexChainId
74
+ });
75
+ this.emit("connect", {
76
+ chainId: this.state.chainId
77
+ });
78
+ this.emit("chainChanged", this.state.chainId);
79
+ return this.state.chainId;
80
+ }
81
+ async setupEngine(injectedProvider) {
82
+ const providerHandlers$1 = providerHandlers.getTorusHandlers(injectedProvider);
83
+ const solanaMiddleware = solanaRpcMiddlewares.createSolanaMiddleware(providerHandlers$1);
84
+ const injectedProviderProxy$1 = injectedProviderProxy.createInjectedProviderProxyMiddleware(injectedProvider);
85
+ const engine = new auth.JRPCEngine();
86
+ engine.push(solanaMiddleware);
87
+ engine.push(injectedProviderProxy$1);
88
+ const provider = auth.providerFromEngine(engine);
89
+ this.updateProviderEngineProxy(provider);
90
+ await this.lookupNetwork();
91
+ }
92
+ async handleInjectedProviderUpdate(injectedProvider) {
93
+ injectedProvider.on("accountsChanged", async accounts => {
94
+ this.emit("accountsChanged", accounts);
95
+ });
96
+ injectedProvider.on("chainChanged", async chainId => {
97
+ const connectedHexChainId = utils.isHexStrict(chainId) ? chainId : `0x${parseInt(chainId, 10).toString(16)}`;
98
+ // Check if chainId changed and trigger event
99
+ this.configure({
100
+ chainConfig: _objectSpread(_objectSpread({}, this.config.chainConfig), {}, {
101
+ chainId: connectedHexChainId
102
+ })
103
+ });
104
+ await this.setupProvider(injectedProvider);
105
+ });
106
+ }
107
+ }
108
+
109
+ exports.TorusInjectedProvider = TorusInjectedProvider;
@@ -0,0 +1,12 @@
1
+ 'use strict';
2
+
3
+ var baseInjectedProvider = require('./base/baseInjectedProvider.js');
4
+ var providerHandlers = require('./base/providerHandlers.js');
5
+
6
+ class WalletStandardProvider extends baseInjectedProvider.BaseInjectedProvider {
7
+ getProviderHandlers(injectedProvider) {
8
+ return providerHandlers.getBaseProviderHandlers(injectedProvider);
9
+ }
10
+ }
11
+
12
+ exports.WalletStandardProvider = WalletStandardProvider;