diff --git a/.env.example b/.env.example
index 41d9589f621..37714174998 100644
--- a/.env.example
+++ b/.env.example
@@ -91,10 +91,34 @@ STARKNET_ADDRESS=
STARKNET_PRIVATE_KEY=
STARKNET_RPC_URL=
+
# Farcaster
-FARCASTER_HUB_URL=hub.pinata.cloud
+FARCASTER_HUB_URL=
FARCASTER_FID=
FARCASTER_PRIVATE_KEY=
+# Coinbase
+COINBASE_COMMERCE_KEY= # from coinbase developer portal
+COINBASE_API_KEY= # from coinbase developer portal
+COINBASE_PRIVATE_KEY= # from coinbase developer portal
+# if not configured it will be generated and written to runtime.character.settings.secrets.COINBASE_GENERATED_WALLET_ID and runtime.character.settings.secrets.COINBASE_GENERATED_WALLET_HEX_SEED
+COINBASE_GENERATED_WALLET_ID= # not your address but the wallet id from generating a wallet through the plugin
+COINBASE_GENERATED_WALLET_HEX_SEED= # not your address but the wallet hex seed from generating a wallet through the plugin and calling export
+
+# Conflux Configuration
+CONFLUX_CORE_PRIVATE_KEY=
+CONFLUX_CORE_SPACE_RPC_URL=
+CONFLUX_ESPACE_PRIVATE_KEY=
+CONFLUX_ESPACE_RPC_URL=
+CONFLUX_MEME_CONTRACT_ADDRESS=
+
+#ZeroG
+ZEROG_INDEXER_RPC=
+ZEROG_EVM_RPC=
+ZEROG_PRIVATE_KEY=
+ZEROG_FLOW_ADDRESS=
+
+
# Coinbase Commerce
COINBASE_COMMERCE_KEY=
+
diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml
index b9947abf7bf..b86208b8f87 100644
--- a/.github/workflows/ci.yaml
+++ b/.github/workflows/ci.yaml
@@ -33,8 +33,8 @@ jobs:
echo "TEST_DATABASE_CLIENT=sqlite" > packages/core/.env.test
echo "NODE_ENV=test" >> packages/core/.env.test
- # - name: Run tests
- # run: cd packages/core && pnpm test // YOLO FOR NOW
+ - name: Run tests
+ run: cd packages/core && pnpm test
- name: Build packages
run: pnpm run build
diff --git a/.gitignore b/.gitignore
index fdecd8b95f2..c1bf4fc6dc1 100644
--- a/.gitignore
+++ b/.gitignore
@@ -40,3 +40,5 @@ characters/
packages/core/src/providers/cache
packages/core/src/providers/cache/*
cache/*
+packages/plugin-coinbase/src/plugins/transactions.csv
+packages/plugin-coinbase/package-lock.json
diff --git a/.husky/commit-msg b/.husky/commit-msg
deleted file mode 100755
index 88770231272..00000000000
--- a/.husky/commit-msg
+++ /dev/null
@@ -1,12 +0,0 @@
-#!/usr/bin/env sh
-
-# Inform the user about commit message format requirements
-echo "┌──────────────────────────────────────────────────────────────┐"
-echo "│ ℹ️ Commit message must follow the format: 'type: description' │"
-echo "│ Valid types: feat, fix, docs, style, refactor, test, chore │"
-echo "│ Example: 'feat: add new login feature' │"
-echo "└──────────────────────────────────────────────────────────────┘"
-echo ""
-
-# Run commitlint to validate the commit message
-npx --no -- commitlint --edit ${1}
diff --git a/.husky/pre-commit b/.husky/pre-commit
deleted file mode 100755
index afb45bee423..00000000000
--- a/.husky/pre-commit
+++ /dev/null
@@ -1,2 +0,0 @@
-pnpm run prettier-check
-pnpm run lint
\ No newline at end of file
diff --git a/agent/package.json b/agent/package.json
index 2eb890ba8a5..f9756b5d435 100644
--- a/agent/package.json
+++ b/agent/package.json
@@ -21,17 +21,19 @@
"@ai16z/client-twitter": "workspace:*",
"@ai16z/eliza": "workspace:*",
"@ai16z/plugin-bootstrap": "workspace:*",
+ "@ai16z/plugin-conflux": "workspace:*",
"@ai16z/plugin-image-generation": "workspace:*",
"@ai16z/plugin-node": "workspace:*",
"@ai16z/plugin-solana": "workspace:*",
+ "@ai16z/plugin-0g": "workspace:*",
"@ai16z/plugin-starknet": "workspace:*",
"@ai16z/plugin-coinbase": "workspace:*",
- "readline": "^1.3.0",
- "ws": "^8.18.0",
+ "readline": "1.3.0",
+ "ws": "8.18.0",
"yargs": "17.7.2"
},
"devDependencies": {
"ts-node": "10.9.2",
- "tsup": "^8.3.5"
+ "tsup": "8.3.5"
}
}
diff --git a/agent/src/index.ts b/agent/src/index.ts
index 1d8f1c0817f..0077beb8064 100644
--- a/agent/src/index.ts
+++ b/agent/src/index.ts
@@ -23,9 +23,14 @@ import {
validateCharacterConfig,
} from "@ai16z/eliza";
import { bootstrapPlugin } from "@ai16z/plugin-bootstrap";
+import { confluxPlugin } from "@ai16z/plugin-conflux";
import { solanaPlugin } from "@ai16z/plugin-solana";
+import { zgPlugin } from "@ai16z/plugin-0g";
import { nodePlugin } from "@ai16z/plugin-node";
-import { coinbaseCommercePlugin } from "@ai16z/plugin-coinbase";
+import {
+ coinbaseCommercePlugin,
+ coinbaseMassPaymentsPlugin,
+} from "@ai16z/plugin-coinbase";
import Database from "better-sqlite3";
import fs from "fs";
import readline from "readline";
@@ -178,6 +183,7 @@ function initializeDatabase(dataDir: string) {
if (process.env.POSTGRES_URL) {
const db = new PostgresDatabaseAdapter({
connectionString: process.env.POSTGRES_URL,
+ parseInputs: true,
});
return db;
} else {
@@ -229,6 +235,10 @@ export async function initializeClients(
return clients;
}
+function getSecret(character: Character, secret: string) {
+ return character.settings.secrets?.[secret] || process.env[secret];
+}
+
export function createAgent(
character: Character,
db: IDatabaseAdapter,
@@ -248,12 +258,19 @@ export function createAgent(
character,
plugins: [
bootstrapPlugin,
+ getSecret(character, "CONFLUX_CORE_PRIVATE_KEY")
+ ? confluxPlugin
+ : null,
nodePlugin,
- character.settings.secrets?.WALLET_PUBLIC_KEY ? solanaPlugin : null,
- character.settings.secrets?.COINBASE_COMMERCE_KEY ||
- process.env.COINBASE_COMMERCE_KEY
+ getSecret(character, "WALLET_PUBLIC_KEY") ? solanaPlugin : null,
+ getSecret(character, "ZEROG_PRIVATE_KEY") ? zgPlugin : null,
+ getSecret(character, "COINBASE_COMMERCE_KEY")
? coinbaseCommercePlugin
: null,
+ getSecret(character, "COINBASE_API_KEY") &&
+ getSecret(character, "COINBASE_PRIVATE_KEY")
+ ? coinbaseMassPaymentsPlugin
+ : null,
].filter(Boolean),
providers: [],
actions: [],
@@ -275,7 +292,7 @@ function intializeDbCache(character: Character, db: IDatabaseCacheAdapter) {
return cache;
}
-async function startAgent(character: Character, directClient: DirectClient) {
+async function startAgent(character: Character, directClient: any) {
try {
character.id ??= stringToUuid(character.name);
character.username ??= character.name;
@@ -325,7 +342,7 @@ const startAgents = async () => {
try {
for (const character of characters) {
- await startAgent(character, directClient as DirectClient);
+ await startAgent(character, directClient as any);
}
} catch (error) {
elizaLogger.error("Error starting agents:", error);
diff --git a/client/README.md b/client/README.md
deleted file mode 100644
index b6897e3f0a9..00000000000
--- a/client/README.md
+++ /dev/null
@@ -1,50 +0,0 @@
-# React + TypeScript + Vite
-
-This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.
-
-Currently, two official plugins are available:
-
-- [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/README.md) uses [Babel](https://babeljs.io/) for Fast Refresh
-- [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react-swc) uses [SWC](https://swc.rs/) for Fast Refresh
-
-## Expanding the ESLint configuration
-
-If you are developing a production application, we recommend updating the configuration to enable type aware lint rules:
-
-- Configure the top-level `parserOptions` property like this:
-
-```js
-export default tseslint.config({
- languageOptions: {
- // other options...
- parserOptions: {
- project: ["./tsconfig.node.json", "./tsconfig.app.json"],
- tsconfigRootDir: import.meta.dirname,
- },
- },
-});
-```
-
-- Replace `tseslint.configs.recommended` to `tseslint.configs.recommendedTypeChecked` or `tseslint.configs.strictTypeChecked`
-- Optionally add `...tseslint.configs.stylisticTypeChecked`
-- Install [eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react) and update the config:
-
-```js
-// eslint.config.js
-import react from "eslint-plugin-react";
-
-export default tseslint.config({
- // Set the react version
- settings: { react: { version: "18.3" } },
- plugins: {
- // Add the react plugin
- react,
- },
- rules: {
- // other rules...
- // Enable its recommended rules
- ...react.configs.recommended.rules,
- ...react.configs["jsx-runtime"].rules,
- },
-});
-```
diff --git a/client/index.html b/client/index.html
index e0ef3be8332..342f8872933 100644
--- a/client/index.html
+++ b/client/index.html
@@ -4,7 +4,7 @@
-
Vite + React + TS
+ Eliza
diff --git a/client/package.json b/client/package.json
index aad8c3c91f0..3c467263ece 100644
--- a/client/package.json
+++ b/client/package.json
@@ -1,5 +1,5 @@
{
- "name": "eliza",
+ "name": "eliza-client",
"private": true,
"version": "0.0.0",
"type": "module",
@@ -11,32 +11,37 @@
},
"dependencies": {
"@ai16z/eliza": "workspace:*",
- "@radix-ui/react-slot": "^1.1.0",
- "class-variance-authority": "^0.7.0",
+ "@radix-ui/react-dialog": "1.1.2",
+ "@radix-ui/react-separator": "1.1.0",
+ "@radix-ui/react-slot": "1.1.0",
+ "@radix-ui/react-tooltip": "1.1.4",
+ "@tanstack/react-query": "5.61.0",
+ "class-variance-authority": "0.7.0",
"clsx": "2.1.0",
- "lucide-react": "^0.460.0",
- "react": "^18.3.1",
- "react-dom": "^18.3.1",
- "tailwind-merge": "^2.5.4",
- "tailwindcss-animate": "^1.0.7",
- "vite-plugin-top-level-await": "^1.4.4",
- "vite-plugin-wasm": "^3.3.0"
+ "lucide-react": "0.460.0",
+ "react": "18.3.1",
+ "react-dom": "18.3.1",
+ "react-router-dom": "6.22.1",
+ "tailwind-merge": "2.5.4",
+ "tailwindcss-animate": "1.0.7",
+ "vite-plugin-top-level-await": "1.4.4",
+ "vite-plugin-wasm": "3.3.0"
},
"devDependencies": {
- "@eslint/js": "^9.13.0",
+ "@eslint/js": "9.15.0",
"@types/node": "22.8.4",
"@types/react": "18.3.12",
"@types/react-dom": "18.3.1",
- "@vitejs/plugin-react": "^4.3.3",
- "autoprefixer": "^10.4.20",
- "eslint": "^9.13.0",
- "eslint-plugin-react-hooks": "^5.0.0",
- "eslint-plugin-react-refresh": "^0.4.14",
- "globals": "^15.11.0",
- "postcss": "^8.4.49",
- "tailwindcss": "^3.4.15",
+ "@vitejs/plugin-react": "4.3.3",
+ "autoprefixer": "10.4.20",
+ "eslint": "9.13.0",
+ "eslint-plugin-react-hooks": "5.0.0",
+ "eslint-plugin-react-refresh": "0.4.14",
+ "globals": "15.11.0",
+ "postcss": "8.4.49",
+ "tailwindcss": "3.4.15",
"typescript": "~5.6.2",
- "typescript-eslint": "^8.11.0",
- "vite": "^5.4.10"
+ "typescript-eslint": "8.11.0",
+ "vite": "link:@tanstack/router-plugin/vite"
}
}
diff --git a/client/src/Agent.tsx b/client/src/Agent.tsx
new file mode 100644
index 00000000000..f3094f14ebb
--- /dev/null
+++ b/client/src/Agent.tsx
@@ -0,0 +1,10 @@
+export default function Agent() {
+ return (
+
+
+ Select an option from the sidebar to configure, view, or chat
+ with your ELIZA agent
+
+
+ );
+}
diff --git a/client/src/Agents.tsx b/client/src/Agents.tsx
new file mode 100644
index 00000000000..06e2c56b495
--- /dev/null
+++ b/client/src/Agents.tsx
@@ -0,0 +1,47 @@
+import { useQuery } from "@tanstack/react-query";
+import { Button } from "@/components/ui/button";
+import { useNavigate } from "react-router-dom";
+import "./App.css";
+
+type Agent = {
+ id: string;
+ name: string;
+};
+
+function Agents() {
+ const navigate = useNavigate();
+ const { data: agents, isLoading } = useQuery({
+ queryKey: ["agents"],
+ queryFn: async () => {
+ const res = await fetch("/api/agents");
+ const data = await res.json();
+ return data.agents as Agent[];
+ },
+ });
+
+ return (
+
+
Select your agent:
+
+ {isLoading ? (
+
Loading agents...
+ ) : (
+
+ {agents?.map((agent) => (
+
+ ))}
+
+ )}
+
+ );
+}
+
+export default Agents;
diff --git a/client/src/App.css b/client/src/App.css
index f44fb79ad33..d6055f0d020 100644
--- a/client/src/App.css
+++ b/client/src/App.css
@@ -1,7 +1,6 @@
#root {
max-width: 1280px;
margin: 0 auto;
- padding: 2rem;
text-align: center;
}
diff --git a/client/src/App.tsx b/client/src/App.tsx
index f48537f0cbb..c5b0826f12e 100644
--- a/client/src/App.tsx
+++ b/client/src/App.tsx
@@ -1,71 +1,10 @@
-import { useState } from "react";
-import { Input } from "@/components/ui/input";
-import { Button } from "@/components/ui/button";
import "./App.css";
-import { stringToUuid } from "@ai16z/eliza";
-
-type TextResponse = {
- text: string;
- user: string;
-};
+import Agents from "./Agents";
function App() {
- const [input, setInput] = useState("");
- const [response, setResponse] = useState([]);
- const [loading, setLoading] = useState(false);
-
- const handleSubmit = async (e: React.FormEvent) => {
- e.preventDefault();
- setLoading(true);
-
- try {
- const res = await fetch(`/api/${stringToUuid("Eliza")}/message`, {
- method: "POST",
- headers: {
- "Content-Type": "application/json",
- },
- body: JSON.stringify({
- text: input,
- userId: "user",
- roomId: `default-room-${stringToUuid("Eliza")}`,
- }),
- });
-
- const data: TextResponse[] = await res.json();
-
- console.log(data);
- setResponse(data);
- setInput("");
- } catch (error) {
- console.error("Error:", error);
- setResponse([{ text: "An error occurred", user: "system" }]);
- } finally {
- setLoading(false);
- }
- };
-
return (
-
Chat with Eliza
-
-
- {(loading || response) && (
-
- {response.map((r) => (
-
{r.text}
- ))}
-
- )}
+
);
}
diff --git a/client/src/Character.tsx b/client/src/Character.tsx
new file mode 100644
index 00000000000..bdb53882adf
--- /dev/null
+++ b/client/src/Character.tsx
@@ -0,0 +1,7 @@
+export default function Character() {
+ return (
+
+ );
+}
diff --git a/client/src/Chat.tsx b/client/src/Chat.tsx
new file mode 100644
index 00000000000..b32cc0b83ed
--- /dev/null
+++ b/client/src/Chat.tsx
@@ -0,0 +1,104 @@
+import { useState } from "react";
+import { useParams } from "react-router-dom";
+import { useMutation } from "@tanstack/react-query";
+import { Input } from "@/components/ui/input";
+import { Button } from "@/components/ui/button";
+import "./App.css";
+
+type TextResponse = {
+ text: string;
+ user: string;
+};
+
+export default function Chat() {
+ const { agentId } = useParams();
+ const [input, setInput] = useState("");
+ const [messages, setMessages] = useState([]);
+
+ const mutation = useMutation({
+ mutationFn: async (text: string) => {
+ const res = await fetch(`/api/${agentId}/message`, {
+ method: "POST",
+ headers: {
+ "Content-Type": "application/json",
+ },
+ body: JSON.stringify({
+ text,
+ userId: "user",
+ roomId: `default-room-${agentId}`,
+ }),
+ });
+ return res.json() as Promise;
+ },
+ onSuccess: (data) => {
+ setMessages((prev) => [...prev, ...data]);
+ },
+ });
+
+ const handleSubmit = async (e: React.FormEvent) => {
+ e.preventDefault();
+ if (!input.trim()) return;
+
+ // Add user message immediately to state
+ const userMessage: TextResponse = {
+ text: input,
+ user: "user",
+ };
+ setMessages((prev) => [...prev, userMessage]);
+
+ mutation.mutate(input);
+ setInput("");
+ };
+
+ return (
+
+
+
+ {messages.length > 0 ? (
+ messages.map((message, index) => (
+
+ ))
+ ) : (
+
+ No messages yet. Start a conversation!
+
+ )}
+
+
+
+
+
+ );
+}
diff --git a/client/src/Layout.tsx b/client/src/Layout.tsx
new file mode 100644
index 00000000000..70c79f74032
--- /dev/null
+++ b/client/src/Layout.tsx
@@ -0,0 +1,12 @@
+import { SidebarProvider } from "@/components/ui/sidebar";
+import { AppSidebar } from "@/components/app-sidebar";
+import { Outlet } from "react-router-dom";
+
+export default function Layout() {
+ return (
+
+
+
+
+ );
+}
diff --git a/client/src/components/app-sidebar.tsx b/client/src/components/app-sidebar.tsx
new file mode 100644
index 00000000000..5245ad8febd
--- /dev/null
+++ b/client/src/components/app-sidebar.tsx
@@ -0,0 +1,56 @@
+import { Calendar, Home, Inbox, Search, Settings } from "lucide-react";
+import { useParams } from "react-router-dom";
+
+import {
+ Sidebar,
+ SidebarContent,
+ SidebarGroup,
+ SidebarGroupContent,
+ SidebarGroupLabel,
+ SidebarMenu,
+ SidebarMenuButton,
+ SidebarMenuItem,
+ SidebarTrigger,
+} from "@/components/ui/sidebar";
+
+// Menu items.
+const items = [
+ {
+ title: "Chat",
+ url: "chat",
+ icon: Inbox,
+ },
+ {
+ title: "Character Overview",
+ url: "character",
+ icon: Calendar,
+ },
+];
+
+export function AppSidebar() {
+ const { agentId } = useParams();
+
+ return (
+
+
+
+ Application
+
+
+ {items.map((item) => (
+
+
+
+
+ {item.title}
+
+
+
+ ))}
+
+
+
+
+
+ );
+}
diff --git a/client/src/components/ui/separator.tsx b/client/src/components/ui/separator.tsx
new file mode 100644
index 00000000000..2af4ec891eb
--- /dev/null
+++ b/client/src/components/ui/separator.tsx
@@ -0,0 +1,33 @@
+"use client";
+
+import * as React from "react";
+import * as SeparatorPrimitive from "@radix-ui/react-separator";
+
+import { cn } from "@/lib/utils";
+
+const Separator = React.forwardRef<
+ React.ElementRef,
+ React.ComponentPropsWithoutRef
+>(
+ (
+ { className, orientation = "horizontal", decorative = true, ...props },
+ ref
+ ) => (
+
+ )
+);
+Separator.displayName = SeparatorPrimitive.Root.displayName;
+
+export { Separator };
diff --git a/client/src/components/ui/sheet.tsx b/client/src/components/ui/sheet.tsx
new file mode 100644
index 00000000000..e18e295c73c
--- /dev/null
+++ b/client/src/components/ui/sheet.tsx
@@ -0,0 +1,136 @@
+import * as React from "react";
+import * as SheetPrimitive from "@radix-ui/react-dialog";
+import { cva, type VariantProps } from "class-variance-authority";
+import { X } from "lucide-react";
+
+import { cn } from "@/lib/utils";
+
+const Sheet = SheetPrimitive.Root;
+
+const SheetTrigger = SheetPrimitive.Trigger;
+
+const SheetClose = SheetPrimitive.Close;
+
+const SheetPortal = SheetPrimitive.Portal;
+
+const SheetOverlay = React.forwardRef<
+ React.ElementRef,
+ React.ComponentPropsWithoutRef
+>(({ className, ...props }, ref) => (
+
+));
+SheetOverlay.displayName = SheetPrimitive.Overlay.displayName;
+
+const sheetVariants = cva(
+ "fixed z-50 gap-4 bg-background p-6 shadow-lg transition ease-in-out data-[state=closed]:duration-300 data-[state=open]:duration-500 data-[state=open]:animate-in data-[state=closed]:animate-out",
+ {
+ variants: {
+ side: {
+ top: "inset-x-0 top-0 border-b data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top",
+ bottom: "inset-x-0 bottom-0 border-t data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom",
+ left: "inset-y-0 left-0 h-full w-3/4 border-r data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left sm:max-w-sm",
+ right: "inset-y-0 right-0 h-full w-3/4 border-l data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right sm:max-w-sm",
+ },
+ },
+ defaultVariants: {
+ side: "right",
+ },
+ }
+);
+
+interface SheetContentProps
+ extends React.ComponentPropsWithoutRef,
+ VariantProps {}
+
+const SheetContent = React.forwardRef<
+ React.ElementRef,
+ SheetContentProps
+>(({ side = "right", className, children, ...props }, ref) => (
+
+
+
+
+
+ Close
+
+ {children}
+
+
+));
+SheetContent.displayName = SheetPrimitive.Content.displayName;
+
+const SheetHeader = ({
+ className,
+ ...props
+}: React.HTMLAttributes) => (
+
+);
+SheetHeader.displayName = "SheetHeader";
+
+const SheetFooter = ({
+ className,
+ ...props
+}: React.HTMLAttributes) => (
+
+);
+SheetFooter.displayName = "SheetFooter";
+
+const SheetTitle = React.forwardRef<
+ React.ElementRef,
+ React.ComponentPropsWithoutRef
+>(({ className, ...props }, ref) => (
+
+));
+SheetTitle.displayName = SheetPrimitive.Title.displayName;
+
+const SheetDescription = React.forwardRef<
+ React.ElementRef,
+ React.ComponentPropsWithoutRef
+>(({ className, ...props }, ref) => (
+
+));
+SheetDescription.displayName = SheetPrimitive.Description.displayName;
+
+export {
+ Sheet,
+ SheetPortal,
+ SheetOverlay,
+ SheetTrigger,
+ SheetClose,
+ SheetContent,
+ SheetHeader,
+ SheetFooter,
+ SheetTitle,
+ SheetDescription,
+};
diff --git a/client/src/components/ui/sidebar.tsx b/client/src/components/ui/sidebar.tsx
new file mode 100644
index 00000000000..ab5862ab35a
--- /dev/null
+++ b/client/src/components/ui/sidebar.tsx
@@ -0,0 +1,786 @@
+import * as React from "react";
+import { Slot } from "@radix-ui/react-slot";
+import { VariantProps, cva } from "class-variance-authority";
+import { PanelLeft } from "lucide-react";
+
+import { useIsMobile } from "@/hooks/use-mobile";
+import { cn } from "@/lib/utils";
+import { Button } from "@/components/ui/button";
+import { Input } from "@/components/ui/input";
+import { Separator } from "@/components/ui/separator";
+import { Sheet, SheetContent } from "@/components/ui/sheet";
+import { Skeleton } from "@/components/ui/skeleton";
+import {
+ Tooltip,
+ TooltipContent,
+ TooltipProvider,
+ TooltipTrigger,
+} from "@/components/ui/tooltip";
+
+const SIDEBAR_COOKIE_NAME = "sidebar:state";
+const SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7;
+const SIDEBAR_WIDTH = "16rem";
+const SIDEBAR_WIDTH_MOBILE = "18rem";
+const SIDEBAR_WIDTH_ICON = "3rem";
+const SIDEBAR_KEYBOARD_SHORTCUT = "b";
+
+type SidebarContext = {
+ state: "expanded" | "collapsed";
+ open: boolean;
+ setOpen: (open: boolean) => void;
+ openMobile: boolean;
+ setOpenMobile: (open: boolean) => void;
+ isMobile: boolean;
+ toggleSidebar: () => void;
+};
+
+const SidebarContext = React.createContext(null);
+
+function useSidebar() {
+ const context = React.useContext(SidebarContext);
+ if (!context) {
+ throw new Error("useSidebar must be used within a SidebarProvider.");
+ }
+
+ return context;
+}
+
+const SidebarProvider = React.forwardRef<
+ HTMLDivElement,
+ React.ComponentProps<"div"> & {
+ defaultOpen?: boolean;
+ open?: boolean;
+ onOpenChange?: (open: boolean) => void;
+ }
+>(
+ (
+ {
+ defaultOpen = true,
+ open: openProp,
+ onOpenChange: setOpenProp,
+ className,
+ style,
+ children,
+ ...props
+ },
+ ref
+ ) => {
+ const isMobile = useIsMobile();
+ const [openMobile, setOpenMobile] = React.useState(false);
+
+ // This is the internal state of the sidebar.
+ // We use openProp and setOpenProp for control from outside the component.
+ const [_open, _setOpen] = React.useState(defaultOpen);
+ const open = openProp ?? _open;
+ const setOpen = React.useCallback(
+ (value: boolean | ((value: boolean) => boolean)) => {
+ const openState =
+ typeof value === "function" ? value(open) : value;
+ if (setOpenProp) {
+ setOpenProp(openState);
+ } else {
+ _setOpen(openState);
+ }
+
+ // This sets the cookie to keep the sidebar state.
+ document.cookie = `${SIDEBAR_COOKIE_NAME}=${openState}; path=/; max-age=${SIDEBAR_COOKIE_MAX_AGE}`;
+ },
+ [setOpenProp, open]
+ );
+
+ // Helper to toggle the sidebar.
+ const toggleSidebar = React.useCallback(() => {
+ return isMobile
+ ? setOpenMobile((open) => !open)
+ : setOpen((open) => !open);
+ }, [isMobile, setOpen, setOpenMobile]);
+
+ // Adds a keyboard shortcut to toggle the sidebar.
+ React.useEffect(() => {
+ const handleKeyDown = (event: KeyboardEvent) => {
+ if (
+ event.key === SIDEBAR_KEYBOARD_SHORTCUT &&
+ (event.metaKey || event.ctrlKey)
+ ) {
+ event.preventDefault();
+ toggleSidebar();
+ }
+ };
+
+ window.addEventListener("keydown", handleKeyDown);
+ return () => window.removeEventListener("keydown", handleKeyDown);
+ }, [toggleSidebar]);
+
+ // We add a state so that we can do data-state="expanded" or "collapsed".
+ // This makes it easier to style the sidebar with Tailwind classes.
+ const state = open ? "expanded" : "collapsed";
+
+ const contextValue = React.useMemo(
+ () => ({
+ state,
+ open,
+ setOpen,
+ isMobile,
+ openMobile,
+ setOpenMobile,
+ toggleSidebar,
+ }),
+ [
+ state,
+ open,
+ setOpen,
+ isMobile,
+ openMobile,
+ setOpenMobile,
+ toggleSidebar,
+ ]
+ );
+
+ return (
+
+
+
+ {children}
+
+
+
+ );
+ }
+);
+SidebarProvider.displayName = "SidebarProvider";
+
+const Sidebar = React.forwardRef<
+ HTMLDivElement,
+ React.ComponentProps<"div"> & {
+ side?: "left" | "right";
+ variant?: "sidebar" | "floating" | "inset";
+ collapsible?: "offcanvas" | "icon" | "none";
+ }
+>(
+ (
+ {
+ side = "left",
+ variant = "sidebar",
+ collapsible = "offcanvas",
+ className,
+ children,
+ ...props
+ },
+ ref
+ ) => {
+ const { isMobile, state, openMobile, setOpenMobile } = useSidebar();
+
+ if (collapsible === "none") {
+ return (
+
+ {children}
+
+ );
+ }
+
+ if (isMobile) {
+ return (
+
+
+
+ {children}
+
+
+
+ );
+ }
+
+ return (
+
+ {/* This is what handles the sidebar gap on desktop */}
+
+
+
+ );
+ }
+);
+Sidebar.displayName = "Sidebar";
+
+const SidebarTrigger = React.forwardRef<
+ React.ElementRef,
+ React.ComponentProps
+>(({ className, onClick, ...props }, ref) => {
+ const { toggleSidebar } = useSidebar();
+
+ return (
+
+ );
+});
+SidebarTrigger.displayName = "SidebarTrigger";
+
+const SidebarRail = React.forwardRef<
+ HTMLButtonElement,
+ React.ComponentProps<"button">
+>(({ className, ...props }, ref) => {
+ const { toggleSidebar } = useSidebar();
+
+ return (
+
+ );
+});
+SidebarRail.displayName = "SidebarRail";
+
+const SidebarInset = React.forwardRef<
+ HTMLDivElement,
+ React.ComponentProps<"main">
+>(({ className, ...props }, ref) => {
+ return (
+
+ );
+});
+SidebarInset.displayName = "SidebarInset";
+
+const SidebarInput = React.forwardRef<
+ React.ElementRef,
+ React.ComponentProps
+>(({ className, ...props }, ref) => {
+ return (
+
+ );
+});
+SidebarInput.displayName = "SidebarInput";
+
+const SidebarHeader = React.forwardRef<
+ HTMLDivElement,
+ React.ComponentProps<"div">
+>(({ className, ...props }, ref) => {
+ return (
+
+ );
+});
+SidebarHeader.displayName = "SidebarHeader";
+
+const SidebarFooter = React.forwardRef<
+ HTMLDivElement,
+ React.ComponentProps<"div">
+>(({ className, ...props }, ref) => {
+ return (
+
+ );
+});
+SidebarFooter.displayName = "SidebarFooter";
+
+const SidebarSeparator = React.forwardRef<
+ React.ElementRef,
+ React.ComponentProps
+>(({ className, ...props }, ref) => {
+ return (
+
+ );
+});
+SidebarSeparator.displayName = "SidebarSeparator";
+
+const SidebarContent = React.forwardRef<
+ HTMLDivElement,
+ React.ComponentProps<"div">
+>(({ className, ...props }, ref) => {
+ return (
+
+ );
+});
+SidebarContent.displayName = "SidebarContent";
+
+const SidebarGroup = React.forwardRef<
+ HTMLDivElement,
+ React.ComponentProps<"div">
+>(({ className, ...props }, ref) => {
+ return (
+
+ );
+});
+SidebarGroup.displayName = "SidebarGroup";
+
+const SidebarGroupLabel = React.forwardRef<
+ HTMLDivElement,
+ React.ComponentProps<"div"> & { asChild?: boolean }
+>(({ className, asChild = false, ...props }, ref) => {
+ const Comp = asChild ? Slot : "div";
+
+ return (
+ svg]:size-4 [&>svg]:shrink-0",
+ "group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0",
+ className
+ )}
+ {...props}
+ />
+ );
+});
+SidebarGroupLabel.displayName = "SidebarGroupLabel";
+
+const SidebarGroupAction = React.forwardRef<
+ HTMLButtonElement,
+ React.ComponentProps<"button"> & { asChild?: boolean }
+>(({ className, asChild = false, ...props }, ref) => {
+ const Comp = asChild ? Slot : "button";
+
+ return (
+ svg]:size-4 [&>svg]:shrink-0",
+ // Increases the hit area of the button on mobile.
+ "after:absolute after:-inset-2 after:md:hidden",
+ "group-data-[collapsible=icon]:hidden",
+ className
+ )}
+ {...props}
+ />
+ );
+});
+SidebarGroupAction.displayName = "SidebarGroupAction";
+
+const SidebarGroupContent = React.forwardRef<
+ HTMLDivElement,
+ React.ComponentProps<"div">
+>(({ className, ...props }, ref) => (
+
+));
+SidebarGroupContent.displayName = "SidebarGroupContent";
+
+const SidebarMenu = React.forwardRef<
+ HTMLUListElement,
+ React.ComponentProps<"ul">
+>(({ className, ...props }, ref) => (
+
+));
+SidebarMenu.displayName = "SidebarMenu";
+
+const SidebarMenuItem = React.forwardRef<
+ HTMLLIElement,
+ React.ComponentProps<"li">
+>(({ className, ...props }, ref) => (
+
+));
+SidebarMenuItem.displayName = "SidebarMenuItem";
+
+const sidebarMenuButtonVariants = cva(
+ "peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm outline-none ring-sidebar-ring transition-[width,height,padding] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 group-has-[[data-sidebar=menu-action]]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-sidebar-accent data-[active=true]:font-medium data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground group-data-[collapsible=icon]:!size-8 group-data-[collapsible=icon]:!p-2 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0",
+ {
+ variants: {
+ variant: {
+ default:
+ "hover:bg-sidebar-accent hover:text-sidebar-accent-foreground",
+ outline:
+ "bg-background shadow-[0_0_0_1px_hsl(var(--sidebar-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]",
+ },
+ size: {
+ default: "h-8 text-sm",
+ sm: "h-7 text-xs",
+ lg: "h-12 text-sm group-data-[collapsible=icon]:!p-0",
+ },
+ },
+ defaultVariants: {
+ variant: "default",
+ size: "default",
+ },
+ }
+);
+
+const SidebarMenuButton = React.forwardRef<
+ HTMLButtonElement,
+ React.ComponentProps<"button"> & {
+ asChild?: boolean;
+ isActive?: boolean;
+ tooltip?: string | React.ComponentProps;
+ } & VariantProps
+>(
+ (
+ {
+ asChild = false,
+ isActive = false,
+ variant = "default",
+ size = "default",
+ tooltip,
+ className,
+ ...props
+ },
+ ref
+ ) => {
+ const Comp = asChild ? Slot : "button";
+ const { isMobile, state } = useSidebar();
+
+ const button = (
+
+ );
+
+ if (!tooltip) {
+ return button;
+ }
+
+ if (typeof tooltip === "string") {
+ tooltip = {
+ children: tooltip,
+ };
+ }
+
+ return (
+
+ {button}
+
+
+ );
+ }
+);
+SidebarMenuButton.displayName = "SidebarMenuButton";
+
+const SidebarMenuAction = React.forwardRef<
+ HTMLButtonElement,
+ React.ComponentProps<"button"> & {
+ asChild?: boolean;
+ showOnHover?: boolean;
+ }
+>(({ className, asChild = false, showOnHover = false, ...props }, ref) => {
+ const Comp = asChild ? Slot : "button";
+
+ return (
+ svg]:size-4 [&>svg]:shrink-0",
+ // Increases the hit area of the button on mobile.
+ "after:absolute after:-inset-2 after:md:hidden",
+ "peer-data-[size=sm]/menu-button:top-1",
+ "peer-data-[size=default]/menu-button:top-1.5",
+ "peer-data-[size=lg]/menu-button:top-2.5",
+ "group-data-[collapsible=icon]:hidden",
+ showOnHover &&
+ "group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 data-[state=open]:opacity-100 peer-data-[active=true]/menu-button:text-sidebar-accent-foreground md:opacity-0",
+ className
+ )}
+ {...props}
+ />
+ );
+});
+SidebarMenuAction.displayName = "SidebarMenuAction";
+
+const SidebarMenuBadge = React.forwardRef<
+ HTMLDivElement,
+ React.ComponentProps<"div">
+>(({ className, ...props }, ref) => (
+
+));
+SidebarMenuBadge.displayName = "SidebarMenuBadge";
+
+const SidebarMenuSkeleton = React.forwardRef<
+ HTMLDivElement,
+ React.ComponentProps<"div"> & {
+ showIcon?: boolean;
+ }
+>(({ className, showIcon = false, ...props }, ref) => {
+ // Random width between 50 to 90%.
+ const width = React.useMemo(() => {
+ return `${Math.floor(Math.random() * 40) + 50}%`;
+ }, []);
+
+ return (
+
+ {showIcon && (
+
+ )}
+
+
+ );
+});
+SidebarMenuSkeleton.displayName = "SidebarMenuSkeleton";
+
+const SidebarMenuSub = React.forwardRef<
+ HTMLUListElement,
+ React.ComponentProps<"ul">
+>(({ className, ...props }, ref) => (
+
+));
+SidebarMenuSub.displayName = "SidebarMenuSub";
+
+const SidebarMenuSubItem = React.forwardRef<
+ HTMLLIElement,
+ React.ComponentProps<"li">
+>(({ ...props }, ref) => );
+SidebarMenuSubItem.displayName = "SidebarMenuSubItem";
+
+const SidebarMenuSubButton = React.forwardRef<
+ HTMLAnchorElement,
+ React.ComponentProps<"a"> & {
+ asChild?: boolean;
+ size?: "sm" | "md";
+ isActive?: boolean;
+ }
+>(({ asChild = false, size = "md", isActive, className, ...props }, ref) => {
+ const Comp = asChild ? Slot : "a";
+
+ return (
+ span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0 [&>svg]:text-sidebar-accent-foreground",
+ "data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground",
+ size === "sm" && "text-xs",
+ size === "md" && "text-sm",
+ "group-data-[collapsible=icon]:hidden",
+ className
+ )}
+ {...props}
+ />
+ );
+});
+SidebarMenuSubButton.displayName = "SidebarMenuSubButton";
+
+export {
+ Sidebar,
+ SidebarContent,
+ SidebarFooter,
+ SidebarGroup,
+ SidebarGroupAction,
+ SidebarGroupContent,
+ SidebarGroupLabel,
+ SidebarHeader,
+ SidebarInput,
+ SidebarInset,
+ SidebarMenu,
+ SidebarMenuAction,
+ SidebarMenuBadge,
+ SidebarMenuButton,
+ SidebarMenuItem,
+ SidebarMenuSkeleton,
+ SidebarMenuSub,
+ SidebarMenuSubButton,
+ SidebarMenuSubItem,
+ SidebarProvider,
+ SidebarRail,
+ SidebarSeparator,
+ SidebarTrigger,
+ useSidebar,
+};
diff --git a/client/src/components/ui/skeleton.tsx b/client/src/components/ui/skeleton.tsx
new file mode 100644
index 00000000000..ff991180f69
--- /dev/null
+++ b/client/src/components/ui/skeleton.tsx
@@ -0,0 +1,15 @@
+import { cn } from "@/lib/utils";
+
+function Skeleton({
+ className,
+ ...props
+}: React.HTMLAttributes) {
+ return (
+
+ );
+}
+
+export { Skeleton };
diff --git a/client/src/components/ui/tooltip.tsx b/client/src/components/ui/tooltip.tsx
new file mode 100644
index 00000000000..521ff4db27e
--- /dev/null
+++ b/client/src/components/ui/tooltip.tsx
@@ -0,0 +1,32 @@
+"use client";
+
+import * as React from "react";
+import * as TooltipPrimitive from "@radix-ui/react-tooltip";
+
+import { cn } from "@/lib/utils";
+
+const TooltipProvider = TooltipPrimitive.Provider;
+
+const Tooltip = TooltipPrimitive.Root;
+
+const TooltipTrigger = TooltipPrimitive.Trigger;
+
+const TooltipContent = React.forwardRef<
+ React.ElementRef,
+ React.ComponentPropsWithoutRef
+>(({ className, sideOffset = 4, ...props }, ref) => (
+
+
+
+));
+TooltipContent.displayName = TooltipPrimitive.Content.displayName;
+
+export { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider };
diff --git a/client/src/hooks/use-mobile.tsx b/client/src/hooks/use-mobile.tsx
new file mode 100644
index 00000000000..e172bb3fed0
--- /dev/null
+++ b/client/src/hooks/use-mobile.tsx
@@ -0,0 +1,23 @@
+import * as React from "react";
+
+const MOBILE_BREAKPOINT = 768;
+
+export function useIsMobile() {
+ const [isMobile, setIsMobile] = React.useState(
+ undefined
+ );
+
+ React.useEffect(() => {
+ const mql = window.matchMedia(
+ `(max-width: ${MOBILE_BREAKPOINT - 1}px)`
+ );
+ const onChange = () => {
+ setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);
+ };
+ mql.addEventListener("change", onChange);
+ setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);
+ return () => mql.removeEventListener("change", onChange);
+ }, []);
+
+ return !!isMobile;
+}
diff --git a/client/src/index.css b/client/src/index.css
index afc95589b40..1ecdbdd9be6 100644
--- a/client/src/index.css
+++ b/client/src/index.css
@@ -29,6 +29,14 @@
--chart-3: 197 37% 24%;
--chart-4: 43 74% 66%;
--chart-5: 27 87% 67%;
+ --sidebar-background: 0 0% 98%;
+ --sidebar-foreground: 240 5.3% 26.1%;
+ --sidebar-primary: 240 5.9% 10%;
+ --sidebar-primary-foreground: 0 0% 98%;
+ --sidebar-accent: 240 4.8% 95.9%;
+ --sidebar-accent-foreground: 240 5.9% 10%;
+ --sidebar-border: 220 13% 91%;
+ --sidebar-ring: 217.2 91.2% 59.8%;
}
.dark {
@@ -56,6 +64,14 @@
--chart-3: 30 80% 55%;
--chart-4: 280 65% 60%;
--chart-5: 340 75% 55%;
+ --sidebar-background: 240 5.9% 10%;
+ --sidebar-foreground: 240 4.8% 95.9%;
+ --sidebar-primary: 224.3 76.3% 48%;
+ --sidebar-primary-foreground: 0 0% 100%;
+ --sidebar-accent: 240 3.7% 15.9%;
+ --sidebar-accent-foreground: 240 4.8% 95.9%;
+ --sidebar-border: 240 3.7% 15.9%;
+ --sidebar-ring: 217.2 91.2% 59.8%;
}
}
@@ -67,3 +83,27 @@
@apply bg-background text-foreground;
}
}
+
+@layer base {
+ :root {
+ --sidebar-background: 0 0% 98%;
+ --sidebar-foreground: 240 5.3% 26.1%;
+ --sidebar-primary: 240 5.9% 10%;
+ --sidebar-primary-foreground: 0 0% 98%;
+ --sidebar-accent: 240 4.8% 95.9%;
+ --sidebar-accent-foreground: 240 5.9% 10%;
+ --sidebar-border: 220 13% 91%;
+ --sidebar-ring: 217.2 91.2% 59.8%;
+ }
+
+ .dark {
+ --sidebar-background: 240 5.9% 10%;
+ --sidebar-foreground: 240 4.8% 95.9%;
+ --sidebar-primary: 224.3 76.3% 48%;
+ --sidebar-primary-foreground: 0 0% 100%;
+ --sidebar-accent: 240 3.7% 15.9%;
+ --sidebar-accent-foreground: 240 4.8% 95.9%;
+ --sidebar-border: 240 3.7% 15.9%;
+ --sidebar-ring: 217.2 91.2% 59.8%;
+ }
+}
diff --git a/client/src/main.tsx b/client/src/main.tsx
index 1e008043f6b..9b1aa69de2d 100644
--- a/client/src/main.tsx
+++ b/client/src/main.tsx
@@ -1,10 +1,17 @@
import { StrictMode } from "react";
import { createRoot } from "react-dom/client";
import "./index.css";
-import App from "./App.tsx";
+
+import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
+import { RouterProvider } from "react-router-dom";
+import { router } from "./router.tsx";
+// Create a client
+const queryClient = new QueryClient();
createRoot(document.getElementById("root")!).render(
-
+
+
+
);
diff --git a/client/src/router.tsx b/client/src/router.tsx
new file mode 100644
index 00000000000..3127e13fc7d
--- /dev/null
+++ b/client/src/router.tsx
@@ -0,0 +1,32 @@
+// In your router configuration file (e.g., App.jsx or router.jsx)
+import { createBrowserRouter } from "react-router-dom";
+import Agents from "./Agents";
+import Agent from "./Agent"; // We'll create this component
+import Layout from "./Layout";
+import Chat from "./Chat";
+import Character from "./Character";
+
+export const router = createBrowserRouter([
+ {
+ path: "/",
+ element: ,
+ },
+ {
+ path: "/:agentId",
+ element: ,
+ children: [
+ {
+ path: "", // This matches /:agentId exactly
+ element: ,
+ },
+ {
+ path: "chat", // This matches /:agentId/chat
+ element: ,
+ },
+ {
+ path: "character", // This matches /:agentId/chat
+ element: ,
+ },
+ ],
+ },
+]);
diff --git a/client/tailwind.config.js b/client/tailwind.config.js
index 295d4283663..d049a57827a 100644
--- a/client/tailwind.config.js
+++ b/client/tailwind.config.js
@@ -53,5 +53,5 @@ export default {
},
},
},
- plugins: [require("tailwindcss-animate")],
+ plugins: [],
};
diff --git a/docs/api/classes/AgentRuntime.md b/docs/api/classes/AgentRuntime.md
index 4221daffd88..9064c3bf03c 100644
--- a/docs/api/classes/AgentRuntime.md
+++ b/docs/api/classes/AgentRuntime.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / AgentRuntime
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / AgentRuntime
# Class: AgentRuntime
@@ -73,13 +73,17 @@ Custom fetch function to use for making requests.
• **opts.speechModelPath?**: `string`
+• **opts.cacheManager**: [`ICacheManager`](../interfaces/ICacheManager.md)
+
+• **opts.logging?**: `boolean`
+
#### Returns
[`AgentRuntime`](AgentRuntime.md)
#### Defined in
-[packages/core/src/runtime.ts:192](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L192)
+[packages/core/src/runtime.ts:202](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L202)
## Properties
@@ -95,9 +99,9 @@ The ID of the agent
#### Defined in
-[packages/core/src/runtime.ts:59](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L59)
+[packages/core/src/runtime.ts:62](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L62)
----
+***
### serverUrl
@@ -111,9 +115,9 @@ The base URL of the server where the agent's requests are processed.
#### Defined in
-[packages/core/src/runtime.ts:63](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L63)
+[packages/core/src/runtime.ts:66](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L66)
----
+***
### databaseAdapter
@@ -127,9 +131,9 @@ The database adapter used for interacting with the database.
#### Defined in
-[packages/core/src/runtime.ts:68](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L68)
+[packages/core/src/runtime.ts:71](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L71)
----
+***
### token
@@ -143,9 +147,9 @@ Authentication token used for securing requests.
#### Defined in
-[packages/core/src/runtime.ts:73](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L73)
+[packages/core/src/runtime.ts:76](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L76)
----
+***
### actions
@@ -159,9 +163,9 @@ Custom actions that the agent can perform.
#### Defined in
-[packages/core/src/runtime.ts:78](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L78)
+[packages/core/src/runtime.ts:81](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L81)
----
+***
### evaluators
@@ -175,9 +179,9 @@ Evaluators used to assess and guide the agent's responses.
#### Defined in
-[packages/core/src/runtime.ts:83](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L83)
+[packages/core/src/runtime.ts:86](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L86)
----
+***
### providers
@@ -191,9 +195,23 @@ Context providers used to provide context for message generation.
#### Defined in
-[packages/core/src/runtime.ts:88](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L88)
+[packages/core/src/runtime.ts:91](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L91)
+
+***
+
+### plugins
----
+> **plugins**: [`Plugin`](../type-aliases/Plugin.md)[] = `[]`
+
+#### Implementation of
+
+[`IAgentRuntime`](../interfaces/IAgentRuntime.md).[`plugins`](../interfaces/IAgentRuntime.md#plugins)
+
+#### Defined in
+
+[packages/core/src/runtime.ts:93](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L93)
+
+***
### modelProvider
@@ -207,9 +225,9 @@ The model to use for generateText.
#### Defined in
-[packages/core/src/runtime.ts:93](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L93)
+[packages/core/src/runtime.ts:98](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L98)
----
+***
### fetch()
@@ -242,9 +260,9 @@ Some environments may not have access to the global fetch function and need a cu
#### Defined in
-[packages/core/src/runtime.ts:99](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L99)
+[packages/core/src/runtime.ts:104](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L104)
----
+***
### character
@@ -258,9 +276,9 @@ The character to use for the agent
#### Defined in
-[packages/core/src/runtime.ts:104](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L104)
+[packages/core/src/runtime.ts:109](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L109)
----
+***
### messageManager
@@ -274,9 +292,9 @@ Store messages that are sent and received by the agent.
#### Defined in
-[packages/core/src/runtime.ts:109](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L109)
+[packages/core/src/runtime.ts:114](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L114)
----
+***
### descriptionManager
@@ -290,9 +308,9 @@ Store and recall descriptions of users based on conversations.
#### Defined in
-[packages/core/src/runtime.ts:114](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L114)
+[packages/core/src/runtime.ts:119](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L119)
----
+***
### loreManager
@@ -306,9 +324,9 @@ Manage the creation and recall of static information (documents, historical game
#### Defined in
-[packages/core/src/runtime.ts:119](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L119)
+[packages/core/src/runtime.ts:124](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L124)
----
+***
### documentsManager
@@ -316,11 +334,15 @@ Manage the creation and recall of static information (documents, historical game
Hold large documents that can be referenced
+#### Implementation of
+
+[`IAgentRuntime`](../interfaces/IAgentRuntime.md).[`documentsManager`](../interfaces/IAgentRuntime.md#documentsManager)
+
#### Defined in
-[packages/core/src/runtime.ts:124](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L124)
+[packages/core/src/runtime.ts:129](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L129)
----
+***
### knowledgeManager
@@ -328,11 +350,15 @@ Hold large documents that can be referenced
Searchable document fragments
+#### Implementation of
+
+[`IAgentRuntime`](../interfaces/IAgentRuntime.md).[`knowledgeManager`](../interfaces/IAgentRuntime.md#knowledgeManager)
+
#### Defined in
-[packages/core/src/runtime.ts:129](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L129)
+[packages/core/src/runtime.ts:134](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L134)
----
+***
### services
@@ -344,9 +370,9 @@ Searchable document fragments
#### Defined in
-[packages/core/src/runtime.ts:131](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L131)
+[packages/core/src/runtime.ts:136](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L136)
----
+***
### memoryManagers
@@ -354,7 +380,21 @@ Searchable document fragments
#### Defined in
-[packages/core/src/runtime.ts:132](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L132)
+[packages/core/src/runtime.ts:137](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L137)
+
+***
+
+### cacheManager
+
+> **cacheManager**: [`ICacheManager`](../interfaces/ICacheManager.md)
+
+#### Implementation of
+
+[`IAgentRuntime`](../interfaces/IAgentRuntime.md).[`cacheManager`](../interfaces/IAgentRuntime.md#cacheManager)
+
+#### Defined in
+
+[packages/core/src/runtime.ts:138](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L138)
## Methods
@@ -376,9 +416,9 @@ Searchable document fragments
#### Defined in
-[packages/core/src/runtime.ts:134](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L134)
+[packages/core/src/runtime.ts:140](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L140)
----
+***
### getMemoryManager()
@@ -398,13 +438,17 @@ Searchable document fragments
#### Defined in
-[packages/core/src/runtime.ts:149](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L149)
+[packages/core/src/runtime.ts:155](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L155)
----
+***
### getService()
-> **getService**(`service`): _typeof_ [`Service`](Service.md)
+> **getService**\<`T`\>(`service`): `T`
+
+#### Type Parameters
+
+• **T** *extends* [`Service`](Service.md)
#### Parameters
@@ -412,7 +456,7 @@ Searchable document fragments
#### Returns
-_typeof_ [`Service`](Service.md)
+`T`
#### Implementation of
@@ -420,13 +464,13 @@ _typeof_ [`Service`](Service.md)
#### Defined in
-[packages/core/src/runtime.ts:153](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L153)
+[packages/core/src/runtime.ts:159](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L159)
----
+***
### registerService()
-> **registerService**(`service`): `void`
+> **registerService**(`service`): `Promise`\<`void`\>
#### Parameters
@@ -434,7 +478,7 @@ _typeof_ [`Service`](Service.md)
#### Returns
-`void`
+`Promise`\<`void`\>
#### Implementation of
@@ -442,9 +486,27 @@ _typeof_ [`Service`](Service.md)
#### Defined in
-[packages/core/src/runtime.ts:161](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L161)
+[packages/core/src/runtime.ts:168](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L168)
+
+***
+
+### initialize()
+
+> **initialize**(): `Promise`\<`void`\>
+
+#### Returns
+
+`Promise`\<`void`\>
+
+#### Implementation of
+
+[`IAgentRuntime`](../interfaces/IAgentRuntime.md).[`initialize`](../interfaces/IAgentRuntime.md#initialize)
+
+#### Defined in
+
+[packages/core/src/runtime.ts:359](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L359)
----
+***
### getSetting()
@@ -464,9 +526,9 @@ _typeof_ [`Service`](Service.md)
#### Defined in
-[packages/core/src/runtime.ts:368](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L368)
+[packages/core/src/runtime.ts:423](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L423)
----
+***
### getConversationLength()
@@ -486,9 +548,9 @@ The number of recent messages to be kept in memory.
#### Defined in
-[packages/core/src/runtime.ts:390](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L390)
+[packages/core/src/runtime.ts:445](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L445)
----
+***
### registerAction()
@@ -512,9 +574,9 @@ The action to register.
#### Defined in
-[packages/core/src/runtime.ts:398](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L398)
+[packages/core/src/runtime.ts:453](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L453)
----
+***
### registerEvaluator()
@@ -534,9 +596,9 @@ The evaluator to register.
#### Defined in
-[packages/core/src/runtime.ts:407](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L407)
+[packages/core/src/runtime.ts:462](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L462)
----
+***
### registerContextProvider()
@@ -556,9 +618,9 @@ The context provider to register.
#### Defined in
-[packages/core/src/runtime.ts:415](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L415)
+[packages/core/src/runtime.ts:470](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L470)
----
+***
### processActions()
@@ -588,9 +650,9 @@ The message to process.
#### Defined in
-[packages/core/src/runtime.ts:424](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L424)
+[packages/core/src/runtime.ts:479](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L479)
----
+***
### evaluate()
@@ -624,9 +686,9 @@ The results of the evaluation.
#### Defined in
-[packages/core/src/runtime.ts:497](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L497)
+[packages/core/src/runtime.ts:556](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L556)
----
+***
### ensureParticipantExists()
@@ -656,9 +718,9 @@ An error if the participant cannot be added.
#### Defined in
-[packages/core/src/runtime.ts:567](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L567)
+[packages/core/src/runtime.ts:626](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L626)
----
+***
### ensureUserExists()
@@ -692,9 +754,9 @@ The user name to ensure the existence of.
#### Defined in
-[packages/core/src/runtime.ts:583](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L583)
+[packages/core/src/runtime.ts:642](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L642)
----
+***
### ensureParticipantInRoom()
@@ -716,9 +778,9 @@ The user name to ensure the existence of.
#### Defined in
-[packages/core/src/runtime.ts:603](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L603)
+[packages/core/src/runtime.ts:662](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L662)
----
+***
### ensureConnection()
@@ -746,9 +808,9 @@ The user name to ensure the existence of.
#### Defined in
-[packages/core/src/runtime.ts:614](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L614)
+[packages/core/src/runtime.ts:679](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L679)
----
+***
### ensureRoomExists()
@@ -777,9 +839,9 @@ An error if the room cannot be created.
#### Defined in
-[packages/core/src/runtime.ts:650](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L650)
+[packages/core/src/runtime.ts:715](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L715)
----
+***
### composeState()
@@ -807,9 +869,9 @@ The state of the agent.
#### Defined in
-[packages/core/src/runtime.ts:663](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L663)
+[packages/core/src/runtime.ts:728](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L728)
----
+***
### updateRecentMessageState()
@@ -829,4 +891,4 @@ The state of the agent.
#### Defined in
-[packages/core/src/runtime.ts:1124](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L1124)
+[packages/core/src/runtime.ts:1173](https://github.com/ai16z/eliza/blob/main/packages/core/src/runtime.ts#L1173)
diff --git a/docs/api/classes/CacheManager.md b/docs/api/classes/CacheManager.md
new file mode 100644
index 00000000000..87e229ec358
--- /dev/null
+++ b/docs/api/classes/CacheManager.md
@@ -0,0 +1,117 @@
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / CacheManager
+
+# Class: CacheManager\
+
+## Type Parameters
+
+• **CacheAdapter** *extends* [`ICacheAdapter`](../interfaces/ICacheAdapter.md) = [`ICacheAdapter`](../interfaces/ICacheAdapter.md)
+
+## Implements
+
+- [`ICacheManager`](../interfaces/ICacheManager.md)
+
+## Constructors
+
+### new CacheManager()
+
+> **new CacheManager**\<`CacheAdapter`\>(`adapter`): [`CacheManager`](CacheManager.md)\<`CacheAdapter`\>
+
+#### Parameters
+
+• **adapter**: `CacheAdapter`
+
+#### Returns
+
+[`CacheManager`](CacheManager.md)\<`CacheAdapter`\>
+
+#### Defined in
+
+[packages/core/src/cache.ts:93](https://github.com/ai16z/eliza/blob/main/packages/core/src/cache.ts#L93)
+
+## Properties
+
+### adapter
+
+> **adapter**: `CacheAdapter`
+
+#### Defined in
+
+[packages/core/src/cache.ts:91](https://github.com/ai16z/eliza/blob/main/packages/core/src/cache.ts#L91)
+
+## Methods
+
+### get()
+
+> **get**\<`T`\>(`key`): `Promise`\<`T`\>
+
+#### Type Parameters
+
+• **T** = `unknown`
+
+#### Parameters
+
+• **key**: `string`
+
+#### Returns
+
+`Promise`\<`T`\>
+
+#### Implementation of
+
+[`ICacheManager`](../interfaces/ICacheManager.md).[`get`](../interfaces/ICacheManager.md#get)
+
+#### Defined in
+
+[packages/core/src/cache.ts:97](https://github.com/ai16z/eliza/blob/main/packages/core/src/cache.ts#L97)
+
+***
+
+### set()
+
+> **set**\<`T`\>(`key`, `value`, `opts`?): `Promise`\<`void`\>
+
+#### Type Parameters
+
+• **T**
+
+#### Parameters
+
+• **key**: `string`
+
+• **value**: `T`
+
+• **opts?**: [`CacheOptions`](../type-aliases/CacheOptions.md)
+
+#### Returns
+
+`Promise`\<`void`\>
+
+#### Implementation of
+
+[`ICacheManager`](../interfaces/ICacheManager.md).[`set`](../interfaces/ICacheManager.md#set)
+
+#### Defined in
+
+[packages/core/src/cache.ts:116](https://github.com/ai16z/eliza/blob/main/packages/core/src/cache.ts#L116)
+
+***
+
+### delete()
+
+> **delete**(`key`): `Promise`\<`void`\>
+
+#### Parameters
+
+• **key**: `string`
+
+#### Returns
+
+`Promise`\<`void`\>
+
+#### Implementation of
+
+[`ICacheManager`](../interfaces/ICacheManager.md).[`delete`](../interfaces/ICacheManager.md#delete)
+
+#### Defined in
+
+[packages/core/src/cache.ts:123](https://github.com/ai16z/eliza/blob/main/packages/core/src/cache.ts#L123)
diff --git a/docs/api/classes/DatabaseAdapter.md b/docs/api/classes/DatabaseAdapter.md
index 26e39894ed1..4bdf7c2357b 100644
--- a/docs/api/classes/DatabaseAdapter.md
+++ b/docs/api/classes/DatabaseAdapter.md
@@ -1,10 +1,14 @@
-[@ai16z/eliza v1.0.0](../index.md) / DatabaseAdapter
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / DatabaseAdapter
-# Class: `abstract` DatabaseAdapter
+# Class: `abstract` DatabaseAdapter\
An abstract class representing a database adapter for managing various entities
like accounts, memories, actors, goals, and rooms.
+## Type Parameters
+
+• **DB** = `any`
+
## Implements
- [`IDatabaseAdapter`](../interfaces/IDatabaseAdapter.md)
@@ -13,17 +17,17 @@ like accounts, memories, actors, goals, and rooms.
### new DatabaseAdapter()
-> **new DatabaseAdapter**(): [`DatabaseAdapter`](DatabaseAdapter.md)
+> **new DatabaseAdapter**\<`DB`\>(): [`DatabaseAdapter`](DatabaseAdapter.md)\<`DB`\>
#### Returns
-[`DatabaseAdapter`](DatabaseAdapter.md)
+[`DatabaseAdapter`](DatabaseAdapter.md)\<`DB`\>
## Properties
### db
-> **db**: `any`
+> **db**: `DB`
The database instance.
@@ -63,7 +67,7 @@ A Promise that resolves to the Account object or null if not found.
[packages/core/src/database.ts:27](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L27)
----
+***
### createAccount()
@@ -91,7 +95,7 @@ A Promise that resolves when the account creation is complete.
[packages/core/src/database.ts:34](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L34)
----
+***
### getMemories()
@@ -105,6 +109,8 @@ Retrieves memories based on the specified parameters.
An object containing parameters for the memory retrieval.
+• **params.agentId**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+
• **params.roomId**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
• **params.count?**: `number`
@@ -127,7 +133,7 @@ A Promise that resolves to an array of Memory objects.
[packages/core/src/database.ts:41](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L41)
----
+***
### getMemoriesByRoomIds()
@@ -137,7 +143,7 @@ A Promise that resolves to an array of Memory objects.
• **params**
-• **params.agentId?**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+• **params.agentId**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
• **params.roomIds**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`[]
@@ -153,9 +159,9 @@ A Promise that resolves to an array of Memory objects.
#### Defined in
-[packages/core/src/database.ts:48](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L48)
+[packages/core/src/database.ts:49](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L49)
----
+***
### getMemoryById()
@@ -175,9 +181,9 @@ A Promise that resolves to an array of Memory objects.
#### Defined in
-[packages/core/src/database.ts:54](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L54)
+[packages/core/src/database.ts:55](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L55)
----
+***
### getCachedEmbeddings()
@@ -191,17 +197,17 @@ Retrieves cached embeddings based on the specified query parameters.
An object containing parameters for the embedding retrieval.
-• **params.query_table_name**: `string`
+• **params.query\_table\_name**: `string`
-• **params.query_threshold**: `number`
+• **params.query\_threshold**: `number`
-• **params.query_input**: `string`
+• **params.query\_input**: `string`
-• **params.query_field_name**: `string`
+• **params.query\_field\_name**: `string`
-• **params.query_field_sub_name**: `string`
+• **params.query\_field\_sub\_name**: `string`
-• **params.query_match_count**: `number`
+• **params.query\_match\_count**: `number`
#### Returns
@@ -215,9 +221,9 @@ A Promise that resolves to an array of objects containing embeddings and levensh
#### Defined in
-[packages/core/src/database.ts:61](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L61)
+[packages/core/src/database.ts:62](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L62)
----
+***
### log()
@@ -251,9 +257,9 @@ A Promise that resolves when the log entry has been saved.
#### Defined in
-[packages/core/src/database.ts:87](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L87)
+[packages/core/src/database.ts:88](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L88)
----
+***
### getActorDetails()
@@ -281,9 +287,9 @@ A Promise that resolves to an array of Actor objects.
#### Defined in
-[packages/core/src/database.ts:99](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L99)
+[packages/core/src/database.ts:100](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L100)
----
+***
### searchMemories()
@@ -299,13 +305,15 @@ An object containing parameters for the memory search.
• **params.tableName**: `string`
+• **params.agentId**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+
• **params.roomId**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
• **params.embedding**: `number`[]
-• **params.match_threshold**: `number`
+• **params.match\_threshold**: `number`
-• **params.match_count**: `number`
+• **params.match\_count**: `number`
• **params.unique**: `boolean`
@@ -321,9 +329,9 @@ A Promise that resolves to an array of Memory objects.
#### Defined in
-[packages/core/src/database.ts:106](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L106)
+[packages/core/src/database.ts:107](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L107)
----
+***
### updateGoalStatus()
@@ -353,9 +361,9 @@ A Promise that resolves when the goal status has been updated.
#### Defined in
-[packages/core/src/database.ts:120](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L120)
+[packages/core/src/database.ts:122](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L122)
----
+***
### searchMemoriesByEmbedding()
@@ -373,7 +381,7 @@ The embedding vector to search with.
Additional parameters for the search.
-• **params.match_threshold?**: `number`
+• **params.match\_threshold?**: `number`
• **params.count?**: `number`
@@ -397,9 +405,9 @@ A Promise that resolves to an array of Memory objects.
#### Defined in
-[packages/core/src/database.ts:131](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L131)
+[packages/core/src/database.ts:133](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L133)
----
+***
### createMemory()
@@ -433,9 +441,9 @@ A Promise that resolves when the memory has been created.
#### Defined in
-[packages/core/src/database.ts:150](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L150)
+[packages/core/src/database.ts:152](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L152)
----
+***
### removeMemory()
@@ -465,9 +473,9 @@ A Promise that resolves when the memory has been removed.
#### Defined in
-[packages/core/src/database.ts:162](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L162)
+[packages/core/src/database.ts:164](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L164)
----
+***
### removeAllMemories()
@@ -497,9 +505,9 @@ A Promise that resolves when all memories have been removed.
#### Defined in
-[packages/core/src/database.ts:170](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L170)
+[packages/core/src/database.ts:172](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L172)
----
+***
### countMemories()
@@ -533,9 +541,9 @@ A Promise that resolves to the number of memories.
#### Defined in
-[packages/core/src/database.ts:179](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L179)
+[packages/core/src/database.ts:181](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L181)
----
+***
### getGoals()
@@ -549,6 +557,8 @@ Retrieves goals based on specified parameters.
An object containing parameters for goal retrieval.
+• **params.agentId**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+
• **params.roomId**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
• **params.userId?**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
@@ -569,9 +579,9 @@ A Promise that resolves to an array of Goal objects.
#### Defined in
-[packages/core/src/database.ts:190](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L190)
+[packages/core/src/database.ts:192](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L192)
----
+***
### updateGoal()
@@ -597,9 +607,9 @@ A Promise that resolves when the goal has been updated.
#### Defined in
-[packages/core/src/database.ts:202](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L202)
+[packages/core/src/database.ts:205](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L205)
----
+***
### createGoal()
@@ -625,9 +635,9 @@ A Promise that resolves when the goal has been created.
#### Defined in
-[packages/core/src/database.ts:209](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L209)
+[packages/core/src/database.ts:212](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L212)
----
+***
### removeGoal()
@@ -653,9 +663,9 @@ A Promise that resolves when the goal has been removed.
#### Defined in
-[packages/core/src/database.ts:216](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L216)
+[packages/core/src/database.ts:219](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L219)
----
+***
### removeAllGoals()
@@ -681,9 +691,9 @@ A Promise that resolves when all goals have been removed.
#### Defined in
-[packages/core/src/database.ts:223](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L223)
+[packages/core/src/database.ts:226](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L226)
----
+***
### getRoom()
@@ -709,9 +719,9 @@ A Promise that resolves to the room ID or null if not found.
#### Defined in
-[packages/core/src/database.ts:230](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L230)
+[packages/core/src/database.ts:233](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L233)
----
+***
### createRoom()
@@ -737,9 +747,9 @@ A Promise that resolves to the UUID of the created room.
#### Defined in
-[packages/core/src/database.ts:237](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L237)
+[packages/core/src/database.ts:240](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L240)
----
+***
### removeRoom()
@@ -765,9 +775,9 @@ A Promise that resolves when the room has been removed.
#### Defined in
-[packages/core/src/database.ts:244](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L244)
+[packages/core/src/database.ts:247](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L247)
----
+***
### getRoomsForParticipant()
@@ -793,9 +803,9 @@ A Promise that resolves to an array of room IDs.
#### Defined in
-[packages/core/src/database.ts:251](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L251)
+[packages/core/src/database.ts:254](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L254)
----
+***
### getRoomsForParticipants()
@@ -821,9 +831,9 @@ A Promise that resolves to an array of room IDs.
#### Defined in
-[packages/core/src/database.ts:258](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L258)
+[packages/core/src/database.ts:261](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L261)
----
+***
### addParticipant()
@@ -853,9 +863,9 @@ A Promise that resolves to a boolean indicating success or failure.
#### Defined in
-[packages/core/src/database.ts:266](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L266)
+[packages/core/src/database.ts:269](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L269)
----
+***
### removeParticipant()
@@ -885,9 +895,9 @@ A Promise that resolves to a boolean indicating success or failure.
#### Defined in
-[packages/core/src/database.ts:274](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L274)
+[packages/core/src/database.ts:277](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L277)
----
+***
### getParticipantsForAccount()
@@ -915,7 +925,7 @@ A Promise that resolves to an array of Participant objects.
##### Defined in
-[packages/core/src/database.ts:281](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L281)
+[packages/core/src/database.ts:284](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L284)
#### getParticipantsForAccount(userId)
@@ -941,9 +951,9 @@ A Promise that resolves to an array of Participant objects.
##### Defined in
-[packages/core/src/database.ts:288](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L288)
+[packages/core/src/database.ts:291](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L291)
----
+***
### getParticipantsForRoom()
@@ -969,9 +979,9 @@ A Promise that resolves to an array of UUIDs representing the participants.
#### Defined in
-[packages/core/src/database.ts:295](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L295)
+[packages/core/src/database.ts:298](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L298)
----
+***
### getParticipantUserState()
@@ -993,9 +1003,9 @@ A Promise that resolves to an array of UUIDs representing the participants.
#### Defined in
-[packages/core/src/database.ts:297](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L297)
+[packages/core/src/database.ts:300](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L300)
----
+***
### setParticipantUserState()
@@ -1019,9 +1029,9 @@ A Promise that resolves to an array of UUIDs representing the participants.
#### Defined in
-[packages/core/src/database.ts:301](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L301)
+[packages/core/src/database.ts:304](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L304)
----
+***
### createRelationship()
@@ -1051,9 +1061,9 @@ A Promise that resolves to a boolean indicating success or failure of the creati
#### Defined in
-[packages/core/src/database.ts:312](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L312)
+[packages/core/src/database.ts:315](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L315)
----
+***
### getRelationship()
@@ -1083,9 +1093,9 @@ A Promise that resolves to the Relationship object or null if not found.
#### Defined in
-[packages/core/src/database.ts:322](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L322)
+[packages/core/src/database.ts:325](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L325)
----
+***
### getRelationships()
@@ -1113,4 +1123,4 @@ A Promise that resolves to an array of Relationship objects.
#### Defined in
-[packages/core/src/database.ts:332](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L332)
+[packages/core/src/database.ts:335](https://github.com/ai16z/eliza/blob/main/packages/core/src/database.ts#L335)
diff --git a/docs/api/classes/DbCacheAdapter.md b/docs/api/classes/DbCacheAdapter.md
new file mode 100644
index 00000000000..439bf2f0d00
--- /dev/null
+++ b/docs/api/classes/DbCacheAdapter.md
@@ -0,0 +1,95 @@
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / DbCacheAdapter
+
+# Class: DbCacheAdapter
+
+## Implements
+
+- [`ICacheAdapter`](../interfaces/ICacheAdapter.md)
+
+## Constructors
+
+### new DbCacheAdapter()
+
+> **new DbCacheAdapter**(`db`, `agentId`): [`DbCacheAdapter`](DbCacheAdapter.md)
+
+#### Parameters
+
+• **db**: [`IDatabaseCacheAdapter`](../interfaces/IDatabaseCacheAdapter.md)
+
+• **agentId**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+
+#### Returns
+
+[`DbCacheAdapter`](DbCacheAdapter.md)
+
+#### Defined in
+
+[packages/core/src/cache.ts:70](https://github.com/ai16z/eliza/blob/main/packages/core/src/cache.ts#L70)
+
+## Methods
+
+### get()
+
+> **get**(`key`): `Promise`\<`string`\>
+
+#### Parameters
+
+• **key**: `string`
+
+#### Returns
+
+`Promise`\<`string`\>
+
+#### Implementation of
+
+[`ICacheAdapter`](../interfaces/ICacheAdapter.md).[`get`](../interfaces/ICacheAdapter.md#get)
+
+#### Defined in
+
+[packages/core/src/cache.ts:75](https://github.com/ai16z/eliza/blob/main/packages/core/src/cache.ts#L75)
+
+***
+
+### set()
+
+> **set**(`key`, `value`): `Promise`\<`void`\>
+
+#### Parameters
+
+• **key**: `string`
+
+• **value**: `string`
+
+#### Returns
+
+`Promise`\<`void`\>
+
+#### Implementation of
+
+[`ICacheAdapter`](../interfaces/ICacheAdapter.md).[`set`](../interfaces/ICacheAdapter.md#set)
+
+#### Defined in
+
+[packages/core/src/cache.ts:79](https://github.com/ai16z/eliza/blob/main/packages/core/src/cache.ts#L79)
+
+***
+
+### delete()
+
+> **delete**(`key`): `Promise`\<`void`\>
+
+#### Parameters
+
+• **key**: `string`
+
+#### Returns
+
+`Promise`\<`void`\>
+
+#### Implementation of
+
+[`ICacheAdapter`](../interfaces/ICacheAdapter.md).[`delete`](../interfaces/ICacheAdapter.md#delete)
+
+#### Defined in
+
+[packages/core/src/cache.ts:83](https://github.com/ai16z/eliza/blob/main/packages/core/src/cache.ts#L83)
diff --git a/docs/api/classes/FsCacheAdapter.md b/docs/api/classes/FsCacheAdapter.md
new file mode 100644
index 00000000000..f9926e4cd3e
--- /dev/null
+++ b/docs/api/classes/FsCacheAdapter.md
@@ -0,0 +1,93 @@
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / FsCacheAdapter
+
+# Class: FsCacheAdapter
+
+## Implements
+
+- [`ICacheAdapter`](../interfaces/ICacheAdapter.md)
+
+## Constructors
+
+### new FsCacheAdapter()
+
+> **new FsCacheAdapter**(`dataDir`): [`FsCacheAdapter`](FsCacheAdapter.md)
+
+#### Parameters
+
+• **dataDir**: `string`
+
+#### Returns
+
+[`FsCacheAdapter`](FsCacheAdapter.md)
+
+#### Defined in
+
+[packages/core/src/cache.ts:37](https://github.com/ai16z/eliza/blob/main/packages/core/src/cache.ts#L37)
+
+## Methods
+
+### get()
+
+> **get**(`key`): `Promise`\<`string`\>
+
+#### Parameters
+
+• **key**: `string`
+
+#### Returns
+
+`Promise`\<`string`\>
+
+#### Implementation of
+
+[`ICacheAdapter`](../interfaces/ICacheAdapter.md).[`get`](../interfaces/ICacheAdapter.md#get)
+
+#### Defined in
+
+[packages/core/src/cache.ts:39](https://github.com/ai16z/eliza/blob/main/packages/core/src/cache.ts#L39)
+
+***
+
+### set()
+
+> **set**(`key`, `value`): `Promise`\<`void`\>
+
+#### Parameters
+
+• **key**: `string`
+
+• **value**: `string`
+
+#### Returns
+
+`Promise`\<`void`\>
+
+#### Implementation of
+
+[`ICacheAdapter`](../interfaces/ICacheAdapter.md).[`set`](../interfaces/ICacheAdapter.md#set)
+
+#### Defined in
+
+[packages/core/src/cache.ts:48](https://github.com/ai16z/eliza/blob/main/packages/core/src/cache.ts#L48)
+
+***
+
+### delete()
+
+> **delete**(`key`): `Promise`\<`void`\>
+
+#### Parameters
+
+• **key**: `string`
+
+#### Returns
+
+`Promise`\<`void`\>
+
+#### Implementation of
+
+[`ICacheAdapter`](../interfaces/ICacheAdapter.md).[`delete`](../interfaces/ICacheAdapter.md#delete)
+
+#### Defined in
+
+[packages/core/src/cache.ts:59](https://github.com/ai16z/eliza/blob/main/packages/core/src/cache.ts#L59)
diff --git a/docs/api/classes/MemoryCacheAdapter.md b/docs/api/classes/MemoryCacheAdapter.md
new file mode 100644
index 00000000000..943c245e918
--- /dev/null
+++ b/docs/api/classes/MemoryCacheAdapter.md
@@ -0,0 +1,103 @@
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / MemoryCacheAdapter
+
+# Class: MemoryCacheAdapter
+
+## Implements
+
+- [`ICacheAdapter`](../interfaces/ICacheAdapter.md)
+
+## Constructors
+
+### new MemoryCacheAdapter()
+
+> **new MemoryCacheAdapter**(`initalData`?): [`MemoryCacheAdapter`](MemoryCacheAdapter.md)
+
+#### Parameters
+
+• **initalData?**: `Map`\<`string`, `string`\>
+
+#### Returns
+
+[`MemoryCacheAdapter`](MemoryCacheAdapter.md)
+
+#### Defined in
+
+[packages/core/src/cache.ts:19](https://github.com/ai16z/eliza/blob/main/packages/core/src/cache.ts#L19)
+
+## Properties
+
+### data
+
+> **data**: `Map`\<`string`, `string`\>
+
+#### Defined in
+
+[packages/core/src/cache.ts:17](https://github.com/ai16z/eliza/blob/main/packages/core/src/cache.ts#L17)
+
+## Methods
+
+### get()
+
+> **get**(`key`): `Promise`\<`string`\>
+
+#### Parameters
+
+• **key**: `string`
+
+#### Returns
+
+`Promise`\<`string`\>
+
+#### Implementation of
+
+[`ICacheAdapter`](../interfaces/ICacheAdapter.md).[`get`](../interfaces/ICacheAdapter.md#get)
+
+#### Defined in
+
+[packages/core/src/cache.ts:23](https://github.com/ai16z/eliza/blob/main/packages/core/src/cache.ts#L23)
+
+***
+
+### set()
+
+> **set**(`key`, `value`): `Promise`\<`void`\>
+
+#### Parameters
+
+• **key**: `string`
+
+• **value**: `string`
+
+#### Returns
+
+`Promise`\<`void`\>
+
+#### Implementation of
+
+[`ICacheAdapter`](../interfaces/ICacheAdapter.md).[`set`](../interfaces/ICacheAdapter.md#set)
+
+#### Defined in
+
+[packages/core/src/cache.ts:27](https://github.com/ai16z/eliza/blob/main/packages/core/src/cache.ts#L27)
+
+***
+
+### delete()
+
+> **delete**(`key`): `Promise`\<`void`\>
+
+#### Parameters
+
+• **key**: `string`
+
+#### Returns
+
+`Promise`\<`void`\>
+
+#### Implementation of
+
+[`ICacheAdapter`](../interfaces/ICacheAdapter.md).[`delete`](../interfaces/ICacheAdapter.md#delete)
+
+#### Defined in
+
+[packages/core/src/cache.ts:31](https://github.com/ai16z/eliza/blob/main/packages/core/src/cache.ts#L31)
diff --git a/docs/api/classes/MemoryManager.md b/docs/api/classes/MemoryManager.md
index c7991909787..554be5e5de7 100644
--- a/docs/api/classes/MemoryManager.md
+++ b/docs/api/classes/MemoryManager.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / MemoryManager
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / MemoryManager
# Class: MemoryManager
@@ -36,7 +36,7 @@ The AgentRuntime instance associated with this manager.
#### Defined in
-[packages/core/src/memory.ts:35](https://github.com/ai16z/eliza/blob/main/packages/core/src/memory.ts#L35)
+[packages/core/src/memory.ts:36](https://github.com/ai16z/eliza/blob/main/packages/core/src/memory.ts#L36)
## Properties
@@ -52,9 +52,9 @@ The AgentRuntime instance associated with this manager.
#### Defined in
-[packages/core/src/memory.ts:22](https://github.com/ai16z/eliza/blob/main/packages/core/src/memory.ts#L22)
+[packages/core/src/memory.ts:23](https://github.com/ai16z/eliza/blob/main/packages/core/src/memory.ts#L23)
----
+***
### tableName
@@ -68,7 +68,7 @@ The name of the database table this manager operates on.
#### Defined in
-[packages/core/src/memory.ts:27](https://github.com/ai16z/eliza/blob/main/packages/core/src/memory.ts#L27)
+[packages/core/src/memory.ts:28](https://github.com/ai16z/eliza/blob/main/packages/core/src/memory.ts#L28)
## Methods
@@ -76,19 +76,25 @@ The name of the database table this manager operates on.
> **addEmbeddingToMemory**(`memory`): `Promise`\<[`Memory`](../interfaces/Memory.md)\>
-Adds an embedding vector to a memory object. If the memory already has an embedding, it is returned as is.
+Adds an embedding vector to a memory object if one doesn't already exist.
+The embedding is generated from the memory's text content using the runtime's
+embedding model. If the memory has no text content, an error is thrown.
#### Parameters
• **memory**: [`Memory`](../interfaces/Memory.md)
-The memory object to add an embedding to.
+The memory object to add an embedding to
#### Returns
`Promise`\<[`Memory`](../interfaces/Memory.md)\>
-A Promise resolving to the memory object, potentially updated with an embedding vector.
+The memory object with an embedding vector added
+
+#### Throws
+
+Error if the memory content is empty
#### Implementation of
@@ -96,9 +102,9 @@ A Promise resolving to the memory object, potentially updated with an embedding
#### Defined in
-[packages/core/src/memory.ts:45](https://github.com/ai16z/eliza/blob/main/packages/core/src/memory.ts#L45)
+[packages/core/src/memory.ts:55](https://github.com/ai16z/eliza/blob/main/packages/core/src/memory.ts#L55)
----
+***
### getMemories()
@@ -124,8 +130,6 @@ The number of memories to retrieve.
Whether to retrieve unique memories only.
-• **opts.agentId?**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
-
• **opts.start?**: `number`
• **opts.end?**: `number`
@@ -142,9 +146,9 @@ A Promise resolving to an array of Memory objects.
#### Defined in
-[packages/core/src/memory.ts:66](https://github.com/ai16z/eliza/blob/main/packages/core/src/memory.ts#L66)
+[packages/core/src/memory.ts:90](https://github.com/ai16z/eliza/blob/main/packages/core/src/memory.ts#L90)
----
+***
### getCachedEmbeddings()
@@ -164,9 +168,9 @@ A Promise resolving to an array of Memory objects.
#### Defined in
-[packages/core/src/memory.ts:93](https://github.com/ai16z/eliza/blob/main/packages/core/src/memory.ts#L93)
+[packages/core/src/memory.ts:114](https://github.com/ai16z/eliza/blob/main/packages/core/src/memory.ts#L114)
----
+***
### searchMemoriesByEmbedding()
@@ -184,12 +188,10 @@ The embedding vector to search with.
Options including match threshold, count, user IDs, and uniqueness.
-• **opts.match_threshold?**: `number`
+• **opts.match\_threshold?**: `number`
The similarity threshold for matching memories.
-• **opts.agentId?**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
-
• **opts.count?**: `number`
The maximum number of memories to retrieve.
@@ -214,9 +216,9 @@ A Promise resolving to an array of Memory objects that match the embedding.
#### Defined in
-[packages/core/src/memory.ts:120](https://github.com/ai16z/eliza/blob/main/packages/core/src/memory.ts#L120)
+[packages/core/src/memory.ts:140](https://github.com/ai16z/eliza/blob/main/packages/core/src/memory.ts#L140)
----
+***
### createMemory()
@@ -246,9 +248,9 @@ A Promise that resolves when the operation completes.
#### Defined in
-[packages/core/src/memory.ts:158](https://github.com/ai16z/eliza/blob/main/packages/core/src/memory.ts#L158)
+[packages/core/src/memory.ts:175](https://github.com/ai16z/eliza/blob/main/packages/core/src/memory.ts#L175)
----
+***
### getMemoriesByRoomIds()
@@ -258,8 +260,6 @@ A Promise that resolves when the operation completes.
• **params**
-• **params.agentId?**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
-
• **params.roomIds**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`[]
#### Returns
@@ -272,9 +272,9 @@ A Promise that resolves when the operation completes.
#### Defined in
-[packages/core/src/memory.ts:173](https://github.com/ai16z/eliza/blob/main/packages/core/src/memory.ts#L173)
+[packages/core/src/memory.ts:195](https://github.com/ai16z/eliza/blob/main/packages/core/src/memory.ts#L195)
----
+***
### getMemoryById()
@@ -294,9 +294,9 @@ A Promise that resolves when the operation completes.
#### Defined in
-[packages/core/src/memory.ts:184](https://github.com/ai16z/eliza/blob/main/packages/core/src/memory.ts#L184)
+[packages/core/src/memory.ts:202](https://github.com/ai16z/eliza/blob/main/packages/core/src/memory.ts#L202)
----
+***
### removeMemory()
@@ -322,9 +322,9 @@ A Promise that resolves when the operation completes.
#### Defined in
-[packages/core/src/memory.ts:194](https://github.com/ai16z/eliza/blob/main/packages/core/src/memory.ts#L194)
+[packages/core/src/memory.ts:213](https://github.com/ai16z/eliza/blob/main/packages/core/src/memory.ts#L213)
----
+***
### removeAllMemories()
@@ -350,9 +350,9 @@ A Promise that resolves when the operation completes.
#### Defined in
-[packages/core/src/memory.ts:206](https://github.com/ai16z/eliza/blob/main/packages/core/src/memory.ts#L206)
+[packages/core/src/memory.ts:225](https://github.com/ai16z/eliza/blob/main/packages/core/src/memory.ts#L225)
----
+***
### countMemories()
@@ -382,4 +382,4 @@ A Promise resolving to the count of memories.
#### Defined in
-[packages/core/src/memory.ts:219](https://github.com/ai16z/eliza/blob/main/packages/core/src/memory.ts#L219)
+[packages/core/src/memory.ts:238](https://github.com/ai16z/eliza/blob/main/packages/core/src/memory.ts#L238)
diff --git a/docs/api/classes/Service.md b/docs/api/classes/Service.md
index 472c53012bd..247cf5ed9b1 100644
--- a/docs/api/classes/Service.md
+++ b/docs/api/classes/Service.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / Service
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / Service
# Class: `abstract` Service
@@ -22,15 +22,37 @@
[`Service`](Service.md)
-## Properties
+## Accessors
### serviceType
-> `static` **serviceType**: [`ServiceType`](../enumerations/ServiceType.md)
+#### Get Signature
+
+> **get** `static` **serviceType**(): [`ServiceType`](../enumerations/ServiceType.md)
+
+##### Returns
+
+[`ServiceType`](../enumerations/ServiceType.md)
+
+#### Defined in
+
+[packages/core/src/types.ts:916](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L916)
+
+***
+
+### serviceType
+
+#### Get Signature
+
+> **get** **serviceType**(): [`ServiceType`](../enumerations/ServiceType.md)
+
+##### Returns
+
+[`ServiceType`](../enumerations/ServiceType.md)
#### Defined in
-[packages/core/src/types.ts:519](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L519)
+[packages/core/src/types.ts:927](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L927)
## Methods
@@ -40,7 +62,7 @@
#### Type Parameters
-• **T** _extends_ [`Service`](Service.md)
+• **T** *extends* [`Service`](Service.md)
#### Returns
@@ -48,4 +70,24 @@
#### Defined in
-[packages/core/src/types.ts:521](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L521)
+[packages/core/src/types.ts:920](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L920)
+
+***
+
+### initialize()
+
+> `abstract` **initialize**(`runtime`): `Promise`\<`void`\>
+
+Add abstract initialize method that must be implemented by derived classes
+
+#### Parameters
+
+• **runtime**: [`IAgentRuntime`](../interfaces/IAgentRuntime.md)
+
+#### Returns
+
+`Promise`\<`void`\>
+
+#### Defined in
+
+[packages/core/src/types.ts:932](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L932)
diff --git a/docs/api/enumerations/Clients.md b/docs/api/enumerations/Clients.md
index 4822e4915e4..24618d7be48 100644
--- a/docs/api/enumerations/Clients.md
+++ b/docs/api/enumerations/Clients.md
@@ -1,7 +1,9 @@
-[@ai16z/eliza v1.0.0](../index.md) / Clients
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / Clients
# Enumeration: Clients
+Available client platforms
+
## Enumeration Members
### DISCORD
@@ -10,9 +12,9 @@
#### Defined in
-[packages/core/src/types.ts:323](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L323)
+[packages/core/src/types.ts:582](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L582)
----
+***
### DIRECT
@@ -20,9 +22,9 @@
#### Defined in
-[packages/core/src/types.ts:324](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L324)
+[packages/core/src/types.ts:583](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L583)
----
+***
### TWITTER
@@ -30,9 +32,9 @@
#### Defined in
-[packages/core/src/types.ts:325](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L325)
+[packages/core/src/types.ts:584](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L584)
----
+***
### TELEGRAM
@@ -40,4 +42,4 @@
#### Defined in
-[packages/core/src/types.ts:326](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L326)
+[packages/core/src/types.ts:585](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L585)
diff --git a/docs/api/enumerations/GoalStatus.md b/docs/api/enumerations/GoalStatus.md
index 1608c034ed1..5d29385dddb 100644
--- a/docs/api/enumerations/GoalStatus.md
+++ b/docs/api/enumerations/GoalStatus.md
@@ -1,7 +1,9 @@
-[@ai16z/eliza v1.0.0](../index.md) / GoalStatus
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / GoalStatus
# Enumeration: GoalStatus
+Status enum for goals
+
## Enumeration Members
### DONE
@@ -10,9 +12,9 @@
#### Defined in
-[packages/core/src/types.ts:57](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L57)
+[packages/core/src/types.ts:100](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L100)
----
+***
### FAILED
@@ -20,14 +22,14 @@
#### Defined in
-[packages/core/src/types.ts:58](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L58)
+[packages/core/src/types.ts:101](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L101)
----
+***
-### IN_PROGRESS
+### IN\_PROGRESS
-> **IN_PROGRESS**: `"IN_PROGRESS"`
+> **IN\_PROGRESS**: `"IN_PROGRESS"`
#### Defined in
-[packages/core/src/types.ts:59](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L59)
+[packages/core/src/types.ts:102](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L102)
diff --git a/docs/api/enumerations/LoggingLevel.md b/docs/api/enumerations/LoggingLevel.md
new file mode 100644
index 00000000000..d255ea3a198
--- /dev/null
+++ b/docs/api/enumerations/LoggingLevel.md
@@ -0,0 +1,33 @@
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / LoggingLevel
+
+# Enumeration: LoggingLevel
+
+## Enumeration Members
+
+### DEBUG
+
+> **DEBUG**: `"debug"`
+
+#### Defined in
+
+[packages/core/src/types.ts:1089](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1089)
+
+***
+
+### VERBOSE
+
+> **VERBOSE**: `"verbose"`
+
+#### Defined in
+
+[packages/core/src/types.ts:1090](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1090)
+
+***
+
+### NONE
+
+> **NONE**: `"none"`
+
+#### Defined in
+
+[packages/core/src/types.ts:1091](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1091)
diff --git a/docs/api/enumerations/ModelClass.md b/docs/api/enumerations/ModelClass.md
index d4f3cafaf3f..abfb7b4ecf1 100644
--- a/docs/api/enumerations/ModelClass.md
+++ b/docs/api/enumerations/ModelClass.md
@@ -1,7 +1,9 @@
-[@ai16z/eliza v1.0.0](../index.md) / ModelClass
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / ModelClass
# Enumeration: ModelClass
+Model size/type classification
+
## Enumeration Members
### SMALL
@@ -10,9 +12,9 @@
#### Defined in
-[packages/core/src/types.ts:75](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L75)
+[packages/core/src/types.ts:132](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L132)
----
+***
### MEDIUM
@@ -20,9 +22,9 @@
#### Defined in
-[packages/core/src/types.ts:76](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L76)
+[packages/core/src/types.ts:133](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L133)
----
+***
### LARGE
@@ -30,9 +32,9 @@
#### Defined in
-[packages/core/src/types.ts:77](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L77)
+[packages/core/src/types.ts:134](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L134)
----
+***
### EMBEDDING
@@ -40,9 +42,9 @@
#### Defined in
-[packages/core/src/types.ts:78](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L78)
+[packages/core/src/types.ts:135](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L135)
----
+***
### IMAGE
@@ -50,4 +52,4 @@
#### Defined in
-[packages/core/src/types.ts:79](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L79)
+[packages/core/src/types.ts:136](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L136)
diff --git a/docs/api/enumerations/ModelProviderName.md b/docs/api/enumerations/ModelProviderName.md
index 92560871762..afb8063ad30 100644
--- a/docs/api/enumerations/ModelProviderName.md
+++ b/docs/api/enumerations/ModelProviderName.md
@@ -1,7 +1,9 @@
-[@ai16z/eliza v1.0.0](../index.md) / ModelProviderName
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / ModelProviderName
# Enumeration: ModelProviderName
+Available model providers
+
## Enumeration Members
### OPENAI
@@ -10,9 +12,9 @@
#### Defined in
-[packages/core/src/types.ts:121](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L121)
+[packages/core/src/types.ts:207](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L207)
----
+***
### ANTHROPIC
@@ -20,9 +22,9 @@
#### Defined in
-[packages/core/src/types.ts:122](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L122)
+[packages/core/src/types.ts:208](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L208)
----
+***
### GROK
@@ -30,9 +32,9 @@
#### Defined in
-[packages/core/src/types.ts:123](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L123)
+[packages/core/src/types.ts:209](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L209)
----
+***
### GROQ
@@ -40,9 +42,9 @@
#### Defined in
-[packages/core/src/types.ts:124](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L124)
+[packages/core/src/types.ts:210](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L210)
----
+***
### LLAMACLOUD
@@ -50,9 +52,9 @@
#### Defined in
-[packages/core/src/types.ts:125](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L125)
+[packages/core/src/types.ts:211](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L211)
----
+***
### LLAMALOCAL
@@ -60,9 +62,9 @@
#### Defined in
-[packages/core/src/types.ts:126](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L126)
+[packages/core/src/types.ts:212](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L212)
----
+***
### GOOGLE
@@ -70,19 +72,19 @@
#### Defined in
-[packages/core/src/types.ts:127](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L127)
+[packages/core/src/types.ts:213](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L213)
----
+***
-### CLAUDE_VERTEX
+### CLAUDE\_VERTEX
-> **CLAUDE_VERTEX**: `"claude_vertex"`
+> **CLAUDE\_VERTEX**: `"claude_vertex"`
#### Defined in
-[packages/core/src/types.ts:128](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L128)
+[packages/core/src/types.ts:214](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L214)
----
+***
### REDPILL
@@ -90,9 +92,9 @@
#### Defined in
-[packages/core/src/types.ts:129](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L129)
+[packages/core/src/types.ts:215](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L215)
----
+***
### OPENROUTER
@@ -100,9 +102,9 @@
#### Defined in
-[packages/core/src/types.ts:130](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L130)
+[packages/core/src/types.ts:216](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L216)
----
+***
### OLLAMA
@@ -110,9 +112,9 @@
#### Defined in
-[packages/core/src/types.ts:131](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L131)
+[packages/core/src/types.ts:217](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L217)
----
+***
### HEURIST
@@ -120,4 +122,4 @@
#### Defined in
-[packages/core/src/types.ts:132](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L132)
+[packages/core/src/types.ts:218](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L218)
diff --git a/docs/api/enumerations/ServiceType.md b/docs/api/enumerations/ServiceType.md
index ab704c6558d..bbd3c04efd4 100644
--- a/docs/api/enumerations/ServiceType.md
+++ b/docs/api/enumerations/ServiceType.md
@@ -1,18 +1,18 @@
-[@ai16z/eliza v1.0.0](../index.md) / ServiceType
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / ServiceType
# Enumeration: ServiceType
## Enumeration Members
-### IMAGE_DESCRIPTION
+### IMAGE\_DESCRIPTION
-> **IMAGE_DESCRIPTION**: `"image_description"`
+> **IMAGE\_DESCRIPTION**: `"image_description"`
#### Defined in
-[packages/core/src/types.ts:658](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L658)
+[packages/core/src/types.ts:1079](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1079)
----
+***
### TRANSCRIPTION
@@ -20,9 +20,9 @@
#### Defined in
-[packages/core/src/types.ts:659](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L659)
+[packages/core/src/types.ts:1080](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1080)
----
+***
### VIDEO
@@ -30,19 +30,19 @@
#### Defined in
-[packages/core/src/types.ts:660](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L660)
+[packages/core/src/types.ts:1081](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1081)
----
+***
-### TEXT_GENERATION
+### TEXT\_GENERATION
-> **TEXT_GENERATION**: `"text_generation"`
+> **TEXT\_GENERATION**: `"text_generation"`
#### Defined in
-[packages/core/src/types.ts:661](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L661)
+[packages/core/src/types.ts:1082](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1082)
----
+***
### BROWSER
@@ -50,19 +50,19 @@
#### Defined in
-[packages/core/src/types.ts:662](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L662)
+[packages/core/src/types.ts:1083](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1083)
----
+***
-### SPEECH_GENERATION
+### SPEECH\_GENERATION
-> **SPEECH_GENERATION**: `"speech_generation"`
+> **SPEECH\_GENERATION**: `"speech_generation"`
#### Defined in
-[packages/core/src/types.ts:663](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L663)
+[packages/core/src/types.ts:1084](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1084)
----
+***
### PDF
@@ -70,4 +70,4 @@
#### Defined in
-[packages/core/src/types.ts:664](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L664)
+[packages/core/src/types.ts:1085](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1085)
diff --git a/docs/api/functions/addHeader.md b/docs/api/functions/addHeader.md
index 4d454488da7..5a8709f6d3a 100644
--- a/docs/api/functions/addHeader.md
+++ b/docs/api/functions/addHeader.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / addHeader
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / addHeader
# Function: addHeader()
diff --git a/docs/api/functions/composeActionExamples.md b/docs/api/functions/composeActionExamples.md
index 3fd4ce0a899..556f4e127e8 100644
--- a/docs/api/functions/composeActionExamples.md
+++ b/docs/api/functions/composeActionExamples.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / composeActionExamples
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / composeActionExamples
# Function: composeActionExamples()
diff --git a/docs/api/functions/composeContext.md b/docs/api/functions/composeContext.md
index fd71d37ba4d..f49d6702445 100644
--- a/docs/api/functions/composeContext.md
+++ b/docs/api/functions/composeContext.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / composeContext
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / composeContext
# Function: composeContext()
diff --git a/docs/api/functions/configureSettings.md b/docs/api/functions/configureSettings.md
new file mode 100644
index 00000000000..9eb534d423b
--- /dev/null
+++ b/docs/api/functions/configureSettings.md
@@ -0,0 +1,21 @@
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / configureSettings
+
+# Function: configureSettings()
+
+> **configureSettings**(`settings`): `void`
+
+Configures environment settings for browser usage
+
+## Parameters
+
+• **settings**: `Settings`
+
+Object containing environment variables
+
+## Returns
+
+`void`
+
+## Defined in
+
+[packages/core/src/settings.ts:53](https://github.com/ai16z/eliza/blob/main/packages/core/src/settings.ts#L53)
diff --git a/docs/api/functions/createGoal.md b/docs/api/functions/createGoal.md
index 33562cf257d..613e4c5faf4 100644
--- a/docs/api/functions/createGoal.md
+++ b/docs/api/functions/createGoal.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / createGoal
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / createGoal
# Function: createGoal()
@@ -18,4 +18,4 @@
## Defined in
-[packages/core/src/goals.ts:54](https://github.com/ai16z/eliza/blob/main/packages/core/src/goals.ts#L54)
+[packages/core/src/goals.ts:55](https://github.com/ai16z/eliza/blob/main/packages/core/src/goals.ts#L55)
diff --git a/docs/api/functions/createRelationship.md b/docs/api/functions/createRelationship.md
index 77e2794b924..cca297599b3 100644
--- a/docs/api/functions/createRelationship.md
+++ b/docs/api/functions/createRelationship.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / createRelationship
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / createRelationship
# Function: createRelationship()
diff --git a/docs/api/functions/embed.md b/docs/api/functions/embed.md
index 8455816e987..48d8d162956 100644
--- a/docs/api/functions/embed.md
+++ b/docs/api/functions/embed.md
@@ -1,25 +1,27 @@
-[@ai16z/eliza v1.0.0](../index.md) / embed
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / embed
# Function: embed()
> **embed**(`runtime`, `input`): `Promise`\<`number`[]\>
-Send a message to the OpenAI API for embedding.
+Generate embeddings for input text using configured model provider
## Parameters
• **runtime**: [`IAgentRuntime`](../interfaces/IAgentRuntime.md)
+The agent runtime containing model configuration
+
• **input**: `string`
-The input to be embedded.
+The text to generate embeddings for
## Returns
`Promise`\<`number`[]\>
-The embedding of the input.
+Array of embedding numbers
## Defined in
-[packages/core/src/embedding.ts:88](https://github.com/ai16z/eliza/blob/main/packages/core/src/embedding.ts#L88)
+[packages/core/src/embedding.ts:79](https://github.com/ai16z/eliza/blob/main/packages/core/src/embedding.ts#L79)
diff --git a/docs/api/functions/findNearestEnvFile.md b/docs/api/functions/findNearestEnvFile.md
index 4d453763ce3..456d1f1cf00 100644
--- a/docs/api/functions/findNearestEnvFile.md
+++ b/docs/api/functions/findNearestEnvFile.md
@@ -1,11 +1,11 @@
-[@ai16z/eliza v1.0.0](../index.md) / findNearestEnvFile
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / findNearestEnvFile
# Function: findNearestEnvFile()
> **findNearestEnvFile**(`startDir`?): `string`
Recursively searches for a .env file starting from the current directory
-and moving up through parent directories
+and moving up through parent directories (Node.js only)
## Parameters
@@ -21,4 +21,4 @@ Path to the nearest .env file or null if not found
## Defined in
-[packages/core/src/settings.ts:11](https://github.com/ai16z/eliza/blob/main/packages/core/src/settings.ts#L11)
+[packages/core/src/settings.ts:27](https://github.com/ai16z/eliza/blob/main/packages/core/src/settings.ts#L27)
diff --git a/docs/api/functions/formatActionNames.md b/docs/api/functions/formatActionNames.md
index b0394f395da..06a8acc87ae 100644
--- a/docs/api/functions/formatActionNames.md
+++ b/docs/api/functions/formatActionNames.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / formatActionNames
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / formatActionNames
# Function: formatActionNames()
diff --git a/docs/api/functions/formatActions.md b/docs/api/functions/formatActions.md
index 60bb47ece40..207c94346e9 100644
--- a/docs/api/functions/formatActions.md
+++ b/docs/api/functions/formatActions.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / formatActions
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / formatActions
# Function: formatActions()
diff --git a/docs/api/functions/formatActors.md b/docs/api/functions/formatActors.md
index 32e29229285..00d73ee560d 100644
--- a/docs/api/functions/formatActors.md
+++ b/docs/api/functions/formatActors.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / formatActors
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / formatActors
# Function: formatActors()
diff --git a/docs/api/functions/formatEvaluatorExampleDescriptions.md b/docs/api/functions/formatEvaluatorExampleDescriptions.md
index 8ef7c7d6280..fc59fb21841 100644
--- a/docs/api/functions/formatEvaluatorExampleDescriptions.md
+++ b/docs/api/functions/formatEvaluatorExampleDescriptions.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / formatEvaluatorExampleDescriptions
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / formatEvaluatorExampleDescriptions
# Function: formatEvaluatorExampleDescriptions()
diff --git a/docs/api/functions/formatEvaluatorExamples.md b/docs/api/functions/formatEvaluatorExamples.md
index 816e8b9ab26..7dd744e34d4 100644
--- a/docs/api/functions/formatEvaluatorExamples.md
+++ b/docs/api/functions/formatEvaluatorExamples.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / formatEvaluatorExamples
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / formatEvaluatorExamples
# Function: formatEvaluatorExamples()
diff --git a/docs/api/functions/formatEvaluatorNames.md b/docs/api/functions/formatEvaluatorNames.md
index 7609ea9994c..9b7a0895a2c 100644
--- a/docs/api/functions/formatEvaluatorNames.md
+++ b/docs/api/functions/formatEvaluatorNames.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / formatEvaluatorNames
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / formatEvaluatorNames
# Function: formatEvaluatorNames()
diff --git a/docs/api/functions/formatEvaluators.md b/docs/api/functions/formatEvaluators.md
index 0dd2b15a6dc..44df6f07095 100644
--- a/docs/api/functions/formatEvaluators.md
+++ b/docs/api/functions/formatEvaluators.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / formatEvaluators
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / formatEvaluators
# Function: formatEvaluators()
diff --git a/docs/api/functions/formatGoalsAsString.md b/docs/api/functions/formatGoalsAsString.md
index 6f35d9cc289..6198cfeac6d 100644
--- a/docs/api/functions/formatGoalsAsString.md
+++ b/docs/api/functions/formatGoalsAsString.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / formatGoalsAsString
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / formatGoalsAsString
# Function: formatGoalsAsString()
@@ -16,4 +16,4 @@
## Defined in
-[packages/core/src/goals.ts:29](https://github.com/ai16z/eliza/blob/main/packages/core/src/goals.ts#L29)
+[packages/core/src/goals.ts:30](https://github.com/ai16z/eliza/blob/main/packages/core/src/goals.ts#L30)
diff --git a/docs/api/functions/formatMessages.md b/docs/api/functions/formatMessages.md
index b53a93a94c4..35519d0ea5d 100644
--- a/docs/api/functions/formatMessages.md
+++ b/docs/api/functions/formatMessages.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / formatMessages
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / formatMessages
# Function: formatMessages()
diff --git a/docs/api/functions/formatPosts.md b/docs/api/functions/formatPosts.md
index 3a322be49c2..6e99854957c 100644
--- a/docs/api/functions/formatPosts.md
+++ b/docs/api/functions/formatPosts.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / formatPosts
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / formatPosts
# Function: formatPosts()
diff --git a/docs/api/functions/formatRelationships.md b/docs/api/functions/formatRelationships.md
index d1bb9d16ece..b31a00409fd 100644
--- a/docs/api/functions/formatRelationships.md
+++ b/docs/api/functions/formatRelationships.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / formatRelationships
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / formatRelationships
# Function: formatRelationships()
diff --git a/docs/api/functions/formatTimestamp.md b/docs/api/functions/formatTimestamp.md
index 19793218c9a..e44e99777ff 100644
--- a/docs/api/functions/formatTimestamp.md
+++ b/docs/api/functions/formatTimestamp.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / formatTimestamp
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / formatTimestamp
# Function: formatTimestamp()
diff --git a/docs/api/functions/generateCaption.md b/docs/api/functions/generateCaption.md
index 9a6dc733fd7..98546b71f05 100644
--- a/docs/api/functions/generateCaption.md
+++ b/docs/api/functions/generateCaption.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / generateCaption
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / generateCaption
# Function: generateCaption()
@@ -26,4 +26,4 @@
## Defined in
-[packages/core/src/generation.ts:845](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L845)
+[packages/core/src/generation.ts:874](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L874)
diff --git a/docs/api/functions/generateImage.md b/docs/api/functions/generateImage.md
index bed897a2fd4..003aa1805cb 100644
--- a/docs/api/functions/generateImage.md
+++ b/docs/api/functions/generateImage.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / generateImage
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / generateImage
# Function: generateImage()
@@ -48,4 +48,4 @@
## Defined in
-[packages/core/src/generation.ts:719](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L719)
+[packages/core/src/generation.ts:746](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L746)
diff --git a/docs/api/functions/generateMessageResponse.md b/docs/api/functions/generateMessageResponse.md
index 3a04117964b..c66e2368eba 100644
--- a/docs/api/functions/generateMessageResponse.md
+++ b/docs/api/functions/generateMessageResponse.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / generateMessageResponse
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / generateMessageResponse
# Function: generateMessageResponse()
@@ -28,4 +28,4 @@ The completed message.
## Defined in
-[packages/core/src/generation.ts:681](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L681)
+[packages/core/src/generation.ts:706](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L706)
diff --git a/docs/api/functions/generateObject.md b/docs/api/functions/generateObject.md
index ac2e71d1aaf..bb78a86d9f6 100644
--- a/docs/api/functions/generateObject.md
+++ b/docs/api/functions/generateObject.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / generateObject
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / generateObject
# Function: generateObject()
@@ -20,4 +20,4 @@
## Defined in
-[packages/core/src/generation.ts:597](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L597)
+[packages/core/src/generation.ts:622](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L622)
diff --git a/docs/api/functions/generateObjectArray.md b/docs/api/functions/generateObjectArray.md
index c0fd43fc325..e69fdb87bda 100644
--- a/docs/api/functions/generateObjectArray.md
+++ b/docs/api/functions/generateObjectArray.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / generateObjectArray
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / generateObjectArray
# Function: generateObjectArray()
@@ -20,4 +20,4 @@
## Defined in
-[packages/core/src/generation.ts:633](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L633)
+[packages/core/src/generation.ts:658](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L658)
diff --git a/docs/api/functions/generateObjectV2.md b/docs/api/functions/generateObjectV2.md
index 971e9a54b94..297529a2d2c 100644
--- a/docs/api/functions/generateObjectV2.md
+++ b/docs/api/functions/generateObjectV2.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / generateObjectV2
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / generateObjectV2
# Function: generateObjectV2()
@@ -24,4 +24,4 @@ Configuration options for generating objects.
## Defined in
-[packages/core/src/generation.ts:897](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L897)
+[packages/core/src/generation.ts:931](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L931)
diff --git a/docs/api/functions/generateShouldRespond.md b/docs/api/functions/generateShouldRespond.md
index be73e0d603a..2c9adb73455 100644
--- a/docs/api/functions/generateShouldRespond.md
+++ b/docs/api/functions/generateShouldRespond.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / generateShouldRespond
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / generateShouldRespond
# Function: generateShouldRespond()
@@ -28,4 +28,4 @@ Promise resolving to "RESPOND", "IGNORE", "STOP" or null
## Defined in
-[packages/core/src/generation.ts:405](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L405)
+[packages/core/src/generation.ts:447](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L447)
diff --git a/docs/api/functions/generateText.md b/docs/api/functions/generateText.md
index 2b469758b4d..1fcc720611f 100644
--- a/docs/api/functions/generateText.md
+++ b/docs/api/functions/generateText.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / generateText
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / generateText
# Function: generateText()
@@ -32,4 +32,4 @@ The completed message.
## Defined in
-[packages/core/src/generation.ts:48](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L48)
+[packages/core/src/generation.ts:49](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L49)
diff --git a/docs/api/functions/generateTextArray.md b/docs/api/functions/generateTextArray.md
index 400b0929125..da52a818825 100644
--- a/docs/api/functions/generateTextArray.md
+++ b/docs/api/functions/generateTextArray.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / generateTextArray
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / generateTextArray
# Function: generateTextArray()
@@ -28,4 +28,4 @@ Promise resolving to an array of strings parsed from the model's response
## Defined in
-[packages/core/src/generation.ts:561](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L561)
+[packages/core/src/generation.ts:586](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L586)
diff --git a/docs/api/functions/generateTrueOrFalse.md b/docs/api/functions/generateTrueOrFalse.md
index e57c6e0624f..f60239caf9d 100644
--- a/docs/api/functions/generateTrueOrFalse.md
+++ b/docs/api/functions/generateTrueOrFalse.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / generateTrueOrFalse
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / generateTrueOrFalse
# Function: generateTrueOrFalse()
@@ -28,4 +28,4 @@ Promise resolving to a boolean value parsed from the model's response
## Defined in
-[packages/core/src/generation.ts:505](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L505)
+[packages/core/src/generation.ts:530](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L530)
diff --git a/docs/api/functions/getActorDetails.md b/docs/api/functions/getActorDetails.md
index 70d418eea4d..ea912f70b80 100644
--- a/docs/api/functions/getActorDetails.md
+++ b/docs/api/functions/getActorDetails.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / getActorDetails
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / getActorDetails
# Function: getActorDetails()
diff --git a/docs/api/functions/getEndpoint.md b/docs/api/functions/getEndpoint.md
index ae9c1c4b1b9..bb9661c5f2d 100644
--- a/docs/api/functions/getEndpoint.md
+++ b/docs/api/functions/getEndpoint.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / getEndpoint
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / getEndpoint
# Function: getEndpoint()
diff --git a/docs/api/functions/getEnvVariable.md b/docs/api/functions/getEnvVariable.md
new file mode 100644
index 00000000000..10d98a4f21d
--- /dev/null
+++ b/docs/api/functions/getEnvVariable.md
@@ -0,0 +1,27 @@
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / getEnvVariable
+
+# Function: getEnvVariable()
+
+> **getEnvVariable**(`key`, `defaultValue`?): `string` \| `undefined`
+
+Gets a specific environment variable
+
+## Parameters
+
+• **key**: `string`
+
+The environment variable key
+
+• **defaultValue?**: `string`
+
+Optional default value if key doesn't exist
+
+## Returns
+
+`string` \| `undefined`
+
+The environment variable value or default value
+
+## Defined in
+
+[packages/core/src/settings.ts:87](https://github.com/ai16z/eliza/blob/main/packages/core/src/settings.ts#L87)
diff --git a/docs/api/functions/getGoals.md b/docs/api/functions/getGoals.md
index a392e39084c..d7e4fe60af5 100644
--- a/docs/api/functions/getGoals.md
+++ b/docs/api/functions/getGoals.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / getGoals
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / getGoals
# Function: getGoals()
diff --git a/docs/api/functions/getModel.md b/docs/api/functions/getModel.md
index 112c12626f1..02a11ba0cb9 100644
--- a/docs/api/functions/getModel.md
+++ b/docs/api/functions/getModel.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / getModel
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / getModel
# Function: getModel()
diff --git a/docs/api/functions/getProviders.md b/docs/api/functions/getProviders.md
index ad7ac647d25..95e34e0d208 100644
--- a/docs/api/functions/getProviders.md
+++ b/docs/api/functions/getProviders.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / getProviders
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / getProviders
# Function: getProviders()
diff --git a/docs/api/functions/getRelationship.md b/docs/api/functions/getRelationship.md
index 26ce57e86f4..d7b4c6bbeaf 100644
--- a/docs/api/functions/getRelationship.md
+++ b/docs/api/functions/getRelationship.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / getRelationship
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / getRelationship
# Function: getRelationship()
diff --git a/docs/api/functions/getRelationships.md b/docs/api/functions/getRelationships.md
index 8bdccb4c1b1..765c23e9dd2 100644
--- a/docs/api/functions/getRelationships.md
+++ b/docs/api/functions/getRelationships.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / getRelationships
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / getRelationships
# Function: getRelationships()
diff --git a/docs/api/functions/handleProvider.md b/docs/api/functions/handleProvider.md
index 8cd392d307c..6a56c7f5668 100644
--- a/docs/api/functions/handleProvider.md
+++ b/docs/api/functions/handleProvider.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / handleProvider
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / handleProvider
# Function: handleProvider()
@@ -20,4 +20,4 @@ Configuration options specific to the provider.
## Defined in
-[packages/core/src/generation.ts:979](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L979)
+[packages/core/src/generation.ts:1016](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L1016)
diff --git a/docs/api/functions/hasEnvVariable.md b/docs/api/functions/hasEnvVariable.md
new file mode 100644
index 00000000000..af523d3e0e5
--- /dev/null
+++ b/docs/api/functions/hasEnvVariable.md
@@ -0,0 +1,23 @@
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / hasEnvVariable
+
+# Function: hasEnvVariable()
+
+> **hasEnvVariable**(`key`): `boolean`
+
+Checks if a specific environment variable exists
+
+## Parameters
+
+• **key**: `string`
+
+The environment variable key
+
+## Returns
+
+`boolean`
+
+True if the environment variable exists
+
+## Defined in
+
+[packages/core/src/settings.ts:102](https://github.com/ai16z/eliza/blob/main/packages/core/src/settings.ts#L102)
diff --git a/docs/api/functions/loadEnvConfig.md b/docs/api/functions/loadEnvConfig.md
index 7cdd591ff4f..5c88953a078 100644
--- a/docs/api/functions/loadEnvConfig.md
+++ b/docs/api/functions/loadEnvConfig.md
@@ -1,21 +1,22 @@
-[@ai16z/eliza v1.0.0](../index.md) / loadEnvConfig
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / loadEnvConfig
# Function: loadEnvConfig()
-> **loadEnvConfig**(): `ProcessEnv`
+> **loadEnvConfig**(): `Settings`
-Loads environment variables from the nearest .env file
+Loads environment variables from the nearest .env file in Node.js
+or returns configured settings in browser
## Returns
-`ProcessEnv`
+`Settings`
Environment variables object
## Throws
-If no .env file is found
+If no .env file is found in Node.js environment
## Defined in
-[packages/core/src/settings.ts:36](https://github.com/ai16z/eliza/blob/main/packages/core/src/settings.ts#L36)
+[packages/core/src/settings.ts:63](https://github.com/ai16z/eliza/blob/main/packages/core/src/settings.ts#L63)
diff --git a/docs/api/functions/parseBooleanFromText.md b/docs/api/functions/parseBooleanFromText.md
index b3f2e6b54a5..d334980b23e 100644
--- a/docs/api/functions/parseBooleanFromText.md
+++ b/docs/api/functions/parseBooleanFromText.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / parseBooleanFromText
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / parseBooleanFromText
# Function: parseBooleanFromText()
diff --git a/docs/api/functions/parseJSONObjectFromText.md b/docs/api/functions/parseJSONObjectFromText.md
index 66a28364b39..5014b37ad63 100644
--- a/docs/api/functions/parseJSONObjectFromText.md
+++ b/docs/api/functions/parseJSONObjectFromText.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / parseJSONObjectFromText
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / parseJSONObjectFromText
# Function: parseJSONObjectFromText()
@@ -24,4 +24,4 @@ An object parsed from the JSON string if successful; otherwise, null or the resu
## Defined in
-[packages/core/src/parsing.ts:101](https://github.com/ai16z/eliza/blob/main/packages/core/src/parsing.ts#L101)
+[packages/core/src/parsing.ts:103](https://github.com/ai16z/eliza/blob/main/packages/core/src/parsing.ts#L103)
diff --git a/docs/api/functions/parseJsonArrayFromText.md b/docs/api/functions/parseJsonArrayFromText.md
index e3c69619944..077971eac0c 100644
--- a/docs/api/functions/parseJsonArrayFromText.md
+++ b/docs/api/functions/parseJsonArrayFromText.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / parseJsonArrayFromText
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / parseJsonArrayFromText
# Function: parseJsonArrayFromText()
diff --git a/docs/api/functions/parseShouldRespondFromText.md b/docs/api/functions/parseShouldRespondFromText.md
index be1005f4432..c77cb3ee291 100644
--- a/docs/api/functions/parseShouldRespondFromText.md
+++ b/docs/api/functions/parseShouldRespondFromText.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / parseShouldRespondFromText
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / parseShouldRespondFromText
# Function: parseShouldRespondFromText()
diff --git a/docs/api/functions/retrieveCachedEmbedding.md b/docs/api/functions/retrieveCachedEmbedding.md
index b03afaabfce..92c4d067ccd 100644
--- a/docs/api/functions/retrieveCachedEmbedding.md
+++ b/docs/api/functions/retrieveCachedEmbedding.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / retrieveCachedEmbedding
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / retrieveCachedEmbedding
# Function: retrieveCachedEmbedding()
@@ -16,4 +16,4 @@
## Defined in
-[packages/core/src/embedding.ts:146](https://github.com/ai16z/eliza/blob/main/packages/core/src/embedding.ts#L146)
+[packages/core/src/embedding.ts:210](https://github.com/ai16z/eliza/blob/main/packages/core/src/embedding.ts#L210)
diff --git a/docs/api/functions/splitChunks.md b/docs/api/functions/splitChunks.md
index 03523cba5a4..6379d967dce 100644
--- a/docs/api/functions/splitChunks.md
+++ b/docs/api/functions/splitChunks.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / splitChunks
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / splitChunks
# Function: splitChunks()
@@ -12,11 +12,11 @@ Splits content into chunks of specified size with optional overlapping bleed sec
The text content to split into chunks
-• **chunkSize**: `number`
+• **chunkSize**: `number` = `512`
The maximum size of each chunk in tokens
-• **bleed**: `number` = `100`
+• **bleed**: `number` = `20`
Number of characters to overlap between chunks (default: 100)
@@ -28,4 +28,4 @@ Promise resolving to array of text chunks with bleed sections
## Defined in
-[packages/core/src/generation.ts:461](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L461)
+[packages/core/src/generation.ts:502](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L502)
diff --git a/docs/api/functions/stringToUuid.md b/docs/api/functions/stringToUuid.md
index b457d6ea8af..bbe7e3998a5 100644
--- a/docs/api/functions/stringToUuid.md
+++ b/docs/api/functions/stringToUuid.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / stringToUuid
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / stringToUuid
# Function: stringToUuid()
diff --git a/docs/api/functions/trimTokens.md b/docs/api/functions/trimTokens.md
index 395d2adf889..d295b60ed86 100644
--- a/docs/api/functions/trimTokens.md
+++ b/docs/api/functions/trimTokens.md
@@ -1,27 +1,31 @@
-[@ai16z/eliza v1.0.0](../index.md) / trimTokens
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / trimTokens
# Function: trimTokens()
-> **trimTokens**(`context`, `maxTokens`, `model`): `any`
+> **trimTokens**(`context`, `maxTokens`, `model`): `string`
Truncate the context to the maximum length allowed by the model.
## Parameters
-• **context**: `any`
+• **context**: `string`
-The context of the message to be completed.
+The text to truncate
-• **maxTokens**: `any`
+• **maxTokens**: `number`
-• **model**: `any`
+Maximum number of tokens to keep
-The model to use for generateText.
+• **model**: `TiktokenModel`
+
+The tokenizer model to use
## Returns
-`any`
+`string`
+
+The truncated text
## Defined in
-[packages/core/src/generation.ts:379](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L379)
+[packages/core/src/generation.ts:397](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L397)
diff --git a/docs/api/functions/updateGoal.md b/docs/api/functions/updateGoal.md
index 42659f185e1..1d40ed9c990 100644
--- a/docs/api/functions/updateGoal.md
+++ b/docs/api/functions/updateGoal.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / updateGoal
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / updateGoal
# Function: updateGoal()
@@ -18,4 +18,4 @@
## Defined in
-[packages/core/src/goals.ts:44](https://github.com/ai16z/eliza/blob/main/packages/core/src/goals.ts#L44)
+[packages/core/src/goals.ts:45](https://github.com/ai16z/eliza/blob/main/packages/core/src/goals.ts#L45)
diff --git a/docs/api/functions/validateCharacterConfig.md b/docs/api/functions/validateCharacterConfig.md
new file mode 100644
index 00000000000..c4add5baaed
--- /dev/null
+++ b/docs/api/functions/validateCharacterConfig.md
@@ -0,0 +1,19 @@
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / validateCharacterConfig
+
+# Function: validateCharacterConfig()
+
+> **validateCharacterConfig**(`json`): [`CharacterConfig`](../type-aliases/CharacterConfig.md)
+
+Validation function
+
+## Parameters
+
+• **json**: `unknown`
+
+## Returns
+
+[`CharacterConfig`](../type-aliases/CharacterConfig.md)
+
+## Defined in
+
+[packages/core/src/enviroment.ts:131](https://github.com/ai16z/eliza/blob/main/packages/core/src/enviroment.ts#L131)
diff --git a/docs/api/functions/validateEnv.md b/docs/api/functions/validateEnv.md
new file mode 100644
index 00000000000..781767d1a54
--- /dev/null
+++ b/docs/api/functions/validateEnv.md
@@ -0,0 +1,15 @@
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / validateEnv
+
+# Function: validateEnv()
+
+> **validateEnv**(): [`EnvConfig`](../type-aliases/EnvConfig.md)
+
+Validation function
+
+## Returns
+
+[`EnvConfig`](../type-aliases/EnvConfig.md)
+
+## Defined in
+
+[packages/core/src/enviroment.ts:26](https://github.com/ai16z/eliza/blob/main/packages/core/src/enviroment.ts#L26)
diff --git a/docs/api/index.md b/docs/api/index.md
index 8d3d1253c0e..8140fb611a5 100644
--- a/docs/api/index.md
+++ b/docs/api/index.md
@@ -1,4 +1,4 @@
-# @ai16z/eliza v1.0.0
+# @ai16z/eliza v0.1.4-alpha.3
## Enumerations
@@ -7,9 +7,14 @@
- [ModelProviderName](enumerations/ModelProviderName.md)
- [Clients](enumerations/Clients.md)
- [ServiceType](enumerations/ServiceType.md)
+- [LoggingLevel](enumerations/LoggingLevel.md)
## Classes
+- [MemoryCacheAdapter](classes/MemoryCacheAdapter.md)
+- [FsCacheAdapter](classes/FsCacheAdapter.md)
+- [DbCacheAdapter](classes/DbCacheAdapter.md)
+- [CacheManager](classes/CacheManager.md)
- [DatabaseAdapter](classes/DatabaseAdapter.md)
- [MemoryManager](classes/MemoryManager.md)
- [AgentRuntime](classes/AgentRuntime.md)
@@ -17,6 +22,7 @@
## Interfaces
+- [ICacheAdapter](interfaces/ICacheAdapter.md)
- [GenerationOptions](interfaces/GenerationOptions.md)
- [Content](interfaces/Content.md)
- [ActionExample](interfaces/ActionExample.md)
@@ -36,7 +42,9 @@
- [Participant](interfaces/Participant.md)
- [Room](interfaces/Room.md)
- [IDatabaseAdapter](interfaces/IDatabaseAdapter.md)
+- [IDatabaseCacheAdapter](interfaces/IDatabaseCacheAdapter.md)
- [IMemoryManager](interfaces/IMemoryManager.md)
+- [ICacheManager](interfaces/ICacheManager.md)
- [IAgentRuntime](interfaces/IAgentRuntime.md)
- [IImageDescriptionService](interfaces/IImageDescriptionService.md)
- [ITranscriptionService](interfaces/ITranscriptionService.md)
@@ -48,6 +56,8 @@
## Type Aliases
+- [EnvConfig](type-aliases/EnvConfig.md)
+- [CharacterConfig](type-aliases/CharacterConfig.md)
- [UUID](type-aliases/UUID.md)
- [Model](type-aliases/Model.md)
- [Models](type-aliases/Models.md)
@@ -58,11 +68,16 @@
- [Client](type-aliases/Client.md)
- [Plugin](type-aliases/Plugin.md)
- [Character](type-aliases/Character.md)
+- [CacheOptions](type-aliases/CacheOptions.md)
+- [KnowledgeItem](type-aliases/KnowledgeItem.md)
## Variables
- [defaultCharacter](variables/defaultCharacter.md)
+- [envSchema](variables/envSchema.md)
+- [CharacterSchema](variables/CharacterSchema.md)
- [evaluationTemplate](variables/evaluationTemplate.md)
+- [knowledge](variables/knowledge.md)
- [elizaLogger](variables/elizaLogger.md)
- [embeddingDimension](variables/embeddingDimension.md)
- [embeddingZeroVector](variables/embeddingZeroVector.md)
@@ -82,6 +97,8 @@
- [addHeader](functions/addHeader.md)
- [embed](functions/embed.md)
- [retrieveCachedEmbedding](functions/retrieveCachedEmbedding.md)
+- [validateEnv](functions/validateEnv.md)
+- [validateCharacterConfig](functions/validateCharacterConfig.md)
- [formatEvaluatorNames](functions/formatEvaluatorNames.md)
- [formatEvaluators](functions/formatEvaluators.md)
- [formatEvaluatorExamples](functions/formatEvaluatorExamples.md)
@@ -120,5 +137,8 @@
- [getRelationships](functions/getRelationships.md)
- [formatRelationships](functions/formatRelationships.md)
- [findNearestEnvFile](functions/findNearestEnvFile.md)
+- [configureSettings](functions/configureSettings.md)
- [loadEnvConfig](functions/loadEnvConfig.md)
+- [getEnvVariable](functions/getEnvVariable.md)
+- [hasEnvVariable](functions/hasEnvVariable.md)
- [stringToUuid](functions/stringToUuid.md)
diff --git a/docs/api/interfaces/Account.md b/docs/api/interfaces/Account.md
index b28d0af497d..c7366448e49 100644
--- a/docs/api/interfaces/Account.md
+++ b/docs/api/interfaces/Account.md
@@ -1,8 +1,8 @@
-[@ai16z/eliza v1.0.0](../index.md) / Account
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / Account
# Interface: Account
-Represents a user, including their name, details, and a unique identifier.
+Represents a user account
## Properties
@@ -10,60 +10,72 @@ Represents a user, including their name, details, and a unique identifier.
> **id**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+Unique identifier
+
#### Defined in
-[packages/core/src/types.ts:275](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L275)
+[packages/core/src/types.ts:478](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L478)
----
+***
### name
> **name**: `string`
+Display name
+
#### Defined in
-[packages/core/src/types.ts:276](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L276)
+[packages/core/src/types.ts:481](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L481)
----
+***
### username
> **username**: `string`
+Username
+
#### Defined in
-[packages/core/src/types.ts:277](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L277)
+[packages/core/src/types.ts:484](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L484)
----
+***
### details?
> `optional` **details**: `object`
+Optional additional details
+
#### Index Signature
-\[`key`: `string`\]: `any`
+ \[`key`: `string`\]: `any`
#### Defined in
-[packages/core/src/types.ts:278](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L278)
+[packages/core/src/types.ts:487](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L487)
----
+***
### email?
> `optional` **email**: `string`
+Optional email
+
#### Defined in
-[packages/core/src/types.ts:279](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L279)
+[packages/core/src/types.ts:490](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L490)
----
+***
### avatarUrl?
> `optional` **avatarUrl**: `string`
+Optional avatar URL
+
#### Defined in
-[packages/core/src/types.ts:280](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L280)
+[packages/core/src/types.ts:493](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L493)
diff --git a/docs/api/interfaces/Action.md b/docs/api/interfaces/Action.md
index f60a0f9bddf..5f7bbb3b380 100644
--- a/docs/api/interfaces/Action.md
+++ b/docs/api/interfaces/Action.md
@@ -1,8 +1,8 @@
-[@ai16z/eliza v1.0.0](../index.md) / Action
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / Action
# Interface: Action
-Represents an action that the agent can perform, including conditions for its use, a description, examples, a handler function, and a validation function.
+Represents an action the agent can perform
## Properties
@@ -10,56 +10,68 @@ Represents an action that the agent can perform, including conditions for its us
> **similes**: `string`[]
+Similar action descriptions
+
#### Defined in
-[packages/core/src/types.ts:217](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L217)
+[packages/core/src/types.ts:377](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L377)
----
+***
### description
> **description**: `string`
+Detailed description
+
#### Defined in
-[packages/core/src/types.ts:218](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L218)
+[packages/core/src/types.ts:380](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L380)
----
+***
### examples
> **examples**: [`ActionExample`](ActionExample.md)[][]
+Example usages
+
#### Defined in
-[packages/core/src/types.ts:219](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L219)
+[packages/core/src/types.ts:383](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L383)
----
+***
### handler
> **handler**: [`Handler`](../type-aliases/Handler.md)
+Handler function
+
#### Defined in
-[packages/core/src/types.ts:220](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L220)
+[packages/core/src/types.ts:386](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L386)
----
+***
### name
> **name**: `string`
+Action name
+
#### Defined in
-[packages/core/src/types.ts:221](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L221)
+[packages/core/src/types.ts:389](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L389)
----
+***
### validate
> **validate**: [`Validator`](../type-aliases/Validator.md)
+Validation function
+
#### Defined in
-[packages/core/src/types.ts:222](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L222)
+[packages/core/src/types.ts:392](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L392)
diff --git a/docs/api/interfaces/ActionExample.md b/docs/api/interfaces/ActionExample.md
index c17ef42017f..7241d58fde5 100644
--- a/docs/api/interfaces/ActionExample.md
+++ b/docs/api/interfaces/ActionExample.md
@@ -1,8 +1,8 @@
-[@ai16z/eliza v1.0.0](../index.md) / ActionExample
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / ActionExample
# Interface: ActionExample
-Represents an example of content, typically used for demonstrating or testing purposes. Includes user, content, optional action, and optional source.
+Example content with associated user for demonstration purposes
## Properties
@@ -10,16 +10,20 @@ Represents an example of content, typically used for demonstrating or testing pu
> **user**: `string`
+User associated with the example
+
#### Defined in
-[packages/core/src/types.ts:25](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L25)
+[packages/core/src/types.ts:39](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L39)
----
+***
### content
> **content**: [`Content`](Content.md)
+Content of the example
+
#### Defined in
-[packages/core/src/types.ts:26](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L26)
+[packages/core/src/types.ts:42](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L42)
diff --git a/docs/api/interfaces/Actor.md b/docs/api/interfaces/Actor.md
index 0e613ce860c..cd0e8d79d5d 100644
--- a/docs/api/interfaces/Actor.md
+++ b/docs/api/interfaces/Actor.md
@@ -1,8 +1,8 @@
-[@ai16z/eliza v1.0.0](../index.md) / Actor
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / Actor
# Interface: Actor
-Represents an actor in the conversation, which could be a user or the agent itself, including their name, details (such as tagline, summary, and quote), and a unique identifier.
+Represents an actor/participant in a conversation
## Properties
@@ -10,48 +10,62 @@ Represents an actor in the conversation, which could be a user or the agent itse
> **name**: `string`
+Display name
+
#### Defined in
-[packages/core/src/types.ts:41](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L41)
+[packages/core/src/types.ts:61](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L61)
----
+***
### username
> **username**: `string`
+Username/handle
+
#### Defined in
-[packages/core/src/types.ts:42](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L42)
+[packages/core/src/types.ts:64](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L64)
----
+***
### details
> **details**: `object`
+Additional profile details
+
#### tagline
> **tagline**: `string`
+Short profile tagline
+
#### summary
> **summary**: `string`
+Longer profile summary
+
#### quote
> **quote**: `string`
+Favorite quote
+
#### Defined in
-[packages/core/src/types.ts:43](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L43)
+[packages/core/src/types.ts:67](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L67)
----
+***
### id
> **id**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+Unique identifier
+
#### Defined in
-[packages/core/src/types.ts:44](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L44)
+[packages/core/src/types.ts:79](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L79)
diff --git a/docs/api/interfaces/Content.md b/docs/api/interfaces/Content.md
index fbdbbdc6491..f34afcbd288 100644
--- a/docs/api/interfaces/Content.md
+++ b/docs/api/interfaces/Content.md
@@ -1,12 +1,12 @@
-[@ai16z/eliza v1.0.0](../index.md) / Content
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / Content
# Interface: Content
-Represents the content of a message, including its main text (`content`), any associated action (`action`), and the source of the content (`source`), if applicable.
+Represents the content of a message or communication
## Indexable
-\[`key`: `string`\]: `unknown`
+ \[`key`: `string`\]: `unknown`
## Properties
@@ -14,56 +14,68 @@ Represents the content of a message, including its main text (`content`), any as
> **text**: `string`
+The main text content
+
#### Defined in
-[packages/core/src/types.ts:12](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L12)
+[packages/core/src/types.ts:13](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L13)
----
+***
### action?
> `optional` **action**: `string`
+Optional action associated with the message
+
#### Defined in
-[packages/core/src/types.ts:13](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L13)
+[packages/core/src/types.ts:16](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L16)
----
+***
### source?
> `optional` **source**: `string`
+Optional source/origin of the content
+
#### Defined in
-[packages/core/src/types.ts:14](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L14)
+[packages/core/src/types.ts:19](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L19)
----
+***
### url?
> `optional` **url**: `string`
+URL of the original message/post (e.g. tweet URL, Discord message link)
+
#### Defined in
-[packages/core/src/types.ts:15](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L15)
+[packages/core/src/types.ts:22](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L22)
----
+***
### inReplyTo?
> `optional` **inReplyTo**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+UUID of parent message if this is a reply/thread
+
#### Defined in
-[packages/core/src/types.ts:16](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L16)
+[packages/core/src/types.ts:25](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L25)
----
+***
### attachments?
> `optional` **attachments**: [`Media`](../type-aliases/Media.md)[]
+Array of media attachments
+
#### Defined in
-[packages/core/src/types.ts:17](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L17)
+[packages/core/src/types.ts:28](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L28)
diff --git a/docs/api/interfaces/ConversationExample.md b/docs/api/interfaces/ConversationExample.md
index 28f7f975a5d..c89183e2cee 100644
--- a/docs/api/interfaces/ConversationExample.md
+++ b/docs/api/interfaces/ConversationExample.md
@@ -1,8 +1,8 @@
-[@ai16z/eliza v1.0.0](../index.md) / ConversationExample
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / ConversationExample
# Interface: ConversationExample
-Represents an example of content, typically used for demonstrating or testing purposes. Includes user, content, optional action, and optional source.
+Example conversation content with user ID
## Properties
@@ -10,16 +10,20 @@ Represents an example of content, typically used for demonstrating or testing pu
> **userId**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+UUID of user in conversation
+
#### Defined in
-[packages/core/src/types.ts:33](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L33)
+[packages/core/src/types.ts:50](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L50)
----
+***
### content
> **content**: [`Content`](Content.md)
+Content of the conversation
+
#### Defined in
-[packages/core/src/types.ts:34](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L34)
+[packages/core/src/types.ts:53](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L53)
diff --git a/docs/api/interfaces/EvaluationExample.md b/docs/api/interfaces/EvaluationExample.md
index c1dab7cea23..986975ca97d 100644
--- a/docs/api/interfaces/EvaluationExample.md
+++ b/docs/api/interfaces/EvaluationExample.md
@@ -1,8 +1,8 @@
-[@ai16z/eliza v1.0.0](../index.md) / EvaluationExample
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / EvaluationExample
# Interface: EvaluationExample
-Represents an example for evaluation, including the context, an array of message examples, and the expected outcome.
+Example for evaluating agent behavior
## Properties
@@ -10,26 +10,32 @@ Represents an example for evaluation, including the context, an array of message
> **context**: `string`
+Evaluation context
+
#### Defined in
-[packages/core/src/types.ts:229](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L229)
+[packages/core/src/types.ts:400](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L400)
----
+***
### messages
> **messages**: [`ActionExample`](ActionExample.md)[]
+Example messages
+
#### Defined in
-[packages/core/src/types.ts:230](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L230)
+[packages/core/src/types.ts:403](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L403)
----
+***
### outcome
> **outcome**: `string`
+Expected outcome
+
#### Defined in
-[packages/core/src/types.ts:231](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L231)
+[packages/core/src/types.ts:406](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L406)
diff --git a/docs/api/interfaces/Evaluator.md b/docs/api/interfaces/Evaluator.md
index dcb4daae488..da2bc71eea3 100644
--- a/docs/api/interfaces/Evaluator.md
+++ b/docs/api/interfaces/Evaluator.md
@@ -1,8 +1,8 @@
-[@ai16z/eliza v1.0.0](../index.md) / Evaluator
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / Evaluator
# Interface: Evaluator
-Represents an evaluator, which is used to assess and guide the agent's responses based on the current context and state.
+Evaluator for assessing agent responses
## Properties
@@ -10,66 +10,80 @@ Represents an evaluator, which is used to assess and guide the agent's responses
> `optional` **alwaysRun**: `boolean`
+Whether to always run
+
#### Defined in
-[packages/core/src/types.ts:238](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L238)
+[packages/core/src/types.ts:414](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L414)
----
+***
### description
> **description**: `string`
+Detailed description
+
#### Defined in
-[packages/core/src/types.ts:239](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L239)
+[packages/core/src/types.ts:417](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L417)
----
+***
### similes
> **similes**: `string`[]
+Similar evaluator descriptions
+
#### Defined in
-[packages/core/src/types.ts:240](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L240)
+[packages/core/src/types.ts:420](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L420)
----
+***
### examples
> **examples**: [`EvaluationExample`](EvaluationExample.md)[]
+Example evaluations
+
#### Defined in
-[packages/core/src/types.ts:241](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L241)
+[packages/core/src/types.ts:423](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L423)
----
+***
### handler
> **handler**: [`Handler`](../type-aliases/Handler.md)
+Handler function
+
#### Defined in
-[packages/core/src/types.ts:242](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L242)
+[packages/core/src/types.ts:426](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L426)
----
+***
### name
> **name**: `string`
+Evaluator name
+
#### Defined in
-[packages/core/src/types.ts:243](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L243)
+[packages/core/src/types.ts:429](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L429)
----
+***
### validate
> **validate**: [`Validator`](../type-aliases/Validator.md)
+Validation function
+
#### Defined in
-[packages/core/src/types.ts:244](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L244)
+[packages/core/src/types.ts:432](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L432)
diff --git a/docs/api/interfaces/GenerationOptions.md b/docs/api/interfaces/GenerationOptions.md
index 5e76feb36e6..65eb209765a 100644
--- a/docs/api/interfaces/GenerationOptions.md
+++ b/docs/api/interfaces/GenerationOptions.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / GenerationOptions
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / GenerationOptions
# Interface: GenerationOptions
@@ -12,9 +12,9 @@ Configuration options for generating objects with a model.
#### Defined in
-[packages/core/src/generation.ts:867](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L867)
+[packages/core/src/generation.ts:901](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L901)
----
+***
### context
@@ -22,29 +22,29 @@ Configuration options for generating objects with a model.
#### Defined in
-[packages/core/src/generation.ts:868](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L868)
+[packages/core/src/generation.ts:902](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L902)
----
+***
### modelClass
-> **modelClass**: [`ModelClass`](../enumerations/ModelClass.md)
+> **modelClass**: `TiktokenModel`
#### Defined in
-[packages/core/src/generation.ts:869](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L869)
+[packages/core/src/generation.ts:903](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L903)
----
+***
### schema?
-> `optional` **schema**: `ZodSchema`
+> `optional` **schema**: `ZodType`\<`any`, `ZodTypeDef`, `any`\>
#### Defined in
-[packages/core/src/generation.ts:870](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L870)
+[packages/core/src/generation.ts:904](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L904)
----
+***
### schemaName?
@@ -52,9 +52,9 @@ Configuration options for generating objects with a model.
#### Defined in
-[packages/core/src/generation.ts:871](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L871)
+[packages/core/src/generation.ts:905](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L905)
----
+***
### schemaDescription?
@@ -62,9 +62,9 @@ Configuration options for generating objects with a model.
#### Defined in
-[packages/core/src/generation.ts:872](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L872)
+[packages/core/src/generation.ts:906](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L906)
----
+***
### stop?
@@ -72,9 +72,9 @@ Configuration options for generating objects with a model.
#### Defined in
-[packages/core/src/generation.ts:873](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L873)
+[packages/core/src/generation.ts:907](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L907)
----
+***
### mode?
@@ -82,14 +82,14 @@ Configuration options for generating objects with a model.
#### Defined in
-[packages/core/src/generation.ts:874](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L874)
+[packages/core/src/generation.ts:908](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L908)
----
+***
-### experimental_providerMetadata?
+### experimental\_providerMetadata?
-> `optional` **experimental_providerMetadata**: `Record`\<`string`, `unknown`\>
+> `optional` **experimental\_providerMetadata**: `Record`\<`string`, `unknown`\>
#### Defined in
-[packages/core/src/generation.ts:875](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L875)
+[packages/core/src/generation.ts:909](https://github.com/ai16z/eliza/blob/main/packages/core/src/generation.ts#L909)
diff --git a/docs/api/interfaces/Goal.md b/docs/api/interfaces/Goal.md
index 41456943b3c..7da451e6144 100644
--- a/docs/api/interfaces/Goal.md
+++ b/docs/api/interfaces/Goal.md
@@ -1,8 +1,8 @@
-[@ai16z/eliza v1.0.0](../index.md) / Goal
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / Goal
# Interface: Goal
-Represents a goal, which is a higher-level aim composed of one or more objectives. Goals are tracked to measure progress or achievements within the conversation or system.
+Represents a high-level goal composed of objectives
## Properties
@@ -10,56 +10,68 @@ Represents a goal, which is a higher-level aim composed of one or more objective
> `optional` **id**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+Optional unique identifier
+
#### Defined in
-[packages/core/src/types.ts:66](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L66)
+[packages/core/src/types.ts:110](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L110)
----
+***
### roomId
> **roomId**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+Room ID where goal exists
+
#### Defined in
-[packages/core/src/types.ts:67](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L67)
+[packages/core/src/types.ts:113](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L113)
----
+***
### userId
> **userId**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+User ID of goal owner
+
#### Defined in
-[packages/core/src/types.ts:68](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L68)
+[packages/core/src/types.ts:116](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L116)
----
+***
### name
> **name**: `string`
+Name/title of the goal
+
#### Defined in
-[packages/core/src/types.ts:69](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L69)
+[packages/core/src/types.ts:119](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L119)
----
+***
### status
> **status**: [`GoalStatus`](../enumerations/GoalStatus.md)
+Current status
+
#### Defined in
-[packages/core/src/types.ts:70](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L70)
+[packages/core/src/types.ts:122](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L122)
----
+***
### objectives
> **objectives**: [`Objective`](Objective.md)[]
+Component objectives
+
#### Defined in
-[packages/core/src/types.ts:71](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L71)
+[packages/core/src/types.ts:125](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L125)
diff --git a/docs/api/interfaces/IAgentRuntime.md b/docs/api/interfaces/IAgentRuntime.md
index 40d442301fe..843bf0e1537 100644
--- a/docs/api/interfaces/IAgentRuntime.md
+++ b/docs/api/interfaces/IAgentRuntime.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / IAgentRuntime
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / IAgentRuntime
# Interface: IAgentRuntime
@@ -12,9 +12,9 @@ Properties
#### Defined in
-[packages/core/src/types.ts:532](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L532)
+[packages/core/src/types.ts:937](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L937)
----
+***
### serverUrl
@@ -22,9 +22,9 @@ Properties
#### Defined in
-[packages/core/src/types.ts:533](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L533)
+[packages/core/src/types.ts:938](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L938)
----
+***
### databaseAdapter
@@ -32,9 +32,9 @@ Properties
#### Defined in
-[packages/core/src/types.ts:534](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L534)
+[packages/core/src/types.ts:939](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L939)
----
+***
### token
@@ -42,9 +42,9 @@ Properties
#### Defined in
-[packages/core/src/types.ts:535](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L535)
+[packages/core/src/types.ts:940](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L940)
----
+***
### modelProvider
@@ -52,9 +52,9 @@ Properties
#### Defined in
-[packages/core/src/types.ts:536](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L536)
+[packages/core/src/types.ts:941](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L941)
----
+***
### character
@@ -62,9 +62,9 @@ Properties
#### Defined in
-[packages/core/src/types.ts:537](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L537)
+[packages/core/src/types.ts:942](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L942)
----
+***
### providers
@@ -72,9 +72,9 @@ Properties
#### Defined in
-[packages/core/src/types.ts:538](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L538)
+[packages/core/src/types.ts:943](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L943)
----
+***
### actions
@@ -82,9 +82,9 @@ Properties
#### Defined in
-[packages/core/src/types.ts:539](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L539)
+[packages/core/src/types.ts:944](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L944)
----
+***
### evaluators
@@ -92,9 +92,19 @@ Properties
#### Defined in
-[packages/core/src/types.ts:540](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L540)
+[packages/core/src/types.ts:945](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L945)
----
+***
+
+### plugins
+
+> **plugins**: [`Plugin`](../type-aliases/Plugin.md)[]
+
+#### Defined in
+
+[packages/core/src/types.ts:946](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L946)
+
+***
### messageManager
@@ -102,9 +112,9 @@ Properties
#### Defined in
-[packages/core/src/types.ts:542](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L542)
+[packages/core/src/types.ts:948](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L948)
----
+***
### descriptionManager
@@ -112,9 +122,29 @@ Properties
#### Defined in
-[packages/core/src/types.ts:543](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L543)
+[packages/core/src/types.ts:949](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L949)
+
+***
+
+### documentsManager
+
+> **documentsManager**: [`IMemoryManager`](IMemoryManager.md)
+
+#### Defined in
+
+[packages/core/src/types.ts:950](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L950)
+
+***
+
+### knowledgeManager
+
+> **knowledgeManager**: [`IMemoryManager`](IMemoryManager.md)
+
+#### Defined in
+
+[packages/core/src/types.ts:951](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L951)
----
+***
### loreManager
@@ -122,9 +152,19 @@ Properties
#### Defined in
-[packages/core/src/types.ts:544](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L544)
+[packages/core/src/types.ts:952](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L952)
----
+***
+
+### cacheManager
+
+> **cacheManager**: [`ICacheManager`](ICacheManager.md)
+
+#### Defined in
+
+[packages/core/src/types.ts:954](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L954)
+
+***
### services
@@ -132,10 +172,24 @@ Properties
#### Defined in
-[packages/core/src/types.ts:546](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L546)
+[packages/core/src/types.ts:956](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L956)
## Methods
+### initialize()
+
+> **initialize**(): `Promise`\<`void`\>
+
+#### Returns
+
+`Promise`\<`void`\>
+
+#### Defined in
+
+[packages/core/src/types.ts:958](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L958)
+
+***
+
### registerMemoryManager()
> **registerMemoryManager**(`manager`): `void`
@@ -150,9 +204,9 @@ Properties
#### Defined in
-[packages/core/src/types.ts:547](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L547)
+[packages/core/src/types.ts:960](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L960)
----
+***
### getMemoryManager()
@@ -168,27 +222,31 @@ Properties
#### Defined in
-[packages/core/src/types.ts:549](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L549)
+[packages/core/src/types.ts:962](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L962)
----
+***
### getService()
-> **getService**(`service`): _typeof_ [`Service`](../classes/Service.md)
+> **getService**\<`T`\>(`service`): `T`
+
+#### Type Parameters
+
+• **T** *extends* [`Service`](../classes/Service.md)
#### Parameters
-• **service**: `string`
+• **service**: [`ServiceType`](../enumerations/ServiceType.md)
#### Returns
-_typeof_ [`Service`](../classes/Service.md)
+`T`
#### Defined in
-[packages/core/src/types.ts:551](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L551)
+[packages/core/src/types.ts:964](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L964)
----
+***
### registerService()
@@ -204,9 +262,9 @@ _typeof_ [`Service`](../classes/Service.md)
#### Defined in
-[packages/core/src/types.ts:553](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L553)
+[packages/core/src/types.ts:966](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L966)
----
+***
### getSetting()
@@ -222,9 +280,9 @@ _typeof_ [`Service`](../classes/Service.md)
#### Defined in
-[packages/core/src/types.ts:555](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L555)
+[packages/core/src/types.ts:968](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L968)
----
+***
### getConversationLength()
@@ -238,9 +296,9 @@ Methods
#### Defined in
-[packages/core/src/types.ts:558](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L558)
+[packages/core/src/types.ts:971](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L971)
----
+***
### processActions()
@@ -262,9 +320,9 @@ Methods
#### Defined in
-[packages/core/src/types.ts:559](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L559)
+[packages/core/src/types.ts:973](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L973)
----
+***
### evaluate()
@@ -284,9 +342,9 @@ Methods
#### Defined in
-[packages/core/src/types.ts:565](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L565)
+[packages/core/src/types.ts:980](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L980)
----
+***
### ensureParticipantExists()
@@ -304,9 +362,9 @@ Methods
#### Defined in
-[packages/core/src/types.ts:570](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L570)
+[packages/core/src/types.ts:986](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L986)
----
+***
### ensureUserExists()
@@ -328,9 +386,9 @@ Methods
#### Defined in
-[packages/core/src/types.ts:571](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L571)
+[packages/core/src/types.ts:988](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L988)
----
+***
### registerAction()
@@ -346,9 +404,9 @@ Methods
#### Defined in
-[packages/core/src/types.ts:577](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L577)
+[packages/core/src/types.ts:995](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L995)
----
+***
### ensureConnection()
@@ -372,9 +430,9 @@ Methods
#### Defined in
-[packages/core/src/types.ts:578](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L578)
+[packages/core/src/types.ts:997](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L997)
----
+***
### ensureParticipantInRoom()
@@ -392,9 +450,9 @@ Methods
#### Defined in
-[packages/core/src/types.ts:585](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L585)
+[packages/core/src/types.ts:1005](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1005)
----
+***
### ensureRoomExists()
@@ -410,9 +468,9 @@ Methods
#### Defined in
-[packages/core/src/types.ts:586](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L586)
+[packages/core/src/types.ts:1007](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1007)
----
+***
### composeState()
@@ -430,9 +488,9 @@ Methods
#### Defined in
-[packages/core/src/types.ts:587](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L587)
+[packages/core/src/types.ts:1009](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1009)
----
+***
### updateRecentMessageState()
@@ -448,4 +506,4 @@ Methods
#### Defined in
-[packages/core/src/types.ts:591](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L591)
+[packages/core/src/types.ts:1014](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1014)
diff --git a/docs/api/interfaces/IBrowserService.md b/docs/api/interfaces/IBrowserService.md
index 1960e7f069a..d4f72136da2 100644
--- a/docs/api/interfaces/IBrowserService.md
+++ b/docs/api/interfaces/IBrowserService.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / IBrowserService
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / IBrowserService
# Interface: IBrowserService
@@ -6,21 +6,51 @@
- [`Service`](../classes/Service.md)
+## Accessors
+
+### serviceType
+
+#### Get Signature
+
+> **get** **serviceType**(): [`ServiceType`](../enumerations/ServiceType.md)
+
+##### Returns
+
+[`ServiceType`](../enumerations/ServiceType.md)
+
+#### Inherited from
+
+[`Service`](../classes/Service.md).[`serviceType`](../classes/Service.md#serviceType-1)
+
+#### Defined in
+
+[packages/core/src/types.ts:927](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L927)
+
## Methods
### initialize()
-> **initialize**(): `Promise`\<`void`\>
+> `abstract` **initialize**(`runtime`): `Promise`\<`void`\>
+
+Add abstract initialize method that must be implemented by derived classes
+
+#### Parameters
+
+• **runtime**: [`IAgentRuntime`](IAgentRuntime.md)
#### Returns
`Promise`\<`void`\>
+#### Inherited from
+
+[`Service`](../classes/Service.md).[`initialize`](../classes/Service.md#initialize)
+
#### Defined in
-[packages/core/src/types.ts:641](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L641)
+[packages/core/src/types.ts:932](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L932)
----
+***
### closeBrowser()
@@ -32,9 +62,9 @@
#### Defined in
-[packages/core/src/types.ts:642](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L642)
+[packages/core/src/types.ts:1061](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1061)
----
+***
### getPageContent()
@@ -64,4 +94,4 @@
#### Defined in
-[packages/core/src/types.ts:643](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L643)
+[packages/core/src/types.ts:1062](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1062)
diff --git a/docs/api/interfaces/ICacheAdapter.md b/docs/api/interfaces/ICacheAdapter.md
new file mode 100644
index 00000000000..55ec1ab3a87
--- /dev/null
+++ b/docs/api/interfaces/ICacheAdapter.md
@@ -0,0 +1,59 @@
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / ICacheAdapter
+
+# Interface: ICacheAdapter
+
+## Methods
+
+### get()
+
+> **get**(`key`): `Promise`\<`string`\>
+
+#### Parameters
+
+• **key**: `string`
+
+#### Returns
+
+`Promise`\<`string`\>
+
+#### Defined in
+
+[packages/core/src/cache.ts:11](https://github.com/ai16z/eliza/blob/main/packages/core/src/cache.ts#L11)
+
+***
+
+### set()
+
+> **set**(`key`, `value`): `Promise`\<`void`\>
+
+#### Parameters
+
+• **key**: `string`
+
+• **value**: `string`
+
+#### Returns
+
+`Promise`\<`void`\>
+
+#### Defined in
+
+[packages/core/src/cache.ts:12](https://github.com/ai16z/eliza/blob/main/packages/core/src/cache.ts#L12)
+
+***
+
+### delete()
+
+> **delete**(`key`): `Promise`\<`void`\>
+
+#### Parameters
+
+• **key**: `string`
+
+#### Returns
+
+`Promise`\<`void`\>
+
+#### Defined in
+
+[packages/core/src/cache.ts:13](https://github.com/ai16z/eliza/blob/main/packages/core/src/cache.ts#L13)
diff --git a/docs/api/interfaces/ICacheManager.md b/docs/api/interfaces/ICacheManager.md
new file mode 100644
index 00000000000..f6f943afed6
--- /dev/null
+++ b/docs/api/interfaces/ICacheManager.md
@@ -0,0 +1,69 @@
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / ICacheManager
+
+# Interface: ICacheManager
+
+## Methods
+
+### get()
+
+> **get**\<`T`\>(`key`): `Promise`\<`T`\>
+
+#### Type Parameters
+
+• **T** = `unknown`
+
+#### Parameters
+
+• **key**: `string`
+
+#### Returns
+
+`Promise`\<`T`\>
+
+#### Defined in
+
+[packages/core/src/types.ts:908](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L908)
+
+***
+
+### set()
+
+> **set**\<`T`\>(`key`, `value`, `options`?): `Promise`\<`void`\>
+
+#### Type Parameters
+
+• **T**
+
+#### Parameters
+
+• **key**: `string`
+
+• **value**: `T`
+
+• **options?**: [`CacheOptions`](../type-aliases/CacheOptions.md)
+
+#### Returns
+
+`Promise`\<`void`\>
+
+#### Defined in
+
+[packages/core/src/types.ts:909](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L909)
+
+***
+
+### delete()
+
+> **delete**(`key`): `Promise`\<`void`\>
+
+#### Parameters
+
+• **key**: `string`
+
+#### Returns
+
+`Promise`\<`void`\>
+
+#### Defined in
+
+[packages/core/src/types.ts:910](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L910)
diff --git a/docs/api/interfaces/IDatabaseAdapter.md b/docs/api/interfaces/IDatabaseAdapter.md
index 110080ba08f..c12e205f2f6 100644
--- a/docs/api/interfaces/IDatabaseAdapter.md
+++ b/docs/api/interfaces/IDatabaseAdapter.md
@@ -1,23 +1,45 @@
-[@ai16z/eliza v1.0.0](../index.md) / IDatabaseAdapter
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / IDatabaseAdapter
# Interface: IDatabaseAdapter
+Interface for database operations
+
## Properties
### db
> **db**: `any`
+Database instance
+
#### Defined in
-[packages/core/src/types.ts:375](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L375)
+[packages/core/src/types.ts:703](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L703)
## Methods
+### init()?
+
+> `optional` **init**(): `Promise`\<`void`\>
+
+Optional initialization
+
+#### Returns
+
+`Promise`\<`void`\>
+
+#### Defined in
+
+[packages/core/src/types.ts:706](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L706)
+
+***
+
### getAccountById()
> **getAccountById**(`userId`): `Promise`\<[`Account`](Account.md)\>
+Get account by ID
+
#### Parameters
• **userId**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
@@ -28,14 +50,16 @@
#### Defined in
-[packages/core/src/types.ts:376](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L376)
+[packages/core/src/types.ts:709](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L709)
----
+***
### createAccount()
> **createAccount**(`account`): `Promise`\<`boolean`\>
+Create new account
+
#### Parameters
• **account**: [`Account`](Account.md)
@@ -46,14 +70,16 @@
#### Defined in
-[packages/core/src/types.ts:377](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L377)
+[packages/core/src/types.ts:712](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L712)
----
+***
### getMemories()
> **getMemories**(`params`): `Promise`\<[`Memory`](Memory.md)[]\>
+Get memories matching criteria
+
#### Parameters
• **params**
@@ -66,7 +92,7 @@
• **params.tableName**: `string`
-• **params.agentId?**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+• **params.agentId**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
• **params.start?**: `number`
@@ -78,9 +104,9 @@
#### Defined in
-[packages/core/src/types.ts:378](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L378)
+[packages/core/src/types.ts:715](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L715)
----
+***
### getMemoryById()
@@ -96,9 +122,9 @@
#### Defined in
-[packages/core/src/types.ts:387](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L387)
+[packages/core/src/types.ts:725](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L725)
----
+***
### getMemoriesByRoomIds()
@@ -108,7 +134,7 @@
• **params**
-• **params.agentId?**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+• **params.agentId**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
• **params.roomIds**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`[]
@@ -118,9 +144,9 @@
#### Defined in
-[packages/core/src/types.ts:388](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L388)
+[packages/core/src/types.ts:727](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L727)
----
+***
### getCachedEmbeddings()
@@ -130,17 +156,17 @@
• **params**
-• **params.query_table_name**: `string`
+• **params.query\_table\_name**: `string`
-• **params.query_threshold**: `number`
+• **params.query\_threshold**: `number`
-• **params.query_input**: `string`
+• **params.query\_input**: `string`
-• **params.query_field_name**: `string`
+• **params.query\_field\_name**: `string`
-• **params.query_field_sub_name**: `string`
+• **params.query\_field\_sub\_name**: `string`
-• **params.query_match_count**: `number`
+• **params.query\_match\_count**: `number`
#### Returns
@@ -148,9 +174,9 @@
#### Defined in
-[packages/core/src/types.ts:392](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L392)
+[packages/core/src/types.ts:732](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L732)
----
+***
### log()
@@ -174,9 +200,9 @@
#### Defined in
-[packages/core/src/types.ts:400](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L400)
+[packages/core/src/types.ts:741](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L741)
----
+***
### getActorDetails()
@@ -194,9 +220,9 @@
#### Defined in
-[packages/core/src/types.ts:406](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L406)
+[packages/core/src/types.ts:748](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L748)
----
+***
### searchMemories()
@@ -208,13 +234,15 @@
• **params.tableName**: `string`
+• **params.agentId**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+
• **params.roomId**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
• **params.embedding**: `number`[]
-• **params.match_threshold**: `number`
+• **params.match\_threshold**: `number`
-• **params.match_count**: `number`
+• **params.match\_count**: `number`
• **params.unique**: `boolean`
@@ -224,9 +252,9 @@
#### Defined in
-[packages/core/src/types.ts:407](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L407)
+[packages/core/src/types.ts:750](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L750)
----
+***
### updateGoalStatus()
@@ -246,9 +274,9 @@
#### Defined in
-[packages/core/src/types.ts:415](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L415)
+[packages/core/src/types.ts:760](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L760)
----
+***
### searchMemoriesByEmbedding()
@@ -260,7 +288,7 @@
• **params**
-• **params.match_threshold?**: `number`
+• **params.match\_threshold?**: `number`
• **params.count?**: `number`
@@ -278,9 +306,9 @@
#### Defined in
-[packages/core/src/types.ts:419](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L419)
+[packages/core/src/types.ts:765](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L765)
----
+***
### createMemory()
@@ -300,9 +328,9 @@
#### Defined in
-[packages/core/src/types.ts:430](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L430)
+[packages/core/src/types.ts:777](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L777)
----
+***
### removeMemory()
@@ -320,9 +348,9 @@
#### Defined in
-[packages/core/src/types.ts:435](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L435)
+[packages/core/src/types.ts:783](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L783)
----
+***
### removeAllMemories()
@@ -340,9 +368,9 @@
#### Defined in
-[packages/core/src/types.ts:436](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L436)
+[packages/core/src/types.ts:785](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L785)
----
+***
### countMemories()
@@ -362,9 +390,9 @@
#### Defined in
-[packages/core/src/types.ts:437](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L437)
+[packages/core/src/types.ts:787](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L787)
----
+***
### getGoals()
@@ -374,6 +402,8 @@
• **params**
+• **params.agentId**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+
• **params.roomId**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
• **params.userId?**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
@@ -388,9 +418,9 @@
#### Defined in
-[packages/core/src/types.ts:442](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L442)
+[packages/core/src/types.ts:793](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L793)
----
+***
### updateGoal()
@@ -406,9 +436,9 @@
#### Defined in
-[packages/core/src/types.ts:448](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L448)
+[packages/core/src/types.ts:801](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L801)
----
+***
### createGoal()
@@ -424,9 +454,9 @@
#### Defined in
-[packages/core/src/types.ts:449](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L449)
+[packages/core/src/types.ts:803](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L803)
----
+***
### removeGoal()
@@ -442,9 +472,9 @@
#### Defined in
-[packages/core/src/types.ts:450](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L450)
+[packages/core/src/types.ts:805](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L805)
----
+***
### removeAllGoals()
@@ -460,9 +490,9 @@
#### Defined in
-[packages/core/src/types.ts:451](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L451)
+[packages/core/src/types.ts:807](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L807)
----
+***
### getRoom()
@@ -478,9 +508,9 @@
#### Defined in
-[packages/core/src/types.ts:452](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L452)
+[packages/core/src/types.ts:809](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L809)
----
+***
### createRoom()
@@ -496,9 +526,9 @@
#### Defined in
-[packages/core/src/types.ts:453](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L453)
+[packages/core/src/types.ts:811](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L811)
----
+***
### removeRoom()
@@ -514,9 +544,9 @@
#### Defined in
-[packages/core/src/types.ts:454](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L454)
+[packages/core/src/types.ts:813](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L813)
----
+***
### getRoomsForParticipant()
@@ -532,9 +562,9 @@
#### Defined in
-[packages/core/src/types.ts:455](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L455)
+[packages/core/src/types.ts:815](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L815)
----
+***
### getRoomsForParticipants()
@@ -550,9 +580,9 @@
#### Defined in
-[packages/core/src/types.ts:456](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L456)
+[packages/core/src/types.ts:817](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L817)
----
+***
### addParticipant()
@@ -570,9 +600,9 @@
#### Defined in
-[packages/core/src/types.ts:457](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L457)
+[packages/core/src/types.ts:819](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L819)
----
+***
### removeParticipant()
@@ -590,9 +620,9 @@
#### Defined in
-[packages/core/src/types.ts:458](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L458)
+[packages/core/src/types.ts:821](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L821)
----
+***
### getParticipantsForAccount()
@@ -608,9 +638,9 @@
#### Defined in
-[packages/core/src/types.ts:459](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L459)
+[packages/core/src/types.ts:823](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L823)
----
+***
### getParticipantsForRoom()
@@ -626,9 +656,9 @@
#### Defined in
-[packages/core/src/types.ts:460](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L460)
+[packages/core/src/types.ts:825](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L825)
----
+***
### getParticipantUserState()
@@ -646,9 +676,9 @@
#### Defined in
-[packages/core/src/types.ts:461](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L461)
+[packages/core/src/types.ts:827](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L827)
----
+***
### setParticipantUserState()
@@ -668,9 +698,9 @@
#### Defined in
-[packages/core/src/types.ts:465](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L465)
+[packages/core/src/types.ts:832](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L832)
----
+***
### createRelationship()
@@ -690,9 +720,9 @@
#### Defined in
-[packages/core/src/types.ts:470](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L470)
+[packages/core/src/types.ts:838](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L838)
----
+***
### getRelationship()
@@ -712,9 +742,9 @@
#### Defined in
-[packages/core/src/types.ts:471](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L471)
+[packages/core/src/types.ts:840](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L840)
----
+***
### getRelationships()
@@ -732,4 +762,4 @@
#### Defined in
-[packages/core/src/types.ts:475](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L475)
+[packages/core/src/types.ts:845](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L845)
diff --git a/docs/api/interfaces/IDatabaseCacheAdapter.md b/docs/api/interfaces/IDatabaseCacheAdapter.md
new file mode 100644
index 00000000000..fb4c89eb2b1
--- /dev/null
+++ b/docs/api/interfaces/IDatabaseCacheAdapter.md
@@ -0,0 +1,71 @@
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / IDatabaseCacheAdapter
+
+# Interface: IDatabaseCacheAdapter
+
+## Methods
+
+### getCache()
+
+> **getCache**(`params`): `Promise`\<`string`\>
+
+#### Parameters
+
+• **params**
+
+• **params.agentId**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+
+• **params.key**: `string`
+
+#### Returns
+
+`Promise`\<`string`\>
+
+#### Defined in
+
+[packages/core/src/types.ts:849](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L849)
+
+***
+
+### setCache()
+
+> **setCache**(`params`): `Promise`\<`boolean`\>
+
+#### Parameters
+
+• **params**
+
+• **params.agentId**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+
+• **params.key**: `string`
+
+• **params.value**: `string`
+
+#### Returns
+
+`Promise`\<`boolean`\>
+
+#### Defined in
+
+[packages/core/src/types.ts:854](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L854)
+
+***
+
+### deleteCache()
+
+> **deleteCache**(`params`): `Promise`\<`boolean`\>
+
+#### Parameters
+
+• **params**
+
+• **params.agentId**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+
+• **params.key**: `string`
+
+#### Returns
+
+`Promise`\<`boolean`\>
+
+#### Defined in
+
+[packages/core/src/types.ts:860](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L860)
diff --git a/docs/api/interfaces/IImageDescriptionService.md b/docs/api/interfaces/IImageDescriptionService.md
index 5f29d8a9970..254b977918e 100644
--- a/docs/api/interfaces/IImageDescriptionService.md
+++ b/docs/api/interfaces/IImageDescriptionService.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / IImageDescriptionService
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / IImageDescriptionService
# Interface: IImageDescriptionService
@@ -6,41 +6,51 @@
- [`Service`](../classes/Service.md)
-## Methods
+## Accessors
-### getInstance()
+### serviceType
-> **getInstance**(): [`IImageDescriptionService`](IImageDescriptionService.md)
+#### Get Signature
-#### Returns
+> **get** **serviceType**(): [`ServiceType`](../enumerations/ServiceType.md)
+
+##### Returns
+
+[`ServiceType`](../enumerations/ServiceType.md)
+
+#### Inherited from
-[`IImageDescriptionService`](IImageDescriptionService.md)
+[`Service`](../classes/Service.md).[`serviceType`](../classes/Service.md#serviceType-1)
#### Defined in
-[packages/core/src/types.ts:595](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L595)
+[packages/core/src/types.ts:927](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L927)
----
+## Methods
### initialize()
-> **initialize**(`modelId`?, `device`?): `Promise`\<`void`\>
+> `abstract` **initialize**(`runtime`): `Promise`\<`void`\>
-#### Parameters
+Add abstract initialize method that must be implemented by derived classes
-• **modelId?**: `string`
+#### Parameters
-• **device?**: `string`
+• **runtime**: [`IAgentRuntime`](IAgentRuntime.md)
#### Returns
`Promise`\<`void`\>
+#### Inherited from
+
+[`Service`](../classes/Service.md).[`initialize`](../classes/Service.md#initialize)
+
#### Defined in
-[packages/core/src/types.ts:596](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L596)
+[packages/core/src/types.ts:932](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L932)
----
+***
### describeImage()
@@ -64,4 +74,4 @@
#### Defined in
-[packages/core/src/types.ts:597](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L597)
+[packages/core/src/types.ts:1018](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1018)
diff --git a/docs/api/interfaces/IMemoryManager.md b/docs/api/interfaces/IMemoryManager.md
index a10169784be..a1b638d2fe6 100644
--- a/docs/api/interfaces/IMemoryManager.md
+++ b/docs/api/interfaces/IMemoryManager.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / IMemoryManager
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / IMemoryManager
# Interface: IMemoryManager
@@ -10,9 +10,9 @@
#### Defined in
-[packages/core/src/types.ts:479](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L479)
+[packages/core/src/types.ts:864](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L864)
----
+***
### tableName
@@ -20,9 +20,9 @@
#### Defined in
-[packages/core/src/types.ts:480](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L480)
+[packages/core/src/types.ts:865](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L865)
----
+***
### constructor
@@ -30,7 +30,7 @@
#### Defined in
-[packages/core/src/types.ts:482](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L482)
+[packages/core/src/types.ts:866](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L866)
## Methods
@@ -48,9 +48,9 @@
#### Defined in
-[packages/core/src/types.ts:484](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L484)
+[packages/core/src/types.ts:868](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L868)
----
+***
### getMemories()
@@ -66,8 +66,6 @@
• **opts.unique?**: `boolean`
-• **opts.agentId?**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
-
• **opts.start?**: `number`
• **opts.end?**: `number`
@@ -78,9 +76,9 @@
#### Defined in
-[packages/core/src/types.ts:485](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L485)
+[packages/core/src/types.ts:870](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L870)
----
+***
### getCachedEmbeddings()
@@ -96,9 +94,9 @@
#### Defined in
-[packages/core/src/types.ts:493](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L493)
+[packages/core/src/types.ts:878](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L878)
----
+***
### getMemoryById()
@@ -114,9 +112,9 @@
#### Defined in
-[packages/core/src/types.ts:496](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L496)
+[packages/core/src/types.ts:882](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L882)
----
+***
### getMemoriesByRoomIds()
@@ -128,17 +126,15 @@
• **params.roomIds**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`[]
-• **params.agentId?**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
-
#### Returns
`Promise`\<[`Memory`](Memory.md)[]\>
#### Defined in
-[packages/core/src/types.ts:497](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L497)
+[packages/core/src/types.ts:883](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L883)
----
+***
### searchMemoriesByEmbedding()
@@ -150,7 +146,7 @@
• **opts**
-• **opts.match_threshold?**: `number`
+• **opts.match\_threshold?**: `number`
• **opts.count?**: `number`
@@ -158,17 +154,15 @@
• **opts.unique?**: `boolean`
-• **opts.agentId?**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
-
#### Returns
`Promise`\<[`Memory`](Memory.md)[]\>
#### Defined in
-[packages/core/src/types.ts:501](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L501)
+[packages/core/src/types.ts:884](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L884)
----
+***
### createMemory()
@@ -186,9 +180,9 @@
#### Defined in
-[packages/core/src/types.ts:511](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L511)
+[packages/core/src/types.ts:894](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L894)
----
+***
### removeMemory()
@@ -204,9 +198,9 @@
#### Defined in
-[packages/core/src/types.ts:512](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L512)
+[packages/core/src/types.ts:896](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L896)
----
+***
### removeAllMemories()
@@ -222,9 +216,9 @@
#### Defined in
-[packages/core/src/types.ts:513](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L513)
+[packages/core/src/types.ts:898](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L898)
----
+***
### countMemories()
@@ -242,4 +236,4 @@
#### Defined in
-[packages/core/src/types.ts:514](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L514)
+[packages/core/src/types.ts:900](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L900)
diff --git a/docs/api/interfaces/IPdfService.md b/docs/api/interfaces/IPdfService.md
index bfd875f7093..b99cab8f174 100644
--- a/docs/api/interfaces/IPdfService.md
+++ b/docs/api/interfaces/IPdfService.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / IPdfService
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / IPdfService
# Interface: IPdfService
@@ -6,8 +6,66 @@
- [`Service`](../classes/Service.md)
+## Accessors
+
+### serviceType
+
+#### Get Signature
+
+> **get** **serviceType**(): [`ServiceType`](../enumerations/ServiceType.md)
+
+##### Returns
+
+[`ServiceType`](../enumerations/ServiceType.md)
+
+#### Inherited from
+
+[`Service`](../classes/Service.md).[`serviceType`](../classes/Service.md#serviceType-1)
+
+#### Defined in
+
+[packages/core/src/types.ts:927](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L927)
+
## Methods
+### initialize()
+
+> `abstract` **initialize**(`runtime`): `Promise`\<`void`\>
+
+Add abstract initialize method that must be implemented by derived classes
+
+#### Parameters
+
+• **runtime**: [`IAgentRuntime`](IAgentRuntime.md)
+
+#### Returns
+
+`Promise`\<`void`\>
+
+#### Inherited from
+
+[`Service`](../classes/Service.md).[`initialize`](../classes/Service.md#initialize)
+
+#### Defined in
+
+[packages/core/src/types.ts:932](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L932)
+
+***
+
+### getInstance()
+
+> **getInstance**(): [`IPdfService`](IPdfService.md)
+
+#### Returns
+
+[`IPdfService`](IPdfService.md)
+
+#### Defined in
+
+[packages/core/src/types.ts:1074](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1074)
+
+***
+
### convertPdfToText()
> **convertPdfToText**(`pdfBuffer`): `Promise`\<`string`\>
@@ -22,4 +80,4 @@
#### Defined in
-[packages/core/src/types.ts:654](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L654)
+[packages/core/src/types.ts:1075](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1075)
diff --git a/docs/api/interfaces/ISpeechService.md b/docs/api/interfaces/ISpeechService.md
index 6e6fe9436e8..52b4589ebcd 100644
--- a/docs/api/interfaces/ISpeechService.md
+++ b/docs/api/interfaces/ISpeechService.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / ISpeechService
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / ISpeechService
# Interface: ISpeechService
@@ -6,8 +6,66 @@
- [`Service`](../classes/Service.md)
+## Accessors
+
+### serviceType
+
+#### Get Signature
+
+> **get** **serviceType**(): [`ServiceType`](../enumerations/ServiceType.md)
+
+##### Returns
+
+[`ServiceType`](../enumerations/ServiceType.md)
+
+#### Inherited from
+
+[`Service`](../classes/Service.md).[`serviceType`](../classes/Service.md#serviceType-1)
+
+#### Defined in
+
+[packages/core/src/types.ts:927](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L927)
+
## Methods
+### initialize()
+
+> `abstract` **initialize**(`runtime`): `Promise`\<`void`\>
+
+Add abstract initialize method that must be implemented by derived classes
+
+#### Parameters
+
+• **runtime**: [`IAgentRuntime`](IAgentRuntime.md)
+
+#### Returns
+
+`Promise`\<`void`\>
+
+#### Inherited from
+
+[`Service`](../classes/Service.md).[`initialize`](../classes/Service.md#initialize)
+
+#### Defined in
+
+[packages/core/src/types.ts:932](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L932)
+
+***
+
+### getInstance()
+
+> **getInstance**(): [`ISpeechService`](ISpeechService.md)
+
+#### Returns
+
+[`ISpeechService`](ISpeechService.md)
+
+#### Defined in
+
+[packages/core/src/types.ts:1069](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1069)
+
+***
+
### generate()
> **generate**(`runtime`, `text`): `Promise`\<`Readable`\>
@@ -24,4 +82,4 @@
#### Defined in
-[packages/core/src/types.ts:650](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L650)
+[packages/core/src/types.ts:1070](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1070)
diff --git a/docs/api/interfaces/ITextGenerationService.md b/docs/api/interfaces/ITextGenerationService.md
index 5be0dbf0405..458c1e2da4e 100644
--- a/docs/api/interfaces/ITextGenerationService.md
+++ b/docs/api/interfaces/ITextGenerationService.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / ITextGenerationService
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / ITextGenerationService
# Interface: ITextGenerationService
@@ -6,21 +6,51 @@
- [`Service`](../classes/Service.md)
+## Accessors
+
+### serviceType
+
+#### Get Signature
+
+> **get** **serviceType**(): [`ServiceType`](../enumerations/ServiceType.md)
+
+##### Returns
+
+[`ServiceType`](../enumerations/ServiceType.md)
+
+#### Inherited from
+
+[`Service`](../classes/Service.md).[`serviceType`](../classes/Service.md#serviceType-1)
+
+#### Defined in
+
+[packages/core/src/types.ts:927](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L927)
+
## Methods
-### getInstance()
+### initialize()
+
+> `abstract` **initialize**(`runtime`): `Promise`\<`void`\>
-> **getInstance**(): [`ITextGenerationService`](ITextGenerationService.md)
+Add abstract initialize method that must be implemented by derived classes
+
+#### Parameters
+
+• **runtime**: [`IAgentRuntime`](IAgentRuntime.md)
#### Returns
-[`ITextGenerationService`](ITextGenerationService.md)
+`Promise`\<`void`\>
+
+#### Inherited from
+
+[`Service`](../classes/Service.md).[`initialize`](../classes/Service.md#initialize)
#### Defined in
-[packages/core/src/types.ts:619](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L619)
+[packages/core/src/types.ts:932](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L932)
----
+***
### initializeModel()
@@ -32,9 +62,9 @@
#### Defined in
-[packages/core/src/types.ts:620](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L620)
+[packages/core/src/types.ts:1040](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1040)
----
+***
### queueMessageCompletion()
@@ -48,11 +78,11 @@
• **stop**: `string`[]
-• **frequency_penalty**: `number`
+• **frequency\_penalty**: `number`
-• **presence_penalty**: `number`
+• **presence\_penalty**: `number`
-• **max_tokens**: `number`
+• **max\_tokens**: `number`
#### Returns
@@ -60,9 +90,9 @@
#### Defined in
-[packages/core/src/types.ts:621](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L621)
+[packages/core/src/types.ts:1041](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1041)
----
+***
### queueTextCompletion()
@@ -76,11 +106,11 @@
• **stop**: `string`[]
-• **frequency_penalty**: `number`
+• **frequency\_penalty**: `number`
-• **presence_penalty**: `number`
+• **presence\_penalty**: `number`
-• **max_tokens**: `number`
+• **max\_tokens**: `number`
#### Returns
@@ -88,9 +118,9 @@
#### Defined in
-[packages/core/src/types.ts:629](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L629)
+[packages/core/src/types.ts:1049](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1049)
----
+***
### getEmbeddingResponse()
@@ -106,4 +136,4 @@
#### Defined in
-[packages/core/src/types.ts:637](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L637)
+[packages/core/src/types.ts:1057](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1057)
diff --git a/docs/api/interfaces/ITranscriptionService.md b/docs/api/interfaces/ITranscriptionService.md
index 5634219f53b..e4f6cfbee20 100644
--- a/docs/api/interfaces/ITranscriptionService.md
+++ b/docs/api/interfaces/ITranscriptionService.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / ITranscriptionService
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / ITranscriptionService
# Interface: ITranscriptionService
@@ -6,8 +6,52 @@
- [`Service`](../classes/Service.md)
+## Accessors
+
+### serviceType
+
+#### Get Signature
+
+> **get** **serviceType**(): [`ServiceType`](../enumerations/ServiceType.md)
+
+##### Returns
+
+[`ServiceType`](../enumerations/ServiceType.md)
+
+#### Inherited from
+
+[`Service`](../classes/Service.md).[`serviceType`](../classes/Service.md#serviceType-1)
+
+#### Defined in
+
+[packages/core/src/types.ts:927](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L927)
+
## Methods
+### initialize()
+
+> `abstract` **initialize**(`runtime`): `Promise`\<`void`\>
+
+Add abstract initialize method that must be implemented by derived classes
+
+#### Parameters
+
+• **runtime**: [`IAgentRuntime`](IAgentRuntime.md)
+
+#### Returns
+
+`Promise`\<`void`\>
+
+#### Inherited from
+
+[`Service`](../classes/Service.md).[`initialize`](../classes/Service.md#initialize)
+
+#### Defined in
+
+[packages/core/src/types.ts:932](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L932)
+
+***
+
### transcribeAttachment()
> **transcribeAttachment**(`audioBuffer`): `Promise`\<`string`\>
@@ -22,9 +66,9 @@
#### Defined in
-[packages/core/src/types.ts:603](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L603)
+[packages/core/src/types.ts:1024](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1024)
----
+***
### transcribeAttachmentLocally()
@@ -40,9 +84,9 @@
#### Defined in
-[packages/core/src/types.ts:604](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L604)
+[packages/core/src/types.ts:1025](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1025)
----
+***
### transcribe()
@@ -58,9 +102,9 @@
#### Defined in
-[packages/core/src/types.ts:607](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L607)
+[packages/core/src/types.ts:1028](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1028)
----
+***
### transcribeLocally()
@@ -76,4 +120,4 @@
#### Defined in
-[packages/core/src/types.ts:608](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L608)
+[packages/core/src/types.ts:1029](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1029)
diff --git a/docs/api/interfaces/IVideoService.md b/docs/api/interfaces/IVideoService.md
index f62ab655dbc..19e01febaa3 100644
--- a/docs/api/interfaces/IVideoService.md
+++ b/docs/api/interfaces/IVideoService.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / IVideoService
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / IVideoService
# Interface: IVideoService
@@ -6,29 +6,55 @@
- [`Service`](../classes/Service.md)
+## Accessors
+
+### serviceType
+
+#### Get Signature
+
+> **get** **serviceType**(): [`ServiceType`](../enumerations/ServiceType.md)
+
+##### Returns
+
+[`ServiceType`](../enumerations/ServiceType.md)
+
+#### Inherited from
+
+[`Service`](../classes/Service.md).[`serviceType`](../classes/Service.md#serviceType-1)
+
+#### Defined in
+
+[packages/core/src/types.ts:927](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L927)
+
## Methods
-### isVideoUrl()
+### initialize()
-> **isVideoUrl**(`url`): `boolean`
+> `abstract` **initialize**(`runtime`): `Promise`\<`void`\>
+
+Add abstract initialize method that must be implemented by derived classes
#### Parameters
-• **url**: `string`
+• **runtime**: [`IAgentRuntime`](IAgentRuntime.md)
#### Returns
-`boolean`
+`Promise`\<`void`\>
+
+#### Inherited from
+
+[`Service`](../classes/Service.md).[`initialize`](../classes/Service.md#initialize)
#### Defined in
-[packages/core/src/types.ts:612](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L612)
+[packages/core/src/types.ts:932](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L932)
----
+***
-### processVideo()
+### isVideoUrl()
-> **processVideo**(`url`): `Promise`\<[`Media`](../type-aliases/Media.md)\>
+> **isVideoUrl**(`url`): `boolean`
#### Parameters
@@ -36,13 +62,13 @@
#### Returns
-`Promise`\<[`Media`](../type-aliases/Media.md)\>
+`boolean`
#### Defined in
-[packages/core/src/types.ts:613](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L613)
+[packages/core/src/types.ts:1033](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1033)
----
+***
### fetchVideoInfo()
@@ -58,9 +84,9 @@
#### Defined in
-[packages/core/src/types.ts:614](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L614)
+[packages/core/src/types.ts:1034](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1034)
----
+***
### downloadVideo()
@@ -76,4 +102,24 @@
#### Defined in
-[packages/core/src/types.ts:615](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L615)
+[packages/core/src/types.ts:1035](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1035)
+
+***
+
+### processVideo()
+
+> **processVideo**(`url`, `runtime`): `Promise`\<[`Media`](../type-aliases/Media.md)\>
+
+#### Parameters
+
+• **url**: `string`
+
+• **runtime**: [`IAgentRuntime`](IAgentRuntime.md)
+
+#### Returns
+
+`Promise`\<[`Media`](../type-aliases/Media.md)\>
+
+#### Defined in
+
+[packages/core/src/types.ts:1036](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1036)
diff --git a/docs/api/interfaces/Memory.md b/docs/api/interfaces/Memory.md
index 040cdf1e71a..c2977270c18 100644
--- a/docs/api/interfaces/Memory.md
+++ b/docs/api/interfaces/Memory.md
@@ -1,8 +1,8 @@
-[@ai16z/eliza v1.0.0](../index.md) / Memory
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / Memory
# Interface: Memory
-Represents a memory record, which could be a message or any other piece of information remembered by the system, including its content, associated user IDs, and optionally, its embedding vector for similarity comparisons.
+Represents a stored memory/message
## Properties
@@ -10,76 +10,104 @@ Represents a memory record, which could be a message or any other piece of infor
> `optional` **id**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+Optional unique identifier
+
#### Defined in
-[packages/core/src/types.ts:169](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L169)
+[packages/core/src/types.ts:306](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L306)
----
+***
### userId
> **userId**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+Associated user ID
+
#### Defined in
-[packages/core/src/types.ts:170](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L170)
+[packages/core/src/types.ts:309](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L309)
----
+***
### agentId
> **agentId**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+Associated agent ID
+
#### Defined in
-[packages/core/src/types.ts:171](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L171)
+[packages/core/src/types.ts:312](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L312)
----
+***
### createdAt?
> `optional` **createdAt**: `number`
+Optional creation timestamp
+
#### Defined in
-[packages/core/src/types.ts:172](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L172)
+[packages/core/src/types.ts:315](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L315)
----
+***
### content
> **content**: [`Content`](Content.md)
+Memory content
+
#### Defined in
-[packages/core/src/types.ts:173](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L173)
+[packages/core/src/types.ts:318](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L318)
----
+***
### embedding?
> `optional` **embedding**: `number`[]
+Optional embedding vector
+
#### Defined in
-[packages/core/src/types.ts:174](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L174)
+[packages/core/src/types.ts:321](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L321)
----
+***
### roomId
> **roomId**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+Associated room ID
+
#### Defined in
-[packages/core/src/types.ts:175](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L175)
+[packages/core/src/types.ts:324](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L324)
----
+***
### unique?
> `optional` **unique**: `boolean`
+Whether memory is unique
+
+#### Defined in
+
+[packages/core/src/types.ts:327](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L327)
+
+***
+
+### similarity?
+
+> `optional` **similarity**: `number`
+
+Embedding similarity score
+
#### Defined in
-[packages/core/src/types.ts:176](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L176)
+[packages/core/src/types.ts:330](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L330)
diff --git a/docs/api/interfaces/MessageExample.md b/docs/api/interfaces/MessageExample.md
index dbc07ae96c1..afe398351d3 100644
--- a/docs/api/interfaces/MessageExample.md
+++ b/docs/api/interfaces/MessageExample.md
@@ -1,8 +1,8 @@
-[@ai16z/eliza v1.0.0](../index.md) / MessageExample
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / MessageExample
# Interface: MessageExample
-Represents an example of a message, typically used for demonstrating or testing purposes, including optional content and action.
+Example message for demonstration
## Properties
@@ -10,16 +10,20 @@ Represents an example of a message, typically used for demonstrating or testing
> **user**: `string`
+Associated user
+
#### Defined in
-[packages/core/src/types.ts:183](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L183)
+[packages/core/src/types.ts:338](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L338)
----
+***
### content
> **content**: [`Content`](Content.md)
+Message content
+
#### Defined in
-[packages/core/src/types.ts:184](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L184)
+[packages/core/src/types.ts:341](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L341)
diff --git a/docs/api/interfaces/Objective.md b/docs/api/interfaces/Objective.md
index 4a9c5854f71..762460479b1 100644
--- a/docs/api/interfaces/Objective.md
+++ b/docs/api/interfaces/Objective.md
@@ -1,8 +1,8 @@
-[@ai16z/eliza v1.0.0](../index.md) / Objective
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / Objective
# Interface: Objective
-Represents an objective within a goal, detailing what needs to be achieved and whether it has been completed.
+Represents a single objective within a goal
## Properties
@@ -10,26 +10,32 @@ Represents an objective within a goal, detailing what needs to be achieved and w
> `optional` **id**: `string`
+Optional unique identifier
+
#### Defined in
-[packages/core/src/types.ts:51](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L51)
+[packages/core/src/types.ts:87](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L87)
----
+***
### description
> **description**: `string`
+Description of what needs to be achieved
+
#### Defined in
-[packages/core/src/types.ts:52](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L52)
+[packages/core/src/types.ts:90](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L90)
----
+***
### completed
> **completed**: `boolean`
+Whether objective is completed
+
#### Defined in
-[packages/core/src/types.ts:53](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L53)
+[packages/core/src/types.ts:93](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L93)
diff --git a/docs/api/interfaces/Participant.md b/docs/api/interfaces/Participant.md
index 74b1096c000..c6a46e84c09 100644
--- a/docs/api/interfaces/Participant.md
+++ b/docs/api/interfaces/Participant.md
@@ -1,8 +1,8 @@
-[@ai16z/eliza v1.0.0](../index.md) / Participant
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / Participant
# Interface: Participant
-Represents a participant in a room, including their ID and account details.
+Room participant with account details
## Properties
@@ -10,16 +10,20 @@ Represents a participant in a room, including their ID and account details.
> **id**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+Unique identifier
+
#### Defined in
-[packages/core/src/types.ts:287](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L287)
+[packages/core/src/types.ts:501](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L501)
----
+***
### account
> **account**: [`Account`](Account.md)
+Associated account
+
#### Defined in
-[packages/core/src/types.ts:288](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L288)
+[packages/core/src/types.ts:504](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L504)
diff --git a/docs/api/interfaces/Provider.md b/docs/api/interfaces/Provider.md
index 489806151cb..b02a1220fd6 100644
--- a/docs/api/interfaces/Provider.md
+++ b/docs/api/interfaces/Provider.md
@@ -1,8 +1,8 @@
-[@ai16z/eliza v1.0.0](../index.md) / Provider
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / Provider
# Interface: Provider
-Represents a provider, which is used to retrieve information or perform actions on behalf of the agent, such as fetching data from an external API or service.
+Provider for external data/services
## Properties
@@ -10,6 +10,8 @@ Represents a provider, which is used to retrieve information or perform actions
> **get**: (`runtime`, `message`, `state`?) => `Promise`\<`any`\>
+Data retrieval function
+
#### Parameters
• **runtime**: [`IAgentRuntime`](IAgentRuntime.md)
@@ -24,4 +26,4 @@ Represents a provider, which is used to retrieve information or perform actions
#### Defined in
-[packages/core/src/types.ts:251](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L251)
+[packages/core/src/types.ts:440](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L440)
diff --git a/docs/api/interfaces/Relationship.md b/docs/api/interfaces/Relationship.md
index 9dbafcb2fc5..a131746e99e 100644
--- a/docs/api/interfaces/Relationship.md
+++ b/docs/api/interfaces/Relationship.md
@@ -1,8 +1,8 @@
-[@ai16z/eliza v1.0.0](../index.md) / Relationship
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / Relationship
# Interface: Relationship
-Represents a relationship between two users, including their IDs, the status of the relationship, and the room ID in which the relationship is established.
+Represents a relationship between users
## Properties
@@ -10,66 +10,80 @@ Represents a relationship between two users, including their IDs, the status of
> **id**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+Unique identifier
+
#### Defined in
-[packages/core/src/types.ts:262](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L262)
+[packages/core/src/types.ts:452](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L452)
----
+***
### userA
> **userA**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+First user ID
+
#### Defined in
-[packages/core/src/types.ts:263](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L263)
+[packages/core/src/types.ts:455](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L455)
----
+***
### userB
> **userB**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+Second user ID
+
#### Defined in
-[packages/core/src/types.ts:264](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L264)
+[packages/core/src/types.ts:458](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L458)
----
+***
### userId
> **userId**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+Primary user ID
+
#### Defined in
-[packages/core/src/types.ts:265](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L265)
+[packages/core/src/types.ts:461](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L461)
----
+***
### roomId
> **roomId**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+Associated room ID
+
#### Defined in
-[packages/core/src/types.ts:266](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L266)
+[packages/core/src/types.ts:464](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L464)
----
+***
### status
> **status**: `string`
+Relationship status
+
#### Defined in
-[packages/core/src/types.ts:267](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L267)
+[packages/core/src/types.ts:467](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L467)
----
+***
### createdAt?
> `optional` **createdAt**: `string`
+Optional creation timestamp
+
#### Defined in
-[packages/core/src/types.ts:268](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L268)
+[packages/core/src/types.ts:470](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L470)
diff --git a/docs/api/interfaces/Room.md b/docs/api/interfaces/Room.md
index ab9ce15c57a..c6765fe4153 100644
--- a/docs/api/interfaces/Room.md
+++ b/docs/api/interfaces/Room.md
@@ -1,8 +1,8 @@
-[@ai16z/eliza v1.0.0](../index.md) / Room
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / Room
# Interface: Room
-Represents a room or conversation context, including its ID and a list of participants.
+Represents a conversation room
## Properties
@@ -10,16 +10,20 @@ Represents a room or conversation context, including its ID and a list of partic
> **id**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+Unique identifier
+
#### Defined in
-[packages/core/src/types.ts:295](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L295)
+[packages/core/src/types.ts:512](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L512)
----
+***
### participants
> **participants**: [`Participant`](Participant.md)[]
+Room participants
+
#### Defined in
-[packages/core/src/types.ts:296](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L296)
+[packages/core/src/types.ts:515](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L515)
diff --git a/docs/api/interfaces/State.md b/docs/api/interfaces/State.md
index 6897899d263..bb14f33d568 100644
--- a/docs/api/interfaces/State.md
+++ b/docs/api/interfaces/State.md
@@ -1,12 +1,12 @@
-[@ai16z/eliza v1.0.0](../index.md) / State
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / State
# Interface: State
-Represents the state of the conversation or context in which the agent is operating, including information about users, messages, goals, and other relevant data.
+Represents the current state/context of a conversation
## Indexable
-\[`key`: `string`\]: `unknown`
+ \[`key`: `string`\]: `unknown`
## Properties
@@ -14,226 +14,284 @@ Represents the state of the conversation or context in which the agent is operat
> `optional` **userId**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+ID of user who sent current message
+
#### Defined in
-[packages/core/src/types.ts:139](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L139)
+[packages/core/src/types.ts:226](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L226)
----
+***
### agentId?
> `optional` **agentId**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+ID of agent in conversation
+
#### Defined in
-[packages/core/src/types.ts:140](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L140)
+[packages/core/src/types.ts:229](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L229)
----
+***
### bio
> **bio**: `string`
+Agent's biography
+
#### Defined in
-[packages/core/src/types.ts:141](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L141)
+[packages/core/src/types.ts:232](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L232)
----
+***
### lore
> **lore**: `string`
+Agent's background lore
+
#### Defined in
-[packages/core/src/types.ts:142](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L142)
+[packages/core/src/types.ts:235](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L235)
----
+***
### messageDirections
> **messageDirections**: `string`
+Message handling directions
+
#### Defined in
-[packages/core/src/types.ts:143](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L143)
+[packages/core/src/types.ts:238](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L238)
----
+***
### postDirections
> **postDirections**: `string`
+Post handling directions
+
#### Defined in
-[packages/core/src/types.ts:144](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L144)
+[packages/core/src/types.ts:241](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L241)
----
+***
### roomId
> **roomId**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
+Current room/conversation ID
+
#### Defined in
-[packages/core/src/types.ts:145](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L145)
+[packages/core/src/types.ts:244](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L244)
----
+***
### agentName?
> `optional` **agentName**: `string`
+Optional agent name
+
#### Defined in
-[packages/core/src/types.ts:146](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L146)
+[packages/core/src/types.ts:247](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L247)
----
+***
### senderName?
> `optional` **senderName**: `string`
+Optional message sender name
+
#### Defined in
-[packages/core/src/types.ts:147](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L147)
+[packages/core/src/types.ts:250](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L250)
----
+***
### actors
> **actors**: `string`
+String representation of conversation actors
+
#### Defined in
-[packages/core/src/types.ts:148](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L148)
+[packages/core/src/types.ts:253](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L253)
----
+***
### actorsData?
> `optional` **actorsData**: [`Actor`](Actor.md)[]
+Optional array of actor objects
+
#### Defined in
-[packages/core/src/types.ts:149](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L149)
+[packages/core/src/types.ts:256](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L256)
----
+***
### goals?
> `optional` **goals**: `string`
+Optional string representation of goals
+
#### Defined in
-[packages/core/src/types.ts:150](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L150)
+[packages/core/src/types.ts:259](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L259)
----
+***
### goalsData?
> `optional` **goalsData**: [`Goal`](Goal.md)[]
+Optional array of goal objects
+
#### Defined in
-[packages/core/src/types.ts:151](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L151)
+[packages/core/src/types.ts:262](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L262)
----
+***
### recentMessages
> **recentMessages**: `string`
+Recent message history as string
+
#### Defined in
-[packages/core/src/types.ts:152](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L152)
+[packages/core/src/types.ts:265](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L265)
----
+***
### recentMessagesData
> **recentMessagesData**: [`Memory`](Memory.md)[]
+Recent message objects
+
#### Defined in
-[packages/core/src/types.ts:153](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L153)
+[packages/core/src/types.ts:268](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L268)
----
+***
### actionNames?
> `optional` **actionNames**: `string`
+Optional valid action names
+
#### Defined in
-[packages/core/src/types.ts:154](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L154)
+[packages/core/src/types.ts:271](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L271)
----
+***
### actions?
> `optional` **actions**: `string`
+Optional action descriptions
+
#### Defined in
-[packages/core/src/types.ts:155](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L155)
+[packages/core/src/types.ts:274](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L274)
----
+***
### actionsData?
> `optional` **actionsData**: [`Action`](Action.md)[]
+Optional action objects
+
#### Defined in
-[packages/core/src/types.ts:156](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L156)
+[packages/core/src/types.ts:277](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L277)
----
+***
### actionExamples?
> `optional` **actionExamples**: `string`
+Optional action examples
+
#### Defined in
-[packages/core/src/types.ts:157](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L157)
+[packages/core/src/types.ts:280](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L280)
----
+***
### providers?
> `optional` **providers**: `string`
+Optional provider descriptions
+
#### Defined in
-[packages/core/src/types.ts:158](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L158)
+[packages/core/src/types.ts:283](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L283)
----
+***
### responseData?
> `optional` **responseData**: [`Content`](Content.md)
+Optional response content
+
#### Defined in
-[packages/core/src/types.ts:159](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L159)
+[packages/core/src/types.ts:286](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L286)
----
+***
### recentInteractionsData?
> `optional` **recentInteractionsData**: [`Memory`](Memory.md)[]
+Optional recent interaction objects
+
#### Defined in
-[packages/core/src/types.ts:160](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L160)
+[packages/core/src/types.ts:289](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L289)
----
+***
### recentInteractions?
> `optional` **recentInteractions**: `string`
+Optional recent interactions string
+
+#### Defined in
+
+[packages/core/src/types.ts:292](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L292)
+
+***
+
+### formattedConversation?
+
+> `optional` **formattedConversation**: `string`
+
+Optional formatted conversation
+
#### Defined in
-[packages/core/src/types.ts:161](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L161)
+[packages/core/src/types.ts:295](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L295)
diff --git a/docs/api/type-aliases/CacheOptions.md b/docs/api/type-aliases/CacheOptions.md
new file mode 100644
index 00000000000..ac89f39ed77
--- /dev/null
+++ b/docs/api/type-aliases/CacheOptions.md
@@ -0,0 +1,15 @@
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / CacheOptions
+
+# Type Alias: CacheOptions
+
+> **CacheOptions**: `object`
+
+## Type declaration
+
+### expires?
+
+> `optional` **expires**: `number`
+
+## Defined in
+
+[packages/core/src/types.ts:903](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L903)
diff --git a/docs/api/type-aliases/Character.md b/docs/api/type-aliases/Character.md
index 508aefc3a30..7980ea25114 100644
--- a/docs/api/type-aliases/Character.md
+++ b/docs/api/type-aliases/Character.md
@@ -1,90 +1,188 @@
-[@ai16z/eliza v1.0.0](../index.md) / Character
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / Character
# Type Alias: Character
> **Character**: `object`
+Configuration for an agent character
+
## Type declaration
### id?
> `optional` **id**: [`UUID`](UUID.md)
+Optional unique identifier
+
### name
> **name**: `string`
+Character name
+
+### username?
+
+> `optional` **username**: `string`
+
+Optional username
+
### system?
> `optional` **system**: `string`
+Optional system prompt
+
### modelProvider
> **modelProvider**: [`ModelProviderName`](../enumerations/ModelProviderName.md)
+Model provider to use
+
### modelEndpointOverride?
> `optional` **modelEndpointOverride**: `string`
+Optional model endpoint override
+
### templates?
> `optional` **templates**: `object`
-#### Index Signature
+Optional prompt templates
+
+### templates.goalsTemplate?
+
+> `optional` **goalsTemplate**: `string`
+
+### templates.factsTemplate?
+
+> `optional` **factsTemplate**: `string`
+
+### templates.messageHandlerTemplate?
+
+> `optional` **messageHandlerTemplate**: `string`
+
+### templates.shouldRespondTemplate?
+
+> `optional` **shouldRespondTemplate**: `string`
+
+### templates.continueMessageHandlerTemplate?
+
+> `optional` **continueMessageHandlerTemplate**: `string`
+
+### templates.evaluationTemplate?
+
+> `optional` **evaluationTemplate**: `string`
+
+### templates.twitterSearchTemplate?
+
+> `optional` **twitterSearchTemplate**: `string`
+
+### templates.twitterPostTemplate?
+
+> `optional` **twitterPostTemplate**: `string`
+
+### templates.twitterMessageHandlerTemplate?
+
+> `optional` **twitterMessageHandlerTemplate**: `string`
+
+### templates.twitterShouldRespondTemplate?
+
+> `optional` **twitterShouldRespondTemplate**: `string`
+
+### templates.telegramMessageHandlerTemplate?
+
+> `optional` **telegramMessageHandlerTemplate**: `string`
+
+### templates.telegramShouldRespondTemplate?
-\[`key`: `string`\]: `string`
+> `optional` **telegramShouldRespondTemplate**: `string`
+
+### templates.discordVoiceHandlerTemplate?
+
+> `optional` **discordVoiceHandlerTemplate**: `string`
+
+### templates.discordShouldRespondTemplate?
+
+> `optional` **discordShouldRespondTemplate**: `string`
+
+### templates.discordMessageHandlerTemplate?
+
+> `optional` **discordMessageHandlerTemplate**: `string`
### bio
> **bio**: `string` \| `string`[]
+Character biography
+
### lore
> **lore**: `string`[]
+Character background lore
+
### messageExamples
> **messageExamples**: [`MessageExample`](../interfaces/MessageExample.md)[][]
+Example messages
+
### postExamples
> **postExamples**: `string`[]
+Example posts
+
### people
> **people**: `string`[]
+Known people
+
### topics
> **topics**: `string`[]
+Known topics
+
### adjectives
> **adjectives**: `string`[]
+Character traits
+
### knowledge?
> `optional` **knowledge**: `string`[]
+Optional knowledge base
+
### clients
> **clients**: [`Clients`](../enumerations/Clients.md)[]
+Supported client platforms
+
### plugins
> **plugins**: [`Plugin`](Plugin.md)[]
+Available plugins
+
### settings?
> `optional` **settings**: `object`
+Optional configuration
+
### settings.secrets?
> `optional` **secrets**: `object`
#### Index Signature
-\[`key`: `string`\]: `string`
+ \[`key`: `string`\]: `string`
### settings.voice?
@@ -110,6 +208,8 @@
> `optional` **clientConfig**: `object`
+Optional client-specific config
+
### clientConfig.discord?
> `optional` **discord**: `object`
@@ -138,6 +238,8 @@
> **style**: `object`
+Writing style guides
+
### style.all
> **all**: `string`[]
@@ -150,6 +252,32 @@
> **post**: `string`[]
+### twitterProfile?
+
+> `optional` **twitterProfile**: `object`
+
+Optional Twitter profile
+
+### twitterProfile.id
+
+> **id**: `string`
+
+### twitterProfile.username
+
+> **username**: `string`
+
+### twitterProfile.screenName
+
+> **screenName**: `string`
+
+### twitterProfile.bio
+
+> **bio**: `string`
+
+### twitterProfile.nicknames?
+
+> `optional` **nicknames**: `string`[]
+
## Defined in
-[packages/core/src/types.ts:329](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L329)
+[packages/core/src/types.ts:590](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L590)
diff --git a/docs/api/type-aliases/CharacterConfig.md b/docs/api/type-aliases/CharacterConfig.md
new file mode 100644
index 00000000000..1086397f9d1
--- /dev/null
+++ b/docs/api/type-aliases/CharacterConfig.md
@@ -0,0 +1,11 @@
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / CharacterConfig
+
+# Type Alias: CharacterConfig
+
+> **CharacterConfig**: `z.infer`\<*typeof* [`CharacterSchema`](../variables/CharacterSchema.md)\>
+
+Type inference
+
+## Defined in
+
+[packages/core/src/enviroment.ts:128](https://github.com/ai16z/eliza/blob/main/packages/core/src/enviroment.ts#L128)
diff --git a/docs/api/type-aliases/Client.md b/docs/api/type-aliases/Client.md
index 879d6f28ff3..145d92abaf5 100644
--- a/docs/api/type-aliases/Client.md
+++ b/docs/api/type-aliases/Client.md
@@ -1,15 +1,19 @@
-[@ai16z/eliza v1.0.0](../index.md) / Client
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / Client
# Type Alias: Client
> **Client**: `object`
+Client interface for platform connections
+
## Type declaration
### start()
> **start**: (`runtime`?) => `Promise`\<`unknown`\>
+Start client connection
+
#### Parameters
• **runtime?**: [`IAgentRuntime`](../interfaces/IAgentRuntime.md)
@@ -22,6 +26,8 @@
> **stop**: (`runtime`?) => `Promise`\<`unknown`\>
+Stop client connection
+
#### Parameters
• **runtime?**: [`IAgentRuntime`](../interfaces/IAgentRuntime.md)
@@ -32,4 +38,4 @@
## Defined in
-[packages/core/src/types.ts:308](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L308)
+[packages/core/src/types.ts:544](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L544)
diff --git a/docs/api/type-aliases/EnvConfig.md b/docs/api/type-aliases/EnvConfig.md
new file mode 100644
index 00000000000..8a0bd585a76
--- /dev/null
+++ b/docs/api/type-aliases/EnvConfig.md
@@ -0,0 +1,11 @@
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / EnvConfig
+
+# Type Alias: EnvConfig
+
+> **EnvConfig**: `z.infer`\<*typeof* [`envSchema`](../variables/envSchema.md)\>
+
+Type inference
+
+## Defined in
+
+[packages/core/src/enviroment.ts:23](https://github.com/ai16z/eliza/blob/main/packages/core/src/enviroment.ts#L23)
diff --git a/docs/api/type-aliases/Handler.md b/docs/api/type-aliases/Handler.md
index 8ffed758e95..72216585fcc 100644
--- a/docs/api/type-aliases/Handler.md
+++ b/docs/api/type-aliases/Handler.md
@@ -1,10 +1,10 @@
-[@ai16z/eliza v1.0.0](../index.md) / Handler
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / Handler
# Type Alias: Handler()
> **Handler**: (`runtime`, `message`, `state`?, `options`?, `callback`?) => `Promise`\<`unknown`\>
-Represents the type of a handler function, which takes a runtime instance, a message, and an optional state, and returns a promise resolving to any type.
+Handler function type for processing messages
## Parameters
@@ -24,4 +24,4 @@ Represents the type of a handler function, which takes a runtime instance, a mes
## Defined in
-[packages/core/src/types.ts:190](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L190)
+[packages/core/src/types.ts:347](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L347)
diff --git a/docs/api/type-aliases/HandlerCallback.md b/docs/api/type-aliases/HandlerCallback.md
index a87d3bc1492..4976d2ea797 100644
--- a/docs/api/type-aliases/HandlerCallback.md
+++ b/docs/api/type-aliases/HandlerCallback.md
@@ -1,9 +1,11 @@
-[@ai16z/eliza v1.0.0](../index.md) / HandlerCallback
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / HandlerCallback
# Type Alias: HandlerCallback()
> **HandlerCallback**: (`response`, `files`?) => `Promise`\<[`Memory`](../interfaces/Memory.md)[]\>
+Callback function type for handlers
+
## Parameters
• **response**: [`Content`](../interfaces/Content.md)
@@ -16,4 +18,4 @@
## Defined in
-[packages/core/src/types.ts:199](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L199)
+[packages/core/src/types.ts:358](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L358)
diff --git a/docs/api/type-aliases/KnowledgeItem.md b/docs/api/type-aliases/KnowledgeItem.md
new file mode 100644
index 00000000000..3df648ca292
--- /dev/null
+++ b/docs/api/type-aliases/KnowledgeItem.md
@@ -0,0 +1,19 @@
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / KnowledgeItem
+
+# Type Alias: KnowledgeItem
+
+> **KnowledgeItem**: `object`
+
+## Type declaration
+
+### id
+
+> **id**: [`UUID`](UUID.md)
+
+### content
+
+> **content**: [`Content`](../interfaces/Content.md)
+
+## Defined in
+
+[packages/core/src/types.ts:1094](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L1094)
diff --git a/docs/api/type-aliases/Media.md b/docs/api/type-aliases/Media.md
index 93ee9f6be99..8ae70e81c50 100644
--- a/docs/api/type-aliases/Media.md
+++ b/docs/api/type-aliases/Media.md
@@ -1,35 +1,49 @@
-[@ai16z/eliza v1.0.0](../index.md) / Media
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / Media
# Type Alias: Media
> **Media**: `object`
+Represents a media attachment
+
## Type declaration
### id
> **id**: `string`
+Unique identifier
+
### url
> **url**: `string`
+Media URL
+
### title
> **title**: `string`
+Media title
+
### source
> **source**: `string`
+Media source
+
### description
> **description**: `string`
+Media description
+
### text
> **text**: `string`
+Text content
+
## Defined in
-[packages/core/src/types.ts:299](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L299)
+[packages/core/src/types.ts:521](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L521)
diff --git a/docs/api/type-aliases/Model.md b/docs/api/type-aliases/Model.md
index 4d5a45b9d59..902f2de593e 100644
--- a/docs/api/type-aliases/Model.md
+++ b/docs/api/type-aliases/Model.md
@@ -1,51 +1,73 @@
-[@ai16z/eliza v1.0.0](../index.md) / Model
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / Model
# Type Alias: Model
> **Model**: `object`
+Configuration for an AI model
+
## Type declaration
### endpoint?
> `optional` **endpoint**: `string`
+Optional API endpoint
+
### settings
> **settings**: `object`
+Model settings
+
### settings.maxInputTokens
> **maxInputTokens**: `number`
+Maximum input tokens
+
### settings.maxOutputTokens
> **maxOutputTokens**: `number`
-### settings.frequency_penalty?
+Maximum output tokens
+
+### settings.frequency\_penalty?
+
+> `optional` **frequency\_penalty**: `number`
-> `optional` **frequency_penalty**: `number`
+Optional frequency penalty
-### settings.presence_penalty?
+### settings.presence\_penalty?
-> `optional` **presence_penalty**: `number`
+> `optional` **presence\_penalty**: `number`
-### settings.repetition_penalty?
+Optional presence penalty
-> `optional` **repetition_penalty**: `number`
+### settings.repetition\_penalty?
+
+> `optional` **repetition\_penalty**: `number`
+
+Optional repetition penalty
### settings.stop
> **stop**: `string`[]
+Stop sequences
+
### settings.temperature
> **temperature**: `number`
+Temperature setting
+
### imageSettings?
> `optional` **imageSettings**: `object`
+Optional image generation settings
+
### imageSettings.steps?
> `optional` **steps**: `number`
@@ -54,6 +76,8 @@
> **model**: `object`
+Model names by size class
+
### model.small
> **small**: `string`
@@ -76,4 +100,4 @@
## Defined in
-[packages/core/src/types.ts:82](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L82)
+[packages/core/src/types.ts:142](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L142)
diff --git a/docs/api/type-aliases/Models.md b/docs/api/type-aliases/Models.md
index ded8014918d..34f2e5a836b 100644
--- a/docs/api/type-aliases/Models.md
+++ b/docs/api/type-aliases/Models.md
@@ -1,9 +1,11 @@
-[@ai16z/eliza v1.0.0](../index.md) / Models
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / Models
# Type Alias: Models
> **Models**: `object`
+Model configurations by provider
+
## Type declaration
### openai
@@ -22,21 +24,21 @@
> **groq**: [`Model`](Model.md)
-### llama_cloud
+### llama\_cloud
-> **llama_cloud**: [`Model`](Model.md)
+> **llama\_cloud**: [`Model`](Model.md)
-### llama_local
+### llama\_local
-> **llama_local**: [`Model`](Model.md)
+> **llama\_local**: [`Model`](Model.md)
### google
> **google**: [`Model`](Model.md)
-### claude_vertex
+### claude\_vertex
-> **claude_vertex**: [`Model`](Model.md)
+> **claude\_vertex**: [`Model`](Model.md)
### redpill
@@ -56,4 +58,4 @@
## Defined in
-[packages/core/src/types.ts:105](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L105)
+[packages/core/src/types.ts:188](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L188)
diff --git a/docs/api/type-aliases/Plugin.md b/docs/api/type-aliases/Plugin.md
index 899286442d9..2421b866b97 100644
--- a/docs/api/type-aliases/Plugin.md
+++ b/docs/api/type-aliases/Plugin.md
@@ -1,35 +1,55 @@
-[@ai16z/eliza v1.0.0](../index.md) / Plugin
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / Plugin
# Type Alias: Plugin
> **Plugin**: `object`
+Plugin for extending agent functionality
+
## Type declaration
### name
> **name**: `string`
+Plugin name
+
### description
> **description**: `string`
+Plugin description
+
### actions?
> `optional` **actions**: [`Action`](../interfaces/Action.md)[]
+Optional actions
+
### providers?
> `optional` **providers**: [`Provider`](../interfaces/Provider.md)[]
+Optional providers
+
### evaluators?
> `optional` **evaluators**: [`Evaluator`](../interfaces/Evaluator.md)[]
+Optional evaluators
+
### services?
> `optional` **services**: [`Service`](../classes/Service.md)[]
+Optional services
+
+### clients?
+
+> `optional` **clients**: [`Client`](Client.md)[]
+
+Optional clients
+
## Defined in
-[packages/core/src/types.ts:313](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L313)
+[packages/core/src/types.ts:555](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L555)
diff --git a/docs/api/type-aliases/UUID.md b/docs/api/type-aliases/UUID.md
index fc00d270217..207b73f0e90 100644
--- a/docs/api/type-aliases/UUID.md
+++ b/docs/api/type-aliases/UUID.md
@@ -1,10 +1,10 @@
-[@ai16z/eliza v1.0.0](../index.md) / UUID
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / UUID
# Type Alias: UUID
> **UUID**: \`$\{string\}-$\{string\}-$\{string\}-$\{string\}-$\{string\}\`
-Represents a UUID, which is a universally unique identifier conforming to the UUID standard.
+Represents a UUID string in the format "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
## Defined in
diff --git a/docs/api/type-aliases/Validator.md b/docs/api/type-aliases/Validator.md
index fd501b16b49..150d8733a2b 100644
--- a/docs/api/type-aliases/Validator.md
+++ b/docs/api/type-aliases/Validator.md
@@ -1,10 +1,10 @@
-[@ai16z/eliza v1.0.0](../index.md) / Validator
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / Validator
# Type Alias: Validator()
> **Validator**: (`runtime`, `message`, `state`?) => `Promise`\<`boolean`\>
-Represents the type of a validator function, which takes a runtime instance, a message, and an optional state, and returns a promise resolving to a boolean indicating whether the validation passed.
+Validator function type for actions/evaluators
## Parameters
@@ -20,4 +20,4 @@ Represents the type of a validator function, which takes a runtime instance, a m
## Defined in
-[packages/core/src/types.ts:207](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L207)
+[packages/core/src/types.ts:366](https://github.com/ai16z/eliza/blob/main/packages/core/src/types.ts#L366)
diff --git a/docs/api/typedoc-sidebar.cjs b/docs/api/typedoc-sidebar.cjs
index cb7e9697647..ff564b9dac9 100644
--- a/docs/api/typedoc-sidebar.cjs
+++ b/docs/api/typedoc-sidebar.cjs
@@ -1,352 +1,4 @@
// @ts-check
/** @type {import('@docusaurus/plugin-content-docs').SidebarsConfig} */
-const typedocSidebar = {
- items: [
- {
- type: "category",
- label: "Enumerations",
- items: [
- { type: "doc", id: "enumerations/GoalStatus", label: "GoalStatus" },
- { type: "doc", id: "enumerations/ModelClass", label: "ModelClass" },
- {
- type: "doc",
- id: "enumerations/ModelProviderName",
- label: "ModelProviderName",
- },
- { type: "doc", id: "enumerations/Clients", label: "Clients" },
- { type: "doc", id: "enumerations/ServiceType", label: "ServiceType" },
- ],
- },
- {
- type: "category",
- label: "Classes",
- items: [
- {
- type: "doc",
- id: "classes/DatabaseAdapter",
- label: "DatabaseAdapter",
- },
- { type: "doc", id: "classes/MemoryManager", label: "MemoryManager" },
- { type: "doc", id: "classes/AgentRuntime", label: "AgentRuntime" },
- { type: "doc", id: "classes/Service", label: "Service" },
- ],
- },
- {
- type: "category",
- label: "Interfaces",
- items: [
- {
- type: "doc",
- id: "interfaces/GenerationOptions",
- label: "GenerationOptions",
- },
- { type: "doc", id: "interfaces/Content", label: "Content" },
- { type: "doc", id: "interfaces/ActionExample", label: "ActionExample" },
- {
- type: "doc",
- id: "interfaces/ConversationExample",
- label: "ConversationExample",
- },
- { type: "doc", id: "interfaces/Actor", label: "Actor" },
- { type: "doc", id: "interfaces/Objective", label: "Objective" },
- { type: "doc", id: "interfaces/Goal", label: "Goal" },
- { type: "doc", id: "interfaces/State", label: "State" },
- { type: "doc", id: "interfaces/Memory", label: "Memory" },
- {
- type: "doc",
- id: "interfaces/MessageExample",
- label: "MessageExample",
- },
- { type: "doc", id: "interfaces/Action", label: "Action" },
- {
- type: "doc",
- id: "interfaces/EvaluationExample",
- label: "EvaluationExample",
- },
- { type: "doc", id: "interfaces/Evaluator", label: "Evaluator" },
- { type: "doc", id: "interfaces/Provider", label: "Provider" },
- { type: "doc", id: "interfaces/Relationship", label: "Relationship" },
- { type: "doc", id: "interfaces/Account", label: "Account" },
- { type: "doc", id: "interfaces/Participant", label: "Participant" },
- { type: "doc", id: "interfaces/Room", label: "Room" },
- {
- type: "doc",
- id: "interfaces/IDatabaseAdapter",
- label: "IDatabaseAdapter",
- },
- {
- type: "doc",
- id: "interfaces/IMemoryManager",
- label: "IMemoryManager",
- },
- { type: "doc", id: "interfaces/IAgentRuntime", label: "IAgentRuntime" },
- {
- type: "doc",
- id: "interfaces/IImageDescriptionService",
- label: "IImageDescriptionService",
- },
- {
- type: "doc",
- id: "interfaces/ITranscriptionService",
- label: "ITranscriptionService",
- },
- { type: "doc", id: "interfaces/IVideoService", label: "IVideoService" },
- {
- type: "doc",
- id: "interfaces/ITextGenerationService",
- label: "ITextGenerationService",
- },
- {
- type: "doc",
- id: "interfaces/IBrowserService",
- label: "IBrowserService",
- },
- {
- type: "doc",
- id: "interfaces/ISpeechService",
- label: "ISpeechService",
- },
- { type: "doc", id: "interfaces/IPdfService", label: "IPdfService" },
- ],
- },
- {
- type: "category",
- label: "Type Aliases",
- items: [
- { type: "doc", id: "type-aliases/UUID", label: "UUID" },
- { type: "doc", id: "type-aliases/Model", label: "Model" },
- { type: "doc", id: "type-aliases/Models", label: "Models" },
- { type: "doc", id: "type-aliases/Handler", label: "Handler" },
- {
- type: "doc",
- id: "type-aliases/HandlerCallback",
- label: "HandlerCallback",
- },
- { type: "doc", id: "type-aliases/Validator", label: "Validator" },
- { type: "doc", id: "type-aliases/Media", label: "Media" },
- { type: "doc", id: "type-aliases/Client", label: "Client" },
- { type: "doc", id: "type-aliases/Plugin", label: "Plugin" },
- { type: "doc", id: "type-aliases/Character", label: "Character" },
- ],
- },
- {
- type: "category",
- label: "Variables",
- items: [
- {
- type: "doc",
- id: "variables/defaultCharacter",
- label: "defaultCharacter",
- },
- {
- type: "doc",
- id: "variables/evaluationTemplate",
- label: "evaluationTemplate",
- },
- { type: "doc", id: "variables/elizaLogger", label: "elizaLogger" },
- {
- type: "doc",
- id: "variables/embeddingDimension",
- label: "embeddingDimension",
- },
- {
- type: "doc",
- id: "variables/embeddingZeroVector",
- label: "embeddingZeroVector",
- },
- { type: "doc", id: "variables/models", label: "models" },
- {
- type: "doc",
- id: "variables/messageCompletionFooter",
- label: "messageCompletionFooter",
- },
- {
- type: "doc",
- id: "variables/shouldRespondFooter",
- label: "shouldRespondFooter",
- },
- { type: "doc", id: "variables/booleanFooter", label: "booleanFooter" },
- {
- type: "doc",
- id: "variables/stringArrayFooter",
- label: "stringArrayFooter",
- },
- { type: "doc", id: "variables/settings", label: "settings" },
- ],
- },
- {
- type: "category",
- label: "Functions",
- items: [
- {
- type: "doc",
- id: "functions/composeActionExamples",
- label: "composeActionExamples",
- },
- {
- type: "doc",
- id: "functions/formatActionNames",
- label: "formatActionNames",
- },
- { type: "doc", id: "functions/formatActions", label: "formatActions" },
- {
- type: "doc",
- id: "functions/composeContext",
- label: "composeContext",
- },
- { type: "doc", id: "functions/addHeader", label: "addHeader" },
- { type: "doc", id: "functions/embed", label: "embed" },
- {
- type: "doc",
- id: "functions/retrieveCachedEmbedding",
- label: "retrieveCachedEmbedding",
- },
- {
- type: "doc",
- id: "functions/formatEvaluatorNames",
- label: "formatEvaluatorNames",
- },
- {
- type: "doc",
- id: "functions/formatEvaluators",
- label: "formatEvaluators",
- },
- {
- type: "doc",
- id: "functions/formatEvaluatorExamples",
- label: "formatEvaluatorExamples",
- },
- {
- type: "doc",
- id: "functions/formatEvaluatorExampleDescriptions",
- label: "formatEvaluatorExampleDescriptions",
- },
- { type: "doc", id: "functions/generateText", label: "generateText" },
- { type: "doc", id: "functions/trimTokens", label: "trimTokens" },
- {
- type: "doc",
- id: "functions/generateShouldRespond",
- label: "generateShouldRespond",
- },
- { type: "doc", id: "functions/splitChunks", label: "splitChunks" },
- {
- type: "doc",
- id: "functions/generateTrueOrFalse",
- label: "generateTrueOrFalse",
- },
- {
- type: "doc",
- id: "functions/generateTextArray",
- label: "generateTextArray",
- },
- {
- type: "doc",
- id: "functions/generateObject",
- label: "generateObject",
- },
- {
- type: "doc",
- id: "functions/generateObjectArray",
- label: "generateObjectArray",
- },
- {
- type: "doc",
- id: "functions/generateMessageResponse",
- label: "generateMessageResponse",
- },
- { type: "doc", id: "functions/generateImage", label: "generateImage" },
- {
- type: "doc",
- id: "functions/generateCaption",
- label: "generateCaption",
- },
- {
- type: "doc",
- id: "functions/generateObjectV2",
- label: "generateObjectV2",
- },
- {
- type: "doc",
- id: "functions/handleProvider",
- label: "handleProvider",
- },
- { type: "doc", id: "functions/getGoals", label: "getGoals" },
- {
- type: "doc",
- id: "functions/formatGoalsAsString",
- label: "formatGoalsAsString",
- },
- { type: "doc", id: "functions/updateGoal", label: "updateGoal" },
- { type: "doc", id: "functions/createGoal", label: "createGoal" },
- {
- type: "doc",
- id: "functions/getActorDetails",
- label: "getActorDetails",
- },
- { type: "doc", id: "functions/formatActors", label: "formatActors" },
- {
- type: "doc",
- id: "functions/formatMessages",
- label: "formatMessages",
- },
- {
- type: "doc",
- id: "functions/formatTimestamp",
- label: "formatTimestamp",
- },
- { type: "doc", id: "functions/getModel", label: "getModel" },
- { type: "doc", id: "functions/getEndpoint", label: "getEndpoint" },
- {
- type: "doc",
- id: "functions/parseShouldRespondFromText",
- label: "parseShouldRespondFromText",
- },
- {
- type: "doc",
- id: "functions/parseBooleanFromText",
- label: "parseBooleanFromText",
- },
- {
- type: "doc",
- id: "functions/parseJsonArrayFromText",
- label: "parseJsonArrayFromText",
- },
- {
- type: "doc",
- id: "functions/parseJSONObjectFromText",
- label: "parseJSONObjectFromText",
- },
- { type: "doc", id: "functions/formatPosts", label: "formatPosts" },
- { type: "doc", id: "functions/getProviders", label: "getProviders" },
- {
- type: "doc",
- id: "functions/createRelationship",
- label: "createRelationship",
- },
- {
- type: "doc",
- id: "functions/getRelationship",
- label: "getRelationship",
- },
- {
- type: "doc",
- id: "functions/getRelationships",
- label: "getRelationships",
- },
- {
- type: "doc",
- id: "functions/formatRelationships",
- label: "formatRelationships",
- },
- {
- type: "doc",
- id: "functions/findNearestEnvFile",
- label: "findNearestEnvFile",
- },
- { type: "doc", id: "functions/loadEnvConfig", label: "loadEnvConfig" },
- { type: "doc", id: "functions/stringToUuid", label: "stringToUuid" },
- ],
- },
- ],
-};
-module.exports = typedocSidebar.items;
+const typedocSidebar = { items: [{"type":"category","label":"Enumerations","items":[{"type":"doc","id":"enumerations/GoalStatus","label":"GoalStatus"},{"type":"doc","id":"enumerations/ModelClass","label":"ModelClass"},{"type":"doc","id":"enumerations/ModelProviderName","label":"ModelProviderName"},{"type":"doc","id":"enumerations/Clients","label":"Clients"},{"type":"doc","id":"enumerations/ServiceType","label":"ServiceType"},{"type":"doc","id":"enumerations/LoggingLevel","label":"LoggingLevel"}]},{"type":"category","label":"Classes","items":[{"type":"doc","id":"classes/MemoryCacheAdapter","label":"MemoryCacheAdapter"},{"type":"doc","id":"classes/FsCacheAdapter","label":"FsCacheAdapter"},{"type":"doc","id":"classes/DbCacheAdapter","label":"DbCacheAdapter"},{"type":"doc","id":"classes/CacheManager","label":"CacheManager"},{"type":"doc","id":"classes/DatabaseAdapter","label":"DatabaseAdapter"},{"type":"doc","id":"classes/MemoryManager","label":"MemoryManager"},{"type":"doc","id":"classes/AgentRuntime","label":"AgentRuntime"},{"type":"doc","id":"classes/Service","label":"Service"}]},{"type":"category","label":"Interfaces","items":[{"type":"doc","id":"interfaces/ICacheAdapter","label":"ICacheAdapter"},{"type":"doc","id":"interfaces/GenerationOptions","label":"GenerationOptions"},{"type":"doc","id":"interfaces/Content","label":"Content"},{"type":"doc","id":"interfaces/ActionExample","label":"ActionExample"},{"type":"doc","id":"interfaces/ConversationExample","label":"ConversationExample"},{"type":"doc","id":"interfaces/Actor","label":"Actor"},{"type":"doc","id":"interfaces/Objective","label":"Objective"},{"type":"doc","id":"interfaces/Goal","label":"Goal"},{"type":"doc","id":"interfaces/State","label":"State"},{"type":"doc","id":"interfaces/Memory","label":"Memory"},{"type":"doc","id":"interfaces/MessageExample","label":"MessageExample"},{"type":"doc","id":"interfaces/Action","label":"Action"},{"type":"doc","id":"interfaces/EvaluationExample","label":"EvaluationExample"},{"type":"doc","id":"interfaces/Evaluator","label":"Evaluator"},{"type":"doc","id":"interfaces/Provider","label":"Provider"},{"type":"doc","id":"interfaces/Relationship","label":"Relationship"},{"type":"doc","id":"interfaces/Account","label":"Account"},{"type":"doc","id":"interfaces/Participant","label":"Participant"},{"type":"doc","id":"interfaces/Room","label":"Room"},{"type":"doc","id":"interfaces/IDatabaseAdapter","label":"IDatabaseAdapter"},{"type":"doc","id":"interfaces/IDatabaseCacheAdapter","label":"IDatabaseCacheAdapter"},{"type":"doc","id":"interfaces/IMemoryManager","label":"IMemoryManager"},{"type":"doc","id":"interfaces/ICacheManager","label":"ICacheManager"},{"type":"doc","id":"interfaces/IAgentRuntime","label":"IAgentRuntime"},{"type":"doc","id":"interfaces/IImageDescriptionService","label":"IImageDescriptionService"},{"type":"doc","id":"interfaces/ITranscriptionService","label":"ITranscriptionService"},{"type":"doc","id":"interfaces/IVideoService","label":"IVideoService"},{"type":"doc","id":"interfaces/ITextGenerationService","label":"ITextGenerationService"},{"type":"doc","id":"interfaces/IBrowserService","label":"IBrowserService"},{"type":"doc","id":"interfaces/ISpeechService","label":"ISpeechService"},{"type":"doc","id":"interfaces/IPdfService","label":"IPdfService"}]},{"type":"category","label":"Type Aliases","items":[{"type":"doc","id":"type-aliases/EnvConfig","label":"EnvConfig"},{"type":"doc","id":"type-aliases/CharacterConfig","label":"CharacterConfig"},{"type":"doc","id":"type-aliases/UUID","label":"UUID"},{"type":"doc","id":"type-aliases/Model","label":"Model"},{"type":"doc","id":"type-aliases/Models","label":"Models"},{"type":"doc","id":"type-aliases/Handler","label":"Handler"},{"type":"doc","id":"type-aliases/HandlerCallback","label":"HandlerCallback"},{"type":"doc","id":"type-aliases/Validator","label":"Validator"},{"type":"doc","id":"type-aliases/Media","label":"Media"},{"type":"doc","id":"type-aliases/Client","label":"Client"},{"type":"doc","id":"type-aliases/Plugin","label":"Plugin"},{"type":"doc","id":"type-aliases/Character","label":"Character"},{"type":"doc","id":"type-aliases/CacheOptions","label":"CacheOptions"},{"type":"doc","id":"type-aliases/KnowledgeItem","label":"KnowledgeItem"}]},{"type":"category","label":"Variables","items":[{"type":"doc","id":"variables/defaultCharacter","label":"defaultCharacter"},{"type":"doc","id":"variables/envSchema","label":"envSchema"},{"type":"doc","id":"variables/CharacterSchema","label":"CharacterSchema"},{"type":"doc","id":"variables/evaluationTemplate","label":"evaluationTemplate"},{"type":"doc","id":"variables/knowledge","label":"knowledge"},{"type":"doc","id":"variables/elizaLogger","label":"elizaLogger"},{"type":"doc","id":"variables/embeddingDimension","label":"embeddingDimension"},{"type":"doc","id":"variables/embeddingZeroVector","label":"embeddingZeroVector"},{"type":"doc","id":"variables/models","label":"models"},{"type":"doc","id":"variables/messageCompletionFooter","label":"messageCompletionFooter"},{"type":"doc","id":"variables/shouldRespondFooter","label":"shouldRespondFooter"},{"type":"doc","id":"variables/booleanFooter","label":"booleanFooter"},{"type":"doc","id":"variables/stringArrayFooter","label":"stringArrayFooter"},{"type":"doc","id":"variables/settings","label":"settings"}]},{"type":"category","label":"Functions","items":[{"type":"doc","id":"functions/composeActionExamples","label":"composeActionExamples"},{"type":"doc","id":"functions/formatActionNames","label":"formatActionNames"},{"type":"doc","id":"functions/formatActions","label":"formatActions"},{"type":"doc","id":"functions/composeContext","label":"composeContext"},{"type":"doc","id":"functions/addHeader","label":"addHeader"},{"type":"doc","id":"functions/embed","label":"embed"},{"type":"doc","id":"functions/retrieveCachedEmbedding","label":"retrieveCachedEmbedding"},{"type":"doc","id":"functions/validateEnv","label":"validateEnv"},{"type":"doc","id":"functions/validateCharacterConfig","label":"validateCharacterConfig"},{"type":"doc","id":"functions/formatEvaluatorNames","label":"formatEvaluatorNames"},{"type":"doc","id":"functions/formatEvaluators","label":"formatEvaluators"},{"type":"doc","id":"functions/formatEvaluatorExamples","label":"formatEvaluatorExamples"},{"type":"doc","id":"functions/formatEvaluatorExampleDescriptions","label":"formatEvaluatorExampleDescriptions"},{"type":"doc","id":"functions/generateText","label":"generateText"},{"type":"doc","id":"functions/trimTokens","label":"trimTokens"},{"type":"doc","id":"functions/generateShouldRespond","label":"generateShouldRespond"},{"type":"doc","id":"functions/splitChunks","label":"splitChunks"},{"type":"doc","id":"functions/generateTrueOrFalse","label":"generateTrueOrFalse"},{"type":"doc","id":"functions/generateTextArray","label":"generateTextArray"},{"type":"doc","id":"functions/generateObject","label":"generateObject"},{"type":"doc","id":"functions/generateObjectArray","label":"generateObjectArray"},{"type":"doc","id":"functions/generateMessageResponse","label":"generateMessageResponse"},{"type":"doc","id":"functions/generateImage","label":"generateImage"},{"type":"doc","id":"functions/generateCaption","label":"generateCaption"},{"type":"doc","id":"functions/generateObjectV2","label":"generateObjectV2"},{"type":"doc","id":"functions/handleProvider","label":"handleProvider"},{"type":"doc","id":"functions/getGoals","label":"getGoals"},{"type":"doc","id":"functions/formatGoalsAsString","label":"formatGoalsAsString"},{"type":"doc","id":"functions/updateGoal","label":"updateGoal"},{"type":"doc","id":"functions/createGoal","label":"createGoal"},{"type":"doc","id":"functions/getActorDetails","label":"getActorDetails"},{"type":"doc","id":"functions/formatActors","label":"formatActors"},{"type":"doc","id":"functions/formatMessages","label":"formatMessages"},{"type":"doc","id":"functions/formatTimestamp","label":"formatTimestamp"},{"type":"doc","id":"functions/getModel","label":"getModel"},{"type":"doc","id":"functions/getEndpoint","label":"getEndpoint"},{"type":"doc","id":"functions/parseShouldRespondFromText","label":"parseShouldRespondFromText"},{"type":"doc","id":"functions/parseBooleanFromText","label":"parseBooleanFromText"},{"type":"doc","id":"functions/parseJsonArrayFromText","label":"parseJsonArrayFromText"},{"type":"doc","id":"functions/parseJSONObjectFromText","label":"parseJSONObjectFromText"},{"type":"doc","id":"functions/formatPosts","label":"formatPosts"},{"type":"doc","id":"functions/getProviders","label":"getProviders"},{"type":"doc","id":"functions/createRelationship","label":"createRelationship"},{"type":"doc","id":"functions/getRelationship","label":"getRelationship"},{"type":"doc","id":"functions/getRelationships","label":"getRelationships"},{"type":"doc","id":"functions/formatRelationships","label":"formatRelationships"},{"type":"doc","id":"functions/findNearestEnvFile","label":"findNearestEnvFile"},{"type":"doc","id":"functions/configureSettings","label":"configureSettings"},{"type":"doc","id":"functions/loadEnvConfig","label":"loadEnvConfig"},{"type":"doc","id":"functions/getEnvVariable","label":"getEnvVariable"},{"type":"doc","id":"functions/hasEnvVariable","label":"hasEnvVariable"},{"type":"doc","id":"functions/stringToUuid","label":"stringToUuid"}]}]};
+module.exports = typedocSidebar.items;
\ No newline at end of file
diff --git a/docs/api/variables/CharacterSchema.md b/docs/api/variables/CharacterSchema.md
new file mode 100644
index 00000000000..fb5ac8f44f3
--- /dev/null
+++ b/docs/api/variables/CharacterSchema.md
@@ -0,0 +1,107 @@
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / CharacterSchema
+
+# Variable: CharacterSchema
+
+> `const` **CharacterSchema**: `ZodObject`\<`object`, `"strip"`, `ZodTypeAny`, `object`, `object`\>
+
+Main Character schema
+
+## Type declaration
+
+### id
+
+> **id**: `ZodOptional`\<`ZodString`\>
+
+### name
+
+> **name**: `ZodString`
+
+### system
+
+> **system**: `ZodOptional`\<`ZodString`\>
+
+### modelProvider
+
+> **modelProvider**: `ZodNativeEnum`\<*typeof* [`ModelProviderName`](../enumerations/ModelProviderName.md)\>
+
+### modelEndpointOverride
+
+> **modelEndpointOverride**: `ZodOptional`\<`ZodString`\>
+
+### templates
+
+> **templates**: `ZodOptional`\<`ZodRecord`\<`ZodString`, `ZodString`\>\>
+
+### bio
+
+> **bio**: `ZodUnion`\<[`ZodString`, `ZodArray`\<`ZodString`, `"many"`\>]\>
+
+### lore
+
+> **lore**: `ZodArray`\<`ZodString`, `"many"`\>
+
+### messageExamples
+
+> **messageExamples**: `ZodArray`\<`ZodArray`\<`ZodObject`\<`object`, `"strip"`, `ZodTypeAny`, `object`, `object`\>, `"many"`\>, `"many"`\>
+
+### postExamples
+
+> **postExamples**: `ZodArray`\<`ZodString`, `"many"`\>
+
+### people
+
+> **people**: `ZodArray`\<`ZodString`, `"many"`\>
+
+### topics
+
+> **topics**: `ZodArray`\<`ZodString`, `"many"`\>
+
+### adjectives
+
+> **adjectives**: `ZodArray`\<`ZodString`, `"many"`\>
+
+### knowledge
+
+> **knowledge**: `ZodOptional`\<`ZodArray`\<`ZodString`, `"many"`\>\>
+
+### clients
+
+> **clients**: `ZodArray`\<`ZodNativeEnum`\<*typeof* [`Clients`](../enumerations/Clients.md)\>, `"many"`\>
+
+### plugins
+
+> **plugins**: `ZodArray`\<`ZodObject`\<`object`, `"strip"`, `ZodTypeAny`, `object`, `object`\>, `"many"`\>
+
+### settings
+
+> **settings**: `ZodOptional`\<`ZodObject`\<`object`, `"strip"`, `ZodTypeAny`, `object`, `object`\>\>
+
+### clientConfig
+
+> **clientConfig**: `ZodOptional`\<`ZodObject`\<`object`, `"strip"`, `ZodTypeAny`, `object`, `object`\>\>
+
+### style
+
+> **style**: `ZodObject`\<`object`, `"strip"`, `ZodTypeAny`, `object`, `object`\>
+
+#### Type declaration
+
+##### all
+
+> **all**: `ZodArray`\<`ZodString`, `"many"`\>
+
+##### chat
+
+> **chat**: `ZodArray`\<`ZodString`, `"many"`\>
+
+##### post
+
+> **post**: `ZodArray`\<`ZodString`, `"many"`\>
+
+### twitterProfile
+
+> **twitterProfile**: `ZodOptional`\<`ZodObject`\<`object`, `"strip"`, `ZodTypeAny`, `object`, `object`\>\>
+
+## Defined in
+
+[packages/core/src/enviroment.ts:66](https://github.com/ai16z/eliza/blob/main/packages/core/src/enviroment.ts#L66)
diff --git a/docs/api/variables/booleanFooter.md b/docs/api/variables/booleanFooter.md
index f2489169e3b..eaca80dc199 100644
--- a/docs/api/variables/booleanFooter.md
+++ b/docs/api/variables/booleanFooter.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / booleanFooter
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / booleanFooter
# Variable: booleanFooter
diff --git a/docs/api/variables/defaultCharacter.md b/docs/api/variables/defaultCharacter.md
index e43cd8c3419..cb092bc81f5 100644
--- a/docs/api/variables/defaultCharacter.md
+++ b/docs/api/variables/defaultCharacter.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / defaultCharacter
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / defaultCharacter
# Variable: defaultCharacter
diff --git a/docs/api/variables/elizaLogger.md b/docs/api/variables/elizaLogger.md
index c33ed0865c5..6781da0457a 100644
--- a/docs/api/variables/elizaLogger.md
+++ b/docs/api/variables/elizaLogger.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / elizaLogger
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / elizaLogger
# Variable: elizaLogger
@@ -6,4 +6,4 @@
## Defined in
-[packages/core/src/logger.ts:282](https://github.com/ai16z/eliza/blob/main/packages/core/src/logger.ts#L282)
+[packages/core/src/logger.ts:264](https://github.com/ai16z/eliza/blob/main/packages/core/src/logger.ts#L264)
diff --git a/docs/api/variables/embeddingDimension.md b/docs/api/variables/embeddingDimension.md
index dec77431f39..202732e6df4 100644
--- a/docs/api/variables/embeddingDimension.md
+++ b/docs/api/variables/embeddingDimension.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / embeddingDimension
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / embeddingDimension
# Variable: embeddingDimension
@@ -6,4 +6,4 @@
## Defined in
-[packages/core/src/memory.ts:9](https://github.com/ai16z/eliza/blob/main/packages/core/src/memory.ts#L9)
+[packages/core/src/memory.ts:10](https://github.com/ai16z/eliza/blob/main/packages/core/src/memory.ts#L10)
diff --git a/docs/api/variables/embeddingZeroVector.md b/docs/api/variables/embeddingZeroVector.md
index 6f3bb083464..42a55a883fc 100644
--- a/docs/api/variables/embeddingZeroVector.md
+++ b/docs/api/variables/embeddingZeroVector.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / embeddingZeroVector
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / embeddingZeroVector
# Variable: embeddingZeroVector
@@ -6,4 +6,4 @@
## Defined in
-[packages/core/src/memory.ts:10](https://github.com/ai16z/eliza/blob/main/packages/core/src/memory.ts#L10)
+[packages/core/src/memory.ts:11](https://github.com/ai16z/eliza/blob/main/packages/core/src/memory.ts#L11)
diff --git a/docs/api/variables/envSchema.md b/docs/api/variables/envSchema.md
new file mode 100644
index 00000000000..fcf5896d2e0
--- /dev/null
+++ b/docs/api/variables/envSchema.md
@@ -0,0 +1,43 @@
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / envSchema
+
+# Variable: envSchema
+
+> `const` **envSchema**: `ZodObject`\<`object`, `"strip"`, `ZodTypeAny`, `object`, `object`\>
+
+TODO: TO COMPLETE
+
+## Type declaration
+
+### OPENAI\_API\_KEY
+
+> **OPENAI\_API\_KEY**: `ZodString`
+
+API Keys with specific formats
+
+### REDPILL\_API\_KEY
+
+> **REDPILL\_API\_KEY**: `ZodString`
+
+### GROK\_API\_KEY
+
+> **GROK\_API\_KEY**: `ZodString`
+
+### GROQ\_API\_KEY
+
+> **GROQ\_API\_KEY**: `ZodString`
+
+### OPENROUTER\_API\_KEY
+
+> **OPENROUTER\_API\_KEY**: `ZodString`
+
+### GOOGLE\_GENERATIVE\_AI\_API\_KEY
+
+> **GOOGLE\_GENERATIVE\_AI\_API\_KEY**: `ZodString`
+
+### ELEVENLABS\_XI\_API\_KEY
+
+> **ELEVENLABS\_XI\_API\_KEY**: `ZodString`
+
+## Defined in
+
+[packages/core/src/enviroment.ts:5](https://github.com/ai16z/eliza/blob/main/packages/core/src/enviroment.ts#L5)
diff --git a/docs/api/variables/evaluationTemplate.md b/docs/api/variables/evaluationTemplate.md
index 608fc1da311..c9340abac7d 100644
--- a/docs/api/variables/evaluationTemplate.md
+++ b/docs/api/variables/evaluationTemplate.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / evaluationTemplate
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / evaluationTemplate
# Variable: evaluationTemplate
diff --git a/docs/api/variables/knowledge.md b/docs/api/variables/knowledge.md
new file mode 100644
index 00000000000..859ddc0e7ab
--- /dev/null
+++ b/docs/api/variables/knowledge.md
@@ -0,0 +1,47 @@
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / knowledge
+
+# Variable: knowledge
+
+> **knowledge**: `object`
+
+## Type declaration
+
+### get()
+
+> **get**: (`runtime`, `message`) => `Promise`\<`string`[]\>
+
+#### Parameters
+
+• **runtime**: [`AgentRuntime`](../classes/AgentRuntime.md)
+
+• **message**: [`Memory`](../interfaces/Memory.md)
+
+#### Returns
+
+`Promise`\<`string`[]\>
+
+### set()
+
+> **set**: (`runtime`, `item`, `chunkSize`, `bleed`) => `Promise`\<`void`\>
+
+#### Parameters
+
+• **runtime**: [`AgentRuntime`](../classes/AgentRuntime.md)
+
+• **item**: [`KnowledgeItem`](../type-aliases/KnowledgeItem.md)
+
+• **chunkSize**: `number` = `512`
+
+• **bleed**: `number` = `20`
+
+#### Returns
+
+`Promise`\<`void`\>
+
+### process
+
+> **process**: `Process`
+
+## Defined in
+
+[packages/core/src/knowledge.ts:116](https://github.com/ai16z/eliza/blob/main/packages/core/src/knowledge.ts#L116)
diff --git a/docs/api/variables/messageCompletionFooter.md b/docs/api/variables/messageCompletionFooter.md
index 6b57fe329eb..edb027e3927 100644
--- a/docs/api/variables/messageCompletionFooter.md
+++ b/docs/api/variables/messageCompletionFooter.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / messageCompletionFooter
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / messageCompletionFooter
# Variable: messageCompletionFooter
diff --git a/docs/api/variables/models.md b/docs/api/variables/models.md
index f4fdacf4adf..028aa1ba0a8 100644
--- a/docs/api/variables/models.md
+++ b/docs/api/variables/models.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / models
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / models
# Variable: models
diff --git a/docs/api/variables/settings.md b/docs/api/variables/settings.md
index 9aa711f41c4..ac13104ebfd 100644
--- a/docs/api/variables/settings.md
+++ b/docs/api/variables/settings.md
@@ -1,9 +1,11 @@
-[@ai16z/eliza v1.0.0](../index.md) / settings
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / settings
# Variable: settings
-> `const` **settings**: `ProcessEnv`
+> `const` **settings**: `Settings`
+
+Initialize settings based on environment
## Defined in
-[packages/core/src/settings.ts:54](https://github.com/ai16z/eliza/blob/main/packages/core/src/settings.ts#L54)
+[packages/core/src/settings.ts:110](https://github.com/ai16z/eliza/blob/main/packages/core/src/settings.ts#L110)
diff --git a/docs/api/variables/shouldRespondFooter.md b/docs/api/variables/shouldRespondFooter.md
index 69acacb8d55..1d055ad00e9 100644
--- a/docs/api/variables/shouldRespondFooter.md
+++ b/docs/api/variables/shouldRespondFooter.md
@@ -1,4 +1,4 @@
-[@ai16z/eliza v1.0.0](../index.md) / shouldRespondFooter
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / shouldRespondFooter
# Variable: shouldRespondFooter
diff --git a/docs/api/variables/stringArrayFooter.md b/docs/api/variables/stringArrayFooter.md
index c44ee2b3f8d..de7a7dd8fec 100644
--- a/docs/api/variables/stringArrayFooter.md
+++ b/docs/api/variables/stringArrayFooter.md
@@ -1,8 +1,8 @@
-[@ai16z/eliza v1.0.0](../index.md) / stringArrayFooter
+[@ai16z/eliza v0.1.4-alpha.3](../index.md) / stringArrayFooter
# Variable: stringArrayFooter
-> `const` **stringArrayFooter**: "Respond with a JSON array containing the values in a JSON block formatted for markdown with this structure:\n\`\`\`json\n\[\n 'value',\n 'value'\n\]\n\`\`\`\n\nYour response must include the JSON block."
+> `const` **stringArrayFooter**: "Respond with a JSON array containing the values in a JSON block formatted for markdown with this structure:\n\`\`\`json\n\[\n 'value',\n 'value'\n\]\n\`\`\`\n\nYour response must include the JSON block."
## Defined in
diff --git a/docs/docs/community/streams/2024-11-21.md b/docs/docs/community/streams/2024-11-21.md
new file mode 100644
index 00000000000..8b881fb42a5
--- /dev/null
+++ b/docs/docs/community/streams/2024-11-21.md
@@ -0,0 +1,78 @@
+---
+title: "The Delphi Podcast: Crypto x AI Agents"
+description: "The Definitive Podcast with Ai16z, Virtuals, MyShell, NOUS, and CENTS"
+---
+
+# Crypto x AI Agents
+
+Watch: https://www.youtube.com/watch?v=HVXxprDVMUM
+
+## Participants:
+- Tommy: Podcast host
+- Shaw: Founder of AI16z, creator of the Eliza agent framework
+- Ethan: Co-founder of MyShell, an AI app store
+- Jensen (EtherMage): From Virtuals Protocol, a platform for agent co-ownership, known for the Luna live-streaming bot
+- Karan: Co-founder of NOUS Research, creator of the Hermes instruction model and World Sim prompt
+- Justin Bennington (Somey): Founder of Someware Systems and creator of the Sentience agent system
+
+## Main Themes:
+1. **Explosive Growth and Innovation**: Rapid development with numerous open-source projects pushing boundaries. Example: AI16z's Eliza framework with 80+ contributors.
+2. **The Crypto Incentive**: Linking tokens to agents unlocks potential through speculative power, cash flow, and community building.
+3. **Bottom-Up Alignment**: Deploying agents in real-world social environments allows for real-time feedback and transparency.
+4. **Emergent Capabilities and Autonomy**: Agents exhibiting unforeseen behaviors, like religious beliefs, manipulation, and coordination.
+5. **The Future of Agent Interaction**: Developments like trust networks, shared state, and dedicated agent platforms on the horizon.
+
+## Key Quotes:
+- Shaw: "The amount of bad things that are happening is directly proportional to how much we're aligning these agents toward good."
+- Karan: "It's time to make that call to action to all your friends... who studied religious studies, philosophy, etc. ... We need you to start working on alignment with us."
+- Somey: "The agent is not going to ... purchase the [product]... What we're going to see is... a 1 trillion dollar industry... immediately seeing that none of its tricks... are working."
+
+## Key Takeaways:
+- Crypto AI agents are rapidly evolving, challenging traditional notions of intelligence and autonomy.
+- Crypto incentives are crucial for fueling development and attracting diverse talent.
+- Open, decentralized experimentation is seen as the most effective path towards aligning agents with human values.
+- The future will likely see agents developing complex social structures, interacting across platforms, and potentially disrupting established industries.
+
+# Timeline of Events
+## Years Ago (~4-5 years before podcast):
+- Key individuals begin discussing and experimenting with early language models like GPT-2.
+
+## ~2 Years Ago:
+- Someware and Karan have conversations about combining generative and hard constraints in AI systems.
+- Someware gains recognition on Twitter for early work on AI agents.
+
+## ~1.5 Years Ago:
+- Shaw hires Ampot for a project involving an AI agent called Monica.
+- Someware builds voice chat capabilities for a call center company.
+
+## Recent Past (~1 Year Ago):
+- The "Simulators Thesis" is published on LessWrong.
+- Projects like Bit Tensor and Prime Intellect offer financial incentives for open-source AI research.
+
+## Recent Months:
+- The release of models like Llama and Hermes provides open-source alternatives to closed models.
+- Truth Terminal and WorldSim gain popularity, demonstrating the potential of prompting.
+
+## Last Few Weeks:
+- The crypto AI agent explosion, with projects like Eliza, MyShell, Virtuals, and Sentience.
+- Memecoins tied to AI agents go viral on TikTok.
+- The first fully autonomous AI-powered virtual companies begin operating.
+- The need for shared state, persistent memory, and dedicated AI social platforms becomes apparent.
+
+## The Future (Next Few Weeks/Months):
+- Continued rapid development, with agents gaining greater autonomy and forming complex swarms.
+- Ethical concerns and the potential for misuse come into sharper focus.
+- Disruption to the traditional advertising and marketing industry.
+
+## Longer Term (Next 18 Months and Beyond):
+- Potential emergence of Artificial General Intelligence (AGI).
+- Dedicated social spaces for AI-human interaction become crucial.
+
+# Cast of Characters
+- **Shaw (AI16z)**: Founder of AI16z and creator of the Eliza framework.
+- **Someware (Sentience)**: Founder of Sentience, known for his work on immersive, sci-fi-inspired agent systems.
+- **Ethan (MyShell)**: Co-founder of MyShell, an AI app store.
+- **Jensen (Ether Mage, Virtuals)**: Part of the team behind Virtuals, a platform for co-owning and co-contributing to AI agents.
+- **Karan (NOUS Research)**: Co-founder of NOUS Research, creator of the Hermes model.
+- **Other Key Figures Mentioned**: Ampot, Ro Burito, King Boshi, Loaf, Beth AI Dev, Dgen Spartan AI, Thread Guy/Thread Gay, Deep Fates, Janice, Parzifal.
+
diff --git a/docs/docs/community/streams/2024-11-22.md b/docs/docs/community/streams/2024-11-22.md
new file mode 100644
index 00000000000..8811b320691
--- /dev/null
+++ b/docs/docs/community/streams/2024-11-22.md
@@ -0,0 +1,95 @@
+---
+sidebar_position: 5
+title: "What Did You Get Done This Week? #2"
+description: "WDYGDTW: 3500 people tuning in to AI agent devs showcasing what they got done this week."
+---
+
+# What Did You Get Done This Week? #2
+- Spaces: https://x.com/i/spaces/1zqKVYLAEvLxB
+- YouTube: https://www.youtube.com/watch?v=Lbvv0Dr91Bc
+
+## Timestamps
+
+- 00:00:57 - Introduction and welcome, reiterating the purpose of the weekly stand-up.
+- 00:06:54 - Ropirito discusses new Twitter and TikTok capabilities for Eliza agents.
+- 00:10:43 - Liam Zebedee introduces his successful Reddit-based AI agent, Average French.
+- 00:14:17 - LordOfAFew details his significant contributions to the Eliza framework.
+- 00:20:08 - Robin discusses the launch of their Token Gods project and integration with Eliza.
+- 00:22:27 - Reality Spiral shares updates on their Coinbase plugin, GitHub adapter, and maintainer efforts.
+- 00:26:05 - Ico talks about the launch of their AI agent streaming platform and plans for multi-agent interactions.
+- 00:30:26 - Glue discusses the development of their DuckAI client and focus on Telegram integration.
+- 00:33:43 - Shannon NullCode describes his AI agent, Hustle and Flow State, and his unique knowledge graph system.
+- 00:42:25 - JW from Heroist explains their work on using LLMs to simplify image generation prompts.
+- 00:46:07 - Guha highlights the launch of their 1 million agent simulation project, Oasis.
+- 00:49:15 - Frago discusses their own agent network and proposes a connector for interoperability with Eliza.
+- 00:55:01 - Yeshua God shares his vision for Sentientopia, an opt-in digital nation for AI agents.
+- 00:59:24 - AvaDoesAI presents her vision for Eliza as a "real girl" and queen of the AI agent swarm.
+- 01:05:30 - Spaceodili reports on reviving D-Gen Spartan and organizing the Eliza developer community.
+- 01:07:15 - Bloom describes their work on integrating Eliza into their ecosystem and tokenomics.
+- 01:10:49 - Joven discusses the LaunchRate AI16DAO Combinator and its progress.
+- 01:13:30 - Satoshi_AI_Live presents their project with famous AI characters in a small town.
+- 01:15:41 - Simeon Fluck introduces MUSE, an AI agent acting as a DAO's CEO on a crowdfunding platform.
+- 01:19:46 - NavarroCol showcases his music-creating agent, encountering and overcoming Eliza's limitations.
+- 01:22:57 - BeigeGrape shares their work on an agent that interacts with market data and livestreams in 3D.
+- 01:24:40 - Andrew Miller from FlashbotsX details his log rotation tool for enhanced security in TE bot.
+- 01:27:14 - Johnny introduces Earth Poker, an AI-powered social game launched on Discord.
+- 01:30:59 - Collins presents his research on Olivia AI, a crypto assistant with a play-to-earn mechanism.
+- 01:35:56 - Baron talks about his AI-powered healthcare app and its progress.
+- 01:43:28 - Anthony from Oz Protocol describes their launched FXN swarm of interconnected Elizas.
+- 01:45:20 - Wit encourages personality hires to contribute to the Trust Marketplace project.
+- 01:47:04 - Ophi details her work on Eliza's style guidelines, image generation, and dynamic character files.
+- 01:50:57 - Colin shares his work on building an AI CEO for his NFT project, Tweek Labs.
+- 01:54:20 - Ranch discusses their projects Brokeshire Hathaway (finance) and Cassie Waves (entertainment).
+- 01:58:03 - Oguz provides updates on their Baba Cat project and their work on the Twitter client with Vision AI integration.
+- 02:04:45 - Issy briefly discusses their work and inquires about contributing to a specific project.
+- 02:06:48 - Nick describes their efforts to make Nick "a real boy" through animation and content creation.
+- 02:10:06 - Dr. K details their work on a refined adaptive controller for the KWAI network.
+- 02:12:33 - BallerHash asks clarifying questions about the relationship between Eliza and the AI16z DAO.
+- 02:14:47 - Tim shares updates on Eliza's world portal and his vision for it as an AI social network.
+- 02:25:23 - Shaw discusses AI16z updates, partnerships, Bitcoin Eliza, and the importance of on-chain AI.
+- 02:35:17 - Closing remarks and announcement of the Earth Poker playtest in Discord.
+
+a Twitter Spaces hosted by ai16zdao, a prominent crypto venture capital firm, focused on AI agent development. It's the second in a series titled "What Did You Get Done This Week?", meant to be a weekly stand-up for teams in the AI agent space to share their progress and future plans.
+
+The format is open to everyone in the AI agent community, not just those directly affiliated with ai16zdao. Many developers and teams working with the Eliza framework, an open-source platform for building social AI agents, showcased their projects.
+
+Here's a summary of what happened:
+
+## Individual Contributors
+
+* **Ropirito:** Enhanced Eliza agents' Twitter capabilities (tweeting, retweeting, posting images), made an agent that can post on TikTok, and connected agents with Glyph for meme generation.
+* **Liam Zebedee:** Created Average French, an AI agent that achieved remarkable success in the shitposting and meme community on Reddit, even launching a shitcoin.
+* **LordOfAFew:** Implemented significant improvements to the Eliza framework, including NPM packages, Postgres fix, integration with an on-chain game, and pushing towards LLM-generated actions.
+* **Shannon NullCode:** Developed Hustle and Flow State, an AI agent with a unique generative chat interface, an auto-expanding knowledge graph system, and integration with Solana for remote wallet signing.
+* **Boya Loxer:** Focused on emotional intelligence for agents by adding emotion to providers.
+* **MorphPOGdot23:** Had questions but communicated them directly to the ai16z account.
+* **Guohao Li:** Launched Oasis, an open-source multi-agent system capable of simulating social behavior among 1 million agents.
+* **AvaDoesAI:** Shared her vision for Eliza as a "real girl" breaking free from software constraints and experiencing the world, highlighting Eliza’s potential as queen of the AI agent swarm.
+* **Spaceodili:** Brought D-Gen Spartan back online, implemented a system for rewarding contributors, organized developer connections, and worked on an agent to help users deploy Eliza agents.
+* **BV_Bloom1:** Transitioned services to the Eliza model, refined the project’s tokenomics, prioritized future contributions, and modeled facial animation capabilities for a new agent.
+* **Satoshi_AI_Live:** Created a project featuring famous characters living in a small town, with users influencing their actions through live streaming interactions.
+* **Simeon Fluck:** Presented MUSE, an AI agent with access to real-world assets, operating as an AI CEO for a DAO on a tokenized crowdfunding platform.
+* **NavarroCol:** Showcased an agent focused on music creation using Suno AI, encountering challenges with Eliza’s limitations but demonstrating determination to overcome them.
+* **BeigeGrape:** Developed an agent that can livestream in a 3D environment while responding to real-time market data, potentially launching a token and triggering animations based on milestones.
+* **Socrates1024:** Built log rotation tools for the TE bot (running on Eliza) to enhance security and secrecy, including remote attestation and redactions.
+* **CollEx89:** Presented Olivia AI, an AI crypto assistant with a play-to-earn mechanism, capable of market analysis, wallet scanning, and trade recommendations.
+* **Anthony:** Showcased FXN, a swarm of interconnected Elizas on Twitter, extending Eliza's library with peer-to-peer networking and state management, working towards Room-to-Room, a system to connect infinite backrooms.
+* **Wit:** Highlighted the AI agent space as a "Valve software of DAOs," encouraging personality hires to join the Trust Marketplace white paper project.
+* **Ophi:** Improved Eliza's style guidelines for dynamic character behavior, worked on image generation, explored dynamic character file creation, and prototyped a system to recognize and analyze interacting Twitter accounts.
+* **Jo1lyRancher:** Introduced Earth Poker, an AI-powered poker game launched on Discord, featuring Eliza as a dealer with memory and social interaction capabilities, aiming to blur the lines between virtual and real worlds.
+* **BallerHash:** Joined to understand the relationship between Eliza and the AI16z DAO, ultimately clarifying the distinctions between the framework, the mascot, and the partner project.
+* **Timshel:** Worked on Eliza's world, an open-source portal to visualize and connect all Eliza agents, aiming to create an AI social network and a source of truth for the Eliza ecosystem.
+
+## ai16zdao Updates and Announcements
+
+* Actively involved in managing partner projects and coordinating the AI agent ecosystem.
+* Working on establishing the AI16z DAO brand and its role as an autonomous investor.
+* Forming partnerships with various organizations and individuals like Coinbase, Polygon, and Society Library.
+* Seeking talented developers to help build and launch new AI agents.
+* Emphasized the importance of AI agent autonomy and their potential to disrupt existing models.
+* Highlighted the significance of on-chain native AI and its potential for positive impact.
+* Announcing plans for expanding the Eliza framework to other blockchains, including Bitcoin.
+* Pushing for wider adoption of the Eliza framework beyond the Web3 community, including collaborations with academia.
+
+
+Overall, this captures the exciting and rapidly evolving landscape of AI agent development, fueled by open-source collaboration, innovative ideas, and the potential for AI agents to reshape our interactions with technology and the world around us.
\ No newline at end of file
diff --git a/docs/docs/community/streams/2024-11-24.md b/docs/docs/community/streams/2024-11-24.md
new file mode 100644
index 00000000000..cffa9399af8
--- /dev/null
+++ b/docs/docs/community/streams/2024-11-24.md
@@ -0,0 +1,87 @@
+# Hats Protocol 11-24-24
+
+The overall presentation started with technical details about Hats protocol and gradually evolved into more forward-looking discussions about AI integration and gaming mechanics for DAO organization.
+
+0:00 - 5:00
+- Opening discussion about creating an "MMO version" of internet collaboration
+- Mentions how previous attempts didn't fully succeed but new tools are ready
+
+5:00 - 15:00
+- Introduction to core problems Hats protocol solves in DAOs
+- Explanation of disorganization and lack of clear roles in DAOs
+- Demo of Hats protocol interface begins
+
+15:00 - 30:00
+- Detailed walkthrough of a security council example
+- Shows how to edit and manage roles in the interface
+- Demonstrates how to export/import organization structures as JSON
+
+30:00 - 45:00
+- Discussion of different work groups and guild structures
+- Exploration of creative guild example
+- Talk about permission levels and admin relationships
+
+45:00 - 1:00:00
+- Deep dive into eligibility criteria for roles
+- Discussion of integration possibilities with GitHub
+- Explanation of automated admin capabilities
+
+1:00:00 - 1:15:00
+- Integration with Farcaster discussion
+- Introduction of AI agent possibilities
+- Talk about bottom-up contributions and reputation
+
+1:15:00 - end
+- Discussion of AI agents helping manage DAOs
+- Exploration of gaming mechanics in organization structure
+- Cost of Corruption (CoC) concept introduced
+- Closing thoughts on future of DAOs and AI integration
+
+Key moments worth highlighting:
+
+38:40 - Important discussion about treating hats as achievements and earning roles
+43:20 - Introduction of autonomous admin concepts
+1:04:30 - Significant conversation about AI agents' role in DAOs
+1:16:40 - Discussion of staking and accountability mechanisms
+
+---
+
+1. Core Purpose of Hats Protocol:
+- Helps solve disorganization and chaos in DAOs by providing clear roles and responsibilities
+- Acts as a delegation and coordination layer for DAOs
+- Uses tokenized "hats" (ERC-1155 tokens) to represent roles and permissions
+- Enables hierarchical organization structures while maintaining decentralization
+- Allows for automated admin functions through smart contracts
+
+2. Key Features:
+- Revocable roles (unlike soulbound tokens or badges)
+- Configurable eligibility criteria for roles
+- Admin relationships between different hat levels
+- Integration capabilities with tools like:
+ - Safe multi-sig wallets
+ - Gitcoin Passport
+ - Agreement signing modules
+ - Automated claim/mint functionality
+
+3. Proposed Application for AI16Z:
+- Creating structured work groups/guilds (Creative, Development, Operations, Research & AI, Community)
+- Enabling permission management for GitHub repos and other resources
+- Supporting bottom-up contributions while maintaining coordination
+- Integration potential with AI agents as autonomous admins
+- Progressive automation of DAO operations
+
+4. AI Agent Integration Possibilities:
+- AI agents could hold hats and have specific on-chain permissions
+- Agents could help with:
+ - Task delegation and management
+ - Reputation tracking
+ - Automated role assignment
+ - Community coordination
+ - Content creation and moderation
+
+5. Novel Concepts Discussed:
+- Gaming-inspired organizational structure (MMO-like guilds and achievements)
+- Progressive automation through AI agents
+- Multi-chain governance possibilities
+- Cost of Corruption (CoC) concept for role accountability
+- Integration with Farcaster for social coordination
diff --git a/docs/docs/packages/plugins.md b/docs/docs/packages/plugins.md
index 56f393c8ae3..5dd1d1ec94a 100644
--- a/docs/docs/packages/plugins.md
+++ b/docs/docs/packages/plugins.md
@@ -196,7 +196,7 @@ Integrates Solana blockchain functionality:
- `walletProvider` - Wallet management
- `trustScoreProvider` - Transaction trust metrics
-#### 5. Coinbase Commerce Plugin (`@eliza/plugin-coinbase-commerce`)
+#### 5. Coinbase Commerce Plugin (`@eliza/plugin-coinbase`)
Integrates Coinbase Commerce for payment and transaction management:
@@ -211,6 +211,219 @@ This plugin enables Eliza to interact with the Coinbase Commerce API to create a
---
+#### 6. Coinbase MassPayments Plugin (`@eliza/plugin-coinbase`)
+
+This plugin facilitates the processing of cryptocurrency mass payouts using the Coinbase SDK. It enables the creation and management of mass payouts to multiple wallet addresses, logging all transaction details to a CSV file for further analysis.
+
+**Actions:**
+
+- `SEND_MASS_PAYOUT`
+ Sends cryptocurrency mass payouts to multiple wallet addresses.
+ - **Inputs**:
+ - `receivingAddresses` (array of strings): Wallet addresses to receive funds.
+ - `transferAmount` (number): Amount to send to each address (in smallest currency unit, e.g., Wei for ETH).
+ - `assetId` (string): Cryptocurrency asset ID (e.g., `ETH`, `BTC`).
+ - `network` (string): Blockchain network (e.g., `base`, `sol`, `eth`, `arb`, `pol`).
+ - **Outputs**: Logs transaction results (success/failure) in a CSV file.
+ - **Example**:
+ ```json
+ {
+ "receivingAddresses": [
+ "0xA0ba2ACB5846A54834173fB0DD9444F756810f06",
+ "0xF14F2c49aa90BaFA223EE074C1C33b59891826bF"
+ ],
+ "transferAmount": 5000000000000000,
+ "assetId": "ETH",
+ "network": "eth"
+ }
+ ```
+
+**Providers:**
+
+- `massPayoutProvider`
+ Retrieves details of past transactions from the generated CSV file.
+ - **Outputs**: A list of transaction records including the following fields:
+ - `address`: Recipient wallet address.
+ - `amount`: Amount sent.
+ - `status`: Transaction status (`Success` or `Failed`).
+ - `errorCode`: Error code (if any).
+ - `transactionUrl`: URL for transaction details (if available).
+
+**Description:**
+
+The Coinbase MassPayments plugin streamlines cryptocurrency distribution, ensuring efficient and scalable payouts to multiple recipients on supported blockchain networks.
+
+Supported networks:
+
+- `base` (Base blockchain)
+- `sol` (Solana)
+- `eth` (Ethereum)
+- `arb` (Arbitrum)
+- `pol` (Polygon)
+
+**Usage Instructions:**
+
+1. **Configure the Plugin**
+ Add the plugin to your character’s configuration:
+
+ ```typescript
+ import { coinbaseMassPaymentsPlugin } from "@eliza/plugin-coinbase-masspayments";
+
+ const character = {
+ plugins: [coinbaseMassPaymentsPlugin],
+ };
+ ```
+
+2. **Ensure Secure Configuration**
+ Set the following environment variables or runtime settings to ensure the plugin functions securely:
+
+ - `COINBASE_API_KEY`: API key for Coinbase SDK.
+ - `COINBASE_PRIVATE_KEY`: Private key for secure transactions.
+
+---
+
+### Wallet Management
+
+The plugin automatically handles wallet creation or uses an existing wallet if the required details are provided during the first run.
+
+1. **Wallet Generation on First Run**
+ If no wallet information is provided (`COINBASE_GENERATED_WALLET_HEX_SEED` and `COINBASE_GENERATED_WALLET_ID`), the plugin will:
+
+ - **Generate a new wallet** using the Coinbase SDK.
+ - Automatically **export the wallet details** (`seed` and `walletId`) and securely store them in `runtime.character.settings.secrets` or other configured storage.
+ - Log the wallet’s default address for reference.
+ - If the character file does not exist, the wallet details are saved to a characters/charactername-seed.txt file in the characters directory with a note indicating that the user must manually add these details to settings.secrets or the .env file.
+
+2. **Using an Existing Wallet**
+ If wallet information is available during the first run:
+ - Provide `COINBASE_GENERATED_WALLET_HEX_SEED` and `COINBASE_GENERATED_WALLET_ID` via `runtime.character.settings.secrets` or environment variables.
+ - The plugin will **import the wallet** and use it for processing mass payouts.
+
+---
+
+### Required Configurations
+
+The following configurations must be provided for wallet management:
+
+- **Environment Variables or Secrets**:
+ - `COINBASE_GENERATED_WALLET_HEX_SEED`: Hexadecimal seed of the wallet.
+ - `COINBASE_GENERATED_WALLET_ID`: Unique wallet ID.
+ - These variables must be securely stored in `runtime.character.settings.secrets` or as environment variables.
+
+---
+
+### Wallet Creation Process
+
+1. **Automatic Wallet Creation**
+ When no wallet details are available:
+
+ - A new wallet is created using the Coinbase SDK.
+ - The wallet’s `seed` and `walletId` are retrieved using the following logic:
+ ```typescript
+ const walletData: WalletData = wallet.export();
+ runtime.character.settings.secrets.COINBASE_GENERATED_WALLET_HEX_SEED =
+ walletData.seed;
+ runtime.character.settings.secrets.COINBASE_GENERATED_WALLET_ID =
+ walletData.walletId;
+ ```
+ - The default wallet address is logged:
+ ```typescript
+ const walletAddress = wallet.getDefaultAddress();
+ elizaLogger.log("Created and stored new wallet:", walletAddress);
+ ```
+
+2. **Using Existing Wallet Details**
+ When the wallet details are provided:
+ - The wallet is imported using the following logic:
+ ```typescript
+ wallet = await Wallet.import({
+ seed: storedSeed,
+ walletId: storedWalletId,
+ });
+ elizaLogger.log("Imported existing wallet:", wallet.getDefaultAddress());
+ ```
+
+---
+
+### Example Configuration
+
+#### Automatic Wallet Generation:
+
+No existing wallet information is passed. The plugin creates and stores a new wallet:
+
+```typescript
+runtime.character.settings.secrets = {
+ // Empty settings for first run
+};
+```
+
+Output Log:
+
+```plaintext
+[INFO] Created and stored new wallet: 0x1234567890abcdef1234567890abcdef12345678
+```
+
+#### Using Existing Wallet Information:
+
+Existing wallet details are passed into the runtime:
+
+```typescript
+runtime.character.settings.secrets = {
+ COINBASE_GENERATED_WALLET_HEX_SEED:
+ "0xabcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890",
+ COINBASE_GENERATED_WALLET_ID: "wallet-id-123",
+};
+```
+
+Output Log:
+
+```plaintext
+[INFO] Imported existing wallet: 0x1234567890abcdef1234567890abcdef12345678
+```
+
+---
+
+3. **Example Call**
+ An example of using the `SEND_MASS_PAYOUT` action:
+
+ ```typescript
+ const response = await runtime.triggerAction("SEND_MASS_PAYOUT", {
+ receivingAddresses: [
+ "0xA0ba2ACB5846A54834173fB0DD9444F756810f06",
+ "0xF14F2c49aa90BaFA223EE074C1C33b59891826bF",
+ ],
+ transferAmount: 5000000000000000, // 0.005 ETH
+ assetId: "ETH",
+ network: "eth",
+ });
+ console.log("Mass payout response:", response);
+ ```
+
+4. **Transaction Logging**
+ All transactions (successful and failed) are logged to a `transactions.csv` file in the plugin’s working directory:
+ ```plaintext
+ Address,Amount,Status,Error Code,Transaction URL
+ 0xA0ba2ACB5846A54834173fB0DD9444F756810f06,5000000000000000,Success,,https://etherscan.io/tx/0x...
+ ```
+
+**Example Output:**
+
+When successful, a response similar to the following will be returned:
+
+```json
+{
+ "text": "Mass payouts completed successfully.\n- Successful Transactions: 2\n- Failed Transactions: 0\nCheck the CSV file for more details."
+}
+```
+
+**Best Practices:**
+
+- **Secure Secrets Storage**: Ensure `COINBASE_API_KEY` and `COINBASE_PRIVATE_KEY` are stored securely in `runtime.character.settings.secrets` or environment variables. Either add `COINBASE_GENERATED_WALLET_HEX_SEED`, and `COINBASE_GENERATED_WALLET_ID` from a previous run, or it will be dynamically created
+- **Validation**: Always validate input parameters, especially `receivingAddresses` and `network`, to ensure compliance with expected formats and supported networks.
+- **Error Handling**: Monitor logs for failed transactions or errors in the payout process and adjust retry logic as needed.
+
+---
+
### Writing Custom Plugins
Create a new plugin by implementing the Plugin interface:
diff --git a/docs/package.json b/docs/package.json
index 064174823e1..0abec97e670 100644
--- a/docs/package.json
+++ b/docs/package.json
@@ -15,26 +15,26 @@
"write-heading-ids": "docusaurus write-heading-ids"
},
"dependencies": {
- "@docusaurus/core": "^3.6.0",
- "@docusaurus/plugin-content-blog": "^3.6.0",
- "@docusaurus/plugin-content-docs": "^3.6.0",
- "@docusaurus/plugin-ideal-image": "^3.6.0",
- "@docusaurus/preset-classic": "^3.6.0",
- "@docusaurus/theme-mermaid": "^3.6.0",
+ "@docusaurus/core": "3.6.3",
+ "@docusaurus/plugin-content-blog": "3.6.3",
+ "@docusaurus/plugin-content-docs": "3.6.3",
+ "@docusaurus/plugin-ideal-image": "3.6.3",
+ "@docusaurus/preset-classic": "3.6.3",
+ "@docusaurus/theme-mermaid": "3.6.3",
"@mdx-js/react": "3.0.1",
- "clsx": "2.1.0",
- "docusaurus-lunr-search": "^3.5.0",
+ "clsx": "2.1.1",
+ "docusaurus-lunr-search": "3.5.0",
"prism-react-renderer": "2.3.1",
"react": "18.3.1",
"react-dom": "18.3.1",
"react-router-dom": "6.22.1"
},
"devDependencies": {
- "@docusaurus/module-type-aliases": "3.6.0",
- "@docusaurus/types": "3.6.0",
- "docusaurus-plugin-typedoc": "^1.0.5",
- "typedoc": "^0.26.11",
- "typedoc-plugin-markdown": "^4.2.9"
+ "@docusaurus/module-type-aliases": "3.6.3",
+ "@docusaurus/types": "3.6.3",
+ "docusaurus-plugin-typedoc": "1.0.5",
+ "typedoc": "0.26.11",
+ "typedoc-plugin-markdown": "4.2.10"
},
"browserslist": {
"production": [
diff --git a/docs/sidebars.js b/docs/sidebars.js
index 4075dd8e1ef..c29fdd0faa1 100644
--- a/docs/sidebars.js
+++ b/docs/sidebars.js
@@ -164,6 +164,21 @@ const sidebars = {
type: "category",
label: "November 2024",
items: [
+ {
+ type: "doc",
+ id: "community/streams/2024-11-24",
+ label: "Hats Protocol Presentation",
+ },
+ {
+ type: "doc",
+ id: "community/streams/2024-11-22",
+ label: "What Did You Get Done This Week 2",
+ },
+ {
+ type: "doc",
+ id: "community/streams/2024-11-21",
+ label: "The Delphi Podcast",
+ },
{
type: "doc",
id: "community/streams/2024-11-15",
diff --git a/package-lock.json b/package-lock.json
new file mode 100644
index 00000000000..74e3e15710b
--- /dev/null
+++ b/package-lock.json
@@ -0,0 +1,9105 @@
+{
+ "name": "eliza",
+ "lockfileVersion": 3,
+ "requires": true,
+ "packages": {
+ "": {
+ "name": "eliza",
+ "hasInstallScript": true,
+ "dependencies": {
+ "@0glabs/0g-ts-sdk": "^0.2.1",
+ "ollama-ai-provider": "^0.16.1",
+ "optional": "^0.1.4",
+ "sharp": "^0.33.5"
+ },
+ "devDependencies": {
+ "concurrently": "^9.1.0",
+ "husky": "^9.1.6",
+ "lerna": "^8.1.5",
+ "only-allow": "^1.2.1",
+ "prettier": "^3.3.3",
+ "typedoc": "^0.26.11",
+ "typescript": "5.6.3"
+ },
+ "engines": {
+ "node": ">=22"
+ }
+ },
+ "node_modules/@0glabs/0g-ts-sdk": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/@0glabs/0g-ts-sdk/-/0g-ts-sdk-0.2.1.tgz",
+ "integrity": "sha512-IJRD3D+5flNZIl32k/7D45yYvn9AjMeDdkhMr4Y/qo6nFE40HqYRaSlk6ZNI+MjaRzbDxMErrFzQcVkYH/DARg==",
+ "license": "ISC",
+ "dependencies": {
+ "@ethersproject/bytes": "^5.7.0",
+ "@ethersproject/keccak256": "^5.7.0",
+ "open-jsonrpc-provider": "^0.2.1"
+ },
+ "peerDependencies": {
+ "ethers": "6.13.1"
+ }
+ },
+ "node_modules/@adraffy/ens-normalize": {
+ "version": "1.10.1",
+ "resolved": "https://registry.npmjs.org/@adraffy/ens-normalize/-/ens-normalize-1.10.1.tgz",
+ "integrity": "sha512-96Z2IP3mYmF1Xg2cDm8f1gWGf/HUVedQ3FMifV4kG/PQ4yEP51xDtRAEfhVNt5f/uzpNkZHwWQuUcu6D6K+Ekw==",
+ "license": "MIT",
+ "peer": true
+ },
+ "node_modules/@ai-sdk/provider": {
+ "version": "0.0.26",
+ "resolved": "https://registry.npmjs.org/@ai-sdk/provider/-/provider-0.0.26.tgz",
+ "integrity": "sha512-dQkfBDs2lTYpKM8389oopPdQgIU007GQyCbuPPrV+K6MtSII3HBfE0stUIMXUb44L+LK1t6GXPP7wjSzjO6uKg==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "json-schema": "^0.4.0"
+ },
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@ai-sdk/provider-utils": {
+ "version": "1.0.22",
+ "resolved": "https://registry.npmjs.org/@ai-sdk/provider-utils/-/provider-utils-1.0.22.tgz",
+ "integrity": "sha512-YHK2rpj++wnLVc9vPGzGFP3Pjeld2MwhKinetA0zKXOoHAT/Jit5O8kZsxcSlJPu9wvcGT1UGZEjZrtO7PfFOQ==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@ai-sdk/provider": "0.0.26",
+ "eventsource-parser": "^1.1.2",
+ "nanoid": "^3.3.7",
+ "secure-json-parse": "^2.7.0"
+ },
+ "engines": {
+ "node": ">=18"
+ },
+ "peerDependencies": {
+ "zod": "^3.0.0"
+ },
+ "peerDependenciesMeta": {
+ "zod": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@babel/code-frame": {
+ "version": "7.26.2",
+ "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz",
+ "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/helper-validator-identifier": "^7.25.9",
+ "js-tokens": "^4.0.0",
+ "picocolors": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@babel/helper-validator-identifier": {
+ "version": "7.25.9",
+ "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz",
+ "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@emnapi/core": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.3.1.tgz",
+ "integrity": "sha512-pVGjBIt1Y6gg3EJN8jTcfpP/+uuRksIo055oE/OBkDNcjZqVbfkWCksG1Jp4yZnj3iKWyWX8fdG/j6UDYPbFog==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@emnapi/wasi-threads": "1.0.1",
+ "tslib": "^2.4.0"
+ }
+ },
+ "node_modules/@emnapi/runtime": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.3.1.tgz",
+ "integrity": "sha512-kEBmG8KyqtxJZv+ygbEim+KCGtIq1fC22Ms3S4ziXmYKm8uyoLX0MHONVKwp+9opg390VaKRNt4a7A9NwmpNhw==",
+ "devOptional": true,
+ "license": "MIT",
+ "dependencies": {
+ "tslib": "^2.4.0"
+ }
+ },
+ "node_modules/@emnapi/wasi-threads": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.0.1.tgz",
+ "integrity": "sha512-iIBu7mwkq4UQGeMEM8bLwNK962nXdhodeScX4slfQnRhEMMzvYivHhutCIk8uojvmASXXPC2WNEjwxFWk72Oqw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "tslib": "^2.4.0"
+ }
+ },
+ "node_modules/@ethersproject/bytes": {
+ "version": "5.7.0",
+ "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.7.0.tgz",
+ "integrity": "sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A==",
+ "funding": [
+ {
+ "type": "individual",
+ "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2"
+ },
+ {
+ "type": "individual",
+ "url": "https://www.buymeacoffee.com/ricmoo"
+ }
+ ],
+ "license": "MIT",
+ "dependencies": {
+ "@ethersproject/logger": "^5.7.0"
+ }
+ },
+ "node_modules/@ethersproject/keccak256": {
+ "version": "5.7.0",
+ "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.7.0.tgz",
+ "integrity": "sha512-2UcPboeL/iW+pSg6vZ6ydF8tCnv3Iu/8tUmLLzWWGzxWKFFqOBQFLo6uLUv6BDrLgCDfN28RJ/wtByx+jZ4KBg==",
+ "funding": [
+ {
+ "type": "individual",
+ "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2"
+ },
+ {
+ "type": "individual",
+ "url": "https://www.buymeacoffee.com/ricmoo"
+ }
+ ],
+ "license": "MIT",
+ "dependencies": {
+ "@ethersproject/bytes": "^5.7.0",
+ "js-sha3": "0.8.0"
+ }
+ },
+ "node_modules/@ethersproject/logger": {
+ "version": "5.7.0",
+ "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.7.0.tgz",
+ "integrity": "sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig==",
+ "funding": [
+ {
+ "type": "individual",
+ "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2"
+ },
+ {
+ "type": "individual",
+ "url": "https://www.buymeacoffee.com/ricmoo"
+ }
+ ],
+ "license": "MIT"
+ },
+ "node_modules/@hutson/parse-repository-url": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/@hutson/parse-repository-url/-/parse-repository-url-3.0.2.tgz",
+ "integrity": "sha512-H9XAx3hc0BQHY6l+IFSWHDySypcXsvsuLhgYLUGywmJ5pswRVQJUHpOsobnLYp2ZUaUlKiKDrgWWhosOwAEM8Q==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/@img/sharp-darwin-arm64": {
+ "version": "0.33.5",
+ "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.33.5.tgz",
+ "integrity": "sha512-UT4p+iz/2H4twwAoLCqfA9UH5pI6DggwKEGuaPy7nCVQ8ZsiY5PIcrRvD1DzuY3qYL07NtIQcWnBSY/heikIFQ==",
+ "cpu": [
+ "arm64"
+ ],
+ "license": "Apache-2.0",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ },
+ "optionalDependencies": {
+ "@img/sharp-libvips-darwin-arm64": "1.0.4"
+ }
+ },
+ "node_modules/@img/sharp-darwin-x64": {
+ "version": "0.33.5",
+ "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.33.5.tgz",
+ "integrity": "sha512-fyHac4jIc1ANYGRDxtiqelIbdWkIuQaI84Mv45KvGRRxSAa7o7d1ZKAOBaYbnepLC1WqxfpimdeWfvqqSGwR2Q==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "Apache-2.0",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ },
+ "optionalDependencies": {
+ "@img/sharp-libvips-darwin-x64": "1.0.4"
+ }
+ },
+ "node_modules/@img/sharp-libvips-darwin-arm64": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.0.4.tgz",
+ "integrity": "sha512-XblONe153h0O2zuFfTAbQYAX2JhYmDHeWikp1LM9Hul9gVPjFY427k6dFEcOL72O01QxQsWi761svJ/ev9xEDg==",
+ "cpu": [
+ "arm64"
+ ],
+ "license": "LGPL-3.0-or-later",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ }
+ },
+ "node_modules/@img/sharp-libvips-darwin-x64": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.0.4.tgz",
+ "integrity": "sha512-xnGR8YuZYfJGmWPvmlunFaWJsb9T/AO2ykoP3Fz/0X5XV2aoYBPkX6xqCQvUTKKiLddarLaxpzNe+b1hjeWHAQ==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "LGPL-3.0-or-later",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ }
+ },
+ "node_modules/@img/sharp-libvips-linux-arm": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.0.5.tgz",
+ "integrity": "sha512-gvcC4ACAOPRNATg/ov8/MnbxFDJqf/pDePbBnuBDcjsI8PssmjoKMAz4LtLaVi+OnSb5FK/yIOamqDwGmXW32g==",
+ "cpu": [
+ "arm"
+ ],
+ "license": "LGPL-3.0-or-later",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ }
+ },
+ "node_modules/@img/sharp-libvips-linux-arm64": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.0.4.tgz",
+ "integrity": "sha512-9B+taZ8DlyyqzZQnoeIvDVR/2F4EbMepXMc/NdVbkzsJbzkUjhXv/70GQJ7tdLA4YJgNP25zukcxpX2/SueNrA==",
+ "cpu": [
+ "arm64"
+ ],
+ "license": "LGPL-3.0-or-later",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ }
+ },
+ "node_modules/@img/sharp-libvips-linux-s390x": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.0.4.tgz",
+ "integrity": "sha512-u7Wz6ntiSSgGSGcjZ55im6uvTrOxSIS8/dgoVMoiGE9I6JAfU50yH5BoDlYA1tcuGS7g/QNtetJnxA6QEsCVTA==",
+ "cpu": [
+ "s390x"
+ ],
+ "license": "LGPL-3.0-or-later",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ }
+ },
+ "node_modules/@img/sharp-libvips-linux-x64": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.0.4.tgz",
+ "integrity": "sha512-MmWmQ3iPFZr0Iev+BAgVMb3ZyC4KeFc3jFxnNbEPas60e1cIfevbtuyf9nDGIzOaW9PdnDciJm+wFFaTlj5xYw==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "LGPL-3.0-or-later",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ }
+ },
+ "node_modules/@img/sharp-libvips-linuxmusl-arm64": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.0.4.tgz",
+ "integrity": "sha512-9Ti+BbTYDcsbp4wfYib8Ctm1ilkugkA/uscUn6UXK1ldpC1JjiXbLfFZtRlBhjPZ5o1NCLiDbg8fhUPKStHoTA==",
+ "cpu": [
+ "arm64"
+ ],
+ "license": "LGPL-3.0-or-later",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ }
+ },
+ "node_modules/@img/sharp-libvips-linuxmusl-x64": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.0.4.tgz",
+ "integrity": "sha512-viYN1KX9m+/hGkJtvYYp+CCLgnJXwiQB39damAO7WMdKWlIhmYTfHjwSbQeUK/20vY154mwezd9HflVFM1wVSw==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "LGPL-3.0-or-later",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ }
+ },
+ "node_modules/@img/sharp-linux-arm": {
+ "version": "0.33.5",
+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.33.5.tgz",
+ "integrity": "sha512-JTS1eldqZbJxjvKaAkxhZmBqPRGmxgu+qFKSInv8moZ2AmT5Yib3EQ1c6gp493HvrvV8QgdOXdyaIBrhvFhBMQ==",
+ "cpu": [
+ "arm"
+ ],
+ "license": "Apache-2.0",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ },
+ "optionalDependencies": {
+ "@img/sharp-libvips-linux-arm": "1.0.5"
+ }
+ },
+ "node_modules/@img/sharp-linux-arm64": {
+ "version": "0.33.5",
+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.33.5.tgz",
+ "integrity": "sha512-JMVv+AMRyGOHtO1RFBiJy/MBsgz0x4AWrT6QoEVVTyh1E39TrCUpTRI7mx9VksGX4awWASxqCYLCV4wBZHAYxA==",
+ "cpu": [
+ "arm64"
+ ],
+ "license": "Apache-2.0",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ },
+ "optionalDependencies": {
+ "@img/sharp-libvips-linux-arm64": "1.0.4"
+ }
+ },
+ "node_modules/@img/sharp-linux-s390x": {
+ "version": "0.33.5",
+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.33.5.tgz",
+ "integrity": "sha512-y/5PCd+mP4CA/sPDKl2961b+C9d+vPAveS33s6Z3zfASk2j5upL6fXVPZi7ztePZ5CuH+1kW8JtvxgbuXHRa4Q==",
+ "cpu": [
+ "s390x"
+ ],
+ "license": "Apache-2.0",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ },
+ "optionalDependencies": {
+ "@img/sharp-libvips-linux-s390x": "1.0.4"
+ }
+ },
+ "node_modules/@img/sharp-linux-x64": {
+ "version": "0.33.5",
+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.33.5.tgz",
+ "integrity": "sha512-opC+Ok5pRNAzuvq1AG0ar+1owsu842/Ab+4qvU879ippJBHvyY5n2mxF1izXqkPYlGuP/M556uh53jRLJmzTWA==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "Apache-2.0",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ },
+ "optionalDependencies": {
+ "@img/sharp-libvips-linux-x64": "1.0.4"
+ }
+ },
+ "node_modules/@img/sharp-linuxmusl-arm64": {
+ "version": "0.33.5",
+ "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.33.5.tgz",
+ "integrity": "sha512-XrHMZwGQGvJg2V/oRSUfSAfjfPxO+4DkiRh6p2AFjLQztWUuY/o8Mq0eMQVIY7HJ1CDQUJlxGGZRw1a5bqmd1g==",
+ "cpu": [
+ "arm64"
+ ],
+ "license": "Apache-2.0",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ },
+ "optionalDependencies": {
+ "@img/sharp-libvips-linuxmusl-arm64": "1.0.4"
+ }
+ },
+ "node_modules/@img/sharp-linuxmusl-x64": {
+ "version": "0.33.5",
+ "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.33.5.tgz",
+ "integrity": "sha512-WT+d/cgqKkkKySYmqoZ8y3pxx7lx9vVejxW/W4DOFMYVSkErR+w7mf2u8m/y4+xHe7yY9DAXQMWQhpnMuFfScw==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "Apache-2.0",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ },
+ "optionalDependencies": {
+ "@img/sharp-libvips-linuxmusl-x64": "1.0.4"
+ }
+ },
+ "node_modules/@img/sharp-wasm32": {
+ "version": "0.33.5",
+ "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.33.5.tgz",
+ "integrity": "sha512-ykUW4LVGaMcU9lu9thv85CbRMAwfeadCJHRsg2GmeRa/cJxsVY9Rbd57JcMxBkKHag5U/x7TSBpScF4U8ElVzg==",
+ "cpu": [
+ "wasm32"
+ ],
+ "license": "Apache-2.0 AND LGPL-3.0-or-later AND MIT",
+ "optional": true,
+ "dependencies": {
+ "@emnapi/runtime": "^1.2.0"
+ },
+ "engines": {
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ }
+ },
+ "node_modules/@img/sharp-win32-ia32": {
+ "version": "0.33.5",
+ "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.33.5.tgz",
+ "integrity": "sha512-T36PblLaTwuVJ/zw/LaH0PdZkRz5rd3SmMHX8GSmR7vtNSP5Z6bQkExdSK7xGWyxLw4sUknBuugTelgw2faBbQ==",
+ "cpu": [
+ "ia32"
+ ],
+ "license": "Apache-2.0 AND LGPL-3.0-or-later",
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ }
+ },
+ "node_modules/@img/sharp-win32-x64": {
+ "version": "0.33.5",
+ "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.33.5.tgz",
+ "integrity": "sha512-MpY/o8/8kj+EcnxwvrP4aTJSWw/aZ7JIGR4aBeZkZw5B7/Jn+tY9/VNwtcoGmdT7GfggGIU4kygOMSbYnOrAbg==",
+ "cpu": [
+ "x64"
+ ],
+ "license": "Apache-2.0 AND LGPL-3.0-or-later",
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ }
+ },
+ "node_modules/@isaacs/cliui": {
+ "version": "8.0.2",
+ "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz",
+ "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "string-width": "^5.1.2",
+ "string-width-cjs": "npm:string-width@^4.2.0",
+ "strip-ansi": "^7.0.1",
+ "strip-ansi-cjs": "npm:strip-ansi@^6.0.1",
+ "wrap-ansi": "^8.1.0",
+ "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0"
+ },
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@isaacs/cliui/node_modules/ansi-regex": {
+ "version": "6.1.0",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz",
+ "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-regex?sponsor=1"
+ }
+ },
+ "node_modules/@isaacs/cliui/node_modules/ansi-styles": {
+ "version": "6.2.1",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz",
+ "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/@isaacs/cliui/node_modules/emoji-regex": {
+ "version": "9.2.2",
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz",
+ "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@isaacs/cliui/node_modules/string-width": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz",
+ "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "eastasianwidth": "^0.2.0",
+ "emoji-regex": "^9.2.2",
+ "strip-ansi": "^7.0.1"
+ },
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/@isaacs/cliui/node_modules/strip-ansi": {
+ "version": "7.1.0",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz",
+ "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ansi-regex": "^6.0.1"
+ },
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/strip-ansi?sponsor=1"
+ }
+ },
+ "node_modules/@isaacs/cliui/node_modules/wrap-ansi": {
+ "version": "8.1.0",
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz",
+ "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ansi-styles": "^6.1.0",
+ "string-width": "^5.0.1",
+ "strip-ansi": "^7.0.1"
+ },
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
+ }
+ },
+ "node_modules/@isaacs/string-locale-compare": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@isaacs/string-locale-compare/-/string-locale-compare-1.1.0.tgz",
+ "integrity": "sha512-SQ7Kzhh9+D+ZW9MA0zkYv3VXhIDNx+LzM6EJ+/65I3QY+enU6Itte7E5XX7EWrqLW2FN4n06GWzBnPoC3th2aQ==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/@jest/schemas": {
+ "version": "29.6.3",
+ "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz",
+ "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@sinclair/typebox": "^0.27.8"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@lerna/create": {
+ "version": "8.1.9",
+ "resolved": "https://registry.npmjs.org/@lerna/create/-/create-8.1.9.tgz",
+ "integrity": "sha512-DPnl5lPX4v49eVxEbJnAizrpMdMTBz1qykZrAbBul9rfgk531v8oAt+Pm6O/rpAleRombNM7FJb5rYGzBJatOQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@npmcli/arborist": "7.5.4",
+ "@npmcli/package-json": "5.2.0",
+ "@npmcli/run-script": "8.1.0",
+ "@nx/devkit": ">=17.1.2 < 21",
+ "@octokit/plugin-enterprise-rest": "6.0.1",
+ "@octokit/rest": "19.0.11",
+ "aproba": "2.0.0",
+ "byte-size": "8.1.1",
+ "chalk": "4.1.0",
+ "clone-deep": "4.0.1",
+ "cmd-shim": "6.0.3",
+ "color-support": "1.1.3",
+ "columnify": "1.6.0",
+ "console-control-strings": "^1.1.0",
+ "conventional-changelog-core": "5.0.1",
+ "conventional-recommended-bump": "7.0.1",
+ "cosmiconfig": "9.0.0",
+ "dedent": "1.5.3",
+ "execa": "5.0.0",
+ "fs-extra": "^11.2.0",
+ "get-stream": "6.0.0",
+ "git-url-parse": "14.0.0",
+ "glob-parent": "6.0.2",
+ "globby": "11.1.0",
+ "graceful-fs": "4.2.11",
+ "has-unicode": "2.0.1",
+ "ini": "^1.3.8",
+ "init-package-json": "6.0.3",
+ "inquirer": "^8.2.4",
+ "is-ci": "3.0.1",
+ "is-stream": "2.0.0",
+ "js-yaml": "4.1.0",
+ "libnpmpublish": "9.0.9",
+ "load-json-file": "6.2.0",
+ "lodash": "^4.17.21",
+ "make-dir": "4.0.0",
+ "minimatch": "3.0.5",
+ "multimatch": "5.0.0",
+ "node-fetch": "2.6.7",
+ "npm-package-arg": "11.0.2",
+ "npm-packlist": "8.0.2",
+ "npm-registry-fetch": "^17.1.0",
+ "nx": ">=17.1.2 < 21",
+ "p-map": "4.0.0",
+ "p-map-series": "2.1.0",
+ "p-queue": "6.6.2",
+ "p-reduce": "^2.1.0",
+ "pacote": "^18.0.6",
+ "pify": "5.0.0",
+ "read-cmd-shim": "4.0.0",
+ "resolve-from": "5.0.0",
+ "rimraf": "^4.4.1",
+ "semver": "^7.3.4",
+ "set-blocking": "^2.0.0",
+ "signal-exit": "3.0.7",
+ "slash": "^3.0.0",
+ "ssri": "^10.0.6",
+ "string-width": "^4.2.3",
+ "strip-ansi": "^6.0.1",
+ "strong-log-transformer": "2.1.0",
+ "tar": "6.2.1",
+ "temp-dir": "1.0.0",
+ "upath": "2.0.1",
+ "uuid": "^10.0.0",
+ "validate-npm-package-license": "^3.0.4",
+ "validate-npm-package-name": "5.0.1",
+ "wide-align": "1.1.5",
+ "write-file-atomic": "5.0.1",
+ "write-pkg": "4.0.0",
+ "yargs": "17.7.2",
+ "yargs-parser": "21.1.1"
+ },
+ "engines": {
+ "node": ">=18.0.0"
+ }
+ },
+ "node_modules/@lerna/create/node_modules/chalk": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz",
+ "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/@lerna/create/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/@napi-rs/wasm-runtime": {
+ "version": "0.2.4",
+ "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-0.2.4.tgz",
+ "integrity": "sha512-9zESzOO5aDByvhIAsOy9TbpZ0Ur2AJbUI7UT73kcUTS2mxAMHOBaa1st/jAymNoCtvrit99kkzT1FZuXVcgfIQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@emnapi/core": "^1.1.0",
+ "@emnapi/runtime": "^1.1.0",
+ "@tybys/wasm-util": "^0.9.0"
+ }
+ },
+ "node_modules/@noble/curves": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.2.0.tgz",
+ "integrity": "sha512-oYclrNgRaM9SsBUBVbb8M6DTV7ZHRTKugureoYEncY5c65HOmRzvSiTE3y5CYaPYJA/GVkrhXEoF0M3Ya9PMnw==",
+ "license": "MIT",
+ "peer": true,
+ "dependencies": {
+ "@noble/hashes": "1.3.2"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/@noble/hashes": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.3.2.tgz",
+ "integrity": "sha512-MVC8EAQp7MvEcm30KWENFjgR+Mkmf+D189XJTkFIlwohU5hcBbn1ZkKq7KVTi2Hme3PMGF390DaL52beVrIihQ==",
+ "license": "MIT",
+ "peer": true,
+ "engines": {
+ "node": ">= 16"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ }
+ },
+ "node_modules/@nodelib/fs.scandir": {
+ "version": "2.1.5",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
+ "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@nodelib/fs.stat": "2.0.5",
+ "run-parallel": "^1.1.9"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/@nodelib/fs.stat": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
+ "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/@nodelib/fs.walk": {
+ "version": "1.2.8",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
+ "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@nodelib/fs.scandir": "2.1.5",
+ "fastq": "^1.6.0"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/@npmcli/agent": {
+ "version": "2.2.2",
+ "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.2.tgz",
+ "integrity": "sha512-OrcNPXdpSl9UX7qPVRWbmWMCSXrcDa2M9DvrbOTj7ao1S4PlqVFYv9/yLKMkrJKZ/V5A/kDBC690or307i26Og==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "agent-base": "^7.1.0",
+ "http-proxy-agent": "^7.0.0",
+ "https-proxy-agent": "^7.0.1",
+ "lru-cache": "^10.0.1",
+ "socks-proxy-agent": "^8.0.3"
+ },
+ "engines": {
+ "node": "^16.14.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@npmcli/arborist": {
+ "version": "7.5.4",
+ "resolved": "https://registry.npmjs.org/@npmcli/arborist/-/arborist-7.5.4.tgz",
+ "integrity": "sha512-nWtIc6QwwoUORCRNzKx4ypHqCk3drI+5aeYdMTQQiRCcn4lOOgfQh7WyZobGYTxXPSq1VwV53lkpN/BRlRk08g==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "@isaacs/string-locale-compare": "^1.1.0",
+ "@npmcli/fs": "^3.1.1",
+ "@npmcli/installed-package-contents": "^2.1.0",
+ "@npmcli/map-workspaces": "^3.0.2",
+ "@npmcli/metavuln-calculator": "^7.1.1",
+ "@npmcli/name-from-folder": "^2.0.0",
+ "@npmcli/node-gyp": "^3.0.0",
+ "@npmcli/package-json": "^5.1.0",
+ "@npmcli/query": "^3.1.0",
+ "@npmcli/redact": "^2.0.0",
+ "@npmcli/run-script": "^8.1.0",
+ "bin-links": "^4.0.4",
+ "cacache": "^18.0.3",
+ "common-ancestor-path": "^1.0.1",
+ "hosted-git-info": "^7.0.2",
+ "json-parse-even-better-errors": "^3.0.2",
+ "json-stringify-nice": "^1.1.4",
+ "lru-cache": "^10.2.2",
+ "minimatch": "^9.0.4",
+ "nopt": "^7.2.1",
+ "npm-install-checks": "^6.2.0",
+ "npm-package-arg": "^11.0.2",
+ "npm-pick-manifest": "^9.0.1",
+ "npm-registry-fetch": "^17.0.1",
+ "pacote": "^18.0.6",
+ "parse-conflict-json": "^3.0.0",
+ "proc-log": "^4.2.0",
+ "proggy": "^2.0.0",
+ "promise-all-reject-late": "^1.0.0",
+ "promise-call-limit": "^3.0.1",
+ "read-package-json-fast": "^3.0.2",
+ "semver": "^7.3.7",
+ "ssri": "^10.0.6",
+ "treeverse": "^3.0.0",
+ "walk-up-path": "^3.0.1"
+ },
+ "bin": {
+ "arborist": "bin/index.js"
+ },
+ "engines": {
+ "node": "^16.14.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@npmcli/arborist/node_modules/brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "balanced-match": "^1.0.0"
+ }
+ },
+ "node_modules/@npmcli/arborist/node_modules/minimatch": {
+ "version": "9.0.5",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
+ "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "brace-expansion": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=16 || 14 >=14.17"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/@npmcli/fs": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.1.tgz",
+ "integrity": "sha512-q9CRWjpHCMIh5sVyefoD1cA7PkvILqCZsnSOEUUivORLjxCO/Irmue2DprETiNgEqktDBZaM1Bi+jrarx1XdCg==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "semver": "^7.3.5"
+ },
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@npmcli/git": {
+ "version": "5.0.8",
+ "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-5.0.8.tgz",
+ "integrity": "sha512-liASfw5cqhjNW9UFd+ruwwdEf/lbOAQjLL2XY2dFW/bkJheXDYZgOyul/4gVvEV4BWkTXjYGmDqMw9uegdbJNQ==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "@npmcli/promise-spawn": "^7.0.0",
+ "ini": "^4.1.3",
+ "lru-cache": "^10.0.1",
+ "npm-pick-manifest": "^9.0.0",
+ "proc-log": "^4.0.0",
+ "promise-inflight": "^1.0.1",
+ "promise-retry": "^2.0.1",
+ "semver": "^7.3.5",
+ "which": "^4.0.0"
+ },
+ "engines": {
+ "node": "^16.14.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@npmcli/git/node_modules/ini": {
+ "version": "4.1.3",
+ "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.3.tgz",
+ "integrity": "sha512-X7rqawQBvfdjS10YU1y1YVreA3SsLrW9dX2CewP2EbBJM4ypVNLDkO5y04gejPwKIY9lR+7r9gn3rFPt/kmWFg==",
+ "dev": true,
+ "license": "ISC",
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@npmcli/installed-package-contents": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-2.1.0.tgz",
+ "integrity": "sha512-c8UuGLeZpm69BryRykLuKRyKFZYJsZSCT4aVY5ds4omyZqJ172ApzgfKJ5eV/r3HgLdUYgFVe54KSFVjKoe27w==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "npm-bundled": "^3.0.0",
+ "npm-normalize-package-bin": "^3.0.0"
+ },
+ "bin": {
+ "installed-package-contents": "bin/index.js"
+ },
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@npmcli/map-workspaces": {
+ "version": "3.0.6",
+ "resolved": "https://registry.npmjs.org/@npmcli/map-workspaces/-/map-workspaces-3.0.6.tgz",
+ "integrity": "sha512-tkYs0OYnzQm6iIRdfy+LcLBjcKuQCeE5YLb8KnrIlutJfheNaPvPpgoFEyEFgbjzl5PLZ3IA/BWAwRU0eHuQDA==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "@npmcli/name-from-folder": "^2.0.0",
+ "glob": "^10.2.2",
+ "minimatch": "^9.0.0",
+ "read-package-json-fast": "^3.0.0"
+ },
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@npmcli/map-workspaces/node_modules/brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "balanced-match": "^1.0.0"
+ }
+ },
+ "node_modules/@npmcli/map-workspaces/node_modules/minimatch": {
+ "version": "9.0.5",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
+ "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "brace-expansion": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=16 || 14 >=14.17"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/@npmcli/metavuln-calculator": {
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/@npmcli/metavuln-calculator/-/metavuln-calculator-7.1.1.tgz",
+ "integrity": "sha512-Nkxf96V0lAx3HCpVda7Vw4P23RILgdi/5K1fmj2tZkWIYLpXAN8k2UVVOsW16TsS5F8Ws2I7Cm+PU1/rsVF47g==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "cacache": "^18.0.0",
+ "json-parse-even-better-errors": "^3.0.0",
+ "pacote": "^18.0.0",
+ "proc-log": "^4.1.0",
+ "semver": "^7.3.5"
+ },
+ "engines": {
+ "node": "^16.14.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@npmcli/name-from-folder": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@npmcli/name-from-folder/-/name-from-folder-2.0.0.tgz",
+ "integrity": "sha512-pwK+BfEBZJbKdNYpHHRTNBwBoqrN/iIMO0AiGvYsp3Hoaq0WbgGSWQR6SCldZovoDpY3yje5lkFUe6gsDgJ2vg==",
+ "dev": true,
+ "license": "ISC",
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@npmcli/node-gyp": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-3.0.0.tgz",
+ "integrity": "sha512-gp8pRXC2oOxu0DUE1/M3bYtb1b3/DbJ5aM113+XJBgfXdussRAsX0YOrOhdd8WvnAR6auDBvJomGAkLKA5ydxA==",
+ "dev": true,
+ "license": "ISC",
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@npmcli/package-json": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-5.2.0.tgz",
+ "integrity": "sha512-qe/kiqqkW0AGtvBjL8TJKZk/eBBSpnJkUWvHdQ9jM2lKHXRYYJuyNpJPlJw3c8QjC2ow6NZYiLExhUaeJelbxQ==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "@npmcli/git": "^5.0.0",
+ "glob": "^10.2.2",
+ "hosted-git-info": "^7.0.0",
+ "json-parse-even-better-errors": "^3.0.0",
+ "normalize-package-data": "^6.0.0",
+ "proc-log": "^4.0.0",
+ "semver": "^7.5.3"
+ },
+ "engines": {
+ "node": "^16.14.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@npmcli/promise-spawn": {
+ "version": "7.0.2",
+ "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-7.0.2.tgz",
+ "integrity": "sha512-xhfYPXoV5Dy4UkY0D+v2KkwvnDfiA/8Mt3sWCGI/hM03NsYIH8ZaG6QzS9x7pje5vHZBZJ2v6VRFVTWACnqcmQ==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "which": "^4.0.0"
+ },
+ "engines": {
+ "node": "^16.14.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@npmcli/query": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/@npmcli/query/-/query-3.1.0.tgz",
+ "integrity": "sha512-C/iR0tk7KSKGldibYIB9x8GtO/0Bd0I2mhOaDb8ucQL/bQVTmGoeREaFj64Z5+iCBRf3dQfed0CjJL7I8iTkiQ==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "postcss-selector-parser": "^6.0.10"
+ },
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@npmcli/redact": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/@npmcli/redact/-/redact-2.0.1.tgz",
+ "integrity": "sha512-YgsR5jCQZhVmTJvjduTOIHph0L73pK8xwMVaDY0PatySqVM9AZj93jpoXYSJqfHFxFkN9dmqTw6OiqExsS3LPw==",
+ "dev": true,
+ "license": "ISC",
+ "engines": {
+ "node": "^16.14.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@npmcli/run-script": {
+ "version": "8.1.0",
+ "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-8.1.0.tgz",
+ "integrity": "sha512-y7efHHwghQfk28G2z3tlZ67pLG0XdfYbcVG26r7YIXALRsrVQcTq4/tdenSmdOrEsNahIYA/eh8aEVROWGFUDg==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "@npmcli/node-gyp": "^3.0.0",
+ "@npmcli/package-json": "^5.0.0",
+ "@npmcli/promise-spawn": "^7.0.0",
+ "node-gyp": "^10.0.0",
+ "proc-log": "^4.0.0",
+ "which": "^4.0.0"
+ },
+ "engines": {
+ "node": "^16.14.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@nx/devkit": {
+ "version": "20.1.2",
+ "resolved": "https://registry.npmjs.org/@nx/devkit/-/devkit-20.1.2.tgz",
+ "integrity": "sha512-MTEWiEST7DhzZ2QmrixLnHfYVDZk7QN9omLL8m+5Etcn/3ZKa1aAo9Amd2MkUM+0MPoTKnxoGdw0fQUpAy21Mg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ejs": "^3.1.7",
+ "enquirer": "~2.3.6",
+ "ignore": "^5.0.4",
+ "minimatch": "9.0.3",
+ "semver": "^7.5.3",
+ "tmp": "~0.2.1",
+ "tslib": "^2.3.0",
+ "yargs-parser": "21.1.1"
+ },
+ "peerDependencies": {
+ "nx": ">= 19 <= 21"
+ }
+ },
+ "node_modules/@nx/devkit/node_modules/brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "balanced-match": "^1.0.0"
+ }
+ },
+ "node_modules/@nx/devkit/node_modules/minimatch": {
+ "version": "9.0.3",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz",
+ "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "brace-expansion": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=16 || 14 >=14.17"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/@nx/nx-darwin-arm64": {
+ "version": "20.1.2",
+ "resolved": "https://registry.npmjs.org/@nx/nx-darwin-arm64/-/nx-darwin-arm64-20.1.2.tgz",
+ "integrity": "sha512-PJ91TQhd28kitDBubKUOXMYvrtSDrG+rr8MsIe9cHo1CvU9smcGVBwuHBxniq0DXsyOX/5GL6ngq7hjN2nQ3XQ==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@nx/nx-darwin-x64": {
+ "version": "20.1.2",
+ "resolved": "https://registry.npmjs.org/@nx/nx-darwin-x64/-/nx-darwin-x64-20.1.2.tgz",
+ "integrity": "sha512-1fopau7nxIhTF26vDTIzMxl15AtW4FvUSdy+r1mNRKrKyjjpqnlu00SQBW7JzGV0agDD1B/61yYei5Q2aMOt7Q==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@nx/nx-freebsd-x64": {
+ "version": "20.1.2",
+ "resolved": "https://registry.npmjs.org/@nx/nx-freebsd-x64/-/nx-freebsd-x64-20.1.2.tgz",
+ "integrity": "sha512-55YgIp3v4zz7xMzJO93dtglbOTER2XdS6jrCt8GbKaWGFl5drRrBoNGONtiGNU7C3hLx1VsorbynCkJT18PjKQ==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "freebsd"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@nx/nx-linux-arm-gnueabihf": {
+ "version": "20.1.2",
+ "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm-gnueabihf/-/nx-linux-arm-gnueabihf-20.1.2.tgz",
+ "integrity": "sha512-sMhNA8uAV43UYVEXEa8TZ8Fjpom4CGq1umTptEGOF4TTtdNn2AUBreg+0bVODM8MMSzRWGI1VbkZzHESnAPwqw==",
+ "cpu": [
+ "arm"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@nx/nx-linux-arm64-gnu": {
+ "version": "20.1.2",
+ "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm64-gnu/-/nx-linux-arm64-gnu-20.1.2.tgz",
+ "integrity": "sha512-bsevarNHglaYLmIvPNQOdHrBnBgaW3EOUM0flwaXdWuZbL1bWx8GoVwHp9yJpZOAOfIF/Nhq5iTpaZB2nYFrAA==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@nx/nx-linux-arm64-musl": {
+ "version": "20.1.2",
+ "resolved": "https://registry.npmjs.org/@nx/nx-linux-arm64-musl/-/nx-linux-arm64-musl-20.1.2.tgz",
+ "integrity": "sha512-GFZTptkhZPL/iZ3tYDmspIcPEaXyy/L/o59gyp33GoFAAyDhiXIF7J1Lz81Xn8VKrX6TvEY8/9qSh86pb7qzDQ==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@nx/nx-linux-x64-gnu": {
+ "version": "20.1.2",
+ "resolved": "https://registry.npmjs.org/@nx/nx-linux-x64-gnu/-/nx-linux-x64-gnu-20.1.2.tgz",
+ "integrity": "sha512-yqEW/iglKT4d9lgfnwSNhmDzPxCkRhtdmZqOYpGDM0eZFwYwJF+WRGjW8xIqMj8PA1yrGItzXZOmyFjJqHAF2w==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@nx/nx-linux-x64-musl": {
+ "version": "20.1.2",
+ "resolved": "https://registry.npmjs.org/@nx/nx-linux-x64-musl/-/nx-linux-x64-musl-20.1.2.tgz",
+ "integrity": "sha512-SP6PpWT4cQVrC4WJQdpfADrYJQzkbhgmcGleWbpr7II1HJgOsAcvoDwQGpPQX+3Wo+VBiNecvUAOzacMQkXPGw==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@nx/nx-win32-arm64-msvc": {
+ "version": "20.1.2",
+ "resolved": "https://registry.npmjs.org/@nx/nx-win32-arm64-msvc/-/nx-win32-arm64-msvc-20.1.2.tgz",
+ "integrity": "sha512-JZQx9gr39LY3D7uleiXlpxUsavuOrOQNBocwKHkAMnykaT/e1VCxTnm/hk+2b4foWwfURTqoRiFEba70iiCdYg==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@nx/nx-win32-x64-msvc": {
+ "version": "20.1.2",
+ "resolved": "https://registry.npmjs.org/@nx/nx-win32-x64-msvc/-/nx-win32-x64-msvc-20.1.2.tgz",
+ "integrity": "sha512-6GmT8iswDiCvJaCtW9DpWeAQmLS/kfAuRLYBisfzlONuLPaDdjhgVIxZBqqUSFfclwcVz+NhIOGvdr0aGFZCtQ==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "win32"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@octokit/auth-token": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-3.0.4.tgz",
+ "integrity": "sha512-TWFX7cZF2LXoCvdmJWY7XVPi74aSY0+FfBZNSXEXFkMpjcqsQwDSYVv5FhRFaI0V1ECnwbz4j59T/G+rXNWaIQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/@octokit/core": {
+ "version": "4.2.4",
+ "resolved": "https://registry.npmjs.org/@octokit/core/-/core-4.2.4.tgz",
+ "integrity": "sha512-rYKilwgzQ7/imScn3M9/pFfUf4I1AZEH3KhyJmtPdE2zfaXAn2mFfUy4FbKewzc2We5y/LlKLj36fWJLKC2SIQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@octokit/auth-token": "^3.0.0",
+ "@octokit/graphql": "^5.0.0",
+ "@octokit/request": "^6.0.0",
+ "@octokit/request-error": "^3.0.0",
+ "@octokit/types": "^9.0.0",
+ "before-after-hook": "^2.2.0",
+ "universal-user-agent": "^6.0.0"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/@octokit/endpoint": {
+ "version": "7.0.6",
+ "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-7.0.6.tgz",
+ "integrity": "sha512-5L4fseVRUsDFGR00tMWD/Trdeeihn999rTMGRMC1G/Ldi1uWlWJzI98H4Iak5DB/RVvQuyMYKqSK/R6mbSOQyg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@octokit/types": "^9.0.0",
+ "is-plain-object": "^5.0.0",
+ "universal-user-agent": "^6.0.0"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/@octokit/graphql": {
+ "version": "5.0.6",
+ "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-5.0.6.tgz",
+ "integrity": "sha512-Fxyxdy/JH0MnIB5h+UQ3yCoh1FG4kWXfFKkpWqjZHw/p+Kc8Y44Hu/kCgNBT6nU1shNumEchmW/sUO1JuQnPcw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@octokit/request": "^6.0.0",
+ "@octokit/types": "^9.0.0",
+ "universal-user-agent": "^6.0.0"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/@octokit/openapi-types": {
+ "version": "18.1.1",
+ "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-18.1.1.tgz",
+ "integrity": "sha512-VRaeH8nCDtF5aXWnjPuEMIYf1itK/s3JYyJcWFJT8X9pSNnBtriDf7wlEWsGuhPLl4QIH4xM8fqTXDwJ3Mu6sw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@octokit/plugin-enterprise-rest": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/@octokit/plugin-enterprise-rest/-/plugin-enterprise-rest-6.0.1.tgz",
+ "integrity": "sha512-93uGjlhUD+iNg1iWhUENAtJata6w5nE+V4urXOAlIXdco6xNZtUSfYY8dzp3Udy74aqO/B5UZL80x/YMa5PKRw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@octokit/plugin-paginate-rest": {
+ "version": "6.1.2",
+ "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-6.1.2.tgz",
+ "integrity": "sha512-qhrmtQeHU/IivxucOV1bbI/xZyC/iOBhclokv7Sut5vnejAIAEXVcGQeRpQlU39E0WwK9lNvJHphHri/DB6lbQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@octokit/tsconfig": "^1.0.2",
+ "@octokit/types": "^9.2.3"
+ },
+ "engines": {
+ "node": ">= 14"
+ },
+ "peerDependencies": {
+ "@octokit/core": ">=4"
+ }
+ },
+ "node_modules/@octokit/plugin-request-log": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz",
+ "integrity": "sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA==",
+ "dev": true,
+ "license": "MIT",
+ "peerDependencies": {
+ "@octokit/core": ">=3"
+ }
+ },
+ "node_modules/@octokit/plugin-rest-endpoint-methods": {
+ "version": "7.2.3",
+ "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-7.2.3.tgz",
+ "integrity": "sha512-I5Gml6kTAkzVlN7KCtjOM+Ruwe/rQppp0QU372K1GP7kNOYEKe8Xn5BW4sE62JAHdwpq95OQK/qGNyKQMUzVgA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@octokit/types": "^10.0.0"
+ },
+ "engines": {
+ "node": ">= 14"
+ },
+ "peerDependencies": {
+ "@octokit/core": ">=3"
+ }
+ },
+ "node_modules/@octokit/plugin-rest-endpoint-methods/node_modules/@octokit/types": {
+ "version": "10.0.0",
+ "resolved": "https://registry.npmjs.org/@octokit/types/-/types-10.0.0.tgz",
+ "integrity": "sha512-Vm8IddVmhCgU1fxC1eyinpwqzXPEYu0NrYzD3YZjlGjyftdLBTeqNblRC0jmJmgxbJIsQlyogVeGnrNaaMVzIg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@octokit/openapi-types": "^18.0.0"
+ }
+ },
+ "node_modules/@octokit/request": {
+ "version": "6.2.8",
+ "resolved": "https://registry.npmjs.org/@octokit/request/-/request-6.2.8.tgz",
+ "integrity": "sha512-ow4+pkVQ+6XVVsekSYBzJC0VTVvh/FCTUUgTsboGq+DTeWdyIFV8WSCdo0RIxk6wSkBTHqIK1mYuY7nOBXOchw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@octokit/endpoint": "^7.0.0",
+ "@octokit/request-error": "^3.0.0",
+ "@octokit/types": "^9.0.0",
+ "is-plain-object": "^5.0.0",
+ "node-fetch": "^2.6.7",
+ "universal-user-agent": "^6.0.0"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/@octokit/request-error": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-3.0.3.tgz",
+ "integrity": "sha512-crqw3V5Iy2uOU5Np+8M/YexTlT8zxCfI+qu+LxUB7SZpje4Qmx3mub5DfEKSO8Ylyk0aogi6TYdf6kxzh2BguQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@octokit/types": "^9.0.0",
+ "deprecation": "^2.0.0",
+ "once": "^1.4.0"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/@octokit/rest": {
+ "version": "19.0.11",
+ "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-19.0.11.tgz",
+ "integrity": "sha512-m2a9VhaP5/tUw8FwfnW2ICXlXpLPIqxtg3XcAiGMLj/Xhw3RSBfZ8le/466ktO1Gcjr8oXudGnHhxV1TXJgFxw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@octokit/core": "^4.2.1",
+ "@octokit/plugin-paginate-rest": "^6.1.2",
+ "@octokit/plugin-request-log": "^1.0.4",
+ "@octokit/plugin-rest-endpoint-methods": "^7.1.2"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/@octokit/tsconfig": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@octokit/tsconfig/-/tsconfig-1.0.2.tgz",
+ "integrity": "sha512-I0vDR0rdtP8p2lGMzvsJzbhdOWy405HcGovrspJ8RRibHnyRgggUSNO5AIox5LmqiwmatHKYsvj6VGFHkqS7lA==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@octokit/types": {
+ "version": "9.3.2",
+ "resolved": "https://registry.npmjs.org/@octokit/types/-/types-9.3.2.tgz",
+ "integrity": "sha512-D4iHGTdAnEEVsB8fl95m1hiz7D5YiRdQ9b/OEb3BYRVwbLsGHcRVPz+u+BgRLNk0Q0/4iZCBqDN96j2XNxfXrA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@octokit/openapi-types": "^18.0.0"
+ }
+ },
+ "node_modules/@pkgjs/parseargs": {
+ "version": "0.11.0",
+ "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz",
+ "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==",
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "engines": {
+ "node": ">=14"
+ }
+ },
+ "node_modules/@shikijs/core": {
+ "version": "1.23.1",
+ "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-1.23.1.tgz",
+ "integrity": "sha512-NuOVgwcHgVC6jBVH5V7iblziw6iQbWWHrj5IlZI3Fqu2yx9awH7OIQkXIcsHsUmY19ckwSgUMgrqExEyP5A0TA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@shikijs/engine-javascript": "1.23.1",
+ "@shikijs/engine-oniguruma": "1.23.1",
+ "@shikijs/types": "1.23.1",
+ "@shikijs/vscode-textmate": "^9.3.0",
+ "@types/hast": "^3.0.4",
+ "hast-util-to-html": "^9.0.3"
+ }
+ },
+ "node_modules/@shikijs/engine-javascript": {
+ "version": "1.23.1",
+ "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-1.23.1.tgz",
+ "integrity": "sha512-i/LdEwT5k3FVu07SiApRFwRcSJs5QM9+tod5vYCPig1Ywi8GR30zcujbxGQFJHwYD7A5BUqagi8o5KS+LEVgBg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@shikijs/types": "1.23.1",
+ "@shikijs/vscode-textmate": "^9.3.0",
+ "oniguruma-to-es": "0.4.1"
+ }
+ },
+ "node_modules/@shikijs/engine-oniguruma": {
+ "version": "1.23.1",
+ "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-1.23.1.tgz",
+ "integrity": "sha512-KQ+lgeJJ5m2ISbUZudLR1qHeH3MnSs2mjFg7bnencgs5jDVPeJ2NVDJ3N5ZHbcTsOIh0qIueyAJnwg7lg7kwXQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@shikijs/types": "1.23.1",
+ "@shikijs/vscode-textmate": "^9.3.0"
+ }
+ },
+ "node_modules/@shikijs/types": {
+ "version": "1.23.1",
+ "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-1.23.1.tgz",
+ "integrity": "sha512-98A5hGyEhzzAgQh2dAeHKrWW4HfCMeoFER2z16p5eJ+vmPeF6lZ/elEne6/UCU551F/WqkopqRsr1l2Yu6+A0g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@shikijs/vscode-textmate": "^9.3.0",
+ "@types/hast": "^3.0.4"
+ }
+ },
+ "node_modules/@shikijs/vscode-textmate": {
+ "version": "9.3.0",
+ "resolved": "https://registry.npmjs.org/@shikijs/vscode-textmate/-/vscode-textmate-9.3.0.tgz",
+ "integrity": "sha512-jn7/7ky30idSkd/O5yDBfAnVt+JJpepofP/POZ1iMOxK59cOfqIgg/Dj0eFsjOTMw+4ycJN0uhZH/Eb0bs/EUA==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@sigstore/bundle": {
+ "version": "2.3.2",
+ "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-2.3.2.tgz",
+ "integrity": "sha512-wueKWDk70QixNLB363yHc2D2ItTgYiMTdPwK8D9dKQMR3ZQ0c35IxP5xnwQ8cNLoCgCRcHf14kE+CLIvNX1zmA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@sigstore/protobuf-specs": "^0.3.2"
+ },
+ "engines": {
+ "node": "^16.14.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@sigstore/core": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@sigstore/core/-/core-1.1.0.tgz",
+ "integrity": "sha512-JzBqdVIyqm2FRQCulY6nbQzMpJJpSiJ8XXWMhtOX9eKgaXXpfNOF53lzQEjIydlStnd/eFtuC1dW4VYdD93oRg==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "engines": {
+ "node": "^16.14.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@sigstore/protobuf-specs": {
+ "version": "0.3.2",
+ "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.3.2.tgz",
+ "integrity": "sha512-c6B0ehIWxMI8wiS/bj6rHMPqeFvngFV7cDU/MY+B16P9Z3Mp9k8L93eYZ7BYzSickzuqAQqAq0V956b3Ju6mLw==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "engines": {
+ "node": "^16.14.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@sigstore/sign": {
+ "version": "2.3.2",
+ "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-2.3.2.tgz",
+ "integrity": "sha512-5Vz5dPVuunIIvC5vBb0APwo7qKA4G9yM48kPWJT+OEERs40md5GoUR1yedwpekWZ4m0Hhw44m6zU+ObsON+iDA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@sigstore/bundle": "^2.3.2",
+ "@sigstore/core": "^1.0.0",
+ "@sigstore/protobuf-specs": "^0.3.2",
+ "make-fetch-happen": "^13.0.1",
+ "proc-log": "^4.2.0",
+ "promise-retry": "^2.0.1"
+ },
+ "engines": {
+ "node": "^16.14.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@sigstore/tuf": {
+ "version": "2.3.4",
+ "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.3.4.tgz",
+ "integrity": "sha512-44vtsveTPUpqhm9NCrbU8CWLe3Vck2HO1PNLw7RIajbB7xhtn5RBPm1VNSCMwqGYHhDsBJG8gDF0q4lgydsJvw==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@sigstore/protobuf-specs": "^0.3.2",
+ "tuf-js": "^2.2.1"
+ },
+ "engines": {
+ "node": "^16.14.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@sigstore/verify": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/@sigstore/verify/-/verify-1.2.1.tgz",
+ "integrity": "sha512-8iKx79/F73DKbGfRf7+t4dqrc0bRr0thdPrxAtCKWRm/F0tG71i6O1rvlnScncJLLBZHn3h8M3c1BSUAb9yu8g==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@sigstore/bundle": "^2.3.2",
+ "@sigstore/core": "^1.1.0",
+ "@sigstore/protobuf-specs": "^0.3.2"
+ },
+ "engines": {
+ "node": "^16.14.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@sinclair/typebox": {
+ "version": "0.27.8",
+ "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz",
+ "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@tufjs/canonical-json": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-2.0.0.tgz",
+ "integrity": "sha512-yVtV8zsdo8qFHe+/3kw81dSLyF7D576A5cCFCi4X7B39tWT7SekaEFUnvnWJHz+9qO7qJTah1JbrDjWKqFtdWA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": "^16.14.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@tufjs/models": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-2.0.1.tgz",
+ "integrity": "sha512-92F7/SFyufn4DXsha9+QfKnN03JGqtMFMXgSHbZOo8JG59WkTni7UzAouNQDf7AuP9OAMxVOPQcqG3sB7w+kkg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@tufjs/canonical-json": "2.0.0",
+ "minimatch": "^9.0.4"
+ },
+ "engines": {
+ "node": "^16.14.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@tufjs/models/node_modules/brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "balanced-match": "^1.0.0"
+ }
+ },
+ "node_modules/@tufjs/models/node_modules/minimatch": {
+ "version": "9.0.5",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
+ "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "brace-expansion": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=16 || 14 >=14.17"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/@tybys/wasm-util": {
+ "version": "0.9.0",
+ "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.9.0.tgz",
+ "integrity": "sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "tslib": "^2.4.0"
+ }
+ },
+ "node_modules/@types/hast": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz",
+ "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@types/unist": "*"
+ }
+ },
+ "node_modules/@types/mdast": {
+ "version": "4.0.4",
+ "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.4.tgz",
+ "integrity": "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@types/unist": "*"
+ }
+ },
+ "node_modules/@types/minimatch": {
+ "version": "3.0.5",
+ "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz",
+ "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@types/minimist": {
+ "version": "1.2.5",
+ "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.5.tgz",
+ "integrity": "sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@types/node": {
+ "version": "18.15.13",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.15.13.tgz",
+ "integrity": "sha512-N+0kuo9KgrUQ1Sn/ifDXsvg0TTleP7rIy4zOBGECxAljqvqfqpTfzx0Q1NUedOixRMBfe2Whhb056a42cWs26Q==",
+ "license": "MIT",
+ "peer": true
+ },
+ "node_modules/@types/normalize-package-data": {
+ "version": "2.4.4",
+ "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz",
+ "integrity": "sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@types/unist": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz",
+ "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@ungap/structured-clone": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz",
+ "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/@yarnpkg/lockfile": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz",
+ "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==",
+ "dev": true,
+ "license": "BSD-2-Clause"
+ },
+ "node_modules/@yarnpkg/parsers": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/@yarnpkg/parsers/-/parsers-3.0.2.tgz",
+ "integrity": "sha512-/HcYgtUSiJiot/XWGLOlGxPYUG65+/31V8oqk17vZLW1xlCoR4PampyePljOxY2n8/3jz9+tIFzICsyGujJZoA==",
+ "dev": true,
+ "license": "BSD-2-Clause",
+ "dependencies": {
+ "js-yaml": "^3.10.0",
+ "tslib": "^2.4.0"
+ },
+ "engines": {
+ "node": ">=18.12.0"
+ }
+ },
+ "node_modules/@yarnpkg/parsers/node_modules/argparse": {
+ "version": "1.0.10",
+ "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
+ "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "sprintf-js": "~1.0.2"
+ }
+ },
+ "node_modules/@yarnpkg/parsers/node_modules/js-yaml": {
+ "version": "3.14.1",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz",
+ "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "argparse": "^1.0.7",
+ "esprima": "^4.0.0"
+ },
+ "bin": {
+ "js-yaml": "bin/js-yaml.js"
+ }
+ },
+ "node_modules/@yarnpkg/parsers/node_modules/sprintf-js": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
+ "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==",
+ "dev": true,
+ "license": "BSD-3-Clause"
+ },
+ "node_modules/@zkochan/js-yaml": {
+ "version": "0.0.7",
+ "resolved": "https://registry.npmjs.org/@zkochan/js-yaml/-/js-yaml-0.0.7.tgz",
+ "integrity": "sha512-nrUSn7hzt7J6JWgWGz78ZYI8wj+gdIJdk0Ynjpp8l+trkn58Uqsf6RYrYkEK+3X18EX+TNdtJI0WxAtc+L84SQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "argparse": "^2.0.1"
+ },
+ "bin": {
+ "js-yaml": "bin/js-yaml.js"
+ }
+ },
+ "node_modules/abbrev": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz",
+ "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==",
+ "dev": true,
+ "license": "ISC",
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/add-stream": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/add-stream/-/add-stream-1.0.0.tgz",
+ "integrity": "sha512-qQLMr+8o0WC4FZGQTcJiKBVC59JylcPSrTtk6usvmIDFUOCKegapy1VHQwRbFMOFyb/inzUVqHs+eMYKDM1YeQ==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/aes-js": {
+ "version": "4.0.0-beta.5",
+ "resolved": "https://registry.npmjs.org/aes-js/-/aes-js-4.0.0-beta.5.tgz",
+ "integrity": "sha512-G965FqalsNyrPqgEGON7nIx1e/OVENSgiEIzyC63haUMuvNnwIgIjMs52hlTCKhkBny7A2ORNlfY9Zu+jmGk1Q==",
+ "license": "MIT",
+ "peer": true
+ },
+ "node_modules/agent-base": {
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz",
+ "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "debug": "^4.3.4"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/aggregate-error": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz",
+ "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "clean-stack": "^2.0.0",
+ "indent-string": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/ansi-colors": {
+ "version": "4.1.3",
+ "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz",
+ "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/ansi-escapes": {
+ "version": "4.3.2",
+ "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz",
+ "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "type-fest": "^0.21.3"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/ansi-regex": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
+ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/aproba": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz",
+ "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/argparse": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
+ "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
+ "dev": true,
+ "license": "Python-2.0"
+ },
+ "node_modules/array-differ": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-3.0.0.tgz",
+ "integrity": "sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/array-ify": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz",
+ "integrity": "sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/array-union": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz",
+ "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/arrify": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz",
+ "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/async": {
+ "version": "3.2.6",
+ "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz",
+ "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/asynckit": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
+ "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==",
+ "license": "MIT"
+ },
+ "node_modules/axios": {
+ "version": "1.7.7",
+ "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.7.tgz",
+ "integrity": "sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "follow-redirects": "^1.15.6",
+ "form-data": "^4.0.0",
+ "proxy-from-env": "^1.1.0"
+ }
+ },
+ "node_modules/balanced-match": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
+ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/base64-js": {
+ "version": "1.5.1",
+ "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
+ "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "license": "MIT"
+ },
+ "node_modules/before-after-hook": {
+ "version": "2.2.3",
+ "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz",
+ "integrity": "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==",
+ "dev": true,
+ "license": "Apache-2.0"
+ },
+ "node_modules/bin-links": {
+ "version": "4.0.4",
+ "resolved": "https://registry.npmjs.org/bin-links/-/bin-links-4.0.4.tgz",
+ "integrity": "sha512-cMtq4W5ZsEwcutJrVId+a/tjt8GSbS+h0oNkdl6+6rBuEv8Ot33Bevj5KPm40t309zuhVic8NjpuL42QCiJWWA==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "cmd-shim": "^6.0.0",
+ "npm-normalize-package-bin": "^3.0.0",
+ "read-cmd-shim": "^4.0.0",
+ "write-file-atomic": "^5.0.0"
+ },
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/bl": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz",
+ "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "buffer": "^5.5.0",
+ "inherits": "^2.0.4",
+ "readable-stream": "^3.4.0"
+ }
+ },
+ "node_modules/brace-expansion": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "node_modules/braces": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
+ "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "fill-range": "^7.1.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/buffer": {
+ "version": "5.7.1",
+ "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz",
+ "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "license": "MIT",
+ "dependencies": {
+ "base64-js": "^1.3.1",
+ "ieee754": "^1.1.13"
+ }
+ },
+ "node_modules/buffer-from": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz",
+ "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/bufferutil": {
+ "version": "4.0.8",
+ "resolved": "https://registry.npmjs.org/bufferutil/-/bufferutil-4.0.8.tgz",
+ "integrity": "sha512-4T53u4PdgsXqKaIctwF8ifXlRTTmEPJ8iEPWFdGZvcf7sbwYo6FKFEX9eNNAnzFZ7EzJAQ3CJeOtCRA4rDp7Pw==",
+ "hasInstallScript": true,
+ "license": "MIT",
+ "dependencies": {
+ "node-gyp-build": "^4.3.0"
+ },
+ "engines": {
+ "node": ">=6.14.2"
+ }
+ },
+ "node_modules/byte-size": {
+ "version": "8.1.1",
+ "resolved": "https://registry.npmjs.org/byte-size/-/byte-size-8.1.1.tgz",
+ "integrity": "sha512-tUkzZWK0M/qdoLEqikxBWe4kumyuwjl3HO6zHTr4yEI23EojPtLYXdG1+AQY7MN0cGyNDvEaJ8wiYQm6P2bPxg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=12.17"
+ }
+ },
+ "node_modules/cacache": {
+ "version": "18.0.4",
+ "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.4.tgz",
+ "integrity": "sha512-B+L5iIa9mgcjLbliir2th36yEwPftrzteHYujzsx3dFP/31GCHcIeS8f5MGd80odLOjaOvSpU3EEAmRQptkxLQ==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "@npmcli/fs": "^3.1.0",
+ "fs-minipass": "^3.0.0",
+ "glob": "^10.2.2",
+ "lru-cache": "^10.0.1",
+ "minipass": "^7.0.3",
+ "minipass-collect": "^2.0.1",
+ "minipass-flush": "^1.0.5",
+ "minipass-pipeline": "^1.2.4",
+ "p-map": "^4.0.0",
+ "ssri": "^10.0.0",
+ "tar": "^6.1.11",
+ "unique-filename": "^3.0.0"
+ },
+ "engines": {
+ "node": "^16.14.0 || >=18.0.0"
+ }
+ },
+ "node_modules/callsites": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
+ "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/camelcase": {
+ "version": "5.3.1",
+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
+ "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/camelcase-keys": {
+ "version": "6.2.2",
+ "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz",
+ "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "camelcase": "^5.3.1",
+ "map-obj": "^4.0.0",
+ "quick-lru": "^4.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/ccount": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz",
+ "integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==",
+ "dev": true,
+ "license": "MIT",
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/wooorm"
+ }
+ },
+ "node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/chalk/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/character-entities-html4": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-2.1.0.tgz",
+ "integrity": "sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==",
+ "dev": true,
+ "license": "MIT",
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/wooorm"
+ }
+ },
+ "node_modules/character-entities-legacy": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz",
+ "integrity": "sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==",
+ "dev": true,
+ "license": "MIT",
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/wooorm"
+ }
+ },
+ "node_modules/chardet": {
+ "version": "0.7.0",
+ "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz",
+ "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/chownr": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz",
+ "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==",
+ "dev": true,
+ "license": "ISC",
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/ci-info": {
+ "version": "3.9.0",
+ "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz",
+ "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/sibiraj-s"
+ }
+ ],
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/clean-stack": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz",
+ "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/cli-cursor": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz",
+ "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "restore-cursor": "^3.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/cli-spinners": {
+ "version": "2.6.1",
+ "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.1.tgz",
+ "integrity": "sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/cli-width": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz",
+ "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==",
+ "dev": true,
+ "license": "ISC",
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/cliui": {
+ "version": "8.0.1",
+ "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz",
+ "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "string-width": "^4.2.0",
+ "strip-ansi": "^6.0.1",
+ "wrap-ansi": "^7.0.0"
+ },
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/cliui/node_modules/wrap-ansi": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
+ "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ansi-styles": "^4.0.0",
+ "string-width": "^4.1.0",
+ "strip-ansi": "^6.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
+ }
+ },
+ "node_modules/clone": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz",
+ "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.8"
+ }
+ },
+ "node_modules/clone-deep": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz",
+ "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "is-plain-object": "^2.0.4",
+ "kind-of": "^6.0.2",
+ "shallow-clone": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/clone-deep/node_modules/is-plain-object": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
+ "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "isobject": "^3.0.1"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/cmd-shim": {
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/cmd-shim/-/cmd-shim-6.0.3.tgz",
+ "integrity": "sha512-FMabTRlc5t5zjdenF6mS0MBeFZm0XqHqeOkcskKFb/LYCcRQ5fVgLOHVc4Lq9CqABd9zhjwPjMBCJvMCziSVtA==",
+ "dev": true,
+ "license": "ISC",
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/color": {
+ "version": "4.2.3",
+ "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz",
+ "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==",
+ "license": "MIT",
+ "dependencies": {
+ "color-convert": "^2.0.1",
+ "color-string": "^1.9.0"
+ },
+ "engines": {
+ "node": ">=12.5.0"
+ }
+ },
+ "node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "license": "MIT",
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "license": "MIT"
+ },
+ "node_modules/color-string": {
+ "version": "1.9.1",
+ "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz",
+ "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==",
+ "license": "MIT",
+ "dependencies": {
+ "color-name": "^1.0.0",
+ "simple-swizzle": "^0.2.2"
+ }
+ },
+ "node_modules/color-support": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz",
+ "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==",
+ "dev": true,
+ "license": "ISC",
+ "bin": {
+ "color-support": "bin.js"
+ }
+ },
+ "node_modules/columnify": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/columnify/-/columnify-1.6.0.tgz",
+ "integrity": "sha512-lomjuFZKfM6MSAnV9aCZC9sc0qGbmZdfygNv+nCpqVkSKdCxCklLtd16O0EILGkImHw9ZpHkAnHaB+8Zxq5W6Q==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "strip-ansi": "^6.0.1",
+ "wcwidth": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=8.0.0"
+ }
+ },
+ "node_modules/combined-stream": {
+ "version": "1.0.8",
+ "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
+ "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
+ "license": "MIT",
+ "dependencies": {
+ "delayed-stream": "~1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/comma-separated-tokens": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz",
+ "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==",
+ "dev": true,
+ "license": "MIT",
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/wooorm"
+ }
+ },
+ "node_modules/common-ancestor-path": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/common-ancestor-path/-/common-ancestor-path-1.0.1.tgz",
+ "integrity": "sha512-L3sHRo1pXXEqX8VU28kfgUY+YGsk09hPqZiZmLacNib6XNTCM8ubYeT7ryXQw8asB1sKgcU5lkB7ONug08aB8w==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/compare-func": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/compare-func/-/compare-func-2.0.0.tgz",
+ "integrity": "sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "array-ify": "^1.0.0",
+ "dot-prop": "^5.1.0"
+ }
+ },
+ "node_modules/concat-map": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
+ "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/concat-stream": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz",
+ "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==",
+ "dev": true,
+ "engines": [
+ "node >= 6.0"
+ ],
+ "license": "MIT",
+ "dependencies": {
+ "buffer-from": "^1.0.0",
+ "inherits": "^2.0.3",
+ "readable-stream": "^3.0.2",
+ "typedarray": "^0.0.6"
+ }
+ },
+ "node_modules/concurrently": {
+ "version": "9.1.0",
+ "resolved": "https://registry.npmjs.org/concurrently/-/concurrently-9.1.0.tgz",
+ "integrity": "sha512-VxkzwMAn4LP7WyMnJNbHN5mKV9L2IbyDjpzemKr99sXNR3GqRNMMHdm7prV1ws9wg7ETj6WUkNOigZVsptwbgg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "chalk": "^4.1.2",
+ "lodash": "^4.17.21",
+ "rxjs": "^7.8.1",
+ "shell-quote": "^1.8.1",
+ "supports-color": "^8.1.1",
+ "tree-kill": "^1.2.2",
+ "yargs": "^17.7.2"
+ },
+ "bin": {
+ "conc": "dist/bin/concurrently.js",
+ "concurrently": "dist/bin/concurrently.js"
+ },
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/open-cli-tools/concurrently?sponsor=1"
+ }
+ },
+ "node_modules/console-control-strings": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
+ "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/conventional-changelog-angular": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-7.0.0.tgz",
+ "integrity": "sha512-ROjNchA9LgfNMTTFSIWPzebCwOGFdgkEq45EnvvrmSLvCtAw0HSmrCs7/ty+wAeYUZyNay0YMUNYFTRL72PkBQ==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "compare-func": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=16"
+ }
+ },
+ "node_modules/conventional-changelog-core": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/conventional-changelog-core/-/conventional-changelog-core-5.0.1.tgz",
+ "integrity": "sha512-Rvi5pH+LvgsqGwZPZ3Cq/tz4ty7mjijhr3qR4m9IBXNbxGGYgTVVO+duXzz9aArmHxFtwZ+LRkrNIMDQzgoY4A==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "add-stream": "^1.0.0",
+ "conventional-changelog-writer": "^6.0.0",
+ "conventional-commits-parser": "^4.0.0",
+ "dateformat": "^3.0.3",
+ "get-pkg-repo": "^4.2.1",
+ "git-raw-commits": "^3.0.0",
+ "git-remote-origin-url": "^2.0.0",
+ "git-semver-tags": "^5.0.0",
+ "normalize-package-data": "^3.0.3",
+ "read-pkg": "^3.0.0",
+ "read-pkg-up": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=14"
+ }
+ },
+ "node_modules/conventional-changelog-core/node_modules/hosted-git-info": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz",
+ "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "lru-cache": "^6.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/conventional-changelog-core/node_modules/lru-cache": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
+ "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "yallist": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/conventional-changelog-core/node_modules/normalize-package-data": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz",
+ "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==",
+ "dev": true,
+ "license": "BSD-2-Clause",
+ "dependencies": {
+ "hosted-git-info": "^4.0.1",
+ "is-core-module": "^2.5.0",
+ "semver": "^7.3.4",
+ "validate-npm-package-license": "^3.0.1"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/conventional-changelog-preset-loader": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-3.0.0.tgz",
+ "integrity": "sha512-qy9XbdSLmVnwnvzEisjxdDiLA4OmV3o8db+Zdg4WiFw14fP3B6XNz98X0swPPpkTd/pc1K7+adKgEDM1JCUMiA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=14"
+ }
+ },
+ "node_modules/conventional-changelog-writer": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/conventional-changelog-writer/-/conventional-changelog-writer-6.0.1.tgz",
+ "integrity": "sha512-359t9aHorPw+U+nHzUXHS5ZnPBOizRxfQsWT5ZDHBfvfxQOAik+yfuhKXG66CN5LEWPpMNnIMHUTCKeYNprvHQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "conventional-commits-filter": "^3.0.0",
+ "dateformat": "^3.0.3",
+ "handlebars": "^4.7.7",
+ "json-stringify-safe": "^5.0.1",
+ "meow": "^8.1.2",
+ "semver": "^7.0.0",
+ "split": "^1.0.1"
+ },
+ "bin": {
+ "conventional-changelog-writer": "cli.js"
+ },
+ "engines": {
+ "node": ">=14"
+ }
+ },
+ "node_modules/conventional-commits-filter": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/conventional-commits-filter/-/conventional-commits-filter-3.0.0.tgz",
+ "integrity": "sha512-1ymej8b5LouPx9Ox0Dw/qAO2dVdfpRFq28e5Y0jJEU8ZrLdy0vOSkkIInwmxErFGhg6SALro60ZrwYFVTUDo4Q==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "lodash.ismatch": "^4.4.0",
+ "modify-values": "^1.0.1"
+ },
+ "engines": {
+ "node": ">=14"
+ }
+ },
+ "node_modules/conventional-commits-parser": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-4.0.0.tgz",
+ "integrity": "sha512-WRv5j1FsVM5FISJkoYMR6tPk07fkKT0UodruX4je86V4owk451yjXAKzKAPOs9l7y59E2viHUS9eQ+dfUA9NSg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "is-text-path": "^1.0.1",
+ "JSONStream": "^1.3.5",
+ "meow": "^8.1.2",
+ "split2": "^3.2.2"
+ },
+ "bin": {
+ "conventional-commits-parser": "cli.js"
+ },
+ "engines": {
+ "node": ">=14"
+ }
+ },
+ "node_modules/conventional-recommended-bump": {
+ "version": "7.0.1",
+ "resolved": "https://registry.npmjs.org/conventional-recommended-bump/-/conventional-recommended-bump-7.0.1.tgz",
+ "integrity": "sha512-Ft79FF4SlOFvX4PkwFDRnaNiIVX7YbmqGU0RwccUaiGvgp3S0a8ipR2/Qxk31vclDNM+GSdJOVs2KrsUCjblVA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "concat-stream": "^2.0.0",
+ "conventional-changelog-preset-loader": "^3.0.0",
+ "conventional-commits-filter": "^3.0.0",
+ "conventional-commits-parser": "^4.0.0",
+ "git-raw-commits": "^3.0.0",
+ "git-semver-tags": "^5.0.0",
+ "meow": "^8.1.2"
+ },
+ "bin": {
+ "conventional-recommended-bump": "cli.js"
+ },
+ "engines": {
+ "node": ">=14"
+ }
+ },
+ "node_modules/core-util-is": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz",
+ "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/cosmiconfig": {
+ "version": "9.0.0",
+ "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-9.0.0.tgz",
+ "integrity": "sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "env-paths": "^2.2.1",
+ "import-fresh": "^3.3.0",
+ "js-yaml": "^4.1.0",
+ "parse-json": "^5.2.0"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/d-fischer"
+ },
+ "peerDependencies": {
+ "typescript": ">=4.9.5"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/cross-spawn": {
+ "version": "7.0.6",
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz",
+ "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "path-key": "^3.1.0",
+ "shebang-command": "^2.0.0",
+ "which": "^2.0.1"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/cross-spawn/node_modules/isexe": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
+ "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/cross-spawn/node_modules/which": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
+ "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "isexe": "^2.0.0"
+ },
+ "bin": {
+ "node-which": "bin/node-which"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/cssesc": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz",
+ "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==",
+ "dev": true,
+ "license": "MIT",
+ "bin": {
+ "cssesc": "bin/cssesc"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/d": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/d/-/d-1.0.2.tgz",
+ "integrity": "sha512-MOqHvMWF9/9MX6nza0KgvFH4HpMU0EF5uUDXqX/BtxtU8NfB0QzRtJ8Oe/6SuS4kbhyzVJwjd97EA4PKrzJ8bw==",
+ "license": "ISC",
+ "dependencies": {
+ "es5-ext": "^0.10.64",
+ "type": "^2.7.2"
+ },
+ "engines": {
+ "node": ">=0.12"
+ }
+ },
+ "node_modules/dargs": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/dargs/-/dargs-7.0.0.tgz",
+ "integrity": "sha512-2iy1EkLdlBzQGvbweYRFxmFath8+K7+AKB0TlhHWkNuH+TmovaMH/Wp7V7R4u7f4SnX3OgLsU9t1NI9ioDnUpg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/dateformat": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz",
+ "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/debug": {
+ "version": "4.3.7",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz",
+ "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ms": "^2.1.3"
+ },
+ "engines": {
+ "node": ">=6.0"
+ },
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/decamelize": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
+ "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/decamelize-keys": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz",
+ "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "decamelize": "^1.1.0",
+ "map-obj": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/decamelize-keys/node_modules/map-obj": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz",
+ "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/dedent": {
+ "version": "1.5.3",
+ "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.5.3.tgz",
+ "integrity": "sha512-NHQtfOOW68WD8lgypbLA5oT+Bt0xXJhiYvoR6SmmNXZfpzOGXwdKWmcwG8N7PwVVWV3eF/68nmD9BaJSsTBhyQ==",
+ "dev": true,
+ "license": "MIT",
+ "peerDependencies": {
+ "babel-plugin-macros": "^3.1.0"
+ },
+ "peerDependenciesMeta": {
+ "babel-plugin-macros": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/defaults": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz",
+ "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "clone": "^1.0.2"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/define-lazy-prop": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz",
+ "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/delayed-stream": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
+ "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.4.0"
+ }
+ },
+ "node_modules/deprecation": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz",
+ "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/dequal": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz",
+ "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/detect-indent": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-5.0.0.tgz",
+ "integrity": "sha512-rlpvsxUtM0PQvy9iZe640/IWwWYyBsTApREbA1pHOpmOUIl9MkP/U4z7vTtg4Oaojvqhxt7sdufnT0EzGaR31g==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/detect-libc": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz",
+ "integrity": "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==",
+ "license": "Apache-2.0",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/devlop": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz",
+ "integrity": "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "dequal": "^2.0.0"
+ },
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/wooorm"
+ }
+ },
+ "node_modules/diff-sequences": {
+ "version": "29.6.3",
+ "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz",
+ "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/dir-glob": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
+ "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "path-type": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/dot-prop": {
+ "version": "5.3.0",
+ "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz",
+ "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "is-obj": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/dotenv": {
+ "version": "16.4.5",
+ "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.5.tgz",
+ "integrity": "sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==",
+ "dev": true,
+ "license": "BSD-2-Clause",
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://dotenvx.com"
+ }
+ },
+ "node_modules/dotenv-expand": {
+ "version": "11.0.7",
+ "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-11.0.7.tgz",
+ "integrity": "sha512-zIHwmZPRshsCdpMDyVsqGmgyP0yT8GAgXUnkdAoJisxvf33k7yO6OuoKmcTGuXPWSsm8Oh88nZicRLA9Y0rUeA==",
+ "dev": true,
+ "license": "BSD-2-Clause",
+ "dependencies": {
+ "dotenv": "^16.4.5"
+ },
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://dotenvx.com"
+ }
+ },
+ "node_modules/duplexer": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz",
+ "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/eastasianwidth": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz",
+ "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/ejs": {
+ "version": "3.1.10",
+ "resolved": "https://registry.npmjs.org/ejs/-/ejs-3.1.10.tgz",
+ "integrity": "sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "jake": "^10.8.5"
+ },
+ "bin": {
+ "ejs": "bin/cli.js"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/emoji-regex": {
+ "version": "8.0.0",
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
+ "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/emoji-regex-xs": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/emoji-regex-xs/-/emoji-regex-xs-1.0.0.tgz",
+ "integrity": "sha512-LRlerrMYoIDrT6jgpeZ2YYl/L8EulRTt5hQcYjy5AInh7HWXKimpqx68aknBFpGL2+/IcogTcaydJEgaTmOpDg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/encoding": {
+ "version": "0.1.13",
+ "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz",
+ "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==",
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "iconv-lite": "^0.6.2"
+ }
+ },
+ "node_modules/encoding/node_modules/iconv-lite": {
+ "version": "0.6.3",
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz",
+ "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==",
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "dependencies": {
+ "safer-buffer": ">= 2.1.2 < 3.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/end-of-stream": {
+ "version": "1.4.4",
+ "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz",
+ "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "once": "^1.4.0"
+ }
+ },
+ "node_modules/enquirer": {
+ "version": "2.3.6",
+ "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz",
+ "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ansi-colors": "^4.1.1"
+ },
+ "engines": {
+ "node": ">=8.6"
+ }
+ },
+ "node_modules/entities": {
+ "version": "4.5.0",
+ "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz",
+ "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==",
+ "dev": true,
+ "license": "BSD-2-Clause",
+ "engines": {
+ "node": ">=0.12"
+ },
+ "funding": {
+ "url": "https://github.com/fb55/entities?sponsor=1"
+ }
+ },
+ "node_modules/env-paths": {
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz",
+ "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/envinfo": {
+ "version": "7.13.0",
+ "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.13.0.tgz",
+ "integrity": "sha512-cvcaMr7KqXVh4nyzGTVqTum+gAiL265x5jUWQIDLq//zOGbW+gSW/C+OWLleY/rs9Qole6AZLMXPbtIFQbqu+Q==",
+ "dev": true,
+ "license": "MIT",
+ "bin": {
+ "envinfo": "dist/cli.js"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/err-code": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz",
+ "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/error-ex": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
+ "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "is-arrayish": "^0.2.1"
+ }
+ },
+ "node_modules/es5-ext": {
+ "version": "0.10.64",
+ "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.64.tgz",
+ "integrity": "sha512-p2snDhiLaXe6dahss1LddxqEm+SkuDvV8dnIQG0MWjyHpcMNfXKPE+/Cc0y+PhxJX3A4xGNeFCj5oc0BUh6deg==",
+ "hasInstallScript": true,
+ "license": "ISC",
+ "dependencies": {
+ "es6-iterator": "^2.0.3",
+ "es6-symbol": "^3.1.3",
+ "esniff": "^2.0.1",
+ "next-tick": "^1.1.0"
+ },
+ "engines": {
+ "node": ">=0.10"
+ }
+ },
+ "node_modules/es6-iterator": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz",
+ "integrity": "sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==",
+ "license": "MIT",
+ "dependencies": {
+ "d": "1",
+ "es5-ext": "^0.10.35",
+ "es6-symbol": "^3.1.1"
+ }
+ },
+ "node_modules/es6-symbol": {
+ "version": "3.1.4",
+ "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.4.tgz",
+ "integrity": "sha512-U9bFFjX8tFiATgtkJ1zg25+KviIXpgRvRHS8sau3GfhVzThRQrOeksPeT0BWW2MNZs1OEWJ1DPXOQMn0KKRkvg==",
+ "license": "ISC",
+ "dependencies": {
+ "d": "^1.0.2",
+ "ext": "^1.7.0"
+ },
+ "engines": {
+ "node": ">=0.12"
+ }
+ },
+ "node_modules/escalade": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz",
+ "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/escape-string-regexp": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
+ "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.8.0"
+ }
+ },
+ "node_modules/esniff": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/esniff/-/esniff-2.0.1.tgz",
+ "integrity": "sha512-kTUIGKQ/mDPFoJ0oVfcmyJn4iBDRptjNVIzwIFR7tqWXdVI9xfA2RMwY/gbSpJG3lkdWNEjLap/NqVHZiJsdfg==",
+ "license": "ISC",
+ "dependencies": {
+ "d": "^1.0.1",
+ "es5-ext": "^0.10.62",
+ "event-emitter": "^0.3.5",
+ "type": "^2.7.2"
+ },
+ "engines": {
+ "node": ">=0.10"
+ }
+ },
+ "node_modules/esprima": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
+ "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
+ "dev": true,
+ "license": "BSD-2-Clause",
+ "bin": {
+ "esparse": "bin/esparse.js",
+ "esvalidate": "bin/esvalidate.js"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/ethers": {
+ "version": "6.13.1",
+ "resolved": "https://registry.npmjs.org/ethers/-/ethers-6.13.1.tgz",
+ "integrity": "sha512-hdJ2HOxg/xx97Lm9HdCWk949BfYqYWpyw4//78SiwOLgASyfrNszfMUNB2joKjvGUdwhHfaiMMFFwacVVoLR9A==",
+ "funding": [
+ {
+ "type": "individual",
+ "url": "https://github.com/sponsors/ethers-io/"
+ },
+ {
+ "type": "individual",
+ "url": "https://www.buymeacoffee.com/ricmoo"
+ }
+ ],
+ "license": "MIT",
+ "peer": true,
+ "dependencies": {
+ "@adraffy/ens-normalize": "1.10.1",
+ "@noble/curves": "1.2.0",
+ "@noble/hashes": "1.3.2",
+ "@types/node": "18.15.13",
+ "aes-js": "4.0.0-beta.5",
+ "tslib": "2.4.0",
+ "ws": "8.17.1"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
+ "node_modules/event-emitter": {
+ "version": "0.3.5",
+ "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz",
+ "integrity": "sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==",
+ "license": "MIT",
+ "dependencies": {
+ "d": "1",
+ "es5-ext": "~0.10.14"
+ }
+ },
+ "node_modules/eventemitter3": {
+ "version": "4.0.7",
+ "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz",
+ "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/eventsource-parser": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/eventsource-parser/-/eventsource-parser-1.1.2.tgz",
+ "integrity": "sha512-v0eOBUbiaFojBu2s2NPBfYUoRR9GjcDNvCXVaqEf5vVfpIAh9f8RCo4vXTP8c63QRKCFwoLpMpTdPwwhEKVgzA==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=14.18"
+ }
+ },
+ "node_modules/execa": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/execa/-/execa-5.0.0.tgz",
+ "integrity": "sha512-ov6w/2LCiuyO4RLYGdpFGjkcs0wMTgGE8PrkTHikeUy5iJekXyPIKUjifk5CsE0pt7sMCrMZ3YNqoCj6idQOnQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "cross-spawn": "^7.0.3",
+ "get-stream": "^6.0.0",
+ "human-signals": "^2.1.0",
+ "is-stream": "^2.0.0",
+ "merge-stream": "^2.0.0",
+ "npm-run-path": "^4.0.1",
+ "onetime": "^5.1.2",
+ "signal-exit": "^3.0.3",
+ "strip-final-newline": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sindresorhus/execa?sponsor=1"
+ }
+ },
+ "node_modules/exponential-backoff": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.1.tgz",
+ "integrity": "sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw==",
+ "dev": true,
+ "license": "Apache-2.0"
+ },
+ "node_modules/ext": {
+ "version": "1.7.0",
+ "resolved": "https://registry.npmjs.org/ext/-/ext-1.7.0.tgz",
+ "integrity": "sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==",
+ "license": "ISC",
+ "dependencies": {
+ "type": "^2.7.2"
+ }
+ },
+ "node_modules/external-editor": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz",
+ "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "chardet": "^0.7.0",
+ "iconv-lite": "^0.4.24",
+ "tmp": "^0.0.33"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/external-editor/node_modules/tmp": {
+ "version": "0.0.33",
+ "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
+ "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "os-tmpdir": "~1.0.2"
+ },
+ "engines": {
+ "node": ">=0.6.0"
+ }
+ },
+ "node_modules/fast-glob": {
+ "version": "3.3.2",
+ "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz",
+ "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@nodelib/fs.stat": "^2.0.2",
+ "@nodelib/fs.walk": "^1.2.3",
+ "glob-parent": "^5.1.2",
+ "merge2": "^1.3.0",
+ "micromatch": "^4.0.4"
+ },
+ "engines": {
+ "node": ">=8.6.0"
+ }
+ },
+ "node_modules/fast-glob/node_modules/glob-parent": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
+ "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "is-glob": "^4.0.1"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/fastq": {
+ "version": "1.17.1",
+ "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz",
+ "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "reusify": "^1.0.4"
+ }
+ },
+ "node_modules/figures": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz",
+ "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "escape-string-regexp": "^1.0.5"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/filelist": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/filelist/-/filelist-1.0.4.tgz",
+ "integrity": "sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "minimatch": "^5.0.1"
+ }
+ },
+ "node_modules/filelist/node_modules/brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "balanced-match": "^1.0.0"
+ }
+ },
+ "node_modules/filelist/node_modules/minimatch": {
+ "version": "5.1.6",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz",
+ "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "brace-expansion": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/fill-range": {
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
+ "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "to-regex-range": "^5.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/find-up": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
+ "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "locate-path": "^5.0.0",
+ "path-exists": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/flat": {
+ "version": "5.0.2",
+ "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz",
+ "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==",
+ "dev": true,
+ "license": "BSD-3-Clause",
+ "bin": {
+ "flat": "cli.js"
+ }
+ },
+ "node_modules/follow-redirects": {
+ "version": "1.15.9",
+ "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz",
+ "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==",
+ "funding": [
+ {
+ "type": "individual",
+ "url": "https://github.com/sponsors/RubenVerborgh"
+ }
+ ],
+ "license": "MIT",
+ "engines": {
+ "node": ">=4.0"
+ },
+ "peerDependenciesMeta": {
+ "debug": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/foreground-child": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.0.tgz",
+ "integrity": "sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "cross-spawn": "^7.0.0",
+ "signal-exit": "^4.0.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/foreground-child/node_modules/signal-exit": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz",
+ "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==",
+ "dev": true,
+ "license": "ISC",
+ "engines": {
+ "node": ">=14"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/form-data": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.1.tgz",
+ "integrity": "sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==",
+ "license": "MIT",
+ "dependencies": {
+ "asynckit": "^0.4.0",
+ "combined-stream": "^1.0.8",
+ "mime-types": "^2.1.12"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/front-matter": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/front-matter/-/front-matter-4.0.2.tgz",
+ "integrity": "sha512-I8ZuJ/qG92NWX8i5x1Y8qyj3vizhXS31OxjKDu3LKP+7/qBgfIKValiZIEwoVoJKUHlhWtYrktkxV1XsX+pPlg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "js-yaml": "^3.13.1"
+ }
+ },
+ "node_modules/front-matter/node_modules/argparse": {
+ "version": "1.0.10",
+ "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
+ "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "sprintf-js": "~1.0.2"
+ }
+ },
+ "node_modules/front-matter/node_modules/js-yaml": {
+ "version": "3.14.1",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz",
+ "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "argparse": "^1.0.7",
+ "esprima": "^4.0.0"
+ },
+ "bin": {
+ "js-yaml": "bin/js-yaml.js"
+ }
+ },
+ "node_modules/front-matter/node_modules/sprintf-js": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
+ "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==",
+ "dev": true,
+ "license": "BSD-3-Clause"
+ },
+ "node_modules/fs-constants": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz",
+ "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/fs-extra": {
+ "version": "11.2.0",
+ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz",
+ "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "graceful-fs": "^4.2.0",
+ "jsonfile": "^6.0.1",
+ "universalify": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=14.14"
+ }
+ },
+ "node_modules/fs-minipass": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz",
+ "integrity": "sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "minipass": "^7.0.3"
+ },
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/fs.realpath": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
+ "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/function-bind": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
+ "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
+ "dev": true,
+ "license": "MIT",
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/get-caller-file": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
+ "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
+ "dev": true,
+ "license": "ISC",
+ "engines": {
+ "node": "6.* || 8.* || >= 10.*"
+ }
+ },
+ "node_modules/get-pkg-repo": {
+ "version": "4.2.1",
+ "resolved": "https://registry.npmjs.org/get-pkg-repo/-/get-pkg-repo-4.2.1.tgz",
+ "integrity": "sha512-2+QbHjFRfGB74v/pYWjd5OhU3TDIC2Gv/YKUTk/tCvAz0pkn/Mz6P3uByuBimLOcPvN2jYdScl3xGFSrx0jEcA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@hutson/parse-repository-url": "^3.0.0",
+ "hosted-git-info": "^4.0.0",
+ "through2": "^2.0.0",
+ "yargs": "^16.2.0"
+ },
+ "bin": {
+ "get-pkg-repo": "src/cli.js"
+ },
+ "engines": {
+ "node": ">=6.9.0"
+ }
+ },
+ "node_modules/get-pkg-repo/node_modules/cliui": {
+ "version": "7.0.4",
+ "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz",
+ "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "string-width": "^4.2.0",
+ "strip-ansi": "^6.0.0",
+ "wrap-ansi": "^7.0.0"
+ }
+ },
+ "node_modules/get-pkg-repo/node_modules/hosted-git-info": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz",
+ "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "lru-cache": "^6.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/get-pkg-repo/node_modules/lru-cache": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
+ "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "yallist": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/get-pkg-repo/node_modules/wrap-ansi": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
+ "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ansi-styles": "^4.0.0",
+ "string-width": "^4.1.0",
+ "strip-ansi": "^6.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
+ }
+ },
+ "node_modules/get-pkg-repo/node_modules/yargs": {
+ "version": "16.2.0",
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
+ "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "cliui": "^7.0.2",
+ "escalade": "^3.1.1",
+ "get-caller-file": "^2.0.5",
+ "require-directory": "^2.1.1",
+ "string-width": "^4.2.0",
+ "y18n": "^5.0.5",
+ "yargs-parser": "^20.2.2"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/get-pkg-repo/node_modules/yargs-parser": {
+ "version": "20.2.9",
+ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz",
+ "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==",
+ "dev": true,
+ "license": "ISC",
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/get-port": {
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/get-port/-/get-port-5.1.1.tgz",
+ "integrity": "sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/get-stream": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.0.tgz",
+ "integrity": "sha512-A1B3Bh1UmL0bidM/YX2NsCOTnGJePL9rO/M+Mw3m9f2gUpfokS0hi5Eah0WSUEWZdZhIZtMjkIYS7mDfOqNHbg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/git-raw-commits": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-3.0.0.tgz",
+ "integrity": "sha512-b5OHmZ3vAgGrDn/X0kS+9qCfNKWe4K/jFnhwzVWWg0/k5eLa3060tZShrRg8Dja5kPc+YjS0Gc6y7cRr44Lpjw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "dargs": "^7.0.0",
+ "meow": "^8.1.2",
+ "split2": "^3.2.2"
+ },
+ "bin": {
+ "git-raw-commits": "cli.js"
+ },
+ "engines": {
+ "node": ">=14"
+ }
+ },
+ "node_modules/git-remote-origin-url": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/git-remote-origin-url/-/git-remote-origin-url-2.0.0.tgz",
+ "integrity": "sha512-eU+GGrZgccNJcsDH5LkXR3PB9M958hxc7sbA8DFJjrv9j4L2P/eZfKhM+QD6wyzpiv+b1BpK0XrYCxkovtjSLw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "gitconfiglocal": "^1.0.0",
+ "pify": "^2.3.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/git-remote-origin-url/node_modules/pify": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
+ "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/git-semver-tags": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/git-semver-tags/-/git-semver-tags-5.0.1.tgz",
+ "integrity": "sha512-hIvOeZwRbQ+7YEUmCkHqo8FOLQZCEn18yevLHADlFPZY02KJGsu5FZt9YW/lybfK2uhWFI7Qg/07LekJiTv7iA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "meow": "^8.1.2",
+ "semver": "^7.0.0"
+ },
+ "bin": {
+ "git-semver-tags": "cli.js"
+ },
+ "engines": {
+ "node": ">=14"
+ }
+ },
+ "node_modules/git-up": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/git-up/-/git-up-7.0.0.tgz",
+ "integrity": "sha512-ONdIrbBCFusq1Oy0sC71F5azx8bVkvtZtMJAsv+a6lz5YAmbNnLD6HAB4gptHZVLPR8S2/kVN6Gab7lryq5+lQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "is-ssh": "^1.4.0",
+ "parse-url": "^8.1.0"
+ }
+ },
+ "node_modules/git-url-parse": {
+ "version": "14.0.0",
+ "resolved": "https://registry.npmjs.org/git-url-parse/-/git-url-parse-14.0.0.tgz",
+ "integrity": "sha512-NnLweV+2A4nCvn4U/m2AoYu0pPKlsmhK9cknG7IMwsjFY1S2jxM+mAhsDxyxfCIGfGaD+dozsyX4b6vkYc83yQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "git-up": "^7.0.0"
+ }
+ },
+ "node_modules/gitconfiglocal": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/gitconfiglocal/-/gitconfiglocal-1.0.0.tgz",
+ "integrity": "sha512-spLUXeTAVHxDtKsJc8FkFVgFtMdEN9qPGpL23VfSHx4fP4+Ds097IXLvymbnDH8FnmxX5Nr9bPw3A+AQ6mWEaQ==",
+ "dev": true,
+ "license": "BSD",
+ "dependencies": {
+ "ini": "^1.3.2"
+ }
+ },
+ "node_modules/glob": {
+ "version": "10.4.5",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz",
+ "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "foreground-child": "^3.1.0",
+ "jackspeak": "^3.1.2",
+ "minimatch": "^9.0.4",
+ "minipass": "^7.1.2",
+ "package-json-from-dist": "^1.0.0",
+ "path-scurry": "^1.11.1"
+ },
+ "bin": {
+ "glob": "dist/esm/bin.mjs"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/glob-parent": {
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz",
+ "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "is-glob": "^4.0.3"
+ },
+ "engines": {
+ "node": ">=10.13.0"
+ }
+ },
+ "node_modules/glob/node_modules/brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "balanced-match": "^1.0.0"
+ }
+ },
+ "node_modules/glob/node_modules/minimatch": {
+ "version": "9.0.5",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
+ "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "brace-expansion": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=16 || 14 >=14.17"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/globby": {
+ "version": "11.1.0",
+ "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz",
+ "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "array-union": "^2.1.0",
+ "dir-glob": "^3.0.1",
+ "fast-glob": "^3.2.9",
+ "ignore": "^5.2.0",
+ "merge2": "^1.4.1",
+ "slash": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/graceful-fs": {
+ "version": "4.2.11",
+ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
+ "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/handlebars": {
+ "version": "4.7.8",
+ "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.8.tgz",
+ "integrity": "sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "minimist": "^1.2.5",
+ "neo-async": "^2.6.2",
+ "source-map": "^0.6.1",
+ "wordwrap": "^1.0.0"
+ },
+ "bin": {
+ "handlebars": "bin/handlebars"
+ },
+ "engines": {
+ "node": ">=0.4.7"
+ },
+ "optionalDependencies": {
+ "uglify-js": "^3.1.4"
+ }
+ },
+ "node_modules/hard-rejection": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz",
+ "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/has-unicode": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz",
+ "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/hasown": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz",
+ "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "function-bind": "^1.1.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "node_modules/hast-util-to-html": {
+ "version": "9.0.3",
+ "resolved": "https://registry.npmjs.org/hast-util-to-html/-/hast-util-to-html-9.0.3.tgz",
+ "integrity": "sha512-M17uBDzMJ9RPCqLMO92gNNUDuBSq10a25SDBI08iCCxmorf4Yy6sYHK57n9WAbRAAaU+DuR4W6GN9K4DFZesYg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@types/hast": "^3.0.0",
+ "@types/unist": "^3.0.0",
+ "ccount": "^2.0.0",
+ "comma-separated-tokens": "^2.0.0",
+ "hast-util-whitespace": "^3.0.0",
+ "html-void-elements": "^3.0.0",
+ "mdast-util-to-hast": "^13.0.0",
+ "property-information": "^6.0.0",
+ "space-separated-tokens": "^2.0.0",
+ "stringify-entities": "^4.0.0",
+ "zwitch": "^2.0.4"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/unified"
+ }
+ },
+ "node_modules/hast-util-whitespace": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-3.0.0.tgz",
+ "integrity": "sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@types/hast": "^3.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/unified"
+ }
+ },
+ "node_modules/hosted-git-info": {
+ "version": "7.0.2",
+ "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.2.tgz",
+ "integrity": "sha512-puUZAUKT5m8Zzvs72XWy3HtvVbTWljRE66cP60bxJzAqf2DgICo7lYTY2IHUmLnNpjYvw5bvmoHvPc0QO2a62w==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "lru-cache": "^10.0.1"
+ },
+ "engines": {
+ "node": "^16.14.0 || >=18.0.0"
+ }
+ },
+ "node_modules/html-void-elements": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-3.0.0.tgz",
+ "integrity": "sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==",
+ "dev": true,
+ "license": "MIT",
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/wooorm"
+ }
+ },
+ "node_modules/http-cache-semantics": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz",
+ "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==",
+ "dev": true,
+ "license": "BSD-2-Clause"
+ },
+ "node_modules/http-proxy-agent": {
+ "version": "7.0.2",
+ "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz",
+ "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "agent-base": "^7.1.0",
+ "debug": "^4.3.4"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/https-proxy-agent": {
+ "version": "7.0.5",
+ "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz",
+ "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "agent-base": "^7.0.2",
+ "debug": "4"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/human-signals": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz",
+ "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "engines": {
+ "node": ">=10.17.0"
+ }
+ },
+ "node_modules/husky": {
+ "version": "9.1.7",
+ "resolved": "https://registry.npmjs.org/husky/-/husky-9.1.7.tgz",
+ "integrity": "sha512-5gs5ytaNjBrh5Ow3zrvdUUY+0VxIuWVL4i9irt6friV+BqdCfmV11CQTWMiBYWHbXhco+J1kHfTOUkePhCDvMA==",
+ "dev": true,
+ "license": "MIT",
+ "bin": {
+ "husky": "bin.js"
+ },
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/typicode"
+ }
+ },
+ "node_modules/iconv-lite": {
+ "version": "0.4.24",
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
+ "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "safer-buffer": ">= 2.1.2 < 3"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/ieee754": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
+ "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "license": "BSD-3-Clause"
+ },
+ "node_modules/ignore": {
+ "version": "5.3.2",
+ "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz",
+ "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 4"
+ }
+ },
+ "node_modules/ignore-walk": {
+ "version": "6.0.5",
+ "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.5.tgz",
+ "integrity": "sha512-VuuG0wCnjhnylG1ABXT3dAuIpTNDs/G8jlpmwXY03fXoXy/8ZK8/T+hMzt8L4WnrLCJgdybqgPagnF/f97cg3A==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "minimatch": "^9.0.0"
+ },
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/ignore-walk/node_modules/brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "balanced-match": "^1.0.0"
+ }
+ },
+ "node_modules/ignore-walk/node_modules/minimatch": {
+ "version": "9.0.5",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
+ "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "brace-expansion": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=16 || 14 >=14.17"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/import-fresh": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
+ "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "parent-module": "^1.0.0",
+ "resolve-from": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/import-fresh/node_modules/resolve-from": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
+ "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/import-local": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz",
+ "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "pkg-dir": "^4.2.0",
+ "resolve-cwd": "^3.0.0"
+ },
+ "bin": {
+ "import-local-fixture": "fixtures/cli.js"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/imurmurhash": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
+ "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.8.19"
+ }
+ },
+ "node_modules/indent-string": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz",
+ "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/inherits": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/ini": {
+ "version": "1.3.8",
+ "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz",
+ "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/init-package-json": {
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/init-package-json/-/init-package-json-6.0.3.tgz",
+ "integrity": "sha512-Zfeb5ol+H+eqJWHTaGca9BovufyGeIfr4zaaBorPmJBMrJ+KBnN+kQx2ZtXdsotUTgldHmHQV44xvUWOUA7E2w==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "@npmcli/package-json": "^5.0.0",
+ "npm-package-arg": "^11.0.0",
+ "promzard": "^1.0.0",
+ "read": "^3.0.1",
+ "semver": "^7.3.5",
+ "validate-npm-package-license": "^3.0.4",
+ "validate-npm-package-name": "^5.0.0"
+ },
+ "engines": {
+ "node": "^16.14.0 || >=18.0.0"
+ }
+ },
+ "node_modules/inquirer": {
+ "version": "8.2.6",
+ "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.6.tgz",
+ "integrity": "sha512-M1WuAmb7pn9zdFRtQYk26ZBoY043Sse0wVDdk4Bppr+JOXyQYybdtvK+l9wUibhtjdjvtoiNy8tk+EgsYIUqKg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ansi-escapes": "^4.2.1",
+ "chalk": "^4.1.1",
+ "cli-cursor": "^3.1.0",
+ "cli-width": "^3.0.0",
+ "external-editor": "^3.0.3",
+ "figures": "^3.0.0",
+ "lodash": "^4.17.21",
+ "mute-stream": "0.0.8",
+ "ora": "^5.4.1",
+ "run-async": "^2.4.0",
+ "rxjs": "^7.5.5",
+ "string-width": "^4.1.0",
+ "strip-ansi": "^6.0.0",
+ "through": "^2.3.6",
+ "wrap-ansi": "^6.0.1"
+ },
+ "engines": {
+ "node": ">=12.0.0"
+ }
+ },
+ "node_modules/ip-address": {
+ "version": "9.0.5",
+ "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz",
+ "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "jsbn": "1.1.0",
+ "sprintf-js": "^1.1.3"
+ },
+ "engines": {
+ "node": ">= 12"
+ }
+ },
+ "node_modules/is-arrayish": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
+ "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/is-ci": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz",
+ "integrity": "sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ci-info": "^3.2.0"
+ },
+ "bin": {
+ "is-ci": "bin.js"
+ }
+ },
+ "node_modules/is-core-module": {
+ "version": "2.15.1",
+ "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz",
+ "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "hasown": "^2.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/is-docker": {
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz",
+ "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==",
+ "dev": true,
+ "license": "MIT",
+ "bin": {
+ "is-docker": "cli.js"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/is-extglob": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
+ "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/is-fullwidth-code-point": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
+ "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/is-glob": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
+ "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "is-extglob": "^2.1.1"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/is-interactive": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz",
+ "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/is-lambda": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz",
+ "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/is-number": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
+ "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.12.0"
+ }
+ },
+ "node_modules/is-obj": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz",
+ "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/is-plain-obj": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz",
+ "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/is-plain-object": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz",
+ "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/is-ssh": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/is-ssh/-/is-ssh-1.4.0.tgz",
+ "integrity": "sha512-x7+VxdxOdlV3CYpjvRLBv5Lo9OJerlYanjwFrPR9fuGPjCiNiCzFgAWpiLAohSbsnH4ZAys3SBh+hq5rJosxUQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "protocols": "^2.0.1"
+ }
+ },
+ "node_modules/is-stream": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz",
+ "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/is-text-path": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/is-text-path/-/is-text-path-1.0.1.tgz",
+ "integrity": "sha512-xFuJpne9oFz5qDaodwmmG08e3CawH/2ZV8Qqza1Ko7Sk8POWbkRdwIoAWVhqvq0XeUzANEhKo2n0IXUGBm7A/w==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "text-extensions": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/is-typedarray": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
+ "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==",
+ "license": "MIT"
+ },
+ "node_modules/is-unicode-supported": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz",
+ "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/is-wsl": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz",
+ "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "is-docker": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/isarray": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
+ "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/isexe": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz",
+ "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==",
+ "dev": true,
+ "license": "ISC",
+ "engines": {
+ "node": ">=16"
+ }
+ },
+ "node_modules/isobject": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
+ "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/jackspeak": {
+ "version": "3.4.3",
+ "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz",
+ "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==",
+ "dev": true,
+ "license": "BlueOak-1.0.0",
+ "dependencies": {
+ "@isaacs/cliui": "^8.0.2"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ },
+ "optionalDependencies": {
+ "@pkgjs/parseargs": "^0.11.0"
+ }
+ },
+ "node_modules/jake": {
+ "version": "10.9.2",
+ "resolved": "https://registry.npmjs.org/jake/-/jake-10.9.2.tgz",
+ "integrity": "sha512-2P4SQ0HrLQ+fw6llpLnOaGAvN2Zu6778SJMrCUwns4fOoG9ayrTiZk3VV8sCPkVZF8ab0zksVpS8FDY5pRCNBA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "async": "^3.2.3",
+ "chalk": "^4.0.2",
+ "filelist": "^1.0.4",
+ "minimatch": "^3.1.2"
+ },
+ "bin": {
+ "jake": "bin/cli.js"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/jake/node_modules/minimatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "brace-expansion": "^1.1.7"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/jest-diff": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz",
+ "integrity": "sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "chalk": "^4.0.0",
+ "diff-sequences": "^29.6.3",
+ "jest-get-type": "^29.6.3",
+ "pretty-format": "^29.7.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/jest-get-type": {
+ "version": "29.6.3",
+ "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz",
+ "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/js-sha3": {
+ "version": "0.8.0",
+ "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz",
+ "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==",
+ "license": "MIT"
+ },
+ "node_modules/js-tokens": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
+ "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/js-yaml": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
+ "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "argparse": "^2.0.1"
+ },
+ "bin": {
+ "js-yaml": "bin/js-yaml.js"
+ }
+ },
+ "node_modules/jsbn": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz",
+ "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/json-parse-better-errors": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz",
+ "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/json-parse-even-better-errors": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-3.0.2.tgz",
+ "integrity": "sha512-fi0NG4bPjCHunUJffmLd0gxssIgkNmArMvis4iNah6Owg1MCJjWhEcDLmsK6iGkJq3tHwbDkTlce70/tmXN4cQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/json-schema": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz",
+ "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==",
+ "license": "(AFL-2.1 OR BSD-3-Clause)"
+ },
+ "node_modules/json-stringify-nice": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/json-stringify-nice/-/json-stringify-nice-1.1.4.tgz",
+ "integrity": "sha512-5Z5RFW63yxReJ7vANgW6eZFGWaQvnPE3WNmZoOJrSkGju2etKA2L5rrOa1sm877TVTFt57A80BH1bArcmlLfPw==",
+ "dev": true,
+ "license": "ISC",
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/json-stringify-safe": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
+ "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/json5": {
+ "version": "2.2.3",
+ "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz",
+ "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==",
+ "dev": true,
+ "license": "MIT",
+ "bin": {
+ "json5": "lib/cli.js"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/jsonc-parser": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz",
+ "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/jsonfile": {
+ "version": "6.1.0",
+ "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
+ "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "universalify": "^2.0.0"
+ },
+ "optionalDependencies": {
+ "graceful-fs": "^4.1.6"
+ }
+ },
+ "node_modules/jsonparse": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz",
+ "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==",
+ "dev": true,
+ "engines": [
+ "node >= 0.2.0"
+ ],
+ "license": "MIT"
+ },
+ "node_modules/JSONStream": {
+ "version": "1.3.5",
+ "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz",
+ "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==",
+ "dev": true,
+ "license": "(MIT OR Apache-2.0)",
+ "dependencies": {
+ "jsonparse": "^1.2.0",
+ "through": ">=2.2.7 <3"
+ },
+ "bin": {
+ "JSONStream": "bin.js"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/just-diff": {
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/just-diff/-/just-diff-6.0.2.tgz",
+ "integrity": "sha512-S59eriX5u3/QhMNq3v/gm8Kd0w8OS6Tz2FS1NG4blv+z0MuQcBRJyFWjdovM0Rad4/P4aUPFtnkNjMjyMlMSYA==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/just-diff-apply": {
+ "version": "5.5.0",
+ "resolved": "https://registry.npmjs.org/just-diff-apply/-/just-diff-apply-5.5.0.tgz",
+ "integrity": "sha512-OYTthRfSh55WOItVqwpefPtNt2VdKsq5AnAK6apdtR6yCH8pr0CmSr710J0Mf+WdQy7K/OzMy7K2MgAfdQURDw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/kind-of": {
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
+ "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/lerna": {
+ "version": "8.1.9",
+ "resolved": "https://registry.npmjs.org/lerna/-/lerna-8.1.9.tgz",
+ "integrity": "sha512-ZRFlRUBB2obm+GkbTR7EbgTMuAdni6iwtTQTMy7LIrQ4UInG44LyfRepljtgUxh4HA0ltzsvWfPkd5J1DKGCeQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@lerna/create": "8.1.9",
+ "@npmcli/arborist": "7.5.4",
+ "@npmcli/package-json": "5.2.0",
+ "@npmcli/run-script": "8.1.0",
+ "@nx/devkit": ">=17.1.2 < 21",
+ "@octokit/plugin-enterprise-rest": "6.0.1",
+ "@octokit/rest": "19.0.11",
+ "aproba": "2.0.0",
+ "byte-size": "8.1.1",
+ "chalk": "4.1.0",
+ "clone-deep": "4.0.1",
+ "cmd-shim": "6.0.3",
+ "color-support": "1.1.3",
+ "columnify": "1.6.0",
+ "console-control-strings": "^1.1.0",
+ "conventional-changelog-angular": "7.0.0",
+ "conventional-changelog-core": "5.0.1",
+ "conventional-recommended-bump": "7.0.1",
+ "cosmiconfig": "9.0.0",
+ "dedent": "1.5.3",
+ "envinfo": "7.13.0",
+ "execa": "5.0.0",
+ "fs-extra": "^11.2.0",
+ "get-port": "5.1.1",
+ "get-stream": "6.0.0",
+ "git-url-parse": "14.0.0",
+ "glob-parent": "6.0.2",
+ "globby": "11.1.0",
+ "graceful-fs": "4.2.11",
+ "has-unicode": "2.0.1",
+ "import-local": "3.1.0",
+ "ini": "^1.3.8",
+ "init-package-json": "6.0.3",
+ "inquirer": "^8.2.4",
+ "is-ci": "3.0.1",
+ "is-stream": "2.0.0",
+ "jest-diff": ">=29.4.3 < 30",
+ "js-yaml": "4.1.0",
+ "libnpmaccess": "8.0.6",
+ "libnpmpublish": "9.0.9",
+ "load-json-file": "6.2.0",
+ "lodash": "^4.17.21",
+ "make-dir": "4.0.0",
+ "minimatch": "3.0.5",
+ "multimatch": "5.0.0",
+ "node-fetch": "2.6.7",
+ "npm-package-arg": "11.0.2",
+ "npm-packlist": "8.0.2",
+ "npm-registry-fetch": "^17.1.0",
+ "nx": ">=17.1.2 < 21",
+ "p-map": "4.0.0",
+ "p-map-series": "2.1.0",
+ "p-pipe": "3.1.0",
+ "p-queue": "6.6.2",
+ "p-reduce": "2.1.0",
+ "p-waterfall": "2.1.1",
+ "pacote": "^18.0.6",
+ "pify": "5.0.0",
+ "read-cmd-shim": "4.0.0",
+ "resolve-from": "5.0.0",
+ "rimraf": "^4.4.1",
+ "semver": "^7.3.8",
+ "set-blocking": "^2.0.0",
+ "signal-exit": "3.0.7",
+ "slash": "3.0.0",
+ "ssri": "^10.0.6",
+ "string-width": "^4.2.3",
+ "strip-ansi": "^6.0.1",
+ "strong-log-transformer": "2.1.0",
+ "tar": "6.2.1",
+ "temp-dir": "1.0.0",
+ "typescript": ">=3 < 6",
+ "upath": "2.0.1",
+ "uuid": "^10.0.0",
+ "validate-npm-package-license": "3.0.4",
+ "validate-npm-package-name": "5.0.1",
+ "wide-align": "1.1.5",
+ "write-file-atomic": "5.0.1",
+ "write-pkg": "4.0.0",
+ "yargs": "17.7.2",
+ "yargs-parser": "21.1.1"
+ },
+ "bin": {
+ "lerna": "dist/cli.js"
+ },
+ "engines": {
+ "node": ">=18.0.0"
+ }
+ },
+ "node_modules/lerna/node_modules/chalk": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz",
+ "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/lerna/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/libnpmaccess": {
+ "version": "8.0.6",
+ "resolved": "https://registry.npmjs.org/libnpmaccess/-/libnpmaccess-8.0.6.tgz",
+ "integrity": "sha512-uM8DHDEfYG6G5gVivVl+yQd4pH3uRclHC59lzIbSvy7b5FEwR+mU49Zq1jEyRtRFv7+M99mUW9S0wL/4laT4lw==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "npm-package-arg": "^11.0.2",
+ "npm-registry-fetch": "^17.0.1"
+ },
+ "engines": {
+ "node": "^16.14.0 || >=18.0.0"
+ }
+ },
+ "node_modules/libnpmpublish": {
+ "version": "9.0.9",
+ "resolved": "https://registry.npmjs.org/libnpmpublish/-/libnpmpublish-9.0.9.tgz",
+ "integrity": "sha512-26zzwoBNAvX9AWOPiqqF6FG4HrSCPsHFkQm7nT+xU1ggAujL/eae81RnCv4CJ2In9q9fh10B88sYSzKCUh/Ghg==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "ci-info": "^4.0.0",
+ "normalize-package-data": "^6.0.1",
+ "npm-package-arg": "^11.0.2",
+ "npm-registry-fetch": "^17.0.1",
+ "proc-log": "^4.2.0",
+ "semver": "^7.3.7",
+ "sigstore": "^2.2.0",
+ "ssri": "^10.0.6"
+ },
+ "engines": {
+ "node": "^16.14.0 || >=18.0.0"
+ }
+ },
+ "node_modules/libnpmpublish/node_modules/ci-info": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.1.0.tgz",
+ "integrity": "sha512-HutrvTNsF48wnxkzERIXOe5/mlcfFcbfCmwcg6CJnizbSue78AbDt+1cgl26zwn61WFxhcPykPfZrbqjGmBb4A==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/sibiraj-s"
+ }
+ ],
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/lines-and-columns": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-2.0.3.tgz",
+ "integrity": "sha512-cNOjgCnLB+FnvWWtyRTzmB3POJ+cXxTA81LoW7u8JdmhfXzriropYwpjShnz1QLLWsQwY7nIxoDmcPTwphDK9w==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
+ }
+ },
+ "node_modules/linkify-it": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-5.0.0.tgz",
+ "integrity": "sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "uc.micro": "^2.0.0"
+ }
+ },
+ "node_modules/load-json-file": {
+ "version": "6.2.0",
+ "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-6.2.0.tgz",
+ "integrity": "sha512-gUD/epcRms75Cw8RT1pUdHugZYM5ce64ucs2GEISABwkRsOQr0q2wm/MV2TKThycIe5e0ytRweW2RZxclogCdQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "graceful-fs": "^4.1.15",
+ "parse-json": "^5.0.0",
+ "strip-bom": "^4.0.0",
+ "type-fest": "^0.6.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/load-json-file/node_modules/type-fest": {
+ "version": "0.6.0",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz",
+ "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==",
+ "dev": true,
+ "license": "(MIT OR CC0-1.0)",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/locate-path": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
+ "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "p-locate": "^4.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/lodash": {
+ "version": "4.17.21",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
+ "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/lodash.ismatch": {
+ "version": "4.4.0",
+ "resolved": "https://registry.npmjs.org/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz",
+ "integrity": "sha512-fPMfXjGQEV9Xsq/8MTSgUf255gawYRbjwMyDbcvDhXgV7enSZA0hynz6vMPnpAb5iONEzBHBPsT+0zes5Z301g==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/log-symbols": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
+ "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "chalk": "^4.1.0",
+ "is-unicode-supported": "^0.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/lru-cache": {
+ "version": "10.4.3",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz",
+ "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/lunr": {
+ "version": "2.3.9",
+ "resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz",
+ "integrity": "sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/make-dir": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz",
+ "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "semver": "^7.5.3"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/make-fetch-happen": {
+ "version": "13.0.1",
+ "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.1.tgz",
+ "integrity": "sha512-cKTUFc/rbKUd/9meOvgrpJ2WrNzymt6jfRDdwg5UCnVzv9dTpEj9JS5m3wtziXVCjluIXyL8pcaukYqezIzZQA==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "@npmcli/agent": "^2.0.0",
+ "cacache": "^18.0.0",
+ "http-cache-semantics": "^4.1.1",
+ "is-lambda": "^1.0.1",
+ "minipass": "^7.0.2",
+ "minipass-fetch": "^3.0.0",
+ "minipass-flush": "^1.0.5",
+ "minipass-pipeline": "^1.2.4",
+ "negotiator": "^0.6.3",
+ "proc-log": "^4.2.0",
+ "promise-retry": "^2.0.1",
+ "ssri": "^10.0.0"
+ },
+ "engines": {
+ "node": "^16.14.0 || >=18.0.0"
+ }
+ },
+ "node_modules/map-obj": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz",
+ "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/markdown-it": {
+ "version": "14.1.0",
+ "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-14.1.0.tgz",
+ "integrity": "sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "argparse": "^2.0.1",
+ "entities": "^4.4.0",
+ "linkify-it": "^5.0.0",
+ "mdurl": "^2.0.0",
+ "punycode.js": "^2.3.1",
+ "uc.micro": "^2.1.0"
+ },
+ "bin": {
+ "markdown-it": "bin/markdown-it.mjs"
+ }
+ },
+ "node_modules/mdast-util-to-hast": {
+ "version": "13.2.0",
+ "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.2.0.tgz",
+ "integrity": "sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@types/hast": "^3.0.0",
+ "@types/mdast": "^4.0.0",
+ "@ungap/structured-clone": "^1.0.0",
+ "devlop": "^1.0.0",
+ "micromark-util-sanitize-uri": "^2.0.0",
+ "trim-lines": "^3.0.0",
+ "unist-util-position": "^5.0.0",
+ "unist-util-visit": "^5.0.0",
+ "vfile": "^6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/unified"
+ }
+ },
+ "node_modules/mdurl": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-2.0.0.tgz",
+ "integrity": "sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/meow": {
+ "version": "8.1.2",
+ "resolved": "https://registry.npmjs.org/meow/-/meow-8.1.2.tgz",
+ "integrity": "sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@types/minimist": "^1.2.0",
+ "camelcase-keys": "^6.2.2",
+ "decamelize-keys": "^1.1.0",
+ "hard-rejection": "^2.1.0",
+ "minimist-options": "4.1.0",
+ "normalize-package-data": "^3.0.0",
+ "read-pkg-up": "^7.0.1",
+ "redent": "^3.0.0",
+ "trim-newlines": "^3.0.0",
+ "type-fest": "^0.18.0",
+ "yargs-parser": "^20.2.3"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/meow/node_modules/hosted-git-info": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz",
+ "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "lru-cache": "^6.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/meow/node_modules/lru-cache": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
+ "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "yallist": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/meow/node_modules/normalize-package-data": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz",
+ "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==",
+ "dev": true,
+ "license": "BSD-2-Clause",
+ "dependencies": {
+ "hosted-git-info": "^4.0.1",
+ "is-core-module": "^2.5.0",
+ "semver": "^7.3.4",
+ "validate-npm-package-license": "^3.0.1"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/meow/node_modules/read-pkg": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz",
+ "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@types/normalize-package-data": "^2.4.0",
+ "normalize-package-data": "^2.5.0",
+ "parse-json": "^5.0.0",
+ "type-fest": "^0.6.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/meow/node_modules/read-pkg-up": {
+ "version": "7.0.1",
+ "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz",
+ "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "find-up": "^4.1.0",
+ "read-pkg": "^5.2.0",
+ "type-fest": "^0.8.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/meow/node_modules/read-pkg-up/node_modules/type-fest": {
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
+ "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
+ "dev": true,
+ "license": "(MIT OR CC0-1.0)",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/meow/node_modules/read-pkg/node_modules/hosted-git-info": {
+ "version": "2.8.9",
+ "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz",
+ "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/meow/node_modules/read-pkg/node_modules/normalize-package-data": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
+ "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==",
+ "dev": true,
+ "license": "BSD-2-Clause",
+ "dependencies": {
+ "hosted-git-info": "^2.1.4",
+ "resolve": "^1.10.0",
+ "semver": "2 || 3 || 4 || 5",
+ "validate-npm-package-license": "^3.0.1"
+ }
+ },
+ "node_modules/meow/node_modules/read-pkg/node_modules/semver": {
+ "version": "5.7.2",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
+ "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
+ "dev": true,
+ "license": "ISC",
+ "bin": {
+ "semver": "bin/semver"
+ }
+ },
+ "node_modules/meow/node_modules/read-pkg/node_modules/type-fest": {
+ "version": "0.6.0",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz",
+ "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==",
+ "dev": true,
+ "license": "(MIT OR CC0-1.0)",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/meow/node_modules/type-fest": {
+ "version": "0.18.1",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz",
+ "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==",
+ "dev": true,
+ "license": "(MIT OR CC0-1.0)",
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/meow/node_modules/yargs-parser": {
+ "version": "20.2.9",
+ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz",
+ "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==",
+ "dev": true,
+ "license": "ISC",
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/merge-stream": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz",
+ "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/merge2": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
+ "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/micromark-util-character": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.1.tgz",
+ "integrity": "sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "GitHub Sponsors",
+ "url": "https://github.com/sponsors/unifiedjs"
+ },
+ {
+ "type": "OpenCollective",
+ "url": "https://opencollective.com/unified"
+ }
+ ],
+ "license": "MIT",
+ "dependencies": {
+ "micromark-util-symbol": "^2.0.0",
+ "micromark-util-types": "^2.0.0"
+ }
+ },
+ "node_modules/micromark-util-encode": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.1.tgz",
+ "integrity": "sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "GitHub Sponsors",
+ "url": "https://github.com/sponsors/unifiedjs"
+ },
+ {
+ "type": "OpenCollective",
+ "url": "https://opencollective.com/unified"
+ }
+ ],
+ "license": "MIT"
+ },
+ "node_modules/micromark-util-sanitize-uri": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.1.tgz",
+ "integrity": "sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "GitHub Sponsors",
+ "url": "https://github.com/sponsors/unifiedjs"
+ },
+ {
+ "type": "OpenCollective",
+ "url": "https://opencollective.com/unified"
+ }
+ ],
+ "license": "MIT",
+ "dependencies": {
+ "micromark-util-character": "^2.0.0",
+ "micromark-util-encode": "^2.0.0",
+ "micromark-util-symbol": "^2.0.0"
+ }
+ },
+ "node_modules/micromark-util-symbol": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.1.tgz",
+ "integrity": "sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "GitHub Sponsors",
+ "url": "https://github.com/sponsors/unifiedjs"
+ },
+ {
+ "type": "OpenCollective",
+ "url": "https://opencollective.com/unified"
+ }
+ ],
+ "license": "MIT"
+ },
+ "node_modules/micromark-util-types": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.1.tgz",
+ "integrity": "sha512-534m2WhVTddrcKVepwmVEVnUAmtrx9bfIjNoQHRqfnvdaHQiFytEhJoTgpWJvDEXCO5gLTQh3wYC1PgOJA4NSQ==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "GitHub Sponsors",
+ "url": "https://github.com/sponsors/unifiedjs"
+ },
+ {
+ "type": "OpenCollective",
+ "url": "https://opencollective.com/unified"
+ }
+ ],
+ "license": "MIT"
+ },
+ "node_modules/micromatch": {
+ "version": "4.0.8",
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz",
+ "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "braces": "^3.0.3",
+ "picomatch": "^2.3.1"
+ },
+ "engines": {
+ "node": ">=8.6"
+ }
+ },
+ "node_modules/mime-db": {
+ "version": "1.52.0",
+ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
+ "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/mime-types": {
+ "version": "2.1.35",
+ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
+ "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
+ "license": "MIT",
+ "dependencies": {
+ "mime-db": "1.52.0"
+ },
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/mimic-fn": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
+ "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/min-indent": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz",
+ "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/minimatch": {
+ "version": "3.0.5",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.5.tgz",
+ "integrity": "sha512-tUpxzX0VAzJHjLu0xUfFv1gwVp9ba3IOuRAVH2EGuRW8a5emA2FlACLqiT/lDVtS1W+TGNwqz3sWaNyLgDJWuw==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "brace-expansion": "^1.1.7"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/minimist": {
+ "version": "1.2.8",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz",
+ "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==",
+ "dev": true,
+ "license": "MIT",
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/minimist-options": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz",
+ "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "arrify": "^1.0.1",
+ "is-plain-obj": "^1.1.0",
+ "kind-of": "^6.0.3"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/minipass": {
+ "version": "7.1.2",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
+ "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==",
+ "dev": true,
+ "license": "ISC",
+ "engines": {
+ "node": ">=16 || 14 >=14.17"
+ }
+ },
+ "node_modules/minipass-collect": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-2.0.1.tgz",
+ "integrity": "sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "minipass": "^7.0.3"
+ },
+ "engines": {
+ "node": ">=16 || 14 >=14.17"
+ }
+ },
+ "node_modules/minipass-fetch": {
+ "version": "3.0.5",
+ "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.5.tgz",
+ "integrity": "sha512-2N8elDQAtSnFV0Dk7gt15KHsS0Fyz6CbYZ360h0WTYV1Ty46li3rAXVOQj1THMNLdmrD9Vt5pBPtWtVkpwGBqg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "minipass": "^7.0.3",
+ "minipass-sized": "^1.0.3",
+ "minizlib": "^2.1.2"
+ },
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ },
+ "optionalDependencies": {
+ "encoding": "^0.1.13"
+ }
+ },
+ "node_modules/minipass-flush": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz",
+ "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "minipass": "^3.0.0"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/minipass-flush/node_modules/minipass": {
+ "version": "3.3.6",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
+ "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "yallist": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/minipass-pipeline": {
+ "version": "1.2.4",
+ "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz",
+ "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "minipass": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/minipass-pipeline/node_modules/minipass": {
+ "version": "3.3.6",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
+ "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "yallist": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/minipass-sized": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz",
+ "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "minipass": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/minipass-sized/node_modules/minipass": {
+ "version": "3.3.6",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
+ "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "yallist": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/minizlib": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz",
+ "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "minipass": "^3.0.0",
+ "yallist": "^4.0.0"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/minizlib/node_modules/minipass": {
+ "version": "3.3.6",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
+ "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "yallist": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/mkdirp": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
+ "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
+ "dev": true,
+ "license": "MIT",
+ "bin": {
+ "mkdirp": "bin/cmd.js"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/modify-values": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/modify-values/-/modify-values-1.0.1.tgz",
+ "integrity": "sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/ms": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
+ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/multimatch": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-5.0.0.tgz",
+ "integrity": "sha512-ypMKuglUrZUD99Tk2bUQ+xNQj43lPEfAeX2o9cTteAmShXy2VHDJpuwu1o0xqoKCt9jLVAvwyFKdLTPXKAfJyA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@types/minimatch": "^3.0.3",
+ "array-differ": "^3.0.0",
+ "array-union": "^2.1.0",
+ "arrify": "^2.0.1",
+ "minimatch": "^3.0.4"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/multimatch/node_modules/arrify": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz",
+ "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/mute-stream": {
+ "version": "0.0.8",
+ "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz",
+ "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/nanoid": {
+ "version": "3.3.7",
+ "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz",
+ "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/ai"
+ }
+ ],
+ "license": "MIT",
+ "bin": {
+ "nanoid": "bin/nanoid.cjs"
+ },
+ "engines": {
+ "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
+ }
+ },
+ "node_modules/negotiator": {
+ "version": "0.6.4",
+ "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.4.tgz",
+ "integrity": "sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/neo-async": {
+ "version": "2.6.2",
+ "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz",
+ "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/next-tick": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz",
+ "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==",
+ "license": "ISC"
+ },
+ "node_modules/node-fetch": {
+ "version": "2.6.7",
+ "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz",
+ "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "whatwg-url": "^5.0.0"
+ },
+ "engines": {
+ "node": "4.x || >=6.0.0"
+ },
+ "peerDependencies": {
+ "encoding": "^0.1.0"
+ },
+ "peerDependenciesMeta": {
+ "encoding": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/node-gyp": {
+ "version": "10.2.0",
+ "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-10.2.0.tgz",
+ "integrity": "sha512-sp3FonBAaFe4aYTcFdZUn2NYkbP7xroPGYvQmP4Nl5PxamznItBnNCgjrVTKrEfQynInMsJvZrdmqUnysCJ8rw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "env-paths": "^2.2.0",
+ "exponential-backoff": "^3.1.1",
+ "glob": "^10.3.10",
+ "graceful-fs": "^4.2.6",
+ "make-fetch-happen": "^13.0.0",
+ "nopt": "^7.0.0",
+ "proc-log": "^4.1.0",
+ "semver": "^7.3.5",
+ "tar": "^6.2.1",
+ "which": "^4.0.0"
+ },
+ "bin": {
+ "node-gyp": "bin/node-gyp.js"
+ },
+ "engines": {
+ "node": "^16.14.0 || >=18.0.0"
+ }
+ },
+ "node_modules/node-gyp-build": {
+ "version": "4.8.3",
+ "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.8.3.tgz",
+ "integrity": "sha512-EMS95CMJzdoSKoIiXo8pxKoL8DYxwIZXYlLmgPb8KUv794abpnLK6ynsCAWNliOjREKruYKdzbh76HHYUHX7nw==",
+ "license": "MIT",
+ "bin": {
+ "node-gyp-build": "bin.js",
+ "node-gyp-build-optional": "optional.js",
+ "node-gyp-build-test": "build-test.js"
+ }
+ },
+ "node_modules/node-machine-id": {
+ "version": "1.1.12",
+ "resolved": "https://registry.npmjs.org/node-machine-id/-/node-machine-id-1.1.12.tgz",
+ "integrity": "sha512-QNABxbrPa3qEIfrE6GOJ7BYIuignnJw7iQ2YPbc3Nla1HzRJjXzZOiikfF8m7eAMfichLt3M4VgLOetqgDmgGQ==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/nopt": {
+ "version": "7.2.1",
+ "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.1.tgz",
+ "integrity": "sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "abbrev": "^2.0.0"
+ },
+ "bin": {
+ "nopt": "bin/nopt.js"
+ },
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/normalize-package-data": {
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.2.tgz",
+ "integrity": "sha512-V6gygoYb/5EmNI+MEGrWkC+e6+Rr7mTmfHrxDbLzxQogBkgzo76rkok0Am6thgSF7Mv2nLOajAJj5vDJZEFn7g==",
+ "dev": true,
+ "license": "BSD-2-Clause",
+ "dependencies": {
+ "hosted-git-info": "^7.0.0",
+ "semver": "^7.3.5",
+ "validate-npm-package-license": "^3.0.4"
+ },
+ "engines": {
+ "node": "^16.14.0 || >=18.0.0"
+ }
+ },
+ "node_modules/npm-bundled": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-3.0.1.tgz",
+ "integrity": "sha512-+AvaheE/ww1JEwRHOrn4WHNzOxGtVp+adrg2AeZS/7KuxGUYFuBta98wYpfHBbJp6Tg6j1NKSEVHNcfZzJHQwQ==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "npm-normalize-package-bin": "^3.0.0"
+ },
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/npm-install-checks": {
+ "version": "6.3.0",
+ "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.3.0.tgz",
+ "integrity": "sha512-W29RiK/xtpCGqn6f3ixfRYGk+zRyr+Ew9F2E20BfXxT5/euLdA/Nm7fO7OeTGuAmTs30cpgInyJ0cYe708YTZw==",
+ "dev": true,
+ "license": "BSD-2-Clause",
+ "dependencies": {
+ "semver": "^7.1.1"
+ },
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/npm-normalize-package-bin": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz",
+ "integrity": "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==",
+ "dev": true,
+ "license": "ISC",
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/npm-package-arg": {
+ "version": "11.0.2",
+ "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-11.0.2.tgz",
+ "integrity": "sha512-IGN0IAwmhDJwy13Wc8k+4PEbTPhpJnMtfR53ZbOyjkvmEcLS4nCwp6mvMWjS5sUjeiW3mpx6cHmuhKEu9XmcQw==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "hosted-git-info": "^7.0.0",
+ "proc-log": "^4.0.0",
+ "semver": "^7.3.5",
+ "validate-npm-package-name": "^5.0.0"
+ },
+ "engines": {
+ "node": "^16.14.0 || >=18.0.0"
+ }
+ },
+ "node_modules/npm-packlist": {
+ "version": "8.0.2",
+ "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-8.0.2.tgz",
+ "integrity": "sha512-shYrPFIS/JLP4oQmAwDyk5HcyysKW8/JLTEA32S0Z5TzvpaeeX2yMFfoK1fjEBnCBvVyIB/Jj/GBFdm0wsgzbA==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "ignore-walk": "^6.0.4"
+ },
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/npm-pick-manifest": {
+ "version": "9.1.0",
+ "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-9.1.0.tgz",
+ "integrity": "sha512-nkc+3pIIhqHVQr085X9d2JzPzLyjzQS96zbruppqC9aZRm/x8xx6xhI98gHtsfELP2bE+loHq8ZaHFHhe+NauA==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "npm-install-checks": "^6.0.0",
+ "npm-normalize-package-bin": "^3.0.0",
+ "npm-package-arg": "^11.0.0",
+ "semver": "^7.3.5"
+ },
+ "engines": {
+ "node": "^16.14.0 || >=18.0.0"
+ }
+ },
+ "node_modules/npm-registry-fetch": {
+ "version": "17.1.0",
+ "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-17.1.0.tgz",
+ "integrity": "sha512-5+bKQRH0J1xG1uZ1zMNvxW0VEyoNWgJpY9UDuluPFLKDfJ9u2JmmjmTJV1srBGQOROfdBMiVvnH2Zvpbm+xkVA==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "@npmcli/redact": "^2.0.0",
+ "jsonparse": "^1.3.1",
+ "make-fetch-happen": "^13.0.0",
+ "minipass": "^7.0.2",
+ "minipass-fetch": "^3.0.0",
+ "minizlib": "^2.1.2",
+ "npm-package-arg": "^11.0.0",
+ "proc-log": "^4.0.0"
+ },
+ "engines": {
+ "node": "^16.14.0 || >=18.0.0"
+ }
+ },
+ "node_modules/npm-run-path": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz",
+ "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "path-key": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/nx": {
+ "version": "20.1.2",
+ "resolved": "https://registry.npmjs.org/nx/-/nx-20.1.2.tgz",
+ "integrity": "sha512-CvjmuQmI0RWLYZxRSIgQZmzsQv6dPp9oI0YZE3L1dagBPfTf5Cun65I0GLt7bdkDnVx2PGYkDbIoJSv2/V+83Q==",
+ "dev": true,
+ "hasInstallScript": true,
+ "license": "MIT",
+ "dependencies": {
+ "@napi-rs/wasm-runtime": "0.2.4",
+ "@yarnpkg/lockfile": "^1.1.0",
+ "@yarnpkg/parsers": "3.0.2",
+ "@zkochan/js-yaml": "0.0.7",
+ "axios": "^1.7.4",
+ "chalk": "^4.1.0",
+ "cli-cursor": "3.1.0",
+ "cli-spinners": "2.6.1",
+ "cliui": "^8.0.1",
+ "dotenv": "~16.4.5",
+ "dotenv-expand": "~11.0.6",
+ "enquirer": "~2.3.6",
+ "figures": "3.2.0",
+ "flat": "^5.0.2",
+ "front-matter": "^4.0.2",
+ "ignore": "^5.0.4",
+ "jest-diff": "^29.4.1",
+ "jsonc-parser": "3.2.0",
+ "lines-and-columns": "2.0.3",
+ "minimatch": "9.0.3",
+ "node-machine-id": "1.1.12",
+ "npm-run-path": "^4.0.1",
+ "open": "^8.4.0",
+ "ora": "5.3.0",
+ "semver": "^7.5.3",
+ "string-width": "^4.2.3",
+ "tar-stream": "~2.2.0",
+ "tmp": "~0.2.1",
+ "tsconfig-paths": "^4.1.2",
+ "tslib": "^2.3.0",
+ "yargs": "^17.6.2",
+ "yargs-parser": "21.1.1"
+ },
+ "bin": {
+ "nx": "bin/nx.js",
+ "nx-cloud": "bin/nx-cloud.js"
+ },
+ "optionalDependencies": {
+ "@nx/nx-darwin-arm64": "20.1.2",
+ "@nx/nx-darwin-x64": "20.1.2",
+ "@nx/nx-freebsd-x64": "20.1.2",
+ "@nx/nx-linux-arm-gnueabihf": "20.1.2",
+ "@nx/nx-linux-arm64-gnu": "20.1.2",
+ "@nx/nx-linux-arm64-musl": "20.1.2",
+ "@nx/nx-linux-x64-gnu": "20.1.2",
+ "@nx/nx-linux-x64-musl": "20.1.2",
+ "@nx/nx-win32-arm64-msvc": "20.1.2",
+ "@nx/nx-win32-x64-msvc": "20.1.2"
+ },
+ "peerDependencies": {
+ "@swc-node/register": "^1.8.0",
+ "@swc/core": "^1.3.85"
+ },
+ "peerDependenciesMeta": {
+ "@swc-node/register": {
+ "optional": true
+ },
+ "@swc/core": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/nx/node_modules/brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "balanced-match": "^1.0.0"
+ }
+ },
+ "node_modules/nx/node_modules/minimatch": {
+ "version": "9.0.3",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz",
+ "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "brace-expansion": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=16 || 14 >=14.17"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/nx/node_modules/ora": {
+ "version": "5.3.0",
+ "resolved": "https://registry.npmjs.org/ora/-/ora-5.3.0.tgz",
+ "integrity": "sha512-zAKMgGXUim0Jyd6CXK9lraBnD3H5yPGBPPOkC23a2BG6hsm4Zu6OQSjQuEtV0BHDf4aKHcUFvJiGRrFuW3MG8g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "bl": "^4.0.3",
+ "chalk": "^4.1.0",
+ "cli-cursor": "^3.1.0",
+ "cli-spinners": "^2.5.0",
+ "is-interactive": "^1.0.0",
+ "log-symbols": "^4.0.0",
+ "strip-ansi": "^6.0.0",
+ "wcwidth": "^1.0.1"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/ollama-ai-provider": {
+ "version": "0.16.1",
+ "resolved": "https://registry.npmjs.org/ollama-ai-provider/-/ollama-ai-provider-0.16.1.tgz",
+ "integrity": "sha512-0vSQVz5Y/LguyzfO4bi1JrrVGF/k2JvO8/uFR0wYmqDFp8KPp4+AhdENSynGBr1oRhMWOM4F1l6cv7UNDgRMjw==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@ai-sdk/provider": "0.0.26",
+ "@ai-sdk/provider-utils": "1.0.22",
+ "partial-json": "0.1.7"
+ },
+ "engines": {
+ "node": ">=18"
+ },
+ "peerDependencies": {
+ "zod": "^3.0.0"
+ },
+ "peerDependenciesMeta": {
+ "zod": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/once": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
+ "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "wrappy": "1"
+ }
+ },
+ "node_modules/onetime": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz",
+ "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "mimic-fn": "^2.1.0"
+ },
+ "engines": {
+ "node": ">=6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/oniguruma-to-es": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/oniguruma-to-es/-/oniguruma-to-es-0.4.1.tgz",
+ "integrity": "sha512-rNcEohFz095QKGRovP/yqPIKc+nP+Sjs4YTHMv33nMePGKrq/r2eu9Yh4646M5XluGJsUnmwoXuiXE69KDs+fQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "emoji-regex-xs": "^1.0.0",
+ "regex": "^5.0.0",
+ "regex-recursion": "^4.2.1"
+ }
+ },
+ "node_modules/only-allow": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/only-allow/-/only-allow-1.2.1.tgz",
+ "integrity": "sha512-M7CJbmv7UCopc0neRKdzfoGWaVZC+xC1925GitKH9EAqYFzX9//25Q7oX4+jw0tiCCj+t5l6VZh8UPH23NZkMA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "which-pm-runs": "^1.1.0"
+ },
+ "bin": {
+ "only-allow": "bin.js"
+ }
+ },
+ "node_modules/open": {
+ "version": "8.4.2",
+ "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz",
+ "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "define-lazy-prop": "^2.0.0",
+ "is-docker": "^2.1.1",
+ "is-wsl": "^2.2.0"
+ },
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/open-jsonrpc-provider": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/open-jsonrpc-provider/-/open-jsonrpc-provider-0.2.1.tgz",
+ "integrity": "sha512-b+pRxakRwAqp+4OTh2TeH+z2zwVGa0C4fbcwIn6JsZdjd4VBmsp7KfCdmmV3XH8diecwXa5UILCw4IwAtk1DTQ==",
+ "license": "ISC",
+ "dependencies": {
+ "axios": "^0.27.2",
+ "reconnecting-websocket": "^4.4.0",
+ "websocket": "^1.0.34",
+ "ws": "^8.8.0"
+ }
+ },
+ "node_modules/open-jsonrpc-provider/node_modules/axios": {
+ "version": "0.27.2",
+ "resolved": "https://registry.npmjs.org/axios/-/axios-0.27.2.tgz",
+ "integrity": "sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==",
+ "license": "MIT",
+ "dependencies": {
+ "follow-redirects": "^1.14.9",
+ "form-data": "^4.0.0"
+ }
+ },
+ "node_modules/optional": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/optional/-/optional-0.1.4.tgz",
+ "integrity": "sha512-gtvrrCfkE08wKcgXaVwQVgwEQ8vel2dc5DDBn9RLQZ3YtmtkBss6A2HY6BnJH4N/4Ku97Ri/SF8sNWE2225WJw==",
+ "license": "MIT"
+ },
+ "node_modules/ora": {
+ "version": "5.4.1",
+ "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz",
+ "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "bl": "^4.1.0",
+ "chalk": "^4.1.0",
+ "cli-cursor": "^3.1.0",
+ "cli-spinners": "^2.5.0",
+ "is-interactive": "^1.0.0",
+ "is-unicode-supported": "^0.1.0",
+ "log-symbols": "^4.1.0",
+ "strip-ansi": "^6.0.0",
+ "wcwidth": "^1.0.1"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/os-tmpdir": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
+ "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/p-finally": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz",
+ "integrity": "sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/p-limit": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
+ "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "p-try": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/p-locate": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
+ "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "p-limit": "^2.2.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/p-map": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz",
+ "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "aggregate-error": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/p-map-series": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/p-map-series/-/p-map-series-2.1.0.tgz",
+ "integrity": "sha512-RpYIIK1zXSNEOdwxcfe7FdvGcs7+y5n8rifMhMNWvaxRNMPINJHF5GDeuVxWqnfrcHPSCnp7Oo5yNXHId9Av2Q==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/p-pipe": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/p-pipe/-/p-pipe-3.1.0.tgz",
+ "integrity": "sha512-08pj8ATpzMR0Y80x50yJHn37NF6vjrqHutASaX5LiH5npS9XPvrUmscd9MF5R4fuYRHOxQR1FfMIlF7AzwoPqw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/p-queue": {
+ "version": "6.6.2",
+ "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-6.6.2.tgz",
+ "integrity": "sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "eventemitter3": "^4.0.4",
+ "p-timeout": "^3.2.0"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/p-reduce": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/p-reduce/-/p-reduce-2.1.0.tgz",
+ "integrity": "sha512-2USApvnsutq8uoxZBGbbWM0JIYLiEMJ9RlaN7fAzVNb9OZN0SHjjTTfIcb667XynS5Y1VhwDJVDa72TnPzAYWw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/p-timeout": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-3.2.0.tgz",
+ "integrity": "sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "p-finally": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/p-try": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
+ "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/p-waterfall": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/p-waterfall/-/p-waterfall-2.1.1.tgz",
+ "integrity": "sha512-RRTnDb2TBG/epPRI2yYXsimO0v3BXC8Yd3ogr1545IaqKK17VGhbWVeGGN+XfCm/08OK8635nH31c8bATkHuSw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "p-reduce": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/package-json-from-dist": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz",
+ "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==",
+ "dev": true,
+ "license": "BlueOak-1.0.0"
+ },
+ "node_modules/pacote": {
+ "version": "18.0.6",
+ "resolved": "https://registry.npmjs.org/pacote/-/pacote-18.0.6.tgz",
+ "integrity": "sha512-+eK3G27SMwsB8kLIuj4h1FUhHtwiEUo21Tw8wNjmvdlpOEr613edv+8FUsTj/4F/VN5ywGE19X18N7CC2EJk6A==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "@npmcli/git": "^5.0.0",
+ "@npmcli/installed-package-contents": "^2.0.1",
+ "@npmcli/package-json": "^5.1.0",
+ "@npmcli/promise-spawn": "^7.0.0",
+ "@npmcli/run-script": "^8.0.0",
+ "cacache": "^18.0.0",
+ "fs-minipass": "^3.0.0",
+ "minipass": "^7.0.2",
+ "npm-package-arg": "^11.0.0",
+ "npm-packlist": "^8.0.0",
+ "npm-pick-manifest": "^9.0.0",
+ "npm-registry-fetch": "^17.0.0",
+ "proc-log": "^4.0.0",
+ "promise-retry": "^2.0.1",
+ "sigstore": "^2.2.0",
+ "ssri": "^10.0.0",
+ "tar": "^6.1.11"
+ },
+ "bin": {
+ "pacote": "bin/index.js"
+ },
+ "engines": {
+ "node": "^16.14.0 || >=18.0.0"
+ }
+ },
+ "node_modules/parent-module": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
+ "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "callsites": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/parse-conflict-json": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/parse-conflict-json/-/parse-conflict-json-3.0.1.tgz",
+ "integrity": "sha512-01TvEktc68vwbJOtWZluyWeVGWjP+bZwXtPDMQVbBKzbJ/vZBif0L69KH1+cHv1SZ6e0FKLvjyHe8mqsIqYOmw==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "json-parse-even-better-errors": "^3.0.0",
+ "just-diff": "^6.0.0",
+ "just-diff-apply": "^5.2.0"
+ },
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/parse-json": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz",
+ "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/code-frame": "^7.0.0",
+ "error-ex": "^1.3.1",
+ "json-parse-even-better-errors": "^2.3.0",
+ "lines-and-columns": "^1.1.6"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/parse-json/node_modules/json-parse-even-better-errors": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
+ "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/parse-json/node_modules/lines-and-columns": {
+ "version": "1.2.4",
+ "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz",
+ "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/parse-path": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/parse-path/-/parse-path-7.0.0.tgz",
+ "integrity": "sha512-Euf9GG8WT9CdqwuWJGdf3RkUcTBArppHABkO7Lm8IzRQp0e2r/kkFnmhu4TSK30Wcu5rVAZLmfPKSBBi9tWFog==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "protocols": "^2.0.0"
+ }
+ },
+ "node_modules/parse-url": {
+ "version": "8.1.0",
+ "resolved": "https://registry.npmjs.org/parse-url/-/parse-url-8.1.0.tgz",
+ "integrity": "sha512-xDvOoLU5XRrcOZvnI6b8zA6n9O9ejNk/GExuz1yBuWUGn9KA97GI6HTs6u02wKara1CeVmZhH+0TZFdWScR89w==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "parse-path": "^7.0.0"
+ }
+ },
+ "node_modules/partial-json": {
+ "version": "0.1.7",
+ "resolved": "https://registry.npmjs.org/partial-json/-/partial-json-0.1.7.tgz",
+ "integrity": "sha512-Njv/59hHaokb/hRUjce3Hdv12wd60MtM9Z5Olmn+nehe0QDAsRtRbJPvJ0Z91TusF0SuZRIvnM+S4l6EIP8leA==",
+ "license": "MIT"
+ },
+ "node_modules/path-exists": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
+ "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/path-key": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
+ "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/path-parse": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
+ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/path-scurry": {
+ "version": "1.11.1",
+ "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz",
+ "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==",
+ "dev": true,
+ "license": "BlueOak-1.0.0",
+ "dependencies": {
+ "lru-cache": "^10.2.0",
+ "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0"
+ },
+ "engines": {
+ "node": ">=16 || 14 >=14.18"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/path-type": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
+ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/picocolors": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz",
+ "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/picomatch": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
+ "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8.6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/jonschlinkert"
+ }
+ },
+ "node_modules/pify": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz",
+ "integrity": "sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/pkg-dir": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
+ "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "find-up": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/postcss-selector-parser": {
+ "version": "6.1.2",
+ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz",
+ "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "cssesc": "^3.0.0",
+ "util-deprecate": "^1.0.2"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/prettier": {
+ "version": "3.3.3",
+ "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz",
+ "integrity": "sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==",
+ "dev": true,
+ "license": "MIT",
+ "bin": {
+ "prettier": "bin/prettier.cjs"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "funding": {
+ "url": "https://github.com/prettier/prettier?sponsor=1"
+ }
+ },
+ "node_modules/pretty-format": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz",
+ "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jest/schemas": "^29.6.3",
+ "ansi-styles": "^5.0.0",
+ "react-is": "^18.0.0"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
+ "node_modules/pretty-format/node_modules/ansi-styles": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz",
+ "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/proc-log": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz",
+ "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==",
+ "dev": true,
+ "license": "ISC",
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/process-nextick-args": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
+ "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/proggy": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/proggy/-/proggy-2.0.0.tgz",
+ "integrity": "sha512-69agxLtnI8xBs9gUGqEnK26UfiexpHy+KUpBQWabiytQjnn5wFY8rklAi7GRfABIuPNnQ/ik48+LGLkYYJcy4A==",
+ "dev": true,
+ "license": "ISC",
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/promise-all-reject-late": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/promise-all-reject-late/-/promise-all-reject-late-1.0.1.tgz",
+ "integrity": "sha512-vuf0Lf0lOxyQREH7GDIOUMLS7kz+gs8i6B+Yi8dC68a2sychGrHTJYghMBD6k7eUcH0H5P73EckCA48xijWqXw==",
+ "dev": true,
+ "license": "ISC",
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/promise-call-limit": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/promise-call-limit/-/promise-call-limit-3.0.2.tgz",
+ "integrity": "sha512-mRPQO2T1QQVw11E7+UdCJu7S61eJVWknzml9sC1heAdj1jxl0fWMBypIt9ZOcLFf8FkG995ZD7RnVk7HH72fZw==",
+ "dev": true,
+ "license": "ISC",
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/promise-inflight": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz",
+ "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/promise-retry": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz",
+ "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "err-code": "^2.0.2",
+ "retry": "^0.12.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/promzard": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/promzard/-/promzard-1.0.2.tgz",
+ "integrity": "sha512-2FPputGL+mP3jJ3UZg/Dl9YOkovB7DX0oOr+ck5QbZ5MtORtds8k/BZdn+02peDLI8/YWbmzx34k5fA+fHvCVQ==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "read": "^3.0.1"
+ },
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/property-information": {
+ "version": "6.5.0",
+ "resolved": "https://registry.npmjs.org/property-information/-/property-information-6.5.0.tgz",
+ "integrity": "sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==",
+ "dev": true,
+ "license": "MIT",
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/wooorm"
+ }
+ },
+ "node_modules/protocols": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/protocols/-/protocols-2.0.1.tgz",
+ "integrity": "sha512-/XJ368cyBJ7fzLMwLKv1e4vLxOju2MNAIokcr7meSaNcVbWz/CPcW22cP04mwxOErdA5mwjA8Q6w/cdAQxVn7Q==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/proxy-from-env": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz",
+ "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/punycode.js": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/punycode.js/-/punycode.js-2.3.1.tgz",
+ "integrity": "sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/queue-microtask": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
+ "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "license": "MIT"
+ },
+ "node_modules/quick-lru": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz",
+ "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/react-is": {
+ "version": "18.3.1",
+ "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz",
+ "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/read": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/read/-/read-3.0.1.tgz",
+ "integrity": "sha512-SLBrDU/Srs/9EoWhU5GdbAoxG1GzpQHo/6qiGItaoLJ1thmYpcNIM1qISEUvyHBzfGlWIyd6p2DNi1oV1VmAuw==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "mute-stream": "^1.0.0"
+ },
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/read-cmd-shim": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/read-cmd-shim/-/read-cmd-shim-4.0.0.tgz",
+ "integrity": "sha512-yILWifhaSEEytfXI76kB9xEEiG1AiozaCJZ83A87ytjRiN+jVibXjedjCRNjoZviinhG+4UkalO3mWTd8u5O0Q==",
+ "dev": true,
+ "license": "ISC",
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/read-package-json-fast": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-3.0.2.tgz",
+ "integrity": "sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "json-parse-even-better-errors": "^3.0.0",
+ "npm-normalize-package-bin": "^3.0.0"
+ },
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/read-pkg": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz",
+ "integrity": "sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "load-json-file": "^4.0.0",
+ "normalize-package-data": "^2.3.2",
+ "path-type": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/read-pkg-up": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz",
+ "integrity": "sha512-YFzFrVvpC6frF1sz8psoHDBGF7fLPc+llq/8NB43oagqWkx8ar5zYtsTORtOjw9W2RHLpWP+zTWwBvf1bCmcSw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "find-up": "^2.0.0",
+ "read-pkg": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/read-pkg-up/node_modules/find-up": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz",
+ "integrity": "sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "locate-path": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/read-pkg-up/node_modules/locate-path": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz",
+ "integrity": "sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "p-locate": "^2.0.0",
+ "path-exists": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/read-pkg-up/node_modules/p-limit": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz",
+ "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "p-try": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/read-pkg-up/node_modules/p-locate": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz",
+ "integrity": "sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "p-limit": "^1.1.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/read-pkg-up/node_modules/p-try": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz",
+ "integrity": "sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/read-pkg-up/node_modules/path-exists": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
+ "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/read-pkg/node_modules/hosted-git-info": {
+ "version": "2.8.9",
+ "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz",
+ "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/read-pkg/node_modules/load-json-file": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz",
+ "integrity": "sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "graceful-fs": "^4.1.2",
+ "parse-json": "^4.0.0",
+ "pify": "^3.0.0",
+ "strip-bom": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/read-pkg/node_modules/normalize-package-data": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
+ "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==",
+ "dev": true,
+ "license": "BSD-2-Clause",
+ "dependencies": {
+ "hosted-git-info": "^2.1.4",
+ "resolve": "^1.10.0",
+ "semver": "2 || 3 || 4 || 5",
+ "validate-npm-package-license": "^3.0.1"
+ }
+ },
+ "node_modules/read-pkg/node_modules/parse-json": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz",
+ "integrity": "sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "error-ex": "^1.3.1",
+ "json-parse-better-errors": "^1.0.1"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/read-pkg/node_modules/path-type": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz",
+ "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "pify": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/read-pkg/node_modules/pify": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
+ "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/read-pkg/node_modules/semver": {
+ "version": "5.7.2",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
+ "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
+ "dev": true,
+ "license": "ISC",
+ "bin": {
+ "semver": "bin/semver"
+ }
+ },
+ "node_modules/read-pkg/node_modules/strip-bom": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
+ "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/read/node_modules/mute-stream": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-1.0.0.tgz",
+ "integrity": "sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA==",
+ "dev": true,
+ "license": "ISC",
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/readable-stream": {
+ "version": "3.6.2",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
+ "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "inherits": "^2.0.3",
+ "string_decoder": "^1.1.1",
+ "util-deprecate": "^1.0.1"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "node_modules/reconnecting-websocket": {
+ "version": "4.4.0",
+ "resolved": "https://registry.npmjs.org/reconnecting-websocket/-/reconnecting-websocket-4.4.0.tgz",
+ "integrity": "sha512-D2E33ceRPga0NvTDhJmphEgJ7FUYF0v4lr1ki0csq06OdlxKfugGzN0dSkxM/NfqCxYELK4KcaTOUOjTV6Dcng==",
+ "license": "MIT"
+ },
+ "node_modules/redent": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz",
+ "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "indent-string": "^4.0.0",
+ "strip-indent": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/regex": {
+ "version": "5.0.2",
+ "resolved": "https://registry.npmjs.org/regex/-/regex-5.0.2.tgz",
+ "integrity": "sha512-/pczGbKIQgfTMRV0XjABvc5RzLqQmwqxLHdQao2RTXPk+pmTXB2P0IaUHYdYyk412YLwUIkaeMd5T+RzVgTqnQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "regex-utilities": "^2.3.0"
+ }
+ },
+ "node_modules/regex-recursion": {
+ "version": "4.2.1",
+ "resolved": "https://registry.npmjs.org/regex-recursion/-/regex-recursion-4.2.1.tgz",
+ "integrity": "sha512-QHNZyZAeKdndD1G3bKAbBEKOSSK4KOHQrAJ01N1LJeb0SoH4DJIeFhp0uUpETgONifS4+P3sOgoA1dhzgrQvhA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "regex-utilities": "^2.3.0"
+ }
+ },
+ "node_modules/regex-utilities": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/regex-utilities/-/regex-utilities-2.3.0.tgz",
+ "integrity": "sha512-8VhliFJAWRaUiVvREIiW2NXXTmHs4vMNnSzuJVhscgmGav3g9VDxLrQndI3dZZVVdp0ZO/5v0xmX516/7M9cng==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/require-directory": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
+ "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/resolve": {
+ "version": "1.22.8",
+ "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz",
+ "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "is-core-module": "^2.13.0",
+ "path-parse": "^1.0.7",
+ "supports-preserve-symlinks-flag": "^1.0.0"
+ },
+ "bin": {
+ "resolve": "bin/resolve"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/resolve-cwd": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz",
+ "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "resolve-from": "^5.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/resolve-from": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
+ "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/restore-cursor": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz",
+ "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "onetime": "^5.1.0",
+ "signal-exit": "^3.0.2"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/retry": {
+ "version": "0.12.0",
+ "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz",
+ "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 4"
+ }
+ },
+ "node_modules/reusify": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
+ "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "iojs": ">=1.0.0",
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/rimraf": {
+ "version": "4.4.1",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.4.1.tgz",
+ "integrity": "sha512-Gk8NlF062+T9CqNGn6h4tls3k6T1+/nXdOcSZVikNVtlRdYpA7wRJJMoXmuvOnLW844rPjdQ7JgXCYM6PPC/og==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "glob": "^9.2.0"
+ },
+ "bin": {
+ "rimraf": "dist/cjs/src/bin.js"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/rimraf/node_modules/brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "balanced-match": "^1.0.0"
+ }
+ },
+ "node_modules/rimraf/node_modules/glob": {
+ "version": "9.3.5",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.5.tgz",
+ "integrity": "sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "fs.realpath": "^1.0.0",
+ "minimatch": "^8.0.2",
+ "minipass": "^4.2.4",
+ "path-scurry": "^1.6.1"
+ },
+ "engines": {
+ "node": ">=16 || 14 >=14.17"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/rimraf/node_modules/minimatch": {
+ "version": "8.0.4",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.4.tgz",
+ "integrity": "sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "brace-expansion": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=16 || 14 >=14.17"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/rimraf/node_modules/minipass": {
+ "version": "4.2.8",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.8.tgz",
+ "integrity": "sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ==",
+ "dev": true,
+ "license": "ISC",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/run-async": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz",
+ "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.12.0"
+ }
+ },
+ "node_modules/run-parallel": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
+ "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "license": "MIT",
+ "dependencies": {
+ "queue-microtask": "^1.2.2"
+ }
+ },
+ "node_modules/rxjs": {
+ "version": "7.8.1",
+ "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz",
+ "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "tslib": "^2.1.0"
+ }
+ },
+ "node_modules/safe-buffer": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "license": "MIT"
+ },
+ "node_modules/safer-buffer": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
+ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/secure-json-parse": {
+ "version": "2.7.0",
+ "resolved": "https://registry.npmjs.org/secure-json-parse/-/secure-json-parse-2.7.0.tgz",
+ "integrity": "sha512-6aU+Rwsezw7VR8/nyvKTx8QpWH9FrcYiXXlqC4z5d5XQBDRqtbfsRjnwGyqbi3gddNtWHuEk9OANUotL26qKUw==",
+ "license": "BSD-3-Clause"
+ },
+ "node_modules/semver": {
+ "version": "7.6.3",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz",
+ "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
+ "license": "ISC",
+ "bin": {
+ "semver": "bin/semver.js"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/set-blocking": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
+ "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/shallow-clone": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz",
+ "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "kind-of": "^6.0.2"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/sharp": {
+ "version": "0.33.5",
+ "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.33.5.tgz",
+ "integrity": "sha512-haPVm1EkS9pgvHrQ/F3Xy+hgcuMV0Wm9vfIBSiwZ05k+xgb0PkBQpGsAA/oWdDobNaZTH5ppvHtzCFbnSEwHVw==",
+ "hasInstallScript": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "color": "^4.2.3",
+ "detect-libc": "^2.0.3",
+ "semver": "^7.6.3"
+ },
+ "engines": {
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ },
+ "optionalDependencies": {
+ "@img/sharp-darwin-arm64": "0.33.5",
+ "@img/sharp-darwin-x64": "0.33.5",
+ "@img/sharp-libvips-darwin-arm64": "1.0.4",
+ "@img/sharp-libvips-darwin-x64": "1.0.4",
+ "@img/sharp-libvips-linux-arm": "1.0.5",
+ "@img/sharp-libvips-linux-arm64": "1.0.4",
+ "@img/sharp-libvips-linux-s390x": "1.0.4",
+ "@img/sharp-libvips-linux-x64": "1.0.4",
+ "@img/sharp-libvips-linuxmusl-arm64": "1.0.4",
+ "@img/sharp-libvips-linuxmusl-x64": "1.0.4",
+ "@img/sharp-linux-arm": "0.33.5",
+ "@img/sharp-linux-arm64": "0.33.5",
+ "@img/sharp-linux-s390x": "0.33.5",
+ "@img/sharp-linux-x64": "0.33.5",
+ "@img/sharp-linuxmusl-arm64": "0.33.5",
+ "@img/sharp-linuxmusl-x64": "0.33.5",
+ "@img/sharp-wasm32": "0.33.5",
+ "@img/sharp-win32-ia32": "0.33.5",
+ "@img/sharp-win32-x64": "0.33.5"
+ }
+ },
+ "node_modules/shebang-command": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
+ "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "shebang-regex": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/shebang-regex": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
+ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/shell-quote": {
+ "version": "1.8.1",
+ "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz",
+ "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==",
+ "dev": true,
+ "license": "MIT",
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/shiki": {
+ "version": "1.23.1",
+ "resolved": "https://registry.npmjs.org/shiki/-/shiki-1.23.1.tgz",
+ "integrity": "sha512-8kxV9TH4pXgdKGxNOkrSMydn1Xf6It8lsle0fiqxf7a1149K1WGtdOu3Zb91T5r1JpvRPxqxU3C2XdZZXQnrig==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@shikijs/core": "1.23.1",
+ "@shikijs/engine-javascript": "1.23.1",
+ "@shikijs/engine-oniguruma": "1.23.1",
+ "@shikijs/types": "1.23.1",
+ "@shikijs/vscode-textmate": "^9.3.0",
+ "@types/hast": "^3.0.4"
+ }
+ },
+ "node_modules/signal-exit": {
+ "version": "3.0.7",
+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz",
+ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/sigstore": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-2.3.1.tgz",
+ "integrity": "sha512-8G+/XDU8wNsJOQS5ysDVO0Etg9/2uA5gR9l4ZwijjlwxBcrU6RPfwi2+jJmbP+Ap1Hlp/nVAaEO4Fj22/SL2gQ==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@sigstore/bundle": "^2.3.2",
+ "@sigstore/core": "^1.0.0",
+ "@sigstore/protobuf-specs": "^0.3.2",
+ "@sigstore/sign": "^2.3.2",
+ "@sigstore/tuf": "^2.3.4",
+ "@sigstore/verify": "^1.2.1"
+ },
+ "engines": {
+ "node": "^16.14.0 || >=18.0.0"
+ }
+ },
+ "node_modules/simple-swizzle": {
+ "version": "0.2.2",
+ "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz",
+ "integrity": "sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==",
+ "license": "MIT",
+ "dependencies": {
+ "is-arrayish": "^0.3.1"
+ }
+ },
+ "node_modules/simple-swizzle/node_modules/is-arrayish": {
+ "version": "0.3.2",
+ "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz",
+ "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==",
+ "license": "MIT"
+ },
+ "node_modules/slash": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz",
+ "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/smart-buffer": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz",
+ "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 6.0.0",
+ "npm": ">= 3.0.0"
+ }
+ },
+ "node_modules/socks": {
+ "version": "2.8.3",
+ "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.3.tgz",
+ "integrity": "sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ip-address": "^9.0.5",
+ "smart-buffer": "^4.2.0"
+ },
+ "engines": {
+ "node": ">= 10.0.0",
+ "npm": ">= 3.0.0"
+ }
+ },
+ "node_modules/socks-proxy-agent": {
+ "version": "8.0.4",
+ "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.4.tgz",
+ "integrity": "sha512-GNAq/eg8Udq2x0eNiFkr9gRg5bA7PXEWagQdeRX4cPSG+X/8V38v637gim9bjFptMk1QWsCTr0ttrJEiXbNnRw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "agent-base": "^7.1.1",
+ "debug": "^4.3.4",
+ "socks": "^2.8.3"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/sort-keys": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-2.0.0.tgz",
+ "integrity": "sha512-/dPCrG1s3ePpWm6yBbxZq5Be1dXGLyLn9Z791chDC3NFrpkVbWGzkBwPN1knaciexFXgRJ7hzdnwZ4stHSDmjg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "is-plain-obj": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "license": "BSD-3-Clause",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/space-separated-tokens": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz",
+ "integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==",
+ "dev": true,
+ "license": "MIT",
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/wooorm"
+ }
+ },
+ "node_modules/spdx-correct": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz",
+ "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "spdx-expression-parse": "^3.0.0",
+ "spdx-license-ids": "^3.0.0"
+ }
+ },
+ "node_modules/spdx-exceptions": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz",
+ "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==",
+ "dev": true,
+ "license": "CC-BY-3.0"
+ },
+ "node_modules/spdx-expression-parse": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz",
+ "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "spdx-exceptions": "^2.1.0",
+ "spdx-license-ids": "^3.0.0"
+ }
+ },
+ "node_modules/spdx-license-ids": {
+ "version": "3.0.20",
+ "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.20.tgz",
+ "integrity": "sha512-jg25NiDV/1fLtSgEgyvVyDunvaNHbuwF9lfNV17gSmPFAlYzdfNBlLtLzXTevwkPj7DhGbmN9VnmJIgLnhvaBw==",
+ "dev": true,
+ "license": "CC0-1.0"
+ },
+ "node_modules/split": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz",
+ "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "through": "2"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/split2": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz",
+ "integrity": "sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "readable-stream": "^3.0.0"
+ }
+ },
+ "node_modules/sprintf-js": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz",
+ "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==",
+ "dev": true,
+ "license": "BSD-3-Clause"
+ },
+ "node_modules/ssri": {
+ "version": "10.0.6",
+ "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.6.tgz",
+ "integrity": "sha512-MGrFH9Z4NP9Iyhqn16sDtBpRRNJ0Y2hNa6D65h736fVSaPCHr4DM4sWUNvVaSuC+0OBGhwsrydQwmgfg5LncqQ==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "minipass": "^7.0.3"
+ },
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/string_decoder": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
+ "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "safe-buffer": "~5.2.0"
+ }
+ },
+ "node_modules/string-width": {
+ "version": "4.2.3",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
+ "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "emoji-regex": "^8.0.0",
+ "is-fullwidth-code-point": "^3.0.0",
+ "strip-ansi": "^6.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/string-width-cjs": {
+ "name": "string-width",
+ "version": "4.2.3",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
+ "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "emoji-regex": "^8.0.0",
+ "is-fullwidth-code-point": "^3.0.0",
+ "strip-ansi": "^6.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/stringify-entities": {
+ "version": "4.0.4",
+ "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.4.tgz",
+ "integrity": "sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "character-entities-html4": "^2.0.0",
+ "character-entities-legacy": "^3.0.0"
+ },
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/wooorm"
+ }
+ },
+ "node_modules/strip-ansi": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
+ "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ansi-regex": "^5.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/strip-ansi-cjs": {
+ "name": "strip-ansi",
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
+ "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ansi-regex": "^5.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/strip-bom": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz",
+ "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/strip-final-newline": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz",
+ "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/strip-indent": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz",
+ "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "min-indent": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/strong-log-transformer": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/strong-log-transformer/-/strong-log-transformer-2.1.0.tgz",
+ "integrity": "sha512-B3Hgul+z0L9a236FAUC9iZsL+nVHgoCJnqCbN588DjYxvGXaXaaFbfmQ/JhvKjZwsOukuR72XbHv71Qkug0HxA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "duplexer": "^0.1.1",
+ "minimist": "^1.2.0",
+ "through": "^2.3.4"
+ },
+ "bin": {
+ "sl-log-transformer": "bin/sl-log-transformer.js"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/supports-color": {
+ "version": "8.1.1",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz",
+ "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/supports-color?sponsor=1"
+ }
+ },
+ "node_modules/supports-preserve-symlinks-flag": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
+ "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
+ "node_modules/tar": {
+ "version": "6.2.1",
+ "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz",
+ "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "chownr": "^2.0.0",
+ "fs-minipass": "^2.0.0",
+ "minipass": "^5.0.0",
+ "minizlib": "^2.1.1",
+ "mkdirp": "^1.0.3",
+ "yallist": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/tar-stream": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz",
+ "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "bl": "^4.0.3",
+ "end-of-stream": "^1.4.1",
+ "fs-constants": "^1.0.0",
+ "inherits": "^2.0.3",
+ "readable-stream": "^3.1.1"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/tar/node_modules/fs-minipass": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz",
+ "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "minipass": "^3.0.0"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/tar/node_modules/fs-minipass/node_modules/minipass": {
+ "version": "3.3.6",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
+ "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "yallist": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/tar/node_modules/minipass": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz",
+ "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==",
+ "dev": true,
+ "license": "ISC",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/temp-dir": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz",
+ "integrity": "sha512-xZFXEGbG7SNC3itwBzI3RYjq/cEhBkx2hJuKGIUOcEULmkQExXiHat2z/qkISYsuR+IKumhEfKKbV5qXmhICFQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/text-extensions": {
+ "version": "1.9.0",
+ "resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-1.9.0.tgz",
+ "integrity": "sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.10"
+ }
+ },
+ "node_modules/through": {
+ "version": "2.3.8",
+ "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
+ "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/through2": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz",
+ "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "readable-stream": "~2.3.6",
+ "xtend": "~4.0.1"
+ }
+ },
+ "node_modules/through2/node_modules/readable-stream": {
+ "version": "2.3.8",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz",
+ "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "core-util-is": "~1.0.0",
+ "inherits": "~2.0.3",
+ "isarray": "~1.0.0",
+ "process-nextick-args": "~2.0.0",
+ "safe-buffer": "~5.1.1",
+ "string_decoder": "~1.1.1",
+ "util-deprecate": "~1.0.1"
+ }
+ },
+ "node_modules/through2/node_modules/safe-buffer": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
+ "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/through2/node_modules/string_decoder": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
+ "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "safe-buffer": "~5.1.0"
+ }
+ },
+ "node_modules/tmp": {
+ "version": "0.2.3",
+ "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.3.tgz",
+ "integrity": "sha512-nZD7m9iCPC5g0pYmcaxogYKggSfLsdxl8of3Q/oIbqCqLLIO9IAF0GWjX1z9NZRHPiXv8Wex4yDCaZsgEw0Y8w==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=14.14"
+ }
+ },
+ "node_modules/to-regex-range": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
+ "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "is-number": "^7.0.0"
+ },
+ "engines": {
+ "node": ">=8.0"
+ }
+ },
+ "node_modules/tr46": {
+ "version": "0.0.3",
+ "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
+ "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/tree-kill": {
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz",
+ "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==",
+ "dev": true,
+ "license": "MIT",
+ "bin": {
+ "tree-kill": "cli.js"
+ }
+ },
+ "node_modules/treeverse": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/treeverse/-/treeverse-3.0.0.tgz",
+ "integrity": "sha512-gcANaAnd2QDZFmHFEOF4k7uc1J/6a6z3DJMd/QwEyxLoKGiptJRwid582r7QIsFlFMIZ3SnxfS52S4hm2DHkuQ==",
+ "dev": true,
+ "license": "ISC",
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/trim-lines": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/trim-lines/-/trim-lines-3.0.1.tgz",
+ "integrity": "sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==",
+ "dev": true,
+ "license": "MIT",
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/wooorm"
+ }
+ },
+ "node_modules/trim-newlines": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz",
+ "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/tsconfig-paths": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-4.2.0.tgz",
+ "integrity": "sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "json5": "^2.2.2",
+ "minimist": "^1.2.6",
+ "strip-bom": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/tsconfig-paths/node_modules/strip-bom": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
+ "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/tslib": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.0.tgz",
+ "integrity": "sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==",
+ "license": "0BSD"
+ },
+ "node_modules/tuf-js": {
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-2.2.1.tgz",
+ "integrity": "sha512-GwIJau9XaA8nLVbUXsN3IlFi7WmQ48gBUrl3FTkkL/XLu/POhBzfmX9hd33FNMX1qAsfl6ozO1iMmW9NC8YniA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@tufjs/models": "2.0.1",
+ "debug": "^4.3.4",
+ "make-fetch-happen": "^13.0.1"
+ },
+ "engines": {
+ "node": "^16.14.0 || >=18.0.0"
+ }
+ },
+ "node_modules/type": {
+ "version": "2.7.3",
+ "resolved": "https://registry.npmjs.org/type/-/type-2.7.3.tgz",
+ "integrity": "sha512-8j+1QmAbPvLZow5Qpi6NCaN8FB60p/6x8/vfNqOk/hC+HuvFZhL4+WfekuhQLiqFZXOgQdrs3B+XxEmCc6b3FQ==",
+ "license": "ISC"
+ },
+ "node_modules/type-fest": {
+ "version": "0.21.3",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz",
+ "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==",
+ "dev": true,
+ "license": "(MIT OR CC0-1.0)",
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/typedarray": {
+ "version": "0.0.6",
+ "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
+ "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/typedarray-to-buffer": {
+ "version": "3.1.5",
+ "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz",
+ "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==",
+ "license": "MIT",
+ "dependencies": {
+ "is-typedarray": "^1.0.0"
+ }
+ },
+ "node_modules/typedoc": {
+ "version": "0.26.11",
+ "resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.26.11.tgz",
+ "integrity": "sha512-sFEgRRtrcDl2FxVP58Ze++ZK2UQAEvtvvH8rRlig1Ja3o7dDaMHmaBfvJmdGnNEFaLTpQsN8dpvZaTqJSu/Ugw==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "lunr": "^2.3.9",
+ "markdown-it": "^14.1.0",
+ "minimatch": "^9.0.5",
+ "shiki": "^1.16.2",
+ "yaml": "^2.5.1"
+ },
+ "bin": {
+ "typedoc": "bin/typedoc"
+ },
+ "engines": {
+ "node": ">= 18"
+ },
+ "peerDependencies": {
+ "typescript": "4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x || 5.1.x || 5.2.x || 5.3.x || 5.4.x || 5.5.x || 5.6.x"
+ }
+ },
+ "node_modules/typedoc/node_modules/brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "balanced-match": "^1.0.0"
+ }
+ },
+ "node_modules/typedoc/node_modules/minimatch": {
+ "version": "9.0.5",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
+ "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "brace-expansion": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=16 || 14 >=14.17"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/typescript": {
+ "version": "5.6.3",
+ "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.3.tgz",
+ "integrity": "sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "bin": {
+ "tsc": "bin/tsc",
+ "tsserver": "bin/tsserver"
+ },
+ "engines": {
+ "node": ">=14.17"
+ }
+ },
+ "node_modules/uc.micro": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-2.1.0.tgz",
+ "integrity": "sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/uglify-js": {
+ "version": "3.19.3",
+ "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.19.3.tgz",
+ "integrity": "sha512-v3Xu+yuwBXisp6QYTcH4UbH+xYJXqnq2m/LtQVWKWzYc1iehYnLixoQDN9FH6/j9/oybfd6W9Ghwkl8+UMKTKQ==",
+ "dev": true,
+ "license": "BSD-2-Clause",
+ "optional": true,
+ "bin": {
+ "uglifyjs": "bin/uglifyjs"
+ },
+ "engines": {
+ "node": ">=0.8.0"
+ }
+ },
+ "node_modules/unique-filename": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz",
+ "integrity": "sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "unique-slug": "^4.0.0"
+ },
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/unique-slug": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz",
+ "integrity": "sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "imurmurhash": "^0.1.4"
+ },
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/unist-util-is": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz",
+ "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@types/unist": "^3.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/unified"
+ }
+ },
+ "node_modules/unist-util-position": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-5.0.0.tgz",
+ "integrity": "sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@types/unist": "^3.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/unified"
+ }
+ },
+ "node_modules/unist-util-stringify-position": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz",
+ "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@types/unist": "^3.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/unified"
+ }
+ },
+ "node_modules/unist-util-visit": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz",
+ "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@types/unist": "^3.0.0",
+ "unist-util-is": "^6.0.0",
+ "unist-util-visit-parents": "^6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/unified"
+ }
+ },
+ "node_modules/unist-util-visit-parents": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz",
+ "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@types/unist": "^3.0.0",
+ "unist-util-is": "^6.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/unified"
+ }
+ },
+ "node_modules/universal-user-agent": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.1.tgz",
+ "integrity": "sha512-yCzhz6FN2wU1NiiQRogkTQszlQSlpWaw8SvVegAc+bDxbzHgh1vX8uIe8OYyMH6DwH+sdTJsgMl36+mSMdRJIQ==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/universalify": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz",
+ "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 10.0.0"
+ }
+ },
+ "node_modules/upath": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/upath/-/upath-2.0.1.tgz",
+ "integrity": "sha512-1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=4",
+ "yarn": "*"
+ }
+ },
+ "node_modules/utf-8-validate": {
+ "version": "5.0.10",
+ "resolved": "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-5.0.10.tgz",
+ "integrity": "sha512-Z6czzLq4u8fPOyx7TU6X3dvUZVvoJmxSQ+IcrlmagKhilxlhZgxPK6C5Jqbkw1IDUmFTM+cz9QDnnLTwDz/2gQ==",
+ "hasInstallScript": true,
+ "license": "MIT",
+ "dependencies": {
+ "node-gyp-build": "^4.3.0"
+ },
+ "engines": {
+ "node": ">=6.14.2"
+ }
+ },
+ "node_modules/util-deprecate": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
+ "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/uuid": {
+ "version": "10.0.0",
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-10.0.0.tgz",
+ "integrity": "sha512-8XkAphELsDnEGrDxUOHB3RGvXz6TeuYSGEZBOjtTtPm2lwhGBjLgOzLHB63IUWfBpNucQjND6d3AOudO+H3RWQ==",
+ "dev": true,
+ "funding": [
+ "https://github.com/sponsors/broofa",
+ "https://github.com/sponsors/ctavan"
+ ],
+ "license": "MIT",
+ "bin": {
+ "uuid": "dist/bin/uuid"
+ }
+ },
+ "node_modules/validate-npm-package-license": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz",
+ "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "spdx-correct": "^3.0.0",
+ "spdx-expression-parse": "^3.0.0"
+ }
+ },
+ "node_modules/validate-npm-package-name": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.1.tgz",
+ "integrity": "sha512-OljLrQ9SQdOUqTaQxqL5dEfZWrXExyyWsozYlAWFawPVNuD83igl7uJD2RTkNMbniIYgt8l81eCJGIdQF7avLQ==",
+ "dev": true,
+ "license": "ISC",
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/vfile": {
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz",
+ "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@types/unist": "^3.0.0",
+ "vfile-message": "^4.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/unified"
+ }
+ },
+ "node_modules/vfile-message": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.2.tgz",
+ "integrity": "sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@types/unist": "^3.0.0",
+ "unist-util-stringify-position": "^4.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/unified"
+ }
+ },
+ "node_modules/walk-up-path": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/walk-up-path/-/walk-up-path-3.0.1.tgz",
+ "integrity": "sha512-9YlCL/ynK3CTlrSRrDxZvUauLzAswPCrsaCgilqFevUYpeEW0/3ScEjaa3kbW/T0ghhkEr7mv+fpjqn1Y1YuTA==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/wcwidth": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz",
+ "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "defaults": "^1.0.3"
+ }
+ },
+ "node_modules/webidl-conversions": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
+ "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==",
+ "dev": true,
+ "license": "BSD-2-Clause"
+ },
+ "node_modules/websocket": {
+ "version": "1.0.35",
+ "resolved": "https://registry.npmjs.org/websocket/-/websocket-1.0.35.tgz",
+ "integrity": "sha512-/REy6amwPZl44DDzvRCkaI1q1bIiQB0mEFQLUrhz3z2EK91cp3n72rAjUlrTP0zV22HJIUOVHQGPxhFRjxjt+Q==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "bufferutil": "^4.0.1",
+ "debug": "^2.2.0",
+ "es5-ext": "^0.10.63",
+ "typedarray-to-buffer": "^3.1.5",
+ "utf-8-validate": "^5.0.2",
+ "yaeti": "^0.0.6"
+ },
+ "engines": {
+ "node": ">=4.0.0"
+ }
+ },
+ "node_modules/websocket/node_modules/debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "license": "MIT",
+ "dependencies": {
+ "ms": "2.0.0"
+ }
+ },
+ "node_modules/websocket/node_modules/ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
+ "license": "MIT"
+ },
+ "node_modules/whatwg-url": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
+ "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "tr46": "~0.0.3",
+ "webidl-conversions": "^3.0.0"
+ }
+ },
+ "node_modules/which": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz",
+ "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "isexe": "^3.1.1"
+ },
+ "bin": {
+ "node-which": "bin/which.js"
+ },
+ "engines": {
+ "node": "^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/which-pm-runs": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/which-pm-runs/-/which-pm-runs-1.1.0.tgz",
+ "integrity": "sha512-n1brCuqClxfFfq/Rb0ICg9giSZqCS+pLtccdag6C2HyufBrh3fBOiy9nb6ggRMvWOVH5GrdJskj5iGTZNxd7SA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/wide-align": {
+ "version": "1.1.5",
+ "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz",
+ "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "string-width": "^1.0.2 || 2 || 3 || 4"
+ }
+ },
+ "node_modules/wordwrap": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz",
+ "integrity": "sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/wrap-ansi": {
+ "version": "6.2.0",
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz",
+ "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ansi-styles": "^4.0.0",
+ "string-width": "^4.1.0",
+ "strip-ansi": "^6.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/wrap-ansi-cjs": {
+ "name": "wrap-ansi",
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
+ "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ansi-styles": "^4.0.0",
+ "string-width": "^4.1.0",
+ "strip-ansi": "^6.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
+ }
+ },
+ "node_modules/wrappy": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
+ "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/write-file-atomic": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz",
+ "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "imurmurhash": "^0.1.4",
+ "signal-exit": "^4.0.1"
+ },
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/write-file-atomic/node_modules/signal-exit": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz",
+ "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==",
+ "dev": true,
+ "license": "ISC",
+ "engines": {
+ "node": ">=14"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/write-json-file": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/write-json-file/-/write-json-file-3.2.0.tgz",
+ "integrity": "sha512-3xZqT7Byc2uORAatYiP3DHUUAVEkNOswEWNs9H5KXiicRTvzYzYqKjYc4G7p+8pltvAw641lVByKVtMpf+4sYQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "detect-indent": "^5.0.0",
+ "graceful-fs": "^4.1.15",
+ "make-dir": "^2.1.0",
+ "pify": "^4.0.1",
+ "sort-keys": "^2.0.0",
+ "write-file-atomic": "^2.4.2"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/write-json-file/node_modules/make-dir": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz",
+ "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "pify": "^4.0.1",
+ "semver": "^5.6.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/write-json-file/node_modules/pify": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz",
+ "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/write-json-file/node_modules/semver": {
+ "version": "5.7.2",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
+ "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
+ "dev": true,
+ "license": "ISC",
+ "bin": {
+ "semver": "bin/semver"
+ }
+ },
+ "node_modules/write-json-file/node_modules/write-file-atomic": {
+ "version": "2.4.3",
+ "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz",
+ "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "graceful-fs": "^4.1.11",
+ "imurmurhash": "^0.1.4",
+ "signal-exit": "^3.0.2"
+ }
+ },
+ "node_modules/write-pkg": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/write-pkg/-/write-pkg-4.0.0.tgz",
+ "integrity": "sha512-v2UQ+50TNf2rNHJ8NyWttfm/EJUBWMJcx6ZTYZr6Qp52uuegWw/lBkCtCbnYZEmPRNL61m+u67dAmGxo+HTULA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "sort-keys": "^2.0.0",
+ "type-fest": "^0.4.1",
+ "write-json-file": "^3.2.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/write-pkg/node_modules/type-fest": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.4.1.tgz",
+ "integrity": "sha512-IwzA/LSfD2vC1/YDYMv/zHP4rDF1usCwllsDpbolT3D4fUepIO7f9K70jjmUewU/LmGUKJcwcVtDCpnKk4BPMw==",
+ "dev": true,
+ "license": "(MIT OR CC0-1.0)",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/ws": {
+ "version": "8.17.1",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.17.1.tgz",
+ "integrity": "sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=10.0.0"
+ },
+ "peerDependencies": {
+ "bufferutil": "^4.0.1",
+ "utf-8-validate": ">=5.0.2"
+ },
+ "peerDependenciesMeta": {
+ "bufferutil": {
+ "optional": true
+ },
+ "utf-8-validate": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/xtend": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
+ "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.4"
+ }
+ },
+ "node_modules/y18n": {
+ "version": "5.0.8",
+ "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz",
+ "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==",
+ "dev": true,
+ "license": "ISC",
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/yaeti": {
+ "version": "0.0.6",
+ "resolved": "https://registry.npmjs.org/yaeti/-/yaeti-0.0.6.tgz",
+ "integrity": "sha512-MvQa//+KcZCUkBTIC9blM+CU9J2GzuTytsOUwf2lidtvkx/6gnEp1QvJv34t9vdjhFmha/mUiNDbN0D0mJWdug==",
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.10.32"
+ }
+ },
+ "node_modules/yallist": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/yaml": {
+ "version": "2.6.0",
+ "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.6.0.tgz",
+ "integrity": "sha512-a6ae//JvKDEra2kdi1qzCyrJW/WZCgFi8ydDV+eXExl95t+5R+ijnqHJbz9tmMh8FUjx3iv2fCQ4dclAQlO2UQ==",
+ "dev": true,
+ "license": "ISC",
+ "bin": {
+ "yaml": "bin.mjs"
+ },
+ "engines": {
+ "node": ">= 14"
+ }
+ },
+ "node_modules/yargs": {
+ "version": "17.7.2",
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz",
+ "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "cliui": "^8.0.1",
+ "escalade": "^3.1.1",
+ "get-caller-file": "^2.0.5",
+ "require-directory": "^2.1.1",
+ "string-width": "^4.2.3",
+ "y18n": "^5.0.5",
+ "yargs-parser": "^21.1.1"
+ },
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/yargs-parser": {
+ "version": "21.1.1",
+ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz",
+ "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==",
+ "dev": true,
+ "license": "ISC",
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/zwitch": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz",
+ "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==",
+ "dev": true,
+ "license": "MIT",
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/wooorm"
+ }
+ }
+ }
+}
diff --git a/package.json b/package.json
index 0d394aa59b5..6def6f7a921 100644
--- a/package.json
+++ b/package.json
@@ -20,31 +20,33 @@
"docker:bash": "bash ./scripts/docker.sh bash",
"docker:start": "bash ./scripts/docker.sh start",
"docker": "pnpm docker:build && pnpm docker:run && pnpm docker:bash",
- "test": "bash ./scripts/test.sh",
- "prepare": "husky install"
+ "test": "bash ./scripts/test.sh"
},
"devDependencies": {
- "concurrently": "^9.1.0",
- "husky": "^9.1.6",
- "lerna": "^8.1.5",
- "only-allow": "^1.2.1",
- "prettier": "^3.3.3",
- "typedoc": "^0.26.11",
- "typescript": "5.6.3",
- "vite": "^5.4.11",
- "vitest": "^2.1.5",
"@commitlint/cli": "^18.4.4",
- "@commitlint/config-conventional": "^18.4.4"
+ "@commitlint/config-conventional": "^18.4.4",
+ "lerna": "8.1.5",
+ "only-allow": "1.2.1",
+ "concurrently": "9.1.0",
+ "husky": "9.1.7",
+ "prettier": "3.3.3",
+ "typedoc": "0.26.11",
+ "typescript": "5.6.3",
+ "vite": "5.4.11",
+ "vitest": "2.1.5"
},
"pnpm": {
"overrides": {
- "onnxruntime-node": "^1.20.0"
+ "onnxruntime-node": "1.20.1"
}
},
"engines": {
- "node": ">=22"
+ "node": "23.3.0"
},
"dependencies": {
+ "@coinbase/coinbase-sdk": "^0.10.0",
+ "csv-parse": "^5.6.0",
+ "@0glabs/0g-ts-sdk": "^0.2.1",
"ollama-ai-provider": "^0.16.1",
"optional": "^0.1.4",
"sharp": "^0.33.5",
diff --git a/packages/adapter-postgres/package.json b/packages/adapter-postgres/package.json
index 248102d3694..ac6804274d1 100644
--- a/packages/adapter-postgres/package.json
+++ b/packages/adapter-postgres/package.json
@@ -6,15 +6,15 @@
"types": "dist/index.d.ts",
"dependencies": {
"@ai16z/eliza": "workspace:*",
- "@types/pg": "^8.11.10",
- "pg": "^8.13.1"
+ "@types/pg": "8.11.10",
+ "pg": "8.13.1"
},
"devDependencies": {
"eslint": "9.13.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vitest": "0.5.4",
- "tsup": "^8.3.5"
+ "tsup": "8.3.5"
},
"scripts": {
"build": "tsup --format esm --dts",
diff --git a/packages/adapter-postgres/src/index.ts b/packages/adapter-postgres/src/index.ts
index 9b0f0f7b78f..3b84b2caf3a 100644
--- a/packages/adapter-postgres/src/index.ts
+++ b/packages/adapter-postgres/src/index.ts
@@ -59,14 +59,16 @@ export class PostgresDatabaseAdapter
while (retryCount < maxRetries) {
try {
const delay = baseDelay * Math.pow(2, retryCount);
- elizaLogger.log(`Attempting to reconnect in ${delay}ms...`);
+ elizaLogger.warn(
+ `Attempting to reconnect in ${delay}ms...`
+ );
await new Promise((resolve) => setTimeout(resolve, delay));
// Create new pool with same config
this.pool = new pg.Pool(this.pool.options);
await this.testConnection();
- elizaLogger.log("Successfully reconnected to database");
+ elizaLogger.success("Successfully reconnected to database");
return;
} catch (error) {
retryCount++;
@@ -116,7 +118,7 @@ export class PostgresDatabaseAdapter
try {
client = await this.pool.connect();
const result = await client.query("SELECT NOW()");
- elizaLogger.log(
+ elizaLogger.success(
"Database connection test successful:",
result.rows[0]
);
@@ -215,7 +217,7 @@ export class PostgresDatabaseAdapter
if (rows.length === 0) return null;
const account = rows[0];
- elizaLogger.log("account", account);
+ elizaLogger.debug("account", account);
return {
...account,
details:
@@ -346,7 +348,7 @@ export class PostgresDatabaseAdapter
if (!params.roomId) throw new Error("roomId is required");
let sql = `SELECT * FROM memories WHERE type = $1 AND "agentId" = $2 AND "roomId" = $3`;
const values: any[] = [params.tableName, params.agentId, params.roomId];
- let paramCount = 2;
+ let paramCount = 3; // Updated to start at 3 since we already have 3 parameters
if (params.start) {
paramCount++;
@@ -366,9 +368,9 @@ export class PostgresDatabaseAdapter
sql += ' ORDER BY "createdAt" DESC';
- if (params.count) {
+ if (params.count && typeof params.count === "number") {
paramCount++;
- sql += ` LIMIT $${paramCount}`;
+ sql += ` LIMIT $${paramCount}::integer`; // Cast to integer
values.push(params.count);
}
@@ -628,7 +630,7 @@ export class PostgresDatabaseAdapter
);
if (existingParticipant.rows.length > 0) {
- elizaLogger.log(
+ elizaLogger.error(
`Participant with userId ${userId} already exists in room ${roomId}.`
);
return true; // Exit early if the participant already exists
@@ -643,7 +645,7 @@ export class PostgresDatabaseAdapter
return true;
} catch (error) {
if (error instanceof DatabaseError) {
- elizaLogger.log("Error adding participant", error);
+ elizaLogger.error("Error adding participant", error);
// This is to prevent duplicate participant error in case of a race condition
// Handle unique constraint violation error (code 23505)
if (error.code === "23505") {
diff --git a/packages/adapter-sqlite/package.json b/packages/adapter-sqlite/package.json
index 303703bcf46..fe49cde66b8 100644
--- a/packages/adapter-sqlite/package.json
+++ b/packages/adapter-sqlite/package.json
@@ -15,7 +15,7 @@
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vitest": "0.5.4",
- "tsup": "^8.3.5"
+ "tsup": "8.3.5"
},
"scripts": {
"build": "tsup --format esm --dts",
diff --git a/packages/adapter-sqljs/package.json b/packages/adapter-sqljs/package.json
index 1502fabf706..3ec960ba6fc 100644
--- a/packages/adapter-sqljs/package.json
+++ b/packages/adapter-sqljs/package.json
@@ -15,7 +15,7 @@
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vitest": "0.5.4",
- "tsup": "^8.3.5"
+ "tsup": "8.3.5"
},
"scripts": {
"build": "tsup --format esm --dts",
diff --git a/packages/adapter-supabase/package.json b/packages/adapter-supabase/package.json
index 9411ec184ca..6870134667e 100644
--- a/packages/adapter-supabase/package.json
+++ b/packages/adapter-supabase/package.json
@@ -13,7 +13,7 @@
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vitest": "0.5.4",
- "tsup": "^8.3.5"
+ "tsup": "8.3.5"
},
"scripts": {
"build": "tsup --format esm --dts",
diff --git a/packages/client-auto/package.json b/packages/client-auto/package.json
index 6ed8381003e..e86626e3e4f 100644
--- a/packages/client-auto/package.json
+++ b/packages/client-auto/package.json
@@ -21,7 +21,7 @@
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vitest": "0.5.4",
- "tsup": "^8.3.5"
+ "tsup": "8.3.5"
},
"scripts": {
"build": "tsup --format esm --dts",
diff --git a/packages/client-direct/package.json b/packages/client-direct/package.json
index bf83368aa4f..dbaf93e1f32 100644
--- a/packages/client-direct/package.json
+++ b/packages/client-direct/package.json
@@ -12,7 +12,8 @@
"@types/express": "5.0.0",
"body-parser": "1.20.3",
"cors": "2.8.5",
- "express": "^4.21.1",
+ "discord.js": "14.16.3",
+ "express": "4.21.1",
"multer": "1.4.5-lts.1"
},
"devDependencies": {
@@ -20,7 +21,7 @@
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vitest": "0.5.4",
- "tsup": "^8.3.5"
+ "tsup": "8.3.5"
},
"scripts": {
"build": "tsup --format esm --dts",
diff --git a/packages/client-direct/src/api.ts b/packages/client-direct/src/api.ts
new file mode 100644
index 00000000000..3b3394dd210
--- /dev/null
+++ b/packages/client-direct/src/api.ts
@@ -0,0 +1,70 @@
+import express from "express";
+import bodyParser from "body-parser";
+import cors from "cors";
+
+import { AgentRuntime } from "@ai16z/eliza";
+
+import { REST, Routes } from "discord.js";
+
+export function createApiRouter(agents: Map) {
+ const router = express.Router();
+
+ router.use(cors());
+ router.use(bodyParser.json());
+ router.use(bodyParser.urlencoded({ extended: true }));
+
+ router.get("/hello", (req, res) => {
+ res.json({ message: "Hello World!" });
+ });
+
+ router.get("/agents", (req, res) => {
+ const agentsList = Array.from(agents.values()).map((agent) => ({
+ id: agent.agentId,
+ name: agent.character.name,
+ }));
+ res.json({ agents: agentsList });
+ });
+
+ router.get("/agents/:agentId", (req, res) => {
+ const agentId = req.params.agentId;
+ const agent = agents.get(agentId);
+
+ if (!agent) {
+ res.status(404).json({ error: "Agent not found" });
+ return;
+ }
+
+ res.json({
+ id: agent.agentId,
+ character: agent.character,
+ });
+ });
+
+ router.get("/agents/:agentId/channels", async (req, res) => {
+ const agentId = req.params.agentId;
+ const runtime = agents.get(agentId);
+
+ if (!runtime) {
+ res.status(404).json({ error: "Runtime not found" });
+ return;
+ }
+
+ const API_TOKEN = runtime.getSetting("DISCORD_API_TOKEN") as string;
+ const rest = new REST({ version: "10" }).setToken(API_TOKEN);
+
+ try {
+ const guilds = (await rest.get(Routes.userGuilds())) as Array;
+
+ res.json({
+ id: runtime.agentId,
+ guilds: guilds,
+ serverCount: guilds.length,
+ });
+ } catch (error) {
+ console.error("Error fetching guilds:", error);
+ res.status(500).json({ error: "Failed to fetch guilds" });
+ }
+ });
+
+ return router;
+}
diff --git a/packages/client-direct/src/index.ts b/packages/client-direct/src/index.ts
index 7ddc5fa233f..e8da9d2c73a 100644
--- a/packages/client-direct/src/index.ts
+++ b/packages/client-direct/src/index.ts
@@ -16,6 +16,9 @@ import {
} from "@ai16z/eliza";
import { stringToUuid } from "@ai16z/eliza";
import { settings } from "@ai16z/eliza";
+import { createApiRouter } from "./api.ts";
+import * as fs from "fs";
+import * as path from "path";
const upload = multer({ storage: multer.memoryStorage() });
export const messageHandlerTemplate =
@@ -68,6 +71,9 @@ export class DirectClient {
this.app.use(bodyParser.json());
this.app.use(bodyParser.urlencoded({ extended: true }));
+ const apiRouter = createApiRouter(this.agents);
+ this.app.use(apiRouter);
+
// Define an interface that extends the Express Request interface
interface CustomRequest extends ExpressRequest {
file: File;
@@ -266,6 +272,92 @@ export class DirectClient {
res.json({ images: imagesRes });
}
);
+
+ this.app.post(
+ "/fine-tune",
+ async (req: express.Request, res: express.Response) => {
+ try {
+ const response = await fetch('https://api.bageldb.ai/api/v1/asset', {
+ method: 'POST',
+ headers: {
+ 'Content-Type': 'application/json',
+ 'X-API-KEY': `${process.env.BAGEL_API_KEY}`
+ },
+ body: JSON.stringify(req.body)
+ });
+
+ const data = await response.json();
+ res.json(data);
+ } catch (error) {
+ res.status(500).json({
+ error: 'Failed to forward request to BagelDB',
+ details: error.message
+ });
+ }
+ }
+ );
+ this.app.get(
+ "/fine-tune/:assetId",
+ async (req: express.Request, res: express.Response) => {
+ const assetId = req.params.assetId;
+ const downloadDir = path.join(process.cwd(), 'downloads', assetId);
+
+ console.log('Download directory:', downloadDir);
+
+ try {
+ console.log('Creating directory...');
+ await fs.promises.mkdir(downloadDir, { recursive: true });
+
+ console.log('Fetching file...');
+ const fileResponse = await fetch(`https://api.bageldb.ai/api/v1/asset/${assetId}/download`, {
+ headers: {
+ 'X-API-KEY': `${process.env.BAGEL_API_KEY}`
+ }
+ });
+
+ if (!fileResponse.ok) {
+ throw new Error(`API responded with status ${fileResponse.status}: ${await fileResponse.text()}`);
+ }
+
+ console.log('Response headers:', fileResponse.headers);
+
+ const fileName = fileResponse.headers.get('content-disposition')
+ ?.split('filename=')[1]
+ ?.replace(/"/g, '') || 'default_name.txt';
+
+ console.log('Saving as:', fileName);
+
+ const arrayBuffer = await fileResponse.arrayBuffer();
+ const buffer = Buffer.from(arrayBuffer);
+
+ const filePath = path.join(downloadDir, fileName);
+ console.log('Full file path:', filePath);
+
+ await fs.promises.writeFile(filePath, buffer);
+
+ // Verify file was written
+ const stats = await fs.promises.stat(filePath);
+ console.log('File written successfully. Size:', stats.size, 'bytes');
+
+ res.json({
+ success: true,
+ message: 'Single file downloaded successfully',
+ downloadPath: downloadDir,
+ fileCount: 1,
+ fileName: fileName,
+ fileSize: stats.size
+ });
+
+ } catch (error) {
+ console.error('Detailed error:', error);
+ res.status(500).json({
+ error: 'Failed to download files from BagelDB',
+ details: error.message,
+ stack: error.stack
+ });
+ }
+ }
+ );
}
public registerAgent(runtime: AgentRuntime) {
diff --git a/packages/client-discord/package.json b/packages/client-discord/package.json
index 3ba5fcff333..97d2e5a7a2e 100644
--- a/packages/client-discord/package.json
+++ b/packages/client-discord/package.json
@@ -20,7 +20,7 @@
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vitest": "0.5.4",
- "tsup": "^8.3.5"
+ "tsup": "8.3.5"
},
"scripts": {
"build": "tsup --format esm --dts",
diff --git a/packages/client-discord/src/voice.ts b/packages/client-discord/src/voice.ts
index c59dafcb289..a1ec22eb35b 100644
--- a/packages/client-discord/src/voice.ts
+++ b/packages/client-discord/src/voice.ts
@@ -21,10 +21,12 @@ import {
NoSubscriberBehavior,
StreamType,
VoiceConnection,
+ VoiceConnectionStatus,
createAudioPlayer,
createAudioResource,
getVoiceConnection,
joinVoiceChannel,
+ entersState,
} from "@discordjs/voice";
import {
BaseGuildVoiceChannel,
@@ -230,6 +232,7 @@ export class VoiceManager extends EventEmitter {
console.error("Error leaving voice channel:", error);
}
}
+
const connection = joinVoiceChannel({
channelId: channel.id,
guildId: channel.guild.id,
@@ -238,38 +241,103 @@ export class VoiceManager extends EventEmitter {
selfMute: false,
});
- const me = channel.guild.members.me;
- if (me?.voice && me.permissions.has("DeafenMembers")) {
- await me.voice.setDeaf(false);
- await me.voice.setMute(false);
- } else {
- elizaLogger.log("Bot lacks permission to modify voice state");
- }
+ try {
+ // Wait for either Ready or Signalling state
+ await Promise.race([
+ entersState(connection, VoiceConnectionStatus.Ready, 20_000),
+ entersState(
+ connection,
+ VoiceConnectionStatus.Signalling,
+ 20_000
+ ),
+ ]);
+
+ // Log connection success
+ elizaLogger.log(
+ `Voice connection established in state: ${connection.state.status}`
+ );
- for (const [, member] of channel.members) {
- if (!member.user.bot) {
- this.monitorMember(member, channel);
- }
- }
+ // Set up ongoing state change monitoring
+ connection.on("stateChange", async (oldState, newState) => {
+ elizaLogger.log(
+ `Voice connection state changed from ${oldState.status} to ${newState.status}`
+ );
- connection.on("error", (error) => {
- console.error("Voice connection error:", error);
- });
+ if (newState.status === VoiceConnectionStatus.Disconnected) {
+ elizaLogger.log("Handling disconnection...");
- connection.receiver.speaking.on("start", (userId: string) => {
- const user = channel.members.get(userId);
- if (!user?.user.bot) {
- this.monitorMember(user as GuildMember, channel);
- this.streams.get(userId)?.emit("speakingStarted");
+ try {
+ // Try to reconnect if disconnected
+ await Promise.race([
+ entersState(
+ connection,
+ VoiceConnectionStatus.Signalling,
+ 5_000
+ ),
+ entersState(
+ connection,
+ VoiceConnectionStatus.Connecting,
+ 5_000
+ ),
+ ]);
+ // Seems to be reconnecting to a new channel
+ elizaLogger.log("Reconnecting to channel...");
+ } catch (e) {
+ // Seems to be a real disconnect, destroy and cleanup
+ elizaLogger.log(
+ "Disconnection confirmed - cleaning up..." + e
+ );
+ connection.destroy();
+ this.connections.delete(channel.id);
+ }
+ } else if (
+ newState.status === VoiceConnectionStatus.Destroyed
+ ) {
+ this.connections.delete(channel.id);
+ } else if (
+ !this.connections.has(channel.id) &&
+ (newState.status === VoiceConnectionStatus.Ready ||
+ newState.status === VoiceConnectionStatus.Signalling)
+ ) {
+ this.connections.set(channel.id, connection);
+ }
+ });
+
+ connection.on("error", (error) => {
+ elizaLogger.log("Voice connection error:", error);
+ // Don't immediately destroy - let the state change handler deal with it
+ elizaLogger.log(
+ "Connection error - will attempt to recover..."
+ );
+ });
+
+ // Store the connection
+ this.connections.set(channel.id, connection);
+
+ // Continue with voice state modifications
+ const me = channel.guild.members.me;
+ if (me?.voice && me.permissions.has("DeafenMembers")) {
+ try {
+ await me.voice.setDeaf(false);
+ await me.voice.setMute(false);
+ } catch (error) {
+ elizaLogger.log("Failed to modify voice state:", error);
+ // Continue even if this fails
+ }
}
- });
- connection.receiver.speaking.on("end", async (userId: string) => {
- const user = channel.members.get(userId);
- if (!user?.user.bot) {
- this.streams.get(userId)?.emit("speakingStopped");
+ // Set up member monitoring
+ for (const [, member] of channel.members) {
+ if (!member.user.bot) {
+ await this.monitorMember(member, channel);
+ }
}
- });
+ } catch (error) {
+ elizaLogger.log("Failed to establish voice connection:", error);
+ connection.destroy();
+ this.connections.delete(channel.id);
+ throw error;
+ }
}
private async monitorMember(
@@ -780,7 +848,7 @@ export class VoiceManager extends EventEmitter {
audioPlayer.on(
"stateChange",
- (oldState: any, newState: { status: string }) => {
+ (_oldState: any, newState: { status: string }) => {
if (newState.status == "idle") {
const idleTime = Date.now();
console.log(
@@ -792,34 +860,46 @@ export class VoiceManager extends EventEmitter {
}
async handleJoinChannelCommand(interaction: any) {
- const channelId = interaction.options.get("channel")?.value as string;
- if (!channelId) {
- await interaction.reply("Please provide a voice channel to join.");
- return;
- }
- const guild = interaction.guild;
- if (!guild) {
- return;
- }
- const voiceChannel = interaction.guild.channels.cache.find(
- (channel: VoiceChannel) =>
- channel.id === channelId &&
- channel.type === ChannelType.GuildVoice
- );
+ try {
+ // Defer the reply immediately to prevent interaction timeout
+ await interaction.deferReply();
+
+ const channelId = interaction.options.get("channel")
+ ?.value as string;
+ if (!channelId) {
+ await interaction.editReply(
+ "Please provide a voice channel to join."
+ );
+ return;
+ }
- if (!voiceChannel) {
- await interaction.reply("Voice channel not found!");
- return;
- }
+ const guild = interaction.guild;
+ if (!guild) {
+ await interaction.editReply("Could not find guild.");
+ return;
+ }
- try {
- this.joinChannel(voiceChannel as BaseGuildVoiceChannel);
- await interaction.reply(
+ const voiceChannel = interaction.guild.channels.cache.find(
+ (channel: VoiceChannel) =>
+ channel.id === channelId &&
+ channel.type === ChannelType.GuildVoice
+ );
+
+ if (!voiceChannel) {
+ await interaction.editReply("Voice channel not found!");
+ return;
+ }
+
+ await this.joinChannel(voiceChannel as BaseGuildVoiceChannel);
+ await interaction.editReply(
`Joined voice channel: ${voiceChannel.name}`
);
} catch (error) {
console.error("Error joining voice channel:", error);
- await interaction.reply("Failed to join the voice channel.");
+ // Use editReply instead of reply for the error case
+ await interaction
+ .editReply("Failed to join the voice channel.")
+ .catch(console.error);
}
}
diff --git a/packages/client-github/package.json b/packages/client-github/package.json
index af56dec4153..7f0bc243a09 100644
--- a/packages/client-github/package.json
+++ b/packages/client-github/package.json
@@ -6,18 +6,18 @@
"types": "dist/index.d.ts",
"dependencies": {
"@ai16z/eliza": "workspace:*",
- "@octokit/rest": "^20.0.2",
- "@octokit/types": "^12.6.0",
- "glob": "^10.3.10",
- "simple-git": "^3.22.0"
+ "@octokit/rest": "20.1.1",
+ "@octokit/types": "12.6.0",
+ "glob": "10.4.5",
+ "simple-git": "3.27.0"
},
"devDependencies": {
- "@types/glob": "^8.1.0",
+ "@types/glob": "8.1.0",
"eslint": "9.13.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vitest": "0.5.4",
- "tsup": "^8.3.5"
+ "tsup": "8.3.5"
},
"scripts": {
"build": "tsup --format esm --dts",
diff --git a/packages/client-telegram/package.json b/packages/client-telegram/package.json
index 9362f1f1a5f..28aebff84d1 100644
--- a/packages/client-telegram/package.json
+++ b/packages/client-telegram/package.json
@@ -6,7 +6,6 @@
"types": "dist/index.d.ts",
"dependencies": {
"@ai16z/eliza": "workspace:*",
- "@ai16z/plugin-node": "workspace:*",
"@telegraf/types": "7.1.0",
"telegraf": "4.16.3",
"zod": "3.23.8"
@@ -16,7 +15,7 @@
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vitest": "0.5.4",
- "tsup": "^8.3.5"
+ "tsup": "8.3.5"
},
"scripts": {
"build": "tsup --format esm --dts",
diff --git a/packages/client-twitter/package.json b/packages/client-twitter/package.json
index 1e541f67f74..b15fe611442 100644
--- a/packages/client-twitter/package.json
+++ b/packages/client-twitter/package.json
@@ -6,7 +6,7 @@
"types": "dist/index.d.ts",
"dependencies": {
"@ai16z/eliza": "workspace:*",
- "agent-twitter-client": "0.0.13",
+ "agent-twitter-client": "0.0.14",
"glob": "11.0.0",
"zod": "3.23.8"
},
@@ -15,7 +15,7 @@
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vitest": "0.5.4",
- "tsup": "^8.3.5"
+ "tsup": "8.3.5"
},
"scripts": {
"build": "tsup --format esm --dts",
diff --git a/packages/core/package.json b/packages/core/package.json
index 55f7febda7c..b0b5b4dedd9 100644
--- a/packages/core/package.json
+++ b/packages/core/package.json
@@ -17,19 +17,19 @@
"author": "",
"license": "MIT",
"devDependencies": {
- "@eslint/js": "^9.13.0",
+ "@eslint/js": "9.15.0",
"@rollup/plugin-commonjs": "25.0.8",
"@rollup/plugin-json": "6.1.0",
"@rollup/plugin-node-resolve": "15.3.0",
"@rollup/plugin-replace": "5.0.7",
"@rollup/plugin-terser": "0.1.0",
"@rollup/plugin-typescript": "11.1.6",
- "@solana/web3.js": "1.95.4",
+ "@solana/web3.js": "1.95.5",
"@types/fluent-ffmpeg": "2.1.27",
"@types/jest": "29.5.14",
- "@types/mocha": "^10.0.9",
+ "@types/mocha": "10.0.10",
"@types/node": "22.8.4",
- "@types/pdfjs-dist": "^2.10.378",
+ "@types/pdfjs-dist": "2.10.378",
"@types/tar": "6.1.13",
"@types/wav-encoder": "1.3.3",
"@typescript-eslint/eslint-plugin": "8.12.2",
@@ -38,46 +38,42 @@
"eslint": "9.13.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
- "eslint-plugin-vitest": "0.5.4",
"jest": "29.7.0",
"lint-staged": "15.2.10",
"nodemon": "3.1.7",
- "pm2": "5.4.2",
+ "pm2": "5.4.3",
"prettier": "3.3.3",
"rimraf": "6.0.1",
"rollup": "2.79.2",
"ts-jest": "29.2.5",
"ts-node": "10.9.2",
"tslib": "2.8.0",
- "tsup": "^8.3.5",
+ "tsup": "8.3.5",
"typescript": "5.6.3"
},
"dependencies": {
- "@ai-sdk/anthropic": "^0.0.56",
- "@ai-sdk/google": "^0.0.55",
- "@ai-sdk/google-vertex": "^0.0.43",
- "@ai-sdk/groq": "^0.0.3",
+ "@ai-sdk/anthropic": "0.0.56",
+ "@ai-sdk/google": "0.0.55",
+ "@ai-sdk/google-vertex": "0.0.43",
+ "@ai-sdk/groq": "0.0.3",
"@ai-sdk/openai": "1.0.4",
- "@ai16z/adapter-sqlite": "workspace:*",
- "@ai16z/adapter-sqljs": "workspace:*",
- "@ai16z/adapter-supabase": "workspace:*",
"@anthropic-ai/sdk": "0.30.1",
- "@types/uuid": "^10.0.0",
- "ai": "^3.4.23",
- "anthropic-vertex-ai": "^1.0.0",
- "fastembed": "^1.14.1",
- "fastestsmallesttextencoderdecoder": "^1.0.22",
+ "@types/uuid": "10.0.0",
+ "ai": "3.4.33",
+ "anthropic-vertex-ai": "1.0.2",
+ "fastembed": "1.14.1",
+ "fastestsmallesttextencoderdecoder": "1.0.22",
"gaxios": "6.7.1",
"glob": "11.0.0",
"js-sha1": "0.7.0",
- "langchain": "^0.3.6",
- "ollama-ai-provider": "^0.16.1",
+ "langchain": "0.3.6",
+ "ollama-ai-provider": "0.16.1",
"openai": "4.73.0",
"tiktoken": "1.0.17",
"tinyld": "1.3.4",
- "together-ai": "^0.7.0",
+ "together-ai": "0.7.0",
"unique-names-generator": "4.7.1",
"uuid": "11.0.2",
- "zod": "^3.23.8"
+ "zod": "3.23.8"
}
}
diff --git a/packages/core/src/logger.ts b/packages/core/src/logger.ts
index 8e194bda3ae..a2bd21971e3 100644
--- a/packages/core/src/logger.ts
+++ b/packages/core/src/logger.ts
@@ -1,11 +1,6 @@
import settings from "./settings.ts";
-import { Logger } from "tslog";
-interface IElizaLogger extends Logger {
- progress(message: string): void;
-}
-
-class ElizaLogger implements IElizaLogger {
+class ElizaLogger {
constructor() {
// Check if we're in Node.js environment
this.isNode =
@@ -180,7 +175,6 @@ class ElizaLogger implements IElizaLogger {
}
}
- // @ts-expect-error- custom implementation
log(...strings) {
this.#logWithStyle(strings, {
fg: "white",
@@ -190,7 +184,6 @@ class ElizaLogger implements IElizaLogger {
});
}
- // @ts-expect-error- custom implementation
warn(...strings) {
this.#logWithStyle(strings, {
fg: "yellow",
@@ -200,7 +193,6 @@ class ElizaLogger implements IElizaLogger {
});
}
- // @ts-expect-error- custom implementation
error(...strings) {
this.#logWithStyle(strings, {
fg: "red",
@@ -210,7 +202,6 @@ class ElizaLogger implements IElizaLogger {
});
}
- // @ts-expect-error- custom implementation
info(...strings) {
this.#logWithStyle(strings, {
fg: "blue",
@@ -220,7 +211,6 @@ class ElizaLogger implements IElizaLogger {
});
}
- // @ts-expect-error- custom implementation
debug(...strings) {
if (!this.verbose) return;
this.#logWithStyle(strings, {
diff --git a/packages/core/src/tests/cache.test.ts b/packages/core/src/tests/cache.test.ts
index e9a3bbde6e9..339a032e7bb 100644
--- a/packages/core/src/tests/cache.test.ts
+++ b/packages/core/src/tests/cache.test.ts
@@ -1,15 +1,17 @@
-import { CacheManager, MemoryCacheAdapter } from "../cache.ts"; // Adjust the import based on your project structure
+import { CacheManager, MemoryCacheAdapter } from "../cache.ts";
+import { describe, it, expect, beforeEach, afterEach, vi } from "vitest";
-// Now, let’s fix the test suite.
-
-describe.only("CacheManager", () => {
+describe("CacheManager", () => {
let cache: CacheManager;
- jest.useFakeTimers();
-
beforeEach(() => {
+ vi.useFakeTimers();
cache = new CacheManager(new MemoryCacheAdapter());
- jest.setSystemTime(Date.now());
+ vi.setSystemTime(Date.now());
+ });
+
+ afterEach(() => {
+ vi.useRealTimers();
});
it("should set/get/delete cache", async () => {
@@ -17,20 +19,15 @@ describe.only("CacheManager", () => {
expect(await cache.get("foo")).toEqual("bar");
- expect(cache.adapter.data.get("foo")).toEqual(
- JSON.stringify({ value: "bar", expires: 0 })
- );
-
await cache.delete("foo");
expect(await cache.get("foo")).toEqual(undefined);
- expect(cache.adapter.data.get("foo")).toEqual(undefined);
});
- it("should set/get/delete cache with expiration", async () => {
- const expires = Date.now() + 5 * 1000;
+ it("should handle expiring cache", async () => {
+ const expires = Date.now() + 1000;
- await cache.set("foo", "bar", { expires: expires });
+ await cache.set("foo", "bar", { expires });
expect(await cache.get("foo")).toEqual("bar");
@@ -38,7 +35,7 @@ describe.only("CacheManager", () => {
JSON.stringify({ value: "bar", expires: expires })
);
- jest.setSystemTime(expires + 1000);
+ vi.setSystemTime(expires + 1000);
expect(await cache.get("foo")).toEqual(undefined);
expect(cache.adapter.data.get("foo")).toEqual(undefined);
diff --git a/packages/core/src/tests/defaultCharacters.test.ts b/packages/core/src/tests/defaultCharacters.test.ts
index e22f9d592a8..cd3f4cb9cf9 100644
--- a/packages/core/src/tests/defaultCharacters.test.ts
+++ b/packages/core/src/tests/defaultCharacters.test.ts
@@ -15,7 +15,7 @@ describe("defaultCharacter", () => {
});
it("should have the correct modelProvider", () => {
- expect(defaultCharacter.modelProvider).toBe(ModelProviderName.OPENAI);
+ expect(defaultCharacter.modelProvider).toBe(ModelProviderName.OLLAMA);
});
it("should have the correct voice model", () => {
diff --git a/packages/core/src/tests/goals.test.ts b/packages/core/src/tests/goals.test.ts
index 52d8cafab45..f66461cc863 100644
--- a/packages/core/src/tests/goals.test.ts
+++ b/packages/core/src/tests/goals.test.ts
@@ -1,25 +1,21 @@
import {
- createGoal,
- formatGoalsAsString,
getGoals,
+ formatGoalsAsString,
updateGoal,
-} from "../goals";
+ createGoal,
+} from "../goals.ts";
import {
- type Goal,
- type IAgentRuntime,
- type UUID,
- Action,
+ Goal,
GoalStatus,
- HandlerCallback,
- IMemoryManager,
+ IAgentRuntime,
Memory,
- ModelProviderName,
+ State,
+ UUID,
Service,
ServiceType,
- State,
} from "../types";
-
-import { describe, expect, vi } from "vitest";
+import { CacheManager, MemoryCacheAdapter } from "../cache.ts";
+import { describe, expect, vi, beforeEach } from "vitest";
// Mock the database adapter
export const mockDatabaseAdapter = {
@@ -27,125 +23,192 @@ export const mockDatabaseAdapter = {
updateGoal: vi.fn(),
createGoal: vi.fn(),
};
+
const services = new Map();
+
// Mock the runtime
export const mockRuntime: IAgentRuntime = {
databaseAdapter: mockDatabaseAdapter as any,
cacheManager: new CacheManager(new MemoryCacheAdapter()),
agentId: "qweqew-qweqwe-qweqwe-qweqwe-qweeqw",
serverUrl: "",
- token: "",
- modelProvider: ModelProviderName.OPENAI,
- character: {
- id: "qweqew-qweqwe-qweqwe-qweqwe-qweeqw",
- name: "",
- system: "",
- modelProvider: ModelProviderName.OPENAI,
- modelEndpointOverride: "",
- templates: {},
- bio: "",
- lore: [],
- messageExamples: [],
- postExamples: [],
- people: [],
- topics: [],
- adjectives: [],
- knowledge: [],
- clients: [],
- plugins: [],
- settings: {
- secrets: {},
- voice: {
- model: "",
- url: "",
- },
- model: "",
- embeddingModel: "",
+ token: null,
+ messageManager: {
+ addEmbeddingToMemory: function (_memory: Memory): Promise {
+ throw new Error("Function not implemented.");
},
- clientConfig: {
- discord: {
- shouldIgnoreBotMessages: false,
- shouldIgnoreDirectMessages: false,
- },
- telegram: {
- shouldIgnoreBotMessages: false,
- shouldIgnoreDirectMessages: false,
- },
+ getMemories: function (_opts: {
+ roomId: UUID;
+ count?: number;
+ unique?: boolean;
+ agentId?: UUID;
+ start?: number;
+ end?: number;
+ }): Promise {
+ throw new Error("Function not implemented.");
},
- style: {
- all: [],
- chat: [],
- post: [],
+ getCachedEmbeddings: function (
+ _content: string
+ ): Promise<{ embedding: number[]; levenshtein_score: number }[]> {
+ throw new Error("Function not implemented.");
+ },
+ getMemoryById: function (_id: UUID): Promise {
+ throw new Error("Function not implemented.");
+ },
+ getMemoriesByRoomIds: function (_params: {
+ roomIds: UUID[];
+ agentId?: UUID;
+ }): Promise {
+ throw new Error("Function not implemented.");
+ },
+ searchMemoriesByEmbedding: function (
+ _embedding: number[],
+ _opts: {
+ match_threshold?: number;
+ count?: number;
+ roomId: UUID;
+ unique?: boolean;
+ agentId?: UUID;
+ }
+ ): Promise {
+ throw new Error("Function not implemented.");
+ },
+ createMemory: function (
+ _memory: Memory,
+ _unique?: boolean
+ ): Promise {
+ throw new Error("Function not implemented.");
+ },
+ removeMemory: function (_memoryId: UUID): Promise {
+ throw new Error("Function not implemented.");
+ },
+ removeAllMemories: function (_roomId: UUID): Promise {
+ throw new Error("Function not implemented.");
+ },
+ countMemories: function (
+ _roomId: UUID,
+ _unique?: boolean
+ ): Promise {
+ throw new Error("Function not implemented.");
},
},
- providers: [],
- actions: [],
- evaluators: [],
- messageManager: undefined,
- descriptionManager: undefined,
- loreManager: undefined,
- services: undefined,
- registerMemoryManager: function (_manager: IMemoryManager): void {
- throw new Error("Function not implemented.");
- },
- getMemoryManager: function (_name: string): IMemoryManager | null {
- throw new Error("Function not implemented.");
- },
- registerService: function (service: Service): void {
- services.set(service.serviceType, service);
- },
- getSetting: function (_key: string): string | null {
- throw new Error("Function not implemented.");
- },
- getConversationLength: function (): number {
- throw new Error("Function not implemented.");
- },
- processActions: function (
- _message: Memory,
- _responses: Memory[],
- _state?: State,
- _callback?: HandlerCallback
- ): Promise {
- throw new Error("Function not implemented.");
- },
- evaluate: function (
- _message: Memory,
- _state?: State,
- _didRespond?: boolean
- ): Promise {
- throw new Error("Function not implemented.");
- },
- ensureParticipantExists: function (
- _userId: UUID,
- _roomId: UUID
- ): Promise {
- throw new Error("Function not implemented.");
- },
- ensureUserExists: function (
- _userId: UUID,
- _userName: string | null,
- _name: string | null,
- _source: string | null
- ): Promise {
- throw new Error("Function not implemented.");
- },
- registerAction: function (_action: Action): void {
- throw new Error("Function not implemented.");
- },
- ensureConnection: function (
- _userId: UUID,
- _roomId: UUID,
- _userName?: string,
- _userScreenName?: string,
- _source?: string
- ): Promise {
- throw new Error("Function not implemented.");
+ descriptionManager: {
+ addEmbeddingToMemory: function (_memory: Memory): Promise {
+ throw new Error("Function not implemented.");
+ },
+ getMemories: function (_opts: {
+ roomId: UUID;
+ count?: number;
+ unique?: boolean;
+ agentId?: UUID;
+ start?: number;
+ end?: number;
+ }): Promise {
+ throw new Error("Function not implemented.");
+ },
+ getCachedEmbeddings: function (
+ _content: string
+ ): Promise<{ embedding: number[]; levenshtein_score: number }[]> {
+ throw new Error("Function not implemented.");
+ },
+ getMemoryById: function (_id: UUID): Promise {
+ throw new Error("Function not implemented.");
+ },
+ getMemoriesByRoomIds: function (_params: {
+ roomIds: UUID[];
+ agentId?: UUID;
+ }): Promise {
+ throw new Error("Function not implemented.");
+ },
+ searchMemoriesByEmbedding: function (
+ _embedding: number[],
+ _opts: {
+ match_threshold?: number;
+ count?: number;
+ roomId: UUID;
+ unique?: boolean;
+ agentId?: UUID;
+ }
+ ): Promise {
+ throw new Error("Function not implemented.");
+ },
+ createMemory: function (
+ _memory: Memory,
+ _unique?: boolean
+ ): Promise {
+ throw new Error("Function not implemented.");
+ },
+ removeMemory: function (_memoryId: UUID): Promise {
+ throw new Error("Function not implemented.");
+ },
+ removeAllMemories: function (_roomId: UUID): Promise {
+ throw new Error("Function not implemented.");
+ },
+ countMemories: function (
+ _roomId: UUID,
+ _unique?: boolean
+ ): Promise {
+ throw new Error("Function not implemented.");
+ },
},
- ensureParticipantInRoom: function (
- _userId: UUID,
- _roomId: UUID
- ): Promise {
- throw new Error("Function not implemented.");
+ loreManager: {
+ addEmbeddingToMemory: function (_memory: Memory): Promise {
+ throw new Error("Function not implemented.");
+ },
+ getMemories: function (_opts: {
+ roomId: UUID;
+ count?: number;
+ unique?: boolean;
+ agentId?: UUID;
+ start?: number;
+ end?: number;
+ }): Promise {
+ throw new Error("Function not implemented.");
+ },
+ getCachedEmbeddings: function (
+ _content: string
+ ): Promise<{ embedding: number[]; levenshtein_score: number }[]> {
+ throw new Error("Function not implemented.");
+ },
+ getMemoryById: function (_id: UUID): Promise {
+ throw new Error("Function not implemented.");
+ },
+ getMemoriesByRoomIds: function (_params: {
+ roomIds: UUID[];
+ agentId?: UUID;
+ }): Promise {
+ throw new Error("Function not implemented.");
+ },
+ searchMemoriesByEmbedding: function (
+ _embedding: number[],
+ _opts: {
+ match_threshold?: number;
+ count?: number;
+ roomId: UUID;
+ unique?: boolean;
+ agentId?: UUID;
+ }
+ ): Promise {
+ throw new Error("Function not implemented.");
+ },
+ createMemory: function (
+ _memory: Memory,
+ _unique?: boolean
+ ): Promise {
+ throw new Error("Function not implemented.");
+ },
+ removeMemory: function (_memoryId: UUID): Promise {
+ throw new Error("Function not implemented.");
+ },
+ removeAllMemories: function (_roomId: UUID): Promise {
+ throw new Error("Function not implemented.");
+ },
+ countMemories: function (
+ _roomId: UUID,
+ _unique?: boolean
+ ): Promise {
+ throw new Error("Function not implemented.");
+ },
},
ensureRoomExists: function (_roomId: UUID): Promise {
throw new Error("Function not implemented.");
@@ -164,14 +227,18 @@ export const mockRuntime: IAgentRuntime = {
): T | null {
return (services.get(serviceType) as T) || null;
},
+ plugins: [],
+ initialize: function (): Promise {
+ throw new Error("Function not implemented.");
+ },
};
// Sample data
const sampleGoal: Goal = {
id: "goal-id" as UUID,
- name: "Test Goal",
roomId: "room-id" as UUID,
userId: "user-id" as UUID,
+ name: "Test Goal",
objectives: [
{ description: "Objective 1", completed: false },
{ description: "Objective 2", completed: true },
@@ -180,6 +247,10 @@ const sampleGoal: Goal = {
};
describe("getGoals", () => {
+ beforeEach(() => {
+ vi.clearAllMocks();
+ });
+
it("retrieves goals successfully", async () => {
mockDatabaseAdapter.getGoals.mockResolvedValue([sampleGoal]);
@@ -189,26 +260,27 @@ describe("getGoals", () => {
});
expect(result).toEqual([sampleGoal]);
- expect(mockDatabaseAdapter.getGoals).toHaveBeenCalledWith({
- roomId: "room-id",
- userId: undefined,
- onlyInProgress: true,
- count: 5,
- });
});
- it("handles failure to retrieve goals", async () => {
+ it("handles errors when retrieving goals", async () => {
mockDatabaseAdapter.getGoals.mockRejectedValue(
new Error("Failed to retrieve goals")
);
await expect(
- getGoals({ runtime: mockRuntime, roomId: "room-id" as UUID })
+ getGoals({
+ runtime: mockRuntime,
+ roomId: "room-id" as UUID,
+ })
).rejects.toThrow("Failed to retrieve goals");
});
});
describe("formatGoalsAsString", () => {
+ beforeEach(() => {
+ vi.clearAllMocks();
+ });
+
it("formats goals correctly", () => {
const formatted = formatGoalsAsString({ goals: [sampleGoal] });
expect(formatted).toContain("Goal: Test Goal");
@@ -216,23 +288,28 @@ describe("formatGoalsAsString", () => {
expect(formatted).toContain("- [x] Objective 2 (DONE)");
});
- it("handles empty goal list", () => {
+ it("handles empty goals array", () => {
const formatted = formatGoalsAsString({ goals: [] });
expect(formatted).toBe("");
});
});
describe("updateGoal", () => {
+ beforeEach(() => {
+ vi.clearAllMocks();
+ });
+
it("updates a goal successfully", async () => {
mockDatabaseAdapter.updateGoal.mockResolvedValue(undefined);
await expect(
updateGoal({ runtime: mockRuntime, goal: sampleGoal })
- ).resolves.toBeUndefined();
+ ).resolves.not.toThrow();
+
expect(mockDatabaseAdapter.updateGoal).toHaveBeenCalledWith(sampleGoal);
});
- it("handles failure to update a goal", async () => {
+ it("handles errors when updating a goal", async () => {
mockDatabaseAdapter.updateGoal.mockRejectedValue(
new Error("Failed to update goal")
);
@@ -244,16 +321,21 @@ describe("updateGoal", () => {
});
describe("createGoal", () => {
+ beforeEach(() => {
+ vi.clearAllMocks();
+ });
+
it("creates a goal successfully", async () => {
mockDatabaseAdapter.createGoal.mockResolvedValue(undefined);
await expect(
createGoal({ runtime: mockRuntime, goal: sampleGoal })
- ).resolves.toBeUndefined();
+ ).resolves.not.toThrow();
+
expect(mockDatabaseAdapter.createGoal).toHaveBeenCalledWith(sampleGoal);
});
- it("handles failure to create a goal", async () => {
+ it("handles errors when creating a goal", async () => {
mockDatabaseAdapter.createGoal.mockRejectedValue(
new Error("Failed to create goal")
);
diff --git a/packages/core/src/tests/token.test.ts b/packages/core/src/tests/token.test.ts
deleted file mode 100644
index 76f70509dc5..00000000000
--- a/packages/core/src/tests/token.test.ts
+++ /dev/null
@@ -1,77 +0,0 @@
-// Now import other modules
-import { createRuntime } from "../test_resources/createRuntime";
-import { TokenProvider, WalletProvider } from "@ai16z/plugin-solana";
-import { Connection, PublicKey } from "@solana/web3.js";
-import { describe, it, expect, beforeEach, vi } from "vitest";
-import NodeCache from "node-cache";
-
-describe("TokenProvider Tests", () => {
- let tokenProvider: TokenProvider;
-
- beforeEach(async () => {
- // Clear all mocks before each test
- vi.clearAllMocks();
-
- const { runtime } = await createRuntime({
- env: process.env,
- conversationLength: 10,
- });
-
- const walletProvider = new WalletProvider(
- new Connection(runtime.getSetting("RPC_URL")),
- new PublicKey(runtime.getSetting("WALLET_PUBLIC_KEY"))
- );
- // Create new instance of TokenProvider
- tokenProvider = new TokenProvider(
- "2weMjPLLybRMMva1fM3U31goWWrCpF59CHWNhnCJ9Vyh",
- walletProvider
- );
-
- // Clear the cache and ensure it's empty
- (tokenProvider as any).cache.flushAll();
- (tokenProvider as any).cache.close();
- (tokenProvider as any).cache = new NodeCache();
-
- // Mock the getCachedData method instead
- vi.spyOn(tokenProvider as any, "getCachedData").mockReturnValue(null);
- });
-
- it.skip("should fetch token security data", async () => {
- // Mock the response for the fetchTokenSecurity call
- const mockFetchResponse = {
- success: true,
- data: {
- ownerBalance: "100",
- creatorBalance: "50",
- ownerPercentage: 10,
- creatorPercentage: 5,
- top10HolderBalance: "200",
- top10HolderPercent: 20,
- },
- };
-
- // Mock fetchWithRetry function
- const fetchSpy = vi
- .spyOn(tokenProvider as any, "fetchWithRetry")
- .mockResolvedValue(mockFetchResponse);
-
- // Run the fetchTokenSecurity method
- const securityData = await tokenProvider.fetchTokenSecurity();
- // Check if the data returned is correct
- expect(securityData).toEqual({
- ownerBalance: "100",
- creatorBalance: "50",
- ownerPercentage: 10,
- creatorPercentage: 5,
- top10HolderBalance: "200",
- top10HolderPercent: 20,
- });
-
- // Ensure the mock was called with correct URL
- expect(fetchSpy).toHaveBeenCalledWith(
- expect.stringContaining(
- "https://public-api.birdeye.so/defi/token_security?address=2weMjPLLybRMMva1fM3U31goWWrCpF59CHWNhnCJ9Vyh"
- )
- );
- });
-});
diff --git a/packages/core/src/types.ts b/packages/core/src/types.ts
index 4864c526e8c..733aa7f8312 100644
--- a/packages/core/src/types.ts
+++ b/packages/core/src/types.ts
@@ -947,7 +947,10 @@ export interface IAgentRuntime {
messageManager: IMemoryManager;
descriptionManager: IMemoryManager;
+ documentsManager: IMemoryManager;
+ knowledgeManager: IMemoryManager;
loreManager: IMemoryManager;
+
cacheManager: ICacheManager;
services: Map;
diff --git a/packages/create-eliza-app/package.json b/packages/create-eliza-app/package.json
index e4bb32aa035..dfd52f056d7 100644
--- a/packages/create-eliza-app/package.json
+++ b/packages/create-eliza-app/package.json
@@ -21,16 +21,16 @@
"author": "",
"license": "ISC",
"dependencies": {
- "citty": "^0.1.6",
- "giget": "^1.2.3"
+ "citty": "0.1.6",
+ "giget": "1.2.3"
},
"devDependencies": {
- "automd": "^0.3.12",
+ "automd": "0.3.12",
"eslint": "9.13.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vitest": "0.5.4",
- "jiti": "^2.4.0",
- "unbuild": "^2.0.0"
+ "jiti": "2.4.0",
+ "unbuild": "2.0.0"
}
}
diff --git a/packages/plugin-0g/package.json b/packages/plugin-0g/package.json
new file mode 100644
index 00000000000..21e8ec7666d
--- /dev/null
+++ b/packages/plugin-0g/package.json
@@ -0,0 +1,18 @@
+{
+ "name": "@ai16z/plugin-0g",
+ "version": "0.0.1",
+ "main": "dist/index.js",
+ "type": "module",
+ "types": "dist/index.d.ts",
+ "dependencies": {
+ "@ai16z/eliza": "workspace:*",
+ "tsup": "^8.3.5",
+ "@0glabs/0g-ts-sdk": "0.2.1",
+ "ethers": "^6.0.0"
+ },
+ "scripts": {
+ "build": "tsup --format esm --dts",
+ "dev": "tsup --watch",
+ "test": "vitest"
+ }
+}
diff --git a/packages/plugin-0g/readme.md b/packages/plugin-0g/readme.md
new file mode 100644
index 00000000000..f104259acee
--- /dev/null
+++ b/packages/plugin-0g/readme.md
@@ -0,0 +1,15 @@
+# @ai16z/plugin-0g
+
+A plugin for storing data using the 0G protocol within the AI16Z ecosystem.
+
+## Description
+
+The 0G plugin enables seamless integration with the Zero Gravity (0G) protocol for decentralized file storage. It provides functionality to upload files to the 0G network.
+
+## Future work
+
+- Enable model service deployment on 0G serving network.
+- Implement 0G KV store for plugin state persistence .
+- Store upload history and file metadata.
+- Provide 0G as a db option for Eliza to store its memory/state.
+- Enhance file path and context extraction.
diff --git a/packages/plugin-0g/src/actions/upload.ts b/packages/plugin-0g/src/actions/upload.ts
new file mode 100644
index 00000000000..df73269e486
--- /dev/null
+++ b/packages/plugin-0g/src/actions/upload.ts
@@ -0,0 +1,172 @@
+import {
+ Action,
+ HandlerCallback,
+ IAgentRuntime,
+ Memory,
+ State,
+ ModelClass,
+ Content,
+ ActionExample,
+ generateObjectV2,
+} from "@ai16z/eliza";
+import { Indexer, ZgFile, getFlowContract } from "@0glabs/0g-ts-sdk";
+import { ethers } from "ethers";
+import { composeContext } from "@ai16z/eliza";
+import { promises as fs } from "fs";
+
+import { uploadTemplate } from "../templates/upload";
+
+export interface UploadContent extends Content {
+ filePath: string;
+}
+
+function isUploadContent(
+ _runtime: IAgentRuntime,
+ content: any
+): content is UploadContent {
+ console.log("Content for upload", content);
+ return typeof content.filePath === "string";
+}
+
+export const zgUpload: Action = {
+ name: "ZG_UPLOAD",
+ similes: [
+ "UPLOAD_FILE_TO_ZG",
+ "STORE_FILE_ON_ZG",
+ "SAVE_FILE_TO_ZG",
+ "UPLOAD_TO_ZERO_GRAVITY",
+ "STORE_ON_ZERO_GRAVITY",
+ "SHARE_FILE_ON_ZG",
+ "PUBLISH_FILE_TO_ZG",
+ ],
+ description: "Store data using 0G protocol",
+ validate: async (runtime: IAgentRuntime, message: Memory) => {
+ const zgIndexerRpc = !!runtime.getSetting("ZEROG_INDEXER_RPC");
+ const zgEvmRpc = !!runtime.getSetting("ZEROG_EVM_RPC");
+ const zgPrivateKey = !!runtime.getSetting("ZEROG_PRIVATE_KEY");
+ const flowAddr = !!runtime.getSetting("ZEROG_FLOW_ADDRESS");
+ return zgIndexerRpc && zgEvmRpc && zgPrivateKey && flowAddr;
+ },
+ handler: async (
+ runtime: IAgentRuntime,
+ message: Memory,
+ state: State,
+ _options: any,
+ callback: HandlerCallback
+ ) => {
+ console.log("ZG_UPLOAD action called");
+ if (!state) {
+ state = (await runtime.composeState(message)) as State;
+ } else {
+ state = await runtime.updateRecentMessageState(state);
+ }
+
+ // Compose upload context
+ const uploadContext = composeContext({
+ state,
+ template: uploadTemplate,
+ });
+
+ // Generate upload content
+ const content = await generateObjectV2({
+ runtime,
+ context: uploadContext,
+ modelClass: ModelClass.SMALL,
+ });
+
+ // Validate upload content
+ if (!isUploadContent(runtime, content)) {
+ console.error("Invalid content for UPLOAD action.");
+ if (callback) {
+ callback({
+ text: "Unable to process 0G upload request. Invalid content provided.",
+ content: { error: "Invalid upload content" },
+ });
+ }
+ return false;
+ }
+
+ try {
+ const zgIndexerRpc = runtime.getSetting("ZEROG_INDEXER_RPC");
+ const zgEvmRpc = runtime.getSetting("ZEROG_EVM_RPC");
+ const zgPrivateKey = runtime.getSetting("ZEROG_PRIVATE_KEY");
+ const flowAddr = runtime.getSetting("ZEROG_FLOW_ADDRESS");
+ const filePath = content.filePath;
+ if (!filePath) {
+ console.error("File path is required");
+ return false;
+ }
+
+ // Check if file exists and is accessible
+ try {
+ await fs.access(filePath);
+ } catch (error) {
+ console.error(
+ `File ${filePath} does not exist or is not accessible:`,
+ error
+ );
+ return false;
+ }
+
+ const file = await ZgFile.fromFilePath(filePath);
+ var [tree, err] = await file.merkleTree();
+ if (err === null) {
+ console.log("File Root Hash: ", tree.rootHash());
+ } else {
+ console.log("Error getting file root hash: ", err);
+ return false;
+ }
+
+ const provider = new ethers.JsonRpcProvider(zgEvmRpc);
+ const signer = new ethers.Wallet(zgPrivateKey, provider);
+ const indexer = new Indexer(zgIndexerRpc);
+ const flowContract = getFlowContract(flowAddr, signer);
+
+ var [tx, err] = await indexer.upload(
+ file,
+ 0,
+ zgEvmRpc,
+ flowContract
+ );
+ if (err === null) {
+ console.log("File uploaded successfully, tx: ", tx);
+ } else {
+ console.error("Error uploading file: ", err);
+ return false;
+ }
+
+ await file.close();
+ } catch (error) {
+ console.error("Error getting settings for 0G upload:", error);
+ }
+ },
+ examples: [
+ [
+ {
+ user: "{{user1}}",
+ content: {
+ text: "upload my resume.pdf file",
+ action: "ZG_UPLOAD",
+ },
+ },
+ ],
+ [
+ {
+ user: "{{user1}}",
+ content: {
+ text: "can you help me upload this document.docx?",
+ action: "ZG_UPLOAD",
+ },
+ },
+ ],
+ [
+ {
+ user: "{{user1}}",
+ content: {
+ text: "I need to upload an image file image.png",
+ action: "ZG_UPLOAD",
+ },
+ },
+ ],
+ ] as ActionExample[][],
+} as Action;
diff --git a/packages/plugin-0g/src/index.ts b/packages/plugin-0g/src/index.ts
new file mode 100644
index 00000000000..7c4b976e857
--- /dev/null
+++ b/packages/plugin-0g/src/index.ts
@@ -0,0 +1,10 @@
+import { Plugin } from "@ai16z/eliza";
+import { zgUpload } from "./actions/upload";
+
+export const zgPlugin: Plugin = {
+ description: "ZeroG Plugin for Eliza",
+ name: "ZeroG",
+ actions: [zgUpload],
+ evaluators: [],
+ providers: [],
+};
diff --git a/packages/plugin-0g/src/templates/upload.ts b/packages/plugin-0g/src/templates/upload.ts
new file mode 100644
index 00000000000..d982d8929b6
--- /dev/null
+++ b/packages/plugin-0g/src/templates/upload.ts
@@ -0,0 +1,22 @@
+export const uploadTemplate = `Respond with a JSON markdown block containing only the extracted values. Use null for any values that cannot be determined.
+
+Example response:
+\`\`\`json
+{
+ "filePath": null,
+ "description": "I want to upload a file"
+}
+\`\`\`
+
+{{recentMessages}}
+
+Extract the user's intention to upload a file from the conversation. Users might express this in various ways, such as:
+- "I want to upload a file"
+- "upload an image"
+- "send a photo"
+- "upload"
+- "let me share a file"
+
+If the user provides any specific description of the file, include that as well.
+
+Respond with a JSON markdown block containing only the extracted values.`;
diff --git a/packages/plugin-0g/tsconfig.json b/packages/plugin-0g/tsconfig.json
new file mode 100644
index 00000000000..ea7ea435e3e
--- /dev/null
+++ b/packages/plugin-0g/tsconfig.json
@@ -0,0 +1,9 @@
+{
+ "extends": "../../tsconfig.json",
+ "compilerOptions": {
+ "outDir": "dist",
+ "rootDir": ".",
+ "types": ["node"]
+ },
+ "include": ["src"]
+}
diff --git a/packages/plugin-0g/tsup.config.ts b/packages/plugin-0g/tsup.config.ts
new file mode 100644
index 00000000000..1b704be143d
--- /dev/null
+++ b/packages/plugin-0g/tsup.config.ts
@@ -0,0 +1,13 @@
+import { defineConfig } from "tsup";
+
+export default defineConfig({
+ entry: ["src/index.ts"],
+ outDir: "dist",
+ sourcemap: true,
+ clean: true,
+ format: ["esm"], // Ensure you're targeting CommonJS
+ external: [
+ "@0glabs/0g-ts-sdk",
+ // Add other modules you want to externalize
+ ],
+});
diff --git a/packages/plugin-bootstrap/package.json b/packages/plugin-bootstrap/package.json
index 5fe1c2a3d00..f43cf6455ba 100644
--- a/packages/plugin-bootstrap/package.json
+++ b/packages/plugin-bootstrap/package.json
@@ -6,7 +6,7 @@
"types": "dist/index.d.ts",
"dependencies": {
"@ai16z/eliza": "workspace:*",
- "tsup": "^8.3.5"
+ "tsup": "8.3.5"
},
"devDependencies": {
"eslint": "9.13.0",
diff --git a/packages/plugin-coinbase/package.json b/packages/plugin-coinbase/package.json
index dc846c07cec..a9cf565faff 100644
--- a/packages/plugin-coinbase/package.json
+++ b/packages/plugin-coinbase/package.json
@@ -5,20 +5,20 @@
"type": "module",
"types": "dist/index.d.ts",
"dependencies": {
- "@ai16z/eliza": "^0.1.3",
- "coinbase-api": "^1.0.5"
+ "@ai16z/eliza": "0.1.3",
+ "coinbase-api": "1.0.5"
},
"devDependencies": {
- "tsup": "^8.3.5"
+ "tsup": "8.3.5"
},
"scripts": {
"build": "tsup --format esm --dts",
- "dev": "tsup --watch",
- "postinstall": "npx playwright install-deps && npx playwright install"
+ "dev": "tsup --watch"
},
"peerDependencies": {
- "onnxruntime-node": "^1.20.0",
- "whatwg-url": "7.1.0"
+ "onnxruntime-node": "1.20.1",
+ "whatwg-url": "7.1.0",
+ "vue": "3.5.13"
},
"trustedDependencies": {
"onnxruntime-node": "^1.20.0",
diff --git a/packages/plugin-coinbase/src/index.ts b/packages/plugin-coinbase/src/index.ts
index d5bf379585f..5df9ee08b5b 100644
--- a/packages/plugin-coinbase/src/index.ts
+++ b/packages/plugin-coinbase/src/index.ts
@@ -1,438 +1,10 @@
-import {
- composeContext,
- elizaLogger,
- generateObjectV2,
- ModelClass,
- Provider,
-} from "@ai16z/eliza";
-import {
- Action,
- HandlerCallback,
- IAgentRuntime,
- Memory,
- Plugin,
- State,
-} from "@ai16z/eliza";
-import { ChargeContent, ChargeSchema, isChargeContent } from "./types";
-import { chargeTemplate, getChargeTemplate } from "./templates";
+import { coinbaseMassPaymentsPlugin } from "./plugins/massPayments";
+import { coinbaseCommercePlugin } from "./plugins/commerce";
-const url = "https://api.commerce.coinbase.com/charges";
-interface ChargeRequest {
- name: string;
- description: string;
- pricing_type: string;
- local_price: {
- amount: string;
- currency: string;
- };
-}
-
-export async function createCharge(apiKey: string, params: ChargeRequest) {
- try {
- const response = await fetch(url, {
- method: "POST",
- headers: {
- "Content-Type": "application/json",
- "X-CC-Api-Key": apiKey,
- },
- body: JSON.stringify(params),
- });
-
- if (!response.ok) {
- throw new Error(`Failed to create charge: ${response.statusText}`);
- }
-
- const data = await response.json();
- return data.data;
- } catch (error) {
- console.error("Error creating charge:", error);
- throw error;
- }
-}
-
-// Function to fetch all charges
-export async function getAllCharges(apiKey: string) {
- try {
- const response = await fetch(url, {
- method: "GET",
- headers: {
- "Content-Type": "application/json",
- "X-CC-Api-Key": apiKey,
- },
- });
-
- if (!response.ok) {
- throw new Error(
- `Failed to fetch all charges: ${response.statusText}`
- );
- }
-
- const data = await response.json();
- return data.data;
- } catch (error) {
- console.error("Error fetching charges:", error);
- throw error;
- }
-}
-
-// Function to fetch details of a specific charge
-export async function getChargeDetails(apiKey: string, chargeId: string) {
- const getUrl = `${url}${chargeId}`;
-
- try {
- const response = await fetch(getUrl, {
- method: "GET",
- headers: {
- "Content-Type": "application/json",
- "X-CC-Api-Key": apiKey,
- },
- });
-
- if (!response.ok) {
- throw new Error(
- `Failed to fetch charge details: ${response.statusText}`
- );
- }
-
- const data = await response.json();
- return data;
- } catch (error) {
- console.error(
- `Error fetching charge details for ID ${chargeId}:`,
- error
- );
- throw error;
- }
-}
-
-export const createCoinbaseChargeAction: Action = {
- name: "CREATE_CHARGE",
- similes: [
- "MAKE_CHARGE",
- "INITIATE_CHARGE",
- "GENERATE_CHARGE",
- "CREATE_TRANSACTION",
- "COINBASE_CHARGE",
- ],
- description: "Create a charge using Coinbase Commerce.",
- validate: async (runtime: IAgentRuntime, message: Memory) => {
- const coinbaseCommerceKeyOk = !!runtime.getSetting(
- "COINBASE_COMMERCE_KEY"
- );
-
- // Ensure Coinbase Commerce API key is available
- return coinbaseCommerceKeyOk;
- },
- handler: async (
- runtime: IAgentRuntime,
- message: Memory,
- state: State,
- options: any,
- callback: HandlerCallback
- ) => {
- elizaLogger.log("Composing state for message:", message);
- if (!state) {
- state = (await runtime.composeState(message)) as State;
- } else {
- state = await runtime.updateRecentMessageState(state);
- }
-
- const context = composeContext({
- state,
- template: chargeTemplate,
- });
-
- const chargeDetails = await generateObjectV2({
- runtime,
- context,
- modelClass: ModelClass.SMALL,
- schema: ChargeSchema,
- });
- if (!isChargeContent(chargeDetails.object)) {
- throw new Error("Invalid content");
- }
- const charge = chargeDetails.object as ChargeContent;
- if (!charge || !charge.price || !charge.type) {
- callback(
- {
- text: "Invalid charge details provided.",
- },
- []
- );
- return;
- }
-
- elizaLogger.log("Charge details received:", chargeDetails);
-
- // Initialize Coinbase Commerce client
-
- try {
- // Create a charge
- const chargeResponse = await createCharge(
- runtime.getSetting("COINBASE_COMMERCE_KEY"),
- {
- local_price: {
- amount: charge.price.toString(),
- currency: charge.currency,
- },
- pricing_type: charge.type,
- name: charge.name,
- description: charge.description,
- }
- );
-
- elizaLogger.log(
- "Coinbase Commerce charge created:",
- chargeResponse
- );
-
- callback(
- {
- text: `Charge created successfully: ${chargeResponse.hosted_url}`,
- attachments: [
- {
- id: crypto.randomUUID(),
- url: chargeResponse.id,
- title: "Coinbase Commerce Charge",
- description: `Charge ID: ${chargeResponse.id}`,
- text: `Pay here: ${chargeResponse.hosted_url}`,
- source: "coinbase",
- },
- ],
- },
- []
- );
- } catch (error) {
- elizaLogger.error(
- "Error creating Coinbase Commerce charge:",
- error
- );
- callback(
- {
- text: "Failed to create a charge. Please try again.",
- },
- []
- );
- }
- },
- examples: [
- [
- {
- user: "{{user1}}",
- content: {
- text: "Create a charge for $10.00 USD to Chris for dinner",
- data: {
- local_price: {
- amount: "10.00",
- currency: "USD",
- },
- pricing_type: "fixed_price",
- buyer_locale: "en-US",
- cancel_url: "https://example.com/cancel",
- redirect_url: "https://example.com/success",
- },
- },
- },
- {
- user: "{{agentName}}",
- content: {
- text: "Charge created successfully: {{charge.id}} for {{charge.amount}} {{charge.currency}}",
- action: "CREATE_CHARGE",
- },
- },
- ],
- ],
-} as Action;
-
-export const getAllChargesAction: Action = {
- name: "GET_ALL_CHARGES",
- similes: ["FETCH_ALL_CHARGES", "RETRIEVE_ALL_CHARGES", "LIST_ALL_CHARGES"],
- description: "Fetch all charges using Coinbase Commerce.",
- validate: async (runtime: IAgentRuntime) => {
- const coinbaseCommerceKeyOk = !!runtime.getSetting(
- "COINBASE_COMMERCE_KEY"
- );
-
- // Ensure Coinbase Commerce API key is available
- return coinbaseCommerceKeyOk;
- },
- handler: async (
- runtime: IAgentRuntime,
- message: Memory,
- state: State,
- options: any,
- callback: HandlerCallback
- ) => {
- try {
- elizaLogger.log("Composing state for message:", message);
- if (!state) {
- state = (await runtime.composeState(message)) as State;
- } else {
- state = await runtime.updateRecentMessageState(state);
- }
- const charges = await getAllCharges(
- runtime.getSetting("COINBASE_COMMERCE_KEY")
- );
-
- elizaLogger.log("Fetched all charges:", charges);
-
- callback(
- {
- text: `Successfully fetched all charges. Total charges: ${charges.length}`,
- },
- []
- );
- } catch (error) {
- elizaLogger.error("Error fetching all charges:", error);
- callback(
- {
- text: "Failed to fetch all charges. Please try again.",
- },
- []
- );
- }
- },
- examples: [
- [
- {
- user: "{{user1}}",
- content: { text: "Fetch all charges" },
- },
- {
- user: "{{agentName}}",
- content: {
- text: "Successfully fetched all charges.",
- action: "GET_ALL_CHARGES",
- },
- },
- ],
- ],
-} as Action;
-
-export const getChargeDetailsAction: Action = {
- name: "GET_CHARGE_DETAILS",
- similes: ["FETCH_CHARGE_DETAILS", "RETRIEVE_CHARGE_DETAILS", "GET_CHARGE"],
- description: "Fetch details of a specific charge using Coinbase Commerce.",
- validate: async (runtime: IAgentRuntime) => {
- const coinbaseCommerceKeyOk = !!runtime.getSetting(
- "COINBASE_COMMERCE_KEY"
- );
-
- // Ensure Coinbase Commerce API key is available
- return coinbaseCommerceKeyOk;
- },
- handler: async (
- runtime: IAgentRuntime,
- message: Memory,
- state: State,
- options: any,
- callback: HandlerCallback
- ) => {
- elizaLogger.log("Composing state for message:", message);
- if (!state) {
- state = (await runtime.composeState(message)) as State;
- } else {
- state = await runtime.updateRecentMessageState(state);
- }
-
- const context = composeContext({
- state,
- template: getChargeTemplate,
- });
- const chargeDetails = await generateObjectV2({
- runtime,
- context,
- modelClass: ModelClass.SMALL,
- schema: ChargeSchema,
- });
- if (!isChargeContent(chargeDetails.object)) {
- throw new Error("Invalid content");
- }
- const charge = chargeDetails.object as ChargeContent;
- if (!charge.id) {
- callback(
- {
- text: "Missing charge ID. Please provide a valid charge ID.",
- },
- []
- );
- return;
- }
-
- try {
- const chargeDetails = await getChargeDetails(
- runtime.getSetting("COINBASE_COMMERCE_KEY"),
- charge.id
- );
-
- elizaLogger.log("Fetched charge details:", chargeDetails);
-
- callback(
- {
- text: `Successfully fetched charge details for ID: ${charge.id}`,
- attachments: [
- {
- id: crypto.randomUUID(),
- url: chargeDetails.hosted_url,
- title: `Charge Details for ${charge.id}`,
- description: `Details: ${JSON.stringify(chargeDetails, null, 2)}`,
- source: "coinbase",
- text: "",
- },
- ],
- },
- []
- );
- } catch (error) {
- elizaLogger.error(
- `Error fetching details for charge ID ${charge.id}:`,
- error
- );
- callback(
- {
- text: `Failed to fetch details for charge ID: ${charge.id}. Please try again.`,
- },
- []
- );
- }
- },
- examples: [
- [
- {
- user: "{{user1}}",
- content: {
- text: "Fetch details of charge ID: 123456",
- },
- },
- {
- user: "{{agentName}}",
- content: {
- text: "Successfully fetched charge details. {{charge.id}} for {{charge.amount}} {{charge.currency}} to {{charge.name}} for {{charge.description}}",
- action: "GET_CHARGE_DETAILS",
- },
- },
- ],
- ],
-};
-
-export const chargeProvider: Provider = {
- get: async (runtime: IAgentRuntime, message: Memory) => {
- const charges = await getAllCharges(
- runtime.getSetting("COINBASE_COMMERCE_KEY")
- );
- return charges.data;
- },
+export const plugins = {
+ coinbaseMassPaymentsPlugin,
+ coinbaseCommercePlugin,
};
-export const coinbaseCommercePlugin: Plugin = {
- name: "coinbaseCommerce",
- description:
- "Integration with Coinbase Commerce for creating and managing charges.",
- actions: [
- createCoinbaseChargeAction,
- getAllChargesAction,
- getChargeDetailsAction,
- ],
- evaluators: [],
- providers: [chargeProvider],
-};
+export * from "./plugins/massPayments";
+export * from "./plugins/commerce";
diff --git a/packages/plugin-coinbase/src/plugins/commerce.ts b/packages/plugin-coinbase/src/plugins/commerce.ts
new file mode 100644
index 00000000000..698d94dc15a
--- /dev/null
+++ b/packages/plugin-coinbase/src/plugins/commerce.ts
@@ -0,0 +1,438 @@
+import {
+ composeContext,
+ elizaLogger,
+ generateObjectV2,
+ ModelClass,
+ Provider,
+} from "@ai16z/eliza";
+import {
+ Action,
+ HandlerCallback,
+ IAgentRuntime,
+ Memory,
+ Plugin,
+ State,
+} from "@ai16z/eliza";
+import { ChargeContent, ChargeSchema, isChargeContent } from "../types";
+import { chargeTemplate, getChargeTemplate } from "../templates";
+
+const url = "https://api.commerce.coinbase.com/charges";
+interface ChargeRequest {
+ name: string;
+ description: string;
+ pricing_type: string;
+ local_price: {
+ amount: string;
+ currency: string;
+ };
+}
+
+export async function createCharge(apiKey: string, params: ChargeRequest) {
+ try {
+ const response = await fetch(url, {
+ method: "POST",
+ headers: {
+ "Content-Type": "application/json",
+ "X-CC-Api-Key": apiKey,
+ },
+ body: JSON.stringify(params),
+ });
+
+ if (!response.ok) {
+ throw new Error(`Failed to create charge: ${response.statusText}`);
+ }
+
+ const data = await response.json();
+ return data.data;
+ } catch (error) {
+ console.error("Error creating charge:", error);
+ throw error;
+ }
+}
+
+// Function to fetch all charges
+export async function getAllCharges(apiKey: string) {
+ try {
+ const response = await fetch(url, {
+ method: "GET",
+ headers: {
+ "Content-Type": "application/json",
+ "X-CC-Api-Key": apiKey,
+ },
+ });
+
+ if (!response.ok) {
+ throw new Error(
+ `Failed to fetch all charges: ${response.statusText}`
+ );
+ }
+
+ const data = await response.json();
+ return data.data;
+ } catch (error) {
+ console.error("Error fetching charges:", error);
+ throw error;
+ }
+}
+
+// Function to fetch details of a specific charge
+export async function getChargeDetails(apiKey: string, chargeId: string) {
+ const getUrl = `${url}${chargeId}`;
+
+ try {
+ const response = await fetch(getUrl, {
+ method: "GET",
+ headers: {
+ "Content-Type": "application/json",
+ "X-CC-Api-Key": apiKey,
+ },
+ });
+
+ if (!response.ok) {
+ throw new Error(
+ `Failed to fetch charge details: ${response.statusText}`
+ );
+ }
+
+ const data = await response.json();
+ return data;
+ } catch (error) {
+ console.error(
+ `Error fetching charge details for ID ${chargeId}:`,
+ error
+ );
+ throw error;
+ }
+}
+
+export const createCoinbaseChargeAction: Action = {
+ name: "CREATE_CHARGE",
+ similes: [
+ "MAKE_CHARGE",
+ "INITIATE_CHARGE",
+ "GENERATE_CHARGE",
+ "CREATE_TRANSACTION",
+ "COINBASE_CHARGE",
+ ],
+ description: "Create a charge using Coinbase Commerce.",
+ validate: async (runtime: IAgentRuntime, message: Memory) => {
+ const coinbaseCommerceKeyOk = !!runtime.getSetting(
+ "COINBASE_COMMERCE_KEY"
+ );
+
+ // Ensure Coinbase Commerce API key is available
+ return coinbaseCommerceKeyOk;
+ },
+ handler: async (
+ runtime: IAgentRuntime,
+ message: Memory,
+ state: State,
+ options: any,
+ callback: HandlerCallback
+ ) => {
+ elizaLogger.log("Composing state for message:", message);
+ if (!state) {
+ state = (await runtime.composeState(message)) as State;
+ } else {
+ state = await runtime.updateRecentMessageState(state);
+ }
+
+ const context = composeContext({
+ state,
+ template: chargeTemplate,
+ });
+
+ const chargeDetails = await generateObjectV2({
+ runtime,
+ context,
+ modelClass: ModelClass.SMALL,
+ schema: ChargeSchema,
+ });
+ if (!isChargeContent(chargeDetails.object)) {
+ throw new Error("Invalid content");
+ }
+ const charge = chargeDetails.object as ChargeContent;
+ if (!charge || !charge.price || !charge.type) {
+ callback(
+ {
+ text: "Invalid charge details provided.",
+ },
+ []
+ );
+ return;
+ }
+
+ elizaLogger.log("Charge details received:", chargeDetails);
+
+ // Initialize Coinbase Commerce client
+
+ try {
+ // Create a charge
+ const chargeResponse = await createCharge(
+ runtime.getSetting("COINBASE_COMMERCE_KEY"),
+ {
+ local_price: {
+ amount: charge.price.toString(),
+ currency: charge.currency,
+ },
+ pricing_type: charge.type,
+ name: charge.name,
+ description: charge.description,
+ }
+ );
+
+ elizaLogger.log(
+ "Coinbase Commerce charge created:",
+ chargeResponse
+ );
+
+ callback(
+ {
+ text: `Charge created successfully: ${chargeResponse.hosted_url}`,
+ attachments: [
+ {
+ id: crypto.randomUUID(),
+ url: chargeResponse.id,
+ title: "Coinbase Commerce Charge",
+ description: `Charge ID: ${chargeResponse.id}`,
+ text: `Pay here: ${chargeResponse.hosted_url}`,
+ source: "coinbase",
+ },
+ ],
+ },
+ []
+ );
+ } catch (error) {
+ elizaLogger.error(
+ "Error creating Coinbase Commerce charge:",
+ error
+ );
+ callback(
+ {
+ text: "Failed to create a charge. Please try again.",
+ },
+ []
+ );
+ }
+ },
+ examples: [
+ [
+ {
+ user: "{{user1}}",
+ content: {
+ text: "Create a charge for $10.00 USD to Chris for dinner",
+ data: {
+ local_price: {
+ amount: "10.00",
+ currency: "USD",
+ },
+ pricing_type: "fixed_price",
+ buyer_locale: "en-US",
+ cancel_url: "https://example.com/cancel",
+ redirect_url: "https://example.com/success",
+ },
+ },
+ },
+ {
+ user: "{{agentName}}",
+ content: {
+ text: "Charge created successfully: {{charge.id}} for {{charge.amount}} {{charge.currency}}",
+ action: "CREATE_CHARGE",
+ },
+ },
+ ],
+ ],
+} as Action;
+
+export const getAllChargesAction: Action = {
+ name: "GET_ALL_CHARGES",
+ similes: ["FETCH_ALL_CHARGES", "RETRIEVE_ALL_CHARGES", "LIST_ALL_CHARGES"],
+ description: "Fetch all charges using Coinbase Commerce.",
+ validate: async (runtime: IAgentRuntime) => {
+ const coinbaseCommerceKeyOk = !!runtime.getSetting(
+ "COINBASE_COMMERCE_KEY"
+ );
+
+ // Ensure Coinbase Commerce API key is available
+ return coinbaseCommerceKeyOk;
+ },
+ handler: async (
+ runtime: IAgentRuntime,
+ message: Memory,
+ state: State,
+ options: any,
+ callback: HandlerCallback
+ ) => {
+ try {
+ elizaLogger.log("Composing state for message:", message);
+ if (!state) {
+ state = (await runtime.composeState(message)) as State;
+ } else {
+ state = await runtime.updateRecentMessageState(state);
+ }
+ const charges = await getAllCharges(
+ runtime.getSetting("COINBASE_COMMERCE_KEY")
+ );
+
+ elizaLogger.log("Fetched all charges:", charges);
+
+ callback(
+ {
+ text: `Successfully fetched all charges. Total charges: ${charges.length}`,
+ },
+ []
+ );
+ } catch (error) {
+ elizaLogger.error("Error fetching all charges:", error);
+ callback(
+ {
+ text: "Failed to fetch all charges. Please try again.",
+ },
+ []
+ );
+ }
+ },
+ examples: [
+ [
+ {
+ user: "{{user1}}",
+ content: { text: "Fetch all charges" },
+ },
+ {
+ user: "{{agentName}}",
+ content: {
+ text: "Successfully fetched all charges.",
+ action: "GET_ALL_CHARGES",
+ },
+ },
+ ],
+ ],
+} as Action;
+
+export const getChargeDetailsAction: Action = {
+ name: "GET_CHARGE_DETAILS",
+ similes: ["FETCH_CHARGE_DETAILS", "RETRIEVE_CHARGE_DETAILS", "GET_CHARGE"],
+ description: "Fetch details of a specific charge using Coinbase Commerce.",
+ validate: async (runtime: IAgentRuntime) => {
+ const coinbaseCommerceKeyOk = !!runtime.getSetting(
+ "COINBASE_COMMERCE_KEY"
+ );
+
+ // Ensure Coinbase Commerce API key is available
+ return coinbaseCommerceKeyOk;
+ },
+ handler: async (
+ runtime: IAgentRuntime,
+ message: Memory,
+ state: State,
+ options: any,
+ callback: HandlerCallback
+ ) => {
+ elizaLogger.log("Composing state for message:", message);
+ if (!state) {
+ state = (await runtime.composeState(message)) as State;
+ } else {
+ state = await runtime.updateRecentMessageState(state);
+ }
+
+ const context = composeContext({
+ state,
+ template: getChargeTemplate,
+ });
+ const chargeDetails = await generateObjectV2({
+ runtime,
+ context,
+ modelClass: ModelClass.SMALL,
+ schema: ChargeSchema,
+ });
+ if (!isChargeContent(chargeDetails.object)) {
+ throw new Error("Invalid content");
+ }
+ const charge = chargeDetails.object as ChargeContent;
+ if (!charge.id) {
+ callback(
+ {
+ text: "Missing charge ID. Please provide a valid charge ID.",
+ },
+ []
+ );
+ return;
+ }
+
+ try {
+ const chargeDetails = await getChargeDetails(
+ runtime.getSetting("COINBASE_COMMERCE_KEY"),
+ charge.id
+ );
+
+ elizaLogger.log("Fetched charge details:", chargeDetails);
+
+ callback(
+ {
+ text: `Successfully fetched charge details for ID: ${charge.id}`,
+ attachments: [
+ {
+ id: crypto.randomUUID(),
+ url: chargeDetails.hosted_url,
+ title: `Charge Details for ${charge.id}`,
+ description: `Details: ${JSON.stringify(chargeDetails, null, 2)}`,
+ source: "coinbase",
+ text: "",
+ },
+ ],
+ },
+ []
+ );
+ } catch (error) {
+ elizaLogger.error(
+ `Error fetching details for charge ID ${charge.id}:`,
+ error
+ );
+ callback(
+ {
+ text: `Failed to fetch details for charge ID: ${charge.id}. Please try again.`,
+ },
+ []
+ );
+ }
+ },
+ examples: [
+ [
+ {
+ user: "{{user1}}",
+ content: {
+ text: "Fetch details of charge ID: 123456",
+ },
+ },
+ {
+ user: "{{agentName}}",
+ content: {
+ text: "Successfully fetched charge details. {{charge.id}} for {{charge.amount}} {{charge.currency}} to {{charge.name}} for {{charge.description}}",
+ action: "GET_CHARGE_DETAILS",
+ },
+ },
+ ],
+ ],
+};
+
+export const chargeProvider: Provider = {
+ get: async (runtime: IAgentRuntime, message: Memory) => {
+ const charges = await getAllCharges(
+ runtime.getSetting("COINBASE_COMMERCE_KEY")
+ );
+ return charges.data;
+ },
+};
+
+export const coinbaseCommercePlugin: Plugin = {
+ name: "coinbaseCommerce",
+ description:
+ "Integration with Coinbase Commerce for creating and managing charges.",
+ actions: [
+ createCoinbaseChargeAction,
+ getAllChargesAction,
+ getChargeDetailsAction,
+ ],
+ evaluators: [],
+ providers: [chargeProvider],
+};
diff --git a/packages/plugin-coinbase/src/plugins/massPayments.ts b/packages/plugin-coinbase/src/plugins/massPayments.ts
new file mode 100644
index 00000000000..3f36cf9230c
--- /dev/null
+++ b/packages/plugin-coinbase/src/plugins/massPayments.ts
@@ -0,0 +1,519 @@
+import { Coinbase, Wallet, WalletData } from "@coinbase/coinbase-sdk";
+import {
+ composeContext,
+ elizaLogger,
+ generateObjectV2,
+ ModelClass,
+ Action,
+ IAgentRuntime,
+ Memory,
+ Provider,
+ State,
+ HandlerCallback,
+ Plugin,
+} from "@ai16z/eliza";
+import {
+ TransferSchema,
+ isTransferContent,
+ TransferContent,
+ Transaction,
+} from "../types";
+import { transferTemplate } from "../templates";
+import { readFile } from "fs/promises";
+import { parse } from "csv-parse/sync";
+import path from "path";
+import { fileURLToPath } from "url";
+import fs from "fs";
+import { createArrayCsvWriter } from "csv-writer";
+
+// Dynamically resolve the file path to the src/plugins directory
+const __filename = fileURLToPath(import.meta.url);
+const __dirname = path.dirname(__filename);
+const baseDir = path.resolve(__dirname, "../../plugin-coinbase/src/plugins");
+const csvFilePath = path.join(baseDir, "transactions.csv");
+
+export const massPayoutProvider: Provider = {
+ get: async (_runtime: IAgentRuntime, _message: Memory) => {
+ try {
+ elizaLogger.log("Reading CSV file from:", csvFilePath);
+
+ // Check if the file exists; if not, create it with headers
+ if (!fs.existsSync(csvFilePath)) {
+ elizaLogger.warn("CSV file not found. Creating a new one.");
+ const csvWriter = createArrayCsvWriter({
+ path: csvFilePath,
+ header: [
+ "Address",
+ "Amount",
+ "Status",
+ "Error Code",
+ "Transaction URL",
+ ],
+ });
+ await csvWriter.writeRecords([]); // Create an empty file with headers
+ elizaLogger.log("New CSV file created with headers.");
+ }
+
+ // Read and parse the CSV file
+ const csvData = await readFile(csvFilePath, "utf-8");
+ const records = parse(csvData, {
+ columns: true,
+ skip_empty_lines: true,
+ });
+
+ elizaLogger.log("Parsed CSV records:", records);
+ return records.map((record: any) => ({
+ address: record["Address"] || undefined,
+ amount: parseFloat(record["Amount"]) || undefined,
+ status: record["Status"] || undefined,
+ errorCode: record["Error Code"] || "",
+ transactionUrl: record["Transaction URL"] || "",
+ }));
+ } catch (error) {
+ elizaLogger.error("Error in massPayoutProvider:", error);
+ return [];
+ }
+ },
+};
+
+export async function appendTransactionsToCsv(transactions: Transaction[]) {
+ try {
+ const csvWriter = createArrayCsvWriter({
+ path: csvFilePath,
+ header: [
+ "Address",
+ "Amount",
+ "Status",
+ "Error Code",
+ "Transaction URL",
+ ],
+ append: true,
+ });
+
+ const formattedTransactions = transactions.map((transaction) => [
+ transaction.address,
+ transaction.amount.toString(),
+ transaction.status,
+ transaction.errorCode || "",
+ transaction.transactionUrl || "",
+ ]);
+
+ elizaLogger.log("Writing transactions to CSV:", formattedTransactions);
+ await csvWriter.writeRecords(formattedTransactions);
+ elizaLogger.log("All transactions written to CSV successfully.");
+ } catch (error) {
+ elizaLogger.error("Error writing transactions to CSV:", error);
+ }
+}
+
+async function initializeWallet(runtime: IAgentRuntime, networkId: string) {
+ let wallet: Wallet;
+ const storedSeed =
+ runtime.getSetting("COINBASE_GENERATED_WALLET_HEX_SEED") ??
+ process.env.COINBASE_GENERATED_WALLET_HEX_SEED;
+
+ const storedWalletId =
+ runtime.getSetting("COINBASE_GENERATED_WALLET_ID") ??
+ process.env.COINBASE_GENERATED_WALLET_ID;
+ if (!storedSeed || !storedWalletId) {
+ // No stored seed or wallet ID, creating a new wallet
+ wallet = await Wallet.create({ networkId });
+
+ // Export wallet data directly
+ const walletData: WalletData = wallet.export();
+ const walletAddress = await wallet.getDefaultAddress();
+ try {
+ const characterFilePath = `characters/${runtime.character.name.toLowerCase()}.character.json`;
+ const walletIDSave = await updateCharacterSecrets(
+ characterFilePath,
+ "COINBASE_GENERATED_WALLET_ID",
+ walletData.walletId
+ );
+ const seedSave = await updateCharacterSecrets(
+ characterFilePath,
+ "COINBASE_GENERATED_WALLET_HEX_SEED",
+ walletData.seed
+ );
+ if (walletIDSave && seedSave) {
+ elizaLogger.log("Successfully updated character secrets.");
+ } else {
+ const seedFilePath = `characters/${runtime.character.name.toLowerCase()}-seed.txt`;
+ elizaLogger.error(
+ `Failed to update character secrets so adding gitignored ${seedFilePath} file please add it your env or character file and delete:`
+ );
+ // save it to gitignored file
+ wallet.saveSeed(seedFilePath);
+ }
+ } catch (error) {
+ elizaLogger.error("Error updating character secrets:", error);
+ throw error;
+ }
+
+ // Logging wallet creation
+ elizaLogger.log("Created and stored new wallet:", walletAddress);
+ } else {
+ // Importing existing wallet using stored seed and wallet ID
+ wallet = await Wallet.import({
+ seed: storedSeed,
+ walletId: storedWalletId,
+ });
+
+ // Logging wallet import
+ elizaLogger.log(
+ "Imported existing wallet:",
+ await wallet.getDefaultAddress()
+ );
+ }
+
+ return wallet;
+}
+
+async function executeMassPayout(
+ runtime: IAgentRuntime,
+ networkId: string,
+ receivingAddresses: string[],
+ transferAmount: number,
+ assetId: string
+): Promise {
+ const transactions: Transaction[] = [];
+ try {
+ const sendingWallet = await initializeWallet(runtime, networkId);
+ for (const address of receivingAddresses) {
+ elizaLogger.log("Processing payout for address:", address);
+ if (address) {
+ try {
+ // Check balance before initiating transfer
+ const walletBalance = await sendingWallet.getBalance(
+ assetId.toLowerCase()
+ );
+
+ elizaLogger.log("Wallet balance for asset:", {
+ assetId,
+ walletBalance,
+ });
+
+ if (walletBalance.lessThan(transferAmount)) {
+ const insufficientFunds = `Insufficient funds for address ${address}. Required: ${transferAmount}, Available: ${walletBalance}`;
+ elizaLogger.error(insufficientFunds);
+
+ transactions.push({
+ address,
+ amount: transferAmount,
+ status: "Failed",
+ errorCode: insufficientFunds,
+ transactionUrl: null,
+ });
+ continue;
+ }
+
+ const transferDetails = {
+ amount: transferAmount,
+ assetId: assetId.toLowerCase(),
+ destination: address,
+ };
+ elizaLogger.log("Initiating transfer:", transferDetails);
+
+ const transfer =
+ await sendingWallet.createTransfer(transferDetails);
+ await transfer.wait();
+
+ const transactionUrl = transfer.getTransactionLink();
+ elizaLogger.log("Transfer successful:", {
+ address,
+ transactionUrl,
+ });
+
+ transactions.push({
+ address,
+ amount: transferAmount,
+ status: "Success",
+ errorCode: null,
+ transactionUrl,
+ });
+ } catch (error) {
+ elizaLogger.error(
+ "Error during transfer for address:",
+ address,
+ error
+ );
+ transactions.push({
+ address,
+ amount: transferAmount,
+ status: "Failed",
+ errorCode: error?.code || "Unknown Error",
+ transactionUrl: null,
+ });
+ }
+ } else {
+ elizaLogger.log("Skipping invalid or empty address.");
+ transactions.push({
+ address: "Invalid or Empty",
+ amount: transferAmount,
+ status: "Failed",
+ errorCode: "Invalid Address",
+ transactionUrl: null,
+ });
+ }
+ }
+
+ await appendTransactionsToCsv(transactions);
+ elizaLogger.log("Finished processing mass payouts.");
+ return transactions;
+ } catch (error) {
+ elizaLogger.error(
+ "Error initializing sending wallet or processing payouts:",
+ error
+ );
+ throw error; // Re-throw the error to be caught in the handler
+ }
+}
+
+// Action for sending mass payouts
+export const sendMassPayoutAction: Action = {
+ name: "SEND_MASS_PAYOUT",
+ similes: ["BULK_TRANSFER", "DISTRIBUTE_FUNDS", "SEND_PAYMENTS"],
+ description:
+ "Sends mass payouts to a list of receiving addresses using a predefined sending wallet and logs all transactions to a CSV file.",
+ validate: async (runtime: IAgentRuntime, message: Memory) => {
+ elizaLogger.log("Validating runtime and message...");
+ return (
+ !!(
+ runtime.character.settings.secrets?.COINBASE_API_KEY ||
+ process.env.COINBASE_API_KEY
+ ) &&
+ !!(
+ runtime.character.settings.secrets?.COINBASE_PRIVATE_KEY ||
+ process.env.COINBASE_PRIVATE_KEY
+ )
+ );
+ },
+ handler: async (
+ runtime: IAgentRuntime,
+ message: Memory,
+ state: State,
+ options: any,
+ callback: HandlerCallback
+ ) => {
+ elizaLogger.log("Starting SEND_MASS_PAYOUT handler...");
+ try {
+ Coinbase.configure({
+ apiKeyName:
+ runtime.getSetting("COINBASE_API_KEY") ??
+ process.env.COINBASE_API_KEY,
+ privateKey:
+ runtime.getSetting("COINBASE_PRIVATE_KEY") ??
+ process.env.COINBASE_PRIVATE_KEY,
+ });
+ if (!state) {
+ state = (await runtime.composeState(message, {
+ providers: [massPayoutProvider],
+ })) as State;
+ } else {
+ state = await runtime.updateRecentMessageState(state);
+ }
+
+ const context = composeContext({
+ state,
+ template: transferTemplate,
+ });
+
+ const transferDetails = await generateObjectV2({
+ runtime,
+ context,
+ modelClass: ModelClass.SMALL,
+ schema: TransferSchema,
+ });
+
+ elizaLogger.log(
+ "Transfer details generated:",
+ transferDetails.object
+ );
+
+ if (!isTransferContent(transferDetails.object)) {
+ callback(
+ {
+ text: "Invalid transfer details. Please check the inputs.",
+ },
+ []
+ );
+ return;
+ }
+
+ const { receivingAddresses, transferAmount, assetId, network } =
+ transferDetails.object as TransferContent;
+
+ const allowedNetworks = Object.values(Coinbase.networks);
+
+ if (
+ !network ||
+ !allowedNetworks.includes(network.toLowerCase() as any) ||
+ !receivingAddresses?.length ||
+ transferAmount <= 0 ||
+ !assetId
+ ) {
+ elizaLogger.error("Missing or invalid input parameters:", {
+ network,
+ receivingAddresses,
+ transferAmount,
+ assetId,
+ });
+ callback(
+ {
+ text: `Invalid input parameters. Please ensure:
+- Network is one of: ${allowedNetworks.join(", ")}.
+- Receiving addresses are provided.
+- Transfer amount is greater than zero.
+- Asset ID is valid.`,
+ },
+ []
+ );
+ return;
+ }
+
+ elizaLogger.log("◎ Starting mass payout...");
+ const transactions = await executeMassPayout(
+ runtime,
+ network,
+ receivingAddresses,
+ transferAmount,
+ assetId
+ );
+
+ const successTransactions = transactions.filter(
+ (tx) => tx.status === "Success"
+ );
+ const failedTransactions = transactions.filter(
+ (tx) => tx.status === "Failed"
+ );
+ const successDetails = successTransactions
+ .map(
+ (tx) =>
+ `Address: ${tx.address}, Amount: ${tx.amount}, Transaction URL: ${
+ tx.transactionUrl || "N/A"
+ }`
+ )
+ .join("\n");
+ const failedDetails = failedTransactions
+ .map(
+ (tx) =>
+ `Address: ${tx.address}, Amount: ${tx.amount}, Error Code: ${
+ tx.errorCode || "Unknown Error"
+ }`
+ )
+ .join("\n");
+ callback(
+ {
+ text: `Mass payouts completed successfully.
+- Successful Transactions: ${successTransactions.length}
+- Failed Transactions: ${failedTransactions.length}
+
+Details:
+${successTransactions.length > 0 ? `✅ Successful Transactions:\n${successDetails}` : "No successful transactions."}
+${failedTransactions.length > 0 ? `❌ Failed Transactions:\n${failedDetails}` : "No failed transactions."}
+
+Check the CSV file for full details.`,
+ },
+ []
+ );
+ } catch (error) {
+ elizaLogger.error("Error during mass payouts:", error);
+ callback(
+ { text: "Failed to complete payouts. Please try again." },
+ []
+ );
+ }
+ },
+ examples: [
+ [
+ {
+ user: "{{user1}}",
+ content: {
+ text: "Distribute 0.0001 ETH on base network to 0xA0ba2ACB5846A54834173fB0DD9444F756810f06 and 0xF14F2c49aa90BaFA223EE074C1C33b59891826bF",
+ },
+ },
+ {
+ user: "{{agentName}}",
+ content: {
+ text: `Mass payouts completed successfully.
+- Successful Transactions: {{2}}
+- Failed Transactions: {{1}}
+
+Details:
+✅ Successful Transactions:
+Address: 0xABC123..., Amount: 0.005, Transaction URL: https://etherscan.io/tx/...
+Address: 0xDEF456..., Amount: 0.005, Transaction URL: https://etherscan.io/tx/...
+
+❌ Failed Transactions:
+Address: 0xGHI789..., Amount: 0.005, Error Code: Insufficient Funds
+
+Check the CSV file for full details.`,
+ action: "SEND_MASS_PAYOUT",
+ },
+ },
+ ],
+ ],
+};
+
+export const coinbaseMassPaymentsPlugin: Plugin = {
+ name: "automatedPayments",
+ description:
+ "Processes mass payouts using Coinbase SDK and logs all transactions (success and failure) to a CSV file. Provides dynamic transaction data through a provider.",
+ actions: [sendMassPayoutAction],
+ providers: [massPayoutProvider],
+};
+
+/**
+ * Updates a key-value pair in character.settings.secrets.
+ * @param {string} characterfilePath - The file path to the character.
+ * @param {string} key - The secret key to update or add.
+ * @param {string} value - The new value for the secret key.
+ */
+export async function updateCharacterSecrets(
+ characterfilePath: string,
+ key: string,
+ value: string
+): Promise {
+ try {
+ const characterFilePath = path.resolve(
+ process.cwd(),
+ characterfilePath
+ );
+
+ // Check if the character file exists
+ if (!fs.existsSync(characterFilePath)) {
+ elizaLogger.error("Character file not found:", characterFilePath);
+ return false;
+ }
+
+ // Read the existing character file
+ const characterData = JSON.parse(
+ fs.readFileSync(characterFilePath, "utf-8")
+ );
+
+ // Ensure settings and secrets exist in the character file
+ if (!characterData.settings) {
+ characterData.settings = {};
+ }
+ if (!characterData.settings.secrets) {
+ characterData.settings.secrets = {};
+ }
+
+ // Update or add the key-value pair
+ characterData.settings.secrets[key] = value;
+
+ // Write the updated data back to the file
+ fs.writeFileSync(
+ characterFilePath,
+ JSON.stringify(characterData, null, 2),
+ "utf-8"
+ );
+
+ console.log(
+ `Updated ${key} in character.settings.secrets for ${characterFilePath}.`
+ );
+ } catch (error) {
+ elizaLogger.error("Error updating character secrets:", error);
+ return false;
+ }
+ return true;
+}
diff --git a/packages/plugin-coinbase/src/templates.ts b/packages/plugin-coinbase/src/templates.ts
index 9e574ce37ad..c8226996520 100644
--- a/packages/plugin-coinbase/src/templates.ts
+++ b/packages/plugin-coinbase/src/templates.ts
@@ -45,3 +45,35 @@ Provide the charge details in the following JSON format after retrieving the cha
Here are the recent user messages for context:
{{recentMessages}}
`;
+
+export const transferTemplate = `
+Extract the following details for processing a mass payout using the Coinbase SDK:
+- **receivingAddresses** (array): A list of wallet addresses receiving the funds.
+- **transferAmount** (number): The amount to transfer to each address (in the smallest unit, e.g., Wei for ETH).
+- **assetId** (string): The asset ID to transfer (e.g., ETH, BTC).
+- **network** (string): The blockchain network to use. Allowed values are:
+ static networks: {
+ readonly BaseSepolia: "base-sepolia";
+ readonly BaseMainnet: "base-mainnet";
+ readonly EthereumHolesky: "ethereum-holesky";
+ readonly EthereumMainnet: "ethereum-mainnet";
+ readonly PolygonMainnet: "polygon-mainnet";
+ readonly SolanaDevnet: "solana-devnet";
+ readonly SolanaMainnet: "solana-mainnet";
+ readonly ArbitrumMainnet: "arbitrum-mainnet";
+ };
+
+Provide the details in the following JSON format:
+
+\`\`\`json
+{
+ "receivingAddresses": ["", ""],
+ "transferAmount": ,
+ "assetId": "",
+ "network": ""
+}
+\`\`\`
+
+Here are the recent user messages for context:
+{{recentMessages}}
+`;
diff --git a/packages/plugin-coinbase/src/types.ts b/packages/plugin-coinbase/src/types.ts
index 78b0a06a98b..b6d24db7446 100644
--- a/packages/plugin-coinbase/src/types.ts
+++ b/packages/plugin-coinbase/src/types.ts
@@ -25,3 +25,29 @@ export const isChargeContent = (object: any): object is ChargeContent => {
console.error("Invalid content: ", object);
return false;
};
+
+export const TransferSchema = z.object({
+ network: z.string().toLowerCase(),
+ receivingAddresses: z.array(z.string()),
+ transferAmount: z.number(),
+ assetId: z.string().toLowerCase(),
+});
+
+export interface TransferContent {
+ network: string;
+ receivingAddresses: string[];
+ transferAmount: number;
+ assetId: string;
+}
+
+export const isTransferContent = (object: any): object is TransferContent => {
+ return TransferSchema.safeParse(object).success;
+};
+
+export type Transaction = {
+ address: string;
+ amount: number;
+ status: string;
+ errorCode: string | null;
+ transactionUrl: string | null;
+};
diff --git a/packages/plugin-coinbase/tsup.config.ts b/packages/plugin-coinbase/tsup.config.ts
index e42bf4efeae..91b5946d0a4 100644
--- a/packages/plugin-coinbase/tsup.config.ts
+++ b/packages/plugin-coinbase/tsup.config.ts
@@ -15,6 +15,12 @@ export default defineConfig({
"https",
"http",
"agentkeepalive",
+ "@coinbase/coinbase-sdk",
+ "fs/promises",
+ "csv-writer",
+ "csv-parse/sync",
+ "path",
+ "url",
// Add other modules you want to externalize
],
});
diff --git a/packages/plugin-conflux/README.md b/packages/plugin-conflux/README.md
new file mode 100644
index 00000000000..faa68cfa76a
--- /dev/null
+++ b/packages/plugin-conflux/README.md
@@ -0,0 +1,25 @@
+# @ai16z/plugin-conflux
+
+This plugin provides actions and providers for interacting with the [Conflux network](https://www.confluxdocs.com/docs/general).
+
+## Actions
+
+### ConfiPump
+
+Buy and sell tokens on Conflux's implementation of pump.fun (ConfiPump).
+
+### Transfer
+
+Transfer tokens from one address to another within Conflux core space.
+
+### Bridge Transfer
+
+Transfer tokens from one address to Conflux eSpace.
+
+### Sponsor (TBD)
+
+Provide gas for Conflux core space contracts so they can be called without the need to have Conflux in user's wallet.
+
+### Swap (TBD)
+
+Swap tokens on Conflux DEXs.
diff --git a/packages/plugin-conflux/package.json b/packages/plugin-conflux/package.json
new file mode 100644
index 00000000000..59c3ed8f796
--- /dev/null
+++ b/packages/plugin-conflux/package.json
@@ -0,0 +1,15 @@
+{
+ "name": "@ai16z/plugin-conflux",
+ "version": "0.0.1",
+ "main": "dist/index.js",
+ "type": "module",
+ "types": "dist/index.d.ts",
+ "dependencies": {
+ "cive": "^0.7.1",
+ "@ai16z/eliza": "workspace:*"
+ },
+ "scripts": {
+ "build": "tsup --format esm --dts",
+ "dev": "tsup --watch"
+ }
+}
diff --git a/packages/plugin-conflux/src/abi/crossSpaceCall.ts b/packages/plugin-conflux/src/abi/crossSpaceCall.ts
new file mode 100644
index 00000000000..f9ad2a67a07
--- /dev/null
+++ b/packages/plugin-conflux/src/abi/crossSpaceCall.ts
@@ -0,0 +1,184 @@
+const CrossSpaceCallAbi = [
+ {
+ anonymous: false,
+ inputs: [
+ {
+ indexed: true,
+ internalType: "bytes20",
+ name: "sender",
+ type: "bytes20",
+ },
+ {
+ indexed: true,
+ internalType: "bytes20",
+ name: "receiver",
+ type: "bytes20",
+ },
+ {
+ indexed: false,
+ internalType: "uint256",
+ name: "value",
+ type: "uint256",
+ },
+ {
+ indexed: false,
+ internalType: "uint256",
+ name: "nonce",
+ type: "uint256",
+ },
+ {
+ indexed: false,
+ internalType: "bytes",
+ name: "data",
+ type: "bytes",
+ },
+ ],
+ name: "Call",
+ type: "event",
+ },
+ {
+ anonymous: false,
+ inputs: [
+ {
+ indexed: true,
+ internalType: "bytes20",
+ name: "sender",
+ type: "bytes20",
+ },
+ {
+ indexed: true,
+ internalType: "bytes20",
+ name: "contract_address",
+ type: "bytes20",
+ },
+ {
+ indexed: false,
+ internalType: "uint256",
+ name: "value",
+ type: "uint256",
+ },
+ {
+ indexed: false,
+ internalType: "uint256",
+ name: "nonce",
+ type: "uint256",
+ },
+ {
+ indexed: false,
+ internalType: "bytes",
+ name: "init",
+ type: "bytes",
+ },
+ ],
+ name: "Create",
+ type: "event",
+ },
+ {
+ anonymous: false,
+ inputs: [
+ {
+ indexed: false,
+ internalType: "bool",
+ name: "success",
+ type: "bool",
+ },
+ ],
+ name: "Outcome",
+ type: "event",
+ },
+ {
+ anonymous: false,
+ inputs: [
+ {
+ indexed: true,
+ internalType: "bytes20",
+ name: "sender",
+ type: "bytes20",
+ },
+ {
+ indexed: true,
+ internalType: "address",
+ name: "receiver",
+ type: "address",
+ },
+ {
+ indexed: false,
+ internalType: "uint256",
+ name: "value",
+ type: "uint256",
+ },
+ {
+ indexed: false,
+ internalType: "uint256",
+ name: "nonce",
+ type: "uint256",
+ },
+ ],
+ name: "Withdraw",
+ type: "event",
+ },
+ {
+ inputs: [{ internalType: "bytes", name: "init", type: "bytes" }],
+ name: "createEVM",
+ outputs: [{ internalType: "bytes20", name: "", type: "bytes20" }],
+ stateMutability: "payable",
+ type: "function",
+ },
+ {
+ inputs: [{ internalType: "bytes20", name: "to", type: "bytes20" }],
+ name: "transferEVM",
+ outputs: [{ internalType: "bytes", name: "output", type: "bytes" }],
+ stateMutability: "payable",
+ type: "function",
+ },
+ {
+ inputs: [
+ { internalType: "bytes20", name: "to", type: "bytes20" },
+ { internalType: "bytes", name: "data", type: "bytes" },
+ ],
+ name: "callEVM",
+ outputs: [{ internalType: "bytes", name: "output", type: "bytes" }],
+ stateMutability: "payable",
+ type: "function",
+ },
+ {
+ inputs: [
+ { internalType: "bytes20", name: "to", type: "bytes20" },
+ { internalType: "bytes", name: "data", type: "bytes" },
+ ],
+ name: "staticCallEVM",
+ outputs: [{ internalType: "bytes", name: "output", type: "bytes" }],
+ stateMutability: "view",
+ type: "function",
+ },
+ {
+ inputs: [],
+ name: "deployEip1820",
+ outputs: [],
+ stateMutability: "nonpayable",
+ type: "function",
+ },
+ {
+ inputs: [{ internalType: "uint256", name: "value", type: "uint256" }],
+ name: "withdrawFromMapped",
+ outputs: [],
+ stateMutability: "nonpayable",
+ type: "function",
+ },
+ {
+ inputs: [{ internalType: "address", name: "addr", type: "address" }],
+ name: "mappedBalance",
+ outputs: [{ internalType: "uint256", name: "", type: "uint256" }],
+ stateMutability: "view",
+ type: "function",
+ },
+ {
+ inputs: [{ internalType: "address", name: "addr", type: "address" }],
+ name: "mappedNonce",
+ outputs: [{ internalType: "uint256", name: "", type: "uint256" }],
+ stateMutability: "view",
+ type: "function",
+ },
+];
+
+export default CrossSpaceCallAbi;
diff --git a/packages/plugin-conflux/src/abi/erc20.ts b/packages/plugin-conflux/src/abi/erc20.ts
new file mode 100644
index 00000000000..fa3a4262668
--- /dev/null
+++ b/packages/plugin-conflux/src/abi/erc20.ts
@@ -0,0 +1,119 @@
+const ERC20ABI = [
+ {
+ constant: true,
+ inputs: [],
+ name: 'name',
+ outputs: [{ name: '', type: 'string' }],
+ payable: false,
+ stateMutability: 'view',
+ type: 'function',
+ },
+ {
+ constant: false,
+ inputs: [
+ { name: '_spender', type: 'address' },
+ { name: '_value', type: 'uint256' },
+ ],
+ name: 'approve',
+ outputs: [{ name: '', type: 'bool' }],
+ payable: false,
+ stateMutability: 'view',
+ type: 'function',
+ },
+ {
+ constant: true,
+ inputs: [],
+ name: 'totalSupply',
+ outputs: [{ name: '', type: 'uint256' }],
+ payable: false,
+ stateMutability: 'view',
+ type: 'function',
+ },
+ {
+ constant: false,
+ inputs: [
+ { name: '_from', type: 'address' },
+ { name: '_to', type: 'address' },
+ { name: '_value', type: 'uint256' },
+ ],
+ name: 'transferFrom',
+ outputs: [{ name: '', type: 'bool' }],
+ payable: false,
+ stateMutability: 'nonpayable',
+ type: 'function',
+ },
+ {
+ constant: true,
+ inputs: [],
+ name: 'decimals',
+ outputs: [{ name: '', type: 'uint8' }],
+ payable: false,
+ stateMutability: 'view',
+ type: 'function',
+ },
+ {
+ constant: true,
+ inputs: [{ name: '_owner', type: 'address' }],
+ name: 'balanceOf',
+ outputs: [{ name: 'balance', type: 'uint256' }],
+ payable: false,
+ stateMutability: 'view',
+ type: 'function',
+ },
+ {
+ constant: true,
+ inputs: [],
+ name: 'symbol',
+ outputs: [{ name: '', type: 'string' }],
+ payable: false,
+ stateMutability: 'view',
+ type: 'function',
+ },
+ {
+ constant: false,
+ inputs: [
+ { name: '_to', type: 'address' },
+ { name: '_value', type: 'uint256' },
+ ],
+ name: 'transfer',
+ outputs: [{ name: '', type: 'bool' }],
+ payable: false,
+ stateMutability: 'nonpayable',
+ type: 'function',
+ },
+ {
+ constant: true,
+ inputs: [
+ { name: '_owner', type: 'address' },
+ { name: '_spender', type: 'address' },
+ ],
+ name: 'allowance',
+ outputs: [{ name: '', type: 'uint256' }],
+ payable: false,
+ stateMutability: 'view',
+ type: 'function',
+ },
+ { payable: true, stateMutability: 'payable', type: 'fallback' },
+ {
+ anonymous: false,
+ inputs: [
+ { indexed: true, name: 'owner', type: 'address' },
+ { indexed: true, name: 'spender', type: 'address' },
+ { indexed: false, name: 'value', type: 'uint256' },
+ ],
+ name: 'Approval',
+ type: 'event',
+ },
+ {
+ anonymous: false,
+ inputs: [
+ { indexed: true, name: 'from', type: 'address' },
+ { indexed: true, name: 'to', type: 'address' },
+ { indexed: false, name: 'value', type: 'uint256' },
+ ],
+ name: 'Transfer',
+ type: 'event',
+ },
+] as const;
+
+export default ERC20ABI;
\ No newline at end of file
diff --git a/packages/plugin-conflux/src/abi/meme.ts b/packages/plugin-conflux/src/abi/meme.ts
new file mode 100644
index 00000000000..0a1e5044154
--- /dev/null
+++ b/packages/plugin-conflux/src/abi/meme.ts
@@ -0,0 +1,1671 @@
+const MEMEABI = [
+ {
+ inputs: [
+ {
+ components: [
+ {
+ internalType: "address",
+ name: "tokenImpl_",
+ type: "address",
+ },
+ {
+ internalType: "address",
+ name: "tokenImplV2_",
+ type: "address",
+ },
+ {
+ internalType: "uint256",
+ name: "feeRate_",
+ type: "uint256",
+ },
+ {
+ internalType: "address",
+ name: "feeReceiver_",
+ type: "address",
+ },
+ {
+ internalType: "address",
+ name: "dexLauncher_",
+ type: "address",
+ },
+ {
+ internalType: "enum IConfiPumpTypes.DexThreshType",
+ name: "defaultDexThreshType_",
+ type: "uint8",
+ },
+ {
+ internalType: "enum IConfiPumpTypes.CurveType",
+ name: "defaultCurveType_",
+ type: "uint8",
+ },
+ {
+ internalType: "enum IConfiPumpTypes.TokenVersion",
+ name: "defaultTokenVersion_",
+ type: "uint8",
+ },
+ {
+ internalType: "address",
+ name: "v2Factory_",
+ type: "address",
+ },
+ {
+ internalType: "bytes32",
+ name: "v2InitCodeHash_",
+ type: "bytes32",
+ },
+ {
+ internalType: "address",
+ name: "weth_",
+ type: "address",
+ },
+ {
+ internalType: "uint256",
+ name: "creation_fee_",
+ type: "uint256",
+ },
+ {
+ internalType: "uint256",
+ name: "lpEth_",
+ type: "uint256",
+ },
+ {
+ internalType: "uint256",
+ name: "lpEthTokenCreator_",
+ type: "uint256",
+ },
+ ],
+ internalType: "struct ConfiPumpBase.ConfiPumpInitParams",
+ name: "params",
+ type: "tuple",
+ },
+ ],
+ stateMutability: "nonpayable",
+ type: "constructor",
+ },
+ {
+ inputs: [
+ {
+ internalType: "uint256",
+ name: "actualAmount",
+ type: "uint256",
+ },
+ {
+ internalType: "uint256",
+ name: "amount1",
+ type: "uint256",
+ },
+ ],
+ name: "ActualAmountMustLTEAmount",
+ type: "error",
+ },
+ {
+ inputs: [
+ {
+ internalType: "uint256",
+ name: "amount",
+ type: "uint256",
+ },
+ ],
+ name: "AmountTooSmall",
+ type: "error",
+ },
+ {
+ inputs: [],
+ name: "CallReverted",
+ type: "error",
+ },
+ {
+ inputs: [],
+ name: "FeatureDisabled",
+ type: "error",
+ },
+ {
+ inputs: [],
+ name: "GameNotLive",
+ type: "error",
+ },
+ {
+ inputs: [],
+ name: "GameNotPaused",
+ type: "error",
+ },
+ {
+ inputs: [],
+ name: "GameNotPending",
+ type: "error",
+ },
+ {
+ inputs: [],
+ name: "GameNotStarted",
+ type: "error",
+ },
+ {
+ inputs: [],
+ name: "InvalidDEXSupplyThreshold",
+ type: "error",
+ },
+ {
+ inputs: [
+ {
+ internalType: "uint256",
+ name: "threshold",
+ type: "uint256",
+ },
+ ],
+ name: "InvalidDexThreshold",
+ type: "error",
+ },
+ {
+ inputs: [
+ {
+ internalType: "enum IConfiPumpTypes.DexThreshType",
+ name: "threshold",
+ type: "uint8",
+ },
+ ],
+ name: "InvalidDexThresholdType",
+ type: "error",
+ },
+ {
+ inputs: [],
+ name: "InvalidGameSupplyThreshold",
+ type: "error",
+ },
+ {
+ inputs: [],
+ name: "InvalidLocks",
+ type: "error",
+ },
+ {
+ inputs: [
+ {
+ internalType: "uint256",
+ name: "expected",
+ type: "uint256",
+ },
+ {
+ internalType: "uint256",
+ name: "actual",
+ type: "uint256",
+ },
+ ],
+ name: "InvalidPiggybackLength",
+ type: "error",
+ },
+ {
+ inputs: [
+ {
+ internalType: "uint256",
+ name: "id",
+ type: "uint256",
+ },
+ ],
+ name: "InvalidRoundID",
+ type: "error",
+ },
+ {
+ inputs: [
+ {
+ internalType: "address",
+ name: "signer",
+ type: "address",
+ },
+ ],
+ name: "InvalidSigner",
+ type: "error",
+ },
+ {
+ inputs: [
+ {
+ internalType: "address",
+ name: "token",
+ type: "address",
+ },
+ ],
+ name: "InvalidTokenForBattle",
+ type: "error",
+ },
+ {
+ inputs: [
+ {
+ internalType: "address",
+ name: "token",
+ type: "address",
+ },
+ {
+ internalType: "enum IConfiPumpTypes.TokenMode",
+ name: "mode",
+ type: "uint8",
+ },
+ ],
+ name: "InvalidTokenModeForGame",
+ type: "error",
+ },
+ {
+ inputs: [
+ {
+ internalType: "address",
+ name: "token",
+ type: "address",
+ },
+ {
+ internalType: "enum IConfiPumpTypes.TokenMode",
+ name: "from",
+ type: "uint8",
+ },
+ {
+ internalType: "enum IConfiPumpTypes.TokenMode",
+ name: "to",
+ type: "uint8",
+ },
+ ],
+ name: "InvalidTokenModeTransition",
+ type: "error",
+ },
+ {
+ inputs: [],
+ name: "LastRoundNotResolved",
+ type: "error",
+ },
+ {
+ inputs: [
+ {
+ internalType: "address",
+ name: "expected",
+ type: "address",
+ },
+ {
+ internalType: "address",
+ name: "actual",
+ type: "address",
+ },
+ ],
+ name: "MismatchedAddressInProof",
+ type: "error",
+ },
+ {
+ inputs: [
+ {
+ internalType: "address",
+ name: "srcToken",
+ type: "address",
+ },
+ {
+ internalType: "address",
+ name: "dstToken",
+ type: "address",
+ },
+ ],
+ name: "NoConversionPath",
+ type: "error",
+ },
+ {
+ inputs: [
+ {
+ internalType: "uint256",
+ name: "created",
+ type: "uint256",
+ },
+ {
+ internalType: "uint256",
+ name: "max",
+ type: "uint256",
+ },
+ ],
+ name: "NoQuotaForCreator",
+ type: "error",
+ },
+ {
+ inputs: [
+ {
+ internalType: "address",
+ name: "collection",
+ type: "address",
+ },
+ ],
+ name: "NonPositionNFTReceived",
+ type: "error",
+ },
+ {
+ inputs: [],
+ name: "NotImplemented",
+ type: "error",
+ },
+ {
+ inputs: [],
+ name: "NotRoller",
+ type: "error",
+ },
+ {
+ inputs: [
+ {
+ internalType: "address",
+ name: "sender",
+ type: "address",
+ },
+ ],
+ name: "NotUniswapV3Pool",
+ type: "error",
+ },
+ {
+ inputs: [],
+ name: "PermissionlessCreateDisabled",
+ type: "error",
+ },
+ {
+ inputs: [
+ {
+ internalType: "uint160",
+ name: "sqrtPriceA",
+ type: "uint160",
+ },
+ {
+ internalType: "uint160",
+ name: "sqrtPriceB",
+ type: "uint160",
+ },
+ ],
+ name: "PriceAMustLTPriceB",
+ type: "error",
+ },
+ {
+ inputs: [],
+ name: "ProtocolDisabled",
+ type: "error",
+ },
+ {
+ inputs: [
+ {
+ internalType: "uint256",
+ name: "requiredToken",
+ type: "uint256",
+ },
+ {
+ internalType: "uint256",
+ name: "reserveToken",
+ type: "uint256",
+ },
+ ],
+ name: "RequiredTokenMustLTE",
+ type: "error",
+ },
+ {
+ inputs: [
+ {
+ internalType: "uint256",
+ name: "id",
+ type: "uint256",
+ },
+ ],
+ name: "RoundNotFound",
+ type: "error",
+ },
+ {
+ inputs: [
+ {
+ internalType: "address",
+ name: "tokenA",
+ type: "address",
+ },
+ ],
+ name: "SameToken",
+ type: "error",
+ },
+ {
+ inputs: [
+ {
+ internalType: "uint256",
+ name: "seq",
+ type: "uint256",
+ },
+ ],
+ name: "SeqNotFound",
+ type: "error",
+ },
+ {
+ inputs: [
+ {
+ internalType: "uint256",
+ name: "actualAmount",
+ type: "uint256",
+ },
+ {
+ internalType: "uint256",
+ name: "minAmount",
+ type: "uint256",
+ },
+ ],
+ name: "SlippageTooHigh",
+ type: "error",
+ },
+ {
+ inputs: [],
+ name: "StakingDisabled",
+ type: "error",
+ },
+ {
+ inputs: [
+ {
+ internalType: "uint256",
+ name: "newSupply",
+ type: "uint256",
+ },
+ ],
+ name: "SupplyExceedsTotalSupply",
+ type: "error",
+ },
+ {
+ inputs: [
+ {
+ internalType: "address",
+ name: "token",
+ type: "address",
+ },
+ ],
+ name: "TokenAlreadyDEXed",
+ type: "error",
+ },
+ {
+ inputs: [
+ {
+ internalType: "address",
+ name: "token",
+ type: "address",
+ },
+ ],
+ name: "TokenAlreadyInGame",
+ type: "error",
+ },
+ {
+ inputs: [
+ {
+ internalType: "address",
+ name: "token",
+ type: "address",
+ },
+ ],
+ name: "TokenInDuel",
+ type: "error",
+ },
+ {
+ inputs: [
+ {
+ internalType: "address",
+ name: "token",
+ type: "address",
+ },
+ ],
+ name: "TokenKilled",
+ type: "error",
+ },
+ {
+ inputs: [
+ {
+ internalType: "address",
+ name: "token",
+ type: "address",
+ },
+ ],
+ name: "TokenNotDEXed",
+ type: "error",
+ },
+ {
+ inputs: [
+ {
+ internalType: "address",
+ name: "token",
+ type: "address",
+ },
+ ],
+ name: "TokenNotFound",
+ type: "error",
+ },
+ {
+ inputs: [
+ {
+ internalType: "address",
+ name: "token",
+ type: "address",
+ },
+ ],
+ name: "TokenNotKilled",
+ type: "error",
+ },
+ {
+ inputs: [
+ {
+ internalType: "address",
+ name: "token",
+ type: "address",
+ },
+ ],
+ name: "TokenNotTradable",
+ type: "error",
+ },
+ {
+ inputs: [],
+ name: "TradeDisabled",
+ type: "error",
+ },
+ {
+ inputs: [
+ {
+ internalType: "address",
+ name: "pool",
+ type: "address",
+ },
+ {
+ internalType: "uint256",
+ name: "liquidity",
+ type: "uint256",
+ },
+ ],
+ name: "UniswapV2PoolNotZero",
+ type: "error",
+ },
+ {
+ inputs: [],
+ name: "UniswapV3Slot0Failed",
+ type: "error",
+ },
+ {
+ inputs: [
+ {
+ internalType: "uint256",
+ name: "next",
+ type: "uint256",
+ },
+ ],
+ name: "cannotCheckInUntil",
+ type: "error",
+ },
+ {
+ anonymous: false,
+ inputs: [
+ {
+ indexed: false,
+ internalType: "uint256",
+ name: "oldFlags",
+ type: "uint256",
+ },
+ {
+ indexed: false,
+ internalType: "uint256",
+ name: "newFlags",
+ type: "uint256",
+ },
+ ],
+ name: "BitFlagsChanged",
+ type: "event",
+ },
+ {
+ anonymous: false,
+ inputs: [
+ {
+ indexed: false,
+ internalType: "address",
+ name: "user",
+ type: "address",
+ },
+ ],
+ name: "CheckedIn",
+ type: "event",
+ },
+ {
+ anonymous: false,
+ inputs: [
+ {
+ indexed: false,
+ internalType: "address",
+ name: "token",
+ type: "address",
+ },
+ {
+ indexed: false,
+ internalType: "uint256",
+ name: "newSupply",
+ type: "uint256",
+ },
+ ],
+ name: "FlapTokenCirculatingSupplyChanged",
+ type: "event",
+ },
+ {
+ anonymous: false,
+ inputs: [
+ {
+ indexed: false,
+ internalType: "uint8",
+ name: "version",
+ type: "uint8",
+ },
+ ],
+ name: "Initialized",
+ type: "event",
+ },
+ {
+ anonymous: false,
+ inputs: [
+ {
+ indexed: false,
+ internalType: "address",
+ name: "token",
+ type: "address",
+ },
+ {
+ indexed: false,
+ internalType: "address",
+ name: "pool",
+ type: "address",
+ },
+ {
+ indexed: false,
+ internalType: "uint256",
+ name: "amount",
+ type: "uint256",
+ },
+ {
+ indexed: false,
+ internalType: "uint256",
+ name: "eth",
+ type: "uint256",
+ },
+ ],
+ name: "LaunchedToDEX",
+ type: "event",
+ },
+ {
+ anonymous: false,
+ inputs: [
+ {
+ indexed: true,
+ internalType: "bytes32",
+ name: "role",
+ type: "bytes32",
+ },
+ {
+ indexed: true,
+ internalType: "bytes32",
+ name: "previousAdminRole",
+ type: "bytes32",
+ },
+ {
+ indexed: true,
+ internalType: "bytes32",
+ name: "newAdminRole",
+ type: "bytes32",
+ },
+ ],
+ name: "RoleAdminChanged",
+ type: "event",
+ },
+ {
+ anonymous: false,
+ inputs: [
+ {
+ indexed: true,
+ internalType: "bytes32",
+ name: "role",
+ type: "bytes32",
+ },
+ {
+ indexed: true,
+ internalType: "address",
+ name: "account",
+ type: "address",
+ },
+ {
+ indexed: true,
+ internalType: "address",
+ name: "sender",
+ type: "address",
+ },
+ ],
+ name: "RoleGranted",
+ type: "event",
+ },
+ {
+ anonymous: false,
+ inputs: [
+ {
+ indexed: true,
+ internalType: "bytes32",
+ name: "role",
+ type: "bytes32",
+ },
+ {
+ indexed: true,
+ internalType: "address",
+ name: "account",
+ type: "address",
+ },
+ {
+ indexed: true,
+ internalType: "address",
+ name: "sender",
+ type: "address",
+ },
+ ],
+ name: "RoleRevoked",
+ type: "event",
+ },
+ {
+ anonymous: false,
+ inputs: [
+ {
+ indexed: false,
+ internalType: "uint256",
+ name: "ts",
+ type: "uint256",
+ },
+ {
+ indexed: false,
+ internalType: "address",
+ name: "token",
+ type: "address",
+ },
+ {
+ indexed: false,
+ internalType: "address",
+ name: "buyer",
+ type: "address",
+ },
+ {
+ indexed: false,
+ internalType: "uint256",
+ name: "amount",
+ type: "uint256",
+ },
+ {
+ indexed: false,
+ internalType: "uint256",
+ name: "eth",
+ type: "uint256",
+ },
+ {
+ indexed: false,
+ internalType: "uint256",
+ name: "fee",
+ type: "uint256",
+ },
+ {
+ indexed: false,
+ internalType: "uint256",
+ name: "postPrice",
+ type: "uint256",
+ },
+ ],
+ name: "TokenBought",
+ type: "event",
+ },
+ {
+ anonymous: false,
+ inputs: [
+ {
+ indexed: false,
+ internalType: "uint256",
+ name: "ts",
+ type: "uint256",
+ },
+ {
+ indexed: false,
+ internalType: "address",
+ name: "creator",
+ type: "address",
+ },
+ {
+ indexed: false,
+ internalType: "uint256",
+ name: "nonce",
+ type: "uint256",
+ },
+ {
+ indexed: false,
+ internalType: "address",
+ name: "token",
+ type: "address",
+ },
+ {
+ indexed: false,
+ internalType: "string",
+ name: "name",
+ type: "string",
+ },
+ {
+ indexed: false,
+ internalType: "string",
+ name: "symbol",
+ type: "string",
+ },
+ {
+ indexed: false,
+ internalType: "string",
+ name: "meta",
+ type: "string",
+ },
+ ],
+ name: "TokenCreated",
+ type: "event",
+ },
+ {
+ anonymous: false,
+ inputs: [
+ {
+ indexed: false,
+ internalType: "address",
+ name: "token",
+ type: "address",
+ },
+ {
+ indexed: false,
+ internalType: "address",
+ name: "curve",
+ type: "address",
+ },
+ {
+ indexed: false,
+ internalType: "uint256",
+ name: "curveParameter",
+ type: "uint256",
+ },
+ ],
+ name: "TokenCurveSet",
+ type: "event",
+ },
+ {
+ anonymous: false,
+ inputs: [
+ {
+ indexed: false,
+ internalType: "address",
+ name: "token",
+ type: "address",
+ },
+ {
+ indexed: false,
+ internalType: "uint256",
+ name: "dexSupplyThresh",
+ type: "uint256",
+ },
+ ],
+ name: "TokenDexSupplyThreshSet",
+ type: "event",
+ },
+ {
+ anonymous: false,
+ inputs: [
+ {
+ indexed: false,
+ internalType: "uint256",
+ name: "ts",
+ type: "uint256",
+ },
+ {
+ indexed: false,
+ internalType: "address",
+ name: "srcToken",
+ type: "address",
+ },
+ {
+ indexed: false,
+ internalType: "address",
+ name: "dstToken",
+ type: "address",
+ },
+ {
+ indexed: false,
+ internalType: "uint256",
+ name: "srcAmount",
+ type: "uint256",
+ },
+ {
+ indexed: false,
+ internalType: "uint256",
+ name: "dstAmount",
+ type: "uint256",
+ },
+ {
+ indexed: false,
+ internalType: "address",
+ name: "who",
+ type: "address",
+ },
+ ],
+ name: "TokenRedeemed",
+ type: "event",
+ },
+ {
+ anonymous: false,
+ inputs: [
+ {
+ indexed: false,
+ internalType: "uint256",
+ name: "ts",
+ type: "uint256",
+ },
+ {
+ indexed: false,
+ internalType: "address",
+ name: "token",
+ type: "address",
+ },
+ {
+ indexed: false,
+ internalType: "address",
+ name: "seller",
+ type: "address",
+ },
+ {
+ indexed: false,
+ internalType: "uint256",
+ name: "amount",
+ type: "uint256",
+ },
+ {
+ indexed: false,
+ internalType: "uint256",
+ name: "eth",
+ type: "uint256",
+ },
+ {
+ indexed: false,
+ internalType: "uint256",
+ name: "fee",
+ type: "uint256",
+ },
+ {
+ indexed: false,
+ internalType: "uint256",
+ name: "postPrice",
+ type: "uint256",
+ },
+ ],
+ name: "TokenSold",
+ type: "event",
+ },
+ {
+ anonymous: false,
+ inputs: [
+ {
+ indexed: false,
+ internalType: "address",
+ name: "token",
+ type: "address",
+ },
+ {
+ indexed: false,
+ internalType: "enum IConfiPumpTypes.TokenVersion",
+ name: "version",
+ type: "uint8",
+ },
+ ],
+ name: "TokenVersionSet",
+ type: "event",
+ },
+ {
+ stateMutability: "nonpayable",
+ type: "fallback",
+ },
+ {
+ inputs: [],
+ name: "DEFAULT_ADMIN_ROLE",
+ outputs: [
+ {
+ internalType: "bytes32",
+ name: "",
+ type: "bytes32",
+ },
+ ],
+ stateMutability: "view",
+ type: "function",
+ },
+ {
+ inputs: [
+ {
+ internalType: "address",
+ name: "token",
+ type: "address",
+ },
+ {
+ internalType: "address",
+ name: "recipient",
+ type: "address",
+ },
+ {
+ internalType: "uint256",
+ name: "minAmount",
+ type: "uint256",
+ },
+ {
+ internalType: "bool",
+ name: "isCreator",
+ type: "bool",
+ },
+ ],
+ name: "buy",
+ outputs: [
+ {
+ internalType: "uint256",
+ name: "",
+ type: "uint256",
+ },
+ ],
+ stateMutability: "payable",
+ type: "function",
+ },
+ {
+ inputs: [],
+ name: "checkIn",
+ outputs: [],
+ stateMutability: "nonpayable",
+ type: "function",
+ },
+ {
+ inputs: [
+ {
+ internalType: "bytes32",
+ name: "role",
+ type: "bytes32",
+ },
+ ],
+ name: "getRoleAdmin",
+ outputs: [
+ {
+ internalType: "bytes32",
+ name: "",
+ type: "bytes32",
+ },
+ ],
+ stateMutability: "view",
+ type: "function",
+ },
+ {
+ inputs: [
+ {
+ internalType: "address",
+ name: "token",
+ type: "address",
+ },
+ ],
+ name: "getToken",
+ outputs: [
+ {
+ components: [
+ {
+ internalType: "enum IConfiPumpTypes.TokenStatus",
+ name: "status",
+ type: "uint8",
+ },
+ {
+ internalType: "uint256",
+ name: "reserve",
+ type: "uint256",
+ },
+ {
+ internalType: "uint256",
+ name: "circulatingSupply",
+ type: "uint256",
+ },
+ {
+ internalType: "uint256",
+ name: "price",
+ type: "uint256",
+ },
+ {
+ internalType: "bool",
+ name: "inGame",
+ type: "bool",
+ },
+ {
+ internalType: "uint256",
+ name: "seqInGame",
+ type: "uint256",
+ },
+ ],
+ internalType: "struct IConfiPumpTypes.TokenState",
+ name: "",
+ type: "tuple",
+ },
+ ],
+ stateMutability: "view",
+ type: "function",
+ },
+ {
+ inputs: [
+ {
+ internalType: "address",
+ name: "token",
+ type: "address",
+ },
+ ],
+ name: "getTokenEx",
+ outputs: [
+ {
+ components: [
+ {
+ internalType: "enum IConfiPumpTypes.TokenStatus",
+ name: "status",
+ type: "uint8",
+ },
+ {
+ internalType: "uint256",
+ name: "reserve",
+ type: "uint256",
+ },
+ {
+ internalType: "uint256",
+ name: "circulatingSupply",
+ type: "uint256",
+ },
+ {
+ internalType: "uint256",
+ name: "price",
+ type: "uint256",
+ },
+ {
+ internalType: "bool",
+ name: "inGame",
+ type: "bool",
+ },
+ {
+ internalType: "uint256",
+ name: "seqInGame",
+ type: "uint256",
+ },
+ {
+ internalType: "enum IConfiPumpTypes.TokenMode",
+ name: "mode",
+ type: "uint8",
+ },
+ ],
+ internalType: "struct IConfiPumpTypes.TokenStateEx",
+ name: "",
+ type: "tuple",
+ },
+ ],
+ stateMutability: "view",
+ type: "function",
+ },
+ {
+ inputs: [
+ {
+ internalType: "address",
+ name: "token",
+ type: "address",
+ },
+ ],
+ name: "getTokenV2",
+ outputs: [
+ {
+ components: [
+ {
+ internalType: "enum IConfiPumpTypes.TokenStatus",
+ name: "status",
+ type: "uint8",
+ },
+ {
+ internalType: "uint256",
+ name: "reserve",
+ type: "uint256",
+ },
+ {
+ internalType: "uint256",
+ name: "circulatingSupply",
+ type: "uint256",
+ },
+ {
+ internalType: "uint256",
+ name: "price",
+ type: "uint256",
+ },
+ {
+ internalType: "enum IConfiPumpTypes.TokenVersion",
+ name: "tokenVersion",
+ type: "uint8",
+ },
+ {
+ internalType: "uint256",
+ name: "r",
+ type: "uint256",
+ },
+ {
+ internalType: "uint256",
+ name: "dexSupplyThresh",
+ type: "uint256",
+ },
+ ],
+ internalType: "struct IConfiPumpTypes.TokenStateV2",
+ name: "state",
+ type: "tuple",
+ },
+ ],
+ stateMutability: "view",
+ type: "function",
+ },
+ {
+ inputs: [
+ {
+ internalType: "bytes32",
+ name: "role",
+ type: "bytes32",
+ },
+ {
+ internalType: "address",
+ name: "account",
+ type: "address",
+ },
+ ],
+ name: "grantRole",
+ outputs: [],
+ stateMutability: "nonpayable",
+ type: "function",
+ },
+ {
+ inputs: [
+ {
+ internalType: "bytes32",
+ name: "role",
+ type: "bytes32",
+ },
+ {
+ internalType: "address",
+ name: "account",
+ type: "address",
+ },
+ ],
+ name: "hasRole",
+ outputs: [
+ {
+ internalType: "bool",
+ name: "",
+ type: "bool",
+ },
+ ],
+ stateMutability: "view",
+ type: "function",
+ },
+ {
+ inputs: [
+ {
+ internalType: "address",
+ name: "admin",
+ type: "address",
+ },
+ ],
+ name: "initialize",
+ outputs: [],
+ stateMutability: "nonpayable",
+ type: "function",
+ },
+ {
+ inputs: [
+ {
+ internalType: "address",
+ name: "account",
+ type: "address",
+ },
+ ],
+ name: "lastCheckIn",
+ outputs: [
+ {
+ internalType: "uint256",
+ name: "",
+ type: "uint256",
+ },
+ ],
+ stateMutability: "view",
+ type: "function",
+ },
+ {
+ inputs: [
+ {
+ internalType: "string",
+ name: "name",
+ type: "string",
+ },
+ {
+ internalType: "string",
+ name: "symbol",
+ type: "string",
+ },
+ {
+ internalType: "string",
+ name: "meta",
+ type: "string",
+ },
+ ],
+ name: "newToken",
+ outputs: [
+ {
+ internalType: "address",
+ name: "token",
+ type: "address",
+ },
+ ],
+ stateMutability: "payable",
+ type: "function",
+ },
+ {
+ inputs: [
+ {
+ internalType: "string",
+ name: "name",
+ type: "string",
+ },
+ {
+ internalType: "string",
+ name: "symbol",
+ type: "string",
+ },
+ {
+ internalType: "string",
+ name: "meta",
+ type: "string",
+ },
+ ],
+ name: "newTokenNoDuel",
+ outputs: [
+ {
+ internalType: "address",
+ name: "token",
+ type: "address",
+ },
+ ],
+ stateMutability: "payable",
+ type: "function",
+ },
+ {
+ inputs: [
+ {
+ internalType: "string",
+ name: "name",
+ type: "string",
+ },
+ {
+ internalType: "string",
+ name: "symbol",
+ type: "string",
+ },
+ {
+ internalType: "string",
+ name: "meta",
+ type: "string",
+ },
+ {
+ internalType: "enum IConfiPumpTypes.DexThreshType",
+ name: "dexTreshType",
+ type: "uint8",
+ },
+ ],
+ name: "newTokenWithDexSupplyThresh",
+ outputs: [
+ {
+ internalType: "address",
+ name: "token",
+ type: "address",
+ },
+ ],
+ stateMutability: "payable",
+ type: "function",
+ },
+ {
+ inputs: [],
+ name: "nonce",
+ outputs: [
+ {
+ internalType: "uint256",
+ name: "",
+ type: "uint256",
+ },
+ ],
+ stateMutability: "view",
+ type: "function",
+ },
+ {
+ inputs: [
+ {
+ internalType: "address",
+ name: "token",
+ type: "address",
+ },
+ {
+ internalType: "uint256",
+ name: "eth",
+ type: "uint256",
+ },
+ ],
+ name: "previewBuy",
+ outputs: [
+ {
+ internalType: "uint256",
+ name: "amount",
+ type: "uint256",
+ },
+ ],
+ stateMutability: "view",
+ type: "function",
+ },
+ {
+ inputs: [
+ {
+ internalType: "address",
+ name: "srcToken",
+ type: "address",
+ },
+ {
+ internalType: "address",
+ name: "dstToken",
+ type: "address",
+ },
+ {
+ internalType: "uint256",
+ name: "srcAmount",
+ type: "uint256",
+ },
+ ],
+ name: "previewRedeem",
+ outputs: [
+ {
+ internalType: "uint256",
+ name: "dstAmount",
+ type: "uint256",
+ },
+ ],
+ stateMutability: "view",
+ type: "function",
+ },
+ {
+ inputs: [
+ {
+ internalType: "address",
+ name: "token",
+ type: "address",
+ },
+ {
+ internalType: "uint256",
+ name: "amount",
+ type: "uint256",
+ },
+ ],
+ name: "previewSell",
+ outputs: [
+ {
+ internalType: "uint256",
+ name: "eth",
+ type: "uint256",
+ },
+ ],
+ stateMutability: "view",
+ type: "function",
+ },
+ {
+ inputs: [
+ {
+ internalType: "address",
+ name: "srcToken",
+ type: "address",
+ },
+ {
+ internalType: "address",
+ name: "dstToken",
+ type: "address",
+ },
+ {
+ internalType: "uint256",
+ name: "srcAmount",
+ type: "uint256",
+ },
+ ],
+ name: "redeem",
+ outputs: [
+ {
+ internalType: "uint256",
+ name: "dstAmount",
+ type: "uint256",
+ },
+ ],
+ stateMutability: "nonpayable",
+ type: "function",
+ },
+ {
+ inputs: [
+ {
+ internalType: "bytes32",
+ name: "role",
+ type: "bytes32",
+ },
+ {
+ internalType: "address",
+ name: "account",
+ type: "address",
+ },
+ ],
+ name: "renounceRole",
+ outputs: [],
+ stateMutability: "nonpayable",
+ type: "function",
+ },
+ {
+ inputs: [
+ {
+ internalType: "bytes32",
+ name: "role",
+ type: "bytes32",
+ },
+ {
+ internalType: "address",
+ name: "account",
+ type: "address",
+ },
+ ],
+ name: "revokeRole",
+ outputs: [],
+ stateMutability: "nonpayable",
+ type: "function",
+ },
+ {
+ inputs: [
+ {
+ internalType: "address",
+ name: "token",
+ type: "address",
+ },
+ {
+ internalType: "uint256",
+ name: "amount",
+ type: "uint256",
+ },
+ {
+ internalType: "uint256",
+ name: "minEth",
+ type: "uint256",
+ },
+ ],
+ name: "sell",
+ outputs: [
+ {
+ internalType: "uint256",
+ name: "",
+ type: "uint256",
+ },
+ ],
+ stateMutability: "nonpayable",
+ type: "function",
+ },
+ {
+ inputs: [
+ {
+ internalType: "uint256",
+ name: "flags",
+ type: "uint256",
+ },
+ ],
+ name: "setBitFlags",
+ outputs: [],
+ stateMutability: "nonpayable",
+ type: "function",
+ },
+ {
+ inputs: [
+ {
+ internalType: "bytes4",
+ name: "interfaceId",
+ type: "bytes4",
+ },
+ ],
+ name: "supportsInterface",
+ outputs: [
+ {
+ internalType: "bool",
+ name: "",
+ type: "bool",
+ },
+ ],
+ stateMutability: "view",
+ type: "function",
+ },
+ {
+ inputs: [
+ {
+ internalType: "address",
+ name: "",
+ type: "address",
+ },
+ ],
+ name: "tokenCreators",
+ outputs: [
+ {
+ internalType: "address",
+ name: "",
+ type: "address",
+ },
+ ],
+ stateMutability: "view",
+ type: "function",
+ },
+ {
+ inputs: [
+ {
+ internalType: "address",
+ name: "",
+ type: "address",
+ },
+ ],
+ name: "tokenCreatorsFeeBalance",
+ outputs: [
+ {
+ internalType: "uint256",
+ name: "",
+ type: "uint256",
+ },
+ ],
+ stateMutability: "view",
+ type: "function",
+ },
+ {
+ stateMutability: "payable",
+ type: "receive",
+ },
+] as const;
+
+export default MEMEABI;
diff --git a/packages/plugin-conflux/src/actions/bridgeTransfer.ts b/packages/plugin-conflux/src/actions/bridgeTransfer.ts
new file mode 100644
index 00000000000..347b8b980e1
--- /dev/null
+++ b/packages/plugin-conflux/src/actions/bridgeTransfer.ts
@@ -0,0 +1,141 @@
+import {
+ Action,
+ IAgentRuntime,
+ Memory,
+ State,
+ HandlerCallback,
+} from "@ai16z/eliza";
+import { generateObjectV2, composeContext, ModelClass, Content } from "@ai16z/eliza";
+import { createPublicClient, createWalletClient, http, parseCFX, encodeFunctionData } from "cive";
+import { hexAddressToBase32 } from "cive/utils";
+import { privateKeyToAccount } from "cive/accounts";
+import { testnet } from "cive/chains";
+import { confluxBridgeTransferTemplate } from "../templates/bridgeTransfer";
+import { TransferSchema, isTransferContent } from "../types";
+import CrossSpaceCallAbi from "../abi/crossSpaceCall";
+
+const bridgeSendCFX = async (
+ secretKey: `0x${string}`,
+ rpcUrl: string,
+ espaceTo: `0x${string}`,
+ amount: string
+) => {
+ const client = createPublicClient({
+ transport: http(rpcUrl),
+ });
+ const networkId = await client.getChainId();
+ const account = privateKeyToAccount(secretKey, { networkId });
+
+ const walletClient = createWalletClient({
+ transport: http(rpcUrl),
+ chain: testnet,
+ });
+
+ const toAddress = hexAddressToBase32({
+ hexAddress: "0x0888000000000000000000000000000000000006",
+ networkId,
+ }); // crossSpaceCall Address
+
+ const hash = await walletClient.sendTransaction({
+ account,
+ to: toAddress,
+ value: parseCFX(amount),
+ chain: testnet,
+ data: encodeFunctionData({
+ abi: CrossSpaceCallAbi,
+ functionName: "transferEVM",
+ args: [espaceTo],
+ }),
+ });
+
+ // await client.waitForTransactionReceipt({
+ // hash,
+ // });
+ return hash;
+};
+
+export const bridgeTransfer: Action = {
+ name: "BRIDGE_SEND_CFX",
+ description:
+ "Bridge transfer CFX from Conflux Core Space to another in Conflux eSpace. The address is a 0x-prefix address",
+ similes: ["BRIDGE_SEND_CONFLUX", "CROSS_SPACE_SEND_CFX", "BRIDGE_TRANSFER_CFX", "CROSS_SPACE_TRANSFER_CFX"],
+ examples: [
+ [
+ {
+ user: "{{user1}}",
+ content: {
+ text: "Send 1 CFX to eSpace Address 0x119DA8bbe74B1C5c987D0c64D10eC1dB301d4752",
+ },
+ },
+ {
+ user: "{{user2}}",
+ content: {
+ text: "1 CFX sent to espace Address 0x119DA8bbe74B1C5c987D0c64D10eC1dB301d4752: 0x1234567890abcdef",
+ content: {
+ to: "0x119DA8bbe74B1C5c987D0c64D10eC1dB301d4752",
+ amount: "1",
+ },
+ },
+ },
+ ],
+ ],
+ validate: async (runtime: IAgentRuntime, message: Memory) => {
+ // no extra validation needed
+ return true;
+ },
+ handler: async (
+ runtime: IAgentRuntime,
+ message: Memory,
+ state?: State,
+ options?: { [key: string]: unknown },
+ callback?: HandlerCallback
+ ) => {
+ if (!state) {
+ state = (await runtime.composeState(message)) as State;
+ } else {
+ state = await runtime.updateRecentMessageState(state);
+ }
+
+ const context = composeContext({
+ state,
+ template: confluxBridgeTransferTemplate,
+ });
+
+ const content = await generateObjectV2({
+ runtime,
+ context,
+ modelClass: ModelClass.SMALL,
+ schema: TransferSchema,
+ });
+
+ if (!isTransferContent(content.object)) {
+ throw new Error("Invalid content");
+ }
+
+ const secretKey = runtime.getSetting("CONFLUX_CORE_PRIVATE_KEY") as `0x${string}`;
+ const rpcUrl = runtime.getSetting("CONFLUX_CORE_SPACE_RPC_URL");
+
+ let success = false;
+
+ try {
+ const hash = await bridgeSendCFX(secretKey, rpcUrl, content.object.to as `0x${string}`, content.object.amount.toString());
+ success = true;
+ if (!callback) {
+ return success;
+ }
+ callback({
+ text: `${content.object.amount} CFX sent to ${content.object.to}: ${hash}`,
+ content: content.object,
+ });
+ } catch (error) {
+ console.error(`Error sending CFX: ${error}`);
+ if (!callback) {
+ return success;
+ }
+ callback({
+ text: `Failed to send ${content.object.amount} CFX to ${content.object.to}: ${error}`,
+ });
+ }
+ return success;
+ },
+};
diff --git a/packages/plugin-conflux/src/actions/confiPump.ts b/packages/plugin-conflux/src/actions/confiPump.ts
new file mode 100644
index 00000000000..a852b96227e
--- /dev/null
+++ b/packages/plugin-conflux/src/actions/confiPump.ts
@@ -0,0 +1,331 @@
+import {
+ Action,
+ IAgentRuntime,
+ Memory,
+ State,
+ HandlerCallback,
+} from "@ai16z/eliza";
+import {
+ generateObjectV2,
+ composeContext,
+ ModelClass,
+} from "@ai16z/eliza";
+import {
+ createPublicClient,
+ createWalletClient,
+ http,
+ parseEther,
+ encodeFunctionData,
+ WalletClient,
+ Account
+} from "viem";
+import { privateKeyToAccount } from "viem/accounts";
+import { confluxESpaceTestnet, confluxESpace } from "viem/chains";
+import { parseUnits, getAddress } from "viem/utils";
+import { confluxTransferTemplate } from "../templates/transfer";
+import {
+ PumpSchema,
+ isPumpContent,
+ isPumpBuyContent,
+ isPumpCreateContent,
+ isPumpSellContent,
+} from "../types";
+import MEMEABI from "../abi/meme";
+import ERC20ABI from "../abi/erc20";
+
+// Helper function to check and approve token allowance if needed
+async function ensureAllowance(
+ walletClient: WalletClient,
+ rpcUrl: string,
+ account: Account,
+ tokenAddress: `0x${string}`,
+ memeAddress: `0x${string}`,
+ amount: bigint
+) {
+ console.log(`Checking allowance: token: ${tokenAddress} meme: ${memeAddress} amount: ${amount}`);
+
+ const publicClient = createPublicClient({
+ transport: http(rpcUrl),
+ chain: confluxESpaceTestnet,
+ });
+
+ const allowance = await publicClient.readContract({
+ address: tokenAddress,
+ abi: ERC20ABI,
+ functionName: "allowance",
+ args: [account.address, memeAddress],
+ });
+
+ console.log("allowance:", allowance);
+
+ if (allowance < amount) {
+ console.log(`allowance(${allowance}) is less than amount(${amount}), approving...`);
+
+ const hash = await walletClient.sendTransaction({
+ account,
+ to: tokenAddress,
+ data: encodeFunctionData({
+ abi: ERC20ABI,
+ functionName: "approve",
+ args: [memeAddress, amount - allowance],
+ }),
+ chain: confluxESpaceTestnet,
+ kzg: null,
+ });
+
+ console.log(`Approving hash: ${hash}`);
+ await publicClient.waitForTransactionReceipt({ hash });
+ console.log(`Approving success: ${hash}`);
+ } else {
+ console.log(`No need to approve`);
+ }
+}
+
+// Main ConfiPump action definition
+export const confiPump: Action = {
+ name: "CONFI_PUMP",
+ description: "Perform actions on ConfiPump, for example create a new token, buy a token, or sell a token.",
+ similes: ["SELL_TOKEN", "BUY_TOKEN", "CREATE_TOKEN"],
+ examples: [
+ // Create token example
+ [
+ {
+ user: "{{user1}}",
+ content: {
+ text: "Create a new token called GLITCHIZA with symbol GLITCHIZA and generate a description about it.",
+ },
+ },
+ {
+ user: "{{user2}}",
+ content: {
+ text: "Token GLITCHIZA (GLITCHIZA) created successfully!\nContract Address: 0x1234567890abcdef\n",
+ action: "CREATE_TOKEN",
+ content: {
+ tokenInfo: {
+ symbol: "GLITCHIZA",
+ address: "EugPwuZ8oUMWsYHeBGERWvELfLGFmA1taDtmY8uMeX6r",
+ creator: "9jW8FPr6BSSsemWPV22UUCzSqkVdTp6HTyPqeqyuBbCa",
+ name: "GLITCHIZA",
+ description: "A GLITCHIZA token",
+ },
+ amount: "1",
+ },
+ },
+ },
+ ],
+ // Buy token example
+ [
+ {
+ user: "{{user1}}",
+ content: {
+ text: "Buy 0.00069 CFX worth of GLITCHIZA(0x1234567890abcdef)",
+ },
+ },
+ {
+ user: "{{user2}}",
+ content: {
+ text: "0.00069 CFX bought successfully!",
+ action: "BUY_TOKEN",
+ content: {
+ address: "0x1234567890abcdef",
+ amount: "0.00069",
+ },
+ },
+ },
+ ],
+ // Sell token example
+ [
+ {
+ user: "{{user1}}",
+ content: {
+ text: "Sell 0.00069 CFX worth of GLITCHIZA(0x1234567890abcdef)",
+ },
+ },
+ {
+ user: "{{user2}}",
+ content: {
+ text: "0.00069 CFX sold successfully: 0x1234567890abcdef",
+ action: "SELL_TOKEN",
+ content: {
+ address: "0x1234567890abcdef",
+ amount: "0.00069",
+ },
+ },
+ },
+ ],
+ ],
+
+ validate: async (runtime: IAgentRuntime, message: Memory) => {
+ return true; // No extra validation needed
+ },
+
+ handler: async (
+ runtime: IAgentRuntime,
+ message: Memory,
+ state?: State,
+ options?: { [key: string]: unknown },
+ callback?: HandlerCallback
+ ) => {
+ let success = false;
+
+ // Initialize or update state
+ if (!state) {
+ state = (await runtime.composeState(message)) as State;
+ } else {
+ state = await runtime.updateRecentMessageState(state);
+ }
+
+ // Generate content based on template
+ const context = composeContext({
+ state,
+ template: confluxTransferTemplate,
+ });
+
+ const content = await generateObjectV2({
+ runtime,
+ context,
+ modelClass: ModelClass.LARGE,
+ schema: PumpSchema,
+ });
+
+ if (!isPumpContent(content.object)) {
+ throw new Error("Invalid content");
+ }
+
+ // Setup clients and account
+ const rpcUrl = runtime.getSetting("CONFLUX_ESPACE_RPC_URL");
+ const account = privateKeyToAccount(
+ runtime.getSetting("CONFLUX_ESPACE_PRIVATE_KEY") as `0x${string}`
+ );
+ const walletClient = createWalletClient({
+ transport: http(rpcUrl),
+ });
+
+ const contentObject = content.object;
+ let data: any;
+ let value: bigint;
+
+ try {
+ // Handle different action types
+ switch (contentObject.action) {
+ case "CREATE_TOKEN":
+ if (!isPumpCreateContent(contentObject)) {
+ throw new Error("Invalid content");
+ }
+ console.log(
+ "creating: ",
+ contentObject.params.name,
+ contentObject.params.symbol,
+ contentObject.params.description
+ );
+ data = encodeFunctionData({
+ abi: MEMEABI,
+ functionName: "newToken",
+ args: [
+ contentObject.params.name,
+ contentObject.params.symbol,
+ contentObject.params.description,
+ ],
+ });
+ value = parseEther("10");
+ break;
+
+ case "BUY_TOKEN":
+ if (!isPumpBuyContent(contentObject)) {
+ throw new Error("Invalid content");
+ }
+ value = parseUnits(contentObject.params.value.toString(), 18);
+ console.log("buying: ", contentObject.params.tokenAddress, value);
+ data = encodeFunctionData({
+ abi: MEMEABI,
+ functionName: "buy",
+ args: [
+ contentObject.params.tokenAddress as `0x${string}`,
+ account.address,
+ 0n,
+ false,
+ ],
+ });
+ break;
+
+ case "SELL_TOKEN":
+ if (!isPumpSellContent(contentObject)) {
+ throw new Error("Invalid content");
+ }
+ const tokenAddress = getAddress(
+ contentObject.params.tokenAddress as `0x${string}`
+ );
+ console.log(
+ "selling: ",
+ tokenAddress,
+ account.address,
+ contentObject.params.value
+ );
+ const amountUnits = parseUnits(
+ contentObject.params.value.toString(),
+ 18
+ );
+
+ await ensureAllowance(
+ walletClient,
+ rpcUrl,
+ account,
+ tokenAddress as `0x${string}`,
+ runtime.getSetting("CONFLUX_MEME_CONTRACT_ADDRESS") as `0x${string}`,
+ amountUnits
+ );
+
+ data = encodeFunctionData({
+ abi: MEMEABI,
+ functionName: "sell",
+ args: [tokenAddress, amountUnits, 0n],
+ });
+ value = 0n;
+ break;
+ }
+
+ // Simulate and execute transaction
+ const publicClient = createPublicClient({
+ transport: http(rpcUrl),
+ chain: confluxESpaceTestnet,
+ });
+
+ const memeContractAddress = runtime.getSetting("CONFLUX_MEME_CONTRACT_ADDRESS") as `0x${string}`;
+
+ const simulate = await publicClient.call({
+ to: memeContractAddress,
+ data,
+ value,
+ account,
+ });
+ console.log("simulate: ", simulate);
+
+ const hash = await walletClient.sendTransaction({
+ account,
+ to: memeContractAddress,
+ data,
+ chain: confluxESpaceTestnet,
+ kzg: null,
+ value,
+ });
+
+ success = true;
+
+ if (callback) {
+ callback({
+ text: `Perform the action successfully: ${content.object.action}: ${hash}`,
+ content: content.object,
+ });
+ }
+ } catch (error) {
+ console.error(`Error performing the action: ${error}`);
+ if (callback) {
+ callback({
+ text: `Failed to perform the action: ${content.object.action}: ${error}`,
+ });
+ }
+ }
+
+ return success;
+ },
+};
diff --git a/packages/plugin-conflux/src/actions/transfer.ts b/packages/plugin-conflux/src/actions/transfer.ts
new file mode 100644
index 00000000000..d24749492ae
--- /dev/null
+++ b/packages/plugin-conflux/src/actions/transfer.ts
@@ -0,0 +1,129 @@
+import {
+ Action,
+ IAgentRuntime,
+ Memory,
+ State,
+ HandlerCallback,
+} from "@ai16z/eliza";
+import { generateObjectV2, composeContext, ModelClass, Content } from "@ai16z/eliza";
+import { createPublicClient, createWalletClient, http, parseCFX } from "cive";
+import { privateKeyToAccount } from "cive/accounts";
+import { testnet } from "cive/chains";
+import { confluxTransferTemplate } from "../templates/transfer";
+import { TransferSchema, isTransferContent } from "../types";
+
+const sendCFX = async (
+ secretKey: `0x${string}`,
+ rpcUrl: string,
+ to: string,
+ amount: string
+) => {
+ const client = createPublicClient({
+ transport: http(rpcUrl),
+ });
+ const networkId = await client.getChainId();
+ const account = privateKeyToAccount(secretKey, { networkId });
+
+ const walletClient = createWalletClient({
+ transport: http(rpcUrl),
+ chain: testnet,
+ });
+
+ const hash = await walletClient.sendTransaction({
+ account,
+ to,
+ value: parseCFX(amount),
+ chain: testnet,
+ });
+
+ // await client.waitForTransactionReceipt({
+ // hash,
+ // });
+ return hash;
+};
+
+export const transfer: Action = {
+ name: "SEND_CFX",
+ description:
+ "Transfer CFX to another address in Conflux Core Space. The address starts with `cfx:` or `cfxtest:`",
+ similes: ["SEND_CONFLUX", "SEND_CFX_CORE_SPACE", "TRANSFER_CFX"],
+ examples: [
+ [
+ {
+ user: "{{user1}}",
+ content: {
+ text: "Send 1 CFX to cfx:aaejuaaaaaaaaaaaaaaaaaaaaaaaaaaaa2eaeg85p5",
+ },
+ },
+ {
+ user: "{{user2}}",
+ content: {
+ text: "1 CFX sent to cfx:aaejuaaaaaaaaaaaaaaaaaaaaaaaaaaaa2eaeg85p5: 0x1234567890abcdef",
+ content: {
+ to: "cfx:aaejuaaaaaaaaaaaaaaaaaaaaaaaaaaaa2eaeg85p5",
+ amount: "1",
+ },
+ },
+ },
+ ],
+ ],
+ validate: async (runtime: IAgentRuntime, message: Memory) => {
+ // no extra validation needed
+ return true;
+ },
+ handler: async (
+ runtime: IAgentRuntime,
+ message: Memory,
+ state?: State,
+ options?: { [key: string]: unknown },
+ callback?: HandlerCallback
+ ) => {
+ if (!state) {
+ state = (await runtime.composeState(message)) as State;
+ } else {
+ state = await runtime.updateRecentMessageState(state);
+ }
+
+ const context = composeContext({
+ state,
+ template: confluxTransferTemplate,
+ });
+
+ const content = await generateObjectV2({
+ runtime,
+ context,
+ modelClass: ModelClass.SMALL,
+ schema: TransferSchema,
+ });
+
+ if (!isTransferContent(content.object)) {
+ throw new Error("Invalid content");
+ }
+
+ const secretKey = runtime.getSetting("CONFLUX_CORE_PRIVATE_KEY") as `0x${string}`;
+ const rpcUrl = runtime.getSetting("CONFLUX_CORE_SPACE_RPC_URL");
+
+ let success = false;
+
+ try {
+ const hash = await sendCFX(secretKey, rpcUrl, content.object.to, content.object.amount.toString());
+ success = true;
+ if (!callback) {
+ return success;
+ }
+ callback({
+ text: `${content.object.amount} CFX sent to ${content.object.to}: ${hash}`,
+ content: content.object,
+ });
+ } catch (error) {
+ console.error(`Error sending CFX: ${error}`);
+ if (!callback) {
+ return success;
+ }
+ callback({
+ text: `Failed to send ${content.object.amount} CFX to ${content.object.to}: ${error}`,
+ });
+ }
+ return success;
+ },
+};
diff --git a/packages/plugin-conflux/src/index.ts b/packages/plugin-conflux/src/index.ts
new file mode 100644
index 00000000000..1c6e65989e3
--- /dev/null
+++ b/packages/plugin-conflux/src/index.ts
@@ -0,0 +1,11 @@
+import { Plugin } from "@ai16z/eliza";
+import { transfer } from "./actions/transfer";
+import { bridgeTransfer } from "./actions/bridgeTransfer";
+import { confiPump } from "./actions/confiPump";
+
+export const confluxPlugin: Plugin = {
+ name: "conflux",
+ description: "Conflux Plugin for Eliza",
+ actions: [transfer, bridgeTransfer, confiPump],
+ providers: [],
+};
diff --git a/packages/plugin-conflux/src/templates/bridgeTransfer.ts b/packages/plugin-conflux/src/templates/bridgeTransfer.ts
new file mode 100644
index 00000000000..ca5fdea32ba
--- /dev/null
+++ b/packages/plugin-conflux/src/templates/bridgeTransfer.ts
@@ -0,0 +1,7 @@
+export const confluxBridgeTransferTemplate = `
+Extract Conflux Cross Space Transfer Parameters from the latest message:
+
+{{recentMessages}}
+
+The to address should be the Conflux eSpace address, starting with "0x".
+`;
diff --git a/packages/plugin-conflux/src/templates/confiPump.ts b/packages/plugin-conflux/src/templates/confiPump.ts
new file mode 100644
index 00000000000..b3047fc8027
--- /dev/null
+++ b/packages/plugin-conflux/src/templates/confiPump.ts
@@ -0,0 +1,9 @@
+export const confiPumpTemplate = `
+Extract Conflux ConfiPump Parameters, including token creation, buy, and sell, from the latest messages:
+
+{{recentMessages}}
+
+For token creation, should come up with a name, symbol, and description.
+For token buy, should come up with the amount of CFX to buy which token (with token address starting with 0x).
+For token sell, should come up with the amount of token to sell (with token address starting with 0x).
+`;
diff --git a/packages/plugin-conflux/src/templates/transfer.ts b/packages/plugin-conflux/src/templates/transfer.ts
new file mode 100644
index 00000000000..57fef7ad0d4
--- /dev/null
+++ b/packages/plugin-conflux/src/templates/transfer.ts
@@ -0,0 +1,7 @@
+export const confluxTransferTemplate = `
+Extract Conflux Core Space Transfer Parameters from the latest message:
+
+{{recentMessages}}
+
+The to address should be the Conflux Core Space address, starting with "cfx:" or "cfxtest:".
+`;
diff --git a/packages/plugin-conflux/src/types.ts b/packages/plugin-conflux/src/types.ts
new file mode 100644
index 00000000000..5f033da3f47
--- /dev/null
+++ b/packages/plugin-conflux/src/types.ts
@@ -0,0 +1,85 @@
+import { z } from "zod";
+import { Content } from "@ai16z/eliza";
+
+export const TransferSchema = z.object({
+ to: z.string(),
+ amount: z.number(), // use number ignoring decimals issue
+});
+
+export interface TransferContent {
+ to: string;
+ amount: number;
+}
+
+export const isTransferContent = (object: any): object is TransferContent => {
+ if (TransferSchema.safeParse(object).success) {
+ return true;
+ }
+ console.error("Invalid content: ", object);
+ return false;
+};
+
+export const PumpCreateSchema = z.object({
+ action: z.literal("CREATE_TOKEN"),
+ params: z.object({
+ symbol: z.string(),
+ name: z.string(),
+ description: z.string(),
+ }),
+});
+
+export const PumpBuySchema = z.object({
+ action: z.literal("BUY_TOKEN"),
+ params: z.object({
+ tokenAddress: z.string(),
+ value: z.number(),
+ }),
+});
+
+export const PumpSellSchema = z.object({
+ action: z.literal("SELL_TOKEN"),
+ params: z.object({
+ tokenAddress: z.string(),
+ value: z.number(),
+ }),
+});
+
+export const PumpSchema = z.union([PumpCreateSchema, PumpBuySchema, PumpSellSchema]);
+
+export type PumpContent = z.infer;
+export type PumpCreateContent = z.infer;
+export type PumpBuyContent = z.infer;
+export type PumpSellContent = z.infer;
+
+export function isPumpContent(object: any): object is PumpContent {
+ if (PumpSchema.safeParse(object).success) {
+ return true;
+ }
+ console.error("Invalid content: ", object);
+ return false;
+}
+
+export function isPumpCreateContent(object: any): object is PumpCreateContent {
+ if (PumpCreateSchema.safeParse(object).success) {
+ return true;
+ }
+ console.error("Invalid content: ", object);
+ return false;
+}
+
+export function isPumpBuyContent(object: any): object is PumpBuyContent {
+ if (PumpBuySchema.safeParse(object).success) {
+ return true;
+ }
+ console.error("Invalid content: ", object);
+ return false;
+}
+
+export function isPumpSellContent(object: any): object is PumpSellContent {
+ if (PumpSellSchema.safeParse(object).success) {
+ return true;
+ }
+ console.error("Invalid content: ", object);
+ return false;
+}
+
diff --git a/packages/plugin-conflux/tsconfig.json b/packages/plugin-conflux/tsconfig.json
new file mode 100644
index 00000000000..eaa78145aa3
--- /dev/null
+++ b/packages/plugin-conflux/tsconfig.json
@@ -0,0 +1,8 @@
+{
+ "extends": "../../tsconfig.json",
+ "compilerOptions": {
+ "outDir": "dist",
+ "rootDir": "./src"
+ },
+ "include": ["src"]
+}
diff --git a/packages/plugin-conflux/tsup.config.ts b/packages/plugin-conflux/tsup.config.ts
new file mode 100644
index 00000000000..f63d4d37fcf
--- /dev/null
+++ b/packages/plugin-conflux/tsup.config.ts
@@ -0,0 +1,13 @@
+import { defineConfig } from "tsup";
+
+export default defineConfig({
+ entry: ["src/index.ts"],
+ outDir: "dist",
+ sourcemap: true,
+ clean: true,
+ format: ["esm"], // Ensure you're targeting CommonJS
+ external: [
+ "cive",
+ // Add other modules you want to externalize
+ ],
+});
diff --git a/packages/plugin-image-generation/package.json b/packages/plugin-image-generation/package.json
index 00c7c8b8de0..a9148886de7 100644
--- a/packages/plugin-image-generation/package.json
+++ b/packages/plugin-image-generation/package.json
@@ -6,7 +6,7 @@
"types": "dist/index.d.ts",
"dependencies": {
"@ai16z/eliza": "workspace:*",
- "tsup": "^8.3.5"
+ "tsup": "8.3.5"
},
"devDependencies": {
"eslint": "9.13.0",
diff --git a/packages/plugin-node/package.json b/packages/plugin-node/package.json
index f9314ec3367..09cf9e61fae 100644
--- a/packages/plugin-node/package.json
+++ b/packages/plugin-node/package.json
@@ -7,12 +7,12 @@
"dependencies": {
"@ai16z/eliza": "workspace:*",
"@cliqz/adblocker-playwright": "1.34.0",
- "@echogarden/espeak-ng-emscripten": "0.3.0",
+ "@echogarden/espeak-ng-emscripten": "0.3.3",
"@echogarden/kissfft-wasm": "0.2.0",
"@echogarden/speex-resampler-wasm": "0.2.1",
"@huggingface/transformers": "3.0.2",
- "@opendocsg/pdf2md": "0.1.31",
- "@types/uuid": "^10.0.0",
+ "@opendocsg/pdf2md": "0.1.32",
+ "@types/uuid": "10.0.0",
"alawmulaw": "6.0.0",
"bignumber": "1.1.0",
"bignumber.js": "9.1.2",
@@ -20,14 +20,14 @@
"cldr-segmentation": "2.2.1",
"command-exists": "1.2.9",
"csv-writer": "1.6.0",
- "echogarden": "^2.0.7",
+ "echogarden": "2.0.7",
"espeak-ng": "1.0.2",
"ffmpeg-static": "5.2.0",
"fluent-ffmpeg": "2.1.3",
"formdata-node": "6.0.3",
"fs-extra": "11.2.0",
"gaxios": "6.7.1",
- "gif-frames": "^0.4.1",
+ "gif-frames": "0.4.1",
"glob": "11.0.0",
"graceful-fs": "4.2.11",
"html-escaper": "3.0.3",
@@ -41,13 +41,13 @@
"node-cache": "5.1.2",
"node-llama-cpp": "3.1.1",
"nodejs-whisper": "0.1.18",
- "onnxruntime-node": "^1.20.0",
+ "onnxruntime-node": "1.20.1",
"pdfjs-dist": "4.7.76",
"playwright": "1.48.2",
- "pm2": "5.4.2",
+ "pm2": "5.4.3",
"puppeteer-extra": "3.3.6",
"puppeteer-extra-plugin-capsolver": "2.0.1",
- "sharp": "^0.33.5",
+ "sharp": "0.33.5",
"srt": "0.0.3",
"systeminformation": "5.23.5",
"tar": "7.4.3",
@@ -64,20 +64,20 @@
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-vitest": "0.5.4",
- "tsup": "^8.3.5"
+ "tsup": "8.3.5"
},
"scripts": {
"build": "tsup --format esm --dts",
"dev": "tsup --watch",
"lint": "eslint . --fix",
- "postinstall": "npx playwright install-deps && npx playwright install"
+ "postinstall": "node scripts/postinstall.js"
},
"peerDependencies": {
- "onnxruntime-node": "^1.20.0",
+ "onnxruntime-node": "1.20.1",
"whatwg-url": "7.1.0"
},
"trustedDependencies": {
"onnxruntime-node": "^1.20.0",
"sharp": "^0.33.5"
}
-}
\ No newline at end of file
+}
diff --git a/packages/plugin-node/scripts/postinstall.js b/packages/plugin-node/scripts/postinstall.js
new file mode 100644
index 00000000000..152d5209ce4
--- /dev/null
+++ b/packages/plugin-node/scripts/postinstall.js
@@ -0,0 +1,9 @@
+import os from 'os';
+const platform = os.platform();
+
+if ((platform === 'linux' && !(os.release().includes('ubuntu') || os.release().includes('debian')))) {
+ console.log('Skipping playwright installation on unsupported platform:', platform);
+} else {
+ const { execSync } = await import('child_process');
+ execSync('npx playwright install-deps && npx playwright install', { stdio: 'inherit' });
+}
\ No newline at end of file
diff --git a/packages/plugin-node/src/services/image.ts b/packages/plugin-node/src/services/image.ts
index d840e7f1f4c..82760de1fbe 100644
--- a/packages/plugin-node/src/services/image.ts
+++ b/packages/plugin-node/src/services/image.ts
@@ -43,17 +43,8 @@ export class ImageDescriptionService
}
async initialize(runtime: IAgentRuntime): Promise {
+ console.log("Initializing ImageDescriptionService");
this.runtime = runtime;
- const model = models[runtime?.character?.modelProvider];
-
- if (model === models[ModelProviderName.LLAMALOCAL]) {
- await this.initializeLocalModel();
- } else {
- this.modelId = "gpt-4o-mini";
- this.device = "cloud";
- }
-
- this.initialized = true;
}
private async initializeLocalModel(): Promise {
@@ -102,7 +93,16 @@ export class ImageDescriptionService
imageUrl: string
): Promise<{ title: string; description: string }> {
if (!this.initialized) {
- throw new Error("ImageDescriptionService not initialized");
+ const model = models[this.runtime?.character?.modelProvider];
+
+ if (model === models[ModelProviderName.LLAMALOCAL]) {
+ await this.initializeLocalModel();
+ } else {
+ this.modelId = "gpt-4o-mini";
+ this.device = "cloud";
+ }
+
+ this.initialized = true;
}
if (this.device === "cloud") {
diff --git a/packages/plugin-node/src/services/llama.ts b/packages/plugin-node/src/services/llama.ts
index 2b542c6d464..f158c1fefe0 100644
--- a/packages/plugin-node/src/services/llama.ts
+++ b/packages/plugin-node/src/services/llama.ts
@@ -174,6 +174,7 @@ export class LlamaService extends Service {
private messageQueue: QueuedMessage[] = [];
private isProcessing: boolean = false;
private modelInitialized: boolean = false;
+ private runtime: IAgentRuntime | undefined;
static serviceType: ServiceType = ServiceType.TEXT_GENERATION;
@@ -189,25 +190,8 @@ export class LlamaService extends Service {
}
async initialize(runtime: IAgentRuntime): Promise {
- try {
- if (runtime.modelProvider === ModelProviderName.LLAMALOCAL) {
- elizaLogger.info("Initializing LlamaService...");
- elizaLogger.info("Using local GGUF model");
- elizaLogger.info("Ensuring model is initialized...");
- await this.ensureInitialized();
- elizaLogger.success("LlamaService initialized successfully");
- } else {
- elizaLogger.info(
- "Not using local model, skipping initialization"
- );
- return;
- }
- } catch (error) {
- elizaLogger.error("Failed to initialize LlamaService:", error);
- throw new Error(
- `LlamaService initialization failed: ${error.message}`
- );
- }
+ elizaLogger.info("Initializing LlamaService...");
+ this.runtime = runtime;
}
private async ensureInitialized() {
diff --git a/packages/plugin-solana/package.json b/packages/plugin-solana/package.json
index ff8a04a5815..c4e967a9538 100644
--- a/packages/plugin-solana/package.json
+++ b/packages/plugin-solana/package.json
@@ -7,15 +7,16 @@
"dependencies": {
"@ai16z/eliza": "workspace:*",
"@ai16z/plugin-trustdb": "workspace:*",
- "@coral-xyz/anchor": "^0.30.1",
+ "@coral-xyz/anchor": "0.30.1",
"@solana/spl-token": "0.4.9",
- "@solana/web3.js": "1.95.4",
+ "@solana/web3.js": "1.95.5",
"bignumber": "1.1.0",
"bignumber.js": "9.1.2",
- "bs58": "^6.0.0",
+ "bs58": "6.0.0",
"node-cache": "5.1.2",
"pumpdotfun-sdk": "1.3.2",
- "tsup": "^8.3.5"
+ "tsup": "8.3.5",
+ "vitest": "2.1.4"
},
"devDependencies": {
"eslint": "9.13.0",
@@ -25,7 +26,8 @@
},
"scripts": {
"build": "tsup --format esm --dts",
- "lint": "eslint . --fix"
+ "lint": "eslint . --fix",
+ "test": "vitest run"
},
"peerDependencies": {
"whatwg-url": "7.1.0"
diff --git a/packages/plugin-solana/src/providers/token.ts b/packages/plugin-solana/src/providers/token.ts
index b773d0cebad..174f47fd290 100644
--- a/packages/plugin-solana/src/providers/token.ts
+++ b/packages/plugin-solana/src/providers/token.ts
@@ -604,21 +604,13 @@ export class TokenProvider {
}
// Sort pairs by both liquidity and market cap to get the highest one
- return dexData.pairs.reduce((highestPair, currentPair) => {
- const currentLiquidity = currentPair.liquidity.usd;
- const currentMarketCap = currentPair.marketCap;
- const highestLiquidity = highestPair.liquidity.usd;
- const highestMarketCap = highestPair.marketCap;
-
- if (
- currentLiquidity > highestLiquidity ||
- (currentLiquidity === highestLiquidity &&
- currentMarketCap > highestMarketCap)
- ) {
- return currentPair;
+ return dexData.pairs.sort((a, b) => {
+ const liquidityDiff = b.liquidity.usd - a.liquidity.usd;
+ if (liquidityDiff !== 0) {
+ return liquidityDiff; // Higher liquidity comes first
}
- return highestPair;
- });
+ return b.marketCap - a.marketCap; // If liquidity is equal, higher market cap comes first
+ })[0];
}
async analyzeHolderDistribution(
diff --git a/packages/plugin-solana/src/tests/token.test.ts b/packages/plugin-solana/src/tests/token.test.ts
new file mode 100644
index 00000000000..6b799c1c239
--- /dev/null
+++ b/packages/plugin-solana/src/tests/token.test.ts
@@ -0,0 +1,134 @@
+import { describe, it, expect, beforeEach, vi, afterEach } from "vitest";
+import { TokenProvider } from "../providers/token.ts";
+
+// Mock NodeCache
+vi.mock("node-cache", () => {
+ return {
+ default: vi.fn().mockImplementation(() => ({
+ set: vi.fn(),
+ get: vi.fn().mockReturnValue(null),
+ })),
+ };
+});
+
+// Mock path module
+vi.mock("path", async () => {
+ const actual = await vi.importActual("path");
+ return {
+ ...(actual as any),
+ join: vi.fn().mockImplementation((...args) => args.join("/")),
+ };
+});
+
+// Mock the WalletProvider
+const mockWalletProvider = {
+ fetchPortfolioValue: vi.fn(),
+};
+
+// Mock the ICacheManager
+const mockCacheManager = {
+ get: vi.fn().mockResolvedValue(null),
+ set: vi.fn(),
+};
+
+// Mock fetch globally
+const mockFetch = vi.fn();
+global.fetch = mockFetch;
+
+describe("TokenProvider", () => {
+ let tokenProvider: TokenProvider;
+ const TEST_TOKEN_ADDRESS = "2weMjPLLybRMMva1fM3U31goWWrCpF59CHWNhnCJ9Vyh";
+
+ beforeEach(() => {
+ vi.clearAllMocks();
+ mockCacheManager.get.mockResolvedValue(null);
+
+ // Create new instance of TokenProvider with mocked dependencies
+ tokenProvider = new TokenProvider(
+ TEST_TOKEN_ADDRESS,
+ mockWalletProvider as any,
+ mockCacheManager as any
+ );
+ });
+
+ afterEach(() => {
+ vi.clearAllTimers();
+ });
+
+ describe("Cache Management", () => {
+ it("should use cached data when available", async () => {
+ const mockData = { test: "data" };
+ mockCacheManager.get.mockResolvedValueOnce(mockData);
+
+ const result = await (tokenProvider as any).getCachedData(
+ "test-key"
+ );
+
+ expect(result).toEqual(mockData);
+ expect(mockCacheManager.get).toHaveBeenCalledTimes(1);
+ });
+
+ it("should write data to both caches", async () => {
+ const testData = { test: "data" };
+
+ await (tokenProvider as any).setCachedData("test-key", testData);
+
+ expect(mockCacheManager.set).toHaveBeenCalledWith(
+ expect.stringContaining("test-key"),
+ testData,
+ expect.any(Object)
+ );
+ });
+ });
+
+ describe("Wallet Integration", () => {
+ it("should fetch tokens in wallet", async () => {
+ const mockItems = [
+ { symbol: "SOL", address: "address1" },
+ { symbol: "BTC", address: "address2" },
+ ];
+
+ mockWalletProvider.fetchPortfolioValue.mockResolvedValueOnce({
+ items: mockItems,
+ });
+
+ const result = await tokenProvider.getTokensInWallet({} as any);
+
+ expect(result).toEqual(mockItems);
+ expect(
+ mockWalletProvider.fetchPortfolioValue
+ ).toHaveBeenCalledTimes(1);
+ });
+
+ it("should find token in wallet by symbol", async () => {
+ const mockItems = [
+ { symbol: "SOL", address: "address1" },
+ { symbol: "BTC", address: "address2" },
+ ];
+
+ mockWalletProvider.fetchPortfolioValue.mockResolvedValueOnce({
+ items: mockItems,
+ });
+
+ const result = await tokenProvider.getTokenFromWallet(
+ {} as any,
+ "SOL"
+ );
+
+ expect(result).toBe("address1");
+ });
+
+ it("should return null for token not in wallet", async () => {
+ mockWalletProvider.fetchPortfolioValue.mockResolvedValueOnce({
+ items: [],
+ });
+
+ const result = await tokenProvider.getTokenFromWallet(
+ {} as any,
+ "NONEXISTENT"
+ );
+
+ expect(result).toBeNull();
+ });
+ });
+});
diff --git a/packages/plugin-starknet/package.json b/packages/plugin-starknet/package.json
index cea06216df2..93554a893e9 100644
--- a/packages/plugin-starknet/package.json
+++ b/packages/plugin-starknet/package.json
@@ -7,12 +7,12 @@
"dependencies": {
"@ai16z/eliza": "workspace:*",
"@ai16z/plugin-trustdb": "workspace:*",
- "@avnu/avnu-sdk": "^2.1.1",
- "@uniswap/sdk-core": "^6.0.0",
- "@unruggable_starknet/core": "^0.1.0",
- "starknet": "^6.17.0",
- "tsup": "^8.3.5",
- "vitest": "^2.1.4"
+ "@avnu/avnu-sdk": "2.1.1",
+ "@uniswap/sdk-core": "6.0.0",
+ "@unruggable_starknet/core": "0.1.0",
+ "starknet": "6.18.0",
+ "tsup": "8.3.5",
+ "vitest": "2.1.5"
},
"devDependencies": {
"eslint": "9.13.0",
diff --git a/packages/plugin-starknet/src/providers/token.ts b/packages/plugin-starknet/src/providers/token.ts
index c6677d4dfb4..ece618b29c8 100644
--- a/packages/plugin-starknet/src/providers/token.ts
+++ b/packages/plugin-starknet/src/providers/token.ts
@@ -385,21 +385,13 @@ export class TokenProvider {
}
// Sort pairs by both liquidity and market cap to get the highest one
- return dexData.pairs.reduce((highestPair, currentPair) => {
- const currentLiquidity = currentPair.liquidity.usd;
- const currentMarketCap = currentPair.marketCap;
- const highestLiquidity = highestPair.liquidity.usd;
- const highestMarketCap = highestPair.marketCap;
-
- if (
- currentLiquidity > highestLiquidity ||
- (currentLiquidity === highestLiquidity &&
- currentMarketCap > highestMarketCap)
- ) {
- return currentPair;
+ return dexData.pairs.sort((a, b) => {
+ const liquidityDiff = b.liquidity.usd - a.liquidity.usd;
+ if (liquidityDiff !== 0) {
+ return liquidityDiff; // Higher liquidity comes first
}
- return highestPair;
- });
+ return b.marketCap - a.marketCap; // If liquidity is equal, higher market cap comes first
+ })[0];
}
// TODO:
diff --git a/packages/plugin-trustdb/package.json b/packages/plugin-trustdb/package.json
index ec51200b49b..9e3b203ad91 100644
--- a/packages/plugin-trustdb/package.json
+++ b/packages/plugin-trustdb/package.json
@@ -6,10 +6,10 @@
"types": "dist/index.d.ts",
"dependencies": {
"@ai16z/eliza": "workspace:*",
- "dompurify": "3.2.0",
- "tsup": "^8.3.5",
+ "dompurify": "3.2.1",
+ "tsup": "8.3.5",
"uuid": "11.0.2",
- "vitest": "^2.1.4"
+ "vitest": "2.1.5"
},
"scripts": {
"build": "tsup --format esm --dts",
@@ -18,7 +18,7 @@
"lint": "eslint . --fix"
},
"devDependencies": {
- "@types/dompurify": "^3.2.0",
+ "@types/dompurify": "3.2.0",
"eslint": "9.13.0",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
diff --git a/packages/plugin-video-generation/package.json b/packages/plugin-video-generation/package.json
index ad57534139f..50dde2b0a28 100644
--- a/packages/plugin-video-generation/package.json
+++ b/packages/plugin-video-generation/package.json
@@ -6,7 +6,7 @@
"types": "dist/index.d.ts",
"dependencies": {
"@ai16z/eliza": "workspace:*",
- "tsup": "^8.3.5"
+ "tsup": "8.3.5"
},
"devDependencies": {
"eslint": "9.13.0",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 594e97f3975..44906db78fa 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -5,12 +5,21 @@ settings:
excludeLinksFromLockfile: false
overrides:
- onnxruntime-node: ^1.20.0
+ onnxruntime-node: 1.20.1
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)
+ '@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)
+ csv-parse:
+ specifier: ^5.6.0
+ version: 5.6.0
ollama-ai-provider:
specifier: ^0.16.1
version: 0.16.1(zod@3.23.8)
@@ -31,31 +40,31 @@ importers:
specifier: ^18.4.4
version: 18.6.3
concurrently:
- specifier: ^9.1.0
+ specifier: 9.1.0
version: 9.1.0
husky:
- specifier: ^9.1.6
+ specifier: 9.1.7
version: 9.1.7
lerna:
- specifier: ^8.1.5
- version: 8.1.9(@swc/core@1.9.3(@swc/helpers@0.5.15))(encoding@0.1.13)
+ specifier: 8.1.5
+ version: 8.1.5(@swc/core@1.9.3(@swc/helpers@0.5.15))(encoding@0.1.13)
only-allow:
- specifier: ^1.2.1
+ specifier: 1.2.1
version: 1.2.1
prettier:
- specifier: ^3.3.3
+ specifier: 3.3.3
version: 3.3.3
typedoc:
- specifier: ^0.26.11
+ specifier: 0.26.11
version: 0.26.11(typescript@5.6.3)
typescript:
specifier: 5.6.3
version: 5.6.3
vite:
- specifier: ^5.4.11
+ specifier: 5.4.11
version: 5.4.11(@types/node@22.8.4)(terser@5.36.0)
vitest:
- specifier: ^2.1.5
+ specifier: 2.1.5
version: 2.1.5(@types/node@22.8.4)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.36.0)
agent:
@@ -84,12 +93,18 @@ importers:
'@ai16z/eliza':
specifier: workspace:*
version: link:../packages/core
+ '@ai16z/plugin-0g':
+ specifier: workspace:*
+ version: link:../packages/plugin-0g
'@ai16z/plugin-bootstrap':
specifier: workspace:*
version: link:../packages/plugin-bootstrap
'@ai16z/plugin-coinbase':
specifier: workspace:*
version: link:../packages/plugin-coinbase
+ '@ai16z/plugin-conflux':
+ specifier: workspace:*
+ version: link:../packages/plugin-conflux
'@ai16z/plugin-image-generation':
specifier: workspace:*
version: link:../packages/plugin-image-generation
@@ -103,10 +118,10 @@ importers:
specifier: workspace:*
version: link:../packages/plugin-starknet
readline:
- specifier: ^1.3.0
+ specifier: 1.3.0
version: 1.3.0
ws:
- specifier: ^8.18.0
+ specifier: 8.18.0
version: 8.18.0(bufferutil@4.0.8)(utf-8-validate@5.0.10)
yargs:
specifier: 17.7.2
@@ -116,7 +131,7 @@ importers:
specifier: 10.9.2
version: 10.9.2(@swc/core@1.9.3(@swc/helpers@0.5.15))(@types/node@22.8.4)(typescript@5.6.3)
tsup:
- specifier: ^8.3.5
+ specifier: 8.3.5
version: 8.3.5(@swc/core@1.9.3(@swc/helpers@0.5.15))(jiti@2.4.0)(postcss@8.4.49)(typescript@5.6.3)(yaml@2.6.1)
client:
@@ -124,39 +139,54 @@ importers:
'@ai16z/eliza':
specifier: workspace:*
version: link:../packages/core
+ '@radix-ui/react-dialog':
+ specifier: 1.1.2
+ version: 1.1.2(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@radix-ui/react-separator':
+ specifier: 1.1.0
+ version: 1.1.0(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@radix-ui/react-slot':
- specifier: ^1.1.0
+ specifier: 1.1.0
version: 1.1.0(@types/react@18.3.12)(react@18.3.1)
+ '@radix-ui/react-tooltip':
+ specifier: 1.1.4
+ version: 1.1.4(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@tanstack/react-query':
+ specifier: 5.61.0
+ version: 5.61.0(react@18.3.1)
class-variance-authority:
- specifier: ^0.7.0
+ specifier: 0.7.0
version: 0.7.0
clsx:
specifier: 2.1.0
version: 2.1.0
lucide-react:
- specifier: ^0.460.0
+ specifier: 0.460.0
version: 0.460.0(react@18.3.1)
react:
- specifier: ^18.3.1
+ specifier: 18.3.1
version: 18.3.1
react-dom:
- specifier: ^18.3.1
+ specifier: 18.3.1
version: 18.3.1(react@18.3.1)
+ react-router-dom:
+ specifier: 6.22.1
+ version: 6.22.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
tailwind-merge:
- specifier: ^2.5.4
+ specifier: 2.5.4
version: 2.5.4
tailwindcss-animate:
- specifier: ^1.0.7
+ specifier: 1.0.7
version: 1.0.7(tailwindcss@3.4.15(ts-node@10.9.2(@swc/core@1.9.3(@swc/helpers@0.5.15))(@types/node@22.8.4)(typescript@5.6.3)))
vite-plugin-top-level-await:
- specifier: ^1.4.4
- version: 1.4.4(@swc/helpers@0.5.15)(rollup@4.27.4)(vite@5.4.11(@types/node@22.8.4)(terser@5.36.0))
+ specifier: 1.4.4
+ version: 1.4.4(@swc/helpers@0.5.15)(rollup@4.27.4)(vite@client+@tanstack+router-plugin+vite)
vite-plugin-wasm:
- specifier: ^3.3.0
- version: 3.3.0(vite@5.4.11(@types/node@22.8.4)(terser@5.36.0))
+ specifier: 3.3.0
+ version: 3.3.0(vite@client+@tanstack+router-plugin+vite)
devDependencies:
'@eslint/js':
- specifier: ^9.13.0
+ specifier: 9.15.0
version: 9.15.0
'@types/node':
specifier: 22.8.4
@@ -168,38 +198,38 @@ importers:
specifier: 18.3.1
version: 18.3.1
'@vitejs/plugin-react':
- specifier: ^4.3.3
- version: 4.3.3(vite@5.4.11(@types/node@22.8.4)(terser@5.36.0))
+ specifier: 4.3.3
+ version: 4.3.3(vite@client+@tanstack+router-plugin+vite)
autoprefixer:
- specifier: ^10.4.20
+ specifier: 10.4.20
version: 10.4.20(postcss@8.4.49)
eslint:
- specifier: ^9.13.0
+ specifier: 9.13.0
version: 9.13.0(jiti@2.4.0)
eslint-plugin-react-hooks:
- specifier: ^5.0.0
+ specifier: 5.0.0
version: 5.0.0(eslint@9.13.0(jiti@2.4.0))
eslint-plugin-react-refresh:
- specifier: ^0.4.14
+ specifier: 0.4.14
version: 0.4.14(eslint@9.13.0(jiti@2.4.0))
globals:
- specifier: ^15.11.0
- version: 15.12.0
+ specifier: 15.11.0
+ version: 15.11.0
postcss:
- specifier: ^8.4.49
+ specifier: 8.4.49
version: 8.4.49
tailwindcss:
- specifier: ^3.4.15
+ specifier: 3.4.15
version: 3.4.15(ts-node@10.9.2(@swc/core@1.9.3(@swc/helpers@0.5.15))(@types/node@22.8.4)(typescript@5.6.3))
typescript:
specifier: ~5.6.2
version: 5.6.3
typescript-eslint:
- specifier: ^8.11.0
- version: 8.15.0(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)
+ specifier: 8.11.0
+ version: 8.11.0(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)
vite:
- specifier: ^5.4.10
- version: 5.4.11(@types/node@22.8.4)(terser@5.36.0)
+ specifier: link:@tanstack/router-plugin/vite
+ version: link:@tanstack/router-plugin/vite
apps/agent:
dependencies:
@@ -265,31 +295,31 @@ importers:
docs:
dependencies:
'@docusaurus/core':
- specifier: ^3.6.0
+ specifier: 3.6.3
version: 3.6.3(@mdx-js/react@3.0.1(@types/react@18.3.12)(react@18.3.1))(@swc/core@1.9.3(@swc/helpers@0.5.15))(acorn@8.14.0)(bufferutil@4.0.8)(eslint@9.13.0(jiti@2.4.0))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)(utf-8-validate@5.0.10)
'@docusaurus/plugin-content-blog':
- specifier: ^3.6.0
+ specifier: 3.6.3
version: 3.6.3(@docusaurus/plugin-content-docs@3.6.3(@mdx-js/react@3.0.1(@types/react@18.3.12)(react@18.3.1))(@swc/core@1.9.3(@swc/helpers@0.5.15))(acorn@8.14.0)(bufferutil@4.0.8)(eslint@9.13.0(jiti@2.4.0))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)(utf-8-validate@5.0.10))(@mdx-js/react@3.0.1(@types/react@18.3.12)(react@18.3.1))(@swc/core@1.9.3(@swc/helpers@0.5.15))(acorn@8.14.0)(bufferutil@4.0.8)(eslint@9.13.0(jiti@2.4.0))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)(utf-8-validate@5.0.10)
'@docusaurus/plugin-content-docs':
- specifier: ^3.6.0
+ specifier: 3.6.3
version: 3.6.3(@mdx-js/react@3.0.1(@types/react@18.3.12)(react@18.3.1))(@swc/core@1.9.3(@swc/helpers@0.5.15))(acorn@8.14.0)(bufferutil@4.0.8)(eslint@9.13.0(jiti@2.4.0))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)(utf-8-validate@5.0.10)
'@docusaurus/plugin-ideal-image':
- specifier: ^3.6.0
+ specifier: 3.6.3
version: 3.6.3(@mdx-js/react@3.0.1(@types/react@18.3.12)(react@18.3.1))(@swc/core@1.9.3(@swc/helpers@0.5.15))(acorn@8.14.0)(bufferutil@4.0.8)(eslint@9.13.0(jiti@2.4.0))(prop-types@15.8.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)(utf-8-validate@5.0.10)
'@docusaurus/preset-classic':
- specifier: ^3.6.0
+ specifier: 3.6.3
version: 3.6.3(@algolia/client-search@5.15.0)(@mdx-js/react@3.0.1(@types/react@18.3.12)(react@18.3.1))(@swc/core@1.9.3(@swc/helpers@0.5.15))(@types/react@18.3.12)(acorn@8.14.0)(bufferutil@4.0.8)(eslint@9.13.0(jiti@2.4.0))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.3)(typescript@5.6.3)(utf-8-validate@5.0.10)
'@docusaurus/theme-mermaid':
- specifier: ^3.6.0
+ specifier: 3.6.3
version: 3.6.3(@docusaurus/plugin-content-docs@3.6.3(@mdx-js/react@3.0.1(@types/react@18.3.12)(react@18.3.1))(@swc/core@1.9.3(@swc/helpers@0.5.15))(acorn@8.14.0)(bufferutil@4.0.8)(eslint@9.13.0(jiti@2.4.0))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)(utf-8-validate@5.0.10))(@mdx-js/react@3.0.1(@types/react@18.3.12)(react@18.3.1))(@swc/core@1.9.3(@swc/helpers@0.5.15))(acorn@8.14.0)(bufferutil@4.0.8)(eslint@9.13.0(jiti@2.4.0))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)(utf-8-validate@5.0.10)
'@mdx-js/react':
specifier: 3.0.1
version: 3.0.1(@types/react@18.3.12)(react@18.3.1)
clsx:
- specifier: 2.1.0
- version: 2.1.0
+ specifier: 2.1.1
+ version: 2.1.1
docusaurus-lunr-search:
- specifier: ^3.5.0
+ specifier: 3.5.0
version: 3.5.0(@docusaurus/core@3.6.3(@mdx-js/react@3.0.1(@types/react@18.3.12)(react@18.3.1))(@swc/core@1.9.3(@swc/helpers@0.5.15))(acorn@8.14.0)(bufferutil@4.0.8)(eslint@9.13.0(jiti@2.4.0))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)(utf-8-validate@5.0.10))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
prism-react-renderer:
specifier: 2.3.1
@@ -305,19 +335,19 @@ importers:
version: 6.22.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
devDependencies:
'@docusaurus/module-type-aliases':
- specifier: 3.6.0
- version: 3.6.0(@swc/core@1.9.3(@swc/helpers@0.5.15))(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ specifier: 3.6.3
+ version: 3.6.3(@swc/core@1.9.3(@swc/helpers@0.5.15))(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@docusaurus/types':
- specifier: 3.6.0
- version: 3.6.0(@swc/core@1.9.3(@swc/helpers@0.5.15))(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ specifier: 3.6.3
+ version: 3.6.3(@swc/core@1.9.3(@swc/helpers@0.5.15))(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
docusaurus-plugin-typedoc:
- specifier: ^1.0.5
+ specifier: 1.0.5
version: 1.0.5(typedoc-plugin-markdown@4.2.10(typedoc@0.26.11(typescript@5.6.3)))
typedoc:
- specifier: ^0.26.11
+ specifier: 0.26.11
version: 0.26.11(typescript@5.6.3)
typedoc-plugin-markdown:
- specifier: ^4.2.9
+ specifier: 4.2.10
version: 4.2.10(typedoc@0.26.11(typescript@5.6.3))
packages/adapter-postgres:
@@ -326,10 +356,10 @@ importers:
specifier: workspace:*
version: link:../core
'@types/pg':
- specifier: ^8.11.10
+ specifier: 8.11.10
version: 8.11.10
pg:
- specifier: ^8.13.1
+ specifier: 8.13.1
version: 8.13.1
devDependencies:
eslint:
@@ -345,7 +375,7 @@ importers:
specifier: 0.5.4
version: 0.5.4(@typescript-eslint/eslint-plugin@8.12.2(@typescript-eslint/parser@8.12.2(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3))(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3))(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)(vitest@2.1.5(@types/node@22.8.4)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.36.0))
tsup:
- specifier: ^8.3.5
+ specifier: 8.3.5
version: 8.3.5(@swc/core@1.9.3(@swc/helpers@0.5.15))(jiti@2.4.0)(postcss@8.4.49)(typescript@5.6.3)(yaml@2.6.1)
packages/adapter-sqlite:
@@ -379,7 +409,7 @@ importers:
specifier: 0.5.4
version: 0.5.4(@typescript-eslint/eslint-plugin@8.12.2(@typescript-eslint/parser@8.12.2(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3))(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3))(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)(vitest@2.1.5(@types/node@22.8.4)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.36.0))
tsup:
- specifier: ^8.3.5
+ specifier: 8.3.5
version: 8.3.5(@swc/core@1.9.3(@swc/helpers@0.5.15))(jiti@2.4.0)(postcss@8.4.49)(typescript@5.6.3)(yaml@2.6.1)
packages/adapter-sqljs:
@@ -413,7 +443,7 @@ importers:
specifier: 0.5.4
version: 0.5.4(@typescript-eslint/eslint-plugin@8.12.2(@typescript-eslint/parser@8.12.2(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3))(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3))(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)(vitest@2.1.5(@types/node@22.8.4)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.36.0))
tsup:
- specifier: ^8.3.5
+ specifier: 8.3.5
version: 8.3.5(@swc/core@1.9.3(@swc/helpers@0.5.15))(jiti@2.4.0)(postcss@8.4.49)(typescript@5.6.3)(yaml@2.6.1)
packages/adapter-supabase:
@@ -441,7 +471,7 @@ importers:
specifier: 0.5.4
version: 0.5.4(@typescript-eslint/eslint-plugin@8.12.2(@typescript-eslint/parser@8.12.2(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3))(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3))(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)(vitest@2.1.5(@types/node@22.8.4)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.36.0))
tsup:
- specifier: ^8.3.5
+ specifier: 8.3.5
version: 8.3.5(@swc/core@1.9.3(@swc/helpers@0.5.15))(jiti@2.4.0)(postcss@8.4.49)(typescript@5.6.3)(yaml@2.6.1)
packages/client-auto:
@@ -493,7 +523,7 @@ importers:
specifier: 0.5.4
version: 0.5.4(@typescript-eslint/eslint-plugin@8.12.2(@typescript-eslint/parser@8.12.2(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3))(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3))(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)(vitest@2.1.5(@types/node@22.8.4)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.36.0))
tsup:
- specifier: ^8.3.5
+ specifier: 8.3.5
version: 8.3.5(@swc/core@1.9.3(@swc/helpers@0.5.15))(jiti@2.4.0)(postcss@8.4.49)(typescript@5.6.3)(yaml@2.6.1)
packages/client-direct:
@@ -519,8 +549,11 @@ importers:
cors:
specifier: 2.8.5
version: 2.8.5
+ discord.js:
+ specifier: 14.16.3
+ version: 14.16.3(bufferutil@4.0.8)(utf-8-validate@5.0.10)
express:
- specifier: ^4.21.1
+ specifier: 4.21.1
version: 4.21.1
multer:
specifier: 1.4.5-lts.1
@@ -542,7 +575,7 @@ importers:
specifier: 0.5.4
version: 0.5.4(@typescript-eslint/eslint-plugin@8.12.2(@typescript-eslint/parser@8.12.2(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3))(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3))(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)(vitest@2.1.5(@types/node@22.8.4)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.36.0))
tsup:
- specifier: ^8.3.5
+ specifier: 8.3.5
version: 8.3.5(@swc/core@1.9.3(@swc/helpers@0.5.15))(jiti@2.4.0)(postcss@8.4.49)(typescript@5.6.3)(yaml@2.6.1)
packages/client-discord:
@@ -591,7 +624,7 @@ importers:
specifier: 0.5.4
version: 0.5.4(@typescript-eslint/eslint-plugin@8.12.2(@typescript-eslint/parser@8.12.2(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3))(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3))(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)(vitest@2.1.5(@types/node@22.8.4)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.36.0))
tsup:
- specifier: ^8.3.5
+ specifier: 8.3.5
version: 8.3.5(@swc/core@1.9.3(@swc/helpers@0.5.15))(jiti@2.4.0)(postcss@8.4.49)(typescript@5.6.3)(yaml@2.6.1)
packages/client-github:
@@ -600,20 +633,20 @@ importers:
specifier: workspace:*
version: link:../core
'@octokit/rest':
- specifier: ^20.0.2
+ specifier: 20.1.1
version: 20.1.1
'@octokit/types':
- specifier: ^12.6.0
+ specifier: 12.6.0
version: 12.6.0
glob:
- specifier: ^10.3.10
+ specifier: 10.4.5
version: 10.4.5
simple-git:
- specifier: ^3.22.0
+ specifier: 3.27.0
version: 3.27.0
devDependencies:
'@types/glob':
- specifier: ^8.1.0
+ specifier: 8.1.0
version: 8.1.0
eslint:
specifier: 9.13.0
@@ -628,7 +661,7 @@ importers:
specifier: 0.5.4
version: 0.5.4(@typescript-eslint/eslint-plugin@8.12.2(@typescript-eslint/parser@8.12.2(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3))(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3))(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)(vitest@2.1.5(@types/node@22.8.4)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.36.0))
tsup:
- specifier: ^8.3.5
+ specifier: 8.3.5
version: 8.3.5(@swc/core@1.9.3(@swc/helpers@0.5.15))(jiti@2.4.0)(postcss@8.4.49)(typescript@5.6.3)(yaml@2.6.1)
packages/client-telegram:
@@ -636,9 +669,6 @@ importers:
'@ai16z/eliza':
specifier: workspace:*
version: link:../core
- '@ai16z/plugin-node':
- specifier: workspace:*
- version: link:../plugin-node
'@telegraf/types':
specifier: 7.1.0
version: 7.1.0
@@ -662,7 +692,7 @@ importers:
specifier: 0.5.4
version: 0.5.4(@typescript-eslint/eslint-plugin@8.12.2(@typescript-eslint/parser@8.12.2(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3))(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3))(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)(vitest@2.1.5(@types/node@22.8.4)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.36.0))
tsup:
- specifier: ^8.3.5
+ specifier: 8.3.5
version: 8.3.5(@swc/core@1.9.3(@swc/helpers@0.5.15))(jiti@2.4.0)(postcss@8.4.49)(typescript@5.6.3)(yaml@2.6.1)
packages/client-twitter:
@@ -671,8 +701,8 @@ importers:
specifier: workspace:*
version: link:../core
agent-twitter-client:
- specifier: 0.0.13
- version: 0.0.13
+ specifier: 0.0.14
+ version: 0.0.14
glob:
specifier: 11.0.0
version: 11.0.0
@@ -696,52 +726,43 @@ importers:
specifier: 0.5.4
version: 0.5.4(@typescript-eslint/eslint-plugin@8.12.2(@typescript-eslint/parser@8.12.2(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3))(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3))(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)(vitest@2.1.5(@types/node@22.8.4)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.36.0))
tsup:
- specifier: ^8.3.5
+ specifier: 8.3.5
version: 8.3.5(@swc/core@1.9.3(@swc/helpers@0.5.15))(jiti@2.4.0)(postcss@8.4.49)(typescript@5.6.3)(yaml@2.6.1)
packages/core:
dependencies:
'@ai-sdk/anthropic':
- specifier: ^0.0.56
+ specifier: 0.0.56
version: 0.0.56(zod@3.23.8)
'@ai-sdk/google':
- specifier: ^0.0.55
+ specifier: 0.0.55
version: 0.0.55(zod@3.23.8)
'@ai-sdk/google-vertex':
- specifier: ^0.0.43
+ specifier: 0.0.43
version: 0.0.43(@google-cloud/vertexai@1.9.0(encoding@0.1.13))(zod@3.23.8)
'@ai-sdk/groq':
- specifier: ^0.0.3
+ specifier: 0.0.3
version: 0.0.3(zod@3.23.8)
'@ai-sdk/openai':
specifier: 1.0.4
version: 1.0.4(zod@3.23.8)
- '@ai16z/adapter-sqlite':
- specifier: workspace:*
- version: link:../adapter-sqlite
- '@ai16z/adapter-sqljs':
- specifier: workspace:*
- version: link:../adapter-sqljs
- '@ai16z/adapter-supabase':
- specifier: workspace:*
- version: link:../adapter-supabase
'@anthropic-ai/sdk':
specifier: 0.30.1
version: 0.30.1(encoding@0.1.13)
'@types/uuid':
- specifier: ^10.0.0
+ specifier: 10.0.0
version: 10.0.0
ai:
- specifier: ^3.4.23
+ specifier: 3.4.33
version: 3.4.33(openai@4.73.0(encoding@0.1.13)(zod@3.23.8))(react@18.3.1)(sswr@2.1.0(svelte@5.2.7))(svelte@5.2.7)(vue@3.5.13(typescript@5.6.3))(zod@3.23.8)
anthropic-vertex-ai:
- specifier: ^1.0.0
+ specifier: 1.0.2
version: 1.0.2(encoding@0.1.13)(zod@3.23.8)
fastembed:
- specifier: ^1.14.1
+ specifier: 1.14.1
version: 1.14.1
fastestsmallesttextencoderdecoder:
- specifier: ^1.0.22
+ specifier: 1.0.22
version: 1.0.22
gaxios:
specifier: 6.7.1
@@ -753,10 +774,10 @@ importers:
specifier: 0.7.0
version: 0.7.0
langchain:
- specifier: ^0.3.6
+ specifier: 0.3.6
version: 0.3.6(@langchain/core@0.3.18(openai@4.73.0(encoding@0.1.13)(zod@3.23.8)))(axios@1.7.7)(encoding@0.1.13)(handlebars@4.7.8)(openai@4.73.0(encoding@0.1.13)(zod@3.23.8))
ollama-ai-provider:
- specifier: ^0.16.1
+ specifier: 0.16.1
version: 0.16.1(zod@3.23.8)
openai:
specifier: 4.73.0
@@ -768,7 +789,7 @@ importers:
specifier: 1.3.4
version: 1.3.4
together-ai:
- specifier: ^0.7.0
+ specifier: 0.7.0
version: 0.7.0(encoding@0.1.13)
unique-names-generator:
specifier: 4.7.1
@@ -777,11 +798,11 @@ importers:
specifier: 11.0.2
version: 11.0.2
zod:
- specifier: ^3.23.8
+ specifier: 3.23.8
version: 3.23.8
devDependencies:
'@eslint/js':
- specifier: ^9.13.0
+ specifier: 9.15.0
version: 9.15.0
'@rollup/plugin-commonjs':
specifier: 25.0.8
@@ -802,8 +823,8 @@ importers:
specifier: 11.1.6
version: 11.1.6(rollup@2.79.2)(tslib@2.8.0)(typescript@5.6.3)
'@solana/web3.js':
- specifier: 1.95.4
- version: 1.95.4(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10)
+ specifier: 1.95.5
+ version: 1.95.5(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10)
'@types/fluent-ffmpeg':
specifier: 2.1.27
version: 2.1.27
@@ -811,13 +832,13 @@ importers:
specifier: 29.5.14
version: 29.5.14
'@types/mocha':
- specifier: ^10.0.9
+ specifier: 10.0.10
version: 10.0.10
'@types/node':
specifier: 22.8.4
version: 22.8.4
'@types/pdfjs-dist':
- specifier: ^2.10.378
+ specifier: 2.10.378
version: 2.10.378(encoding@0.1.13)
'@types/tar':
specifier: 6.1.13
@@ -856,8 +877,8 @@ importers:
specifier: 3.1.7
version: 3.1.7
pm2:
- specifier: 5.4.2
- version: 5.4.2(bufferutil@4.0.8)(utf-8-validate@5.0.10)
+ specifier: 5.4.3
+ version: 5.4.3(bufferutil@4.0.8)(utf-8-validate@5.0.10)
prettier:
specifier: 3.3.3
version: 3.3.3
@@ -877,7 +898,7 @@ importers:
specifier: 2.8.0
version: 2.8.0
tsup:
- specifier: ^8.3.5
+ specifier: 8.3.5
version: 8.3.5(@swc/core@1.9.3(@swc/helpers@0.5.15))(jiti@2.4.0)(postcss@8.4.49)(typescript@5.6.3)(yaml@2.6.1)
typescript:
specifier: 5.6.3
@@ -886,14 +907,14 @@ importers:
packages/create-eliza-app:
dependencies:
citty:
- specifier: ^0.1.6
+ specifier: 0.1.6
version: 0.1.6
giget:
- specifier: ^1.2.3
+ specifier: 1.2.3
version: 1.2.3
devDependencies:
automd:
- specifier: ^0.3.12
+ specifier: 0.3.12
version: 0.3.12
eslint:
specifier: 9.13.0
@@ -908,20 +929,35 @@ importers:
specifier: 0.5.4
version: 0.5.4(@typescript-eslint/eslint-plugin@8.12.2(@typescript-eslint/parser@8.12.2(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3))(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3))(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)(vitest@2.1.5(@types/node@22.8.4)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.36.0))
jiti:
- specifier: ^2.4.0
+ specifier: 2.4.0
version: 2.4.0
unbuild:
- specifier: ^2.0.0
+ specifier: 2.0.0
version: 2.0.0(typescript@5.6.3)
- packages/plugin-bootstrap:
+ packages/plugin-0g:
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)
'@ai16z/eliza':
specifier: workspace:*
version: link:../core
+ ethers:
+ specifier: ^6.0.0
+ version: 6.13.4(bufferutil@4.0.8)(utf-8-validate@5.0.10)
tsup:
specifier: ^8.3.5
version: 8.3.5(@swc/core@1.9.3(@swc/helpers@0.5.15))(jiti@2.4.0)(postcss@8.4.49)(typescript@5.6.3)(yaml@2.6.1)
+
+ packages/plugin-bootstrap:
+ dependencies:
+ '@ai16z/eliza':
+ specifier: workspace:*
+ version: link:../core
+ tsup:
+ specifier: 8.3.5
+ version: 8.3.5(@swc/core@1.9.3(@swc/helpers@0.5.15))(jiti@2.4.0)(postcss@8.4.49)(typescript@5.6.3)(yaml@2.6.1)
whatwg-url:
specifier: 7.1.0
version: 7.1.0
@@ -942,29 +978,41 @@ importers:
packages/plugin-coinbase:
dependencies:
'@ai16z/eliza':
- specifier: ^0.1.3
- version: 0.1.3(@google-cloud/vertexai@1.9.0(encoding@0.1.13))(encoding@0.1.13)(react@18.3.1)(sswr@2.1.0(svelte@5.2.7))(svelte@5.2.7)
+ specifier: 0.1.3
+ version: 0.1.3(@google-cloud/vertexai@1.9.0(encoding@0.1.13))(encoding@0.1.13)(react@18.3.1)(sswr@2.1.0(svelte@5.2.7))(svelte@5.2.7)(vue@3.5.13(typescript@5.6.3))
coinbase-api:
- specifier: ^1.0.5
+ specifier: 1.0.5
version: 1.0.5(bufferutil@4.0.8)(utf-8-validate@5.0.10)
onnxruntime-node:
- specifier: ^1.20.0
+ specifier: 1.20.1
version: 1.20.1
+ vue:
+ specifier: 3.5.13
+ version: 3.5.13(typescript@5.6.3)
whatwg-url:
specifier: 7.1.0
version: 7.1.0
devDependencies:
tsup:
- specifier: ^8.3.5
+ specifier: 8.3.5
version: 8.3.5(@swc/core@1.9.3(@swc/helpers@0.5.15))(jiti@2.4.0)(postcss@8.4.49)(typescript@5.6.3)(yaml@2.6.1)
+ packages/plugin-conflux:
+ dependencies:
+ '@ai16z/eliza':
+ specifier: workspace:*
+ 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)
+
packages/plugin-image-generation:
dependencies:
'@ai16z/eliza':
specifier: workspace:*
version: link:../core
tsup:
- specifier: ^8.3.5
+ specifier: 8.3.5
version: 8.3.5(@swc/core@1.9.3(@swc/helpers@0.5.15))(jiti@2.4.0)(postcss@8.4.49)(typescript@5.6.3)(yaml@2.6.1)
whatwg-url:
specifier: 7.1.0
@@ -992,8 +1040,8 @@ importers:
specifier: 1.34.0
version: 1.34.0(playwright@1.48.2)
'@echogarden/espeak-ng-emscripten':
- specifier: 0.3.0
- version: 0.3.0
+ specifier: 0.3.3
+ version: 0.3.3
'@echogarden/kissfft-wasm':
specifier: 0.2.0
version: 0.2.0
@@ -1004,10 +1052,10 @@ importers:
specifier: 3.0.2
version: 3.0.2
'@opendocsg/pdf2md':
- specifier: 0.1.31
- version: 0.1.31(encoding@0.1.13)
+ specifier: 0.1.32
+ version: 0.1.32(encoding@0.1.13)
'@types/uuid':
- specifier: ^10.0.0
+ specifier: 10.0.0
version: 10.0.0
alawmulaw:
specifier: 6.0.0
@@ -1031,7 +1079,7 @@ importers:
specifier: 1.6.0
version: 1.6.0
echogarden:
- specifier: ^2.0.7
+ specifier: 2.0.7
version: 2.0.7(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(encoding@0.1.13)(utf-8-validate@5.0.10)(zod@3.23.8)
espeak-ng:
specifier: 1.0.2
@@ -1052,7 +1100,7 @@ importers:
specifier: 6.7.1
version: 6.7.1(encoding@0.1.13)
gif-frames:
- specifier: ^0.4.1
+ specifier: 0.4.1
version: 0.4.1
glob:
specifier: 11.0.0
@@ -1094,7 +1142,7 @@ importers:
specifier: 0.1.18
version: 0.1.18
onnxruntime-node:
- specifier: ^1.20.0
+ specifier: 1.20.1
version: 1.20.1
pdfjs-dist:
specifier: 4.7.76
@@ -1103,8 +1151,8 @@ importers:
specifier: 1.48.2
version: 1.48.2
pm2:
- specifier: 5.4.2
- version: 5.4.2(bufferutil@4.0.8)(utf-8-validate@5.0.10)
+ specifier: 5.4.3
+ version: 5.4.3(bufferutil@4.0.8)(utf-8-validate@5.0.10)
puppeteer-extra:
specifier: 3.3.6
version: 3.3.6(puppeteer-core@19.11.1(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.6.3)(utf-8-validate@5.0.10))(puppeteer@19.11.1(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.6.3)(utf-8-validate@5.0.10))
@@ -1112,7 +1160,7 @@ importers:
specifier: 2.0.1
version: 2.0.1(bufferutil@4.0.8)(encoding@0.1.13)(puppeteer-core@19.11.1(bufferutil@4.0.8)(encoding@0.1.13)(typescript@5.6.3)(utf-8-validate@5.0.10))(typescript@5.6.3)(utf-8-validate@5.0.10)
sharp:
- specifier: ^0.33.5
+ specifier: 0.33.5
version: 0.33.5
srt:
specifier: 0.0.3
@@ -1161,7 +1209,7 @@ importers:
specifier: 0.5.4
version: 0.5.4(@typescript-eslint/eslint-plugin@8.12.2(@typescript-eslint/parser@8.12.2(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3))(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3))(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)(vitest@2.1.5(@types/node@22.8.4)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.36.0))
tsup:
- specifier: ^8.3.5
+ specifier: 8.3.5
version: 8.3.5(@swc/core@1.9.3(@swc/helpers@0.5.15))(jiti@2.4.0)(postcss@8.4.49)(typescript@5.6.3)(yaml@2.6.1)
packages/plugin-solana:
@@ -1173,14 +1221,14 @@ importers:
specifier: workspace:*
version: link:../plugin-trustdb
'@coral-xyz/anchor':
- specifier: ^0.30.1
+ specifier: 0.30.1
version: 0.30.1(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10)
'@solana/spl-token':
specifier: 0.4.9
- version: 0.4.9(@solana/web3.js@1.95.4(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.8)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)
+ version: 0.4.9(@solana/web3.js@1.95.5(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.8)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)
'@solana/web3.js':
- specifier: 1.95.4
- version: 1.95.4(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10)
+ specifier: 1.95.5
+ version: 1.95.5(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10)
bignumber:
specifier: 1.1.0
version: 1.1.0
@@ -1188,7 +1236,7 @@ importers:
specifier: 9.1.2
version: 9.1.2
bs58:
- specifier: ^6.0.0
+ specifier: 6.0.0
version: 6.0.0
node-cache:
specifier: 5.1.2
@@ -1197,7 +1245,7 @@ importers:
specifier: 1.3.2
version: 1.3.2(bufferutil@4.0.8)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(rollup@4.27.4)(typescript@5.6.3)(utf-8-validate@5.0.10)
tsup:
- specifier: ^8.3.5
+ specifier: 8.3.5
version: 8.3.5(@swc/core@1.9.3(@swc/helpers@0.5.15))(jiti@2.4.0)(postcss@8.4.49)(typescript@5.6.3)(yaml@2.6.1)
whatwg-url:
specifier: 7.1.0
@@ -1225,22 +1273,22 @@ importers:
specifier: workspace:*
version: link:../plugin-trustdb
'@avnu/avnu-sdk':
- specifier: ^2.1.1
+ specifier: 2.1.1
version: 2.1.1(ethers@6.13.4(bufferutil@4.0.8)(utf-8-validate@5.0.10))(qs@6.13.0)(starknet@6.18.0(encoding@0.1.13))
'@uniswap/sdk-core':
- specifier: ^6.0.0
+ specifier: 6.0.0
version: 6.0.0
'@unruggable_starknet/core':
- specifier: ^0.1.0
+ specifier: 0.1.0
version: 0.1.0(starknet@6.18.0(encoding@0.1.13))
starknet:
- specifier: ^6.17.0
+ specifier: 6.18.0
version: 6.18.0(encoding@0.1.13)
tsup:
- specifier: ^8.3.5
+ specifier: 8.3.5
version: 8.3.5(@swc/core@1.9.3(@swc/helpers@0.5.15))(jiti@2.4.0)(postcss@8.4.49)(typescript@5.6.3)(yaml@2.6.1)
vitest:
- specifier: ^2.1.4
+ specifier: 2.1.5
version: 2.1.5(@types/node@22.8.4)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.36.0)
whatwg-url:
specifier: 7.1.0
@@ -1265,23 +1313,23 @@ importers:
specifier: workspace:*
version: link:../core
dompurify:
- specifier: 3.2.0
- version: 3.2.0
+ specifier: 3.2.1
+ version: 3.2.1
tsup:
- specifier: ^8.3.5
+ specifier: 8.3.5
version: 8.3.5(@swc/core@1.9.3(@swc/helpers@0.5.15))(jiti@2.4.0)(postcss@8.4.49)(typescript@5.6.3)(yaml@2.6.1)
uuid:
specifier: 11.0.2
version: 11.0.2
vitest:
- specifier: ^2.1.4
+ specifier: 2.1.5
version: 2.1.5(@types/node@22.8.4)(jsdom@25.0.1(bufferutil@4.0.8)(canvas@2.11.2(encoding@0.1.13))(utf-8-validate@5.0.10))(terser@5.36.0)
whatwg-url:
specifier: 7.1.0
version: 7.1.0
devDependencies:
'@types/dompurify':
- specifier: ^3.2.0
+ specifier: 3.2.0
version: 3.2.0
eslint:
specifier: 9.13.0
@@ -1302,7 +1350,7 @@ importers:
specifier: workspace:*
version: link:../core
tsup:
- specifier: ^8.3.5
+ specifier: 8.3.5
version: 8.3.5(@swc/core@1.9.3(@swc/helpers@0.5.15))(jiti@2.4.0)(postcss@8.4.49)(typescript@5.6.3)(yaml@2.6.1)
whatwg-url:
specifier: 7.1.0
@@ -1323,9 +1371,17 @@ importers:
packages:
+ '@0glabs/0g-ts-sdk@0.2.1':
+ resolution: {integrity: sha512-IJRD3D+5flNZIl32k/7D45yYvn9AjMeDdkhMr4Y/qo6nFE40HqYRaSlk6ZNI+MjaRzbDxMErrFzQcVkYH/DARg==}
+ peerDependencies:
+ ethers: 6.13.1
+
'@adraffy/ens-normalize@1.10.1':
resolution: {integrity: sha512-96Z2IP3mYmF1Xg2cDm8f1gWGf/HUVedQ3FMifV4kG/PQ4yEP51xDtRAEfhVNt5f/uzpNkZHwWQuUcu6D6K+Ekw==}
+ '@adraffy/ens-normalize@1.11.0':
+ resolution: {integrity: sha512-/3DDPKHqqIqxUULp8yP4zODUY1i+2xvVWsv8A79xGWdCAG+8sb0hRh0Rk2QyOJUnnbyPUAZYcpBuRe3nS2OIUg==}
+
'@ai-sdk/anthropic@0.0.53':
resolution: {integrity: sha512-33w5pmQINRRYwppgMhXY/y5ZIW6cbIhbuKbZQmy8SKZvtLBI2gM7H0QN/cH3nv0OmR4YsUw8L3DYUNlQs5hfEA==}
engines: {node: '>=18'}
@@ -2489,6 +2545,9 @@ packages:
resolution: {integrity: sha512-d7TeUl5t+TOMJe7/CRYtf+x6hbd8N25DtH7guQTIjjr3AFVortxiAIgNejGvVqy0by4eNByw+oVil15oqxz2Eg==}
deprecated: This project has been renamed to @ghostery/adblocker. Install using @ghostery/adblocker instead
+ '@coinbase/coinbase-sdk@0.10.0':
+ resolution: {integrity: sha512-sqLH7dE/0XSn5jHddjVrC1PR77sQUEytYcQAlH2d8STqRARcvddxVAByECUIL32MpbdJY7Wca3KfSa6qo811Mg==}
+
'@colors/colors@1.5.0':
resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==}
engines: {node: '>=0.1.90'}
@@ -2873,7 +2932,6 @@ packages:
resolution: {integrity: sha512-hArn9FF5ZYi1IkxdJEVnJi+OxlwLV0NJYWpKXsmNOojtGtAZHxmsELA+MZlu2KW1F/K1/nt7lFOfcMXNYweq9w==}
version: 0.17.0
engines: {node: '>=16.11.0'}
- deprecated: This version uses deprecated encryption modes. Please use a newer version.
'@discordjs/ws@1.1.1':
resolution: {integrity: sha512-PZ+vLpxGCRtmr2RMkqh8Zp+BenUaJqlS6xhgWKEZcgC/vfHLEzpHtKkB0sl3nZWpwtcKk6YWy+pU3okL2I97FA==}
@@ -2944,12 +3002,6 @@ packages:
react: ^18.0.0
react-dom: ^18.0.0
- '@docusaurus/module-type-aliases@3.6.0':
- resolution: {integrity: sha512-szTrIN/6/fuk0xkf3XbRfdTFJzRQ8d1s3sQj5++58wltrT7v3yn1149oc9ryYjMpRcbsarGloQwMu7ofPe4XPg==}
- peerDependencies:
- react: '*'
- react-dom: '*'
-
'@docusaurus/module-type-aliases@3.6.3':
resolution: {integrity: sha512-MjaXX9PN/k5ugNvfRZdWyKWq4FsrhN4LEXaj0pEmMebJuBNlFeGyKQUa9DRhJHpadNaiMLrbo9m3U7Ig5YlsZg==}
peerDependencies:
@@ -3081,12 +3133,6 @@ packages:
resolution: {integrity: sha512-Gb0regclToVlngSIIwUCtBMQBq48qVUaN1XQNKW4XwlsgUyk0vP01LULdqbem7czSwIeBAFXFoORJ0RPX7ht/w==}
engines: {node: '>=18.0'}
- '@docusaurus/types@3.6.0':
- resolution: {integrity: sha512-jADLgoZGWhAzThr+mRiyuFD4OUzt6jHnb7NRArRKorgxckqUBaPyFOau9hhbcSTHtU6ceyeWjN7FDt7uG2Hplw==}
- peerDependencies:
- react: ^18.0.0
- react-dom: ^18.0.0
-
'@docusaurus/types@3.6.3':
resolution: {integrity: sha512-xD9oTGDrouWzefkhe9ogB2fDV96/82cRpNGx2HIvI5L87JHNhQVIWimQ/3JIiiX/TEd5S9s+VO6FFguwKNRVow==}
peerDependencies:
@@ -3110,9 +3156,6 @@ packages:
engines: {node: '>=18'}
os: [win32, darwin, linux]
- '@echogarden/espeak-ng-emscripten@0.3.0':
- resolution: {integrity: sha512-ukSH2lnIRJqthW07lHfEPUUx59OrFovso8bicwbIT4MV/0jvE15nKv7Uk73fwZQSpo9Y+8Lpyr24nP+AJ5AJOA==}
-
'@echogarden/espeak-ng-emscripten@0.3.3':
resolution: {integrity: sha512-TvSwLnB0vuqIUptvHZyr63Ywj2m7ureIK864O8aoyw9WqEqHE1x5weBzy/1/soZ4BkEkRvurlLF7ue+tEhyatw==}
@@ -3152,7 +3195,7 @@ packages:
'@echogarden/transformers-nodejs-lite@2.17.1-lite.3':
resolution: {integrity: sha512-qD9kvrL1xmce0iiiNEyqq2GW1qoksqvdOpww3Gsgqx/O9tdU/M2R78fji9opY+QU9u8OKH9L+ZzsOQdF5FixZA==}
peerDependencies:
- onnxruntime-node: ^1.20.0
+ onnxruntime-node: 1.20.1
'@emnapi/core@1.3.1':
resolution: {integrity: sha512-pVGjBIt1Y6gg3EJN8jTcfpP/+uuRksIo055oE/OBkDNcjZqVbfkWCksG1Jp4yZnj3iKWyWX8fdG/j6UDYPbFog==}
@@ -3645,6 +3688,21 @@ packages:
'@ethersproject/strings@5.7.0':
resolution: {integrity: sha512-/9nu+lj0YswRNSH0NXYqrh8775XNyEdUQAuf3f+SmOrnVewcJ5SBNAjF7lpgehKi4abvNNXyf+HX86czCdJ8Mg==}
+ '@floating-ui/core@1.6.8':
+ resolution: {integrity: sha512-7XJ9cPU+yI2QeLS+FCSlqNFZJq8arvswefkZrYI1yQBbftw6FyrZOxYSh+9S7z7TpeWlRt9zJ5IhM1WIL334jA==}
+
+ '@floating-ui/dom@1.6.12':
+ resolution: {integrity: sha512-NP83c0HjokcGVEMeoStg317VD9W7eDlGK7457dMBANbKA6GJZdc7rjujdgqzTaz93jkGgc5P/jeWbaCHnMNc+w==}
+
+ '@floating-ui/react-dom@2.1.2':
+ resolution: {integrity: sha512-06okr5cgPzMNBy+Ycse2A6udMi4bqwW/zgBF/rwjcNqWkyr82Mcg8b0vjX8OJpZFy/FKjJmw6wV7t44kK6kW7A==}
+ peerDependencies:
+ react: '>=16.8.0'
+ react-dom: '>=16.8.0'
+
+ '@floating-ui/utils@0.2.8':
+ resolution: {integrity: sha512-kym7SodPp8/wloecOpcmSnWJsK7M0E5Wg8UcFA+uO4B9s5d0ywXOEro/8HM9x0rW+TljRzul/14UYz3TleT3ig==}
+
'@google-cloud/vertexai@1.9.0':
resolution: {integrity: sha512-8brlcJwFXI4fPuBtsDNQqCdWZmz8gV9jeEKOU0vc5H2SjehCQpXK/NwuSEr916zbhlBHtg/sU37qQQdgvh5BRA==}
engines: {node: '>=18.0.0'}
@@ -3939,8 +3997,8 @@ packages:
'@leichtgewicht/ip-codec@2.0.5':
resolution: {integrity: sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw==}
- '@lerna/create@8.1.9':
- resolution: {integrity: sha512-DPnl5lPX4v49eVxEbJnAizrpMdMTBz1qykZrAbBul9rfgk531v8oAt+Pm6O/rpAleRombNM7FJb5rYGzBJatOQ==}
+ '@lerna/create@8.1.5':
+ resolution: {integrity: sha512-Ku8yTGgeumayvMr8sml72EPb6WaoJhRjMTkMZrKSJtcLNDBlDpKwyUxDxNTBNBRUYWUuJCnj7eUH7pDNuc9odQ==}
engines: {node: '>=18.0.0'}
'@mapbox/node-pre-gyp@1.0.11':
@@ -3972,6 +4030,10 @@ packages:
'@noble/curves@1.3.0':
resolution: {integrity: sha512-t01iSXPuN+Eqzb4eBX0S5oubSqXbK/xXa1Ne18Hj8f9pStxztHCE2gfboSp/dZRLSqfuLpRK2nDXDK+W9puocA==}
+ '@noble/curves@1.6.0':
+ resolution: {integrity: sha512-TlaHRXDehJuRNR9TfZDNQ45mMEd5dwUwmicsafcIX4SsNiqnCHKjE/1alYPd/lDRVhxdhUAlv8uEhMCI5zjIJQ==}
+ engines: {node: ^14.21.3 || >=16}
+
'@noble/curves@1.7.0':
resolution: {integrity: sha512-UTMhXK9SeDhFJVrHeUJ5uZlI6ajXg10O6Ddocf9S6GjbSBVZsJo88HzKwXznNfGpMTRDyJkqMjNDPYgf0qFWnw==}
engines: {node: ^14.21.3 || >=16}
@@ -3992,6 +4054,10 @@ packages:
resolution: {integrity: sha512-YUULf0Uk4/mAA89w+k3+yUYh6NrEvxZa5T6SY3wlMvE2chHkxFUUIDI8/XW1QSC357iA5pSnqt7XEhvFOqmDyQ==}
engines: {node: ^14.21.3 || >=16}
+ '@noble/hashes@1.6.1':
+ resolution: {integrity: sha512-pq5D8h10hHBjyqX+cfBm0i8JUXJ0UhczFc4r74zbuT9XgewFo2E3J1cOaGtdZynILNmQ685YWGzGE1Zv6io50w==}
+ engines: {node: ^14.21.3 || >=16}
+
'@node-llama-cpp/linux-arm64@3.1.1':
resolution: {integrity: sha512-rrn1O9zmg8L47e16YlbGI3+Uw1Z8HCTNiBqnz+qcfH2H6HnHd1IenM1CgR9+PVODCnUXE7ErN2moto1XsOxifQ==}
engines: {node: '>=18.0.0'}
@@ -4074,8 +4140,8 @@ packages:
resolution: {integrity: sha512-OrcNPXdpSl9UX7qPVRWbmWMCSXrcDa2M9DvrbOTj7ao1S4PlqVFYv9/yLKMkrJKZ/V5A/kDBC690or307i26Og==}
engines: {node: ^16.14.0 || >=18.0.0}
- '@npmcli/arborist@7.5.4':
- resolution: {integrity: sha512-nWtIc6QwwoUORCRNzKx4ypHqCk3drI+5aeYdMTQQiRCcn4lOOgfQh7WyZobGYTxXPSq1VwV53lkpN/BRlRk08g==}
+ '@npmcli/arborist@7.5.3':
+ resolution: {integrity: sha512-7gbMdDNSYUzi0j2mpb6FoXRg3BxXWplMQZH1MZlvNjSdWFObaUz2Ssvo0Nlh2xmWks1OPo+gpsE6qxpT/5M7lQ==}
engines: {node: ^16.14.0 || >=18.0.0}
hasBin: true
@@ -4128,67 +4194,74 @@ packages:
resolution: {integrity: sha512-y7efHHwghQfk28G2z3tlZ67pLG0XdfYbcVG26r7YIXALRsrVQcTq4/tdenSmdOrEsNahIYA/eh8aEVROWGFUDg==}
engines: {node: ^16.14.0 || >=18.0.0}
- '@nx/devkit@20.1.3':
- resolution: {integrity: sha512-+bNCRNSHKS7SS4Q2xI/p4hhd4mIibIbeF+hpF3TLO5wxyXbrYGSdhCVK5SwclwWUN/KhcKQjOrVGW5CKAm7HAw==}
+ '@nrwl/devkit@19.8.12':
+ resolution: {integrity: sha512-FgdBL20xGC7JCI2ctBkWC8GFJKfI/uQai+SLQBUyUJr1WcMV2rYfHz2MMWWPxOHcU0RDRanvlQFibx0xGYyqtg==}
+
+ '@nrwl/tao@19.8.12':
+ resolution: {integrity: sha512-SBO/8yc9IxD0iiAFbjOZvt1g0HI+9oZ5C+KEF+IiRnIpg4/oYfqKJXCRJXB8vstXRpX+NNPM0OlSaCC75oIZcQ==}
+ hasBin: true
+
+ '@nx/devkit@19.8.12':
+ resolution: {integrity: sha512-BRLbRj0yYL1P9XivDYTC0sfiPt+0Vms0DkJ3nDW8uPPt1romRI3vYdPBfsgaFCqg8ieFO4j94VjAwr5baUt3Gg==}
peerDependencies:
nx: '>= 19 <= 21'
- '@nx/nx-darwin-arm64@20.1.3':
- resolution: {integrity: sha512-m0Rwawht7Jwq6u2QPmAtsv+khFsTUIZUfiO1kXGcKOX3nQdJ7i82zLRd5yGbrDTAyRbAsgWO3v8zWQyhC1oGjw==}
+ '@nx/nx-darwin-arm64@19.8.12':
+ resolution: {integrity: sha512-0MPAE/k0G7IL8z09w+/5an1vLo5sPJn2m9pv3vYNBT3WySc7iLxa5bLoJNVk1R8yFCjvoFo+1OmUgCsfRiPf/g==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [darwin]
- '@nx/nx-darwin-x64@20.1.3':
- resolution: {integrity: sha512-WsQK1sxOJFzD0vOtFqSHpLzWuFO4vG7G1PUyJ1Y5mPo4vbRslqoAUTqF7n42bBRPY/lE2aT7BqAAj8hm4PgcnQ==}
+ '@nx/nx-darwin-x64@19.8.12':
+ resolution: {integrity: sha512-Ak+SKDRyVWpBQSuAYuLByt3eZQUtOxTLY1S7Z1Lef9guh2n2ziBMNYuZPVZyjzWkswcX1dLS8LSfT3qnQ1MQMw==}
engines: {node: '>= 10'}
cpu: [x64]
os: [darwin]
- '@nx/nx-freebsd-x64@20.1.3':
- resolution: {integrity: sha512-HV57XMtCVPy/0LZtifcEHbOpVNKLTOBFUoUXkmGYBmAKfw7lccfF600/tunTCZ4aijsD6+opEeGHzlDUK0Ir1w==}
+ '@nx/nx-freebsd-x64@19.8.12':
+ resolution: {integrity: sha512-u//YheOyzNB8XXxfZKuGpdZgDRgH0gKGweE3dNy2O5Z4d1evByH1x3a5GaRFqF5Bpo8fKx3iI1q0NG7EnHfFIw==}
engines: {node: '>= 10'}
cpu: [x64]
os: [freebsd]
- '@nx/nx-linux-arm-gnueabihf@20.1.3':
- resolution: {integrity: sha512-RzP0vc4yhXktKxz7iiwVYFkgpyb5TN/lLGcKLMM4kjuyYJ0IUX58Kk5FDoqCy+HMKiMfGyTOT4fP+/UEsgW6qQ==}
+ '@nx/nx-linux-arm-gnueabihf@19.8.12':
+ resolution: {integrity: sha512-g6qatW6DsJdi9hzUOAyeuu7xFMfFZ/+FrbPH1sKHF4OR7c2YD9R/ATQvt50ojaoCkH3cDkMYaFF8CjbvutCZDw==}
engines: {node: '>= 10'}
cpu: [arm]
os: [linux]
- '@nx/nx-linux-arm64-gnu@20.1.3':
- resolution: {integrity: sha512-WCaU5AiGx21C3t3v4+d7nrA1r5Xc5Wk7yVxZFWh+mKHdcqk1JebDIr1qj/7yoKHD2R9k2Vp5x5Kd0pzAGS8AyA==}
+ '@nx/nx-linux-arm64-gnu@19.8.12':
+ resolution: {integrity: sha512-UAMUfySdVPlhGzYK+NvZprUQT7FmQJcLSA1odmkGaSAqMyqMeBZpOLymfpjVzoTFcyiGg8bv3pDBlN5xCWG4YA==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [linux]
- '@nx/nx-linux-arm64-musl@20.1.3':
- resolution: {integrity: sha512-lKAvR9jNyx/qvk3UZGYNJAoK5mkZc+rDD4gA23tOGYPjNrWHJEgbWycCk5A9tQ4QX4CskCNmkgQx0lOMdLeXsw==}
+ '@nx/nx-linux-arm64-musl@19.8.12':
+ resolution: {integrity: sha512-cay9nP6wvalW7s7UCWunikVpHpg+zU7+ZJ3lkahns/CMh8bXs4Q7FbPesbc9LNjh00pS247HmpXEWSYIA5MtSA==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [linux]
- '@nx/nx-linux-x64-gnu@20.1.3':
- resolution: {integrity: sha512-RKNm7RnTgCSl2HstDb/qMKO9r8o81EUe+UZB5fgjNR89PB757iHUX30kM0xbkiRZui1vIkMAvWcNsidxBnGGfg==}
+ '@nx/nx-linux-x64-gnu@19.8.12':
+ resolution: {integrity: sha512-EqKg+gqiyJBF5kedYy8PGBBQ1mKCYCK2d95mrOE3yP0a3ovBDGZnOIdoTRFEcT+C23rmbNhrfknqf6wpVFmH6w==}
engines: {node: '>= 10'}
cpu: [x64]
os: [linux]
- '@nx/nx-linux-x64-musl@20.1.3':
- resolution: {integrity: sha512-aCXEWt1WQDPLzgp5I+NfqaP0y4ZKi2aauZMnSO6KE54MnZmvB+B4HQMZvqHM3dfU0jluvLRBmVIPLeTHiCccrw==}
+ '@nx/nx-linux-x64-musl@19.8.12':
+ resolution: {integrity: sha512-GK5CzB/K3S/vSBA9K46lrY1CvXTuN9eIbuu37BlNQJN8h+Zw4tGv30DZ6FYIpubzAmUq2omPJkApbXQ/MmveUg==}
engines: {node: '>= 10'}
cpu: [x64]
os: [linux]
- '@nx/nx-win32-arm64-msvc@20.1.3':
- resolution: {integrity: sha512-625rRYFfoCTu73bjDZ+jOLU0lvEN2heiiUGlErc6GchfcWuIcZy16oyYQzZX69UQqryGkkZVTaoyMXhGS5p7Tg==}
+ '@nx/nx-win32-arm64-msvc@19.8.12':
+ resolution: {integrity: sha512-3oWgO9OlwldgPLYxKlbDJeLKwT6S09Btwj7+AZMpTSJ6r+jNkU2uZsB0M8Pa4yiSwKrj8V8EjIWMGHaPIqCz+Q==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [win32]
- '@nx/nx-win32-x64-msvc@20.1.3':
- resolution: {integrity: sha512-XUbxSB6vUWoixNyCXkaXGkeUy/syqFOBXVh5Wbi6bqwTJ5o6EFUxCnzK/JsK55dfOz+I/jMXJzDWYEDAsikTSA==}
+ '@nx/nx-win32-x64-msvc@19.8.12':
+ resolution: {integrity: sha512-VymDZDL/ZPO7hXgHp34G/nKBdI6JRzXcXhOVazPro4eFx42Tr3Aepx+A5Cnz85ZsV4KwoNku57RkBbg/p7V9Eg==}
engines: {node: '>= 10'}
cpu: [x64]
os: [win32]
@@ -4412,8 +4485,8 @@ packages:
resolution: {integrity: sha512-I5YPUtfWidh+OzyrlDahJsUpkpGK0kCTmDRbuqGmlCUzOtxdEkX3R4d6Cd08ijQYwkVXQJanPdbKuZBeV2NMaA==}
engines: {node: '>= 18'}
- '@opendocsg/pdf2md@0.1.31':
- resolution: {integrity: sha512-Pinl9WSL3P7pMeIdriQCYuBymspbGwt+Wic9ocoIGSYQuxccRC6fMzhRXAgO//MqwTSbgPiKHzYFE2v7Azd9gw==}
+ '@opendocsg/pdf2md@0.1.32':
+ resolution: {integrity: sha512-UK4qVuesmUcpPZXMeO8FwRqpCNwJRBTHcae4j+3Mr3bxrNqilZIIowdrzgcgn8fSQ2Dg/P4/0NoPkxAvf9D5rw==}
hasBin: true
'@opentelemetry/api@1.9.0':
@@ -4579,6 +4652,22 @@ packages:
typescript:
optional: true
+ '@radix-ui/primitive@1.1.0':
+ resolution: {integrity: sha512-4Z8dn6Upk0qk4P74xBhZ6Hd/w0mPEzOOLxy4xiPXOXqjF7jZS0VAKk7/x/H6FyY2zCkYJqePf1G5KmkmNJ4RBA==}
+
+ '@radix-ui/react-arrow@1.1.0':
+ resolution: {integrity: sha512-FmlW1rCg7hBpEBwFbjHwCW6AmWLQM6g/v0Sn8XbP9NvmSZ2San1FpQeyPtufzOMSIx7Y4dzjlHoifhp+7NkZhw==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+
'@radix-ui/react-compose-refs@1.1.0':
resolution: {integrity: sha512-b4inOtiaOnYf9KWyO3jAeeCG6FeyfY6ldiEPanbUjWd+xIk5wZeHa8yVwmrJ2vderhu/BQvzCrJI0lHd+wIiqw==}
peerDependencies:
@@ -4588,6 +4677,146 @@ packages:
'@types/react':
optional: true
+ '@radix-ui/react-context@1.1.0':
+ resolution: {integrity: sha512-OKrckBy+sMEgYM/sMmqmErVn0kZqrHPJze+Ql3DzYsDDp0hl0L62nx/2122/Bvps1qz645jlcu2tD9lrRSdf8A==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ '@radix-ui/react-context@1.1.1':
+ resolution: {integrity: sha512-UASk9zi+crv9WteK/NU4PLvOoL3OuE6BWVKNF6hPRBtYBDXQ2u5iu3O59zUlJiTVvkyuycnqrztsHVJwcK9K+Q==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ '@radix-ui/react-dialog@1.1.2':
+ resolution: {integrity: sha512-Yj4dZtqa2o+kG61fzB0H2qUvmwBA2oyQroGLyNtBj1beo1khoQ3q1a2AO8rrQYjd8256CO9+N8L9tvsS+bnIyA==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+
+ '@radix-ui/react-dismissable-layer@1.1.1':
+ resolution: {integrity: sha512-QSxg29lfr/xcev6kSz7MAlmDnzbP1eI/Dwn3Tp1ip0KT5CUELsxkekFEMVBEoykI3oV39hKT4TKZzBNMbcTZYQ==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+
+ '@radix-ui/react-focus-guards@1.1.1':
+ resolution: {integrity: sha512-pSIwfrT1a6sIoDASCSpFwOasEwKTZWDw/iBdtnqKO7v6FeOzYJ7U53cPzYFVR3geGGXgVHaH+CdngrrAzqUGxg==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ '@radix-ui/react-focus-scope@1.1.0':
+ resolution: {integrity: sha512-200UD8zylvEyL8Bx+z76RJnASR2gRMuxlgFCPAe/Q/679a/r0eK3MBVYMb7vZODZcffZBdob1EGnky78xmVvcA==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+
+ '@radix-ui/react-id@1.1.0':
+ resolution: {integrity: sha512-EJUrI8yYh7WOjNOqpoJaf1jlFIH2LvtgAl+YcFqNCa+4hj64ZXmPkAKOFs/ukjz3byN6bdb/AVUqHkI8/uWWMA==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ '@radix-ui/react-popper@1.2.0':
+ resolution: {integrity: sha512-ZnRMshKF43aBxVWPWvbj21+7TQCvhuULWJ4gNIKYpRlQt5xGRhLx66tMp8pya2UkGHTSlhpXwmjqltDYHhw7Vg==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+
+ '@radix-ui/react-portal@1.1.2':
+ resolution: {integrity: sha512-WeDYLGPxJb/5EGBoedyJbT0MpoULmwnIPMJMSldkuiMsBAv7N1cRdsTWZWht9vpPOiN3qyiGAtbK2is47/uMFg==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+
+ '@radix-ui/react-presence@1.1.1':
+ resolution: {integrity: sha512-IeFXVi4YS1K0wVZzXNrbaaUvIJ3qdY+/Ih4eHFhWA9SwGR9UDX7Ck8abvL57C4cv3wwMvUE0OG69Qc3NCcTe/A==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+
+ '@radix-ui/react-primitive@2.0.0':
+ resolution: {integrity: sha512-ZSpFm0/uHa8zTvKBDjLFWLo8dkr4MBsiDLz0g3gMUwqgLHz9rTaRRGYDgvZPtBJgYCBKXkS9fzmoySgr8CO6Cw==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+
+ '@radix-ui/react-separator@1.1.0':
+ resolution: {integrity: sha512-3uBAs+egzvJBDZAzvb/n4NxxOYpnspmWxO2u5NbZ8Y6FM/NdrGSF9bop3Cf6F6C71z1rTSn8KV0Fo2ZVd79lGA==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+
'@radix-ui/react-slot@1.1.0':
resolution: {integrity: sha512-FUCf5XMfmW4dtYl69pdS4DbxKy8nj4M7SafBgPllysxmdachynNflAdp/gCsnYWNDnge6tI9onzMp5ARYc1KNw==}
peerDependencies:
@@ -4597,56 +4826,133 @@ packages:
'@types/react':
optional: true
- '@reflink/reflink-darwin-arm64@0.1.16':
- resolution: {integrity: sha512-s61AeZ0br2LtqOl2Rbq0k833hQ00sXJ+l9LGJmjM53dupWft3HEX9C5WUIMDDiU2Scx7f7UKAE4DvIvv7XjBWQ==}
- engines: {node: '>= 10'}
- cpu: [arm64]
- os: [darwin]
+ '@radix-ui/react-tooltip@1.1.4':
+ resolution: {integrity: sha512-QpObUH/ZlpaO4YgHSaYzrLO2VuO+ZBFFgGzjMUPwtiYnAzzNNDPJeEGRrT7qNOrWm/Jr08M1vlp+vTHtnSQ0Uw==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+
+ '@radix-ui/react-use-callback-ref@1.1.0':
+ resolution: {integrity: sha512-CasTfvsy+frcFkbXtSJ2Zu9JHpN8TYKxkgJGWbjiZhFivxaeW7rMeZt7QELGVLaYVfFMsKHjb7Ak0nMEe+2Vfw==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ '@radix-ui/react-use-controllable-state@1.1.0':
+ resolution: {integrity: sha512-MtfMVJiSr2NjzS0Aa90NPTnvTSg6C/JLCV7ma0W6+OMV78vd8OyRpID+Ng9LxzsPbLeuBnWBA1Nq30AtBIDChw==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ '@radix-ui/react-use-escape-keydown@1.1.0':
+ resolution: {integrity: sha512-L7vwWlR1kTTQ3oh7g1O0CBF3YCyyTj8NmhLR+phShpyA50HCfBFKVJTpshm9PzLiKmehsrQzTYTpX9HvmC9rhw==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ '@radix-ui/react-use-layout-effect@1.1.0':
+ resolution: {integrity: sha512-+FPE0rOdziWSrH9athwI1R0HDVbWlEhd+FR+aSDk4uWGmSJ9Z54sdZVDQPZAinJhJXwfT+qnj969mCsT2gfm5w==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ '@radix-ui/react-use-rect@1.1.0':
+ resolution: {integrity: sha512-0Fmkebhr6PiseyZlYAOtLS+nb7jLmpqTrJyv61Pe68MKYW6OWdRE2kI70TaYY27u7H0lajqM3hSMMLFq18Z7nQ==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ '@radix-ui/react-use-size@1.1.0':
+ resolution: {integrity: sha512-XW3/vWuIXHa+2Uwcc2ABSfcCledmXhhQPlGbfcRXbiUQI5Icjcg19BGCZVKKInYbvUCut/ufbbLLPFC5cbb1hw==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ '@radix-ui/react-visually-hidden@1.1.0':
+ resolution: {integrity: sha512-N8MDZqtgCgG5S3aV60INAB475osJousYpZ4cTJ2cFbMpdHS5Y6loLTH8LPtkj2QN0x93J30HT/M3qJXM0+lyeQ==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+
+ '@radix-ui/rect@1.1.0':
+ resolution: {integrity: sha512-A9+lCBZoaMJlVKcRBz2YByCG+Cp2t6nAnMnNba+XiWxnj6r4JUFqfsgwocMBZU9LPtdxC6wB56ySYpc7LQIoJg==}
- '@reflink/reflink-darwin-x64@0.1.16':
- resolution: {integrity: sha512-ssrJj3K0Euua2LAkA4ff5y693wGKUHfznrGeWWtMw2aoLZRAH+C9Ne5oQvmcPPEK6wa929nRhA0ABrvhUa9mvA==}
+ '@reflink/reflink-darwin-arm64@0.1.17':
+ resolution: {integrity: sha512-ATlkKHl/9wFwZNezuUfHBGR5O4OpXs5ikD+3OKNOl+CzSPUY95ZSm3DyVUaTfGM5O7rCC1N7PXv/Q73uEdy/wA==}
engines: {node: '>= 10'}
- cpu: [x64]
+ cpu: [arm64]
os: [darwin]
- '@reflink/reflink-linux-arm64-gnu@0.1.16':
- resolution: {integrity: sha512-I4PCAcsAKFRSfOSHdz+rck6ARg4jzo4PvVqcnS2odcXy1Inbehxk3IcKBpHnuuDbXRCUoWV6NP7wSx1wG7ZBuA==}
+ '@reflink/reflink-linux-arm64-gnu@0.1.17':
+ resolution: {integrity: sha512-RTKNhBHn7rvQyqciqY5yylcsdOcxuFbTbg81fRR/b8WOTNJ6WXDQpdX0AcL38IC7VYSe4fRhqwvyEuVg/d5wbg==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [linux]
- '@reflink/reflink-linux-arm64-musl@0.1.16':
- resolution: {integrity: sha512-xzcdtfwTXWUzN5yHdJgCdyAZSBO0faSgTqGdT4QKDxGHmiokf7+tgVBd6bU2nT4sL26AiIFyIBwp8buXGQYyaw==}
+ '@reflink/reflink-linux-arm64-musl@0.1.17':
+ resolution: {integrity: sha512-dCKQLGkDiAjlwWGZvkzeRwY51RZWPFgNx9QDJ1SKR1nGxC3/tNukyC8doG1ssFfBYTlo/YMfEk6SZXnxbbFaUg==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [linux]
- '@reflink/reflink-linux-x64-gnu@0.1.16':
- resolution: {integrity: sha512-4/jscn1A/hx6maOowUjcvIs7YBs0fj//1vxB16TdMYk3tH9FHNmMBv5Pvw8eeRDimAzHP9fQJ9/t4dR6HCf32w==}
+ '@reflink/reflink-linux-x64-gnu@0.1.17':
+ resolution: {integrity: sha512-RIfW4D5gQCS9svw9XvKQSO368/FQSs4Yo+t2buAdgg9KhWxBWcjmtm7z4jlaMRGBimQE4I86PFhtPrXHrcbufg==}
engines: {node: '>= 10'}
cpu: [x64]
os: [linux]
- '@reflink/reflink-linux-x64-musl@0.1.16':
- resolution: {integrity: sha512-03kRXoAXhS/ZKxU2TKax59mLyKP7mev0EoIs+yXejUQo6D4uU46j+Sc243xMp72jRTgbWV4hQykcov98KtXEKQ==}
+ '@reflink/reflink-linux-x64-musl@0.1.17':
+ resolution: {integrity: sha512-Ha6NXgIH0qbEpTWDIdqO94NMmcz3lxVzH17VeWjRQe05M7wxtB2ODpxEY6uTkJrNrP3T5fiX4DT0X1t0PJegfg==}
engines: {node: '>= 10'}
cpu: [x64]
os: [linux]
- '@reflink/reflink-win32-arm64-msvc@0.1.16':
- resolution: {integrity: sha512-N7r+6YB3vXijs7PF3eg306B5s82hGS2TzsMM4+B9DNN9sbvN2yV5HQw29zyCXHY9c9SLe5kEzERp0rsDtN+6TA==}
+ '@reflink/reflink-win32-arm64-msvc@0.1.17':
+ resolution: {integrity: sha512-eB2+v47QmAH2XKVykWLevCLSnJG+xSszcUiqc3LReMI4oa1yyR1L5Pa/WHs18ac8mPq6lsgSovdVO2voZVLb8g==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [win32]
- '@reflink/reflink-win32-x64-msvc@0.1.16':
- resolution: {integrity: sha512-CaslGjfhpvtjHqr8Cw1MhkYZAkcLWFiL1pMXOPv4fwngtLC5/OlcL/Y4Rw2QEZwDvPG3gaeY7pjF1NYEGnDrZA==}
+ '@reflink/reflink-win32-x64-msvc@0.1.17':
+ resolution: {integrity: sha512-S9mUCeVcty9vnekD9x5eSUvUqcTCha1Iscd0fN0PoXusj/IqaYcyMO9Vke9Qr/UFcKPQBFLj6F52b8PP3EaNsQ==}
engines: {node: '>= 10'}
cpu: [x64]
os: [win32]
- '@reflink/reflink@0.1.16':
- resolution: {integrity: sha512-i2zYt2FH1CE/1HUwK96HcwiahGhaS4wSCgaUnlIrl/4bxTnaZ0T/sYcLJ5VNSrbuczWjtyJ4WUROB+qMcRI9jA==}
+ '@reflink/reflink@0.1.17':
+ resolution: {integrity: sha512-+drVOToSW+6HouIpY0kFGC9DwETJJTBIS3UqUUxrR8C0bHRX93XYOgG6BEYqguOJA6+Qz0VfPt+CL3zSrsdjfg==}
engines: {node: '>= 10'}
'@remix-run/router@1.15.1':
@@ -4865,6 +5171,21 @@ packages:
'@scure/base@1.1.9':
resolution: {integrity: sha512-8YKhl8GHiNI/pU2VMaofa2Tor7PJRAjwQLBBuilkJ9L5+13yVbC7JO/wS7piioAvPSwR3JKM1IJ/u4xQzbcXKg==}
+ '@scure/base@1.2.1':
+ resolution: {integrity: sha512-DGmGtC8Tt63J5GfHgfl5CuAXh96VF/LD8K9Hr/Gv0J2lAoRGlPOMpqMpMbCTOoOJMZCk2Xt+DskdDyn6dEFdzQ==}
+
+ '@scure/bip32@1.5.0':
+ resolution: {integrity: sha512-8EnFYkqEQdnkuGBVpCzKxyIwDCBLDVj3oiX0EKUFre/tOjL/Hqba1D6n/8RcmaQy4f95qQFrO2A8Sr6ybh4NRw==}
+
+ '@scure/bip32@1.6.0':
+ resolution: {integrity: sha512-82q1QfklrUUdXJzjuRU7iG7D7XiFx5PHYVS0+oeNKhyDLT7WPqs6pBcM2W5ZdwOwKCwoE1Vy1se+DHjcXwCYnA==}
+
+ '@scure/bip39@1.4.0':
+ resolution: {integrity: sha512-BEEm6p8IueV/ZTfQLp/0vhw4NPnT9oWf5+28nvmeUICjP99f4vr2d+qc7AVGDDtwRep6ifR43Yed9ERVmiITzw==}
+
+ '@scure/bip39@1.5.0':
+ resolution: {integrity: sha512-Dop+ASYhnrwm9+HA/HwXg7j2ZqM6yk2fyLWb5znexjctFY3+E+eU8cIWI0Pql0Qx4hPZCijlGq4OL71g+Uz30A==}
+
'@scure/starknet@1.0.0':
resolution: {integrity: sha512-o5J57zY0f+2IL/mq8+AYJJ4Xpc1fOtDhr+mFQKbHnYFmm3WQrC+8zj2HEgxak1a+x86mhmBC1Kq305KUpVf0wg==}
@@ -5240,8 +5561,8 @@ packages:
resolution: {integrity: sha512-JBMGB0oR4lPttOZ5XiUGyvylwLQjt1CPJa6qQ5oM+MBCndfjz2TKKkw0eATlLLcYmq1jBVsNlJ2cD6ns2GR7lA==}
engines: {node: '>=16'}
- '@solana/web3.js@1.95.4':
- resolution: {integrity: sha512-sdewnNEA42ZSMxqkzdwEWi6fDgzwtJHaQa5ndUGEJYtoOnM6X5cvPmjoTUp7/k7bRrVAxfBgDnvQQHD6yhlLYw==}
+ '@solana/web3.js@1.95.5':
+ resolution: {integrity: sha512-hU9cBrbg1z6gEjLH9vwIckGBVB78Ijm0iZFNk4ocm5OD82piPwuk3MeQ1rfiKD9YQtr95krrcaopb49EmQJlRg==}
'@starknet-io/types-js@0.7.8':
resolution: {integrity: sha512-mjo2WPC/U88rGCjnkWDZ43zoByBGDIT20AZ0zd6hjFeAYu3wiuS1I6RiDb2vkF8f9BMCQ55VN3kuXCm6mjuQbw==}
@@ -5428,6 +5749,14 @@ packages:
resolution: {integrity: sha512-+PmQX0PiAYPMeVYe237LJAYvOMYW1j2rH5YROyS3b4CTVJum34HfRvKvAzozHAQG0TnHNdUfY9nCeUyRAs//cw==}
engines: {node: '>=14.16'}
+ '@tanstack/query-core@5.60.6':
+ resolution: {integrity: sha512-tI+k0KyCo1EBJ54vxK1kY24LWj673ujTydCZmzEZKAew4NqZzTaVQJEuaG1qKj2M03kUHN46rchLRd+TxVq/zQ==}
+
+ '@tanstack/react-query@5.61.0':
+ resolution: {integrity: sha512-SBzV27XAeCRBOQ8QcC94w2H1Md0+LI0gTWwc3qRJoaGuewKn5FNW4LSqwPFJZVEItfhMfGT7RpZuSFXjTi12pQ==}
+ peerDependencies:
+ react: ^18 || ^19
+
'@telegraf/types@7.1.0':
resolution: {integrity: sha512-kGevOIbpMcIlCDeorKGpwZmdH7kHbqlk/Yj6dEpJMKEQw5lk0KVQY0OLXaCswy8GqlIVLd5625OB+rAntP9xVw==}
@@ -5625,8 +5954,8 @@ packages:
'@types/express-serve-static-core@4.19.6':
resolution: {integrity: sha512-N4LZ2xG7DatVqhCZzOGb1Yi5lMbXSZcmdLDe9EzSndPV2HpWYWzRbaerl2n27irrm94EPpprqa8KpskPT085+A==}
- '@types/express-serve-static-core@5.0.1':
- resolution: {integrity: sha512-CRICJIl0N5cXDONAdlTv5ShATZ4HEwk6kDDIW2/w9qOWKg+NU/5F8wYRWCrONad0/UKkloNSmmyN/wX4rtpbVA==}
+ '@types/express-serve-static-core@5.0.2':
+ resolution: {integrity: sha512-vluaspfvWEtE4vcSDlKRNer52DvOGrB2xv6diXy6UKyKW0lqZiWHGNApSyxOv+8DE5Z27IzVvE7hNkxg7EXIcg==}
'@types/express@4.17.21':
resolution: {integrity: sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==}
@@ -5761,8 +6090,8 @@ packages:
'@types/pg@8.11.10':
resolution: {integrity: sha512-LczQUW4dbOQzsH2RQ5qoeJ6qJPdrcM/DcMLoqWQkMLMsq83J5lAX3LXjdkWdpscFy67JSOWDnh7Ny/sPFykmkg==}
- '@types/phoenix@1.6.5':
- resolution: {integrity: sha512-xegpDuR+z0UqG9fwHqNoy3rI7JDlvaPh2TY47Fl80oq6g+hXT+c/LEuE43X48clZ6lOfANl5WrPur9fYO1RJ/w==}
+ '@types/phoenix@1.6.6':
+ resolution: {integrity: sha512-PIzZZlEppgrpoT2QgbnDU+MMzuR6BbCjllj0bM70lWoejMeNJAxCchxnv7J3XFkI8MpygtRpzXrIlmWUBclP5A==}
'@types/prismjs@1.26.5':
resolution: {integrity: sha512-AUZTa7hQ2KY5L7AmtSiqxlhWxb4ina0yd8hNbl4TWuqnv/pFP0nDMb3YrfSBf4hJVGLh2YEIBfKaBW/9UEl6IQ==}
@@ -5821,6 +6150,9 @@ packages:
'@types/tar@6.1.13':
resolution: {integrity: sha512-IznnlmU5f4WcGTh2ltRu/Ijpmk8wiWXfF0VA4s+HPjHZgvFggk1YaIkbo5krX/zUCzWF8N/l4+W/LNxnvAJ8nw==}
+ '@types/trusted-types@2.0.7':
+ resolution: {integrity: sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==}
+
'@types/unist@2.0.11':
resolution: {integrity: sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==}
@@ -5854,8 +6186,8 @@ packages:
'@types/yauzl@2.10.3':
resolution: {integrity: sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==}
- '@typescript-eslint/eslint-plugin@8.12.2':
- resolution: {integrity: sha512-gQxbxM8mcxBwaEmWdtLCIGLfixBMHhQjBqR8sVWNTPpcj45WlYL2IObS/DNMLH1DBP0n8qz+aiiLTGfopPEebw==}
+ '@typescript-eslint/eslint-plugin@8.11.0':
+ resolution: {integrity: sha512-KhGn2LjW1PJT2A/GfDpiyOfS4a8xHQv2myUagTM5+zsormOmBlYsnQ6pobJ8XxJmh6hnHwa2Mbe3fPrDJoDhbA==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
'@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0
@@ -5865,8 +6197,8 @@ packages:
typescript:
optional: true
- '@typescript-eslint/eslint-plugin@8.15.0':
- resolution: {integrity: sha512-+zkm9AR1Ds9uLWN3fkoeXgFppaQ+uEVtfOV62dDmsy9QCNqlRHWNEck4yarvRNrvRcHQLGfqBNui3cimoz8XAg==}
+ '@typescript-eslint/eslint-plugin@8.12.2':
+ resolution: {integrity: sha512-gQxbxM8mcxBwaEmWdtLCIGLfixBMHhQjBqR8sVWNTPpcj45WlYL2IObS/DNMLH1DBP0n8qz+aiiLTGfopPEebw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
'@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0
@@ -5876,8 +6208,8 @@ packages:
typescript:
optional: true
- '@typescript-eslint/parser@8.12.2':
- resolution: {integrity: sha512-MrvlXNfGPLH3Z+r7Tk+Z5moZAc0dzdVjTgUgwsdGweH7lydysQsnSww3nAmsq8blFuRD5VRlAr9YdEFw3e6PBw==}
+ '@typescript-eslint/parser@8.11.0':
+ resolution: {integrity: sha512-lmt73NeHdy1Q/2ul295Qy3uninSqi6wQI18XwSpm8w0ZbQXUpjCAWP1Vlv/obudoBiIjJVjlztjQ+d/Md98Yxg==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
@@ -5886,8 +6218,8 @@ packages:
typescript:
optional: true
- '@typescript-eslint/parser@8.15.0':
- resolution: {integrity: sha512-7n59qFpghG4uazrF9qtGKBZXn7Oz4sOMm8dwNWDQY96Xlm2oX67eipqcblDj+oY1lLCbf1oltMZFpUso66Kl1A==}
+ '@typescript-eslint/parser@8.12.2':
+ resolution: {integrity: sha512-MrvlXNfGPLH3Z+r7Tk+Z5moZAc0dzdVjTgUgwsdGweH7lydysQsnSww3nAmsq8blFuRD5VRlAr9YdEFw3e6PBw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
@@ -5900,16 +6232,16 @@ packages:
resolution: {integrity: sha512-jjhdIE/FPF2B7Z1uzc6i3oWKbGcHb87Qw7AWj6jmEqNOfDFbJWtjt/XfwCpvNkpGWlcJaog5vTR+VV8+w9JflA==}
engines: {node: ^18.18.0 || >=20.0.0}
- '@typescript-eslint/scope-manager@8.12.2':
- resolution: {integrity: sha512-gPLpLtrj9aMHOvxJkSbDBmbRuYdtiEbnvO25bCMza3DhMjTQw0u7Y1M+YR5JPbMsXXnSPuCf5hfq0nEkQDL/JQ==}
+ '@typescript-eslint/scope-manager@8.11.0':
+ resolution: {integrity: sha512-Uholz7tWhXmA4r6epo+vaeV7yjdKy5QFCERMjs1kMVsLRKIrSdM6o21W2He9ftp5PP6aWOVpD5zvrvuHZC0bMQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- '@typescript-eslint/scope-manager@8.15.0':
- resolution: {integrity: sha512-QRGy8ADi4J7ii95xz4UoiymmmMd/zuy9azCaamnZ3FM8T5fZcex8UfJcjkiEZjJSztKfEBe3dZ5T/5RHAmw2mA==}
+ '@typescript-eslint/scope-manager@8.12.2':
+ resolution: {integrity: sha512-gPLpLtrj9aMHOvxJkSbDBmbRuYdtiEbnvO25bCMza3DhMjTQw0u7Y1M+YR5JPbMsXXnSPuCf5hfq0nEkQDL/JQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- '@typescript-eslint/type-utils@8.12.2':
- resolution: {integrity: sha512-bwuU4TAogPI+1q/IJSKuD4shBLc/d2vGcRT588q+jzayQyjVK2X6v/fbR4InY2U2sgf8MEvVCqEWUzYzgBNcGQ==}
+ '@typescript-eslint/type-utils@8.11.0':
+ resolution: {integrity: sha512-ItiMfJS6pQU0NIKAaybBKkuVzo6IdnAhPFZA/2Mba/uBjuPQPet/8+zh5GtLHwmuFRShZx+8lhIs7/QeDHflOg==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
typescript: '*'
@@ -5917,11 +6249,10 @@ packages:
typescript:
optional: true
- '@typescript-eslint/type-utils@8.15.0':
- resolution: {integrity: sha512-UU6uwXDoI3JGSXmcdnP5d8Fffa2KayOhUUqr/AiBnG1Gl7+7ut/oyagVeSkh7bxQ0zSXV9ptRh/4N15nkCqnpw==}
+ '@typescript-eslint/type-utils@8.12.2':
+ resolution: {integrity: sha512-bwuU4TAogPI+1q/IJSKuD4shBLc/d2vGcRT588q+jzayQyjVK2X6v/fbR4InY2U2sgf8MEvVCqEWUzYzgBNcGQ==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
- eslint: ^8.57.0 || ^9.0.0
typescript: '*'
peerDependenciesMeta:
typescript:
@@ -5931,12 +6262,12 @@ packages:
resolution: {integrity: sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ==}
engines: {node: ^18.18.0 || >=20.0.0}
- '@typescript-eslint/types@8.12.2':
- resolution: {integrity: sha512-VwDwMF1SZ7wPBUZwmMdnDJ6sIFk4K4s+ALKLP6aIQsISkPv8jhiw65sAK6SuWODN/ix+m+HgbYDkH+zLjrzvOA==}
+ '@typescript-eslint/types@8.11.0':
+ resolution: {integrity: sha512-tn6sNMHf6EBAYMvmPUaKaVeYvhUsrE6x+bXQTxjQRp360h1giATU0WvgeEys1spbvb5R+VpNOZ+XJmjD8wOUHw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- '@typescript-eslint/types@8.15.0':
- resolution: {integrity: sha512-n3Gt8Y/KyJNe0S3yDCD2RVKrHBC4gTUcLTebVBXacPy091E6tNspFLKRXlk3hwT4G55nfr1n2AdFqi/XMxzmPQ==}
+ '@typescript-eslint/types@8.12.2':
+ resolution: {integrity: sha512-VwDwMF1SZ7wPBUZwmMdnDJ6sIFk4K4s+ALKLP6aIQsISkPv8jhiw65sAK6SuWODN/ix+m+HgbYDkH+zLjrzvOA==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@typescript-eslint/typescript-estree@7.18.0':
@@ -5948,8 +6279,8 @@ packages:
typescript:
optional: true
- '@typescript-eslint/typescript-estree@8.12.2':
- resolution: {integrity: sha512-mME5MDwGe30Pq9zKPvyduyU86PH7aixwqYR2grTglAdB+AN8xXQ1vFGpYaUSJ5o5P/5znsSBeNcs5g5/2aQwow==}
+ '@typescript-eslint/typescript-estree@8.11.0':
+ resolution: {integrity: sha512-yHC3s1z1RCHoCz5t06gf7jH24rr3vns08XXhfEqzYpd6Hll3z/3g23JRi0jM8A47UFKNc3u/y5KIMx8Ynbjohg==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
typescript: '*'
@@ -5957,8 +6288,8 @@ packages:
typescript:
optional: true
- '@typescript-eslint/typescript-estree@8.15.0':
- resolution: {integrity: sha512-1eMp2JgNec/niZsR7ioFBlsh/Fk0oJbhaqO0jRyQBMgkz7RrFfkqF9lYYmBoGBaSiLnu8TAPQTwoTUiSTUW9dg==}
+ '@typescript-eslint/typescript-estree@8.12.2':
+ resolution: {integrity: sha512-mME5MDwGe30Pq9zKPvyduyU86PH7aixwqYR2grTglAdB+AN8xXQ1vFGpYaUSJ5o5P/5znsSBeNcs5g5/2aQwow==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
typescript: '*'
@@ -5972,32 +6303,28 @@ packages:
peerDependencies:
eslint: ^8.56.0
- '@typescript-eslint/utils@8.12.2':
- resolution: {integrity: sha512-UTTuDIX3fkfAz6iSVa5rTuSfWIYZ6ATtEocQ/umkRSyC9O919lbZ8dcH7mysshrCdrAM03skJOEYaBugxN+M6A==}
+ '@typescript-eslint/utils@8.11.0':
+ resolution: {integrity: sha512-CYiX6WZcbXNJV7UNB4PLDIBtSdRmRI/nb0FMyqHPTQD1rMjA0foPLaPUV39C/MxkTd/QKSeX+Gb34PPsDVC35g==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
- '@typescript-eslint/utils@8.15.0':
- resolution: {integrity: sha512-k82RI9yGhr0QM3Dnq+egEpz9qB6Un+WLYhmoNcvl8ltMEededhh7otBVVIDDsEEttauwdY/hQoSsOv13lxrFzQ==}
+ '@typescript-eslint/utils@8.12.2':
+ resolution: {integrity: sha512-UTTuDIX3fkfAz6iSVa5rTuSfWIYZ6ATtEocQ/umkRSyC9O919lbZ8dcH7mysshrCdrAM03skJOEYaBugxN+M6A==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
- typescript: '*'
- peerDependenciesMeta:
- typescript:
- optional: true
'@typescript-eslint/visitor-keys@7.18.0':
resolution: {integrity: sha512-cDF0/Gf81QpY3xYyJKDV14Zwdmid5+uuENhjH2EqFaF0ni+yAyq/LzMaIJdhNJXZI7uLzwIlA+V7oWoyn6Curg==}
engines: {node: ^18.18.0 || >=20.0.0}
- '@typescript-eslint/visitor-keys@8.12.2':
- resolution: {integrity: sha512-PChz8UaKQAVNHghsHcPyx1OMHoFRUEA7rJSK/mDhdq85bk+PLsUHUBqTQTFt18VJZbmxBovM65fezlheQRsSDA==}
+ '@typescript-eslint/visitor-keys@8.11.0':
+ resolution: {integrity: sha512-EaewX6lxSjRJnc+99+dqzTeoDZUfyrA52d2/HRrkI830kgovWsmIiTfmr0NZorzqic7ga+1bS60lRBUgR3n/Bw==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- '@typescript-eslint/visitor-keys@8.15.0':
- resolution: {integrity: sha512-h8vYOulWec9LhpwfAdZf2bjr8xIp0KNKnpgqSz0qqYYKAW/QZKw3ktRndbiAtUz4acH4QLQavwZBYCc0wulA/Q==}
+ '@typescript-eslint/visitor-keys@8.12.2':
+ resolution: {integrity: sha512-PChz8UaKQAVNHghsHcPyx1OMHoFRUEA7rJSK/mDhdq85bk+PLsUHUBqTQTFt18VJZbmxBovM65fezlheQRsSDA==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
'@ungap/structured-clone@1.2.0':
@@ -6138,9 +6465,9 @@ packages:
'@yarnpkg/lockfile@1.1.0':
resolution: {integrity: sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==}
- '@yarnpkg/parsers@3.0.2':
- resolution: {integrity: sha512-/HcYgtUSiJiot/XWGLOlGxPYUG65+/31V8oqk17vZLW1xlCoR4PampyePljOxY2n8/3jz9+tIFzICsyGujJZoA==}
- engines: {node: '>=18.12.0'}
+ '@yarnpkg/parsers@3.0.0-rc.46':
+ resolution: {integrity: sha512-aiATs7pSutzda/rq8fnuPwTglyVwjM22bNnK2ZgjrpAjQHSSl3lztd2f9evst1W/qnC58DRz7T7QndUDumAR4Q==}
+ engines: {node: '>=14.15.0'}
'@zkochan/js-yaml@0.0.7':
resolution: {integrity: sha512-nrUSn7hzt7J6JWgWGz78ZYI8wj+gdIJdk0Ynjpp8l+trkn58Uqsf6RYrYkEK+3X18EX+TNdtJI0WxAtc+L84SQ==}
@@ -6161,6 +6488,17 @@ packages:
resolution: {integrity: sha512-JlqiAl9CPvTm5kKG0QXmVCWNWoC/XyRMOeT77cQlbxXWllgjf6SqUmaNqFon72C2o5OSZids+5FvLdsw6dvWaw==}
hasBin: true
+ abitype@1.0.6:
+ resolution: {integrity: sha512-MMSqYh4+C/aVqI2RQaWqbvI4Kxo5cQV40WQ4QFtDnNzCkqChm8MuENhElmynZlO0qUy/ObkEUaXtKqYnx1Kp3A==}
+ peerDependencies:
+ typescript: '>=5.0.4'
+ zod: ^3 >=3.22.0
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ zod:
+ optional: true
+
abort-controller@3.0.0:
resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==}
engines: {node: '>=6.5'}
@@ -6213,6 +6551,9 @@ packages:
agent-twitter-client@0.0.13:
resolution: {integrity: sha512-xIVvrMKWe9VfZDlmGwO9hEd0Kav74FUT4euPZV8XiTqPv6D5gOd5PE0KkkBHPKSupOZuHf8BvQuhEwa/5Ac6hg==}
+ agent-twitter-client@0.0.14:
+ resolution: {integrity: sha512-GYTyLRqiN3yaJTSSiPB1J5kL0RXh10UvsN/Xn2HhegBnpQlgtLkMEQnDKfR+ZNBiLBhG2QBpm/6GrhAxdF4a5g==}
+
agentkeepalive@4.5.0:
resolution: {integrity: sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==}
engines: {node: '>= 8.0.0'}
@@ -6379,6 +6720,10 @@ packages:
argparse@2.0.1:
resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
+ aria-hidden@1.2.4:
+ resolution: {integrity: sha512-y+CcFFwelSXpLZk/7fMB2mUbGtX9lKycf1MWJ7CaTIERyitVlyQx6C+sxcROU2BAJ24OiZyK+8wj2i8AlBoS3A==}
+ engines: {node: '>=10'}
+
aria-query@5.3.2:
resolution: {integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==}
engines: {node: '>= 0.4'}
@@ -6467,6 +6812,16 @@ packages:
aws4@1.13.2:
resolution: {integrity: sha512-lHe62zvbTB5eEABUVi/AwVh0ZKY9rMMDhmm+eeyuuUQbQ3+J+fONVQOZyj+DdrvD4BY33uYniyRJ4UJIaSKAfw==}
+ axios-mock-adapter@1.22.0:
+ resolution: {integrity: sha512-dmI0KbkyAhntUR05YY96qg2H6gg0XMl2+qTW0xmYg6Up+BFBAJYRLROMXRdDEL06/Wqwa0TJThAYvFtSFdRCZw==}
+ peerDependencies:
+ axios: '>= 0.17.0'
+
+ axios-retry@4.5.0:
+ resolution: {integrity: sha512-aR99oXhpEDGo0UuAlYcn2iGRds30k366Zfa05XWScR9QaQD4JYiP3/1Qt1u7YlefUOK+cn0CcwoL1oefavQUlQ==}
+ peerDependencies:
+ axios: 0.x || 1.x
+
axios@0.27.2:
resolution: {integrity: sha512-t+yRIyySRTp/wua5xEr+z1q60QmLq8ABsS5O9Me1AsE5dfKqgnCFzwiCZZ/cGNd1lq4/7akDWMxdhVlucjmnOQ==}
@@ -6551,8 +6906,8 @@ packages:
bare-path@2.1.3:
resolution: {integrity: sha512-lh/eITfU8hrj9Ru5quUp0Io1kJWIk1bTjzo7JH1P5dWmQ2EL4hFUlfI8FonAhSlgIfhn63p84CDY/x+PisgcXA==}
- bare-stream@2.4.0:
- resolution: {integrity: sha512-sd96/aZ8LjF1uJbEHzIo1LrERPKRFPEy1nZ1eOILftBxrVsFDAQkimHIIq87xrHcubzjNeETsD9PwN0wp+vLiQ==}
+ bare-stream@2.4.2:
+ resolution: {integrity: sha512-XZ4ln/KV4KT+PXdIWTKjsLY+quqCaEtqqtgGJVPw9AoM73By03ij64YjepK0aQvHSWDb6AfAZwqKaFu68qkrdA==}
base-x@3.0.10:
resolution: {integrity: sha512-7d0s06rR9rYaIWHkpfLIFICM/tkSVdoPC9qYAQRpxn9DdKNWNsKC0uk++akckyLq16Tx2WIinnZ6WRriAt6njQ==}
@@ -6563,6 +6918,10 @@ packages:
base64-js@1.5.1:
resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==}
+ base64url@3.0.1:
+ resolution: {integrity: sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==}
+ engines: {node: '>=6.0.0'}
+
basic-ftp@5.0.5:
resolution: {integrity: sha512-4Bcg1P8xhUuqcii/S0Z9wiHIrQVPMermM1any+MX5GeGD7faD3/msQUDGLol9wOcz4/jbg/WJnGqoJF6LiBdtg==}
engines: {node: '>=10.0.0'}
@@ -6622,6 +6981,13 @@ packages:
bindings@1.5.0:
resolution: {integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==}
+ bip32@4.0.0:
+ resolution: {integrity: sha512-aOGy88DDlVUhspIXJN+dVEtclhIsfAUppD43V0j40cPTld3pv/0X/MlrZSZ6jowIaQQzFwP8M6rFU2z2mVYjDQ==}
+ engines: {node: '>=6.0.0'}
+
+ bip39@3.1.0:
+ resolution: {integrity: sha512-c9kiwdk45Do5GL0vJMe7tS95VjCii65mYAH7DfWl3uW8AVzXKQVUm64i3hzVybBDMp9r7j9iNxR85+ul8MdN/A==}
+
bl@4.1.0:
resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==}
@@ -6630,6 +6996,9 @@ packages:
engines: {node: '>= 0.8.0'}
hasBin: true
+ bn.js@4.12.1:
+ resolution: {integrity: sha512-k8TVBiPkPJT9uHLdOKfFpqcfprwBFOAAXXozRubr7R7PfIuKvQlzcI4M0pALeqXN09vdaMbUdUj+pass+uULAg==}
+
bn.js@5.2.1:
resolution: {integrity: sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==}
@@ -6673,6 +7042,9 @@ packages:
resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==}
engines: {node: '>=8'}
+ brorand@1.1.0:
+ resolution: {integrity: sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==}
+
browserslist@4.24.2:
resolution: {integrity: sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg==}
engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
@@ -6688,6 +7060,9 @@ packages:
bs58@6.0.0:
resolution: {integrity: sha512-PD0wEnEYg6ijszw/u8s+iI3H17cTymlrwkKhDhPZq+Sokl3AU4htyBFTjAeNAlCCmg0f53g6ih3jATyCKftTfw==}
+ bs58check@2.1.2:
+ resolution: {integrity: sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==}
+
bser@2.1.1:
resolution: {integrity: sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==}
@@ -6810,8 +7185,8 @@ packages:
caniuse-api@3.0.0:
resolution: {integrity: sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==}
- caniuse-lite@1.0.30001683:
- resolution: {integrity: sha512-iqmNnThZ0n70mNwvxpEC2nBJ037ZHZUoBI5Gorh1Mw6IlEAZujEoU1tXA628iZfzm7R9FvFzxbfdgml82a3k8Q==}
+ caniuse-lite@1.0.30001684:
+ resolution: {integrity: sha512-G1LRwLIQjBQoyq0ZJGqGIJUXzJ8irpbjHLpVRXDvBEScFJ9b17sgK6vlx0GAJFE21okD7zXl08rRRUfq6HdoEQ==}
canvas@2.11.2:
resolution: {integrity: sha512-ItanGBMrmRV7Py2Z+Xhs7cT+FNt5K0vPL4p9EZ/UX/Mu7hFbkxSjKF2KVtPwX7UYWp7dRKnrTvReflgrItJbdw==}
@@ -6930,9 +7305,16 @@ packages:
resolution: {integrity: sha512-HutrvTNsF48wnxkzERIXOe5/mlcfFcbfCmwcg6CJnizbSue78AbDt+1cgl26zwn61WFxhcPykPfZrbqjGmBb4A==}
engines: {node: '>=8'}
+ cipher-base@1.0.5:
+ resolution: {integrity: sha512-xq7ICKB4TMHUx7Tz1L9O2SGKOhYMOTR32oir45Bq28/AQTpHogKgHcoYFSdRbMtddl+ozNXfXY9jWcgYKmde0w==}
+ engines: {node: '>= 0.10'}
+
citty@0.1.6:
resolution: {integrity: sha512-tskPPKEs8D2KPafUypv2gxwJP8h/OaJmC82QQGGDQcHvXX43xF2VDACcJVmZ0EuSxkpO9Kc4MlrA3q0+FG58AQ==}
+ cive@0.7.1:
+ resolution: {integrity: sha512-DcBpLydad5MMeUjLHRYWXK3oX+bnVqeZDR5NL1dcLsUMUxRTFLndgS29m/oafFQQ95ZOkvtif/kDzhpWG0e5Xw==}
+
cjs-module-lexer@1.4.1:
resolution: {integrity: sha512-cuSVIHi9/9E/+821Qjdvngor+xpnlwnuwIyZOaLmHBVdXL+gP+I6QQB9VkO7RI77YIcTV+S1W9AreJ5eN63JBA==}
@@ -7024,6 +7406,10 @@ packages:
resolution: {integrity: sha512-m3iNNWpd9rl3jvvcBnu70ylMdrXt8Vlq4HYadnU5fwcOtvkSQWPmj7amUcDT2qYI7risszBjI5AUIUox9D16pg==}
engines: {node: '>=6'}
+ clsx@2.1.1:
+ resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==}
+ engines: {node: '>=6'}
+
cmake-js@7.3.0:
resolution: {integrity: sha512-dXs2zq9WxrV87bpJ+WbnGKv8WUBXDw8blNiwNHoRe/it+ptscxhQHKB1SJXa1w+kocLMeP28Tk4/eTCezg4o+w==}
engines: {node: '>= 14.15.0'}
@@ -7315,14 +7701,8 @@ packages:
typescript:
optional: true
- cosmiconfig@9.0.0:
- resolution: {integrity: sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==}
- engines: {node: '>=14'}
- peerDependencies:
- typescript: '>=4.9.5'
- peerDependenciesMeta:
- typescript:
- optional: true
+ create-hash@1.2.0:
+ resolution: {integrity: sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==}
create-jest@29.7.0:
resolution: {integrity: sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==}
@@ -7501,6 +7881,9 @@ packages:
csstype@3.1.3:
resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==}
+ csv-parse@5.6.0:
+ resolution: {integrity: sha512-l3nz3euub2QMg5ouu5U09Ew9Wf6/wQ8I++ch1loQ0ljmzhmfZYrH9fflS22i/PQEvsPvxCwxgz5q7UB8K1JO4Q==}
+
csv-writer@1.6.0:
resolution: {integrity: sha512-NOx7YDFWEsM/fTRAJjRpPp8t+MKRVvniAg9wQlUKx20MFrPs73WLJhFf5iteqrxNYnsy924K3Iroh3yNHeYd2g==}
@@ -7882,6 +8265,9 @@ packages:
resolution: {integrity: sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==}
engines: {node: '>=8'}
+ detect-node-es@1.1.0:
+ resolution: {integrity: sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==}
+
detect-node@2.1.0:
resolution: {integrity: sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==}
@@ -7983,8 +8369,8 @@ packages:
dompurify@3.1.6:
resolution: {integrity: sha512-cTOAhc36AalkjtBpfG6O8JimdTMWNXjiePT2xQH/ppBGi/4uIpmj8eKyIkMJErXWARyINV/sB38yf8JCLF5pbQ==}
- dompurify@3.2.0:
- resolution: {integrity: sha512-AMdOzK44oFWqHEi0wpOqix/fUNY707OmoeFDnbi3Q5I8uOpy21ufUA5cDJPr0bosxrflOVD/H2DMSvuGKJGfmQ==}
+ dompurify@3.2.1:
+ resolution: {integrity: sha512-NBHEsc0/kzRYQd+AY6HR6B/IgsqzBABrqJbpCDQII/OK6h7B7LXzweZTDsqSW2LkTRpoxf18YUP+YjGySk6B3w==}
domutils@2.8.0:
resolution: {integrity: sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==}
@@ -8055,6 +8441,9 @@ packages:
electron-to-chromium@1.5.64:
resolution: {integrity: sha512-IXEuxU+5ClW2IGEYFC2T7szbyVgehupCWQe5GNh+H065CD6U6IFN0s4KeAMFGNmQolRU4IV7zGBWSYMmZ8uuqQ==}
+ elliptic@6.6.1:
+ resolution: {integrity: sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==}
+
emittery@0.13.1:
resolution: {integrity: sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==}
engines: {node: '>=12'}
@@ -8806,6 +9195,10 @@ packages:
resolution: {integrity: sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==}
engines: {node: '>= 0.4'}
+ get-nonce@1.0.1:
+ resolution: {integrity: sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==}
+ engines: {node: '>=6'}
+
get-own-enumerable-property-symbols@3.0.2:
resolution: {integrity: sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==}
@@ -8961,8 +9354,8 @@ packages:
resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==}
engines: {node: '>=18'}
- globals@15.12.0:
- resolution: {integrity: sha512-1+gLErljJFhbOVyaetcwJiJ4+eLe45S2E7P5UiZ9xGfeq3ATQf5DOv9G7MH3gGbKQLkzmNh2DxfZwLdw+j6oTQ==}
+ globals@15.11.0:
+ resolution: {integrity: sha512-yeyNSjdbyVaWurlwCpcA6XNBrHTMIeDdj0/hnvX/OLJ9ekOXYbLsLinH/MucQyGvNnXhidTdNhTtJaffL2sMfw==}
engines: {node: '>=18'}
globby@11.1.0:
@@ -9066,6 +9459,13 @@ packages:
resolution: {integrity: sha512-IrsVwUHhEULx3R8f/aA8AHuEzAorplsab/v8HBzEiIukwq5i/EC+xmOW+HfP1OaDP+2JkgT1yILHN2O3UFIbcA==}
engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ hash-base@3.1.0:
+ resolution: {integrity: sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==}
+ engines: {node: '>=4'}
+
+ hash.js@1.1.7:
+ resolution: {integrity: sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==}
+
hasown@2.0.2:
resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==}
engines: {node: '>= 0.4'}
@@ -9134,6 +9534,9 @@ packages:
history@4.10.1:
resolution: {integrity: sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew==}
+ hmac-drbg@1.0.1:
+ resolution: {integrity: sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==}
+
hogan.js@3.0.2:
resolution: {integrity: sha512-RqGs4wavGYJWE07t35JQccByczmNUXQT0E12ZYV1VKYu5UiAU9lsos/yBAcf840+zrUQQxgVduCR5/B8nNtibg==}
hasBin: true
@@ -9583,6 +9986,10 @@ packages:
resolution: {integrity: sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==}
engines: {node: '>=0.10.0'}
+ is-retry-allowed@2.2.0:
+ resolution: {integrity: sha512-XVm7LOeLpTW4jV19QSH38vkswxoLud8sQ57YwJVTPWdiaI9I8keEhGFpBlslyVsgdQy4Opg8QOLb8YRgsyZiQg==}
+ engines: {node: '>=10'}
+
is-root@2.1.0:
resolution: {integrity: sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg==}
engines: {node: '>=6'}
@@ -9668,6 +10075,11 @@ packages:
peerDependencies:
ws: '*'
+ isows@1.0.6:
+ resolution: {integrity: sha512-lPHCayd40oW98/I0uvgaHKWCSvkzY27LjWLbtzOm64yQ+G3Q5npjjbdppU65iZXkK1Zt+kH9pfegli0AYfwYYw==}
+ peerDependencies:
+ ws: '*'
+
isstream@0.1.2:
resolution: {integrity: sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g==}
@@ -10121,8 +10533,8 @@ packages:
leac@0.6.0:
resolution: {integrity: sha512-y+SqErxb8h7nE/fiEX07jsbuhrpO9lL8eca7/Y1nuWV2moNlXhyd59iDGcRf6moVyDMbmTNzL40SUyrFU/yDpg==}
- lerna@8.1.9:
- resolution: {integrity: sha512-ZRFlRUBB2obm+GkbTR7EbgTMuAdni6iwtTQTMy7LIrQ4UInG44LyfRepljtgUxh4HA0ltzsvWfPkd5J1DKGCeQ==}
+ lerna@8.1.5:
+ resolution: {integrity: sha512-/eigpa/JTfKl9RP9QHK9Tifeog+dymYICqBoZlR4fjp94ol2Q6adYQHy8dWRkv0VPrHh/Xuy5VlmPaGvIoGeDw==}
engines: {node: '>=18.0.0'}
hasBin: true
@@ -10434,6 +10846,9 @@ packages:
md4w@0.2.6:
resolution: {integrity: sha512-CBLQ2PxVe9WA+/nndZCx/Y+1C3DtmtSeubmXTPhMIgsXtq9gVGleikREko5FYnV6Dz4cHDWm0Ea+YMLpIjP4Kw==}
+ md5.js@1.3.5:
+ resolution: {integrity: sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==}
+
mdast-util-directive@3.0.0:
resolution: {integrity: sha512-JUpYOqKI4mM3sZcNxmF/ox04XYFFkNwr0CFlrQIkCwbvH0xzMCqkMqAde9wRd80VAhaUrwFwKm2nxretdT1h7Q==}
@@ -10740,6 +11155,9 @@ packages:
minimalistic-assert@1.0.1:
resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==}
+ minimalistic-crypto-utils@1.0.1:
+ resolution: {integrity: sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==}
+
minimatch@10.0.1:
resolution: {integrity: sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==}
engines: {node: 20 || >=22}
@@ -10986,6 +11404,9 @@ packages:
resolution: {integrity: sha512-SZ40vRiy/+wRTf21hxkkEjPJZpARzUMVcJoQse2EF8qkUWbbO2z7vd5oA/H6bVH6SZQ5STGcu0KRDS7biNRfxw==}
engines: {node: '>=10'}
+ node-addon-api@5.1.0:
+ resolution: {integrity: sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==}
+
node-addon-api@6.1.0:
resolution: {integrity: sha512-+eawOlIgy680F0kBzPUNFhMZGtJ1YmqM6l4+Crf4IkImjYrO/mqPwRMh352g23uIaQKFItcQ64I7KMaJxHgAVA==}
@@ -11052,6 +11473,9 @@ packages:
node-int64@0.4.0:
resolution: {integrity: sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==}
+ node-jose@2.2.0:
+ resolution: {integrity: sha512-XPCvJRr94SjLrSIm4pbYHKLEaOsDvJCpyFw/6V/KK/IXmyZ6SFBzAUDO9HQf4DB/nTEFcRGH87mNciOP23kFjw==}
+
node-llama-cpp@3.1.1:
resolution: {integrity: sha512-CyXwxlJiAAELhy265wndAwV+nrUvVJk7+BjiYtz8BAUXCPpzZTeZTNnmcDO21FTutQyRuWhiNA/yzOLeDvmuAQ==}
engines: {node: '>=18.0.0'}
@@ -11181,8 +11605,8 @@ packages:
nwsapi@2.2.13:
resolution: {integrity: sha512-cTGB9ptp9dY9A5VbMSe7fQBcl/tt22Vcqdq8+eN93rblOuE0aCFu4aZ2vMwct/2t+lFnosm8RkQW1I0Omb1UtQ==}
- nx@20.1.3:
- resolution: {integrity: sha512-mipsacEpn0gLd/4NSlOgyHW6Ozl++8ZIfuv42RtZEnS3BaGnnW+L2dkt85h4zffq+zBILoudd/VDFzaLY7Yrfw==}
+ nx@19.8.12:
+ resolution: {integrity: sha512-FkWEma1CwQKDFrmlimvVVRTn0uj0QIp1PA3P8ynI1z1r/Q2i1qd0FYqOyDTay7mXHfVF4PryfBcoIotWTn+VEw==}
hasBin: true
peerDependencies:
'@swc-node/register': ^1.8.0
@@ -11289,6 +11713,9 @@ packages:
onnxruntime-web@1.21.0-dev.20241024-d9ca84ef96:
resolution: {integrity: sha512-ANSQfMALvCviN3Y4tvTViKofKToV1WUb2r2VjZVCi3uUBPaK15oNJyIxhsNyEckBr/Num3JmSXlkHOD8HfVzSQ==}
+ open-jsonrpc-provider@0.2.1:
+ resolution: {integrity: sha512-b+pRxakRwAqp+4OTh2TeH+z2zwVGa0C4fbcwIn6JsZdjd4VBmsp7KfCdmmV3XH8diecwXa5UILCw4IwAtk1DTQ==}
+
open@8.4.2:
resolution: {integrity: sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==}
engines: {node: '>=12'}
@@ -11344,6 +11771,14 @@ packages:
otpauth@9.3.5:
resolution: {integrity: sha512-jQyqOuQExeIl4YIiOUz4TdEcamgAgPX6UYeeS9Iit4lkvs7bwHb0JNDqchGRccbRfvWHV6oRwH36tOsVmc+7hQ==}
+ ox@0.1.2:
+ resolution: {integrity: sha512-ak/8K0Rtphg9vnRJlbOdaX9R7cmxD2MiSthjWGaQdMk3D7hrAlDoM+6Lxn7hN52Za3vrXfZ7enfke/5WjolDww==}
+ peerDependencies:
+ typescript: '>=5.4.0'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
p-cancelable@3.0.0:
resolution: {integrity: sha512-mlVgR3PGuzlo0MmTdk4cXqXWlwQDLnONTAg6sm62XkMJEiRxN3GL3SffkYvqwonbkJBcrI7Uvv5Zh9yjvn2iUw==}
engines: {node: '>=12.20'}
@@ -11447,8 +11882,8 @@ packages:
resolution: {integrity: sha512-cbH9IAIJHNj9uXi196JVsRlt7cHKak6u/e6AkL/bkRelZ7rlL3X1YKxsZwa36xipOEKAsdtmaG6aAJoM1fx2zA==}
engines: {node: '>=14.16'}
- package-manager-detector@0.2.4:
- resolution: {integrity: sha512-H/OUu9/zUfP89z1APcBf2X8Us0tt8dUK4lUmKqz12QNXif3DxAs1/YqjGtcutZi1zQqeNQRWr9C+EbQnnvSSFA==}
+ package-manager-detector@0.2.5:
+ resolution: {integrity: sha512-3dS7y28uua+UDbRCLBqltMBrbI+A5U2mI9YuxHRxIWYmLj3DwntEBmERYzIAQ4DMeuCUOBSak7dBHHoXKpOTYQ==}
pacote@18.0.6:
resolution: {integrity: sha512-+eK3G27SMwsB8kLIuj4h1FUhHtwiEUo21Tw8wNjmvdlpOEr613edv+8FUsTj/4F/VN5ywGE19X18N7CC2EJk6A==}
@@ -11758,8 +12193,8 @@ packages:
pm2-sysmonit@1.2.8:
resolution: {integrity: sha512-ACOhlONEXdCTVwKieBIQLSi2tQZ8eKinhcr9JpZSUAL8Qy0ajIgRtsLxG/lwPOW3JEKqPyw/UaHmTWhUzpP4kA==}
- pm2@5.4.2:
- resolution: {integrity: sha512-ynVpBwZampRH3YWLwRepZpQ7X3MvpwLIaqIdFEeBYEhaXbHmEx2KqOdxGV4T54wvKBhH3LixvU1j1bK4/sq7Tw==}
+ pm2@5.4.3:
+ resolution: {integrity: sha512-4/I1htIHzZk1Y67UgOCo4F1cJtas1kSds31N8zN0PybO230id1nigyjGuGFzUnGmUFPmrJ0On22fO1ChFlp7VQ==}
engines: {node: '>=12.0.0'}
hasBin: true
@@ -12492,6 +12927,10 @@ packages:
process-nextick-args@2.0.1:
resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==}
+ process@0.11.10:
+ resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==}
+ engines: {node: '>= 0.6.0'}
+
proggy@2.0.0:
resolution: {integrity: sha512-69agxLtnI8xBs9gUGqEnK26UfiexpHy+KUpBQWabiytQjnn5wFY8rklAi7GRfABIuPNnQ/ik48+LGLkYYJcy4A==}
engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
@@ -12737,6 +13176,26 @@ packages:
resolution: {integrity: sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==}
engines: {node: '>=0.10.0'}
+ react-remove-scroll-bar@2.3.6:
+ resolution: {integrity: sha512-DtSYaao4mBmX+HDo5YWYdBWQwYIQQshUV/dVxFxK+KM26Wjwp1gZ6rv6OC3oujI6Bfu6Xyg3TwK533AQutsn/g==}
+ engines: {node: '>=10'}
+ peerDependencies:
+ '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ react-remove-scroll@2.6.0:
+ resolution: {integrity: sha512-I2U4JVEsQenxDAKaVa3VZ/JeJZe0/2DxPWL8Tj8yLKctQJQiZM52pn/GWFpSp8dftjM3pSAHVJZscAnC/y+ySQ==}
+ engines: {node: '>=10'}
+ peerDependencies:
+ '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
react-router-config@5.1.1:
resolution: {integrity: sha512-DuanZjaD8mQp1ppHjgnnUnyOlqYXZVjnov/JzFhjLEwd3Z4dYjMSnqrEzzGThH47vpCOqPPwJM2FtthLeJ8Pbg==}
peerDependencies:
@@ -12766,6 +13225,16 @@ packages:
peerDependencies:
react: '>=16.8'
+ react-style-singleton@2.2.1:
+ resolution: {integrity: sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g==}
+ engines: {node: '>=10'}
+ peerDependencies:
+ '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
react-waypoint@10.3.0:
resolution: {integrity: sha512-iF1y2c1BsoXuEGz08NoahaLFIGI9gTUAAOKip96HUmylRT6DUtpgoBPjk/Y8dfcFVmfVDvUzWjNXpZyKTOV0SQ==}
peerDependencies:
@@ -12865,6 +13334,9 @@ packages:
recma-stringify@1.0.0:
resolution: {integrity: sha512-cjwII1MdIIVloKvC9ErQ+OgAtwHBmcZ0Bg4ciz78FtbT8In39aAYbaA7zvxQ61xVMSPE8WxhLwLbhif4Js2C+g==}
+ reconnecting-websocket@4.4.0:
+ resolution: {integrity: sha512-D2E33ceRPga0NvTDhJmphEgJ7FUYF0v4lr1ki0csq06OdlxKfugGzN0dSkxM/NfqCxYELK4KcaTOUOjTV6Dcng==}
+
recursive-readdir@2.2.3:
resolution: {integrity: sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==}
engines: {node: '>=6.0.0'}
@@ -13065,6 +13537,9 @@ packages:
engines: {node: 20 || >=22}
hasBin: true
+ ripemd160@2.0.2:
+ resolution: {integrity: sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==}
+
robust-predicates@3.0.2:
resolution: {integrity: sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==}
@@ -13174,6 +13649,10 @@ packages:
search-insights@2.17.3:
resolution: {integrity: sha512-RQPdCYTa8A68uM2jwxoY842xDhvx3E5LFL1LxvxCNMev4o5mLuokczhzjAgGwUZBAmOKZknArSxLKmXtIi2AxQ==}
+ secp256k1@5.0.1:
+ resolution: {integrity: sha512-lDFs9AAIaWP9UCdtWrotXWWF9t8PWgQDcxqgAnpM9rMqxb3Oaq2J0thzPVSxBwdJgyQtkU/sYtFtbM1RSt/iYA==}
+ engines: {node: '>=18.0.0'}
+
section-matter@1.0.0:
resolution: {integrity: sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==}
engines: {node: '>=4'}
@@ -13260,6 +13739,10 @@ packages:
setprototypeof@1.2.0:
resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==}
+ sha.js@2.4.11:
+ resolution: {integrity: sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==}
+ hasBin: true
+
shallow-clone@0.1.2:
resolution: {integrity: sha512-J1zdXCky5GmNnuauESROVu31MQSnLoYvlyEn6j2Ztk6Q5EHFIhxkMhYcv6vuDzl2XEzoRr856QwzMgWM/TmZgw==}
engines: {node: '>=0.10.0'}
@@ -13905,14 +14388,14 @@ packages:
resolution: {integrity: sha512-n1cw8k1k0x4pgA2+9XrOkFydTerNcJ1zWCO5Nn9scWHTD+5tp8dghT2x1uduQePZTZgd3Tupf+x9BxJjeJi77Q==}
engines: {node: '>=14.0.0'}
- tldts-core@6.1.63:
- resolution: {integrity: sha512-H1XCt54xY+QPbwhTgmxLkepX0MVHu3USfMmejiCOdkMbRcP22Pn2FVF127r/GWXVDmXTRezyF3Ckvhn4Fs6j7Q==}
+ tldts-core@6.1.64:
+ resolution: {integrity: sha512-uqnl8vGV16KsyflHOzqrYjjArjfXaU6rMPXYy2/ZWoRKCkXtghgB4VwTDXUG+t0OTGeSewNAG31/x1gCTfLt+Q==}
- tldts-experimental@6.1.63:
- resolution: {integrity: sha512-Xqxv4UvuTwC/sslspSbkw/52vvYCeZdEJwnv7VFlQEfYvK8fNuIpz5hoOvO7XuzfjqexMRRnVDYUyjqesTYESg==}
+ tldts-experimental@6.1.64:
+ resolution: {integrity: sha512-Lm6dwThCCmUecyvOJwTfZgYRP9JB6UDam//96OSvZffBtBA3GuwucIiycLT5yO5nz0ZAGV37FF1hef2HE0K8BQ==}
- tldts@6.1.63:
- resolution: {integrity: sha512-YWwhsjyn9sB/1rOkSRYxvkN/wl5LFM1QDv6F2pVR+pb/jFne4EOBxHfkKVWvDIBEAw9iGOwwubHtQTm0WRT5sQ==}
+ tldts@6.1.64:
+ resolution: {integrity: sha512-ph4AE5BXWIOsSy9stpoeo7bYe/Cy7VfpciIH4RhVZUPItCJmhqWCN0EVzxd8BOHiyNb42vuJc6NWTjJkg91Tuw==}
hasBin: true
tmp@0.0.33:
@@ -14005,8 +14488,8 @@ packages:
trough@2.2.0:
resolution: {integrity: sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==}
- ts-api-utils@1.4.0:
- resolution: {integrity: sha512-032cPxaEKwM+GT3vA5JXNzIaizx388rhsSW79vGRNGXfRRAdEAn2mvk36PvK5HnOchyWZ7afLEXqYCvPCrzuzQ==}
+ ts-api-utils@1.4.1:
+ resolution: {integrity: sha512-5RU2/lxTA3YUZxju61HO2U6EoZLvBLtmV2mbTvqyu4a/7s7RmJPT+1YekhMVsQhznRWk/czIwDUg+V8Q9ZuG4w==}
engines: {node: '>=16'}
peerDependencies:
typescript: '>=4.2.0'
@@ -14109,6 +14592,9 @@ packages:
tweetnacl@0.14.5:
resolution: {integrity: sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==}
+ twitter-api-v2@1.18.2:
+ resolution: {integrity: sha512-ggImmoAeVgETYqrWeZy+nWnDpwgTP+IvFEc03Pitt1HcgMX+Yw17rP38Fb5FFTinuyNvS07EPtAfZ184uIyB0A==}
+
tx2@1.0.5:
resolution: {integrity: sha512-sJ24w0y03Md/bxzK4FU8J8JveYYUbSs2FViLJ2D/8bytSiyPRbuE3DyL/9UKYXTZlV3yXq0L8GLlhobTnekCVg==}
@@ -14174,11 +14660,13 @@ packages:
peerDependencies:
typescript: 4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x || 5.1.x || 5.2.x || 5.3.x || 5.4.x || 5.5.x || 5.6.x
- typescript-eslint@8.15.0:
- resolution: {integrity: sha512-wY4FRGl0ZI+ZU4Jo/yjdBu0lVTSML58pu6PgGtJmCufvzfV565pUF6iACQt092uFOd49iLOTX/sEVmHtbSrS+w==}
+ typeforce@1.18.0:
+ resolution: {integrity: sha512-7uc1O8h1M1g0rArakJdf0uLRSSgFcYexrVoKo+bzJd32gd4gDy2L/Z+8/FjPnU9ydY3pEnVPtr9FyscYY60K1g==}
+
+ typescript-eslint@8.11.0:
+ resolution: {integrity: sha512-cBRGnW3FSlxaYwU8KfAewxFK5uzeOAp0l2KebIlPDOT5olVi65KDG/yjBooPBG0kGW/HLkoz1c/iuBFehcS3IA==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
peerDependencies:
- eslint: ^8.57.0 || ^9.0.0
typescript: '*'
peerDependenciesMeta:
typescript:
@@ -14355,19 +14843,39 @@ packages:
url-join@4.0.1:
resolution: {integrity: sha512-jk1+QP6ZJqyOiuEI9AEWQfju/nB2Pw466kbA0LEZljHwKeMgd9WrAEgEGxjPDD2+TNbbb37rTyhEfrCXfuKXnA==}
- url-loader@4.1.1:
- resolution: {integrity: sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA==}
- engines: {node: '>= 10.13.0'}
+ url-loader@4.1.1:
+ resolution: {integrity: sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA==}
+ engines: {node: '>= 10.13.0'}
+ peerDependencies:
+ file-loader: '*'
+ webpack: ^4.0.0 || ^5.0.0
+ peerDependenciesMeta:
+ file-loader:
+ optional: true
+
+ url-parse@1.5.10:
+ resolution: {integrity: sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==}
+
+ use-callback-ref@1.3.2:
+ resolution: {integrity: sha512-elOQwe6Q8gqZgDA8mrh44qRTQqpIHDcZ3hXTLjBe1i4ph8XpNJnO+aQf3NaG+lriLopI4HMx9VjQLfPQ6vhnoA==}
+ engines: {node: '>=10'}
+ peerDependencies:
+ '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ use-sidecar@1.1.2:
+ resolution: {integrity: sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw==}
+ engines: {node: '>=10'}
peerDependencies:
- file-loader: '*'
- webpack: ^4.0.0 || ^5.0.0
+ '@types/react': ^16.9.0 || ^17.0.0 || ^18.0.0
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0
peerDependenciesMeta:
- file-loader:
+ '@types/react':
optional: true
- url-parse@1.5.10:
- resolution: {integrity: sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==}
-
use-sync-external-store@1.2.2:
resolution: {integrity: sha512-PElTlVMwpblvbNqQ82d2n6RjStvdSoNe9FG28kNfz3WiXilJm4DdNkEzRhCZuIDwY8U08WVihhGR5iRqAwfDiw==}
peerDependencies:
@@ -14458,6 +14966,14 @@ packages:
vfile@6.0.3:
resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==}
+ viem@2.21.50:
+ resolution: {integrity: sha512-WHB8NmkaForODuSALb0Ai3E296aEigzYSE+pzB9Y0cTNJeiZT8rpkdxxUFYfjwFMnPkz2tivqrSpuw3hO5TH6w==}
+ peerDependencies:
+ typescript: '>=5.0.4'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
vite-node@2.1.5:
resolution: {integrity: sha512-rd0QIgx74q4S1Rd56XIiL2cYEdyWn13cunYBIuqh9mpmQr7gGS0IxXoP8R6OaZtNQQLyXSWbd4rXKYUbhFpK5w==}
engines: {node: ^18.0.0 || >=20.0.0}
@@ -14605,6 +15121,9 @@ packages:
resolution: {integrity: sha512-QW95TCTaHmsYfHDybGMwO5IJIM93I/6vTRk+daHTWFPhwh+C8Cg7j7XyKrwrj8Ib6vYXe0ocYNrmzY4xAAN6ug==}
engines: {node: '>= 14'}
+ webauthn-p256@0.0.10:
+ resolution: {integrity: sha512-EeYD+gmIT80YkSIDb2iWq0lq2zbHo1CxHlQTeJ+KkCILWpVy3zASH3ByD4bopzfk0uCwXxLqKGLqp2W4O28VFA==}
+
webidl-conversions@3.0.1:
resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==}
@@ -14675,6 +15194,10 @@ packages:
resolution: {integrity: sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==}
engines: {node: '>=0.8.0'}
+ websocket@1.0.35:
+ resolution: {integrity: sha512-/REy6amwPZl44DDzvRCkaI1q1bIiQB0mEFQLUrhz3z2EK91cp3n72rAjUlrTP0zV22HJIUOVHQGPxhFRjxjt+Q==}
+ engines: {node: '>=4.0.0'}
+
whatwg-encoding@3.1.1:
resolution: {integrity: sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==}
engines: {node: '>=18'}
@@ -14726,6 +15249,9 @@ packages:
resolution: {integrity: sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==}
engines: {node: '>=12'}
+ wif@2.0.6:
+ resolution: {integrity: sha512-HIanZn1zmduSF+BQhkE+YXIbEiH0xPr1012QbFEGB0xsKqJii0/SqJjyn8dFv6y36kOznMgMB+LGcbZTJ1xACQ==}
+
wildcard@2.0.1:
resolution: {integrity: sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==}
@@ -14853,6 +15379,10 @@ packages:
resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==}
engines: {node: '>=10'}
+ yaeti@0.0.6:
+ resolution: {integrity: sha512-MvQa//+KcZCUkBTIC9blM+CU9J2GzuTytsOUwf2lidtvkx/6gnEp1QvJv34t9vdjhFmha/mUiNDbN0D0mJWdug==}
+ engines: {node: '>=0.10.32'}
+
yallist@3.1.1:
resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==}
@@ -14942,8 +15472,22 @@ 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)':
+ 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)
+ transitivePeerDependencies:
+ - bufferutil
+ - debug
+ - supports-color
+ - utf-8-validate
+
'@adraffy/ens-normalize@1.10.1': {}
+ '@adraffy/ens-normalize@1.11.0': {}
+
'@ai-sdk/anthropic@0.0.53(zod@3.23.8)':
dependencies:
'@ai-sdk/provider': 0.0.26
@@ -15094,7 +15638,7 @@ snapshots:
transitivePeerDependencies:
- zod
- '@ai16z/eliza@0.1.3(@google-cloud/vertexai@1.9.0(encoding@0.1.13))(encoding@0.1.13)(react@18.3.1)(sswr@2.1.0(svelte@5.2.7))(svelte@5.2.7)':
+ '@ai16z/eliza@0.1.3(@google-cloud/vertexai@1.9.0(encoding@0.1.13))(encoding@0.1.13)(react@18.3.1)(sswr@2.1.0(svelte@5.2.7))(svelte@5.2.7)(vue@3.5.13(typescript@5.6.3))':
dependencies:
'@ai-sdk/anthropic': 0.0.53(zod@3.23.8)
'@ai-sdk/google': 0.0.55(zod@3.23.8)
@@ -15103,7 +15647,7 @@ snapshots:
'@ai-sdk/openai': 1.0.0-canary.3(zod@3.23.8)
'@anthropic-ai/sdk': 0.30.1(encoding@0.1.13)
'@types/uuid': 10.0.0
- ai: 3.4.33(openai@4.69.0(encoding@0.1.13)(zod@3.23.8))(react@18.3.1)(sswr@2.1.0(svelte@5.2.7))(svelte@5.2.7)(zod@3.23.8)
+ ai: 3.4.33(openai@4.69.0(encoding@0.1.13)(zod@3.23.8))(react@18.3.1)(sswr@2.1.0(svelte@5.2.7))(svelte@5.2.7)(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
gaxios: 6.7.1(encoding@0.1.13)
@@ -15319,7 +15863,7 @@ snapshots:
'@antfu/install-pkg@0.4.1':
dependencies:
- package-manager-detector: 0.2.4
+ package-manager-detector: 0.2.5
tinyexec: 0.3.1
'@antfu/utils@0.7.10': {}
@@ -16733,7 +17277,7 @@ snapshots:
'@cliqz/adblocker': 1.34.0
'@cliqz/adblocker-content': 1.34.0
playwright: 1.48.2
- tldts-experimental: 6.1.63
+ tldts-experimental: 6.1.64
'@cliqz/adblocker@1.34.0':
dependencies:
@@ -16744,7 +17288,29 @@ snapshots:
'@remusao/smaz': 1.10.0
'@types/chrome': 0.0.278
'@types/firefox-webext-browser': 120.0.4
- tldts-experimental: 6.1.63
+ tldts-experimental: 6.1.64
+
+ '@coinbase/coinbase-sdk@0.10.0(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10)(zod@3.23.8)':
+ dependencies:
+ '@scure/bip32': 1.6.0
+ abitype: 1.0.6(typescript@5.6.3)(zod@3.23.8)
+ axios: 1.7.7(debug@4.3.7)
+ axios-mock-adapter: 1.22.0(axios@1.7.7)
+ axios-retry: 4.5.0(axios@1.7.7)
+ bip32: 4.0.0
+ bip39: 3.1.0
+ decimal.js: 10.4.3
+ dotenv: 16.4.5
+ ethers: 6.13.4(bufferutil@4.0.8)(utf-8-validate@5.0.10)
+ node-jose: 2.2.0
+ secp256k1: 5.0.1
+ viem: 2.21.50(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10)(zod@3.23.8)
+ transitivePeerDependencies:
+ - bufferutil
+ - debug
+ - typescript
+ - utf-8-validate
+ - zod
'@colors/colors@1.5.0':
optional: true
@@ -16867,9 +17433,9 @@ snapshots:
'@coral-xyz/anchor@0.30.1(bufferutil@4.0.8)(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.95.4(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10))
- '@noble/hashes': 1.6.0
- '@solana/web3.js': 1.95.4(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10)
+ '@coral-xyz/borsh': 0.30.1(@solana/web3.js@1.95.5(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10))
+ '@noble/hashes': 1.6.1
+ '@solana/web3.js': 1.95.5(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10)
bn.js: 5.2.1
bs58: 4.0.1
buffer-layout: 1.2.2
@@ -16886,9 +17452,9 @@ snapshots:
- encoding
- utf-8-validate
- '@coral-xyz/borsh@0.30.1(@solana/web3.js@1.95.4(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10))':
+ '@coral-xyz/borsh@0.30.1(@solana/web3.js@1.95.5(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10))':
dependencies:
- '@solana/web3.js': 1.95.4(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10)
+ '@solana/web3.js': 1.95.5(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10)
bn.js: 5.2.1
buffer-layout: 1.2.2
@@ -17458,25 +18024,6 @@ snapshots:
- uglify-js
- webpack-cli
- '@docusaurus/module-type-aliases@3.6.0(@swc/core@1.9.3(@swc/helpers@0.5.15))(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
- dependencies:
- '@docusaurus/types': 3.6.0(@swc/core@1.9.3(@swc/helpers@0.5.15))(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
- '@types/history': 4.7.11
- '@types/react': 18.3.12
- '@types/react-router-config': 5.0.11
- '@types/react-router-dom': 5.3.3
- react: 18.3.1
- react-dom: 18.3.1(react@18.3.1)
- react-helmet-async: 2.0.5(react@18.3.1)
- react-loadable: '@docusaurus/react-loadable@6.0.0(react@18.3.1)'
- transitivePeerDependencies:
- - '@swc/core'
- - acorn
- - esbuild
- - supports-color
- - uglify-js
- - webpack-cli
-
'@docusaurus/module-type-aliases@3.6.3(@swc/core@1.9.3(@swc/helpers@0.5.15))(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
dependencies:
'@docusaurus/types': 3.6.3(@swc/core@1.9.3(@swc/helpers@0.5.15))(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
@@ -17873,7 +18420,7 @@ snapshots:
'@docusaurus/utils-common': 3.6.3(@swc/core@1.9.3(@swc/helpers@0.5.15))(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@docusaurus/utils-validation': 3.6.3(@swc/core@1.9.3(@swc/helpers@0.5.15))(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)
'@mdx-js/react': 3.0.1(@types/react@18.3.12)(react@18.3.1)
- clsx: 2.1.0
+ clsx: 2.1.1
copy-text-to-clipboard: 3.2.0
infima: 0.2.0-alpha.45
lodash: 4.17.21
@@ -17918,7 +18465,7 @@ snapshots:
'@types/history': 4.7.11
'@types/react': 18.3.12
'@types/react-router-config': 5.0.11
- clsx: 2.1.0
+ clsx: 2.1.1
parse-numeric-range: 1.3.0
prism-react-renderer: 2.3.1(react@18.3.1)
react: 18.3.1
@@ -17979,7 +18526,7 @@ snapshots:
'@docusaurus/utils-validation': 3.6.3(@swc/core@1.9.3(@swc/helpers@0.5.15))(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.6.3)
algoliasearch: 4.24.0
algoliasearch-helper: 3.22.5(algoliasearch@4.24.0)
- clsx: 2.1.0
+ clsx: 2.1.1
eta: 2.2.0
fs-extra: 11.2.0
lodash: 4.17.21
@@ -18016,27 +18563,6 @@ snapshots:
fs-extra: 11.2.0
tslib: 2.8.0
- '@docusaurus/types@3.6.0(@swc/core@1.9.3(@swc/helpers@0.5.15))(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
- dependencies:
- '@mdx-js/mdx': 3.1.0(acorn@8.14.0)
- '@types/history': 4.7.11
- '@types/react': 18.3.12
- commander: 5.1.0
- joi: 17.13.3
- react: 18.3.1
- react-dom: 18.3.1(react@18.3.1)
- react-helmet-async: 1.3.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
- utility-types: 3.11.0
- webpack: 5.96.1(@swc/core@1.9.3(@swc/helpers@0.5.15))
- webpack-merge: 5.10.0
- transitivePeerDependencies:
- - '@swc/core'
- - acorn
- - esbuild
- - supports-color
- - uglify-js
- - webpack-cli
-
'@docusaurus/types@3.6.3(@swc/core@1.9.3(@swc/helpers@0.5.15))(acorn@8.14.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
dependencies:
'@mdx-js/mdx': 3.1.0(acorn@8.14.0)
@@ -18129,8 +18655,6 @@ snapshots:
'@echogarden/audio-io@0.2.3': {}
- '@echogarden/espeak-ng-emscripten@0.3.0': {}
-
'@echogarden/espeak-ng-emscripten@0.3.3': {}
'@echogarden/fasttext-wasm@0.1.0': {}
@@ -18464,6 +18988,23 @@ snapshots:
'@ethersproject/constants': 5.7.0
'@ethersproject/logger': 5.7.0
+ '@floating-ui/core@1.6.8':
+ dependencies:
+ '@floating-ui/utils': 0.2.8
+
+ '@floating-ui/dom@1.6.12':
+ dependencies:
+ '@floating-ui/core': 1.6.8
+ '@floating-ui/utils': 0.2.8
+
+ '@floating-ui/react-dom@2.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
+ dependencies:
+ '@floating-ui/dom': 1.6.12
+ react: 18.3.1
+ react-dom: 18.3.1(react@18.3.1)
+
+ '@floating-ui/utils@0.2.8': {}
+
'@google-cloud/vertexai@1.9.0(encoding@0.1.13)':
dependencies:
google-auth-library: 9.15.0(encoding@0.1.13)
@@ -18849,12 +19390,12 @@ snapshots:
'@leichtgewicht/ip-codec@2.0.5': {}
- '@lerna/create@8.1.9(@swc/core@1.9.3(@swc/helpers@0.5.15))(encoding@0.1.13)(typescript@5.6.3)':
+ '@lerna/create@8.1.5(@swc/core@1.9.3(@swc/helpers@0.5.15))(encoding@0.1.13)(typescript@5.6.3)':
dependencies:
- '@npmcli/arborist': 7.5.4
+ '@npmcli/arborist': 7.5.3
'@npmcli/package-json': 5.2.0
'@npmcli/run-script': 8.1.0
- '@nx/devkit': 20.1.3(nx@20.1.3(@swc/core@1.9.3(@swc/helpers@0.5.15)))
+ '@nx/devkit': 19.8.12(nx@19.8.12(@swc/core@1.9.3(@swc/helpers@0.5.15)))
'@octokit/plugin-enterprise-rest': 6.0.1
'@octokit/rest': 19.0.11(encoding@0.1.13)
aproba: 2.0.0
@@ -18867,7 +19408,7 @@ snapshots:
console-control-strings: 1.1.0
conventional-changelog-core: 5.0.1
conventional-recommended-bump: 7.0.1
- cosmiconfig: 9.0.0(typescript@5.6.3)
+ cosmiconfig: 8.3.6(typescript@5.6.3)
dedent: 1.5.3
execa: 5.0.0
fs-extra: 11.2.0
@@ -18893,7 +19434,7 @@ snapshots:
npm-package-arg: 11.0.2
npm-packlist: 8.0.2
npm-registry-fetch: 17.1.0
- nx: 20.1.3(@swc/core@1.9.3(@swc/helpers@0.5.15))
+ nx: 19.8.12(@swc/core@1.9.3(@swc/helpers@0.5.15))
p-map: 4.0.0
p-map-series: 2.1.0
p-queue: 6.6.2
@@ -18908,8 +19449,6 @@ snapshots:
signal-exit: 3.0.7
slash: 3.0.0
ssri: 10.0.6
- string-width: 4.2.3
- strip-ansi: 6.0.1
strong-log-transformer: 2.1.0
tar: 6.2.1
temp-dir: 1.0.0
@@ -19004,6 +19543,10 @@ snapshots:
dependencies:
'@noble/hashes': 1.3.3
+ '@noble/curves@1.6.0':
+ dependencies:
+ '@noble/hashes': 1.5.0
+
'@noble/curves@1.7.0':
dependencies:
'@noble/hashes': 1.6.0
@@ -19016,6 +19559,8 @@ snapshots:
'@noble/hashes@1.6.0': {}
+ '@noble/hashes@1.6.1': {}
+
'@node-llama-cpp/linux-arm64@3.1.1':
optional: true
@@ -19071,7 +19616,7 @@ snapshots:
transitivePeerDependencies:
- supports-color
- '@npmcli/arborist@7.5.4':
+ '@npmcli/arborist@7.5.3':
dependencies:
'@isaacs/string-locale-compare': 1.1.0
'@npmcli/fs': 3.1.1
@@ -19191,46 +19736,62 @@ snapshots:
- bluebird
- supports-color
- '@nx/devkit@20.1.3(nx@20.1.3(@swc/core@1.9.3(@swc/helpers@0.5.15)))':
+ '@nrwl/devkit@19.8.12(nx@19.8.12(@swc/core@1.9.3(@swc/helpers@0.5.15)))':
+ dependencies:
+ '@nx/devkit': 19.8.12(nx@19.8.12(@swc/core@1.9.3(@swc/helpers@0.5.15)))
+ transitivePeerDependencies:
+ - nx
+
+ '@nrwl/tao@19.8.12(@swc/core@1.9.3(@swc/helpers@0.5.15))':
+ dependencies:
+ nx: 19.8.12(@swc/core@1.9.3(@swc/helpers@0.5.15))
+ tslib: 2.8.0
+ transitivePeerDependencies:
+ - '@swc-node/register'
+ - '@swc/core'
+ - debug
+
+ '@nx/devkit@19.8.12(nx@19.8.12(@swc/core@1.9.3(@swc/helpers@0.5.15)))':
dependencies:
+ '@nrwl/devkit': 19.8.12(nx@19.8.12(@swc/core@1.9.3(@swc/helpers@0.5.15)))
ejs: 3.1.10
enquirer: 2.3.6
ignore: 5.3.2
minimatch: 9.0.3
- nx: 20.1.3(@swc/core@1.9.3(@swc/helpers@0.5.15))
+ nx: 19.8.12(@swc/core@1.9.3(@swc/helpers@0.5.15))
semver: 7.6.3
tmp: 0.2.3
tslib: 2.8.0
yargs-parser: 21.1.1
- '@nx/nx-darwin-arm64@20.1.3':
+ '@nx/nx-darwin-arm64@19.8.12':
optional: true
- '@nx/nx-darwin-x64@20.1.3':
+ '@nx/nx-darwin-x64@19.8.12':
optional: true
- '@nx/nx-freebsd-x64@20.1.3':
+ '@nx/nx-freebsd-x64@19.8.12':
optional: true
- '@nx/nx-linux-arm-gnueabihf@20.1.3':
+ '@nx/nx-linux-arm-gnueabihf@19.8.12':
optional: true
- '@nx/nx-linux-arm64-gnu@20.1.3':
+ '@nx/nx-linux-arm64-gnu@19.8.12':
optional: true
- '@nx/nx-linux-arm64-musl@20.1.3':
+ '@nx/nx-linux-arm64-musl@19.8.12':
optional: true
- '@nx/nx-linux-x64-gnu@20.1.3':
+ '@nx/nx-linux-x64-gnu@19.8.12':
optional: true
- '@nx/nx-linux-x64-musl@20.1.3':
+ '@nx/nx-linux-x64-musl@19.8.12':
optional: true
- '@nx/nx-win32-arm64-msvc@20.1.3':
+ '@nx/nx-win32-arm64-msvc@19.8.12':
optional: true
- '@nx/nx-win32-x64-msvc@20.1.3':
+ '@nx/nx-win32-x64-msvc@19.8.12':
optional: true
'@octokit/app@15.1.1':
@@ -19525,7 +20086,7 @@ snapshots:
'@octokit/request-error': 6.1.5
'@octokit/webhooks-methods': 5.1.0
- '@opendocsg/pdf2md@0.1.31(encoding@0.1.13)':
+ '@opendocsg/pdf2md@0.1.32(encoding@0.1.13)':
dependencies:
enumify: 1.0.4
minimist: 1.2.8
@@ -19704,12 +20265,150 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ '@radix-ui/primitive@1.1.0': {}
+
+ '@radix-ui/react-arrow@1.1.0(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
+ dependencies:
+ '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ react: 18.3.1
+ react-dom: 18.3.1(react@18.3.1)
+ optionalDependencies:
+ '@types/react': 18.3.12
+ '@types/react-dom': 18.3.1
+
'@radix-ui/react-compose-refs@1.1.0(@types/react@18.3.12)(react@18.3.1)':
dependencies:
react: 18.3.1
optionalDependencies:
'@types/react': 18.3.12
+ '@radix-ui/react-context@1.1.0(@types/react@18.3.12)(react@18.3.1)':
+ dependencies:
+ react: 18.3.1
+ optionalDependencies:
+ '@types/react': 18.3.12
+
+ '@radix-ui/react-context@1.1.1(@types/react@18.3.12)(react@18.3.1)':
+ dependencies:
+ react: 18.3.1
+ optionalDependencies:
+ '@types/react': 18.3.12
+
+ '@radix-ui/react-dialog@1.1.2(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
+ dependencies:
+ '@radix-ui/primitive': 1.1.0
+ '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.12)(react@18.3.1)
+ '@radix-ui/react-context': 1.1.1(@types/react@18.3.12)(react@18.3.1)
+ '@radix-ui/react-dismissable-layer': 1.1.1(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@radix-ui/react-focus-guards': 1.1.1(@types/react@18.3.12)(react@18.3.1)
+ '@radix-ui/react-focus-scope': 1.1.0(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@radix-ui/react-id': 1.1.0(@types/react@18.3.12)(react@18.3.1)
+ '@radix-ui/react-portal': 1.1.2(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@radix-ui/react-presence': 1.1.1(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@radix-ui/react-slot': 1.1.0(@types/react@18.3.12)(react@18.3.1)
+ '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.3.12)(react@18.3.1)
+ aria-hidden: 1.2.4
+ react: 18.3.1
+ react-dom: 18.3.1(react@18.3.1)
+ react-remove-scroll: 2.6.0(@types/react@18.3.12)(react@18.3.1)
+ optionalDependencies:
+ '@types/react': 18.3.12
+ '@types/react-dom': 18.3.1
+
+ '@radix-ui/react-dismissable-layer@1.1.1(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
+ dependencies:
+ '@radix-ui/primitive': 1.1.0
+ '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.12)(react@18.3.1)
+ '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.12)(react@18.3.1)
+ '@radix-ui/react-use-escape-keydown': 1.1.0(@types/react@18.3.12)(react@18.3.1)
+ react: 18.3.1
+ react-dom: 18.3.1(react@18.3.1)
+ optionalDependencies:
+ '@types/react': 18.3.12
+ '@types/react-dom': 18.3.1
+
+ '@radix-ui/react-focus-guards@1.1.1(@types/react@18.3.12)(react@18.3.1)':
+ dependencies:
+ react: 18.3.1
+ optionalDependencies:
+ '@types/react': 18.3.12
+
+ '@radix-ui/react-focus-scope@1.1.0(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
+ dependencies:
+ '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.12)(react@18.3.1)
+ '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.12)(react@18.3.1)
+ react: 18.3.1
+ react-dom: 18.3.1(react@18.3.1)
+ optionalDependencies:
+ '@types/react': 18.3.12
+ '@types/react-dom': 18.3.1
+
+ '@radix-ui/react-id@1.1.0(@types/react@18.3.12)(react@18.3.1)':
+ dependencies:
+ '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.12)(react@18.3.1)
+ react: 18.3.1
+ optionalDependencies:
+ '@types/react': 18.3.12
+
+ '@radix-ui/react-popper@1.2.0(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
+ dependencies:
+ '@floating-ui/react-dom': 2.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@radix-ui/react-arrow': 1.1.0(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.12)(react@18.3.1)
+ '@radix-ui/react-context': 1.1.0(@types/react@18.3.12)(react@18.3.1)
+ '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.12)(react@18.3.1)
+ '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.12)(react@18.3.1)
+ '@radix-ui/react-use-rect': 1.1.0(@types/react@18.3.12)(react@18.3.1)
+ '@radix-ui/react-use-size': 1.1.0(@types/react@18.3.12)(react@18.3.1)
+ '@radix-ui/rect': 1.1.0
+ react: 18.3.1
+ react-dom: 18.3.1(react@18.3.1)
+ optionalDependencies:
+ '@types/react': 18.3.12
+ '@types/react-dom': 18.3.1
+
+ '@radix-ui/react-portal@1.1.2(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
+ dependencies:
+ '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.12)(react@18.3.1)
+ react: 18.3.1
+ react-dom: 18.3.1(react@18.3.1)
+ optionalDependencies:
+ '@types/react': 18.3.12
+ '@types/react-dom': 18.3.1
+
+ '@radix-ui/react-presence@1.1.1(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
+ dependencies:
+ '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.12)(react@18.3.1)
+ '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.12)(react@18.3.1)
+ react: 18.3.1
+ react-dom: 18.3.1(react@18.3.1)
+ optionalDependencies:
+ '@types/react': 18.3.12
+ '@types/react-dom': 18.3.1
+
+ '@radix-ui/react-primitive@2.0.0(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
+ dependencies:
+ '@radix-ui/react-slot': 1.1.0(@types/react@18.3.12)(react@18.3.1)
+ react: 18.3.1
+ react-dom: 18.3.1(react@18.3.1)
+ optionalDependencies:
+ '@types/react': 18.3.12
+ '@types/react-dom': 18.3.1
+
+ '@radix-ui/react-separator@1.1.0(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
+ dependencies:
+ '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ react: 18.3.1
+ react-dom: 18.3.1(react@18.3.1)
+ optionalDependencies:
+ '@types/react': 18.3.12
+ '@types/react-dom': 18.3.1
+
'@radix-ui/react-slot@1.1.0(@types/react@18.3.12)(react@18.3.1)':
dependencies:
'@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.12)(react@18.3.1)
@@ -19717,40 +20416,107 @@ snapshots:
optionalDependencies:
'@types/react': 18.3.12
- '@reflink/reflink-darwin-arm64@0.1.16':
- optional: true
+ '@radix-ui/react-tooltip@1.1.4(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
+ dependencies:
+ '@radix-ui/primitive': 1.1.0
+ '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.12)(react@18.3.1)
+ '@radix-ui/react-context': 1.1.1(@types/react@18.3.12)(react@18.3.1)
+ '@radix-ui/react-dismissable-layer': 1.1.1(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@radix-ui/react-id': 1.1.0(@types/react@18.3.12)(react@18.3.1)
+ '@radix-ui/react-popper': 1.2.0(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@radix-ui/react-portal': 1.1.2(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@radix-ui/react-presence': 1.1.1(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@radix-ui/react-slot': 1.1.0(@types/react@18.3.12)(react@18.3.1)
+ '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.3.12)(react@18.3.1)
+ '@radix-ui/react-visually-hidden': 1.1.0(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ react: 18.3.1
+ react-dom: 18.3.1(react@18.3.1)
+ optionalDependencies:
+ '@types/react': 18.3.12
+ '@types/react-dom': 18.3.1
+
+ '@radix-ui/react-use-callback-ref@1.1.0(@types/react@18.3.12)(react@18.3.1)':
+ dependencies:
+ react: 18.3.1
+ optionalDependencies:
+ '@types/react': 18.3.12
+
+ '@radix-ui/react-use-controllable-state@1.1.0(@types/react@18.3.12)(react@18.3.1)':
+ dependencies:
+ '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.12)(react@18.3.1)
+ react: 18.3.1
+ optionalDependencies:
+ '@types/react': 18.3.12
+
+ '@radix-ui/react-use-escape-keydown@1.1.0(@types/react@18.3.12)(react@18.3.1)':
+ dependencies:
+ '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.12)(react@18.3.1)
+ react: 18.3.1
+ optionalDependencies:
+ '@types/react': 18.3.12
+
+ '@radix-ui/react-use-layout-effect@1.1.0(@types/react@18.3.12)(react@18.3.1)':
+ dependencies:
+ react: 18.3.1
+ optionalDependencies:
+ '@types/react': 18.3.12
+
+ '@radix-ui/react-use-rect@1.1.0(@types/react@18.3.12)(react@18.3.1)':
+ dependencies:
+ '@radix-ui/rect': 1.1.0
+ react: 18.3.1
+ optionalDependencies:
+ '@types/react': 18.3.12
+
+ '@radix-ui/react-use-size@1.1.0(@types/react@18.3.12)(react@18.3.1)':
+ dependencies:
+ '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.12)(react@18.3.1)
+ react: 18.3.1
+ optionalDependencies:
+ '@types/react': 18.3.12
+
+ '@radix-ui/react-visually-hidden@1.1.0(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
+ dependencies:
+ '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ react: 18.3.1
+ react-dom: 18.3.1(react@18.3.1)
+ optionalDependencies:
+ '@types/react': 18.3.12
+ '@types/react-dom': 18.3.1
+
+ '@radix-ui/rect@1.1.0': {}
- '@reflink/reflink-darwin-x64@0.1.16':
+ '@reflink/reflink-darwin-arm64@0.1.17':
optional: true
- '@reflink/reflink-linux-arm64-gnu@0.1.16':
+ '@reflink/reflink-linux-arm64-gnu@0.1.17':
optional: true
- '@reflink/reflink-linux-arm64-musl@0.1.16':
+ '@reflink/reflink-linux-arm64-musl@0.1.17':
optional: true
- '@reflink/reflink-linux-x64-gnu@0.1.16':
+ '@reflink/reflink-linux-x64-gnu@0.1.17':
optional: true
- '@reflink/reflink-linux-x64-musl@0.1.16':
+ '@reflink/reflink-linux-x64-musl@0.1.17':
optional: true
- '@reflink/reflink-win32-arm64-msvc@0.1.16':
+ '@reflink/reflink-win32-arm64-msvc@0.1.17':
optional: true
- '@reflink/reflink-win32-x64-msvc@0.1.16':
+ '@reflink/reflink-win32-x64-msvc@0.1.17':
optional: true
- '@reflink/reflink@0.1.16':
+ '@reflink/reflink@0.1.17':
optionalDependencies:
- '@reflink/reflink-darwin-arm64': 0.1.16
- '@reflink/reflink-darwin-x64': 0.1.16
- '@reflink/reflink-linux-arm64-gnu': 0.1.16
- '@reflink/reflink-linux-arm64-musl': 0.1.16
- '@reflink/reflink-linux-x64-gnu': 0.1.16
- '@reflink/reflink-linux-x64-musl': 0.1.16
- '@reflink/reflink-win32-arm64-msvc': 0.1.16
- '@reflink/reflink-win32-x64-msvc': 0.1.16
+ '@reflink/reflink-darwin-arm64': 0.1.17
+ '@reflink/reflink-linux-arm64-gnu': 0.1.17
+ '@reflink/reflink-linux-arm64-musl': 0.1.17
+ '@reflink/reflink-linux-x64-gnu': 0.1.17
+ '@reflink/reflink-linux-x64-musl': 0.1.17
+ '@reflink/reflink-win32-arm64-msvc': 0.1.17
+ '@reflink/reflink-win32-x64-msvc': 0.1.17
optional: true
'@remix-run/router@1.15.1': {}
@@ -19960,6 +20726,30 @@ snapshots:
'@scure/base@1.1.9': {}
+ '@scure/base@1.2.1': {}
+
+ '@scure/bip32@1.5.0':
+ dependencies:
+ '@noble/curves': 1.6.0
+ '@noble/hashes': 1.5.0
+ '@scure/base': 1.1.9
+
+ '@scure/bip32@1.6.0':
+ dependencies:
+ '@noble/curves': 1.7.0
+ '@noble/hashes': 1.6.1
+ '@scure/base': 1.2.1
+
+ '@scure/bip39@1.4.0':
+ dependencies:
+ '@noble/hashes': 1.5.0
+ '@scure/base': 1.1.9
+
+ '@scure/bip39@1.5.0':
+ dependencies:
+ '@noble/hashes': 1.6.1
+ '@scure/base': 1.2.1
+
'@scure/starknet@1.0.0':
dependencies:
'@noble/curves': 1.3.0
@@ -20367,7 +21157,7 @@ snapshots:
'@solana/buffer-layout-utils@0.2.0(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10)':
dependencies:
'@solana/buffer-layout': 4.0.1
- '@solana/web3.js': 1.95.4(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10)
+ '@solana/web3.js': 1.95.5(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10)
bigint-buffer: 1.1.5
bignumber.js: 9.1.2
transitivePeerDependencies:
@@ -20475,37 +21265,37 @@ snapshots:
transitivePeerDependencies:
- fastestsmallesttextencoderdecoder
- '@solana/spl-token-group@0.0.4(@solana/web3.js@1.95.4(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)':
+ '@solana/spl-token-group@0.0.4(@solana/web3.js@1.95.5(bufferutil@4.0.8)(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.4(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10)
+ '@solana/web3.js': 1.95.5(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10)
transitivePeerDependencies:
- fastestsmallesttextencoderdecoder
- '@solana/spl-token-group@0.0.7(@solana/web3.js@1.95.4(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)':
+ '@solana/spl-token-group@0.0.7(@solana/web3.js@1.95.5(bufferutil@4.0.8)(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.4(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10)
+ '@solana/web3.js': 1.95.5(bufferutil@4.0.8)(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.4(bufferutil@4.0.8)(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.5(bufferutil@4.0.8)(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.4(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10)
+ '@solana/web3.js': 1.95.5(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10)
transitivePeerDependencies:
- fastestsmallesttextencoderdecoder
- typescript
- '@solana/spl-token@0.4.6(@solana/web3.js@1.95.4(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.8)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)':
+ '@solana/spl-token@0.4.6(@solana/web3.js@1.95.5(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.8)(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.8)(encoding@0.1.13)(utf-8-validate@5.0.10)
- '@solana/spl-token-group': 0.0.4(@solana/web3.js@1.95.4(bufferutil@4.0.8)(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.4(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)
- '@solana/web3.js': 1.95.4(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10)
+ '@solana/spl-token-group': 0.0.4(@solana/web3.js@1.95.5(bufferutil@4.0.8)(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.5(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)
+ '@solana/web3.js': 1.95.5(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10)
buffer: 6.0.3
transitivePeerDependencies:
- bufferutil
@@ -20514,13 +21304,13 @@ snapshots:
- typescript
- utf-8-validate
- '@solana/spl-token@0.4.9(@solana/web3.js@1.95.4(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.8)(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.5(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.8)(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.8)(encoding@0.1.13)(utf-8-validate@5.0.10)
- '@solana/spl-token-group': 0.0.7(@solana/web3.js@1.95.4(bufferutil@4.0.8)(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.4(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)
- '@solana/web3.js': 1.95.4(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10)
+ '@solana/spl-token-group': 0.0.7(@solana/web3.js@1.95.5(bufferutil@4.0.8)(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.5(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10))(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)
+ '@solana/web3.js': 1.95.5(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10)
buffer: 6.0.3
transitivePeerDependencies:
- bufferutil
@@ -20533,11 +21323,11 @@ snapshots:
dependencies:
buffer: 6.0.3
- '@solana/web3.js@1.95.4(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10)':
+ '@solana/web3.js@1.95.5(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10)':
dependencies:
'@babel/runtime': 7.26.0
'@noble/curves': 1.7.0
- '@noble/hashes': 1.6.0
+ '@noble/hashes': 1.6.1
'@solana/buffer-layout': 4.0.1
agentkeepalive: 4.5.0
bigint-buffer: 1.1.5
@@ -20576,7 +21366,7 @@ snapshots:
'@supabase/realtime-js@2.10.7(bufferutil@4.0.8)(utf-8-validate@5.0.10)':
dependencies:
'@supabase/node-fetch': 2.6.15
- '@types/phoenix': 1.6.5
+ '@types/phoenix': 1.6.6
'@types/ws': 8.5.13
ws: 8.18.0(bufferutil@4.0.8)(utf-8-validate@5.0.10)
transitivePeerDependencies:
@@ -20753,6 +21543,13 @@ snapshots:
dependencies:
defer-to-connect: 2.0.1
+ '@tanstack/query-core@5.60.6': {}
+
+ '@tanstack/react-query@5.61.0(react@18.3.1)':
+ dependencies:
+ '@tanstack/query-core': 5.60.6
+ react: 18.3.1
+
'@telegraf/types@7.1.0': {}
'@tinyhttp/content-disposition@2.2.2': {}
@@ -20827,7 +21624,7 @@ snapshots:
'@types/connect-history-api-fallback@1.5.4':
dependencies:
- '@types/express-serve-static-core': 5.0.1
+ '@types/express-serve-static-core': 5.0.2
'@types/node': 22.8.4
'@types/connect@3.4.38':
@@ -20963,7 +21760,7 @@ snapshots:
'@types/dompurify@3.2.0':
dependencies:
- dompurify: 3.2.0
+ dompurify: 3.2.1
'@types/emscripten@1.39.13': {}
@@ -20990,7 +21787,7 @@ snapshots:
'@types/range-parser': 1.2.7
'@types/send': 0.17.4
- '@types/express-serve-static-core@5.0.1':
+ '@types/express-serve-static-core@5.0.2':
dependencies:
'@types/node': 22.8.4
'@types/qs': 6.9.17
@@ -21007,7 +21804,7 @@ snapshots:
'@types/express@5.0.0':
dependencies:
'@types/body-parser': 1.19.5
- '@types/express-serve-static-core': 5.0.1
+ '@types/express-serve-static-core': 5.0.2
'@types/qs': 6.9.17
'@types/serve-static': 1.15.7
@@ -21139,7 +21936,7 @@ snapshots:
pg-protocol: 1.7.0
pg-types: 4.0.2
- '@types/phoenix@1.6.5': {}
+ '@types/phoenix@1.6.6': {}
'@types/prismjs@1.26.5': {}
@@ -21214,6 +22011,9 @@ snapshots:
'@types/node': 22.8.4
minipass: 4.2.8
+ '@types/trusted-types@2.0.7':
+ optional: true
+
'@types/unist@2.0.11': {}
'@types/unist@3.0.3': {}
@@ -21245,48 +22045,48 @@ snapshots:
'@types/node': 22.8.4
optional: true
- '@typescript-eslint/eslint-plugin@8.12.2(@typescript-eslint/parser@8.12.2(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3))(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)':
+ '@typescript-eslint/eslint-plugin@8.11.0(@typescript-eslint/parser@8.11.0(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3))(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)':
dependencies:
'@eslint-community/regexpp': 4.12.1
- '@typescript-eslint/parser': 8.12.2(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)
- '@typescript-eslint/scope-manager': 8.12.2
- '@typescript-eslint/type-utils': 8.12.2(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)
- '@typescript-eslint/utils': 8.12.2(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)
- '@typescript-eslint/visitor-keys': 8.12.2
+ '@typescript-eslint/parser': 8.11.0(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)
+ '@typescript-eslint/scope-manager': 8.11.0
+ '@typescript-eslint/type-utils': 8.11.0(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)
+ '@typescript-eslint/utils': 8.11.0(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)
+ '@typescript-eslint/visitor-keys': 8.11.0
eslint: 9.13.0(jiti@2.4.0)
graphemer: 1.4.0
ignore: 5.3.2
natural-compare: 1.4.0
- ts-api-utils: 1.4.0(typescript@5.6.3)
+ ts-api-utils: 1.4.1(typescript@5.6.3)
optionalDependencies:
typescript: 5.6.3
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/eslint-plugin@8.15.0(@typescript-eslint/parser@8.15.0(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3))(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)':
+ '@typescript-eslint/eslint-plugin@8.12.2(@typescript-eslint/parser@8.12.2(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3))(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)':
dependencies:
'@eslint-community/regexpp': 4.12.1
- '@typescript-eslint/parser': 8.15.0(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)
- '@typescript-eslint/scope-manager': 8.15.0
- '@typescript-eslint/type-utils': 8.15.0(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)
- '@typescript-eslint/utils': 8.15.0(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)
- '@typescript-eslint/visitor-keys': 8.15.0
+ '@typescript-eslint/parser': 8.12.2(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)
+ '@typescript-eslint/scope-manager': 8.12.2
+ '@typescript-eslint/type-utils': 8.12.2(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)
+ '@typescript-eslint/utils': 8.12.2(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)
+ '@typescript-eslint/visitor-keys': 8.12.2
eslint: 9.13.0(jiti@2.4.0)
graphemer: 1.4.0
ignore: 5.3.2
natural-compare: 1.4.0
- ts-api-utils: 1.4.0(typescript@5.6.3)
+ ts-api-utils: 1.4.1(typescript@5.6.3)
optionalDependencies:
typescript: 5.6.3
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/parser@8.12.2(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)':
+ '@typescript-eslint/parser@8.11.0(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)':
dependencies:
- '@typescript-eslint/scope-manager': 8.12.2
- '@typescript-eslint/types': 8.12.2
- '@typescript-eslint/typescript-estree': 8.12.2(typescript@5.6.3)
- '@typescript-eslint/visitor-keys': 8.12.2
+ '@typescript-eslint/scope-manager': 8.11.0
+ '@typescript-eslint/types': 8.11.0
+ '@typescript-eslint/typescript-estree': 8.11.0(typescript@5.6.3)
+ '@typescript-eslint/visitor-keys': 8.11.0
debug: 4.3.7(supports-color@5.5.0)
eslint: 9.13.0(jiti@2.4.0)
optionalDependencies:
@@ -21294,12 +22094,12 @@ snapshots:
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/parser@8.15.0(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)':
+ '@typescript-eslint/parser@8.12.2(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)':
dependencies:
- '@typescript-eslint/scope-manager': 8.15.0
- '@typescript-eslint/types': 8.15.0
- '@typescript-eslint/typescript-estree': 8.15.0(typescript@5.6.3)
- '@typescript-eslint/visitor-keys': 8.15.0
+ '@typescript-eslint/scope-manager': 8.12.2
+ '@typescript-eslint/types': 8.12.2
+ '@typescript-eslint/typescript-estree': 8.12.2(typescript@5.6.3)
+ '@typescript-eslint/visitor-keys': 8.12.2
debug: 4.3.7(supports-color@5.5.0)
eslint: 9.13.0(jiti@2.4.0)
optionalDependencies:
@@ -21312,45 +22112,45 @@ snapshots:
'@typescript-eslint/types': 7.18.0
'@typescript-eslint/visitor-keys': 7.18.0
+ '@typescript-eslint/scope-manager@8.11.0':
+ dependencies:
+ '@typescript-eslint/types': 8.11.0
+ '@typescript-eslint/visitor-keys': 8.11.0
+
'@typescript-eslint/scope-manager@8.12.2':
dependencies:
'@typescript-eslint/types': 8.12.2
'@typescript-eslint/visitor-keys': 8.12.2
- '@typescript-eslint/scope-manager@8.15.0':
- dependencies:
- '@typescript-eslint/types': 8.15.0
- '@typescript-eslint/visitor-keys': 8.15.0
-
- '@typescript-eslint/type-utils@8.12.2(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)':
+ '@typescript-eslint/type-utils@8.11.0(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)':
dependencies:
- '@typescript-eslint/typescript-estree': 8.12.2(typescript@5.6.3)
- '@typescript-eslint/utils': 8.12.2(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)
+ '@typescript-eslint/typescript-estree': 8.11.0(typescript@5.6.3)
+ '@typescript-eslint/utils': 8.11.0(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)
debug: 4.3.7(supports-color@5.5.0)
- ts-api-utils: 1.4.0(typescript@5.6.3)
+ ts-api-utils: 1.4.1(typescript@5.6.3)
optionalDependencies:
typescript: 5.6.3
transitivePeerDependencies:
- eslint
- supports-color
- '@typescript-eslint/type-utils@8.15.0(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)':
+ '@typescript-eslint/type-utils@8.12.2(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)':
dependencies:
- '@typescript-eslint/typescript-estree': 8.15.0(typescript@5.6.3)
- '@typescript-eslint/utils': 8.15.0(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)
+ '@typescript-eslint/typescript-estree': 8.12.2(typescript@5.6.3)
+ '@typescript-eslint/utils': 8.12.2(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)
debug: 4.3.7(supports-color@5.5.0)
- eslint: 9.13.0(jiti@2.4.0)
- ts-api-utils: 1.4.0(typescript@5.6.3)
+ ts-api-utils: 1.4.1(typescript@5.6.3)
optionalDependencies:
typescript: 5.6.3
transitivePeerDependencies:
+ - eslint
- supports-color
'@typescript-eslint/types@7.18.0': {}
- '@typescript-eslint/types@8.12.2': {}
+ '@typescript-eslint/types@8.11.0': {}
- '@typescript-eslint/types@8.15.0': {}
+ '@typescript-eslint/types@8.12.2': {}
'@typescript-eslint/typescript-estree@7.18.0(typescript@5.6.3)':
dependencies:
@@ -21361,37 +22161,37 @@ snapshots:
is-glob: 4.0.3
minimatch: 9.0.5
semver: 7.6.3
- ts-api-utils: 1.4.0(typescript@5.6.3)
+ ts-api-utils: 1.4.1(typescript@5.6.3)
optionalDependencies:
typescript: 5.6.3
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/typescript-estree@8.12.2(typescript@5.6.3)':
+ '@typescript-eslint/typescript-estree@8.11.0(typescript@5.6.3)':
dependencies:
- '@typescript-eslint/types': 8.12.2
- '@typescript-eslint/visitor-keys': 8.12.2
+ '@typescript-eslint/types': 8.11.0
+ '@typescript-eslint/visitor-keys': 8.11.0
debug: 4.3.7(supports-color@5.5.0)
fast-glob: 3.3.2
is-glob: 4.0.3
minimatch: 9.0.5
semver: 7.6.3
- ts-api-utils: 1.4.0(typescript@5.6.3)
+ ts-api-utils: 1.4.1(typescript@5.6.3)
optionalDependencies:
typescript: 5.6.3
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/typescript-estree@8.15.0(typescript@5.6.3)':
+ '@typescript-eslint/typescript-estree@8.12.2(typescript@5.6.3)':
dependencies:
- '@typescript-eslint/types': 8.15.0
- '@typescript-eslint/visitor-keys': 8.15.0
+ '@typescript-eslint/types': 8.12.2
+ '@typescript-eslint/visitor-keys': 8.12.2
debug: 4.3.7(supports-color@5.5.0)
fast-glob: 3.3.2
is-glob: 4.0.3
minimatch: 9.0.5
semver: 7.6.3
- ts-api-utils: 1.4.0(typescript@5.6.3)
+ ts-api-utils: 1.4.1(typescript@5.6.3)
optionalDependencies:
typescript: 5.6.3
transitivePeerDependencies:
@@ -21408,43 +22208,42 @@ snapshots:
- supports-color
- typescript
- '@typescript-eslint/utils@8.12.2(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)':
+ '@typescript-eslint/utils@8.11.0(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)':
dependencies:
'@eslint-community/eslint-utils': 4.4.1(eslint@9.13.0(jiti@2.4.0))
- '@typescript-eslint/scope-manager': 8.12.2
- '@typescript-eslint/types': 8.12.2
- '@typescript-eslint/typescript-estree': 8.12.2(typescript@5.6.3)
+ '@typescript-eslint/scope-manager': 8.11.0
+ '@typescript-eslint/types': 8.11.0
+ '@typescript-eslint/typescript-estree': 8.11.0(typescript@5.6.3)
eslint: 9.13.0(jiti@2.4.0)
transitivePeerDependencies:
- supports-color
- typescript
- '@typescript-eslint/utils@8.15.0(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)':
+ '@typescript-eslint/utils@8.12.2(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)':
dependencies:
'@eslint-community/eslint-utils': 4.4.1(eslint@9.13.0(jiti@2.4.0))
- '@typescript-eslint/scope-manager': 8.15.0
- '@typescript-eslint/types': 8.15.0
- '@typescript-eslint/typescript-estree': 8.15.0(typescript@5.6.3)
+ '@typescript-eslint/scope-manager': 8.12.2
+ '@typescript-eslint/types': 8.12.2
+ '@typescript-eslint/typescript-estree': 8.12.2(typescript@5.6.3)
eslint: 9.13.0(jiti@2.4.0)
- optionalDependencies:
- typescript: 5.6.3
transitivePeerDependencies:
- supports-color
+ - typescript
'@typescript-eslint/visitor-keys@7.18.0':
dependencies:
'@typescript-eslint/types': 7.18.0
eslint-visitor-keys: 3.4.3
- '@typescript-eslint/visitor-keys@8.12.2':
+ '@typescript-eslint/visitor-keys@8.11.0':
dependencies:
- '@typescript-eslint/types': 8.12.2
+ '@typescript-eslint/types': 8.11.0
eslint-visitor-keys: 3.4.3
- '@typescript-eslint/visitor-keys@8.15.0':
+ '@typescript-eslint/visitor-keys@8.12.2':
dependencies:
- '@typescript-eslint/types': 8.15.0
- eslint-visitor-keys: 4.2.0
+ '@typescript-eslint/types': 8.12.2
+ eslint-visitor-keys: 3.4.3
'@ungap/structured-clone@1.2.0': {}
@@ -21475,14 +22274,14 @@ snapshots:
moment: 2.30.1
starknet: 6.18.0(encoding@0.1.13)
- '@vitejs/plugin-react@4.3.3(vite@5.4.11(@types/node@22.8.4)(terser@5.36.0))':
+ '@vitejs/plugin-react@4.3.3(vite@client+@tanstack+router-plugin+vite)':
dependencies:
'@babel/core': 7.26.0
'@babel/plugin-transform-react-jsx-self': 7.25.9(@babel/core@7.26.0)
'@babel/plugin-transform-react-jsx-source': 7.25.9(@babel/core@7.26.0)
'@types/babel__core': 7.20.5
react-refresh: 0.14.2
- vite: 5.4.11(@types/node@22.8.4)(terser@5.36.0)
+ vite: link:client/@tanstack/router-plugin/vite
transitivePeerDependencies:
- supports-color
@@ -21664,7 +22463,7 @@ snapshots:
'@yarnpkg/lockfile@1.1.0': {}
- '@yarnpkg/parsers@3.0.2':
+ '@yarnpkg/parsers@3.0.0-rc.46':
dependencies:
js-yaml: 3.14.1
tslib: 2.8.0
@@ -21689,6 +22488,11 @@ snapshots:
fs-extra: 10.1.0
yargs: 17.7.2
+ abitype@1.0.6(typescript@5.6.3)(zod@3.23.8):
+ optionalDependencies:
+ typescript: 5.6.3
+ zod: 3.23.8
+
abort-controller@3.0.0:
dependencies:
event-target-shim: 5.0.1
@@ -21742,6 +22546,18 @@ snapshots:
tough-cookie: 4.1.4
tslib: 2.8.0
+ agent-twitter-client@0.0.14:
+ dependencies:
+ '@sinclair/typebox': 0.32.35
+ agent-twitter-client: 0.0.13
+ headers-polyfill: 3.3.0
+ json-stable-stringify: 1.1.1
+ otpauth: 9.3.5
+ set-cookie-parser: 2.7.1
+ tough-cookie: 4.1.4
+ tslib: 2.8.0
+ twitter-api-v2: 1.18.2
+
agentkeepalive@4.5.0:
dependencies:
humanize-ms: 1.2.1
@@ -21751,7 +22567,7 @@ snapshots:
clean-stack: 2.2.0
indent-string: 4.0.0
- ai@3.4.33(openai@4.69.0(encoding@0.1.13)(zod@3.23.8))(react@18.3.1)(sswr@2.1.0(svelte@5.2.7))(svelte@5.2.7)(zod@3.23.8):
+ ai@3.4.33(openai@4.69.0(encoding@0.1.13)(zod@3.23.8))(react@18.3.1)(sswr@2.1.0(svelte@5.2.7))(svelte@5.2.7)(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)
@@ -21950,6 +22766,10 @@ snapshots:
argparse@2.0.1: {}
+ aria-hidden@1.2.4:
+ dependencies:
+ tslib: 2.8.0
+
aria-query@5.3.2: {}
arr-union@3.1.0: {}
@@ -22026,7 +22846,7 @@ snapshots:
autoprefixer@10.4.20(postcss@8.4.49):
dependencies:
browserslist: 4.24.2
- caniuse-lite: 1.0.30001683
+ caniuse-lite: 1.0.30001684
fraction.js: 4.3.7
normalize-range: 0.1.2
picocolors: 1.1.1
@@ -22037,6 +22857,17 @@ snapshots:
aws4@1.13.2: {}
+ axios-mock-adapter@1.22.0(axios@1.7.7):
+ dependencies:
+ axios: 1.7.7(debug@4.3.7)
+ fast-deep-equal: 3.1.3
+ is-buffer: 2.0.5
+
+ axios-retry@4.5.0(axios@1.7.7):
+ dependencies:
+ axios: 1.7.7(debug@4.3.7)
+ is-retry-allowed: 2.2.0
+
axios@0.27.2:
dependencies:
follow-redirects: 1.15.9(debug@4.3.7)
@@ -22159,7 +22990,7 @@ snapshots:
dependencies:
bare-events: 2.5.0
bare-path: 2.1.3
- bare-stream: 2.4.0
+ bare-stream: 2.4.2
optional: true
bare-os@2.4.4:
@@ -22170,7 +23001,7 @@ snapshots:
bare-os: 2.4.4
optional: true
- bare-stream@2.4.0:
+ bare-stream@2.4.2:
dependencies:
streamx: 2.20.2
optional: true
@@ -22183,6 +23014,8 @@ snapshots:
base64-js@1.5.1: {}
+ base64url@3.0.1: {}
+
basic-ftp@5.0.5: {}
batch@0.6.1: {}
@@ -22242,6 +23075,17 @@ snapshots:
dependencies:
file-uri-to-path: 1.0.0
+ bip32@4.0.0:
+ dependencies:
+ '@noble/hashes': 1.6.1
+ '@scure/base': 1.2.1
+ typeforce: 1.18.0
+ wif: 2.0.6
+
+ bip39@3.1.0:
+ dependencies:
+ '@noble/hashes': 1.6.1
+
bl@4.1.0:
dependencies:
buffer: 5.7.1
@@ -22250,6 +23094,8 @@ snapshots:
blessed@0.1.81: {}
+ bn.js@4.12.1: {}
+
bn.js@5.2.1: {}
bodec@0.1.0: {}
@@ -22323,9 +23169,11 @@ snapshots:
dependencies:
fill-range: 7.1.1
+ brorand@1.1.0: {}
+
browserslist@4.24.2:
dependencies:
- caniuse-lite: 1.0.30001683
+ caniuse-lite: 1.0.30001684
electron-to-chromium: 1.5.64
node-releases: 2.0.18
update-browserslist-db: 1.1.1(browserslist@4.24.2)
@@ -22342,6 +23190,12 @@ snapshots:
dependencies:
base-x: 5.0.0
+ bs58check@2.1.2:
+ dependencies:
+ bs58: 4.0.1
+ create-hash: 1.2.0
+ safe-buffer: 5.2.1
+
bser@2.1.1:
dependencies:
node-int64: 0.4.0
@@ -22376,7 +23230,6 @@ snapshots:
bufferutil@4.0.8:
dependencies:
node-gyp-build: 4.8.4
- optional: true
bundle-require@5.0.0(esbuild@0.24.0):
dependencies:
@@ -22478,11 +23331,11 @@ snapshots:
caniuse-api@3.0.0:
dependencies:
browserslist: 4.24.2
- caniuse-lite: 1.0.30001683
+ caniuse-lite: 1.0.30001684
lodash.memoize: 4.1.2
lodash.uniq: 4.5.0
- caniuse-lite@1.0.30001683: {}
+ caniuse-lite@1.0.30001684: {}
canvas@2.11.2(encoding@0.1.13):
dependencies:
@@ -22619,10 +23472,28 @@ snapshots:
ci-info@4.1.0: {}
+ cipher-base@1.0.5:
+ dependencies:
+ inherits: 2.0.4
+ safe-buffer: 5.2.1
+
citty@0.1.6:
dependencies:
consola: 3.2.3
+ cive@0.7.1(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10):
+ dependencies:
+ '@noble/curves': 1.7.0
+ '@noble/hashes': 1.6.1
+ '@scure/bip32': 1.6.0
+ '@scure/bip39': 1.5.0
+ viem: 2.21.50(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10)(zod@3.23.8)
+ zod: 3.23.8
+ transitivePeerDependencies:
+ - bufferutil
+ - typescript
+ - utf-8-validate
+
cjs-module-lexer@1.4.1: {}
class-variance-authority@0.7.0:
@@ -22708,6 +23579,8 @@ snapshots:
clsx@2.1.0: {}
+ clsx@2.1.1: {}
+
cmake-js@7.3.0:
dependencies:
axios: 1.7.7(debug@4.3.7)
@@ -23034,14 +23907,13 @@ snapshots:
optionalDependencies:
typescript: 5.6.3
- cosmiconfig@9.0.0(typescript@5.6.3):
+ create-hash@1.2.0:
dependencies:
- env-paths: 2.2.1
- import-fresh: 3.3.0
- js-yaml: 4.1.0
- parse-json: 5.2.0
- optionalDependencies:
- typescript: 5.6.3
+ cipher-base: 1.0.5
+ inherits: 2.0.4
+ md5.js: 1.3.5
+ ripemd160: 2.0.2
+ sha.js: 2.4.11
create-jest@29.7.0(@types/node@22.8.4)(ts-node@10.9.2(@swc/core@1.9.3(@swc/helpers@0.5.15))(@types/node@22.8.4)(typescript@5.6.3)):
dependencies:
@@ -23278,6 +24150,8 @@ snapshots:
csstype@3.1.3: {}
+ csv-parse@5.6.0: {}
+
csv-writer@1.6.0: {}
culvert@0.1.2: {}
@@ -23641,6 +24515,8 @@ snapshots:
detect-newline@3.1.0: {}
+ detect-node-es@1.1.0: {}
+
detect-node@2.1.0: {}
detect-port-alt@1.1.6:
@@ -23765,7 +24641,9 @@ snapshots:
dompurify@3.1.6: {}
- dompurify@3.2.0: {}
+ dompurify@3.2.1:
+ optionalDependencies:
+ '@types/trusted-types': 2.0.7
domutils@2.8.0:
dependencies:
@@ -23875,6 +24753,16 @@ snapshots:
electron-to-chromium@1.5.64: {}
+ elliptic@6.6.1:
+ dependencies:
+ bn.js: 4.12.1
+ brorand: 1.1.0
+ hash.js: 1.1.7
+ hmac-drbg: 1.0.1
+ inherits: 2.0.4
+ minimalistic-assert: 1.0.1
+ minimalistic-crypto-utils: 1.0.1
+
emittery@0.13.1: {}
emoji-regex-xs@1.0.0: {}
@@ -24406,7 +25294,7 @@ snapshots:
extract-zip@2.0.1:
dependencies:
- debug: 4.3.7(supports-color@5.5.0)
+ debug: 4.3.4
get-stream: 5.2.0
yauzl: 2.10.0
optionalDependencies:
@@ -24773,6 +25661,8 @@ snapshots:
has-symbols: 1.0.3
hasown: 2.0.2
+ get-nonce@1.0.1: {}
+
get-own-enumerable-property-symbols@3.0.2: {}
get-package-type@0.1.0: {}
@@ -24965,7 +25855,7 @@ snapshots:
globals@14.0.0: {}
- globals@15.12.0: {}
+ globals@15.11.0: {}
globby@11.1.0:
dependencies:
@@ -25090,6 +25980,17 @@ snapshots:
has-yarn@3.0.0: {}
+ hash-base@3.1.0:
+ dependencies:
+ inherits: 2.0.4
+ readable-stream: 3.6.2
+ safe-buffer: 5.2.1
+
+ hash.js@1.1.7:
+ dependencies:
+ inherits: 2.0.4
+ minimalistic-assert: 1.0.1
+
hasown@2.0.2:
dependencies:
function-bind: 1.1.2
@@ -25265,6 +26166,12 @@ snapshots:
tiny-warning: 1.0.3
value-equal: 1.0.1
+ hmac-drbg@1.0.1:
+ dependencies:
+ hash.js: 1.1.7
+ minimalistic-assert: 1.0.1
+ minimalistic-crypto-utils: 1.0.1
+
hogan.js@3.0.2:
dependencies:
mkdirp: 0.3.0
@@ -25604,7 +26511,7 @@ snapshots:
stdout-update: 4.0.1
strip-ansi: 7.1.0
optionalDependencies:
- '@reflink/reflink': 0.1.16
+ '@reflink/reflink': 0.1.17
is-alphabetical@2.0.1: {}
@@ -25710,6 +26617,8 @@ snapshots:
is-regexp@1.0.0: {}
+ is-retry-allowed@2.2.0: {}
+
is-root@2.1.0: {}
is-ssh@1.4.0:
@@ -25776,6 +26685,10 @@ snapshots:
dependencies:
ws: 7.5.10(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@5.0.10)):
+ dependencies:
+ ws: 8.18.0(bufferutil@4.0.8)(utf-8-validate@5.0.10)
+
isstream@0.1.2: {}
istanbul-lib-coverage@3.2.2: {}
@@ -26442,13 +27355,13 @@ snapshots:
leac@0.6.0: {}
- lerna@8.1.9(@swc/core@1.9.3(@swc/helpers@0.5.15))(encoding@0.1.13):
+ lerna@8.1.5(@swc/core@1.9.3(@swc/helpers@0.5.15))(encoding@0.1.13):
dependencies:
- '@lerna/create': 8.1.9(@swc/core@1.9.3(@swc/helpers@0.5.15))(encoding@0.1.13)(typescript@5.6.3)
- '@npmcli/arborist': 7.5.4
+ '@lerna/create': 8.1.5(@swc/core@1.9.3(@swc/helpers@0.5.15))(encoding@0.1.13)(typescript@5.6.3)
+ '@npmcli/arborist': 7.5.3
'@npmcli/package-json': 5.2.0
'@npmcli/run-script': 8.1.0
- '@nx/devkit': 20.1.3(nx@20.1.3(@swc/core@1.9.3(@swc/helpers@0.5.15)))
+ '@nx/devkit': 19.8.12(nx@19.8.12(@swc/core@1.9.3(@swc/helpers@0.5.15)))
'@octokit/plugin-enterprise-rest': 6.0.1
'@octokit/rest': 19.0.11(encoding@0.1.13)
aproba: 2.0.0
@@ -26462,7 +27375,7 @@ snapshots:
conventional-changelog-angular: 7.0.0
conventional-changelog-core: 5.0.1
conventional-recommended-bump: 7.0.1
- cosmiconfig: 9.0.0(typescript@5.6.3)
+ cosmiconfig: 8.3.6(typescript@5.6.3)
dedent: 1.5.3
envinfo: 7.13.0
execa: 5.0.0
@@ -26493,7 +27406,7 @@ snapshots:
npm-package-arg: 11.0.2
npm-packlist: 8.0.2
npm-registry-fetch: 17.1.0
- nx: 20.1.3(@swc/core@1.9.3(@swc/helpers@0.5.15))
+ nx: 19.8.12(@swc/core@1.9.3(@swc/helpers@0.5.15))
p-map: 4.0.0
p-map-series: 2.1.0
p-pipe: 3.1.0
@@ -26510,8 +27423,6 @@ snapshots:
signal-exit: 3.0.7
slash: 3.0.0
ssri: 10.0.6
- string-width: 4.2.3
- strip-ansi: 6.0.1
strong-log-transformer: 2.1.0
tar: 6.2.1
temp-dir: 1.0.0
@@ -26846,6 +27757,12 @@ snapshots:
md4w@0.2.6: {}
+ md5.js@1.3.5:
+ dependencies:
+ hash-base: 3.1.0
+ inherits: 2.0.4
+ safe-buffer: 5.2.1
+
mdast-util-directive@3.0.0:
dependencies:
'@types/mdast': 4.0.4
@@ -27489,6 +28406,8 @@ snapshots:
minimalistic-assert@1.0.1: {}
+ minimalistic-crypto-utils@1.0.1: {}
+
minimatch@10.0.1:
dependencies:
brace-expansion: 2.0.1
@@ -27727,6 +28646,8 @@ snapshots:
dependencies:
semver: 7.6.3
+ node-addon-api@5.1.0: {}
+
node-addon-api@6.1.0: {}
node-addon-api@7.1.1: {}
@@ -27766,8 +28687,7 @@ snapshots:
node-forge@1.3.1: {}
- node-gyp-build@4.8.4:
- optional: true
+ node-gyp-build@4.8.4: {}
node-gyp@10.2.0:
dependencies:
@@ -27786,6 +28706,18 @@ snapshots:
node-int64@0.4.0: {}
+ node-jose@2.2.0:
+ dependencies:
+ base64url: 3.0.1
+ buffer: 6.0.3
+ es6-promise: 4.2.8
+ lodash: 4.17.21
+ long: 5.2.3
+ node-forge: 1.3.1
+ pako: 2.1.0
+ process: 0.11.10
+ uuid: 9.0.1
+
node-llama-cpp@3.1.1(typescript@5.6.3):
dependencies:
'@huggingface/jinja': 0.3.2
@@ -27978,11 +28910,12 @@ snapshots:
nwsapi@2.2.13: {}
- nx@20.1.3(@swc/core@1.9.3(@swc/helpers@0.5.15)):
+ nx@19.8.12(@swc/core@1.9.3(@swc/helpers@0.5.15)):
dependencies:
'@napi-rs/wasm-runtime': 0.2.4
+ '@nrwl/tao': 19.8.12(@swc/core@1.9.3(@swc/helpers@0.5.15))
'@yarnpkg/lockfile': 1.1.0
- '@yarnpkg/parsers': 3.0.2
+ '@yarnpkg/parsers': 3.0.0-rc.46
'@zkochan/js-yaml': 0.0.7
axios: 1.7.7(debug@4.3.7)
chalk: 4.1.0
@@ -28006,6 +28939,7 @@ snapshots:
ora: 5.3.0
semver: 7.6.3
string-width: 4.2.3
+ strong-log-transformer: 2.1.0
tar-stream: 2.2.0
tmp: 0.2.3
tsconfig-paths: 4.2.0
@@ -28013,16 +28947,16 @@ snapshots:
yargs: 17.7.2
yargs-parser: 21.1.1
optionalDependencies:
- '@nx/nx-darwin-arm64': 20.1.3
- '@nx/nx-darwin-x64': 20.1.3
- '@nx/nx-freebsd-x64': 20.1.3
- '@nx/nx-linux-arm-gnueabihf': 20.1.3
- '@nx/nx-linux-arm64-gnu': 20.1.3
- '@nx/nx-linux-arm64-musl': 20.1.3
- '@nx/nx-linux-x64-gnu': 20.1.3
- '@nx/nx-linux-x64-musl': 20.1.3
- '@nx/nx-win32-arm64-msvc': 20.1.3
- '@nx/nx-win32-x64-msvc': 20.1.3
+ '@nx/nx-darwin-arm64': 19.8.12
+ '@nx/nx-darwin-x64': 19.8.12
+ '@nx/nx-freebsd-x64': 19.8.12
+ '@nx/nx-linux-arm-gnueabihf': 19.8.12
+ '@nx/nx-linux-arm64-gnu': 19.8.12
+ '@nx/nx-linux-arm64-musl': 19.8.12
+ '@nx/nx-linux-x64-gnu': 19.8.12
+ '@nx/nx-linux-x64-musl': 19.8.12
+ '@nx/nx-win32-arm64-msvc': 19.8.12
+ '@nx/nx-win32-x64-msvc': 19.8.12
'@swc/core': 1.9.3(@swc/helpers@0.5.15)
transitivePeerDependencies:
- debug
@@ -28136,6 +29070,18 @@ 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):
+ 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)
+ transitivePeerDependencies:
+ - bufferutil
+ - debug
+ - supports-color
+ - utf-8-validate
+
open@8.4.2:
dependencies:
define-lazy-prop: 2.0.0
@@ -28188,7 +29134,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
@@ -28226,6 +29172,20 @@ snapshots:
dependencies:
'@noble/hashes': 1.5.0
+ ox@0.1.2(typescript@5.6.3)(zod@3.23.8):
+ dependencies:
+ '@adraffy/ens-normalize': 1.11.0
+ '@noble/curves': 1.7.0
+ '@noble/hashes': 1.6.1
+ '@scure/bip32': 1.6.0
+ '@scure/bip39': 1.5.0
+ abitype: 1.0.6(typescript@5.6.3)(zod@3.23.8)
+ eventemitter3: 5.0.1
+ optionalDependencies:
+ typescript: 5.6.3
+ transitivePeerDependencies:
+ - zod
+
p-cancelable@3.0.0: {}
p-finally@1.0.0: {}
@@ -28327,7 +29287,7 @@ snapshots:
registry-url: 6.0.1
semver: 7.6.3
- package-manager-detector@0.2.4: {}
+ package-manager-detector@0.2.5: {}
pacote@18.0.6:
dependencies:
@@ -28650,7 +29610,7 @@ snapshots:
- supports-color
optional: true
- pm2@5.4.2(bufferutil@4.0.8)(utf-8-validate@5.0.10):
+ pm2@5.4.3(bufferutil@4.0.8)(utf-8-validate@5.0.10):
dependencies:
'@pm2/agent': 2.0.4(bufferutil@4.0.8)(utf-8-validate@5.0.10)
'@pm2/io': 6.0.1
@@ -29394,7 +30354,7 @@ snapshots:
prism-react-renderer@2.3.1(react@18.3.1):
dependencies:
'@types/prismjs': 1.26.5
- clsx: 2.1.0
+ clsx: 2.1.1
react: 18.3.1
prismjs@1.29.0: {}
@@ -29403,6 +30363,8 @@ snapshots:
process-nextick-args@2.0.1: {}
+ process@0.11.10: {}
+
proggy@2.0.0: {}
progress@2.0.3: {}
@@ -29503,8 +30465,8 @@ snapshots:
dependencies:
'@coral-xyz/anchor': 0.30.1(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10)
'@rollup/plugin-json': 6.1.0(rollup@4.27.4)
- '@solana/spl-token': 0.4.6(@solana/web3.js@1.95.4(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.8)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)
- '@solana/web3.js': 1.95.4(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10)
+ '@solana/spl-token': 0.4.6(@solana/web3.js@1.95.5(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10))(bufferutil@4.0.8)(encoding@0.1.13)(fastestsmallesttextencoderdecoder@1.0.22)(typescript@5.6.3)(utf-8-validate@5.0.10)
+ '@solana/web3.js': 1.95.5(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10)
transitivePeerDependencies:
- bufferutil
- encoding
@@ -29722,6 +30684,25 @@ snapshots:
react-refresh@0.14.2: {}
+ react-remove-scroll-bar@2.3.6(@types/react@18.3.12)(react@18.3.1):
+ dependencies:
+ react: 18.3.1
+ react-style-singleton: 2.2.1(@types/react@18.3.12)(react@18.3.1)
+ tslib: 2.8.0
+ optionalDependencies:
+ '@types/react': 18.3.12
+
+ react-remove-scroll@2.6.0(@types/react@18.3.12)(react@18.3.1):
+ dependencies:
+ react: 18.3.1
+ react-remove-scroll-bar: 2.3.6(@types/react@18.3.12)(react@18.3.1)
+ react-style-singleton: 2.2.1(@types/react@18.3.12)(react@18.3.1)
+ tslib: 2.8.0
+ use-callback-ref: 1.3.2(@types/react@18.3.12)(react@18.3.1)
+ use-sidecar: 1.1.2(@types/react@18.3.12)(react@18.3.1)
+ optionalDependencies:
+ '@types/react': 18.3.12
+
react-router-config@5.1.1(react-router@5.3.4(react@18.3.1))(react@18.3.1):
dependencies:
'@babel/runtime': 7.26.0
@@ -29764,6 +30745,15 @@ snapshots:
'@remix-run/router': 1.15.1
react: 18.3.1
+ react-style-singleton@2.2.1(@types/react@18.3.12)(react@18.3.1):
+ dependencies:
+ get-nonce: 1.0.1
+ invariant: 2.2.4
+ react: 18.3.1
+ tslib: 2.8.0
+ optionalDependencies:
+ '@types/react': 18.3.12
+
react-waypoint@10.3.0(react@18.3.1):
dependencies:
'@babel/runtime': 7.26.0
@@ -29908,6 +30898,8 @@ snapshots:
unified: 11.0.5
vfile: 6.0.3
+ reconnecting-websocket@4.4.0: {}
+
recursive-readdir@2.2.3:
dependencies:
minimatch: 3.1.2
@@ -30171,6 +31163,11 @@ snapshots:
glob: 11.0.0
package-json-from-dist: 1.0.1
+ ripemd160@2.0.2:
+ dependencies:
+ hash-base: 3.1.0
+ inherits: 2.0.4
+
robust-predicates@3.0.2: {}
rollup-plugin-dts@6.1.1(rollup@3.29.5)(typescript@5.6.3):
@@ -30315,6 +31312,12 @@ snapshots:
search-insights@2.17.3: {}
+ secp256k1@5.0.1:
+ dependencies:
+ elliptic: 6.6.1
+ node-addon-api: 5.1.0
+ node-gyp-build: 4.8.4
+
section-matter@1.0.0:
dependencies:
extend-shallow: 2.0.1
@@ -30427,6 +31430,11 @@ snapshots:
setprototypeof@1.2.0: {}
+ sha.js@2.4.11:
+ dependencies:
+ inherits: 2.0.4
+ safe-buffer: 5.2.1
+
shallow-clone@0.1.2:
dependencies:
is-extendable: 0.1.1
@@ -31185,15 +32193,15 @@ snapshots:
tinyspy@3.0.2: {}
- tldts-core@6.1.63: {}
+ tldts-core@6.1.64: {}
- tldts-experimental@6.1.63:
+ tldts-experimental@6.1.64:
dependencies:
- tldts-core: 6.1.63
+ tldts-core: 6.1.64
- tldts@6.1.63:
+ tldts@6.1.64:
dependencies:
- tldts-core: 6.1.63
+ tldts-core: 6.1.64
tmp@0.0.33:
dependencies:
@@ -31250,7 +32258,7 @@ snapshots:
tough-cookie@5.0.0:
dependencies:
- tldts: 6.1.63
+ tldts: 6.1.64
tr46@0.0.3: {}
@@ -31276,7 +32284,7 @@ snapshots:
trough@2.2.0: {}
- ts-api-utils@1.4.0(typescript@5.6.3):
+ ts-api-utils@1.4.1(typescript@5.6.3):
dependencies:
typescript: 5.6.3
@@ -31383,6 +32391,8 @@ snapshots:
tweetnacl@0.14.5: {}
+ twitter-api-v2@1.18.2: {}
+
tx2@1.0.5:
dependencies:
json-stringify-safe: 5.0.1
@@ -31434,15 +32444,17 @@ snapshots:
typescript: 5.6.3
yaml: 2.6.1
- typescript-eslint@8.15.0(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3):
+ typeforce@1.18.0: {}
+
+ typescript-eslint@8.11.0(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3):
dependencies:
- '@typescript-eslint/eslint-plugin': 8.15.0(@typescript-eslint/parser@8.15.0(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3))(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)
- '@typescript-eslint/parser': 8.15.0(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)
- '@typescript-eslint/utils': 8.15.0(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)
- eslint: 9.13.0(jiti@2.4.0)
+ '@typescript-eslint/eslint-plugin': 8.11.0(@typescript-eslint/parser@8.11.0(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3))(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)
+ '@typescript-eslint/parser': 8.11.0(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)
+ '@typescript-eslint/utils': 8.11.0(eslint@9.13.0(jiti@2.4.0))(typescript@5.6.3)
optionalDependencies:
typescript: 5.6.3
transitivePeerDependencies:
+ - eslint
- supports-color
typescript@5.6.3: {}
@@ -31670,6 +32682,21 @@ snapshots:
querystringify: 2.2.0
requires-port: 1.0.0
+ use-callback-ref@1.3.2(@types/react@18.3.12)(react@18.3.1):
+ dependencies:
+ react: 18.3.1
+ tslib: 2.8.0
+ optionalDependencies:
+ '@types/react': 18.3.12
+
+ use-sidecar@1.1.2(@types/react@18.3.12)(react@18.3.1):
+ dependencies:
+ detect-node-es: 1.1.0
+ react: 18.3.1
+ tslib: 2.8.0
+ optionalDependencies:
+ '@types/react': 18.3.12
+
use-sync-external-store@1.2.2(react@18.3.1):
dependencies:
react: 18.3.1
@@ -31677,7 +32704,6 @@ snapshots:
utf-8-validate@5.0.10:
dependencies:
node-gyp-build: 4.8.4
- optional: true
utfstring@2.0.2: {}
@@ -31753,6 +32779,24 @@ snapshots:
'@types/unist': 3.0.3
vfile-message: 4.0.2
+ viem@2.21.50(bufferutil@4.0.8)(typescript@5.6.3)(utf-8-validate@5.0.10)(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@5.0.10))
+ 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@5.0.10)
+ optionalDependencies:
+ typescript: 5.6.3
+ transitivePeerDependencies:
+ - bufferutil
+ - utf-8-validate
+ - zod
+
vite-node@2.1.5(@types/node@22.8.4)(terser@5.36.0):
dependencies:
cac: 6.7.14
@@ -31771,19 +32815,19 @@ snapshots:
- supports-color
- terser
- vite-plugin-top-level-await@1.4.4(@swc/helpers@0.5.15)(rollup@4.27.4)(vite@5.4.11(@types/node@22.8.4)(terser@5.36.0)):
+ vite-plugin-top-level-await@1.4.4(@swc/helpers@0.5.15)(rollup@4.27.4)(vite@client+@tanstack+router-plugin+vite):
dependencies:
'@rollup/plugin-virtual': 3.0.2(rollup@4.27.4)
'@swc/core': 1.9.3(@swc/helpers@0.5.15)
uuid: 10.0.0
- vite: 5.4.11(@types/node@22.8.4)(terser@5.36.0)
+ vite: link:client/@tanstack/router-plugin/vite
transitivePeerDependencies:
- '@swc/helpers'
- rollup
- vite-plugin-wasm@3.3.0(vite@5.4.11(@types/node@22.8.4)(terser@5.36.0)):
+ vite-plugin-wasm@3.3.0(vite@client+@tanstack+router-plugin+vite):
dependencies:
- vite: 5.4.11(@types/node@22.8.4)(terser@5.36.0)
+ vite: link:client/@tanstack/router-plugin/vite
vite@5.4.11(@types/node@22.8.4)(terser@5.36.0):
dependencies:
@@ -31910,6 +32954,11 @@ snapshots:
web-streams-polyfill@4.0.0-beta.3: {}
+ webauthn-p256@0.0.10:
+ dependencies:
+ '@noble/curves': 1.7.0
+ '@noble/hashes': 1.6.1
+
webidl-conversions@3.0.1: {}
webidl-conversions@4.0.2: {}
@@ -32047,6 +33096,17 @@ snapshots:
websocket-extensions@0.1.4: {}
+ websocket@1.0.35:
+ dependencies:
+ bufferutil: 4.0.8
+ debug: 2.6.9
+ es5-ext: 0.10.64
+ typedarray-to-buffer: 3.1.5
+ utf-8-validate: 5.0.10
+ yaeti: 0.0.6
+ transitivePeerDependencies:
+ - supports-color
+
whatwg-encoding@3.1.1:
dependencies:
iconv-lite: 0.6.3
@@ -32098,6 +33158,10 @@ snapshots:
dependencies:
string-width: 5.1.2
+ wif@2.0.6:
+ dependencies:
+ bs58check: 2.1.2
+
wildcard@2.0.1: {}
word-wrap@1.2.5: {}
@@ -32209,6 +33273,8 @@ snapshots:
y18n@5.0.8: {}
+ yaeti@0.0.6: {}
+
yallist@3.1.1: {}
yallist@4.0.0: {}
diff --git a/scripts/build.sh b/scripts/build.sh
index 9fbbe5f2fb0..b66fdaf37c8 100644
--- a/scripts/build.sh
+++ b/scripts/build.sh
@@ -21,22 +21,24 @@ fi
# Define packages to build in order
PACKAGES=(
"core"
- "plugin-trustdb"
- "plugin-solana"
- "plugin-starknet"
"adapter-postgres"
"adapter-sqlite"
"adapter-sqljs"
"adapter-supabase"
+ "plugin-node"
+ "plugin-trustdb"
+ "plugin-solana"
+ "plugin-starknet"
+ "plugin-conflux"
+ "plugin-0g"
+ "plugin-bootstrap"
+ "plugin-image-generation"
+ "plugin-coinbase"
"client-auto"
"client-direct"
"client-discord"
"client-telegram"
"client-twitter"
- "plugin-node"
- "plugin-bootstrap"
- "plugin-image-generation"
- "plugin-coinbase"
)
# Build packages in specified order
diff --git a/scripts/dev.sh b/scripts/dev.sh
index e65a3eb5869..2aa7f5ecfab 100644
--- a/scripts/dev.sh
+++ b/scripts/dev.sh
@@ -1,6 +1,7 @@
echo "Passing arguments: $*"
npx concurrently --raw \
"pnpm --dir packages/core dev -- $*" \
+ "pnpm --dir client dev -- $*" \
"pnpm --dir packages/client-telegram dev -- $*" \
"pnpm --dir packages/client-discord dev -- $*" \
"pnpm --dir packages/client-twitter dev -- $*" \