@0xsequence/connect 0.0.0-20250314205219

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 (831) hide show
  1. package/LICENSE +219 -0
  2. package/README.md +290 -0
  3. package/dist/cjs/chains/index.js +43 -0
  4. package/dist/cjs/chains/index.js.map +1 -0
  5. package/dist/cjs/components/CollectibleTileImage/CollectibleTileImage.js +10 -0
  6. package/dist/cjs/components/CollectibleTileImage/CollectibleTileImage.js.map +1 -0
  7. package/dist/cjs/components/CollectibleTileImage/index.js +6 -0
  8. package/dist/cjs/components/CollectibleTileImage/index.js.map +1 -0
  9. package/dist/cjs/components/Connect/Banner.js +12 -0
  10. package/dist/cjs/components/Connect/Banner.js.map +1 -0
  11. package/dist/cjs/components/Connect/Connect.js +296 -0
  12. package/dist/cjs/components/Connect/Connect.js.map +1 -0
  13. package/dist/cjs/components/Connect/ConnectedWallets.js +115 -0
  14. package/dist/cjs/components/Connect/ConnectedWallets.js.map +1 -0
  15. package/dist/cjs/components/Connect/EmailWaasVerify.js +50 -0
  16. package/dist/cjs/components/Connect/EmailWaasVerify.js.map +1 -0
  17. package/dist/cjs/components/Connect/ExtendedWalletList.js +46 -0
  18. package/dist/cjs/components/Connect/ExtendedWalletList.js.map +1 -0
  19. package/dist/cjs/components/Connect/WalletListItem.js +17 -0
  20. package/dist/cjs/components/Connect/WalletListItem.js.map +1 -0
  21. package/dist/cjs/components/Connect/index.js +6 -0
  22. package/dist/cjs/components/Connect/index.js.map +1 -0
  23. package/dist/cjs/components/ConnectButton/ConnectButton.js +100 -0
  24. package/dist/cjs/components/ConnectButton/ConnectButton.js.map +1 -0
  25. package/dist/cjs/components/ConnectButton/index.js +10 -0
  26. package/dist/cjs/components/ConnectButton/index.js.map +1 -0
  27. package/dist/cjs/components/CryptoOption.js +22 -0
  28. package/dist/cjs/components/CryptoOption.js.map +1 -0
  29. package/dist/cjs/components/JsonTreeViewer.js +17 -0
  30. package/dist/cjs/components/JsonTreeViewer.js.map +1 -0
  31. package/dist/cjs/components/NetworkBadge/NetworkBadge.js +18 -0
  32. package/dist/cjs/components/NetworkBadge/NetworkBadge.js.map +1 -0
  33. package/dist/cjs/components/NetworkBadge/index.js +6 -0
  34. package/dist/cjs/components/NetworkBadge/index.js.map +1 -0
  35. package/dist/cjs/components/PageHeading/PageHeading.js +11 -0
  36. package/dist/cjs/components/PageHeading/PageHeading.js.map +1 -0
  37. package/dist/cjs/components/PageHeading/index.js +6 -0
  38. package/dist/cjs/components/PageHeading/index.js.map +1 -0
  39. package/dist/cjs/components/SelectedIndicator.js +15 -0
  40. package/dist/cjs/components/SelectedIndicator.js.map +1 -0
  41. package/dist/cjs/components/SequenceConnect/SequenceConnect.js +26 -0
  42. package/dist/cjs/components/SequenceConnect/SequenceConnect.js.map +1 -0
  43. package/dist/cjs/components/SequenceConnect/index.js +6 -0
  44. package/dist/cjs/components/SequenceConnect/index.js.map +1 -0
  45. package/dist/cjs/components/SequenceConnectPreviewProvider/SequenceConnectPreviewProvider.js +91 -0
  46. package/dist/cjs/components/SequenceConnectPreviewProvider/SequenceConnectPreviewProvider.js.map +1 -0
  47. package/dist/cjs/components/SequenceConnectPreviewProvider/index.js +18 -0
  48. package/dist/cjs/components/SequenceConnectPreviewProvider/index.js.map +1 -0
  49. package/dist/cjs/components/SequenceConnectProvider/SequenceConnectProvider.js +150 -0
  50. package/dist/cjs/components/SequenceConnectProvider/SequenceConnectProvider.js.map +1 -0
  51. package/dist/cjs/components/SequenceConnectProvider/index.js +6 -0
  52. package/dist/cjs/components/SequenceConnectProvider/index.js.map +1 -0
  53. package/dist/cjs/components/SequenceLogo/PoweredBySequence.js +15 -0
  54. package/dist/cjs/components/SequenceLogo/PoweredBySequence.js.map +1 -0
  55. package/dist/cjs/components/SequenceLogo/SequenceLogo.js +9 -0
  56. package/dist/cjs/components/SequenceLogo/SequenceLogo.js.map +1 -0
  57. package/dist/cjs/components/SequenceLogo/index.js +8 -0
  58. package/dist/cjs/components/SequenceLogo/index.js.map +1 -0
  59. package/dist/cjs/components/ShadowRoot/ShadowRoot.js +45 -0
  60. package/dist/cjs/components/ShadowRoot/ShadowRoot.js.map +1 -0
  61. package/dist/cjs/components/ShadowRoot/index.js +6 -0
  62. package/dist/cjs/components/ShadowRoot/index.js.map +1 -0
  63. package/dist/cjs/components/TxnDetails/TxnDetails.js +92 -0
  64. package/dist/cjs/components/TxnDetails/TxnDetails.js.map +1 -0
  65. package/dist/cjs/components/TxnDetails/index.js +6 -0
  66. package/dist/cjs/components/TxnDetails/index.js.map +1 -0
  67. package/dist/cjs/config/createConfig.js +27 -0
  68. package/dist/cjs/config/createConfig.js.map +1 -0
  69. package/dist/cjs/config/defaultChains.js +20 -0
  70. package/dist/cjs/config/defaultChains.js.map +1 -0
  71. package/dist/cjs/config/defaultConnectors.js +162 -0
  72. package/dist/cjs/config/defaultConnectors.js.map +1 -0
  73. package/dist/cjs/config/defaultTransports.js +9 -0
  74. package/dist/cjs/config/defaultTransports.js.map +1 -0
  75. package/dist/cjs/connectors/apple/AppleLogo.js +21 -0
  76. package/dist/cjs/connectors/apple/AppleLogo.js.map +1 -0
  77. package/dist/cjs/connectors/apple/apple.js +32 -0
  78. package/dist/cjs/connectors/apple/apple.js.map +1 -0
  79. package/dist/cjs/connectors/apple/appleWaas.js +23 -0
  80. package/dist/cjs/connectors/apple/appleWaas.js.map +1 -0
  81. package/dist/cjs/connectors/apple/index.js +18 -0
  82. package/dist/cjs/connectors/apple/index.js.map +1 -0
  83. package/dist/cjs/connectors/coinbaseWallet/CoinbaseWalletLogo.js +9 -0
  84. package/dist/cjs/connectors/coinbaseWallet/CoinbaseWalletLogo.js.map +1 -0
  85. package/dist/cjs/connectors/coinbaseWallet/coinbaseWallet.js +18 -0
  86. package/dist/cjs/connectors/coinbaseWallet/coinbaseWallet.js.map +1 -0
  87. package/dist/cjs/connectors/coinbaseWallet/index.js +18 -0
  88. package/dist/cjs/connectors/coinbaseWallet/index.js.map +1 -0
  89. package/dist/cjs/connectors/discord/DiscordLogo.js +13 -0
  90. package/dist/cjs/connectors/discord/DiscordLogo.js.map +1 -0
  91. package/dist/cjs/connectors/discord/discord.js +32 -0
  92. package/dist/cjs/connectors/discord/discord.js.map +1 -0
  93. package/dist/cjs/connectors/discord/index.js +18 -0
  94. package/dist/cjs/connectors/discord/index.js.map +1 -0
  95. package/dist/cjs/connectors/email/EmailLogo.js +13 -0
  96. package/dist/cjs/connectors/email/EmailLogo.js.map +1 -0
  97. package/dist/cjs/connectors/email/email.js +30 -0
  98. package/dist/cjs/connectors/email/email.js.map +1 -0
  99. package/dist/cjs/connectors/email/emailWaas.js +21 -0
  100. package/dist/cjs/connectors/email/emailWaas.js.map +1 -0
  101. package/dist/cjs/connectors/email/index.js +18 -0
  102. package/dist/cjs/connectors/email/index.js.map +1 -0
  103. package/dist/cjs/connectors/facebook/FacebookLogo.js +17 -0
  104. package/dist/cjs/connectors/facebook/FacebookLogo.js.map +1 -0
  105. package/dist/cjs/connectors/facebook/facebook.js +32 -0
  106. package/dist/cjs/connectors/facebook/facebook.js.map +1 -0
  107. package/dist/cjs/connectors/facebook/index.js +18 -0
  108. package/dist/cjs/connectors/facebook/index.js.map +1 -0
  109. package/dist/cjs/connectors/google/GoogleLogo.js +17 -0
  110. package/dist/cjs/connectors/google/GoogleLogo.js.map +1 -0
  111. package/dist/cjs/connectors/google/google.js +31 -0
  112. package/dist/cjs/connectors/google/google.js.map +1 -0
  113. package/dist/cjs/connectors/google/googleWaas.js +23 -0
  114. package/dist/cjs/connectors/google/googleWaas.js.map +1 -0
  115. package/dist/cjs/connectors/google/index.js +18 -0
  116. package/dist/cjs/connectors/google/index.js.map +1 -0
  117. package/dist/cjs/connectors/metaMask/MetaMaskLogo.js +7 -0
  118. package/dist/cjs/connectors/metaMask/MetaMaskLogo.js.map +1 -0
  119. package/dist/cjs/connectors/metaMask/index.js +18 -0
  120. package/dist/cjs/connectors/metaMask/index.js.map +1 -0
  121. package/dist/cjs/connectors/metaMask/metaMask.js +18 -0
  122. package/dist/cjs/connectors/metaMask/metaMask.js.map +1 -0
  123. package/dist/cjs/connectors/mock/index.js +18 -0
  124. package/dist/cjs/connectors/mock/index.js.map +1 -0
  125. package/dist/cjs/connectors/mock/mock.js +20 -0
  126. package/dist/cjs/connectors/mock/mock.js.map +1 -0
  127. package/dist/cjs/connectors/sequence/SequenceLogo.js +9 -0
  128. package/dist/cjs/connectors/sequence/SequenceLogo.js.map +1 -0
  129. package/dist/cjs/connectors/sequence/index.js +18 -0
  130. package/dist/cjs/connectors/sequence/index.js.map +1 -0
  131. package/dist/cjs/connectors/sequence/sequence.js +26 -0
  132. package/dist/cjs/connectors/sequence/sequence.js.map +1 -0
  133. package/dist/cjs/connectors/twitch/TwitchLogo.js +19 -0
  134. package/dist/cjs/connectors/twitch/TwitchLogo.js.map +1 -0
  135. package/dist/cjs/connectors/twitch/index.js +18 -0
  136. package/dist/cjs/connectors/twitch/index.js.map +1 -0
  137. package/dist/cjs/connectors/twitch/twitch.js +32 -0
  138. package/dist/cjs/connectors/twitch/twitch.js.map +1 -0
  139. package/dist/cjs/connectors/wagmiConnectors/index.js +19 -0
  140. package/dist/cjs/connectors/wagmiConnectors/index.js.map +1 -0
  141. package/dist/cjs/connectors/wagmiConnectors/sequenceConnector.js +152 -0
  142. package/dist/cjs/connectors/wagmiConnectors/sequenceConnector.js.map +1 -0
  143. package/dist/cjs/connectors/wagmiConnectors/sequenceWaasConnector.js +397 -0
  144. package/dist/cjs/connectors/wagmiConnectors/sequenceWaasConnector.js.map +1 -0
  145. package/dist/cjs/connectors/walletConnect/WalletConnectLogo.js +9 -0
  146. package/dist/cjs/connectors/walletConnect/WalletConnectLogo.js.map +1 -0
  147. package/dist/cjs/connectors/walletConnect/index.js +18 -0
  148. package/dist/cjs/connectors/walletConnect/index.js.map +1 -0
  149. package/dist/cjs/connectors/walletConnect/walletConnect.js +54 -0
  150. package/dist/cjs/connectors/walletConnect/walletConnect.js.map +1 -0
  151. package/dist/cjs/constants/ethAuth.js +6 -0
  152. package/dist/cjs/constants/ethAuth.js.map +1 -0
  153. package/dist/cjs/constants/index.js +23 -0
  154. package/dist/cjs/constants/index.js.map +1 -0
  155. package/dist/cjs/constants/localStorage.js +35 -0
  156. package/dist/cjs/constants/localStorage.js.map +1 -0
  157. package/dist/cjs/constants/queryKeys.js +25 -0
  158. package/dist/cjs/constants/queryKeys.js.map +1 -0
  159. package/dist/cjs/constants/swaps.js +6 -0
  160. package/dist/cjs/constants/swaps.js.map +1 -0
  161. package/dist/cjs/constants/transactions.js +5 -0
  162. package/dist/cjs/constants/transactions.js.map +1 -0
  163. package/dist/cjs/constants/version.js +5 -0
  164. package/dist/cjs/constants/version.js.map +1 -0
  165. package/dist/cjs/constants/walletLinking.js +6 -0
  166. package/dist/cjs/constants/walletLinking.js.map +1 -0
  167. package/dist/cjs/contexts/Analytics.js +9 -0
  168. package/dist/cjs/contexts/Analytics.js.map +1 -0
  169. package/dist/cjs/contexts/ConnectConfig.js +8 -0
  170. package/dist/cjs/contexts/ConnectConfig.js.map +1 -0
  171. package/dist/cjs/contexts/ConnectModal.js +9 -0
  172. package/dist/cjs/contexts/ConnectModal.js.map +1 -0
  173. package/dist/cjs/contexts/Theme.js +8 -0
  174. package/dist/cjs/contexts/Theme.js.map +1 -0
  175. package/dist/cjs/contexts/WalletConfig.js +8 -0
  176. package/dist/cjs/contexts/WalletConfig.js.map +1 -0
  177. package/dist/cjs/contexts/genericContext.js +20 -0
  178. package/dist/cjs/contexts/genericContext.js.map +1 -0
  179. package/dist/cjs/env.js +6 -0
  180. package/dist/cjs/env.js.map +1 -0
  181. package/dist/cjs/hooks/useChain.js +12 -0
  182. package/dist/cjs/hooks/useChain.js.map +1 -0
  183. package/dist/cjs/hooks/useCheckWaasFeeOptions.js +28 -0
  184. package/dist/cjs/hooks/useCheckWaasFeeOptions.js.map +1 -0
  185. package/dist/cjs/hooks/useOpenConnectModal.js +10 -0
  186. package/dist/cjs/hooks/useOpenConnectModal.js.map +1 -0
  187. package/dist/cjs/hooks/useProjectAccessKey.js +10 -0
  188. package/dist/cjs/hooks/useProjectAccessKey.js.map +1 -0
  189. package/dist/cjs/hooks/useSignInEmail.js +27 -0
  190. package/dist/cjs/hooks/useSignInEmail.js.map +1 -0
  191. package/dist/cjs/hooks/useStorage.js +26 -0
  192. package/dist/cjs/hooks/useStorage.js.map +1 -0
  193. package/dist/cjs/hooks/useTheme.js +15 -0
  194. package/dist/cjs/hooks/useTheme.js.map +1 -0
  195. package/dist/cjs/hooks/useWaasConfirmationHandler.js +47 -0
  196. package/dist/cjs/hooks/useWaasConfirmationHandler.js.map +1 -0
  197. package/dist/cjs/hooks/useWaasEmailAuth.js +91 -0
  198. package/dist/cjs/hooks/useWaasEmailAuth.js.map +1 -0
  199. package/dist/cjs/hooks/useWaasEmailConflict.js +63 -0
  200. package/dist/cjs/hooks/useWaasEmailConflict.js.map +1 -0
  201. package/dist/cjs/hooks/useWaasFeeOptions.js +142 -0
  202. package/dist/cjs/hooks/useWaasFeeOptions.js.map +1 -0
  203. package/dist/cjs/hooks/useWaasGetLinkedWalletsSignature.js +132 -0
  204. package/dist/cjs/hooks/useWaasGetLinkedWalletsSignature.js.map +1 -0
  205. package/dist/cjs/hooks/useWaasLinkWallet.js +87 -0
  206. package/dist/cjs/hooks/useWaasLinkWallet.js.map +1 -0
  207. package/dist/cjs/hooks/useWaasSignInEmail.js +31 -0
  208. package/dist/cjs/hooks/useWaasSignInEmail.js.map +1 -0
  209. package/dist/cjs/hooks/useWalletSettings.js +14 -0
  210. package/dist/cjs/hooks/useWalletSettings.js.map +1 -0
  211. package/dist/cjs/hooks/useWallets.js +162 -0
  212. package/dist/cjs/hooks/useWallets.js.map +1 -0
  213. package/dist/cjs/index.js +146 -0
  214. package/dist/cjs/index.js.map +1 -0
  215. package/dist/cjs/styles.js +2219 -0
  216. package/dist/cjs/styles.js.map +1 -0
  217. package/dist/cjs/types.js +4 -0
  218. package/dist/cjs/types.js.map +1 -0
  219. package/dist/cjs/utils/adapters.js +30 -0
  220. package/dist/cjs/utils/adapters.js.map +1 -0
  221. package/dist/cjs/utils/deferred.js +22 -0
  222. package/dist/cjs/utils/deferred.js.map +1 -0
  223. package/dist/cjs/utils/ethAuth.js +47 -0
  224. package/dist/cjs/utils/ethAuth.js.map +1 -0
  225. package/dist/cjs/utils/getConnectWallets.js +20 -0
  226. package/dist/cjs/utils/getConnectWallets.js.map +1 -0
  227. package/dist/cjs/utils/helpers.js +118 -0
  228. package/dist/cjs/utils/helpers.js.map +1 -0
  229. package/dist/cjs/utils/networks.js +65 -0
  230. package/dist/cjs/utils/networks.js.map +1 -0
  231. package/dist/cjs/utils/styling.js +48 -0
  232. package/dist/cjs/utils/styling.js.map +1 -0
  233. package/dist/cjs/utils/tokens.js +46 -0
  234. package/dist/cjs/utils/tokens.js.map +1 -0
  235. package/dist/cjs/utils/transactions.js +169 -0
  236. package/dist/cjs/utils/transactions.js.map +1 -0
  237. package/dist/cjs/utils/txnDecoding.js +400 -0
  238. package/dist/cjs/utils/txnDecoding.js.map +1 -0
  239. package/dist/esm/chains/index.js +40 -0
  240. package/dist/esm/chains/index.js.map +1 -0
  241. package/dist/esm/components/CollectibleTileImage/CollectibleTileImage.js +6 -0
  242. package/dist/esm/components/CollectibleTileImage/CollectibleTileImage.js.map +1 -0
  243. package/dist/esm/components/CollectibleTileImage/index.js +2 -0
  244. package/dist/esm/components/CollectibleTileImage/index.js.map +1 -0
  245. package/dist/esm/components/Connect/Banner.js +8 -0
  246. package/dist/esm/components/Connect/Banner.js.map +1 -0
  247. package/dist/esm/components/Connect/Connect.js +292 -0
  248. package/dist/esm/components/Connect/Connect.js.map +1 -0
  249. package/dist/esm/components/Connect/ConnectedWallets.js +111 -0
  250. package/dist/esm/components/Connect/ConnectedWallets.js.map +1 -0
  251. package/dist/esm/components/Connect/EmailWaasVerify.js +46 -0
  252. package/dist/esm/components/Connect/EmailWaasVerify.js.map +1 -0
  253. package/dist/esm/components/Connect/ExtendedWalletList.js +39 -0
  254. package/dist/esm/components/Connect/ExtendedWalletList.js.map +1 -0
  255. package/dist/esm/components/Connect/WalletListItem.js +13 -0
  256. package/dist/esm/components/Connect/WalletListItem.js.map +1 -0
  257. package/dist/esm/components/Connect/index.js +2 -0
  258. package/dist/esm/components/Connect/index.js.map +1 -0
  259. package/dist/esm/components/ConnectButton/ConnectButton.js +92 -0
  260. package/dist/esm/components/ConnectButton/ConnectButton.js.map +1 -0
  261. package/dist/esm/components/ConnectButton/index.js +2 -0
  262. package/dist/esm/components/ConnectButton/index.js.map +1 -0
  263. package/dist/esm/components/CryptoOption.js +18 -0
  264. package/dist/esm/components/CryptoOption.js.map +1 -0
  265. package/dist/esm/components/JsonTreeViewer.js +13 -0
  266. package/dist/esm/components/JsonTreeViewer.js.map +1 -0
  267. package/dist/esm/components/NetworkBadge/NetworkBadge.js +14 -0
  268. package/dist/esm/components/NetworkBadge/NetworkBadge.js.map +1 -0
  269. package/dist/esm/components/NetworkBadge/index.js +2 -0
  270. package/dist/esm/components/NetworkBadge/index.js.map +1 -0
  271. package/dist/esm/components/PageHeading/PageHeading.js +7 -0
  272. package/dist/esm/components/PageHeading/PageHeading.js.map +1 -0
  273. package/dist/esm/components/PageHeading/index.js +2 -0
  274. package/dist/esm/components/PageHeading/index.js.map +1 -0
  275. package/dist/esm/components/SelectedIndicator.js +11 -0
  276. package/dist/esm/components/SelectedIndicator.js.map +1 -0
  277. package/dist/esm/components/SequenceConnect/SequenceConnect.js +22 -0
  278. package/dist/esm/components/SequenceConnect/SequenceConnect.js.map +1 -0
  279. package/dist/esm/components/SequenceConnect/index.js +2 -0
  280. package/dist/esm/components/SequenceConnect/index.js.map +1 -0
  281. package/dist/esm/components/SequenceConnectPreviewProvider/SequenceConnectPreviewProvider.js +87 -0
  282. package/dist/esm/components/SequenceConnectPreviewProvider/SequenceConnectPreviewProvider.js.map +1 -0
  283. package/dist/esm/components/SequenceConnectPreviewProvider/index.js +2 -0
  284. package/dist/esm/components/SequenceConnectPreviewProvider/index.js.map +1 -0
  285. package/dist/esm/components/SequenceConnectProvider/SequenceConnectProvider.js +146 -0
  286. package/dist/esm/components/SequenceConnectProvider/SequenceConnectProvider.js.map +1 -0
  287. package/dist/esm/components/SequenceConnectProvider/index.js +2 -0
  288. package/dist/esm/components/SequenceConnectProvider/index.js.map +1 -0
  289. package/dist/esm/components/SequenceLogo/PoweredBySequence.js +11 -0
  290. package/dist/esm/components/SequenceLogo/PoweredBySequence.js.map +1 -0
  291. package/dist/esm/components/SequenceLogo/SequenceLogo.js +5 -0
  292. package/dist/esm/components/SequenceLogo/SequenceLogo.js.map +1 -0
  293. package/dist/esm/components/SequenceLogo/index.js +3 -0
  294. package/dist/esm/components/SequenceLogo/index.js.map +1 -0
  295. package/dist/esm/components/ShadowRoot/ShadowRoot.js +41 -0
  296. package/dist/esm/components/ShadowRoot/ShadowRoot.js.map +1 -0
  297. package/dist/esm/components/ShadowRoot/index.js +2 -0
  298. package/dist/esm/components/ShadowRoot/index.js.map +1 -0
  299. package/dist/esm/components/TxnDetails/TxnDetails.js +87 -0
  300. package/dist/esm/components/TxnDetails/TxnDetails.js.map +1 -0
  301. package/dist/esm/components/TxnDetails/index.js +2 -0
  302. package/dist/esm/components/TxnDetails/index.js.map +1 -0
  303. package/dist/esm/config/createConfig.js +23 -0
  304. package/dist/esm/config/createConfig.js.map +1 -0
  305. package/dist/esm/config/defaultChains.js +16 -0
  306. package/dist/esm/config/defaultChains.js.map +1 -0
  307. package/dist/esm/config/defaultConnectors.js +156 -0
  308. package/dist/esm/config/defaultConnectors.js.map +1 -0
  309. package/dist/esm/config/defaultTransports.js +5 -0
  310. package/dist/esm/config/defaultTransports.js.map +1 -0
  311. package/dist/esm/connectors/apple/AppleLogo.js +16 -0
  312. package/dist/esm/connectors/apple/AppleLogo.js.map +1 -0
  313. package/dist/esm/connectors/apple/apple.js +28 -0
  314. package/dist/esm/connectors/apple/apple.js.map +1 -0
  315. package/dist/esm/connectors/apple/appleWaas.js +19 -0
  316. package/dist/esm/connectors/apple/appleWaas.js.map +1 -0
  317. package/dist/esm/connectors/apple/index.js +2 -0
  318. package/dist/esm/connectors/apple/index.js.map +1 -0
  319. package/dist/esm/connectors/coinbaseWallet/CoinbaseWalletLogo.js +5 -0
  320. package/dist/esm/connectors/coinbaseWallet/CoinbaseWalletLogo.js.map +1 -0
  321. package/dist/esm/connectors/coinbaseWallet/coinbaseWallet.js +14 -0
  322. package/dist/esm/connectors/coinbaseWallet/coinbaseWallet.js.map +1 -0
  323. package/dist/esm/connectors/coinbaseWallet/index.js +2 -0
  324. package/dist/esm/connectors/coinbaseWallet/index.js.map +1 -0
  325. package/dist/esm/connectors/discord/DiscordLogo.js +9 -0
  326. package/dist/esm/connectors/discord/DiscordLogo.js.map +1 -0
  327. package/dist/esm/connectors/discord/discord.js +28 -0
  328. package/dist/esm/connectors/discord/discord.js.map +1 -0
  329. package/dist/esm/connectors/discord/index.js +2 -0
  330. package/dist/esm/connectors/discord/index.js.map +1 -0
  331. package/dist/esm/connectors/email/EmailLogo.js +9 -0
  332. package/dist/esm/connectors/email/EmailLogo.js.map +1 -0
  333. package/dist/esm/connectors/email/email.js +26 -0
  334. package/dist/esm/connectors/email/email.js.map +1 -0
  335. package/dist/esm/connectors/email/emailWaas.js +17 -0
  336. package/dist/esm/connectors/email/emailWaas.js.map +1 -0
  337. package/dist/esm/connectors/email/index.js +2 -0
  338. package/dist/esm/connectors/email/index.js.map +1 -0
  339. package/dist/esm/connectors/facebook/FacebookLogo.js +12 -0
  340. package/dist/esm/connectors/facebook/FacebookLogo.js.map +1 -0
  341. package/dist/esm/connectors/facebook/facebook.js +28 -0
  342. package/dist/esm/connectors/facebook/facebook.js.map +1 -0
  343. package/dist/esm/connectors/facebook/index.js +2 -0
  344. package/dist/esm/connectors/facebook/index.js.map +1 -0
  345. package/dist/esm/connectors/google/GoogleLogo.js +12 -0
  346. package/dist/esm/connectors/google/GoogleLogo.js.map +1 -0
  347. package/dist/esm/connectors/google/google.js +27 -0
  348. package/dist/esm/connectors/google/google.js.map +1 -0
  349. package/dist/esm/connectors/google/googleWaas.js +19 -0
  350. package/dist/esm/connectors/google/googleWaas.js.map +1 -0
  351. package/dist/esm/connectors/google/index.js +2 -0
  352. package/dist/esm/connectors/google/index.js.map +1 -0
  353. package/dist/esm/connectors/metaMask/MetaMaskLogo.js +3 -0
  354. package/dist/esm/connectors/metaMask/MetaMaskLogo.js.map +1 -0
  355. package/dist/esm/connectors/metaMask/index.js +2 -0
  356. package/dist/esm/connectors/metaMask/index.js.map +1 -0
  357. package/dist/esm/connectors/metaMask/metaMask.js +14 -0
  358. package/dist/esm/connectors/metaMask/metaMask.js.map +1 -0
  359. package/dist/esm/connectors/mock/index.js +2 -0
  360. package/dist/esm/connectors/mock/index.js.map +1 -0
  361. package/dist/esm/connectors/mock/mock.js +16 -0
  362. package/dist/esm/connectors/mock/mock.js.map +1 -0
  363. package/dist/esm/connectors/sequence/SequenceLogo.js +5 -0
  364. package/dist/esm/connectors/sequence/SequenceLogo.js.map +1 -0
  365. package/dist/esm/connectors/sequence/index.js +2 -0
  366. package/dist/esm/connectors/sequence/index.js.map +1 -0
  367. package/dist/esm/connectors/sequence/sequence.js +22 -0
  368. package/dist/esm/connectors/sequence/sequence.js.map +1 -0
  369. package/dist/esm/connectors/twitch/TwitchLogo.js +15 -0
  370. package/dist/esm/connectors/twitch/TwitchLogo.js.map +1 -0
  371. package/dist/esm/connectors/twitch/index.js +2 -0
  372. package/dist/esm/connectors/twitch/index.js.map +1 -0
  373. package/dist/esm/connectors/twitch/twitch.js +28 -0
  374. package/dist/esm/connectors/twitch/twitch.js.map +1 -0
  375. package/dist/esm/connectors/wagmiConnectors/index.js +3 -0
  376. package/dist/esm/connectors/wagmiConnectors/index.js.map +1 -0
  377. package/dist/esm/connectors/wagmiConnectors/sequenceConnector.js +149 -0
  378. package/dist/esm/connectors/wagmiConnectors/sequenceConnector.js.map +1 -0
  379. package/dist/esm/connectors/wagmiConnectors/sequenceWaasConnector.js +391 -0
  380. package/dist/esm/connectors/wagmiConnectors/sequenceWaasConnector.js.map +1 -0
  381. package/dist/esm/connectors/walletConnect/WalletConnectLogo.js +5 -0
  382. package/dist/esm/connectors/walletConnect/WalletConnectLogo.js.map +1 -0
  383. package/dist/esm/connectors/walletConnect/index.js +2 -0
  384. package/dist/esm/connectors/walletConnect/index.js.map +1 -0
  385. package/dist/esm/connectors/walletConnect/walletConnect.js +50 -0
  386. package/dist/esm/connectors/walletConnect/walletConnect.js.map +1 -0
  387. package/dist/esm/constants/ethAuth.js +3 -0
  388. package/dist/esm/constants/ethAuth.js.map +1 -0
  389. package/dist/esm/constants/index.js +7 -0
  390. package/dist/esm/constants/index.js.map +1 -0
  391. package/dist/esm/constants/localStorage.js +32 -0
  392. package/dist/esm/constants/localStorage.js.map +1 -0
  393. package/dist/esm/constants/queryKeys.js +22 -0
  394. package/dist/esm/constants/queryKeys.js.map +1 -0
  395. package/dist/esm/constants/swaps.js +3 -0
  396. package/dist/esm/constants/swaps.js.map +1 -0
  397. package/dist/esm/constants/transactions.js +2 -0
  398. package/dist/esm/constants/transactions.js.map +1 -0
  399. package/dist/esm/constants/version.js +2 -0
  400. package/dist/esm/constants/version.js.map +1 -0
  401. package/dist/esm/constants/walletLinking.js +3 -0
  402. package/dist/esm/constants/walletLinking.js.map +1 -0
  403. package/dist/esm/contexts/Analytics.js +5 -0
  404. package/dist/esm/contexts/Analytics.js.map +1 -0
  405. package/dist/esm/contexts/ConnectConfig.js +4 -0
  406. package/dist/esm/contexts/ConnectConfig.js.map +1 -0
  407. package/dist/esm/contexts/ConnectModal.js +5 -0
  408. package/dist/esm/contexts/ConnectModal.js.map +1 -0
  409. package/dist/esm/contexts/Theme.js +4 -0
  410. package/dist/esm/contexts/Theme.js.map +1 -0
  411. package/dist/esm/contexts/WalletConfig.js +4 -0
  412. package/dist/esm/contexts/WalletConfig.js.map +1 -0
  413. package/dist/esm/contexts/genericContext.js +16 -0
  414. package/dist/esm/contexts/genericContext.js.map +1 -0
  415. package/dist/esm/env.js +3 -0
  416. package/dist/esm/env.js.map +1 -0
  417. package/dist/esm/hooks/useChain.js +8 -0
  418. package/dist/esm/hooks/useChain.js.map +1 -0
  419. package/dist/esm/hooks/useCheckWaasFeeOptions.js +25 -0
  420. package/dist/esm/hooks/useCheckWaasFeeOptions.js.map +1 -0
  421. package/dist/esm/hooks/useOpenConnectModal.js +6 -0
  422. package/dist/esm/hooks/useOpenConnectModal.js.map +1 -0
  423. package/dist/esm/hooks/useProjectAccessKey.js +6 -0
  424. package/dist/esm/hooks/useProjectAccessKey.js.map +1 -0
  425. package/dist/esm/hooks/useSignInEmail.js +23 -0
  426. package/dist/esm/hooks/useSignInEmail.js.map +1 -0
  427. package/dist/esm/hooks/useStorage.js +21 -0
  428. package/dist/esm/hooks/useStorage.js.map +1 -0
  429. package/dist/esm/hooks/useTheme.js +11 -0
  430. package/dist/esm/hooks/useTheme.js.map +1 -0
  431. package/dist/esm/hooks/useWaasConfirmationHandler.js +44 -0
  432. package/dist/esm/hooks/useWaasConfirmationHandler.js.map +1 -0
  433. package/dist/esm/hooks/useWaasEmailAuth.js +88 -0
  434. package/dist/esm/hooks/useWaasEmailAuth.js.map +1 -0
  435. package/dist/esm/hooks/useWaasEmailConflict.js +59 -0
  436. package/dist/esm/hooks/useWaasEmailConflict.js.map +1 -0
  437. package/dist/esm/hooks/useWaasFeeOptions.js +139 -0
  438. package/dist/esm/hooks/useWaasFeeOptions.js.map +1 -0
  439. package/dist/esm/hooks/useWaasGetLinkedWalletsSignature.js +128 -0
  440. package/dist/esm/hooks/useWaasGetLinkedWalletsSignature.js.map +1 -0
  441. package/dist/esm/hooks/useWaasLinkWallet.js +83 -0
  442. package/dist/esm/hooks/useWaasLinkWallet.js.map +1 -0
  443. package/dist/esm/hooks/useWaasSignInEmail.js +27 -0
  444. package/dist/esm/hooks/useWaasSignInEmail.js.map +1 -0
  445. package/dist/esm/hooks/useWalletSettings.js +10 -0
  446. package/dist/esm/hooks/useWalletSettings.js.map +1 -0
  447. package/dist/esm/hooks/useWallets.js +157 -0
  448. package/dist/esm/hooks/useWallets.js.map +1 -0
  449. package/dist/esm/index.js +64 -0
  450. package/dist/esm/index.js.map +1 -0
  451. package/dist/esm/styles.js +2216 -0
  452. package/dist/esm/styles.js.map +1 -0
  453. package/dist/esm/types.js +2 -0
  454. package/dist/esm/types.js.map +1 -0
  455. package/dist/esm/utils/adapters.js +25 -0
  456. package/dist/esm/utils/adapters.js.map +1 -0
  457. package/dist/esm/utils/deferred.js +18 -0
  458. package/dist/esm/utils/deferred.js.map +1 -0
  459. package/dist/esm/utils/ethAuth.js +42 -0
  460. package/dist/esm/utils/ethAuth.js.map +1 -0
  461. package/dist/esm/utils/getConnectWallets.js +16 -0
  462. package/dist/esm/utils/getConnectWallets.js.map +1 -0
  463. package/dist/esm/utils/helpers.js +108 -0
  464. package/dist/esm/utils/helpers.js.map +1 -0
  465. package/dist/esm/utils/networks.js +59 -0
  466. package/dist/esm/utils/networks.js.map +1 -0
  467. package/dist/esm/utils/styling.js +44 -0
  468. package/dist/esm/utils/styling.js.map +1 -0
  469. package/dist/esm/utils/tokens.js +41 -0
  470. package/dist/esm/utils/tokens.js.map +1 -0
  471. package/dist/esm/utils/transactions.js +164 -0
  472. package/dist/esm/utils/transactions.js.map +1 -0
  473. package/dist/esm/utils/txnDecoding.js +395 -0
  474. package/dist/esm/utils/txnDecoding.js.map +1 -0
  475. package/dist/types/chains/index.d.ts +3 -0
  476. package/dist/types/chains/index.d.ts.map +1 -0
  477. package/dist/types/components/CollectibleTileImage/CollectibleTileImage.d.ts +6 -0
  478. package/dist/types/components/CollectibleTileImage/CollectibleTileImage.d.ts.map +1 -0
  479. package/dist/types/components/CollectibleTileImage/index.d.ts +2 -0
  480. package/dist/types/components/CollectibleTileImage/index.d.ts.map +1 -0
  481. package/dist/types/components/Connect/Banner.d.ts +7 -0
  482. package/dist/types/components/Connect/Banner.d.ts.map +1 -0
  483. package/dist/types/components/Connect/Connect.d.ts +11 -0
  484. package/dist/types/components/Connect/Connect.d.ts.map +1 -0
  485. package/dist/types/components/Connect/ConnectedWallets.d.ts +12 -0
  486. package/dist/types/components/Connect/ConnectedWallets.d.ts.map +1 -0
  487. package/dist/types/components/Connect/EmailWaasVerify.d.ts +10 -0
  488. package/dist/types/components/Connect/EmailWaasVerify.d.ts.map +1 -0
  489. package/dist/types/components/Connect/ExtendedWalletList.d.ts +11 -0
  490. package/dist/types/components/Connect/ExtendedWalletList.d.ts.map +1 -0
  491. package/dist/types/components/Connect/WalletListItem.d.ts +13 -0
  492. package/dist/types/components/Connect/WalletListItem.d.ts.map +1 -0
  493. package/dist/types/components/Connect/index.d.ts +2 -0
  494. package/dist/types/components/Connect/index.d.ts.map +1 -0
  495. package/dist/types/components/ConnectButton/ConnectButton.d.ts +17 -0
  496. package/dist/types/components/ConnectButton/ConnectButton.d.ts.map +1 -0
  497. package/dist/types/components/ConnectButton/index.d.ts +2 -0
  498. package/dist/types/components/ConnectButton/index.d.ts.map +1 -0
  499. package/dist/types/components/CryptoOption.d.ts +14 -0
  500. package/dist/types/components/CryptoOption.d.ts.map +1 -0
  501. package/dist/types/components/JsonTreeViewer.d.ts +7 -0
  502. package/dist/types/components/JsonTreeViewer.d.ts.map +1 -0
  503. package/dist/types/components/NetworkBadge/NetworkBadge.d.ts +6 -0
  504. package/dist/types/components/NetworkBadge/NetworkBadge.d.ts.map +1 -0
  505. package/dist/types/components/NetworkBadge/index.d.ts +2 -0
  506. package/dist/types/components/NetworkBadge/index.d.ts.map +1 -0
  507. package/dist/types/components/PageHeading/PageHeading.d.ts +7 -0
  508. package/dist/types/components/PageHeading/PageHeading.d.ts.map +1 -0
  509. package/dist/types/components/PageHeading/index.d.ts +2 -0
  510. package/dist/types/components/PageHeading/index.d.ts.map +1 -0
  511. package/dist/types/components/SelectedIndicator.d.ts +6 -0
  512. package/dist/types/components/SelectedIndicator.d.ts.map +1 -0
  513. package/dist/types/components/SequenceConnect/SequenceConnect.d.ts +12 -0
  514. package/dist/types/components/SequenceConnect/SequenceConnect.d.ts.map +1 -0
  515. package/dist/types/components/SequenceConnect/index.d.ts +2 -0
  516. package/dist/types/components/SequenceConnect/index.d.ts.map +1 -0
  517. package/dist/types/components/SequenceConnectPreviewProvider/SequenceConnectPreviewProvider.d.ts +8 -0
  518. package/dist/types/components/SequenceConnectPreviewProvider/SequenceConnectPreviewProvider.d.ts.map +1 -0
  519. package/dist/types/components/SequenceConnectPreviewProvider/index.d.ts +2 -0
  520. package/dist/types/components/SequenceConnectPreviewProvider/index.d.ts.map +1 -0
  521. package/dist/types/components/SequenceConnectProvider/SequenceConnectProvider.d.ts +8 -0
  522. package/dist/types/components/SequenceConnectProvider/SequenceConnectProvider.d.ts.map +1 -0
  523. package/dist/types/components/SequenceConnectProvider/index.d.ts +2 -0
  524. package/dist/types/components/SequenceConnectProvider/index.d.ts.map +1 -0
  525. package/dist/types/components/SequenceLogo/PoweredBySequence.d.ts +2 -0
  526. package/dist/types/components/SequenceLogo/PoweredBySequence.d.ts.map +1 -0
  527. package/dist/types/components/SequenceLogo/SequenceLogo.d.ts +2 -0
  528. package/dist/types/components/SequenceLogo/SequenceLogo.d.ts.map +1 -0
  529. package/dist/types/components/SequenceLogo/index.d.ts +3 -0
  530. package/dist/types/components/SequenceLogo/index.d.ts.map +1 -0
  531. package/dist/types/components/ShadowRoot/ShadowRoot.d.ts +9 -0
  532. package/dist/types/components/ShadowRoot/ShadowRoot.d.ts.map +1 -0
  533. package/dist/types/components/ShadowRoot/index.d.ts +2 -0
  534. package/dist/types/components/ShadowRoot/index.d.ts.map +1 -0
  535. package/dist/types/components/TxnDetails/TxnDetails.d.ts +10 -0
  536. package/dist/types/components/TxnDetails/TxnDetails.d.ts.map +1 -0
  537. package/dist/types/components/TxnDetails/index.d.ts +2 -0
  538. package/dist/types/components/TxnDetails/index.d.ts.map +1 -0
  539. package/dist/types/config/createConfig.d.ts +13 -0
  540. package/dist/types/config/createConfig.d.ts.map +1 -0
  541. package/dist/types/config/defaultChains.d.ts +3 -0
  542. package/dist/types/config/defaultChains.d.ts.map +1 -0
  543. package/dist/types/config/defaultConnectors.d.ts +62 -0
  544. package/dist/types/config/defaultConnectors.d.ts.map +1 -0
  545. package/dist/types/config/defaultTransports.d.ts +5 -0
  546. package/dist/types/config/defaultTransports.d.ts.map +1 -0
  547. package/dist/types/connectors/apple/AppleLogo.d.ts +11 -0
  548. package/dist/types/connectors/apple/AppleLogo.d.ts.map +1 -0
  549. package/dist/types/connectors/apple/apple.d.ts +5 -0
  550. package/dist/types/connectors/apple/apple.d.ts.map +1 -0
  551. package/dist/types/connectors/apple/appleWaas.d.ts +5 -0
  552. package/dist/types/connectors/apple/appleWaas.d.ts.map +1 -0
  553. package/dist/types/connectors/apple/index.d.ts +2 -0
  554. package/dist/types/connectors/apple/index.d.ts.map +1 -0
  555. package/dist/types/connectors/coinbaseWallet/CoinbaseWalletLogo.d.ts +4 -0
  556. package/dist/types/connectors/coinbaseWallet/CoinbaseWalletLogo.d.ts.map +1 -0
  557. package/dist/types/connectors/coinbaseWallet/coinbaseWallet.d.ts +4 -0
  558. package/dist/types/connectors/coinbaseWallet/coinbaseWallet.d.ts.map +1 -0
  559. package/dist/types/connectors/coinbaseWallet/index.d.ts +2 -0
  560. package/dist/types/connectors/coinbaseWallet/index.d.ts.map +1 -0
  561. package/dist/types/connectors/discord/DiscordLogo.d.ts +7 -0
  562. package/dist/types/connectors/discord/DiscordLogo.d.ts.map +1 -0
  563. package/dist/types/connectors/discord/discord.d.ts +6 -0
  564. package/dist/types/connectors/discord/discord.d.ts.map +1 -0
  565. package/dist/types/connectors/discord/index.d.ts +2 -0
  566. package/dist/types/connectors/discord/index.d.ts.map +1 -0
  567. package/dist/types/connectors/email/EmailLogo.d.ts +7 -0
  568. package/dist/types/connectors/email/EmailLogo.d.ts.map +1 -0
  569. package/dist/types/connectors/email/email.d.ts +6 -0
  570. package/dist/types/connectors/email/email.d.ts.map +1 -0
  571. package/dist/types/connectors/email/emailWaas.d.ts +5 -0
  572. package/dist/types/connectors/email/emailWaas.d.ts.map +1 -0
  573. package/dist/types/connectors/email/index.d.ts +2 -0
  574. package/dist/types/connectors/email/index.d.ts.map +1 -0
  575. package/dist/types/connectors/facebook/FacebookLogo.d.ts +8 -0
  576. package/dist/types/connectors/facebook/FacebookLogo.d.ts.map +1 -0
  577. package/dist/types/connectors/facebook/facebook.d.ts +6 -0
  578. package/dist/types/connectors/facebook/facebook.d.ts.map +1 -0
  579. package/dist/types/connectors/facebook/index.d.ts +2 -0
  580. package/dist/types/connectors/facebook/index.d.ts.map +1 -0
  581. package/dist/types/connectors/google/GoogleLogo.d.ts +8 -0
  582. package/dist/types/connectors/google/GoogleLogo.d.ts.map +1 -0
  583. package/dist/types/connectors/google/google.d.ts +5 -0
  584. package/dist/types/connectors/google/google.d.ts.map +1 -0
  585. package/dist/types/connectors/google/googleWaas.d.ts +5 -0
  586. package/dist/types/connectors/google/googleWaas.d.ts.map +1 -0
  587. package/dist/types/connectors/google/index.d.ts +2 -0
  588. package/dist/types/connectors/google/index.d.ts.map +1 -0
  589. package/dist/types/connectors/metaMask/MetaMaskLogo.d.ts +4 -0
  590. package/dist/types/connectors/metaMask/MetaMaskLogo.d.ts.map +1 -0
  591. package/dist/types/connectors/metaMask/index.d.ts +2 -0
  592. package/dist/types/connectors/metaMask/index.d.ts.map +1 -0
  593. package/dist/types/connectors/metaMask/metaMask.d.ts +4 -0
  594. package/dist/types/connectors/metaMask/metaMask.d.ts.map +1 -0
  595. package/dist/types/connectors/mock/index.d.ts +2 -0
  596. package/dist/types/connectors/mock/index.d.ts.map +1 -0
  597. package/dist/types/connectors/mock/mock.d.ts +4 -0
  598. package/dist/types/connectors/mock/mock.d.ts.map +1 -0
  599. package/dist/types/connectors/sequence/SequenceLogo.d.ts +3 -0
  600. package/dist/types/connectors/sequence/SequenceLogo.d.ts.map +1 -0
  601. package/dist/types/connectors/sequence/index.d.ts +2 -0
  602. package/dist/types/connectors/sequence/index.d.ts.map +1 -0
  603. package/dist/types/connectors/sequence/sequence.d.ts +6 -0
  604. package/dist/types/connectors/sequence/sequence.d.ts.map +1 -0
  605. package/dist/types/connectors/twitch/TwitchLogo.d.ts +7 -0
  606. package/dist/types/connectors/twitch/TwitchLogo.d.ts.map +1 -0
  607. package/dist/types/connectors/twitch/index.d.ts +2 -0
  608. package/dist/types/connectors/twitch/index.d.ts.map +1 -0
  609. package/dist/types/connectors/twitch/twitch.d.ts +6 -0
  610. package/dist/types/connectors/twitch/twitch.d.ts.map +1 -0
  611. package/dist/types/connectors/wagmiConnectors/index.d.ts +3 -0
  612. package/dist/types/connectors/wagmiConnectors/index.d.ts.map +1 -0
  613. package/dist/types/connectors/wagmiConnectors/sequenceConnector.d.ts +23 -0
  614. package/dist/types/connectors/wagmiConnectors/sequenceConnector.d.ts.map +1 -0
  615. package/dist/types/connectors/wagmiConnectors/sequenceWaasConnector.d.ts +72 -0
  616. package/dist/types/connectors/wagmiConnectors/sequenceWaasConnector.d.ts.map +1 -0
  617. package/dist/types/connectors/walletConnect/WalletConnectLogo.d.ts +3 -0
  618. package/dist/types/connectors/walletConnect/WalletConnectLogo.d.ts.map +1 -0
  619. package/dist/types/connectors/walletConnect/index.d.ts +2 -0
  620. package/dist/types/connectors/walletConnect/index.d.ts.map +1 -0
  621. package/dist/types/connectors/walletConnect/walletConnect.d.ts +8 -0
  622. package/dist/types/connectors/walletConnect/walletConnect.d.ts.map +1 -0
  623. package/dist/types/constants/ethAuth.d.ts +2 -0
  624. package/dist/types/constants/ethAuth.d.ts.map +1 -0
  625. package/dist/types/constants/index.d.ts +7 -0
  626. package/dist/types/constants/index.d.ts.map +1 -0
  627. package/dist/types/constants/localStorage.d.ts +16 -0
  628. package/dist/types/constants/localStorage.d.ts.map +1 -0
  629. package/dist/types/constants/queryKeys.d.ts +22 -0
  630. package/dist/types/constants/queryKeys.d.ts.map +1 -0
  631. package/dist/types/constants/swaps.d.ts +2 -0
  632. package/dist/types/constants/swaps.d.ts.map +1 -0
  633. package/dist/types/constants/transactions.d.ts +2 -0
  634. package/dist/types/constants/transactions.d.ts.map +1 -0
  635. package/dist/types/constants/version.d.ts +2 -0
  636. package/dist/types/constants/version.d.ts.map +1 -0
  637. package/dist/types/constants/walletLinking.d.ts +2 -0
  638. package/dist/types/constants/walletLinking.d.ts.map +1 -0
  639. package/dist/types/contexts/Analytics.d.ts +9 -0
  640. package/dist/types/contexts/Analytics.d.ts.map +1 -0
  641. package/dist/types/contexts/ConnectConfig.d.ts +3 -0
  642. package/dist/types/contexts/ConnectConfig.d.ts.map +1 -0
  643. package/dist/types/contexts/ConnectModal.d.ts +8 -0
  644. package/dist/types/contexts/ConnectModal.d.ts.map +1 -0
  645. package/dist/types/contexts/Theme.d.ts +12 -0
  646. package/dist/types/contexts/Theme.d.ts.map +1 -0
  647. package/dist/types/contexts/WalletConfig.d.ts +9 -0
  648. package/dist/types/contexts/WalletConfig.d.ts.map +1 -0
  649. package/dist/types/contexts/genericContext.d.ts +2 -0
  650. package/dist/types/contexts/genericContext.d.ts.map +1 -0
  651. package/dist/types/env.d.ts +2 -0
  652. package/dist/types/env.d.ts.map +1 -0
  653. package/dist/types/hooks/useChain.d.ts +2 -0
  654. package/dist/types/hooks/useChain.d.ts.map +1 -0
  655. package/dist/types/hooks/useCheckWaasFeeOptions.d.ts +10 -0
  656. package/dist/types/hooks/useCheckWaasFeeOptions.d.ts.map +1 -0
  657. package/dist/types/hooks/useOpenConnectModal.d.ts +5 -0
  658. package/dist/types/hooks/useOpenConnectModal.d.ts.map +1 -0
  659. package/dist/types/hooks/useProjectAccessKey.d.ts +2 -0
  660. package/dist/types/hooks/useProjectAccessKey.d.ts.map +1 -0
  661. package/dist/types/hooks/useSignInEmail.d.ts +2 -0
  662. package/dist/types/hooks/useSignInEmail.d.ts.map +1 -0
  663. package/dist/types/hooks/useStorage.d.ts +6 -0
  664. package/dist/types/hooks/useStorage.d.ts.map +1 -0
  665. package/dist/types/hooks/useTheme.d.ts +7 -0
  666. package/dist/types/hooks/useTheme.d.ts.map +1 -0
  667. package/dist/types/hooks/useWaasConfirmationHandler.d.ts +10 -0
  668. package/dist/types/hooks/useWaasConfirmationHandler.d.ts.map +1 -0
  669. package/dist/types/hooks/useWaasEmailAuth.d.ts +32 -0
  670. package/dist/types/hooks/useWaasEmailAuth.d.ts.map +1 -0
  671. package/dist/types/hooks/useWaasEmailConflict.d.ts +11 -0
  672. package/dist/types/hooks/useWaasEmailConflict.d.ts.map +1 -0
  673. package/dist/types/hooks/useWaasFeeOptions.d.ts +76 -0
  674. package/dist/types/hooks/useWaasFeeOptions.d.ts.map +1 -0
  675. package/dist/types/hooks/useWaasGetLinkedWalletsSignature.d.ts +17 -0
  676. package/dist/types/hooks/useWaasGetLinkedWalletsSignature.d.ts.map +1 -0
  677. package/dist/types/hooks/useWaasLinkWallet.d.ts +17 -0
  678. package/dist/types/hooks/useWaasLinkWallet.d.ts.map +1 -0
  679. package/dist/types/hooks/useWaasSignInEmail.d.ts +5 -0
  680. package/dist/types/hooks/useWaasSignInEmail.d.ts.map +1 -0
  681. package/dist/types/hooks/useWalletSettings.d.ts +6 -0
  682. package/dist/types/hooks/useWalletSettings.d.ts.map +1 -0
  683. package/dist/types/hooks/useWallets.d.ts +28 -0
  684. package/dist/types/hooks/useWallets.d.ts.map +1 -0
  685. package/dist/types/index.d.ts +57 -0
  686. package/dist/types/index.d.ts.map +1 -0
  687. package/dist/types/styles.d.ts +2 -0
  688. package/dist/types/styles.d.ts.map +1 -0
  689. package/dist/types/types.d.ts +72 -0
  690. package/dist/types/types.d.ts.map +1 -0
  691. package/dist/types/utils/adapters.d.ts +5 -0
  692. package/dist/types/utils/adapters.d.ts.map +1 -0
  693. package/dist/types/utils/deferred.d.ts +9 -0
  694. package/dist/types/utils/deferred.d.ts.map +1 -0
  695. package/dist/types/utils/ethAuth.d.ts +7 -0
  696. package/dist/types/utils/ethAuth.d.ts.map +1 -0
  697. package/dist/types/utils/getConnectWallets.d.ts +4 -0
  698. package/dist/types/utils/getConnectWallets.d.ts.map +1 -0
  699. package/dist/types/utils/helpers.d.ts +15 -0
  700. package/dist/types/utils/helpers.d.ts.map +1 -0
  701. package/dist/types/utils/networks.d.ts +4 -0
  702. package/dist/types/utils/networks.d.ts.map +1 -0
  703. package/dist/types/utils/styling.d.ts +54 -0
  704. package/dist/types/utils/styling.d.ts.map +1 -0
  705. package/dist/types/utils/tokens.d.ts +14 -0
  706. package/dist/types/utils/tokens.d.ts.map +1 -0
  707. package/dist/types/utils/transactions.d.ts +29 -0
  708. package/dist/types/utils/transactions.d.ts.map +1 -0
  709. package/dist/types/utils/txnDecoding.d.ts +96 -0
  710. package/dist/types/utils/txnDecoding.d.ts.map +1 -0
  711. package/package.json +81 -0
  712. package/src/chains/index.ts +44 -0
  713. package/src/components/CollectibleTileImage/CollectibleTileImage.tsx +14 -0
  714. package/src/components/CollectibleTileImage/index.ts +1 -0
  715. package/src/components/Connect/Banner.tsx +22 -0
  716. package/src/components/Connect/Connect.tsx +520 -0
  717. package/src/components/Connect/ConnectedWallets.tsx +179 -0
  718. package/src/components/Connect/EmailWaasVerify.tsx +118 -0
  719. package/src/components/Connect/ExtendedWalletList.tsx +122 -0
  720. package/src/components/Connect/WalletListItem.tsx +93 -0
  721. package/src/components/Connect/index.ts +1 -0
  722. package/src/components/ConnectButton/ConnectButton.tsx +197 -0
  723. package/src/components/ConnectButton/index.ts +1 -0
  724. package/src/components/CryptoOption.tsx +80 -0
  725. package/src/components/JsonTreeViewer.tsx +63 -0
  726. package/src/components/NetworkBadge/NetworkBadge.tsx +36 -0
  727. package/src/components/NetworkBadge/index.ts +1 -0
  728. package/src/components/PageHeading/PageHeading.tsx +16 -0
  729. package/src/components/PageHeading/index.tsx +1 -0
  730. package/src/components/SelectedIndicator.tsx +21 -0
  731. package/src/components/SequenceConnect/SequenceConnect.tsx +42 -0
  732. package/src/components/SequenceConnect/index.ts +1 -0
  733. package/src/components/SequenceConnectPreviewProvider/SequenceConnectPreviewProvider.tsx +143 -0
  734. package/src/components/SequenceConnectPreviewProvider/index.ts +1 -0
  735. package/src/components/SequenceConnectProvider/SequenceConnectProvider.tsx +333 -0
  736. package/src/components/SequenceConnectProvider/index.ts +1 -0
  737. package/src/components/SequenceLogo/PoweredBySequence.tsx +21 -0
  738. package/src/components/SequenceLogo/SequenceLogo.tsx +23 -0
  739. package/src/components/SequenceLogo/index.ts +2 -0
  740. package/src/components/ShadowRoot/ShadowRoot.tsx +64 -0
  741. package/src/components/ShadowRoot/index.ts +1 -0
  742. package/src/components/TxnDetails/TxnDetails.tsx +225 -0
  743. package/src/components/TxnDetails/index.ts +1 -0
  744. package/src/config/createConfig.ts +39 -0
  745. package/src/config/defaultChains.ts +21 -0
  746. package/src/config/defaultConnectors.ts +290 -0
  747. package/src/config/defaultTransports.ts +5 -0
  748. package/src/connectors/apple/AppleLogo.tsx +52 -0
  749. package/src/connectors/apple/apple.ts +32 -0
  750. package/src/connectors/apple/appleWaas.ts +23 -0
  751. package/src/connectors/apple/index.ts +1 -0
  752. package/src/connectors/coinbaseWallet/CoinbaseWalletLogo.tsx +17 -0
  753. package/src/connectors/coinbaseWallet/coinbaseWallet.ts +18 -0
  754. package/src/connectors/coinbaseWallet/index.ts +1 -0
  755. package/src/connectors/discord/DiscordLogo.tsx +31 -0
  756. package/src/connectors/discord/discord.ts +32 -0
  757. package/src/connectors/discord/index.ts +1 -0
  758. package/src/connectors/email/EmailLogo.tsx +28 -0
  759. package/src/connectors/email/email.ts +31 -0
  760. package/src/connectors/email/emailWaas.ts +21 -0
  761. package/src/connectors/email/index.ts +1 -0
  762. package/src/connectors/facebook/FacebookLogo.tsx +52 -0
  763. package/src/connectors/facebook/facebook.ts +32 -0
  764. package/src/connectors/facebook/index.ts +1 -0
  765. package/src/connectors/google/GoogleLogo.tsx +57 -0
  766. package/src/connectors/google/google.ts +31 -0
  767. package/src/connectors/google/googleWaas.ts +23 -0
  768. package/src/connectors/google/index.ts +1 -0
  769. package/src/connectors/metaMask/MetaMaskLogo.tsx +56 -0
  770. package/src/connectors/metaMask/index.ts +1 -0
  771. package/src/connectors/metaMask/metaMask.ts +18 -0
  772. package/src/connectors/mock/index.ts +1 -0
  773. package/src/connectors/mock/mock.ts +18 -0
  774. package/src/connectors/sequence/SequenceLogo.tsx +138 -0
  775. package/src/connectors/sequence/index.ts +1 -0
  776. package/src/connectors/sequence/sequence.ts +26 -0
  777. package/src/connectors/twitch/TwitchLogo.tsx +44 -0
  778. package/src/connectors/twitch/index.ts +1 -0
  779. package/src/connectors/twitch/twitch.ts +32 -0
  780. package/src/connectors/wagmiConnectors/index.ts +2 -0
  781. package/src/connectors/wagmiConnectors/sequenceConnector.ts +230 -0
  782. package/src/connectors/wagmiConnectors/sequenceWaasConnector.ts +546 -0
  783. package/src/connectors/walletConnect/WalletConnectLogo.tsx +14 -0
  784. package/src/connectors/walletConnect/index.ts +1 -0
  785. package/src/connectors/walletConnect/walletConnect.ts +64 -0
  786. package/src/constants/ethAuth.ts +2 -0
  787. package/src/constants/index.ts +6 -0
  788. package/src/constants/localStorage.ts +31 -0
  789. package/src/constants/queryKeys.ts +21 -0
  790. package/src/constants/swaps.ts +2 -0
  791. package/src/constants/transactions.ts +1 -0
  792. package/src/constants/version.ts +1 -0
  793. package/src/constants/walletLinking.ts +2 -0
  794. package/src/contexts/Analytics.ts +14 -0
  795. package/src/contexts/ConnectConfig.ts +7 -0
  796. package/src/contexts/ConnectModal.ts +13 -0
  797. package/src/contexts/Theme.ts +17 -0
  798. package/src/contexts/WalletConfig.ts +13 -0
  799. package/src/contexts/genericContext.ts +19 -0
  800. package/src/env.ts +2 -0
  801. package/src/hooks/useChain.ts +9 -0
  802. package/src/hooks/useCheckWaasFeeOptions.ts +34 -0
  803. package/src/hooks/useOpenConnectModal.ts +7 -0
  804. package/src/hooks/useProjectAccessKey.ts +7 -0
  805. package/src/hooks/useSignInEmail.ts +28 -0
  806. package/src/hooks/useStorage.ts +27 -0
  807. package/src/hooks/useTheme.ts +12 -0
  808. package/src/hooks/useWaasConfirmationHandler.ts +68 -0
  809. package/src/hooks/useWaasEmailAuth.ts +123 -0
  810. package/src/hooks/useWaasEmailConflict.ts +75 -0
  811. package/src/hooks/useWaasFeeOptions.ts +203 -0
  812. package/src/hooks/useWaasGetLinkedWalletsSignature.ts +166 -0
  813. package/src/hooks/useWaasLinkWallet.ts +117 -0
  814. package/src/hooks/useWaasSignInEmail.ts +32 -0
  815. package/src/hooks/useWalletSettings.ts +11 -0
  816. package/src/hooks/useWallets.ts +227 -0
  817. package/src/index.css +5 -0
  818. package/src/index.ts +108 -0
  819. package/src/styles.ts +2215 -0
  820. package/src/types/provider.d.ts +9 -0
  821. package/src/types.ts +92 -0
  822. package/src/utils/adapters.ts +29 -0
  823. package/src/utils/deferred.ts +21 -0
  824. package/src/utils/ethAuth.ts +70 -0
  825. package/src/utils/getConnectWallets.ts +25 -0
  826. package/src/utils/helpers.ts +124 -0
  827. package/src/utils/networks.ts +63 -0
  828. package/src/utils/styling.ts +52 -0
  829. package/src/utils/tokens.ts +56 -0
  830. package/src/utils/transactions.ts +246 -0
  831. package/src/utils/txnDecoding.ts +554 -0
