@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,27 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var vue = require('vue');
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
- var index = require('../../base/composables/index.js');
10
- require('@web3auth/auth');
11
- var index$1 = require('../../base/errors/index.js');
12
- require('../../base/wallet/index.js');
13
- require('../../base/connector/connectorStatus.js');
14
- require('../../base/connector/constants.js');
15
- require('jwt-decode');
16
- require('../../base/plugin/errors.js');
17
- require('../../base/plugin/IPlugin.js');
18
- require('@toruslabs/constants');
19
- require('@toruslabs/http-helpers');
3
+ var useInjectedWeb3AuthInnerContext = require('./useInjectedWeb3AuthInnerContext.js');
20
4
 
21
5
  const useWeb3AuthInner = () => {
22
- const context = vue.inject(index.Web3AuthContextKey);
23
- if (!context) throw index$1.WalletInitializationError.fromCode(1000, "usage of `useWeb3Auth` not wrapped in `Web3AuthProvider`.");
24
- return context;
6
+ return useInjectedWeb3AuthInnerContext.useInjectedWeb3AuthInnerContext();
25
7
  };
26
8
 
27
9
  exports.useWeb3AuthInner = useWeb3AuthInner;
@@ -6,16 +6,18 @@ require('@babel/runtime/helpers/defineProperty');
6
6
  require('@segment/analytics-next');
7
7
  var loglevel = require('../../base/loglevel.js');
8
8
  require('@toruslabs/base-controllers');
9
+ require('@toruslabs/session-manager');
9
10
  require('@web3auth/auth');
10
11
  var index = 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
  require('../../base/plugin/errors.js');
16
20
  require('../../base/plugin/IPlugin.js');
17
- require('@toruslabs/constants');
18
- require('@toruslabs/http-helpers');
19
21
  var useWeb3AuthInner = require('./useWeb3AuthInner.js');
20
22
 
