@web3auth/no-modal 10.16.0 → 11.0.0-beta.1

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 (356) hide show
  1. package/dist/lib.cjs/account-linking/index.js +8 -0
  2. package/dist/lib.cjs/account-linking/react.js +95 -0
  3. package/dist/lib.cjs/account-linking/rest.js +54 -0
  4. package/dist/lib.cjs/account-linking/vue.js +98 -0
  5. package/dist/lib.cjs/base/analytics.js +13 -1
  6. package/dist/lib.cjs/base/connector/baseConnector.js +104 -2
  7. package/dist/lib.cjs/base/connector/connectorStatus.js +2 -0
  8. package/dist/lib.cjs/base/connector/constants.js +6 -2
  9. package/dist/lib.cjs/base/connector/utils.js +0 -21
  10. package/dist/lib.cjs/base/constants.js +4 -0
  11. package/dist/lib.cjs/base/cookie.js +6 -20
  12. package/dist/lib.cjs/base/errors/index.js +84 -12
  13. package/dist/lib.cjs/base/utils.js +22 -11
  14. package/dist/lib.cjs/base/wallet/index.js +7 -0
  15. package/dist/lib.cjs/base/wallet/solana.js +83 -0
  16. package/dist/lib.cjs/connectors/auth-connector/authConnector.js +566 -93
  17. package/dist/lib.cjs/connectors/auth-connector/authSolanaWallet.js +187 -0
  18. package/dist/lib.cjs/connectors/base-evm-connector/baseEvmConnector.js +55 -58
  19. package/dist/lib.cjs/connectors/base-solana-connector/baseSolanaConnector.js +57 -66
  20. package/dist/lib.cjs/connectors/coinbase-connector/coinbaseConnector.js +19 -14
  21. package/dist/lib.cjs/connectors/injected-evm-connector/injectedEvmConnector.js +18 -13
  22. package/dist/lib.cjs/connectors/injected-solana-connector/walletStandardConnector.js +24 -36
  23. package/dist/lib.cjs/connectors/metamask-connector/metamaskConnector.js +350 -131
  24. package/dist/lib.cjs/connectors/utils.js +8 -2
  25. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/WalletConnectV2Provider.js +12 -38
  26. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/config.js +4 -3
  27. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/walletConnectV2Connector.js +111 -73
  28. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/walletConnectV2Utils.js +24 -51
  29. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/wcSolanaWallet.js +144 -0
  30. package/dist/lib.cjs/index.js +55 -83
  31. package/dist/lib.cjs/noModal.js +957 -169
  32. package/dist/lib.cjs/plugins/wallet-services-plugin/plugin.js +23 -39
  33. package/dist/lib.cjs/providers/account-abstraction-provider/providers/AccountAbstractionProvider.js +12 -10
  34. package/dist/lib.cjs/providers/account-abstraction-provider/providers/utils.js +8 -6
  35. package/dist/lib.cjs/providers/account-abstraction-provider/rpc/ethRpcMiddlewares.js +47 -44
  36. package/dist/lib.cjs/providers/base-provider/CommonJRPCProvider.js +1 -3
  37. package/dist/lib.cjs/providers/base-provider/baseProvider.js +69 -35
  38. package/dist/lib.cjs/providers/base-provider/commonPrivateKeyProvider.js +8 -11
  39. package/dist/lib.cjs/providers/base-provider/index.js +0 -1
  40. package/dist/lib.cjs/providers/base-provider/jrpcClient.js +18 -19
  41. package/dist/lib.cjs/providers/base-provider/utils.js +0 -3
  42. package/dist/lib.cjs/providers/ethereum-provider/rpc/ethRpcMiddlewares.js +22 -43
  43. package/dist/lib.cjs/providers/ethereum-provider/rpc/jrpcClient.js +18 -19
  44. package/dist/lib.cjs/providers/ethereum-provider/rpc/walletMiddleware.js +200 -0
  45. package/dist/lib.cjs/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.js +9 -18
  46. package/dist/lib.cjs/providers/xrpl-provider/providers/privateKeyProviders/xrplWalletUtils.js +2 -1
  47. package/dist/lib.cjs/providers/xrpl-provider/rpc/JrpcClient.js +19 -26
  48. package/dist/lib.cjs/providers/xrpl-provider/rpc/xrplRpcMiddlewares.js +46 -37
  49. package/dist/lib.cjs/react/context/WalletServicesInnerContext.js +2 -69
  50. package/dist/lib.cjs/react/context/Web3AuthInnerContext.js +6 -161
  51. package/dist/lib.cjs/react/context/useWalletServicesContextValue.js +76 -0
  52. package/dist/lib.cjs/react/context/useWeb3AuthInnerContextValue.js +216 -0
  53. package/dist/lib.cjs/react/hooks/{useIdentityToken.js → useAuthTokenInfo.js} +6 -7
  54. package/dist/lib.cjs/react/hooks/useCheckout.js +4 -2
  55. package/dist/lib.cjs/react/hooks/useFunding.js +4 -2
  56. package/dist/lib.cjs/react/hooks/useReceive.js +4 -2
  57. package/dist/lib.cjs/react/hooks/useSwap.js +4 -2
  58. package/dist/lib.cjs/react/hooks/useWalletConnectScanner.js +4 -2
  59. package/dist/lib.cjs/react/hooks/useWalletServicesPlugin.js +3 -10
  60. package/dist/lib.cjs/react/hooks/useWalletUI.js +4 -2
  61. package/dist/lib.cjs/react/hooks/useWallets.js +51 -0
  62. package/dist/lib.cjs/react/hooks/useWeb3Auth.js +1 -22
  63. package/dist/lib.cjs/react/hooks/useWeb3AuthConnect.js +2 -2
  64. package/dist/lib.cjs/react/hooks/useWeb3AuthInner.js +4 -2
  65. package/dist/lib.cjs/react/index.js +12 -2
  66. package/dist/lib.cjs/react/solana/hooks/useSignAndSendTransaction.js +22 -4
  67. package/dist/lib.cjs/react/solana/hooks/useSignMessage.js +20 -2
  68. package/dist/lib.cjs/react/solana/hooks/useSignTransaction.js +22 -3
  69. package/dist/lib.cjs/react/solana/hooks/useSolanaWallet.js +34 -51
  70. package/dist/lib.cjs/react/solana/index.js +2 -0
  71. package/dist/lib.cjs/react/solana/provider.js +169 -0
  72. package/dist/lib.cjs/react/wagmi/provider.js +10 -8
  73. package/dist/lib.cjs/types/account-linking/index.d.ts +2 -0
  74. package/dist/lib.cjs/types/account-linking/interfaces.d.ts +90 -0
  75. package/dist/lib.cjs/types/account-linking/react.d.ts +19 -0
  76. package/dist/lib.cjs/types/account-linking/rest.d.ts +9 -0
  77. package/dist/lib.cjs/types/account-linking/vue.d.ts +20 -0
  78. package/dist/lib.cjs/types/base/analytics.d.ts +9 -0
  79. package/dist/lib.cjs/types/base/connector/baseConnector.d.ts +26 -5
  80. package/dist/lib.cjs/types/base/connector/connectorStatus.d.ts +1 -0
  81. package/dist/lib.cjs/types/base/connector/constants.d.ts +5 -0
  82. package/dist/lib.cjs/types/base/connector/interfaces.d.ts +72 -16
  83. package/dist/lib.cjs/types/base/connector/utils.d.ts +0 -3
  84. package/dist/lib.cjs/types/base/constants.d.ts +1 -0
  85. package/dist/lib.cjs/types/base/cookie.d.ts +0 -7
  86. package/dist/lib.cjs/types/base/core/IWeb3Auth.d.ts +57 -13
  87. package/dist/lib.cjs/types/base/errors/index.d.ts +15 -3
  88. package/dist/lib.cjs/types/base/hooks/index.d.ts +2 -2
  89. package/dist/lib.cjs/types/base/interfaces.d.ts +8 -2
  90. package/dist/lib.cjs/types/base/utils.d.ts +9 -2
  91. package/dist/lib.cjs/types/base/wallet/index.d.ts +3 -0
  92. package/dist/lib.cjs/types/base/wallet/solana.d.ts +19 -0
  93. package/dist/lib.cjs/types/connectors/auth-connector/authConnector.d.ts +37 -8
  94. package/dist/lib.cjs/types/connectors/auth-connector/authSolanaWallet.d.ts +35 -0
  95. package/dist/lib.cjs/types/connectors/auth-connector/interface.d.ts +77 -2
  96. package/dist/lib.cjs/types/connectors/base-evm-connector/baseEvmConnector.d.ts +8 -2
  97. package/dist/lib.cjs/types/connectors/base-solana-connector/baseSolanaConnector.d.ts +8 -2
  98. package/dist/lib.cjs/types/connectors/injected-evm-connector/injectedEvmConnector.d.ts +2 -2
  99. package/dist/lib.cjs/types/connectors/injected-solana-connector/walletStandardConnector.d.ts +10 -7
  100. package/dist/lib.cjs/types/connectors/metamask-connector/metamaskConnector.d.ts +35 -3
  101. package/dist/lib.cjs/types/connectors/utils.d.ts +2 -0
  102. package/dist/lib.cjs/types/connectors/wallet-connect-v2-connector/WalletConnectV2Provider.d.ts +0 -1
  103. package/dist/lib.cjs/types/connectors/wallet-connect-v2-connector/walletConnectV2Utils.d.ts +1 -5
  104. package/dist/lib.cjs/types/connectors/wallet-connect-v2-connector/wcSolanaWallet.d.ts +26 -0
  105. package/dist/lib.cjs/types/index.d.ts +1 -0
  106. package/dist/lib.cjs/types/noModal.d.ts +113 -10
  107. package/dist/lib.cjs/types/plugins/wallet-services-plugin/plugin.d.ts +1 -4
  108. package/dist/lib.cjs/types/providers/account-abstraction-provider/rpc/ethRpcMiddlewares.d.ts +4 -4
  109. package/dist/lib.cjs/types/providers/base-provider/baseProvider.d.ts +7 -0
  110. package/dist/lib.cjs/types/providers/base-provider/jrpcClient.d.ts +2 -5
  111. package/dist/lib.cjs/types/providers/base-provider/utils.d.ts +0 -1
  112. package/dist/lib.cjs/types/providers/ethereum-provider/index.d.ts +0 -1
  113. package/dist/lib.cjs/types/providers/ethereum-provider/rpc/ethRpcMiddlewares.d.ts +4 -4
  114. package/dist/lib.cjs/types/providers/ethereum-provider/rpc/index.d.ts +1 -1
  115. package/dist/lib.cjs/types/providers/ethereum-provider/rpc/jrpcClient.d.ts +2 -5
  116. package/dist/lib.cjs/types/providers/ethereum-provider/rpc/walletMiddleware.d.ts +3 -0
  117. package/dist/lib.cjs/types/providers/index.d.ts +0 -1
  118. package/dist/lib.cjs/types/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.d.ts +0 -1
  119. package/dist/lib.cjs/types/providers/xrpl-provider/rpc/JrpcClient.d.ts +3 -7
  120. package/dist/lib.cjs/types/providers/xrpl-provider/rpc/xrplRpcMiddlewares.d.ts +5 -12
  121. package/dist/lib.cjs/types/react/context/index.d.ts +4 -0
  122. package/dist/lib.cjs/types/react/context/useWalletServicesContextValue.d.ts +12 -0
  123. package/dist/lib.cjs/types/react/context/useWeb3AuthInnerContextValue.d.ts +26 -0
  124. package/dist/lib.cjs/types/react/hooks/index.d.ts +2 -1
  125. package/dist/lib.cjs/types/react/hooks/{useIdentityToken.d.ts → useAuthTokenInfo.d.ts} +4 -4
  126. package/dist/lib.cjs/types/react/hooks/useWallets.d.ts +8 -0
  127. package/dist/lib.cjs/types/react/hooks/useWeb3Auth.d.ts +1 -2
  128. package/dist/lib.cjs/types/react/hooks/useWeb3AuthConnect.d.ts +2 -2
  129. package/dist/lib.cjs/types/react/index.d.ts +1 -0
  130. package/dist/lib.cjs/types/react/solana/hooks/useSignAndSendTransaction.d.ts +7 -2
  131. package/dist/lib.cjs/types/react/solana/hooks/useSignTransaction.d.ts +8 -3
  132. package/dist/lib.cjs/types/react/solana/hooks/useSolanaWallet.d.ts +17 -4
  133. package/dist/lib.cjs/types/react/solana/index.d.ts +1 -0
  134. package/dist/lib.cjs/types/react/solana/provider.d.ts +26 -0
  135. package/dist/lib.cjs/types/vue/composables/index.d.ts +3 -1
  136. package/dist/lib.cjs/types/vue/composables/{useIdentityToken.d.ts → useAuthTokenInfo.d.ts} +3 -3
  137. package/dist/lib.cjs/types/vue/composables/useInjectedWeb3AuthInnerContext.d.ts +1 -0
  138. package/dist/lib.cjs/types/vue/composables/useWallets.d.ts +9 -0
  139. package/dist/lib.cjs/types/vue/composables/useWeb3Auth.d.ts +1 -2
  140. package/dist/lib.cjs/types/vue/composables/useWeb3AuthConnect.d.ts +2 -2
  141. package/dist/lib.cjs/types/vue/index.d.ts +2 -0
  142. package/dist/lib.cjs/types/vue/interfaces.d.ts +2 -2
  143. package/dist/lib.cjs/types/vue/solana/composables/index.d.ts +1 -0
  144. package/dist/lib.cjs/types/vue/solana/composables/useSignAndSendTransaction.d.ts +7 -2
  145. package/dist/lib.cjs/types/vue/solana/composables/useSignTransaction.d.ts +8 -3
  146. package/dist/lib.cjs/types/vue/solana/composables/useSolanaClient.d.ts +7 -0
  147. package/dist/lib.cjs/types/vue/solana/composables/useSolanaWallet.d.ts +17 -4
  148. package/dist/lib.cjs/types/vue/solana/constants.d.ts +3 -0
  149. package/dist/lib.cjs/types/vue/solana/index.d.ts +2 -0
  150. package/dist/lib.cjs/types/vue/solana/provider.d.ts +8 -0
  151. package/dist/lib.cjs/types/vue/useWalletServicesInnerContextValue.d.ts +13 -0
  152. package/dist/lib.cjs/types/vue/useWeb3AuthInnerContextValue.d.ts +26 -0
  153. package/dist/lib.cjs/types/x402/index.d.ts +43 -0
  154. package/dist/lib.cjs/types/x402/interfaces.d.ts +11 -0
  155. package/dist/lib.cjs/types/x402/react.d.ts +17 -0
  156. package/dist/lib.cjs/types/x402/vue.d.ts +18 -0
  157. package/dist/lib.cjs/vue/WalletServicesInnerProvider.js +9 -54
  158. package/dist/lib.cjs/vue/Web3AuthProvider.js +16 -177
  159. package/dist/lib.cjs/vue/composables/{useIdentityToken.js → useAuthTokenInfo.js} +10 -8
  160. package/dist/lib.cjs/vue/composables/useCheckout.js +4 -2
  161. package/dist/lib.cjs/vue/composables/useEnableMFA.js +4 -2
  162. package/dist/lib.cjs/vue/composables/useFunding.js +4 -2
  163. package/dist/lib.cjs/vue/composables/useInjectedWeb3AuthInnerContext.js +29 -0
  164. package/dist/lib.cjs/vue/composables/useManageMFA.js +4 -2
  165. package/dist/lib.cjs/vue/composables/useReceive.js +4 -2
  166. package/dist/lib.cjs/vue/composables/useSwap.js +4 -2
  167. package/dist/lib.cjs/vue/composables/useSwitchChain.js +4 -2
  168. package/dist/lib.cjs/vue/composables/useWalletConnectScanner.js +4 -2
  169. package/dist/lib.cjs/vue/composables/useWalletUI.js +4 -2
  170. package/dist/lib.cjs/vue/composables/useWallets.js +52 -0
  171. package/dist/lib.cjs/vue/composables/useWeb3Auth.js +1 -26
  172. package/dist/lib.cjs/vue/composables/useWeb3AuthConnect.js +6 -4
  173. package/dist/lib.cjs/vue/composables/useWeb3AuthDisconnect.js +4 -2
  174. package/dist/lib.cjs/vue/composables/useWeb3AuthInner.js +2 -20
  175. package/dist/lib.cjs/vue/composables/useWeb3AuthUser.js +4 -2
  176. package/dist/lib.cjs/vue/index.js +10 -2
  177. package/dist/lib.cjs/vue/solana/composables/useSignAndSendTransaction.js +6 -3
  178. package/dist/lib.cjs/vue/solana/composables/useSignMessage.js +6 -3
  179. package/dist/lib.cjs/vue/solana/composables/useSignTransaction.js +6 -3
  180. package/dist/lib.cjs/vue/solana/composables/useSolanaClient.js +14 -0
  181. package/dist/lib.cjs/vue/solana/composables/useSolanaWallet.js +60 -41
  182. package/dist/lib.cjs/vue/solana/constants.js +5 -0
  183. package/dist/lib.cjs/vue/solana/index.js +6 -0
  184. package/dist/lib.cjs/vue/solana/provider.js +110 -0
  185. package/dist/lib.cjs/vue/useWalletServicesInnerContextValue.js +75 -0
  186. package/dist/lib.cjs/vue/useWeb3AuthInnerContextValue.js +226 -0
  187. package/dist/lib.cjs/vue/wagmi/provider.js +28 -12
  188. package/dist/lib.cjs/x402/index.js +175 -0
  189. package/dist/lib.cjs/x402/interfaces.js +5 -0
  190. package/dist/lib.cjs/x402/react.js +64 -0
  191. package/dist/lib.cjs/x402/vue.js +58 -0
  192. package/dist/lib.esm/account-linking/index.js +1 -0
  193. package/dist/lib.esm/account-linking/react.js +74 -0
  194. package/dist/lib.esm/account-linking/rest.js +51 -0
  195. package/dist/lib.esm/account-linking/vue.js +78 -0
  196. package/dist/lib.esm/base/analytics.js +13 -1
  197. package/dist/lib.esm/base/connector/baseConnector.js +104 -2
  198. package/dist/lib.esm/base/connector/connectorStatus.js +2 -1
  199. package/dist/lib.esm/base/connector/constants.js +6 -2
  200. package/dist/lib.esm/base/connector/utils.js +1 -19
  201. package/dist/lib.esm/base/constants.js +4 -1
  202. package/dist/lib.esm/base/cookie.js +7 -20
  203. package/dist/lib.esm/base/errors/index.js +84 -13
  204. package/dist/lib.esm/base/utils.js +22 -7
  205. package/dist/lib.esm/base/wallet/index.js +2 -1
  206. package/dist/lib.esm/base/wallet/solana.js +81 -0
  207. package/dist/lib.esm/connectors/auth-connector/authConnector.js +527 -57
  208. package/dist/lib.esm/connectors/auth-connector/authSolanaWallet.js +175 -0
  209. package/dist/lib.esm/connectors/base-evm-connector/baseEvmConnector.js +55 -58
  210. package/dist/lib.esm/connectors/base-solana-connector/baseSolanaConnector.js +57 -66
  211. package/dist/lib.esm/connectors/coinbase-connector/coinbaseConnector.js +16 -13
  212. package/dist/lib.esm/connectors/injected-evm-connector/injectedEvmConnector.js +16 -13
  213. package/dist/lib.esm/connectors/injected-solana-connector/walletStandardConnector.js +22 -34
  214. package/dist/lib.esm/connectors/metamask-connector/metamaskConnector.js +366 -132
  215. package/dist/lib.esm/connectors/utils.js +9 -4
  216. package/dist/lib.esm/connectors/wallet-connect-v2-connector/WalletConnectV2Provider.js +12 -31
  217. package/dist/lib.esm/connectors/wallet-connect-v2-connector/config.js +1 -1
  218. package/dist/lib.esm/connectors/wallet-connect-v2-connector/walletConnectV2Connector.js +110 -73
  219. package/dist/lib.esm/connectors/wallet-connect-v2-connector/walletConnectV2Utils.js +21 -49
  220. package/dist/lib.esm/connectors/wallet-connect-v2-connector/wcSolanaWallet.js +130 -0
  221. package/dist/lib.esm/index.js +12 -19
  222. package/dist/lib.esm/noModal.js +975 -177
  223. package/dist/lib.esm/plugins/wallet-services-plugin/plugin.js +20 -39
  224. package/dist/lib.esm/providers/account-abstraction-provider/providers/AccountAbstractionProvider.js +9 -9
  225. package/dist/lib.esm/providers/account-abstraction-provider/providers/utils.js +3 -3
  226. package/dist/lib.esm/providers/account-abstraction-provider/rpc/ethRpcMiddlewares.js +48 -45
  227. package/dist/lib.esm/providers/base-provider/CommonJRPCProvider.js +2 -4
  228. package/dist/lib.esm/providers/base-provider/baseProvider.js +68 -38
  229. package/dist/lib.esm/providers/base-provider/commonPrivateKeyProvider.js +9 -12
  230. package/dist/lib.esm/providers/base-provider/index.js +1 -1
  231. package/dist/lib.esm/providers/base-provider/jrpcClient.js +20 -19
  232. package/dist/lib.esm/providers/base-provider/utils.js +1 -3
  233. package/dist/lib.esm/providers/ethereum-provider/rpc/ethRpcMiddlewares.js +23 -44
  234. package/dist/lib.esm/providers/ethereum-provider/rpc/jrpcClient.js +20 -19
  235. package/dist/lib.esm/providers/ethereum-provider/rpc/walletMiddleware.js +201 -0
  236. package/dist/lib.esm/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.js +6 -17
  237. package/dist/lib.esm/providers/xrpl-provider/providers/privateKeyProviders/xrplWalletUtils.js +2 -1
  238. package/dist/lib.esm/providers/xrpl-provider/rpc/JrpcClient.js +21 -25
  239. package/dist/lib.esm/providers/xrpl-provider/rpc/xrplRpcMiddlewares.js +48 -38
  240. package/dist/lib.esm/react/context/WalletServicesInnerContext.js +3 -57
  241. package/dist/lib.esm/react/context/Web3AuthInnerContext.js +7 -152
  242. package/dist/lib.esm/react/context/useWalletServicesContextValue.js +59 -0
  243. package/dist/lib.esm/react/context/useWeb3AuthInnerContextValue.js +203 -0
  244. package/dist/lib.esm/react/hooks/{useIdentityToken.js → useAuthTokenInfo.js} +6 -7
  245. package/dist/lib.esm/react/hooks/useWalletServicesPlugin.js +3 -10
  246. package/dist/lib.esm/react/hooks/useWallets.js +33 -0
  247. package/dist/lib.esm/react/hooks/useWeb3Auth.js +1 -22
  248. package/dist/lib.esm/react/hooks/useWeb3AuthConnect.js +2 -2
  249. package/dist/lib.esm/react/index.js +6 -1
  250. package/dist/lib.esm/react/solana/hooks/useSignAndSendTransaction.js +6 -4
  251. package/dist/lib.esm/react/solana/hooks/useSignMessage.js +4 -2
  252. package/dist/lib.esm/react/solana/hooks/useSignTransaction.js +6 -3
  253. package/dist/lib.esm/react/solana/hooks/useSolanaWallet.js +33 -28
  254. package/dist/lib.esm/react/solana/index.js +1 -0
  255. package/dist/lib.esm/react/solana/provider.js +153 -0
  256. package/dist/lib.esm/react/wagmi/provider.js +8 -8
  257. package/dist/lib.esm/vue/WalletServicesInnerProvider.js +4 -54
  258. package/dist/lib.esm/vue/Web3AuthProvider.js +7 -179
  259. package/dist/lib.esm/vue/composables/{useIdentityToken.js → useAuthTokenInfo.js} +6 -6
  260. package/dist/lib.esm/vue/composables/useCheckout.js +1 -1
  261. package/dist/lib.esm/vue/composables/useFunding.js +1 -1
  262. package/dist/lib.esm/vue/composables/useInjectedWeb3AuthInnerContext.js +11 -0
  263. package/dist/lib.esm/vue/composables/useReceive.js +1 -1
  264. package/dist/lib.esm/vue/composables/useSwap.js +1 -1
  265. package/dist/lib.esm/vue/composables/useWalletConnectScanner.js +1 -1
  266. package/dist/lib.esm/vue/composables/useWalletUI.js +1 -1
  267. package/dist/lib.esm/vue/composables/useWallets.js +35 -0
  268. package/dist/lib.esm/vue/composables/useWeb3Auth.js +1 -26
  269. package/dist/lib.esm/vue/composables/useWeb3AuthConnect.js +2 -2
  270. package/dist/lib.esm/vue/composables/useWeb3AuthInner.js +2 -6
  271. package/dist/lib.esm/vue/index.js +5 -1
  272. package/dist/lib.esm/vue/solana/composables/useSignAndSendTransaction.js +2 -1
  273. package/dist/lib.esm/vue/solana/composables/useSignMessage.js +2 -1
  274. package/dist/lib.esm/vue/solana/composables/useSignTransaction.js +3 -2
  275. package/dist/lib.esm/vue/solana/composables/useSolanaClient.js +12 -0
  276. package/dist/lib.esm/vue/solana/composables/useSolanaWallet.js +53 -35
  277. package/dist/lib.esm/vue/solana/constants.js +3 -0
  278. package/dist/lib.esm/vue/solana/index.js +3 -0
  279. package/dist/lib.esm/vue/solana/provider.js +99 -0
  280. package/dist/lib.esm/vue/useWalletServicesInnerContextValue.js +58 -0
  281. package/dist/lib.esm/vue/useWeb3AuthInnerContextValue.js +213 -0
  282. package/dist/lib.esm/vue/wagmi/provider.js +26 -12
  283. package/dist/lib.esm/x402/index.js +170 -0
  284. package/dist/lib.esm/x402/interfaces.js +3 -0
  285. package/dist/lib.esm/x402/react.js +59 -0
  286. package/dist/lib.esm/x402/vue.js +54 -0
  287. package/package.json +102 -53
  288. package/dist/lib.cjs/providers/ethereum-mpc-provider/index.js +0 -7
  289. package/dist/lib.cjs/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.js +0 -224
  290. package/dist/lib.cjs/providers/ethereum-mpc-provider/providers/signingProviders/signingUtils.js +0 -177
  291. package/dist/lib.cjs/providers/ethereum-mpc-provider/rpc/ethRpcMiddlewares.js +0 -21
  292. package/dist/lib.cjs/providers/ethereum-provider/providers/converter.js +0 -88
  293. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/constants.js +0 -27
  294. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/formatter.js +0 -383
  295. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/interfaces.js +0 -8
  296. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/utils.js +0 -93
  297. package/dist/lib.cjs/providers/ethereum-provider/providers/utils.js +0 -29
  298. package/dist/lib.cjs/providers/ethereum-provider/rpc/walletMidddleware.js +0 -251
  299. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.js +0 -65
  300. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/base/providerHandlers.js +0 -45
  301. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/utils.js +0 -16
  302. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/walletStandardProvider.js +0 -103
  303. package/dist/lib.cjs/providers/solana-provider/rpc/JrpcClient.js +0 -47
  304. package/dist/lib.cjs/providers/solana-provider/rpc/solanaRpcMiddlewares.js +0 -97
  305. package/dist/lib.cjs/providers/solana-provider/solanaWallet.js +0 -91
  306. package/dist/lib.cjs/types/connectors/injected-solana-connector/utils.d.ts +0 -3
  307. package/dist/lib.cjs/types/providers/ethereum-mpc-provider/index.d.ts +0 -1
  308. package/dist/lib.cjs/types/providers/ethereum-mpc-provider/providers/index.d.ts +0 -1
  309. package/dist/lib.cjs/types/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.d.ts +0 -74
  310. package/dist/lib.cjs/types/providers/ethereum-mpc-provider/providers/signingProviders/index.d.ts +0 -1
  311. package/dist/lib.cjs/types/providers/ethereum-mpc-provider/providers/signingProviders/signingUtils.d.ts +0 -12
  312. package/dist/lib.cjs/types/providers/ethereum-mpc-provider/rpc/ethRpcMiddlewares.d.ts +0 -3
  313. package/dist/lib.cjs/types/providers/ethereum-mpc-provider/rpc/interfaces.d.ts +0 -15
  314. package/dist/lib.cjs/types/providers/ethereum-provider/providers/converter.d.ts +0 -14
  315. package/dist/lib.cjs/types/providers/ethereum-provider/providers/index.d.ts +0 -1
  316. package/dist/lib.cjs/types/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/constants.d.ts +0 -16
  317. package/dist/lib.cjs/types/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/formatter.d.ts +0 -28
  318. package/dist/lib.cjs/types/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/index.d.ts +0 -4
  319. package/dist/lib.cjs/types/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/interfaces.d.ts +0 -46
  320. package/dist/lib.cjs/types/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/utils.d.ts +0 -11
  321. package/dist/lib.cjs/types/providers/ethereum-provider/providers/privateKeyProviders/index.d.ts +0 -1
  322. package/dist/lib.cjs/types/providers/ethereum-provider/providers/utils.d.ts +0 -5
  323. package/dist/lib.cjs/types/providers/ethereum-provider/rpc/walletMidddleware.d.ts +0 -3
  324. package/dist/lib.cjs/types/providers/solana-provider/index.d.ts +0 -4
  325. package/dist/lib.cjs/types/providers/solana-provider/interface.d.ts +0 -22
  326. package/dist/lib.cjs/types/providers/solana-provider/providers/index.d.ts +0 -1
  327. package/dist/lib.cjs/types/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.d.ts +0 -16
  328. package/dist/lib.cjs/types/providers/solana-provider/providers/injectedProviders/base/providerHandlers.d.ts +0 -3
  329. package/dist/lib.cjs/types/providers/solana-provider/providers/injectedProviders/index.d.ts +0 -2
  330. package/dist/lib.cjs/types/providers/solana-provider/providers/injectedProviders/utils.d.ts +0 -3
  331. package/dist/lib.cjs/types/providers/solana-provider/providers/injectedProviders/walletStandardProvider.d.ts +0 -9
  332. package/dist/lib.cjs/types/providers/solana-provider/rpc/JrpcClient.d.ts +0 -9
  333. package/dist/lib.cjs/types/providers/solana-provider/rpc/index.d.ts +0 -3
  334. package/dist/lib.cjs/types/providers/solana-provider/rpc/interfaces.d.ts +0 -27
  335. package/dist/lib.cjs/types/providers/solana-provider/rpc/solanaRpcMiddlewares.d.ts +0 -20
  336. package/dist/lib.cjs/types/providers/solana-provider/solanaWallet.d.ts +0 -29
  337. package/dist/lib.esm/providers/ethereum-mpc-provider/index.js +0 -1
  338. package/dist/lib.esm/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.js +0 -206
  339. package/dist/lib.esm/providers/ethereum-mpc-provider/providers/signingProviders/signingUtils.js +0 -163
  340. package/dist/lib.esm/providers/ethereum-mpc-provider/rpc/ethRpcMiddlewares.js +0 -20
  341. package/dist/lib.esm/providers/ethereum-provider/providers/converter.js +0 -85
  342. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/constants.js +0 -21
  343. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/formatter.js +0 -378
  344. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/interfaces.js +0 -8
  345. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/utils.js +0 -88
  346. package/dist/lib.esm/providers/ethereum-provider/providers/utils.js +0 -24
  347. package/dist/lib.esm/providers/ethereum-provider/rpc/walletMidddleware.js +0 -258
  348. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.js +0 -47
  349. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/base/providerHandlers.js +0 -43
  350. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/utils.js +0 -14
  351. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/walletStandardProvider.js +0 -91
  352. package/dist/lib.esm/providers/solana-provider/rpc/JrpcClient.js +0 -42
  353. package/dist/lib.esm/providers/solana-provider/rpc/solanaRpcMiddlewares.js +0 -89
  354. package/dist/lib.esm/providers/solana-provider/solanaWallet.js +0 -92
  355. package/dist/noModal.umd.min.js +0 -2
  356. package/dist/noModal.umd.min.js.LICENSE.txt +0 -46
