diff --git a/README.md b/README.md index f1ad5654e..defe07544 100644 --- a/README.md +++ b/README.md @@ -78,6 +78,13 @@ interface CreateConfigOptions { redirectURI: string } + X?: + | boolean + | { + clientId: string + redirectURI: string + } + email?: | boolean | { @@ -109,6 +116,12 @@ const config = createConfig('waas', { redirectURI: '...' }, + X: { + clientId: '', + redirectURI: '...' + }, + + walletConnect: { projectId: '' }, @@ -125,6 +138,34 @@ function App() { } ``` +#### Note about X (formerly Twitter) authentication. X authentication specifically needs a callback route; either a frontend page or a backend endpoint. An frontend example callback page is below: +Please ensure that the redirect uri and the callback page route is identical or X will refuse the authentication + +```js +export function XAuthCallback() { + useEffect(() => { + const query = new URLSearchParams(window.location.search) + + const payload = { + code: query.get('code'), + state: query.get('state') + } + + if (window.opener) { + window.opener.postMessage({ type: 'OAUTH_RETURN', data: payload }, '*') + } + + window.close() + }, []) + + return ( +

+ you may now close this window. +

+ ) +} +``` + #### Need more customization? React apps must be wrapped by a WagmiProvider and the SequenceConnectProvider components. It is important that the Wagmi wrapper comes before the SequenceConnectProvider wrapper. diff --git a/examples/next/package.json b/examples/next/package.json index 9cfe30b39..ea9d71eb2 100644 --- a/examples/next/package.json +++ b/examples/next/package.json @@ -14,8 +14,8 @@ "@0xsequence/connect": "workspace:*", "@0xsequence/design-system": "2.1.11", "@0xsequence/hooks": "workspace:*", - "@0xsequence/network": "^2.3.10", - "@0xsequence/waas": "^2.3.10", + "@0xsequence/network": "^2.3.23", + "@0xsequence/waas": "^2.3.23", "@0xsequence/wallet-widget": "workspace:*", "@tailwindcss/postcss": "^4.1.4", "@tanstack/react-query": "^5.74.11", diff --git a/examples/react/package.json b/examples/react/package.json index 5ce7324ed..1357f0925 100644 --- a/examples/react/package.json +++ b/examples/react/package.json @@ -16,8 +16,8 @@ "@0xsequence/design-system": "2.1.11", "@0xsequence/hooks": "workspace:*", "@0xsequence/immutable-connector": "workspace:*", - "@0xsequence/network": "^2.3.10", - "@0xsequence/waas": "^2.3.10", + "@0xsequence/network": "^2.3.23", + "@0xsequence/waas": "^2.3.23", "@0xsequence/wallet-widget": "workspace:*", "@imtbl/config": "^2.2.0", "@imtbl/sdk": "^2.2.0", diff --git a/examples/react/src/App.tsx b/examples/react/src/App.tsx index 28328955e..6345eb780 100644 --- a/examples/react/src/App.tsx +++ b/examples/react/src/App.tsx @@ -5,6 +5,7 @@ import { BrowserRouter, Route, Routes } from 'react-router-dom' import { Homepage } from './components/Homepage' import { ImmutableCallback } from './components/ImmutableCallback' +import { XAuthCallback } from './components/XAuthCallback' import { checkoutConfig, config } from './config' export const App = () => { @@ -16,6 +17,7 @@ export const App = () => { } /> } /> + } /> diff --git a/examples/react/src/components/XAuthCallback.tsx b/examples/react/src/components/XAuthCallback.tsx new file mode 100644 index 000000000..71d9a28a3 --- /dev/null +++ b/examples/react/src/components/XAuthCallback.tsx @@ -0,0 +1,27 @@ +import { Text } from '@0xsequence/design-system' +import { useEffect } from 'react' + +export function XAuthCallback() { + useEffect(() => { + const query = new URLSearchParams(window.location.search) + + const payload = { + code: query.get('code'), + state: query.get('state') + } + + if (window.opener) { + window.opener.postMessage({ type: 'OAUTH_RETURN', data: payload }, '*') + } + + window.close() + }, []) + + return ( +
+ + You may now close this window. + +
+ ) +} diff --git a/examples/react/src/config.ts b/examples/react/src/config.ts index 392984fe7..c25d893a7 100644 --- a/examples/react/src/config.ts +++ b/examples/react/src/config.ts @@ -117,6 +117,10 @@ export const config = clientId: 'com.horizon.sequence.waas', redirectURI: window.location.origin + window.location.pathname }, + X: { + clientId: 'MVZ6aHMyNmMtSF9mNHVldFR6TV86MTpjaQ', + redirectURI: window.location.origin + '/auth-callback-X' + }, walletConnect: { projectId: walletConnectProjectId }, diff --git a/packages/checkout/package.json b/packages/checkout/package.json index 1c96522ca..91323b4db 100644 --- a/packages/checkout/package.json +++ b/packages/checkout/package.json @@ -31,7 +31,7 @@ }, "dependencies": { "@0xsequence/design-system": "2.1.11", - "@0xsequence/marketplace": "^2.3.10", + "@0xsequence/marketplace": "^2.3.23", "date-fns": "^4.1.0", "fuse.js": "^7.1.0", "motion": "^12.9.2", @@ -39,14 +39,14 @@ "qrcode.react": "^4.2.0" }, "peerDependencies": { - "0xsequence": ">= 2.3.7", - "@0xsequence/api": ">=2.3.11", + "0xsequence": ">= 2.3.23", + "@0xsequence/api": ">=2.3.23", "@0xsequence/connect": "workspace:*", "@0xsequence/hooks": "workspace:*", - "@0xsequence/indexer": ">= 2.3.7", - "@0xsequence/metadata": ">= 2.3.7", - "@0xsequence/network": ">= 2.3.7", - "@0xsequence/waas": ">= 2.3.7", + "@0xsequence/indexer": ">= 2.3.23", + "@0xsequence/metadata": ">= 2.3.23", + "@0xsequence/network": ">= 2.3.23", + "@0xsequence/waas": ">= 2.3.23", "@tanstack/react-query": ">= 5", "ethers": ">= 6.13.0", "react": ">= 17", diff --git a/packages/checkout/src/hooks/useERC1155SaleContractCheckout.ts b/packages/checkout/src/hooks/useERC1155SaleContractCheckout.ts index 83c199cca..e61d9f855 100644 --- a/packages/checkout/src/hooks/useERC1155SaleContractCheckout.ts +++ b/packages/checkout/src/hooks/useERC1155SaleContractCheckout.ts @@ -142,6 +142,7 @@ export const useERC1155SaleContractCheckout = ({ isLoading: isLoadingCheckoutOptions, isError: isErrorCheckoutOptions } = useCheckoutOptionsSalesContract(chain, { + chainId: chain.toString(), contractAddress, wallet, collectionAddress, diff --git a/packages/connect/README.md b/packages/connect/README.md index 73cd832cf..e4f39afe8 100644 --- a/packages/connect/README.md +++ b/packages/connect/README.md @@ -76,7 +76,14 @@ interface CreateConfigOptions { | boolean | { clientId: string - rediretURI: string + redirectURI: string + } + + X?: + | boolean + | { + clientId: string + redirectURI: string } email?: @@ -107,7 +114,12 @@ const config = createConfig('waas', { apple: { clientId: '', - redirectUrl: '...' + redirectURI: '...' + }, + + X: { + clientId: '', + redirectURI: '...' }, walletConnect: { @@ -126,6 +138,34 @@ function App() { } ``` +#### Note about X (formerly Twitter) authentication. X authentication specifically needs a callback route; either a frontend page or a backend endpoint. An frontend example callback page is below: +Please ensure that the redirect uri and the callback page route is identical or X will refuse the authentication + +```js +export function XAuthCallback() { + useEffect(() => { + const query = new URLSearchParams(window.location.search) + + const payload = { + code: query.get('code'), + state: query.get('state') + } + + if (window.opener) { + window.opener.postMessage({ type: 'OAUTH_RETURN', data: payload }, '*') + } + + window.close() + }, []) + + return ( +

+ you may now close this window. +

+ ) +} +``` + #### Need more customization? React apps must be wrapped by a Wagmi client and the SequenceWalletProvider components. It is important that the Wagmi wrapper comes before the Sequence Web SDK wrapper. diff --git a/packages/connect/package.json b/packages/connect/package.json index 19c21a11d..e0bd18b37 100644 --- a/packages/connect/package.json +++ b/packages/connect/package.json @@ -39,17 +39,17 @@ "typecheck": "tsc --noEmit" }, "dependencies": { - "@0xsequence/api": ">=2.3.11", - "@0xsequence/auth": "^2.3.10", - "@0xsequence/core": "^2.3.10", + "@0xsequence/api": ">=2.3.23", + "@0xsequence/auth": "^2.3.23", + "@0xsequence/core": "^2.3.23", "@0xsequence/design-system": "2.1.11", "@0xsequence/ethauth": "^1.0.0", - "@0xsequence/indexer": "^2.3.10", - "@0xsequence/metadata": "^2.3.10", - "@0xsequence/network": "^2.3.10", - "@0xsequence/provider": "^2.3.10", - "@0xsequence/utils": "^2.3.10", - "@0xsequence/waas": "^2.3.10", + "@0xsequence/indexer": "^2.3.23", + "@0xsequence/metadata": "^2.3.23", + "@0xsequence/network": "^2.3.23", + "@0xsequence/provider": "^2.3.23", + "@0xsequence/utils": "^2.3.23", + "@0xsequence/waas": "^2.3.23", "@tailwindcss/cli": "^4.1.11", "clsx": "^2.1.1", "fuse.js": "^7.1.0", @@ -58,7 +58,7 @@ "uuid": "^10.0.0" }, "peerDependencies": { - "0xsequence": ">= 2.3.7", + "0xsequence": ">= 2.3.23", "@0xsequence/hooks": "workspace:*", "@databeat/tracker": "^0.9.3", "@react-oauth/google": "^0.11.1", @@ -71,7 +71,7 @@ "wagmi": ">= 2.15.0" }, "devDependencies": { - "0xsequence": "^2.3.10", + "0xsequence": "^2.3.23", "@0xsequence/hooks": "workspace:*", "@tanstack/react-query": "^5.74.11", "@types/uuid": "^9.0.8", diff --git a/packages/connect/src/components/Connect/Connect.tsx b/packages/connect/src/components/Connect/Connect.tsx index 400dff4cc..64f021d60 100644 --- a/packages/connect/src/components/Connect/Connect.tsx +++ b/packages/connect/src/components/Connect/Connect.tsx @@ -21,7 +21,7 @@ import { useWallets } from '../../hooks/useWallets.js' import { useWalletSettings } from '../../hooks/useWalletSettings.js' import type { ConnectConfig, ExtendedConnector, LogoProps } from '../../types.js' import { isEmailValid } from '../../utils/helpers.js' -import { GuestWaasConnectButton } from '../ConnectButton/ConnectButton.js' +import { GuestWaasConnectButton, XWaasConnectButton } from '../ConnectButton/ConnectButton.js' import { AppleWaasConnectButton, ConnectButton, @@ -506,6 +506,12 @@ export const Connect = (props: ConnectProps) => { connector={connector} onConnect={onConnect} /> + ) : connector._wallet.id === 'X-waas' ? ( + ) : ( { /> ) : null } + +export const XWaasConnectButton = (props: ConnectButtonProps) => { + const { connector, onConnect } = props + const storage = useStorage() + + const [XCodeVerifier, setXCodeVerifier] = useState('') + const [XClientId, setXClientId] = useState('') + const [XRedirectURI, setXRedirectURI] = useState('') + + const { data: authUrl } = useStorageItem(LocalStorageKey.WaasXAuthUrl) + + useEffect(() => { + const getStorageItems = async () => { + const codeVerifier = await storage?.getItem(LocalStorageKey.WaasXCodeVerifier) + const XClientId = await storage?.getItem(LocalStorageKey.WaasXClientID) + const XRedirectURI = await storage?.getItem(LocalStorageKey.WaasXRedirectURI) + setXCodeVerifier(codeVerifier ?? '') + setXClientId(XClientId ?? '') + setXRedirectURI(XRedirectURI ?? '') + } + getStorageItems() + }, []) + + return ( + { + const popup = window.open(authUrl as string, 'XAuthPopup', 'width=700,height=700') + + const handleMessage = async (event: MessageEvent) => { + if (event.data?.type !== 'OAUTH_RETURN') { + return + } + + if (event.source !== popup) { + return + } + + window.removeEventListener('message', handleMessage) + popup?.close() + + const { code } = event.data.data || {} + + if (code && XCodeVerifier) { + try { + const idToken = await getXIdToken(code, XCodeVerifier, XClientId, XRedirectURI) + storage?.setItem(LocalStorageKey.WaasXIdToken, idToken) + onConnect(connector) + } catch (error) { + console.log('X login error', error) + } + } + } + + window.addEventListener('message', handleMessage) + }} + disableTooltip + /> + ) +} diff --git a/packages/connect/src/config/defaultConnectors.ts b/packages/connect/src/config/defaultConnectors.ts index ce48d0011..00068bcbe 100644 --- a/packages/connect/src/config/defaultConnectors.ts +++ b/packages/connect/src/config/defaultConnectors.ts @@ -15,6 +15,7 @@ import { metaMask } from '../connectors/metaMask/metaMask.js' import { sequence } from '../connectors/sequence/sequence.js' import { twitch } from '../connectors/twitch/twitch.js' import { walletConnect } from '../connectors/walletConnect/walletConnect.js' +import { XWaas } from '../connectors/X/XWaas.js' import type { Wallet, WalletType } from '../types.js' import { getConnectWallets } from '../utils/getConnectWallets.js' @@ -50,6 +51,13 @@ export interface DefaultWaasConnectorOptions extends CommonConnectorOptions { authUrl: string } + X?: + | false + | { + clientId: string + redirectURI: string + } + ecosystem?: false | Omit coinbase?: boolean metaMask?: boolean @@ -184,6 +192,19 @@ export const getDefaultWaasConnectors = (options: DefaultWaasConnectorOptions): ) } + if (options.X) { + wallets.push( + XWaas({ + projectAccessKey, + waasConfigKey, + XClientId: options.X.clientId, + XRedirectURI: options.X.redirectURI, + enableConfirmationModal, + network: defaultChainId + }) + ) + } + if (options.ecosystem) { wallets.push( ecosystemWallet({ diff --git a/packages/connect/src/connectors/X/XAuth.tsx b/packages/connect/src/connectors/X/XAuth.tsx new file mode 100644 index 000000000..6e46c9c7a --- /dev/null +++ b/packages/connect/src/connectors/X/XAuth.tsx @@ -0,0 +1,54 @@ +export const getXOauthUrl = async (XClientId: string, XRedirectURI: string, codeChallenge?: string) => { + const roolUrl = 'https://twitter.com/i/oauth2/authorize' + const options = { + redirect_uri: XRedirectURI as string, + client_id: XClientId as string, + state: 'state', + response_type: 'code', + scope: 'users.read users.email tweet.read', + code_challenge: codeChallenge ?? '', + code_challenge_method: 'S256' + } + const queryString = new URLSearchParams(options).toString() + + return `${roolUrl}?${queryString}` +} + +function base64urlencode(a: ArrayBuffer) { + return btoa(String.fromCharCode(...new Uint8Array(a))) + .replace(/\+/g, '-') + .replace(/\//g, '_') + .replace(/=+$/, '') +} + +export async function getPkcePair() { + const array = new Uint8Array(32) + window.crypto.getRandomValues(array) + const code_verifier = base64urlencode(array) + + const hash = await window.crypto.subtle.digest('SHA-256', new TextEncoder().encode(code_verifier)) + const code_challenge = base64urlencode(hash) + + return { code_verifier, code_challenge } +} + +export async function getXIdToken(code: string, codeVerifier: string, XClientId: string, XRedirectURI: string) { + // NOTE: when testing locally, you must use a cors proxy and append the proxy url in front of the fetch url like so: + // 'http://localhost:8080/https://api.x.com/2/oauth2/token' + const response = await fetch('https://api.x.com/2/oauth2/token', { + method: 'POST', + body: new URLSearchParams({ + code, + grant_type: 'authorization_code', + client_id: XClientId, + redirect_uri: XRedirectURI, + code_verifier: codeVerifier + }), + headers: { + 'Content-Type': 'application/x-www-form-urlencoded' + } + }) + + const data = await response.json() + return data.access_token +} diff --git a/packages/connect/src/connectors/X/XLogo.tsx b/packages/connect/src/connectors/X/XLogo.tsx new file mode 100644 index 000000000..086eb8b4c --- /dev/null +++ b/packages/connect/src/connectors/X/XLogo.tsx @@ -0,0 +1,24 @@ +import type { FunctionComponent } from 'react' + +import type { LogoProps } from '../../types.js' + +interface GetXLogo { + isDarkMode: boolean +} + +export const getXLogo = ({ isDarkMode }: GetXLogo) => { + const fillColor = isDarkMode ? 'white' : 'black' + + const XLogo: FunctionComponent = props => { + return ( + + + + ) + } + + return XLogo +} diff --git a/packages/connect/src/connectors/X/XWaas.ts b/packages/connect/src/connectors/X/XWaas.ts new file mode 100644 index 000000000..ac13707e9 --- /dev/null +++ b/packages/connect/src/connectors/X/XWaas.ts @@ -0,0 +1,21 @@ +import type { Wallet } from '../../types.js' +import { sequenceWaasWallet, type BaseSequenceWaasConnectorOptions } from '../wagmiConnectors/index.js' + +import { getXLogo } from './XLogo.js' + +export type XWaasOptions = Omit + +export const XWaas = (options: XWaasOptions): Wallet => ({ + id: 'X-waas', + logoDark: getXLogo({ isDarkMode: true }), + logoLight: getXLogo({ isDarkMode: false }), + name: 'X', + type: 'social', + createConnector: () => { + const connector = sequenceWaasWallet({ + ...options, + loginType: 'X' + }) + return connector + } +}) diff --git a/packages/connect/src/connectors/wagmiConnectors/sequenceWaasConnector.ts b/packages/connect/src/connectors/wagmiConnectors/sequenceWaasConnector.ts index 6d6f56b5f..be91d4e93 100644 --- a/packages/connect/src/connectors/wagmiConnectors/sequenceWaasConnector.ts +++ b/packages/connect/src/connectors/wagmiConnectors/sequenceWaasConnector.ts @@ -5,6 +5,7 @@ import { type ExtendedSequenceConfig, type FeeOption, type SequenceConfig, + type SignInResponse, type Transaction } from '@0xsequence/waas' import { ethers } from 'ethers' @@ -22,15 +23,18 @@ import { createConnector } from 'wagmi' import { LocalStorageKey } from '../../constants/localStorage.js' import { normalizeChainId } from '../../utils/helpers.js' +import { getPkcePair, getXOauthUrl } from '../X/XAuth.js' export interface SequenceWaasConnectConfig { googleClientId?: string appleClientId?: string + XClientId?: string + XRedirectURI?: string epicAuthUrl?: string appleRedirectURI?: string enableConfirmationModal?: boolean nodesUrl?: string - loginType: 'email' | 'google' | 'apple' | 'epic' | 'guest' + loginType: 'email' | 'google' | 'apple' | 'epic' | 'X' | 'guest' } export type BaseSequenceWaasConnectorOptions = SequenceConfig & SequenceWaasConnectConfig & Partial @@ -49,6 +53,11 @@ export function sequenceWaasWallet(params: BaseSequenceWaasConnectorOptions) { [LocalStorageKey.WaasGoogleIdToken]: string [LocalStorageKey.WaasEmailIdToken]: string [LocalStorageKey.WaasAppleIdToken]: string + [LocalStorageKey.WaasXAuthUrl]: string + [LocalStorageKey.WaasXClientID]: string + [LocalStorageKey.WaasXRedirectURI]: string + [LocalStorageKey.WaasXCodeVerifier]: string + [LocalStorageKey.WaasXIdToken]: string [LocalStorageKey.WaasGoogleClientID]: string [LocalStorageKey.WaasAppleClientID]: string [LocalStorageKey.WaasAppleRedirectURI]: string @@ -95,6 +104,14 @@ export function sequenceWaasWallet(params: BaseSequenceWaasConnectorOptions) { if (params.epicAuthUrl) { await config.storage?.setItem(LocalStorageKey.WaasEpicAuthUrl, params.epicAuthUrl) } + if (params.XClientId && params.XRedirectURI) { + const { code_challenge, code_verifier } = await getPkcePair() + const authUrl = await getXOauthUrl(params.XClientId, params.XRedirectURI, code_challenge) + await config.storage?.setItem(LocalStorageKey.WaasXAuthUrl, authUrl) + await config.storage?.setItem(LocalStorageKey.WaasXClientID, params.XClientId) + await config.storage?.setItem(LocalStorageKey.WaasXRedirectURI, params.XRedirectURI) + await config.storage?.setItem(LocalStorageKey.WaasXCodeVerifier, code_verifier) + } sequenceWaasProvider.on('error', error => { if (isSessionInvalidOrNotFoundError(error)) { @@ -112,6 +129,7 @@ export function sequenceWaasWallet(params: BaseSequenceWaasConnectorOptions) { const emailIdToken = await config.storage?.getItem(LocalStorageKey.WaasEmailIdToken) const appleIdToken = await config.storage?.getItem(LocalStorageKey.WaasAppleIdToken) const epicIdToken = await config.storage?.getItem(LocalStorageKey.WaasEpicIdToken) + const xIdToken = await config.storage?.getItem(LocalStorageKey.WaasXIdToken) let idToken: string | undefined @@ -123,16 +141,26 @@ export function sequenceWaasWallet(params: BaseSequenceWaasConnectorOptions) { idToken = appleIdToken } else if (params.loginType === 'epic' && epicIdToken) { idToken = epicIdToken + } else if (params.loginType === 'X' && xIdToken) { + idToken = xIdToken } await config.storage?.removeItem(LocalStorageKey.WaasGoogleIdToken) await config.storage?.removeItem(LocalStorageKey.WaasEmailIdToken) await config.storage?.removeItem(LocalStorageKey.WaasAppleIdToken) await config.storage?.removeItem(LocalStorageKey.WaasEpicIdToken) + await config.storage?.removeItem(LocalStorageKey.WaasXIdToken) if (idToken) { try { - const signInResponse = await provider.sequenceWaas.signIn({ idToken }, randomName()) + let signInResponse: SignInResponse | undefined + + if (params.loginType === 'X') { + signInResponse = await provider.sequenceWaas.signIn({ xAccessToken: idToken }, randomName()) + } else { + signInResponse = await provider.sequenceWaas.signIn({ idToken }, randomName()) + } + if (signInResponse?.email) { await config.storage?.setItem(LocalStorageKey.WaasSignInEmail, signInResponse.email) } diff --git a/packages/connect/src/constants/localStorage.ts b/packages/connect/src/constants/localStorage.ts index 508f72ba9..aa3222571 100644 --- a/packages/connect/src/constants/localStorage.ts +++ b/packages/connect/src/constants/localStorage.ts @@ -8,6 +8,11 @@ const WAAS_GOOGLE_ID_TOKEN = 'waasGoogleIdToken' const WAAS_APPLE_CLIENT_ID = 'waasAppleClientId' const WAAS_APPLE_REDIRECT_URI = 'waasAppleRedirectURI' const WAAS_APPLE_ID_TOKEN = 'waasAppleIdToken' +const WAAS_X_AUTH_URL = 'waasXAuthUrl' +const WAAS_X_CLIENT_ID = 'waasXClientId' +const WAAS_X_REDIRECT_URI = 'waasXRedirectURI' +const WAAS_X_CODE_VERIFIER = 'waasXCodeVerifier' +const WAAS_X_ID_TOKEN = 'waasXIdToken' const WAAS_EMAIL_ID_TOKEN = 'waasEmailIdToken' const WAAS_ACTIVE_LOGIN_TYPE = 'waasActiveLoginType' const WAAS_SIGN_IN_EMAIL = 'waasSignInEmail' @@ -26,6 +31,11 @@ export enum LocalStorageKey { WaasAppleClientID = `${PREFIX}.${WAAS_APPLE_CLIENT_ID}`, WaasAppleRedirectURI = `${PREFIX}.${WAAS_APPLE_REDIRECT_URI}`, WaasAppleIdToken = `${PREFIX}.${WAAS_APPLE_ID_TOKEN}`, + WaasXAuthUrl = `${PREFIX}.${WAAS_X_AUTH_URL}`, + WaasXClientID = `${PREFIX}.${WAAS_X_CLIENT_ID}`, + WaasXRedirectURI = `${PREFIX}.${WAAS_X_REDIRECT_URI}`, + WaasXCodeVerifier = `${PREFIX}.${WAAS_X_CODE_VERIFIER}`, + WaasXIdToken = `${PREFIX}.${WAAS_X_ID_TOKEN}`, WaasActiveLoginType = `${PREFIX}.${WAAS_ACTIVE_LOGIN_TYPE}`, WaasEmailIdToken = `${PREFIX}.${WAAS_EMAIL_ID_TOKEN}`, WaasSignInEmail = `${PREFIX}.${WAAS_SIGN_IN_EMAIL}`, diff --git a/packages/connect/src/index.ts b/packages/connect/src/index.ts index fcb5d64b9..6b063f540 100644 --- a/packages/connect/src/index.ts +++ b/packages/connect/src/index.ts @@ -70,6 +70,7 @@ export { useWalletConfigContext, WalletConfigContextProvider } from './contexts/ // Connectors export { apple, type AppleOptions } from './connectors/apple/apple.js' export { appleWaas, type AppleWaasOptions } from './connectors/apple/appleWaas.js' +export { XWaas, type XWaasOptions } from './connectors/X/XWaas.js' export { epicWaas, type EpicWaasOptions } from './connectors/epic/epicWaas.js' export { coinbaseWallet } from './connectors/coinbaseWallet/coinbaseWallet.js' export { discord, type DiscordOptions } from './connectors/discord/discord.js' diff --git a/packages/connect/src/types.ts b/packages/connect/src/types.ts index eaaa6e8dd..342da85e4 100644 --- a/packages/connect/src/types.ts +++ b/packages/connect/src/types.ts @@ -99,4 +99,9 @@ export type StorageItem = { [LocalStorageKey.WaasAppleRedirectURI]: string [LocalStorageKey.WaasActiveLoginType]: string [LocalStorageKey.WaasSignInEmail]: string + [LocalStorageKey.WaasXAuthUrl]: string + [LocalStorageKey.WaasXClientID]: string + [LocalStorageKey.WaasXRedirectURI]: string + [LocalStorageKey.WaasXCodeVerifier]: string + [LocalStorageKey.WaasXIdToken]: string } diff --git a/packages/hooks/package.json b/packages/hooks/package.json index 2d2d9eb2c..b5afc6041 100644 --- a/packages/hooks/package.json +++ b/packages/hooks/package.json @@ -31,20 +31,20 @@ "typecheck": "tsc --noEmit" }, "peerDependencies": { - "@0xsequence/api": ">=2.3.11", - "@0xsequence/indexer": ">=2.3.7", - "@0xsequence/metadata": ">=2.3.7", - "@0xsequence/network": ">=2.3.7", + "@0xsequence/api": ">=2.3.23", + "@0xsequence/indexer": ">=2.3.23", + "@0xsequence/metadata": ">=2.3.23", + "@0xsequence/network": ">=2.3.23", "@tanstack/react-query": ">= 5", "react": ">= 17", "react-dom": ">= 17", "viem": ">= 2.28.0" }, "devDependencies": { - "@0xsequence/api": "2.3.11", - "@0xsequence/indexer": "^2.3.10", - "@0xsequence/metadata": "^2.3.10", - "@0xsequence/network": "^2.3.10", + "@0xsequence/api": "2.3.23", + "@0xsequence/indexer": "^2.3.23", + "@0xsequence/metadata": "^2.3.23", + "@0xsequence/network": "^2.3.23", "@tanstack/react-query": "^5.74.11", "@testing-library/jest-dom": "^6.6.3", "@testing-library/react": "^16.3.0", diff --git a/packages/immutable-connector/package.json b/packages/immutable-connector/package.json index 04aebf5e6..e84c53569 100644 --- a/packages/immutable-connector/package.json +++ b/packages/immutable-connector/package.json @@ -34,7 +34,7 @@ }, "peerDependencies": { "@0xsequence/connect": "workspace:*", - "0xsequence": ">= 2.3.7", + "0xsequence": ">= 2.3.23", "@imtbl/config": ">=2.1.2", "@imtbl/sdk": ">=2.1.2", "ethers": "^6.13.0", diff --git a/packages/wallet-widget/package.json b/packages/wallet-widget/package.json index 3bb5d17ec..335d7312b 100644 --- a/packages/wallet-widget/package.json +++ b/packages/wallet-widget/package.json @@ -40,13 +40,13 @@ "qrcode.react": "^4.2.0" }, "peerDependencies": { - "@0xsequence/api": ">=2.3.11", + "@0xsequence/api": ">=2.3.23", "@0xsequence/checkout": "workspace:*", "@0xsequence/connect": "workspace:*", "@0xsequence/hooks": "workspace:*", - "@0xsequence/indexer": ">=2.3.7", - "@0xsequence/metadata": ">=2.3.7", - "@0xsequence/network": ">=2.3.7", + "@0xsequence/indexer": ">=2.3.23", + "@0xsequence/metadata": ">=2.3.23", + "@0xsequence/network": ">=2.3.23", "@tanstack/react-query": ">= 5", "ethers": ">= 6.13.0", "react": ">= 17", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d4decdbc7..494b9a7bc 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -108,11 +108,11 @@ importers: specifier: workspace:* version: link:../../packages/hooks '@0xsequence/network': - specifier: ^2.3.10 - version: 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + specifier: ^2.3.23 + version: 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) '@0xsequence/waas': - specifier: ^2.3.10 - version: 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + specifier: ^2.3.23 + version: 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) '@0xsequence/wallet-widget': specifier: workspace:* version: link:../../packages/wallet-widget @@ -184,11 +184,11 @@ importers: specifier: workspace:* version: link:../../packages/immutable-connector '@0xsequence/network': - specifier: ^2.3.10 - version: 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + specifier: ^2.3.23 + version: 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) '@0xsequence/waas': - specifier: ^2.3.10 - version: 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + specifier: ^2.3.23 + version: 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) '@0xsequence/wallet-widget': specifier: workspace:* version: link:../../packages/wallet-widget @@ -266,11 +266,11 @@ importers: packages/checkout: dependencies: 0xsequence: - specifier: '>= 2.3.7' - version: 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + specifier: '>= 2.3.23' + version: 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) '@0xsequence/api': - specifier: '>=2.3.11' - version: 2.3.11 + specifier: '>=2.3.23' + version: 2.3.23 '@0xsequence/design-system': specifier: 2.1.11 version: 2.1.11(@types/react-dom@19.1.6(@types/react@19.1.6))(@types/react@19.1.6)(motion@12.16.0(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(react-dom@19.1.0(react@19.1.0))(react@19.1.0) @@ -278,20 +278,20 @@ importers: specifier: workspace:* version: link:../hooks '@0xsequence/indexer': - specifier: '>= 2.3.7' - version: 2.3.17 + specifier: '>= 2.3.23' + version: 2.3.23 '@0xsequence/marketplace': - specifier: ^2.3.10 - version: 2.3.17 + specifier: ^2.3.23 + version: 2.3.23 '@0xsequence/metadata': - specifier: '>= 2.3.7' - version: 2.3.17 + specifier: '>= 2.3.23' + version: 2.3.23 '@0xsequence/network': - specifier: '>= 2.3.7' - version: 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + specifier: '>= 2.3.23' + version: 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) '@0xsequence/waas': - specifier: '>= 2.3.7' - version: 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + specifier: '>= 2.3.23' + version: 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) date-fns: specifier: ^4.1.0 version: 4.1.0 @@ -339,14 +339,14 @@ importers: packages/connect: dependencies: '@0xsequence/api': - specifier: '>=2.3.11' - version: 2.3.11 + specifier: '>=2.3.23' + version: 2.3.23 '@0xsequence/auth': - specifier: ^2.3.10 - version: 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + specifier: ^2.3.23 + version: 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) '@0xsequence/core': - specifier: ^2.3.10 - version: 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + specifier: ^2.3.23 + version: 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) '@0xsequence/design-system': specifier: 2.1.11 version: 2.1.11(@types/react-dom@19.1.6(@types/react@19.1.6))(@types/react@19.1.6)(motion@12.16.0(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(react-dom@19.1.0(react@19.1.0))(react@19.1.0) @@ -354,23 +354,23 @@ importers: specifier: ^1.0.0 version: 1.0.0(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) '@0xsequence/indexer': - specifier: ^2.3.10 - version: 2.3.17 + specifier: ^2.3.23 + version: 2.3.23 '@0xsequence/metadata': - specifier: ^2.3.10 - version: 2.3.17 + specifier: ^2.3.23 + version: 2.3.23 '@0xsequence/network': - specifier: ^2.3.10 - version: 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + specifier: ^2.3.23 + version: 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) '@0xsequence/provider': - specifier: ^2.3.10 - version: 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + specifier: ^2.3.23 + version: 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) '@0xsequence/utils': - specifier: ^2.3.10 - version: 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + specifier: ^2.3.23 + version: 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) '@0xsequence/waas': - specifier: ^2.3.10 - version: 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + specifier: ^2.3.23 + version: 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) '@databeat/tracker': specifier: ^0.9.3 version: 0.9.3 @@ -400,8 +400,8 @@ importers: version: 10.0.0 devDependencies: 0xsequence: - specifier: ^2.3.10 - version: 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + specifier: ^2.3.23 + version: 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) '@0xsequence/hooks': specifier: workspace:* version: link:../hooks @@ -433,17 +433,17 @@ importers: packages/hooks: devDependencies: '@0xsequence/api': - specifier: 2.3.11 - version: 2.3.11 + specifier: 2.3.23 + version: 2.3.23 '@0xsequence/indexer': - specifier: ^2.3.10 - version: 2.3.17 + specifier: ^2.3.23 + version: 2.3.23 '@0xsequence/metadata': - specifier: ^2.3.10 - version: 2.3.17 + specifier: ^2.3.23 + version: 2.3.23 '@0xsequence/network': - specifier: ^2.3.10 - version: 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + specifier: ^2.3.23 + version: 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) '@tanstack/react-query': specifier: ^5.74.11 version: 5.80.5(react@19.1.0) @@ -487,8 +487,8 @@ importers: packages/immutable-connector: dependencies: 0xsequence: - specifier: '>= 2.3.7' - version: 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + specifier: '>= 2.3.23' + version: 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) '@0xsequence/connect': specifier: workspace:* version: link:../connect @@ -517,8 +517,8 @@ importers: packages/wallet-widget: dependencies: '@0xsequence/api': - specifier: '>=2.3.11' - version: 2.3.11 + specifier: '>=2.3.23' + version: 2.3.23 '@0xsequence/design-system': specifier: 2.1.11 version: 2.1.11(@types/react-dom@19.1.6(@types/react@19.1.6))(@types/react@19.1.6)(motion@12.16.0(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(react-dom@19.1.0(react@19.1.0))(react@19.1.0) @@ -526,14 +526,14 @@ importers: specifier: workspace:* version: link:../hooks '@0xsequence/indexer': - specifier: '>=2.3.7' - version: 2.3.17 + specifier: '>=2.3.23' + version: 2.3.23 '@0xsequence/metadata': - specifier: '>=2.3.7' - version: 2.3.17 + specifier: '>=2.3.23' + version: 2.3.23 '@0xsequence/network': - specifier: '>=2.3.7' - version: 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + specifier: '>=2.3.23' + version: 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) '@radix-ui/react-popover': specifier: ^1.1.11 version: 1.1.14(@types/react-dom@19.1.6(@types/react@19.1.6))(@types/react@19.1.6)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) @@ -580,27 +580,27 @@ importers: packages: - 0xsequence@2.3.17: - resolution: {integrity: sha512-/fkAFKT1I6r4H/gSmPZ4P2zP9TN84sL8PjzVUtcuKUetFJEjXYiZVRQTOdzjgNu1QTuAY+EeCZZoxyLag45aWA==} + 0xsequence@2.3.23: + resolution: {integrity: sha512-h+BLPjTJsua3QmVGprgo5/2M4+teezXoZ//OSNNVVPm+Tk+yOUgEmJjGJB6J8xEyUtARPCEjOl7W5PVeDcrLgw==} peerDependencies: ethers: '>=6' '@0xsequence/abi@2.3.17': resolution: {integrity: sha512-9q2pq3OmOgBAbYInF+gOlKb+g2zN5zGPCJtmBfYQcLrqUI/FayHRBBPFKjmA294ABzYV6/ChvWvupW680YeFaQ==} - '@0xsequence/account@2.3.17': - resolution: {integrity: sha512-fEM0TXdBGXeKA4ooSuVRubhN8xe1O40d4FcTIGvrhj8VahUjcxjjf1ln3eCuF/3IrWna077EiELHXQHsSBlHYQ==} + '@0xsequence/abi@2.3.23': + resolution: {integrity: sha512-N5bVeCAKaHQ6+M8lKVlPfNcbmp3s10BBLNiqM1XzIGuzl5BKxBj0S9h4Vb7cd//3ALxgqYjwRvxi760wIDnyCA==} + + '@0xsequence/account@2.3.23': + resolution: {integrity: sha512-GW/I76VKhOvSHOivB1OVrVSLknqC34T6SYRecPrEEVHRbm6+Ntjb8jNzF+virMOHWIeA+QDjaDIw7vwsFia8GA==} peerDependencies: ethers: '>=6' - '@0xsequence/api@2.3.11': - resolution: {integrity: sha512-2GA+I7E6TWucAdeSP4gEPGDjXUihS+MWrveqlnBroCOUlnKqkownPOflm0tDueGhfrfp1ZkvRP0eGsAt09M0SA==} - - '@0xsequence/api@2.3.17': - resolution: {integrity: sha512-FC65y3VjIl7/stTK9Iy5804aqn0EUteBkYCW3ehbhksk7P46YyGPtNmaKMxTh7cHYuw1+Cmb0w7kffkyn2G3kw==} + '@0xsequence/api@2.3.23': + resolution: {integrity: sha512-dzH/ZC0ukt8L10bb4Vie/lppU91prEFAOmrGvunXlh9VkN/A2pz3sn8TFfMlMM9d9j5Q3OP4Jzyw6hyabIo7hw==} - '@0xsequence/auth@2.3.17': - resolution: {integrity: sha512-afeL/idwM6jWHvP0lwDpug/BMxMRG7/1dn3olbO39fHoKNetIiQKTdGHLe+wEX44hAM5HCv4j3EVUSDTBORMOw==} + '@0xsequence/auth@2.3.23': + resolution: {integrity: sha512-2yY0sp9N6fXiocSEqmLXvwLOQUhQ9MsvwcwAmr+76thg5aifnuzJJaEAaCRolo8sfyy9no6y8Ll8NHr4aduQEQ==} peerDependencies: ethers: '>=6' @@ -609,6 +609,11 @@ packages: peerDependencies: ethers: '>=6' + '@0xsequence/core@2.3.23': + resolution: {integrity: sha512-0y6TidFNJFYQF2yqGXScWYZTuGy651qwBH+9fQKRjzGSa0eXpe3zkccqiNuTtOXpR5QHBVGJ2U69SbK3ajzKEA==} + peerDependencies: + ethers: '>=6' + '@0xsequence/design-system@2.1.11': resolution: {integrity: sha512-wfuY9v2dNQxw9qAYyflwcKzuiiVqm4qqn2Jkoyw/CqxODcqQ3orUsGxjnbyvCWOwvHbH908c4LOZj/TBI6T0Fw==} peerDependencies: @@ -621,22 +626,25 @@ packages: peerDependencies: ethers: '>=6' - '@0xsequence/guard@2.3.17': - resolution: {integrity: sha512-flG/XXAQkJulOtjt+DPdZwJZgzQX6m6iBn9g5mJDnZLIPvF0L+QLnR5hw6kzWyQ4P732DeJ/yTMhFHIa/aduJw==} + '@0xsequence/guard@2.3.23': + resolution: {integrity: sha512-nMFChM4TMuyqzKWsDrRyCmF+rYpiCAFVgg2D6hHQnYFSVqzUW36H3yHswztUtNXYuLX4ZGuk7kWmJgS6GWxquA==} peerDependencies: ethers: '>=6' '@0xsequence/indexer@2.3.17': resolution: {integrity: sha512-2oJOqML1FK/gbEqWENX3FSdQ+29BDGMzX8Eb5g8T60mGpbs+oLUS9FEcMqZkb0i8jy+bSSnzPj/QBk3PevLI9Q==} - '@0xsequence/marketplace@2.3.17': - resolution: {integrity: sha512-g1COJ2ZqbRyfqxuOkpoD/4Y29dAxas2sj+nOiZFvQHyCW9jPqziYbMtAurhjHXgh22qQlUaL3vsdhxYFdmovaA==} + '@0xsequence/indexer@2.3.23': + resolution: {integrity: sha512-wYOPGDucEB+h4qujS4TqZ25pehdhByDLxsMLVDA4VFH0AFZlAt7Pq9hQznbQNnLwRPm+DHE/QB//qcPRvCiEFQ==} + + '@0xsequence/marketplace@2.3.23': + resolution: {integrity: sha512-oJ8escRaa846mOgy27AqUdlnJmhQJL0Afp4nSlsQNBBjNBKq8+IB7CofSKcxRVIe4YQlfgnUwsRim19bmsAjBg==} - '@0xsequence/metadata@2.3.17': - resolution: {integrity: sha512-0/VQ8y3q8AIFTNL8vdQ1n1HNrf9+HrSZui7fMs1flITFGVU1+rQo4TYSETu/JeAKjfGkdoe07Z9BdtaL5k8fhg==} + '@0xsequence/metadata@2.3.23': + resolution: {integrity: sha512-Jaz7JvOwLgyoKdghEUmAhNGXMnyeorsJYOKilVHUIg2zebCIf77QzGfoSK1uJJd9nZNO3THLz5LWNNTOb93bpA==} - '@0xsequence/migration@2.3.17': - resolution: {integrity: sha512-F727/qzRL/WvFbSD1sx1zR0Ous9yGdbYSdTBhqYJrECcCTHZ+jdLKUN8letsBG9J4CdReASLKiacHgUh5l1GTg==} + '@0xsequence/migration@2.3.23': + resolution: {integrity: sha512-u2PzPw6fowDueh8pbiJfeM9nHgkLRhJk/xVMoyOUTQt69+yAW2PDIkNzqLEpb2XkxECx2tXTBpn1m/jL52ZDaQ==} peerDependencies: ethers: '>=6' @@ -645,8 +653,13 @@ packages: peerDependencies: ethers: '>=6' - '@0xsequence/provider@2.3.17': - resolution: {integrity: sha512-CpNVUn/Fdzzkh0eXD8tXeBqgonGDOVGHshBYOkAFWv/UtyMyVDYXKXuVO1RoGXCaPd6gsy77djdV8xmUOWnyEQ==} + '@0xsequence/network@2.3.23': + resolution: {integrity: sha512-7p0iTcFpkzQvh5saainlD95MZmUlMkZ+BiGzu/qT1gXYhUHEm5soq9wcII1JztgHaXgb+naS6PVTKB+z9eijYg==} + peerDependencies: + ethers: '>=6' + + '@0xsequence/provider@2.3.23': + resolution: {integrity: sha512-cBSugJw84x01eBjsyysnkpZJ9PaZG7JyVu//Pa4tkTEI5GpnVe2TUa/zpk/rExMkEdfTZPpBpRcMnEz0Vvuyqw==} peerDependencies: ethers: '>=6' @@ -655,18 +668,23 @@ packages: peerDependencies: ethers: '>=6' - '@0xsequence/replacer@2.3.17': - resolution: {integrity: sha512-GhY9wUtkDYqZuw1CswHl6Nv5IYl3zZvl+GHQyRpHxytYtFweluHo3cBYne5k6i0rtgem2AnOtBCSJmPrapBRDg==} + '@0xsequence/relayer@2.3.23': + resolution: {integrity: sha512-6b+ZjS2PWBM46awtPunfudCuvNUok7AUuuQiP5cukgTV949t5heoL9sY+FnJCVNEGayuqyghqMP4pyBmGgpo1w==} peerDependencies: ethers: '>=6' - '@0xsequence/sessions@2.3.17': - resolution: {integrity: sha512-laaA687//uiKybQwfhmSYjncQmfr1KOrRAY5iXLoaQQaK2Npe7amB/MIbymytx7zNCIcXulkoWg2sLiE4VE0Wg==} + '@0xsequence/replacer@2.3.23': + resolution: {integrity: sha512-72+F6UYXlf196Vg72KEnCZiRkvw1QqmRbquqINJx2zI5z8GySql6aPvBfzSaWh53Z6ojS0SyVKD73hXagJjIDQ==} peerDependencies: ethers: '>=6' - '@0xsequence/signhub@2.3.17': - resolution: {integrity: sha512-AfrdHWD0g9CRH7pomxSZDFolRuQtN6dCOXeasXXGvfj/H+HT9PsVKeKw1QJ1Ub9/BhHzc+g07L0ZZs8aU6kQDg==} + '@0xsequence/sessions@2.3.23': + resolution: {integrity: sha512-5XfzpnNFL0XvxL19+C+YGTzTo0OAnJYy+5NyDTublQ+2hmF+iRzTizZ1ETUW9aT68ttUbRPdW7HsiasjXEGOHg==} + peerDependencies: + ethers: '>=6' + + '@0xsequence/signhub@2.3.23': + resolution: {integrity: sha512-gPHtJ55DKN02D/6NsUKZ0zdCRxolR2N1eGUj7a1otioCM1MInTo2v3dttF3zip5sp9holw1kaYIeZrlrnbQXWQ==} peerDependencies: ethers: '>=6' @@ -675,13 +693,18 @@ packages: peerDependencies: ethers: '>=6' - '@0xsequence/waas@2.3.17': - resolution: {integrity: sha512-P/3SOrh1ZPGI3S8Kfx9xBlzTcudn/YFAmvxDssvMvl3KHG3bsLlMyL1/1x4ooNjYKvTeBaDXJ+I+E1Z4BEi/Vg==} + '@0xsequence/utils@2.3.23': + resolution: {integrity: sha512-Ak4/QuginegFw/tnpyb9u0aw8fA6XHdLH9JjM0jsRrPyM5v6KqKFQoCrCssQfXeBxuHaWs+ABxf5gL9TKpDBng==} + peerDependencies: + ethers: '>=6' + + '@0xsequence/waas@2.3.23': + resolution: {integrity: sha512-k1oSBbGHkDIhzJ98RAbElcvQuNpfSyt3J6EW0xh+K+Gc01OKsMR0TPOQ+7ofTtouJomN9Rb1s5gNXmZvUaTWSA==} peerDependencies: ethers: '>=6' - '@0xsequence/wallet@2.3.17': - resolution: {integrity: sha512-kPuxet2u9jej2jsXv4URPT21lsR2reQsFyyYI7OUhYlEhWpyEGZkoQGCp1HcK2XbBhL1RhA/i6BTnh0ewuu0Qw==} + '@0xsequence/wallet@2.3.23': + resolution: {integrity: sha512-+oVM4bmVWLfK5UrLSBkwNTP2jlJxLRGM+3+8pdFAWb6znGRGvoXWVzUY5j7PFAJM8l3YnIwSjrtjugDwMxvJTg==} peerDependencies: ethers: '>=6' @@ -7790,59 +7813,59 @@ packages: snapshots: - 0xsequence@2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)): - dependencies: - '@0xsequence/abi': 2.3.17 - '@0xsequence/account': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/api': 2.3.17 - '@0xsequence/auth': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/core': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/guard': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/indexer': 2.3.17 - '@0xsequence/metadata': 2.3.17 - '@0xsequence/migration': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/network': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/provider': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/relayer': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/sessions': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/signhub': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/utils': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/wallet': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + 0xsequence@2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)): + dependencies: + '@0xsequence/abi': 2.3.23 + '@0xsequence/account': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/api': 2.3.23 + '@0xsequence/auth': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/core': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/guard': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/indexer': 2.3.23 + '@0xsequence/metadata': 2.3.23 + '@0xsequence/migration': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/network': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/provider': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/relayer': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/sessions': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/signhub': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/utils': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/wallet': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) ethers: 6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) '@0xsequence/abi@2.3.17': {} - '@0xsequence/account@2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))': + '@0xsequence/abi@2.3.23': {} + + '@0xsequence/account@2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))': dependencies: - '@0xsequence/abi': 2.3.17 - '@0xsequence/core': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/migration': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/network': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/relayer': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/sessions': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/utils': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/wallet': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/abi': 2.3.23 + '@0xsequence/core': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/migration': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/network': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/relayer': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/sessions': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/utils': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/wallet': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) ethers: 6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) - '@0xsequence/api@2.3.11': {} - - '@0xsequence/api@2.3.17': {} + '@0xsequence/api@2.3.23': {} - '@0xsequence/auth@2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))': + '@0xsequence/auth@2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))': dependencies: - '@0xsequence/abi': 2.3.17 - '@0xsequence/account': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/api': 2.3.17 - '@0xsequence/core': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/abi': 2.3.23 + '@0xsequence/account': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/api': 2.3.23 + '@0xsequence/core': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) '@0xsequence/ethauth': 1.0.0(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/indexer': 2.3.17 - '@0xsequence/metadata': 2.3.17 - '@0xsequence/migration': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/network': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/sessions': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/signhub': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/utils': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/wallet': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/indexer': 2.3.23 + '@0xsequence/metadata': 2.3.23 + '@0xsequence/migration': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/network': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/sessions': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/signhub': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/utils': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/wallet': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) ethers: 6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) '@0xsequence/core@2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))': @@ -7851,6 +7874,12 @@ snapshots: '@0xsequence/utils': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) ethers: 6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) + '@0xsequence/core@2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))': + dependencies: + '@0xsequence/abi': 2.3.23 + '@0xsequence/utils': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + ethers: 6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) + '@0xsequence/design-system@2.1.11(@types/react-dom@19.1.6(@types/react@19.1.6))(@types/react@19.1.6)(motion@12.16.0(react-dom@19.1.0(react@19.1.0))(react@19.1.0))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)': dependencies: '@radix-ui/react-aspect-ratio': 1.1.7(@types/react-dom@19.1.6(@types/react@19.1.6))(@types/react@19.1.6)(react-dom@19.1.0(react@19.1.0))(react@19.1.0) @@ -7883,25 +7912,27 @@ snapshots: ethers: 6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) js-base64: 3.7.7 - '@0xsequence/guard@2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))': + '@0xsequence/guard@2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))': dependencies: - '@0xsequence/account': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/core': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/signhub': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/utils': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/account': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/core': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/signhub': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/utils': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) ethers: 6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) '@0xsequence/indexer@2.3.17': {} - '@0xsequence/marketplace@2.3.17': {} + '@0xsequence/indexer@2.3.23': {} + + '@0xsequence/marketplace@2.3.23': {} - '@0xsequence/metadata@2.3.17': {} + '@0xsequence/metadata@2.3.23': {} - '@0xsequence/migration@2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))': + '@0xsequence/migration@2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))': dependencies: - '@0xsequence/abi': 2.3.17 - '@0xsequence/core': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/wallet': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/abi': 2.3.23 + '@0xsequence/core': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/wallet': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) ethers: 6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) '@0xsequence/network@2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))': @@ -7912,17 +7943,25 @@ snapshots: '@0xsequence/utils': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) ethers: 6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) - '@0xsequence/provider@2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))': + '@0xsequence/network@2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))': dependencies: - '@0xsequence/abi': 2.3.17 - '@0xsequence/account': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/auth': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/core': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/migration': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/network': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/relayer': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/utils': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/wallet': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/core': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/indexer': 2.3.23 + '@0xsequence/relayer': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/utils': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + ethers: 6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) + + '@0xsequence/provider@2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))': + dependencies: + '@0xsequence/abi': 2.3.23 + '@0xsequence/account': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/auth': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/core': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/migration': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/network': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/relayer': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/utils': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/wallet': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) '@databeat/tracker': 0.9.3 ethers: 6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) eventemitter2: 6.4.9 @@ -7935,24 +7974,31 @@ snapshots: '@0xsequence/utils': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) ethers: 6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) - '@0xsequence/replacer@2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))': + '@0xsequence/relayer@2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))': dependencies: - '@0xsequence/abi': 2.3.17 - '@0xsequence/core': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/abi': 2.3.23 + '@0xsequence/core': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/utils': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) ethers: 6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) - '@0xsequence/sessions@2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))': + '@0xsequence/replacer@2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))': dependencies: - '@0xsequence/core': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/migration': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/replacer': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/utils': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/abi': 2.3.23 + '@0xsequence/core': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + ethers: 6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) + + '@0xsequence/sessions@2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))': + dependencies: + '@0xsequence/core': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/migration': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/replacer': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/utils': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) ethers: 6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) idb: 7.1.1 - '@0xsequence/signhub@2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))': + '@0xsequence/signhub@2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))': dependencies: - '@0xsequence/core': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/core': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) ethers: 6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) '@0xsequence/utils@2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))': @@ -7960,11 +8006,16 @@ snapshots: ethers: 6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) js-base64: 3.7.7 - '@0xsequence/waas@2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))': + '@0xsequence/utils@2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))': dependencies: - '@0xsequence/core': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/network': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/utils': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + ethers: 6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) + js-base64: 3.7.7 + + '@0xsequence/waas@2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))': + dependencies: + '@0xsequence/core': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/network': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/utils': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) '@aws-sdk/client-cognito-identity-provider': 3.823.0 ethers: 6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) idb: 7.1.1 @@ -7973,14 +8024,14 @@ snapshots: transitivePeerDependencies: - aws-crt - '@0xsequence/wallet@2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))': + '@0xsequence/wallet@2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))': dependencies: - '@0xsequence/abi': 2.3.17 - '@0xsequence/core': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/network': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/relayer': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/signhub': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) - '@0xsequence/utils': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/abi': 2.3.23 + '@0xsequence/core': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/network': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/relayer': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/signhub': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/utils': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) ethers: 6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) '@adobe/css-tools@4.4.3': {} @@ -9356,7 +9407,7 @@ snapshots: '@imtbl/passport@2.2.4(bufferutil@4.0.9)(utf-8-validate@5.0.10)': dependencies: '@0xsequence/abi': 2.3.17 - '@0xsequence/core': 2.3.17(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@0xsequence/core': 2.3.23(ethers@6.14.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)) '@imtbl/config': 2.2.4 '@imtbl/generated-clients': 2.2.4 '@imtbl/metrics': 2.2.4