@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,6 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var _objectSpread = require('@babel/runtime/helpers/objectSpread2');
4
+ var ethereumControllers = require('@toruslabs/ethereum-controllers');
4
5
  var auth = require('@web3auth/auth');
5
6
 
6
7
  async function createAaMiddleware({
@@ -8,7 +9,7 @@ async function createAaMiddleware({
8
9
  handlers
9
10
  }) {
10
11
  const [eoaAddress] = await eoaProvider.request({
11
- method: "eth_accounts"
12
+ method: ethereumControllers.METHOD_TYPES.GET_ACCOUNTS
12
13
  });
13
14
  /**
14
15
  * Validates the keyholder address, and returns a normalized (i.e. lowercase)
@@ -155,7 +156,27 @@ async function createAaMiddleware({
155
156
  personal_sign: auth.createAsyncMiddleware(personalSign)
156
157
  });
157
158
  }
158
- function eoaProviderAsMiddleware(provider) {
159
+ async function createEoaMiddleware({
160
+ aaProvider
161
+ }) {
162
+ async function getAccounts(_req, res) {
163
+ const [, eoaAddress] = await aaProvider.request({
164
+ method: ethereumControllers.METHOD_TYPES.GET_ACCOUNTS
165
+ });
166
+ res.result = [eoaAddress];
167
+ }
168
+ async function requestAccounts(_req, res) {
169
+ const [, eoaAddress] = await aaProvider.request({
170
+ method: ethereumControllers.METHOD_TYPES.ETH_REQUEST_ACCOUNTS
171
+ });
172
+ res.result = [eoaAddress];
173
+ }
174
+ return auth.createScaffoldMiddleware({
175
+ eth_accounts: auth.createAsyncMiddleware(getAccounts),
176
+ eth_requestAccounts: auth.createAsyncMiddleware(requestAccounts)
177
+ });
178
+ }
179
+ function providerAsMiddleware(provider) {
159
180
  return async (req, res, _next, end) => {
160
181
  // send request to provider
161
182
  try {
@@ -169,4 +190,5 @@ function eoaProviderAsMiddleware(provider) {
169
190
  }
170
191
 
171
192
  exports.createAaMiddleware = createAaMiddleware;
172
- exports.eoaProviderAsMiddleware = eoaProviderAsMiddleware;
193
+ exports.createEoaMiddleware = createEoaMiddleware;
194
+ exports.providerAsMiddleware = providerAsMiddleware;
@@ -106,6 +106,8 @@ class BaseProvider extends baseControllers.BaseController {
106
106
  // we want events to propagate from Ethereum provider -> wrapper provider (e.g. CommonJRPC provider) -> SDK -> dapp
107
107
  // ensure that only one handler is added for each event
108
108
  const reEmitHandler = event => {
109
+ // skip newListener event
110
+ if (event === "newListener") return;
109
111
  // listen to the event from the Ethereum provider
110
112
  provider.on(event, (...args) => {
111
113
  // handle chainChanged event: update chainId state
@@ -0,0 +1,7 @@
1
+ 'use strict';
2
+
3
+ var EthereumSigningProvider = require('./providers/signingProviders/EthereumSigningProvider.js');
4
+
5
+
6
+
7
+ exports.EthereumSigningProvider = EthereumSigningProvider.EthereumSigningProvider;
@@ -4,8 +4,8 @@ var _objectSpread = require('@babel/runtime/helpers/objectSpread2');
4
4
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
5
5
  var util = require('@ethereumjs/util');
6
6
  var auth = require('@web3auth/auth');
7
- var index = require('../../../../base/errors/index.js');
8
7
  var baseControllers = require('@toruslabs/base-controllers');
8
+ var index = require('../../../../base/errors/index.js');
9
9
  require('../../../../base/wallet/index.js');
10
10
  require('../../../../base/connector/constants.js');
11
11
  require('jwt-decode');
@@ -6,8 +6,8 @@ var baseControllers = require('@toruslabs/base-controllers');
6
6
  var auth = require('@web3auth/auth');
7
7
  var ethers = require('ethers');
8
8
  var viem = require('viem');
9
- require('../../../../base/errors/index.js');
10
9
  require('@babel/runtime/helpers/defineProperty');
10
+ require('../../../../base/errors/index.js');
11
11
  require('../../../../base/wallet/index.js');
12
12
  require('../../../../base/connector/constants.js');
13
13
  require('jwt-decode');
@@ -4,9 +4,9 @@ var _objectSpread = require('@babel/runtime/helpers/objectSpread2');
4
4
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
5
5
  var util = require('@ethereumjs/util');
6
6
  var bignumber_js = require('bignumber.js');
7
- require('../../../../../base/errors/index.js');
8
7
  require('@toruslabs/base-controllers');
9
8
  require('@web3auth/auth');
9
+ require('../../../../../base/errors/index.js');
10
10
  require('../../../../../base/wallet/index.js');
11
11
  require('../../../../../base/connector/constants.js');
12
12
  require('jwt-decode');
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
3
  var auth = require('@web3auth/auth');
4
- var index = require('../../../../../base/errors/index.js');
5
4
  require('@toruslabs/base-controllers');
6
5
  require('@babel/runtime/helpers/defineProperty');
6
+ var index = require('../../../../../base/errors/index.js');
7
7
  require('../../../../../base/wallet/index.js');
8
8
  require('../../../../../base/connector/constants.js');
9
9
  require('jwt-decode');
@@ -3,10 +3,10 @@
3
3
  var walletStandardFeatures = require('@solana/wallet-standard-features');
4
4
  var web3_js = require('@solana/web3.js');
5
5
  var bs58 = require('@toruslabs/bs58');
6
- var index = require('../../../../base/errors/index.js');
7
6
  require('@toruslabs/base-controllers');
8
7
  require('@babel/runtime/helpers/defineProperty');
9
8
  require('@web3auth/auth');
9
+ var index = require('../../../../base/errors/index.js');
10
10
  require('../../../../base/wallet/index.js');
11
11
  require('../../../../base/connector/constants.js');
12
12
  require('jwt-decode');
@@ -0,0 +1,9 @@
1
+ 'use strict';
2
+
3
+ var xrplPrivateKeyProvider = require('./providers/privateKeyProviders/xrplPrivateKeyProvider.js');
4
+ var xrplWalletUtils = require('./providers/privateKeyProviders/xrplWalletUtils.js');
5
+
6
+
7
+
8
+ exports.XrplPrivateKeyProvider = xrplPrivateKeyProvider.XrplPrivateKeyProvider;
9
+ exports.getProviderHandlers = xrplWalletUtils.getProviderHandlers;
@@ -2,8 +2,8 @@
2
2
 
3
3
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
4
4
  var auth = require('@web3auth/auth');
5
- var index = require('../../../../base/errors/index.js');
6
5
  var baseControllers = require('@toruslabs/base-controllers');
6
+ var index = require('../../../../base/errors/index.js');
7
7
  require('../../../../base/wallet/index.js');
8
8
  require('../../../../base/connector/constants.js');
9
9
  require('jwt-decode');
@@ -0,0 +1,19 @@
1
+ 'use strict';
2
+
3
+ var react = require('react');
4
+ var WalletServicesInnerContext = require('./context/WalletServicesInnerContext.js');
5
+ var Web3AuthInnerContext = require('./context/Web3AuthInnerContext.js');
6
+
7
+ function Web3AuthProvider({
8
+ config,
9
+ children
10
+ }) {
11
+ const pluginChild = react.createElement(WalletServicesInnerContext.WalletServicesContextProvider, {
12
+ context: Web3AuthInnerContext.Web3AuthInnerContext
13
+ }, children);
14
+ return react.createElement(Web3AuthInnerContext.Web3AuthInnerProvider, {
15
+ config
16
+ }, pluginChild);
17
+ }
18
+
19
+ exports.Web3AuthProvider = Web3AuthProvider;
@@ -1,15 +1,15 @@
1
1
  'use strict';
2
2
 
3
3
  var react = require('react');
4
- require('../../base/errors/index.js');
5
4
  require('@toruslabs/base-controllers');
6
5
  require('@babel/runtime/helpers/defineProperty');
7
6
  require('@web3auth/auth');
7
+ require('../../base/errors/index.js');
8
8
  require('../../base/wallet/index.js');
9
9
  var constants = require('../../base/connector/constants.js');
10
10
  require('jwt-decode');
11
11
  require('../../base/loglevel.js');
12
- var errors = require('../../base/plugin/errors.js');
12
+ require('../../base/plugin/errors.js');
13
13
  var IPlugin = require('../../base/plugin/IPlugin.js');
14
14
  require('@toruslabs/constants');
15
15
  require('@toruslabs/http-helpers');
@@ -19,14 +19,15 @@ function WalletServicesContextProvider({
19
19
  children,
20
20
  context
21
21
  }) {
22
- const [isPluginConnected, setIsPluginConnected] = react.useState(false);
23
- const [walletServicesPlugin, setWalletServicesPlugin] = react.useState(null);
24
22
  const web3AuthContext = react.useContext(context);
25
23
  const {
26
24
  getPlugin,
27
25
  isInitialized,
28
26
  isConnected
29
27
  } = web3AuthContext;
28
+ const [ready, setReady] = react.useState(false);
29
+ const [connecting, setConnecting] = react.useState(false);
30
+ const [walletServicesPlugin, setWalletServicesPlugin] = react.useState(null);
30
31
  react.useEffect(() => {
31
32
  if (isInitialized) {
32
33
  const plugin = getPlugin(IPlugin.EVM_PLUGINS.WALLET_SERVICES);
@@ -36,59 +37,43 @@ function WalletServicesContextProvider({
36
37
  react.useEffect(() => {
37
38
  if (isConnected) {
38
39
  const plugin = getPlugin(IPlugin.EVM_PLUGINS.WALLET_SERVICES);
39
- if (!walletServicesPlugin) setWalletServicesPlugin(plugin);
40
+ setWalletServicesPlugin(plugin);
40
41
  // when rehydrating, the connectedListener may be registered after the connected event is emitted, we need to check the status here
41
- if ((walletServicesPlugin === null || walletServicesPlugin === void 0 ? void 0 : walletServicesPlugin.status) === constants.CONNECTOR_STATUS.CONNECTED) setIsPluginConnected(true);
42
+ if ((plugin === null || plugin === void 0 ? void 0 : plugin.status) === constants.CONNECTOR_STATUS.CONNECTED) setReady(true);
42
43
  }
43
44
  }, [isConnected, getPlugin, walletServicesPlugin]);
44
45
  react.useEffect(() => {
45
46
  const connectedListener = () => {
46
- setIsPluginConnected(true);
47
+ setReady(true);
48
+ setConnecting(false);
47
49
  };
48
50
  const disconnectedListener = () => {
49
- setIsPluginConnected(false);
51
+ setReady(false);
52
+ setConnecting(false);
53
+ };
54
+ const connectingListener = () => {
55
+ setConnecting(true);
50
56
  };
51
57
  if (walletServicesPlugin) {
52
58
  walletServicesPlugin.on(IPlugin.PLUGIN_EVENTS.CONNECTED, connectedListener);
53
59
  walletServicesPlugin.on(IPlugin.PLUGIN_EVENTS.DISCONNECTED, disconnectedListener);
60
+ walletServicesPlugin.on(IPlugin.PLUGIN_EVENTS.CONNECTING, connectingListener);
54
61
  }
55
62
  return () => {
56
63
  if (walletServicesPlugin) {
57
64
  walletServicesPlugin.off(IPlugin.PLUGIN_EVENTS.CONNECTED, connectedListener);
58
65
  walletServicesPlugin.off(IPlugin.PLUGIN_EVENTS.DISCONNECTED, disconnectedListener);
66
+ walletServicesPlugin.off(IPlugin.PLUGIN_EVENTS.CONNECTING, connectingListener);
59
67
  }
60
68
  };
61
69
  }, [walletServicesPlugin]);
62
- const showWalletConnectScanner = react.useCallback(async showWalletConnectParams => {
63
- if (!walletServicesPlugin) throw errors.WalletServicesPluginError.notInitialized();
64
- if (!isPluginConnected) throw errors.WalletServicesPluginError.walletPluginNotConnected();
65
- return walletServicesPlugin.showWalletConnectScanner(showWalletConnectParams);
66
- }, [walletServicesPlugin, isPluginConnected]);
67
- const showWalletUI = react.useCallback(async showWalletUiParams => {
68
- if (!walletServicesPlugin) throw errors.WalletServicesPluginError.notInitialized();
69
- if (!isPluginConnected) throw errors.WalletServicesPluginError.walletPluginNotConnected();
70
- return walletServicesPlugin.showWalletUi(showWalletUiParams);
71
- }, [walletServicesPlugin, isPluginConnected]);
72
- const showCheckout = react.useCallback(async showCheckoutParams => {
73
- if (!walletServicesPlugin) throw errors.WalletServicesPluginError.notInitialized();
74
- if (!isPluginConnected) throw errors.WalletServicesPluginError.walletPluginNotConnected();
75
- return walletServicesPlugin.showCheckout(showCheckoutParams);
76
- }, [walletServicesPlugin, isPluginConnected]);
77
- const showSwap = react.useCallback(async showSwapParams => {
78
- if (!walletServicesPlugin) throw errors.WalletServicesPluginError.notInitialized();
79
- if (!isPluginConnected) throw errors.WalletServicesPluginError.walletPluginNotConnected();
80
- return walletServicesPlugin.showSwap(showSwapParams);
81
- }, [walletServicesPlugin, isPluginConnected]);
82
70
  const value = react.useMemo(() => {
83
71
  return {
84
72
  plugin: walletServicesPlugin,
85
- isPluginConnected,
86
- showWalletConnectScanner,
87
- showCheckout,
88
- showWalletUI,
89
- showSwap
73
+ ready,
74
+ connecting
90
75
  };
91
- }, [walletServicesPlugin, isPluginConnected, showWalletConnectScanner, showCheckout, showWalletUI, showSwap]);
76
+ }, [walletServicesPlugin, ready, connecting]);
92
77
  return react.createElement(WalletServicesContext.Provider, {
93
78
  value
94
79
  }, children);
@@ -1,10 +1,10 @@
1
1
  'use strict';
2
2
 
3
3
  var react = require('react');
4
- var index = require('../../base/errors/index.js');
5
4
  require('@toruslabs/base-controllers');
6
5
  require('@babel/runtime/helpers/defineProperty');
7
6
  require('@web3auth/auth');
7
+ var index = require('../../base/errors/index.js');
8
8
  require('../../base/wallet/index.js');
9
9
  var constants = require('../../base/connector/constants.js');
10
10
  require('jwt-decode');
@@ -19,44 +19,36 @@ const Web3AuthInnerContext = react.createContext(null);
19
19
  function Web3AuthInnerProvider(params) {
20
20
  const {
21
21
  children,
22
- config
22
+ config,
23
+ initialState
23
24
  } = params;
24
- const [web3Auth, setWeb3Auth] = react.useState(null);
25
- const [isConnecting, setIsConnecting] = react.useState(false);
25
+ const {
26
+ web3AuthOptions
27
+ } = config;
28
+ const web3Auth = react.useMemo(() => {
29
+ setProvider(null);
30
+ return new noModal.Web3AuthNoModal(web3AuthOptions, initialState);
31
+ }, [web3AuthOptions, initialState]);
26
32
  const [isInitializing, setIsInitializing] = react.useState(false);
27
33
  const [initError, setInitError] = react.useState(null);
28
- const [connectError, setConnectError] = react.useState(null);
29
34
  const [isConnected, setIsConnected] = react.useState(false);
30
35
  const [provider, setProvider] = react.useState(null);
31
- const [userInfo, setUserInfo] = react.useState(null);
32
- const [isMFAEnabled, setIsMFAEnabled] = react.useState(false);
33
36
  const [isInitialized, setIsInitialized] = react.useState(false);
34
37
  const [status, setStatus] = react.useState(null);
38
+ const [isMFAEnabled, setIsMFAEnabled] = react.useState(false);
35
39
  const getPlugin = react.useCallback(name => {
36
40
  if (!web3Auth) throw index.WalletInitializationError.notReady();
37
41
  return web3Auth.getPlugin(name);
38
42
  }, [web3Auth]);
39
43
  react.useEffect(() => {
40
- const resetHookState = () => {
41
- setProvider(null);
42
- setUserInfo(null);
43
- setIsMFAEnabled(false);
44
- setIsConnected(false);
45
- setStatus(null);
46
- };
47
- resetHookState();
48
- const {
49
- web3AuthOptions
50
- } = config;
51
- const web3Instance = new noModal.Web3AuthNoModal(web3AuthOptions);
52
- setWeb3Auth(web3Instance);
53
- }, [config]);
54
- react.useEffect(() => {
44
+ const controller = new AbortController();
55
45
  async function init() {
56
46
  try {
57
47
  setInitError(null);
58
48
  setIsInitializing(true);
59
- await web3Auth.init();
49
+ await web3Auth.init({
50
+ signal: controller.signal
51
+ });
60
52
  } catch (error) {
61
53
  setInitError(error);
62
54
  } finally {
@@ -64,47 +56,43 @@ function Web3AuthInnerProvider(params) {
64
56
  }
65
57
  }
66
58
  if (web3Auth) init();
67
- }, [web3Auth]);
68
- react.useEffect(() => {
69
- const addState = async () => {
70
- setProvider(web3Auth.provider);
71
- const userState = await web3Auth.getUserInfo();
72
- setUserInfo(userState);
73
- setIsMFAEnabled((userState === null || userState === void 0 ? void 0 : userState.isMfaEnabled) || false);
74
- };
75
- const resetState = () => {
76
- setProvider(null);
77
- setUserInfo(null);
78
- setIsMFAEnabled(false);
59
+ return () => {
60
+ controller.abort();
79
61
  };
80
- if (web3Auth) {
81
- if (isConnected) addState();else resetState();
82
- }
83
- }, [web3Auth, isConnected]);
84
- // TODO: don't throw error in init, connect in v9
62
+ }, [web3Auth]);
85
63
  react.useEffect(() => {
86
64
  const notReadyListener = () => setStatus(constants.CONNECTOR_STATUS.NOT_READY);
87
65
  const readyListener = () => {
88
66
  setStatus(web3Auth.status);
89
67
  setIsInitialized(true);
90
68
  };
91
- const connectedListener = () => {
69
+ const connectedListener = data => {
92
70
  setStatus(web3Auth.status);
93
71
  // we do this because of rehydration issues. status connected is fired first but web3auth sdk is not ready yet.
94
72
  if (web3Auth.status === constants.CONNECTOR_STATUS.CONNECTED) {
95
73
  setIsInitialized(true);
96
74
  setIsConnected(true);
75
+ setProvider(data.provider);
97
76
  }
98
77
  };
99
78
  const disconnectedListener = () => {
100
79
  setStatus(web3Auth.status);
101
80
  setIsConnected(false);
81
+ setProvider(null);
102
82
  };
103
83
  const connectingListener = () => {
104
84
  setStatus(web3Auth.status);
105
85
  };
106
86
  const errorListener = () => {
107
- setStatus(constants.CONNECTOR_STATUS.ERRORED);
87
+ setStatus(web3Auth.status);
88
+ };
89
+ const rehydrationErrorListener = () => {
90
+ setStatus(web3Auth.status);
91
+ setIsConnected(false);
92
+ setProvider(null);
93
+ };
94
+ const mfaEnabledListener = isMFAEnabled => {
95
+ if (typeof isMFAEnabled === "boolean") setIsMFAEnabled(isMFAEnabled);
108
96
  };
109
97
  if (web3Auth) {
110
98
  // web3Auth is initialized here.
@@ -115,6 +103,8 @@ function Web3AuthInnerProvider(params) {
115
103
  web3Auth.on(constants.CONNECTOR_EVENTS.DISCONNECTED, disconnectedListener);
116
104
  web3Auth.on(constants.CONNECTOR_EVENTS.CONNECTING, connectingListener);
117
105
  web3Auth.on(constants.CONNECTOR_EVENTS.ERRORED, errorListener);
106
+ web3Auth.on(constants.CONNECTOR_EVENTS.REHYDRATION_ERROR, rehydrationErrorListener);
107
+ web3Auth.on(constants.CONNECTOR_EVENTS.MFA_ENABLED, mfaEnabledListener);
118
108
  }
119
109
  return () => {
120
110
  if (web3Auth) {
@@ -124,73 +114,25 @@ function Web3AuthInnerProvider(params) {
124
114
  web3Auth.off(constants.CONNECTOR_EVENTS.DISCONNECTED, disconnectedListener);
125
115
  web3Auth.off(constants.CONNECTOR_EVENTS.CONNECTING, connectingListener);
126
116
  web3Auth.off(constants.CONNECTOR_EVENTS.ERRORED, errorListener);
117
+ web3Auth.off(constants.CONNECTOR_EVENTS.REHYDRATION_ERROR, rehydrationErrorListener);
118
+ web3Auth.off(constants.CONNECTOR_EVENTS.MFA_ENABLED, mfaEnabledListener);
127
119
  }
128
120
  };
129
121
  }, [web3Auth]);
130
- const enableMFA = react.useCallback(async loginParams => {
131
- if (!web3Auth) throw index.WalletInitializationError.notReady();
132
- if (!isConnected) throw index.WalletLoginError.notConnectedError();
133
- await web3Auth.enableMFA(loginParams);
134
- const localUserInfo = await web3Auth.getUserInfo();
135
- setUserInfo(localUserInfo);
136
- setIsMFAEnabled(localUserInfo.isMfaEnabled || false);
137
- }, [web3Auth, isConnected]);
138
- const manageMFA = react.useCallback(async loginParams => {
139
- if (!web3Auth) throw index.WalletInitializationError.notReady();
140
- if (!isConnected) throw index.WalletLoginError.notConnectedError();
141
- await web3Auth.manageMFA(loginParams);
142
- }, [web3Auth, isConnected]);
143
- const logout = react.useCallback(async (logoutParams = {
144
- cleanup: false
145
- }) => {
146
- if (!web3Auth) throw index.WalletInitializationError.notReady();
147
- if (!isConnected) throw index.WalletLoginError.notConnectedError();
148
- await web3Auth.logout(logoutParams);
149
- }, [web3Auth, isConnected]);
150
- const connectTo = react.useCallback(async (walletName, loginParams) => {
151
- if (!web3Auth) throw index.WalletInitializationError.notReady();
152
- try {
153
- setConnectError(null);
154
- setIsConnecting(true);
155
- const localProvider = await web3Auth.connectTo(walletName, loginParams);
156
- return localProvider;
157
- } catch (error) {
158
- setConnectError(error);
159
- throw error;
160
- } finally {
161
- setIsConnecting(false);
162
- }
163
- }, [web3Auth]);
164
- const authenticateUser = react.useCallback(async () => {
165
- if (!web3Auth) throw index.WalletInitializationError.notReady();
166
- return web3Auth.authenticateUser();
167
- }, [web3Auth]);
168
- const switchChain = react.useCallback(chainParams => {
169
- if (!web3Auth) throw index.WalletInitializationError.notReady();
170
- return web3Auth.switchChain(chainParams);
171
- }, [web3Auth]);
172
122
  const value = react.useMemo(() => {
173
123
  return {
174
124
  web3Auth,
175
125
  isConnected,
176
126
  isInitialized,
177
127
  provider,
178
- userInfo,
179
- isMFAEnabled,
180
128
  status,
181
- getPlugin,
182
- connectTo,
183
- enableMFA,
184
- manageMFA,
185
- logout,
186
- authenticateUser,
187
- switchChain,
188
129
  isInitializing,
189
- isConnecting,
190
130
  initError,
191
- connectError
131
+ isMFAEnabled,
132
+ getPlugin,
133
+ setIsMFAEnabled
192
134
  };
193
- }, [web3Auth, isConnected, isInitialized, provider, userInfo, isMFAEnabled, status, connectTo, getPlugin, enableMFA, manageMFA, logout, authenticateUser, switchChain, isConnecting, isInitializing, initError, connectError]);
135
+ }, [web3Auth, isConnected, isInitialized, provider, status, getPlugin, isInitializing, initError, isMFAEnabled, setIsMFAEnabled]);
194
136
  return react.createElement(Web3AuthInnerContext.Provider, {
195
137
  value
196
138
  }, children);
@@ -0,0 +1,45 @@
1
+ 'use strict';
2
+
3
+ var react = require('react');
4
+ require('@toruslabs/base-controllers');
5
+ require('@babel/runtime/helpers/defineProperty');
6
+ require('@web3auth/auth');
7
+ require('../../base/errors/index.js');
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 useWalletServicesPlugin = require('./useWalletServicesPlugin.js');
17
+
18
+ const useCheckout = () => {
19
+ const {
20
+ plugin,
21
+ ready
22
+ } = useWalletServicesPlugin.useWalletServicesPlugin();
23
+ const [loading, setLoading] = react.useState(false);
24
+ const [error, setError] = react.useState(null);
25
+ const showCheckout = react.useCallback(async showCheckoutParams => {
26
+ setLoading(true);
27
+ setError(null);
28
+ try {
29
+ if (!plugin) throw errors.WalletServicesPluginError.notInitialized();
30
+ if (!ready) throw errors.WalletServicesPluginError.walletPluginNotConnected();
31
+ await plugin.showCheckout(showCheckoutParams);
32
+ } catch (error) {
33
+ setError(error);
34
+ } finally {
35
+ setLoading(false);
36
+ }
37
+ }, [plugin, ready]);
38
+ return {
39
+ loading,
40
+ error,
41
+ showCheckout
42
+ };
43
+ };
44
+
45
+ exports.useCheckout = useCheckout;
@@ -0,0 +1,30 @@
1
+ 'use strict';
2
+
3
+ var react = require('react');
4
+ var useWeb3AuthInner = require('./useWeb3AuthInner.js');
5
+
6
+ const useEnableMFA = () => {
7
+ const {
8
+ web3Auth
9
+ } = useWeb3AuthInner.useWeb3AuthInner();
10
+ const [loading, setLoading] = react.useState(false);
11
+ const [error, setError] = react.useState(null);
12
+ const enableMFA = react.useCallback(async params => {
13
+ setLoading(true);
14
+ setError(null);
15
+ try {
16
+ await web3Auth.enableMFA(params);
17
+ } catch (error) {
18
+ setError(error);
19
+ } finally {
20
+ setLoading(false);
21
+ }
22
+ }, [web3Auth]);
23
+ return {
24
+ loading,
25
+ error,
26
+ enableMFA
27
+ };
28
+ };
29
+
30
+ exports.useEnableMFA = useEnableMFA;
@@ -0,0 +1,42 @@
1
+ 'use strict';
2
+
3
+ var react = require('react');
4
+ var useWeb3AuthInner = require('./useWeb3AuthInner.js');
5
+
6
+ const useIdentityToken = () => {
7
+ const {
8
+ web3Auth,
9
+ isConnected
10
+ } = useWeb3AuthInner.useWeb3AuthInner();
11
+ const [loading, setLoading] = react.useState(false);
12
+ const [error, setError] = react.useState(null);
13
+ const [token, setToken] = react.useState(null);
14
+ const authenticateUser = react.useCallback(async () => {
15
+ setLoading(true);
16
+ setError(null);
17
+ try {
18
+ const userAuthInfo = await web3Auth.authenticateUser();
19
+ if (userAuthInfo !== null && userAuthInfo !== void 0 && userAuthInfo.idToken) {
20
+ setToken(userAuthInfo.idToken);
21
+ }
22
+ return userAuthInfo === null || userAuthInfo === void 0 ? void 0 : userAuthInfo.idToken;
23
+ } catch (error) {
24
+ setError(error);
25
+ } finally {
26
+ setLoading(false);
27
+ }
28
+ }, [web3Auth]);
29
+ react.useEffect(() => {
30
+ if (!isConnected && token) {
31
+ setToken(null);
32
+ }
33
+ }, [isConnected, token]);
34
+ return {
35
+ loading,
36
+ error,
37
+ token,
38
+ authenticateUser
39
+ };
40
+ };
41
+
42
+ exports.useIdentityToken = useIdentityToken;
@@ -0,0 +1,30 @@
1
+ 'use strict';
2
+
3
+ var react = require('react');
4
+ var useWeb3AuthInner = require('./useWeb3AuthInner.js');
5
+
6
+ const useManageMFA = () => {
7
+ const {
8
+ web3Auth
9
+ } = useWeb3AuthInner.useWeb3AuthInner();
10
+ const [loading, setLoading] = react.useState(false);
11
+ const [error, setError] = react.useState(null);
12
+ const manageMFA = react.useCallback(async params => {
13
+ setLoading(true);
14
+ setError(null);
15
+ try {
16
+ await web3Auth.manageMFA(params);
17
+ } catch (error) {
18
+ setError(error);
19
+ } finally {
20
+ setLoading(false);
21
+ }
22
+ }, [web3Auth]);
23
+ return {
24
+ loading,
25
+ error,
26
+ manageMFA
27
+ };
28
+ };
29
+
30
+ exports.useManageMFA = useManageMFA;