@@ -1,21 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var react = require('react');
4
- require('@babel/runtime/helpers/objectSpread2');
5
- require('@babel/runtime/helpers/defineProperty');
6
- require('@segment/analytics-next');
7
- require('../../base/loglevel.js');
8
- require('@toruslabs/base-controllers');
9
- require('@web3auth/auth');
10
- require('../../base/errors/index.js');
11
- require('../../base/wallet/index.js');
12
- require('../../base/connector/connectorStatus.js');
13
- var constants = require('../../base/connector/constants.js');
14
- require('jwt-decode');
15
- require('../../base/plugin/errors.js');
16
- var IPlugin = require('../../base/plugin/IPlugin.js');
17
- require('@toruslabs/constants');
18
- require('@toruslabs/http-helpers');
4
+ var useWalletServicesContextValue = require('./useWalletServicesContextValue.js');
19
5
 
20
6
  const WalletServicesContext = react.createContext(null);
21
7
  function WalletServicesContextProvider({
@@ -23,60 +9,7 @@ function WalletServicesContextProvider({
23
9
  context
24
10
  }) {
25
11
  const web3AuthContext = react.useContext(context);
26
- const {
27
- getPlugin,
28
- isInitialized,
29
- isConnected
30
- } = web3AuthContext;
31
- const [ready, setReady] = react.useState(false);
32
- const [connecting, setConnecting] = react.useState(false);
33
- const [walletServicesPlugin, setWalletServicesPlugin] = react.useState(null);
34
- react.useEffect(() => {
35
- if (isInitialized) {
36
- const plugin = getPlugin(IPlugin.EVM_PLUGINS.WALLET_SERVICES);
37
- setWalletServicesPlugin(plugin);
38
- }
39
- }, [isInitialized, getPlugin]);
40
- react.useEffect(() => {
41
- if (isConnected) {
42
- const plugin = getPlugin(IPlugin.EVM_PLUGINS.WALLET_SERVICES);
43
- setWalletServicesPlugin(plugin);
44
- // when rehydrating, the connectedListener may be registered after the connected event is emitted, we need to check the status here
45
- if ((plugin === null || plugin === void 0 ? void 0 : plugin.status) === constants.CONNECTOR_STATUS.CONNECTED) setReady(true);
46
- }
47
- }, [isConnected, getPlugin, walletServicesPlugin]);
48
- react.useEffect(() => {
49
- const connectedListener = () => {
50
- setReady(true);
51
- setConnecting(false);
52
- };
53
- const disconnectedListener = () => {
54
- setReady(false);
55
- setConnecting(false);
56
- };
57
- const connectingListener = () => {
58
- setConnecting(true);
59
- };
60
- if (walletServicesPlugin) {
61
- walletServicesPlugin.on(IPlugin.PLUGIN_EVENTS.CONNECTED, connectedListener);
62
- walletServicesPlugin.on(IPlugin.PLUGIN_EVENTS.DISCONNECTED, disconnectedListener);
63
- walletServicesPlugin.on(IPlugin.PLUGIN_EVENTS.CONNECTING, connectingListener);
64
- }
65
- return () => {
66
- if (walletServicesPlugin) {
67
- walletServicesPlugin.removeListener(IPlugin.PLUGIN_EVENTS.CONNECTED, connectedListener);
68
- walletServicesPlugin.removeListener(IPlugin.PLUGIN_EVENTS.DISCONNECTED, disconnectedListener);
69
- walletServicesPlugin.removeListener(IPlugin.PLUGIN_EVENTS.CONNECTING, connectingListener);
70
- }
71
- };
72
- }, [walletServicesPlugin]);
73
- const value = react.useMemo(() => {
74
- return {
75
- plugin: walletServicesPlugin,
76
- ready,
77
- connecting
78
- };
79
- }, [walletServicesPlugin, ready, connecting]);
12
+ const value = useWalletServicesContextValue.useWalletServicesContextValue(web3AuthContext);
80
13
  return react.createElement(WalletServicesContext.Provider, {
81
14
  value
82
15
  }, children);
@@ -1,21 +1,8 @@
1
1
  'use strict';
2
2
 
3
3
  var react = require('react');
4
- var analytics = require('../../base/analytics.js');
5
- require('@toruslabs/base-controllers');
6
- require('@babel/runtime/helpers/defineProperty');
7
- require('@web3auth/auth');
8
- var index = require('../../base/errors/index.js');
9
- require('../../base/wallet/index.js');
10
- require('../../base/connector/connectorStatus.js');
11
- var constants = require('../../base/connector/constants.js');
12
- require('jwt-decode');
13
- require('../../base/loglevel.js');
14
- require('../../base/plugin/errors.js');
15
- require('../../base/plugin/IPlugin.js');
16
- require('@toruslabs/constants');
17
- require('@toruslabs/http-helpers');
18
4
  var noModal = require('../../noModal.js');
5
+ var useWeb3AuthInnerContextValue = require('./useWeb3AuthInnerContextValue.js');
19
6
 
20
7
  const Web3AuthInnerContext = react.createContext(null);
21
8
  function Web3AuthInnerProvider(params) {
@@ -27,153 +14,11 @@ function Web3AuthInnerProvider(params) {
27
14
  const {
28
15
  web3AuthOptions
29
16
  } = config;
30
- const web3Auth = react.useMemo(() => {
31
- setProvider(null);
32
- return new noModal.Web3AuthNoModal(web3AuthOptions, initialState);
33
- }, [web3AuthOptions, initialState]);
34
- const [chainId, setChainId] = react.useState(null);
35
- const [chainNamespace, setChainNamespace] = react.useState(null);
36
- const [isInitializing, setIsInitializing] = react.useState(false);
37
- const [initError, setInitError] = react.useState(null);
38
- const [isConnected, setIsConnected] = react.useState(false);
39
- const [provider, setProvider] = react.useState(null);
40
- const [isInitialized, setIsInitialized] = react.useState(false);
41
- const [status, setStatus] = react.useState(null);
42
- const [isMFAEnabled, setIsMFAEnabled] = react.useState(false);
43
- const [isAuthorized, setIsAuthorized] = react.useState(false);
44
- const getPlugin = react.useCallback(name => {
45
- if (!web3Auth) throw index.WalletInitializationError.notReady();
46
- return web3Auth.getPlugin(name);
47
- }, [web3Auth]);
48
- react.useEffect(() => {
49
- const controller = new AbortController();
50
- async function init() {
51
- try {
52
- var _web3Auth$currentChai;
53
- setInitError(null);
54
- setIsInitializing(true);
55
- web3Auth.setAnalyticsProperties({
56
- integration_type: analytics.ANALYTICS_INTEGRATION_TYPE.REACT_HOOKS
57
- });
58
- await web3Auth.init({
59
- signal: controller.signal
60
- });
61
- setChainId(web3Auth.currentChainId);
62
- setChainNamespace((_web3Auth$currentChai = web3Auth.currentChain) === null || _web3Auth$currentChai === void 0 ? void 0 : _web3Auth$currentChai.chainNamespace);
63
- } catch (error) {
64
- setInitError(error);
65
- } finally {
66
- setIsInitializing(false);
67
- }
68
- }
69
- if (web3Auth) init();
70
- return () => {
71
- controller.abort();
72
- };
73
- }, [web3Auth]);
74
- react.useEffect(() => {
75
- const handleChainChange = async chainId => {
76
- var _web3Auth$currentChai2;
77
- setChainId(chainId);
78
- setChainNamespace(web3Auth === null || web3Auth === void 0 || (_web3Auth$currentChai2 = web3Auth.currentChain) === null || _web3Auth$currentChai2 === void 0 ? void 0 : _web3Auth$currentChai2.chainNamespace);
79
- };
80
- if (provider) {
81
- provider.on("chainChanged", handleChainChange);
82
- return () => {
83
- if (provider) {
84
- provider.removeListener("chainChanged", handleChainChange);
85
- }
86
- };
87
- }
88
- }, [web3Auth, provider]);
89
- react.useEffect(() => {
90
- const notReadyListener = () => setStatus(constants.CONNECTOR_STATUS.NOT_READY);
91
- const readyListener = () => {
92
- setStatus(web3Auth.status);
93
- setIsInitialized(true);
94
- };
95
- const connectedListener = data => {
96
- setStatus(web3Auth.status);
97
- // we do this because of rehydration issues. status connected is fired first but web3auth sdk is not ready yet.
98
- if (web3Auth.status === constants.CONNECTOR_STATUS.CONNECTED) {
99
- setIsInitialized(true);
100
- setIsConnected(true);
101
- setProvider(data.provider);
102
- }
103
- };
104
- const disconnectedListener = () => {
105
- setStatus(web3Auth.status);
106
- setIsConnected(false);
107
- setIsAuthorized(false);
108
- setProvider(null);
109
- };
110
- const connectingListener = () => {
111
- setStatus(web3Auth.status);
112
- };
113
- const errorListener = () => {
114
- setStatus(web3Auth.status);
115
- };
116
- const rehydrationErrorListener = () => {
117
- setStatus(web3Auth.status);
118
- setIsConnected(false);
119
- setIsAuthorized(false);
120
- setProvider(null);
121
- };
122
- const authorizedListener = () => {
123
- setStatus(web3Auth.status);
124
- if (web3Auth.status === constants.CONNECTOR_STATUS.AUTHORIZED) {
125
- setIsConnected(true);
126
- setIsAuthorized(true);
127
- }
128
- };
129
- const mfaEnabledListener = isMFAEnabled => {
130
- if (typeof isMFAEnabled === "boolean") setIsMFAEnabled(isMFAEnabled);
131
- };
132
- // TODO: In strict mode, web3auth becomes null and .off throws an error sometimes.
133
- if (web3Auth) {
134
- // web3Auth is initialized here.
135
- setStatus(web3Auth.status);
136
- web3Auth.on(constants.CONNECTOR_EVENTS.NOT_READY, notReadyListener);
137
- web3Auth.on(constants.CONNECTOR_EVENTS.READY, readyListener);
138
- web3Auth.on(constants.CONNECTOR_EVENTS.CONNECTED, connectedListener);
139
- web3Auth.on(constants.CONNECTOR_EVENTS.AUTHORIZED, authorizedListener);
140
- web3Auth.on(constants.CONNECTOR_EVENTS.DISCONNECTED, disconnectedListener);
141
- web3Auth.on(constants.CONNECTOR_EVENTS.CONNECTING, connectingListener);
142
- web3Auth.on(constants.CONNECTOR_EVENTS.ERRORED, errorListener);
143
- web3Auth.on(constants.CONNECTOR_EVENTS.REHYDRATION_ERROR, rehydrationErrorListener);
144
- web3Auth.on(constants.CONNECTOR_EVENTS.MFA_ENABLED, mfaEnabledListener);
145
- }
146
- return () => {
147
- if (web3Auth) {
148
- web3Auth.removeListener(constants.CONNECTOR_EVENTS.NOT_READY, notReadyListener);
149
- web3Auth.removeListener(constants.CONNECTOR_EVENTS.READY, readyListener);
150
- web3Auth.removeListener(constants.CONNECTOR_EVENTS.CONNECTED, connectedListener);
151
- web3Auth.removeListener(constants.CONNECTOR_EVENTS.DISCONNECTED, disconnectedListener);
152
- web3Auth.removeListener(constants.CONNECTOR_EVENTS.CONNECTING, connectingListener);
153
- web3Auth.removeListener(constants.CONNECTOR_EVENTS.ERRORED, errorListener);
154
- web3Auth.removeListener(constants.CONNECTOR_EVENTS.REHYDRATION_ERROR, rehydrationErrorListener);
155
- web3Auth.removeListener(constants.CONNECTOR_EVENTS.MFA_ENABLED, mfaEnabledListener);
156
- web3Auth.removeListener(constants.CONNECTOR_EVENTS.AUTHORIZED, authorizedListener);
157
- }
158
- };
159
- }, [web3Auth]);
160
- const value = react.useMemo(() => {
161
- return {
162
- web3Auth,
163
- isConnected,
164
- isInitialized,
165
- provider,
166
- status,
167
- isInitializing,
168
- initError,
169
- isMFAEnabled,
170
- chainId,
171
- chainNamespace,
172
- getPlugin,
173
- setIsMFAEnabled,
174
- isAuthorized
175
- };
176
- }, [web3Auth, isConnected, isInitialized, provider, status, getPlugin, isInitializing, initError, isMFAEnabled, setIsMFAEnabled, chainId, chainNamespace, isAuthorized]);
17
+ const value = useWeb3AuthInnerContextValue.useWeb3AuthInnerContextValue({
18
+ Web3AuthConstructor: noModal.Web3AuthNoModal,
19
+ web3AuthOptions,
20
+ initialState
21
+ });
177
22
  return react.createElement(Web3AuthInnerContext.Provider, {
178
23
  value
179
24
  }, children);
@@ -0,0 +1,76 @@
1
+ 'use strict';
2
+
3
+ var react = require('react');
4
+ require('@babel/runtime/helpers/objectSpread2');
5
+ require('@babel/runtime/helpers/defineProperty');
6
+ require('@segment/analytics-next');
7
+ require('../../base/loglevel.js');
8
+ require('@toruslabs/base-controllers');
9
+ require('@toruslabs/session-manager');
10
+ require('@web3auth/auth');
11
+ require('../../base/errors/index.js');
12
+ require('@toruslabs/constants');
13
+ require('@toruslabs/http-helpers');
14
+ require('../../base/constants.js');
15
+ require('../../base/wallet/index.js');
16
+ var connectorStatus = require('../../base/connector/connectorStatus.js');
17
+ require('../../base/connector/constants.js');
18
+ require('jwt-decode');
19
+ require('../../base/plugin/errors.js');
20
+ var IPlugin = require('../../base/plugin/IPlugin.js');
21
+
22
+ function useWalletServicesContextValue(web3AuthContext) {
23
+ const {
24
+ getPlugin,
25
+ isInitialized,
26
+ isConnected
27
+ } = web3AuthContext;
28
+ const [ready, setReady] = react.useState(false);
29
+ const [connecting, setConnecting] = react.useState(false);
30
+ const [walletServicesPlugin, setWalletServicesPlugin] = react.useState(null);
31
+ react.useEffect(() => {
32
+ if (!isInitialized) return;
33
+ const plugin = getPlugin(IPlugin.EVM_PLUGINS.WALLET_SERVICES);
34
+ setWalletServicesPlugin(plugin);
35
+ }, [isInitialized, getPlugin]);
36
+ react.useEffect(() => {
37
+ if (!isConnected) return;
38
+ const plugin = getPlugin(IPlugin.EVM_PLUGINS.WALLET_SERVICES);
39
+ setWalletServicesPlugin(plugin);
40
+ // When rehydrating, the connected listener may be registered after the connected event is emitted.
41
+ if (connectorStatus.CONNECTED_STATUSES.includes(plugin === null || plugin === void 0 ? void 0 : plugin.status)) setReady(true);
42
+ }, [isConnected, getPlugin]);
43
+ react.useEffect(() => {
44
+ const plugin = walletServicesPlugin;
45
+ if (!plugin) return undefined;
46
+ const connectedListener = () => {
47
+ setReady(true);
48
+ setConnecting(false);
49
+ };
50
+ const disconnectedListener = () => {
51
+ setReady(false);
52
+ setConnecting(false);
53
+ };
54
+ const connectingListener = () => {
55
+ setConnecting(true);
56
+ };
57
+ plugin.on(IPlugin.PLUGIN_EVENTS.CONNECTED, connectedListener);
58
+ plugin.on(IPlugin.PLUGIN_EVENTS.DISCONNECTED, disconnectedListener);
59
+ plugin.on(IPlugin.PLUGIN_EVENTS.CONNECTING, connectingListener);
60
+ return () => {
61
+ if (!plugin) return;
62
+ plugin.removeListener(IPlugin.PLUGIN_EVENTS.CONNECTED, connectedListener);
63
+ plugin.removeListener(IPlugin.PLUGIN_EVENTS.DISCONNECTED, disconnectedListener);
64
+ plugin.removeListener(IPlugin.PLUGIN_EVENTS.CONNECTING, connectingListener);
65
+ };
66
+ }, [walletServicesPlugin]);
67
+ return react.useMemo(() => {
68
+ return {
69
+ plugin: walletServicesPlugin,
70
+ ready,
71
+ connecting
72
+ };
73
+ }, [walletServicesPlugin, ready, connecting]);
74
+ }
75
+
76
+ exports.useWalletServicesContextValue = useWalletServicesContextValue;
@@ -0,0 +1,216 @@
1
+ 'use strict';
2
+
3
+ var react = require('react');
4
+ var analytics = require('../../base/analytics.js');
5
+ require('@toruslabs/base-controllers');
6
+ require('@babel/runtime/helpers/defineProperty');
7
+ require('@toruslabs/session-manager');
8
+ require('@web3auth/auth');
9
+ var index = require('../../base/errors/index.js');
10
+ require('../../base/loglevel.js');
11
+ require('@toruslabs/constants');
12
+ require('@toruslabs/http-helpers');
13
+ var constants$1 = require('../../base/constants.js');
14
+ require('../../base/wallet/index.js');
15
+ var connectorStatus = require('../../base/connector/connectorStatus.js');
16
+ var constants = require('../../base/connector/constants.js');
17
+ require('jwt-decode');
18
+ require('../../base/plugin/errors.js');
19
+ require('../../base/plugin/IPlugin.js');
20
+
21
+ function getInitialState(web3Auth) {
22
+ var _web3Auth$currentChai, _web3Auth$currentChai2;
23
+ const isConnected = connectorStatus.CONNECTED_STATUSES.includes(web3Auth.status);
24
+ const isAuthorized = web3Auth.status === constants.CONNECTOR_STATUS.AUTHORIZED;
25
+ return {
26
+ chainId: isConnected ? web3Auth.currentChainId : null,
27
+ chainNamespace: isConnected ? (_web3Auth$currentChai = (_web3Auth$currentChai2 = web3Auth.currentChain) === null || _web3Auth$currentChai2 === void 0 ? void 0 : _web3Auth$currentChai2.chainNamespace) !== null && _web3Auth$currentChai !== void 0 ? _web3Auth$currentChai : null : null,
28
+ connection: isConnected ? web3Auth.connection : null,
29
+ isAuthorized,
30
+ isConnected,
31
+ isInitialized: isConnected,
32
+ status: web3Auth.status
33
+ };
34
+ }
35
+ function useWeb3AuthInnerContextValue({
36
+ Web3AuthConstructor,
37
+ web3AuthOptions,
38
+ initialState,
39
+ notReadyUsesCurrentStatus = false,
40
+ cleanupOnUnmount = false,
41
+ initEffectDependency
42
+ }) {
43
+ const web3Auth = react.useMemo(() => {
44
+ return new Web3AuthConstructor(web3AuthOptions, initialState);
45
+ }, [Web3AuthConstructor, web3AuthOptions, initialState]);
46
+ const initialWeb3AuthState = getInitialState(web3Auth);
47
+ const [chainId, setChainId] = react.useState(() => initialWeb3AuthState.chainId);
48
+ const [chainNamespace, setChainNamespace] = react.useState(() => initialWeb3AuthState.chainNamespace);
49
+ const [isInitializing, setIsInitializing] = react.useState(false);
50
+ const [initError, setInitError] = react.useState(null);
51
+ const [connection, setConnection] = react.useState(() => initialWeb3AuthState.connection);
52
+ const [isInitialized, setIsInitialized] = react.useState(initialWeb3AuthState.isInitialized);
53
+ const [isMFAEnabled, setIsMFAEnabled] = react.useState(false);
54
+ const [isConnected, setIsConnected] = react.useState(initialWeb3AuthState.isConnected);
55
+ const [status, setStatus] = react.useState(initialWeb3AuthState.status);
56
+ const [isAuthorized, setIsAuthorized] = react.useState(initialWeb3AuthState.isAuthorized);
57
+ const getPlugin = react.useCallback(name => {
58
+ if (!web3Auth) throw index.WalletInitializationError.notReady();
59
+ return web3Auth.getPlugin(name);
60
+ }, [web3Auth]);
61
+ react.useEffect(() => {
62
+ const controller = new AbortController();
63
+ async function init() {
64
+ try {
65
+ var _web3Auth$currentChai3;
66
+ setInitError(null);
67
+ setIsInitializing(true);
68
+ web3Auth.setAnalyticsProperties({
69
+ integration_type: analytics.ANALYTICS_INTEGRATION_TYPE.REACT_HOOKS
70
+ });
71
+ await web3Auth.init({
72
+ signal: controller.signal
73
+ });
74
+ setChainId(web3Auth.currentChainId);
75
+ setChainNamespace((_web3Auth$currentChai3 = web3Auth.currentChain) === null || _web3Auth$currentChai3 === void 0 ? void 0 : _web3Auth$currentChai3.chainNamespace);
76
+ } catch (error) {
77
+ setInitError(error);
78
+ } finally {
79
+ setIsInitializing(false);
80
+ }
81
+ }
82
+ init();
83
+ return () => {
84
+ controller.abort();
85
+ };
86
+ }, [web3Auth, initEffectDependency]);
87
+ react.useEffect(() => {
88
+ var _connection$ethereumP;
89
+ const handleChainChange = async nextChainId => {
90
+ var _web3Auth$currentChai4;
91
+ setChainId(nextChainId);
92
+ setChainNamespace((_web3Auth$currentChai4 = web3Auth.currentChain) === null || _web3Auth$currentChai4 === void 0 ? void 0 : _web3Auth$currentChai4.chainNamespace);
93
+ };
94
+ const provider = (_connection$ethereumP = connection === null || connection === void 0 ? void 0 : connection.ethereumProvider) !== null && _connection$ethereumP !== void 0 ? _connection$ethereumP : null;
95
+ if (!provider) return undefined;
96
+ provider.on("chainChanged", handleChainChange);
97
+ return () => {
98
+ provider.removeListener("chainChanged", handleChainChange);
99
+ };
100
+ }, [web3Auth.currentChain, connection === null || connection === void 0 ? void 0 : connection.ethereumProvider]);
101
+ react.useEffect(() => {
102
+ const notReadyListener = () => {
103
+ setStatus(notReadyUsesCurrentStatus ? web3Auth.status : constants.CONNECTOR_STATUS.NOT_READY);
104
+ };
105
+ const readyListener = () => {
106
+ setStatus(web3Auth.status);
107
+ setIsInitialized(true);
108
+ };
109
+ const connectedListener = data => {
110
+ if (data.pendingUserConsent) return;
111
+ setStatus(web3Auth.status);
112
+ // we do this because of rehydration issues. status connected is fired first but web3auth sdk is not ready yet.
113
+ if (web3Auth.status === constants.CONNECTOR_STATUS.CONNECTED) {
114
+ var _web3Auth$currentChai5, _web3Auth$currentChai6;
115
+ setIsInitialized(true);
116
+ setIsConnected(true);
117
+ setConnection(web3Auth.connection);
118
+ setChainId(web3Auth.currentChainId);
119
+ setChainNamespace((_web3Auth$currentChai5 = (_web3Auth$currentChai6 = web3Auth.currentChain) === null || _web3Auth$currentChai6 === void 0 ? void 0 : _web3Auth$currentChai6.chainNamespace) !== null && _web3Auth$currentChai5 !== void 0 ? _web3Auth$currentChai5 : null);
120
+ }
121
+ };
122
+ const disconnectedListener = () => {
123
+ setStatus(web3Auth.status);
124
+ setIsConnected(false);
125
+ setIsAuthorized(false);
126
+ setConnection(null);
127
+ };
128
+ const connectingListener = () => {
129
+ setStatus(web3Auth.status);
130
+ };
131
+ const errorListener = () => {
132
+ setStatus(web3Auth.status);
133
+ };
134
+ const rehydrationErrorListener = () => {
135
+ setStatus(web3Auth.status);
136
+ setIsConnected(false);
137
+ setIsAuthorized(false);
138
+ setConnection(null);
139
+ };
140
+ const authorizedListener = () => {
141
+ setStatus(web3Auth.status);
142
+ if (web3Auth.status === constants.CONNECTOR_STATUS.AUTHORIZED) {
143
+ setIsConnected(true);
144
+ setIsAuthorized(true);
145
+ }
146
+ };
147
+ const consentAcceptedListener = () => {
148
+ setStatus(web3Auth.status);
149
+ if (web3Auth.status === constants.CONNECTOR_STATUS.CONNECTED || web3Auth.status === constants.CONNECTOR_STATUS.AUTHORIZED) {
150
+ var _web3Auth$currentChai7, _web3Auth$currentChai8;
151
+ setIsInitialized(true);
152
+ setIsConnected(true);
153
+ setConnection(web3Auth.connection);
154
+ setChainId(web3Auth.currentChainId);
155
+ setChainNamespace((_web3Auth$currentChai7 = (_web3Auth$currentChai8 = web3Auth.currentChain) === null || _web3Auth$currentChai8 === void 0 ? void 0 : _web3Auth$currentChai8.chainNamespace) !== null && _web3Auth$currentChai7 !== void 0 ? _web3Auth$currentChai7 : null);
156
+ if (web3Auth.status === constants.CONNECTOR_STATUS.AUTHORIZED) {
157
+ setIsAuthorized(true);
158
+ }
159
+ }
160
+ };
161
+ const mfaEnabledListener = nextIsMFAEnabled => {
162
+ if (typeof nextIsMFAEnabled === "boolean") setIsMFAEnabled(nextIsMFAEnabled);
163
+ };
164
+ if (web3Auth) {
165
+ web3Auth.on(constants.CONNECTOR_EVENTS.NOT_READY, notReadyListener);
166
+ web3Auth.on(constants.CONNECTOR_EVENTS.READY, readyListener);
167
+ web3Auth.on(constants.CONNECTOR_EVENTS.CONNECTED, connectedListener);
168
+ web3Auth.on(constants.CONNECTOR_EVENTS.AUTHORIZED, authorizedListener);
169
+ web3Auth.on(constants.CONNECTOR_EVENTS.DISCONNECTED, disconnectedListener);
170
+ web3Auth.on(constants.CONNECTOR_EVENTS.CONNECTING, connectingListener);
171
+ web3Auth.on(constants.CONNECTOR_EVENTS.ERRORED, errorListener);
172
+ web3Auth.on(constants.CONNECTOR_EVENTS.REHYDRATION_ERROR, rehydrationErrorListener);
173
+ web3Auth.on(constants.CONNECTOR_EVENTS.MFA_ENABLED, mfaEnabledListener);
174
+ if (web3Auth.loginMode === constants$1.LOGIN_MODE.MODAL) {
175
+ web3Auth.on(constants.CONNECTOR_EVENTS.CONSENT_ACCEPTED, consentAcceptedListener);
176
+ }
177
+ }
178
+ return () => {
179
+ if (!web3Auth) return;
180
+ web3Auth.removeListener(constants.CONNECTOR_EVENTS.NOT_READY, notReadyListener);
181
+ web3Auth.removeListener(constants.CONNECTOR_EVENTS.READY, readyListener);
182
+ web3Auth.removeListener(constants.CONNECTOR_EVENTS.CONNECTED, connectedListener);
183
+ web3Auth.removeListener(constants.CONNECTOR_EVENTS.DISCONNECTED, disconnectedListener);
184
+ web3Auth.removeListener(constants.CONNECTOR_EVENTS.CONNECTING, connectingListener);
185
+ web3Auth.removeListener(constants.CONNECTOR_EVENTS.ERRORED, errorListener);
186
+ web3Auth.removeListener(constants.CONNECTOR_EVENTS.REHYDRATION_ERROR, rehydrationErrorListener);
187
+ web3Auth.removeListener(constants.CONNECTOR_EVENTS.MFA_ENABLED, mfaEnabledListener);
188
+ web3Auth.removeListener(constants.CONNECTOR_EVENTS.AUTHORIZED, authorizedListener);
189
+ if (web3Auth.loginMode === constants$1.LOGIN_MODE.MODAL) {
190
+ web3Auth.removeListener(constants.CONNECTOR_EVENTS.CONSENT_ACCEPTED, consentAcceptedListener);
191
+ }
192
+ if (cleanupOnUnmount) {
193
+ web3Auth.cleanup();
194
+ }
195
+ };
196
+ }, [cleanupOnUnmount, notReadyUsesCurrentStatus, web3Auth]);
197
+ return react.useMemo(() => {
198
+ return {
199
+ web3Auth,
200
+ isConnected,
201
+ isInitialized,
202
+ connection,
203
+ status,
204
+ isInitializing,
205
+ initError,
206
+ isMFAEnabled,
207
+ chainId,
208
+ chainNamespace,
209
+ getPlugin,
210
+ setIsMFAEnabled,
211
+ isAuthorized
212
+ };
213
+ }, [web3Auth, isConnected, isInitialized, connection, status, getPlugin, isInitializing, initError, isMFAEnabled, setIsMFAEnabled, chainId, chainNamespace, isAuthorized]);
214
+ }
215
+
216
+ exports.useWeb3AuthInnerContextValue = useWeb3AuthInnerContextValue;
@@ -3,20 +3,19 @@
3
3
  var react = require('react');
4
4
  var useWeb3AuthInner = require('./useWeb3AuthInner.js');
5
5
 
6
- const useIdentityToken = () => {
6
+ const useAuthTokenInfo = () => {
7
7
  const {
8
8
  web3Auth,
9
- isConnected,
10
9
  isAuthorized
11
10
  } = useWeb3AuthInner.useWeb3AuthInner();
12
11
  const [loading, setLoading] = react.useState(false);
13
12
  const [error, setError] = react.useState(null);
14
13
  const [token, setToken] = react.useState(null);
15
- const getIdentityToken = react.useCallback(async () => {
14
+ const getAuthTokenInfo = react.useCallback(async () => {
16
15
  setLoading(true);
17
16
  setError(null);
18
17
  try {
19
- const userAuthInfo = await web3Auth.getIdentityToken();
18
+ const userAuthInfo = await web3Auth.getAuthTokenInfo();
20
19
  if (userAuthInfo !== null && userAuthInfo !== void 0 && userAuthInfo.idToken) {
21
20
  setToken(userAuthInfo.idToken);
22
21
  }
@@ -35,13 +34,13 @@ const useIdentityToken = () => {
35
34
  if (isAuthorized && !token) {
36
35
  setToken(web3Auth.idToken);
37
36
  }
38
- }, [isConnected, isAuthorized, token]);
37
+ }, [isAuthorized, token, web3Auth]);
39
38
  return {
40
39
  loading,
41
40
  error,
42
41
  token,
43
- getIdentityToken
42
+ getAuthTokenInfo
44
43
  };
45
44
  };
46
45
 
47
- exports.useIdentityToken = useIdentityToken;
46
+ exports.useAuthTokenInfo = useAuthTokenInfo;
@@ -6,16 +6,18 @@ require('@babel/runtime/helpers/defineProperty');
6
6
  require('@segment/analytics-next');
7
7
  require('../../base/loglevel.js');
8
8
  require('@toruslabs/base-controllers');
9
+ require('@toruslabs/session-manager');
9
10
  require('@web3auth/auth');
10
11
  require('../../base/errors/index.js');
12
+ require('@toruslabs/constants');
13
+ require('@toruslabs/http-helpers');
14
+ require('../../base/constants.js');
11
15
  require('../../base/wallet/index.js');
12
16
  require('../../base/connector/connectorStatus.js');
13
17
  require('../../base/connector/constants.js');
14
18
  require('jwt-decode');
15
19
  var errors = require('../../base/plugin/errors.js');
16
20
  require('../../base/plugin/IPlugin.js');
17
- require('@toruslabs/constants');
18
- require('@toruslabs/http-helpers');
19
21
  var useWalletServicesPlugin = require('./useWalletServicesPlugin.js');
20
22
 
21
23
  const useCheckout = () => {
@@ -6,16 +6,18 @@ require('@babel/runtime/helpers/defineProperty');
6
6
  require('@segment/analytics-next');
7
7
  require('../../base/loglevel.js');
8
8
  require('@toruslabs/base-controllers');
9
+ require('@toruslabs/session-manager');
9
10
  require('@web3auth/auth');
10
11
  require('../../base/errors/index.js');
12
+ require('@toruslabs/constants');
13
+ require('@toruslabs/http-helpers');
14
+ require('../../base/constants.js');
11
15
  require('../../base/wallet/index.js');
12
16
  require('../../base/connector/connectorStatus.js');
13
17
  require('../../base/connector/constants.js');
14
18
  require('jwt-decode');
15
19
  var errors = require('../../base/plugin/errors.js');
16
20
  require('../../base/plugin/IPlugin.js');
17
- require('@toruslabs/constants');
18
- require('@toruslabs/http-helpers');
19
21
  var useWalletServicesPlugin = require('./useWalletServicesPlugin.js');
20
22
 
21
23
  const useFunding = () => {
@@ -6,16 +6,18 @@ require('@babel/runtime/helpers/defineProperty');
6
6
  require('@segment/analytics-next');
7
7
  require('../../base/loglevel.js');
8
8
  require('@toruslabs/base-controllers');
9
+ require('@toruslabs/session-manager');
9
10
  require('@web3auth/auth');
10
11
  require('../../base/errors/index.js');
12
+ require('@toruslabs/constants');
13
+ require('@toruslabs/http-helpers');
14
+ require('../../base/constants.js');
11
15
  require('../../base/wallet/index.js');
12
16
  require('../../base/connector/connectorStatus.js');
13
17
  require('../../base/connector/constants.js');
14
18
  require('jwt-decode');
15
19
  var errors = require('../../base/plugin/errors.js');
16
20
  require('../../base/plugin/IPlugin.js');
17
- require('@toruslabs/constants');
18
- require('@toruslabs/http-helpers');
19
21
  var useWalletServicesPlugin = require('./useWalletServicesPlugin.js');
20
22
 
21
23
  const useReceive = () => {