@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
@@ -0,0 +1,8 @@
1
+ 'use strict';
2
+
3
+ var rest = require('./rest.js');
4
+
5
+
6
+
7
+ exports.makeAccountLinkingRequest = rest.makeAccountLinkingRequest;
8
+ exports.makeAccountUnlinkingRequest = rest.makeAccountUnlinkingRequest;
@@ -0,0 +1,95 @@
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
+ var index = 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
+ require('../base/connector/connectorStatus.js');
17
+ require('../base/connector/constants.js');
18
+ require('jwt-decode');
19
+ require('../base/plugin/errors.js');
20
+ require('../base/plugin/IPlugin.js');
21
+ var useWeb3AuthInner = require('../react/hooks/useWeb3AuthInner.js');
22
+ var rest = require('./rest.js');
23
+
24
+ const useLinkAccount = () => {
25
+ const {
26
+ web3Auth
27
+ } = useWeb3AuthInner.useWeb3AuthInner();
28
+ const [loading, setLoading] = react.useState(false);
29
+ const [error, setError] = react.useState(null);
30
+ const [linkedAccounts, setLinkedAccounts] = react.useState([]);
31
+ const linkAccount = react.useCallback(async params => {
32
+ if (!web3Auth) throw index.WalletInitializationError.notReady();
33
+ setLoading(true);
34
+ setError(null);
35
+ try {
36
+ const result = await web3Auth.linkAccount(params);
37
+ setLinkedAccounts(result.linkedAccounts);
38
+ return result;
39
+ } catch (err) {
40
+ setError(err);
41
+ } finally {
42
+ setLoading(false);
43
+ }
44
+ }, [web3Auth]);
45
+ const unlinkAccount = react.useCallback(async address => {
46
+ if (!web3Auth) throw index.WalletInitializationError.notReady();
47
+ setLoading(true);
48
+ setError(null);
49
+ try {
50
+ const result = await web3Auth.unlinkAccount(address);
51
+ setLinkedAccounts(result.linkedAccounts);
52
+ return result;
53
+ } catch (err) {
54
+ setError(err);
55
+ } finally {
56
+ setLoading(false);
57
+ }
58
+ }, [web3Auth]);
59
+ return {
60
+ loading,
61
+ error,
62
+ linkAccount,
63
+ unlinkAccount,
64
+ linkedAccounts
65
+ };
66
+ };
67
+ const useSwitchAccount = () => {
68
+ const {
69
+ web3Auth
70
+ } = useWeb3AuthInner.useWeb3AuthInner();
71
+ const [loading, setLoading] = react.useState(false);
72
+ const [error, setError] = react.useState(null);
73
+ const switchAccount = react.useCallback(async account => {
74
+ if (!web3Auth) throw index.WalletInitializationError.notReady();
75
+ setLoading(true);
76
+ setError(null);
77
+ try {
78
+ await web3Auth.switchAccount(account);
79
+ } catch (err) {
80
+ setError(err);
81
+ } finally {
82
+ setLoading(false);
83
+ }
84
+ }, [web3Auth]);
85
+ return {
86
+ loading,
87
+ error,
88
+ switchAccount
89
+ };
90
+ };
91
+
92
+ exports.makeAccountLinkingRequest = rest.makeAccountLinkingRequest;
93
+ exports.makeAccountUnlinkingRequest = rest.makeAccountUnlinkingRequest;
94
+ exports.useLinkAccount = useLinkAccount;
95
+ exports.useSwitchAccount = useSwitchAccount;
@@ -0,0 +1,54 @@
1
+ 'use strict';
2
+
3
+ var httpHelpers = require('@toruslabs/http-helpers');
4
+ var index = require('../base/errors/index.js');
5
+
6
+ /**
7
+ * Send both identity proofs to the Citadel account-linking endpoint and
8
+ * return a normalized result.
9
+ *
10
+ * Throws AccountLinkingError when the server returns an error or the request itself fails.
11
+ */
12
+ async function makeAccountLinkingRequest(authServerUrl, accessToken, payload) {
13
+ const url = `${authServerUrl}/v1/link/wallet`;
14
+ let result;
15
+ try {
16
+ result = await httpHelpers.post(url, payload, {
17
+ headers: {
18
+ Authorization: `Bearer ${accessToken}`
19
+ }
20
+ });
21
+ } catch (cause) {
22
+ const message = cause instanceof Error ? cause.message : String(cause);
23
+ throw index.AccountLinkingError.requestFailed(message, cause);
24
+ }
25
+ if (!result.success) {
26
+ var _result$message;
27
+ const errMessage = (_result$message = result.message) !== null && _result$message !== void 0 ? _result$message : "Failed to link account";
28
+ throw index.AccountLinkingError.requestFailed(errMessage);
29
+ }
30
+ return result;
31
+ }
32
+ async function makeAccountUnlinkingRequest(authServerUrl, accessToken, payload) {
33
+ const url = `${authServerUrl}/v1/unlink`;
34
+ let result;
35
+ try {
36
+ result = await httpHelpers.post(url, payload, {
37
+ headers: {
38
+ Authorization: `Bearer ${accessToken}`
39
+ }
40
+ });
41
+ } catch (cause) {
42
+ const message = cause instanceof Error ? cause.message : String(cause);
43
+ throw index.AccountLinkingError.requestFailed(message, cause);
44
+ }
45
+ if (!result.success) {
46
+ var _result$message2;
47
+ const errMessage = (_result$message2 = result.message) !== null && _result$message2 !== void 0 ? _result$message2 : "Failed to unlink account";
48
+ throw index.AccountLinkingError.requestFailed(errMessage);
49
+ }
50
+ return result;
51
+ }
52
+
53
+ exports.makeAccountLinkingRequest = makeAccountLinkingRequest;
54
+ exports.makeAccountUnlinkingRequest = makeAccountUnlinkingRequest;
@@ -0,0 +1,98 @@
1
+ 'use strict';
2
+
3
+ var vue = require('vue');
4
+ require('@babel/runtime/helpers/objectSpread2');
5
+ require('@babel/runtime/helpers/defineProperty');
6
+ require('@segment/analytics-next');
7
+ var loglevel = require('../base/loglevel.js');
8
+ require('@toruslabs/base-controllers');
9
+ require('@toruslabs/session-manager');
10
+ require('@web3auth/auth');
11
+ var index = 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
+ require('../base/connector/connectorStatus.js');
17
+ require('../base/connector/constants.js');
18
+ require('jwt-decode');
19
+ require('../base/plugin/errors.js');
20
+ require('../base/plugin/IPlugin.js');
21
+ var useWeb3AuthInner = require('../vue/composables/useWeb3AuthInner.js');
22
+ var rest = require('./rest.js');
23
+
24
+ const useLinkAccount = () => {
25
+ const {
26
+ web3Auth
27
+ } = useWeb3AuthInner.useWeb3AuthInner();
28
+ const loading = vue.ref(false);
29
+ const error = vue.ref(null);
30
+ const linkedAccounts = vue.ref([]);
31
+ const linkAccount = async params => {
32
+ if (!web3Auth.value) throw index.WalletInitializationError.notReady();
33
+ try {
34
+ error.value = null;
35
+ loading.value = true;
36
+ const result = await web3Auth.value.linkAccount(params);
37
+ linkedAccounts.value = result.linkedAccounts;
38
+ return result;
39
+ } catch (err) {
40
+ loglevel.log.error("Error linking account", err);
41
+ error.value = err;
42
+ } finally {
43
+ loading.value = false;
44
+ }
45
+ };
46
+ const unlinkAccount = async address => {
47
+ if (!web3Auth.value) throw index.WalletInitializationError.notReady();
48
+ try {
49
+ error.value = null;
50
+ loading.value = true;
51
+ const result = await web3Auth.value.unlinkAccount(address);
52
+ linkedAccounts.value = result.linkedAccounts;
53
+ return result;
54
+ } catch (err) {
55
+ loglevel.log.error("Error unlinking account", err);
56
+ error.value = err;
57
+ } finally {
58
+ loading.value = false;
59
+ }
60
+ };
61
+ return {
62
+ loading,
63
+ error,
64
+ linkAccount,
65
+ unlinkAccount,
66
+ linkedAccounts
67
+ };
68
+ };
69
+ const useSwitchAccount = () => {
70
+ const {
71
+ web3Auth
72
+ } = useWeb3AuthInner.useWeb3AuthInner();
73
+ const loading = vue.ref(false);
74
+ const error = vue.ref(null);
75
+ const switchAccount = async account => {
76
+ if (!web3Auth.value) throw index.WalletInitializationError.notReady();
77
+ error.value = null;
78
+ loading.value = true;
79
+ try {
80
+ await web3Auth.value.switchAccount(account);
81
+ } catch (err) {
82
+ loglevel.log.error("Error switching account", err);
83
+ error.value = err;
84
+ } finally {
85
+ loading.value = false;
86
+ }
87
+ };
88
+ return {
89
+ loading,
90
+ error,
91
+ switchAccount
92
+ };
93
+ };
94
+
95
+ exports.makeAccountLinkingRequest = rest.makeAccountLinkingRequest;
96
+ exports.makeAccountUnlinkingRequest = rest.makeAccountUnlinkingRequest;
97
+ exports.useLinkAccount = useLinkAccount;
98
+ exports.useSwitchAccount = useSwitchAccount;
@@ -119,7 +119,19 @@ const ANALYTICS_EVENTS = {
119
119
  WALLET_FUNDING_CLICKED: "Wallet Funding Clicked",
120
120
  WALLET_CHECKOUT_CLICKED: "Wallet Checkout Clicked",
121
121
  WALLET_RECEIVE_CLICKED: "Wallet Receive Clicked",
122
- WALLET_SWAP_CLICKED: "Wallet Swap Clicked"
122
+ WALLET_SWAP_CLICKED: "Wallet Swap Clicked",
123
+ // Account Linking
124
+ ACCOUNT_LINKING_STARTED: "Account Linking Started",
125
+ ACCOUNT_LINKING_COMPLETED: "Account Linking Completed",
126
+ ACCOUNT_LINKING_FAILED: "Account Linking Failed",
127
+ // Account Unlinking
128
+ ACCOUNT_UNLINKING_STARTED: "Account Unlinking Started",
129
+ ACCOUNT_UNLINKING_COMPLETED: "Account Unlinking Completed",
130
+ ACCOUNT_UNLINKING_FAILED: "Account Unlinking Failed",
131
+ // Account switch (active connected wallet)
132
+ ACCOUNT_SWITCH_STARTED: "Account Switch Started",
133
+ ACCOUNT_SWITCH_COMPLETED: "Account Switch Completed",
134
+ ACCOUNT_SWITCH_FAILED: "Account Switch Failed"
123
135
  };
