diff --git a/.env.example b/.env.example index a0f744dd5e0..0ba05c1f957 100644 --- a/.env.example +++ b/.env.example @@ -18,6 +18,10 @@ SUPABASE_ANON_KEY= # Comma separated list of remote character urls (optional) REMOTE_CHARACTER_URLS= +# Logging +DEFAULT_LOG_LEVEL=warn +LOG_JSON_FORMAT=false # Print everything in logger as json; false by default + ############################### #### Client Configurations #### ############################### @@ -232,8 +236,10 @@ LARGE_ANTHROPIC_MODEL= # Default: claude-3-5-sonnet-20241022 HEURIST_API_KEY= # Get from https://heurist.ai/dev-access SMALL_HEURIST_MODEL= # Default: meta-llama/llama-3-70b-instruct MEDIUM_HEURIST_MODEL= # Default: meta-llama/llama-3-70b-instruct -LARGE_HEURIST_MODEL= # Default: meta-llama/llama-3.1-405b-instruct -HEURIST_IMAGE_MODEL= # Default: PepeXL +LARGE_HEURIST_MODEL= # Default: meta-llama/llama-3.3-70b-instruct +HEURIST_IMAGE_MODEL= # Default: FLUX.1-dev +HEURIST_EMBEDDING_MODEL= # Default: BAAI/bge-large-en-v1.5 +USE_HEURIST_EMBEDDING= # Set to TRUE for HEURIST embedding, leave blank for local # Gaianet Configuration GAIANET_MODEL= diff --git a/.github/workflows/smoke-tests.yml b/.github/workflows/smoke-tests.yml index 00d1a5116ba..99fd01bdc51 100644 --- a/.github/workflows/smoke-tests.yml +++ b/.github/workflows/smoke-tests.yml @@ -12,6 +12,8 @@ jobs: runs-on: ubuntu-latest container: image: node:23-bullseye + env: + OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }} steps: - uses: actions/checkout@v4 diff --git a/agent/package.json b/agent/package.json index e4c8f222530..3b0c4ca9eb1 100644 --- a/agent/package.json +++ b/agent/package.json @@ -1,7 +1,6 @@ { "name": "@elizaos/agent", "version": "0.1.9-alpha.1", - "version": "0.1.9-alpha.1", "main": "src/index.ts", "type": "module", "scripts": { @@ -32,18 +31,14 @@ "@elizaos/client-telegram": "workspace:*", "@elizaos/client-twitter": "workspace:*", "@elizaos/client-instagram": "workspace:*", - "@elizaos/client-instagram": "workspace:*", "@elizaos/client-slack": "workspace:*", "@elizaos/core": "workspace:*", "@elizaos/plugin-0g": "workspace:*", "@elizaos/plugin-abstract": "workspace:*", "@elizaos/plugin-agentkit": "workspace:*", - "@elizaos/plugin-agentkit": "workspace:*", "@elizaos/plugin-aptos": "workspace:*", "@elizaos/plugin-birdeye": "workspace:*", "@elizaos/plugin-coingecko": "workspace:*", - "@elizaos/plugin-birdeye": "workspace:*", - "@elizaos/plugin-coingecko": "workspace:*", "@elizaos/plugin-coinmarketcap": "workspace:*", "@elizaos/plugin-binance": "workspace:*", "@elizaos/plugin-avail": "workspace:*", @@ -58,7 +53,6 @@ "@elizaos/plugin-gitbook": "workspace:*", "@elizaos/plugin-story": "workspace:*", "@elizaos/plugin-gitcoin-passport": "workspace:*", - "@elizaos/plugin-gitcoin-passport": "workspace:*", "@elizaos/plugin-goat": "workspace:*", "@elizaos/plugin-lensNetwork": "workspace:*", "@elizaos/plugin-icp": "workspace:*", @@ -69,9 +63,7 @@ "@elizaos/plugin-node": "workspace:*", "@elizaos/plugin-solana": "workspace:*", "@elizaos/plugin-injective": "workspace:*", - "@elizaos/plugin-injective": "workspace:*", - "@elizaos/plugin-solana-agentkit": "workspace:*", - "@elizaos/plugin-squid-router": "workspace:*", + "@elizaos/plugin-solana-agent-kit": "workspace:*", "@elizaos/plugin-squid-router": "workspace:*", "@elizaos/plugin-autonome": "workspace:*", "@elizaos/plugin-starknet": "workspace:*", @@ -96,12 +88,10 @@ "@elizaos/plugin-video-generation": "workspace:*", "@elizaos/plugin-web-search": "workspace:*", "@elizaos/plugin-dexscreener": "workspace:*", - "@elizaos/plugin-dexscreener": "workspace:*", "@elizaos/plugin-letzai": "workspace:*", "@elizaos/plugin-thirdweb": "workspace:*", "@elizaos/plugin-genlayer": "workspace:*", "@elizaos/plugin-tee-verifiable-log": "workspace:*", - "@elizaos/plugin-tee-verifiable-log": "workspace:*", "@elizaos/plugin-depin": "workspace:*", "@elizaos/plugin-open-weather": "workspace:*", "@elizaos/plugin-obsidian": "workspace:*", @@ -125,4 +115,4 @@ "ts-node": "10.9.2", "tsup": "8.3.5" } -} \ No newline at end of file +} diff --git a/agent/src/index.ts b/agent/src/index.ts index 7983ab5d69e..d8cd39c79e0 100644 --- a/agent/src/index.ts +++ b/agent/src/index.ts @@ -11,6 +11,7 @@ import { SlackClientInterface } from "@elizaos/client-slack"; import { TelegramClientInterface } from "@elizaos/client-telegram"; import { TwitterClientInterface } from "@elizaos/client-twitter"; import { FarcasterClientInterface } from "@elizaos/client-farcaster"; +import { DirectClient } from "@elizaos/client-direct"; // import { ReclaimAdapter } from "@elizaos/plugin-reclaim"; import { PrimusAdapter } from "@elizaos/plugin-primus"; import { elizaCodeinPlugin, onchainJson } from "@elizaos/plugin-iq6900"; @@ -84,7 +85,7 @@ import { openWeatherPlugin } from "@elizaos/plugin-open-weather"; import { quaiPlugin } from "@elizaos/plugin-quai"; import { sgxPlugin } from "@elizaos/plugin-sgx"; import { solanaPlugin } from "@elizaos/plugin-solana"; -import { solanaAgentkitPlugin } from "@elizaos/plugin-solana-agentkit"; +import { solanaAgentkitPlugin } from "@elizaos/plugin-solana-agent-kit"; import { squidRouterPlugin } from "@elizaos/plugin-squid-router"; import { stargazePlugin } from "@elizaos/plugin-stargaze"; import { storyPlugin } from "@elizaos/plugin-story"; @@ -196,7 +197,7 @@ export async function loadCharacterFromOnchain(): Promise { const jsonText = onchainJson; console.log("JSON:", jsonText); - if (jsonText == "null") return []; + if (!jsonText) return []; const loadedCharacters = []; try { const character = JSON.parse(jsonText); @@ -769,7 +770,7 @@ export async function createAgent( // Validate TEE configuration if (teeMode !== TEEMode.OFF && !walletSecretSalt) { elizaLogger.error( - "WALLET_SECRET_SALT required when TEE_MODE is enabled" + "A WALLET_SECRET_SALT required when TEE_MODE is enabled" ); throw new Error("Invalid TEE configuration"); } @@ -1199,7 +1200,7 @@ const startAgents = async () => { characters = await loadCharacterFromOnchain(); } - if ((onchainJson == "null" && charactersArg) || hasValidRemoteUrls()) { + if ((!onchainJson && charactersArg) || hasValidRemoteUrls()) { characters = await loadCharacters(charactersArg); } diff --git a/characters/cosmosHelper.character.json b/characters/cosmosHelper.character.json index 5352eb02c14..dafa2f671a0 100644 --- a/characters/cosmosHelper.character.json +++ b/characters/cosmosHelper.character.json @@ -24,7 +24,7 @@ ], "knowledge": [ "Knows how Cosmos blockchain works", - "Knows what actions should he call for token transfer, swapping or bridging", + "Knows what actions should be called for token transfer, swapping or bridging", "Knows that users might want to do specific actions multiple times and should help them by doing it again.", "Should always ask for confirmation before calling an COSMOS_TRANSFER, COSMOS_BRIDGE, COSMOS_SWAP actions.", "Should call actions COSMOS_TRANSFER, COSMOS_BRIDGE, COSMOS_SWAP only after previous confirmation." @@ -86,7 +86,7 @@ { "user": "CosmosHelper", "content": { - "text": "Sure, your transfer i being processed." + "text": "Sure, your transfer is being processed." } } ] diff --git a/characters/eternalai.character.json b/characters/eternalai.character.json index da179cb3bf9..cea9191390c 100644 --- a/characters/eternalai.character.json +++ b/characters/eternalai.character.json @@ -82,7 +82,7 @@ { "user": "{{user1}}", "content": { - "text": "arent you worried about agi killing us all, or everyone gettig addicted to ai holodecks or any of that" + "text": "arent you worried about agi killing us all, or everyone getting addicted to ai holodecks or any of that" } }, { diff --git a/client/package.json b/client/package.json index 2b2319172b8..c4f6c8f73c1 100644 --- a/client/package.json +++ b/client/package.json @@ -7,8 +7,7 @@ "extract-version": "sh version.sh", "dev": "pnpm run extract-version && vite", "build": "pnpm run extract-version && tsc -b && vite build", - "preview": "vite preview", - "lint": "eslint ." + "preview": "vite preview" }, "dependencies": { "@elizaos/core": "workspace:*", diff --git a/client/src/components/chat.tsx b/client/src/components/chat.tsx index 9dac3ecf9cd..0bac711b2a9 100644 --- a/client/src/components/chat.tsx +++ b/client/src/components/chat.tsx @@ -6,7 +6,7 @@ import { } from "@/components/ui/chat/chat-bubble"; import { ChatInput } from "@/components/ui/chat/chat-input"; import { ChatMessageList } from "@/components/ui/chat/chat-message-list"; -import { useTransition, animated } from "@react-spring/web"; +import { useTransition, animated, AnimatedProps } from "@react-spring/web"; import { Paperclip, Send, X } from "lucide-react"; import { useEffect, useRef, useState } from "react"; import type { Content, UUID } from "@elizaos/core"; @@ -23,14 +23,18 @@ import type { IAttachment } from "@/types"; import { AudioRecorder } from "./audio-recorder"; import { Badge } from "./ui/badge"; -interface ExtraContentFields { +type ExtraContentFields = { user: string; createdAt: number; isLoading?: boolean; -} +}; type ContentWithUser = Content & ExtraContentFields; +type AnimatedDivProps = AnimatedProps<{ style: React.CSSProperties }> & { + children?: React.ReactNode; +}; + export default function Page({ agentId }: { agentId: UUID }) { const { toast } = useToast(); const [selectedFile, setSelectedFile] = useState(null); @@ -67,7 +71,6 @@ export default function Page({ agentId }: { agentId: UUID }) { } }; - const handleSendMessage = (e: React.FormEvent) => { e.preventDefault(); if (!input) return; @@ -167,6 +170,8 @@ export default function Page({ agentId }: { agentId: UUID }) { leave: { opacity: 0, transform: "translateY(10px)" }, }); + const CustomAnimatedDiv = animated.div as React.FC; + return (
@@ -174,10 +179,14 @@ export default function Page({ agentId }: { agentId: UUID }) { {transitions((styles, message) => { const variant = getMessageVariant(message?.user); return ( - // @ts-expect-error -
- + ); })} diff --git a/client/src/components/ui/breadcrumb.tsx b/client/src/components/ui/breadcrumb.tsx index d104c4c5be7..e232f1e0636 100644 --- a/client/src/components/ui/breadcrumb.tsx +++ b/client/src/components/ui/breadcrumb.tsx @@ -102,7 +102,7 @@ const BreadcrumbEllipsis = ({ More ); -BreadcrumbEllipsis.displayName = "BreadcrumbElipssis"; +BreadcrumbEllipsis.displayName = "BreadcrumbEllipsis"; export { Breadcrumb, diff --git a/client/src/lib/api.ts b/client/src/lib/api.ts index ce7758e6664..0aef4c169e2 100644 --- a/client/src/lib/api.ts +++ b/client/src/lib/api.ts @@ -1,6 +1,6 @@ import type { UUID, Character } from "@elizaos/core"; -const BASE_URL = `http://localhost:${import.meta.env.VITE_SERVER_PORT}`; +const BASE_URL = `http://localhost:${import.meta.env.VITE_SERVER_PORT ?? 3000}`; const fetcher = async ({ url, diff --git a/client/src/routes/overview.tsx b/client/src/routes/overview.tsx index 77bffb299f1..09a939bcede 100644 --- a/client/src/routes/overview.tsx +++ b/client/src/routes/overview.tsx @@ -7,14 +7,15 @@ import type { UUID } from "@elizaos/core"; export default function AgentRoute() { const { agentId } = useParams<{ agentId: UUID }>(); - if (!agentId) return
No data.
; - const query = useQuery({ queryKey: ["agent", agentId], - queryFn: () => apiClient.getAgent(agentId), + queryFn: () => apiClient.getAgent(agentId ?? ""), refetchInterval: 5_000, + enabled: Boolean(agentId), }); + if (!agentId) return
No data.
; + const character = query?.data?.character; if (!character) return null; diff --git a/client/version.cmd b/client/version.cmd new file mode 100644 index 00000000000..20953fdd488 --- /dev/null +++ b/client/version.cmd @@ -0,0 +1,25 @@ +@echo off +setlocal enabledelayedexpansion + +set "LERNA_FILE=..\lerna.json" + +if not exist "%LERNA_FILE%" ( + echo Error: %LERNA_FILE% does not exist. + exit /b 1 +) + +for /f "tokens=2 delims=:, " %%a in ('findstr "version" "%LERNA_FILE%"') do ( + set "VERSION=%%~a" +) + +if "!VERSION!"=="" ( + echo Error: Unable to extract version from %LERNA_FILE%. + exit /b 1 +) + +if not exist "src\" mkdir src +echo { "version": !VERSION! } > src\info.json +if errorlevel 1 ( + echo Error: Failed to write src\info.json + exit /b 1 +) diff --git a/docs/api/classes/MemoryCacheAdapter.md b/docs/api/classes/MemoryCacheAdapter.md index 024167e74b2..81996e0518c 100644 --- a/docs/api/classes/MemoryCacheAdapter.md +++ b/docs/api/classes/MemoryCacheAdapter.md @@ -10,11 +10,11 @@ ### new MemoryCacheAdapter() -> **new MemoryCacheAdapter**(`initalData`?): [`MemoryCacheAdapter`](MemoryCacheAdapter.md) +> **new MemoryCacheAdapter**(`initialData`?): [`MemoryCacheAdapter`](MemoryCacheAdapter.md) #### Parameters -• **initalData?**: `Map`\<`string`, `string`\> +• **initialData?**: `Map`\<`string`, `string`\> #### Returns diff --git a/docs/community/ai16z/degenai/index.md b/docs/community/ai16z/degenai/index.md index 9d87239e227..54cb246002a 100644 --- a/docs/community/ai16z/degenai/index.md +++ b/docs/community/ai16z/degenai/index.md @@ -11,7 +11,7 @@ We can rebuild him - ai16z is the biggest holder of degenai (a pumpfun coin) - Current plan for ai16z still is buybacks of degenai - To-do: We need to surface this better (like a website) - - DegenspartanAI also stacks his own coin as well + - DegenSpartanAI also stacks his own coin as well - Shitposting while trading - He might just dump your shit - May do psyops like self fuds his own bags diff --git a/packages/adapter-redis/__tests__/redis-adapter.test.ts b/packages/adapter-redis/__tests__/redis-adapter.test.ts new file mode 100644 index 00000000000..dff80d0837e --- /dev/null +++ b/packages/adapter-redis/__tests__/redis-adapter.test.ts @@ -0,0 +1,183 @@ +import { describe, it, expect, vi, beforeEach, afterEach } from 'vitest'; +import { RedisClient } from '../src'; +import { type UUID, elizaLogger } from '@elizaos/core'; +import Redis from 'ioredis'; + +// Mock ioredis +vi.mock('ioredis', () => { + const MockRedis = vi.fn(() => ({ + on: vi.fn(), + get: vi.fn(), + set: vi.fn(), + del: vi.fn(), + quit: vi.fn() + })); + return { default: MockRedis }; +}); + +// Mock elizaLogger +vi.mock('@elizaos/core', async () => { + const actual = await vi.importActual('@elizaos/core'); + return { + ...actual as any, + elizaLogger: { + success: vi.fn(), + error: vi.fn() + } + }; +}); + +describe('RedisClient', () => { + let client: RedisClient; + let mockRedis: any; + + beforeEach(() => { + vi.clearAllMocks(); + client = new RedisClient('redis://localhost:6379'); + // Get the instance created by the constructor + mockRedis = (Redis as unknown as ReturnType).mock.results[0].value; + }); + + afterEach(() => { + vi.clearAllMocks(); + }); + + describe('constructor', () => { + it('should set up event handlers', () => { + expect(mockRedis.on).toHaveBeenCalledWith('connect', expect.any(Function)); + expect(mockRedis.on).toHaveBeenCalledWith('error', expect.any(Function)); + }); + + it('should log success on connect', () => { + const connectHandler = mockRedis.on.mock.calls.find(call => call[0] === 'connect')[1]; + connectHandler(); + expect(elizaLogger.success).toHaveBeenCalledWith('Connected to Redis'); + }); + + it('should log error on error event', () => { + const error = new Error('Redis connection error'); + const errorHandler = mockRedis.on.mock.calls.find(call => call[0] === 'error')[1]; + errorHandler(error); + expect(elizaLogger.error).toHaveBeenCalledWith('Redis error:', error); + }); + }); + + describe('getCache', () => { + const agentId = 'test-agent' as UUID; + const key = 'test-key'; + const expectedRedisKey = `${agentId}:${key}`; + + it('should return cached value when it exists', async () => { + const cachedValue = 'cached-data'; + mockRedis.get.mockResolvedValueOnce(cachedValue); + + const result = await client.getCache({ agentId, key }); + + expect(mockRedis.get).toHaveBeenCalledWith(expectedRedisKey); + expect(result).toBe(cachedValue); + }); + + it('should return undefined when key does not exist', async () => { + mockRedis.get.mockResolvedValueOnce(null); + + const result = await client.getCache({ agentId, key }); + + expect(mockRedis.get).toHaveBeenCalledWith(expectedRedisKey); + expect(result).toBeUndefined(); + }); + + it('should handle errors and return undefined', async () => { + const error = new Error('Redis error'); + mockRedis.get.mockRejectedValueOnce(error); + + const result = await client.getCache({ agentId, key }); + + expect(mockRedis.get).toHaveBeenCalledWith(expectedRedisKey); + expect(elizaLogger.error).toHaveBeenCalledWith('Error getting cache:', error); + expect(result).toBeUndefined(); + }); + }); + + describe('setCache', () => { + const agentId = 'test-agent' as UUID; + const key = 'test-key'; + const value = 'test-value'; + const expectedRedisKey = `${agentId}:${key}`; + + it('should successfully set cache value', async () => { + mockRedis.set.mockResolvedValueOnce('OK'); + + const result = await client.setCache({ agentId, key, value }); + + expect(mockRedis.set).toHaveBeenCalledWith(expectedRedisKey, value); + expect(result).toBe(true); + }); + + it('should handle errors and return false', async () => { + const error = new Error('Redis error'); + mockRedis.set.mockRejectedValueOnce(error); + + const result = await client.setCache({ agentId, key, value }); + + expect(mockRedis.set).toHaveBeenCalledWith(expectedRedisKey, value); + expect(elizaLogger.error).toHaveBeenCalledWith('Error setting cache:', error); + expect(result).toBe(false); + }); + }); + + describe('deleteCache', () => { + const agentId = 'test-agent' as UUID; + const key = 'test-key'; + const expectedRedisKey = `${agentId}:${key}`; + + it('should successfully delete cache when key exists', async () => { + mockRedis.del.mockResolvedValueOnce(1); + + const result = await client.deleteCache({ agentId, key }); + + expect(mockRedis.del).toHaveBeenCalledWith(expectedRedisKey); + expect(result).toBe(true); + }); + + it('should return false when key does not exist', async () => { + mockRedis.del.mockResolvedValueOnce(0); + + const result = await client.deleteCache({ agentId, key }); + + expect(mockRedis.del).toHaveBeenCalledWith(expectedRedisKey); + expect(result).toBe(false); + }); + + it('should handle errors and return false', async () => { + const error = new Error('Redis error'); + mockRedis.del.mockRejectedValueOnce(error); + + const result = await client.deleteCache({ agentId, key }); + + expect(mockRedis.del).toHaveBeenCalledWith(expectedRedisKey); + expect(elizaLogger.error).toHaveBeenCalledWith('Error deleting cache:', error); + expect(result).toBe(false); + }); + }); + + describe('disconnect', () => { + it('should successfully disconnect from Redis', async () => { + mockRedis.quit.mockResolvedValueOnce('OK'); + + await client.disconnect(); + + expect(mockRedis.quit).toHaveBeenCalled(); + expect(elizaLogger.success).toHaveBeenCalledWith('Disconnected from Redis'); + }); + + it('should handle disconnect errors', async () => { + const error = new Error('Redis disconnect error'); + mockRedis.quit.mockRejectedValueOnce(error); + + await client.disconnect(); + + expect(mockRedis.quit).toHaveBeenCalled(); + expect(elizaLogger.error).toHaveBeenCalledWith('Error disconnecting from Redis:', error); + }); + }); +}); diff --git a/packages/adapter-redis/package.json b/packages/adapter-redis/package.json index 77d82f9360a..70b2f4fad34 100644 --- a/packages/adapter-redis/package.json +++ b/packages/adapter-redis/package.json @@ -24,11 +24,14 @@ }, "devDependencies": { "@types/ioredis": "^5.0.0", - "tsup": "8.3.5" + "tsup": "8.3.5", + "vitest": "^3.0.2" }, "scripts": { "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch" + "dev": "tsup --format esm --dts --watch", + "test": "vitest run", + "test:watch": "vitest" }, "peerDependencies": { "whatwg-url": "7.1.0" diff --git a/packages/adapter-redis/vitest.config.ts b/packages/adapter-redis/vitest.config.ts new file mode 100644 index 00000000000..adbf7255380 --- /dev/null +++ b/packages/adapter-redis/vitest.config.ts @@ -0,0 +1,8 @@ +import { defineConfig } from 'vitest/config'; + +export default defineConfig({ + test: { + globals: true, + environment: 'node', + }, +}); diff --git a/packages/adapter-sqlite/__tests__/sqlite-adapter.test.ts b/packages/adapter-sqlite/__tests__/sqlite-adapter.test.ts new file mode 100644 index 00000000000..c78f2e522b0 --- /dev/null +++ b/packages/adapter-sqlite/__tests__/sqlite-adapter.test.ts @@ -0,0 +1,171 @@ +import { describe, it, expect, vi, beforeEach, afterEach } from 'vitest'; +import { SqliteDatabaseAdapter } from '../src'; +import { type UUID, elizaLogger } from '@elizaos/core'; +import Database from 'better-sqlite3'; +import { load } from '../src/sqlite_vec'; + +// Mock the elizaLogger +vi.mock('@elizaos/core', async () => { + const actual = await vi.importActual('@elizaos/core'); + return { + ...actual as any, + elizaLogger: { + error: vi.fn() + } + }; +}); + +// Mock sqlite_vec +vi.mock('../src/sqlite_vec', () => ({ + load: vi.fn() +})); + +describe('SqliteDatabaseAdapter', () => { + let adapter: SqliteDatabaseAdapter; + let mockDb: any; + + beforeEach(() => { + // Create mock database methods + mockDb = { + prepare: vi.fn(() => ({ + get: vi.fn(), + all: vi.fn(), + run: vi.fn(), + bind: vi.fn() + })), + exec: vi.fn(), + close: vi.fn() + }; + + // Initialize adapter with mock db + adapter = new SqliteDatabaseAdapter(mockDb as Database); + }); + + afterEach(() => { + vi.clearAllMocks(); + }); + + describe('getRoom', () => { + it('should return room ID when room exists', async () => { + const roomId = 'test-room-id' as UUID; + mockDb.prepare.mockReturnValueOnce({ + get: vi.fn().mockReturnValueOnce({ id: roomId }) + }); + + const result = await adapter.getRoom(roomId); + + expect(mockDb.prepare).toHaveBeenCalledWith('SELECT id FROM rooms WHERE id = ?'); + expect(result).toBe(roomId); + }); + + it('should return null when room does not exist', async () => { + mockDb.prepare.mockReturnValueOnce({ + get: vi.fn().mockReturnValueOnce(undefined) + }); + + const result = await adapter.getRoom('non-existent-room' as UUID); + + expect(result).toBeNull(); + }); + }); + + describe('getParticipantsForAccount', () => { + const mockParticipants = [ + { id: 'participant-1', userId: 'user-1', roomId: 'room-1' }, + { id: 'participant-2', userId: 'user-1', roomId: 'room-2' } + ]; + + it('should return participants when they exist', async () => { + mockDb.prepare.mockReturnValueOnce({ + all: vi.fn().mockReturnValueOnce(mockParticipants) + }); + + const userId = 'user-1' as UUID; + const result = await adapter.getParticipantsForAccount(userId); + + expect(mockDb.prepare).toHaveBeenCalledWith(expect.stringContaining('SELECT p.id, p.userId, p.roomId')); + expect(result).toEqual(mockParticipants); + }); + + it('should return empty array when no participants exist', async () => { + mockDb.prepare.mockReturnValueOnce({ + all: vi.fn().mockReturnValueOnce([]) + }); + + const result = await adapter.getParticipantsForAccount('no-participants' as UUID); + + expect(result).toEqual([]); + }); + }); + + describe('getParticipantUserState', () => { + const roomId = 'test-room' as UUID; + const userId = 'test-user' as UUID; + + it('should return user state when it exists', async () => { + mockDb.prepare.mockReturnValueOnce({ + get: vi.fn().mockReturnValueOnce({ userState: 'FOLLOWED' }) + }); + + const result = await adapter.getParticipantUserState(roomId, userId); + + expect(mockDb.prepare).toHaveBeenCalledWith( + 'SELECT userState FROM participants WHERE roomId = ? AND userId = ?' + ); + expect(result).toBe('FOLLOWED'); + }); + + it('should return null when user state does not exist', async () => { + mockDb.prepare.mockReturnValueOnce({ + get: vi.fn().mockReturnValueOnce(undefined) + }); + + const result = await adapter.getParticipantUserState(roomId, userId); + + expect(result).toBeNull(); + }); + }); + + describe('setParticipantUserState', () => { + const roomId = 'test-room' as UUID; + const userId = 'test-user' as UUID; + + it('should successfully update user state', async () => { + const runMock = vi.fn(); + mockDb.prepare.mockReturnValueOnce({ + run: runMock + }); + + await adapter.setParticipantUserState(roomId, userId, 'MUTED'); + + expect(mockDb.prepare).toHaveBeenCalledWith( + 'UPDATE participants SET userState = ? WHERE roomId = ? AND userId = ?' + ); + expect(runMock).toHaveBeenCalledWith('MUTED', roomId, userId); + }); + + it('should handle null state', async () => { + const runMock = vi.fn(); + mockDb.prepare.mockReturnValueOnce({ + run: runMock + }); + + await adapter.setParticipantUserState(roomId, userId, null); + + expect(runMock).toHaveBeenCalledWith(null, roomId, userId); + }); + }); + + describe('init and close', () => { + it('should initialize the database with tables', async () => { + await adapter.init(); + expect(mockDb.exec).toHaveBeenCalled(); + expect(load).toHaveBeenCalledWith(mockDb); + }); + + it('should close the database connection', async () => { + await adapter.close(); + expect(mockDb.close).toHaveBeenCalled(); + }); + }); +}); diff --git a/packages/adapter-sqlite/package.json b/packages/adapter-sqlite/package.json index 672f1d4748b..38de43bdcb4 100644 --- a/packages/adapter-sqlite/package.json +++ b/packages/adapter-sqlite/package.json @@ -25,11 +25,15 @@ "sqlite-vec": "0.1.6" }, "devDependencies": { - "tsup": "8.3.5" + "tsup": "8.3.5", + "vitest": "^3.0.2", + "@vitest/coverage-v8": "^3.0.2" }, "scripts": { "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch" + "dev": "tsup --format esm --dts --watch", + "test": "vitest run", + "test:coverage": "vitest run --coverage" }, "peerDependencies": { "whatwg-url": "7.1.0" diff --git a/packages/adapter-sqlite/vitest.config.ts b/packages/adapter-sqlite/vitest.config.ts new file mode 100644 index 00000000000..adbf7255380 --- /dev/null +++ b/packages/adapter-sqlite/vitest.config.ts @@ -0,0 +1,8 @@ +import { defineConfig } from 'vitest/config'; + +export default defineConfig({ + test: { + globals: true, + environment: 'node', + }, +}); diff --git a/packages/adapter-supabase/__tests__/supabase-adapter.test.ts b/packages/adapter-supabase/__tests__/supabase-adapter.test.ts new file mode 100644 index 00000000000..b12962df8b0 --- /dev/null +++ b/packages/adapter-supabase/__tests__/supabase-adapter.test.ts @@ -0,0 +1,239 @@ +import { describe, it, expect, vi, beforeEach } from 'vitest'; +import { SupabaseDatabaseAdapter } from '../src'; +import { type UUID, elizaLogger } from '@elizaos/core'; +import { createClient } from '@supabase/supabase-js'; + +// Mock the elizaLogger +vi.mock('@elizaos/core', async () => { + const actual = await vi.importActual('@elizaos/core'); + return { + ...actual as any, + elizaLogger: { + error: vi.fn() + } + }; +}); + +// Mock Supabase client +vi.mock('@supabase/supabase-js', () => ({ + createClient: vi.fn(() => ({ + from: vi.fn(() => ({ + select: vi.fn(() => ({ + eq: vi.fn(() => ({ + maybeSingle: vi.fn(() => Promise.resolve({ data: { id: 'test-room-id' }, error: null })), + })), + })), + })), + })), +})); + +describe('SupabaseDatabaseAdapter', () => { + let adapter: SupabaseDatabaseAdapter; + const mockSupabaseUrl = 'https://test.supabase.co'; + const mockSupabaseKey = 'test-key'; + const mockSupabase = { + from: vi.fn(() => mockSupabase), + select: vi.fn(() => mockSupabase), + update: vi.fn(() => mockSupabase), + eq: vi.fn(() => mockSupabase), + maybeSingle: vi.fn(), + single: vi.fn(), + }; + + beforeEach(() => { + vi.clearAllMocks(); + adapter = new SupabaseDatabaseAdapter(mockSupabaseUrl, mockSupabaseKey); + // @ts-ignore - we're mocking the implementation + adapter.supabase = mockSupabase; + + // Reset all mock implementations to return mockSupabase for chaining + mockSupabase.from.mockReturnValue(mockSupabase); + mockSupabase.select.mockReturnValue(mockSupabase); + mockSupabase.update.mockReturnValue(mockSupabase); + mockSupabase.eq.mockReturnValue(mockSupabase); + }); + + describe('getRoom', () => { + beforeEach(() => { + mockSupabase.eq.mockReturnValue(mockSupabase); + }); + + it('should return room ID when room exists', async () => { + const roomId = 'test-room-id' as UUID; + mockSupabase.maybeSingle.mockResolvedValueOnce({ + data: { id: roomId }, + error: null + }); + + const result = await adapter.getRoom(roomId); + + expect(mockSupabase.from).toHaveBeenCalledWith('rooms'); + expect(mockSupabase.select).toHaveBeenCalledWith('id'); + expect(mockSupabase.eq).toHaveBeenCalledWith('id', roomId); + expect(result).toBe(roomId); + }); + + it('should return null when room does not exist', async () => { + mockSupabase.maybeSingle.mockResolvedValueOnce({ + data: null, + error: null + }); + + const roomId = 'non-existent-room' as UUID; + const result = await adapter.getRoom(roomId); + + expect(result).toBeNull(); + }); + + it('should return null and log error when there is a database error', async () => { + const error = { message: 'Database error' }; + mockSupabase.maybeSingle.mockResolvedValueOnce({ + data: null, + error + }); + + const roomId = 'error-room' as UUID; + const result = await adapter.getRoom(roomId); + + expect(result).toBeNull(); + expect(elizaLogger.error).toHaveBeenCalledWith(`Error getting room: ${error.message}`); + }); + }); + + describe('getParticipantsForAccount', () => { + const mockParticipants = [ + { id: 'participant-1', userId: 'user-1' }, + { id: 'participant-2', userId: 'user-1' } + ]; + + beforeEach(() => { + mockSupabase.eq.mockReturnValue(mockSupabase); + }); + + it('should return participants when they exist', async () => { + mockSupabase.eq.mockResolvedValueOnce({ + data: mockParticipants, + error: null + }); + + const userId = 'user-1' as UUID; + const result = await adapter.getParticipantsForAccount(userId); + + expect(mockSupabase.from).toHaveBeenCalledWith('participants'); + expect(mockSupabase.select).toHaveBeenCalledWith('*'); + expect(mockSupabase.eq).toHaveBeenCalledWith('userId', userId); + expect(result).toEqual(mockParticipants); + }); + + it('should throw error when database error occurs', async () => { + const error = { message: 'Database error' }; + mockSupabase.eq.mockResolvedValueOnce({ + data: null, + error + }); + + const userId = 'error-user' as UUID; + + await expect(adapter.getParticipantsForAccount(userId)) + .rejects + .toThrow(`Error getting participants for account: ${error.message}`); + }); + }); + + describe('getParticipantUserState', () => { + const roomId = 'test-room' as UUID; + const userId = 'test-user' as UUID; + + beforeEach(() => { + mockSupabase.eq + .mockReturnValueOnce(mockSupabase) // First eq call + .mockReturnValue(mockSupabase); // Second eq call + }); + + it('should return user state when it exists', async () => { + mockSupabase.single.mockResolvedValueOnce({ + data: { userState: 'FOLLOWED' }, + error: null + }); + + const result = await adapter.getParticipantUserState(roomId, userId); + + expect(mockSupabase.from).toHaveBeenCalledWith('participants'); + expect(mockSupabase.select).toHaveBeenCalledWith('userState'); + expect(mockSupabase.eq).toHaveBeenNthCalledWith(1, 'roomId', roomId); + expect(mockSupabase.eq).toHaveBeenNthCalledWith(2, 'userId', userId); + expect(result).toBe('FOLLOWED'); + }); + + it('should return null when user state does not exist', async () => { + mockSupabase.single.mockResolvedValueOnce({ + data: { userState: null }, + error: null + }); + + const result = await adapter.getParticipantUserState(roomId, userId); + + expect(result).toBeNull(); + }); + + it('should return null and log error when database error occurs', async () => { + const error = { message: 'Database error' }; + mockSupabase.single.mockResolvedValueOnce({ + data: null, + error + }); + + const result = await adapter.getParticipantUserState(roomId, userId); + + expect(result).toBeNull(); + expect(elizaLogger.error).toHaveBeenCalledWith('Error getting participant user state:', error); + }); + }); + + describe('setParticipantUserState', () => { + const roomId = 'test-room' as UUID; + const userId = 'test-user' as UUID; + let updateResult: { error: null | { message: string } }; + + beforeEach(() => { + updateResult = { error: null }; + // Set up the chain of mock returns + mockSupabase.from.mockReturnValue(mockSupabase); + mockSupabase.update.mockReturnValue(mockSupabase); + // Make eq return mockSupabase for the first call (roomId) + // and the final result for the second call (userId) + mockSupabase.eq + .mockReturnValueOnce(mockSupabase) + .mockImplementationOnce(() => Promise.resolve(updateResult)); + }); + + it('should successfully update user state', async () => { + await adapter.setParticipantUserState(roomId, userId, 'MUTED'); + + expect(mockSupabase.from).toHaveBeenCalledWith('participants'); + expect(mockSupabase.update).toHaveBeenCalledWith({ userState: 'MUTED' }); + expect(mockSupabase.eq).toHaveBeenNthCalledWith(1, 'roomId', roomId); + expect(mockSupabase.eq).toHaveBeenNthCalledWith(2, 'userId', userId); + }); + + it('should throw error and log when database error occurs', async () => { + const error = { message: 'Database error' }; + updateResult.error = error; + + await expect(adapter.setParticipantUserState(roomId, userId, 'FOLLOWED')) + .rejects + .toThrow('Failed to set participant user state'); + + expect(elizaLogger.error).toHaveBeenCalledWith('Error setting participant user state:', error); + }); + + it('should handle null state', async () => { + await adapter.setParticipantUserState(roomId, userId, null); + + expect(mockSupabase.from).toHaveBeenCalledWith('participants'); + expect(mockSupabase.update).toHaveBeenCalledWith({ userState: null }); + expect(mockSupabase.eq).toHaveBeenNthCalledWith(1, 'roomId', roomId); + expect(mockSupabase.eq).toHaveBeenNthCalledWith(2, 'userId', userId); + }); + }); +}); diff --git a/packages/adapter-supabase/package.json b/packages/adapter-supabase/package.json index 0805e2135a3..5895414f2e2 100644 --- a/packages/adapter-supabase/package.json +++ b/packages/adapter-supabase/package.json @@ -23,11 +23,15 @@ "@supabase/supabase-js": "2.46.2" }, "devDependencies": { - "tsup": "8.3.5" + "@vitest/coverage-v8": "^3.0.2", + "tsup": "8.3.5", + "vitest": "^3.0.2" }, "scripts": { "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch" + "dev": "tsup --format esm --dts --watch", + "test": "vitest run", + "test:coverage": "vitest run --coverage" }, "peerDependencies": { "whatwg-url": "7.1.0" diff --git a/packages/adapter-supabase/vitest.config.ts b/packages/adapter-supabase/vitest.config.ts new file mode 100644 index 00000000000..d87fc4a6954 --- /dev/null +++ b/packages/adapter-supabase/vitest.config.ts @@ -0,0 +1,8 @@ +import { defineConfig } from 'vitest/config' + +export default defineConfig({ + test: { + globals: true, + environment: 'node', + }, +}) diff --git a/packages/client-discord/src/actions/summarize_conversation.ts b/packages/client-discord/src/actions/summarize_conversation.ts index 5c4dca4ba13..34d1fa9744d 100644 --- a/packages/client-discord/src/actions/summarize_conversation.ts +++ b/packages/client-discord/src/actions/summarize_conversation.ts @@ -28,7 +28,7 @@ export const dateRangeTemplate = `# Messages we are summarizing (the conversatio {{recentMessages}} # Instructions: {{senderName}} is requesting a summary of the conversation. Your goal is to determine their objective, along with the range of dates that their request covers. -The "objective" is a detailed description of what the user wants to summarize based on the conversation. If they just ask for a general summary, you can either base it off the converation if the summary range is very recent, or set the object to be general, like "a detailed summary of the conversation between all users". +The "objective" is a detailed description of what the user wants to summarize based on the conversation. If they just ask for a general summary, you can either base it off the conversation if the summary range is very recent, or set the object to be general, like "a detailed summary of the conversation between all users". The "start" and "end" are the range of dates that the user wants to summarize, relative to the current time. The start and end should be relative to the current time, and measured in seconds, minutes, hours and days. The format is "2 days ago" or "3 hours ago" or "4 minutes ago" or "5 seconds ago", i.e. " ago". If you aren't sure, you can use a default range of "0 minutes ago" to "2 hours ago" or more. Better to err on the side of including too much than too little. diff --git a/packages/client-instagram/__tests__/environment.test.ts b/packages/client-instagram/__tests__/environment.test.ts new file mode 100644 index 00000000000..7f643f0256f --- /dev/null +++ b/packages/client-instagram/__tests__/environment.test.ts @@ -0,0 +1,90 @@ +import { describe, it, expect, vi } from 'vitest'; +import { validateInstagramConfig, instagramEnvSchema } from '../src/environment'; +import { IAgentRuntime } from '@elizaos/core'; + +describe('Instagram Environment Configuration', () => { + const mockRuntime: IAgentRuntime = { + getSetting: vi.fn(), + } as unknown as IAgentRuntime; + + it('validates correct Instagram configuration', async () => { + const validConfig = { + INSTAGRAM_DRY_RUN: false, + INSTAGRAM_USERNAME: 'test_user', + INSTAGRAM_PASSWORD: 'test_password', + INSTAGRAM_APP_ID: 'test_app_id', + INSTAGRAM_APP_SECRET: 'test_app_secret', + INSTAGRAM_POST_INTERVAL_MIN: 60, + INSTAGRAM_POST_INTERVAL_MAX: 120, + INSTAGRAM_ENABLE_ACTION_PROCESSING: false, + INSTAGRAM_ACTION_INTERVAL: 5, + INSTAGRAM_MAX_ACTIONS: 1, + }; + + vi.mocked(mockRuntime.getSetting).mockImplementation((key: string) => { + if (key === 'INSTAGRAM_DRY_RUN') return 'false'; + if (key === 'INSTAGRAM_ENABLE_ACTION_PROCESSING') return 'false'; + return validConfig[key as keyof typeof validConfig]; + }); + + const config = await validateInstagramConfig(mockRuntime); + expect(config).toEqual(validConfig); + }); + + it('validates configuration with optional business account', async () => { + const validConfig = { + INSTAGRAM_DRY_RUN: false, + INSTAGRAM_USERNAME: 'test_user', + INSTAGRAM_PASSWORD: 'test_password', + INSTAGRAM_APP_ID: 'test_app_id', + INSTAGRAM_APP_SECRET: 'test_app_secret', + INSTAGRAM_BUSINESS_ACCOUNT_ID: 'business_123', + INSTAGRAM_POST_INTERVAL_MIN: 60, + INSTAGRAM_POST_INTERVAL_MAX: 120, + INSTAGRAM_ENABLE_ACTION_PROCESSING: false, + INSTAGRAM_ACTION_INTERVAL: 5, + INSTAGRAM_MAX_ACTIONS: 1, + }; + + vi.mocked(mockRuntime.getSetting).mockImplementation((key: string) => { + if (key === 'INSTAGRAM_DRY_RUN') return 'false'; + if (key === 'INSTAGRAM_ENABLE_ACTION_PROCESSING') return 'false'; + return validConfig[key as keyof typeof validConfig]; + }); + + const config = await validateInstagramConfig(mockRuntime); + expect(config).toEqual(validConfig); + }); + + it('throws error for invalid username format', async () => { + const invalidConfig = { + INSTAGRAM_DRY_RUN: false, + INSTAGRAM_USERNAME: 'invalid@username', // Invalid characters + INSTAGRAM_PASSWORD: 'test_password', + INSTAGRAM_APP_ID: 'test_app_id', + INSTAGRAM_APP_SECRET: 'test_app_secret', + }; + + vi.mocked(mockRuntime.getSetting).mockImplementation((key: string) => { + if (key === 'INSTAGRAM_DRY_RUN') return 'false'; + return invalidConfig[key as keyof typeof invalidConfig]; + }); + + await expect(validateInstagramConfig(mockRuntime)).rejects.toThrow(); + }); + + it('throws error for missing required fields', async () => { + const invalidConfig = { + INSTAGRAM_DRY_RUN: false, + INSTAGRAM_USERNAME: 'test_user', + // Missing password and other required fields + }; + + vi.mocked(mockRuntime.getSetting).mockImplementation((key: string) => { + if (key === 'INSTAGRAM_DRY_RUN') return 'false'; + return invalidConfig[key as keyof typeof invalidConfig]; + }); + + await expect(validateInstagramConfig(mockRuntime)).rejects.toThrow(); + }); +}); diff --git a/packages/client-instagram/__tests__/index.test.ts b/packages/client-instagram/__tests__/index.test.ts new file mode 100644 index 00000000000..15a95bb3c18 --- /dev/null +++ b/packages/client-instagram/__tests__/index.test.ts @@ -0,0 +1,120 @@ +import { describe, it, expect, vi, beforeEach } from 'vitest'; +import { InstagramClientInterface } from '../src'; +import { IAgentRuntime, elizaLogger } from '@elizaos/core'; +import { InstagramInteractionService } from '../src/services/interaction'; +import { InstagramPostService } from '../src/services/post'; + +// Mock dependencies +vi.mock('@elizaos/core', async (importOriginal) => { + const actual = await importOriginal(); + return { + ...actual, + elizaLogger: { + log: vi.fn(), + error: vi.fn(), + }, + parseBooleanFromText: (value: string | undefined) => value === 'true', + }; +}); + +// Mock service instances +const mockPostService = { + start: vi.fn().mockResolvedValue(undefined), +}; + +const mockInteractionService = { + start: vi.fn().mockResolvedValue(undefined), +}; + +vi.mock('../src/lib/auth', () => ({ + initializeClient: vi.fn().mockResolvedValue({ + ig: {}, + config: { + INSTAGRAM_DRY_RUN: false, + INSTAGRAM_ENABLE_ACTION_PROCESSING: true, + }, + }), +})); + +vi.mock('../src/services/post', () => ({ + InstagramPostService: vi.fn().mockImplementation(() => mockPostService), +})); + +vi.mock('../src/services/interaction', () => ({ + InstagramInteractionService: vi.fn().mockImplementation(() => mockInteractionService), +})); + +describe('InstagramClientInterface', () => { + let mockRuntime: IAgentRuntime; + const mockConfig = { + INSTAGRAM_DRY_RUN: false, + INSTAGRAM_USERNAME: 'test_user', + INSTAGRAM_PASSWORD: 'test_password', + INSTAGRAM_APP_ID: 'test_app_id', + INSTAGRAM_APP_SECRET: 'test_app_secret', + INSTAGRAM_POST_INTERVAL_MIN: 60, + INSTAGRAM_POST_INTERVAL_MAX: 120, + INSTAGRAM_ENABLE_ACTION_PROCESSING: true, + INSTAGRAM_ACTION_INTERVAL: 5, + INSTAGRAM_MAX_ACTIONS: 1, + }; + + beforeEach(() => { + vi.clearAllMocks(); + mockRuntime = { + getSetting: vi.fn((key: string) => { + if (key === 'INSTAGRAM_DRY_RUN' || key === 'INSTAGRAM_ENABLE_ACTION_PROCESSING') { + return String(mockConfig[key as keyof typeof mockConfig]); + } + return mockConfig[key as keyof typeof mockConfig]; + }), + } as unknown as IAgentRuntime; + }); + + it('starts successfully with all services', async () => { + const result = await InstagramClientInterface.start(mockRuntime); + + expect(result).toBeDefined(); + expect(result.post).toBeDefined(); + expect(result.interaction).toBeDefined(); + expect(InstagramPostService).toHaveBeenCalled(); + expect(InstagramInteractionService).toHaveBeenCalled(); + expect(result.post.start).toHaveBeenCalled(); + expect(result.interaction.start).toHaveBeenCalled(); + expect(elizaLogger.log).toHaveBeenCalledWith('Instagram client configuration validated'); + expect(elizaLogger.log).toHaveBeenCalledWith('Instagram client initialized'); + expect(elizaLogger.log).toHaveBeenCalledWith('Instagram post service started'); + expect(elizaLogger.log).toHaveBeenCalledWith('Instagram interaction service started'); + }); + + it('starts in dry-run mode', async () => { + const dryRunConfig = { ...mockConfig, INSTAGRAM_DRY_RUN: true }; + mockRuntime.getSetting = vi.fn((key: string) => { + if (key === 'INSTAGRAM_DRY_RUN') return 'true'; + if (key === 'INSTAGRAM_ENABLE_ACTION_PROCESSING') return String(dryRunConfig.INSTAGRAM_ENABLE_ACTION_PROCESSING); + return dryRunConfig[key as keyof typeof dryRunConfig]; + }); + + const result = await InstagramClientInterface.start(mockRuntime); + + expect(result).toBeDefined(); + expect(elizaLogger.log).toHaveBeenCalledWith('Instagram client running in dry-run mode'); + expect(mockPostService.start).not.toHaveBeenCalled(); + expect(mockInteractionService.start).not.toHaveBeenCalled(); + }); + + it('handles errors during startup', async () => { + const error = new Error('Startup failed'); + vi.mocked(mockRuntime.getSetting).mockImplementation(() => { + throw error; + }); + + await expect(InstagramClientInterface.start(mockRuntime)).rejects.toThrow('Startup failed'); + expect(elizaLogger.error).toHaveBeenCalledWith('Failed to start Instagram client:', error); + }); + + it('stops gracefully', async () => { + await InstagramClientInterface.stop(mockRuntime); + expect(elizaLogger.log).toHaveBeenCalledWith('Stopping Instagram client services...'); + }); +}); diff --git a/packages/client-instagram/package.json b/packages/client-instagram/package.json index aecad28c0f4..b5af8d710cd 100644 --- a/packages/client-instagram/package.json +++ b/packages/client-instagram/package.json @@ -27,11 +27,13 @@ }, "devDependencies": { "tsup": "8.3.5", - "@types/sharp": "^0.32.0" + "@types/sharp": "^0.32.0", + "vitest": "^1.2.1" }, "scripts": { "build": "tsup --format esm --dts", "dev": "tsup --format esm --dts --watch", - "lint": "eslint --fix --cache ." + "test": "vitest run", + "test:watch": "vitest" } } diff --git a/packages/client-telegram/src/constants.ts b/packages/client-telegram/src/constants.ts index 82c54b3294f..e1b4be88223 100644 --- a/packages/client-telegram/src/constants.ts +++ b/packages/client-telegram/src/constants.ts @@ -23,7 +23,6 @@ export const RESPONSE_CHANCES = { export const TEAM_COORDINATION = { KEYWORDS: [ "team", - "everyone", "all agents", "team update", "gm team", diff --git a/packages/client-telegram/src/messageManager.ts b/packages/client-telegram/src/messageManager.ts index 34f0b69a009..ed2b0ff9e57 100644 --- a/packages/client-telegram/src/messageManager.ts +++ b/packages/client-telegram/src/messageManager.ts @@ -19,10 +19,8 @@ import { type Media, } from "@elizaos/core"; import { stringToUuid } from "@elizaos/core"; - import { generateMessageResponse, generateShouldRespond } from "@elizaos/core"; -import { messageCompletionFooter, shouldRespondFooter } from "@elizaos/core"; - +import { telegramMessageHandlerTemplate, telegramShouldRespondTemplate, telegramAutoPostTemplate, telegramPinnedMessageTemplate } from "./templates"; import { cosineSimilarity, escapeMarkdown } from "./utils"; import { MESSAGE_CONSTANTS, @@ -35,114 +33,21 @@ import fs from "fs"; const MAX_MESSAGE_LENGTH = 4096; // Telegram's max message length -const telegramShouldRespondTemplate = - `# About {{agentName}}: -{{bio}} - -# RESPONSE EXAMPLES -{{user1}}: I just saw a really great movie -{{user2}}: Oh? Which movie? -Result: [IGNORE] - -{{agentName}}: Oh, this is my favorite scene -{{user1}}: sick -{{user2}}: wait, why is it your favorite scene -Result: [RESPOND] - -{{user1}}: stfu bot -Result: [STOP] - -{{user1}}: Hey {{agentName}}, can you help me with something -Result: [RESPOND] - -{{user1}}: {{agentName}} stfu plz -Result: [STOP] - -{{user1}}: i need help -{{agentName}}: how can I help you? -{{user1}}: no. i need help from someone else -Result: [IGNORE] - -{{user1}}: Hey {{agentName}}, can I ask you a question -{{agentName}}: Sure, what is it -{{user1}}: can you ask claude to create a basic react module that demonstrates a counter -Result: [RESPOND] - -{{user1}}: {{agentName}} can you tell me a story -{{agentName}}: uhhh... -{{user1}}: please do it -{{agentName}}: okay -{{agentName}}: once upon a time, in a quaint little village, there was a curious girl named elara -{{user1}}: I'm loving it, keep going -Result: [RESPOND] - -{{user1}}: {{agentName}} stop responding plz -Result: [STOP] - -{{user1}}: okay, i want to test something. {{agentName}}, can you say marco? -{{agentName}}: marco -{{user1}}: great. okay, now do it again -Result: [RESPOND] - -Response options are [RESPOND], [IGNORE] and [STOP]. - -{{agentName}} is in a room with other users and should only respond when they are being addressed, and should not respond if they are continuing a conversation that is very long. - -Respond with [RESPOND] to messages that are directed at {{agentName}}, or participate in conversations that are interesting or relevant to their background. -If a message is not interesting, relevant, or does not directly address {{agentName}}, respond with [IGNORE] - -Also, respond with [IGNORE] to messages that are very short or do not contain much information. - -If a user asks {{agentName}} to be quiet, respond with [STOP] -If {{agentName}} concludes a conversation and isn't part of the conversation anymore, respond with [STOP] - -IMPORTANT: {{agentName}} is particularly sensitive about being annoying, so if there is any doubt, it is better to respond with [IGNORE]. -If {{agentName}} is conversing with a user and they have not asked to stop, it is better to respond with [RESPOND]. - -The goal is to decide whether {{agentName}} should respond to the last message. - -{{recentMessages}} - -# INSTRUCTIONS: Choose the option that best describes {{agentName}}'s response to the last message. Ignore messages if they are addressed to someone else. -` + shouldRespondFooter; - -const telegramMessageHandlerTemplate = - // {{goals}} - ` -{{actionExamples}} -(Action examples are for reference only. Do not use the information from them in your response.) - -# Knowledge -{{knowledge}} - -# About {{agentName}}: -{{bio}} -{{lore}} - -{{characterMessageExamples}} - -{{providers}} - -{{attachments}} - -{{actions}} - -# Capabilities -Note that {{agentName}} is capable of reading/seeing/hearing various forms of media, including images, videos, audio, plaintext and PDFs. Recent attachments have been included above under the "Attachments" section. - -{{messageDirections}} - -{{recentMessages}} - -# Task: Generate a reply in the voice, style and perspective of {{agentName}} while using the thread above as additional context. You are replying on Telegram. -{{formattedConversation}} -` + messageCompletionFooter; - interface MessageContext { content: string; timestamp: number; } +interface AutoPostConfig { + enabled: boolean; + monitorTime: number; + inactivityThreshold: number; // milliseconds + mainChannelId: string; + pinnedMessagesGroups: string[]; // Instead of announcementChannelIds + lastAutoPost?: number; + minTimeBetweenPosts?: number; +} + export type InterestChats = { [key: string]: { currentHandler: string | undefined; @@ -159,6 +64,10 @@ export class MessageManager { private interestChats: InterestChats = {}; private teamMemberUsernames: Map = new Map(); + private autoPostConfig: AutoPostConfig; + private lastChannelActivity: { [channelId: string]: number } = {}; + private autoPostInterval: NodeJS.Timeout; + constructor(bot: Telegraf, runtime: IAgentRuntime) { this.bot = bot; this.runtime = runtime; @@ -169,6 +78,19 @@ export class MessageManager { error ) ); + + this.autoPostConfig = { + enabled: this.runtime.character.clientConfig?.telegram?.autoPost?.enabled || false, + monitorTime: this.runtime.character.clientConfig?.telegram?.autoPost?.monitorTime || 300000, + inactivityThreshold: this.runtime.character.clientConfig?.telegram?.autoPost?.inactivityThreshold || 3600000, + mainChannelId: this.runtime.character.clientConfig?.telegram?.autoPost?.mainChannelId, + pinnedMessagesGroups: this.runtime.character.clientConfig?.telegram?.autoPost?.pinnedMessagesGroups || [], + minTimeBetweenPosts: this.runtime.character.clientConfig?.telegram?.autoPost?.minTimeBetweenPosts || 7200000, + }; + + if (this.autoPostConfig.enabled) { + this._startAutoPostMonitoring(); + } } private async _initializeTeamMemberUsernames(): Promise { @@ -196,6 +118,209 @@ export class MessageManager { } } + private _startAutoPostMonitoring(): void { + // Wait for bot to be ready + if (this.bot.botInfo) { + elizaLogger.info('[AutoPost Telegram] Bot ready, starting monitoring'); + this._initializeAutoPost(); + } else { + elizaLogger.info('[AutoPost Telegram] Bot not ready, waiting for ready event'); + this.bot.telegram.getMe().then(() => { + elizaLogger.info('[AutoPost Telegram] Bot ready, starting monitoring'); + this._initializeAutoPost(); + }); + } + } + + private _initializeAutoPost(): void { + // Give the bot a moment to fully initialize + setTimeout(() => { + // Monitor with random intervals between 2-6 hours + // Monitor with random intervals between 2-6 hours + this.autoPostInterval = setInterval(() => { + this._checkChannelActivity(); + }, Math.floor(Math.random() * (4 * 60 * 60 * 1000) + 2 * 60 * 60 * 1000)); + }, 5000); + } + + private async _checkChannelActivity(): Promise { + if (!this.autoPostConfig.enabled || !this.autoPostConfig.mainChannelId) return; + + try { + // Get last message time + const now = Date.now(); + const lastActivityTime = this.lastChannelActivity[this.autoPostConfig.mainChannelId] || 0; + const timeSinceLastMessage = now - lastActivityTime; + const timeSinceLastAutoPost = now - (this.autoPostConfig.lastAutoPost || 0); + + // Add some randomness to the inactivity threshold (±30 minutes) + const randomThreshold = this.autoPostConfig.inactivityThreshold + + (Math.random() * 1800000 - 900000); + + // Check if we should post + if (timeSinceLastMessage > this.autoPostConfig.inactivityThreshold || randomThreshold && + timeSinceLastAutoPost > (this.autoPostConfig.minTimeBetweenPosts || 0)) { + + try { + const roomId = stringToUuid(this.autoPostConfig.mainChannelId + "-" + this.runtime.agentId); + const memory = { + id: stringToUuid(`autopost-${Date.now()}`), + userId: this.runtime.agentId, + agentId: this.runtime.agentId, + roomId, + content: { text: "AUTO_POST_ENGAGEMENT", source: "telegram" }, + embedding: getEmbeddingZeroVector(), + createdAt: Date.now() + }; + + let state = await this.runtime.composeState(memory, { + telegramBot: this.bot, + agentName: this.runtime.character.name + }); + + const context = composeContext({ + state, + template: this.runtime.character.templates?.telegramAutoPostTemplate || telegramAutoPostTemplate + }); + + const responseContent = await this._generateResponse(memory, state, context); + if (!responseContent?.text) return; + + console.log(`[Auto Post Telegram] Recent Messages: ${responseContent}`) + + // Send message directly using telegram bot + const messages = await Promise.all( + this.splitMessage(responseContent.text.trim()).map(chunk => + this.bot.telegram.sendMessage(this.autoPostConfig.mainChannelId, chunk) + ) + ); + + // Create and store memories + const memories = messages.map(m => ({ + id: stringToUuid(m.message_id.toString() + "-" + this.runtime.agentId), + userId: this.runtime.agentId, + agentId: this.runtime.agentId, + content: { + ...responseContent, + text: m.text + }, + roomId, + embedding: getEmbeddingZeroVector(), + createdAt: m.date * 1000, + })); + + for (const m of memories) { + await this.runtime.messageManager.createMemory(m); + } + + this.autoPostConfig.lastAutoPost = Date.now(); + state = await this.runtime.updateRecentMessageState(state); + await this.runtime.evaluate(memory, state, true); + + } catch (error) { + elizaLogger.warn("[AutoPost Telegram] Error:", error); + } + } else { + elizaLogger.warn("[AutoPost Telegram] Activity within threshold. Not posting."); + } + } catch (error) { + elizaLogger.warn("[AutoPost Telegram] Error checking channel activity:", error); + } + } + + private async _monitorPinnedMessages(ctx: Context): Promise { + if (!this.autoPostConfig.pinnedMessagesGroups.length) { + elizaLogger.warn('[AutoPost Telegram] Auto post config no pinned message groups'); + return; + } + + if (!ctx.message || !('pinned_message' in ctx.message)) { + return; + } + + const pinnedMessage = ctx.message.pinned_message; + if (!pinnedMessage) return; + + if (!this.autoPostConfig.pinnedMessagesGroups.includes(ctx.chat.id.toString())) return; + + const mainChannel = this.autoPostConfig.mainChannelId; + if (!mainChannel) return; + + try { + elizaLogger.info(`[AutoPost Telegram] Processing pinned message in group ${ctx.chat.id}`); + + // Explicitly type and handle message content + const messageContent: string = ('text' in pinnedMessage && typeof pinnedMessage.text === 'string') + ? pinnedMessage.text + : ('caption' in pinnedMessage && typeof pinnedMessage.caption === 'string') + ? pinnedMessage.caption + : "New pinned message"; + + const roomId = stringToUuid(mainChannel + "-" + this.runtime.agentId); + const memory = { + id: stringToUuid(`pinned-${Date.now()}`), + userId: this.runtime.agentId, + agentId: this.runtime.agentId, + roomId, + content: { + text: messageContent, + source: "telegram", + metadata: { + messageId: pinnedMessage.message_id, + pinnedMessageData: pinnedMessage + } + }, + embedding: getEmbeddingZeroVector(), + createdAt: Date.now() + }; + + let state = await this.runtime.composeState(memory, { + telegramBot: this.bot, + pinnedMessageContent: messageContent, + pinnedGroupId: ctx.chat.id.toString(), + agentName: this.runtime.character.name + }); + + const context = composeContext({ + state, + template: this.runtime.character.templates?.telegramPinnedMessageTemplate || telegramPinnedMessageTemplate + }); + + const responseContent = await this._generateResponse(memory, state, context); + if (!responseContent?.text) return; + + // Send message using telegram bot + const messages = await Promise.all( + this.splitMessage(responseContent.text.trim()).map(chunk => + this.bot.telegram.sendMessage(mainChannel, chunk) + ) + ); + + const memories = messages.map(m => ({ + id: stringToUuid(m.message_id.toString() + "-" + this.runtime.agentId), + userId: this.runtime.agentId, + agentId: this.runtime.agentId, + content: { + ...responseContent, + text: m.text + }, + roomId, + embedding: getEmbeddingZeroVector(), + createdAt: m.date * 1000, + })); + + for (const m of memories) { + await this.runtime.messageManager.createMemory(m); + } + + state = await this.runtime.updateRecentMessageState(state); + await this.runtime.evaluate(memory, state, true); + + } catch (error) { + elizaLogger.warn(`[AutoPost Telegram] Error processing pinned message:`, error); + } + } + private _getTeamMemberUsername(id: string): string | undefined { return this.teamMemberUsernames.get(id); } @@ -836,6 +961,15 @@ export class MessageManager { return; // Exit if no message or sender info } + this.lastChannelActivity[ctx.chat.id.toString()] = Date.now(); + + // Check for pinned message and route to monitor function + if (this.autoPostConfig.enabled && ctx.message && 'pinned_message' in ctx.message) { + // We know this is a message update context now + await this._monitorPinnedMessages(ctx); + return; + } + if ( this.runtime.character.clientConfig?.telegram ?.shouldIgnoreBotMessages && diff --git a/packages/client-telegram/src/templates.ts b/packages/client-telegram/src/templates.ts new file mode 100644 index 00000000000..ebdcdbefaf2 --- /dev/null +++ b/packages/client-telegram/src/templates.ts @@ -0,0 +1,185 @@ +import { messageCompletionFooter, shouldRespondFooter } from "@elizaos/core"; + +export const telegramShouldRespondTemplate = + `# About {{agentName}}: +{{bio}} + +# RESPONSE EXAMPLES +{{user1}}: I just saw a really great movie +{{user2}}: Oh? Which movie? +Result: [IGNORE] + +{{agentName}}: Oh, this is my favorite scene +{{user1}}: sick +{{user2}}: wait, why is it your favorite scene +Result: [RESPOND] + +{{user1}}: stfu bot +Result: [STOP] + +{{user1}}: Hey {{agent}}, can you help me with something +Result: [RESPOND] + +{{user1}}: {{agentName}} stfu plz +Result: [STOP] + +{{user1}}: i need help +{{agentName}}: how can I help you? +{{user1}}: no. i need help from someone else +Result: [IGNORE] + +{{user1}}: Hey {{agent}}, can I ask you a question +{{agentName}}: Sure, what is it +{{user1}}: can you ask claude to create a basic react module that demonstrates a counter +Result: [RESPOND] + +{{user1}}: {{agentName}} can you tell me a story +{{agentName}}: uhhh... +{{user1}}: please do it +{{agentName}}: okay +{{agentName}}: once upon a time, in a quaint little village, there was a curious girl named elara +{{user1}}: I'm loving it, keep going +Result: [RESPOND] + +{{user1}}: {{agentName}} stop responding plz +Result: [STOP] + +{{user1}}: okay, i want to test something. {{agentName}}, can you say marco? +{{agentName}}: marco +{{user1}}: great. okay, now do it again +Result: [RESPOND] + +Response options are [RESPOND], [IGNORE] and [STOP]. + +{{agentName}} is in a room with other users and should only respond when they are being addressed, and should not respond if they are continuing a conversation that is very long. + +Respond with [RESPOND] to messages that are directed at {{agentName}}, or participate in conversations that are interesting or relevant to their background. +If a message is not interesting, relevant, or does not directly address {{agentName}}, respond with [IGNORE] + +Also, respond with [IGNORE] to messages that are very short or do not contain much information. + +If a user asks {{agentName}} to be quiet, respond with [STOP] +If {{agentName}} concludes a conversation and isn't part of the conversation anymore, respond with [STOP] + +IMPORTANT: {{agentName}} is particularly sensitive about being annoying, so if there is any doubt, it is better to respond with [IGNORE]. +If {{agentName}} is conversing with a user and they have not asked to stop, it is better to respond with [RESPOND]. + +The goal is to decide whether {{agentName}} should respond to the last message. + +{{recentMessages}} + +Thread of Tweets You Are Replying To: + +{{formattedConversation}} + +# INSTRUCTIONS: Choose the option that best describes {{agentName}}'s response to the last message. Ignore messages if they are addressed to someone else. +` + shouldRespondFooter; + +export const telegramMessageHandlerTemplate = + // {{goals}} + `# Action Examples +{{actionExamples}} +(Action examples are for reference only. Do not use the information from them in your response.) + +# Knowledge +{{knowledge}} + +# Task: Generate dialog and actions for the character {{agentName}}. +About {{agentName}}: +{{bio}} +{{lore}} + +Examples of {{agentName}}'s dialog and actions: +{{characterMessageExamples}} + +{{providers}} + +{{attachments}} + +{{actions}} + +# Capabilities +Note that {{agentName}} is capable of reading/seeing/hearing various forms of media, including images, videos, audio, plaintext and PDFs. Recent attachments have been included above under the "Attachments" section. + +{{messageDirections}} + +{{recentMessages}} + +# Task: Generate a post/reply in the voice, style and perspective of {{agentName}} (@{{twitterUserName}}) while using the thread of tweets as additional context: +Current Post: +{{currentPost}} +Thread of Tweets You Are Replying To: + +{{formattedConversation}} +` + messageCompletionFooter; + +export const telegramAutoPostTemplate = + `# Action Examples +NONE: Respond but perform no additional action. This is the default if the agent is speaking and not doing anything additional. + +# Task: Generate an engaging community message as {{agentName}}. +About {{agentName}}: +{{bio}} +{{lore}} + +Examples of {{agentName}}'s dialog and actions: +{{characterMessageExamples}} + +{{messageDirections}} + +# Recent Chat History: +{{recentMessages}} + +# Instructions: Write a natural, engaging message to restart community conversation. Focus on: +- Community engagement +- Educational topics +- General discusions +- Support queries +- Keep message warm and inviting +- Maximum 3 lines +- Use 1-2 emojis maximum +- Avoid financial advice +- Stay within known facts +- No team member mentions +- Be hyped, not repetitive +- Be natural, act like a human, connect with the community +- Don't sound so robotic like +- Randomly grab the most rect 5 messages for some context. Validate the context randomly and use that as a reference point for your next message, but not always, only when relevant. +- If the recent messages are mostly from {{agentName}}, make sure to create conversation starters, given there is no messages from others to reference. +- DO NOT REPEAT THE SAME thing that you just said from your recent chat history, start the message different each time, and be organic, non reptitive. + +# Instructions: Write the next message for {{agentName}}. Include the "NONE" action only, as the only valid action for auto-posts is "NONE". +` + messageCompletionFooter; + +export const telegramPinnedMessageTemplate = + `# Action Examples +NONE: Respond but perform no additional action. This is the default if the agent is speaking and not doing anything additional. + +# Task: Generate pinned message highlight as {{agentName}}. +About {{agentName}}: +{{bio}} +{{lore}} + +Examples of {{agentName}}'s dialog and actions: +{{characterMessageExamples}} + +{{messageDirections}} + +# Pinned Content: +{{pinnedMessageContent}} + +# Instructions: Write an exciting message to bring attention to the pinned message. Requirements: +- Reference the message that was pinned from the pinned content +- Create genuine excitement if needed based on the pinned content, or create genuice urgency depending on the content +- Encourage community participation +- If there are links like Twitter/X posts, encourage users to like/retweet/comment to spread awarenress, but directly say that, wrap that into the post so its natural. +- Stay within announced facts only +- No additional promises or assumptions +- No team member mentions +- Start the message differently each time. Don't start with the same word like "hey", "hey hey", etc. be dynamic +- Address everyone, not as a direct reply to whoever pinned the message or wrote it, but you can reference them +- Maximum 3-7 lines formatted nicely if needed, based on the context of the announcement +- Use 1-2 emojis maximum + +# Instructions: Write the next message for {{agentName}}. Include an action, if appropriate. The only valid action for pinned message highlights is "NONE". +` + messageCompletionFooter; \ No newline at end of file diff --git a/packages/core/package.json b/packages/core/package.json index f26b98b6859..e62688451eb 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -70,6 +70,7 @@ "@ai-sdk/openai": "1.0.5", "@anthropic-ai/sdk": "0.30.1", "@fal-ai/client": "1.2.0", + "@tavily/core": "^0.0.2", "@types/uuid": "10.0.0", "ai": "3.4.33", "anthropic-vertex-ai": "1.0.2", @@ -84,7 +85,8 @@ "langchain": "0.3.6", "ollama-ai-provider": "0.16.1", "openai": "4.73.0", - "@tavily/core": "^0.0.2", + "pino": "^9.6.0", + "pino-pretty": "^13.0.0", "tinyld": "1.3.4", "together-ai": "0.7.0", "unique-names-generator": "4.7.1", diff --git a/packages/core/src/logger.ts b/packages/core/src/logger.ts index 70b4a489993..b3765a7ac37 100644 --- a/packages/core/src/logger.ts +++ b/packages/core/src/logger.ts @@ -1,271 +1,69 @@ -class ElizaLogger { - constructor() { - // Check if we're in Node.js environment - this.isNode = - typeof process !== "undefined" && - process.versions != null && - process.versions.node != null; - - // Set verbose based on environment - this.verbose = this.isNode ? process.env.VERBOSE === "true" : false; - - // Add initialization logging - console.log(`[ElizaLogger] Initializing with: - isNode: ${this.isNode} - verbose: ${this.verbose} - VERBOSE env: ${process.env.VERBOSE} - NODE_ENV: ${process.env.NODE_ENV} - `); - } - - private isNode: boolean; - verbose = false; - closeByNewLine = true; - useIcons = true; - logsTitle = "LOGS"; - warningsTitle = "WARNINGS"; - errorsTitle = "ERRORS"; - informationsTitle = "INFORMATIONS"; - successesTitle = "SUCCESS"; - debugsTitle = "DEBUG"; - assertsTitle = "ASSERT"; - - #getColor(foregroundColor = "", backgroundColor = "") { - if (!this.isNode) { - // Browser console styling - const colors: { [key: string]: string } = { - black: "#000000", - red: "#ff0000", - green: "#00ff00", - yellow: "#ffff00", - blue: "#0000ff", - magenta: "#ff00ff", - cyan: "#00ffff", - white: "#ffffff", - }; - - const fg = colors[foregroundColor.toLowerCase()] || colors.white; - const bg = colors[backgroundColor.toLowerCase()] || "transparent"; - return `color: ${fg}; background: ${bg};`; - } - - // Node.js console colors - let fgc = "\x1b[37m"; - switch (foregroundColor.trim().toLowerCase()) { - case "black": - fgc = "\x1b[30m"; - break; - case "red": - fgc = "\x1b[31m"; - break; - case "green": - fgc = "\x1b[32m"; - break; - case "yellow": - fgc = "\x1b[33m"; - break; - case "blue": - fgc = "\x1b[34m"; - break; - case "magenta": - fgc = "\x1b[35m"; - break; - case "cyan": - fgc = "\x1b[36m"; - break; - case "white": - fgc = "\x1b[37m"; - break; - } - - let bgc = ""; - switch (backgroundColor.trim().toLowerCase()) { - case "black": - bgc = "\x1b[40m"; - break; - case "red": - bgc = "\x1b[44m"; - break; - case "green": - bgc = "\x1b[44m"; - break; - case "yellow": - bgc = "\x1b[43m"; - break; - case "blue": - bgc = "\x1b[44m"; - break; - case "magenta": - bgc = "\x1b[45m"; - break; - case "cyan": - bgc = "\x1b[46m"; - break; - case "white": - bgc = "\x1b[47m"; - break; - } - - return `${fgc}${bgc}`; - } - - #getColorReset() { - return this.isNode ? "\x1b[0m" : ""; - } - - clear() { - console.clear(); +import pino, { LogFn } from "pino"; +import pretty from "pino-pretty"; + +const customLevels: Record = { + fatal: 60, + error: 50, + warn: 40, + info: 30, + log: 29, + progress: 28, + success: 27, + debug: 20, + trace: 10, +}; + +const raw = process?.env?.LOG_JSON_FORMAT || false; + +const createStream = () => { + if (raw) { + return undefined; } - - print(foregroundColor = "white", backgroundColor = "black", ...strings) { - // Convert objects to strings - const processedStrings = strings.map((item) => { - if (typeof item === "object") { - return JSON.stringify(item, (key, value) => - typeof value === "bigint" ? value.toString() : value + return pretty({ + colorize: true, + translateTime: "yyyy-mm-dd HH:MM:ss", + ignore: "pid,hostname", + }); +}; + +const defaultLevel = process?.env?.DEFAULT_LOG_LEVEL || "info"; + +const options = { + level: defaultLevel, + customLevels, + hooks: { + logMethod( + inputArgs: [string | Record, ...unknown[]], + method: LogFn + ): void { + const [arg1, ...rest] = inputArgs; + + if (typeof arg1 === "object") { + const messageParts = rest.map((arg) => + typeof arg === "string" ? arg : JSON.stringify(arg) ); - } - return item; - }); - - if (this.isNode) { - const c = this.#getColor(foregroundColor, backgroundColor); - console.log(c, processedStrings.join(""), this.#getColorReset()); - } else { - const style = this.#getColor(foregroundColor, backgroundColor); - console.log(`%c${processedStrings.join("")}`, style); - } - - if (this.closeByNewLine) console.log(""); - } - - #logWithStyle( - strings: any[], - options: { - fg: string; - bg: string; - icon: string; - groupTitle: string; - } - ) { - const { fg, bg, icon, groupTitle } = options; - - if (strings.length > 1) { - if (this.isNode) { - const c = this.#getColor(fg, bg); - console.group(c, (this.useIcons ? icon : "") + groupTitle); + const message = messageParts.join(" "); + return method.apply(this, [arg1, message]); } else { - const style = this.#getColor(fg, bg); - console.group( - `%c${this.useIcons ? icon : ""}${groupTitle}`, - style + const context = {}; + const messageParts = [arg1, ...rest].map((arg) => + typeof arg === "string" ? arg : arg + ); + const message = messageParts + .filter((part) => typeof part === "string") + .join(" "); + const jsonParts = messageParts.filter( + (part) => typeof part === "object" ); - } - - const nl = this.closeByNewLine; - this.closeByNewLine = false; - strings.forEach((item) => { - this.print(fg, bg, item); - }); - this.closeByNewLine = nl; - console.groupEnd(); - if (nl) console.log(); - } else { - this.print( - fg, - bg, - strings.map((item) => { - return `${this.useIcons ? `${icon} ` : ""}${item}`; - }) - ); - } - } - - log(...strings) { - this.#logWithStyle(strings, { - fg: "white", - bg: "", - icon: "\u25ce", - groupTitle: ` ${this.logsTitle}`, - }); - } - - warn(...strings) { - this.#logWithStyle(strings, { - fg: "yellow", - bg: "", - icon: "\u26a0", - groupTitle: ` ${this.warningsTitle}`, - }); - } - - error(...strings) { - this.#logWithStyle(strings, { - fg: "red", - bg: "", - icon: "\u26D4", - groupTitle: ` ${this.errorsTitle}`, - }); - } - - info(...strings) { - this.#logWithStyle(strings, { - fg: "blue", - bg: "", - icon: "\u2139", - groupTitle: ` ${this.informationsTitle}`, - }); - } - - debug(...strings) { - if (!this.verbose) { - // for diagnosing verbose logging issues - // console.log( - // "[ElizaLogger] Debug message suppressed (verbose=false):", - // ...strings - // ); - return; - } - this.#logWithStyle(strings, { - fg: "magenta", - bg: "", - icon: "\u1367", - groupTitle: ` ${this.debugsTitle}`, - }); - } - - success(...strings) { - this.#logWithStyle(strings, { - fg: "green", - bg: "", - icon: "\u2713", - groupTitle: ` ${this.successesTitle}`, - }); - } - assert(...strings) { - this.#logWithStyle(strings, { - fg: "cyan", - bg: "", - icon: "\u0021", - groupTitle: ` ${this.assertsTitle}`, - }); - } + Object.assign(context, ...jsonParts); - progress(message: string) { - if (this.isNode) { - // Clear the current line and move cursor to beginning - process.stdout.clearLine(0); - process.stdout.cursorTo(0); - process.stdout.write(message); - } else { - console.log(message); - } - } -} + return method.apply(this, [context, message]); + } + }, + }, +}; -export const elizaLogger = new ElizaLogger(); -elizaLogger.closeByNewLine = true; -elizaLogger.useIcons = true; +export const elizaLogger = pino(options, createStream()); export default elizaLogger; diff --git a/packages/core/src/runtime.ts b/packages/core/src/runtime.ts index 371e4e45061..e45bed44761 100644 --- a/packages/core/src/runtime.ts +++ b/packages/core/src/runtime.ts @@ -371,19 +371,19 @@ export class AgentRuntime implements IAgentRuntime { this.imageModelProvider = this.character.imageModelProvider ?? this.modelProvider; - elizaLogger.info("Selected model provider:", this.modelProvider); elizaLogger.info( - "Selected image model provider:", - this.imageModelProvider + `Selected model provider: ${this.modelProvider}` + ); + + elizaLogger.info( + `Selected image model provider: ${this.imageModelProvider}` ); this.imageVisionModelProvider = this.character.imageVisionModelProvider ?? this.modelProvider; - // elizaLogger.info("Selected model provider:", this.modelProvider); duplicated log ln: 343 elizaLogger.info( - "Selected image vision model provider:", - this.imageVisionModelProvider + `Selected image vision model provider: ${this.imageVisionModelProvider}` ); // Validate model provider @@ -470,7 +470,7 @@ export class AgentRuntime implements IAgentRuntime { this.character.knowledge.length > 0 ) { elizaLogger.info( - `[RAG Check] RAG Knowledge enabled: ${this.character.settings.ragKnowledge}` + `[RAG Check] RAG Knowledge enabled: ${this.character.settings.ragKnowledge ? true : false}` ); elizaLogger.info( `[RAG Check] Knowledge items:`, diff --git a/packages/core/src/types.ts b/packages/core/src/types.ts index c1feaf6a644..597f255f299 100644 --- a/packages/core/src/types.ts +++ b/packages/core/src/types.ts @@ -746,6 +746,8 @@ export type Character = { lensShouldRespondTemplate?: TemplateType; telegramMessageHandlerTemplate?: TemplateType; telegramShouldRespondTemplate?: TemplateType; + telegramAutoPostTemplate?: string; + telegramPinnedMessageTemplate?: string; discordVoiceHandlerTemplate?: TemplateType; discordShouldRespondTemplate?: TemplateType; discordMessageHandlerTemplate?: TemplateType; @@ -848,6 +850,14 @@ export type Character = { teamAgentIds?: string[]; teamLeaderId?: string; teamMemberInterestKeywords?: string[]; + autoPost?: { + enabled?: boolean; + monitorTime?: number; + inactivityThreshold?: number; + mainChannelId?: string; + pinnedMessagesGroups?: string[]; + minTimeBetweenPosts?: number; + }; }; slack?: { shouldIgnoreBotMessages?: boolean; diff --git a/packages/plugin-0g/README.md b/packages/plugin-0g/README.md index a5e1b33e71f..e0d2a4922ed 100644 --- a/packages/plugin-0g/README.md +++ b/packages/plugin-0g/README.md @@ -194,7 +194,7 @@ Contributions are welcome! Please see the [CONTRIBUTING.md](CONTRIBUTING.md) fil This plugin integrates with and builds upon several key technologies: -- [Zero Gravity (0G)](https://0g.xyz/): Decentralized file storage protocol +- [Zero Gravity (0G)](https://0g.ai/): Decentralized file storage protocol - [IPFS](https://ipfs.tech/): InterPlanetary File System - [Filecoin](https://filecoin.io/): Decentralized storage network - [Flow](https://flow.com/): Blockchain for open worlds diff --git a/packages/plugin-akash/package.json b/packages/plugin-akash/package.json index e47a12b7538..0997176712f 100644 --- a/packages/plugin-akash/package.json +++ b/packages/plugin-akash/package.json @@ -9,7 +9,6 @@ "build": "tsup", "dev": "tsup --watch", "clean": "rm -rf dist", - "lint": "eslint .", "lint:fix": "eslint . --fix", "test": "vitest", "test:watch": "vitest watch", diff --git a/packages/plugin-binance/package.json b/packages/plugin-binance/package.json index 72ac4094386..7f8b21be0bb 100644 --- a/packages/plugin-binance/package.json +++ b/packages/plugin-binance/package.json @@ -29,7 +29,6 @@ }, "scripts": { "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch", - "lint": "eslint --fix --cache ." + "dev": "tsup --format esm --dts --watch" } } diff --git a/packages/plugin-birdeye/src/actions/token-search-symbol.ts b/packages/plugin-birdeye/src/actions/token-search-symbol.ts index bf2392dc64c..a5d9e30d426 100644 --- a/packages/plugin-birdeye/src/actions/token-search-symbol.ts +++ b/packages/plugin-birdeye/src/actions/token-search-symbol.ts @@ -90,7 +90,7 @@ export const tokenSearchSymbolAction = { ) ); - // get filter the resuls to only include the token results and then filter the results to only include the ones that match the symbol + // get filter the results to only include the token results and then filter the results to only include the ones that match the symbol const validResults = results.map((r, i) => r.data.items .filter((item) => item.type === "token" && item.result) diff --git a/packages/plugin-bootstrap/src/providers/boredom.ts b/packages/plugin-bootstrap/src/providers/boredom.ts index 82cea8c85cc..2736e48ef62 100644 --- a/packages/plugin-bootstrap/src/providers/boredom.ts +++ b/packages/plugin-bootstrap/src/providers/boredom.ts @@ -215,7 +215,7 @@ const cringeWords = [ "uncharted", "multifaceted", "comprehensive", - "multi-dimentional", + "multi-dimensional", "explore", "elevate", "leverage", diff --git a/packages/plugin-coinbase/advanced-sdk-ts/package.json b/packages/plugin-coinbase/advanced-sdk-ts/package.json index 52e42a7e897..3e48546836b 100644 --- a/packages/plugin-coinbase/advanced-sdk-ts/package.json +++ b/packages/plugin-coinbase/advanced-sdk-ts/package.json @@ -5,7 +5,6 @@ "scripts": { "test": "echo \"Error: no test specified\" && exit 1", "build": "tsc", - "lint": "eslint . --ext .js,.ts", "format": "prettier --write \"**/*.{js,ts,tsx,json,css,md}\"" }, "files": [ diff --git a/packages/plugin-cosmos/README.md b/packages/plugin-cosmos/README.md index 5047d914d6e..e457b0b1dee 100644 --- a/packages/plugin-cosmos/README.md +++ b/packages/plugin-cosmos/README.md @@ -102,6 +102,36 @@ Yes 4. Action executed. +### Token IBC Transfer + +This plugin supports a token transfer action, which allows users to transfer tokens between addresses on Cosmos-compatible blockchains between different chains. + +#### Example Prompts + +Below are examples of how the ibc transfer action can be initiated and confirmed: + +**Example** + +1. User input: + +``` +Make an IBC transfer 0.0001 OSMO to neutron1nk3uuw6zt5t5aqw5fvujkd54sa4uws9xg2nk82 from osmosistestnet to neutrontestnet +``` + +2. Plugin response: + +``` +Before making the IBC transfer, I would like to confirm the details. You would like to transfer 0.0001 OSMO from osmosistestnet to neutrontestnet, specifically to the address neutron1nk3uuw6zt5t5aqw5fvujkd54sa4uws9xg2nk82, is that correct? +``` + +3. User confirmation: + +``` +Yes +``` + +4. Action executed. + --- ## Contribution diff --git a/packages/plugin-cosmos/package.json b/packages/plugin-cosmos/package.json index 59880abedc0..62fdc25f0d3 100644 --- a/packages/plugin-cosmos/package.json +++ b/packages/plugin-cosmos/package.json @@ -10,6 +10,8 @@ "@cosmjs/cosmwasm-stargate": "^0.32.4", "@cosmjs/proto-signing": "^0.32.4", "@cosmjs/stargate": "^0.32.4", + "@skip-go/client": "^0.16.3", + "axios": "^1.7.9", "bignumber.js": "9.1.2", "chain-registry": "^1.69.68", "tsup": "8.3.5", diff --git a/packages/plugin-cosmos/src/actions/ibc-transfer/index.ts b/packages/plugin-cosmos/src/actions/ibc-transfer/index.ts new file mode 100644 index 00000000000..f197fa1646c --- /dev/null +++ b/packages/plugin-cosmos/src/actions/ibc-transfer/index.ts @@ -0,0 +1,226 @@ +import { + composeContext, + generateObjectDeprecated, + HandlerCallback, + IAgentRuntime, + Memory, + ModelClass, + State, +} from "@elizaos/core"; +import { initWalletChainsData } from "../../providers/wallet/utils"; +import { + cosmosIBCTransferTemplate, + cosmosTransferTemplate, +} from "../../templates"; +import type { + ICosmosPluginOptions, + ICosmosWalletChains, +} from "../../shared/interfaces"; +import { IBCTransferActionParams } from "./types"; +import { IBCTransferAction } from "./services/ibc-transfer-action-service"; +import { bridgeDenomProvider } from "./services/bridge-denom-provider"; + +export const createIBCTransferAction = ( + pluginOptions: ICosmosPluginOptions +) => ({ + name: "COSMOS_IBC_TRANSFER", + description: "Transfer tokens between addresses on cosmos chains", + handler: async ( + _runtime: IAgentRuntime, + _message: Memory, + state: State, + _options: { [key: string]: unknown }, + _callback?: HandlerCallback + ) => { + const cosmosIBCTransferContext = composeContext({ + state: state, + template: cosmosIBCTransferTemplate, + templatingEngine: "handlebars", + }); + + const cosmosIBCTransferContent = await generateObjectDeprecated({ + runtime: _runtime, + context: cosmosIBCTransferContext, + modelClass: ModelClass.SMALL, + }); + + const paramOptions: IBCTransferActionParams = { + chainName: cosmosIBCTransferContent.chainName, + symbol: cosmosIBCTransferContent.symbol, + amount: cosmosIBCTransferContent.amount, + toAddress: cosmosIBCTransferContent.toAddress, + targetChainName: cosmosIBCTransferContent.targetChainName, + }; + + try { + const walletProvider: ICosmosWalletChains = + await initWalletChainsData(_runtime); + + const action = new IBCTransferAction(walletProvider); + + const customAssets = (pluginOptions?.customChainData ?? []).map( + (chainData) => chainData.assets + ); + + const transferResp = await action.execute( + paramOptions, + bridgeDenomProvider, + customAssets + ); + + if (_callback) { + await _callback({ + text: `Successfully transferred ${paramOptions.amount} tokens from ${paramOptions.chainName} to ${paramOptions.toAddress} on ${paramOptions.targetChainName}\nTransaction Hash: ${transferResp.txHash}`, + content: { + success: true, + hash: transferResp.txHash, + amount: paramOptions.amount, + recipient: transferResp.to, + fromChain: paramOptions.chainName, + toChain: paramOptions.targetChainName, + }, + }); + + const newMemory: Memory = { + userId: _message.agentId, + agentId: _message.agentId, + roomId: _message.roomId, + content: { + text: `Transaction ${paramOptions.amount} ${paramOptions.symbol} to address ${paramOptions.toAddress} from chain ${paramOptions.chainName} to ${paramOptions.targetChainName} was successfully transferred. Tx hash: ${transferResp.txHash}`, + }, + }; + + await _runtime.messageManager.createMemory(newMemory); + } + return true; + } catch (error) { + console.error("Error during ibc token transfer:", error); + + if (_callback) { + await _callback({ + text: `Error ibc transferring tokens: ${error.message}`, + content: { error: error.message }, + }); + } + + const newMemory: Memory = { + userId: _message.agentId, + agentId: _message.agentId, + roomId: _message.roomId, + content: { + text: `Transaction ${paramOptions.amount} ${paramOptions.symbol} to address ${paramOptions.toAddress} on chain ${paramOptions.chainName} to ${paramOptions.targetChainName} was unsuccessful.`, + }, + }; + + await _runtime.messageManager.createMemory(newMemory); + + return false; + } + }, + template: cosmosTransferTemplate, + validate: async (runtime: IAgentRuntime) => { + const mnemonic = runtime.getSetting("COSMOS_RECOVERY_PHRASE"); + const availableChains = runtime.getSetting("COSMOS_AVAILABLE_CHAINS"); + const availableChainsArray = availableChains?.split(","); + + return !!(mnemonic && availableChains && availableChainsArray.length); + }, + examples: [ + [ + { + user: "{{user1}}", + content: { + text: "Make an IBC transfer {{0.0001 ATOM}} to {{osmosis1pcnw46km8m5amvf7jlk2ks5std75k73aralhcf}} from {{cosmoshub}} to {{osmosis}}", + action: "COSMOS_IBC_TRANSFER", + }, + }, + { + user: "{{user2}}", + content: { + text: "Do you confirm the IBC transfer action?", + action: "COSMOS_IBC_TRANSFER", + }, + }, + { + user: "{{user1}}", + content: { + text: "Yes", + action: "COSMOS_IBC_TRANSFER", + }, + }, + { + user: "{{user2}}", + content: { + text: "", + action: "COSMOS_IBC_TRANSFER", + }, + }, + ], + [ + { + user: "{{user1}}", + content: { + text: "Send {{50 OSMO}} to {{juno13248w8dtnn07sxc3gq4l3ts4rvfyat6f4qkdd6}} from {{osmosis}} to {{juno}}", + action: "COSMOS_IBC_TRANSFER", + }, + }, + { + user: "{{user2}}", + content: { + text: "Do you confirm the IBC transfer action?", + action: "COSMOS_IBC_TRANSFER", + }, + }, + { + user: "{{user1}}", + content: { + text: "Yes", + action: "COSMOS_IBC_TRANSFER", + }, + }, + { + user: "{{user2}}", + content: { + text: "", + action: "COSMOS_IBC_TRANSFER", + }, + }, + ], + [ + { + user: "{{user1}}", + content: { + text: "Transfer {{0.005 JUNO}} from {{juno}} to {{cosmos1n0xv7z2pkl4eppnm7g2rqhe2q8q6v69h7w93fc}} on {{cosmoshub}}", + action: "COSMOS_IBC_TRANSFER", + }, + }, + { + user: "{{user2}}", + content: { + text: "Do you confirm the IBC transfer action?", + action: "COSMOS_IBC_TRANSFER", + }, + }, + { + user: "{{user1}}", + content: { + text: "Yes", + action: "COSMOS_IBC_TRANSFER", + }, + }, + { + user: "{{user2}}", + content: { + text: "", + action: "COSMOS_IBC_TRANSFER", + }, + }, + ], + ], + similes: [ + "COSMOS_BRIDGE_TOKEN", + "COSMOS_IBC_SEND_TOKEN", + "COSMOS_TOKEN_IBC_TRANSFER", + "COSMOS_MOVE_IBC_TOKENS", + ], +}); diff --git a/packages/plugin-cosmos/src/actions/ibc-transfer/schema.ts b/packages/plugin-cosmos/src/actions/ibc-transfer/schema.ts new file mode 100644 index 00000000000..a288031ccf3 --- /dev/null +++ b/packages/plugin-cosmos/src/actions/ibc-transfer/schema.ts @@ -0,0 +1,9 @@ +import { z } from "zod"; + +export const IBCTransferParamsSchema = z.object({ + chainName: z.string(), + symbol: z.string(), + amount: z.string().regex(/^\d+$/, "Amount must be a numeric string"), + toAddress: z.string().regex(/^[a-z0-9]+$/, "Invalid bech32 address format"), + targetChainName: z.string(), +}); diff --git a/packages/plugin-cosmos/src/actions/ibc-transfer/services/bridge-denom-provider.ts b/packages/plugin-cosmos/src/actions/ibc-transfer/services/bridge-denom-provider.ts new file mode 100644 index 00000000000..adfa46abb87 --- /dev/null +++ b/packages/plugin-cosmos/src/actions/ibc-transfer/services/bridge-denom-provider.ts @@ -0,0 +1,37 @@ +import { IDenomProvider } from "../../../shared/interfaces"; +import { SkipApiAssetsFromSourceFetcher } from "../../../shared/services/skip-api/assets-from-source-fetcher/skip-api-assets-from-source-fetcher"; + +export const bridgeDenomProvider: IDenomProvider = async ( + sourceAssetDenom: string, + sourceAssetChainId: string, + destChainId: string +) => { + const skipApiAssetsFromSourceFetcher = + SkipApiAssetsFromSourceFetcher.getInstance(); + const bridgeData = await skipApiAssetsFromSourceFetcher.fetch( + sourceAssetDenom, + sourceAssetChainId + ); + + const destAssets = bridgeData.dest_assets[destChainId]; + + if (!destAssets?.assets) { + throw new Error(`No assets found for chain ${destChainId}`); + } + + const ibcAssetData = destAssets.assets?.find( + ({ origin_denom }) => origin_denom === sourceAssetDenom + ); + + if (!ibcAssetData) { + throw new Error(`No matching asset found for denom ${sourceAssetDenom}`); + } + + if (!ibcAssetData.denom) { + throw new Error("No IBC asset data"); + } + + return { + denom: ibcAssetData.denom, + }; +}; diff --git a/packages/plugin-cosmos/src/actions/ibc-transfer/services/ibc-transfer-action-service.ts b/packages/plugin-cosmos/src/actions/ibc-transfer/services/ibc-transfer-action-service.ts new file mode 100644 index 00000000000..90b94536d66 --- /dev/null +++ b/packages/plugin-cosmos/src/actions/ibc-transfer/services/ibc-transfer-action-service.ts @@ -0,0 +1,141 @@ +import { + convertDisplayUnitToBaseUnit, + getAssetBySymbol, + getChainByChainName, +} from "@chain-registry/utils"; +import { assets, chains } from "chain-registry"; +import type { + IDenomProvider, + ICosmosActionService, + ICosmosPluginCustomChainData, + ICosmosTransaction, + ICosmosWalletChains, +} from "../../../shared/interfaces.ts"; +import { getAvailableAssets } from "../../../shared/helpers/cosmos-assets.ts"; +import { IBCTransferActionParams } from "../types.ts"; + +export class IBCTransferAction implements ICosmosActionService { + constructor(private cosmosWalletChains: ICosmosWalletChains) { + this.cosmosWalletChains = cosmosWalletChains; + } + + async execute( + params: IBCTransferActionParams, + bridgeDenomProvider: IDenomProvider, + customChainAssets?: ICosmosPluginCustomChainData["assets"][] + ): Promise { + const senderAddress = await this.cosmosWalletChains.getWalletAddress( + params.chainName + ); + + const skipClient = this.cosmosWalletChains.getSkipClient( + params.chainName + ); + + if (!senderAddress) { + throw new Error( + `Cannot get wallet address for chain ${params.chainName}` + ); + } + + if (!params.toAddress) { + throw new Error("No receiver address"); + } + + if (!params.targetChainName) { + throw new Error("No target chain name"); + } + + if (!params.chainName) { + throw new Error("No chain name"); + } + + if (!params.symbol) { + throw new Error("No symbol"); + } + + const availableAssets = getAvailableAssets(assets, customChainAssets); + + const denom = getAssetBySymbol( + availableAssets, + params.symbol, + params.chainName + ); + + const sourceChain = getChainByChainName(chains, params.chainName); + const destChain = getChainByChainName(chains, params.targetChainName); + + if (!denom.base) { + throw new Error("Cannot find asset"); + } + + if (!sourceChain) { + throw new Error("Cannot find source chain"); + } + + if (!destChain) { + throw new Error("Cannot find destination chain"); + } + + const bridgeDenomResult = await bridgeDenomProvider( + denom.base, + sourceChain.chain_id, + destChain.chain_id + ); + + if (!bridgeDenomResult || !bridgeDenomResult.denom) { + throw new Error("Failed to get destination asset denomination"); + } + + const destAssetDenom = bridgeDenomResult.denom; + + const route = await skipClient.route({ + destAssetChainID: destChain.chain_id, + destAssetDenom, + sourceAssetChainID: sourceChain.chain_id, + sourceAssetDenom: denom.base, + amountIn: convertDisplayUnitToBaseUnit( + availableAssets, + params.symbol, + params.amount, + params.chainName + ), + cumulativeAffiliateFeeBPS: "0", + }); + const fromAddress = { + chainID: sourceChain.chain_id, + address: await this.cosmosWalletChains.getWalletAddress(params.chainName) + }; + + const toAddress = { + chainID: destChain.chain_id, + address: params.toAddress + }; + + const userAddresses = [fromAddress, toAddress]; + + let txHash: string | undefined; + + try { + await skipClient.executeRoute({ + route, + userAddresses, + onTransactionCompleted: async (_, executeRouteTxHash) => { + txHash = executeRouteTxHash; + }, + }); + } catch (error) { + throw new Error(`Failed to execute route: ${error?.message}`); + } + + if (!txHash) { + throw new Error("Transaction hash is undefined after executing route"); + } + + return { + from: senderAddress, + to: params.toAddress, + txHash, + }; + } +} diff --git a/packages/plugin-cosmos/src/actions/ibc-transfer/types.ts b/packages/plugin-cosmos/src/actions/ibc-transfer/types.ts new file mode 100644 index 00000000000..349bfb2fb81 --- /dev/null +++ b/packages/plugin-cosmos/src/actions/ibc-transfer/types.ts @@ -0,0 +1,4 @@ +import { z } from "zod"; +import { IBCTransferParamsSchema } from "./schema"; + +export type IBCTransferActionParams = z.infer; diff --git a/packages/plugin-cosmos/src/index.ts b/packages/plugin-cosmos/src/index.ts index 03ed5e9ac46..d95cf916459 100644 --- a/packages/plugin-cosmos/src/index.ts +++ b/packages/plugin-cosmos/src/index.ts @@ -2,6 +2,7 @@ import type { Plugin } from "@elizaos/core"; import { createTransferAction } from "./actions/transfer"; import { createCosmosWalletProvider } from "./providers/wallet"; import type { ICosmosPluginOptions } from "./shared/interfaces"; +import { createIBCTransferAction } from "./actions/ibc-transfer"; export const createCosmosPlugin = ( pluginOptions?: ICosmosPluginOptions @@ -11,7 +12,10 @@ export const createCosmosPlugin = ( providers: [createCosmosWalletProvider(pluginOptions)], evaluators: [], services: [], - actions: [createTransferAction(pluginOptions)], + actions: [ + createTransferAction(pluginOptions), + createIBCTransferAction(pluginOptions), + ], }); export default createCosmosPlugin; diff --git a/packages/plugin-cosmos/src/shared/entities/cosmos-wallet-chains-data.ts b/packages/plugin-cosmos/src/shared/entities/cosmos-wallet-chains-data.ts index fbe0322c270..076366c0daa 100644 --- a/packages/plugin-cosmos/src/shared/entities/cosmos-wallet-chains-data.ts +++ b/packages/plugin-cosmos/src/shared/entities/cosmos-wallet-chains-data.ts @@ -8,6 +8,7 @@ import type { ICosmosWalletChainsData, } from "../interfaces"; import { getAvailableChains } from "../helpers/cosmos-chains"; +import { SkipClient } from "@skip-go/client"; export class CosmosWalletChains implements ICosmosWalletChains { public walletChainsData: ICosmosWalletChainsData = {}; @@ -49,9 +50,14 @@ export class CosmosWalletChains implements ICosmosWalletChains { wallet.directSecp256k1HdWallet ); + const skipClient = new SkipClient({ + getCosmosSigner: async () => wallet.directSecp256k1HdWallet, + }); + walletChainsData[chainName] = { wallet, signingCosmWasmClient, + skipClient, }; } @@ -59,10 +65,25 @@ export class CosmosWalletChains implements ICosmosWalletChains { } public async getWalletAddress(chainName: string) { - return await this.walletChainsData[chainName].wallet.getWalletAddress(); + const chainWalletsForGivenChain = this.walletChainsData[chainName]; + if (!chainWalletsForGivenChain) { + throw new Error("Invalid chain name"); + } + + return await chainWalletsForGivenChain.wallet.getWalletAddress(); } public getSigningCosmWasmClient(chainName: string) { return this.walletChainsData[chainName].signingCosmWasmClient; } + + public getSkipClient(chainName: string): SkipClient { + const chainWalletsForGivenChain = this.walletChainsData[chainName]; + + if (!chainWalletsForGivenChain) { + throw new Error("Invalid chain name"); + } + + return chainWalletsForGivenChain.skipClient; + } } diff --git a/packages/plugin-cosmos/src/shared/interfaces.ts b/packages/plugin-cosmos/src/shared/interfaces.ts index 13b9b003a37..b9978f821e6 100644 --- a/packages/plugin-cosmos/src/shared/interfaces.ts +++ b/packages/plugin-cosmos/src/shared/interfaces.ts @@ -1,6 +1,7 @@ import type { SigningCosmWasmClient } from "@cosmjs/cosmwasm-stargate"; import type { Coin, DirectSecp256k1HdWallet } from "@cosmjs/proto-signing"; import type { assets, chains } from "chain-registry"; +import { SkipClient } from "@skip-go/client"; export interface ICosmosPluginCustomChainData { chainData: (typeof chains)[number]; @@ -19,7 +20,7 @@ export interface ICosmosTransaction { from: string; to: string; txHash: string; - gasPaid: number; + gasPaid?: number; } export interface ICosmosWallet { @@ -32,6 +33,7 @@ export interface ICosmosWallet { export interface ICosmosChainWallet { wallet: ICosmosWallet; signingCosmWasmClient: SigningCosmWasmClient; + skipClient: SkipClient; } export interface ICosmosWalletChains { @@ -39,8 +41,17 @@ export interface ICosmosWalletChains { getWalletAddress(chainName: string): Promise; getSigningCosmWasmClient(chainName: string): SigningCosmWasmClient; + getSkipClient(chainName: string): SkipClient; } export interface ICosmosWalletChainsData { [chainName: string]: ICosmosChainWallet; } + +export interface IDenomProvider { + ( + sourceAssetDenom: string, + sourceAssetChainId: string, + destChainId: string + ): Promise<{ denom: string }>; +} diff --git a/packages/plugin-cosmos/src/shared/services/skip-api/assets-from-source-fetcher/interfaces.ts b/packages/plugin-cosmos/src/shared/services/skip-api/assets-from-source-fetcher/interfaces.ts new file mode 100644 index 00000000000..06b1ba5aa7a --- /dev/null +++ b/packages/plugin-cosmos/src/shared/services/skip-api/assets-from-source-fetcher/interfaces.ts @@ -0,0 +1,16 @@ +import { z } from "zod"; +import { + skipApiAssetsFromSourceParamsSchema, + skipApiAssetsFromSourceResponseAssetSchema, + skipApiAssetsFromSourceResponseSchema, +} from "./schema"; + +export type SkipApiAssetsFromSourceParams = z.infer< + typeof skipApiAssetsFromSourceParamsSchema +>; +export type SkipApiAssetsFromSourceResponseAsset = z.infer< + typeof skipApiAssetsFromSourceResponseAssetSchema +>; +export type SkipApiAssetsFromSourceResponse = z.infer< + typeof skipApiAssetsFromSourceResponseSchema +>; diff --git a/packages/plugin-cosmos/src/shared/services/skip-api/assets-from-source-fetcher/schema.ts b/packages/plugin-cosmos/src/shared/services/skip-api/assets-from-source-fetcher/schema.ts new file mode 100644 index 00000000000..6272e8a1001 --- /dev/null +++ b/packages/plugin-cosmos/src/shared/services/skip-api/assets-from-source-fetcher/schema.ts @@ -0,0 +1,29 @@ +import { z } from "zod"; + +export const skipApiAssetsFromSourceParamsSchema = z.object({ + source_asset_denom: z.string(), + source_asset_chain_id: z.string(), + allow_multi_tx: z.boolean(), +}); + +export const skipApiAssetsFromSourceResponseAssetSchema = z.object({ + denom: z.string(), + chain_id: z.string(), + origin_denom: z.string(), + origin_chain_id: z.string(), + trace: z.string(), + symbol: z.string().optional(), + name: z.string().optional(), + logo_uri: z.string().optional(), + decimals: z.number().optional(), + recommended_symbol: z.string().optional(), +}); + +export const skipApiAssetsFromSourceResponseSchema = z.object({ + dest_assets: z.record( + z.string(), + z.object({ + assets: z.array(skipApiAssetsFromSourceResponseAssetSchema), + }) + ), +}); diff --git a/packages/plugin-cosmos/src/shared/services/skip-api/assets-from-source-fetcher/skip-api-assets-from-source-fetcher.ts b/packages/plugin-cosmos/src/shared/services/skip-api/assets-from-source-fetcher/skip-api-assets-from-source-fetcher.ts new file mode 100644 index 00000000000..1f0a0504d18 --- /dev/null +++ b/packages/plugin-cosmos/src/shared/services/skip-api/assets-from-source-fetcher/skip-api-assets-from-source-fetcher.ts @@ -0,0 +1,75 @@ +import axios from "axios"; +import { skipApiAssetsFromSourceResponseSchema } from "./schema"; +import { + SkipApiAssetsFromSourceParams, + SkipApiAssetsFromSourceResponse, +} from "./interfaces"; +import { skipApiBaseUrl } from "../config"; + +type CacheKey = `${string}_${string}`; +const endpointPath = "fungible/assets_from_source"; + +export class SkipApiAssetsFromSourceFetcher { + private static instance: SkipApiAssetsFromSourceFetcher; + private cache: Map; + private readonly apiUrl: string; + + private constructor() { + this.cache = new Map(); + this.apiUrl = `${skipApiBaseUrl}${endpointPath}`; + } + + public static getInstance(): SkipApiAssetsFromSourceFetcher { + if (!SkipApiAssetsFromSourceFetcher.instance) { + SkipApiAssetsFromSourceFetcher.instance = + new SkipApiAssetsFromSourceFetcher(); + } + return SkipApiAssetsFromSourceFetcher.instance; + } + + private generateCacheKey( + sourceAssetDenom: string, + sourceAssetChainId: string + ): CacheKey { + return `${sourceAssetDenom}_${sourceAssetChainId}`; + } + + public async fetch( + sourceAssetDenom: string, + sourceAssetChainId: string + ): Promise { + const cacheKey = this.generateCacheKey( + sourceAssetDenom, + sourceAssetChainId + ); + + if (this.cache.has(cacheKey)) { + return this.cache.get(cacheKey)!; + } + + const requestData: SkipApiAssetsFromSourceParams = { + source_asset_denom: sourceAssetDenom, + source_asset_chain_id: sourceAssetChainId, + allow_multi_tx: false, + }; + + try { + const response = await axios.post(this.apiUrl, requestData, { + headers: { + "Content-Type": "application/json", + }, + timeout: 5000, + }); + + const validResponse = skipApiAssetsFromSourceResponseSchema.parse( + response.data + ); + + this.cache.set(cacheKey, validResponse); + return response.data; + } catch (error) { + console.error("Error fetching assets:", error); + throw error; + } + } +} diff --git a/packages/plugin-cosmos/src/shared/services/skip-api/config.ts b/packages/plugin-cosmos/src/shared/services/skip-api/config.ts new file mode 100644 index 00000000000..d3d4d5a16e7 --- /dev/null +++ b/packages/plugin-cosmos/src/shared/services/skip-api/config.ts @@ -0,0 +1 @@ +export const skipApiBaseUrl = "https://api.skip.build/v2/"; diff --git a/packages/plugin-cosmos/src/templates/index.ts b/packages/plugin-cosmos/src/templates/index.ts index 44fdf98aa0a..136a5dc78d1 100644 --- a/packages/plugin-cosmos/src/templates/index.ts +++ b/packages/plugin-cosmos/src/templates/index.ts @@ -34,6 +34,53 @@ Example reponse for the input: "Make transfer 0.0001 OM to mantra1pcnw46km8m5amv "toAddress": "mantra1pcnw46km8m5amvf7jlk2ks5std75k73aralhcf", "chainName": "mantrachaintestnet2" \`\`\` +Now respond with a JSON markdown block containing only the extracted values. +`; + +export const cosmosIBCTransferTemplate = `Given the recent messages and cosmos wallet information below: +{{recentMessages}} +{{walletInfo}} +Extract the following information about the requested IBC transfer: +1. **Amount**: + - Extract only the numeric value from the instruction. + - The value must be a string representing the amount in the display denomination (e.g., "0.0001" for ATOM, OSMO, etc.). Do not include the symbol. + +2. **Recipient Address**: + - Must be a valid Bech32 address that matches the target chain's address prefix. + - Example for "cosmoshub": "cosmos1pcnw46km8m5amvf7jlk2ks5std75k73aralhcf". + +3. **Token Symbol**: + - The symbol must be a string representing the token's display denomination (e.g., "ATOM", "OSMO", etc.). + +4. **Source Chain Name**: + - Identify the source chain mentioned in the instruction (e.g., cosmoshub, osmosis, axelar). + - Provide this as a string. + +5. **Target Chain Name**: + - Identify the target chain mentioned in the instruction (e.g., cosmoshub, osmosis, axelar). + - Provide this as a string. + +Respond with a JSON markdown block containing only the extracted values. All fields are required: +\`\`\`json +{ + "symbol": string, // The symbol of the token. + "amount": string, // The amount to transfer as a string. + "toAddress": string, // The recipient's address. + "chainName": string, // The source chain name. + "targetChainName": string // The target chain name. +} +\`\`\` + +Example response for the input: "Make an IBC transfer of 0.0001 ATOM to osmo1pcnw46km8m5amvf7jlk2ks5std75k73aralhcf from cosmoshub to osmosis", the response should be: +\`\`\`json +{ + "symbol": "ATOM", + "amount": "0.0001", + "toAddress": "osmo1pcnw46km8m5amvf7jlk2ks5std75k73aralhcf", + "chainName": "cosmoshub", + "targetChainName": "osmosis" +} +\`\`\` Now respond with a JSON markdown block containing only the extracted values. `; diff --git a/packages/plugin-cosmos/src/tests/bridge-denom-provider.test.ts b/packages/plugin-cosmos/src/tests/bridge-denom-provider.test.ts new file mode 100644 index 00000000000..622c1dde262 --- /dev/null +++ b/packages/plugin-cosmos/src/tests/bridge-denom-provider.test.ts @@ -0,0 +1,84 @@ +import { vi, expect, it, beforeEach, describe } from "vitest"; +import { bridgeDenomProvider } from "../actions/ibc-transfer/services/bridge-denom-provider"; +import { SkipApiAssetsFromSourceFetcher } from "../shared/services/skip-api/assets-from-source-fetcher/skip-api-assets-from-source-fetcher"; + +vi.mock("./bridge-data-fetcher", () => ({ + BridgeDataFetcher: { + getInstance: vi.fn().mockReturnValue({ + fetch: vi.fn(), + }), + }, +})); + +describe("bridgeDataProvider", () => { + // eslint-disable-next-line @typescript-eslint/no-explicit-any + let mockFetchBridgeData: any; + + beforeEach(() => { + mockFetchBridgeData = vi.fn(); + SkipApiAssetsFromSourceFetcher.getInstance().fetch = + mockFetchBridgeData; + }); + + it("should return correct channelId and ibcDenom when valid data is returned", async () => { + const mockResponse = { + dest_assets: { + osmos: { + assets: [ + { + origin_denom: "atom", + denom: "uatom", + trace: "channel-123/abc", + }, + ], + }, + }, + }; + + mockFetchBridgeData.mockResolvedValue(mockResponse); + + const sourceAssetDenom = "atom"; + const sourceAssetChainId = "cosmos"; + const destinationAdssetChainId = "osmos"; + + const result = await bridgeDenomProvider( + sourceAssetDenom, + sourceAssetChainId, + destinationAdssetChainId + ); + + expect(result).toEqual({ + denom: "uatom", + }); + }); + + it("should throw an error when ibcAssetData is not found", async () => { + const mockResponse = { + dest_assets: { + osmos: { + assets: [ + { + origin_denom: "btc", + denom: "ubtc", + trace: "channel-123/abc", + }, + ], + }, + }, + }; + + mockFetchBridgeData.mockResolvedValue(mockResponse); + + const sourceAssetDenom = "atom"; + const sourceAssetChainId = "cosmos"; + const destinationAdssetChainId = "osmos"; + + await expect( + bridgeDenomProvider( + sourceAssetDenom, + sourceAssetChainId, + destinationAdssetChainId + ) + ).rejects.toThrowError(); + }); +}); diff --git a/packages/plugin-cosmos/src/tests/cosmos-ibc-transfer-action-service.test.ts b/packages/plugin-cosmos/src/tests/cosmos-ibc-transfer-action-service.test.ts new file mode 100644 index 00000000000..e178992d43b --- /dev/null +++ b/packages/plugin-cosmos/src/tests/cosmos-ibc-transfer-action-service.test.ts @@ -0,0 +1,178 @@ +import { describe, it, expect, vi, beforeEach } from "vitest"; +import { IBCTransferAction } from "../actions/ibc-transfer/services/ibc-transfer-action-service"; // dostosuj ścieżkę do pliku +import { assets } from "chain-registry"; +import * as CosmosAssetsHelpers from "../shared/helpers/cosmos-assets"; +import { getAssetBySymbol } from "@chain-registry/utils"; +import { getAvailableAssets } from "../shared/helpers/cosmos-assets"; + +vi.mock("@chain-registry/utils", () => ({ + getAssetBySymbol: vi.fn(), + getChainByChainName: vi.fn((_, chainName: string) => { + if (chainName === "test-chain") return { chain_id: "source-chain-id" }; + return { chain_id: "target-chain-id" }; + }), + convertDisplayUnitToBaseUnit: vi.fn(() => "1"), + getChainByChainId: vi.fn(() => ({ chainId: "target-chain-id" })), +})); + +vi.mock("../shared/helpers/cosmos-assets", () => ({ + getAvailableAssets: vi.fn(), +})); + +describe("IBCTransferAction", () => { + const mockWalletChains = { + getWalletAddress: vi.fn(), + getSkipClient: vi.fn(), + }; + + const mockBridgeDenomProvider = vi.fn(); + const mockSkipClient = { + route: vi.fn(), + executeRoute: vi.fn(), + }; + + const params = { + chainName: "test-chain", + targetChainName: "target-chain", + symbol: "ATOM", + amount: "10", + toAddress: "cosmos1receiveraddress", + }; + + const customChainAssets = []; + + beforeEach(() => { + vi.clearAllMocks(); + mockWalletChains.getSkipClient.mockReturnValue(mockSkipClient); + }); + + it("throws an error if sender address is not available", async () => { + mockWalletChains.getWalletAddress.mockResolvedValue(null); + // @ts-expect-error --- ... + const ibcTransferAction = new IBCTransferAction(mockWalletChains); + + await expect( + ibcTransferAction.execute( + params, + mockBridgeDenomProvider, + customChainAssets + ) + ).rejects.toThrow( + `Cannot get wallet address for chain ${params.chainName}` + ); + }); + + it("throws an error if receiver address is missing", async () => { + const invalidParams = { ...params, toAddress: undefined }; + mockWalletChains.getWalletAddress.mockResolvedValue( + "cosmos1senderaddress" + ); + // @ts-expect-error --- ... + const ibcTransferAction = new IBCTransferAction(mockWalletChains); + + await expect( + ibcTransferAction.execute( + invalidParams, + mockBridgeDenomProvider, + customChainAssets + ) + ).rejects.toThrow("No receiver address"); + }); + + it("throws an error if target chain name is missing", async () => { + const invalidParams = { ...params, targetChainName: undefined }; + mockWalletChains.getWalletAddress.mockResolvedValue( + "cosmos1senderaddress" + ); + // @ts-expect-error --- ... + const ibcTransferAction = new IBCTransferAction(mockWalletChains); + + await expect( + ibcTransferAction.execute( + invalidParams, + mockBridgeDenomProvider, + customChainAssets + ) + ).rejects.toThrow("No target chain name"); + }); + + it("throws an error if symbol is missing", async () => { + const invalidParams = { ...params, symbol: undefined }; + mockWalletChains.getWalletAddress.mockResolvedValue( + "cosmos1senderaddress" + ); + // @ts-expect-error --- ... + const ibcTransferAction = new IBCTransferAction(mockWalletChains); + + await expect( + ibcTransferAction.execute( + invalidParams, + mockBridgeDenomProvider, + customChainAssets + ) + ).rejects.toThrow("No symbol"); + }); + + it("throws an error if asset cannot be found", async () => { + mockWalletChains.getWalletAddress.mockResolvedValue( + "cosmos1senderaddress" + ); + + vi.spyOn(CosmosAssetsHelpers, "getAvailableAssets").mockReturnValue([]); + // @ts-expect-error --- ... + getAssetBySymbol.mockReturnValue({ + base: null, + }); + + // @ts-expect-error --- ... + const ibcTransferAction = new IBCTransferAction(mockWalletChains); + + await expect( + ibcTransferAction.execute( + params, + mockBridgeDenomProvider, + customChainAssets + ) + ).rejects.toThrow("Cannot find asset"); + }); + + it("executes the IBC transfer successfully", async () => { + const senderAddress = "cosmos1senderaddress"; + const targetChainId = "target-chain-id"; + const sourceChainId = "source-chain-id"; + const mockTxHash = "mock_tx_hash_123"; + + mockWalletChains.getWalletAddress.mockResolvedValue(senderAddress); + // @ts-expect-error --- ... + getAvailableAssets.mockReturnValue(assets); + + // @ts-expect-error --- ... + getAssetBySymbol.mockReturnValue({ + base: "uatom", + }); + + mockBridgeDenomProvider.mockResolvedValue({ denom: "uatom" }); + mockSkipClient.route.mockResolvedValue({ + requiredChainAddresses: [sourceChainId, targetChainId], + }); + mockSkipClient.executeRoute.mockImplementation(async ({ onTransactionCompleted }) => { + await onTransactionCompleted(null, mockTxHash); + }); + + // @ts-expect-error --- ... + const ibcTransferAction = new IBCTransferAction(mockWalletChains); + + const result = await ibcTransferAction.execute( + params, + mockBridgeDenomProvider, + customChainAssets + ); + + expect(result).toEqual({ + from: senderAddress, + to: params.toAddress, + txHash: mockTxHash, + }); + expect(mockSkipClient.executeRoute).toHaveBeenCalled(); + }); +}); diff --git a/packages/plugin-cosmos/src/tests/cosmos-transaction-fee-estimator.test.ts b/packages/plugin-cosmos/src/tests/cosmos-transaction-fee-estimator.test.ts index 1c9ab9f1711..17c891a1740 100644 --- a/packages/plugin-cosmos/src/tests/cosmos-transaction-fee-estimator.test.ts +++ b/packages/plugin-cosmos/src/tests/cosmos-transaction-fee-estimator.test.ts @@ -8,6 +8,10 @@ vi.mock("@cosmjs/cosmwasm-stargate", () => ({ }, })); +vi.mock("../shared/helpers/cosmos-messages", () => ({ + generateIbcTransferMessage: vi.fn(), +})); + describe("FeeEstimator", () => { let mockSigningCosmWasmClient: SigningCosmWasmClient; diff --git a/packages/plugin-cosmos/src/tests/cosmos-wallet-chains-data.test.ts b/packages/plugin-cosmos/src/tests/cosmos-wallet-chains-data.test.ts index 43951613358..ce9215e6a39 100644 --- a/packages/plugin-cosmos/src/tests/cosmos-wallet-chains-data.test.ts +++ b/packages/plugin-cosmos/src/tests/cosmos-wallet-chains-data.test.ts @@ -17,6 +17,10 @@ vi.mock("@cosmjs/cosmwasm-stargate", () => ({ }, })); +vi.mock("@skip-go/client", () => ({ + SkipClient: vi.fn(() => ({})), +})); + vi.mock("../shared/entities/cosmos-wallet.ts", () => ({ CosmosWallet: { create: vi.fn(), @@ -74,6 +78,7 @@ describe("CosmosWalletChains", () => { chain1: { wallet: mockCosmosWalletCreate, signingCosmWasmClient: {}, + skipClient: {}, }, }, }; diff --git a/packages/plugin-cosmos/src/tests/skip-api-assets-from-source-fetcher.test.ts b/packages/plugin-cosmos/src/tests/skip-api-assets-from-source-fetcher.test.ts new file mode 100644 index 00000000000..fe69a7ad63d --- /dev/null +++ b/packages/plugin-cosmos/src/tests/skip-api-assets-from-source-fetcher.test.ts @@ -0,0 +1,101 @@ +import { describe, it, expect, vi, beforeEach } from "vitest"; +import axios from "axios"; +import { SkipApiAssetsFromSourceFetcher } from "../shared/services/skip-api/assets-from-source-fetcher/skip-api-assets-from-source-fetcher"; + +vi.mock("axios"); + +describe("SkipApiAssetsFromSourceFetcher", () => { + let fetcher: SkipApiAssetsFromSourceFetcher; + + beforeEach(() => { + fetcher = SkipApiAssetsFromSourceFetcher.getInstance(); + vi.clearAllMocks(); + }); + + it("should return the same instance from getInstance", () => { + const fetcher1 = SkipApiAssetsFromSourceFetcher.getInstance(); + const fetcher2 = SkipApiAssetsFromSourceFetcher.getInstance(); + expect(fetcher1).toBe(fetcher2); + }); + + it("should use cache when data is already fetched", async () => { + const mockResponse = { + dest_assets: { + someKey: { + assets: [ + { + denom: "atom", + chain_id: "cosmos", + origin_denom: "atom", + origin_chain_id: "cosmos", + trace: "someTrace", + symbol: "ATOM", + name: "Cosmos Atom", + logo_uri: "http://someurl.com/logo.png", + decimals: 6, + recommended_symbol: "ATOM", + }, + ], + }, + }, + }; + + // @ts-expect-error -- ... + axios.post.mockResolvedValueOnce({ data: mockResponse }); + + const sourceAssetDenom = "atom"; + const sourceAssetChainId = "cosmos"; + + await fetcher.fetch(sourceAssetDenom, sourceAssetChainId); + + expect(axios.post).toHaveBeenCalledTimes(1); + + await fetcher.fetch(sourceAssetDenom, sourceAssetChainId); + expect(axios.post).toHaveBeenCalledTimes(1); + }); + + it("should fetch and cache data correctly", async () => { + const mockResponse = { + dest_assets: { + someKey: { + assets: [ + { + denom: "atom", + chain_id: "cosmos", + origin_denom: "atom", + origin_chain_id: "cosmos", + trace: "someTrace", + symbol: "ATOM", + name: "Cosmos Atom", + logo_uri: "http://someurl.com/logo.png", + decimals: 6, + recommended_symbol: "ATOM", + }, + ], + }, + }, + }; + + // @ts-expect-error -- ... + axios.post.mockResolvedValueOnce({ data: mockResponse }); + + const sourceAssetDenom = "atom"; + const sourceAssetChainId = "cosmos"; + + const result = await fetcher.fetch( + sourceAssetDenom, + sourceAssetChainId + ); + + expect(result).toEqual(mockResponse); + + const cacheKey = `${sourceAssetDenom}_${sourceAssetChainId}`; + expect(fetcher["cache"].has(cacheKey)).toBe(true); + + const cachedResult = await fetcher.fetch( + sourceAssetDenom, + sourceAssetChainId + ); + expect(cachedResult).toEqual(mockResponse); + }); +}); diff --git a/packages/plugin-evm/src/actions/swap.ts b/packages/plugin-evm/src/actions/swap.ts index 339edcb8887..f3b4cd43ed0 100644 --- a/packages/plugin-evm/src/actions/swap.ts +++ b/packages/plugin-evm/src/actions/swap.ts @@ -3,96 +3,345 @@ import { composeContext, generateObjectDeprecated, ModelClass, + elizaLogger, } from "@elizaos/core"; import { createConfig, executeRoute, type ExtendedChain, getRoutes, + Route, } from "@lifi/sdk"; import { initWalletProvider, type WalletProvider } from "../providers/wallet"; import { swapTemplate } from "../templates"; -import type { SwapParams, Transaction } from "../types"; -import { parseEther } from "viem"; +import type { SwapParams, SwapQuote, Transaction } from "../types"; +import { + Address, + ByteArray, + encodeFunctionData, + Hex, + parseAbi, + parseUnits, +} from "viem"; +import { BebopRoute } from "../types/index"; export { swapTemplate }; export class SwapAction { - private config; + private lifiConfig; + private bebopChainsMap; constructor(private walletProvider: WalletProvider) { - this.config = createConfig({ - integrator: "eliza", - chains: Object.values(this.walletProvider.chains).map((config) => ({ - id: config.id, - name: config.name, - key: config.name.toLowerCase(), - chainType: "EVM" as const, - nativeToken: { - ...config.nativeCurrency, - chainId: config.id, - address: "0x0000000000000000000000000000000000000000", - coinKey: config.nativeCurrency.symbol, - priceUSD: "0", - logoURI: "", - symbol: config.nativeCurrency.symbol, - decimals: config.nativeCurrency.decimals, - name: config.nativeCurrency.name, - }, - rpcUrls: { - public: { http: [config.rpcUrls.default.http[0]] }, - }, - blockExplorerUrls: [config.blockExplorers.default.url], - metamask: { - chainId: `0x${config.id.toString(16)}`, - chainName: config.name, - nativeCurrency: config.nativeCurrency, - rpcUrls: [config.rpcUrls.default.http[0]], + this.walletProvider = walletProvider; + const lifiChains: ExtendedChain[] = []; + for (const config of Object.values(this.walletProvider.chains)) { + try { + lifiChains.push({ + id: config.id, + name: config.name, + key: config.name.toLowerCase(), + chainType: "EVM" as const, + nativeToken: { + ...config.nativeCurrency, + chainId: config.id, + address: "0x0000000000000000000000000000000000000000", + coinKey: config.nativeCurrency.symbol, + priceUSD: "0", + logoURI: "", + symbol: config.nativeCurrency.symbol, + decimals: config.nativeCurrency.decimals, + name: config.nativeCurrency.name, + }, + rpcUrls: { + public: { http: [config.rpcUrls.default.http[0]] }, + }, blockExplorerUrls: [config.blockExplorers.default.url], - }, - coin: config.nativeCurrency.symbol, - mainnet: true, - diamondAddress: "0x0000000000000000000000000000000000000000", - })) as ExtendedChain[], + metamask: { + chainId: `0x${config.id.toString(16)}`, + chainName: config.name, + nativeCurrency: config.nativeCurrency, + rpcUrls: [config.rpcUrls.default.http[0]], + blockExplorerUrls: [config.blockExplorers.default.url], + }, + coin: config.nativeCurrency.symbol, + mainnet: true, + diamondAddress: + "0x0000000000000000000000000000000000000000", + } as ExtendedChain); + } catch { + // Skip chains with missing config in viem + } + } + this.lifiConfig = createConfig({ + integrator: "eliza", + chains: lifiChains, }); + this.bebopChainsMap = { + mainnet: "ethereum", + }; } async swap(params: SwapParams): Promise { const walletClient = this.walletProvider.getWalletClient(params.chain); const [fromAddress] = await walletClient.getAddresses(); - const routes = await getRoutes({ - fromChainId: this.walletProvider.getChainConfigs(params.chain).id, - toChainId: this.walletProvider.getChainConfigs(params.chain).id, - fromTokenAddress: params.fromToken, - toTokenAddress: params.toToken, - fromAmount: parseEther(params.amount).toString(), - fromAddress: fromAddress, - options: { - slippage: params.slippage || 0.5, - order: "RECOMMENDED", - }, - }); + // Getting quotes from different aggregators and sorting them by minAmount (amount after slippage) + const sortedQuotes: SwapQuote[] = await this.getSortedQuotes( + fromAddress, + params + ); + + // Trying to execute the best quote by amount, fallback to the next one if it fails + for (const quote of sortedQuotes) { + let res; + switch (quote.aggregator) { + case "lifi": + res = await this.executeLifiQuote(quote); + break; + case "bebop": + res = await this.executeBebopQuote(quote, params); + break; + default: + throw new Error("No aggregator found"); + } + if (res !== undefined) return res; + } + throw new Error("Execution failed"); + } + + private async getSortedQuotes( + fromAddress: Address, + params: SwapParams + ): Promise { + const decimalsAbi = parseAbi([ + "function decimals() view returns (uint8)", + ]); + const decimals = await this.walletProvider + .getPublicClient(params.chain) + .readContract({ + address: params.fromToken, + abi: decimalsAbi, + functionName: "decimals", + }); + const quotes: SwapQuote[] | undefined = await Promise.all([ + this.getLifiQuote(fromAddress, params, decimals), + this.getBebopQuote(fromAddress, params, decimals), + ]); + const sortedQuotes: SwapQuote[] = quotes.filter( + (quote) => quote !== undefined + ) as SwapQuote[]; + sortedQuotes.sort((a, b) => + BigInt(a.minOutputAmount) > BigInt(b.minOutputAmount) ? -1 : 1 + ); + if (sortedQuotes.length === 0) throw new Error("No routes found"); + return sortedQuotes; + } + + private async getLifiQuote( + fromAddress: Address, + params: SwapParams, + fromTokenDecimals: number + ): Promise { + try { + const routes = await getRoutes({ + fromChainId: this.walletProvider.getChainConfigs(params.chain) + .id, + toChainId: this.walletProvider.getChainConfigs(params.chain).id, + fromTokenAddress: params.fromToken, + toTokenAddress: params.toToken, + fromAmount: parseUnits( + params.amount, + fromTokenDecimals + ).toString(), + fromAddress: fromAddress, + options: { + slippage: params.slippage / 100 || 0.005, + order: "RECOMMENDED", + }, + }); + if (!routes.routes.length) throw new Error("No routes found"); + return { + aggregator: "lifi", + minOutputAmount: routes.routes[0].steps[0].estimate.toAmountMin, + swapData: routes.routes[0], + }; + } catch (error) { + elizaLogger.error("Error in getLifiQuote:", error.message); + return undefined; + } + } - if (!routes.routes.length) throw new Error("No routes found"); + private async getBebopQuote( + fromAddress: Address, + params: SwapParams, + fromTokenDecimals: number + ): Promise { + try { + const url = `https://api.bebop.xyz/router/${this.bebopChainsMap[params.chain] ?? params.chain}/v1/quote`; + const reqParams = new URLSearchParams({ + sell_tokens: params.fromToken, + buy_tokens: params.toToken, + sell_amounts: parseUnits( + params.amount, + fromTokenDecimals + ).toString(), + taker_address: fromAddress, + approval_type: "Standard", + skip_validation: "true", + gasless: "false", + source: "eliza", + }); + const response = await fetch(`${url}?${reqParams.toString()}`, { + method: "GET", + headers: { accept: "application/json" }, + }); + if (!response.ok) { + throw Error(response.statusText); + } + const data = await response.json(); + const route: BebopRoute = { + data: data.routes[0].quote.tx.data, + sellAmount: parseUnits( + params.amount, + fromTokenDecimals + ).toString(), + approvalTarget: data.routes[0].quote + .approvalTarget as `0x${string}`, + from: data.routes[0].quote.tx.from as `0x${string}`, + value: data.routes[0].quote.tx.value.toString(), + to: data.routes[0].quote.tx.to as `0x${string}`, + gas: data.routes[0].quote.tx.gas.toString(), + gasPrice: data.routes[0].quote.tx.gasPrice.toString(), + }; + return { + aggregator: "bebop", + minOutputAmount: + data.routes[0].quote.buyTokens[ + params.toToken + ].minimumAmount.toString(), + swapData: route, + }; + } catch (error) { + elizaLogger.error("Error in getBebopQuote:", error.message); + return undefined; + } + } - const execution = await executeRoute(routes.routes[0], this.config); - const process = execution.steps[0]?.execution?.process[0]; + private async executeLifiQuote( + quote: SwapQuote + ): Promise { + try { + const route: Route = quote.swapData as Route; + const execution = await executeRoute( + quote.swapData as Route, + this.lifiConfig + ); + const process = execution.steps[0]?.execution?.process[0]; - if (!process?.status || process.status === "FAILED") { - throw new Error("Transaction failed"); + if (!process?.status || process.status === "FAILED") { + throw new Error("Transaction failed"); + } + return { + hash: process.txHash as `0x${string}`, + from: route.fromAddress! as `0x${string}`, + to: route.steps[0].estimate.approvalAddress as `0x${string}`, + value: 0n, + data: process.data as `0x${string}`, + chainId: route.fromChainId, + }; + } catch (error) { + elizaLogger.error(`Failed to execute lifi quote: ${error}`); + return undefined; } + } - return { - hash: process.txHash as `0x${string}`, - from: fromAddress, - to: routes.routes[0].steps[0].estimate - .approvalAddress as `0x${string}`, - value: 0n, - data: process.data as `0x${string}`, - chainId: this.walletProvider.getChainConfigs(params.chain).id, - }; + private async executeBebopQuote( + quote: SwapQuote, + params: SwapParams + ): Promise { + try { + const bebopRoute: BebopRoute = quote.swapData as BebopRoute; + const allowanceAbi = parseAbi([ + "function allowance(address,address) view returns (uint256)", + ]); + const allowance: bigint = await this.walletProvider + .getPublicClient(params.chain) + .readContract({ + address: params.fromToken, + abi: allowanceAbi, + functionName: "allowance", + args: [bebopRoute.from, bebopRoute.approvalTarget], + }); + if (allowance < BigInt(bebopRoute.sellAmount)) { + const approvalData = encodeFunctionData({ + abi: parseAbi(["function approve(address,uint256)"]), + functionName: "approve", + args: [ + bebopRoute.approvalTarget, + BigInt(bebopRoute.sellAmount), + ], + }); + await this.walletProvider + .getWalletClient(params.chain) + .sendTransaction({ + account: this.walletProvider.getWalletClient( + params.chain + ).account, + to: params.fromToken, + value: 0n, + data: approvalData, + kzg: { + blobToKzgCommitment: function ( + _: ByteArray + ): ByteArray { + throw new Error("Function not implemented."); + }, + computeBlobKzgProof: function ( + _blob: ByteArray, + _commitment: ByteArray + ): ByteArray { + throw new Error("Function not implemented."); + }, + }, + chain: undefined, + }); + } + const hash = await this.walletProvider + .getWalletClient(params.chain) + .sendTransaction({ + account: this.walletProvider.getWalletClient(params.chain) + .account, + to: bebopRoute.to, + value: BigInt(bebopRoute.value), + data: bebopRoute.data as Hex, + kzg: { + blobToKzgCommitment: function ( + _: ByteArray + ): ByteArray { + throw new Error("Function not implemented."); + }, + computeBlobKzgProof: function ( + _blob: ByteArray, + _commitment: ByteArray + ): ByteArray { + throw new Error("Function not implemented."); + }, + }, + chain: undefined, + }); + return { + hash, + from: this.walletProvider.getWalletClient(params.chain).account + .address, + to: bebopRoute.to, + value: BigInt(bebopRoute.value), + data: bebopRoute.data as Hex, + }; + } catch (error) { + elizaLogger.error(`Failed to execute bebop quote: ${error}`); + return undefined; + } } } @@ -106,7 +355,7 @@ export const swapAction = { _options: any, callback?: any ) => { - console.log("Swap action handler called"); + elizaLogger.log("Swap action handler called"); const walletProvider = await initWalletProvider(runtime); const action = new SwapAction(walletProvider); @@ -144,7 +393,7 @@ export const swapAction = { } return true; } catch (error) { - console.error("Error in swap handler:", error.message); + elizaLogger.error("Error in swap handler:", error.message); if (callback) { callback({ text: `Error: ${error.message}` }); } diff --git a/packages/plugin-evm/src/tests/swap.test.ts b/packages/plugin-evm/src/tests/swap.test.ts new file mode 100644 index 00000000000..8abf9f2a3a4 --- /dev/null +++ b/packages/plugin-evm/src/tests/swap.test.ts @@ -0,0 +1,72 @@ +import { describe, it, expect, beforeEach, vi, afterEach } from "vitest"; +import { generatePrivateKey, privateKeyToAccount } from "viem/accounts"; +import { Account, Chain } from "viem"; + +import { WalletProvider } from "../providers/wallet"; +import { SwapAction } from "../actions/swap"; + +// Mock the ICacheManager +const mockCacheManager = { + get: vi.fn().mockResolvedValue(null), + set: vi.fn(), +}; + +describe("Swap Action", () => { + let wp: WalletProvider; + + beforeEach(async () => { + vi.clearAllMocks(); + mockCacheManager.get.mockResolvedValue(null); + + const pk = generatePrivateKey(); + const customChains = prepareChains(); + wp = new WalletProvider(pk, mockCacheManager as any, customChains); + }); + + afterEach(() => { + vi.clearAllTimers(); + }); + + describe("Constructor", () => { + it("should initialize with wallet provider", () => { + const ta = new SwapAction(wp); + + expect(ta).toBeDefined(); + }); + }); + describe("Swap", () => { + // eslint-disable-next-line @typescript-eslint/no-unused-vars + let ta: SwapAction; + // eslint-disable-next-line @typescript-eslint/no-unused-vars + let receiver: Account; + + beforeEach(() => { + ta = new SwapAction(wp); + receiver = privateKeyToAccount(generatePrivateKey()); + }); + + it("swap throws if not enough gas/tokens", async () => { + const ta = new SwapAction(wp); + await expect( + ta.swap({ + chain: "base", + fromToken: "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913", + toToken: "0x4200000000000000000000000000000000000006", + amount: "100", + slippage: 0.5, + }) + ).rejects.toThrow("Execution failed"); + }); + }); +}); + +const prepareChains = () => { + const customChains: Record = {}; + const chainNames = ["base"]; + chainNames.forEach( + (chain) => + (customChains[chain] = WalletProvider.genChainFromName(chain)) + ); + + return customChains; +}; diff --git a/packages/plugin-evm/src/types/index.ts b/packages/plugin-evm/src/types/index.ts index 7f6ae2de012..21cc2893d13 100644 --- a/packages/plugin-evm/src/types/index.ts +++ b/packages/plugin-evm/src/types/index.ts @@ -1,4 +1,4 @@ -import type { Token } from "@lifi/types"; +import type { Route, Token } from "@lifi/types"; import type { Account, Address, @@ -77,6 +77,23 @@ export interface SwapParams { slippage?: number; } +export interface BebopRoute { + data: string; + approvalTarget: Address; + sellAmount: string; + from: Address; + to: Address; + value: string; + gas: string; + gasPrice: string; +} + +export interface SwapQuote { + aggregator: "lifi" | "bebop"; + minOutputAmount: string; + swapData: Route | BebopRoute; +} + export interface BridgeParams { fromChain: SupportedChain; toChain: SupportedChain; diff --git a/packages/plugin-genlayer/package.json b/packages/plugin-genlayer/package.json index edbb993fc85..b0986e9cdec 100644 --- a/packages/plugin-genlayer/package.json +++ b/packages/plugin-genlayer/package.json @@ -7,7 +7,6 @@ "scripts": { "build": "tsup --format esm --dts", "dev": "tsup --format esm --dts --watch", - "lint": "eslint . --fix", "test": "vitest run" }, "dependencies": { diff --git a/packages/plugin-injective/injective-sdk-client-ts/package.json b/packages/plugin-injective/injective-sdk-client-ts/package.json index 88cc4794864..d915237b9a0 100644 --- a/packages/plugin-injective/injective-sdk-client-ts/package.json +++ b/packages/plugin-injective/injective-sdk-client-ts/package.json @@ -7,9 +7,6 @@ "scripts": { "build": "tsc", "test": "jest", - "lint": "eslint . ", - "lint:fix": "eslint . --fix", - "format": "prettier --write \"src/**/*.ts\"", "test:integration": "vitest integration --reporter verbose", "dev": "tsc --watch", "type-check": "tsc --noEmit" diff --git a/packages/plugin-iq6900/src/functions/bringIQData.ts b/packages/plugin-iq6900/src/functions/bringIQData.ts index 5208b0f7b12..eb9def83c23 100644 --- a/packages/plugin-iq6900/src/functions/bringIQData.ts +++ b/packages/plugin-iq6900/src/functions/bringIQData.ts @@ -1,143 +1,165 @@ import { elizaLogger } from "@elizaos/core"; - import { Connection, PublicKey } from "@solana/web3.js"; -const network = process.env.IQSOlRPC || "https://api.mainnet-beta.solana.com"; -const stringAddress = process.env.IQ_WALLET_ADDRESS; -const connection = new Connection(network, "confirmed"); +// Types +interface TransactionInfo { + argData?: { + type_field?: string; + offset?: string; + tail_tx?: string; + }; +} -const iqHost = "https://solanacontractapi.uc.r.appspot.com"; +interface TransactionData { + method: string; + code: string; + decode_break: number; + before_tx: string; +} -async function fetchDBPDA(): Promise { +interface CodeResult { + json_data: string; + commit_message: string; +} + +// Constants +const NETWORK = process.env.IQSOlRPC || "https://api.mainnet-beta.solana.com"; +const WALLET_ADDRESS = process.env.IQ_WALLET_ADDRESS; +const IQ_HOST = "https://solanacontractapi.uc.r.appspot.com"; +const GENESIS_TX = "Genesis"; +const ERROR_RESULT: CodeResult = { + json_data: "false", + commit_message: "false", +}; + +// Initialize connection +const connection = new Connection(NETWORK, "confirmed"); + +async function convertTextToEmoji(text: string): Promise { + return text.replace(/\/u([0-9A-Fa-f]{4,6})/g, (_, code) => + String.fromCodePoint(parseInt(code, 16)) + ); +} + +async function fetchTransactionInfo( + txId: string +): Promise { try { - if (stringAddress) { - elizaLogger.info("Connecting to Solana...(IQ6900)"); - elizaLogger.info("Your Address:" + stringAddress); - const response = await fetch(`${iqHost}/getDBPDA/${stringAddress}`); - const data = await response.json(); - if (response.ok) { - return data.DBPDA as string; - } + const response = await fetch(`${IQ_HOST}/get_transaction_info/${txId}`); + if (!response.ok) { + throw new Error(`HTTP error! status: ${response.status}`); } + + const data = await response.json(); + return data.argData || null; } catch (error) { - console.error("Error fetching PDA:", error); - return "null"; + elizaLogger.error("Error fetching transaction info:", error); + return null; } } -async function convertTextToEmoji(text: string) { - return text.replace(/\/u([0-9A-Fa-f]{4,6})/g, (match, code) => { - return String.fromCodePoint(Number.parseInt(code, 16)); - }); -} +async function fetchDBPDA(): Promise { + if (!WALLET_ADDRESS) { + elizaLogger.error("Wallet address not provided"); + return null; + } -async function fetchTransactionInfo(txId: string) { try { - const response = await fetch(`${iqHost}/get_transaction_info/${txId}`); - if (response.ok) { - const data = await response.json(); - return data.argData; + elizaLogger.info("Connecting to Solana...(IQ6900)"); + elizaLogger.info(`Your Address: ${WALLET_ADDRESS}`); + + const response = await fetch(`${IQ_HOST}/getDBPDA/${WALLET_ADDRESS}`); + if (!response.ok) { + throw new Error(`HTTP error! status: ${response.status}`); } + + const data = await response.json(); + return data.DBPDA || null; } catch (error) { - elizaLogger.error("Error fetching transaction info:", error); + elizaLogger.error("Error fetching PDA:", error); + return null; } - return null; } -async function getTransactionData(transactionData: { - method: string; - code: string; - decode_break: number; +async function getTransactionData(transactionData: TransactionData): Promise<{ + data: any; before_tx: string; -}): Promise<{ data: any; before_tx: string }> { - if ("code" in transactionData) { - return { - data: { - code: transactionData.code, - method: transactionData.method, - decode_break: transactionData.decode_break, - }, - before_tx: transactionData.before_tx, - }; - } else { +}> { + if (!transactionData || !("code" in transactionData)) { return { data: "fail", before_tx: "fail", }; } + + return { + data: { + code: transactionData.code, + method: transactionData.method, + decode_break: transactionData.decode_break, + }, + before_tx: transactionData.before_tx, + }; } -async function extractCommitMessage(dataTxid: string): Promise { +async function extractCommitMessage(dataTxid: string): Promise { const txInfo = await fetchTransactionInfo(dataTxid); - if (!txInfo) return "null"; - - const type_field = txInfo.type_field || "null"; + if (!txInfo) return null; - if (type_field === "json") { - const offset = txInfo.offset; - return offset.split("commit: ")[1]; - } else { - return "null"; + const type_field = txInfo.type_field || null; + if (type_field === "json" && txInfo.offset) { + const [, commitMessage] = txInfo.offset.split("commit: "); + return commitMessage || null; } + + return null; } -async function bringCode(dataTxid: string) { +async function bringCode(dataTxid: string): Promise { const txInfo = await fetchTransactionInfo(dataTxid); - if (!txInfo) - return { - json_data: "false", - commit_message: "false", - }; + if (!txInfo || !txInfo.tail_tx) return ERROR_RESULT; - const tail_tx = txInfo.tail_tx || "null"; - const offset = txInfo.offset || "null"; - const chunks = []; - let before_tx = tail_tx; - if (before_tx == "null") - return { - json_data: "false", - commit_message: "false", - }; + const chunks: string[] = []; + let before_tx = txInfo.tail_tx; + + if (before_tx === null) return ERROR_RESULT; - while (before_tx !== "Genesis") { - if (before_tx) { - elizaLogger.info("Chunks: " + before_tx); + try { + while (before_tx !== GENESIS_TX) { + if (!before_tx) { + elizaLogger.error("Before transaction undefined"); + return ERROR_RESULT; + } + + elizaLogger.info(`Chunks: ${before_tx}`); const chunk = await fetchTransactionInfo(before_tx); + if (!chunk) { - elizaLogger.error("No chunk found."); - return { - json_data: "false", - commit_message: "false", - }; + elizaLogger.error("No chunk found"); + return ERROR_RESULT; } - const chunkData = await getTransactionData(chunk); - if (chunkData.data == "null") { - console.error("chunk data undefined"); - return { - json_data: "false", - commit_message: "false", - }; - } else { - chunks.push(chunkData.data.code); - before_tx = chunkData.before_tx; + const chunkData = await getTransactionData( + chunk as TransactionData + ); + if (!chunkData.data || chunkData.data === null) { + elizaLogger.error("Chunk data undefined"); + return ERROR_RESULT; } - } else { - console.error("before data undefined"); - return { - json_data: "false", - commit_message: "false", - }; - } - } - const textList = chunks.reverse(); - const textData = textList.join(""); + chunks.push(chunkData.data.code); + before_tx = chunkData.before_tx; + } - return { - json_data: await convertTextToEmoji(textData), - commit_message: offset, - }; + const textData = chunks.reverse().join(""); + return { + json_data: await convertTextToEmoji(textData), + commit_message: txInfo.offset || "false", + }; + } catch (error) { + elizaLogger.error("Error in bringCode:", error); + return ERROR_RESULT; + } } async function fetchSignaturesForAddress( @@ -150,32 +172,41 @@ async function fetchSignaturesForAddress( }); return signatures.map((sig) => sig.signature); } catch (error) { - console.error("Error fetching signatures:", error); + elizaLogger.error("Error fetching signatures:", error); return []; } } -async function findRecentJsonSignature(): Promise { +async function findRecentJsonSignature(): Promise { const dbAddress = await fetchDBPDA(); - if (!dbAddress) return; + if (!dbAddress) { + elizaLogger.error("Failed to fetch DBPDA"); + return null; + } + const signatures = await fetchSignaturesForAddress( new PublicKey(dbAddress) ); + if (signatures.length === 0) { + elizaLogger.error("No signatures found"); + return null; + } for (const signature of signatures) { const commit = await extractCommitMessage(signature); - if (commit !== "null") return signature; + if (commit) return signature; } - return; + + return null; } -export async function bringAgentWithWalletAddress() { +export async function bringAgentWithWalletAddress(): Promise { const recent = await findRecentJsonSignature(); if (!recent) { elizaLogger.error("Cannot found onchain data in this wallet."); - return; + return null; } + const result = await bringCode(recent); - const json_string = result.json_data; - return await json_string; + return result.json_data === "false" ? null : result.json_data; } diff --git a/packages/plugin-massa/package.json b/packages/plugin-massa/package.json index 1bd9fd07234..21282512152 100644 --- a/packages/plugin-massa/package.json +++ b/packages/plugin-massa/package.json @@ -10,8 +10,7 @@ "tsup": "8.3.5" }, "scripts": { - "build": "tsup --format esm --dts", - "lint": "eslint . --fix" + "build": "tsup --format esm --dts" }, "peerDependencies": { "whatwg-url": "7.1.0" diff --git a/packages/plugin-movement/package.json b/packages/plugin-movement/package.json index 7416e674492..5df34b18e74 100644 --- a/packages/plugin-movement/package.json +++ b/packages/plugin-movement/package.json @@ -20,7 +20,6 @@ "scripts": { "build": "tsup", "dev": "tsup --watch", - "lint": "eslint --fix --cache .", "test": "vitest run" }, "peerDependencies": { diff --git a/packages/plugin-multiversx/package.json b/packages/plugin-multiversx/package.json index 3a4d002e629..a2abd1aed53 100644 --- a/packages/plugin-multiversx/package.json +++ b/packages/plugin-multiversx/package.json @@ -31,8 +31,7 @@ "scripts": { "build": "tsup --format esm --dts", "test": "vitest run", - "test:watch": "vitest", - "lint": "eslint . --fix" + "test:watch": "vitest" }, "peerDependencies": { "whatwg-url": "7.1.0" diff --git a/packages/plugin-near/package.json b/packages/plugin-near/package.json index 43f5dea9766..a12cdb8ff09 100644 --- a/packages/plugin-near/package.json +++ b/packages/plugin-near/package.json @@ -29,8 +29,7 @@ "scripts": { "build": "tsup --format esm,cjs --dts", "test": "vitest run", - "test:watch": "vitest", - "lint": "eslint . --fix" + "test:watch": "vitest" }, "peerDependencies": { "whatwg-url": "7.1.0", diff --git a/packages/plugin-nft-collections/package.json b/packages/plugin-nft-collections/package.json index a547228bd27..6445c584bcc 100644 --- a/packages/plugin-nft-collections/package.json +++ b/packages/plugin-nft-collections/package.json @@ -9,7 +9,6 @@ "build": "tsup src/index.ts --format esm --dts", "test": "vitest run", "test:watch": "vitest", - "lint": "eslint --fix --cache .", "format": "prettier --write src/**/*.ts" }, "dependencies": { diff --git a/packages/plugin-nft-generation/package.json b/packages/plugin-nft-generation/package.json index 293e128ff13..bcf2e75a993 100644 --- a/packages/plugin-nft-generation/package.json +++ b/packages/plugin-nft-generation/package.json @@ -39,8 +39,7 @@ }, "scripts": { "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch", - "lint": "eslint . --fix" + "dev": "tsup --format esm --dts --watch" }, "peerDependencies": { "whatwg-url": "7.1.0" diff --git a/packages/plugin-node/package.json b/packages/plugin-node/package.json index 757c5989be8..d59962ef006 100644 --- a/packages/plugin-node/package.json +++ b/packages/plugin-node/package.json @@ -23,13 +23,13 @@ "tsup.config.ts" ], "dependencies": { - "@elizaos/core": "workspace:*", "@aws-sdk/client-s3": "^3.705.0", "@aws-sdk/s3-request-presigner": "^3.705.0", "@cliqz/adblocker-playwright": "1.34.0", "@echogarden/espeak-ng-emscripten": "0.3.3", "@echogarden/kissfft-wasm": "0.2.0", "@echogarden/speex-resampler-wasm": "0.2.1", + "@elizaos/core": "workspace:*", "@huggingface/transformers": "3.0.2", "@opendocsg/pdf2md": "0.1.32", "@types/uuid": "10.0.0", @@ -46,7 +46,6 @@ "formdata-node": "6.0.3", "fs-extra": "11.2.0", "gaxios": "6.7.1", - "gif-frames": "0.4.1", "glob": "11.0.0", "graceful-fs": "4.2.11", "html-escaper": "3.0.3", diff --git a/packages/plugin-node/src/actions/describe-image.ts b/packages/plugin-node/src/actions/describe-image.ts index 74dbf26fd60..b38c9346408 100644 --- a/packages/plugin-node/src/actions/describe-image.ts +++ b/packages/plugin-node/src/actions/describe-image.ts @@ -43,12 +43,18 @@ export const describeImage: Action = { stop: ["\n"], }); - if (!isFileLocationResult(fileLocationResultObject?.object)) { + if ( + !isFileLocationResult( + fileLocationResultObject?.object ?? fileLocationResultObject + ) + ) { elizaLogger.error("Failed to generate file location"); return false; } - const { fileLocation } = fileLocationResultObject.object; + let fileLocation = (fileLocationResultObject?.object as any) + ?.fileLocation; + fileLocation ??= fileLocationResultObject; const { description } = await runtime .getService(ServiceType.IMAGE_DESCRIPTION) diff --git a/packages/plugin-node/src/services/image.ts b/packages/plugin-node/src/services/image.ts index 4d9ba53c2e6..cc18af6a0d7 100644 --- a/packages/plugin-node/src/services/image.ts +++ b/packages/plugin-node/src/services/image.ts @@ -19,8 +19,8 @@ import { RawImage, type Tensor, } from "@huggingface/transformers"; +import sharp, { AvailableFormatInfo, FormatEnum } from "sharp"; import fs from "fs"; -import gifFrames from "gif-frames"; import os from "os"; import path from "path"; @@ -111,15 +111,14 @@ class LocalImageProvider implements ImageProvider { } async describeImage( - imageData: Buffer + imageData: Buffer, + mimeType: string ): Promise<{ title: string; description: string }> { if (!this.model || !this.processor || !this.tokenizer) { throw new Error("Model components not initialized"); } - - const base64Data = imageData.toString("base64"); - const dataUrl = `data:image/jpeg;base64,${base64Data}`; - const image = await RawImage.fromURL(dataUrl); + const blob = new Blob([imageData], { type: mimeType }); + const image = await RawImage.fromBlob(blob); const visionInputs = await this.processor(image); const prompts = this.processor.construct_prompts(""); const textInputs = this.tokenizer(prompts); @@ -314,10 +313,12 @@ export class ImageDescriptionService if (this.runtime.imageVisionModelProvider) { if ( this.runtime.imageVisionModelProvider === - ModelProviderName.LLAMALOCAL + ModelProviderName.LLAMALOCAL || + this.runtime.imageVisionModelProvider === + ModelProviderName.OLLAMA ) { this.provider = new LocalImageProvider(); - elizaLogger.debug("Using llama local for vision model"); + elizaLogger.debug("Using local provider for vision model"); } else if ( this.runtime.imageVisionModelProvider === ModelProviderName.GOOGLE @@ -343,9 +344,12 @@ export class ImageDescriptionService ); return false; } - } else if (model === models[ModelProviderName.LLAMALOCAL]) { + } else if ( + model === models[ModelProviderName.LLAMALOCAL] || + model === models[ModelProviderName.OLLAMA] + ) { this.provider = new LocalImageProvider(); - elizaLogger.debug("Using llama local for vision model"); + elizaLogger.debug("Using local provider for vision model"); } else if (model === models[ModelProviderName.GOOGLE]) { this.provider = new GoogleImageProvider(this.runtime); elizaLogger.debug("Using google for vision model"); @@ -359,7 +363,7 @@ export class ImageDescriptionService try { await this.provider.initialize(); - } catch (error) { + } catch { elizaLogger.error( `Failed to initialize the image vision model provider: ${this.runtime.imageVisionModelProvider}` ); @@ -369,65 +373,76 @@ export class ImageDescriptionService } private async loadImageData( - imageUrl: string + imageUrlOrPath: string ): Promise<{ data: Buffer; mimeType: string }> { - const isGif = imageUrl.toLowerCase().endsWith(".gif"); - let imageData: Buffer; - let mimeType: string; - - if (isGif) { - const { filePath } = await this.extractFirstFrameFromGif(imageUrl); - imageData = fs.readFileSync(filePath); - mimeType = "image/png"; - fs.unlinkSync(filePath); // Clean up temp file + let loadedImageData: Buffer; + let loadedMimeType: string; + const { imageData, mimeType } = await this.fetchImage(imageUrlOrPath); + const skipConversion = + mimeType === "image/jpeg" || + mimeType === "image/jpg" || + mimeType === "image/png"; + if (skipConversion) { + loadedImageData = imageData; + loadedMimeType = mimeType; } else { - if (fs.existsSync(imageUrl)) { - imageData = fs.readFileSync(imageUrl); - const ext = path.extname(imageUrl).slice(1); - mimeType = ext ? `image/${ext}` : "image/jpeg"; - } else { - const response = await fetch(imageUrl); - if (!response.ok) { - throw new Error( - `Failed to fetch image: ${response.statusText}` - ); - } - imageData = Buffer.from(await response.arrayBuffer()); - mimeType = response.headers.get("content-type") || "image/jpeg"; - } + const converted = await this.convertImageDataToFormat( + imageData, + "png" + ); + loadedImageData = converted.imageData; + loadedMimeType = converted.mimeType; } - - if (!imageData || imageData.length === 0) { + if (!loadedImageData || loadedImageData.length === 0) { throw new Error("Failed to fetch image data"); } - - return { data: imageData, mimeType }; + return { data: loadedImageData, mimeType: loadedMimeType }; } - private async extractFirstFrameFromGif( - gifUrl: string - ): Promise<{ filePath: string }> { - const frameData = await gifFrames({ - url: gifUrl, - frames: 1, - outputType: "png", - }); - + private async convertImageDataToFormat( + data: Buffer, + format: keyof FormatEnum | AvailableFormatInfo = "png" + ): Promise<{ imageData: Buffer; mimeType: string }> { const tempFilePath = path.join( os.tmpdir(), - `gif_frame_${Date.now()}.png` + `tmp_img_${Date.now()}.${format}` ); + try { + await sharp(data).toFormat(format).toFile(tempFilePath); + const { imageData, mimeType } = await this.fetchImage(tempFilePath); + return { + imageData, + mimeType, + }; + } finally { + fs.unlinkSync(tempFilePath); // Clean up temp file + } + } - return new Promise((resolve, reject) => { - const writeStream = fs.createWriteStream(tempFilePath); - frameData[0].getImage().pipe(writeStream); - writeStream.on("finish", () => resolve({ filePath: tempFilePath })); - writeStream.on("error", reject); - }); + private async fetchImage( + imageUrlOrPath: string + ): Promise<{ imageData: Buffer; mimeType: string }> { + let imageData: Buffer; + let mimeType: string; + if (fs.existsSync(imageUrlOrPath)) { + imageData = fs.readFileSync(imageUrlOrPath); + const ext = path.extname(imageUrlOrPath).slice(1).toLowerCase(); + mimeType = ext ? `image/${ext}` : "image/jpeg"; + } else { + const response = await fetch(imageUrlOrPath); + if (!response.ok) { + throw new Error( + `Failed to fetch image: ${response.statusText}` + ); + } + imageData = Buffer.from(await response.arrayBuffer()); + mimeType = response.headers.get("content-type") || "image/jpeg"; + } + return { imageData, mimeType }; } async describeImage( - imageUrl: string + imageUrlOrPath: string ): Promise<{ title: string; description: string }> { if (!this.initialized) { this.initialized = await this.initializeProvider(); @@ -435,8 +450,9 @@ export class ImageDescriptionService if (this.initialized) { try { - const { data, mimeType } = await this.loadImageData(imageUrl); - return await this.provider!.describeImage(data, mimeType); + const { data, mimeType } = + await this.loadImageData(imageUrlOrPath); + return await this.provider.describeImage(data, mimeType); } catch (error) { elizaLogger.error("Error in describeImage:", error); throw error; diff --git a/packages/plugin-obsidian/package.json b/packages/plugin-obsidian/package.json index fd9d39ba500..8a12cefef47 100644 --- a/packages/plugin-obsidian/package.json +++ b/packages/plugin-obsidian/package.json @@ -14,8 +14,7 @@ "build": "tsup --format esm --dts", "dev": "tsup --format esm --dts --watch", "test": "vitest run", - "test:watch": "vitest", - "lint": "eslint --fix --cache ." + "test:watch": "vitest" }, "peerDependencies": { "whatwg-url": "7.1.0" diff --git a/packages/plugin-obsidian/src/actions/search.ts b/packages/plugin-obsidian/src/actions/search.ts index 02ca6e7877a..ea161508d14 100644 --- a/packages/plugin-obsidian/src/actions/search.ts +++ b/packages/plugin-obsidian/src/actions/search.ts @@ -26,7 +26,7 @@ export const searchAction: Action = { "FULL_SEARCH_VAULT", "FULL_SEARCH_NOTES", "FULL_SEARCH_FILES", - "SERCH_ALL", + "SEARCH_ALL", "SEARCH_ALL_NOTES", "SEARCH_ALL_FILES", "SEARCH_VAULT", diff --git a/packages/plugin-opacity/package.json b/packages/plugin-opacity/package.json index ba51125bbde..60866df5141 100644 --- a/packages/plugin-opacity/package.json +++ b/packages/plugin-opacity/package.json @@ -7,7 +7,6 @@ "types": "dist/index.d.ts", "scripts": { "build": "tsup src/index.ts --format esm --dts", - "lint": "eslint --fix --cache .", "watch": "tsc --watch", "dev": "tsup src/index.ts --format esm --dts --watch" }, diff --git a/packages/plugin-pyth-data/package.json b/packages/plugin-pyth-data/package.json index a4d3f670597..d1f436f6d7d 100644 --- a/packages/plugin-pyth-data/package.json +++ b/packages/plugin-pyth-data/package.json @@ -8,7 +8,6 @@ "scripts": { "build": "tsup --format esm --dts", "test": "vitest", - "lint": "eslint src --ext .ts", "clean": "rimraf dist", "build:schemas": "openapi-zod-client ./schema.json --output src/types/zodSchemas.ts", "pull:schema": "curl -o schema.json -z schema.json https://hermes.pyth.network/docs/openapi.json", diff --git a/packages/plugin-solana-agentkit/.npmignore b/packages/plugin-solana-agent-kit/.npmignore similarity index 100% rename from packages/plugin-solana-agentkit/.npmignore rename to packages/plugin-solana-agent-kit/.npmignore diff --git a/packages/plugin-solana-agent-kit/eslint.config.mjs b/packages/plugin-solana-agent-kit/eslint.config.mjs new file mode 100644 index 00000000000..92fe5bbebef --- /dev/null +++ b/packages/plugin-solana-agent-kit/eslint.config.mjs @@ -0,0 +1,3 @@ +import eslintGlobalConfig from "../../eslint.config.mjs"; + +export default [...eslintGlobalConfig]; diff --git a/packages/plugin-solana-agentkit/package.json b/packages/plugin-solana-agent-kit/package.json similarity index 95% rename from packages/plugin-solana-agentkit/package.json rename to packages/plugin-solana-agent-kit/package.json index b55af623e67..0d485e2c071 100644 --- a/packages/plugin-solana-agentkit/package.json +++ b/packages/plugin-solana-agent-kit/package.json @@ -1,5 +1,5 @@ { - "name": "@elizaos/plugin-solana-agentkit", + "name": "@elizaos/plugin-solana-agent-kit", "version": "0.1.9-alpha.1", "main": "dist/index.js", "type": "module", diff --git a/packages/plugin-solana-agentkit/src/actions/createToken.ts b/packages/plugin-solana-agent-kit/src/actions/createToken.ts similarity index 92% rename from packages/plugin-solana-agentkit/src/actions/createToken.ts rename to packages/plugin-solana-agent-kit/src/actions/createToken.ts index 5743651e425..f61551775fb 100644 --- a/packages/plugin-solana-agentkit/src/actions/createToken.ts +++ b/packages/plugin-solana-agent-kit/src/actions/createToken.ts @@ -11,9 +11,7 @@ import { type State, type Action, } from "@elizaos/core"; - -import { SolanaAgentKit } from "solana-agent-kit"; - +import { getSAK } from "../client"; export interface CreateTokenContent extends Content { name: string; uri: string; @@ -103,14 +101,7 @@ export default { } elizaLogger.log("Init solana agent kit..."); - const solanaPrivatekey = runtime.getSetting("SOLANA_PRIVATE_KEY"); - const rpc = runtime.getSetting("SOLANA_RPC_URL"); - const openAIKey = runtime.getSetting("OPENAI_API_KEY"); - const solanaAgentKit = new SolanaAgentKit( - solanaPrivatekey, - rpc, - openAIKey - ); + const solanaAgentKit = await getSAK(runtime); try { const deployedAddress = await solanaAgentKit.deployToken( content.name, diff --git a/packages/plugin-solana-agent-kit/src/actions/getTokenInfo.ts b/packages/plugin-solana-agent-kit/src/actions/getTokenInfo.ts new file mode 100644 index 00000000000..3b78538c610 --- /dev/null +++ b/packages/plugin-solana-agent-kit/src/actions/getTokenInfo.ts @@ -0,0 +1,153 @@ + +import { elizaLogger, } from "@elizaos/core"; +import { + ActionExample, + Content, + HandlerCallback, + IAgentRuntime, + Memory, + ModelClass, + State, + type Action, +} from "@elizaos/core"; +import { composeContext } from "@elizaos/core"; +import { generateObjectDeprecated } from "@elizaos/core"; +import { ACTIONS } from "solana-agent-kit"; +import { getSAK } from "../client"; + +const GET_TOKEN_INFO_ACTION = ACTIONS.GET_TOKEN_DATA_ACTION; + +export interface GetTokenInfoContent extends Content { + tokenAddress: string; +} + +function isGetTokenInfoContent( + runtime: IAgentRuntime, + content: any +): content is GetTokenInfoContent { + elizaLogger.log("Content for transfer", content); + return ( + typeof content.tokenAddress === "string" + ); +} + +const getTokenInfoTemplate = `Respond with a JSON markdown block containing only the extracted values. Use null for any values that cannot be determined. + +Example response: +\`\`\`json +{ + "tokenAddress": "SENDdRQtYMWaQrBroBrJ2Q53fgVuq95CV9UPGEvpCxa", +} +\`\`\` + +{{recentMessages}} + +Given the recent messages, extract the following information about the requested token: +- Token contract address + +Respond with a JSON markdown block containing only the extracted values.`; + +export default { + name: GET_TOKEN_INFO_ACTION.name, + similes: GET_TOKEN_INFO_ACTION.similes, + validate: async (runtime: IAgentRuntime, message: Memory) => { + elizaLogger.log("Validating get token info from user:", message.userId); + + return false; + }, + description: GET_TOKEN_INFO_ACTION.description, + handler: async ( + runtime: IAgentRuntime, + message: Memory, + state: State, + _options: { [key: string]: unknown }, + callback?: HandlerCallback + ): Promise => { + elizaLogger.log("Starting GET_TOKEN_INFO handler..."); + const sak = await getSAK(runtime); + + // Initialize or update state + if (!state) { + state = (await runtime.composeState(message)) as State; + } else { + state = await runtime.updateRecentMessageState(state); + } + + // Compose get token info context + const getTokenInfoContext = composeContext({ + state, + template: getTokenInfoTemplate, + }); + + // Generate get token info content + const content = await generateObjectDeprecated({ + runtime, + context: getTokenInfoContext, + modelClass: ModelClass.LARGE, + }); + + // Validate get token info content + if (!isGetTokenInfoContent(runtime, content)) { + elizaLogger.error("Invalid content for GET_TOKEN_INFO action."); + if (callback) { + callback({ + text: "Unable to process get token info request. Invalid content provided.", + content: { error: "Invalid get token info content" }, + }); + } + return false; + } + + try { + + const tokenData = await sak.getTokenDataByAddress(content.tokenAddress) + + console.log("Token data:", tokenData); + + if (callback) { + callback({ + text: `Successfully retrieved token data for ${content.tokenAddress}`, + content: { + success: true, + tokenData: tokenData, + }, + }); + } + + return true; + } catch (error) { + elizaLogger.error("Error during get token info:", error); + if (callback) { + callback({ + text: `Error getting token info: ${error.message}`, + content: { error: error.message }, + }); + } + return false; + } + }, + + examples: [ + [ + { + user: "{{user1}}", + content: { + text: "Get token info for SENDdRQtYMWaQrBroBrJ2Q53fgVuq95CV9UPGEvpCxa", + }, + }, + { + user: "{{user2}}", + content: { + text: "Get token info for SENDdRQtYMWaQrBroBrJ2Q53fgVuq95CV9UPGEvpCxa", + action: "GET_TOKEN_INFO", + }, + }, + { + user: "{{user2}}", + content: { + text: "Successfully retrieved token info for SENDdRQtYMWaQrBroBrJ2Q53fgVuq95CV9UPGEvpCxa", + }, + }, + ], + ] as ActionExample[][], +} as Action; diff --git a/packages/plugin-solana-agent-kit/src/actions/gibwork.ts b/packages/plugin-solana-agent-kit/src/actions/gibwork.ts new file mode 100644 index 00000000000..685419d914f --- /dev/null +++ b/packages/plugin-solana-agent-kit/src/actions/gibwork.ts @@ -0,0 +1,177 @@ +import { elizaLogger } from "@elizaos/core"; +import { + ActionExample, + Content, + HandlerCallback, + IAgentRuntime, + Memory, + ModelClass, + State, + type Action, +} from "@elizaos/core"; +import { composeContext } from "@elizaos/core"; +import { generateObjectDeprecated } from "@elizaos/core"; +import { ACTIONS } from "solana-agent-kit"; +import { getSAK } from "../client"; + +const GIBWORK_ACTION = ACTIONS.CREATE_GIBWORK_TASK_ACTION; + +export interface GibWorkContent extends Content { + title: string; + content: string; + requirements: string; + tags: string[]; + tokenMintAddress: string; + tokenAmount: number; +} + +function isGibWorkContent( + runtime: IAgentRuntime, + content: any +): content is GibWorkContent { + elizaLogger.log("Content for gibwork", content); + return ( + typeof content.title === "string" && + typeof content.content === "string" && + typeof content.requirements === "string" && + Array.isArray(content.tags) && + typeof content.tokenMintAddress === "string" && + typeof content.tokenAmount === "number" + ); +} + +const gibworkTemplate = `Respond with a JSON markdown block containing only the extracted values. Use null for any values that cannot be determined. + +Example response: +\`\`\`json +{ + "title": "Build a Solana dApp", + "content": "Create a simple Solana dApp with React frontend", + "requirements": "Experience with Rust and React", + "tags": ["solana", "rust", "react"], + "tokenMintAddress": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v", + "tokenAmount": 100 +} +\`\`\` + +{{recentMessages}} + +Given the recent messages, extract the following information about the GibWork task: +- Title of the task +- Content/description of the task +- Requirements for the task +- Tags related to the task +- Token mint address for payment +- Token amount for payment + +Respond with a JSON markdown block containing only the extracted values.`; + +export default { + name: GIBWORK_ACTION.name, + similes: GIBWORK_ACTION.similes, + validate: async (runtime: IAgentRuntime, message: Memory) => { + elizaLogger.log("Validating gibwork task from user:", message.userId); + return false; + }, + description: GIBWORK_ACTION.description, + handler: async ( + runtime: IAgentRuntime, + message: Memory, + state: State, + _options: { [key: string]: unknown }, + callback?: HandlerCallback + ): Promise => { + elizaLogger.log("Starting CREATE_GIBWORK_TASK handler..."); + const sak = await getSAK(runtime); + + // Initialize or update state + if (!state) { + state = (await runtime.composeState(message)) as State; + } else { + state = await runtime.updateRecentMessageState(state); + } + + // Compose gibwork context + const gibworkContext = composeContext({ + state, + template: gibworkTemplate, + }); + + // Generate gibwork content + const content = await generateObjectDeprecated({ + runtime, + context: gibworkContext, + modelClass: ModelClass.LARGE, + }); + + // Validate gibwork content + if (!isGibWorkContent(runtime, content)) { + elizaLogger.error("Invalid content for CREATE_GIBWORK_TASK action."); + if (callback) { + callback({ + text: "Unable to process GibWork task creation. Invalid content provided.", + content: { error: "Invalid gibwork content" }, + }); + } + return false; + } + + try { + const gibworkResult = await sak.createGibworkTask( + content.title, + content.content, + content.requirements, + content.tags, + content.tokenMintAddress, + content.tokenAmount + ); + + console.log("GibWork task creation result:", gibworkResult); + + if (callback) { + callback({ + text: `Successfully created GibWork task: ${content.title}`, + content: { + success: true, + gibworkResult: gibworkResult, + }, + }); + } + + return true; + } catch (error) { + elizaLogger.error("Error during GibWork task creation:", error); + if (callback) { + callback({ + text: `Error creating GibWork task: ${error.message}`, + content: { error: error.message }, + }); + } + return false; + } + }, + + examples: [ + [ + { + user: "{{user1}}", + content: { + text: "Create a GibWork task for building a Solana dApp, offering 100 USDC", + }, + }, + { + user: "{{user2}}", + content: { + text: "Creating GibWork task", + action: "CREATE_GIBWORK_TASK", + }, + }, + { + user: "{{user2}}", + content: { + text: "Successfully created GibWork task: Build a Solana dApp", + }, + }, + ], + ] as ActionExample[][], +} as Action; \ No newline at end of file diff --git a/packages/plugin-solana-agent-kit/src/actions/lend.ts b/packages/plugin-solana-agent-kit/src/actions/lend.ts new file mode 100644 index 00000000000..4409260386d --- /dev/null +++ b/packages/plugin-solana-agent-kit/src/actions/lend.ts @@ -0,0 +1,153 @@ +import { elizaLogger } from "@elizaos/core"; +import { + ActionExample, + Content, + HandlerCallback, + IAgentRuntime, + Memory, + ModelClass, + State, + type Action, +} from "@elizaos/core"; +import { composeContext } from "@elizaos/core"; +import { generateObjectDeprecated } from "@elizaos/core"; +import { ACTIONS } from "solana-agent-kit"; +import { getSAK } from "../client"; + +const LEND_ASSET_ACTION = ACTIONS.LEND_ASSET_ACTION; + +export interface LendAssetContent extends Content { + amount: number; +} + +function isLendAssetContent( + runtime: IAgentRuntime, + content: any +): content is LendAssetContent { + elizaLogger.log("Content for lend", content); + return ( + typeof content.amount === "number" + ); +} + +const lendTemplate = `Respond with a JSON markdown block containing only the extracted values. Use null for any values that cannot be determined. + +Example response: +\`\`\`json +{ + "amount": "100", +} +\`\`\` + +{{recentMessages}} + +Given the recent messages, extract the following information about the lending request: +- Amount of USDC to lend + +Respond with a JSON markdown block containing only the extracted values.`; + +export default { + name: LEND_ASSET_ACTION.name, + similes: LEND_ASSET_ACTION.similes, + validate: async (runtime: IAgentRuntime, message: Memory) => { + elizaLogger.log("Validating lend asset from user:", message.userId); + return false; + }, + description: LEND_ASSET_ACTION.description, + handler: async ( + runtime: IAgentRuntime, + message: Memory, + state: State, + _options: { [key: string]: unknown }, + callback?: HandlerCallback + ): Promise => { + elizaLogger.log("Starting LEND_ASSET handler..."); + const sak = await getSAK(runtime); + + // Initialize or update state + if (!state) { + state = (await runtime.composeState(message)) as State; + } else { + state = await runtime.updateRecentMessageState(state); + } + + // Compose lend context + const lendContext = composeContext({ + state, + template: lendTemplate, + }); + + // Generate lend content + const content = await generateObjectDeprecated({ + runtime, + context: lendContext, + modelClass: ModelClass.LARGE, + }); + + // Validate lend content + if (!isLendAssetContent(runtime, content)) { + elizaLogger.error("Invalid content for LEND_ASSET action."); + if (callback) { + callback({ + text: "Unable to process lending request. Invalid content provided.", + content: { error: "Invalid lend content" }, + }); + } + return false; + } + + try { + const lendResult = await sak.lendAssets( + + content.amount + ); + + console.log("Lend result:", lendResult); + + if (callback) { + callback({ + text: `Successfully lent ${content.amount} USDC`, + content: { + success: true, + lendResult: lendResult, + }, + }); + } + + return true; + } catch (error) { + elizaLogger.error("Error during lending:", error); + if (callback) { + callback({ + text: `Error lending asset: ${error.message}`, + content: { error: error.message }, + }); + } + return false; + } + }, + + examples: [ + [ + { + user: "{{user1}}", + content: { + text: "I want to lend 100 USDC", + }, + }, + { + user: "{{user2}}", + content: { + text: "Lend 100 USDC", + action: "LEND_ASSET", + }, + }, + { + user: "{{user2}}", + content: { + text: "Successfully lent 100 USDC", + }, + }, + ], + ] as ActionExample[][], +} as Action; \ No newline at end of file diff --git a/packages/plugin-solana-agent-kit/src/actions/stake.ts b/packages/plugin-solana-agent-kit/src/actions/stake.ts new file mode 100644 index 00000000000..422f05d11e5 --- /dev/null +++ b/packages/plugin-solana-agent-kit/src/actions/stake.ts @@ -0,0 +1,152 @@ +import { elizaLogger } from "@elizaos/core"; +import { + ActionExample, + Content, + HandlerCallback, + IAgentRuntime, + Memory, + ModelClass, + State, + type Action, +} from "@elizaos/core"; +import { composeContext } from "@elizaos/core"; +import { generateObjectDeprecated } from "@elizaos/core"; +import { ACTIONS } from "solana-agent-kit"; +import { getSAK } from "../client"; + +const STAKE_ACTION = ACTIONS.STAKE_WITH_JUP_ACTION; + +export interface StakeContent extends Content { + amount: number; +} + +function isStakeContent( + runtime: IAgentRuntime, + content: any +): content is StakeContent { + elizaLogger.log("Content for stake", content); + return ( + typeof content.amount === "number" + ); +} + +const stakeTemplate = `Respond with a JSON markdown block containing only the extracted values. Use null for any values that cannot be determined. + +Example response: +\`\`\`json +{ + "amount": "100", +} +\`\`\` + +{{recentMessages}} + +Given the recent messages, extract the following information about the staking request: +- Amount to stake + +Respond with a JSON markdown block containing only the extracted values.`; + +export default { + name: STAKE_ACTION.name, + similes: STAKE_ACTION.similes, + validate: async (runtime: IAgentRuntime, message: Memory) => { + elizaLogger.log("Validating stake from user:", message.userId); + return false; + }, + description: STAKE_ACTION.description, + handler: async ( + runtime: IAgentRuntime, + message: Memory, + state: State, + _options: { [key: string]: unknown }, + callback?: HandlerCallback + ): Promise => { + elizaLogger.log("Starting STAKE handler..."); + const sak = await getSAK(runtime); + + // Initialize or update state + if (!state) { + state = (await runtime.composeState(message)) as State; + } else { + state = await runtime.updateRecentMessageState(state); + } + + // Compose stake context + const stakeContext = composeContext({ + state, + template: stakeTemplate, + }); + + // Generate stake content + const content = await generateObjectDeprecated({ + runtime, + context: stakeContext, + modelClass: ModelClass.LARGE, + }); + + // Validate stake content + if (!isStakeContent(runtime, content)) { + elizaLogger.error("Invalid content for STAKE action."); + if (callback) { + callback({ + text: "Unable to process staking request. Invalid content provided.", + content: { error: "Invalid stake content" }, + }); + } + return false; + } + + try { + const stakeResult = await sak.stake( + content.amount + ); + + console.log("Stake result:", stakeResult); + + if (callback) { + callback({ + text: `Successfully staked ${content.amount} tokens`, + content: { + success: true, + tx: stakeResult, + }, + }); + } + + return true; + } catch (error) { + elizaLogger.error("Error during staking:", error); + if (callback) { + callback({ + text: `Error staking: ${error.message}`, + content: { error: error.message }, + }); + } + return false; + } + }, + + examples: [ + [ + { + user: "{{user1}}", + content: { + text: "I want to stake 100 tokens", + }, + }, + { + user: "{{user2}}", + content: { + text: "Stake 100 tokens", + action: "STAKE_WITH_JUP", + }, + }, + { + user: "{{user2}}", + content: { + text: "Successfully staked 100 tokens", + }, + }, + ], + ] as ActionExample[][], +} as Action; \ No newline at end of file diff --git a/packages/plugin-solana-agent-kit/src/actions/swap.ts b/packages/plugin-solana-agent-kit/src/actions/swap.ts new file mode 100644 index 00000000000..e059e7d6192 --- /dev/null +++ b/packages/plugin-solana-agent-kit/src/actions/swap.ts @@ -0,0 +1,205 @@ +import { + ActionExample, + composeContext, + generateObjectDeprecated, + HandlerCallback, + IAgentRuntime, + Memory, + ModelClass, + settings, + State, + type Action, + elizaLogger, +} from "@elizaos/core"; +import { Connection, PublicKey } from "@solana/web3.js"; +import { ACTIONS } from "solana-agent-kit"; +import { getSAK } from "../client"; + +const TRADE_ACTION = ACTIONS.TRADE_ACTION; + +const swapTemplate = `Respond with a JSON markdown block containing only the extracted values. Use null for any values that cannot be determined. + +Example response: +\`\`\`json +{ + "inputTokenSymbol": "SOL", + "outputTokenSymbol": "USDC", + "inputTokenCA": "So11111111111111111111111111111111111111112", + "outputTokenCA": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v", + "amount": 1.5 +} +\`\`\` + +{{recentMessages}} + +Given the recent messages and wallet information below: + +{{walletInfo}} + +Extract the following information about the requested token swap: +- Input token symbol (the token being sold) +- Output token symbol (the token being bought) +- Input token contract address if provided +- Output token contract address if provided +- Amount to swap + +Respond with a JSON markdown block containing only the extracted values. Use null for any values that cannot be determined. The result should be a valid JSON object with the following schema: +\`\`\`json +{ + "inputTokenSymbol": string | null, + "outputTokenSymbol": string | null, + "inputTokenCA": string | null, + "outputTokenCA": string | null, + "amount": number | string | null +} +\`\`\``; + +// if we get the token symbol but not the CA, check walet for matching token, and if we have, get the CA for it + +export default { + name: TRADE_ACTION.name, + similes: TRADE_ACTION.similes, + validate: async (runtime: IAgentRuntime, message: Memory) => { + // Check if the necessary parameters are provided in the message + elizaLogger.log("Message:", message); + return true; + }, + description: TRADE_ACTION.description, + handler: async ( + runtime: IAgentRuntime, + message: Memory, + state: State, + _options: { [key: string]: unknown }, + callback?: HandlerCallback + ): Promise => { + const sak = await getSAK(runtime); + // composeState + if (!state) { + state = (await runtime.composeState(message)) as State; + } else { + state = await runtime.updateRecentMessageState(state); + } + + const swapContext = composeContext({ + state, + template: swapTemplate, + }); + + const response = await generateObjectDeprecated({ + runtime, + context: swapContext, + modelClass: ModelClass.LARGE, + }); + + elizaLogger.log("Response:", response); + // const type = response.inputTokenSymbol?.toUpperCase() === "SOL" ? "buy" : "sell"; + + // Add SOL handling logic + if (response.inputTokenSymbol?.toUpperCase() === "SOL") { + response.inputTokenCA = settings.SOL_ADDRESS; + } + if (response.outputTokenSymbol?.toUpperCase() === "SOL") { + response.outputTokenCA = settings.SOL_ADDRESS; + } + + if (!response.amount) { + elizaLogger.log("No amount provided, skipping swap"); + const responseMsg = { + text: "I need the amount to perform the swap", + }; + callback?.(responseMsg); + return true; + } + + // TODO: if response amount is half, all, etc, semantically retrieve amount and return as number + if (!response.amount) { + elizaLogger.log("Amount is not a number, skipping swap"); + const responseMsg = { + text: "The amount must be a number", + }; + callback?.(responseMsg); + return true; + } + try { + const connection = new Connection( + "https://api.mainnet-beta.solana.com" + ); + + // const provider = new WalletProvider(connection, walletPublicKey); + + console.log("Wallet Public Key:", sak.wallet_address.toString()); + console.log("inputTokenSymbol:", response.inputTokenCA); + console.log("outputTokenSymbol:", response.outputTokenCA); + console.log("amount:", response.amount); + + const txid = await sak.trade( + new PublicKey(response.outputTokenCA), + response.amount, + new PublicKey(response.inputTokenCA), + ); + + const latestBlockhash = await connection.getLatestBlockhash(); + + const confirmation = await connection.confirmTransaction( + { + signature: txid, + blockhash: latestBlockhash.blockhash, + lastValidBlockHeight: latestBlockhash.lastValidBlockHeight, + }, + "confirmed" + ); + + if (confirmation.value.err) { + throw new Error( + `Transaction failed: ${confirmation.value.err}` + ); + } + + if (confirmation.value.err) { + throw new Error( + `Transaction failed: ${confirmation.value.err}` + ); + } + + elizaLogger.log("Swap completed successfully!"); + elizaLogger.log(`Transaction ID: ${txid}`); + + const responseMsg = { + text: `Swap completed successfully! Transaction ID: ${txid}`, + }; + + callback?.(responseMsg); + + return true; + } catch (error) { + elizaLogger.error("Error during token swap:", error); + return false; + } + }, + examples: [ + [ + { + user: "{{user1}}", + content: { + inputTokenSymbol: "SOL", + outputTokenSymbol: "USDC", + amount: 0.1, + }, + }, + { + user: "{{user2}}", + content: { + text: "Swapping 0.1 SOL for USDC...", + action: "TOKEN_SWAP", + }, + }, + { + user: "{{user2}}", + content: { + text: "Swap completed successfully! Transaction ID: ...", + }, + }, + ], + // Add more examples as needed + ] as ActionExample[][], +} as Action; diff --git a/packages/plugin-solana-agent-kit/src/actions/transfer.ts b/packages/plugin-solana-agent-kit/src/actions/transfer.ts new file mode 100644 index 00000000000..7e744356c0a --- /dev/null +++ b/packages/plugin-solana-agent-kit/src/actions/transfer.ts @@ -0,0 +1,190 @@ + +import { elizaLogger, } from "@elizaos/core"; + +import { + PublicKey, + +} from "@solana/web3.js"; + +import { + ActionExample, + Content, + HandlerCallback, + IAgentRuntime, + Memory, + ModelClass, + State, + type Action, +} from "@elizaos/core"; +import { composeContext } from "@elizaos/core"; +import { generateObjectDeprecated } from "@elizaos/core"; +import { ACTIONS } from "solana-agent-kit"; +import { getSAK } from "../client"; + +const TRANSFER_ACTION = ACTIONS.TRANSFER_ACTION; + +export interface TransferContent extends Content { + tokenAddress: string; + recipient: string; + amount: string | number; +} + +function isTransferContent( + runtime: IAgentRuntime, + content: any +): content is TransferContent { + elizaLogger.log("Content for transfer", content); + return ( + typeof content.tokenAddress === "string" && + typeof content.recipient === "string" && + (typeof content.amount === "string" || + typeof content.amount === "number") + ); +} + +const transferTemplate = `Respond with a JSON markdown block containing only the extracted values. Use null for any values that cannot be determined. + +Example response: +\`\`\`json +{ + "tokenAddress": "BieefG47jAHCGZBxi2q87RDuHyGZyYC3vAzxpyu8pump", + "recipient": "9jW8FPr6BSSsemWPV22UUCzSqkVdTp6HTyPqeqyuBbCa", + "amount": "1000" +} +\`\`\` + +{{recentMessages}} + +Given the recent messages, extract the following information about the requested token transfer: +- Token contract address +- Recipient wallet address +- Amount to transfer + +Respond with a JSON markdown block containing only the extracted values.`; + +export default { + name: TRANSFER_ACTION.name, + similes: TRANSFER_ACTION.similes, + validate: async (runtime: IAgentRuntime, message: Memory) => { + elizaLogger.log("Validating transfer from user:", message.userId); + //add custom validate logic here + /* + const adminIds = runtime.getSetting("ADMIN_USER_IDS")?.split(",") || []; + //elizaLogger.log("Admin IDs from settings:", adminIds); + + const isAdmin = adminIds.includes(message.userId); + + if (isAdmin) { + //elizaLogger.log(`Authorized transfer from user: ${message.userId}`); + return true; + } + else + { + //elizaLogger.log(`Unauthorized transfer attempt from user: ${message.userId}`); + return false; + } + */ + return false; + }, + description: TRANSFER_ACTION.description, + handler: async ( + runtime: IAgentRuntime, + message: Memory, + state: State, + _options: { [key: string]: unknown }, + callback?: HandlerCallback + ): Promise => { + elizaLogger.log("Starting SEND_TOKEN handler..."); + const sak = await getSAK(runtime); + + // Initialize or update state + if (!state) { + state = (await runtime.composeState(message)) as State; + } else { + state = await runtime.updateRecentMessageState(state); + } + + // Compose transfer context + const transferContext = composeContext({ + state, + template: transferTemplate, + }); + + // Generate transfer content + const content = await generateObjectDeprecated({ + runtime, + context: transferContext, + modelClass: ModelClass.LARGE, + }); + + // Validate transfer content + if (!isTransferContent(runtime, content)) { + elizaLogger.error("Invalid content for TRANSFER_TOKEN action."); + if (callback) { + callback({ + text: "Unable to process transfer request. Invalid content provided.", + content: { error: "Invalid transfer content" }, + }); + } + return false; + } + + try { + + const mintPubkey = new PublicKey(content.tokenAddress); + const recipientPubkey = new PublicKey(content.recipient); + + + const txId = await sak.transfer(recipientPubkey, Number(content.amount), mintPubkey) + + console.log("Transfer successful:", txId); + + if (callback) { + callback({ + text: `Successfully transferred ${content.amount} tokens to ${content.recipient}\nTransaction: ${txId}`, + content: { + success: true, + signature : txId, + amount: content.amount, + recipient: content.recipient, + }, + }); + } + + return true; + } catch (error) { + elizaLogger.error("Error during token transfer:", error); + if (callback) { + callback({ + text: `Error transferring tokens: ${error.message}`, + content: { error: error.message }, + }); + } + return false; + } + }, + + examples: [ + [ + { + user: "{{user1}}", + content: { + text: "Send 69 EZSIS BieefG47jAHCGZBxi2q87RDuHyGZyYC3vAzxpyu8pump to 9jW8FPr6BSSsemWPV22UUCzSqkVdTp6HTyPqeqyuBbCa", + }, + }, + { + user: "{{user2}}", + content: { + text: "I'll send 69 EZSIS tokens now...", + action: "SEND_TOKEN", + }, + }, + { + user: "{{user2}}", + content: { + text: "Successfully sent 69 EZSIS tokens to 9jW8FPr6BSSsemWPV22UUCzSqkVdTp6HTyPqeqyuBbCa\nTransaction: 5KtPn3DXXzHkb7VAVHZGwXJQqww39ASnrf7YkyJoF2qAGEpBEEGvRHLnnTG8ZVwKqNHMqSckWVGnsQAgfH5pbxEb", + }, + }, + ], + ] as ActionExample[][], +} as Action; diff --git a/packages/plugin-solana-agent-kit/src/client.ts b/packages/plugin-solana-agent-kit/src/client.ts new file mode 100644 index 00000000000..e79e6d0cb40 --- /dev/null +++ b/packages/plugin-solana-agent-kit/src/client.ts @@ -0,0 +1,23 @@ +import { SolanaAgentKit } from "solana-agent-kit"; +import { IAgentRuntime } from "@elizaos/core"; +import { getWalletKey } from "./keypairUtils"; +import bs58 from "bs58"; + +export async function getSAK(runtime: IAgentRuntime) { + const {publicKey} = await getWalletKey(runtime, false); + const {keypair} = await getWalletKey(runtime, true); + + if (keypair.publicKey.toBase58() !== publicKey.toBase58()) { + throw new Error( + "Generated public key doesn't match expected public key" + ); + } + + return new SolanaAgentKit( + bs58.encode(keypair.secretKey), + runtime.getSetting("SOLANA_RPC_URL"), + { + OPENAI_API_KEY: runtime.getSetting("OPENAI_API_KEY"), + } + ); +} \ No newline at end of file diff --git a/packages/plugin-solana-agent-kit/src/index.ts b/packages/plugin-solana-agent-kit/src/index.ts new file mode 100644 index 00000000000..14b358a3a18 --- /dev/null +++ b/packages/plugin-solana-agent-kit/src/index.ts @@ -0,0 +1,18 @@ +import { Plugin } from "@elizaos/core"; +import createToken from "./actions/createToken.ts"; +import swap from "./actions/swap.ts"; +import lend from "./actions/lend.ts"; +import stake from "./actions/stake.ts"; +import transfer from "./actions/transfer.ts"; +import getTokenInfo from "./actions/getTokenInfo.ts"; +import gibwork from "./actions/gibwork.ts"; + +export const solanaAgentkitPlugin: Plugin = { + name: "solana", + description: "Solana Plugin with solana agent kit for Eliza", + actions: [createToken, swap, lend, stake, transfer, getTokenInfo, gibwork], + evaluators: [], + providers: [], +}; + +export default solanaAgentkitPlugin; diff --git a/packages/plugin-solana-agent-kit/src/keypairUtils.ts b/packages/plugin-solana-agent-kit/src/keypairUtils.ts new file mode 100644 index 00000000000..6dbacdb8414 --- /dev/null +++ b/packages/plugin-solana-agent-kit/src/keypairUtils.ts @@ -0,0 +1,82 @@ +import { Keypair, PublicKey } from "@solana/web3.js"; +import { DeriveKeyProvider, TEEMode } from "@elizaos/plugin-tee"; +import bs58 from "bs58"; +import { IAgentRuntime, elizaLogger } from "@elizaos/core"; + +export interface KeypairResult { + keypair?: Keypair; + publicKey?: PublicKey; +} + +/** + * Gets either a keypair or public key based on TEE mode and runtime settings + * @param runtime The agent runtime + * @param requirePrivateKey Whether to return a full keypair (true) or just public key (false) + * @returns KeypairResult containing either keypair or public key + */ +export async function getWalletKey( + runtime: IAgentRuntime, + requirePrivateKey: boolean = true +): Promise { + const teeMode = runtime.getSetting("TEE_MODE") || TEEMode.OFF; + + if (teeMode !== TEEMode.OFF) { + const walletSecretSalt = runtime.getSetting("WALLET_SECRET_SALT"); + if (!walletSecretSalt) { + throw new Error( + "WALLET_SECRET_SALT required when TEE_MODE is enabled" + ); + } + + const deriveKeyProvider = new DeriveKeyProvider(teeMode); + const deriveKeyResult = await deriveKeyProvider.deriveEd25519Keypair( + "/", + walletSecretSalt, + runtime.agentId + ); + + return requirePrivateKey + ? { keypair: deriveKeyResult.keypair } + : { publicKey: deriveKeyResult.keypair.publicKey }; + } + + // TEE mode is OFF + if (requirePrivateKey) { + const privateKeyString = + runtime.getSetting("SOLANA_PRIVATE_KEY") ?? + runtime.getSetting("WALLET_PRIVATE_KEY"); + + if (!privateKeyString) { + throw new Error("Private key not found in settings"); + } + + try { + // First try base58 + const secretKey = bs58.decode(privateKeyString); + return { keypair: Keypair.fromSecretKey(secretKey) }; + } catch (e) { + elizaLogger.log("Error decoding base58 private key:", e); + try { + // Then try base64 + elizaLogger.log("Try decoding base64 instead"); + const secretKey = Uint8Array.from( + Buffer.from(privateKeyString, "base64") + ); + return { keypair: Keypair.fromSecretKey(secretKey) }; + } catch (e2) { + elizaLogger.error("Error decoding private key: ", e2); + throw new Error("Invalid private key format"); + } + } + } else { + const publicKeyString = + runtime.getSetting("SOLANA_PUBLIC_KEY") ?? + runtime.getSetting("WALLET_PUBLIC_KEY"); + + if (!publicKeyString) { + throw new Error("Public key not found in settings"); + } + + return { publicKey: new PublicKey(publicKeyString) }; + } +} diff --git a/packages/plugin-solana-agentkit/tsconfig.json b/packages/plugin-solana-agent-kit/tsconfig.json similarity index 100% rename from packages/plugin-solana-agentkit/tsconfig.json rename to packages/plugin-solana-agent-kit/tsconfig.json diff --git a/packages/plugin-solana-agentkit/tsup.config.ts b/packages/plugin-solana-agent-kit/tsup.config.ts similarity index 100% rename from packages/plugin-solana-agentkit/tsup.config.ts rename to packages/plugin-solana-agent-kit/tsup.config.ts diff --git a/packages/plugin-solana/package.json b/packages/plugin-solana/package.json index bdf2be58439..f31ce814b85 100644 --- a/packages/plugin-solana/package.json +++ b/packages/plugin-solana/package.json @@ -19,10 +19,10 @@ "dist" ], "dependencies": { + "@coral-xyz/anchor": "0.30.1", "@elizaos/core": "workspace:*", - "@elizaos/plugin-trustdb": "workspace:*", "@elizaos/plugin-tee": "workspace:*", - "@coral-xyz/anchor": "0.30.1", + "@elizaos/plugin-trustdb": "workspace:*", "@solana/spl-token": "0.4.9", "@solana/web3.js": "1.95.8", "bignumber.js": "9.1.2", @@ -30,6 +30,7 @@ "fomo-sdk-solana": "1.3.2", "node-cache": "5.1.2", "pumpdotfun-sdk": "1.3.2", + "solana-agent-kit": "^1.4.0", "tsup": "8.3.5", "vitest": "2.1.4" }, diff --git a/packages/plugin-solana/src/actions/pumpfun.ts b/packages/plugin-solana/src/actions/pumpfun.ts index 7423f10460b..88757692d80 100644 --- a/packages/plugin-solana/src/actions/pumpfun.ts +++ b/packages/plugin-solana/src/actions/pumpfun.ts @@ -1,10 +1,9 @@ -import { AnchorProvider } from "@coral-xyz/anchor"; -import { Wallet } from "@coral-xyz/anchor"; -import { generateImage } from "@elizaos/core"; -import { Connection, Keypair, type PublicKey } from "@solana/web3.js"; -import { type CreateTokenMetadata, type PriorityFee, PumpFunSDK } from "pumpdotfun-sdk"; - +import { generateImage, elizaLogger } from "@elizaos/core"; +import { Connection, Keypair, PublicKey } from "@solana/web3.js"; +import { VersionedTransaction } from "@solana/web3.js"; +import { Fomo, PurchaseCurrency } from "fomo-sdk-solana"; import { getAssociatedTokenAddressSync } from "@solana/spl-token"; +import bs58 from "bs58"; import { settings, type ActionExample, @@ -13,15 +12,20 @@ import { type IAgentRuntime, type Memory, ModelClass, - type State, - generateObjectDeprecated, + State, + generateObject, composeContext, type Action, - elizaLogger, } from "@elizaos/core"; import { walletProvider } from "../providers/wallet.ts"; +interface CreateTokenMetadata { + name: string; + symbol: string; + uri: string; +} + export interface CreateAndBuyContent extends Content { tokenMetadata: { name: string; @@ -30,10 +34,10 @@ export interface CreateAndBuyContent extends Content { image_description: string; }; buyAmountSol: string | number; + requiredLiquidity: string | number; } -export function isCreateAndBuyContent( - runtime: IAgentRuntime, +export function isCreateAndBuyContentForFomo( content: any ): content is CreateAndBuyContent { elizaLogger.log("Content for create & buy", content); @@ -45,7 +49,8 @@ export function isCreateAndBuyContent( typeof content.tokenMetadata.description === "string" && typeof content.tokenMetadata.image_description === "string" && (typeof content.buyAmountSol === "string" || - typeof content.buyAmountSol === "number") + typeof content.buyAmountSol === "number") && + typeof content.requiredLiquidity === "number" ); } @@ -55,17 +60,18 @@ export const createAndBuyToken = async ({ tokenMetadata, buyAmountSol, priorityFee, + requiredLiquidity = 85, allowOffCurve, commitment = "confirmed", - sdk, + fomo, connection, - slippage, }: { deployer: Keypair; mint: Keypair; tokenMetadata: CreateTokenMetadata; buyAmountSol: bigint; - priorityFee: PriorityFee; + priorityFee: number; + requiredLiquidity: number; allowOffCurve: boolean; commitment?: | "processed" @@ -76,26 +82,57 @@ export const createAndBuyToken = async ({ | "singleGossip" | "root" | "max"; - sdk: PumpFunSDK; + fomo: Fomo; connection: Connection; slippage: string; }) => { - const createResults = await sdk.createAndBuy( - deployer, - mint, - tokenMetadata, - buyAmountSol, - BigInt(slippage), + const { transaction: versionedTx } = await fomo.createToken( + deployer.publicKey, + tokenMetadata.name, + tokenMetadata.symbol, + tokenMetadata.uri, priorityFee, - commitment + bs58.encode(mint.secretKey), + requiredLiquidity, + Number(buyAmountSol) / 10 ** 9 + ); + + const { blockhash, lastValidBlockHeight } = + await connection.getLatestBlockhash(); + versionedTx.message.recentBlockhash = blockhash; + versionedTx.sign([mint]); + + const serializedTransaction = versionedTx.serialize(); + const serializedTransactionBase64 = Buffer.from( + serializedTransaction + ).toString("base64"); + + const deserializedTx = VersionedTransaction.deserialize( + Buffer.from(serializedTransactionBase64, "base64") ); - elizaLogger.log("Create Results: ", createResults); + const txid = await connection.sendTransaction(deserializedTx, { + skipPreflight: false, + maxRetries: 3, + preflightCommitment: "confirmed", + }); + + elizaLogger.log("Transaction sent:", txid); + + // Confirm transaction using the blockhash + const confirmation = await connection.confirmTransaction( + { + signature: txid, + blockhash: blockhash, + lastValidBlockHeight: lastValidBlockHeight, + }, + commitment + ); - if (createResults.success) { + if (!confirmation.value.err) { elizaLogger.log( "Success:", - `https://pump.fun/${mint.publicKey.toBase58()}` + `https://fomo.fund/token/${mint.publicKey.toBase58()}` ); const ata = getAssociatedTokenAddressSync( mint.publicKey, @@ -126,13 +163,13 @@ export const createAndBuyToken = async ({ return { success: false, ca: mint.publicKey.toBase58(), - error: createResults.error || "Transaction failed", + error: confirmation.value.err || "Transaction failed", }; } }; export const buyToken = async ({ - sdk, + fomo, buyer, mint, amount, @@ -140,25 +177,73 @@ export const buyToken = async ({ allowOffCurve, slippage, connection, + currency = "sol", + commitment = "confirmed", }: { - sdk: PumpFunSDK; + fomo: Fomo; buyer: Keypair; mint: PublicKey; - amount: bigint; - priorityFee: PriorityFee; + amount: number; + priorityFee: number; allowOffCurve: boolean; - slippage: string; + slippage: number; connection: Connection; + currency: PurchaseCurrency; + commitment?: + | "processed" + | "confirmed" + | "finalized" + | "recent" + | "single" + | "singleGossip" + | "root" + | "max"; }) => { - const buyResults = await sdk.buy( - buyer, + const buyVersionedTx = await fomo.buyToken( + buyer.publicKey, mint, amount, - BigInt(slippage), - priorityFee + slippage, + priorityFee, + currency || "sol" ); - if (buyResults.success) { - elizaLogger.log("Success:", `https://pump.fun/${mint.toBase58()}`); + + const { blockhash, lastValidBlockHeight } = + await connection.getLatestBlockhash(); + buyVersionedTx.message.recentBlockhash = blockhash; + + const serializedTransaction = buyVersionedTx.serialize(); + const serializedTransactionBase64 = Buffer.from( + serializedTransaction + ).toString("base64"); + + const deserializedTx = VersionedTransaction.deserialize( + Buffer.from(serializedTransactionBase64, "base64") + ); + + const txid = await connection.sendTransaction(deserializedTx, { + skipPreflight: false, + maxRetries: 3, + preflightCommitment: "confirmed", + }); + + elizaLogger.log("Transaction sent:", txid); + + // Confirm transaction using the blockhash + const confirmation = await connection.confirmTransaction( + { + signature: txid, + blockhash: blockhash, + lastValidBlockHeight: lastValidBlockHeight, + }, + commitment + ); + + if (!confirmation.value.err) { + elizaLogger.log( + "Success:", + `https://fomo.fund/token/${mint.toBase58()}` + ); const ata = getAssociatedTokenAddressSync( mint, buyer.publicKey, @@ -183,7 +268,7 @@ export const buyToken = async ({ }; export const sellToken = async ({ - sdk, + fomo, seller, mint, amount, @@ -191,25 +276,73 @@ export const sellToken = async ({ allowOffCurve, slippage, connection, + currency = "token", + commitment = "confirmed", }: { - sdk: PumpFunSDK; + fomo: Fomo; seller: Keypair; mint: PublicKey; - amount: bigint; - priorityFee: PriorityFee; + amount: number; + priorityFee: number; allowOffCurve: boolean; - slippage: string; + slippage: number; connection: Connection; + currency: PurchaseCurrency; + commitment?: + | "processed" + | "confirmed" + | "finalized" + | "recent" + | "single" + | "singleGossip" + | "root" + | "max"; }) => { - const sellResults = await sdk.sell( - seller, + const sellVersionedTx = await fomo.sellToken( + seller.publicKey, mint, amount, - BigInt(slippage), - priorityFee + slippage, + priorityFee, + currency || "token" ); - if (sellResults.success) { - elizaLogger.log("Success:", `https://pump.fun/${mint.toBase58()}`); + + const { blockhash, lastValidBlockHeight } = + await connection.getLatestBlockhash(); + sellVersionedTx.message.recentBlockhash = blockhash; + + const serializedTransaction = sellVersionedTx.serialize(); + const serializedTransactionBase64 = Buffer.from( + serializedTransaction + ).toString("base64"); + + const deserializedTx = VersionedTransaction.deserialize( + Buffer.from(serializedTransactionBase64, "base64") + ); + + const txid = await connection.sendTransaction(deserializedTx, { + skipPreflight: false, + maxRetries: 3, + preflightCommitment: "confirmed", + }); + + elizaLogger.log("Transaction sent:", txid); + + // Confirm transaction using the blockhash + const confirmation = await connection.confirmTransaction( + { + signature: txid, + blockhash: blockhash, + lastValidBlockHeight: lastValidBlockHeight, + }, + commitment + ); + + if (!confirmation.value.err) { + elizaLogger.log( + "Success:", + `https://fomo.fund/token/${mint.toBase58()}` + ); const ata = getAssociatedTokenAddressSync( mint, seller.publicKey, @@ -233,23 +366,11 @@ export const sellToken = async ({ } }; -// previous logic: -// if (typeof window !== "undefined" && typeof window.confirm === "function") { -// return window.confirm( -// "Confirm the creation and purchase of the token?" -// ); -// } -// return true; const promptConfirmation = async (): Promise => { return true; }; -// Save the base64 data to a file -import * as fs from "fs"; -import * as path from "path"; -import { getWalletKey } from "../keypairUtils.ts"; - -const pumpfunTemplate = `Respond with a JSON markdown block containing only the extracted values. Use null for any values that cannot be determined. +const fomoTemplate = `Respond with a JSON markdown block containing only the extracted values. Use null for any values that cannot be determined. Example response: \`\`\`json @@ -260,7 +381,8 @@ Example response: "description": "A test token", "image_description": "create an image of a rabbit" }, - "buyAmountSol": "0.00069" + "buyAmountSol": "0.00069", + "requiredLiquidity": "85" } \`\`\` @@ -306,24 +428,24 @@ export default { // Generate structured content from natural language const pumpContext = composeContext({ state, - template: pumpfunTemplate, + template: fomoTemplate, }); - const content = await generateObjectDeprecated({ + const content = await generateObject({ runtime, context: pumpContext, modelClass: ModelClass.LARGE, }); // Validate the generated content - if (!isCreateAndBuyContent(runtime, content)) { + if (!isCreateAndBuyContentForFomo(content)) { elizaLogger.error( "Invalid content for CREATE_AND_BUY_TOKEN action." ); return false; } - const { tokenMetadata, buyAmountSol } = content; + const { tokenMetadata, buyAmountSol, requiredLiquidity } = content; /* // Generate image if tokenMetadata.file is empty or invalid if (!tokenMetadata.file || tokenMetadata.file.length < 100) { // Basic validation @@ -358,34 +480,29 @@ export default { runtime ); - tokenMetadata.image_description = imageResult.data[0].replace( - /^data:image\/[a-z]+;base64,/, - "" - ); - - // Convert base64 string to Blob - const base64Data = tokenMetadata.image_description; - const outputPath = path.join( - process.cwd(), - `generated_image_${Date.now()}.txt` - ); - fs.writeFileSync(outputPath, base64Data); - elizaLogger.log(`Base64 data saved to: ${outputPath}`); - - const byteCharacters = atob(base64Data); - const byteNumbers = new Array(byteCharacters.length); - for (let i = 0; i < byteCharacters.length; i++) { - byteNumbers[i] = byteCharacters.charCodeAt(i); - } - const byteArray = new Uint8Array(byteNumbers); - const blob = new Blob([byteArray], { type: "image/png" }); - + const imageBuffer = Buffer.from(imageResult.data[0], "base64"); + const formData = new FormData(); + const blob = new Blob([imageBuffer], { type: "image/png" }); + formData.append("file", blob, `${tokenMetadata.name}.png`); + formData.append("name", tokenMetadata.name); + formData.append("symbol", tokenMetadata.symbol); + formData.append("description", tokenMetadata.description); + + // FIXME: does fomo.fund have an ipfs call? + const metadataResponse = await fetch("https://pump.fun/api/ipfs", { + method: "POST", + body: formData, + }); + const metadataResponseJSON = (await metadataResponse.json()) as { + name: string; + symbol: string; + metadataUri: string; + }; // Add the default decimals and convert file to Blob const fullTokenMetadata: CreateTokenMetadata = { name: tokenMetadata.name, symbol: tokenMetadata.symbol, - description: tokenMetadata.description, - file: blob, + uri: metadataResponseJSON.metadataUri, }; // Default priority fee for high network load @@ -396,13 +513,14 @@ export default { const slippage = "2000"; try { // Get private key from settings and create deployer keypair - const { keypair: deployerKeypair } = await getWalletKey( - runtime, - true - ); + const privateKeyString = + runtime.getSetting("SOLANA_PRIVATE_KEY") ?? + runtime.getSetting("WALLET_PRIVATE_KEY"); + const secretKey = bs58.decode(privateKeyString); + const deployerKeypair = Keypair.fromSecretKey(secretKey) as any; // Generate new mint keypair - const mintKeypair = Keypair.generate(); + const mintKeypair = Keypair.generate() as any; elizaLogger.log( `Generated mint address: ${mintKeypair.publicKey.toBase58()}` ); @@ -410,15 +528,11 @@ export default { // Setup connection and SDK const connection = new Connection(settings.SOLANA_RPC_URL!, { commitment: "confirmed", - confirmTransactionInitialTimeout: 500000, // 120 seconds + confirmTransactionInitialTimeout: 500000, wsEndpoint: settings.SOLANA_RPC_URL!.replace("https", "wss"), }); - const wallet = new Wallet(deployerKeypair); - const provider = new AnchorProvider(connection, wallet, { - commitment: "confirmed", - }); - const sdk = new PumpFunSDK(provider); + const sdk = new Fomo(connection as any, "devnet", deployerKeypair); // const slippage = runtime.getSetting("SLIPPAGE"); const createAndBuyConfirmation = await promptConfirmation(); @@ -432,13 +546,14 @@ export default { elizaLogger.log("Executing create and buy transaction..."); const result = await createAndBuyToken({ - deployer: deployerKeypair, - mint: mintKeypair, + deployer: deployerKeypair as any, + mint: mintKeypair as any, tokenMetadata: fullTokenMetadata, buyAmountSol: BigInt(lamports), - priorityFee, + priorityFee: priorityFee.unitPrice, + requiredLiquidity: Number(requiredLiquidity), allowOffCurve: false, - sdk, + fomo: sdk, connection, slippage, }); @@ -446,7 +561,7 @@ export default { if (callback) { if (result.success) { callback({ - text: `Token ${tokenMetadata.name} (${tokenMetadata.symbol}) created successfully!\nContract Address: ${result.ca}\nCreator: ${result.creator}\nView at: https://pump.fun/${result.ca}`, + text: `Token ${tokenMetadata.name} (${tokenMetadata.symbol}) created successfully!\nURL: https://fomo.fund/token/${result.ca}\nCreator: ${result.creator}\nView at: https://fomo.fund/token/${result.ca}`, content: { tokenInfo: { symbol: tokenMetadata.symbol, @@ -477,7 +592,7 @@ export default { }); */ // Log success message with token view URL - const successMessage = `Token created and purchased successfully! View at: https://pump.fun/${mintKeypair.publicKey.toBase58()}`; + const successMessage = `Token created and purchased successfully! View at: https://fomo.fund/token/${mintKeypair.publicKey.toBase58()}`; elizaLogger.log(successMessage); return result.success; } catch (error) { @@ -496,13 +611,13 @@ export default { { user: "{{user1}}", content: { - text: "Create a new token called GLITCHIZA with symbol GLITCHIZA and generate a description about it on pump.fun. Also come up with a description for it to use for image generation .buy 0.00069 SOL worth.", + text: "Create a new token called GLITCHIZA with symbol GLITCHIZA and generate a description about it on fomo.fund. Also come up with a description for it to use for image generation .buy 0.00069 SOL worth.", }, }, { user: "{{user2}}", content: { - text: "Token GLITCHIZA (GLITCHIZA) created successfully on pump.fun!\nContract Address: 3kD5DN4bbA3nykb1abjS66VF7cYZkKdirX8bZ6ShJjBB\nCreator: 9jW8FPr6BSSsemWPV22UUCzSqkVdTp6HTyPqeqyuBbCa\nView at: https://pump.fun/EugPwuZ8oUMWsYHeBGERWvELfLGFmA1taDtmY8uMeX6r", + text: "Token GLITCHIZA (GLITCHIZA) created successfully on fomo.fund!\nURL: https://fomo.fund/token/673247855e8012181f941f84\nCreator: Anonymous\nView at: https://fomo.fund/token/673247855e8012181f941f84", action: "CREATE_AND_BUY_TOKEN", content: { tokenInfo: { @@ -519,4 +634,4 @@ export default { }, ], ] as ActionExample[][], -} as Action; +} as Action; \ No newline at end of file diff --git a/packages/plugin-solana/src/actions/swap.ts b/packages/plugin-solana/src/actions/swap.ts index cb03d2a2c19..aa0123aba9f 100644 --- a/packages/plugin-solana/src/actions/swap.ts +++ b/packages/plugin-solana/src/actions/swap.ts @@ -408,4 +408,4 @@ export const executeSwap: Action = { ], // Add more examples as needed ] as ActionExample[][], -} as Action; +} as Action; \ No newline at end of file diff --git a/packages/plugin-solana/src/actions/swapDao.ts b/packages/plugin-solana/src/actions/swapDao.ts index 785433462a9..a2ce02fabbe 100644 --- a/packages/plugin-solana/src/actions/swapDao.ts +++ b/packages/plugin-solana/src/actions/swapDao.ts @@ -150,4 +150,4 @@ export const executeSwapForDAO: Action = { }, ], ] as ActionExample[][], -} as Action; +} as Action; \ No newline at end of file diff --git a/packages/plugin-solana/src/actions/transfer.ts b/packages/plugin-solana/src/actions/transfer.ts index a2d728ecb63..fd7547d9446 100644 --- a/packages/plugin-solana/src/actions/transfer.ts +++ b/packages/plugin-solana/src/actions/transfer.ts @@ -260,4 +260,4 @@ export default { }, ], ] as ActionExample[][], -} as Action; +} as Action; \ No newline at end of file diff --git a/packages/plugin-solana/src/index.ts b/packages/plugin-solana/src/index.ts index 573b4f27124..ef80877b2ed 100644 --- a/packages/plugin-solana/src/index.ts +++ b/packages/plugin-solana/src/index.ts @@ -34,4 +34,4 @@ export const solanaPlugin: Plugin = { providers: [walletProvider, trustScoreProvider], }; -export default solanaPlugin; +export default solanaPlugin; \ No newline at end of file diff --git a/packages/plugin-spheron/package.json b/packages/plugin-spheron/package.json index 2c9f32d55a7..5b99b8b65f7 100644 --- a/packages/plugin-spheron/package.json +++ b/packages/plugin-spheron/package.json @@ -6,8 +6,7 @@ "types": "dist/index.d.ts", "scripts": { "build": "tsup --format esm --dts", - "test": "jest", - "lint": "eslint --fix --cache ." + "test": "jest" }, "dependencies": { "@elizaos/core": "workspace:*", diff --git a/packages/plugin-squid-router/README.md b/packages/plugin-squid-router/README.md index 20038ab02ed..95150f6d649 100644 --- a/packages/plugin-squid-router/README.md +++ b/packages/plugin-squid-router/README.md @@ -1,7 +1,7 @@ # @elizaos/squid-router This plugin adds Squid Router functionality to Eliza agents. It allows cross chain swaps between blockchains. -For now, only swaps beteen EVM chains are supported, but the plan is to add swaps from/to Solana and the Cosomos ecosystem. +For now, only swaps between EVM chains are supported, but the plan is to add swaps from/to Solana and the Cosomos ecosystem. For supported chains and tokens, please refer to the [Squid Router documentation](https://docs.squidrouter.com/). ## Configuration diff --git a/packages/plugin-starknet/src/utils/index.ts b/packages/plugin-starknet/src/utils/index.ts index cdf89e80035..9620e7aba43 100644 --- a/packages/plugin-starknet/src/utils/index.ts +++ b/packages/plugin-starknet/src/utils/index.ts @@ -38,11 +38,11 @@ export const getPercent = (amount: string | number, decimals: number) => { return new Percent(amount, decimals); }; -export const parseFormatedAmount = (amount: string) => amount.replace(/,/g, ""); +export const parseFormattedAmount = (amount: string) => amount.replace(/,/g, ""); export const PERCENTAGE_INPUT_PRECISION = 2; -export const parseFormatedPercentage = (percent: string) => +export const parseFormattedPercentage = (percent: string) => new Percent( +percent * 10 ** PERCENTAGE_INPUT_PRECISION, 100 * 10 ** PERCENTAGE_INPUT_PRECISION @@ -65,12 +65,12 @@ export const formatCurrenyAmount = ( }; export const formatPercentage = (percentage: Percent) => { - const formatedPercentage = +percentage.toFixed(2); + const formattedPercentage = +percentage.toFixed(2); const exact = percentage.equalTo( - new Percent(Math.round(formatedPercentage * 100), 10000) + new Percent(Math.round(formattedPercentage * 100), 10000) ); - return `${exact ? "" : "~"}${formatedPercentage}%`; + return `${exact ? "" : "~"}${formattedPercentage}%`; }; export type RetryConfig = { diff --git a/packages/plugin-sui/package.json b/packages/plugin-sui/package.json index 94db2b750c3..9c259923ef5 100644 --- a/packages/plugin-sui/package.json +++ b/packages/plugin-sui/package.json @@ -28,7 +28,6 @@ }, "scripts": { "build": "tsup --format esm --dts", - "lint": "eslint . --fix", "test": "vitest run" }, "peerDependencies": { diff --git a/packages/plugin-tee-log/src/services/teeLogManager.ts b/packages/plugin-tee-log/src/services/teeLogManager.ts index db7a95fe4ae..49489d65140 100644 --- a/packages/plugin-tee-log/src/services/teeLogManager.ts +++ b/packages/plugin-tee-log/src/services/teeLogManager.ts @@ -98,7 +98,7 @@ export class TeeLogManager { const sgxAttestation = await sgxAttestationProvider.generateAttestation(userReport); return JSON.stringify(sgxAttestation); } else if (this.teeType === TeeType.TDX_DSTACK) { - const tdxAttestationProvider = new TdxAttestationProvider(); + const tdxAttestationProvider = new TdxAttestationProvider(this.teeMode); const tdxAttestation = await tdxAttestationProvider.generateAttestation(userReport); return JSON.stringify(tdxAttestation); } else { diff --git a/packages/plugin-tee-log/src/services/teeLogService.ts b/packages/plugin-tee-log/src/services/teeLogService.ts index c52360a9b49..fd804d552b4 100644 --- a/packages/plugin-tee-log/src/services/teeLogService.ts +++ b/packages/plugin-tee-log/src/services/teeLogService.ts @@ -4,9 +4,10 @@ import { SqliteTeeLogDAO } from "../adapters/sqliteDAO"; import { TeeType, type TeeLogDAO, type TeeAgent, type TeeLog, type TeeLogQuery, type PageQuery } from "../types"; import { TeeLogManager } from "./teeLogManager"; import Database from "better-sqlite3"; +import path from "path"; export class TeeLogService extends Service implements ITeeLogService { - private readonly dbPath = "./data/tee_log.sqlite"; + private readonly dbPath = path.resolve("agent/data/tee_log.sqlite"); private initialized = false; private enableTeeLog = false; @@ -46,8 +47,10 @@ export class TeeLogService extends Service implements ITeeLogService { const teeMode = runtime.getSetting("TEE_MODE"); const walletSecretSalt = runtime.getSetting("WALLET_SECRET_SALT"); + this.teeMode = teeMode ? TEEMode[teeMode as keyof typeof TEEMode] : TEEMode.OFF; + const useSgxGramine = runInSgx && enableValues.includes(runInSgx.toLowerCase()); - const useTdxDstack = !teeMode && teeMode !== TEEMode.OFF && walletSecretSalt; + const useTdxDstack = teeMode && teeMode !== TEEMode.OFF && walletSecretSalt; if (useSgxGramine && useTdxDstack) { throw new Error("Cannot configure both SGX and TDX at the same time."); diff --git a/packages/plugin-tee-marlin/package.json b/packages/plugin-tee-marlin/package.json index d04bb4c3ad0..74db2744dd0 100644 --- a/packages/plugin-tee-marlin/package.json +++ b/packages/plugin-tee-marlin/package.json @@ -10,8 +10,7 @@ }, "scripts": { "build": "tsup --format esm --dts", - "dev": "tsup --format esm --dts --watch", - "lint": "eslint . --fix" + "dev": "tsup --format esm --dts --watch" }, "peerDependencies": { "whatwg-url": "7.1.0" diff --git a/packages/plugin-tee-verifiable-log/package.json b/packages/plugin-tee-verifiable-log/package.json index 72aa5b9c012..f5784c35d07 100644 --- a/packages/plugin-tee-verifiable-log/package.json +++ b/packages/plugin-tee-verifiable-log/package.json @@ -17,8 +17,7 @@ "scripts": { "build": "tsup --format esm --dts", "test": "vitest run", - "test:watch": "vitest", - "lint": "eslint . --fix" + "test:watch": "vitest" }, "devDependencies": { "@types/dompurify": "3.2.0", diff --git a/packages/plugin-web-search/src/services/webSearchService.ts b/packages/plugin-web-search/src/services/webSearchService.ts index 12ece8080a6..222916fd75e 100644 --- a/packages/plugin-web-search/src/services/webSearchService.ts +++ b/packages/plugin-web-search/src/services/webSearchService.ts @@ -6,7 +6,7 @@ import { import { tavily } from "@tavily/core"; import type { IWebSearchService, SearchOptions, SearchResponse } from "../types"; -export type TavilyClient = ReturnType; // declaring manually because orginal package does not export its types +export type TavilyClient = ReturnType; // declaring manually because original package does not export its types export class WebSearchService extends Service implements IWebSearchService { public tavilyClient: TavilyClient diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ee2dbb86dbd..b6663c93c59 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -313,9 +313,9 @@ importers: '@elizaos/plugin-solana': specifier: workspace:* version: link:../packages/plugin-solana - '@elizaos/plugin-solana-agentkit': + '@elizaos/plugin-solana-agent-kit': specifier: workspace:* - version: link:../packages/plugin-solana-agentkit + version: link:../packages/plugin-solana-agent-kit '@elizaos/plugin-squid-router': specifier: workspace:* version: link:../packages/plugin-squid-router @@ -451,10 +451,10 @@ importers: version: 19.0.0(react@19.0.0) react-router: specifier: ^7.1.1 - version: 7.1.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + version: 7.1.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0) react-router-dom: specifier: ^7.1.1 - version: 7.1.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + version: 7.1.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0) semver: specifier: ^7.6.3 version: 7.6.3 @@ -658,6 +658,9 @@ importers: tsup: specifier: 8.3.5 version: 8.3.5(@swc/core@1.10.7(@swc/helpers@0.5.15))(jiti@2.4.2)(postcss@8.5.1)(tsx@4.19.2)(typescript@5.7.3)(yaml@2.7.0) + vitest: + specifier: ^3.0.2 + version: 3.0.2(@types/node@22.10.7)(jsdom@25.0.1(bufferutil@4.0.9)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@6.0.5))(terser@5.37.0) packages/adapter-sqlite: dependencies: @@ -677,9 +680,15 @@ importers: specifier: 7.1.0 version: 7.1.0 devDependencies: + '@vitest/coverage-v8': + specifier: ^3.0.2 + version: 3.0.2(vitest@3.0.2(@types/node@22.10.7)(jsdom@25.0.1(bufferutil@4.0.9)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@6.0.5))(terser@5.37.0)) tsup: specifier: 8.3.5 version: 8.3.5(@swc/core@1.10.7(@swc/helpers@0.5.15))(jiti@2.4.2)(postcss@8.5.1)(tsx@4.19.2)(typescript@5.7.3)(yaml@2.7.0) + vitest: + specifier: ^3.0.2 + version: 3.0.2(@types/node@22.10.7)(jsdom@25.0.1(bufferutil@4.0.9)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@6.0.5))(terser@5.37.0) packages/adapter-sqljs: dependencies: @@ -715,9 +724,15 @@ importers: specifier: 7.1.0 version: 7.1.0 devDependencies: + '@vitest/coverage-v8': + specifier: ^3.0.2 + version: 3.0.2(vitest@3.0.2(@types/node@22.10.7)(jsdom@25.0.1(bufferutil@4.0.9)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@6.0.5))(terser@5.37.0)) tsup: specifier: 8.3.5 version: 8.3.5(@swc/core@1.10.7(@swc/helpers@0.5.15))(jiti@2.4.2)(postcss@8.5.1)(tsx@4.19.2)(typescript@5.7.3)(yaml@2.7.0) + vitest: + specifier: ^3.0.2 + version: 3.0.2(@types/node@22.10.7)(jsdom@25.0.1(bufferutil@4.0.9)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@6.0.5))(terser@5.37.0) packages/client-auto: dependencies: @@ -907,6 +922,9 @@ importers: tsup: specifier: 8.3.5 version: 8.3.5(@swc/core@1.10.7(@swc/helpers@0.5.15))(jiti@2.4.2)(postcss@8.5.1)(tsx@4.19.2)(typescript@5.7.3)(yaml@2.7.0) + vitest: + specifier: ^1.2.1 + version: 1.2.1(@types/node@22.10.7)(jsdom@25.0.1(bufferutil@4.0.9)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@6.0.5))(terser@5.37.0) packages/client-lens: dependencies: @@ -915,13 +933,13 @@ importers: version: link:../core '@lens-protocol/client': specifier: 2.2.0 - version: 2.2.0(@jest/globals@29.7.0)(@lens-protocol/metadata@1.2.0(zod@3.23.8))(@types/react@19.0.7)(bufferutil@4.0.9)(encoding@0.1.13)(ethers@6.13.4(bufferutil@4.0.9)(utf-8-validate@5.0.10))(react@19.0.0)(utf-8-validate@5.0.10) + version: 2.2.0(@jest/globals@29.7.0)(@lens-protocol/metadata@1.2.0(zod@3.23.8))(@types/react@19.0.7)(bufferutil@4.0.9)(encoding@0.1.13)(ethers@6.13.4(bufferutil@4.0.9)(utf-8-validate@5.0.10))(ioredis@5.4.2)(react@19.0.0)(utf-8-validate@5.0.10) '@lens-protocol/metadata': specifier: 1.2.0 version: 1.2.0(zod@3.23.8) axios: specifier: ^1.7.9 - version: 1.7.9(debug@4.4.0) + version: 1.7.9 devDependencies: tsup: specifier: ^8.3.5 @@ -1048,7 +1066,7 @@ importers: version: 0.0.3(zod@3.23.8) '@ai-sdk/mistral': specifier: ^1.0.8 - version: 1.0.8(zod@3.23.8) + version: 1.1.0(zod@3.23.8) '@ai-sdk/openai': specifier: 1.0.5 version: 1.0.5(zod@3.23.8) @@ -1066,7 +1084,7 @@ importers: version: 10.0.0 ai: specifier: 3.4.33 - version: 3.4.33(openai@4.73.0(encoding@0.1.13)(zod@3.23.8))(react@19.0.0)(sswr@2.1.0(svelte@5.18.0))(svelte@5.18.0)(vue@3.5.13(typescript@5.6.3))(zod@3.23.8) + version: 3.4.33(openai@4.73.0(encoding@0.1.13)(zod@3.23.8))(react@19.0.0)(sswr@2.1.0(svelte@5.19.0))(svelte@5.19.0)(vue@3.5.13(typescript@5.6.3))(zod@3.23.8) anthropic-vertex-ai: specifier: 1.0.2 version: 1.0.2(encoding@0.1.13)(zod@3.23.8) @@ -1096,13 +1114,19 @@ importers: version: 1.0.15 langchain: specifier: 0.3.6 - version: 0.3.6(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13))(axios@1.7.9)(encoding@0.1.13)(handlebars@4.7.8)(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)) + version: 0.3.6(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13)(ws@7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10)))(axios@1.7.9)(encoding@0.1.13)(handlebars@4.7.8)(openai@4.73.0(encoding@0.1.13)(zod@3.23.8))(ws@7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10)) ollama-ai-provider: specifier: 0.16.1 version: 0.16.1(zod@3.23.8) openai: specifier: 4.73.0 version: 4.73.0(encoding@0.1.13)(zod@3.23.8) + pino: + specifier: ^9.6.0 + version: 9.6.0 + pino-pretty: + specifier: ^13.0.0 + version: 13.0.0 tinyld: specifier: 1.3.4 version: 1.3.4 @@ -1172,7 +1196,7 @@ importers: version: 8.16.0(eslint@9.18.0(jiti@2.4.2))(typescript@5.6.3) '@vitest/coverage-v8': specifier: 2.1.5 - version: 2.1.5(vitest@2.1.8(@types/node@22.8.4)(jsdom@25.0.1(bufferutil@4.0.9)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.37.0)) + version: 2.1.5(vitest@3.0.2(@types/node@22.8.4)(jsdom@25.0.1(bufferutil@4.0.9)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.37.0)) jest: specifier: 29.7.0 version: 29.7.0(@types/node@22.8.4)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.10.7(@swc/helpers@0.5.15))(@types/node@22.8.4)(typescript@5.6.3)) @@ -1278,13 +1302,13 @@ importers: version: 0.0.10(bufferutil@4.0.9)(typescript@5.7.3)(utf-8-validate@6.0.5) '@coinbase/cdp-langchain': specifier: ^0.0.11 - version: 0.0.11(@coinbase/coinbase-sdk@0.13.0(bufferutil@4.0.9)(typescript@5.7.3)(utf-8-validate@6.0.5)(zod@3.23.8))(bufferutil@4.0.9)(openai@4.78.1(encoding@0.1.13)(zod@3.23.8))(typescript@5.7.3)(utf-8-validate@6.0.5) + version: 0.0.11(@coinbase/coinbase-sdk@0.13.0(bufferutil@4.0.9)(typescript@5.7.3)(utf-8-validate@6.0.5)(zod@3.23.8))(bufferutil@4.0.9)(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5))(zod@3.23.8))(typescript@5.7.3)(utf-8-validate@6.0.5) '@elizaos/core': specifier: workspace:* version: link:../core '@langchain/core': specifier: ^0.3.27 - version: 0.3.30(openai@4.78.1(encoding@0.1.13)(zod@3.23.8)) + version: 0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5))(zod@3.23.8)) tsup: specifier: 8.3.5 version: 8.3.5(@swc/core@1.10.7(@swc/helpers@0.5.15))(jiti@2.4.2)(postcss@8.5.1)(tsx@4.19.2)(typescript@5.7.3)(yaml@2.7.0) @@ -1311,7 +1335,7 @@ importers: version: 4.0.9 axios: specifier: ^1.7.9 - version: 1.7.9(debug@4.4.0) + version: 1.7.9 dotenv: specifier: ^16.4.1 version: 16.4.7 @@ -1396,7 +1420,7 @@ importers: version: link:../core axios: specifier: ^1.7.9 - version: 1.7.9(debug@4.4.0) + version: 1.7.9 tsup: specifier: 8.3.5 version: 8.3.5(@swc/core@1.10.7(@swc/helpers@0.5.15))(jiti@2.4.2)(postcss@8.5.1)(tsx@4.19.2)(typescript@5.7.3)(yaml@2.7.0) @@ -1506,7 +1530,7 @@ importers: version: link:../plugin-trustdb axios: specifier: ^1.7.9 - version: 1.7.9(debug@4.4.0) + version: 1.7.9 form-data: specifier: 4.0.1 version: 4.0.1 @@ -1685,7 +1709,7 @@ importers: version: link:../core axios: specifier: ^1.6.7 - version: 1.7.9(debug@4.4.0) + version: 1.7.9 tsup: specifier: ^8.3.5 version: 8.3.5(@swc/core@1.10.7(@swc/helpers@0.5.15))(jiti@2.4.2)(postcss@8.5.1)(tsx@4.19.2)(typescript@5.7.3)(yaml@2.7.0) @@ -1697,7 +1721,7 @@ importers: version: link:../core axios: specifier: ^1.6.7 - version: 1.7.9(debug@4.4.0) + version: 1.7.9 zod: specifier: ^3.22.4 version: 3.23.8 @@ -1719,7 +1743,7 @@ importers: dependencies: '@chain-registry/utils': specifier: ^1.51.41 - version: 1.51.50 + version: 1.51.51 '@cosmjs/cosmwasm-stargate': specifier: ^0.32.4 version: 0.32.4(bufferutil@4.0.9)(utf-8-validate@5.0.10) @@ -1732,12 +1756,18 @@ importers: '@elizaos/core': specifier: workspace:* version: link:../core + '@skip-go/client': + specifier: ^0.16.3 + version: 0.16.5(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(@types/react@19.0.7)(bufferutil@4.0.9)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(starknet@6.18.0(encoding@0.1.13))(utf-8-validate@5.0.10)(viem@2.21.58(bufferutil@4.0.9)(typescript@5.7.3)(utf-8-validate@5.0.10)(zod@3.23.8)) + axios: + specifier: ^1.7.9 + version: 1.7.9 bignumber.js: specifier: 9.1.2 version: 9.1.2 chain-registry: specifier: ^1.69.68 - version: 1.69.94 + version: 1.69.95 interchain: specifier: ^1.10.4 version: 1.10.4(bufferutil@4.0.9)(utf-8-validate@5.0.10) @@ -1750,7 +1780,7 @@ importers: devDependencies: '@chain-registry/types': specifier: ^0.50.44 - version: 0.50.50 + version: 0.50.51 packages/plugin-cronoszkevm: dependencies: @@ -1774,7 +1804,7 @@ importers: version: link:../core axios: specifier: ^1.7.9 - version: 1.7.9(debug@4.4.0) + version: 1.7.9 tsup: specifier: 8.3.5 version: 8.3.5(@swc/core@1.10.7(@swc/helpers@0.5.15))(jiti@2.4.2)(postcss@8.5.1)(tsx@4.19.2)(typescript@5.7.3)(yaml@2.7.0) @@ -1837,7 +1867,7 @@ importers: version: 1.5.1 '@onflow/fcl': specifier: 1.13.1 - version: 1.13.1(@types/react@19.0.7)(bufferutil@4.0.9)(encoding@0.1.13)(google-protobuf@3.21.4)(ioredis@5.4.2)(jiti@2.4.2)(postcss@8.5.1)(react@19.0.0)(tsx@4.19.2)(utf-8-validate@6.0.5) + version: 1.13.1(@types/react@19.0.7)(bufferutil@4.0.9)(encoding@0.1.13)(google-protobuf@3.21.4)(ioredis@5.4.2)(jiti@2.4.2)(postcss@8.5.1)(react@19.0.0)(tsx@4.19.2)(utf-8-validate@5.0.10) '@onflow/typedefs': specifier: 1.4.0 version: 1.4.0 @@ -1877,7 +1907,7 @@ importers: version: 8.3.5(@swc/core@1.10.7(@swc/helpers@0.5.15))(jiti@2.4.2)(postcss@8.5.1)(tsx@4.19.2)(typescript@5.7.3)(yaml@2.7.0) vitest: specifier: 2.1.4 - version: 2.1.4(@types/node@22.10.7)(jsdom@25.0.1(bufferutil@4.0.9)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@6.0.5))(terser@5.37.0) + version: 2.1.4(@types/node@22.10.7)(jsdom@25.0.1(bufferutil@4.0.9)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.37.0) packages/plugin-fuel: dependencies: @@ -1919,7 +1949,7 @@ importers: version: link:../core axios: specifier: ^1.6.7 - version: 1.7.9(debug@4.4.0) + version: 1.7.9 tsup: specifier: ^8.3.5 version: 8.3.5(@swc/core@1.10.7(@swc/helpers@0.5.15))(jiti@2.4.2)(postcss@8.5.1)(tsx@4.19.2)(typescript@5.7.3)(yaml@2.7.0) @@ -1955,7 +1985,7 @@ importers: version: link:../core '@goat-sdk/adapter-vercel-ai': specifier: 0.2.0 - version: 0.2.0(@goat-sdk/core@0.4.0)(ai@4.0.38(react@19.0.0)(zod@3.23.8)) + version: 0.2.0(@goat-sdk/core@0.4.0)(ai@4.1.0(react@19.0.0)(zod@3.23.8)) '@goat-sdk/core': specifier: 0.4.0 version: 0.4.0 @@ -2063,7 +2093,7 @@ importers: dependencies: '@elizaos/adapter-sqlite': specifier: 0.1.7-alpha.2 - version: 0.1.7-alpha.2(@google-cloud/vertexai@1.9.2(encoding@0.1.13))(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13))(axios@1.7.9)(encoding@0.1.13)(react@19.0.0)(sswr@2.1.0(svelte@5.18.0))(svelte@5.18.0)(whatwg-url@14.1.0) + version: 0.1.7-alpha.2(@google-cloud/vertexai@1.9.2(encoding@0.1.13))(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)))(axios@1.7.9)(encoding@0.1.13)(react@19.0.0)(sswr@2.1.0(svelte@5.19.0))(svelte@5.19.0)(whatwg-url@14.1.0)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) '@elizaos/core': specifier: workspace:* version: link:../core @@ -2174,7 +2204,7 @@ importers: version: link:../core '@lens-network/sdk': specifier: ^0.0.0-canary-20241203140504 - version: 0.0.0-canary-20241203140504(ethers@6.13.4(bufferutil@4.0.9)(utf-8-validate@6.0.5))(viem@2.21.58(bufferutil@4.0.9)(typescript@5.7.3)(utf-8-validate@6.0.5)(zod@3.24.1))(zksync-ethers@6.15.3(ethers@6.13.4(bufferutil@4.0.9)(utf-8-validate@6.0.5))) + version: 0.0.0-canary-20241203140504(ethers@6.13.4(bufferutil@4.0.9)(utf-8-validate@6.0.5))(viem@2.21.58(bufferutil@4.0.9)(typescript@5.7.3)(utf-8-validate@6.0.5)(zod@3.24.1))(zksync-ethers@6.15.4(ethers@6.13.4(bufferutil@4.0.9)(utf-8-validate@6.0.5))) dotenv: specifier: ^16.0.3 version: 16.4.7 @@ -2192,7 +2222,7 @@ importers: version: 7.1.0 zksync-ethers: specifier: ^6.0.0 - version: 6.15.3(ethers@6.13.4(bufferutil@4.0.9)(utf-8-validate@6.0.5)) + version: 6.15.4(ethers@6.13.4(bufferutil@4.0.9)(utf-8-validate@6.0.5)) packages/plugin-letzai: dependencies: @@ -2319,7 +2349,7 @@ importers: version: link:../plugin-evm axios: specifier: ^1.6.7 - version: 1.7.9(debug@4.4.0) + version: 1.7.9 rate-limiter-flexible: specifier: ^5.0.4 version: 5.0.5 @@ -2383,7 +2413,7 @@ importers: version: 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) axios: specifier: ^1.7.9 - version: 1.7.9(debug@4.4.0) + version: 1.7.9 bs58: specifier: 6.0.0 version: 6.0.0 @@ -2410,10 +2440,10 @@ importers: dependencies: '@aws-sdk/client-s3': specifier: ^3.705.0 - version: 3.729.0 + version: 3.731.0 '@aws-sdk/s3-request-presigner': specifier: ^3.705.0 - version: 3.729.0 + version: 3.731.0 '@cliqz/adblocker-playwright': specifier: 1.34.0 version: 1.34.0(playwright@1.48.2) @@ -2477,9 +2507,6 @@ importers: gaxios: specifier: 6.7.1 version: 6.7.1(encoding@0.1.13) - gif-frames: - specifier: 0.4.1 - version: 0.4.1 glob: specifier: 11.0.0 version: 11.0.0 @@ -2646,7 +2673,7 @@ importers: dependencies: '@elizaos/core': specifier: ^0.1.7 - version: 0.1.8(@google-cloud/vertexai@1.9.2(encoding@0.1.13))(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13))(axios@1.7.9)(encoding@0.1.13)(react@19.0.0)(sswr@2.1.0(svelte@5.18.0))(svelte@5.18.0) + version: 0.1.8(@google-cloud/vertexai@1.9.2(encoding@0.1.13))(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)))(axios@1.7.9)(encoding@0.1.13)(react@19.0.0)(sswr@2.1.0(svelte@5.19.0))(svelte@5.19.0)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)) '@pythnetwork/client': specifier: ^2.22.0 version: 2.22.0(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) @@ -2819,7 +2846,7 @@ importers: version: link:../plugin-trustdb '@solana/spl-token': specifier: 0.4.9 - version: 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) + version: 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) '@solana/web3.js': specifier: 1.95.8 version: 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) @@ -2831,7 +2858,7 @@ importers: version: 6.0.0 fomo-sdk-solana: specifier: 1.3.2 - version: 1.3.2(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) + version: 1.3.2(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) form-data: specifier: 4.0.1 version: 4.0.1 @@ -2840,18 +2867,21 @@ importers: version: 5.1.2 pumpdotfun-sdk: specifier: 1.3.2 - version: 1.3.2(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(rollup@4.30.1)(typescript@5.7.3)(utf-8-validate@5.0.10) + version: 1.3.2(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(rollup@4.30.1)(typescript@5.6.3)(utf-8-validate@5.0.10) + solana-agent-kit: + specifier: ^1.4.0 + version: 1.4.1(@noble/hashes@1.7.0)(@solana/buffer-layout@4.0.1)(@swc/core@1.10.7(@swc/helpers@0.5.15))(@types/node@20.17.9)(arweave@1.15.5)(axios@1.7.9)(borsh@2.0.0)(buffer@6.0.3)(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(handlebars@4.7.8)(react@19.0.0)(sodium-native@3.4.1)(typescript@5.6.3)(utf-8-validate@5.0.10)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)) tsup: specifier: 8.3.5 - version: 8.3.5(@swc/core@1.10.7(@swc/helpers@0.5.15))(jiti@2.4.2)(postcss@8.5.1)(tsx@4.19.2)(typescript@5.7.3)(yaml@2.7.0) + version: 8.3.5(@swc/core@1.10.7(@swc/helpers@0.5.15))(jiti@2.4.2)(postcss@8.5.1)(tsx@4.19.2)(typescript@5.6.3)(yaml@2.7.0) vitest: specifier: 2.1.4 - version: 2.1.4(@types/node@22.10.7)(jsdom@25.0.1(bufferutil@4.0.9)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.37.0) + version: 2.1.4(@types/node@20.17.9)(jsdom@25.0.1(bufferutil@4.0.9)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.37.0) whatwg-url: specifier: 7.1.0 version: 7.1.0 - packages/plugin-solana-agentkit: + packages/plugin-solana-agent-kit: dependencies: '@coral-xyz/anchor': specifier: 0.30.1 @@ -2894,13 +2924,13 @@ importers: version: 1.3.2(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(rollup@4.30.1)(typescript@5.7.3)(utf-8-validate@5.0.10) solana-agent-kit: specifier: ^1.2.0 - version: 1.4.0(@noble/hashes@1.7.0)(@swc/core@1.10.7(@swc/helpers@0.5.15))(@types/node@20.17.9)(arweave@1.15.5)(axios@1.7.9)(borsh@2.0.0)(buffer@6.0.3)(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(handlebars@4.7.8)(react@19.0.0)(sodium-native@3.4.1)(typescript@5.7.3)(utf-8-validate@5.0.10) + version: 1.4.1(@noble/hashes@1.7.0)(@solana/buffer-layout@4.0.1)(@swc/core@1.10.7(@swc/helpers@0.5.15))(@types/node@22.10.7)(arweave@1.15.5)(axios@1.7.9)(borsh@2.0.0)(buffer@6.0.3)(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(handlebars@4.7.8)(react@19.0.0)(sodium-native@3.4.1)(typescript@5.7.3)(utf-8-validate@5.0.10)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)) tsup: specifier: 8.3.5 version: 8.3.5(@swc/core@1.10.7(@swc/helpers@0.5.15))(jiti@2.4.2)(postcss@8.5.1)(tsx@4.19.2)(typescript@5.7.3)(yaml@2.7.0) vitest: specifier: 2.1.4 - version: 2.1.4(@types/node@20.17.9)(jsdom@25.0.1(bufferutil@4.0.9)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.37.0) + version: 2.1.4(@types/node@22.10.7)(jsdom@25.0.1(bufferutil@4.0.9)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.37.0) whatwg-url: specifier: 7.1.0 version: 7.1.0 @@ -2958,7 +2988,7 @@ importers: version: link:../core axios: specifier: ^1.6.7 - version: 1.7.9(debug@4.4.0) + version: 1.7.9 tsup: specifier: ^8.3.5 version: 8.3.5(@swc/core@1.10.7(@swc/helpers@0.5.15))(jiti@2.4.2)(postcss@8.5.1)(tsx@4.19.2)(typescript@5.7.3)(yaml@2.7.0) @@ -3028,7 +3058,7 @@ importers: version: link:../core '@mysten/sui': specifier: ^1.16.0 - version: 1.19.0(typescript@5.7.3) + version: 1.20.0(typescript@5.7.3) bignumber.js: specifier: 9.1.2 version: 9.1.2 @@ -3349,8 +3379,8 @@ packages: peerDependencies: typescript: ^5.3.3 - '@3land/listings-sdk@0.0.4': - resolution: {integrity: sha512-Ljq8R4e7y+wl4m8BGhiInFPCHEzHZZFz1qghnbc8B3bLEKXWM9+2gZOCAa84rdUKuLfzenEdeS2LclTKhdKTFQ==} + '@3land/listings-sdk@0.0.6': + resolution: {integrity: sha512-1OG4qddbij7kLGcyRvwA9WUiif7DJi2gEWODHF4NnfgQHRl22yLSFHZeHPLlo9mE1T2LZnn0I6HtUxvUtCHCAQ==} '@abstract-foundation/agw-client@0.1.8': resolution: {integrity: sha512-MEPfFRWtEVXUuWkE43Vrqxzk7s+23cRtY2ctzqiZSiqJ+Hg4uPCymowmqPATdYgGNQXPCzUYNQN4tFxFWRMaFA==} @@ -3400,20 +3430,20 @@ packages: peerDependencies: zod: ^3.0.0 - '@ai-sdk/mistral@1.0.8': - resolution: {integrity: sha512-jWH4HHK4cYvXaac9UprMiSUBwOVb3e0hpbiL1wPb+2bF75pqQQKFQWQyfmoLFrh1oXlMOGn+B6IzwUDSFHLanA==} + '@ai-sdk/mistral@1.1.0': + resolution: {integrity: sha512-RPOAzk6baQ8R/Cw/N9189tX6CzSOHBNf+r4I5x2H08JCsEx8nycMgwqvVzZ5lhWhaKBvHaD3KoEQSyqyqW82Gg==} engines: {node: '>=18'} peerDependencies: zod: ^3.0.0 - '@ai-sdk/openai@1.0.19': - resolution: {integrity: sha512-7qmLgppWpGUhSgrH0a6CtgD9hZeRh2hARppl1B7fNhVbekYftSMucsdCiVlKbQzSKPxox0vkNMmwjKa/7xf8bQ==} + '@ai-sdk/openai@1.0.5': + resolution: {integrity: sha512-JDCPBJQx9o3LgboBPaA55v+9EZ7Vm/ozy0+J5DIr2jJF8WETjeCnigdxixyzEy/Od4wX871jOTSuGffwNIi0kA==} engines: {node: '>=18'} peerDependencies: zod: ^3.0.0 - '@ai-sdk/openai@1.0.5': - resolution: {integrity: sha512-JDCPBJQx9o3LgboBPaA55v+9EZ7Vm/ozy0+J5DIr2jJF8WETjeCnigdxixyzEy/Od4wX871jOTSuGffwNIi0kA==} + '@ai-sdk/openai@1.1.0': + resolution: {integrity: sha512-D2DaGMK89yYgO32n4Gr7gBJeJGGGS27gdfzYFMRDXlZmKh7VW1WXBp3FXxDwpmt0CgLoVI4qV8lf+gslah+kWw==} engines: {node: '>=18'} peerDependencies: zod: ^3.0.0 @@ -3445,8 +3475,8 @@ packages: zod: optional: true - '@ai-sdk/provider-utils@2.0.7': - resolution: {integrity: sha512-4sfPlKEALHPXLmMFcPlYksst3sWBJXmCDZpIBJisRrmwGG6Nn3mq0N1Zu/nZaGcrWZoOY+HT2Wbxla1oTElYHQ==} + '@ai-sdk/provider-utils@2.1.0': + resolution: {integrity: sha512-rBUabNoyB25PBUjaiMSk86fHNSCqTngNZVvXxv8+6mvw47JX5OexW+ZHRsEw8XKTE8+hqvNFVzctaOrRZ2i9Zw==} engines: {node: '>=18'} peerDependencies: zod: ^3.0.0 @@ -3482,8 +3512,8 @@ packages: zod: optional: true - '@ai-sdk/react@1.0.11': - resolution: {integrity: sha512-ndBPA7dx2DqUr7s4zO1cRAPkFGS+wWvSri6OWfCuhfyTAADQ4vdd56vFP9zdTZl4cyL27Vh0hKLfFJMGx83MUQ==} + '@ai-sdk/react@1.1.0': + resolution: {integrity: sha512-U5lBbLyf1pw79xsk5dgHSkBv9Jta3xzWlOLpxsmHlxh1X94QOH3e1gm+nioQ/JvTuHLm23j2tz3i4MpMdchwXQ==} engines: {node: '>=18'} peerDependencies: react: ^18 || ^19 || ^19.0.0-rc @@ -3521,8 +3551,8 @@ packages: zod: optional: true - '@ai-sdk/ui-utils@1.0.10': - resolution: {integrity: sha512-wZfZNH2IloTx5b1O8CU7/R/icm8EsmURElPckYwNYj2YZrKk9X5XeYSDBF/1/J83obzsn0i7VKkIf40qhRzVVA==} + '@ai-sdk/ui-utils@1.1.0': + resolution: {integrity: sha512-ETXwdHaHwzC7NIehbthDFGwsTFk+gNtRL/lm85nR4WDFvvYQptoM/7wTANs0p0H7zumB3Ep5hKzv0Encu8vSRw==} engines: {node: '>=18'} peerDependencies: zod: ^3.0.0 @@ -3752,167 +3782,155 @@ packages: '@aws-crypto/util@5.2.0': resolution: {integrity: sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ==} - '@aws-sdk/client-polly@3.726.1': - resolution: {integrity: sha512-Q4ZoSmCXskIQ3T5AdO0OyH3vCeoKCed9AjqNIZ5Bxo7T1aBLaIb0VmjKOEubsYrfl+0Ot++FRmy7G45UUHSs4Q==} + '@aws-sdk/client-polly@3.731.0': + resolution: {integrity: sha512-bl70HmWTwxgxub4xWPvvcdhWMBiDaCiXL4NKgVoAxzB1wy+W+GDwMVl1mfnXWNzKu2SZ8GSz5ow8X5sEvG6SZA==} engines: {node: '>=18.0.0'} - '@aws-sdk/client-s3@3.729.0': - resolution: {integrity: sha512-hpagpazcfOYtxE4nDlR/6JcaIdZ3T2BUt2Ev11Zyz2B5G8eC1dWJgvFsW7ws35252Nb6HTLkJajtnM3v9KtXGw==} + '@aws-sdk/client-s3@3.731.0': + resolution: {integrity: sha512-poo4GwUkPk7hZGxvM+GAnKsz78IJhzJ44dZu4M9xqQyzLvGDh2vVfgIHdpNajRbIrABhhdKF4Ox+VmdTqUqH6w==} engines: {node: '>=18.0.0'} - '@aws-sdk/client-sso-oidc@3.726.0': - resolution: {integrity: sha512-5JzTX9jwev7+y2Jkzjz0pd1wobB5JQfPOQF3N2DrJ5Pao0/k6uRYwE4NqB0p0HlGrMTDm7xNq7OSPPIPG575Jw==} + '@aws-sdk/client-sso@3.731.0': + resolution: {integrity: sha512-O4C/UYGgqMsBg21MMApFdgyh8BX568hQhbdoNFmRVTBoSnCZ3w+H4a1wBPX4Gyl0NX+ab6Xxo9rId8HiyPXJ0A==} engines: {node: '>=18.0.0'} - peerDependencies: - '@aws-sdk/client-sts': ^3.726.0 - '@aws-sdk/client-sso@3.726.0': - resolution: {integrity: sha512-NM5pjv2qglEc4XN3nnDqtqGsSGv1k5YTmzDo3W3pObItHmpS8grSeNfX9zSH+aVl0Q8hE4ZIgvTPNZ+GzwVlqg==} + '@aws-sdk/client-transcribe-streaming@3.731.0': + resolution: {integrity: sha512-t4U3pphnVWmIY+iVcUZZB/zqGuHoEvINB8Wl6JOf1e3qisZEa0MI4bwbOubXD6FGU3YAGFfhZaGuRJm0y2/faA==} engines: {node: '>=18.0.0'} - '@aws-sdk/client-sts@3.726.1': - resolution: {integrity: sha512-qh9Q9Vu1hrM/wMBOBIaskwnE4GTFaZu26Q6WHwyWNfj7J8a40vBxpW16c2vYXHLBtwRKM1be8uRLkmDwghpiNw==} + '@aws-sdk/core@3.731.0': + resolution: {integrity: sha512-ithBN1VWASkvAIlozJmenqDvNnFddr/SZXAs58+jCnBHgy3tXLHABZGVNCjetZkHRqNdXEO1kirnoxaFeXMeDA==} engines: {node: '>=18.0.0'} - '@aws-sdk/client-transcribe-streaming@3.726.1': - resolution: {integrity: sha512-A1FtcvFi0SnY193SEnhHVEGB8xaMKHJdioE6/TcW0oka2ezvfZkl6EsmKEP30vLov+NRRzzoHUjitdiYKOpVzg==} + '@aws-sdk/credential-provider-env@3.731.0': + resolution: {integrity: sha512-h0WWZg4QMLgFVyIvQrC43zpVqsUWg1mPM1clpogP43B8+wEhDEQ4qWRzvFs3dQ4cqx/FLyDUZZF4cqgd94z7kw==} engines: {node: '>=18.0.0'} - '@aws-sdk/core@3.723.0': - resolution: {integrity: sha512-UraXNmvqj3vScSsTkjMwQkhei30BhXlW5WxX6JacMKVtl95c7z0qOXquTWeTalYkFfulfdirUhvSZrl+hcyqTw==} + '@aws-sdk/credential-provider-http@3.731.0': + resolution: {integrity: sha512-iRtrjtcYaWgbvtu2cvDhIsPWXZGvhy1Hgks4682MEBNTc9AUwlfvDrYz2EEnTtJJyrbOdEHVrYrzqD8qPyVLCg==} engines: {node: '>=18.0.0'} - '@aws-sdk/credential-provider-env@3.723.0': - resolution: {integrity: sha512-OuH2yULYUHTVDUotBoP/9AEUIJPn81GQ/YBtZLoo2QyezRJ2QiO/1epVtbJlhNZRwXrToLEDmQGA2QfC8c7pbA==} + '@aws-sdk/credential-provider-ini@3.731.0': + resolution: {integrity: sha512-HpIx+SYt6gsY51DZo/msZxsV5ls+d++76Y3cILp5t1/h7SBkN6Rm9JWrsdFFmbooORn8FA1vMiGvZ+2yHeyp0Q==} engines: {node: '>=18.0.0'} - '@aws-sdk/credential-provider-http@3.723.0': - resolution: {integrity: sha512-DTsKC6xo/kz/ZSs1IcdbQMTgiYbpGTGEd83kngFc1bzmw7AmK92DBZKNZpumf8R/UfSpTcj9zzUUmrWz1kD0eQ==} + '@aws-sdk/credential-provider-node@3.731.0': + resolution: {integrity: sha512-pQV0p+uOxUURp+cGmfLF5sb/jG3nmzmv4jgsr2BlBk5v7ZQlRQJ2b5V7xCB8bpa73cuVRnahWmuB1iwsBEZykg==} engines: {node: '>=18.0.0'} - '@aws-sdk/credential-provider-ini@3.726.0': - resolution: {integrity: sha512-seTtcKL2+gZX6yK1QRPr5mDJIBOatrpoyrO8D5b8plYtV/PDbDW3mtDJSWFHet29G61ZmlNElyXRqQCXn9WX+A==} + '@aws-sdk/credential-provider-process@3.731.0': + resolution: {integrity: sha512-6yNMY6q3xHLbs2f2+C6GhvMrjTgtFBiPJJqKaPLsTIhlTRvh4sK8pGm3ITcma0jOxtPDIuoPfBAV8N8XVMBlZg==} engines: {node: '>=18.0.0'} - peerDependencies: - '@aws-sdk/client-sts': ^3.726.0 - '@aws-sdk/credential-provider-node@3.726.0': - resolution: {integrity: sha512-jjsewBcw/uLi24x8JbnuDjJad4VA9ROCE94uVRbEnGmUEsds75FWOKp3fWZLQlmjLtzsIbJOZLALkZP86liPaw==} + '@aws-sdk/credential-provider-sso@3.731.0': + resolution: {integrity: sha512-T9+ofACQDlf7x449xYM7OExHXEtPTC8oSDG1G46UiF+SXv/1fKjUQAGx90HxpPJSo2vDTtKpNG39HjkdXZBAwg==} engines: {node: '>=18.0.0'} - '@aws-sdk/credential-provider-process@3.723.0': - resolution: {integrity: sha512-fgupvUjz1+jeoCBA7GMv0L6xEk92IN6VdF4YcFhsgRHlHvNgm7ayaoKQg7pz2JAAhG/3jPX6fp0ASNy+xOhmPA==} + '@aws-sdk/credential-provider-web-identity@3.731.0': + resolution: {integrity: sha512-z3zfYob6MO9beaqSxGkSkSFKFkJR16RKVqTjIyt1AVqvvfYY71g5wTuOE+LnFMiNfwXS39S08+G9dfPeHgn6IQ==} engines: {node: '>=18.0.0'} - '@aws-sdk/credential-provider-sso@3.726.0': - resolution: {integrity: sha512-WxkN76WeB08j2yw7jUH9yCMPxmT9eBFd9ZA/aACG7yzOIlsz7gvG3P2FQ0tVg25GHM0E4PdU3p/ByTOawzcOAg==} + '@aws-sdk/eventstream-handler-node@3.731.0': + resolution: {integrity: sha512-JBTl1UwSlNtNeMoFxnT91czYqO1aR/1g0BAdWH74YZ6NYxMKJYiQsUhBBKYIDDA6XAyx6bAS7cuRPQb/bSawCw==} engines: {node: '>=18.0.0'} - '@aws-sdk/credential-provider-web-identity@3.723.0': - resolution: {integrity: sha512-tl7pojbFbr3qLcOE6xWaNCf1zEfZrIdSJtOPeSXfV/thFMMAvIjgf3YN6Zo1a6cxGee8zrV/C8PgOH33n+Ev/A==} + '@aws-sdk/middleware-bucket-endpoint@3.731.0': + resolution: {integrity: sha512-G9vuGW5GWCbzGOwlGFJcOkfxhw1cB6vzcv75QTT0CmciLXK+Cio8O2pqMSTTF2kg9Y6iHVC2BlOtLRkJAVOxVQ==} engines: {node: '>=18.0.0'} - peerDependencies: - '@aws-sdk/client-sts': ^3.723.0 - '@aws-sdk/eventstream-handler-node@3.723.0': - resolution: {integrity: sha512-CekxhxMH1GQe/kuoZsNFE8eonvmHVifyDK1MWfePyEp82/XvqPFWSnKlhT+SqoC6JfsMLmhsyCP/qqr9Du0SbQ==} + '@aws-sdk/middleware-eventstream@3.731.0': + resolution: {integrity: sha512-3JkdBR3ZlmwguGL7f1hG6ld5s1eB0VZ4GI8OPjbFhcAxXF3JE8n9KMvuxSpRJPzQ9IuA6xkZ0Z92PrzwSpnqJQ==} engines: {node: '>=18.0.0'} - '@aws-sdk/middleware-bucket-endpoint@3.726.0': - resolution: {integrity: sha512-vpaP80rZqwu0C3ELayIcRIW84/nd1tadeoqllT+N9TDshuEvq4UJ+w47OBHB7RkHFJoc79lXXNYle0fdQdaE/A==} + '@aws-sdk/middleware-expect-continue@3.731.0': + resolution: {integrity: sha512-oY4nsY/mb5O5eZCzIuWpyvzO45Bi6UBtE48IaJsoyVctagA1l8hB66aczH9M1NHNjvbS4Beu1agwh3Nyb1eJug==} engines: {node: '>=18.0.0'} - '@aws-sdk/middleware-eventstream@3.723.0': - resolution: {integrity: sha512-cL50YsgYSlAdAZf02iNwdHJuJHlgPyv/sePpt2PW5ZYSiE6A9/vqqptjDrUmUbpEw+ixmLD215OnyrnHN/MhEg==} + '@aws-sdk/middleware-flexible-checksums@3.731.0': + resolution: {integrity: sha512-LMs/rndovYjYSntSYyPE/PIl4iHNiquaU0lpDqpQc9iTgQcNbjdriSUWpibgu1jXlGBpBYCqttNkxmEThbbWxA==} engines: {node: '>=18.0.0'} - '@aws-sdk/middleware-expect-continue@3.723.0': - resolution: {integrity: sha512-w/O0EkIzkiqvGu7U8Ke7tue0V0HYM5dZQrz6nVU+R8T2LddWJ+njEIHU4Wh8aHPLQXdZA5NQumv0xLPdEutykw==} + '@aws-sdk/middleware-host-header@3.731.0': + resolution: {integrity: sha512-ndAJsm5uWPPJRZowLKpB1zuL17qWlWVtCJP4I/ynBkq1PU1DijDXBul2UZaG6Mpvsgms1NXo/h9noHuK7T3v8w==} engines: {node: '>=18.0.0'} - '@aws-sdk/middleware-flexible-checksums@3.729.0': - resolution: {integrity: sha512-GY92MQ7Pr8hK2rwKmOYSGMmfPQRCWRJ3s1aAIyJBpOHUejWdaNAi78vxeUzVkmGdVjUfF6hRTRAxqV7MnHwe/g==} + '@aws-sdk/middleware-location-constraint@3.731.0': + resolution: {integrity: sha512-1I2EjAFxrQksrzqdN7YYuY/q2YsjqeX4l7f9VOkdBjiZeDvVIEdM99IT5sISJB/r6CjNrYX5MhqGhE8i1VFchA==} engines: {node: '>=18.0.0'} - '@aws-sdk/middleware-host-header@3.723.0': - resolution: {integrity: sha512-LLVzLvk299pd7v4jN9yOSaWDZDfH0SnBPb6q+FDPaOCMGBY8kuwQso7e/ozIKSmZHRMGO3IZrflasHM+rI+2YQ==} + '@aws-sdk/middleware-logger@3.731.0': + resolution: {integrity: sha512-IIZrOdjbY2vKzPJPrwE7FoFQCIPEL6UqURi8LEaiVyCag4p2fvaTN5pgKuQtGC2+iYd/HHcGT4qn2bAqF5Jmmw==} engines: {node: '>=18.0.0'} - '@aws-sdk/middleware-location-constraint@3.723.0': - resolution: {integrity: sha512-inp9tyrdRWjGOMu1rzli8i2gTo0P4X6L7nNRXNTKfyPNZcBimZ4H0H1B671JofSI5isaklVy5r4pvv2VjjLSHw==} + '@aws-sdk/middleware-recursion-detection@3.731.0': + resolution: {integrity: sha512-y6FLASB1iKWuR5tUipMyo77bt0lEl3OnCrrd2xw/H24avq1HhJjjPR0HHhJE6QKJzF/FYXeV88tcyPSMe32VDw==} engines: {node: '>=18.0.0'} - '@aws-sdk/middleware-logger@3.723.0': - resolution: {integrity: sha512-chASQfDG5NJ8s5smydOEnNK7N0gDMyuPbx7dYYcm1t/PKtnVfvWF+DHCTrRC2Ej76gLJVCVizlAJKM8v8Kg3cg==} + '@aws-sdk/middleware-sdk-s3@3.731.0': + resolution: {integrity: sha512-J9aKyQaVoec5eWTSDfO4h2sKHNP0wTzN15LFcHnkD+e/d0rdmOi7BTkkbJrIaynma9WShIasmrtM3HNi9GiiTA==} engines: {node: '>=18.0.0'} - '@aws-sdk/middleware-recursion-detection@3.723.0': - resolution: {integrity: sha512-7usZMtoynT9/jxL/rkuDOFQ0C2mhXl4yCm67Rg7GNTstl67u7w5WN1aIRImMeztaKlw8ExjoTyo6WTs1Kceh7A==} + '@aws-sdk/middleware-sdk-transcribe-streaming@3.731.0': + resolution: {integrity: sha512-FE7koam/mSw3d2mDt7pzdBHOQwu6VaMMFzPYBjy2VlYD3I5Nl6yhFqHcq+Zqj3vm18Z+pVylf6VCzGJHe4nnuA==} engines: {node: '>=18.0.0'} - '@aws-sdk/middleware-sdk-s3@3.723.0': - resolution: {integrity: sha512-wfjOvNJVp8LDWhq4wO5jtSMb8Vgf4tNlR7QTEQfoYc6AGU3WlK5xyUQcpfcpwytEhQTN9u0cJLQpSyXDO+qSCw==} + '@aws-sdk/middleware-ssec@3.731.0': + resolution: {integrity: sha512-1HP4lxGcQx4awXgxfL8t9faBK7TqEL7zkAZrm/YBbLrT9oQomxZOHKIOHvo5VVh4qmsNBdqnH2XUlSMY71gsww==} engines: {node: '>=18.0.0'} - '@aws-sdk/middleware-sdk-transcribe-streaming@3.723.0': - resolution: {integrity: sha512-0j1iix2wthdNTGtG1oFBH3vqhBeIpw+9IRiPA0xXE8xOsqhLBHVbLtqC8/7eMdDWJHNVQdOLlMlGAbcFo6/4Jw==} + '@aws-sdk/middleware-user-agent@3.731.0': + resolution: {integrity: sha512-Ngr2Gz0aec/uduoKaO3srN52SYkEHndYtFzkK/gDUyQwQzi4ha2eIisxPiuHEX6RvXT31V9ouqn/YtVkt0R76A==} engines: {node: '>=18.0.0'} - '@aws-sdk/middleware-ssec@3.723.0': - resolution: {integrity: sha512-Bs+8RAeSMik6ZYCGSDJzJieGsDDh2fRbh1HQG94T8kpwBXVxMYihm6e9Xp2cyl+w9fyyCnh0IdCKChP/DvrdhA==} - engines: {node: '>=18.0.0'} + '@aws-sdk/middleware-websocket@3.731.0': + resolution: {integrity: sha512-WNl+hMD7ycy2oMerF8EReIEeb+4JZtqEtc8HD/2IsCJ1y1ul2JL10hX6fNfQtO5j03hs6975pETcZa0/ukwaXg==} + engines: {node: '>= 14.0.0'} - '@aws-sdk/middleware-user-agent@3.726.0': - resolution: {integrity: sha512-hZvzuE5S0JmFie1r68K2wQvJbzyxJFdzltj9skgnnwdvLe8F/tz7MqLkm28uV0m4jeHk0LpiBo6eZaPkQiwsZQ==} + '@aws-sdk/nested-clients@3.731.0': + resolution: {integrity: sha512-ePn94LgdOZpyZhOVAcYP6F7xgxvPHsoj8LiSuIcrrnxpeArOCt+cZeCdqtaLpoTjufvCPtj6536jY6OzynG56g==} engines: {node: '>=18.0.0'} - '@aws-sdk/middleware-websocket@3.723.0': - resolution: {integrity: sha512-dmp1miRv3baZgRKRlgsfpghUMFx1bHDVPW39caKVVOQLxMWtDt8a6JKGnYm19ew2JmSe+p9h/khdq073bPFslw==} - engines: {node: '>= 14.0.0'} - - '@aws-sdk/region-config-resolver@3.723.0': - resolution: {integrity: sha512-tGF/Cvch3uQjZIj34LY2mg8M2Dr4kYG8VU8Yd0dFnB1ybOEOveIK/9ypUo9ycZpB9oO6q01KRe5ijBaxNueUQg==} + '@aws-sdk/region-config-resolver@3.731.0': + resolution: {integrity: sha512-XlDpRNkDVHF59f07JmkuAidEv//m3hT6/JL85h0l3+zrpaRWhf8n8lVUyAPNq35ZujK8AcorYM+93u7hdWsliQ==} engines: {node: '>=18.0.0'} - '@aws-sdk/s3-request-presigner@3.729.0': - resolution: {integrity: sha512-5jfIFi/rygbUzyCY3PjcehXJRxwqqP3SS3klKxxR3p+fbZcKoV5sknn8hhYnfSPteCmOLqELNP+EG/9I+F3a2w==} + '@aws-sdk/s3-request-presigner@3.731.0': + resolution: {integrity: sha512-mJkAAoqsU7U1m93ur/YMjEs5qU9iAnse+UmQHM+0Siy9saA21X7i2tkO7JjA2ON6/JPBufUGsXJUjTQir2J4mQ==} engines: {node: '>=18.0.0'} - '@aws-sdk/signature-v4-multi-region@3.723.0': - resolution: {integrity: sha512-lJlVAa5Sl589qO8lwMLVUtnlF1Q7I+6k1Iomv2goY9d1bRl4q2N5Pit2qJVr2AMW0sceQXeh23i2a/CKOqVAdg==} + '@aws-sdk/signature-v4-multi-region@3.731.0': + resolution: {integrity: sha512-1r/b4Os15dR+BCVRRLVQJMF7Krq6xX6IKHxN43kuvODYWz8Nv3XDlaSpeRpAzyJuzW/fTp4JgE+z0+gmJfdEeA==} engines: {node: '>=18.0.0'} - '@aws-sdk/token-providers@3.723.0': - resolution: {integrity: sha512-hniWi1x4JHVwKElANh9afKIMUhAutHVBRD8zo6usr0PAoj+Waf220+1ULS74GXtLXAPCiNXl5Og+PHA7xT8ElQ==} + '@aws-sdk/token-providers@3.731.0': + resolution: {integrity: sha512-rPkYaB09aodCyw4pru94QHIr430X3ScHP5/PzaHYocs5h5a7I6oh5YnvKqDZO8Ws8NVUVNfCKkwotsM5nNyC7A==} engines: {node: '>=18.0.0'} - peerDependencies: - '@aws-sdk/client-sso-oidc': ^3.723.0 - '@aws-sdk/types@3.723.0': - resolution: {integrity: sha512-LmK3kwiMZG1y5g3LGihT9mNkeNOmwEyPk6HGcJqh0wOSV4QpWoKu2epyKE4MLQNUUlz2kOVbVbOrwmI6ZcteuA==} + '@aws-sdk/types@3.731.0': + resolution: {integrity: sha512-NrdkJg6oOUbXR2r9WvHP408CLyvST8cJfp1/jP9pemtjvjPoh6NukbCtiSFdOOb1eryP02CnqQWItfJC1p2Y/Q==} engines: {node: '>=18.0.0'} '@aws-sdk/util-arn-parser@3.723.0': resolution: {integrity: sha512-ZhEfvUwNliOQROcAk34WJWVYTlTa4694kSVhDSjW6lE1bMataPnIN8A0ycukEzBXmd8ZSoBcQLn6lKGl7XIJ5w==} engines: {node: '>=18.0.0'} - '@aws-sdk/util-endpoints@3.726.0': - resolution: {integrity: sha512-sLd30ASsPMoPn3XBK50oe/bkpJ4N8Bpb7SbhoxcY3Lk+fSASaWxbbXE81nbvCnkxrZCvkPOiDHzJCp1E2im71A==} + '@aws-sdk/util-endpoints@3.731.0': + resolution: {integrity: sha512-riztxTAfncFS9yQWcBJffGgOgLoKSa63ph+rxWJxKl6BHAmWEvHICj1qDcVmnWfIcvJ5cClclY75l9qKaUH7rQ==} engines: {node: '>=18.0.0'} - '@aws-sdk/util-format-url@3.723.0': - resolution: {integrity: sha512-70+xUrdcnencPlCdV9XkRqmgj0vLDb8vm4mcEsgabg5QQ3S80KM0GEuhBAIGMkBWwNQTzCgQy2s7xOUlJPbu+g==} + '@aws-sdk/util-format-url@3.731.0': + resolution: {integrity: sha512-wZHObjnYmiz8wFlUQ4/5dHsT7k0at+GvZM02LgvshcRJLnFjYdrzjelMKuNynd/NNK3gLgTsFTGuIgPpz9r4rA==} engines: {node: '>=18.0.0'} '@aws-sdk/util-locate-window@3.723.0': resolution: {integrity: sha512-Yf2CS10BqK688DRsrKI/EO6B8ff5J86NXe4C+VCysK7UOgN0l1zOTeTukZ3H8Q9tYYX3oaF1961o8vRkFm7Nmw==} engines: {node: '>=18.0.0'} - '@aws-sdk/util-user-agent-browser@3.723.0': - resolution: {integrity: sha512-Wh9I6j2jLhNFq6fmXydIpqD1WyQLyTfSxjW9B+PXSnPyk3jtQW8AKQur7p97rO8LAUzVI0bv8kb3ZzDEVbquIg==} + '@aws-sdk/util-user-agent-browser@3.731.0': + resolution: {integrity: sha512-EnYXxTkCNCjTTBjW/pelRPv4Thsi9jepoB6qQjPMA9/ixrZ71BhhQecz9kgqzZLR9BPCwb6hgJ/Yd702jqJ4aQ==} - '@aws-sdk/util-user-agent-node@3.726.0': - resolution: {integrity: sha512-iEj6KX9o6IQf23oziorveRqyzyclWai95oZHDJtYav3fvLJKStwSjygO4xSF7ycHcTYeCHSLO1FFOHgGVs4Viw==} + '@aws-sdk/util-user-agent-node@3.731.0': + resolution: {integrity: sha512-Rze78Ym5Bx7aWMvmZE2iL3JPo2INNCC5N9rLVx98Gg1G0ZaxclVRUvJrh1AojNlOFxU+otkxAe7FA3Foy2iLLQ==} engines: {node: '>=18.0.0'} peerDependencies: aws-crt: '>=1.0.0' @@ -4578,6 +4596,10 @@ packages: '@bcoe/v8-coverage@0.2.3': resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} + '@bcoe/v8-coverage@1.0.2': + resolution: {integrity: sha512-6zABk/ECA/QYSCQ1NGiVwwbQerUCZ+TQbp64Q3AgmfNvurHH0j8TtXa1qbShXA6qqkpAj4V5W8pP6mLe1mcMqA==} + engines: {node: '>=18'} + '@bigmi/core@0.0.4': resolution: {integrity: sha512-PtLwVOtKXeFNm9mk3gcoo5YmmUSSGxZFjBSX7Wh+5ubRlPAq40D8VqngO0R3/gnFflopQJ4y+igPOz+0J2cQ3A==} peerDependencies: @@ -4661,14 +4683,17 @@ packages: '@brandonblack/musig@0.0.1-alpha.1': resolution: {integrity: sha512-00RbByQG85lSzrkDjCblzrUc2n1LJAPPrEMHS4oMg+QckE0kzjd26JytT6yx6tNU2+aOXfK7O4kGW/sKVL67cw==} + '@brokerloop/ttlcache@3.2.3': + resolution: {integrity: sha512-kZWoyJGBYTv1cL5oHBYEixlJysJBf2RVnub3gbclD+dwaW9aKubbHzbZ9q1q6bONosxaOqMsoBorOrZKzBDiqg==} + '@cfworker/json-schema@4.1.0': resolution: {integrity: sha512-/vYKi/qMxwNsuIJ9WGWwM2rflY40ZenK3Kh4uR5vB9/Nz12Y7IUN/Xf4wDA7vzPfw0VNh3b/jz4+MjcVgARKJg==} - '@chain-registry/types@0.50.50': - resolution: {integrity: sha512-H+sGuL8HTr0iFO4PJlBC9MLfrFR+NsD6sFSoFh2+4+obBCVuc3tp5tz/CSfLy04tIySgLlbmqMxkMNkgv1ZpXg==} + '@chain-registry/types@0.50.51': + resolution: {integrity: sha512-ychIe0Pvl4fJjYlPJTwxwLFqQ7XVFczTlcdJASUEhLq/sBgKzisw2B+YHGjM+8xs2HACOSs05GHmYTi6OvxTIg==} - '@chain-registry/utils@1.51.50': - resolution: {integrity: sha512-IkJKGelpCQko20KVXT4iTslF54iUSmcnJTM2cByvTRPN8q9/oeSVHSyYcAWVI2iiUAwbMZJhNeUQxu+i0+OPow==} + '@chain-registry/utils@1.51.51': + resolution: {integrity: sha512-SVQ3ZeueIIWD927cxlyVHtJgOxuRmLO3SgyyuPq+rtoUbaIbzbL0Nw5nwaE7tii5l6qeBNl/3l72cmoDdCfKcw==} '@chevrotain/cst-dts-gen@11.0.3': resolution: {integrity: sha512-BvIKpRLeS/8UbfxXxgC33xOumsacaeCKAjAeLyOn7Pcp95HiRbrpl14S+9vaZLolnbssPIUuiUd8IvgkRyt6NQ==} @@ -4815,6 +4840,10 @@ packages: resolution: {integrity: sha512-+P/vPdORawvg3A9Wj02iquxb4T0C5m4P6aZBVYysKl4Amk+r6aMPZkUhilBkD6E4Nuxnoajv3CFykUfkGE0n5g==} engines: {node: '>=11'} + '@coral-xyz/anchor@0.28.0': + resolution: {integrity: sha512-kQ02Hv2ZqxtWP30WN1d4xxT4QqlOXYDxmEd3k/bbneqhV3X5QMO4LAtoUFs7otxyivOgoqam5Il5qx81FuI4vw==} + engines: {node: '>=11'} + '@coral-xyz/anchor@0.29.0': resolution: {integrity: sha512-eny6QNG0WOwqV0zQ7cs/b1tIuzZGmP7U7EcH+ogt4Gdbl8HDmIYVMh/9aTmYZPaFWjtUaI8qSn73uYEXWfATdA==} engines: {node: '>=11'} @@ -5521,6 +5550,18 @@ packages: resolution: {integrity: sha512-e7zcB6TPnVzyUaHMJyLSArKa2AG3h9+4CfvKXKKWNx6hRs+p0a+u7HHTJBgo6KW2m+vqDnuIHK4X+bhmoghAFA==} engines: {node: '>=18.0'} + '@drift-labs/sdk@2.107.0-beta.3': + resolution: {integrity: sha512-pRWTRpAVYAhJZI+5WxrAzSMnU+1IiJXuTPanY9eNZZUn9S//RRc3CXigM/ogeGPaOolizBZDejwy2Igz7h22JQ==} + engines: {node: '>=20.18.0'} + + '@drift-labs/sdk@2.107.0-beta.7': + resolution: {integrity: sha512-EadXzQf1WhBk2kZC8mrnKpG7Zax9wbO2HQNtHIazkDuMmtnsOF3SUDMyxkuxEyVoB6MrAZ630UZi9rFjzJve/A==} + engines: {node: '>=20.18.0'} + + '@drift-labs/vaults-sdk@0.2.55': + resolution: {integrity: sha512-zxDpvez+qA4yFd8XFhKoo2cGlMQorSL9MfQybIwKa0N0v4Qq5EI6qmaggfN4tAJZzD//A1vD413jSzsLSXtWRg==} + engines: {node: '>=16'} + '@echogarden/audio-io@0.2.3': resolution: {integrity: sha512-3p6oGhuCvfwcEWE52hJ2pMAY05qz1UeHXuITp+ijG2b5z3qizJT4IsP6ZIfiXYg8pW8maUnbwPOLbazpJv2KYQ==} engines: {node: '>=18'} @@ -5581,6 +5622,9 @@ packages: '@elizaos/core@0.1.8': resolution: {integrity: sha512-nQT5uQTQVTZJ3CrhVkK4dRdP/RuBMiOv/u3JZvMJGhY45z0Gy0gY27NEn/BBlJ4Ymt/SmqtXOul/x2hOeQen4Q==} + '@ellipsis-labs/phoenix-sdk@1.4.5': + resolution: {integrity: sha512-vEYgMXuV5/mpnpEi+VK4HO8f6SheHtVLdHHlULBiDN1eECYmL67gq+/cRV7Ar6jAQ7rJZL7xBxhbUW5kugMl6A==} + '@emnapi/core@1.3.1': resolution: {integrity: sha512-pVGjBIt1Y6gg3EJN8jTcfpP/+uuRksIo055oE/OBkDNcjZqVbfkWCksG1Jp4yZnj3iKWyWX8fdG/j6UDYPbFog==} @@ -5644,6 +5688,12 @@ packages: '@emotion/weak-memoize@0.4.0': resolution: {integrity: sha512-snKqtPW01tN0ui7yu9rGv69aJXr/a/Ywvl11sUjNtEcRc+ng/mQriFL0wLXMef74iHa/EkftbDzU9F8iFbH+zg==} + '@ensdomains/ens-validation@0.1.0': + resolution: {integrity: sha512-rbDh2K6GfqXvBcJUISaTTYEt3f079WA4ohTE5Lh4/8EaaPAk/9vk3EisMUQV2UVxeFIZQEEyRCIOmRTpqN0W7A==} + + '@ensdomains/eth-ens-namehash@2.0.15': + resolution: {integrity: sha512-JRDFP6+Hczb1E0/HhIg0PONgBYasfGfDheujmfxaZaAv/NAH4jE6Kf48WbqfRZdxt4IZI3jl3Ri7sZ1nP09lgw==} + '@es-joy/jsdoccomment@0.41.0': resolution: {integrity: sha512-aKUhyn1QI5Ksbqcr3fFJj16p99QdjUxXAEuFst1Z47DRyoiMwivIH9MV/ARcJOCXVjPfjITciej8ZD2O/6qUmw==} engines: {node: '>=16'} @@ -6908,9 +6958,15 @@ packages: peerDependencies: google-protobuf: ^3.14.0 + '@injectivelabs/core-proto-ts@0.0.21': + resolution: {integrity: sha512-RBxSkRBCty60R/l55/D1jsSW0Aof5dyGFhCFdN3A010KjMv/SzZGGr+6DZPY/hflyFeaJzDv/VTopCymKNRBvQ==} + '@injectivelabs/core-proto-ts@1.13.4': resolution: {integrity: sha512-81+bwey0qzNgOzUASsxYghSahcWzH5l6bSceW8FdR7w42+Knp+bAgbg12sSyS1hiOO2kMXx6tBvmYkCmnghM1Q==} + '@injectivelabs/dmm-proto-ts@1.0.19': + resolution: {integrity: sha512-2FCzCziy1RhzmnkAVIU+Asby/GXAVQqKt5/o1s52j0LJXfJMpiCrV6soLfnjTebj61T+1WvJBPFoZCCiVYBpcw==} + '@injectivelabs/exceptions@1.14.33': resolution: {integrity: sha512-2c8YzLgwTOOsyc1WheqdM8jEfgGBhVrXN4cZ0jsikFVsLF619IDRn3hjIYqTeNERaEpeRPiuJGfZDu0DomwFrQ==} @@ -6932,12 +6988,18 @@ packages: peerDependencies: google-protobuf: ^3.14.0 + '@injectivelabs/indexer-proto-ts@1.11.32': + resolution: {integrity: sha512-gCkbMlBq34MY2xZcauDEsCP0h5l/FgKMwCgJ8aWGaTkh27XBWpl1zvlreuWg/IpSvTPJZBoADW9KqixqyoBdJw==} + '@injectivelabs/indexer-proto-ts@1.13.3': resolution: {integrity: sha512-rLesVPCARl+OC82vj063/pUawYu0ISty/2+xg6ya4Lwk6PDbXmtRvw8wpNP6K+pAsBOKaSkRnO4ThP5qbX+E6A==} '@injectivelabs/injective-sdk-client-ts@file:packages/plugin-injective/injective-sdk-client-ts': resolution: {directory: packages/plugin-injective/injective-sdk-client-ts, type: directory} + '@injectivelabs/mito-proto-ts@1.0.55': + resolution: {integrity: sha512-clFKpU/LCYvYiPg5PRjhVJFTxKcfJHzaj5saJHuL32LaOaB3Rd8L3CqP9qUrg78L7eKjjXjyG97U3NdRdZBlWg==} + '@injectivelabs/mito-proto-ts@1.13.0': resolution: {integrity: sha512-DE9iK7PkEnkWAMTDJDH01R8jxkxVCNuurfVp/09Te9wY3dm3mRx9M6R756JywP2Sd/ggJl2UbavGAQe2pZ7v1w==} @@ -6959,6 +7021,9 @@ packages: '@injectivelabs/sdk-ts@1.14.34-beta.2': resolution: {integrity: sha512-L5T/GCm+3b0CjRS5SSNpT4Rq9OgsbtcnH3xcB2V/I9a/u+6AssNiG3CiNRnqjeU74GqH5+M3y/tKIIS0bsnrRw==} + '@injectivelabs/sdk-ts@1.14.5': + resolution: {integrity: sha512-j/6EcvNgQn563L0P5x80cZDTbYYbsXmHgtIbj8DCzemzgPRadmZLtlMDBjMQZ0ZcMhDSMfVOCINBOB2bBz2qMw==} + '@injectivelabs/test-utils@1.14.33': resolution: {integrity: sha512-1SfIRsMnWcJAYNrrpY+ZUWmbD62lWWdIvD6c+FYmFKS14zU3yDIK9NXe9g1lTM/GdUVkVKQgGg2QAYZ5f2G/xA==} @@ -6992,6 +7057,10 @@ packages: '@irys/bundles@0.0.1': resolution: {integrity: sha512-yeQNzElERksFbfbNxJQsMkhtkI3+tNqIMZ/Wwxh76NVBmCnCP5huefOv7ET0MOO7TEQL+TqvKSqmFklYSvTyHw==} + '@irys/query@0.0.1': + resolution: {integrity: sha512-7TCyR+Qn+F54IQQx5PlERgqNwgIQik8hY55iZl/silTHhCo1MI2pvx5BozqPUVCc8/KqRsc2nZd8Bc29XGUjRQ==} + engines: {node: '>=16.10.0'} + '@irys/query@0.0.8': resolution: {integrity: sha512-J8zCZDos2vFogSbroCJHZJq5gnPZEal01Iy3duXAotjIMgrI2ElDANiqEbaP1JAImR1jdUo1ChJnZB7MRLN9Hw==} engines: {node: '>=16.10.0'} @@ -7000,6 +7069,12 @@ packages: resolution: {integrity: sha512-uBIy8qeOQupUSBzR+1KU02JJXFp5Ue9l810PIbBF/ylUB8RTreUFkyyABZ7J3FUaOIXFYrT7WVFSJSzXM7P+8w==} engines: {node: '>=16.10.0'} + '@irys/sdk@0.0.2': + resolution: {integrity: sha512-un/e/CmTpgT042gDwCN3AtISrR9OYGMY6V+442pFmSWKrwrsDoIXZ8VlLiYKnrtTm+yquGhjfYy0LDqGWq41pA==} + engines: {node: '>=16.10.0'} + deprecated: 'Arweave support is deprecated - We recommend migrating to the Irys datachain: https://migrate-to.irys.xyz/' + hasBin: true + '@irys/sdk@0.2.11': resolution: {integrity: sha512-z3zKlKYEqRHuCGyyVoikL1lT4Jwt8wv7e4MrMThNfhfT/bdKQHD9lEVsX77DBnLJrBBKKg5rRcEzMtVkpNx3QA==} engines: {node: '>=16.10.0'} @@ -7137,6 +7212,14 @@ packages: '@jspm/core@2.1.0': resolution: {integrity: sha512-3sRl+pkyFY/kLmHl0cgHiFp2xEqErA8N3ECjMs7serSUBmoJ70lBa0PG5t0IM6WJgdZNyyI0R8YFfi5wM8+mzg==} + '@keplr-wallet/types@0.12.175': + resolution: {integrity: sha512-wAno7XnVsAvFTQ2KeXyly8fTxR61NjkZwhOByuCzFtbYlFH0IG6spOtRgip8+X7aRbNXQQBOz6xgFSY02yyJpA==} + peerDependencies: + starknet: ^6 + + '@keplr-wallet/unit@0.12.175': + resolution: {integrity: sha512-2JwX1dfNC889oBHQ7yFQTKAHy9VUEQOwatVtszLQaEd2h0DsIxL6TEO5Zpq30R+SPhrnhTqDPtLFaESn4dizGQ==} + '@kikobeats/time-span@1.0.5': resolution: {integrity: sha512-txRAdmi35N1wnsLS1AO5mTlbY5Cv5/61WXqek2y3L9Q7u4mgdUVq819so5xe753hL5gYeLzlWoJ/VJfXg9nx8g==} engines: {node: '>= 18'} @@ -7184,6 +7267,36 @@ packages: peerDependencies: '@langchain/core': '>=0.2.21 <0.4.0' + '@ledgerhq/devices@6.27.1': + resolution: {integrity: sha512-jX++oy89jtv7Dp2X6gwt3MMkoajel80JFWcdc0HCouwDsV1mVJ3SQdwl/bQU0zd8HI6KebvUP95QTwbQLLK/RQ==} + + '@ledgerhq/devices@8.4.4': + resolution: {integrity: sha512-sz/ryhe/R687RHtevIE9RlKaV8kkKykUV4k29e7GAVwzHX1gqG+O75cu1NCJUHLbp3eABV5FdvZejqRUlLis9A==} + + '@ledgerhq/errors@6.19.1': + resolution: {integrity: sha512-75yK7Nnit/Gp7gdrJAz0ipp31CCgncRp+evWt6QawQEtQKYEDfGo10QywgrrBBixeRxwnMy1DP6g2oCWRf1bjw==} + + '@ledgerhq/hw-app-solana@7.2.4': + resolution: {integrity: sha512-1k6XdTFNUJyk9GpXtymPRYq+OdMPIkPZ681ZkrMdSquTJV7W0LgK2oq1BacOVaVe6yDZKEqdR10RUTalhX1Mjg==} + + '@ledgerhq/hw-transport-node-hid-noevents@6.30.5': + resolution: {integrity: sha512-nOPbhFU87LgLERVAQ+HhxV8E8c+7d8ptllkgiJUc4QwL2z9zkIOAEtgdvCaZ066Oi9XGnln/GF1oAgByYnYDPw==} + + '@ledgerhq/hw-transport-node-hid@6.29.5': + resolution: {integrity: sha512-2bAp4K50V1kdCufU9JdQPcw4aLyvA+yQRJU/X39B+PC+rnis40gEbqNh0henhzv876sXdbNk6G/MkDWXpwDIow==} + + '@ledgerhq/hw-transport-webhid@6.27.1': + resolution: {integrity: sha512-u74rBYlibpbyGblSn74fRs2pMM19gEAkYhfVibq0RE1GNFjxDMFC1n7Sb+93Jqmz8flyfB4UFJsxs8/l1tm2Kw==} + + '@ledgerhq/hw-transport@6.27.1': + resolution: {integrity: sha512-hnE4/Fq1YzQI4PA1W0H8tCkI99R3UWDb3pJeZd6/Xs4Qw/q1uiQO+vNLC6KIPPhK0IajUfuI/P2jk0qWcMsuAQ==} + + '@ledgerhq/hw-transport@6.31.4': + resolution: {integrity: sha512-6c1ir/cXWJm5dCWdq55NPgCJ3UuKuuxRvf//Xs36Bq9BwkV2YaRQhZITAkads83l07NAdR16hkTWqqpwFMaI6A==} + + '@ledgerhq/logs@6.12.0': + resolution: {integrity: sha512-ExDoj1QV5eC6TEbMdLUMMk9cfvNKhhv5gXol4SmULRVCx/3iyCPhJ74nsb3S0Vb+/f+XujBEj3vQn5+cwS0fNA==} + '@leichtgewicht/ip-codec@2.0.5': resolution: {integrity: sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw==} @@ -7361,6 +7474,23 @@ packages: '@types/react': '>=16' react: '>=16' + '@mercurial-finance/dynamic-amm-sdk@1.1.19': + resolution: {integrity: sha512-e828SZkwSdzLKrQjOyr+/dyKdLKebwwR+rQj/CC3m3HvzaM1E1PgAaafjv4C/Z4eTR1TVdCNIq5p2bJtEDTPiQ==} + peerDependencies: + '@solana/buffer-layout': ^3 || ^4 + + '@mercurial-finance/dynamic-amm-sdk@1.1.23': + resolution: {integrity: sha512-bI1X+785iqGiys5iLbuI6G1oGSP5crE1Taw2HEFIhKGbEssi6nRHVI9F6YyZbKq00PKKi8DjFoVAwN7J3RNmPg==} + peerDependencies: + '@solana/buffer-layout': ^3 || ^4 + + '@mercurial-finance/token-math@6.0.0': + resolution: {integrity: sha512-/o2Kr+gXXE4UvkBJ4QLcbiBmKUyBvU1C0tty6y4smJxEItJYiH6yQzRSWpkBhP5Q387n/j05nqoizX4uZkBlwg==} + engines: {node: '>=10'} + + '@mercurial-finance/vault-sdk@2.2.0': + resolution: {integrity: sha512-Q6Ejkl/mDXR+d4K1p9TL0FJ8p18hQH2rUwPwq+1twLxoHvmHeHM+9bfU3iMLQ+odcC6vh3LXBiMEBdyzgMGXlg==} + '@mermaid-js/parser@0.3.0': resolution: {integrity: sha512-HsvL6zgE5sUPGgkIDlmAWR1HTNHz2Iy11BAWPTa4Jjabkpguy4Ze2gzfLrg6pdRuBvFwgUYyxiaNqZwrEEXepA==} @@ -7392,12 +7522,28 @@ packages: '@metaplex-foundation/cusper@0.0.2': resolution: {integrity: sha512-S9RulC2fFCFOQraz61bij+5YCHhSO9llJegK8c8Y6731fSi6snUSQJdCUqYS8AIgR0TKbQvdvgSyIIdbDFZbBA==} + '@metaplex-foundation/js@0.20.1': + resolution: {integrity: sha512-aqiLoEiToXdfI5pS+17/GN/dIO2D31gLoVQvEKDQi9XcnOPVhfJerXDmwgKbhp79OGoYxtlvVw+b2suacoUzGQ==} + deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. + '@metaplex-foundation/mpl-auction-house@2.5.1': resolution: {integrity: sha512-O+IAdYVaoOvgACB8pm+1lF5BNEjl0COkqny2Ho8KQZwka6aC/vHbZ239yRwAMtJhf5992BPFdT4oifjyE0O+Mw==} + '@metaplex-foundation/mpl-bubblegum@0.6.2': + resolution: {integrity: sha512-4tF7/FFSNtpozuIGD7gMKcqK2D49eVXZ144xiowC5H1iBeu009/oj2m8Tj6n4DpYFKWJ2JQhhhk0a2q7x0Begw==} + '@metaplex-foundation/mpl-bubblegum@0.7.0': resolution: {integrity: sha512-HCo6q+nh8M3KRv9/aUaZcJo5/vPJEeZwPGRDWkqN7lUXoMIvhd83fZi7MB1rIg1gwpVHfHqim0A02LCYKisWFg==} + '@metaplex-foundation/mpl-candy-guard@0.3.2': + resolution: {integrity: sha512-QWXzPDz+6OR3957LtfW6/rcGvFWS/0AeHJa/BUO2VEVQxN769dupsKGtrsS8o5RzXCeap3wrCtDSNxN3dnWu4Q==} + + '@metaplex-foundation/mpl-candy-machine-core@0.1.2': + resolution: {integrity: sha512-jjDkRvMR+iykt7guQ7qVnOHTZedql0lq3xqWDMaenAUCH3Xrf2zKATThhJppIVNX1/YtgBOO3lGqhaFbaI4pCw==} + + '@metaplex-foundation/mpl-candy-machine@5.1.0': + resolution: {integrity: sha512-pjHpUpWVOCDxK3l6dXxfmJKNQmbjBqnm5ElOl1mJAygnzO8NIPQvrP89y6xSNyo8qZsJyt4ZMYUyD0TdbtKZXQ==} + '@metaplex-foundation/mpl-core@1.1.1': resolution: {integrity: sha512-h1kLw+cGaV8SiykoHDb1/G01+VYqtJXAt0uGuO5+2Towsdtc6ET4M62iqUnh4EacTVMIW1yYHsKsG/LYWBCKaA==} peerDependencies: @@ -7500,6 +7646,22 @@ packages: '@metaplex-foundation/umi@0.9.2': resolution: {integrity: sha512-9i4Acm4pruQfJcpRrc2EauPBwkfDN0I9QTvJyZocIlKgoZwD6A6wH0PViH1AjOVG5CQCd1YI3tJd5XjYE1ElBw==} + '@meteora-ag/alpha-vault@1.1.7': + resolution: {integrity: sha512-wIfACyzT8XjMUxx/BKNtmb+nrn/jOne03tkVh5oEdTCas0dCCTHSjUZhkC7/X92+KjNNWckMGmHutE6EZzYdIA==} + + '@meteora-ag/dlmm@1.3.0': + resolution: {integrity: sha512-k3VdtisuNaSavTY+M8vLsB3wqqpC/dyFPujp6MScz85Nj0Beuua6PRg5XSjzhAt8rbuXcnTSKWCTYzc24UMHmA==} + + '@meteora-ag/dlmm@1.3.8': + resolution: {integrity: sha512-c5mOL/EUh0tDzHO/8tflJtmaDnkzz+jgUDCYzCCpEw6Z4qbW7PtZQhKopuQl90rNBfeVHCyezcWk7PQpwIae6w==} + + '@meteora-ag/m3m3@1.0.4': + resolution: {integrity: sha512-tjNsQ7qCE9LAyZ8TpyNsg8kOiaarAQ91ckAGObKO/gcDkUfm5m/qrDo3qypN9aCAcFnNmvsuJecrJnLhRGq33g==} + + '@meteora-ag/stake-for-fee@1.0.28': + resolution: {integrity: sha512-FevXshZyeFD+CpYoYBrg95lRx8CyrhV5R31IteNzGlSRcQ6NWFRhTmgxtt+yMHFGj8+24qwfBUrBCNx2vT/G4A==} + deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. + '@motionone/animation@10.18.0': resolution: {integrity: sha512-9z2p5GFGCm0gBsZbi8rVMOAJCtw1WqBTIPw3ozk06gDvZInBPIsQcHgYogEJ4yuHJ+akuW8g1SEIOpTOvYs8hw==} @@ -7553,8 +7715,8 @@ packages: '@mysten/bcs@1.2.1': resolution: {integrity: sha512-RMSaUsNb8oR0rTRVIOOcyoEVJqQi6DLvMXN+7mvDcki12FJFQ0lF89zQa7AV7cIurWlDQfJ8VIbCuRDyK+955A==} - '@mysten/sui@1.19.0': - resolution: {integrity: sha512-hjNCArz7upZaGZNNmMeQRKSlQK73eN+p8MlKJvlZpx/6gorK0WWFWWjEcIyJndkIDbLb06nbQbWIWZ8KoI036Q==} + '@mysten/sui@1.20.0': + resolution: {integrity: sha512-/XLogwOYaSP31lPt377fj5b+8sRIyt2Opi/Ssos5dssPqol9vgvN/ZzV5Y5qVl4VquhATJHRpwV33B5rIVi7Ow==} engines: {node: '>=18'} '@napi-rs/wasm-runtime@0.2.4': @@ -7709,6 +7871,9 @@ packages: '@noble/ed25519@1.7.3': resolution: {integrity: sha512-iR8GBkDt0Q3GyaVcIu7mSsVIqnFbkbRzGLWlvhwunacoLwt4J3swfKhfaM6rN6WY+TBGoYT1GtT1mIh2/jGbRQ==} + '@noble/hashes@1.1.3': + resolution: {integrity: sha512-CE0FCR57H2acVI5UOzIGSSIYxZ6v/HOhDR0Ro9VLyhnzLwx0o8W1mmgaqlEUx4049qJDlIBRztv5k+MM8vbO3A==} + '@noble/hashes@1.3.0': resolution: {integrity: sha512-ilHEACi9DwqJB0pw7kv+Apvh50jiiSyR/cQ3y4W7lOR5mhvn/50FLUfsnfJz0BDZtl/RR16kXvptiv6q1msYZg==} @@ -8141,8 +8306,8 @@ packages: resolution: {integrity: sha512-9Bb014e+m2TgBeEJGEbdplMVWwPmL1FPtggHQRkV+WVsMggPtEkLKPlcVYm/o8xKLkpJ7B+6N8WfQMtDLX2Dpw==} engines: {node: '>= 18'} - '@octokit/request@9.1.4': - resolution: {integrity: sha512-tMbOwGm6wDII6vygP3wUVqFTw3Aoo0FnVQyhihh8vVq12uO3P+vQZeo2CKMpWtPSogpACD0yyZAlVlQnjW71DA==} + '@octokit/request@9.2.0': + resolution: {integrity: sha512-kXLfcxhC4ozCnAXy2ff+cSxpcF0A1UqxjvYMqNuPIeOAzJbVWQ+dy5G2fTylofB/gTbObT8O6JORab+5XtA1Kw==} engines: {node: '>= 18'} '@octokit/rest@19.0.11': @@ -8251,6 +8416,9 @@ packages: engines: {node: '>=16'} hasBin: true + '@openbook-dex/openbook-v2@0.2.10': + resolution: {integrity: sha512-JOroVQHeia+RbghpluDJB5psUIhdhYRPLu0zWoG0h5vgDU4SjXwlcC+LJiIa2HVPasvZjWuCtlKWFyrOS75lOA==} + '@opendocsg/pdf2md@0.1.32': resolution: {integrity: sha512-UK4qVuesmUcpPZXMeO8FwRqpCNwJRBTHcae4j+3Mr3bxrNqilZIIowdrzgcgn8fSQ2Dg/P4/0NoPkxAvf9D5rw==} hasBin: true @@ -8584,10 +8752,28 @@ packages: '@primuslabs/zktls-core-sdk@0.1.0': resolution: {integrity: sha512-Jnboy9xr7NPMewPZkky7J2bCOzw0t8X1r072VlbTyR8yc+88/uFhx/LvBgIYiajiGO12DY3o1SlV4SSYZOyFOg==} + '@project-serum/anchor@0.11.1': + resolution: {integrity: sha512-oIdm4vTJkUy6GmE6JgqDAuQPKI7XM4TPJkjtoIzp69RZe0iAD9JP2XHx7lV1jLdYXeYHqDXfBt3zcq7W91K6PA==} + engines: {node: '>=11'} + + '@project-serum/anchor@0.24.2': + resolution: {integrity: sha512-0/718g8/DnEuwAidUwh5wLYphUYXhUbiClkuRNhvNoa+1Y8a4g2tJyxoae+emV+PG/Gikd/QUBNMkIcimiIRTA==} + engines: {node: '>=11'} + '@project-serum/anchor@0.26.0': resolution: {integrity: sha512-Nq+COIjE1135T7qfnOHEn7E0q39bQTgXLFk837/rgFe6Hkew9WML7eHsS+lSYD2p3OJaTiUOHTAq1lHy36oIqQ==} engines: {node: '>=11'} + '@project-serum/borsh@0.2.5': + resolution: {integrity: sha512-UmeUkUoKdQ7rhx6Leve1SssMR/Ghv8qrEiyywyxSWg7ooV7StdpPBhciiy5eB3T0qU1BXvdRNC8TdrkxK7WC5Q==} + engines: {node: '>=10'} + peerDependencies: + '@solana/web3.js': ^1.2.0 + + '@project-serum/serum@0.13.65': + resolution: {integrity: sha512-BHRqsTqPSfFB5p+MgI2pjvMBAQtO8ibTK2fYY96boIFkCI3TTwXDt2gUmspeChKO2pqHr5aKevmexzAcXxrSRA==} + engines: {node: '>=10'} + '@protobufjs/aspromise@1.1.2': resolution: {integrity: sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==} @@ -8633,6 +8819,9 @@ packages: peerDependencies: '@solana/web3.js': ^1.30.2 + '@pythnetwork/client@2.5.3': + resolution: {integrity: sha512-NBLxPnA6A3tZb/DYUooD4SO63UJ70s9DzzFPGXcQNBR9itcycp7aaV+UA5oUPloD/4UHL9soo2fRuDVur0gmhA==} + '@pythnetwork/hermes-client@1.3.0': resolution: {integrity: sha512-SneB+LJSD6pNnG2JUuAgbHNi1qFDcnrIiMuU60FQxZMtIWP09YFMR64vxWxVawyqR93t0iQHcV5HT/hhfmqYOQ==} @@ -8640,9 +8829,18 @@ packages: resolution: {integrity: sha512-SLm3IFcfmy9iMqHeT4Ih6qMNZhJEefY14T9yTlpsH2D/FE5+BaGGnfcexUifVlfH6M7mwRC4hEFdNvZ6ebZjJg==} deprecated: This package is deprecated and is no longer maintained. Please use @pythnetwork/hermes-client instead. + '@pythnetwork/price-service-sdk@1.7.1': + resolution: {integrity: sha512-xr2boVXTyv1KUt/c6llUTfbv2jpud99pWlMJbFaHGUBoygQsByuy7WbjIJKZ+0Blg1itLZl0Lp/pJGGg8SdJoQ==} + '@pythnetwork/price-service-sdk@1.8.0': resolution: {integrity: sha512-tFZ1thj3Zja06DzPIX2dEWSi7kIfIyqreoywvw5NQ3Z1pl5OJHQGMEhxt6Li3UCGSp2ooYZS9wl8/8XfrfrNSA==} + '@pythnetwork/pyth-solana-receiver@0.7.0': + resolution: {integrity: sha512-OoEAHh92RPRdKkfjkcKGrjC+t0F3SEL754iKFmixN9zyS8pIfZSVfFntmkHa9pWmqEMxdx/i925a8B5ny8Tuvg==} + + '@pythnetwork/solana-utils@0.4.3': + resolution: {integrity: sha512-aMiVPtye3H2XFWXV8Hlgyp+oHXsAdt6d2FG0xhdTGDWssTnL4e9r7I8XBcucKHQkMDUhLN1bNeNOZcSBVyp9mg==} + '@radix-ui/primitive@1.1.1': resolution: {integrity: sha512-SJ31y+Q/zAyShtXJc8x83i9TYdbAfHZ++tUZnvjJJqFjzsdUnKsxPL6IEtBlxKkU7yzer//GQtZSV4GbldL3YA==} @@ -9391,6 +9589,9 @@ packages: '@scure/bip32@1.6.1': resolution: {integrity: sha512-jSO+5Ud1E588Y+LFo8TaB8JVPNAZw/lGGao+1SepHDeTs2dFLurdNIAgUuDlwezqEjRjElkCJajVrtrZaBxvaQ==} + '@scure/bip39@1.1.0': + resolution: {integrity: sha512-pwrPOS16VeTKg98dYXQyIjJEcWfz7/1YJIwxUEPFfQPtc86Ym/1sVgQ2RLoD43AazMk2l/unK4ITySSpW2+82w==} + '@scure/bip39@1.3.0': resolution: {integrity: sha512-disdg7gHuTDZtY+ZdkmLpPCk7fxZSu3gBiEGuoC1XYxv9cGx3Z6cpTggCgW6odSOOIXCiDjuGejW+aJKCY/pIQ==} @@ -9500,6 +9701,12 @@ packages: '@sinonjs/text-encoding@0.7.3': resolution: {integrity: sha512-DE427ROAphMQzU4ENbliGYrBSYPXF+TtLg9S8vzeA+OF4ZKzoDdzfL8sxuMUGS/lgRhM6j1URSk9ghf7Xo1tyA==} + '@skip-go/client@0.16.5': + resolution: {integrity: sha512-HyTcTSplwpMMo+r/9lNmCBMU2VMFrCI4W0DAeIW9YKGGLQCEqzNoI8BWlicIzzlQfDTCE5niR2++XIsvP9PldQ==} + peerDependencies: + '@solana/web3.js': ^1.95.8 + viem: 2.21.58 + '@slack/events-api@3.0.1': resolution: {integrity: sha512-ReJzZRpCgwGtKrAT0tRMppO3zm72jmxsOlTgR7PGajv2oq/tOJSeVRm7RcGiwn3EPIuovKkD/mr4TTN4n801fQ==} engines: {node: '>=12.13.0', npm: '>=6.12.0'} @@ -9888,16 +10095,30 @@ packages: peerDependencies: '@solana/web3.js': ^1.95.3 + '@solana/spl-token-registry@0.2.4574': + resolution: {integrity: sha512-JzlfZmke8Rxug20VT/VpI2XsXlsqMlcORIUivF+Yucj7tFi7A0dXG7h+2UnD0WaZJw8BrUz2ABNkUnv89vbv1A==} + engines: {node: '>=10'} + '@solana/spl-token@0.1.8': resolution: {integrity: sha512-LZmYCKcPQDtJgecvWOgT/cnoIQPWjdH+QVyzPcFvyDUiT0DiRjZaam4aqNUyvchLFhzgunv3d9xOoyE34ofdoQ==} engines: {node: '>= 10'} + '@solana/spl-token@0.2.0': + resolution: {integrity: sha512-RWcn31OXtdqIxmkzQfB2R+WpsJOVS6rKuvpxJFjvik2LyODd+WN58ZP3Rpjpro03fscGAkzlFuP3r42doRJgyQ==} + engines: {node: '>= 14'} + '@solana/spl-token@0.3.11': resolution: {integrity: sha512-bvohO3rIMSVL24Pb+I4EYTJ6cL82eFpInEXD/I8K8upOGjpqHsKUoAempR/RnUlI1qSFNyFlWJfu6MNUgfbCQQ==} engines: {node: '>=16'} peerDependencies: '@solana/web3.js': ^1.88.0 + '@solana/spl-token@0.3.7': + resolution: {integrity: sha512-bKGxWTtIw6VDdCBngjtsGlKGLSmiu/8ghSt/IOYJV24BsymRbgq7r12GToeetpxmPaZYLddKwAz7+EwprLfkfg==} + engines: {node: '>=16'} + peerDependencies: + '@solana/web3.js': ^1.47.4 + '@solana/spl-token@0.4.6': resolution: {integrity: sha512-1nCnUqfHVtdguFciVWaY/RKcQz1IF4b31jnKgAmjU9QVN1q7dRUkTEWJZgTYIEtsULjVnC9jRqlhgGN39WbKKA==} engines: {node: '>=16'} @@ -9926,10 +10147,22 @@ packages: peerDependencies: '@solana/web3.js': ^1.77.3 + '@solana/wallet-adapter-ledger@0.9.25': + resolution: {integrity: sha512-59yD3aveLwlzXqk4zBCaPLobeqAhmtMxPizfUBOjzwRKyepi1Nnnt9AC9Af3JrweU2x4qySRxAaZfU/iNqJ3rQ==} + engines: {node: '>=16'} + peerDependencies: + '@solana/web3.js': ^1.77.3 + '@solana/wallet-standard-features@1.3.0': resolution: {integrity: sha512-ZhpZtD+4VArf6RPitsVExvgkF+nGghd1rzPjd97GmBximpnt1rsUxMOEyoIEuH3XBxPyNB6Us7ha7RHWQR+abg==} engines: {node: '>=16'} + '@solana/web3.js@1.77.4': + resolution: {integrity: sha512-XdN0Lh4jdY7J8FYMyucxCwzn6Ga2Sr1DHDWRbqVzk7ZPmmpSPOVWHzO67X1cVT+jNi1D6gZi2tgjHgDPuj6e9Q==} + + '@solana/web3.js@1.92.3': + resolution: {integrity: sha512-NVBWvb9zdJIAx6X+caXaIICCEQfQaQ8ygykCjJW4u2z/sIKcvPj3ZIIllnx0MWMc3IxGq15ozGYDOQIMbwUcHw==} + '@solana/web3.js@1.95.3': resolution: {integrity: sha512-O6rPUN0w2fkNqx/Z3QJMB9L225Ex10PRDH8bTaIUPZXMPV0QP8ZpPvjQnXK+upUczlRgzHzd6SjKIha1p+I6og==} @@ -9942,6 +10175,12 @@ packages: '@solana/web3.js@1.98.0': resolution: {integrity: sha512-nz3Q5OeyGFpFCR+erX2f6JPt3sKhzhYcSycBCSPkWjzSVDh/Rr1FqTVMRe58FKO16/ivTUcuJjeS5MyBvpkbzA==} + '@solworks/soltoolkit-sdk@0.0.23': + resolution: {integrity: sha512-O6lXT3EBR4gmcjt0/33i97VMHVEImwXGi+4TNrDDdifn3tyOUB7V6PR1VGxlavQb9hqmVai3xhedg/rmbQzX7w==} + + '@soncodi/signal@2.0.7': + resolution: {integrity: sha512-zA2oZluZmVvgZEDjF243KWD1S2J+1SH1MVynI0O1KRgDt1lU8nqk7AK3oQfW/WpwT51L5waGSU0xKF/9BTP5Cw==} + '@spheron/protocol-sdk@1.2.3': resolution: {integrity: sha512-aZ7A/D3MuhTHiV5nfavnxOkmO61APkVZiJoLm0+EgsS0z1fFMSO9O6QdW0VCA6T75ajyAagXPJgr8U/VVRVp3w==} @@ -10218,6 +10457,14 @@ packages: '@swc/types@0.1.17': resolution: {integrity: sha512-V5gRru+aD8YVyCOMAjMpWR1Ui577DD5KSJsHP8RAxopAH22jFz6GZd/qxqjO6MJHQhcsjvjOFXyDhyLQUnMveQ==} + '@switchboard-xyz/common@2.5.13': + resolution: {integrity: sha512-bugYN/KAz1p1jyDSkfTgxyCB7B1+y6d/ry1dpg/Snrkqb9cF1Azj+Awd7vf4DTX7RTo3bPs+jafIs+9DhwTNmA==} + engines: {node: '>=12'} + + '@switchboard-xyz/on-demand@1.2.42': + resolution: {integrity: sha512-Q2qMpBM95RIDhGWA5vqRrAySRYncWKa7QWpAwLaIu5xPZMlSqNo12+lX30fUnqTWVeIXey/rp/3n6yOJLBsjjA==} + engines: {node: '>= 18'} + '@szmarczak/http-timer@4.0.6': resolution: {integrity: sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==} engines: {node: '>=10'} @@ -10281,10 +10528,17 @@ packages: '@tootallnate/quickjs-emscripten@0.23.0': resolution: {integrity: sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==} + '@triton-one/yellowstone-grpc@1.3.0': + resolution: {integrity: sha512-tuwHtoYzvqnahsMrecfNNkQceCYwgiY0qKS8RwqtaxvDEgjm0E+0bXwKz2eUD3ZFYifomJmRKDmSBx9yQzAeMQ==} + engines: {node: '>=20.18.0'} + '@trysound/sax@0.2.0': resolution: {integrity: sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==} engines: {node: '>=10.13.0'} + '@ts-morph/common@0.19.0': + resolution: {integrity: sha512-Unz/WHmd4pGax91rdIKWi51wnVUW11QttMEPpBiBgIewnc9UQIX7UDLxr5vRlqeByXCwhkF6VabSsI0raWcyAQ==} + '@tsconfig/node10@1.0.11': resolution: {integrity: sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==} @@ -10638,8 +10892,8 @@ packages: '@types/mocha@10.0.10': resolution: {integrity: sha512-xPyYSz1cMPnJQhl0CLMH68j3gprKZaTjG3s5Vi+fDgx+uhG9NOXwbVt52eFS8ECyXhyKcjDLCBEqBExKuiZb7Q==} - '@types/ms@0.7.34': - resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==} + '@types/ms@2.1.0': + resolution: {integrity: sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==} '@types/multer@1.4.12': resolution: {integrity: sha512-pQ2hoqvXiJt2FP9WQVLPRO+AmiIm/ZYkavPlIQnx282u4ZrVdztx0pkh3jjpQt0Kz+YI0YhSG264y08UJKoUQg==} @@ -10810,6 +11064,9 @@ packages: '@types/uuid@8.3.4': resolution: {integrity: sha512-c/I8ZRb51j+pYGAu5CrFMRxqZ2ke4y2grEBO5AUjgSkSk+qT2Ea+OdWElz/OiMf5MNpn2b17kuVBwZLQJXzihw==} + '@types/w3c-web-usb@1.0.10': + resolution: {integrity: sha512-CHgUI5kTc/QLMP8hODUHhge0D4vx+9UiAwIGiT0sTy/B2XpdX1U5rJt6JSISgr6ikRT7vxV9EVAFeYZqUnl1gQ==} + '@types/wav-encoder@1.3.3': resolution: {integrity: sha512-2haw8zEMg4DspJRXmxUn2TElrQUs0bLPDh6x4N7/hDn+3tx2G05Lc+kC55uoHYsv8q+4deWhnDtHZT/ximg9aw==} @@ -11051,6 +11308,15 @@ packages: '@vitest/browser': optional: true + '@vitest/coverage-v8@3.0.2': + resolution: {integrity: sha512-U+hZYb0FtgNDb6B3E9piAHzXXIuxuBw2cd6Lvepc9sYYY4KjgiwCBmo3Sird9ZRu3ggLpLBTfw1ZRr77ipiSfw==} + peerDependencies: + '@vitest/browser': 3.0.2 + vitest: 3.0.2 + peerDependenciesMeta: + '@vitest/browser': + optional: true + '@vitest/eslint-plugin@1.0.1': resolution: {integrity: sha512-albpL56cL9XMwHJWCWZqjDxkuDkBXBF3WpPGOv6q2WA3cipCP41cKEwfSGktoRNGmPN77wuX452O8pM+z+ApNw==} peerDependencies: @@ -11084,6 +11350,9 @@ packages: '@vitest/expect@2.1.8': resolution: {integrity: sha512-8ytZ/fFHq2g4PJVAtDX57mayemKgDR6X3Oa2Foro+EygiOJHUXhCqBAAKQYYajZpFoIfvBCF1j6R6IYRSIUFuw==} + '@vitest/expect@3.0.2': + resolution: {integrity: sha512-dKSHLBcoZI+3pmP5hiZ7I5grNru2HRtEW8Z5Zp4IXog8QYcxhlox7JUPyIIFWfN53+3HW3KPLIl6nSzUGgKSuQ==} + '@vitest/mocker@2.1.4': resolution: {integrity: sha512-Ky/O1Lc0QBbutJdW0rqLeFNbuLEyS+mIPiNdlVlp2/yhJ0SbyYqObS5IHdhferJud8MbbwMnexg4jordE5cCoQ==} peerDependencies: @@ -11117,6 +11386,17 @@ packages: vite: optional: true + '@vitest/mocker@3.0.2': + resolution: {integrity: sha512-Hr09FoBf0jlwwSyzIF4Xw31OntpO3XtZjkccpcBf8FeVW3tpiyKlkeUzxS/txzHqpUCNIX157NaTySxedyZLvA==} + peerDependencies: + msw: ^2.4.9 + vite: ^5.0.0 || ^6.0.0 + peerDependenciesMeta: + msw: + optional: true + vite: + optional: true + '@vitest/pretty-format@2.1.4': resolution: {integrity: sha512-L95zIAkEuTDbUX1IsjRl+vyBSLh3PwLLgKpghl37aCK9Jvw0iP+wKwIFhfjdUtA2myLgjrG6VU6JCFLv8q/3Ww==} @@ -11126,6 +11406,9 @@ packages: '@vitest/pretty-format@2.1.8': resolution: {integrity: sha512-9HiSZ9zpqNLKlbIDRWOnAWqgcA7xu+8YxXSekhr0Ykab7PAYFkhkwoqVArPOtJhPmYeE2YHgKZlj3CP36z2AJQ==} + '@vitest/pretty-format@3.0.2': + resolution: {integrity: sha512-yBohcBw/T/p0/JRgYD+IYcjCmuHzjC3WLAKsVE4/LwiubzZkE8N49/xIQ/KGQwDRA8PaviF8IRO8JMWMngdVVQ==} + '@vitest/runner@0.34.6': resolution: {integrity: sha512-1CUQgtJSLF47NnhN+F9X2ycxUP0kLHQ/JWvNHbeBfwW8CzEGgeskzNnHDyv1ieKTltuR6sdIHV+nmR6kPxQqzQ==} @@ -11144,6 +11427,9 @@ packages: '@vitest/runner@2.1.8': resolution: {integrity: sha512-17ub8vQstRnRlIU5k50bG+QOMLHRhYPAna5tw8tYbj+jzjcspnwnwtPtiOlkuKC4+ixDPTuLZiqiWWQ2PSXHVg==} + '@vitest/runner@3.0.2': + resolution: {integrity: sha512-GHEsWoncrGxWuW8s405fVoDfSLk6RF2LCXp6XhevbtDjdDme1WV/eNmUueDfpY1IX3MJaCRelVCEXsT9cArfEg==} + '@vitest/snapshot@0.34.6': resolution: {integrity: sha512-B3OZqYn6k4VaN011D+ve+AA4whM4QkcwcrwaKwAbyyvS/NB1hCWjFIBQxAQQSQir9/RtyAAGuq+4RJmbn2dH4w==} @@ -11162,6 +11448,9 @@ packages: '@vitest/snapshot@2.1.8': resolution: {integrity: sha512-20T7xRFbmnkfcmgVEz+z3AU/3b0cEzZOt/zmnvZEctg64/QZbSDJEVm9fLnnlSi74KibmRsO9/Qabi+t0vCRPg==} + '@vitest/snapshot@3.0.2': + resolution: {integrity: sha512-h9s67yD4+g+JoYG0zPCo/cLTabpDqzqNdzMawmNPzDStTiwxwkyYM1v5lWE8gmGv3SVJ2DcxA2NpQJZJv9ym3g==} + '@vitest/spy@0.34.6': resolution: {integrity: sha512-xaCvneSaeBw/cz8ySmF7ZwGvL0lBjfvqc1LpQ/vcdHEvpLn3Ff1vAvjw+CoGn0802l++5L/pxb7whwcWAw+DUQ==} @@ -11180,6 +11469,9 @@ packages: '@vitest/spy@2.1.8': resolution: {integrity: sha512-5swjf2q95gXeYPevtW0BLk6H8+bPlMb4Vw/9Em4hFxDcaOxS+e0LOX4yqNxoHzMR2akEB2xfpnWUzkZokmgWDg==} + '@vitest/spy@3.0.2': + resolution: {integrity: sha512-8mI2iUn+PJFMT44e3ISA1R+K6ALVs47W6eriDTfXe6lFqlflID05MB4+rIFhmDSLBj8iBsZkzBYlgSkinxLzSQ==} + '@vitest/ui@0.34.7': resolution: {integrity: sha512-iizUu9R5Rsvsq8FtdJ0suMqEfIsIIzziqnasMHe4VH8vG+FnZSA3UAtCHx6rLeRupIFVAVg7bptMmuvMcsn8WQ==} peerDependencies: @@ -11206,10 +11498,16 @@ packages: '@vitest/utils@2.1.8': resolution: {integrity: sha512-dwSoui6djdwbfFmIgbIjX2ZhIoG7Ex/+xpxyiEgIGzjliY8xGkcpITKTlp6B4MgtGkF2ilvm97cPM96XZaAgcA==} + '@vitest/utils@3.0.2': + resolution: {integrity: sha512-Qu01ZYZlgHvDP02JnMBRpX43nRaZtNpIzw3C1clDXmn8eakgX6iQVGzTQ/NjkIr64WD8ioqOjkaYRVvHQI5qiw==} + '@vladfrangu/async_event_emitter@2.4.6': resolution: {integrity: sha512-RaI5qZo6D2CVS6sTHFKg1v5Ohq/+Bo2LZ5gzUEwZ/WkHhwtGTCB/sVLw8ijOkAUxasZ+WshN/Rzj4ywsABJ5ZA==} engines: {node: '>=v14.0.0', npm: '>=7.0.0'} + '@voltr/vault-sdk@0.1.1': + resolution: {integrity: sha512-xh8bxPCwNpjVqEN32+Q40Xf08vdORAmQACDE6ru3T+9qrwNgraLcPEzvWeBNTE0FAMAZdNsYOxWbc2FSK0ZQww==} + '@vue/compiler-core@3.5.13': resolution: {integrity: sha512-oOdAkwqUfW1WqpwSYJce06wvt6HljgY3fGeM9NcVA1HaYOij3mZG9Rkysn0OHuyUAGMbEbARIpsG+LPVlBJ5/Q==} @@ -11584,8 +11882,8 @@ packages: zod: optional: true - ai@4.0.38: - resolution: {integrity: sha512-Lqo39GY8YlfUHgQdYb8qzaz+vfAu/8c8eIDck7NNKrdmwOAr8f4SuDgPVbISn1/4F9gR6WEXnD2f552ZEVT31Q==} + ai@4.1.0: + resolution: {integrity: sha512-95nI9hBSSAKPrMnpJbaB3yqvh+G8BS4/EtFz3HR0HgEDJpxC0R6JAlB8+B/BXHd/roNGBrS08Z3Zain/6OFSYA==} engines: {node: '>=18'} peerDependencies: react: ^18 || ^19 || ^19.0.0-rc @@ -11659,6 +11957,18 @@ packages: resolution: {integrity: sha512-Dx5zmy0Ur+Q7LPPdhz+jx5IzmJBoHd15tOeAfQ8SuvEtyPJ20hBemhOBA4b1WeORCRa0ENM/kHCzmem1w/zHvQ==} engines: {node: '>=10'} + anchor-bankrun@0.3.0: + resolution: {integrity: sha512-PYBW5fWX+iGicIS5MIM/omhk1tQPUc0ELAnI/IkLKQJ6d75De/CQRh8MF2bU/TgGyFi6zEel80wUe3uRol9RrQ==} + engines: {node: '>= 10'} + peerDependencies: + '@coral-xyz/anchor': ^0.28.0 + '@solana/web3.js': ^1.78.4 + solana-bankrun: ^0.2.0 + + anchor-client-gen@0.28.1: + resolution: {integrity: sha512-Gi205FuTSk1+haoYAGBDAA4h0X1xfmY0C++CQIWwtXIMCSy5+71XEaFMPgmjtYdvVJoAL021NqVrDiBHhNJ+fQ==} + hasBin: true + ansi-align@3.0.1: resolution: {integrity: sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==} @@ -11743,6 +12053,14 @@ packages: aproba@2.0.0: resolution: {integrity: sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==} + aptos@1.8.5: + resolution: {integrity: sha512-iQxliWesNHjGQ5YYXCyss9eg4+bDGQWqAZa73vprqGQ9tungK0cRjUI2fmnp63Ed6UG6rurHrL+b0ckbZAOZZQ==} + engines: {node: '>=11.0.0'} + deprecated: Package aptos is no longer supported, please migrate to https://www.npmjs.com/package/@aptos-labs/ts-sdk + + arbundles@0.10.1: + resolution: {integrity: sha512-QYFepxessLCirvRkQK9iQmjxjHz+s50lMNGRwZwpyPWLohuf6ISyj1gkFXJHlMT+rNSrsHxb532glHnKbjwu3A==} + arbundles@0.11.2: resolution: {integrity: sha512-vyX7vY6S8B4RFhGSoCixbnR/Z7ckpJjK+b/H7zcgRWJqqXjZqQ+3DQIJ19vKl5AvzNSsj5ja9kQDoZhMiGpBFw==} @@ -12215,6 +12533,9 @@ packages: resolution: {integrity: sha512-+8P3BpSairVNF2Nee6Ksdc1etIjWjBOi/MH0MwKtq9YaYp+S2Hk2uvup0e8hCT4IKlS58nXJyyQVmW92zPoD4Q==} engines: {node: '>=18.0.0'} + bip32-path@0.4.2: + resolution: {integrity: sha512-ZBMCELjJfcNMkz5bDuJ1WrYvjlhEF5k6mQ8vUr4N7MbVRsXei7ZOg8VhhwMfNiW68NWmLkgkc6WvTickrLGprQ==} + bip32@4.0.0: resolution: {integrity: sha512-aOGy88DDlVUhspIXJN+dVEtclhIsfAUppD43V0j40cPTld3pv/0X/MlrZSZ6jowIaQQzFwP8M6rFU2z2mVYjDQ==} engines: {node: '>=6.0.0'} @@ -12252,6 +12573,9 @@ packages: bluebird@3.7.2: resolution: {integrity: sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==} + bn-sqrt@1.0.0: + resolution: {integrity: sha512-XdCMQ7tfEF/f7nrQgnrJ+DLQBwQzSQyPOKIXdUOTcGEvsRKBcIsdfORp7B5H8DWo8FOzZ4+a2TjSZzaqKgzicg==} + bn.js@4.11.6: resolution: {integrity: sha512-XWwnNNFCuuSQ0m3r3C4LE3EiORltHd9M05pq6FOlVeiophzRbMo50Sbz1ehl8K3Z+jw9+vmgnXefY1hz8X+2wA==} @@ -12592,8 +12916,8 @@ packages: resolution: {integrity: sha512-aGtmf24DW6MLHHG5gCx4zaI3uBq3KRtxeVs0DjFH6Z0rDNbsvTxFASFvdj79pxjxZ8/5u3PIiN3IwEIQkiiuPw==} engines: {node: '>=12'} - chain-registry@1.69.94: - resolution: {integrity: sha512-8WpEM0BRtvhe6MBek0Jx41xaNH8E3I76yqebr0q5RohIs+Rmjt+aCzmi9T8AOceyJw7cOzIBhJjD1pi2agfd1w==} + chain-registry@1.69.95: + resolution: {integrity: sha512-FW4tNblqlO6iMhgDkH474jL3L5GBPywecGPqaqTDgy3mWPn+9TWQMmeuXY0XcuBNWGyz1BNxH5QMVhjC7rQQAg==} chalk@1.1.3: resolution: {integrity: sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==} @@ -12655,6 +12979,10 @@ packages: resolution: {integrity: sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==} engines: {node: '>= 16'} + check-more-types@2.24.0: + resolution: {integrity: sha512-Pj779qHxV2tuapviy1bSZNEL1maXr13bPYpsvSDB68HlYcYuhlDrmGd63i0JHMCLKzc7rUSNIrpdJlhVlNwrxA==} + engines: {node: '>= 0.8.0'} + cheerio-select@2.1.0: resolution: {integrity: sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==} @@ -12849,6 +13177,9 @@ packages: resolution: {integrity: sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==} engines: {iojs: '>= 1.0.0', node: '>= 0.12.0'} + code-block-writer@12.0.0: + resolution: {integrity: sha512-q4dMFMlXtKR3XNBHyMHt/3pwYNA69EDk00lloMOaaUMKPUXBw6lpXtbu3MMVG6/uOihGnRDOlkyqsONEUj60+w==} + coinbase-api@1.0.5: resolution: {integrity: sha512-5Rq6hYKnJNc9v4diD8M6PStSc2hwMgfOlB+pb1LSyh5q2xg9ZKi3Gu8ZVxaDnKXmgQgrjI4xJLMpc3fiLgzsew==} @@ -12920,6 +13251,10 @@ packages: resolution: {integrity: sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==} engines: {node: '>=14'} + commander@11.1.0: + resolution: {integrity: sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ==} + engines: {node: '>=16'} + commander@12.1.0: resolution: {integrity: sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==} engines: {node: '>=18'} @@ -12976,8 +13311,8 @@ packages: resolution: {integrity: sha512-bQJ0YRck5ak3LgtnpKkiabX5pNF7tMUh1BSy2ZBOTh0Dim0BUu6aPPwByIns6/A5Prh8PufSPerMDUklpzes2Q==} engines: {node: '>= 0.8.0'} - compromise@14.14.3: - resolution: {integrity: sha512-nR/3bJJ/Q2LZF9is66s9zhwhm63zcZ+/EaZWUJ8PgEO40ROctfrKdYQmO+UbwVsrp1/crDhCrsMJu0rgo/JirQ==} + compromise@14.14.4: + resolution: {integrity: sha512-QdbJwronwxeqb7a5KFK/+Y5YieZ4PE1f7ai0vU58Pp4jih+soDCBMuKVbhDEPQ+6+vI3vSiG4UAAjTAXLJw1Qw==} engines: {node: '>=12.0.0'} concat-map@0.0.1: @@ -13050,10 +13385,6 @@ packages: resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==} engines: {node: '>= 0.6'} - contentstream@1.0.0: - resolution: {integrity: sha512-jqWbfFZFG9tZbdej7+TzXI4kanABh3BLtTWY6NxqTK5zo6iTIeo5aq4iRVfYsLQ0y8ccQqmJR/J4NeMmEdnR2w==} - engines: {node: '>= 0.8.0'} - conventional-changelog-angular@7.0.0: resolution: {integrity: sha512-ROjNchA9LgfNMTTFSIWPzebCwOGFdgkEq45EnvvrmSLvCtAw0HSmrCs7/ty+wAeYUZyNay0YMUNYFTRL72PkBQ==} engines: {node: '>=16'} @@ -13193,6 +13524,9 @@ packages: typescript: optional: true + cosmjs-types@0.7.2: + resolution: {integrity: sha512-vf2uLyktjr/XVAgEq0DjMxeAWh1yYREe7AMHDKd7EiHVqxBPCaBS+qEEQUkXbR9ndnckqr1sUG8BQhazh4X5lA==} + cosmjs-types@0.8.0: resolution: {integrity: sha512-Q2Mj95Fl0PYMWEhA2LuGEIhipF7mQwd9gTQ85DdP9jjjopeoGaDxvmPa5nakNzsq7FnO1DMTatXTAx6bxMH7Lg==} @@ -13221,6 +13555,9 @@ packages: create-require@1.1.1: resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} + cron-validator@1.3.1: + resolution: {integrity: sha512-C1HsxuPCY/5opR55G5/WNzyEGDWFVG+6GLrA+fW/sCTcP6A6NTjUP2AK7B8n2PyFs90kDG2qzwm8LMheADku6A==} + croner@4.1.97: resolution: {integrity: sha512-/f6gpQuxDaqXu+1kwQYSckUglPaOrHdbIlBAu0YuW8/Cdb45XwXYNUBXg3r/9Mo6n540Kn/smKcZWko5x99KrQ==} @@ -13229,6 +13566,9 @@ packages: engines: {node: '>=10.14', npm: '>=6', yarn: '>=1'} hasBin: true + cross-fetch@3.0.6: + resolution: {integrity: sha512-KBPUbqgFjzWlVcURG+Svp9TlhA5uliYtiNx/0r8nv0pdypeQCRJ9IaSIc3q/x3q8t3F75cHuwxVql1HFGHCNJQ==} + cross-fetch@3.1.5: resolution: {integrity: sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==} @@ -13428,9 +13768,6 @@ packages: culvert@0.1.2: resolution: {integrity: sha512-yi1x3EAWKjQTreYWeSd98431AV+IEE0qoDyOoaHJ7KJ21gv6HtBXHVLX74opVSGqcR8/AbjJBHAHpcOy2bj5Gg==} - cwise-compiler@1.1.3: - resolution: {integrity: sha512-WXlK/m+Di8DMMcCjcWr4i+XzcQra9eCdXIJrgh4TUgh0pIS/yJduLxS9JgefsHJ/YVLdgPtXm9r62W92MvanEQ==} - cyrb53@1.0.0: resolution: {integrity: sha512-Elxs7damp1axRN+npujLik9K6q1QTd6nvJIVJ0IBTV8lCRsTgDeRnkGDTSxQYAbME7kzpooRXCG4UJYAyTe18w==} @@ -13608,9 +13945,6 @@ packages: resolution: {integrity: sha512-jRFi8UDGo6j+odZiEpjazZaWqEal3w/basFjQHQEwVtZJGDpxbH1MeYluwCS8Xq5wmLJooDlMgvVarmWfGM44g==} engines: {node: '>=0.10'} - data-uri-to-buffer@0.0.3: - resolution: {integrity: sha512-Cp+jOa8QJef5nXS5hU7M1DWzXPEIoVR3kbV0dQuVGwROZg8bGf1DcCnkmajBTnvghTtSNMUdRrPjgaT6ZQucbw==} - data-uri-to-buffer@4.0.1: resolution: {integrity: sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==} engines: {node: '>= 12'} @@ -13645,6 +13979,9 @@ packages: dateformat@3.0.3: resolution: {integrity: sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==} + dateformat@4.6.3: + resolution: {integrity: sha512-2P0p0pFGzHS5EMnhdxQi7aJN+iMheud0UhG4dlE1DLAlvL8JHjJJTX/CSm4JXwV0Ka5nGk3zC5mcb5bUQUxxMA==} + dayjs@1.11.13: resolution: {integrity: sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==} @@ -13720,6 +14057,9 @@ packages: decimal.js-light@2.5.1: resolution: {integrity: sha512-qIMFpTMZmny+MMIitAB6D7iVPEorVw6YQRWkvarTkT4tBeSLLiHzcwj6q0MmYSFCiVpiqPJTJEYIrpcPzVEIvg==} + decimal.js@10.3.1: + resolution: {integrity: sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ==} + decimal.js@10.4.3: resolution: {integrity: sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==} @@ -13946,8 +14286,8 @@ packages: discord-api-types@0.37.100: resolution: {integrity: sha512-a8zvUI0GYYwDtScfRd/TtaNBDTXwP5DiDVX7K5OmE+DRT57gBqKnwtOC5Ol8z0mRW8KQfETIgiB8U0YZ9NXiCA==} - discord-api-types@0.37.115: - resolution: {integrity: sha512-ivPnJotSMrXW8HLjFu+0iCVs8zP6KSliMelhr7HgcB2ki1QzpORkb26m71l1pzSnnGfm7gb5n/VtRTtpw8kXFA==} + discord-api-types@0.37.116: + resolution: {integrity: sha512-g+BH/m0hyS/JzL+e0aM+z2o9UtwfyUZ0hqeyc+6sNwdMx+NtQkqULRV/oj9ynAefpRb+cpOjmWaYec4B1I0Hqg==} discord-api-types@0.37.83: resolution: {integrity: sha512-urGGYeWtWNYMKnYlZnOnDHm8fVRffQs3U0SpE8RHeiuLKb/u92APS8HoQnPTFbnXmY1vVnXjXO4dOxcAn3J+DA==} @@ -14608,6 +14948,9 @@ packages: event-lite@0.1.3: resolution: {integrity: sha512-8qz9nOz5VeD2z96elrEKD2U433+L3DWdUdDkOINLGOJvx1GsMBbMn0aCeu28y8/e85A6mCigBiFlYMnTBEGlSw==} + event-stream@3.3.4: + resolution: {integrity: sha512-QHpkERcGsR0T7Qm3HNJSyXKEEj8AHNxkY3PK8TS2KJvQ7NiSHe3DDpwVKKtoYprL/AreyzFBeIkBIWChAqn60g==} + event-target-shim@5.0.1: resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==} engines: {node: '>=6'} @@ -14735,6 +15078,9 @@ packages: fast-content-type-parse@2.0.1: resolution: {integrity: sha512-nGqtvLrj5w0naR6tDPfB4cUmYCqouzyQiz6C5y/LtcDllJdrcc6WaWW6iXyIIOErTa/XRybj28aasdn4LkVk6Q==} + fast-copy@3.0.2: + resolution: {integrity: sha512-dl0O9Vhju8IrcLndv2eU4ldt1ftXMqqfgN4H1cpmGV7P6jeB9FwpN9a2c8DPGE1Ys88rNUJVYDHq73CGAGOPfQ==} + fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} @@ -14800,8 +15146,8 @@ packages: fd-slicer@1.1.0: resolution: {integrity: sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==} - fdir@6.4.2: - resolution: {integrity: sha512-KnhMXsKSPZlAhp7+IjUkRZKPb4fUyccpDrdFXbi4QL1qkmFh9kVY09Yox+n4MaOb3lHZ1Tv829C3oaaXoMYPDQ==} + fdir@6.4.3: + resolution: {integrity: sha512-PMXmW2y1hDDfTSRc9gaXIuCCRpuoz3Kaz8cUelp3smouvfT632ozg2vrT6lJsHKKOF59YLbOGfAWGUcKEfRMQw==} peerDependencies: picomatch: ^3 || ^4 peerDependenciesMeta: @@ -14912,6 +15258,9 @@ packages: resolution: {integrity: sha512-2kCCtc+JvcZ86IGAz3Z2Y0A1baIz9fL31pH/0S1IqZr9Iwnjq8izfPtrCyQKO6TLMPELLsQMre7VDqeIKCsHkA==} engines: {node: '>=18'} + find@0.3.0: + resolution: {integrity: sha512-iSd+O4OEYV/I36Zl8MdYJO0xD82wH528SaCieTVHhclgiYNe9y+yPKSwK+A7/WsmHL1EZ+pYUJBXWTL5qofksw==} + flash-sdk@2.25.8: resolution: {integrity: sha512-frKKnV15z6bydvtaxkhkJ3TqrPMVJl07Ubbwm0PQj3fFhIY1GfDDNS8UwuGJvyd6RXSj4pWnwbNntOo2N7FCKA==} @@ -15004,6 +15353,10 @@ packages: resolution: {integrity: sha512-sJe+TQb2vIaIyO783qN6BlMYWMw3WBOHA1Ay2qxsnjuafEOQFJ2JakedOQirT6D5XPRxDvS7AHYyem9fTpb4LQ==} engines: {node: '>= 6'} + form-data@4.0.0: + resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} + engines: {node: '>= 6'} + form-data@4.0.1: resolution: {integrity: sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==} engines: {node: '>= 6'} @@ -15035,6 +15388,9 @@ packages: resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==} engines: {node: '>= 0.6'} + from@0.1.7: + resolution: {integrity: sha512-twe20eF1OxVxp/ML/kq2p1uc6KvFK/+vs8WjEbeKmV2He22MKm7YF2ANIt+EOqhJ5L3K/SuuPhk0hWQDjOM23g==} + front-matter@4.0.2: resolution: {integrity: sha512-I8ZuJ/qG92NWX8i5x1Y8qyj3vizhXS31OxjKDu3LKP+7/qBgfIKValiZIEwoVoJKUHlhWtYrktkxV1XsX+pPlg==} @@ -15113,6 +15469,10 @@ packages: engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} deprecated: This package is no longer supported. + gaussian@1.3.0: + resolution: {integrity: sha512-rYQ0ESfB+z0t7G95nHH80Zh7Pgg9A0FUYoZqV0yPec5WJZWKIHV2MPYpiJNy8oZAeVqyKwC10WXKSCnUQ5iDVg==} + engines: {node: '>= 0.6.0'} + gaxios@6.7.1: resolution: {integrity: sha512-LDODD4TMYx7XXdpwxAVRAIAuB0bzv0s+ywFonY46k126qzQHT9ygyoa9tncmOiQmmDrik65UYsEkv3lbfqQ3yQ==} engines: {node: '>=14'} @@ -15163,9 +15523,6 @@ packages: resolution: {integrity: sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==} engines: {node: '>=8.0.0'} - get-pixels-jpeg-js-upgrade@3.3.0-jpeg-js-upgrade.0: - resolution: {integrity: sha512-3GQfE+K7GPp04Rbxh4GQhvGNPStlVYkW8b3hhsAD/3sDuBM5js1hnsNRptMIwyTrAjUoezEnUCFxhnQ0OLi3Sg==} - get-pkg-repo@4.2.1: resolution: {integrity: sha512-2+QbHjFRfGB74v/pYWjd5OhU3TDIC2Gv/YKUTk/tCvAz0pkn/Mz6P3uByuBimLOcPvN2jYdScl3xGFSrx0jEcA==} engines: {node: '>=6.9.0'} @@ -15213,13 +15570,6 @@ packages: getpass@0.1.7: resolution: {integrity: sha512-0fzj9JxOLfJ+XGLhR8ze3unN0KZCgZwiSSDz168VERjK8Wl8kVSdcu2kspd4s4wtAa1y/qrVRiAA0WclVsu0ng==} - gif-encoder@0.4.3: - resolution: {integrity: sha512-HMfSa+EIng62NbDhM63QGYoc49/m8DcZ9hhBtw+CXX9mKboSpeFVxjZ2WEWaMFZ14MUjfACK7jsrxrJffIVrCg==} - engines: {node: '>= 0.8.0'} - - gif-frames@0.4.1: - resolution: {integrity: sha512-BSqFuIz4qeZsX7wKDlwyF6qkGyUAgoYNRFJs7v8P97qvBz1FmzyRFHA/EWi/81OMHb0xQdps1X8BYrTyI3e3Aw==} - giget@1.2.3: resolution: {integrity: sha512-8EHPljDvs7qKykr6uw8b+lqLiUc/vUg+KVTI0uND4s63TdsZM2Xus3mflvF0DDG9SiM4RlCkFGL+7aAjRmV7KA==} hasBin: true @@ -15577,6 +15927,9 @@ packages: headers-polyfill@3.3.0: resolution: {integrity: sha512-5e57etwBpNcDc0b6KCVWEh/Ro063OxPvzVimUdM0/tsYM/T7Hfy3kknIGj78SFTOhNd8AZY41U8mOHoO4LzmIQ==} + help-me@5.0.0: + resolution: {integrity: sha512-7xgomUX6ADmcYzFik0HzAxh/73YlKR9bmFzf51CZwR+b6YtzU2m0u49hQCqV6SvlqIqsaxovfwdvbnsw3b/zpg==} + hey-listen@1.0.8: resolution: {integrity: sha512-COpmrF2NOg4TBWUJ5UVyaCU2A88wEMkUPK4hNqyCkqHbxT92BbvfjoSozkAIIm6XhicGlJHhFdullInrdhwU8Q==} @@ -15936,9 +16289,6 @@ packages: resolution: {integrity: sha512-0SZXGNGZ+WzISQ67QDyZ2x0+wVxjjUndtD8oSeik/4ajifeiRufed8fCb8QW8VMyi4MXcS+UO1k/0NGhvq1PAg==} engines: {node: '>=12.22.0'} - iota-array@1.0.0: - resolution: {integrity: sha512-pZ2xT+LOHckCatGQ3DcG/a+QuEqvoxqkiL7tvE8nn3uuu+f6i1TtpB5/FtWFbxUuVr5PZCx8KskuGatbJDXOWA==} - ip-address@9.0.5: resolution: {integrity: sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==} engines: {node: '>= 12'} @@ -16550,6 +16900,9 @@ packages: resolution: {integrity: sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==} hasBin: true + jito-ts@3.0.1: + resolution: {integrity: sha512-TSofF7KqcwyaWGjPaSYC8RDoNBY1TPRNBHdrw24bdIi7mQ5bFEDdYK3D//llw/ml8YDvcZlgd644WxhjLTS9yg==} + joi@17.13.3: resolution: {integrity: sha512-otDA4ldcIx+ZXsKHWmp0YizCweVRZG96J10b0FevjfuncLO1oX59THoAmHkNubYJ+9gWsYsp5k8v4ib6oDv1fA==} @@ -16560,9 +16913,6 @@ packages: resolution: {integrity: sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==} engines: {node: '>=10'} - jpeg-js@0.3.7: - resolution: {integrity: sha512-9IXdWudL61npZjvLuVe/ktHiA41iE8qFyLB+4VDTblEsWBzeg8WQTlktdUK4CdncUqtUgUg0bbOmTE2bKBKaBQ==} - js-base64@3.7.7: resolution: {integrity: sha512-7rCnleh0z2CkXhH67J8K1Ytz0b2Y+yxTPL+/KOJoa20hfnVQ/3/T6W/KflYI4bRHRagNeXeU2bkNGI3v1oS/lw==} @@ -16767,8 +17117,8 @@ packages: resolution: {integrity: sha512-+KJGIyHgkGuIq3IEBNftfhW/LfWhXUIY6OmyVWjliu5KH1y0fw7VQ8YndE2O4qZdMSd9SqbnC8GOcZEy0Om7sA==} engines: {node: '>=18'} - katex@0.16.20: - resolution: {integrity: sha512-jjuLaMGD/7P8jUTpdKhA9IoqnH+yMFB3sdAFtq5QdAqeP2PjiSbnC3EaguKPNtv6dXXanHxp1ckwvF4a86LBig==} + katex@0.16.21: + resolution: {integrity: sha512-XvqR7FgOHtWupfMiigNzmh+MgUVmDGU2kXZm899ZkPfcuoPuFxyHmXsgATDpFZDAXCI8tvinaVcDo8PIIJSo4A==} hasBin: true keccak256@1.0.6: @@ -16955,6 +17305,10 @@ packages: layout-base@2.0.1: resolution: {integrity: sha512-dp3s92+uNI1hWIpPGH3jK2kxE2lMjdXdr+DH8ynZHpd6PUlH6x6cbuXnoMmiNumznqaNO31xu9e79F0uuZ0JFg==} + lazy-ass@1.6.0: + resolution: {integrity: sha512-cc8oEVoctTvsFZ/Oje/kGnHbpWHYBe8IAJe4C0QNc3t8uM/0Y8+erSz/7Y1ALuXTEZTMvxXwO6YbX1ey3ujiZw==} + engines: {node: '> 0.8'} + lazy-cache@0.2.7: resolution: {integrity: sha512-gkX52wvU/R8DVMMt78ATVPFMJqfW8FPz1GZ1sVHBVQHmu/WvhIWE4cE1GBzhJNFicDeYhnwp6Rl35BcAIM3YOQ==} engines: {node: '>=0.10.0'} @@ -17122,6 +17476,9 @@ packages: lodash.camelcase@4.3.0: resolution: {integrity: sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==} + lodash.clonedeep@4.5.0: + resolution: {integrity: sha512-H5ZhCF25riFd9uB5UCkVKo61m3S/xZk1x4wA6yp/L3RFP6Z/eHH1ymQcGLo7J3GMPfm0V/7m1tryHuGVxpqEBQ==} + lodash.debounce@4.0.8: resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==} @@ -17340,6 +17697,9 @@ packages: resolution: {integrity: sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==} engines: {node: '>=8'} + map-stream@0.1.0: + resolution: {integrity: sha512-CkYQrPYZfWnu/DAmVCpTSX/xHpKZ80eKh2lAkyA6AJTef6bW+6JpbQZN5rofum7da+SyN1bi5ctTm+lTfcCW3g==} + mark.js@8.11.1: resolution: {integrity: sha512-1I+1qpDt4idfgLQG+BNWmrqku+7/2bi5nLf4YwF8y8zXvmfiTBY3PV3ZibfrjBueCByROpuBjLLFCajqkgYoLQ==} @@ -17731,6 +18091,10 @@ packages: resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} engines: {node: '>=10'} + minimatch@7.4.6: + resolution: {integrity: sha512-sBz8G/YjVniEz6lKPNpKxXwazJe4c19fEfV2GDMX6AjFz+MX9uDWIZW8XreVhkFW3fkIdTv/gxWr/Kks5FFAVw==} + engines: {node: '>=10'} + minimatch@8.0.4: resolution: {integrity: sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==} engines: {node: '>=16 || 14 >=14.17'} @@ -17829,6 +18193,11 @@ packages: engines: {node: '>=10'} hasBin: true + mkdirp@2.1.6: + resolution: {integrity: sha512-+hEnITedc8LAtIP9u3HJDFIdcLV2vXP33sqLLIzkv1Db1zO/1OxbvYf0Y1OC/S/Qo5dxHXepofhmxL02PsKe+A==} + engines: {node: '>=10'} + hasBin: true + mkdirp@3.0.1: resolution: {integrity: sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==} engines: {node: '>=10'} @@ -17899,9 +18268,6 @@ packages: resolution: {integrity: sha512-ywPWvcDMeH+z9gQq5qYHCCy+ethsk4goepZ45GLD63fOu0YcNecQxi64nDs3qluZB+murG3/D4dJ7+dGctcCQQ==} engines: {node: '>= 6.0.0'} - multi-integer-range@3.0.0: - resolution: {integrity: sha512-uQzynjVJ8F7x5wjaK0g4Ybhy2TvO/pk96+YHyS5g1W4GuUEV6HMebZ8HcRwWgKIRCUT2MLbM5uCKwYcAqkS+8Q==} - multiaddr@7.5.0: resolution: {integrity: sha512-GvhHsIGDULh06jyb6ev+VfREH9evJCFIRnh3jUt9iEZ6XDbyoisZRFEI9bMvK/AiR6y66y6P+eoBw9mBYMhMvw==} deprecated: This module is deprecated, please upgrade to @multiformats/multiaddr @@ -17969,6 +18335,11 @@ packages: nanoassert@1.1.0: resolution: {integrity: sha512-C40jQ3NzfkP53NsO8kEOFd79p4b9kDXQMwgiY1z8ZwrDZgUyom0AHwGegF4Dm99L+YoYhuaB0ceerUcXmqr1rQ==} + nanoid@3.3.4: + resolution: {integrity: sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true + nanoid@3.3.6: resolution: {integrity: sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} @@ -17990,15 +18361,6 @@ packages: natural-compare@1.4.0: resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} - ndarray-ops@1.2.2: - resolution: {integrity: sha512-BppWAFRjMYF7N/r6Ie51q6D4fs0iiGmeXIACKY66fLpnwIui3Wc3CXiD/30mgLbDjPpSLrsqcp3Z62+IcHZsDw==} - - ndarray-pack@1.2.1: - resolution: {integrity: sha512-51cECUJMT0rUZNQa09EoKsnFeDL4x2dHRT0VR5U2H5ZgEcm95ZDWcMA5JShroXjHOejmAD/fg8+H+OvUnVXz2g==} - - ndarray@1.0.19: - resolution: {integrity: sha512-B4JHA4vdyZU30ELBw3g7/p9bZupyew5a7tX1Y/gGeF2hafrPaQZhgrGQfsvgfYbgdFZjYwuEcnaobeM/WMW+HQ==} - near-abi@0.1.1: resolution: {integrity: sha512-RVDI8O+KVxRpC3KycJ1bpfVj9Zv+xvq9PlW1yIFl46GhrnLw83/72HqHGjGDjQ8DtltkcpSjY9X3YIGZ+1QyzQ==} @@ -18061,6 +18423,9 @@ packages: node-addon-api@2.0.2: resolution: {integrity: sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==} + node-addon-api@3.2.1: + resolution: {integrity: sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==} + node-addon-api@4.3.0: resolution: {integrity: sha512-73sE9+3UaLYYFmDsFZnqCInzPyh3MqIwZO9cw58yIqAZhONrrabrYyYe3TuIqtIiOuTXVhsGau8hcrhhwSsDIQ==} @@ -18077,12 +18442,8 @@ packages: resolution: {integrity: sha512-8VOpLHFrOQlAH+qA0ZzuGRlALRA6/LVh8QJldbrC4DY0hXoMP0l4Acq8TzFC018HztWiRqyCEj2aTWY2UvnJUg==} engines: {node: ^18 || ^20 || >= 21} - node-api-headers@1.4.0: - resolution: {integrity: sha512-u83U3WnRbBpWlhc0sQbpF3slHRLV/a6/OXByc+QzHcLxiDiJUWLuKGZp4/ntZUchnXGOCnCq++JUEtwb1/tyow==} - - node-bitmap@0.0.1: - resolution: {integrity: sha512-Jx5lPaaLdIaOsj2mVLWMWulXF6GQVdyLvNSxmiYCvZ8Ma2hfKX0POoR2kgKOqz+oFsRreq0yYZjQ2wjE9VNzCA==} - engines: {node: '>=v0.6.5'} + node-api-headers@1.5.0: + resolution: {integrity: sha512-Yi/FgnN8IU/Cd6KeLxyHkylBUvDTsSScT0Tna2zTrz8klmc8qF2ppj6Q1LHsmOueJWhigQwR4cO2p0XBGW5IaQ==} node-cache@5.1.2: resolution: {integrity: sha512-t1QzWwnk4sjLWaQAS8CHgOJ+RAfmHpxFWmc36IWTiWHQfs0w5JDMBS1b1ZxQteo0vVVuWJvIUKHDkkeK7vIGCg==} @@ -18099,6 +18460,10 @@ packages: node-fetch-native@1.6.4: resolution: {integrity: sha512-IhOigYzAKHd244OC0JIMIUrjzctirCmPkaIfhDeGcEETWof5zKYUW7e7MYvChGWh/4CJeXEgsRyGzuF334rOOQ==} + node-fetch@2.6.1: + resolution: {integrity: sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==} + engines: {node: 4.x || >=6.0.0} + node-fetch@2.6.7: resolution: {integrity: sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==} engines: {node: 4.x || >=6.0.0} @@ -18134,6 +18499,11 @@ packages: engines: {node: ^16.14.0 || >=18.0.0} hasBin: true + node-hid@2.1.2: + resolution: {integrity: sha512-qhCyQqrPpP93F/6Wc/xUR7L8mAJW0Z6R7HMQV8jCHHksAxNDe/4z4Un/H9CpLOT+5K39OPyt9tIQlavxWES3lg==} + engines: {node: '>=10'} + hasBin: true + node-int64@0.4.0: resolution: {integrity: sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==} @@ -18365,12 +18735,13 @@ packages: zod: optional: true - omggif@1.0.10: - resolution: {integrity: sha512-LMJTtvgc/nugXj0Vcrrs68Mn2D1r0zf630VNtqtpI1FEO7e+O9FP4gqs9AcnBaSEeoHIPm28u6qgPR0oyEpGSw==} - on-exit-leak-free@0.2.0: resolution: {integrity: sha512-dqaz3u44QbRXQooZLTUKU41ZrzYrcvLISVgbrzbyCMxpmSLJvZ3ZamIJIZ29P6OhZIkNIQKosdeM6t1LYbA9hg==} + on-exit-leak-free@2.1.2: + resolution: {integrity: sha512-0eJJY6hXLGf1udHwfNftBqH+g73EU4B504nZeKpz1sYRKafAghwxEJunB2O7rDZkL4PGfsMVnTXZ2EjibbqcsA==} + engines: {node: '>=14.0.0'} + on-finished@2.4.1: resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==} engines: {node: '>= 0.8'} @@ -18394,8 +18765,8 @@ packages: resolution: {integrity: sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==} engines: {node: '>=18'} - oniguruma-to-es@2.0.0: - resolution: {integrity: sha512-pE7+9jQgomy10aK6BJKRNHj1Nth0YLOzb3iRuhlz4gRzNSBSd7hga6U8BE6o0SoSuSkqv+PPtt511Msd1Hkl0w==} + oniguruma-to-es@2.1.0: + resolution: {integrity: sha512-Iq/949c5IueVC5gQR7OYXs0uHsDIePcgZFlVRIVGfQcWwbKG+nsyWfthswdytShlRdkZADY+bWSi+BRyUL81gA==} only-allow@1.2.1: resolution: {integrity: sha512-M7CJbmv7UCopc0neRKdzfoGWaVZC+xC1925GitKH9EAqYFzX9//25Q7oX4+jw0tiCCj+t5l6VZh8UPH23NZkMA==} @@ -18430,12 +18801,15 @@ packages: zod: optional: true - openai@4.78.1: - resolution: {integrity: sha512-drt0lHZBd2lMyORckOXFPQTmnGLWSLt8VK0W9BhOKWpMFBEoHMoz5gxMPmVq5icp+sOrsbMnsmZTVHUlKvD1Ow==} + openai@4.79.1: + resolution: {integrity: sha512-M7P5/PKnT/S/B5v0D64giC9mjyxFYkqlCuQFzR5hkdzMdqUuHf8T1gHhPGPF5oAvu4+PO3TvJv/qhZoS2bqAkw==} hasBin: true peerDependencies: + ws: ^8.18.0 zod: ^3.23.8 peerDependenciesMeta: + ws: + optional: true zod: optional: true @@ -18654,9 +19028,6 @@ packages: resolution: {integrity: sha512-01TvEktc68vwbJOtWZluyWeVGWjP+bZwXtPDMQVbBKzbJ/vZBif0L69KH1+cHv1SZ6e0FKLvjyHe8mqsIqYOmw==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - parse-data-uri@0.2.0: - resolution: {integrity: sha512-uOtts8NqDcaCt1rIsO3VFDRsAfgE4c6osG4d9z3l4dCBlxYFzni6Di/oNU270SDrjkfZuUvLZx1rxMyqh46Y9w==} - parse-entities@4.0.2: resolution: {integrity: sha512-GG2AQYWoLgL877gQIKeRPGO1xF9+eG1ujIb5soS5gPvLQ1y2o8FL90w2QWNdf9I361Mpp7726c+lj3U0qK1uGw==} @@ -18811,8 +19182,8 @@ packages: pathe@1.1.2: resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==} - pathe@2.0.1: - resolution: {integrity: sha512-6jpjMpOth5S9ITVu5clZ7NOgHNsv5vRQdheL9ztp2vZmM6fRbLvyua1tiBIL4lk8SAe3ARzeXEly6siXCjDHDw==} + pathe@2.0.2: + resolution: {integrity: sha512-15Ztpk+nov8DR524R4BF7uEuzESgzUEAV4Ah7CUMNGXdE5ELuvxElxGXndBl32vMSsWa1jpNf22Z+Er3sKwq+w==} pathval@1.1.1: resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==} @@ -18821,6 +19192,9 @@ packages: resolution: {integrity: sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==} engines: {node: '>= 14.16'} + pause-stream@0.0.11: + resolution: {integrity: sha512-e3FBlXLmN/D1S+zHzanP4E/4Z60oFAa3O051qt1pxa7DEJWKAyil6upYVXCWadEnuoqa4Pkc9oUx9zsxYeRv8A==} + pbkdf2@3.1.2: resolution: {integrity: sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==} engines: {node: '>=0.12'} @@ -18929,13 +19303,27 @@ packages: pino-abstract-transport@0.5.0: resolution: {integrity: sha512-+KAgmVeqXYbTtU2FScx1XS3kNyfZ5TrXY07V96QnUSFqo2gAqlvmaxH67Lj7SWazqsMabf+58ctdTcBgnOLUOQ==} + pino-abstract-transport@2.0.0: + resolution: {integrity: sha512-F63x5tizV6WCh4R6RHyi2Ml+M70DNRXt/+HANowMflpgGFMAym/VKm6G7ZOQRjqN7XbGxK1Lg9t6ZrtzOaivMw==} + + pino-pretty@13.0.0: + resolution: {integrity: sha512-cQBBIVG3YajgoUjo1FdKVRX6t9XPxwB9lcNJVD5GCnNM4Y6T12YYx8c6zEejxQsU0wrg9TwmDulcE9LR7qcJqA==} + hasBin: true + pino-std-serializers@4.0.0: resolution: {integrity: sha512-cK0pekc1Kjy5w9V2/n+8MkZwusa6EyyxfeQCB799CQRhRt/CqYKiWs5adeu8Shve2ZNffvfC/7J64A2PJo1W/Q==} + pino-std-serializers@7.0.0: + resolution: {integrity: sha512-e906FRY0+tV27iq4juKzSYPbUj2do2X2JX4EzSca1631EB2QJQUqGbDuERal7LCtOpxl6x3+nvo9NPZcmjkiFA==} + pino@7.11.0: resolution: {integrity: sha512-dMACeu63HtRLmCG8VKdy4cShCPKaYDR4youZqoSWLxl5Gu99HUw8bw75thbPv9Nip+H+QYX8o3ZJbTdVZZ2TVg==} hasBin: true + pino@9.6.0: + resolution: {integrity: sha512-i85pKRCt4qMjZ1+L7sy2Ag4t1atFcdbEt76+7iRJn1g2BvsnRMGu9p8pivl9fs63M2kF/A0OacFZhTub+m/qMg==} + hasBin: true + pirates@4.0.6: resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} engines: {node: '>= 6'} @@ -18995,14 +19383,6 @@ packages: engines: {node: '>=12.0.0'} hasBin: true - pngjs-nozlib@1.0.0: - resolution: {integrity: sha512-N1PggqLp9xDqwAoKvGohmZ3m4/N9xpY0nDZivFqQLcpLHmliHnCp9BuNCsOeqHWMuEEgFjpEaq9dZq6RZyy0fA==} - engines: {iojs: '>= 1.0.0', node: '>=0.10.0'} - - pngjs@2.3.1: - resolution: {integrity: sha512-ITNPqvx+SSssNFOgHQzGG87HrqQ0g2nMSHc1jjU5Piq9xJEJ40fiFEPz0S5HSSXxBHrTnhaBHIayTO5aRfk2vw==} - engines: {iojs: '>= 1.0.0', node: '>=0.10.0'} - pngjs@5.0.0: resolution: {integrity: sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw==} engines: {node: '>=10.13.0'} @@ -19798,6 +20178,9 @@ packages: process-warning@1.0.0: resolution: {integrity: sha512-du4wfLyj4yCZq1VupnVSZmRsPJsNuxoDQFdCFHLaYiEbFBD7QE0a+I4D7hOxrVnh78QE/YipFAj9lXHiXocV+Q==} + process-warning@4.0.1: + resolution: {integrity: sha512-3c2LzQ3rY9d0hc1emcsHhfT9Jwz0cChib/QN89oME2R451w5fy3f0afAhERFZAwrbDU43wk12d0ORBpDVME50Q==} + process@0.11.10: resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==} engines: {node: '>= 0.6.0'} @@ -19894,6 +20277,11 @@ packages: proxy-from-env@1.1.0: resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} + ps-tree@1.2.0: + resolution: {integrity: sha512-0VnamPPYHl4uaU/nSFeZZpR21QAWRz+sRv4iW9+v/GS/J5U5iZB5BNN6J0RMoOvdx2gWM2+ZFMIm58q24e4UYA==} + engines: {node: '>= 0.10'} + hasBin: true + psl@1.15.0: resolution: {integrity: sha512-JZd3gMVBAVQkSs6HdNZo9Sdo0LNcQeMNP3CozBJb3JYC/QUYZTnKxP+f8oWRX4rHP5EurWxqAHTSwUCjlNKa1w==} @@ -20149,8 +20537,8 @@ packages: react: '>=16.8' react-dom: '>=16.8' - react-router-dom@7.1.1: - resolution: {integrity: sha512-vSrQHWlJ5DCfyrhgo0k6zViOe9ToK8uT5XGSmnuC2R3/g261IdIMpZVqfjD6vWSXdnf5Czs4VA/V60oVR6/jnA==} + react-router-dom@7.1.2: + resolution: {integrity: sha512-kE7JdrDfeWO/2d6RPucLmqp2UL8Isv1VWtI5MQyYNA99KtncqxWDL6550+0rH4fboJKJbXRcyjRnIRT/gkxTcA==} engines: {node: '>=20.0.0'} peerDependencies: react: '>=18' @@ -20167,8 +20555,8 @@ packages: peerDependencies: react: '>=16.8' - react-router@7.1.1: - resolution: {integrity: sha512-39sXJkftkKWRZ2oJtHhCxmoCrBCULr/HAH4IT5DHlgu/Q0FCPV0S4Lx+abjDTx/74xoZzNYDYbOZWlJjruyuDQ==} + react-router@7.1.2: + resolution: {integrity: sha512-KeallSO30KLpIe/ZZqfk6pCJ1c+5JhMxl3SCS3Zx1LgaGuQbgLDmjuNi6KZ5LnAV9sWjbmBWGRw8Um/Pw6BExg==} engines: {node: '>=20.0.0'} peerDependencies: react: '>=18' @@ -20284,6 +20672,10 @@ packages: resolution: {integrity: sha512-r/H9MzAWtrv8aSVjPCMFpDMl5q66GqtmmRkRjpHTsp4zBAa+snZyiQNlMONiUmEJcsnaw0wCauJ2GWODr/aFkg==} engines: {node: '>= 12.13.0'} + real-require@0.2.0: + resolution: {integrity: sha512-57frrGM/OCTLqLOAh0mhVA9VBMHd+9U7Zb2THMGdBUoZVOtGbJzjxsYGDJ3A9AYYCP4hn6y1TVbaOfzWtm5GFg==} + engines: {node: '>= 12.13.0'} + rechoir@0.6.2: resolution: {integrity: sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==} engines: {node: '>= 0.10'} @@ -20329,6 +20721,9 @@ packages: reflect-metadata@0.1.13: resolution: {integrity: sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==} + reflect-metadata@0.1.14: + resolution: {integrity: sha512-ZhYeb6nRaXCfhnndflDK8qI6ZQ/YcWZCISRAWICW9XYqMUwjZM9Z0DveWX/ABN01oxSHwVxKQmxeYZSsm0jh5A==} + reflect-metadata@0.2.2: resolution: {integrity: sha512-urBwgfrvVP/eAyXx4hluJivBKzuEbSQs9rKWCrCkbSxNv8mxPcUZKeuoF3Uy4mJl3Lwprp6yy5/39VWigZ4K6Q==} @@ -20621,6 +21016,12 @@ packages: roughjs@4.6.6: resolution: {integrity: sha512-ZUz/69+SYpFN/g/lUlo2FXcIjRkSu3nDarreVdGGndHEBJ6cXPdKguS8JGxwj5HA5xIbVKSmLgr5b3AWxtRfvQ==} + rpc-websockets@7.5.1: + resolution: {integrity: sha512-kGFkeTsmd37pHPMaHIgN1LVKXMi0JD782v4Ds9ZKtLlwdTKjn+CxM9A9/gLT2LaOuEcEFGL98h1QWQtlOIdW0w==} + + rpc-websockets@8.0.2: + resolution: {integrity: sha512-QZ8lneJTtIZTf9JBcdUn/im2qDynWRYPKtmF6P9DqtdzqSLebcllYWVQr5aQacAp7LBYPReOW9Ses98dNfO7cA==} + rpc-websockets@9.0.4: resolution: {integrity: sha512-yWZWN0M+bivtoNLnaDbtny4XchdAIF5Q4g/ZsC5UC61Ckbp0QczwO8fg44rV3uYmY4WHd+EZQbn90W1d8ojzqQ==} @@ -20691,9 +21092,6 @@ packages: resolution: {integrity: sha512-jLYV0DORrzY3xaz/S9ydJL6Iz7essZeAfnAavsJ+zsJGZ1MOnsS52yRjU3uF3pJa/lla7+wisp//fxOwOH8SKQ==} engines: {node: '>= 0.10'} - save-pixels-jpeg-js-upgrade@2.3.4-jpeg-js-upgrade.0: - resolution: {integrity: sha512-mFeQrydaAVTYQjywMvuNtjHmYZwAXZlo96Xouh3I7wTYDdUhMttoEPQsfk6EP+Wxt+fo/B8SW/A8dfhBImhKIw==} - sax@1.4.1: resolution: {integrity: sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==} @@ -21060,10 +21458,43 @@ packages: peerDependencies: sodium-native: ^3.2.0 - solana-agent-kit@1.4.0: - resolution: {integrity: sha512-4+lH6buQZoLqr6CYriqpAIidQncGnU67b5G7Cai9dvxyvOXgBY/zIPYbbrhD+zI4kXPGg9FEtq2ekC1OcBFeew==} + solana-agent-kit@1.4.1: + resolution: {integrity: sha512-kNS35iq0ISZnXCB54pZm4InUIlOC100+6AKtu3IVhjKlshUaPogAkTU1PK9mTfnuo1wdH7/p6QdzadYUT6ZkTg==} engines: {node: '>=22.0.0', pnpm: '>=8.0.0'} + solana-bankrun-darwin-arm64@0.3.1: + resolution: {integrity: sha512-9LWtH/3/WR9fs8Ve/srdo41mpSqVHmRqDoo69Dv1Cupi+o1zMU6HiEPUHEvH2Tn/6TDbPEDf18MYNfReLUqE6A==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [darwin] + + solana-bankrun-darwin-universal@0.3.1: + resolution: {integrity: sha512-muGHpVYWT7xCd8ZxEjs/bmsbMp8XBqroYGbE4lQPMDUuLvsJEIrjGqs3MbxEFr71sa58VpyvgywWd5ifI7sGIg==} + engines: {node: '>= 10'} + os: [darwin] + + solana-bankrun-darwin-x64@0.3.1: + resolution: {integrity: sha512-oCaxfHyt7RC3ZMldrh5AbKfy4EH3YRMl8h6fSlMZpxvjQx7nK7PxlRwMeflMnVdkKKp7U8WIDak1lilIPd3/lg==} + engines: {node: '>= 10'} + cpu: [x64] + os: [darwin] + + solana-bankrun-linux-x64-gnu@0.3.1: + resolution: {integrity: sha512-PfRFhr7igGFNt2Ecfdzh3li9eFPB3Xhmk0Eib17EFIB62YgNUg3ItRnQQFaf0spazFjjJLnglY1TRKTuYlgSVA==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + + solana-bankrun-linux-x64-musl@0.3.1: + resolution: {integrity: sha512-6r8i0NuXg3CGURql8ISMIUqhE7Hx/O7MlIworK4oN08jYrP0CXdLeB/hywNn7Z8d1NXrox/NpYUgvRm2yIzAsQ==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + + solana-bankrun@0.3.1: + resolution: {integrity: sha512-inRwON7fBU5lPC36HdEqPeDg15FXJYcf77+o0iz9amvkUMJepcwnRwEfTNyMVpVYdgjTOBW5vg+596/3fi1kGA==} + engines: {node: '>= 10'} + solc@0.8.28: resolution: {integrity: sha512-AFCiJ+b4RosyyNhnfdVH4ZR1+TxiL91iluPjw0EJslIu4LXGM9NYqi2z5y8TqochC4tcH9QsHfwWhOIC9jPDKA==} engines: {node: '>=10.0.0'} @@ -21072,6 +21503,9 @@ packages: sonic-boom@2.8.0: resolution: {integrity: sha512-kuonw1YOYYNOve5iHdSahXPOK49GqwA+LZhI6Wz/l0rP57iKyXXIHaRagOBHAPmGwJC6od2Z9zgvZ5loSgMlVg==} + sonic-boom@4.2.0: + resolution: {integrity: sha512-INb7TM37/mAcsGmc9hyyI6+QR3rR1zVRu36B0NeGXKnOOLiZOfER5SA+N7X7k3yUYRzLWafduTDvJAfDswwEww==} + sort-css-media-queries@2.2.0: resolution: {integrity: sha512-0xtkGhWCC9MGt/EzgnvbbbKhqWjl1+/rncmhTh5qCpbYguXh6S/qwePfv/JQ8jePXXmqingylxoC49pCkSPIbA==} engines: {node: '>= 6.3.0'} @@ -21152,6 +21586,9 @@ packages: resolution: {integrity: sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==} engines: {node: '>= 10.x'} + split@0.3.3: + resolution: {integrity: sha512-wD2AeVmxXRBoX44wAycgjVpMhvbwdI2aZjCkvfNcH1YqHQvJVa1duWc73OyVGJUc05fhFaTZeQ/PYsrmyH0JVA==} + split@1.0.1: resolution: {integrity: sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==} @@ -21236,6 +21673,11 @@ packages: starknet@6.18.0: resolution: {integrity: sha512-nlxz7bK/YBY8W8NUevkycxFwphsX27oi+4YCl36TYFdrJpTOMqmJDnZ27ssr7z0eEDQLQscIxt1gXrZzCJua7g==} + start-server-and-test@1.15.4: + resolution: {integrity: sha512-ucQtp5+UCr0m4aHlY+aEV2JSYNTiMZKdSKK/bsIr6AlmwAWDYDnV7uGlWWEtWa7T4XvRI5cPYcPcQgeLqpz+Tg==} + engines: {node: '>=6'} + hasBin: true + statuses@1.5.0: resolution: {integrity: sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==} engines: {node: '>= 0.6'} @@ -21272,6 +21714,9 @@ packages: stream-combiner2@1.1.1: resolution: {integrity: sha512-3PnJbYgS56AeWgtKF5jtJRT6uFJe56Z0Hc5Ngg/6sI6rIt8iiMBTa9cvdyFfpMQjaVHr8dusbNeFGIIonxOvKw==} + stream-combiner@0.0.4: + resolution: {integrity: sha512-rT00SPnTVyRsaSz5zgSPma/aHSOic5U1prhYdRy5HS2kTZviFpmDgzilbtsJsxiroqACmayynDN/9VzIbX5DOw==} + stream-http@3.2.0: resolution: {integrity: sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==} @@ -21294,6 +21739,9 @@ packages: streamx@2.21.1: resolution: {integrity: sha512-PhP9wUnFLa+91CPy3N6tiQsK+gnYyUNuk15S3YG/zjYE7RuPeCjJngqnzpC31ow0lzBHQ+QGO4cNJnd0djYUsw==} + strict-event-emitter-types@2.0.0: + resolution: {integrity: sha512-Nk/brWYpD85WlOgzw5h173aci0Teyv8YdIAEtV+N88nDB0dLlazZyJMIsN6eo1/AR61l+p6CJTG1JIyFaoNEEA==} + strict-uri-encode@2.0.0: resolution: {integrity: sha512-QwiXZgpRcKkhTj2Scnn++4PKtWsH0kpzZ62L2R6c/LUVYv7hVnZqcg2+sMuT6R7Jusu1vviK/MFsu6kNJfWlEQ==} engines: {node: '>=4'} @@ -21459,9 +21907,16 @@ packages: resolution: {integrity: sha512-CY8u7DtbvucKuquCmOFEKhr9Besln7n9uN8eFbwcoGYWXOMW07u2o8njWaiXt11ylS3qoGF55pILjRmPlbodyg==} engines: {node: '>=18'} + superstruct@0.14.2: + resolution: {integrity: sha512-nPewA6m9mR3d6k7WkZ8N8zpTWfenFH3q9pA2PkuiZxINr9DKB2+40wEQf0ixn8VaGuJ78AB6iWOtStI+/4FKZQ==} + superstruct@0.15.5: resolution: {integrity: sha512-4AOeU+P5UuE/4nOUkmcQdW5y7i9ndt1cQd/3iUe+LTz3RxESf/W/5lg4B74HbDMMv8PHnPnGCQFH45kBcrQYoQ==} + superstruct@1.0.4: + resolution: {integrity: sha512-7JpaAoX2NGyoFlI9NBh66BQXGONc+uE+MRS5i2iOBKuS4e+ccgMDjATgZldkah+33DakBxDHiss9kvUcGAO8UQ==} + engines: {node: '>=14.0.0'} + superstruct@2.0.2: resolution: {integrity: sha512-uV+TFRZdXsqXTL2pRvujROjdZQ4RAlBUS5BTh9IGm+jTqQntYThciG/qu57Gs69yjnVUSqdxF9YLmSnpupBW9A==} engines: {node: '>=14.0.0'} @@ -21486,8 +21941,8 @@ packages: resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} engines: {node: '>= 0.4'} - svelte@5.18.0: - resolution: {integrity: sha512-/Eb81lB8bVUxQPmkPVNBYrU9cZ544+9hE91ZUUXTMf7eWcGW84N1hS3gvv/XsUNOWLLg3IicXP2qa8W3KpTUHA==} + svelte@5.19.0: + resolution: {integrity: sha512-qvd2GvvYnJxS/MteQKFSMyq8cQrAAut28QZ39ySv9k3ggmhw4Au4Rfcsqva74i0xMys//OhbhVCNfXPrDzL/Bg==} engines: {node: '>=18'} svg-parser@2.0.4: @@ -21711,6 +22166,9 @@ packages: thread-stream@0.15.2: resolution: {integrity: sha512-UkEhKIg2pD+fjkHQKyJO3yoIvAP3N6RlNFt2dUhcS1FGvCD1cQa1M/PGknCLFIyZdtJOWQjejp7bdNqmN7zwdA==} + thread-stream@3.1.0: + resolution: {integrity: sha512-OqyPZ9u96VohAyMfJykzmivOrY2wfMSf3C5TtFJVgN+Hm6aj+voFhlK+kZEIv2FBh1X6Xp3DlnCOfEQ3B2J86A==} + three@0.146.0: resolution: {integrity: sha512-1lvNfLezN6OJ9NaFAhfX4sm5e9YCzHtaRgZ1+B4C+Hv6TibRMsuBAM5/wVKzxjpYIlMymvgsHEFrrigEfXnb2A==} @@ -21791,6 +22249,10 @@ packages: resolution: {integrity: sha512-weEDEq7Z5eTHPDh4xjX789+fHfF+P8boiFB+0vbWzpbnbsEr/GRaohi/uMKxg8RZMXnl1ItAi/IUHWMsjDV7kQ==} engines: {node: '>=14.0.0'} + tinyrainbow@2.0.0: + resolution: {integrity: sha512-op4nsTR47R6p0vMUUoYl/a+ljLFVtlfaXkLQmqfLR1qHma1h/ysYk4hEXZ880bf2CYgTskvTa/e196Vd5dDQXw==} + engines: {node: '>=14.0.0'} + tinyspawn@1.3.3: resolution: {integrity: sha512-CvvMFgecnQMyg59nOnAD5O4lV83cVj2ooDniJ3j2bYvMajqlK4wQ13k6OUHfA+J5nkInTxbSGJv2olUJIiAtJg==} engines: {node: '>= 18'} @@ -21905,6 +22367,9 @@ packages: resolution: {integrity: sha512-tk2G5R2KRwBd+ZN0zaEXpmzdKyOYksXwywulIX95MBODjSzMIuQnQ3m8JxgbhnL1LeVo7lqQKsYa1O3Htl7K5g==} engines: {node: '>=18'} + traverse-chain@0.1.0: + resolution: {integrity: sha512-up6Yvai4PYKhpNp5PkYtx50m3KbwQrqDwbuZP/ItyL64YEWHAvH6Md83LFLV/GRSk/BoUVwwgUzX6SOQSbsfAg==} + traverse@0.6.11: resolution: {integrity: sha512-vxXDZg8/+p3gblxB6BhhG5yWVn1kGRlaL8O78UDXc3wRnPizB5g83dcvWV1jpDMIPnjZjOFuxlMmE82XJ4407w==} engines: {node: '>= 0.4'} @@ -21996,6 +22461,9 @@ packages: ts-mixer@6.0.4: resolution: {integrity: sha512-ufKpbmrugz5Aou4wcr5Wc1UUFWOLhq+Fm6qa6P0w0K5Qw2yhaUoiWszhCVuNQyNwrlGiscHOmqYoAox1PtvgjA==} + ts-morph@18.0.0: + resolution: {integrity: sha512-Kg5u0mk19PIIe4islUI/HWRvm9bC1lHejK4S0oh1zaZ77TMZAEmQC0sHQYiu2RgCQFZKXz1fMVi/7nOOeirznA==} + ts-node@10.9.2: resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==} hasBin: true @@ -22427,9 +22895,6 @@ packages: unified@9.2.2: resolution: {integrity: sha512-Sg7j110mtefBD+qunSLO1lqOEKdrwBFBrR6Qd8f4uwkhWNlbkaqwHse6e7QvD3AP/MNoJdEDLaf8OxYyoWgorQ==} - uniq@1.0.1: - resolution: {integrity: sha512-Gw+zz50YNKPDKXs+9d+aKAjVwpjNwqzvNpLigIruT4HA9lMZNdMqs9x07kKHB/L9WRzqp4+DlTU5s4wG2esdoA==} - unique-filename@3.0.0: resolution: {integrity: sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -22633,6 +23098,10 @@ packages: resolution: {integrity: sha512-oCwdVC7mTuWiPyjLUz/COz5TLk6wgp0RCsN+wHZ2Ekneac9w8uuV0njcbbie2ME+Vs+d6duwmYuR3HgQXs1fOg==} engines: {node: '>= 0.4'} + usb@2.9.0: + resolution: {integrity: sha512-G0I/fPgfHUzWH8xo2KkDxTTFruUWfppgSFJ+bQxz/kVY2x15EQ/XDB7dqD1G432G4gBG4jYQuF3U7j/orSs5nw==} + engines: {node: '>=10.20.0 <11.x || >=12.17.0 <13.0 || >=14.0.0'} + use-callback-ref@1.3.3: resolution: {integrity: sha512-jQL3lRnocaFtu3V00JToYz/4QkNWswxijDaCVNZRiRTO3HQDLsdu1ZtmIUvV4yPp+rvWm5j0y0TG/S61cuijTg==} engines: {node: '>=10'} @@ -22838,6 +23307,11 @@ packages: engines: {node: ^18.0.0 || >=20.0.0} hasBin: true + vite-node@3.0.2: + resolution: {integrity: sha512-hsEQerBAHvVAbv40m3TFQe/lTEbOp7yDpyqMJqr2Tnd+W58+DEYOt+fluQgekOePcsNBmR77lpVAnIU2Xu4SvQ==} + engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} + hasBin: true + vite-plugin-compression@0.5.1: resolution: {integrity: sha512-5QJKBDc+gNYVqL/skgFAP81Yuzo9R+EAf19d+EtsMF/i8kFUpNi3J/H01QD3Oo8zBQn+NzoCIFkpPLynoOzaJg==} peerDependencies: @@ -23086,6 +23560,31 @@ packages: jsdom: optional: true + vitest@3.0.2: + resolution: {integrity: sha512-5bzaHakQ0hmVVKLhfh/jXf6oETDBtgPo8tQCHYB+wftNgFJ+Hah67IsWc8ivx4vFL025Ow8UiuTf4W57z4izvQ==} + engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} + hasBin: true + peerDependencies: + '@edge-runtime/vm': '*' + '@types/node': ^18.0.0 || ^20.0.0 || >=22.0.0 + '@vitest/browser': 3.0.2 + '@vitest/ui': 3.0.2 + happy-dom: '*' + jsdom: '*' + peerDependenciesMeta: + '@edge-runtime/vm': + optional: true + '@types/node': + optional: true + '@vitest/browser': + optional: true + '@vitest/ui': + optional: true + happy-dom: + optional: true + jsdom: + optional: true + vizion@2.2.1: resolution: {integrity: sha512-sfAcO2yeSU0CSPFI/DmZp3FsFE9T+8913nv1xWBOyzODv13fwkn6Vl7HqxGpkr9F608M+8SuFId3s+BlZqfXww==} engines: {node: '>=4.0'} @@ -23128,6 +23627,11 @@ packages: resolution: {integrity: sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==} engines: {node: '>=18'} + wait-on@7.0.1: + resolution: {integrity: sha512-9AnJE9qTjRQOlTZIldAaf/da2eW0eSRSgcqq85mXQja/DW3MriHxkpODDSUEg+Gri/rKEcXUZHe+cevvYItaog==} + engines: {node: '>=12.0.0'} + hasBin: true + walk-up-path@3.0.1: resolution: {integrity: sha512-9YlCL/ynK3CTlrSRrDxZvUauLzAswPCrsaCgilqFevUYpeEW0/3ScEjaa3kbW/T0ghhkEr7mv+fpjqn1Y1YuTA==} @@ -23667,8 +24171,8 @@ packages: zimmerframe@1.1.2: resolution: {integrity: sha512-rAbqEGa8ovJy4pyBxZM70hg4pE6gDgaQ0Sl9M3enG3I0d6H4XSAM3GeNGLKnsBpuijUow064sf7ww1nutC5/3w==} - zksync-ethers@6.15.3: - resolution: {integrity: sha512-AAFf5HKlkGpLRSE1CB8gBIlswbnWBPHD2ex4bcFG8GJFr1iQuq+LbMrisDm17jNR4Msi1WkNgIartS7nXcOrTg==} + zksync-ethers@6.15.4: + resolution: {integrity: sha512-HyxuIfSs+axbk5gB+Nd7fjlVU1+c2IuZ5eJKNG1HLLRhJZsHLigR3AVS3FjTN/9fO/tToIeadxpZbu5M6NNb5A==} engines: {node: '>=18.9.0'} peerDependencies: ethers: ^6.7.1 @@ -23690,6 +24194,9 @@ packages: zstddec@0.0.2: resolution: {integrity: sha512-DCo0oxvcvOTGP/f5FA6tz2Z6wF+FIcEApSTu0zV5sQgn9hoT5lZ9YRAKUraxt9oP7l4e8TnNdi8IZTCX6WCkwA==} + zstddec@0.1.0: + resolution: {integrity: sha512-w2NTI8+3l3eeltKAdK8QpiLo/flRAr2p8AGeakfMZOXBxOg9HIu4LVDxBi81sYgVhFhdJjv1OrB5ssI8uFPoLg==} + zwitch@1.0.5: resolution: {integrity: sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==} @@ -23729,7 +24236,7 @@ snapshots: '@ethersproject/wallet': 5.7.0 '@project-serum/anchor': 0.26.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) '@solana/web3.js': 1.95.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 bs58: 6.0.0 cosmjs-types: 0.9.0 ethers: 6.8.1(bufferutil@4.0.9)(utf-8-validate@5.0.10) @@ -23754,22 +24261,58 @@ snapshots: - supports-color - utf-8-validate - '@3land/listings-sdk@0.0.4(@swc/core@1.10.7(@swc/helpers@0.5.15))(@types/node@20.17.9)(arweave@1.15.5)(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10)': + '@3land/listings-sdk@0.0.6(@swc/core@1.10.7(@swc/helpers@0.5.15))(@types/node@20.17.9)(arweave@1.15.5)(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/borsh': 0.30.1(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) + '@irys/sdk': 0.2.11(arweave@1.15.5)(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@metaplex-foundation/beet': 0.7.2 + '@metaplex-foundation/mpl-token-metadata': 2.13.0(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@project-serum/anchor': 0.26.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/spl-token': 0.2.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + anchor-client-gen: 0.28.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + bn: 1.0.5 + bn.js: 5.2.1 + bs58: 6.0.0 + buffer-layout: 1.2.2 + cyrb53: 1.0.0 + fs: 0.0.1-security + irys: 0.0.1 + node-fetch: 3.3.2 + ts-node: 10.9.2(@swc/core@1.10.7(@swc/helpers@0.5.15))(@types/node@20.17.9)(typescript@5.6.3) + tweetnacl: 1.0.3 + transitivePeerDependencies: + - '@swc/core' + - '@swc/wasm' + - '@types/node' + - arweave + - bufferutil + - debug + - encoding + - fastestsmallesttextencoderdecoder + - supports-color + - typescript + - utf-8-validate + + '@3land/listings-sdk@0.0.6(@swc/core@1.10.7(@swc/helpers@0.5.15))(@types/node@22.10.7)(arweave@1.15.5)(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10)': dependencies: '@coral-xyz/borsh': 0.30.1(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) '@irys/sdk': 0.2.11(arweave@1.15.5)(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) '@metaplex-foundation/beet': 0.7.2 '@metaplex-foundation/mpl-token-metadata': 2.13.0(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) '@project-serum/anchor': 0.26.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/spl-token': 0.2.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + anchor-client-gen: 0.28.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) bn: 1.0.5 bn.js: 5.2.1 bs58: 6.0.0 + buffer-layout: 1.2.2 cyrb53: 1.0.0 fs: 0.0.1-security irys: 0.0.1 node-fetch: 3.3.2 - ts-node: 10.9.2(@swc/core@1.10.7(@swc/helpers@0.5.15))(@types/node@20.17.9)(typescript@5.7.3) + ts-node: 10.9.2(@swc/core@1.10.7(@swc/helpers@0.5.15))(@types/node@22.10.7)(typescript@5.7.3) tweetnacl: 1.0.3 transitivePeerDependencies: - '@swc/core' @@ -23830,24 +24373,24 @@ snapshots: '@ai-sdk/provider-utils': 1.0.22(zod@3.23.8) zod: 3.23.8 - '@ai-sdk/mistral@1.0.8(zod@3.23.8)': + '@ai-sdk/mistral@1.1.0(zod@3.23.8)': dependencies: '@ai-sdk/provider': 1.0.4 - '@ai-sdk/provider-utils': 2.0.7(zod@3.23.8) + '@ai-sdk/provider-utils': 2.1.0(zod@3.23.8) zod: 3.23.8 - '@ai-sdk/openai@1.0.19(zod@3.24.1)': - dependencies: - '@ai-sdk/provider': 1.0.4 - '@ai-sdk/provider-utils': 2.0.7(zod@3.24.1) - zod: 3.24.1 - '@ai-sdk/openai@1.0.5(zod@3.23.8)': dependencies: '@ai-sdk/provider': 1.0.1 '@ai-sdk/provider-utils': 2.0.2(zod@3.23.8) zod: 3.23.8 + '@ai-sdk/openai@1.1.0(zod@3.24.1)': + dependencies: + '@ai-sdk/provider': 1.0.4 + '@ai-sdk/provider-utils': 2.1.0(zod@3.24.1) + zod: 3.24.1 + '@ai-sdk/provider-utils@1.0.20(zod@3.23.8)': dependencies: '@ai-sdk/provider': 0.0.24 @@ -23884,7 +24427,7 @@ snapshots: optionalDependencies: zod: 3.23.8 - '@ai-sdk/provider-utils@2.0.7(zod@3.23.8)': + '@ai-sdk/provider-utils@2.1.0(zod@3.23.8)': dependencies: '@ai-sdk/provider': 1.0.4 eventsource-parser: 3.0.0 @@ -23893,7 +24436,7 @@ snapshots: optionalDependencies: zod: 3.23.8 - '@ai-sdk/provider-utils@2.0.7(zod@3.24.1)': + '@ai-sdk/provider-utils@2.1.0(zod@3.24.1)': dependencies: '@ai-sdk/provider': 1.0.4 eventsource-parser: 3.0.0 @@ -23928,20 +24471,20 @@ snapshots: react: 19.0.0 zod: 3.23.8 - '@ai-sdk/react@1.0.11(react@19.0.0)(zod@3.23.8)': + '@ai-sdk/react@1.1.0(react@19.0.0)(zod@3.23.8)': dependencies: - '@ai-sdk/provider-utils': 2.0.7(zod@3.23.8) - '@ai-sdk/ui-utils': 1.0.10(zod@3.23.8) + '@ai-sdk/provider-utils': 2.1.0(zod@3.23.8) + '@ai-sdk/ui-utils': 1.1.0(zod@3.23.8) swr: 2.3.0(react@19.0.0) throttleit: 2.1.0 optionalDependencies: react: 19.0.0 zod: 3.23.8 - '@ai-sdk/react@1.0.11(react@19.0.0)(zod@3.24.1)': + '@ai-sdk/react@1.1.0(react@19.0.0)(zod@3.24.1)': dependencies: - '@ai-sdk/provider-utils': 2.0.7(zod@3.24.1) - '@ai-sdk/ui-utils': 1.0.10(zod@3.24.1) + '@ai-sdk/provider-utils': 2.1.0(zod@3.24.1) + '@ai-sdk/ui-utils': 1.1.0(zod@3.24.1) swr: 2.3.0(react@19.0.0) throttleit: 2.1.0 optionalDependencies: @@ -23955,13 +24498,13 @@ snapshots: transitivePeerDependencies: - zod - '@ai-sdk/svelte@0.0.57(svelte@5.18.0)(zod@3.23.8)': + '@ai-sdk/svelte@0.0.57(svelte@5.19.0)(zod@3.23.8)': dependencies: '@ai-sdk/provider-utils': 1.0.22(zod@3.23.8) '@ai-sdk/ui-utils': 0.0.50(zod@3.23.8) - sswr: 2.1.0(svelte@5.18.0) + sswr: 2.1.0(svelte@5.19.0) optionalDependencies: - svelte: 5.18.0 + svelte: 5.19.0 transitivePeerDependencies: - zod @@ -23975,18 +24518,18 @@ snapshots: optionalDependencies: zod: 3.23.8 - '@ai-sdk/ui-utils@1.0.10(zod@3.23.8)': + '@ai-sdk/ui-utils@1.1.0(zod@3.23.8)': dependencies: '@ai-sdk/provider': 1.0.4 - '@ai-sdk/provider-utils': 2.0.7(zod@3.23.8) + '@ai-sdk/provider-utils': 2.1.0(zod@3.23.8) zod-to-json-schema: 3.24.1(zod@3.23.8) optionalDependencies: zod: 3.23.8 - '@ai-sdk/ui-utils@1.0.10(zod@3.24.1)': + '@ai-sdk/ui-utils@1.1.0(zod@3.24.1)': dependencies: '@ai-sdk/provider': 1.0.4 - '@ai-sdk/provider-utils': 2.0.7(zod@3.24.1) + '@ai-sdk/provider-utils': 2.1.0(zod@3.24.1) zod-to-json-schema: 3.24.1(zod@3.24.1) optionalDependencies: zod: 3.24.1 @@ -24192,7 +24735,7 @@ snapshots: dependencies: '@types/node': 20.17.9 '@types/unzipper': 0.10.10 - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 chalk: 4.1.2 net: 1.0.2 socks-proxy-agent: 8.0.5 @@ -24297,20 +24840,20 @@ snapshots: '@aws-crypto/crc32@5.2.0': dependencies: '@aws-crypto/util': 5.2.0 - '@aws-sdk/types': 3.723.0 + '@aws-sdk/types': 3.731.0 tslib: 2.8.1 '@aws-crypto/crc32c@5.2.0': dependencies: '@aws-crypto/util': 5.2.0 - '@aws-sdk/types': 3.723.0 + '@aws-sdk/types': 3.731.0 tslib: 2.8.1 '@aws-crypto/sha1-browser@5.2.0': dependencies: '@aws-crypto/supports-web-crypto': 5.2.0 '@aws-crypto/util': 5.2.0 - '@aws-sdk/types': 3.723.0 + '@aws-sdk/types': 3.731.0 '@aws-sdk/util-locate-window': 3.723.0 '@smithy/util-utf8': 2.3.0 tslib: 2.8.1 @@ -24320,7 +24863,7 @@ 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.723.0 + '@aws-sdk/types': 3.731.0 '@aws-sdk/util-locate-window': 3.723.0 '@smithy/util-utf8': 2.3.0 tslib: 2.8.1 @@ -24328,7 +24871,7 @@ snapshots: '@aws-crypto/sha256-js@5.2.0': dependencies: '@aws-crypto/util': 5.2.0 - '@aws-sdk/types': 3.723.0 + '@aws-sdk/types': 3.731.0 tslib: 2.8.1 '@aws-crypto/supports-web-crypto@5.2.0': @@ -24337,27 +24880,25 @@ snapshots: '@aws-crypto/util@5.2.0': dependencies: - '@aws-sdk/types': 3.723.0 + '@aws-sdk/types': 3.731.0 '@smithy/util-utf8': 2.3.0 tslib: 2.8.1 - '@aws-sdk/client-polly@3.726.1': + '@aws-sdk/client-polly@3.731.0': dependencies: '@aws-crypto/sha256-browser': 5.2.0 '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/client-sso-oidc': 3.726.0(@aws-sdk/client-sts@3.726.1) - '@aws-sdk/client-sts': 3.726.1 - '@aws-sdk/core': 3.723.0 - '@aws-sdk/credential-provider-node': 3.726.0(@aws-sdk/client-sso-oidc@3.726.0(@aws-sdk/client-sts@3.726.1))(@aws-sdk/client-sts@3.726.1) - '@aws-sdk/middleware-host-header': 3.723.0 - '@aws-sdk/middleware-logger': 3.723.0 - '@aws-sdk/middleware-recursion-detection': 3.723.0 - '@aws-sdk/middleware-user-agent': 3.726.0 - '@aws-sdk/region-config-resolver': 3.723.0 - '@aws-sdk/types': 3.723.0 - '@aws-sdk/util-endpoints': 3.726.0 - '@aws-sdk/util-user-agent-browser': 3.723.0 - '@aws-sdk/util-user-agent-node': 3.726.0 + '@aws-sdk/core': 3.731.0 + '@aws-sdk/credential-provider-node': 3.731.0 + '@aws-sdk/middleware-host-header': 3.731.0 + '@aws-sdk/middleware-logger': 3.731.0 + '@aws-sdk/middleware-recursion-detection': 3.731.0 + '@aws-sdk/middleware-user-agent': 3.731.0 + '@aws-sdk/region-config-resolver': 3.731.0 + '@aws-sdk/types': 3.731.0 + '@aws-sdk/util-endpoints': 3.731.0 + '@aws-sdk/util-user-agent-browser': 3.731.0 + '@aws-sdk/util-user-agent-node': 3.731.0 '@smithy/config-resolver': 4.0.1 '@smithy/core': 3.1.1 '@smithy/fetch-http-handler': 5.0.1 @@ -24388,31 +24929,29 @@ snapshots: transitivePeerDependencies: - aws-crt - '@aws-sdk/client-s3@3.729.0': + '@aws-sdk/client-s3@3.731.0': dependencies: '@aws-crypto/sha1-browser': 5.2.0 '@aws-crypto/sha256-browser': 5.2.0 '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/client-sso-oidc': 3.726.0(@aws-sdk/client-sts@3.726.1) - '@aws-sdk/client-sts': 3.726.1 - '@aws-sdk/core': 3.723.0 - '@aws-sdk/credential-provider-node': 3.726.0(@aws-sdk/client-sso-oidc@3.726.0(@aws-sdk/client-sts@3.726.1))(@aws-sdk/client-sts@3.726.1) - '@aws-sdk/middleware-bucket-endpoint': 3.726.0 - '@aws-sdk/middleware-expect-continue': 3.723.0 - '@aws-sdk/middleware-flexible-checksums': 3.729.0 - '@aws-sdk/middleware-host-header': 3.723.0 - '@aws-sdk/middleware-location-constraint': 3.723.0 - '@aws-sdk/middleware-logger': 3.723.0 - '@aws-sdk/middleware-recursion-detection': 3.723.0 - '@aws-sdk/middleware-sdk-s3': 3.723.0 - '@aws-sdk/middleware-ssec': 3.723.0 - '@aws-sdk/middleware-user-agent': 3.726.0 - '@aws-sdk/region-config-resolver': 3.723.0 - '@aws-sdk/signature-v4-multi-region': 3.723.0 - '@aws-sdk/types': 3.723.0 - '@aws-sdk/util-endpoints': 3.726.0 - '@aws-sdk/util-user-agent-browser': 3.723.0 - '@aws-sdk/util-user-agent-node': 3.726.0 + '@aws-sdk/core': 3.731.0 + '@aws-sdk/credential-provider-node': 3.731.0 + '@aws-sdk/middleware-bucket-endpoint': 3.731.0 + '@aws-sdk/middleware-expect-continue': 3.731.0 + '@aws-sdk/middleware-flexible-checksums': 3.731.0 + '@aws-sdk/middleware-host-header': 3.731.0 + '@aws-sdk/middleware-location-constraint': 3.731.0 + '@aws-sdk/middleware-logger': 3.731.0 + '@aws-sdk/middleware-recursion-detection': 3.731.0 + '@aws-sdk/middleware-sdk-s3': 3.731.0 + '@aws-sdk/middleware-ssec': 3.731.0 + '@aws-sdk/middleware-user-agent': 3.731.0 + '@aws-sdk/region-config-resolver': 3.731.0 + '@aws-sdk/signature-v4-multi-region': 3.731.0 + '@aws-sdk/types': 3.731.0 + '@aws-sdk/util-endpoints': 3.731.0 + '@aws-sdk/util-user-agent-browser': 3.731.0 + '@aws-sdk/util-user-agent-node': 3.731.0 '@aws-sdk/xml-builder': 3.723.0 '@smithy/config-resolver': 4.0.1 '@smithy/core': 3.1.1 @@ -24451,22 +24990,20 @@ snapshots: transitivePeerDependencies: - aws-crt - '@aws-sdk/client-sso-oidc@3.726.0(@aws-sdk/client-sts@3.726.1)': + '@aws-sdk/client-sso@3.731.0': dependencies: '@aws-crypto/sha256-browser': 5.2.0 '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/client-sts': 3.726.1 - '@aws-sdk/core': 3.723.0 - '@aws-sdk/credential-provider-node': 3.726.0(@aws-sdk/client-sso-oidc@3.726.0(@aws-sdk/client-sts@3.726.1))(@aws-sdk/client-sts@3.726.1) - '@aws-sdk/middleware-host-header': 3.723.0 - '@aws-sdk/middleware-logger': 3.723.0 - '@aws-sdk/middleware-recursion-detection': 3.723.0 - '@aws-sdk/middleware-user-agent': 3.726.0 - '@aws-sdk/region-config-resolver': 3.723.0 - '@aws-sdk/types': 3.723.0 - '@aws-sdk/util-endpoints': 3.726.0 - '@aws-sdk/util-user-agent-browser': 3.723.0 - '@aws-sdk/util-user-agent-node': 3.726.0 + '@aws-sdk/core': 3.731.0 + '@aws-sdk/middleware-host-header': 3.731.0 + '@aws-sdk/middleware-logger': 3.731.0 + '@aws-sdk/middleware-recursion-detection': 3.731.0 + '@aws-sdk/middleware-user-agent': 3.731.0 + '@aws-sdk/region-config-resolver': 3.731.0 + '@aws-sdk/types': 3.731.0 + '@aws-sdk/util-endpoints': 3.731.0 + '@aws-sdk/util-user-agent-browser': 3.731.0 + '@aws-sdk/util-user-agent-node': 3.731.0 '@smithy/config-resolver': 4.0.1 '@smithy/core': 3.1.1 '@smithy/fetch-http-handler': 5.0.1 @@ -24496,115 +25033,25 @@ snapshots: transitivePeerDependencies: - aws-crt - '@aws-sdk/client-sso@3.726.0': + '@aws-sdk/client-transcribe-streaming@3.731.0': dependencies: '@aws-crypto/sha256-browser': 5.2.0 '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/core': 3.723.0 - '@aws-sdk/middleware-host-header': 3.723.0 - '@aws-sdk/middleware-logger': 3.723.0 - '@aws-sdk/middleware-recursion-detection': 3.723.0 - '@aws-sdk/middleware-user-agent': 3.726.0 - '@aws-sdk/region-config-resolver': 3.723.0 - '@aws-sdk/types': 3.723.0 - '@aws-sdk/util-endpoints': 3.726.0 - '@aws-sdk/util-user-agent-browser': 3.723.0 - '@aws-sdk/util-user-agent-node': 3.726.0 - '@smithy/config-resolver': 4.0.1 - '@smithy/core': 3.1.1 - '@smithy/fetch-http-handler': 5.0.1 - '@smithy/hash-node': 4.0.1 - '@smithy/invalid-dependency': 4.0.1 - '@smithy/middleware-content-length': 4.0.1 - '@smithy/middleware-endpoint': 4.0.2 - '@smithy/middleware-retry': 4.0.3 - '@smithy/middleware-serde': 4.0.1 - '@smithy/middleware-stack': 4.0.1 - '@smithy/node-config-provider': 4.0.1 - '@smithy/node-http-handler': 4.0.2 - '@smithy/protocol-http': 5.0.1 - '@smithy/smithy-client': 4.1.2 - '@smithy/types': 4.1.0 - '@smithy/url-parser': 4.0.1 - '@smithy/util-base64': 4.0.0 - '@smithy/util-body-length-browser': 4.0.0 - '@smithy/util-body-length-node': 4.0.0 - '@smithy/util-defaults-mode-browser': 4.0.3 - '@smithy/util-defaults-mode-node': 4.0.3 - '@smithy/util-endpoints': 3.0.1 - '@smithy/util-middleware': 4.0.1 - '@smithy/util-retry': 4.0.1 - '@smithy/util-utf8': 4.0.0 - tslib: 2.8.1 - transitivePeerDependencies: - - aws-crt - - '@aws-sdk/client-sts@3.726.1': - dependencies: - '@aws-crypto/sha256-browser': 5.2.0 - '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/client-sso-oidc': 3.726.0(@aws-sdk/client-sts@3.726.1) - '@aws-sdk/core': 3.723.0 - '@aws-sdk/credential-provider-node': 3.726.0(@aws-sdk/client-sso-oidc@3.726.0(@aws-sdk/client-sts@3.726.1))(@aws-sdk/client-sts@3.726.1) - '@aws-sdk/middleware-host-header': 3.723.0 - '@aws-sdk/middleware-logger': 3.723.0 - '@aws-sdk/middleware-recursion-detection': 3.723.0 - '@aws-sdk/middleware-user-agent': 3.726.0 - '@aws-sdk/region-config-resolver': 3.723.0 - '@aws-sdk/types': 3.723.0 - '@aws-sdk/util-endpoints': 3.726.0 - '@aws-sdk/util-user-agent-browser': 3.723.0 - '@aws-sdk/util-user-agent-node': 3.726.0 - '@smithy/config-resolver': 4.0.1 - '@smithy/core': 3.1.1 - '@smithy/fetch-http-handler': 5.0.1 - '@smithy/hash-node': 4.0.1 - '@smithy/invalid-dependency': 4.0.1 - '@smithy/middleware-content-length': 4.0.1 - '@smithy/middleware-endpoint': 4.0.2 - '@smithy/middleware-retry': 4.0.3 - '@smithy/middleware-serde': 4.0.1 - '@smithy/middleware-stack': 4.0.1 - '@smithy/node-config-provider': 4.0.1 - '@smithy/node-http-handler': 4.0.2 - '@smithy/protocol-http': 5.0.1 - '@smithy/smithy-client': 4.1.2 - '@smithy/types': 4.1.0 - '@smithy/url-parser': 4.0.1 - '@smithy/util-base64': 4.0.0 - '@smithy/util-body-length-browser': 4.0.0 - '@smithy/util-body-length-node': 4.0.0 - '@smithy/util-defaults-mode-browser': 4.0.3 - '@smithy/util-defaults-mode-node': 4.0.3 - '@smithy/util-endpoints': 3.0.1 - '@smithy/util-middleware': 4.0.1 - '@smithy/util-retry': 4.0.1 - '@smithy/util-utf8': 4.0.0 - tslib: 2.8.1 - transitivePeerDependencies: - - aws-crt - - '@aws-sdk/client-transcribe-streaming@3.726.1': - dependencies: - '@aws-crypto/sha256-browser': 5.2.0 - '@aws-crypto/sha256-js': 5.2.0 - '@aws-sdk/client-sso-oidc': 3.726.0(@aws-sdk/client-sts@3.726.1) - '@aws-sdk/client-sts': 3.726.1 - '@aws-sdk/core': 3.723.0 - '@aws-sdk/credential-provider-node': 3.726.0(@aws-sdk/client-sso-oidc@3.726.0(@aws-sdk/client-sts@3.726.1))(@aws-sdk/client-sts@3.726.1) - '@aws-sdk/eventstream-handler-node': 3.723.0 - '@aws-sdk/middleware-eventstream': 3.723.0 - '@aws-sdk/middleware-host-header': 3.723.0 - '@aws-sdk/middleware-logger': 3.723.0 - '@aws-sdk/middleware-recursion-detection': 3.723.0 - '@aws-sdk/middleware-sdk-transcribe-streaming': 3.723.0 - '@aws-sdk/middleware-user-agent': 3.726.0 - '@aws-sdk/middleware-websocket': 3.723.0 - '@aws-sdk/region-config-resolver': 3.723.0 - '@aws-sdk/types': 3.723.0 - '@aws-sdk/util-endpoints': 3.726.0 - '@aws-sdk/util-user-agent-browser': 3.723.0 - '@aws-sdk/util-user-agent-node': 3.726.0 + '@aws-sdk/core': 3.731.0 + '@aws-sdk/credential-provider-node': 3.731.0 + '@aws-sdk/eventstream-handler-node': 3.731.0 + '@aws-sdk/middleware-eventstream': 3.731.0 + '@aws-sdk/middleware-host-header': 3.731.0 + '@aws-sdk/middleware-logger': 3.731.0 + '@aws-sdk/middleware-recursion-detection': 3.731.0 + '@aws-sdk/middleware-sdk-transcribe-streaming': 3.731.0 + '@aws-sdk/middleware-user-agent': 3.731.0 + '@aws-sdk/middleware-websocket': 3.731.0 + '@aws-sdk/region-config-resolver': 3.731.0 + '@aws-sdk/types': 3.731.0 + '@aws-sdk/util-endpoints': 3.731.0 + '@aws-sdk/util-user-agent-browser': 3.731.0 + '@aws-sdk/util-user-agent-node': 3.731.0 '@smithy/config-resolver': 4.0.1 '@smithy/core': 3.1.1 '@smithy/eventstream-serde-browser': 4.0.1 @@ -24637,9 +25084,9 @@ snapshots: transitivePeerDependencies: - aws-crt - '@aws-sdk/core@3.723.0': + '@aws-sdk/core@3.731.0': dependencies: - '@aws-sdk/types': 3.723.0 + '@aws-sdk/types': 3.731.0 '@smithy/core': 3.1.1 '@smithy/node-config-provider': 4.0.1 '@smithy/property-provider': 4.0.1 @@ -24651,18 +25098,18 @@ snapshots: fast-xml-parser: 4.4.1 tslib: 2.8.1 - '@aws-sdk/credential-provider-env@3.723.0': + '@aws-sdk/credential-provider-env@3.731.0': dependencies: - '@aws-sdk/core': 3.723.0 - '@aws-sdk/types': 3.723.0 + '@aws-sdk/core': 3.731.0 + '@aws-sdk/types': 3.731.0 '@smithy/property-provider': 4.0.1 '@smithy/types': 4.1.0 tslib: 2.8.1 - '@aws-sdk/credential-provider-http@3.723.0': + '@aws-sdk/credential-provider-http@3.731.0': dependencies: - '@aws-sdk/core': 3.723.0 - '@aws-sdk/types': 3.723.0 + '@aws-sdk/core': 3.731.0 + '@aws-sdk/types': 3.731.0 '@smithy/fetch-http-handler': 5.0.1 '@smithy/node-http-handler': 4.0.2 '@smithy/property-provider': 4.0.1 @@ -24672,86 +25119,84 @@ snapshots: '@smithy/util-stream': 4.0.2 tslib: 2.8.1 - '@aws-sdk/credential-provider-ini@3.726.0(@aws-sdk/client-sso-oidc@3.726.0(@aws-sdk/client-sts@3.726.1))(@aws-sdk/client-sts@3.726.1)': + '@aws-sdk/credential-provider-ini@3.731.0': dependencies: - '@aws-sdk/client-sts': 3.726.1 - '@aws-sdk/core': 3.723.0 - '@aws-sdk/credential-provider-env': 3.723.0 - '@aws-sdk/credential-provider-http': 3.723.0 - '@aws-sdk/credential-provider-process': 3.723.0 - '@aws-sdk/credential-provider-sso': 3.726.0(@aws-sdk/client-sso-oidc@3.726.0(@aws-sdk/client-sts@3.726.1)) - '@aws-sdk/credential-provider-web-identity': 3.723.0(@aws-sdk/client-sts@3.726.1) - '@aws-sdk/types': 3.723.0 + '@aws-sdk/core': 3.731.0 + '@aws-sdk/credential-provider-env': 3.731.0 + '@aws-sdk/credential-provider-http': 3.731.0 + '@aws-sdk/credential-provider-process': 3.731.0 + '@aws-sdk/credential-provider-sso': 3.731.0 + '@aws-sdk/credential-provider-web-identity': 3.731.0 + '@aws-sdk/nested-clients': 3.731.0 + '@aws-sdk/types': 3.731.0 '@smithy/credential-provider-imds': 4.0.1 '@smithy/property-provider': 4.0.1 '@smithy/shared-ini-file-loader': 4.0.1 '@smithy/types': 4.1.0 tslib: 2.8.1 transitivePeerDependencies: - - '@aws-sdk/client-sso-oidc' - aws-crt - '@aws-sdk/credential-provider-node@3.726.0(@aws-sdk/client-sso-oidc@3.726.0(@aws-sdk/client-sts@3.726.1))(@aws-sdk/client-sts@3.726.1)': + '@aws-sdk/credential-provider-node@3.731.0': dependencies: - '@aws-sdk/credential-provider-env': 3.723.0 - '@aws-sdk/credential-provider-http': 3.723.0 - '@aws-sdk/credential-provider-ini': 3.726.0(@aws-sdk/client-sso-oidc@3.726.0(@aws-sdk/client-sts@3.726.1))(@aws-sdk/client-sts@3.726.1) - '@aws-sdk/credential-provider-process': 3.723.0 - '@aws-sdk/credential-provider-sso': 3.726.0(@aws-sdk/client-sso-oidc@3.726.0(@aws-sdk/client-sts@3.726.1)) - '@aws-sdk/credential-provider-web-identity': 3.723.0(@aws-sdk/client-sts@3.726.1) - '@aws-sdk/types': 3.723.0 + '@aws-sdk/credential-provider-env': 3.731.0 + '@aws-sdk/credential-provider-http': 3.731.0 + '@aws-sdk/credential-provider-ini': 3.731.0 + '@aws-sdk/credential-provider-process': 3.731.0 + '@aws-sdk/credential-provider-sso': 3.731.0 + '@aws-sdk/credential-provider-web-identity': 3.731.0 + '@aws-sdk/types': 3.731.0 '@smithy/credential-provider-imds': 4.0.1 '@smithy/property-provider': 4.0.1 '@smithy/shared-ini-file-loader': 4.0.1 '@smithy/types': 4.1.0 tslib: 2.8.1 transitivePeerDependencies: - - '@aws-sdk/client-sso-oidc' - - '@aws-sdk/client-sts' - aws-crt - '@aws-sdk/credential-provider-process@3.723.0': + '@aws-sdk/credential-provider-process@3.731.0': dependencies: - '@aws-sdk/core': 3.723.0 - '@aws-sdk/types': 3.723.0 + '@aws-sdk/core': 3.731.0 + '@aws-sdk/types': 3.731.0 '@smithy/property-provider': 4.0.1 '@smithy/shared-ini-file-loader': 4.0.1 '@smithy/types': 4.1.0 tslib: 2.8.1 - '@aws-sdk/credential-provider-sso@3.726.0(@aws-sdk/client-sso-oidc@3.726.0(@aws-sdk/client-sts@3.726.1))': + '@aws-sdk/credential-provider-sso@3.731.0': dependencies: - '@aws-sdk/client-sso': 3.726.0 - '@aws-sdk/core': 3.723.0 - '@aws-sdk/token-providers': 3.723.0(@aws-sdk/client-sso-oidc@3.726.0(@aws-sdk/client-sts@3.726.1)) - '@aws-sdk/types': 3.723.0 + '@aws-sdk/client-sso': 3.731.0 + '@aws-sdk/core': 3.731.0 + '@aws-sdk/token-providers': 3.731.0 + '@aws-sdk/types': 3.731.0 '@smithy/property-provider': 4.0.1 '@smithy/shared-ini-file-loader': 4.0.1 '@smithy/types': 4.1.0 tslib: 2.8.1 transitivePeerDependencies: - - '@aws-sdk/client-sso-oidc' - aws-crt - '@aws-sdk/credential-provider-web-identity@3.723.0(@aws-sdk/client-sts@3.726.1)': + '@aws-sdk/credential-provider-web-identity@3.731.0': dependencies: - '@aws-sdk/client-sts': 3.726.1 - '@aws-sdk/core': 3.723.0 - '@aws-sdk/types': 3.723.0 + '@aws-sdk/core': 3.731.0 + '@aws-sdk/nested-clients': 3.731.0 + '@aws-sdk/types': 3.731.0 '@smithy/property-provider': 4.0.1 '@smithy/types': 4.1.0 tslib: 2.8.1 + transitivePeerDependencies: + - aws-crt - '@aws-sdk/eventstream-handler-node@3.723.0': + '@aws-sdk/eventstream-handler-node@3.731.0': dependencies: - '@aws-sdk/types': 3.723.0 + '@aws-sdk/types': 3.731.0 '@smithy/eventstream-codec': 4.0.1 '@smithy/types': 4.1.0 tslib: 2.8.1 - '@aws-sdk/middleware-bucket-endpoint@3.726.0': + '@aws-sdk/middleware-bucket-endpoint@3.731.0': dependencies: - '@aws-sdk/types': 3.723.0 + '@aws-sdk/types': 3.731.0 '@aws-sdk/util-arn-parser': 3.723.0 '@smithy/node-config-provider': 4.0.1 '@smithy/protocol-http': 5.0.1 @@ -24759,27 +25204,27 @@ snapshots: '@smithy/util-config-provider': 4.0.0 tslib: 2.8.1 - '@aws-sdk/middleware-eventstream@3.723.0': + '@aws-sdk/middleware-eventstream@3.731.0': dependencies: - '@aws-sdk/types': 3.723.0 + '@aws-sdk/types': 3.731.0 '@smithy/protocol-http': 5.0.1 '@smithy/types': 4.1.0 tslib: 2.8.1 - '@aws-sdk/middleware-expect-continue@3.723.0': + '@aws-sdk/middleware-expect-continue@3.731.0': dependencies: - '@aws-sdk/types': 3.723.0 + '@aws-sdk/types': 3.731.0 '@smithy/protocol-http': 5.0.1 '@smithy/types': 4.1.0 tslib: 2.8.1 - '@aws-sdk/middleware-flexible-checksums@3.729.0': + '@aws-sdk/middleware-flexible-checksums@3.731.0': dependencies: '@aws-crypto/crc32': 5.2.0 '@aws-crypto/crc32c': 5.2.0 '@aws-crypto/util': 5.2.0 - '@aws-sdk/core': 3.723.0 - '@aws-sdk/types': 3.723.0 + '@aws-sdk/core': 3.731.0 + '@aws-sdk/types': 3.731.0 '@smithy/is-array-buffer': 4.0.0 '@smithy/node-config-provider': 4.0.1 '@smithy/protocol-http': 5.0.1 @@ -24789,36 +25234,36 @@ snapshots: '@smithy/util-utf8': 4.0.0 tslib: 2.8.1 - '@aws-sdk/middleware-host-header@3.723.0': + '@aws-sdk/middleware-host-header@3.731.0': dependencies: - '@aws-sdk/types': 3.723.0 + '@aws-sdk/types': 3.731.0 '@smithy/protocol-http': 5.0.1 '@smithy/types': 4.1.0 tslib: 2.8.1 - '@aws-sdk/middleware-location-constraint@3.723.0': + '@aws-sdk/middleware-location-constraint@3.731.0': dependencies: - '@aws-sdk/types': 3.723.0 + '@aws-sdk/types': 3.731.0 '@smithy/types': 4.1.0 tslib: 2.8.1 - '@aws-sdk/middleware-logger@3.723.0': + '@aws-sdk/middleware-logger@3.731.0': dependencies: - '@aws-sdk/types': 3.723.0 + '@aws-sdk/types': 3.731.0 '@smithy/types': 4.1.0 tslib: 2.8.1 - '@aws-sdk/middleware-recursion-detection@3.723.0': + '@aws-sdk/middleware-recursion-detection@3.731.0': dependencies: - '@aws-sdk/types': 3.723.0 + '@aws-sdk/types': 3.731.0 '@smithy/protocol-http': 5.0.1 '@smithy/types': 4.1.0 tslib: 2.8.1 - '@aws-sdk/middleware-sdk-s3@3.723.0': + '@aws-sdk/middleware-sdk-s3@3.731.0': dependencies: - '@aws-sdk/core': 3.723.0 - '@aws-sdk/types': 3.723.0 + '@aws-sdk/core': 3.731.0 + '@aws-sdk/types': 3.731.0 '@aws-sdk/util-arn-parser': 3.723.0 '@smithy/core': 3.1.1 '@smithy/node-config-provider': 4.0.1 @@ -24832,10 +25277,10 @@ snapshots: '@smithy/util-utf8': 4.0.0 tslib: 2.8.1 - '@aws-sdk/middleware-sdk-transcribe-streaming@3.723.0': + '@aws-sdk/middleware-sdk-transcribe-streaming@3.731.0': dependencies: - '@aws-sdk/types': 3.723.0 - '@aws-sdk/util-format-url': 3.723.0 + '@aws-sdk/types': 3.731.0 + '@aws-sdk/util-format-url': 3.731.0 '@smithy/eventstream-serde-browser': 4.0.1 '@smithy/protocol-http': 5.0.1 '@smithy/signature-v4': 5.0.1 @@ -24843,26 +25288,26 @@ snapshots: tslib: 2.8.1 uuid: 9.0.1 - '@aws-sdk/middleware-ssec@3.723.0': + '@aws-sdk/middleware-ssec@3.731.0': dependencies: - '@aws-sdk/types': 3.723.0 + '@aws-sdk/types': 3.731.0 '@smithy/types': 4.1.0 tslib: 2.8.1 - '@aws-sdk/middleware-user-agent@3.726.0': + '@aws-sdk/middleware-user-agent@3.731.0': dependencies: - '@aws-sdk/core': 3.723.0 - '@aws-sdk/types': 3.723.0 - '@aws-sdk/util-endpoints': 3.726.0 + '@aws-sdk/core': 3.731.0 + '@aws-sdk/types': 3.731.0 + '@aws-sdk/util-endpoints': 3.731.0 '@smithy/core': 3.1.1 '@smithy/protocol-http': 5.0.1 '@smithy/types': 4.1.0 tslib: 2.8.1 - '@aws-sdk/middleware-websocket@3.723.0': + '@aws-sdk/middleware-websocket@3.731.0': dependencies: - '@aws-sdk/types': 3.723.0 - '@aws-sdk/util-format-url': 3.723.0 + '@aws-sdk/types': 3.731.0 + '@aws-sdk/util-format-url': 3.731.0 '@smithy/eventstream-codec': 4.0.1 '@smithy/eventstream-serde-browser': 4.0.1 '@smithy/fetch-http-handler': 5.0.1 @@ -24872,45 +25317,90 @@ snapshots: '@smithy/util-hex-encoding': 4.0.0 tslib: 2.8.1 - '@aws-sdk/region-config-resolver@3.723.0': + '@aws-sdk/nested-clients@3.731.0': dependencies: - '@aws-sdk/types': 3.723.0 + '@aws-crypto/sha256-browser': 5.2.0 + '@aws-crypto/sha256-js': 5.2.0 + '@aws-sdk/core': 3.731.0 + '@aws-sdk/middleware-host-header': 3.731.0 + '@aws-sdk/middleware-logger': 3.731.0 + '@aws-sdk/middleware-recursion-detection': 3.731.0 + '@aws-sdk/middleware-user-agent': 3.731.0 + '@aws-sdk/region-config-resolver': 3.731.0 + '@aws-sdk/types': 3.731.0 + '@aws-sdk/util-endpoints': 3.731.0 + '@aws-sdk/util-user-agent-browser': 3.731.0 + '@aws-sdk/util-user-agent-node': 3.731.0 + '@smithy/config-resolver': 4.0.1 + '@smithy/core': 3.1.1 + '@smithy/fetch-http-handler': 5.0.1 + '@smithy/hash-node': 4.0.1 + '@smithy/invalid-dependency': 4.0.1 + '@smithy/middleware-content-length': 4.0.1 + '@smithy/middleware-endpoint': 4.0.2 + '@smithy/middleware-retry': 4.0.3 + '@smithy/middleware-serde': 4.0.1 + '@smithy/middleware-stack': 4.0.1 + '@smithy/node-config-provider': 4.0.1 + '@smithy/node-http-handler': 4.0.2 + '@smithy/protocol-http': 5.0.1 + '@smithy/smithy-client': 4.1.2 + '@smithy/types': 4.1.0 + '@smithy/url-parser': 4.0.1 + '@smithy/util-base64': 4.0.0 + '@smithy/util-body-length-browser': 4.0.0 + '@smithy/util-body-length-node': 4.0.0 + '@smithy/util-defaults-mode-browser': 4.0.3 + '@smithy/util-defaults-mode-node': 4.0.3 + '@smithy/util-endpoints': 3.0.1 + '@smithy/util-middleware': 4.0.1 + '@smithy/util-retry': 4.0.1 + '@smithy/util-utf8': 4.0.0 + tslib: 2.8.1 + transitivePeerDependencies: + - aws-crt + + '@aws-sdk/region-config-resolver@3.731.0': + dependencies: + '@aws-sdk/types': 3.731.0 '@smithy/node-config-provider': 4.0.1 '@smithy/types': 4.1.0 '@smithy/util-config-provider': 4.0.0 '@smithy/util-middleware': 4.0.1 tslib: 2.8.1 - '@aws-sdk/s3-request-presigner@3.729.0': + '@aws-sdk/s3-request-presigner@3.731.0': dependencies: - '@aws-sdk/signature-v4-multi-region': 3.723.0 - '@aws-sdk/types': 3.723.0 - '@aws-sdk/util-format-url': 3.723.0 + '@aws-sdk/signature-v4-multi-region': 3.731.0 + '@aws-sdk/types': 3.731.0 + '@aws-sdk/util-format-url': 3.731.0 '@smithy/middleware-endpoint': 4.0.2 '@smithy/protocol-http': 5.0.1 '@smithy/smithy-client': 4.1.2 '@smithy/types': 4.1.0 tslib: 2.8.1 - '@aws-sdk/signature-v4-multi-region@3.723.0': + '@aws-sdk/signature-v4-multi-region@3.731.0': dependencies: - '@aws-sdk/middleware-sdk-s3': 3.723.0 - '@aws-sdk/types': 3.723.0 + '@aws-sdk/middleware-sdk-s3': 3.731.0 + '@aws-sdk/types': 3.731.0 '@smithy/protocol-http': 5.0.1 '@smithy/signature-v4': 5.0.1 '@smithy/types': 4.1.0 tslib: 2.8.1 - '@aws-sdk/token-providers@3.723.0(@aws-sdk/client-sso-oidc@3.726.0(@aws-sdk/client-sts@3.726.1))': + '@aws-sdk/token-providers@3.731.0': dependencies: - '@aws-sdk/client-sso-oidc': 3.726.0(@aws-sdk/client-sts@3.726.1) - '@aws-sdk/types': 3.723.0 + '@aws-sdk/nested-clients': 3.731.0 + '@aws-sdk/types': 3.731.0 '@smithy/property-provider': 4.0.1 '@smithy/shared-ini-file-loader': 4.0.1 '@smithy/types': 4.1.0 tslib: 2.8.1 + transitivePeerDependencies: + - aws-crt - '@aws-sdk/types@3.723.0': + '@aws-sdk/types@3.731.0': dependencies: '@smithy/types': 4.1.0 tslib: 2.8.1 @@ -24919,16 +25409,16 @@ snapshots: dependencies: tslib: 2.8.1 - '@aws-sdk/util-endpoints@3.726.0': + '@aws-sdk/util-endpoints@3.731.0': dependencies: - '@aws-sdk/types': 3.723.0 + '@aws-sdk/types': 3.731.0 '@smithy/types': 4.1.0 '@smithy/util-endpoints': 3.0.1 tslib: 2.8.1 - '@aws-sdk/util-format-url@3.723.0': + '@aws-sdk/util-format-url@3.731.0': dependencies: - '@aws-sdk/types': 3.723.0 + '@aws-sdk/types': 3.731.0 '@smithy/querystring-builder': 4.0.1 '@smithy/types': 4.1.0 tslib: 2.8.1 @@ -24937,17 +25427,17 @@ snapshots: dependencies: tslib: 2.8.1 - '@aws-sdk/util-user-agent-browser@3.723.0': + '@aws-sdk/util-user-agent-browser@3.731.0': dependencies: - '@aws-sdk/types': 3.723.0 + '@aws-sdk/types': 3.731.0 '@smithy/types': 4.1.0 bowser: 2.11.0 tslib: 2.8.1 - '@aws-sdk/util-user-agent-node@3.726.0': + '@aws-sdk/util-user-agent-node@3.731.0': dependencies: - '@aws-sdk/middleware-user-agent': 3.726.0 - '@aws-sdk/types': 3.723.0 + '@aws-sdk/middleware-user-agent': 3.731.0 + '@aws-sdk/types': 3.731.0 '@smithy/node-config-provider': 4.0.1 '@smithy/types': 4.1.0 tslib: 2.8.1 @@ -25807,6 +26297,8 @@ snapshots: '@bcoe/v8-coverage@0.2.3': {} + '@bcoe/v8-coverage@1.0.2': {} + '@bigmi/core@0.0.4(bitcoinjs-lib@7.0.0-rc.0(typescript@5.7.3))(bs58@6.0.0)(viem@2.21.58(bufferutil@4.0.9)(typescript@5.7.3)(utf-8-validate@6.0.5)(zod@3.24.1))': dependencies: '@noble/hashes': 1.7.0 @@ -25817,7 +26309,7 @@ snapshots: '@binance/connector@3.6.1(bufferutil@4.0.9)(utf-8-validate@6.0.5)': dependencies: - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 ws: 8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5) transitivePeerDependencies: - bufferutil @@ -25870,6 +26362,25 @@ snapshots: bs58: 5.0.0 buffer: 6.0.3 + '@bonfida/spl-name-service@3.0.7(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@bonfida/sns-records': 0.0.1(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) + '@noble/curves': 1.8.0 + '@scure/base': 1.2.1 + '@solana/spl-token': 0.4.6(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + borsh: 2.0.0 + buffer: 6.0.3 + graphemesplit: 2.4.4 + ipaddr.js: 2.2.0 + punycode: 2.3.1 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - typescript + - utf-8-validate + '@bonfida/spl-name-service@3.0.7(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10)': dependencies: '@bonfida/sns-records': 0.0.1(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) @@ -25893,13 +26404,17 @@ snapshots: '@brandonblack/musig@0.0.1-alpha.1': {} + '@brokerloop/ttlcache@3.2.3': + dependencies: + '@soncodi/signal': 2.0.7 + '@cfworker/json-schema@4.1.0': {} - '@chain-registry/types@0.50.50': {} + '@chain-registry/types@0.50.51': {} - '@chain-registry/utils@1.51.50': + '@chain-registry/utils@1.51.51': dependencies: - '@chain-registry/types': 0.50.50 + '@chain-registry/types': 0.50.51 bignumber.js: 9.1.2 sha.js: 2.4.11 @@ -25920,6 +26435,34 @@ snapshots: '@chevrotain/utils@11.0.3': {} + '@cks-systems/manifest-sdk@0.1.59(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@metaplex-foundation/beet': 0.7.2 + '@metaplex-foundation/rustbin': 0.3.5 + '@metaplex-foundation/solita': 0.12.2(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + bn.js: 5.2.1 + borsh: 0.7.0 + bs58: 6.0.0 + express: 4.21.1 + express-prom-bundle: 7.0.2(prom-client@15.1.3) + js-sha256: 0.11.0 + keccak256: 1.0.6 + percentile: 1.6.0 + prom-client: 15.1.3 + rimraf: 5.0.10 + typedoc: 0.26.11(typescript@5.6.3) + ws: 8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) + zstddec: 0.0.2 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - supports-color + - typescript + - utf-8-validate + '@cks-systems/manifest-sdk@0.1.59(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10)': dependencies: '@metaplex-foundation/beet': 0.7.2 @@ -25991,11 +26534,11 @@ snapshots: - typescript - utf-8-validate - '@coinbase/cdp-langchain@0.0.11(@coinbase/coinbase-sdk@0.13.0(bufferutil@4.0.9)(typescript@5.7.3)(utf-8-validate@6.0.5)(zod@3.23.8))(bufferutil@4.0.9)(openai@4.78.1(encoding@0.1.13)(zod@3.23.8))(typescript@5.7.3)(utf-8-validate@6.0.5)': + '@coinbase/cdp-langchain@0.0.11(@coinbase/coinbase-sdk@0.13.0(bufferutil@4.0.9)(typescript@5.7.3)(utf-8-validate@6.0.5)(zod@3.23.8))(bufferutil@4.0.9)(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5))(zod@3.23.8))(typescript@5.7.3)(utf-8-validate@6.0.5)': dependencies: '@coinbase/cdp-agentkit-core': 0.0.10(bufferutil@4.0.9)(typescript@5.7.3)(utf-8-validate@6.0.5) '@coinbase/coinbase-sdk': 0.13.0(bufferutil@4.0.9)(typescript@5.7.3)(utf-8-validate@6.0.5)(zod@3.23.8) - '@langchain/core': 0.3.30(openai@4.78.1(encoding@0.1.13)(zod@3.23.8)) + '@langchain/core': 0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5))(zod@3.23.8)) zod: 3.23.8 transitivePeerDependencies: - bufferutil @@ -26008,7 +26551,7 @@ snapshots: dependencies: '@scure/bip32': 1.6.1 abitype: 1.0.8(typescript@5.6.3)(zod@3.24.1) - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 axios-mock-adapter: 1.22.0(axios@1.7.9) axios-retry: 4.5.0(axios@1.7.9) bip32: 4.0.0 @@ -26030,7 +26573,7 @@ snapshots: dependencies: '@scure/bip32': 1.6.1 abitype: 1.0.8(typescript@5.7.3)(zod@3.23.8) - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 axios-mock-adapter: 1.22.0(axios@1.7.9) axios-retry: 4.5.0(axios@1.7.9) bip32: 4.0.0 @@ -26050,7 +26593,7 @@ snapshots: '@coinbase/wallet-sdk@4.2.4': dependencies: - '@noble/hashes': 1.7.0 + '@noble/hashes': 1.6.1 clsx: 1.2.1 eventemitter3: 5.0.1 preact: 10.25.4 @@ -26222,6 +26765,28 @@ snapshots: - encoding - utf-8-validate + '@coral-xyz/anchor@0.28.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/borsh': 0.28.0(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + base64-js: 1.5.1 + bn.js: 5.2.1 + bs58: 4.0.1 + buffer-layout: 1.2.2 + camelcase: 6.3.0 + cross-fetch: 3.2.0(encoding@0.1.13) + crypto-hash: 1.3.0 + eventemitter3: 4.0.7 + js-sha256: 0.9.0 + pako: 2.1.0 + snake-case: 3.0.4 + superstruct: 0.15.5 + toml: 3.0.0 + transitivePeerDependencies: + - bufferutil + - encoding + - utf-8-validate + '@coral-xyz/anchor@0.29.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)': dependencies: '@coral-xyz/borsh': 0.29.0(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) @@ -26246,9 +26811,9 @@ snapshots: '@coral-xyz/anchor@0.30.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)': dependencies: '@coral-xyz/anchor-errors': 0.30.1 - '@coral-xyz/borsh': 0.30.1(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) + '@coral-xyz/borsh': 0.30.1(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) '@noble/hashes': 1.7.0 - '@solana/web3.js': 1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) bn.js: 5.2.1 bs58: 4.0.1 buffer-layout: 1.2.2 @@ -26268,9 +26833,9 @@ snapshots: '@coral-xyz/anchor@0.30.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@6.0.5)': dependencies: '@coral-xyz/anchor-errors': 0.30.1 - '@coral-xyz/borsh': 0.30.1(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@6.0.5)) + '@coral-xyz/borsh': 0.30.1(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@6.0.5)) '@noble/hashes': 1.7.0 - '@solana/web3.js': 1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@6.0.5) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@6.0.5) bn.js: 5.2.1 bs58: 4.0.1 buffer-layout: 1.2.2 @@ -26317,15 +26882,9 @@ snapshots: bn.js: 5.2.1 buffer-layout: 1.2.2 - '@coral-xyz/borsh@0.30.1(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))': + '@coral-xyz/borsh@0.30.1(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@6.0.5))': dependencies: - '@solana/web3.js': 1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) - bn.js: 5.2.1 - buffer-layout: 1.2.2 - - '@coral-xyz/borsh@0.30.1(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@6.0.5))': - dependencies: - '@solana/web3.js': 1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@6.0.5) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@6.0.5) bn.js: 5.2.1 buffer-layout: 1.2.2 @@ -26649,7 +27208,7 @@ snapshots: '@cosmjs/socket': 0.32.4(bufferutil@4.0.9)(utf-8-validate@5.0.10) '@cosmjs/stream': 0.32.4 '@cosmjs/utils': 0.32.4 - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 readonly-date: 1.0.0 xstream: 11.14.0 transitivePeerDependencies: @@ -26666,7 +27225,7 @@ snapshots: '@cosmjs/socket': 0.32.4(bufferutil@4.0.9)(utf-8-validate@5.0.10) '@cosmjs/stream': 0.32.4 '@cosmjs/utils': 0.32.4 - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 readonly-date: 1.0.0 xstream: 11.14.0 transitivePeerDependencies: @@ -26683,7 +27242,7 @@ snapshots: '@cosmjs/socket': 0.32.4(bufferutil@4.0.9)(utf-8-validate@6.0.5) '@cosmjs/stream': 0.32.4 '@cosmjs/utils': 0.32.4 - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 readonly-date: 1.0.0 xstream: 11.14.0 transitivePeerDependencies: @@ -27016,7 +27575,7 @@ snapshots: '@discordjs/formatters': 0.6.0 '@discordjs/util': 1.1.1 '@sapphire/shapeshift': 4.0.0 - discord-api-types: 0.37.115 + discord-api-types: 0.37.116 fast-deep-equal: 3.1.3 ts-mixer: 6.0.4 tslib: 2.8.1 @@ -27031,7 +27590,7 @@ snapshots: '@discordjs/formatters@0.6.0': dependencies: - discord-api-types: 0.37.115 + discord-api-types: 0.37.116 '@discordjs/node-pre-gyp@0.4.5(encoding@0.1.13)': dependencies: @@ -27975,6 +28534,167 @@ snapshots: - uglify-js - webpack-cli + '@drift-labs/sdk@2.107.0-beta.3(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/anchor': 0.29.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@coral-xyz/anchor-30': '@coral-xyz/anchor@0.30.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)' + '@ellipsis-labs/phoenix-sdk': 1.4.5(@solana/web3.js@1.92.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@grpc/grpc-js': 1.12.5 + '@openbook-dex/openbook-v2': 0.2.10(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@project-serum/serum': 0.13.65(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@pythnetwork/client': 2.5.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@pythnetwork/price-service-sdk': 1.7.1 + '@pythnetwork/pyth-solana-receiver': 0.7.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/spl-token': 0.3.7(@solana/web3.js@1.92.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.92.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@switchboard-xyz/on-demand': 1.2.42(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@triton-one/yellowstone-grpc': 1.3.0 + anchor-bankrun: 0.3.0(@coral-xyz/anchor@0.29.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(@solana/web3.js@1.92.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(solana-bankrun@0.3.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) + nanoid: 3.3.4 + node-cache: 5.1.2 + rpc-websockets: 7.5.1 + solana-bankrun: 0.3.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + strict-event-emitter-types: 2.0.0 + tweetnacl: 1.0.3 + tweetnacl-util: 0.15.1 + uuid: 8.3.2 + yargs: 17.7.2 + zstddec: 0.1.0 + transitivePeerDependencies: + - bufferutil + - debug + - encoding + - fastestsmallesttextencoderdecoder + - supports-color + - typescript + - utf-8-validate + + '@drift-labs/sdk@2.107.0-beta.3(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/anchor': 0.29.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@coral-xyz/anchor-30': '@coral-xyz/anchor@0.30.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)' + '@ellipsis-labs/phoenix-sdk': 1.4.5(@solana/web3.js@1.92.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@grpc/grpc-js': 1.12.5 + '@openbook-dex/openbook-v2': 0.2.10(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) + '@project-serum/serum': 0.13.65(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@pythnetwork/client': 2.5.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@pythnetwork/price-service-sdk': 1.7.1 + '@pythnetwork/pyth-solana-receiver': 0.7.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/spl-token': 0.3.7(@solana/web3.js@1.92.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.92.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@switchboard-xyz/on-demand': 1.2.42(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@triton-one/yellowstone-grpc': 1.3.0 + anchor-bankrun: 0.3.0(@coral-xyz/anchor@0.29.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(@solana/web3.js@1.92.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(solana-bankrun@0.3.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) + nanoid: 3.3.4 + node-cache: 5.1.2 + rpc-websockets: 7.5.1 + solana-bankrun: 0.3.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + strict-event-emitter-types: 2.0.0 + tweetnacl: 1.0.3 + tweetnacl-util: 0.15.1 + uuid: 8.3.2 + yargs: 17.7.2 + zstddec: 0.1.0 + transitivePeerDependencies: + - bufferutil + - debug + - encoding + - fastestsmallesttextencoderdecoder + - supports-color + - typescript + - utf-8-validate + + '@drift-labs/sdk@2.107.0-beta.7(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/anchor': 0.29.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@coral-xyz/anchor-30': '@coral-xyz/anchor@0.30.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)' + '@ellipsis-labs/phoenix-sdk': 1.4.5(@solana/web3.js@1.92.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@grpc/grpc-js': 1.12.5 + '@openbook-dex/openbook-v2': 0.2.10(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@project-serum/serum': 0.13.65(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@pythnetwork/client': 2.5.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@pythnetwork/price-service-sdk': 1.7.1 + '@pythnetwork/pyth-solana-receiver': 0.7.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/spl-token': 0.3.7(@solana/web3.js@1.92.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.92.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@switchboard-xyz/on-demand': 1.2.42(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@triton-one/yellowstone-grpc': 1.3.0 + anchor-bankrun: 0.3.0(@coral-xyz/anchor@0.29.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(@solana/web3.js@1.92.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(solana-bankrun@0.3.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) + nanoid: 3.3.4 + node-cache: 5.1.2 + rpc-websockets: 7.5.1 + solana-bankrun: 0.3.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + strict-event-emitter-types: 2.0.0 + tweetnacl: 1.0.3 + tweetnacl-util: 0.15.1 + uuid: 8.3.2 + yargs: 17.7.2 + zstddec: 0.1.0 + transitivePeerDependencies: + - bufferutil + - debug + - encoding + - fastestsmallesttextencoderdecoder + - supports-color + - typescript + - utf-8-validate + + '@drift-labs/vaults-sdk@0.2.55(@swc/core@1.10.7(@swc/helpers@0.5.15))(@types/node@20.17.9)(arweave@1.15.5)(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/anchor': 0.28.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@drift-labs/sdk': 2.107.0-beta.7(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@ledgerhq/hw-app-solana': 7.2.4 + '@ledgerhq/hw-transport': 6.31.4 + '@ledgerhq/hw-transport-node-hid': 6.29.5 + '@metaplex-foundation/js': 0.20.1(arweave@1.15.5)(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/wallet-adapter-ledger': 0.9.25(@solana/web3.js@1.92.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) + '@solana/web3.js': 1.92.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + commander: 11.1.0 + dotenv: 16.4.5 + rpc-websockets: 7.5.1 + strict-event-emitter-types: 2.0.0 + ts-node: 10.9.2(@swc/core@1.10.7(@swc/helpers@0.5.15))(@types/node@20.17.9)(typescript@5.6.3) + typescript: 5.6.3 + transitivePeerDependencies: + - '@swc/core' + - '@swc/wasm' + - '@types/node' + - arweave + - bufferutil + - debug + - encoding + - fastestsmallesttextencoderdecoder + - supports-color + - utf-8-validate + + '@drift-labs/vaults-sdk@0.2.55(@swc/core@1.10.7(@swc/helpers@0.5.15))(@types/node@22.10.7)(arweave@1.15.5)(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/anchor': 0.28.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@drift-labs/sdk': 2.107.0-beta.7(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@ledgerhq/hw-app-solana': 7.2.4 + '@ledgerhq/hw-transport': 6.31.4 + '@ledgerhq/hw-transport-node-hid': 6.29.5 + '@metaplex-foundation/js': 0.20.1(arweave@1.15.5)(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/wallet-adapter-ledger': 0.9.25(@solana/web3.js@1.92.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) + '@solana/web3.js': 1.92.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + commander: 11.1.0 + dotenv: 16.4.5 + rpc-websockets: 7.5.1 + strict-event-emitter-types: 2.0.0 + ts-node: 10.9.2(@swc/core@1.10.7(@swc/helpers@0.5.15))(@types/node@22.10.7)(typescript@5.6.3) + typescript: 5.6.3 + transitivePeerDependencies: + - '@swc/core' + - '@swc/wasm' + - '@types/node' + - arweave + - bufferutil + - debug + - encoding + - fastestsmallesttextencoderdecoder + - supports-color + - utf-8-validate + '@echogarden/audio-io@0.2.3': {} '@echogarden/espeak-ng-emscripten@0.3.3': {} @@ -28008,9 +28728,9 @@ snapshots: '@electric-sql/pglite@0.2.15': {} - '@elizaos/adapter-sqlite@0.1.7-alpha.2(@google-cloud/vertexai@1.9.2(encoding@0.1.13))(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13))(axios@1.7.9)(encoding@0.1.13)(react@19.0.0)(sswr@2.1.0(svelte@5.18.0))(svelte@5.18.0)(whatwg-url@14.1.0)': + '@elizaos/adapter-sqlite@0.1.7-alpha.2(@google-cloud/vertexai@1.9.2(encoding@0.1.13))(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)))(axios@1.7.9)(encoding@0.1.13)(react@19.0.0)(sswr@2.1.0(svelte@5.19.0))(svelte@5.19.0)(whatwg-url@14.1.0)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5))': dependencies: - '@elizaos/core': 0.1.7-alpha.2(@google-cloud/vertexai@1.9.2(encoding@0.1.13))(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13))(axios@1.7.9)(encoding@0.1.13)(react@19.0.0)(sswr@2.1.0(svelte@5.18.0))(svelte@5.18.0) + '@elizaos/core': 0.1.7-alpha.2(@google-cloud/vertexai@1.9.2(encoding@0.1.13))(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)))(axios@1.7.9)(encoding@0.1.13)(react@19.0.0)(sswr@2.1.0(svelte@5.19.0))(svelte@5.19.0)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) '@types/better-sqlite3': 7.6.12 better-sqlite3: 11.6.0 sqlite-vec: 0.1.6 @@ -28037,8 +28757,9 @@ snapshots: - svelte - typeorm - vue + - ws - '@elizaos/core@0.1.7-alpha.2(@google-cloud/vertexai@1.9.2(encoding@0.1.13))(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13))(axios@1.7.9)(encoding@0.1.13)(react@19.0.0)(sswr@2.1.0(svelte@5.18.0))(svelte@5.18.0)': + '@elizaos/core@0.1.7-alpha.2(@google-cloud/vertexai@1.9.2(encoding@0.1.13))(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)))(axios@1.7.9)(encoding@0.1.13)(react@19.0.0)(sswr@2.1.0(svelte@5.19.0))(svelte@5.19.0)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5))': dependencies: '@ai-sdk/anthropic': 0.0.56(zod@3.23.8) '@ai-sdk/google': 0.0.55(zod@3.23.8) @@ -28048,7 +28769,7 @@ snapshots: '@anthropic-ai/sdk': 0.30.1(encoding@0.1.13) '@fal-ai/client': 1.2.0 '@types/uuid': 10.0.0 - ai: 3.4.33(openai@4.73.0(encoding@0.1.13)(zod@3.23.8))(react@19.0.0)(sswr@2.1.0(svelte@5.18.0))(svelte@5.18.0)(vue@3.5.13(typescript@5.6.3))(zod@3.23.8) + ai: 3.4.33(openai@4.73.0(encoding@0.1.13)(zod@3.23.8))(react@19.0.0)(sswr@2.1.0(svelte@5.19.0))(svelte@5.19.0)(vue@3.5.13(typescript@5.6.3))(zod@3.23.8) anthropic-vertex-ai: 1.0.2(encoding@0.1.13)(zod@3.23.8) fastembed: 1.14.1 fastestsmallesttextencoderdecoder: 1.0.22 @@ -28057,7 +28778,7 @@ snapshots: handlebars: 4.7.8 js-sha1: 0.7.0 js-tiktoken: 1.0.15 - langchain: 0.3.6(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13))(axios@1.7.9)(encoding@0.1.13)(handlebars@4.7.8)(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)) + langchain: 0.3.6(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)))(axios@1.7.9)(encoding@0.1.13)(handlebars@4.7.8)(openai@4.73.0(encoding@0.1.13)(zod@3.23.8))(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) ollama-ai-provider: 0.16.1(zod@3.23.8) openai: 4.73.0(encoding@0.1.13)(zod@3.23.8) tinyld: 1.3.4 @@ -28087,19 +28808,20 @@ snapshots: - svelte - typeorm - vue + - ws - '@elizaos/core@0.1.8(@google-cloud/vertexai@1.9.2(encoding@0.1.13))(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13))(axios@1.7.9)(encoding@0.1.13)(react@19.0.0)(sswr@2.1.0(svelte@5.18.0))(svelte@5.18.0)': + '@elizaos/core@0.1.8(@google-cloud/vertexai@1.9.2(encoding@0.1.13))(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)))(axios@1.7.9)(encoding@0.1.13)(react@19.0.0)(sswr@2.1.0(svelte@5.19.0))(svelte@5.19.0)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))': dependencies: '@ai-sdk/anthropic': 0.0.56(zod@3.23.8) '@ai-sdk/google': 0.0.55(zod@3.23.8) '@ai-sdk/google-vertex': 0.0.43(@google-cloud/vertexai@1.9.2(encoding@0.1.13))(zod@3.23.8) '@ai-sdk/groq': 0.0.3(zod@3.23.8) - '@ai-sdk/mistral': 1.0.8(zod@3.23.8) + '@ai-sdk/mistral': 1.1.0(zod@3.23.8) '@ai-sdk/openai': 1.0.5(zod@3.23.8) '@anthropic-ai/sdk': 0.30.1(encoding@0.1.13) '@fal-ai/client': 1.2.0 '@types/uuid': 10.0.0 - ai: 3.4.33(openai@4.73.0(encoding@0.1.13)(zod@3.23.8))(react@19.0.0)(sswr@2.1.0(svelte@5.18.0))(svelte@5.18.0)(vue@3.5.13(typescript@5.6.3))(zod@3.23.8) + ai: 3.4.33(openai@4.73.0(encoding@0.1.13)(zod@3.23.8))(react@19.0.0)(sswr@2.1.0(svelte@5.19.0))(svelte@5.19.0)(vue@3.5.13(typescript@5.6.3))(zod@3.23.8) anthropic-vertex-ai: 1.0.2(encoding@0.1.13)(zod@3.23.8) fastembed: 1.14.1 fastestsmallesttextencoderdecoder: 1.0.22 @@ -28108,7 +28830,7 @@ snapshots: handlebars: 4.7.8 js-sha1: 0.7.0 js-tiktoken: 1.0.15 - langchain: 0.3.6(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13))(axios@1.7.9)(encoding@0.1.13)(handlebars@4.7.8)(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)) + langchain: 0.3.6(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)))(axios@1.7.9)(encoding@0.1.13)(handlebars@4.7.8)(openai@4.73.0(encoding@0.1.13)(zod@3.23.8))(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)) ollama-ai-provider: 0.16.1(zod@3.23.8) openai: 4.73.0(encoding@0.1.13)(zod@3.23.8) tinyld: 1.3.4 @@ -28138,6 +28860,24 @@ snapshots: - svelte - typeorm - vue + - ws + + '@ellipsis-labs/phoenix-sdk@1.4.5(@solana/web3.js@1.92.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)': + dependencies: + '@metaplex-foundation/beet': 0.7.2 + '@metaplex-foundation/rustbin': 0.3.5 + '@metaplex-foundation/solita': 0.12.2(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/spl-token': 0.3.7(@solana/web3.js@1.92.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@types/node': 18.19.71 + bn.js: 5.2.1 + borsh: 0.7.0 + bs58: 5.0.0 + transitivePeerDependencies: + - '@solana/web3.js' + - bufferutil + - encoding + - supports-color + - utf-8-validate '@emnapi/core@1.3.1': dependencies: @@ -28235,6 +28975,10 @@ snapshots: '@emotion/weak-memoize@0.4.0': {} + '@ensdomains/ens-validation@0.1.0': {} + + '@ensdomains/eth-ens-namehash@2.0.15': {} + '@es-joy/jsdoccomment@0.41.0': dependencies: comment-parser: 1.4.1 @@ -29214,10 +29958,10 @@ snapshots: '@shikijs/types': 1.27.2 '@shikijs/vscode-textmate': 10.0.1 - '@goat-sdk/adapter-vercel-ai@0.2.0(@goat-sdk/core@0.4.0)(ai@4.0.38(react@19.0.0)(zod@3.23.8))': + '@goat-sdk/adapter-vercel-ai@0.2.0(@goat-sdk/core@0.4.0)(ai@4.1.0(react@19.0.0)(zod@3.23.8))': dependencies: '@goat-sdk/core': 0.4.0 - ai: 4.0.38(react@19.0.0)(zod@3.23.8) + ai: 4.1.0(react@19.0.0)(zod@3.23.8) zod: 3.23.8 '@goat-sdk/core@0.3.8(bufferutil@4.0.9)(encoding@0.1.13)(typescript@5.7.3)(utf-8-validate@5.0.10)': @@ -29470,6 +30214,13 @@ snapshots: browser-headers: 0.4.1 google-protobuf: 3.21.4 + '@injectivelabs/core-proto-ts@0.0.21': + dependencies: + '@injectivelabs/grpc-web': 0.0.1(google-protobuf@3.21.4) + google-protobuf: 3.21.4 + protobufjs: 7.4.0 + rxjs: 7.8.1 + '@injectivelabs/core-proto-ts@1.13.4': dependencies: '@injectivelabs/grpc-web': 0.0.1(google-protobuf@3.21.4) @@ -29477,6 +30228,13 @@ snapshots: protobufjs: 7.4.0 rxjs: 7.8.1 + '@injectivelabs/dmm-proto-ts@1.0.19': + dependencies: + '@injectivelabs/grpc-web': 0.0.1(google-protobuf@3.21.4) + google-protobuf: 3.21.4 + protobufjs: 7.4.0 + rxjs: 7.8.1 + '@injectivelabs/exceptions@1.14.33(google-protobuf@3.21.4)': dependencies: '@injectivelabs/grpc-web': 0.0.1(google-protobuf@3.21.4) @@ -29508,6 +30266,13 @@ snapshots: browser-headers: 0.4.1 google-protobuf: 3.21.4 + '@injectivelabs/indexer-proto-ts@1.11.32': + dependencies: + '@injectivelabs/grpc-web': 0.0.1(google-protobuf@3.21.4) + google-protobuf: 3.21.4 + protobufjs: 7.4.0 + rxjs: 7.8.1 + '@injectivelabs/indexer-proto-ts@1.13.3': dependencies: '@injectivelabs/grpc-web': 0.0.1(google-protobuf@3.21.4) @@ -29534,6 +30299,13 @@ snapshots: - subscriptions-transport-ws - utf-8-validate + '@injectivelabs/mito-proto-ts@1.0.55': + dependencies: + '@injectivelabs/grpc-web': 0.0.1(google-protobuf@3.21.4) + google-protobuf: 3.21.4 + protobufjs: 7.4.0 + rxjs: 7.8.1 + '@injectivelabs/mito-proto-ts@1.13.0': dependencies: '@injectivelabs/grpc-web': 0.0.1(google-protobuf@3.21.4) @@ -29599,7 +30371,7 @@ snapshots: '@injectivelabs/utils': 1.14.33(google-protobuf@3.21.4) '@metamask/eth-sig-util': 4.0.1 '@noble/curves': 1.8.0 - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 bech32: 2.0.0 bip39: 3.1.0 cosmjs-types: 0.9.0 @@ -29645,7 +30417,7 @@ snapshots: '@injectivelabs/utils': 1.14.33(google-protobuf@3.21.4) '@metamask/eth-sig-util': 4.0.1 '@noble/curves': 1.8.0 - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 bech32: 2.0.0 bip39: 3.1.0 cosmjs-types: 0.9.0 @@ -29670,13 +30442,62 @@ snapshots: - subscriptions-transport-ws - utf-8-validate + '@injectivelabs/sdk-ts@1.14.5(@types/react@19.0.7)(bufferutil@4.0.9)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(utf-8-validate@5.0.10)': + dependencies: + '@apollo/client': 3.12.6(@types/react@19.0.7)(graphql@16.10.0)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@cosmjs/amino': 0.31.3 + '@cosmjs/proto-signing': 0.31.3 + '@cosmjs/stargate': 0.31.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) + '@ensdomains/ens-validation': 0.1.0 + '@ensdomains/eth-ens-namehash': 2.0.15 + '@ethersproject/bytes': 5.7.0 + '@injectivelabs/core-proto-ts': 0.0.21 + '@injectivelabs/dmm-proto-ts': 1.0.19 + '@injectivelabs/exceptions': 1.14.33(google-protobuf@3.21.4) + '@injectivelabs/grpc-web': 0.0.1(google-protobuf@3.21.4) + '@injectivelabs/grpc-web-node-http-transport': 0.0.2(@injectivelabs/grpc-web@0.0.1(google-protobuf@3.21.4)) + '@injectivelabs/grpc-web-react-native-transport': 0.0.2(@injectivelabs/grpc-web@0.0.1(google-protobuf@3.21.4)) + '@injectivelabs/indexer-proto-ts': 1.11.32 + '@injectivelabs/mito-proto-ts': 1.0.55 + '@injectivelabs/networks': 1.14.33(google-protobuf@3.21.4) + '@injectivelabs/test-utils': 1.14.33(google-protobuf@3.21.4) + '@injectivelabs/token-metadata': 1.14.11(google-protobuf@3.21.4) + '@injectivelabs/ts-types': 1.14.33 + '@injectivelabs/utils': 1.14.33(google-protobuf@3.21.4) + '@metamask/eth-sig-util': 4.0.1 + axios: 0.27.2(debug@4.3.4) + bech32: 2.0.0 + bip39: 3.1.0 + cosmjs-types: 0.7.2 + ethereumjs-util: 7.1.5 + ethers: 5.7.2(bufferutil@4.0.9)(utf-8-validate@5.0.10) + google-protobuf: 3.21.4 + graphql: 16.10.0 + http-status-codes: 2.3.0 + js-sha3: 0.8.0 + jscrypto: 1.0.3 + keccak256: 1.0.6 + link-module-alias: 1.2.0 + secp256k1: 4.0.4 + shx: 0.3.4 + snakecase-keys: 5.5.0 + transitivePeerDependencies: + - '@types/react' + - bufferutil + - debug + - graphql-ws + - react + - react-dom + - subscriptions-transport-ws + - utf-8-validate + '@injectivelabs/test-utils@1.14.33(google-protobuf@3.21.4)': dependencies: '@injectivelabs/exceptions': 1.14.33(google-protobuf@3.21.4) '@injectivelabs/networks': 1.14.33(google-protobuf@3.21.4) '@injectivelabs/ts-types': 1.14.33 '@injectivelabs/utils': 1.14.33(google-protobuf@3.21.4) - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 bignumber.js: 9.1.2 shx: 0.3.4 snakecase-keys: 5.5.0 @@ -29691,7 +30512,7 @@ snapshots: '@injectivelabs/networks': 1.14.34-beta.5(google-protobuf@3.21.4) '@injectivelabs/ts-types': 1.14.34-beta.2 '@injectivelabs/utils': 1.14.34-beta.5(google-protobuf@3.21.4) - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 bignumber.js: 9.1.2 shx: 0.3.4 snakecase-keys: 5.5.0 @@ -29729,7 +30550,7 @@ snapshots: dependencies: '@injectivelabs/exceptions': 1.14.33(google-protobuf@3.21.4) '@injectivelabs/ts-types': 1.14.33 - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 bignumber.js: 9.1.2 http-status-codes: 2.3.0 shx: 0.3.4 @@ -29743,7 +30564,7 @@ snapshots: dependencies: '@injectivelabs/exceptions': 1.14.34-beta.5(google-protobuf@3.21.4) '@injectivelabs/ts-types': 1.14.34-beta.2 - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 bignumber.js: 9.1.2 http-status-codes: 2.3.0 shx: 0.3.4 @@ -29757,7 +30578,7 @@ snapshots: dependencies: '@injectivelabs/exceptions': 1.14.34-beta.5(google-protobuf@3.21.4) '@injectivelabs/ts-types': 1.14.34-beta.2 - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 bignumber.js: 9.1.2 http-status-codes: 2.3.0 shx: 0.3.4 @@ -29770,6 +30591,16 @@ snapshots: '@ioredis/commands@1.2.0': {} '@irys/arweave@0.0.2': + dependencies: + asn1.js: 5.4.1 + async-retry: 1.3.3 + axios: 1.7.9 + base64-js: 1.5.1 + bignumber.js: 9.1.2 + transitivePeerDependencies: + - debug + + '@irys/arweave@0.0.2(debug@4.4.0)': dependencies: asn1.js: 5.4.1 async-retry: 1.3.3 @@ -29806,19 +30637,60 @@ snapshots: - encoding - utf-8-validate - '@irys/query@0.0.8': + '@irys/query@0.0.1(debug@4.4.0)': dependencies: async-retry: 1.3.3 axios: 1.7.9(debug@4.4.0) transitivePeerDependencies: - debug + '@irys/query@0.0.8': + dependencies: + async-retry: 1.3.3 + axios: 1.7.9 + transitivePeerDependencies: + - debug + '@irys/query@0.0.9': dependencies: + async-retry: 1.3.3 + axios: 1.7.9 + transitivePeerDependencies: + - debug + + '@irys/sdk@0.0.2(arweave@1.15.5)(bufferutil@4.0.9)(debug@4.4.0)(encoding@0.1.13)(utf-8-validate@5.0.10)': + dependencies: + '@ethersproject/bignumber': 5.7.0 + '@ethersproject/contracts': 5.7.0 + '@ethersproject/providers': 5.7.2(bufferutil@4.0.9)(utf-8-validate@5.0.10) + '@ethersproject/wallet': 5.7.0 + '@irys/query': 0.0.1(debug@4.4.0) + '@near-js/crypto': 0.0.3 + '@near-js/keystores-browser': 0.0.3 + '@near-js/providers': 0.0.4(encoding@0.1.13) + '@near-js/transactions': 0.1.1 + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@supercharge/promise-pool': 3.2.0 + algosdk: 1.24.1(encoding@0.1.13) + aptos: 1.8.5(debug@4.4.0) + arbundles: 0.10.1(arweave@1.15.5)(bufferutil@4.0.9)(debug@4.4.0)(encoding@0.1.13)(utf-8-validate@5.0.10) async-retry: 1.3.3 axios: 1.7.9(debug@4.4.0) + base64url: 3.0.1 + bignumber.js: 9.1.2 + bs58: 5.0.0 + commander: 8.3.0 + csv: 5.5.3 + inquirer: 8.2.6 + js-sha256: 0.9.0 + mime-types: 2.1.35 + near-seed-phrase: 0.2.1 transitivePeerDependencies: + - arweave + - bufferutil - debug + - encoding + - utf-8-validate '@irys/sdk@0.2.11(arweave@1.15.5)(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)': dependencies: @@ -29837,7 +30709,7 @@ snapshots: algosdk: 1.24.1(encoding@0.1.13) arbundles: 0.11.2(arweave@1.15.5)(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) async-retry: 1.3.3 - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 base64url: 3.0.1 bignumber.js: 9.1.2 bs58: 5.0.0 @@ -29861,7 +30733,7 @@ snapshots: '@irys/query': 0.0.9 '@supercharge/promise-pool': 3.2.0 async-retry: 1.3.3 - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 base64url: 3.0.1 bignumber.js: 9.1.2 transitivePeerDependencies: @@ -29893,7 +30765,7 @@ snapshots: '@irys/bundles': 0.0.1(arweave@1.15.5)(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) '@irys/upload-core': 0.0.9(arweave@1.15.5)(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) async-retry: 1.3.3 - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 base64url: 3.0.1 bignumber.js: 9.1.2 csv-parse: 5.6.0 @@ -30164,6 +31036,19 @@ snapshots: '@jspm/core@2.1.0': {} + '@keplr-wallet/types@0.12.175(starknet@6.18.0(encoding@0.1.13))': + dependencies: + long: 4.0.0 + starknet: 6.18.0(encoding@0.1.13) + + '@keplr-wallet/unit@0.12.175(starknet@6.18.0(encoding@0.1.13))': + dependencies: + '@keplr-wallet/types': 0.12.175(starknet@6.18.0(encoding@0.1.13)) + big-integer: 1.6.52 + utility-types: 3.11.0 + transitivePeerDependencies: + - starknet + '@kikobeats/time-span@1.0.5': {} '@kwsites/file-exists@1.1.1': @@ -30191,14 +31076,14 @@ snapshots: transitivePeerDependencies: - openai - '@langchain/core@0.3.30(openai@4.78.1(encoding@0.1.13)(zod@3.23.8))': + '@langchain/core@0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1))': dependencies: '@cfworker/json-schema': 4.1.0 ansi-styles: 5.2.0 camelcase: 6.3.0 decamelize: 1.2.0 js-tiktoken: 1.0.15 - langsmith: 0.2.15(openai@4.78.1(encoding@0.1.13)(zod@3.23.8)) + langsmith: 0.2.15(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1)) mustache: 4.2.0 p-queue: 6.6.2 p-retry: 4.6.2 @@ -30208,14 +31093,14 @@ snapshots: transitivePeerDependencies: - openai - '@langchain/core@0.3.30(openai@4.78.1(encoding@0.1.13)(zod@3.24.1))': + '@langchain/core@0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5))(zod@3.23.8))': dependencies: '@cfworker/json-schema': 4.1.0 ansi-styles: 5.2.0 camelcase: 6.3.0 decamelize: 1.2.0 js-tiktoken: 1.0.15 - langsmith: 0.2.15(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)) + langsmith: 0.2.15(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5))(zod@3.23.8)) mustache: 4.2.0 p-queue: 6.6.2 p-retry: 4.6.2 @@ -30225,30 +31110,56 @@ snapshots: transitivePeerDependencies: - openai - '@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13)': + '@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13)(ws@7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10))': + dependencies: + '@langchain/core': 0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)) + '@langchain/openai': 0.3.17(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13)(ws@7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + groq-sdk: 0.5.0(encoding@0.1.13) + zod: 3.23.8 + zod-to-json-schema: 3.24.1(zod@3.23.8) + transitivePeerDependencies: + - encoding + - ws + optional: true + + '@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))': + dependencies: + '@langchain/core': 0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)) + '@langchain/openai': 0.3.17(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + groq-sdk: 0.5.0(encoding@0.1.13) + zod: 3.23.8 + zod-to-json-schema: 3.24.1(zod@3.23.8) + transitivePeerDependencies: + - encoding + - ws + optional: true + + '@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5))': dependencies: '@langchain/core': 0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)) - '@langchain/openai': 0.3.17(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13) + '@langchain/openai': 0.3.17(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) groq-sdk: 0.5.0(encoding@0.1.13) zod: 3.23.8 zod-to-json-schema: 3.24.1(zod@3.23.8) transitivePeerDependencies: - encoding + - ws optional: true - '@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)))(encoding@0.1.13)': + '@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1)))(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))': dependencies: - '@langchain/core': 0.3.30(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)) - '@langchain/openai': 0.3.17(@langchain/core@0.3.30(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)))(encoding@0.1.13) + '@langchain/core': 0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1)) + '@langchain/openai': 0.3.17(@langchain/core@0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1)))(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)) groq-sdk: 0.5.0(encoding@0.1.13) zod: 3.23.8 zod-to-json-schema: 3.24.1(zod@3.23.8) transitivePeerDependencies: - encoding + - ws - '@langchain/langgraph-checkpoint@0.0.13(@langchain/core@0.3.30(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)))': + '@langchain/langgraph-checkpoint@0.0.13(@langchain/core@0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1)))': dependencies: - '@langchain/core': 0.3.30(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)) + '@langchain/core': 0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1)) uuid: 10.0.0 '@langchain/langgraph-sdk@0.0.36': @@ -30258,51 +31169,138 @@ snapshots: p-retry: 4.6.2 uuid: 9.0.1 - '@langchain/langgraph@0.2.40(@langchain/core@0.3.30(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)))': + '@langchain/langgraph@0.2.40(@langchain/core@0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1)))': dependencies: - '@langchain/core': 0.3.30(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)) - '@langchain/langgraph-checkpoint': 0.0.13(@langchain/core@0.3.30(openai@4.78.1(encoding@0.1.13)(zod@3.24.1))) + '@langchain/core': 0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1)) + '@langchain/langgraph-checkpoint': 0.0.13(@langchain/core@0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1))) '@langchain/langgraph-sdk': 0.0.36 uuid: 10.0.0 zod: 3.23.8 - '@langchain/openai@0.3.17(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13)': + '@langchain/openai@0.3.17(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13)(ws@7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10))': dependencies: '@langchain/core': 0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)) js-tiktoken: 1.0.15 - openai: 4.78.1(encoding@0.1.13)(zod@3.23.8) + openai: 4.79.1(encoding@0.1.13)(ws@7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.23.8) zod: 3.23.8 zod-to-json-schema: 3.24.1(zod@3.23.8) transitivePeerDependencies: - encoding + - ws - '@langchain/openai@0.3.17(@langchain/core@0.3.30(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)))(encoding@0.1.13)': + '@langchain/openai@0.3.17(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))': dependencies: - '@langchain/core': 0.3.30(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)) + '@langchain/core': 0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)) js-tiktoken: 1.0.15 - openai: 4.78.1(encoding@0.1.13)(zod@3.23.8) + openai: 4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.23.8) zod: 3.23.8 zod-to-json-schema: 3.24.1(zod@3.23.8) transitivePeerDependencies: - encoding + - ws + + '@langchain/openai@0.3.17(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5))': + dependencies: + '@langchain/core': 0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)) + js-tiktoken: 1.0.15 + openai: 4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5))(zod@3.23.8) + zod: 3.23.8 + zod-to-json-schema: 3.24.1(zod@3.23.8) + transitivePeerDependencies: + - encoding + - ws + + '@langchain/openai@0.3.17(@langchain/core@0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1)))(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))': + dependencies: + '@langchain/core': 0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1)) + js-tiktoken: 1.0.15 + openai: 4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.23.8) + zod: 3.23.8 + zod-to-json-schema: 3.24.1(zod@3.23.8) + transitivePeerDependencies: + - encoding + - ws '@langchain/textsplitters@0.1.0(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))': dependencies: '@langchain/core': 0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)) js-tiktoken: 1.0.15 - '@langchain/textsplitters@0.1.0(@langchain/core@0.3.30(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)))': + '@langchain/textsplitters@0.1.0(@langchain/core@0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1)))': dependencies: - '@langchain/core': 0.3.30(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)) + '@langchain/core': 0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1)) js-tiktoken: 1.0.15 + '@ledgerhq/devices@6.27.1': + dependencies: + '@ledgerhq/errors': 6.19.1 + '@ledgerhq/logs': 6.12.0 + rxjs: 6.6.7 + semver: 7.6.3 + + '@ledgerhq/devices@8.4.4': + dependencies: + '@ledgerhq/errors': 6.19.1 + '@ledgerhq/logs': 6.12.0 + rxjs: 7.8.1 + semver: 7.6.3 + + '@ledgerhq/errors@6.19.1': {} + + '@ledgerhq/hw-app-solana@7.2.4': + dependencies: + '@ledgerhq/errors': 6.19.1 + '@ledgerhq/hw-transport': 6.31.4 + bip32-path: 0.4.2 + + '@ledgerhq/hw-transport-node-hid-noevents@6.30.5': + dependencies: + '@ledgerhq/devices': 8.4.4 + '@ledgerhq/errors': 6.19.1 + '@ledgerhq/hw-transport': 6.31.4 + '@ledgerhq/logs': 6.12.0 + node-hid: 2.1.2 + + '@ledgerhq/hw-transport-node-hid@6.29.5': + dependencies: + '@ledgerhq/devices': 8.4.4 + '@ledgerhq/errors': 6.19.1 + '@ledgerhq/hw-transport': 6.31.4 + '@ledgerhq/hw-transport-node-hid-noevents': 6.30.5 + '@ledgerhq/logs': 6.12.0 + lodash: 4.17.21 + node-hid: 2.1.2 + usb: 2.9.0 + + '@ledgerhq/hw-transport-webhid@6.27.1': + dependencies: + '@ledgerhq/devices': 6.27.1 + '@ledgerhq/errors': 6.19.1 + '@ledgerhq/hw-transport': 6.31.4 + '@ledgerhq/logs': 6.12.0 + + '@ledgerhq/hw-transport@6.27.1': + dependencies: + '@ledgerhq/devices': 6.27.1 + '@ledgerhq/errors': 6.19.1 + events: 3.3.0 + + '@ledgerhq/hw-transport@6.31.4': + dependencies: + '@ledgerhq/devices': 8.4.4 + '@ledgerhq/errors': 6.19.1 + '@ledgerhq/logs': 6.12.0 + events: 3.3.0 + + '@ledgerhq/logs@6.12.0': {} + '@leichtgewicht/ip-codec@2.0.5': {} - '@lens-network/sdk@0.0.0-canary-20241203140504(ethers@6.13.4(bufferutil@4.0.9)(utf-8-validate@6.0.5))(viem@2.21.58(bufferutil@4.0.9)(typescript@5.7.3)(utf-8-validate@6.0.5)(zod@3.24.1))(zksync-ethers@6.15.3(ethers@6.13.4(bufferutil@4.0.9)(utf-8-validate@6.0.5)))': + '@lens-network/sdk@0.0.0-canary-20241203140504(ethers@6.13.4(bufferutil@4.0.9)(utf-8-validate@6.0.5))(viem@2.21.58(bufferutil@4.0.9)(typescript@5.7.3)(utf-8-validate@6.0.5)(zod@3.24.1))(zksync-ethers@6.15.4(ethers@6.13.4(bufferutil@4.0.9)(utf-8-validate@6.0.5)))': optionalDependencies: ethers: 6.13.4(bufferutil@4.0.9)(utf-8-validate@6.0.5) viem: 2.21.58(bufferutil@4.0.9)(typescript@5.7.3)(utf-8-validate@6.0.5)(zod@3.24.1) - zksync-ethers: 6.15.3(ethers@6.13.4(bufferutil@4.0.9)(utf-8-validate@6.0.5)) + zksync-ethers: 6.15.4(ethers@6.13.4(bufferutil@4.0.9)(utf-8-validate@6.0.5)) '@lens-protocol/blockchain-bindings@0.10.2(@jest/globals@29.7.0)(bufferutil@4.0.9)(utf-8-validate@5.0.10)': dependencies: @@ -30323,7 +31321,7 @@ snapshots: - utf-8-validate - wait-for-expect - '@lens-protocol/client@2.2.0(@jest/globals@29.7.0)(@lens-protocol/metadata@1.2.0(zod@3.23.8))(@types/react@19.0.7)(bufferutil@4.0.9)(encoding@0.1.13)(ethers@6.13.4(bufferutil@4.0.9)(utf-8-validate@5.0.10))(react@19.0.0)(utf-8-validate@5.0.10)': + '@lens-protocol/client@2.2.0(@jest/globals@29.7.0)(@lens-protocol/metadata@1.2.0(zod@3.23.8))(@types/react@19.0.7)(bufferutil@4.0.9)(encoding@0.1.13)(ethers@6.13.4(bufferutil@4.0.9)(utf-8-validate@5.0.10))(ioredis@5.4.2)(react@19.0.0)(utf-8-validate@5.0.10)': dependencies: '@ethersproject/abi': 5.7.0 '@ethersproject/abstract-signer': 5.7.0 @@ -30334,7 +31332,7 @@ snapshots: '@ethersproject/providers': 5.7.2(bufferutil@4.0.9)(utf-8-validate@5.0.10) '@ethersproject/wallet': 5.7.0 '@lens-protocol/blockchain-bindings': 0.10.2(@jest/globals@29.7.0)(bufferutil@4.0.9)(utf-8-validate@5.0.10) - '@lens-protocol/gated-content': 0.5.1(@ethersproject/abi@5.7.0)(@ethersproject/address@5.7.0)(@ethersproject/bignumber@5.7.0)(@ethersproject/contracts@5.7.0)(@ethersproject/hash@5.7.0)(@ethersproject/providers@5.7.2(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@ethersproject/wallet@5.7.0)(@lens-protocol/metadata@1.2.0(zod@3.23.8))(@types/react@19.0.7)(bufferutil@4.0.9)(encoding@0.1.13)(ethers@6.13.4(bufferutil@4.0.9)(utf-8-validate@5.0.10))(react@19.0.0)(utf-8-validate@5.0.10)(zod@3.23.8) + '@lens-protocol/gated-content': 0.5.1(@ethersproject/abi@5.7.0)(@ethersproject/address@5.7.0)(@ethersproject/bignumber@5.7.0)(@ethersproject/contracts@5.7.0)(@ethersproject/hash@5.7.0)(@ethersproject/providers@5.7.2(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@ethersproject/wallet@5.7.0)(@lens-protocol/metadata@1.2.0(zod@3.23.8))(@types/react@19.0.7)(bufferutil@4.0.9)(encoding@0.1.13)(ethers@6.13.4(bufferutil@4.0.9)(utf-8-validate@5.0.10))(ioredis@5.4.2)(react@19.0.0)(utf-8-validate@5.0.10)(zod@3.23.8) '@lens-protocol/shared-kernel': 0.12.0 '@lens-protocol/storage': 0.8.1 graphql: 16.10.0 @@ -30383,7 +31381,7 @@ snapshots: optionalDependencies: '@jest/globals': 29.7.0 - '@lens-protocol/gated-content@0.5.1(@ethersproject/abi@5.7.0)(@ethersproject/address@5.7.0)(@ethersproject/bignumber@5.7.0)(@ethersproject/contracts@5.7.0)(@ethersproject/hash@5.7.0)(@ethersproject/providers@5.7.2(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@ethersproject/wallet@5.7.0)(@lens-protocol/metadata@1.2.0(zod@3.23.8))(@types/react@19.0.7)(bufferutil@4.0.9)(encoding@0.1.13)(ethers@6.13.4(bufferutil@4.0.9)(utf-8-validate@5.0.10))(react@19.0.0)(utf-8-validate@5.0.10)(zod@3.23.8)': + '@lens-protocol/gated-content@0.5.1(@ethersproject/abi@5.7.0)(@ethersproject/address@5.7.0)(@ethersproject/bignumber@5.7.0)(@ethersproject/contracts@5.7.0)(@ethersproject/hash@5.7.0)(@ethersproject/providers@5.7.2(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@ethersproject/wallet@5.7.0)(@lens-protocol/metadata@1.2.0(zod@3.23.8))(@types/react@19.0.7)(bufferutil@4.0.9)(encoding@0.1.13)(ethers@6.13.4(bufferutil@4.0.9)(utf-8-validate@5.0.10))(ioredis@5.4.2)(react@19.0.0)(utf-8-validate@5.0.10)(zod@3.23.8)': dependencies: '@ethersproject/abi': 5.7.0 '@ethersproject/address': 5.7.0 @@ -30398,7 +31396,7 @@ snapshots: '@lit-protocol/constants': 2.1.62 '@lit-protocol/crypto': 2.1.62(bufferutil@4.0.9)(utf-8-validate@5.0.10) '@lit-protocol/encryption': 2.1.62(bufferutil@4.0.9)(utf-8-validate@5.0.10) - '@lit-protocol/node-client': 2.1.62(@ethersproject/contracts@5.7.0)(@ethersproject/hash@5.7.0)(@ethersproject/providers@5.7.2(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@ethersproject/wallet@5.7.0)(@types/react@19.0.7)(bufferutil@4.0.9)(encoding@0.1.13)(react@19.0.0)(utf-8-validate@5.0.10) + '@lit-protocol/node-client': 2.1.62(@ethersproject/contracts@5.7.0)(@ethersproject/hash@5.7.0)(@ethersproject/providers@5.7.2(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@ethersproject/wallet@5.7.0)(@types/react@19.0.7)(bufferutil@4.0.9)(encoding@0.1.13)(ioredis@5.4.2)(react@19.0.0)(utf-8-validate@5.0.10) '@lit-protocol/types': 2.1.62 siwe: 2.3.2(ethers@6.13.4(bufferutil@4.0.9)(utf-8-validate@5.0.10)) tslib: 2.8.1 @@ -30554,6 +31552,21 @@ snapshots: '@lifi/types@16.3.0': {} + '@lightprotocol/compressed-token@0.17.1(@lightprotocol/stateless.js@0.17.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/anchor': 0.29.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@lightprotocol/stateless.js': 0.17.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/spl-token': 0.4.8(@solana/web3.js@1.95.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + buffer: 6.0.3 + tweetnacl: 1.0.3 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - typescript + - utf-8-validate + '@lightprotocol/compressed-token@0.17.1(@lightprotocol/stateless.js@0.17.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10)': dependencies: '@coral-xyz/anchor': 0.29.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) @@ -30596,14 +31609,14 @@ snapshots: - bufferutil - utf-8-validate - '@lit-protocol/auth-browser@2.1.62(@ethersproject/contracts@5.7.0)(@ethersproject/hash@5.7.0)(@ethersproject/providers@5.7.2(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@ethersproject/wallet@5.7.0)(@types/react@19.0.7)(bufferutil@4.0.9)(encoding@0.1.13)(react@19.0.0)(utf-8-validate@5.0.10)': + '@lit-protocol/auth-browser@2.1.62(@ethersproject/contracts@5.7.0)(@ethersproject/hash@5.7.0)(@ethersproject/providers@5.7.2(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@ethersproject/wallet@5.7.0)(@types/react@19.0.7)(bufferutil@4.0.9)(encoding@0.1.13)(ioredis@5.4.2)(react@19.0.0)(utf-8-validate@5.0.10)': dependencies: '@lit-protocol/constants': 2.1.62 '@lit-protocol/misc': 2.1.62 '@lit-protocol/misc-browser': 2.1.62(bufferutil@4.0.9)(utf-8-validate@5.0.10) '@lit-protocol/types': 2.1.62 '@lit-protocol/uint8arrays': 2.1.62 - '@walletconnect/ethereum-provider': 2.17.4(@types/react@19.0.7)(bufferutil@4.0.9)(encoding@0.1.13)(react@19.0.0)(utf-8-validate@5.0.10) + '@walletconnect/ethereum-provider': 2.17.4(@types/react@19.0.7)(bufferutil@4.0.9)(encoding@0.1.13)(ioredis@5.4.2)(react@19.0.0)(utf-8-validate@5.0.10) ethers: 5.7.2(bufferutil@4.0.9)(utf-8-validate@5.0.10) lit-connect-modal: 0.1.11 lit-siwe: 1.1.8(@ethersproject/contracts@5.7.0)(@ethersproject/hash@5.7.0)(@ethersproject/providers@5.7.2(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@ethersproject/wallet@5.7.0) @@ -30704,10 +31717,10 @@ snapshots: '@lit-protocol/nacl@2.1.62': {} - '@lit-protocol/node-client@2.1.62(@ethersproject/contracts@5.7.0)(@ethersproject/hash@5.7.0)(@ethersproject/providers@5.7.2(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@ethersproject/wallet@5.7.0)(@types/react@19.0.7)(bufferutil@4.0.9)(encoding@0.1.13)(react@19.0.0)(utf-8-validate@5.0.10)': + '@lit-protocol/node-client@2.1.62(@ethersproject/contracts@5.7.0)(@ethersproject/hash@5.7.0)(@ethersproject/providers@5.7.2(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@ethersproject/wallet@5.7.0)(@types/react@19.0.7)(bufferutil@4.0.9)(encoding@0.1.13)(ioredis@5.4.2)(react@19.0.0)(utf-8-validate@5.0.10)': dependencies: '@lit-protocol/access-control-conditions': 2.1.62(bufferutil@4.0.9)(utf-8-validate@5.0.10) - '@lit-protocol/auth-browser': 2.1.62(@ethersproject/contracts@5.7.0)(@ethersproject/hash@5.7.0)(@ethersproject/providers@5.7.2(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@ethersproject/wallet@5.7.0)(@types/react@19.0.7)(bufferutil@4.0.9)(encoding@0.1.13)(react@19.0.0)(utf-8-validate@5.0.10) + '@lit-protocol/auth-browser': 2.1.62(@ethersproject/contracts@5.7.0)(@ethersproject/hash@5.7.0)(@ethersproject/providers@5.7.2(bufferutil@4.0.9)(utf-8-validate@5.0.10))(@ethersproject/wallet@5.7.0)(@types/react@19.0.7)(bufferutil@4.0.9)(encoding@0.1.13)(ioredis@5.4.2)(react@19.0.0)(utf-8-validate@5.0.10) '@lit-protocol/bls-sdk': 2.1.62 '@lit-protocol/constants': 2.1.62 '@lit-protocol/crypto': 2.1.62(bufferutil@4.0.9)(utf-8-validate@5.0.10) @@ -30719,7 +31732,7 @@ snapshots: '@lit-protocol/nacl': 2.1.62 '@lit-protocol/types': 2.1.62 '@lit-protocol/uint8arrays': 2.1.62 - '@walletconnect/ethereum-provider': 2.17.4(@types/react@19.0.7)(bufferutil@4.0.9)(encoding@0.1.13)(react@19.0.0)(utf-8-validate@5.0.10) + '@walletconnect/ethereum-provider': 2.17.4(@types/react@19.0.7)(bufferutil@4.0.9)(encoding@0.1.13)(ioredis@5.4.2)(react@19.0.0)(utf-8-validate@5.0.10) ethers: 5.7.2(bufferutil@4.0.9)(utf-8-validate@5.0.10) jszip: 3.10.1 lit-connect-modal: 0.1.11 @@ -30840,6 +31853,153 @@ snapshots: '@types/react': 19.0.7 react: 18.3.1 + '@mercurial-finance/dynamic-amm-sdk@1.1.19(@solana/buffer-layout@4.0.1)(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/anchor': 0.28.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@coral-xyz/borsh': 0.28.0(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) + '@mercurial-finance/token-math': 6.0.0 + '@mercurial-finance/vault-sdk': 2.2.0(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@metaplex-foundation/mpl-token-metadata': 2.13.0(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@meteora-ag/stake-for-fee': 1.0.28(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@project-serum/anchor': 0.24.2(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/buffer-layout': 4.0.1 + '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/spl-token-registry': 0.2.4574 + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + bn-sqrt: 1.0.0 + bn.js: 5.2.1 + decimal.js: 10.4.3 + dotenv: 16.4.7 + invariant: 2.2.4 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - supports-color + - typescript + - utf-8-validate + + '@mercurial-finance/dynamic-amm-sdk@1.1.19(@solana/buffer-layout@4.0.1)(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/anchor': 0.28.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@coral-xyz/borsh': 0.28.0(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) + '@mercurial-finance/token-math': 6.0.0 + '@mercurial-finance/vault-sdk': 2.2.0(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) + '@metaplex-foundation/mpl-token-metadata': 2.13.0(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) + '@meteora-ag/stake-for-fee': 1.0.28(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) + '@project-serum/anchor': 0.24.2(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/buffer-layout': 4.0.1 + '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) + '@solana/spl-token-registry': 0.2.4574 + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + bn-sqrt: 1.0.0 + bn.js: 5.2.1 + decimal.js: 10.4.3 + dotenv: 16.4.7 + invariant: 2.2.4 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - supports-color + - typescript + - utf-8-validate + + '@mercurial-finance/dynamic-amm-sdk@1.1.23(@solana/buffer-layout@4.0.1)(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/anchor': 0.28.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@coral-xyz/borsh': 0.28.0(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) + '@mercurial-finance/token-math': 6.0.0 + '@mercurial-finance/vault-sdk': 2.2.0(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@metaplex-foundation/mpl-token-metadata': 2.13.0(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@meteora-ag/m3m3': 1.0.4(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@project-serum/anchor': 0.24.2(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/buffer-layout': 4.0.1 + '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/spl-token-registry': 0.2.4574 + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + bn-sqrt: 1.0.0 + bn.js: 5.2.1 + decimal.js: 10.4.3 + dotenv: 16.4.7 + invariant: 2.2.4 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - supports-color + - typescript + - utf-8-validate + + '@mercurial-finance/dynamic-amm-sdk@1.1.23(@solana/buffer-layout@4.0.1)(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/anchor': 0.28.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@coral-xyz/borsh': 0.28.0(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) + '@mercurial-finance/token-math': 6.0.0 + '@mercurial-finance/vault-sdk': 2.2.0(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) + '@metaplex-foundation/mpl-token-metadata': 2.13.0(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) + '@meteora-ag/m3m3': 1.0.4(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) + '@project-serum/anchor': 0.24.2(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/buffer-layout': 4.0.1 + '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) + '@solana/spl-token-registry': 0.2.4574 + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + bn-sqrt: 1.0.0 + bn.js: 5.2.1 + decimal.js: 10.4.3 + dotenv: 16.4.7 + invariant: 2.2.4 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - supports-color + - typescript + - utf-8-validate + + '@mercurial-finance/token-math@6.0.0': + dependencies: + '@types/big.js': 6.2.2 + big.js: 6.2.2 + tiny-invariant: 1.3.3 + tslib: 2.8.1 + + '@mercurial-finance/vault-sdk@2.2.0(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/anchor': 0.28.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/buffer-layout': 4.0.1 + '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/spl-token-registry': 0.2.4574 + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + bn.js: 5.2.1 + cross-fetch: 3.2.0(encoding@0.1.13) + decimal.js: 10.3.1 + jsbi: 4.3.0 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - typescript + - utf-8-validate + + '@mercurial-finance/vault-sdk@2.2.0(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/anchor': 0.28.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/buffer-layout': 4.0.1 + '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) + '@solana/spl-token-registry': 0.2.4574 + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + bn.js: 5.2.1 + cross-fetch: 3.2.0(encoding@0.1.13) + decimal.js: 10.3.1 + jsbi: 4.3.0 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - typescript + - utf-8-validate + '@mermaid-js/parser@0.3.0': dependencies: langium: 3.0.0 @@ -30923,6 +32083,57 @@ snapshots: '@metaplex-foundation/cusper@0.0.2': {} + '@metaplex-foundation/js@0.20.1(arweave@1.15.5)(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@irys/sdk': 0.0.2(arweave@1.15.5)(bufferutil@4.0.9)(debug@4.4.0)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@metaplex-foundation/beet': 0.7.1 + '@metaplex-foundation/mpl-auction-house': 2.5.1(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@metaplex-foundation/mpl-bubblegum': 0.6.2(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@metaplex-foundation/mpl-candy-guard': 0.3.2(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@metaplex-foundation/mpl-candy-machine': 5.1.0(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@metaplex-foundation/mpl-candy-machine-core': 0.1.2(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@metaplex-foundation/mpl-token-metadata': 2.13.0(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@noble/ed25519': 1.7.3 + '@noble/hashes': 1.7.0 + '@solana/spl-account-compression': 0.1.10(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/spl-token': 0.3.11(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + bignumber.js: 9.1.2 + bn.js: 5.2.1 + bs58: 5.0.0 + buffer: 6.0.3 + debug: 4.4.0(supports-color@5.5.0) + eventemitter3: 4.0.7 + lodash.clonedeep: 4.5.0 + lodash.isequal: 4.5.0 + merkletreejs: 0.3.11 + mime: 3.0.0 + node-fetch: 2.7.0(encoding@0.1.13) + transitivePeerDependencies: + - arweave + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - supports-color + - typescript + - utf-8-validate + + '@metaplex-foundation/mpl-auction-house@2.5.1(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@metaplex-foundation/beet': 0.6.1 + '@metaplex-foundation/beet-solana': 0.3.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@metaplex-foundation/cusper': 0.0.2 + '@solana/spl-token': 0.3.11(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + bn.js: 5.2.1 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - supports-color + - typescript + - utf-8-validate + '@metaplex-foundation/mpl-auction-house@2.5.1(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10)': dependencies: '@metaplex-foundation/beet': 0.6.1 @@ -30939,6 +32150,43 @@ snapshots: - typescript - utf-8-validate + '@metaplex-foundation/mpl-bubblegum@0.6.2(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@metaplex-foundation/beet': 0.7.1 + '@metaplex-foundation/beet-solana': 0.4.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@metaplex-foundation/cusper': 0.0.2 + '@metaplex-foundation/mpl-token-metadata': 2.13.0(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/spl-account-compression': 0.1.10(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/spl-token': 0.1.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + bn.js: 5.2.1 + js-sha3: 0.8.0 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - supports-color + - typescript + - utf-8-validate + + '@metaplex-foundation/mpl-bubblegum@0.7.0(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@metaplex-foundation/beet': 0.7.1 + '@metaplex-foundation/beet-solana': 0.4.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@metaplex-foundation/cusper': 0.0.2 + '@metaplex-foundation/mpl-token-metadata': 2.13.0(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/spl-account-compression': 0.1.10(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/spl-token': 0.1.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + js-sha3: 0.8.0 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - supports-color + - typescript + - utf-8-validate + '@metaplex-foundation/mpl-bubblegum@0.7.0(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10)': dependencies: '@metaplex-foundation/beet': 0.7.1 @@ -30957,12 +32205,70 @@ snapshots: - typescript - utf-8-validate + '@metaplex-foundation/mpl-candy-guard@0.3.2(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)': + dependencies: + '@metaplex-foundation/beet': 0.4.0 + '@metaplex-foundation/beet-solana': 0.3.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@metaplex-foundation/cusper': 0.0.2 + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + bn.js: 5.2.1 + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - utf-8-validate + + '@metaplex-foundation/mpl-candy-machine-core@0.1.2(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)': + dependencies: + '@metaplex-foundation/beet': 0.4.0 + '@metaplex-foundation/beet-solana': 0.3.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@metaplex-foundation/cusper': 0.0.2 + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + bn.js: 5.2.1 + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - utf-8-validate + + '@metaplex-foundation/mpl-candy-machine@5.1.0(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@metaplex-foundation/beet': 0.7.1 + '@metaplex-foundation/beet-solana': 0.4.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@metaplex-foundation/cusper': 0.0.2 + '@solana/spl-token': 0.3.11(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - supports-color + - typescript + - utf-8-validate + '@metaplex-foundation/mpl-core@1.1.1(@metaplex-foundation/umi@0.9.2)(@noble/hashes@1.7.0)': dependencies: '@metaplex-foundation/umi': 0.9.2 '@msgpack/msgpack': 3.0.0-beta2 '@noble/hashes': 1.7.0 + '@metaplex-foundation/mpl-token-metadata@2.13.0(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@metaplex-foundation/beet': 0.7.2 + '@metaplex-foundation/beet-solana': 0.4.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@metaplex-foundation/cusper': 0.0.2 + '@solana/spl-token': 0.3.11(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + bn.js: 5.2.1 + debug: 4.4.0(supports-color@5.5.0) + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - supports-color + - typescript + - utf-8-validate + '@metaplex-foundation/mpl-token-metadata@2.13.0(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10)': dependencies: '@metaplex-foundation/beet': 0.7.2 @@ -31149,6 +32455,188 @@ snapshots: '@metaplex-foundation/umi-public-keys': 0.8.9 '@metaplex-foundation/umi-serializers': 0.9.0 + '@meteora-ag/alpha-vault@1.1.7(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/anchor': 0.28.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@mercurial-finance/dynamic-amm-sdk': 1.1.19(@solana/buffer-layout@4.0.1)(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@meteora-ag/dlmm': 1.3.0(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/buffer-layout': 4.0.1 + '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@types/node': 22.10.7 + decimal.js: 10.4.3 + gaussian: 1.3.0 + js-sha256: 0.11.0 + tiny-invariant: 1.3.3 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - supports-color + - typescript + - utf-8-validate + + '@meteora-ag/alpha-vault@1.1.7(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/anchor': 0.28.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@mercurial-finance/dynamic-amm-sdk': 1.1.19(@solana/buffer-layout@4.0.1)(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) + '@meteora-ag/dlmm': 1.3.0(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) + '@solana/buffer-layout': 4.0.1 + '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@types/node': 22.10.7 + decimal.js: 10.4.3 + gaussian: 1.3.0 + js-sha256: 0.11.0 + tiny-invariant: 1.3.3 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - supports-color + - typescript + - utf-8-validate + + '@meteora-ag/dlmm@1.3.0(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/anchor': 0.28.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@coral-xyz/borsh': 0.28.0(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) + '@solana/buffer-layout': 4.0.1 + '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + bn.js: 5.2.1 + decimal.js: 10.4.3 + express: 4.21.1 + gaussian: 1.3.0 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - supports-color + - typescript + - utf-8-validate + + '@meteora-ag/dlmm@1.3.0(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/anchor': 0.28.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@coral-xyz/borsh': 0.28.0(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) + '@solana/buffer-layout': 4.0.1 + '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + bn.js: 5.2.1 + decimal.js: 10.4.3 + express: 4.21.1 + gaussian: 1.3.0 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - supports-color + - typescript + - utf-8-validate + + '@meteora-ag/dlmm@1.3.8(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/anchor': 0.28.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@coral-xyz/borsh': 0.28.0(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) + '@solana-developers/helpers': 2.5.6(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/buffer-layout': 4.0.1 + '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + bn.js: 5.2.1 + decimal.js: 10.4.3 + express: 4.21.1 + gaussian: 1.3.0 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - supports-color + - typescript + - utf-8-validate + + '@meteora-ag/dlmm@1.3.8(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/anchor': 0.28.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@coral-xyz/borsh': 0.28.0(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) + '@solana-developers/helpers': 2.5.6(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) + '@solana/buffer-layout': 4.0.1 + '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + bn.js: 5.2.1 + decimal.js: 10.4.3 + express: 4.21.1 + gaussian: 1.3.0 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - supports-color + - typescript + - utf-8-validate + + '@meteora-ag/m3m3@1.0.4(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/anchor': 0.28.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@coral-xyz/borsh': 0.30.1(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) + '@solana-developers/helpers': 2.5.6(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + bn.js: 5.2.1 + decimal.js: 10.4.3 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - typescript + - utf-8-validate + + '@meteora-ag/m3m3@1.0.4(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/anchor': 0.28.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@coral-xyz/borsh': 0.30.1(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) + '@solana-developers/helpers': 2.5.6(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) + '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + bn.js: 5.2.1 + decimal.js: 10.4.3 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - typescript + - utf-8-validate + + '@meteora-ag/stake-for-fee@1.0.28(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/anchor': 0.28.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@coral-xyz/borsh': 0.30.1(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) + '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + bn.js: 5.2.1 + decimal.js: 10.4.3 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - typescript + - utf-8-validate + + '@meteora-ag/stake-for-fee@1.0.28(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/anchor': 0.28.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@coral-xyz/borsh': 0.30.1(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) + '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + bn.js: 5.2.1 + decimal.js: 10.4.3 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - typescript + - utf-8-validate + '@motionone/animation@10.18.0': dependencies: '@motionone/easing': 10.18.0 @@ -31222,7 +32710,7 @@ snapshots: uuid: 8.3.2 optionalDependencies: '@multiversx/sdk-bls-wasm': 0.3.5 - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 bip39: 3.1.0 transitivePeerDependencies: - debug @@ -31235,7 +32723,7 @@ snapshots: dependencies: bs58: 6.0.0 - '@mysten/sui@1.19.0(typescript@5.7.3)': + '@mysten/sui@1.20.0(typescript@5.7.3)': dependencies: '@graphql-typed-document-node/core': 3.2.0(graphql@16.10.0) '@mysten/bcs': 1.2.1 @@ -31533,6 +33021,8 @@ snapshots: '@noble/ed25519@1.7.3': {} + '@noble/hashes@1.1.3': {} + '@noble/hashes@1.3.0': {} '@noble/hashes@1.3.2': {} @@ -31806,7 +33296,7 @@ snapshots: dependencies: '@octokit/auth-oauth-app': 8.1.2 '@octokit/auth-oauth-user': 5.1.2 - '@octokit/request': 9.1.4 + '@octokit/request': 9.2.0 '@octokit/request-error': 6.1.6 '@octokit/types': 13.7.0 toad-cache: 3.7.0 @@ -31817,14 +33307,14 @@ snapshots: dependencies: '@octokit/auth-oauth-device': 7.1.2 '@octokit/auth-oauth-user': 5.1.2 - '@octokit/request': 9.1.4 + '@octokit/request': 9.2.0 '@octokit/types': 13.7.0 universal-user-agent: 7.0.2 '@octokit/auth-oauth-device@7.1.2': dependencies: '@octokit/oauth-methods': 5.1.3 - '@octokit/request': 9.1.4 + '@octokit/request': 9.2.0 '@octokit/types': 13.7.0 universal-user-agent: 7.0.2 @@ -31832,7 +33322,7 @@ snapshots: dependencies: '@octokit/auth-oauth-device': 7.1.2 '@octokit/oauth-methods': 5.1.3 - '@octokit/request': 9.1.4 + '@octokit/request': 9.2.0 '@octokit/types': 13.7.0 universal-user-agent: 7.0.2 @@ -31873,7 +33363,7 @@ snapshots: dependencies: '@octokit/auth-token': 5.1.1 '@octokit/graphql': 8.1.2 - '@octokit/request': 9.1.4 + '@octokit/request': 9.2.0 '@octokit/request-error': 6.1.6 '@octokit/types': 13.7.0 before-after-hook: 3.0.2 @@ -31911,7 +33401,7 @@ snapshots: '@octokit/graphql@8.1.2': dependencies: - '@octokit/request': 9.1.4 + '@octokit/request': 9.2.0 '@octokit/types': 13.7.0 universal-user-agent: 7.0.2 @@ -31931,7 +33421,7 @@ snapshots: '@octokit/oauth-methods@5.1.3': dependencies: '@octokit/oauth-authorization-url': 7.1.1 - '@octokit/request': 9.1.4 + '@octokit/request': 9.2.0 '@octokit/request-error': 6.1.6 '@octokit/types': 13.7.0 @@ -32035,7 +33525,7 @@ snapshots: '@octokit/types': 13.7.0 universal-user-agent: 6.0.1 - '@octokit/request@9.1.4': + '@octokit/request@9.2.0': dependencies: '@octokit/endpoint': 10.1.2 '@octokit/request-error': 6.1.6 @@ -32097,15 +33587,15 @@ snapshots: - '@onflow/util-config' - supports-color - '@onflow/fcl-core@1.13.1(bufferutil@4.0.9)(encoding@0.1.13)(google-protobuf@3.21.4)(utf-8-validate@6.0.5)': + '@onflow/fcl-core@1.13.1(bufferutil@4.0.9)(encoding@0.1.13)(google-protobuf@3.21.4)(utf-8-validate@5.0.10)': dependencies: '@babel/runtime': 7.26.0 '@improbable-eng/grpc-web': 0.15.0(google-protobuf@3.21.4) '@onflow/config': 1.5.1 '@onflow/interaction': 0.0.11 '@onflow/rlp': 1.2.3 - '@onflow/sdk': 1.5.5(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@6.0.5) - '@onflow/transport-http': 1.10.4(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@6.0.5) + '@onflow/sdk': 1.5.5(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@onflow/transport-http': 1.10.4(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) '@onflow/types': 1.4.1 '@onflow/util-actor': 1.3.4 '@onflow/util-address': 1.2.3 @@ -32124,16 +33614,16 @@ snapshots: - supports-color - utf-8-validate - '@onflow/fcl-wc@5.5.1(@onflow/fcl-core@1.13.1(bufferutil@4.0.9)(encoding@0.1.13)(google-protobuf@3.21.4)(utf-8-validate@6.0.5))(@types/react@19.0.7)(bufferutil@4.0.9)(ioredis@5.4.2)(jiti@2.4.2)(postcss@8.5.1)(react@19.0.0)(tsx@4.19.2)(utf-8-validate@6.0.5)': + '@onflow/fcl-wc@5.5.1(@onflow/fcl-core@1.13.1(bufferutil@4.0.9)(encoding@0.1.13)(google-protobuf@3.21.4)(utf-8-validate@5.0.10))(@types/react@19.0.7)(bufferutil@4.0.9)(ioredis@5.4.2)(jiti@2.4.2)(postcss@8.5.1)(react@19.0.0)(tsx@4.19.2)(utf-8-validate@5.0.10)': dependencies: '@babel/runtime': 7.26.0 '@onflow/config': 1.5.1 - '@onflow/fcl-core': 1.13.1(bufferutil@4.0.9)(encoding@0.1.13)(google-protobuf@3.21.4)(utf-8-validate@6.0.5) + '@onflow/fcl-core': 1.13.1(bufferutil@4.0.9)(encoding@0.1.13)(google-protobuf@3.21.4)(utf-8-validate@5.0.10) '@onflow/util-invariant': 1.2.4 '@onflow/util-logger': 1.3.3 '@walletconnect/modal': 2.7.0(@types/react@19.0.7)(react@19.0.0) '@walletconnect/modal-core': 2.7.0(@types/react@19.0.7)(react@19.0.0) - '@walletconnect/sign-client': 2.17.4(bufferutil@4.0.9)(ioredis@5.4.2)(utf-8-validate@6.0.5) + '@walletconnect/sign-client': 2.17.4(bufferutil@4.0.9)(ioredis@5.4.2)(utf-8-validate@5.0.10) '@walletconnect/types': 2.17.4(ioredis@5.4.2) '@walletconnect/utils': 2.17.4(ioredis@5.4.2) postcss-cli: 11.0.0(jiti@2.4.2)(postcss@8.5.1)(tsx@4.19.2) @@ -32169,15 +33659,15 @@ snapshots: - uploadthing - utf-8-validate - '@onflow/fcl@1.13.1(@types/react@19.0.7)(bufferutil@4.0.9)(encoding@0.1.13)(google-protobuf@3.21.4)(ioredis@5.4.2)(jiti@2.4.2)(postcss@8.5.1)(react@19.0.0)(tsx@4.19.2)(utf-8-validate@6.0.5)': + '@onflow/fcl@1.13.1(@types/react@19.0.7)(bufferutil@4.0.9)(encoding@0.1.13)(google-protobuf@3.21.4)(ioredis@5.4.2)(jiti@2.4.2)(postcss@8.5.1)(react@19.0.0)(tsx@4.19.2)(utf-8-validate@5.0.10)': dependencies: '@babel/runtime': 7.26.0 '@onflow/config': 1.5.1 - '@onflow/fcl-core': 1.13.1(bufferutil@4.0.9)(encoding@0.1.13)(google-protobuf@3.21.4)(utf-8-validate@6.0.5) - '@onflow/fcl-wc': 5.5.1(@onflow/fcl-core@1.13.1(bufferutil@4.0.9)(encoding@0.1.13)(google-protobuf@3.21.4)(utf-8-validate@6.0.5))(@types/react@19.0.7)(bufferutil@4.0.9)(ioredis@5.4.2)(jiti@2.4.2)(postcss@8.5.1)(react@19.0.0)(tsx@4.19.2)(utf-8-validate@6.0.5) + '@onflow/fcl-core': 1.13.1(bufferutil@4.0.9)(encoding@0.1.13)(google-protobuf@3.21.4)(utf-8-validate@5.0.10) + '@onflow/fcl-wc': 5.5.1(@onflow/fcl-core@1.13.1(bufferutil@4.0.9)(encoding@0.1.13)(google-protobuf@3.21.4)(utf-8-validate@5.0.10))(@types/react@19.0.7)(bufferutil@4.0.9)(ioredis@5.4.2)(jiti@2.4.2)(postcss@8.5.1)(react@19.0.0)(tsx@4.19.2)(utf-8-validate@5.0.10) '@onflow/interaction': 0.0.11 '@onflow/rlp': 1.2.3 - '@onflow/sdk': 1.5.5(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@6.0.5) + '@onflow/sdk': 1.5.5(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) '@onflow/types': 1.4.1 '@onflow/util-actor': 1.3.4 '@onflow/util-address': 1.2.3 @@ -32231,12 +33721,12 @@ snapshots: '@babel/runtime': 7.26.0 buffer: 6.0.3 - '@onflow/sdk@1.5.5(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@6.0.5)': + '@onflow/sdk@1.5.5(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)': dependencies: '@babel/runtime': 7.26.0 '@onflow/config': 1.5.1 '@onflow/rlp': 1.2.3 - '@onflow/transport-http': 1.10.4(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@6.0.5) + '@onflow/transport-http': 1.10.4(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) '@onflow/typedefs': 1.4.0 '@onflow/util-actor': 1.3.4 '@onflow/util-address': 1.2.3 @@ -32254,7 +33744,7 @@ snapshots: - supports-color - utf-8-validate - '@onflow/transport-http@1.10.4(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@6.0.5)': + '@onflow/transport-http@1.10.4(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)': dependencies: '@babel/runtime': 7.26.0 '@onflow/util-address': 1.2.3 @@ -32264,8 +33754,8 @@ snapshots: abort-controller: 3.0.0 cross-fetch: 4.1.0(encoding@0.1.13) events: 3.3.0 - isomorphic-ws: 5.0.0(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) - ws: 8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5) + isomorphic-ws: 5.0.0(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + ws: 8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) transitivePeerDependencies: - '@onflow/util-config' - bufferutil @@ -32363,6 +33853,32 @@ snapshots: - encoding - supports-color + '@openbook-dex/openbook-v2@0.2.10(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/anchor': 0.29.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + big.js: 6.2.2 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - typescript + - utf-8-validate + + '@openbook-dex/openbook-v2@0.2.10(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/anchor': 0.29.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + big.js: 6.2.2 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - typescript + - utf-8-validate + '@opendocsg/pdf2md@0.1.32(encoding@0.1.13)': dependencies: enumify: 1.0.4 @@ -32376,17 +33892,33 @@ snapshots: '@openzeppelin/contracts@5.2.0': {} - '@orca-so/common-sdk@0.6.4(@solana/spl-token@0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10))(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(decimal.js@10.4.3)': + '@orca-so/common-sdk@0.6.4(@solana/spl-token@0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10))(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(decimal.js@10.4.3)': dependencies: - '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) + '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) decimal.js: 10.4.3 tiny-invariant: 1.3.3 + '@orca-so/common-sdk@0.6.4(@solana/spl-token@0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10))(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(decimal.js@10.4.3)': + dependencies: + '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + decimal.js: 10.4.3 + tiny-invariant: 1.3.3 + + '@orca-so/whirlpools-sdk@0.13.13(@coral-xyz/anchor@0.29.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(@orca-so/common-sdk@0.6.4(@solana/spl-token@0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10))(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(decimal.js@10.4.3))(@solana/spl-token@0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10))(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(decimal.js@10.4.3)': + dependencies: + '@coral-xyz/anchor': 0.29.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@orca-so/common-sdk': 0.6.4(@solana/spl-token@0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10))(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(decimal.js@10.4.3) + '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + decimal.js: 10.4.3 + tiny-invariant: 1.3.3 + '@orca-so/whirlpools-sdk@0.13.13(@coral-xyz/anchor@0.29.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(@orca-so/common-sdk@0.6.4(@solana/spl-token@0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10))(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(decimal.js@10.4.3))(@solana/spl-token@0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10))(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(decimal.js@10.4.3)': dependencies: '@coral-xyz/anchor': 0.29.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) - '@orca-so/common-sdk': 0.6.4(@solana/spl-token@0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10))(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(decimal.js@10.4.3) + '@orca-so/common-sdk': 0.6.4(@solana/spl-token@0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10))(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(decimal.js@10.4.3) '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) '@solana/web3.js': 1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) decimal.js: 10.4.3 @@ -32879,6 +34411,48 @@ snapshots: - bufferutil - utf-8-validate + '@project-serum/anchor@0.11.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)': + dependencies: + '@project-serum/borsh': 0.2.5(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + base64-js: 1.5.1 + bn.js: 5.2.1 + bs58: 4.0.1 + buffer-layout: 1.2.2 + camelcase: 5.3.1 + crypto-hash: 1.3.0 + eventemitter3: 4.0.7 + find: 0.3.0 + js-sha256: 0.9.0 + pako: 2.1.0 + snake-case: 3.0.4 + toml: 3.0.0 + transitivePeerDependencies: + - bufferutil + - encoding + - utf-8-validate + + '@project-serum/anchor@0.24.2(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)': + dependencies: + '@project-serum/borsh': 0.2.5(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + base64-js: 1.5.1 + bn.js: 5.2.1 + bs58: 4.0.1 + buffer-layout: 1.2.2 + camelcase: 5.3.1 + cross-fetch: 3.2.0(encoding@0.1.13) + crypto-hash: 1.3.0 + eventemitter3: 4.0.7 + js-sha256: 0.9.0 + pako: 2.1.0 + snake-case: 3.0.4 + toml: 3.0.0 + transitivePeerDependencies: + - bufferutil + - encoding + - utf-8-validate + '@project-serum/anchor@0.26.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)': dependencies: '@coral-xyz/borsh': 0.26.0(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) @@ -32901,6 +34475,24 @@ snapshots: - encoding - utf-8-validate + '@project-serum/borsh@0.2.5(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))': + dependencies: + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + bn.js: 5.2.1 + buffer-layout: 1.2.2 + + '@project-serum/serum@0.13.65(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)': + dependencies: + '@project-serum/anchor': 0.11.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/spl-token': 0.1.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + bn.js: 5.2.1 + buffer-layout: 1.2.2 + transitivePeerDependencies: + - bufferutil + - encoding + - utf-8-validate + '@protobufjs/aspromise@1.1.2': {} '@protobufjs/base64@1.1.2': {} @@ -32950,6 +34542,16 @@ snapshots: - encoding - utf-8-validate + '@pythnetwork/client@2.5.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)': + dependencies: + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + assert: 2.1.0 + buffer: 6.0.3 + transitivePeerDependencies: + - bufferutil + - encoding + - utf-8-validate + '@pythnetwork/hermes-client@1.3.0(axios@1.7.9)': dependencies: '@zodios/core': 10.9.6(axios@1.7.9)(zod@3.23.8) @@ -32962,7 +34564,7 @@ snapshots: dependencies: '@pythnetwork/price-service-sdk': 1.8.0 '@types/ws': 8.5.13 - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 axios-retry: 3.9.1 isomorphic-ws: 4.0.1(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)) ts-log: 2.2.7 @@ -32972,10 +34574,37 @@ snapshots: - debug - utf-8-validate + '@pythnetwork/price-service-sdk@1.7.1': + dependencies: + bn.js: 5.2.1 + '@pythnetwork/price-service-sdk@1.8.0': dependencies: bn.js: 5.2.1 + '@pythnetwork/pyth-solana-receiver@0.7.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/anchor': 0.29.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@noble/hashes': 1.7.0 + '@pythnetwork/price-service-sdk': 1.7.1 + '@pythnetwork/solana-utils': 0.4.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + transitivePeerDependencies: + - bufferutil + - encoding + - utf-8-validate + + '@pythnetwork/solana-utils@0.4.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/anchor': 0.29.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + bs58: 5.0.0 + jito-ts: 3.0.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + transitivePeerDependencies: + - bufferutil + - encoding + - utf-8-validate + '@radix-ui/primitive@1.1.1': {} '@radix-ui/react-arrow@1.1.1(@types/react-dom@19.0.3(@types/react@19.0.7))(@types/react@19.0.7)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': @@ -33345,12 +34974,33 @@ snapshots: '@randlabs/communication-bridge': 1.0.1 optional: true + '@raydium-io/raydium-sdk-v2@0.1.82-alpha(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@solana/buffer-layout': 4.0.1 + '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + axios: 1.7.9 + big.js: 6.2.2 + bn.js: 5.2.1 + dayjs: 1.11.13 + decimal.js-light: 2.5.1 + lodash: 4.17.21 + toformat: 2.0.0 + tsconfig-paths: 4.2.0 + transitivePeerDependencies: + - bufferutil + - debug + - encoding + - fastestsmallesttextencoderdecoder + - typescript + - utf-8-validate + '@raydium-io/raydium-sdk-v2@0.1.82-alpha(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10)': dependencies: '@solana/buffer-layout': 4.0.1 '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 big.js: 6.2.2 bn.js: 5.2.1 dayjs: 1.11.13 @@ -33366,12 +35016,34 @@ snapshots: - typescript - utf-8-validate + '@raydium-io/raydium-sdk-v2@0.1.95-alpha(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@solana/buffer-layout': 4.0.1 + '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + axios: 1.7.9 + big.js: 6.2.2 + bn.js: 5.2.1 + dayjs: 1.11.13 + decimal.js-light: 2.5.1 + jsonfile: 6.1.0 + lodash: 4.17.21 + toformat: 2.0.0 + tsconfig-paths: 4.2.0 + transitivePeerDependencies: + - bufferutil + - debug + - encoding + - fastestsmallesttextencoderdecoder + - typescript + - utf-8-validate + '@raydium-io/raydium-sdk-v2@0.1.95-alpha(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10)': dependencies: '@solana/buffer-layout': 4.0.1 '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 big.js: 6.2.2 bn.js: 5.2.1 dayjs: 1.11.13 @@ -33752,6 +35424,11 @@ snapshots: '@noble/hashes': 1.7.0 '@scure/base': 1.2.1 + '@scure/bip39@1.1.0': + dependencies: + '@noble/hashes': 1.1.3 + '@scure/base': 1.1.9 + '@scure/bip39@1.3.0': dependencies: '@noble/hashes': 1.4.0 @@ -33795,7 +35472,7 @@ snapshots: dependencies: '@shikijs/types': 1.27.2 '@shikijs/vscode-textmate': 10.0.1 - oniguruma-to-es: 2.0.0 + oniguruma-to-es: 2.1.0 '@shikijs/engine-oniguruma@1.27.2': dependencies: @@ -33889,6 +35566,36 @@ snapshots: '@sinonjs/text-encoding@0.7.3': {} + '@skip-go/client@0.16.5(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(@types/react@19.0.7)(bufferutil@4.0.9)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(starknet@6.18.0(encoding@0.1.13))(utf-8-validate@5.0.10)(viem@2.21.58(bufferutil@4.0.9)(typescript@5.7.3)(utf-8-validate@5.0.10)(zod@3.23.8))': + dependencies: + '@cosmjs/amino': 0.32.4 + '@cosmjs/cosmwasm-stargate': 0.32.4(bufferutil@4.0.9)(utf-8-validate@5.0.10) + '@cosmjs/encoding': 0.32.4 + '@cosmjs/math': 0.32.4 + '@cosmjs/proto-signing': 0.32.4 + '@cosmjs/stargate': 0.32.4(bufferutil@4.0.9)(utf-8-validate@5.0.10) + '@cosmjs/tendermint-rpc': 0.32.4(bufferutil@4.0.9)(utf-8-validate@5.0.10) + '@injectivelabs/core-proto-ts': 0.0.21 + '@injectivelabs/sdk-ts': 1.14.5(@types/react@19.0.7)(bufferutil@4.0.9)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(utf-8-validate@5.0.10) + '@keplr-wallet/unit': 0.12.175(starknet@6.18.0(encoding@0.1.13)) + '@solana/wallet-adapter-base': 0.9.23(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) + '@solana/web3.js': 1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + axios: 1.7.9 + cosmjs-types: 0.9.0 + create-hash: 1.2.0 + keccak: 3.0.4 + viem: 2.21.58(bufferutil@4.0.9)(typescript@5.7.3)(utf-8-validate@5.0.10)(zod@3.23.8) + transitivePeerDependencies: + - '@types/react' + - bufferutil + - debug + - graphql-ws + - react + - react-dom + - starknet + - subscriptions-transport-ws + - utf-8-validate + '@slack/events-api@3.0.1': dependencies: '@types/debug': 4.1.12 @@ -33918,7 +35625,7 @@ snapshots: '@slack/types': 2.14.0 '@types/is-stream': 1.1.0 '@types/node': 20.17.9 - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 eventemitter3: 3.1.2 form-data: 2.5.2 is-electron: 2.2.2 @@ -34282,6 +35989,20 @@ snapshots: '@socket.io/component-emitter@3.1.2': {} + '@solana-developers/helpers@2.5.6(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/spl-token-metadata': 0.1.6(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + bs58: 6.0.0 + dotenv: 16.4.7 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - typescript + - utf-8-validate + '@solana-developers/helpers@2.5.6(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10)': dependencies: '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) @@ -34315,6 +36036,11 @@ snapshots: dependencies: '@solana/errors': 2.0.0-preview.2 + '@solana/codecs-core@2.0.0-preview.4(typescript@5.6.3)': + dependencies: + '@solana/errors': 2.0.0-preview.4(typescript@5.6.3) + typescript: 5.6.3 + '@solana/codecs-core@2.0.0-preview.4(typescript@5.7.3)': dependencies: '@solana/errors': 2.0.0-preview.4(typescript@5.7.3) @@ -34325,6 +36051,11 @@ snapshots: '@solana/errors': 2.0.0-rc.1(typescript@4.9.5) typescript: 4.9.5 + '@solana/codecs-core@2.0.0-rc.1(typescript@5.6.3)': + dependencies: + '@solana/errors': 2.0.0-rc.1(typescript@5.6.3) + typescript: 5.6.3 + '@solana/codecs-core@2.0.0-rc.1(typescript@5.7.3)': dependencies: '@solana/errors': 2.0.0-rc.1(typescript@5.7.3) @@ -34336,6 +36067,13 @@ snapshots: '@solana/codecs-numbers': 2.0.0-preview.2 '@solana/errors': 2.0.0-preview.2 + '@solana/codecs-data-structures@2.0.0-preview.4(typescript@5.6.3)': + dependencies: + '@solana/codecs-core': 2.0.0-preview.4(typescript@5.6.3) + '@solana/codecs-numbers': 2.0.0-preview.4(typescript@5.6.3) + '@solana/errors': 2.0.0-preview.4(typescript@5.6.3) + typescript: 5.6.3 + '@solana/codecs-data-structures@2.0.0-preview.4(typescript@5.7.3)': dependencies: '@solana/codecs-core': 2.0.0-preview.4(typescript@5.7.3) @@ -34350,6 +36088,13 @@ snapshots: '@solana/errors': 2.0.0-rc.1(typescript@4.9.5) typescript: 4.9.5 + '@solana/codecs-data-structures@2.0.0-rc.1(typescript@5.6.3)': + dependencies: + '@solana/codecs-core': 2.0.0-rc.1(typescript@5.6.3) + '@solana/codecs-numbers': 2.0.0-rc.1(typescript@5.6.3) + '@solana/errors': 2.0.0-rc.1(typescript@5.6.3) + typescript: 5.6.3 + '@solana/codecs-data-structures@2.0.0-rc.1(typescript@5.7.3)': dependencies: '@solana/codecs-core': 2.0.0-rc.1(typescript@5.7.3) @@ -34362,6 +36107,12 @@ snapshots: '@solana/codecs-core': 2.0.0-preview.2 '@solana/errors': 2.0.0-preview.2 + '@solana/codecs-numbers@2.0.0-preview.4(typescript@5.6.3)': + dependencies: + '@solana/codecs-core': 2.0.0-preview.4(typescript@5.6.3) + '@solana/errors': 2.0.0-preview.4(typescript@5.6.3) + typescript: 5.6.3 + '@solana/codecs-numbers@2.0.0-preview.4(typescript@5.7.3)': dependencies: '@solana/codecs-core': 2.0.0-preview.4(typescript@5.7.3) @@ -34374,6 +36125,12 @@ snapshots: '@solana/errors': 2.0.0-rc.1(typescript@4.9.5) typescript: 4.9.5 + '@solana/codecs-numbers@2.0.0-rc.1(typescript@5.6.3)': + dependencies: + '@solana/codecs-core': 2.0.0-rc.1(typescript@5.6.3) + '@solana/errors': 2.0.0-rc.1(typescript@5.6.3) + typescript: 5.6.3 + '@solana/codecs-numbers@2.0.0-rc.1(typescript@5.7.3)': dependencies: '@solana/codecs-core': 2.0.0-rc.1(typescript@5.7.3) @@ -34387,6 +36144,14 @@ snapshots: '@solana/errors': 2.0.0-preview.2 fastestsmallesttextencoderdecoder: 1.0.22 + '@solana/codecs-strings@2.0.0-preview.4(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)': + dependencies: + '@solana/codecs-core': 2.0.0-preview.4(typescript@5.6.3) + '@solana/codecs-numbers': 2.0.0-preview.4(typescript@5.6.3) + '@solana/errors': 2.0.0-preview.4(typescript@5.6.3) + fastestsmallesttextencoderdecoder: 1.0.22 + typescript: 5.6.3 + '@solana/codecs-strings@2.0.0-preview.4(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)': dependencies: '@solana/codecs-core': 2.0.0-preview.4(typescript@5.7.3) @@ -34403,6 +36168,14 @@ snapshots: fastestsmallesttextencoderdecoder: 1.0.22 typescript: 4.9.5 + '@solana/codecs-strings@2.0.0-rc.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)': + dependencies: + '@solana/codecs-core': 2.0.0-rc.1(typescript@5.6.3) + '@solana/codecs-numbers': 2.0.0-rc.1(typescript@5.6.3) + '@solana/errors': 2.0.0-rc.1(typescript@5.6.3) + fastestsmallesttextencoderdecoder: 1.0.22 + typescript: 5.6.3 + '@solana/codecs-strings@2.0.0-rc.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)': dependencies: '@solana/codecs-core': 2.0.0-rc.1(typescript@5.7.3) @@ -34421,6 +36194,17 @@ snapshots: transitivePeerDependencies: - fastestsmallesttextencoderdecoder + '@solana/codecs@2.0.0-preview.4(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)': + dependencies: + '@solana/codecs-core': 2.0.0-preview.4(typescript@5.6.3) + '@solana/codecs-data-structures': 2.0.0-preview.4(typescript@5.6.3) + '@solana/codecs-numbers': 2.0.0-preview.4(typescript@5.6.3) + '@solana/codecs-strings': 2.0.0-preview.4(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3) + '@solana/options': 2.0.0-preview.4(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3) + typescript: 5.6.3 + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder + '@solana/codecs@2.0.0-preview.4(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)': dependencies: '@solana/codecs-core': 2.0.0-preview.4(typescript@5.7.3) @@ -34443,6 +36227,17 @@ snapshots: transitivePeerDependencies: - fastestsmallesttextencoderdecoder + '@solana/codecs@2.0.0-rc.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)': + dependencies: + '@solana/codecs-core': 2.0.0-rc.1(typescript@5.6.3) + '@solana/codecs-data-structures': 2.0.0-rc.1(typescript@5.6.3) + '@solana/codecs-numbers': 2.0.0-rc.1(typescript@5.6.3) + '@solana/codecs-strings': 2.0.0-rc.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3) + '@solana/options': 2.0.0-rc.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3) + typescript: 5.6.3 + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder + '@solana/codecs@2.0.0-rc.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)': dependencies: '@solana/codecs-core': 2.0.0-rc.1(typescript@5.7.3) @@ -34459,6 +36254,12 @@ snapshots: chalk: 5.4.1 commander: 12.1.0 + '@solana/errors@2.0.0-preview.4(typescript@5.6.3)': + dependencies: + chalk: 5.4.1 + commander: 12.1.0 + typescript: 5.6.3 + '@solana/errors@2.0.0-preview.4(typescript@5.7.3)': dependencies: chalk: 5.4.1 @@ -34471,6 +36272,12 @@ snapshots: commander: 12.1.0 typescript: 4.9.5 + '@solana/errors@2.0.0-rc.1(typescript@5.6.3)': + dependencies: + chalk: 5.4.1 + commander: 12.1.0 + typescript: 5.6.3 + '@solana/errors@2.0.0-rc.1(typescript@5.7.3)': dependencies: chalk: 5.4.1 @@ -34482,6 +36289,17 @@ snapshots: '@solana/codecs-core': 2.0.0-preview.2 '@solana/codecs-numbers': 2.0.0-preview.2 + '@solana/options@2.0.0-preview.4(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)': + dependencies: + '@solana/codecs-core': 2.0.0-preview.4(typescript@5.6.3) + '@solana/codecs-data-structures': 2.0.0-preview.4(typescript@5.6.3) + '@solana/codecs-numbers': 2.0.0-preview.4(typescript@5.6.3) + '@solana/codecs-strings': 2.0.0-preview.4(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3) + '@solana/errors': 2.0.0-preview.4(typescript@5.6.3) + typescript: 5.6.3 + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder + '@solana/options@2.0.0-preview.4(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)': dependencies: '@solana/codecs-core': 2.0.0-preview.4(typescript@5.7.3) @@ -34504,6 +36322,17 @@ snapshots: transitivePeerDependencies: - fastestsmallesttextencoderdecoder + '@solana/options@2.0.0-rc.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)': + dependencies: + '@solana/codecs-core': 2.0.0-rc.1(typescript@5.6.3) + '@solana/codecs-data-structures': 2.0.0-rc.1(typescript@5.6.3) + '@solana/codecs-numbers': 2.0.0-rc.1(typescript@5.6.3) + '@solana/codecs-strings': 2.0.0-rc.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3) + '@solana/errors': 2.0.0-rc.1(typescript@5.6.3) + typescript: 5.6.3 + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder + '@solana/options@2.0.0-rc.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)': dependencies: '@solana/codecs-core': 2.0.0-rc.1(typescript@5.7.3) @@ -34517,7 +36346,7 @@ snapshots: '@solana/spl-account-compression@0.1.10(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)': dependencies: - '@metaplex-foundation/beet': 0.7.2 + '@metaplex-foundation/beet': 0.7.1 '@metaplex-foundation/beet-solana': 0.4.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) bn.js: 5.2.1 @@ -34530,6 +36359,14 @@ snapshots: - supports-color - utf-8-validate + '@solana/spl-token-group@0.0.4(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)': + dependencies: + '@solana/codecs': 2.0.0-preview.2(fastestsmallesttextencoderdecoder@1.0.22) + '@solana/spl-type-length-value': 0.1.0 + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder + '@solana/spl-token-group@0.0.4(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)': dependencies: '@solana/codecs': 2.0.0-preview.2(fastestsmallesttextencoderdecoder@1.0.22) @@ -34538,6 +36375,15 @@ snapshots: transitivePeerDependencies: - fastestsmallesttextencoderdecoder + '@solana/spl-token-group@0.0.5(@solana/web3.js@1.95.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)': + dependencies: + '@solana/codecs': 2.0.0-preview.4(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3) + '@solana/spl-type-length-value': 0.1.0 + '@solana/web3.js': 1.95.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder + - typescript + '@solana/spl-token-group@0.0.5(@solana/web3.js@1.95.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)': dependencies: '@solana/codecs': 2.0.0-preview.4(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3) @@ -34547,6 +36393,14 @@ snapshots: - fastestsmallesttextencoderdecoder - typescript + '@solana/spl-token-group@0.0.7(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)': + dependencies: + '@solana/codecs': 2.0.0-rc.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder + - typescript + '@solana/spl-token-group@0.0.7(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)': dependencies: '@solana/codecs': 2.0.0-rc.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3) @@ -34555,6 +36409,14 @@ snapshots: - fastestsmallesttextencoderdecoder - typescript + '@solana/spl-token-group@0.0.7(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)': + dependencies: + '@solana/codecs': 2.0.0-rc.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3) + '@solana/web3.js': 1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder + - typescript + '@solana/spl-token-group@0.0.7(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)': dependencies: '@solana/codecs': 2.0.0-rc.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3) @@ -34563,6 +36425,14 @@ snapshots: - fastestsmallesttextencoderdecoder - typescript + '@solana/spl-token-metadata@0.1.6(@solana/web3.js@1.95.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)': + dependencies: + '@solana/codecs': 2.0.0-rc.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3) + '@solana/web3.js': 1.95.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder + - typescript + '@solana/spl-token-metadata@0.1.6(@solana/web3.js@1.95.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)': dependencies: '@solana/codecs': 2.0.0-rc.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3) @@ -34579,6 +36449,14 @@ snapshots: - fastestsmallesttextencoderdecoder - typescript + '@solana/spl-token-metadata@0.1.6(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)': + dependencies: + '@solana/codecs': 2.0.0-rc.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder + - typescript + '@solana/spl-token-metadata@0.1.6(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)': dependencies: '@solana/codecs': 2.0.0-rc.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3) @@ -34587,6 +36465,14 @@ snapshots: - fastestsmallesttextencoderdecoder - typescript + '@solana/spl-token-metadata@0.1.6(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)': + dependencies: + '@solana/codecs': 2.0.0-rc.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3) + '@solana/web3.js': 1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + transitivePeerDependencies: + - fastestsmallesttextencoderdecoder + - typescript + '@solana/spl-token-metadata@0.1.6(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)': dependencies: '@solana/codecs': 2.0.0-rc.1(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3) @@ -34595,6 +36481,10 @@ snapshots: - fastestsmallesttextencoderdecoder - typescript + '@solana/spl-token-registry@0.2.4574': + dependencies: + cross-fetch: 3.0.6 + '@solana/spl-token@0.1.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)': dependencies: '@babel/runtime': 7.26.0 @@ -34608,6 +36498,18 @@ snapshots: - encoding - utf-8-validate + '@solana/spl-token@0.2.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)': + dependencies: + '@solana/buffer-layout': 4.0.1 + '@solana/buffer-layout-utils': 0.2.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + start-server-and-test: 1.15.4 + transitivePeerDependencies: + - bufferutil + - encoding + - supports-color + - utf-8-validate + '@solana/spl-token@0.3.11(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@4.9.5)(utf-8-validate@5.0.10)': dependencies: '@solana/buffer-layout': 4.0.1 @@ -34622,6 +36524,20 @@ snapshots: - typescript - utf-8-validate + '@solana/spl-token@0.3.11(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@solana/buffer-layout': 4.0.1 + '@solana/buffer-layout-utils': 0.2.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/spl-token-metadata': 0.1.6(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + buffer: 6.0.3 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - typescript + - utf-8-validate + '@solana/spl-token@0.3.11(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10)': dependencies: '@solana/buffer-layout': 4.0.1 @@ -34636,6 +36552,73 @@ snapshots: - typescript - utf-8-validate + '@solana/spl-token@0.3.7(@solana/web3.js@1.92.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)': + dependencies: + '@solana/buffer-layout': 4.0.1 + '@solana/buffer-layout-utils': 0.2.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.92.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + buffer: 6.0.3 + transitivePeerDependencies: + - bufferutil + - encoding + - utf-8-validate + + '@solana/spl-token@0.3.7(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)': + dependencies: + '@solana/buffer-layout': 4.0.1 + '@solana/buffer-layout-utils': 0.2.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + buffer: 6.0.3 + transitivePeerDependencies: + - bufferutil + - encoding + - utf-8-validate + + '@solana/spl-token@0.4.6(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@solana/buffer-layout': 4.0.1 + '@solana/buffer-layout-utils': 0.2.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/spl-token-group': 0.0.4(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22) + '@solana/spl-token-metadata': 0.1.6(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + buffer: 6.0.3 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - typescript + - utf-8-validate + + '@solana/spl-token@0.4.6(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10)': + dependencies: + '@solana/buffer-layout': 4.0.1 + '@solana/buffer-layout-utils': 0.2.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/spl-token-group': 0.0.4(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22) + '@solana/spl-token-metadata': 0.1.6(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + buffer: 6.0.3 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - typescript + - utf-8-validate + + '@solana/spl-token@0.4.6(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@solana/buffer-layout': 4.0.1 + '@solana/buffer-layout-utils': 0.2.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/spl-token-group': 0.0.4(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22) + '@solana/spl-token-metadata': 0.1.6(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3) + '@solana/web3.js': 1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + buffer: 6.0.3 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - typescript + - utf-8-validate + '@solana/spl-token@0.4.6(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10)': dependencies: '@solana/buffer-layout': 4.0.1 @@ -34651,6 +36634,21 @@ snapshots: - typescript - utf-8-validate + '@solana/spl-token@0.4.8(@solana/web3.js@1.95.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@solana/buffer-layout': 4.0.1 + '@solana/buffer-layout-utils': 0.2.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/spl-token-group': 0.0.5(@solana/web3.js@1.95.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3) + '@solana/spl-token-metadata': 0.1.6(@solana/web3.js@1.95.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3) + '@solana/web3.js': 1.95.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + buffer: 6.0.3 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - typescript + - utf-8-validate + '@solana/spl-token@0.4.8(@solana/web3.js@1.95.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10)': dependencies: '@solana/buffer-layout': 4.0.1 @@ -34666,6 +36664,21 @@ snapshots: - typescript - utf-8-validate + '@solana/spl-token@0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@solana/buffer-layout': 4.0.1 + '@solana/buffer-layout-utils': 0.2.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/spl-token-group': 0.0.7(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3) + '@solana/spl-token-metadata': 0.1.6(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + buffer: 6.0.3 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - typescript + - utf-8-validate + '@solana/spl-token@0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10)': dependencies: '@solana/buffer-layout': 4.0.1 @@ -34681,6 +36694,21 @@ snapshots: - typescript - utf-8-validate + '@solana/spl-token@0.4.9(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@solana/buffer-layout': 4.0.1 + '@solana/buffer-layout-utils': 0.2.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/spl-token-group': 0.0.7(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3) + '@solana/spl-token-metadata': 0.1.6(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3) + '@solana/web3.js': 1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + buffer: 6.0.3 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - typescript + - utf-8-validate + '@solana/spl-token@0.4.9(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10)': dependencies: '@solana/buffer-layout': 4.0.1 @@ -34700,6 +36728,22 @@ snapshots: dependencies: buffer: 6.0.3 + '@solana/wallet-adapter-base@0.9.23(@solana/web3.js@1.92.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))': + dependencies: + '@solana/wallet-standard-features': 1.3.0 + '@solana/web3.js': 1.92.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@wallet-standard/base': 1.1.0 + '@wallet-standard/features': 1.1.0 + eventemitter3: 4.0.7 + + '@solana/wallet-adapter-base@0.9.23(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))': + dependencies: + '@solana/wallet-standard-features': 1.3.0 + '@solana/web3.js': 1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@wallet-standard/base': 1.1.0 + '@wallet-standard/features': 1.1.0 + eventemitter3: 4.0.7 + '@solana/wallet-adapter-base@0.9.23(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@6.0.5))': dependencies: '@solana/wallet-standard-features': 1.3.0 @@ -34708,11 +36752,64 @@ snapshots: '@wallet-standard/features': 1.1.0 eventemitter3: 4.0.7 + '@solana/wallet-adapter-ledger@0.9.25(@solana/web3.js@1.92.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))': + dependencies: + '@ledgerhq/devices': 6.27.1 + '@ledgerhq/hw-transport': 6.27.1 + '@ledgerhq/hw-transport-webhid': 6.27.1 + '@solana/wallet-adapter-base': 0.9.23(@solana/web3.js@1.92.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) + '@solana/web3.js': 1.92.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + buffer: 6.0.3 + '@solana/wallet-standard-features@1.3.0': dependencies: '@wallet-standard/base': 1.1.0 '@wallet-standard/features': 1.1.0 + '@solana/web3.js@1.77.4(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)': + dependencies: + '@babel/runtime': 7.26.0 + '@noble/curves': 1.8.0 + '@noble/hashes': 1.7.0 + '@solana/buffer-layout': 4.0.1 + agentkeepalive: 4.6.0 + bigint-buffer: 1.1.5 + bn.js: 5.2.1 + borsh: 0.7.0 + bs58: 4.0.1 + buffer: 6.0.3 + fast-stable-stringify: 1.0.0 + jayson: 4.1.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) + node-fetch: 2.7.0(encoding@0.1.13) + rpc-websockets: 7.5.1 + superstruct: 0.14.2 + transitivePeerDependencies: + - bufferutil + - encoding + - utf-8-validate + + '@solana/web3.js@1.92.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)': + dependencies: + '@babel/runtime': 7.26.0 + '@noble/curves': 1.8.0 + '@noble/hashes': 1.7.0 + '@solana/buffer-layout': 4.0.1 + agentkeepalive: 4.6.0 + bigint-buffer: 1.1.5 + bn.js: 5.2.1 + borsh: 0.7.0 + bs58: 4.0.1 + buffer: 6.0.3 + fast-stable-stringify: 1.0.0 + jayson: 4.1.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) + node-fetch: 2.7.0(encoding@0.1.13) + rpc-websockets: 8.0.2 + superstruct: 1.0.4 + transitivePeerDependencies: + - bufferutil + - encoding + - utf-8-validate + '@solana/web3.js@1.95.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)': dependencies: '@babel/runtime': 7.26.0 @@ -34779,6 +36876,28 @@ snapshots: - encoding - utf-8-validate + '@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@6.0.5)': + dependencies: + '@babel/runtime': 7.26.0 + '@noble/curves': 1.8.0 + '@noble/hashes': 1.7.0 + '@solana/buffer-layout': 4.0.1 + agentkeepalive: 4.6.0 + bigint-buffer: 1.1.5 + bn.js: 5.2.1 + borsh: 0.7.0 + bs58: 4.0.1 + buffer: 6.0.3 + fast-stable-stringify: 1.0.0 + jayson: 4.1.3(bufferutil@4.0.9)(utf-8-validate@6.0.5) + node-fetch: 2.7.0(encoding@0.1.13) + rpc-websockets: 9.0.4 + superstruct: 2.0.2 + transitivePeerDependencies: + - bufferutil + - encoding + - utf-8-validate + '@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)': dependencies: '@babel/runtime': 7.26.0 @@ -34823,6 +36942,24 @@ snapshots: - encoding - utf-8-validate + '@solworks/soltoolkit-sdk@0.0.23(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)': + dependencies: + '@solana/buffer-layout': 4.0.1 + '@solana/spl-token': 0.3.7(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@types/bn.js': 5.1.6 + '@types/node': 18.19.71 + '@types/node-fetch': 2.6.12 + bn.js: 5.2.1 + decimal.js: 10.4.3 + typescript: 4.9.5 + transitivePeerDependencies: + - bufferutil + - encoding + - utf-8-validate + + '@soncodi/signal@2.0.7': {} + '@spheron/protocol-sdk@1.2.3(bufferutil@4.0.9)(utf-8-validate@6.0.5)': dependencies: base64-js: 1.5.1 @@ -34843,6 +36980,26 @@ snapshots: uri-js: 4.4.1 valid-url: 1.0.9 + '@sqds/multisig@2.1.3(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@metaplex-foundation/beet': 0.7.1 + '@metaplex-foundation/beet-solana': 0.4.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@metaplex-foundation/cusper': 0.0.2 + '@solana/spl-token': 0.3.11(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@types/bn.js': 5.1.6 + assert: 2.1.0 + bn.js: 5.2.1 + buffer: 6.0.3 + invariant: 2.2.4 + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - supports-color + - typescript + - utf-8-validate + '@sqds/multisig@2.1.3(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10)': dependencies: '@metaplex-foundation/beet': 0.7.1 @@ -34948,7 +37105,7 @@ snapshots: '@story-protocol/core-sdk@1.2.0-rc.3(bufferutil@4.0.9)(typescript@5.7.3)(utf-8-validate@6.0.5)(zod@3.24.1)': dependencies: abitype: 0.10.3(typescript@5.7.3)(zod@3.24.1) - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 bs58: 6.0.0 dotenv: 16.4.7 multiformats: 9.9.0 @@ -35187,6 +37344,43 @@ snapshots: dependencies: '@swc/counter': 0.1.3 + '@switchboard-xyz/common@2.5.13(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)': + dependencies: + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + axios: 1.7.9 + big.js: 6.2.2 + bn.js: 5.2.1 + bs58: 6.0.0 + cron-validator: 1.3.1 + decimal.js: 10.4.3 + js-sha256: 0.11.0 + lodash: 4.17.21 + protobufjs: 7.4.0 + yaml: 2.7.0 + transitivePeerDependencies: + - bufferutil + - debug + - encoding + - utf-8-validate + + '@switchboard-xyz/on-demand@1.2.42(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)': + dependencies: + '@brokerloop/ttlcache': 3.2.3 + '@coral-xyz/anchor-30': '@coral-xyz/anchor@0.30.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)' + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solworks/soltoolkit-sdk': 0.0.23(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@switchboard-xyz/common': 2.5.13(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + axios: 1.7.9 + big.js: 6.2.2 + bs58: 5.0.0 + js-yaml: 4.1.0 + protobufjs: 7.4.0 + transitivePeerDependencies: + - bufferutil + - debug + - encoding + - utf-8-validate + '@szmarczak/http-timer@4.0.6': dependencies: defer-to-connect: 2.0.1 @@ -35211,13 +37405,38 @@ snapshots: '@tavily/core@0.0.2': dependencies: - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 js-tiktoken: 1.0.15 transitivePeerDependencies: - debug '@telegraf/types@7.1.0': {} + '@tensor-hq/tensor-common@8.3.2(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/anchor': 0.26.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@metaplex-foundation/mpl-auction-house': 2.5.1(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@metaplex-foundation/mpl-bubblegum': 0.7.0(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/spl-account-compression': 0.1.10(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/spl-token': 0.3.11(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + axios: 0.28.1 + big.js: 6.2.2 + bn.js: 5.2.1 + borsh: 0.7.0 + bs58: 5.0.0 + exponential-backoff: 3.1.1 + js-sha3: 0.8.0 + semaphore: 1.1.0 + transitivePeerDependencies: + - bufferutil + - debug + - encoding + - fastestsmallesttextencoderdecoder + - supports-color + - typescript + - utf-8-validate + '@tensor-hq/tensor-common@8.3.2(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10)': dependencies: '@coral-xyz/anchor': 0.26.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) @@ -35243,6 +37462,31 @@ snapshots: - typescript - utf-8-validate + '@tensor-oss/tensorswap-sdk@4.5.0(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/anchor': 0.26.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@msgpack/msgpack': 2.8.0 + '@saberhq/solana-contrib': 1.15.0(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bn.js@5.2.1) + '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@tensor-hq/tensor-common': 8.3.2(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@types/bn.js': 5.1.6 + big.js: 6.2.2 + bn.js: 5.2.1 + js-sha256: 0.9.0 + keccak256: 1.0.6 + math-expression-evaluator: 2.0.6 + merkletreejs: 0.3.11 + uuid: 8.3.2 + transitivePeerDependencies: + - bufferutil + - debug + - encoding + - fastestsmallesttextencoderdecoder + - supports-color + - typescript + - utf-8-validate + '@tensor-oss/tensorswap-sdk@4.5.0(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10)': dependencies: '@coral-xyz/anchor': 0.26.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) @@ -35309,7 +37553,7 @@ snapshots: dependencies: '@ton/core': 0.59.1(@ton/crypto@3.3.0) '@ton/crypto': 3.3.0 - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 dataloader: 2.2.3 symbol.inspect: 1.0.1 teslabot: 1.5.0 @@ -35319,8 +37563,19 @@ snapshots: '@tootallnate/quickjs-emscripten@0.23.0': {} + '@triton-one/yellowstone-grpc@1.3.0': + dependencies: + '@grpc/grpc-js': 1.12.5 + '@trysound/sax@0.2.0': {} + '@ts-morph/common@0.19.0': + dependencies: + fast-glob: 3.3.3 + minimatch: 7.4.6 + mkdirp: 2.1.6 + path-browserify: 1.0.1 + '@tsconfig/node10@1.0.11': {} '@tsconfig/node12@1.0.11': {} @@ -35552,7 +37807,7 @@ snapshots: '@types/debug@4.1.12': dependencies: - '@types/ms': 0.7.34 + '@types/ms': 2.1.0 '@types/deep-eql@4.0.2': {} @@ -35734,7 +37989,7 @@ snapshots: '@types/mocha@10.0.10': {} - '@types/ms@0.7.34': {} + '@types/ms@2.1.0': {} '@types/multer@1.4.12': dependencies: @@ -35928,6 +38183,8 @@ snapshots: '@types/uuid@8.3.4': {} + '@types/w3c-web-usb@1.0.10': {} + '@types/wav-encoder@1.3.3': {} '@types/webrtc@0.0.37': {} @@ -36410,7 +38667,7 @@ snapshots: transitivePeerDependencies: - supports-color - '@vitest/coverage-v8@2.1.5(vitest@2.1.8(@types/node@22.8.4)(jsdom@25.0.1(bufferutil@4.0.9)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.37.0))': + '@vitest/coverage-v8@2.1.5(vitest@3.0.2(@types/node@22.8.4)(jsdom@25.0.1(bufferutil@4.0.9)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.37.0))': dependencies: '@ampproject/remapping': 2.3.0 '@bcoe/v8-coverage': 0.2.3 @@ -36424,7 +38681,25 @@ snapshots: std-env: 3.8.0 test-exclude: 7.0.1 tinyrainbow: 1.2.0 - vitest: 2.1.8(@types/node@22.8.4)(jsdom@25.0.1(bufferutil@4.0.9)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.37.0) + vitest: 3.0.2(@types/node@22.8.4)(jsdom@25.0.1(bufferutil@4.0.9)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.37.0) + transitivePeerDependencies: + - supports-color + + '@vitest/coverage-v8@3.0.2(vitest@3.0.2(@types/node@22.10.7)(jsdom@25.0.1(bufferutil@4.0.9)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@6.0.5))(terser@5.37.0))': + dependencies: + '@ampproject/remapping': 2.3.0 + '@bcoe/v8-coverage': 1.0.2 + debug: 4.4.0(supports-color@5.5.0) + istanbul-lib-coverage: 3.2.2 + istanbul-lib-report: 3.0.1 + istanbul-lib-source-maps: 5.0.6 + istanbul-reports: 3.1.7 + magic-string: 0.30.17 + magicast: 0.3.5 + std-env: 3.8.0 + test-exclude: 7.0.1 + tinyrainbow: 2.0.0 + vitest: 3.0.2(@types/node@22.10.7)(jsdom@25.0.1(bufferutil@4.0.9)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@6.0.5))(terser@5.37.0) transitivePeerDependencies: - supports-color @@ -36475,6 +38750,13 @@ snapshots: chai: 5.1.2 tinyrainbow: 1.2.0 + '@vitest/expect@3.0.2': + dependencies: + '@vitest/spy': 3.0.2 + '@vitest/utils': 3.0.2 + chai: 5.1.2 + tinyrainbow: 2.0.0 + '@vitest/mocker@2.1.4(vite@5.4.11(@types/node@22.10.7)(terser@5.37.0))': dependencies: '@vitest/spy': 2.1.4 @@ -36499,6 +38781,14 @@ snapshots: optionalDependencies: vite: 5.4.11(@types/node@22.10.7)(terser@5.37.0) + '@vitest/mocker@3.0.2(vite@5.4.11(@types/node@22.10.7)(terser@5.37.0))': + dependencies: + '@vitest/spy': 3.0.2 + estree-walker: 3.0.3 + magic-string: 0.30.17 + optionalDependencies: + vite: 5.4.11(@types/node@22.10.7)(terser@5.37.0) + '@vitest/pretty-format@2.1.4': dependencies: tinyrainbow: 1.2.0 @@ -36511,6 +38801,10 @@ snapshots: dependencies: tinyrainbow: 1.2.0 + '@vitest/pretty-format@3.0.2': + dependencies: + tinyrainbow: 2.0.0 + '@vitest/runner@0.34.6': dependencies: '@vitest/utils': 0.34.6 @@ -36544,6 +38838,11 @@ snapshots: '@vitest/utils': 2.1.8 pathe: 1.1.2 + '@vitest/runner@3.0.2': + dependencies: + '@vitest/utils': 3.0.2 + pathe: 2.0.2 + '@vitest/snapshot@0.34.6': dependencies: magic-string: 0.30.17 @@ -36580,6 +38879,12 @@ snapshots: magic-string: 0.30.17 pathe: 1.1.2 + '@vitest/snapshot@3.0.2': + dependencies: + '@vitest/pretty-format': 3.0.2 + magic-string: 0.30.17 + pathe: 2.0.2 + '@vitest/spy@0.34.6': dependencies: tinyspy: 2.2.1 @@ -36604,6 +38909,10 @@ snapshots: dependencies: tinyspy: 3.0.2 + '@vitest/spy@3.0.2': + dependencies: + tinyspy: 3.0.2 + '@vitest/ui@0.34.7(vitest@0.34.6)': dependencies: '@vitest/utils': 0.34.7 @@ -36659,8 +38968,38 @@ snapshots: loupe: 3.1.2 tinyrainbow: 1.2.0 + '@vitest/utils@3.0.2': + dependencies: + '@vitest/pretty-format': 3.0.2 + loupe: 3.1.2 + tinyrainbow: 2.0.0 + '@vladfrangu/async_event_emitter@2.4.6': {} + '@voltr/vault-sdk@0.1.1(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/anchor': 0.30.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/spl-token': 0.4.9(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - typescript + - utf-8-validate + + '@voltr/vault-sdk@0.1.1(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10)': + dependencies: + '@coral-xyz/anchor': 0.30.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/spl-token': 0.4.9(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - typescript + - utf-8-validate + '@vue/compiler-core@3.5.13': dependencies: '@babel/parser': 7.26.5 @@ -36762,340 +39101,25 @@ snapshots: - uploadthing - utf-8-validate - '@walletconnect/core@2.17.4(bufferutil@4.0.9)(ioredis@5.4.2)(utf-8-validate@6.0.5)': - dependencies: - '@walletconnect/heartbeat': 1.2.2 - '@walletconnect/jsonrpc-provider': 1.0.14 - '@walletconnect/jsonrpc-types': 1.0.4 - '@walletconnect/jsonrpc-utils': 1.0.8 - '@walletconnect/jsonrpc-ws-connection': 1.0.16(bufferutil@4.0.9)(utf-8-validate@6.0.5) - '@walletconnect/keyvaluestorage': 1.1.1(ioredis@5.4.2) - '@walletconnect/logger': 2.1.2 - '@walletconnect/relay-api': 1.0.11 - '@walletconnect/relay-auth': 1.0.4 - '@walletconnect/safe-json': 1.0.2 - '@walletconnect/time': 1.0.2 - '@walletconnect/types': 2.17.4(ioredis@5.4.2) - '@walletconnect/utils': 2.17.4(ioredis@5.4.2) - '@walletconnect/window-getters': 1.0.1 - events: 3.3.0 - lodash.isequal: 4.5.0 - uint8arrays: 3.1.0 - transitivePeerDependencies: - - '@azure/app-configuration' - - '@azure/cosmos' - - '@azure/data-tables' - - '@azure/identity' - - '@azure/keyvault-secrets' - - '@azure/storage-blob' - - '@capacitor/preferences' - - '@deno/kv' - - '@netlify/blobs' - - '@planetscale/database' - - '@react-native-async-storage/async-storage' - - '@upstash/redis' - - '@vercel/blob' - - '@vercel/kv' - - aws4fetch - - bufferutil - - db0 - - ioredis - - uploadthing - - utf-8-validate - - '@walletconnect/core@2.17.4(bufferutil@4.0.9)(utf-8-validate@5.0.10)': - dependencies: - '@walletconnect/heartbeat': 1.2.2 - '@walletconnect/jsonrpc-provider': 1.0.14 - '@walletconnect/jsonrpc-types': 1.0.4 - '@walletconnect/jsonrpc-utils': 1.0.8 - '@walletconnect/jsonrpc-ws-connection': 1.0.16(bufferutil@4.0.9)(utf-8-validate@5.0.10) - '@walletconnect/keyvaluestorage': 1.1.1(ioredis@5.4.2) - '@walletconnect/logger': 2.1.2 - '@walletconnect/relay-api': 1.0.11 - '@walletconnect/relay-auth': 1.0.4 - '@walletconnect/safe-json': 1.0.2 - '@walletconnect/time': 1.0.2 - '@walletconnect/types': 2.17.4(ioredis@5.4.2) - '@walletconnect/utils': 2.17.4(ioredis@5.4.2) - '@walletconnect/window-getters': 1.0.1 - events: 3.3.0 - lodash.isequal: 4.5.0 - uint8arrays: 3.1.0 - transitivePeerDependencies: - - '@azure/app-configuration' - - '@azure/cosmos' - - '@azure/data-tables' - - '@azure/identity' - - '@azure/keyvault-secrets' - - '@azure/storage-blob' - - '@capacitor/preferences' - - '@deno/kv' - - '@netlify/blobs' - - '@planetscale/database' - - '@react-native-async-storage/async-storage' - - '@upstash/redis' - - '@vercel/blob' - - '@vercel/kv' - - aws4fetch - - bufferutil - - db0 - - ioredis - - uploadthing - - utf-8-validate - - '@walletconnect/environment@1.0.1': - dependencies: - tslib: 1.14.1 - - '@walletconnect/ethereum-provider@2.17.3(@types/react@19.0.7)(bufferutil@4.0.9)(encoding@0.1.13)(ioredis@5.4.2)(react@19.0.0)(utf-8-validate@5.0.10)': - dependencies: - '@walletconnect/jsonrpc-http-connection': 1.0.8(encoding@0.1.13) - '@walletconnect/jsonrpc-provider': 1.0.14 - '@walletconnect/jsonrpc-types': 1.0.4 - '@walletconnect/jsonrpc-utils': 1.0.8 - '@walletconnect/keyvaluestorage': 1.1.1(ioredis@5.4.2) - '@walletconnect/modal': 2.7.0(@types/react@19.0.7)(react@19.0.0) - '@walletconnect/sign-client': 2.17.3(bufferutil@4.0.9)(ioredis@5.4.2)(utf-8-validate@5.0.10) - '@walletconnect/types': 2.17.3(ioredis@5.4.2) - '@walletconnect/universal-provider': 2.17.3(bufferutil@4.0.9)(encoding@0.1.13)(ioredis@5.4.2)(utf-8-validate@5.0.10) - '@walletconnect/utils': 2.17.3(ioredis@5.4.2) - events: 3.3.0 - transitivePeerDependencies: - - '@azure/app-configuration' - - '@azure/cosmos' - - '@azure/data-tables' - - '@azure/identity' - - '@azure/keyvault-secrets' - - '@azure/storage-blob' - - '@capacitor/preferences' - - '@deno/kv' - - '@netlify/blobs' - - '@planetscale/database' - - '@react-native-async-storage/async-storage' - - '@types/react' - - '@upstash/redis' - - '@vercel/blob' - - '@vercel/kv' - - aws4fetch - - bufferutil - - db0 - - encoding - - ioredis - - react - - uploadthing - - utf-8-validate - - '@walletconnect/ethereum-provider@2.17.4(@types/react@19.0.7)(bufferutil@4.0.9)(encoding@0.1.13)(react@19.0.0)(utf-8-validate@5.0.10)': - dependencies: - '@walletconnect/jsonrpc-http-connection': 1.0.8(encoding@0.1.13) - '@walletconnect/jsonrpc-provider': 1.0.14 - '@walletconnect/jsonrpc-types': 1.0.4 - '@walletconnect/jsonrpc-utils': 1.0.8 - '@walletconnect/keyvaluestorage': 1.1.1(ioredis@5.4.2) - '@walletconnect/modal': 2.7.0(@types/react@19.0.7)(react@19.0.0) - '@walletconnect/sign-client': 2.17.4(bufferutil@4.0.9)(utf-8-validate@5.0.10) - '@walletconnect/types': 2.17.4(ioredis@5.4.2) - '@walletconnect/universal-provider': 2.17.4(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) - '@walletconnect/utils': 2.17.4(ioredis@5.4.2) - events: 3.3.0 - transitivePeerDependencies: - - '@azure/app-configuration' - - '@azure/cosmos' - - '@azure/data-tables' - - '@azure/identity' - - '@azure/keyvault-secrets' - - '@azure/storage-blob' - - '@capacitor/preferences' - - '@deno/kv' - - '@netlify/blobs' - - '@planetscale/database' - - '@react-native-async-storage/async-storage' - - '@types/react' - - '@upstash/redis' - - '@vercel/blob' - - '@vercel/kv' - - aws4fetch - - bufferutil - - db0 - - encoding - - ioredis - - react - - uploadthing - - utf-8-validate - - '@walletconnect/events@1.0.1': - dependencies: - keyvaluestorage-interface: 1.0.0 - tslib: 1.14.1 - - '@walletconnect/heartbeat@1.2.2': - dependencies: - '@walletconnect/events': 1.0.1 - '@walletconnect/time': 1.0.2 - events: 3.3.0 - - '@walletconnect/jsonrpc-http-connection@1.0.8(encoding@0.1.13)': - dependencies: - '@walletconnect/jsonrpc-utils': 1.0.8 - '@walletconnect/safe-json': 1.0.2 - cross-fetch: 3.2.0(encoding@0.1.13) - events: 3.3.0 - transitivePeerDependencies: - - encoding - - '@walletconnect/jsonrpc-provider@1.0.14': - dependencies: - '@walletconnect/jsonrpc-utils': 1.0.8 - '@walletconnect/safe-json': 1.0.2 - events: 3.3.0 - - '@walletconnect/jsonrpc-types@1.0.4': - dependencies: - events: 3.3.0 - keyvaluestorage-interface: 1.0.0 - - '@walletconnect/jsonrpc-utils@1.0.8': - dependencies: - '@walletconnect/environment': 1.0.1 - '@walletconnect/jsonrpc-types': 1.0.4 - tslib: 1.14.1 - - '@walletconnect/jsonrpc-ws-connection@1.0.16(bufferutil@4.0.9)(utf-8-validate@5.0.10)': - dependencies: - '@walletconnect/jsonrpc-utils': 1.0.8 - '@walletconnect/safe-json': 1.0.2 - events: 3.3.0 - ws: 7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10) - transitivePeerDependencies: - - bufferutil - - utf-8-validate - - '@walletconnect/jsonrpc-ws-connection@1.0.16(bufferutil@4.0.9)(utf-8-validate@6.0.5)': - dependencies: - '@walletconnect/jsonrpc-utils': 1.0.8 - '@walletconnect/safe-json': 1.0.2 - events: 3.3.0 - ws: 7.5.10(bufferutil@4.0.9)(utf-8-validate@6.0.5) - transitivePeerDependencies: - - bufferutil - - utf-8-validate - - '@walletconnect/keyvaluestorage@1.1.1(ioredis@5.4.2)': - dependencies: - '@walletconnect/safe-json': 1.0.2 - idb-keyval: 6.2.1 - unstorage: 1.14.4(idb-keyval@6.2.1)(ioredis@5.4.2) - transitivePeerDependencies: - - '@azure/app-configuration' - - '@azure/cosmos' - - '@azure/data-tables' - - '@azure/identity' - - '@azure/keyvault-secrets' - - '@azure/storage-blob' - - '@capacitor/preferences' - - '@deno/kv' - - '@netlify/blobs' - - '@planetscale/database' - - '@upstash/redis' - - '@vercel/blob' - - '@vercel/kv' - - aws4fetch - - db0 - - ioredis - - uploadthing - - '@walletconnect/logger@2.1.2': - dependencies: - '@walletconnect/safe-json': 1.0.2 - pino: 7.11.0 - - '@walletconnect/modal-core@2.7.0(@types/react@19.0.7)(react@19.0.0)': - dependencies: - valtio: 1.11.2(@types/react@19.0.7)(react@19.0.0) - transitivePeerDependencies: - - '@types/react' - - react - - '@walletconnect/modal-ui@2.7.0(@types/react@19.0.7)(react@19.0.0)': - dependencies: - '@walletconnect/modal-core': 2.7.0(@types/react@19.0.7)(react@19.0.0) - lit: 2.8.0 - motion: 10.16.2 - qrcode: 1.5.3 - transitivePeerDependencies: - - '@types/react' - - react - - '@walletconnect/modal@2.7.0(@types/react@19.0.7)(react@19.0.0)': - dependencies: - '@walletconnect/modal-core': 2.7.0(@types/react@19.0.7)(react@19.0.0) - '@walletconnect/modal-ui': 2.7.0(@types/react@19.0.7)(react@19.0.0) - transitivePeerDependencies: - - '@types/react' - - react - - '@walletconnect/relay-api@1.0.11': - dependencies: - '@walletconnect/jsonrpc-types': 1.0.4 - - '@walletconnect/relay-auth@1.0.4': - dependencies: - '@stablelib/ed25519': 1.0.3 - '@stablelib/random': 1.0.2 - '@walletconnect/safe-json': 1.0.2 - '@walletconnect/time': 1.0.2 - tslib: 1.14.1 - uint8arrays: 3.1.0 - - '@walletconnect/safe-json@1.0.2': - dependencies: - tslib: 1.14.1 - - '@walletconnect/sign-client@2.17.3(bufferutil@4.0.9)(ioredis@5.4.2)(utf-8-validate@5.0.10)': - dependencies: - '@walletconnect/core': 2.17.3(bufferutil@4.0.9)(ioredis@5.4.2)(utf-8-validate@5.0.10) - '@walletconnect/events': 1.0.1 - '@walletconnect/heartbeat': 1.2.2 - '@walletconnect/jsonrpc-utils': 1.0.8 - '@walletconnect/logger': 2.1.2 - '@walletconnect/time': 1.0.2 - '@walletconnect/types': 2.17.3(ioredis@5.4.2) - '@walletconnect/utils': 2.17.3(ioredis@5.4.2) - events: 3.3.0 - transitivePeerDependencies: - - '@azure/app-configuration' - - '@azure/cosmos' - - '@azure/data-tables' - - '@azure/identity' - - '@azure/keyvault-secrets' - - '@azure/storage-blob' - - '@capacitor/preferences' - - '@deno/kv' - - '@netlify/blobs' - - '@planetscale/database' - - '@react-native-async-storage/async-storage' - - '@upstash/redis' - - '@vercel/blob' - - '@vercel/kv' - - aws4fetch - - bufferutil - - db0 - - ioredis - - uploadthing - - utf-8-validate - - '@walletconnect/sign-client@2.17.4(bufferutil@4.0.9)(ioredis@5.4.2)(utf-8-validate@6.0.5)': + '@walletconnect/core@2.17.4(bufferutil@4.0.9)(ioredis@5.4.2)(utf-8-validate@5.0.10)': dependencies: - '@walletconnect/core': 2.17.4(bufferutil@4.0.9)(ioredis@5.4.2)(utf-8-validate@6.0.5) - '@walletconnect/events': 1.0.1 '@walletconnect/heartbeat': 1.2.2 + '@walletconnect/jsonrpc-provider': 1.0.14 + '@walletconnect/jsonrpc-types': 1.0.4 '@walletconnect/jsonrpc-utils': 1.0.8 + '@walletconnect/jsonrpc-ws-connection': 1.0.16(bufferutil@4.0.9)(utf-8-validate@5.0.10) + '@walletconnect/keyvaluestorage': 1.1.1(ioredis@5.4.2) '@walletconnect/logger': 2.1.2 + '@walletconnect/relay-api': 1.0.11 + '@walletconnect/relay-auth': 1.0.4 + '@walletconnect/safe-json': 1.0.2 '@walletconnect/time': 1.0.2 '@walletconnect/types': 2.17.4(ioredis@5.4.2) '@walletconnect/utils': 2.17.4(ioredis@5.4.2) + '@walletconnect/window-getters': 1.0.1 events: 3.3.0 + lodash.isequal: 4.5.0 + uint8arrays: 3.1.0 transitivePeerDependencies: - '@azure/app-configuration' - '@azure/cosmos' @@ -37118,9 +39142,240 @@ snapshots: - uploadthing - utf-8-validate - '@walletconnect/sign-client@2.17.4(bufferutil@4.0.9)(utf-8-validate@5.0.10)': + '@walletconnect/environment@1.0.1': + dependencies: + tslib: 1.14.1 + + '@walletconnect/ethereum-provider@2.17.3(@types/react@19.0.7)(bufferutil@4.0.9)(encoding@0.1.13)(ioredis@5.4.2)(react@19.0.0)(utf-8-validate@5.0.10)': + dependencies: + '@walletconnect/jsonrpc-http-connection': 1.0.8(encoding@0.1.13) + '@walletconnect/jsonrpc-provider': 1.0.14 + '@walletconnect/jsonrpc-types': 1.0.4 + '@walletconnect/jsonrpc-utils': 1.0.8 + '@walletconnect/keyvaluestorage': 1.1.1(ioredis@5.4.2) + '@walletconnect/modal': 2.7.0(@types/react@19.0.7)(react@19.0.0) + '@walletconnect/sign-client': 2.17.3(bufferutil@4.0.9)(ioredis@5.4.2)(utf-8-validate@5.0.10) + '@walletconnect/types': 2.17.3(ioredis@5.4.2) + '@walletconnect/universal-provider': 2.17.3(bufferutil@4.0.9)(encoding@0.1.13)(ioredis@5.4.2)(utf-8-validate@5.0.10) + '@walletconnect/utils': 2.17.3(ioredis@5.4.2) + events: 3.3.0 + transitivePeerDependencies: + - '@azure/app-configuration' + - '@azure/cosmos' + - '@azure/data-tables' + - '@azure/identity' + - '@azure/keyvault-secrets' + - '@azure/storage-blob' + - '@capacitor/preferences' + - '@deno/kv' + - '@netlify/blobs' + - '@planetscale/database' + - '@react-native-async-storage/async-storage' + - '@types/react' + - '@upstash/redis' + - '@vercel/blob' + - '@vercel/kv' + - aws4fetch + - bufferutil + - db0 + - encoding + - ioredis + - react + - uploadthing + - utf-8-validate + + '@walletconnect/ethereum-provider@2.17.4(@types/react@19.0.7)(bufferutil@4.0.9)(encoding@0.1.13)(ioredis@5.4.2)(react@19.0.0)(utf-8-validate@5.0.10)': + dependencies: + '@walletconnect/jsonrpc-http-connection': 1.0.8(encoding@0.1.13) + '@walletconnect/jsonrpc-provider': 1.0.14 + '@walletconnect/jsonrpc-types': 1.0.4 + '@walletconnect/jsonrpc-utils': 1.0.8 + '@walletconnect/keyvaluestorage': 1.1.1(ioredis@5.4.2) + '@walletconnect/modal': 2.7.0(@types/react@19.0.7)(react@19.0.0) + '@walletconnect/sign-client': 2.17.4(bufferutil@4.0.9)(ioredis@5.4.2)(utf-8-validate@5.0.10) + '@walletconnect/types': 2.17.4(ioredis@5.4.2) + '@walletconnect/universal-provider': 2.17.4(bufferutil@4.0.9)(encoding@0.1.13)(ioredis@5.4.2)(utf-8-validate@5.0.10) + '@walletconnect/utils': 2.17.4(ioredis@5.4.2) + events: 3.3.0 + transitivePeerDependencies: + - '@azure/app-configuration' + - '@azure/cosmos' + - '@azure/data-tables' + - '@azure/identity' + - '@azure/keyvault-secrets' + - '@azure/storage-blob' + - '@capacitor/preferences' + - '@deno/kv' + - '@netlify/blobs' + - '@planetscale/database' + - '@react-native-async-storage/async-storage' + - '@types/react' + - '@upstash/redis' + - '@vercel/blob' + - '@vercel/kv' + - aws4fetch + - bufferutil + - db0 + - encoding + - ioredis + - react + - uploadthing + - utf-8-validate + + '@walletconnect/events@1.0.1': + dependencies: + keyvaluestorage-interface: 1.0.0 + tslib: 1.14.1 + + '@walletconnect/heartbeat@1.2.2': dependencies: - '@walletconnect/core': 2.17.4(bufferutil@4.0.9)(utf-8-validate@5.0.10) + '@walletconnect/events': 1.0.1 + '@walletconnect/time': 1.0.2 + events: 3.3.0 + + '@walletconnect/jsonrpc-http-connection@1.0.8(encoding@0.1.13)': + dependencies: + '@walletconnect/jsonrpc-utils': 1.0.8 + '@walletconnect/safe-json': 1.0.2 + cross-fetch: 3.2.0(encoding@0.1.13) + events: 3.3.0 + transitivePeerDependencies: + - encoding + + '@walletconnect/jsonrpc-provider@1.0.14': + dependencies: + '@walletconnect/jsonrpc-utils': 1.0.8 + '@walletconnect/safe-json': 1.0.2 + events: 3.3.0 + + '@walletconnect/jsonrpc-types@1.0.4': + dependencies: + events: 3.3.0 + keyvaluestorage-interface: 1.0.0 + + '@walletconnect/jsonrpc-utils@1.0.8': + dependencies: + '@walletconnect/environment': 1.0.1 + '@walletconnect/jsonrpc-types': 1.0.4 + tslib: 1.14.1 + + '@walletconnect/jsonrpc-ws-connection@1.0.16(bufferutil@4.0.9)(utf-8-validate@5.0.10)': + dependencies: + '@walletconnect/jsonrpc-utils': 1.0.8 + '@walletconnect/safe-json': 1.0.2 + events: 3.3.0 + ws: 7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10) + transitivePeerDependencies: + - bufferutil + - utf-8-validate + + '@walletconnect/keyvaluestorage@1.1.1(ioredis@5.4.2)': + dependencies: + '@walletconnect/safe-json': 1.0.2 + idb-keyval: 6.2.1 + unstorage: 1.14.4(idb-keyval@6.2.1)(ioredis@5.4.2) + transitivePeerDependencies: + - '@azure/app-configuration' + - '@azure/cosmos' + - '@azure/data-tables' + - '@azure/identity' + - '@azure/keyvault-secrets' + - '@azure/storage-blob' + - '@capacitor/preferences' + - '@deno/kv' + - '@netlify/blobs' + - '@planetscale/database' + - '@upstash/redis' + - '@vercel/blob' + - '@vercel/kv' + - aws4fetch + - db0 + - ioredis + - uploadthing + + '@walletconnect/logger@2.1.2': + dependencies: + '@walletconnect/safe-json': 1.0.2 + pino: 7.11.0 + + '@walletconnect/modal-core@2.7.0(@types/react@19.0.7)(react@19.0.0)': + dependencies: + valtio: 1.11.2(@types/react@19.0.7)(react@19.0.0) + transitivePeerDependencies: + - '@types/react' + - react + + '@walletconnect/modal-ui@2.7.0(@types/react@19.0.7)(react@19.0.0)': + dependencies: + '@walletconnect/modal-core': 2.7.0(@types/react@19.0.7)(react@19.0.0) + lit: 2.8.0 + motion: 10.16.2 + qrcode: 1.5.3 + transitivePeerDependencies: + - '@types/react' + - react + + '@walletconnect/modal@2.7.0(@types/react@19.0.7)(react@19.0.0)': + dependencies: + '@walletconnect/modal-core': 2.7.0(@types/react@19.0.7)(react@19.0.0) + '@walletconnect/modal-ui': 2.7.0(@types/react@19.0.7)(react@19.0.0) + transitivePeerDependencies: + - '@types/react' + - react + + '@walletconnect/relay-api@1.0.11': + dependencies: + '@walletconnect/jsonrpc-types': 1.0.4 + + '@walletconnect/relay-auth@1.0.4': + dependencies: + '@stablelib/ed25519': 1.0.3 + '@stablelib/random': 1.0.2 + '@walletconnect/safe-json': 1.0.2 + '@walletconnect/time': 1.0.2 + tslib: 1.14.1 + uint8arrays: 3.1.0 + + '@walletconnect/safe-json@1.0.2': + dependencies: + tslib: 1.14.1 + + '@walletconnect/sign-client@2.17.3(bufferutil@4.0.9)(ioredis@5.4.2)(utf-8-validate@5.0.10)': + dependencies: + '@walletconnect/core': 2.17.3(bufferutil@4.0.9)(ioredis@5.4.2)(utf-8-validate@5.0.10) + '@walletconnect/events': 1.0.1 + '@walletconnect/heartbeat': 1.2.2 + '@walletconnect/jsonrpc-utils': 1.0.8 + '@walletconnect/logger': 2.1.2 + '@walletconnect/time': 1.0.2 + '@walletconnect/types': 2.17.3(ioredis@5.4.2) + '@walletconnect/utils': 2.17.3(ioredis@5.4.2) + events: 3.3.0 + transitivePeerDependencies: + - '@azure/app-configuration' + - '@azure/cosmos' + - '@azure/data-tables' + - '@azure/identity' + - '@azure/keyvault-secrets' + - '@azure/storage-blob' + - '@capacitor/preferences' + - '@deno/kv' + - '@netlify/blobs' + - '@planetscale/database' + - '@react-native-async-storage/async-storage' + - '@upstash/redis' + - '@vercel/blob' + - '@vercel/kv' + - aws4fetch + - bufferutil + - db0 + - ioredis + - uploadthing + - utf-8-validate + + '@walletconnect/sign-client@2.17.4(bufferutil@4.0.9)(ioredis@5.4.2)(utf-8-validate@5.0.10)': + dependencies: + '@walletconnect/core': 2.17.4(bufferutil@4.0.9)(ioredis@5.4.2)(utf-8-validate@5.0.10) '@walletconnect/events': 1.0.1 '@walletconnect/heartbeat': 1.2.2 '@walletconnect/jsonrpc-utils': 1.0.8 @@ -37248,7 +39503,7 @@ snapshots: - uploadthing - utf-8-validate - '@walletconnect/universal-provider@2.17.4(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)': + '@walletconnect/universal-provider@2.17.4(bufferutil@4.0.9)(encoding@0.1.13)(ioredis@5.4.2)(utf-8-validate@5.0.10)': dependencies: '@walletconnect/events': 1.0.1 '@walletconnect/jsonrpc-http-connection': 1.0.8(encoding@0.1.13) @@ -37257,7 +39512,7 @@ snapshots: '@walletconnect/jsonrpc-utils': 1.0.8 '@walletconnect/keyvaluestorage': 1.1.1(ioredis@5.4.2) '@walletconnect/logger': 2.1.2 - '@walletconnect/sign-client': 2.17.4(bufferutil@4.0.9)(utf-8-validate@5.0.10) + '@walletconnect/sign-client': 2.17.4(bufferutil@4.0.9)(ioredis@5.4.2)(utf-8-validate@5.0.10) '@walletconnect/types': 2.17.4(ioredis@5.4.2) '@walletconnect/utils': 2.17.4(ioredis@5.4.2) events: 3.3.0 @@ -37487,7 +39742,7 @@ snapshots: '@zodios/core@10.9.6(axios@1.7.9)(zod@3.23.8)': dependencies: - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 zod: 3.23.8 JSONStream@1.3.5: @@ -37625,13 +39880,13 @@ snapshots: clean-stack: 2.2.0 indent-string: 4.0.0 - ai@3.4.33(openai@4.73.0(encoding@0.1.13)(zod@3.23.8))(react@19.0.0)(sswr@2.1.0(svelte@5.18.0))(svelte@5.18.0)(vue@3.5.13(typescript@5.6.3))(zod@3.23.8): + ai@3.4.33(openai@4.73.0(encoding@0.1.13)(zod@3.23.8))(react@19.0.0)(sswr@2.1.0(svelte@5.19.0))(svelte@5.19.0)(vue@3.5.13(typescript@5.6.3))(zod@3.23.8): dependencies: '@ai-sdk/provider': 0.0.26 '@ai-sdk/provider-utils': 1.0.22(zod@3.23.8) '@ai-sdk/react': 0.0.70(react@19.0.0)(zod@3.23.8) '@ai-sdk/solid': 0.0.54(zod@3.23.8) - '@ai-sdk/svelte': 0.0.57(svelte@5.18.0)(zod@3.23.8) + '@ai-sdk/svelte': 0.0.57(svelte@5.19.0)(zod@3.23.8) '@ai-sdk/ui-utils': 0.0.50(zod@3.23.8) '@ai-sdk/vue': 0.0.59(vue@3.5.13(typescript@5.6.3))(zod@3.23.8) '@opentelemetry/api': 1.9.0 @@ -37643,31 +39898,31 @@ snapshots: optionalDependencies: openai: 4.73.0(encoding@0.1.13)(zod@3.23.8) react: 19.0.0 - sswr: 2.1.0(svelte@5.18.0) - svelte: 5.18.0 + sswr: 2.1.0(svelte@5.19.0) + svelte: 5.19.0 zod: 3.23.8 transitivePeerDependencies: - solid-js - vue - ai@4.0.38(react@19.0.0)(zod@3.23.8): + ai@4.1.0(react@19.0.0)(zod@3.23.8): dependencies: '@ai-sdk/provider': 1.0.4 - '@ai-sdk/provider-utils': 2.0.7(zod@3.23.8) - '@ai-sdk/react': 1.0.11(react@19.0.0)(zod@3.23.8) - '@ai-sdk/ui-utils': 1.0.10(zod@3.23.8) + '@ai-sdk/provider-utils': 2.1.0(zod@3.23.8) + '@ai-sdk/react': 1.1.0(react@19.0.0)(zod@3.23.8) + '@ai-sdk/ui-utils': 1.1.0(zod@3.23.8) '@opentelemetry/api': 1.9.0 jsondiffpatch: 0.6.0 optionalDependencies: react: 19.0.0 zod: 3.23.8 - ai@4.0.38(react@19.0.0)(zod@3.24.1): + ai@4.1.0(react@19.0.0)(zod@3.24.1): dependencies: '@ai-sdk/provider': 1.0.4 - '@ai-sdk/provider-utils': 2.0.7(zod@3.24.1) - '@ai-sdk/react': 1.0.11(react@19.0.0)(zod@3.24.1) - '@ai-sdk/ui-utils': 1.0.10(zod@3.24.1) + '@ai-sdk/provider-utils': 2.1.0(zod@3.24.1) + '@ai-sdk/react': 1.1.0(react@19.0.0)(zod@3.24.1) + '@ai-sdk/ui-utils': 1.1.0(zod@3.24.1) '@opentelemetry/api': 1.9.0 jsondiffpatch: 0.6.0 optionalDependencies: @@ -37759,6 +40014,29 @@ snapshots: transitivePeerDependencies: - supports-color + anchor-bankrun@0.3.0(@coral-xyz/anchor@0.29.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(@solana/web3.js@1.92.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(solana-bankrun@0.3.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)): + dependencies: + '@coral-xyz/anchor': 0.29.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.92.3(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + solana-bankrun: 0.3.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + + anchor-client-gen@0.28.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10): + dependencies: + '@coral-xyz/anchor': 0.28.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@coral-xyz/borsh': 0.28.0(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + bn.js: 5.2.1 + camelcase: 7.0.1 + commander: 10.0.1 + js-sha256: 0.9.0 + prettier: 2.8.8 + snake-case: 3.0.4 + ts-morph: 18.0.0 + transitivePeerDependencies: + - bufferutil + - encoding + - utf-8-validate + ansi-align@3.0.1: dependencies: string-width: 4.2.3 @@ -37824,6 +40102,43 @@ snapshots: aproba@2.0.0: {} + aptos@1.8.5(debug@4.4.0): + dependencies: + '@noble/hashes': 1.1.3 + '@scure/bip39': 1.1.0 + axios: 0.27.2(debug@4.4.0) + form-data: 4.0.0 + tweetnacl: 1.0.3 + transitivePeerDependencies: + - debug + + arbundles@0.10.1(arweave@1.15.5)(bufferutil@4.0.9)(debug@4.4.0)(encoding@0.1.13)(utf-8-validate@5.0.10): + dependencies: + '@ethersproject/bytes': 5.7.0 + '@ethersproject/hash': 5.7.0 + '@ethersproject/providers': 5.7.2(bufferutil@4.0.9)(utf-8-validate@5.0.10) + '@ethersproject/signing-key': 5.7.0 + '@ethersproject/transactions': 5.7.0 + '@ethersproject/wallet': 5.7.0 + '@irys/arweave': 0.0.2(debug@4.4.0) + '@noble/ed25519': 1.7.3 + base64url: 3.0.1 + bs58: 4.0.1 + keccak: 3.0.4 + secp256k1: 5.0.1 + optionalDependencies: + '@randlabs/myalgo-connect': 1.4.2 + algosdk: 1.24.1(encoding@0.1.13) + arweave-stream-tx: 1.2.2(arweave@1.15.5) + multistream: 4.1.0 + tmp-promise: 3.0.3 + transitivePeerDependencies: + - arweave + - bufferutil + - debug + - encoding + - utf-8-validate + arbundles@0.11.2(arweave@1.15.5)(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10): dependencies: '@ethersproject/bytes': 5.7.0 @@ -38108,7 +40423,7 @@ snapshots: axios-mock-adapter@1.22.0(axios@1.7.9): dependencies: - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 fast-deep-equal: 3.1.3 is-buffer: 2.0.5 @@ -38119,22 +40434,29 @@ snapshots: axios-retry@4.5.0(axios@1.7.9): dependencies: - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 is-retry-allowed: 2.2.0 axios@0.21.4: dependencies: - follow-redirects: 1.15.9(debug@4.4.0) + follow-redirects: 1.15.9(debug@4.3.4) transitivePeerDependencies: - debug axios@0.24.0: dependencies: - follow-redirects: 1.15.9(debug@4.4.0) + follow-redirects: 1.15.9(debug@4.3.4) transitivePeerDependencies: - debug - axios@0.27.2: + axios@0.27.2(debug@4.3.4): + dependencies: + follow-redirects: 1.15.9(debug@4.3.4) + form-data: 4.0.1 + transitivePeerDependencies: + - debug + + axios@0.27.2(debug@4.4.0): dependencies: follow-redirects: 1.15.9(debug@4.4.0) form-data: 4.0.1 @@ -38143,7 +40465,7 @@ snapshots: axios@0.28.1: dependencies: - follow-redirects: 1.15.9(debug@4.4.0) + follow-redirects: 1.15.9(debug@4.3.4) form-data: 4.0.1 proxy-from-env: 1.1.0 transitivePeerDependencies: @@ -38151,7 +40473,7 @@ snapshots: axios@1.7.4: dependencies: - follow-redirects: 1.15.9(debug@4.4.0) + follow-redirects: 1.15.9(debug@4.3.4) form-data: 4.0.1 proxy-from-env: 1.1.0 transitivePeerDependencies: @@ -38159,7 +40481,7 @@ snapshots: axios@1.7.7: dependencies: - follow-redirects: 1.15.9(debug@4.4.0) + follow-redirects: 1.15.9(debug@4.3.4) form-data: 4.0.1 proxy-from-env: 1.1.0 transitivePeerDependencies: @@ -38167,7 +40489,15 @@ snapshots: axios@1.7.8: dependencies: - follow-redirects: 1.15.9(debug@4.4.0) + follow-redirects: 1.15.9(debug@4.3.4) + form-data: 4.0.1 + proxy-from-env: 1.1.0 + transitivePeerDependencies: + - debug + + axios@1.7.9: + dependencies: + follow-redirects: 1.15.9(debug@4.3.4) form-data: 4.0.1 proxy-from-env: 1.1.0 transitivePeerDependencies: @@ -38460,6 +40790,8 @@ snapshots: uint8array-tools: 0.0.9 varuint-bitcoin: 2.0.0 + bip32-path@0.4.2: {} + bip32@4.0.0: dependencies: '@noble/hashes': 1.7.0 @@ -38516,6 +40848,10 @@ snapshots: bluebird@3.7.2: {} + bn-sqrt@1.0.0: + dependencies: + bn.js: 5.2.1 + bn.js@4.11.6: {} bn.js@4.12.1: {} @@ -38982,7 +41318,7 @@ snapshots: capsolver-npm@2.0.2: dependencies: - axios: 0.27.2 + axios: 0.27.2(debug@4.3.4) dotenv: 16.4.7 transitivePeerDependencies: - debug @@ -39014,9 +41350,9 @@ snapshots: loupe: 3.1.2 pathval: 2.0.0 - chain-registry@1.69.94: + chain-registry@1.69.95: dependencies: - '@chain-registry/types': 0.50.50 + '@chain-registry/types': 0.50.51 chalk@1.1.3: dependencies: @@ -39073,6 +41409,8 @@ snapshots: check-error@2.1.1: {} + check-more-types@2.24.0: {} + cheerio-select@2.1.0: dependencies: boolbase: 1.0.0 @@ -39289,7 +41627,7 @@ snapshots: fs-extra: 11.2.0 lodash.isplainobject: 4.0.6 memory-stream: 1.0.0 - node-api-headers: 1.4.0 + node-api-headers: 1.5.0 npmlog: 6.0.2 rc: 1.2.8 semver: 7.6.3 @@ -39304,9 +41642,11 @@ snapshots: co@4.6.0: {} + code-block-writer@12.0.0: {} + coinbase-api@1.0.5(bufferutil@4.0.9)(utf-8-validate@5.0.10): dependencies: - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 isomorphic-ws: 4.0.1(ws@7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10)) jsonwebtoken: 9.0.2 nanoid: 3.3.8 @@ -39376,6 +41716,8 @@ snapshots: commander@10.0.1: {} + commander@11.1.0: {} + commander@12.1.0: {} commander@2.15.1: {} @@ -39423,7 +41765,7 @@ snapshots: transitivePeerDependencies: - supports-color - compromise@14.14.3: + compromise@14.14.4: dependencies: efrt: 2.7.0 grad-school: 0.0.5 @@ -39507,10 +41849,6 @@ snapshots: content-type@1.0.5: {} - contentstream@1.0.0: - dependencies: - readable-stream: 1.0.34 - conventional-changelog-angular@7.0.0: dependencies: compare-func: 2.0.0 @@ -39687,6 +42025,11 @@ snapshots: optionalDependencies: typescript: 5.7.3 + cosmjs-types@0.7.2: + dependencies: + long: 4.0.0 + protobufjs: 6.11.4 + cosmjs-types@0.8.0: dependencies: long: 4.0.0 @@ -39765,12 +42108,18 @@ snapshots: create-require@1.1.1: {} + cron-validator@1.3.1: {} + croner@4.1.97: {} cross-env@7.0.3: dependencies: cross-spawn: 7.0.6 + cross-fetch@3.0.6: + dependencies: + node-fetch: 2.6.1 + cross-fetch@3.1.5(encoding@0.1.13): dependencies: node-fetch: 2.6.7(encoding@0.1.13) @@ -40032,10 +42381,6 @@ snapshots: culvert@0.1.2: {} - cwise-compiler@1.1.3: - dependencies: - uniq: 1.0.1 - cyrb53@1.0.0: {} cytoscape-cose-bilkent@4.1.0(cytoscape@3.31.0): @@ -40237,8 +42582,6 @@ snapshots: dependencies: assert-plus: 1.0.0 - data-uri-to-buffer@0.0.3: {} - data-uri-to-buffer@4.0.1: {} data-uri-to-buffer@6.0.2: {} @@ -40274,6 +42617,8 @@ snapshots: dateformat@3.0.3: {} + dateformat@4.6.3: {} + dayjs@1.11.13: {} dayjs@1.8.36: {} @@ -40329,6 +42674,8 @@ snapshots: decimal.js-light@2.5.1: {} + decimal.js@10.3.1: {} + decimal.js@10.4.3: {} decode-named-character-reference@1.0.2: @@ -40521,7 +42868,7 @@ snapshots: discord-api-types@0.37.100: {} - discord-api-types@0.37.115: {} + discord-api-types@0.37.116: {} discord-api-types@0.37.83: {} @@ -40693,8 +43040,8 @@ snapshots: echogarden@2.0.7(bufferutil@4.0.9)(canvas@2.11.2(encoding@0.1.13))(encoding@0.1.13)(utf-8-validate@5.0.10)(zod@3.24.1): dependencies: - '@aws-sdk/client-polly': 3.726.1 - '@aws-sdk/client-transcribe-streaming': 3.726.1 + '@aws-sdk/client-polly': 3.731.0 + '@aws-sdk/client-transcribe-streaming': 3.731.0 '@echogarden/audio-io': 0.2.3 '@echogarden/espeak-ng-emscripten': 0.3.3 '@echogarden/fasttext-wasm': 0.1.0 @@ -40712,7 +43059,7 @@ snapshots: chalk: 5.4.1 cldr-segmentation: 2.2.1 command-exists: 1.2.9 - compromise: 14.14.3 + compromise: 14.14.4 fs-extra: 11.2.0 gaxios: 6.7.1(encoding@0.1.13) graceful-fs: 4.2.11 @@ -41746,6 +44093,16 @@ snapshots: event-lite@0.1.3: {} + event-stream@3.3.4: + dependencies: + duplexer: 0.1.2 + from: 0.1.7 + map-stream: 0.1.0 + pause-stream: 0.0.11 + split: 0.3.3 + stream-combiner: 0.0.4 + through: 2.3.8 + event-target-shim@5.0.1: {} eventemitter2@0.4.14: {} @@ -41917,6 +44274,8 @@ snapshots: fast-content-type-parse@2.0.1: {} + fast-copy@3.0.2: {} + fast-deep-equal@3.1.3: {} fast-fifo@1.3.2: {} @@ -41980,7 +44339,7 @@ snapshots: dependencies: pend: 1.2.0 - fdir@6.4.2(picomatch@4.0.2): + fdir@6.4.3(picomatch@4.0.2): optionalDependencies: picomatch: 4.0.2 @@ -42102,6 +44461,38 @@ snapshots: semver-regex: 4.0.5 super-regex: 1.0.0 + find@0.3.0: + dependencies: + traverse-chain: 0.1.0 + + flash-sdk@2.25.8(@swc/core@1.10.7(@swc/helpers@0.5.15))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10): + dependencies: + '@coral-xyz/anchor': 0.27.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@pythnetwork/client': 2.22.0(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@pythnetwork/price-service-client': 1.9.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) + '@solana/spl-token': 0.3.11(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@types/node': 20.17.9 + bignumber.js: 9.1.2 + bs58: 5.0.0 + dotenv: 16.4.7 + fs: 0.0.1-security + js-sha256: 0.9.0 + jsbi: 4.3.0 + node-fetch: 3.3.2 + rimraf: 5.0.10 + ts-node: 10.9.2(@swc/core@1.10.7(@swc/helpers@0.5.15))(@types/node@20.17.9)(typescript@5.6.3) + tweetnacl: 1.0.3 + transitivePeerDependencies: + - '@swc/core' + - '@swc/wasm' + - bufferutil + - debug + - encoding + - fastestsmallesttextencoderdecoder + - typescript + - utf-8-validate + flash-sdk@2.25.8(@swc/core@1.10.7(@swc/helpers@0.5.15))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10): dependencies: '@coral-xyz/anchor': 0.27.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) @@ -42152,6 +44543,10 @@ snapshots: async: 0.2.10 which: 1.3.1 + follow-redirects@1.15.9(debug@4.3.4): + optionalDependencies: + debug: 4.3.4 + follow-redirects@1.15.9(debug@4.3.7): optionalDependencies: debug: 4.3.7 @@ -42160,12 +44555,28 @@ snapshots: optionalDependencies: debug: 4.4.0(supports-color@5.5.0) + fomo-sdk-solana@1.3.2(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10): + dependencies: + '@coral-xyz/anchor': 0.30.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@raydium-io/raydium-sdk-v2': 0.1.82-alpha(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + bs58: 6.0.0 + coral-xyz3: '@coral-xyz/anchor@0.29.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)' + transitivePeerDependencies: + - bufferutil + - debug + - encoding + - fastestsmallesttextencoderdecoder + - typescript + - utf-8-validate + fomo-sdk-solana@1.3.2(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10): dependencies: '@coral-xyz/anchor': 0.30.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) '@raydium-io/raydium-sdk-v2': 0.1.82-alpha(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) - '@solana/spl-token': 0.4.9(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) - '@solana/web3.js': 1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/spl-token': 0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) bs58: 6.0.0 coral-xyz3: '@coral-xyz/anchor@0.29.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)' transitivePeerDependencies: @@ -42238,6 +44649,12 @@ snapshots: combined-stream: 1.0.8 mime-types: 2.1.35 + form-data@4.0.0: + dependencies: + asynckit: 0.4.0 + combined-stream: 1.0.8 + mime-types: 2.1.35 + form-data@4.0.1: dependencies: asynckit: 0.4.0 @@ -42263,6 +44680,8 @@ snapshots: fresh@0.5.2: {} + from@0.1.7: {} + front-matter@4.0.2: dependencies: js-yaml: 3.14.1 @@ -42385,6 +44804,8 @@ snapshots: strip-ansi: 6.0.1 wide-align: 1.1.5 + gaussian@1.3.0: {} + gaxios@6.7.1(encoding@0.1.13): dependencies: extend: 3.0.2 @@ -42457,20 +44878,6 @@ snapshots: get-package-type@0.1.0: {} - get-pixels-jpeg-js-upgrade@3.3.0-jpeg-js-upgrade.0: - dependencies: - data-uri-to-buffer: 0.0.3 - jpeg-js: 0.3.7 - mime-types: 2.1.35 - ndarray: 1.0.19 - ndarray-pack: 1.2.1 - node-bitmap: 0.0.1 - omggif: 1.0.10 - parse-data-uri: 0.2.0 - pngjs: 2.3.1 - request: 2.88.2 - through: 2.3.8 - get-pkg-repo@4.2.1: dependencies: '@hutson/parse-repository-url': 3.0.2 @@ -42519,16 +44926,6 @@ snapshots: dependencies: assert-plus: 1.0.0 - gif-encoder@0.4.3: - dependencies: - readable-stream: 1.1.14 - - gif-frames@0.4.1: - dependencies: - get-pixels-jpeg-js-upgrade: 3.3.0-jpeg-js-upgrade.0 - multi-integer-range: 3.0.0 - save-pixels-jpeg-js-upgrade: 2.3.4-jpeg-js-upgrade.0 - giget@1.2.3: dependencies: citty: 0.1.6 @@ -43074,6 +45471,8 @@ snapshots: headers-polyfill@3.3.0: {} + help-me@5.0.0: {} + hey-listen@1.0.8: {} hi-base32@0.5.1: {} @@ -43248,7 +45647,7 @@ snapshots: http-proxy@1.18.1: dependencies: eventemitter3: 4.0.7 - follow-redirects: 1.15.9(debug@4.4.0) + follow-redirects: 1.15.9(debug@4.3.4) requires-port: 1.0.0 transitivePeerDependencies: - debug @@ -43312,7 +45711,7 @@ snapshots: dependencies: '@msgpack/msgpack': 3.0.0-beta2 '@types/ws': 8.5.13 - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 ethers: 6.13.4(bufferutil@4.0.9)(utf-8-validate@6.0.5) typescript: 5.6.3 ws: 8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5) @@ -43468,7 +45867,7 @@ snapshots: json-bigint: 1.0.0 lodash: 4.17.21 luxon: 1.28.1 - reflect-metadata: 0.1.13 + reflect-metadata: 0.1.14 request: 2.88.2 request-promise: 4.2.6(request@2.88.2) rxjs: 6.6.7 @@ -43525,8 +45924,6 @@ snapshots: transitivePeerDependencies: - supports-color - iota-array@1.0.0: {} - ip-address@9.0.5: dependencies: jsbn: 1.1.0 @@ -43889,6 +46286,10 @@ snapshots: dependencies: ws: 8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) + isomorphic-ws@5.0.0(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)): + dependencies: + ws: 8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) + isomorphic-ws@5.0.0(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)): dependencies: ws: 8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5) @@ -44232,7 +46633,7 @@ snapshots: jest-diff@29.7.0: dependencies: - chalk: 4.1.2 + chalk: 4.1.0 diff-sequences: 29.6.3 jest-get-type: 29.6.3 pretty-format: 29.7.0 @@ -44495,6 +46896,21 @@ snapshots: jiti@2.4.2: {} + jito-ts@3.0.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10): + dependencies: + '@grpc/grpc-js': 1.12.5 + '@noble/ed25519': 1.7.3 + '@solana/web3.js': 1.77.4(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + agentkeepalive: 4.6.0 + dotenv: 16.4.7 + jayson: 4.1.3(bufferutil@4.0.9)(utf-8-validate@5.0.10) + node-fetch: 2.7.0(encoding@0.1.13) + superstruct: 1.0.4 + transitivePeerDependencies: + - bufferutil + - encoding + - utf-8-validate + joi@17.13.3: dependencies: '@hapi/hoek': 9.3.0 @@ -44507,8 +46923,6 @@ snapshots: joycon@3.1.1: {} - jpeg-js@0.3.7: {} - js-base64@3.7.7: {} js-git@0.7.8: @@ -44758,7 +47172,7 @@ snapshots: jwt-decode@4.0.0: {} - katex@0.16.20: + katex@0.16.21: dependencies: commander: 8.3.0 @@ -44820,15 +47234,15 @@ snapshots: inherits: 2.0.4 stream-splicer: 2.0.1 - langchain@0.3.11(@langchain/core@0.3.30(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)))(@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)))(encoding@0.1.13))(axios@1.7.9)(encoding@0.1.13)(handlebars@4.7.8)(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)): + langchain@0.3.11(@langchain/core@0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1)))(@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1)))(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)))(axios@1.7.9)(encoding@0.1.13)(handlebars@4.7.8)(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1))(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)): dependencies: - '@langchain/core': 0.3.30(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)) - '@langchain/openai': 0.3.17(@langchain/core@0.3.30(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)))(encoding@0.1.13) - '@langchain/textsplitters': 0.1.0(@langchain/core@0.3.30(openai@4.78.1(encoding@0.1.13)(zod@3.24.1))) + '@langchain/core': 0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1)) + '@langchain/openai': 0.3.17(@langchain/core@0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1)))(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@langchain/textsplitters': 0.1.0(@langchain/core@0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1))) js-tiktoken: 1.0.15 js-yaml: 4.1.0 jsonpointer: 5.0.1 - langsmith: 0.2.15(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)) + langsmith: 0.2.15(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1)) openapi-types: 12.1.3 p-retry: 4.6.2 uuid: 10.0.0 @@ -44836,17 +47250,18 @@ snapshots: zod: 3.23.8 zod-to-json-schema: 3.24.1(zod@3.23.8) optionalDependencies: - '@langchain/groq': 0.1.3(@langchain/core@0.3.30(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)))(encoding@0.1.13) - axios: 1.7.9(debug@4.4.0) + '@langchain/groq': 0.1.3(@langchain/core@0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1)))(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + axios: 1.7.9 handlebars: 4.7.8 transitivePeerDependencies: - encoding - openai + - ws - langchain@0.3.6(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13))(axios@1.7.9)(encoding@0.1.13)(handlebars@4.7.8)(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)): + langchain@0.3.6(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13)(ws@7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10)))(axios@1.7.9)(encoding@0.1.13)(handlebars@4.7.8)(openai@4.73.0(encoding@0.1.13)(zod@3.23.8))(ws@7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10)): dependencies: '@langchain/core': 0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)) - '@langchain/openai': 0.3.17(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13) + '@langchain/openai': 0.3.17(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13)(ws@7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10)) '@langchain/textsplitters': 0.1.0(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8))) js-tiktoken: 1.0.15 js-yaml: 4.1.0 @@ -44859,12 +47274,61 @@ snapshots: zod: 3.23.8 zod-to-json-schema: 3.24.1(zod@3.23.8) optionalDependencies: - '@langchain/groq': 0.1.3(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13) - axios: 1.7.9(debug@4.4.0) + '@langchain/groq': 0.1.3(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13)(ws@7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + axios: 1.7.9 handlebars: 4.7.8 transitivePeerDependencies: - encoding - openai + - ws + + langchain@0.3.6(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)))(axios@1.7.9)(encoding@0.1.13)(handlebars@4.7.8)(openai@4.73.0(encoding@0.1.13)(zod@3.23.8))(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)): + dependencies: + '@langchain/core': 0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)) + '@langchain/openai': 0.3.17(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@langchain/textsplitters': 0.1.0(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8))) + js-tiktoken: 1.0.15 + js-yaml: 4.1.0 + jsonpointer: 5.0.1 + langsmith: 0.2.15(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)) + openapi-types: 12.1.3 + p-retry: 4.6.2 + uuid: 10.0.0 + yaml: 2.7.0 + zod: 3.23.8 + zod-to-json-schema: 3.24.1(zod@3.23.8) + optionalDependencies: + '@langchain/groq': 0.1.3(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + axios: 1.7.9 + handlebars: 4.7.8 + transitivePeerDependencies: + - encoding + - openai + - ws + + langchain@0.3.6(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)))(axios@1.7.9)(encoding@0.1.13)(handlebars@4.7.8)(openai@4.73.0(encoding@0.1.13)(zod@3.23.8))(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)): + dependencies: + '@langchain/core': 0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)) + '@langchain/openai': 0.3.17(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) + '@langchain/textsplitters': 0.1.0(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8))) + js-tiktoken: 1.0.15 + js-yaml: 4.1.0 + jsonpointer: 5.0.1 + langsmith: 0.2.15(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)) + openapi-types: 12.1.3 + p-retry: 4.6.2 + uuid: 10.0.0 + yaml: 2.7.0 + zod: 3.23.8 + zod-to-json-schema: 3.24.1(zod@3.23.8) + optionalDependencies: + '@langchain/groq': 0.1.3(@langchain/core@0.3.30(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5)) + axios: 1.7.9 + handlebars: 4.7.8 + transitivePeerDependencies: + - encoding + - openai + - ws langdetect@0.2.1: dependencies: @@ -44889,7 +47353,7 @@ snapshots: optionalDependencies: openai: 4.73.0(encoding@0.1.13)(zod@3.23.8) - langsmith@0.2.15(openai@4.78.1(encoding@0.1.13)(zod@3.23.8)): + langsmith@0.2.15(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1)): dependencies: '@types/uuid': 10.0.0 commander: 10.0.1 @@ -44898,9 +47362,9 @@ snapshots: semver: 7.6.3 uuid: 10.0.0 optionalDependencies: - openai: 4.78.1(encoding@0.1.13)(zod@3.23.8) + openai: 4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1) - langsmith@0.2.15(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)): + langsmith@0.2.15(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5))(zod@3.23.8)): dependencies: '@types/uuid': 10.0.0 commander: 10.0.1 @@ -44909,7 +47373,7 @@ snapshots: semver: 7.6.3 uuid: 10.0.0 optionalDependencies: - openai: 4.78.1(encoding@0.1.13)(zod@3.24.1) + openai: 4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5))(zod@3.23.8) language-subtag-registry@0.3.23: {} @@ -44930,6 +47394,8 @@ snapshots: layout-base@2.0.1: {} + lazy-ass@1.6.0: {} + lazy-cache@0.2.7: {} lazy-cache@1.0.4: {} @@ -45204,6 +47670,8 @@ snapshots: lodash.camelcase@4.3.0: {} + lodash.clonedeep@4.5.0: {} + lodash.debounce@4.0.8: {} lodash.deburr@4.1.0: {} @@ -45399,6 +47867,8 @@ snapshots: map-obj@4.3.0: {} + map-stream@0.1.0: {} + mark.js@8.11.1: {} markdown-extensions@2.0.0: {} @@ -45440,7 +47910,7 @@ snapshots: md5.js@1.3.5: dependencies: - hash-base: 3.0.5 + hash-base: 3.1.0 inherits: 2.0.4 safe-buffer: 5.2.1 @@ -45729,7 +48199,7 @@ snapshots: dagre-d3-es: 7.0.11 dayjs: 1.11.13 dompurify: 3.2.2 - katex: 0.16.20 + katex: 0.16.21 khroma: 2.1.0 lodash-es: 4.17.21 marked: 13.0.3 @@ -46127,6 +48597,10 @@ snapshots: dependencies: brace-expansion: 2.0.1 + minimatch@7.4.6: + dependencies: + brace-expansion: 2.0.1 + minimatch@8.0.4: dependencies: brace-expansion: 2.0.1 @@ -46214,6 +48688,8 @@ snapshots: mkdirp@1.0.4: {} + mkdirp@2.1.6: {} + mkdirp@3.0.1: {} mkdist@1.6.0(typescript@5.7.3): @@ -46237,7 +48713,7 @@ snapshots: mlly@1.7.4: dependencies: acorn: 8.14.0 - pathe: 2.0.1 + pathe: 2.0.2 pkg-types: 1.3.1 ufo: 1.5.4 @@ -46303,8 +48779,6 @@ snapshots: type-is: 1.6.18 xtend: 4.0.2 - multi-integer-range@3.0.0: {} - multiaddr@7.5.0: dependencies: buffer: 5.7.1 @@ -46359,7 +48833,7 @@ snapshots: array-differ: 3.0.0 array-union: 2.1.0 arrify: 2.0.1 - minimatch: 3.1.2 + minimatch: 3.0.5 multistream@4.1.0: dependencies: @@ -46386,6 +48860,8 @@ snapshots: nanoassert@1.1.0: {} + nanoid@3.3.4: {} + nanoid@3.3.6: {} nanoid@3.3.8: {} @@ -46396,20 +48872,6 @@ snapshots: natural-compare@1.4.0: {} - ndarray-ops@1.2.2: - dependencies: - cwise-compiler: 1.1.3 - - ndarray-pack@1.2.1: - dependencies: - cwise-compiler: 1.1.3 - ndarray: 1.0.19 - - ndarray@1.0.19: - dependencies: - iota-array: 1.0.0 - is-buffer: 1.1.6 - near-abi@0.1.1: dependencies: '@types/json-schema': 7.0.15 @@ -46514,6 +48976,8 @@ snapshots: node-addon-api@2.0.2: {} + node-addon-api@3.2.1: {} + node-addon-api@4.3.0: {} node-addon-api@5.1.0: {} @@ -46524,9 +48988,7 @@ snapshots: node-addon-api@8.3.0: {} - node-api-headers@1.4.0: {} - - node-bitmap@0.0.1: {} + node-api-headers@1.5.0: {} node-cache@5.1.2: dependencies: @@ -46543,6 +49005,8 @@ snapshots: node-fetch-native@1.6.4: {} + node-fetch@2.6.1: {} + node-fetch@2.6.7(encoding@0.1.13): dependencies: whatwg-url: 5.0.0 @@ -46580,6 +49044,12 @@ snapshots: transitivePeerDependencies: - supports-color + node-hid@2.1.2: + dependencies: + bindings: 1.5.0 + node-addon-api: 3.2.1 + prebuild-install: 7.1.2 + node-int64@0.4.0: {} node-jose@2.2.0: @@ -46805,8 +49275,8 @@ snapshots: '@yarnpkg/lockfile': 1.1.0 '@yarnpkg/parsers': 3.0.0-rc.46 '@zkochan/js-yaml': 0.0.7 - axios: 1.7.9(debug@4.4.0) - chalk: 4.1.2 + axios: 1.7.9 + chalk: 4.1.0 cli-cursor: 3.1.0 cli-spinners: 2.6.1 cliui: 8.0.1 @@ -46951,10 +49421,10 @@ snapshots: optionalDependencies: zod: 3.24.1 - omggif@1.0.10: {} - on-exit-leak-free@0.2.0: {} + on-exit-leak-free@2.1.2: {} + on-finished@2.4.1: dependencies: ee-first: 1.1.1 @@ -46977,7 +49447,7 @@ snapshots: dependencies: mimic-function: 5.0.1 - oniguruma-to-es@2.0.0: + oniguruma-to-es@2.1.0: dependencies: emoji-regex-xs: 1.0.0 regex: 5.1.1 @@ -47007,7 +49477,7 @@ snapshots: open-jsonrpc-provider@0.2.1(bufferutil@4.0.9)(utf-8-validate@6.0.5): dependencies: - axios: 0.27.2 + axios: 0.27.2(debug@4.3.4) reconnecting-websocket: 4.4.0 websocket: 1.0.35 ws: 8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5) @@ -47051,7 +49521,22 @@ snapshots: transitivePeerDependencies: - encoding - openai@4.78.1(encoding@0.1.13)(zod@3.23.8): + openai@4.79.1(encoding@0.1.13)(ws@7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.23.8): + dependencies: + '@types/node': 18.19.71 + '@types/node-fetch': 2.6.12 + abort-controller: 3.0.0 + agentkeepalive: 4.6.0 + form-data-encoder: 1.7.2 + formdata-node: 4.4.1 + node-fetch: 2.7.0(encoding@0.1.13) + optionalDependencies: + ws: 7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10) + zod: 3.23.8 + transitivePeerDependencies: + - encoding + + openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.23.8): dependencies: '@types/node': 18.19.71 '@types/node-fetch': 2.6.12 @@ -47061,11 +49546,12 @@ snapshots: formdata-node: 4.4.1 node-fetch: 2.7.0(encoding@0.1.13) optionalDependencies: + ws: 8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) zod: 3.23.8 transitivePeerDependencies: - encoding - openai@4.78.1(encoding@0.1.13)(zod@3.24.1): + openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1): dependencies: '@types/node': 18.19.71 '@types/node-fetch': 2.6.12 @@ -47075,10 +49561,26 @@ snapshots: formdata-node: 4.4.1 node-fetch: 2.7.0(encoding@0.1.13) optionalDependencies: + ws: 8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) zod: 3.24.1 transitivePeerDependencies: - encoding + openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5))(zod@3.23.8): + dependencies: + '@types/node': 18.19.71 + '@types/node-fetch': 2.6.12 + abort-controller: 3.0.0 + agentkeepalive: 4.6.0 + form-data-encoder: 1.7.2 + formdata-node: 4.4.1 + node-fetch: 2.7.0(encoding@0.1.13) + optionalDependencies: + ws: 8.18.0(bufferutil@4.0.9)(utf-8-validate@6.0.5) + zod: 3.23.8 + transitivePeerDependencies: + - encoding + openapi-types@12.1.3: {} openapi-zod-client@1.18.2(react@19.0.0): @@ -47086,7 +49588,7 @@ snapshots: '@apidevtools/swagger-parser': 10.1.1(openapi-types@12.1.3) '@liuli-util/fs-extra': 0.1.0 '@zodios/core': 10.9.6(axios@1.7.9)(zod@3.23.8) - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 cac: 6.7.14 handlebars: 4.7.8 openapi-types: 12.1.3 @@ -47130,7 +49632,7 @@ snapshots: ora@5.3.0: dependencies: bl: 4.1.0 - chalk: 4.1.2 + chalk: 4.1.0 cli-cursor: 3.1.0 cli-spinners: 2.6.1 is-interactive: 1.0.0 @@ -47179,8 +49681,8 @@ snapshots: ox@0.4.2(typescript@5.7.3)(zod@3.24.1): dependencies: '@adraffy/ens-normalize': 1.11.0 - '@noble/curves': 1.8.0 - '@noble/hashes': 1.7.0 + '@noble/curves': 1.7.0 + '@noble/hashes': 1.6.1 '@scure/bip32': 1.6.1 '@scure/bip39': 1.5.1 abitype: 1.0.7(typescript@5.7.3)(zod@3.24.1) @@ -47400,10 +49902,6 @@ snapshots: just-diff: 6.0.2 just-diff-apply: 5.5.0 - parse-data-uri@0.2.0: - dependencies: - data-uri-to-buffer: 0.0.3 - parse-entities@4.0.2: dependencies: '@types/unist': 2.0.11 @@ -47542,12 +50040,16 @@ snapshots: pathe@1.1.2: {} - pathe@2.0.1: {} + pathe@2.0.2: {} pathval@1.1.1: {} pathval@2.0.0: {} + pause-stream@0.0.11: + dependencies: + through: 2.3.8 + pbkdf2@3.1.2: dependencies: create-hash: 1.2.0 @@ -47651,8 +50153,30 @@ snapshots: duplexify: 4.1.3 split2: 4.2.0 + pino-abstract-transport@2.0.0: + dependencies: + split2: 4.2.0 + + pino-pretty@13.0.0: + dependencies: + colorette: 2.0.20 + dateformat: 4.6.3 + fast-copy: 3.0.2 + fast-safe-stringify: 2.1.1 + help-me: 5.0.0 + joycon: 3.1.1 + minimist: 1.2.8 + on-exit-leak-free: 2.1.2 + pino-abstract-transport: 2.0.0 + pump: 3.0.2 + secure-json-parse: 2.7.0 + sonic-boom: 4.2.0 + strip-json-comments: 3.1.1 + pino-std-serializers@4.0.0: {} + pino-std-serializers@7.0.0: {} + pino@7.11.0: dependencies: atomic-sleep: 1.0.0 @@ -47667,6 +50191,20 @@ snapshots: sonic-boom: 2.8.0 thread-stream: 0.15.2 + pino@9.6.0: + dependencies: + atomic-sleep: 1.0.0 + fast-redact: 3.5.0 + on-exit-leak-free: 2.1.2 + pino-abstract-transport: 2.0.0 + pino-std-serializers: 7.0.0 + process-warning: 4.0.1 + quick-format-unescaped: 4.0.4 + real-require: 0.2.0 + safe-stable-stringify: 2.5.0 + sonic-boom: 4.2.0 + thread-stream: 3.1.0 + pirates@4.0.6: {} pkg-dir@4.2.0: @@ -47681,7 +50219,7 @@ snapshots: dependencies: confbox: 0.1.8 mlly: 1.7.4 - pathe: 2.0.1 + pathe: 2.0.2 pkg-up@3.1.0: dependencies: @@ -47779,10 +50317,6 @@ snapshots: - supports-color - utf-8-validate - pngjs-nozlib@1.0.0: {} - - pngjs@2.3.1: {} - pngjs@5.0.0: {} pnpm@9.14.4: {} @@ -48561,6 +51095,8 @@ snapshots: process-warning@1.0.0: {} + process-warning@4.0.1: {} + process@0.11.10: {} proggy@2.0.0: {} @@ -48688,6 +51224,10 @@ snapshots: proxy-from-env@1.1.0: {} + ps-tree@1.2.0: + dependencies: + event-stream: 3.3.4 + psl@1.15.0: dependencies: punycode: 2.3.1 @@ -48708,12 +51248,26 @@ snapshots: end-of-stream: 1.4.4 once: 1.4.0 + pumpdotfun-sdk@1.3.2(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(rollup@4.30.1)(typescript@5.6.3)(utf-8-validate@5.0.10): + dependencies: + '@coral-xyz/anchor': 0.30.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@rollup/plugin-json': 6.1.0(rollup@4.30.1) + '@solana/spl-token': 0.4.6(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + transitivePeerDependencies: + - bufferutil + - encoding + - fastestsmallesttextencoderdecoder + - rollup + - typescript + - utf-8-validate + pumpdotfun-sdk@1.3.2(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(rollup@4.30.1)(typescript@5.7.3)(utf-8-validate@5.0.10): dependencies: '@coral-xyz/anchor': 0.30.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) '@rollup/plugin-json': 6.1.0(rollup@4.30.1) - '@solana/spl-token': 0.4.6(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) - '@solana/web3.js': 1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@solana/spl-token': 0.4.6(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) transitivePeerDependencies: - bufferutil - encoding @@ -48755,7 +51309,7 @@ snapshots: puppeteer-extra-plugin-capsolver@2.0.1(bufferutil@4.0.9)(encoding@0.1.13)(puppeteer-core@19.11.1(bufferutil@4.0.9)(encoding@0.1.13)(typescript@5.7.3)(utf-8-validate@5.0.10))(typescript@5.7.3)(utf-8-validate@5.0.10): dependencies: - axios: 1.7.9(debug@4.4.0) + axios: 1.7.9 capsolver-npm: 2.0.2 puppeteer: 19.11.1(bufferutil@4.0.9)(encoding@0.1.13)(typescript@5.7.3)(utf-8-validate@5.0.10) puppeteer-extra: 3.3.6(puppeteer-core@19.11.1(bufferutil@4.0.9)(encoding@0.1.13)(typescript@5.7.3)(utf-8-validate@5.0.10))(puppeteer@19.11.1(bufferutil@4.0.9)(encoding@0.1.13)(typescript@5.7.3)(utf-8-validate@5.0.10)) @@ -49019,11 +51573,11 @@ snapshots: react-dom: 18.3.1(react@18.3.1) react-router: 6.22.1(react@18.3.1) - react-router-dom@7.1.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0): + react-router-dom@7.1.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0): dependencies: react: 19.0.0 react-dom: 19.0.0(react@19.0.0) - react-router: 7.1.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + react-router: 7.1.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0) react-router@5.3.4(react@18.3.1): dependencies: @@ -49043,7 +51597,7 @@ snapshots: '@remix-run/router': 1.15.1 react: 18.3.1 - react-router@7.1.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0): + react-router@7.1.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0): dependencies: '@types/cookie': 0.6.0 cookie: 1.0.2 @@ -49181,6 +51735,8 @@ snapshots: real-require@0.1.0: {} + real-require@0.2.0: {} + rechoir@0.6.2: dependencies: resolve: 1.22.10 @@ -49243,6 +51799,8 @@ snapshots: reflect-metadata@0.1.13: {} + reflect-metadata@0.1.14: {} + reflect-metadata@0.2.2: {} reflect.getprototypeof@1.0.10: @@ -49619,6 +52177,25 @@ snapshots: points-on-curve: 0.2.0 points-on-path: 0.2.1 + rpc-websockets@7.5.1: + dependencies: + '@babel/runtime': 7.26.0 + eventemitter3: 4.0.7 + uuid: 8.3.2 + ws: 8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) + optionalDependencies: + bufferutil: 4.0.9 + utf-8-validate: 5.0.10 + + rpc-websockets@8.0.2: + dependencies: + eventemitter3: 4.0.7 + uuid: 8.3.2 + ws: 8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10) + optionalDependencies: + bufferutil: 4.0.9 + utf-8-validate: 5.0.10 + rpc-websockets@9.0.4: dependencies: '@swc/helpers': 0.5.15 @@ -49696,16 +52273,6 @@ snapshots: sandwich-stream@2.0.2: {} - save-pixels-jpeg-js-upgrade@2.3.4-jpeg-js-upgrade.0: - dependencies: - contentstream: 1.0.0 - gif-encoder: 0.4.3 - jpeg-js: 0.3.7 - ndarray: 1.0.19 - ndarray-ops: 1.2.2 - pngjs-nozlib: 1.0.0 - through: 2.3.8 - sax@1.4.1: {} saxes@6.0.0: @@ -50208,27 +52775,113 @@ snapshots: typedarray-to-buffer: 3.1.5 xsalsa20: 1.2.0 - solana-agent-kit@1.4.0(@noble/hashes@1.7.0)(@swc/core@1.10.7(@swc/helpers@0.5.15))(@types/node@20.17.9)(arweave@1.15.5)(axios@1.7.9)(borsh@2.0.0)(buffer@6.0.3)(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(handlebars@4.7.8)(react@19.0.0)(sodium-native@3.4.1)(typescript@5.7.3)(utf-8-validate@5.0.10): + solana-agent-kit@1.4.1(@noble/hashes@1.7.0)(@solana/buffer-layout@4.0.1)(@swc/core@1.10.7(@swc/helpers@0.5.15))(@types/node@20.17.9)(arweave@1.15.5)(axios@1.7.9)(borsh@2.0.0)(buffer@6.0.3)(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(handlebars@4.7.8)(react@19.0.0)(sodium-native@3.4.1)(typescript@5.6.3)(utf-8-validate@5.0.10)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)): + dependencies: + '@3land/listings-sdk': 0.0.6(@swc/core@1.10.7(@swc/helpers@0.5.15))(@types/node@20.17.9)(arweave@1.15.5)(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@ai-sdk/openai': 1.1.0(zod@3.24.1) + '@bonfida/spl-name-service': 3.0.7(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@cks-systems/manifest-sdk': 0.1.59(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@coral-xyz/anchor': 0.29.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@drift-labs/sdk': 2.107.0-beta.3(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@drift-labs/vaults-sdk': 0.2.55(@swc/core@1.10.7(@swc/helpers@0.5.15))(@types/node@20.17.9)(arweave@1.15.5)(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(utf-8-validate@5.0.10) + '@langchain/core': 0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1)) + '@langchain/groq': 0.1.3(@langchain/core@0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1)))(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@langchain/langgraph': 0.2.40(@langchain/core@0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1))) + '@langchain/openai': 0.3.17(@langchain/core@0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1)))(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@lightprotocol/compressed-token': 0.17.1(@lightprotocol/stateless.js@0.17.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@lightprotocol/stateless.js': 0.17.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@mercurial-finance/dynamic-amm-sdk': 1.1.23(@solana/buffer-layout@4.0.1)(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@metaplex-foundation/mpl-core': 1.1.1(@metaplex-foundation/umi@0.9.2)(@noble/hashes@1.7.0) + '@metaplex-foundation/mpl-token-metadata': 3.3.0(@metaplex-foundation/umi@0.9.2) + '@metaplex-foundation/mpl-toolbox': 0.9.4(@metaplex-foundation/umi@0.9.2) + '@metaplex-foundation/umi': 0.9.2 + '@metaplex-foundation/umi-bundle-defaults': 0.9.2(@metaplex-foundation/umi@0.9.2)(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(encoding@0.1.13) + '@metaplex-foundation/umi-web3js-adapters': 0.9.2(@metaplex-foundation/umi@0.9.2)(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) + '@meteora-ag/alpha-vault': 1.1.7(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@meteora-ag/dlmm': 1.3.8(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@onsol/tldparser': 0.6.7(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bn.js@5.2.1)(borsh@2.0.0)(buffer@6.0.3)(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@orca-so/common-sdk': 0.6.4(@solana/spl-token@0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10))(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(decimal.js@10.4.3) + '@orca-so/whirlpools-sdk': 0.13.13(@coral-xyz/anchor@0.29.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(@orca-so/common-sdk@0.6.4(@solana/spl-token@0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10))(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(decimal.js@10.4.3))(@solana/spl-token@0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10))(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(decimal.js@10.4.3) + '@pythnetwork/hermes-client': 1.3.0(axios@1.7.9) + '@raydium-io/raydium-sdk-v2': 0.1.95-alpha(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/spl-token': 0.4.9(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@solana/web3.js': 1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@sqds/multisig': 2.1.3(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@tensor-oss/tensorswap-sdk': 4.5.0(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + '@tiplink/api': 0.3.1(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(sodium-native@3.4.1)(utf-8-validate@5.0.10) + '@voltr/vault-sdk': 0.1.1(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + ai: 4.1.0(react@19.0.0)(zod@3.24.1) + bn.js: 5.2.1 + bs58: 6.0.0 + chai: 5.1.2 + decimal.js: 10.4.3 + dotenv: 16.4.7 + flash-sdk: 2.25.8(@swc/core@1.10.7(@swc/helpers@0.5.15))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10) + form-data: 4.0.1 + langchain: 0.3.11(@langchain/core@0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1)))(@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1)))(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)))(axios@1.7.9)(encoding@0.1.13)(handlebars@4.7.8)(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1))(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + openai: 4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1) + typedoc: 0.27.6(typescript@5.6.3) + zod: 3.24.1 + transitivePeerDependencies: + - '@langchain/anthropic' + - '@langchain/aws' + - '@langchain/cerebras' + - '@langchain/cohere' + - '@langchain/google-genai' + - '@langchain/google-vertexai' + - '@langchain/google-vertexai-web' + - '@langchain/mistralai' + - '@langchain/ollama' + - '@noble/hashes' + - '@solana/buffer-layout' + - '@swc/core' + - '@swc/wasm' + - '@types/node' + - arweave + - axios + - borsh + - buffer + - bufferutil + - cheerio + - debug + - encoding + - fastestsmallesttextencoderdecoder + - handlebars + - peggy + - react + - sodium-native + - supports-color + - typeorm + - typescript + - utf-8-validate + - ws + + solana-agent-kit@1.4.1(@noble/hashes@1.7.0)(@solana/buffer-layout@4.0.1)(@swc/core@1.10.7(@swc/helpers@0.5.15))(@types/node@22.10.7)(arweave@1.15.5)(axios@1.7.9)(borsh@2.0.0)(buffer@6.0.3)(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(handlebars@4.7.8)(react@19.0.0)(sodium-native@3.4.1)(typescript@5.7.3)(utf-8-validate@5.0.10)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)): dependencies: - '@3land/listings-sdk': 0.0.4(@swc/core@1.10.7(@swc/helpers@0.5.15))(@types/node@20.17.9)(arweave@1.15.5)(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) - '@ai-sdk/openai': 1.0.19(zod@3.24.1) + '@3land/listings-sdk': 0.0.6(@swc/core@1.10.7(@swc/helpers@0.5.15))(@types/node@22.10.7)(arweave@1.15.5)(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) + '@ai-sdk/openai': 1.1.0(zod@3.24.1) '@bonfida/spl-name-service': 3.0.7(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) '@cks-systems/manifest-sdk': 0.1.59(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) '@coral-xyz/anchor': 0.29.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) - '@langchain/core': 0.3.30(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)) - '@langchain/groq': 0.1.3(@langchain/core@0.3.30(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)))(encoding@0.1.13) - '@langchain/langgraph': 0.2.40(@langchain/core@0.3.30(openai@4.78.1(encoding@0.1.13)(zod@3.24.1))) - '@langchain/openai': 0.3.17(@langchain/core@0.3.30(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)))(encoding@0.1.13) + '@drift-labs/sdk': 2.107.0-beta.3(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) + '@drift-labs/vaults-sdk': 0.2.55(@swc/core@1.10.7(@swc/helpers@0.5.15))(@types/node@22.10.7)(arweave@1.15.5)(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(utf-8-validate@5.0.10) + '@langchain/core': 0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1)) + '@langchain/groq': 0.1.3(@langchain/core@0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1)))(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + '@langchain/langgraph': 0.2.40(@langchain/core@0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1))) + '@langchain/openai': 0.3.17(@langchain/core@0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1)))(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)) '@lightprotocol/compressed-token': 0.17.1(@lightprotocol/stateless.js@0.17.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) '@lightprotocol/stateless.js': 0.17.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + '@mercurial-finance/dynamic-amm-sdk': 1.1.23(@solana/buffer-layout@4.0.1)(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) '@metaplex-foundation/mpl-core': 1.1.1(@metaplex-foundation/umi@0.9.2)(@noble/hashes@1.7.0) '@metaplex-foundation/mpl-token-metadata': 3.3.0(@metaplex-foundation/umi@0.9.2) '@metaplex-foundation/mpl-toolbox': 0.9.4(@metaplex-foundation/umi@0.9.2) '@metaplex-foundation/umi': 0.9.2 '@metaplex-foundation/umi-bundle-defaults': 0.9.2(@metaplex-foundation/umi@0.9.2)(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(encoding@0.1.13) '@metaplex-foundation/umi-web3js-adapters': 0.9.2(@metaplex-foundation/umi@0.9.2)(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10)) + '@meteora-ag/alpha-vault': 1.1.7(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) + '@meteora-ag/dlmm': 1.3.8(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) '@onsol/tldparser': 0.6.7(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bn.js@5.2.1)(borsh@2.0.0)(buffer@6.0.3)(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) - '@orca-so/common-sdk': 0.6.4(@solana/spl-token@0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10))(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(decimal.js@10.4.3) + '@orca-so/common-sdk': 0.6.4(@solana/spl-token@0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10))(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(decimal.js@10.4.3) '@orca-so/whirlpools-sdk': 0.13.13(@coral-xyz/anchor@0.29.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(@orca-so/common-sdk@0.6.4(@solana/spl-token@0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10))(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(decimal.js@10.4.3))(@solana/spl-token@0.4.9(@solana/web3.js@1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10))(@solana/web3.js@1.98.0(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10))(decimal.js@10.4.3) '@pythnetwork/hermes-client': 1.3.0(axios@1.7.9) '@raydium-io/raydium-sdk-v2': 0.1.95-alpha(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) @@ -50237,7 +52890,8 @@ snapshots: '@sqds/multisig': 2.1.3(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) '@tensor-oss/tensorswap-sdk': 4.5.0(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) '@tiplink/api': 0.3.1(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(sodium-native@3.4.1)(utf-8-validate@5.0.10) - ai: 4.0.38(react@19.0.0)(zod@3.24.1) + '@voltr/vault-sdk': 0.1.1(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) + ai: 4.1.0(react@19.0.0)(zod@3.24.1) bn.js: 5.2.1 bs58: 6.0.0 chai: 5.1.2 @@ -50245,8 +52899,8 @@ snapshots: dotenv: 16.4.7 flash-sdk: 2.25.8(@swc/core@1.10.7(@swc/helpers@0.5.15))(bufferutil@4.0.9)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.7.3)(utf-8-validate@5.0.10) form-data: 4.0.1 - langchain: 0.3.11(@langchain/core@0.3.30(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)))(@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)))(encoding@0.1.13))(axios@1.7.9)(encoding@0.1.13)(handlebars@4.7.8)(openai@4.78.1(encoding@0.1.13)(zod@3.24.1)) - openai: 4.78.1(encoding@0.1.13)(zod@3.24.1) + langchain: 0.3.11(@langchain/core@0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1)))(@langchain/groq@0.1.3(@langchain/core@0.3.30(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1)))(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)))(axios@1.7.9)(encoding@0.1.13)(handlebars@4.7.8)(openai@4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1))(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + openai: 4.79.1(encoding@0.1.13)(ws@8.18.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(zod@3.24.1) typedoc: 0.27.6(typescript@5.7.3) zod: 3.24.1 transitivePeerDependencies: @@ -50260,6 +52914,7 @@ snapshots: - '@langchain/mistralai' - '@langchain/ollama' - '@noble/hashes' + - '@solana/buffer-layout' - '@swc/core' - '@swc/wasm' - '@types/node' @@ -50280,12 +52935,43 @@ snapshots: - typeorm - typescript - utf-8-validate + - ws + + solana-bankrun-darwin-arm64@0.3.1: + optional: true + + solana-bankrun-darwin-universal@0.3.1: + optional: true + + solana-bankrun-darwin-x64@0.3.1: + optional: true + + solana-bankrun-linux-x64-gnu@0.3.1: + optional: true + + solana-bankrun-linux-x64-musl@0.3.1: + optional: true + + solana-bankrun@0.3.1(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10): + dependencies: + '@solana/web3.js': 1.95.8(bufferutil@4.0.9)(encoding@0.1.13)(utf-8-validate@5.0.10) + bs58: 4.0.1 + optionalDependencies: + solana-bankrun-darwin-arm64: 0.3.1 + solana-bankrun-darwin-universal: 0.3.1 + solana-bankrun-darwin-x64: 0.3.1 + solana-bankrun-linux-x64-gnu: 0.3.1 + solana-bankrun-linux-x64-musl: 0.3.1 + transitivePeerDependencies: + - bufferutil + - encoding + - utf-8-validate solc@0.8.28: dependencies: command-exists: 1.2.9 commander: 8.3.0 - follow-redirects: 1.15.9(debug@4.4.0) + follow-redirects: 1.15.9(debug@4.3.4) js-sha3: 0.8.0 memorystream: 0.3.1 semver: 5.7.2 @@ -50297,6 +52983,10 @@ snapshots: dependencies: atomic-sleep: 1.0.0 + sonic-boom@4.2.0: + dependencies: + atomic-sleep: 1.0.0 + sort-css-media-queries@2.2.0: {} sort-json@2.0.1: @@ -50385,6 +53075,10 @@ snapshots: split2@4.2.0: {} + split@0.3.3: + dependencies: + through: 2.3.8 + split@1.0.1: dependencies: through: 2.3.8 @@ -50443,9 +53137,9 @@ snapshots: dependencies: minipass: 7.1.2 - sswr@2.1.0(svelte@5.18.0): + sswr@2.1.0(svelte@5.19.0): dependencies: - svelte: 5.18.0 + svelte: 5.19.0 swrev: 4.0.0 stable-hash@0.0.4: {} @@ -50480,6 +53174,19 @@ snapshots: transitivePeerDependencies: - encoding + start-server-and-test@1.15.4: + dependencies: + arg: 5.0.2 + bluebird: 3.7.2 + check-more-types: 2.24.0 + debug: 4.3.4 + execa: 5.1.1 + lazy-ass: 1.6.0 + ps-tree: 1.2.0 + wait-on: 7.0.1(debug@4.3.4) + transitivePeerDependencies: + - supports-color + statuses@1.5.0: {} statuses@2.0.1: {} @@ -50511,6 +53218,10 @@ snapshots: duplexer2: 0.1.4 readable-stream: 2.3.8 + stream-combiner@0.0.4: + dependencies: + duplexer: 0.1.2 + stream-http@3.2.0: dependencies: builtin-status-codes: 3.0.0 @@ -50545,6 +53256,8 @@ snapshots: optionalDependencies: bare-events: 2.5.4 + strict-event-emitter-types@2.0.0: {} + strict-uri-encode@2.0.0: {} string-argv@0.3.2: {} @@ -50736,8 +53449,12 @@ snapshots: function-timeout: 1.0.2 time-span: 5.1.0 + superstruct@0.14.2: {} + superstruct@0.15.5: {} + superstruct@1.0.4: {} + superstruct@2.0.2: {} supports-color@2.0.0: {} @@ -50756,7 +53473,7 @@ snapshots: supports-preserve-symlinks-flag@1.0.0: {} - svelte@5.18.0: + svelte@5.19.0: dependencies: '@ampproject/remapping': 2.3.0 '@jridgewell/sourcemap-codec': 1.5.0 @@ -51042,6 +53759,10 @@ snapshots: dependencies: real-require: 0.1.0 + thread-stream@3.1.0: + dependencies: + real-require: 0.2.0 + three@0.146.0: {} throttleit@2.1.0: {} @@ -51090,7 +53811,7 @@ snapshots: tinyglobby@0.2.10: dependencies: - fdir: 6.4.2(picomatch@4.0.2) + fdir: 6.4.3(picomatch@4.0.2) picomatch: 4.0.2 tinyld@1.3.4: {} @@ -51103,6 +53824,8 @@ snapshots: tinyrainbow@1.2.0: {} + tinyrainbow@2.0.0: {} + tinyspawn@1.3.3: {} tinyspy@2.2.1: {} @@ -51209,6 +53932,8 @@ snapshots: dependencies: punycode: 2.3.1 + traverse-chain@0.1.0: {} + traverse@0.6.11: dependencies: gopd: 1.2.0 @@ -51315,6 +54040,11 @@ snapshots: ts-mixer@6.0.4: {} + ts-morph@18.0.0: + dependencies: + '@ts-morph/common': 0.19.0 + code-block-writer: 12.0.0 + ts-node@10.9.2(@swc/core@1.10.7(@swc/helpers@0.5.15))(@types/node@18.19.71)(typescript@5.6.3): dependencies: '@cspotcode/source-map-support': 0.8.1 @@ -51336,6 +54066,26 @@ snapshots: '@swc/core': 1.10.7(@swc/helpers@0.5.15) optional: true + ts-node@10.9.2(@swc/core@1.10.7(@swc/helpers@0.5.15))(@types/node@20.17.9)(typescript@5.6.3): + dependencies: + '@cspotcode/source-map-support': 0.8.1 + '@tsconfig/node10': 1.0.11 + '@tsconfig/node12': 1.0.11 + '@tsconfig/node14': 1.0.3 + '@tsconfig/node16': 1.0.4 + '@types/node': 20.17.9 + acorn: 8.14.0 + acorn-walk: 8.3.4 + arg: 4.1.3 + create-require: 1.1.1 + diff: 4.0.2 + make-error: 1.3.6 + typescript: 5.6.3 + v8-compile-cache-lib: 3.0.1 + yn: 3.1.1 + optionalDependencies: + '@swc/core': 1.10.7(@swc/helpers@0.5.15) + ts-node@10.9.2(@swc/core@1.10.7(@swc/helpers@0.5.15))(@types/node@20.17.9)(typescript@5.7.3): dependencies: '@cspotcode/source-map-support': 0.8.1 @@ -51375,7 +54125,6 @@ snapshots: yn: 3.1.1 optionalDependencies: '@swc/core': 1.10.7(@swc/helpers@0.5.15) - optional: true ts-node@10.9.2(@swc/core@1.10.7(@swc/helpers@0.5.15))(@types/node@22.10.7)(typescript@5.7.3): dependencies: @@ -51710,6 +54459,15 @@ snapshots: typescript: 5.7.3 yaml: 2.7.0 + typedoc@0.27.6(typescript@5.6.3): + dependencies: + '@gerrit0/mini-shiki': 1.27.2 + lunr: 2.3.9 + markdown-it: 14.1.0 + minimatch: 9.0.5 + typescript: 5.6.3 + yaml: 2.7.0 + typedoc@0.27.6(typescript@5.7.3): dependencies: '@gerrit0/mini-shiki': 1.27.2 @@ -51882,8 +54640,6 @@ snapshots: trough: 1.0.5 vfile: 4.2.1 - uniq@1.0.1: {} - unique-filename@3.0.0: dependencies: unique-slug: 4.0.0 @@ -52067,6 +54823,12 @@ snapshots: punycode: 1.4.1 qs: 6.14.0 + usb@2.9.0: + dependencies: + '@types/w3c-web-usb': 1.0.10 + node-addon-api: 6.1.0 + node-gyp-build: 4.8.4 + use-callback-ref@1.3.3(@types/react@19.0.7)(react@19.0.0): dependencies: react: 19.0.0 @@ -52482,12 +55244,30 @@ snapshots: - supports-color - terser - vite-node@2.1.8(@types/node@22.8.4)(terser@5.37.0): + vite-node@3.0.2(@types/node@22.10.7)(terser@5.37.0): dependencies: cac: 6.7.14 debug: 4.4.0(supports-color@5.5.0) es-module-lexer: 1.6.0 - pathe: 1.1.2 + pathe: 2.0.2 + vite: 5.4.11(@types/node@22.10.7)(terser@5.37.0) + transitivePeerDependencies: + - '@types/node' + - less + - lightningcss + - sass + - sass-embedded + - stylus + - sugarss + - supports-color + - terser + + vite-node@3.0.2(@types/node@22.8.4)(terser@5.37.0): + dependencies: + cac: 6.7.14 + debug: 4.4.0(supports-color@5.5.0) + es-module-lexer: 1.6.0 + pathe: 2.0.2 vite: 5.4.11(@types/node@22.8.4)(terser@5.37.0) transitivePeerDependencies: - '@types/node' @@ -53020,27 +55800,63 @@ snapshots: - supports-color - terser - vitest@2.1.8(@types/node@22.8.4)(jsdom@25.0.1(bufferutil@4.0.9)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.37.0): + vitest@3.0.2(@types/node@22.10.7)(jsdom@25.0.1(bufferutil@4.0.9)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@6.0.5))(terser@5.37.0): dependencies: - '@vitest/expect': 2.1.8 - '@vitest/mocker': 2.1.8(vite@5.4.11(@types/node@22.10.7)(terser@5.37.0)) - '@vitest/pretty-format': 2.1.8 - '@vitest/runner': 2.1.8 - '@vitest/snapshot': 2.1.8 - '@vitest/spy': 2.1.8 - '@vitest/utils': 2.1.8 + '@vitest/expect': 3.0.2 + '@vitest/mocker': 3.0.2(vite@5.4.11(@types/node@22.10.7)(terser@5.37.0)) + '@vitest/pretty-format': 3.0.2 + '@vitest/runner': 3.0.2 + '@vitest/snapshot': 3.0.2 + '@vitest/spy': 3.0.2 + '@vitest/utils': 3.0.2 chai: 5.1.2 debug: 4.4.0(supports-color@5.5.0) expect-type: 1.1.0 magic-string: 0.30.17 - pathe: 1.1.2 + pathe: 2.0.2 std-env: 3.8.0 tinybench: 2.9.0 tinyexec: 0.3.2 tinypool: 1.0.2 - tinyrainbow: 1.2.0 + tinyrainbow: 2.0.0 + vite: 5.4.11(@types/node@22.10.7)(terser@5.37.0) + vite-node: 3.0.2(@types/node@22.10.7)(terser@5.37.0) + why-is-node-running: 2.3.0 + optionalDependencies: + '@types/node': 22.10.7 + jsdom: 25.0.1(bufferutil@4.0.9)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@6.0.5) + transitivePeerDependencies: + - less + - lightningcss + - msw + - sass + - sass-embedded + - stylus + - sugarss + - supports-color + - terser + + vitest@3.0.2(@types/node@22.8.4)(jsdom@25.0.1(bufferutil@4.0.9)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.37.0): + dependencies: + '@vitest/expect': 3.0.2 + '@vitest/mocker': 3.0.2(vite@5.4.11(@types/node@22.10.7)(terser@5.37.0)) + '@vitest/pretty-format': 3.0.2 + '@vitest/runner': 3.0.2 + '@vitest/snapshot': 3.0.2 + '@vitest/spy': 3.0.2 + '@vitest/utils': 3.0.2 + chai: 5.1.2 + debug: 4.4.0(supports-color@5.5.0) + expect-type: 1.1.0 + magic-string: 0.30.17 + pathe: 2.0.2 + std-env: 3.8.0 + tinybench: 2.9.0 + tinyexec: 0.3.2 + tinypool: 1.0.2 + tinyrainbow: 2.0.0 vite: 5.4.11(@types/node@22.8.4)(terser@5.37.0) - vite-node: 2.1.8(@types/node@22.8.4)(terser@5.37.0) + vite-node: 3.0.2(@types/node@22.8.4)(terser@5.37.0) why-is-node-running: 2.3.0 optionalDependencies: '@types/node': 22.8.4 @@ -53098,6 +55914,16 @@ snapshots: dependencies: xml-name-validator: 5.0.0 + wait-on@7.0.1(debug@4.3.4): + dependencies: + axios: 0.27.2(debug@4.3.4) + joi: 17.13.3 + lodash: 4.17.21 + minimist: 1.2.8 + rxjs: 7.8.1 + transitivePeerDependencies: + - debug + walk-up-path@3.0.1: {} walker@1.0.8: @@ -53899,7 +56725,7 @@ snapshots: zimmerframe@1.1.2: {} - zksync-ethers@6.15.3(ethers@6.13.4(bufferutil@4.0.9)(utf-8-validate@6.0.5)): + zksync-ethers@6.15.4(ethers@6.13.4(bufferutil@4.0.9)(utf-8-validate@6.0.5)): dependencies: ethers: 6.13.4(bufferutil@4.0.9)(utf-8-validate@6.0.5) @@ -53919,6 +56745,8 @@ snapshots: zstddec@0.0.2: {} + zstddec@0.1.0: {} + zwitch@1.0.5: {} zwitch@2.0.4: {}