@web3auth/no-modal 10.0.0-alpha.1 → 10.0.0-beta.0

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 (266) hide show
  1. package/dist/lib.cjs/base/chain/IChainInterface.js +5 -10
  2. package/dist/lib.cjs/base/chain/config.js +20 -19
  3. package/dist/lib.cjs/base/connector/baseConnector.js +3 -6
  4. package/dist/lib.cjs/base/connector/constants.js +5 -0
  5. package/dist/lib.cjs/base/errors/index.js +0 -10
  6. package/dist/lib.cjs/base/plugin/IPlugin.js +2 -2
  7. package/dist/lib.cjs/base/plugin/errors.js +0 -2
  8. package/dist/lib.cjs/base/utils.js +10 -9
  9. package/dist/lib.cjs/base/wallet/index.js +2 -1
  10. package/dist/lib.cjs/connectors/auth-connector/authConnector.js +218 -59
  11. package/dist/lib.cjs/connectors/base-evm-connector/baseEvmConnector.js +8 -2
  12. package/dist/lib.cjs/connectors/base-solana-connector/baseSolanaConnector.js +7 -1
  13. package/dist/lib.cjs/connectors/coinbase-connector/coinbaseConnector.js +11 -3
  14. package/dist/lib.cjs/connectors/injected-evm-connector/injectedEvmConnector.js +13 -5
  15. package/dist/lib.cjs/connectors/injected-solana-connector/index.js +2 -2
  16. package/dist/lib.cjs/connectors/injected-solana-connector/walletStandardConnector.js +13 -5
  17. package/dist/lib.cjs/connectors/metamask-connector/metamaskConnector.js +197 -0
  18. package/dist/lib.cjs/connectors/utils.js +61 -0
  19. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/WalletConnectV2Provider.js +24 -7
  20. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/config.js +36 -90
  21. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/index.js +16 -4
  22. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/walletConnectV2Connector.js +21 -30
  23. package/dist/lib.cjs/connectors/wallet-connect-v2-connector/walletConnectV2Utils.js +12 -2
  24. package/dist/lib.cjs/index.js +76 -55
  25. package/dist/lib.cjs/noModal.js +149 -53
  26. package/dist/lib.cjs/plugins/nft-checkout-plugin/embed.js +0 -3
  27. package/dist/lib.cjs/plugins/nft-checkout-plugin/plugin.js +10 -3
  28. package/dist/lib.cjs/plugins/wallet-services-plugin/plugin.js +13 -11
  29. package/dist/lib.cjs/providers/account-abstraction-provider/providers/AccountAbstractionProvider.js +33 -18
  30. package/dist/lib.cjs/providers/account-abstraction-provider/providers/utils.js +10 -0
  31. package/dist/lib.cjs/providers/account-abstraction-provider/rpc/ethRpcMiddlewares.js +0 -2
  32. package/dist/lib.cjs/providers/base-provider/baseProvider.js +32 -12
  33. package/dist/lib.cjs/providers/base-provider/index.js +4 -0
  34. package/dist/lib.cjs/providers/base-provider/utils.js +10 -2
  35. package/dist/lib.cjs/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.js +18 -5
  36. package/dist/lib.cjs/providers/ethereum-mpc-provider/providers/signingProviders/signingUtils.js +12 -2
  37. package/dist/lib.cjs/providers/ethereum-mpc-provider/rpc/ethRpcMiddlewares.js +0 -1
  38. package/dist/lib.cjs/providers/ethereum-provider/providers/converter.js +0 -1
  39. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/formatter.js +12 -11
  40. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/interfaces.js +3 -5
  41. package/dist/lib.cjs/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/utils.js +1 -2
  42. package/dist/lib.cjs/providers/ethereum-provider/rpc/walletMidddleware.js +0 -8
  43. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.js +13 -0
  44. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/base/providerHandlers.js +4 -4
  45. package/dist/lib.cjs/providers/solana-provider/providers/injectedProviders/walletStandardProvider.js +15 -8
  46. package/dist/lib.cjs/providers/solana-provider/rpc/solanaRpcMiddlewares.js +1 -1
  47. package/dist/lib.cjs/providers/solana-provider/solanaWallet.js +0 -3
  48. package/dist/lib.cjs/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.js +13 -2
  49. package/dist/lib.cjs/providers/xrpl-provider/rpc/xrplRpcMiddlewares.js +0 -1
  50. package/dist/lib.cjs/react/no-modal/Web3AuthInnerContext.js +11 -3
  51. package/dist/lib.cjs/react/no-modal/hooks/useWeb3Auth.js +11 -0
  52. package/dist/lib.cjs/react/wallet-services-plugin/WalletServicesContext.js +10 -1
  53. package/dist/lib.cjs/react/wallet-services-plugin/hooks/useWalletServicesPlugin.js +11 -0
  54. package/dist/lib.cjs/types/base/chain/IChainInterface.d.ts +11 -0
  55. package/dist/{types → lib.cjs/types}/base/connector/constants.d.ts +4 -0
  56. package/dist/{types → lib.cjs/types}/base/connector/interfaces.d.ts +17 -5
  57. package/dist/{types → lib.cjs/types}/base/core/IWeb3Auth.d.ts +11 -5
  58. package/dist/lib.cjs/types/base/interfaces.d.ts +102 -0
  59. package/dist/{types → lib.cjs/types}/base/utils.d.ts +2 -2
  60. package/dist/{types → lib.cjs/types}/base/wallet/index.d.ts +2 -0
  61. package/dist/{types → lib.cjs/types}/connectors/auth-connector/authConnector.d.ts +9 -2
  62. package/dist/lib.cjs/types/connectors/auth-connector/interface.d.ts +17 -0
  63. package/dist/lib.cjs/types/connectors/metamask-connector/index.d.ts +1 -0
  64. package/dist/lib.cjs/types/connectors/metamask-connector/metamaskConnector.d.ts +6 -0
  65. package/dist/lib.cjs/types/connectors/utils.d.ts +8 -0
  66. package/dist/{types → lib.cjs/types}/connectors/wallet-connect-v2-connector/WalletConnectV2Provider.d.ts +1 -2
  67. package/dist/{types → lib.cjs/types}/noModal.d.ts +6 -4
  68. package/dist/{types → lib.cjs/types}/providers/account-abstraction-provider/providers/AccountAbstractionProvider.d.ts +4 -5
  69. package/dist/{types → lib.cjs/types}/providers/base-provider/baseProvider.d.ts +3 -7
  70. package/dist/{types → lib.cjs/types}/providers/base-provider/commonPrivateKeyProvider.d.ts +1 -2
  71. package/dist/{types → lib.cjs/types}/providers/base-provider/interfaces.d.ts +3 -1
  72. package/dist/lib.cjs/types/providers/base-provider/utils.d.ts +9 -0
  73. package/dist/{types → lib.cjs/types}/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.d.ts +1 -2
  74. package/dist/lib.cjs/types/providers/solana-provider/providers/index.d.ts +1 -0
  75. package/dist/{types → lib.cjs/types}/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.d.ts +1 -2
  76. package/dist/lib.cjs/vue/no-modal/Web3AuthProvider.js +12 -3
  77. package/dist/lib.cjs/vue/no-modal/composables/useWeb3Auth.js +12 -1
  78. package/dist/lib.cjs/vue/wallet-services-plugin/WalletServicesProvider.js +11 -3
  79. package/dist/lib.cjs/vue/wallet-services-plugin/composables/useWalletServicesPlugin.js +12 -1
  80. package/dist/lib.esm/base/chain/IChainInterface.js +2 -10
  81. package/dist/lib.esm/base/chain/config.js +4 -3
  82. package/dist/lib.esm/base/connector/baseConnector.js +2 -5
  83. package/dist/lib.esm/base/connector/constants.js +5 -1
  84. package/dist/lib.esm/base/errors/index.js +0 -10
  85. package/dist/lib.esm/base/plugin/IPlugin.js +1 -1
  86. package/dist/lib.esm/base/plugin/errors.js +0 -2
  87. package/dist/lib.esm/base/utils.js +8 -7
  88. package/dist/lib.esm/base/wallet/index.js +2 -1
  89. package/dist/lib.esm/connectors/auth-connector/authConnector.js +212 -53
  90. package/dist/lib.esm/connectors/base-evm-connector/baseEvmConnector.js +8 -2
  91. package/dist/lib.esm/connectors/base-solana-connector/baseSolanaConnector.js +7 -1
  92. package/dist/lib.esm/connectors/coinbase-connector/coinbaseConnector.js +10 -2
  93. package/dist/lib.esm/connectors/injected-evm-connector/injectedEvmConnector.js +12 -4
  94. package/dist/lib.esm/connectors/injected-solana-connector/walletStandardConnector.js +12 -4
  95. package/dist/lib.esm/connectors/metamask-connector/metamaskConnector.js +195 -0
  96. package/dist/lib.esm/connectors/utils.js +58 -0
  97. package/dist/lib.esm/connectors/wallet-connect-v2-connector/WalletConnectV2Provider.js +22 -5
  98. package/dist/lib.esm/connectors/wallet-connect-v2-connector/config.js +25 -75
  99. package/dist/lib.esm/connectors/wallet-connect-v2-connector/walletConnectV2Connector.js +19 -28
  100. package/dist/lib.esm/connectors/wallet-connect-v2-connector/walletConnectV2Utils.js +11 -1
  101. package/dist/lib.esm/index.js +13 -14
  102. package/dist/lib.esm/noModal.js +147 -51
  103. package/dist/lib.esm/plugins/nft-checkout-plugin/embed.js +1 -4
  104. package/dist/lib.esm/plugins/nft-checkout-plugin/plugin.js +10 -3
  105. package/dist/lib.esm/plugins/wallet-services-plugin/plugin.js +9 -7
  106. package/dist/lib.esm/providers/account-abstraction-provider/providers/AccountAbstractionProvider.js +30 -15
  107. package/dist/lib.esm/providers/account-abstraction-provider/providers/utils.js +10 -0
  108. package/dist/lib.esm/providers/account-abstraction-provider/rpc/ethRpcMiddlewares.js +0 -2
  109. package/dist/lib.esm/providers/base-provider/baseProvider.js +32 -12
  110. package/dist/lib.esm/providers/base-provider/index.js +1 -1
  111. package/dist/lib.esm/providers/base-provider/utils.js +9 -1
  112. package/dist/lib.esm/providers/ethereum-mpc-provider/providers/signingProviders/EthereumSigningProvider.js +16 -3
  113. package/dist/lib.esm/providers/ethereum-mpc-provider/providers/signingProviders/signingUtils.js +12 -2
  114. package/dist/lib.esm/providers/ethereum-mpc-provider/rpc/ethRpcMiddlewares.js +0 -1
  115. package/dist/lib.esm/providers/ethereum-provider/providers/converter.js +0 -1
  116. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/formatter.js +12 -11
  117. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/interfaces.js +3 -3
  118. package/dist/lib.esm/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/utils.js +1 -2
  119. package/dist/lib.esm/providers/ethereum-provider/rpc/walletMidddleware.js +0 -8
  120. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.js +13 -0
  121. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/base/providerHandlers.js +1 -1
  122. package/dist/lib.esm/providers/solana-provider/providers/injectedProviders/walletStandardProvider.js +12 -5
  123. package/dist/lib.esm/providers/solana-provider/rpc/solanaRpcMiddlewares.js +2 -2
  124. package/dist/lib.esm/providers/solana-provider/solanaWallet.js +0 -3
  125. package/dist/lib.esm/providers/xrpl-provider/providers/privateKeyProviders/xrplPrivateKeyProvider.js +12 -1
  126. package/dist/lib.esm/providers/xrpl-provider/rpc/xrplRpcMiddlewares.js +0 -1
  127. package/dist/lib.esm/react/no-modal/Web3AuthInnerContext.js +11 -3
  128. package/dist/lib.esm/react/no-modal/hooks/useWeb3Auth.js +11 -0
  129. package/dist/lib.esm/react/wallet-services-plugin/WalletServicesContext.js +10 -1
  130. package/dist/lib.esm/react/wallet-services-plugin/hooks/useWalletServicesPlugin.js +11 -0
  131. package/dist/lib.esm/vue/no-modal/Web3AuthProvider.js +12 -3
  132. package/dist/lib.esm/vue/no-modal/composables/useWeb3Auth.js +12 -1
  133. package/dist/lib.esm/vue/wallet-services-plugin/WalletServicesProvider.js +11 -3
  134. package/dist/lib.esm/vue/wallet-services-plugin/composables/useWalletServicesPlugin.js +12 -1
  135. package/dist/noModal.umd.min.js +1 -1
  136. package/package.json +26 -23
  137. package/dist/lib.cjs/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyProvider.js +0 -150
  138. package/dist/lib.cjs/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyUtils.js +0 -94
  139. package/dist/lib.esm/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyProvider.js +0 -148
  140. package/dist/lib.esm/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyUtils.js +0 -92
  141. package/dist/noModal.cjs.js +0 -14673
  142. package/dist/types/base/chain/IChainInterface.d.ts +0 -59
  143. package/dist/types/base/interfaces.d.ts +0 -44
  144. package/dist/types/connectors/auth-connector/interface.d.ts +0 -14
  145. package/dist/types/providers/base-provider/utils.d.ts +0 -2
  146. package/dist/types/providers/solana-provider/providers/index.d.ts +0 -2
  147. package/dist/types/providers/solana-provider/providers/privateKeyProvider/index.d.ts +0 -1
  148. package/dist/types/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyProvider.d.ts +0 -31
  149. package/dist/types/providers/solana-provider/providers/privateKeyProvider/solanaPrivateKeyUtils.d.ts +0 -7
  150. /package/dist/{types → lib.cjs/types}/base/chain/config.d.ts +0 -0
  151. /package/dist/{types → lib.cjs/types}/base/composables/index.d.ts +0 -0
  152. /package/dist/{types → lib.cjs/types}/base/connector/baseConnector.d.ts +0 -0
  153. /package/dist/{types → lib.cjs/types}/base/connector/index.d.ts +0 -0
  154. /package/dist/{types → lib.cjs/types}/base/connector/utils.d.ts +0 -0
  155. /package/dist/{types → lib.cjs/types}/base/errors/index.d.ts +0 -0
  156. /package/dist/{types → lib.cjs/types}/base/hooks/index.d.ts +0 -0
  157. /package/dist/{types → lib.cjs/types}/base/index.d.ts +0 -0
  158. /package/dist/{types → lib.cjs/types}/base/loglevel.d.ts +0 -0
  159. /package/dist/{types → lib.cjs/types}/base/plugin/IPlugin.d.ts +0 -0
  160. /package/dist/{types → lib.cjs/types}/base/plugin/errors.d.ts +0 -0
  161. /package/dist/{types → lib.cjs/types}/base/plugin/index.d.ts +0 -0
  162. /package/dist/{types → lib.cjs/types}/base/provider/IProvider.d.ts +0 -0
  163. /package/dist/{types → lib.cjs/types}/connectors/auth-connector/index.d.ts +0 -0
  164. /package/dist/{types → lib.cjs/types}/connectors/base-evm-connector/baseEvmConnector.d.ts +0 -0
  165. /package/dist/{types → lib.cjs/types}/connectors/base-evm-connector/index.d.ts +0 -0
  166. /package/dist/{types → lib.cjs/types}/connectors/base-solana-connector/baseSolanaConnector.d.ts +0 -0
  167. /package/dist/{types → lib.cjs/types}/connectors/base-solana-connector/index.d.ts +0 -0
  168. /package/dist/{types → lib.cjs/types}/connectors/coinbase-connector/coinbaseConnector.d.ts +0 -0
  169. /package/dist/{types → lib.cjs/types}/connectors/coinbase-connector/index.d.ts +0 -0
  170. /package/dist/{types → lib.cjs/types}/connectors/index.d.ts +0 -0
  171. /package/dist/{types → lib.cjs/types}/connectors/injected-evm-connector/index.d.ts +0 -0
  172. /package/dist/{types → lib.cjs/types}/connectors/injected-evm-connector/injectedEvmConnector.d.ts +0 -0
  173. /package/dist/{types → lib.cjs/types}/connectors/injected-solana-connector/index.d.ts +0 -0
  174. /package/dist/{types → lib.cjs/types}/connectors/injected-solana-connector/utils.d.ts +0 -0
  175. /package/dist/{types → lib.cjs/types}/connectors/injected-solana-connector/walletStandardConnector.d.ts +0 -0
  176. /package/dist/{types → lib.cjs/types}/connectors/wallet-connect-v2-connector/config.d.ts +0 -0
  177. /package/dist/{types → lib.cjs/types}/connectors/wallet-connect-v2-connector/index.d.ts +0 -0
  178. /package/dist/{types → lib.cjs/types}/connectors/wallet-connect-v2-connector/interface.d.ts +0 -0
  179. /package/dist/{types → lib.cjs/types}/connectors/wallet-connect-v2-connector/utils.d.ts +0 -0
  180. /package/dist/{types → lib.cjs/types}/connectors/wallet-connect-v2-connector/walletConnectV2Connector.d.ts +0 -0
  181. /package/dist/{types → lib.cjs/types}/connectors/wallet-connect-v2-connector/walletConnectV2Utils.d.ts +0 -0
  182. /package/dist/{types → lib.cjs/types}/index.d.ts +0 -0
  183. /package/dist/{types → lib.cjs/types}/plugins/index.d.ts +0 -0
  184. /package/dist/{types → lib.cjs/types}/plugins/nft-checkout-plugin/embed.d.ts +0 -0
  185. /package/dist/{types → lib.cjs/types}/plugins/nft-checkout-plugin/enums.d.ts +0 -0
  186. /package/dist/{types → lib.cjs/types}/plugins/nft-checkout-plugin/index.d.ts +0 -0
  187. /package/dist/{types → lib.cjs/types}/plugins/nft-checkout-plugin/plugin.d.ts +0 -0
  188. /package/dist/{types → lib.cjs/types}/plugins/nft-checkout-plugin/utils.d.ts +0 -0
  189. /package/dist/{types → lib.cjs/types}/plugins/wallet-services-plugin/index.d.ts +0 -0
  190. /package/dist/{types → lib.cjs/types}/plugins/wallet-services-plugin/plugin.d.ts +0 -0
  191. /package/dist/{types → lib.cjs/types}/providers/account-abstraction-provider/index.d.ts +0 -0
  192. /package/dist/{types → lib.cjs/types}/providers/account-abstraction-provider/providers/index.d.ts +0 -0
  193. /package/dist/{types → lib.cjs/types}/providers/account-abstraction-provider/providers/smartAccounts/index.d.ts +0 -0
  194. /package/dist/{types → lib.cjs/types}/providers/account-abstraction-provider/providers/utils.d.ts +0 -0
  195. /package/dist/{types → lib.cjs/types}/providers/account-abstraction-provider/rpc/ethRpcMiddlewares.d.ts +0 -0
  196. /package/dist/{types → lib.cjs/types}/providers/account-abstraction-provider/rpc/index.d.ts +0 -0
  197. /package/dist/{types → lib.cjs/types}/providers/base-provider/CommonJRPCProvider.d.ts +0 -0
  198. /package/dist/{types → lib.cjs/types}/providers/base-provider/index.d.ts +0 -0
  199. /package/dist/{types → lib.cjs/types}/providers/base-provider/jrpcClient.d.ts +0 -0
  200. /package/dist/{types → lib.cjs/types}/providers/ethereum-mpc-provider/index.d.ts +0 -0
  201. /package/dist/{types → lib.cjs/types}/providers/ethereum-mpc-provider/providers/index.d.ts +0 -0
  202. /package/dist/{types → lib.cjs/types}/providers/ethereum-mpc-provider/providers/signingProviders/index.d.ts +0 -0
  203. /package/dist/{types → lib.cjs/types}/providers/ethereum-mpc-provider/providers/signingProviders/signingUtils.d.ts +0 -0
  204. /package/dist/{types → lib.cjs/types}/providers/ethereum-mpc-provider/rpc/ethRpcMiddlewares.d.ts +0 -0
  205. /package/dist/{types → lib.cjs/types}/providers/ethereum-mpc-provider/rpc/interfaces.d.ts +0 -0
  206. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/index.d.ts +0 -0
  207. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/providers/converter.d.ts +0 -0
  208. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/providers/index.d.ts +0 -0
  209. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/constants.d.ts +0 -0
  210. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/formatter.d.ts +0 -0
  211. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/index.d.ts +0 -0
  212. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/interfaces.d.ts +0 -0
  213. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/providers/privateKeyProviders/TransactionFormatter/utils.d.ts +0 -0
  214. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/providers/privateKeyProviders/index.d.ts +0 -0
  215. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/providers/utils.d.ts +0 -0
  216. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/rpc/ethRpcMiddlewares.d.ts +0 -0
  217. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/rpc/index.d.ts +0 -0
  218. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/rpc/interfaces.d.ts +0 -0
  219. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/rpc/jrpcClient.d.ts +0 -0
  220. /package/dist/{types → lib.cjs/types}/providers/ethereum-provider/rpc/walletMidddleware.d.ts +0 -0
  221. /package/dist/{types → lib.cjs/types}/providers/index.d.ts +0 -0
  222. /package/dist/{types → lib.cjs/types}/providers/solana-provider/index.d.ts +0 -0
  223. /package/dist/{types → lib.cjs/types}/providers/solana-provider/interface.d.ts +0 -0
  224. /package/dist/{types → lib.cjs/types}/providers/solana-provider/providers/injectedProviders/base/baseInjectedProvider.d.ts +0 -0
  225. /package/dist/{types → lib.cjs/types}/providers/solana-provider/providers/injectedProviders/base/providerHandlers.d.ts +0 -0
  226. /package/dist/{types → lib.cjs/types}/providers/solana-provider/providers/injectedProviders/index.d.ts +0 -0
  227. /package/dist/{types → lib.cjs/types}/providers/solana-provider/providers/injectedProviders/utils.d.ts +0 -0
  228. /package/dist/{types → lib.cjs/types}/providers/solana-provider/providers/injectedProviders/walletStandardProvider.d.ts +0 -0
  229. /package/dist/{types → lib.cjs/types}/providers/solana-provider/rpc/JrpcClient.d.ts +0 -0
  230. /package/dist/{types → lib.cjs/types}/providers/solana-provider/rpc/index.d.ts +0 -0
  231. /package/dist/{types → lib.cjs/types}/providers/solana-provider/rpc/interfaces.d.ts +0 -0
  232. /package/dist/{types → lib.cjs/types}/providers/solana-provider/rpc/solanaRpcMiddlewares.d.ts +0 -0
  233. /package/dist/{types → lib.cjs/types}/providers/solana-provider/solanaWallet.d.ts +0 -0
  234. /package/dist/{types → lib.cjs/types}/providers/xrpl-provider/index.d.ts +0 -0
  235. /package/dist/{types → lib.cjs/types}/providers/xrpl-provider/providers/index.d.ts +0 -0
  236. /package/dist/{types → lib.cjs/types}/providers/xrpl-provider/providers/privateKeyProviders/constants.d.ts +0 -0
  237. /package/dist/{types → lib.cjs/types}/providers/xrpl-provider/providers/privateKeyProviders/index.d.ts +0 -0
  238. /package/dist/{types → lib.cjs/types}/providers/xrpl-provider/providers/privateKeyProviders/interface.d.ts +0 -0
  239. /package/dist/{types → lib.cjs/types}/providers/xrpl-provider/providers/privateKeyProviders/xrplWalletUtils.d.ts +0 -0
  240. /package/dist/{types → lib.cjs/types}/providers/xrpl-provider/rpc/JrpcClient.d.ts +0 -0
  241. /package/dist/{types → lib.cjs/types}/providers/xrpl-provider/rpc/xrplRpcMiddlewares.d.ts +0 -0
  242. /package/dist/{types → lib.cjs/types}/react/index.d.ts +0 -0
  243. /package/dist/{types → lib.cjs/types}/react/no-modal/Web3AuthInnerContext.d.ts +0 -0
  244. /package/dist/{types → lib.cjs/types}/react/no-modal/Web3AuthProvider.d.ts +0 -0
  245. /package/dist/{types → lib.cjs/types}/react/no-modal/hooks/index.d.ts +0 -0
  246. /package/dist/{types → lib.cjs/types}/react/no-modal/hooks/useWeb3Auth.d.ts +0 -0
  247. /package/dist/{types → lib.cjs/types}/react/no-modal/index.d.ts +0 -0
  248. /package/dist/{types → lib.cjs/types}/react/no-modal/interfaces.d.ts +0 -0
  249. /package/dist/{types → lib.cjs/types}/react/wallet-services-plugin/WalletServicesContext.d.ts +0 -0
  250. /package/dist/{types → lib.cjs/types}/react/wallet-services-plugin/WalletServicesProvider.d.ts +0 -0
  251. /package/dist/{types → lib.cjs/types}/react/wallet-services-plugin/hooks/index.d.ts +0 -0
  252. /package/dist/{types → lib.cjs/types}/react/wallet-services-plugin/hooks/useWalletServicesPlugin.d.ts +0 -0
  253. /package/dist/{types → lib.cjs/types}/react/wallet-services-plugin/index.d.ts +0 -0
  254. /package/dist/{types → lib.cjs/types}/react/wallet-services-plugin/interfaces.d.ts +0 -0
  255. /package/dist/{types → lib.cjs/types}/vue/index.d.ts +0 -0
  256. /package/dist/{types → lib.cjs/types}/vue/no-modal/Web3AuthProvider.d.ts +0 -0
  257. /package/dist/{types → lib.cjs/types}/vue/no-modal/composables/index.d.ts +0 -0
  258. /package/dist/{types → lib.cjs/types}/vue/no-modal/composables/useWeb3Auth.d.ts +0 -0
  259. /package/dist/{types → lib.cjs/types}/vue/no-modal/index.d.ts +0 -0
  260. /package/dist/{types → lib.cjs/types}/vue/no-modal/interfaces.d.ts +0 -0
  261. /package/dist/{types → lib.cjs/types}/vue/wallet-services-plugin/WalletServicesProvider.d.ts +0 -0
  262. /package/dist/{types → lib.cjs/types}/vue/wallet-services-plugin/composables/index.d.ts +0 -0
  263. /package/dist/{types → lib.cjs/types}/vue/wallet-services-plugin/composables/useWalletServicesPlugin.d.ts +0 -0
  264. /package/dist/{types → lib.cjs/types}/vue/wallet-services-plugin/context.d.ts +0 -0
  265. /package/dist/{types → lib.cjs/types}/vue/wallet-services-plugin/index.d.ts +0 -0
  266. /package/dist/{types → lib.cjs/types}/vue/wallet-services-plugin/interfaces.d.ts +0 -0