124
136
  const ANALYTICS_INTEGRATION_TYPE = {
125
137
  REACT_HOOKS: "React Hooks",
@@ -1,13 +1,17 @@
1
1
  'use strict';
2
2
 
3
3
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
4
+ var baseControllers = require('@toruslabs/base-controllers');
5
+ var sessionManager = require('@toruslabs/session-manager');
4
6
  var auth = require('@web3auth/auth');
5
7
  var IChainInterface = require('../chain/IChainInterface.js');
6
8
  var index$1 = require('../errors/index.js');
9
+ var loglevel = require('../loglevel.js');
10
+ var utils = require('../utils.js');
7
11
  var index = require('../wallet/index.js');
8
12
  var connectorStatus = require('./connectorStatus.js');
9
13
  var constants = require('./constants.js');
10
- var baseControllers = require('@toruslabs/base-controllers');
14
+ var utils$1 = require('./utils.js');
11
15
 
12
16
  class BaseConnector extends auth.SafeEventEmitter {
13
17
  constructor(options) {
@@ -17,6 +21,7 @@ class BaseConnector extends auth.SafeEventEmitter {
17
21
  _defineProperty(this, "icon", void 0);
18
22
  _defineProperty(this, "coreOptions", void 0);
19
23
  _defineProperty(this, "rehydrated", false);
24
+ _defineProperty(this, "authSessionManager", null);
20
25
  this.coreOptions = options.coreOptions;
21
26
  }
22
27
  get connected() {
@@ -25,6 +30,12 @@ class BaseConnector extends auth.SafeEventEmitter {
25
30
  get canAuthorize() {
26
31
  return connectorStatus.CAN_AUTHORIZE_STATUSES.includes(this.status);
27
32
  }
33
+ get solanaWallet() {
34
+ return null;
35
+ }
36
+ get provider() {
37
+ return null;
38
+ }
28
39
  checkConnectionRequirements() {
29
40
  // we reconnect without killing existing Wallet Connect or Metamask Connect session on calling connect again.
30
41
  if (this.name === index.WALLET_CONNECTORS.WALLET_CONNECT_V2 && this.status === constants.CONNECTOR_STATUS.CONNECTING) return;
@@ -53,7 +64,7 @@ class BaseConnector extends auth.SafeEventEmitter {
53
64
  if (!this.connected) throw index$1.WalletLoginError.disconnectionError("Not connected with wallet");
54
65
  }
55
66
  checkSwitchChainRequirements(params, init = false) {
56
- if (!init && !this.provider) throw index$1.WalletLoginError.notConnectedError("Not connected with wallet.");
67
+ if (!init && !this.provider && !this.solanaWallet) throw index$1.WalletLoginError.notConnectedError("Not connected with wallet.");
57
68
  if (!this.coreOptions.chains) throw index$1.WalletInitializationError.invalidParams("chainConfigs is required");
58
69
  const doesChainExist = this.coreOptions.chains.some(x => x.chainId === params.chainId && (x.chainNamespace === this.connectorNamespace || this.connectorNamespace === IChainInterface.CONNECTOR_NAMESPACES.MULTICHAIN));
59
70
  if (!doesChainExist) throw index$1.WalletInitializationError.invalidParams("Invalid chainId");
@@ -65,6 +76,97 @@ class BaseConnector extends auth.SafeEventEmitter {
65
76
  data
66
77
  });
67
78
  }
79
+ initSessionManager(address) {
80
+ this.authSessionManager = new sessionManager.AuthSessionManager({
81
+ storageKeyPrefix: `w3a:siww:${this.name}:${address.toLowerCase()}`,
82
+ apiClientConfig: {
83
+ baseURL: utils.citadelServerUrl(this.coreOptions.authBuildEnv)
84
+ },
85
+ storage: this.coreOptions.storage,
86
+ cookieOptions: this.coreOptions.cookieOptions
87
+ });
88
+ }
89
+ async getCachedAuthTokenInfo() {
90
+ if (!this.authSessionManager) return null;
91
+ const idToken = await this.authSessionManager.getIdToken();
92
+ if (!idToken || utils$1.checkIfTokenIsExpired(idToken)) return null;
93
+ let [accessToken, refreshToken] = await Promise.all([this.authSessionManager.getAccessToken(), this.authSessionManager.getRefreshToken()]);
94
+ if ((!accessToken || utils$1.checkIfTokenIsExpired(accessToken)) && refreshToken) {
95
+ try {
96
+ const response = await this.authSessionManager.ensureRefresh();
97
+ accessToken = response.access_token || (await this.authSessionManager.getAccessToken());
98
+ refreshToken = response.refresh_token || refreshToken;
99
+ } catch {
100
+ // access token refresh failed; still return the valid idToken
101
+ loglevel.log.error("Access token refresh failed");
102
+ }
103
+ }
104
+ return {
105
+ idToken,
106
+ accessToken: accessToken !== null && accessToken !== void 0 ? accessToken : undefined,
107
+ refreshToken: refreshToken !== null && refreshToken !== void 0 ? refreshToken : undefined
108
+ };
109
+ }
110
+ async saveAuthTokenInfo(tokens) {
111
+ if (!this.authSessionManager) return;
112
+ await this.authSessionManager.setTokens({
113
+ idToken: tokens.idToken,
114
+ accessToken: tokens.accessToken,
115
+ refreshToken: tokens.refreshToken
116
+ });
117
+ }
118
+ async getCachedOrNullAuthTokenInfo(account) {
119
+ this.initSessionManager(account);
120
+ const cached = await this.getCachedAuthTokenInfo();
121
+ if (cached) {
122
+ this.status = constants.CONNECTOR_STATUS.AUTHORIZED;
123
+ this.emit(constants.CONNECTOR_EVENTS.AUTHORIZED, {
124
+ connector: this.name,
125
+ authTokenInfo: cached
126
+ });
127
+ }
128
+ return cached;
129
+ }
130
+ async verifyAndAuthorize(params) {
131
+ const tokens = await baseControllers.verifySignedChallenge({
132
+ chainNamespace: params.chainNamespace,
133
+ signedMessage: params.signedMessage,
134
+ challenge: params.challenge,
135
+ connector: this.name,
136
+ authServer: params.authServer,
137
+ web3AuthClientId: this.coreOptions.clientId,
138
+ web3AuthNetwork: this.coreOptions.web3AuthNetwork,
139
+ sessionTimeout: this.coreOptions.sessionTime,
140
+ deviceInfo: baseControllers.getDeviceInfo()
141
+ });
142
+ await this.saveAuthTokenInfo(tokens);
143
+ const tokenInfo = {
144
+ idToken: tokens.idToken,
145
+ accessToken: tokens.accessToken,
146
+ refreshToken: tokens.refreshToken
147
+ };
148
+ this.status = constants.CONNECTOR_STATUS.AUTHORIZED;
149
+ this.emit(constants.CONNECTOR_EVENTS.AUTHORIZED, {
150
+ connector: this.name,
151
+ authTokenInfo: tokenInfo
152
+ });
153
+ return tokenInfo;
154
+ }
155
+ async clearWalletSession() {
156
+ if (!this.authSessionManager) return;
157
+ try {
158
+ await this.authSessionManager.logout();
159
+ } catch {
160
+ try {
161
+ await this.authSessionManager.clearSessionData();
162
+ } catch {
163
+ // best-effort cleanup; don't block disconnect
164
+ loglevel.log.error("Failed to clear wallet session");
165
+ }
166
+ } finally {
167
+ this.authSessionManager = null;
168
+ }
169
+ }
68
170
  }
69
171
 
70
172
  exports.BaseConnector = BaseConnector;
@@ -4,6 +4,8 @@ var constants = require('./constants.js');
4
4
 
5
5
  const CONNECTED_STATUSES = [constants.CONNECTOR_STATUS.CONNECTED, constants.CONNECTOR_STATUS.AUTHORIZED];
6
6
  const CAN_AUTHORIZE_STATUSES = [constants.CONNECTOR_STATUS.AUTHORIZING, constants.CONNECTOR_STATUS.AUTHORIZED, constants.CONNECTOR_STATUS.CONNECTED];
7
+ const CAN_LOGOUT_STATUSES = [...CONNECTED_STATUSES, constants.CONNECTOR_STATUS.CONSENT_REQUIRING];
7
8
 
8
9
  exports.CAN_AUTHORIZE_STATUSES = CAN_AUTHORIZE_STATUSES;
10
+ exports.CAN_LOGOUT_STATUSES = CAN_LOGOUT_STATUSES;
9
11
  exports.CONNECTED_STATUSES = CONNECTED_STATUSES;
@@ -11,14 +11,18 @@ const CONNECTOR_STATUS = {
11
11
  DISCONNECTED: "disconnected",
12
12
  ERRORED: "errored",
13
13
  AUTHORIZED: "authorized",
14
- AUTHORIZING: "authorizing"
14
+ AUTHORIZING: "authorizing",
15
+ CONSENT_REQUIRING: "consent_requiring"
15
16
  };
16
17
  const CONNECTOR_EVENTS = _objectSpread(_objectSpread({}, CONNECTOR_STATUS), {}, {
17
18
  CONNECTOR_DATA_UPDATED: "connector_data_updated",
18
19
  CACHE_CLEAR: "cache_clear",
19
20
  CONNECTORS_UPDATED: "connectors_updated",
20
21
  MFA_ENABLED: "mfa_enabled",
21
- REHYDRATION_ERROR: "rehydration_error"
22
+ REHYDRATION_ERROR: "rehydration_error",
23
+ /** Emitted when the active public `connection` changes without a full reconnect (e.g. account switch). */
24
+ CONNECTION_UPDATED: "connection_updated",
25
+ CONSENT_ACCEPTED: "consent_accepted"
22
26
  });
23
27
  const CONNECTOR_CATEGORY = {
24
28
  EXTERNAL: "external",
@@ -40,27 +40,6 @@ const checkIfTokenIsExpired = token => {
40
40
  }
41
41
  return false;
42
42
  };
43
- const getSavedToken = (userAddress, issuer) => {
44
- if (storageAvailable("localStorage")) {
45
- return localStorage.getItem(`${userAddress.toLowerCase()}_${issuer}`);
46
- }
47
- return null;
48
- };
49
- const saveToken = (userAddress, issuer, token) => {
50
- if (storageAvailable("localStorage")) {
51
- return localStorage.setItem(`${userAddress.toLowerCase()}_${issuer}`, token);
52
- }
53
- return null;
54
- };
55
- const clearToken = (userAddress, issuer) => {
56
- if (storageAvailable("localStorage")) {
57
- return localStorage.removeItem(`${userAddress.toLowerCase()}_${issuer}`);
58
- }
59
- return null;
60
- };
61
43
 
62
44
  exports.checkIfTokenIsExpired = checkIfTokenIsExpired;
63
- exports.clearToken = clearToken;
64
- exports.getSavedToken = getSavedToken;
65
- exports.saveToken = saveToken;
66
45
  exports.storageAvailable = storageAvailable;
@@ -1,5 +1,7 @@
1
1
  'use strict';
2
2
 
3
+ var ethereumControllers = require('@toruslabs/ethereum-controllers');
4
+
3
5
  const SMART_ACCOUNT_WALLET_SCOPE = {
4
6
  EMBEDDED: "embedded",
5
7
  ALL: "all"
@@ -23,8 +25,10 @@ const SOLANA_CAIP_CHAIN_MAP = {
23
25
  "0x66": "4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z",
24
26
  "0x67": "EtWTRABZaYq6iMfeYKouRu166VU2xqa1"
25
27
  };
28
+ const EIP_7702_SUPPORTED_SMART_ACCOUNTS = [ethereumControllers.SMART_ACCOUNT.METAMASK];
26
29
  const WALLET_REGISTRY_URL = "https://assets.web3auth.io/v2/wallet-registry.json";
27
30
 
31
+ exports.EIP_7702_SUPPORTED_SMART_ACCOUNTS = EIP_7702_SUPPORTED_SMART_ACCOUNTS;
28
32
  exports.LOGIN_MODE = LOGIN_MODE;
29
33
  exports.MODAL_SIGN_IN_METHODS = MODAL_SIGN_IN_METHODS;
30
34
  exports.SMART_ACCOUNT_WALLET_SCOPE = SMART_ACCOUNT_WALLET_SCOPE;
@@ -3,24 +3,6 @@
3
3
  var constants = require('./constants.js');
4
4
  var deserialize = require('./deserialize.js');
5
5
 
6
- const cookieStorage = options => ({
7
- getItem(key) {
8
- if (typeof window === "undefined") return null;
9
- const value = parseCookie(document.cookie, key);
10
- return value !== null && value !== void 0 ? value : null;
11
- },
12
- setItem(key, value) {
13
- if (typeof window === "undefined") return;
14
- let cookieString = `${key}=${value};path=/;samesite=Lax`;
15
- if (options !== null && options !== void 0 && options.expiry && typeof options.expiry === "number") cookieString += `; expires=${new Date(Date.now() + options.expiry).toUTCString()}`;
16
- if (process.env.NODE_ENV === "production") cookieString += "; secure";
17
- document.cookie = cookieString;
18
- },
19
- removeItem(key) {
20
- if (typeof window === "undefined") return;
21
- document.cookie = `${key}=;max-age=-1;path=/`;
22
- }
23
- });
24
6
  function cookieToWeb3AuthState(cookie) {
25
7
  if (!cookie) return undefined;
26
8
  const parsed = parseCookie(cookie, constants.WEB3AUTH_STATE_STORAGE_KEY);
@@ -30,9 +12,13 @@ function cookieToWeb3AuthState(cookie) {
30
12
  function parseCookie(cookie, key) {
31
13
  const keyValue = cookie.split("; ").find(x => x.startsWith(`${key}=`));
32
14
  if (!keyValue) return undefined;
33
- return keyValue.substring(key.length + 1);
15
+ const value = keyValue.substring(key.length + 1);
16
+ try {
17
+ return decodeURIComponent(value);
18
+ } catch {
19
+ return value;
20
+ }
34
21
  }
35
22
 
36
- exports.cookieStorage = cookieStorage;
37
23
  exports.cookieToWeb3AuthState = cookieToWeb3AuthState;
38
24
  exports.parseCookie = parseCookie;