@@ -0,0 +1,546 @@
1
+ import { allNetworks, EIP1193Provider } from '@0xsequence/network'
2
+ import {
3
+ SequenceWaaS,
4
+ SequenceConfig,
5
+ ExtendedSequenceConfig,
6
+ Transaction,
7
+ FeeOption,
8
+ WebrpcEndpointError
9
+ } from '@0xsequence/waas'
10
+ import { ethers } from 'ethers'
11
+ import { v4 as uuidv4 } from 'uuid'
12
+ import {
13
+ InternalRpcError,
14
+ ProviderDisconnectedError,
15
+ TransactionRejectedRpcError,
16
+ UserRejectedRequestError,
17
+ getAddress,
18
+ zeroAddress,
19
+ toHex
20
+ } from 'viem'
21
+ import { createConnector } from 'wagmi'
22
+
23
+ import { LocalStorageKey } from '../../constants/localStorage'
24
+ import { DEBUG } from '../../env'
25
+
26
+ export interface SequenceWaasConnectConfig {
27
+ googleClientId?: string
28
+ appleClientId?: string
29
+ appleRedirectURI?: string
30
+ enableConfirmationModal?: boolean
31
+ loginType: 'email' | 'google' | 'apple'
32
+ }
33
+
34
+ export type BaseSequenceWaasConnectorOptions = SequenceConfig & SequenceWaasConnectConfig & Partial<ExtendedSequenceConfig>
35
+
36
+ sequenceWaasWallet.type = 'sequence-waas' as const
37
+
38
+ export function sequenceWaasWallet(params: BaseSequenceWaasConnectorOptions) {
39
+ type Provider = SequenceWaasProvider
40
+ type Properties = {
41
+ sequenceWaas: SequenceWaaS
42
+ sequenceWaasProvider: SequenceWaasProvider
43
+ params: BaseSequenceWaasConnectorOptions
44
+ }
45
+ type StorageItem = {
46
+ [LocalStorageKey.WaasActiveLoginType]: string
47
+ [LocalStorageKey.WaasGoogleIdToken]: string
48
+ [LocalStorageKey.WaasEmailIdToken]: string
49
+ [LocalStorageKey.WaasAppleIdToken]: string
50
+ [LocalStorageKey.WaasGoogleClientID]: string
51
+ [LocalStorageKey.WaasAppleClientID]: string
52
+ [LocalStorageKey.WaasAppleRedirectURI]: string
53
+ [LocalStorageKey.WaasSignInEmail]: string
54
+ }
55
+
56
+ const nodesUrl = DEBUG ? 'https://dev-nodes.sequence.app' : 'https://nodes.sequence.app'
57
+
58
+ const showConfirmationModal = params.enableConfirmationModal ?? false
59
+
60
+ const sequenceWaas = new SequenceWaaS({
61
+ waasConfigKey: params.waasConfigKey,
62
+ projectAccessKey: params.projectAccessKey,
63
+ network: params.network ?? 137
64
+ })
65
+
66
+ const sequenceWaasProvider = new SequenceWaasProvider(sequenceWaas, showConfirmationModal, nodesUrl)
67
+
68
+ return createConnector<Provider, Properties, StorageItem>(config => ({
69
+ id: `sequence-waas`,
70
+ name: 'Sequence WaaS',
71
+ type: sequenceWaasWallet.type,
72
+ sequenceWaas,
73
+ sequenceWaasProvider,
74
+ params,
75
+
76
+ async setup() {
77
+ if (typeof window !== 'object') {
78
+ // (for SSR) only run in browser client
79
+ return
80
+ }
81
+
82
+ if (params.googleClientId) {
83
+ await config.storage?.setItem(LocalStorageKey.WaasGoogleClientID, params.googleClientId)
84
+ }
85
+ if (params.appleClientId) {
86
+ await config.storage?.setItem(LocalStorageKey.WaasAppleClientID, params.appleClientId)
87
+ }
88
+ if (params.appleRedirectURI) {
89
+ await config.storage?.setItem(LocalStorageKey.WaasAppleRedirectURI, params.appleRedirectURI)
90
+ }
91
+
92
+ sequenceWaasProvider.on('error', error => {
93
+ if (isSessionInvalidOrNotFoundError(error)) {
94
+ this.disconnect()
95
+ }
96
+ })
97
+ },
98
+
99
+ async connect(_connectInfo) {
100
+ const provider = await this.getProvider()
101
+ const isSignedIn = await provider.sequenceWaas.isSignedIn()
102
+
103
+ if (!isSignedIn) {
104
+ const googleIdToken = await config.storage?.getItem(LocalStorageKey.WaasGoogleIdToken)
105
+ const emailIdToken = await config.storage?.getItem(LocalStorageKey.WaasEmailIdToken)
106
+ const appleIdToken = await config.storage?.getItem(LocalStorageKey.WaasAppleIdToken)
107
+
108
+ let idToken: string | undefined
109
+
110
+ if (params.loginType === 'google' && googleIdToken) {
111
+ idToken = googleIdToken
112
+ } else if (params.loginType === 'email' && emailIdToken) {
113
+ idToken = emailIdToken
114
+ } else if (params.loginType === 'apple' && appleIdToken) {
115
+ idToken = appleIdToken
116
+ }
117
+
118
+ await config.storage?.removeItem(LocalStorageKey.WaasGoogleIdToken)
119
+ await config.storage?.removeItem(LocalStorageKey.WaasEmailIdToken)
120
+ await config.storage?.removeItem(LocalStorageKey.WaasAppleIdToken)
121
+
122
+ if (idToken) {
123
+ try {
124
+ const signInResponse = await provider.sequenceWaas.signIn({ idToken }, randomName())
125
+ if (signInResponse?.email) {
126
+ await config.storage?.setItem(LocalStorageKey.WaasSignInEmail, signInResponse.email)
127
+ }
128
+ } catch (e) {
129
+ console.log(e)
130
+ await this.disconnect()
131
+ throw e
132
+ }
133
+ }
134
+ }
135
+
136
+ const accounts = await this.getAccounts()
137
+
138
+ if (accounts.length) {
139
+ await config.storage?.setItem(LocalStorageKey.WaasActiveLoginType, params.loginType)
140
+ } else {
141
+ throw new Error('No accounts found')
142
+ }
143
+
144
+ return {
145
+ accounts,
146
+ chainId: await this.getChainId()
147
+ }
148
+ },
149
+
150
+ async disconnect() {
151
+ const provider = await this.getProvider()
152
+
153
+ try {
154
+ await provider.sequenceWaas.dropSession({ sessionId: await provider.sequenceWaas.getSessionId(), strict: false })
155
+ } catch (e) {
156
+ console.log(e)
157
+ }
158
+
159
+ await config.storage?.removeItem(LocalStorageKey.WaasActiveLoginType)
160
+ await config.storage?.removeItem(LocalStorageKey.WaasSignInEmail)
161
+
162
+ config.emitter.emit('disconnect')
163
+ },
164
+
165
+ async getAccounts() {
166
+ const provider = await this.getProvider()
167
+
168
+ try {
169
+ const isSignedIn = await provider.sequenceWaas.isSignedIn()
170
+
171
+ if (isSignedIn) {
172
+ const address = await provider.sequenceWaas.getAddress()
173
+ return [getAddress(address)]
174
+ }
175
+ } catch (err) {
176
+ return []
177
+ }
178
+
179
+ return []
180
+ },
181
+
182
+ async getProvider(): Promise<SequenceWaasProvider> {
183
+ return sequenceWaasProvider
184
+ },
185
+
186
+ async isAuthorized() {
187
+ const provider = await this.getProvider()
188
+
189
+ const activeWaasOption = await config.storage?.getItem(LocalStorageKey.WaasActiveLoginType)
190
+ if (params.loginType !== activeWaasOption) {
191
+ return false
192
+ }
193
+ try {
194
+ return await provider.sequenceWaas.isSignedIn()
195
+ } catch (e) {
196
+ return false
197
+ }
198
+ },
199
+
200
+ async switchChain({ chainId }) {
201
+ const provider = await this.getProvider()
202
+ const chain = config.chains.find(c => c.id === chainId) || config.chains[0]
203
+
204
+ await provider.request({
205
+ method: 'wallet_switchEthereumChain',
206
+ params: [{ chainId: toHex(chainId) }]
207
+ })
208
+
209
+ config.emitter.emit('change', { chainId })
210
+
211
+ return chain
212
+ },
213
+
214
+ async getChainId() {
215
+ const provider = await this.getProvider()
216
+ return Number(provider.getChainId())
217
+ },
218
+
219
+ async onAccountsChanged(accounts) {
220
+ return { account: accounts[0] }
221
+ },
222
+
223
+ async onChainChanged(chain) {
224
+ config.emitter.emit('change', { chainId: normalizeChainId(chain) })
225
+ },
226
+
227
+ async onConnect(_connectInfo) {},
228
+
229
+ async onDisconnect() {
230
+ await this.disconnect()
231
+ }
232
+ }))
233
+ }
234
+
235
+ export class SequenceWaasProvider extends ethers.AbstractProvider implements EIP1193Provider {
236
+ jsonRpcProvider: ethers.JsonRpcProvider
237
+ requestConfirmationHandler: WaasRequestConfirmationHandler | undefined
238
+ feeConfirmationHandler: WaasFeeOptionConfirmationHandler | undefined
239
+ currentNetwork: ethers.Network
240
+
241
+ constructor(
242
+ public sequenceWaas: SequenceWaaS,
243
+ public showConfirmation: boolean,
244
+ public nodesUrl: string
245
+ ) {
246
+ super(sequenceWaas.config.network)
247
+
248
+ const initialChain = sequenceWaas.config.network
249
+ const initialChainName = allNetworks.find(n => n.chainId === initialChain || n.name === initialChain)?.name
250
+ const initialJsonRpcProvider = new ethers.JsonRpcProvider(
251
+ `${nodesUrl}/${initialChainName}/${sequenceWaas.config.projectAccessKey}`
252
+ )
253
+
254
+ this.jsonRpcProvider = initialJsonRpcProvider
255
+ this.currentNetwork = ethers.Network.from(sequenceWaas.config.network)
256
+ }
257
+
258
+ async request({ method, params }: { method: string; params?: any[] }) {
259
+ if (method === 'wallet_switchEthereumChain') {
260
+ const chainId = normalizeChainId(params?.[0].chainId)
261
+
262
+ const networkName = allNetworks.find(n => n.chainId === chainId)?.name
263
+ const jsonRpcProvider = new ethers.JsonRpcProvider(
264
+ `${this.nodesUrl}/${networkName}/${this.sequenceWaas.config.projectAccessKey}`
265
+ )
266
+
267
+ this.jsonRpcProvider = jsonRpcProvider
268
+ this.currentNetwork = ethers.Network.from(chainId)
269
+
270
+ return null
271
+ }
272
+
273
+ if (method === 'eth_chainId') {
274
+ return toHex(this.currentNetwork.chainId)
275
+ }
276
+
277
+ if (method === 'eth_accounts') {
278
+ const address = await this.sequenceWaas.getAddress()
279
+ const account = getAddress(address)
280
+ return [account]
281
+ }
282
+
283
+ if (method === 'eth_sendTransaction') {
284
+ const txns: ethers.Transaction[] = await ethers.resolveProperties(params?.[0])
285
+
286
+ const chainId = this.getChainId()
287
+
288
+ let feeOptionsResponse
289
+
290
+ try {
291
+ feeOptionsResponse = await this.checkTransactionFeeOptions({ transactions: [txns] as Transaction[], chainId })
292
+ } catch (error: unknown) {
293
+ if (isSessionInvalidOrNotFoundError(error)) {
294
+ await this.emit('error', error)
295
+ throw new ProviderDisconnectedError(new Error('Provider is not connected'))
296
+ } else {
297
+ const message =
298
+ typeof error === 'object' && error !== null && 'cause' in error
299
+ ? String(error.cause) || 'Failed to check transaction fee options'
300
+ : 'Failed to check transaction fee options'
301
+ throw new InternalRpcError(new Error(message))
302
+ }
303
+ }
304
+
305
+ const feeOptions = feeOptionsResponse?.feeOptions
306
+ let selectedFeeOption: FeeOption | undefined
307
+
308
+ if (!feeOptionsResponse?.isSponsored && feeOptions && feeOptions.length > 0) {
309
+ if (!this.feeConfirmationHandler) {
310
+ throw new TransactionRejectedRpcError(
311
+ new Error('Unable to send transaction: please use useWaasFeeOptions hook and pick a fee option')
312
+ )
313
+ }
314
+
315
+ const id = uuidv4()
316
+ const confirmation = await this.feeConfirmationHandler.confirmFeeOption(id, feeOptions, txns, chainId)
317
+
318
+ if (!confirmation.confirmed) {
319
+ throw new UserRejectedRequestError(new Error('User rejected send transaction request'))
320
+ }
321
+
322
+ if (id !== confirmation.id) {
323
+ throw new UserRejectedRequestError(new Error('User confirmation ids do not match'))
324
+ }
325
+
326
+ selectedFeeOption = feeOptions.find(feeOption => {
327
+ // Handle the case where feeTokenAddress is ZeroAddress and contractAddress is null
328
+ if (confirmation.feeTokenAddress === zeroAddress && feeOption.token.contractAddress === null) {
329
+ return true
330
+ }
331
+ return feeOption.token.contractAddress === confirmation.feeTokenAddress
332
+ })
333
+ }
334
+
335
+ if (this.requestConfirmationHandler && this.showConfirmation) {
336
+ const id = uuidv4()
337
+ const confirmation = await this.requestConfirmationHandler.confirmSignTransactionRequest(id, txns, chainId)
338
+
339
+ if (!confirmation.confirmed) {
340
+ throw new UserRejectedRequestError(new Error('User rejected send transaction request'))
341
+ }
342
+
343
+ if (id !== confirmation.id) {
344
+ throw new UserRejectedRequestError(new Error('User confirmation ids do not match'))
345
+ }
346
+ }
347
+
348
+ let response
349
+
350
+ try {
351
+ response = await this.sequenceWaas.sendTransaction({
352
+ transactions: [await ethers.resolveProperties(params?.[0])],
353
+ network: chainId,
354
+ transactionsFeeOption: selectedFeeOption,
355
+ transactionsFeeQuote: feeOptionsResponse?.feeQuote
356
+ })
357
+ } catch (error) {
358
+ if (isSessionInvalidOrNotFoundError(error)) {
359
+ await this.emit('error', error)
360
+ throw new ProviderDisconnectedError(new Error('Provider is not connected'))
361
+ } else {
362
+ const message =
363
+ typeof error === 'object' && error !== null && 'cause' in error
364
+ ? String(error.cause) || 'Failed to send transaction'
365
+ : 'Failed to send transaction'
366
+ throw new InternalRpcError(new Error(message))
367
+ }
368
+ }
369
+
370
+ if (response.code === 'transactionFailed') {
371
+ // Failed
372
+ throw new TransactionRejectedRpcError(new Error(`Unable to send transaction: ${response.data.error}`))
373
+ }
374
+
375
+ if (response.code === 'transactionReceipt') {
376
+ // Success
377
+ const { txHash } = response.data
378
+ return txHash
379
+ }
380
+ }
381
+
382
+ if (method === 'eth_sign' || method === 'personal_sign') {
383
+ if (this.requestConfirmationHandler && this.showConfirmation) {
384
+ const id = uuidv4()
385
+ const confirmation = await this.requestConfirmationHandler.confirmSignMessageRequest(
386
+ id,
387
+ params?.[0],
388
+ Number(this.currentNetwork.chainId)
389
+ )
390
+
391
+ if (!confirmation.confirmed) {
392
+ throw new UserRejectedRequestError(new Error('User rejected sign message request'))
393
+ }
394
+
395
+ if (id !== confirmation.id) {
396
+ throw new UserRejectedRequestError(new Error('User confirmation ids do not match'))
397
+ }
398
+ }
399
+
400
+ let sig
401
+
402
+ try {
403
+ sig = await this.sequenceWaas.signMessage({ message: params?.[0], network: Number(this.currentNetwork.chainId) })
404
+ } catch (error) {
405
+ if (isSessionInvalidOrNotFoundError(error)) {
406
+ await this.emit('error', error)
407
+ throw new ProviderDisconnectedError(new Error('Provider is not connected'))
408
+ } else {
409
+ const message =
410
+ typeof error === 'object' && error !== null && 'cause' in error
411
+ ? String(error.cause) || 'Failed to sign message'
412
+ : 'Failed to sign message'
413
+ throw new InternalRpcError(new Error(message))
414
+ }
415
+ }
416
+
417
+ return sig.data.signature
418
+ }
419
+
420
+ if (method === 'eth_signTypedData' || method === 'eth_signTypedData_v4') {
421
+ if (this.requestConfirmationHandler && this.showConfirmation) {
422
+ const id = uuidv4()
423
+ const confirmation = await this.requestConfirmationHandler.confirmSignMessageRequest(
424
+ id,
425
+ JSON.stringify(JSON.parse(params?.[1]), null, 2), // Pretty print the typed data for confirmation
426
+ Number(this.currentNetwork.chainId)
427
+ )
428
+
429
+ if (!confirmation.confirmed) {
430
+ throw new UserRejectedRequestError(new Error('User rejected sign typed data request'))
431
+ }
432
+
433
+ if (id !== confirmation.id) {
434
+ throw new UserRejectedRequestError(new Error('User confirmation ids do not match'))
435
+ }
436
+ }
437
+
438
+ let sig
439
+
440
+ try {
441
+ sig = await this.sequenceWaas.signTypedData({
442
+ typedData: JSON.parse(params?.[1]),
443
+ network: Number(this.currentNetwork.chainId)
444
+ })
445
+ } catch (error) {
446
+ if (isSessionInvalidOrNotFoundError(error)) {
447
+ await this.emit('error', error)
448
+ throw new ProviderDisconnectedError(new Error('Provider is not connected'))
449
+ } else {
450
+ const message =
451
+ typeof error === 'object' && error !== null && 'cause' in error
452
+ ? String(error.cause) || 'Failed to sign typed data'
453
+ : 'Failed to sign typed data'
454
+ throw new InternalRpcError(new Error(message))
455
+ }
456
+ }
457
+
458
+ return sig.data.signature
459
+ }
460
+
461
+ return await this.jsonRpcProvider.send(method, params ?? [])
462
+ }
463
+
464
+ async getTransaction(txHash: string) {
465
+ return await this.jsonRpcProvider.getTransaction(txHash)
466
+ }
467
+
468
+ detectNetwork(): Promise<ethers.Network> {
469
+ return Promise.resolve(this.currentNetwork)
470
+ }
471
+
472
+ getChainId() {
473
+ return Number(this.currentNetwork.chainId)
474
+ }
475
+
476
+ async checkTransactionFeeOptions({
477
+ transactions,
478
+ chainId
479
+ }: {
480
+ transactions: Transaction[]
481
+ chainId: number
482
+ }): Promise<{ feeQuote: string | undefined; feeOptions: FeeOption[] | undefined; isSponsored: boolean }> {
483
+ const resp = await this.sequenceWaas.feeOptions({
484
+ transactions: transactions,
485
+ network: chainId
486
+ })
487
+
488
+ if (resp.data.feeQuote && resp.data.feeOptions) {
489
+ return { feeQuote: resp.data.feeQuote, feeOptions: resp.data.feeOptions, isSponsored: false }
490
+ }
491
+ return { feeQuote: resp.data.feeQuote, feeOptions: resp.data.feeOptions, isSponsored: true }
492
+ }
493
+ }
494
+
495
+ export interface WaasRequestConfirmationHandler {
496
+ confirmSignTransactionRequest(
497
+ id: string,
498
+ txs: ethers.Transaction[],
499
+ chainId: number
500
+ ): Promise<{ id: string; confirmed: boolean }>
501
+ confirmSignMessageRequest(id: string, message: string, chainId: number): Promise<{ id: string; confirmed: boolean }>
502
+ }
503
+
504
+ export interface WaasFeeOptionConfirmationHandler {
505
+ confirmFeeOption(
506
+ id: string,
507
+ options: FeeOption[],
508
+ txs: ethers.Transaction[],
509
+ chainId: number
510
+ ): Promise<{ id: string; feeTokenAddress?: string | null; confirmed: boolean }>
511
+ }
512
+
513
+ const DEVICE_EMOJIS = [
514
+ // 256 emojis for unsigned byte range 0 - 255
515
+ ...'🐶🐱🐭🐹🐰🦊🐻🐼🐨🐯🦁🐮🐷🐽🐸🐵🙈🙉🙊🐒🐔🐧🐦🐤🐣🐥🦆🦅🦉🦇🐺🐗🐴🦄🐝🐛🦋🐌🐞🐜🦟🦗🕷🕸🦂🐢🐍🦎🦖🦕🐙🦑🦐🦞🦀🐡🐠🐟🐬🐳🐋🦈🐊🐅🐆🦓🦍🦧🐘🦛🦏🐪🐫🦒🦘🐃🐂🐄🐎🐖🐏🐑🦙🐐🦌🐕🐩🦮🐈🐓🦃🦚🦜🦢🦩🕊🐇🦝🦨🦡🦦🦥🐁🐀🐿🦔🐾🐉🐲🌵🎄🌲🌳🌴🌱🌿🍀🎍🎋🍃👣🍂🍁🍄🐚🌾💐🌷🌹🥀🌺🌸🌼🌻🌞🌝🍏🍎🍐🍊🍋🍌🍉🍇🍓🍈🥭🍍🥥🥝🍅🥑🥦🥬🥒🌶🌽🥕🧄🧅🥔🍠🥐🥯🍞🥖🥨🧀🥚🍳🧈🥞🧇🥓🥩🍗🍖🦴🌭🍔🍟🍕🥪🥙🧆🌮🌯🥗🥘🥫🍝🍜🍲🍛🍣🍱🥟🦪🍤🍙🍚🍘🍥🥠🥮🍢🍡🍧🍨🍦🥧🧁🍰🎂🍮🍭🍬🍫🍿🍩🍪🌰🥜👀👂👃👄👅👆👇👈👉👊👋👌👍👎👏👐👑👒👓🎯🎰🎱🎲🎳👾👯👺👻👽🏂🏃🏄'
516
+ ]
517
+
518
+ // Generate a random name for the session, using a single random emoji and 2 random words
519
+ // from the list of words of ethers
520
+ export function randomName() {
521
+ const wordlistSize = 2048
522
+ const words = ethers.wordlists.en
523
+
524
+ const randomEmoji = DEVICE_EMOJIS[Math.floor(Math.random() * DEVICE_EMOJIS.length)]
525
+ const randomWord1 = words.getWord(Math.floor(Math.random() * wordlistSize))
526
+ const randomWord2 = words.getWord(Math.floor(Math.random() * wordlistSize))
527
+
528
+ return `${randomEmoji} ${randomWord1} ${randomWord2}`
529
+ }
530
+
531
+ function normalizeChainId(chainId: string | number | bigint | { chainId: string }) {
532
+ if (typeof chainId === 'object') {
533
+ return normalizeChainId(chainId.chainId)
534
+ }
535
+ if (typeof chainId === 'string') {
536
+ return Number.parseInt(chainId, chainId.trim().substring(0, 2) === '0x' ? 16 : 10)
537
+ }
538
+ if (typeof chainId === 'bigint') {
539
+ return Number(chainId)
540
+ }
541
+ return chainId
542
+ }
543
+
544
+ function isSessionInvalidOrNotFoundError(error: unknown) {
545
+ return error instanceof WebrpcEndpointError && error.cause === 'session invalid or not found'
546
+ }
@@ -0,0 +1,14 @@
1
+ import React from 'react'
2
+
3
+ import { LogoProps } from '../../types'
4
+
5
+ export const WalletConnectLogo: React.FunctionComponent = (props: LogoProps) => {
6
+ return (
7
+ <svg fill="none" viewBox="0 0 480 332" xmlns="http://www.w3.org/2000/svg" {...props}>
8
+ <path
9
+ d="m126.613 93.9842c62.622-61.3123 164.152-61.3123 226.775 0l7.536 7.3788c3.131 3.066 3.131 8.036 0 11.102l-25.781 25.242c-1.566 1.533-4.104 1.533-5.67 0l-10.371-10.154c-43.687-42.7734-114.517-42.7734-158.204 0l-11.107 10.874c-1.565 1.533-4.103 1.533-5.669 0l-25.781-25.242c-3.132-3.066-3.132-8.036 0-11.102zm280.093 52.2038 22.946 22.465c3.131 3.066 3.131 8.036 0 11.102l-103.463 101.301c-3.131 3.065-8.208 3.065-11.339 0l-73.432-71.896c-.783-.767-2.052-.767-2.835 0l-73.43 71.896c-3.131 3.065-8.208 3.065-11.339 0l-103.4657-101.302c-3.1311-3.066-3.1311-8.036 0-11.102l22.9456-22.466c3.1311-3.065 8.2077-3.065 11.3388 0l73.4333 71.897c.782.767 2.051.767 2.834 0l73.429-71.897c3.131-3.065 8.208-3.065 11.339 0l73.433 71.897c.783.767 2.052.767 2.835 0l73.431-71.895c3.132-3.066 8.208-3.066 11.339 0z"
10
+ fill="#3396ff"
11
+ />
12
+ </svg>
13
+ )
14
+ }
@@ -0,0 +1 @@
1
+ export * from './walletConnect'
@@ -0,0 +1,64 @@
1
+ import { createConnector } from 'wagmi'
2
+ import { walletConnect as walletConnectbase, WalletConnectParameters } from 'wagmi/connectors'
3
+
4
+ import { Wallet } from '../../types'
5
+
6
+ import { WalletConnectLogo } from './WalletConnectLogo'
7
+
8
+ interface WalletConnectOptions extends WalletConnectParameters {
9
+ defaultNetwork?: number
10
+ }
11
+
12
+ export const walletConnect = (options: WalletConnectOptions): Wallet => ({
13
+ id: 'wallet-connect',
14
+ logoDark: WalletConnectLogo,
15
+ logoLight: WalletConnectLogo,
16
+ name: 'WalletConnect',
17
+ type: 'wallet',
18
+ createConnector: () => {
19
+ const { defaultNetwork, ...walletConnectOptions } = options
20
+ const baseConnector = walletConnectbase(walletConnectOptions)
21
+
22
+ return createConnector(config => {
23
+ const connector = baseConnector(config)
24
+
25
+ const connect = async (params?: { chainId?: number }) => {
26
+ const targetChainId = params?.chainId ?? defaultNetwork ?? config.chains[0]?.id
27
+ if (!targetChainId) {
28
+ throw new Error('No target chain ID available')
29
+ }
30
+
31
+ if (!connector.connect || !connector.switchChain) {
32
+ throw new Error('WalletConnect connector not properly initialized')
33
+ }
34
+
35
+ // First establish the basic connection
36
+ const result = await connector.connect()
37
+
38
+ // Only attempt to switch chains if we're not already on the target chain
39
+ if (result.chainId !== targetChainId) {
40
+ try {
41
+ // Switch to the target chain
42
+ await connector.switchChain({ chainId: targetChainId })
43
+
44
+ // Return the connection with the updated chain
45
+ return {
46
+ accounts: result.accounts,
47
+ chainId: targetChainId
48
+ }
49
+ } catch (error) {
50
+ console.warn('Failed to switch chain:', error)
51
+ return result
52
+ }
53
+ }
54
+
55
+ return result
56
+ }
57
+
58
+ return {
59
+ ...connector,
60
+ connect
61
+ }
62
+ })
63
+ }
64
+ })
@@ -0,0 +1,2 @@
1
+ // Default session expiration of ETHAuth token (1 week)
2
+ export const DEFAULT_SESSION_EXPIRATION = 60 * 60 * 24 * 7
@@ -0,0 +1,6 @@
1
+ export * from './localStorage'
2
+ export * from './ethAuth'
3
+ export * from './transactions'
4
+ export * from './swaps'
5
+ export * from './queryKeys'
6
+ export * from './version'
@@ -0,0 +1,31 @@
1
+ const PREFIX = '@kit'
2
+ const SETTINGS = 'settings'
3
+ const THEME = 'theme'
4
+ const ETHAUTH_PROOF = 'ethAuthProof'
5
+ const ETHAUTH_SETTINGS = 'ethAuthSettings'
6
+ const WAAS_GOOGLE_CLIENT_ID = 'waasGoogleClientId'
7
+ const WAAS_GOOGLE_ID_TOKEN = 'waasGoogleIdToken'
8
+ const WAAS_APPLE_CLIENT_ID = 'waasAppleClientId'
9
+ const WAAS_APPLE_REDIRECT_URI = 'waasAppleRedirectURI'
10
+ const WAAS_APPLE_ID_TOKEN = 'waasAppleIdToken'
11
+ const WAAS_EMAIL_ID_TOKEN = 'waasEmailIdToken'
12
+ const WAAS_ACTIVE_LOGIN_TYPE = 'waasActiveLoginType'
13
+ const WAAS_SIGN_IN_EMAIL = 'waasSignInEmail'
14
+ const SIGN_IN_EMAIL = 'signInEmail'
15
+
16
+ // TODO: remove all of this.. we should not be storing these in local storage
17
+ export enum LocalStorageKey {
18
+ Settings = `${PREFIX}.${SETTINGS}`,
19
+ Theme = `${PREFIX}.${THEME}`,
20
+ EthAuthProof = `${PREFIX}.${ETHAUTH_PROOF}`,
21
+ EthAuthSettings = `${PREFIX}.${ETHAUTH_SETTINGS}`,
22
+ WaasGoogleClientID = `${PREFIX}.${WAAS_GOOGLE_CLIENT_ID}`,
23
+ WaasGoogleIdToken = `${PREFIX}.${WAAS_GOOGLE_ID_TOKEN}`,
24
+ WaasAppleClientID = `${PREFIX}.${WAAS_APPLE_CLIENT_ID}`,
25
+ WaasAppleRedirectURI = `${PREFIX}.${WAAS_APPLE_REDIRECT_URI}`,
26
+ WaasAppleIdToken = `${PREFIX}.${WAAS_APPLE_ID_TOKEN}`,
27
+ WaasActiveLoginType = `${PREFIX}.${WAAS_ACTIVE_LOGIN_TYPE}`,
28
+ WaasEmailIdToken = `${PREFIX}.${WAAS_EMAIL_ID_TOKEN}`,
29
+ WaasSignInEmail = `${PREFIX}.${WAAS_SIGN_IN_EMAIL}`,
30
+ SignInEmail = `${PREFIX}.${SIGN_IN_EMAIL}`
31
+ }
@@ -0,0 +1,21 @@
1
+ export const QUERY_KEYS = {
2
+ balances: 'balances',
3
+ balancesAssetsSummary: 'balancesAssetsSummary',
4
+ balancesSummary: 'balancesSummary',
5
+ coinBalance: 'coinBalance',
6
+ coinBalanceSummary: 'coinBalanceSummary',
7
+ coinPrices: 'coinPrices',
8
+ collectibleBalance: 'collectibleBalance',
9
+ collectibleBalanceDetails: 'collectibleBalanceDetails',
10
+ collectiblePrices: 'collectiblePrices',
11
+ collectionBalance: 'collectionBalance',
12
+ collectionBalanceDetails: 'collectionBalanceDetails',
13
+ contractInfo: 'contractInfo',
14
+ currencyInfo: 'currencyInfo',
15
+ exchangeRate: 'exchangeRate',
16
+ swapPrices: 'swapPrices',
17
+ swapQuotes: 'swapQuotes',
18
+ tokenMetadata: 'tokenMetadata',
19
+ transactionHistory: 'transactionHistory',
20
+ transactionHistorySummary: 'transactionHistorySummary'
21
+ }
@@ -0,0 +1,2 @@
1
+ // Address displayed for native tokens by the swap API
2
+ export const NATIVE_TOKEN_ADDRESS_0X = '0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee'