@web3auth/no-modal 10.0.0-beta.0 → 10.0.0-beta.10

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 (325) hide show
  1. package/dist/lib.cjs/base/connector/baseConnector.js +3 -1
  2. package/dist/lib.cjs/base/connector/constants.js +3 -6
  3. package/dist/lib.cjs/base/constants.js +26 -0
  4. package/dist/lib.cjs/base/cookie.js +38 -0
  5. package/dist/lib.cjs/base/deserialize.js +13 -0
  6. package/dist/lib.cjs/base/errors/index.js +3 -22
  7. package/dist/lib.cjs/base/loglevel.js +3 -0
  8. package/dist/lib.cjs/base/utils.js +50 -7
  9. package/dist/lib.cjs/base/wallet/index.js +4 -5
  10. package/dist/lib.cjs/connectors/auth-connector/authConnector.js +64 -21
  11. package/dist/lib.cjs/connectors/base-evm-connector/baseEvmConnector.js +1 -1
  12. package/dist/lib.cjs/connectors/base-solana-connector/baseSolanaConnector.js +1 -1
  13. package/dist/lib.cjs/connectors/coinbase-connector/coinbaseConnector.js +14 -6
  14. package/dist/lib.cjs/connectors/coinbase-connector/index.js +7 -0
  15. package/dist/lib.cjs/connectors/injected-evm-connector/injectedEvmConnector.js +10 -4
  16. package/dist/lib.cjs/connectors/injected-solana-connector/walletStandardConnector.js +9 -5
  17. package/dist/lib.cjs/connectors/metamask-connector/metamaskConnector.js +44 -16
  18. package/dist/lib.cjs/connectors/utils.js +10 -0
  19. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/WalletConnectV2Provider.js +1 -1
  20. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/config.js +7 -2
  21. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/walletConnectV2Connector.js +7 -3
  22. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/walletConnectV2Utils.js +1 -1
  23. package/dist/lib.cjs/index.js +44 -32
  24. package/dist/lib.cjs/noModal.js +200 -72
  25. package/dist/lib.cjs/plugins/nft-checkout-plugin/plugin.js +3 -3
  26. package/dist/lib.cjs/plugins/wallet-services-plugin/plugin.js +2 -2
  27. package/dist/lib.cjs/providers/account-abstraction-provider/index.js +5 -0
  28. package/dist/lib.cjs/providers/account-abstraction-provider/providers/AccountAbstractionProvider.js +30 -3
  29. package/dist/lib.cjs/providers/account-abstraction-provider/providers/utils.js +1 -1
  30. package/dist/lib.cjs/providers/account-abstraction-provider/rpc/ethRpcMiddlewares.js +25 -3
  31. package/dist/lib.cjs/providers/base-provider/baseProvider.js +2 -0
  32. package/dist/lib.cjs/providers/ethereum-mpc-provider/index.js +7 -0
  33. package/dist/lib.cjs/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.js +1 -1
  34. package/dist/lib.cjs/providers/ethereum-mpc-provider/providers/signingProviders/signingUtils.js +1 -1
  35. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/formatter.js +1 -1
  36. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.js +1 -1
  37. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/walletStandardProvider.js +1 -1
  38. package/dist/lib.cjs/providers/xrpl-provider/index.js +9 -0
  39. package/dist/lib.cjs/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.js +1 -1
  40. package/dist/lib.cjs/react/Web3AuthProvider.js +19 -0
  41. package/dist/lib.cjs/react/{wallet-services-plugin/WalletServicesContext.js → context/WalletServicesInnerContext.js} +19 -34
  42. package/dist/lib.cjs/react/{no-modal → context}/Web3AuthInnerContext.js +38 -96
  43. package/dist/lib.cjs/react/hooks/useCheckout.js +45 -0
  44. package/dist/lib.cjs/react/hooks/useEnableMFA.js +30 -0
  45. package/dist/lib.cjs/react/hooks/useIdentityToken.js +42 -0
  46. package/dist/lib.cjs/react/hooks/useManageMFA.js +30 -0
  47. package/dist/lib.cjs/react/hooks/useSwap.js +45 -0
  48. package/dist/lib.cjs/react/hooks/useSwitchChain.js +32 -0
  49. package/dist/lib.cjs/react/hooks/useWalletConnectScanner.js +45 -0
  50. package/dist/lib.cjs/react/hooks/useWalletServicesPlugin.js +19 -0
  51. package/dist/lib.cjs/react/hooks/useWalletUI.js +45 -0
  52. package/dist/lib.cjs/react/hooks/useWeb3Auth.js +28 -0
  53. package/dist/lib.cjs/react/hooks/useWeb3AuthConnect.js +48 -0
  54. package/dist/lib.cjs/react/hooks/useWeb3AuthDisconnect.js +30 -0
  55. package/dist/lib.cjs/react/{no-modal/hooks/useWeb3Auth.js → hooks/useWeb3AuthInner.js} +9 -9
  56. package/dist/lib.cjs/react/hooks/useWeb3AuthUser.js +50 -0
  57. package/dist/lib.cjs/react/index.js +26 -9
  58. package/dist/lib.cjs/react/solana/hooks/useSignAndSendTransaction.js +35 -0
  59. package/dist/lib.cjs/react/solana/hooks/useSignMessage.js +36 -0
  60. package/dist/lib.cjs/react/solana/hooks/useSignTransaction.js +34 -0
  61. package/dist/lib.cjs/react/solana/hooks/useSolanaWallet.js +62 -0
  62. package/dist/lib.cjs/react/solana/index.js +13 -0
  63. package/dist/lib.cjs/react/wagmi/constants.js +16 -0
  64. package/dist/lib.cjs/react/wagmi/index.js +7 -0
  65. package/dist/lib.cjs/react/wagmi/provider.js +189 -0
  66. package/dist/lib.cjs/types/base/connector/baseConnector.d.ts +5 -5
  67. package/dist/lib.cjs/types/base/connector/constants.d.ts +2 -4
  68. package/dist/lib.cjs/types/base/connector/interfaces.d.ts +34 -17
  69. package/dist/lib.cjs/types/base/constants.d.ts +18 -0
  70. package/dist/lib.cjs/types/base/cookie.d.ts +10 -0
  71. package/dist/lib.cjs/types/base/core/IWeb3Auth.d.ts +40 -12
  72. package/dist/lib.cjs/types/base/deserialize.d.ts +3 -0
  73. package/dist/lib.cjs/types/base/errors/index.d.ts +1 -2
  74. package/dist/lib.cjs/types/base/hooks/index.d.ts +3 -23
  75. package/dist/lib.cjs/types/base/index.d.ts +2 -1
  76. package/dist/lib.cjs/types/base/interfaces.d.ts +13 -6
  77. package/dist/lib.cjs/types/base/loglevel.d.ts +2 -1
  78. package/dist/lib.cjs/types/base/plugin/IPlugin.d.ts +1 -1
  79. package/dist/lib.cjs/types/base/utils.d.ts +14 -2
  80. package/dist/lib.cjs/types/base/wallet/index.d.ts +18 -17
  81. package/dist/lib.cjs/types/connectors/auth-connector/authConnector.d.ts +5 -6
  82. package/dist/lib.cjs/types/connectors/auth-connector/interface.d.ts +4 -3
  83. package/dist/lib.cjs/types/connectors/coinbase-connector/coinbaseConnector.d.ts +1 -1
  84. package/dist/lib.cjs/types/connectors/index.d.ts +1 -1
  85. package/dist/lib.cjs/types/connectors/injected-evm-connector/injectedEvmConnector.d.ts +1 -0
  86. package/dist/lib.cjs/types/connectors/metamask-connector/index.d.ts +1 -1
  87. package/dist/lib.cjs/types/connectors/metamask-connector/metamaskConnector.d.ts +2 -2
  88. package/dist/lib.cjs/types/connectors/utils.d.ts +8 -0
  89. package/dist/lib.cjs/types/noModal.d.ts +20 -9
  90. package/dist/lib.cjs/types/plugins/nft-checkout-plugin/plugin.d.ts +2 -2
  91. package/dist/lib.cjs/types/plugins/wallet-services-plugin/plugin.d.ts +2 -2
  92. package/dist/lib.cjs/types/providers/account-abstraction-provider/providers/AccountAbstractionProvider.d.ts +3 -2
  93. package/dist/lib.cjs/types/providers/account-abstraction-provider/providers/smartAccounts/index.d.ts +1 -1
  94. package/dist/lib.cjs/types/providers/account-abstraction-provider/rpc/ethRpcMiddlewares.d.ts +4 -1
  95. package/dist/lib.cjs/types/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.d.ts +1 -1
  96. package/dist/lib.cjs/types/providers/index.d.ts +0 -2
  97. package/dist/lib.cjs/types/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.d.ts +1 -1
  98. package/dist/lib.cjs/types/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.d.ts +1 -1
  99. package/dist/lib.cjs/types/react/context/WalletServicesInnerContext.d.ts +6 -0
  100. package/dist/lib.cjs/types/react/{no-modal → context}/Web3AuthInnerContext.d.ts +1 -1
  101. package/dist/lib.cjs/types/react/hooks/index.d.ts +13 -0
  102. package/dist/lib.cjs/types/react/hooks/useCheckout.d.ts +8 -0
  103. package/dist/lib.cjs/types/react/hooks/useEnableMFA.d.ts +7 -0
  104. package/dist/lib.cjs/types/react/hooks/useIdentityToken.d.ts +13 -0
  105. package/dist/lib.cjs/types/react/hooks/useManageMFA.d.ts +7 -0
  106. package/dist/lib.cjs/types/react/hooks/useSwap.d.ts +8 -0
  107. package/dist/lib.cjs/types/react/hooks/useSwitchChain.d.ts +7 -0
  108. package/dist/lib.cjs/types/react/hooks/useWalletConnectScanner.d.ts +8 -0
  109. package/dist/lib.cjs/types/react/hooks/useWalletUI.d.ts +8 -0
  110. package/dist/lib.cjs/types/react/hooks/useWeb3Auth.d.ts +3 -0
  111. package/dist/lib.cjs/types/react/hooks/useWeb3AuthConnect.d.ts +9 -0
  112. package/dist/lib.cjs/types/react/hooks/useWeb3AuthDisconnect.d.ts +9 -0
  113. package/dist/lib.cjs/types/react/hooks/useWeb3AuthInner.d.ts +2 -0
  114. package/dist/lib.cjs/types/react/hooks/useWeb3AuthUser.d.ts +9 -0
  115. package/dist/lib.cjs/types/react/index.d.ts +3 -2
  116. package/dist/lib.cjs/types/react/interfaces.d.ts +21 -0
  117. package/dist/lib.cjs/types/react/solana/hooks/index.d.ts +4 -0
  118. package/dist/lib.cjs/types/react/solana/hooks/useSignAndSendTransaction.d.ts +9 -0
  119. package/dist/lib.cjs/types/react/solana/hooks/useSignMessage.d.ts +8 -0
  120. package/dist/lib.cjs/types/react/solana/hooks/useSignTransaction.d.ts +14 -0
  121. package/dist/lib.cjs/types/react/solana/hooks/useSolanaWallet.d.ts +8 -0
  122. package/dist/lib.cjs/types/react/solana/index.d.ts +1 -0
  123. package/dist/lib.cjs/types/react/wagmi/constants.d.ts +43 -0
  124. package/dist/lib.cjs/types/react/wagmi/index.d.ts +1 -0
  125. package/dist/lib.cjs/types/react/wagmi/interface.d.ts +4 -0
  126. package/dist/lib.cjs/types/react/wagmi/provider.d.ts +3 -0
  127. package/dist/lib.cjs/types/vue/WalletServicesInnerProvider.d.ts +1 -0
  128. package/dist/lib.cjs/types/vue/composables/index.d.ts +13 -0
  129. package/dist/lib.cjs/types/vue/composables/useCheckout.d.ts +9 -0
  130. package/dist/lib.cjs/types/vue/composables/useEnableMFA.d.ts +8 -0
  131. package/dist/lib.cjs/types/vue/composables/useIdentityToken.d.ts +9 -0
  132. package/dist/lib.cjs/types/vue/composables/useManageMFA.d.ts +8 -0
  133. package/dist/lib.cjs/types/vue/composables/useSwap.d.ts +9 -0
  134. package/dist/lib.cjs/types/vue/composables/useSwitchChain.d.ts +10 -0
  135. package/dist/lib.cjs/types/vue/composables/useWalletConnectScanner.d.ts +9 -0
  136. package/dist/lib.cjs/types/vue/composables/useWalletServicesPlugin.d.ts +2 -0
  137. package/dist/lib.cjs/types/vue/composables/useWalletUI.d.ts +9 -0
  138. package/dist/lib.cjs/types/vue/composables/useWeb3Auth.d.ts +3 -0
  139. package/dist/lib.cjs/types/vue/composables/useWeb3AuthConnect.d.ts +10 -0
  140. package/dist/lib.cjs/types/vue/composables/useWeb3AuthDisconnect.d.ts +10 -0
  141. package/dist/lib.cjs/types/vue/composables/useWeb3AuthInner.d.ts +2 -0
  142. package/dist/lib.cjs/types/vue/composables/useWeb3AuthUser.d.ts +10 -0
  143. package/dist/lib.cjs/types/vue/{wallet-services-plugin/context.d.ts → context/WalletServicesContext.d.ts} +2 -2
  144. package/dist/lib.cjs/types/vue/context/index.d.ts +1 -0
  145. package/dist/lib.cjs/types/vue/index.d.ts +4 -2
  146. package/dist/lib.cjs/types/vue/interfaces.d.ts +30 -0
  147. package/dist/lib.cjs/types/vue/solana/composables/index.d.ts +4 -0
  148. package/dist/lib.cjs/types/vue/solana/composables/useSignAndSendTransaction.d.ts +10 -0
  149. package/dist/lib.cjs/types/vue/solana/composables/useSignMessage.d.ts +9 -0
  150. package/dist/lib.cjs/types/vue/solana/composables/useSignTransaction.d.ts +10 -0
  151. package/dist/lib.cjs/types/vue/solana/composables/useSolanaWallet.d.ts +9 -0
  152. package/dist/lib.cjs/types/vue/solana/index.d.ts +1 -0
  153. package/dist/lib.cjs/types/vue/wagmi/constants.d.ts +43 -0
  154. package/dist/lib.cjs/types/vue/wagmi/index.d.ts +2 -0
  155. package/dist/lib.cjs/types/vue/wagmi/interface.d.ts +4 -0
  156. package/dist/lib.cjs/types/vue/wagmi/provider.d.ts +17 -0
  157. package/dist/lib.cjs/vue/{wallet-services-plugin/WalletServicesProvider.js → WalletServicesInnerProvider.js} +26 -43
  158. package/dist/lib.cjs/vue/{no-modal/Web3AuthProvider.js → Web3AuthProvider.js} +45 -86
  159. package/dist/lib.cjs/vue/composables/useCheckout.js +45 -0
  160. package/dist/lib.cjs/vue/composables/useEnableMFA.js +43 -0
  161. package/dist/lib.cjs/vue/composables/useIdentityToken.js +55 -0
  162. package/dist/lib.cjs/vue/composables/useManageMFA.js +43 -0
  163. package/dist/lib.cjs/vue/composables/useSwap.js +45 -0
  164. package/dist/lib.cjs/vue/composables/useSwitchChain.js +43 -0
  165. package/dist/lib.cjs/vue/composables/useWalletConnectScanner.js +45 -0
  166. package/dist/lib.cjs/vue/composables/useWalletServicesPlugin.js +12 -0
  167. package/dist/lib.cjs/vue/composables/useWalletUI.js +45 -0
  168. package/dist/lib.cjs/vue/composables/useWeb3Auth.js +28 -0
  169. package/dist/lib.cjs/vue/composables/useWeb3AuthConnect.js +61 -0
  170. package/dist/lib.cjs/vue/composables/useWeb3AuthDisconnect.js +43 -0
  171. package/dist/lib.cjs/vue/{no-modal/composables/useWeb3Auth.js → composables/useWeb3AuthInner.js} +9 -9
  172. package/dist/lib.cjs/vue/composables/useWeb3AuthUser.js +64 -0
  173. package/dist/lib.cjs/vue/index.js +28 -8
  174. package/dist/lib.cjs/vue/solana/composables/useSignAndSendTransaction.js +36 -0
  175. package/dist/lib.cjs/vue/solana/composables/useSignMessage.js +38 -0
  176. package/dist/lib.cjs/vue/solana/composables/useSignTransaction.js +36 -0
  177. package/dist/lib.cjs/vue/solana/composables/useSolanaWallet.js +64 -0
  178. package/dist/lib.cjs/vue/solana/index.js +13 -0
  179. package/dist/lib.cjs/vue/wagmi/constants.js +16 -0
  180. package/dist/lib.cjs/vue/wagmi/index.js +7 -0
  181. package/dist/lib.cjs/vue/wagmi/provider.js +244 -0
  182. package/dist/lib.esm/base/connector/baseConnector.js +7 -1
  183. package/dist/lib.esm/base/connector/constants.js +4 -6
  184. package/dist/lib.esm/base/constants.js +20 -0
  185. package/dist/lib.esm/base/cookie.js +34 -0
  186. package/dist/lib.esm/base/deserialize.js +11 -0
  187. package/dist/lib.esm/base/errors/index.js +14 -22
  188. package/dist/lib.esm/base/loglevel.js +3 -0
  189. package/dist/lib.esm/base/plugin/errors.js +2 -0
  190. package/dist/lib.esm/base/utils.js +53 -13
  191. package/dist/lib.esm/base/wallet/index.js +4 -5
  192. package/dist/lib.esm/connectors/auth-connector/authConnector.js +84 -31
  193. package/dist/lib.esm/connectors/base-evm-connector/baseEvmConnector.js +2 -9
  194. package/dist/lib.esm/connectors/base-solana-connector/baseSolanaConnector.js +1 -8
  195. package/dist/lib.esm/connectors/coinbase-connector/coinbaseConnector.js +16 -15
  196. package/dist/lib.esm/connectors/coinbase-connector/index.js +1 -0
  197. package/dist/lib.esm/connectors/injected-evm-connector/injectedEvmConnector.js +13 -12
  198. package/dist/lib.esm/connectors/injected-solana-connector/walletStandardConnector.js +14 -17
  199. package/dist/lib.esm/connectors/metamask-connector/metamaskConnector.js +52 -27
  200. package/dist/lib.esm/connectors/utils.js +14 -1
  201. package/dist/lib.esm/connectors/wallet-connect-v2-connector/WalletConnectV2Provider.js +8 -25
  202. package/dist/lib.esm/connectors/wallet-connect-v2-connector/config.js +20 -25
  203. package/dist/lib.esm/connectors/wallet-connect-v2-connector/walletConnectV2Connector.js +15 -15
  204. package/dist/lib.esm/connectors/wallet-connect-v2-connector/walletConnectV2Utils.js +1 -11
  205. package/dist/lib.esm/index.js +14 -16
  206. package/dist/lib.esm/noModal.js +223 -79
  207. package/dist/lib.esm/plugins/nft-checkout-plugin/embed.js +4 -1
  208. package/dist/lib.esm/plugins/nft-checkout-plugin/plugin.js +4 -10
  209. package/dist/lib.esm/plugins/wallet-services-plugin/plugin.js +7 -9
  210. package/dist/lib.esm/providers/account-abstraction-provider/index.js +2 -2
  211. package/dist/lib.esm/providers/account-abstraction-provider/providers/AccountAbstractionProvider.js +38 -21
  212. package/dist/lib.esm/providers/account-abstraction-provider/providers/utils.js +0 -10
  213. package/dist/lib.esm/providers/account-abstraction-provider/rpc/ethRpcMiddlewares.js +26 -3
  214. package/dist/lib.esm/providers/base-provider/baseProvider.js +7 -9
  215. package/dist/lib.esm/providers/base-provider/utils.js +3 -3
  216. package/dist/lib.esm/providers/ethereum-mpc-provider/index.js +1 -0
  217. package/dist/lib.esm/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.js +5 -18
  218. package/dist/lib.esm/providers/ethereum-mpc-provider/providers/signingProviders/signingUtils.js +3 -13
  219. package/dist/lib.esm/providers/ethereum-mpc-provider/rpc/ethRpcMiddlewares.js +1 -0
  220. package/dist/lib.esm/providers/ethereum-provider/providers/converter.js +1 -0
  221. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/formatter.js +10 -11
  222. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/interfaces.js +3 -3
  223. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/utils.js +1 -0
  224. package/dist/lib.esm/providers/ethereum-provider/rpc/walletMidddleware.js +8 -0
  225. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.js +2 -15
  226. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/walletStandardProvider.js +5 -12
  227. package/dist/lib.esm/providers/solana-provider/rpc/solanaRpcMiddlewares.js +1 -1
  228. package/dist/lib.esm/providers/solana-provider/solanaWallet.js +3 -0
  229. package/dist/lib.esm/providers/xrpl-provider/index.js +2 -0
  230. package/dist/lib.esm/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.js +3 -14
  231. package/dist/lib.esm/providers/xrpl-provider/rpc/xrplRpcMiddlewares.js +1 -0
  232. package/dist/lib.esm/react/Web3AuthProvider.js +17 -0
  233. package/dist/lib.esm/react/context/WalletServicesInnerContext.js +70 -0
  234. package/dist/lib.esm/react/context/Web3AuthInnerContext.js +129 -0
  235. package/dist/lib.esm/react/hooks/useCheckout.js +32 -0
  236. package/dist/lib.esm/react/hooks/useEnableMFA.js +28 -0
  237. package/dist/lib.esm/react/hooks/useIdentityToken.js +40 -0
  238. package/dist/lib.esm/react/hooks/useManageMFA.js +28 -0
  239. package/dist/lib.esm/react/hooks/useSwap.js +32 -0
  240. package/dist/lib.esm/react/hooks/useSwitchChain.js +30 -0
  241. package/dist/lib.esm/react/hooks/useWalletConnectScanner.js +32 -0
  242. package/dist/lib.esm/react/hooks/useWalletServicesPlugin.js +17 -0
  243. package/dist/lib.esm/react/hooks/useWalletUI.js +32 -0
  244. package/dist/lib.esm/react/hooks/useWeb3Auth.js +26 -0
  245. package/dist/lib.esm/react/hooks/useWeb3AuthConnect.js +46 -0
  246. package/dist/lib.esm/react/hooks/useWeb3AuthDisconnect.js +28 -0
  247. package/dist/lib.esm/react/hooks/useWeb3AuthInner.js +13 -0
  248. package/dist/lib.esm/react/hooks/useWeb3AuthUser.js +48 -0
  249. package/dist/lib.esm/react/index.js +14 -5
  250. package/dist/lib.esm/react/solana/hooks/useSignAndSendTransaction.js +33 -0
  251. package/dist/lib.esm/react/solana/hooks/useSignMessage.js +34 -0
  252. package/dist/lib.esm/react/solana/hooks/useSignTransaction.js +32 -0
  253. package/dist/lib.esm/react/solana/hooks/useSolanaWallet.js +42 -0
  254. package/dist/lib.esm/react/solana/index.js +4 -0
  255. package/dist/lib.esm/react/wagmi/constants.js +14 -0
  256. package/dist/lib.esm/react/wagmi/index.js +1 -0
  257. package/dist/lib.esm/react/wagmi/provider.js +179 -0
  258. package/dist/lib.esm/vue/WalletServicesInnerProvider.js +71 -0
  259. package/dist/lib.esm/vue/Web3AuthProvider.js +154 -0
  260. package/dist/lib.esm/vue/composables/useCheckout.js +32 -0
  261. package/dist/lib.esm/vue/composables/useEnableMFA.js +30 -0
  262. package/dist/lib.esm/vue/composables/useIdentityToken.js +42 -0
  263. package/dist/lib.esm/vue/composables/useManageMFA.js +30 -0
  264. package/dist/lib.esm/vue/composables/useSwap.js +32 -0
  265. package/dist/lib.esm/vue/composables/useSwitchChain.js +30 -0
  266. package/dist/lib.esm/vue/composables/useWalletConnectScanner.js +32 -0
  267. package/dist/lib.esm/vue/composables/useWalletServicesPlugin.js +10 -0
  268. package/dist/lib.esm/vue/composables/useWalletUI.js +32 -0
  269. package/dist/lib.esm/vue/composables/useWeb3Auth.js +26 -0
  270. package/dist/lib.esm/vue/composables/useWeb3AuthConnect.js +48 -0
  271. package/dist/lib.esm/vue/composables/useWeb3AuthDisconnect.js +30 -0
  272. package/dist/lib.esm/vue/composables/useWeb3AuthInner.js +11 -0
  273. package/dist/lib.esm/vue/composables/useWeb3AuthUser.js +51 -0
  274. package/dist/lib.esm/vue/index.js +15 -5
  275. package/dist/lib.esm/vue/solana/composables/useSignAndSendTransaction.js +34 -0
  276. package/dist/lib.esm/vue/solana/composables/useSignMessage.js +36 -0
  277. package/dist/lib.esm/vue/solana/composables/useSignTransaction.js +34 -0
  278. package/dist/lib.esm/vue/solana/composables/useSolanaWallet.js +51 -0
  279. package/dist/lib.esm/vue/solana/index.js +4 -0
  280. package/dist/lib.esm/vue/wagmi/constants.js +14 -0
  281. package/dist/lib.esm/vue/wagmi/index.js +1 -0
  282. package/dist/lib.esm/vue/wagmi/provider.js +237 -0
  283. package/dist/noModal.umd.min.js +1 -1
  284. package/dist/noModal.umd.min.js.LICENSE.txt +0 -26
  285. package/package.json +81 -20
  286. package/dist/lib.cjs/base/chain/config.js +0 -323
  287. package/dist/lib.cjs/react/no-modal/Web3AuthProvider.js +0 -15
  288. package/dist/lib.cjs/react/wallet-services-plugin/WalletServicesProvider.js +0 -16
  289. package/dist/lib.cjs/react/wallet-services-plugin/hooks/useWalletServicesPlugin.js +0 -26
  290. package/dist/lib.cjs/types/base/chain/config.d.ts +0 -5
  291. package/dist/lib.cjs/types/react/no-modal/hooks/index.d.ts +0 -1
  292. package/dist/lib.cjs/types/react/no-modal/hooks/useWeb3Auth.d.ts +0 -2
  293. package/dist/lib.cjs/types/react/no-modal/index.d.ts +0 -3
  294. package/dist/lib.cjs/types/react/no-modal/interfaces.d.ts +0 -15
  295. package/dist/lib.cjs/types/react/wallet-services-plugin/WalletServicesContext.d.ts +0 -7
  296. package/dist/lib.cjs/types/react/wallet-services-plugin/WalletServicesProvider.d.ts +0 -7
  297. package/dist/lib.cjs/types/react/wallet-services-plugin/hooks/index.d.ts +0 -1
  298. package/dist/lib.cjs/types/react/wallet-services-plugin/index.d.ts +0 -4
  299. package/dist/lib.cjs/types/react/wallet-services-plugin/interfaces.d.ts +0 -5
  300. package/dist/lib.cjs/types/vue/no-modal/composables/index.d.ts +0 -1
  301. package/dist/lib.cjs/types/vue/no-modal/composables/useWeb3Auth.d.ts +0 -2
  302. package/dist/lib.cjs/types/vue/no-modal/index.d.ts +0 -3
  303. package/dist/lib.cjs/types/vue/no-modal/interfaces.d.ts +0 -39
  304. package/dist/lib.cjs/types/vue/wallet-services-plugin/WalletServicesProvider.d.ts +0 -1
  305. package/dist/lib.cjs/types/vue/wallet-services-plugin/composables/index.d.ts +0 -1
  306. package/dist/lib.cjs/types/vue/wallet-services-plugin/composables/useWalletServicesPlugin.d.ts +0 -2
  307. package/dist/lib.cjs/types/vue/wallet-services-plugin/index.d.ts +0 -4
  308. package/dist/lib.cjs/types/vue/wallet-services-plugin/interfaces.d.ts +0 -13
  309. package/dist/lib.cjs/vue/wallet-services-plugin/composables/useWalletServicesPlugin.js +0 -24
  310. package/dist/lib.esm/base/chain/config.js +0 -318
  311. package/dist/lib.esm/react/no-modal/Web3AuthInnerContext.js +0 -197
  312. package/dist/lib.esm/react/no-modal/Web3AuthProvider.js +0 -13
  313. package/dist/lib.esm/react/no-modal/hooks/useWeb3Auth.js +0 -24
  314. package/dist/lib.esm/react/wallet-services-plugin/WalletServicesContext.js +0 -95
  315. package/dist/lib.esm/react/wallet-services-plugin/WalletServicesProvider.js +0 -14
  316. package/dist/lib.esm/react/wallet-services-plugin/hooks/useWalletServicesPlugin.js +0 -24
  317. package/dist/lib.esm/vue/no-modal/Web3AuthProvider.js +0 -203
  318. package/dist/lib.esm/vue/no-modal/composables/useWeb3Auth.js +0 -22
  319. package/dist/lib.esm/vue/wallet-services-plugin/WalletServicesProvider.js +0 -96
  320. package/dist/lib.esm/vue/wallet-services-plugin/composables/useWalletServicesPlugin.js +0 -22
  321. /package/dist/lib.cjs/types/react/{no-modal/Web3AuthProvider.d.ts → Web3AuthProvider.d.ts} +0 -0
  322. /package/dist/lib.cjs/types/react/{wallet-services-plugin/hooks → hooks}/useWalletServicesPlugin.d.ts +0 -0
  323. /package/dist/lib.cjs/types/vue/{no-modal/Web3AuthProvider.d.ts → Web3AuthProvider.d.ts} +0 -0
  324. /package/dist/lib.cjs/vue/{wallet-services-plugin/context.js → context/WalletServicesContext.js} +0 -0
  325. /package/dist/lib.esm/vue/{wallet-services-plugin/context.js → context/WalletServicesContext.js} +0 -0
@@ -1,39 +0,0 @@
1
- import type { AuthUserInfo, LoginParams } from "@web3auth/auth";
2
- import type { Ref, ShallowRef } from "vue";
3
- import type { CONNECTOR_STATUS_TYPE, ConnectorFn, IPlugin, IProvider, IWeb3AuthCoreOptions, PluginFn, UserAuthInfo, WALLET_CONNECTOR_TYPE } from "../../base";
4
- import { type Web3AuthNoModal } from "../../noModal";
5
- export type Web3AuthContextConfig = {
6
- web3AuthOptions: IWeb3AuthCoreOptions;
7
- connectors?: ConnectorFn[];
8
- plugins?: PluginFn[];
9
- };
10
- export interface Web3AuthProviderProps {
11
- config: Web3AuthContextConfig;
12
- }
13
- interface IBaseWeb3AuthComposableContext {
14
- isConnecting: Ref<boolean>;
15
- connectError: Ref<Error | null>;
16
- isConnected: Ref<boolean>;
17
- provider: Ref<IProvider | null>;
18
- userInfo: Ref<Partial<AuthUserInfo> | null>;
19
- isMFAEnabled: Ref<boolean>;
20
- isInitializing: Ref<boolean>;
21
- initError: Ref<Error | null>;
22
- isInitialized: Ref<boolean>;
23
- status: Ref<CONNECTOR_STATUS_TYPE | null>;
24
- enableMFA(params?: LoginParams): Promise<void>;
25
- manageMFA(params?: LoginParams): Promise<void>;
26
- logout(params?: {
27
- cleanup: boolean;
28
- }): Promise<void>;
29
- getPlugin(pluginName: string): IPlugin | null;
30
- authenticateUser(): Promise<UserAuthInfo>;
31
- switchChain(params: {
32
- chainId: string;
33
- }): Promise<void>;
34
- }
35
- export interface IWeb3AuthContext extends IBaseWeb3AuthComposableContext {
36
- web3Auth: ShallowRef<Web3AuthNoModal | null>;
37
- connectTo<T>(walletName: WALLET_CONNECTOR_TYPE, loginParams?: T): Promise<IProvider | null>;
38
- }
39
- export {};
@@ -1 +0,0 @@
1
- export declare const WalletServicesProvider: import("vue").DefineComponent<{}, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
@@ -1 +0,0 @@
1
- export * from "./useWalletServicesPlugin";
@@ -1,2 +0,0 @@
1
- import { IWalletServicesContext } from "../interfaces";
2
- export declare const useWalletServicesPlugin: () => IWalletServicesContext;
@@ -1,4 +0,0 @@
1
- export * from "./composables";
2
- export * from "./context";
3
- export * from "./interfaces";
4
- export * from "./WalletServicesProvider";
@@ -1,13 +0,0 @@
1
- import type { BaseEmbedControllerState } from "@toruslabs/base-controllers";
2
- import type { Ref } from "vue";
3
- import type { WalletServicesPluginType } from "../../plugins/wallet-services-plugin";
4
- export interface IBaseWalletServicesComposableContext {
5
- isPluginConnected: Ref<boolean>;
6
- showWalletConnectScanner(showWalletConnectParams?: BaseEmbedControllerState["showWalletConnect"]): Promise<void>;
7
- showCheckout(showCheckoutParams?: BaseEmbedControllerState["showCheckout"]): Promise<void>;
8
- showWalletUI(showWalletUiParams?: BaseEmbedControllerState["showWalletUi"]): Promise<void>;
9
- showSwap(showSwapParams?: BaseEmbedControllerState["showSwap"]): Promise<void>;
10
- }
11
- export interface IWalletServicesContext extends IBaseWalletServicesComposableContext {
12
- plugin: Ref<WalletServicesPluginType | null>;
13
- }
@@ -1,24 +0,0 @@
1
- 'use strict';
2
-
3
- var vue = require('vue');
4
- require('../../../base/errors/index.js');
5
- require('@toruslabs/base-controllers');
6
- require('@babel/runtime/helpers/defineProperty');
7
- require('@web3auth/auth');
8
- require('../../../base/wallet/index.js');
9
- require('../../../base/connector/constants.js');
10
- require('jwt-decode');
11
- require('../../../base/loglevel.js');
12
- var errors = require('../../../base/plugin/errors.js');
13
- require('../../../base/plugin/IPlugin.js');
14
- require('@toruslabs/constants');
15
- require('@toruslabs/http-helpers');
16
- var context = require('../context.js');
17
-
18
- const useWalletServicesPlugin = () => {
19
- const context$1 = vue.inject(context.WalletServicesContextKey);
20
- if (!context$1) throw errors.WalletServicesPluginError.fromCode(1000, "usage of `useWalletServicesPlugin` not wrapped in `WalletServicesProvider`.");
21
- return context$1;
22
- };
23
-
24
- exports.useWalletServicesPlugin = useWalletServicesPlugin;
@@ -1,318 +0,0 @@
1
- import { WalletInitializationError } from '../errors/index.js';
2
- import { CHAIN_NAMESPACES } from '@toruslabs/base-controllers';
3
-
4
- const INFURA_PROXY_URL = "https://api.web3auth.io/infura-service/v1";
5
- const getDefaultNetworkId = chainNamespace => {
6
- if (chainNamespace === CHAIN_NAMESPACES.EIP155) {
7
- return 1;
8
- }
9
- if (chainNamespace === CHAIN_NAMESPACES.SOLANA) {
10
- return 1;
11
- }
12
- if (chainNamespace === CHAIN_NAMESPACES.XRPL) {
13
- return 1;
14
- }
15
- throw WalletInitializationError.invalidParams(`Chain namespace ${chainNamespace} is not supported`);
16
- };
17
- // TODO: remove this function and get this from dashboard instead
18
- const getEvmChainConfig = (chainId, web3AuthClientId = "") => {
19
- const chainNamespace = CHAIN_NAMESPACES.EIP155;
20
- const infuraRpcTarget = `${INFURA_PROXY_URL}/${chainId}/${web3AuthClientId}`;
21
- if (chainId === 1) {
22
- return {
23
- logo: "https://images.toruswallet.io/eth.svg",
24
- chainNamespace,
25
- chainId: "0x1",
26
- rpcTarget: infuraRpcTarget,
27
- displayName: "Ethereum Mainnet",
28
- blockExplorerUrl: "https://etherscan.io/",
29
- ticker: "ETH",
30
- tickerName: "Ethereum",
31
- decimals: 18
32
- };
33
- }
34
- if (chainId === 10) {
35
- return {
36
- chainNamespace: CHAIN_NAMESPACES.EIP155,
37
- decimals: 18,
38
- blockExplorerUrl: "https://optimistic.etherscan.io",
39
- chainId: "0xa",
40
- displayName: "Optimism",
41
- logo: "optimism.svg",
42
- rpcTarget: infuraRpcTarget,
43
- ticker: "ETH",
44
- tickerName: "Ethereum"
45
- };
46
- }
47
- if (chainId === 8453) {
48
- return {
49
- chainNamespace: CHAIN_NAMESPACES.EIP155,
50
- decimals: 18,
51
- blockExplorerUrl: "https://basescan.org",
52
- chainId: "0x2105",
53
- displayName: "Base",
54
- logo: "base.svg",
55
- rpcTarget: infuraRpcTarget,
56
- ticker: "ETH",
57
- tickerName: "Ethereum"
58
- };
59
- }
60
- if (chainId === 42161) {
61
- return {
62
- chainNamespace: CHAIN_NAMESPACES.EIP155,
63
- decimals: 18,
64
- blockExplorerUrl: "https://arbiscan.io",
65
- chainId: "0xa4b1",
66
- displayName: "Arbitrum One",
67
- logo: "arbitrum.svg",
68
- rpcTarget: infuraRpcTarget,
69
- ticker: "ETH",
70
- tickerName: "Ethereum"
71
- };
72
- }
73
- if (chainId === 59144) {
74
- return {
75
- chainNamespace: CHAIN_NAMESPACES.EIP155,
76
- decimals: 18,
77
- blockExplorerUrl: "https://lineascan.build",
78
- chainId: "0xe708",
79
- logo: "https://images.toruswallet.io/eth.svg",
80
- rpcTarget: infuraRpcTarget,
81
- ticker: "ETH",
82
- tickerName: "Ethereum",
83
- displayName: "Linea"
84
- };
85
- }
86
- if (chainId === 11155111) {
87
- return {
88
- logo: "https://images.toruswallet.io/eth.svg",
89
- chainNamespace,
90
- chainId: "0xaa36a7",
91
- rpcTarget: infuraRpcTarget,
92
- displayName: "Sepolia Testnet",
93
- blockExplorerUrl: "https://sepolia.etherscan.io/",
94
- ticker: "ETH",
95
- tickerName: "Ethereum",
96
- decimals: 18
97
- };
98
- }
99
- if (chainId === 137) {
100
- return {
101
- logo: "https://images.toruswallet.io/polygon.svg",
102
- chainNamespace,
103
- chainId: "0x89",
104
- rpcTarget: infuraRpcTarget,
105
- displayName: "Polygon Mainnet",
106
- blockExplorerUrl: "https://polygonscan.com",
107
- ticker: "POL",
108
- tickerName: "Polygon Ecosystem Token"
109
- };
110
- }
111
- if (chainId === 80002) {
112
- return {
113
- logo: "https://images.toruswallet.io/polygon.svg",
114
- chainNamespace,
115
- chainId: "0x13882",
116
- rpcTarget: infuraRpcTarget,
117
- displayName: "Polygon Amoy Testnet",
118
- blockExplorerUrl: "https://www.oklink.com/amoy",
119
- ticker: "POL",
120
- tickerName: "Polygon Ecosystem Token",
121
- decimals: 18
122
- };
123
- }
124
- if (chainId === 56) {
125
- return {
126
- logo: "https://images.toruswallet.io/bnb.png",
127
- chainNamespace,
128
- chainId: "0x38",
129
- rpcTarget: infuraRpcTarget,
130
- displayName: "Binance SmartChain Mainnet",
131
- blockExplorerUrl: "https://bscscan.com",
132
- ticker: "BNB",
133
- tickerName: "Binance SmartChain",
134
- decimals: 18
135
- };
136
- }
137
- if (chainId === 97) {
138
- return {
139
- logo: "https://images.toruswallet.io/bnb.png",
140
- chainNamespace,
141
- chainId: "0x61",
142
- rpcTarget: infuraRpcTarget,
143
- displayName: "Binance SmartChain Testnet",
144
- blockExplorerUrl: "https://testnet.bscscan.com",
145
- ticker: "BNB",
146
- tickerName: "Binance SmartChain",
147
- decimals: 18
148
- };
149
- }
150
- if (chainId === 25) {
151
- return {
152
- logo: "https://images.toruswallet.io/cro.svg",
153
- chainNamespace,
154
- chainId: "0x19",
155
- rpcTarget: "https://rpc.cronos.org",
156
- displayName: "Cronos Mainnet",
157
- blockExplorerUrl: "https://cronoscan.com/",
158
- ticker: "CRO",
159
- tickerName: "Cronos"
160
- };
161
- }
162
- if (chainId === 338) {
163
- return {
164
- logo: "https://images.toruswallet.io/cro.svg",
165
- chainNamespace,
166
- chainId: "0x152",
167
- rpcTarget: "https://rpc-t3.cronos.org/",
168
- displayName: "Cronos Testnet",
169
- blockExplorerUrl: "https://cronoscan.com/",
170
- ticker: "CRO",
171
- tickerName: "Cronos",
172
- decimals: 18
173
- };
174
- }
175
- if (chainId === 8217) {
176
- return {
177
- logo: "https://images.toruswallet.io/klay.svg",
178
- chainNamespace,
179
- chainId: "0x2019",
180
- rpcTarget: "https://public-node-api.klaytnapi.com/v1/cypress",
181
- displayName: "Klaytn Mainnet",
182
- blockExplorerUrl: "https://scope.klaytn.com",
183
- ticker: "KLAY",
184
- tickerName: "Klaytn",
185
- decimals: 18
186
- };
187
- }
188
- if (chainId === 1946) {
189
- return {
190
- chainNamespace: CHAIN_NAMESPACES.EIP155,
191
- chainId: "0x79a",
192
- rpcTarget: "https://rpc.minato.soneium.org",
193
- displayName: "Soneium Minato Testnet",
194
- blockExplorerUrl: "https://explorer-testnet.soneium.org",
195
- ticker: "ETH",
196
- tickerName: "ETH",
197
- logo: "https://iili.io/2i5xce2.png"
198
- };
199
- }
200
- if (chainId === 1868) {
201
- return {
202
- chainNamespace: CHAIN_NAMESPACES.EIP155,
203
- chainId: "0x74c",
204
- rpcTarget: "https://rpc.soneium.org",
205
- displayName: "Soneium Mainnet",
206
- blockExplorerUrl: "https://soneium.blockscout.com",
207
- ticker: "ETH",
208
- tickerName: "ETH",
209
- logo: "https://iili.io/2i5xce2.png"
210
- };
211
- }
212
- return null;
213
- };
214
- const getSolanaChainConfig = chainId => {
215
- const chainNamespace = CHAIN_NAMESPACES.SOLANA;
216
- // support both cross chain id and base solana chain id from 1
217
- if (chainId === 101 || chainId === 1) {
218
- return {
219
- logo: "https://images.toruswallet.io/sol.svg",
220
- chainNamespace,
221
- chainId: "0x65",
222
- rpcTarget: "https://api.mainnet-beta.solana.com",
223
- displayName: "Solana Mainnet",
224
- blockExplorerUrl: "https://explorer.solana.com",
225
- ticker: "SOL",
226
- tickerName: "Solana",
227
- decimals: 9
228
- };
229
- } else if (chainId === 102 || chainId === 2) {
230
- return {
231
- logo: "https://images.toruswallet.io/sol.svg",
232
- chainNamespace,
233
- chainId: "0x66",
234
- rpcTarget: "https://api.testnet.solana.com",
235
- displayName: "Solana Testnet",
236
- blockExplorerUrl: "https://explorer.solana.com?cluster=testnet",
237
- ticker: "SOL",
238
- tickerName: "Solana",
239
- decimals: 9
240
- };
241
- } else if (chainId === 103 || chainId === 3) {
242
- return {
243
- logo: "https://images.toruswallet.io/sol.svg",
244
- chainNamespace,
245
- chainId: "0x67",
246
- rpcTarget: "https://api.devnet.solana.com",
247
- displayName: "Solana Devnet",
248
- blockExplorerUrl: "https://explorer.solana.com?cluster=devnet",
249
- ticker: "SOL",
250
- tickerName: "Solana",
251
- decimals: 9
252
- };
253
- }
254
- return null;
255
- };
256
- const getXrplChainConfig = chainId => {
257
- const chainNamespace = CHAIN_NAMESPACES.XRPL;
258
- if (chainId === 1) {
259
- return {
260
- chainNamespace,
261
- decimals: 15,
262
- chainId: "0x1",
263
- logo: "https://images.toruswallet.io/XRP.svg",
264
- rpcTarget: "https://ripple-node.tor.us",
265
- wsTarget: "wss://s2.ripple.com",
266
- ticker: "XRP",
267
- tickerName: "XRPL",
268
- displayName: "xrpl mainnet",
269
- blockExplorerUrl: "https://livenet.xrpl.org"
270
- };
271
- }
272
- if (chainId === 2) {
273
- return {
274
- chainNamespace,
275
- decimals: 15,
276
- chainId: "0x2",
277
- logo: "https://images.toruswallet.io/XRP.svg",
278
- rpcTarget: "https://testnet-ripple-node.tor.us",
279
- wsTarget: "wss://s.altnet.rippletest.net",
280
- ticker: "XRP",
281
- tickerName: "XRPL",
282
- displayName: "xrpl testnet",
283
- blockExplorerUrl: "https://testnet.xrpl.org",
284
- isTestnet: true
285
- };
286
- }
287
- if (chainId === 3) {
288
- return {
289
- chainNamespace,
290
- decimals: 15,
291
- chainId: "0x3",
292
- logo: "https://images.toruswallet.io/XRP.svg",
293
- rpcTarget: "https://devnet-ripple-node.tor.us",
294
- wsTarget: "wss://s.devnet.rippletest.net/",
295
- ticker: "XRP",
296
- tickerName: "XRPL",
297
- displayName: "xrpl devnet",
298
- blockExplorerUrl: "https://devnet.xrpl.org",
299
- isTestnet: true
300
- };
301
- }
302
- return null;
303
- };
304
- const getChainConfig = (chainNamespace, chainId, web3AuthClientId) => {
305
- if (chainNamespace === CHAIN_NAMESPACES.OTHER) return null;
306
- const finalChainId = chainId ? typeof chainId === "number" ? chainId : parseInt(chainId, 16) : getDefaultNetworkId(chainNamespace);
307
- if (chainNamespace === CHAIN_NAMESPACES.EIP155) {
308
- return getEvmChainConfig(finalChainId, web3AuthClientId);
309
- } else if (chainNamespace === CHAIN_NAMESPACES.SOLANA) {
310
- return getSolanaChainConfig(finalChainId);
311
- }
312
- if (chainNamespace === CHAIN_NAMESPACES.XRPL) {
313
- return getXrplChainConfig(finalChainId);
314
- }
315
- return null;
316
- };
317
-
318
- export { getChainConfig, getEvmChainConfig, getSolanaChainConfig, getXrplChainConfig };
@@ -1,197 +0,0 @@
1
- import { createContext, useState, useCallback, useEffect, useMemo, createElement } from 'react';
2
- import { WalletInitializationError, WalletLoginError } from '../../base/errors/index.js';
3
- import '@toruslabs/base-controllers';
4
- import '@babel/runtime/helpers/defineProperty';
5
- import '@web3auth/auth';
6
- import '../../base/wallet/index.js';
7
- import { CONNECTOR_EVENTS, CONNECTOR_STATUS } from '../../base/connector/constants.js';
8
- import 'jwt-decode';
9
- import '../../base/loglevel.js';
10
- import '../../base/plugin/errors.js';
11
- import '../../base/plugin/IPlugin.js';
12
- import '@toruslabs/constants';
13
- import '@toruslabs/http-helpers';
14
- import { Web3AuthNoModal } from '../../noModal.js';
15
-
16
- const Web3AuthInnerContext = createContext(null);
17
- function Web3AuthInnerProvider(params) {
18
- const {
19
- children,
20
- config
21
- } = params;
22
- const [web3Auth, setWeb3Auth] = useState(null);
23
- const [isConnecting, setIsConnecting] = useState(false);
24
- const [isInitializing, setIsInitializing] = useState(false);
25
- const [initError, setInitError] = useState(null);
26
- const [connectError, setConnectError] = useState(null);
27
- const [isConnected, setIsConnected] = useState(false);
28
- const [provider, setProvider] = useState(null);
29
- const [userInfo, setUserInfo] = useState(null);
30
- const [isMFAEnabled, setIsMFAEnabled] = useState(false);
31
- const [isInitialized, setIsInitialized] = useState(false);
32
- const [status, setStatus] = useState(null);
33
- const getPlugin = useCallback(name => {
34
- if (!web3Auth) throw WalletInitializationError.notReady();
35
- return web3Auth.getPlugin(name);
36
- }, [web3Auth]);
37
- useEffect(() => {
38
- const resetHookState = () => {
39
- setProvider(null);
40
- setUserInfo(null);
41
- setIsMFAEnabled(false);
42
- setIsConnected(false);
43
- setStatus(null);
44
- };
45
- resetHookState();
46
- const {
47
- web3AuthOptions
48
- } = config;
49
- const web3Instance = new Web3AuthNoModal(web3AuthOptions);
50
- setWeb3Auth(web3Instance);
51
- }, [config]);
52
- useEffect(() => {
53
- async function init() {
54
- try {
55
- setInitError(null);
56
- setIsInitializing(true);
57
- await web3Auth.init();
58
- } catch (error) {
59
- setInitError(error);
60
- } finally {
61
- setIsInitializing(false);
62
- }
63
- }
64
- if (web3Auth) init();
65
- }, [web3Auth]);
66
- useEffect(() => {
67
- const addState = async () => {
68
- setProvider(web3Auth.provider);
69
- const userState = await web3Auth.getUserInfo();
70
- setUserInfo(userState);
71
- setIsMFAEnabled((userState === null || userState === void 0 ? void 0 : userState.isMfaEnabled) || false);
72
- };
73
- const resetState = () => {
74
- setProvider(null);
75
- setUserInfo(null);
76
- setIsMFAEnabled(false);
77
- };
78
- if (web3Auth) {
79
- if (isConnected) addState();else resetState();
80
- }
81
- }, [web3Auth, isConnected]);
82
- // TODO: don't throw error in init, connect in v9
83
- useEffect(() => {
84
- const notReadyListener = () => setStatus(CONNECTOR_STATUS.NOT_READY);
85
- const readyListener = () => {
86
- setStatus(web3Auth.status);
87
- setIsInitialized(true);
88
- };
89
- const connectedListener = () => {
90
- setStatus(web3Auth.status);
91
- // we do this because of rehydration issues. status connected is fired first but web3auth sdk is not ready yet.
92
- if (web3Auth.status === CONNECTOR_STATUS.CONNECTED) {
93
- setIsInitialized(true);
94
- setIsConnected(true);
95
- }
96
- };
97
- const disconnectedListener = () => {
98
- setStatus(web3Auth.status);
99
- setIsConnected(false);
100
- };
101
- const connectingListener = () => {
102
- setStatus(web3Auth.status);
103
- };
104
- const errorListener = () => {
105
- setStatus(CONNECTOR_STATUS.ERRORED);
106
- };
107
- if (web3Auth) {
108
- // web3Auth is initialized here.
109
- setStatus(web3Auth.status);
110
- web3Auth.on(CONNECTOR_EVENTS.NOT_READY, notReadyListener);
111
- web3Auth.on(CONNECTOR_EVENTS.READY, readyListener);
112
- web3Auth.on(CONNECTOR_EVENTS.CONNECTED, connectedListener);
113
- web3Auth.on(CONNECTOR_EVENTS.DISCONNECTED, disconnectedListener);
114
- web3Auth.on(CONNECTOR_EVENTS.CONNECTING, connectingListener);
115
- web3Auth.on(CONNECTOR_EVENTS.ERRORED, errorListener);
116
- }
117
- return () => {
118
- if (web3Auth) {
119
- web3Auth.off(CONNECTOR_EVENTS.NOT_READY, notReadyListener);
120
- web3Auth.off(CONNECTOR_EVENTS.READY, readyListener);
121
- web3Auth.off(CONNECTOR_EVENTS.CONNECTED, connectedListener);
122
- web3Auth.off(CONNECTOR_EVENTS.DISCONNECTED, disconnectedListener);
123
- web3Auth.off(CONNECTOR_EVENTS.CONNECTING, connectingListener);
124
- web3Auth.off(CONNECTOR_EVENTS.ERRORED, errorListener);
125
- }
126
- };
127
- }, [web3Auth]);
128
- const enableMFA = useCallback(async loginParams => {
129
- if (!web3Auth) throw WalletInitializationError.notReady();
130
- if (!isConnected) throw WalletLoginError.notConnectedError();
131
- await web3Auth.enableMFA(loginParams);
132
- const localUserInfo = await web3Auth.getUserInfo();
133
- setUserInfo(localUserInfo);
134
- setIsMFAEnabled(localUserInfo.isMfaEnabled || false);
135
- }, [web3Auth, isConnected]);
136
- const manageMFA = useCallback(async loginParams => {
137
- if (!web3Auth) throw WalletInitializationError.notReady();
138
- if (!isConnected) throw WalletLoginError.notConnectedError();
139
- await web3Auth.manageMFA(loginParams);
140
- }, [web3Auth, isConnected]);
141
- const logout = useCallback(async (logoutParams = {
142
- cleanup: false
143
- }) => {
144
- if (!web3Auth) throw WalletInitializationError.notReady();
145
- if (!isConnected) throw WalletLoginError.notConnectedError();
146
- await web3Auth.logout(logoutParams);
147
- }, [web3Auth, isConnected]);
148
- const connectTo = useCallback(async (walletName, loginParams) => {
149
- if (!web3Auth) throw WalletInitializationError.notReady();
150
- try {
151
- setConnectError(null);
152
- setIsConnecting(true);
153
- const localProvider = await web3Auth.connectTo(walletName, loginParams);
154
- return localProvider;
155
- } catch (error) {
156
- setConnectError(error);
157
- throw error;
158
- } finally {
159
- setIsConnecting(false);
160
- }
161
- }, [web3Auth]);
162
- const authenticateUser = useCallback(async () => {
163
- if (!web3Auth) throw WalletInitializationError.notReady();
164
- return web3Auth.authenticateUser();
165
- }, [web3Auth]);
166
- const switchChain = useCallback(chainParams => {
167
- if (!web3Auth) throw WalletInitializationError.notReady();
168
- return web3Auth.switchChain(chainParams);
169
- }, [web3Auth]);
170
- const value = useMemo(() => {
171
- return {
172
- web3Auth,
173
- isConnected,
174
- isInitialized,
175
- provider,
176
- userInfo,
177
- isMFAEnabled,
178
- status,
179
- getPlugin,
180
- connectTo,
181
- enableMFA,
182
- manageMFA,
183
- logout,
184
- authenticateUser,
185
- switchChain,
186
- isInitializing,
187
- isConnecting,
188
- initError,
189
- connectError
190
- };
191
- }, [web3Auth, isConnected, isInitialized, provider, userInfo, isMFAEnabled, status, connectTo, getPlugin, enableMFA, manageMFA, logout, authenticateUser, switchChain, isConnecting, isInitializing, initError, connectError]);
192
- return createElement(Web3AuthInnerContext.Provider, {
193
- value
194
- }, children);
195
- }
196
-
197
- export { Web3AuthInnerContext, Web3AuthInnerProvider };
@@ -1,13 +0,0 @@
1
- import { createElement } from 'react';
2
- import { Web3AuthInnerProvider } from './Web3AuthInnerContext.js';
3
-
4
- function Web3AuthProvider({
5
- config,
6
- children
7
- }) {
8
- return createElement(Web3AuthInnerProvider, {
9
- config
10
- }, children);
11
- }
12
-
13
- export { Web3AuthProvider };
@@ -1,24 +0,0 @@
1
- import { useContext } from 'react';
2
- import { WalletInitializationError } from '../../../base/errors/index.js';
3
- import '@toruslabs/base-controllers';
4
- import '@babel/runtime/helpers/defineProperty';
5
- import '@web3auth/auth';
6
- import '../../../base/wallet/index.js';
7
- import '../../../base/connector/constants.js';
8
- import 'jwt-decode';
9
- import '../../../base/loglevel.js';
10
- import '../../../base/plugin/errors.js';
11
- import '../../../base/plugin/IPlugin.js';
12
- import '@toruslabs/constants';
13
- import '@toruslabs/http-helpers';
14
- import { Web3AuthInnerContext } from '../Web3AuthInnerContext.js';
15
-
16
- const useWeb3Auth = () => {
17
- const context = useContext(Web3AuthInnerContext);
18
- if (!context) {
19
- throw WalletInitializationError.fromCode(1000, "usage of useWeb3Auth not wrapped in `Web3AuthContextProvider`.");
20
- }
21
- return context;
22
- };
23
-
24
- export { useWeb3Auth };