diff --git a/.changeset/add-classified-transactions-hook.md b/.changeset/add-classified-transactions-hook.md
new file mode 100644
index 0000000..743f2ff
--- /dev/null
+++ b/.changeset/add-classified-transactions-hook.md
@@ -0,0 +1,5 @@
+---
+"@solana/react-hooks": minor
+---
+
+Add `useClassifiedTransactions` hook for fetching classified Solana transactions with automatic spam filtering, protocol detection, and transaction classification via tx-indexer SDK. The hook supports cursor-based pagination through `oldestSignature` and `hasMore` return values.
diff --git a/apps/docs/content/docs/react-hooks.mdx b/apps/docs/content/docs/react-hooks.mdx
index b871d51..e5d9d7a 100644
--- a/apps/docs/content/docs/react-hooks.mdx
+++ b/apps/docs/content/docs/react-hooks.mdx
@@ -221,6 +221,181 @@ function NonceInfo({ address }: { address: string }) {
}
```
+### useClassifiedTransactions
+
+Fetch and classify transactions for a wallet address with automatic spam filtering, protocol detection, and token metadata enrichment:
+
+```tsx
+import { useClassifiedTransactions } from "@solana/react-hooks";
+
+function TransactionHistory({ address }: { address: string }) {
+ const { transactions, isLoading, isError, hasMore, oldestSignature } =
+ useClassifiedTransactions({
+ address,
+ options: { limit: 10 },
+ });
+
+ if (isLoading) return
Loading...
;
+ if (isError) return Error loading transactions
;
+
+ return (
+
+ {transactions.map((tx) => (
+
+
{tx.classification.primaryType}
+ {tx.classification.primaryAmount && (
+
+ {tx.classification.primaryAmount.amountUi}{" "}
+ {tx.classification.primaryAmount.token.symbol}
+
+ )}
+ {tx.tx.protocol &&
via {tx.tx.protocol.name}
}
+
+ ))}
+
+ );
+}
+```
+
+**Pagination example:**
+
+```tsx
+function PaginatedHistory({ address }: { address: string }) {
+ const [cursor, setCursor] = useState();
+
+ const { transactions, oldestSignature, hasMore, isLoading } =
+ useClassifiedTransactions({
+ address,
+ options: { limit: 20, before: cursor },
+ });
+
+ return (
+
+ {transactions.map((tx) => (
+
+ ))}
+ {hasMore && (
+ setCursor(oldestSignature ?? undefined)}
+ disabled={isLoading}
+ >
+ Load More
+
+ )}
+
+ );
+}
+```
+
+**Rate-limited RPC configuration:**
+
+```tsx
+// Conservative settings for public RPCs (e.g., devnet)
+const { transactions } = useClassifiedTransactions({
+ address,
+ options: {
+ limit: 5,
+ overfetchMultiplier: 1,
+ transactionConcurrency: 1,
+ },
+ swr: {
+ revalidateOnFocus: false,
+ revalidateOnReconnect: false,
+ },
+});
+```
+
+**Options:**
+
+| Option | Default | Description |
+| --- | --- | --- |
+| `limit` | `10` | Max transactions per request |
+| `before` | — | Pagination cursor (oldest signature from previous request) |
+| `until` | — | Stop fetching at this signature |
+| `cluster` | auto | Override auto-detected cluster (`'mainnet-beta'` \| `'devnet'` \| `'testnet'`) |
+| `filterSpam` | `true` | Filter out spam/dust transactions |
+| `includeTokenAccounts` | `false` | Query ATAs for incoming token transfers |
+| `maxTokenAccounts` | `5` | Max ATAs to query when `includeTokenAccounts` is enabled |
+| `enrichTokenMetadata` | `true` | Add token symbols and names |
+| `enrichNftMetadata` | `true` | Add NFT metadata (requires DAS RPC) |
+| `overfetchMultiplier` | `1` | Signature overfetch multiplier (increase for high-spam wallets) |
+| `minPageSize` | `20` | Min signatures per iteration |
+| `transactionConcurrency` | `1` | Parallel transaction fetches |
+
+**Response Structure:**
+
+Each item in the `transactions` array is a `ClassifiedTransaction`:
+
+```ts
+interface ClassifiedTransaction {
+ // Raw transaction data
+ tx: {
+ signature: string;
+ slot: number | bigint;
+ blockTime: number | bigint | null;
+ fee?: number;
+ err: any | null;
+ programIds: string[];
+ protocol: {
+ id: string;
+ name: string; // e.g. "Jupiter", "Raydium"
+ iconUrl?: string;
+ } | null;
+ memo?: string | null;
+ };
+
+ // High-level classification
+ classification: {
+ primaryType:
+ | "transfer" | "swap" | "nft_purchase" | "nft_sale"
+ | "nft_mint" | "stake_deposit" | "stake_withdraw"
+ | "airdrop" | "bridge_in" | "bridge_out"
+ | "privacy_deposit" | "privacy_withdraw" // Privacy Cash
+ | "fee_only" | "other";
+ primaryAmount: MoneyAmount | null; // Main amount
+ secondaryAmount?: MoneyAmount | null; // e.g., swap output
+ sender?: string | null;
+ receiver?: string | null;
+ counterparty: {
+ type: "person" | "merchant" | "exchange" | "protocol" | "own_wallet" | "unknown";
+ address: string;
+ name?: string;
+ } | null;
+ confidence: number; // 0-1
+ metadata?: Record; // e.g., nft_mint, nft_name
+ };
+
+ // Individual token/SOL movements
+ legs: Array<{
+ accountId: string;
+ side: "debit" | "credit"; // debit = out, credit = in
+ amount: MoneyAmount;
+ role: "sent" | "received" | "fee" | "reward" | "protocol_deposit" | "protocol_withdraw" | "unknown";
+ }>;
+}
+
+interface MoneyAmount {
+ token: {
+ mint: string;
+ symbol: string; // e.g. "SOL", "USDC"
+ name?: string;
+ decimals: number;
+ logoURI?: string;
+ };
+ amountRaw: string; // Raw amount (e.g., "1000000000")
+ amountUi: number; // Human-readable (e.g., 1.0)
+ fiat?: {
+ currency: "USD" | "EUR";
+ amount: number;
+ pricePerUnit: number;
+ };
+}
+```
+
+**Understanding Legs:**
+
+Legs are the individual token movements within a transaction. A simple SOL transfer has 2 legs (sender debit, receiver credit), while a swap has 4+ legs (token out, token in, fees). Use `classification.primaryAmount` for high-level summaries, and `legs` for granular movement details.
+
## Transfer Hooks
### useSolTransfer
@@ -646,6 +821,7 @@ export function App() {
| `useAccount` | Fetch and watch account |
| `useLookupTable` | Fetch lookup table |
| `useNonceAccount` | Fetch nonce account |
+| `useClassifiedTransactions` | Fetch classified transaction history |
| `useProgramAccounts` | Query program accounts |
### Transaction Hooks
diff --git a/examples/vite-react/src/App.tsx b/examples/vite-react/src/App.tsx
index 92d41fc..4f0a9f6 100644
--- a/examples/vite-react/src/App.tsx
+++ b/examples/vite-react/src/App.tsx
@@ -5,6 +5,7 @@ import { Suspense } from 'react';
import { AccountInspectorCard } from './components/AccountInspectorCard.tsx';
import { AirdropCard } from './components/AirdropCard.tsx';
import { BalanceCard } from './components/BalanceCard.tsx';
+import { ClassifiedTransactionsCard } from './components/ClassifiedTransactionsCard.tsx';
import { ClusterStatusCard } from './components/ClusterStatusCard.tsx';
import { LatestBlockhashCard } from './components/LatestBlockhashCard.tsx';
import { ProgramAccountsCard } from './components/ProgramAccountsCard.tsx';
@@ -95,6 +96,7 @@ function DemoApp() {
fallback={Loading queries…
}
>
+
diff --git a/examples/vite-react/src/components/ClassifiedTransactionsCard.tsx b/examples/vite-react/src/components/ClassifiedTransactionsCard.tsx
new file mode 100644
index 0000000..e9869db
--- /dev/null
+++ b/examples/vite-react/src/components/ClassifiedTransactionsCard.tsx
@@ -0,0 +1,145 @@
+import { useClassifiedTransactions, useWallet } from '@solana/react-hooks';
+import { type ChangeEvent, useEffect, useMemo, useRef, useState } from 'react';
+
+import { Button } from './ui/button';
+import { Card, CardContent, CardDescription, CardHeader, CardTitle } from './ui/card';
+import { Input } from './ui/input';
+
+function formatError(error: unknown): string {
+ if (error instanceof Error) {
+ return error.message;
+ }
+ if (typeof error === 'string') {
+ return error;
+ }
+ return JSON.stringify(error);
+}
+
+export function ClassifiedTransactionsCard() {
+ const wallet = useWallet();
+ const [address, setAddress] = useState('');
+ const [selectedTxIndex, setSelectedTxIndex] = useState
(null);
+
+ // Track if we've auto-filled from wallet to avoid overwriting user input
+ const hasAutoFilled = useRef(false);
+
+ useEffect(() => {
+ if (wallet.status === 'connected' && !hasAutoFilled.current && address === '') {
+ setAddress(wallet.session.account.address.toString());
+ hasAutoFilled.current = true;
+ }
+ }, [wallet, address]);
+
+ const trimmedAddress = address.trim();
+ const { transactions, isLoading, isError, error } = useClassifiedTransactions({
+ address: trimmedAddress === '' ? undefined : trimmedAddress,
+ options: {
+ limit: 5,
+ filterSpam: true,
+ },
+ swr: {
+ revalidateOnFocus: false,
+ revalidateOnReconnect: false,
+ revalidateIfStale: false,
+ },
+ });
+
+ const handleChange = (event: ChangeEvent) => {
+ setAddress(event.target.value);
+ setSelectedTxIndex(null);
+ };
+
+ const selectedTxJson = useMemo(() => {
+ if (selectedTxIndex === null || !transactions[selectedTxIndex]) {
+ return null;
+ }
+ return JSON.stringify(transactions[selectedTxIndex], (_, v) => (typeof v === 'bigint' ? v.toString() : v), 2);
+ }, [selectedTxIndex, transactions]);
+
+ return (
+
+
+
+ Classified Transactions
+
+ Test the useClassifiedTransactions hook. Fetches and classifies transactions with
+ spam filtering and protocol detection.
+
+
+
+
+
+ Wallet Address
+
+
+
+
+ Status:
+
+ {isLoading ? 'Loading...' : isError ? 'Error' : `${transactions.length} transactions`}
+
+
+
+ {isError && error ? (
+
+ {formatError(error)}
+
+ ) : null}
+
+ {transactions.length > 0 ? (
+
+ {transactions.map((tx, index) => (
+
setSelectedTxIndex(selectedTxIndex === index ? null : index)}
+ >
+
+ {tx.classification.primaryType}
+
+ {tx.classification.confidence.toFixed(2)} confidence
+
+
+ {tx.classification.primaryAmount && (
+
+ {tx.classification.primaryAmount.amountUi.toFixed(4)}{' '}
+ {tx.classification.primaryAmount.token.symbol}
+
+ )}
+
+ {String(tx.tx.signature).slice(0, 20)}...
+
+ {tx.tx.protocol && (
+
+
+ {tx.tx.protocol.name}
+
+
+ )}
+
+ ))}
+
+ ) : null}
+
+ {selectedTxJson !== null ? (
+
+
+ Transaction Structure
+ setSelectedTxIndex(null)}>
+ Close
+
+
+
{selectedTxJson}
+
+ ) : null}
+
+
+ );
+}
diff --git a/packages/react-hooks/README.md b/packages/react-hooks/README.md
index 2acb770..d72f020 100644
--- a/packages/react-hooks/README.md
+++ b/packages/react-hooks/README.md
@@ -248,6 +248,190 @@ function NonceInfo({ address }: { address: string }) {
}
```
+### Fetch classified transactions
+
+Fetch and classify transactions for a wallet with automatic spam filtering, protocol detection, and token metadata:
+
+```tsx
+import { useClassifiedTransactions } from "@solana/react-hooks";
+
+function TransactionHistory({ address }: { address: string }) {
+ const { transactions, isLoading, isError, hasMore, oldestSignature } =
+ useClassifiedTransactions({
+ address,
+ options: { limit: 10 },
+ });
+
+ if (isLoading) return Loading…
;
+ if (isError) return Error loading transactions
;
+
+ return (
+
+ {transactions.map((tx) => (
+
+ {tx.classification.primaryType}
+ {tx.classification.primaryAmount && (
+ <>
+ : {tx.classification.primaryAmount.amountUi}{" "}
+ {tx.classification.primaryAmount.token.symbol}
+ >
+ )}
+ {tx.tx.protocol && via {tx.tx.protocol.name} }
+
+ ))}
+
+ );
+}
+```
+
+**Pagination example:**
+
+```tsx
+function PaginatedHistory({ address }: { address: string }) {
+ const [cursor, setCursor] = useState();
+
+ const { transactions, oldestSignature, hasMore, isLoading } =
+ useClassifiedTransactions({
+ address,
+ options: { limit: 20, before: cursor },
+ });
+
+ return (
+
+ {transactions.map((tx) => (
+
+ ))}
+ {hasMore && (
+ setCursor(oldestSignature ?? undefined)}
+ disabled={isLoading}
+ >
+ Load More
+
+ )}
+
+ );
+}
+```
+
+**Rate-limited RPC configuration (e.g., public devnet):**
+
+```tsx
+const { transactions } = useClassifiedTransactions({
+ address,
+ options: {
+ limit: 5,
+ overfetchMultiplier: 1,
+ transactionConcurrency: 1,
+ },
+ swr: {
+ revalidateOnFocus: false,
+ revalidateOnReconnect: false,
+ },
+});
+```
+
+**Available options:**
+
+| Option | Default | Description |
+| --- | --- | --- |
+| `limit` | `10` | Max transactions per request |
+| `before` | — | Pagination cursor (oldest signature from previous request) |
+| `until` | — | Stop fetching at this signature |
+| `cluster` | auto | Override auto-detected cluster (`'mainnet-beta'` \| `'devnet'` \| `'testnet'`) |
+| `filterSpam` | `true` | Filter out spam/dust transactions |
+| `includeTokenAccounts` | `false` | Query ATAs for incoming token transfers |
+| `maxTokenAccounts` | `5` | Max ATAs to query when `includeTokenAccounts` is enabled |
+| `enrichTokenMetadata` | `true` | Add token symbols and names |
+| `enrichNftMetadata` | `true` | Add NFT metadata (requires DAS RPC) |
+| `overfetchMultiplier` | `1` | Signature overfetch multiplier (increase for high-spam wallets) |
+| `minPageSize` | `20` | Min signatures per iteration |
+| `transactionConcurrency` | `1` | Parallel transaction fetches |
+
+**Response structure:**
+
+Each item in the `transactions` array is a `ClassifiedTransaction` with the following shape:
+
+```ts
+interface ClassifiedTransaction {
+ // Raw transaction data
+ tx: {
+ signature: string;
+ slot: number | bigint;
+ blockTime: number | bigint | null;
+ fee?: number;
+ err: any | null;
+ programIds: string[];
+ protocol: {
+ id: string;
+ name: string; // e.g. "Jupiter", "Raydium", "Marinade"
+ iconUrl?: string;
+ } | null;
+ memo?: string | null;
+ };
+
+ // High-level classification of what this transaction represents
+ classification: {
+ primaryType:
+ | "transfer"
+ | "swap"
+ | "nft_purchase"
+ | "nft_sale"
+ | "nft_mint"
+ | "stake_deposit"
+ | "stake_withdraw"
+ | "airdrop"
+ | "bridge_in"
+ | "bridge_out"
+ | "privacy_deposit" // Shielding funds into privacy pool
+ | "privacy_withdraw" // Unshielding funds from pool
+ | "fee_only"
+ | "other";
+ primaryAmount: MoneyAmount | null; // Main amount (e.g., what you sent/received)
+ secondaryAmount?: MoneyAmount | null; // Secondary amount (e.g., in a swap, what you got back)
+ sender?: string | null;
+ receiver?: string | null;
+ counterparty: {
+ type: "person" | "merchant" | "exchange" | "protocol" | "own_wallet" | "unknown";
+ address: string;
+ name?: string;
+ } | null;
+ confidence: number; // 0-1, how confident the classifier is
+ metadata?: Record; // Extra data (e.g., nft_mint, nft_name, nft_image)
+ };
+
+ // Individual token/SOL movements within the transaction
+ legs: Array<{
+ accountId: string; // The account involved
+ side: "debit" | "credit"; // Debit = out, Credit = in
+ amount: MoneyAmount;
+ role: "sent" | "received" | "fee" | "reward" | "protocol_deposit" | "protocol_withdraw" | "unknown";
+ }>;
+}
+
+// Token amount with metadata
+interface MoneyAmount {
+ token: {
+ mint: string;
+ symbol: string; // e.g. "SOL", "USDC", "JUP"
+ name?: string; // e.g. "Solana", "USD Coin"
+ decimals: number;
+ logoURI?: string;
+ };
+ amountRaw: string; // Raw amount as string (e.g., "1000000000")
+ amountUi: number; // Human-readable amount (e.g., 1.0 for 1 SOL)
+ fiat?: {
+ currency: "USD" | "EUR";
+ amount: number;
+ pricePerUnit: number;
+ };
+}
+```
+
+**Understanding legs:**
+
+Legs represent the individual token movements within a transaction. A simple transfer has 2 legs (sender debit, receiver credit), while a swap might have 4+ legs (token out, token in, fees, etc.). Use legs when you need granular detail about every movement, and use `classification.primaryAmount`/`secondaryAmount` for a high-level summary.
+
### Build and send arbitrary transactions
```tsx
diff --git a/packages/react-hooks/package.json b/packages/react-hooks/package.json
index 48c9662..b437833 100644
--- a/packages/react-hooks/package.json
+++ b/packages/react-hooks/package.json
@@ -44,17 +44,18 @@
},
"license": "MIT",
"dependencies": {
- "@solana/client": "workspace:*",
"@solana/addresses": "catalog:solana",
+ "@solana/client": "workspace:*",
"@solana/codecs-core": "catalog:solana",
"@solana/errors": "catalog:solana",
"@solana/keys": "catalog:solana",
+ "@solana/kit": "catalog:solana",
"@solana/promises": "catalog:solana",
"@solana/signers": "catalog:solana",
"@solana/transaction-messages": "catalog:solana",
"@solana/transactions": "catalog:solana",
- "@solana/kit": "catalog:solana",
"swr": "^2.3.6",
+ "tx-indexer": "^1.4.0",
"zustand": "catalog:utils"
},
"devDependencies": {
diff --git a/packages/react-hooks/src/index.ts b/packages/react-hooks/src/index.ts
index b3274f4..6b07dbd 100644
--- a/packages/react-hooks/src/index.ts
+++ b/packages/react-hooks/src/index.ts
@@ -1,6 +1,15 @@
'use client';
export type { StakeAccount } from '@solana/client';
+export type { ClassifiedTransaction, Cluster } from 'tx-indexer';
+export type {
+ MoneyAmount,
+ RawTransaction,
+ TokenInfo,
+ TransactionClassification,
+ TxLeg,
+ TxPrimaryType,
+} from 'tx-indexer/types';
export type {
SolanaClientProviderProps,
UseSolanaClientParameters,
@@ -96,6 +105,12 @@ export type {
WalletModalState,
} from './ui';
export { useWalletConnection, useWalletModalState, WalletConnectionManager } from './ui';
+export type {
+ UseClassifiedTransactionsOptions,
+ UseClassifiedTransactionsParameters,
+ UseClassifiedTransactionsReturnType,
+} from './useClassifiedTransactions';
+export { useClassifiedTransactions } from './useClassifiedTransactions';
export type {
UseClientStoreParameters,
UseClientStoreReturnType,
diff --git a/packages/react-hooks/src/useClassifiedTransactions.test.tsx b/packages/react-hooks/src/useClassifiedTransactions.test.tsx
new file mode 100644
index 0000000..1c7394f
--- /dev/null
+++ b/packages/react-hooks/src/useClassifiedTransactions.test.tsx
@@ -0,0 +1,195 @@
+// @vitest-environment jsdom
+
+import { describe, expect, it, vi } from 'vitest';
+
+import { createAddress, createSignature } from '../test/fixtures';
+import { renderHookWithClient, waitFor } from '../test/utils';
+
+import { useClassifiedTransactions } from './useClassifiedTransactions';
+
+vi.mock('tx-indexer', () => ({
+ createIndexer: vi.fn(() => ({
+ getTransactions: vi.fn(),
+ })),
+}));
+
+import { createIndexer } from 'tx-indexer';
+
+function createMockClassifiedTransaction(index: number) {
+ return {
+ tx: {
+ signature: createSignature(index),
+ slot: BigInt(1000 + index),
+ blockTime: BigInt(Date.now()),
+ fee: 5000,
+ err: null,
+ programIds: ['11111111111111111111111111111111'],
+ protocol: null,
+ },
+ classification: {
+ primaryType: 'transfer' as const,
+ primaryAmount: {
+ token: { mint: 'So11111111111111111111111111111111111111112', symbol: 'SOL', decimals: 9 },
+ amountRaw: '1000000000',
+ amountUi: 1.0,
+ },
+ secondaryAmount: null,
+ sender: createAddress(1).toString(),
+ receiver: createAddress(2).toString(),
+ counterparty: null,
+ confidence: 0.95,
+ },
+ legs: [],
+ };
+}
+
+describe('useClassifiedTransactions', () => {
+ it('returns empty state when no address is provided', async () => {
+ const { result } = renderHookWithClient(() => useClassifiedTransactions());
+
+ expect(result.current.transactions).toEqual([]);
+ expect(result.current.oldestSignature).toBeNull();
+ expect(result.current.hasMore).toBe(false);
+ });
+
+ it('fetches classified transactions for an address', async () => {
+ const walletAddress = createAddress(1);
+ const mockTransactions = [createMockClassifiedTransaction(1), createMockClassifiedTransaction(2)];
+
+ const mockGetTransactions = vi.fn().mockResolvedValue(mockTransactions);
+ vi.mocked(createIndexer).mockReturnValue({
+ getTransactions: mockGetTransactions,
+ } as unknown as ReturnType);
+
+ const { result } = renderHookWithClient(
+ () =>
+ useClassifiedTransactions({
+ address: walletAddress,
+ options: { limit: 10 },
+ }),
+ {},
+ );
+
+ await waitFor(() => {
+ expect(result.current.transactions).toHaveLength(2);
+ });
+
+ expect(result.current.oldestSignature).toBe(mockTransactions[1].tx.signature);
+ expect(result.current.hasMore).toBe(false);
+ });
+
+ it('returns hasMore true when result count equals limit', async () => {
+ const walletAddress = createAddress(1);
+ const mockTransactions = Array.from({ length: 10 }, (_, i) => createMockClassifiedTransaction(i));
+
+ const mockGetTransactions = vi.fn().mockResolvedValue(mockTransactions);
+ vi.mocked(createIndexer).mockReturnValue({
+ getTransactions: mockGetTransactions,
+ } as unknown as ReturnType);
+
+ const { result } = renderHookWithClient(
+ () =>
+ useClassifiedTransactions({
+ address: walletAddress,
+ options: { limit: 10 },
+ }),
+ {},
+ );
+
+ await waitFor(() => {
+ expect(result.current.transactions).toHaveLength(10);
+ });
+
+ expect(result.current.hasMore).toBe(true);
+ });
+
+ it('passes pagination cursor to getTransactions', async () => {
+ const walletAddress = createAddress(1);
+ const beforeSignature = createSignature(99).toString();
+ const mockTransactions = [createMockClassifiedTransaction(100)];
+
+ const mockGetTransactions = vi.fn().mockResolvedValue(mockTransactions);
+ vi.mocked(createIndexer).mockReturnValue({
+ getTransactions: mockGetTransactions,
+ } as unknown as ReturnType);
+
+ const { result } = renderHookWithClient(
+ () =>
+ useClassifiedTransactions({
+ address: walletAddress,
+ options: { limit: 10, before: beforeSignature },
+ }),
+ {},
+ );
+
+ await waitFor(() => {
+ expect(result.current.transactions).toHaveLength(1);
+ });
+
+ expect(mockGetTransactions).toHaveBeenCalledWith(
+ expect.anything(),
+ expect.objectContaining({
+ before: beforeSignature,
+ limit: 10,
+ }),
+ );
+ });
+
+ it('passes filter options to getTransactions', async () => {
+ const walletAddress = createAddress(1);
+
+ const mockGetTransactions = vi.fn().mockResolvedValue([]);
+ vi.mocked(createIndexer).mockReturnValue({
+ getTransactions: mockGetTransactions,
+ } as unknown as ReturnType);
+
+ renderHookWithClient(
+ () =>
+ useClassifiedTransactions({
+ address: walletAddress,
+ options: {
+ filterSpam: false,
+ enrichNftMetadata: false,
+ enrichTokenMetadata: false,
+ },
+ }),
+ {},
+ );
+
+ await waitFor(() => {
+ expect(mockGetTransactions).toHaveBeenCalled();
+ });
+
+ expect(mockGetTransactions).toHaveBeenCalledWith(
+ expect.anything(),
+ expect.objectContaining({
+ filterSpam: false,
+ enrichNftMetadata: false,
+ enrichTokenMetadata: false,
+ }),
+ );
+ });
+
+ it('is disabled when disabled option is true', async () => {
+ const walletAddress = createAddress(1);
+
+ const mockGetTransactions = vi.fn().mockResolvedValue([]);
+ vi.mocked(createIndexer).mockReturnValue({
+ getTransactions: mockGetTransactions,
+ } as unknown as ReturnType);
+
+ const { result } = renderHookWithClient(
+ () =>
+ useClassifiedTransactions({
+ address: walletAddress,
+ disabled: true,
+ }),
+ {},
+ );
+
+ await new Promise((resolve) => setTimeout(resolve, 50));
+
+ expect(mockGetTransactions).not.toHaveBeenCalled();
+ expect(result.current.transactions).toEqual([]);
+ });
+});
diff --git a/packages/react-hooks/src/useClassifiedTransactions.ts b/packages/react-hooks/src/useClassifiedTransactions.ts
new file mode 100644
index 0000000..ff57054
--- /dev/null
+++ b/packages/react-hooks/src/useClassifiedTransactions.ts
@@ -0,0 +1,298 @@
+import { type AddressLike, type SolanaClient, toAddress } from '@solana/client';
+import { useCallback, useMemo } from 'react';
+import {
+ type ClassifiedTransaction,
+ type Cluster,
+ createIndexer,
+ type GetTransactionsOptions,
+ type TxIndexer,
+} from 'tx-indexer';
+
+import { useSolanaClient } from './context';
+import { type SolanaQueryResult, type UseSolanaRpcQueryOptions, useSolanaRpcQuery } from './query';
+import { useClientStore } from './useClientStore';
+
+function deriveClusterFromEndpoint(endpoint: string): Cluster {
+ const url = endpoint.toLowerCase();
+ if (url.includes('devnet')) return 'devnet';
+ if (url.includes('testnet')) return 'testnet';
+ return 'mainnet-beta';
+}
+
+type ClassifiedTransactionsData = Readonly<{
+ transactions: ClassifiedTransaction[];
+ oldestSignature: string | null;
+ hasMore: boolean;
+}>;
+
+export type UseClassifiedTransactionsOptions = Readonly<{
+ /** Maximum transactions to fetch per request (default: 10) */
+ limit?: number;
+ /** Pagination cursor - fetch transactions before this signature */
+ before?: string;
+ /** Stop fetching at this signature */
+ until?: string;
+ /**
+ * Solana cluster for token metadata resolution.
+ * Auto-detected from RPC endpoint URL by default (looks for 'devnet' or 'testnet' in URL).
+ * Override this if using a custom RPC URL that doesn't contain the cluster name.
+ * @default auto-detected from endpoint
+ */
+ cluster?: Cluster;
+ /** Filter spam transactions (default: true) */
+ filterSpam?: boolean;
+ /** Enrich with NFT metadata - requires DAS RPC (default: true) */
+ enrichNftMetadata?: boolean;
+ /** Enrich with token metadata (default: true) */
+ enrichTokenMetadata?: boolean;
+ /**
+ * Include signatures from token accounts (ATAs) to catch incoming transfers.
+ * This adds extra RPC calls but ensures complete transaction history.
+ * @default false
+ */
+ includeTokenAccounts?: boolean;
+ /**
+ * Maximum token accounts to query when includeTokenAccounts is true (default: 5).
+ * Lower values reduce RPC calls. Set to 0 to skip token account queries.
+ */
+ maxTokenAccounts?: number;
+ /**
+ * Multiplier for signature overfetch (default: 1).
+ * Higher values fetch more signatures to account for spam filtering.
+ * Set to 1 for rate-limited RPCs.
+ */
+ overfetchMultiplier?: number;
+ /**
+ * Minimum signatures to fetch per iteration (default: 20).
+ * Set lower for rate-limited RPCs.
+ */
+ minPageSize?: number;
+ /**
+ * Concurrency for fetching transactions (default: 1).
+ * Higher values are faster but use more RPC calls concurrently.
+ */
+ transactionConcurrency?: number;
+}>;
+
+/**
+ * Parameters for the useClassifiedTransactions hook.
+ */
+export type UseClassifiedTransactionsParameters = Readonly<{
+ /** Wallet address to fetch transactions for. Can be a string or Address type. */
+ address?: AddressLike;
+ /** Transaction fetching and classification options. */
+ options?: UseClassifiedTransactionsOptions;
+ /** Disable fetching (useful for conditional queries). Defaults to true when address is undefined. */
+ disabled?: boolean;
+ /** SWR configuration options (revalidation, caching, etc.). */
+ swr?: UseSolanaRpcQueryOptions['swr'];
+}>;
+
+/**
+ * Return type for the useClassifiedTransactions hook.
+ */
+export type UseClassifiedTransactionsReturnType = SolanaQueryResult &
+ Readonly<{
+ /** Array of classified transactions, newest first. */
+ transactions: ClassifiedTransaction[];
+ /** Signature of the oldest transaction (use as `before` cursor for pagination). */
+ oldestSignature: string | null;
+ /** Whether more transactions are available to fetch. */
+ hasMore: boolean;
+ }>;
+
+/**
+ * Fetch and classify transactions for a wallet address.
+ *
+ * This hook integrates with the `tx-indexer` SDK to provide:
+ * - **Transaction classification** - Identifies transaction types (swap, transfer, stake, NFT, etc.)
+ * - **Protocol detection** - Recognizes interactions with known protocols (Jupiter, Raydium, etc.)
+ * - **Spam filtering** - Automatically filters out spam/dust transactions
+ * - **Token metadata** - Enriches transactions with token symbols and names
+ * - **Pagination** - Cursor-based pagination with `oldestSignature` and `hasMore`
+ *
+ * The hook automatically detects the cluster (mainnet-beta/devnet/testnet) from the RPC endpoint URL.
+ *
+ * @example Basic usage
+ * ```tsx
+ * function TransactionHistory({ address }: { address: string }) {
+ * const { transactions, isLoading, isError } = useClassifiedTransactions({
+ * address,
+ * options: { limit: 10 },
+ * });
+ *
+ * if (isLoading) return Loading...
;
+ * if (isError) return Error loading transactions
;
+ *
+ * return (
+ *
+ * {transactions.map((tx) => (
+ *
+ * {tx.classification.primaryType}: {tx.classification.primaryAmount?.amountUi}
+ * {tx.classification.primaryAmount?.token.symbol}
+ *
+ * ))}
+ *
+ * );
+ * }
+ * ```
+ *
+ * @example Pagination with "Load More"
+ * ```tsx
+ * function PaginatedHistory({ address }: { address: string }) {
+ * const [cursor, setCursor] = useState();
+ *
+ * const { transactions, oldestSignature, hasMore, isLoading } = useClassifiedTransactions({
+ * address,
+ * options: { limit: 20, before: cursor },
+ * });
+ *
+ * return (
+ *
+ * {transactions.map((tx) => (
+ *
+ * ))}
+ * {hasMore && (
+ * setCursor(oldestSignature)} disabled={isLoading}>
+ * Load More
+ *
+ * )}
+ *
+ * );
+ * }
+ * ```
+ *
+ * @example Rate-limited RPC configuration (e.g., public devnet)
+ * ```tsx
+ * // Conservative settings to avoid 429 errors on rate-limited RPCs
+ * const { transactions } = useClassifiedTransactions({
+ * address,
+ * options: {
+ * limit: 5,
+ * overfetchMultiplier: 1, // Don't overfetch signatures
+ * transactionConcurrency: 1, // Fetch transactions sequentially
+ * minPageSize: 5, // Small page size
+ * },
+ * swr: {
+ * revalidateOnFocus: false, // Disable auto-revalidation
+ * revalidateOnReconnect: false,
+ * },
+ * });
+ * ```
+ *
+ * @example Include incoming token transfers
+ * ```tsx
+ * // By default, only the wallet's direct signatures are queried.
+ * // Enable includeTokenAccounts to also query token account (ATA) signatures,
+ * // which catches incoming token transfers that don't appear on the main wallet.
+ * const { transactions } = useClassifiedTransactions({
+ * address,
+ * options: {
+ * includeTokenAccounts: true, // Query ATAs for incoming transfers
+ * maxTokenAccounts: 3, // Limit to 3 ATAs (reduces RPC calls)
+ * },
+ * });
+ * ```
+ *
+ * @returns Object containing:
+ * - `transactions` - Array of classified transactions
+ * - `oldestSignature` - Cursor for pagination (pass as `before` to load more)
+ * - `hasMore` - Whether more transactions are available
+ * - `isLoading` - Loading state
+ * - `isError` - Error state
+ * - `error` - Error object if failed
+ * - `mutate` - SWR mutate function to refresh data
+ */
+export function useClassifiedTransactions(
+ params: UseClassifiedTransactionsParameters = {},
+): UseClassifiedTransactionsReturnType {
+ const { address, options = {}, disabled: disabledOption, swr } = params;
+ const client = useSolanaClient();
+ const endpoint = useClientStore((state) => state.cluster.endpoint);
+
+ const {
+ limit = 10,
+ before,
+ until,
+ cluster: clusterOverride,
+ filterSpam = true,
+ enrichNftMetadata = true,
+ enrichTokenMetadata = true,
+ includeTokenAccounts,
+ maxTokenAccounts,
+ overfetchMultiplier = 1,
+ minPageSize,
+ transactionConcurrency = 1,
+ } = options;
+
+ const cluster = useMemo(() => clusterOverride ?? deriveClusterFromEndpoint(endpoint), [clusterOverride, endpoint]);
+
+ const indexer = useMemo(() => {
+ return createIndexer({
+ client: client.runtime,
+ cluster,
+ });
+ }, [client.runtime, cluster]);
+
+ const fetcher = useCallback(
+ async (_: SolanaClient): Promise => {
+ const resolvedAddress = address ? toAddress(address) : undefined;
+ if (!resolvedAddress) {
+ return { transactions: [], oldestSignature: null, hasMore: false };
+ }
+
+ const txOptions: GetTransactionsOptions = {
+ limit,
+ before,
+ until,
+ filterSpam,
+ enrichNftMetadata,
+ enrichTokenMetadata,
+ includeTokenAccounts,
+ maxTokenAccounts,
+ overfetchMultiplier,
+ minPageSize,
+ transactionConcurrency,
+ };
+
+ const transactions = await indexer.getTransactions(resolvedAddress, txOptions);
+
+ const oldestSignature =
+ transactions.length > 0 ? String(transactions[transactions.length - 1].tx.signature) : null;
+
+ const hasMore = transactions.length >= limit;
+
+ return { transactions, oldestSignature, hasMore };
+ },
+ [
+ address,
+ limit,
+ before,
+ until,
+ filterSpam,
+ enrichNftMetadata,
+ enrichTokenMetadata,
+ includeTokenAccounts,
+ maxTokenAccounts,
+ overfetchMultiplier,
+ minPageSize,
+ transactionConcurrency,
+ indexer,
+ ],
+ );
+
+ const disabled = disabledOption ?? !address;
+ const query = useSolanaRpcQuery(
+ 'classifiedTransactions',
+ [address, limit, before, until, filterSpam, enrichNftMetadata, enrichTokenMetadata, includeTokenAccounts],
+ fetcher,
+ { disabled, swr },
+ );
+
+ return {
+ ...query,
+ transactions: query.data?.transactions ?? [],
+ oldestSignature: query.data?.oldestSignature ?? null,
+ hasMore: query.data?.hasMore ?? false,
+ };
+}
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 3535d5b..74aba4d 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -118,7 +118,7 @@ importers:
version: 0.5.1
'@changesets/cli':
specifier: ^2.29.7
- version: 2.29.7(@types/node@24.10.0)
+ version: 2.29.7(@types/node@25.0.9)
'@size-limit/preset-small-lib':
specifier: ^12.0.0
version: 12.0.0(size-limit@12.0.0(jiti@2.6.1))
@@ -136,7 +136,7 @@ importers:
version: 14.6.1(@testing-library/dom@10.4.1)
'@vitest/coverage-v8':
specifier: ^4.0.7
- version: 4.0.7(vitest@4.0.7(@types/debug@4.1.12)(@types/node@24.10.0)(jiti@2.6.1)(jsdom@24.1.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))
+ version: 4.0.7(vitest@4.0.7(@types/debug@4.1.12)(@types/node@25.0.9)(jiti@2.6.1)(jsdom@24.1.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.2)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2))
bs58:
specifier: ^6.0.0
version: 6.0.0
@@ -160,7 +160,7 @@ importers:
version: 5.9.3
vitest:
specifier: ^4.0.7
- version: 4.0.7(@types/debug@4.1.12)(@types/node@24.10.0)(jiti@2.6.1)(jsdom@24.1.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)
+ version: 4.0.7(@types/debug@4.1.12)(@types/node@25.0.9)(jiti@2.6.1)(jsdom@24.1.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.2)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)
apps/docs:
dependencies:
@@ -187,7 +187,7 @@ importers:
version: 16.4.4(@types/react@19.2.2)(lucide-react@0.562.0(react@19.2.3))(next@16.1.1(react-dom@19.2.3(react@19.2.3))(react@19.2.3))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)(zod@4.3.5)
fumadocs-mdx:
specifier: ^14.2.4
- version: 14.2.4(@types/react@19.2.2)(fumadocs-core@16.4.4(@types/react@19.2.2)(lucide-react@0.562.0(react@19.2.3))(next@16.1.1(react-dom@19.2.3(react@19.2.3))(react@19.2.3))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)(zod@4.3.5))(next@16.1.1(react-dom@19.2.3(react@19.2.3))(react@19.2.3))(react@19.2.3)(vite@7.1.12(@types/node@20.19.27)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))
+ version: 14.2.4(@types/react@19.2.2)(fumadocs-core@16.4.4(@types/react@19.2.2)(lucide-react@0.562.0(react@19.2.3))(next@16.1.1(react-dom@19.2.3(react@19.2.3))(react@19.2.3))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)(zod@4.3.5))(next@16.1.1(react-dom@19.2.3(react@19.2.3))(react@19.2.3))(react@19.2.3)(vite@7.1.12(@types/node@20.19.27)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2))
fumadocs-ui:
specifier: ^16.4.4
version: 16.4.4(@types/react-dom@19.2.2(@types/react@19.2.2))(@types/react@19.2.2)(next@16.1.1(react-dom@19.2.3(react@19.2.3))(react@19.2.3))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)(tailwindcss@4.1.17)(zod@4.3.5)
@@ -316,7 +316,7 @@ importers:
version: 19.2.2(@types/react@19.2.2)
'@vitejs/plugin-react-swc':
specifier: ^4.2.0
- version: 4.2.0(@swc/helpers@0.5.17)(vite@7.1.12(@types/node@24.10.0)(jiti@1.21.7)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))
+ version: 4.2.0(@swc/helpers@0.5.17)(vite@7.1.12(@types/node@25.0.9)(jiti@1.21.7)(lightningcss@1.30.2)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2))
autoprefixer:
specifier: ^10.4.20
version: 10.4.21(postcss@8.5.6)
@@ -334,7 +334,7 @@ importers:
version: 5.9.3
vite:
specifier: ^7.1.12
- version: 7.1.12(@types/node@24.10.0)(jiti@1.21.7)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)
+ version: 7.1.12(@types/node@25.0.9)(jiti@1.21.7)(lightningcss@1.30.2)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)
packages/client:
dependencies:
@@ -441,6 +441,9 @@ importers:
swr:
specifier: ^2.3.6
version: 2.3.6(react@19.2.3)
+ tx-indexer:
+ specifier: ^1.4.0
+ version: 1.4.0(@solana/kit@5.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(ws@8.18.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)))(typescript@5.9.3)
zustand:
specifier: catalog:utils
version: 5.0.8(@types/react@19.2.2)(react@19.2.3)(use-sync-external-store@1.6.0(react@19.2.3))
@@ -549,95 +552,95 @@ packages:
'@aws-crypto/util@5.2.0':
resolution: {integrity: sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ==}
- '@aws-sdk/client-kms@3.968.0':
- resolution: {integrity: sha512-p3MqkZ7DAkUpqo7YmTj1nl+ACyJrVfnW1gpyCoa7P1NLTkL2lda6VaqgiziAcFZsvTgHRQxKtZBa3edXZs7Ycg==}
+ '@aws-sdk/client-kms@3.972.0':
+ resolution: {integrity: sha512-bH4cN16Ipz0G3CJgSUmnYptqU6XlFg1iUNI+qmi4BlojLu77Z5EGXQHivDs4fYYR+AFYAg341JX3ivmVskwb0g==}
engines: {node: '>=20.0.0'}
- '@aws-sdk/client-sso@3.968.0':
- resolution: {integrity: sha512-y+k23MvMzpn1WpeQ9sdEXg1Bbw7dfi0ZH2uwyBv78F/kz0mZOI+RJ1KJg8DgSD8XvdxB8gX5GQ8rzo0LnDothA==}
+ '@aws-sdk/client-sso@3.972.0':
+ resolution: {integrity: sha512-5qw6qLiRE4SUiz0hWy878dSR13tSVhbTWhsvFT8mGHe37NRRiaobm5MA2sWD0deRAuO98djSiV+dhWXa1xIFNw==}
engines: {node: '>=20.0.0'}
- '@aws-sdk/core@3.968.0':
- resolution: {integrity: sha512-u4lIpvGqMMHZN523/RxW70xNoVXHBXucIWZsxFKc373E6TWYEb16ddFhXTELioS5TU93qkd/6yDQZzI6AAhbkw==}
+ '@aws-sdk/core@3.972.0':
+ resolution: {integrity: sha512-nEeUW2M9F+xdIaD98F5MBcQ4ITtykj3yKbgFZ6J0JtL3bq+Z90szQ6Yy8H/BLPYXTs3V4n9ifnBo8cprRDiE6A==}
engines: {node: '>=20.0.0'}
- '@aws-sdk/credential-provider-env@3.968.0':
- resolution: {integrity: sha512-G+zgXEniQxBHFtHo+0yImkYutvJZLvWqvkPUP8/cG+IaYg54OY7L/GPIAZJh0U3m0Uepao98NbL15zjM+uplqQ==}
+ '@aws-sdk/credential-provider-env@3.972.0':
+ resolution: {integrity: sha512-kKHoNv+maHlPQOAhYamhap0PObd16SAb3jwaY0KYgNTiSbeXlbGUZPLioo9oA3wU10zItJzx83ClU7d7h40luA==}
engines: {node: '>=20.0.0'}
- '@aws-sdk/credential-provider-http@3.968.0':
- resolution: {integrity: sha512-79teHBx/EtsNRR3Bq8fQdmMHtUcYwvohm9EwXXFt2Jd3BEOBH872IjIlfKdAvdkM+jW1QeeWOZBAxXGPir7GcQ==}
+ '@aws-sdk/credential-provider-http@3.972.0':
+ resolution: {integrity: sha512-xzEi81L7I5jGUbpmqEHCe7zZr54hCABdj4H+3LzktHYuovV/oqnvoDdvZpGFR0e/KAw1+PL38NbGrpG30j6qlA==}
engines: {node: '>=20.0.0'}
- '@aws-sdk/credential-provider-ini@3.968.0':
- resolution: {integrity: sha512-9J9pcweoEN8yG7Qliux1zl9J3DT8X6OLcDN2RVXdTd5xzWBaYlupnUiJzoP6lvXdMnEmlDZaV7IMtoBdG7MY6g==}
+ '@aws-sdk/credential-provider-ini@3.972.0':
+ resolution: {integrity: sha512-ruhAMceUIq2aknFd3jhWxmO0P0Efab5efjyIXOkI9i80g+zDY5VekeSxfqRKStEEJSKSCHDLQuOu0BnAn4Rzew==}
engines: {node: '>=20.0.0'}
- '@aws-sdk/credential-provider-login@3.968.0':
- resolution: {integrity: sha512-YxBaR0IMuHPOVTG+73Ve0QfllweN+EdwBRnHFhUGnahMGAcTmcaRdotqwqWfiws+9ud44IFKjxXR3t8jaGpFnQ==}
+ '@aws-sdk/credential-provider-login@3.972.0':
+ resolution: {integrity: sha512-SsrsFJsEYAJHO4N/r2P0aK6o8si6f1lprR+Ej8J731XJqTckSGs/HFHcbxOyW/iKt+LNUvZa59/VlJmjhF4bEQ==}
engines: {node: '>=20.0.0'}
- '@aws-sdk/credential-provider-node@3.968.0':
- resolution: {integrity: sha512-wei6v0c9vDEam8pM5eWe9bt+5ixg8nL0q+DFPzI6iwdLUqmJsPoAzWPEyMkgp03iE02SS2fMqPWpmRjz/NVyUw==}
+ '@aws-sdk/credential-provider-node@3.972.0':
+ resolution: {integrity: sha512-wwJDpEGl6+sOygic8QKu0OHVB8SiodqF1fr5jvUlSFfS6tJss/E9vBc2aFjl7zI6KpAIYfIzIgM006lRrZtWCQ==}
engines: {node: '>=20.0.0'}
- '@aws-sdk/credential-provider-process@3.968.0':
- resolution: {integrity: sha512-my9M/ijRyEACoyeEWiC2sTVM3+eck5IWPGTPQrlYMKivy4LLlZchohtIopuqTom+JZzLZD508j1s9aDvl7BA0w==}
+ '@aws-sdk/credential-provider-process@3.972.0':
+ resolution: {integrity: sha512-nmzYhamLDJ8K+v3zWck79IaKMc350xZnWsf/GeaXO6E3MewSzd3lYkTiMi7lEp3/UwDm9NHfPguoPm+mhlSWQQ==}
engines: {node: '>=20.0.0'}
- '@aws-sdk/credential-provider-sso@3.968.0':
- resolution: {integrity: sha512-XPYPcxfWIt5jBbofoP2xhAHlFYos0dzwbHsoE18Cera/XnaCEbsUpdROo30t0Kjdbv0EWMYLMPDi9G+vPRDnhQ==}
+ '@aws-sdk/credential-provider-sso@3.972.0':
+ resolution: {integrity: sha512-6mYyfk1SrMZ15cH9T53yAF4YSnvq4yU1Xlgm3nqV1gZVQzmF5kr4t/F3BU3ygbvzi4uSwWxG3I3TYYS5eMlAyg==}
engines: {node: '>=20.0.0'}
- '@aws-sdk/credential-provider-web-identity@3.968.0':
- resolution: {integrity: sha512-9HNAP6mx2jsBW4moWnRg5ycyZ0C1EbtMIegIHa93ga13B/8VZF9Y0iDnwW73yQYzCEt9UrDiFeRck/ChZup3rA==}
+ '@aws-sdk/credential-provider-web-identity@3.972.0':
+ resolution: {integrity: sha512-vsJXBGL8H54kz4T6do3p5elATj5d1izVGUXMluRJntm9/I0be/zUYtdd4oDTM2kSUmd4Zhyw3fMQ9lw7CVhd4A==}
engines: {node: '>=20.0.0'}
- '@aws-sdk/middleware-host-header@3.968.0':
- resolution: {integrity: sha512-ujlNT215VtE/2D2jEhFVcTuPPB36HJyLBM0ytnni/WPIjzq89iJrKR1tEhxpk8uct6A5NSQ6w9Y7g2Rw1rkSoQ==}
+ '@aws-sdk/middleware-host-header@3.972.0':
+ resolution: {integrity: sha512-3eztFI6F9/eHtkIaWKN3nT+PM+eQ6p1MALDuNshFk323ixuCZzOOVT8oUqtZa30Z6dycNXJwhlIq7NhUVFfimw==}
engines: {node: '>=20.0.0'}
- '@aws-sdk/middleware-logger@3.968.0':
- resolution: {integrity: sha512-zvhhEPZgvaRDxzf27m2WmgaXoN7upFt/gvG7ofBN5zCBlkh3JtFamMh5KWYVQwMhc4eQBK3NjH0oIUKZSVztag==}
+ '@aws-sdk/middleware-logger@3.972.0':
+ resolution: {integrity: sha512-ZvdyVRwzK+ra31v1pQrgbqR/KsLD+wwJjHgko6JfoKUBIcEfAwJzQKO6HspHxdHWTVUz6MgvwskheR/TTYZl2g==}
engines: {node: '>=20.0.0'}
- '@aws-sdk/middleware-recursion-detection@3.968.0':
- resolution: {integrity: sha512-KygPiwpSAPGobgodK/oLb7OLiwK29pNJeNtP+GZ9pxpceDRqhN0Ub8Eo84dBbWq+jbzAqBYHzy+B1VsbQ/hLWA==}
+ '@aws-sdk/middleware-recursion-detection@3.972.0':
+ resolution: {integrity: sha512-F2SmUeO+S6l1h6dydNet3BQIk173uAkcfU1HDkw/bUdRLAnh15D3HP9vCZ7oCPBNcdEICbXYDmx0BR9rRUHGlQ==}
engines: {node: '>=20.0.0'}
- '@aws-sdk/middleware-user-agent@3.968.0':
- resolution: {integrity: sha512-4h5/B8FyxMjLxtXd5jbM2R69aO57qQiHoAJQTtkpuxmM7vhvjSxEQtMM9L1kuMXoMVNE7xM4886h0+gbmmxplg==}
+ '@aws-sdk/middleware-user-agent@3.972.0':
+ resolution: {integrity: sha512-kFHQm2OCBJCzGWRafgdWHGFjitUXY/OxXngymcX4l8CiyiNDZB27HDDBg2yLj3OUJc4z4fexLMmP8r9vgag19g==}
engines: {node: '>=20.0.0'}
- '@aws-sdk/nested-clients@3.968.0':
- resolution: {integrity: sha512-LLppm+8MzD3afD2IA/tYDp5AoVPOybK7MHQz5DVB4HsZ+fHvwYlvau2ZUK8nKwJSk5c1kWcxCZkyuJQjFu37ng==}
+ '@aws-sdk/nested-clients@3.972.0':
+ resolution: {integrity: sha512-QGlbnuGzSQJVG6bR9Qw6G0Blh6abFR4VxNa61ttMbzy9jt28xmk2iGtrYLrQPlCCPhY6enHqjTWm3n3LOb0wAw==}
engines: {node: '>=20.0.0'}
- '@aws-sdk/region-config-resolver@3.968.0':
- resolution: {integrity: sha512-BzrCpxEsAHbi+yDGtgXJ+/5AvLPjfhcT6DlL+Fc4g13J5Z0VwiO95Wem+Q4KK7WDZH7/sZ/1WFvfitjLTKZbEw==}
+ '@aws-sdk/region-config-resolver@3.972.0':
+ resolution: {integrity: sha512-JyOf+R/6vJW8OEVFCAyzEOn2reri/Q+L0z9zx4JQSKWvTmJ1qeFO25sOm8VIfB8URKhfGRTQF30pfYaH2zxt/A==}
engines: {node: '>=20.0.0'}
- '@aws-sdk/token-providers@3.968.0':
- resolution: {integrity: sha512-lXUZqB2qTFmZYNXPnVT0suSHGiuQAPrL2DhmhbjqOdR7+GKDHL5KbeKFvPisy7Y4neliJqT4Q1VPWa0nqYaiZg==}
+ '@aws-sdk/token-providers@3.972.0':
+ resolution: {integrity: sha512-kWlXG+y5nZhgXGEtb72Je+EvqepBPs8E3vZse//1PYLWs2speFqbGE/ywCXmzEJgHgVqSB/u/lqBvs5WlYmSqQ==}
engines: {node: '>=20.0.0'}
- '@aws-sdk/types@3.968.0':
- resolution: {integrity: sha512-Wuumj/1cuiuXTMdHmvH88zbEl+5Pw++fOFQuMCF4yP0R+9k1lwX8rVst+oy99xaxtdluJZXrsccoZoA67ST1Ow==}
+ '@aws-sdk/types@3.972.0':
+ resolution: {integrity: sha512-U7xBIbLSetONxb2bNzHyDgND3oKGoIfmknrEVnoEU4GUSs+0augUOIn9DIWGUO2ETcRFdsRUnmx9KhPT9Ojbug==}
engines: {node: '>=20.0.0'}
- '@aws-sdk/util-endpoints@3.968.0':
- resolution: {integrity: sha512-9IdilgylS0crFSeI59vtr8qhDYMYYOvnvkl1dLp59+EmLH1IdXz7+4cR5oh5PkoqD7DRzc5Uzm2GnZhK6I0oVQ==}
+ '@aws-sdk/util-endpoints@3.972.0':
+ resolution: {integrity: sha512-6JHsl1V/a1ZW8D8AFfd4R52fwZPnZ5H4U6DS8m/bWT8qad72NvbOFAC7U2cDtFs2TShqUO3TEiX/EJibtY3ijg==}
engines: {node: '>=20.0.0'}
- '@aws-sdk/util-locate-window@3.965.2':
- resolution: {integrity: sha512-qKgO7wAYsXzhwCHhdbaKFyxd83Fgs8/1Ka+jjSPrv2Ll7mB55Wbwlo0kkfMLh993/yEc8aoDIAc1Fz9h4Spi4Q==}
+ '@aws-sdk/util-locate-window@3.965.3':
+ resolution: {integrity: sha512-FNUqAjlKAGA7GM05kywE99q8wiPHPZqrzhq3wXRga6PRD6A0kzT85Pb0AzYBVTBRpSrKyyr6M92Y6bnSBVp2BA==}
engines: {node: '>=20.0.0'}
- '@aws-sdk/util-user-agent-browser@3.968.0':
- resolution: {integrity: sha512-nRxjs8Jpq8ZHFsa/0uiww2f4+40D6Dt6bQmepAJHIE/D+atwPINDKsfamCjFnxrjKU3WBWpGYEf/QDO0XZsFMw==}
+ '@aws-sdk/util-user-agent-browser@3.972.0':
+ resolution: {integrity: sha512-eOLdkQyoRbDgioTS3Orr7iVsVEutJyMZxvyZ6WAF95IrF0kfWx5Rd/KXnfbnG/VKa2CvjZiitWfouLzfVEyvJA==}
- '@aws-sdk/util-user-agent-node@3.968.0':
- resolution: {integrity: sha512-oaIkPGraGhZgkDmxVhTIlakaUNWKO9aMN+uB6I+eS26MWi/lpMK66HTZeXEnaTrmt5/kl99YC0N37zScz58Tdg==}
+ '@aws-sdk/util-user-agent-node@3.972.0':
+ resolution: {integrity: sha512-GOy+AiSrE9kGiojiwlZvVVSXwylu4+fmP0MJfvras/MwP09RB/YtQuOVR1E0fKQc6OMwaTNBjgAbOEhxuWFbAw==}
engines: {node: '>=20.0.0'}
peerDependencies:
aws-crt: '>=1.0.0'
@@ -645,8 +648,8 @@ packages:
aws-crt:
optional: true
- '@aws-sdk/xml-builder@3.968.0':
- resolution: {integrity: sha512-bZQKn41ebPh/uW9uWUE5oLuaBr44Gt78dkw2amu5zcwo1J/d8s6FdzZcRDmz0rHE2NHJWYkdQYeVQo7jhMziqA==}
+ '@aws-sdk/xml-builder@3.972.0':
+ resolution: {integrity: sha512-POaGMcXnozzqBUyJM3HLUZ9GR6OKJWPGJEmhtTnxZXt8B6JcJ/6K3xRJ5H/j8oovVLz8Wg6vFxAHv8lvuASxMg==}
engines: {node: '>=20.0.0'}
'@aws/lambda-invoke-store@0.2.3':
@@ -800,6 +803,10 @@ packages:
resolution: {integrity: sha512-Q/N6JNWvIvPnLDvjlE1OUBLPQHH6l3CltCEsHIujp45zQUSSh8K+gHnaEX45yAT1nyngnINhvWtzN+Nb9D8RAQ==}
engines: {node: '>=6.9.0'}
+ '@babel/runtime@7.28.6':
+ resolution: {integrity: sha512-05WQkdpL9COIMz4LjTxGpPNCdlpyimKppYNoJ5Di5EUObifl8t4tuLuUBBZEpoLYOmfvIWrsp9fCl0HoPRVTdA==}
+ engines: {node: '>=6.9.0'}
+
'@babel/template@7.28.6':
resolution: {integrity: sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ==}
engines: {node: '>=6.9.0'}
@@ -2399,8 +2406,8 @@ packages:
resolution: {integrity: sha512-qJpzYC64kaj3S0fueiu3kXm8xPrR3PcXDPEgnaNMRn0EjNSZFoFjvbUp0YUDsRhN1CB90EnHJtbxWKevnH99UQ==}
engines: {node: '>=18.0.0'}
- '@smithy/core@3.20.5':
- resolution: {integrity: sha512-0Tz77Td8ynHaowXfOdrD0F1IH4tgWGUhwmLwmpFyTbr+U9WHXNNp9u/k2VjBXGnSe7BwjBERRpXsokGTXzNjhA==}
+ '@smithy/core@3.21.0':
+ resolution: {integrity: sha512-bg2TfzgsERyETAxc/Ims/eJX8eAnIeTi4r4LHpMpfF/2NyO6RsWis0rjKcCPaGksljmOb23BZRiCeT/3NvwkXw==}
engines: {node: '>=18.0.0'}
'@smithy/credential-provider-imds@4.2.8':
@@ -2431,12 +2438,12 @@ packages:
resolution: {integrity: sha512-RO0jeoaYAB1qBRhfVyq0pMgBoUK34YEJxVxyjOWYZiOKOq2yMZ4MnVXMZCUDenpozHue207+9P5ilTV1zeda0A==}
engines: {node: '>=18.0.0'}
- '@smithy/middleware-endpoint@4.4.6':
- resolution: {integrity: sha512-dpq3bHqbEOBqGBjRVHVFP3eUSPpX0BYtg1D5d5Irgk6orGGAuZfY22rC4sErhg+ZfY/Y0kPqm1XpAmDZg7DeuA==}
+ '@smithy/middleware-endpoint@4.4.10':
+ resolution: {integrity: sha512-kwWpNltpxrvPabnjEFvwSmA+66l6s2ReCvgVSzW/z92LU4T28fTdgZ18IdYRYOrisu2NMQ0jUndRScbO65A/zg==}
engines: {node: '>=18.0.0'}
- '@smithy/middleware-retry@4.4.22':
- resolution: {integrity: sha512-vwWDMaObSMjw6WCC/3Ae9G7uul5Sk95jr07CDk1gkIMpaDic0phPS1MpVAZ6+YkF7PAzRlpsDjxPwRlh/S11FQ==}
+ '@smithy/middleware-retry@4.4.26':
+ resolution: {integrity: sha512-ozZMoTAr+B2aVYfLYfkssFvc8ZV3p/vLpVQ7/k277xxUOA9ykSPe5obL2j6yHfbdrM/SZV7qj0uk/hSqavHrLw==}
engines: {node: '>=18.0.0'}
'@smithy/middleware-serde@4.2.9':
@@ -2483,8 +2490,8 @@ packages:
resolution: {integrity: sha512-6A4vdGj7qKNRF16UIcO8HhHjKW27thsxYci+5r/uVRkdcBEkOEiY8OMPuydLX4QHSrJqGHPJzPRwwVTqbLZJhg==}
engines: {node: '>=18.0.0'}
- '@smithy/smithy-client@4.10.7':
- resolution: {integrity: sha512-Uznt0I9z3os3Z+8pbXrOSCTXCA6vrjyN7Ub+8l2pRDum44vLv8qw0qGVkJN0/tZBZotaEFHrDPKUoPNueTr5Vg==}
+ '@smithy/smithy-client@4.10.11':
+ resolution: {integrity: sha512-6o804SCyHGMXAb5mFJ+iTy9kVKv7F91a9szN0J+9X6p8A0NrdpUxdaC57aye2ipQkP2C4IAqETEpGZ0Zj77Haw==}
engines: {node: '>=18.0.0'}
'@smithy/types@4.12.0':
@@ -2519,12 +2526,12 @@ packages:
resolution: {integrity: sha512-YEjpl6XJ36FTKmD+kRJJWYvrHeUvm5ykaUS5xK+6oXffQPHeEM4/nXlZPe+Wu0lsgRUcNZiliYNh/y7q9c2y6Q==}
engines: {node: '>=18.0.0'}
- '@smithy/util-defaults-mode-browser@4.3.21':
- resolution: {integrity: sha512-DtmVJarzqtjghtGjCw/PFJolcJkP7GkZgy+hWTAN3YLXNH+IC82uMoMhFoC3ZtIz5mOgCm5+hOGi1wfhVYgrxw==}
+ '@smithy/util-defaults-mode-browser@4.3.25':
+ resolution: {integrity: sha512-8ugoNMtss2dJHsXnqsibGPqoaafvWJPACmYKxJ4E6QWaDrixsAemmiMMAVbvwYadjR0H9G2+AlzsInSzRi8PSw==}
engines: {node: '>=18.0.0'}
- '@smithy/util-defaults-mode-node@4.2.24':
- resolution: {integrity: sha512-JelBDKPAVswVY666rezBvY6b0nF/v9TXjUbNwDNAyme7qqKYEX687wJv0uze8lBIZVbg30wlWnlYfVSjjpKYFA==}
+ '@smithy/util-defaults-mode-node@4.2.28':
+ resolution: {integrity: sha512-mjUdcP8h3E0K/XvNMi9oBXRV3DMCzeRiYIieZ1LQ7jq5tu6GH/GTWym7a1xIIE0pKSoLcpGsaImuQhGPSIJzAA==}
engines: {node: '>=18.0.0'}
'@smithy/util-endpoints@3.2.8':
@@ -2615,12 +2622,30 @@ packages:
peerDependencies:
typescript: '>=5.3.3'
+ '@solana/addresses@5.4.0':
+ resolution: {integrity: sha512-YRHiH30S8qDV4bZ+mtEk589PGfBuXHzD/fK2Z+YI5f/+s+yi/5le/fVw7PN6LxnnmVQKiRCDUiNF+WmFFKi6QQ==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: ^5.0.0
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/assertions@5.0.0':
resolution: {integrity: sha512-2kIykk90kYciQW6bp+KaE6jRd1Y2CgHPeJxxlc5chQnjhoG6eiD8VXvocs6AvqPTht0p/SoEj9jH5tT4oG/bcg==}
engines: {node: '>=20.18.0'}
peerDependencies:
typescript: '>=5.3.3'
+ '@solana/assertions@5.4.0':
+ resolution: {integrity: sha512-8EP7mkdnrPc9y67FqWeAPzdWq2qAOkxsuo+ZBIXNWtIixDtXIdHrgjZ/wqbWxLgSTtXEfBCjpZU55Xw2Qfbwyg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: ^5.0.0
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/buffer-layout@4.0.1':
resolution: {integrity: sha512-E1ImOIAD1tBZFRdjeM4/pzTiTApC0AOBGwyAMS4fwIodCWArzJ3DWdoh8cKxeFM2fElkxBh2Aqts1BPC373rHA==}
engines: {node: '>=5.10'}
@@ -2643,12 +2668,30 @@ packages:
peerDependencies:
typescript: '>=5.3.3'
+ '@solana/codecs-core@5.4.0':
+ resolution: {integrity: sha512-rQ5jXgiDe2vIU+mYCHDjgwMd9WdzZfh4sc5H6JgYleAUjeTUX6mx8hTV2+pcXvvn27LPrgrt9jfxswbDb8O8ww==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: ^5.0.0
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/codecs-data-structures@5.0.0':
resolution: {integrity: sha512-y503Pqmv0LHcfcf0vQJGaxDvydQJbyCo8nK3nxn56EhFj5lBQ1NWb3WvTd83epigwuZurW2MhJARrpikfhQglQ==}
engines: {node: '>=20.18.0'}
peerDependencies:
typescript: '>=5.3.3'
+ '@solana/codecs-data-structures@5.4.0':
+ resolution: {integrity: sha512-LVssbdQ1GfY6upnxW3mufYsNfvTWKnHNk5Hx2gHuOYJhm3HZlp+Y8zvuoY65G1d1xAXkPz5YVGxaSeVIRWLGWg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: ^5.0.0
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/codecs-numbers@2.3.0':
resolution: {integrity: sha512-jFvvwKJKffvG7Iz9dmN51OGB7JBcy2CJ6Xf3NqD/VP90xak66m/Lg48T01u5IQ/hc15mChVHiBm+HHuOFDUrQg==}
engines: {node: '>=20.18.0'}
@@ -2667,6 +2710,15 @@ packages:
peerDependencies:
typescript: '>=5.3.3'
+ '@solana/codecs-numbers@5.4.0':
+ resolution: {integrity: sha512-z6LMkY+kXWx1alrvIDSAxexY5QLhsso638CjM7XI1u6dB7drTLWKhifyjnm1vOQc1VPVFmbYxTgKKpds8TY8tg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: ^5.0.0
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/codecs-strings@4.0.0':
resolution: {integrity: sha512-XvyD+sQ1zyA0amfxbpoFZsucLoe+yASQtDiLUGMDg5TZ82IHE3B7n82jE8d8cTAqi0HgqQiwU13snPhvg1O0Ow==}
engines: {node: '>=20.18.0'}
@@ -2681,6 +2733,18 @@ packages:
fastestsmallesttextencoderdecoder: ^1.0.22
typescript: '>=5.3.3'
+ '@solana/codecs-strings@5.4.0':
+ resolution: {integrity: sha512-w0trrjfQDhkCVz7O1GTmHBk9m+MkljKx2uNBbQAD3/yW2Qn9dYiTrZ1/jDVq0/+lPPAUkbT3s3Yo7HUZ2QFmHw==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ fastestsmallesttextencoderdecoder: ^1.0.22
+ typescript: ^5.0.0
+ peerDependenciesMeta:
+ fastestsmallesttextencoderdecoder:
+ optional: true
+ typescript:
+ optional: true
+
'@solana/codecs@5.0.0':
resolution: {integrity: sha512-KOw0gFUSBxIMDWLJ3AkVFkEci91dw0Rpx3C6y83Our7fSW+SEP8vRZklCElieYR85LHVB1QIEhoeHR7rc+Ifkw==}
engines: {node: '>=20.18.0'}
@@ -2743,6 +2807,16 @@ packages:
peerDependencies:
typescript: '>=5.3.3'
+ '@solana/errors@5.4.0':
+ resolution: {integrity: sha512-hNoAOmlZAszaVBrAy1Jf7amHJ8wnUnTU0BqhNQXknbSvirvsYr81yEud2iq18YiCqhyJ9SuQ5kWrSAT0x7S0oA==}
+ engines: {node: '>=20.18.0'}
+ hasBin: true
+ peerDependencies:
+ typescript: ^5.0.0
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/fast-stable-stringify@5.0.0':
resolution: {integrity: sha512-sGTbu7a4/olL+8EIOOJ7IZjzqOOpCJcK1UaVJ6015sRgo9vwGf4jg9KtXEYv5LVhLCTYmAb50L4BaIUcBph/Ig==}
engines: {node: '>=20.18.0'}
@@ -2755,6 +2829,15 @@ packages:
peerDependencies:
typescript: '>=5.3.3'
+ '@solana/functional@5.4.0':
+ resolution: {integrity: sha512-32ghHO0bg6GgX/7++0/7Lps6RgeXD2gKF1okiuyEGuVfKENIapgaQdcGhUwb3q6D6fv6MRAVn/Yve4jopGVNMQ==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: ^5.0.0
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/instruction-plans@5.0.0':
resolution: {integrity: sha512-n9oFOMFUPYKEhsXzrXT97QBQ2WvOTar+5SFEj/IOtRuCn4gl2kh0369cjXZpFwUdE3tmKr1zfYFNwbtiNx5pvg==}
engines: {node: '>=20.18.0'}
@@ -2767,6 +2850,15 @@ packages:
peerDependencies:
typescript: '>=5.3.3'
+ '@solana/instructions@5.4.0':
+ resolution: {integrity: sha512-//a7jpHbNoAgTqy3YyqG1X6QhItJLKzJa6zuYJGCwaAAJye7BxS9pxJBgb2mUt7CGidhUksf+U8pmLlxCNWYyg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: ^5.0.0
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/keychain-aws-kms@0.2.1':
resolution: {integrity: sha512-nKbpxRSE+zu+y8ZywJGAbwjxbjtLzbQR35Q5wQ1HWTvM4ZCfLzVqlkX8GYFT3eeWCi+JX4VXJdHfOFofl9D/GA==}
@@ -2785,6 +2877,15 @@ packages:
peerDependencies:
typescript: '>=5.3.3'
+ '@solana/keys@5.4.0':
+ resolution: {integrity: sha512-zQVbAwdoXorgXjlhlVTZaymFG6N8n1zn2NT+xI6S8HtbrKIB/42xPdXFh+zIihGzRw+9k8jzU7Axki/IPm6qWQ==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: ^5.0.0
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/kit@5.0.0':
resolution: {integrity: sha512-3ahtzmmMgU+1l2YMhQJSKKm14IdvCycOE/m4XNMu/4icBIptmBgZxrmgRpPHqBilBa+Krp/hBuTg4HWl9IAgWw==}
engines: {node: '>=20.18.0'}
@@ -2797,6 +2898,24 @@ packages:
peerDependencies:
typescript: '>=5.3.3'
+ '@solana/nominal-types@5.4.0':
+ resolution: {integrity: sha512-h4dTRQwTerzksE5B1WmObN6TvLo8dYUd7kpUUynGd8WJjK0zz3zkDhq0MkA3aF6A1C2C82BSGqSsN9EN0E6Exg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: ^5.0.0
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@solana/offchain-messages@5.4.0':
+ resolution: {integrity: sha512-DjdlYJCcKfgh4dkdk+owH1bP+Q4BRqCs55mgWWp9PTwm/HHy/a5vcMtCi1GyIQXfhtNNvKBLbXrUE0Fxej8qlg==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: ^5.0.0
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/options@5.0.0':
resolution: {integrity: sha512-ezHVBFb9FXVSn8LUVRD2tLb6fejU0x8KtGEYyCYh0J0pQuXSITV0IQCjcEopvu/ZxWdXOJyzjvmymnhz90on5A==}
engines: {node: '>=20.18.0'}
@@ -2882,6 +3001,15 @@ packages:
peerDependencies:
typescript: '>=5.3.3'
+ '@solana/rpc-types@5.4.0':
+ resolution: {integrity: sha512-+C4N4/5AYzBdt3Y2yzkScknScy/jTx6wfvuJIY9XjOXtdDyZ8TmrnMwdPMTZPGLdLuHplJwlwy1acu/4hqmrBQ==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: ^5.0.0
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/rpc@5.0.0':
resolution: {integrity: sha512-Myx/ZBmMHkgh9Di3tLzc+vd30f+6YC1JXr9+YmIHKEeqN/+iTHkDJU2E/hGRLy8vTOBOU7+2466A+dLnSVuGkg==}
engines: {node: '>=20.18.0'}
@@ -2894,6 +3022,15 @@ packages:
peerDependencies:
typescript: '>=5.3.3'
+ '@solana/signers@5.4.0':
+ resolution: {integrity: sha512-s+fZxpi6UPr6XNk2pH/R84WjNRoSktrgG8AGNfsj/V8MJ++eKX7hhIf4JsHZtnnQXXrHmS3ozB2oHlc8yEJvCQ==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: ^5.0.0
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/subscribable@5.0.0':
resolution: {integrity: sha512-C2TydIRRd5XUJ8asbARi67Sj/3DRLubWalnNoafBhDsrb88jsRVylntvwXgBw/+lwJdEPEsUnxvcdgdm+3lFlw==}
engines: {node: '>=20.18.0'}
@@ -2918,12 +3055,30 @@ packages:
peerDependencies:
typescript: '>=5.3.3'
+ '@solana/transaction-messages@5.4.0':
+ resolution: {integrity: sha512-qd/3kZDaPiHM0amhn3vXnupfcsFTVz6CYuHXvq9HFv/fq32+5Kp1FMLnmHwoSxQxdTMDghPdOhC4vhNhuWmuVQ==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: ^5.0.0
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/transactions@5.0.0':
resolution: {integrity: sha512-4TcsqH7JtgRKGGBIRRGz0n+tXu4h5TPPC49kkV0ygIndQaHW7FOZUYTwQ0epq0A5h9KYi+ClNbzF9xiuDbAD5Q==}
engines: {node: '>=20.18.0'}
peerDependencies:
typescript: '>=5.3.3'
+ '@solana/transactions@5.4.0':
+ resolution: {integrity: sha512-OuY4M4x/xna8KZQIrz8tSrI9EEul9Od97XejqFmGGkEjbRsUOfJW8705TveTW8jU3bd5RGecFYscPgS2F+m7jQ==}
+ engines: {node: '>=20.18.0'}
+ peerDependencies:
+ typescript: ^5.0.0
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
'@solana/wallet-adapter-base@0.9.27':
resolution: {integrity: sha512-kXjeNfNFVs/NE9GPmysBRKQ/nf+foSaq3kfVSeMcO/iVgigyRmB551OjU3WyAolLG/1jeEfKLqF9fKwMCRkUqg==}
engines: {node: '>=20'}
@@ -3250,6 +3405,9 @@ packages:
'@types/node@24.10.0':
resolution: {integrity: sha512-qzQZRBqkFsYyaSWXuEHc2WR9c0a0CXwiE5FWUvn7ZM+vdy1uZLfCunD38UzhuB7YN/J11ndbDBcTmOdxJo9Q7A==}
+ '@types/node@25.0.9':
+ resolution: {integrity: sha512-/rpCXHlCWeqClNBwUhDcusJxXYDjZTyE8v5oTO7WbL8eij2nKhUeU89/6xgjU7N4/Vh3He0BtyhJdQbDyhiXAw==}
+
'@types/react-dom@19.2.2':
resolution: {integrity: sha512-9KQPoO6mZCi7jcIStSnlOWn2nEF3mNmyr3rIAsGnAbQKYbRLyqmeSc39EVgtxXVia+LMT8j3knZLAZAh+xLmrw==}
peerDependencies:
@@ -3544,6 +3702,10 @@ packages:
resolution: {integrity: sha512-2NovHVesVF5TXefsGX1yzx1xgr7+m9JQenvz6FQY3qd+YXkKkYiv+vTCc7OriP9mcDZpTC5mAOYN4ocd29+erA==}
hasBin: true
+ baseline-browser-mapping@2.9.17:
+ resolution: {integrity: sha512-agD0MgJFUP/4nvjqzIB29zRPUuCF7Ge6mEv9s8dHrtYD7QWXRcx75rOADE/d5ah1NI+0vkDl0yorDd5U852IQQ==}
+ hasBin: true
+
better-path-resolve@1.0.0:
resolution: {integrity: sha512-pbnl5XzGBdrFU/wT4jqmJVPn2B6UHPBOhzMQkY/SPUPB6QtUXtmBHBIwCbXJol93mOpGMnQyP/+BB19q04xj7g==}
engines: {node: '>=4'}
@@ -3576,6 +3738,11 @@ packages:
engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
hasBin: true
+ browserslist@4.28.1:
+ resolution: {integrity: sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA==}
+ engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
+ hasBin: true
+
bs58@4.0.1:
resolution: {integrity: sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==}
@@ -3637,6 +3804,9 @@ packages:
caniuse-lite@1.0.30001759:
resolution: {integrity: sha512-Pzfx9fOKoKvevQf8oCXoyNRQ5QyxJj+3O0Rqx2V5oxT61KGx8+n6hV/IUyJeifUci2clnmmKVpvtiqRzgiWjSw==}
+ caniuse-lite@1.0.30001765:
+ resolution: {integrity: sha512-LWcNtSyZrakjECqmpP4qdg0MMGdN368D7X8XvvAqOcqMv0RxnlqVKZl2V6/mBR68oYMxOZPLw/gO7DuisMHUvQ==}
+
ccount@2.0.1:
resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==}
@@ -3740,6 +3910,10 @@ packages:
resolution: {integrity: sha512-2JkV3gUZUVrbNA+1sjBOYLsMZ5cEEl8GTFP2a4AVz5hvasAMCQ1D2l2le/cX+pV4N6ZU17zjUahLpIXRrnWL8A==}
engines: {node: '>=20'}
+ commander@14.0.2:
+ resolution: {integrity: sha512-TywoWNNRbhoD0BXs1P3ZEScW8W5iKrnbithIl0YH+uCmBd0QpPOA8yc82DS3BIE5Ma6FnBVUsJ7wVUDz4dvOWQ==}
+ engines: {node: '>=20'}
+
commander@2.20.3:
resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==}
@@ -3904,6 +4078,9 @@ packages:
electron-to-chromium@1.5.245:
resolution: {integrity: sha512-rdmGfW47ZhL/oWEJAY4qxRtdly2B98ooTJ0pdEI4jhVLZ6tNf8fPtov2wS1IRKwFJT92le3x4Knxiwzl7cPPpQ==}
+ electron-to-chromium@1.5.267:
+ resolution: {integrity: sha512-0Drusm6MVRXSOJpGbaSVgcQsuB4hEkMpHXaVstcPmhu5LIedxs1xNK/nIxmQIU/RPC0+1/o0AVZfBTkTNJOdUw==}
+
emoji-regex-xs@2.0.1:
resolution: {integrity: sha512-1QFuh8l7LqUcKe24LsPUNzjrzJQ7pgRwp1QMcZ5MX6mFplk2zQ08NVCM84++1cveaUUYtcCYHmeFEuNg16sU4g==}
engines: {node: '>=10.0.0'}
@@ -5841,8 +6018,8 @@ packages:
resolution: {integrity: sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==}
engines: {node: '>=8'}
- terser@5.44.1:
- resolution: {integrity: sha512-t/R3R/n0MSwnnazuPpPNVO60LX0SKL45pyl9YlvxIdkH0Of7D5qM2EVe+yASRIlY5pZ73nclYJfNANGWPwFDZw==}
+ terser@5.46.0:
+ resolution: {integrity: sha512-jTwoImyr/QbOWFFso3YoU3ik0jBBDJ6JTOQiy/J2YxVJdZCc+5u7skhNwiOR3FQIygFqVUPHl7qbbxtjW2K3Qg==}
engines: {node: '>=10'}
hasBin: true
@@ -5983,6 +6160,12 @@ packages:
resolution: {integrity: sha512-kC5VJqOXo50k0/0jnJDDjibLAXalqT9j7PQ56so0pN+81VR4Fwb2QgIE9dTzT3phqOTQuEXkPh3sCpnv5Isz2g==}
hasBin: true
+ tx-indexer@1.4.0:
+ resolution: {integrity: sha512-rcqrKexjb1miCnCFCsBzxt7rl6b9XfE5wFVtUMWuBlhrgheru7joWYnZfZz+9icKJohF0UyvBrsLOziC0teNAw==}
+ peerDependencies:
+ '@solana/kit': ^5.0.0
+ typescript: ^5
+
type-detect@4.0.8:
resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==}
engines: {node: '>=4'}
@@ -6066,6 +6249,12 @@ packages:
peerDependencies:
browserslist: '>= 4.21.0'
+ update-browserslist-db@1.2.3:
+ resolution: {integrity: sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==}
+ hasBin: true
+ peerDependencies:
+ browserslist: '>= 4.21.0'
+
url-parse@1.5.10:
resolution: {integrity: sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==}
@@ -6367,15 +6556,15 @@ snapshots:
'@aws-crypto/sha256-js': 5.2.0
'@aws-crypto/supports-web-crypto': 5.2.0
'@aws-crypto/util': 5.2.0
- '@aws-sdk/types': 3.968.0
- '@aws-sdk/util-locate-window': 3.965.2
+ '@aws-sdk/types': 3.972.0
+ '@aws-sdk/util-locate-window': 3.965.3
'@smithy/util-utf8': 2.3.0
tslib: 2.8.1
'@aws-crypto/sha256-js@5.2.0':
dependencies:
'@aws-crypto/util': 5.2.0
- '@aws-sdk/types': 3.968.0
+ '@aws-sdk/types': 3.972.0
tslib: 2.8.1
'@aws-crypto/supports-web-crypto@5.2.0':
@@ -6384,46 +6573,46 @@ snapshots:
'@aws-crypto/util@5.2.0':
dependencies:
- '@aws-sdk/types': 3.968.0
+ '@aws-sdk/types': 3.972.0
'@smithy/util-utf8': 2.3.0
tslib: 2.8.1
- '@aws-sdk/client-kms@3.968.0':
+ '@aws-sdk/client-kms@3.972.0':
dependencies:
'@aws-crypto/sha256-browser': 5.2.0
'@aws-crypto/sha256-js': 5.2.0
- '@aws-sdk/core': 3.968.0
- '@aws-sdk/credential-provider-node': 3.968.0
- '@aws-sdk/middleware-host-header': 3.968.0
- '@aws-sdk/middleware-logger': 3.968.0
- '@aws-sdk/middleware-recursion-detection': 3.968.0
- '@aws-sdk/middleware-user-agent': 3.968.0
- '@aws-sdk/region-config-resolver': 3.968.0
- '@aws-sdk/types': 3.968.0
- '@aws-sdk/util-endpoints': 3.968.0
- '@aws-sdk/util-user-agent-browser': 3.968.0
- '@aws-sdk/util-user-agent-node': 3.968.0
+ '@aws-sdk/core': 3.972.0
+ '@aws-sdk/credential-provider-node': 3.972.0
+ '@aws-sdk/middleware-host-header': 3.972.0
+ '@aws-sdk/middleware-logger': 3.972.0
+ '@aws-sdk/middleware-recursion-detection': 3.972.0
+ '@aws-sdk/middleware-user-agent': 3.972.0
+ '@aws-sdk/region-config-resolver': 3.972.0
+ '@aws-sdk/types': 3.972.0
+ '@aws-sdk/util-endpoints': 3.972.0
+ '@aws-sdk/util-user-agent-browser': 3.972.0
+ '@aws-sdk/util-user-agent-node': 3.972.0
'@smithy/config-resolver': 4.4.6
- '@smithy/core': 3.20.5
+ '@smithy/core': 3.21.0
'@smithy/fetch-http-handler': 5.3.9
'@smithy/hash-node': 4.2.8
'@smithy/invalid-dependency': 4.2.8
'@smithy/middleware-content-length': 4.2.8
- '@smithy/middleware-endpoint': 4.4.6
- '@smithy/middleware-retry': 4.4.22
+ '@smithy/middleware-endpoint': 4.4.10
+ '@smithy/middleware-retry': 4.4.26
'@smithy/middleware-serde': 4.2.9
'@smithy/middleware-stack': 4.2.8
'@smithy/node-config-provider': 4.3.8
'@smithy/node-http-handler': 4.4.8
'@smithy/protocol-http': 5.3.8
- '@smithy/smithy-client': 4.10.7
+ '@smithy/smithy-client': 4.10.11
'@smithy/types': 4.12.0
'@smithy/url-parser': 4.2.8
'@smithy/util-base64': 4.3.0
'@smithy/util-body-length-browser': 4.2.0
'@smithy/util-body-length-node': 4.2.1
- '@smithy/util-defaults-mode-browser': 4.3.21
- '@smithy/util-defaults-mode-node': 4.2.24
+ '@smithy/util-defaults-mode-browser': 4.3.25
+ '@smithy/util-defaults-mode-node': 4.2.28
'@smithy/util-endpoints': 3.2.8
'@smithy/util-middleware': 4.2.8
'@smithy/util-retry': 4.2.8
@@ -6432,41 +6621,41 @@ snapshots:
transitivePeerDependencies:
- aws-crt
- '@aws-sdk/client-sso@3.968.0':
+ '@aws-sdk/client-sso@3.972.0':
dependencies:
'@aws-crypto/sha256-browser': 5.2.0
'@aws-crypto/sha256-js': 5.2.0
- '@aws-sdk/core': 3.968.0
- '@aws-sdk/middleware-host-header': 3.968.0
- '@aws-sdk/middleware-logger': 3.968.0
- '@aws-sdk/middleware-recursion-detection': 3.968.0
- '@aws-sdk/middleware-user-agent': 3.968.0
- '@aws-sdk/region-config-resolver': 3.968.0
- '@aws-sdk/types': 3.968.0
- '@aws-sdk/util-endpoints': 3.968.0
- '@aws-sdk/util-user-agent-browser': 3.968.0
- '@aws-sdk/util-user-agent-node': 3.968.0
+ '@aws-sdk/core': 3.972.0
+ '@aws-sdk/middleware-host-header': 3.972.0
+ '@aws-sdk/middleware-logger': 3.972.0
+ '@aws-sdk/middleware-recursion-detection': 3.972.0
+ '@aws-sdk/middleware-user-agent': 3.972.0
+ '@aws-sdk/region-config-resolver': 3.972.0
+ '@aws-sdk/types': 3.972.0
+ '@aws-sdk/util-endpoints': 3.972.0
+ '@aws-sdk/util-user-agent-browser': 3.972.0
+ '@aws-sdk/util-user-agent-node': 3.972.0
'@smithy/config-resolver': 4.4.6
- '@smithy/core': 3.20.5
+ '@smithy/core': 3.21.0
'@smithy/fetch-http-handler': 5.3.9
'@smithy/hash-node': 4.2.8
'@smithy/invalid-dependency': 4.2.8
'@smithy/middleware-content-length': 4.2.8
- '@smithy/middleware-endpoint': 4.4.6
- '@smithy/middleware-retry': 4.4.22
+ '@smithy/middleware-endpoint': 4.4.10
+ '@smithy/middleware-retry': 4.4.26
'@smithy/middleware-serde': 4.2.9
'@smithy/middleware-stack': 4.2.8
'@smithy/node-config-provider': 4.3.8
'@smithy/node-http-handler': 4.4.8
'@smithy/protocol-http': 5.3.8
- '@smithy/smithy-client': 4.10.7
+ '@smithy/smithy-client': 4.10.11
'@smithy/types': 4.12.0
'@smithy/url-parser': 4.2.8
'@smithy/util-base64': 4.3.0
'@smithy/util-body-length-browser': 4.2.0
'@smithy/util-body-length-node': 4.2.1
- '@smithy/util-defaults-mode-browser': 4.3.21
- '@smithy/util-defaults-mode-node': 4.2.24
+ '@smithy/util-defaults-mode-browser': 4.3.25
+ '@smithy/util-defaults-mode-node': 4.2.28
'@smithy/util-endpoints': 3.2.8
'@smithy/util-middleware': 4.2.8
'@smithy/util-retry': 4.2.8
@@ -6475,54 +6664,54 @@ snapshots:
transitivePeerDependencies:
- aws-crt
- '@aws-sdk/core@3.968.0':
+ '@aws-sdk/core@3.972.0':
dependencies:
- '@aws-sdk/types': 3.968.0
- '@aws-sdk/xml-builder': 3.968.0
- '@smithy/core': 3.20.5
+ '@aws-sdk/types': 3.972.0
+ '@aws-sdk/xml-builder': 3.972.0
+ '@smithy/core': 3.21.0
'@smithy/node-config-provider': 4.3.8
'@smithy/property-provider': 4.2.8
'@smithy/protocol-http': 5.3.8
'@smithy/signature-v4': 5.3.8
- '@smithy/smithy-client': 4.10.7
+ '@smithy/smithy-client': 4.10.11
'@smithy/types': 4.12.0
'@smithy/util-base64': 4.3.0
'@smithy/util-middleware': 4.2.8
'@smithy/util-utf8': 4.2.0
tslib: 2.8.1
- '@aws-sdk/credential-provider-env@3.968.0':
+ '@aws-sdk/credential-provider-env@3.972.0':
dependencies:
- '@aws-sdk/core': 3.968.0
- '@aws-sdk/types': 3.968.0
+ '@aws-sdk/core': 3.972.0
+ '@aws-sdk/types': 3.972.0
'@smithy/property-provider': 4.2.8
'@smithy/types': 4.12.0
tslib: 2.8.1
- '@aws-sdk/credential-provider-http@3.968.0':
+ '@aws-sdk/credential-provider-http@3.972.0':
dependencies:
- '@aws-sdk/core': 3.968.0
- '@aws-sdk/types': 3.968.0
+ '@aws-sdk/core': 3.972.0
+ '@aws-sdk/types': 3.972.0
'@smithy/fetch-http-handler': 5.3.9
'@smithy/node-http-handler': 4.4.8
'@smithy/property-provider': 4.2.8
'@smithy/protocol-http': 5.3.8
- '@smithy/smithy-client': 4.10.7
+ '@smithy/smithy-client': 4.10.11
'@smithy/types': 4.12.0
'@smithy/util-stream': 4.5.10
tslib: 2.8.1
- '@aws-sdk/credential-provider-ini@3.968.0':
- dependencies:
- '@aws-sdk/core': 3.968.0
- '@aws-sdk/credential-provider-env': 3.968.0
- '@aws-sdk/credential-provider-http': 3.968.0
- '@aws-sdk/credential-provider-login': 3.968.0
- '@aws-sdk/credential-provider-process': 3.968.0
- '@aws-sdk/credential-provider-sso': 3.968.0
- '@aws-sdk/credential-provider-web-identity': 3.968.0
- '@aws-sdk/nested-clients': 3.968.0
- '@aws-sdk/types': 3.968.0
+ '@aws-sdk/credential-provider-ini@3.972.0':
+ dependencies:
+ '@aws-sdk/core': 3.972.0
+ '@aws-sdk/credential-provider-env': 3.972.0
+ '@aws-sdk/credential-provider-http': 3.972.0
+ '@aws-sdk/credential-provider-login': 3.972.0
+ '@aws-sdk/credential-provider-process': 3.972.0
+ '@aws-sdk/credential-provider-sso': 3.972.0
+ '@aws-sdk/credential-provider-web-identity': 3.972.0
+ '@aws-sdk/nested-clients': 3.972.0
+ '@aws-sdk/types': 3.972.0
'@smithy/credential-provider-imds': 4.2.8
'@smithy/property-provider': 4.2.8
'@smithy/shared-ini-file-loader': 4.4.3
@@ -6531,11 +6720,11 @@ snapshots:
transitivePeerDependencies:
- aws-crt
- '@aws-sdk/credential-provider-login@3.968.0':
+ '@aws-sdk/credential-provider-login@3.972.0':
dependencies:
- '@aws-sdk/core': 3.968.0
- '@aws-sdk/nested-clients': 3.968.0
- '@aws-sdk/types': 3.968.0
+ '@aws-sdk/core': 3.972.0
+ '@aws-sdk/nested-clients': 3.972.0
+ '@aws-sdk/types': 3.972.0
'@smithy/property-provider': 4.2.8
'@smithy/protocol-http': 5.3.8
'@smithy/shared-ini-file-loader': 4.4.3
@@ -6544,15 +6733,15 @@ snapshots:
transitivePeerDependencies:
- aws-crt
- '@aws-sdk/credential-provider-node@3.968.0':
+ '@aws-sdk/credential-provider-node@3.972.0':
dependencies:
- '@aws-sdk/credential-provider-env': 3.968.0
- '@aws-sdk/credential-provider-http': 3.968.0
- '@aws-sdk/credential-provider-ini': 3.968.0
- '@aws-sdk/credential-provider-process': 3.968.0
- '@aws-sdk/credential-provider-sso': 3.968.0
- '@aws-sdk/credential-provider-web-identity': 3.968.0
- '@aws-sdk/types': 3.968.0
+ '@aws-sdk/credential-provider-env': 3.972.0
+ '@aws-sdk/credential-provider-http': 3.972.0
+ '@aws-sdk/credential-provider-ini': 3.972.0
+ '@aws-sdk/credential-provider-process': 3.972.0
+ '@aws-sdk/credential-provider-sso': 3.972.0
+ '@aws-sdk/credential-provider-web-identity': 3.972.0
+ '@aws-sdk/types': 3.972.0
'@smithy/credential-provider-imds': 4.2.8
'@smithy/property-provider': 4.2.8
'@smithy/shared-ini-file-loader': 4.4.3
@@ -6561,21 +6750,21 @@ snapshots:
transitivePeerDependencies:
- aws-crt
- '@aws-sdk/credential-provider-process@3.968.0':
+ '@aws-sdk/credential-provider-process@3.972.0':
dependencies:
- '@aws-sdk/core': 3.968.0
- '@aws-sdk/types': 3.968.0
+ '@aws-sdk/core': 3.972.0
+ '@aws-sdk/types': 3.972.0
'@smithy/property-provider': 4.2.8
'@smithy/shared-ini-file-loader': 4.4.3
'@smithy/types': 4.12.0
tslib: 2.8.1
- '@aws-sdk/credential-provider-sso@3.968.0':
+ '@aws-sdk/credential-provider-sso@3.972.0':
dependencies:
- '@aws-sdk/client-sso': 3.968.0
- '@aws-sdk/core': 3.968.0
- '@aws-sdk/token-providers': 3.968.0
- '@aws-sdk/types': 3.968.0
+ '@aws-sdk/client-sso': 3.972.0
+ '@aws-sdk/core': 3.972.0
+ '@aws-sdk/token-providers': 3.972.0
+ '@aws-sdk/types': 3.972.0
'@smithy/property-provider': 4.2.8
'@smithy/shared-ini-file-loader': 4.4.3
'@smithy/types': 4.12.0
@@ -6583,11 +6772,11 @@ snapshots:
transitivePeerDependencies:
- aws-crt
- '@aws-sdk/credential-provider-web-identity@3.968.0':
+ '@aws-sdk/credential-provider-web-identity@3.972.0':
dependencies:
- '@aws-sdk/core': 3.968.0
- '@aws-sdk/nested-clients': 3.968.0
- '@aws-sdk/types': 3.968.0
+ '@aws-sdk/core': 3.972.0
+ '@aws-sdk/nested-clients': 3.972.0
+ '@aws-sdk/types': 3.972.0
'@smithy/property-provider': 4.2.8
'@smithy/shared-ini-file-loader': 4.4.3
'@smithy/types': 4.12.0
@@ -6595,72 +6784,72 @@ snapshots:
transitivePeerDependencies:
- aws-crt
- '@aws-sdk/middleware-host-header@3.968.0':
+ '@aws-sdk/middleware-host-header@3.972.0':
dependencies:
- '@aws-sdk/types': 3.968.0
+ '@aws-sdk/types': 3.972.0
'@smithy/protocol-http': 5.3.8
'@smithy/types': 4.12.0
tslib: 2.8.1
- '@aws-sdk/middleware-logger@3.968.0':
+ '@aws-sdk/middleware-logger@3.972.0':
dependencies:
- '@aws-sdk/types': 3.968.0
+ '@aws-sdk/types': 3.972.0
'@smithy/types': 4.12.0
tslib: 2.8.1
- '@aws-sdk/middleware-recursion-detection@3.968.0':
+ '@aws-sdk/middleware-recursion-detection@3.972.0':
dependencies:
- '@aws-sdk/types': 3.968.0
+ '@aws-sdk/types': 3.972.0
'@aws/lambda-invoke-store': 0.2.3
'@smithy/protocol-http': 5.3.8
'@smithy/types': 4.12.0
tslib: 2.8.1
- '@aws-sdk/middleware-user-agent@3.968.0':
+ '@aws-sdk/middleware-user-agent@3.972.0':
dependencies:
- '@aws-sdk/core': 3.968.0
- '@aws-sdk/types': 3.968.0
- '@aws-sdk/util-endpoints': 3.968.0
- '@smithy/core': 3.20.5
+ '@aws-sdk/core': 3.972.0
+ '@aws-sdk/types': 3.972.0
+ '@aws-sdk/util-endpoints': 3.972.0
+ '@smithy/core': 3.21.0
'@smithy/protocol-http': 5.3.8
'@smithy/types': 4.12.0
tslib: 2.8.1
- '@aws-sdk/nested-clients@3.968.0':
+ '@aws-sdk/nested-clients@3.972.0':
dependencies:
'@aws-crypto/sha256-browser': 5.2.0
'@aws-crypto/sha256-js': 5.2.0
- '@aws-sdk/core': 3.968.0
- '@aws-sdk/middleware-host-header': 3.968.0
- '@aws-sdk/middleware-logger': 3.968.0
- '@aws-sdk/middleware-recursion-detection': 3.968.0
- '@aws-sdk/middleware-user-agent': 3.968.0
- '@aws-sdk/region-config-resolver': 3.968.0
- '@aws-sdk/types': 3.968.0
- '@aws-sdk/util-endpoints': 3.968.0
- '@aws-sdk/util-user-agent-browser': 3.968.0
- '@aws-sdk/util-user-agent-node': 3.968.0
+ '@aws-sdk/core': 3.972.0
+ '@aws-sdk/middleware-host-header': 3.972.0
+ '@aws-sdk/middleware-logger': 3.972.0
+ '@aws-sdk/middleware-recursion-detection': 3.972.0
+ '@aws-sdk/middleware-user-agent': 3.972.0
+ '@aws-sdk/region-config-resolver': 3.972.0
+ '@aws-sdk/types': 3.972.0
+ '@aws-sdk/util-endpoints': 3.972.0
+ '@aws-sdk/util-user-agent-browser': 3.972.0
+ '@aws-sdk/util-user-agent-node': 3.972.0
'@smithy/config-resolver': 4.4.6
- '@smithy/core': 3.20.5
+ '@smithy/core': 3.21.0
'@smithy/fetch-http-handler': 5.3.9
'@smithy/hash-node': 4.2.8
'@smithy/invalid-dependency': 4.2.8
'@smithy/middleware-content-length': 4.2.8
- '@smithy/middleware-endpoint': 4.4.6
- '@smithy/middleware-retry': 4.4.22
+ '@smithy/middleware-endpoint': 4.4.10
+ '@smithy/middleware-retry': 4.4.26
'@smithy/middleware-serde': 4.2.9
'@smithy/middleware-stack': 4.2.8
'@smithy/node-config-provider': 4.3.8
'@smithy/node-http-handler': 4.4.8
'@smithy/protocol-http': 5.3.8
- '@smithy/smithy-client': 4.10.7
+ '@smithy/smithy-client': 4.10.11
'@smithy/types': 4.12.0
'@smithy/url-parser': 4.2.8
'@smithy/util-base64': 4.3.0
'@smithy/util-body-length-browser': 4.2.0
'@smithy/util-body-length-node': 4.2.1
- '@smithy/util-defaults-mode-browser': 4.3.21
- '@smithy/util-defaults-mode-node': 4.2.24
+ '@smithy/util-defaults-mode-browser': 4.3.25
+ '@smithy/util-defaults-mode-node': 4.2.28
'@smithy/util-endpoints': 3.2.8
'@smithy/util-middleware': 4.2.8
'@smithy/util-retry': 4.2.8
@@ -6669,19 +6858,19 @@ snapshots:
transitivePeerDependencies:
- aws-crt
- '@aws-sdk/region-config-resolver@3.968.0':
+ '@aws-sdk/region-config-resolver@3.972.0':
dependencies:
- '@aws-sdk/types': 3.968.0
+ '@aws-sdk/types': 3.972.0
'@smithy/config-resolver': 4.4.6
'@smithy/node-config-provider': 4.3.8
'@smithy/types': 4.12.0
tslib: 2.8.1
- '@aws-sdk/token-providers@3.968.0':
+ '@aws-sdk/token-providers@3.972.0':
dependencies:
- '@aws-sdk/core': 3.968.0
- '@aws-sdk/nested-clients': 3.968.0
- '@aws-sdk/types': 3.968.0
+ '@aws-sdk/core': 3.972.0
+ '@aws-sdk/nested-clients': 3.972.0
+ '@aws-sdk/types': 3.972.0
'@smithy/property-provider': 4.2.8
'@smithy/shared-ini-file-loader': 4.4.3
'@smithy/types': 4.12.0
@@ -6689,39 +6878,39 @@ snapshots:
transitivePeerDependencies:
- aws-crt
- '@aws-sdk/types@3.968.0':
+ '@aws-sdk/types@3.972.0':
dependencies:
'@smithy/types': 4.12.0
tslib: 2.8.1
- '@aws-sdk/util-endpoints@3.968.0':
+ '@aws-sdk/util-endpoints@3.972.0':
dependencies:
- '@aws-sdk/types': 3.968.0
+ '@aws-sdk/types': 3.972.0
'@smithy/types': 4.12.0
'@smithy/url-parser': 4.2.8
'@smithy/util-endpoints': 3.2.8
tslib: 2.8.1
- '@aws-sdk/util-locate-window@3.965.2':
+ '@aws-sdk/util-locate-window@3.965.3':
dependencies:
tslib: 2.8.1
- '@aws-sdk/util-user-agent-browser@3.968.0':
+ '@aws-sdk/util-user-agent-browser@3.972.0':
dependencies:
- '@aws-sdk/types': 3.968.0
+ '@aws-sdk/types': 3.972.0
'@smithy/types': 4.12.0
bowser: 2.13.1
tslib: 2.8.1
- '@aws-sdk/util-user-agent-node@3.968.0':
+ '@aws-sdk/util-user-agent-node@3.972.0':
dependencies:
- '@aws-sdk/middleware-user-agent': 3.968.0
- '@aws-sdk/types': 3.968.0
+ '@aws-sdk/middleware-user-agent': 3.972.0
+ '@aws-sdk/types': 3.972.0
'@smithy/node-config-provider': 4.3.8
'@smithy/types': 4.12.0
tslib: 2.8.1
- '@aws-sdk/xml-builder@3.968.0':
+ '@aws-sdk/xml-builder@3.972.0':
dependencies:
'@smithy/types': 4.12.0
fast-xml-parser: 5.2.5
@@ -6769,7 +6958,7 @@ snapshots:
dependencies:
'@babel/compat-data': 7.28.6
'@babel/helper-validator-option': 7.27.1
- browserslist: 4.27.0
+ browserslist: 4.28.1
lru-cache: 5.1.1
semver: 6.3.1
@@ -6889,6 +7078,8 @@ snapshots:
'@babel/runtime@7.28.4': {}
+ '@babel/runtime@7.28.6': {}
+
'@babel/template@7.28.6':
dependencies:
'@babel/code-frame': 7.28.6
@@ -6991,7 +7182,7 @@ snapshots:
transitivePeerDependencies:
- encoding
- '@changesets/cli@2.29.7(@types/node@24.10.0)':
+ '@changesets/cli@2.29.7(@types/node@25.0.9)':
dependencies:
'@changesets/apply-release-plan': 7.0.13
'@changesets/assemble-release-plan': 6.0.9
@@ -7007,7 +7198,7 @@ snapshots:
'@changesets/should-skip-package': 0.1.2
'@changesets/types': 6.1.0
'@changesets/write': 0.4.0
- '@inquirer/external-editor': 1.0.3(@types/node@24.10.0)
+ '@inquirer/external-editor': 1.0.3(@types/node@25.0.9)
'@manypkg/get-packages': 1.1.3
ansi-colors: 4.1.3
ci-info: 3.9.0
@@ -7527,12 +7718,12 @@ snapshots:
'@img/sharp-win32-x64@0.34.5':
optional: true
- '@inquirer/external-editor@1.0.3(@types/node@24.10.0)':
+ '@inquirer/external-editor@1.0.3(@types/node@25.0.9)':
dependencies:
chardet: 2.1.1
iconv-lite: 0.7.0
optionalDependencies:
- '@types/node': 24.10.0
+ '@types/node': 25.0.9
'@isaacs/balanced-match@4.0.1': {}
@@ -7560,14 +7751,14 @@ snapshots:
dependencies:
'@jest/fake-timers': 29.7.0
'@jest/types': 29.6.3
- '@types/node': 24.10.0
+ '@types/node': 25.0.9
jest-mock: 29.7.0
'@jest/fake-timers@29.7.0':
dependencies:
'@jest/types': 29.6.3
'@sinonjs/fake-timers': 10.3.0
- '@types/node': 24.10.0
+ '@types/node': 25.0.9
jest-message-util: 29.7.0
jest-mock: 29.7.0
jest-util: 29.7.0
@@ -7601,7 +7792,7 @@ snapshots:
'@jest/schemas': 29.6.3
'@types/istanbul-lib-coverage': 2.0.6
'@types/istanbul-reports': 3.0.4
- '@types/node': 24.10.0
+ '@types/node': 25.0.9
'@types/yargs': 17.0.35
chalk: 4.1.2
@@ -8358,7 +8549,7 @@ snapshots:
'@smithy/util-middleware': 4.2.8
tslib: 2.8.1
- '@smithy/core@3.20.5':
+ '@smithy/core@3.21.0':
dependencies:
'@smithy/middleware-serde': 4.2.9
'@smithy/protocol-http': 5.3.8
@@ -8413,9 +8604,9 @@ snapshots:
'@smithy/types': 4.12.0
tslib: 2.8.1
- '@smithy/middleware-endpoint@4.4.6':
+ '@smithy/middleware-endpoint@4.4.10':
dependencies:
- '@smithy/core': 3.20.5
+ '@smithy/core': 3.21.0
'@smithy/middleware-serde': 4.2.9
'@smithy/node-config-provider': 4.3.8
'@smithy/shared-ini-file-loader': 4.4.3
@@ -8424,12 +8615,12 @@ snapshots:
'@smithy/util-middleware': 4.2.8
tslib: 2.8.1
- '@smithy/middleware-retry@4.4.22':
+ '@smithy/middleware-retry@4.4.26':
dependencies:
'@smithy/node-config-provider': 4.3.8
'@smithy/protocol-http': 5.3.8
'@smithy/service-error-classification': 4.2.8
- '@smithy/smithy-client': 4.10.7
+ '@smithy/smithy-client': 4.10.11
'@smithy/types': 4.12.0
'@smithy/util-middleware': 4.2.8
'@smithy/util-retry': 4.2.8
@@ -8503,10 +8694,10 @@ snapshots:
'@smithy/util-utf8': 4.2.0
tslib: 2.8.1
- '@smithy/smithy-client@4.10.7':
+ '@smithy/smithy-client@4.10.11':
dependencies:
- '@smithy/core': 3.20.5
- '@smithy/middleware-endpoint': 4.4.6
+ '@smithy/core': 3.21.0
+ '@smithy/middleware-endpoint': 4.4.10
'@smithy/middleware-stack': 4.2.8
'@smithy/protocol-http': 5.3.8
'@smithy/types': 4.12.0
@@ -8551,20 +8742,20 @@ snapshots:
dependencies:
tslib: 2.8.1
- '@smithy/util-defaults-mode-browser@4.3.21':
+ '@smithy/util-defaults-mode-browser@4.3.25':
dependencies:
'@smithy/property-provider': 4.2.8
- '@smithy/smithy-client': 4.10.7
+ '@smithy/smithy-client': 4.10.11
'@smithy/types': 4.12.0
tslib: 2.8.1
- '@smithy/util-defaults-mode-node@4.2.24':
+ '@smithy/util-defaults-mode-node@4.2.28':
dependencies:
'@smithy/config-resolver': 4.4.6
'@smithy/credential-provider-imds': 4.2.8
'@smithy/node-config-provider': 4.3.8
'@smithy/property-provider': 4.2.8
- '@smithy/smithy-client': 4.10.7
+ '@smithy/smithy-client': 4.10.11
'@smithy/types': 4.12.0
tslib: 2.8.1
@@ -8734,11 +8925,29 @@ snapshots:
transitivePeerDependencies:
- fastestsmallesttextencoderdecoder
+ '@solana/addresses@5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/assertions': 5.4.0(typescript@5.9.3)
+ '@solana/codecs-core': 5.4.0(typescript@5.9.3)
+ '@solana/codecs-strings': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 5.4.0(typescript@5.9.3)
+ '@solana/nominal-types': 5.4.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
'@solana/assertions@5.0.0(typescript@5.9.3)':
dependencies:
'@solana/errors': 5.0.0(typescript@5.9.3)
typescript: 5.9.3
+ '@solana/assertions@5.4.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 5.4.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
'@solana/buffer-layout@4.0.1':
dependencies:
buffer: 6.0.3
@@ -8758,6 +8967,12 @@ snapshots:
'@solana/errors': 5.0.0(typescript@5.9.3)
typescript: 5.9.3
+ '@solana/codecs-core@5.4.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/errors': 5.4.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
'@solana/codecs-data-structures@5.0.0(typescript@5.9.3)':
dependencies:
'@solana/codecs-core': 5.0.0(typescript@5.9.3)
@@ -8765,6 +8980,14 @@ snapshots:
'@solana/errors': 5.0.0(typescript@5.9.3)
typescript: 5.9.3
+ '@solana/codecs-data-structures@5.4.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/codecs-core': 5.4.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 5.4.0(typescript@5.9.3)
+ '@solana/errors': 5.4.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
'@solana/codecs-numbers@2.3.0(typescript@5.9.3)':
dependencies:
'@solana/codecs-core': 2.3.0(typescript@5.9.3)
@@ -8783,6 +9006,13 @@ snapshots:
'@solana/errors': 5.0.0(typescript@5.9.3)
typescript: 5.9.3
+ '@solana/codecs-numbers@5.4.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/codecs-core': 5.4.0(typescript@5.9.3)
+ '@solana/errors': 5.4.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
'@solana/codecs-strings@4.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
dependencies:
'@solana/codecs-core': 4.0.0(typescript@5.9.3)
@@ -8799,6 +9029,15 @@ snapshots:
fastestsmallesttextencoderdecoder: 1.0.22
typescript: 5.9.3
+ '@solana/codecs-strings@5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/codecs-core': 5.4.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 5.4.0(typescript@5.9.3)
+ '@solana/errors': 5.4.0(typescript@5.9.3)
+ optionalDependencies:
+ fastestsmallesttextencoderdecoder: 1.0.22
+ typescript: 5.9.3
+
'@solana/codecs@5.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
dependencies:
'@solana/codecs-core': 5.0.0(typescript@5.9.3)
@@ -8898,6 +9137,13 @@ snapshots:
commander: 14.0.1
typescript: 5.9.3
+ '@solana/errors@5.4.0(typescript@5.9.3)':
+ dependencies:
+ chalk: 5.6.2
+ commander: 14.0.2
+ optionalDependencies:
+ typescript: 5.9.3
+
'@solana/fast-stable-stringify@5.0.0(typescript@5.9.3)':
dependencies:
typescript: 5.9.3
@@ -8906,6 +9152,10 @@ snapshots:
dependencies:
typescript: 5.9.3
+ '@solana/functional@5.4.0(typescript@5.9.3)':
+ optionalDependencies:
+ typescript: 5.9.3
+
'@solana/instruction-plans@5.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
dependencies:
'@solana/errors': 5.0.0(typescript@5.9.3)
@@ -8923,15 +9173,22 @@ snapshots:
'@solana/errors': 5.0.0(typescript@5.9.3)
typescript: 5.9.3
+ '@solana/instructions@5.4.0(typescript@5.9.3)':
+ dependencies:
+ '@solana/codecs-core': 5.4.0(typescript@5.9.3)
+ '@solana/errors': 5.4.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
'@solana/keychain-aws-kms@0.2.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
dependencies:
- '@aws-sdk/client-kms': 3.968.0
- '@solana/addresses': 5.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
- '@solana/codecs-strings': 5.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@aws-sdk/client-kms': 3.972.0
+ '@solana/addresses': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-strings': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
'@solana/keychain-core': 0.2.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
- '@solana/keys': 5.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
- '@solana/signers': 5.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
- '@solana/transactions': 5.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/keys': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/signers': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
transitivePeerDependencies:
- aws-crt
- fastestsmallesttextencoderdecoder
@@ -8939,12 +9196,12 @@ snapshots:
'@solana/keychain-core@0.2.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
dependencies:
- '@solana/addresses': 5.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
- '@solana/codecs-core': 5.0.0(typescript@5.9.3)
- '@solana/codecs-strings': 5.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
- '@solana/keys': 5.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
- '@solana/signers': 5.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
- '@solana/transactions': 5.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/addresses': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 5.4.0(typescript@5.9.3)
+ '@solana/codecs-strings': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/keys': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/signers': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
transitivePeerDependencies:
- fastestsmallesttextencoderdecoder
- typescript
@@ -8952,26 +9209,26 @@ snapshots:
'@solana/keychain-turnkey@0.2.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
dependencies:
'@noble/curves': 2.0.1
- '@solana/addresses': 5.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
- '@solana/codecs-core': 5.0.0(typescript@5.9.3)
- '@solana/codecs-strings': 5.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/addresses': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 5.4.0(typescript@5.9.3)
+ '@solana/codecs-strings': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
'@solana/keychain-core': 0.2.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
- '@solana/keys': 5.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
- '@solana/signers': 5.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
- '@solana/transactions': 5.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/keys': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/signers': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
transitivePeerDependencies:
- fastestsmallesttextencoderdecoder
- typescript
'@solana/keychain-vault@0.2.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
dependencies:
- '@solana/addresses': 5.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
- '@solana/codecs-core': 5.0.0(typescript@5.9.3)
- '@solana/codecs-strings': 5.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/addresses': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 5.4.0(typescript@5.9.3)
+ '@solana/codecs-strings': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
'@solana/keychain-core': 0.2.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
- '@solana/keys': 5.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
- '@solana/signers': 5.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
- '@solana/transactions': 5.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/keys': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/signers': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
transitivePeerDependencies:
- fastestsmallesttextencoderdecoder
- typescript
@@ -8987,6 +9244,18 @@ snapshots:
transitivePeerDependencies:
- fastestsmallesttextencoderdecoder
+ '@solana/keys@5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/assertions': 5.4.0(typescript@5.9.3)
+ '@solana/codecs-core': 5.4.0(typescript@5.9.3)
+ '@solana/codecs-strings': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 5.4.0(typescript@5.9.3)
+ '@solana/nominal-types': 5.4.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
'@solana/kit@5.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(ws@8.18.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))':
dependencies:
'@solana/accounts': 5.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
@@ -9017,6 +9286,25 @@ snapshots:
dependencies:
typescript: 5.9.3
+ '@solana/nominal-types@5.4.0(typescript@5.9.3)':
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@solana/offchain-messages@5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 5.4.0(typescript@5.9.3)
+ '@solana/codecs-data-structures': 5.4.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 5.4.0(typescript@5.9.3)
+ '@solana/codecs-strings': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 5.4.0(typescript@5.9.3)
+ '@solana/keys': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/nominal-types': 5.4.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
'@solana/options@5.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
dependencies:
'@solana/codecs-core': 5.0.0(typescript@5.9.3)
@@ -9150,6 +9438,19 @@ snapshots:
transitivePeerDependencies:
- fastestsmallesttextencoderdecoder
+ '@solana/rpc-types@5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 5.4.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 5.4.0(typescript@5.9.3)
+ '@solana/codecs-strings': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 5.4.0(typescript@5.9.3)
+ '@solana/nominal-types': 5.4.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
'@solana/rpc@5.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
dependencies:
'@solana/errors': 5.0.0(typescript@5.9.3)
@@ -9179,6 +9480,22 @@ snapshots:
transitivePeerDependencies:
- fastestsmallesttextencoderdecoder
+ '@solana/signers@5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 5.4.0(typescript@5.9.3)
+ '@solana/errors': 5.4.0(typescript@5.9.3)
+ '@solana/instructions': 5.4.0(typescript@5.9.3)
+ '@solana/keys': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/nominal-types': 5.4.0(typescript@5.9.3)
+ '@solana/offchain-messages': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-messages': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transactions': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
'@solana/subscribable@5.0.0(typescript@5.9.3)':
dependencies:
'@solana/errors': 5.0.0(typescript@5.9.3)
@@ -9226,6 +9543,22 @@ snapshots:
transitivePeerDependencies:
- fastestsmallesttextencoderdecoder
+ '@solana/transaction-messages@5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 5.4.0(typescript@5.9.3)
+ '@solana/codecs-data-structures': 5.4.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 5.4.0(typescript@5.9.3)
+ '@solana/errors': 5.4.0(typescript@5.9.3)
+ '@solana/functional': 5.4.0(typescript@5.9.3)
+ '@solana/instructions': 5.4.0(typescript@5.9.3)
+ '@solana/nominal-types': 5.4.0(typescript@5.9.3)
+ '@solana/rpc-types': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
'@solana/transactions@5.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
dependencies:
'@solana/addresses': 5.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
@@ -9244,6 +9577,25 @@ snapshots:
transitivePeerDependencies:
- fastestsmallesttextencoderdecoder
+ '@solana/transactions@5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)':
+ dependencies:
+ '@solana/addresses': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/codecs-core': 5.4.0(typescript@5.9.3)
+ '@solana/codecs-data-structures': 5.4.0(typescript@5.9.3)
+ '@solana/codecs-numbers': 5.4.0(typescript@5.9.3)
+ '@solana/codecs-strings': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/errors': 5.4.0(typescript@5.9.3)
+ '@solana/functional': 5.4.0(typescript@5.9.3)
+ '@solana/instructions': 5.4.0(typescript@5.9.3)
+ '@solana/keys': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/nominal-types': 5.4.0(typescript@5.9.3)
+ '@solana/rpc-types': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ '@solana/transaction-messages': 5.4.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - fastestsmallesttextencoderdecoder
+
'@solana/wallet-adapter-base@0.9.27(@solana/web3.js@1.98.4(bufferutil@4.0.9)(typescript@5.9.3)(utf-8-validate@5.0.10))':
dependencies:
'@solana/wallet-standard-features': 1.3.0
@@ -9513,7 +9865,7 @@ snapshots:
'@testing-library/dom@10.4.1':
dependencies:
'@babel/code-frame': 7.28.6
- '@babel/runtime': 7.28.4
+ '@babel/runtime': 7.28.6
'@types/aria-query': 5.0.4
aria-query: 5.3.0
dom-accessibility-api: 0.5.16
@@ -9590,7 +9942,7 @@ snapshots:
'@types/graceful-fs@4.1.9':
dependencies:
- '@types/node': 24.10.0
+ '@types/node': 25.0.9
'@types/hast@3.0.4':
dependencies:
@@ -9628,6 +9980,10 @@ snapshots:
dependencies:
undici-types: 7.16.0
+ '@types/node@25.0.9':
+ dependencies:
+ undici-types: 7.16.0
+
'@types/react-dom@19.2.2(@types/react@19.2.2)':
dependencies:
'@types/react': 19.2.2
@@ -9670,15 +10026,15 @@ snapshots:
'@resvg/resvg-wasm': 2.4.0
satori: 0.16.0
- '@vitejs/plugin-react-swc@4.2.0(@swc/helpers@0.5.17)(vite@7.1.12(@types/node@24.10.0)(jiti@1.21.7)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))':
+ '@vitejs/plugin-react-swc@4.2.0(@swc/helpers@0.5.17)(vite@7.1.12(@types/node@25.0.9)(jiti@1.21.7)(lightningcss@1.30.2)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2))':
dependencies:
'@rolldown/pluginutils': 1.0.0-beta.43
'@swc/core': 1.15.0(@swc/helpers@0.5.17)
- vite: 7.1.12(@types/node@24.10.0)(jiti@1.21.7)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)
+ vite: 7.1.12(@types/node@25.0.9)(jiti@1.21.7)(lightningcss@1.30.2)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)
transitivePeerDependencies:
- '@swc/helpers'
- '@vitest/coverage-v8@4.0.7(vitest@4.0.7(@types/debug@4.1.12)(@types/node@24.10.0)(jiti@2.6.1)(jsdom@24.1.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))':
+ '@vitest/coverage-v8@4.0.7(vitest@4.0.7(@types/debug@4.1.12)(@types/node@25.0.9)(jiti@2.6.1)(jsdom@24.1.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.2)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2))':
dependencies:
'@bcoe/v8-coverage': 1.0.2
'@vitest/utils': 4.0.7
@@ -9691,7 +10047,7 @@ snapshots:
magicast: 0.3.5
std-env: 3.10.0
tinyrainbow: 3.0.3
- vitest: 4.0.7(@types/debug@4.1.12)(@types/node@24.10.0)(jiti@2.6.1)(jsdom@24.1.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)
+ vitest: 4.0.7(@types/debug@4.1.12)(@types/node@25.0.9)(jiti@2.6.1)(jsdom@24.1.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.2)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)
transitivePeerDependencies:
- supports-color
@@ -9704,13 +10060,13 @@ snapshots:
chai: 6.2.0
tinyrainbow: 3.0.3
- '@vitest/mocker@4.0.7(vite@7.1.12(@types/node@24.10.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))':
+ '@vitest/mocker@4.0.7(vite@7.1.12(@types/node@25.0.9)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2))':
dependencies:
'@vitest/spy': 4.0.7
estree-walker: 3.0.3
magic-string: 0.30.21
optionalDependencies:
- vite: 7.1.12(@types/node@24.10.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)
+ vite: 7.1.12(@types/node@25.0.9)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)
'@vitest/pretty-format@4.0.7':
dependencies:
@@ -9928,6 +10284,8 @@ snapshots:
baseline-browser-mapping@2.8.25: {}
+ baseline-browser-mapping@2.9.17: {}
+
better-path-resolve@1.0.0:
dependencies:
is-windows: 1.0.2
@@ -9965,6 +10323,14 @@ snapshots:
node-releases: 2.0.27
update-browserslist-db: 1.1.4(browserslist@4.27.0)
+ browserslist@4.28.1:
+ dependencies:
+ baseline-browser-mapping: 2.9.17
+ caniuse-lite: 1.0.30001765
+ electron-to-chromium: 1.5.267
+ node-releases: 2.0.27
+ update-browserslist-db: 1.2.3(browserslist@4.28.1)
+
bs58@4.0.1:
dependencies:
base-x: 3.0.11
@@ -10019,6 +10385,8 @@ snapshots:
caniuse-lite@1.0.30001759: {}
+ caniuse-lite@1.0.30001765: {}
+
ccount@2.0.1: {}
chai@6.2.0: {}
@@ -10062,7 +10430,7 @@ snapshots:
chrome-launcher@0.15.2:
dependencies:
- '@types/node': 24.10.0
+ '@types/node': 25.0.9
escape-string-regexp: 4.0.0
is-wsl: 2.2.0
lighthouse-logger: 1.4.2
@@ -10071,7 +10439,7 @@ snapshots:
chromium-edge-launcher@0.2.0:
dependencies:
- '@types/node': 24.10.0
+ '@types/node': 25.0.9
escape-string-regexp: 4.0.0
is-wsl: 2.2.0
lighthouse-logger: 1.4.2
@@ -10124,6 +10492,8 @@ snapshots:
commander@14.0.1: {}
+ commander@14.0.2: {}
+
commander@2.20.3: {}
commander@4.1.1: {}
@@ -10247,6 +10617,8 @@ snapshots:
electron-to-chromium@1.5.245: {}
+ electron-to-chromium@1.5.267: {}
+
emoji-regex-xs@2.0.1: {}
emoji-regex@8.0.0: {}
@@ -10594,7 +10966,7 @@ snapshots:
transitivePeerDependencies:
- supports-color
- fumadocs-mdx@14.2.4(@types/react@19.2.2)(fumadocs-core@16.4.4(@types/react@19.2.2)(lucide-react@0.562.0(react@19.2.3))(next@16.1.1(react-dom@19.2.3(react@19.2.3))(react@19.2.3))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)(zod@4.3.5))(next@16.1.1(react-dom@19.2.3(react@19.2.3))(react@19.2.3))(react@19.2.3)(vite@7.1.12(@types/node@20.19.27)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)):
+ fumadocs-mdx@14.2.4(@types/react@19.2.2)(fumadocs-core@16.4.4(@types/react@19.2.2)(lucide-react@0.562.0(react@19.2.3))(next@16.1.1(react-dom@19.2.3(react@19.2.3))(react@19.2.3))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)(zod@4.3.5))(next@16.1.1(react-dom@19.2.3(react@19.2.3))(react@19.2.3))(react@19.2.3)(vite@7.1.12(@types/node@20.19.27)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)):
dependencies:
'@mdx-js/mdx': 3.1.1
'@standard-schema/spec': 1.1.0
@@ -10618,7 +10990,7 @@ snapshots:
'@types/react': 19.2.2
next: 16.1.1(react-dom@19.2.3(react@19.2.3))(react@19.2.3)
react: 19.2.3
- vite: 7.1.12(@types/node@20.19.27)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)
+ vite: 7.1.12(@types/node@20.19.27)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)
transitivePeerDependencies:
- supports-color
@@ -10992,7 +11364,7 @@ snapshots:
'@jest/environment': 29.7.0
'@jest/fake-timers': 29.7.0
'@jest/types': 29.6.3
- '@types/node': 24.10.0
+ '@types/node': 25.0.9
jest-mock: 29.7.0
jest-util: 29.7.0
@@ -11002,7 +11374,7 @@ snapshots:
dependencies:
'@jest/types': 29.6.3
'@types/graceful-fs': 4.1.9
- '@types/node': 24.10.0
+ '@types/node': 25.0.9
anymatch: 3.1.3
fb-watchman: 2.0.2
graceful-fs: 4.2.11
@@ -11029,7 +11401,7 @@ snapshots:
jest-mock@29.7.0:
dependencies:
'@jest/types': 29.6.3
- '@types/node': 24.10.0
+ '@types/node': 25.0.9
jest-util: 29.7.0
jest-regex-util@29.6.3: {}
@@ -11037,7 +11409,7 @@ snapshots:
jest-util@29.7.0:
dependencies:
'@jest/types': 29.6.3
- '@types/node': 24.10.0
+ '@types/node': 25.0.9
chalk: 4.1.2
ci-info: 3.9.0
graceful-fs: 4.2.11
@@ -11054,7 +11426,7 @@ snapshots:
jest-worker@29.7.0:
dependencies:
- '@types/node': 24.10.0
+ '@types/node': 25.0.9
jest-util: 29.7.0
merge-stream: 2.0.0
supports-color: 8.1.1
@@ -11491,7 +11863,7 @@ snapshots:
metro-minify-terser@0.83.3:
dependencies:
flow-enums-runtime: 0.0.6
- terser: 5.44.1
+ terser: 5.46.0
metro-resolver@0.83.3:
dependencies:
@@ -11499,7 +11871,7 @@ snapshots:
metro-runtime@0.83.3:
dependencies:
- '@babel/runtime': 7.28.4
+ '@babel/runtime': 7.28.6
flow-enums-runtime: 0.0.6
metro-source-map@0.83.3:
@@ -12887,7 +13259,7 @@ snapshots:
term-size@2.2.1: {}
- terser@5.44.1:
+ terser@5.46.0:
dependencies:
'@jridgewell/source-map': 0.3.11
acorn: 8.15.0
@@ -13025,6 +13397,12 @@ snapshots:
turbo-windows-64: 2.6.0
turbo-windows-arm64: 2.6.0
+ tx-indexer@1.4.0(@solana/kit@5.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(ws@8.18.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)))(typescript@5.9.3):
+ dependencies:
+ '@solana/kit': 5.0.0(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.9.3)(ws@8.18.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))
+ typescript: 5.9.3
+ zod: 4.3.5
+
type-detect@4.0.8: {}
type-fest@0.7.1: {}
@@ -13111,6 +13489,12 @@ snapshots:
escalade: 3.2.0
picocolors: 1.1.1
+ update-browserslist-db@1.2.3(browserslist@4.28.1):
+ dependencies:
+ browserslist: 4.28.1
+ escalade: 3.2.0
+ picocolors: 1.1.1
+
url-parse@1.5.10:
dependencies:
querystringify: 2.2.0
@@ -13156,7 +13540,7 @@ snapshots:
'@types/unist': 3.0.3
vfile-message: 4.0.3
- vite@7.1.12(@types/node@20.19.27)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2):
+ vite@7.1.12(@types/node@20.19.27)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2):
dependencies:
esbuild: 0.25.12
fdir: 6.5.0(picomatch@4.0.3)
@@ -13169,12 +13553,12 @@ snapshots:
fsevents: 2.3.3
jiti: 2.6.1
lightningcss: 1.30.2
- terser: 5.44.1
+ terser: 5.46.0
tsx: 4.21.0
yaml: 2.8.2
optional: true
- vite@7.1.12(@types/node@24.10.0)(jiti@1.21.7)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2):
+ vite@7.1.12(@types/node@25.0.9)(jiti@1.21.7)(lightningcss@1.30.2)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2):
dependencies:
esbuild: 0.25.12
fdir: 6.5.0(picomatch@4.0.3)
@@ -13183,15 +13567,15 @@ snapshots:
rollup: 4.52.5
tinyglobby: 0.2.15
optionalDependencies:
- '@types/node': 24.10.0
+ '@types/node': 25.0.9
fsevents: 2.3.3
jiti: 1.21.7
lightningcss: 1.30.2
- terser: 5.44.1
+ terser: 5.46.0
tsx: 4.21.0
yaml: 2.8.2
- vite@7.1.12(@types/node@24.10.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2):
+ vite@7.1.12(@types/node@25.0.9)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2):
dependencies:
esbuild: 0.25.12
fdir: 6.5.0(picomatch@4.0.3)
@@ -13200,18 +13584,18 @@ snapshots:
rollup: 4.52.5
tinyglobby: 0.2.15
optionalDependencies:
- '@types/node': 24.10.0
+ '@types/node': 25.0.9
fsevents: 2.3.3
jiti: 2.6.1
lightningcss: 1.30.2
- terser: 5.44.1
+ terser: 5.46.0
tsx: 4.21.0
yaml: 2.8.2
- vitest@4.0.7(@types/debug@4.1.12)(@types/node@24.10.0)(jiti@2.6.1)(jsdom@24.1.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2):
+ vitest@4.0.7(@types/debug@4.1.12)(@types/node@25.0.9)(jiti@2.6.1)(jsdom@24.1.3(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.2)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2):
dependencies:
'@vitest/expect': 4.0.7
- '@vitest/mocker': 4.0.7(vite@7.1.12(@types/node@24.10.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2))
+ '@vitest/mocker': 4.0.7(vite@7.1.12(@types/node@25.0.9)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2))
'@vitest/pretty-format': 4.0.7
'@vitest/runner': 4.0.7
'@vitest/snapshot': 4.0.7
@@ -13228,11 +13612,11 @@ snapshots:
tinyexec: 0.3.2
tinyglobby: 0.2.15
tinyrainbow: 3.0.3
- vite: 7.1.12(@types/node@24.10.0)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(tsx@4.21.0)(yaml@2.8.2)
+ vite: 7.1.12(@types/node@25.0.9)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.46.0)(tsx@4.21.0)(yaml@2.8.2)
why-is-node-running: 2.3.0
optionalDependencies:
'@types/debug': 4.1.12
- '@types/node': 24.10.0
+ '@types/node': 25.0.9
jsdom: 24.1.3(bufferutil@4.0.9)(utf-8-validate@5.0.10)
transitivePeerDependencies:
- jiti