From 73fb9e2e16e83874fa88861c255607d6a5fa1a2e Mon Sep 17 00:00:00 2001 From: Peterjah Date: Mon, 30 Dec 2024 22:49:24 +0100 Subject: [PATCH] feat: add massa-plugin --- agent/package.json | 1 + packages/plugin-massa/.npmignore | 6 + packages/plugin-massa/eslint.config.mjs | 3 + packages/plugin-massa/package.json | 19 + packages/plugin-massa/readme.md | 12 + packages/plugin-massa/src/actions/transfer.ts | 286 +++++++++++++ packages/plugin-massa/src/enviroment.ts | 38 ++ packages/plugin-massa/src/index.ts | 12 + packages/plugin-massa/src/utils/address.ts | 9 + packages/plugin-massa/src/utils/index.ts | 1 + packages/plugin-massa/src/utils/mns.ts | 15 + packages/plugin-massa/tsconfig.json | 16 + packages/plugin-massa/tsup.config.ts | 12 + pnpm-lock.yaml | 396 +++++++++++++++--- 14 files changed, 759 insertions(+), 67 deletions(-) create mode 100644 packages/plugin-massa/.npmignore create mode 100644 packages/plugin-massa/eslint.config.mjs create mode 100644 packages/plugin-massa/package.json create mode 100644 packages/plugin-massa/readme.md create mode 100644 packages/plugin-massa/src/actions/transfer.ts create mode 100644 packages/plugin-massa/src/enviroment.ts create mode 100644 packages/plugin-massa/src/index.ts create mode 100644 packages/plugin-massa/src/utils/address.ts create mode 100644 packages/plugin-massa/src/utils/index.ts create mode 100644 packages/plugin-massa/src/utils/mns.ts create mode 100644 packages/plugin-massa/tsconfig.json create mode 100644 packages/plugin-massa/tsup.config.ts diff --git a/agent/package.json b/agent/package.json index a0a5192ec5..273c4a8205 100644 --- a/agent/package.json +++ b/agent/package.json @@ -44,6 +44,7 @@ "@elizaos/plugin-goat": "workspace:*", "@elizaos/plugin-icp": "workspace:*", "@elizaos/plugin-image-generation": "workspace:*", + "@elizaos/plugin-massa": "workspace:*", "@elizaos/plugin-nft-generation": "workspace:*", "@elizaos/plugin-node": "workspace:*", "@elizaos/plugin-solana": "workspace:*", diff --git a/packages/plugin-massa/.npmignore b/packages/plugin-massa/.npmignore new file mode 100644 index 0000000000..078562ecea --- /dev/null +++ b/packages/plugin-massa/.npmignore @@ -0,0 +1,6 @@ +* + +!dist/** +!package.json +!readme.md +!tsup.config.ts \ No newline at end of file diff --git a/packages/plugin-massa/eslint.config.mjs b/packages/plugin-massa/eslint.config.mjs new file mode 100644 index 0000000000..92fe5bbebe --- /dev/null +++ b/packages/plugin-massa/eslint.config.mjs @@ -0,0 +1,3 @@ +import eslintGlobalConfig from "../../eslint.config.mjs"; + +export default [...eslintGlobalConfig]; diff --git a/packages/plugin-massa/package.json b/packages/plugin-massa/package.json new file mode 100644 index 0000000000..456b935f5d --- /dev/null +++ b/packages/plugin-massa/package.json @@ -0,0 +1,19 @@ +{ + "name": "@elizaos/plugin-massa", + "version": "0.0.1-alpha.1", + "main": "dist/index.js", + "type": "module", + "types": "dist/index.d.ts", + "dependencies": { + "@elizaos/core": "workspace:*", + "@massalabs/massa-web3": "^5.0.1-dev", + "tsup": "8.3.5" + }, + "scripts": { + "build": "tsup --format esm --dts", + "lint": "eslint . --fix" + }, + "peerDependencies": { + "whatwg-url": "7.1.0" + } +} diff --git a/packages/plugin-massa/readme.md b/packages/plugin-massa/readme.md new file mode 100644 index 0000000000..412a5bb442 --- /dev/null +++ b/packages/plugin-massa/readme.md @@ -0,0 +1,12 @@ +# Massa Plugin + +## Overview + +This plugin aims to be the basis of all interactions with the Massa ecosystem. + +## Adding a new action + +Reuse providers and utilities from the existing actions where possible. Add more utilities if you think they will be useful for other actions. + +1. Add the action to the `actions` directory. Try to follow the naming convention of the other actions. +2. Export the action in the `index.ts` file. diff --git a/packages/plugin-massa/src/actions/transfer.ts b/packages/plugin-massa/src/actions/transfer.ts new file mode 100644 index 0000000000..93b72e312a --- /dev/null +++ b/packages/plugin-massa/src/actions/transfer.ts @@ -0,0 +1,286 @@ +// It should transfer tokens from the agent's wallet to the recipient. + +import { + type Action, + ActionExample, + composeContext, + Content, + elizaLogger, + generateObjectDeprecated, + HandlerCallback, + IAgentRuntime, + Memory, + ModelClass, + State, +} from "@elizaos/core"; +import { validateConfig } from "../enviroment"; +import { getMnsTarget } from "../utils/mns"; +import { + Web3Provider, + Account, + Address, + MRC20, + MAINNET_TOKENS, + parseUnits, + CHAIN_ID, + BUILDNET_TOKENS, +} from "@massalabs/massa-web3"; +import { validateAddress } from "../utils/address"; + +export interface TransferContent extends Content { + tokenAddress: string; + recipient: string; + amount: string; +} + +export function isTransferContent(content: any): content is TransferContent { + elizaLogger.log("Starting SEND_TOKEN content", content); + + // Validate types + const validTypes = + typeof content.tokenAddress === "string" && + typeof content.recipient === "string" && + (typeof content.amount === "string" || + typeof content.amount === "number"); + + if (!validTypes) { + return false; + } + + const tokenAddr = validateAddress(content.tokenAddress); + if (!tokenAddr || tokenAddr.isEOA) { + return false; + } + + const recipient: string = content.recipient; + // Additional checks based on whether recipient or mns is defined + if (recipient && !recipient.endsWith(".massa")) { + Address.fromString(content.recipient); + } + + return true; +} + +const transferTemplate = ( + tokens: Record +) => `Respond with a JSON markdown block containing only the extracted values. Use null for any values that cannot be determined. + +Smart contrat addresses are prefixed with "AS" and EOA addresses used for recipient are prefixed with "AU". + +These are known token addresses, if you get asked about them, use these: +${Object.entries(tokens) + .map(([name, address]) => `- ${name}: ${address}`) + .join("\n")} + +If a EOA recipient address is provided, use it as is. If a .massa name is provided, use it as recipient. + +Example response: +\`\`\`json +{ + "tokenAddress": "AS12LpYyAjYRJfYhyu7fkrS224gMdvFHVEeVWoeHZzMdhis7UZ3Eb", + "recipient": "mymassaname.massa", + "amount": "0.001" +} +\`\`\` + +{{recentMessages}} + +Given the recent messages, extract the following information about the requested token transfer: +- Amount in string format +- Token contract address +- Recipient wallet address or .massa name + +If one of the values cannot be determined, ask user for missing information. + + +Respond with a JSON markdown block containing only the extracted values.`; + +export default { + name: "SEND_TOKEN", + similes: [ + "TRANSFER_TOKEN_ON_MASSA", + "TRANSFER_TOKENS_ON_MASSA", + "SEND_TOKENS_ON_MASSA", + "SEND_ETH_ON_MASSA", + "PAY_ON_MASSA", + ], + validate: async (runtime: IAgentRuntime, _message: Memory) => { + await validateConfig(runtime); + return true; + }, + description: + "MUST use this action if the user requests send a token or transfer a token, the request might be varied, but it will always be a token transfer.", + handler: async ( + runtime: IAgentRuntime, + message: Memory, + state: State, + _options: { [key: string]: unknown }, + callback?: HandlerCallback + ): Promise => { + elizaLogger.log("Starting SEND_TOKEN handler..."); + + // Initialize or update state + if (!state) { + state = (await runtime.composeState(message)) as State; + } else { + state = await runtime.updateRecentMessageState(state); + } + + const secretKey = runtime.getSetting("MASSA_PRIVATE_KEY"); + if (!secretKey) { + throw new Error("MASSA wallet credentials not configured"); + } + const account = await Account.fromPrivateKey(secretKey); + + const rpc = runtime.getSetting("MASSA_RPC_URL"); + if (!rpc) { + throw new Error("MASSA_RPC_URL not configured"); + } + const provider = Web3Provider.fromRPCUrl(rpc, account); + + const { chainId } = await provider.networkInfos(); + // Compose transfer context + const transferContext = composeContext({ + state, + template: transferTemplate( + chainId === CHAIN_ID.Mainnet ? MAINNET_TOKENS : BUILDNET_TOKENS + ), + }); + + // Generate transfer content + const content = await generateObjectDeprecated({ + runtime, + context: transferContext, + modelClass: ModelClass.MEDIUM, + }); + + elizaLogger.debug("Transfer content:", content); + + // Validate transfer content + const isValid = isTransferContent(content); + + if (!isValid) { + elizaLogger.error("Invalid content for TRANSFER_TOKEN action."); + if (callback) { + callback({ + text: "Not enough information to transfer tokens. Please respond with token address, recipient address or massa name, and amount.", + content: { error: "Invalid transfer content" }, + }); + } + return false; + } + + let recipientAddress = content.recipient; + // Validate recipient address + if (content.recipient.endsWith(".massa")) { + try { + const target = await getMnsTarget(provider, content.recipient); + Address.fromString(target); + recipientAddress = target; + } catch (error: any) { + elizaLogger.error( + "Error resolving MNS target:", + error?.message + ); + if (callback) { + callback({ + text: `Error resolving MNS target: ${error?.message}`, + content: { error: error }, + }); + } + return false; + } + } + + try { + const mrc20Token = new MRC20(provider, content.tokenAddress); + const decimals = await mrc20Token.decimals(); + const amount = parseUnits(content.amount, decimals); + const operation = await mrc20Token.transfer( + recipientAddress, + amount + ); + + elizaLogger.success( + "Transferring", + amount, + "of", + content.tokenAddress, + "to", + recipientAddress + ); + + await operation.waitSpeculativeExecution(); + + elizaLogger.success( + "Transfer completed successfully! Operation id: " + operation.id + ); + if (callback) { + callback({ + text: `Successfully transferred ${content.amount} tokens to ${content.recipient}\n OperationId: ${operation.id}`, + content: { + success: true, + operationId: operation.id, + amount: content.amount, + token: content.tokenAddress, + recipient: content.recipient, + }, + }); + } + + return true; + } catch (error: any) { + elizaLogger.error("Error during token transfer:", error?.message); + if (callback) { + callback({ + text: `Error transferring tokens: ${error?.message}`, + content: { error: error }, + }); + } + return false; + } + }, + + examples: [ + [ + { + user: "{{user1}}", + content: { + text: "Send 10 WMAS to AU1bfnCAQAhPT2gAcJkL31fCWJixFFtH7RjRHZsvaThVoeNUckep", + }, + }, + { + user: "{{agent}}", + content: { + text: "I'll transfer 10 WMAS to that address right away. Let me process that for you.", + }, + }, + { + user: "{{agent}}", + content: { + text: "Successfully sent 10 WMAS tokens to AU1bfnCAQAhPT2gAcJkL31fCWJixFFtH7RjRHZsvaThVoeNUckep\n Operation id: O12fZa1oNL18s3ZV2PCXVYUmQz2cQrNqKfFaRsyJNFsAcGYxEAKD", + }, + }, + ], + [ + { + user: "{{user1}}", + content: { + text: "Send 10 DAI to domain.massa", + }, + }, + { + user: "{{agent}}", + content: { + text: "I'll transfer 10 DAI to domain.massa right away. Let me process that for you.", + }, + }, + { + user: "{{agent}}", + content: { + text: "Successfully sent 10 DAI tokens to AU1bfnCAQAhPT2gAcJkL31fCWJixFFtH7RjRHZsvaThVoeNUckep\n Operation id: O12fZa1oNL18s3ZV2PCXVYUmQz2cQrNqKfFaRsyJNFsAcGYxEAKD", + }, + }, + ], + ] as ActionExample[][], +} as Action; diff --git a/packages/plugin-massa/src/enviroment.ts b/packages/plugin-massa/src/enviroment.ts new file mode 100644 index 0000000000..0947d55f29 --- /dev/null +++ b/packages/plugin-massa/src/enviroment.ts @@ -0,0 +1,38 @@ +import type { IAgentRuntime } from "@elizaos/core"; +import { PublicApiUrl } from "@massalabs/massa-web3"; +import { z } from "zod"; + +export const massaEnvSchema = z.object({ + MASSA_PRIVATE_KEY: z.string().min(1, "Massa private key is required"), + MASSA_RPC_URL: z.string().min(1, "Massa RPC URL is required"), +}); + +export type MassaConfig = z.infer; + +export async function validateConfig( + runtime: IAgentRuntime +): Promise { + try { + const config = { + MASSA_PRIVATE_KEY: + runtime.getSetting("MASSA_PRIVATE_KEY") || + process.env.MASSA_PRIVATE_KEY, + MASSA_RPC_URL: + runtime.getSetting("MASSA_RPC_URL") || + process.env.MASSA_RPC_URL || + PublicApiUrl.Mainnet, + }; + + return massaEnvSchema.parse(config); + } catch (error) { + if (error instanceof z.ZodError) { + const errorMessages = error.errors + .map((err) => `${err.path.join(".")}: ${err.message}`) + .join("\n"); + throw new Error( + `Massa configuration validation failed:\n${errorMessages}` + ); + } + throw error; + } +} diff --git a/packages/plugin-massa/src/index.ts b/packages/plugin-massa/src/index.ts new file mode 100644 index 0000000000..a8dbf11372 --- /dev/null +++ b/packages/plugin-massa/src/index.ts @@ -0,0 +1,12 @@ +import type { Plugin } from "@elizaos/core"; +import transfer from "./actions/transfer"; + +export const massaPlugin: Plugin = { + name: "massa", + description: "Massa Plugin for Eliza", + actions: [transfer], + evaluators: [], + providers: [], +}; + +export default massaPlugin; diff --git a/packages/plugin-massa/src/utils/address.ts b/packages/plugin-massa/src/utils/address.ts new file mode 100644 index 0000000000..20001a3052 --- /dev/null +++ b/packages/plugin-massa/src/utils/address.ts @@ -0,0 +1,9 @@ +import { Address } from "@massalabs/massa-web3"; + +export const validateAddress = (address: string): Address | undefined => { + try { + return Address.fromString(address); + } catch (_e) { + return undefined; + } +}; diff --git a/packages/plugin-massa/src/utils/index.ts b/packages/plugin-massa/src/utils/index.ts new file mode 100644 index 0000000000..981a5fcba8 --- /dev/null +++ b/packages/plugin-massa/src/utils/index.ts @@ -0,0 +1 @@ +export * from "./mns"; diff --git a/packages/plugin-massa/src/utils/mns.ts b/packages/plugin-massa/src/utils/mns.ts new file mode 100644 index 0000000000..72c34ac7fe --- /dev/null +++ b/packages/plugin-massa/src/utils/mns.ts @@ -0,0 +1,15 @@ +import { CHAIN_ID, MNS, MNS_CONTRACTS, Provider } from "@massalabs/massa-web3"; + +export const getMnsTarget = async ( + provider: Provider, + name: string +): Promise => { + const networkInfos = await provider.networkInfos(); + const mnsContract = new MNS( + provider, + networkInfos.chainId === CHAIN_ID.Mainnet + ? MNS_CONTRACTS.mainnet + : MNS_CONTRACTS.buildnet + ); + return mnsContract.resolve(name); +}; diff --git a/packages/plugin-massa/tsconfig.json b/packages/plugin-massa/tsconfig.json new file mode 100644 index 0000000000..47216b2148 --- /dev/null +++ b/packages/plugin-massa/tsconfig.json @@ -0,0 +1,16 @@ +{ + "compilerOptions": { + "target": "ES2020", + "module": "ESNext", + "moduleResolution": "node", + "outDir": "dist", + "rootDir": "./src", + "strict": true, + "esModuleInterop": true, + "skipLibCheck": true, + "forceConsistentCasingInFileNames": true, + "typeRoots": ["./node_modules/@types", "./src/types"], + "declaration": true + }, + "include": ["src"] +} diff --git a/packages/plugin-massa/tsup.config.ts b/packages/plugin-massa/tsup.config.ts new file mode 100644 index 0000000000..56cb67c2b8 --- /dev/null +++ b/packages/plugin-massa/tsup.config.ts @@ -0,0 +1,12 @@ +import { defineConfig } from "tsup"; + +export default defineConfig({ + entry: ["src/index.ts"], + format: ["esm", "cjs"], + dts: true, + splitting: false, + sourcemap: true, + clean: true, + shims: true, + treeshake: true, +}); diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5a4683f236..44454eecd3 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -13,16 +13,16 @@ importers: dependencies: '@0glabs/0g-ts-sdk': specifier: 0.2.1 - version: 0.2.1(bufferutil@4.0.8)(ethers@6.13.4(bufferutil@4.0.8)(utf-8-validate@5.0.10))(utf-8-validate@5.0.10) + version: 0.2.1(bufferutil@4.0.8)(ethers@6.13.4(bufferutil@4.0.8)(utf-8-validate@6.0.5))(utf-8-validate@6.0.5) '@coinbase/coinbase-sdk': specifier: 0.10.0 - version: 0.10.0(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10)(zod@3.23.8) + version: 0.10.0(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@6.0.5)(zod@3.23.8) '@deepgram/sdk': specifier: ^3.9.0 - version: 3.9.0(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10) + version: 3.9.0(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@6.0.5) '@vitest/eslint-plugin': specifier: 1.0.1 - version: 1.0.1(@typescript-eslint/utils@8.16.0(eslint@9.16.0(jiti@2.4.2))(typescript@5.6.3))(eslint@9.16.0(jiti@2.4.2))(typescript@5.6.3)(vitest@2.1.5(@types/node@22.10.2)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.37.0)) + version: 1.0.1(@typescript-eslint/utils@8.16.0(eslint@9.16.0(jiti@2.4.2))(typescript@5.6.3))(eslint@9.16.0(jiti@2.4.2))(typescript@5.6.3)(vitest@2.1.5(@types/node@22.10.2)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@6.0.5))(terser@5.37.0)) amqplib: specifier: 0.10.5 version: 0.10.5 @@ -95,7 +95,7 @@ importers: version: 5.4.11(@types/node@22.10.2)(terser@5.37.0) vitest: specifier: 2.1.5 - version: 2.1.5(@types/node@22.10.2)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.37.0) + version: 2.1.5(@types/node@22.10.2)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@6.0.5))(terser@5.37.0) agent: dependencies: @@ -186,6 +186,9 @@ importers: '@elizaos/plugin-intiface': specifier: workspace:* version: link:../packages/plugin-intiface + '@elizaos/plugin-massa': + specifier: workspace:* + version: link:../packages/plugin-massa '@elizaos/plugin-multiversx': specifier: workspace:* version: link:../packages/plugin-multiversx @@ -227,7 +230,7 @@ importers: version: 1.3.0 ws: specifier: 8.18.0 - version: 8.18.0(bufferutil@4.0.8)(utf-8-validate@5.0.10) + version: 8.18.0(bufferutil@4.0.8)(utf-8-validate@6.0.5) yargs: specifier: 17.7.2 version: 17.7.2 @@ -489,7 +492,7 @@ importers: version: link:../core '@supabase/supabase-js': specifier: 2.46.2 - version: 2.46.2(bufferutil@4.0.8)(utf-8-validate@5.0.10) + version: 2.46.2(bufferutil@4.0.8)(utf-8-validate@6.0.5) whatwg-url: specifier: 7.1.0 version: 7.1.0 @@ -554,7 +557,7 @@ importers: version: 2.8.5 discord.js: specifier: 14.16.3 - version: 14.16.3(bufferutil@4.0.8)(utf-8-validate@5.0.10) + version: 14.16.3(bufferutil@4.0.8)(utf-8-validate@6.0.5) express: specifier: 4.21.1 version: 4.21.1 @@ -582,7 +585,11 @@ importers: version: 2.4.0 '@discordjs/voice': specifier: 0.17.0 +<<<<<<< HEAD version: 0.17.0(@discordjs/opus@https://codeload.github.com/discordjs/opus/tar.gz/31da49d8d2cc6c5a2ab1bfd332033ff7d5f9fb02(encoding@0.1.13))(bufferutil@4.0.8)(ffmpeg-static@5.2.0)(utf-8-validate@5.0.10) +======= + version: 0.17.0(@discordjs/opus@https://codeload.github.com/discordjs/opus/tar.gz/31da49d8d2cc6c5a2ab1bfd332033ff7d5f9fb02(encoding@0.1.13))(bufferutil@4.0.8)(ffmpeg-static@5.2.0)(utf-8-validate@6.0.5) +>>>>>>> 3537f9c1 (feat: add massa-plugin) '@elizaos/core': specifier: workspace:* version: link:../core @@ -591,7 +598,7 @@ importers: version: link:../plugin-node discord.js: specifier: 14.16.3 - version: 14.16.3(bufferutil@4.0.8)(utf-8-validate@5.0.10) + version: 14.16.3(bufferutil@4.0.8)(utf-8-validate@6.0.5) libsodium-wrappers: specifier: 0.7.15 version: 0.7.15 @@ -616,7 +623,11 @@ importers: version: link:../core '@neynar/nodejs-sdk': specifier: ^2.0.3 +<<<<<<< HEAD version: 2.6.1(bufferutil@4.0.8)(class-transformer@0.5.1)(encoding@0.1.13)(typescript@5.6.3)(utf-8-validate@5.0.10)(zod@3.23.8) +======= + version: 2.5.0(bufferutil@4.0.8)(class-transformer@0.5.1)(encoding@0.1.13)(typescript@5.6.3)(utf-8-validate@6.0.5)(zod@3.23.8) +>>>>>>> 3537f9c1 (feat: add massa-plugin) devDependencies: tsup: specifier: ^8.3.5 @@ -963,19 +974,20 @@ importers: dependencies: '@0glabs/0g-ts-sdk': specifier: 0.2.1 - version: 0.2.1(bufferutil@4.0.8)(ethers@6.13.4(bufferutil@4.0.8)(utf-8-validate@5.0.10))(utf-8-validate@5.0.10) + version: 0.2.1(bufferutil@4.0.8)(ethers@6.13.4(bufferutil@4.0.8)(utf-8-validate@6.0.5))(utf-8-validate@6.0.5) '@elizaos/core': specifier: workspace:* version: link:../core ethers: specifier: 6.13.4 - version: 6.13.4(bufferutil@4.0.8)(utf-8-validate@5.0.10) + version: 6.13.4(bufferutil@4.0.8)(utf-8-validate@6.0.5) tsup: specifier: 8.3.5 version: 8.3.5(@swc/core@1.10.1(@swc/helpers@0.5.15))(jiti@2.4.2)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.6.3)(yaml@2.6.1) packages/plugin-3d-generation: dependencies: +<<<<<<< HEAD '@elizaos/core': specifier: workspace:* version: link:../core @@ -1006,6 +1018,8 @@ importers: packages/plugin-aptos: dependencies: +======= +>>>>>>> 3537f9c1 (feat: add massa-plugin) '@aptos-labs/ts-sdk': specifier: ^1.26.0 version: 1.33.1 @@ -1029,7 +1043,7 @@ importers: version: 8.3.5(@swc/core@1.10.1(@swc/helpers@0.5.15))(jiti@2.4.2)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.6.3)(yaml@2.6.1) vitest: specifier: 2.1.4 - version: 2.1.4(@types/node@22.10.2)(jsdom@25.0.1(bufferutil@4.0.8)(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.2)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@6.0.5))(terser@5.37.0) whatwg-url: specifier: 7.1.0 version: 7.1.0 @@ -1097,7 +1111,7 @@ importers: version: link:../core cive: specifier: 0.7.1 - version: 0.7.1(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10) + version: 0.7.1(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@6.0.5) packages/plugin-cronoszkevm: dependencies: @@ -1261,22 +1275,22 @@ importers: version: link:../core '@goat-sdk/core': specifier: 0.3.8 - version: 0.3.8(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.6.3)(utf-8-validate@5.0.10) + version: 0.3.8(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.6.3)(utf-8-validate@6.0.5) '@goat-sdk/plugin-coingecko': specifier: 0.1.4 - version: 0.1.4(@goat-sdk/core@0.3.8(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.6.3)(utf-8-validate@5.0.10))(viem@2.21.53(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10)(zod@3.23.8)) + version: 0.1.4(@goat-sdk/core@0.3.8(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.6.3)(utf-8-validate@6.0.5))(viem@2.21.53(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@6.0.5)(zod@3.23.8)) '@goat-sdk/plugin-erc20': specifier: 0.1.7 - version: 0.1.7(@goat-sdk/core@0.3.8(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.6.3)(utf-8-validate@5.0.10))(viem@2.21.53(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10)(zod@3.23.8)) + version: 0.1.7(@goat-sdk/core@0.3.8(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.6.3)(utf-8-validate@6.0.5))(viem@2.21.53(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@6.0.5)(zod@3.23.8)) '@goat-sdk/wallet-viem': specifier: 0.1.3 - version: 0.1.3(@goat-sdk/core@0.3.8(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.6.3)(utf-8-validate@5.0.10))(viem@2.21.53(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10)(zod@3.23.8)) + version: 0.1.3(@goat-sdk/core@0.3.8(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.6.3)(utf-8-validate@6.0.5))(viem@2.21.53(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@6.0.5)(zod@3.23.8)) tsup: specifier: 8.3.5 version: 8.3.5(@swc/core@1.10.1(@swc/helpers@0.5.15))(jiti@2.4.2)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.6.3)(yaml@2.6.1) viem: specifier: 2.21.53 - version: 2.21.53(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10)(zod@3.23.8) + version: 2.21.53(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@6.0.5)(zod@3.23.8) whatwg-url: specifier: 7.1.0 version: 7.1.0 @@ -1331,7 +1345,7 @@ importers: version: link:../core buttplug: specifier: 3.2.2 - version: 3.2.2(bufferutil@4.0.8)(utf-8-validate@5.0.10) + version: 3.2.2(bufferutil@4.0.8)(utf-8-validate@6.0.5) net: specifier: 1.0.2 version: 1.0.2 @@ -1342,6 +1356,21 @@ importers: specifier: 7.1.0 version: 7.1.0 + packages/plugin-massa: + dependencies: + '@elizaos/core': + specifier: workspace:* + version: link:../core + '@massalabs/massa-web3': + specifier: ^5.0.1-dev + version: 5.0.1-dev.20241212140726 + tsup: + specifier: 8.3.5 + version: 8.3.5(@swc/core@1.10.1(@swc/helpers@0.5.15))(jiti@2.4.2)(postcss@8.4.49)(typescript@5.6.3)(yaml@2.6.1) + whatwg-url: + specifier: 7.1.0 + version: 7.1.0 + packages/plugin-multiversx: dependencies: '@elizaos/core': @@ -1367,7 +1396,7 @@ importers: version: 8.3.5(@swc/core@1.10.1(@swc/helpers@0.5.15))(jiti@2.4.2)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.6.3)(yaml@2.6.1) vitest: specifier: 2.1.5 - version: 2.1.5(@types/node@22.10.2)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.37.0) + version: 2.1.5(@types/node@22.10.2)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@6.0.5))(terser@5.37.0) whatwg-url: specifier: 7.1.0 version: 7.1.0 @@ -1677,7 +1706,11 @@ importers: dependencies: '@avnu/avnu-sdk': specifier: 2.1.1 +<<<<<<< HEAD version: 2.1.1(ethers@6.13.4(bufferutil@4.0.8)(utf-8-validate@5.0.10))(qs@6.13.1)(starknet@6.18.0(encoding@0.1.13)) +======= + version: 2.1.1(ethers@6.13.4(bufferutil@4.0.8)(utf-8-validate@6.0.5))(qs@6.13.1)(starknet@6.18.0(encoding@0.1.13)) +>>>>>>> 3537f9c1 (feat: add massa-plugin) '@elizaos/core': specifier: workspace:* version: link:../core @@ -1701,7 +1734,7 @@ importers: version: 1.4.0(starknet@6.18.0(encoding@0.1.13)) vitest: specifier: 2.1.5 - version: 2.1.5(@types/node@22.10.2)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.37.0) + version: 2.1.5(@types/node@22.10.2)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@6.0.5))(terser@5.37.0) whatwg-url: specifier: 7.1.0 version: 7.1.0 @@ -1719,13 +1752,13 @@ importers: version: 2.1.0 '@story-protocol/core-sdk': specifier: 1.2.0-rc.3 - version: 1.2.0-rc.3(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10)(zod@3.23.8) + version: 1.2.0-rc.3(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@6.0.5)(zod@3.23.8) tsup: specifier: 8.3.5 version: 8.3.5(@swc/core@1.10.1(@swc/helpers@0.5.15))(jiti@2.4.2)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.6.3)(yaml@2.6.1) viem: specifier: 2.21.54 - version: 2.21.54(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10)(zod@3.23.8) + version: 2.21.54(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@6.0.5)(zod@3.23.8) whatwg-url: specifier: 7.1.0 version: 7.1.0 @@ -1762,7 +1795,7 @@ importers: version: 8.3.5(@swc/core@1.10.1(@swc/helpers@0.5.15))(jiti@2.4.2)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.6.3)(yaml@2.6.1) vitest: specifier: 2.1.4 - version: 2.1.4(@types/node@22.10.2)(jsdom@25.0.1(bufferutil@4.0.8)(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.2)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@6.0.5))(terser@5.37.0) whatwg-url: specifier: 7.1.0 version: 7.1.0 @@ -1852,7 +1885,7 @@ importers: version: 11.0.3 vitest: specifier: 2.1.5 - version: 2.1.5(@types/node@22.10.2)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.37.0) + version: 2.1.5(@types/node@22.10.2)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@6.0.5))(terser@5.37.0) whatwg-url: specifier: 7.1.0 version: 7.1.0 @@ -5233,6 +5266,9 @@ packages: resolution: {integrity: sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==} hasBin: true + '@massalabs/massa-web3@5.0.1-dev.20241212140726': + resolution: {integrity: sha512-FlPS6U2ckTYXDlMsnoDHj+aMZJ/pCZt+aWnjMYgl6PNvuMN5nuqrr6c0ryUwF1w3wX1adCPYsyXcYeO7Purzqg==} + '@mdx-js/mdx@3.1.0': resolution: {integrity: sha512-/QxEhPAvGwbQmy1Px8F899L5Uc2KZ6JtXwlCgJmjSTBedwOZkByYcBG4GceIGPXRDsmfxhHazuS+hlOShRLeDw==} @@ -17106,6 +17142,9 @@ packages: secure-json-parse@2.7.0: resolution: {integrity: sha512-6aU+Rwsezw7VR8/nyvKTx8QpWH9FrcYiXXlqC4z5d5XQBDRqtbfsRjnwGyqbi3gddNtWHuEk9OANUotL26qKUw==} + secure-random@1.1.2: + resolution: {integrity: sha512-H2bdSKERKdBV1SwoqYm6C0y+9EA94v6SUBOWO8kDndc4NoUih7Dv6Tsgma7zO1lv27wIvjlD0ZpMQk7um5dheQ==} + seedrandom@3.0.5: resolution: {integrity: sha512-8OwmbklUNzwezjGInmZ+2clQmExQPvomqjL7LFqOYqtmuxRgQYqOD3mHaU+MvZn5FLUeVxVfQjwLZW/n/JFuqg==} @@ -18723,6 +18762,10 @@ packages: resolution: {integrity: sha512-Z6czzLq4u8fPOyx7TU6X3dvUZVvoJmxSQ+IcrlmagKhilxlhZgxPK6C5Jqbkw1IDUmFTM+cz9QDnnLTwDz/2gQ==} engines: {node: '>=6.14.2'} + utf-8-validate@6.0.5: + resolution: {integrity: sha512-EYZR+OpIXp9Y1eG1iueg8KRsY8TuT8VNgnanZ0uA3STqhHQTLwbl+WX76/9X5OY12yQubymBpaBSmMPkSTQcKA==} + engines: {node: '>=6.14.2'} + utfstring@2.0.2: resolution: {integrity: sha512-dlLwDU6nUrUVsUbA3bUQ6LzRpt8cmJFNCarbESKFqZGMdivOFmzapOlQq54ifHXB9zgR00lKpcpCo6CITG2bjQ==} @@ -18813,6 +18856,9 @@ packages: varint@5.0.2: resolution: {integrity: sha512-lKxKYG6H03yCZUpAGOPOsMcGxd1RHCu1iKvEHYDPmTyq2HueGhD73ssNBqqQWfvYs04G9iUFRvmAVLW20Jw6ow==} + varint@6.0.0: + resolution: {integrity: sha512-cXEIW6cfr15lFv563k4GuVuW/fiwjknytD37jIOLSdSWuOI6WnO/oKwmP2FQTU2l01LP8/M5TSAJpzUaGe3uWg==} + varuint-bitcoin@2.0.0: resolution: {integrity: sha512-6QZbU/rHO2ZQYpWFDALCDSRsXbAs1VOEmXAxtbtjLtKuMJ/FQ8YbhfxlaiKv5nklci0M6lZtlZyxo9Q+qNnyog==} @@ -19544,12 +19590,12 @@ packages: snapshots: - '@0glabs/0g-ts-sdk@0.2.1(bufferutil@4.0.8)(ethers@6.13.4(bufferutil@4.0.8)(utf-8-validate@5.0.10))(utf-8-validate@5.0.10)': + '@0glabs/0g-ts-sdk@0.2.1(bufferutil@4.0.8)(ethers@6.13.4(bufferutil@4.0.8)(utf-8-validate@6.0.5))(utf-8-validate@6.0.5)': dependencies: '@ethersproject/bytes': 5.7.0 '@ethersproject/keccak256': 5.7.0 - ethers: 6.13.4(bufferutil@4.0.8)(utf-8-validate@5.0.10) - open-jsonrpc-provider: 0.2.1(bufferutil@4.0.8)(utf-8-validate@5.0.10) + ethers: 6.13.4(bufferutil@4.0.8)(utf-8-validate@6.0.5) + open-jsonrpc-provider: 0.2.1(bufferutil@4.0.8)(utf-8-validate@6.0.5) transitivePeerDependencies: - bufferutil - debug @@ -19946,9 +19992,9 @@ snapshots: transitivePeerDependencies: - debug - '@avnu/avnu-sdk@2.1.1(ethers@6.13.4(bufferutil@4.0.8)(utf-8-validate@5.0.10))(qs@6.13.1)(starknet@6.18.0(encoding@0.1.13))': + '@avnu/avnu-sdk@2.1.1(ethers@6.13.4(bufferutil@4.0.8)(utf-8-validate@6.0.5))(qs@6.13.1)(starknet@6.18.0(encoding@0.1.13))': dependencies: - ethers: 6.13.4(bufferutil@4.0.8)(utf-8-validate@5.0.10) + ethers: 6.13.4(bufferutil@4.0.8)(utf-8-validate@6.0.5) qs: 6.13.1 starknet: 6.18.0(encoding@0.1.13) @@ -21498,7 +21544,7 @@ snapshots: transitivePeerDependencies: - encoding - '@coinbase/coinbase-sdk@0.10.0(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10)(zod@3.23.8)': + '@coinbase/coinbase-sdk@0.10.0(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@6.0.5)(zod@3.23.8)': dependencies: '@scure/bip32': 1.6.0 abitype: 1.0.8(typescript@5.6.3)(zod@3.23.8) @@ -21509,10 +21555,10 @@ snapshots: bip39: 3.1.0 decimal.js: 10.4.3 dotenv: 16.4.7 - ethers: 6.13.4(bufferutil@4.0.8)(utf-8-validate@5.0.10) + ethers: 6.13.4(bufferutil@4.0.8)(utf-8-validate@6.0.5) node-jose: 2.2.0 secp256k1: 5.0.1 - viem: 2.21.54(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10)(zod@3.23.8) + viem: 2.21.54(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@6.0.5)(zod@3.23.8) transitivePeerDependencies: - bufferutil - debug @@ -21953,14 +21999,14 @@ snapshots: dependencies: dayjs: 1.11.13 - '@deepgram/sdk@3.9.0(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10)': + '@deepgram/sdk@3.9.0(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@6.0.5)': dependencies: '@deepgram/captions': 1.2.0 '@types/node': 18.19.68 cross-fetch: 3.2.0(encoding@0.1.13) deepmerge: 4.3.1 events: 3.3.0 - ws: 8.18.0(bufferutil@4.0.8)(utf-8-validate@5.0.10) + ws: 8.18.0(bufferutil@4.0.8)(utf-8-validate@6.0.5) transitivePeerDependencies: - bufferutil - encoding @@ -22056,13 +22102,13 @@ snapshots: '@discordjs/util@1.1.1': {} - '@discordjs/voice@0.17.0(@discordjs/opus@https://codeload.github.com/discordjs/opus/tar.gz/31da49d8d2cc6c5a2ab1bfd332033ff7d5f9fb02(encoding@0.1.13))(bufferutil@4.0.8)(ffmpeg-static@5.2.0)(utf-8-validate@5.0.10)': + '@discordjs/voice@0.17.0(@discordjs/opus@https://codeload.github.com/discordjs/opus/tar.gz/31da49d8d2cc6c5a2ab1bfd332033ff7d5f9fb02(encoding@0.1.13))(bufferutil@4.0.8)(ffmpeg-static@5.2.0)(utf-8-validate@6.0.5)': dependencies: '@types/ws': 8.5.13 discord-api-types: 0.37.83 prism-media: 1.3.5(@discordjs/opus@https://codeload.github.com/discordjs/opus/tar.gz/31da49d8d2cc6c5a2ab1bfd332033ff7d5f9fb02(encoding@0.1.13))(ffmpeg-static@5.2.0) tslib: 2.8.1 - ws: 8.18.0(bufferutil@4.0.8)(utf-8-validate@5.0.10) + ws: 8.18.0(bufferutil@4.0.8)(utf-8-validate@6.0.5) transitivePeerDependencies: - '@discordjs/opus' - bufferutil @@ -22071,7 +22117,7 @@ snapshots: - opusscript - utf-8-validate - '@discordjs/ws@1.1.1(bufferutil@4.0.8)(utf-8-validate@5.0.10)': + '@discordjs/ws@1.1.1(bufferutil@4.0.8)(utf-8-validate@6.0.5)': dependencies: '@discordjs/collection': 2.1.1 '@discordjs/rest': 2.4.0 @@ -22081,7 +22127,7 @@ snapshots: '@vladfrangu/async_event_emitter': 2.4.6 discord-api-types: 0.37.83 tslib: 2.8.1 - ws: 8.18.0(bufferutil@4.0.8)(utf-8-validate@5.0.10) + ws: 8.18.0(bufferutil@4.0.8)(utf-8-validate@6.0.5) transitivePeerDependencies: - bufferutil - utf-8-validate @@ -23699,6 +23745,7 @@ snapshots: '@floating-ui/utils@0.2.8': {} +<<<<<<< HEAD '@fuel-ts/abi-coder@0.97.2(vitest@2.1.4(@types/node@22.10.2)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.37.0))': dependencies: '@fuel-ts/crypto': 0.97.2(vitest@2.1.4(@types/node@22.10.2)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.37.0)) @@ -23897,6 +23944,13 @@ snapshots: '@solana/web3.js': 1.95.5(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10) abitype: 1.0.8(typescript@5.6.3)(zod@3.23.8) viem: 2.21.54(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10)(zod@3.23.8) +======= + '@goat-sdk/core@0.3.8(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.6.3)(utf-8-validate@6.0.5)': + dependencies: + '@solana/web3.js': 1.95.5(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@6.0.5) + abitype: 1.0.7(typescript@5.6.3)(zod@3.23.8) + viem: 2.21.54(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@6.0.5)(zod@3.23.8) +>>>>>>> 3537f9c1 (feat: add massa-plugin) zod: 3.23.8 transitivePeerDependencies: - bufferutil @@ -23904,22 +23958,22 @@ snapshots: - typescript - utf-8-validate - '@goat-sdk/plugin-coingecko@0.1.4(@goat-sdk/core@0.3.8(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.6.3)(utf-8-validate@5.0.10))(viem@2.21.53(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10)(zod@3.23.8))': + '@goat-sdk/plugin-coingecko@0.1.4(@goat-sdk/core@0.3.8(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.6.3)(utf-8-validate@6.0.5))(viem@2.21.53(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@6.0.5)(zod@3.23.8))': dependencies: - '@goat-sdk/core': 0.3.8(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.6.3)(utf-8-validate@5.0.10) - viem: 2.21.53(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10)(zod@3.23.8) + '@goat-sdk/core': 0.3.8(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.6.3)(utf-8-validate@6.0.5) + viem: 2.21.53(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@6.0.5)(zod@3.23.8) zod: 3.23.8 - '@goat-sdk/plugin-erc20@0.1.7(@goat-sdk/core@0.3.8(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.6.3)(utf-8-validate@5.0.10))(viem@2.21.53(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10)(zod@3.23.8))': + '@goat-sdk/plugin-erc20@0.1.7(@goat-sdk/core@0.3.8(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.6.3)(utf-8-validate@6.0.5))(viem@2.21.53(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@6.0.5)(zod@3.23.8))': dependencies: - '@goat-sdk/core': 0.3.8(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.6.3)(utf-8-validate@5.0.10) - viem: 2.21.53(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10)(zod@3.23.8) + '@goat-sdk/core': 0.3.8(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.6.3)(utf-8-validate@6.0.5) + viem: 2.21.53(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@6.0.5)(zod@3.23.8) zod: 3.23.8 - '@goat-sdk/wallet-viem@0.1.3(@goat-sdk/core@0.3.8(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.6.3)(utf-8-validate@5.0.10))(viem@2.21.53(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10)(zod@3.23.8))': + '@goat-sdk/wallet-viem@0.1.3(@goat-sdk/core@0.3.8(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.6.3)(utf-8-validate@6.0.5))(viem@2.21.53(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@6.0.5)(zod@3.23.8))': dependencies: - '@goat-sdk/core': 0.3.8(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.6.3)(utf-8-validate@5.0.10) - viem: 2.21.53(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10)(zod@3.23.8) + '@goat-sdk/core': 0.3.8(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.6.3)(utf-8-validate@6.0.5) + viem: 2.21.53(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@6.0.5)(zod@3.23.8) '@google-cloud/vertexai@1.9.2(encoding@0.1.13)': dependencies: @@ -24865,6 +24919,22 @@ snapshots: - supports-color optional: true + '@massalabs/massa-web3@5.0.1-dev.20241212140726': + dependencies: + '@noble/ed25519': 1.7.3 + '@noble/hashes': 1.6.1 + bs58check: 4.0.0 + decimal.js: 10.4.3 + dotenv: 16.4.7 + eventemitter3: 5.0.1 + lodash.isequal: 4.5.0 + secure-random: 1.1.2 + tslib: 2.8.1 + varint: 6.0.0 + optionalDependencies: + bufferutil: 4.0.8 + utf-8-validate: 6.0.5 + '@mdx-js/mdx@3.1.0(acorn@8.14.0)': dependencies: '@types/estree': 1.0.6 @@ -25254,11 +25324,15 @@ snapshots: transitivePeerDependencies: - encoding +<<<<<<< HEAD '@neynar/nodejs-sdk@2.6.1(bufferutil@4.0.8)(class-transformer@0.5.1)(encoding@0.1.13)(typescript@5.6.3)(utf-8-validate@5.0.10)(zod@3.23.8)': +======= + '@neynar/nodejs-sdk@2.5.0(bufferutil@4.0.8)(class-transformer@0.5.1)(encoding@0.1.13)(typescript@5.6.3)(utf-8-validate@6.0.5)(zod@3.23.8)': +>>>>>>> 3537f9c1 (feat: add massa-plugin) dependencies: '@openapitools/openapi-generator-cli': 2.15.3(class-transformer@0.5.1)(encoding@0.1.13) semver: 7.6.3 - viem: 2.21.54(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10)(zod@3.23.8) + viem: 2.21.54(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@6.0.5)(zod@3.23.8) transitivePeerDependencies: - '@nestjs/microservices' - '@nestjs/platform-express' @@ -27705,6 +27779,28 @@ snapshots: - encoding - utf-8-validate + '@solana/web3.js@1.95.5(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@6.0.5)': + dependencies: + '@babel/runtime': 7.26.0 + '@noble/curves': 1.7.0 + '@noble/hashes': 1.6.1 + '@solana/buffer-layout': 4.0.1 + agentkeepalive: 4.5.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.8)(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.95.8(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10)': dependencies: '@babel/runtime': 7.26.0 @@ -27820,14 +27916,14 @@ snapshots: '@starknet-io/types-js@0.7.10': {} - '@story-protocol/core-sdk@1.2.0-rc.3(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10)(zod@3.23.8)': + '@story-protocol/core-sdk@1.2.0-rc.3(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@6.0.5)(zod@3.23.8)': dependencies: abitype: 0.10.3(typescript@5.6.3)(zod@3.23.8) axios: 1.7.9(debug@4.4.0) bs58: 6.0.0 dotenv: 16.4.7 multiformats: 9.9.0 - viem: 2.21.54(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10)(zod@3.23.8) + viem: 2.21.54(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@6.0.5)(zod@3.23.8) transitivePeerDependencies: - bufferutil - debug @@ -27853,12 +27949,12 @@ snapshots: dependencies: '@supabase/node-fetch': 2.6.15 - '@supabase/realtime-js@2.10.9(bufferutil@4.0.8)(utf-8-validate@5.0.10)': + '@supabase/realtime-js@2.10.9(bufferutil@4.0.8)(utf-8-validate@6.0.5)': dependencies: '@supabase/node-fetch': 2.6.15 '@types/phoenix': 1.6.6 '@types/ws': 8.5.13 - ws: 8.18.0(bufferutil@4.0.8)(utf-8-validate@5.0.10) + ws: 8.18.0(bufferutil@4.0.8)(utf-8-validate@6.0.5) transitivePeerDependencies: - bufferutil - utf-8-validate @@ -27867,13 +27963,13 @@ snapshots: dependencies: '@supabase/node-fetch': 2.6.15 - '@supabase/supabase-js@2.46.2(bufferutil@4.0.8)(utf-8-validate@5.0.10)': + '@supabase/supabase-js@2.46.2(bufferutil@4.0.8)(utf-8-validate@6.0.5)': dependencies: '@supabase/auth-js': 2.65.1 '@supabase/functions-js': 2.4.3 '@supabase/node-fetch': 2.6.15 '@supabase/postgrest-js': 1.16.3 - '@supabase/realtime-js': 2.10.9(bufferutil@4.0.8)(utf-8-validate@5.0.10) + '@supabase/realtime-js': 2.10.9(bufferutil@4.0.8)(utf-8-validate@6.0.5) '@supabase/storage-js': 2.7.1 transitivePeerDependencies: - bufferutil @@ -28867,13 +28963,13 @@ snapshots: transitivePeerDependencies: - supports-color - '@vitest/eslint-plugin@1.0.1(@typescript-eslint/utils@8.16.0(eslint@9.16.0(jiti@2.4.2))(typescript@5.6.3))(eslint@9.16.0(jiti@2.4.2))(typescript@5.6.3)(vitest@2.1.5(@types/node@22.10.2)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.37.0))': + '@vitest/eslint-plugin@1.0.1(@typescript-eslint/utils@8.16.0(eslint@9.16.0(jiti@2.4.2))(typescript@5.6.3))(eslint@9.16.0(jiti@2.4.2))(typescript@5.6.3)(vitest@2.1.5(@types/node@22.10.2)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@6.0.5))(terser@5.37.0))': dependencies: eslint: 9.16.0(jiti@2.4.2) optionalDependencies: '@typescript-eslint/utils': 8.16.0(eslint@9.16.0(jiti@2.4.2))(typescript@5.6.3) typescript: 5.6.3 - vitest: 2.1.5(@types/node@22.10.2)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.37.0) + vitest: 2.1.5(@types/node@22.10.2)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@6.0.5))(terser@5.37.0) '@vitest/expect@2.1.4': dependencies: @@ -30582,12 +30678,12 @@ snapshots: dependencies: streamsearch: 1.1.0 - buttplug@3.2.2(bufferutil@4.0.8)(utf-8-validate@5.0.10): + buttplug@3.2.2(bufferutil@4.0.8)(utf-8-validate@6.0.5): dependencies: class-transformer: 0.5.1 eventemitter3: 5.0.1 reflect-metadata: 0.2.2 - ws: 8.18.0(bufferutil@4.0.8)(utf-8-validate@5.0.10) + ws: 8.18.0(bufferutil@4.0.8)(utf-8-validate@6.0.5) transitivePeerDependencies: - bufferutil - utf-8-validate @@ -30888,13 +30984,13 @@ snapshots: dependencies: consola: 3.3.1 - cive@0.7.1(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10): + cive@0.7.1(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@6.0.5): dependencies: '@noble/curves': 1.7.0 '@noble/hashes': 1.6.1 '@scure/bip32': 1.6.0 '@scure/bip39': 1.5.0 - viem: 2.21.54(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10)(zod@3.23.8) + viem: 2.21.54(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@6.0.5)(zod@3.23.8) zod: 3.23.8 transitivePeerDependencies: - bufferutil @@ -32204,14 +32300,14 @@ snapshots: discord-api-types@0.37.97: {} - discord.js@14.16.3(bufferutil@4.0.8)(utf-8-validate@5.0.10): + discord.js@14.16.3(bufferutil@4.0.8)(utf-8-validate@6.0.5): dependencies: '@discordjs/builders': 1.9.0 '@discordjs/collection': 1.5.3 '@discordjs/formatters': 0.5.0 '@discordjs/rest': 2.4.0 '@discordjs/util': 1.1.1 - '@discordjs/ws': 1.1.1(bufferutil@4.0.8)(utf-8-validate@5.0.10) + '@discordjs/ws': 1.1.1(bufferutil@4.0.8)(utf-8-validate@6.0.5) '@sapphire/snowflake': 3.5.3 discord-api-types: 0.37.100 fast-deep-equal: 3.1.3 @@ -33101,6 +33197,19 @@ snapshots: - bufferutil - utf-8-validate + ethers@6.13.4(bufferutil@4.0.8)(utf-8-validate@6.0.5): + dependencies: + '@adraffy/ens-normalize': 1.10.1 + '@noble/curves': 1.2.0 + '@noble/hashes': 1.3.2 + '@types/node': 22.7.5 + aes-js: 4.0.0-beta.5 + tslib: 2.7.0 + ws: 8.17.1(bufferutil@4.0.8)(utf-8-validate@6.0.5) + transitivePeerDependencies: + - bufferutil + - utf-8-validate + ethjs-util@0.1.6: dependencies: is-hex-prefixed: 1.0.0 @@ -35143,6 +35252,10 @@ snapshots: dependencies: ws: 7.5.10(bufferutil@4.0.8)(utf-8-validate@5.0.10) + isomorphic-ws@4.0.1(ws@7.5.10(bufferutil@4.0.8)(utf-8-validate@6.0.5)): + dependencies: + ws: 7.5.10(bufferutil@4.0.8)(utf-8-validate@6.0.5) + isomorphic-ws@5.0.0(ws@8.18.0(bufferutil@4.0.8)(utf-8-validate@5.0.10)): dependencies: ws: 8.18.0(bufferutil@4.0.8)(utf-8-validate@5.0.10) @@ -35151,6 +35264,10 @@ snapshots: dependencies: ws: 8.18.0(bufferutil@4.0.8)(utf-8-validate@5.0.10) + isows@1.0.6(ws@8.18.0(bufferutil@4.0.8)(utf-8-validate@6.0.5)): + dependencies: + ws: 8.18.0(bufferutil@4.0.8)(utf-8-validate@6.0.5) + isstream@0.1.2: {} istanbul-lib-coverage@3.2.2: {} @@ -35241,6 +35358,24 @@ snapshots: - bufferutil - utf-8-validate + jayson@4.1.3(bufferutil@4.0.8)(utf-8-validate@6.0.5): + dependencies: + '@types/connect': 3.4.38 + '@types/node': 12.20.55 + '@types/ws': 7.4.7 + JSONStream: 1.3.5 + commander: 2.20.3 + delay: 5.0.0 + es6-promisify: 5.0.0 + eyes: 0.1.8 + isomorphic-ws: 4.0.1(ws@7.5.10(bufferutil@4.0.8)(utf-8-validate@6.0.5)) + json-stringify-safe: 5.0.1 + uuid: 8.3.2 + ws: 7.5.10(bufferutil@4.0.8)(utf-8-validate@6.0.5) + transitivePeerDependencies: + - bufferutil + - utf-8-validate + jest-changed-files@29.7.0: dependencies: execa: 5.1.1 @@ -35895,6 +36030,37 @@ snapshots: - supports-color - utf-8-validate + jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@6.0.5): + dependencies: + cssstyle: 4.1.0 + data-urls: 5.0.0 + decimal.js: 10.4.3 + form-data: 4.0.1 + html-encoding-sniffer: 4.0.0 + http-proxy-agent: 7.0.2 + https-proxy-agent: 7.0.6 + is-potential-custom-element-name: 1.0.1 + nwsapi: 2.2.16 + parse5: 7.2.1 + rrweb-cssom: 0.7.1 + saxes: 6.0.0 + symbol-tree: 3.2.4 + tough-cookie: 5.0.0 + w3c-xmlserializer: 5.0.0 + webidl-conversions: 7.0.0 + whatwg-encoding: 3.1.1 + whatwg-mimetype: 4.0.0 + whatwg-url: 14.1.0 + ws: 8.18.0(bufferutil@4.0.8)(utf-8-validate@6.0.5) + xml-name-validator: 5.0.0 + optionalDependencies: + canvas: 2.11.2(encoding@0.1.13) + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + optional: true + jsesc@3.0.2: {} jsesc@3.1.0: {} @@ -38120,12 +38286,12 @@ snapshots: platform: 1.3.6 protobufjs: 7.4.0 - open-jsonrpc-provider@0.2.1(bufferutil@4.0.8)(utf-8-validate@5.0.10): + open-jsonrpc-provider@0.2.1(bufferutil@4.0.8)(utf-8-validate@6.0.5): dependencies: axios: 0.27.2 reconnecting-websocket: 4.4.0 websocket: 1.0.35 - ws: 8.18.0(bufferutil@4.0.8)(utf-8-validate@5.0.10) + ws: 8.18.0(bufferutil@4.0.8)(utf-8-validate@6.0.5) transitivePeerDependencies: - bufferutil - debug @@ -40639,6 +40805,8 @@ snapshots: secure-json-parse@2.7.0: {} + secure-random@1.1.2: {} + seedrandom@3.0.5: {} selderee@0.11.0: @@ -42501,6 +42669,11 @@ snapshots: dependencies: node-gyp-build: 4.8.4 + utf-8-validate@6.0.5: + dependencies: + node-gyp-build: 4.8.4 + optional: true + utfstring@2.0.2: {} util-deprecate@1.0.2: {} @@ -42568,6 +42741,8 @@ snapshots: varint@5.0.2: {} + varint@6.0.0: {} + varuint-bitcoin@2.0.0: dependencies: uint8array-tools: 0.0.8 @@ -42645,6 +42820,24 @@ snapshots: - utf-8-validate - zod + viem@2.21.53(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@6.0.5)(zod@3.23.8): + dependencies: + '@noble/curves': 1.6.0 + '@noble/hashes': 1.5.0 + '@scure/bip32': 1.5.0 + '@scure/bip39': 1.4.0 + abitype: 1.0.6(typescript@5.6.3)(zod@3.23.8) + isows: 1.0.6(ws@8.18.0(bufferutil@4.0.8)(utf-8-validate@6.0.5)) + ox: 0.1.2(typescript@5.6.3)(zod@3.23.8) + webauthn-p256: 0.0.10 + ws: 8.18.0(bufferutil@4.0.8)(utf-8-validate@6.0.5) + optionalDependencies: + typescript: 5.6.3 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + - zod + viem@2.21.54(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10)(zod@3.23.8): dependencies: '@noble/curves': 1.7.0 @@ -42663,6 +42856,24 @@ snapshots: - utf-8-validate - zod + viem@2.21.54(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@6.0.5)(zod@3.23.8): + dependencies: + '@noble/curves': 1.7.0 + '@noble/hashes': 1.6.1 + '@scure/bip32': 1.6.0 + '@scure/bip39': 1.5.0 + abitype: 1.0.7(typescript@5.6.3)(zod@3.23.8) + isows: 1.0.6(ws@8.18.0(bufferutil@4.0.8)(utf-8-validate@6.0.5)) + ox: 0.1.2(typescript@5.6.3)(zod@3.23.8) + webauthn-p256: 0.0.10 + ws: 8.18.0(bufferutil@4.0.8)(utf-8-validate@6.0.5) + optionalDependencies: + typescript: 5.6.3 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + - zod + vite-node@2.1.4(@types/node@22.10.2)(terser@5.37.0): dependencies: cac: 6.7.14 @@ -42786,7 +42997,43 @@ snapshots: - supports-color - terser - vitest@2.1.5(@types/node@22.10.2)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.37.0): + vitest@2.1.4(@types/node@22.10.2)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@6.0.5))(terser@5.37.0): + dependencies: + '@vitest/expect': 2.1.4 + '@vitest/mocker': 2.1.4(vite@5.4.11(@types/node@22.10.2)(terser@5.37.0)) + '@vitest/pretty-format': 2.1.8 + '@vitest/runner': 2.1.4 + '@vitest/snapshot': 2.1.4 + '@vitest/spy': 2.1.4 + '@vitest/utils': 2.1.4 + chai: 5.1.2 + debug: 4.4.0(supports-color@8.1.1) + expect-type: 1.1.0 + magic-string: 0.30.17 + pathe: 1.1.2 + std-env: 3.8.0 + tinybench: 2.9.0 + tinyexec: 0.3.1 + tinypool: 1.0.2 + tinyrainbow: 1.2.0 + vite: 5.4.11(@types/node@22.10.2)(terser@5.37.0) + vite-node: 2.1.4(@types/node@22.10.2)(terser@5.37.0) + why-is-node-running: 2.3.0 + optionalDependencies: + '@types/node': 22.10.2 + jsdom: 25.0.1(bufferutil@4.0.8)(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@2.1.5(@types/node@22.10.2)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@6.0.5))(terser@5.37.0): dependencies: '@vitest/expect': 2.1.5 '@vitest/mocker': 2.1.5(vite@5.4.11(@types/node@22.10.2)(terser@5.37.0)) @@ -42810,7 +43057,7 @@ snapshots: why-is-node-running: 2.3.0 optionalDependencies: '@types/node': 22.10.2 - jsdom: 25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10) + jsdom: 25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@6.0.5) transitivePeerDependencies: - less - lightningcss @@ -43525,6 +43772,11 @@ snapshots: bufferutil: 4.0.8 utf-8-validate: 5.0.10 + ws@7.5.10(bufferutil@4.0.8)(utf-8-validate@6.0.5): + optionalDependencies: + bufferutil: 4.0.8 + utf-8-validate: 6.0.5 + ws@8.13.0(bufferutil@4.0.8)(utf-8-validate@5.0.10): optionalDependencies: bufferutil: 4.0.8 @@ -43535,11 +43787,21 @@ snapshots: bufferutil: 4.0.8 utf-8-validate: 5.0.10 + ws@8.17.1(bufferutil@4.0.8)(utf-8-validate@6.0.5): + optionalDependencies: + bufferutil: 4.0.8 + utf-8-validate: 6.0.5 + ws@8.18.0(bufferutil@4.0.8)(utf-8-validate@5.0.10): optionalDependencies: bufferutil: 4.0.8 utf-8-validate: 5.0.10 + ws@8.18.0(bufferutil@4.0.8)(utf-8-validate@6.0.5): + optionalDependencies: + bufferutil: 4.0.8 + utf-8-validate: 6.0.5 + wtf_wikipedia@10.3.2(encoding@0.1.13): dependencies: isomorphic-unfetch: 3.1.0(encoding@0.1.13)