@@ -2,17 +2,21 @@
2
2
 
3
3
  var _objectSpread = require('@babel/runtime/helpers/objectSpread2');
4
4
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
5
+ var baseControllers = require('@toruslabs/base-controllers');
6
+ var securePubSub = require('@toruslabs/secure-pub-sub');
5
7
  var auth = require('@web3auth/auth');
6
8
  var deepmerge = require('deepmerge');
7
- var IChainInterface = require('../../base/chain/IChainInterface.js');
8
9
  var index$1 = require('../../base/errors/index.js');
10
+ var IChainInterface = require('../../base/chain/IChainInterface.js');
11
+ var baseConnector = require('../../base/connector/baseConnector.js');
12
+ var constants = require('../../base/connector/constants.js');
13
+ require('jwt-decode');
9
14
  var loglevel = require('../../base/loglevel.js');
10
- var baseControllers = require('@toruslabs/base-controllers');
15
+ require('../../base/plugin/errors.js');
16
+ require('../../base/plugin/IPlugin.js');
11
17
  require('@toruslabs/constants');
12
18
  require('@toruslabs/http-helpers');
13
19
  var index = require('../../base/wallet/index.js');
14
- var baseConnector = require('../../base/connector/baseConnector.js');
15
- var constants = require('../../base/connector/constants.js');
16
20
 
17
21
  class AuthConnector extends baseConnector.BaseConnector {
18
22
  constructor(params) {
@@ -25,15 +29,17 @@ class AuthConnector extends baseConnector.BaseConnector {
25
29
  _defineProperty(this, "privateKeyProvider", null);
26
30
  _defineProperty(this, "authOptions", void 0);
27
31
  _defineProperty(this, "loginSettings", {
28
- loginProvider: ""
32
+ authConnection: ""
29
33
  });
30
- _defineProperty(this, "wsSettings", {});
34
+ _defineProperty(this, "wsSettings", void 0);
31
35
  _defineProperty(this, "wsEmbedInstance", null);
36
+ _defineProperty(this, "authConnectionConfig", []);
32
37
  this.authOptions = params.connectorSettings;
33
38
  this.loginSettings = params.loginSettings || {
34
- loginProvider: ""
39
+ authConnection: ""
35
40
  };
36
41
  this.wsSettings = params.walletServicesSettings || {};
42
+ this.authConnectionConfig = params.authConnectionConfig || [];
37
43
  }
38
44
  get provider() {
39
45
  if (this.status !== constants.CONNECTOR_STATUS.NOT_READY) {
@@ -51,51 +57,58 @@ class AuthConnector extends baseConnector.BaseConnector {
51
57
  throw new Error("Not implemented");
52
58
  }
53
59
  async init(options) {
54
- const chainConfig = this.coreOptions.chains.find(x => x.chainId === options.chainId);
60
+ const {
61
+ chains
62
+ } = this.coreOptions;
63
+ const {
64
+ chainId
65
+ } = options;
66
+ const chainConfig = chains.find(x => x.chainId === chainId);
55
67
  super.checkInitializationRequirements({
56
68
  chainConfig
57
69
  });
58
70
  if (!this.coreOptions.clientId) throw index$1.WalletInitializationError.invalidParams("clientId is required before auth's initialization");
59
71
  if (!this.authOptions) throw index$1.WalletInitializationError.invalidParams("authOptions is required before auth's initialization");
72
+ if (this.authConnectionConfig.length === 0) throw index$1.WalletInitializationError.invalidParams("authConnectionConfig is required before auth's initialization");
60
73
  const isRedirectResult = this.authOptions.uxMode === auth.UX_MODE.REDIRECT;
61
74
  this.authOptions = _objectSpread(_objectSpread({}, this.authOptions), {}, {
62
75
  replaceUrlOnRedirect: isRedirectResult,
63
76
  useCoreKitKey: this.coreOptions.useCoreKitKey
64
77
  });
65
- const web3AuthNetwork = this.coreOptions.web3AuthNetwork || auth.WEB3AUTH_NETWORK.SAPPHIRE_MAINNET;
66
78
  this.authInstance = new auth.Auth(_objectSpread(_objectSpread({}, this.authOptions), {}, {
67
79
  clientId: this.coreOptions.clientId,
68
- network: web3AuthNetwork
80
+ network: this.coreOptions.web3AuthNetwork,
81
+ sdkMode: auth.SDK_MODE.IFRAME,
82
+ authConnectionConfig: this.authConnectionConfig.filter(x => !x.isDefault)
69
83
  }));
70
- loglevel.log.debug("initializing auth connector init");
84
+ loglevel.log.debug("initializing auth connector init", this.authOptions);
71
85
  await this.authInstance.init();
72
-
73
86
  // Use this for xrpl, mpc cases
74
87
  if (this.coreOptions.privateKeyProvider) {
75
88
  this.privateKeyProvider = this.coreOptions.privateKeyProvider;
76
89
  } else {
77
90
  // initialize ws embed or private key provider based on chain namespace
78
91
  switch (chainConfig.chainNamespace) {
79
- case IChainInterface.CHAIN_NAMESPACES.EIP155:
80
- case IChainInterface.CHAIN_NAMESPACES.SOLANA:
92
+ case baseControllers.CHAIN_NAMESPACES.EIP155:
93
+ case baseControllers.CHAIN_NAMESPACES.SOLANA:
81
94
  {
82
95
  const {
83
96
  default: WsEmbed
84
97
  } = await import('@web3auth/ws-embed');
85
98
  this.wsEmbedInstance = new WsEmbed({
86
99
  web3AuthClientId: this.coreOptions.clientId,
87
- web3AuthNetwork,
100
+ web3AuthNetwork: this.coreOptions.web3AuthNetwork,
88
101
  modalZIndex: this.wsSettings.modalZIndex
89
102
  });
90
- // TODO: once support multiple chains, only pass chains of solana and EVM
103
+ const wsSupportedChains = chains.filter(x => x.chainNamespace === baseControllers.CHAIN_NAMESPACES.EIP155 || x.chainNamespace === baseControllers.CHAIN_NAMESPACES.SOLANA);
91
104
  await this.wsEmbedInstance.init(_objectSpread(_objectSpread({}, this.wsSettings), {}, {
92
- chainConfig: chainConfig,
93
- // TODO: upgrade ws-embed to support custom chain config
105
+ chains: wsSupportedChains,
106
+ chainId,
94
107
  whiteLabel: _objectSpread(_objectSpread({}, this.authOptions.whiteLabel), this.wsSettings.whiteLabel)
95
108
  }));
96
109
  break;
97
110
  }
98
- case IChainInterface.CHAIN_NAMESPACES.XRPL:
111
+ case baseControllers.CHAIN_NAMESPACES.XRPL:
99
112
  throw index$1.WalletLoginError.connectionError("Private key provider is required for XRPL");
100
113
  default:
101
114
  {
@@ -140,11 +153,12 @@ class AuthConnector extends baseConnector.BaseConnector {
140
153
  await this.connectWithProvider(params);
141
154
  return this.provider;
142
155
  } catch (error) {
156
+ var _error$message;
143
157
  loglevel.log.error("Failed to connect with auth provider", error);
144
158
  // ready again to be connected
145
159
  this.status = constants.CONNECTOR_STATUS.READY;
146
160
  this.emit(constants.CONNECTOR_EVENTS.ERRORED, error);
147
- if (error !== null && error !== void 0 && error.message.includes("user closed popup")) {
161
+ if (error !== null && error !== void 0 && (_error$message = error.message) !== null && _error$message !== void 0 && _error$message.includes("user closed popup")) {
148
162
  throw index$1.WalletLoginError.popupClosed();
149
163
  } else if (error instanceof index$1.Web3AuthError) {
150
164
  throw error;
@@ -153,7 +167,7 @@ class AuthConnector extends baseConnector.BaseConnector {
153
167
  }
154
168
  }
155
169
  async enableMFA(params = {
156
- loginProvider: ""
170
+ authConnection: ""
157
171
  }) {
158
172
  if (this.status !== constants.CONNECTOR_STATUS.CONNECTED) throw index$1.WalletLoginError.notConnectedError("Not connected with wallet");
159
173
  if (!this.authInstance) throw index$1.WalletInitializationError.notReady("authInstance is not ready");
@@ -168,7 +182,7 @@ class AuthConnector extends baseConnector.BaseConnector {
168
182
  }
169
183
  }
170
184
  async manageMFA(params = {
171
- loginProvider: ""
185
+ authConnection: ""
172
186
  }) {
173
187
  if (this.status !== constants.CONNECTOR_STATUS.CONNECTED) throw index$1.WalletLoginError.notConnectedError("Not connected with wallet");
174
188
  if (!this.authInstance) throw index$1.WalletInitializationError.notReady("authInstance is not ready");
@@ -215,7 +229,6 @@ class AuthConnector extends baseConnector.BaseConnector {
215
229
  const userInfo = this.authInstance.getUserInfo();
216
230
  return userInfo;
217
231
  }
218
-
219
232
  // we don't support switching between different namespaces, except for solana and evm
220
233
  async switchChain(params, init = false) {
221
234
  super.checkSwitchChainRequirements(params, init);
@@ -232,13 +245,12 @@ class AuthConnector extends baseConnector.BaseConnector {
232
245
  const {
233
246
  chainNamespace: newNamespace
234
247
  } = this.getChain(newChainId);
235
-
236
248
  // skip if chainId is the same
237
249
  if (currentChainId === newChainId) return;
238
- if (currentNamespace === IChainInterface.CHAIN_NAMESPACES.SOLANA || currentNamespace === IChainInterface.CHAIN_NAMESPACES.EIP155) {
250
+ if (currentNamespace === baseControllers.CHAIN_NAMESPACES.SOLANA || currentNamespace === baseControllers.CHAIN_NAMESPACES.EIP155) {
239
251
  var _this$wsEmbedInstance2;
240
252
  // can only switch to solana or evm
241
- if (newNamespace !== IChainInterface.CHAIN_NAMESPACES.SOLANA && newNamespace !== IChainInterface.CHAIN_NAMESPACES.EIP155) throw index$1.WalletLoginError.connectionError("Cannot switch to other chain namespace");
253
+ if (newNamespace !== baseControllers.CHAIN_NAMESPACES.SOLANA && newNamespace !== baseControllers.CHAIN_NAMESPACES.EIP155) throw index$1.WalletLoginError.connectionError("Cannot switch to other chain namespace");
242
254
  const fullChainId = `${newNamespace}:${Number(params.chainId)}`;
243
255
  await ((_this$wsEmbedInstance2 = this.wsEmbedInstance.provider) === null || _this$wsEmbedInstance2 === void 0 ? void 0 : _this$wsEmbedInstance2.request({
244
256
  method: "wallet_switchChain",
@@ -279,23 +291,21 @@ class AuthConnector extends baseConnector.BaseConnector {
279
291
  const {
280
292
  chainNamespace
281
293
  } = chainConfig;
282
-
283
294
  // if not logged in then login
284
- const keyAvailable = chainNamespace === IChainInterface.CHAIN_NAMESPACES.EIP155 || chainNamespace === IChainInterface.CHAIN_NAMESPACES.SOLANA ? (_this$authInstance = this.authInstance) === null || _this$authInstance === void 0 ? void 0 : _this$authInstance.sessionId : this._getFinalPrivKey();
295
+ const keyAvailable = chainNamespace === baseControllers.CHAIN_NAMESPACES.EIP155 || chainNamespace === baseControllers.CHAIN_NAMESPACES.SOLANA ? (_this$authInstance = this.authInstance) === null || _this$authInstance === void 0 ? void 0 : _this$authInstance.sessionId : this._getFinalPrivKey();
285
296
  if (!keyAvailable || (_params$extraLoginOpt = params.extraLoginOptions) !== null && _params$extraLoginOpt !== void 0 && _params$extraLoginOpt.id_token) {
286
297
  var _params$extraLoginOpt2;
287
298
  // always use "other" curve to return token with all keys encoded so wallet service can switch between evm and solana namespace
288
299
  this.loginSettings.curve = auth.SUPPORTED_KEY_CURVES.OTHER;
289
- if (!params.loginProvider && !this.loginSettings.loginProvider) throw index$1.WalletInitializationError.invalidParams("loginProvider is required for login");
290
- await this.authInstance.login(deepmerge.all([this.loginSettings, params, {
291
- extraLoginOptions: _objectSpread(_objectSpread({}, params.extraLoginOptions || {}), {}, {
292
- login_hint: params.login_hint || ((_params$extraLoginOpt2 = params.extraLoginOptions) === null || _params$extraLoginOpt2 === void 0 ? void 0 : _params$extraLoginOpt2.login_hint)
293
- })
294
- }]));
300
+ const loginParams = deepmerge(this.loginSettings, params);
301
+ if ((_params$extraLoginOpt2 = params.extraLoginOptions) !== null && _params$extraLoginOpt2 !== void 0 && _params$extraLoginOpt2.id_token) {
302
+ await this.connectWithJwtLogin(loginParams);
303
+ } else {
304
+ await this.connectWithSocialLogin(loginParams);
305
+ }
295
306
  }
296
-
297
307
  // setup WS embed if chainNamespace is EIP155 or SOLANA
298
- if (chainNamespace === IChainInterface.CHAIN_NAMESPACES.EIP155 || chainNamespace === IChainInterface.CHAIN_NAMESPACES.SOLANA) {
308
+ if (chainNamespace === baseControllers.CHAIN_NAMESPACES.EIP155 || chainNamespace === baseControllers.CHAIN_NAMESPACES.SOLANA) {
299
309
  const {
300
310
  sessionId,
301
311
  sessionNamespace
@@ -335,56 +345,205 @@ class AuthConnector extends baseConnector.BaseConnector {
335
345
  }
336
346
  }
337
347
  }
348
+ async connectWithSocialLogin(params) {
349
+ var _params$extraLoginOpt3, _params$extraLoginOpt4;
350
+ const providerConfig = this.getOAuthProviderConfig({
351
+ authConnection: params.authConnection,
352
+ authConnectionId: params.authConnectionId,
353
+ groupedAuthConnectionId: params.groupedAuthConnectionId
354
+ });
355
+ if (!(providerConfig !== null && providerConfig !== void 0 && providerConfig.authConnection)) throw index$1.WalletLoginError.connectionError("Invalid auth connection.");
356
+ const jwtParams = _objectSpread(_objectSpread(_objectSpread({}, providerConfig.jwtParameters || {}), params.extraLoginOptions || {}), {}, {
357
+ login_hint: params.login_hint || ((_params$extraLoginOpt3 = params.extraLoginOptions) === null || _params$extraLoginOpt3 === void 0 ? void 0 : _params$extraLoginOpt3.login_hint)
358
+ });
359
+ const nonce = auth.randomId();
360
+ // post a message to the auth provider to indicate that login has been initiated.
361
+ const loginParams = baseControllers.cloneDeep(params);
362
+ loginParams.extraLoginOptions = _objectSpread(_objectSpread({}, loginParams.extraLoginOptions || {}), {}, {
363
+ login_hint: params.login_hint || ((_params$extraLoginOpt4 = params.extraLoginOptions) === null || _params$extraLoginOpt4 === void 0 ? void 0 : _params$extraLoginOpt4.login_hint)
364
+ });
365
+ delete loginParams.chainId;
366
+ const popupParams = {
367
+ authConnection: params.authConnection,
368
+ authConnectionId: providerConfig.authConnectionId,
369
+ clientId: providerConfig.clientId,
370
+ groupedAuthConnectionId: providerConfig.groupedAuthConnectionId,
371
+ redirect_uri: `${this.authInstance.baseUrl}/auth`,
372
+ jwtParams,
373
+ customState: {
374
+ nonce,
375
+ appState: params.appState,
376
+ // use the default settings from the auth instance.
377
+ dapp_redirect_url: this.authInstance.options.redirectUrl,
378
+ uxMode: this.authInstance.options.uxMode,
379
+ whiteLabel: JSON.stringify(this.authInstance.options.whiteLabel),
380
+ loginParams: JSON.stringify(loginParams)
381
+ },
382
+ web3AuthClientId: this.coreOptions.clientId,
383
+ web3AuthNetwork: this.coreOptions.web3AuthNetwork
384
+ };
385
+ const loginHandler = auth.createHandler(popupParams);
386
+ const verifierWindow = new auth.PopupHandler({
387
+ url: loginHandler.finalURL,
388
+ timeout: 0
389
+ });
390
+ if (this.authOptions.uxMode === auth.UX_MODE.REDIRECT) return verifierWindow.redirect(this.authOptions.replaceUrlOnRedirect);
391
+ let isClosedWindow = false;
392
+ return new Promise((resolve, reject) => {
393
+ verifierWindow.open().catch(error => {
394
+ loglevel.log.error("Error during login with social", error);
395
+ this.authInstance.postLoginCancelledMessage(nonce);
396
+ reject(error);
397
+ });
398
+ // this is to close the popup when the login is finished.
399
+ const securePubSub$1 = new securePubSub.SecurePubSub({
400
+ sameIpCheck: true
401
+ });
402
+ securePubSub$1.subscribe(`web3auth-login-${nonce}`).then(data => {
403
+ const parsedData = JSON.parse(data || "{}");
404
+ if ((parsedData === null || parsedData === void 0 ? void 0 : parsedData.message) === "login_finished") {
405
+ if (parsedData !== null && parsedData !== void 0 && parsedData.error) {
406
+ this.authInstance.postLoginCancelledMessage(nonce);
407
+ reject(parsedData.error);
408
+ }
409
+ isClosedWindow = true;
410
+ securePubSub$1.cleanup();
411
+ verifierWindow.close();
412
+ }
413
+ return true;
414
+ }).catch(error => {
415
+ // swallow the error, dont need to throw.
416
+ loglevel.log.error("Error during login with social", error);
417
+ });
418
+ verifierWindow.once("close", () => {
419
+ if (!isClosedWindow) {
420
+ securePubSub$1.cleanup();
421
+ this.authInstance.postLoginCancelledMessage(nonce);
422
+ reject(index$1.WalletLoginError.popupClosed());
423
+ }
424
+ });
425
+ this.authInstance.postLoginInitiatedMessage(loginParams, nonce).then(resolve).catch(reject);
426
+ });
427
+ }
428
+ connectWithJwtLogin(params) {
429
+ var _params$extraLoginOpt5;
430
+ const loginConfig = this.getOAuthProviderConfig({
431
+ authConnection: params.authConnection,
432
+ authConnectionId: params.authConnectionId,
433
+ groupedAuthConnectionId: params.groupedAuthConnectionId
434
+ });
435
+ // throw error only when we cannot find the login config and authConnectionId is not provided in the params.
436
+ // otherwise, we will use the params to create a new auth connection config in the auth instance.
437
+ if (!(loginConfig !== null && loginConfig !== void 0 && loginConfig.authConnection) && !params.authConnectionId) throw index$1.WalletLoginError.connectionError("Invalid auth connection.");
438
+ if (!(loginConfig !== null && loginConfig !== void 0 && loginConfig.authConnection)) {
439
+ this.authInstance.options.authConnectionConfig.push({
440
+ authConnection: params.authConnection,
441
+ authConnectionId: params.authConnectionId,
442
+ groupedAuthConnectionId: params.groupedAuthConnectionId
443
+ });
444
+ }
445
+ const loginParams = baseControllers.cloneDeep(params);
446
+ loginParams.extraLoginOptions = _objectSpread(_objectSpread({}, loginParams.extraLoginOptions || {}), {}, {
447
+ login_hint: params.login_hint || ((_params$extraLoginOpt5 = params.extraLoginOptions) === null || _params$extraLoginOpt5 === void 0 ? void 0 : _params$extraLoginOpt5.login_hint)
448
+ });
449
+ delete loginParams.chainId;
450
+ return this.authInstance.postLoginInitiatedMessage(loginParams);
451
+ }
452
+ getOAuthProviderConfig(params) {
453
+ const {
454
+ authConnection,
455
+ authConnectionId,
456
+ groupedAuthConnectionId
457
+ } = params;
458
+ const providerConfig = this.authConnectionConfig.find(x => {
459
+ if (groupedAuthConnectionId) {
460
+ return x.authConnection === authConnection && x.groupedAuthConnectionId === groupedAuthConnectionId;
461
+ }
462
+ if (authConnectionId) {
463
+ return x.authConnection === authConnection && x.authConnectionId === authConnectionId;
464
+ }
465
+ // return the default auth connection, if not found, return undefined
466
+ return x.authConnection === authConnection && x.isDefault;
467
+ });
468
+ return providerConfig;
469
+ }
338
470
  }
339
471
  const authConnector = params => {
340
472
  return ({
341
473
  projectConfig,
342
474
  coreOptions
343
475
  }) => {
344
- var _coreOptions$uiConfig, _coreOptions$walletSe;
476
+ var _coreOptions$uiConfig, _coreOptions$walletSe, _coreOptions$walletSe2, _coreOptions$walletSe3;
345
477
  // Connector settings
346
478
  const connectorSettings = {};
347
479
  const {
348
- sms_otp_enabled: smsOtpEnabled,
349
- whitelist
480
+ whitelist,
481
+ whitelabel,
482
+ sessionTime
350
483
  } = projectConfig;
351
- if (smsOtpEnabled !== undefined) {
352
- connectorSettings.loginConfig = {
353
- [auth.LOGIN_PROVIDER.SMS_PASSWORDLESS]: {
354
- showOnModal: smsOtpEnabled,
355
- showOnDesktop: smsOtpEnabled,
356
- showOnMobile: smsOtpEnabled,
357
- showOnSocialBackupFactor: smsOtpEnabled
358
- }
359
- };
360
- }
361
484
  if (whitelist) connectorSettings.originData = whitelist.signed_urls;
485
+ if (sessionTime) connectorSettings.sessionTime = sessionTime;
362
486
  if ((_coreOptions$uiConfig = coreOptions.uiConfig) !== null && _coreOptions$uiConfig !== void 0 && _coreOptions$uiConfig.uxMode) connectorSettings.uxMode = coreOptions.uiConfig.uxMode;
363
- const uiConfig = deepmerge(baseControllers.cloneDeep((projectConfig === null || projectConfig === void 0 ? void 0 : projectConfig.whitelabel) || {}), coreOptions.uiConfig || {});
487
+ const uiConfig = deepmerge(baseControllers.cloneDeep(whitelabel || {}), coreOptions.uiConfig || {});
364
488
  if (!uiConfig.mode) uiConfig.mode = "light";
365
489
  connectorSettings.whiteLabel = uiConfig;
366
490
  const finalConnectorSettings = deepmerge.all([{
367
- uxMode: auth.UX_MODE.POPUP
491
+ uxMode: auth.UX_MODE.POPUP,
492
+ buildEnv: coreOptions.authBuildEnv || auth.BUILD_ENV.PRODUCTION
368
493
  },
369
494
  // default settings
370
- (params === null || params === void 0 ? void 0 : params.connectorSettings) || {}, connectorSettings]);
371
-
495
+ connectorSettings, (params === null || params === void 0 ? void 0 : params.connectorSettings) || {}]);
372
496
  // WS settings
373
- const isKeyExportEnabled = typeof projectConfig.key_export_enabled === "boolean" ? projectConfig.key_export_enabled : true;
497
+ const {
498
+ enableKeyExport,
499
+ walletUi
500
+ } = projectConfig;
501
+ const isKeyExportEnabled = typeof enableKeyExport === "boolean" ? enableKeyExport : true;
502
+ const {
503
+ enablePortfolioWidget = false,
504
+ enableTokenDisplay = true,
505
+ enableNftDisplay = true,
506
+ enableWalletConnect = true,
507
+ enableBuyButton = true,
508
+ enableSendButton = true,
509
+ enableSwapButton = true,
510
+ enableReceiveButton = true,
511
+ enableShowAllTokensButton = true,
512
+ enableConfirmationModal = false,
513
+ portfolioWidgetPosition = baseControllers.BUTTON_POSITION.BOTTOM_LEFT,
514
+ defaultPortfolio = "token"
515
+ } = walletUi || {};
516
+ const projectConfigWhiteLabel = {
517
+ showWidgetButton: enablePortfolioWidget,
518
+ hideNftDisplay: !enableNftDisplay,
519
+ hideTokenDisplay: !enableTokenDisplay,
520
+ hideTransfers: !enableSendButton,
521
+ hideTopup: !enableBuyButton,
522
+ hideReceive: !enableReceiveButton,
523
+ hideSwap: !enableSwapButton,
524
+ hideShowAllTokens: !enableShowAllTokensButton,
525
+ hideWalletConnect: !enableWalletConnect,
526
+ buttonPosition: portfolioWidgetPosition,
527
+ defaultPortfolio
528
+ };
529
+ const whiteLabel = deepmerge.all([projectConfigWhiteLabel, uiConfig, ((_coreOptions$walletSe = coreOptions.walletServicesConfig) === null || _coreOptions$walletSe === void 0 ? void 0 : _coreOptions$walletSe.whiteLabel) || {}]);
530
+ const confirmationStrategy = (_coreOptions$walletSe2 = (_coreOptions$walletSe3 = coreOptions.walletServicesConfig) === null || _coreOptions$walletSe3 === void 0 ? void 0 : _coreOptions$walletSe3.confirmationStrategy) !== null && _coreOptions$walletSe2 !== void 0 ? _coreOptions$walletSe2 : enableConfirmationModal ? baseControllers.CONFIRMATION_STRATEGY.MODAL : baseControllers.CONFIRMATION_STRATEGY.AUTO_APPROVE;
374
531
  const finalWsSettings = _objectSpread(_objectSpread({}, coreOptions.walletServicesConfig), {}, {
375
- whiteLabel: _objectSpread(_objectSpread({}, uiConfig), (_coreOptions$walletSe = coreOptions.walletServicesConfig) === null || _coreOptions$walletSe === void 0 ? void 0 : _coreOptions$walletSe.whiteLabel),
532
+ confirmationStrategy,
533
+ whiteLabel,
376
534
  accountAbstractionConfig: coreOptions.accountAbstractionConfig,
377
- enableLogging: coreOptions.enableLogging
378
- // enableKeyExport: keyExportEnabled, TODO: add this to ws embed and implement in WS
535
+ enableLogging: coreOptions.enableLogging,
536
+ enableKeyExport: enableKeyExport
379
537
  });
380
-
381
538
  // Core options
382
539
  if (coreOptions.privateKeyProvider) coreOptions.privateKeyProvider.setKeyExportFlag(isKeyExportEnabled);
383
540
  return new AuthConnector({
384
541
  connectorSettings: finalConnectorSettings,
385
542
  walletServicesSettings: finalWsSettings,
386
543
  loginSettings: params === null || params === void 0 ? void 0 : params.loginSettings,
387
- coreOptions
544
+ coreOptions,
545
+ // TODO: check, test this and may need to send modal config here later on.!!
546
+ authConnectionConfig: projectConfig.embeddedWalletAuth
388
547
  });
389
548
  };
390
549
  };
@@ -3,12 +3,18 @@
3
3
  var baseControllers = require('@toruslabs/base-controllers');
4
4
  var wsEmbed = require('@web3auth/ws-embed');
5
5
  var index = require('../../base/errors/index.js');
6
- var utils = require('../../base/connector/utils.js');
7
6
  var baseConnector = require('../../base/connector/baseConnector.js');
8
7
  var constants = require('../../base/connector/constants.js');
8
+ require('@web3auth/auth');
9
+ var utils = require('../../base/connector/utils.js');
10
+ require('../../base/loglevel.js');
11
+ require('../../base/plugin/errors.js');
12
+ require('../../base/plugin/IPlugin.js');
13
+ require('@toruslabs/constants');
14
+ require('@toruslabs/http-helpers');
15
+ require('../../base/wallet/index.js');
9
16
 
10
17
  class BaseEvmConnector extends baseConnector.BaseConnector {
11
- // eslint-disable-next-line @typescript-eslint/no-empty-function
12
18
  async init(_) {}
13
19
  async authenticateUser() {
14
20
  if (!this.provider || this.status !== constants.CONNECTOR_STATUS.CONNECTED) throw index.WalletLoginError.notConnectedError();
@@ -5,10 +5,16 @@ var wsEmbed = require('@web3auth/ws-embed');
5
5
  var index = require('../../base/errors/index.js');
6
6
  var baseConnector = require('../../base/connector/baseConnector.js');
7
7
  var constants = require('../../base/connector/constants.js');
8
+ require('@web3auth/auth');
8
9
  var utils = require('../../base/connector/utils.js');
10
+ require('../../base/loglevel.js');
11
+ require('../../base/plugin/errors.js');
12
+ require('../../base/plugin/IPlugin.js');
13
+ require('@toruslabs/constants');
14
+ require('@toruslabs/http-helpers');
15
+ require('../../base/wallet/index.js');
9
16
 
10
17
  class BaseSolanaConnector extends baseConnector.BaseConnector {
11
- // eslint-disable-next-line @typescript-eslint/no-empty-function
12
18
  async init(_) {}
13
19
  async authenticateUser() {
14
20
  if (!this.provider || this.status !== constants.CONNECTOR_STATUS.CONNECTED) throw index.WalletLoginError.notConnectedError();
@@ -3,17 +3,25 @@
3
3
  var _objectSpread = require('@babel/runtime/helpers/objectSpread2');
4
4
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
5
5
  var walletSdk = require('@coinbase/wallet-sdk');
6
- var IChainInterface = require('../../base/chain/IChainInterface.js');
7
6
  var index$1 = require('../../base/errors/index.js');
7
+ var IChainInterface = require('../../base/chain/IChainInterface.js');
8
+ require('@web3auth/auth');
8
9
  var index = require('../../base/wallet/index.js');
9
- var baseEvmConnector = require('../base-evm-connector/baseEvmConnector.js');
10
10
  var constants = require('../../base/connector/constants.js');
11
+ require('jwt-decode');
12
+ require('../../base/loglevel.js');
13
+ require('../../base/plugin/errors.js');
14
+ require('../../base/plugin/IPlugin.js');
15
+ var baseControllers = require('@toruslabs/base-controllers');
16
+ require('@toruslabs/constants');
17
+ require('@toruslabs/http-helpers');
18
+ var baseEvmConnector = require('../base-evm-connector/baseEvmConnector.js');
11
19
 
12
20
  class CoinbaseConnector extends baseEvmConnector.BaseEvmConnector {
13
21
  constructor(connectorOptions) {
14
22
  super(connectorOptions);
15
23
  _defineProperty(this, "connectorNamespace", IChainInterface.CONNECTOR_NAMESPACES.EIP155);
16
- _defineProperty(this, "currentChainNamespace", IChainInterface.CHAIN_NAMESPACES.EIP155);
24
+ _defineProperty(this, "currentChainNamespace", baseControllers.CHAIN_NAMESPACES.EIP155);
17
25
  _defineProperty(this, "type", constants.CONNECTOR_CATEGORY.EXTERNAL);
18
26
  _defineProperty(this, "name", index.WALLET_CONNECTORS.COINBASE);
19
27
  _defineProperty(this, "status", constants.CONNECTOR_STATUS.NOT_READY);
@@ -1,18 +1,24 @@
1
1
  'use strict';
2
2
 
3
3
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
4
- var IChainInterface = require('../../base/chain/IChainInterface.js');
5
4
  var index = require('../../base/errors/index.js');
5
+ var IChainInterface = require('../../base/chain/IChainInterface.js');
6
+ require('@web3auth/auth');
7
+ require('../../base/wallet/index.js');
8
+ var constants = require('../../base/connector/constants.js');
9
+ require('jwt-decode');
6
10
  var loglevel = require('../../base/loglevel.js');
11
+ require('../../base/plugin/errors.js');
12
+ require('../../base/plugin/IPlugin.js');
7
13
  var utils = require('../../base/utils.js');
8
14
  var baseEvmConnector = require('../base-evm-connector/baseEvmConnector.js');
9
- var constants = require('../../base/connector/constants.js');
15
+ var baseControllers = require('@toruslabs/base-controllers');
10
16
 
11
17
  class InjectedEvmConnector extends baseEvmConnector.BaseEvmConnector {
12
18
  constructor(options) {
13
19
  super(options);
14
20
  _defineProperty(this, "connectorNamespace", IChainInterface.CONNECTOR_NAMESPACES.EIP155);
15
- _defineProperty(this, "currentChainNamespace", IChainInterface.CHAIN_NAMESPACES.EIP155);
21
+ _defineProperty(this, "currentChainNamespace", baseControllers.CHAIN_NAMESPACES.EIP155);
16
22
  _defineProperty(this, "type", constants.CONNECTOR_CATEGORY.EXTERNAL);
17
23
  _defineProperty(this, "name", void 0);
18
24
  _defineProperty(this, "isInjected", true);
@@ -69,7 +75,7 @@ class InjectedEvmConnector extends baseEvmConnector.BaseEvmConnector {
69
75
  if (this.injectedProvider.chainId !== chainConfig.chainId) {
70
76
  try {
71
77
  await this.switchChain(chainConfig, true);
72
- } catch (error) {
78
+ } catch {
73
79
  await this.addChain(chainConfig, true);
74
80
  await this.switchChain(chainConfig, true);
75
81
  }
@@ -111,7 +117,9 @@ class InjectedEvmConnector extends baseEvmConnector.BaseEvmConnector {
111
117
  eth_accounts: {}
112
118
  }]
113
119
  });
114
- } catch (error) {}
120
+ } catch {
121
+ // ignore error
122
+ }
115
123
  if (options.cleanup) {
116
124
  this.status = constants.CONNECTOR_STATUS.NOT_READY;
117
125
  this.injectedProvider = null;
@@ -18,8 +18,8 @@ const hasSolanaWalletStandardFeatures = wallet => {
18
18
  };
19
19
 
20
20
  Object.defineProperty(exports, "createSolanaMipd", {
21
- enumerable: true,
22
- get: function () { return app.getWallets; }
21
+ enumerable: true,
22
+ get: function () { return app.getWallets; }
23
23
  });
24
24
  exports.walletStandardConnector = walletStandardConnector.walletStandardConnector;
25
25
  exports.hasSolanaWalletStandardFeatures = hasSolanaWalletStandardFeatures;
@@ -2,21 +2,29 @@
2
2
 
3
3
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
4
4
  var features = require('@wallet-standard/features');
5
- var IChainInterface = require('../../base/chain/IChainInterface.js');
6
5
  var index = require('../../base/errors/index.js');
6
+ var IChainInterface = require('../../base/chain/IChainInterface.js');
7
+ require('@web3auth/auth');
8
+ require('../../base/wallet/index.js');
9
+ var constants = require('../../base/connector/constants.js');
10
+ require('jwt-decode');
7
11
  var loglevel = require('../../base/loglevel.js');
12
+ require('../../base/plugin/errors.js');
13
+ require('../../base/plugin/IPlugin.js');
8
14
  var utils = require('../../base/utils.js');
9
- var baseSolanaConnector = require('../base-solana-connector/baseSolanaConnector.js');
10
- var walletStandardProvider = require('../../providers/solana-provider/providers/injectedProviders/walletStandardProvider.js');
11
15
  var utils$1 = require('../../providers/solana-provider/providers/injectedProviders/utils.js');
12
- var constants = require('../../base/connector/constants.js');
16
+ var walletStandardProvider = require('../../providers/solana-provider/providers/injectedProviders/walletStandardProvider.js');
17
+ var baseControllers = require('@toruslabs/base-controllers');
18
+ require('@web3auth/ws-embed');
19
+ require('@solana/web3.js');
20
+ var baseSolanaConnector = require('../base-solana-connector/baseSolanaConnector.js');
13
21
 
14
22
  class WalletStandardConnector extends baseSolanaConnector.BaseSolanaConnector {
15
23
  constructor(options) {
16
24
  super(options);
17
25
  _defineProperty(this, "name", void 0);
18
26
  _defineProperty(this, "connectorNamespace", IChainInterface.CONNECTOR_NAMESPACES.SOLANA);
19
- _defineProperty(this, "currentChainNamespace", IChainInterface.CHAIN_NAMESPACES.SOLANA);
27
+ _defineProperty(this, "currentChainNamespace", baseControllers.CHAIN_NAMESPACES.SOLANA);
20
28
  _defineProperty(this, "type", constants.CONNECTOR_CATEGORY.EXTERNAL);
21
29
  _defineProperty(this, "isInjected", true);
22
30
  _defineProperty(this, "status", constants.CONNECTOR_STATUS.NOT_READY);