21
23
  const useWeb3AuthUser = () => {
@@ -1,15 +1,17 @@
1
1
  'use strict';
2
2
 
3
+ var useAuthTokenInfo = require('./composables/useAuthTokenInfo.js');
3
4
  var useChain = require('./composables/useChain.js');
4
5
  var useCheckout = require('./composables/useCheckout.js');
5
6
  var useEnableMFA = require('./composables/useEnableMFA.js');
6
7
  var useFunding = require('./composables/useFunding.js');
7
- var useIdentityToken = require('./composables/useIdentityToken.js');
8
+ var useInjectedWeb3AuthInnerContext = require('./composables/useInjectedWeb3AuthInnerContext.js');
8
9
  var useManageMFA = require('./composables/useManageMFA.js');
9
10
  var useReceive = require('./composables/useReceive.js');
10
11
  var useSwap = require('./composables/useSwap.js');
11
12
  var useSwitchChain = require('./composables/useSwitchChain.js');
12
13
  var useWalletConnectScanner = require('./composables/useWalletConnectScanner.js');
14
+ var useWallets = require('./composables/useWallets.js');
13
15
  var useWalletServicesPlugin = require('./composables/useWalletServicesPlugin.js');
14
16
  var useWalletUI = require('./composables/useWalletUI.js');
15
17
  var useWeb3Auth = require('./composables/useWeb3Auth.js');
@@ -17,20 +19,24 @@ var useWeb3AuthConnect = require('./composables/useWeb3AuthConnect.js');
17
19
  var useWeb3AuthDisconnect = require('./composables/useWeb3AuthDisconnect.js');
18
20
  var useWeb3AuthUser = require('./composables/useWeb3AuthUser.js');
19
21
  var WalletServicesContext = require('./context/WalletServicesContext.js');
22
+ var useWalletServicesInnerContextValue = require('./useWalletServicesInnerContextValue.js');
23
+ var useWeb3AuthInnerContextValue = require('./useWeb3AuthInnerContextValue.js');
20
24
  var Web3AuthProvider = require('./Web3AuthProvider.js');
21
25
 
22
26
 
23
27
 
28
+ exports.useAuthTokenInfo = useAuthTokenInfo.useAuthTokenInfo;
24
29
  exports.useChain = useChain.useChain;
25
30
  exports.useCheckout = useCheckout.useCheckout;
26
31
  exports.useEnableMFA = useEnableMFA.useEnableMFA;
27
32
  exports.useFunding = useFunding.useFunding;
28
- exports.useIdentityToken = useIdentityToken.useIdentityToken;
33
+ exports.useInjectedWeb3AuthInnerContext = useInjectedWeb3AuthInnerContext.useInjectedWeb3AuthInnerContext;
29
34
  exports.useManageMFA = useManageMFA.useManageMFA;
30
35
  exports.useReceive = useReceive.useReceive;
31
36
  exports.useSwap = useSwap.useSwap;
32
37
  exports.useSwitchChain = useSwitchChain.useSwitchChain;
33
38
  exports.useWalletConnectScanner = useWalletConnectScanner.useWalletConnectScanner;
39
+ exports.useWallets = useWallets.useWallets;
34
40
  exports.useWalletServicesPlugin = useWalletServicesPlugin.useWalletServicesPlugin;
35
41
  exports.useWalletUI = useWalletUI.useWalletUI;
36
42
  exports.useWeb3Auth = useWeb3Auth.useWeb3Auth;
@@ -38,4 +44,6 @@ exports.useWeb3AuthConnect = useWeb3AuthConnect.useWeb3AuthConnect;
38
44
  exports.useWeb3AuthDisconnect = useWeb3AuthDisconnect.useWeb3AuthDisconnect;
39
45
  exports.useWeb3AuthUser = useWeb3AuthUser.useWeb3AuthUser;
40
46
  exports.WalletServicesContextKey = WalletServicesContext.WalletServicesContextKey;
47
+ exports.useWalletServicesInnerContextValue = useWalletServicesInnerContextValue.useWalletServicesInnerContextValue;
48
+ exports.useWeb3AuthInnerContextValue = useWeb3AuthInnerContextValue.useWeb3AuthInnerContextValue;
41
49
  exports.Web3AuthProvider = Web3AuthProvider.Web3AuthProvider;
@@ -6,17 +6,20 @@ require('@babel/runtime/helpers/defineProperty');
6
6
  require('@segment/analytics-next');
7
7
  var loglevel = require('../../../base/loglevel.js');
8
8
  require('@toruslabs/base-controllers');
9
+ require('@toruslabs/session-manager');
9
10
  require('@web3auth/auth');
10
11
  var index = 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
  require('../../../base/plugin/errors.js');
16
20
  require('../../../base/plugin/IPlugin.js');
17
- require('@toruslabs/constants');
18
- require('@toruslabs/http-helpers');
19
21
  var useSolanaWallet = require('./useSolanaWallet.js');
22
+ var solana = require('../../../base/wallet/solana.js');
20
23
 
21
24
  const useSignAndSendTransaction = () => {
22
25
  const {
@@ -30,7 +33,7 @@ const useSignAndSendTransaction = () => {
30
33
  error.value = null;
31
34
  try {
32
35
  if (!solanaWallet.value) throw index.WalletInitializationError.notReady();
33
- const signature = await solanaWallet.value.signAndSendTransaction(transaction);
36
+ const signature = await solana.walletSignAndSendTransaction(solanaWallet.value, transaction);
34
37
  data.value = signature;
35
38
  return signature;
36
39
  } catch (err) {
@@ -6,17 +6,20 @@ require('@babel/runtime/helpers/defineProperty');
6
6
  require('@segment/analytics-next');
7
7
  var loglevel = require('../../../base/loglevel.js');
8
8
  require('@toruslabs/base-controllers');
9
+ require('@toruslabs/session-manager');
9
10
  require('@web3auth/auth');
10
11
  var index = 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
  require('../../../base/plugin/errors.js');
16
20
  require('../../../base/plugin/IPlugin.js');
17
- require('@toruslabs/constants');
18
- require('@toruslabs/http-helpers');
19
21
  var useSolanaWallet = require('./useSolanaWallet.js');
22
+ var solana = require('../../../base/wallet/solana.js');
20
23
 
21
24
  const useSignMessage = () => {
22
25
  const {
@@ -32,7 +35,7 @@ const useSignMessage = () => {
32
35
  try {
33
36
  var _accounts$value;
34
37
  if (!solanaWallet.value) throw index.WalletInitializationError.notReady();
35
- const signature = await solanaWallet.value.signMessage(message, from !== null && from !== void 0 ? from : (_accounts$value = accounts.value) === null || _accounts$value === void 0 ? void 0 : _accounts$value[0]);
38
+ const signature = await solana.walletSignMessage(solanaWallet.value, message, from !== null && from !== void 0 ? from : (_accounts$value = accounts.value) === null || _accounts$value === void 0 ? void 0 : _accounts$value[0]);
36
39
  data.value = signature;
37
40
  return signature;
38
41
  } catch (err) {
@@ -6,17 +6,20 @@ require('@babel/runtime/helpers/defineProperty');
6
6
  require('@segment/analytics-next');
7
7
  var loglevel = require('../../../base/loglevel.js');
8
8
  require('@toruslabs/base-controllers');
9
+ require('@toruslabs/session-manager');
9
10
  require('@web3auth/auth');
10
11
  var index = 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
  require('../../../base/plugin/errors.js');
16
20
  require('../../../base/plugin/IPlugin.js');
17
- require('@toruslabs/constants');
18
- require('@toruslabs/http-helpers');
19
21
  var useSolanaWallet = require('./useSolanaWallet.js');
22
+ var solana = require('../../../base/wallet/solana.js');
20
23
 
21
24
  const useSignTransaction = () => {
22
25
  const {
@@ -30,7 +33,7 @@ const useSignTransaction = () => {
30
33
  error.value = null;
31
34
  try {
32
35
  if (!solanaWallet.value) throw index.WalletInitializationError.notReady();
33
- const signedTransaction = await solanaWallet.value.signTransaction(transaction);
36
+ const signedTransaction = await solana.walletSignTransaction(solanaWallet.value, transaction);
34
37
  data.value = signedTransaction;
35
38
  return signedTransaction;
36
39
  } catch (err) {
@@ -0,0 +1,14 @@
1
+ 'use strict';
2
+
3
+ var vue = require('vue');
4
+ var constants = require('../constants.js');
5
+
6
+ /**
7
+ * Injects the Solana Framework Kit client when inside SolanaProvider and Web3Auth is connected on Solana.
8
+ * Otherwise returns null.
9
+ */
10
+ function useSolanaClient() {
11
+ return vue.inject(constants.SOLANA_CLIENT_KEY, vue.ref(null));
12
+ }
13
+
14
+ exports.useSolanaClient = useSolanaClient;
@@ -1,80 +1,99 @@
1
1
  'use strict';
2
2
 
3
- var web3_js = require('@solana/web3.js');
3
+ var kit = require('@solana/kit');
4
+ var features = require('@wallet-standard/features');
5
+ var wsEmbed = require('@web3auth/ws-embed');
4
6
  var vue = require('vue');
5
7
  var baseControllers = require('@toruslabs/base-controllers');
6
- var solanaWallet = require('../../../providers/solana-provider/solanaWallet.js');
7
- var useChain = require('../../composables/useChain.js');
8
+ var index = require('../../../base/wallet/index.js');
8
9
  require('@babel/runtime/helpers/objectSpread2');
9
10
  require('@babel/runtime/helpers/defineProperty');
10
11
  require('@segment/analytics-next');
11
12
  require('../../../base/loglevel.js');
13
+ require('@toruslabs/session-manager');
12
14
  require('@web3auth/auth');
13
15
  require('../../../base/errors/index.js');
14
- require('../../../base/wallet/index.js');
16
+ require('@toruslabs/constants');
17
+ require('@toruslabs/http-helpers');
18
+ require('../../../base/constants.js');
15
19
  require('../../../base/connector/connectorStatus.js');
16
20
  require('../../../base/connector/constants.js');
17
21
  require('jwt-decode');
18
22
  require('../../../base/plugin/errors.js');
19
23
  require('../../../base/plugin/IPlugin.js');
20
- require('@toruslabs/constants');
21
- require('@toruslabs/http-helpers');
24
+ var useChain = require('../../composables/useChain.js');
22
25
  var useWeb3Auth = require('../../composables/useWeb3Auth.js');
23
26
 
24
27
  const useSolanaWallet = () => {
25
28
  const {
26
- provider,
29
+ connection,
27
30
  web3Auth
28
31
  } = useWeb3Auth.useWeb3Auth();
29
32
  const {
30
33
  chainNamespace
31
34
  } = useChain.useChain();
32
- const accounts = vue.ref([]);
33
- const solanaWallet$1 = vue.shallowRef(null);
34
- const connection = vue.shallowRef(null);
35
- const isSolana = vue.computed(() => chainNamespace.value === baseControllers.CHAIN_NAMESPACES.SOLANA);
36
- const setupWallet = async () => {
37
- var _web3Auth$value;
38
- if (!isSolana.value) {
39
- return;
40
- }
41
- if (!provider.value) {
42
- return;
43
- }
44
- solanaWallet$1.value = new solanaWallet.SolanaWallet(provider.value);
45
- const result = await solanaWallet$1.value.getAccounts();
46
- if ((result === null || result === void 0 ? void 0 : result.length) > 0) {
47
- accounts.value = result;
48
- }
49
- if ((_web3Auth$value = web3Auth.value) !== null && _web3Auth$value !== void 0 && (_web3Auth$value = _web3Auth$value.currentChain) !== null && _web3Auth$value !== void 0 && _web3Auth$value.rpcTarget) {
50
- connection.value = new web3_js.Connection(web3Auth.value.currentChain.rpcTarget);
35
+ const accounts = vue.ref(null);
36
+ const solanaWallet = vue.shallowRef(null);
37
+ const rpc = vue.shallowRef(null);
38
+ let unsubscribeStandardEvents = null;
39
+ const teardownWalletListeners = () => {
40
+ var _unsubscribeStandardE;
41
+ (_unsubscribeStandardE = unsubscribeStandardEvents) === null || _unsubscribeStandardE === void 0 || _unsubscribeStandardE();
42
+ unsubscribeStandardEvents = null;
43
+ };
44
+ const syncAccounts = () => {
45
+ var _solanaWallet$value$a, _solanaWallet$value;
46
+ const accts = (_solanaWallet$value$a = (_solanaWallet$value = solanaWallet.value) === null || _solanaWallet$value === void 0 ? void 0 : _solanaWallet$value.accounts.map(a => a.address)) !== null && _solanaWallet$value$a !== void 0 ? _solanaWallet$value$a : [];
47
+ accounts.value = accts.length > 0 ? accts : null;
48
+ };
49
+ const setupWallet = () => {
50
+ var _connection$value$sol, _connection$value, _web3Auth$value;
51
+ teardownWalletListeners();
52
+ const wallet = (_connection$value$sol = (_connection$value = connection.value) === null || _connection$value === void 0 ? void 0 : _connection$value.solanaWallet) !== null && _connection$value$sol !== void 0 ? _connection$value$sol : null;
53
+ if (!wallet) return;
54
+ solanaWallet.value = wallet;
55
+ syncAccounts();
56
+ unsubscribeStandardEvents = wallet.features[features.StandardEvents].on("change", syncAccounts);
57
+ if ((_web3Auth$value = web3Auth.value) !== null && _web3Auth$value !== void 0 && (_web3Auth$value = _web3Auth$value.currentChain) !== null && _web3Auth$value !== void 0 && _web3Auth$value.rpcTarget && chainNamespace.value === baseControllers.CHAIN_NAMESPACES.SOLANA) {
58
+ rpc.value = kit.createSolanaRpc(web3Auth.value.currentChain.rpcTarget);
51
59
  }
52
60
  };
53
61
  const resetWallet = () => {
54
- solanaWallet$1.value = null;
62
+ teardownWalletListeners();
63
+ solanaWallet.value = null;
55
64
  accounts.value = null;
56
- connection.value = null;
65
+ rpc.value = null;
57
66
  };
58
- if (provider.value && !solanaWallet$1.value) {
59
- setupWallet();
60
- }
61
- vue.watch([provider, chainNamespace], async ([newProvider, newChainNamespace]) => {
62
- if (!newProvider || newChainNamespace !== baseControllers.CHAIN_NAMESPACES.SOLANA) {
63
- if (solanaWallet$1.value) {
64
- resetWallet();
65
- }
66
- return;
67
+ vue.onScopeDispose(teardownWalletListeners);
68
+ const getPrivateKey = async () => {
69
+ var _connection$value2, _web3Auth$value$prima;
70
+ if (!web3Auth.value) throw new Error("Web3Auth not initialized");
71
+ if (((_connection$value2 = connection.value) === null || _connection$value2 === void 0 ? void 0 : _connection$value2.connectorName) !== index.WALLET_CONNECTORS.AUTH) {
72
+ throw new Error("getPrivateKey is only supported with the Auth connector");
67
73
  }
68
- if (newProvider && !solanaWallet$1.value) {
69
- setupWallet();
74
+ const provider = (_web3Auth$value$prima = web3Auth.value.primaryConnector) === null || _web3Auth$value$prima === void 0 ? void 0 : _web3Auth$value$prima.provider;
75
+ if (!provider) throw new Error("Provider not available");
76
+ const privateKey = await provider.request({
77
+ method: wsEmbed.SOLANA_METHOD_TYPES.SOLANA_PRIVATE_KEY
78
+ });
79
+ if (!privateKey) throw new Error("Failed to retrieve private key");
80
+ return privateKey;
81
+ };
82
+ vue.watch([connection, chainNamespace], ([newConnection, newChainNamespace]) => {
83
+ if (!(newConnection !== null && newConnection !== void 0 && newConnection.solanaWallet)) {
84
+ if (solanaWallet.value) resetWallet();
85
+ return;
70
86
  }
87
+ // setup wallet if not setup or chain namespace is changed to solana
88
+ if (!solanaWallet.value || newChainNamespace === baseControllers.CHAIN_NAMESPACES.SOLANA) setupWallet();
71
89
  }, {
72
90
  immediate: true
73
91
  });
74
92
  return {
75
- solanaWallet: solanaWallet$1,
93
+ solanaWallet,
76
94
  accounts,
77
- connection
95
+ rpc,
96
+ getPrivateKey
78
97
  };
79
98
  };
80
99
 
@@ -0,0 +1,5 @@
1
+ 'use strict';
2
+
3
+ const SOLANA_CLIENT_KEY = Symbol("SolanaClient");
4
+
5
+ exports.SOLANA_CLIENT_KEY = SOLANA_CLIENT_KEY;
@@ -3,11 +3,17 @@
3
3
  var useSignAndSendTransaction = require('./composables/useSignAndSendTransaction.js');
4
4
  var useSignMessage = require('./composables/useSignMessage.js');
5
5
  var useSignTransaction = require('./composables/useSignTransaction.js');
6
+ var useSolanaClient = require('./composables/useSolanaClient.js');
6
7
  var useSolanaWallet = require('./composables/useSolanaWallet.js');
8
+ var constants = require('./constants.js');
9
+ var provider = require('./provider.js');
7
10
 
8
11
 
9
12
 
10
13
  exports.useSignAndSendTransaction = useSignAndSendTransaction.useSignAndSendTransaction;
11
14
  exports.useSignMessage = useSignMessage.useSignMessage;
12
15
  exports.useSignTransaction = useSignTransaction.useSignTransaction;
16
+ exports.useSolanaClient = useSolanaClient.useSolanaClient;
13
17
  exports.useSolanaWallet = useSolanaWallet.useSolanaWallet;
18
+ exports.SOLANA_CLIENT_KEY = constants.SOLANA_CLIENT_KEY;
19
+ exports.SolanaProvider = provider.SolanaProvider;
@@ -0,0 +1,110 @@
1
+ 'use strict';
2
+
3
+ var client = require('@solana/client');
4
+ var vue = require('vue');
5
+ require('@babel/runtime/helpers/objectSpread2');
6
+ require('@babel/runtime/helpers/defineProperty');
7
+ require('@segment/analytics-next');
8
+ var loglevel = require('../../base/loglevel.js');
9
+ var baseControllers = require('@toruslabs/base-controllers');
10
+ require('@toruslabs/session-manager');
11
+ require('@web3auth/auth');
12
+ require('../../base/errors/index.js');
13
+ require('@toruslabs/constants');
14
+ require('@toruslabs/http-helpers');
15
+ require('../../base/constants.js');
16
+ require('../../base/wallet/index.js');
17
+ require('../../base/connector/connectorStatus.js');
18
+ require('../../base/connector/constants.js');
19
+ require('jwt-decode');
20
+ require('../../base/plugin/errors.js');
21
+ require('../../base/plugin/IPlugin.js');
22
+ var useWeb3Auth = require('../composables/useWeb3Auth.js');
23
+ var constants = require('./constants.js');
24
+
25
+ const disposeClient = async client => {
26
+ try {
27
+ await client.actions.disconnectWallet();
28
+ } catch (e) {
29
+ loglevel.log.warn("Solana client disconnect", e);
30
+ }
31
+ client.destroy();
32
+ };
33
+ /**
34
+ * Syncs Web3Auth Solana connection with Framework Kit client.
35
+ * When user is connected via Web3Auth and current chain is Solana, creates a Framework Kit client
36
+ * with Web3Auth as the wallet connector and connects it (same pattern as Wagmi provider).
37
+ */
38
+ const SolanaProvider = vue.defineComponent({
39
+ name: "SolanaProvider",
40
+ setup(_, {
41
+ slots
42
+ }) {
43
+ const {
44
+ isConnected,
45
+ connection,
46
+ web3Auth
47
+ } = useWeb3Auth.useWeb3Auth();
48
+ const clientRef = vue.ref(null);
49
+ // provide the client to the app
50
+ vue.provide(constants.SOLANA_CLIENT_KEY, clientRef);
51
+ // watch for changes in the connection and chain namespace
52
+ vue.watch([isConnected, connection], async ([newIsConnected, newConnection]) => {
53
+ var _web3Auth$value;
54
+ if (!newIsConnected || !(newConnection !== null && newConnection !== void 0 && newConnection.solanaWallet)) {
55
+ if (clientRef.value) {
56
+ await disposeClient(clientRef.value);
57
+ clientRef.value = null;
58
+ }
59
+ return;
60
+ }
61
+ const currentChain = web3Auth.value.currentChain;
62
+ let chainConfig;
63
+ if ((currentChain === null || currentChain === void 0 ? void 0 : currentChain.chainNamespace) === baseControllers.CHAIN_NAMESPACES.SOLANA) {
64
+ chainConfig = currentChain;
65
+ } else {
66
+ // use the 1st Solana chain if current chain is not solana
67
+ chainConfig = web3Auth.value.coreOptions.chains.find(c => c.chainNamespace === baseControllers.CHAIN_NAMESPACES.SOLANA);
68
+ if (!chainConfig) return;
69
+ }
70
+ // only reconnect for the primary connector
71
+ if (newConnection.connectorName !== ((_web3Auth$value = web3Auth.value) === null || _web3Auth$value === void 0 ? void 0 : _web3Auth$value.primaryConnectorName)) return;
72
+ const prevClient = clientRef.value;
73
+ try {
74
+ // create a wallet standard connector from connected wallet
75
+ const solanaWalletId = "wallet-standard:" + connection.value.connectorName;
76
+ const connector = client.createWalletStandardConnector(connection.value.solanaWallet, {
77
+ id: solanaWalletId,
78
+ name: connection.value.connectorName
79
+ });
80
+ // create a solana client
81
+ const {
82
+ rpcTarget,
83
+ wsTarget
84
+ } = chainConfig;
85
+ const client$1 = client.createClient({
86
+ endpoint: rpcTarget,
87
+ websocketEndpoint: wsTarget,
88
+ walletConnectors: [connector]
89
+ });
90
+ clientRef.value = client$1;
91
+ if (prevClient) await disposeClient(prevClient);
92
+ // connect the client to the wallet
93
+ await client$1.actions.connectWallet(solanaWalletId, {
94
+ autoConnect: true
95
+ });
96
+ } catch (err) {
97
+ loglevel.log.error("Failed to create or connect Solana client", err);
98
+ clientRef.value = null;
99
+ }
100
+ }, {
101
+ immediate: true
102
+ });
103
+ return () => {
104
+ var _slots$default, _slots$default2;
105
+ return vue.h(vue.Fragment, null, (_slots$default = (_slots$default2 = slots.default) === null || _slots$default2 === void 0 ? void 0 : _slots$default2.call(slots)) !== null && _slots$default !== void 0 ? _slots$default : []);
106
+ };
107
+ }
108
+ });
109
+
110
+ exports.SolanaProvider = SolanaProvider;
@@ -0,0 +1,75 @@
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
+ 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 useWalletServicesInnerContextValue(web3AuthContext) {
23
+ const {
24
+ getPlugin,
25
+ isInitialized,
26
+ isConnected
27
+ } = web3AuthContext;
28
+ const walletServicesPlugin = vue.shallowRef(null);
29
+ const ready = vue.ref(false);
30
+ const connecting = vue.ref(false);
31
+ vue.watch(isInitialized, newIsInitialized => {
32
+ if (newIsInitialized) {
33
+ const plugin = getPlugin(IPlugin.EVM_PLUGINS.WALLET_SERVICES);
34
+ walletServicesPlugin.value = plugin;
35
+ }
36
+ });
37
+ vue.watch(isConnected, newIsConnected => {
38
+ if (newIsConnected) {
39
+ const plugin = getPlugin(IPlugin.EVM_PLUGINS.WALLET_SERVICES);
40
+ walletServicesPlugin.value = plugin;
41
+ // When rehydrating, the connected listener may be registered after the connected event is emitted.
42
+ if (connectorStatus.CONNECTED_STATUSES.includes(plugin === null || plugin === void 0 ? void 0 : plugin.status)) ready.value = true;
43
+ }
44
+ });
45
+ vue.watch(walletServicesPlugin, (newWalletServicesPlugin, prevWalletServicesPlugin) => {
46
+ const connectedListener = () => {
47
+ ready.value = true;
48
+ };
49
+ const disconnectedListener = () => {
50
+ ready.value = false;
51
+ };
52
+ const connectingListener = () => {
53
+ connecting.value = true;
54
+ };
55
+ const previousPlugin = prevWalletServicesPlugin;
56
+ const currentPlugin = newWalletServicesPlugin;
57
+ if (previousPlugin && currentPlugin !== previousPlugin) {
58
+ previousPlugin.removeListener(IPlugin.PLUGIN_EVENTS.CONNECTED, connectedListener);
59
+ previousPlugin.removeListener(IPlugin.PLUGIN_EVENTS.DISCONNECTED, disconnectedListener);
60
+ previousPlugin.removeListener(IPlugin.PLUGIN_EVENTS.CONNECTING, connectingListener);
61
+ }
62
+ if (currentPlugin && currentPlugin !== previousPlugin) {
63
+ currentPlugin.on(IPlugin.PLUGIN_EVENTS.CONNECTED, connectedListener);
64
+ currentPlugin.on(IPlugin.PLUGIN_EVENTS.DISCONNECTED, disconnectedListener);
65
+ currentPlugin.on(IPlugin.PLUGIN_EVENTS.CONNECTING, connectingListener);
66
+ }
67
+ });
68
+ return {
69
+ plugin: walletServicesPlugin,
70
+ ready,
71
+ connecting
72
+ };
73
+ }
74
+
75
+ exports.useWalletServicesInnerContextValue = useWalletServicesInnerContextValue;