diff --git a/.gitignore b/.gitignore index 10b0d89a..fa8246e7 100644 --- a/.gitignore +++ b/.gitignore @@ -27,4 +27,7 @@ yarn-error.log* .vercel next-env.d.ts .open-next -.wrangler \ No newline at end of file +.wrangler + +# this is generated by the build process +content/docs.json \ No newline at end of file diff --git a/app/(docs)/[[...slug]]/page.tsx b/app/(docs)/[[...slug]]/page.tsx index 8df95cc9..96d717cf 100644 --- a/app/(docs)/[[...slug]]/page.tsx +++ b/app/(docs)/[[...slug]]/page.tsx @@ -1,3 +1,10 @@ +import { CLICommand } from "@/components/CLICommand"; +import { CodeExample } from "@/components/CodeExample"; +import { Mermaid } from "@/components/Mermaid"; +import { Sparkle } from "@/components/Sparkle"; +import { ThemeImage } from "@/components/ThemeImage"; +import { TypingAnimation } from "@/components/TypingAnimation"; +import { XButton } from "@/components/XButton"; import { source } from "@/lib/source"; import { Popup, PopupContent, PopupTrigger } from "fumadocs-twoslash/ui"; import { Tab, Tabs } from "fumadocs-ui/components/tabs"; @@ -9,7 +16,8 @@ import { DocsTitle, } from "fumadocs-ui/page"; import { notFound } from "next/navigation"; -import { Code } from "../../../components/Code"; +import { CommunityButton } from "../../../components/Community"; +import { NavButton } from "../../../components/NavButton"; export default async function Page(props: { params: Promise<{ slug?: string[] }>; @@ -41,11 +49,38 @@ export default async function Page(props: { Popup, PopupContent, PopupTrigger, - Code, + CodeExample, + CLICommand, + CommunityButton, + Mermaid, + NavButton, + Sparkle, Tab, Tabs, + ThemeImage, + TypingAnimation, }} /> +
+

Need Help?

+

+ Join our for assistance or just to hang + with other humans building agents. +

+

+ Send us an email at{" "} + hi@agentuity.com if you'd + like to get in touch. +

+

+ Please +

+

+ If you haven't already, please{" "} + Signup for your free + account now and start building your first agent! +

+
); diff --git a/app/(docs)/layout.tsx b/app/(docs)/layout.tsx index f2194b8f..7dee80ce 100644 --- a/app/(docs)/layout.tsx +++ b/app/(docs)/layout.tsx @@ -1,38 +1,12 @@ import { baseOptions } from "@/app/layout.config"; import { source } from "@/lib/source"; import { DocsLayout } from "fumadocs-ui/layouts/notebook"; + import type { ReactNode } from "react"; -// import { RootToggle } from "fumadocs-ui/components/layout/root-toggle"; export default function Layout({ children }: { children: ReactNode }) { return ( - - // ), - // }} - > + {children} ); diff --git a/app/global.css b/app/global.css index d38e5953..0d0d3fe1 100644 --- a/app/global.css +++ b/app/global.css @@ -31,6 +31,49 @@ --color-gray-800: var(--color-zinc-800); --color-gray-900: var(--color-zinc-900); --color-gray-950: var(--color-zinc-950); + + --shadow-md: none; + + --color-fd-background: var(--color-white); + --color-fd-foreground: var(--color-cyan-900); + --color-fd-muted: var(--color-cyan-100); + --color-fd-muted-foreground: var(--color-cyan-700); + --color-fd-popover: var(--color-cyan-50); + --color-fd-popover-foreground: var(--color-cyan-900); + --color-fd-card: var(--color-white); + --color-fd-card-foreground: var(--color-cyan-900); + --color-fd-border: var(--color-gray-200); + --color-fd-primary: var(--color-cyan-700); + --color-fd-primary-foreground: var(--color-cyan-50); + --color-fd-secondary: var(--color-cyan-100); + --color-fd-secondary-foreground: var(--color-cyan-900); + --color-fd-accent: var(--color-cyan-100); + --color-fd-accent-foreground: var(--color-cyan-900); + --color-fd-ring: var(--color-cyan-500); +} + +.dark { + --color-fd-background: var(--color-cyan-900); + --color-fd-foreground: var(--color-white); + --color-fd-muted: var(--color-cyan-900); + --color-fd-muted-foreground: var(--color-gray-400); + --color-fd-popover: var(--color-cyan-900); + --color-fd-popover-foreground: var(--color-cyan-50); + --color-fd-card: var(--color-black); + --color-fd-card-foreground: var(--color-cyan-50); + --color-fd-border: var(--color-cyan-900); + --color-fd-primary: var(--color-cyan-200); + --color-fd-primary-foreground: var(--color-cyan-900); + --color-fd-secondary: var(--color-cyan-900); + --color-fd-secondary-foreground: var(--color-cyan-100); + --color-fd-accent: var(--color-cyan-900); + --color-fd-accent-foreground: var(--color-cyan-100); + --color-fd-ring: var(--color-cyan-300); +} + +.dark body, +.dark main { + background-color: #011; } aside [data-radix-scroll-area-viewport] button, @@ -42,11 +85,99 @@ aside [data-radix-scroll-area-viewport] a { background: #FAFAFA; } -.dark aside { - background: #18181A; +.dark aside, +.dark header { + background: #011; } .dark aside [data-radix-scroll-area-viewport] button, .dark aside [data-radix-scroll-area-viewport] a { color: #FFF; -} \ No newline at end of file +} + +/* make sure empty lines are rendered */ +code span.line:empty:before { + content: "\200b"; +} + +code span.line > span { + white-space: pre !important; +} + +.code-example > div[role="tablist"] { + background-color: #EEE; +} + +.dark .code-example > div[role="tablist"] { + background-color: #000; +} + +.mermaid .cluster rect { + fill: #FFF !important; + stroke: #099 !important; +} + +.dark .mermaid .cluster rect { + fill: #111 !important; + stroke: #099 !important; +} + +.mermaid .flowchart-link { + stroke: #999 !important; +} + +.mermaid .marker { + stroke: #999 !important; + fill: #777 !important; +} + +.mermaid rect.label-container { + fill: rgba(150, 236, 236, 0.1) !important; + stroke: #099 !important; + stroke-dasharray: 2 2 !important; +} + +.dark .mermaid .nodeLabel { + color: #FFF !important; +} + +.mermaid text.actor > tspan { + font-size: 11px; +} + +.mermaid .messageText { + font-size: 12px !important; +} + +.mermaid .messageLine0, +.mermaid .messageLine1 { + stroke: #099 !important; +} + +.prose blockquote { + border: 2px solid var(--color-cyan-600); + background-color: var(--color-cyan-50); + font-style: normal; + border-radius: 0.5rem; +} + +.dark .prose blockquote { + border: 1px solid var(--color-cyan-800); + background-color: var(--color-gray-950); +} + +.prose { + :where(blockquote p:first-of-type):not( + :where([class~="not-prose"], [class~="not-prose"] *) + )::before { + content: ""; + } +} + +.dark .prose hr { + border-color: var(--color-cyan-800); +} + +article > p { + margin-bottom: 1rem; +} diff --git a/app/layout.config.tsx b/app/layout.config.tsx index 1be660c9..27258755 100644 --- a/app/layout.config.tsx +++ b/app/layout.config.tsx @@ -1,10 +1,13 @@ import type { BaseLayoutProps } from "fumadocs-ui/layouts/shared"; +import { Github } from "lucide-react"; +import { CommunityButton } from "../components/Community"; +import { NavButton } from "../components/NavButton"; +import { XButton } from "../components/XButton"; /** * Shared layout configurations */ export const baseOptions: BaseLayoutProps = { - githubUrl: "https://github.com/agentuity", nav: { url: "/Introduction", title: ( @@ -34,43 +37,21 @@ export const baseOptions: BaseLayoutProps = { ), }, - // links: [ - // { - // text: "Documentation", - // url: "/docs", - // active: "nested-url", - // }, - // { - // type: "menu", - // text: "SDKs", - // items: [ - // { - // text: "Python", - // description: "The Python SDK for Agentuity", - // url: "/docs/sdks/python", - // // (optional) Props for Radix UI Navigation Menu item in Home Layout - // menu: { - // className: "row-span-2", - // // add banner to navigation menu card - // // can be an image or other elements - // banner:
Python based SDKs
, - // }, - // }, - // { - // text: "JavaScript", - // description: "The JavaScript SDK for Agentuity", - // url: "/docs/sdks/javascript", - // menu: { - // className: "row-span-2", - // banner:
JavaScript based SDKs
, - // }, - // }, - // ], - // }, - // { - // text: "API", - // url: "/docs/api", - // active: "nested-url", - // }, - // ], + links: [ + { + type: "custom", + on: "nav", + children: ( +
+ Blog + Console + + + + + +
+ ), + }, + ], }; diff --git a/app/layout.tsx b/app/layout.tsx index f709fe48..850584e3 100644 --- a/app/layout.tsx +++ b/app/layout.tsx @@ -1,17 +1,15 @@ import { RootProvider } from "fumadocs-ui/provider"; -import { Geist } from "next/font/google"; +import { GeistSans } from "geist/font/sans"; import type { ReactNode } from "react"; import "./global.css"; -const geist = Geist({ - subsets: ["latin"], -}); - export default function Layout({ children }: { children: ReactNode }) { return ( - + - {children} + + {children} + ); diff --git a/components/CLICommand.tsx b/components/CLICommand.tsx new file mode 100644 index 00000000..6dffaf04 --- /dev/null +++ b/components/CLICommand.tsx @@ -0,0 +1,22 @@ +import { CodeBlock } from "fumadocs-ui/components/codeblock"; + +export interface CLICommandProps { + command: string; + children?: React.ReactNode; +} + +export function CLICommand({ command, children }: CLICommandProps) { + return ( + + + ${" "} +
{command}
+
+ {children && ( +
+ {children} +
+ )} +
+ ); +} diff --git a/components/Code.tsx b/components/Code.tsx deleted file mode 100644 index 9a84df85..00000000 --- a/components/Code.tsx +++ /dev/null @@ -1,53 +0,0 @@ -import React from "react"; -import { CodeBlock, Pre } from "fumadocs-ui/components/codeblock"; -import { transformerTwoslash } from "fumadocs-twoslash"; -import { Popup, PopupContent, PopupTrigger } from "fumadocs-twoslash/ui"; -import { getSingletonHighlighter, bundledLanguages } from "shiki"; -import { toJsxRuntime } from "hast-util-to-jsx-runtime"; -import { Fragment, jsx, jsxs } from "react/jsx-runtime"; - -export async function Code({ - code, - lang = "ts", -}: { - lang?: string; - code: string; -}) { - const highlighter = await getSingletonHighlighter({ - langs: Object.keys(bundledLanguages), - themes: ["vesper"], - }); - - const hast = highlighter.codeToHast(code, { - lang, - themes: { - light: "vesper", - dark: "vesper", - }, - defaultColor: false, - transformers: [ - transformerTwoslash({ - explicitTrigger: false, - }), - ], - }); - - const rendered = toJsxRuntime(hast, { - Fragment, - jsx, - jsxs, - development: false, - components: { - pre: (props) => ( - -
{props.children}
-
- ), - Popup, - PopupContent, - PopupTrigger, - }, - }); - - return rendered; -} diff --git a/components/CodeExample.tsx b/components/CodeExample.tsx new file mode 100644 index 00000000..4c73d6d8 --- /dev/null +++ b/components/CodeExample.tsx @@ -0,0 +1,25 @@ +import { Tab, Tabs } from "fumadocs-ui/components/tabs"; +import { DynamicCodeBlock } from "fumadocs-ui/components/dynamic-codeblock"; + +interface CodeExampleProps { + py: string; + js: string; +} + +export function CodeExample({ py, js }: CodeExampleProps) { + return ( + + + + + + + + + ); +} diff --git a/components/Community.tsx b/components/Community.tsx new file mode 100644 index 00000000..6219f971 --- /dev/null +++ b/components/Community.tsx @@ -0,0 +1,28 @@ +import { NavButton, type NavButtonProps } from "./NavButton"; + +export function CommunityButton( + props?: Omit, +) { + return ( + + + Discord + + + Community + + ); +} diff --git a/components/Mermaid.tsx b/components/Mermaid.tsx new file mode 100644 index 00000000..03e658fb --- /dev/null +++ b/components/Mermaid.tsx @@ -0,0 +1,58 @@ +"use client"; + +import { useEffect, useId, useRef, useState } from "react"; +import { useTheme } from "next-themes"; + +export function Mermaid({ chart }: { chart: string }) { + const id = useId(); + const [svg, setSvg] = useState(""); + const containerRef = useRef(null); + const currentChartRef = useRef(null); + const { theme, resolvedTheme } = useTheme(); + + useEffect(() => { + const container = containerRef.current; + if (!container) return; + currentChartRef.current = chart; + + async function renderChart() { + const { default: mermaid } = await import("mermaid"); + const _theme = + theme === "dark" || (theme === "system" && resolvedTheme === "dark") + ? "dark" + : "neutral"; + + try { + mermaid.initialize({ + startOnLoad: false, + securityLevel: "loose", + fontFamily: "inherit", + themeCSS: "margin: 1.5rem auto 0;", + theme: _theme, + darkMode: _theme === "dark", + }); + const { svg, bindFunctions } = await mermaid.render( + id, + chart.replaceAll("\\n", "\n"), + ); + + // biome-ignore lint/style/noNonNullAssertion: + bindFunctions?.(container!); + setSvg(svg); + } catch (error) { + console.error("Error while rendering mermaid", error); + } + } + + void renderChart(); + }, [chart, id, resolvedTheme, theme]); + + return ( +
+ dangerouslySetInnerHTML={{ __html: svg }} + className="mermaid" + /> + ); +} diff --git a/components/NavButton.tsx b/components/NavButton.tsx new file mode 100644 index 00000000..a1862b81 --- /dev/null +++ b/components/NavButton.tsx @@ -0,0 +1,29 @@ +import { cn } from "fumadocs-ui/utils/cn"; + +export interface NavButtonProps { + href: string; + children: React.ReactNode; + noBorder?: boolean; + className?: string; +} +export function NavButton({ + href, + children, + className, + noBorder = false, +}: NavButtonProps) { + return ( + + {children} + + ); +} diff --git a/components/Sparkle.tsx b/components/Sparkle.tsx new file mode 100644 index 00000000..e3b5096d --- /dev/null +++ b/components/Sparkle.tsx @@ -0,0 +1,24 @@ +export function Sparkle() { + return ( + + Sparkle + + + + + + + ); +} diff --git a/components/ThemeImage.tsx b/components/ThemeImage.tsx new file mode 100644 index 00000000..e18f5430 --- /dev/null +++ b/components/ThemeImage.tsx @@ -0,0 +1,42 @@ +/* eslint-disable @next/next/no-img-element */ +"use client"; +import { useTheme } from "next-themes"; +import { useEffect, useState } from "react"; +import ImageZoom from "react-medium-image-zoom"; +import "react-medium-image-zoom/dist/styles.css"; + +const placeholder = + "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"; + +export function ThemeImage({ + baseName, + alt, + width = 3680, + height = 2382, +}: { baseName: string; alt: string; width: number; height: number }) { + const { theme, resolvedTheme } = useTheme(); + const [loaded, setLoaded] = useState(false); + const [src, setSrc] = useState(null); + + useEffect(() => { + setLoaded(true); + }, []); + + useEffect(() => { + if (theme === "dark" || (theme === "system" && resolvedTheme === "dark")) { + setSrc(`/images/${baseName}-dark.png`); + } else { + setSrc(`/images/${baseName}-light.png`); + } + }, [theme, resolvedTheme, baseName]); + + if (!baseName || !loaded || !src) { + return {alt}; + } + + return ( + + {alt} + + ); +} diff --git a/components/TypingAnimation.tsx b/components/TypingAnimation.tsx new file mode 100644 index 00000000..cb5495ee --- /dev/null +++ b/components/TypingAnimation.tsx @@ -0,0 +1,90 @@ +"use client"; + +import { cn } from "fumadocs-ui/utils/cn"; +import { motion, type MotionProps } from "motion/react"; +import { useEffect, useRef, useState } from "react"; + +interface TypingAnimationProps extends MotionProps { + children: string; + className?: string; + duration?: number; + delay?: number; + as?: React.ElementType; + startOnView?: boolean; +} + +export function TypingAnimation({ + children, + className, + duration = 100, + delay = 0, + as: Component = "div", + startOnView = false, + ...props +}: TypingAnimationProps) { + const MotionComponent = motion.create(Component, { + forwardMotionProps: true, + }); + + const [displayedText, setDisplayedText] = useState(""); + const [started, setStarted] = useState(false); + const elementRef = useRef(null); + + useEffect(() => { + if (!startOnView) { + const startTimeout = setTimeout(() => { + setStarted(true); + }, delay); + return () => clearTimeout(startTimeout); + } + + const observer = new IntersectionObserver( + ([entry]) => { + if (entry.isIntersecting) { + setTimeout(() => { + setStarted(true); + }, delay); + observer.disconnect(); + } + }, + { threshold: 0.1 }, + ); + + if (elementRef.current) { + observer.observe(elementRef.current); + } + + return () => observer.disconnect(); + }, [delay, startOnView]); + + useEffect(() => { + if (!started) return; + + let i = 0; + const typingEffect = setInterval(() => { + if (i < children.length) { + setDisplayedText(children.substring(0, i + 1)); + i++; + } else { + clearInterval(typingEffect); + } + }, duration); + + return () => { + clearInterval(typingEffect); + }; + }, [children, duration, started]); + + return ( + + {displayedText} + + ); +} diff --git a/components/XButton.tsx b/components/XButton.tsx new file mode 100644 index 00000000..c6126547 --- /dev/null +++ b/components/XButton.tsx @@ -0,0 +1,34 @@ +import { cn } from "fumadocs-ui/utils/cn"; +import { NavButton } from "./NavButton"; + +export function XButton({ + follow = false, + noBorder = false, + className, +}: { + follow?: boolean; + noBorder?: boolean; + className?: string; +}) { + return ( + + {follow && Follow us on} + + + ); +} diff --git a/content/CLI/agent.mdx b/content/CLI/agent.mdx index 0df1577a..1a2533bf 100644 --- a/content/CLI/agent.mdx +++ b/content/CLI/agent.mdx @@ -1,6 +1,6 @@ --- title: Agent Commands -description: Commands for managing agents in your Agentuity project +description: Commands for managing agents --- The `agent` commands allow you to create, list, delete, and manage agents in your Agentuity project. @@ -9,15 +9,11 @@ The `agent` commands allow you to create, list, delete, and manage agents in you Creates a new agent in your project. -### Aliases - -`agentuity agent new` (shortcut for `agentuity agent create`) +**Aliases:** new ### Usage -```bash -agentuity agent create [name] [description] [auth_type] -``` + **Arguments:** - `name` - The name of the agent @@ -39,26 +35,21 @@ After providing this information, the command will: ### Example -```bash -$ agentuity agent create -What should we name the agent? MyNewAgent -How should we describe what the MyNewAgent agent does? This agent processes customer support requests -✓ Agent created successfully -``` + + What should we name the agent? MyNewAgent + How should we describe what the MyNewAgent agent does? This agent processes customer support requests + ✓ Agent created successfully + ## agent list Lists all agents in your project. -### Aliases - -`agentuity agent ls` (shortcut for `agentuity agent list`) +**Aliases:** ls ### Usage -```bash -agentuity agent list -``` + **Flags:** - `-d, --dir string` - The project directory @@ -71,8 +62,7 @@ This command will display a list of all agents in your project, including: ### Example -```bash -$ agentuity agent list + src/agents ├── MyFirstAgent │ ├── ID: 3c4c0b692533d7807cf0f649ef425dfa29b58bcc99be03e208e52749107fca2e @@ -81,21 +71,17 @@ src/agents └── MyNewAgent ├── ID: 7a8b9c0d1e2f3g4h5i6j7k8l9m0n1o2p3q4r5s6t7u8v9w0x1y2z3a4b5c6d7e8f └── Description: This agent processes customer support requests -``` + ## agent delete Deletes one or more agents from your project. -### Aliases - -`agentuity agent rm` or `agentuity agent del` (shortcuts for `agentuity agent delete`) +**Aliases:** rm, del ### Usage -```bash -agentuity agent delete -``` + **Flags:** - `-d, --dir string` - The project directory @@ -108,29 +94,24 @@ This command will: ### Example -```bash -$ agentuity agent delete + Select one or more agents to delete: [ ] MyFirstAgent 3c4c0b692533d7807cf0f649ef425dfa29b58bcc99be03e208e52749107fca2e [x] MyNewAgent 7a8b9c0d1e2f3g4h5i6j7k8l9m0n1o2p3q4r5s6t7u8v9w0x1y2z3a4b5c6d7e8f Are you sure you want to delete the selected agents? This action cannot be undone. [y/N] y ✓ Agent deleted successfully -``` + ## agent apikey Gets the API key for an agent. -### Aliases - -`agentuity agent key` (shortcut for `agentuity agent apikey`) +**Aliases:** key ### Usage -```bash -agentuity agent apikey [agent_name] -``` + **Arguments:** - `agent_name` - The name or ID of the agent (optional) @@ -145,23 +126,25 @@ This command will: ### Example -```bash -# Get API key for a specific agent -$ agentuity agent apikey MyFirstAgent -Agent MyFirstAgent API key: [API KEY WILL BE DISPLAYED HERE] +Get an API key for a specific agent: + + +✓ Agent MyFirstAgent API key: apikey_1234567890abcdefghijklmnopqrstuvwxyz + + +Get an API key for an agent interactively: -# Get API key interactively -$ agentuity agent apikey + Select an Agent: -> MyFirstAgent 3c4c0b692533d7807cf0f649ef425dfa29b58bcc99be03e208e52749107fca2e - MyNewAgent 7a8b9c0d1e2f3g4h5i6j7k8l9m0n1o2p3q4r5s6t7u8v9w0x1y2z3a4b5c6d7e8f + [x] MyFirstAgent 3c4c0b692533d7807cf0f649ef425dfa29b58bcc99be03e208e52749107fca2e + [ ] MyNewAgent 7a8b9c0d1e2f3g4h5i6j7k8l9m0n1o2p3q4r5s6t7u8v9w0x1y2z3a4b5c6d7e8f -Agent MyFirstAgent API key: [API KEY WILL BE DISPLAYED HERE] -``` +✓ Agent MyFirstAgent API key: apikey_1234567890abcdefghijklmnopqrstuvwxyz + ## Global Flags These flags apply to all agent commands: -- `--config string` - Config file (default is $HOME/.config/agentuity/config.yaml) +- `--config string` - Config file (default is `$HOME/.config/agentuity/config.yaml`) - `--log-level string` - The log level to use (default "info") diff --git a/content/CLI/apikey.mdx b/content/CLI/apikey.mdx index eeae94da..2df22889 100644 --- a/content/CLI/apikey.mdx +++ b/content/CLI/apikey.mdx @@ -1,11 +1,9 @@ --- title: API Key Commands -description: Managing API keys with the Agentuity CLI +description: Commands for managing API keys --- -## Overview - -The Agentuity CLI provides commands to manage API keys for authentication with the Agentuity Cloud Platform. +The `apikey` commands allow you to create, list, delete, and manage API keys for authentication with the Agentuity Cloud Platform. ## Commands @@ -13,74 +11,66 @@ The Agentuity CLI provides commands to manage API keys for authentication with t Base command for API key management. -```bash -agentuity apikey -``` + -**Aliases:** `apikeys` +**Aliases:** apikeys **Examples:** -```bash -agentuity apikey list -agentuity apikey create -``` + + + ### apikey create Creates a new API key for use with the Agentuity Cloud Platform. -```bash -agentuity apikey create -``` + -**Aliases:** None +**Aliases:** new, add -**Examples:** -```bash -agentuity apikey create -``` +**Flags:** +- `--expires-at string` - The expiration date of the API key +- `--format string` - The format to output the API key in (default "text") +- `-h, --help` - help for create +- `-o, --org-id string` - The organization ID to associate the API key with +- `-p, --project-id string` - The project ID to associate the API key with ### apikey delete Deletes an existing API key. -```bash -agentuity apikey delete -``` + -**Aliases:** None +**Aliases:** rm, del -**Examples:** -```bash -agentuity apikey delete -``` +Specify an optional API key ID to delete a specific API key or choose from a list of API keys. ### apikey get Retrieves information about a specific API key. -```bash -agentuity apikey get -``` + **Aliases:** None -**Examples:** -```bash -agentuity apikey get -``` +Specify an optional API key ID to get a specific API key or choose from a list of API keys. + +**Flags:** +- `--format string` - The format to output the API key in (default "text") +- `-h, --help` - help for get +- `-m, --mask` - Mask the API key value ### apikey list Lists all available API keys for your account. -```bash -agentuity apikey list -``` + **Aliases:** None -**Examples:** -```bash -agentuity apikey list -``` +**Flags:** +- `--format string` - The format to output the API key in (default "text") +- `-h, --help` - help for list +- `-m, --mask` - Mask the API key value +- `-o, --org-id string` - The organization ID to filter by +- `-p, --project-id string` - The project ID to filter by \ No newline at end of file diff --git a/content/CLI/auth.mdx b/content/CLI/auth.mdx index dd5c2ed2..563633e0 100644 --- a/content/CLI/auth.mdx +++ b/content/CLI/auth.mdx @@ -1,6 +1,6 @@ --- title: Authentication Commands -description: Commands for authenticating with the Agentuity Cloud Platform +description: Commands for authenticating with Agentuity --- The `auth` commands allow you to authenticate with the Agentuity Cloud Platform, manage your login session, and check your authentication status. @@ -9,73 +9,60 @@ The `auth` commands allow you to authenticate with the Agentuity Cloud Platform, Logs you into the Agentuity Cloud Platform. -### Aliases - -`agentuity login` (shortcut for `agentuity auth login`) +**Aliases:** login ### Usage -```bash -agentuity auth login -``` + + +This command will print out a one-time code and a link to a URL where you can log in to your Agentuity account and provide the one-time code. -This command will print out a one-time code and open a browser window where you can log in to your Agentuity account and provide the one-time code. After successful authentication, your credentials will be stored locally for future use. By default, the credentials and other configuration are stored in the following file: `$HOME/.config/agentuity/config.json`. +After successful authentication, your credentials will be stored locally for future use. By default, the credentials and other configuration are stored in the following file: `$HOME/.config/agentuity/config.yaml`. ### Example -```bash -$ agentuity auth login + ✓ You are now logged in -``` + ## auth logout Logs you out of the Agentuity Cloud Platform. -### Aliases - -`agentuity logout` (shortcut for `agentuity auth logout`) +**Aliases:** logout ### Usage -```bash -agentuity auth logout -``` + This command will remove your stored credentials. ### Example -```bash -$ agentuity auth logout + ✓ You have been logged out -``` + ## auth whoami Displays information about the currently logged-in user. -### Aliases - -`agentuity whoami` (shortcut for `agentuity auth whoami`) +**Aliases:** whoami ### Usage -```bash -agentuity auth whoami -``` + ### Example -```bash -$ agentuity auth whoami + ╭──────────────────────────────────────────────────────────────────────────────────╮ │ │ │ Currently logged in as │ │ │ -│ Name: Jeff Haynie user_xsjDaYg0UsTcARJWa1BI5irsoB7 │ +│ Name: Your Name user_0123456789abcedefghijklmnop │ │ │ -│ Organization: Jeff Team org_xsjDbpem0VT7QA9DupHGdE72HLQ │ +│ Organization: Your Organization org_0123456789abcdefghijklmnopq │ │ │ ╰──────────────────────────────────────────────────────────────────────────────────╯ -``` + diff --git a/content/CLI/bundle.mdx b/content/CLI/bundle.mdx index 82b11c18..f81a64c2 100644 --- a/content/CLI/bundle.mdx +++ b/content/CLI/bundle.mdx @@ -1,6 +1,6 @@ --- title: Bundle Command -description: Command for bundling Agentuity projects for deployment +description: Command for bundling agents for deployment --- The `bundle` command allows you to create a bundled version of your Agentuity project for deployment. @@ -9,22 +9,17 @@ The `bundle` command allows you to create a bundled version of your Agentuity pr Runs the build bundle process for an Agentuity project. -### Aliases - -`agentuity build` (shortcut for `agentuity bundle`) +**Aliases:** build ### Usage -```bash -agentuity bundle [flags] -``` - -### Flags - -| Flag | Description | -| ---- | ----------- | -| `--dir`, `-d` | The directory of the project to bundle | -| `--production`, `-p` | Bundle the project for production deployment | + +**Flags:** +- `--deploy` - Whether to deploy after bundling +- `-d, --dir string` - The directory to the project (default ".") +- `-h, --help` - help for bundle +- `-i, --install` - Whether to install dependencies before bundling +- `-p, --production` - Whether to bundle for production -> You generally don't need to use this command as it is automatically called when you run `agentuity dev` or `agentuity start`. \ No newline at end of file +> You generally don't need to use this command as it is automatically called when you run `agentuity dev` or `agentuity deploy`. \ No newline at end of file diff --git a/content/CLI/cloud.mdx b/content/CLI/cloud.mdx index 47d0e1e0..2f4faeb8 100644 --- a/content/CLI/cloud.mdx +++ b/content/CLI/cloud.mdx @@ -1,6 +1,6 @@ --- title: Cloud Commands -description: Commands for deploying and managing projects in the Agentuity Cloud Platform +description: Commands for deploying and managing agents --- The `cloud` commands allow you to deploy and manage your projects in the Agentuity Cloud Platform. @@ -9,65 +9,69 @@ The `cloud` commands allow you to deploy and manage your projects in the Agentui Deploys a project to the Agentuity Cloud Platform. -### Aliases - -`agentuity deploy` (shortcut for `agentuity cloud deploy`) +**Aliases:** deploy ### Usage -```bash -agentuity cloud deploy [flags] -``` - -### Flags + -| Flag | Description | -| ---- | ----------- | -| `--dir`, `-d` | The directory of the project to deploy | +Flags: +- `--description string` - Description for the deployment +- `-d, --dir string` - The directory to the project to deploy (default ".") +- `--force` - Force the processing of environment files +- `--format string` - The output format to use for results which can be either 'text' or 'json' (default "text") +- `-h, --help` - help for deploy +- `--message string` - A shorter description for the deployment +- `--org-id string` - The organization to create the project in +- `--tag stringArray` - Tag(s) to associate with this deployment (can be specified multiple times) +- `--templates-dir string` - The directory to load the templates. Defaults to loading them from the github.com/agentuity/templates repository ### Examples Deploy a project from the current directory: -```bash -$ agentuity cloud deploy + + ✓ Project deployed successfully -🚀 Your project is now live at: https://app.agentuity.com/projects/proj_123456 -``` + Deploy a project from a specific directory: -```bash -$ agentuity cloud deploy --dir ~/projects/my-project + + ✓ Project deployed successfully -🚀 Your project is now live at: https://app.agentuity.com/projects/proj_123456 -``` + + +## cloud rollback -## cloud status +Rolls back a project to a previous version. -Checks the deployment status of a project. +### Usage -### Aliases + -`agentuity status` (shortcut for `agentuity cloud status`) +Flags: +- `--delete` - Delete the deployment instead of rolling back +- `--dir string` - The directory to the project to rollback if project is not specified +- `--force` - Force the rollback or delete +- `-h, --help` - help for rollback +- `--project string` - Project to rollback a deployment +- `--tag string` - Tag of the deployment to rollback -### Usage +### Examples -```bash -agentuity cloud status [flags] -``` +Rollback the most recent deployment: -### Flags + +✓ Deployment rolled back successfully + -| Flag | Description | -| ---- | ----------- | -| `--dir`, `-d` | The directory of the project to check | +Rollback a project to a specific tag: -### Examples + +✓ Deployment rolled back successfully + + +Rollback and delete the most recent deployment: -Check the status of a project in the current directory: -```bash -$ agentuity cloud status -Project: my-project -Status: deployed -Last deployment: 2025-02-27T04:00:00Z -URL: https://app.agentuity.com/projects/proj_123456 -``` + +✓ Deployment rolled back successfully + diff --git a/content/CLI/dev.mdx b/content/CLI/dev.mdx index 1a13cbdf..32441160 100644 --- a/content/CLI/dev.mdx +++ b/content/CLI/dev.mdx @@ -1,51 +1,37 @@ --- title: Development Commands -description: Commands for local development of Agentuity projects +description: Commands for local development of agents using DevMode --- -The `dev` commands allow you to run and test your Agentuity projects locally during development. +The `dev` commands allow you to run and test your Agentuity projects locally during development using DevMode. ## dev Runs a development server for local testing and development. -### Aliases - -`agentuity run` (shortcut for `agentuity dev`) +**Aliases:** run ### Usage -```bash -agentuity dev [flags] -``` - -### Flags + -| Flag | Description | -| ---- | ----------- | -| `--dir`, `-d` | The directory of the project to run | -| `--websocket-id` | Specify a WebSocket room ID for real-time communication | +**Flags:** +- `-d, --dir string` - The directory to run the development server in (default ".") +- `-h, --help` - help for dev +- `--port int` - The port to run the development server on (uses project default if not provided) ### Examples Run a development server for a project in the current directory: -```bash -$ agentuity dev + + ✓ Development server started -🔗 Local URL: http://localhost:3000 -``` + Run a development server for a project in a specific directory: -```bash -$ agentuity dev --dir ~/projects/my-project -✓ Development server started -🔗 Local URL: http://localhost:3000 -``` -Run a development server with a specific WebSocket room ID: -```bash -$ agentuity dev --websocket-id room_123456 + ✓ Development server started -🔗 Local URL: http://localhost:3000 -🔌 WebSocket connected: room_123456 -``` + + +> See the [DevMode](/Guides/devmode) documentation for more information on how to use DevMode. \ No newline at end of file diff --git a/content/CLI/env.mdx b/content/CLI/env.mdx index 314fdac7..337fe1b1 100644 --- a/content/CLI/env.mdx +++ b/content/CLI/env.mdx @@ -1,6 +1,6 @@ --- title: Environment Commands -description: Commands for managing environment variables and secrets in Agentuity projects +description: Commands for managing environment variables and secrets --- The `env` commands allow you to manage environment variables and secrets for your Agentuity projects. @@ -11,103 +11,85 @@ Sets environment variables or secrets for a project. ### Usage -```bash -agentuity env set [key] [value] [flags] -``` + -### Aliases +**Aliases:** put, add -`agentuity set` (shortcut for `agentuity env set`) -`agentuity env add`, `agentuity env put` - -### Flags - -| Flag | Description | -| ---- | ----------- | -| `--dir`, `-d` | The directory to the project | -| `--file`, `-f` | The path to a file containing environment variables to set | -| `--secret`, `-s` | Force the value(s) to be treated as a secret | -| `--force` | Don't prompt for confirmation | +**Flags:** +- `-d, --dir string` - The directory to the project to deploy (default ".") +- `-f, --file string` - The path to a file containing environment variables to set +- `--force` - Don't prompt for confirmation +- `-h, --help` - help for set + -s, --secret Force the value(s) to be treated as a secret ### Examples Set a single environment variable: -```bash -$ agentuity env set API_KEY your-api-key + + ✓ Environment variable saved -``` + Set a secret: -```bash -$ agentuity env set --secret DB_PASSWORD your-password + + ✓ Secret saved -``` + Set environment variables from a file: -```bash -$ agentuity env set --file .env + + ✓ Environment variables and secrets saved -``` + All environment and secret values are encrypted at rest and in transit. + +Secrets are like passwords. They should be treated as such. Never share them with anyone. Never store them in a source code repository. Never store them in a file that is not encrypted. + + ## env list Lists all environment variables and secrets for a project. ### Usage -```bash -agentuity env list [flags] -``` - -### Aliases - -`agentuity list` (shortcut for `agentuity env list`) -`agentuity env ls`, `agentuity env show`, `agentuity env print` + -### Flags +**Aliases:** ls, show, print -| Flag | Description | -| ---- | ----------- | -| `--dir`, `-d` | The directory to the project | +**Flags:** +- `-d, --dir string` - The directory to the project to deploy (default ".") +- `--format string` - The format to use for the output. Can be either 'text' or 'json' (default "text") +- `-h, --help` - help for list ### Examples -```bash -$ agentuity env list + API_KEY=your-api-key DB_PASSWORD=******** -``` + ## env get Gets the value of an environment variable or secret. -### Aliases - -`agentuity get` (shortcut for `agentuity env get`) - ### Usage -```bash -agentuity env get [key] [flags] -``` + -### Flags - -| Flag | Description | -| ---- | ----------- | -| `--dir`, `-d` | The directory to the project | +**Flags:** +- `-d, --dir string` - The directory to the project to deploy (default ".") +- `--format string` - The format to use for the output. Can be either 'text' or 'json' (default "text") +- `-h, --help` - help for list ### Examples -```bash -$ agentuity env get API_KEY + your-api-key -``` + ## env delete @@ -115,32 +97,27 @@ Deletes environment variables or secrets. ### Usage -```bash -agentuity env delete [key...] [flags] -``` - -### Aliases + -`agentuity delete` (shortcut for `agentuity env delete`) -`agentuity env rm`, `agentuity env del` +**Aliases:** rm, del -### Flags - -| Flag | Description | -| ---- | ----------- | -| `--dir`, `-d` | The directory to the project | -| `--force` | Don't prompt for confirmation | +**Flags:** +- `-d, --dir string` - The directory to the project to deploy (default ".") +- `--force` - Don't prompt for confirmation +- `-h, --help` - help for delete ### Examples Delete a single environment variable: -```bash -$ agentuity env delete API_KEY + + ✓ Environment variable deleted -``` + Delete multiple environment variables: -```bash -$ agentuity env delete API_KEY DB_PASSWORD + + ✓ Environment variables and secrets deleted -``` + + +> You can also manage your environment variables and secrets in the [Console](/Cloud/api-keys). \ No newline at end of file diff --git a/content/CLI/installation.mdx b/content/CLI/installation.mdx index 550bdeed..7a26a754 100644 --- a/content/CLI/installation.mdx +++ b/content/CLI/installation.mdx @@ -1,64 +1,46 @@ --- title: Installation -description: Installation of Agentuity CLI +description: Insructions for installing the CLI --- - import { Tab, Tabs } from 'fumadocs-ui/components/tabs'; -## Installation +The Agentuity CLI is a command line tool for managing your Agentuity projects. It's a cross-platform tool that can be used on Windows (using WSL), MacOS, and Linux. - - - ### macOS Installation +### Install Script - ```bash - curl -fsS https://agentuity.sh | sh - ``` +The easiest way to install the Agentuity CLI is to use the install script. This script will automatically detect your operating system and install the appropriate version of the CLI. - ### Upgrading on macOS + - To upgrade to the latest version of the Agentuity CLI: + + The install script for Windows only works in the WSL (Windows Subsystem for Linux) environment + - ```bash - agentuity upgrade - ``` - - - ### Linux Installation + + On MacOS, if you have Homebrew installed, the install script will automatically use brew for installation. + - ```bash - curl -fsS https://agentuity.sh | sh - ``` +### Version - ### Upgrading on Linux +To print the version of the Agentuity CLI: - To upgrade to the latest version of the Agentuity CLI: + - ```bash - agentuity upgrade - ``` - - - ### Windows (WSL) Installation +You can also use the `-v` flag to print the version: - - The install script for Windows only works in the WSL (Windows Subsystem for Linux) environment.
- There is currently no support for a native Windows installer. -
+ - ```bash - curl -fsS https://agentuity.sh | sh - ``` +To check if you have the latest version of the Agentuity CLI: - ### Upgrading on Windows (WSL) + - To upgrade to the latest version of the Agentuity CLI: +### Upgrading - ```bash - agentuity upgrade - ``` -
-
+To upgrade to the latest version of the Agentuity CLI: + + + +For more details on the `version` command, see the [CLI Version Commands](/CLI/version). ## Manual Installation @@ -80,7 +62,7 @@ The Agentuity CLI provides shell completions for bash, zsh, fish, and PowerShell ### Automatic Setup When you install the CLI using the installer scripts, completions are automatically set up for: -- **Bash and Zsh** on macOS and Linux (when you have write permissions to the completion directories) +- **Bash and Zsh** on MacOS and Linux (when you have write permissions to the completion directories) ### Manual Setup @@ -90,60 +72,42 @@ You can manually set up completions for any supported shell using the `agentuity To load completions in your current bash session: - ```bash - source <(agentuity completion bash) - ``` + To load completions for every new session: For Linux: - ```bash - agentuity completion bash > /etc/bash_completion.d/agentuity - ``` + - For macOS: - ```bash - agentuity completion bash > $(brew --prefix)/etc/bash_completion.d/agentuity - ``` + For MacOS: + Note: This depends on the `bash-completion` package. If not already installed, you can install it via your OS's package manager. To load completions in your current zsh session: - ```bash - source <(agentuity completion zsh) - ``` + To load completions for every new session: For Linux: - ```bash - agentuity completion zsh > "${fpath[1]}/_agentuity" - ``` + - For macOS: - ```bash - agentuity completion zsh > $(brew --prefix)/share/zsh/site-functions/_agentuity - ``` + For MacOS: + If shell completion is not already enabled in your environment, you need to enable it: - ```bash - echo "autoload -U compinit; compinit" >> ~/.zshrc - ``` + To load completions in your current fish session: - ```bash - agentuity completion fish | source - ``` + To load completions for every new session: - ```bash - agentuity completion fish > ~/.config/fish/completions/agentuity.fish - ``` + diff --git a/content/CLI/mcp.mdx b/content/CLI/mcp.mdx index 64498031..030e3cdb 100644 --- a/content/CLI/mcp.mdx +++ b/content/CLI/mcp.mdx @@ -1,11 +1,12 @@ --- title: MCP Commands -description: Documentation for the Model Context Protocol (MCP) integration in Agentuity CLI +description: Commands for the Model Context Protocol (MCP) integration --- -## Overview +The `mcp` commands allow you to install and manage the Agentuity MCP server. The Agentuity CLI implements the Model Context Protocol (MCP), which allows integration with AI-powered code editors and tools. This integration enhances the capabilities of AI agents inside supported clients. +The MCP server is automatically installed when you install the Agentuity CLI. For more information on the MCP protocol, see [https://modelcontextprotocol.io/](https://modelcontextprotocol.io/) @@ -15,70 +16,54 @@ For more information on the MCP protocol, see [https://modelcontextprotocol.io/] The base command for all MCP-related operations. -```bash -agentuity mcp -``` + **Aliases:** None **Examples:** -```bash -agentuity mcp install -agentuity mcp uninstall -agentuity mcp list -``` + + + + ### mcp install Installs the Agentuity CLI as an MCP server, enabling integration with supported MCP clients. -```bash -agentuity mcp install -``` + -**Aliases:** `i`, `add` +**Aliases:** i, add **Examples:** -```bash -agentuity mcp install -``` + ### mcp uninstall Uninstalls the Agentuity CLI as an MCP server, removing integration with MCP clients. -```bash -agentuity mcp uninstall -``` + -**Aliases:** `rm`, `delete`, `del`, `remove` +**Aliases:** rm, delete, del, remove **Examples:** -```bash -agentuity mcp uninstall -``` + ### mcp list Lists all MCP server configurations detected on the machine, showing which clients are configured. -```bash -agentuity mcp list -``` + -**Aliases:** `ls` +**Aliases:** ls **Examples:** -```bash -agentuity mcp list -``` + + ## Manual Installation If you need to manually configure an MCP client, you can use the following command: -```bash -agentuity mcp run --stdio -``` + This command is typically used for advanced configuration scenarios. diff --git a/content/CLI/meta.json b/content/CLI/meta.json index 3fac8ac5..684e52f1 100644 --- a/content/CLI/meta.json +++ b/content/CLI/meta.json @@ -1,4 +1,4 @@ { - "title": "CLI", - "pages": ["installation", "auth", "version", "project", "agent", "env", "io", "cloud", "dev", "bundle", "mcp", "apikey"] + "title": "CLI", + "pages": ["installation", "..."] } diff --git a/content/CLI/project.mdx b/content/CLI/project.mdx index 9676b06c..4335d6ce 100644 --- a/content/CLI/project.mdx +++ b/content/CLI/project.mdx @@ -1,6 +1,6 @@ --- title: Project Commands -description: Commands for creating and managing Agentuity projects +description: Commands for creating and managing projects --- The `project` commands allow you to create and manage Agentuity projects. @@ -9,84 +9,60 @@ The `project` commands allow you to create and manage Agentuity projects. Creates a new Agentuity project. -### Aliases - -`agentuity create` (shortcut for `agentuity project create`) -`agentuity project new` +**Aliases:** create, new ### Usage -```bash -agentuity project create [name] [description] [agent-name] [agent-description] [auth-type] [flags] -``` - -### Flags + -| Flag | Description | -| ---- | ----------- | -| `--dir`, `-d` | The directory to create the project in | -| `--provider`, `-p` | The provider to use for the project | -| `--template`, `-t` | The template to use for the project | +**Flags:** +- `--action string` - The action to take for the project (github-action, github-app, none) (default "github-app") +- `--auth string` - The authentication type for the agent (project, webhook, or none) (default "project") +- `-d, --dir string` - The directory for the project +- `--force` - Force the project to be created even if the directory already exists +- `--format string` - The format to use for the output. Can be either 'text' or 'json' (default "text") +- `-h, --help` - help for create +- `--org-id string` - The organization to create the project in +- `-r, --runtime string` - The runtime to use for the project +- `-t, --template string` - The template to use for the project +- `--templates-dir string` - The directory to load the templates. Defaults to loading them from the github.com/agentuity/templates repository ### Examples Create a new project with interactive prompts: -```bash -$ agentuity project create my-project -✓ Project created successfully - -Next steps: - -1. Switch into the project directory at ~/my-project -2. Run agentuity run to run the project locally in development mode -3. Run agentuity deploy to deploy the project to the Agentuity Agent Cloud -🏠 Access your project at https://app.agentuity.com/projects/proj_123456 -``` - -Create a new project with a specific provider: -```bash -$ agentuity project create my-project --provider javascript + ✓ Project created successfully -``` + ## project list Lists all projects in your Agentuity account. -### Aliases - -`agentuity project ls` (shortcut for `agentuity project list`) +**Aliases:** ls ### Usage -```bash -agentuity project list -``` + ### Examples -```bash -$ agentuity project list + Projects: my-project (proj_123456) test-project (proj_789012) demo-app (proj_345678) -``` + ## project delete Deletes one or more projects from your Agentuity account. -### Aliases - -`agentuity project rm` or `agentuity project del` (shortcuts for `agentuity project delete`) +**Aliases**: rm, del ### Usage -```bash -agentuity project delete -``` + This command will: 1. Display a list of all projects in your account @@ -95,8 +71,7 @@ This command will: ### Examples -```bash -$ agentuity project delete + Select one or more projects to delete: [ ] my-project (proj_123456) [x] test-project (proj_789012) @@ -104,27 +79,23 @@ Select one or more projects to delete: Are you sure you want to delete the selected projects? This action cannot be undone. [y/N] y ✓ Project deleted successfully -``` + ## project import -Imports an existing project into your Agentuity account. +Imports an existing Agentuity project into your Agentuity account. ### Usage -```bash -agentuity project import [flags] -``` - -### Flags + -| Flag | Description | -| ---- | ----------- | -| `--dir`, `-d` | The directory for the project | +**Flags:** +- `-d, --dir string` - The directory for the project +- `--force` - Force the processing of environment files +- `-h, --help` - help for import ### Examples -```bash -$ agentuity project import --dir ./my-existing-project + ✓ Project imported successfully -``` + diff --git a/content/CLI/version.mdx b/content/CLI/version.mdx index 2fc8736e..16ae80fd 100644 --- a/content/CLI/version.mdx +++ b/content/CLI/version.mdx @@ -1,6 +1,6 @@ --- -title: Version Command -description: Command for checking the version of the Agentuity CLI +title: Version Commands +description: Commands for checking the version of the CLI --- The `version` command allows you to check, display, and upgrade the Agentuity CLI version. @@ -9,37 +9,29 @@ The `version` command allows you to check, display, and upgrade the Agentuity CL Displays the version of the Agentuity CLI. -### Aliases - -`agentuity -v`, `agentuity --version` (shortcuts for `agentuity version`) +**Aliases:** -v, --version ### Usage -```bash -agentuity version [flags] -``` - -### Flags + -| Flag | Description | -| ---- | ----------- | -| `--long` | Display detailed version information including commit hash and build date | +**Flags:** +- `-h, --help` - help for version +- `--long` - Print the long version ### Examples Basic version information: -```bash -$ agentuity version -1.0.0 -``` + +0.0.139 + Detailed version information: -```bash -$ agentuity version --long -Version: 1.0.0 -Commit: abc123 -Date: 2025-02-27 -``` + +Version: 0.0.139 +Commit: 1633cea4fa7c0841605f3d4d501425e4068fae79 +Date: 2025-05-24T03:41:26Z + ## check @@ -47,30 +39,25 @@ Checks if you're using the latest version of the Agentuity CLI. ### Usage -```bash -agentuity version check [flags] -``` + -### Flags - -| Flag | Description | -| ---- | ----------- | -| `--upgrade` | Upgrade to the latest version if a newer version is available | +**Flags:** +- `-h, --help` - help for check +- `--upgrade` - Upgrade to the latest version if possible ### Examples Check if you're using the latest version: -```bash -$ agentuity version check -You are using the latest version (1.0.0) of the Agentuity CLI. -``` + + + ✓ You are using the latest version (0.0.139) of the Agentuity CLI. + Check and upgrade to the latest version: -```bash -$ agentuity version check --upgrade -A new version (1.1.0) of the Agentuity CLI is available. Upgrading... -Successfully upgraded to version 1.1.0. -``` + + ✓ A new version (0.0.139) of the Agentuity CLI is available. Upgrading... + ✓ Successfully upgraded to version 0.0.139. + ## upgrade @@ -78,32 +65,28 @@ Upgrades the Agentuity CLI to the latest version. This command is also available ### Usage -```bash -agentuity version upgrade [flags] -``` + -### Flags +**Aliases:** upgrade, update -| Flag | Description | -| ---- | ----------- | -| `--force` | Force upgrade even if already on the latest version | +**Flags:** +- `--force` - Force upgrade even if already on the latest version +- `-h, --help` - help for upgrade ### Examples Upgrade to the latest version: -```bash -$ agentuity version upgrade -Checking for updates... -A new version (1.1.0) is available. Upgrading... -Creating backup of current binary... -Successfully upgraded to version 1.1.0. -``` + + ✓ Checking for updates... + ✓ A new version (0.0.139) is available. Upgrading... + ✓ Creating backup of current binary... + ✓ Successfully upgraded to version 0.0.139. + Force upgrade: -```bash -$ agentuity version upgrade --force -Creating backup of current binary... -Successfully upgraded to version 1.1.0. -``` + + ✓ Creating backup of current binary... + ✓ Successfully upgraded to version 0.0.139. + -On macOS, if the CLI was installed using Homebrew, it will use Homebrew to perform the upgrade. +> On MacOS, if the CLI was installed using Homebrew, it will use Homebrew to perform the upgrade. diff --git a/content/Changelog/cli.mdx b/content/Changelog/cli.mdx index c15953f9..5eec1be2 100644 --- a/content/Changelog/cli.mdx +++ b/content/Changelog/cli.mdx @@ -609,7 +609,7 @@ Please find all instances of AGENTUITY_API_KEY in my code and replace them with ### Changes - **Added**: Add CLI Signup Flow ([#182](https://github.com/agentuity/cli/pull/182)) -- **Fixed**: Fix macOS segfault during reinstallation ([#183](https://github.com/agentuity/cli/pull/183)) +- **Fixed**: Fix MacOS segfault during reinstallation ([#183](https://github.com/agentuity/cli/pull/183)) - **Fixed**: Smart login or setup ([#184](https://github.com/agentuity/cli/pull/184)) ## v0.0.88 diff --git a/content/Changelog/index.mdx b/content/Changelog/index.mdx index 511582de..811da137 100644 --- a/content/Changelog/index.mdx +++ b/content/Changelog/index.mdx @@ -5,8 +5,8 @@ description: Release notes and version history for Agentuity products This section contains the release notes and version history for Agentuity products: -- [CLI](/Changelog/cli) - Command Line Interface -- [JavaScript SDK](/Changelog/sdk-js) - JavaScript/TypeScript SDK -- [Python SDK](/Changelog/sdk-py) - Python SDK +- [CLI](/Changelog/cli) - Command Line Interface [GitHub](https://github.com/agentuity/cli) +- [JavaScript SDK](/Changelog/sdk-js) - JavaScript/TypeScript SDK [GitHub](https://github.com/agentuity/sdk-js) +- [Python SDK](/Changelog/sdk-py) - Python SDK [GitHub](https://github.com/agentuity/sdk-py) Each page documents the changes, improvements, and bug fixes in each release. diff --git a/content/Changelog/sdk-js.mdx b/content/Changelog/sdk-js.mdx index c42f1b6a..897e0e77 100644 --- a/content/Changelog/sdk-js.mdx +++ b/content/Changelog/sdk-js.mdx @@ -98,7 +98,6 @@ Please find all instances of AGENTUITY_API_KEY in my code and replace them with - Fixed issue with Vector get type being wrong ([PR #106](https://github.com/agentuity/sdk-js/pull/106)) - ## v0.0.113 diff --git a/content/Changelog/sdk-py.mdx b/content/Changelog/sdk-py.mdx index ae5a144c..4d0fc4cb 100644 --- a/content/Changelog/sdk-py.mdx +++ b/content/Changelog/sdk-py.mdx @@ -127,7 +127,6 @@ The breaking change is here: https://github.com/agentuity/sdk-py/pull/38 Review this PR, make a plan to change the agents to the latest agentuity SDK with async await support, and execute on it. ``` - ## v0.0.77 diff --git a/content/Cloud/agents.mdx b/content/Cloud/agents.mdx index c46194d8..98d7f0aa 100644 --- a/content/Cloud/agents.mdx +++ b/content/Cloud/agents.mdx @@ -1,44 +1,281 @@ --- -title: Agent Dashboard -description: Overview of the agent dashboard in Agentuity Cloud +title: Agents +description: The agents page is for managing your agents --- ## Agent Dashboard Overview -The agent dashboard provides a comprehensive view of your deployed agent and its performance. This page helps you monitor your agent's status, usage metrics, and recent activity. +The agent dashboard provides a list of your agents. This page helps you monitor your agent's status, usage metrics, and recent activity. -## Dashboard Sections + -### Agent Information -The top section of the dashboard displays essential information about your agent: -- Agent status (Active/Inactive) -- Creation date -- Last updated and deployment dates -- LLM models being used by the agent +### Managing an Agent -### Cost & Usage Tracking -This section provides detailed metrics about your agent's usage: -- Total cost accumulated -- LLM cost (portion of the total cost spent on language model calls) -- Input tokens processed -- Output tokens generated +You can select a specific agent to view and manage its details. The agent detail page provides a list of the agent's inputs and outputs, recent sessions and overview of costs. -### Recent Activity -The activity section shows a table of recent sessions for your agent, including: -- Session status (Pending, Completed, Error) -- Duration of each session -- Cost per session -- When the session started + -### I/O Visualization -The I/O visualization shows how your agent connects to various inputs and outputs. This visual representation helps you understand the flow of data through your agent. +### Agent Input & Output -## Calling Your Agent +Agents receive data from various sources and send data to various destinations (input and output, or we call it IO). -To call your deployed agent from external applications: + + +You can think of the agent as an intelligent black box that receives data from sources and responds with data which is sent to the configured destinations. + +Read the [Agent IO](/Guides/agent-io) guide for more information. + +You can add a new input or output by clicking the plus button in the agent IO visualization. + + + +When you agent is invoked, it will process the data and send the output to the output destination. + +The agent request object will contain a property called `trigger` that will contain the source that triggered the agent. You can use this to determine the source of the data and process it accordingly. This is particularly useful when you are using multiple sources to trigger the same agent. + + + +#### Agent Webhook Source + +To configure your agent to receive data from a webhook, you need to add a new webhook source. When receiving data from a webhook, the agent will send the data to the agent's inputs asynchronously without waiting for the agent to finish processing the data. + + + +For Webhook sources, you can require authorization to access the webhook. This is useful if you want to protect your webhook from unauthorized access. + +The following authentication methods are supported: + +| Type | Description | +|---------|-------------| +| Project | Authenticated using the project API Key | +| Public | No authentication required - webhook is publicly accessible | +| Bearer | Authenticated using Bearer Token via `Authorization: Bearer ` header | +| Basic | Authenticated using Basic Auth via `Authorization: Basic :` header | +| Header | Authenticated using custom header via `: ` header | + +When using the Bearer, Basic or Header authentication methods, you can specify the authentication values for each agent. + +To trigger a webhook using curl with a required Bearer token authentication, you can use the following command: + +' \\\n\t--json '{"some":"data"}'`} /> + + + Make sure to use the correct agent ID in the webhook URL. + + +The response from the webhook will contain an informational message if successful. Additionally, the `Location` header will contain the URL that can be used to read the agent output. This URL will block until the agent has started streaming the output response. + +#### Agent API Source + +To configure your agent to receive data as an API endpoint, you need to add a new API source. When receiving data from an API endpoint, the agent will send the data to the agent's inputs synchronously and wait for the agent to respond. + + + +For API sources, you can require authorization to access the API. This is useful if you want to protect your API from unauthorized access. + +The following authentication methods are supported: + +| Type | Description | +|---------|-------------| +| Project | Authenticated using the project API Key | +| Public | No authentication required - webhook is publicly accessible | +| Bearer | Authenticated using Bearer Token via `Authorization: Bearer ` header | +| Basic | Authenticated using Basic Auth via `Authorization: Basic :` header | +| Header | Authenticated using custom header via `: ` header | + +When using the Bearer, Basic or Header authentication methods, you can specify the authentication values for each agent. + +When you plan on using the API source, it is recommended that you stream data to and from the agent. + +To invoke an API using curl with a required Bearer token authentication, you can use the following command: + +' \\\n\t--json '{"some":"data"}'`} /> + + + Make sure to use the correct agent ID in the webhook URL. + + +#### Agent Email Source + +For Email sources, you can configure your agent at a unique agent email address. When receiving an email, the agent will send the email content to the agent's inputs asynchronously without waiting for the agent to finish processing the email. + + + + + An email source can only be triggered by an email sent to the agent's email address and not via the API. + + +The response from the API will contain an informational message if successful. Additionally, the `Location` header will contain the URL that can be used to read the agent output. This URL will block until the agent has started streaming the output response. + +#### Agent Schedule Source + +For running an agent on a schedule, you can configure your agent to use a cron source. When the agent is scheduled to run, the agent will send the data to the agent's inputs asynchronously without waiting for the agent to finish processing the data. + + + +When creating a new schedule, you can specify the cron expression to run the agent. The cron expression is a string that represents the schedule to run the agent. + +
Click the sparkle icon to help you create a new cron expression using AI.
+ +You can optionally specify a content type and payload to send to the agent when the agent is scheduled to run. + +A cron source can only be triggered internally by the Agentuity Platform and not via the API. However, you can trigger a scheduled agent to run by selecting the schedule and selecting "Manual Run" in the context menu. + + + +### Agent Deployments + +Agentuity supports continuous deployment using a native GitHub App integration and a GitHub Actions workflow. + +#### GitHub App Integration + +The GitHub App integration is a native integration that allows you to deploy your agents to the Agentuity Platform from your GitHub repository. + +To enable the GitHub App integration, you need to provide permission for Agentuity to access your GitHub account. On your Project Settings page, you can find the GitHub App integration. + + + +Once connected, each Project can be configured to deploy from a specific GitHub repository automatically. + + + +When a new commit is pushed to the repository, the GitHub Actions workflow will be triggered and the agent will be deployed to the Agentuity Platform. + + + +You can select a specific deployment to view the deployment details including logs. + + + +When using GitHub to deploy (either the GitHub App or the GitHub Actions workflow), your GitHub commit information will be displayed in the deployment details. + +You can see all the projects that are connected to your GitHub account in the Settings > Integrations section. + + + +From here you can disconnect a specific project from your GitHub account or disconnect Agentuity from your GitHub account. + +#### GitHub Actions Workflow + +The GitHub Actions workflow is a native integration that allows you to deploy your agents to the Agentuity Platform from your GitHub repository using GitHub Actions. + +You can install the GitHub Actions workflow by visiting the [Agentuity GitHub Actions Marketplace](https://github.com/marketplace/actions/agentuity-deploy-action) and clicking the "Install" button. + + + +You can also directly use the [Agentuity GitHub Actions](https://github.com/agentuity/deploy-action) repository to deploy your agents to the Agentuity Platform. + +#### Manual Deployment + +You can also manually deploy your agents to the Agentuity Platform with the CLI using the following command: + + + +By default, the CLI will use the `latest` tag to deploy your agents. You can specify one or more tags to deploy by using the `--tag` flag. The active deployment will only be used for agent requests based on the `latest` tag. + +You can test new versions of your agents by using the `--tag` flag to specify a specific tag and then using the tag in either the `webhook` or `api` source. + +For example, if you have a tag called `v1.0.0`, you can use the following command to deploy it: + + + +This will tag the deployment with the `v1.0.0` tag but not make it the active deployment. + +You can the invoke the agent with the `v1.0.0` tag by using curl with the following command: + +' \\\n\t--json '{"some":"data"}'`} /> + + + Make sure to use the correct agent ID and tag in the API URL. Also, make sure to use the correct authentication token and that you have configured the API source. + + +#### Rollback & Delete + +You can rollback to a previous deployment by using the CLI with the following command: + + + +If you would like to delete the deployment in addition to rolling back, you can use the `--delete` flag. + + + +You can select a specific deployment: + + + +### Agent Logs + +You can view the logs for a specific agent by selecting the agent and then clicking the "Logs" tab. + + + +If you select a specific log, you can view the log detail for the specific log entry. + + + +### Agent Sessions + +The sessions dashboard provides a list of your agent sessions. This page helps you monitor your agent's status, usage metrics, and recent activity. + + + +If you select a specific session, you can view the session detail for the specific session. + + + +If you select a specific span, a session span trace detail will be displayed with specific detail about the execution of the span. + + + +## CLI + +You can use the CLI to manage your agents using the following command: + + + +See the [CLI documentation](/CLI/agent) for more information on specific command usage and flags. \ No newline at end of file diff --git a/content/Cloud/aigateway.mdx b/content/Cloud/aigateway.mdx new file mode 100644 index 00000000..b0744516 --- /dev/null +++ b/content/Cloud/aigateway.mdx @@ -0,0 +1,44 @@ +--- +title: AI Gateway +description: The AI Gateway page is for understanding your AI Gateway usage +--- + +## Understanding the AI Gateway + + + +## Viewing Your Session Usage + +When you navigate to the AI Gateway > Sessions page in the Cloud Console, you'll see a table listing all your sessions with the following information: + +- **Agent**: The name of your agent +- **Provider**: The AI provider used for the session +- **Model**: The model used for the session +- **LLM Cost**: The cost of the LLM used for the session +- **Timestamp**: The session timestamp + +You can filter the list of sessions using the search box at the top of the table to quickly find specific sessions or filter by properties such as provider. + +## Session Detail + +You can select a key value instance to view and manage its data. + + + +## AI Gateway Usage + +By default, when your agent is not configured to use a specific AI provider using the override, it will use the AI Gateway to route requests to the appropriate providers automatically. + +To override using the AI Gateway, use the AI provider specific environment variables to configure them. + +For example, to use the OpenAI API and use your own API key, you can set the provider API Gateway in the `.env` file of your agent project: + +``` +OPENAI_API_KEY=your-api-key +``` + +When you deploy your agent project, your agent will use the OpenAI API directly instead of the AI Gateway. + + +Each AI Provider uses their own API Key and configuration. Please consult the documentation for your specific provider to learn how to set up the API Key. + diff --git a/content/Cloud/api-keys.mdx b/content/Cloud/api-keys.mdx index 5126cad1..ab10a01d 100644 --- a/content/Cloud/api-keys.mdx +++ b/content/Cloud/api-keys.mdx @@ -1,6 +1,6 @@ --- -title: API Keys Management -description: Learn how to create, view, and manage API keys in the Agentuity Cloud Console +title: API Keys +description: The API Keys page is for managing your API keys --- ## Viewing Your API Keys @@ -13,6 +13,8 @@ When you navigate to the API Keys page in the Cloud Console (under Settings), yo - **Last Used**: When the API key was last used - **Owner**: The user who created the API key + + ## Creating a New API Key To create a new API key: @@ -26,3 +28,13 @@ To create a new API key: 5. **Important**: Copy the API key value immediately, as it will only be shown once Note: An API key is automatically created when you create a new project. You can view and manage this key in the API Keys page. + + + +## CLI + +You can use the CLI to manage your API keys using the following command: + + + +See the [CLI documentation](/CLI/apikey) for more information on specific command usage and flags. \ No newline at end of file diff --git a/content/Cloud/index.mdx b/content/Cloud/index.mdx index 199e6aec..87e5803f 100644 --- a/content/Cloud/index.mdx +++ b/content/Cloud/index.mdx @@ -1,40 +1,28 @@ --- -title: Cloud Console Overview +title: Overview description: Introduction to the Agentuity Cloud Console and its features --- The Agentuity Cloud Console is a web-based interface for managing your Agentuity resources, projects, and settings. This guide provides an overview of the main features and functionality available in the Cloud Console. -- Create and manage projects -- Configure settings and API keys -- Manage memory storage (Vector and Key-Value) -- Monitor agent deployments and runs -- View logs and telemetry data +- Create and manage projects via the [Project Dashboard](/Cloud/project) +- Configure settings and API keys [API Keys](/Cloud/api-keys) +- Manage agentic services ([Vector](/Cloud/vector-memory), [Key-Value](/Cloud/key-value-memory), and [AI Gateway](/Cloud/aigateway)) +- Monitor agent deployments and runs via the [Agent Dashboard](/Cloud/agents) +- View logs and telemetry data via the [Sessions](/Cloud/sessions) -## Console Sections +### Agentic Services -### Projects - -- Project creation and configuration -- Resource usage monitoring -- Agent management -- Run tracking -- Deployment management -- Project settings - -### Memory Storage - -The Memory Storage section provides tools for managing different types of memory storage: +The Services section provides tools for managing different types of agentic services: - **[Vector Memory Storage](/Cloud/vector-memory)**: For semantic search and large context windows, ideal for knowledge bases and historical data -- **Key-Value Storage**: For fast, simple, or temporary data storage - -Learn more in the [Vector Memory Storage documentation](/Cloud/vector-memory) or [Key-Value Storage documentation](/Cloud/key-value-memory). +- **[Key Value Storage](/Cloud/key-value-memory)**: For fast, simple, or temporary data storage or caching +- **[AI Gateway](/Cloud/aigateway)**: For managing access to various AI models and their usage and billing ### Settings and Configuration The Settings section allows you to manage various configuration options: - **[API Keys](/Cloud/api-keys)**: Create and manage API keys for authenticating with Agentuity services -- **Organization Settings**: Manage organization details and members +- **[Organization Settings](/Cloud/organization)**: Manage organization details and members - **User Profile**: Update your user profile and preferences diff --git a/content/Cloud/key-value-memory.mdx b/content/Cloud/key-value-memory.mdx index 375246cd..92811064 100644 --- a/content/Cloud/key-value-memory.mdx +++ b/content/Cloud/key-value-memory.mdx @@ -1,11 +1,11 @@ --- -title: Key-Value Memory Storage -description: Learn how to create, view, and manage key-value memory storage in the Agentuity Cloud Console +title: Key Value Storage +description: The Key Value Storage page is for managing your key value memory storage --- -## Understanding Key-Value Memory Storage +## Understanding Key Value Storage -Key-value memory storage is designed for fast, simple, or temporary data storage, making it ideal for: +Key value memory storage is designed for fast, simple, or temporary data storage, making it ideal for: - Session data - Configuration settings @@ -14,18 +14,28 @@ Key-value memory storage is designed for fast, simple, or temporary data storage - Simple data structures - Sharing state between agents -## Viewing Your Key-Value Instances + -When you navigate to the Memory > Key-Value page in the Cloud Console, you'll see a table listing all your key-value instances with the following information: +## Viewing Your Key Value Instances -- **Name**: The name of your key-value instance -- **Size**: The storage size used by the key-value instance +When you navigate to the Memory > Key Value page in the Cloud Console, you'll see a table listing all your key value instances with the following information: -You can filter the list of key-value instances using the search box at the top of the table to quickly find specific instances by name. +- **Name**: The name of your key value instance +- **Size**: The storage size used by the key value instance -## Creating a New Key-Value Instance +You can filter the list of key value instances using the search box at the top of the table to quickly find specific instances by name. -There are two ways to create a new key-value instance: +## View Key Value Data -1. From the Memory > Key-Value page in the Cloud Console +You can select a key value instance to view and manage its data. + + + +## Creating a New Key Value Instance + +There are two ways to create a new key value instance: + +1. From the Services > Key Value page in the Cloud Console 2. In code, using the Agentuity SDK + + \ No newline at end of file diff --git a/content/Cloud/meta.json b/content/Cloud/meta.json new file mode 100644 index 00000000..98a6a51b --- /dev/null +++ b/content/Cloud/meta.json @@ -0,0 +1,12 @@ +{ + "title": "Console", + "pages": [ + "index", + "project", + "agents", + "vector-memory", + "key-value-memory", + "ai-gateway", + "settings" + ] +} diff --git a/content/Cloud/organization.mdx b/content/Cloud/organization.mdx new file mode 100644 index 00000000..b8c03074 --- /dev/null +++ b/content/Cloud/organization.mdx @@ -0,0 +1,10 @@ +--- +title: Organization Settings +description: The organization settings page allows you to manage members. +--- + +## Organization Settings + +The Organization Settings page is used to manage your organization members, verified domain and your organization settings. + + diff --git a/content/Cloud/project.mdx b/content/Cloud/project.mdx new file mode 100644 index 00000000..5f1c3c7c --- /dev/null +++ b/content/Cloud/project.mdx @@ -0,0 +1,61 @@ +--- +title: Projects +description: The projects page is for managing your agent projects +--- + +## Projects Overview + +The project dashboard provides a list of your agent projects. This page helps you monitor your projects' status, usage metrics, and recent activity. + + + +### Project Settings + +#### Environment Variables & Secrets + +You can manage environment variables and secrets for your project in the Project > Settings page. + + + +In addition to environment variables, you can also view your Project API Key and the SDK Key. + +You can also manage your environment variables and secrets from the CLI using the following command: + + + +Use `--help` to see other options. + +You can `get`, `delete`, `list` and `set` environment variables and secrets using the CLI. + +When setting an environment variable or secret, the CLI will attempt to determine the type of the value and set it accordingly. However, you can force the value to be a secret by using the `--secret` flag. + +The `.env` file is a special file that is used to store environment variables and secrets for your project. It is a simple text file that contains key-value pairs. The `.env` file is automatically loaded when you run the CLI but not used (or not uploaded) in production. + +If you would like to have different environment variables and secrets for development and production, you can use the `.env.development` file which will override values in the `.env` file when running `agentuity dev`. + + + The `.env` file must not be committed to your source code repository as it contains sensitive information. By default, an Agentuity project will exclude this file and others like it in the `.gitignore` file if you use the `agentuity create` command to create your project. + + +##### API Keys + +There are two automatically generated API keys for your project: + +- **Project API Key** (the environment variable is `AGENTUITY_PROJECT_API_KEY`) +- **SDK Key** (the environment variable is `AGENTUITY_SDK_KEY`) + +The Project API Key is used to authenticate requests to the Agentuity API. You can view your Project API Key in the Project > Settings page. + +The SDK Key is used to authenticate requests to the Agentuity SDK from your agents when running in development mode. You can view your SDK Key in the Project > Settings page. + +Both keys are created automatically when you create a new project and stored in the project's `.env` file. + +You can create additional API keys for your project in the [Settings > API Keys page](./api-keys). + +## CLI + +You can use the CLI to manage your project using the following command: + + + +See the [CLI documentation](/CLI/project) for more information on specific command usage and flags. \ No newline at end of file diff --git a/content/Cloud/settings.mdx b/content/Cloud/settings.mdx new file mode 100644 index 00000000..117835d6 --- /dev/null +++ b/content/Cloud/settings.mdx @@ -0,0 +1,16 @@ +--- +title: Settings +description: The settings page allows you to manage your overall organization settings +--- + +## Settings + +The Settings pages are used to manage your overall organization settings. + +### API Keys + +You can manage your API keys in the [Settings > API Keys page](./api-keys). + +### Organization + +You can manage your organization settings in the [Settings > Organization page](./organization). \ No newline at end of file diff --git a/content/Cloud/vector-memory.mdx b/content/Cloud/vector-memory.mdx index 9fdc2973..0635ec77 100644 --- a/content/Cloud/vector-memory.mdx +++ b/content/Cloud/vector-memory.mdx @@ -1,9 +1,9 @@ --- -title: Vector Memory Storage -description: Learn how to create, view, and manage vector memory storage in the Agentuity Cloud Console +title: Vector Storage +description: The Vector Storage page is for managing your vector storage --- -## Understanding Vector Memory Storage +## Understanding Vector Storage Vector memory storage is designed for semantic search and large context windows, making it ideal for: @@ -22,9 +22,19 @@ When you navigate to the Memory > Vector page in the Cloud Console, you'll see a You can filter the list of vector instances using the search box at the top of the table to quickly find specific instances by name. + + +## View Vector Data + +You can select a vector instance to view and manage its data. + + + ## Creating a New Vector Instance There are two ways to create a new vector instance: -1. From the Memory > Vector page in the Cloud Console +1. From the Services > Vector page in the Cloud Console 2. In code, using the Agentuity SDK + + \ No newline at end of file diff --git a/content/Examples/index.mdx b/content/Examples/index.mdx index d326682c..4b8a4a54 100644 --- a/content/Examples/index.mdx +++ b/content/Examples/index.mdx @@ -7,16 +7,13 @@ While our comprehensive examples documentation is coming soon, you can explore our GitHub repositories where we maintain a collection of reference implementations. -
+
- - View Examples on GitHub - + className="inline-flex items-center justify-center px-3 py-2 border text-xs font-medium rounded-md no-underline bg-fd-secondary" + > View Examples on GitHub
## Featured Examples @@ -37,64 +34,52 @@ A React-based concierge service template for Miami visitors, showcasing how to b >
-
+
- - View on GitHub - + className="inline-flex items-center justify-center px-3 py-2 border text-xs font-medium rounded-md no-underline bg-fd-secondary" + > View on GitHub
### Content Marketing Agent System Agents for creating, managing, and scheduling social media content using a multi-agent architecture. -
+
- - View on GitHub - + className="inline-flex items-center justify-center px-3 py-2 border text-xs font-medium rounded-md no-underline bg-fd-secondary" + > View on GitHub
### Newsroom: AI-Powered Content Pipeline An automated content generation system that collects, processes, and publishes AI-related news content using specialized AI agents. -
+
- - View on GitHub - + className="inline-flex items-center justify-center px-3 py-2 border text-xs font-medium rounded-md no-underline bg-fd-secondary" + > View on GitHub
### Agent Changelog A tool for automatically generating and managing changelogs for your projects. -
+
- - View on GitHub - + className="inline-flex items-center justify-center px-3 py-2 border text-xs font-medium rounded-md no-underline bg-fd-secondary" + > View on GitHub
## SDK Examples @@ -105,24 +90,20 @@ We provide comprehensive examples for our SDKs to help you get started with buil Our JavaScript SDK examples demonstrate how to build agents using JavaScript: -
+
- View JavaScript SDK Examples - + className="inline-flex items-center justify-center px-3 py-2 border text-xs font-medium rounded-md no-underline bg-fd-secondary" + >View JavaScript SDK Examples
### Python SDK Examples Our Python SDK examples demonstrate how to build agents using Python: -
+
- View Python SDK Examples - + className="inline-flex items-center justify-center px-3 py-2 border text-xs font-medium rounded-md no-underline bg-fd-secondary" + >View Python SDK Examples
diff --git a/content/Guides/.agent-data-handling.mdx b/content/Guides/.agent-data-handling.mdx new file mode 100644 index 00000000..16c04da1 --- /dev/null +++ b/content/Guides/.agent-data-handling.mdx @@ -0,0 +1,4 @@ +--- +title: Agent Data Handling +description: How to handle data formats in your agents +--- diff --git a/content/Guides/.agent-io.mdx b/content/Guides/.agent-io.mdx new file mode 100644 index 00000000..cedda84d --- /dev/null +++ b/content/Guides/.agent-io.mdx @@ -0,0 +1,4 @@ +--- +title: Agent Input and Output +description: How to handle agent input and output +--- diff --git a/content/Guides/.agent-logging.mdx b/content/Guides/.agent-logging.mdx new file mode 100644 index 00000000..0769e6f0 --- /dev/null +++ b/content/Guides/.agent-logging.mdx @@ -0,0 +1,4 @@ +--- +title: Agent Logging +description: How to use logging in your agents +--- diff --git a/content/Guides/.agent-patterns.mdx b/content/Guides/.agent-patterns.mdx new file mode 100644 index 00000000..db975f3a --- /dev/null +++ b/content/Guides/.agent-patterns.mdx @@ -0,0 +1,4 @@ +--- +title: Agent Patterns +description: Agent architectural patterns and best practices +--- diff --git a/content/Guides/.agent-telemetry.mdx b/content/Guides/.agent-telemetry.mdx new file mode 100644 index 00000000..5cfc64f5 --- /dev/null +++ b/content/Guides/.agent-telemetry.mdx @@ -0,0 +1,4 @@ +--- +title: Agent Telemetry +description: How to use telemetry in your agents +--- diff --git a/content/Guides/.agent-tracing.mdx b/content/Guides/.agent-tracing.mdx new file mode 100644 index 00000000..fc331478 --- /dev/null +++ b/content/Guides/.agent-tracing.mdx @@ -0,0 +1,4 @@ +--- +title: Agent Tracing +description: Understanding how to use tracing in your agents +--- diff --git a/content/Guides/.ai-gateway.mdx b/content/Guides/.ai-gateway.mdx new file mode 100644 index 00000000..6875f85a --- /dev/null +++ b/content/Guides/.ai-gateway.mdx @@ -0,0 +1,4 @@ +--- +title: Using AI Gateway +description: Using AI Gateway in your Agents +--- diff --git a/content/Guides/.devmode.mdx b/content/Guides/.devmode.mdx new file mode 100644 index 00000000..a047ab4d --- /dev/null +++ b/content/Guides/.devmode.mdx @@ -0,0 +1,4 @@ +--- +title: Agent DevMode +description: Developing agents locally with DevMode +--- diff --git a/content/Guides/.key-value.mdx b/content/Guides/.key-value.mdx new file mode 100644 index 00000000..4bbc4964 --- /dev/null +++ b/content/Guides/.key-value.mdx @@ -0,0 +1,4 @@ +--- +title: Using Key Value +description: Using Key Value storage in your Agents +--- diff --git a/content/Guides/.security.mdx b/content/Guides/.security.mdx new file mode 100644 index 00000000..6afb1e15 --- /dev/null +++ b/content/Guides/.security.mdx @@ -0,0 +1,4 @@ +--- +title: Security Guide +description: Security Guide and Best Practices for using Agentuity +--- diff --git a/content/Guides/.vector-db.mdx b/content/Guides/.vector-db.mdx new file mode 100644 index 00000000..3fc52f7b --- /dev/null +++ b/content/Guides/.vector-db.mdx @@ -0,0 +1,4 @@ +--- +title: Using Vector DB +description: Using the Vector DB for search and retrieval +--- diff --git a/content/Guides/agent-communication.mdx b/content/Guides/agent-communication.mdx new file mode 100644 index 00000000..072521ed --- /dev/null +++ b/content/Guides/agent-communication.mdx @@ -0,0 +1,233 @@ +--- +title: Agent Communication +description: Agent-to-Agent communication patterns, usage and best practices +--- + +import Image from "next/image"; + +Agent-to-AgentCommunication + +### How do agents communicate with each other? + +In most advanced agentic scenarios, agents need to communicate with other agents to achieve their goals. + +In fact, our recommendation is that you build agents with highly specialized roles and skills and use agent-to-agent communication to achieve the overall goal. + +There are a number of ways to achieve agent-to-agent communication natively in Agentuity. + +#### Communication Types + +Agents can communicate with each other in a number of ways in the Agentuity platform. The following are the different types of communication that are supported: + +| Type | Description | +|-----------|-------------| +| **Intra Project** | Agents within the same project can communicate with each other locally without leaving the local network | +| **Inter Project** | Agents can communicate with each other across projects within the same organization across the internal network | +| **Inter Organization** | Agents can communicate with each other across organizations across the internal network | + +##### Intra Project + +Intra project communication is the simplest form of agent-to-agent communication. Agents within the same project can communicate with each other locally without leaving the local network. + +##### Inter Project + +Inter project communication is a more advanced form of agent-to-agent communication. Agents can communicate with each other across projects within the same organization but will communicate over the internal network. + +##### Inter Organization + +Inter organization communication is the most advanced form of agent-to-agent communication. Agents can communicate with each other across organizations. Currently, Agentuity only supports inter organization agent communication if the target agent is public and the source agent has been given the agent ID by the other organization. For inter organization communication, the source agent will communicate over the internal network. + +#### Communication Methods + +Agents has two primary methods of communication with other agents: + +| Type | Description | +|-----------|-------------| +| Handoff | Agents can handoff a request to another agent to complete | +| Invocation | Agents can invoke another agent to complete a task and wait for the result | + +##### Handoff + +When an agent needs to handoff a request to another agent, it can do so by using the SDK `handoff` method. The `handoff` method will send the request to another agent and the other agent will be responsible for completing the request. + +For handoff, the source agent can modify the original request data or simply pass the request as is. The target agent will receive the request and can complete the request as if it was the original request. + +A trivial example of a handoff: + + + +In the above example, the source agent is sending a request to the `My Other Agent` agent. The `My Other Agent` agent will receive the request and can complete the request as if it was the original request. + +Calling another agent is a common pattern in agentic workflows. It is often used to delegate a task to another agent or to get the result of a task from another agent. + +In another trivial example, the source agent is sending a request to the `My Other Agent` agent and passing a message to the other agent. The `My Other Agent` agent will receive the request and can complete the request as if it was the original request. Since we are passing a String type, the other agent will receive the message as a string and with content type `text/plain`. + + + +##### Invocation + +When an agent needs to invoke another agent to complete a task and wants to wait for the result, it can do so by using the SDK `getAgents` method on `AgentContext`. The `getAgents` will perform resolution to determine the target agent location and return a handle to the target agent that can be used to `run` the target agent. + +If the target agent is local (intra project), the `getAgents` method will return a handle to an internal agent which can be used to `run` the target agent. + +If the target agent is remote (inter project or inter organization), the `getAgents` method will return a handle to an external agent which can be used to `run` the target agent. In addition, the SDK internally will use the authorization token to authenticate the source agent to the target agent. + + + +A trivial example of an invocation: + + + +In this trivial example above, the functionality is similar to the handoff example above. The source agent is sending a request to the `My Other Agent` agent and passing a message to the other agent. The `My Other Agent` agent will receive the request, perform an operation and return the result to the source agent. The source agent will simply return the result as a text result. + +In a real life scenario, you'll likely want to pass the appropriate data types to the target agent and wait for the result and then use the result in your own agent to perform additional tasks. + +###### Parallel Execution + +Sometimes you want to send a request to multiple agents at the same time. This is an example of parallel execution. + + + +In this example, the source agent is sending a request to two different agents at the same time. The source agent will wait for both agents to complete their tasks before returning. + +In a real life scenario, you'll likely want to pass the appropriate data types to the target agents and wait for the results and process them before continuing. + + + +#### Agent Resolution + +How do we resolve the target agent? There are two main ways to do this: + +| Type | Description | +|-----------|-------------| +| Agent ID | The agent ID is a unique identifier for an agent. It is a string that is assigned to an agent when it is created. | +| Agent Name | The agent name is a human readable name for an agent. It is a string that was used for the agent's name. | +| Project ID | The agent project ID is specified to disambiguate agents with the same name in different projects. | + +##### Intra Project Resolution + +When calling an agent within the same project, the agent name is usually the easiest way to resolve the target agent. The agent name is a human readable name for an agent. It is a string that was used for the agent's name. + +##### Inter Project Resolution + +When calling an agent across projects within the same organization, the agent ID is typically the most reliable way to resolve the target agent. The agent ID is a unique identifier for an agent. + +However, if the agent name is not unique across projects, the agent project ID can be used to disambiguate the target agent. The agent project ID is a unique identifier for an agent's project. + +A trivial example of a handoff: + + + +##### Inter Organization Resolution + +Currently, Agentuity only supports inter organization agent communication if the target agent is public and the source agent has been given the agent ID by the other organization. When using inter organization communication, only the agent ID is required to resolve the target agent. + +#### Communication Authorization + +When communicating with other agents outside the local project, Agentuity will automatically generate a one-time use authorization token with a short expiration. This token is used to authenticate the source agent to the target agent automatically without the need for the source agent to pass the token to the target agent. diff --git a/content/Guides/agent-engineering.mdx b/content/Guides/agent-engineering.mdx new file mode 100644 index 00000000..fb3be917 --- /dev/null +++ b/content/Guides/agent-engineering.mdx @@ -0,0 +1,132 @@ +--- +title: Agent Engineering +description: Effective software engineering in an agentic future +--- + +## Thinking Like an Agent Builder: A Shift for Software Engineers + +Traditional software engineering is built around deterministic logic, tightly scoped inputs and outputs, and rigid control flows. When you start building agents, you're no longer programming every behavior—you're designing systems that can interpret goals, reason about context, and act autonomously. + +> 🤔 Not sure what an agent is? Check out [What is an Agent?](/Guides/what-is-an-agent) + +Building agents isn't just about writing code—it's about shaping intelligent behavior. + +This shift requires a new mindset: + +### Key Mindset Shifts and Tips for Engineers + +1. Design for Intent, Not Implementation + +Old way: Define every step in a process explicitly. + +New way: Focus on what outcome you want the agent to achieve, and give it the tools and context to figure out how. + +> ✅ Tip: Practice writing clear prompts and goal descriptions instead of hard-coded workflows. + +2. Embrace Non-Determinism + +Agents may behave differently based on context, input phrasing, or new knowledge. + +This variability isn't a bug — it's a feature that enables adaptation and learning. + +> ✅ Tip: Use guardrails, feedback loops, and observability tools to manage unpredictability rather than eliminate it. + +3. Think in Terms of Capabilities, Not Functions + +Agents aren't bound by one task — they're modular, extensible entities that can take on roles. + +You compose capabilities (retrieval, summarization, API calls, etc.) instead of defining one static purpose. + +> ✅ Tip: Start building with reusable "skills" or tools that agents can invoke as needed. + +4. Develop and Debug Through Simulation and Prompt Testing + +You won't always have step-by-step logic to trace. You'll be tuning prompts, memory, and planning behavior. + +> ✅ Tip: Set up scenarios to simulate tasks, iterate on prompt engineering, and observe agent decisions. + +5. Trust the Model — But Verify + +Leverage the power of foundation models, but don't assume perfection. + +Validation, fallback logic, and human-in-the-loop design are still critical. + +> ✅ Tip: Use confidence scoring, output evaluation, and error-handling strategies just like you would for user input in traditional apps. + +---- + +### Can you show me a practical example of the difference? + +In traditional software engineering, you might build a function that takes a user's input in a specific format and data shape and then sends that data to another system (say a database or CRM system). + +For example, let's say you have input JSON and your API takes a specific data shape such as: + +```json +{"firstName":"Jeff","lastName":"Bezos"} +``` + +Traditionally, you would build a function that takes this input, parses it, transforms it and then invokes the other system with the transformed data. _There are significant products that have been built to tackle this sole problem_. + +In an agentic approach, you could just ask the AI to do this for you with a prompt like this: + +```xml title="AI Prompt" + +convert the input to an output using the JSON schema + + + +{"firstName":"Jeff","lastName":"Bezos"} + + + +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "title": "Person", + "type": "object", + "properties": { + "first_name": { + "type": "string", + "description": "The person's first name" + }, + "last_name": { + "type": "string", + "description": "The person's last name" + } + }, + "required": ["first_name", "last_name"] +} + + + +- The output should be in a JSON format that validates against the JSON schema. +- If the input is not valid, the output should be an error message. + +``` + +The AI would respond with something like this: + +```ansi title="AI Response" +To convert the given JSON input to match the specified JSON schema, you need to change +the keys from firstName and lastName to first_name and last_name, respectively. + +{"first_name": "Jeff","last_name": "Bezos"} + +This output adheres to the schema by: + +- Using snake_case property names (first_name and last_name) +- Providing required string values +- Avoiding any additional properties beyond those defined in the schema + +``` + +As you can see, the AI has not only converted the JSON to the correct format, but it has also validated that the output matches the schema for you. + +> 💫 **Agentic software engineering requires you to approach tasks with a much different mindset than you have before!** + +Modern AI can also not only return output, it can return structured output too (such as providing a JSON for the AI to conform). In addition, AIs can now use tool calling to call back to your agent to ask it to perform a specific task that you define to help the AI further reason about the task at hand. + +---- + +Agents represent a new abstraction layer — between human goals and system actions. As an engineer, your job shifts from building every bridge to empowering an intelligent system to build those bridges for you. That's not just a technical challenge—it's a creative one. + +Make sure you understand the differences between today's cloud computing paradigm and the [Agent-Native Cloud](/Guides/agent-native-cloud). \ No newline at end of file diff --git a/content/Guides/agent-native-cloud.mdx b/content/Guides/agent-native-cloud.mdx new file mode 100644 index 00000000..db7a481c --- /dev/null +++ b/content/Guides/agent-native-cloud.mdx @@ -0,0 +1,117 @@ +--- +title: Agent Native-Cloud +description: The Agent-Native Cloud and what makes it different from other cloud platforms +--- + +## What Is an Agent-Native Cloud? + +**Agent-Native** means the cloud itself is designed for AI agents as the *primary* citizens — not retro-fitted for them. Instead of asking agents to squeeze into workflows that were built for humans or stateless micro-services, an agent-native cloud gives them native abilities to collaborate, reason, persist state, and evolve. + +In short, an agent-native platform is to AI agents what *cloud-native* was to containers: the right environment, abstractions, and tooling built in from day one. + +This is our vision for the future of cloud computing, the Agentic-Native Cloud. The cloud reimagined, for agents. We call it Agentuity. + +> 💡 For a deeper narrative, read our blog post [The Agent-Native Cloud](https://agentuity.com/blog/agent-native). + +## Agentuity in One Sentence + +**Agentuity is the first *Agent-Native Cloud*** — an ecosystem engineered from first principles for the full lifecycle of autonomous AI agents. + +## Why a New Kind of Cloud? + +
+
+

#Traditional Cloud

+
    +
  • Stateless by default
  • +
  • Human-centric UIs & APIs
  • +
  • Manual ops & dashboards
  • +
  • One-off deployments
  • +
+
+
+

@Agent-Native Cloud

+
    +
  • Stateful & memory-aware
  • +
  • Agent collaboration protocols
  • +
  • Self-healing *agentic* operations
  • +
  • Continuous learning & evolution
  • +
+
+
+ +If your infrastructure can't help agents learn, adapt, and coordinate at machine-speed, it isn't truly agent-native. + +## The Three Pillars of Agentuity + +
+
+

[1]Agent-First Design

+
    +
  • + Native Agent Lifecycle +

    Define, deploy, version, and retire agents with tooling that understands goals and capabilities, not just containers.

    +
  • +
  • + Structured Inter-Agent Communication +

    Built-in support for protocols like MCP/A2A so agents exchange durable, machine-readable messages instead of fragile prompts.

    +
  • +
  • + Composable Architectures +

    Assemble complex multi-agent systems quickly from reusable modules and roles.

    +
  • +
+
+ +
+

[2]Agentic Operations

+
    +
  • + Stateful, Persistent Runtimes +

    Agents retain long-term context and memory without hitting serverless timeouts.

    +
  • +
  • + Autopilot-Style Observability +

    Platform agents monitor, remediate, and audit themselves under your guard-rails.

    +
  • +
  • + Elastic Swarms & Scaling +

    Scale from a single helper agent to thousands of specialised workers automatically.

    +
  • +
+
+ +
+

[3]Agentic Learning & Evolution

+
    +
  • + Rich Memory Primitives +

    Working, episodic, and semantic memory layers are built-in.

    +
  • +
  • + Reflection & Reinforcement Loops +

    Agents introspect, gather feedback, and self-tune via managed RL pipelines.

    +
  • +
  • + Collective Intelligence +

    Securely share learnings across agent teams or organisations for compounding gains.

    +
  • +
+
+
+ +## Who Benefits? + +• **Agents** – Gain a native environment with memory, collaboration protocols, and learning loops so they can act reliably, adapt, and continuously improve. + +• **Developers** – Focus on behaviour, not boiler-plate. Agentuity gives you SDKs, simulators, and debugging tailored to agent logic. + +• **Ops & SRE** – Fewer 3 AM pages. Self-healing routines fix issues in seconds and leave an explainable audit trail. + +• **Leadership** – Faster time-to-value, lower TCO, and infrastructure that *gets better with age*. + +If you're in software engineering, you need to think like an [Agent Builder](/Guides/agent-engineering). + +--- + +Need something that's built *for* agents? Welcome to Agentuity. diff --git a/content/Guides/agent-streaming.mdx b/content/Guides/agent-streaming.mdx new file mode 100644 index 00000000..cf3cdb68 --- /dev/null +++ b/content/Guides/agent-streaming.mdx @@ -0,0 +1,114 @@ +--- +title: Agent Streaming +description: How to use streaming in your agents +--- + +> **Streaming lets your users read the response before the AI finishes thinking.** Nothing feels faster than already happening. + +## Why Streaming? + +- **Latency hiding** by showing results instantly instead of after the whole response is ready. +- **Large inputs and outputs** without hitting payload limits. +- **Agent chains** can forward chunks to the next agent as soon as they arrive. +- **Snappier UX** so users see progress in milliseconds instead of waiting for the full payload. +- **Resource efficiency** by not holding entire responses in memory; chunks flow straight through. +- **Composable pipelines** by allowing agents, functions, and external services to hand off work in a continuous stream. + +**A simple visualization of the difference between traditional request/response and streaming:** + +```bash +┌─────────────────────────── traditional request/response ───────────────────────────────────┐ +| client waiting ... ██████████████████████████████████████████ full payload display | +└────────────────────────────────────────────────────────────────────────────────────────────┘ + +┌─────────────────────────── streaming request/response ─────────────────────────────────────┐ +| c l i e n t r e a d s c h u n k 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 … | +└────────────────────────────────────────────────────────────────────────────────────────────┘ +``` + +#### Real-World Use Cases + +- **Live chat / customer support.** Stream the assistant's words as they are generated for a more natural feel. +- **Speech-to-text.** Pipe microphone audio into a transcription agent and forward captions to the UI in real time. +- **Streaming search results.** Show the first relevant hits immediately while the rest are still processing. +- **Agent chains.** One agent can translate, the next can summarize, the third can analyze – all in a single flowing stream. + +## How Streaming Works in Agentuity + +1. **Outbound:** `resp.stream(source)` – where `source` can be: + - An async iterator (e.g. OpenAI SDK stream) + - A ReadableStream + - Another agent's stream +2. **Inbound:** `await request.data.stream()` – consume the client's incoming stream. +3. Under the hood Agentuity handles the details of the streaming input and output for you. + +### OpenAI Streaming Example + +In this example, we use the OpenAI SDK to stream the response from the OpenAI API back to the caller. + + + +### Agent-to-Agent Streaming + +In this example, we use the Agentuity SDK to stream the response from one agent to another. + +```ts +import type { AgentRequest, AgentResponse, AgentContext } from "@agentuity/sdk"; + +export default async function Agent( + req: AgentRequest, + resp: AgentResponse, + ctx: AgentContext, +) { + // [1] Call another agent + const expert = await ctx.getAgent({ name: "HistoryExpert" }); + const expertResp = await expert.run({ prompt: "What engine did a P-51D Mustang use?" }); + + // [2] Grab its stream + const stream = await expertResp.data.stream(); + + // [3] Pipe straight through + return resp.stream(stream); +} +``` + +Chain as many agents as you like; each one can inspect, transform, or just relay the chunks. + +--- + +## Further Reading + +- Blog Post: [Agents just want to have streams](https://agentuity.com/blog/agent-streaming) +- SDK Examples: [JavaScript](/SDKs/javascript/examples#openai-streaming-example) · [Python](/SDKs/python/examples#streaming-responses-from-openai) +- Streaming Video Demo: [Watch on YouTube](https://youtu.be/HN_ElBfsWtE) + diff --git a/content/Guides/meta.json b/content/Guides/meta.json new file mode 100644 index 00000000..3e097bcf --- /dev/null +++ b/content/Guides/meta.json @@ -0,0 +1,13 @@ +{ + "title": "Guides", + "pages": [ + "what-is-an-agent", + "agent-native-cloud", + "agent-engineering", + "...", + "ai-gateway", + "key-value", + "vector-db", + "security" + ] +} diff --git a/content/Guides/what-is-an-agent.mdx b/content/Guides/what-is-an-agent.mdx new file mode 100644 index 00000000..9aa2df8d --- /dev/null +++ b/content/Guides/what-is-an-agent.mdx @@ -0,0 +1,77 @@ +--- +title: What is an Agent? +description: How we define an Agent +--- + +> But aren't agents just smart chat bots? 🤖 + +## Understanding the Difference Between an API and an Agent + +APIs (Application Programming Interfaces) are like vending machines — you make a specific request, and they return exactly what you asked for. They're great for performing defined tasks, but you have to know exactly what you want and when to ask. + +Agents, on the other hand, are more like smart assistants. Instead of just waiting for instructions, agents can reason, plan, and act independently. They understand goals, adapt to changing conditions, and even decide what to do next based on context — not just what you explicitly told them. They don't just respond to commands; they can proactively get things done. + +While APIs are passive and require constant human coordination, agents are active participants in your digital world. They orchestrate actions, learn over time, and collaborate with other systems or agents to solve complex problems — automatically. + +## What makes building Agents different? + +APIs and agents may both act as intermediaries between users and systems, but the way they operate — and what they enable — are profoundly different. + +1. **Passive Interfaces vs. Autonomous Actors** + +APIs are passive. They expose a fixed set of functions or data. You must explicitly tell them what to do, how to do it, and when to do it — often in exact, rigid terms. There is no built-in understanding or reasoning. + +Agents, by contrast, are autonomous actors. They have the ability to decide how to achieve a goal, not just execute a specific instruction. They can operate continuously, respond to changing context, and coordinate complex tasks — without being told every step. + +2. **Determinism vs. Non-Determinism** + +Traditional APIs are deterministic: given the same input, they always return the same output. This predictability is useful for low-level tasks but limits flexibility and adaptability. + +Agents exhibit non-deterministic behavior. This isn't randomness — it's contextual decision-making. Given a broad prompt or task, an agent might take different actions based on what it knows, what it's learned, or what it perceives in real time. That's what gives agents the power to handle complexity and nuance. + +3. **Logic-Driven vs. Intent-Driven** + +In API-driven development, every behavior is explicitly programmed. Developers must anticipate every possible use case and encode it in logic. If you want to add a new feature, you need to modify the code. If the user is trying to perform a task that was not anticipated, the API will not be able to handle it. + +Agents, especially those built on language models, operate in an intent-driven paradigm. Instead of encoding every rule, you use natural language prompts to guide behavior. The agent interprets these prompts and autonomously figures out what to do and how to do it. This allows you to build flexible systems with far less code and far more adaptability. + +4. **Data Pipelines vs. Prompt-Orchestrated Workflows** + +APIs typically act on structured data passed through predefined pipelines — data in, response out. + +Agents can transform unstructured inputs into structured actions using prompts, models, and memory. For example, you can prompt an agent to “summarize this customer support thread and update the CRM” without hard-coding every transformation step. The agent parses, reasons, and executes — like a junior team member, not a tool. + +## The Agent Paradigm Shift +The emergence of agents marks a shift from programming behavior to designing intent and outcomes. With the Agentuity platform, you're not building step-by-step logic — you're defining objectives and letting agents determine how best to fulfill them. This unlocks: + +- **Adaptive workflows** that evolve in real-time + +- **Conversational interfaces** that feel truly intelligent + +- **Less brittle systems** that aren't tied to rigid, pre-defined rules + +Agents aren't just a new abstraction — they're a new operational model for software. They bring reasoning, flexibility, and decision-making into the core of your systems. + +## Why a Traditional Chatbot isn't an AI Agent + +A traditional chatbot is like a scripted receptionist — it follows predefined rules, matches keywords, and responds with canned answers. It can handle simple, repetitive tasks, but it doesn't understand context, adapt to new situations, or make decisions. + +An AI agent, on the other hand, is more like a smart collaborator. It can interpret intent, reason through complex tasks, take independent actions, and adapt in real time. It's not limited to conversation — it can plan, orchestrate workflows, and interact with systems to get things done autonomously. + +In short: a chatbot talks; an agent thinks and acts. + +## Why do Agents need an Agent-Native Cloud? + +**Think about today's cloud computing paradigm:** + +We have optimized cloud computing largely by moving the compute to the edge, focusing on horizontal scaling and cost efficiency through serverless or virtualized workloads. We are obsessed with low latency and sessionless architectures that deliver apps and APIs to our users as fast as possible, often distributed globally. + +**Enter agents:** + +Agents demands a new paradigm. Agents aren't focused on low latency, they are focused on long-running, complex tasks that require a lot of context and coordination. They are not sessionless, they are stateful and both short and long term memory is required. They are not distributed, they are centralized — often close to the data resources or as close to low latency, high bandwith GPU clusters. + +Learn more details about the differences in today's cloud computing paradigm and the [Agent-Native Cloud](/Guides/agent-native-cloud). + +---- + +If you're a software engineer and you need to build agents, you need to think like an [Agent Builder](/Guides/agent-engineering). \ No newline at end of file diff --git a/content/Integrations/index.mdx b/content/Integrations/index.mdx deleted file mode 100644 index 3121106f..00000000 --- a/content/Integrations/index.mdx +++ /dev/null @@ -1,18 +0,0 @@ ---- -title: Integrations -description: Guide to integrating Agentuity with external services and platforms ---- - -Learn how to integrate Agentuity with various external services and platforms. - -## Overview - -[Content coming soon - Overview of available integrations and general setup process] - -## Authentication - -[Content coming soon - Authentication requirements for integrations] - -## Best Practices - -[Content coming soon - Integration best practices and recommendations] \ No newline at end of file diff --git a/content/Integrations/slack.mdx b/content/Integrations/slack.mdx deleted file mode 100644 index 064544b9..00000000 --- a/content/Integrations/slack.mdx +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: Slack Integration -description: Integrate Agentuity with Slack for notifications and interactions ---- - -## Setup - -[Content coming soon - Setting up Slack integration] - -## Features - -[Content coming soon - Available Slack integration features] - -## Commands - -[Content coming soon - Available Slack commands] - -## Notifications - -[Content coming soon - Configuring Slack notifications] - -## Best Practices - -[Content coming soon - Slack integration best practices] - -## Troubleshooting - -[Content coming soon - Common Slack integration issues and solutions] \ No newline at end of file diff --git a/content/Integrations/sms.mdx b/content/Integrations/sms.mdx deleted file mode 100644 index 3e4fd39e..00000000 --- a/content/Integrations/sms.mdx +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: SMS Integration -description: Integrate Agentuity with SMS services for notifications and interactions ---- - -## Setup - -[Content coming soon - Setting up SMS integration] - -## Providers - -[Content coming soon - Supported SMS providers] - -## Features - -[Content coming soon - Available SMS features] - -## Message Templates - -[Content coming soon - Creating and managing message templates] - -## Best Practices - -[Content coming soon - SMS integration best practices] - -## Troubleshooting - -[Content coming soon - Common SMS integration issues and solutions] \ No newline at end of file diff --git a/content/Integrations/webhooks.mdx b/content/Integrations/webhooks.mdx deleted file mode 100644 index e253adba..00000000 --- a/content/Integrations/webhooks.mdx +++ /dev/null @@ -1,39 +0,0 @@ ---- -title: Webhooks -description: Setting up and managing webhooks with Agentuity ---- - -## Overview - -Webhooks provide a way to send data to your Agentuity agents or receive data from them. This guide covers how to set up and use webhooks with your Agentuity agents. - -## Setting Up Inbound Webhooks - -Inbound webhooks allow external systems to send data to your Agentuity agents. - -### Accessing Webhook Configuration - -1. Navigate to your agent's dashboard in the Agentuity Cloud Console -2. In the I/O visualization, click on the plus button to add a webhook or click on an existing webhook -3. The webhook configuration modal will appear with all necessary settings - -### Security Considerations - -When setting up webhooks, consider the following security best practices: - -- Choose the appropriate authentication method based on your security requirements -- Regularly rotate authentication credentials -- Only expose the minimum required data through your webhooks -- Monitor webhook access logs for unusual activity - -## Webhook Events - -[Content coming soon - Available webhook events and their payloads] - -## Testing - -[Content coming soon - Testing webhook integrations] - -## Troubleshooting - -[Content coming soon - Common webhook issues and solutions] \ No newline at end of file diff --git a/content/Introduction/architecture.mdx b/content/Introduction/architecture.mdx index 8cee6cfe..a8b2ee2f 100644 --- a/content/Introduction/architecture.mdx +++ b/content/Introduction/architecture.mdx @@ -1,17 +1,17 @@ --- -title: Architecture Overview -description: Understanding Agentuity's system architecture, components, and integration points +title: Overview +description: Understanding Agentuity --- -## System Architecture +## Agentuity Overview Agentuity is a cloud platform designed to run and scale AI agents with enterprise-grade reliability. Our architecture follows a container-based approach, where each agent operates in its own specialized environment. -Unlike traditional serverless platforms, Agentuity ensures containers run for as long as agents need, -maintaining state and context throughout agent lifecycles. This long-running container approach is -optimal for complex AI workloads that may require extended processing time. +Unlike traditional serverless platforms, Agentuity ensures agents run for as long as needed, +maintaining state and context throughout agent lifecycles. This long-running approach is +optimal for complex agent workloads that may require extended processing time, access to storage, or other resources. The platform is fundamentally cross-platform, allowing you to run different agent frameworks (CrewAI, Langchain, custom agents) side by side in the same ecosystem, with built-in communication @@ -19,44 +19,51 @@ channels between them. ## Core Components -Agentuity consists of four primary components: +Agentuity consists of five primary components: -1. **Container Runtime** - The execution environment where your agents run, providing: - - Isolated, secure container environments for each agent - - Automatic scaling based on workload +1. **Agent Platform** - The cloud platform for providing agent services, providing: + - Agent communication and routing + - Agent monitoring, logging, telemetry and troubleshooting + - Agent usage analytics and performance insights + - Automatic scaling on-demand based on workload + - Agent services such as KeyValue, Vector storage, AI Gateway and more + +2. **Agent Runtime** - The execution environment where your agents run, providing: + - Isolated, secure virtualized environment for each agent project - Resource management and optimization - - Long-running container support for persistent agents + - Long-running support for persistent agents + - Dynamic Storage, Compute and Networking resources -2. **Command Line Interface (CLI)** - A developer tool that enables: +3. **Command Line Interface (CLI)** - A developer tool that enables: - Quick agent creation and initialization - Local development and testing - Deployment management to the Agentuity cloud - - Agent monitoring and troubleshooting + - Integration with external Agentic code tools via MCP -3. **Software Development Kits (SDKs)** - Libraries that provide: - - Agent-native tools and services +4. **Software Development Kits (SDKs)** - Libraries that provide: + - Agent-native tools and services integration with the Agent Platform - Runtime-specific optimizations for Python and JavaScript (Node and Bun) - Integration capabilities with external systems - - Enhanced agent capabilities and extensions + - Enhanced agent capabilities and extensions which work cross-framework and cross-runtime 4. **Web Console** - A management interface offering: - Real-time agent monitoring and metrics - Deployment and configuration management - - Usage analytics and performance insights + - Usage analytics, logging, monitoring and performance insights - Team collaboration features ## Data Flow Agent communication and data flow in Agentuity follow secure, encrypted channels: -1. **Agent-to-Agent Communication** - Agents can communicate with each other through encrypted routing, -regardless of the underlying frameworks used. +1. **Agent-to-Agent Communication** - Agents can communicate with each other through authenticated, encrypted routing, +regardless of the underlying frameworks or runtimes used. 2. **External Integrations** - Agents can connect to external systems and data sources through managed integration points. 3. **Deployment Pipeline** - Your project code is packaged, containerized, and deployed to the Agentuity -cloud infrastructure with appropriate networking and routing configured automatically. +cloud infrastructure with appropriate networking and routing configured automatically. Built-in support for GitHub Actions. ## Scalability @@ -71,7 +78,7 @@ Agentuity is designed for enterprise-scale agent deployments: Security is foundational to Agentuity's design: -- **Container Isolation** - Each agent operates in its own isolated environment +- **Agent Isolation** - Each agent project operates in its own isolated environment - **Encrypted Communications** - All agent-to-agent communication is encrypted - **Secure Deployment** - Protected deployment pipeline from development to production @@ -91,11 +98,11 @@ Every Agentuity project requires the following core components: - Agent definitions and routing 2. **Environment Variables** - Stored in a `.env` file: - - `AGENTUITY_SDK_KEY` - Authenticates SDK requests to the platform - - `AGENTUITY_PROJECT_KEY` - Identifies your project to the platform + - `AGENTUITY_SDK_KEY` - Identifies the SDK level API Key (only used in development to access the Agentuity Cloud) + - `AGENTUITY_PROJECT_KEY` - Identifies the project level API Key - Additional provider-specific keys (OpenAI, Anthropic, etc.) -3. **Agent Directory** - Specified in `bundler.agents.dir` (typically `src/agents`): +3. **Agent Directory** - Specified in `bundler.agents.dir` (determined by the runtime): - Each agent has its own subdirectory - Language-specific entry points (index.ts/js for JavaScript, agent.py for Python) - Agent-specific configuration and dependencies @@ -110,7 +117,7 @@ my-project/ ├── .env # Environment variables ├── package.json # Dependencies and scripts └── src/ - └── agents/ # Agent directory (configurable) + └── agents/ # Agent directory └── my-agent/ # Individual agent └── index.ts # Agent entry point ``` @@ -126,10 +133,9 @@ my-project/ ├── agentuity.yaml # Project configuration ├── .env # Environment variables ├── pyproject.toml # Dependencies and configuration -└── src/ - └── agents/ # Agent directory (configurable) - └── my-agent/ # Individual agent - └── agent.py # Agent entry point +└── agents/ # Agents directory + └── my-agent/ # Individual agent + └── agent.py # Agent entry point ``` - Each agent must define a `run()` function that processes requests @@ -179,11 +185,3 @@ These conventions enable several key capabilities: 1. **Consistent Development Experience** - Standardized structure makes it easier to work across projects 2. **Automated Deployment** - The CLI can package and deploy your project without additional configuration 3. **Framework Flexibility** - Use any agent framework while maintaining compatibility with the platform - -### Importing Existing Projects - -If you have an existing agent project, you can adapt it to Agentuity by: - -1. Creating an `agentuity.yaml` file with your project configuration -2. Organizing your agents according to the conventions above -3. Running `agentuity project import` to register with the platform diff --git a/content/Introduction/index.mdx b/content/Introduction/index.mdx index cef9117d..b9a09d1b 100644 --- a/content/Introduction/index.mdx +++ b/content/Introduction/index.mdx @@ -1,17 +1,28 @@ --- -title: Agentuity +title: What is Agentuity? +description: Agentuity is rebuilding the cloud for AI Agents --- -Agentuity is a cloud platform designed specifically for building, deploying, and scaling -autonomous AI agents. It provides the infrastructure and tools necessary to manage agents -built with any framework, such as CrewAI, LangChain, or custom code. +
+ Build agents, not infrastructure +
-With Agentuity, you can: -- Deploy agents with a single command -- Monitor real-time performance and analytics -- Scale agents effortlessly -- Connect agents to various channels (API, chat, webhooks, email, SMS, voice) -- Use any AI agent framework +[Agentuity](https://agentuity.com) is a cloud platform designed specifically to make it easy to build, deploy, and operate AI Agents at scale. + +Our mission is to provide a fully agentic infrastructure and tools necessary to build Agents that are fully operated by AI. + +With Agentuity, you or your agents can: + +- Deploy agents with a single command to a fully agentic infrastructure +- Monitor real-time performance, analytics, metrics and logs +- Auto scale agents effortlessly and on-demand +- Connect agents to various input and output channels (API, chat, webhooks, email, SMS, voice, etc.) +- Securely communicate between agents and build complex agentic workflows +- Use any AI agent framework across Python, Node.js or Bun + +

+We see a near future where Agents are the primary way to build and operate software and where all the infrastructure is built uniquely for them. +

## Agentuity Platform Overview @@ -27,82 +38,90 @@ With Agentuity, you can: ## Getting Started +Signup and have your first Agent running in minutes. + import { Step, Steps } from 'fumadocs-ui/components/steps'; -### Create an Account -[Create an Agentuity account](https://app.agentuity.com/sign-up) or [Sign in](https://app.agentuity.com/sign-in) to the cloud portal. +### Create a Free Account +[Create a free Agentuity account](https://app.agentuity.com/sign-up) or [Sign in](https://app.agentuity.com/sign-in) to the cloud portal. + +If you already have the Agentuity CLI installed, you can skip this step and signup using the CLI. ### Install the CLI -import { Tab, Tabs } from 'fumadocs-ui/components/tabs'; - - - - ```bash - curl -fsS https://agentuity.sh | sh - ``` - - - ```bash - curl -fsS https://agentuity.sh | sh - ``` - - - ```bash - curl -fsS https://agentuity.sh | sh - ``` - - +The [Agentuity CLI](/CLI/installation) is a cross-platform command-line tool for working with Agentuity Cloud. It supports Windows (using WSL), MacOS, and Linux. + + + + + +### Sign up for an Account with the CLI + +You can sign up for a free account using the CLI or skip this step if you already have an account. + + ### Login to Agentuity -```bash -agentuity login -``` + +You can skip this step if you used the CLI to sign up for an account, otherwise you must login to your account using the CLI. + + ### Create Your First Project -```bash -agentuity new -``` + +You can select a template to get started quickly. + + -### Deploy Your Project -```bash -agentuity deploy -``` +### Run Your Agent Locally + +You can run your agent locally to test it out before you deploy it to the cloud. + + -### Access Your Agent's Webhook -After deploying your agent, you can find its webhook URL in the agent's dashboard: -1. Navigate to your agent in the Agentuity Cloud Console -2. Click on the "Connections" tab or the webhook icon in the I/O visualization -3. In the "Inbound Webhook" modal, you'll find the webhook URL and configuration options +### Deploy Your Project to the Cloud + +Deploy your agent to the cloud and start using it! 🚀 + + + + +If you're using an Agentic Code Editor such as [Cursor](https://www.cursor.com), just tell your agent to deploy your project to the cloud such as "Deploy my project to the cloud" and it will do it for you. + -This webhook URL is what you'll use to send requests to your agent from external applications. + -## Documentation Sections +## Recommended Reading + + -## Need Help? - -Join our [Community Discord](https://discord.com/invite/vtn3hgUfuc) for assistance. diff --git a/content/Introduction/meta.json b/content/Introduction/meta.json index 484897a1..90c2cb0c 100644 --- a/content/Introduction/meta.json +++ b/content/Introduction/meta.json @@ -1,4 +1,4 @@ { "title": "Introduction", - "pages": ["..."] + "pages": ["index", "architecture", "templates"] } diff --git a/content/Introduction/templates.mdx b/content/Introduction/templates.mdx new file mode 100644 index 00000000..89e4df6c --- /dev/null +++ b/content/Introduction/templates.mdx @@ -0,0 +1,60 @@ +--- +title: Agent Templates +description: Pre-configured agent configurations +--- + +## Overview + +Templates are pre-configured agent configurations that can be used to quickly deploy and configure Agentuity for popular agent frameworks, AI providers and runtimes. + +When you create a new Agent project, you can select a template to use as a starting point. + +### Python Frameworks + +The following Python Agent frameworks are supported out-of-the-box: + +| Framework | More Information | +| ------------ | ----------------------------------- | +| CrewAI | https://www.crewai.com/ | +| LlamaIndex | https://www.llamaindex.ai/ | +| LangChain | https://www.langchain.com/ | +| LangGraph | https://www.langchain.com/langgraph | +| Pydantic AI | https://ai.pydantic.dev/ | + +The following Python AI providers are supported out-of-the-box: + +| Provider | More Information | +| ------------- | ------------------------------- | +| Anthropic | https://www.anthropic.com/ | +| Google Gen AI | https://ai.google.com/ | +| OpenAI | https://openai.com/ | +| LiteLLM | https://www.litellm.ai/ | + +### JavaScript Frameworks + +The following JavaScript Agent frameworks are supported out-of-the-box: + +| Framework | More Information | +| ------------- | ------------------------------- | +| Mastra | https://mastra.ai/ | +| Vercel AI SDK | https://ai.vercel.com/ | + +The following JavaScript AI providers are supported out-of-the-box: + +| Provider | More Information | +| ------------- | ------------------------------- | +| Anthropic | https://www.anthropic.com/ | +| Google Gen AI | https://ai.google.com/ | +| OpenAI | https://openai.com/ | + + +For JavaScript, both the Bun and NodeJS runtimes are supported. + + +## Creating Templates + +The Agentuity Template system is fully open source and you can create your own templates by forking the [Agentuity Template repository](https://github.com/agentuity/templates) and making a pull request. + +Run the following command to test your template locally: + + diff --git a/content/SDKs/javascript/api-reference.mdx b/content/SDKs/javascript/api-reference.mdx index d290c54f..b2ac0b61 100644 --- a/content/SDKs/javascript/api-reference.mdx +++ b/content/SDKs/javascript/api-reference.mdx @@ -90,7 +90,6 @@ export default handler; The Agentuity SDK provides two storage APIs: Key-Value Storage and Vector Storage. - ### Key-Value Storage The Key-Value Storage API provides a simple way to store and retrieve data. It is accessed through the `context.kv` object. @@ -550,7 +549,6 @@ Gets metadata associated with the request. Returns the metadata value for the specified key, or the default value if the key does not exist. - #### `json(): Promise` Gets the payload of the request as a JSON object. @@ -958,8 +956,6 @@ export const welcome = (): AgentWelcomeResult => { }; ``` - - ## Session The Agentuity SDK provides a `Session` interface that represents the current agent execution context. @@ -1038,7 +1034,6 @@ This change affects all methods on the `Data` interface: - `data.buffer` → `data.buffer()` - `data.stream` → `data.stream()` - ## Deprecated Features ### `/run/:id` Route diff --git a/content/SDKs/javascript/core-concepts.mdx b/content/SDKs/javascript/core-concepts.mdx index 3434d361..5b31d352 100644 --- a/content/SDKs/javascript/core-concepts.mdx +++ b/content/SDKs/javascript/core-concepts.mdx @@ -39,7 +39,6 @@ export default handler; Use the `agentuity project` and `agentuity agent` commands to manage your configuration. - ## Request and Response Handling The Agentuity SDK provides a structured way to handle requests and generate responses: @@ -58,7 +57,6 @@ Requests contain information about the trigger event and payload data. The `Agen - `request.data.text()` - Get the payload as a string (async, requires await) - `request.data.binary()` - Get the payload as an ArrayBuffer (async, requires await) - ### Responses Responses are created using the `AgentResponse` interface, which provides methods for different response types: diff --git a/content/SDKs/javascript/examples/index.mdx b/content/SDKs/javascript/examples/index.mdx index 297a5479..aa30dbf5 100644 --- a/content/SDKs/javascript/examples/index.mdx +++ b/content/SDKs/javascript/examples/index.mdx @@ -541,9 +541,7 @@ export default async function Agent( To use this example, you'll need to install the following dependencies: -```bash -npm install ai @ai-sdk/openai -``` + ## Agent-to-Agent Streaming Example diff --git a/content/SDKs/javascript/frameworks.mdx b/content/SDKs/javascript/frameworks.mdx index ae947fad..df23147f 100644 --- a/content/SDKs/javascript/frameworks.mdx +++ b/content/SDKs/javascript/frameworks.mdx @@ -7,37 +7,155 @@ The Agentuity JavaScript SDK provides a flexible and powerful way to integrate o The following frameworks are currently supported: +- [LangChain](https://www.langchain.com/) +- [Mastra](https://mastra.ai/) - [Vercel AI SDK](https://www.vercel.com/ai) ## Using Frameworks with Agentuity -The use a framework with Agentuity, choose the framework template when creating a new project. +To use a framework with Agentuity, choose the framework template when creating a new project. -```bash -agentuity new -``` + When you select one of the framework templates, the Agentuity CLI will install the necessary dependencies and create a new project with the framework already configured. -## Vercel AI SDK +### Vercel AI SDK Example Agent using Vercel AI SDK: ```typescript -import type { AgentRequest, AgentResponse, AgentContext } from "@agentuity/sdk"; -import { generateText } from "ai"; -import { openai } from "@ai-sdk/openai"; +import type { AgentContext, AgentRequest, AgentResponse } from '@agentuity/sdk'; +import { anthropic } from '@ai-sdk/anthropic'; +import { generateObject } from 'ai'; +import { z } from 'zod'; export default async function Agent( - req: AgentRequest, - resp: AgentResponse, - ctx: AgentContext, + req: AgentRequest, + resp: AgentResponse, + ctx: AgentContext +) { + const prompt = + (await req.data.text()) ?? 'Recommend dinner spots in Austin, TX'; + + // Get user intent + const userIntent = await generateObject({ + model: anthropic('claude-3-7-sonnet-latest'), + system: ` + You serve as a central hub that routes user requests to the right + AI agent based on the user's intent. Classify the user's intent + and select the best agent to handle it. + `, + schema: z.object({ + agentType: z.enum(['LocalGuide']), + }), + prompt, + }); + + // Route to appropriate agent based on intent + if (userIntent.object?.agentType === 'LocalGuide') { + return await resp.handoff( + { name: 'LocalGuide' }, + { + data: prompt, + contentType: 'text/plain', + } + ); + } + + return resp.text("Sorry, I don't know how to help with that."); +} +``` + +### Mastra + +Example Agent using Mastra: + +```typescript +import type { AgentContext, AgentRequest, AgentResponse } from '@agentuity/sdk'; +import { anthropic } from '@ai-sdk/anthropic'; +import { Agent } from '@mastra/core/agent'; + +export default async function AgentuityAgent( + req: AgentRequest, + resp: AgentResponse, + ctx: AgentContext +) { + const prompt = + (await req.data.text()) ?? 'Recommend dinner spots in Austin, TX'; + + // Get user intent + const agent = new Agent({ + name: 'Concierge', + model: anthropic('claude-3-7-sonnet-latest'), + instructions: ` + You serve as a central hub that routes user requests to the right + AI agent based on the user's intent. Classify the user's intent and + select the best agent (for now, just "LocalGuide") to handle it. + Respond ONLY with the agent name. + `, + }); + + const result = await agent.generate(prompt, { maxSteps: 5 }); + const userIntent = result.text?.trim(); + + // Route to appropriate agent based on intent + if (userIntent === 'LocalGuide') { + return await resp.handoff( + { name: 'LocalGuide' }, + { + data: prompt, + contentType: 'text/plain', + } + ); + } + + return resp.text("Sorry, I don't know how to help with that."); +} +``` + +### LangChain + +Example Agent using LangChain: + +```typescript +import type { AgentContext, AgentRequest, AgentResponse } from '@agentuity/sdk'; +import { anthropic } from '@ai-sdk/anthropic'; +import { Agent } from '@mastra/core/agent'; + +export default async function AgentuityAgent( + req: AgentRequest, + resp: AgentResponse, + ctx: AgentContext ) { - const res = await generateText({ - model: openai("gpt-4o"), - system: "You are a friendly assistant!", - prompt: req.text() ?? "Why is the sky blue?", - }); - return resp.text(res.text); + const prompt = + (await req.data.text()) ?? 'Recommend dinner spots in Austin, TX'; + + // Get user intent + const agent = new Agent({ + name: 'Concierge', + model: anthropic('claude-3-7-sonnet-latest'), + instructions: ` + You serve as a central hub that routes user requests to the right + AI agent based on the user's intent. Classify the user's intent and + select the best agent (for now, just "LocalGuide") to handle it. + Respond ONLY with the agent name. + `, + }); + + const result = await agent.generate(prompt, { maxSteps: 5 }); + const userIntent = result.text?.trim(); + + // Route to appropriate agent based on intent + if (userIntent === 'LocalGuide') { + return await resp.handoff( + { name: 'LocalGuide' }, + { + data: prompt, + contentType: 'text/plain', + } + ); + } + + return resp.text("Sorry, I don't know how to help with that."); } ``` diff --git a/content/SDKs/javascript/index.mdx b/content/SDKs/javascript/index.mdx index 1505cfe5..56684582 100644 --- a/content/SDKs/javascript/index.mdx +++ b/content/SDKs/javascript/index.mdx @@ -9,9 +9,7 @@ The [Agentuity JavaScript SDK](https://github.com/agentuity/sdk-js) provides a p When you create a project with Agentuity, you will automatically have access to the Agentuity JavaScript SDK. -```bash -agentuity new -``` + The SDK currently works with Bun and Node.js and the project will automatically install the correct dependencies. @@ -30,9 +28,7 @@ You can download and install Node.js from the [official website](https://nodejs. Bun is an optional but recommended runtime for the Agentuity SDK. You can install it using the following command: -```bash -curl -fsSL https://bun.sh/install | bash -``` + For more information, visit the [Bun installation documentation](https://bun.sh/docs/installation). @@ -40,33 +36,24 @@ For more information, visit the [Bun installation documentation](https://bun.sh/ You can start your project by running the following command: -```bash -agentuity dev -``` + This will start your project in development mode and open a new browser window connecting your Agent to the Agentuity Console in Live Mode. You can also start your project in development mode without connecting to the Agentuity Console by running the following command: -```bash -npm start -``` + Or for Bun: -```bash -bun start -``` + If you would like to manually test your Agents locally, you can do so by running the following command: -```bash -curl -v http://localhost:3500/run/agent_ID --json '{"input": "Hello, world!"}' -``` + Make sure you replace `agent_ID` with the ID of your Agent. - ## Next Steps - [Core Concepts](/SDKs/javascript/core-concepts) - Learn about the fundamental concepts of the Agentuity JavaScript SDK diff --git a/content/SDKs/javascript/meta.json b/content/SDKs/javascript/meta.json new file mode 100644 index 00000000..4c2fa76f --- /dev/null +++ b/content/SDKs/javascript/meta.json @@ -0,0 +1,4 @@ +{ + "title": "JavaScript SDK", + "pages": ["api-reference", "core-concepts", "..."] +} diff --git a/content/SDKs/javascript/troubleshooting.mdx b/content/SDKs/javascript/troubleshooting.mdx index 3f82d813..5983ba36 100644 --- a/content/SDKs/javascript/troubleshooting.mdx +++ b/content/SDKs/javascript/troubleshooting.mdx @@ -11,24 +11,16 @@ This section covers common issues you might encounter when working with the Agen **Solution**: 1. Verify your Node.js version meets the minimum requirement (v22+): - ```bash - node --version - ``` + 2. If you're using an older version, upgrade Node.js: - ```bash - # Using nvm (recommended) - nvm install 22 - nvm use 22 - - # Or download from nodejs.org - ``` + + 3. If you can't upgrade Node.js, consider using a transpiler like Babel to support newer syntax in older environments. - ## Getting Additional Help If you're still experiencing issues after trying the troubleshooting steps above: 1. Check the [Agentuity documentation](https://agentuity.dev) for updates and additional information. -2. Join the [Agentuity Discord](https://discord.com/invite/vtn3hgUfuc) to ask questions and get help from other developers. +2. Join the [Agentuity Discord](https://discord.gg/agentuity) to ask questions and get help from other developers. 4. File an issue on the [GitHub repository](https://github.com/agentuity/sdk-js/issues) if you believe you've found a bug. diff --git a/content/SDKs/python/api-reference.mdx b/content/SDKs/python/api-reference.mdx index 19394666..4029c5ea 100644 --- a/content/SDKs/python/api-reference.mdx +++ b/content/SDKs/python/api-reference.mdx @@ -69,7 +69,6 @@ def welcome(): The Agentuity SDK provides a structured way to define and handle agents. An agent consists of a handler function, with its configuration managed by the Agentuity CLI. - ### Agent Handler The agent handler is a function that processes requests and returns responses: @@ -135,7 +134,6 @@ async def handler(request: AgentRequest, response: AgentResponse, context: Agent The Agentuity SDK provides two storage APIs: Key-Value Storage and Vector Storage. - ### Key-Value Storage The Key-Value Storage API provides a simple way to store and retrieve data. It is accessed through the `context.kv` object. diff --git a/content/docs/SDKs/python/async-api.mdx b/content/SDKs/python/async-api.mdx similarity index 100% rename from content/docs/SDKs/python/async-api.mdx rename to content/SDKs/python/async-api.mdx diff --git a/content/docs/SDKs/python/data-handling.mdx b/content/SDKs/python/data-handling.mdx similarity index 100% rename from content/docs/SDKs/python/data-handling.mdx rename to content/SDKs/python/data-handling.mdx diff --git a/content/SDKs/python/examples/index.mdx b/content/SDKs/python/examples/index.mdx index d984b385..5d0f4715 100644 --- a/content/SDKs/python/examples/index.mdx +++ b/content/SDKs/python/examples/index.mdx @@ -291,7 +291,6 @@ from agentuity import AgentRequest, AgentResponse, AgentContext client = OpenAI() - async def run(request: AgentRequest, response: AgentResponse, context: AgentContext): chat_completion = client.chat.completions.create( messages=[ diff --git a/content/SDKs/python/examples/pydantic.mdx b/content/SDKs/python/examples/pydantic.mdx index 33d739f9..a1d25fd5 100644 --- a/content/SDKs/python/examples/pydantic.mdx +++ b/content/SDKs/python/examples/pydantic.mdx @@ -7,7 +7,6 @@ description: Examples of using the Agentuity Python SDK with Pydantic Example taken from: https://ai.pydantic.dev/agents/#introduction - ```python import random # Added for random number generation from pydantic_ai import Agent, RunContext @@ -30,7 +29,6 @@ async def roulette_wheel(ctx: RunContext[int], square: int) -> str: """check if the square is a winner""" return 'winner' if square == ctx.deps else 'loser' - async def run(request: AgentRequest, response: AgentResponse, context: AgentContext): # Spin that wheel! success_number = random.randint(0, 20) @@ -68,7 +66,6 @@ async def run(request: AgentRequest, response: AgentResponse, context: AgentCont Taken from: https://ai.pydantic.dev/examples/bank-support/#example-code - ```python from dataclasses import dataclass from pydantic import BaseModel, Field @@ -100,19 +97,16 @@ class DatabaseConn: # if the LLM is expected to handle/retry based on it. raise ValueError("Customer not found or query parameters invalid") - @dataclass class SupportDependencies: customer_id: int db: DatabaseConn - class SupportOutput(BaseModel): support_advice: str = Field(description="Advice returned to the customer") block_card: bool = Field(description="Whether to block their card or not") risk: int = Field(description="Risk level of query", ge=0, le=10) - # --- PydanticAI Agent Definition (from Example) --- support_agent = Agent( @@ -126,7 +120,6 @@ support_agent = Agent( ), ) - @support_agent.system_prompt async def add_customer_name(ctx: RunContext[SupportDependencies]) -> str: customer_name = await ctx.deps.db.customer_name(id=ctx.deps.customer_id) @@ -134,7 +127,6 @@ async def add_customer_name(ctx: RunContext[SupportDependencies]) -> str: return f"The customer's name is {customer_name!r}." return "The customer's name could not be determined." - @support_agent.tool async def customer_balance( ctx: RunContext[SupportDependencies], include_pending: bool @@ -150,7 +142,6 @@ async def customer_balance( # Let the LLM know the tool failed and why return f"Could not retrieve balance: {e}" - # --- Agentuity Agent Entry Point --- async def run(request: AgentRequest, response: AgentResponse, context: AgentContext): context.logger.info("BankSupport agent initiated.") @@ -193,6 +184,4 @@ async def run(request: AgentRequest, response: AgentResponse, context: AgentCont status_code=500, ) -``` - - +``` \ No newline at end of file diff --git a/content/SDKs/python/frameworks.mdx b/content/SDKs/python/frameworks.mdx index 06195e5b..cca776ff 100644 --- a/content/SDKs/python/frameworks.mdx +++ b/content/SDKs/python/frameworks.mdx @@ -7,149 +7,187 @@ The Agentuity Python SDK provides a flexible and powerful way to integrate other The following frameworks are currently supported: -- [LlamaIndex](https://www.llamaindex.ai/) -- [LangChain](https://www.langchain.com/) - [CrewAI](https://www.crewai.com/) +- [LangChain](https://www.langchain.com/) +- [LlamaIndex](https://www.llamaindex.ai/) +- [Pydantic](https://pydantic.dev/) ## Using Frameworks with Agentuity -The use a framework with Agentuity, choose the framework template when creating a new project. +To use a framework with Agentuity, choose the framework template when creating a new project. -```bash -agentuity new -``` + When you select one of the framework templates, the Agentuity CLI will install the necessary dependencies and create a new project with the framework already configured. -## LlamaIndex +### CrewAI -Example Agent using LlamaIndex: +Example Agent using CrewAI: ```python -from llama_index.core.agent.workflow import AgentWorkflow -from llama_index.llms.openai import OpenAI from agentuity import AgentRequest, AgentResponse, AgentContext +from agents.Concierge.crew import Concierge + +async def run( + request: AgentRequest, + response: AgentResponse, + context: AgentContext, +): + prompt = await request.data.text() or "Recommend dinner spots in Austin, TX" + + concierge = Concierge() + crew = concierge.crew(prompt) + result = crew.kickoff() + + return response.text(str(result)) +``` +Then for your Crew, you might have the following: -# Define a simple calculator tool -def multiply(a: float, b: float) -> float: - """Useful for multiplying two numbers.""" - return a * b +```python +from crewai import Agent, Crew, Process, Task +from crewai.project import CrewBase, agent, crew, task +@CrewBase +class Concierge: + """Concierge crew""" -# Create an agent workflow with our calculator tool -agent = AgentWorkflow.from_tools_or_functions( - [multiply], - llm=OpenAI(model="gpt-4o-mini"), - system_prompt="You are a helpful assistant that can multiply two numbers.", -) + agents_config = "config/agents.yaml" + tasks_config = "config/tasks.yaml" + @agent + def intent_analyzer(self) -> Agent: + return Agent(config=self.agents_config["intent_analyzer"], verbose=True) -async def run(request: AgentRequest, response: AgentResponse, context: AgentContext): - result = await agent.run(request.text or "What is 1234 * 4567?") - return response.text(str(result)) + @agent + def local_guide(self) -> Agent: + return Agent(config=self.agents_config["local_guide"], verbose=True) + + @task + def local_guide_task(self, query: str = "") -> Task: + config = self.tasks_config["local_guide_task"].copy() + config["description"] = config["description"].format(query=query) + + return Task(config=config) + + @crew + def crew(self, query: str) -> Crew: + return Crew( + agents=[self.local_guide()], + tasks=[self.local_guide_task(query)], + process=Process.hierarchical, + manager_agent=self.intent_analyzer(), + verbose=True, + ) ``` -## LangChain +### LangChain Example Agent using LangChain: ```python from agentuity import AgentRequest, AgentResponse, AgentContext -from langchain_openai import ChatOpenAI +from langchain_anthropic import ChatAnthropic from langchain_core.prompts import ChatPromptTemplate from langchain_core.output_parsers import StrOutputParser -llm = ChatOpenAI() - - async def run(request: AgentRequest, response: AgentResponse, context: AgentContext): - prompt = ChatPromptTemplate.from_messages( + prompt = await request.data.text() or "Recommend dinner spots in Austin, TX" + + # Get user intent + template = ChatPromptTemplate.from_messages( [ ( "system", - "You are an expert in world knowledge and all things in general.", + """You serve as a central hub that routes user requests to the right + AI agent based on the user's intent. Classify the user's intent and + select the best agent to handle it: for now, just LocalGuide. + Respond ONLY with the agent name.""" ), ("user", "{input}"), ] ) + llm = ChatAnthropic(model="claude-3-7-sonnet-latest", max_retries=5) output_parser = StrOutputParser() - chain = prompt | llm | output_parser - result = chain.invoke({"input": request.text}) - - return response.text(result) + chain = template | llm | output_parser + + user_intent = await chain.ainvoke({"input": prompt}) + + # Route to appropriate agent based on intent + if user_intent == "LocalGuide": + return await response.handoff( + { "name": "LocalGuide" }, + prompt + ) + else: + return response.text("Sorry, I don't know how to help with that.") ``` -### CrewAI +### LlamaIndex -Example Agent using CrewAI: +Example Agent using LlamaIndex: ```python from agentuity import AgentRequest, AgentResponse, AgentContext -from agents.mycrew.crew import MyCrew - +from llama_index.core.agent.workflow import AgentWorkflow +from llama_index.llms.anthropic import Anthropic async def run(request: AgentRequest, response: AgentResponse, context: AgentContext): - inputs = {"topic": request.text or "AI LLMs"} - result = MyCrew().crew().kickoff(inputs=inputs) - return response.text(str(result)) + prompt = await request.data.text() or "Recommend dinner spots in Austin, TX" + + # Get user intent + agent = AgentWorkflow.from_tools_or_functions( + [], + llm=Anthropic(model="claude-3-7-sonnet-latest", max_retries=3), + system_prompt="""You serve as a central hub that routes user requests to the right + AI agent based on the user's intent. Classify the user's intent and + select the best agent to handle it: for now, just LocalGuide. + Respond ONLY with the agent name.""", + ) + + user_intent = await agent.run(prompt) + + # Route to appropriate agent based on intent + if str(user_intent) == "LocalGuide": + return await response.handoff( + { "name": "LocalGuide" }, + prompt + ) + else: + return response.text("Sorry, I don't know how to help with that.") ``` -Then for your Crew, you might hvave the following: - -```python -from crewai import Agent, Crew, Process, Task -from crewai.project import CrewBase, agent, crew, task - -# If you want to run a snippet of code before or after the crew starts, -# you can use the @before_kickoff and @after_kickoff decorators -# https://docs.crewai.com/concepts/crews#example-crew-class-with-decorators - - -@CrewBase -class MyCrew: - """MyCrew crew""" - - # Learn more about YAML configuration files here: - # Agents: https://docs.crewai.com/concepts/agents#yaml-configuration-recommended - # Tasks: https://docs.crewai.com/concepts/tasks#yaml-configuration-recommended - agents_config = "config/agents.yaml" - tasks_config = "config/tasks.yaml" - - # If you would like to add tools to your agents, you can learn more about it here: - # https://docs.crewai.com/concepts/agents#agent-tools - @agent - def researcher(self) -> Agent: - return Agent(config=self.agents_config["researcher"], verbose=True) +### Pydantic - @agent - def reporting_analyst(self) -> Agent: - return Agent(config=self.agents_config["reporting_analyst"], verbose=True) +Example Agent using Pydantic: - # To learn more about structured task outputs, - # task dependencies, and task callbacks, check out the documentation: - # https://docs.crewai.com/concepts/tasks#overview-of-a-task - @task - def research_task(self) -> Task: - return Task( - config=self.tasks_config["research_task"], - ) +```python +from agentuity import AgentRequest, AgentResponse, AgentContext +from pydantic_ai import Agent - @task - def reporting_task(self) -> Task: - return Task(config=self.tasks_config["reporting_task"], output_file="report.md") +async def run(request: AgentRequest, response: AgentResponse, context: AgentContext): + prompt = await request.data.text() or "Recommend dinner spots in Austin, TX" + + # Get user intent + agent = Agent( + "claude-3-7-sonnet-latest", + output_type=str, + system_prompt=( + """You serve as a central hub that routes user requests to the right + AI agent based on the user's intent. Classify the user's intent and + select the best agent to handle it: for now, just LocalGuide. + Respond ONLY with the agent name.""" + ), + ) - @crew - def crew(self) -> Crew: - """Creates the MyagentCrew crew""" - # To learn how to add knowledge sources to your crew, check out the documentation: - # https://docs.crewai.com/concepts/knowledge#what-is-knowledge + intent_result = await agent.run(prompt) - return Crew( - agents=self.agents, # Automatically created by the @agent decorator - tasks=self.tasks, # Automatically created by the @task decorator - process=Process.sequential, - verbose=True, - # process=Process.hierarchical, # In case you wanna use that instead https://docs.crewai.com/how-to/Hierarchical/ + # Route to appropriate agent based on intent + if intent_result.output == "LocalGuide": + return await response.handoff( + { "name": "LocalGuide" }, + prompt ) + else: + return response.text("Sorry, I don't know how to help with that.") ``` diff --git a/content/SDKs/python/index.mdx b/content/SDKs/python/index.mdx index b347597c..fe283a64 100644 --- a/content/SDKs/python/index.mdx +++ b/content/SDKs/python/index.mdx @@ -9,9 +9,7 @@ The [Agentuity Python SDK](https://github.com/agentuity/sdk-py) provides a power When you create a project with Agentuity, you will automatically have access to the Agentuity Python SDK. -```bash -agentuity new -``` + The SDK currently works with Python and the project will automatically install the correct dependencies. @@ -29,9 +27,7 @@ You can download and install Python from the [official website](https://www.pyth [UV](https://docs.astral.sh/uv/) is an optional but recommended package manager for Python. You can install it using the following command: -```bash -curl -LsSf https://astral.sh/uv/install.sh | sh -``` + For more information, visit the [UV installation documentation](https://docs.astral.sh/uv/getting-started/installation/). @@ -39,26 +35,19 @@ For more information, visit the [UV installation documentation](https://docs.ast You can start your project by running the following command: -```bash -agentuity dev -``` + This will start your project in development mode and open a new browser window connecting your Agent to the Agentuity Console in Live Mode. You can also start your project in development mode without connecting to the Agentuity Console by running the following command: -```bash -uv run server.py -``` + If you would like to manually test your Agents locally, you can do so by running the following command: -```bash -curl -v http://localhost:3500/run/agent_ID --json '{"input": "Hello, world!"}' -``` - -Make sure you replace `agent_ID` with the ID of your Agent. + +> Make sure you replace `agent_ID` with the ID of your Agent. ## Next Steps diff --git a/content/SDKs/python/meta.json b/content/SDKs/python/meta.json new file mode 100644 index 00000000..62d546f8 --- /dev/null +++ b/content/SDKs/python/meta.json @@ -0,0 +1,4 @@ +{ + "title": "Python SDK", + "pages": ["api-reference", "core-concepts", "..."] +} diff --git a/content/docs.json b/content/docs.json deleted file mode 100644 index 3e815cc5..00000000 --- a/content/docs.json +++ /dev/null @@ -1,435 +0,0 @@ -{ - "docs": [ - { - "file": "CLI/agent.mdx", - "meta": { - "title": "Agent Commands", - "description": "Commands for managing agents in your Agentuity project" - }, - "content": "\nThe `agent` commands allow you to create, list, delete, and manage agents in your Agentuity project.\n\n## agent create\n\nCreates a new agent in your project.\n\n### Aliases\n\n`agentuity agent new` (shortcut for `agentuity agent create`)\n\n### Usage\n\n```bash\nagentuity agent create [name] [description] [auth_type]\n```\n\n**Arguments:**\n- `name` - The name of the agent\n- `description` - A description of what the agent does\n- `auth_type` - Authentication method for the agent (API Key or None)\n\n**Flags:**\n- `-d, --dir string` - The project directory\n\nThis command will prompt you for:\n- The name of the agent\n- A description of what the agent does\n- Authentication type (API Key or None)\n\nAfter providing this information, the command will:\n1. Create the agent in the Agentuity Cloud\n2. Set up the necessary local files for the agent\n3. Update your project configuration to include the new agent\n\n### Example\n\n```bash\n$ agentuity agent create\nWhat should we name the agent? MyNewAgent\nHow should we describe what the MyNewAgent agent does? This agent processes customer support requests\n✓ Agent created successfully\n```\n\n## agent list\n\nLists all agents in your project.\n\n### Aliases\n\n`agentuity agent ls` (shortcut for `agentuity agent list`)\n\n### Usage\n\n```bash\nagentuity agent list\n```\n\n**Flags:**\n- `-d, --dir string` - The project directory\n\nThis command will display a list of all agents in your project, including:\n- Agent name\n- Agent ID\n- Agent description\n- Status (whether the agent exists locally, remotely, or both)\n\n### Example\n\n```bash\n$ agentuity agent list\nsrc/agents\n├── MyFirstAgent\n│ ├── ID: 3c4c0b692533d7807cf0f649ef425dfa29b58bcc99be03e208e52749107fca2e\n│ └── Description: A simple agent that can generate text\n│\n└── MyNewAgent\n ├── ID: 7a8b9c0d1e2f3g4h5i6j7k8l9m0n1o2p3q4r5s6t7u8v9w0x1y2z3a4b5c6d7e8f\n └── Description: This agent processes customer support requests\n```\n\n## agent delete\n\nDeletes one or more agents from your project.\n\n### Aliases\n\n`agentuity agent rm` or `agentuity agent del` (shortcuts for `agentuity agent delete`)\n\n### Usage\n\n```bash\nagentuity agent delete\n```\n\n**Flags:**\n- `-d, --dir string` - The project directory\n\nThis command will:\n1. Display a list of all agents in your project\n2. Allow you to select one or more agents to delete\n3. Ask for confirmation before deleting the selected agents\n4. Delete the selected agents from both the Agentuity Cloud and your local project\n\n### Example\n\n```bash\n$ agentuity agent delete\nSelect one or more agents to delete:\n[ ] MyFirstAgent 3c4c0b692533d7807cf0f649ef425dfa29b58bcc99be03e208e52749107fca2e\n[x] MyNewAgent 7a8b9c0d1e2f3g4h5i6j7k8l9m0n1o2p3q4r5s6t7u8v9w0x1y2z3a4b5c6d7e8f\n\nAre you sure you want to delete the selected agents? This action cannot be undone. [y/N] y\n✓ Agent deleted successfully\n```\n\n## agent apikey\n\nGets the API key for an agent.\n\n### Aliases\n\n`agentuity agent key` (shortcut for `agentuity agent apikey`)\n\n### Usage\n\n```bash\nagentuity agent apikey [agent_name]\n```\n\n**Arguments:**\n- `agent_name` - The name or ID of the agent (optional)\n\n**Flags:**\n- `-d, --dir string` - The project directory\n\nThis command will:\n1. If an agent name is provided, retrieve the API key for that agent\n2. If no agent name is provided and there's only one agent in the project, retrieve the API key for that agent\n3. If no agent name is provided and there are multiple agents, display a list of agents to select from\n\n### Example\n\n```bash\n# Get API key for a specific agent\n$ agentuity agent apikey MyFirstAgent\nAgent MyFirstAgent API key: [API KEY WILL BE DISPLAYED HERE]\n\n# Get API key interactively\n$ agentuity agent apikey\nSelect an Agent:\n> MyFirstAgent 3c4c0b692533d7807cf0f649ef425dfa29b58bcc99be03e208e52749107fca2e\n MyNewAgent 7a8b9c0d1e2f3g4h5i6j7k8l9m0n1o2p3q4r5s6t7u8v9w0x1y2z3a4b5c6d7e8f\n\nAgent MyFirstAgent API key: [API KEY WILL BE DISPLAYED HERE]\n```\n\n## Global Flags\n\nThese flags apply to all agent commands:\n\n- `--config string` - Config file (default is $HOME/.config/agentuity/config.yaml)\n- `--log-level string` - The log level to use (default \"info\")\n" - }, - { - "file": "CLI/apikey.mdx", - "meta": { - "title": "API Key Commands", - "description": "Managing API keys with the Agentuity CLI" - }, - "content": "\n## Overview\n\nThe Agentuity CLI provides commands to manage API keys for authentication with the Agentuity Cloud Platform.\n\n## Commands\n\n### apikey\n\nBase command for API key management.\n\n```bash\nagentuity apikey\n```\n\n**Aliases:** `apikeys`\n\n**Examples:**\n```bash\nagentuity apikey list\nagentuity apikey create\n```\n\n### apikey create\n\nCreates a new API key for use with the Agentuity Cloud Platform.\n\n```bash\nagentuity apikey create\n```\n\n**Aliases:** None\n\n**Examples:**\n```bash\nagentuity apikey create\n```\n\n### apikey delete\n\nDeletes an existing API key.\n\n```bash\nagentuity apikey delete\n```\n\n**Aliases:** None\n\n**Examples:**\n```bash\nagentuity apikey delete\n```\n\n### apikey get\n\nRetrieves information about a specific API key.\n\n```bash\nagentuity apikey get\n```\n\n**Aliases:** None\n\n**Examples:**\n```bash\nagentuity apikey get\n```\n\n### apikey list\n\nLists all available API keys for your account.\n\n```bash\nagentuity apikey list\n```\n\n**Aliases:** None\n\n**Examples:**\n```bash\nagentuity apikey list\n```\n" - }, - { - "file": "CLI/auth.mdx", - "meta": { - "title": "Authentication Commands", - "description": "Commands for authenticating with the Agentuity Cloud Platform" - }, - "content": "\nThe `auth` commands allow you to authenticate with the Agentuity Cloud Platform, manage your login session, and check your authentication status.\n\n## auth login\n\nLogs you into the Agentuity Cloud Platform.\n\n### Aliases\n\n`agentuity login` (shortcut for `agentuity auth login`)\n\n### Usage\n\n```bash\nagentuity auth login\n```\n\nThis command will print out a one-time code and open a browser window where you can log in to your Agentuity account and provide the one-time code. After successful authentication, your credentials will be stored locally for future use. By default, the credentials and other configuration are stored in the following file: `$HOME/.config/agentuity/config.json`.\n\n### Example\n\n```bash\n$ agentuity auth login\n✓ You are now logged in\n```\n\n## auth logout\n\nLogs you out of the Agentuity Cloud Platform.\n\n### Aliases\n\n`agentuity logout` (shortcut for `agentuity auth logout`)\n\n### Usage\n\n```bash\nagentuity auth logout\n```\n\nThis command will remove your stored credentials.\n\n### Example\n\n```bash\n$ agentuity auth logout\n✓ You have been logged out\n```\n\n## auth whoami\n\nDisplays information about the currently logged-in user.\n\n### Aliases\n\n`agentuity whoami` (shortcut for `agentuity auth whoami`)\n\n### Usage\n\n```bash\nagentuity auth whoami\n```\n\n### Example\n\n```bash\n$ agentuity auth whoami\n╭──────────────────────────────────────────────────────────────────────────────────╮\n│ │\n│ Currently logged in as │\n│ │\n│ Name: Jeff Haynie user_xsjDaYg0UsTcARJWa1BI5irsoB7 │\n│ │\n│ Organization: Jeff Team org_xsjDbpem0VT7QA9DupHGdE72HLQ │\n│ │\n╰──────────────────────────────────────────────────────────────────────────────────╯\n```\n" - }, - { - "file": "CLI/bundle.mdx", - "meta": { - "title": "Bundle Command", - "description": "Command for bundling Agentuity projects for deployment" - }, - "content": "\nThe `bundle` command allows you to create a bundled version of your Agentuity project for deployment.\n\n## bundle\n\nRuns the build bundle process for an Agentuity project.\n\n### Aliases\n\n`agentuity build` (shortcut for `agentuity bundle`)\n\n### Usage\n\n```bash\nagentuity bundle [flags]\n```\n\n### Flags\n\n| Flag | Description |\n| ---- | ----------- |\n| `--dir`, `-d` | The directory of the project to bundle |\n| `--production`, `-p` | Bundle the project for production deployment |\n\n\n> You generally don't need to use this command as it is automatically called when you run `agentuity dev` or `agentuity start`." - }, - { - "file": "CLI/cloud.mdx", - "meta": { - "title": "Cloud Commands", - "description": "Commands for deploying and managing projects in the Agentuity Cloud Platform" - }, - "content": "\nThe `cloud` commands allow you to deploy and manage your projects in the Agentuity Cloud Platform.\n\n## cloud deploy\n\nDeploys a project to the Agentuity Cloud Platform.\n\n### Aliases\n\n`agentuity deploy` (shortcut for `agentuity cloud deploy`)\n\n### Usage\n\n```bash\nagentuity cloud deploy [flags]\n```\n\n### Flags\n\n| Flag | Description |\n| ---- | ----------- |\n| `--dir`, `-d` | The directory of the project to deploy |\n\n### Examples\n\nDeploy a project from the current directory:\n```bash\n$ agentuity cloud deploy\n✓ Project deployed successfully\n🚀 Your project is now live at: https://app.agentuity.com/projects/proj_123456\n```\n\nDeploy a project from a specific directory:\n```bash\n$ agentuity cloud deploy --dir ~/projects/my-project\n✓ Project deployed successfully\n🚀 Your project is now live at: https://app.agentuity.com/projects/proj_123456\n```\n\n## cloud status\n\nChecks the deployment status of a project.\n\n### Aliases\n\n`agentuity status` (shortcut for `agentuity cloud status`)\n\n### Usage\n\n```bash\nagentuity cloud status [flags]\n```\n\n### Flags\n\n| Flag | Description |\n| ---- | ----------- |\n| `--dir`, `-d` | The directory of the project to check |\n\n### Examples\n\nCheck the status of a project in the current directory:\n```bash\n$ agentuity cloud status\nProject: my-project\nStatus: deployed\nLast deployment: 2025-02-27T04:00:00Z\nURL: https://app.agentuity.com/projects/proj_123456\n```\n" - }, - { - "file": "CLI/dev.mdx", - "meta": { - "title": "Development Commands", - "description": "Commands for local development of Agentuity projects" - }, - "content": "\nThe `dev` commands allow you to run and test your Agentuity projects locally during development.\n\n## dev\n\nRuns a development server for local testing and development.\n\n### Aliases\n\n`agentuity run` (shortcut for `agentuity dev`)\n\n### Usage\n\n```bash\nagentuity dev [flags]\n```\n\n### Flags\n\n| Flag | Description |\n| ---- | ----------- |\n| `--dir`, `-d` | The directory of the project to run |\n| `--websocket-id` | Specify a WebSocket room ID for real-time communication |\n\n### Examples\n\nRun a development server for a project in the current directory:\n```bash\n$ agentuity dev\n✓ Development server started\n🔗 Local URL: http://localhost:3000\n```\n\nRun a development server for a project in a specific directory:\n```bash\n$ agentuity dev --dir ~/projects/my-project\n✓ Development server started\n🔗 Local URL: http://localhost:3000\n```\n\nRun a development server with a specific WebSocket room ID:\n```bash\n$ agentuity dev --websocket-id room_123456\n✓ Development server started\n🔗 Local URL: http://localhost:3000\n🔌 WebSocket connected: room_123456\n```\n" - }, - { - "file": "CLI/env.mdx", - "meta": { - "title": "Environment Commands", - "description": "Commands for managing environment variables and secrets in Agentuity projects" - }, - "content": "\nThe `env` commands allow you to manage environment variables and secrets for your Agentuity projects.\n\n## env set\n\nSets environment variables or secrets for a project.\n\n### Usage\n\n```bash\nagentuity env set [key] [value] [flags]\n```\n\n### Aliases\n\n`agentuity set` (shortcut for `agentuity env set`)\n`agentuity env add`, `agentuity env put`\n\n### Flags\n\n| Flag | Description |\n| ---- | ----------- |\n| `--dir`, `-d` | The directory to the project |\n| `--file`, `-f` | The path to a file containing environment variables to set |\n| `--secret`, `-s` | Force the value(s) to be treated as a secret |\n| `--force` | Don't prompt for confirmation |\n\n### Examples\n\nSet a single environment variable:\n```bash\n$ agentuity env set API_KEY your-api-key\n✓ Environment variable saved\n```\n\nSet a secret:\n```bash\n$ agentuity env set --secret DB_PASSWORD your-password\n✓ Secret saved\n```\n\nSet environment variables from a file:\n```bash\n$ agentuity env set --file .env\n✓ Environment variables and secrets saved\n```\n\n\nAll environment and secret values are encrypted at rest and in transit.\n\n\n## env list\n\nLists all environment variables and secrets for a project.\n\n### Usage\n\n```bash\nagentuity env list [flags]\n```\n\n### Aliases\n\n`agentuity list` (shortcut for `agentuity env list`)\n`agentuity env ls`, `agentuity env show`, `agentuity env print`\n\n### Flags\n\n| Flag | Description |\n| ---- | ----------- |\n| `--dir`, `-d` | The directory to the project |\n\n### Examples\n\n```bash\n$ agentuity env list\nAPI_KEY=your-api-key\nDB_PASSWORD=********\n```\n\n## env get\n\nGets the value of an environment variable or secret.\n\n### Aliases\n\n`agentuity get` (shortcut for `agentuity env get`)\n\n### Usage\n\n```bash\nagentuity env get [key] [flags]\n```\n\n### Flags\n\n| Flag | Description |\n| ---- | ----------- |\n| `--dir`, `-d` | The directory to the project |\n\n### Examples\n\n```bash\n$ agentuity env get API_KEY\nyour-api-key\n```\n\n## env delete\n\nDeletes environment variables or secrets.\n\n### Usage\n\n```bash\nagentuity env delete [key...] [flags]\n```\n\n### Aliases\n\n`agentuity delete` (shortcut for `agentuity env delete`)\n`agentuity env rm`, `agentuity env del`\n\n### Flags\n\n| Flag | Description |\n| ---- | ----------- |\n| `--dir`, `-d` | The directory to the project |\n| `--force` | Don't prompt for confirmation |\n\n### Examples\n\nDelete a single environment variable:\n```bash\n$ agentuity env delete API_KEY\n✓ Environment variable deleted\n```\n\nDelete multiple environment variables:\n```bash\n$ agentuity env delete API_KEY DB_PASSWORD\n✓ Environment variables and secrets deleted\n```\n" - }, - { - "file": "CLI/installation.mdx", - "meta": { - "title": "Installation", - "description": "Installation of Agentuity CLI" - }, - "content": "\nimport { Tab, Tabs } from 'fumadocs-ui/components/tabs';\n\n## Installation\n\n\n \n ### macOS Installation\n\n ```bash\n curl -sSL https://agentuity.sh/install.sh | sh\n ```\n\n ### Upgrading on macOS\n\n To upgrade to the latest version of the Agentuity CLI:\n\n ```bash\n agentuity upgrade\n ```\n \n \n ### Linux Installation\n\n ```bash\n curl -sSL https://agentuity.sh/install.sh | sh\n ```\n\n ### Upgrading on Linux\n\n To upgrade to the latest version of the Agentuity CLI:\n\n ```bash\n agentuity upgrade\n ```\n \n \n ### Windows (WSL) Installation\n\n \n The install script for Windows only works in the WSL (Windows Subsystem for Linux) environment.
\n There is currently no support for a native Windows installer.\n
\n\n ```bash\n curl -sSL https://agentuity.sh/install.sh | sh\n ```\n\n ### Upgrading on Windows (WSL)\n\n To upgrade to the latest version of the Agentuity CLI:\n\n ```bash\n agentuity upgrade\n ```\n
\n
\n\n## Manual Installation\n\nYou can also manually download and install the Agentuity CLI from the [GitHub releases page](https://github.com/agentuity/cli/releases) for any platform:\n\n1. Visit the [Agentuity CLI releases page](https://github.com/agentuity/cli/releases)\n2. Download the appropriate version for your operating system\n3. Extract the downloaded file\n4. Add the executable to your system PATH\n\n## Source Code\n\nThe source code for the Agentuity CLI is available on [GitHub](https://github.com/agentuity/cli).\n\n## Shell Completions\n\nThe Agentuity CLI provides shell completions for bash, zsh, fish, and PowerShell. These can help make your command line experience more efficient by providing tab-completion for commands and options.\n\n### Automatic Setup\n\nWhen you install the CLI using the installer scripts, completions are automatically set up for:\n- **Bash and Zsh** on macOS and Linux (when you have write permissions to the completion directories)\n- **PowerShell** on Windows\n\n### Manual Setup\n\nYou can manually set up completions for any supported shell using the `agentuity completion` command.\n\n\n \n To load completions in your current bash session:\n\n ```bash\n source <(agentuity completion bash)\n ```\n\n To load completions for every new session:\n\n For Linux:\n ```bash\n agentuity completion bash > /etc/bash_completion.d/agentuity\n ```\n\n For macOS:\n ```bash\n agentuity completion bash > $(brew --prefix)/etc/bash_completion.d/agentuity\n ```\n\n Note: This depends on the `bash-completion` package. If not already installed, you can install it via your OS's package manager.\n \n \n To load completions in your current zsh session:\n\n ```bash\n source <(agentuity completion zsh)\n ```\n\n To load completions for every new session:\n\n For Linux:\n ```bash\n agentuity completion zsh > \"${fpath[1]}/_agentuity\"\n ```\n\n For macOS:\n ```bash\n agentuity completion zsh > $(brew --prefix)/share/zsh/site-functions/_agentuity\n ```\n\n If shell completion is not already enabled in your environment, you need to enable it:\n\n ```bash\n echo \"autoload -U compinit; compinit\" >> ~/.zshrc\n ```\n \n \n To load completions in your current fish session:\n\n ```bash\n agentuity completion fish | source\n ```\n\n To load completions for every new session:\n\n ```bash\n agentuity completion fish > ~/.config/fish/completions/agentuity.fish\n ```\n \n \n To load completions in your current PowerShell session:\n\n ```powershell\n agentuity completion powershell | Out-String | Invoke-Expression\n ```\n\n To load completions for every new session, add the output of the above command to your PowerShell profile:\n\n ```powershell\n # Create completion directory if it doesn't exist\n $profileDir = Split-Path -Parent $PROFILE\n $completionDir = Join-Path -Path $profileDir -ChildPath \"Completion\"\n if (-not (Test-Path -Path $completionDir)) {\n New-Item -Path $completionDir -ItemType Directory -Force\n }\n\n # Generate completion script\n agentuity completion powershell > \"$completionDir/agentuity.ps1\"\n\n # Add to profile if not already there\n if (-not (Select-String -Path $PROFILE -Pattern \"agentuity.ps1\" -SimpleMatch -Quiet)) {\n Add-Content -Path $PROFILE -Value \"`n# Agentuity CLI completion`n. '$completionDir/agentuity.ps1'\"\n }\n ```\n \n\n" - }, - { - "file": "CLI/mcp.mdx", - "meta": { - "title": "MCP Commands", - "description": "Documentation for the Model Context Protocol (MCP) integration in Agentuity CLI" - }, - "content": "\n## Overview\n\nThe Agentuity CLI implements the Model Context Protocol (MCP), which allows integration with AI-powered code editors and tools. This integration enhances the capabilities of AI agents inside supported clients.\n\nFor more information on the MCP protocol, see [https://modelcontextprotocol.io/](https://modelcontextprotocol.io/)\n\n## Commands\n\n### mcp\n\nThe base command for all MCP-related operations.\n\n```bash\nagentuity mcp\n```\n\n**Aliases:** None\n\n**Examples:**\n```bash\nagentuity mcp install\nagentuity mcp uninstall\nagentuity mcp list\n```\n\n### mcp install\n\nInstalls the Agentuity CLI as an MCP server, enabling integration with supported MCP clients.\n\n```bash\nagentuity mcp install\n```\n\n**Aliases:** `i`, `add`\n\n**Examples:**\n```bash\nagentuity mcp install\n```\n\n### mcp uninstall\n\nUninstalls the Agentuity CLI as an MCP server, removing integration with MCP clients.\n\n```bash\nagentuity mcp uninstall\n```\n\n**Aliases:** `rm`, `delete`, `del`, `remove`\n\n**Examples:**\n```bash\nagentuity mcp uninstall\n```\n\n### mcp list\n\nLists all MCP server configurations detected on the machine, showing which clients are configured.\n\n```bash\nagentuity mcp list\n```\n\n**Aliases:** `ls`\n\n**Examples:**\n```bash\nagentuity mcp list\n```\n\n## Manual Installation\n\nIf you need to manually configure an MCP client, you can use the following command:\n\n```bash\nagentuity mcp run --stdio\n```\n\nThis command is typically used for advanced configuration scenarios.\n" - }, - { - "file": "CLI/project.mdx", - "meta": { - "title": "Project Commands", - "description": "Commands for creating and managing Agentuity projects" - }, - "content": "\nThe `project` commands allow you to create and manage Agentuity projects.\n\n## project create\n\nCreates a new Agentuity project.\n\n### Aliases\n\n`agentuity create` (shortcut for `agentuity project create`)\n`agentuity project new`\n\n### Usage\n\n```bash\nagentuity project create [name] [description] [agent-name] [agent-description] [auth-type] [flags]\n```\n\n### Flags\n\n| Flag | Description |\n| ---- | ----------- |\n| `--dir`, `-d` | The directory to create the project in |\n| `--provider`, `-p` | The provider to use for the project |\n| `--template`, `-t` | The template to use for the project |\n\n### Examples\n\nCreate a new project with interactive prompts:\n```bash\n$ agentuity project create my-project\n✓ Project created successfully\n\nNext steps:\n\n1. Switch into the project directory at ~/my-project\n2. Run agentuity run to run the project locally in development mode\n3. Run agentuity deploy to deploy the project to the Agentuity Agent Cloud\n\n🏠 Access your project at https://app.agentuity.com/projects/proj_123456\n```\n\nCreate a new project with a specific provider:\n```bash\n$ agentuity project create my-project --provider javascript\n✓ Project created successfully\n```\n\n## project list\n\nLists all projects in your Agentuity account.\n\n### Aliases\n\n`agentuity project ls` (shortcut for `agentuity project list`)\n\n### Usage\n\n```bash\nagentuity project list\n```\n\n### Examples\n\n```bash\n$ agentuity project list\nProjects:\n my-project (proj_123456)\n test-project (proj_789012)\n demo-app (proj_345678)\n```\n\n## project delete\n\nDeletes one or more projects from your Agentuity account.\n\n### Aliases\n\n`agentuity project rm` or `agentuity project del` (shortcuts for `agentuity project delete`)\n\n### Usage\n\n```bash\nagentuity project delete\n```\n\nThis command will:\n1. Display a list of all projects in your account\n2. Allow you to select one or more projects to delete\n3. Ask for confirmation before deleting the selected projects\n\n### Examples\n\n```bash\n$ agentuity project delete\nSelect one or more projects to delete:\n[ ] my-project (proj_123456)\n[x] test-project (proj_789012)\n[ ] demo-app (proj_345678)\n\nAre you sure you want to delete the selected projects? This action cannot be undone. [y/N] y\n✓ Project deleted successfully\n```\n\n## project import\n\nImports an existing project into your Agentuity account.\n\n### Usage\n\n```bash\nagentuity project import [flags]\n```\n\n### Flags\n\n| Flag | Description |\n| ---- | ----------- |\n| `--dir`, `-d` | The directory for the project |\n\n### Examples\n\n```bash\n$ agentuity project import --dir ./my-existing-project\n✓ Project imported successfully\n```\n\n## project init\n\nInitializes an existing directory as an Agentuity project.\n\n### Aliases\n\n`agentuity init` (shortcut for `agentuity project init`)\n\n### Usage\n\n```bash\nagentuity project init [directory]\n```\n\n### Examples\n\nInitialize the current directory as an Agentuity project:\n```bash\n$ agentuity project init .\n✓ Project initialized successfully\n```\n" - }, - { - "file": "CLI/version.mdx", - "meta": { - "title": "Version Command", - "description": "Command for checking the version of the Agentuity CLI" - }, - "content": "\nThe `version` command allows you to check, display, and upgrade the Agentuity CLI version.\n\n## version\n\nDisplays the version of the Agentuity CLI.\n\n### Aliases\n\n`agentuity -v`, `agentuity --version` (shortcuts for `agentuity version`)\n\n### Usage\n\n```bash\nagentuity version [flags]\n```\n\n### Flags\n\n| Flag | Description |\n| ---- | ----------- |\n| `--long` | Display detailed version information including commit hash and build date |\n\n### Examples\n\nBasic version information:\n```bash\n$ agentuity version\n1.0.0\n```\n\nDetailed version information:\n```bash\n$ agentuity version --long\nVersion: 1.0.0\nCommit: abc123\nDate: 2025-02-27\n```\n\n## check\n\nChecks if you're using the latest version of the Agentuity CLI.\n\n### Usage\n\n```bash\nagentuity version check [flags]\n```\n\n### Flags\n\n| Flag | Description |\n| ---- | ----------- |\n| `--upgrade` | Upgrade to the latest version if a newer version is available |\n\n### Examples\n\nCheck if you're using the latest version:\n```bash\n$ agentuity version check\nYou are using the latest version (1.0.0) of the Agentuity CLI.\n```\n\nCheck and upgrade to the latest version:\n```bash\n$ agentuity version check --upgrade\nA new version (1.1.0) of the Agentuity CLI is available. Upgrading...\nSuccessfully upgraded to version 1.1.0.\n```\n\n## upgrade\n\nUpgrades the Agentuity CLI to the latest version. This command is also available as `agentuity upgrade`.\n\n### Usage\n\n```bash\nagentuity version upgrade [flags]\n```\n\n### Flags\n\n| Flag | Description |\n| ---- | ----------- |\n| `--force` | Force upgrade even if already on the latest version |\n\n### Examples\n\nUpgrade to the latest version:\n```bash\n$ agentuity version upgrade\nChecking for updates...\nA new version (1.1.0) is available. Upgrading...\nCreating backup of current binary...\nSuccessfully upgraded to version 1.1.0.\n```\n\nForce upgrade:\n```bash\n$ agentuity version upgrade --force\nCreating backup of current binary...\nSuccessfully upgraded to version 1.1.0.\n```\n\nOn macOS, if the CLI was installed using Homebrew, it will use Homebrew to perform the upgrade.\n" - }, - { - "file": "Changelog/cli.mdx", - "meta": { - "title": "CLI Changelog", - "description": "Release notes and version history for the Agentuity CLI" - }, - "content": "\nimport { Callout } from 'fumadocs-ui/components/callout';\n\nThis page documents the release history of the [Agentuity CLI](https://github.com/agentuity/cli).\n\n## v0.0.117\n\n\n Released: May 5, 2025\n\n\n**Changes:**\n- **Fixed**: Fixed typo in CI flag name (changed \"ci-messsage\" to \"ci-message\") ([#277](https://github.com/agentuity/cli/pull/277))\n\n## v0.0.116\n\n\n Released: May 5, 2025\n\n\n**Changes:**\n- **Fixed**: Missed annotation on GitInfo ([#275](https://github.com/agentuity/cli/pull/275))\n- **Fixed**: AGENT-29 Check mask value for secrets ([#274](https://github.com/agentuity/cli/pull/274))\n- **Fixed**: Passing CI logs URL to display GitHub action logs in the UI ([#273](https://github.com/agentuity/cli/pull/273))\n- **Changed**: Taking a walk to get the git data 🚶‍♂️‍➡️ ([#272](https://github.com/agentuity/cli/pull/272))\n- **Changed**: Pass on the git info from deploy to bundle when for --deploy ([#271](https://github.com/agentuity/cli/pull/271))\n\n## v0.0.115\n\n\n Released: May 2, 2025\n\n\n**Changes:**\n- **Added**: Added mono repofix ([#267](https://github.com/agentuity/cli/pull/267))\n- **Changed**: Add flags for deployment data overwrite from github action ([#266](https://github.com/agentuity/cli/pull/266))\n- **Fixed**: Allow non-admin users to uninstall CLI without admin privileges ([#264](https://github.com/agentuity/cli/pull/264))\n\n## v0.0.114\n\n\n Released: May 1, 2025\n\n\n**Changes:**\n- **Fixed**: Don't call close handler if conn is nil ([#255](https://github.com/agentuity/cli/pull/255))\n- **Fixed**: Fix 'text file busy' error during CLI updates ([#254](https://github.com/agentuity/cli/pull/254))\n- **Fixed**: Windows: improve the output for windows upgrade ([#253](https://github.com/agentuity/cli/pull/253))\n- **Fixed**: Fix PowerShell installation issues in install.ps1 ([#257](https://github.com/agentuity/cli/pull/257))\n- **Fixed**: DevMode: Make sure to terminate child processes ([#259](https://github.com/agentuity/cli/pull/259))\n- **Fixed**: Don't error if deliberate restart ([#260](https://github.com/agentuity/cli/pull/260))\n- **Fixed**: Set ALLUSERS=0 for non-admin installations to ensure proper installation to AppData/Local/Agentuity ([#261](https://github.com/agentuity/cli/pull/261))\n- **Added**: Update install.sh to support /home/ubuntu/.bin and prompt for shell reload ([#258](https://github.com/agentuity/cli/pull/258))\n- **Added**: Add breaking change for new Python SDK ([#256](https://github.com/agentuity/cli/pull/256))\n\n## v0.0.113\n\n\n Released: April 29, 2025\n\n\n**Changes:**\n- **Added**: Make sure agent create has a reference to the template so we can reference it in interpolation ([#251](https://github.com/agentuity/cli/pull/251))\n- **Changed**: DevMode: debounce hot reloads ([#250](https://github.com/agentuity/cli/pull/250))\n\n## v0.0.111\n\n\n Released: April 29, 2025\n\n\n**Changes:**\n- **Fixed**: Fix PowerShell installation error with global drive ([#246](https://github.com/agentuity/cli/pull/246))\n- **Fixed**: Improve hot reload stability ([#245](https://github.com/agentuity/cli/pull/245))\n- **Fixed**: Fix Windows upgrade process to uninstall existing CLI before installation ([#244](https://github.com/agentuity/cli/pull/244))\n## v0.0.110\n\n\n Released: April 29, 2025\n\n\n**Changes:**\n- **Fixed**: More logging and cleanup for dev server startup, more safe filename fixes for python which is stricter ([#242](https://github.com/agentuity/cli/pull/242))\n\n## v0.0.109\n\n\n Released: April 29, 2025\n\n\n**Changes:**\n- **Fixed**: Fix issue with windows startup for devmode ([#240](https://github.com/agentuity/cli/pull/240))\n - Increased wait time for devmode on Windows\n - Added more logging\n - Fixed Windows path escape issue in agents JSON\n - Decreased attempt duration\n\n## v0.0.108\n\n\n Released: April 29, 2025\n\n\n**Changes:**\n- **Fixed**: Only use SIGINT which is compatible with all platforms vs SIGKILL which doesn't work on Windows ([#239](https://github.com/agentuity/cli/pull/239))\n\n## v0.0.107\n\n\n Released: April 29, 2025\n\n\n**Changes:**\n- **Fixed**: DevMode: connect to ipv4 loopback explicitly ([#237](https://github.com/agentuity/cli/pull/237))\n\n## v0.0.106\n\n\n Released: April 26, 2025\n\n\n**Changes:**\n- **Changed**: Use update not upgrade ([#235](https://github.com/agentuity/cli/pull/235))\n- **Changed**: Some Node libraries which have already been bundled conflict with our bundle require shim ([#233](https://github.com/agentuity/cli/pull/233))\n- **Documentation**: Update changelog for v0.0.105 ([#232](https://github.com/agentuity/cli/pull/232))\n- **Documentation**: Fix doc link\n\n## v0.0.105\n\n\n Released: April 25, 2025\n\n\n**Changes:**\n- **Changed**: Temporarily revert the agent rename detection ([#231](https://github.com/agentuity/cli/pull/231))\n- **Changed**: Revert \"temporarily comment out the new sdk upgrade requirement until ready\" ([#229](https://github.com/agentuity/cli/pull/229))\n- **Changed**: Update the dev help output to use the direct agent route instead of legacy route ([#224](https://github.com/agentuity/cli/pull/224))\n\n## v0.0.104\n\n\n Released: April 24, 2025\n\n\n**Changes:**\n- **Changed**: Small tweaks around help and error dialog ([#227](https://github.com/agentuity/cli/pull/227))\n- **Fixed**: Fix regression in devmode input json using new binary protocol ([#228](https://github.com/agentuity/cli/pull/228))\n- **Fixed**: Add error message for JS SDK breaking change ([#225](https://github.com/agentuity/cli/pull/225))\n- **Fixed**: Project Name uniqueness check should be within project not any project in the users org ([#223](https://github.com/agentuity/cli/pull/223))\n- **Fixed**: Add a more helpful error message when dev command cannot validate the project ([#222](https://github.com/agentuity/cli/pull/222))\n- **Fixed**: Better handling when you rename an agent and attempt to deploy ([#221](https://github.com/agentuity/cli/pull/221))\n- **Documentation**: Update changelog for v0.0.103 ([#220](https://github.com/agentuity/cli/pull/220))\n\n## v0.0.103\n\n\n Released: April 23, 2025\n\n\n**Changes:**\n- **Fixed**: Fix dev mode for new sdk ([#219](https://github.com/agentuity/cli/pull/219))\n- **Fixed**: A better error messages when trying to load a project ([#218](https://github.com/agentuity/cli/pull/218))\n\n## v0.0.102\n\n\n Released: April 21, 2025\n\n\n**Changes:**\n- **Fixed**: Don't fail if MCP detection fails for any reason on create project ([#216](https://github.com/agentuity/cli/pull/216))\n\n## v0.0.101\n\n\n Released: April 19, 2025\n\n\n**Changes:**\n- **Fixed**: Fix unzip function to properly close file handles ([#215](https://github.com/agentuity/cli/pull/215))\n\n## v0.0.100\n\n\n Released: April 19, 2025\n\n\n**Changes:**\n- **Changed**: Be smart about remembering the last project ([#212](https://github.com/agentuity/cli/pull/212))\n- **Changed**: Hide websocket-id flag from CLI help text ([#211](https://github.com/agentuity/cli/pull/211))\n- **Documentation**: Update changelog for v0.0.99 ([#210](https://github.com/agentuity/cli/pull/210))\n\n## v0.0.99\n\n\n Released: April 18, 2025\n\n\n**Changes:**\n- **Changed**: Add a better error message on new project by using a dialog component ([#209](https://github.com/agentuity/cli/pull/209))\n\n## v0.0.98\n\n\n Released: April 18, 2025\n\n\n**Changes:**\n- **Changed**: Add exponential backoff for agent welcome connection with 30s max time ([#207](https://github.com/agentuity/cli/pull/207))\n\n## v0.0.97\n\n\n Released: April 17, 2025\n\n\n**Changes:**\n- **Fixed**: Fix issue with too many files error ([#205](https://github.com/agentuity/cli/pull/205))\n- **Fixed**: Fixed small error (55996e3)\n- **Changed**: Bump golang.org/x/net from 0.36.0 to 0.38.0 ([#204](https://github.com/agentuity/cli/pull/204))\n- **Documentation**: Update changelog for v0.0.96 ([#203](https://github.com/agentuity/cli/pull/203))\n\n## v0.0.96\n\n\n Released: April 16, 2025\n\n\n**Changes:**\n- Guard against conn being nil ([e095c09](https://github.com/agentuity/cli/commit/e095c09))\n- Only set step cursor on page 1 ([#202](https://github.com/agentuity/cli/pull/202))\n\n## v0.0.95\n\n\n Released: April 16, 2025\n\n\n### Changes\n\n- **Added**: Add retries to HTTP client ([#200](https://github.com/agentuity/cli/pull/200))\n- **Changed**: Attempt to have better UX handling of upgrade checks ([#199](https://github.com/agentuity/cli/pull/199))\n- **Changed**: Template Improvements ([#198](https://github.com/agentuity/cli/pull/198))\n- **Documentation**: Update changelog for v0.0.94 ([#197](https://github.com/agentuity/cli/pull/197))\n\n## v0.0.93\n\n\n Released: April 16, 2025\n\n\n### Changes\n\n- **Changed**: Improve TUI semantics ([#193](https://github.com/agentuity/cli/pull/193))\n- **Fixed**: Add more debug logging around CI bundling for github app ([#194](https://github.com/agentuity/cli/pull/194))\n- **Documentation**: Update changelog for v0.0.92 ([#192](https://github.com/agentuity/cli/pull/192))\n\n## v0.0.92\n\n\n Released: April 15, 2025\n\n\n### Changes\n\n- **Fixed**: Fix the Git URL to rewrite to https ([#190](https://github.com/agentuity/cli/pull/190))\n- **Changed**: Add hyperlinks to older release versions in CHANGELOG.md ([#191](https://github.com/agentuity/cli/pull/191))\n- **Changed**: Update changelog for v0.0.91 ([#189](https://github.com/agentuity/cli/pull/189))\n\n## v0.0.91\n\n\n Released: April 14, 2025\n\n\n### Changes\n\n- **Fixed**: Fix go-common flag issue with overriding log level from env and add more debug to bundle ([#188](https://github.com/agentuity/cli/pull/188))\n\n## v0.0.90\n\n\n Released: April 14, 2025\n\n\n### Changes\n\n- **Added**: Add support for managing API Keys from CLI ([#186](https://github.com/agentuity/cli/pull/186))\n- **Fixed**: Make sure we set the working directory when running the project dev command since we could be using --dir\n\n## v0.0.89\n\n\n Released: April 10, 2025\n\n\n### Changes\n\n- **Added**: Add CLI Signup Flow ([#182](https://github.com/agentuity/cli/pull/182))\n- **Fixed**: Fix macOS segfault during reinstallation ([#183](https://github.com/agentuity/cli/pull/183))\n- **Fixed**: Smart login or setup ([#184](https://github.com/agentuity/cli/pull/184))\n\n## v0.0.88\n\n\n Released: April 8, 2025\n\n\n### Changes\n\n- **Added**: Webhook instructions ([#179](https://github.com/agentuity/cli/pull/179))\n- **Changed**: Proxy GitHub public APIs ([#180](https://github.com/agentuity/cli/pull/180))\n- **Changed**: Small improvements on devmode\n- **Fixed**: Make it clear that the webhook is a POST ([#178](https://github.com/agentuity/cli/pull/178))\n- **Fixed**: If node_modules or .venv/lib directory are missing when bundling, force install ([#177](https://github.com/agentuity/cli/pull/177))\n\n## v0.0.87\n\n\n Released: April 8, 2025\n\n\n### Changes\n\n- **Fixed**: Fix regression in step 2 (new project) related to cursor selection ([234b330](https://github.com/agentuity/cli/commit/234b3307d1fd96005d4f656ab319d438e7b60626))\n\n## v0.0.86\n\n\n Released: April 7, 2025\n\n\n### Changes\n\n- **Added**: Add Clone Repo step ([#171](https://github.com/agentuity/cli/pull/171))\n- **Added**: Add Agent Welcome on DevMode ([#172](https://github.com/agentuity/cli/pull/172))\n- **Changed**: Totally re-write the TUI for the new project ([#170](https://github.com/agentuity/cli/pull/170))\n- **Changed**: Better upgrade handling ([#174](https://github.com/agentuity/cli/pull/174))\n- **Fixed**: Fix crewai installation issue (exit status 130) ([#169](https://github.com/agentuity/cli/pull/169))\n- **Fixed**: Make sure command is executed with a context ([#173](https://github.com/agentuity/cli/pull/173))\n\n## v0.0.74\n\n\n Released: March 25, 2025\n\n\n### Changes\n\n- **Added**: JSON Schema for agentuity.yaml file ([#126](https://github.com/agentuity/cli/pull/126), [#127](https://github.com/agentuity/cli/pull/127))\n- **Added**: MCP Support ([#121](https://github.com/agentuity/cli/pull/121))\n- **Fixed**: Windows installer and MCP fixes ([#129](https://github.com/agentuity/cli/pull/129))\n- **Fixed**: Improved dev command shutdown to ensure all child processes are terminated ([#128](https://github.com/agentuity/cli/pull/128))\n- **Fixed**: Issue when dev port is taken by automatically choosing another port ([#125](https://github.com/agentuity/cli/pull/125))\n- **Fixed**: Git deployment metadata fix ([#120](https://github.com/agentuity/cli/pull/120))\n- **Changed**: GitHub improvements ([#123](https://github.com/agentuity/cli/pull/123))\n\n## v0.0.73\n\n\n Released: March 21, 2025\n\n\n### Changes\n\n- **Fixed**: Python: force --env-file when running in devmode ([#118](https://github.com/agentuity/cli/pull/118))\n- **Changed**: place .env on another line to be safe\n\n## v0.0.71\n\n\n Released: March 20, 2025\n\n\n### Changes\n\n- **Changed**: Pass on dir flag when doing bundle --deploy ([#115](https://github.com/agentuity/cli/pull/115))\n\n## v0.0.70\n\n\n Released: March 19, 2025\n\n\n### Changes\n\n- **Added**: Initial Implementation of Automatic Version checking ([#113](https://github.com/agentuity/cli/pull/113))\n\n## v0.0.69\n\n\n Released: March 19, 2025\n\n\n### Changes\n\n- **Fixed**: Handle auth failure better ([#112](https://github.com/agentuity/cli/pull/112))\n- **Changed**: Move internal/tui package to use go-common/tui package so we can reuse ([#111](https://github.com/agentuity/cli/pull/111))\n- **Changed**: Improve Project List View and Auth Whoami ([#110](https://github.com/agentuity/cli/pull/110))\n\n## v0.0.68\n\n\n Released: March 19, 2025\n\n\n### Changes\n\n- **Fixed**: Better handle user interruption errors ([#109](https://github.com/agentuity/cli/pull/109))\n\n## v0.0.67\n\n\n Released: March 19, 2025\n\n\n### Changes\n\n- **Added**: Force new project to always use the latest sdk ([#108](https://github.com/agentuity/cli/pull/108))\n- **Fixed**: DevMode: cleanup payload to make sure we keep it as []byte vs using string so we always transmit in base64 w/o recoding by accident ([#107](https://github.com/agentuity/cli/pull/107))\n\n## v0.0.66\n\n\n Released: March 17, 2025\n\n\n### Changes\n\n- **Changed**: Rename devmode ([#106](https://github.com/agentuity/cli/pull/106))\n- **Changed**: Dev Mode: deterministic room id ([#63](https://github.com/agentuity/cli/pull/63))\n\n## v0.0.65\n\n\n Released: March 17, 2025\n\n\n### Changes\n\n- **Fixed**: Be smarter on error message of JS when running node directly ([#105](https://github.com/agentuity/cli/pull/105))\n- **Added**: Added project id on for matt ([#104](https://github.com/agentuity/cli/pull/104))\n- **Fixed**: Add environment variable checks to Python boot.py ([#103](https://github.com/agentuity/cli/pull/103))\n\n## v0.0.64\n\n\n Released: March 16, 2025\n\n\n### Changes\n\n- **Added**: Add README template for JavaScript projects ([#102](https://github.com/agentuity/cli/pull/102))\n\n## v0.0.63\n\n\n Released: March 16, 2025\n\n\n### Changes\n\n- **Changed**: Improve CTRL-C cancel, always send user-agent with version for API requests ([#101](https://github.com/agentuity/cli/pull/101))\n\n## v0.0.62\n\n\n Released: March 16, 2025\n\n\n### Changes\n\n- **Fixed**: Fix change in signature with request.text -> request.data.text ([#100](https://github.com/agentuity/cli/pull/100))\n- **Added**: Add Long property documentation to all CLI commands ([#99](https://github.com/agentuity/cli/pull/99))\n- **Added**: Add traceparent in the error handling logic to aid in debugging issues ([#98](https://github.com/agentuity/cli/pull/98))\n\n## v0.0.61\n\n\n Released: March 15, 2025\n\n\n### Changes\n\n- **Added**: Add Org Level data encryption for agent source ([#97](https://github.com/agentuity/cli/pull/97))\n- **Added**: Improve missing LLM environment variables ([#95](https://github.com/agentuity/cli/pull/95))\n- **Fixed**: Don't set AGENTUITY_ENVIRONMENT on the production bundle, let it get set by the infra ([#96](https://github.com/agentuity/cli/pull/96))\n- **Fixed**: Fix issue with --env-file not getting picked up in node when running dev ([#94](https://github.com/agentuity/cli/pull/94))\n- **Documentation**: Update changelog for v0.0.60 ([#93](https://github.com/agentuity/cli/pull/93))\n\n## v0.0.72\n\n\n Released: March 20, 2025\n\n\n### Changes\n\n- **Added**: Deployment metadata and CI flag for GitHub actions ([#116](https://github.com/agentuity/cli/pull/116))\n- **Fixed**: Bug in file watcher ([#114](https://github.com/agentuity/cli/pull/114))\n- **Fixed**: Don't send error reports when using the dev version\n\n## v0.0.60\n\n\n Released: March 13, 2025\n\n\n### Changes\n\n- **Added**: Support for new transport domain (agentuity.ai) ([#89](https://github.com/agentuity/cli/pull/89))\n- **Added**: Profile switching for local development ([#89](https://github.com/agentuity/cli/pull/89))\n- **Fixed**: Improved agent deletion logic with backup functionality ([#90](https://github.com/agentuity/cli/pull/90))\n- **Fixed**: Corrected .dev domain references ([#91](https://github.com/agentuity/cli/pull/91), [#92](https://github.com/agentuity/cli/pull/92))\n\n## v0.0.59\n\n\n Released: March 13, 2025\n\n\n### Changes\n\n- Move deployment manifest from `agentuity-deployment.yaml` to `.agentuity/.manifest.yaml` ([#86](https://github.com/agentuity/cli/pull/86))\n- Improve UI by showing information banner instead of error when a requirement cannot be met ([#85](https://github.com/agentuity/cli/pull/85))\n- Fix development mode issues and environment variable handling for JavaScript environments ([#87](https://github.com/agentuity/cli/pull/87))\n\n## v0.0.58\n\n\n Released: March 12, 2025\n\n\n### Changes\n\n- Fix filepath issues by converting to localized path separators for Windows compatibility ([#80](https://github.com/agentuity/cli/pull/80))\n\n## v0.0.57\n\n\n Released: March 12, 2025\n\n\n### Changes\n\n- Add Python cursor rules files ([#75](https://github.com/agentuity/cli/pull/75))\n- Add support for remembering new project preferences ([#74](https://github.com/agentuity/cli/pull/74))\n- Fix issue when importing with an existing env ([#78](https://github.com/agentuity/cli/pull/78))\n\n## v0.0.56\n\n\n Released: March 12, 2025\n\n\n### Changes\n\n- **Project Import on Cloud Deploy**: Added functionality to automatically import projects when deploying to the cloud if the project ID is not found or when using a new template ([#73](https://github.com/agentuity/cli/pull/73))\n- Added project import command (`agentuity project import`)\n- Added project import checks during cloud deployment\n- Added project import checks during development mode\n- Added project import checks for new agent creation\n\n## v0.0.55\n\n\n Released: March 11, 2025\n\n\n### Changes\n\n- Add debugging for random panic ([#72](https://github.com/agentuity/cli/pull/72))\n- Small TypeScript complainer fix\n\n## v0.0.54\n\n\n Released: March 11, 2025\n\n\n### Changes\n\n- Better error handling when using an invalid project_id and better handle dev mode shutdown ([#71](https://github.com/agentuity/cli/pull/71))\n- Self update should be tried before brew. Fix issue on project name exists check\n\n## v0.0.53\n\n\n Released: March 11, 2025\n\n\n### Changes\n\n- Make sure we set the AGENTUITY_URL when running in dev mode ([#70](https://github.com/agentuity/cli/pull/70))\n\n## v0.0.52\n\n\n Released: March 11, 2025\n\n\n### Changes\n\n- Improve Error Handling from 400 Bad Request routes ([#69](https://github.com/agentuity/cli/pull/69))\n\n## v0.0.51\n\n\n Released: March 11, 2025\n\n\n### Changes\n\n- Add cursor rules file for JavaScript SDK API reference ([#67](https://github.com/agentuity/cli/pull/67))\n- Fix YAML schema for templates validation ([#65](https://github.com/agentuity/cli/pull/65))\n- Fix cursor rules placement to use .cursor/rules instead of .cursorrules ([#66](https://github.com/agentuity/cli/pull/66))\n- Make sure all API calls use the APIClient and enhance the error system to send api error details to aide in debugging ([#68](https://github.com/agentuity/cli/pull/68))\n- Update Python logging format to use [LEVEL] message format ([#64](https://github.com/agentuity/cli/pull/64))\n\n## v0.0.50\n\n\n Released: March 10, 2025\n\n\n### Changes\n\n- Updated templates to match new SDK types ([#59](https://github.com/agentuity/cli/pull/59))\n- Fixed issue with template dependencies check not running ([#62](https://github.com/agentuity/cli/pull/62))\n- Updated JavaScript templates to use `req.data.text` instead of `req.text()`\n- Updated Python template to import `autostart` from the main package\n" - }, - { - "file": "Changelog/index.mdx", - "meta": { - "title": "Changelog", - "description": "Release notes and version history for Agentuity products" - }, - "content": "\nThis section contains the release notes and version history for Agentuity products:\n\n- [CLI](/Changelog/cli) - Command Line Interface\n- [JavaScript SDK](/Changelog/sdk-js) - JavaScript/TypeScript SDK\n- [Python SDK](/Changelog/sdk-py) - Python SDK\n\nEach page documents the changes, improvements, and bug fixes in each release.\n" - }, - { - "file": "Changelog/sdk-js.mdx", - "meta": { - "title": "JavaScript SDK Changelog", - "description": "Release notes and version history for the Agentuity JavaScript SDK" - }, - "content": "\nimport { Callout } from 'fumadocs-ui/components/callout';\n\nThis page documents the release history of the [Agentuity JavaScript SDK](https://github.com/agentuity/sdk-js).\n\n## v0.0.113\n\n\n Released: May 8, 2025\n\n\n### Changes\n\n- Cross platform support for headers.toJSON ([PR #105](https://github.com/agentuity/sdk-js/pull/105), resolves [#103](https://github.com/agentuity/sdk-js/issues/103))\n\n## v0.0.112\n\n\n Released: May 2, 2025\n\n\n### Changes\n\n- Add a bun server handler to handle unhandled errors ([PR #100](https://github.com/agentuity/sdk-js/pull/100))\n- Add missing console methods ([PR #101](https://github.com/agentuity/sdk-js/pull/101))\n\n## v0.0.111\n\n\n Released: May 1, 2025\n\n\n### Changes\n\n- More fixes related to gzip compression when using keyvalue\n- Change the name of the span when doing a remote solution vs remote execution\n- Update to use versioned routes for API services ([PR #97](https://github.com/agentuity/sdk-js/pull/97))\n\n## v0.0.110\n\n\n Released: April 29, 2025\n\n\n### Changes\n\n- In cloud we must bind to all addresses ([PR #96](https://github.com/agentuity/sdk-js/pull/96))\n\n## v0.0.109\n\n\n Released: April 29, 2025\n\n\n### Changes\n\n- Add the ability for an agent to return a Response object directly to provide more flexibility to integrate with existing APIs and protocols ([PR #93](https://github.com/agentuity/sdk-js/pull/93))\n- Bind explicitly to ipv4 when creating server ([PR #94](https://github.com/agentuity/sdk-js/pull/94))\n\n## v0.0.108\n\n\n Released: April 25, 2025\n\n\n### Changes\n\n- Fixed issue when the keyvalue returns a gzip encoded value ([PR #92](https://github.com/agentuity/sdk-js/pull/92))\n\n## v0.0.107\n\n\n Released: April 25, 2025\n\n\n### Changes\n\n- Fix issue with chunking and streaming text not matching in some cases ([PR #91](https://github.com/agentuity/sdk-js/pull/91))\n## v0.0.106\n\n\n Released: April 25, 2025\n\n\n### Changes\n\n- Add support for streaming data to and from agents. This includes streaming data to the agent via the `data` object and streaming data from the agent via the `stream` property of the `AgentResponse` object.\n- The `trigger` property of the `AgentRequest` object will have the value `agent` when the request is invoked by another agent.\n- The `AgentContext` object now has a `scope` property that will have the value of `local` when the context is local or `remote` when agent is being invoked by another agent remotely. In the case of agent-to-agent invocation or handoff within the same project, the scope will be `local`.\n- Deprecated the local `/run/:agentId` route since the updated `/:agentId` route now supports streaming data to and from the agent directly. This route will be removed in a near future release.\n\n### ⚠️ Breaking Changes\n\nThe `data` object of `AgentRequest` has changed to support fully streaming data and this required a breaking change. Most of the property accessors are now async functions to support the streaming use case. You can read more about this change in [Pull Request #87](https://github.com/agentuity/sdk-js/pull/87).\n\nFor example, the following code changes are required to get the request data as text:\n\n```diff\n- const text = req.data.text;\n+ const text = await req.data.text();\n```\n\nFor example, to get the request data as JSON, you need to make the following changes:\n\n```diff\n- const json = req.data.json;\n+ const json = await req.data.json();\n```\n\nSee the following documentation [Pull Request](https://github.com/agentuity/docs/pull/92) for specific SDK changes.\n\nIf you're using an Agentic code editor (such as Cursor, Windsurf, etc.), you can use this prompt to update your code with these changes:\n\n```\nThe agents in the agents folder use an older version of the Agentuity SDK which assume the req.data object has properties on it like req.data.json\n\nThe new way to do this is with a promise. eg. `await req.data.json()`\n\nThe breaking change is here: https://github.com/agentuity/sdk-js/pull/87\n\nReview this PR, make a plan to change the agents to the latest agentuity SDK with async await support, and execute on it.\n```\n\n## v0.0.105\n\n\n Released: April 23, 2025\n\n\n### Changes\n\n- Add support for remote agent handoff ([PR #85](https://github.com/agentuity/sdk-js/pull/85)). This means you can now handoff the request to another agent outside of your current project in the same organization or even outside of your organization if the Agent is public. The agent-to-agent invocation is secured automatically and doesn't require any additional configuration or authentication. Internally, the SDK will request a one-time authorization token to invoke the agent on your agent's behalf.\n\n## v0.0.104\n\n\n Released: April 23, 2025\n\n\n### Changes\n\n- Add support for remote agent-to-agent invocation ([PR #83](https://github.com/agentuity/sdk-js/pull/83)). This means you can now invoke another agent outside of your current project in the same organization or even outside of your organization if the Agent is public. The agent-to-agent invocation is secured automatically and doesn't require any additional configuration or authentication. Internally, the SDK will request a one-time authorization token to invoke the agent on your agent's behalf.\n\n## v0.0.103\n\n\n Released: April 23, 2025\n\n\n### Changes\n\n- Refactor to support binary streams instead of intermediate JSON protocol ([PR #81](https://github.com/agentuity/sdk-js/pull/81))\n- Improved handling of HTTP native protocol\n- Added support for passing in the runId\n- Better handling of stream data and binary content\n\n## v0.0.102\n\n\n Released: April 16, 2025\n\n\n### Changes\n\n- Fix issue where the child span had the wrong parent on outbound requests for agent-to-agent ([PR #79](https://github.com/agentuity/sdk-js/pull/79))\n\n## v0.0.101\n\n\n Released: April 18, 2025\n\n\n### Changes\n\n- Add agent context to console logger when running inside agent scope ([PR #77](https://github.com/agentuity/sdk-js/pull/77))\n\n## v0.0.100\n\n\n Released: April 15, 2025\n\n\n### Changes\n\n- Add permissions\n- Add more otel trace context headers, remove old trace provider ([PR #72](https://github.com/agentuity/sdk-js/pull/72))\n- Automatically base64 encode welcome prompts ([PR #73](https://github.com/agentuity/sdk-js/pull/73))\n- Fix NodeJS issue where the buffer isn't correctly sending the blob but works fine in Bun version ([PR #74](https://github.com/agentuity/sdk-js/pull/74))\n- Debug github workflow git tag issue\n\n## v0.0.99\n\n\n Released: April 14, 2025\n\n\n### Changes\n\n- More debug for github workflow\n\n## v0.0.98\n\n\n Released: April 13, 2025\n\n\n### Changes\n\n- More debug for github release tags\n\n## v0.0.97\n\n\n Released: April 12, 2025\n\n\n### Changes\n\n- Attempt to fix issue with github workflow not pushing tag after release\n\n## v0.0.96\n\n\n Released: April 11, 2025\n\n\n### Changes\n\n- Fix issue with node keyvalue not correctly handling the buffer upload\n\n## v0.0.95\n\n\n Released: April 10, 2025\n\n\n### Changes\n\n- Add more otel trace context headers, remove old trace provider\n- Base64 encode the welcome prompts\n\n## v0.0.94\n\n\n Released: April 8, 2025\n\n\n### Changes\n\n- Fix regression in otel traces missing for AI SDK by change in opentelemetry-api version change\n\n## v0.0.93\n\n\n Released: April 7, 2025\n\n\n### Changes\n\n- Add support for agent inspection discovery ([PR #70](https://github.com/agentuity/sdk-js/pull/70))\n\n## v0.0.92\n\n\n Released: April 5, 2025\n\n\n### Changes\n\n- Add data and markdown methods to AgentResponse interface and implementation\n\n## v0.0.91\n\n\n Released: April 3, 2025\n\n\n### Changes\n\n- Use new agentuity sdk api\n- Add GitHub workflow for npm package release triggered by version tags ([PR #53](https://github.com/agentuity/sdk-js/pull/53))\n\n## v0.0.90\n\n\n Released: April 1, 2025\n\n\n### Changes\n\n- Fix Vector delete api\n\n## v0.0.89\n\n\n Released: March 25, 2025\n\n\n### Changes\n\n- Add the agentName to the log attributes ([PR #33](https://github.com/agentuity/sdk-js/pull/33))\n- Console Logger: show max depth for any objects ([PR #32](https://github.com/agentuity/sdk-js/pull/32))\n- When stream is requested but the response isn't a stream, chunk up the response data into chunks and smooth out as if streamed ([PR #31](https://github.com/agentuity/sdk-js/pull/31))\n- Fixed issue with buffer underrun getting sent and issue with json encoding ([PR #34](https://github.com/agentuity/sdk-js/pull/34))\n\n## v0.0.88\n\n\n Released: March 21, 2025\n\n\n### Changes\n\n- Improve loading project when using node or bun directly vs using start script or agentuity dev\n- Fix mismatch between local run vs remote run with HTTP headers as property of metadata vs the metadata object\n\n## v0.0.87\n\n\n Released: March 18, 2025\n\n\n### Changes\n\n- Slight improvement in location of when context.logger for agent is created\n\n## v0.0.86\n\n\n Released: March 16, 2025\n\n\n### Changes\n\n- Add support for agentId on context.logger\n- Fix issue with underrun on base64 stream\n\n## v0.0.85\n\n\n Released: March 15, 2025\n\n\n### Changes\n\n- Streaming Support including SSE\n\n## v0.0.84\n\n\n Released: March 14, 2025\n\n\n### Changes\n\n- Stream IO Input: add new facility to support stream io for input data ([PR #23](https://github.com/agentuity/sdk-js/pull/23))\n- Release with new transport model\n\n## v0.0.83\n\n\n Released: March 12, 2025\n\n\n### Changes\n\n- Fix devmode logging when devmode environment is set by live ([PR #24](https://github.com/agentuity/sdk-js/pull/24))\n\n## v0.0.82\n\n\n Released: March 12, 2025\n\n\n### Changes\n\n- KeyValue compression only on upload, not download ([PR #20](https://github.com/agentuity/sdk-js/pull/20))\n\n## v0.0.81\n\n\n Released: March 11, 2025\n\n\n### Changes\n\n- Add support for compressing keyvalue entries ([PR #19](https://github.com/agentuity/sdk-js/pull/19))\n- Better format log message if the first parameter is an object ([PR #18](https://github.com/agentuity/sdk-js/pull/18))\n\n## v0.0.80\n\n\n Released: March 10, 2025\n\n\n### Changes\n\n- Refactored the types to make it easier to use\n- Fixed various small issues\n\n## v0.0.79 and earlier\n\nFor earlier versions, see the [CHANGELOG.md](https://github.com/agentuity/sdk-js/blob/main/CHANGELOG.md) file in the repository.\n" - }, - { - "file": "Changelog/sdk-py.mdx", - "meta": { - "title": "Python SDK Changelog", - "description": "Release notes and version history for the Agentuity Python SDK" - }, - "content": "\nimport { Callout } from 'fumadocs-ui/components/callout';\n\nThis page documents the release history of the [Agentuity Python SDK](https://github.com/agentuity/sdk-py).\n\n## v0.0.82\n\n\n Released: April 30, 2025\n\n\n### Changes\n\n- Add support for streaming data to and from agents. This includes streaming data to the agent via the `data` object and streaming data from the agent via the `stream` property of the `AgentResponse` object.\n- The `trigger` property of the `AgentRequest` object will have the value `agent` when the request is invoked by another agent.\n- The `AgentContext` object now has a `scope` property that will have the value of `local` when the context is local or `remote` when agent is being invoked by another agent remotely. In the case of agent-to-agent invocation or handoff within the same project, the scope will be `local`.\n- Deprecated the local `/run/:agentId` route since the updated `/:agentId` route now supports streaming data to and from the agent directly. This route will be removed in a near future release.\n\n### ⚠️ Breaking Changes\n\nThe `data` object of `AgentRequest` has changed to support fully streaming data and this required a breaking change. Most of the property accessors are now async functions to support the streaming use case. You can read more about this change in [Pull Request #38](https://github.com/agentuity/sdk-py/pull/38).\n\nFor example, the following code changes are required to get the request data as text:\n\n```diff\n- text = req.data.text;\n+ text = await req.data.text();\n```\n\nFor example, to get the request data as JSON, you need to make the following changes:\n\n```diff\n- json = req.data.json;\n+ json = await req.data.json();\n```\n\nSee the following documentation [Pull Request](https://github.com/agentuity/docs/pull/114) for specific SDK changes.\n\nIf you're using an Agentic code editor (such as Cursor, Windsurf, etc.), you can use this prompt to update your code with these changes:\n\n```\nThe agents in the agents folder use an older version of the Agentuity SDK which assume the req.data object has properties on it like req.data.json\n\nThe new way to do this is with a promise. eg. `await req.data.json()`\n\nThe breaking change is here: https://github.com/agentuity/sdk-py/pull/38\n\nReview this PR, make a plan to change the agents to the latest agentuity SDK with async await support, and execute on it.\n```\n\n\n## v0.0.77\n\n\n Released: April 7, 2025\n\n\n### Added\n\n- Add comprehensive test suite with pytest ([#27](https://github.com/agentuity/sdk-py/pull/27))\n- Expand test coverage for logger, context, and langchain instrumentation ([#28](https://github.com/agentuity/sdk-py/pull/28))\n- Add agent inspect endpoint support ([#29](https://github.com/agentuity/sdk-py/pull/29))\n\n## v0.0.76\n\n\n Released: April 3, 2025\n\n\n### Fixed\n\n- Fix Langchain instrumentation and add openai-agents dependency ([#24](https://github.com/agentuity/sdk-py/pull/24))\n\n## v0.0.75\n\n\n Released: April 1, 2025\n\n\n### Added\n\n- Add data and markdown methods to AgentResponse class ([#26](https://github.com/agentuity/sdk-py/pull/26))\n- Add PyPI release workflow ([#22](https://github.com/agentuity/sdk-py/pull/22))\n\n### Changed\n\n- Update logo URL from relative to absolute path ([#19](https://github.com/agentuity/sdk-py/pull/19))\n- Remove 'work in progress' warning from README ([#20](https://github.com/agentuity/sdk-py/pull/20))\n- Update Agentuity gateway URL from /llm/ to /gateway/ ([#21](https://github.com/agentuity/sdk-py/pull/21))\n- Update to use AGENTUITY_CLOUD_PORT with fallback to PORT ([#23](https://github.com/agentuity/sdk-py/pull/23))\n- Use transport instead of API for hosted SDK api ([#25](https://github.com/agentuity/sdk-py/pull/25))\n- Update CHANGELOG.md for v0.0.74 ([#18](https://github.com/agentuity/sdk-py/pull/18))\n\n## v0.0.74\n\n\n Released: March 25, 2025\n\n\n### Added\n\n- Better support for OpenAI and Agents framework ([#16](https://github.com/agentuity/sdk-py/pull/16))\n- Add agentName to logger ([#17](https://github.com/agentuity/sdk-py/pull/17))\n\n## v0.0.73\n\n\n Released: March 19, 2025\n\n\n### Fixed\n\n- Fix issue with non-stream functionality ([#15](https://github.com/agentuity/sdk-py/pull/15))\n\n## v0.0.72\n\n\n Released: March 16, 2025\n\n\n### Added\n\n- Add the @agentuity/agentId to the context.logger for an agent ([#13](https://github.com/agentuity/sdk-py/pull/13))\n\n### Fixed\n\n- Fix import issue and add ruff for formatting and linting ([#14](https://github.com/agentuity/sdk-py/pull/14))\n\n## v0.0.71\n\n\n Released: March 16, 2025\n\n\n### Added\n\n- SSE and Stream support with new stream() method and improved documentation ([#12](https://github.com/agentuity/sdk-py/pull/12))\n\n## v0.0.70\n\n\n Released: March 13, 2025\n\n\n### Added\n\n- Stream IO Input: add new facility to support stream io for input data ([#10](https://github.com/agentuity/sdk-py/pull/10))\n\n## v0.0.69\n\n\n Released: March 10, 2025\n\n\n### Changes\n\n- Implemented Vector and KeyValue services\n- Reorganized types into logical files\n- Added support for local handoff\n- Improved error handling\n- Added support for dynamic return types\n- Added `get_agents` method on context\n- Moved `autostart` into main package\n- Added tracing for remote agent calls\n- Added httpx dependency for improved HTTP client support\n" - }, - { - "file": "Cloud/agents.mdx", - "meta": { - "title": "Agent Dashboard", - "description": "Overview of the agent dashboard in Agentuity Cloud" - }, - "content": "\n## Agent Dashboard Overview\n\nThe agent dashboard provides a comprehensive view of your deployed agent and its performance. This page helps you monitor your agent's status, usage metrics, and recent activity.\n\n## Dashboard Sections\n\n### Agent Information\nThe top section of the dashboard displays essential information about your agent:\n- Agent status (Active/Inactive)\n- Creation date\n- Last updated and deployment dates\n- LLM models being used by the agent\n\n### Cost & Usage Tracking\nThis section provides detailed metrics about your agent's usage:\n- Total cost accumulated\n- LLM cost (portion of the total cost spent on language model calls)\n- Input tokens processed\n- Output tokens generated\n\n### Recent Activity\nThe activity section shows a table of recent sessions for your agent, including:\n- Session status (Pending, Completed, Error)\n- Duration of each session\n- Cost per session\n- When the session started\n\n### I/O Visualization\nThe I/O visualization shows how your agent connects to various inputs and outputs. This visual representation helps you understand the flow of data through your agent.\n\n## Calling Your Agent\n\nTo call your deployed agent from external applications:\n\n1. In the I/O visualization, click on the webhook icon or the plus button to add a webhook\n2. View the webhook configuration modal to get your agent's webhook URL\n3. Use this URL to send requests to your agent from your applications\n\nFor detailed information about using webhooks with your agent, see the [Webhooks](/Integrations/webhooks) documentation.\n" - }, - { - "file": "Cloud/api-keys.mdx", - "meta": { - "title": "API Keys Management", - "description": "Learn how to create, view, and manage API keys in the Agentuity Cloud Console" - }, - "content": "\n## Viewing Your API Keys\n\nWhen you navigate to the API Keys page in the Cloud Console (under Settings), you'll see a table listing all your API keys with the following information:\n\n- **Name**: The descriptive name you've given to the API key\n- **Key**: The actual API key value (hidden by default for security)\n- **Expires**: When the API key will expire\n- **Last Used**: When the API key was last used\n- **Owner**: The user who created the API key\n\n## Creating a New API Key\n\nTo create a new API key:\n\n1. Navigate to the API Keys page in the Cloud Console (under Settings)\n2. Click the \"Create API Key\" button in the top-right corner\n3. In the dialog that appears:\n - Enter a descriptive name for the key (e.g., \"Production API Key\")\n - Set an expiration date for the key\n4. Click \"Create Key\" to generate the new API key\n5. **Important**: Copy the API key value immediately, as it will only be shown once\n\nNote: An API key is automatically created when you create a new project. You can view and manage this key in the API Keys page.\n" - }, - { - "file": "Cloud/index.mdx", - "meta": { - "title": "Cloud Console Overview", - "description": "Introduction to the Agentuity Cloud Console and its features" - }, - "content": "\nThe Agentuity Cloud Console is a web-based interface for managing your Agentuity resources, projects, and settings. This guide provides an overview of the main features and functionality available in the Cloud Console.\n\n- Create and manage projects\n- Configure settings and API keys\n- Manage memory storage (Vector and Key-Value)\n- Monitor agent deployments and runs\n- View logs and telemetry data\n\n## Console Sections\n\n### Projects\n\n- Project creation and configuration\n- Resource usage monitoring\n- Agent management\n- Run tracking\n- Deployment management\n- Project settings\n\n### Memory Storage\n\nThe Memory Storage section provides tools for managing different types of memory storage:\n\n- **[Vector Memory Storage](/Cloud/vector-memory)**: For semantic search and large context windows, ideal for knowledge bases and historical data\n- **Key-Value Storage**: For fast, simple, or temporary data storage\n\nLearn more in the [Vector Memory Storage documentation](/Cloud/vector-memory) or [Key-Value Storage documentation](/Cloud/key-value-memory).\n\n### Settings and Configuration\n\nThe Settings section allows you to manage various configuration options:\n\n- **[API Keys](/Cloud/api-keys)**: Create and manage API keys for authenticating with Agentuity services\n- **Organization Settings**: Manage organization details and members\n- **User Profile**: Update your user profile and preferences\n" - }, - { - "file": "Cloud/key-value-memory.mdx", - "meta": { - "title": "Key-Value Memory Storage", - "description": "Learn how to create, view, and manage key-value memory storage in the Agentuity Cloud Console" - }, - "content": "\n## Understanding Key-Value Memory Storage\n\nKey-value memory storage is designed for fast, simple, or temporary data storage, making it ideal for:\n\n- Session data\n- Configuration settings\n- Caching\n- Temporary state management\n- Simple data structures\n- Sharing state between agents\n\n## Viewing Your Key-Value Instances\n\nWhen you navigate to the Memory > Key-Value page in the Cloud Console, you'll see a table listing all your key-value instances with the following information:\n\n- **Name**: The name of your key-value instance\n- **Size**: The storage size used by the key-value instance\n\nYou can filter the list of key-value instances using the search box at the top of the table to quickly find specific instances by name.\n\n## Creating a New Key-Value Instance\n\nThere are two ways to create a new key-value instance:\n\n1. From the Memory > Key-Value page in the Cloud Console\n2. In code, using the Agentuity SDK\n" - }, - { - "file": "Cloud/vector-memory.mdx", - "meta": { - "title": "Vector Memory Storage", - "description": "Learn how to create, view, and manage vector memory storage in the Agentuity Cloud Console" - }, - "content": "\n## Understanding Vector Memory Storage\n\nVector memory storage is designed for semantic search and large context windows, making it ideal for:\n\n- Knowledge bases\n- Historical data\n- Semantic search applications\n- Applications requiring understanding of content meaning\n- Long-term memory for agents\n\n## Viewing Your Vector Instances\n\nWhen you navigate to the Memory > Vector page in the Cloud Console, you'll see a table listing all your vector instances with the following information:\n\n- **Name**: The name of your vector instance\n- **Size**: The storage size used by the vector instance\n\nYou can filter the list of vector instances using the search box at the top of the table to quickly find specific instances by name.\n\n## Creating a New Vector Instance\n\nThere are two ways to create a new vector instance:\n\n1. From the Memory > Vector page in the Cloud Console\n2. In code, using the Agentuity SDK\n" - }, - { - "file": "Examples/index.mdx", - "meta": { - "title": "Examples", - "description": "Links to examples across our GitHub repositories" - }, - "content": "\nWhile our comprehensive examples documentation is coming soon,\nyou can explore our GitHub repositories where we maintain a\ncollection of reference implementations.\n\n
\n \n \n View Examples on GitHub\n \n
\n\n## Featured Examples\n\n### Miami Concierge Agent Template\n\nA React-based concierge service template for Miami visitors, showcasing how to build a user-friendly agent interface.\n\n
\n \n
\n\n
\n \n \n View on GitHub\n \n
\n\n### Content Marketing Agent System\n\nAgents for creating, managing, and scheduling social media content using a multi-agent architecture.\n\n
\n \n \n View on GitHub\n \n
\n\n### Newsroom: AI-Powered Content Pipeline\n\nAn automated content generation system that collects, processes, and publishes AI-related news content using specialized AI agents.\n\n
\n \n \n View on GitHub\n \n
\n\n### Agent Changelog\n\nA tool for automatically generating and managing changelogs for your projects.\n\n
\n \n \n View on GitHub\n \n
\n\n## SDK Examples\n\nWe provide comprehensive examples for our SDKs to help you get started with building agents using Agentuity.\n\n### JavaScript SDK Examples\n\nOur JavaScript SDK examples demonstrate how to build agents using JavaScript:\n\n
\n \n View JavaScript SDK Examples\n \n
\n\n### Python SDK Examples\n\nOur Python SDK examples demonstrate how to build agents using Python:\n\n
\n \n View Python SDK Examples\n \n
\n" - }, - { - "file": "Integrations/index.mdx", - "meta": { - "title": "Integrations", - "description": "Guide to integrating Agentuity with external services and platforms" - }, - "content": "\nLearn how to integrate Agentuity with various external services and platforms.\n\n## Overview\n\n[Content coming soon - Overview of available integrations and general setup process]\n\n## Authentication\n\n[Content coming soon - Authentication requirements for integrations]\n\n## Best Practices\n\n[Content coming soon - Integration best practices and recommendations] " - }, - { - "file": "Integrations/slack.mdx", - "meta": { - "title": "Slack Integration", - "description": "Integrate Agentuity with Slack for notifications and interactions" - }, - "content": "\n## Setup\n\n[Content coming soon - Setting up Slack integration]\n\n## Features\n\n[Content coming soon - Available Slack integration features]\n\n## Commands\n\n[Content coming soon - Available Slack commands]\n\n## Notifications\n\n[Content coming soon - Configuring Slack notifications]\n\n## Best Practices\n\n[Content coming soon - Slack integration best practices]\n\n## Troubleshooting\n\n[Content coming soon - Common Slack integration issues and solutions] " - }, - { - "file": "Integrations/sms.mdx", - "meta": { - "title": "SMS Integration", - "description": "Integrate Agentuity with SMS services for notifications and interactions" - }, - "content": "\n## Setup\n\n[Content coming soon - Setting up SMS integration]\n\n## Providers\n\n[Content coming soon - Supported SMS providers]\n\n## Features\n\n[Content coming soon - Available SMS features]\n\n## Message Templates\n\n[Content coming soon - Creating and managing message templates]\n\n## Best Practices\n\n[Content coming soon - SMS integration best practices]\n\n## Troubleshooting\n\n[Content coming soon - Common SMS integration issues and solutions] " - }, - { - "file": "Integrations/webhooks.mdx", - "meta": { - "title": "Webhooks", - "description": "Setting up and managing webhooks with Agentuity" - }, - "content": "\n## Overview\n\nWebhooks provide a way to send data to your Agentuity agents or receive data from them. This guide covers how to set up and use webhooks with your Agentuity agents.\n\n## Setting Up Inbound Webhooks\n\nInbound webhooks allow external systems to send data to your Agentuity agents.\n\n### Accessing Webhook Configuration\n\n1. Navigate to your agent's dashboard in the Agentuity Cloud Console\n2. In the I/O visualization, click on the plus button to add a webhook or click on an existing webhook\n3. The webhook configuration modal will appear with all necessary settings\n\n### Security Considerations\n\nWhen setting up webhooks, consider the following security best practices:\n\n- Choose the appropriate authentication method based on your security requirements\n- Regularly rotate authentication credentials\n- Only expose the minimum required data through your webhooks\n- Monitor webhook access logs for unusual activity\n\n## Webhook Events\n\n[Content coming soon - Available webhook events and their payloads]\n\n## Testing\n\n[Content coming soon - Testing webhook integrations]\n\n## Troubleshooting\n\n[Content coming soon - Common webhook issues and solutions] " - }, - { - "file": "Introduction/architecture.mdx", - "meta": { - "title": "Architecture Overview", - "description": "Understanding Agentuity's system architecture, components, and integration points" - }, - "content": "\n## System Architecture\n\nAgentuity is a cloud platform designed to run and scale AI agents with enterprise-grade reliability. \nOur architecture follows a container-based approach, where each agent operates in its own specialized \nenvironment.\n\nUnlike traditional serverless platforms, Agentuity ensures containers run for as long as agents need, \nmaintaining state and context throughout agent lifecycles. This long-running container approach is \noptimal for complex AI workloads that may require extended processing time.\n\nThe platform is fundamentally cross-platform, allowing you to run different agent frameworks \n(CrewAI, Langchain, custom agents) side by side in the same ecosystem, with built-in communication \nchannels between them.\n\n## Core Components\n\nAgentuity consists of four primary components:\n\n1. **Container Runtime** - The execution environment where your agents run, providing:\n - Isolated, secure container environments for each agent\n - Automatic scaling based on workload\n - Resource management and optimization\n - Long-running container support for persistent agents\n\n2. **Command Line Interface (CLI)** - A developer tool that enables:\n - Quick agent creation and initialization\n - Local development and testing\n - Deployment management to the Agentuity cloud\n - Agent monitoring and troubleshooting\n\n3. **Software Development Kits (SDKs)** - Libraries that provide:\n - Agent-native tools and services\n - Runtime-specific optimizations for Python and JavaScript (Node and Bun)\n - Integration capabilities with external systems\n - Enhanced agent capabilities and extensions\n\n4. **Web Console** - A management interface offering:\n - Real-time agent monitoring and metrics\n - Deployment and configuration management\n - Usage analytics and performance insights\n - Team collaboration features\n\n## Data Flow\n\nAgent communication and data flow in Agentuity follow secure, encrypted channels:\n\n1. **Agent-to-Agent Communication** - Agents can communicate with each other through encrypted routing, \nregardless of the underlying frameworks used.\n\n2. **External Integrations** - Agents can connect to external systems and data sources through managed \nintegration points.\n\n3. **Deployment Pipeline** - Your project code is packaged, containerized, and deployed to the Agentuity \ncloud infrastructure with appropriate networking and routing configured automatically.\n\n## Scalability\n\nAgentuity is designed for enterprise-scale agent deployments:\n\n- **Horizontal Scaling** - Automatically provision additional resources as demand increases\n- **Framework Agnostic** - Scale any type of agent regardless of the underlying framework\n- **Load Balancing** - Distribute agent workloads efficiently across available resources\n- **Resource Optimization** - Intelligently allocate compute resources based on agent requirements\n\n## Security Architecture\n\nSecurity is foundational to Agentuity's design:\n\n- **Container Isolation** - Each agent operates in its own isolated environment\n- **Encrypted Communications** - All agent-to-agent communication is encrypted\n- **Secure Deployment** - Protected deployment pipeline from development to production" - }, - { - "file": "Introduction/index.mdx", - "meta": { - "title": "Agentuity" - }, - "content": "\nAgentuity is a cloud platform designed specifically for building, deploying, and scaling \nautonomous AI agents. It provides the infrastructure and tools necessary to manage agents \nbuilt with any framework, such as CrewAI, LangChain, or custom code.\n\nWith Agentuity, you can:\n- Deploy agents with a single command\n- Monitor real-time performance and analytics\n- Scale agents effortlessly\n- Connect agents to various channels (API, chat, webhooks, email, SMS, voice)\n- Use any AI agent framework\n\n## Agentuity Platform Overview\n\n\n\n## Getting Started\n\nimport { Step, Steps } from 'fumadocs-ui/components/steps';\n\n\n\n### Create an Account\n[Create an Agentuity account](https://app.agentuity.com/sign-up) or [Sign in](https://app.agentuity.com/sign-in) to the cloud portal.\n\n\n\n### Install the CLI\n\nimport { Tab, Tabs } from 'fumadocs-ui/components/tabs';\n\n\n \n ```bash\n curl -fsS https://agentuity.sh | sh\n ```\n \n \n ```bash\n curl -fsS https://agentuity.sh | sh\n ```\n \n \n ```bash\n curl -fsS https://agentuity.sh | sh\n ```\n \n \n ```bash\n iwr https://agentuity.sh/install.ps1 -useb | iex\n ```\n \n\n\n\n\n### Login to Agentuity\n```bash\nagentuity login\n```\n\n\n\n### Create Your First Project\n```bash\nagentuity new\n```\n\n\n\n### Deploy Your Project\n```bash\nagentuity deploy\n```\n\n\n\n### Access Your Agent's Webhook\nAfter deploying your agent, you can find its webhook URL in the agent's dashboard:\n1. Navigate to your agent in the Agentuity Cloud Console\n2. Click on the \"Connections\" tab or the webhook icon in the I/O visualization\n3. In the \"Inbound Webhook\" modal, you'll find the webhook URL and configuration options\n\nThis webhook URL is what you'll use to send requests to your agent from external applications.\n\n\n\n## Documentation Sections\n\n\n \n \n \n \n\n\n## Need Help?\n\nJoin our [Community Discord](https://discord.com/invite/vtn3hgUfuc) for assistance.\n" - }, - { - "file": "SDKs/index.mdx", - "meta": { - "title": "SDKs", - "description": "Agentuity SDKs" - }, - "content": "\n
\n \n

Python SDK

\n

Build AI Agents with our Python SDK

\n
\n \n \n

JavaScript SDK

\n

Build AI Agents using our JavaScript/TypeScript SDK

\n
\n
\n" - }, - { - "file": "SDKs/javascript/api-reference.mdx", - "meta": { - "title": "API Reference", - "description": "Comprehensive reference for the Agentuity JavaScript SDK API" - }, - "content": "\nThis section provides detailed documentation for the Agentuity JavaScript SDK API, including method signatures, parameters, return values, and example usage.\n\n## Table of Contents\n\n- [Agent Lifecycle](#agent-lifecycle)\n- [Storage APIs](#storage-apis)\n- [Agent Communication](#agent-communication)\n- [Response Types](#response-types)\n- [Request Handling](#request-handling)\n- [Logging](#logging)\n- [Telemetry](#telemetry)\n\n## Agent Lifecycle\n\nThe Agentuity SDK provides a structured way to define and handle agents. An agent consists of a handler function, with its configuration managed by the Agentuity CLI.\n\n### Agent Configuration\n\nAgent configuration is managed by the Agentuity CLI and stored in the project configuration file. The `AgentConfig` interface is used internally by the CLI and SDK:\n\n```typescript\ninterface AgentConfig {\n /**\n * the name of the agent\n */\n name: string;\n /**\n * the description of the agent\n */\n description?: string;\n}\n```\n\n### Agent Handler\n\nThe `AgentHandler` type defines the handler function for an agent:\n\n```typescript\ntype AgentHandler = (\n request: AgentRequest,\n response: AgentResponse,\n context: AgentContext\n) => Promise;\n```\n\n#### Parameters\n\n- `request`: An `AgentRequest` object containing the request data\n- `response`: An `AgentResponse` object for creating responses\n- `context`: An `AgentContext` object providing access to various capabilities\n\n#### Return Value\n\nThe handler function should return a Promise that resolves to an `AgentResponseType` object.\n\n#### Example\n\n```typescript\nimport { AgentHandler } from '@agentuity/sdk';\n\n// Agent handler function\nconst handler: AgentHandler = async (request, response, context) => {\n try {\n // Get the request data\n const { name } = await request.data.json();\n \n // Log the request\n context.logger.info(`Received greeting request for ${name}`);\n \n // Return a personalized greeting\n return response.json({\n message: `Hello, ${name}! Welcome to Agentuity.`\n });\n } catch (error) {\n // Handle errors\n context.logger.error('Error processing request', error);\n return response.json({ error: 'Failed to process request' });\n }\n};\n\nexport default handler;\n```\n\n## Storage APIs\n\nThe Agentuity SDK provides two storage APIs: Key-Value Storage and Vector Storage.\n\n\n### Key-Value Storage\n\nThe Key-Value Storage API provides a simple way to store and retrieve data. It is accessed through the `context.kv` object.\n\n#### `get(name: string, key: string): Promise`\n\nRetrieves a value from the key-value storage.\n\n##### Parameters\n\n- `name`: The name of the key-value storage\n- `key`: The key to retrieve the value for\n\n##### Return Value\n\nReturns a Promise that resolves to an ArrayBuffer containing the value, or null if the key does not exist.\n\n##### Example\n\n```typescript\n// Retrieve a value from key-value storage\nconst value = await context.kv.get('user-preferences', 'user-123');\nif (value) {\n // Convert ArrayBuffer to string if needed\n const valueString = new TextDecoder().decode(value);\n console.log(`User preferences: ${valueString}`);\n} else {\n console.log('User preferences not found');\n}\n```\n\n#### `set(name: string, key: string, value: ArrayBuffer | string | Json, ttl?: number): Promise`\n\nStores a value in the key-value storage.\n\n##### Parameters\n\n- `name`: The name of the key-value storage\n- `key`: The key to store the value under\n- `value`: The value to store (can be an ArrayBuffer, string, or JSON object)\n- `ttl` (optional): Time-to-live in seconds (minimum 60 seconds)\n\n##### Return Value\n\nReturns a Promise that resolves when the value has been stored.\n\n##### Example\n\n```typescript\n// Store a string value\nawait context.kv.set('user-preferences', 'user-123', JSON.stringify({ theme: 'dark' }));\n\n// Store a JSON value\nawait context.kv.set('user-preferences', 'user-123', { theme: 'dark' });\n\n// Store a binary value\nconst binaryData = new Uint8Array([1, 2, 3, 4]).buffer;\nawait context.kv.set('user-data', 'user-123', binaryData);\n\n// Store a value with TTL (expires after 1 hour)\nawait context.kv.set('session', 'user-123', 'active', 3600);\n```\n\n#### `delete(name: string, key: string): Promise`\n\nDeletes a value from the key-value storage.\n\n##### Parameters\n\n- `name`: The name of the key-value storage\n- `key`: The key to delete\n\n##### Return Value\n\nReturns a Promise that resolves when the value has been deleted.\n\n##### Example\n\n```typescript\n// Delete a value\nawait context.kv.delete('user-preferences', 'user-123');\n```\n\n### Vector Storage\n\nThe Vector Storage API provides a way to store and search for data using vector embeddings. It is accessed through the `context.vector` object.\n\n#### `upsert(name: string, ...documents: VectorUpsertParams[]): Promise`\n\nInserts or updates vectors in the vector storage.\n\n##### Parameters\n\n- `name`: The name of the vector storage\n- `documents`: One or more documents to upsert, each with either embeddings or text\n\n##### Return Value\n\nReturns a Promise that resolves to an array of string IDs for the upserted vectors.\n\n##### Example\n\n```typescript\n// Upsert documents with text\nconst ids = await context.vector.upsert(\n 'product-descriptions',\n { document: 'Ergonomic office chair with lumbar support', metadata: { category: 'furniture' } },\n { document: 'Wireless noise-cancelling headphones', metadata: { category: 'electronics' } }\n);\n\n// Upsert documents with embeddings\nconst ids2 = await context.vector.upsert(\n 'product-embeddings',\n { embeddings: [0.1, 0.2, 0.3, 0.4], metadata: { productId: '123' } },\n { embeddings: [0.5, 0.6, 0.7, 0.8], metadata: { productId: '456' } }\n);\n```\n\n#### `search(name: string, params: VectorSearchParams): Promise`\n\nSearches for vectors in the vector storage.\n\n##### Parameters\n\n- `name`: The name of the vector storage\n- `params`: Search parameters including query, limit, similarity threshold, and metadata filters\n\n##### Return Value\n\nReturns a Promise that resolves to an array of search results, each containing an ID, metadata, and distance score.\n\n##### Example\n\n```typescript\n// Search for similar products\nconst results = await context.vector.search('product-descriptions', {\n query: 'comfortable office chair',\n limit: 5,\n similarity: 0.7,\n metadata: { category: 'furniture' }\n});\n\n// Process search results\nfor (const result of results) {\n console.log(`Product ID: ${result.id}, Similarity: ${result.distance}`);\n console.log(`Metadata: ${JSON.stringify(result.metadata)}`);\n}\n```\n\n#### `delete(name: string, ...ids: string[]): Promise`\n\nDeletes vectors from the vector storage.\n\n##### Parameters\n\n- `name`: The name of the vector storage\n- `ids`: One or more IDs of vectors to delete\n\n##### Return Value\n\nReturns a Promise that resolves to the number of vectors that were deleted.\n\n##### Example\n\n```typescript\n// Delete vectors\nconst deletedCount = await context.vector.delete('product-descriptions', 'id1', 'id2', 'id3');\nconsole.log(`Deleted ${deletedCount} vectors`);\n```\n\n## Agent Communication\n\nThe Agentuity SDK allows agents to communicate with each other through the `context.getAgent()` method and agent redirection.\n\n### `getAgent(params: GetAgentRequestParams): Promise`\n\nRetrieves a handle to a remote agent that can be invoked.\n\n#### Parameters\n\n- `params`: Parameters to identify the agent, either by ID or by name and project ID\n\n#### Return Value\n\nReturns a Promise that resolves to a `RemoteAgent` object that can be used to invoke the agent.\n\n#### Example\n\n```typescript\n// Get an agent by ID\nconst agent = await context.getAgent({ id: 'agent-123' });\n\n// Get an agent by name\nconst agent2 = await context.getAgent({ \n name: 'data-processing-agent',\n projectId: 'project-456'\n});\n\n// Invoke the agent\nconst result = await agent.run({ data: 'process this' }, 'application/json');\n```\n\n### Agent Handoff\n\nThe `response.handoff()` method allows an agent to handoff the request to another agent.\n\n#### `handoff(agent: GetAgentRequestParams, payload?: Json | ArrayBuffer | string, contentType?: string, metadata?: Record): AgentRedirectResponse`\n\nRedirects the current request to another agent.\n\n##### Parameters\n\n- `agent`: Parameters to identify the target agent\n- `payload` (optional): The payload to send to the target agent\n- `contentType` (optional): The content type of the payload\n- `metadata` (optional): Additional metadata to include with the request\n\n##### Return Value\n\nReturns an `AgentRedirectResponse` object.\n\n##### Examples\n\n```typescript\n// By ID\nreturn response.handoff({\n id: 'agent_9e478ebc1b6b58f921725e2f6f0025ab',\n});\n\n// By Name\nreturn response.handoff({\n name: 'my agent',\n});\n\n// By Name Scoped to a Project\nreturn response.handoff({\n name: 'my agent',\n projectId: 'proj_fc9a68c544c486cebf982c9843b9032b',\n});\n\n// With payload and metadata\nreturn response.handoff(\n { name: 'data-processing-agent' },\n { data: 'process this' },\n 'application/json',\n { source: 'web-agent' }\n);\n```\n\n## Response Types\n\nThe Agentuity SDK provides various methods for creating different types of responses through the `response` object.\n\n### JSON Responses\n\n#### `json(data: Json, metadata?: Record): AgentResponseType`\n\nCreates a JSON response.\n\n##### Parameters\n\n- `data`: The JSON data to include in the response\n- `metadata` (optional): Additional metadata to include with the response\n\n##### Return Value\n\nReturns an `AgentResponseType` object with the JSON data.\n\n##### Example\n\n```typescript\nreturn response.json({ \n message: 'Success',\n data: { id: 123, name: 'Example' }\n});\n```\n\n### Text Responses\n\n#### `text(data: string, metadata?: Record): AgentResponseType`\n\nCreates a text response.\n\n##### Parameters\n\n- `data`: The text to include in the response\n- `metadata` (optional): Additional metadata to include with the response\n\n##### Return Value\n\nReturns an `AgentResponseType` object with the text data.\n\n##### Example\n\n```typescript\nreturn response.text('Hello, world!');\n```\n\n### Binary Responses\n\n#### `binary(data: ArrayBuffer, metadata?: Record): AgentResponseType`\n\nCreates a binary response.\n\n##### Parameters\n\n- `data`: The binary data to include in the response\n- `metadata` (optional): Additional metadata to include with the response\n\n##### Return Value\n\nReturns an `AgentResponseType` object with the binary data.\n\n##### Example\n\n```typescript\nconst binaryData = new Uint8Array([1, 2, 3, 4]).buffer;\nreturn response.binary(binaryData, { filename: 'data.bin' });\n```\n\n### Media Type Responses\n\nThe SDK provides specialized methods for various media types:\n\n- `pdf(data: ArrayBuffer, metadata?: Record): AgentResponseType`\n- `png(data: ArrayBuffer, metadata?: Record): AgentResponseType`\n- `jpeg(data: ArrayBuffer, metadata?: Record): AgentResponseType`\n- `gif(data: ArrayBuffer, metadata?: Record): AgentResponseType`\n- `webp(data: ArrayBuffer, metadata?: Record): AgentResponseType`\n- `mp3(data: ArrayBuffer, metadata?: Record): AgentResponseType`\n- `mp4(data: ArrayBuffer, metadata?: Record): AgentResponseType`\n- `m4a(data: ArrayBuffer, metadata?: Record): AgentResponseType`\n- `m4p(data: ArrayBuffer, metadata?: Record): AgentResponseType`\n- `webm(data: ArrayBuffer, metadata?: Record): AgentResponseType`\n- `wav(data: ArrayBuffer, metadata?: Record): AgentResponseType`\n- `ogg(data: ArrayBuffer, metadata?: Record): AgentResponseType`\n- `data(data: Json | ArrayBuffer | string, contentType: string, metadata?: Record): AgentResponseType`\n- `markdown(content: string, metadata?: Record): AgentResponseType`\n\nEach method works similarly to the `binary()` method but sets the appropriate content type. The `data` method allows setting specific data with an exact content type, while the `markdown` method provides a convenient way to return markdown content.\n\n#### Example\n\n```typescript\n// Return a PNG image\nreturn response.png(imageData, { filename: 'chart.png' });\n\n// Return an MP3 audio file\nreturn response.mp3(audioData, { duration: 120 });\n```\n\n### HTML Responses\n\n#### `html(data: string, metadata?: Record): AgentResponseType`\n\nCreates an HTML response.\n\n##### Parameters\n\n- `data`: The HTML content to include in the response\n- `metadata` (optional): Additional metadata to include with the response\n\n##### Return Value\n\nReturns an `AgentResponseType` object with the HTML content.\n\n##### Example\n\n```typescript\nreturn response.html('

Hello, world!

This is an HTML response.

');\n```\n\n### Empty Responses\n\n#### `empty(metadata?: Record): AgentResponseType`\n\nCreates an empty response.\n\n##### Parameters\n\n- `metadata` (optional): Additional metadata to include with the response\n\n##### Return Value\n\nReturns an `AgentResponseType` object with no payload.\n\n##### Example\n\n```typescript\nreturn response.empty({ status: 204 });\n```\n\n## Request Handling\n\nThe Agentuity SDK provides various methods for accessing request data through the `request` object.\n\n### Accessing Request Data\n\n#### `get trigger(): string`\n\nGets the trigger type of the request.\n\n##### Return Value\n\nReturns a string representing the trigger type (webhook, cron, manual, agent, etc.).\n\n##### Example\n\n```typescript\nconst triggerType = request.trigger;\nconsole.log(`Request triggered by: ${triggerType}`);\n```\n\n#### `get(key: string, defaultValue?: Json): Json`\n\nGets a value from the request. The available properties depend on the trigger type.\n\n##### Parameters\n\n- `key`: The key to retrieve\n- `defaultValue` (optional): A default value to return if the key does not exist\n\n##### Return Value\n\nReturns the value for the specified key, or the default value if the key does not exist.\n\n##### Trigger-specific Properties\n\nDifferent trigger types provide different properties:\n\n- **Webhook**: Includes a `headers` property containing the HTTP headers from the webhook request.\n\n##### Example\n\n```typescript\n// For webhook triggers, access headers\nconst headers = request.get('headers');\n// Access a specific header\nconst githubSignature = headers['x-hub-signature'];\n\n// Get a user ID with a default value\nconst userId = request.get('userId', 'anonymous');\n```\n\n#### `metadata(key: string, defaultValue?: Json): Json`\n\n**Note:** This method is deprecated. Use `get(key, defaultValue)` instead.\n\nGets metadata associated with the request.\n\n##### Parameters\n\n- `key`: The metadata key to retrieve\n- `defaultValue` (optional): A default value to return if the key does not exist\n\n##### Return Value\n\nReturns the metadata value for the specified key, or the default value if the key does not exist.\n\n\n#### `json(): Promise`\n\nGets the payload of the request as a JSON object.\n\n##### Return Value\n\nReturns a Promise that resolves to the request payload as a JSON object.\n\n##### Example\n\n```typescript\nconst data = await request.data.json();\nconsole.log(`Request data: ${JSON.stringify(data)}`);\n```\n\n#### `text(): Promise`\n\nGets the payload of the request as a string.\n\n##### Return Value\n\nReturns a Promise that resolves to the request payload as a string.\n\n##### Example\n\n```typescript\nconst text = await request.data.text();\nconsole.log(`Request text: ${text}`);\n```\n\n#### `binary(): Promise`\n\nGets the payload of the request as an ArrayBuffer.\n\n##### Return Value\n\nReturns a Promise that resolves to the request payload as an ArrayBuffer.\n\n##### Example\n\n```typescript\nconst binaryData = await request.data.binary();\nconsole.log(`Binary data size: ${binaryData.byteLength} bytes`);\n```\n\n### Media-Specific Methods\n\nThe SDK provides specialized methods for various media types, all of which now return Promises:\n\n- `pdf(): Promise`\n- `png(): Promise`\n- `jpeg(): Promise`\n- `gif(): Promise`\n- `webp(): Promise`\n- `mp3(): Promise`\n- `mp4(): Promise`\n- `m4a(): Promise`\n- `m4p(): Promise`\n- `webm(): Promise`\n- `wav(): Promise`\n- `ogg(): Promise`\n\nEach method returns a Promise that resolves to the request payload as an ArrayBuffer with the appropriate content type validation.\n\n#### Example\n\n```typescript\n// Get an image from the request\nconst image = await request.png();\n// Process the image...\n\n// Get audio from the request\nconst audio = await request.mp3();\n// Process the audio...\n```\n\n## Logging\n\nThe Agentuity SDK provides logging functionality through the `context.logger` object.\n\n### Logger Interface\n\nThe `Logger` interface defines the following methods:\n\n```typescript\ninterface Logger {\n debug(message: string, ...args: unknown[]): void;\n info(message: string, ...args: unknown[]): void;\n warn(message: string, ...args: unknown[]): void;\n error(message: string, ...args: unknown[]): void;\n child(opts: Record): Logger;\n}\n```\n\n### Logging Methods\n\n#### `debug(message: string, ...args: unknown[]): void`\n\nLogs a debug message.\n\n##### Parameters\n\n- `message`: The message to log\n- `args`: Additional arguments to include in the log\n\n##### Example\n\n```typescript\ncontext.logger.debug('Processing request', { requestId: '123' });\n```\n\n#### `info(message: string, ...args: unknown[]): void`\n\nLogs an informational message.\n\n##### Parameters\n\n- `message`: The message to log\n- `args`: Additional arguments to include in the log\n\n##### Example\n\n```typescript\ncontext.logger.info('Request processed successfully', { requestId: '123' });\n```\n\n#### `warn(message: string, ...args: unknown[]): void`\n\nLogs a warning message.\n\n##### Parameters\n\n- `message`: The message to log\n- `args`: Additional arguments to include in the log\n\n##### Example\n\n```typescript\ncontext.logger.warn('Resource not found', { resourceId: '456' });\n```\n\n#### `error(message: string, ...args: unknown[]): void`\n\nLogs an error message.\n\n##### Parameters\n\n- `message`: The message to log\n- `args`: Additional arguments to include in the log\n\n##### Example\n\n```typescript\ncontext.logger.error('Failed to process request', error);\n```\n\n### Creating Child Loggers\n\n#### `child(opts: Record): Logger`\n\nCreates a child logger with additional context.\n\n##### Parameters\n\n- `opts`: Additional context to include in all logs from the child logger\n\n##### Return Value\n\nReturns a new `Logger` instance with the additional context.\n\n##### Example\n\n```typescript\nconst requestLogger = context.logger.child({ requestId: '123', userId: '456' });\nrequestLogger.info('Processing request'); // Includes requestId and userId\n```\n\n## Welcome Function\n\nThe Agentuity SDK allows you to customize the initial appearance of DevMode when it starts interacting with your agents by exporting a `welcome()` function. This function returns an `AgentWelcomeResult` object that includes a welcome message and optional example prompts.\n\n### AgentWelcomeResult Interface\n\n```typescript\nexport interface AgentWelcomePrompt {\n /**\n * The data to display to the user\n */\n data: Buffer | Uint8Array | ArrayBuffer | string | Json | Blob | ReadableStream | Data;\n /**\n * The content type of the data\n */\n contentType: string;\n}\n\nexport interface AgentWelcomeResult {\n /**\n * The welcome prompt to display to the user\n */\n welcome: string;\n /**\n * The example prompts to display to the user\n */\n prompts?: AgentWelcomePrompt[];\n}\n```\n\n### welcome()\n\nDefines a welcome message and optional example prompts for DevMode.\n\n#### Return Value\n\nReturns an `AgentWelcomeResult` object with a welcome message and optional prompts.\n\n#### Example\n\n```typescript\nexport const welcome = (): AgentWelcomeResult => {\n return {\n welcome: \"Welcome to my Agent! How can I help you today?\",\n prompts: [\n {\n data: \"What can you do?\",\n contentType: \"text/plain\",\n }\n ],\n };\n};\n```\n\n\n\n## Session\n\nThe Agentuity SDK provides a `Session` interface that represents the current agent execution context.\n\n```typescript\ninterface Session {\n request: AgentRequestType;\n context: AgentContext;\n}\n```\n\n## Telemetry\n\nThe Agentuity SDK integrates with OpenTelemetry for tracing and metrics.\n\n### Tracing\n\nThe SDK provides access to OpenTelemetry tracing through the `context.tracer` object.\n\n#### Example\n\n```typescript\n// Create a span\ncontext.tracer.startActiveSpan('process-data', async (span) => {\n try {\n // Add attributes to the span\n span.setAttribute('userId', '123');\n \n // Perform some work\n const result = await processData();\n \n // Add events to the span\n span.addEvent('data-processed', { itemCount: result.length });\n \n // End the span\n span.end();\n \n return result;\n } catch (error) {\n // Record the error\n span.recordException(error);\n span.setStatus({ code: SpanStatusCode.ERROR });\n throw error;\n }\n});\n```\n\n## Breaking Changes\n\n### Data API\n\nIn version X.X.X, the Data API was refactored to use async methods instead of static properties to better support streaming capabilities:\n\n#### Before:\n```typescript\n// Accessing data properties directly\nconst jsonData = request.data.json;\nconst textData = request.data.text;\nconst base64Data = request.data.base64;\n```\n\n#### After:\n```typescript\n// Using async methods to access data\nconst jsonData = await request.data.json();\nconst textData = await request.data.text();\nconst base64Data = await request.data.base64();\n```\n\nThis change affects all methods on the `Data` interface:\n- `data.base64` → `data.base64()`\n- `data.text` → `data.text()`\n- `data.json` → `data.json()`\n- `data.object()` → `data.object()`\n- `data.binary` → `data.binary()`\n- `data.buffer` → `data.buffer()`\n- `data.stream` → `data.stream()`\n\n\n## Deprecated Features\n\n### `/run/:id` Route\n\nThe `/run/:id` route is now deprecated as it provides the same functionality as `/:id`. Applications should update their code to use the `/:id` route instead.\n\n" - }, - { - "file": "SDKs/javascript/core-concepts.mdx", - "meta": { - "title": "Core Concepts", - "description": "Learn about the fundamental concepts of the Agentuity JavaScript SDK" - }, - "content": "\nThe Agentuity JavaScript SDK is built around several key concepts that form the foundation of agent development. Understanding these concepts is essential for effectively using the SDK.\n\n## Agent Architecture\n\nAgents in the Agentuity SDK are modular components that can process requests and generate responses. Each agent:\n\n- Has a unique identifier and name\n- Can be triggered by various events (webhooks, cron jobs, manual invocation, etc.)\n- Processes requests through a handler function\n- Has access to a context object with various capabilities\n\nThe basic structure of an agent looks like this:\n\n```typescript\nimport { AgentHandler } from '@agentuity/sdk';\n\n// Agent handler function\nconst handler: AgentHandler = async (request, response, context) => {\n // Process the request\n const data = await request.data.json();\n \n // Use the context (logging, storage, etc.)\n context.logger.info('Processing request', data);\n \n // Return a response\n return response.json({ message: 'Hello from my agent!' });\n};\n\nexport default handler;\n```\n\n\n Agent configuration (name, description, etc.) is managed by the Agentuity CLI and stored in the project configuration file.\n Use the `agentuity project` and `agentuity agent` commands to manage your configuration.\n\n\n\n## Request and Response Handling\n\nThe Agentuity SDK provides a structured way to handle requests and generate responses:\n\n### Requests\n\nRequests contain information about the trigger event and payload data. The `AgentRequest` interface provides methods to access this data in various formats:\n\n- `request.metadata` - Access metadata associated with the request\n- `request.trigger` - Get the trigger type (webhook, manual,cron, etc.)\n- `request.get(key, defval)` - Get a value from the request metadata\n- `request.data` - Get a Data object from the request\n- `request.data.contentType` - The content type (or mime type) of the request\n- `request.data.json()` - Get the payload as a JSON object (async, requires await)\n- `request.data.object()` - Get the payload as a JSON object and parse it as a specific type (async, requires await)\n- `request.data.text()` - Get the payload as a string (async, requires await)\n- `request.data.binary()` - Get the payload as an ArrayBuffer (async, requires await)\n\n\n### Responses\n\nResponses are created using the `AgentResponse` interface, which provides methods for different response types:\n\n- `response.json()` - Return a JSON response\n- `response.text()` - Return a text response\n- `response.binary()` - Return a binary response\n- `response.html()` - Return an HTML response\n- `response.empty()` - Return an empty response\n- Various media-specific methods (pdf(), png(), jpeg(), etc.)\n- `response.handoff()` - Redirect to another agent\n\n## Agent Context\n\nThe context object provides access to various capabilities and services:\n\n- `context.logger` - Logging functionality\n- `context.kv` - Key-value storage\n- `context.vector` - Vector storage\n- `context.getAgent()` - Access to other agents both locally and remotely\n- `context.tracer` - OpenTelemetry tracing\n- `context.scope` - The scope of the agent invocation ('local' or 'remote')\n- Metadata about the current execution (runId, projectId, etc.)\n\n## Triggers and Event Types\n\nAgents can be triggered by various event types:\n\n- `webhook` - HTTP webhook calls\n- `cron` - Scheduled cron jobs\n- `manual` - Manual invocation\n- `agent` - Calls from other agents\n- `sms` - SMS messages\n- `queue` - Queue processing\n- `voice` - Voice calls\n- `email` - Email messages\n\nEach trigger type may provide different metadata and payload formats, which can be accessed through the request object.\n" - }, - { - "file": "SDKs/javascript/error-handling.mdx", - "meta": { - "title": "Error Handling", - "description": "Learn how to handle errors in the Agentuity JavaScript SDK" - }, - "content": "\nThis section covers error handling strategies and common error types in the Agentuity JavaScript SDK.\n\n## Error Handling Patterns\n\n### Try-Catch Pattern\n\nThe most common error handling pattern is to use try-catch blocks in your agent handlers:\n\n```typescript\nconst handler: AgentHandler = async (request, response, context) => {\n try {\n // Process the request\n const data = request.data.json;\n \n // Perform operations that might fail\n const result = await processData(data);\n \n // Return successful response\n return response.json({ result });\n } catch (error) {\n // Log the error\n context.logger.error('Error processing request', error);\n \n // Return error response\n return response.json({ \n error: 'Failed to process request',\n message: error instanceof Error ? error.message : 'Unknown error'\n });\n }\n};\n```\n\n### Error Classification\n\nFor more sophisticated error handling, you can classify errors and handle them differently:\n\n```typescript\nconst handler: AgentHandler = async (request, response, context) => {\n try {\n // Process the request\n const data = request.data.json;\n \n // Perform operations that might fail\n const result = await processData(data);\n \n // Return successful response\n return response.json({ result });\n } catch (error) {\n // Log the error\n context.logger.error('Error processing request', error);\n \n // Classify and handle different error types\n if (error instanceof ValidationError) {\n return response.json({ \n error: 'Validation error',\n message: error.message\n });\n }\n \n if (error instanceof ResourceNotFoundError) {\n return response.json({ \n error: 'Resource not found',\n message: error.message\n });\n }\n \n // Handle unexpected errors\n return response.json({ \n error: 'Internal server error',\n message: 'An unexpected error occurred'\n });\n }\n};\n```\n\n### Custom Error Classes\n\nYou can define custom error classes to make error handling more structured:\n\n```typescript\n// Custom error classes\nclass ValidationError extends Error {\n constructor(message: string) {\n super(message);\n this.name = 'ValidationError';\n }\n}\n\nclass ResourceNotFoundError extends Error {\n constructor(resourceId: string) {\n super(`Resource not found: ${resourceId}`);\n this.name = 'ResourceNotFoundError';\n }\n}\n\nclass AuthorizationError extends Error {\n constructor(message: string) {\n super(message);\n this.name = 'AuthorizationError';\n }\n}\n```\n\n### Error Handling with OpenTelemetry\n\nYou can use OpenTelemetry to record exceptions and set span status:\n\n```typescript\nconst handler: AgentHandler = async (request, response, context) => {\n return context.tracer.startActiveSpan('process-request', async (span) => {\n try {\n // Process the request\n const data = request.data.json;\n \n // Perform operations that might fail\n const result = await processData(data);\n \n // Set span status to OK\n span.setStatus({ code: SpanStatusCode.OK });\n \n // Return successful response\n return response.json({ result });\n } catch (error) {\n // Record exception in the span\n span.recordException(error as Error);\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: (error as Error).message\n });\n \n // Log the error\n context.logger.error('Error processing request', error);\n \n // Return error response\n return response.json({ \n error: 'Failed to process request',\n message: (error as Error).message\n });\n } finally {\n // End the span\n span.end();\n }\n });\n};\n```\n\n## Error Handling for Storage APIs\n\n### Key-Value Storage Errors\n\nWhen working with the key-value storage API, handle potential errors:\n\n```typescript\ntry {\n // Attempt to get a value\n const value = await context.kv.get('user-preferences', userId);\n \n // Process the value\n if (value) {\n const preferences = JSON.parse(new TextDecoder().decode(value));\n // Use preferences...\n }\n} catch (error) {\n // Handle key-value storage errors\n context.logger.error('Error accessing key-value storage', error);\n // Implement fallback behavior or return error response\n}\n```\n\n### Vector Storage Errors\n\nWhen working with the vector storage API, handle potential errors:\n\n```typescript\ntry {\n // Attempt to search for vectors\n const results = await context.vector.search('products', {\n query: 'ergonomic chair',\n limit: 5\n });\n \n // Process the results\n // ...\n} catch (error) {\n // Handle vector storage errors\n context.logger.error('Error searching vector storage', error);\n // Implement fallback behavior or return error response\n}\n```\n\n## Debugging Techniques\n\n### Logging\n\nUse the logger to help debug issues:\n\n```typescript\n// Set up detailed logging\ncontext.logger.debug('Request received', { \n trigger: request.trigger,\n payload: request.data.json\n});\n\ntry {\n // Operation that might fail\n const result = await someOperation();\n context.logger.debug('Operation result', result);\n} catch (error) {\n context.logger.error('Operation failed', { \n error: error.message,\n stack: error.stack\n });\n}\n```\n\n### Tracing\n\nUse OpenTelemetry tracing to debug complex issues:\n\n```typescript\ncontext.tracer.startActiveSpan('operation-name', async (span) => {\n // Add attributes to help with debugging\n span.setAttribute('input.size', inputData.length);\n span.setAttribute('operation.type', 'processing');\n \n // Add events to mark important points\n span.addEvent('processing-started', { timestamp: Date.now() });\n \n try {\n // Operation that might fail\n const result = await someOperation();\n \n // Add event for successful completion\n span.addEvent('processing-completed', { \n timestamp: Date.now(),\n resultSize: result.length\n });\n \n return result;\n } catch (error) {\n // Record the exception\n span.recordException(error);\n throw error;\n } finally {\n // Always end the span\n span.end();\n }\n});\n```\n" - }, - { - "file": "SDKs/javascript/examples/index.mdx", - "meta": { - "title": "Examples", - "description": "Practical examples of using the Agentuity JavaScript SDK" - }, - "content": "\nThis section provides practical examples of using the Agentuity JavaScript SDK for common use cases.\n\n## Basic Agent Implementation\n\nHere's a complete example of a basic agent that processes JSON requests and returns JSON responses:\n\n```typescript\nimport { AgentHandler } from '@agentuity/sdk';\n\n// Agent handler function\nconst handler: AgentHandler = async (request, response, context) => {\n try {\n // Get the request data\n const data = await request.data.json();\n const name = data.name || 'Guest';\n \n // Log the request\n context.logger.info(`Received greeting request for ${name}`);\n \n // Return a personalized greeting\n return response.json({\n message: `Hello, ${name}! Welcome to Agentuity.`,\n timestamp: new Date().toISOString()\n });\n } catch (error) {\n // Handle errors\n context.logger.error('Error processing request', error);\n return response.json({ \n error: 'Failed to process request',\n message: error instanceof Error ? error.message : 'Unknown error'\n });\n }\n};\n\nexport default handler;\n```\n\n## Key-Value Storage Usage\n\nThis example demonstrates how to use the key-value storage API to store and retrieve user preferences:\n\n```typescript\nimport { AgentHandler } from '@agentuity/sdk';\n\nconst handler: AgentHandler = async (request, response, context) => {\n const { action, userId, preferences } = await request.data.json();\n \n switch (action) {\n case 'get': {\n // Retrieve user preferences\n const data = await context.kv.get('user-preferences', userId);\n \n if (!data) {\n return response.json({ message: 'No preferences found' });\n }\n \n // Convert ArrayBuffer to string and parse as JSON\n const prefsString = new TextDecoder().decode(data);\n const userPrefs = JSON.parse(prefsString);\n \n return response.json({ preferences: userPrefs });\n }\n \n case 'set': {\n // Store user preferences\n await context.kv.set(\n 'user-preferences', \n userId, \n JSON.stringify(preferences),\n // Optional TTL (30 days in seconds)\n 60 * 60 * 24 * 30\n );\n \n return response.json({ message: 'Preferences saved successfully' });\n }\n \n case 'delete': {\n // Delete user preferences\n await context.kv.delete('user-preferences', userId);\n return response.json({ message: 'Preferences deleted successfully' });\n }\n \n default:\n return response.json({ error: 'Invalid action' });\n }\n};\n\nexport default handler;\n```\n\n## Vector Storage Usage\n\nThis example demonstrates how to use the vector storage API for semantic search:\n\n```typescript\nimport { AgentHandler } from '@agentuity/sdk';\n\nconst handler: AgentHandler = async (request, response, context) => {\n const { action, query, products } = await request.data.json();\n \n switch (action) {\n case 'index': {\n // Index products in vector storage\n if (!Array.isArray(products) || products.length === 0) {\n return response.json({ error: 'No products to index' });\n }\n \n // Prepare documents for vector storage\n const documents = products.map(product => ({\n document: product.description,\n metadata: {\n id: product.id,\n name: product.name,\n price: product.price,\n category: product.category\n }\n }));\n \n // Store in vector database\n const ids = await context.vector.upsert('products', ...documents);\n \n return response.json({ \n message: `Indexed ${ids.length} products successfully`,\n ids\n });\n }\n \n case 'search': {\n // Search for products\n if (!query) {\n return response.json({ error: 'Query is required' });\n }\n \n // Search vector storage\n const results = await context.vector.search('products', {\n query,\n limit: 5,\n similarity: 0.7\n });\n \n // Format results\n const formattedResults = results.map(result => ({\n ...result.metadata,\n similarity: 1 - result.distance // Convert distance to similarity score\n }));\n \n return response.json({ \n results: formattedResults,\n count: formattedResults.length\n });\n }\n \n case 'delete': {\n // Delete products from vector storage\n if (!Array.isArray(products) || products.length === 0) {\n return response.json({ error: 'No product IDs to delete' });\n }\n \n const count = await context.vector.delete('products', ...products);\n \n return response.json({ \n message: `Deleted ${count} products successfully` \n });\n }\n \n default:\n return response.json({ error: 'Invalid action' });\n }\n};\n\nexport default handler;\n```\n\n## Agent Communication Example\n\nThis example demonstrates how agents can communicate with each other:\n\n```typescript\nimport { AgentHandler } from '@agentuity/sdk';\n\nconst handler: AgentHandler = async (request, response, context) => {\n const { task, data } = await request.data.json();\n \n // Log the incoming request\n context.logger.info(`Received task: ${task}`);\n \n switch (task) {\n case 'process-data': {\n // Get a reference to the data processing agent\n const processingAgent = await context.getAgent({ \n name: 'data-processor'\n });\n \n // Invoke the data processing agent\n const processingResult = await processingAgent.run(\n { data },\n 'application/json'\n );\n \n // Get a reference to the notification agent\n const notificationAgent = await context.getAgent({\n name: 'notification-sender'\n });\n \n // Invoke the notification agent with the processing result\n await notificationAgent.run(\n { \n message: 'Data processing completed',\n result: processingResult\n },\n 'application/json'\n );\n \n return response.json({ \n message: 'Task orchestrated successfully',\n processingResult\n });\n }\n \n case 'handoff': {\n // Handoff to another agent\n return response.handoff(\n { name: 'data-processor' },\n { data },\n 'application/json',\n { source: 'orchestrator' }\n );\n }\n \n default:\n return response.json({ error: 'Unknown task' });\n }\n};\n\nexport default handler;\n```\n\n## Error Handling Example\n\nThis example demonstrates comprehensive error handling in an agent:\n\n```typescript\nimport { AgentHandler } from '@agentuity/sdk';\n\n// Custom error classes\nclass ValidationError extends Error {\n constructor(message: string) {\n super(message);\n this.name = 'ValidationError';\n }\n}\n\nclass ResourceNotFoundError extends Error {\n constructor(resourceId: string) {\n super(`Resource not found: ${resourceId}`);\n this.name = 'ResourceNotFoundError';\n }\n}\n\nconst handler: AgentHandler = async (request, response, context) => {\n try {\n // Get the request data\n const data = await request.data.json();\n \n // Validate the request\n if (!data.resourceId) {\n throw new ValidationError('resourceId is required');\n }\n \n // Log the request\n context.logger.info(`Processing resource: ${data.resourceId}`);\n \n // Simulate resource lookup\n const resource = await lookupResource(data.resourceId, context);\n \n // Process the resource\n const result = await processResource(resource, context);\n \n // Return the result\n return response.json({ \n message: 'Resource processed successfully',\n result\n });\n } catch (error) {\n // Handle different types of errors\n if (error instanceof ValidationError) {\n context.logger.warn(`Validation error: ${error.message}`);\n return response.json({ \n error: 'Validation error',\n message: error.message\n });\n }\n \n if (error instanceof ResourceNotFoundError) {\n context.logger.warn(`Resource not found: ${error.message}`);\n return response.json({ \n error: 'Resource not found',\n message: error.message\n });\n }\n \n // Handle unexpected errors\n context.logger.error('Unexpected error', error);\n return response.json({ \n error: 'Internal server error',\n message: 'An unexpected error occurred'\n });\n }\n};\n\n// Helper functions\nasync function lookupResource(resourceId: string, context: any) {\n // Simulate resource lookup\n const resource = await context.kv.get('resources', resourceId);\n \n if (!resource) {\n throw new ResourceNotFoundError(resourceId);\n }\n \n return JSON.parse(new TextDecoder().decode(resource));\n}\n\nasync function processResource(resource: any, context: any) {\n // Simulate resource processing\n context.logger.debug('Processing resource', resource);\n \n // Add processing logic here\n \n return {\n id: resource.id,\n status: 'processed',\n timestamp: new Date().toISOString()\n };\n}\n\nexport default handler;\n```\n\n## Telemetry Example\n\nThis example demonstrates how to use OpenTelemetry for tracing and metrics:\n\n```typescript\nimport { AgentHandler } from '@agentuity/sdk';\nimport { SpanStatusCode } from '@opentelemetry/api';\n\nconst handler: AgentHandler = async (request, response, context) => {\n return context.tracer.startActiveSpan('process-request', async (span) => {\n try {\n // Add attributes to the span\n span.setAttribute('trigger', request.trigger());\n \n // Get the request data\n const data = await request.data.json();\n span.setAttribute('data.type', typeof data);\n \n // Create a child span for data processing\n return await context.tracer.startActiveSpan('process-data', async (childSpan) => {\n try {\n // Add event to the span\n childSpan.addEvent('processing-started', {\n timestamp: Date.now()\n });\n \n // Simulate data processing\n const result = await processData(data, context);\n \n // Add event to the span\n childSpan.addEvent('processing-completed', {\n timestamp: Date.now(),\n resultSize: JSON.stringify(result).length\n });\n \n // Set span status\n childSpan.setStatus({ code: SpanStatusCode.OK });\n \n return response.json(result);\n } catch (error) {\n // Record exception in the span\n childSpan.recordException(error as Error);\n childSpan.setStatus({\n code: SpanStatusCode.ERROR,\n message: (error as Error).message\n });\n \n throw error;\n } finally {\n // End the child span\n childSpan.end();\n }\n });\n } catch (error) {\n // Record exception in the parent span\n span.recordException(error as Error);\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: (error as Error).message\n });\n \n // Log the error\n context.logger.error('Error processing request', error);\n \n // Return error response\n return response.json({\n error: 'Failed to process request',\n message: (error as Error).message\n });\n } finally {\n // End the parent span\n span.end();\n }\n });\n};\n\nasync function processData(data: any, context: any) {\n // Simulate data processing\n await new Promise(resolve => setTimeout(resolve, 100));\n \n return {\n processed: true,\n input: data,\n timestamp: new Date().toISOString()\n };\n}\n\nexport default handler;\n```\n\n## Welcome Function Example\n\nThis example demonstrates how to customize the initial appearance of DevMode when it starts interacting with your agents:\n\n```typescript\n// agent.ts\nimport type { AgentHandler, AgentWelcomeResult } from '@agentuity/sdk';\n\nexport const welcome = (): AgentWelcomeResult => {\n return {\n welcome: \"Welcome to my Agent! How can I help you today?\",\n prompts: [\n {\n data: \"What can you do?\",\n contentType: \"text/plain\",\n },\n {\n data: \"Tell me about yourself\",\n contentType: \"text/plain\",\n }\n ],\n };\n};\n\nconst handler: AgentHandler = async (request, response, context) => {\n // Agent logic\n return response.text('Hello, World!');\n};\n\nexport default handler;\n```\n\n### Real-World Example\n\nHere's a more comprehensive example from the React Miami 2025 Concierge template:\n\n```typescript\n// ConciergeHost/index.ts\nimport type { AgentWelcomeResult } from \"@agentuity/sdk\";\n\nexport const welcome = (): AgentWelcomeResult => {\n return {\n welcome: \"Welcome to the React Miami 2025 Concierge! How can I help you today?\",\n prompts: [\n {\n data: \"Where should I go for dinner in Miami, tonight?\",\n contentType: \"text/plain\",\n },\n {\n data: \"What sessions about React hooks are happening today?\",\n contentType: \"text/plain\",\n },\n {\n data: \"Tell me more about [Speaker Name]'s background\",\n contentType: \"text/plain\",\n },\n {\n data: \"I'm hungry and looking for Cuban food near the conference\",\n contentType: \"text/plain\",\n },\n {\n data: \"What is Agentuity all about?\",\n contentType: \"text/plain\",\n },\n {\n data: \"What can I do?\",\n contentType: \"text/plain\",\n },\n ],\n };\n};\n```\n\nNote that in this example, some prompts use plain text directly while others use base64 encoding. Both approaches work, but using base64 encoding is recommended for consistency.\n\n## OpenAI Streaming Example\n\nThis example demonstrates how to stream responses from OpenAI models in your Agentuity agent. Streaming allows for a more responsive user experience by displaying the AI's response as it's being generated, rather than waiting for the entire response to complete.\n\n```javascript\nimport type { AgentRequest, AgentResponse, AgentContext } from \"@agentuity/sdk\";\nimport { streamText } from \"ai\";\nimport { openai } from \"@ai-sdk/openai\";\n\nexport default async function Agent(\n req: AgentRequest,\n resp: AgentResponse,\n ctx: AgentContext,\n) {\n const { textStream } = streamText({\n model: openai(\"gpt-4o\"),\n prompt: \"Invent a new holiday and describe its traditions.\",\n });\n\n return resp.stream(textStream);\n}\n```\n\n### How It Works\n\n1. We import the necessary types from `@agentuity/sdk` and utilities from the Vercel AI SDK (`ai` and `@ai-sdk/openai`).\n2. The `streamText` function from the Vercel AI SDK creates a streaming text response from OpenAI.\n3. We configure the stream with the `gpt-4o` model and a prompt.\n4. The `textStream` object contains the streaming response from OpenAI.\n5. We return the stream using `resp.stream()`, which handles the streaming response in the Agentuity platform.\n\n### Dependencies\n\nTo use this example, you'll need to install the following dependencies:\n\n```bash\nnpm install ai @ai-sdk/openai\n```\n\n## Agent-to-Agent Streaming Example\n\nThis example demonstrates how to call another agent and stream its response back to the client. This is useful for creating agent workflows where one agent processes a request and streams the response through another agent.\n\n```typescript\nimport type { AgentRequest, AgentResponse, AgentContext } from \"@agentuity/sdk\";\n\nexport default async function Agent(\n\treq: AgentRequest,\n\tresp: AgentResponse,\n\tctx: AgentContext,\n) {\n\t// Setup to talk to another agent\n\tconst agent = await ctx.getAgent({\n\t\tname: 'HistoryExpert',\n\t});\n\n\t// Invoke the agent\n\tconst agentResponse = await agent.run({\n\t\tdata: 'What engine did a P-51D Mustang use?',\n\t});\n\n\t// Get the stream from the agent\n\tconst stream = await agentResponse.data.stream();\n\n\t// Return the stream to the client\n\treturn resp.stream(stream);\n}\n```\n\n### How It Works\n\n1. We use `ctx.getAgent()` to get a reference to another agent named 'HistoryExpert'.\n2. We invoke the agent with `agent.run()`, passing the data we want to process.\n3. We retrieve the stream from the agent's response using `agentResponse.data.stream()`.\n4. Finally, we return the stream to the client using `resp.stream()`, which passes the streaming response through our agent.\n\nThis pattern allows you to:\n- Chain multiple agents together in a workflow\n- Maintain a streaming experience end-to-end\n- Process or transform streaming data between agents\n\n### Learn More About Streaming\n\nFor more information about agent streaming, check out these resources:\n\n- [Agents just want to have streams](https://agentuity.com/blog/agent-streaming) - Blog post explaining the importance and implementation of streaming in agents\n- [Streams for agents!](https://youtu.be/HN_ElBfsWtE) - YouTube video demonstration of agent streaming capabilities\n" - }, - { - "file": "SDKs/javascript/examples/langchain.mdx", - "meta": { - "title": "Langchain/LangGraph", - "description": "Examples of using the Agentuity JavaScript SDK with Langchain (LangGraph)" - }, - "content": "\n## Simple LangGraph Agent with structured output\n\nBelow is an example of how you can take a LangGraph example, empower it with Agentuity's SDK, \nand deploy it to Agentuity, all in one go.\n\n
\n \n
\n\n```typescript\n// Example borrowed from https://langchain-ai.github.io/langgraphjs/how-tos/react-return-structured-output/\n\nimport type { AgentRequest, AgentResponse, AgentContext } from \"@agentuity/sdk\";\nimport { ChatOpenAI } from \"@langchain/openai\";\nimport { createReactAgent } from \"@langchain/langgraph/prebuilt\";\nimport { tool } from \"@langchain/core/tools\";\nimport { z } from \"zod\";\n\n// Tools for the agent\nconst weatherTool = tool(\n\tasync (input): Promise => {\n\t\tif (input.city === \"nyc\") {\n\t\t\treturn \"It might be cloudy in nyc\";\n\t\t} else if (input.city === \"sf\") {\n\t\t\treturn \"It's always sunny in sf\";\n\t\t} else {\n\t\t\tthrow new Error(\"Unknown city\");\n\t\t}\n\t},\n\t{\n\t\tname: \"get_weather\",\n\t\tdescription: \"Use this to get weather information.\",\n\t\tschema: z.object({\n\t\t\tcity: z.enum([\"nyc\", \"sf\"]).describe(\"The city to get weather for\"),\n\t\t}),\n\t}\n);\n\nconst langGraphAgent = createReactAgent({\n\tllm: new ChatOpenAI({ model: \"gpt-4o\", temperature: 0 }),\n\ttools: [weatherTool],\n\tresponseFormat: z.object({\n\t\tconditions: z.string().describe(\"Weather conditions\"),\n\t}),\n});\n\nexport default async function AgentHandler(\n\treq: AgentRequest,\n\tresp: AgentResponse,\n\tctx: AgentContext,\n) {\n\tconst response = await langGraphAgent.invoke({\n\t\tmessages: [\n\t\t\t{\n\t\t\t\trole: \"user\",\n\t\t\t\tcontent: (await req.data.text()) ?? \"What's the weather in NYC?\",\n\t\t\t},\n\t\t],\n\t})\n\n\treturn resp.json(response.structuredResponse);\n}\t\n```\n" - }, - { - "file": "SDKs/javascript/frameworks.mdx", - "meta": { - "title": "Frameworks", - "description": "Framework integration for the Agentuity JavaScript SDK" - }, - "content": "\nThe Agentuity JavaScript SDK provides a flexible and powerful way to integrate other frameworks with your Agent.\n\nThe following frameworks are currently supported:\n\n- [Vercel AI SDK](https://www.vercel.com/ai)\n\n## Using Frameworks with Agentuity\n\nThe use a framework with Agentuity, choose the framework template when creating a new project.\n\n```bash\nagentuity new\n```\n\nWhen you select one of the framework templates, the Agentuity CLI will install the necessary dependencies and create a new project with the framework already configured.\n\n## Vercel AI SDK\n\nExample Agent using Vercel AI SDK:\n\n```typescript\nimport type { AgentRequest, AgentResponse, AgentContext } from \"@agentuity/sdk\";\nimport { generateText } from \"ai\";\nimport { openai } from \"@ai-sdk/openai\";\n\nexport default async function Agent(\n\treq: AgentRequest,\n\tresp: AgentResponse,\n\tctx: AgentContext,\n) {\n\tconst res = await generateText({\n\t\tmodel: openai(\"gpt-4o\"),\n\t\tsystem: \"You are a friendly assistant!\",\n\t\tprompt: req.text() ?? \"Why is the sky blue?\",\n\t});\n\treturn resp.text(res.text);\n}\n```\n" - }, - { - "file": "SDKs/javascript/index.mdx", - "meta": { - "title": "JavaScript SDK", - "description": "Documentation for the Agentuity JavaScript SDK" - }, - "content": "\nThe [Agentuity JavaScript SDK](https://github.com/agentuity/sdk-js) provides a powerful framework for building AI agents in JavaScript and TypeScript. It offers a comprehensive set of tools for creating, deploying, and managing agents with features like key-value storage, vector storage, and OpenTelemetry integration.\n\n## Installation\n\nWhen you create a project with Agentuity, you will automatically have access to the Agentuity JavaScript SDK.\n\n```bash\nagentuity new\n```\n\nThe SDK currently works with Bun and Node.js and the project will automatically install the correct dependencies.\n\n## Prerequisites\n\nBefore using the Agentuity JavaScript SDK, ensure you have the following prerequisites installed:\n\n- **Node.js**: Version 22 or higher is required\n- **Bun** (optional): Version 1.2.4 or higher is required\n\n### Installing Node.js\n\nYou can download and install Node.js from the [official website](https://nodejs.org/). Make sure to install version 22 or higher.\n\n### Installing Bun\n\nBun is an optional but recommended runtime for the Agentuity SDK. You can install it using the following command:\n\n```bash\ncurl -fsSL https://bun.sh/install | bash\n```\n\nFor more information, visit the [Bun installation documentation](https://bun.sh/docs/installation).\n\n## Development\n\nYou can start your project by running the following command:\n\n```bash\nagentuity dev\n```\n\nThis will start your project in development mode and open a new browser window connecting your Agent to the Agentuity Console in Live Mode.\n\nYou can also start your project in development mode without connecting to the Agentuity Console by running the following command:\n\n```bash\nnpm start\n```\n\nOr for Bun:\n\n```bash\nbun start\n```\n\nIf you would like to manually test your Agents locally, you can do so by running the following command:\n\n```bash\ncurl -v http://localhost:3500/run/agent_ID --json '{\"input\": \"Hello, world!\"}'\n```\n\nMake sure you replace `agent_ID` with the ID of your Agent.\n\n\n## Next Steps\n\n- [Core Concepts](/SDKs/javascript/core-concepts) - Learn about the fundamental concepts of the Agentuity JavaScript SDK\n- [LLM](/SDKs/javascript/llm) - Learn about the LLM integrations available in the Agentuity JavaScript SDK\n- [Frameworks](/SDKs/javascript/frameworks) - Learn about using frameworks with the Agentuity JavaScript SDK\n- [API Reference](/SDKs/javascript/api-reference) - Explore the detailed API documentation\n- [Error Handling](/SDKs/javascript/error-handling) - Learn about the error handling in the Agentuity JavaScript SDK\n- [Examples](/SDKs/javascript/examples) - See practical examples of using the SDK\n" - }, - { - "file": "SDKs/javascript/llm.mdx", - "meta": { - "title": "LLM", - "description": "LLM integration for the Agentuity JavaScript SDK" - }, - "content": "\nThe Agentuity JavaScript SDK provides a flexible and powerful way to integrate with LLMs.\n\n## AI Gateway\n\nThe Agentuity Cloud includes an AI Gateway to make it easy to integrate LLMs with your Agent with zero configuration. The following LLM integrations are supported:\n\n- [OpenAI](https://openai.com/)\n- [Anthropic](https://www.anthropic.com/)\n- [Cohere](https://cohere.com/)\n- [DeepSeek](https://www.deepseek.com/)\n- [Google AI Studio](https://ai.google.dev/)\n- [Grok](https://grok.x.ai/)\n- [Groq](https://groq.com/)\n- [Mistral](https://mistral.ai/)\n- [Perplexity AI](https://www.perplexity.ai/)\n\n## SDK Integrations\n\nTo use the zero config LLM integrations, you can use the following SDK integrations:\n\n- [OpenAI JavaScript SDK](https://github.com/openai/openai-node)\n- [Anthropic JavaScript SDK](https://github.com/anthropics/anthropic-sdk-node)\n- [Vercel AI SDK](https://github.com/vercel/ai)\n\nWhen any of the above SDKs are installed, the Agentuity Project will automatically detect it and route your requests to the AI Gateway. However, we will only route requests if you do not provide your own LLM API Key. By providing your own LLM API Key, the AI Gateway detection will be disabled and you will need to manually configure the LLM integration in the Agentuity Console.\n\n" - }, - { - "file": "SDKs/javascript/troubleshooting.mdx", - "meta": { - "title": "Troubleshooting", - "description": "Common issues and solutions when working with the Agentuity JavaScript SDK" - }, - "content": "\nThis section covers common issues you might encounter when working with the Agentuity JavaScript SDK and provides solutions to help you resolve them.\n\n### Node.js Version Issues\n\n**Issue**: Errors related to unsupported JavaScript features or syntax.\n\n**Solution**:\n1. Verify your Node.js version meets the minimum requirement (v22+):\n ```bash\n node --version\n ```\n2. If you're using an older version, upgrade Node.js:\n ```bash\n # Using nvm (recommended)\n nvm install 22\n nvm use 22\n \n # Or download from nodejs.org\n ```\n3. If you can't upgrade Node.js, consider using a transpiler like Babel to support newer syntax in older environments.\n\n\n## Getting Additional Help\n\nIf you're still experiencing issues after trying the troubleshooting steps above:\n\n1. Check the [Agentuity documentation](https://agentuity.dev) for updates and additional information.\n2. Join the [Agentuity Discord](https://discord.com/invite/vtn3hgUfuc) to ask questions and get help from other developers.\n4. File an issue on the [GitHub repository](https://github.com/agentuity/sdk-js/issues) if you believe you've found a bug.\n" - }, - { - "file": "SDKs/python/api-reference.mdx", - "meta": { - "title": "API Reference", - "description": "Complete reference documentation for the Agentuity Python SDK, including request handling, response types, data storage, and agent communication." - }, - "content": "\nThis section provides detailed documentation for the Agentuity Python SDK API, including method signatures, parameters, return values, and example usage.\n\n## Table of Contents\n\n- [Agent Lifecycle](#agent-lifecycle)\n- [Storage APIs](#storage-apis)\n - [Key-Value Storage](#key-value-storage)\n - [Vector Storage](#vector-storage)\n- [Agent Communication](#agent-communication)\n- [Response Types](#response-types)\n - [JSON Responses](#json-responses)\n - [Text Responses](#text-responses)\n - [Binary Responses](#binary-responses)\n - [Media Type Responses](#media-type-responses)\n - [HTML Responses](#html-responses)\n - [Empty Responses](#empty-responses)\n- [Request Handling](#request-handling)\n- [Logging](#logging)\n- [Telemetry](#telemetry)\n\n> **Note:** This documentation applies to Agentuity Python SDK version 1.0 and above.\n\n## Welcome Function\n\nThe Agentuity SDK allows you to customize the initial appearance of DevMode when it starts interacting with your agents by defining a `welcome()` function in your agent module. This function should return a dictionary containing a welcome message and optional example prompts.\n\n### welcome()\n\nDefines a welcome message and optional example prompts for DevMode.\n\n#### Return Value\n\nReturns a dictionary with a welcome message and optional prompts.\n\n```python\ndef welcome():\n return {\n \"welcome\": \"Welcome message to display\",\n \"prompts\": [\n {\n \"data\": \"Example prompt text\",\n \"contentType\": \"text/plain\"\n }\n ]\n }\n```\n\n#### Example\n\n```python\ndef welcome():\n return {\n \"welcome\": \"Welcome to my Python Agent! How can I help you today?\",\n \"prompts\": [\n {\n \"data\": \"What can you do?\",\n \"contentType\": \"text/plain\"\n }\n ]\n }\n```\n\n## Agent Lifecycle\n\nThe Agentuity SDK provides a structured way to define and handle agents. An agent consists of a handler function, with its configuration managed by the Agentuity CLI.\n\n\n### Agent Handler\n\nThe agent handler is a function that processes requests and returns responses:\n\n```python\nfrom agentuity import AgentRequest, AgentResponse, AgentContext\n\nasync def agent_handler(\n request: AgentRequest,\n response: AgentResponse,\n context: AgentContext\n) -> AgentResponseType:\n \"\"\"\n Handler function for an agent.\n \n Args:\n request: An AgentRequest object containing the request data\n response: An AgentResponse object for creating responses\n context: An AgentContext object providing access to various capabilities\n \n Returns:\n An AgentResponseType object representing the response\n \"\"\"\n return response.json({\"message\": \"Hello, world!\"})\n```\n\n#### Parameters\n\n- `request`: An `AgentRequest` object containing the request data\n- `response`: An `AgentResponse` object for creating responses\n- `context`: An `AgentContext` object providing access to various capabilities\n\n#### Return Value\n\nThe handler function should return an `AgentResponseType` object.\n\n#### Example\n\n```python\nfrom agentuity import AgentRequest, AgentResponse, AgentContext\n\n# Agent handler function\nasync def handler(request: AgentRequest, response: AgentResponse, context: AgentContext):\n try:\n # Get the request data\n data = request.data.json\n name = data.get(\"name\")\n \n # Log the request\n context.logger.info(f\"Received greeting request for {name}\")\n \n # Return a personalized greeting\n return response.json({\n \"message\": f\"Hello, {name}! Welcome to Agentuity.\"\n })\n except Exception as error:\n # Handle errors\n context.logger.error(\"Error processing request\", error)\n return response.json({\"error\": \"Failed to process request\"})\n```\n\n## Storage APIs\n\nThe Agentuity SDK provides two storage APIs: Key-Value Storage and Vector Storage.\n\n\n### Key-Value Storage\n\nThe Key-Value Storage API provides a simple way to store and retrieve data. It is accessed through the `context.kv` object.\n\n#### `async get(name: str, key: str) -> \"DataResult\"`\n\nRetrieves a value from the key-value storage.\n\n##### Parameters\n\n- `name`: The name of the key-value storage\n- `key`: The key to retrieve the value for\n\n##### Return Value\n\nReturns a DataResult object that has an `exists` property to check if the value exists and a `data` property with accessors like `data.json` and `data.text`.\n\n##### Example\n\n```python\nfrom agentuity.sdk import AgentContext\n\n# Retrieve a value from key-value storage with error handling\ntry:\n value = await context.kv.get(\"user-preferences\", \"user-123\")\n if value.exists:\n # Access data using the appropriate accessor\n user_prefs = value.data.json\n context.logger.info(f\"User preferences: {user_prefs}\")\n \n # Or access as text if needed\n # text_data = value.data.text\n # context.logger.info(f\"User preferences (text): {text_data}\")\n else:\n context.logger.info(\"User preferences not found, using defaults\")\n user_prefs = {\"theme\": \"light\"}\nexcept Exception as e:\n context.logger.error(f\"Failed to retrieve user preferences: {str(e)}\")\n # Use default value or re-raise exception\n user_prefs = {\"theme\": \"light\"}\n```\n\n#### `async set(name: str, key: str, value: Union[str, int, float, bool, list, dict, bytes, \"Data\"], params: Optional[dict] = None) -> None`\n\nStores a value in the key-value storage.\n\n##### Parameters\n\n- `name`: The name of the key-value storage\n- `key`: The key to store the value under\n- `value`: The value to store (Union[str, int, float, bool, list, dict, bytes, \"Data\"])\n- `params` (optional): Can have `ttl` (time-to-live in seconds)\n\n##### Return Value\n\nNone\n\n##### Example\n\n```python\nimport json\n\n# Store a string value\nawait context.kv.set(\"user-preferences\", \"user-123\", json.dumps({\"theme\": \"dark\"}))\n\n# Store a dictionary value (automatically serialized to JSON)\nawait context.kv.set(\"user-preferences\", \"user-123\", {\"theme\": \"dark\"})\n\n# Store binary data\nbinary_data = bytes([1, 2, 3, 4])\nawait context.kv.set(\"user-data\", \"user-123\", binary_data)\n\n# Store a value with TTL (expires after 1 hour)\nawait context.kv.set(\"session\", \"user-123\", \"active\", {\"ttl\":3600})\n```\n\n#### `async delete(name: str, key: str) -> None`\n\nDeletes a value from the key-value storage.\n\n##### Parameters\n\n- `name`: The name of the key-value storage\n- `key`: The key to delete\n\n##### Return Value\n\nNone\n\n##### Example\n\n```python\n# Delete a value\nawait context.kv.delete(\"user-preferences\", \"user-123\")\n```\n\n### Vector Storage\n\nThe Vector Storage API provides a way to store and search for data using vector embeddings. It is accessed through the `context.vector` object.\n\n#### `async upsert(name: str, *documents: VectorUpsertParams) -> list[str]`\n\nInserts or updates vectors in the vector storage.\n\n##### Parameters\n\n- `name`: The name of the vector storage\n- `documents`: One or more documents to upsert, each with either embeddings or text\n\n##### Return Value\n\nReturns a list of string IDs for the upserted vectors.\n\n##### Example\n\n```python\nfrom agentuity.sdk import AgentContext\nfrom typing import List, Dict, Any\n\nasync def index_products(context: AgentContext, products: List[Dict[str, Any]]) -> List[str]:\n \"\"\"\n Index product descriptions in vector storage for semantic search.\n \n Args:\n context: The agent context\n products: List of product dictionaries with name, description, and category\n \n Returns:\n List of vector IDs for the indexed products\n \"\"\"\n # Prepare documents for vector storage\n documents = []\n for product in products:\n documents.append({\n \"document\": product[\"description\"],\n \"metadata\": {\n \"product_id\": product[\"id\"],\n \"name\": product[\"name\"],\n \"category\": product[\"category\"],\n \"price\": product[\"price\"]\n }\n })\n \n # Upsert documents to vector storage\n try:\n ids = await context.vector.upsert(\"product-descriptions\", *documents)\n context.logger.info(f\"Indexed {len(ids)} products in vector storage\")\n return ids\n except Exception as e:\n context.logger.error(f\"Failed to index products: {str(e)}\")\n raise\n\n# Simple example\n# Upsert documents with text\nids = await context.vector.upsert(\n \"product-descriptions\",\n {\"document\": \"Ergonomic office chair with lumbar support\", \"metadata\": {\"category\": \"furniture\"}},\n {\"document\": \"Wireless noise-cancelling headphones\", \"metadata\": {\"category\": \"electronics\"}}\n)\n\n# Upsert documents with embeddings\nids2 = await context.vector.upsert(\n \"product-embeddings\",\n {\"embeddings\": [0.1, 0.2, 0.3, 0.4], \"metadata\": {\"productId\": \"123\"}},\n {\"embeddings\": [0.5, 0.6, 0.7, 0.8], \"metadata\": {\"productId\": \"456\"}}\n)\n```\n\n#### `async search(name: str, params: VectorSearchParams) -> list[VectorSearchResult]`\n\nSearches for vectors in the vector storage.\n\n##### Parameters\n\n- `name`: The name of the vector storage\n- `params`: Search parameters including query, limit, similarity threshold, and metadata filters\n\n##### Return Value\n\nReturns a list of search results, each containing an ID, metadata, and distance score.\n\n##### Example\n\n```python\nfrom agentuity.sdk import AgentContext\nfrom typing import List, Dict, Any\n\n# Search for similar products with error handling\ntry:\n results = await context.vector.search(\"product-descriptions\", {\n \"query\": \"comfortable office chair\",\n \"limit\": 5,\n \"similarity\": 0.7,\n \"metadata\": {\"category\": \"furniture\"}\n })\n \n # Process search results\n if results:\n context.logger.info(f\"Found {len(results)} matching products\")\n for result in results:\n print(f\"Product ID: {result.id}, Similarity: {result.distance}\")\n print(f\"Metadata: {result.metadata}\")\n else:\n context.logger.info(\"No matching products found\")\nexcept Exception as e:\n context.logger.error(f\"Vector search failed: {str(e)}\")\n # Handle the error appropriately\n```\n\n#### `async delete(name: str, *ids: str) -> int`\n\nDeletes vectors from the vector storage.\n\n##### Parameters\n\n- `name`: The name of the vector storage\n- `ids`: One or more IDs of vectors to delete\n\n##### Return Value\n\nReturns the number of vectors that were deleted.\n\n##### Example\n\n```python\nfrom agentuity.sdk import AgentContext\n\n# Delete vectors with error handling\ntry:\n deleted_count = await context.vector.delete(\"product-descriptions\", \"id1\", \"id2\", \"id3\")\n context.logger.info(f\"Deleted {deleted_count} vectors\")\nexcept Exception as e:\n context.logger.error(f\"Failed to delete vectors: {str(e)}\")\n # Handle the error appropriately\n```\n\n## Agent Communication\n\nThe Agentuity SDK allows agents to communicate with each other through the `context.get_agent()` method and agent redirection.\n\n### `async get_agent(params: GetAgentRequestParams) -> RemoteAgent`\n\nRetrieves a handle to a remote agent that can be invoked.\n\n#### Parameters\n\n- `params`: Parameters to identify the agent, either by ID or by name and project ID\n\n#### Return Value\n\nReturns a `RemoteAgent` object that can be used to invoke the agent.\n\n#### Example\n\n```python\nfrom agentuity.sdk import AgentContext, RemoteAgent\n\n# Get an agent by ID\nagent = await context.get_agent({\"id\": \"agent-123\"})\n\n# Get an agent by name\nagent2 = await context.get_agent({\n \"name\": \"data-processing-agent\",\n \"project_id\": \"project-456\"\n})\n\n# Invoke the agent with error handling\ntry:\n result = await agent.run({\"data\": \"process this\"}, \"application/json\")\n # Process the result\n print(f\"Agent response: {result}\")\nexcept Exception as e:\n context.logger.error(f\"Failed to invoke agent: {str(e)}\")\n # Handle the error appropriately\n```\n\n### Agent Handoff\n\nThe `response.handoff()` method allows an agent to handoff the request to another agent.\n\n#### `handoff(agent: GetAgentRequestParams, payload: dict | bytes | str = None, content_type: str = None, metadata: dict = None) -> AgentRedirectResponse`\n\nRedirects the current request to another agent.\n\n\n Handoff is currently only supported for handoff to other agents in the same project. However, we are working on remote agent handoff and should have that working soon.\n\n\n##### Parameters\n\n- `agent`: Parameters to identify the target agent\n- `payload` (optional): The payload to send to the target agent\n- `content_type` (optional): The content type of the payload\n- `metadata` (optional): Additional metadata to include with the request\n\n##### Return Value\n\nReturns an `AgentRedirectResponse` object.\n\n##### Example\n\n```python\n# Handoff to another agent\nreturn response.handoff(\n {\"name\": \"data-processing-agent\"},\n {\"data\": \"process this\"},\n \"application/json\",\n {\"source\": \"web-agent\"}\n)\n```\n\n## Response Types\n\nThe Agentuity SDK provides various methods for creating different types of responses through the `response` object.\n\n### JSON Responses\n\n#### `json(data: dict, metadata: dict = None) -> AgentResponseType`\n\nCreates a JSON response.\n\n##### Parameters\n\n- `data`: The JSON data to include in the response\n- `metadata` (optional): Additional metadata to include with the response\n\n##### Return Value\n\nReturns an `AgentResponseType` object with the JSON data.\n\n##### Example\n\n```python\nreturn response.json({\n \"message\": \"Success\",\n \"data\": {\"id\": 123, \"name\": \"Example\"}\n})\n```\n\n### Text Responses\n\n#### `text(data: str, metadata: dict = None) -> AgentResponseType`\n\nCreates a text response.\n\n##### Parameters\n\n- `data`: The text to include in the response\n- `metadata` (optional): Additional metadata to include with the response\n\n##### Return Value\n\nReturns an `AgentResponseType` object with the text data.\n\n##### Example\n\n```python\nreturn response.text(\"Hello, world!\")\n```\n\n### Binary Responses\n\n#### `binary(data: bytes, metadata: dict = None) -> AgentResponseType`\n\nCreates a binary response.\n\n##### Parameters\n\n- `data`: The binary data to include in the response\n- `metadata` (optional): Additional metadata to include with the response\n\n##### Return Value\n\nReturns an `AgentResponseType` object with the binary data.\n\n##### Example\n\n```python\nbinary_data = bytes([1, 2, 3, 4])\nreturn response.binary(binary_data, {\"filename\": \"data.bin\"})\n```\n\n### Media Type Responses\n\nThe SDK provides specialized methods for various media types:\n\n- `pdf(data: bytes, metadata: dict = None) -> AgentResponseType`\n- `png(data: bytes, metadata: dict = None) -> AgentResponseType`\n- `jpeg(data: bytes, metadata: dict = None) -> AgentResponseType`\n- `gif(data: bytes, metadata: dict = None) -> AgentResponseType`\n- `webp(data: bytes, metadata: dict = None) -> AgentResponseType`\n- `mp3(data: bytes, metadata: dict = None) -> AgentResponseType`\n- `mp4(data: bytes, metadata: dict = None) -> AgentResponseType`\n- `wav(data: bytes, metadata: dict = None) -> AgentResponseType`\n- `ogg(data: bytes, metadata: dict = None) -> AgentResponseType`\n- `data(data: Any, content_type: str, metadata: dict = None) -> AgentResponseType`\n- `markdown(content: str, metadata: dict = None) -> AgentResponseType`\n\nEach method works similarly to the `binary()` method but sets the appropriate content type. The `data` method allows setting specific data with an exact content type, while the `markdown` method provides a convenient way to return markdown content.\n\n#### Example\n\n```python\n# Return a PNG image\nreturn response.png(image_data, {\"filename\": \"chart.png\"})\n\n# Return an MP3 audio file\nreturn response.mp3(audio_data, {\"duration\": 120})\n```\n\n### HTML Responses\n\n#### `html(data: str, metadata: dict = None) -> AgentResponseType`\n\nCreates an HTML response.\n\n##### Parameters\n\n- `data`: The HTML content to include in the response\n- `metadata` (optional): Additional metadata to include with the response\n\n##### Return Value\n\nReturns an `AgentResponseType` object with the HTML content.\n\n##### Example\n\n```python\nreturn response.html(\"

Hello, world!

This is an HTML response.

\")\n```\n\n### Empty Responses\n\n#### `empty(metadata: dict = None) -> AgentResponseType`\n\nCreates an empty response.\n\n##### Parameters\n\n- `metadata` (optional): Additional metadata to include with the response\n\n##### Return Value\n\nReturns an `AgentResponseType` object with no payload.\n\n##### Example\n\n```python\nreturn response.empty({\"status\": 204})\n```\n\n## Request Handling\n\nThe Agentuity SDK provides various methods for accessing request data through the `request` object.\n\n### Accessing Request Data\n\n#### `trigger() -> str`\n\nGets the trigger type of the request.\n\n##### Return Value\n\nReturns a string representing the trigger type (webhook, cron, manual, agent, etc.).\n\n##### Example\n\n```python\ntrigger_type = request.trigger()\nprint(f\"Request triggered by: {trigger_type}\")\n```\n\n#### `metadata(key: str, default_value = None) -> Any`\n\nGets metadata associated with the request.\n\n##### Parameters\n\n- `key`: The metadata key to retrieve\n- `default_value` (optional): A default value to return if the key does not exist\n\n##### Return Value\n\nReturns the metadata value for the specified key, or the default value if the key does not exist.\n\n##### Example\n\n```python\nuser_id = request.metadata(\"userId\", \"anonymous\")\nprint(f\"User ID: {user_id}\")\n```\n\n#### `json() -> dict`\n\nGets the payload of the request as a JSON object.\n\n##### Return Value\n\nReturns the request payload as a dictionary.\n\n##### Example\n\n```python\ndata = request.data.json\nprint(f\"Request data: {data}\")\n```\n\n#### `text() -> str`\n\nGets the payload of the request as a string.\n\n##### Return Value\n\nReturns the request payload as a string.\n\n##### Example\n\n```python\ntext = request.data.text\nprint(f\"Request text: {text}\")\n```\n\n#### `binary() -> bytes`\n\nGets the payload of the request as bytes.\n\n##### Return Value\n\nReturns the request payload as bytes.\n\n##### Example\n\n```python\nbinary_data = request.binary()\nprint(f\"Binary data size: {len(binary_data)} bytes\")\n```\n\n### Media-Specific Methods\n\nThe SDK provides specialized methods for various media types:\n\n- `pdf() -> bytes`\n- `png() -> bytes`\n- `jpeg() -> bytes`\n- `gif() -> bytes`\n- `webp() -> bytes`\n- `mp3() -> bytes`\n- `wav() -> bytes`\n- `ogg() -> bytes`\n\nEach method returns the request payload as bytes with the appropriate content type validation.\n\n#### Example\n\n```python\n# Get an image from the request\nimage = request.png()\n# Process the image...\n\n# Get audio from the request\naudio = request.mp3()\n# Process the audio...\n```\n\n## Logging\n\nThe Agentuity SDK provides logging functionality through the `context.logger` object.\n\n### Logger Interface\n\nThe `Logger` class defines the following methods:\n\n```python\nclass Logger:\n \"\"\"\n Logger for agent execution.\n \"\"\"\n def debug(self, message: str, *args, **kwargs) -> None:\n \"\"\"Log a debug message.\"\"\"\n pass\n \n def info(self, message: str, *args, **kwargs) -> None:\n \"\"\"Log an informational message.\"\"\"\n pass\n \n def warn(self, message: str, *args, **kwargs) -> None:\n \"\"\"Log a warning message.\"\"\"\n pass\n \n def error(self, message: str, *args, **kwargs) -> None:\n \"\"\"Log an error message.\"\"\"\n pass\n \n def child(self, **kwargs) -> 'Logger':\n \"\"\"Create a child logger with additional context.\"\"\"\n pass\n```\n\n### Logging Methods\n\n#### `debug(message: str, *args, **kwargs) -> None`\n\nLogs a debug message.\n\n##### Parameters\n\n- `message`: The message to log\n- `args`, `kwargs`: Additional arguments to include in the log\n\n##### Example\n\n```python\ncontext.logger.debug(\"Processing request\", request_id=\"123\")\n```\n\n#### `info(message: str, *args, **kwargs) -> None`\n\nLogs an informational message.\n\n##### Parameters\n\n- `message`: The message to log\n- `args`, `kwargs`: Additional arguments to include in the log\n\n##### Example\n\n```python\ncontext.logger.info(\"Request processed successfully\", request_id=\"123\")\n```\n\n#### `warn(message: str, *args, **kwargs) -> None`\n\nLogs a warning message.\n\n##### Parameters\n\n- `message`: The message to log\n- `args`, `kwargs`: Additional arguments to include in the log\n\n##### Example\n\n```python\ncontext.logger.warn(\"Resource not found\", resource_id=\"456\")\n```\n\n#### `error(message: str, *args, **kwargs) -> None`\n\nLogs an error message.\n\n##### Parameters\n\n- `message`: The message to log\n- `args`, `kwargs`: Additional arguments to include in the log\n\n##### Example\n\n```python\ntry:\n # Some code that might raise an exception\n result = process_data()\nexcept Exception as e:\n context.logger.error(\"Failed to process request\", error=str(e))\n```\n\n### Creating Child Loggers\n\n#### `child(**kwargs) -> Logger`\n\nCreates a child logger with additional context.\n\n##### Parameters\n\n- `kwargs`: Additional context to include in all logs from the child logger\n\n##### Return Value\n\nReturns a new `Logger` instance with the additional context.\n\n##### Example\n\n```python\nrequest_logger = context.logger.child(request_id=\"123\", user_id=\"456\")\nrequest_logger.info(\"Processing request\") # Includes request_id and user_id\n```\n\n## Telemetry\n\nThe Agentuity SDK integrates with OpenTelemetry for tracing and metrics.\n\n### Tracing\n\nThe SDK provides access to OpenTelemetry tracing through the `context.tracer` object.\n\n#### Example\n\n```python\nfrom agentuity.sdk import AgentContext\nfrom opentelemetry.trace.status import Status, StatusCode\n\n# Create a span\nasync with context.tracer.start_as_current_span(\"process-data\") as span:\n try:\n # Add attributes to the span\n span.set_attribute(\"userId\", \"123\")\n \n # Perform some work\n result = await process_data()\n \n # Add events to the span\n span.add_event(\"data-processed\", {\"itemCount\": len(result)})\n \n return result\n except Exception as error:\n # Record the error\n span.record_exception(error)\n span.set_status(Status(StatusCode.ERROR))\n context.logger.error(f\"Error processing data: {str(error)}\")\n raise error\n```\n" - }, - { - "file": "SDKs/python/core-concepts.mdx", - "meta": { - "title": "Core Concepts", - "description": "Learn about the fundamental concepts of the Agentuity Python SDK" - }, - "content": "\nThe Agentuity Python SDK is built around several key concepts that form the foundation of agent development. Understanding these concepts is essential for effectively using the SDK.\n\n## Agent Architecture\n\nAgents in the Agentuity SDK are modular components that can process requests and generate responses. Each agent:\n\n- Has a unique identifier and name\n- Can be triggered by various events (webhooks, cron jobs, manual invocation, etc.)\n- Processes requests through a handler function\n- Has access to a context object with various capabilities\n\nThe basic structure of an agent looks like this:\n\n```python\nfrom agentuity import AgentRequest, AgentResponse, AgentContext\n\n# Agent handler function\nasync def handler(request: AgentRequest, response: AgentResponse, context: AgentContext):\n # Process the request\n data = request.data.json\n \n # Use the context (logging, storage, etc.)\n context.logger.info('Processing request', data)\n \n # Return a response\n return response.json({ message: 'Hello from my agent!' })\n```\n\n\n Agent configuration (name, description, etc.) is managed by the Agentuity CLI and stored in the project configuration file.\n Use the `agentuity project` and `agentuity agent` commands to manage your configuration.\n\n\n## Request and Response Handling\n\nThe Agentuity SDK provides a structured way to handle requests and generate responses:\n\n### Requests\n\nRequests contain information about the trigger event and payload data. The `AgentRequest` interface provides methods to access this data in various formats:\n\n- `request.trigger` - Get the trigger type (webhook, manual,cron, etc.)\n- `request.metadata` - Access metadata associated with the request\n- `request.get(key, defval)` - Get a value from the request metadata\n- `request.data` - Get a Data object from the request\n- `request.data.contentType` - The content type (or mime type) of the request\n- `request.data.text` - Get the payload as a string\n- `request.data.json` - Get the payload as a JSON object\n- `request.data.binary` - Get the payload as a binary object\n- `request.data.base64` - Get the payload as a base64 encoded string\n\n### Responses\n\nResponses are created using the `AgentResponse` interface, which provides methods for different response types:\n\n- `response.json()` - Return a JSON response\n- `response.text()` - Return a text response\n- `response.binary()` - Return a binary response\n- `response.html()` - Return an HTML response\n- `response.empty()` - Return an empty response\n- Various media-specific methods (pdf(), png(), jpeg(), etc.)\n- `response.handoff()` - Redirect to another agent\n\n## Agent Context\n\nThe context object provides access to various capabilities and services:\n\n- `context.logger` - Logging functionality\n- `context.kv` - Key-value storage\n- `context.vector` - Vector storage\n- `context.get_agent()` - Access to other agents both locally and remotely\n- `context.tracer` - OpenTelemetry tracing\n- Metadata about the current execution (runId, projectId, etc.)\n\n## Triggers and Event Types\n\nAgents can be triggered by various event types:\n\n- `webhook` - HTTP webhook calls\n- `cron` - Scheduled cron jobs\n- `manual` - Manual invocation\n- `agent` - Calls from other agents\n- `sms` - SMS messages\n- `queue` - Queue processing\n- `voice` - Voice calls\n- `email` - Email messages\n\nEach trigger type may provide different metadata and payload formats, which can be accessed through the request object.\n" - }, - { - "file": "SDKs/python/examples.mdx", - "meta": { - "title": "Examples", - "description": "Examples of using the Agentuity Python SDK" - }, - "content": "\n## Basic Agent\n\nA simple agent that returns a greeting.\n\n```python\nfrom agentuity import AgentRequest, AgentResponse, AgentContext\nfrom datetime import datetime\n\nasync def run(request: AgentRequest, response: AgentResponse, context: AgentContext):\n # Get the request data\n data = request.data.json\n name = data.get(\"name\", \"Guest\")\n \n # Log the request\n context.logger.info(f\"Received greeting request for {name}\")\n \n # Return a personalized greeting\n return response.json({\n \"message\": f\"Hello, {name}! Welcome to Agentuity.\",\n \"timestamp\": datetime.now().isoformat()\n })\n```\n\n## Key-Value Storage\n\nAn agent that uses key-value storage to store and retrieve user preferences.\n\n```python\nfrom agentuity import AgentRequest, AgentResponse, AgentContext\nimport json\n\nasync def run(request: AgentRequest, response: AgentResponse, context: AgentContext):\n data = request.data.json\n action = data.get(\"action\")\n user_id = data.get(\"userId\")\n preferences = data.get(\"preferences\")\n\n if action == \"get\":\n # Retrieve user preferences\n result = await context.kv.get(\"user-preferences\", user_id)\n\n if not result.exists:\n return response.json({\"message\": \"No preferences found\"})\n\n # Access the data\n user_prefs = result.data.json\n\n return response.json({\"preferences\": user_prefs})\n \n elif action == \"set\":\n # Store user preferences\n await context.kv.set(\n \"user-preferences\",\n user_id,\n preferences,\n {\"ttl\": 60 * 60 * 24 * 30} # 30 days in seconds\n )\n\n return response.json({\"message\": \"Preferences saved successfully!\"})\n \n elif action == \"delete\":\n # Delete user preferences\n await context.kv.delete(\"user-preferences\", user_id)\n \n return response.json({\"message\": \"Preferences deleted successfully!\"})\n \n else:\n return response.json({\"error\": 'Invalid action. Use \"get\", \"set\", or \"delete\".'})\n```\n\n## Welcome Function Example\n\nThis example demonstrates how to customize the initial appearance of DevMode when it starts interacting with your agents:\n\n```python\n# agent.py\n\ndef welcome():\n return {\n \"welcome\": \"Welcome to my Python Agent! How can I help you today?\",\n \"prompts\": [\n {\n \"data\": \"What can you do?\",\n \"contentType\": \"text/plain\"\n },\n {\n \"data\": \"Tell me about yourself\",\n \"contentType\": \"text/plain\"\n }\n ]\n }\n\ndef run(request, response, context):\n # Agent logic\n return response.text(\"Hello, World!\")\n```\n\n### Real-World Example\n\nHere's a more comprehensive example inspired by the React Miami 2025 Concierge template:\n\n```python\n# concierge_agent.py\n\ndef welcome():\n return {\n \"welcome\": \"Welcome to the Python Concierge! How can I help you today?\",\n \"prompts\": [\n {\n \"data\": \"Where should I go for dinner in Miami, tonight?\",\n \"contentType\": \"text/plain\"\n },\n {\n \"data\": \"What sessions about Python are happening today?\",\n \"contentType\": \"text/plain\"\n },\n {\n \"data\": \"Tell me more about the conference speakers\",\n \"contentType\": \"text/plain\"\n },\n {\n \"data\": \"I'm looking for good restaurants near the venue\",\n \"contentType\": \"text/plain\"\n },\n {\n \"data\": \"What is Agentuity all about?\",\n \"contentType\": \"text/plain\"\n }\n ]\n }\n\ndef run(request, response, context):\n # Agent logic implementation\n return response.text(\"Hello, I'm your Python Concierge!\")\n```\n\n## Vector Storage\n\nAn agent that uses vector storage for semantic search.\n\n```python\nfrom agentuity import AgentRequest, AgentResponse, AgentContext\n\nasync def run(request: AgentRequest, response: AgentResponse, context: AgentContext):\n data = request.data.json\n action = data.get(\"action\")\n query = data.get(\"query\")\n products = data.get(\"products\")\n\n if action == \"index\":\n # Index products in vector storage\n if not isinstance(products, list) or len(products) == 0:\n return response.json({\"error\": \"No products to index\"})\n\n # Prepare documents for vector storage\n documents = [\n {\n \"key\": product[\"id\"],\n \"document\": product[\"description\"],\n \"metadata\": {\n \"id\": product[\"id\"],\n \"name\": product[\"name\"],\n \"price\": product[\"price\"],\n \"category\": product[\"category\"]\n }\n }\n for product in products\n ]\n\n # Store in vector database\n ids = await context.vector.upsert(\"products\", documents)\n\n return response.json({\n \"message\": f\"Indexed {len(ids)} products successfully\",\n \"ids\": ids\n })\n \n elif action == \"search\":\n # Search for products by semantic similarity\n if not query:\n return response.json({\"error\": \"Query is required for search\"})\n\n # Perform semantic search\n results = await context.vector.search(\n \"products\",\n query,\n limit=5,\n similarity=0.5,\n metadata={}\n )\n\n # Format results\n formatted_results = [\n {\n \"id\": result.id,\n \"key\": result.key,\n \"similarity\": 1.0 - result.distance,\n \"metadata\": result.metadata\n }\n for result in results\n ]\n\n return response.json({\n \"message\": f\"Found {len(results)} matching products\",\n \"results\": formatted_results\n })\n \n elif action == \"delete\":\n # Delete products from vector storage\n if not isinstance(products, list) or len(products) == 0:\n return response.json({\"error\": \"No product IDs to delete\"})\n\n # Extract product IDs\n product_ids = [p[\"id\"] for p in products]\n \n # Delete from vector database\n count = await context.vector.delete(\"products\", product_ids[0])\n \n return response.json({\n \"message\": f\"Deleted {count} products successfully\",\n \"ids\": product_ids\n })\n \n else:\n return response.json({\"error\": 'Invalid action. Use \"index\", \"search\", or \"delete\".'})\n```\n\n## Agent Communication\n\nAn agent that demonstrates communication between agents.\n\n```python\nfrom agentuity import AgentRequest, AgentResponse, AgentContext\nfrom datetime import datetime\n\nasync def run(request: AgentRequest, response: AgentResponse, context: AgentContext):\n data = request.data.json\n action = data.get(\"action\")\n message = data.get(\"message\")\n agent_id = data.get(\"agentId\")\n\n if action == \"send\":\n # Send a message to another agent\n if not agent_id:\n return response.json({\"error\": \"Agent ID is required\"})\n\n if not message:\n return response.json({\"error\": \"Message is required\"})\n\n # Send message to the specified agent using handoff\n result = await response.handoff(\n {\"id\": agent_id},\n {\n \"message\": message,\n \"sender\": context.agent.id,\n \"timestamp\": datetime.now().isoformat()\n }\n )\n\n return result\n \n elif action == \"receive\":\n # This is a handler for receiving messages from other agents\n data = request.data.json\n \n context.logger.info(f\"Received message from agent {data.get('sender')}: {data.get('message')}\")\n \n # Process the received message\n return response.json({\n \"message\": \"Message received and processed\",\n \"echo\": data.get(\"message\"),\n \"receivedAt\": datetime.now().isoformat()\n })\n \n else:\n return response.json({\"error\": 'Invalid action. Use \"send\" or \"receive\".'})\n```\n\n## Streaming Responses from OpenAI\n\nThis example demonstrates how to stream a response from OpenAI using the Agentuity Python SDK:\n\n```python\nfrom openai import OpenAI\nfrom agentuity import AgentRequest, AgentResponse, AgentContext\n\nclient = OpenAI()\n\n\nasync def run(request: AgentRequest, response: AgentResponse, context: AgentContext):\n chat_completion = client.chat.completions.create(\n messages=[\n {\n \"role\": \"system\",\n \"content\": \"You are a friendly assistant!\",\n },\n {\n \"role\": \"user\",\n \"content\": request.data.text or \"Why is the sky blue?\",\n },\n ],\n model=\"gpt-4o\",\n stream=True,\n )\n return response.stream(chat_completion, lambda x: x.choices[0].delta.content)\n```\n\nThis example:\n1. Imports the necessary libraries from OpenAI and Agentuity\n2. Creates an OpenAI client\n3. Defines an async `run` function that:\n - Creates a chat completion with streaming enabled\n - Uses the user's input text or defaults to \"Why is the sky blue?\"\n - Returns a streamed response using Agentuity's `response.stream()` method\n - Uses a lambda function to extract the content from each chunk of the stream\n\nThe `response.stream()` method handles the complexity of streaming the response back to the user, making it easy to implement streaming in your agents.\n" - }, - { - "file": "SDKs/python/frameworks.mdx", - "meta": { - "title": "Frameworks", - "description": "Framework integration for the Agentuity Python SDK" - }, - "content": "\nThe Agentuity Python SDK provides a flexible and powerful way to integrate other frameworks with your Agent.\n\nThe following frameworks are currently supported:\n\n- [LlamaIndex](https://www.llamaindex.ai/)\n- [LangChain](https://www.langchain.com/)\n- [CrewAI](https://www.crewai.com/)\n\n## Using Frameworks with Agentuity\n\nThe use a framework with Agentuity, choose the framework template when creating a new project.\n\n```bash\nagentuity new\n```\n\nWhen you select one of the framework templates, the Agentuity CLI will install the necessary dependencies and create a new project with the framework already configured.\n\n## LlamaIndex\n\nExample Agent using LlamaIndex:\n\n```python\nfrom llama_index.core.agent.workflow import AgentWorkflow\nfrom llama_index.llms.openai import OpenAI\nfrom agentuity import AgentRequest, AgentResponse, AgentContext\n\n\n# Define a simple calculator tool\ndef multiply(a: float, b: float) -> float:\n \"\"\"Useful for multiplying two numbers.\"\"\"\n return a * b\n\n\n# Create an agent workflow with our calculator tool\nagent = AgentWorkflow.from_tools_or_functions(\n [multiply],\n llm=OpenAI(model=\"gpt-4o-mini\"),\n system_prompt=\"You are a helpful assistant that can multiply two numbers.\",\n)\n\n\nasync def run(request: AgentRequest, response: AgentResponse, context: AgentContext):\n result = await agent.run(request.text or \"What is 1234 * 4567?\")\n return response.text(str(result))\n```\n\n## LangChain\n\nExample Agent using LangChain:\n\n```python\nfrom agentuity import AgentRequest, AgentResponse, AgentContext\nfrom langchain_openai import ChatOpenAI\nfrom langchain_core.prompts import ChatPromptTemplate\nfrom langchain_core.output_parsers import StrOutputParser\n\nllm = ChatOpenAI()\n\n\nasync def run(request: AgentRequest, response: AgentResponse, context: AgentContext):\n prompt = ChatPromptTemplate.from_messages(\n [\n (\n \"system\",\n \"You are an expert in world knowledge and all things in general.\",\n ),\n (\"user\", \"{input}\"),\n ]\n )\n output_parser = StrOutputParser()\n chain = prompt | llm | output_parser\n result = chain.invoke({\"input\": request.text})\n\n return response.text(result)\n```\n\n### CrewAI\n\nExample Agent using CrewAI:\n\n```python\nfrom agentuity import AgentRequest, AgentResponse, AgentContext\nfrom agents.mycrew.crew import MyCrew\n\n\nasync def run(request: AgentRequest, response: AgentResponse, context: AgentContext):\n inputs = {\"topic\": request.text or \"AI LLMs\"}\n result = MyCrew().crew().kickoff(inputs=inputs)\n return response.text(str(result))\n```\n\nThen for your Crew, you might hvave the following:\n\n```python\nfrom crewai import Agent, Crew, Process, Task\nfrom crewai.project import CrewBase, agent, crew, task\n\n# If you want to run a snippet of code before or after the crew starts,\n# you can use the @before_kickoff and @after_kickoff decorators\n# https://docs.crewai.com/concepts/crews#example-crew-class-with-decorators\n\n\n@CrewBase\nclass MyCrew:\n \"\"\"MyCrew crew\"\"\"\n\n # Learn more about YAML configuration files here:\n # Agents: https://docs.crewai.com/concepts/agents#yaml-configuration-recommended\n # Tasks: https://docs.crewai.com/concepts/tasks#yaml-configuration-recommended\n agents_config = \"config/agents.yaml\"\n tasks_config = \"config/tasks.yaml\"\n\n # If you would like to add tools to your agents, you can learn more about it here:\n # https://docs.crewai.com/concepts/agents#agent-tools\n @agent\n def researcher(self) -> Agent:\n return Agent(config=self.agents_config[\"researcher\"], verbose=True)\n\n @agent\n def reporting_analyst(self) -> Agent:\n return Agent(config=self.agents_config[\"reporting_analyst\"], verbose=True)\n\n # To learn more about structured task outputs,\n # task dependencies, and task callbacks, check out the documentation:\n # https://docs.crewai.com/concepts/tasks#overview-of-a-task\n @task\n def research_task(self) -> Task:\n return Task(\n config=self.tasks_config[\"research_task\"],\n )\n\n @task\n def reporting_task(self) -> Task:\n return Task(config=self.tasks_config[\"reporting_task\"], output_file=\"report.md\")\n\n @crew\n def crew(self) -> Crew:\n \"\"\"Creates the MyagentCrew crew\"\"\"\n # To learn how to add knowledge sources to your crew, check out the documentation:\n # https://docs.crewai.com/concepts/knowledge#what-is-knowledge\n\n return Crew(\n agents=self.agents, # Automatically created by the @agent decorator\n tasks=self.tasks, # Automatically created by the @task decorator\n process=Process.sequential,\n verbose=True,\n # process=Process.hierarchical, # In case you wanna use that instead https://docs.crewai.com/how-to/Hierarchical/\n )\n```\n" - }, - { - "file": "SDKs/python/index.mdx", - "meta": { - "title": "Python SDK", - "description": "Documentation for the Agentuity Python SDK" - }, - "content": "\nThe [Agentuity Python SDK](https://github.com/agentuity/sdk-py) provides a powerful framework for building AI agents in Python. It offers a comprehensive set of tools for creating, deploying, and managing agents with features like key-value storage, vector storage, and OpenTelemetry integration.\n\n## Installation\n\nWhen you create a project with Agentuity, you will automatically have access to the Agentuity Python SDK.\n\n```bash\nagentuity new\n```\n\nThe SDK currently works with Python and the project will automatically install the correct dependencies.\n\n## Prerequisites\n\nBefore using the Agentuity Python SDK, ensure you have the following prerequisites installed:\n\n- **Python**: Version 3.10 or higher is required\n\n### Installing Python\n\nYou can download and install Python from the [official website](https://www.python.org/). Make sure to install version 3.10 or higher.\n\n### Installing UV\n\n[UV](https://docs.astral.sh/uv/) is an optional but recommended package manager for Python. You can install it using the following command:\n\n```bash\ncurl -LsSf https://astral.sh/uv/install.sh | sh\n```\n\nFor more information, visit the [UV installation documentation](https://docs.astral.sh/uv/getting-started/installation/).\n\n## Development\n\nYou can start your project by running the following command:\n\n```bash\nagentuity dev\n```\n\nThis will start your project in development mode and open a new browser window connecting your Agent to the Agentuity Console in Live Mode.\n\nYou can also start your project in development mode without connecting to the Agentuity Console by running the following command:\n\n```bash\nuv run server.py\n```\n\nIf you would like to manually test your Agents locally, you can do so by running the following command:\n\n```bash\ncurl -v http://localhost:3500/run/agent_ID --json '{\"input\": \"Hello, world!\"}'\n```\n\nMake sure you replace `agent_ID` with the ID of your Agent.\n\n\n## Next Steps\n\n- [Core Concepts](/SDKs/python/core-concepts) - Learn about the fundamental concepts of the Agentuity Python SDK\n- [LLM](/SDKs/python/llm) - Learn about the LLM integrations available in the Agentuity Python SDK\n- [Frameworks](/SDKs/python/frameworks) - Learn about using frameworks with the Agentuity Python SDK\n- [API Reference](/SDKs/python/api-reference) - Explore the detailed API documentation\n" - }, - { - "file": "SDKs/python/llm.mdx", - "meta": { - "title": "LLM", - "description": "LLM integration for the Agentuity Python SDK" - }, - "content": "\nThe Agentuity Python SDK provides a flexible and powerful way to integrate with LLMs.\n\n## AI Gateway\n\nThe Agentuity Cloud includes an AI Gateway to make it easy to integrate LLMs with your Agent with zero configuration. The following LLM integrations are supported:\n\n- [OpenAI](https://openai.com/)\n- [Anthropic](https://www.anthropic.com/)\n- [Cohere](https://cohere.com/)\n- [DeepSeek](https://www.deepseek.com/)\n- [Google AI Studio](https://ai.google.dev/)\n- [Grok](https://grok.x.ai/)\n- [Groq](https://groq.com/)\n- [Mistral](https://mistral.ai/)\n- [Perplexity AI](https://www.perplexity.ai/)\n\n## SDK Integrations\n\nTo use the zero config LLM integrations, you can use the following SDK integrations:\n\n- [OpenAI Python SDK](https://github.com/openai/openai-python)\n- [Anthropic Python SDK](https://github.com/anthropics/anthropic-sdk-python)\n- [LiteLLM Python SDK](https://github.com/BerriAI/litellm)\n\nWhen any of the above SDKs are installed, the Agentuity Project will automatically detect it and route your requests to the AI Gateway. However, we will only route requests if you do not provide your own LLM API Key. By providing your own LLM API Key, the AI Gateway detection will be disabled and you will need to manually configure the LLM integration in the Agentuity Console.\n\n" - }, - { - "file": "Troubleshooting/error-codes/authentication.mdx", - "meta": { - "title": "Authentication Errors", - "description": "Reference for authentication-related error codes (AUTH-XXX)" - }, - "content": "\nimport { Callout } from 'fumadocs-ui/components/callout';\n\n\n This document is being worked on, information may change a lot over the next few weeks.\n\n\n## AUTH-001\n\n**Error Message**: Invalid username or password\n\n**Cause**: The provided credentials are incorrect or do not exist.\n\n**Solution**: \n- Verify your username and password\n- Reset your password if necessary\n- Check for any typos in your credentials\n\n## AUTH-002\n\n**Error Message**: Authentication token has expired\n\n**Cause**: Your authentication token has exceeded its validity period.\n\n**Solution**: \n- Log out and log back in\n- Request a new authentication token\n- Check your system time is correct\n\n## AUTH-003\n\n**Error Message**: Invalid authentication token\n\n**Cause**: The provided token is malformed or has been tampered with.\n\n**Solution**: \n- Generate a new authentication token\n- Verify the token format\n- Check token transmission process\n\n[Content coming soon - Additional authentication error codes] " - }, - { - "file": "Troubleshooting/error-codes/cli.mdx", - "meta": { - "title": "CLI Errors", - "description": "Reference for CLI-related error codes (CLI-XXXX)" - }, - "content": "\n## CLI-0001\n\n**Error Message**: Failed to delete agents\n\n**Cause**: The system encountered an error when attempting to delete one or more agents.\n\n**Solution**: \n- Verify you have the correct permissions\n- Check if the agents still exist\n- Try deleting agents one by one\n- Check the logs for more specific error details\n\n## CLI-0002\n\n**Error Message**: Failed to create project\n\n**Cause**: The system encountered an error when attempting to create a new project.\n\n**Solution**: \n- Verify you have the correct permissions\n- Check if a project with the same name already exists\n- Ensure all required project parameters are valid\n- Check the logs for more specific error details\n\n## CLI-0003\n\n**Error Message**: Unable to authenticate user\n\n**Cause**: The system could not authenticate your user credentials.\n\n**Solution**: \n- Verify your username and password\n- Check if your authentication token is valid\n- Try logging in again\n- Ensure your account has not been locked or disabled\n\n## CLI-0004\n\n**Error Message**: Environment variables not set\n\n**Cause**: Required environment variables are missing or not properly set.\n\n**Solution**: \n- Check which environment variables are required\n- Set the missing environment variables\n- Verify the environment variables have the correct values\n- Consider using a .env file for local development\n\n## CLI-0005\n\n**Error Message**: API request failed\n\n**Cause**: A request to the Agentuity API failed.\n\n**Solution**: \n- Check your internet connection\n- Verify the API endpoint is correct\n- Ensure your authentication token is valid\n- Check the logs for more specific error details\n\n## CLI-0006\n\n**Error Message**: Invalid configuration\n\n**Cause**: The configuration file or parameters contain invalid values.\n\n**Solution**: \n- Review your configuration file\n- Check for syntax errors\n- Ensure all required fields are present\n- Validate the values against the expected format\n\n## CLI-0007\n\n**Error Message**: Failed to save project\n\n**Cause**: The system encountered an error when attempting to save project changes.\n\n**Solution**: \n- Verify you have the correct permissions\n- Check if the project still exists\n- Ensure all project parameters are valid\n- Check the logs for more specific error details\n\n## CLI-0008\n\n**Error Message**: Failed to deploy project\n\n**Cause**: The system encountered an error when attempting to deploy a project.\n\n**Solution**: \n- Verify you have the correct permissions\n- Check if the project is valid and complete\n- Ensure all dependencies are available\n- Check the logs for more specific error details\n\n## CLI-0009\n\n**Error Message**: Failed to upload project\n\n**Cause**: The system encountered an error when attempting to upload project files.\n\n**Solution**: \n- Check your internet connection\n- Verify you have the correct permissions\n- Ensure the project files are not too large\n- Check the logs for more specific error details\n\n## CLI-0010\n\n**Error Message**: Failed to parse environment file\n\n**Cause**: The system could not parse the environment file (.env).\n\n**Solution**: \n- Check the syntax of your environment file\n- Ensure the file exists and is readable\n- Verify the file format is correct\n- Remove any invalid characters or formatting\n\n## CLI-0011\n\n**Error Message**: Invalid command flag error\n\n**Cause**: One or more command flags provided are invalid or incompatible.\n\n**Solution**: \n- Check the command documentation\n- Verify the flag names and values\n- Ensure flags are compatible with each other\n- Use the help command for correct usage\n\n## CLI-0012\n\n**Error Message**: Failed to list files and directories\n\n**Cause**: The system could not list files or directories in the specified location.\n\n**Solution**: \n- Verify the path exists\n- Check if you have permission to access the location\n- Ensure the path is correctly formatted\n- Check for any file system errors\n\n## CLI-0013\n\n**Error Message**: Failed to write configuration file\n\n**Cause**: The system could not write to the configuration file.\n\n**Solution**: \n- Check if you have write permissions\n- Verify the directory exists\n- Ensure there is enough disk space\n- Check if the file is locked by another process\n\n## CLI-0014\n\n**Error Message**: Failed to read configuration file\n\n**Cause**: The system could not read the configuration file.\n\n**Solution**: \n- Verify the file exists\n- Check if you have read permissions\n- Ensure the file is not corrupted\n- Check if the file format is correct\n\n## CLI-0015\n\n**Error Message**: Failed to create directory\n\n**Cause**: The system could not create a directory.\n\n**Solution**: \n- Check if you have write permissions\n- Verify the parent directory exists\n- Ensure there is enough disk space\n- Check if a file with the same name already exists\n\n## CLI-0016\n\n**Error Message**: Failed to create temporary file\n\n**Cause**: The system could not create a temporary file.\n\n**Solution**: \n- Check if you have write permissions to the temp directory\n- Ensure there is enough disk space\n- Verify the temp directory exists\n- Check system temporary file limits\n\n## CLI-0017\n\n**Error Message**: Failed to create zip file\n\n**Cause**: The system could not create a zip archive.\n\n**Solution**: \n- Check if you have write permissions\n- Ensure there is enough disk space\n- Verify all files to be zipped exist and are readable\n- Check if the zip utility is installed correctly\n\n## CLI-0018\n\n**Error Message**: Failed to open file\n\n**Cause**: The system could not open the specified file.\n\n**Solution**: \n- Verify the file exists\n- Check if you have permission to access the file\n- Ensure the file is not locked by another process\n- Check if the file path is correct\n\n## CLI-0019\n\n**Error Message**: Failed to load templates\n\n**Cause**: The system could not load the required templates.\n\n**Solution**: \n- Verify the templates exist\n- Check if you have permission to access the templates\n- Ensure the template format is correct\n- Check if the template path is correct\n\n## CLI-0020\n\n**Error Message**: Failed to authenticate with otel server\n\n**Cause**: The system could not authenticate with the OpenTelemetry server.\n\n**Solution**: \n- Verify your OTEL server credentials\n- Check if the OTEL server is running\n- Ensure the OTEL server URL is correct\n- Check your network connection to the OTEL server\n\n## CLI-0021\n\n**Error Message**: Failed to install dependencies\n\n**Cause**: The system could not install the required dependencies.\n\n**Solution**: \n- Check your internet connection\n- Verify you have the necessary permissions\n- Ensure the package manager is working correctly\n- Check for conflicts with existing packages\n\n## CLI-0022\n\n**Error Message**: Error importing project\n\n**Cause**: The system encountered an error when attempting to import a project.\n\n**Solution**: \n- Verify the project structure is valid\n- Ensure all required files are present\n- Check if the project is compatible with the current CLI version\n- Verify you have the necessary permissions to import the project\n\n## CLI-0023\n\n**Error Message**: Error encrypting deployment zip file\n\n**Cause**: The system could not encrypt the deployment zip file.\n\n**Solution**: \n- Check if encryption keys are valid\n- Verify you have the necessary permissions\n- Ensure the zip file was created successfully\n- Check if the encryption library is working correctly\n" - }, - { - "file": "Troubleshooting/error-codes/datastores.mdx", - "meta": { - "title": "Datastore Errors", - "description": "Reference for datastore-related error codes (DATA-XXX)" - }, - "content": "\nimport { Callout } from 'fumadocs-ui/components/callout';\n\n\n This document is being worked on, information may change a lot over the next few weeks.\n\n\n## DATA-001\n\n**Error Message**: Datastore not found\n\n**Cause**: The specified datastore ID does not exist or has been deleted.\n\n**Solution**: \n- Verify the datastore ID is correct\n- Check if the datastore still exists in the project\n- Contact support if you believe this is an error\n\n## DATA-002\n\n**Error Message**: Invalid datastore configuration\n\n**Cause**: The datastore configuration contains invalid or missing required fields.\n\n**Solution**: \n- Review the datastore configuration\n- Ensure all required fields are provided\n- Validate the configuration format\n\n## DATA-003\n\n**Error Message**: Unable to connect to datastore\n\n**Cause**: The system cannot establish a connection to the datastore.\n\n**Solution**: \n- Check the datastore connection settings\n- Verify the datastore is running and accessible\n- Check network connectivity\n\n## DATA-004\n\n**Error Message**: Datastore capacity exceeded\n\n**Cause**: The datastore has reached its storage capacity limit.\n\n**Solution**: \n- Review current data usage\n- Delete unnecessary data\n- Upgrade storage capacity\n\n## DATA-005\n\n**Error Message**: Invalid datastore query\n\n**Cause**: The query syntax or parameters are invalid.\n\n**Solution**: \n- Check the query syntax\n- Verify parameter types and values\n- Review the query documentation " - }, - { - "file": "Troubleshooting/error-codes/index.mdx", - "meta": { - "title": "Error Codes", - "description": "Complete reference for all Agentuity error codes and their solutions" - }, - "content": "\nimport { Callout } from 'fumadocs-ui/components/callout';\n\n\n This document is being worked on, information may change a lot over the next few weeks.\n\n\nThis section provides detailed information about all error codes you might encounter while using Agentuity.\n\n## Error Categories\n\n- Authentication Errors (AUTH-XXX)\n- Project Errors (PROJ-XXX)\n- Agent Errors (AGENT-XXX)\n- Datastore Errors (DATA-XXX)\n- Integration Errors (INT-XXX)\n- System Errors (SYS-XXX)\n- CLI Errors (CLI-XXXX)\n\n## Reading Error Codes\n\n[Content coming soon - How to interpret error codes and find solutions]\n\n## Common Error Patterns\n\n[Content coming soon - Common patterns in error codes and general troubleshooting approaches] " - }, - { - "file": "Troubleshooting/error-codes/integration.mdx", - "meta": { - "title": "Integration Errors", - "description": "Reference for integration-related error codes (INT-XXX)" - }, - "content": "\nimport { Callout } from 'fumadocs-ui/components/callout';\n\n\n This document is being worked on, information may change a lot over the next few weeks.\n\n\n## INT-001\n\n**Error Message**: Integration not found\n\n**Cause**: The specified integration does not exist or has been deleted.\n\n**Solution**: \n- Verify the integration ID is correct\n- Check if the integration is still configured\n- Set up the integration again if necessary\n\n## INT-002\n\n**Error Message**: Invalid webhook URL\n\n**Cause**: The webhook URL is not properly formatted or accessible.\n\n**Solution**: \n- Verify the webhook URL is correct\n- Ensure the endpoint is publicly accessible\n- Check URL formatting and protocol\n\n## INT-003\n\n**Error Message**: Integration authentication failed\n\n**Cause**: Unable to authenticate with the integrated service.\n\n**Solution**: \n- Check integration credentials\n- Verify API keys or tokens\n- Ensure the integration service is available\n\n## INT-004\n\n**Error Message**: Integration request timeout\n\n**Cause**: The integrated service did not respond within the expected time.\n\n**Solution**: \n- Check the integrated service status\n- Verify network connectivity\n- Adjust timeout settings if possible\n\n## INT-005\n\n**Error Message**: Invalid integration configuration\n\n**Cause**: The integration configuration is invalid or incomplete.\n\n**Solution**: \n- Review integration settings\n- Complete all required configuration fields\n- Check integration documentation " - }, - { - "file": "Troubleshooting/error-codes/projects.mdx", - "meta": { - "title": "Project Errors", - "description": "Reference for project-related error codes (PROJ-XXX)" - }, - "content": "\nimport { Callout } from 'fumadocs-ui/components/callout';\n\n\n This document is being worked on, information may change a lot over the next few weeks.\n\n\n## PROJ-001\n\n**Error Message**: Project not found\n\n**Cause**: The specified project ID does not exist or has been deleted.\n\n**Solution**: \n- Verify the project ID is correct\n- Check if you have access to the project\n- Contact support if you believe this is an error\n\n## PROJ-002\n\n**Error Message**: Invalid project configuration\n\n**Cause**: The project configuration contains invalid or missing required fields.\n\n**Solution**: \n- Review the project configuration\n- Ensure all required fields are provided\n- Validate the configuration format\n\n## PROJ-003\n\n**Error Message**: Project limit exceeded\n\n**Cause**: You have reached the maximum number of projects allowed for your subscription.\n\n**Solution**: \n- Review your current projects\n- Delete unused projects\n- Upgrade your subscription plan\n\n## PROJ-004\n\n**Error Message**: Invalid project name\n\n**Cause**: The project name contains invalid characters or is too long/short.\n\n**Solution**: \n- Use only alphanumeric characters, hyphens, and underscores\n- Keep the name between 3-64 characters\n- Remove any special characters " - }, - { - "file": "Troubleshooting/error-codes/system.mdx", - "meta": { - "title": "System Errors", - "description": "Reference for system-related error codes (SYS-XXX)" - }, - "content": "\nimport { Callout } from 'fumadocs-ui/components/callout';\n\n\n This document is being worked on, information may change a lot over the next few weeks.\n\n\n## SYS-001\n\n**Error Message**: Internal server error\n\n**Cause**: An unexpected error occurred in the system.\n\n**Solution**: \n- Retry the operation\n- Check system status page\n- Contact support if the issue persists\n\n## SYS-002\n\n**Error Message**: Rate limit exceeded\n\n**Cause**: Too many requests in a short period.\n\n**Solution**: \n- Reduce request frequency\n- Implement request throttling\n- Review rate limit documentation\n\n## SYS-003\n\n**Error Message**: Service temporarily unavailable\n\n**Cause**: The service is currently unavailable or under maintenance.\n\n**Solution**: \n- Check system status page\n- Wait and retry later\n- Subscribe to status updates\n\n## SYS-004\n\n**Error Message**: Invalid API version\n\n**Cause**: The requested API version is not supported or deprecated.\n\n**Solution**: \n- Update to a supported API version\n- Check API version compatibility\n- Review API migration guide\n\n## SYS-005\n\n**Error Message**: Resource conflict\n\n**Cause**: Concurrent modification of the same resource.\n\n**Solution**: \n- Implement proper locking mechanisms\n- Retry the operation\n- Handle conflicts in your application " - }, - { - "file": "docs/SDKs/python/agent-to-agent.mdx", - "meta": { - "title": "Agent-to-Agent Communication", - "description": "Enable communication between agents in the Agentuity Python SDK" - }, - "content": "\n# Agent-to-Agent Communication\n\nThe Agentuity Python SDK enables seamless communication between agents, whether they are running locally or in different environments.\n\n## Local Agent Communication\n\nYou can easily communicate between agents running in the same process:\n\n```python\nasync def run(request, response, context):\n # Call another agent by ID\n return await response.handoff({\"id\": \"other_agent_id\"})\n \n # Or call by name\n # return response.handoff({\"name\": \"OtherAgentName\"})\n```\n\n## Remote Agent Communication\n\nThe SDK now supports communication with agents running in different environments:\n\n```python\nasync def run(request, response, context):\n # Resolve an agent (local or remote)\n agent = context.get_agent({\"id\": \"remote_agent_id\"})\n \n # Create data for the remote agent\n from agentuity.server.data import Data, StringStreamReader\n data = Data(\"text/plain\", StringStreamReader(\"Hello from another agent\"))\n \n # Call the remote agent\n result = await agent.run(data, metadata={\"key\": \"value\"})\n \n # Process the response\n text = await result.data.text()\n return response.text(f\"Got response: {text}\")\n```\n\n## Agent Resolution\n\nThe `AgentContext` provides methods for resolving agents, whether they are local or remote:\n\n```python\nasync def run(request, response, context):\n # Resolve by ID\n agent = context.get_agent({\"id\": \"agent_id\"})\n \n # Resolve by name\n agent = context.get_agent({\"name\": \"AgentName\"})\n \n # Resolve by name in a specific project\n agent = context.get_agent({\"name\": \"AgentName\", \"projectId\": \"proj_123\"})\n \n # Call the resolved agent\n result = await agent.run(request.data)\n return result\n```\n\n## Agent Context\n\nThe `AgentContext` class provides methods for agent resolution and management:\n\n```python\nasync def run(request, response, context):\n # Get agent information\n current_agent = context.agent\n all_agents = context.agents\n \n # Get the current scope (local or remote)\n scope = context.scope\n \n # Get the current run ID\n run_id = context.runId\n \n # Use key-value store\n await context.kv.set(\"key\", \"value\")\n value = await context.kv.get(\"key\")\n \n # Use vector store\n await context.vector.add(\"collection\", \"id\", [0.1, 0.2, 0.3], {\"metadata\": \"value\"})\n results = await context.vector.search(\"collection\", [0.1, 0.2, 0.3], 5)\n \n return response.text(\"Agent context example\")\n```\n" - }, - { - "file": "docs/SDKs/python/async-api.mdx", - "meta": { - "title": "Async API", - "description": "Working with Asynchronous Agents in the Agentuity Python SDK" - }, - "content": "\n# Async API\n\nThe Agentuity Python SDK now supports fully asynchronous operations, enabling more efficient handling of concurrent requests and streaming responses.\n\n## Agent Request\n\nThe `AgentRequest` class now uses async patterns to handle incoming data:\n\n```python\nfrom agentuity.server import AgentRequest\n\nasync def run(request: AgentRequest, response, context):\n # Access request data asynchronously\n data = await request.data.text()\n \n # Access request metadata\n metadata = request.metadata\n \n # Get the trigger type\n trigger = request.trigger\n \n # Return a response\n return response.text(f\"Received: {data}\")\n```\n\n## Agent Response\n\nThe `AgentResponse` class supports async streaming and iteration:\n\n```python\nfrom agentuity.server import AgentResponse\n\nasync def run(request, response: AgentResponse, context):\n # Stream response data\n async def data_generator():\n for i in range(5):\n yield f\"Data chunk {i}\\n\"\n \n # Return a streaming response\n return response.stream(data_generator(), contentType=\"text/plain\")\n```\n\n### Async Iteration\n\nResponses can be iterated over asynchronously:\n\n```python\nasync def process_response(response):\n async for chunk in response:\n print(chunk)\n```\n\n## Data Streaming\n\nThe SDK provides several specialized stream readers for different data types:\n\n```python\nfrom agentuity.server.data import (\n StringStreamReader,\n BytesStreamReader,\n EmptyDataReader\n)\n\n# Create a stream from a string\nstring_stream = StringStreamReader(\"Hello, world!\")\n\n# Create a stream from bytes\nbytes_stream = BytesStreamReader(b\"Binary data\")\n\n# Create an empty stream\nempty_stream = EmptyDataReader()\n```\n\n## Performance Benefits\n\nThe async implementation provides several advantages:\n\n- Efficient handling of concurrent requests\n- Streaming of large data payloads without blocking\n- Reduced memory usage for processing large files\n- Better integration with modern async Python applications\n" - }, - { - "file": "docs/SDKs/python/data-handling.mdx", - "meta": { - "title": "Data Handling", - "description": "Working with various data types in the Agentuity Python SDK" - }, - "content": "\n# Data Handling\n\nThe Agentuity Python SDK provides a flexible system for working with different types of data, from text and JSON to binary formats like images and audio.\n\n## The Data Class\n\nThe `Data` class serves as a container for all types of content:\n\n```python\nfrom agentuity.server.data import Data, StringStreamReader, BytesStreamReader\n\n# Create a text Data object\ntext_data = Data(\"text/plain\", StringStreamReader(\"Hello, world!\"))\n\n# Create a binary Data object\nbinary_data = Data(\"application/octet-stream\", BytesStreamReader(b\"\\x00\\x01\\x02\\x03\"))\n```\n\n## Accessing Data Content\n\nData content can be accessed in various formats:\n\n```python\nasync def process_data(data: Data):\n # Get as text\n text = await data.text()\n \n # Get as JSON\n json_data = await data.json()\n \n # Get as binary\n binary = await data.binary()\n \n # Get as base64 encoded string\n base64_str = await data.base64()\n \n # Access as a stream\n stream = await data.stream()\n async for chunk in stream:\n process_chunk(chunk)\n```\n\n## Working with Responses\n\nThe `AgentResponse` class provides methods for various content types:\n\n```python\nasync def run(request, response, context):\n # Text response\n return response.text(\"Hello, world!\")\n \n # JSON response\n return response.json({\"message\": \"Hello, world!\"})\n \n # Markdown response\n return response.markdown(\"# Hello, world!\")\n \n # Binary response\n return response.binary(b\"\\x00\\x01\\x02\\x03\", \"application/octet-stream\")\n```\n\n## Media Type Helpers\n\nThe SDK includes helpers for common media types:\n\n```python\nasync def run(request, response, context):\n # Image responses\n with open(\"image.png\", \"rb\") as f:\n image_data = f.read()\n return response.png(image_data)\n \n # Other image formats\n return response.jpeg(jpeg_data)\n return response.gif(gif_data)\n return response.webp(webp_data)\n \n # Document formats\n return response.pdf(pdf_data)\n \n # Audio/Video formats\n return response.mp3(mp3_data)\n return response.mp4(mp4_data)\n return response.wav(wav_data)\n return response.ogg(ogg_data)\n return response.webm(webm_data)\n return response.m4a(m4a_data)\n```\n\n## Streaming Data\n\nFor large responses or real-time data, use streaming:\n\n```python\nasync def run(request, response, context):\n # Stream data from a generator\n async def generator():\n for i in range(10):\n yield f\"Item {i}\\n\"\n \n # Return the stream\n return response.stream(generator(), contentType=\"text/plain\")\n \n # Transform items during streaming\n def transform(item):\n return f\"Transformed: {item}\"\n \n return response.stream(generator(), transform=transform)\n \n # Stream responses from another agent\n other_response = await context.get_agent(\"other_agent\").run(request.data)\n return response.stream(other_response)\n```\n" - }, - { - "file": "docs/SDKs/python/index.mdx", - "meta": { - "title": "Python SDK", - "description": "Agentuity Python SDK Documentation" - }, - "content": "\n# Agentuity Python SDK\n\nThe Agentuity Python SDK is a powerful toolkit for building, deploying, and managing AI agents in Python environments. This SDK provides developers with a comprehensive set of tools to create intelligent agents that can process various types of content, communicate with each other, and integrate with external systems.\n\n## Prerequisites\n\n- [Python](https://www.python.org/) (3.10 or 3.11)\n- [uv](https://docs.astral.sh/uv/) (latest version recommended)\n\n## Installation\n\nFirst, install the Agentuity CLI:\n\n```bash\ncurl -fsS https://agentuity.sh | sh\n```\n\nThen create a new project:\n\n```bash\nagentuity new\n```\n\nThis will create a new project with a default `agentuity.yaml` configuration file and agent structure.\n\n## Creating Your First Agent\n\nNavigate to the agent file created by the CLI:\n\n```bash\ncd agents/myfirstagent\n```\n\nEdit the `agent.py` file and add the following code:\n\n```python\nfrom agentuity.server import AgentRequest, AgentResponse, AgentContext\n\ndef run(request: AgentRequest, response: AgentResponse, context: AgentContext):\n return response.text(\"Hello, world\")\n```\n\n## Running Your Agent\n\nStart the local development server:\n\n```bash\nagentuity dev\n```\n\nWhen the server starts, you'll see a local URL in the console output. Open this URL in your browser to access the Agentuity development UI, where you can test your agent and view the responses.\n\n## Key Features\n\n
\n \n

Async API

\n

Work with fully asynchronous agents

\n
\n \n \n

Agent-to-Agent Communication

\n

Enable communication between local and remote agents

\n
\n \n \n

Data Handling

\n

Work with various data types and streaming capabilities

\n
\n
\n" - } - ] -} diff --git a/content/docs/SDKs/python/agent-to-agent.mdx b/content/docs/SDKs/python/agent-to-agent.mdx deleted file mode 100644 index 7e531005..00000000 --- a/content/docs/SDKs/python/agent-to-agent.mdx +++ /dev/null @@ -1,89 +0,0 @@ ---- -title: Agent-to-Agent Communication -description: Enable communication between agents in the Agentuity Python SDK ---- - -# Agent-to-Agent Communication - -The Agentuity Python SDK enables seamless communication between agents, whether they are running locally or in different environments. - -## Local Agent Communication - -You can easily communicate between agents running in the same process: - -```python -async def run(request, response, context): - # Call another agent by ID - return await response.handoff({"id": "other_agent_id"}) - - # Or call by name - # return response.handoff({"name": "OtherAgentName"}) -``` - -## Remote Agent Communication - -The SDK now supports communication with agents running in different environments: - -```python -async def run(request, response, context): - # Resolve an agent (local or remote) - agent = context.get_agent({"id": "remote_agent_id"}) - - # Create data for the remote agent - from agentuity.server.data import Data, StringStreamReader - data = Data("text/plain", StringStreamReader("Hello from another agent")) - - # Call the remote agent - result = await agent.run(data, metadata={"key": "value"}) - - # Process the response - text = await result.data.text() - return response.text(f"Got response: {text}") -``` - -## Agent Resolution - -The `AgentContext` provides methods for resolving agents, whether they are local or remote: - -```python -async def run(request, response, context): - # Resolve by ID - agent = context.get_agent({"id": "agent_id"}) - - # Resolve by name - agent = context.get_agent({"name": "AgentName"}) - - # Resolve by name in a specific project - agent = context.get_agent({"name": "AgentName", "projectId": "proj_123"}) - - # Call the resolved agent - result = await agent.run(request.data) - return result -``` - -## Agent Context - -The `AgentContext` class provides methods for agent resolution and management: - -```python -async def run(request, response, context): - # Get agent information - current_agent = context.agent - all_agents = context.agents - - # Get the current scope (local or remote) - scope = context.scope - - # Get the current run ID - run_id = context.runId - - # Use key-value store - await context.kv.set("key", "value") - value = await context.kv.get("key") - - # Use vector store - await context.vector.add("collection", "id", [0.1, 0.2, 0.3], {"metadata": "value"}) - results = await context.vector.search("collection", [0.1, 0.2, 0.3], 5) - - return response.text("Agent context example") -``` diff --git a/content/docs/SDKs/python/index.mdx b/content/docs/SDKs/python/index.mdx deleted file mode 100644 index 55882785..00000000 --- a/content/docs/SDKs/python/index.mdx +++ /dev/null @@ -1,75 +0,0 @@ ---- -title: Python SDK -description: Agentuity Python SDK Documentation ---- - -# Agentuity Python SDK - -The Agentuity Python SDK is a powerful toolkit for building, deploying, and managing AI agents in Python environments. This SDK provides developers with a comprehensive set of tools to create intelligent agents that can process various types of content, communicate with each other, and integrate with external systems. - -## Prerequisites - -- [Python](https://www.python.org/) (3.10 or 3.11) -- [uv](https://docs.astral.sh/uv/) (latest version recommended) - -## Installation - -First, install the Agentuity CLI: - -```bash -curl -fsS https://agentuity.sh | sh -``` - -Then create a new project: - -```bash -agentuity new -``` - -This will create a new project with a default `agentuity.yaml` configuration file and agent structure. - -## Creating Your First Agent - -Navigate to the agent file created by the CLI: - -```bash -cd agents/myfirstagent -``` - -Edit the `agent.py` file and add the following code: - -```python -from agentuity.server import AgentRequest, AgentResponse, AgentContext - -def run(request: AgentRequest, response: AgentResponse, context: AgentContext): - return response.text("Hello, world") -``` - -## Running Your Agent - -Start the local development server: - -```bash -agentuity dev -``` - -When the server starts, you'll see a local URL in the console output. Open this URL in your browser to access the Agentuity development UI, where you can test your agent and view the responses. - -## Key Features - -
- -

Async API

-

Work with fully asynchronous agents

-
- - -

Agent-to-Agent Communication

-

Enable communication between local and remote agents

-
- - -

Data Handling

-

Work with various data types and streaming capabilities

-
-
diff --git a/content/meta.json b/content/meta.json index 08cf1cbe..77852ca1 100644 --- a/content/meta.json +++ b/content/meta.json @@ -2,6 +2,7 @@ "title": "Agentuity Docs", "pages": [ "Introduction", + "Guides", "Cloud", "CLI", "SDKs", diff --git a/package-lock.json b/package-lock.json index 7f46f2f8..9d915505 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13,13 +13,16 @@ "fumadocs-mdx": "11.5.8", "fumadocs-twoslash": "^3.1.0", "fumadocs-ui": "15.2.6", + "geist": "^1.4.2", + "mermaid": "^11.6.0", + "motion": "^12.12.2", "next": "15.3.0", "react": "^19.0.0", "react-dom": "^19.0.0", "twoslash": "^0.3.1" }, "devDependencies": { - "@opennextjs/cloudflare": "^0.6.6", + "@opennextjs/cloudflare": "^1.0.4", "@tailwindcss/postcss": "^4.1.3", "@types/mdx": "^2.0.13", "@types/node": "22.10.9", @@ -46,6 +49,28 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/@antfu/install-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@antfu/install-pkg/-/install-pkg-1.1.0.tgz", + "integrity": "sha512-MGQsmw10ZyI+EJo45CdSER4zEb+p31LpDAFp2Z3gkSd1yqVZGi0Ebx++YTEMonJy4oChEMLsxZ64j8FH6sSqtQ==", + "license": "MIT", + "dependencies": { + "package-manager-detector": "^1.3.0", + "tinyexec": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/@antfu/utils": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/@antfu/utils/-/utils-8.1.1.tgz", + "integrity": "sha512-Mex9nXf9vR6AhcXmMrlz/HVgYYZpVGJ6YlPgwl7UnaFpnshXs6EK/oa5Gpf3CzENMjkvEx2tQtntGnb7UtSTOQ==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, "node_modules/@ast-grep/napi": { "version": "0.35.0", "resolved": "https://registry.npmjs.org/@ast-grep/napi/-/napi-0.35.0.tgz", @@ -457,50 +482,50 @@ } }, "node_modules/@aws-sdk/client-dynamodb": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-dynamodb/-/client-dynamodb-3.787.0.tgz", - "integrity": "sha512-mqR+MrO/Jef9fHU0QH4jDW5zJ3RtHUnyt6OVwO0ezQD5hWajIwT8fl2Bp0zqakhkhUAiW7FpGAiF+G+kEqb/rQ==", + "version": "3.817.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-dynamodb/-/client-dynamodb-3.817.0.tgz", + "integrity": "sha512-UXHY1cOsPTyrzRY+8yJUYcD7dnMHbP2hoFRhNOiMCMqjKV4lRRQ/1EiLxX5aohAYkxxr2kOqSDFjzq9wbtX6PQ==", "dev": true, "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/core": "3.775.0", - "@aws-sdk/credential-provider-node": "3.787.0", - "@aws-sdk/middleware-endpoint-discovery": "3.775.0", - "@aws-sdk/middleware-host-header": "3.775.0", - "@aws-sdk/middleware-logger": "3.775.0", - "@aws-sdk/middleware-recursion-detection": "3.775.0", - "@aws-sdk/middleware-user-agent": "3.787.0", - "@aws-sdk/region-config-resolver": "3.775.0", - "@aws-sdk/types": "3.775.0", - "@aws-sdk/util-endpoints": "3.787.0", - "@aws-sdk/util-user-agent-browser": "3.775.0", - "@aws-sdk/util-user-agent-node": "3.787.0", - "@smithy/config-resolver": "^4.1.0", - "@smithy/core": "^3.2.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/credential-provider-node": "3.817.0", + "@aws-sdk/middleware-endpoint-discovery": "3.808.0", + "@aws-sdk/middleware-host-header": "3.804.0", + "@aws-sdk/middleware-logger": "3.804.0", + "@aws-sdk/middleware-recursion-detection": "3.804.0", + "@aws-sdk/middleware-user-agent": "3.816.0", + "@aws-sdk/region-config-resolver": "3.808.0", + "@aws-sdk/types": "3.804.0", + "@aws-sdk/util-endpoints": "3.808.0", + "@aws-sdk/util-user-agent-browser": "3.804.0", + "@aws-sdk/util-user-agent-node": "3.816.0", + "@smithy/config-resolver": "^4.1.2", + "@smithy/core": "^3.3.3", "@smithy/fetch-http-handler": "^5.0.2", "@smithy/hash-node": "^4.0.2", "@smithy/invalid-dependency": "^4.0.2", "@smithy/middleware-content-length": "^4.0.2", - "@smithy/middleware-endpoint": "^4.1.0", - "@smithy/middleware-retry": "^4.1.0", - "@smithy/middleware-serde": "^4.0.3", + "@smithy/middleware-endpoint": "^4.1.6", + "@smithy/middleware-retry": "^4.1.7", + "@smithy/middleware-serde": "^4.0.5", "@smithy/middleware-stack": "^4.0.2", - "@smithy/node-config-provider": "^4.0.2", + "@smithy/node-config-provider": "^4.1.1", "@smithy/node-http-handler": "^4.0.4", "@smithy/protocol-http": "^5.1.0", - "@smithy/smithy-client": "^4.2.0", + "@smithy/smithy-client": "^4.2.6", "@smithy/types": "^4.2.0", "@smithy/url-parser": "^4.0.2", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", - "@smithy/util-defaults-mode-browser": "^4.0.8", - "@smithy/util-defaults-mode-node": "^4.0.8", - "@smithy/util-endpoints": "^3.0.2", + "@smithy/util-defaults-mode-browser": "^4.0.14", + "@smithy/util-defaults-mode-node": "^4.0.14", + "@smithy/util-endpoints": "^3.0.4", "@smithy/util-middleware": "^4.0.2", - "@smithy/util-retry": "^4.0.2", + "@smithy/util-retry": "^4.0.3", "@smithy/util-utf8": "^4.0.0", "@smithy/util-waiter": "^4.0.3", "@types/uuid": "^9.0.1", @@ -593,48 +618,48 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@aws-sdk/client-sso": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.787.0.tgz", - "integrity": "sha512-L8R+Mh258G0DC73ktpSVrG4TT9i2vmDLecARTDR/4q5sRivdDQSL5bUp3LKcK80Bx+FRw3UETIlX6mYMLL9PJQ==", + "version": "3.817.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.817.0.tgz", + "integrity": "sha512-fCh5rUHmWmWDvw70NNoWpE5+BRdtNi45kDnIoeoszqVg7UKF79SlG+qYooUT52HKCgDNHqgbWaXxMOSqd2I/OQ==", "dev": true, "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/core": "3.775.0", - "@aws-sdk/middleware-host-header": "3.775.0", - "@aws-sdk/middleware-logger": "3.775.0", - "@aws-sdk/middleware-recursion-detection": "3.775.0", - "@aws-sdk/middleware-user-agent": "3.787.0", - "@aws-sdk/region-config-resolver": "3.775.0", - "@aws-sdk/types": "3.775.0", - "@aws-sdk/util-endpoints": "3.787.0", - "@aws-sdk/util-user-agent-browser": "3.775.0", - "@aws-sdk/util-user-agent-node": "3.787.0", - "@smithy/config-resolver": "^4.1.0", - "@smithy/core": "^3.2.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/middleware-host-header": "3.804.0", + "@aws-sdk/middleware-logger": "3.804.0", + "@aws-sdk/middleware-recursion-detection": "3.804.0", + "@aws-sdk/middleware-user-agent": "3.816.0", + "@aws-sdk/region-config-resolver": "3.808.0", + "@aws-sdk/types": "3.804.0", + "@aws-sdk/util-endpoints": "3.808.0", + "@aws-sdk/util-user-agent-browser": "3.804.0", + "@aws-sdk/util-user-agent-node": "3.816.0", + "@smithy/config-resolver": "^4.1.2", + "@smithy/core": "^3.3.3", "@smithy/fetch-http-handler": "^5.0.2", "@smithy/hash-node": "^4.0.2", "@smithy/invalid-dependency": "^4.0.2", "@smithy/middleware-content-length": "^4.0.2", - "@smithy/middleware-endpoint": "^4.1.0", - "@smithy/middleware-retry": "^4.1.0", - "@smithy/middleware-serde": "^4.0.3", + "@smithy/middleware-endpoint": "^4.1.6", + "@smithy/middleware-retry": "^4.1.7", + "@smithy/middleware-serde": "^4.0.5", "@smithy/middleware-stack": "^4.0.2", - "@smithy/node-config-provider": "^4.0.2", + "@smithy/node-config-provider": "^4.1.1", "@smithy/node-http-handler": "^4.0.4", "@smithy/protocol-http": "^5.1.0", - "@smithy/smithy-client": "^4.2.0", + "@smithy/smithy-client": "^4.2.6", "@smithy/types": "^4.2.0", "@smithy/url-parser": "^4.0.2", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", - "@smithy/util-defaults-mode-browser": "^4.0.8", - "@smithy/util-defaults-mode-node": "^4.0.8", - "@smithy/util-endpoints": "^3.0.2", + "@smithy/util-defaults-mode-browser": "^4.0.14", + "@smithy/util-defaults-mode-node": "^4.0.14", + "@smithy/util-endpoints": "^3.0.4", "@smithy/util-middleware": "^4.0.2", - "@smithy/util-retry": "^4.0.2", + "@smithy/util-retry": "^4.0.3", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" }, @@ -643,14 +668,14 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@aws-sdk/credential-provider-env": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.775.0.tgz", - "integrity": "sha512-6ESVxwCbGm7WZ17kY1fjmxQud43vzJFoLd4bmlR+idQSWdqlzGDYdcfzpjDKTcivdtNrVYmFvcH1JBUwCRAZhw==", + "version": "3.816.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.816.0.tgz", + "integrity": "sha512-wUJZwRLe+SxPxRV9AENYBLrJZRrNIo+fva7ZzejsC83iz7hdfq6Rv6B/aHEdPwG/nQC4+q7UUvcRPlomyrpsBA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "3.775.0", - "@aws-sdk/types": "3.775.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/types": "3.804.0", "@smithy/property-provider": "^4.0.2", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" @@ -660,21 +685,21 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.787.0.tgz", - "integrity": "sha512-hc2taRoDlXn2uuNuHWDJljVWYrp3r9JF1a/8XmOAZhVUNY+ImeeStylHXhXXKEA4JOjW+5PdJj0f1UDkVCHJiQ==", + "version": "3.817.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.817.0.tgz", + "integrity": "sha512-kyEwbQyuXE+phWVzloMdkFv6qM6NOon+asMXY5W0fhDKwBz9zQLObDRWBrvQX9lmqq8BbDL1sCfZjOh82Y+RFw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "3.775.0", - "@aws-sdk/credential-provider-env": "3.775.0", - "@aws-sdk/credential-provider-http": "3.775.0", - "@aws-sdk/credential-provider-process": "3.775.0", - "@aws-sdk/credential-provider-sso": "3.787.0", - "@aws-sdk/credential-provider-web-identity": "3.787.0", - "@aws-sdk/nested-clients": "3.787.0", - "@aws-sdk/types": "3.775.0", - "@smithy/credential-provider-imds": "^4.0.2", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/credential-provider-env": "3.816.0", + "@aws-sdk/credential-provider-http": "3.816.0", + "@aws-sdk/credential-provider-process": "3.816.0", + "@aws-sdk/credential-provider-sso": "3.817.0", + "@aws-sdk/credential-provider-web-identity": "3.817.0", + "@aws-sdk/nested-clients": "3.817.0", + "@aws-sdk/types": "3.804.0", + "@smithy/credential-provider-imds": "^4.0.4", "@smithy/property-provider": "^4.0.2", "@smithy/shared-ini-file-loader": "^4.0.2", "@smithy/types": "^4.2.0", @@ -685,20 +710,20 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@aws-sdk/credential-provider-node": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.787.0.tgz", - "integrity": "sha512-JioVi44B1vDMaK2CdzqimwvJD3uzvzbQhaEWXsGMBcMcNHajXAXf08EF50JG3ZhLrhhUsT1ObXpbTaPINOhh+g==", + "version": "3.817.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.817.0.tgz", + "integrity": "sha512-b5mz7av0Lhavs1Bz3Zb+jrs0Pki93+8XNctnVO0drBW98x1fM4AR38cWvGbM/w9F9Q0/WEH3TinkmrMPrP4T/w==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/credential-provider-env": "3.775.0", - "@aws-sdk/credential-provider-http": "3.775.0", - "@aws-sdk/credential-provider-ini": "3.787.0", - "@aws-sdk/credential-provider-process": "3.775.0", - "@aws-sdk/credential-provider-sso": "3.787.0", - "@aws-sdk/credential-provider-web-identity": "3.787.0", - "@aws-sdk/types": "3.775.0", - "@smithy/credential-provider-imds": "^4.0.2", + "@aws-sdk/credential-provider-env": "3.816.0", + "@aws-sdk/credential-provider-http": "3.816.0", + "@aws-sdk/credential-provider-ini": "3.817.0", + "@aws-sdk/credential-provider-process": "3.816.0", + "@aws-sdk/credential-provider-sso": "3.817.0", + "@aws-sdk/credential-provider-web-identity": "3.817.0", + "@aws-sdk/types": "3.804.0", + "@smithy/credential-provider-imds": "^4.0.4", "@smithy/property-provider": "^4.0.2", "@smithy/shared-ini-file-loader": "^4.0.2", "@smithy/types": "^4.2.0", @@ -709,14 +734,14 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@aws-sdk/credential-provider-process": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.775.0.tgz", - "integrity": "sha512-A6k68H9rQp+2+7P7SGO90Csw6nrUEm0Qfjpn9Etc4EboZhhCLs9b66umUsTsSBHus4FDIe5JQxfCUyt1wgNogg==", + "version": "3.816.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.816.0.tgz", + "integrity": "sha512-9Tm+AxMoV2Izvl5b9tyMQRbBwaex8JP06HN7ZeCXgC5sAsSN+o8dsThnEhf8jKN+uBpT6CLWKN1TXuUMrAmW1A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "3.775.0", - "@aws-sdk/types": "3.775.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/types": "3.804.0", "@smithy/property-provider": "^4.0.2", "@smithy/shared-ini-file-loader": "^4.0.2", "@smithy/types": "^4.2.0", @@ -727,16 +752,16 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@aws-sdk/credential-provider-sso": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.787.0.tgz", - "integrity": "sha512-fHc08bsvwm4+dEMEQKnQ7c1irEQmmxbgS+Fq41y09pPvPh31nAhoMcjBSTWAaPHvvsRbTYvmP4Mf12ZGr8/nfg==", + "version": "3.817.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.817.0.tgz", + "integrity": "sha512-gFUAW3VmGvdnueK1bh6TOcRX+j99Xm0men1+gz3cA4RE+rZGNy1Qjj8YHlv0hPwI9OnTPZquvPzA5fkviGREWg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/client-sso": "3.787.0", - "@aws-sdk/core": "3.775.0", - "@aws-sdk/token-providers": "3.787.0", - "@aws-sdk/types": "3.775.0", + "@aws-sdk/client-sso": "3.817.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/token-providers": "3.817.0", + "@aws-sdk/types": "3.804.0", "@smithy/property-provider": "^4.0.2", "@smithy/shared-ini-file-loader": "^4.0.2", "@smithy/types": "^4.2.0", @@ -747,15 +772,15 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@aws-sdk/credential-provider-web-identity": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.787.0.tgz", - "integrity": "sha512-SobmCwNbk6TfEsF283mZPQEI5vV2j6eY5tOCj8Er4Lzraxu9fBPADV+Bib2A8F6jlB1lMPJzOuDCbEasSt/RIw==", + "version": "3.817.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.817.0.tgz", + "integrity": "sha512-A2kgkS9g6NY0OMT2f2EdXHpL17Ym81NhbGnQ8bRXPqESIi7TFypFD2U6osB2VnsFv+MhwM+Ke4PKXSmLun22/A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "3.775.0", - "@aws-sdk/nested-clients": "3.787.0", - "@aws-sdk/types": "3.775.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/nested-clients": "3.817.0", + "@aws-sdk/types": "3.804.0", "@smithy/property-provider": "^4.0.2", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" @@ -765,13 +790,13 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@aws-sdk/middleware-host-header": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.775.0.tgz", - "integrity": "sha512-tkSegM0Z6WMXpLB8oPys/d+umYIocvO298mGvcMCncpRl77L9XkvSLJIFzaHes+o7djAgIduYw8wKIMStFss2w==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.804.0.tgz", + "integrity": "sha512-bum1hLVBrn2lJCi423Z2fMUYtsbkGI2s4N+2RI2WSjvbaVyMSv/WcejIrjkqiiMR+2Y7m5exgoKeg4/TODLDPQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.775.0", + "@aws-sdk/types": "3.804.0", "@smithy/protocol-http": "^5.1.0", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" @@ -781,13 +806,13 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@aws-sdk/middleware-logger": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.775.0.tgz", - "integrity": "sha512-FaxO1xom4MAoUJsldmR92nT1G6uZxTdNYOFYtdHfd6N2wcNaTuxgjIvqzg5y7QIH9kn58XX/dzf1iTjgqUStZw==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.804.0.tgz", + "integrity": "sha512-w/qLwL3iq0KOPQNat0Kb7sKndl9BtceigINwBU7SpkYWX9L/Lem6f8NPEKrC9Tl4wDBht3Yztub4oRTy/horJA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.775.0", + "@aws-sdk/types": "3.804.0", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" }, @@ -796,13 +821,13 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@aws-sdk/middleware-recursion-detection": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.775.0.tgz", - "integrity": "sha512-GLCzC8D0A0YDG5u3F5U03Vb9j5tcOEFhr8oc6PDk0k0vm5VwtZOE6LvK7hcCSoAB4HXyOUM0sQuXrbaAh9OwXA==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.804.0.tgz", + "integrity": "sha512-zqHOrvLRdsUdN/ehYfZ9Tf8svhbiLLz5VaWUz22YndFv6m9qaAcijkpAOlKexsv3nLBMJdSdJ6GUTAeIy3BZzw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.775.0", + "@aws-sdk/types": "3.804.0", "@smithy/protocol-http": "^5.1.0", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" @@ -812,16 +837,16 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@aws-sdk/middleware-user-agent": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.787.0.tgz", - "integrity": "sha512-Lnfj8SmPLYtrDFthNIaNj66zZsBCam+E4XiUDr55DIHTGstH6qZ/q6vg0GfbukxwSmUcGMwSR4Qbn8rb8yd77g==", + "version": "3.816.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.816.0.tgz", + "integrity": "sha512-bHRSlWZ0xDsFR8E2FwDb//0Ff6wMkVx4O+UKsfyNlAbtqCiiHRt5ANNfKPafr95cN2CCxLxiPvFTFVblQM5TsQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "3.775.0", - "@aws-sdk/types": "3.775.0", - "@aws-sdk/util-endpoints": "3.787.0", - "@smithy/core": "^3.2.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/types": "3.804.0", + "@aws-sdk/util-endpoints": "3.808.0", + "@smithy/core": "^3.3.3", "@smithy/protocol-http": "^5.1.0", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" @@ -831,14 +856,15 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@aws-sdk/token-providers": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.787.0.tgz", - "integrity": "sha512-d7/NIqxq308Zg0RPMNrmn0QvzniL4Hx8Qdwzr6YZWLYAbUSvZYS2ppLR3BFWSkV6SsTJUx8BuDaj3P8vttkrog==", + "version": "3.817.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.817.0.tgz", + "integrity": "sha512-CYN4/UO0VaqyHf46ogZzNrVX7jI3/CfiuktwKlwtpKA6hjf2+ivfgHSKzPpgPBcSEfiibA/26EeLuMnB6cpSrQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/nested-clients": "3.787.0", - "@aws-sdk/types": "3.775.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/nested-clients": "3.817.0", + "@aws-sdk/types": "3.804.0", "@smithy/property-provider": "^4.0.2", "@smithy/shared-ini-file-loader": "^4.0.2", "@smithy/types": "^4.2.0", @@ -849,9 +875,9 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@aws-sdk/types": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.775.0.tgz", - "integrity": "sha512-ZoGKwa4C9fC9Av6bdfqcW6Ix5ot05F/S4VxWR2nHuMv7hzfmAjTOcUiWT7UR4hM/U0whf84VhDtXN/DWAk52KA==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.804.0.tgz", + "integrity": "sha512-A9qnsy9zQ8G89vrPPlNG9d1d8QcKRGqJKqwyGgS0dclJpwy6d1EWgQLIolKPl6vcFpLoe6avLOLxr+h8ur5wpg==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -863,15 +889,15 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@aws-sdk/util-endpoints": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.787.0.tgz", - "integrity": "sha512-fd3zkiOkwnbdbN0Xp9TsP5SWrmv0SpT70YEdbb8wAj2DWQwiCmFszaSs+YCvhoCdmlR3Wl9Spu0pGpSAGKeYvQ==", + "version": "3.808.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.808.0.tgz", + "integrity": "sha512-N6Lic98uc4ADB7fLWlzx+1uVnq04VgVjngZvwHoujcRg9YDhIg9dUDiTzD5VZv13g1BrPYmvYP1HhsildpGV6w==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.775.0", + "@aws-sdk/types": "3.804.0", "@smithy/types": "^4.2.0", - "@smithy/util-endpoints": "^3.0.2", + "@smithy/util-endpoints": "^3.0.4", "tslib": "^2.6.2" }, "engines": { @@ -879,28 +905,28 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@aws-sdk/util-user-agent-browser": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.775.0.tgz", - "integrity": "sha512-txw2wkiJmZKVdDbscK7VBK+u+TJnRtlUjRTLei+elZg2ADhpQxfVAQl436FUeIv6AhB/oRHW6/K/EAGXUSWi0A==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.804.0.tgz", + "integrity": "sha512-KfW6T6nQHHM/vZBBdGn6fMyG/MgX5lq82TDdX4HRQRRuHKLgBWGpKXqqvBwqIaCdXwWHgDrg2VQups6GqOWW2A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.775.0", + "@aws-sdk/types": "3.804.0", "@smithy/types": "^4.2.0", "bowser": "^2.11.0", "tslib": "^2.6.2" } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.787.0.tgz", - "integrity": "sha512-mG7Lz8ydfG4SF9e8WSXiPQ/Lsn3n8A5B5jtPROidafi06I3ckV2WxyMLdwG14m919NoS6IOfWHyRGSqWIwbVKA==", + "version": "3.816.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.816.0.tgz", + "integrity": "sha512-Q6dxmuj4hL7pudhrneWEQ7yVHIQRBFr0wqKLF1opwOi1cIePuoEbPyJ2jkel6PDEv1YMfvsAKaRshp6eNA8VHg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/middleware-user-agent": "3.787.0", - "@aws-sdk/types": "3.775.0", - "@smithy/node-config-provider": "^4.0.2", + "@aws-sdk/middleware-user-agent": "3.816.0", + "@aws-sdk/types": "3.804.0", + "@smithy/node-config-provider": "^4.1.1", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" }, @@ -917,13 +943,13 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@smithy/abort-controller": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.0.2.tgz", - "integrity": "sha512-Sl/78VDtgqKxN2+1qduaVE140XF+Xg+TafkncspwM4jFP/LHr76ZHmIY/y3V1M0mMLNk+Je6IGbzxy23RSToMw==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.0.3.tgz", + "integrity": "sha512-AqXFf6DXnuRBXy4SoK/n1mfgHaKaq36bmkphmD1KO0nHq6xK/g9KHSW4HEsPQUBCGdIEfuJifGHwxFXPIFay9Q==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -931,16 +957,16 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@smithy/config-resolver": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-4.1.0.tgz", - "integrity": "sha512-8smPlwhga22pwl23fM5ew4T9vfLUCeFXlcqNOCD5M5h8VmNPNUE9j6bQSuRXpDSV11L/E/SwEBQuW8hr6+nS1A==", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-4.1.3.tgz", + "integrity": "sha512-N5e7ofiyYDmHxnPnqF8L4KtsbSDwyxFRfDK9bp1d9OyPO4ytRLd0/XxCqi5xVaaqB65v4woW8uey6jND6zxzxQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/node-config-provider": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/node-config-provider": "^4.1.2", + "@smithy/types": "^4.3.0", "@smithy/util-config-provider": "^4.0.0", - "@smithy/util-middleware": "^4.0.2", + "@smithy/util-middleware": "^4.0.3", "tslib": "^2.6.2" }, "engines": { @@ -948,16 +974,16 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@smithy/credential-provider-imds": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-4.0.2.tgz", - "integrity": "sha512-32lVig6jCaWBHnY+OEQ6e6Vnt5vDHaLiydGrwYMW9tPqO688hPGTYRamYJ1EptxEC2rAwJrHWmPoKRBl4iTa8w==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-4.0.5.tgz", + "integrity": "sha512-saEAGwrIlkb9XxX/m5S5hOtzjoJPEK6Qw2f9pYTbIsMPOFyGSXBBTw95WbOyru8A1vIS2jVCCU1Qhz50QWG3IA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/node-config-provider": "^4.0.2", - "@smithy/property-provider": "^4.0.2", - "@smithy/types": "^4.2.0", - "@smithy/url-parser": "^4.0.2", + "@smithy/node-config-provider": "^4.1.2", + "@smithy/property-provider": "^4.0.3", + "@smithy/types": "^4.3.0", + "@smithy/url-parser": "^4.0.3", "tslib": "^2.6.2" }, "engines": { @@ -965,15 +991,15 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@smithy/fetch-http-handler": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.0.2.tgz", - "integrity": "sha512-+9Dz8sakS9pe7f2cBocpJXdeVjMopUDLgZs1yWeu7h++WqSbjUYv/JAJwKwXw1HV6gq1jyWjxuyn24E2GhoEcQ==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.0.3.tgz", + "integrity": "sha512-yBZwavI31roqTndNI7ONHqesfH01JmjJK6L3uUpZAhyAmr86LN5QiPzfyZGIxQmed8VEK2NRSQT3/JX5V1njfQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/protocol-http": "^5.1.0", - "@smithy/querystring-builder": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/protocol-http": "^5.1.1", + "@smithy/querystring-builder": "^4.0.3", + "@smithy/types": "^4.3.0", "@smithy/util-base64": "^4.0.0", "tslib": "^2.6.2" }, @@ -982,13 +1008,13 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@smithy/hash-node": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-4.0.2.tgz", - "integrity": "sha512-VnTpYPnRUE7yVhWozFdlxcYknv9UN7CeOqSrMH+V877v4oqtVYuoqhIhtSjmGPvYrYnAkaM61sLMKHvxL138yg==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-4.0.3.tgz", + "integrity": "sha512-W5Uhy6v/aYrgtjh9y0YP332gIQcwccQ+EcfWhllL0B9rPae42JngTTUpb8W6wuxaNFzqps4xq5klHckSSOy5fw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" @@ -1012,13 +1038,13 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@smithy/invalid-dependency": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-4.0.2.tgz", - "integrity": "sha512-GatB4+2DTpgWPday+mnUkoumP54u/MDM/5u44KF9hIu8jF0uafZtQLcdfIKkIcUNuF/fBojpLEHZS/56JqPeXQ==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-4.0.3.tgz", + "integrity": "sha512-1Bo8Ur1ZGqxvwTqBmv6DZEn0rXtwJGeqiiO2/JFcCtz3nBakOqeXbJBElXJMMzd0ghe8+eB6Dkw98nMYctgizg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -1026,14 +1052,14 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@smithy/middleware-content-length": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-4.0.2.tgz", - "integrity": "sha512-hAfEXm1zU+ELvucxqQ7I8SszwQ4znWMbNv6PLMndN83JJN41EPuS93AIyh2N+gJ6x8QFhzSO6b7q2e6oClDI8A==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-4.0.3.tgz", + "integrity": "sha512-NE/Zph4BP5u16bzYq2csq9qD0T6UBLeg4AuNrwNJ7Gv9uLYaGEgelZUOdRndGdMGcUfSGvNlXGb2aA2hPCwJ6g==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/protocol-http": "^5.1.0", - "@smithy/types": "^4.2.0", + "@smithy/protocol-http": "^5.1.1", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -1041,19 +1067,19 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@smithy/middleware-endpoint": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.1.0.tgz", - "integrity": "sha512-xhLimgNCbCzsUppRTGXWkZywksuTThxaIB0HwbpsVLY5sceac4e1TZ/WKYqufQLaUy+gUSJGNdwD2jo3cXL0iA==", + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.1.7.tgz", + "integrity": "sha512-KDzM7Iajo6K7eIWNNtukykRT4eWwlHjCEsULZUaSfi/SRSBK8BPRqG5FsVfp58lUxcvre8GT8AIPIqndA0ERKw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/core": "^3.2.0", - "@smithy/middleware-serde": "^4.0.3", - "@smithy/node-config-provider": "^4.0.2", - "@smithy/shared-ini-file-loader": "^4.0.2", - "@smithy/types": "^4.2.0", - "@smithy/url-parser": "^4.0.2", - "@smithy/util-middleware": "^4.0.2", + "@smithy/core": "^3.4.0", + "@smithy/middleware-serde": "^4.0.6", + "@smithy/node-config-provider": "^4.1.2", + "@smithy/shared-ini-file-loader": "^4.0.3", + "@smithy/types": "^4.3.0", + "@smithy/url-parser": "^4.0.3", + "@smithy/util-middleware": "^4.0.3", "tslib": "^2.6.2" }, "engines": { @@ -1061,19 +1087,19 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@smithy/middleware-retry": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-4.1.0.tgz", - "integrity": "sha512-2zAagd1s6hAaI/ap6SXi5T3dDwBOczOMCSkkYzktqN1+tzbk1GAsHNAdo/1uzxz3Ky02jvZQwbi/vmDA6z4Oyg==", + "version": "4.1.8", + "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-4.1.8.tgz", + "integrity": "sha512-e2OtQgFzzlSG0uCjcJmi02QuFSRTrpT11Eh2EcqqDFy7DYriteHZJkkf+4AsxsrGDugAtPFcWBz1aq06sSX5fQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/node-config-provider": "^4.0.2", - "@smithy/protocol-http": "^5.1.0", - "@smithy/service-error-classification": "^4.0.2", - "@smithy/smithy-client": "^4.2.0", - "@smithy/types": "^4.2.0", - "@smithy/util-middleware": "^4.0.2", - "@smithy/util-retry": "^4.0.2", + "@smithy/node-config-provider": "^4.1.2", + "@smithy/protocol-http": "^5.1.1", + "@smithy/service-error-classification": "^4.0.4", + "@smithy/smithy-client": "^4.3.0", + "@smithy/types": "^4.3.0", + "@smithy/util-middleware": "^4.0.3", + "@smithy/util-retry": "^4.0.4", "tslib": "^2.6.2", "uuid": "^9.0.1" }, @@ -1082,13 +1108,14 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@smithy/middleware-serde": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.0.3.tgz", - "integrity": "sha512-rfgDVrgLEVMmMn0BI8O+8OVr6vXzjV7HZj57l0QxslhzbvVfikZbVfBVthjLHqib4BW44QhcIgJpvebHlRaC9A==", + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.0.6.tgz", + "integrity": "sha512-YECyl7uNII+jCr/9qEmCu8xYL79cU0fqjo0qxpcVIU18dAPHam/iYwcknAu4Jiyw1uN+sAx7/SMf/Kmef/Jjsg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/protocol-http": "^5.1.1", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -1096,13 +1123,13 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@smithy/middleware-stack": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-4.0.2.tgz", - "integrity": "sha512-eSPVcuJJGVYrFYu2hEq8g8WWdJav3sdrI4o2c6z/rjnYDd3xH9j9E7deZQCzFn4QvGPouLngH3dQ+QVTxv5bOQ==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-4.0.3.tgz", + "integrity": "sha512-baeV7t4jQfQtFxBADFmnhmqBmqR38dNU5cvEgHcMK/Kp3D3bEI0CouoX2Sr/rGuntR+Eg0IjXdxnGGTc6SbIkw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -1110,15 +1137,15 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@smithy/node-config-provider": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.0.2.tgz", - "integrity": "sha512-WgCkILRZfJwJ4Da92a6t3ozN/zcvYyJGUTmfGbgS/FkCcoCjl7G4FJaCDN1ySdvLvemnQeo25FdkyMSTSwulsw==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.1.2.tgz", + "integrity": "sha512-SUvNup8iU1v7fmM8XPk+27m36udmGCfSz+VZP5Gb0aJ3Ne0X28K/25gnsrg3X1rWlhcnhzNUUysKW/Ied46ivQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/property-provider": "^4.0.2", - "@smithy/shared-ini-file-loader": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/property-provider": "^4.0.3", + "@smithy/shared-ini-file-loader": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -1126,16 +1153,16 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@smithy/node-http-handler": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.0.4.tgz", - "integrity": "sha512-/mdqabuAT3o/ihBGjL94PUbTSPSRJ0eeVTdgADzow0wRJ0rN4A27EOrtlK56MYiO1fDvlO3jVTCxQtQmK9dZ1g==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.0.5.tgz", + "integrity": "sha512-T7QglZC1vS7SPT44/1qSIAQEx5bFKb3LfO6zw/o4Xzt1eC5HNoH1TkS4lMYA9cWFbacUhx4hRl/blLun4EOCkg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/abort-controller": "^4.0.2", - "@smithy/protocol-http": "^5.1.0", - "@smithy/querystring-builder": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/abort-controller": "^4.0.3", + "@smithy/protocol-http": "^5.1.1", + "@smithy/querystring-builder": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -1143,13 +1170,13 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@smithy/protocol-http": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.0.tgz", - "integrity": "sha512-KxAOL1nUNw2JTYrtviRRjEnykIDhxc84qMBzxvu1MUfQfHTuBlCG7PA6EdVwqpJjH7glw7FqQoFxUJSyBQgu7g==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.1.tgz", + "integrity": "sha512-Vsay2mzq05DwNi9jK01yCFtfvu9HimmgC7a4HTs7lhX12Sx8aWsH0mfz6q/02yspSp+lOB+Q2HJwi4IV2GKz7A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -1157,13 +1184,13 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@smithy/querystring-builder": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.0.2.tgz", - "integrity": "sha512-NTOs0FwHw1vimmQM4ebh+wFQvOwkEf/kQL6bSM1Lock+Bv4I89B3hGYoUEPkmvYPkDKyp5UdXJYu+PoTQ3T31Q==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.0.3.tgz", + "integrity": "sha512-UUzIWMVfPmDZcOutk2/r1vURZqavvQW0OHvgsyNV0cKupChvqg+/NKPRMaMEe+i8tP96IthMFeZOZWpV+E4RAw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "@smithy/util-uri-escape": "^4.0.0", "tslib": "^2.6.2" }, @@ -1172,13 +1199,13 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@smithy/querystring-parser": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-4.0.2.tgz", - "integrity": "sha512-v6w8wnmZcVXjfVLjxw8qF7OwESD9wnpjp0Dqry/Pod0/5vcEA3qxCr+BhbOHlxS8O+29eLpT3aagxXGwIoEk7Q==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-4.0.3.tgz", + "integrity": "sha512-K5M4ZJQpFCblOJ5Oyw7diICpFg1qhhR47m2/5Ef1PhGE19RaIZf50tjYFrxa6usqcuXyTiFPGo4d1geZdH4YcQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -1186,26 +1213,26 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@smithy/service-error-classification": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-4.0.2.tgz", - "integrity": "sha512-LA86xeFpTKn270Hbkixqs5n73S+LVM0/VZco8dqd+JT75Dyx3Lcw/MraL7ybjmz786+160K8rPOmhsq0SocoJQ==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-4.0.4.tgz", + "integrity": "sha512-W5ScbQ1bTzgH91kNEE2CvOzM4gXlDOqdow4m8vMFSIXCel2scbHwjflpVNnC60Y3F1m5i7w2gQg9lSnR+JsJAA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0" + "@smithy/types": "^4.3.0" }, "engines": { "node": ">=18.0.0" } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@smithy/shared-ini-file-loader": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.0.2.tgz", - "integrity": "sha512-J9/gTWBGVuFZ01oVA6vdb4DAjf1XbDhK6sLsu3OS9qmLrS6KB5ygpeHiM3miIbj1qgSJ96GYszXFWv6ErJ8QEw==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.0.3.tgz", + "integrity": "sha512-vHwlrqhZGIoLwaH8vvIjpHnloShqdJ7SUPNM2EQtEox+yEDFTVQ7E+DLZ+6OhnYEgFUwPByJyz6UZaOu2tny6A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -1213,18 +1240,18 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@smithy/smithy-client": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.2.0.tgz", - "integrity": "sha512-Qs65/w30pWV7LSFAez9DKy0Koaoh3iHhpcpCCJ4waj/iqwsuSzJna2+vYwq46yBaqO5ZbP9TjUsATUNxrKeBdw==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.3.0.tgz", + "integrity": "sha512-DNsRA38pN6tYHUjebmwD9e4KcgqTLldYQb2gC6K+oxXYdCTxPn6wV9+FvOa6wrU2FQEnGJoi+3GULzOTKck/tg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/core": "^3.2.0", - "@smithy/middleware-endpoint": "^4.1.0", - "@smithy/middleware-stack": "^4.0.2", - "@smithy/protocol-http": "^5.1.0", - "@smithy/types": "^4.2.0", - "@smithy/util-stream": "^4.2.0", + "@smithy/core": "^3.4.0", + "@smithy/middleware-endpoint": "^4.1.7", + "@smithy/middleware-stack": "^4.0.3", + "@smithy/protocol-http": "^5.1.1", + "@smithy/types": "^4.3.0", + "@smithy/util-stream": "^4.2.1", "tslib": "^2.6.2" }, "engines": { @@ -1232,9 +1259,9 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@smithy/types": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.2.0.tgz", - "integrity": "sha512-7eMk09zQKCO+E/ivsjQv+fDlOupcFUCSC/L2YUPgwhvowVGWbPQHjEFcmjt7QQ4ra5lyowS92SV53Zc6XD4+fg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.3.0.tgz", + "integrity": "sha512-+1iaIQHthDh9yaLhRzaoQxRk+l9xlk+JjMFxGRhNLz+m9vKOkjNeU8QuB4w3xvzHyVR/BVlp/4AXDHjoRIkfgQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -1245,14 +1272,14 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@smithy/url-parser": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-4.0.2.tgz", - "integrity": "sha512-Bm8n3j2ScqnT+kJaClSVCMeiSenK6jVAzZCNewsYWuZtnBehEz4r2qP0riZySZVfzB+03XZHJeqfmJDkeeSLiQ==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-4.0.3.tgz", + "integrity": "sha512-n5/DnosDu/tweOqUUNtUbu7eRIR4J/Wz9nL7V5kFYQQVb8VYdj7a4G5NJHCw6o21ul7CvZoJkOpdTnsQDLT0tQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/querystring-parser": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/querystring-parser": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -1315,15 +1342,15 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@smithy/util-defaults-mode-browser": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-4.0.8.tgz", - "integrity": "sha512-ZTypzBra+lI/LfTYZeop9UjoJhhGRTg3pxrNpfSTQLd3AJ37r2z4AXTKpq1rFXiiUIJsYyFgNJdjWRGP/cbBaQ==", + "version": "4.0.15", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-4.0.15.tgz", + "integrity": "sha512-bJJ/B8owQbHAflatSq92f9OcV8858DJBQF1Y3GRjB8psLyUjbISywszYPFw16beREHO/C3I3taW4VGH+tOuwrQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/property-provider": "^4.0.2", - "@smithy/smithy-client": "^4.2.0", - "@smithy/types": "^4.2.0", + "@smithy/property-provider": "^4.0.3", + "@smithy/smithy-client": "^4.3.0", + "@smithy/types": "^4.3.0", "bowser": "^2.11.0", "tslib": "^2.6.2" }, @@ -1332,18 +1359,18 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@smithy/util-defaults-mode-node": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-4.0.8.tgz", - "integrity": "sha512-Rgk0Jc/UDfRTzVthye/k2dDsz5Xxs9LZaKCNPgJTRyoyBoeiNCnHsYGOyu1PKN+sDyPnJzMOz22JbwxzBp9NNA==", + "version": "4.0.15", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-4.0.15.tgz", + "integrity": "sha512-8CUrEW2Ni5q+NmYkj8wsgkfqoP7l4ZquptFbq92yQE66xevc4SxqP2zH6tMtN158kgBqBDsZ+qlrRwXWOjCR8A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/config-resolver": "^4.1.0", - "@smithy/credential-provider-imds": "^4.0.2", - "@smithy/node-config-provider": "^4.0.2", - "@smithy/property-provider": "^4.0.2", - "@smithy/smithy-client": "^4.2.0", - "@smithy/types": "^4.2.0", + "@smithy/config-resolver": "^4.1.3", + "@smithy/credential-provider-imds": "^4.0.5", + "@smithy/node-config-provider": "^4.1.2", + "@smithy/property-provider": "^4.0.3", + "@smithy/smithy-client": "^4.3.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -1351,14 +1378,14 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@smithy/util-retry": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-4.0.2.tgz", - "integrity": "sha512-Qryc+QG+7BCpvjloFLQrmlSd0RsVRHejRXd78jNO3+oREueCjwG1CCEH1vduw/ZkM1U9TztwIKVIi3+8MJScGg==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-4.0.4.tgz", + "integrity": "sha512-Aoqr9W2jDYGrI6OxljN8VmLDQIGO4VdMAUKMf9RGqLG8hn6or+K41NEy1Y5dtum9q8F7e0obYAuKl2mt/GnpZg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/service-error-classification": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/service-error-classification": "^4.0.4", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -1366,15 +1393,15 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@smithy/util-stream": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.2.0.tgz", - "integrity": "sha512-Vj1TtwWnuWqdgQI6YTUF5hQ/0jmFiOYsc51CSMgj7QfyO+RF4EnT2HNjoviNlOOmgzgvf3f5yno+EiC4vrnaWQ==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.2.1.tgz", + "integrity": "sha512-W3IR0x5DY6iVtjj5p902oNhD+Bz7vs5S+p6tppbPa509rV9BdeXZjGuRSCtVEad9FA0Mba+tNUtUmtnSI1nwUw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/fetch-http-handler": "^5.0.2", - "@smithy/node-http-handler": "^4.0.4", - "@smithy/types": "^4.2.0", + "@smithy/fetch-http-handler": "^5.0.3", + "@smithy/node-http-handler": "^4.0.5", + "@smithy/types": "^4.3.0", "@smithy/util-base64": "^4.0.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-hex-encoding": "^4.0.0", @@ -1441,14 +1468,14 @@ } }, "node_modules/@aws-sdk/client-dynamodb/node_modules/@smithy/util-waiter": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-4.0.3.tgz", - "integrity": "sha512-JtaY3FxmD+te+KSI2FJuEcfNC9T/DGGVf551babM7fAaXhjJUt7oSYurH1Devxd2+BOSUACCgt3buinx4UnmEA==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-4.0.4.tgz", + "integrity": "sha512-73aeIvHjtSB6fd9I08iFaQIGTICKpLrI3EtlWAkStVENGo1ARMq9qdoD4QwkY0RUp6A409xlgbD9NCCfCF5ieg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/abort-controller": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/abort-controller": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -1456,27 +1483,27 @@ } }, "node_modules/@aws-sdk/client-lambda": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-lambda/-/client-lambda-3.787.0.tgz", - "integrity": "sha512-aPSg7YL7IpEaijsunAYtws/3dZl+VjyQ1wbv6RxdIfzww/35x31GSc6vD6paq8KC6lcns8wlli/0qCOl8Z9wZg==", + "version": "3.817.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-lambda/-/client-lambda-3.817.0.tgz", + "integrity": "sha512-ioPkmSSKAadRC/vrxs1pPBi5fG0IjxCEgNxPEwnOu6+QMFzbioYpzOIYzqY67j6dIFSUDlwxGxeyPuFqpJjg5A==", "dev": true, "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/core": "3.775.0", - "@aws-sdk/credential-provider-node": "3.787.0", - "@aws-sdk/middleware-host-header": "3.775.0", - "@aws-sdk/middleware-logger": "3.775.0", - "@aws-sdk/middleware-recursion-detection": "3.775.0", - "@aws-sdk/middleware-user-agent": "3.787.0", - "@aws-sdk/region-config-resolver": "3.775.0", - "@aws-sdk/types": "3.775.0", - "@aws-sdk/util-endpoints": "3.787.0", - "@aws-sdk/util-user-agent-browser": "3.775.0", - "@aws-sdk/util-user-agent-node": "3.787.0", - "@smithy/config-resolver": "^4.1.0", - "@smithy/core": "^3.2.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/credential-provider-node": "3.817.0", + "@aws-sdk/middleware-host-header": "3.804.0", + "@aws-sdk/middleware-logger": "3.804.0", + "@aws-sdk/middleware-recursion-detection": "3.804.0", + "@aws-sdk/middleware-user-agent": "3.816.0", + "@aws-sdk/region-config-resolver": "3.808.0", + "@aws-sdk/types": "3.804.0", + "@aws-sdk/util-endpoints": "3.808.0", + "@aws-sdk/util-user-agent-browser": "3.804.0", + "@aws-sdk/util-user-agent-node": "3.816.0", + "@smithy/config-resolver": "^4.1.2", + "@smithy/core": "^3.3.3", "@smithy/eventstream-serde-browser": "^4.0.2", "@smithy/eventstream-serde-config-resolver": "^4.1.0", "@smithy/eventstream-serde-node": "^4.0.2", @@ -1484,24 +1511,24 @@ "@smithy/hash-node": "^4.0.2", "@smithy/invalid-dependency": "^4.0.2", "@smithy/middleware-content-length": "^4.0.2", - "@smithy/middleware-endpoint": "^4.1.0", - "@smithy/middleware-retry": "^4.1.0", - "@smithy/middleware-serde": "^4.0.3", + "@smithy/middleware-endpoint": "^4.1.6", + "@smithy/middleware-retry": "^4.1.7", + "@smithy/middleware-serde": "^4.0.5", "@smithy/middleware-stack": "^4.0.2", - "@smithy/node-config-provider": "^4.0.2", + "@smithy/node-config-provider": "^4.1.1", "@smithy/node-http-handler": "^4.0.4", "@smithy/protocol-http": "^5.1.0", - "@smithy/smithy-client": "^4.2.0", + "@smithy/smithy-client": "^4.2.6", "@smithy/types": "^4.2.0", "@smithy/url-parser": "^4.0.2", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", - "@smithy/util-defaults-mode-browser": "^4.0.8", - "@smithy/util-defaults-mode-node": "^4.0.8", - "@smithy/util-endpoints": "^3.0.2", + "@smithy/util-defaults-mode-browser": "^4.0.14", + "@smithy/util-defaults-mode-node": "^4.0.14", + "@smithy/util-endpoints": "^3.0.4", "@smithy/util-middleware": "^4.0.2", - "@smithy/util-retry": "^4.0.2", + "@smithy/util-retry": "^4.0.3", "@smithy/util-stream": "^4.2.0", "@smithy/util-utf8": "^4.0.0", "@smithy/util-waiter": "^4.0.3", @@ -1593,48 +1620,48 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@aws-sdk/client-sso": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.787.0.tgz", - "integrity": "sha512-L8R+Mh258G0DC73ktpSVrG4TT9i2vmDLecARTDR/4q5sRivdDQSL5bUp3LKcK80Bx+FRw3UETIlX6mYMLL9PJQ==", + "version": "3.817.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.817.0.tgz", + "integrity": "sha512-fCh5rUHmWmWDvw70NNoWpE5+BRdtNi45kDnIoeoszqVg7UKF79SlG+qYooUT52HKCgDNHqgbWaXxMOSqd2I/OQ==", "dev": true, "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/core": "3.775.0", - "@aws-sdk/middleware-host-header": "3.775.0", - "@aws-sdk/middleware-logger": "3.775.0", - "@aws-sdk/middleware-recursion-detection": "3.775.0", - "@aws-sdk/middleware-user-agent": "3.787.0", - "@aws-sdk/region-config-resolver": "3.775.0", - "@aws-sdk/types": "3.775.0", - "@aws-sdk/util-endpoints": "3.787.0", - "@aws-sdk/util-user-agent-browser": "3.775.0", - "@aws-sdk/util-user-agent-node": "3.787.0", - "@smithy/config-resolver": "^4.1.0", - "@smithy/core": "^3.2.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/middleware-host-header": "3.804.0", + "@aws-sdk/middleware-logger": "3.804.0", + "@aws-sdk/middleware-recursion-detection": "3.804.0", + "@aws-sdk/middleware-user-agent": "3.816.0", + "@aws-sdk/region-config-resolver": "3.808.0", + "@aws-sdk/types": "3.804.0", + "@aws-sdk/util-endpoints": "3.808.0", + "@aws-sdk/util-user-agent-browser": "3.804.0", + "@aws-sdk/util-user-agent-node": "3.816.0", + "@smithy/config-resolver": "^4.1.2", + "@smithy/core": "^3.3.3", "@smithy/fetch-http-handler": "^5.0.2", "@smithy/hash-node": "^4.0.2", "@smithy/invalid-dependency": "^4.0.2", "@smithy/middleware-content-length": "^4.0.2", - "@smithy/middleware-endpoint": "^4.1.0", - "@smithy/middleware-retry": "^4.1.0", - "@smithy/middleware-serde": "^4.0.3", + "@smithy/middleware-endpoint": "^4.1.6", + "@smithy/middleware-retry": "^4.1.7", + "@smithy/middleware-serde": "^4.0.5", "@smithy/middleware-stack": "^4.0.2", - "@smithy/node-config-provider": "^4.0.2", + "@smithy/node-config-provider": "^4.1.1", "@smithy/node-http-handler": "^4.0.4", "@smithy/protocol-http": "^5.1.0", - "@smithy/smithy-client": "^4.2.0", + "@smithy/smithy-client": "^4.2.6", "@smithy/types": "^4.2.0", "@smithy/url-parser": "^4.0.2", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", - "@smithy/util-defaults-mode-browser": "^4.0.8", - "@smithy/util-defaults-mode-node": "^4.0.8", - "@smithy/util-endpoints": "^3.0.2", + "@smithy/util-defaults-mode-browser": "^4.0.14", + "@smithy/util-defaults-mode-node": "^4.0.14", + "@smithy/util-endpoints": "^3.0.4", "@smithy/util-middleware": "^4.0.2", - "@smithy/util-retry": "^4.0.2", + "@smithy/util-retry": "^4.0.3", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" }, @@ -1643,14 +1670,14 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@aws-sdk/credential-provider-env": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.775.0.tgz", - "integrity": "sha512-6ESVxwCbGm7WZ17kY1fjmxQud43vzJFoLd4bmlR+idQSWdqlzGDYdcfzpjDKTcivdtNrVYmFvcH1JBUwCRAZhw==", + "version": "3.816.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.816.0.tgz", + "integrity": "sha512-wUJZwRLe+SxPxRV9AENYBLrJZRrNIo+fva7ZzejsC83iz7hdfq6Rv6B/aHEdPwG/nQC4+q7UUvcRPlomyrpsBA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "3.775.0", - "@aws-sdk/types": "3.775.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/types": "3.804.0", "@smithy/property-provider": "^4.0.2", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" @@ -1660,21 +1687,21 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.787.0.tgz", - "integrity": "sha512-hc2taRoDlXn2uuNuHWDJljVWYrp3r9JF1a/8XmOAZhVUNY+ImeeStylHXhXXKEA4JOjW+5PdJj0f1UDkVCHJiQ==", + "version": "3.817.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.817.0.tgz", + "integrity": "sha512-kyEwbQyuXE+phWVzloMdkFv6qM6NOon+asMXY5W0fhDKwBz9zQLObDRWBrvQX9lmqq8BbDL1sCfZjOh82Y+RFw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "3.775.0", - "@aws-sdk/credential-provider-env": "3.775.0", - "@aws-sdk/credential-provider-http": "3.775.0", - "@aws-sdk/credential-provider-process": "3.775.0", - "@aws-sdk/credential-provider-sso": "3.787.0", - "@aws-sdk/credential-provider-web-identity": "3.787.0", - "@aws-sdk/nested-clients": "3.787.0", - "@aws-sdk/types": "3.775.0", - "@smithy/credential-provider-imds": "^4.0.2", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/credential-provider-env": "3.816.0", + "@aws-sdk/credential-provider-http": "3.816.0", + "@aws-sdk/credential-provider-process": "3.816.0", + "@aws-sdk/credential-provider-sso": "3.817.0", + "@aws-sdk/credential-provider-web-identity": "3.817.0", + "@aws-sdk/nested-clients": "3.817.0", + "@aws-sdk/types": "3.804.0", + "@smithy/credential-provider-imds": "^4.0.4", "@smithy/property-provider": "^4.0.2", "@smithy/shared-ini-file-loader": "^4.0.2", "@smithy/types": "^4.2.0", @@ -1685,20 +1712,20 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@aws-sdk/credential-provider-node": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.787.0.tgz", - "integrity": "sha512-JioVi44B1vDMaK2CdzqimwvJD3uzvzbQhaEWXsGMBcMcNHajXAXf08EF50JG3ZhLrhhUsT1ObXpbTaPINOhh+g==", + "version": "3.817.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.817.0.tgz", + "integrity": "sha512-b5mz7av0Lhavs1Bz3Zb+jrs0Pki93+8XNctnVO0drBW98x1fM4AR38cWvGbM/w9F9Q0/WEH3TinkmrMPrP4T/w==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/credential-provider-env": "3.775.0", - "@aws-sdk/credential-provider-http": "3.775.0", - "@aws-sdk/credential-provider-ini": "3.787.0", - "@aws-sdk/credential-provider-process": "3.775.0", - "@aws-sdk/credential-provider-sso": "3.787.0", - "@aws-sdk/credential-provider-web-identity": "3.787.0", - "@aws-sdk/types": "3.775.0", - "@smithy/credential-provider-imds": "^4.0.2", + "@aws-sdk/credential-provider-env": "3.816.0", + "@aws-sdk/credential-provider-http": "3.816.0", + "@aws-sdk/credential-provider-ini": "3.817.0", + "@aws-sdk/credential-provider-process": "3.816.0", + "@aws-sdk/credential-provider-sso": "3.817.0", + "@aws-sdk/credential-provider-web-identity": "3.817.0", + "@aws-sdk/types": "3.804.0", + "@smithy/credential-provider-imds": "^4.0.4", "@smithy/property-provider": "^4.0.2", "@smithy/shared-ini-file-loader": "^4.0.2", "@smithy/types": "^4.2.0", @@ -1709,14 +1736,14 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@aws-sdk/credential-provider-process": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.775.0.tgz", - "integrity": "sha512-A6k68H9rQp+2+7P7SGO90Csw6nrUEm0Qfjpn9Etc4EboZhhCLs9b66umUsTsSBHus4FDIe5JQxfCUyt1wgNogg==", + "version": "3.816.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.816.0.tgz", + "integrity": "sha512-9Tm+AxMoV2Izvl5b9tyMQRbBwaex8JP06HN7ZeCXgC5sAsSN+o8dsThnEhf8jKN+uBpT6CLWKN1TXuUMrAmW1A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "3.775.0", - "@aws-sdk/types": "3.775.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/types": "3.804.0", "@smithy/property-provider": "^4.0.2", "@smithy/shared-ini-file-loader": "^4.0.2", "@smithy/types": "^4.2.0", @@ -1727,16 +1754,16 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@aws-sdk/credential-provider-sso": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.787.0.tgz", - "integrity": "sha512-fHc08bsvwm4+dEMEQKnQ7c1irEQmmxbgS+Fq41y09pPvPh31nAhoMcjBSTWAaPHvvsRbTYvmP4Mf12ZGr8/nfg==", + "version": "3.817.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.817.0.tgz", + "integrity": "sha512-gFUAW3VmGvdnueK1bh6TOcRX+j99Xm0men1+gz3cA4RE+rZGNy1Qjj8YHlv0hPwI9OnTPZquvPzA5fkviGREWg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/client-sso": "3.787.0", - "@aws-sdk/core": "3.775.0", - "@aws-sdk/token-providers": "3.787.0", - "@aws-sdk/types": "3.775.0", + "@aws-sdk/client-sso": "3.817.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/token-providers": "3.817.0", + "@aws-sdk/types": "3.804.0", "@smithy/property-provider": "^4.0.2", "@smithy/shared-ini-file-loader": "^4.0.2", "@smithy/types": "^4.2.0", @@ -1747,15 +1774,15 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@aws-sdk/credential-provider-web-identity": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.787.0.tgz", - "integrity": "sha512-SobmCwNbk6TfEsF283mZPQEI5vV2j6eY5tOCj8Er4Lzraxu9fBPADV+Bib2A8F6jlB1lMPJzOuDCbEasSt/RIw==", + "version": "3.817.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.817.0.tgz", + "integrity": "sha512-A2kgkS9g6NY0OMT2f2EdXHpL17Ym81NhbGnQ8bRXPqESIi7TFypFD2U6osB2VnsFv+MhwM+Ke4PKXSmLun22/A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "3.775.0", - "@aws-sdk/nested-clients": "3.787.0", - "@aws-sdk/types": "3.775.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/nested-clients": "3.817.0", + "@aws-sdk/types": "3.804.0", "@smithy/property-provider": "^4.0.2", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" @@ -1765,13 +1792,13 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@aws-sdk/middleware-host-header": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.775.0.tgz", - "integrity": "sha512-tkSegM0Z6WMXpLB8oPys/d+umYIocvO298mGvcMCncpRl77L9XkvSLJIFzaHes+o7djAgIduYw8wKIMStFss2w==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.804.0.tgz", + "integrity": "sha512-bum1hLVBrn2lJCi423Z2fMUYtsbkGI2s4N+2RI2WSjvbaVyMSv/WcejIrjkqiiMR+2Y7m5exgoKeg4/TODLDPQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.775.0", + "@aws-sdk/types": "3.804.0", "@smithy/protocol-http": "^5.1.0", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" @@ -1781,13 +1808,13 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@aws-sdk/middleware-logger": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.775.0.tgz", - "integrity": "sha512-FaxO1xom4MAoUJsldmR92nT1G6uZxTdNYOFYtdHfd6N2wcNaTuxgjIvqzg5y7QIH9kn58XX/dzf1iTjgqUStZw==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.804.0.tgz", + "integrity": "sha512-w/qLwL3iq0KOPQNat0Kb7sKndl9BtceigINwBU7SpkYWX9L/Lem6f8NPEKrC9Tl4wDBht3Yztub4oRTy/horJA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.775.0", + "@aws-sdk/types": "3.804.0", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" }, @@ -1796,13 +1823,13 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@aws-sdk/middleware-recursion-detection": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.775.0.tgz", - "integrity": "sha512-GLCzC8D0A0YDG5u3F5U03Vb9j5tcOEFhr8oc6PDk0k0vm5VwtZOE6LvK7hcCSoAB4HXyOUM0sQuXrbaAh9OwXA==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.804.0.tgz", + "integrity": "sha512-zqHOrvLRdsUdN/ehYfZ9Tf8svhbiLLz5VaWUz22YndFv6m9qaAcijkpAOlKexsv3nLBMJdSdJ6GUTAeIy3BZzw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.775.0", + "@aws-sdk/types": "3.804.0", "@smithy/protocol-http": "^5.1.0", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" @@ -1812,16 +1839,16 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@aws-sdk/middleware-user-agent": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.787.0.tgz", - "integrity": "sha512-Lnfj8SmPLYtrDFthNIaNj66zZsBCam+E4XiUDr55DIHTGstH6qZ/q6vg0GfbukxwSmUcGMwSR4Qbn8rb8yd77g==", + "version": "3.816.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.816.0.tgz", + "integrity": "sha512-bHRSlWZ0xDsFR8E2FwDb//0Ff6wMkVx4O+UKsfyNlAbtqCiiHRt5ANNfKPafr95cN2CCxLxiPvFTFVblQM5TsQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "3.775.0", - "@aws-sdk/types": "3.775.0", - "@aws-sdk/util-endpoints": "3.787.0", - "@smithy/core": "^3.2.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/types": "3.804.0", + "@aws-sdk/util-endpoints": "3.808.0", + "@smithy/core": "^3.3.3", "@smithy/protocol-http": "^5.1.0", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" @@ -1831,14 +1858,15 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@aws-sdk/token-providers": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.787.0.tgz", - "integrity": "sha512-d7/NIqxq308Zg0RPMNrmn0QvzniL4Hx8Qdwzr6YZWLYAbUSvZYS2ppLR3BFWSkV6SsTJUx8BuDaj3P8vttkrog==", + "version": "3.817.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.817.0.tgz", + "integrity": "sha512-CYN4/UO0VaqyHf46ogZzNrVX7jI3/CfiuktwKlwtpKA6hjf2+ivfgHSKzPpgPBcSEfiibA/26EeLuMnB6cpSrQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/nested-clients": "3.787.0", - "@aws-sdk/types": "3.775.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/nested-clients": "3.817.0", + "@aws-sdk/types": "3.804.0", "@smithy/property-provider": "^4.0.2", "@smithy/shared-ini-file-loader": "^4.0.2", "@smithy/types": "^4.2.0", @@ -1849,9 +1877,9 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@aws-sdk/types": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.775.0.tgz", - "integrity": "sha512-ZoGKwa4C9fC9Av6bdfqcW6Ix5ot05F/S4VxWR2nHuMv7hzfmAjTOcUiWT7UR4hM/U0whf84VhDtXN/DWAk52KA==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.804.0.tgz", + "integrity": "sha512-A9qnsy9zQ8G89vrPPlNG9d1d8QcKRGqJKqwyGgS0dclJpwy6d1EWgQLIolKPl6vcFpLoe6avLOLxr+h8ur5wpg==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -1863,15 +1891,15 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@aws-sdk/util-endpoints": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.787.0.tgz", - "integrity": "sha512-fd3zkiOkwnbdbN0Xp9TsP5SWrmv0SpT70YEdbb8wAj2DWQwiCmFszaSs+YCvhoCdmlR3Wl9Spu0pGpSAGKeYvQ==", + "version": "3.808.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.808.0.tgz", + "integrity": "sha512-N6Lic98uc4ADB7fLWlzx+1uVnq04VgVjngZvwHoujcRg9YDhIg9dUDiTzD5VZv13g1BrPYmvYP1HhsildpGV6w==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.775.0", + "@aws-sdk/types": "3.804.0", "@smithy/types": "^4.2.0", - "@smithy/util-endpoints": "^3.0.2", + "@smithy/util-endpoints": "^3.0.4", "tslib": "^2.6.2" }, "engines": { @@ -1879,28 +1907,28 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@aws-sdk/util-user-agent-browser": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.775.0.tgz", - "integrity": "sha512-txw2wkiJmZKVdDbscK7VBK+u+TJnRtlUjRTLei+elZg2ADhpQxfVAQl436FUeIv6AhB/oRHW6/K/EAGXUSWi0A==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.804.0.tgz", + "integrity": "sha512-KfW6T6nQHHM/vZBBdGn6fMyG/MgX5lq82TDdX4HRQRRuHKLgBWGpKXqqvBwqIaCdXwWHgDrg2VQups6GqOWW2A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.775.0", + "@aws-sdk/types": "3.804.0", "@smithy/types": "^4.2.0", "bowser": "^2.11.0", "tslib": "^2.6.2" } }, "node_modules/@aws-sdk/client-lambda/node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.787.0.tgz", - "integrity": "sha512-mG7Lz8ydfG4SF9e8WSXiPQ/Lsn3n8A5B5jtPROidafi06I3ckV2WxyMLdwG14m919NoS6IOfWHyRGSqWIwbVKA==", + "version": "3.816.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.816.0.tgz", + "integrity": "sha512-Q6dxmuj4hL7pudhrneWEQ7yVHIQRBFr0wqKLF1opwOi1cIePuoEbPyJ2jkel6PDEv1YMfvsAKaRshp6eNA8VHg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/middleware-user-agent": "3.787.0", - "@aws-sdk/types": "3.775.0", - "@smithy/node-config-provider": "^4.0.2", + "@aws-sdk/middleware-user-agent": "3.816.0", + "@aws-sdk/types": "3.804.0", + "@smithy/node-config-provider": "^4.1.1", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" }, @@ -1917,13 +1945,13 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@smithy/abort-controller": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.0.2.tgz", - "integrity": "sha512-Sl/78VDtgqKxN2+1qduaVE140XF+Xg+TafkncspwM4jFP/LHr76ZHmIY/y3V1M0mMLNk+Je6IGbzxy23RSToMw==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.0.3.tgz", + "integrity": "sha512-AqXFf6DXnuRBXy4SoK/n1mfgHaKaq36bmkphmD1KO0nHq6xK/g9KHSW4HEsPQUBCGdIEfuJifGHwxFXPIFay9Q==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -1931,16 +1959,16 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@smithy/config-resolver": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-4.1.0.tgz", - "integrity": "sha512-8smPlwhga22pwl23fM5ew4T9vfLUCeFXlcqNOCD5M5h8VmNPNUE9j6bQSuRXpDSV11L/E/SwEBQuW8hr6+nS1A==", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-4.1.3.tgz", + "integrity": "sha512-N5e7ofiyYDmHxnPnqF8L4KtsbSDwyxFRfDK9bp1d9OyPO4ytRLd0/XxCqi5xVaaqB65v4woW8uey6jND6zxzxQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/node-config-provider": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/node-config-provider": "^4.1.2", + "@smithy/types": "^4.3.0", "@smithy/util-config-provider": "^4.0.0", - "@smithy/util-middleware": "^4.0.2", + "@smithy/util-middleware": "^4.0.3", "tslib": "^2.6.2" }, "engines": { @@ -1948,16 +1976,16 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@smithy/credential-provider-imds": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-4.0.2.tgz", - "integrity": "sha512-32lVig6jCaWBHnY+OEQ6e6Vnt5vDHaLiydGrwYMW9tPqO688hPGTYRamYJ1EptxEC2rAwJrHWmPoKRBl4iTa8w==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-4.0.5.tgz", + "integrity": "sha512-saEAGwrIlkb9XxX/m5S5hOtzjoJPEK6Qw2f9pYTbIsMPOFyGSXBBTw95WbOyru8A1vIS2jVCCU1Qhz50QWG3IA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/node-config-provider": "^4.0.2", - "@smithy/property-provider": "^4.0.2", - "@smithy/types": "^4.2.0", - "@smithy/url-parser": "^4.0.2", + "@smithy/node-config-provider": "^4.1.2", + "@smithy/property-provider": "^4.0.3", + "@smithy/types": "^4.3.0", + "@smithy/url-parser": "^4.0.3", "tslib": "^2.6.2" }, "engines": { @@ -1965,15 +1993,15 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@smithy/fetch-http-handler": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.0.2.tgz", - "integrity": "sha512-+9Dz8sakS9pe7f2cBocpJXdeVjMopUDLgZs1yWeu7h++WqSbjUYv/JAJwKwXw1HV6gq1jyWjxuyn24E2GhoEcQ==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.0.3.tgz", + "integrity": "sha512-yBZwavI31roqTndNI7ONHqesfH01JmjJK6L3uUpZAhyAmr86LN5QiPzfyZGIxQmed8VEK2NRSQT3/JX5V1njfQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/protocol-http": "^5.1.0", - "@smithy/querystring-builder": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/protocol-http": "^5.1.1", + "@smithy/querystring-builder": "^4.0.3", + "@smithy/types": "^4.3.0", "@smithy/util-base64": "^4.0.0", "tslib": "^2.6.2" }, @@ -1982,13 +2010,13 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@smithy/hash-node": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-4.0.2.tgz", - "integrity": "sha512-VnTpYPnRUE7yVhWozFdlxcYknv9UN7CeOqSrMH+V877v4oqtVYuoqhIhtSjmGPvYrYnAkaM61sLMKHvxL138yg==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-4.0.3.tgz", + "integrity": "sha512-W5Uhy6v/aYrgtjh9y0YP332gIQcwccQ+EcfWhllL0B9rPae42JngTTUpb8W6wuxaNFzqps4xq5klHckSSOy5fw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" @@ -2012,13 +2040,13 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@smithy/invalid-dependency": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-4.0.2.tgz", - "integrity": "sha512-GatB4+2DTpgWPday+mnUkoumP54u/MDM/5u44KF9hIu8jF0uafZtQLcdfIKkIcUNuF/fBojpLEHZS/56JqPeXQ==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-4.0.3.tgz", + "integrity": "sha512-1Bo8Ur1ZGqxvwTqBmv6DZEn0rXtwJGeqiiO2/JFcCtz3nBakOqeXbJBElXJMMzd0ghe8+eB6Dkw98nMYctgizg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -2026,14 +2054,14 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@smithy/middleware-content-length": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-4.0.2.tgz", - "integrity": "sha512-hAfEXm1zU+ELvucxqQ7I8SszwQ4znWMbNv6PLMndN83JJN41EPuS93AIyh2N+gJ6x8QFhzSO6b7q2e6oClDI8A==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-4.0.3.tgz", + "integrity": "sha512-NE/Zph4BP5u16bzYq2csq9qD0T6UBLeg4AuNrwNJ7Gv9uLYaGEgelZUOdRndGdMGcUfSGvNlXGb2aA2hPCwJ6g==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/protocol-http": "^5.1.0", - "@smithy/types": "^4.2.0", + "@smithy/protocol-http": "^5.1.1", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -2041,19 +2069,19 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@smithy/middleware-endpoint": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.1.0.tgz", - "integrity": "sha512-xhLimgNCbCzsUppRTGXWkZywksuTThxaIB0HwbpsVLY5sceac4e1TZ/WKYqufQLaUy+gUSJGNdwD2jo3cXL0iA==", + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.1.7.tgz", + "integrity": "sha512-KDzM7Iajo6K7eIWNNtukykRT4eWwlHjCEsULZUaSfi/SRSBK8BPRqG5FsVfp58lUxcvre8GT8AIPIqndA0ERKw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/core": "^3.2.0", - "@smithy/middleware-serde": "^4.0.3", - "@smithy/node-config-provider": "^4.0.2", - "@smithy/shared-ini-file-loader": "^4.0.2", - "@smithy/types": "^4.2.0", - "@smithy/url-parser": "^4.0.2", - "@smithy/util-middleware": "^4.0.2", + "@smithy/core": "^3.4.0", + "@smithy/middleware-serde": "^4.0.6", + "@smithy/node-config-provider": "^4.1.2", + "@smithy/shared-ini-file-loader": "^4.0.3", + "@smithy/types": "^4.3.0", + "@smithy/url-parser": "^4.0.3", + "@smithy/util-middleware": "^4.0.3", "tslib": "^2.6.2" }, "engines": { @@ -2061,19 +2089,19 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@smithy/middleware-retry": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-4.1.0.tgz", - "integrity": "sha512-2zAagd1s6hAaI/ap6SXi5T3dDwBOczOMCSkkYzktqN1+tzbk1GAsHNAdo/1uzxz3Ky02jvZQwbi/vmDA6z4Oyg==", + "version": "4.1.8", + "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-4.1.8.tgz", + "integrity": "sha512-e2OtQgFzzlSG0uCjcJmi02QuFSRTrpT11Eh2EcqqDFy7DYriteHZJkkf+4AsxsrGDugAtPFcWBz1aq06sSX5fQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/node-config-provider": "^4.0.2", - "@smithy/protocol-http": "^5.1.0", - "@smithy/service-error-classification": "^4.0.2", - "@smithy/smithy-client": "^4.2.0", - "@smithy/types": "^4.2.0", - "@smithy/util-middleware": "^4.0.2", - "@smithy/util-retry": "^4.0.2", + "@smithy/node-config-provider": "^4.1.2", + "@smithy/protocol-http": "^5.1.1", + "@smithy/service-error-classification": "^4.0.4", + "@smithy/smithy-client": "^4.3.0", + "@smithy/types": "^4.3.0", + "@smithy/util-middleware": "^4.0.3", + "@smithy/util-retry": "^4.0.4", "tslib": "^2.6.2", "uuid": "^9.0.1" }, @@ -2082,13 +2110,14 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@smithy/middleware-serde": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.0.3.tgz", - "integrity": "sha512-rfgDVrgLEVMmMn0BI8O+8OVr6vXzjV7HZj57l0QxslhzbvVfikZbVfBVthjLHqib4BW44QhcIgJpvebHlRaC9A==", + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.0.6.tgz", + "integrity": "sha512-YECyl7uNII+jCr/9qEmCu8xYL79cU0fqjo0qxpcVIU18dAPHam/iYwcknAu4Jiyw1uN+sAx7/SMf/Kmef/Jjsg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/protocol-http": "^5.1.1", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -2096,13 +2125,13 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@smithy/middleware-stack": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-4.0.2.tgz", - "integrity": "sha512-eSPVcuJJGVYrFYu2hEq8g8WWdJav3sdrI4o2c6z/rjnYDd3xH9j9E7deZQCzFn4QvGPouLngH3dQ+QVTxv5bOQ==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-4.0.3.tgz", + "integrity": "sha512-baeV7t4jQfQtFxBADFmnhmqBmqR38dNU5cvEgHcMK/Kp3D3bEI0CouoX2Sr/rGuntR+Eg0IjXdxnGGTc6SbIkw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -2110,15 +2139,15 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@smithy/node-config-provider": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.0.2.tgz", - "integrity": "sha512-WgCkILRZfJwJ4Da92a6t3ozN/zcvYyJGUTmfGbgS/FkCcoCjl7G4FJaCDN1ySdvLvemnQeo25FdkyMSTSwulsw==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.1.2.tgz", + "integrity": "sha512-SUvNup8iU1v7fmM8XPk+27m36udmGCfSz+VZP5Gb0aJ3Ne0X28K/25gnsrg3X1rWlhcnhzNUUysKW/Ied46ivQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/property-provider": "^4.0.2", - "@smithy/shared-ini-file-loader": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/property-provider": "^4.0.3", + "@smithy/shared-ini-file-loader": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -2126,16 +2155,16 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@smithy/node-http-handler": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.0.4.tgz", - "integrity": "sha512-/mdqabuAT3o/ihBGjL94PUbTSPSRJ0eeVTdgADzow0wRJ0rN4A27EOrtlK56MYiO1fDvlO3jVTCxQtQmK9dZ1g==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.0.5.tgz", + "integrity": "sha512-T7QglZC1vS7SPT44/1qSIAQEx5bFKb3LfO6zw/o4Xzt1eC5HNoH1TkS4lMYA9cWFbacUhx4hRl/blLun4EOCkg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/abort-controller": "^4.0.2", - "@smithy/protocol-http": "^5.1.0", - "@smithy/querystring-builder": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/abort-controller": "^4.0.3", + "@smithy/protocol-http": "^5.1.1", + "@smithy/querystring-builder": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -2143,13 +2172,13 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@smithy/protocol-http": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.0.tgz", - "integrity": "sha512-KxAOL1nUNw2JTYrtviRRjEnykIDhxc84qMBzxvu1MUfQfHTuBlCG7PA6EdVwqpJjH7glw7FqQoFxUJSyBQgu7g==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.1.tgz", + "integrity": "sha512-Vsay2mzq05DwNi9jK01yCFtfvu9HimmgC7a4HTs7lhX12Sx8aWsH0mfz6q/02yspSp+lOB+Q2HJwi4IV2GKz7A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -2157,13 +2186,13 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@smithy/querystring-builder": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.0.2.tgz", - "integrity": "sha512-NTOs0FwHw1vimmQM4ebh+wFQvOwkEf/kQL6bSM1Lock+Bv4I89B3hGYoUEPkmvYPkDKyp5UdXJYu+PoTQ3T31Q==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.0.3.tgz", + "integrity": "sha512-UUzIWMVfPmDZcOutk2/r1vURZqavvQW0OHvgsyNV0cKupChvqg+/NKPRMaMEe+i8tP96IthMFeZOZWpV+E4RAw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "@smithy/util-uri-escape": "^4.0.0", "tslib": "^2.6.2" }, @@ -2172,13 +2201,13 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@smithy/querystring-parser": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-4.0.2.tgz", - "integrity": "sha512-v6w8wnmZcVXjfVLjxw8qF7OwESD9wnpjp0Dqry/Pod0/5vcEA3qxCr+BhbOHlxS8O+29eLpT3aagxXGwIoEk7Q==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-4.0.3.tgz", + "integrity": "sha512-K5M4ZJQpFCblOJ5Oyw7diICpFg1qhhR47m2/5Ef1PhGE19RaIZf50tjYFrxa6usqcuXyTiFPGo4d1geZdH4YcQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -2186,26 +2215,26 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@smithy/service-error-classification": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-4.0.2.tgz", - "integrity": "sha512-LA86xeFpTKn270Hbkixqs5n73S+LVM0/VZco8dqd+JT75Dyx3Lcw/MraL7ybjmz786+160K8rPOmhsq0SocoJQ==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-4.0.4.tgz", + "integrity": "sha512-W5ScbQ1bTzgH91kNEE2CvOzM4gXlDOqdow4m8vMFSIXCel2scbHwjflpVNnC60Y3F1m5i7w2gQg9lSnR+JsJAA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0" + "@smithy/types": "^4.3.0" }, "engines": { "node": ">=18.0.0" } }, "node_modules/@aws-sdk/client-lambda/node_modules/@smithy/shared-ini-file-loader": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.0.2.tgz", - "integrity": "sha512-J9/gTWBGVuFZ01oVA6vdb4DAjf1XbDhK6sLsu3OS9qmLrS6KB5ygpeHiM3miIbj1qgSJ96GYszXFWv6ErJ8QEw==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.0.3.tgz", + "integrity": "sha512-vHwlrqhZGIoLwaH8vvIjpHnloShqdJ7SUPNM2EQtEox+yEDFTVQ7E+DLZ+6OhnYEgFUwPByJyz6UZaOu2tny6A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -2213,18 +2242,18 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@smithy/smithy-client": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.2.0.tgz", - "integrity": "sha512-Qs65/w30pWV7LSFAez9DKy0Koaoh3iHhpcpCCJ4waj/iqwsuSzJna2+vYwq46yBaqO5ZbP9TjUsATUNxrKeBdw==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.3.0.tgz", + "integrity": "sha512-DNsRA38pN6tYHUjebmwD9e4KcgqTLldYQb2gC6K+oxXYdCTxPn6wV9+FvOa6wrU2FQEnGJoi+3GULzOTKck/tg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/core": "^3.2.0", - "@smithy/middleware-endpoint": "^4.1.0", - "@smithy/middleware-stack": "^4.0.2", - "@smithy/protocol-http": "^5.1.0", - "@smithy/types": "^4.2.0", - "@smithy/util-stream": "^4.2.0", + "@smithy/core": "^3.4.0", + "@smithy/middleware-endpoint": "^4.1.7", + "@smithy/middleware-stack": "^4.0.3", + "@smithy/protocol-http": "^5.1.1", + "@smithy/types": "^4.3.0", + "@smithy/util-stream": "^4.2.1", "tslib": "^2.6.2" }, "engines": { @@ -2232,9 +2261,9 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@smithy/types": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.2.0.tgz", - "integrity": "sha512-7eMk09zQKCO+E/ivsjQv+fDlOupcFUCSC/L2YUPgwhvowVGWbPQHjEFcmjt7QQ4ra5lyowS92SV53Zc6XD4+fg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.3.0.tgz", + "integrity": "sha512-+1iaIQHthDh9yaLhRzaoQxRk+l9xlk+JjMFxGRhNLz+m9vKOkjNeU8QuB4w3xvzHyVR/BVlp/4AXDHjoRIkfgQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -2245,14 +2274,14 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@smithy/url-parser": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-4.0.2.tgz", - "integrity": "sha512-Bm8n3j2ScqnT+kJaClSVCMeiSenK6jVAzZCNewsYWuZtnBehEz4r2qP0riZySZVfzB+03XZHJeqfmJDkeeSLiQ==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-4.0.3.tgz", + "integrity": "sha512-n5/DnosDu/tweOqUUNtUbu7eRIR4J/Wz9nL7V5kFYQQVb8VYdj7a4G5NJHCw6o21ul7CvZoJkOpdTnsQDLT0tQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/querystring-parser": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/querystring-parser": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -2315,15 +2344,15 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@smithy/util-defaults-mode-browser": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-4.0.8.tgz", - "integrity": "sha512-ZTypzBra+lI/LfTYZeop9UjoJhhGRTg3pxrNpfSTQLd3AJ37r2z4AXTKpq1rFXiiUIJsYyFgNJdjWRGP/cbBaQ==", + "version": "4.0.15", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-4.0.15.tgz", + "integrity": "sha512-bJJ/B8owQbHAflatSq92f9OcV8858DJBQF1Y3GRjB8psLyUjbISywszYPFw16beREHO/C3I3taW4VGH+tOuwrQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/property-provider": "^4.0.2", - "@smithy/smithy-client": "^4.2.0", - "@smithy/types": "^4.2.0", + "@smithy/property-provider": "^4.0.3", + "@smithy/smithy-client": "^4.3.0", + "@smithy/types": "^4.3.0", "bowser": "^2.11.0", "tslib": "^2.6.2" }, @@ -2332,18 +2361,18 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@smithy/util-defaults-mode-node": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-4.0.8.tgz", - "integrity": "sha512-Rgk0Jc/UDfRTzVthye/k2dDsz5Xxs9LZaKCNPgJTRyoyBoeiNCnHsYGOyu1PKN+sDyPnJzMOz22JbwxzBp9NNA==", + "version": "4.0.15", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-4.0.15.tgz", + "integrity": "sha512-8CUrEW2Ni5q+NmYkj8wsgkfqoP7l4ZquptFbq92yQE66xevc4SxqP2zH6tMtN158kgBqBDsZ+qlrRwXWOjCR8A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/config-resolver": "^4.1.0", - "@smithy/credential-provider-imds": "^4.0.2", - "@smithy/node-config-provider": "^4.0.2", - "@smithy/property-provider": "^4.0.2", - "@smithy/smithy-client": "^4.2.0", - "@smithy/types": "^4.2.0", + "@smithy/config-resolver": "^4.1.3", + "@smithy/credential-provider-imds": "^4.0.5", + "@smithy/node-config-provider": "^4.1.2", + "@smithy/property-provider": "^4.0.3", + "@smithy/smithy-client": "^4.3.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -2351,14 +2380,14 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@smithy/util-retry": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-4.0.2.tgz", - "integrity": "sha512-Qryc+QG+7BCpvjloFLQrmlSd0RsVRHejRXd78jNO3+oREueCjwG1CCEH1vduw/ZkM1U9TztwIKVIi3+8MJScGg==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-4.0.4.tgz", + "integrity": "sha512-Aoqr9W2jDYGrI6OxljN8VmLDQIGO4VdMAUKMf9RGqLG8hn6or+K41NEy1Y5dtum9q8F7e0obYAuKl2mt/GnpZg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/service-error-classification": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/service-error-classification": "^4.0.4", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -2366,15 +2395,15 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@smithy/util-stream": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.2.0.tgz", - "integrity": "sha512-Vj1TtwWnuWqdgQI6YTUF5hQ/0jmFiOYsc51CSMgj7QfyO+RF4EnT2HNjoviNlOOmgzgvf3f5yno+EiC4vrnaWQ==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.2.1.tgz", + "integrity": "sha512-W3IR0x5DY6iVtjj5p902oNhD+Bz7vs5S+p6tppbPa509rV9BdeXZjGuRSCtVEad9FA0Mba+tNUtUmtnSI1nwUw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/fetch-http-handler": "^5.0.2", - "@smithy/node-http-handler": "^4.0.4", - "@smithy/types": "^4.2.0", + "@smithy/fetch-http-handler": "^5.0.3", + "@smithy/node-http-handler": "^4.0.5", + "@smithy/types": "^4.3.0", "@smithy/util-base64": "^4.0.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-hex-encoding": "^4.0.0", @@ -2441,14 +2470,14 @@ } }, "node_modules/@aws-sdk/client-lambda/node_modules/@smithy/util-waiter": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-4.0.3.tgz", - "integrity": "sha512-JtaY3FxmD+te+KSI2FJuEcfNC9T/DGGVf551babM7fAaXhjJUt7oSYurH1Devxd2+BOSUACCgt3buinx4UnmEA==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-4.0.4.tgz", + "integrity": "sha512-73aeIvHjtSB6fd9I08iFaQIGTICKpLrI3EtlWAkStVENGo1ARMq9qdoD4QwkY0RUp6A409xlgbD9NCCfCF5ieg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/abort-controller": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/abort-controller": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -2456,36 +2485,36 @@ } }, "node_modules/@aws-sdk/client-s3": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.787.0.tgz", - "integrity": "sha512-eGLCWkN0NlntJ9yPU6OKUggVS4cFvuZJog+cFg1KD5hniLqz7Y0YRtB4uBxW212fK3XCfddgyscEOEeHaTQQTw==", + "version": "3.817.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.817.0.tgz", + "integrity": "sha512-nZyjhlLMEXDs0ofWbpikI8tKoeKuuSgYcIb6eEZJk90Nt5HkkXn6nkWOs/kp2FdhpoGJyTILOVsDgdm7eutnLA==", "dev": true, "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha1-browser": "5.2.0", "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/core": "3.775.0", - "@aws-sdk/credential-provider-node": "3.787.0", - "@aws-sdk/middleware-bucket-endpoint": "3.775.0", - "@aws-sdk/middleware-expect-continue": "3.775.0", - "@aws-sdk/middleware-flexible-checksums": "3.787.0", - "@aws-sdk/middleware-host-header": "3.775.0", - "@aws-sdk/middleware-location-constraint": "3.775.0", - "@aws-sdk/middleware-logger": "3.775.0", - "@aws-sdk/middleware-recursion-detection": "3.775.0", - "@aws-sdk/middleware-sdk-s3": "3.775.0", - "@aws-sdk/middleware-ssec": "3.775.0", - "@aws-sdk/middleware-user-agent": "3.787.0", - "@aws-sdk/region-config-resolver": "3.775.0", - "@aws-sdk/signature-v4-multi-region": "3.775.0", - "@aws-sdk/types": "3.775.0", - "@aws-sdk/util-endpoints": "3.787.0", - "@aws-sdk/util-user-agent-browser": "3.775.0", - "@aws-sdk/util-user-agent-node": "3.787.0", - "@aws-sdk/xml-builder": "3.775.0", - "@smithy/config-resolver": "^4.1.0", - "@smithy/core": "^3.2.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/credential-provider-node": "3.817.0", + "@aws-sdk/middleware-bucket-endpoint": "3.808.0", + "@aws-sdk/middleware-expect-continue": "3.804.0", + "@aws-sdk/middleware-flexible-checksums": "3.816.0", + "@aws-sdk/middleware-host-header": "3.804.0", + "@aws-sdk/middleware-location-constraint": "3.804.0", + "@aws-sdk/middleware-logger": "3.804.0", + "@aws-sdk/middleware-recursion-detection": "3.804.0", + "@aws-sdk/middleware-sdk-s3": "3.816.0", + "@aws-sdk/middleware-ssec": "3.804.0", + "@aws-sdk/middleware-user-agent": "3.816.0", + "@aws-sdk/region-config-resolver": "3.808.0", + "@aws-sdk/signature-v4-multi-region": "3.816.0", + "@aws-sdk/types": "3.804.0", + "@aws-sdk/util-endpoints": "3.808.0", + "@aws-sdk/util-user-agent-browser": "3.804.0", + "@aws-sdk/util-user-agent-node": "3.816.0", + "@aws-sdk/xml-builder": "3.804.0", + "@smithy/config-resolver": "^4.1.2", + "@smithy/core": "^3.3.3", "@smithy/eventstream-serde-browser": "^4.0.2", "@smithy/eventstream-serde-config-resolver": "^4.1.0", "@smithy/eventstream-serde-node": "^4.0.2", @@ -2496,24 +2525,24 @@ "@smithy/invalid-dependency": "^4.0.2", "@smithy/md5-js": "^4.0.2", "@smithy/middleware-content-length": "^4.0.2", - "@smithy/middleware-endpoint": "^4.1.0", - "@smithy/middleware-retry": "^4.1.0", - "@smithy/middleware-serde": "^4.0.3", + "@smithy/middleware-endpoint": "^4.1.6", + "@smithy/middleware-retry": "^4.1.7", + "@smithy/middleware-serde": "^4.0.5", "@smithy/middleware-stack": "^4.0.2", - "@smithy/node-config-provider": "^4.0.2", + "@smithy/node-config-provider": "^4.1.1", "@smithy/node-http-handler": "^4.0.4", "@smithy/protocol-http": "^5.1.0", - "@smithy/smithy-client": "^4.2.0", + "@smithy/smithy-client": "^4.2.6", "@smithy/types": "^4.2.0", "@smithy/url-parser": "^4.0.2", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", - "@smithy/util-defaults-mode-browser": "^4.0.8", - "@smithy/util-defaults-mode-node": "^4.0.8", - "@smithy/util-endpoints": "^3.0.2", + "@smithy/util-defaults-mode-browser": "^4.0.14", + "@smithy/util-defaults-mode-node": "^4.0.14", + "@smithy/util-endpoints": "^3.0.4", "@smithy/util-middleware": "^4.0.2", - "@smithy/util-retry": "^4.0.2", + "@smithy/util-retry": "^4.0.3", "@smithy/util-stream": "^4.2.0", "@smithy/util-utf8": "^4.0.0", "@smithy/util-waiter": "^4.0.3", @@ -2605,48 +2634,48 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/client-sso": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.787.0.tgz", - "integrity": "sha512-L8R+Mh258G0DC73ktpSVrG4TT9i2vmDLecARTDR/4q5sRivdDQSL5bUp3LKcK80Bx+FRw3UETIlX6mYMLL9PJQ==", + "version": "3.817.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.817.0.tgz", + "integrity": "sha512-fCh5rUHmWmWDvw70NNoWpE5+BRdtNi45kDnIoeoszqVg7UKF79SlG+qYooUT52HKCgDNHqgbWaXxMOSqd2I/OQ==", "dev": true, "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/core": "3.775.0", - "@aws-sdk/middleware-host-header": "3.775.0", - "@aws-sdk/middleware-logger": "3.775.0", - "@aws-sdk/middleware-recursion-detection": "3.775.0", - "@aws-sdk/middleware-user-agent": "3.787.0", - "@aws-sdk/region-config-resolver": "3.775.0", - "@aws-sdk/types": "3.775.0", - "@aws-sdk/util-endpoints": "3.787.0", - "@aws-sdk/util-user-agent-browser": "3.775.0", - "@aws-sdk/util-user-agent-node": "3.787.0", - "@smithy/config-resolver": "^4.1.0", - "@smithy/core": "^3.2.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/middleware-host-header": "3.804.0", + "@aws-sdk/middleware-logger": "3.804.0", + "@aws-sdk/middleware-recursion-detection": "3.804.0", + "@aws-sdk/middleware-user-agent": "3.816.0", + "@aws-sdk/region-config-resolver": "3.808.0", + "@aws-sdk/types": "3.804.0", + "@aws-sdk/util-endpoints": "3.808.0", + "@aws-sdk/util-user-agent-browser": "3.804.0", + "@aws-sdk/util-user-agent-node": "3.816.0", + "@smithy/config-resolver": "^4.1.2", + "@smithy/core": "^3.3.3", "@smithy/fetch-http-handler": "^5.0.2", "@smithy/hash-node": "^4.0.2", "@smithy/invalid-dependency": "^4.0.2", "@smithy/middleware-content-length": "^4.0.2", - "@smithy/middleware-endpoint": "^4.1.0", - "@smithy/middleware-retry": "^4.1.0", - "@smithy/middleware-serde": "^4.0.3", + "@smithy/middleware-endpoint": "^4.1.6", + "@smithy/middleware-retry": "^4.1.7", + "@smithy/middleware-serde": "^4.0.5", "@smithy/middleware-stack": "^4.0.2", - "@smithy/node-config-provider": "^4.0.2", + "@smithy/node-config-provider": "^4.1.1", "@smithy/node-http-handler": "^4.0.4", "@smithy/protocol-http": "^5.1.0", - "@smithy/smithy-client": "^4.2.0", + "@smithy/smithy-client": "^4.2.6", "@smithy/types": "^4.2.0", "@smithy/url-parser": "^4.0.2", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", - "@smithy/util-defaults-mode-browser": "^4.0.8", - "@smithy/util-defaults-mode-node": "^4.0.8", - "@smithy/util-endpoints": "^3.0.2", + "@smithy/util-defaults-mode-browser": "^4.0.14", + "@smithy/util-defaults-mode-node": "^4.0.14", + "@smithy/util-endpoints": "^3.0.4", "@smithy/util-middleware": "^4.0.2", - "@smithy/util-retry": "^4.0.2", + "@smithy/util-retry": "^4.0.3", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" }, @@ -2655,14 +2684,14 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-env": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.775.0.tgz", - "integrity": "sha512-6ESVxwCbGm7WZ17kY1fjmxQud43vzJFoLd4bmlR+idQSWdqlzGDYdcfzpjDKTcivdtNrVYmFvcH1JBUwCRAZhw==", + "version": "3.816.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.816.0.tgz", + "integrity": "sha512-wUJZwRLe+SxPxRV9AENYBLrJZRrNIo+fva7ZzejsC83iz7hdfq6Rv6B/aHEdPwG/nQC4+q7UUvcRPlomyrpsBA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "3.775.0", - "@aws-sdk/types": "3.775.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/types": "3.804.0", "@smithy/property-provider": "^4.0.2", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" @@ -2672,21 +2701,21 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.787.0.tgz", - "integrity": "sha512-hc2taRoDlXn2uuNuHWDJljVWYrp3r9JF1a/8XmOAZhVUNY+ImeeStylHXhXXKEA4JOjW+5PdJj0f1UDkVCHJiQ==", + "version": "3.817.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.817.0.tgz", + "integrity": "sha512-kyEwbQyuXE+phWVzloMdkFv6qM6NOon+asMXY5W0fhDKwBz9zQLObDRWBrvQX9lmqq8BbDL1sCfZjOh82Y+RFw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "3.775.0", - "@aws-sdk/credential-provider-env": "3.775.0", - "@aws-sdk/credential-provider-http": "3.775.0", - "@aws-sdk/credential-provider-process": "3.775.0", - "@aws-sdk/credential-provider-sso": "3.787.0", - "@aws-sdk/credential-provider-web-identity": "3.787.0", - "@aws-sdk/nested-clients": "3.787.0", - "@aws-sdk/types": "3.775.0", - "@smithy/credential-provider-imds": "^4.0.2", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/credential-provider-env": "3.816.0", + "@aws-sdk/credential-provider-http": "3.816.0", + "@aws-sdk/credential-provider-process": "3.816.0", + "@aws-sdk/credential-provider-sso": "3.817.0", + "@aws-sdk/credential-provider-web-identity": "3.817.0", + "@aws-sdk/nested-clients": "3.817.0", + "@aws-sdk/types": "3.804.0", + "@smithy/credential-provider-imds": "^4.0.4", "@smithy/property-provider": "^4.0.2", "@smithy/shared-ini-file-loader": "^4.0.2", "@smithy/types": "^4.2.0", @@ -2697,20 +2726,20 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-node": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.787.0.tgz", - "integrity": "sha512-JioVi44B1vDMaK2CdzqimwvJD3uzvzbQhaEWXsGMBcMcNHajXAXf08EF50JG3ZhLrhhUsT1ObXpbTaPINOhh+g==", + "version": "3.817.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.817.0.tgz", + "integrity": "sha512-b5mz7av0Lhavs1Bz3Zb+jrs0Pki93+8XNctnVO0drBW98x1fM4AR38cWvGbM/w9F9Q0/WEH3TinkmrMPrP4T/w==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/credential-provider-env": "3.775.0", - "@aws-sdk/credential-provider-http": "3.775.0", - "@aws-sdk/credential-provider-ini": "3.787.0", - "@aws-sdk/credential-provider-process": "3.775.0", - "@aws-sdk/credential-provider-sso": "3.787.0", - "@aws-sdk/credential-provider-web-identity": "3.787.0", - "@aws-sdk/types": "3.775.0", - "@smithy/credential-provider-imds": "^4.0.2", + "@aws-sdk/credential-provider-env": "3.816.0", + "@aws-sdk/credential-provider-http": "3.816.0", + "@aws-sdk/credential-provider-ini": "3.817.0", + "@aws-sdk/credential-provider-process": "3.816.0", + "@aws-sdk/credential-provider-sso": "3.817.0", + "@aws-sdk/credential-provider-web-identity": "3.817.0", + "@aws-sdk/types": "3.804.0", + "@smithy/credential-provider-imds": "^4.0.4", "@smithy/property-provider": "^4.0.2", "@smithy/shared-ini-file-loader": "^4.0.2", "@smithy/types": "^4.2.0", @@ -2721,14 +2750,14 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-process": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.775.0.tgz", - "integrity": "sha512-A6k68H9rQp+2+7P7SGO90Csw6nrUEm0Qfjpn9Etc4EboZhhCLs9b66umUsTsSBHus4FDIe5JQxfCUyt1wgNogg==", + "version": "3.816.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.816.0.tgz", + "integrity": "sha512-9Tm+AxMoV2Izvl5b9tyMQRbBwaex8JP06HN7ZeCXgC5sAsSN+o8dsThnEhf8jKN+uBpT6CLWKN1TXuUMrAmW1A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "3.775.0", - "@aws-sdk/types": "3.775.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/types": "3.804.0", "@smithy/property-provider": "^4.0.2", "@smithy/shared-ini-file-loader": "^4.0.2", "@smithy/types": "^4.2.0", @@ -2739,16 +2768,16 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-sso": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.787.0.tgz", - "integrity": "sha512-fHc08bsvwm4+dEMEQKnQ7c1irEQmmxbgS+Fq41y09pPvPh31nAhoMcjBSTWAaPHvvsRbTYvmP4Mf12ZGr8/nfg==", + "version": "3.817.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.817.0.tgz", + "integrity": "sha512-gFUAW3VmGvdnueK1bh6TOcRX+j99Xm0men1+gz3cA4RE+rZGNy1Qjj8YHlv0hPwI9OnTPZquvPzA5fkviGREWg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/client-sso": "3.787.0", - "@aws-sdk/core": "3.775.0", - "@aws-sdk/token-providers": "3.787.0", - "@aws-sdk/types": "3.775.0", + "@aws-sdk/client-sso": "3.817.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/token-providers": "3.817.0", + "@aws-sdk/types": "3.804.0", "@smithy/property-provider": "^4.0.2", "@smithy/shared-ini-file-loader": "^4.0.2", "@smithy/types": "^4.2.0", @@ -2759,15 +2788,15 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/credential-provider-web-identity": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.787.0.tgz", - "integrity": "sha512-SobmCwNbk6TfEsF283mZPQEI5vV2j6eY5tOCj8Er4Lzraxu9fBPADV+Bib2A8F6jlB1lMPJzOuDCbEasSt/RIw==", + "version": "3.817.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.817.0.tgz", + "integrity": "sha512-A2kgkS9g6NY0OMT2f2EdXHpL17Ym81NhbGnQ8bRXPqESIi7TFypFD2U6osB2VnsFv+MhwM+Ke4PKXSmLun22/A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "3.775.0", - "@aws-sdk/nested-clients": "3.787.0", - "@aws-sdk/types": "3.775.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/nested-clients": "3.817.0", + "@aws-sdk/types": "3.804.0", "@smithy/property-provider": "^4.0.2", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" @@ -2777,13 +2806,13 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-host-header": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.775.0.tgz", - "integrity": "sha512-tkSegM0Z6WMXpLB8oPys/d+umYIocvO298mGvcMCncpRl77L9XkvSLJIFzaHes+o7djAgIduYw8wKIMStFss2w==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.804.0.tgz", + "integrity": "sha512-bum1hLVBrn2lJCi423Z2fMUYtsbkGI2s4N+2RI2WSjvbaVyMSv/WcejIrjkqiiMR+2Y7m5exgoKeg4/TODLDPQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.775.0", + "@aws-sdk/types": "3.804.0", "@smithy/protocol-http": "^5.1.0", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" @@ -2793,13 +2822,13 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-logger": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.775.0.tgz", - "integrity": "sha512-FaxO1xom4MAoUJsldmR92nT1G6uZxTdNYOFYtdHfd6N2wcNaTuxgjIvqzg5y7QIH9kn58XX/dzf1iTjgqUStZw==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.804.0.tgz", + "integrity": "sha512-w/qLwL3iq0KOPQNat0Kb7sKndl9BtceigINwBU7SpkYWX9L/Lem6f8NPEKrC9Tl4wDBht3Yztub4oRTy/horJA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.775.0", + "@aws-sdk/types": "3.804.0", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" }, @@ -2808,13 +2837,13 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-recursion-detection": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.775.0.tgz", - "integrity": "sha512-GLCzC8D0A0YDG5u3F5U03Vb9j5tcOEFhr8oc6PDk0k0vm5VwtZOE6LvK7hcCSoAB4HXyOUM0sQuXrbaAh9OwXA==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.804.0.tgz", + "integrity": "sha512-zqHOrvLRdsUdN/ehYfZ9Tf8svhbiLLz5VaWUz22YndFv6m9qaAcijkpAOlKexsv3nLBMJdSdJ6GUTAeIy3BZzw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.775.0", + "@aws-sdk/types": "3.804.0", "@smithy/protocol-http": "^5.1.0", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" @@ -2824,16 +2853,16 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/middleware-user-agent": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.787.0.tgz", - "integrity": "sha512-Lnfj8SmPLYtrDFthNIaNj66zZsBCam+E4XiUDr55DIHTGstH6qZ/q6vg0GfbukxwSmUcGMwSR4Qbn8rb8yd77g==", + "version": "3.816.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.816.0.tgz", + "integrity": "sha512-bHRSlWZ0xDsFR8E2FwDb//0Ff6wMkVx4O+UKsfyNlAbtqCiiHRt5ANNfKPafr95cN2CCxLxiPvFTFVblQM5TsQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "3.775.0", - "@aws-sdk/types": "3.775.0", - "@aws-sdk/util-endpoints": "3.787.0", - "@smithy/core": "^3.2.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/types": "3.804.0", + "@aws-sdk/util-endpoints": "3.808.0", + "@smithy/core": "^3.3.3", "@smithy/protocol-http": "^5.1.0", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" @@ -2843,14 +2872,15 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/token-providers": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.787.0.tgz", - "integrity": "sha512-d7/NIqxq308Zg0RPMNrmn0QvzniL4Hx8Qdwzr6YZWLYAbUSvZYS2ppLR3BFWSkV6SsTJUx8BuDaj3P8vttkrog==", + "version": "3.817.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.817.0.tgz", + "integrity": "sha512-CYN4/UO0VaqyHf46ogZzNrVX7jI3/CfiuktwKlwtpKA6hjf2+ivfgHSKzPpgPBcSEfiibA/26EeLuMnB6cpSrQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/nested-clients": "3.787.0", - "@aws-sdk/types": "3.775.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/nested-clients": "3.817.0", + "@aws-sdk/types": "3.804.0", "@smithy/property-provider": "^4.0.2", "@smithy/shared-ini-file-loader": "^4.0.2", "@smithy/types": "^4.2.0", @@ -2861,9 +2891,9 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/types": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.775.0.tgz", - "integrity": "sha512-ZoGKwa4C9fC9Av6bdfqcW6Ix5ot05F/S4VxWR2nHuMv7hzfmAjTOcUiWT7UR4hM/U0whf84VhDtXN/DWAk52KA==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.804.0.tgz", + "integrity": "sha512-A9qnsy9zQ8G89vrPPlNG9d1d8QcKRGqJKqwyGgS0dclJpwy6d1EWgQLIolKPl6vcFpLoe6avLOLxr+h8ur5wpg==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -2875,15 +2905,15 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-endpoints": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.787.0.tgz", - "integrity": "sha512-fd3zkiOkwnbdbN0Xp9TsP5SWrmv0SpT70YEdbb8wAj2DWQwiCmFszaSs+YCvhoCdmlR3Wl9Spu0pGpSAGKeYvQ==", + "version": "3.808.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.808.0.tgz", + "integrity": "sha512-N6Lic98uc4ADB7fLWlzx+1uVnq04VgVjngZvwHoujcRg9YDhIg9dUDiTzD5VZv13g1BrPYmvYP1HhsildpGV6w==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.775.0", + "@aws-sdk/types": "3.804.0", "@smithy/types": "^4.2.0", - "@smithy/util-endpoints": "^3.0.2", + "@smithy/util-endpoints": "^3.0.4", "tslib": "^2.6.2" }, "engines": { @@ -2891,28 +2921,28 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-user-agent-browser": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.775.0.tgz", - "integrity": "sha512-txw2wkiJmZKVdDbscK7VBK+u+TJnRtlUjRTLei+elZg2ADhpQxfVAQl436FUeIv6AhB/oRHW6/K/EAGXUSWi0A==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.804.0.tgz", + "integrity": "sha512-KfW6T6nQHHM/vZBBdGn6fMyG/MgX5lq82TDdX4HRQRRuHKLgBWGpKXqqvBwqIaCdXwWHgDrg2VQups6GqOWW2A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.775.0", + "@aws-sdk/types": "3.804.0", "@smithy/types": "^4.2.0", "bowser": "^2.11.0", "tslib": "^2.6.2" } }, "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.787.0.tgz", - "integrity": "sha512-mG7Lz8ydfG4SF9e8WSXiPQ/Lsn3n8A5B5jtPROidafi06I3ckV2WxyMLdwG14m919NoS6IOfWHyRGSqWIwbVKA==", + "version": "3.816.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.816.0.tgz", + "integrity": "sha512-Q6dxmuj4hL7pudhrneWEQ7yVHIQRBFr0wqKLF1opwOi1cIePuoEbPyJ2jkel6PDEv1YMfvsAKaRshp6eNA8VHg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/middleware-user-agent": "3.787.0", - "@aws-sdk/types": "3.775.0", - "@smithy/node-config-provider": "^4.0.2", + "@aws-sdk/middleware-user-agent": "3.816.0", + "@aws-sdk/types": "3.804.0", + "@smithy/node-config-provider": "^4.1.1", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" }, @@ -2929,9 +2959,9 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@aws-sdk/xml-builder": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.775.0.tgz", - "integrity": "sha512-b9NGO6FKJeLGYnV7Z1yvcP1TNU4dkD5jNsLWOF1/sygZoASaQhNOlaiJ/1OH331YQ1R1oWk38nBb0frsYkDsOQ==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.804.0.tgz", + "integrity": "sha512-JbGWp36IG9dgxtvC6+YXwt5WDZYfuamWFtVfK6fQpnmL96dx+GUPOXPKRWdw67WLKf2comHY28iX2d3z35I53Q==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -2943,13 +2973,13 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@smithy/abort-controller": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.0.2.tgz", - "integrity": "sha512-Sl/78VDtgqKxN2+1qduaVE140XF+Xg+TafkncspwM4jFP/LHr76ZHmIY/y3V1M0mMLNk+Je6IGbzxy23RSToMw==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.0.3.tgz", + "integrity": "sha512-AqXFf6DXnuRBXy4SoK/n1mfgHaKaq36bmkphmD1KO0nHq6xK/g9KHSW4HEsPQUBCGdIEfuJifGHwxFXPIFay9Q==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -2957,16 +2987,16 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@smithy/config-resolver": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-4.1.0.tgz", - "integrity": "sha512-8smPlwhga22pwl23fM5ew4T9vfLUCeFXlcqNOCD5M5h8VmNPNUE9j6bQSuRXpDSV11L/E/SwEBQuW8hr6+nS1A==", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-4.1.3.tgz", + "integrity": "sha512-N5e7ofiyYDmHxnPnqF8L4KtsbSDwyxFRfDK9bp1d9OyPO4ytRLd0/XxCqi5xVaaqB65v4woW8uey6jND6zxzxQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/node-config-provider": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/node-config-provider": "^4.1.2", + "@smithy/types": "^4.3.0", "@smithy/util-config-provider": "^4.0.0", - "@smithy/util-middleware": "^4.0.2", + "@smithy/util-middleware": "^4.0.3", "tslib": "^2.6.2" }, "engines": { @@ -2974,16 +3004,16 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@smithy/credential-provider-imds": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-4.0.2.tgz", - "integrity": "sha512-32lVig6jCaWBHnY+OEQ6e6Vnt5vDHaLiydGrwYMW9tPqO688hPGTYRamYJ1EptxEC2rAwJrHWmPoKRBl4iTa8w==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-4.0.5.tgz", + "integrity": "sha512-saEAGwrIlkb9XxX/m5S5hOtzjoJPEK6Qw2f9pYTbIsMPOFyGSXBBTw95WbOyru8A1vIS2jVCCU1Qhz50QWG3IA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/node-config-provider": "^4.0.2", - "@smithy/property-provider": "^4.0.2", - "@smithy/types": "^4.2.0", - "@smithy/url-parser": "^4.0.2", + "@smithy/node-config-provider": "^4.1.2", + "@smithy/property-provider": "^4.0.3", + "@smithy/types": "^4.3.0", + "@smithy/url-parser": "^4.0.3", "tslib": "^2.6.2" }, "engines": { @@ -2991,15 +3021,15 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@smithy/fetch-http-handler": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.0.2.tgz", - "integrity": "sha512-+9Dz8sakS9pe7f2cBocpJXdeVjMopUDLgZs1yWeu7h++WqSbjUYv/JAJwKwXw1HV6gq1jyWjxuyn24E2GhoEcQ==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.0.3.tgz", + "integrity": "sha512-yBZwavI31roqTndNI7ONHqesfH01JmjJK6L3uUpZAhyAmr86LN5QiPzfyZGIxQmed8VEK2NRSQT3/JX5V1njfQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/protocol-http": "^5.1.0", - "@smithy/querystring-builder": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/protocol-http": "^5.1.1", + "@smithy/querystring-builder": "^4.0.3", + "@smithy/types": "^4.3.0", "@smithy/util-base64": "^4.0.0", "tslib": "^2.6.2" }, @@ -3008,13 +3038,13 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@smithy/hash-node": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-4.0.2.tgz", - "integrity": "sha512-VnTpYPnRUE7yVhWozFdlxcYknv9UN7CeOqSrMH+V877v4oqtVYuoqhIhtSjmGPvYrYnAkaM61sLMKHvxL138yg==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-4.0.3.tgz", + "integrity": "sha512-W5Uhy6v/aYrgtjh9y0YP332gIQcwccQ+EcfWhllL0B9rPae42JngTTUpb8W6wuxaNFzqps4xq5klHckSSOy5fw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" @@ -3038,13 +3068,13 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@smithy/invalid-dependency": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-4.0.2.tgz", - "integrity": "sha512-GatB4+2DTpgWPday+mnUkoumP54u/MDM/5u44KF9hIu8jF0uafZtQLcdfIKkIcUNuF/fBojpLEHZS/56JqPeXQ==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-4.0.3.tgz", + "integrity": "sha512-1Bo8Ur1ZGqxvwTqBmv6DZEn0rXtwJGeqiiO2/JFcCtz3nBakOqeXbJBElXJMMzd0ghe8+eB6Dkw98nMYctgizg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -3052,14 +3082,14 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@smithy/middleware-content-length": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-4.0.2.tgz", - "integrity": "sha512-hAfEXm1zU+ELvucxqQ7I8SszwQ4znWMbNv6PLMndN83JJN41EPuS93AIyh2N+gJ6x8QFhzSO6b7q2e6oClDI8A==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-4.0.3.tgz", + "integrity": "sha512-NE/Zph4BP5u16bzYq2csq9qD0T6UBLeg4AuNrwNJ7Gv9uLYaGEgelZUOdRndGdMGcUfSGvNlXGb2aA2hPCwJ6g==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/protocol-http": "^5.1.0", - "@smithy/types": "^4.2.0", + "@smithy/protocol-http": "^5.1.1", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -3067,19 +3097,19 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@smithy/middleware-endpoint": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.1.0.tgz", - "integrity": "sha512-xhLimgNCbCzsUppRTGXWkZywksuTThxaIB0HwbpsVLY5sceac4e1TZ/WKYqufQLaUy+gUSJGNdwD2jo3cXL0iA==", + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.1.7.tgz", + "integrity": "sha512-KDzM7Iajo6K7eIWNNtukykRT4eWwlHjCEsULZUaSfi/SRSBK8BPRqG5FsVfp58lUxcvre8GT8AIPIqndA0ERKw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/core": "^3.2.0", - "@smithy/middleware-serde": "^4.0.3", - "@smithy/node-config-provider": "^4.0.2", - "@smithy/shared-ini-file-loader": "^4.0.2", - "@smithy/types": "^4.2.0", - "@smithy/url-parser": "^4.0.2", - "@smithy/util-middleware": "^4.0.2", + "@smithy/core": "^3.4.0", + "@smithy/middleware-serde": "^4.0.6", + "@smithy/node-config-provider": "^4.1.2", + "@smithy/shared-ini-file-loader": "^4.0.3", + "@smithy/types": "^4.3.0", + "@smithy/url-parser": "^4.0.3", + "@smithy/util-middleware": "^4.0.3", "tslib": "^2.6.2" }, "engines": { @@ -3087,19 +3117,19 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@smithy/middleware-retry": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-4.1.0.tgz", - "integrity": "sha512-2zAagd1s6hAaI/ap6SXi5T3dDwBOczOMCSkkYzktqN1+tzbk1GAsHNAdo/1uzxz3Ky02jvZQwbi/vmDA6z4Oyg==", + "version": "4.1.8", + "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-4.1.8.tgz", + "integrity": "sha512-e2OtQgFzzlSG0uCjcJmi02QuFSRTrpT11Eh2EcqqDFy7DYriteHZJkkf+4AsxsrGDugAtPFcWBz1aq06sSX5fQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/node-config-provider": "^4.0.2", - "@smithy/protocol-http": "^5.1.0", - "@smithy/service-error-classification": "^4.0.2", - "@smithy/smithy-client": "^4.2.0", - "@smithy/types": "^4.2.0", - "@smithy/util-middleware": "^4.0.2", - "@smithy/util-retry": "^4.0.2", + "@smithy/node-config-provider": "^4.1.2", + "@smithy/protocol-http": "^5.1.1", + "@smithy/service-error-classification": "^4.0.4", + "@smithy/smithy-client": "^4.3.0", + "@smithy/types": "^4.3.0", + "@smithy/util-middleware": "^4.0.3", + "@smithy/util-retry": "^4.0.4", "tslib": "^2.6.2", "uuid": "^9.0.1" }, @@ -3108,13 +3138,14 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@smithy/middleware-serde": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.0.3.tgz", - "integrity": "sha512-rfgDVrgLEVMmMn0BI8O+8OVr6vXzjV7HZj57l0QxslhzbvVfikZbVfBVthjLHqib4BW44QhcIgJpvebHlRaC9A==", + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.0.6.tgz", + "integrity": "sha512-YECyl7uNII+jCr/9qEmCu8xYL79cU0fqjo0qxpcVIU18dAPHam/iYwcknAu4Jiyw1uN+sAx7/SMf/Kmef/Jjsg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/protocol-http": "^5.1.1", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -3122,13 +3153,13 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@smithy/middleware-stack": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-4.0.2.tgz", - "integrity": "sha512-eSPVcuJJGVYrFYu2hEq8g8WWdJav3sdrI4o2c6z/rjnYDd3xH9j9E7deZQCzFn4QvGPouLngH3dQ+QVTxv5bOQ==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-4.0.3.tgz", + "integrity": "sha512-baeV7t4jQfQtFxBADFmnhmqBmqR38dNU5cvEgHcMK/Kp3D3bEI0CouoX2Sr/rGuntR+Eg0IjXdxnGGTc6SbIkw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -3136,15 +3167,15 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@smithy/node-config-provider": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.0.2.tgz", - "integrity": "sha512-WgCkILRZfJwJ4Da92a6t3ozN/zcvYyJGUTmfGbgS/FkCcoCjl7G4FJaCDN1ySdvLvemnQeo25FdkyMSTSwulsw==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.1.2.tgz", + "integrity": "sha512-SUvNup8iU1v7fmM8XPk+27m36udmGCfSz+VZP5Gb0aJ3Ne0X28K/25gnsrg3X1rWlhcnhzNUUysKW/Ied46ivQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/property-provider": "^4.0.2", - "@smithy/shared-ini-file-loader": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/property-provider": "^4.0.3", + "@smithy/shared-ini-file-loader": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -3152,16 +3183,16 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@smithy/node-http-handler": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.0.4.tgz", - "integrity": "sha512-/mdqabuAT3o/ihBGjL94PUbTSPSRJ0eeVTdgADzow0wRJ0rN4A27EOrtlK56MYiO1fDvlO3jVTCxQtQmK9dZ1g==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.0.5.tgz", + "integrity": "sha512-T7QglZC1vS7SPT44/1qSIAQEx5bFKb3LfO6zw/o4Xzt1eC5HNoH1TkS4lMYA9cWFbacUhx4hRl/blLun4EOCkg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/abort-controller": "^4.0.2", - "@smithy/protocol-http": "^5.1.0", - "@smithy/querystring-builder": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/abort-controller": "^4.0.3", + "@smithy/protocol-http": "^5.1.1", + "@smithy/querystring-builder": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -3169,13 +3200,13 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@smithy/protocol-http": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.0.tgz", - "integrity": "sha512-KxAOL1nUNw2JTYrtviRRjEnykIDhxc84qMBzxvu1MUfQfHTuBlCG7PA6EdVwqpJjH7glw7FqQoFxUJSyBQgu7g==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.1.tgz", + "integrity": "sha512-Vsay2mzq05DwNi9jK01yCFtfvu9HimmgC7a4HTs7lhX12Sx8aWsH0mfz6q/02yspSp+lOB+Q2HJwi4IV2GKz7A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -3183,13 +3214,13 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@smithy/querystring-builder": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.0.2.tgz", - "integrity": "sha512-NTOs0FwHw1vimmQM4ebh+wFQvOwkEf/kQL6bSM1Lock+Bv4I89B3hGYoUEPkmvYPkDKyp5UdXJYu+PoTQ3T31Q==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.0.3.tgz", + "integrity": "sha512-UUzIWMVfPmDZcOutk2/r1vURZqavvQW0OHvgsyNV0cKupChvqg+/NKPRMaMEe+i8tP96IthMFeZOZWpV+E4RAw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "@smithy/util-uri-escape": "^4.0.0", "tslib": "^2.6.2" }, @@ -3198,13 +3229,13 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@smithy/querystring-parser": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-4.0.2.tgz", - "integrity": "sha512-v6w8wnmZcVXjfVLjxw8qF7OwESD9wnpjp0Dqry/Pod0/5vcEA3qxCr+BhbOHlxS8O+29eLpT3aagxXGwIoEk7Q==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-4.0.3.tgz", + "integrity": "sha512-K5M4ZJQpFCblOJ5Oyw7diICpFg1qhhR47m2/5Ef1PhGE19RaIZf50tjYFrxa6usqcuXyTiFPGo4d1geZdH4YcQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -3212,26 +3243,26 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@smithy/service-error-classification": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-4.0.2.tgz", - "integrity": "sha512-LA86xeFpTKn270Hbkixqs5n73S+LVM0/VZco8dqd+JT75Dyx3Lcw/MraL7ybjmz786+160K8rPOmhsq0SocoJQ==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-4.0.4.tgz", + "integrity": "sha512-W5ScbQ1bTzgH91kNEE2CvOzM4gXlDOqdow4m8vMFSIXCel2scbHwjflpVNnC60Y3F1m5i7w2gQg9lSnR+JsJAA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0" + "@smithy/types": "^4.3.0" }, "engines": { "node": ">=18.0.0" } }, "node_modules/@aws-sdk/client-s3/node_modules/@smithy/shared-ini-file-loader": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.0.2.tgz", - "integrity": "sha512-J9/gTWBGVuFZ01oVA6vdb4DAjf1XbDhK6sLsu3OS9qmLrS6KB5ygpeHiM3miIbj1qgSJ96GYszXFWv6ErJ8QEw==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.0.3.tgz", + "integrity": "sha512-vHwlrqhZGIoLwaH8vvIjpHnloShqdJ7SUPNM2EQtEox+yEDFTVQ7E+DLZ+6OhnYEgFUwPByJyz6UZaOu2tny6A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -3239,18 +3270,18 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@smithy/smithy-client": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.2.0.tgz", - "integrity": "sha512-Qs65/w30pWV7LSFAez9DKy0Koaoh3iHhpcpCCJ4waj/iqwsuSzJna2+vYwq46yBaqO5ZbP9TjUsATUNxrKeBdw==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.3.0.tgz", + "integrity": "sha512-DNsRA38pN6tYHUjebmwD9e4KcgqTLldYQb2gC6K+oxXYdCTxPn6wV9+FvOa6wrU2FQEnGJoi+3GULzOTKck/tg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/core": "^3.2.0", - "@smithy/middleware-endpoint": "^4.1.0", - "@smithy/middleware-stack": "^4.0.2", - "@smithy/protocol-http": "^5.1.0", - "@smithy/types": "^4.2.0", - "@smithy/util-stream": "^4.2.0", + "@smithy/core": "^3.4.0", + "@smithy/middleware-endpoint": "^4.1.7", + "@smithy/middleware-stack": "^4.0.3", + "@smithy/protocol-http": "^5.1.1", + "@smithy/types": "^4.3.0", + "@smithy/util-stream": "^4.2.1", "tslib": "^2.6.2" }, "engines": { @@ -3258,9 +3289,9 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@smithy/types": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.2.0.tgz", - "integrity": "sha512-7eMk09zQKCO+E/ivsjQv+fDlOupcFUCSC/L2YUPgwhvowVGWbPQHjEFcmjt7QQ4ra5lyowS92SV53Zc6XD4+fg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.3.0.tgz", + "integrity": "sha512-+1iaIQHthDh9yaLhRzaoQxRk+l9xlk+JjMFxGRhNLz+m9vKOkjNeU8QuB4w3xvzHyVR/BVlp/4AXDHjoRIkfgQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -3271,14 +3302,14 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@smithy/url-parser": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-4.0.2.tgz", - "integrity": "sha512-Bm8n3j2ScqnT+kJaClSVCMeiSenK6jVAzZCNewsYWuZtnBehEz4r2qP0riZySZVfzB+03XZHJeqfmJDkeeSLiQ==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-4.0.3.tgz", + "integrity": "sha512-n5/DnosDu/tweOqUUNtUbu7eRIR4J/Wz9nL7V5kFYQQVb8VYdj7a4G5NJHCw6o21ul7CvZoJkOpdTnsQDLT0tQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/querystring-parser": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/querystring-parser": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -3341,15 +3372,15 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@smithy/util-defaults-mode-browser": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-4.0.8.tgz", - "integrity": "sha512-ZTypzBra+lI/LfTYZeop9UjoJhhGRTg3pxrNpfSTQLd3AJ37r2z4AXTKpq1rFXiiUIJsYyFgNJdjWRGP/cbBaQ==", + "version": "4.0.15", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-4.0.15.tgz", + "integrity": "sha512-bJJ/B8owQbHAflatSq92f9OcV8858DJBQF1Y3GRjB8psLyUjbISywszYPFw16beREHO/C3I3taW4VGH+tOuwrQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/property-provider": "^4.0.2", - "@smithy/smithy-client": "^4.2.0", - "@smithy/types": "^4.2.0", + "@smithy/property-provider": "^4.0.3", + "@smithy/smithy-client": "^4.3.0", + "@smithy/types": "^4.3.0", "bowser": "^2.11.0", "tslib": "^2.6.2" }, @@ -3358,18 +3389,18 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@smithy/util-defaults-mode-node": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-4.0.8.tgz", - "integrity": "sha512-Rgk0Jc/UDfRTzVthye/k2dDsz5Xxs9LZaKCNPgJTRyoyBoeiNCnHsYGOyu1PKN+sDyPnJzMOz22JbwxzBp9NNA==", + "version": "4.0.15", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-4.0.15.tgz", + "integrity": "sha512-8CUrEW2Ni5q+NmYkj8wsgkfqoP7l4ZquptFbq92yQE66xevc4SxqP2zH6tMtN158kgBqBDsZ+qlrRwXWOjCR8A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/config-resolver": "^4.1.0", - "@smithy/credential-provider-imds": "^4.0.2", - "@smithy/node-config-provider": "^4.0.2", - "@smithy/property-provider": "^4.0.2", - "@smithy/smithy-client": "^4.2.0", - "@smithy/types": "^4.2.0", + "@smithy/config-resolver": "^4.1.3", + "@smithy/credential-provider-imds": "^4.0.5", + "@smithy/node-config-provider": "^4.1.2", + "@smithy/property-provider": "^4.0.3", + "@smithy/smithy-client": "^4.3.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -3377,14 +3408,14 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@smithy/util-retry": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-4.0.2.tgz", - "integrity": "sha512-Qryc+QG+7BCpvjloFLQrmlSd0RsVRHejRXd78jNO3+oREueCjwG1CCEH1vduw/ZkM1U9TztwIKVIi3+8MJScGg==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-4.0.4.tgz", + "integrity": "sha512-Aoqr9W2jDYGrI6OxljN8VmLDQIGO4VdMAUKMf9RGqLG8hn6or+K41NEy1Y5dtum9q8F7e0obYAuKl2mt/GnpZg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/service-error-classification": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/service-error-classification": "^4.0.4", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -3392,15 +3423,15 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@smithy/util-stream": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.2.0.tgz", - "integrity": "sha512-Vj1TtwWnuWqdgQI6YTUF5hQ/0jmFiOYsc51CSMgj7QfyO+RF4EnT2HNjoviNlOOmgzgvf3f5yno+EiC4vrnaWQ==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.2.1.tgz", + "integrity": "sha512-W3IR0x5DY6iVtjj5p902oNhD+Bz7vs5S+p6tppbPa509rV9BdeXZjGuRSCtVEad9FA0Mba+tNUtUmtnSI1nwUw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/fetch-http-handler": "^5.0.2", - "@smithy/node-http-handler": "^4.0.4", - "@smithy/types": "^4.2.0", + "@smithy/fetch-http-handler": "^5.0.3", + "@smithy/node-http-handler": "^4.0.5", + "@smithy/types": "^4.3.0", "@smithy/util-base64": "^4.0.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-hex-encoding": "^4.0.0", @@ -3467,14 +3498,14 @@ } }, "node_modules/@aws-sdk/client-s3/node_modules/@smithy/util-waiter": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-4.0.3.tgz", - "integrity": "sha512-JtaY3FxmD+te+KSI2FJuEcfNC9T/DGGVf551babM7fAaXhjJUt7oSYurH1Devxd2+BOSUACCgt3buinx4UnmEA==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-4.0.4.tgz", + "integrity": "sha512-73aeIvHjtSB6fd9I08iFaQIGTICKpLrI3EtlWAkStVENGo1ARMq9qdoD4QwkY0RUp6A409xlgbD9NCCfCF5ieg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/abort-controller": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/abort-controller": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -3482,51 +3513,51 @@ } }, "node_modules/@aws-sdk/client-sqs": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sqs/-/client-sqs-3.787.0.tgz", - "integrity": "sha512-usTvGFd6q7/8rA79uhGuu7wAShE2ZEAgQSKAGYF6fTdGunZLYBArRzJT8FS79AvHAW5nddn5AON0kF+hOpAefA==", + "version": "3.817.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sqs/-/client-sqs-3.817.0.tgz", + "integrity": "sha512-U+Y/Zf2H7UT5cYSl1z8n88TaIUYi3B/cHvrqdxHnSSiZFHzy1vnGMfGKoOffjXVXYXjeutXehIW4hlUF04aq6w==", "dev": true, "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/core": "3.775.0", - "@aws-sdk/credential-provider-node": "3.787.0", - "@aws-sdk/middleware-host-header": "3.775.0", - "@aws-sdk/middleware-logger": "3.775.0", - "@aws-sdk/middleware-recursion-detection": "3.775.0", - "@aws-sdk/middleware-sdk-sqs": "3.775.0", - "@aws-sdk/middleware-user-agent": "3.787.0", - "@aws-sdk/region-config-resolver": "3.775.0", - "@aws-sdk/types": "3.775.0", - "@aws-sdk/util-endpoints": "3.787.0", - "@aws-sdk/util-user-agent-browser": "3.775.0", - "@aws-sdk/util-user-agent-node": "3.787.0", - "@smithy/config-resolver": "^4.1.0", - "@smithy/core": "^3.2.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/credential-provider-node": "3.817.0", + "@aws-sdk/middleware-host-header": "3.804.0", + "@aws-sdk/middleware-logger": "3.804.0", + "@aws-sdk/middleware-recursion-detection": "3.804.0", + "@aws-sdk/middleware-sdk-sqs": "3.810.0", + "@aws-sdk/middleware-user-agent": "3.816.0", + "@aws-sdk/region-config-resolver": "3.808.0", + "@aws-sdk/types": "3.804.0", + "@aws-sdk/util-endpoints": "3.808.0", + "@aws-sdk/util-user-agent-browser": "3.804.0", + "@aws-sdk/util-user-agent-node": "3.816.0", + "@smithy/config-resolver": "^4.1.2", + "@smithy/core": "^3.3.3", "@smithy/fetch-http-handler": "^5.0.2", "@smithy/hash-node": "^4.0.2", "@smithy/invalid-dependency": "^4.0.2", "@smithy/md5-js": "^4.0.2", "@smithy/middleware-content-length": "^4.0.2", - "@smithy/middleware-endpoint": "^4.1.0", - "@smithy/middleware-retry": "^4.1.0", - "@smithy/middleware-serde": "^4.0.3", + "@smithy/middleware-endpoint": "^4.1.6", + "@smithy/middleware-retry": "^4.1.7", + "@smithy/middleware-serde": "^4.0.5", "@smithy/middleware-stack": "^4.0.2", - "@smithy/node-config-provider": "^4.0.2", + "@smithy/node-config-provider": "^4.1.1", "@smithy/node-http-handler": "^4.0.4", "@smithy/protocol-http": "^5.1.0", - "@smithy/smithy-client": "^4.2.0", + "@smithy/smithy-client": "^4.2.6", "@smithy/types": "^4.2.0", "@smithy/url-parser": "^4.0.2", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", - "@smithy/util-defaults-mode-browser": "^4.0.8", - "@smithy/util-defaults-mode-node": "^4.0.8", - "@smithy/util-endpoints": "^3.0.2", + "@smithy/util-defaults-mode-browser": "^4.0.14", + "@smithy/util-defaults-mode-node": "^4.0.14", + "@smithy/util-endpoints": "^3.0.4", "@smithy/util-middleware": "^4.0.2", - "@smithy/util-retry": "^4.0.2", + "@smithy/util-retry": "^4.0.3", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" }, @@ -3616,48 +3647,48 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@aws-sdk/client-sso": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.787.0.tgz", - "integrity": "sha512-L8R+Mh258G0DC73ktpSVrG4TT9i2vmDLecARTDR/4q5sRivdDQSL5bUp3LKcK80Bx+FRw3UETIlX6mYMLL9PJQ==", + "version": "3.817.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.817.0.tgz", + "integrity": "sha512-fCh5rUHmWmWDvw70NNoWpE5+BRdtNi45kDnIoeoszqVg7UKF79SlG+qYooUT52HKCgDNHqgbWaXxMOSqd2I/OQ==", "dev": true, "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/core": "3.775.0", - "@aws-sdk/middleware-host-header": "3.775.0", - "@aws-sdk/middleware-logger": "3.775.0", - "@aws-sdk/middleware-recursion-detection": "3.775.0", - "@aws-sdk/middleware-user-agent": "3.787.0", - "@aws-sdk/region-config-resolver": "3.775.0", - "@aws-sdk/types": "3.775.0", - "@aws-sdk/util-endpoints": "3.787.0", - "@aws-sdk/util-user-agent-browser": "3.775.0", - "@aws-sdk/util-user-agent-node": "3.787.0", - "@smithy/config-resolver": "^4.1.0", - "@smithy/core": "^3.2.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/middleware-host-header": "3.804.0", + "@aws-sdk/middleware-logger": "3.804.0", + "@aws-sdk/middleware-recursion-detection": "3.804.0", + "@aws-sdk/middleware-user-agent": "3.816.0", + "@aws-sdk/region-config-resolver": "3.808.0", + "@aws-sdk/types": "3.804.0", + "@aws-sdk/util-endpoints": "3.808.0", + "@aws-sdk/util-user-agent-browser": "3.804.0", + "@aws-sdk/util-user-agent-node": "3.816.0", + "@smithy/config-resolver": "^4.1.2", + "@smithy/core": "^3.3.3", "@smithy/fetch-http-handler": "^5.0.2", "@smithy/hash-node": "^4.0.2", "@smithy/invalid-dependency": "^4.0.2", "@smithy/middleware-content-length": "^4.0.2", - "@smithy/middleware-endpoint": "^4.1.0", - "@smithy/middleware-retry": "^4.1.0", - "@smithy/middleware-serde": "^4.0.3", + "@smithy/middleware-endpoint": "^4.1.6", + "@smithy/middleware-retry": "^4.1.7", + "@smithy/middleware-serde": "^4.0.5", "@smithy/middleware-stack": "^4.0.2", - "@smithy/node-config-provider": "^4.0.2", + "@smithy/node-config-provider": "^4.1.1", "@smithy/node-http-handler": "^4.0.4", "@smithy/protocol-http": "^5.1.0", - "@smithy/smithy-client": "^4.2.0", + "@smithy/smithy-client": "^4.2.6", "@smithy/types": "^4.2.0", "@smithy/url-parser": "^4.0.2", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", - "@smithy/util-defaults-mode-browser": "^4.0.8", - "@smithy/util-defaults-mode-node": "^4.0.8", - "@smithy/util-endpoints": "^3.0.2", + "@smithy/util-defaults-mode-browser": "^4.0.14", + "@smithy/util-defaults-mode-node": "^4.0.14", + "@smithy/util-endpoints": "^3.0.4", "@smithy/util-middleware": "^4.0.2", - "@smithy/util-retry": "^4.0.2", + "@smithy/util-retry": "^4.0.3", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" }, @@ -3666,14 +3697,14 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@aws-sdk/credential-provider-env": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.775.0.tgz", - "integrity": "sha512-6ESVxwCbGm7WZ17kY1fjmxQud43vzJFoLd4bmlR+idQSWdqlzGDYdcfzpjDKTcivdtNrVYmFvcH1JBUwCRAZhw==", + "version": "3.816.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.816.0.tgz", + "integrity": "sha512-wUJZwRLe+SxPxRV9AENYBLrJZRrNIo+fva7ZzejsC83iz7hdfq6Rv6B/aHEdPwG/nQC4+q7UUvcRPlomyrpsBA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "3.775.0", - "@aws-sdk/types": "3.775.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/types": "3.804.0", "@smithy/property-provider": "^4.0.2", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" @@ -3683,21 +3714,21 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.787.0.tgz", - "integrity": "sha512-hc2taRoDlXn2uuNuHWDJljVWYrp3r9JF1a/8XmOAZhVUNY+ImeeStylHXhXXKEA4JOjW+5PdJj0f1UDkVCHJiQ==", + "version": "3.817.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.817.0.tgz", + "integrity": "sha512-kyEwbQyuXE+phWVzloMdkFv6qM6NOon+asMXY5W0fhDKwBz9zQLObDRWBrvQX9lmqq8BbDL1sCfZjOh82Y+RFw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "3.775.0", - "@aws-sdk/credential-provider-env": "3.775.0", - "@aws-sdk/credential-provider-http": "3.775.0", - "@aws-sdk/credential-provider-process": "3.775.0", - "@aws-sdk/credential-provider-sso": "3.787.0", - "@aws-sdk/credential-provider-web-identity": "3.787.0", - "@aws-sdk/nested-clients": "3.787.0", - "@aws-sdk/types": "3.775.0", - "@smithy/credential-provider-imds": "^4.0.2", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/credential-provider-env": "3.816.0", + "@aws-sdk/credential-provider-http": "3.816.0", + "@aws-sdk/credential-provider-process": "3.816.0", + "@aws-sdk/credential-provider-sso": "3.817.0", + "@aws-sdk/credential-provider-web-identity": "3.817.0", + "@aws-sdk/nested-clients": "3.817.0", + "@aws-sdk/types": "3.804.0", + "@smithy/credential-provider-imds": "^4.0.4", "@smithy/property-provider": "^4.0.2", "@smithy/shared-ini-file-loader": "^4.0.2", "@smithy/types": "^4.2.0", @@ -3708,20 +3739,20 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@aws-sdk/credential-provider-node": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.787.0.tgz", - "integrity": "sha512-JioVi44B1vDMaK2CdzqimwvJD3uzvzbQhaEWXsGMBcMcNHajXAXf08EF50JG3ZhLrhhUsT1ObXpbTaPINOhh+g==", + "version": "3.817.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.817.0.tgz", + "integrity": "sha512-b5mz7av0Lhavs1Bz3Zb+jrs0Pki93+8XNctnVO0drBW98x1fM4AR38cWvGbM/w9F9Q0/WEH3TinkmrMPrP4T/w==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/credential-provider-env": "3.775.0", - "@aws-sdk/credential-provider-http": "3.775.0", - "@aws-sdk/credential-provider-ini": "3.787.0", - "@aws-sdk/credential-provider-process": "3.775.0", - "@aws-sdk/credential-provider-sso": "3.787.0", - "@aws-sdk/credential-provider-web-identity": "3.787.0", - "@aws-sdk/types": "3.775.0", - "@smithy/credential-provider-imds": "^4.0.2", + "@aws-sdk/credential-provider-env": "3.816.0", + "@aws-sdk/credential-provider-http": "3.816.0", + "@aws-sdk/credential-provider-ini": "3.817.0", + "@aws-sdk/credential-provider-process": "3.816.0", + "@aws-sdk/credential-provider-sso": "3.817.0", + "@aws-sdk/credential-provider-web-identity": "3.817.0", + "@aws-sdk/types": "3.804.0", + "@smithy/credential-provider-imds": "^4.0.4", "@smithy/property-provider": "^4.0.2", "@smithy/shared-ini-file-loader": "^4.0.2", "@smithy/types": "^4.2.0", @@ -3732,14 +3763,14 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@aws-sdk/credential-provider-process": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.775.0.tgz", - "integrity": "sha512-A6k68H9rQp+2+7P7SGO90Csw6nrUEm0Qfjpn9Etc4EboZhhCLs9b66umUsTsSBHus4FDIe5JQxfCUyt1wgNogg==", + "version": "3.816.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.816.0.tgz", + "integrity": "sha512-9Tm+AxMoV2Izvl5b9tyMQRbBwaex8JP06HN7ZeCXgC5sAsSN+o8dsThnEhf8jKN+uBpT6CLWKN1TXuUMrAmW1A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "3.775.0", - "@aws-sdk/types": "3.775.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/types": "3.804.0", "@smithy/property-provider": "^4.0.2", "@smithy/shared-ini-file-loader": "^4.0.2", "@smithy/types": "^4.2.0", @@ -3750,16 +3781,16 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@aws-sdk/credential-provider-sso": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.787.0.tgz", - "integrity": "sha512-fHc08bsvwm4+dEMEQKnQ7c1irEQmmxbgS+Fq41y09pPvPh31nAhoMcjBSTWAaPHvvsRbTYvmP4Mf12ZGr8/nfg==", + "version": "3.817.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.817.0.tgz", + "integrity": "sha512-gFUAW3VmGvdnueK1bh6TOcRX+j99Xm0men1+gz3cA4RE+rZGNy1Qjj8YHlv0hPwI9OnTPZquvPzA5fkviGREWg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/client-sso": "3.787.0", - "@aws-sdk/core": "3.775.0", - "@aws-sdk/token-providers": "3.787.0", - "@aws-sdk/types": "3.775.0", + "@aws-sdk/client-sso": "3.817.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/token-providers": "3.817.0", + "@aws-sdk/types": "3.804.0", "@smithy/property-provider": "^4.0.2", "@smithy/shared-ini-file-loader": "^4.0.2", "@smithy/types": "^4.2.0", @@ -3770,15 +3801,15 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@aws-sdk/credential-provider-web-identity": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.787.0.tgz", - "integrity": "sha512-SobmCwNbk6TfEsF283mZPQEI5vV2j6eY5tOCj8Er4Lzraxu9fBPADV+Bib2A8F6jlB1lMPJzOuDCbEasSt/RIw==", + "version": "3.817.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.817.0.tgz", + "integrity": "sha512-A2kgkS9g6NY0OMT2f2EdXHpL17Ym81NhbGnQ8bRXPqESIi7TFypFD2U6osB2VnsFv+MhwM+Ke4PKXSmLun22/A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "3.775.0", - "@aws-sdk/nested-clients": "3.787.0", - "@aws-sdk/types": "3.775.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/nested-clients": "3.817.0", + "@aws-sdk/types": "3.804.0", "@smithy/property-provider": "^4.0.2", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" @@ -3788,13 +3819,13 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@aws-sdk/middleware-host-header": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.775.0.tgz", - "integrity": "sha512-tkSegM0Z6WMXpLB8oPys/d+umYIocvO298mGvcMCncpRl77L9XkvSLJIFzaHes+o7djAgIduYw8wKIMStFss2w==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.804.0.tgz", + "integrity": "sha512-bum1hLVBrn2lJCi423Z2fMUYtsbkGI2s4N+2RI2WSjvbaVyMSv/WcejIrjkqiiMR+2Y7m5exgoKeg4/TODLDPQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.775.0", + "@aws-sdk/types": "3.804.0", "@smithy/protocol-http": "^5.1.0", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" @@ -3804,13 +3835,13 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@aws-sdk/middleware-logger": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.775.0.tgz", - "integrity": "sha512-FaxO1xom4MAoUJsldmR92nT1G6uZxTdNYOFYtdHfd6N2wcNaTuxgjIvqzg5y7QIH9kn58XX/dzf1iTjgqUStZw==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.804.0.tgz", + "integrity": "sha512-w/qLwL3iq0KOPQNat0Kb7sKndl9BtceigINwBU7SpkYWX9L/Lem6f8NPEKrC9Tl4wDBht3Yztub4oRTy/horJA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.775.0", + "@aws-sdk/types": "3.804.0", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" }, @@ -3819,13 +3850,13 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@aws-sdk/middleware-recursion-detection": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.775.0.tgz", - "integrity": "sha512-GLCzC8D0A0YDG5u3F5U03Vb9j5tcOEFhr8oc6PDk0k0vm5VwtZOE6LvK7hcCSoAB4HXyOUM0sQuXrbaAh9OwXA==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.804.0.tgz", + "integrity": "sha512-zqHOrvLRdsUdN/ehYfZ9Tf8svhbiLLz5VaWUz22YndFv6m9qaAcijkpAOlKexsv3nLBMJdSdJ6GUTAeIy3BZzw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.775.0", + "@aws-sdk/types": "3.804.0", "@smithy/protocol-http": "^5.1.0", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" @@ -3835,16 +3866,16 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@aws-sdk/middleware-user-agent": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.787.0.tgz", - "integrity": "sha512-Lnfj8SmPLYtrDFthNIaNj66zZsBCam+E4XiUDr55DIHTGstH6qZ/q6vg0GfbukxwSmUcGMwSR4Qbn8rb8yd77g==", + "version": "3.816.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.816.0.tgz", + "integrity": "sha512-bHRSlWZ0xDsFR8E2FwDb//0Ff6wMkVx4O+UKsfyNlAbtqCiiHRt5ANNfKPafr95cN2CCxLxiPvFTFVblQM5TsQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "3.775.0", - "@aws-sdk/types": "3.775.0", - "@aws-sdk/util-endpoints": "3.787.0", - "@smithy/core": "^3.2.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/types": "3.804.0", + "@aws-sdk/util-endpoints": "3.808.0", + "@smithy/core": "^3.3.3", "@smithy/protocol-http": "^5.1.0", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" @@ -3854,14 +3885,15 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@aws-sdk/token-providers": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.787.0.tgz", - "integrity": "sha512-d7/NIqxq308Zg0RPMNrmn0QvzniL4Hx8Qdwzr6YZWLYAbUSvZYS2ppLR3BFWSkV6SsTJUx8BuDaj3P8vttkrog==", + "version": "3.817.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.817.0.tgz", + "integrity": "sha512-CYN4/UO0VaqyHf46ogZzNrVX7jI3/CfiuktwKlwtpKA6hjf2+ivfgHSKzPpgPBcSEfiibA/26EeLuMnB6cpSrQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/nested-clients": "3.787.0", - "@aws-sdk/types": "3.775.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/nested-clients": "3.817.0", + "@aws-sdk/types": "3.804.0", "@smithy/property-provider": "^4.0.2", "@smithy/shared-ini-file-loader": "^4.0.2", "@smithy/types": "^4.2.0", @@ -3872,9 +3904,9 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@aws-sdk/types": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.775.0.tgz", - "integrity": "sha512-ZoGKwa4C9fC9Av6bdfqcW6Ix5ot05F/S4VxWR2nHuMv7hzfmAjTOcUiWT7UR4hM/U0whf84VhDtXN/DWAk52KA==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.804.0.tgz", + "integrity": "sha512-A9qnsy9zQ8G89vrPPlNG9d1d8QcKRGqJKqwyGgS0dclJpwy6d1EWgQLIolKPl6vcFpLoe6avLOLxr+h8ur5wpg==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -3886,15 +3918,15 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@aws-sdk/util-endpoints": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.787.0.tgz", - "integrity": "sha512-fd3zkiOkwnbdbN0Xp9TsP5SWrmv0SpT70YEdbb8wAj2DWQwiCmFszaSs+YCvhoCdmlR3Wl9Spu0pGpSAGKeYvQ==", + "version": "3.808.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.808.0.tgz", + "integrity": "sha512-N6Lic98uc4ADB7fLWlzx+1uVnq04VgVjngZvwHoujcRg9YDhIg9dUDiTzD5VZv13g1BrPYmvYP1HhsildpGV6w==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.775.0", + "@aws-sdk/types": "3.804.0", "@smithy/types": "^4.2.0", - "@smithy/util-endpoints": "^3.0.2", + "@smithy/util-endpoints": "^3.0.4", "tslib": "^2.6.2" }, "engines": { @@ -3902,28 +3934,28 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@aws-sdk/util-user-agent-browser": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.775.0.tgz", - "integrity": "sha512-txw2wkiJmZKVdDbscK7VBK+u+TJnRtlUjRTLei+elZg2ADhpQxfVAQl436FUeIv6AhB/oRHW6/K/EAGXUSWi0A==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.804.0.tgz", + "integrity": "sha512-KfW6T6nQHHM/vZBBdGn6fMyG/MgX5lq82TDdX4HRQRRuHKLgBWGpKXqqvBwqIaCdXwWHgDrg2VQups6GqOWW2A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.775.0", + "@aws-sdk/types": "3.804.0", "@smithy/types": "^4.2.0", "bowser": "^2.11.0", "tslib": "^2.6.2" } }, "node_modules/@aws-sdk/client-sqs/node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.787.0.tgz", - "integrity": "sha512-mG7Lz8ydfG4SF9e8WSXiPQ/Lsn3n8A5B5jtPROidafi06I3ckV2WxyMLdwG14m919NoS6IOfWHyRGSqWIwbVKA==", + "version": "3.816.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.816.0.tgz", + "integrity": "sha512-Q6dxmuj4hL7pudhrneWEQ7yVHIQRBFr0wqKLF1opwOi1cIePuoEbPyJ2jkel6PDEv1YMfvsAKaRshp6eNA8VHg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/middleware-user-agent": "3.787.0", - "@aws-sdk/types": "3.775.0", - "@smithy/node-config-provider": "^4.0.2", + "@aws-sdk/middleware-user-agent": "3.816.0", + "@aws-sdk/types": "3.804.0", + "@smithy/node-config-provider": "^4.1.1", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" }, @@ -3940,13 +3972,13 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@smithy/abort-controller": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.0.2.tgz", - "integrity": "sha512-Sl/78VDtgqKxN2+1qduaVE140XF+Xg+TafkncspwM4jFP/LHr76ZHmIY/y3V1M0mMLNk+Je6IGbzxy23RSToMw==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.0.3.tgz", + "integrity": "sha512-AqXFf6DXnuRBXy4SoK/n1mfgHaKaq36bmkphmD1KO0nHq6xK/g9KHSW4HEsPQUBCGdIEfuJifGHwxFXPIFay9Q==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -3954,16 +3986,16 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@smithy/config-resolver": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-4.1.0.tgz", - "integrity": "sha512-8smPlwhga22pwl23fM5ew4T9vfLUCeFXlcqNOCD5M5h8VmNPNUE9j6bQSuRXpDSV11L/E/SwEBQuW8hr6+nS1A==", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-4.1.3.tgz", + "integrity": "sha512-N5e7ofiyYDmHxnPnqF8L4KtsbSDwyxFRfDK9bp1d9OyPO4ytRLd0/XxCqi5xVaaqB65v4woW8uey6jND6zxzxQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/node-config-provider": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/node-config-provider": "^4.1.2", + "@smithy/types": "^4.3.0", "@smithy/util-config-provider": "^4.0.0", - "@smithy/util-middleware": "^4.0.2", + "@smithy/util-middleware": "^4.0.3", "tslib": "^2.6.2" }, "engines": { @@ -3971,16 +4003,16 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@smithy/credential-provider-imds": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-4.0.2.tgz", - "integrity": "sha512-32lVig6jCaWBHnY+OEQ6e6Vnt5vDHaLiydGrwYMW9tPqO688hPGTYRamYJ1EptxEC2rAwJrHWmPoKRBl4iTa8w==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-4.0.5.tgz", + "integrity": "sha512-saEAGwrIlkb9XxX/m5S5hOtzjoJPEK6Qw2f9pYTbIsMPOFyGSXBBTw95WbOyru8A1vIS2jVCCU1Qhz50QWG3IA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/node-config-provider": "^4.0.2", - "@smithy/property-provider": "^4.0.2", - "@smithy/types": "^4.2.0", - "@smithy/url-parser": "^4.0.2", + "@smithy/node-config-provider": "^4.1.2", + "@smithy/property-provider": "^4.0.3", + "@smithy/types": "^4.3.0", + "@smithy/url-parser": "^4.0.3", "tslib": "^2.6.2" }, "engines": { @@ -3988,15 +4020,15 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@smithy/fetch-http-handler": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.0.2.tgz", - "integrity": "sha512-+9Dz8sakS9pe7f2cBocpJXdeVjMopUDLgZs1yWeu7h++WqSbjUYv/JAJwKwXw1HV6gq1jyWjxuyn24E2GhoEcQ==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.0.3.tgz", + "integrity": "sha512-yBZwavI31roqTndNI7ONHqesfH01JmjJK6L3uUpZAhyAmr86LN5QiPzfyZGIxQmed8VEK2NRSQT3/JX5V1njfQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/protocol-http": "^5.1.0", - "@smithy/querystring-builder": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/protocol-http": "^5.1.1", + "@smithy/querystring-builder": "^4.0.3", + "@smithy/types": "^4.3.0", "@smithy/util-base64": "^4.0.0", "tslib": "^2.6.2" }, @@ -4005,13 +4037,13 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@smithy/hash-node": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-4.0.2.tgz", - "integrity": "sha512-VnTpYPnRUE7yVhWozFdlxcYknv9UN7CeOqSrMH+V877v4oqtVYuoqhIhtSjmGPvYrYnAkaM61sLMKHvxL138yg==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-4.0.3.tgz", + "integrity": "sha512-W5Uhy6v/aYrgtjh9y0YP332gIQcwccQ+EcfWhllL0B9rPae42JngTTUpb8W6wuxaNFzqps4xq5klHckSSOy5fw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" @@ -4035,13 +4067,13 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@smithy/invalid-dependency": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-4.0.2.tgz", - "integrity": "sha512-GatB4+2DTpgWPday+mnUkoumP54u/MDM/5u44KF9hIu8jF0uafZtQLcdfIKkIcUNuF/fBojpLEHZS/56JqPeXQ==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-4.0.3.tgz", + "integrity": "sha512-1Bo8Ur1ZGqxvwTqBmv6DZEn0rXtwJGeqiiO2/JFcCtz3nBakOqeXbJBElXJMMzd0ghe8+eB6Dkw98nMYctgizg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -4049,14 +4081,14 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@smithy/middleware-content-length": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-4.0.2.tgz", - "integrity": "sha512-hAfEXm1zU+ELvucxqQ7I8SszwQ4znWMbNv6PLMndN83JJN41EPuS93AIyh2N+gJ6x8QFhzSO6b7q2e6oClDI8A==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-4.0.3.tgz", + "integrity": "sha512-NE/Zph4BP5u16bzYq2csq9qD0T6UBLeg4AuNrwNJ7Gv9uLYaGEgelZUOdRndGdMGcUfSGvNlXGb2aA2hPCwJ6g==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/protocol-http": "^5.1.0", - "@smithy/types": "^4.2.0", + "@smithy/protocol-http": "^5.1.1", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -4064,19 +4096,19 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@smithy/middleware-endpoint": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.1.0.tgz", - "integrity": "sha512-xhLimgNCbCzsUppRTGXWkZywksuTThxaIB0HwbpsVLY5sceac4e1TZ/WKYqufQLaUy+gUSJGNdwD2jo3cXL0iA==", + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.1.7.tgz", + "integrity": "sha512-KDzM7Iajo6K7eIWNNtukykRT4eWwlHjCEsULZUaSfi/SRSBK8BPRqG5FsVfp58lUxcvre8GT8AIPIqndA0ERKw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/core": "^3.2.0", - "@smithy/middleware-serde": "^4.0.3", - "@smithy/node-config-provider": "^4.0.2", - "@smithy/shared-ini-file-loader": "^4.0.2", - "@smithy/types": "^4.2.0", - "@smithy/url-parser": "^4.0.2", - "@smithy/util-middleware": "^4.0.2", + "@smithy/core": "^3.4.0", + "@smithy/middleware-serde": "^4.0.6", + "@smithy/node-config-provider": "^4.1.2", + "@smithy/shared-ini-file-loader": "^4.0.3", + "@smithy/types": "^4.3.0", + "@smithy/url-parser": "^4.0.3", + "@smithy/util-middleware": "^4.0.3", "tslib": "^2.6.2" }, "engines": { @@ -4084,19 +4116,19 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@smithy/middleware-retry": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-4.1.0.tgz", - "integrity": "sha512-2zAagd1s6hAaI/ap6SXi5T3dDwBOczOMCSkkYzktqN1+tzbk1GAsHNAdo/1uzxz3Ky02jvZQwbi/vmDA6z4Oyg==", + "version": "4.1.8", + "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-4.1.8.tgz", + "integrity": "sha512-e2OtQgFzzlSG0uCjcJmi02QuFSRTrpT11Eh2EcqqDFy7DYriteHZJkkf+4AsxsrGDugAtPFcWBz1aq06sSX5fQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/node-config-provider": "^4.0.2", - "@smithy/protocol-http": "^5.1.0", - "@smithy/service-error-classification": "^4.0.2", - "@smithy/smithy-client": "^4.2.0", - "@smithy/types": "^4.2.0", - "@smithy/util-middleware": "^4.0.2", - "@smithy/util-retry": "^4.0.2", + "@smithy/node-config-provider": "^4.1.2", + "@smithy/protocol-http": "^5.1.1", + "@smithy/service-error-classification": "^4.0.4", + "@smithy/smithy-client": "^4.3.0", + "@smithy/types": "^4.3.0", + "@smithy/util-middleware": "^4.0.3", + "@smithy/util-retry": "^4.0.4", "tslib": "^2.6.2", "uuid": "^9.0.1" }, @@ -4105,13 +4137,14 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@smithy/middleware-serde": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.0.3.tgz", - "integrity": "sha512-rfgDVrgLEVMmMn0BI8O+8OVr6vXzjV7HZj57l0QxslhzbvVfikZbVfBVthjLHqib4BW44QhcIgJpvebHlRaC9A==", + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.0.6.tgz", + "integrity": "sha512-YECyl7uNII+jCr/9qEmCu8xYL79cU0fqjo0qxpcVIU18dAPHam/iYwcknAu4Jiyw1uN+sAx7/SMf/Kmef/Jjsg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/protocol-http": "^5.1.1", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -4119,13 +4152,13 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@smithy/middleware-stack": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-4.0.2.tgz", - "integrity": "sha512-eSPVcuJJGVYrFYu2hEq8g8WWdJav3sdrI4o2c6z/rjnYDd3xH9j9E7deZQCzFn4QvGPouLngH3dQ+QVTxv5bOQ==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-4.0.3.tgz", + "integrity": "sha512-baeV7t4jQfQtFxBADFmnhmqBmqR38dNU5cvEgHcMK/Kp3D3bEI0CouoX2Sr/rGuntR+Eg0IjXdxnGGTc6SbIkw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -4133,15 +4166,15 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@smithy/node-config-provider": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.0.2.tgz", - "integrity": "sha512-WgCkILRZfJwJ4Da92a6t3ozN/zcvYyJGUTmfGbgS/FkCcoCjl7G4FJaCDN1ySdvLvemnQeo25FdkyMSTSwulsw==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.1.2.tgz", + "integrity": "sha512-SUvNup8iU1v7fmM8XPk+27m36udmGCfSz+VZP5Gb0aJ3Ne0X28K/25gnsrg3X1rWlhcnhzNUUysKW/Ied46ivQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/property-provider": "^4.0.2", - "@smithy/shared-ini-file-loader": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/property-provider": "^4.0.3", + "@smithy/shared-ini-file-loader": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -4149,16 +4182,16 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@smithy/node-http-handler": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.0.4.tgz", - "integrity": "sha512-/mdqabuAT3o/ihBGjL94PUbTSPSRJ0eeVTdgADzow0wRJ0rN4A27EOrtlK56MYiO1fDvlO3jVTCxQtQmK9dZ1g==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.0.5.tgz", + "integrity": "sha512-T7QglZC1vS7SPT44/1qSIAQEx5bFKb3LfO6zw/o4Xzt1eC5HNoH1TkS4lMYA9cWFbacUhx4hRl/blLun4EOCkg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/abort-controller": "^4.0.2", - "@smithy/protocol-http": "^5.1.0", - "@smithy/querystring-builder": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/abort-controller": "^4.0.3", + "@smithy/protocol-http": "^5.1.1", + "@smithy/querystring-builder": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -4166,13 +4199,13 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@smithy/protocol-http": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.0.tgz", - "integrity": "sha512-KxAOL1nUNw2JTYrtviRRjEnykIDhxc84qMBzxvu1MUfQfHTuBlCG7PA6EdVwqpJjH7glw7FqQoFxUJSyBQgu7g==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.1.tgz", + "integrity": "sha512-Vsay2mzq05DwNi9jK01yCFtfvu9HimmgC7a4HTs7lhX12Sx8aWsH0mfz6q/02yspSp+lOB+Q2HJwi4IV2GKz7A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -4180,13 +4213,13 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@smithy/querystring-builder": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.0.2.tgz", - "integrity": "sha512-NTOs0FwHw1vimmQM4ebh+wFQvOwkEf/kQL6bSM1Lock+Bv4I89B3hGYoUEPkmvYPkDKyp5UdXJYu+PoTQ3T31Q==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.0.3.tgz", + "integrity": "sha512-UUzIWMVfPmDZcOutk2/r1vURZqavvQW0OHvgsyNV0cKupChvqg+/NKPRMaMEe+i8tP96IthMFeZOZWpV+E4RAw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "@smithy/util-uri-escape": "^4.0.0", "tslib": "^2.6.2" }, @@ -4195,13 +4228,13 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@smithy/querystring-parser": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-4.0.2.tgz", - "integrity": "sha512-v6w8wnmZcVXjfVLjxw8qF7OwESD9wnpjp0Dqry/Pod0/5vcEA3qxCr+BhbOHlxS8O+29eLpT3aagxXGwIoEk7Q==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-4.0.3.tgz", + "integrity": "sha512-K5M4ZJQpFCblOJ5Oyw7diICpFg1qhhR47m2/5Ef1PhGE19RaIZf50tjYFrxa6usqcuXyTiFPGo4d1geZdH4YcQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -4209,26 +4242,26 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@smithy/service-error-classification": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-4.0.2.tgz", - "integrity": "sha512-LA86xeFpTKn270Hbkixqs5n73S+LVM0/VZco8dqd+JT75Dyx3Lcw/MraL7ybjmz786+160K8rPOmhsq0SocoJQ==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-4.0.4.tgz", + "integrity": "sha512-W5ScbQ1bTzgH91kNEE2CvOzM4gXlDOqdow4m8vMFSIXCel2scbHwjflpVNnC60Y3F1m5i7w2gQg9lSnR+JsJAA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0" + "@smithy/types": "^4.3.0" }, "engines": { "node": ">=18.0.0" } }, "node_modules/@aws-sdk/client-sqs/node_modules/@smithy/shared-ini-file-loader": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.0.2.tgz", - "integrity": "sha512-J9/gTWBGVuFZ01oVA6vdb4DAjf1XbDhK6sLsu3OS9qmLrS6KB5ygpeHiM3miIbj1qgSJ96GYszXFWv6ErJ8QEw==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.0.3.tgz", + "integrity": "sha512-vHwlrqhZGIoLwaH8vvIjpHnloShqdJ7SUPNM2EQtEox+yEDFTVQ7E+DLZ+6OhnYEgFUwPByJyz6UZaOu2tny6A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -4236,18 +4269,18 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@smithy/smithy-client": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.2.0.tgz", - "integrity": "sha512-Qs65/w30pWV7LSFAez9DKy0Koaoh3iHhpcpCCJ4waj/iqwsuSzJna2+vYwq46yBaqO5ZbP9TjUsATUNxrKeBdw==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.3.0.tgz", + "integrity": "sha512-DNsRA38pN6tYHUjebmwD9e4KcgqTLldYQb2gC6K+oxXYdCTxPn6wV9+FvOa6wrU2FQEnGJoi+3GULzOTKck/tg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/core": "^3.2.0", - "@smithy/middleware-endpoint": "^4.1.0", - "@smithy/middleware-stack": "^4.0.2", - "@smithy/protocol-http": "^5.1.0", - "@smithy/types": "^4.2.0", - "@smithy/util-stream": "^4.2.0", + "@smithy/core": "^3.4.0", + "@smithy/middleware-endpoint": "^4.1.7", + "@smithy/middleware-stack": "^4.0.3", + "@smithy/protocol-http": "^5.1.1", + "@smithy/types": "^4.3.0", + "@smithy/util-stream": "^4.2.1", "tslib": "^2.6.2" }, "engines": { @@ -4255,9 +4288,9 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@smithy/types": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.2.0.tgz", - "integrity": "sha512-7eMk09zQKCO+E/ivsjQv+fDlOupcFUCSC/L2YUPgwhvowVGWbPQHjEFcmjt7QQ4ra5lyowS92SV53Zc6XD4+fg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.3.0.tgz", + "integrity": "sha512-+1iaIQHthDh9yaLhRzaoQxRk+l9xlk+JjMFxGRhNLz+m9vKOkjNeU8QuB4w3xvzHyVR/BVlp/4AXDHjoRIkfgQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -4268,14 +4301,14 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@smithy/url-parser": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-4.0.2.tgz", - "integrity": "sha512-Bm8n3j2ScqnT+kJaClSVCMeiSenK6jVAzZCNewsYWuZtnBehEz4r2qP0riZySZVfzB+03XZHJeqfmJDkeeSLiQ==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-4.0.3.tgz", + "integrity": "sha512-n5/DnosDu/tweOqUUNtUbu7eRIR4J/Wz9nL7V5kFYQQVb8VYdj7a4G5NJHCw6o21ul7CvZoJkOpdTnsQDLT0tQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/querystring-parser": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/querystring-parser": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -4338,15 +4371,15 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@smithy/util-defaults-mode-browser": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-4.0.8.tgz", - "integrity": "sha512-ZTypzBra+lI/LfTYZeop9UjoJhhGRTg3pxrNpfSTQLd3AJ37r2z4AXTKpq1rFXiiUIJsYyFgNJdjWRGP/cbBaQ==", + "version": "4.0.15", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-4.0.15.tgz", + "integrity": "sha512-bJJ/B8owQbHAflatSq92f9OcV8858DJBQF1Y3GRjB8psLyUjbISywszYPFw16beREHO/C3I3taW4VGH+tOuwrQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/property-provider": "^4.0.2", - "@smithy/smithy-client": "^4.2.0", - "@smithy/types": "^4.2.0", + "@smithy/property-provider": "^4.0.3", + "@smithy/smithy-client": "^4.3.0", + "@smithy/types": "^4.3.0", "bowser": "^2.11.0", "tslib": "^2.6.2" }, @@ -4355,18 +4388,18 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@smithy/util-defaults-mode-node": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-4.0.8.tgz", - "integrity": "sha512-Rgk0Jc/UDfRTzVthye/k2dDsz5Xxs9LZaKCNPgJTRyoyBoeiNCnHsYGOyu1PKN+sDyPnJzMOz22JbwxzBp9NNA==", + "version": "4.0.15", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-4.0.15.tgz", + "integrity": "sha512-8CUrEW2Ni5q+NmYkj8wsgkfqoP7l4ZquptFbq92yQE66xevc4SxqP2zH6tMtN158kgBqBDsZ+qlrRwXWOjCR8A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/config-resolver": "^4.1.0", - "@smithy/credential-provider-imds": "^4.0.2", - "@smithy/node-config-provider": "^4.0.2", - "@smithy/property-provider": "^4.0.2", - "@smithy/smithy-client": "^4.2.0", - "@smithy/types": "^4.2.0", + "@smithy/config-resolver": "^4.1.3", + "@smithy/credential-provider-imds": "^4.0.5", + "@smithy/node-config-provider": "^4.1.2", + "@smithy/property-provider": "^4.0.3", + "@smithy/smithy-client": "^4.3.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -4374,14 +4407,14 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@smithy/util-retry": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-4.0.2.tgz", - "integrity": "sha512-Qryc+QG+7BCpvjloFLQrmlSd0RsVRHejRXd78jNO3+oREueCjwG1CCEH1vduw/ZkM1U9TztwIKVIi3+8MJScGg==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-4.0.4.tgz", + "integrity": "sha512-Aoqr9W2jDYGrI6OxljN8VmLDQIGO4VdMAUKMf9RGqLG8hn6or+K41NEy1Y5dtum9q8F7e0obYAuKl2mt/GnpZg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/service-error-classification": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/service-error-classification": "^4.0.4", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -4389,15 +4422,15 @@ } }, "node_modules/@aws-sdk/client-sqs/node_modules/@smithy/util-stream": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.2.0.tgz", - "integrity": "sha512-Vj1TtwWnuWqdgQI6YTUF5hQ/0jmFiOYsc51CSMgj7QfyO+RF4EnT2HNjoviNlOOmgzgvf3f5yno+EiC4vrnaWQ==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.2.1.tgz", + "integrity": "sha512-W3IR0x5DY6iVtjj5p902oNhD+Bz7vs5S+p6tppbPa509rV9BdeXZjGuRSCtVEad9FA0Mba+tNUtUmtnSI1nwUw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/fetch-http-handler": "^5.0.2", - "@smithy/node-http-handler": "^4.0.4", - "@smithy/types": "^4.2.0", + "@smithy/fetch-http-handler": "^5.0.3", + "@smithy/node-http-handler": "^4.0.5", + "@smithy/types": "^4.3.0", "@smithy/util-base64": "^4.0.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-hex-encoding": "^4.0.0", @@ -4558,19 +4591,19 @@ } }, "node_modules/@aws-sdk/core": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.775.0.tgz", - "integrity": "sha512-8vpW4WihVfz0DX+7WnnLGm3GuQER++b0IwQG35JlQMlgqnc44M//KbJPsIHA0aJUJVwJAEShgfr5dUbY8WUzaA==", + "version": "3.816.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.816.0.tgz", + "integrity": "sha512-Lx50wjtyarzKpMFV6V+gjbSZDgsA/71iyifbClGUSiNPoIQ4OCV0KVOmAAj7mQRVvGJqUMWKVM+WzK79CjbjWA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.775.0", - "@smithy/core": "^3.2.0", - "@smithy/node-config-provider": "^4.0.2", + "@aws-sdk/types": "3.804.0", + "@smithy/core": "^3.3.3", + "@smithy/node-config-provider": "^4.1.1", "@smithy/property-provider": "^4.0.2", "@smithy/protocol-http": "^5.1.0", - "@smithy/signature-v4": "^5.0.2", - "@smithy/smithy-client": "^4.2.0", + "@smithy/signature-v4": "^5.1.0", + "@smithy/smithy-client": "^4.2.6", "@smithy/types": "^4.2.0", "@smithy/util-middleware": "^4.0.2", "fast-xml-parser": "4.4.1", @@ -4581,9 +4614,9 @@ } }, "node_modules/@aws-sdk/core/node_modules/@aws-sdk/types": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.775.0.tgz", - "integrity": "sha512-ZoGKwa4C9fC9Av6bdfqcW6Ix5ot05F/S4VxWR2nHuMv7hzfmAjTOcUiWT7UR4hM/U0whf84VhDtXN/DWAk52KA==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.804.0.tgz", + "integrity": "sha512-A9qnsy9zQ8G89vrPPlNG9d1d8QcKRGqJKqwyGgS0dclJpwy6d1EWgQLIolKPl6vcFpLoe6avLOLxr+h8ur5wpg==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -4595,13 +4628,13 @@ } }, "node_modules/@aws-sdk/core/node_modules/@smithy/abort-controller": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.0.2.tgz", - "integrity": "sha512-Sl/78VDtgqKxN2+1qduaVE140XF+Xg+TafkncspwM4jFP/LHr76ZHmIY/y3V1M0mMLNk+Je6IGbzxy23RSToMw==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.0.3.tgz", + "integrity": "sha512-AqXFf6DXnuRBXy4SoK/n1mfgHaKaq36bmkphmD1KO0nHq6xK/g9KHSW4HEsPQUBCGdIEfuJifGHwxFXPIFay9Q==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -4609,15 +4642,15 @@ } }, "node_modules/@aws-sdk/core/node_modules/@smithy/fetch-http-handler": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.0.2.tgz", - "integrity": "sha512-+9Dz8sakS9pe7f2cBocpJXdeVjMopUDLgZs1yWeu7h++WqSbjUYv/JAJwKwXw1HV6gq1jyWjxuyn24E2GhoEcQ==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.0.3.tgz", + "integrity": "sha512-yBZwavI31roqTndNI7ONHqesfH01JmjJK6L3uUpZAhyAmr86LN5QiPzfyZGIxQmed8VEK2NRSQT3/JX5V1njfQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/protocol-http": "^5.1.0", - "@smithy/querystring-builder": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/protocol-http": "^5.1.1", + "@smithy/querystring-builder": "^4.0.3", + "@smithy/types": "^4.3.0", "@smithy/util-base64": "^4.0.0", "tslib": "^2.6.2" }, @@ -4626,19 +4659,19 @@ } }, "node_modules/@aws-sdk/core/node_modules/@smithy/middleware-endpoint": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.1.0.tgz", - "integrity": "sha512-xhLimgNCbCzsUppRTGXWkZywksuTThxaIB0HwbpsVLY5sceac4e1TZ/WKYqufQLaUy+gUSJGNdwD2jo3cXL0iA==", + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.1.7.tgz", + "integrity": "sha512-KDzM7Iajo6K7eIWNNtukykRT4eWwlHjCEsULZUaSfi/SRSBK8BPRqG5FsVfp58lUxcvre8GT8AIPIqndA0ERKw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/core": "^3.2.0", - "@smithy/middleware-serde": "^4.0.3", - "@smithy/node-config-provider": "^4.0.2", - "@smithy/shared-ini-file-loader": "^4.0.2", - "@smithy/types": "^4.2.0", - "@smithy/url-parser": "^4.0.2", - "@smithy/util-middleware": "^4.0.2", + "@smithy/core": "^3.4.0", + "@smithy/middleware-serde": "^4.0.6", + "@smithy/node-config-provider": "^4.1.2", + "@smithy/shared-ini-file-loader": "^4.0.3", + "@smithy/types": "^4.3.0", + "@smithy/url-parser": "^4.0.3", + "@smithy/util-middleware": "^4.0.3", "tslib": "^2.6.2" }, "engines": { @@ -4646,13 +4679,14 @@ } }, "node_modules/@aws-sdk/core/node_modules/@smithy/middleware-serde": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.0.3.tgz", - "integrity": "sha512-rfgDVrgLEVMmMn0BI8O+8OVr6vXzjV7HZj57l0QxslhzbvVfikZbVfBVthjLHqib4BW44QhcIgJpvebHlRaC9A==", + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.0.6.tgz", + "integrity": "sha512-YECyl7uNII+jCr/9qEmCu8xYL79cU0fqjo0qxpcVIU18dAPHam/iYwcknAu4Jiyw1uN+sAx7/SMf/Kmef/Jjsg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/protocol-http": "^5.1.1", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -4660,13 +4694,13 @@ } }, "node_modules/@aws-sdk/core/node_modules/@smithy/middleware-stack": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-4.0.2.tgz", - "integrity": "sha512-eSPVcuJJGVYrFYu2hEq8g8WWdJav3sdrI4o2c6z/rjnYDd3xH9j9E7deZQCzFn4QvGPouLngH3dQ+QVTxv5bOQ==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-4.0.3.tgz", + "integrity": "sha512-baeV7t4jQfQtFxBADFmnhmqBmqR38dNU5cvEgHcMK/Kp3D3bEI0CouoX2Sr/rGuntR+Eg0IjXdxnGGTc6SbIkw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -4674,15 +4708,15 @@ } }, "node_modules/@aws-sdk/core/node_modules/@smithy/node-config-provider": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.0.2.tgz", - "integrity": "sha512-WgCkILRZfJwJ4Da92a6t3ozN/zcvYyJGUTmfGbgS/FkCcoCjl7G4FJaCDN1ySdvLvemnQeo25FdkyMSTSwulsw==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.1.2.tgz", + "integrity": "sha512-SUvNup8iU1v7fmM8XPk+27m36udmGCfSz+VZP5Gb0aJ3Ne0X28K/25gnsrg3X1rWlhcnhzNUUysKW/Ied46ivQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/property-provider": "^4.0.2", - "@smithy/shared-ini-file-loader": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/property-provider": "^4.0.3", + "@smithy/shared-ini-file-loader": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -4690,16 +4724,16 @@ } }, "node_modules/@aws-sdk/core/node_modules/@smithy/node-http-handler": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.0.4.tgz", - "integrity": "sha512-/mdqabuAT3o/ihBGjL94PUbTSPSRJ0eeVTdgADzow0wRJ0rN4A27EOrtlK56MYiO1fDvlO3jVTCxQtQmK9dZ1g==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.0.5.tgz", + "integrity": "sha512-T7QglZC1vS7SPT44/1qSIAQEx5bFKb3LfO6zw/o4Xzt1eC5HNoH1TkS4lMYA9cWFbacUhx4hRl/blLun4EOCkg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/abort-controller": "^4.0.2", - "@smithy/protocol-http": "^5.1.0", - "@smithy/querystring-builder": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/abort-controller": "^4.0.3", + "@smithy/protocol-http": "^5.1.1", + "@smithy/querystring-builder": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -4707,13 +4741,13 @@ } }, "node_modules/@aws-sdk/core/node_modules/@smithy/protocol-http": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.0.tgz", - "integrity": "sha512-KxAOL1nUNw2JTYrtviRRjEnykIDhxc84qMBzxvu1MUfQfHTuBlCG7PA6EdVwqpJjH7glw7FqQoFxUJSyBQgu7g==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.1.tgz", + "integrity": "sha512-Vsay2mzq05DwNi9jK01yCFtfvu9HimmgC7a4HTs7lhX12Sx8aWsH0mfz6q/02yspSp+lOB+Q2HJwi4IV2GKz7A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -4721,13 +4755,13 @@ } }, "node_modules/@aws-sdk/core/node_modules/@smithy/querystring-builder": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.0.2.tgz", - "integrity": "sha512-NTOs0FwHw1vimmQM4ebh+wFQvOwkEf/kQL6bSM1Lock+Bv4I89B3hGYoUEPkmvYPkDKyp5UdXJYu+PoTQ3T31Q==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.0.3.tgz", + "integrity": "sha512-UUzIWMVfPmDZcOutk2/r1vURZqavvQW0OHvgsyNV0cKupChvqg+/NKPRMaMEe+i8tP96IthMFeZOZWpV+E4RAw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "@smithy/util-uri-escape": "^4.0.0", "tslib": "^2.6.2" }, @@ -4736,13 +4770,13 @@ } }, "node_modules/@aws-sdk/core/node_modules/@smithy/querystring-parser": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-4.0.2.tgz", - "integrity": "sha512-v6w8wnmZcVXjfVLjxw8qF7OwESD9wnpjp0Dqry/Pod0/5vcEA3qxCr+BhbOHlxS8O+29eLpT3aagxXGwIoEk7Q==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-4.0.3.tgz", + "integrity": "sha512-K5M4ZJQpFCblOJ5Oyw7diICpFg1qhhR47m2/5Ef1PhGE19RaIZf50tjYFrxa6usqcuXyTiFPGo4d1geZdH4YcQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -4750,13 +4784,13 @@ } }, "node_modules/@aws-sdk/core/node_modules/@smithy/shared-ini-file-loader": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.0.2.tgz", - "integrity": "sha512-J9/gTWBGVuFZ01oVA6vdb4DAjf1XbDhK6sLsu3OS9qmLrS6KB5ygpeHiM3miIbj1qgSJ96GYszXFWv6ErJ8QEw==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.0.3.tgz", + "integrity": "sha512-vHwlrqhZGIoLwaH8vvIjpHnloShqdJ7SUPNM2EQtEox+yEDFTVQ7E+DLZ+6OhnYEgFUwPByJyz6UZaOu2tny6A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -4764,18 +4798,18 @@ } }, "node_modules/@aws-sdk/core/node_modules/@smithy/smithy-client": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.2.0.tgz", - "integrity": "sha512-Qs65/w30pWV7LSFAez9DKy0Koaoh3iHhpcpCCJ4waj/iqwsuSzJna2+vYwq46yBaqO5ZbP9TjUsATUNxrKeBdw==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.3.0.tgz", + "integrity": "sha512-DNsRA38pN6tYHUjebmwD9e4KcgqTLldYQb2gC6K+oxXYdCTxPn6wV9+FvOa6wrU2FQEnGJoi+3GULzOTKck/tg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/core": "^3.2.0", - "@smithy/middleware-endpoint": "^4.1.0", - "@smithy/middleware-stack": "^4.0.2", - "@smithy/protocol-http": "^5.1.0", - "@smithy/types": "^4.2.0", - "@smithy/util-stream": "^4.2.0", + "@smithy/core": "^3.4.0", + "@smithy/middleware-endpoint": "^4.1.7", + "@smithy/middleware-stack": "^4.0.3", + "@smithy/protocol-http": "^5.1.1", + "@smithy/types": "^4.3.0", + "@smithy/util-stream": "^4.2.1", "tslib": "^2.6.2" }, "engines": { @@ -4783,9 +4817,9 @@ } }, "node_modules/@aws-sdk/core/node_modules/@smithy/types": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.2.0.tgz", - "integrity": "sha512-7eMk09zQKCO+E/ivsjQv+fDlOupcFUCSC/L2YUPgwhvowVGWbPQHjEFcmjt7QQ4ra5lyowS92SV53Zc6XD4+fg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.3.0.tgz", + "integrity": "sha512-+1iaIQHthDh9yaLhRzaoQxRk+l9xlk+JjMFxGRhNLz+m9vKOkjNeU8QuB4w3xvzHyVR/BVlp/4AXDHjoRIkfgQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -4796,14 +4830,14 @@ } }, "node_modules/@aws-sdk/core/node_modules/@smithy/url-parser": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-4.0.2.tgz", - "integrity": "sha512-Bm8n3j2ScqnT+kJaClSVCMeiSenK6jVAzZCNewsYWuZtnBehEz4r2qP0riZySZVfzB+03XZHJeqfmJDkeeSLiQ==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-4.0.3.tgz", + "integrity": "sha512-n5/DnosDu/tweOqUUNtUbu7eRIR4J/Wz9nL7V5kFYQQVb8VYdj7a4G5NJHCw6o21ul7CvZoJkOpdTnsQDLT0tQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/querystring-parser": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/querystring-parser": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -4840,15 +4874,15 @@ } }, "node_modules/@aws-sdk/core/node_modules/@smithy/util-stream": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.2.0.tgz", - "integrity": "sha512-Vj1TtwWnuWqdgQI6YTUF5hQ/0jmFiOYsc51CSMgj7QfyO+RF4EnT2HNjoviNlOOmgzgvf3f5yno+EiC4vrnaWQ==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.2.1.tgz", + "integrity": "sha512-W3IR0x5DY6iVtjj5p902oNhD+Bz7vs5S+p6tppbPa509rV9BdeXZjGuRSCtVEad9FA0Mba+tNUtUmtnSI1nwUw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/fetch-http-handler": "^5.0.2", - "@smithy/node-http-handler": "^4.0.4", - "@smithy/types": "^4.2.0", + "@smithy/fetch-http-handler": "^5.0.3", + "@smithy/node-http-handler": "^4.0.5", + "@smithy/types": "^4.3.0", "@smithy/util-base64": "^4.0.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-hex-encoding": "^4.0.0", @@ -4940,19 +4974,19 @@ } }, "node_modules/@aws-sdk/credential-provider-http": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.775.0.tgz", - "integrity": "sha512-PjDQeDH/J1S0yWV32wCj2k5liRo0ssXMseCBEkCsD3SqsU8o5cU82b0hMX4sAib/RkglCSZqGO0xMiN0/7ndww==", + "version": "3.816.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.816.0.tgz", + "integrity": "sha512-gcWGzMQ7yRIF+ljTkR8Vzp7727UY6cmeaPrFQrvcFB8PhOqWpf7g0JsgOf5BSaP8CkkSQcTQHc0C5ZYAzUFwPg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "3.775.0", - "@aws-sdk/types": "3.775.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/types": "3.804.0", "@smithy/fetch-http-handler": "^5.0.2", "@smithy/node-http-handler": "^4.0.4", "@smithy/property-provider": "^4.0.2", "@smithy/protocol-http": "^5.1.0", - "@smithy/smithy-client": "^4.2.0", + "@smithy/smithy-client": "^4.2.6", "@smithy/types": "^4.2.0", "@smithy/util-stream": "^4.2.0", "tslib": "^2.6.2" @@ -4962,9 +4996,9 @@ } }, "node_modules/@aws-sdk/credential-provider-http/node_modules/@aws-sdk/types": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.775.0.tgz", - "integrity": "sha512-ZoGKwa4C9fC9Av6bdfqcW6Ix5ot05F/S4VxWR2nHuMv7hzfmAjTOcUiWT7UR4hM/U0whf84VhDtXN/DWAk52KA==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.804.0.tgz", + "integrity": "sha512-A9qnsy9zQ8G89vrPPlNG9d1d8QcKRGqJKqwyGgS0dclJpwy6d1EWgQLIolKPl6vcFpLoe6avLOLxr+h8ur5wpg==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -4976,13 +5010,13 @@ } }, "node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/abort-controller": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.0.2.tgz", - "integrity": "sha512-Sl/78VDtgqKxN2+1qduaVE140XF+Xg+TafkncspwM4jFP/LHr76ZHmIY/y3V1M0mMLNk+Je6IGbzxy23RSToMw==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.0.3.tgz", + "integrity": "sha512-AqXFf6DXnuRBXy4SoK/n1mfgHaKaq36bmkphmD1KO0nHq6xK/g9KHSW4HEsPQUBCGdIEfuJifGHwxFXPIFay9Q==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -4990,15 +5024,15 @@ } }, "node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/fetch-http-handler": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.0.2.tgz", - "integrity": "sha512-+9Dz8sakS9pe7f2cBocpJXdeVjMopUDLgZs1yWeu7h++WqSbjUYv/JAJwKwXw1HV6gq1jyWjxuyn24E2GhoEcQ==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.0.3.tgz", + "integrity": "sha512-yBZwavI31roqTndNI7ONHqesfH01JmjJK6L3uUpZAhyAmr86LN5QiPzfyZGIxQmed8VEK2NRSQT3/JX5V1njfQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/protocol-http": "^5.1.0", - "@smithy/querystring-builder": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/protocol-http": "^5.1.1", + "@smithy/querystring-builder": "^4.0.3", + "@smithy/types": "^4.3.0", "@smithy/util-base64": "^4.0.0", "tslib": "^2.6.2" }, @@ -5007,19 +5041,19 @@ } }, "node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/middleware-endpoint": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.1.0.tgz", - "integrity": "sha512-xhLimgNCbCzsUppRTGXWkZywksuTThxaIB0HwbpsVLY5sceac4e1TZ/WKYqufQLaUy+gUSJGNdwD2jo3cXL0iA==", + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.1.7.tgz", + "integrity": "sha512-KDzM7Iajo6K7eIWNNtukykRT4eWwlHjCEsULZUaSfi/SRSBK8BPRqG5FsVfp58lUxcvre8GT8AIPIqndA0ERKw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/core": "^3.2.0", - "@smithy/middleware-serde": "^4.0.3", - "@smithy/node-config-provider": "^4.0.2", - "@smithy/shared-ini-file-loader": "^4.0.2", - "@smithy/types": "^4.2.0", - "@smithy/url-parser": "^4.0.2", - "@smithy/util-middleware": "^4.0.2", + "@smithy/core": "^3.4.0", + "@smithy/middleware-serde": "^4.0.6", + "@smithy/node-config-provider": "^4.1.2", + "@smithy/shared-ini-file-loader": "^4.0.3", + "@smithy/types": "^4.3.0", + "@smithy/url-parser": "^4.0.3", + "@smithy/util-middleware": "^4.0.3", "tslib": "^2.6.2" }, "engines": { @@ -5027,13 +5061,14 @@ } }, "node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/middleware-serde": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.0.3.tgz", - "integrity": "sha512-rfgDVrgLEVMmMn0BI8O+8OVr6vXzjV7HZj57l0QxslhzbvVfikZbVfBVthjLHqib4BW44QhcIgJpvebHlRaC9A==", + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.0.6.tgz", + "integrity": "sha512-YECyl7uNII+jCr/9qEmCu8xYL79cU0fqjo0qxpcVIU18dAPHam/iYwcknAu4Jiyw1uN+sAx7/SMf/Kmef/Jjsg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/protocol-http": "^5.1.1", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -5041,13 +5076,13 @@ } }, "node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/middleware-stack": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-4.0.2.tgz", - "integrity": "sha512-eSPVcuJJGVYrFYu2hEq8g8WWdJav3sdrI4o2c6z/rjnYDd3xH9j9E7deZQCzFn4QvGPouLngH3dQ+QVTxv5bOQ==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-4.0.3.tgz", + "integrity": "sha512-baeV7t4jQfQtFxBADFmnhmqBmqR38dNU5cvEgHcMK/Kp3D3bEI0CouoX2Sr/rGuntR+Eg0IjXdxnGGTc6SbIkw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -5055,15 +5090,15 @@ } }, "node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-config-provider": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.0.2.tgz", - "integrity": "sha512-WgCkILRZfJwJ4Da92a6t3ozN/zcvYyJGUTmfGbgS/FkCcoCjl7G4FJaCDN1ySdvLvemnQeo25FdkyMSTSwulsw==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.1.2.tgz", + "integrity": "sha512-SUvNup8iU1v7fmM8XPk+27m36udmGCfSz+VZP5Gb0aJ3Ne0X28K/25gnsrg3X1rWlhcnhzNUUysKW/Ied46ivQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/property-provider": "^4.0.2", - "@smithy/shared-ini-file-loader": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/property-provider": "^4.0.3", + "@smithy/shared-ini-file-loader": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -5071,16 +5106,16 @@ } }, "node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.0.4.tgz", - "integrity": "sha512-/mdqabuAT3o/ihBGjL94PUbTSPSRJ0eeVTdgADzow0wRJ0rN4A27EOrtlK56MYiO1fDvlO3jVTCxQtQmK9dZ1g==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.0.5.tgz", + "integrity": "sha512-T7QglZC1vS7SPT44/1qSIAQEx5bFKb3LfO6zw/o4Xzt1eC5HNoH1TkS4lMYA9cWFbacUhx4hRl/blLun4EOCkg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/abort-controller": "^4.0.2", - "@smithy/protocol-http": "^5.1.0", - "@smithy/querystring-builder": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/abort-controller": "^4.0.3", + "@smithy/protocol-http": "^5.1.1", + "@smithy/querystring-builder": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -5088,13 +5123,13 @@ } }, "node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/protocol-http": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.0.tgz", - "integrity": "sha512-KxAOL1nUNw2JTYrtviRRjEnykIDhxc84qMBzxvu1MUfQfHTuBlCG7PA6EdVwqpJjH7glw7FqQoFxUJSyBQgu7g==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.1.tgz", + "integrity": "sha512-Vsay2mzq05DwNi9jK01yCFtfvu9HimmgC7a4HTs7lhX12Sx8aWsH0mfz6q/02yspSp+lOB+Q2HJwi4IV2GKz7A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -5102,13 +5137,13 @@ } }, "node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/querystring-builder": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.0.2.tgz", - "integrity": "sha512-NTOs0FwHw1vimmQM4ebh+wFQvOwkEf/kQL6bSM1Lock+Bv4I89B3hGYoUEPkmvYPkDKyp5UdXJYu+PoTQ3T31Q==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.0.3.tgz", + "integrity": "sha512-UUzIWMVfPmDZcOutk2/r1vURZqavvQW0OHvgsyNV0cKupChvqg+/NKPRMaMEe+i8tP96IthMFeZOZWpV+E4RAw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "@smithy/util-uri-escape": "^4.0.0", "tslib": "^2.6.2" }, @@ -5117,13 +5152,13 @@ } }, "node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/querystring-parser": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-4.0.2.tgz", - "integrity": "sha512-v6w8wnmZcVXjfVLjxw8qF7OwESD9wnpjp0Dqry/Pod0/5vcEA3qxCr+BhbOHlxS8O+29eLpT3aagxXGwIoEk7Q==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-4.0.3.tgz", + "integrity": "sha512-K5M4ZJQpFCblOJ5Oyw7diICpFg1qhhR47m2/5Ef1PhGE19RaIZf50tjYFrxa6usqcuXyTiFPGo4d1geZdH4YcQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -5131,13 +5166,13 @@ } }, "node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/shared-ini-file-loader": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.0.2.tgz", - "integrity": "sha512-J9/gTWBGVuFZ01oVA6vdb4DAjf1XbDhK6sLsu3OS9qmLrS6KB5ygpeHiM3miIbj1qgSJ96GYszXFWv6ErJ8QEw==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.0.3.tgz", + "integrity": "sha512-vHwlrqhZGIoLwaH8vvIjpHnloShqdJ7SUPNM2EQtEox+yEDFTVQ7E+DLZ+6OhnYEgFUwPByJyz6UZaOu2tny6A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -5145,18 +5180,18 @@ } }, "node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/smithy-client": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.2.0.tgz", - "integrity": "sha512-Qs65/w30pWV7LSFAez9DKy0Koaoh3iHhpcpCCJ4waj/iqwsuSzJna2+vYwq46yBaqO5ZbP9TjUsATUNxrKeBdw==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.3.0.tgz", + "integrity": "sha512-DNsRA38pN6tYHUjebmwD9e4KcgqTLldYQb2gC6K+oxXYdCTxPn6wV9+FvOa6wrU2FQEnGJoi+3GULzOTKck/tg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/core": "^3.2.0", - "@smithy/middleware-endpoint": "^4.1.0", - "@smithy/middleware-stack": "^4.0.2", - "@smithy/protocol-http": "^5.1.0", - "@smithy/types": "^4.2.0", - "@smithy/util-stream": "^4.2.0", + "@smithy/core": "^3.4.0", + "@smithy/middleware-endpoint": "^4.1.7", + "@smithy/middleware-stack": "^4.0.3", + "@smithy/protocol-http": "^5.1.1", + "@smithy/types": "^4.3.0", + "@smithy/util-stream": "^4.2.1", "tslib": "^2.6.2" }, "engines": { @@ -5164,9 +5199,9 @@ } }, "node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/types": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.2.0.tgz", - "integrity": "sha512-7eMk09zQKCO+E/ivsjQv+fDlOupcFUCSC/L2YUPgwhvowVGWbPQHjEFcmjt7QQ4ra5lyowS92SV53Zc6XD4+fg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.3.0.tgz", + "integrity": "sha512-+1iaIQHthDh9yaLhRzaoQxRk+l9xlk+JjMFxGRhNLz+m9vKOkjNeU8QuB4w3xvzHyVR/BVlp/4AXDHjoRIkfgQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -5177,14 +5212,14 @@ } }, "node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/url-parser": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-4.0.2.tgz", - "integrity": "sha512-Bm8n3j2ScqnT+kJaClSVCMeiSenK6jVAzZCNewsYWuZtnBehEz4r2qP0riZySZVfzB+03XZHJeqfmJDkeeSLiQ==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-4.0.3.tgz", + "integrity": "sha512-n5/DnosDu/tweOqUUNtUbu7eRIR4J/Wz9nL7V5kFYQQVb8VYdj7a4G5NJHCw6o21ul7CvZoJkOpdTnsQDLT0tQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/querystring-parser": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/querystring-parser": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -5221,15 +5256,15 @@ } }, "node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/util-stream": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.2.0.tgz", - "integrity": "sha512-Vj1TtwWnuWqdgQI6YTUF5hQ/0jmFiOYsc51CSMgj7QfyO+RF4EnT2HNjoviNlOOmgzgvf3f5yno+EiC4vrnaWQ==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.2.1.tgz", + "integrity": "sha512-W3IR0x5DY6iVtjj5p902oNhD+Bz7vs5S+p6tppbPa509rV9BdeXZjGuRSCtVEad9FA0Mba+tNUtUmtnSI1nwUw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/fetch-http-handler": "^5.0.2", - "@smithy/node-http-handler": "^4.0.4", - "@smithy/types": "^4.2.0", + "@smithy/fetch-http-handler": "^5.0.3", + "@smithy/node-http-handler": "^4.0.5", + "@smithy/types": "^4.3.0", "@smithy/util-base64": "^4.0.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-hex-encoding": "^4.0.0", @@ -5435,9 +5470,9 @@ } }, "node_modules/@aws-sdk/endpoint-cache": { - "version": "3.723.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/endpoint-cache/-/endpoint-cache-3.723.0.tgz", - "integrity": "sha512-2+a4WXRc+07uiPR+zJiPGKSOWaNJQNqitkks+6Hhm/haTLJqNVTgY2OWDh2PXvwMNpKB+AlGdhE65Oy6NzUgXg==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/endpoint-cache/-/endpoint-cache-3.804.0.tgz", + "integrity": "sha512-TQVDkA/lV6ua75ELZaichMzlp6x7tDa1bqdy/+0ZftmODPtKXuOOEcJxmdN7Ui/YRo1gkRz2D9txYy7IlNg1Og==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -5449,15 +5484,15 @@ } }, "node_modules/@aws-sdk/middleware-bucket-endpoint": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.775.0.tgz", - "integrity": "sha512-qogMIpVChDYr4xiUNC19/RDSw/sKoHkAhouS6Skxiy6s27HBhow1L3Z1qVYXuBmOZGSWPU0xiyZCvOyWrv9s+Q==", + "version": "3.808.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.808.0.tgz", + "integrity": "sha512-wEPlNcs8dir9lXbuviEGtSzYSxG/NRKQrJk5ybOc7OpPGHovsN+QhDOdY3lcjOFdwMTiMIG9foUkPz3zBpLB1A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.775.0", - "@aws-sdk/util-arn-parser": "3.723.0", - "@smithy/node-config-provider": "^4.0.2", + "@aws-sdk/types": "3.804.0", + "@aws-sdk/util-arn-parser": "3.804.0", + "@smithy/node-config-provider": "^4.1.1", "@smithy/protocol-http": "^5.1.0", "@smithy/types": "^4.2.0", "@smithy/util-config-provider": "^4.0.0", @@ -5468,9 +5503,9 @@ } }, "node_modules/@aws-sdk/middleware-bucket-endpoint/node_modules/@aws-sdk/types": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.775.0.tgz", - "integrity": "sha512-ZoGKwa4C9fC9Av6bdfqcW6Ix5ot05F/S4VxWR2nHuMv7hzfmAjTOcUiWT7UR4hM/U0whf84VhDtXN/DWAk52KA==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.804.0.tgz", + "integrity": "sha512-A9qnsy9zQ8G89vrPPlNG9d1d8QcKRGqJKqwyGgS0dclJpwy6d1EWgQLIolKPl6vcFpLoe6avLOLxr+h8ur5wpg==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -5482,15 +5517,15 @@ } }, "node_modules/@aws-sdk/middleware-bucket-endpoint/node_modules/@smithy/node-config-provider": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.0.2.tgz", - "integrity": "sha512-WgCkILRZfJwJ4Da92a6t3ozN/zcvYyJGUTmfGbgS/FkCcoCjl7G4FJaCDN1ySdvLvemnQeo25FdkyMSTSwulsw==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.1.2.tgz", + "integrity": "sha512-SUvNup8iU1v7fmM8XPk+27m36udmGCfSz+VZP5Gb0aJ3Ne0X28K/25gnsrg3X1rWlhcnhzNUUysKW/Ied46ivQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/property-provider": "^4.0.2", - "@smithy/shared-ini-file-loader": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/property-provider": "^4.0.3", + "@smithy/shared-ini-file-loader": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -5498,13 +5533,13 @@ } }, "node_modules/@aws-sdk/middleware-bucket-endpoint/node_modules/@smithy/protocol-http": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.0.tgz", - "integrity": "sha512-KxAOL1nUNw2JTYrtviRRjEnykIDhxc84qMBzxvu1MUfQfHTuBlCG7PA6EdVwqpJjH7glw7FqQoFxUJSyBQgu7g==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.1.tgz", + "integrity": "sha512-Vsay2mzq05DwNi9jK01yCFtfvu9HimmgC7a4HTs7lhX12Sx8aWsH0mfz6q/02yspSp+lOB+Q2HJwi4IV2GKz7A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -5512,13 +5547,13 @@ } }, "node_modules/@aws-sdk/middleware-bucket-endpoint/node_modules/@smithy/shared-ini-file-loader": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.0.2.tgz", - "integrity": "sha512-J9/gTWBGVuFZ01oVA6vdb4DAjf1XbDhK6sLsu3OS9qmLrS6KB5ygpeHiM3miIbj1qgSJ96GYszXFWv6ErJ8QEw==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.0.3.tgz", + "integrity": "sha512-vHwlrqhZGIoLwaH8vvIjpHnloShqdJ7SUPNM2EQtEox+yEDFTVQ7E+DLZ+6OhnYEgFUwPByJyz6UZaOu2tny6A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -5526,9 +5561,9 @@ } }, "node_modules/@aws-sdk/middleware-bucket-endpoint/node_modules/@smithy/types": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.2.0.tgz", - "integrity": "sha512-7eMk09zQKCO+E/ivsjQv+fDlOupcFUCSC/L2YUPgwhvowVGWbPQHjEFcmjt7QQ4ra5lyowS92SV53Zc6XD4+fg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.3.0.tgz", + "integrity": "sha512-+1iaIQHthDh9yaLhRzaoQxRk+l9xlk+JjMFxGRhNLz+m9vKOkjNeU8QuB4w3xvzHyVR/BVlp/4AXDHjoRIkfgQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -5539,15 +5574,15 @@ } }, "node_modules/@aws-sdk/middleware-endpoint-discovery": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint-discovery/-/middleware-endpoint-discovery-3.775.0.tgz", - "integrity": "sha512-L0PmjSg7t+wovRo/Lin1kpei3e7wBhrENWb1Bbccu3PWUIfxolGeWplOmNhSlXjuQe9GXjf3z8kJRYOGBMFOvw==", + "version": "3.808.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint-discovery/-/middleware-endpoint-discovery-3.808.0.tgz", + "integrity": "sha512-h8LAIO6tuA0JAahrg+oSIVZpb6rhJOFVDDqYNQVp6ZdawlIzpZcc1sa+XVZvarBnThNKqvLTSGK7boSRmaLAwg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/endpoint-cache": "3.723.0", - "@aws-sdk/types": "3.775.0", - "@smithy/node-config-provider": "^4.0.2", + "@aws-sdk/endpoint-cache": "3.804.0", + "@aws-sdk/types": "3.804.0", + "@smithy/node-config-provider": "^4.1.1", "@smithy/protocol-http": "^5.1.0", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" @@ -5557,9 +5592,9 @@ } }, "node_modules/@aws-sdk/middleware-endpoint-discovery/node_modules/@aws-sdk/types": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.775.0.tgz", - "integrity": "sha512-ZoGKwa4C9fC9Av6bdfqcW6Ix5ot05F/S4VxWR2nHuMv7hzfmAjTOcUiWT7UR4hM/U0whf84VhDtXN/DWAk52KA==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.804.0.tgz", + "integrity": "sha512-A9qnsy9zQ8G89vrPPlNG9d1d8QcKRGqJKqwyGgS0dclJpwy6d1EWgQLIolKPl6vcFpLoe6avLOLxr+h8ur5wpg==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -5571,15 +5606,15 @@ } }, "node_modules/@aws-sdk/middleware-endpoint-discovery/node_modules/@smithy/node-config-provider": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.0.2.tgz", - "integrity": "sha512-WgCkILRZfJwJ4Da92a6t3ozN/zcvYyJGUTmfGbgS/FkCcoCjl7G4FJaCDN1ySdvLvemnQeo25FdkyMSTSwulsw==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.1.2.tgz", + "integrity": "sha512-SUvNup8iU1v7fmM8XPk+27m36udmGCfSz+VZP5Gb0aJ3Ne0X28K/25gnsrg3X1rWlhcnhzNUUysKW/Ied46ivQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/property-provider": "^4.0.2", - "@smithy/shared-ini-file-loader": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/property-provider": "^4.0.3", + "@smithy/shared-ini-file-loader": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -5587,13 +5622,13 @@ } }, "node_modules/@aws-sdk/middleware-endpoint-discovery/node_modules/@smithy/protocol-http": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.0.tgz", - "integrity": "sha512-KxAOL1nUNw2JTYrtviRRjEnykIDhxc84qMBzxvu1MUfQfHTuBlCG7PA6EdVwqpJjH7glw7FqQoFxUJSyBQgu7g==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.1.tgz", + "integrity": "sha512-Vsay2mzq05DwNi9jK01yCFtfvu9HimmgC7a4HTs7lhX12Sx8aWsH0mfz6q/02yspSp+lOB+Q2HJwi4IV2GKz7A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -5601,13 +5636,13 @@ } }, "node_modules/@aws-sdk/middleware-endpoint-discovery/node_modules/@smithy/shared-ini-file-loader": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.0.2.tgz", - "integrity": "sha512-J9/gTWBGVuFZ01oVA6vdb4DAjf1XbDhK6sLsu3OS9qmLrS6KB5ygpeHiM3miIbj1qgSJ96GYszXFWv6ErJ8QEw==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.0.3.tgz", + "integrity": "sha512-vHwlrqhZGIoLwaH8vvIjpHnloShqdJ7SUPNM2EQtEox+yEDFTVQ7E+DLZ+6OhnYEgFUwPByJyz6UZaOu2tny6A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -5615,9 +5650,9 @@ } }, "node_modules/@aws-sdk/middleware-endpoint-discovery/node_modules/@smithy/types": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.2.0.tgz", - "integrity": "sha512-7eMk09zQKCO+E/ivsjQv+fDlOupcFUCSC/L2YUPgwhvowVGWbPQHjEFcmjt7QQ4ra5lyowS92SV53Zc6XD4+fg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.3.0.tgz", + "integrity": "sha512-+1iaIQHthDh9yaLhRzaoQxRk+l9xlk+JjMFxGRhNLz+m9vKOkjNeU8QuB4w3xvzHyVR/BVlp/4AXDHjoRIkfgQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -5628,13 +5663,13 @@ } }, "node_modules/@aws-sdk/middleware-expect-continue": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.775.0.tgz", - "integrity": "sha512-Apd3owkIeUW5dnk3au9np2IdW2N0zc9NjTjHiH+Mx3zqwSrc+m+ANgJVgk9mnQjMzU/vb7VuxJ0eqdEbp5gYsg==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.804.0.tgz", + "integrity": "sha512-YW1hySBolALMII6C8y7Z0CRG2UX1dGJjLEBNFeefhO/xP7ZuE1dvnmfJGaEuBMnvc3wkRS63VZ3aqX6sevM1CA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.775.0", + "@aws-sdk/types": "3.804.0", "@smithy/protocol-http": "^5.1.0", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" @@ -5644,9 +5679,9 @@ } }, "node_modules/@aws-sdk/middleware-expect-continue/node_modules/@aws-sdk/types": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.775.0.tgz", - "integrity": "sha512-ZoGKwa4C9fC9Av6bdfqcW6Ix5ot05F/S4VxWR2nHuMv7hzfmAjTOcUiWT7UR4hM/U0whf84VhDtXN/DWAk52KA==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.804.0.tgz", + "integrity": "sha512-A9qnsy9zQ8G89vrPPlNG9d1d8QcKRGqJKqwyGgS0dclJpwy6d1EWgQLIolKPl6vcFpLoe6avLOLxr+h8ur5wpg==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -5658,13 +5693,13 @@ } }, "node_modules/@aws-sdk/middleware-expect-continue/node_modules/@smithy/protocol-http": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.0.tgz", - "integrity": "sha512-KxAOL1nUNw2JTYrtviRRjEnykIDhxc84qMBzxvu1MUfQfHTuBlCG7PA6EdVwqpJjH7glw7FqQoFxUJSyBQgu7g==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.1.tgz", + "integrity": "sha512-Vsay2mzq05DwNi9jK01yCFtfvu9HimmgC7a4HTs7lhX12Sx8aWsH0mfz6q/02yspSp+lOB+Q2HJwi4IV2GKz7A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -5672,9 +5707,9 @@ } }, "node_modules/@aws-sdk/middleware-expect-continue/node_modules/@smithy/types": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.2.0.tgz", - "integrity": "sha512-7eMk09zQKCO+E/ivsjQv+fDlOupcFUCSC/L2YUPgwhvowVGWbPQHjEFcmjt7QQ4ra5lyowS92SV53Zc6XD4+fg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.3.0.tgz", + "integrity": "sha512-+1iaIQHthDh9yaLhRzaoQxRk+l9xlk+JjMFxGRhNLz+m9vKOkjNeU8QuB4w3xvzHyVR/BVlp/4AXDHjoRIkfgQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -5685,19 +5720,19 @@ } }, "node_modules/@aws-sdk/middleware-flexible-checksums": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.787.0.tgz", - "integrity": "sha512-X71qEwWoixFmwowWzlPoZUR3u1CWJ7iAzU0EzIxqmPhQpQJLFmdL1+SRjqATynDPZQzLs1a5HBtPT++EnZ+Quw==", + "version": "3.816.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.816.0.tgz", + "integrity": "sha512-kftcwDxB/VoCBsUiRgkm5CIuKbTfCN1WLPbis9LRwX3kQhKgGVxG2gG78SHk4TBB0qviWVAd/t+i/KaUgwiAcA==", "dev": true, "license": "Apache-2.0", "dependencies": { "@aws-crypto/crc32": "5.2.0", "@aws-crypto/crc32c": "5.2.0", "@aws-crypto/util": "5.2.0", - "@aws-sdk/core": "3.775.0", - "@aws-sdk/types": "3.775.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/types": "3.804.0", "@smithy/is-array-buffer": "^4.0.0", - "@smithy/node-config-provider": "^4.0.2", + "@smithy/node-config-provider": "^4.1.1", "@smithy/protocol-http": "^5.1.0", "@smithy/types": "^4.2.0", "@smithy/util-middleware": "^4.0.2", @@ -5736,9 +5771,9 @@ } }, "node_modules/@aws-sdk/middleware-flexible-checksums/node_modules/@aws-sdk/types": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.775.0.tgz", - "integrity": "sha512-ZoGKwa4C9fC9Av6bdfqcW6Ix5ot05F/S4VxWR2nHuMv7hzfmAjTOcUiWT7UR4hM/U0whf84VhDtXN/DWAk52KA==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.804.0.tgz", + "integrity": "sha512-A9qnsy9zQ8G89vrPPlNG9d1d8QcKRGqJKqwyGgS0dclJpwy6d1EWgQLIolKPl6vcFpLoe6avLOLxr+h8ur5wpg==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -5750,13 +5785,13 @@ } }, "node_modules/@aws-sdk/middleware-flexible-checksums/node_modules/@smithy/abort-controller": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.0.2.tgz", - "integrity": "sha512-Sl/78VDtgqKxN2+1qduaVE140XF+Xg+TafkncspwM4jFP/LHr76ZHmIY/y3V1M0mMLNk+Je6IGbzxy23RSToMw==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.0.3.tgz", + "integrity": "sha512-AqXFf6DXnuRBXy4SoK/n1mfgHaKaq36bmkphmD1KO0nHq6xK/g9KHSW4HEsPQUBCGdIEfuJifGHwxFXPIFay9Q==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -5764,15 +5799,15 @@ } }, "node_modules/@aws-sdk/middleware-flexible-checksums/node_modules/@smithy/fetch-http-handler": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.0.2.tgz", - "integrity": "sha512-+9Dz8sakS9pe7f2cBocpJXdeVjMopUDLgZs1yWeu7h++WqSbjUYv/JAJwKwXw1HV6gq1jyWjxuyn24E2GhoEcQ==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.0.3.tgz", + "integrity": "sha512-yBZwavI31roqTndNI7ONHqesfH01JmjJK6L3uUpZAhyAmr86LN5QiPzfyZGIxQmed8VEK2NRSQT3/JX5V1njfQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/protocol-http": "^5.1.0", - "@smithy/querystring-builder": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/protocol-http": "^5.1.1", + "@smithy/querystring-builder": "^4.0.3", + "@smithy/types": "^4.3.0", "@smithy/util-base64": "^4.0.0", "tslib": "^2.6.2" }, @@ -5781,15 +5816,15 @@ } }, "node_modules/@aws-sdk/middleware-flexible-checksums/node_modules/@smithy/node-config-provider": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.0.2.tgz", - "integrity": "sha512-WgCkILRZfJwJ4Da92a6t3ozN/zcvYyJGUTmfGbgS/FkCcoCjl7G4FJaCDN1ySdvLvemnQeo25FdkyMSTSwulsw==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.1.2.tgz", + "integrity": "sha512-SUvNup8iU1v7fmM8XPk+27m36udmGCfSz+VZP5Gb0aJ3Ne0X28K/25gnsrg3X1rWlhcnhzNUUysKW/Ied46ivQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/property-provider": "^4.0.2", - "@smithy/shared-ini-file-loader": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/property-provider": "^4.0.3", + "@smithy/shared-ini-file-loader": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -5797,16 +5832,16 @@ } }, "node_modules/@aws-sdk/middleware-flexible-checksums/node_modules/@smithy/node-http-handler": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.0.4.tgz", - "integrity": "sha512-/mdqabuAT3o/ihBGjL94PUbTSPSRJ0eeVTdgADzow0wRJ0rN4A27EOrtlK56MYiO1fDvlO3jVTCxQtQmK9dZ1g==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.0.5.tgz", + "integrity": "sha512-T7QglZC1vS7SPT44/1qSIAQEx5bFKb3LfO6zw/o4Xzt1eC5HNoH1TkS4lMYA9cWFbacUhx4hRl/blLun4EOCkg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/abort-controller": "^4.0.2", - "@smithy/protocol-http": "^5.1.0", - "@smithy/querystring-builder": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/abort-controller": "^4.0.3", + "@smithy/protocol-http": "^5.1.1", + "@smithy/querystring-builder": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -5814,13 +5849,13 @@ } }, "node_modules/@aws-sdk/middleware-flexible-checksums/node_modules/@smithy/protocol-http": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.0.tgz", - "integrity": "sha512-KxAOL1nUNw2JTYrtviRRjEnykIDhxc84qMBzxvu1MUfQfHTuBlCG7PA6EdVwqpJjH7glw7FqQoFxUJSyBQgu7g==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.1.tgz", + "integrity": "sha512-Vsay2mzq05DwNi9jK01yCFtfvu9HimmgC7a4HTs7lhX12Sx8aWsH0mfz6q/02yspSp+lOB+Q2HJwi4IV2GKz7A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -5828,13 +5863,13 @@ } }, "node_modules/@aws-sdk/middleware-flexible-checksums/node_modules/@smithy/querystring-builder": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.0.2.tgz", - "integrity": "sha512-NTOs0FwHw1vimmQM4ebh+wFQvOwkEf/kQL6bSM1Lock+Bv4I89B3hGYoUEPkmvYPkDKyp5UdXJYu+PoTQ3T31Q==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.0.3.tgz", + "integrity": "sha512-UUzIWMVfPmDZcOutk2/r1vURZqavvQW0OHvgsyNV0cKupChvqg+/NKPRMaMEe+i8tP96IthMFeZOZWpV+E4RAw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "@smithy/util-uri-escape": "^4.0.0", "tslib": "^2.6.2" }, @@ -5843,13 +5878,13 @@ } }, "node_modules/@aws-sdk/middleware-flexible-checksums/node_modules/@smithy/shared-ini-file-loader": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.0.2.tgz", - "integrity": "sha512-J9/gTWBGVuFZ01oVA6vdb4DAjf1XbDhK6sLsu3OS9qmLrS6KB5ygpeHiM3miIbj1qgSJ96GYszXFWv6ErJ8QEw==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.0.3.tgz", + "integrity": "sha512-vHwlrqhZGIoLwaH8vvIjpHnloShqdJ7SUPNM2EQtEox+yEDFTVQ7E+DLZ+6OhnYEgFUwPByJyz6UZaOu2tny6A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -5857,9 +5892,9 @@ } }, "node_modules/@aws-sdk/middleware-flexible-checksums/node_modules/@smithy/types": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.2.0.tgz", - "integrity": "sha512-7eMk09zQKCO+E/ivsjQv+fDlOupcFUCSC/L2YUPgwhvowVGWbPQHjEFcmjt7QQ4ra5lyowS92SV53Zc6XD4+fg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.3.0.tgz", + "integrity": "sha512-+1iaIQHthDh9yaLhRzaoQxRk+l9xlk+JjMFxGRhNLz+m9vKOkjNeU8QuB4w3xvzHyVR/BVlp/4AXDHjoRIkfgQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -5899,15 +5934,15 @@ } }, "node_modules/@aws-sdk/middleware-flexible-checksums/node_modules/@smithy/util-stream": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.2.0.tgz", - "integrity": "sha512-Vj1TtwWnuWqdgQI6YTUF5hQ/0jmFiOYsc51CSMgj7QfyO+RF4EnT2HNjoviNlOOmgzgvf3f5yno+EiC4vrnaWQ==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.2.1.tgz", + "integrity": "sha512-W3IR0x5DY6iVtjj5p902oNhD+Bz7vs5S+p6tppbPa509rV9BdeXZjGuRSCtVEad9FA0Mba+tNUtUmtnSI1nwUw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/fetch-http-handler": "^5.0.2", - "@smithy/node-http-handler": "^4.0.4", - "@smithy/types": "^4.2.0", + "@smithy/fetch-http-handler": "^5.0.3", + "@smithy/node-http-handler": "^4.0.5", + "@smithy/types": "^4.3.0", "@smithy/util-base64": "^4.0.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-hex-encoding": "^4.0.0", @@ -5990,13 +6025,13 @@ } }, "node_modules/@aws-sdk/middleware-location-constraint": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.775.0.tgz", - "integrity": "sha512-8TMXEHZXZTFTckQLyBT5aEI8fX11HZcwZseRifvBKKpj0RZDk4F0EEYGxeNSPpUQ7n+PRWyfAEnnZNRdAj/1NQ==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.804.0.tgz", + "integrity": "sha512-AMtKnllIWKgoo7hiJfphLYotEwTERfjVMO2+cKAncz9w1g+bnYhHxiVhJJoR94y047c06X4PU5MsTxvdQ73Znw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.775.0", + "@aws-sdk/types": "3.804.0", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" }, @@ -6005,9 +6040,9 @@ } }, "node_modules/@aws-sdk/middleware-location-constraint/node_modules/@aws-sdk/types": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.775.0.tgz", - "integrity": "sha512-ZoGKwa4C9fC9Av6bdfqcW6Ix5ot05F/S4VxWR2nHuMv7hzfmAjTOcUiWT7UR4hM/U0whf84VhDtXN/DWAk52KA==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.804.0.tgz", + "integrity": "sha512-A9qnsy9zQ8G89vrPPlNG9d1d8QcKRGqJKqwyGgS0dclJpwy6d1EWgQLIolKPl6vcFpLoe6avLOLxr+h8ur5wpg==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -6019,9 +6054,9 @@ } }, "node_modules/@aws-sdk/middleware-location-constraint/node_modules/@smithy/types": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.2.0.tgz", - "integrity": "sha512-7eMk09zQKCO+E/ivsjQv+fDlOupcFUCSC/L2YUPgwhvowVGWbPQHjEFcmjt7QQ4ra5lyowS92SV53Zc6XD4+fg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.3.0.tgz", + "integrity": "sha512-+1iaIQHthDh9yaLhRzaoQxRk+l9xlk+JjMFxGRhNLz+m9vKOkjNeU8QuB4w3xvzHyVR/BVlp/4AXDHjoRIkfgQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -6063,20 +6098,20 @@ } }, "node_modules/@aws-sdk/middleware-sdk-s3": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.775.0.tgz", - "integrity": "sha512-zsvcu7cWB28JJ60gVvjxPCI7ZU7jWGcpNACPiZGyVtjYXwcxyhXbYEVDSWKsSA6ERpz9XrpLYod8INQWfW3ECg==", + "version": "3.816.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.816.0.tgz", + "integrity": "sha512-jJ+EAXM7gnOwiCM6rrl4AUNY5urmtIsX7roTkxtb4DevJxcS+wFYRRg3/j33fQbuxQZrvk21HqxyZYx5UH70PA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "3.775.0", - "@aws-sdk/types": "3.775.0", - "@aws-sdk/util-arn-parser": "3.723.0", - "@smithy/core": "^3.2.0", - "@smithy/node-config-provider": "^4.0.2", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/types": "3.804.0", + "@aws-sdk/util-arn-parser": "3.804.0", + "@smithy/core": "^3.3.3", + "@smithy/node-config-provider": "^4.1.1", "@smithy/protocol-http": "^5.1.0", - "@smithy/signature-v4": "^5.0.2", - "@smithy/smithy-client": "^4.2.0", + "@smithy/signature-v4": "^5.1.0", + "@smithy/smithy-client": "^4.2.6", "@smithy/types": "^4.2.0", "@smithy/util-config-provider": "^4.0.0", "@smithy/util-middleware": "^4.0.2", @@ -6089,9 +6124,9 @@ } }, "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@aws-sdk/types": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.775.0.tgz", - "integrity": "sha512-ZoGKwa4C9fC9Av6bdfqcW6Ix5ot05F/S4VxWR2nHuMv7hzfmAjTOcUiWT7UR4hM/U0whf84VhDtXN/DWAk52KA==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.804.0.tgz", + "integrity": "sha512-A9qnsy9zQ8G89vrPPlNG9d1d8QcKRGqJKqwyGgS0dclJpwy6d1EWgQLIolKPl6vcFpLoe6avLOLxr+h8ur5wpg==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -6103,13 +6138,13 @@ } }, "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@smithy/abort-controller": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.0.2.tgz", - "integrity": "sha512-Sl/78VDtgqKxN2+1qduaVE140XF+Xg+TafkncspwM4jFP/LHr76ZHmIY/y3V1M0mMLNk+Je6IGbzxy23RSToMw==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.0.3.tgz", + "integrity": "sha512-AqXFf6DXnuRBXy4SoK/n1mfgHaKaq36bmkphmD1KO0nHq6xK/g9KHSW4HEsPQUBCGdIEfuJifGHwxFXPIFay9Q==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -6117,15 +6152,15 @@ } }, "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@smithy/fetch-http-handler": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.0.2.tgz", - "integrity": "sha512-+9Dz8sakS9pe7f2cBocpJXdeVjMopUDLgZs1yWeu7h++WqSbjUYv/JAJwKwXw1HV6gq1jyWjxuyn24E2GhoEcQ==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.0.3.tgz", + "integrity": "sha512-yBZwavI31roqTndNI7ONHqesfH01JmjJK6L3uUpZAhyAmr86LN5QiPzfyZGIxQmed8VEK2NRSQT3/JX5V1njfQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/protocol-http": "^5.1.0", - "@smithy/querystring-builder": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/protocol-http": "^5.1.1", + "@smithy/querystring-builder": "^4.0.3", + "@smithy/types": "^4.3.0", "@smithy/util-base64": "^4.0.0", "tslib": "^2.6.2" }, @@ -6134,19 +6169,19 @@ } }, "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@smithy/middleware-endpoint": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.1.0.tgz", - "integrity": "sha512-xhLimgNCbCzsUppRTGXWkZywksuTThxaIB0HwbpsVLY5sceac4e1TZ/WKYqufQLaUy+gUSJGNdwD2jo3cXL0iA==", + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.1.7.tgz", + "integrity": "sha512-KDzM7Iajo6K7eIWNNtukykRT4eWwlHjCEsULZUaSfi/SRSBK8BPRqG5FsVfp58lUxcvre8GT8AIPIqndA0ERKw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/core": "^3.2.0", - "@smithy/middleware-serde": "^4.0.3", - "@smithy/node-config-provider": "^4.0.2", - "@smithy/shared-ini-file-loader": "^4.0.2", - "@smithy/types": "^4.2.0", - "@smithy/url-parser": "^4.0.2", - "@smithy/util-middleware": "^4.0.2", + "@smithy/core": "^3.4.0", + "@smithy/middleware-serde": "^4.0.6", + "@smithy/node-config-provider": "^4.1.2", + "@smithy/shared-ini-file-loader": "^4.0.3", + "@smithy/types": "^4.3.0", + "@smithy/url-parser": "^4.0.3", + "@smithy/util-middleware": "^4.0.3", "tslib": "^2.6.2" }, "engines": { @@ -6154,13 +6189,14 @@ } }, "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@smithy/middleware-serde": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.0.3.tgz", - "integrity": "sha512-rfgDVrgLEVMmMn0BI8O+8OVr6vXzjV7HZj57l0QxslhzbvVfikZbVfBVthjLHqib4BW44QhcIgJpvebHlRaC9A==", + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.0.6.tgz", + "integrity": "sha512-YECyl7uNII+jCr/9qEmCu8xYL79cU0fqjo0qxpcVIU18dAPHam/iYwcknAu4Jiyw1uN+sAx7/SMf/Kmef/Jjsg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/protocol-http": "^5.1.1", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -6168,13 +6204,13 @@ } }, "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@smithy/middleware-stack": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-4.0.2.tgz", - "integrity": "sha512-eSPVcuJJGVYrFYu2hEq8g8WWdJav3sdrI4o2c6z/rjnYDd3xH9j9E7deZQCzFn4QvGPouLngH3dQ+QVTxv5bOQ==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-4.0.3.tgz", + "integrity": "sha512-baeV7t4jQfQtFxBADFmnhmqBmqR38dNU5cvEgHcMK/Kp3D3bEI0CouoX2Sr/rGuntR+Eg0IjXdxnGGTc6SbIkw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -6182,15 +6218,15 @@ } }, "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@smithy/node-config-provider": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.0.2.tgz", - "integrity": "sha512-WgCkILRZfJwJ4Da92a6t3ozN/zcvYyJGUTmfGbgS/FkCcoCjl7G4FJaCDN1ySdvLvemnQeo25FdkyMSTSwulsw==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.1.2.tgz", + "integrity": "sha512-SUvNup8iU1v7fmM8XPk+27m36udmGCfSz+VZP5Gb0aJ3Ne0X28K/25gnsrg3X1rWlhcnhzNUUysKW/Ied46ivQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/property-provider": "^4.0.2", - "@smithy/shared-ini-file-loader": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/property-provider": "^4.0.3", + "@smithy/shared-ini-file-loader": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -6198,16 +6234,16 @@ } }, "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@smithy/node-http-handler": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.0.4.tgz", - "integrity": "sha512-/mdqabuAT3o/ihBGjL94PUbTSPSRJ0eeVTdgADzow0wRJ0rN4A27EOrtlK56MYiO1fDvlO3jVTCxQtQmK9dZ1g==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.0.5.tgz", + "integrity": "sha512-T7QglZC1vS7SPT44/1qSIAQEx5bFKb3LfO6zw/o4Xzt1eC5HNoH1TkS4lMYA9cWFbacUhx4hRl/blLun4EOCkg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/abort-controller": "^4.0.2", - "@smithy/protocol-http": "^5.1.0", - "@smithy/querystring-builder": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/abort-controller": "^4.0.3", + "@smithy/protocol-http": "^5.1.1", + "@smithy/querystring-builder": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -6215,13 +6251,13 @@ } }, "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@smithy/protocol-http": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.0.tgz", - "integrity": "sha512-KxAOL1nUNw2JTYrtviRRjEnykIDhxc84qMBzxvu1MUfQfHTuBlCG7PA6EdVwqpJjH7glw7FqQoFxUJSyBQgu7g==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.1.tgz", + "integrity": "sha512-Vsay2mzq05DwNi9jK01yCFtfvu9HimmgC7a4HTs7lhX12Sx8aWsH0mfz6q/02yspSp+lOB+Q2HJwi4IV2GKz7A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -6229,13 +6265,13 @@ } }, "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@smithy/querystring-builder": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.0.2.tgz", - "integrity": "sha512-NTOs0FwHw1vimmQM4ebh+wFQvOwkEf/kQL6bSM1Lock+Bv4I89B3hGYoUEPkmvYPkDKyp5UdXJYu+PoTQ3T31Q==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.0.3.tgz", + "integrity": "sha512-UUzIWMVfPmDZcOutk2/r1vURZqavvQW0OHvgsyNV0cKupChvqg+/NKPRMaMEe+i8tP96IthMFeZOZWpV+E4RAw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "@smithy/util-uri-escape": "^4.0.0", "tslib": "^2.6.2" }, @@ -6244,13 +6280,13 @@ } }, "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@smithy/querystring-parser": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-4.0.2.tgz", - "integrity": "sha512-v6w8wnmZcVXjfVLjxw8qF7OwESD9wnpjp0Dqry/Pod0/5vcEA3qxCr+BhbOHlxS8O+29eLpT3aagxXGwIoEk7Q==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-4.0.3.tgz", + "integrity": "sha512-K5M4ZJQpFCblOJ5Oyw7diICpFg1qhhR47m2/5Ef1PhGE19RaIZf50tjYFrxa6usqcuXyTiFPGo4d1geZdH4YcQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -6258,13 +6294,13 @@ } }, "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@smithy/shared-ini-file-loader": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.0.2.tgz", - "integrity": "sha512-J9/gTWBGVuFZ01oVA6vdb4DAjf1XbDhK6sLsu3OS9qmLrS6KB5ygpeHiM3miIbj1qgSJ96GYszXFWv6ErJ8QEw==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.0.3.tgz", + "integrity": "sha512-vHwlrqhZGIoLwaH8vvIjpHnloShqdJ7SUPNM2EQtEox+yEDFTVQ7E+DLZ+6OhnYEgFUwPByJyz6UZaOu2tny6A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -6272,18 +6308,18 @@ } }, "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@smithy/smithy-client": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.2.0.tgz", - "integrity": "sha512-Qs65/w30pWV7LSFAez9DKy0Koaoh3iHhpcpCCJ4waj/iqwsuSzJna2+vYwq46yBaqO5ZbP9TjUsATUNxrKeBdw==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.3.0.tgz", + "integrity": "sha512-DNsRA38pN6tYHUjebmwD9e4KcgqTLldYQb2gC6K+oxXYdCTxPn6wV9+FvOa6wrU2FQEnGJoi+3GULzOTKck/tg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/core": "^3.2.0", - "@smithy/middleware-endpoint": "^4.1.0", - "@smithy/middleware-stack": "^4.0.2", - "@smithy/protocol-http": "^5.1.0", - "@smithy/types": "^4.2.0", - "@smithy/util-stream": "^4.2.0", + "@smithy/core": "^3.4.0", + "@smithy/middleware-endpoint": "^4.1.7", + "@smithy/middleware-stack": "^4.0.3", + "@smithy/protocol-http": "^5.1.1", + "@smithy/types": "^4.3.0", + "@smithy/util-stream": "^4.2.1", "tslib": "^2.6.2" }, "engines": { @@ -6291,9 +6327,9 @@ } }, "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@smithy/types": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.2.0.tgz", - "integrity": "sha512-7eMk09zQKCO+E/ivsjQv+fDlOupcFUCSC/L2YUPgwhvowVGWbPQHjEFcmjt7QQ4ra5lyowS92SV53Zc6XD4+fg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.3.0.tgz", + "integrity": "sha512-+1iaIQHthDh9yaLhRzaoQxRk+l9xlk+JjMFxGRhNLz+m9vKOkjNeU8QuB4w3xvzHyVR/BVlp/4AXDHjoRIkfgQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -6304,14 +6340,14 @@ } }, "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@smithy/url-parser": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-4.0.2.tgz", - "integrity": "sha512-Bm8n3j2ScqnT+kJaClSVCMeiSenK6jVAzZCNewsYWuZtnBehEz4r2qP0riZySZVfzB+03XZHJeqfmJDkeeSLiQ==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-4.0.3.tgz", + "integrity": "sha512-n5/DnosDu/tweOqUUNtUbu7eRIR4J/Wz9nL7V5kFYQQVb8VYdj7a4G5NJHCw6o21ul7CvZoJkOpdTnsQDLT0tQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/querystring-parser": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/querystring-parser": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -6348,15 +6384,15 @@ } }, "node_modules/@aws-sdk/middleware-sdk-s3/node_modules/@smithy/util-stream": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.2.0.tgz", - "integrity": "sha512-Vj1TtwWnuWqdgQI6YTUF5hQ/0jmFiOYsc51CSMgj7QfyO+RF4EnT2HNjoviNlOOmgzgvf3f5yno+EiC4vrnaWQ==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.2.1.tgz", + "integrity": "sha512-W3IR0x5DY6iVtjj5p902oNhD+Bz7vs5S+p6tppbPa509rV9BdeXZjGuRSCtVEad9FA0Mba+tNUtUmtnSI1nwUw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/fetch-http-handler": "^5.0.2", - "@smithy/node-http-handler": "^4.0.4", - "@smithy/types": "^4.2.0", + "@smithy/fetch-http-handler": "^5.0.3", + "@smithy/node-http-handler": "^4.0.5", + "@smithy/types": "^4.3.0", "@smithy/util-base64": "^4.0.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-hex-encoding": "^4.0.0", @@ -6395,14 +6431,14 @@ } }, "node_modules/@aws-sdk/middleware-sdk-sqs": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sqs/-/middleware-sdk-sqs-3.775.0.tgz", - "integrity": "sha512-v3sAWAyHqHI+14l45wq4x7DN0Mb3L6uTBj5b6/w8ILASRMbm69FM6b2Alws1Yl+0Bc60fhrqxwMCed0y8azTkw==", + "version": "3.810.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sqs/-/middleware-sdk-sqs-3.810.0.tgz", + "integrity": "sha512-MKNX7TYtB3dn1UO+5ewTLJUtDNXLAIKbXokCEfzHuvqPJpsFPbBp7ERY2jn2KjCBMSaP3w1ZCCpFKcfVICsrXQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.775.0", - "@smithy/smithy-client": "^4.2.0", + "@aws-sdk/types": "3.804.0", + "@smithy/smithy-client": "^4.2.6", "@smithy/types": "^4.2.0", "@smithy/util-hex-encoding": "^4.0.0", "@smithy/util-utf8": "^4.0.0", @@ -6413,9 +6449,9 @@ } }, "node_modules/@aws-sdk/middleware-sdk-sqs/node_modules/@aws-sdk/types": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.775.0.tgz", - "integrity": "sha512-ZoGKwa4C9fC9Av6bdfqcW6Ix5ot05F/S4VxWR2nHuMv7hzfmAjTOcUiWT7UR4hM/U0whf84VhDtXN/DWAk52KA==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.804.0.tgz", + "integrity": "sha512-A9qnsy9zQ8G89vrPPlNG9d1d8QcKRGqJKqwyGgS0dclJpwy6d1EWgQLIolKPl6vcFpLoe6avLOLxr+h8ur5wpg==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -6427,13 +6463,13 @@ } }, "node_modules/@aws-sdk/middleware-sdk-sqs/node_modules/@smithy/abort-controller": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.0.2.tgz", - "integrity": "sha512-Sl/78VDtgqKxN2+1qduaVE140XF+Xg+TafkncspwM4jFP/LHr76ZHmIY/y3V1M0mMLNk+Je6IGbzxy23RSToMw==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.0.3.tgz", + "integrity": "sha512-AqXFf6DXnuRBXy4SoK/n1mfgHaKaq36bmkphmD1KO0nHq6xK/g9KHSW4HEsPQUBCGdIEfuJifGHwxFXPIFay9Q==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -6441,15 +6477,15 @@ } }, "node_modules/@aws-sdk/middleware-sdk-sqs/node_modules/@smithy/fetch-http-handler": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.0.2.tgz", - "integrity": "sha512-+9Dz8sakS9pe7f2cBocpJXdeVjMopUDLgZs1yWeu7h++WqSbjUYv/JAJwKwXw1HV6gq1jyWjxuyn24E2GhoEcQ==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.0.3.tgz", + "integrity": "sha512-yBZwavI31roqTndNI7ONHqesfH01JmjJK6L3uUpZAhyAmr86LN5QiPzfyZGIxQmed8VEK2NRSQT3/JX5V1njfQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/protocol-http": "^5.1.0", - "@smithy/querystring-builder": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/protocol-http": "^5.1.1", + "@smithy/querystring-builder": "^4.0.3", + "@smithy/types": "^4.3.0", "@smithy/util-base64": "^4.0.0", "tslib": "^2.6.2" }, @@ -6458,19 +6494,19 @@ } }, "node_modules/@aws-sdk/middleware-sdk-sqs/node_modules/@smithy/middleware-endpoint": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.1.0.tgz", - "integrity": "sha512-xhLimgNCbCzsUppRTGXWkZywksuTThxaIB0HwbpsVLY5sceac4e1TZ/WKYqufQLaUy+gUSJGNdwD2jo3cXL0iA==", + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.1.7.tgz", + "integrity": "sha512-KDzM7Iajo6K7eIWNNtukykRT4eWwlHjCEsULZUaSfi/SRSBK8BPRqG5FsVfp58lUxcvre8GT8AIPIqndA0ERKw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/core": "^3.2.0", - "@smithy/middleware-serde": "^4.0.3", - "@smithy/node-config-provider": "^4.0.2", - "@smithy/shared-ini-file-loader": "^4.0.2", - "@smithy/types": "^4.2.0", - "@smithy/url-parser": "^4.0.2", - "@smithy/util-middleware": "^4.0.2", + "@smithy/core": "^3.4.0", + "@smithy/middleware-serde": "^4.0.6", + "@smithy/node-config-provider": "^4.1.2", + "@smithy/shared-ini-file-loader": "^4.0.3", + "@smithy/types": "^4.3.0", + "@smithy/url-parser": "^4.0.3", + "@smithy/util-middleware": "^4.0.3", "tslib": "^2.6.2" }, "engines": { @@ -6478,13 +6514,14 @@ } }, "node_modules/@aws-sdk/middleware-sdk-sqs/node_modules/@smithy/middleware-serde": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.0.3.tgz", - "integrity": "sha512-rfgDVrgLEVMmMn0BI8O+8OVr6vXzjV7HZj57l0QxslhzbvVfikZbVfBVthjLHqib4BW44QhcIgJpvebHlRaC9A==", + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.0.6.tgz", + "integrity": "sha512-YECyl7uNII+jCr/9qEmCu8xYL79cU0fqjo0qxpcVIU18dAPHam/iYwcknAu4Jiyw1uN+sAx7/SMf/Kmef/Jjsg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/protocol-http": "^5.1.1", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -6492,13 +6529,13 @@ } }, "node_modules/@aws-sdk/middleware-sdk-sqs/node_modules/@smithy/middleware-stack": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-4.0.2.tgz", - "integrity": "sha512-eSPVcuJJGVYrFYu2hEq8g8WWdJav3sdrI4o2c6z/rjnYDd3xH9j9E7deZQCzFn4QvGPouLngH3dQ+QVTxv5bOQ==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-4.0.3.tgz", + "integrity": "sha512-baeV7t4jQfQtFxBADFmnhmqBmqR38dNU5cvEgHcMK/Kp3D3bEI0CouoX2Sr/rGuntR+Eg0IjXdxnGGTc6SbIkw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -6506,15 +6543,15 @@ } }, "node_modules/@aws-sdk/middleware-sdk-sqs/node_modules/@smithy/node-config-provider": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.0.2.tgz", - "integrity": "sha512-WgCkILRZfJwJ4Da92a6t3ozN/zcvYyJGUTmfGbgS/FkCcoCjl7G4FJaCDN1ySdvLvemnQeo25FdkyMSTSwulsw==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.1.2.tgz", + "integrity": "sha512-SUvNup8iU1v7fmM8XPk+27m36udmGCfSz+VZP5Gb0aJ3Ne0X28K/25gnsrg3X1rWlhcnhzNUUysKW/Ied46ivQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/property-provider": "^4.0.2", - "@smithy/shared-ini-file-loader": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/property-provider": "^4.0.3", + "@smithy/shared-ini-file-loader": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -6522,16 +6559,16 @@ } }, "node_modules/@aws-sdk/middleware-sdk-sqs/node_modules/@smithy/node-http-handler": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.0.4.tgz", - "integrity": "sha512-/mdqabuAT3o/ihBGjL94PUbTSPSRJ0eeVTdgADzow0wRJ0rN4A27EOrtlK56MYiO1fDvlO3jVTCxQtQmK9dZ1g==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.0.5.tgz", + "integrity": "sha512-T7QglZC1vS7SPT44/1qSIAQEx5bFKb3LfO6zw/o4Xzt1eC5HNoH1TkS4lMYA9cWFbacUhx4hRl/blLun4EOCkg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/abort-controller": "^4.0.2", - "@smithy/protocol-http": "^5.1.0", - "@smithy/querystring-builder": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/abort-controller": "^4.0.3", + "@smithy/protocol-http": "^5.1.1", + "@smithy/querystring-builder": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -6539,13 +6576,13 @@ } }, "node_modules/@aws-sdk/middleware-sdk-sqs/node_modules/@smithy/protocol-http": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.0.tgz", - "integrity": "sha512-KxAOL1nUNw2JTYrtviRRjEnykIDhxc84qMBzxvu1MUfQfHTuBlCG7PA6EdVwqpJjH7glw7FqQoFxUJSyBQgu7g==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.1.tgz", + "integrity": "sha512-Vsay2mzq05DwNi9jK01yCFtfvu9HimmgC7a4HTs7lhX12Sx8aWsH0mfz6q/02yspSp+lOB+Q2HJwi4IV2GKz7A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -6553,13 +6590,13 @@ } }, "node_modules/@aws-sdk/middleware-sdk-sqs/node_modules/@smithy/querystring-builder": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.0.2.tgz", - "integrity": "sha512-NTOs0FwHw1vimmQM4ebh+wFQvOwkEf/kQL6bSM1Lock+Bv4I89B3hGYoUEPkmvYPkDKyp5UdXJYu+PoTQ3T31Q==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.0.3.tgz", + "integrity": "sha512-UUzIWMVfPmDZcOutk2/r1vURZqavvQW0OHvgsyNV0cKupChvqg+/NKPRMaMEe+i8tP96IthMFeZOZWpV+E4RAw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "@smithy/util-uri-escape": "^4.0.0", "tslib": "^2.6.2" }, @@ -6568,13 +6605,13 @@ } }, "node_modules/@aws-sdk/middleware-sdk-sqs/node_modules/@smithy/querystring-parser": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-4.0.2.tgz", - "integrity": "sha512-v6w8wnmZcVXjfVLjxw8qF7OwESD9wnpjp0Dqry/Pod0/5vcEA3qxCr+BhbOHlxS8O+29eLpT3aagxXGwIoEk7Q==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-4.0.3.tgz", + "integrity": "sha512-K5M4ZJQpFCblOJ5Oyw7diICpFg1qhhR47m2/5Ef1PhGE19RaIZf50tjYFrxa6usqcuXyTiFPGo4d1geZdH4YcQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -6582,13 +6619,13 @@ } }, "node_modules/@aws-sdk/middleware-sdk-sqs/node_modules/@smithy/shared-ini-file-loader": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.0.2.tgz", - "integrity": "sha512-J9/gTWBGVuFZ01oVA6vdb4DAjf1XbDhK6sLsu3OS9qmLrS6KB5ygpeHiM3miIbj1qgSJ96GYszXFWv6ErJ8QEw==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.0.3.tgz", + "integrity": "sha512-vHwlrqhZGIoLwaH8vvIjpHnloShqdJ7SUPNM2EQtEox+yEDFTVQ7E+DLZ+6OhnYEgFUwPByJyz6UZaOu2tny6A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -6596,18 +6633,18 @@ } }, "node_modules/@aws-sdk/middleware-sdk-sqs/node_modules/@smithy/smithy-client": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.2.0.tgz", - "integrity": "sha512-Qs65/w30pWV7LSFAez9DKy0Koaoh3iHhpcpCCJ4waj/iqwsuSzJna2+vYwq46yBaqO5ZbP9TjUsATUNxrKeBdw==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.3.0.tgz", + "integrity": "sha512-DNsRA38pN6tYHUjebmwD9e4KcgqTLldYQb2gC6K+oxXYdCTxPn6wV9+FvOa6wrU2FQEnGJoi+3GULzOTKck/tg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/core": "^3.2.0", - "@smithy/middleware-endpoint": "^4.1.0", - "@smithy/middleware-stack": "^4.0.2", - "@smithy/protocol-http": "^5.1.0", - "@smithy/types": "^4.2.0", - "@smithy/util-stream": "^4.2.0", + "@smithy/core": "^3.4.0", + "@smithy/middleware-endpoint": "^4.1.7", + "@smithy/middleware-stack": "^4.0.3", + "@smithy/protocol-http": "^5.1.1", + "@smithy/types": "^4.3.0", + "@smithy/util-stream": "^4.2.1", "tslib": "^2.6.2" }, "engines": { @@ -6615,9 +6652,9 @@ } }, "node_modules/@aws-sdk/middleware-sdk-sqs/node_modules/@smithy/types": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.2.0.tgz", - "integrity": "sha512-7eMk09zQKCO+E/ivsjQv+fDlOupcFUCSC/L2YUPgwhvowVGWbPQHjEFcmjt7QQ4ra5lyowS92SV53Zc6XD4+fg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.3.0.tgz", + "integrity": "sha512-+1iaIQHthDh9yaLhRzaoQxRk+l9xlk+JjMFxGRhNLz+m9vKOkjNeU8QuB4w3xvzHyVR/BVlp/4AXDHjoRIkfgQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -6628,14 +6665,14 @@ } }, "node_modules/@aws-sdk/middleware-sdk-sqs/node_modules/@smithy/url-parser": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-4.0.2.tgz", - "integrity": "sha512-Bm8n3j2ScqnT+kJaClSVCMeiSenK6jVAzZCNewsYWuZtnBehEz4r2qP0riZySZVfzB+03XZHJeqfmJDkeeSLiQ==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-4.0.3.tgz", + "integrity": "sha512-n5/DnosDu/tweOqUUNtUbu7eRIR4J/Wz9nL7V5kFYQQVb8VYdj7a4G5NJHCw6o21ul7CvZoJkOpdTnsQDLT0tQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/querystring-parser": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/querystring-parser": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -6672,15 +6709,15 @@ } }, "node_modules/@aws-sdk/middleware-sdk-sqs/node_modules/@smithy/util-stream": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.2.0.tgz", - "integrity": "sha512-Vj1TtwWnuWqdgQI6YTUF5hQ/0jmFiOYsc51CSMgj7QfyO+RF4EnT2HNjoviNlOOmgzgvf3f5yno+EiC4vrnaWQ==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.2.1.tgz", + "integrity": "sha512-W3IR0x5DY6iVtjj5p902oNhD+Bz7vs5S+p6tppbPa509rV9BdeXZjGuRSCtVEad9FA0Mba+tNUtUmtnSI1nwUw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/fetch-http-handler": "^5.0.2", - "@smithy/node-http-handler": "^4.0.4", - "@smithy/types": "^4.2.0", + "@smithy/fetch-http-handler": "^5.0.3", + "@smithy/node-http-handler": "^4.0.5", + "@smithy/types": "^4.3.0", "@smithy/util-base64": "^4.0.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-hex-encoding": "^4.0.0", @@ -6827,13 +6864,13 @@ } }, "node_modules/@aws-sdk/middleware-ssec": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.775.0.tgz", - "integrity": "sha512-Iw1RHD8vfAWWPzBBIKaojO4GAvQkHOYIpKdAfis/EUSUmSa79QsnXnRqsdcE0mCB0Ylj23yi+ah4/0wh9FsekA==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.804.0.tgz", + "integrity": "sha512-Tk8jK0gOIUBvEPTz/wwSlP1V70zVQ3QYqsLPAjQRMO6zfOK9ax31dln3MgKvFDJxBydS2tS3wsn53v+brxDxTA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.775.0", + "@aws-sdk/types": "3.804.0", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" }, @@ -6842,9 +6879,9 @@ } }, "node_modules/@aws-sdk/middleware-ssec/node_modules/@aws-sdk/types": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.775.0.tgz", - "integrity": "sha512-ZoGKwa4C9fC9Av6bdfqcW6Ix5ot05F/S4VxWR2nHuMv7hzfmAjTOcUiWT7UR4hM/U0whf84VhDtXN/DWAk52KA==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.804.0.tgz", + "integrity": "sha512-A9qnsy9zQ8G89vrPPlNG9d1d8QcKRGqJKqwyGgS0dclJpwy6d1EWgQLIolKPl6vcFpLoe6avLOLxr+h8ur5wpg==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -6856,9 +6893,9 @@ } }, "node_modules/@aws-sdk/middleware-ssec/node_modules/@smithy/types": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.2.0.tgz", - "integrity": "sha512-7eMk09zQKCO+E/ivsjQv+fDlOupcFUCSC/L2YUPgwhvowVGWbPQHjEFcmjt7QQ4ra5lyowS92SV53Zc6XD4+fg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.3.0.tgz", + "integrity": "sha512-+1iaIQHthDh9yaLhRzaoQxRk+l9xlk+JjMFxGRhNLz+m9vKOkjNeU8QuB4w3xvzHyVR/BVlp/4AXDHjoRIkfgQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -6886,48 +6923,48 @@ } }, "node_modules/@aws-sdk/nested-clients": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/nested-clients/-/nested-clients-3.787.0.tgz", - "integrity": "sha512-xk03q1xpKNHgbuo+trEf1dFrI239kuMmjKKsqLEsHlAZbuFq4yRGMlHBrVMnKYOPBhVFDS/VineM991XI52fKg==", + "version": "3.817.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/nested-clients/-/nested-clients-3.817.0.tgz", + "integrity": "sha512-vQ2E06A48STJFssueJQgxYD8lh1iGJoLJnHdshRDWOQb8gy1wVQR+a7MkPGhGR6lGoS0SCnF/Qp6CZhnwLsqsQ==", "dev": true, "license": "Apache-2.0", "dependencies": { "@aws-crypto/sha256-browser": "5.2.0", "@aws-crypto/sha256-js": "5.2.0", - "@aws-sdk/core": "3.775.0", - "@aws-sdk/middleware-host-header": "3.775.0", - "@aws-sdk/middleware-logger": "3.775.0", - "@aws-sdk/middleware-recursion-detection": "3.775.0", - "@aws-sdk/middleware-user-agent": "3.787.0", - "@aws-sdk/region-config-resolver": "3.775.0", - "@aws-sdk/types": "3.775.0", - "@aws-sdk/util-endpoints": "3.787.0", - "@aws-sdk/util-user-agent-browser": "3.775.0", - "@aws-sdk/util-user-agent-node": "3.787.0", - "@smithy/config-resolver": "^4.1.0", - "@smithy/core": "^3.2.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/middleware-host-header": "3.804.0", + "@aws-sdk/middleware-logger": "3.804.0", + "@aws-sdk/middleware-recursion-detection": "3.804.0", + "@aws-sdk/middleware-user-agent": "3.816.0", + "@aws-sdk/region-config-resolver": "3.808.0", + "@aws-sdk/types": "3.804.0", + "@aws-sdk/util-endpoints": "3.808.0", + "@aws-sdk/util-user-agent-browser": "3.804.0", + "@aws-sdk/util-user-agent-node": "3.816.0", + "@smithy/config-resolver": "^4.1.2", + "@smithy/core": "^3.3.3", "@smithy/fetch-http-handler": "^5.0.2", "@smithy/hash-node": "^4.0.2", "@smithy/invalid-dependency": "^4.0.2", "@smithy/middleware-content-length": "^4.0.2", - "@smithy/middleware-endpoint": "^4.1.0", - "@smithy/middleware-retry": "^4.1.0", - "@smithy/middleware-serde": "^4.0.3", + "@smithy/middleware-endpoint": "^4.1.6", + "@smithy/middleware-retry": "^4.1.7", + "@smithy/middleware-serde": "^4.0.5", "@smithy/middleware-stack": "^4.0.2", - "@smithy/node-config-provider": "^4.0.2", + "@smithy/node-config-provider": "^4.1.1", "@smithy/node-http-handler": "^4.0.4", "@smithy/protocol-http": "^5.1.0", - "@smithy/smithy-client": "^4.2.0", + "@smithy/smithy-client": "^4.2.6", "@smithy/types": "^4.2.0", "@smithy/url-parser": "^4.0.2", "@smithy/util-base64": "^4.0.0", "@smithy/util-body-length-browser": "^4.0.0", "@smithy/util-body-length-node": "^4.0.0", - "@smithy/util-defaults-mode-browser": "^4.0.8", - "@smithy/util-defaults-mode-node": "^4.0.8", - "@smithy/util-endpoints": "^3.0.2", + "@smithy/util-defaults-mode-browser": "^4.0.14", + "@smithy/util-defaults-mode-node": "^4.0.14", + "@smithy/util-endpoints": "^3.0.4", "@smithy/util-middleware": "^4.0.2", - "@smithy/util-retry": "^4.0.2", + "@smithy/util-retry": "^4.0.3", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" }, @@ -7017,13 +7054,13 @@ } }, "node_modules/@aws-sdk/nested-clients/node_modules/@aws-sdk/middleware-host-header": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.775.0.tgz", - "integrity": "sha512-tkSegM0Z6WMXpLB8oPys/d+umYIocvO298mGvcMCncpRl77L9XkvSLJIFzaHes+o7djAgIduYw8wKIMStFss2w==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.804.0.tgz", + "integrity": "sha512-bum1hLVBrn2lJCi423Z2fMUYtsbkGI2s4N+2RI2WSjvbaVyMSv/WcejIrjkqiiMR+2Y7m5exgoKeg4/TODLDPQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.775.0", + "@aws-sdk/types": "3.804.0", "@smithy/protocol-http": "^5.1.0", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" @@ -7033,13 +7070,13 @@ } }, "node_modules/@aws-sdk/nested-clients/node_modules/@aws-sdk/middleware-logger": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.775.0.tgz", - "integrity": "sha512-FaxO1xom4MAoUJsldmR92nT1G6uZxTdNYOFYtdHfd6N2wcNaTuxgjIvqzg5y7QIH9kn58XX/dzf1iTjgqUStZw==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.804.0.tgz", + "integrity": "sha512-w/qLwL3iq0KOPQNat0Kb7sKndl9BtceigINwBU7SpkYWX9L/Lem6f8NPEKrC9Tl4wDBht3Yztub4oRTy/horJA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.775.0", + "@aws-sdk/types": "3.804.0", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" }, @@ -7048,13 +7085,13 @@ } }, "node_modules/@aws-sdk/nested-clients/node_modules/@aws-sdk/middleware-recursion-detection": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.775.0.tgz", - "integrity": "sha512-GLCzC8D0A0YDG5u3F5U03Vb9j5tcOEFhr8oc6PDk0k0vm5VwtZOE6LvK7hcCSoAB4HXyOUM0sQuXrbaAh9OwXA==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.804.0.tgz", + "integrity": "sha512-zqHOrvLRdsUdN/ehYfZ9Tf8svhbiLLz5VaWUz22YndFv6m9qaAcijkpAOlKexsv3nLBMJdSdJ6GUTAeIy3BZzw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.775.0", + "@aws-sdk/types": "3.804.0", "@smithy/protocol-http": "^5.1.0", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" @@ -7064,16 +7101,16 @@ } }, "node_modules/@aws-sdk/nested-clients/node_modules/@aws-sdk/middleware-user-agent": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.787.0.tgz", - "integrity": "sha512-Lnfj8SmPLYtrDFthNIaNj66zZsBCam+E4XiUDr55DIHTGstH6qZ/q6vg0GfbukxwSmUcGMwSR4Qbn8rb8yd77g==", + "version": "3.816.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.816.0.tgz", + "integrity": "sha512-bHRSlWZ0xDsFR8E2FwDb//0Ff6wMkVx4O+UKsfyNlAbtqCiiHRt5ANNfKPafr95cN2CCxLxiPvFTFVblQM5TsQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/core": "3.775.0", - "@aws-sdk/types": "3.775.0", - "@aws-sdk/util-endpoints": "3.787.0", - "@smithy/core": "^3.2.0", + "@aws-sdk/core": "3.816.0", + "@aws-sdk/types": "3.804.0", + "@aws-sdk/util-endpoints": "3.808.0", + "@smithy/core": "^3.3.3", "@smithy/protocol-http": "^5.1.0", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" @@ -7083,9 +7120,9 @@ } }, "node_modules/@aws-sdk/nested-clients/node_modules/@aws-sdk/types": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.775.0.tgz", - "integrity": "sha512-ZoGKwa4C9fC9Av6bdfqcW6Ix5ot05F/S4VxWR2nHuMv7hzfmAjTOcUiWT7UR4hM/U0whf84VhDtXN/DWAk52KA==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.804.0.tgz", + "integrity": "sha512-A9qnsy9zQ8G89vrPPlNG9d1d8QcKRGqJKqwyGgS0dclJpwy6d1EWgQLIolKPl6vcFpLoe6avLOLxr+h8ur5wpg==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -7097,15 +7134,15 @@ } }, "node_modules/@aws-sdk/nested-clients/node_modules/@aws-sdk/util-endpoints": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.787.0.tgz", - "integrity": "sha512-fd3zkiOkwnbdbN0Xp9TsP5SWrmv0SpT70YEdbb8wAj2DWQwiCmFszaSs+YCvhoCdmlR3Wl9Spu0pGpSAGKeYvQ==", + "version": "3.808.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.808.0.tgz", + "integrity": "sha512-N6Lic98uc4ADB7fLWlzx+1uVnq04VgVjngZvwHoujcRg9YDhIg9dUDiTzD5VZv13g1BrPYmvYP1HhsildpGV6w==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.775.0", + "@aws-sdk/types": "3.804.0", "@smithy/types": "^4.2.0", - "@smithy/util-endpoints": "^3.0.2", + "@smithy/util-endpoints": "^3.0.4", "tslib": "^2.6.2" }, "engines": { @@ -7113,28 +7150,28 @@ } }, "node_modules/@aws-sdk/nested-clients/node_modules/@aws-sdk/util-user-agent-browser": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.775.0.tgz", - "integrity": "sha512-txw2wkiJmZKVdDbscK7VBK+u+TJnRtlUjRTLei+elZg2ADhpQxfVAQl436FUeIv6AhB/oRHW6/K/EAGXUSWi0A==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.804.0.tgz", + "integrity": "sha512-KfW6T6nQHHM/vZBBdGn6fMyG/MgX5lq82TDdX4HRQRRuHKLgBWGpKXqqvBwqIaCdXwWHgDrg2VQups6GqOWW2A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.775.0", + "@aws-sdk/types": "3.804.0", "@smithy/types": "^4.2.0", "bowser": "^2.11.0", "tslib": "^2.6.2" } }, "node_modules/@aws-sdk/nested-clients/node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.787.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.787.0.tgz", - "integrity": "sha512-mG7Lz8ydfG4SF9e8WSXiPQ/Lsn3n8A5B5jtPROidafi06I3ckV2WxyMLdwG14m919NoS6IOfWHyRGSqWIwbVKA==", + "version": "3.816.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.816.0.tgz", + "integrity": "sha512-Q6dxmuj4hL7pudhrneWEQ7yVHIQRBFr0wqKLF1opwOi1cIePuoEbPyJ2jkel6PDEv1YMfvsAKaRshp6eNA8VHg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/middleware-user-agent": "3.787.0", - "@aws-sdk/types": "3.775.0", - "@smithy/node-config-provider": "^4.0.2", + "@aws-sdk/middleware-user-agent": "3.816.0", + "@aws-sdk/types": "3.804.0", + "@smithy/node-config-provider": "^4.1.1", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" }, @@ -7151,13 +7188,13 @@ } }, "node_modules/@aws-sdk/nested-clients/node_modules/@smithy/abort-controller": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.0.2.tgz", - "integrity": "sha512-Sl/78VDtgqKxN2+1qduaVE140XF+Xg+TafkncspwM4jFP/LHr76ZHmIY/y3V1M0mMLNk+Je6IGbzxy23RSToMw==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.0.3.tgz", + "integrity": "sha512-AqXFf6DXnuRBXy4SoK/n1mfgHaKaq36bmkphmD1KO0nHq6xK/g9KHSW4HEsPQUBCGdIEfuJifGHwxFXPIFay9Q==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -7165,16 +7202,16 @@ } }, "node_modules/@aws-sdk/nested-clients/node_modules/@smithy/config-resolver": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-4.1.0.tgz", - "integrity": "sha512-8smPlwhga22pwl23fM5ew4T9vfLUCeFXlcqNOCD5M5h8VmNPNUE9j6bQSuRXpDSV11L/E/SwEBQuW8hr6+nS1A==", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-4.1.3.tgz", + "integrity": "sha512-N5e7ofiyYDmHxnPnqF8L4KtsbSDwyxFRfDK9bp1d9OyPO4ytRLd0/XxCqi5xVaaqB65v4woW8uey6jND6zxzxQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/node-config-provider": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/node-config-provider": "^4.1.2", + "@smithy/types": "^4.3.0", "@smithy/util-config-provider": "^4.0.0", - "@smithy/util-middleware": "^4.0.2", + "@smithy/util-middleware": "^4.0.3", "tslib": "^2.6.2" }, "engines": { @@ -7182,16 +7219,16 @@ } }, "node_modules/@aws-sdk/nested-clients/node_modules/@smithy/credential-provider-imds": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-4.0.2.tgz", - "integrity": "sha512-32lVig6jCaWBHnY+OEQ6e6Vnt5vDHaLiydGrwYMW9tPqO688hPGTYRamYJ1EptxEC2rAwJrHWmPoKRBl4iTa8w==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-4.0.5.tgz", + "integrity": "sha512-saEAGwrIlkb9XxX/m5S5hOtzjoJPEK6Qw2f9pYTbIsMPOFyGSXBBTw95WbOyru8A1vIS2jVCCU1Qhz50QWG3IA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/node-config-provider": "^4.0.2", - "@smithy/property-provider": "^4.0.2", - "@smithy/types": "^4.2.0", - "@smithy/url-parser": "^4.0.2", + "@smithy/node-config-provider": "^4.1.2", + "@smithy/property-provider": "^4.0.3", + "@smithy/types": "^4.3.0", + "@smithy/url-parser": "^4.0.3", "tslib": "^2.6.2" }, "engines": { @@ -7199,15 +7236,15 @@ } }, "node_modules/@aws-sdk/nested-clients/node_modules/@smithy/fetch-http-handler": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.0.2.tgz", - "integrity": "sha512-+9Dz8sakS9pe7f2cBocpJXdeVjMopUDLgZs1yWeu7h++WqSbjUYv/JAJwKwXw1HV6gq1jyWjxuyn24E2GhoEcQ==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.0.3.tgz", + "integrity": "sha512-yBZwavI31roqTndNI7ONHqesfH01JmjJK6L3uUpZAhyAmr86LN5QiPzfyZGIxQmed8VEK2NRSQT3/JX5V1njfQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/protocol-http": "^5.1.0", - "@smithy/querystring-builder": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/protocol-http": "^5.1.1", + "@smithy/querystring-builder": "^4.0.3", + "@smithy/types": "^4.3.0", "@smithy/util-base64": "^4.0.0", "tslib": "^2.6.2" }, @@ -7216,13 +7253,13 @@ } }, "node_modules/@aws-sdk/nested-clients/node_modules/@smithy/hash-node": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-4.0.2.tgz", - "integrity": "sha512-VnTpYPnRUE7yVhWozFdlxcYknv9UN7CeOqSrMH+V877v4oqtVYuoqhIhtSjmGPvYrYnAkaM61sLMKHvxL138yg==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-4.0.3.tgz", + "integrity": "sha512-W5Uhy6v/aYrgtjh9y0YP332gIQcwccQ+EcfWhllL0B9rPae42JngTTUpb8W6wuxaNFzqps4xq5klHckSSOy5fw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" @@ -7246,13 +7283,13 @@ } }, "node_modules/@aws-sdk/nested-clients/node_modules/@smithy/invalid-dependency": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-4.0.2.tgz", - "integrity": "sha512-GatB4+2DTpgWPday+mnUkoumP54u/MDM/5u44KF9hIu8jF0uafZtQLcdfIKkIcUNuF/fBojpLEHZS/56JqPeXQ==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-4.0.3.tgz", + "integrity": "sha512-1Bo8Ur1ZGqxvwTqBmv6DZEn0rXtwJGeqiiO2/JFcCtz3nBakOqeXbJBElXJMMzd0ghe8+eB6Dkw98nMYctgizg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -7260,14 +7297,14 @@ } }, "node_modules/@aws-sdk/nested-clients/node_modules/@smithy/middleware-content-length": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-4.0.2.tgz", - "integrity": "sha512-hAfEXm1zU+ELvucxqQ7I8SszwQ4znWMbNv6PLMndN83JJN41EPuS93AIyh2N+gJ6x8QFhzSO6b7q2e6oClDI8A==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-4.0.3.tgz", + "integrity": "sha512-NE/Zph4BP5u16bzYq2csq9qD0T6UBLeg4AuNrwNJ7Gv9uLYaGEgelZUOdRndGdMGcUfSGvNlXGb2aA2hPCwJ6g==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/protocol-http": "^5.1.0", - "@smithy/types": "^4.2.0", + "@smithy/protocol-http": "^5.1.1", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -7275,19 +7312,19 @@ } }, "node_modules/@aws-sdk/nested-clients/node_modules/@smithy/middleware-endpoint": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.1.0.tgz", - "integrity": "sha512-xhLimgNCbCzsUppRTGXWkZywksuTThxaIB0HwbpsVLY5sceac4e1TZ/WKYqufQLaUy+gUSJGNdwD2jo3cXL0iA==", + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.1.7.tgz", + "integrity": "sha512-KDzM7Iajo6K7eIWNNtukykRT4eWwlHjCEsULZUaSfi/SRSBK8BPRqG5FsVfp58lUxcvre8GT8AIPIqndA0ERKw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/core": "^3.2.0", - "@smithy/middleware-serde": "^4.0.3", - "@smithy/node-config-provider": "^4.0.2", - "@smithy/shared-ini-file-loader": "^4.0.2", - "@smithy/types": "^4.2.0", - "@smithy/url-parser": "^4.0.2", - "@smithy/util-middleware": "^4.0.2", + "@smithy/core": "^3.4.0", + "@smithy/middleware-serde": "^4.0.6", + "@smithy/node-config-provider": "^4.1.2", + "@smithy/shared-ini-file-loader": "^4.0.3", + "@smithy/types": "^4.3.0", + "@smithy/url-parser": "^4.0.3", + "@smithy/util-middleware": "^4.0.3", "tslib": "^2.6.2" }, "engines": { @@ -7295,19 +7332,19 @@ } }, "node_modules/@aws-sdk/nested-clients/node_modules/@smithy/middleware-retry": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-4.1.0.tgz", - "integrity": "sha512-2zAagd1s6hAaI/ap6SXi5T3dDwBOczOMCSkkYzktqN1+tzbk1GAsHNAdo/1uzxz3Ky02jvZQwbi/vmDA6z4Oyg==", + "version": "4.1.8", + "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-4.1.8.tgz", + "integrity": "sha512-e2OtQgFzzlSG0uCjcJmi02QuFSRTrpT11Eh2EcqqDFy7DYriteHZJkkf+4AsxsrGDugAtPFcWBz1aq06sSX5fQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/node-config-provider": "^4.0.2", - "@smithy/protocol-http": "^5.1.0", - "@smithy/service-error-classification": "^4.0.2", - "@smithy/smithy-client": "^4.2.0", - "@smithy/types": "^4.2.0", - "@smithy/util-middleware": "^4.0.2", - "@smithy/util-retry": "^4.0.2", + "@smithy/node-config-provider": "^4.1.2", + "@smithy/protocol-http": "^5.1.1", + "@smithy/service-error-classification": "^4.0.4", + "@smithy/smithy-client": "^4.3.0", + "@smithy/types": "^4.3.0", + "@smithy/util-middleware": "^4.0.3", + "@smithy/util-retry": "^4.0.4", "tslib": "^2.6.2", "uuid": "^9.0.1" }, @@ -7316,13 +7353,14 @@ } }, "node_modules/@aws-sdk/nested-clients/node_modules/@smithy/middleware-serde": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.0.3.tgz", - "integrity": "sha512-rfgDVrgLEVMmMn0BI8O+8OVr6vXzjV7HZj57l0QxslhzbvVfikZbVfBVthjLHqib4BW44QhcIgJpvebHlRaC9A==", + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.0.6.tgz", + "integrity": "sha512-YECyl7uNII+jCr/9qEmCu8xYL79cU0fqjo0qxpcVIU18dAPHam/iYwcknAu4Jiyw1uN+sAx7/SMf/Kmef/Jjsg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/protocol-http": "^5.1.1", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -7330,13 +7368,13 @@ } }, "node_modules/@aws-sdk/nested-clients/node_modules/@smithy/middleware-stack": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-4.0.2.tgz", - "integrity": "sha512-eSPVcuJJGVYrFYu2hEq8g8WWdJav3sdrI4o2c6z/rjnYDd3xH9j9E7deZQCzFn4QvGPouLngH3dQ+QVTxv5bOQ==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-4.0.3.tgz", + "integrity": "sha512-baeV7t4jQfQtFxBADFmnhmqBmqR38dNU5cvEgHcMK/Kp3D3bEI0CouoX2Sr/rGuntR+Eg0IjXdxnGGTc6SbIkw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -7344,15 +7382,15 @@ } }, "node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-config-provider": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.0.2.tgz", - "integrity": "sha512-WgCkILRZfJwJ4Da92a6t3ozN/zcvYyJGUTmfGbgS/FkCcoCjl7G4FJaCDN1ySdvLvemnQeo25FdkyMSTSwulsw==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.1.2.tgz", + "integrity": "sha512-SUvNup8iU1v7fmM8XPk+27m36udmGCfSz+VZP5Gb0aJ3Ne0X28K/25gnsrg3X1rWlhcnhzNUUysKW/Ied46ivQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/property-provider": "^4.0.2", - "@smithy/shared-ini-file-loader": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/property-provider": "^4.0.3", + "@smithy/shared-ini-file-loader": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -7360,16 +7398,16 @@ } }, "node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.0.4.tgz", - "integrity": "sha512-/mdqabuAT3o/ihBGjL94PUbTSPSRJ0eeVTdgADzow0wRJ0rN4A27EOrtlK56MYiO1fDvlO3jVTCxQtQmK9dZ1g==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.0.5.tgz", + "integrity": "sha512-T7QglZC1vS7SPT44/1qSIAQEx5bFKb3LfO6zw/o4Xzt1eC5HNoH1TkS4lMYA9cWFbacUhx4hRl/blLun4EOCkg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/abort-controller": "^4.0.2", - "@smithy/protocol-http": "^5.1.0", - "@smithy/querystring-builder": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/abort-controller": "^4.0.3", + "@smithy/protocol-http": "^5.1.1", + "@smithy/querystring-builder": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -7377,13 +7415,13 @@ } }, "node_modules/@aws-sdk/nested-clients/node_modules/@smithy/protocol-http": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.0.tgz", - "integrity": "sha512-KxAOL1nUNw2JTYrtviRRjEnykIDhxc84qMBzxvu1MUfQfHTuBlCG7PA6EdVwqpJjH7glw7FqQoFxUJSyBQgu7g==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.1.tgz", + "integrity": "sha512-Vsay2mzq05DwNi9jK01yCFtfvu9HimmgC7a4HTs7lhX12Sx8aWsH0mfz6q/02yspSp+lOB+Q2HJwi4IV2GKz7A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -7391,13 +7429,13 @@ } }, "node_modules/@aws-sdk/nested-clients/node_modules/@smithy/querystring-builder": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.0.2.tgz", - "integrity": "sha512-NTOs0FwHw1vimmQM4ebh+wFQvOwkEf/kQL6bSM1Lock+Bv4I89B3hGYoUEPkmvYPkDKyp5UdXJYu+PoTQ3T31Q==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.0.3.tgz", + "integrity": "sha512-UUzIWMVfPmDZcOutk2/r1vURZqavvQW0OHvgsyNV0cKupChvqg+/NKPRMaMEe+i8tP96IthMFeZOZWpV+E4RAw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "@smithy/util-uri-escape": "^4.0.0", "tslib": "^2.6.2" }, @@ -7406,13 +7444,13 @@ } }, "node_modules/@aws-sdk/nested-clients/node_modules/@smithy/querystring-parser": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-4.0.2.tgz", - "integrity": "sha512-v6w8wnmZcVXjfVLjxw8qF7OwESD9wnpjp0Dqry/Pod0/5vcEA3qxCr+BhbOHlxS8O+29eLpT3aagxXGwIoEk7Q==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-4.0.3.tgz", + "integrity": "sha512-K5M4ZJQpFCblOJ5Oyw7diICpFg1qhhR47m2/5Ef1PhGE19RaIZf50tjYFrxa6usqcuXyTiFPGo4d1geZdH4YcQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -7420,26 +7458,26 @@ } }, "node_modules/@aws-sdk/nested-clients/node_modules/@smithy/service-error-classification": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-4.0.2.tgz", - "integrity": "sha512-LA86xeFpTKn270Hbkixqs5n73S+LVM0/VZco8dqd+JT75Dyx3Lcw/MraL7ybjmz786+160K8rPOmhsq0SocoJQ==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-4.0.4.tgz", + "integrity": "sha512-W5ScbQ1bTzgH91kNEE2CvOzM4gXlDOqdow4m8vMFSIXCel2scbHwjflpVNnC60Y3F1m5i7w2gQg9lSnR+JsJAA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0" + "@smithy/types": "^4.3.0" }, "engines": { "node": ">=18.0.0" } }, "node_modules/@aws-sdk/nested-clients/node_modules/@smithy/shared-ini-file-loader": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.0.2.tgz", - "integrity": "sha512-J9/gTWBGVuFZ01oVA6vdb4DAjf1XbDhK6sLsu3OS9qmLrS6KB5ygpeHiM3miIbj1qgSJ96GYszXFWv6ErJ8QEw==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.0.3.tgz", + "integrity": "sha512-vHwlrqhZGIoLwaH8vvIjpHnloShqdJ7SUPNM2EQtEox+yEDFTVQ7E+DLZ+6OhnYEgFUwPByJyz6UZaOu2tny6A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -7447,18 +7485,18 @@ } }, "node_modules/@aws-sdk/nested-clients/node_modules/@smithy/smithy-client": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.2.0.tgz", - "integrity": "sha512-Qs65/w30pWV7LSFAez9DKy0Koaoh3iHhpcpCCJ4waj/iqwsuSzJna2+vYwq46yBaqO5ZbP9TjUsATUNxrKeBdw==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.3.0.tgz", + "integrity": "sha512-DNsRA38pN6tYHUjebmwD9e4KcgqTLldYQb2gC6K+oxXYdCTxPn6wV9+FvOa6wrU2FQEnGJoi+3GULzOTKck/tg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/core": "^3.2.0", - "@smithy/middleware-endpoint": "^4.1.0", - "@smithy/middleware-stack": "^4.0.2", - "@smithy/protocol-http": "^5.1.0", - "@smithy/types": "^4.2.0", - "@smithy/util-stream": "^4.2.0", + "@smithy/core": "^3.4.0", + "@smithy/middleware-endpoint": "^4.1.7", + "@smithy/middleware-stack": "^4.0.3", + "@smithy/protocol-http": "^5.1.1", + "@smithy/types": "^4.3.0", + "@smithy/util-stream": "^4.2.1", "tslib": "^2.6.2" }, "engines": { @@ -7466,9 +7504,9 @@ } }, "node_modules/@aws-sdk/nested-clients/node_modules/@smithy/types": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.2.0.tgz", - "integrity": "sha512-7eMk09zQKCO+E/ivsjQv+fDlOupcFUCSC/L2YUPgwhvowVGWbPQHjEFcmjt7QQ4ra5lyowS92SV53Zc6XD4+fg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.3.0.tgz", + "integrity": "sha512-+1iaIQHthDh9yaLhRzaoQxRk+l9xlk+JjMFxGRhNLz+m9vKOkjNeU8QuB4w3xvzHyVR/BVlp/4AXDHjoRIkfgQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -7479,14 +7517,14 @@ } }, "node_modules/@aws-sdk/nested-clients/node_modules/@smithy/url-parser": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-4.0.2.tgz", - "integrity": "sha512-Bm8n3j2ScqnT+kJaClSVCMeiSenK6jVAzZCNewsYWuZtnBehEz4r2qP0riZySZVfzB+03XZHJeqfmJDkeeSLiQ==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-4.0.3.tgz", + "integrity": "sha512-n5/DnosDu/tweOqUUNtUbu7eRIR4J/Wz9nL7V5kFYQQVb8VYdj7a4G5NJHCw6o21ul7CvZoJkOpdTnsQDLT0tQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/querystring-parser": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/querystring-parser": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -7549,15 +7587,15 @@ } }, "node_modules/@aws-sdk/nested-clients/node_modules/@smithy/util-defaults-mode-browser": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-4.0.8.tgz", - "integrity": "sha512-ZTypzBra+lI/LfTYZeop9UjoJhhGRTg3pxrNpfSTQLd3AJ37r2z4AXTKpq1rFXiiUIJsYyFgNJdjWRGP/cbBaQ==", + "version": "4.0.15", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-4.0.15.tgz", + "integrity": "sha512-bJJ/B8owQbHAflatSq92f9OcV8858DJBQF1Y3GRjB8psLyUjbISywszYPFw16beREHO/C3I3taW4VGH+tOuwrQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/property-provider": "^4.0.2", - "@smithy/smithy-client": "^4.2.0", - "@smithy/types": "^4.2.0", + "@smithy/property-provider": "^4.0.3", + "@smithy/smithy-client": "^4.3.0", + "@smithy/types": "^4.3.0", "bowser": "^2.11.0", "tslib": "^2.6.2" }, @@ -7566,18 +7604,18 @@ } }, "node_modules/@aws-sdk/nested-clients/node_modules/@smithy/util-defaults-mode-node": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-4.0.8.tgz", - "integrity": "sha512-Rgk0Jc/UDfRTzVthye/k2dDsz5Xxs9LZaKCNPgJTRyoyBoeiNCnHsYGOyu1PKN+sDyPnJzMOz22JbwxzBp9NNA==", + "version": "4.0.15", + "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-4.0.15.tgz", + "integrity": "sha512-8CUrEW2Ni5q+NmYkj8wsgkfqoP7l4ZquptFbq92yQE66xevc4SxqP2zH6tMtN158kgBqBDsZ+qlrRwXWOjCR8A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/config-resolver": "^4.1.0", - "@smithy/credential-provider-imds": "^4.0.2", - "@smithy/node-config-provider": "^4.0.2", - "@smithy/property-provider": "^4.0.2", - "@smithy/smithy-client": "^4.2.0", - "@smithy/types": "^4.2.0", + "@smithy/config-resolver": "^4.1.3", + "@smithy/credential-provider-imds": "^4.0.5", + "@smithy/node-config-provider": "^4.1.2", + "@smithy/property-provider": "^4.0.3", + "@smithy/smithy-client": "^4.3.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -7585,14 +7623,14 @@ } }, "node_modules/@aws-sdk/nested-clients/node_modules/@smithy/util-retry": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-4.0.2.tgz", - "integrity": "sha512-Qryc+QG+7BCpvjloFLQrmlSd0RsVRHejRXd78jNO3+oREueCjwG1CCEH1vduw/ZkM1U9TztwIKVIi3+8MJScGg==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-4.0.4.tgz", + "integrity": "sha512-Aoqr9W2jDYGrI6OxljN8VmLDQIGO4VdMAUKMf9RGqLG8hn6or+K41NEy1Y5dtum9q8F7e0obYAuKl2mt/GnpZg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/service-error-classification": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/service-error-classification": "^4.0.4", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -7600,15 +7638,15 @@ } }, "node_modules/@aws-sdk/nested-clients/node_modules/@smithy/util-stream": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.2.0.tgz", - "integrity": "sha512-Vj1TtwWnuWqdgQI6YTUF5hQ/0jmFiOYsc51CSMgj7QfyO+RF4EnT2HNjoviNlOOmgzgvf3f5yno+EiC4vrnaWQ==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.2.1.tgz", + "integrity": "sha512-W3IR0x5DY6iVtjj5p902oNhD+Bz7vs5S+p6tppbPa509rV9BdeXZjGuRSCtVEad9FA0Mba+tNUtUmtnSI1nwUw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/fetch-http-handler": "^5.0.2", - "@smithy/node-http-handler": "^4.0.4", - "@smithy/types": "^4.2.0", + "@smithy/fetch-http-handler": "^5.0.3", + "@smithy/node-http-handler": "^4.0.5", + "@smithy/types": "^4.3.0", "@smithy/util-base64": "^4.0.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-hex-encoding": "^4.0.0", @@ -7675,14 +7713,14 @@ } }, "node_modules/@aws-sdk/region-config-resolver": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.775.0.tgz", - "integrity": "sha512-40iH3LJjrQS3LKUJAl7Wj0bln7RFPEvUYKFxtP8a+oKFDO0F65F52xZxIJbPn6sHkxWDAnZlGgdjZXM3p2g5wQ==", + "version": "3.808.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.808.0.tgz", + "integrity": "sha512-9x2QWfphkARZY5OGkl9dJxZlSlYM2l5inFeo2bKntGuwg4A4YUe5h7d5yJ6sZbam9h43eBrkOdumx03DAkQF9A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/types": "3.775.0", - "@smithy/node-config-provider": "^4.0.2", + "@aws-sdk/types": "3.804.0", + "@smithy/node-config-provider": "^4.1.1", "@smithy/types": "^4.2.0", "@smithy/util-config-provider": "^4.0.0", "@smithy/util-middleware": "^4.0.2", @@ -7693,9 +7731,9 @@ } }, "node_modules/@aws-sdk/region-config-resolver/node_modules/@aws-sdk/types": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.775.0.tgz", - "integrity": "sha512-ZoGKwa4C9fC9Av6bdfqcW6Ix5ot05F/S4VxWR2nHuMv7hzfmAjTOcUiWT7UR4hM/U0whf84VhDtXN/DWAk52KA==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.804.0.tgz", + "integrity": "sha512-A9qnsy9zQ8G89vrPPlNG9d1d8QcKRGqJKqwyGgS0dclJpwy6d1EWgQLIolKPl6vcFpLoe6avLOLxr+h8ur5wpg==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -7707,15 +7745,15 @@ } }, "node_modules/@aws-sdk/region-config-resolver/node_modules/@smithy/node-config-provider": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.0.2.tgz", - "integrity": "sha512-WgCkILRZfJwJ4Da92a6t3ozN/zcvYyJGUTmfGbgS/FkCcoCjl7G4FJaCDN1ySdvLvemnQeo25FdkyMSTSwulsw==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.1.2.tgz", + "integrity": "sha512-SUvNup8iU1v7fmM8XPk+27m36udmGCfSz+VZP5Gb0aJ3Ne0X28K/25gnsrg3X1rWlhcnhzNUUysKW/Ied46ivQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/property-provider": "^4.0.2", - "@smithy/shared-ini-file-loader": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/property-provider": "^4.0.3", + "@smithy/shared-ini-file-loader": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -7723,13 +7761,13 @@ } }, "node_modules/@aws-sdk/region-config-resolver/node_modules/@smithy/shared-ini-file-loader": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.0.2.tgz", - "integrity": "sha512-J9/gTWBGVuFZ01oVA6vdb4DAjf1XbDhK6sLsu3OS9qmLrS6KB5ygpeHiM3miIbj1qgSJ96GYszXFWv6ErJ8QEw==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.0.3.tgz", + "integrity": "sha512-vHwlrqhZGIoLwaH8vvIjpHnloShqdJ7SUPNM2EQtEox+yEDFTVQ7E+DLZ+6OhnYEgFUwPByJyz6UZaOu2tny6A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -7737,9 +7775,9 @@ } }, "node_modules/@aws-sdk/region-config-resolver/node_modules/@smithy/types": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.2.0.tgz", - "integrity": "sha512-7eMk09zQKCO+E/ivsjQv+fDlOupcFUCSC/L2YUPgwhvowVGWbPQHjEFcmjt7QQ4ra5lyowS92SV53Zc6XD4+fg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.3.0.tgz", + "integrity": "sha512-+1iaIQHthDh9yaLhRzaoQxRk+l9xlk+JjMFxGRhNLz+m9vKOkjNeU8QuB4w3xvzHyVR/BVlp/4AXDHjoRIkfgQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -7750,16 +7788,16 @@ } }, "node_modules/@aws-sdk/signature-v4-multi-region": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.775.0.tgz", - "integrity": "sha512-cnGk8GDfTMJ8p7+qSk92QlIk2bmTmFJqhYxcXZ9PysjZtx0xmfCMxnG3Hjy1oU2mt5boPCVSOptqtWixayM17g==", + "version": "3.816.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.816.0.tgz", + "integrity": "sha512-idcr9NW86sSIXASSej3423Selu6fxlhhJJtMgpAqoCH/HJh1eQrONJwNKuI9huiruPE8+02pwxuePvLW46X2mw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@aws-sdk/middleware-sdk-s3": "3.775.0", - "@aws-sdk/types": "3.775.0", + "@aws-sdk/middleware-sdk-s3": "3.816.0", + "@aws-sdk/types": "3.804.0", "@smithy/protocol-http": "^5.1.0", - "@smithy/signature-v4": "^5.0.2", + "@smithy/signature-v4": "^5.1.0", "@smithy/types": "^4.2.0", "tslib": "^2.6.2" }, @@ -7768,9 +7806,9 @@ } }, "node_modules/@aws-sdk/signature-v4-multi-region/node_modules/@aws-sdk/types": { - "version": "3.775.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.775.0.tgz", - "integrity": "sha512-ZoGKwa4C9fC9Av6bdfqcW6Ix5ot05F/S4VxWR2nHuMv7hzfmAjTOcUiWT7UR4hM/U0whf84VhDtXN/DWAk52KA==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.804.0.tgz", + "integrity": "sha512-A9qnsy9zQ8G89vrPPlNG9d1d8QcKRGqJKqwyGgS0dclJpwy6d1EWgQLIolKPl6vcFpLoe6avLOLxr+h8ur5wpg==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -7782,13 +7820,13 @@ } }, "node_modules/@aws-sdk/signature-v4-multi-region/node_modules/@smithy/protocol-http": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.0.tgz", - "integrity": "sha512-KxAOL1nUNw2JTYrtviRRjEnykIDhxc84qMBzxvu1MUfQfHTuBlCG7PA6EdVwqpJjH7glw7FqQoFxUJSyBQgu7g==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.1.tgz", + "integrity": "sha512-Vsay2mzq05DwNi9jK01yCFtfvu9HimmgC7a4HTs7lhX12Sx8aWsH0mfz6q/02yspSp+lOB+Q2HJwi4IV2GKz7A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -7796,9 +7834,9 @@ } }, "node_modules/@aws-sdk/signature-v4-multi-region/node_modules/@smithy/types": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.2.0.tgz", - "integrity": "sha512-7eMk09zQKCO+E/ivsjQv+fDlOupcFUCSC/L2YUPgwhvowVGWbPQHjEFcmjt7QQ4ra5lyowS92SV53Zc6XD4+fg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.3.0.tgz", + "integrity": "sha512-+1iaIQHthDh9yaLhRzaoQxRk+l9xlk+JjMFxGRhNLz+m9vKOkjNeU8QuB4w3xvzHyVR/BVlp/4AXDHjoRIkfgQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -7884,9 +7922,9 @@ } }, "node_modules/@aws-sdk/util-arn-parser": { - "version": "3.723.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.723.0.tgz", - "integrity": "sha512-ZhEfvUwNliOQROcAk34WJWVYTlTa4694kSVhDSjW6lE1bMataPnIN8A0ycukEzBXmd8ZSoBcQLn6lKGl7XIJ5w==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.804.0.tgz", + "integrity": "sha512-wmBJqn1DRXnZu3b4EkE6CWnoWMo1ZMvlfkqU5zPz67xx1GMaXlDCchFvKAXMjk4jn/L1O3tKnoFDNsoLV1kgNQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -7911,9 +7949,9 @@ } }, "node_modules/@aws-sdk/util-locate-window": { - "version": "3.723.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.723.0.tgz", - "integrity": "sha512-Yf2CS10BqK688DRsrKI/EO6B8ff5J86NXe4C+VCysK7UOgN0l1zOTeTukZ3H8Q9tYYX3oaF1961o8vRkFm7Nmw==", + "version": "3.804.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.804.0.tgz", + "integrity": "sha512-zVoRfpmBVPodYlnMjgVjfGoEZagyRF5IPn3Uo6ZvOZp24chnW/FRstH7ESDHDDRga4z3V+ElUQHKpFDXWyBW5A==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -7983,6 +8021,51 @@ "node": ">=14.0.0" } }, + "node_modules/@braintree/sanitize-url": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/@braintree/sanitize-url/-/sanitize-url-7.1.1.tgz", + "integrity": "sha512-i1L7noDNxtFyL5DmZafWy1wRVhGehQmzZaz1HiN5e7iylJMSZR7ekOV7NsIqa5qBldlLrsKv4HbgFUVlQrz8Mw==", + "license": "MIT" + }, + "node_modules/@chevrotain/cst-dts-gen": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/@chevrotain/cst-dts-gen/-/cst-dts-gen-11.0.3.tgz", + "integrity": "sha512-BvIKpRLeS/8UbfxXxgC33xOumsacaeCKAjAeLyOn7Pcp95HiRbrpl14S+9vaZLolnbssPIUuiUd8IvgkRyt6NQ==", + "license": "Apache-2.0", + "dependencies": { + "@chevrotain/gast": "11.0.3", + "@chevrotain/types": "11.0.3", + "lodash-es": "4.17.21" + } + }, + "node_modules/@chevrotain/gast": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/@chevrotain/gast/-/gast-11.0.3.tgz", + "integrity": "sha512-+qNfcoNk70PyS/uxmj3li5NiECO+2YKZZQMbmjTqRI3Qchu8Hig/Q9vgkHpI3alNjr7M+a2St5pw5w5F6NL5/Q==", + "license": "Apache-2.0", + "dependencies": { + "@chevrotain/types": "11.0.3", + "lodash-es": "4.17.21" + } + }, + "node_modules/@chevrotain/regexp-to-ast": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/@chevrotain/regexp-to-ast/-/regexp-to-ast-11.0.3.tgz", + "integrity": "sha512-1fMHaBZxLFvWI067AVbGJav1eRY7N8DDvYCTwGBiE/ytKBgP8azTdgyrKyWZ9Mfh09eHWb5PgTSO8wi7U824RA==", + "license": "Apache-2.0" + }, + "node_modules/@chevrotain/types": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/@chevrotain/types/-/types-11.0.3.tgz", + "integrity": "sha512-gsiM3G8b58kZC2HaWR50gu6Y1440cHiJ+i3JUvcp/35JchYejb2+5MVeJK0iKThYpAa/P2PYFV4hoi44HD+aHQ==", + "license": "Apache-2.0" + }, + "node_modules/@chevrotain/utils": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/@chevrotain/utils/-/utils-11.0.3.tgz", + "integrity": "sha512-YslZMgtJUyuMbZ+aKvfF3x1f5liK4mWNxghFRv7jqRR9C3R3fAOGTTKvxXDa2Y1s9zSbcpuO0cAxDYsc9SrXoQ==", + "license": "Apache-2.0" + }, "node_modules/@cloudflare/kv-asset-handler": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/@cloudflare/kv-asset-handler/-/kv-asset-handler-0.4.0.tgz", @@ -7997,14 +8080,14 @@ } }, "node_modules/@cloudflare/unenv-preset": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@cloudflare/unenv-preset/-/unenv-preset-2.3.1.tgz", - "integrity": "sha512-Xq57Qd+ADpt6hibcVBO0uLG9zzRgyRhfCUgBT9s+g3+3Ivg5zDyVgLFy40ES1VdNcu8rPNSivm9A+kGP5IVaPg==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/@cloudflare/unenv-preset/-/unenv-preset-2.3.2.tgz", + "integrity": "sha512-MtUgNl+QkQyhQvv5bbWP+BpBC1N0me4CHHuP2H4ktmOMKdB/6kkz/lo+zqiA4mEazb4y+1cwyNjVrQ2DWeE4mg==", "dev": true, "license": "MIT OR Apache-2.0", "peerDependencies": { - "unenv": "2.0.0-rc.15", - "workerd": "^1.20250320.0" + "unenv": "2.0.0-rc.17", + "workerd": "^1.20250508.0" }, "peerDependenciesMeta": { "workerd": { @@ -8013,9 +8096,9 @@ } }, "node_modules/@cloudflare/workerd-darwin-64": { - "version": "1.20250409.0", - "resolved": "https://registry.npmjs.org/@cloudflare/workerd-darwin-64/-/workerd-darwin-64-1.20250409.0.tgz", - "integrity": "sha512-smA9yq77xsdQ1NMLhFz3JZxMHGd01lg0bE+X3dTFmIUs+hHskJ+HJ/IkMFInkCCeEFlUkoL4yO7ilaU/fin/xA==", + "version": "1.20250508.0", + "resolved": "https://registry.npmjs.org/@cloudflare/workerd-darwin-64/-/workerd-darwin-64-1.20250508.0.tgz", + "integrity": "sha512-9x09MrA9Y5RQs3zqWvWns8xHgM2pVNXWpeJ+3hQYu4PrwPFZXtTD6b/iMmOnlYKzINlREq1RGeEybMFyWEUlUg==", "cpu": [ "x64" ], @@ -8030,9 +8113,9 @@ } }, "node_modules/@cloudflare/workerd-darwin-arm64": { - "version": "1.20250409.0", - "resolved": "https://registry.npmjs.org/@cloudflare/workerd-darwin-arm64/-/workerd-darwin-arm64-1.20250409.0.tgz", - "integrity": "sha512-oLVcf+Y5Qun8JHcy1VcR/YnbA5U2ne0czh3XNhDqdHZFK8+vKeC7MnVPX+kEqQA3+uLcMM1/FsIDU1U4Na0h1g==", + "version": "1.20250508.0", + "resolved": "https://registry.npmjs.org/@cloudflare/workerd-darwin-arm64/-/workerd-darwin-arm64-1.20250508.0.tgz", + "integrity": "sha512-0Ili+nE2LLRzYue/yPc1pepSyNNg6LxR3/ng/rlQzVQUxPXIXldHFkJ/ynsYwQnAcf6OxasSi/kbTm6yvDoSAQ==", "cpu": [ "arm64" ], @@ -8047,9 +8130,9 @@ } }, "node_modules/@cloudflare/workerd-linux-64": { - "version": "1.20250409.0", - "resolved": "https://registry.npmjs.org/@cloudflare/workerd-linux-64/-/workerd-linux-64-1.20250409.0.tgz", - "integrity": "sha512-D31B4kdC3a0RD5yfpdIa89//kGHbYsYihZmejm1k4S4NHOho3MUDHAEh4aHtafQNXbZdydGHlSyiVYjTdQ9ILQ==", + "version": "1.20250508.0", + "resolved": "https://registry.npmjs.org/@cloudflare/workerd-linux-64/-/workerd-linux-64-1.20250508.0.tgz", + "integrity": "sha512-5saVrZ3uVwYxvBa7BaonXjeqB6X0YF3ak05qvBaWcmZ3FNmnarMm2W8842cnbhnckDVBpB/iDo51Sy6Y7y1jcw==", "cpu": [ "x64" ], @@ -8064,9 +8147,9 @@ } }, "node_modules/@cloudflare/workerd-linux-arm64": { - "version": "1.20250409.0", - "resolved": "https://registry.npmjs.org/@cloudflare/workerd-linux-arm64/-/workerd-linux-arm64-1.20250409.0.tgz", - "integrity": "sha512-Sr59P0TREayil5OQ7kcbjuIn6L6OTSRLI91LKu0D8vi1hss2q9FUwBcwxg0+Yd/x+ty/x7IISiAK5QBkAMeITQ==", + "version": "1.20250508.0", + "resolved": "https://registry.npmjs.org/@cloudflare/workerd-linux-arm64/-/workerd-linux-arm64-1.20250508.0.tgz", + "integrity": "sha512-muQe1pkxRi3eaq1Q417xvfGd2SlktbLTzNhT5Yftsx8OecWrYuB8i4ttR6Nr5ER06bfEj0FqQjqJJhcp6wLLUQ==", "cpu": [ "arm64" ], @@ -8081,9 +8164,9 @@ } }, "node_modules/@cloudflare/workerd-windows-64": { - "version": "1.20250409.0", - "resolved": "https://registry.npmjs.org/@cloudflare/workerd-windows-64/-/workerd-windows-64-1.20250409.0.tgz", - "integrity": "sha512-dK9I8zBX5rR7MtaaP2AhICQTEw3PVzHcsltN8o46w7JsbYlMvFOj27FfYH5dhs3IahgmIfw2e572QXW2o/dbpg==", + "version": "1.20250508.0", + "resolved": "https://registry.npmjs.org/@cloudflare/workerd-windows-64/-/workerd-windows-64-1.20250508.0.tgz", + "integrity": "sha512-EJj8iTWFMqjgvZUxxNvzK7frA1JMFi3y/9eDIdZPL/OaQh3cmk5Lai5DCXsKYUxfooMBZWYTp53zOLrvuJI8VQ==", "cpu": [ "x64" ], @@ -8226,13 +8309,12 @@ } }, "node_modules/@esbuild/aix-ppc64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.24.2.tgz", - "integrity": "sha512-thpVCb/rhxE/BnMLQ7GReQLLN8q9qbHmI55F4489/ByVg2aQaQ6kbcLb6FHkocZzQhxc4gx0sCk0tJkKBFzDhA==", + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.4.tgz", + "integrity": "sha512-1VCICWypeQKhVbE9oW/sJaAmjLxhVqacdkvPLEjwlttjfwENRSClS8EjBz0KzRyFSCPDIkuXW34Je/vk7zdB7Q==", "cpu": [ "ppc64" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -8243,13 +8325,12 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.24.2.tgz", - "integrity": "sha512-tmwl4hJkCfNHwFB3nBa8z1Uy3ypZpxqxfTQOcHX+xRByyYgunVbZ9MzUUfb0RxaHIMnbHagwAxuTL+tnNM+1/Q==", + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.4.tgz", + "integrity": "sha512-QNdQEps7DfFwE3hXiU4BZeOV68HHzYwGd0Nthhd3uCkkEKK7/R6MTgM0P7H7FAs5pU/DIWsviMmEGxEoxIZ+ZQ==", "cpu": [ "arm" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -8260,13 +8341,12 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.24.2.tgz", - "integrity": "sha512-cNLgeqCqV8WxfcTIOeL4OAtSmL8JjcN6m09XIgro1Wi7cF4t/THaWEa7eL5CMoMBdjoHOTh/vwTO/o2TRXIyzg==", + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.4.tgz", + "integrity": "sha512-bBy69pgfhMGtCnwpC/x5QhfxAz/cBgQ9enbtwjf6V9lnPI/hMyT9iWpR1arm0l3kttTr4L0KSLpKmLp/ilKS9A==", "cpu": [ "arm64" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -8277,13 +8357,12 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.24.2.tgz", - "integrity": "sha512-B6Q0YQDqMx9D7rvIcsXfmJfvUYLoP722bgfBlO5cGvNVb5V/+Y7nhBE3mHV9OpxBf4eAS2S68KZztiPaWq4XYw==", + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.4.tgz", + "integrity": "sha512-TVhdVtQIFuVpIIR282btcGC2oGQoSfZfmBdTip2anCaVYcqWlZXGcdcKIUklfX2wj0JklNYgz39OBqh2cqXvcQ==", "cpu": [ "x64" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -8294,13 +8373,12 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.24.2.tgz", - "integrity": "sha512-kj3AnYWc+CekmZnS5IPu9D+HWtUI49hbnyqk0FLEJDbzCIQt7hg7ucF1SQAilhtYpIujfaHr6O0UHlzzSPdOeA==", + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.4.tgz", + "integrity": "sha512-Y1giCfM4nlHDWEfSckMzeWNdQS31BQGs9/rouw6Ub91tkK79aIMTH3q9xHvzH8d0wDru5Ci0kWB8b3up/nl16g==", "cpu": [ "arm64" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -8311,13 +8389,12 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.24.2.tgz", - "integrity": "sha512-WeSrmwwHaPkNR5H3yYfowhZcbriGqooyu3zI/3GGpF8AyUdsrrP0X6KumITGA9WOyiJavnGZUwPGvxvwfWPHIA==", + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.4.tgz", + "integrity": "sha512-CJsry8ZGM5VFVeyUYB3cdKpd/H69PYez4eJh1W/t38vzutdjEjtP7hB6eLKBoOdxcAlCtEYHzQ/PJ/oU9I4u0A==", "cpu": [ "x64" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -8328,13 +8405,12 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.24.2.tgz", - "integrity": "sha512-UN8HXjtJ0k/Mj6a9+5u6+2eZ2ERD7Edt1Q9IZiB5UZAIdPnVKDoG7mdTVGhHJIeEml60JteamR3qhsr1r8gXvg==", + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.4.tgz", + "integrity": "sha512-yYq+39NlTRzU2XmoPW4l5Ifpl9fqSk0nAJYM/V/WUGPEFfek1epLHJIkTQM6bBs1swApjO5nWgvr843g6TjxuQ==", "cpu": [ "arm64" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -8345,13 +8421,12 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.24.2.tgz", - "integrity": "sha512-TvW7wE/89PYW+IevEJXZ5sF6gJRDY/14hyIGFXdIucxCsbRmLUcjseQu1SyTko+2idmCw94TgyaEZi9HUSOe3Q==", + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.4.tgz", + "integrity": "sha512-0FgvOJ6UUMflsHSPLzdfDnnBBVoCDtBTVyn/MrWloUNvq/5SFmh13l3dvgRPkDihRxb77Y17MbqbCAa2strMQQ==", "cpu": [ "x64" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -8362,13 +8437,12 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.24.2.tgz", - "integrity": "sha512-n0WRM/gWIdU29J57hJyUdIsk0WarGd6To0s+Y+LwvlC55wt+GT/OgkwoXCXvIue1i1sSNWblHEig00GBWiJgfA==", + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.4.tgz", + "integrity": "sha512-kro4c0P85GMfFYqW4TWOpvmF8rFShbWGnrLqlzp4X1TNWjRY3JMYUfDCtOxPKOIY8B0WC8HN51hGP4I4hz4AaQ==", "cpu": [ "arm" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -8379,13 +8453,12 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.24.2.tgz", - "integrity": "sha512-7HnAD6074BW43YvvUmE/35Id9/NB7BeX5EoNkK9obndmZBUk8xmJJeU7DwmUeN7tkysslb2eSl6CTrYz6oEMQg==", + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.4.tgz", + "integrity": "sha512-+89UsQTfXdmjIvZS6nUnOOLoXnkUTB9hR5QAeLrQdzOSWZvNSAXAtcRDHWtqAUtAmv7ZM1WPOOeSxDzzzMogiQ==", "cpu": [ "arm64" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -8396,13 +8469,12 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.24.2.tgz", - "integrity": "sha512-sfv0tGPQhcZOgTKO3oBE9xpHuUqguHvSo4jl+wjnKwFpapx+vUDcawbwPNuBIAYdRAvIDBfZVvXprIj3HA+Ugw==", + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.4.tgz", + "integrity": "sha512-yTEjoapy8UP3rv8dB0ip3AfMpRbyhSN3+hY8mo/i4QXFeDxmiYbEKp3ZRjBKcOP862Ua4b1PDfwlvbuwY7hIGQ==", "cpu": [ "ia32" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -8413,13 +8485,12 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.24.2.tgz", - "integrity": "sha512-CN9AZr8kEndGooS35ntToZLTQLHEjtVB5n7dl8ZcTZMonJ7CCfStrYhrzF97eAecqVbVJ7APOEe18RPI4KLhwQ==", + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.4.tgz", + "integrity": "sha512-NeqqYkrcGzFwi6CGRGNMOjWGGSYOpqwCjS9fvaUlX5s3zwOtn1qwg1s2iE2svBe4Q/YOG1q6875lcAoQK/F4VA==", "cpu": [ "loong64" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -8430,13 +8501,12 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.24.2.tgz", - "integrity": "sha512-iMkk7qr/wl3exJATwkISxI7kTcmHKE+BlymIAbHO8xanq/TjHaaVThFF6ipWzPHryoFsesNQJPE/3wFJw4+huw==", + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.4.tgz", + "integrity": "sha512-IcvTlF9dtLrfL/M8WgNI/qJYBENP3ekgsHbYUIzEzq5XJzzVEV/fXY9WFPfEEXmu3ck2qJP8LG/p3Q8f7Zc2Xg==", "cpu": [ "mips64el" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -8447,13 +8517,12 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.24.2.tgz", - "integrity": "sha512-shsVrgCZ57Vr2L8mm39kO5PPIb+843FStGt7sGGoqiiWYconSxwTiuswC1VJZLCjNiMLAMh34jg4VSEQb+iEbw==", + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.4.tgz", + "integrity": "sha512-HOy0aLTJTVtoTeGZh4HSXaO6M95qu4k5lJcH4gxv56iaycfz1S8GO/5Jh6X4Y1YiI0h7cRyLi+HixMR+88swag==", "cpu": [ "ppc64" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -8464,13 +8533,12 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.24.2.tgz", - "integrity": "sha512-4eSFWnU9Hhd68fW16GD0TINewo1L6dRrB+oLNNbYyMUAeOD2yCK5KXGK1GH4qD/kT+bTEXjsyTCiJGHPZ3eM9Q==", + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.4.tgz", + "integrity": "sha512-i8JUDAufpz9jOzo4yIShCTcXzS07vEgWzyX3NH2G7LEFVgrLEhjwL3ajFE4fZI3I4ZgiM7JH3GQ7ReObROvSUA==", "cpu": [ "riscv64" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -8481,13 +8549,12 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.24.2.tgz", - "integrity": "sha512-S0Bh0A53b0YHL2XEXC20bHLuGMOhFDO6GN4b3YjRLK//Ep3ql3erpNcPlEFed93hsQAjAQDNsvcK+hV90FubSw==", + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.4.tgz", + "integrity": "sha512-jFnu+6UbLlzIjPQpWCNh5QtrcNfMLjgIavnwPQAfoGx4q17ocOU9MsQ2QVvFxwQoWpZT8DvTLooTvmOQXkO51g==", "cpu": [ "s390x" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -8498,13 +8565,12 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.24.2.tgz", - "integrity": "sha512-8Qi4nQcCTbLnK9WoMjdC9NiTG6/E38RNICU6sUNqK0QFxCYgoARqVqxdFmWkdonVsvGqWhmm7MO0jyTqLqwj0Q==", + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.4.tgz", + "integrity": "sha512-6e0cvXwzOnVWJHq+mskP8DNSrKBr1bULBvnFLpc1KY+d+irZSgZ02TGse5FsafKS5jg2e4pbvK6TPXaF/A6+CA==", "cpu": [ "x64" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -8515,13 +8581,12 @@ } }, "node_modules/@esbuild/netbsd-arm64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.24.2.tgz", - "integrity": "sha512-wuLK/VztRRpMt9zyHSazyCVdCXlpHkKm34WUyinD2lzK07FAHTq0KQvZZlXikNWkDGoT6x3TD51jKQ7gMVpopw==", + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.4.tgz", + "integrity": "sha512-vUnkBYxZW4hL/ie91hSqaSNjulOnYXE1VSLusnvHg2u3jewJBz3YzB9+oCw8DABeVqZGg94t9tyZFoHma8gWZQ==", "cpu": [ "arm64" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -8532,13 +8597,12 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.24.2.tgz", - "integrity": "sha512-VefFaQUc4FMmJuAxmIHgUmfNiLXY438XrL4GDNV1Y1H/RW3qow68xTwjZKfj/+Plp9NANmzbH5R40Meudu8mmw==", + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.4.tgz", + "integrity": "sha512-XAg8pIQn5CzhOB8odIcAm42QsOfa98SBeKUdo4xa8OvX8LbMZqEtgeWE9P/Wxt7MlG2QqvjGths+nq48TrUiKw==", "cpu": [ "x64" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -8549,13 +8613,12 @@ } }, "node_modules/@esbuild/openbsd-arm64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.24.2.tgz", - "integrity": "sha512-YQbi46SBct6iKnszhSvdluqDmxCJA+Pu280Av9WICNwQmMxV7nLRHZfjQzwbPs3jeWnuAhE9Jy0NrnJ12Oz+0A==", + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.4.tgz", + "integrity": "sha512-Ct2WcFEANlFDtp1nVAXSNBPDxyU+j7+tId//iHXU2f/lN5AmO4zLyhDcpR5Cz1r08mVxzt3Jpyt4PmXQ1O6+7A==", "cpu": [ "arm64" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -8566,13 +8629,12 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.24.2.tgz", - "integrity": "sha512-+iDS6zpNM6EnJyWv0bMGLWSWeXGN/HTaF/LXHXHwejGsVi+ooqDfMCCTerNFxEkM3wYVcExkeGXNqshc9iMaOA==", + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.4.tgz", + "integrity": "sha512-xAGGhyOQ9Otm1Xu8NT1ifGLnA6M3sJxZ6ixylb+vIUVzvvd6GOALpwQrYrtlPouMqd/vSbgehz6HaVk4+7Afhw==", "cpu": [ "x64" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -8583,13 +8645,12 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.24.2.tgz", - "integrity": "sha512-hTdsW27jcktEvpwNHJU4ZwWFGkz2zRJUz8pvddmXPtXDzVKTTINmlmga3ZzwcuMpUvLw7JkLy9QLKyGpD2Yxig==", + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.4.tgz", + "integrity": "sha512-Mw+tzy4pp6wZEK0+Lwr76pWLjrtjmJyUB23tHKqEDP74R3q95luY/bXqXZeYl4NYlvwOqoRKlInQialgCKy67Q==", "cpu": [ "x64" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -8600,13 +8661,12 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.24.2.tgz", - "integrity": "sha512-LihEQ2BBKVFLOC9ZItT9iFprsE9tqjDjnbulhHoFxYQtQfai7qfluVODIYxt1PgdoyQkz23+01rzwNwYfutxUQ==", + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.4.tgz", + "integrity": "sha512-AVUP428VQTSddguz9dO9ngb+E5aScyg7nOeJDrF1HPYu555gmza3bDGMPhmVXL8svDSoqPCsCPjb265yG/kLKQ==", "cpu": [ "arm64" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -8617,13 +8677,12 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.24.2.tgz", - "integrity": "sha512-q+iGUwfs8tncmFC9pcnD5IvRHAzmbwQ3GPS5/ceCyHdjXubwQWI12MKWSNSMYLJMq23/IUCvJMS76PDqXe1fxA==", + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.4.tgz", + "integrity": "sha512-i1sW+1i+oWvQzSgfRcxxG2k4I9n3O9NRqy8U+uugaT2Dy7kLO9Y7wI72haOahxceMX8hZAzgGou1FhndRldxRg==", "cpu": [ "ia32" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -8634,13 +8693,12 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.24.2.tgz", - "integrity": "sha512-7VTgWzgMGvup6aSqDPLiW5zHaxYJGTO4OokMjIlrCtf+VpEL+cXKtCvg723iguPYI5oaUNdS+/V7OU2gvXVWEg==", + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.4.tgz", + "integrity": "sha512-nOT2vZNw6hJ+z43oP1SPea/G/6AbN6X+bGNhNuq8NtRHy4wsMhw765IKLNmnjek7GvjWBYQ8Q5VBoYTFg9y1UQ==", "cpu": [ "x64" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -8808,6 +8866,40 @@ "dev": true, "license": "BSD-3-Clause" }, + "node_modules/@iconify/types": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@iconify/types/-/types-2.0.0.tgz", + "integrity": "sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==", + "license": "MIT" + }, + "node_modules/@iconify/utils": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@iconify/utils/-/utils-2.3.0.tgz", + "integrity": "sha512-GmQ78prtwYW6EtzXRU1rY+KwOKfz32PD7iJh6Iyqw68GiKuoZ2A6pRtzWONz5VQJbp50mEjXh/7NkumtrAgRKA==", + "license": "MIT", + "dependencies": { + "@antfu/install-pkg": "^1.0.0", + "@antfu/utils": "^8.1.0", + "@iconify/types": "^2.0.0", + "debug": "^4.4.0", + "globals": "^15.14.0", + "kolorist": "^1.8.0", + "local-pkg": "^1.0.0", + "mlly": "^1.7.4" + } + }, + "node_modules/@iconify/utils/node_modules/globals": { + "version": "15.15.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-15.15.0.tgz", + "integrity": "sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==", + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "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", @@ -9351,6 +9443,15 @@ "url": "https://opencollective.com/unified" } }, + "node_modules/@mermaid-js/parser": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@mermaid-js/parser/-/parser-0.4.0.tgz", + "integrity": "sha512-wla8XOWvQAwuqy+gxiZqY+c7FokraOTHRWMsbB4AgRx9Sy7zKslNyejy7E+a77qHfey5GXw/ik3IXv/NHMJgaA==", + "license": "MIT", + "dependencies": { + "langium": "3.3.1" + } + }, "node_modules/@next/env": { "version": "15.3.0", "resolved": "https://registry.npmjs.org/@next/env/-/env-15.3.0.tgz", @@ -9670,9 +9771,9 @@ } }, "node_modules/@opennextjs/aws": { - "version": "3.5.3", - "resolved": "https://pkg.pr.new/@opennextjs/aws@802", - "integrity": "sha512-TacOUxGJ3USkQ/Yb/hZQFob9kwqZZtfPyhLmXKofFhsi06LtrAohFUKPWqI0lB/Dhm9KTIFSdOIo+1Fp1vMj5Q==", + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/@opennextjs/aws/-/aws-3.6.2.tgz", + "integrity": "sha512-26/3GSoj7mKN7XpQFikYM2Lrwal5jlMc4fJO//QAdd5bCSnBaWBAkzr7+VvXAFVIC6eBeDLdtlWiQuUQVEAPZQ==", "dev": true, "license": "MIT", "dependencies": { @@ -9687,7 +9788,7 @@ "@tsconfig/node18": "^1.0.1", "aws4fetch": "^1.0.18", "chalk": "^5.3.0", - "esbuild": "0.19.2", + "esbuild": "0.25.4", "express": "5.0.1", "path-to-regexp": "^6.3.0", "urlpattern-polyfill": "^10.0.0", @@ -9697,577 +9798,166 @@ "open-next": "dist/index.js" } }, - "node_modules/@opennextjs/aws/node_modules/@esbuild/android-arm": { - "version": "0.19.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.2.tgz", - "integrity": "sha512-tM8yLeYVe7pRyAu9VMi/Q7aunpLwD139EY1S99xbQkT4/q2qa6eA4ige/WJQYdJ8GBL1K33pPFhPfPdJ/WzT8Q==", - "cpu": [ - "arm" - ], + "node_modules/@opennextjs/aws/node_modules/chalk": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.4.1.tgz", + "integrity": "sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "android" - ], "engines": { - "node": ">=12" + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@opennextjs/aws/node_modules/@esbuild/android-arm64": { - "version": "0.19.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.2.tgz", - "integrity": "sha512-lsB65vAbe90I/Qe10OjkmrdxSX4UJDjosDgb8sZUKcg3oefEuW2OT2Vozz8ef7wrJbMcmhvCC+hciF8jY/uAkw==", - "cpu": [ - "arm64" - ], + "node_modules/@opennextjs/cloudflare": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@opennextjs/cloudflare/-/cloudflare-1.0.4.tgz", + "integrity": "sha512-DVudGpOSJ91ruPiBJ0kuFmPhEQbXIXLTbvUjAx1OlbwFskG2gvdNIAmF3ZXV6z1VGDO7Q/u2W2ybMZLf7avlrA==", "dev": true, "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" + "dependencies": { + "@dotenvx/dotenvx": "1.31.0", + "@opennextjs/aws": "^3.6.2", + "enquirer": "^2.4.1", + "glob": "^11.0.0", + "ts-tqdm": "^0.8.6" + }, + "bin": { + "opennextjs-cloudflare": "dist/cli/index.js" + }, + "peerDependencies": { + "wrangler": "^4.14.0" } }, - "node_modules/@opennextjs/aws/node_modules/@esbuild/android-x64": { - "version": "0.19.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.2.tgz", - "integrity": "sha512-qK/TpmHt2M/Hg82WXHRc/W/2SGo/l1thtDHZWqFq7oi24AjZ4O/CpPSu6ZuYKFkEgmZlFoa7CooAyYmuvnaG8w==", - "cpu": [ - "x64" - ], + "node_modules/@opennextjs/cloudflare/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", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=12" + "dependencies": { + "balanced-match": "^1.0.0" } }, - "node_modules/@opennextjs/aws/node_modules/@esbuild/darwin-arm64": { - "version": "0.19.2", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.2.tgz", - "integrity": "sha512-Ora8JokrvrzEPEpZO18ZYXkH4asCdc1DLdcVy8TGf5eWtPO1Ie4WroEJzwI52ZGtpODy3+m0a2yEX9l+KUn0tA==", - "cpu": [ - "arm64" - ], + "node_modules/@opennextjs/cloudflare/node_modules/glob": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/glob/-/glob-11.0.1.tgz", + "integrity": "sha512-zrQDm8XPnYEKawJScsnM0QzobJxlT/kHOOlRTio8IH/GrmxRE5fjllkzdaHclIuNjUQTJYH2xHNIGfdpJkDJUw==", "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], + "license": "ISC", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^4.0.1", + "minimatch": "^10.0.0", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^2.0.0" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, "engines": { - "node": ">=12" + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@opennextjs/aws/node_modules/@esbuild/darwin-x64": { - "version": "0.19.2", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.2.tgz", - "integrity": "sha512-tP+B5UuIbbFMj2hQaUr6EALlHOIOmlLM2FK7jeFBobPy2ERdohI4Ka6ZFjZ1ZYsrHE/hZimGuU90jusRE0pwDw==", - "cpu": [ - "x64" - ], + "node_modules/@opennextjs/cloudflare/node_modules/minimatch": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.1.tgz", + "integrity": "sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==", "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, "engines": { - "node": ">=12" + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@opennextjs/aws/node_modules/@esbuild/freebsd-arm64": { - "version": "0.19.2", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.2.tgz", - "integrity": "sha512-YbPY2kc0acfzL1VPVK6EnAlig4f+l8xmq36OZkU0jzBVHcOTyQDhnKQaLzZudNJQyymd9OqQezeaBgkTGdTGeQ==", - "cpu": [ - "arm64" - ], + "node_modules/@opennextjs/cloudflare/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": "MIT", - "optional": true, - "os": [ - "freebsd" - ], + "license": "ISC", "engines": { - "node": ">=12" + "node": ">=16 || 14 >=14.17" } }, - "node_modules/@opennextjs/aws/node_modules/@esbuild/freebsd-x64": { - "version": "0.19.2", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.2.tgz", - "integrity": "sha512-nSO5uZT2clM6hosjWHAsS15hLrwCvIWx+b2e3lZ3MwbYSaXwvfO528OF+dLjas1g3bZonciivI8qKR/Hm7IWGw==", - "cpu": [ - "x64" - ], + "node_modules/@opennextjs/cloudflare/node_modules/path-scurry": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.0.tgz", + "integrity": "sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==", "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], + "license": "BlueOak-1.0.0", + "dependencies": { + "lru-cache": "^11.0.0", + "minipass": "^7.1.2" + }, "engines": { - "node": ">=12" + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/@opennextjs/aws/node_modules/@esbuild/linux-arm": { - "version": "0.19.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.2.tgz", - "integrity": "sha512-Odalh8hICg7SOD7XCj0YLpYCEc+6mkoq63UnExDCiRA2wXEmGlK5JVrW50vZR9Qz4qkvqnHcpH+OFEggO3PgTg==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], + "node_modules/@orama/orama": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/@orama/orama/-/orama-3.1.4.tgz", + "integrity": "sha512-7tTuIdkzgRscJ7sGHVsoK9GtXSpwbfrj3WYnuSu/SepXHhshYiQaOeXc/aeLh4MfgIre6tEs/caIop8wrhMi3g==", + "license": "Apache-2.0", "engines": { - "node": ">=12" + "node": ">= 16.0.0" } }, - "node_modules/@opennextjs/aws/node_modules/@esbuild/linux-arm64": { - "version": "0.19.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.2.tgz", - "integrity": "sha512-ig2P7GeG//zWlU0AggA3pV1h5gdix0MA3wgB+NsnBXViwiGgY77fuN9Wr5uoCrs2YzaYfogXgsWZbm+HGr09xg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } + "node_modules/@radix-ui/number": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@radix-ui/number/-/number-1.1.0.tgz", + "integrity": "sha512-V3gRzhVNU1ldS5XhAPTom1fOIo4ccrjjJgmE+LI2h/WaFpHmx0MQApT+KZHnx8abG6Avtfcz4WoEciMnpFT3HQ==", + "license": "MIT" }, - "node_modules/@opennextjs/aws/node_modules/@esbuild/linux-ia32": { - "version": "0.19.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.2.tgz", - "integrity": "sha512-mLfp0ziRPOLSTek0Gd9T5B8AtzKAkoZE70fneiiyPlSnUKKI4lp+mGEnQXcQEHLJAcIYDPSyBvsUbKUG2ri/XQ==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } + "node_modules/@radix-ui/primitive": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@radix-ui/primitive/-/primitive-1.1.1.tgz", + "integrity": "sha512-SJ31y+Q/zAyShtXJc8x83i9TYdbAfHZ++tUZnvjJJqFjzsdUnKsxPL6IEtBlxKkU7yzer//GQtZSV4GbldL3YA==", + "license": "MIT" }, - "node_modules/@opennextjs/aws/node_modules/@esbuild/linux-loong64": { - "version": "0.19.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.2.tgz", - "integrity": "sha512-hn28+JNDTxxCpnYjdDYVMNTR3SKavyLlCHHkufHV91fkewpIyQchS1d8wSbmXhs1fiYDpNww8KTFlJ1dHsxeSw==", - "cpu": [ - "loong64" - ], - "dev": true, + "node_modules/@radix-ui/react-accordion": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@radix-ui/react-accordion/-/react-accordion-1.2.3.tgz", + "integrity": "sha512-RIQ15mrcvqIkDARJeERSuXSry2N8uYnxkdDetpfmalT/+0ntOXLkFOsh9iwlAsCv+qcmhZjbdJogIm6WBa6c4A==", "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@opennextjs/aws/node_modules/@esbuild/linux-mips64el": { - "version": "0.19.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.2.tgz", - "integrity": "sha512-KbXaC0Sejt7vD2fEgPoIKb6nxkfYW9OmFUK9XQE4//PvGIxNIfPk1NmlHmMg6f25x57rpmEFrn1OotASYIAaTg==", - "cpu": [ - "mips64el" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@opennextjs/aws/node_modules/@esbuild/linux-ppc64": { - "version": "0.19.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.2.tgz", - "integrity": "sha512-dJ0kE8KTqbiHtA3Fc/zn7lCd7pqVr4JcT0JqOnbj4LLzYnp+7h8Qi4yjfq42ZlHfhOCM42rBh0EwHYLL6LEzcw==", - "cpu": [ - "ppc64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@opennextjs/aws/node_modules/@esbuild/linux-riscv64": { - "version": "0.19.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.2.tgz", - "integrity": "sha512-7Z/jKNFufZ/bbu4INqqCN6DDlrmOTmdw6D0gH+6Y7auok2r02Ur661qPuXidPOJ+FSgbEeQnnAGgsVynfLuOEw==", - "cpu": [ - "riscv64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@opennextjs/aws/node_modules/@esbuild/linux-s390x": { - "version": "0.19.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.2.tgz", - "integrity": "sha512-U+RinR6aXXABFCcAY4gSlv4CL1oOVvSSCdseQmGO66H+XyuQGZIUdhG56SZaDJQcLmrSfRmx5XZOWyCJPRqS7g==", - "cpu": [ - "s390x" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@opennextjs/aws/node_modules/@esbuild/linux-x64": { - "version": "0.19.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.2.tgz", - "integrity": "sha512-oxzHTEv6VPm3XXNaHPyUTTte+3wGv7qVQtqaZCrgstI16gCuhNOtBXLEBkBREP57YTd68P0VgDgG73jSD8bwXQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@opennextjs/aws/node_modules/@esbuild/netbsd-x64": { - "version": "0.19.2", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.2.tgz", - "integrity": "sha512-WNa5zZk1XpTTwMDompZmvQLHszDDDN7lYjEHCUmAGB83Bgs20EMs7ICD+oKeT6xt4phV4NDdSi/8OfjPbSbZfQ==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "netbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@opennextjs/aws/node_modules/@esbuild/openbsd-x64": { - "version": "0.19.2", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.2.tgz", - "integrity": "sha512-S6kI1aT3S++Dedb7vxIuUOb3oAxqxk2Rh5rOXOTYnzN8JzW1VzBd+IqPiSpgitu45042SYD3HCoEyhLKQcDFDw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@opennextjs/aws/node_modules/@esbuild/sunos-x64": { - "version": "0.19.2", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.2.tgz", - "integrity": "sha512-VXSSMsmb+Z8LbsQGcBMiM+fYObDNRm8p7tkUDMPG/g4fhFX5DEFmjxIEa3N8Zr96SjsJ1woAhF0DUnS3MF3ARw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@opennextjs/aws/node_modules/@esbuild/win32-arm64": { - "version": "0.19.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.2.tgz", - "integrity": "sha512-5NayUlSAyb5PQYFAU9x3bHdsqB88RC3aM9lKDAz4X1mo/EchMIT1Q+pSeBXNgkfNmRecLXA0O8xP+x8V+g/LKg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@opennextjs/aws/node_modules/@esbuild/win32-ia32": { - "version": "0.19.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.2.tgz", - "integrity": "sha512-47gL/ek1v36iN0wL9L4Q2MFdujR0poLZMJwhO2/N3gA89jgHp4MR8DKCmwYtGNksbfJb9JoTtbkoe6sDhg2QTA==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@opennextjs/aws/node_modules/@esbuild/win32-x64": { - "version": "0.19.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.2.tgz", - "integrity": "sha512-tcuhV7ncXBqbt/Ybf0IyrMcwVOAPDckMK9rXNHtF17UTK18OKLpg08glminN06pt2WCoALhXdLfSPbVvK/6fxw==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=12" - } - }, - "node_modules/@opennextjs/aws/node_modules/chalk": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.4.1.tgz", - "integrity": "sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.17.0 || ^14.13 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@opennextjs/aws/node_modules/esbuild": { - "version": "0.19.2", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.2.tgz", - "integrity": "sha512-G6hPax8UbFakEj3hWO0Vs52LQ8k3lnBhxZWomUJDxfz3rZTLqF5k/FCzuNdLx2RbpBiQQF9H9onlDDH1lZsnjg==", - "dev": true, - "hasInstallScript": true, - "license": "MIT", - "bin": { - "esbuild": "bin/esbuild" - }, - "engines": { - "node": ">=12" - }, - "optionalDependencies": { - "@esbuild/android-arm": "0.19.2", - "@esbuild/android-arm64": "0.19.2", - "@esbuild/android-x64": "0.19.2", - "@esbuild/darwin-arm64": "0.19.2", - "@esbuild/darwin-x64": "0.19.2", - "@esbuild/freebsd-arm64": "0.19.2", - "@esbuild/freebsd-x64": "0.19.2", - "@esbuild/linux-arm": "0.19.2", - "@esbuild/linux-arm64": "0.19.2", - "@esbuild/linux-ia32": "0.19.2", - "@esbuild/linux-loong64": "0.19.2", - "@esbuild/linux-mips64el": "0.19.2", - "@esbuild/linux-ppc64": "0.19.2", - "@esbuild/linux-riscv64": "0.19.2", - "@esbuild/linux-s390x": "0.19.2", - "@esbuild/linux-x64": "0.19.2", - "@esbuild/netbsd-x64": "0.19.2", - "@esbuild/openbsd-x64": "0.19.2", - "@esbuild/sunos-x64": "0.19.2", - "@esbuild/win32-arm64": "0.19.2", - "@esbuild/win32-ia32": "0.19.2", - "@esbuild/win32-x64": "0.19.2" - } - }, - "node_modules/@opennextjs/cloudflare": { - "version": "0.6.6", - "resolved": "https://registry.npmjs.org/@opennextjs/cloudflare/-/cloudflare-0.6.6.tgz", - "integrity": "sha512-amb1/ATvKmxnvIsmRUiSXXbrsdLxLGq/SApdIf9EOJr9WwyLBUaRyZ8t5xDgLSq9zkNCJuaT4jyqQ0zVR0mF0w==", - "dev": true, - "license": "MIT", - "dependencies": { - "@dotenvx/dotenvx": "1.31.0", - "@opennextjs/aws": "https://pkg.pr.new/@opennextjs/aws@802", - "enquirer": "^2.4.1", - "glob": "^11.0.0" - }, - "bin": { - "opennextjs-cloudflare": "dist/cli/index.js" - }, - "peerDependencies": { - "wrangler": "^3.114.1 || ^4.6.0" - } - }, - "node_modules/@opennextjs/cloudflare/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/@opennextjs/cloudflare/node_modules/glob": { - "version": "11.0.1", - "resolved": "https://registry.npmjs.org/glob/-/glob-11.0.1.tgz", - "integrity": "sha512-zrQDm8XPnYEKawJScsnM0QzobJxlT/kHOOlRTio8IH/GrmxRE5fjllkzdaHclIuNjUQTJYH2xHNIGfdpJkDJUw==", - "dev": true, - "license": "ISC", - "dependencies": { - "foreground-child": "^3.1.0", - "jackspeak": "^4.0.1", - "minimatch": "^10.0.0", - "minipass": "^7.1.2", - "package-json-from-dist": "^1.0.0", - "path-scurry": "^2.0.0" - }, - "bin": { - "glob": "dist/esm/bin.mjs" - }, - "engines": { - "node": "20 || >=22" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@opennextjs/cloudflare/node_modules/minimatch": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.1.tgz", - "integrity": "sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.1" - }, - "engines": { - "node": "20 || >=22" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@opennextjs/cloudflare/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/@opennextjs/cloudflare/node_modules/path-scurry": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.0.tgz", - "integrity": "sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==", - "dev": true, - "license": "BlueOak-1.0.0", - "dependencies": { - "lru-cache": "^11.0.0", - "minipass": "^7.1.2" - }, - "engines": { - "node": "20 || >=22" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@orama/orama": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/@orama/orama/-/orama-3.1.4.tgz", - "integrity": "sha512-7tTuIdkzgRscJ7sGHVsoK9GtXSpwbfrj3WYnuSu/SepXHhshYiQaOeXc/aeLh4MfgIre6tEs/caIop8wrhMi3g==", - "license": "Apache-2.0", - "engines": { - "node": ">= 16.0.0" - } - }, - "node_modules/@radix-ui/number": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@radix-ui/number/-/number-1.1.0.tgz", - "integrity": "sha512-V3gRzhVNU1ldS5XhAPTom1fOIo4ccrjjJgmE+LI2h/WaFpHmx0MQApT+KZHnx8abG6Avtfcz4WoEciMnpFT3HQ==", - "license": "MIT" - }, - "node_modules/@radix-ui/primitive": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@radix-ui/primitive/-/primitive-1.1.1.tgz", - "integrity": "sha512-SJ31y+Q/zAyShtXJc8x83i9TYdbAfHZ++tUZnvjJJqFjzsdUnKsxPL6IEtBlxKkU7yzer//GQtZSV4GbldL3YA==", - "license": "MIT" - }, - "node_modules/@radix-ui/react-accordion": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/@radix-ui/react-accordion/-/react-accordion-1.2.3.tgz", - "integrity": "sha512-RIQ15mrcvqIkDARJeERSuXSry2N8uYnxkdDetpfmalT/+0ntOXLkFOsh9iwlAsCv+qcmhZjbdJogIm6WBa6c4A==", - "license": "MIT", - "dependencies": { - "@radix-ui/primitive": "1.1.1", - "@radix-ui/react-collapsible": "1.1.3", - "@radix-ui/react-collection": "1.1.2", - "@radix-ui/react-compose-refs": "1.1.1", - "@radix-ui/react-context": "1.1.1", - "@radix-ui/react-direction": "1.1.0", - "@radix-ui/react-id": "1.1.0", - "@radix-ui/react-primitive": "2.0.2", - "@radix-ui/react-use-controllable-state": "1.1.0" - }, - "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 - } + "dependencies": { + "@radix-ui/primitive": "1.1.1", + "@radix-ui/react-collapsible": "1.1.3", + "@radix-ui/react-collection": "1.1.2", + "@radix-ui/react-compose-refs": "1.1.1", + "@radix-ui/react-context": "1.1.1", + "@radix-ui/react-direction": "1.1.0", + "@radix-ui/react-id": "1.1.0", + "@radix-ui/react-primitive": "2.0.2", + "@radix-ui/react-use-controllable-state": "1.1.0" + }, + "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 + } } }, "node_modules/@radix-ui/react-arrow": { @@ -11195,18 +10885,18 @@ } }, "node_modules/@smithy/core": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@smithy/core/-/core-3.2.0.tgz", - "integrity": "sha512-k17bgQhVZ7YmUvA8at4af1TDpl0NDMBuBKJl8Yg0nrefwmValU+CnA5l/AriVdQNthU/33H3nK71HrLgqOPr1Q==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/@smithy/core/-/core-3.4.0.tgz", + "integrity": "sha512-dDYISQo7k0Ml/rXlFIjkTmTcQze/LxhtIRAEmZ6HJ/EI0inVxVEVnrUXJ7jPx6ZP0GHUhFm40iQcCgS5apXIXA==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/middleware-serde": "^4.0.3", - "@smithy/protocol-http": "^5.1.0", - "@smithy/types": "^4.2.0", + "@smithy/middleware-serde": "^4.0.6", + "@smithy/protocol-http": "^5.1.1", + "@smithy/types": "^4.3.0", "@smithy/util-body-length-browser": "^4.0.0", - "@smithy/util-middleware": "^4.0.2", - "@smithy/util-stream": "^4.2.0", + "@smithy/util-middleware": "^4.0.3", + "@smithy/util-stream": "^4.2.1", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" }, @@ -11215,13 +10905,13 @@ } }, "node_modules/@smithy/core/node_modules/@smithy/abort-controller": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.0.2.tgz", - "integrity": "sha512-Sl/78VDtgqKxN2+1qduaVE140XF+Xg+TafkncspwM4jFP/LHr76ZHmIY/y3V1M0mMLNk+Je6IGbzxy23RSToMw==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.0.3.tgz", + "integrity": "sha512-AqXFf6DXnuRBXy4SoK/n1mfgHaKaq36bmkphmD1KO0nHq6xK/g9KHSW4HEsPQUBCGdIEfuJifGHwxFXPIFay9Q==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -11229,15 +10919,15 @@ } }, "node_modules/@smithy/core/node_modules/@smithy/fetch-http-handler": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.0.2.tgz", - "integrity": "sha512-+9Dz8sakS9pe7f2cBocpJXdeVjMopUDLgZs1yWeu7h++WqSbjUYv/JAJwKwXw1HV6gq1jyWjxuyn24E2GhoEcQ==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.0.3.tgz", + "integrity": "sha512-yBZwavI31roqTndNI7ONHqesfH01JmjJK6L3uUpZAhyAmr86LN5QiPzfyZGIxQmed8VEK2NRSQT3/JX5V1njfQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/protocol-http": "^5.1.0", - "@smithy/querystring-builder": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/protocol-http": "^5.1.1", + "@smithy/querystring-builder": "^4.0.3", + "@smithy/types": "^4.3.0", "@smithy/util-base64": "^4.0.0", "tslib": "^2.6.2" }, @@ -11246,13 +10936,14 @@ } }, "node_modules/@smithy/core/node_modules/@smithy/middleware-serde": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.0.3.tgz", - "integrity": "sha512-rfgDVrgLEVMmMn0BI8O+8OVr6vXzjV7HZj57l0QxslhzbvVfikZbVfBVthjLHqib4BW44QhcIgJpvebHlRaC9A==", + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.0.6.tgz", + "integrity": "sha512-YECyl7uNII+jCr/9qEmCu8xYL79cU0fqjo0qxpcVIU18dAPHam/iYwcknAu4Jiyw1uN+sAx7/SMf/Kmef/Jjsg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/protocol-http": "^5.1.1", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -11260,16 +10951,16 @@ } }, "node_modules/@smithy/core/node_modules/@smithy/node-http-handler": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.0.4.tgz", - "integrity": "sha512-/mdqabuAT3o/ihBGjL94PUbTSPSRJ0eeVTdgADzow0wRJ0rN4A27EOrtlK56MYiO1fDvlO3jVTCxQtQmK9dZ1g==", + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.0.5.tgz", + "integrity": "sha512-T7QglZC1vS7SPT44/1qSIAQEx5bFKb3LfO6zw/o4Xzt1eC5HNoH1TkS4lMYA9cWFbacUhx4hRl/blLun4EOCkg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/abort-controller": "^4.0.2", - "@smithy/protocol-http": "^5.1.0", - "@smithy/querystring-builder": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/abort-controller": "^4.0.3", + "@smithy/protocol-http": "^5.1.1", + "@smithy/querystring-builder": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -11277,13 +10968,13 @@ } }, "node_modules/@smithy/core/node_modules/@smithy/protocol-http": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.0.tgz", - "integrity": "sha512-KxAOL1nUNw2JTYrtviRRjEnykIDhxc84qMBzxvu1MUfQfHTuBlCG7PA6EdVwqpJjH7glw7FqQoFxUJSyBQgu7g==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.1.tgz", + "integrity": "sha512-Vsay2mzq05DwNi9jK01yCFtfvu9HimmgC7a4HTs7lhX12Sx8aWsH0mfz6q/02yspSp+lOB+Q2HJwi4IV2GKz7A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -11291,13 +10982,13 @@ } }, "node_modules/@smithy/core/node_modules/@smithy/querystring-builder": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.0.2.tgz", - "integrity": "sha512-NTOs0FwHw1vimmQM4ebh+wFQvOwkEf/kQL6bSM1Lock+Bv4I89B3hGYoUEPkmvYPkDKyp5UdXJYu+PoTQ3T31Q==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.0.3.tgz", + "integrity": "sha512-UUzIWMVfPmDZcOutk2/r1vURZqavvQW0OHvgsyNV0cKupChvqg+/NKPRMaMEe+i8tP96IthMFeZOZWpV+E4RAw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "@smithy/util-uri-escape": "^4.0.0", "tslib": "^2.6.2" }, @@ -11306,9 +10997,9 @@ } }, "node_modules/@smithy/core/node_modules/@smithy/types": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.2.0.tgz", - "integrity": "sha512-7eMk09zQKCO+E/ivsjQv+fDlOupcFUCSC/L2YUPgwhvowVGWbPQHjEFcmjt7QQ4ra5lyowS92SV53Zc6XD4+fg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.3.0.tgz", + "integrity": "sha512-+1iaIQHthDh9yaLhRzaoQxRk+l9xlk+JjMFxGRhNLz+m9vKOkjNeU8QuB4w3xvzHyVR/BVlp/4AXDHjoRIkfgQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -11361,15 +11052,15 @@ } }, "node_modules/@smithy/core/node_modules/@smithy/util-stream": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.2.0.tgz", - "integrity": "sha512-Vj1TtwWnuWqdgQI6YTUF5hQ/0jmFiOYsc51CSMgj7QfyO+RF4EnT2HNjoviNlOOmgzgvf3f5yno+EiC4vrnaWQ==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.2.1.tgz", + "integrity": "sha512-W3IR0x5DY6iVtjj5p902oNhD+Bz7vs5S+p6tppbPa509rV9BdeXZjGuRSCtVEad9FA0Mba+tNUtUmtnSI1nwUw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/fetch-http-handler": "^5.0.2", - "@smithy/node-http-handler": "^4.0.4", - "@smithy/types": "^4.2.0", + "@smithy/fetch-http-handler": "^5.0.3", + "@smithy/node-http-handler": "^4.0.5", + "@smithy/types": "^4.3.0", "@smithy/util-base64": "^4.0.0", "@smithy/util-buffer-from": "^4.0.0", "@smithy/util-hex-encoding": "^4.0.0", @@ -11439,14 +11130,14 @@ } }, "node_modules/@smithy/eventstream-codec": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-codec/-/eventstream-codec-4.0.2.tgz", - "integrity": "sha512-p+f2kLSK7ZrXVfskU/f5dzksKTewZk8pJLPvER3aFHPt76C2MxD9vNatSfLzzQSQB4FNO96RK4PSXfhD1TTeMQ==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-codec/-/eventstream-codec-4.0.3.tgz", + "integrity": "sha512-V22KIPXZsE2mc4zEgYGANM/7UbL9jWlOACEolyGyMuTY+jjHJ2PQ0FdopOTS1CS7u6PlAkALmypkv2oQ4aftcg==", "dev": true, "license": "Apache-2.0", "dependencies": { "@aws-crypto/crc32": "5.2.0", - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "@smithy/util-hex-encoding": "^4.0.0", "tslib": "^2.6.2" }, @@ -11455,9 +11146,9 @@ } }, "node_modules/@smithy/eventstream-codec/node_modules/@smithy/types": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.2.0.tgz", - "integrity": "sha512-7eMk09zQKCO+E/ivsjQv+fDlOupcFUCSC/L2YUPgwhvowVGWbPQHjEFcmjt7QQ4ra5lyowS92SV53Zc6XD4+fg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.3.0.tgz", + "integrity": "sha512-+1iaIQHthDh9yaLhRzaoQxRk+l9xlk+JjMFxGRhNLz+m9vKOkjNeU8QuB4w3xvzHyVR/BVlp/4AXDHjoRIkfgQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -11468,14 +11159,14 @@ } }, "node_modules/@smithy/eventstream-serde-browser": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-browser/-/eventstream-serde-browser-4.0.2.tgz", - "integrity": "sha512-CepZCDs2xgVUtH7ZZ7oDdZFH8e6Y2zOv8iiX6RhndH69nlojCALSKK+OXwZUgOtUZEUaZ5e1hULVCHYbCn7pug==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-browser/-/eventstream-serde-browser-4.0.3.tgz", + "integrity": "sha512-oe1d/tfCGVZBMX8O6HApaM4G+fF9JNdyLP7tWXt00epuL/kLOdp/4o9VqheLFeJaXgao+9IaBgs/q/oM48hxzg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/eventstream-serde-universal": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/eventstream-serde-universal": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -11483,9 +11174,9 @@ } }, "node_modules/@smithy/eventstream-serde-browser/node_modules/@smithy/types": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.2.0.tgz", - "integrity": "sha512-7eMk09zQKCO+E/ivsjQv+fDlOupcFUCSC/L2YUPgwhvowVGWbPQHjEFcmjt7QQ4ra5lyowS92SV53Zc6XD4+fg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.3.0.tgz", + "integrity": "sha512-+1iaIQHthDh9yaLhRzaoQxRk+l9xlk+JjMFxGRhNLz+m9vKOkjNeU8QuB4w3xvzHyVR/BVlp/4AXDHjoRIkfgQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -11496,13 +11187,13 @@ } }, "node_modules/@smithy/eventstream-serde-config-resolver": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-4.1.0.tgz", - "integrity": "sha512-1PI+WPZ5TWXrfj3CIoKyUycYynYJgZjuQo8U+sphneOtjsgrttYybdqESFReQrdWJ+LKt6NEdbYzmmfDBmjX2A==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-4.1.1.tgz", + "integrity": "sha512-XXCPGjRNwpFWHKQJMKIjGLfFKYULYckFnxGcWmBC2mBf3NsrvUKgqHax4NCqc0TfbDAimPDHOc6HOKtzsXK9Gw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -11510,9 +11201,9 @@ } }, "node_modules/@smithy/eventstream-serde-config-resolver/node_modules/@smithy/types": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.2.0.tgz", - "integrity": "sha512-7eMk09zQKCO+E/ivsjQv+fDlOupcFUCSC/L2YUPgwhvowVGWbPQHjEFcmjt7QQ4ra5lyowS92SV53Zc6XD4+fg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.3.0.tgz", + "integrity": "sha512-+1iaIQHthDh9yaLhRzaoQxRk+l9xlk+JjMFxGRhNLz+m9vKOkjNeU8QuB4w3xvzHyVR/BVlp/4AXDHjoRIkfgQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -11523,14 +11214,14 @@ } }, "node_modules/@smithy/eventstream-serde-node": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-node/-/eventstream-serde-node-4.0.2.tgz", - "integrity": "sha512-C5bJ/C6x9ENPMx2cFOirspnF9ZsBVnBMtP6BdPl/qYSuUawdGQ34Lq0dMcf42QTjUZgWGbUIZnz6+zLxJlb9aw==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-node/-/eventstream-serde-node-4.0.3.tgz", + "integrity": "sha512-HOEbRmm9TrikCoFrypYu0J/gC4Lsk8gl5LtOz1G3laD2Jy44+ht2Pd2E9qjNQfhMJIzKDZ/gbuUH0s0v4kWQ0A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/eventstream-serde-universal": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/eventstream-serde-universal": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -11538,9 +11229,9 @@ } }, "node_modules/@smithy/eventstream-serde-node/node_modules/@smithy/types": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.2.0.tgz", - "integrity": "sha512-7eMk09zQKCO+E/ivsjQv+fDlOupcFUCSC/L2YUPgwhvowVGWbPQHjEFcmjt7QQ4ra5lyowS92SV53Zc6XD4+fg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.3.0.tgz", + "integrity": "sha512-+1iaIQHthDh9yaLhRzaoQxRk+l9xlk+JjMFxGRhNLz+m9vKOkjNeU8QuB4w3xvzHyVR/BVlp/4AXDHjoRIkfgQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -11551,14 +11242,14 @@ } }, "node_modules/@smithy/eventstream-serde-universal": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-universal/-/eventstream-serde-universal-4.0.2.tgz", - "integrity": "sha512-St8h9JqzvnbB52FtckiHPN4U/cnXcarMniXRXTKn0r4b4XesZOGiAyUdj1aXbqqn1icSqBlzzUsCl6nPB018ng==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/eventstream-serde-universal/-/eventstream-serde-universal-4.0.3.tgz", + "integrity": "sha512-ShOP512CZrYI9n+h64PJ84udzoNHUQtPddyh1j175KNTKsSnMEDNscOWJWyEoLQiuhWWw51lSa+k6ea9ZGXcRg==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/eventstream-codec": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/eventstream-codec": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -11566,9 +11257,9 @@ } }, "node_modules/@smithy/eventstream-serde-universal/node_modules/@smithy/types": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.2.0.tgz", - "integrity": "sha512-7eMk09zQKCO+E/ivsjQv+fDlOupcFUCSC/L2YUPgwhvowVGWbPQHjEFcmjt7QQ4ra5lyowS92SV53Zc6XD4+fg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.3.0.tgz", + "integrity": "sha512-+1iaIQHthDh9yaLhRzaoQxRk+l9xlk+JjMFxGRhNLz+m9vKOkjNeU8QuB4w3xvzHyVR/BVlp/4AXDHjoRIkfgQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -11607,15 +11298,15 @@ } }, "node_modules/@smithy/hash-blob-browser": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/hash-blob-browser/-/hash-blob-browser-4.0.2.tgz", - "integrity": "sha512-3g188Z3DyhtzfBRxpZjU8R9PpOQuYsbNnyStc/ZVS+9nVX1f6XeNOa9IrAh35HwwIZg+XWk8bFVtNINVscBP+g==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/hash-blob-browser/-/hash-blob-browser-4.0.3.tgz", + "integrity": "sha512-37wZYU/XI2cOF4hgNDNMzZNAuNtJTkZFWxcpagQrnf6PYU/6sJ6y5Ey9Bp4vzi9nteex/ImxAugfsF3XGLrqWA==", "dev": true, "license": "Apache-2.0", "dependencies": { "@smithy/chunked-blob-reader": "^5.0.0", "@smithy/chunked-blob-reader-native": "^4.0.0", - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -11623,9 +11314,9 @@ } }, "node_modules/@smithy/hash-blob-browser/node_modules/@smithy/types": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.2.0.tgz", - "integrity": "sha512-7eMk09zQKCO+E/ivsjQv+fDlOupcFUCSC/L2YUPgwhvowVGWbPQHjEFcmjt7QQ4ra5lyowS92SV53Zc6XD4+fg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.3.0.tgz", + "integrity": "sha512-+1iaIQHthDh9yaLhRzaoQxRk+l9xlk+JjMFxGRhNLz+m9vKOkjNeU8QuB4w3xvzHyVR/BVlp/4AXDHjoRIkfgQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -11652,13 +11343,13 @@ } }, "node_modules/@smithy/hash-stream-node": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/hash-stream-node/-/hash-stream-node-4.0.2.tgz", - "integrity": "sha512-POWDuTznzbIwlEXEvvXoPMS10y0WKXK790soe57tFRfvf4zBHyzE529HpZMqmDdwG9MfFflnyzndUQ8j78ZdSg==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/hash-stream-node/-/hash-stream-node-4.0.3.tgz", + "integrity": "sha512-CAwAvztwGYHHZGGcXtbinNxytaj5FNZChz8V+o7eNUAi5BgVqnF91Z3cJSmaE9O7FYUQVrIzGAB25Aok9T5KHQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" }, @@ -11667,9 +11358,9 @@ } }, "node_modules/@smithy/hash-stream-node/node_modules/@smithy/types": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.2.0.tgz", - "integrity": "sha512-7eMk09zQKCO+E/ivsjQv+fDlOupcFUCSC/L2YUPgwhvowVGWbPQHjEFcmjt7QQ4ra5lyowS92SV53Zc6XD4+fg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.3.0.tgz", + "integrity": "sha512-+1iaIQHthDh9yaLhRzaoQxRk+l9xlk+JjMFxGRhNLz+m9vKOkjNeU8QuB4w3xvzHyVR/BVlp/4AXDHjoRIkfgQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -11732,13 +11423,13 @@ } }, "node_modules/@smithy/md5-js": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/md5-js/-/md5-js-4.0.2.tgz", - "integrity": "sha512-Hc0R8EiuVunUewCse2syVgA2AfSRco3LyAv07B/zCOMa+jpXI9ll+Q21Nc6FAlYPcpNcAXqBzMhNs1CD/pP2bA==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/md5-js/-/md5-js-4.0.3.tgz", + "integrity": "sha512-m95Z+1UJFPq4cv/R6TPMLYkoau7cNJYA5GLuuUJjfmF+Zrad4yaupIWeGGzIinf8pD1L+CIAxjh8eowPvyL7Dw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" }, @@ -11747,9 +11438,9 @@ } }, "node_modules/@smithy/md5-js/node_modules/@smithy/types": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.2.0.tgz", - "integrity": "sha512-7eMk09zQKCO+E/ivsjQv+fDlOupcFUCSC/L2YUPgwhvowVGWbPQHjEFcmjt7QQ4ra5lyowS92SV53Zc6XD4+fg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.3.0.tgz", + "integrity": "sha512-+1iaIQHthDh9yaLhRzaoQxRk+l9xlk+JjMFxGRhNLz+m9vKOkjNeU8QuB4w3xvzHyVR/BVlp/4AXDHjoRIkfgQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -11988,13 +11679,13 @@ } }, "node_modules/@smithy/property-provider": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-4.0.2.tgz", - "integrity": "sha512-wNRoQC1uISOuNc2s4hkOYwYllmiyrvVXWMtq+TysNRVQaHm4yoafYQyjN/goYZS+QbYlPIbb/QRjaUZMuzwQ7A==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-4.0.3.tgz", + "integrity": "sha512-Wcn17QNdawJZcZZPBuMuzyBENVi1AXl4TdE0jvzo4vWX2x5df/oMlmr/9M5XAAC6+yae4kWZlOYIsNsgDrMU9A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -12002,9 +11693,9 @@ } }, "node_modules/@smithy/property-provider/node_modules/@smithy/types": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.2.0.tgz", - "integrity": "sha512-7eMk09zQKCO+E/ivsjQv+fDlOupcFUCSC/L2YUPgwhvowVGWbPQHjEFcmjt7QQ4ra5lyowS92SV53Zc6XD4+fg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.3.0.tgz", + "integrity": "sha512-+1iaIQHthDh9yaLhRzaoQxRk+l9xlk+JjMFxGRhNLz+m9vKOkjNeU8QuB4w3xvzHyVR/BVlp/4AXDHjoRIkfgQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -12085,17 +11776,17 @@ } }, "node_modules/@smithy/signature-v4": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-5.0.2.tgz", - "integrity": "sha512-Mz+mc7okA73Lyz8zQKJNyr7lIcHLiPYp0+oiqiMNc/t7/Kf2BENs5d63pEj7oPqdjaum6g0Fc8wC78dY1TgtXw==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-5.1.1.tgz", + "integrity": "sha512-zy8Repr5zvT0ja+Tf5wjV/Ba6vRrhdiDcp/ww6cvqYbSEudIkziDe3uppNRlFoCViyJXdPnLcwyZdDLA4CHzSg==", "dev": true, "license": "Apache-2.0", "dependencies": { "@smithy/is-array-buffer": "^4.0.0", - "@smithy/protocol-http": "^5.1.0", - "@smithy/types": "^4.2.0", + "@smithy/protocol-http": "^5.1.1", + "@smithy/types": "^4.3.0", "@smithy/util-hex-encoding": "^4.0.0", - "@smithy/util-middleware": "^4.0.2", + "@smithy/util-middleware": "^4.0.3", "@smithy/util-uri-escape": "^4.0.0", "@smithy/util-utf8": "^4.0.0", "tslib": "^2.6.2" @@ -12105,13 +11796,13 @@ } }, "node_modules/@smithy/signature-v4/node_modules/@smithy/protocol-http": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.0.tgz", - "integrity": "sha512-KxAOL1nUNw2JTYrtviRRjEnykIDhxc84qMBzxvu1MUfQfHTuBlCG7PA6EdVwqpJjH7glw7FqQoFxUJSyBQgu7g==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.1.1.tgz", + "integrity": "sha512-Vsay2mzq05DwNi9jK01yCFtfvu9HimmgC7a4HTs7lhX12Sx8aWsH0mfz6q/02yspSp+lOB+Q2HJwi4IV2GKz7A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -12119,9 +11810,9 @@ } }, "node_modules/@smithy/signature-v4/node_modules/@smithy/types": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.2.0.tgz", - "integrity": "sha512-7eMk09zQKCO+E/ivsjQv+fDlOupcFUCSC/L2YUPgwhvowVGWbPQHjEFcmjt7QQ4ra5lyowS92SV53Zc6XD4+fg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.3.0.tgz", + "integrity": "sha512-+1iaIQHthDh9yaLhRzaoQxRk+l9xlk+JjMFxGRhNLz+m9vKOkjNeU8QuB4w3xvzHyVR/BVlp/4AXDHjoRIkfgQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -12372,14 +12063,14 @@ } }, "node_modules/@smithy/util-endpoints": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-3.0.2.tgz", - "integrity": "sha512-6QSutU5ZyrpNbnd51zRTL7goojlcnuOB55+F9VBD+j8JpRY50IGamsjlycrmpn8PQkmJucFW8A0LSfXj7jjtLQ==", + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-3.0.5.tgz", + "integrity": "sha512-PjDpqLk24/vAl340tmtCA++Q01GRRNH9cwL9qh46NspAX9S+IQVcK+GOzPt0GLJ6KYGyn8uOgo2kvJhiThclJw==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/node-config-provider": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/node-config-provider": "^4.1.2", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -12387,15 +12078,15 @@ } }, "node_modules/@smithy/util-endpoints/node_modules/@smithy/node-config-provider": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.0.2.tgz", - "integrity": "sha512-WgCkILRZfJwJ4Da92a6t3ozN/zcvYyJGUTmfGbgS/FkCcoCjl7G4FJaCDN1ySdvLvemnQeo25FdkyMSTSwulsw==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.1.2.tgz", + "integrity": "sha512-SUvNup8iU1v7fmM8XPk+27m36udmGCfSz+VZP5Gb0aJ3Ne0X28K/25gnsrg3X1rWlhcnhzNUUysKW/Ied46ivQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/property-provider": "^4.0.2", - "@smithy/shared-ini-file-loader": "^4.0.2", - "@smithy/types": "^4.2.0", + "@smithy/property-provider": "^4.0.3", + "@smithy/shared-ini-file-loader": "^4.0.3", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -12403,13 +12094,13 @@ } }, "node_modules/@smithy/util-endpoints/node_modules/@smithy/shared-ini-file-loader": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.0.2.tgz", - "integrity": "sha512-J9/gTWBGVuFZ01oVA6vdb4DAjf1XbDhK6sLsu3OS9qmLrS6KB5ygpeHiM3miIbj1qgSJ96GYszXFWv6ErJ8QEw==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.0.3.tgz", + "integrity": "sha512-vHwlrqhZGIoLwaH8vvIjpHnloShqdJ7SUPNM2EQtEox+yEDFTVQ7E+DLZ+6OhnYEgFUwPByJyz6UZaOu2tny6A==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -12417,9 +12108,9 @@ } }, "node_modules/@smithy/util-endpoints/node_modules/@smithy/types": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.2.0.tgz", - "integrity": "sha512-7eMk09zQKCO+E/ivsjQv+fDlOupcFUCSC/L2YUPgwhvowVGWbPQHjEFcmjt7QQ4ra5lyowS92SV53Zc6XD4+fg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.3.0.tgz", + "integrity": "sha512-+1iaIQHthDh9yaLhRzaoQxRk+l9xlk+JjMFxGRhNLz+m9vKOkjNeU8QuB4w3xvzHyVR/BVlp/4AXDHjoRIkfgQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -12443,13 +12134,13 @@ } }, "node_modules/@smithy/util-middleware": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-4.0.2.tgz", - "integrity": "sha512-6GDamTGLuBQVAEuQ4yDQ+ti/YINf/MEmIegrEeg7DdB/sld8BX1lqt9RRuIcABOhAGTA50bRbPzErez7SlDtDQ==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-4.0.3.tgz", + "integrity": "sha512-iIsC6qZXxkD7V3BzTw3b1uK8RVC1M8WvwNxK1PKrH9FnxntCd30CSunXjL/8iJBE8Z0J14r2P69njwIpRG4FBQ==", "dev": true, "license": "Apache-2.0", "dependencies": { - "@smithy/types": "^4.2.0", + "@smithy/types": "^4.3.0", "tslib": "^2.6.2" }, "engines": { @@ -12457,9 +12148,9 @@ } }, "node_modules/@smithy/util-middleware/node_modules/@smithy/types": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.2.0.tgz", - "integrity": "sha512-7eMk09zQKCO+E/ivsjQv+fDlOupcFUCSC/L2YUPgwhvowVGWbPQHjEFcmjt7QQ4ra5lyowS92SV53Zc6XD4+fg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.3.0.tgz", + "integrity": "sha512-+1iaIQHthDh9yaLhRzaoQxRk+l9xlk+JjMFxGRhNLz+m9vKOkjNeU8QuB4w3xvzHyVR/BVlp/4AXDHjoRIkfgQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -12833,6 +12524,259 @@ "@types/estree": "*" } }, + "node_modules/@types/d3": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/@types/d3/-/d3-7.4.3.tgz", + "integrity": "sha512-lZXZ9ckh5R8uiFVt8ogUNf+pIrK4EsWrx2Np75WvF/eTpJ0FMHNhjXk8CKEx/+gpHbNQyJWehbFaTvqmHWB3ww==", + "license": "MIT", + "dependencies": { + "@types/d3-array": "*", + "@types/d3-axis": "*", + "@types/d3-brush": "*", + "@types/d3-chord": "*", + "@types/d3-color": "*", + "@types/d3-contour": "*", + "@types/d3-delaunay": "*", + "@types/d3-dispatch": "*", + "@types/d3-drag": "*", + "@types/d3-dsv": "*", + "@types/d3-ease": "*", + "@types/d3-fetch": "*", + "@types/d3-force": "*", + "@types/d3-format": "*", + "@types/d3-geo": "*", + "@types/d3-hierarchy": "*", + "@types/d3-interpolate": "*", + "@types/d3-path": "*", + "@types/d3-polygon": "*", + "@types/d3-quadtree": "*", + "@types/d3-random": "*", + "@types/d3-scale": "*", + "@types/d3-scale-chromatic": "*", + "@types/d3-selection": "*", + "@types/d3-shape": "*", + "@types/d3-time": "*", + "@types/d3-time-format": "*", + "@types/d3-timer": "*", + "@types/d3-transition": "*", + "@types/d3-zoom": "*" + } + }, + "node_modules/@types/d3-array": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/@types/d3-array/-/d3-array-3.2.1.tgz", + "integrity": "sha512-Y2Jn2idRrLzUfAKV2LyRImR+y4oa2AntrgID95SHJxuMUrkNXmanDSed71sRNZysveJVt1hLLemQZIady0FpEg==", + "license": "MIT" + }, + "node_modules/@types/d3-axis": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/@types/d3-axis/-/d3-axis-3.0.6.tgz", + "integrity": "sha512-pYeijfZuBd87T0hGn0FO1vQ/cgLk6E1ALJjfkC0oJ8cbwkZl3TpgS8bVBLZN+2jjGgg38epgxb2zmoGtSfvgMw==", + "license": "MIT", + "dependencies": { + "@types/d3-selection": "*" + } + }, + "node_modules/@types/d3-brush": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/@types/d3-brush/-/d3-brush-3.0.6.tgz", + "integrity": "sha512-nH60IZNNxEcrh6L1ZSMNA28rj27ut/2ZmI3r96Zd+1jrZD++zD3LsMIjWlvg4AYrHn/Pqz4CF3veCxGjtbqt7A==", + "license": "MIT", + "dependencies": { + "@types/d3-selection": "*" + } + }, + "node_modules/@types/d3-chord": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/@types/d3-chord/-/d3-chord-3.0.6.tgz", + "integrity": "sha512-LFYWWd8nwfwEmTZG9PfQxd17HbNPksHBiJHaKuY1XeqscXacsS2tyoo6OdRsjf+NQYeB6XrNL3a25E3gH69lcg==", + "license": "MIT" + }, + "node_modules/@types/d3-color": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@types/d3-color/-/d3-color-3.1.3.tgz", + "integrity": "sha512-iO90scth9WAbmgv7ogoq57O9YpKmFBbmoEoCHDB2xMBY0+/KVrqAaCDyCE16dUspeOvIxFFRI+0sEtqDqy2b4A==", + "license": "MIT" + }, + "node_modules/@types/d3-contour": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/@types/d3-contour/-/d3-contour-3.0.6.tgz", + "integrity": "sha512-BjzLgXGnCWjUSYGfH1cpdo41/hgdWETu4YxpezoztawmqsvCeep+8QGfiY6YbDvfgHz/DkjeIkkZVJavB4a3rg==", + "license": "MIT", + "dependencies": { + "@types/d3-array": "*", + "@types/geojson": "*" + } + }, + "node_modules/@types/d3-delaunay": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/@types/d3-delaunay/-/d3-delaunay-6.0.4.tgz", + "integrity": "sha512-ZMaSKu4THYCU6sV64Lhg6qjf1orxBthaC161plr5KuPHo3CNm8DTHiLw/5Eq2b6TsNP0W0iJrUOFscY6Q450Hw==", + "license": "MIT" + }, + "node_modules/@types/d3-dispatch": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/@types/d3-dispatch/-/d3-dispatch-3.0.6.tgz", + "integrity": "sha512-4fvZhzMeeuBJYZXRXrRIQnvUYfyXwYmLsdiN7XXmVNQKKw1cM8a5WdID0g1hVFZDqT9ZqZEY5pD44p24VS7iZQ==", + "license": "MIT" + }, + "node_modules/@types/d3-drag": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@types/d3-drag/-/d3-drag-3.0.7.tgz", + "integrity": "sha512-HE3jVKlzU9AaMazNufooRJ5ZpWmLIoc90A37WU2JMmeq28w1FQqCZswHZ3xR+SuxYftzHq6WU6KJHvqxKzTxxQ==", + "license": "MIT", + "dependencies": { + "@types/d3-selection": "*" + } + }, + "node_modules/@types/d3-dsv": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@types/d3-dsv/-/d3-dsv-3.0.7.tgz", + "integrity": "sha512-n6QBF9/+XASqcKK6waudgL0pf/S5XHPPI8APyMLLUHd8NqouBGLsU8MgtO7NINGtPBtk9Kko/W4ea0oAspwh9g==", + "license": "MIT" + }, + "node_modules/@types/d3-ease": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-ease/-/d3-ease-3.0.2.tgz", + "integrity": "sha512-NcV1JjO5oDzoK26oMzbILE6HW7uVXOHLQvHshBUW4UMdZGfiY6v5BeQwh9a9tCzv+CeefZQHJt5SRgK154RtiA==", + "license": "MIT" + }, + "node_modules/@types/d3-fetch": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@types/d3-fetch/-/d3-fetch-3.0.7.tgz", + "integrity": "sha512-fTAfNmxSb9SOWNB9IoG5c8Hg6R+AzUHDRlsXsDZsNp6sxAEOP0tkP3gKkNSO/qmHPoBFTxNrjDprVHDQDvo5aA==", + "license": "MIT", + "dependencies": { + "@types/d3-dsv": "*" + } + }, + "node_modules/@types/d3-force": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@types/d3-force/-/d3-force-3.0.10.tgz", + "integrity": "sha512-ZYeSaCF3p73RdOKcjj+swRlZfnYpK1EbaDiYICEEp5Q6sUiqFaFQ9qgoshp5CzIyyb/yD09kD9o2zEltCexlgw==", + "license": "MIT" + }, + "node_modules/@types/d3-format": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/d3-format/-/d3-format-3.0.4.tgz", + "integrity": "sha512-fALi2aI6shfg7vM5KiR1wNJnZ7r6UuggVqtDA+xiEdPZQwy/trcQaHnwShLuLdta2rTymCNpxYTiMZX/e09F4g==", + "license": "MIT" + }, + "node_modules/@types/d3-geo": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@types/d3-geo/-/d3-geo-3.1.0.tgz", + "integrity": "sha512-856sckF0oP/diXtS4jNsiQw/UuK5fQG8l/a9VVLeSouf1/PPbBE1i1W852zVwKwYCBkFJJB7nCFTbk6UMEXBOQ==", + "license": "MIT", + "dependencies": { + "@types/geojson": "*" + } + }, + "node_modules/@types/d3-hierarchy": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/@types/d3-hierarchy/-/d3-hierarchy-3.1.7.tgz", + "integrity": "sha512-tJFtNoYBtRtkNysX1Xq4sxtjK8YgoWUNpIiUee0/jHGRwqvzYxkq0hGVbbOGSz+JgFxxRu4K8nb3YpG3CMARtg==", + "license": "MIT" + }, + "node_modules/@types/d3-interpolate": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/d3-interpolate/-/d3-interpolate-3.0.4.tgz", + "integrity": "sha512-mgLPETlrpVV1YRJIglr4Ez47g7Yxjl1lj7YKsiMCb27VJH9W8NVM6Bb9d8kkpG/uAQS5AmbA48q2IAolKKo1MA==", + "license": "MIT", + "dependencies": { + "@types/d3-color": "*" + } + }, + "node_modules/@types/d3-path": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@types/d3-path/-/d3-path-3.1.1.tgz", + "integrity": "sha512-VMZBYyQvbGmWyWVea0EHs/BwLgxc+MKi1zLDCONksozI4YJMcTt8ZEuIR4Sb1MMTE8MMW49v0IwI5+b7RmfWlg==", + "license": "MIT" + }, + "node_modules/@types/d3-polygon": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-polygon/-/d3-polygon-3.0.2.tgz", + "integrity": "sha512-ZuWOtMaHCkN9xoeEMr1ubW2nGWsp4nIql+OPQRstu4ypeZ+zk3YKqQT0CXVe/PYqrKpZAi+J9mTs05TKwjXSRA==", + "license": "MIT" + }, + "node_modules/@types/d3-quadtree": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/@types/d3-quadtree/-/d3-quadtree-3.0.6.tgz", + "integrity": "sha512-oUzyO1/Zm6rsxKRHA1vH0NEDG58HrT5icx/azi9MF1TWdtttWl0UIUsjEQBBh+SIkrpd21ZjEv7ptxWys1ncsg==", + "license": "MIT" + }, + "node_modules/@types/d3-random": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/d3-random/-/d3-random-3.0.3.tgz", + "integrity": "sha512-Imagg1vJ3y76Y2ea0871wpabqp613+8/r0mCLEBfdtqC7xMSfj9idOnmBYyMoULfHePJyxMAw3nWhJxzc+LFwQ==", + "license": "MIT" + }, + "node_modules/@types/d3-scale": { + "version": "4.0.9", + "resolved": "https://registry.npmjs.org/@types/d3-scale/-/d3-scale-4.0.9.tgz", + "integrity": "sha512-dLmtwB8zkAeO/juAMfnV+sItKjlsw2lKdZVVy6LRr0cBmegxSABiLEpGVmSJJ8O08i4+sGR6qQtb6WtuwJdvVw==", + "license": "MIT", + "dependencies": { + "@types/d3-time": "*" + } + }, + "node_modules/@types/d3-scale-chromatic": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@types/d3-scale-chromatic/-/d3-scale-chromatic-3.1.0.tgz", + "integrity": "sha512-iWMJgwkK7yTRmWqRB5plb1kadXyQ5Sj8V/zYlFGMUBbIPKQScw+Dku9cAAMgJG+z5GYDoMjWGLVOvjghDEFnKQ==", + "license": "MIT" + }, + "node_modules/@types/d3-selection": { + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/@types/d3-selection/-/d3-selection-3.0.11.tgz", + "integrity": "sha512-bhAXu23DJWsrI45xafYpkQ4NtcKMwWnAC/vKrd2l+nxMFuvOT3XMYTIj2opv8vq8AO5Yh7Qac/nSeP/3zjTK0w==", + "license": "MIT" + }, + "node_modules/@types/d3-shape": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/@types/d3-shape/-/d3-shape-3.1.7.tgz", + "integrity": "sha512-VLvUQ33C+3J+8p+Daf+nYSOsjB4GXp19/S/aGo60m9h1v6XaxjiT82lKVWJCfzhtuZ3yD7i/TPeC/fuKLLOSmg==", + "license": "MIT", + "dependencies": { + "@types/d3-path": "*" + } + }, + "node_modules/@types/d3-time": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/d3-time/-/d3-time-3.0.4.tgz", + "integrity": "sha512-yuzZug1nkAAaBlBBikKZTgzCeA+k1uy4ZFwWANOfKw5z5LRhV0gNA7gNkKm7HoK+HRN0wX3EkxGk0fpbWhmB7g==", + "license": "MIT" + }, + "node_modules/@types/d3-time-format": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@types/d3-time-format/-/d3-time-format-4.0.3.tgz", + "integrity": "sha512-5xg9rC+wWL8kdDj153qZcsJ0FWiFt0J5RB6LYUNZjwSnesfblqrI/bJ1wBdJ8OQfncgbJG5+2F+qfqnqyzYxyg==", + "license": "MIT" + }, + "node_modules/@types/d3-timer": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/d3-timer/-/d3-timer-3.0.2.tgz", + "integrity": "sha512-Ps3T8E8dZDam6fUyNiMkekK3XUsaUEik+idO9/YjPtfj2qruF8tFBXS7XhtE4iIXBLxhmLjP3SXpLhVf21I9Lw==", + "license": "MIT" + }, + "node_modules/@types/d3-transition": { + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/@types/d3-transition/-/d3-transition-3.0.9.tgz", + "integrity": "sha512-uZS5shfxzO3rGlu0cC3bjmMFKsXv+SmZZcgp0KD22ts4uGXp5EVYGzu/0YdwZeKmddhcAccYtREJKkPfXkZuCg==", + "license": "MIT", + "dependencies": { + "@types/d3-selection": "*" + } + }, + "node_modules/@types/d3-zoom": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/@types/d3-zoom/-/d3-zoom-3.0.8.tgz", + "integrity": "sha512-iqMC4/YlFCSlO8+2Ii1GGGliCAY4XdeG748w5vQUbevlbDu0zSjH/+jojorQVBK/se0j6DUFNPBGSqD3YWYnDw==", + "license": "MIT", + "dependencies": { + "@types/d3-interpolate": "*", + "@types/d3-selection": "*" + } + }, "node_modules/@types/debug": { "version": "4.1.12", "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", @@ -12857,6 +12801,12 @@ "@types/estree": "*" } }, + "node_modules/@types/geojson": { + "version": "7946.0.16", + "resolved": "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.16.tgz", + "integrity": "sha512-6C8nqWur3j98U6+lXDfTUWIfgvZU+EumvpHKcYjujKH7woYyLj2sUmff0tRhrqM7BohUw7Pz3ZB1jj2gW9Fvmg==", + "license": "MIT" + }, "node_modules/@types/hast": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", @@ -12924,6 +12874,13 @@ "@types/react": "^19.0.0" } }, + "node_modules/@types/trusted-types": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.7.tgz", + "integrity": "sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==", + "license": "MIT", + "optional": true + }, "node_modules/@types/unist": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", @@ -13833,6 +13790,32 @@ "url": "https://github.com/sponsors/wooorm" } }, + "node_modules/chevrotain": { + "version": "11.0.3", + "resolved": "https://registry.npmjs.org/chevrotain/-/chevrotain-11.0.3.tgz", + "integrity": "sha512-ci2iJH6LeIkvP9eJW6gpueU8cnZhv85ELY8w8WiFtNjMHA5ad6pQLaJo9mEly/9qUyCpvqX8/POVUTf18/HFdw==", + "license": "Apache-2.0", + "dependencies": { + "@chevrotain/cst-dts-gen": "11.0.3", + "@chevrotain/gast": "11.0.3", + "@chevrotain/regexp-to-ast": "11.0.3", + "@chevrotain/types": "11.0.3", + "@chevrotain/utils": "11.0.3", + "lodash-es": "4.17.21" + } + }, + "node_modules/chevrotain-allstar": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/chevrotain-allstar/-/chevrotain-allstar-0.3.1.tgz", + "integrity": "sha512-b7g+y9A0v4mxCW1qUhf3BSVPg+/NvGErk/dOkrDaHA0nQIQGAtrOjlX//9OQtRlSCy+x9rfB5N8yC71lH1nvMw==", + "license": "MIT", + "dependencies": { + "lodash-es": "^4.17.21" + }, + "peerDependencies": { + "chevrotain": "^11.0.0" + } + }, "node_modules/chokidar": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", @@ -13889,8 +13872,8 @@ "version": "4.2.3", "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", + "devOptional": true, "license": "MIT", - "optional": true, "dependencies": { "color-convert": "^2.0.1", "color-string": "^1.9.0" @@ -13923,8 +13906,8 @@ "version": "1.9.1", "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", + "devOptional": true, "license": "MIT", - "optional": true, "dependencies": { "color-name": "^1.0.0", "simple-swizzle": "^0.2.2" @@ -13963,6 +13946,12 @@ "dev": true, "license": "MIT" }, + "node_modules/confbox": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.2.2.tgz", + "integrity": "sha512-1NB+BKqhtNipMsov4xI/NnhCKp9XG9NamYp5PVm9klAT0fsrNPjaFICsCFhNhwZJKNh7zB/3q8qXz0E9oaMNtQ==", + "license": "MIT" + }, "node_modules/content-disposition": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-1.0.0.tgz", @@ -14006,6 +13995,15 @@ "node": ">=6.6.0" } }, + "node_modules/cose-base": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/cose-base/-/cose-base-1.0.3.tgz", + "integrity": "sha512-s9whTXInMSgAp/NVXVNuVxVKzGH2qck3aQlVHxDCdAEPgtMKwc4Wq6/QKhgdEdgbLSi9rBTAcPoRa6JpiG4ksg==", + "license": "MIT", + "dependencies": { + "layout-base": "^1.0.0" + } + }, "node_modules/cross-spawn": { "version": "7.0.6", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", @@ -14039,2075 +14037,2192 @@ "devOptional": true, "license": "MIT" }, - "node_modules/damerau-levenshtein": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", - "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==", - "dev": true, - "license": "BSD-2-Clause" - }, - "node_modules/data-uri-to-buffer": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-2.0.2.tgz", - "integrity": "sha512-ND9qDTLc6diwj+Xe5cdAgVTbLVdXbtxTJRXRhli8Mowuaan+0EJOtdqJ0QCHNSSPyoXGx9HX2/VMnKeC34AChA==", - "dev": true, - "license": "MIT" + "node_modules/cytoscape": { + "version": "3.32.0", + "resolved": "https://registry.npmjs.org/cytoscape/-/cytoscape-3.32.0.tgz", + "integrity": "sha512-5JHBC9n75kz5851jeklCPmZWcg3hUe6sjqJvyk3+hVqFaKcHwHgxsjeN1yLmggoUc6STbtm9/NQyabQehfjvWQ==", + "license": "MIT", + "engines": { + "node": ">=0.10" + } }, - "node_modules/data-view-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", - "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==", - "dev": true, + "node_modules/cytoscape-cose-bilkent": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cytoscape-cose-bilkent/-/cytoscape-cose-bilkent-4.1.0.tgz", + "integrity": "sha512-wgQlVIUJF13Quxiv5e1gstZ08rnZj2XaLHGoFMYXz7SkNfCDOOteKBE6SYRfA9WxxI/iBc3ajfDoc6hb/MRAHQ==", "license": "MIT", "dependencies": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.2" + "cose-base": "^1.0.0" }, - "engines": { - "node": ">= 0.4" + "peerDependencies": { + "cytoscape": "^3.2.0" + } + }, + "node_modules/cytoscape-fcose": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/cytoscape-fcose/-/cytoscape-fcose-2.2.0.tgz", + "integrity": "sha512-ki1/VuRIHFCzxWNrsshHYPs6L7TvLu3DL+TyIGEsRcvVERmxokbf5Gdk7mFxZnTdiGtnA4cfSmjZJMviqSuZrQ==", + "license": "MIT", + "dependencies": { + "cose-base": "^2.2.0" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "peerDependencies": { + "cytoscape": "^3.2.0" } }, - "node_modules/data-view-byte-length": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz", - "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==", - "dev": true, + "node_modules/cytoscape-fcose/node_modules/cose-base": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/cose-base/-/cose-base-2.2.0.tgz", + "integrity": "sha512-AzlgcsCbUMymkADOJtQm3wO9S3ltPfYOFD5033keQn9NJzIbtnZj+UdBJe7DYml/8TdbtHJW3j58SOnKhWY/5g==", "license": "MIT", "dependencies": { - "call-bound": "^1.0.3", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.2" + "layout-base": "^2.0.0" + } + }, + "node_modules/cytoscape-fcose/node_modules/layout-base": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/layout-base/-/layout-base-2.0.1.tgz", + "integrity": "sha512-dp3s92+uNI1hWIpPGH3jK2kxE2lMjdXdr+DH8ynZHpd6PUlH6x6cbuXnoMmiNumznqaNO31xu9e79F0uuZ0JFg==", + "license": "MIT" + }, + "node_modules/d3": { + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/d3/-/d3-7.9.0.tgz", + "integrity": "sha512-e1U46jVP+w7Iut8Jt8ri1YsPOvFpg46k+K8TpCb0P+zjCkjkPnV7WzfDJzMHy1LnA+wj5pLT1wjO901gLXeEhA==", + "license": "ISC", + "dependencies": { + "d3-array": "3", + "d3-axis": "3", + "d3-brush": "3", + "d3-chord": "3", + "d3-color": "3", + "d3-contour": "4", + "d3-delaunay": "6", + "d3-dispatch": "3", + "d3-drag": "3", + "d3-dsv": "3", + "d3-ease": "3", + "d3-fetch": "3", + "d3-force": "3", + "d3-format": "3", + "d3-geo": "3", + "d3-hierarchy": "3", + "d3-interpolate": "3", + "d3-path": "3", + "d3-polygon": "3", + "d3-quadtree": "3", + "d3-random": "3", + "d3-scale": "4", + "d3-scale-chromatic": "3", + "d3-selection": "3", + "d3-shape": "3", + "d3-time": "3", + "d3-time-format": "4", + "d3-timer": "3", + "d3-transition": "3", + "d3-zoom": "3" }, "engines": { - "node": ">= 0.4" + "node": ">=12" + } + }, + "node_modules/d3-array": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-3.2.4.tgz", + "integrity": "sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg==", + "license": "ISC", + "dependencies": { + "internmap": "1 - 2" }, - "funding": { - "url": "https://github.com/sponsors/inspect-js" + "engines": { + "node": ">=12" } }, - "node_modules/data-view-byte-offset": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz", - "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==", - "dev": true, - "license": "MIT", + "node_modules/d3-axis": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-axis/-/d3-axis-3.0.0.tgz", + "integrity": "sha512-IH5tgjV4jE/GhHkRV0HiVYPDtvfjHQlQfJHs0usq7M30XcSBvOotpmH1IgkcXsO/5gEQZD43B//fc7SRT5S+xw==", + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-brush": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-brush/-/d3-brush-3.0.0.tgz", + "integrity": "sha512-ALnjWlVYkXsVIGlOsuWH1+3udkYFI48Ljihfnh8FZPF2QS9o+PzGLBslO0PjzVoHLZ2KCVgAM8NVkXPJB2aNnQ==", + "license": "ISC", "dependencies": { - "call-bound": "^1.0.2", - "es-errors": "^1.3.0", - "is-data-view": "^1.0.1" + "d3-dispatch": "1 - 3", + "d3-drag": "2 - 3", + "d3-interpolate": "1 - 3", + "d3-selection": "3", + "d3-transition": "3" }, "engines": { - "node": ">= 0.4" + "node": ">=12" + } + }, + "node_modules/d3-chord": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-chord/-/d3-chord-3.0.1.tgz", + "integrity": "sha512-VE5S6TNa+j8msksl7HwjxMHDM2yNK3XCkusIlpX5kwauBfXuyLAtNg9jCp/iHH61tgI4sb6R/EIMWCqEIdjT/g==", + "license": "ISC", + "dependencies": { + "d3-path": "1 - 3" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=12" } }, - "node_modules/debug": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", - "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", - "license": "MIT", + "node_modules/d3-color": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-3.1.0.tgz", + "integrity": "sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA==", + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/d3-contour": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/d3-contour/-/d3-contour-4.0.2.tgz", + "integrity": "sha512-4EzFTRIikzs47RGmdxbeUvLWtGedDUNkTcmzoeyg4sP/dvCexO47AaQL7VKy/gul85TOxw+IBgA8US2xwbToNA==", + "license": "ISC", "dependencies": { - "ms": "^2.1.3" + "d3-array": "^3.2.0" }, "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "node": ">=12" } }, - "node_modules/decode-named-character-reference": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.0.2.tgz", - "integrity": "sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==", - "license": "MIT", + "node_modules/d3-delaunay": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/d3-delaunay/-/d3-delaunay-6.0.4.tgz", + "integrity": "sha512-mdjtIZ1XLAM8bm/hx3WwjfHt6Sggek7qH043O8KEjDXN40xi3vx/6pYSVTwLjEgiXQTbvaouWKynLBiUZ6SK6A==", + "license": "ISC", "dependencies": { - "character-entities": "^2.0.0" + "delaunator": "5" }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "engines": { + "node": ">=12" } }, - "node_modules/deep-is": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", - "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", - "dev": true, - "license": "MIT" + "node_modules/d3-dispatch": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-3.0.1.tgz", + "integrity": "sha512-rzUyPU/S7rwUflMyLc1ETDeBj0NRuHKKAcvukozwhshr6g6c5d8zh4c2gQjY2bZ0dXeGLWc1PF174P2tVvKhfg==", + "license": "ISC", + "engines": { + "node": ">=12" + } }, - "node_modules/define-data-property": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", - "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", - "dev": true, - "license": "MIT", + "node_modules/d3-drag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-drag/-/d3-drag-3.0.0.tgz", + "integrity": "sha512-pWbUJLdETVA8lQNJecMxoXfH6x+mO2UQo8rSmZ+QqxcbyA3hfeprFgIT//HW2nlHChWeIIMwS2Fq+gEARkhTkg==", + "license": "ISC", "dependencies": { - "es-define-property": "^1.0.0", - "es-errors": "^1.3.0", - "gopd": "^1.0.1" + "d3-dispatch": "1 - 3", + "d3-selection": "3" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=12" } }, - "node_modules/define-properties": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", - "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", - "dev": true, - "license": "MIT", + "node_modules/d3-dsv": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-dsv/-/d3-dsv-3.0.1.tgz", + "integrity": "sha512-UG6OvdI5afDIFP9w4G0mNq50dSOsXHJaRE8arAS5o9ApWnIElp8GZw1Dun8vP8OyHOZ/QJUKUJwxiiCCnUwm+Q==", + "license": "ISC", "dependencies": { - "define-data-property": "^1.0.1", - "has-property-descriptors": "^1.0.0", - "object-keys": "^1.1.1" + "commander": "7", + "iconv-lite": "0.6", + "rw": "1" }, - "engines": { - "node": ">= 0.4" + "bin": { + "csv2json": "bin/dsv2json.js", + "csv2tsv": "bin/dsv2dsv.js", + "dsv2dsv": "bin/dsv2dsv.js", + "dsv2json": "bin/dsv2json.js", + "json2csv": "bin/json2dsv.js", + "json2dsv": "bin/json2dsv.js", + "json2tsv": "bin/json2dsv.js", + "tsv2csv": "bin/dsv2dsv.js", + "tsv2json": "bin/dsv2json.js" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/defu": { - "version": "6.1.4", - "resolved": "https://registry.npmjs.org/defu/-/defu-6.1.4.tgz", - "integrity": "sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==", - "dev": true, - "license": "MIT" - }, - "node_modules/depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", - "dev": true, - "license": "MIT", "engines": { - "node": ">= 0.8" + "node": ">=12" } }, - "node_modules/dequal": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", - "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", + "node_modules/d3-dsv/node_modules/commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", "license": "MIT", "engines": { - "node": ">=6" + "node": ">= 10" } }, - "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==", - "devOptional": true, - "license": "Apache-2.0", + "node_modules/d3-ease": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-3.0.1.tgz", + "integrity": "sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w==", + "license": "BSD-3-Clause", "engines": { - "node": ">=8" + "node": ">=12" } }, - "node_modules/detect-node-es": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/detect-node-es/-/detect-node-es-1.1.0.tgz", - "integrity": "sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==", - "license": "MIT" - }, - "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==", - "license": "MIT", + "node_modules/d3-fetch": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-fetch/-/d3-fetch-3.0.1.tgz", + "integrity": "sha512-kpkQIM20n3oLVBKGg6oHrUchHM3xODkTzjMoj7aWQFq5QEM+R6E4WkzT5+tojDY7yjez8KgCBRoj4aEr99Fdqw==", + "license": "ISC", "dependencies": { - "dequal": "^2.0.0" + "d3-dsv": "1 - 3" }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "engines": { + "node": ">=12" } }, - "node_modules/doctrine": { + "node_modules/d3-force": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, - "license": "Apache-2.0", + "resolved": "https://registry.npmjs.org/d3-force/-/d3-force-3.0.0.tgz", + "integrity": "sha512-zxV/SsA+U4yte8051P4ECydjD/S+qeYtnaIyAs9tgHCqfguma/aAQDjo85A9Z6EKhBirHRJHXIgJUlffT4wdLg==", + "license": "ISC", "dependencies": { - "esutils": "^2.0.2" + "d3-dispatch": "1 - 3", + "d3-quadtree": "1 - 3", + "d3-timer": "1 - 3" }, "engines": { - "node": ">=6.0.0" + "node": ">=12" } }, - "node_modules/dotenv": { - "version": "16.4.7", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.7.tgz", - "integrity": "sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==", - "dev": true, - "license": "BSD-2-Clause", + "node_modules/d3-format": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-3.1.0.tgz", + "integrity": "sha512-YyUI6AEuY/Wpt8KWLgZHsIU86atmikuoOmCfommt0LYHiQSPjvX2AcFc38PX0CBpr2RCyZhjex+NS/LPOv6YqA==", + "license": "ISC", "engines": { "node": ">=12" - }, - "funding": { - "url": "https://dotenvx.com" } }, - "node_modules/dunder-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", - "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", - "dev": true, - "license": "MIT", + "node_modules/d3-geo": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/d3-geo/-/d3-geo-3.1.1.tgz", + "integrity": "sha512-637ln3gXKXOwhalDzinUgY83KzNWZRKbYubaG+fGVuc/dxO64RRljtCTnf5ecMyE1RIdtqpkVcq0IbtU2S8j2Q==", + "license": "ISC", "dependencies": { - "call-bind-apply-helpers": "^1.0.1", - "es-errors": "^1.3.0", - "gopd": "^1.2.0" + "d3-array": "2.5.0 - 3" }, "engines": { - "node": ">= 0.4" + "node": ">=12" } }, - "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/d3-hierarchy": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/d3-hierarchy/-/d3-hierarchy-3.1.2.tgz", + "integrity": "sha512-FX/9frcub54beBdugHjDCdikxThEqjnR93Qt7PvQTOHxyiNCAlvMrHhclk3cD5VeAaq9fxmfRp+CnWw9rEMBuA==", + "license": "ISC", + "engines": { + "node": ">=12" + } }, - "node_modules/eciesjs": { - "version": "0.4.14", - "resolved": "https://registry.npmjs.org/eciesjs/-/eciesjs-0.4.14.tgz", - "integrity": "sha512-eJAgf9pdv214Hn98FlUzclRMYWF7WfoLlkS9nWMTm1qcCwn6Ad4EGD9lr9HXMBfSrZhYQujRE+p0adPRkctC6A==", - "dev": true, - "license": "MIT", + "node_modules/d3-interpolate": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-3.0.1.tgz", + "integrity": "sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g==", + "license": "ISC", "dependencies": { - "@ecies/ciphers": "^0.2.2", - "@noble/ciphers": "^1.0.0", - "@noble/curves": "^1.6.0", - "@noble/hashes": "^1.5.0" + "d3-color": "1 - 3" }, "engines": { - "bun": ">=1", - "deno": ">=2", - "node": ">=16" + "node": ">=12" } }, - "node_modules/ee-first": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", - "dev": true, - "license": "MIT" + "node_modules/d3-path": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-3.1.0.tgz", + "integrity": "sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ==", + "license": "ISC", + "engines": { + "node": ">=12" + } }, - "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/d3-polygon": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-polygon/-/d3-polygon-3.0.1.tgz", + "integrity": "sha512-3vbA7vXYwfe1SYhED++fPUQlWSYTTGmFmQiany/gdbiWgU/iEyQzyymwL9SkJjFFuCS4902BSzewVGsHHmHtXg==", + "license": "ISC", + "engines": { + "node": ">=12" + } }, - "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==", - "license": "MIT" + "node_modules/d3-quadtree": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-quadtree/-/d3-quadtree-3.0.1.tgz", + "integrity": "sha512-04xDrxQTDTCFwP5H6hRhsRcb9xxv2RzkcsygFzmkSIOJy3PeRJP7sNk3VRIbKXcog561P9oU0/rVH6vDROAgUw==", + "license": "ISC", + "engines": { + "node": ">=12" + } }, - "node_modules/encodeurl": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", - "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", - "dev": true, - "license": "MIT", + "node_modules/d3-random": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-random/-/d3-random-3.0.1.tgz", + "integrity": "sha512-FXMe9GfxTxqd5D6jFsQ+DJ8BJS4E/fT5mqqdjovykEB2oFbTMDVdg1MGFxfQW+FBOGoB++k8swBrgwSHT1cUXQ==", + "license": "ISC", "engines": { - "node": ">= 0.8" + "node": ">=12" } }, - "node_modules/enhanced-resolve": { - "version": "5.18.1", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.1.tgz", - "integrity": "sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg==", - "dev": true, - "license": "MIT", + "node_modules/d3-sankey": { + "version": "0.12.3", + "resolved": "https://registry.npmjs.org/d3-sankey/-/d3-sankey-0.12.3.tgz", + "integrity": "sha512-nQhsBRmM19Ax5xEIPLMY9ZmJ/cDvd1BG3UVvt5h3WRxKg5zGRbvnteTyWAbzeSvlh3tW7ZEmq4VwR5mB3tutmQ==", + "license": "BSD-3-Clause", "dependencies": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - }, - "engines": { - "node": ">=10.13.0" + "d3-array": "1 - 2", + "d3-shape": "^1.2.0" } }, - "node_modules/enquirer": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.4.1.tgz", - "integrity": "sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==", - "dev": true, - "license": "MIT", + "node_modules/d3-sankey/node_modules/d3-array": { + "version": "2.12.1", + "resolved": "https://registry.npmjs.org/d3-array/-/d3-array-2.12.1.tgz", + "integrity": "sha512-B0ErZK/66mHtEsR1TkPEEkwdy+WDesimkM5gpZr5Dsg54BiTA5RXtYW5qTLIAcekaS9xfZrzBLF/OAkB3Qn1YQ==", + "license": "BSD-3-Clause", + "dependencies": { + "internmap": "^1.0.0" + } + }, + "node_modules/d3-sankey/node_modules/d3-path": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/d3-path/-/d3-path-1.0.9.tgz", + "integrity": "sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg==", + "license": "BSD-3-Clause" + }, + "node_modules/d3-sankey/node_modules/d3-shape": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-1.3.7.tgz", + "integrity": "sha512-EUkvKjqPFUAZyOlhY5gzCxCeI0Aep04LwIRpsZ/mLFelJiUfnK56jo5JMDSE7yyP2kLSb6LtF+S5chMk7uqPqw==", + "license": "BSD-3-Clause", "dependencies": { - "ansi-colors": "^4.1.1", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8.6" + "d3-path": "1" } }, - "node_modules/es-abstract": { - "version": "1.23.9", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.9.tgz", - "integrity": "sha512-py07lI0wjxAC/DcfK1S6G7iANonniZwTISvdPzk9hzeH0IZIshbuuFxLIU96OyF89Yb9hiqWn8M/bY83KY5vzA==", - "dev": true, - "license": "MIT", + "node_modules/d3-sankey/node_modules/internmap": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/internmap/-/internmap-1.0.1.tgz", + "integrity": "sha512-lDB5YccMydFBtasVtxnZ3MRBHuaoE8GKsppq+EchKL2U4nK/DmEpPHNH8MZe5HkMtpSiTSOZwfN0tzYjO/lJEw==", + "license": "ISC" + }, + "node_modules/d3-scale": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/d3-scale/-/d3-scale-4.0.2.tgz", + "integrity": "sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ==", + "license": "ISC", "dependencies": { - "array-buffer-byte-length": "^1.0.2", - "arraybuffer.prototype.slice": "^1.0.4", - "available-typed-arrays": "^1.0.7", - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "data-view-buffer": "^1.0.2", - "data-view-byte-length": "^1.0.2", - "data-view-byte-offset": "^1.0.1", - "es-define-property": "^1.0.1", - "es-errors": "^1.3.0", - "es-object-atoms": "^1.0.0", - "es-set-tostringtag": "^2.1.0", - "es-to-primitive": "^1.3.0", - "function.prototype.name": "^1.1.8", - "get-intrinsic": "^1.2.7", - "get-proto": "^1.0.0", - "get-symbol-description": "^1.1.0", - "globalthis": "^1.0.4", - "gopd": "^1.2.0", - "has-property-descriptors": "^1.0.2", - "has-proto": "^1.2.0", - "has-symbols": "^1.1.0", - "hasown": "^2.0.2", - "internal-slot": "^1.1.0", - "is-array-buffer": "^3.0.5", - "is-callable": "^1.2.7", - "is-data-view": "^1.0.2", - "is-regex": "^1.2.1", - "is-shared-array-buffer": "^1.0.4", - "is-string": "^1.1.1", - "is-typed-array": "^1.1.15", - "is-weakref": "^1.1.0", - "math-intrinsics": "^1.1.0", - "object-inspect": "^1.13.3", - "object-keys": "^1.1.1", - "object.assign": "^4.1.7", - "own-keys": "^1.0.1", - "regexp.prototype.flags": "^1.5.3", - "safe-array-concat": "^1.1.3", - "safe-push-apply": "^1.0.0", - "safe-regex-test": "^1.1.0", - "set-proto": "^1.0.0", - "string.prototype.trim": "^1.2.10", - "string.prototype.trimend": "^1.0.9", - "string.prototype.trimstart": "^1.0.8", - "typed-array-buffer": "^1.0.3", - "typed-array-byte-length": "^1.0.3", - "typed-array-byte-offset": "^1.0.4", - "typed-array-length": "^1.0.7", - "unbox-primitive": "^1.1.0", - "which-typed-array": "^1.1.18" + "d3-array": "2.10.0 - 3", + "d3-format": "1 - 3", + "d3-interpolate": "1.2.0 - 3", + "d3-time": "2.1.1 - 3", + "d3-time-format": "2 - 4" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=12" } }, - "node_modules/es-define-property": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", - "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", - "dev": true, - "license": "MIT", + "node_modules/d3-scale-chromatic": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-scale-chromatic/-/d3-scale-chromatic-3.1.0.tgz", + "integrity": "sha512-A3s5PWiZ9YCXFye1o246KoscMWqf8BsD9eRiJ3He7C9OBaxKhAd5TFCdEx/7VbKtxxTsu//1mMJFrEt572cEyQ==", + "license": "ISC", + "dependencies": { + "d3-color": "1 - 3", + "d3-interpolate": "1 - 3" + }, "engines": { - "node": ">= 0.4" + "node": ">=12" } }, - "node_modules/es-errors": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", - "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", - "dev": true, - "license": "MIT", + "node_modules/d3-selection": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-selection/-/d3-selection-3.0.0.tgz", + "integrity": "sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ==", + "license": "ISC", "engines": { - "node": ">= 0.4" + "node": ">=12" } }, - "node_modules/es-iterator-helpers": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.2.1.tgz", - "integrity": "sha512-uDn+FE1yrDzyC0pCo961B2IHbdM8y/ACZsKD4dG6WqrjV53BADjwa7D+1aom2rsNVfLyDgU/eigvlJGJ08OQ4w==", - "dev": true, - "license": "MIT", + "node_modules/d3-shape": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/d3-shape/-/d3-shape-3.2.0.tgz", + "integrity": "sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA==", + "license": "ISC", "dependencies": { - "call-bind": "^1.0.8", - "call-bound": "^1.0.3", - "define-properties": "^1.2.1", - "es-abstract": "^1.23.6", - "es-errors": "^1.3.0", - "es-set-tostringtag": "^2.0.3", - "function-bind": "^1.1.2", - "get-intrinsic": "^1.2.6", - "globalthis": "^1.0.4", - "gopd": "^1.2.0", - "has-property-descriptors": "^1.0.2", - "has-proto": "^1.2.0", - "has-symbols": "^1.1.0", - "internal-slot": "^1.1.0", - "iterator.prototype": "^1.1.4", - "safe-array-concat": "^1.1.3" + "d3-path": "^3.1.0" }, "engines": { - "node": ">= 0.4" + "node": ">=12" } }, - "node_modules/es-object-atoms": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", - "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", - "dev": true, - "license": "MIT", + "node_modules/d3-time": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/d3-time/-/d3-time-3.1.0.tgz", + "integrity": "sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q==", + "license": "ISC", "dependencies": { - "es-errors": "^1.3.0" + "d3-array": "2 - 3" }, "engines": { - "node": ">= 0.4" + "node": ">=12" } }, - "node_modules/es-set-tostringtag": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", - "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", - "dev": true, - "license": "MIT", + "node_modules/d3-time-format": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-4.1.0.tgz", + "integrity": "sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg==", + "license": "ISC", "dependencies": { - "es-errors": "^1.3.0", - "get-intrinsic": "^1.2.6", - "has-tostringtag": "^1.0.2", - "hasown": "^2.0.2" + "d3-time": "1 - 3" }, "engines": { - "node": ">= 0.4" + "node": ">=12" } }, - "node_modules/es-shim-unscopables": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.1.0.tgz", - "integrity": "sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==", - "dev": true, - "license": "MIT", - "dependencies": { - "hasown": "^2.0.2" - }, + "node_modules/d3-timer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz", + "integrity": "sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA==", + "license": "ISC", "engines": { - "node": ">= 0.4" + "node": ">=12" } }, - "node_modules/es-to-primitive": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz", - "integrity": "sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==", - "dev": true, - "license": "MIT", + "node_modules/d3-transition": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/d3-transition/-/d3-transition-3.0.1.tgz", + "integrity": "sha512-ApKvfjsSR6tg06xrL434C0WydLr7JewBB3V+/39RMHsaXTOG0zmt/OAXeng5M5LBm0ojmxJrpomQVZ1aPvBL4w==", + "license": "ISC", "dependencies": { - "is-callable": "^1.2.7", - "is-date-object": "^1.0.5", - "is-symbol": "^1.0.4" + "d3-color": "1 - 3", + "d3-dispatch": "1 - 3", + "d3-ease": "1 - 3", + "d3-interpolate": "1 - 3", + "d3-timer": "1 - 3" }, "engines": { - "node": ">= 0.4" + "node": ">=12" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "peerDependencies": { + "d3-selection": "2 - 3" } }, - "node_modules/esast-util-from-estree": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/esast-util-from-estree/-/esast-util-from-estree-2.0.0.tgz", - "integrity": "sha512-4CyanoAudUSBAn5K13H4JhsMH6L9ZP7XbLVe/dKybkxMO7eDyLsT8UHl9TRNrU2Gr9nz+FovfSIjuXWJ81uVwQ==", - "license": "MIT", + "node_modules/d3-zoom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/d3-zoom/-/d3-zoom-3.0.0.tgz", + "integrity": "sha512-b8AmV3kfQaqWAuacbPuNbL6vahnOJflOhexLzMMNLga62+/nh0JzvJ0aO/5a5MVgUFGS7Hu1P9P03o3fJkDCyw==", + "license": "ISC", "dependencies": { - "@types/estree-jsx": "^1.0.0", - "devlop": "^1.0.0", - "estree-util-visit": "^2.0.0", - "unist-util-position-from-estree": "^2.0.0" + "d3-dispatch": "1 - 3", + "d3-drag": "2 - 3", + "d3-interpolate": "1 - 3", + "d3-selection": "2 - 3", + "d3-transition": "2 - 3" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "engines": { + "node": ">=12" } }, - "node_modules/esast-util-from-js": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/esast-util-from-js/-/esast-util-from-js-2.0.1.tgz", - "integrity": "sha512-8Ja+rNJ0Lt56Pcf3TAmpBZjmx8ZcK5Ts4cAzIOjsjevg9oSXJnl6SUQ2EevU8tv3h6ZLWmoKL5H4fgWvdvfETw==", + "node_modules/dagre-d3-es": { + "version": "7.0.11", + "resolved": "https://registry.npmjs.org/dagre-d3-es/-/dagre-d3-es-7.0.11.tgz", + "integrity": "sha512-tvlJLyQf834SylNKax8Wkzco/1ias1OPw8DcUMDE7oUIoSEW25riQVuiu/0OWEFqT0cxHT3Pa9/D82Jr47IONw==", "license": "MIT", "dependencies": { - "@types/estree-jsx": "^1.0.0", - "acorn": "^8.0.0", - "esast-util-from-estree": "^2.0.0", - "vfile-message": "^4.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "d3": "^7.9.0", + "lodash-es": "^4.17.21" } }, - "node_modules/esbuild": { - "version": "0.24.2", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.24.2.tgz", - "integrity": "sha512-+9egpBW8I3CD5XPe0n6BfT5fxLzxrlDzqydF3aviG+9ni1lDC/OvMHcxqEFV0+LANZG5R1bFMWfUrjVsdwxJvA==", + "node_modules/damerau-levenshtein": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", + "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==", + "dev": true, + "license": "BSD-2-Clause" + }, + "node_modules/data-uri-to-buffer": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-2.0.2.tgz", + "integrity": "sha512-ND9qDTLc6diwj+Xe5cdAgVTbLVdXbtxTJRXRhli8Mowuaan+0EJOtdqJ0QCHNSSPyoXGx9HX2/VMnKeC34AChA==", + "dev": true, + "license": "MIT" + }, + "node_modules/data-view-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", + "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==", "dev": true, - "hasInstallScript": true, "license": "MIT", - "bin": { - "esbuild": "bin/esbuild" + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" }, "engines": { - "node": ">=18" + "node": ">= 0.4" }, - "optionalDependencies": { - "@esbuild/aix-ppc64": "0.24.2", - "@esbuild/android-arm": "0.24.2", - "@esbuild/android-arm64": "0.24.2", - "@esbuild/android-x64": "0.24.2", - "@esbuild/darwin-arm64": "0.24.2", - "@esbuild/darwin-x64": "0.24.2", - "@esbuild/freebsd-arm64": "0.24.2", - "@esbuild/freebsd-x64": "0.24.2", - "@esbuild/linux-arm": "0.24.2", - "@esbuild/linux-arm64": "0.24.2", - "@esbuild/linux-ia32": "0.24.2", - "@esbuild/linux-loong64": "0.24.2", - "@esbuild/linux-mips64el": "0.24.2", - "@esbuild/linux-ppc64": "0.24.2", - "@esbuild/linux-riscv64": "0.24.2", - "@esbuild/linux-s390x": "0.24.2", - "@esbuild/linux-x64": "0.24.2", - "@esbuild/netbsd-arm64": "0.24.2", - "@esbuild/netbsd-x64": "0.24.2", - "@esbuild/openbsd-arm64": "0.24.2", - "@esbuild/openbsd-x64": "0.24.2", - "@esbuild/sunos-x64": "0.24.2", - "@esbuild/win32-arm64": "0.24.2", - "@esbuild/win32-ia32": "0.24.2", - "@esbuild/win32-x64": "0.24.2" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/escape-html": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", - "dev": true, - "license": "MIT" - }, - "node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "node_modules/data-view-byte-length": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz", + "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==", "dev": true, "license": "MIT", + "dependencies": { + "call-bound": "^1.0.3", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.2" + }, "engines": { - "node": ">=10" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/inspect-js" } }, - "node_modules/eslint": { - "version": "8.57.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.1.tgz", - "integrity": "sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==", - "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.", + "node_modules/data-view-byte-offset": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz", + "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==", "dev": true, "license": "MIT", "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.4", - "@eslint/js": "8.57.1", - "@humanwhocodes/config-array": "^0.13.0", - "@humanwhocodes/module-importer": "^1.0.1", - "@nodelib/fs.walk": "^1.2.8", - "@ungap/structured-clone": "^1.2.0", - "ajv": "^6.12.4", - "chalk": "^4.0.0", - "cross-spawn": "^7.0.2", - "debug": "^4.3.2", - "doctrine": "^3.0.0", - "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.2", - "eslint-visitor-keys": "^3.4.3", - "espree": "^9.6.1", - "esquery": "^1.4.2", - "esutils": "^2.0.2", - "fast-deep-equal": "^3.1.3", - "file-entry-cache": "^6.0.1", - "find-up": "^5.0.0", - "glob-parent": "^6.0.2", - "globals": "^13.19.0", - "graphemer": "^1.4.0", - "ignore": "^5.2.0", - "imurmurhash": "^0.1.4", - "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", - "js-yaml": "^4.1.0", - "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", - "lodash.merge": "^4.6.2", - "minimatch": "^3.1.2", - "natural-compare": "^1.4.0", - "optionator": "^0.9.3", - "strip-ansi": "^6.0.1", - "text-table": "^0.2.0" - }, - "bin": { - "eslint": "bin/eslint.js" + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">= 0.4" }, "funding": { - "url": "https://opencollective.com/eslint" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-config-next": { - "version": "15.1.6", - "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-15.1.6.tgz", - "integrity": "sha512-Wd1uy6y7nBbXUSg9QAuQ+xYEKli5CgUhLjz1QHW11jLDis5vK5XB3PemL6jEmy7HrdhaRFDz+GTZ/3FoH+EUjg==", - "dev": true, + "node_modules/dayjs": { + "version": "1.11.13", + "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.13.tgz", + "integrity": "sha512-oaMBel6gjolK862uaPQOVTA7q3TZhuSvuMQAAglQDOWYO9A91IrAOUJEyKVlqJlHE0vq5p5UXxzdPfMH/x6xNg==", + "license": "MIT" + }, + "node_modules/debug": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", + "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", "license": "MIT", "dependencies": { - "@next/eslint-plugin-next": "15.1.6", - "@rushstack/eslint-patch": "^1.10.3", - "@typescript-eslint/eslint-plugin": "^5.4.2 || ^6.0.0 || ^7.0.0 || ^8.0.0", - "@typescript-eslint/parser": "^5.4.2 || ^6.0.0 || ^7.0.0 || ^8.0.0", - "eslint-import-resolver-node": "^0.3.6", - "eslint-import-resolver-typescript": "^3.5.2", - "eslint-plugin-import": "^2.31.0", - "eslint-plugin-jsx-a11y": "^6.10.0", - "eslint-plugin-react": "^7.37.0", - "eslint-plugin-react-hooks": "^5.0.0" + "ms": "^2.1.3" }, - "peerDependencies": { - "eslint": "^7.23.0 || ^8.0.0 || ^9.0.0", - "typescript": ">=3.3.1" + "engines": { + "node": ">=6.0" }, "peerDependenciesMeta": { - "typescript": { + "supports-color": { "optional": true } } }, - "node_modules/eslint-import-resolver-node": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", - "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", - "dev": true, + "node_modules/decode-named-character-reference": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.0.2.tgz", + "integrity": "sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==", "license": "MIT", "dependencies": { - "debug": "^3.2.7", - "is-core-module": "^2.13.0", - "resolve": "^1.22.4" + "character-entities": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/eslint-import-resolver-node/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", "dev": true, - "license": "MIT", - "dependencies": { - "ms": "^2.1.1" - } + "license": "MIT" }, - "node_modules/eslint-import-resolver-typescript": { - "version": "3.8.3", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.8.3.tgz", - "integrity": "sha512-A0bu4Ks2QqDWNpeEgTQMPTngaMhuDu4yv6xpftBMAf+1ziXnpx+eSR1WRfoPTe2BAiAjHFZ7kSNx1fvr5g5pmQ==", + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "@nolyfill/is-core-module": "1.0.39", - "debug": "^4.3.7", - "enhanced-resolve": "^5.15.0", - "get-tsconfig": "^4.10.0", - "is-bun-module": "^1.0.2", - "stable-hash": "^0.0.4", - "tinyglobby": "^0.2.12" + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" }, "engines": { - "node": "^14.18.0 || >=16.0.0" + "node": ">= 0.4" }, "funding": { - "url": "https://opencollective.com/unts/projects/eslint-import-resolver-ts" - }, - "peerDependencies": { - "eslint": "*", - "eslint-plugin-import": "*", - "eslint-plugin-import-x": "*" - }, - "peerDependenciesMeta": { - "eslint-plugin-import": { - "optional": true - }, - "eslint-plugin-import-x": { - "optional": true - } + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-module-utils": { - "version": "2.12.0", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.0.tgz", - "integrity": "sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg==", + "node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", "dev": true, "license": "MIT", "dependencies": { - "debug": "^3.2.7" + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" }, "engines": { - "node": ">=4" + "node": ">= 0.4" }, - "peerDependenciesMeta": { - "eslint": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-module-utils/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "node_modules/defu": { + "version": "6.1.4", + "resolved": "https://registry.npmjs.org/defu/-/defu-6.1.4.tgz", + "integrity": "sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==", "dev": true, - "license": "MIT", + "license": "MIT" + }, + "node_modules/delaunator": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/delaunator/-/delaunator-5.0.1.tgz", + "integrity": "sha512-8nvh+XBe96aCESrGOqMp/84b13H9cdKbG5P2ejQCh4d4sK9RL4371qou9drQjMhvnPmhWl5hnmqbEE0fXr9Xnw==", + "license": "ISC", "dependencies": { - "ms": "^2.1.1" + "robust-predicates": "^3.0.2" } }, - "node_modules/eslint-plugin-import": { - "version": "2.31.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.31.0.tgz", - "integrity": "sha512-ixmkI62Rbc2/w8Vfxyh1jQRTdRTF52VxwRVHl/ykPAmqG+Nb7/kNn+byLP0LxPgI7zWA16Jt82SybJInmMia3A==", + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", "dev": true, "license": "MIT", - "dependencies": { - "@rtsao/scc": "^1.1.0", - "array-includes": "^3.1.8", - "array.prototype.findlastindex": "^1.2.5", - "array.prototype.flat": "^1.3.2", - "array.prototype.flatmap": "^1.3.2", - "debug": "^3.2.7", - "doctrine": "^2.1.0", - "eslint-import-resolver-node": "^0.3.9", - "eslint-module-utils": "^2.12.0", - "hasown": "^2.0.2", - "is-core-module": "^2.15.1", - "is-glob": "^4.0.3", - "minimatch": "^3.1.2", - "object.fromentries": "^2.0.8", - "object.groupby": "^1.0.3", - "object.values": "^1.2.0", - "semver": "^6.3.1", - "string.prototype.trimend": "^1.0.8", - "tsconfig-paths": "^3.15.0" - }, "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9" + "node": ">= 0.8" } }, - "node_modules/eslint-plugin-import/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, + "node_modules/dequal": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", + "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "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==", + "devOptional": true, + "license": "Apache-2.0", + "engines": { + "node": ">=8" + } + }, + "node_modules/detect-node-es": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/detect-node-es/-/detect-node-es-1.1.0.tgz", + "integrity": "sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==", + "license": "MIT" + }, + "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==", "license": "MIT", "dependencies": { - "ms": "^2.1.1" + "dequal": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/eslint-plugin-import/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", "dev": true, "license": "Apache-2.0", "dependencies": { "esutils": "^2.0.2" }, "engines": { - "node": ">=0.10.0" + "node": ">=6.0.0" } }, - "node_modules/eslint-plugin-import/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "node_modules/dompurify": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.2.6.tgz", + "integrity": "sha512-/2GogDQlohXPZe6D6NOgQvXLPSYBqIWMnZ8zzOhn09REE4eyAzb+Hed3jhoM9OkuaJ8P6ZGTTVWQKAi8ieIzfQ==", + "license": "(MPL-2.0 OR Apache-2.0)", + "optionalDependencies": { + "@types/trusted-types": "^2.0.7" + } + }, + "node_modules/dotenv": { + "version": "16.4.7", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.7.tgz", + "integrity": "sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==", "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" + "license": "BSD-2-Clause", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" } }, - "node_modules/eslint-plugin-jsx-a11y": { - "version": "6.10.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.10.2.tgz", - "integrity": "sha512-scB3nz4WmG75pV8+3eRUQOHZlNSUhFNq37xnpgRkCCELU3XMvXAxLk1eqWWyE22Ki4Q01Fnsw9BA3cJHDPgn2Q==", + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", "dev": true, "license": "MIT", "dependencies": { - "aria-query": "^5.3.2", - "array-includes": "^3.1.8", - "array.prototype.flatmap": "^1.3.2", - "ast-types-flow": "^0.0.8", - "axe-core": "^4.10.0", - "axobject-query": "^4.1.0", - "damerau-levenshtein": "^1.0.8", - "emoji-regex": "^9.2.2", - "hasown": "^2.0.2", - "jsx-ast-utils": "^3.3.5", - "language-tags": "^1.0.9", - "minimatch": "^3.1.2", - "object.fromentries": "^2.0.8", - "safe-regex-test": "^1.0.3", - "string.prototype.includes": "^2.0.1" + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" }, "engines": { - "node": ">=4.0" - }, - "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9" + "node": ">= 0.4" } }, - "node_modules/eslint-plugin-react": { - "version": "7.37.4", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.4.tgz", - "integrity": "sha512-BGP0jRmfYyvOyvMoRX/uoUeW+GqNj9y16bPQzqAHf3AYII/tDs+jMN0dBVkl88/OZwNGwrVFxE7riHsXVfy/LQ==", + "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/eciesjs": { + "version": "0.4.14", + "resolved": "https://registry.npmjs.org/eciesjs/-/eciesjs-0.4.14.tgz", + "integrity": "sha512-eJAgf9pdv214Hn98FlUzclRMYWF7WfoLlkS9nWMTm1qcCwn6Ad4EGD9lr9HXMBfSrZhYQujRE+p0adPRkctC6A==", "dev": true, "license": "MIT", "dependencies": { - "array-includes": "^3.1.8", - "array.prototype.findlast": "^1.2.5", - "array.prototype.flatmap": "^1.3.3", - "array.prototype.tosorted": "^1.1.4", - "doctrine": "^2.1.0", - "es-iterator-helpers": "^1.2.1", - "estraverse": "^5.3.0", - "hasown": "^2.0.2", - "jsx-ast-utils": "^2.4.1 || ^3.0.0", - "minimatch": "^3.1.2", - "object.entries": "^1.1.8", - "object.fromentries": "^2.0.8", - "object.values": "^1.2.1", - "prop-types": "^15.8.1", - "resolve": "^2.0.0-next.5", - "semver": "^6.3.1", - "string.prototype.matchall": "^4.0.12", - "string.prototype.repeat": "^1.0.0" + "@ecies/ciphers": "^0.2.2", + "@noble/ciphers": "^1.0.0", + "@noble/curves": "^1.6.0", + "@noble/hashes": "^1.5.0" }, "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7" + "bun": ">=1", + "deno": ">=2", + "node": ">=16" } }, - "node_modules/eslint-plugin-react-hooks": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-5.1.0.tgz", - "integrity": "sha512-mpJRtPgHN2tNAvZ35AMfqeB3Xqeo273QxrHJsbBEPWODRM4r0yB6jfoROqKEYrOn27UtRPpcpHc2UqyBSuUNTw==", + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", + "dev": true, + "license": "MIT" + }, + "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/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==", + "license": "MIT" + }, + "node_modules/encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", "dev": true, "license": "MIT", "engines": { - "node": ">=10" - }, - "peerDependencies": { - "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0" + "node": ">= 0.8" } }, - "node_modules/eslint-plugin-react/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "node_modules/enhanced-resolve": { + "version": "5.18.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.1.tgz", + "integrity": "sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg==", "dev": true, - "license": "Apache-2.0", + "license": "MIT", "dependencies": { - "esutils": "^2.0.2" + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=10.13.0" } }, - "node_modules/eslint-plugin-react/node_modules/resolve": { - "version": "2.0.0-next.5", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", - "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", + "node_modules/enquirer": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.4.1.tgz", + "integrity": "sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==", "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" + "ansi-colors": "^4.1.1", + "strip-ansi": "^6.0.1" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/eslint-plugin-react/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" + "engines": { + "node": ">=8.6" } }, - "node_modules/eslint-scope": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", - "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "node_modules/es-abstract": { + "version": "1.23.9", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.9.tgz", + "integrity": "sha512-py07lI0wjxAC/DcfK1S6G7iANonniZwTISvdPzk9hzeH0IZIshbuuFxLIU96OyF89Yb9hiqWn8M/bY83KY5vzA==", "dev": true, - "license": "BSD-2-Clause", + "license": "MIT", "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" + "array-buffer-byte-length": "^1.0.2", + "arraybuffer.prototype.slice": "^1.0.4", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "data-view-buffer": "^1.0.2", + "data-view-byte-length": "^1.0.2", + "data-view-byte-offset": "^1.0.1", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-set-tostringtag": "^2.1.0", + "es-to-primitive": "^1.3.0", + "function.prototype.name": "^1.1.8", + "get-intrinsic": "^1.2.7", + "get-proto": "^1.0.0", + "get-symbol-description": "^1.1.0", + "globalthis": "^1.0.4", + "gopd": "^1.2.0", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "internal-slot": "^1.1.0", + "is-array-buffer": "^3.0.5", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.2", + "is-regex": "^1.2.1", + "is-shared-array-buffer": "^1.0.4", + "is-string": "^1.1.1", + "is-typed-array": "^1.1.15", + "is-weakref": "^1.1.0", + "math-intrinsics": "^1.1.0", + "object-inspect": "^1.13.3", + "object-keys": "^1.1.1", + "object.assign": "^4.1.7", + "own-keys": "^1.0.1", + "regexp.prototype.flags": "^1.5.3", + "safe-array-concat": "^1.1.3", + "safe-push-apply": "^1.0.0", + "safe-regex-test": "^1.1.0", + "set-proto": "^1.0.0", + "string.prototype.trim": "^1.2.10", + "string.prototype.trimend": "^1.0.9", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.3", + "typed-array-byte-length": "^1.0.3", + "typed-array-byte-offset": "^1.0.4", + "typed-array-length": "^1.0.7", + "unbox-primitive": "^1.1.0", + "which-typed-array": "^1.1.18" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">= 0.4" }, "funding": { - "url": "https://opencollective.com/eslint" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", "dev": true, - "license": "Apache-2.0", + "license": "MIT", "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "node": ">= 0.4" } }, - "node_modules/espree": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", - "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "acorn": "^8.9.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.1" - }, + "license": "MIT", "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "node": ">= 0.4" } }, - "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==", - "license": "BSD-2-Clause", - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" + "node_modules/es-iterator-helpers": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.2.1.tgz", + "integrity": "sha512-uDn+FE1yrDzyC0pCo961B2IHbdM8y/ACZsKD4dG6WqrjV53BADjwa7D+1aom2rsNVfLyDgU/eigvlJGJ08OQ4w==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.8", + "call-bound": "^1.0.3", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.6", + "es-errors": "^1.3.0", + "es-set-tostringtag": "^2.0.3", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.6", + "globalthis": "^1.0.4", + "gopd": "^1.2.0", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.2.0", + "has-symbols": "^1.1.0", + "internal-slot": "^1.1.0", + "iterator.prototype": "^1.1.4", + "safe-array-concat": "^1.1.3" }, "engines": { - "node": ">=4" + "node": ">= 0.4" } }, - "node_modules/esquery": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", - "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", + "node_modules/es-object-atoms": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", "dev": true, - "license": "BSD-3-Clause", + "license": "MIT", "dependencies": { - "estraverse": "^5.1.0" + "es-errors": "^1.3.0" }, "engines": { - "node": ">=0.10" + "node": ">= 0.4" } }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "node_modules/es-set-tostringtag": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", "dev": true, - "license": "BSD-2-Clause", + "license": "MIT", "dependencies": { - "estraverse": "^5.2.0" + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" }, "engines": { - "node": ">=4.0" + "node": ">= 0.4" } }, - "node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "node_modules/es-shim-unscopables": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.1.0.tgz", + "integrity": "sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==", "dev": true, - "license": "BSD-2-Clause", + "license": "MIT", + "dependencies": { + "hasown": "^2.0.2" + }, "engines": { - "node": ">=4.0" + "node": ">= 0.4" } }, - "node_modules/estree-util-attach-comments": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/estree-util-attach-comments/-/estree-util-attach-comments-3.0.0.tgz", - "integrity": "sha512-cKUwm/HUcTDsYh/9FgnuFqpfquUbwIqwKM26BVCGDPVgvaCl/nDCCjUfiLlx6lsEZ3Z4RFxNbOQ60pkaEwFxGw==", + "node_modules/es-to-primitive": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.0.tgz", + "integrity": "sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==", + "dev": true, "license": "MIT", "dependencies": { - "@types/estree": "^1.0.0" + "is-callable": "^1.2.7", + "is-date-object": "^1.0.5", + "is-symbol": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/estree-util-build-jsx": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/estree-util-build-jsx/-/estree-util-build-jsx-3.0.1.tgz", - "integrity": "sha512-8U5eiL6BTrPxp/CHbs2yMgP8ftMhR5ww1eIKoWRMlqvltHF8fZn5LRDvTKuxD3DUn+shRbLGqXemcP51oFCsGQ==", + "node_modules/esast-util-from-estree": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/esast-util-from-estree/-/esast-util-from-estree-2.0.0.tgz", + "integrity": "sha512-4CyanoAudUSBAn5K13H4JhsMH6L9ZP7XbLVe/dKybkxMO7eDyLsT8UHl9TRNrU2Gr9nz+FovfSIjuXWJ81uVwQ==", "license": "MIT", "dependencies": { "@types/estree-jsx": "^1.0.0", "devlop": "^1.0.0", - "estree-util-is-identifier-name": "^3.0.0", - "estree-walker": "^3.0.0" + "estree-util-visit": "^2.0.0", + "unist-util-position-from-estree": "^2.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/estree-util-is-identifier-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/estree-util-is-identifier-name/-/estree-util-is-identifier-name-3.0.0.tgz", - "integrity": "sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==", + "node_modules/esast-util-from-js": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/esast-util-from-js/-/esast-util-from-js-2.0.1.tgz", + "integrity": "sha512-8Ja+rNJ0Lt56Pcf3TAmpBZjmx8ZcK5Ts4cAzIOjsjevg9oSXJnl6SUQ2EevU8tv3h6ZLWmoKL5H4fgWvdvfETw==", "license": "MIT", + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "acorn": "^8.0.0", + "esast-util-from-estree": "^2.0.0", + "vfile-message": "^4.0.0" + }, "funding": { "type": "opencollective", "url": "https://opencollective.com/unified" } }, - "node_modules/estree-util-scope": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/estree-util-scope/-/estree-util-scope-1.0.0.tgz", - "integrity": "sha512-2CAASclonf+JFWBNJPndcOpA8EMJwa0Q8LUFJEKqXLW6+qBvbFZuF5gItbQOs/umBUkjviCSDCbBwU2cXbmrhQ==", + "node_modules/esbuild": { + "version": "0.25.4", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.4.tgz", + "integrity": "sha512-8pgjLUcUjcgDg+2Q4NYXnPbo/vncAY4UmyaCm0jZevERqCHZIaWwdJHkf8XQtu4AxSKCdvrUbT0XUr1IdZzI8Q==", + "hasInstallScript": true, "license": "MIT", - "dependencies": { - "@types/estree": "^1.0.0", - "devlop": "^1.0.0" + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.25.4", + "@esbuild/android-arm": "0.25.4", + "@esbuild/android-arm64": "0.25.4", + "@esbuild/android-x64": "0.25.4", + "@esbuild/darwin-arm64": "0.25.4", + "@esbuild/darwin-x64": "0.25.4", + "@esbuild/freebsd-arm64": "0.25.4", + "@esbuild/freebsd-x64": "0.25.4", + "@esbuild/linux-arm": "0.25.4", + "@esbuild/linux-arm64": "0.25.4", + "@esbuild/linux-ia32": "0.25.4", + "@esbuild/linux-loong64": "0.25.4", + "@esbuild/linux-mips64el": "0.25.4", + "@esbuild/linux-ppc64": "0.25.4", + "@esbuild/linux-riscv64": "0.25.4", + "@esbuild/linux-s390x": "0.25.4", + "@esbuild/linux-x64": "0.25.4", + "@esbuild/netbsd-arm64": "0.25.4", + "@esbuild/netbsd-x64": "0.25.4", + "@esbuild/openbsd-arm64": "0.25.4", + "@esbuild/openbsd-x64": "0.25.4", + "@esbuild/sunos-x64": "0.25.4", + "@esbuild/win32-arm64": "0.25.4", + "@esbuild/win32-ia32": "0.25.4", + "@esbuild/win32-x64": "0.25.4" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", + "dev": true, + "license": "MIT" + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/estree-util-to-js": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/estree-util-to-js/-/estree-util-to-js-2.0.0.tgz", - "integrity": "sha512-WDF+xj5rRWmD5tj6bIqRi6CkLIXbbNQUcxQHzGysQzvHmdYG2G7p/Tf0J0gpxGgkeMZNTIjT/AoSvC9Xehcgdg==", + "node_modules/eslint": { + "version": "8.57.1", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.1.tgz", + "integrity": "sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==", + "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.", + "dev": true, "license": "MIT", "dependencies": { - "@types/estree-jsx": "^1.0.0", - "astring": "^1.8.0", - "source-map": "^0.7.0" + "@eslint-community/eslint-utils": "^4.2.0", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.57.1", + "@humanwhocodes/config-array": "^0.13.0", + "@humanwhocodes/module-importer": "^1.0.1", + "@nodelib/fs.walk": "^1.2.8", + "@ungap/structured-clone": "^1.2.0", + "ajv": "^6.12.4", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.3.2", + "doctrine": "^3.0.0", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", + "esquery": "^1.4.2", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "find-up": "^5.0.0", + "glob-parent": "^6.0.2", + "globals": "^13.19.0", + "graphemer": "^1.4.0", + "ignore": "^5.2.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "is-path-inside": "^3.0.3", + "js-yaml": "^4.1.0", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.1.2", + "natural-compare": "^1.4.0", + "optionator": "^0.9.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "bin": { + "eslint": "bin/eslint.js" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/estree-util-value-to-estree": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/estree-util-value-to-estree/-/estree-util-value-to-estree-3.3.3.tgz", - "integrity": "sha512-Db+m1WSD4+mUO7UgMeKkAwdbfNWwIxLt48XF2oFU9emPfXkIu+k5/nlOj313v7wqtAPo0f9REhUvznFrPkG8CQ==", - "license": "MIT", - "dependencies": { - "@types/estree": "^1.0.0" + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/remcohaszing" + "url": "https://opencollective.com/eslint" } }, - "node_modules/estree-util-visit": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/estree-util-visit/-/estree-util-visit-2.0.0.tgz", - "integrity": "sha512-m5KgiH85xAhhW8Wta0vShLcUvOsh3LLPI2YVwcbio1l7E09NTLL1EyMZFM1OyWowoH0skScNbhOPl4kcBgzTww==", + "node_modules/eslint-config-next": { + "version": "15.1.6", + "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-15.1.6.tgz", + "integrity": "sha512-Wd1uy6y7nBbXUSg9QAuQ+xYEKli5CgUhLjz1QHW11jLDis5vK5XB3PemL6jEmy7HrdhaRFDz+GTZ/3FoH+EUjg==", + "dev": true, "license": "MIT", "dependencies": { - "@types/estree-jsx": "^1.0.0", - "@types/unist": "^3.0.0" + "@next/eslint-plugin-next": "15.1.6", + "@rushstack/eslint-patch": "^1.10.3", + "@typescript-eslint/eslint-plugin": "^5.4.2 || ^6.0.0 || ^7.0.0 || ^8.0.0", + "@typescript-eslint/parser": "^5.4.2 || ^6.0.0 || ^7.0.0 || ^8.0.0", + "eslint-import-resolver-node": "^0.3.6", + "eslint-import-resolver-typescript": "^3.5.2", + "eslint-plugin-import": "^2.31.0", + "eslint-plugin-jsx-a11y": "^6.10.0", + "eslint-plugin-react": "^7.37.0", + "eslint-plugin-react-hooks": "^5.0.0" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" + "peerDependencies": { + "eslint": "^7.23.0 || ^8.0.0 || ^9.0.0", + "typescript": ">=3.3.1" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/estree-walker": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", - "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", + "node_modules/eslint-import-resolver-node": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", + "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", + "dev": true, "license": "MIT", "dependencies": { - "@types/estree": "^1.0.0" - } - }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=0.10.0" + "debug": "^3.2.7", + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" } }, - "node_modules/etag": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "node_modules/eslint-import-resolver-node/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "license": "MIT", - "engines": { - "node": ">= 0.6" + "dependencies": { + "ms": "^2.1.1" } }, - "node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "node_modules/eslint-import-resolver-typescript": { + "version": "3.8.3", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.8.3.tgz", + "integrity": "sha512-A0bu4Ks2QqDWNpeEgTQMPTngaMhuDu4yv6xpftBMAf+1ziXnpx+eSR1WRfoPTe2BAiAjHFZ7kSNx1fvr5g5pmQ==", "dev": true, - "license": "MIT", + "license": "ISC", "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" + "@nolyfill/is-core-module": "1.0.39", + "debug": "^4.3.7", + "enhanced-resolve": "^5.15.0", + "get-tsconfig": "^4.10.0", + "is-bun-module": "^1.0.2", + "stable-hash": "^0.0.4", + "tinyglobby": "^0.2.12" }, "engines": { - "node": ">=10" + "node": "^14.18.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" + "url": "https://opencollective.com/unts/projects/eslint-import-resolver-ts" + }, + "peerDependencies": { + "eslint": "*", + "eslint-plugin-import": "*", + "eslint-plugin-import-x": "*" + }, + "peerDependenciesMeta": { + "eslint-plugin-import": { + "optional": true + }, + "eslint-plugin-import-x": { + "optional": true + } } }, - "node_modules/exit-hook": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/exit-hook/-/exit-hook-2.2.1.tgz", - "integrity": "sha512-eNTPlAD67BmP31LDINZ3U7HSF8l57TxOY2PmBJ1shpCvpnxBF93mWCE8YHBnXs8qiUZJc9WDcWIeC3a2HIAMfw==", + "node_modules/eslint-module-utils": { + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.12.0.tgz", + "integrity": "sha512-wALZ0HFoytlyh/1+4wuZ9FJCD/leWHQzzrxJ8+rebyReSLk7LApMyd3WJaLVoN+D5+WIdJyDK1c6JnE65V4Zyg==", "dev": true, "license": "MIT", + "dependencies": { + "debug": "^3.2.7" + }, "engines": { - "node": ">=6" + "node": ">=4" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "peerDependenciesMeta": { + "eslint": { + "optional": true + } } }, - "node_modules/express": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/express/-/express-5.0.1.tgz", - "integrity": "sha512-ORF7g6qGnD+YtUG9yx4DFoqCShNMmUKiXuT5oWMHiOvt/4WFbHC6yCwQMTSBMno7AqntNCAzzcnnjowRkTL9eQ==", + "node_modules/eslint-module-utils/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "license": "MIT", "dependencies": { - "accepts": "^2.0.0", - "body-parser": "^2.0.1", - "content-disposition": "^1.0.0", - "content-type": "~1.0.4", - "cookie": "0.7.1", - "cookie-signature": "^1.2.1", - "debug": "4.3.6", - "depd": "2.0.0", - "encodeurl": "~2.0.0", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "^2.0.0", - "fresh": "2.0.0", - "http-errors": "2.0.0", - "merge-descriptors": "^2.0.0", - "methods": "~1.1.2", - "mime-types": "^3.0.0", - "on-finished": "2.4.1", - "once": "1.4.0", - "parseurl": "~1.3.3", - "proxy-addr": "~2.0.7", - "qs": "6.13.0", - "range-parser": "~1.2.1", - "router": "^2.0.0", - "safe-buffer": "5.2.1", - "send": "^1.1.0", - "serve-static": "^2.1.0", - "setprototypeof": "1.2.0", - "statuses": "2.0.1", - "type-is": "^2.0.0", - "utils-merge": "1.0.1", - "vary": "~1.1.2" - }, - "engines": { - "node": ">= 18" + "ms": "^2.1.1" } }, - "node_modules/express/node_modules/debug": { - "version": "4.3.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.6.tgz", - "integrity": "sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==", + "node_modules/eslint-plugin-import": { + "version": "2.31.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.31.0.tgz", + "integrity": "sha512-ixmkI62Rbc2/w8Vfxyh1jQRTdRTF52VxwRVHl/ykPAmqG+Nb7/kNn+byLP0LxPgI7zWA16Jt82SybJInmMia3A==", "dev": true, "license": "MIT", "dependencies": { - "ms": "2.1.2" + "@rtsao/scc": "^1.1.0", + "array-includes": "^3.1.8", + "array.prototype.findlastindex": "^1.2.5", + "array.prototype.flat": "^1.3.2", + "array.prototype.flatmap": "^1.3.2", + "debug": "^3.2.7", + "doctrine": "^2.1.0", + "eslint-import-resolver-node": "^0.3.9", + "eslint-module-utils": "^2.12.0", + "hasown": "^2.0.2", + "is-core-module": "^2.15.1", + "is-glob": "^4.0.3", + "minimatch": "^3.1.2", + "object.fromentries": "^2.0.8", + "object.groupby": "^1.0.3", + "object.values": "^1.2.0", + "semver": "^6.3.1", + "string.prototype.trimend": "^1.0.8", + "tsconfig-paths": "^3.15.0" }, "engines": { - "node": ">=6.0" + "node": ">=4" }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } + "peerDependencies": { + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9" } }, - "node_modules/express/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true, - "license": "MIT" - }, - "node_modules/exsolve": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/exsolve/-/exsolve-1.0.4.tgz", - "integrity": "sha512-xsZH6PXaER4XoV+NiT7JHp1bJodJVT+cxeSH1G0f0tlT0lJqYuHUP3bUx2HtfTDvOagMINYp8rsqusxud3RXhw==", + "node_modules/eslint-plugin-import/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, - "license": "MIT" - }, - "node_modules/extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "license": "MIT" - }, - "node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", "license": "MIT", "dependencies": { - "is-extendable": "^0.1.0" + "ms": "^2.1.1" + } + }, + "node_modules/eslint-plugin-import/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "esutils": "^2.0.2" }, "engines": { "node": ">=0.10.0" } }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "node_modules/eslint-plugin-import/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, - "license": "MIT" + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } }, - "node_modules/fast-glob": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", - "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", + "node_modules/eslint-plugin-jsx-a11y": { + "version": "6.10.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.10.2.tgz", + "integrity": "sha512-scB3nz4WmG75pV8+3eRUQOHZlNSUhFNq37xnpgRkCCELU3XMvXAxLk1eqWWyE22Ki4Q01Fnsw9BA3cJHDPgn2Q==", "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" + "aria-query": "^5.3.2", + "array-includes": "^3.1.8", + "array.prototype.flatmap": "^1.3.2", + "ast-types-flow": "^0.0.8", + "axe-core": "^4.10.0", + "axobject-query": "^4.1.0", + "damerau-levenshtein": "^1.0.8", + "emoji-regex": "^9.2.2", + "hasown": "^2.0.2", + "jsx-ast-utils": "^3.3.5", + "language-tags": "^1.0.9", + "minimatch": "^3.1.2", + "object.fromentries": "^2.0.8", + "safe-regex-test": "^1.0.3", + "string.prototype.includes": "^2.0.1" }, "engines": { - "node": ">=8.6.0" + "node": ">=4.0" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9" } }, - "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==", + "node_modules/eslint-plugin-react": { + "version": "7.37.4", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.37.4.tgz", + "integrity": "sha512-BGP0jRmfYyvOyvMoRX/uoUeW+GqNj9y16bPQzqAHf3AYII/tDs+jMN0dBVkl88/OZwNGwrVFxE7riHsXVfy/LQ==", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "is-glob": "^4.0.1" + "array-includes": "^3.1.8", + "array.prototype.findlast": "^1.2.5", + "array.prototype.flatmap": "^1.3.3", + "array.prototype.tosorted": "^1.1.4", + "doctrine": "^2.1.0", + "es-iterator-helpers": "^1.2.1", + "estraverse": "^5.3.0", + "hasown": "^2.0.2", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "minimatch": "^3.1.2", + "object.entries": "^1.1.8", + "object.fromentries": "^2.0.8", + "object.values": "^1.2.1", + "prop-types": "^15.8.1", + "resolve": "^2.0.0-next.5", + "semver": "^6.3.1", + "string.prototype.matchall": "^4.0.12", + "string.prototype.repeat": "^1.0.0" }, "engines": { - "node": ">= 6" + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7" } }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "node_modules/eslint-plugin-react-hooks": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-5.1.0.tgz", + "integrity": "sha512-mpJRtPgHN2tNAvZ35AMfqeB3Xqeo273QxrHJsbBEPWODRM4r0yB6jfoROqKEYrOn27UtRPpcpHc2UqyBSuUNTw==", "dev": true, - "license": "MIT" + "license": "MIT", + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0" + } }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "node_modules/eslint-plugin-react/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, - "license": "MIT" + "license": "Apache-2.0", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } }, - "node_modules/fast-xml-parser": { - "version": "4.2.5", - "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.2.5.tgz", - "integrity": "sha512-B9/wizE4WngqQftFPmdaMYlXoJlJOYxGQOanC77fq9k8+Z0v5dDSVh+3glErdIROP//s/jgb7ZuxKfB8nVyo0g==", + "node_modules/eslint-plugin-react/node_modules/resolve": { + "version": "2.0.0-next.5", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", + "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", "dev": true, - "funding": [ - { - "type": "paypal", - "url": "https://paypal.me/naturalintelligence" - }, - { - "type": "github", - "url": "https://github.com/sponsors/NaturalIntelligence" - } - ], "license": "MIT", "dependencies": { - "strnum": "^1.0.5" + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" }, "bin": { - "fxparser": "src/cli/cli.js" + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/fastq": { - "version": "1.19.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.0.tgz", - "integrity": "sha512-7SFSRCNjBQIZH/xZR3iy5iQYR8aGBE0h3VG6/cwlbrpdciNYBMotQav8c1XI3HjHH+NikUpP53nPdlZSdWmFzA==", + "node_modules/eslint-plugin-react/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, "license": "ISC", - "dependencies": { - "reusify": "^1.0.4" + "bin": { + "semver": "bin/semver.js" } }, - "node_modules/file-entry-cache": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "node_modules/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", "dev": true, - "license": "MIT", + "license": "BSD-2-Clause", "dependencies": { - "flat-cache": "^3.0.4" + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" }, "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "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==", - "license": "MIT", - "dependencies": { - "to-regex-range": "^5.0.1" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, - "engines": { - "node": ">=8" + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/finalhandler": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-2.1.0.tgz", - "integrity": "sha512-/t88Ty3d5JWQbWYgaOGCCYfXRwV1+be02WqYYlL6h0lEiUAMPM8o8qKGO01YIkOHzka2up08wvgYD0mDiI+q3Q==", + "node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "dev": true, - "license": "MIT", - "dependencies": { - "debug": "^4.4.0", - "encodeurl": "^2.0.0", - "escape-html": "^1.0.3", - "on-finished": "^2.4.1", - "parseurl": "^1.3.3", - "statuses": "^2.0.1" - }, + "license": "Apache-2.0", "engines": { - "node": ">= 0.8" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", "dev": true, - "license": "MIT", + "license": "BSD-2-Clause", "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" }, "engines": { - "node": ">=10" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://opencollective.com/eslint" } }, - "node_modules/flat-cache": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", - "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", - "dev": true, - "license": "MIT", - "dependencies": { - "flatted": "^3.2.9", - "keyv": "^4.5.3", - "rimraf": "^3.0.2" + "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==", + "license": "BSD-2-Clause", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" }, "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/flatted": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", - "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", - "dev": true, - "license": "ISC" + "node": ">=4" + } }, - "node_modules/for-each": { - "version": "0.3.5", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", - "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", + "node_modules/esquery": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", "dev": true, - "license": "MIT", + "license": "BSD-3-Clause", "dependencies": { - "is-callable": "^1.2.7" + "estraverse": "^5.1.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=0.10" } }, - "node_modules/foreground-child": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", - "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, - "license": "ISC", + "license": "BSD-2-Clause", "dependencies": { - "cross-spawn": "^7.0.6", - "signal-exit": "^4.0.1" + "estraverse": "^5.2.0" }, "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" + "node": ">=4.0" } }, - "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==", + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", "dev": true, - "license": "ISC", + "license": "BSD-2-Clause", "engines": { - "node": ">=14" + "node": ">=4.0" + } + }, + "node_modules/estree-util-attach-comments": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/estree-util-attach-comments/-/estree-util-attach-comments-3.0.0.tgz", + "integrity": "sha512-cKUwm/HUcTDsYh/9FgnuFqpfquUbwIqwKM26BVCGDPVgvaCl/nDCCjUfiLlx6lsEZ3Z4RFxNbOQ60pkaEwFxGw==", + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", - "dev": true, + "node_modules/estree-util-build-jsx": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/estree-util-build-jsx/-/estree-util-build-jsx-3.0.1.tgz", + "integrity": "sha512-8U5eiL6BTrPxp/CHbs2yMgP8ftMhR5ww1eIKoWRMlqvltHF8fZn5LRDvTKuxD3DUn+shRbLGqXemcP51oFCsGQ==", "license": "MIT", - "engines": { - "node": ">= 0.6" + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "devlop": "^1.0.0", + "estree-util-is-identifier-name": "^3.0.0", + "estree-walker": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/fresh": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/fresh/-/fresh-2.0.0.tgz", - "integrity": "sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A==", - "dev": true, + "node_modules/estree-util-is-identifier-name": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/estree-util-is-identifier-name/-/estree-util-is-identifier-name-3.0.0.tgz", + "integrity": "sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==", "license": "MIT", - "engines": { - "node": ">= 0.8" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/fs.realpath": { + "node_modules/estree-util-scope": { "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/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "dev": true, - "hasInstallScript": true, + "resolved": "https://registry.npmjs.org/estree-util-scope/-/estree-util-scope-1.0.0.tgz", + "integrity": "sha512-2CAASclonf+JFWBNJPndcOpA8EMJwa0Q8LUFJEKqXLW6+qBvbFZuF5gItbQOs/umBUkjviCSDCbBwU2cXbmrhQ==", "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + "dependencies": { + "@types/estree": "^1.0.0", + "devlop": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/fumadocs-core": { - "version": "15.2.6", - "resolved": "https://registry.npmjs.org/fumadocs-core/-/fumadocs-core-15.2.6.tgz", - "integrity": "sha512-5+Bq8iQGXAQ5K5igw612rzGPdup1bnROWa3F0UbdECsSiSQvNkHLlCL0Hyptvll1NV4zx6YFMf8vQRt1aSt4vA==", + "node_modules/estree-util-to-js": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/estree-util-to-js/-/estree-util-to-js-2.0.0.tgz", + "integrity": "sha512-WDF+xj5rRWmD5tj6bIqRi6CkLIXbbNQUcxQHzGysQzvHmdYG2G7p/Tf0J0gpxGgkeMZNTIjT/AoSvC9Xehcgdg==", "license": "MIT", "dependencies": { - "@formatjs/intl-localematcher": "^0.6.1", - "@orama/orama": "^3.1.4", - "@shikijs/rehype": "^3.2.1", - "@shikijs/transformers": "^3.2.1", - "github-slugger": "^2.0.0", - "hast-util-to-estree": "^3.1.3", - "hast-util-to-jsx-runtime": "^2.3.6", - "image-size": "^2.0.2", - "negotiator": "^1.0.0", - "react-remove-scroll": "^2.6.3", - "remark": "^15.0.0", - "remark-gfm": "^4.0.1", - "scroll-into-view-if-needed": "^3.1.0", - "shiki": "^3.2.1", - "unist-util-visit": "^5.0.0" - }, - "peerDependencies": { - "@oramacloud/client": "1.x.x || 2.x.x", - "algoliasearch": "4.24.0", - "next": "14.x.x || 15.x.x", - "react": "18.x.x || 19.x.x", - "react-dom": "18.x.x || 19.x.x" + "@types/estree-jsx": "^1.0.0", + "astring": "^1.8.0", + "source-map": "^0.7.0" }, - "peerDependenciesMeta": { - "@oramacloud/client": { - "optional": true - }, - "algoliasearch": { - "optional": true - }, - "next": { - "optional": true - }, - "react": { - "optional": true - }, - "react-dom": { - "optional": true - } + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/fumadocs-mdx": { - "version": "11.5.8", - "resolved": "https://registry.npmjs.org/fumadocs-mdx/-/fumadocs-mdx-11.5.8.tgz", - "integrity": "sha512-kzomF+1E9Hx+nwq6HP5bj7quLD/0mkltTZl25nw/D5ubeunvoJQCVb3ofOs3JgO7BatMeXVBucfSSbXZBv1qug==", + "node_modules/estree-util-value-to-estree": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/estree-util-value-to-estree/-/estree-util-value-to-estree-3.3.3.tgz", + "integrity": "sha512-Db+m1WSD4+mUO7UgMeKkAwdbfNWwIxLt48XF2oFU9emPfXkIu+k5/nlOj313v7wqtAPo0f9REhUvznFrPkG8CQ==", "license": "MIT", "dependencies": { - "@mdx-js/mdx": "^3.1.0", - "@standard-schema/spec": "^1.0.0", - "chokidar": "^4.0.3", - "cross-spawn": "^7.0.6", - "esbuild": "^0.25.2", - "estree-util-value-to-estree": "^3.3.2", - "fast-glob": "^3.3.3", - "gray-matter": "^4.0.3", - "lru-cache": "^11.1.0", - "unist-util-visit": "^5.0.0", - "zod": "^3.24.2" - }, - "bin": { - "fumadocs-mdx": "bin.js" - }, - "peerDependencies": { - "@fumadocs/mdx-remote": "^1.2.0", - "fumadocs-core": "^14.0.0 || ^15.0.0", - "next": "14.x.x || 15.x.x" + "@types/estree": "^1.0.0" }, - "peerDependenciesMeta": { - "@fumadocs/mdx-remote": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/remcohaszing" } }, - "node_modules/fumadocs-mdx/node_modules/@esbuild/aix-ppc64": { - "version": "0.25.2", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.2.tgz", - "integrity": "sha512-wCIboOL2yXZym2cgm6mlA742s9QeJ8DjGVaL39dLN4rRwrOgOyYSnOaFPhKZGLb2ngj4EyfAFjsNJwPXZvseag==", - "cpu": [ - "ppc64" - ], + "node_modules/estree-util-visit": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/estree-util-visit/-/estree-util-visit-2.0.0.tgz", + "integrity": "sha512-m5KgiH85xAhhW8Wta0vShLcUvOsh3LLPI2YVwcbio1l7E09NTLL1EyMZFM1OyWowoH0skScNbhOPl4kcBgzTww==", "license": "MIT", - "optional": true, - "os": [ - "aix" - ], - "engines": { - "node": ">=18" + "dependencies": { + "@types/estree-jsx": "^1.0.0", + "@types/unist": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/fumadocs-mdx/node_modules/@esbuild/android-arm": { - "version": "0.25.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.2.tgz", - "integrity": "sha512-NQhH7jFstVY5x8CKbcfa166GoV0EFkaPkCKBQkdPJFvo5u+nGXLEH/ooniLb3QI8Fk58YAx7nsPLozUWfCBOJA==", - "cpu": [ - "arm" - ], + "node_modules/estree-walker": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", + "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", "license": "MIT", - "optional": true, - "os": [ - "android" - ], - "engines": { - "node": ">=18" + "dependencies": { + "@types/estree": "^1.0.0" } }, - "node_modules/fumadocs-mdx/node_modules/@esbuild/android-arm64": { - "version": "0.25.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.2.tgz", - "integrity": "sha512-5ZAX5xOmTligeBaeNEPnPaeEuah53Id2tX4c2CVP3JaROTH+j4fnfHCkr1PjXMd78hMst+TlkfKcW/DlTq0i4w==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "android" - ], + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "license": "BSD-2-Clause", "engines": { - "node": ">=18" + "node": ">=0.10.0" } }, - "node_modules/fumadocs-mdx/node_modules/@esbuild/android-x64": { - "version": "0.25.2", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.2.tgz", - "integrity": "sha512-Ffcx+nnma8Sge4jzddPHCZVRvIfQ0kMsUsCMcJRHkGJ1cDmhe4SsrYIjLUKn1xpHZybmOqCWwB0zQvsjdEHtkg==", - "cpu": [ - "x64" - ], + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "dev": true, "license": "MIT", - "optional": true, - "os": [ - "android" - ], "engines": { - "node": ">=18" + "node": ">= 0.6" } }, - "node_modules/fumadocs-mdx/node_modules/@esbuild/darwin-arm64": { - "version": "0.25.2", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.2.tgz", - "integrity": "sha512-MpM6LUVTXAzOvN4KbjzU/q5smzryuoNjlriAIx+06RpecwCkL9JpenNzpKd2YMzLJFOdPqBpuub6eVRP5IgiSA==", - "cpu": [ - "arm64" - ], + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dev": true, "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], + "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": ">=18" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "node_modules/fumadocs-mdx/node_modules/@esbuild/darwin-x64": { - "version": "0.25.2", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.2.tgz", - "integrity": "sha512-5eRPrTX7wFyuWe8FqEFPG2cU0+butQQVNcT4sVipqjLYQjjh8a8+vUTfgBKM88ObB85ahsnTwF7PSIt6PG+QkA==", - "cpu": [ - "x64" - ], + "node_modules/exit-hook": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/exit-hook/-/exit-hook-2.2.1.tgz", + "integrity": "sha512-eNTPlAD67BmP31LDINZ3U7HSF8l57TxOY2PmBJ1shpCvpnxBF93mWCE8YHBnXs8qiUZJc9WDcWIeC3a2HIAMfw==", + "dev": true, "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], "engines": { - "node": ">=18" + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/fumadocs-mdx/node_modules/@esbuild/freebsd-arm64": { - "version": "0.25.2", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.2.tgz", - "integrity": "sha512-mLwm4vXKiQ2UTSX4+ImyiPdiHjiZhIaE9QvC7sw0tZ6HoNMjYAqQpGyui5VRIi5sGd+uWq940gdCbY3VLvsO1w==", - "cpu": [ - "arm64" - ], + "node_modules/express": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/express/-/express-5.0.1.tgz", + "integrity": "sha512-ORF7g6qGnD+YtUG9yx4DFoqCShNMmUKiXuT5oWMHiOvt/4WFbHC6yCwQMTSBMno7AqntNCAzzcnnjowRkTL9eQ==", + "dev": true, "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], + "dependencies": { + "accepts": "^2.0.0", + "body-parser": "^2.0.1", + "content-disposition": "^1.0.0", + "content-type": "~1.0.4", + "cookie": "0.7.1", + "cookie-signature": "^1.2.1", + "debug": "4.3.6", + "depd": "2.0.0", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "^2.0.0", + "fresh": "2.0.0", + "http-errors": "2.0.0", + "merge-descriptors": "^2.0.0", + "methods": "~1.1.2", + "mime-types": "^3.0.0", + "on-finished": "2.4.1", + "once": "1.4.0", + "parseurl": "~1.3.3", + "proxy-addr": "~2.0.7", + "qs": "6.13.0", + "range-parser": "~1.2.1", + "router": "^2.0.0", + "safe-buffer": "5.2.1", + "send": "^1.1.0", + "serve-static": "^2.1.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "^2.0.0", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, "engines": { - "node": ">=18" + "node": ">= 18" } }, - "node_modules/fumadocs-mdx/node_modules/@esbuild/freebsd-x64": { - "version": "0.25.2", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.2.tgz", - "integrity": "sha512-6qyyn6TjayJSwGpm8J9QYYGQcRgc90nmfdUb0O7pp1s4lTY+9D0H9O02v5JqGApUyiHOtkz6+1hZNvNtEhbwRQ==", - "cpu": [ - "x64" - ], + "node_modules/express/node_modules/debug": { + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.6.tgz", + "integrity": "sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==", + "dev": true, "license": "MIT", - "optional": true, - "os": [ - "freebsd" - ], + "dependencies": { + "ms": "2.1.2" + }, "engines": { - "node": ">=18" + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, - "node_modules/fumadocs-mdx/node_modules/@esbuild/linux-arm": { - "version": "0.25.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.2.tgz", - "integrity": "sha512-UHBRgJcmjJv5oeQF8EpTRZs/1knq6loLxTsjc3nxO9eXAPDLcWW55flrMVc97qFPbmZP31ta1AZVUKQzKTzb0g==", - "cpu": [ - "arm" - ], + "node_modules/express/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true, + "license": "MIT" + }, + "node_modules/exsolve": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/exsolve/-/exsolve-1.0.5.tgz", + "integrity": "sha512-pz5dvkYYKQ1AHVrgOzBKWeP4u4FRb3a6DNK2ucr0OoNwYIU4QWsJ+NM36LLzORT+z845MzKHHhpXiUF5nvQoJg==", + "license": "MIT" + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "license": "MIT" + }, + "node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", "license": "MIT", - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "is-extendable": "^0.1.0" + }, "engines": { - "node": ">=18" + "node": ">=0.10.0" } }, - "node_modules/fumadocs-mdx/node_modules/@esbuild/linux-arm64": { - "version": "0.25.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.2.tgz", - "integrity": "sha512-gq/sjLsOyMT19I8obBISvhoYiZIAaGF8JpeXu1u8yPv8BE5HlWYobmlsfijFIZ9hIVGYkbdFhEqC0NvM4kNO0g==", - "cpu": [ - "arm64" - ], + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-glob": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", + "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", + "dev": true, "license": "MIT", - "optional": true, - "os": [ - "linux" - ], + "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": ">=18" + "node": ">=8.6.0" } }, - "node_modules/fumadocs-mdx/node_modules/@esbuild/linux-ia32": { - "version": "0.25.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.2.tgz", - "integrity": "sha512-bBYCv9obgW2cBP+2ZWfjYTU+f5cxRoGGQ5SeDbYdFCAZpYWrfjjfYwvUpP8MlKbP0nwZ5gyOU/0aUzZ5HWPuvQ==", - "cpu": [ - "ia32" - ], - "license": "MIT", - "optional": true, - "os": [ - "linux" - ], + "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": ">=18" + "node": ">= 6" } }, - "node_modules/fumadocs-mdx/node_modules/@esbuild/linux-loong64": { - "version": "0.25.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.2.tgz", - "integrity": "sha512-SHNGiKtvnU2dBlM5D8CXRFdd+6etgZ9dXfaPCeJtz+37PIUlixvlIhI23L5khKXs3DIzAn9V8v+qb1TRKrgT5w==", - "cpu": [ - "loong64" + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-xml-parser": { + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.2.5.tgz", + "integrity": "sha512-B9/wizE4WngqQftFPmdaMYlXoJlJOYxGQOanC77fq9k8+Z0v5dDSVh+3glErdIROP//s/jgb7ZuxKfB8nVyo0g==", + "dev": true, + "funding": [ + { + "type": "paypal", + "url": "https://paypal.me/naturalintelligence" + }, + { + "type": "github", + "url": "https://github.com/sponsors/NaturalIntelligence" + } ], "license": "MIT", - "optional": true, - "os": [ - "linux" - ], - "engines": { - "node": ">=18" + "dependencies": { + "strnum": "^1.0.5" + }, + "bin": { + "fxparser": "src/cli/cli.js" + } + }, + "node_modules/fastq": { + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.0.tgz", + "integrity": "sha512-7SFSRCNjBQIZH/xZR3iy5iQYR8aGBE0h3VG6/cwlbrpdciNYBMotQav8c1XI3HjHH+NikUpP53nPdlZSdWmFzA==", + "license": "ISC", + "dependencies": { + "reusify": "^1.0.4" } }, - "node_modules/fumadocs-mdx/node_modules/@esbuild/linux-mips64el": { - "version": "0.25.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.2.tgz", - "integrity": "sha512-hDDRlzE6rPeoj+5fsADqdUZl1OzqDYow4TB4Y/3PlKBD0ph1e6uPHzIQcv2Z65u2K0kpeByIyAjCmjn1hJgG0Q==", - "cpu": [ - "mips64el" - ], + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, "license": "MIT", - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "flat-cache": "^3.0.4" + }, "engines": { - "node": ">=18" + "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/fumadocs-mdx/node_modules/@esbuild/linux-ppc64": { - "version": "0.25.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.2.tgz", - "integrity": "sha512-tsHu2RRSWzipmUi9UBDEzc0nLc4HtpZEI5Ba+Omms5456x5WaNuiG3u7xh5AO6sipnJ9r4cRWQB2tUjPyIkc6g==", - "cpu": [ - "ppc64" - ], + "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==", "license": "MIT", - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "to-regex-range": "^5.0.1" + }, "engines": { - "node": ">=18" + "node": ">=8" } }, - "node_modules/fumadocs-mdx/node_modules/@esbuild/linux-riscv64": { - "version": "0.25.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.2.tgz", - "integrity": "sha512-k4LtpgV7NJQOml/10uPU0s4SAXGnowi5qBSjaLWMojNCUICNu7TshqHLAEbkBdAszL5TabfvQ48kK84hyFzjnw==", - "cpu": [ - "riscv64" - ], + "node_modules/finalhandler": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-2.1.0.tgz", + "integrity": "sha512-/t88Ty3d5JWQbWYgaOGCCYfXRwV1+be02WqYYlL6h0lEiUAMPM8o8qKGO01YIkOHzka2up08wvgYD0mDiI+q3Q==", + "dev": true, "license": "MIT", - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "debug": "^4.4.0", + "encodeurl": "^2.0.0", + "escape-html": "^1.0.3", + "on-finished": "^2.4.1", + "parseurl": "^1.3.3", + "statuses": "^2.0.1" + }, "engines": { - "node": ">=18" + "node": ">= 0.8" } }, - "node_modules/fumadocs-mdx/node_modules/@esbuild/linux-s390x": { - "version": "0.25.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.2.tgz", - "integrity": "sha512-GRa4IshOdvKY7M/rDpRR3gkiTNp34M0eLTaC1a08gNrh4u488aPhuZOCpkF6+2wl3zAN7L7XIpOFBhnaE3/Q8Q==", - "cpu": [ - "s390x" - ], + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, "license": "MIT", - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, "engines": { - "node": ">=18" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/fumadocs-mdx/node_modules/@esbuild/linux-x64": { - "version": "0.25.2", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.2.tgz", - "integrity": "sha512-QInHERlqpTTZ4FRB0fROQWXcYRD64lAoiegezDunLpalZMjcUcld3YzZmVJ2H/Cp0wJRZ8Xtjtj0cEHhYc/uUg==", - "cpu": [ - "x64" - ], + "node_modules/flat-cache": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", + "dev": true, "license": "MIT", - "optional": true, - "os": [ - "linux" - ], + "dependencies": { + "flatted": "^3.2.9", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" + }, "engines": { - "node": ">=18" + "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/fumadocs-mdx/node_modules/@esbuild/netbsd-arm64": { - "version": "0.25.2", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.2.tgz", - "integrity": "sha512-talAIBoY5M8vHc6EeI2WW9d/CkiO9MQJ0IOWX8hrLhxGbro/vBXJvaQXefW2cP0z0nQVTdQ/eNyGFV1GSKrxfw==", - "cpu": [ - "arm64" - ], + "node_modules/flatted": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.3.tgz", + "integrity": "sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==", + "dev": true, + "license": "ISC" + }, + "node_modules/for-each": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", + "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", + "dev": true, "license": "MIT", - "optional": true, - "os": [ - "netbsd" - ], + "dependencies": { + "is-callable": "^1.2.7" + }, "engines": { - "node": ">=18" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/fumadocs-mdx/node_modules/@esbuild/netbsd-x64": { - "version": "0.25.2", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.2.tgz", - "integrity": "sha512-voZT9Z+tpOxrvfKFyfDYPc4DO4rk06qamv1a/fkuzHpiVBMOhpjK+vBmWM8J1eiB3OLSMFYNaOaBNLXGChf5tg==", - "cpu": [ - "x64" - ], - "license": "MIT", - "optional": true, - "os": [ - "netbsd" - ], + "node_modules/foreground-child": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", + "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", + "dev": true, + "license": "ISC", + "dependencies": { + "cross-spawn": "^7.0.6", + "signal-exit": "^4.0.1" + }, "engines": { - "node": ">=18" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/fumadocs-mdx/node_modules/@esbuild/openbsd-arm64": { - "version": "0.25.2", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.2.tgz", - "integrity": "sha512-dcXYOC6NXOqcykeDlwId9kB6OkPUxOEqU+rkrYVqJbK2hagWOMrsTGsMr8+rW02M+d5Op5NNlgMmjzecaRf7Tg==", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ], + "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": ">=18" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/fumadocs-mdx/node_modules/@esbuild/openbsd-x64": { - "version": "0.25.2", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.2.tgz", - "integrity": "sha512-t/TkWwahkH0Tsgoq1Ju7QfgGhArkGLkF1uYz8nQS/PPFlXbP5YgRpqQR3ARRiC2iXoLTWFxc6DJMSK10dVXluw==", - "cpu": [ - "x64" - ], + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "dev": true, "license": "MIT", - "optional": true, - "os": [ - "openbsd" - ], "engines": { - "node": ">=18" + "node": ">= 0.6" } }, - "node_modules/fumadocs-mdx/node_modules/@esbuild/sunos-x64": { - "version": "0.25.2", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.2.tgz", - "integrity": "sha512-cfZH1co2+imVdWCjd+D1gf9NjkchVhhdpgb1q5y6Hcv9TP6Zi9ZG/beI3ig8TvwT9lH9dlxLq5MQBBgwuj4xvA==", - "cpu": [ - "x64" - ], + "node_modules/framer-motion": { + "version": "12.12.2", + "resolved": "https://registry.npmjs.org/framer-motion/-/framer-motion-12.12.2.tgz", + "integrity": "sha512-qCszZCiGWkilL40E3VuhIJJC/CS3SIBl2IHyGK8FU30nOUhTmhBNWPrNFyozAWH/bXxwzi19vJHIGVdALF0LCg==", "license": "MIT", - "optional": true, - "os": [ - "sunos" - ], - "engines": { - "node": ">=18" + "dependencies": { + "motion-dom": "^12.12.1", + "motion-utils": "^12.12.1", + "tslib": "^2.4.0" + }, + "peerDependencies": { + "@emotion/is-prop-valid": "*", + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@emotion/is-prop-valid": { + "optional": true + }, + "react": { + "optional": true + }, + "react-dom": { + "optional": true + } } }, - "node_modules/fumadocs-mdx/node_modules/@esbuild/win32-arm64": { - "version": "0.25.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.2.tgz", - "integrity": "sha512-7Loyjh+D/Nx/sOTzV8vfbB3GJuHdOQyrOryFdZvPHLf42Tk9ivBU5Aedi7iyX+x6rbn2Mh68T4qq1SDqJBQO5Q==", - "cpu": [ - "arm64" - ], + "node_modules/fresh": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-2.0.0.tgz", + "integrity": "sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A==", + "dev": true, "license": "MIT", - "optional": true, - "os": [ - "win32" - ], "engines": { - "node": ">=18" + "node": ">= 0.8" } }, - "node_modules/fumadocs-mdx/node_modules/@esbuild/win32-ia32": { - "version": "0.25.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.2.tgz", - "integrity": "sha512-WRJgsz9un0nqZJ4MfhabxaD9Ft8KioqU3JMinOTvobbX6MOSUigSBlogP8QB3uxpJDsFS6yN+3FDBdqE5lg9kg==", - "cpu": [ - "ia32" - ], + "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/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, "license": "MIT", "optional": true, "os": [ - "win32" + "darwin" ], "engines": { - "node": ">=18" + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, - "node_modules/fumadocs-mdx/node_modules/@esbuild/win32-x64": { - "version": "0.25.2", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.2.tgz", - "integrity": "sha512-kM3HKb16VIXZyIeVrM1ygYmZBKybX8N4p754bw390wGO3Tf2j4L2/WYL+4suWujpgf6GBYs3jv7TyUivdd05JA==", - "cpu": [ - "x64" - ], + "node_modules/fumadocs-core": { + "version": "15.2.6", + "resolved": "https://registry.npmjs.org/fumadocs-core/-/fumadocs-core-15.2.6.tgz", + "integrity": "sha512-5+Bq8iQGXAQ5K5igw612rzGPdup1bnROWa3F0UbdECsSiSQvNkHLlCL0Hyptvll1NV4zx6YFMf8vQRt1aSt4vA==", "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">=18" + "dependencies": { + "@formatjs/intl-localematcher": "^0.6.1", + "@orama/orama": "^3.1.4", + "@shikijs/rehype": "^3.2.1", + "@shikijs/transformers": "^3.2.1", + "github-slugger": "^2.0.0", + "hast-util-to-estree": "^3.1.3", + "hast-util-to-jsx-runtime": "^2.3.6", + "image-size": "^2.0.2", + "negotiator": "^1.0.0", + "react-remove-scroll": "^2.6.3", + "remark": "^15.0.0", + "remark-gfm": "^4.0.1", + "scroll-into-view-if-needed": "^3.1.0", + "shiki": "^3.2.1", + "unist-util-visit": "^5.0.0" + }, + "peerDependencies": { + "@oramacloud/client": "1.x.x || 2.x.x", + "algoliasearch": "4.24.0", + "next": "14.x.x || 15.x.x", + "react": "18.x.x || 19.x.x", + "react-dom": "18.x.x || 19.x.x" + }, + "peerDependenciesMeta": { + "@oramacloud/client": { + "optional": true + }, + "algoliasearch": { + "optional": true + }, + "next": { + "optional": true + }, + "react": { + "optional": true + }, + "react-dom": { + "optional": true + } } }, - "node_modules/fumadocs-mdx/node_modules/esbuild": { - "version": "0.25.2", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.2.tgz", - "integrity": "sha512-16854zccKPnC+toMywC+uKNeYSv+/eXkevRAfwRD/G9Cleq66m8XFIrigkbvauLLlCfDL45Q2cWegSg53gGBnQ==", - "hasInstallScript": true, + "node_modules/fumadocs-mdx": { + "version": "11.5.8", + "resolved": "https://registry.npmjs.org/fumadocs-mdx/-/fumadocs-mdx-11.5.8.tgz", + "integrity": "sha512-kzomF+1E9Hx+nwq6HP5bj7quLD/0mkltTZl25nw/D5ubeunvoJQCVb3ofOs3JgO7BatMeXVBucfSSbXZBv1qug==", "license": "MIT", + "dependencies": { + "@mdx-js/mdx": "^3.1.0", + "@standard-schema/spec": "^1.0.0", + "chokidar": "^4.0.3", + "cross-spawn": "^7.0.6", + "esbuild": "^0.25.2", + "estree-util-value-to-estree": "^3.3.2", + "fast-glob": "^3.3.3", + "gray-matter": "^4.0.3", + "lru-cache": "^11.1.0", + "unist-util-visit": "^5.0.0", + "zod": "^3.24.2" + }, "bin": { - "esbuild": "bin/esbuild" + "fumadocs-mdx": "bin.js" }, - "engines": { - "node": ">=18" + "peerDependencies": { + "@fumadocs/mdx-remote": "^1.2.0", + "fumadocs-core": "^14.0.0 || ^15.0.0", + "next": "14.x.x || 15.x.x" }, - "optionalDependencies": { - "@esbuild/aix-ppc64": "0.25.2", - "@esbuild/android-arm": "0.25.2", - "@esbuild/android-arm64": "0.25.2", - "@esbuild/android-x64": "0.25.2", - "@esbuild/darwin-arm64": "0.25.2", - "@esbuild/darwin-x64": "0.25.2", - "@esbuild/freebsd-arm64": "0.25.2", - "@esbuild/freebsd-x64": "0.25.2", - "@esbuild/linux-arm": "0.25.2", - "@esbuild/linux-arm64": "0.25.2", - "@esbuild/linux-ia32": "0.25.2", - "@esbuild/linux-loong64": "0.25.2", - "@esbuild/linux-mips64el": "0.25.2", - "@esbuild/linux-ppc64": "0.25.2", - "@esbuild/linux-riscv64": "0.25.2", - "@esbuild/linux-s390x": "0.25.2", - "@esbuild/linux-x64": "0.25.2", - "@esbuild/netbsd-arm64": "0.25.2", - "@esbuild/netbsd-x64": "0.25.2", - "@esbuild/openbsd-arm64": "0.25.2", - "@esbuild/openbsd-x64": "0.25.2", - "@esbuild/sunos-x64": "0.25.2", - "@esbuild/win32-arm64": "0.25.2", - "@esbuild/win32-ia32": "0.25.2", - "@esbuild/win32-x64": "0.25.2" + "peerDependenciesMeta": { + "@fumadocs/mdx-remote": { + "optional": true + } } }, "node_modules/fumadocs-mdx/node_modules/fast-glob": { @@ -16235,6 +16350,15 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/geist": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/geist/-/geist-1.4.2.tgz", + "integrity": "sha512-OQUga/KUc8ueijck6EbtT07L4tZ5+TZgjw8PyWfxo16sL5FWk7gNViPNU8hgCFjy6bJi9yuTP+CRpywzaGN8zw==", + "license": "SIL OPEN FONT LICENSE", + "peerDependencies": { + "next": ">=13.2.0" + } + }, "node_modules/get-intrinsic": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.7.tgz", @@ -16509,6 +16633,12 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/hachure-fill": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/hachure-fill/-/hachure-fill-0.5.2.tgz", + "integrity": "sha512-3GKBOn+m2LX9iq+JC1064cSFprJY4jL1jCXTcpnfER5HYE2l/4EfWSGzkPa/ZDBmYI0ZOEj5VHV/eKnPGkHuOg==", + "license": "MIT" + }, "node_modules/has-bigints": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz", @@ -16748,7 +16878,6 @@ "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", "dependencies": { "safer-buffer": ">= 2.1.2 < 3.0.0" @@ -16846,6 +16975,15 @@ "node": ">= 0.4" } }, + "node_modules/internmap": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/internmap/-/internmap-2.0.3.tgz", + "integrity": "sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==", + "license": "ISC", + "engines": { + "node": ">=12" + } + }, "node_modules/ipaddr.js": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", @@ -16902,8 +17040,8 @@ "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", - "optional": true + "devOptional": true, + "license": "MIT" }, "node_modules/is-async-function": { "version": "2.1.1", @@ -17480,6 +17618,31 @@ "node": ">=4.0" } }, + "node_modules/katex": { + "version": "0.16.22", + "resolved": "https://registry.npmjs.org/katex/-/katex-0.16.22.tgz", + "integrity": "sha512-XCHRdUw4lf3SKBaJe4EvgqIuWwkPSo9XoeO8GjQW94Bp7TWv9hNhzZjZ+OH9yf1UmLygb7DIT5GSFQiyt16zYg==", + "funding": [ + "https://opencollective.com/katex", + "https://github.com/sponsors/katex" + ], + "license": "MIT", + "dependencies": { + "commander": "^8.3.0" + }, + "bin": { + "katex": "cli.js" + } + }, + "node_modules/katex/node_modules/commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "license": "MIT", + "engines": { + "node": ">= 12" + } + }, "node_modules/keyv": { "version": "4.5.4", "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", @@ -17490,6 +17653,11 @@ "json-buffer": "3.0.1" } }, + "node_modules/khroma": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/khroma/-/khroma-2.1.0.tgz", + "integrity": "sha512-Ls993zuzfayK269Svk9hzpeGUKob/sIgZzyHYdjQoAdQetRKpOLj+k/QQQ/6Qi0Yz65mlROrfd+Ev+1+7dz9Kw==" + }, "node_modules/kind-of": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", @@ -17499,6 +17667,28 @@ "node": ">=0.10.0" } }, + "node_modules/kolorist": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/kolorist/-/kolorist-1.8.0.tgz", + "integrity": "sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==", + "license": "MIT" + }, + "node_modules/langium": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/langium/-/langium-3.3.1.tgz", + "integrity": "sha512-QJv/h939gDpvT+9SiLVlY7tZC3xB2qK57v0J04Sh9wpMb6MP1q8gB21L3WIo8T5P1MSMg3Ep14L7KkDCFG3y4w==", + "license": "MIT", + "dependencies": { + "chevrotain": "~11.0.3", + "chevrotain-allstar": "~0.3.0", + "vscode-languageserver": "~9.0.1", + "vscode-languageserver-textdocument": "~1.0.11", + "vscode-uri": "~3.0.8" + }, + "engines": { + "node": ">=16.0.0" + } + }, "node_modules/language-subtag-registry": { "version": "0.3.23", "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.23.tgz", @@ -17519,6 +17709,12 @@ "node": ">=0.10" } }, + "node_modules/layout-base": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/layout-base/-/layout-base-1.0.2.tgz", + "integrity": "sha512-8h2oVEZNktL4BH2JCOI90iD1yXwL6iNW7KcCKT2QZgQJR2vbqDsldCTPRU9NifTCqHZci57XvQQ15YTu+sTYPg==", + "license": "MIT" + }, "node_modules/levn": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", @@ -17772,6 +17968,23 @@ "url": "https://opencollective.com/parcel" } }, + "node_modules/local-pkg": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-1.1.1.tgz", + "integrity": "sha512-WunYko2W1NcdfAFpuLUoucsgULmgDBRkdxHxWQ7mK0cQqwPiy8E1enjuRBrhLtZkB5iScJ1XIPdhVEFK8aOLSg==", + "license": "MIT", + "dependencies": { + "mlly": "^1.7.4", + "pkg-types": "^2.0.1", + "quansync": "^0.2.8" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, "node_modules/locate-path": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", @@ -17788,6 +18001,12 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/lodash-es": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz", + "integrity": "sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==", + "license": "MIT" + }, "node_modules/lodash.merge": { "version": "4.6.2", "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", @@ -17857,6 +18076,18 @@ "url": "https://github.com/sponsors/wooorm" } }, + "node_modules/marked": { + "version": "15.0.12", + "resolved": "https://registry.npmjs.org/marked/-/marked-15.0.12.tgz", + "integrity": "sha512-8dD6FusOQSrpv9Z1rdNMdlSgQOIP880DHqnohobOmYLElGEqAL/JvxvuxZO16r4HtjTlfPRDC1hbvxC9dPN2nA==", + "license": "MIT", + "bin": { + "marked": "bin/marked.js" + }, + "engines": { + "node": ">= 18" + } + }, "node_modules/math-intrinsics": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", @@ -18205,6 +18436,47 @@ "node": ">= 8" } }, + "node_modules/mermaid": { + "version": "11.6.0", + "resolved": "https://registry.npmjs.org/mermaid/-/mermaid-11.6.0.tgz", + "integrity": "sha512-PE8hGUy1LDlWIHWBP05SFdqUHGmRcCcK4IzpOKPE35eOw+G9zZgcnMpyunJVUEOgb//KBORPjysKndw8bFLuRg==", + "license": "MIT", + "dependencies": { + "@braintree/sanitize-url": "^7.0.4", + "@iconify/utils": "^2.1.33", + "@mermaid-js/parser": "^0.4.0", + "@types/d3": "^7.4.3", + "cytoscape": "^3.29.3", + "cytoscape-cose-bilkent": "^4.1.0", + "cytoscape-fcose": "^2.2.0", + "d3": "^7.9.0", + "d3-sankey": "^0.12.3", + "dagre-d3-es": "7.0.11", + "dayjs": "^1.11.13", + "dompurify": "^3.2.4", + "katex": "^0.16.9", + "khroma": "^2.1.0", + "lodash-es": "^4.17.21", + "marked": "^15.0.7", + "roughjs": "^4.6.6", + "stylis": "^4.3.6", + "ts-dedent": "^2.2.0", + "uuid": "^11.1.0" + } + }, + "node_modules/mermaid/node_modules/uuid": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-11.1.0.tgz", + "integrity": "sha512-0/A9rDy9P7cJ+8w1c9WD9V//9Wj15Ce2MPz8Ri6032usz+NfePxx5AcN3bN+r6ZL6jEo066/yNYB3tn4pQEx+A==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "license": "MIT", + "bin": { + "uuid": "dist/esm/bin/uuid" + } + }, "node_modules/methods": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", @@ -18994,9 +19266,9 @@ } }, "node_modules/miniflare": { - "version": "4.20250409.0", - "resolved": "https://registry.npmjs.org/miniflare/-/miniflare-4.20250409.0.tgz", - "integrity": "sha512-Hu02dYZvFR+MyrI57O6rSrOUTofcO9EIvcodgq2SAHzAeWSJw2E0oq9lylOrcckFwPMcwxUAb/cQN1LIoCyySw==", + "version": "4.20250508.3", + "resolved": "https://registry.npmjs.org/miniflare/-/miniflare-4.20250508.3.tgz", + "integrity": "sha512-43oTmZ0CCmUcieetI5YDDyX0IiwhOcVIWzdBBCqWXK3F1XgQwg4d3fTqRyJnCmHIoaYx9CE1kTEKZC1UahPQhA==", "dev": true, "license": "MIT", "dependencies": { @@ -19005,9 +19277,10 @@ "acorn-walk": "8.3.2", "exit-hook": "2.2.1", "glob-to-regexp": "0.4.1", + "sharp": "^0.33.5", "stoppable": "1.1.0", "undici": "^5.28.5", - "workerd": "1.20250409.0", + "workerd": "1.20250508.0", "ws": "8.18.0", "youch": "3.3.4", "zod": "3.22.3" @@ -19075,6 +19348,35 @@ "node": ">=10" } }, + "node_modules/mlly": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.7.4.tgz", + "integrity": "sha512-qmdSIPC4bDJXgZTCR7XosJiNKySV7O215tsPtDN9iEO/7q/76b/ijtgRu/+epFXSJhijtTCCGp3DWS549P3xKw==", + "license": "MIT", + "dependencies": { + "acorn": "^8.14.0", + "pathe": "^2.0.1", + "pkg-types": "^1.3.0", + "ufo": "^1.5.4" + } + }, + "node_modules/mlly/node_modules/confbox": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/confbox/-/confbox-0.1.8.tgz", + "integrity": "sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==", + "license": "MIT" + }, + "node_modules/mlly/node_modules/pkg-types": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.3.1.tgz", + "integrity": "sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==", + "license": "MIT", + "dependencies": { + "confbox": "^0.1.8", + "mlly": "^1.7.4", + "pathe": "^2.0.1" + } + }, "node_modules/mnemonist": { "version": "0.38.3", "resolved": "https://registry.npmjs.org/mnemonist/-/mnemonist-0.38.3.tgz", @@ -19085,6 +19387,47 @@ "obliterator": "^1.6.1" } }, + "node_modules/motion": { + "version": "12.12.2", + "resolved": "https://registry.npmjs.org/motion/-/motion-12.12.2.tgz", + "integrity": "sha512-ZMvJXkm8QnEYH8NsKGNGMkROjyMtouc7FxTB7FVXW5KQk+ZhunEkh0FWdUKT9kia8dGL0o6YU/RmrFxsI5Plgw==", + "license": "MIT", + "dependencies": { + "framer-motion": "^12.12.2", + "tslib": "^2.4.0" + }, + "peerDependencies": { + "@emotion/is-prop-valid": "*", + "react": "^18.0.0 || ^19.0.0", + "react-dom": "^18.0.0 || ^19.0.0" + }, + "peerDependenciesMeta": { + "@emotion/is-prop-valid": { + "optional": true + }, + "react": { + "optional": true + }, + "react-dom": { + "optional": true + } + } + }, + "node_modules/motion-dom": { + "version": "12.12.1", + "resolved": "https://registry.npmjs.org/motion-dom/-/motion-dom-12.12.1.tgz", + "integrity": "sha512-GXq/uUbZBEiFFE+K1Z/sxdPdadMdfJ/jmBALDfIuHGi0NmtealLOfH9FqT+6aNPgVx8ilq0DtYmyQlo6Uj9LKQ==", + "license": "MIT", + "dependencies": { + "motion-utils": "^12.12.1" + } + }, + "node_modules/motion-utils": { + "version": "12.12.1", + "resolved": "https://registry.npmjs.org/motion-utils/-/motion-utils-12.12.1.tgz", + "integrity": "sha512-f9qiqUHm7hWSLlNW8gS9pisnsN7CRFRD58vNjptKdsqFLpkVnX00TNeD6Q0d27V9KzT7ySFyK1TZ/DShfVOv6w==", + "license": "MIT" + }, "node_modules/ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", @@ -19920,6 +20263,12 @@ "dev": true, "license": "BlueOak-1.0.0" }, + "node_modules/package-manager-detector": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/package-manager-detector/-/package-manager-detector-1.3.0.tgz", + "integrity": "sha512-ZsEbbZORsyHuO00lY1kV3/t72yp6Ysay6Pd17ZAlNGuGwmWDLCJxFpRs0IzfXfj1o4icJOkUEioexFHzyPurSQ==", + "license": "MIT" + }, "node_modules/parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", @@ -19968,6 +20317,12 @@ "node": ">= 0.8" } }, + "node_modules/path-data-parser": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/path-data-parser/-/path-data-parser-0.1.0.tgz", + "integrity": "sha512-NOnmBpt5Y2RWbuv0LMzsayp3lVylAHLPUTut412ZA3l+C4uw4ZVkQbjShYCQ8TCpUMdPapr4YjUqLYD6v68j+w==", + "license": "MIT" + }, "node_modules/path-exists": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", @@ -20049,7 +20404,6 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.3.tgz", "integrity": "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==", - "dev": true, "license": "MIT" }, "node_modules/picocolors": { @@ -20070,6 +20424,33 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, + "node_modules/pkg-types": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-2.1.0.tgz", + "integrity": "sha512-wmJwA+8ihJixSoHKxZJRBQG1oY8Yr9pGLzRmSsNms0iNWyHHAlZCa7mmKiFR10YPZuz/2k169JiS/inOjBCZ2A==", + "license": "MIT", + "dependencies": { + "confbox": "^0.2.1", + "exsolve": "^1.0.1", + "pathe": "^2.0.3" + } + }, + "node_modules/points-on-curve": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/points-on-curve/-/points-on-curve-0.2.0.tgz", + "integrity": "sha512-0mYKnYYe9ZcqMCWhUjItv/oHjvgEsfKvnUTg8sAtnHr3GVy7rGkXCb6d5cSyqrWqL4k81b9CPg3urd+T7aop3A==", + "license": "MIT" + }, + "node_modules/points-on-path": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/points-on-path/-/points-on-path-0.2.1.tgz", + "integrity": "sha512-25ClnWWuw7JbWZcgqY/gJ4FQWadKxGWk+3kR/7kD0tCaDtPPMj7oHu2ToLaVhfpnHrZzYby2w6tUA0eOIuUg8g==", + "license": "MIT", + "dependencies": { + "path-data-parser": "0.1.0", + "points-on-curve": "0.2.0" + } + }, "node_modules/possible-typed-array-names": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", @@ -20201,6 +20582,22 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/quansync": { + "version": "0.2.10", + "resolved": "https://registry.npmjs.org/quansync/-/quansync-0.2.10.tgz", + "integrity": "sha512-t41VRkMYbkHyCYmOvx/6URnN80H7k4X0lLdBMGsz+maAwrJQYB1djpV6vHrQIBE0WBSGqhtEHrK9U3DWWH8v7A==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/antfu" + }, + { + "type": "individual", + "url": "https://github.com/sponsors/sxzz" + } + ], + "license": "MIT" + }, "node_modules/queue-microtask": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", @@ -20684,6 +21081,24 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/robust-predicates": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.2.tgz", + "integrity": "sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==", + "license": "Unlicense" + }, + "node_modules/roughjs": { + "version": "4.6.6", + "resolved": "https://registry.npmjs.org/roughjs/-/roughjs-4.6.6.tgz", + "integrity": "sha512-ZUz/69+SYpFN/g/lUlo2FXcIjRkSu3nDarreVdGGndHEBJ6cXPdKguS8JGxwj5HA5xIbVKSmLgr5b3AWxtRfvQ==", + "license": "MIT", + "dependencies": { + "hachure-fill": "^0.5.2", + "path-data-parser": "^0.1.0", + "points-on-curve": "^0.2.0", + "points-on-path": "^0.2.1" + } + }, "node_modules/router": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/router/-/router-2.2.0.tgz", @@ -20734,6 +21149,12 @@ "queue-microtask": "^1.2.2" } }, + "node_modules/rw": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/rw/-/rw-1.3.3.tgz", + "integrity": "sha512-PdhdWy89SiZogBLaw42zdeqtRJ//zFd2PgQavcICDUgJT5oW10QCRKbJ6bg4r0/UY2M6BWd5tkxuGFRvCkgfHQ==", + "license": "BSD-3-Clause" + }, "node_modules/safe-array-concat": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz", @@ -20814,7 +21235,6 @@ "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/scheduler": { @@ -20960,7 +21380,6 @@ "dev": true, "hasInstallScript": true, "license": "Apache-2.0", - "optional": true, "dependencies": { "color": "^4.2.3", "detect-libc": "^2.0.3", @@ -21118,8 +21537,8 @@ "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==", + "devOptional": true, "license": "MIT", - "optional": true, "dependencies": { "is-arrayish": "^0.3.1" } @@ -21546,6 +21965,12 @@ } } }, + "node_modules/stylis": { + "version": "4.3.6", + "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.3.6.tgz", + "integrity": "sha512-yQ3rwFWRfwNUY7H5vpU0wfdkNSnvnJinhF9830Swlaxl03zsOjCfmX0ugac+3LtK0lYSgwL/KXc8oYL3mG4YFQ==", + "license": "MIT" + }, "node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -21632,6 +22057,12 @@ "dev": true, "license": "MIT" }, + "node_modules/tinyexec": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-1.0.1.tgz", + "integrity": "sha512-5uC6DDlmeqiOwCPmK9jMSdOuZTh8bU39Ys6yidB+UTt5hfZUPGAypSgFRiEp+jbi9qH40BLDvy85jIU88wKSqw==", + "license": "MIT" + }, "node_modules/tinyglobby": { "version": "0.2.12", "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.12.tgz", @@ -21732,6 +22163,22 @@ "typescript": ">=4.8.4" } }, + "node_modules/ts-dedent": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ts-dedent/-/ts-dedent-2.2.0.tgz", + "integrity": "sha512-q5W7tVM71e2xjHZTlgfTDoPF/SmqKG5hddq9SzR49CH2hayqRKJtQ4mtRlSxKaJlR/+9rEM+mnBHf7I2/BQcpQ==", + "license": "MIT", + "engines": { + "node": ">=6.10" + } + }, + "node_modules/ts-tqdm": { + "version": "0.8.6", + "resolved": "https://registry.npmjs.org/ts-tqdm/-/ts-tqdm-0.8.6.tgz", + "integrity": "sha512-3X3M1PZcHtgQbnwizL+xU8CAgbYbeLHrrDwL9xxcZZrV5J+e7loJm1XrXozHjSkl44J0Zg0SgA8rXbh83kCkcQ==", + "dev": true, + "license": "MIT" + }, "node_modules/tsconfig-paths": { "version": "3.15.0", "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", @@ -21906,7 +22353,6 @@ "version": "1.6.1", "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.6.1.tgz", "integrity": "sha512-9a4/uxlTWJ4+a5i0ooc1rU7C7YOw3wT+UGqdeNNHWnOF9qcMBgLRS+4IYUqbczewFx4mLEig6gawh7X6mFlEkA==", - "dev": true, "license": "MIT" }, "node_modules/unbox-primitive": { @@ -21949,9 +22395,9 @@ "license": "MIT" }, "node_modules/unenv": { - "version": "2.0.0-rc.15", - "resolved": "https://registry.npmjs.org/unenv/-/unenv-2.0.0-rc.15.tgz", - "integrity": "sha512-J/rEIZU8w6FOfLNz/hNKsnY+fFHWnu9MH4yRbSZF3xbbGHovcetXPs7sD+9p8L6CeNC//I9bhRYAOsBt2u7/OA==", + "version": "2.0.0-rc.17", + "resolved": "https://registry.npmjs.org/unenv/-/unenv-2.0.0-rc.17.tgz", + "integrity": "sha512-B06u0wXkEd+o5gOCMl/ZHl5cfpYbDZKAT+HWTL+Hws6jWu7dCiqBBXXXzMFcFVJb8D4ytAnYmxJA83uwOQRSsg==", "dev": true, "license": "MIT", "dependencies": { @@ -21959,7 +22405,7 @@ "exsolve": "^1.0.4", "ohash": "^2.0.11", "pathe": "^2.0.3", - "ufo": "^1.5.4" + "ufo": "^1.6.1" } }, "node_modules/unified": { @@ -22083,9 +22529,9 @@ } }, "node_modules/urlpattern-polyfill": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/urlpattern-polyfill/-/urlpattern-polyfill-10.0.0.tgz", - "integrity": "sha512-H/A06tKD7sS1O1X2SshBVeA5FLycRpjqiBeqGKmBwBDBy28EnRjORxTNe269KSSr5un5qyWi1iL61wLxpd+ZOg==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/urlpattern-polyfill/-/urlpattern-polyfill-10.1.0.tgz", + "integrity": "sha512-IGjKp/o0NL3Bso1PymYURCJxMPNAf/ILOpendP9f5B6e1rTJgdgiOvgfoT8VxCAdY+Wisb9uhGaJJf3yZ2V9nw==", "dev": true, "license": "MIT" }, @@ -22200,6 +22646,55 @@ "url": "https://opencollective.com/unified" } }, + "node_modules/vscode-jsonrpc": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-8.2.0.tgz", + "integrity": "sha512-C+r0eKJUIfiDIfwJhria30+TYWPtuHJXHtI7J0YlOmKAo7ogxP20T0zxB7HZQIFhIyvoBPwWskjxrvAtfjyZfA==", + "license": "MIT", + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/vscode-languageserver": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-9.0.1.tgz", + "integrity": "sha512-woByF3PDpkHFUreUa7Hos7+pUWdeWMXRd26+ZX2A8cFx6v/JPTtd4/uN0/jB6XQHYaOlHbio03NTHCqrgG5n7g==", + "license": "MIT", + "dependencies": { + "vscode-languageserver-protocol": "3.17.5" + }, + "bin": { + "installServerIntoExtension": "bin/installServerIntoExtension" + } + }, + "node_modules/vscode-languageserver-protocol": { + "version": "3.17.5", + "resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.5.tgz", + "integrity": "sha512-mb1bvRJN8SVznADSGWM9u/b07H7Ecg0I3OgXDuLdn307rl/J3A9YD6/eYOssqhecL27hK1IPZAsaqh00i/Jljg==", + "license": "MIT", + "dependencies": { + "vscode-jsonrpc": "8.2.0", + "vscode-languageserver-types": "3.17.5" + } + }, + "node_modules/vscode-languageserver-textdocument": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/vscode-languageserver-textdocument/-/vscode-languageserver-textdocument-1.0.12.tgz", + "integrity": "sha512-cxWNPesCnQCcMPeenjKKsOCKQZ/L6Tv19DTRIGuLWe32lyzWhihGVJ/rcckZXJxfdKCFvRLS3fpBIsV/ZGX4zA==", + "license": "MIT" + }, + "node_modules/vscode-languageserver-types": { + "version": "3.17.5", + "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.5.tgz", + "integrity": "sha512-Ld1VelNuX9pdF39h2Hgaeb5hEZM2Z3jUrrMgWQAu82jMtZp7p3vJT3BzToKtZI7NgQssZje5o0zryOrhQvzQAg==", + "license": "MIT" + }, + "node_modules/vscode-uri": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.0.8.tgz", + "integrity": "sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==", + "license": "MIT" + }, "node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", @@ -22314,9 +22809,9 @@ } }, "node_modules/workerd": { - "version": "1.20250409.0", - "resolved": "https://registry.npmjs.org/workerd/-/workerd-1.20250409.0.tgz", - "integrity": "sha512-hqjX9swiHvrkOI3jlH9lrZsZRRv9lddUwcMe8Ua76jnyQz+brybWznNjHu8U5oswwcrFwvky1A4CcLjcLY31gQ==", + "version": "1.20250508.0", + "resolved": "https://registry.npmjs.org/workerd/-/workerd-1.20250508.0.tgz", + "integrity": "sha512-ffLxe7dXSuGoA6jb3Qx2SClIV1aLHfJQ6RhGhzYHjQgv7dL6fdUOSIIGgzmu2mRKs+WFSujp6c8WgKquco6w3w==", "dev": true, "hasInstallScript": true, "license": "Apache-2.0", @@ -22327,28 +22822,28 @@ "node": ">=16" }, "optionalDependencies": { - "@cloudflare/workerd-darwin-64": "1.20250409.0", - "@cloudflare/workerd-darwin-arm64": "1.20250409.0", - "@cloudflare/workerd-linux-64": "1.20250409.0", - "@cloudflare/workerd-linux-arm64": "1.20250409.0", - "@cloudflare/workerd-windows-64": "1.20250409.0" + "@cloudflare/workerd-darwin-64": "1.20250508.0", + "@cloudflare/workerd-darwin-arm64": "1.20250508.0", + "@cloudflare/workerd-linux-64": "1.20250508.0", + "@cloudflare/workerd-linux-arm64": "1.20250508.0", + "@cloudflare/workerd-windows-64": "1.20250508.0" } }, "node_modules/wrangler": { - "version": "4.10.0", - "resolved": "https://registry.npmjs.org/wrangler/-/wrangler-4.10.0.tgz", - "integrity": "sha512-fTE4hZ79msEUt8+HEjl/8Q72haCyzPLu4PgrU3L81ysmjrMEdiYfUPqnvCkBUVtJvrDNdctTEimkufT1Y0ipNg==", + "version": "4.16.1", + "resolved": "https://registry.npmjs.org/wrangler/-/wrangler-4.16.1.tgz", + "integrity": "sha512-YiLdWXcaQva2K/bqokpsZbySPmoT8TJFyJPsQPZumnkgimM9+/g/yoXArByA+pf+xU8jhw7ybQ8X1yBGXv731g==", "dev": true, "license": "MIT OR Apache-2.0", "dependencies": { "@cloudflare/kv-asset-handler": "0.4.0", - "@cloudflare/unenv-preset": "2.3.1", + "@cloudflare/unenv-preset": "2.3.2", "blake3-wasm": "2.1.5", - "esbuild": "0.24.2", - "miniflare": "4.20250409.0", + "esbuild": "0.25.4", + "miniflare": "4.20250508.3", "path-to-regexp": "6.3.0", - "unenv": "2.0.0-rc.15", - "workerd": "1.20250409.0" + "unenv": "2.0.0-rc.17", + "workerd": "1.20250508.0" }, "bin": { "wrangler": "bin/wrangler.js", @@ -22362,7 +22857,7 @@ "sharp": "^0.33.5" }, "peerDependencies": { - "@cloudflare/workers-types": "^4.20250409.0" + "@cloudflare/workers-types": "^4.20250508.0" }, "peerDependenciesMeta": { "@cloudflare/workers-types": { @@ -22501,16 +22996,16 @@ } }, "node_modules/yaml": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.7.1.tgz", - "integrity": "sha512-10ULxpnOCQXxJvBgxsn9ptjq6uviG/htZKk9veJGhlqn3w/DxQ631zFF+nlQXLwmImeS5amR2dl2U8sg6U9jsQ==", + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.8.0.tgz", + "integrity": "sha512-4lLa/EcQCB0cJkyts+FpIRx5G/llPxfP6VQU5KByHEhLxY3IJCH0f0Hy1MHI8sClTvsIb8qwRJ6R/ZdlDJ/leQ==", "dev": true, "license": "ISC", "bin": { "yaml": "bin.mjs" }, "engines": { - "node": ">= 14" + "node": ">= 14.6" } }, "node_modules/yocto-queue": { diff --git a/package.json b/package.json index a2f1f86e..cd150234 100644 --- a/package.json +++ b/package.json @@ -18,13 +18,16 @@ "fumadocs-mdx": "11.5.8", "fumadocs-twoslash": "^3.1.0", "fumadocs-ui": "15.2.6", + "geist": "^1.4.2", + "mermaid": "^11.6.0", + "motion": "^12.12.2", "next": "15.3.0", "react": "^19.0.0", "react-dom": "^19.0.0", "twoslash": "^0.3.1" }, "devDependencies": { - "@opennextjs/cloudflare": "^0.6.6", + "@opennextjs/cloudflare": "^1.0.4", "@tailwindcss/postcss": "^4.1.3", "@types/mdx": "^2.0.13", "@types/node": "22.10.9", @@ -36,5 +39,8 @@ "tailwindcss": "^4.0.0", "typescript": "^5.7.3", "wrangler": "^4.10.0" + }, + "overrides": { + "esbuild": ">=0.25.0" } } diff --git a/public/_headers b/public/_headers new file mode 100644 index 00000000..3b460e68 --- /dev/null +++ b/public/_headers @@ -0,0 +1,2 @@ +/_next/static/* + Cache-Control: public,max-age=31536000,immutable diff --git a/public/images/agent-deployment-dark.png b/public/images/agent-deployment-dark.png new file mode 100644 index 00000000..c6edf05f Binary files /dev/null and b/public/images/agent-deployment-dark.png differ diff --git a/public/images/agent-deployment-detail-dark.png b/public/images/agent-deployment-detail-dark.png new file mode 100644 index 00000000..2ca299bf Binary files /dev/null and b/public/images/agent-deployment-detail-dark.png differ diff --git a/public/images/agent-deployment-detail-light.png b/public/images/agent-deployment-detail-light.png new file mode 100644 index 00000000..824c163f Binary files /dev/null and b/public/images/agent-deployment-detail-light.png differ diff --git a/public/images/agent-deployment-light.png b/public/images/agent-deployment-light.png new file mode 100644 index 00000000..55975763 Binary files /dev/null and b/public/images/agent-deployment-light.png differ diff --git a/public/images/agent-detail-dark.png b/public/images/agent-detail-dark.png new file mode 100644 index 00000000..5f881168 Binary files /dev/null and b/public/images/agent-detail-dark.png differ diff --git a/public/images/agent-detail-light.png b/public/images/agent-detail-light.png new file mode 100644 index 00000000..5bfac355 Binary files /dev/null and b/public/images/agent-detail-light.png differ diff --git a/public/images/agent-io-api-source-dark.png b/public/images/agent-io-api-source-dark.png new file mode 100644 index 00000000..5fbd4b47 Binary files /dev/null and b/public/images/agent-io-api-source-dark.png differ diff --git a/public/images/agent-io-api-source-light.png b/public/images/agent-io-api-source-light.png new file mode 100644 index 00000000..7f7b30fb Binary files /dev/null and b/public/images/agent-io-api-source-light.png differ diff --git a/public/images/agent-io-cron-source-dark.png b/public/images/agent-io-cron-source-dark.png new file mode 100644 index 00000000..4764a87c Binary files /dev/null and b/public/images/agent-io-cron-source-dark.png differ diff --git a/public/images/agent-io-cron-source-light.png b/public/images/agent-io-cron-source-light.png new file mode 100644 index 00000000..0a7c739c Binary files /dev/null and b/public/images/agent-io-cron-source-light.png differ diff --git a/public/images/agent-io-cron-trigger-dark.png b/public/images/agent-io-cron-trigger-dark.png new file mode 100644 index 00000000..3401117a Binary files /dev/null and b/public/images/agent-io-cron-trigger-dark.png differ diff --git a/public/images/agent-io-cron-trigger-light.png b/public/images/agent-io-cron-trigger-light.png new file mode 100644 index 00000000..ed6cc22f Binary files /dev/null and b/public/images/agent-io-cron-trigger-light.png differ diff --git a/public/images/agent-io-email-source-dark.png b/public/images/agent-io-email-source-dark.png new file mode 100644 index 00000000..0385ff34 Binary files /dev/null and b/public/images/agent-io-email-source-dark.png differ diff --git a/public/images/agent-io-email-source-light.png b/public/images/agent-io-email-source-light.png new file mode 100644 index 00000000..b499592c Binary files /dev/null and b/public/images/agent-io-email-source-light.png differ diff --git a/public/images/agent-io-new-dark.png b/public/images/agent-io-new-dark.png new file mode 100644 index 00000000..b4e378bf Binary files /dev/null and b/public/images/agent-io-new-dark.png differ diff --git a/public/images/agent-io-new-light.png b/public/images/agent-io-new-light.png new file mode 100644 index 00000000..c0684932 Binary files /dev/null and b/public/images/agent-io-new-light.png differ diff --git a/public/images/agent-io-webhook-source-dark.png b/public/images/agent-io-webhook-source-dark.png new file mode 100644 index 00000000..ad1c2afe Binary files /dev/null and b/public/images/agent-io-webhook-source-dark.png differ diff --git a/public/images/agent-io-webhook-source-light.png b/public/images/agent-io-webhook-source-light.png new file mode 100644 index 00000000..e3f0d074 Binary files /dev/null and b/public/images/agent-io-webhook-source-light.png differ diff --git a/public/images/agent-log-dark.png b/public/images/agent-log-dark.png new file mode 100644 index 00000000..0af4e0d6 Binary files /dev/null and b/public/images/agent-log-dark.png differ diff --git a/public/images/agent-log-detail-dark.png b/public/images/agent-log-detail-dark.png new file mode 100644 index 00000000..42e270cd Binary files /dev/null and b/public/images/agent-log-detail-dark.png differ diff --git a/public/images/agent-log-detail-light.png b/public/images/agent-log-detail-light.png new file mode 100644 index 00000000..106d955e Binary files /dev/null and b/public/images/agent-log-detail-light.png differ diff --git a/public/images/agent-log-light.png b/public/images/agent-log-light.png new file mode 100644 index 00000000..87a1e6fb Binary files /dev/null and b/public/images/agent-log-light.png differ diff --git a/public/images/agent-logs-dark.png b/public/images/agent-logs-dark.png new file mode 100644 index 00000000..4fb78646 Binary files /dev/null and b/public/images/agent-logs-dark.png differ diff --git a/public/images/agent-logs-detail-dark.png b/public/images/agent-logs-detail-dark.png new file mode 100644 index 00000000..326f649e Binary files /dev/null and b/public/images/agent-logs-detail-dark.png differ diff --git a/public/images/agent-logs-detail-light.png b/public/images/agent-logs-detail-light.png new file mode 100644 index 00000000..758a6eee Binary files /dev/null and b/public/images/agent-logs-detail-light.png differ diff --git a/public/images/agent-logs-light.png b/public/images/agent-logs-light.png new file mode 100644 index 00000000..890a7ea1 Binary files /dev/null and b/public/images/agent-logs-light.png differ diff --git a/public/images/agent-project-detail-dark.png b/public/images/agent-project-detail-dark.png new file mode 100644 index 00000000..af101548 Binary files /dev/null and b/public/images/agent-project-detail-dark.png differ diff --git a/public/images/agent-project-detail-light.png b/public/images/agent-project-detail-light.png new file mode 100644 index 00000000..f00c8593 Binary files /dev/null and b/public/images/agent-project-detail-light.png differ diff --git a/public/images/agent-session-detail-dark.png b/public/images/agent-session-detail-dark.png new file mode 100644 index 00000000..d8b021e6 Binary files /dev/null and b/public/images/agent-session-detail-dark.png differ diff --git a/public/images/agent-session-detail-light.png b/public/images/agent-session-detail-light.png new file mode 100644 index 00000000..62dc13f0 Binary files /dev/null and b/public/images/agent-session-detail-light.png differ diff --git a/public/images/agent-session-detail-sidebar-dark.png b/public/images/agent-session-detail-sidebar-dark.png new file mode 100644 index 00000000..cd62adfc Binary files /dev/null and b/public/images/agent-session-detail-sidebar-dark.png differ diff --git a/public/images/agent-session-detail-sidebar-light.png b/public/images/agent-session-detail-sidebar-light.png new file mode 100644 index 00000000..de95b132 Binary files /dev/null and b/public/images/agent-session-detail-sidebar-light.png differ diff --git a/public/images/agent-to-agent.png b/public/images/agent-to-agent.png new file mode 100644 index 00000000..daf89b68 Binary files /dev/null and b/public/images/agent-to-agent.png differ diff --git a/public/images/agents-dark.png b/public/images/agents-dark.png new file mode 100644 index 00000000..bb42f4a4 Binary files /dev/null and b/public/images/agents-dark.png differ diff --git a/public/images/agents-light.png b/public/images/agents-light.png new file mode 100644 index 00000000..caceb769 Binary files /dev/null and b/public/images/agents-light.png differ diff --git a/public/images/aigateway-dark.png b/public/images/aigateway-dark.png new file mode 100644 index 00000000..c8be0fd0 Binary files /dev/null and b/public/images/aigateway-dark.png differ diff --git a/public/images/aigateway-detail-dark.png b/public/images/aigateway-detail-dark.png new file mode 100644 index 00000000..344b7428 Binary files /dev/null and b/public/images/aigateway-detail-dark.png differ diff --git a/public/images/aigateway-detail-light.png b/public/images/aigateway-detail-light.png new file mode 100644 index 00000000..af44fa04 Binary files /dev/null and b/public/images/aigateway-detail-light.png differ diff --git a/public/images/aigateway-light.png b/public/images/aigateway-light.png new file mode 100644 index 00000000..7ff0684f Binary files /dev/null and b/public/images/aigateway-light.png differ diff --git a/public/images/apikey-dark.png b/public/images/apikey-dark.png new file mode 100644 index 00000000..7d47c249 Binary files /dev/null and b/public/images/apikey-dark.png differ diff --git a/public/images/apikey-light.png b/public/images/apikey-light.png new file mode 100644 index 00000000..d07635cc Binary files /dev/null and b/public/images/apikey-light.png differ diff --git a/public/images/apikey-new-dark.png b/public/images/apikey-new-dark.png new file mode 100644 index 00000000..8c8c1aaa Binary files /dev/null and b/public/images/apikey-new-dark.png differ diff --git a/public/images/apikey-new-light.png b/public/images/apikey-new-light.png new file mode 100644 index 00000000..29a4ef96 Binary files /dev/null and b/public/images/apikey-new-light.png differ diff --git a/public/images/cli-rollback-dark.png b/public/images/cli-rollback-dark.png new file mode 100644 index 00000000..ed5c7259 Binary files /dev/null and b/public/images/cli-rollback-dark.png differ diff --git a/public/images/cli-rollback-detail-dark.png b/public/images/cli-rollback-detail-dark.png new file mode 100644 index 00000000..d3a09983 Binary files /dev/null and b/public/images/cli-rollback-detail-dark.png differ diff --git a/public/images/cli-rollback-detail-light.png b/public/images/cli-rollback-detail-light.png new file mode 100644 index 00000000..da360f8b Binary files /dev/null and b/public/images/cli-rollback-detail-light.png differ diff --git a/public/images/cli-rollback-light.png b/public/images/cli-rollback-light.png new file mode 100644 index 00000000..39a379e9 Binary files /dev/null and b/public/images/cli-rollback-light.png differ diff --git a/public/images/github-action-dark.png b/public/images/github-action-dark.png new file mode 100644 index 00000000..01ce6b7a Binary files /dev/null and b/public/images/github-action-dark.png differ diff --git a/public/images/github-action-light.png b/public/images/github-action-light.png new file mode 100644 index 00000000..e31806c5 Binary files /dev/null and b/public/images/github-action-light.png differ diff --git a/public/images/keyvalue-dark.png b/public/images/keyvalue-dark.png new file mode 100644 index 00000000..184e83d8 Binary files /dev/null and b/public/images/keyvalue-dark.png differ diff --git a/public/images/keyvalue-detail-dark.png b/public/images/keyvalue-detail-dark.png new file mode 100644 index 00000000..1a1ef267 Binary files /dev/null and b/public/images/keyvalue-detail-dark.png differ diff --git a/public/images/keyvalue-detail-light.png b/public/images/keyvalue-detail-light.png new file mode 100644 index 00000000..ca42eb37 Binary files /dev/null and b/public/images/keyvalue-detail-light.png differ diff --git a/public/images/keyvalue-light.png b/public/images/keyvalue-light.png new file mode 100644 index 00000000..6d0cda70 Binary files /dev/null and b/public/images/keyvalue-light.png differ diff --git a/public/images/keyvalue-new-dark.png b/public/images/keyvalue-new-dark.png new file mode 100644 index 00000000..95a215ff Binary files /dev/null and b/public/images/keyvalue-new-dark.png differ diff --git a/public/images/keyvalue-new-light.png b/public/images/keyvalue-new-light.png new file mode 100644 index 00000000..cd4cdb0c Binary files /dev/null and b/public/images/keyvalue-new-light.png differ diff --git a/public/images/project-env-dark.png b/public/images/project-env-dark.png new file mode 100644 index 00000000..45f32fab Binary files /dev/null and b/public/images/project-env-dark.png differ diff --git a/public/images/project-env-light.png b/public/images/project-env-light.png new file mode 100644 index 00000000..18cd85ed Binary files /dev/null and b/public/images/project-env-light.png differ diff --git a/public/images/project-integration-dark.png b/public/images/project-integration-dark.png new file mode 100644 index 00000000..e7da0c04 Binary files /dev/null and b/public/images/project-integration-dark.png differ diff --git a/public/images/project-integration-github-dark.png b/public/images/project-integration-github-dark.png new file mode 100644 index 00000000..9a8986d9 Binary files /dev/null and b/public/images/project-integration-github-dark.png differ diff --git a/public/images/project-integration-github-light.png b/public/images/project-integration-github-light.png new file mode 100644 index 00000000..e64d84d5 Binary files /dev/null and b/public/images/project-integration-github-light.png differ diff --git a/public/images/project-integration-light.png b/public/images/project-integration-light.png new file mode 100644 index 00000000..81ea9806 Binary files /dev/null and b/public/images/project-integration-light.png differ diff --git a/public/images/projects-dark.png b/public/images/projects-dark.png new file mode 100644 index 00000000..f9d2c145 Binary files /dev/null and b/public/images/projects-dark.png differ diff --git a/public/images/projects-light.png b/public/images/projects-light.png new file mode 100644 index 00000000..66287542 Binary files /dev/null and b/public/images/projects-light.png differ diff --git a/public/images/sessions-dark.png b/public/images/sessions-dark.png new file mode 100644 index 00000000..b18834a5 Binary files /dev/null and b/public/images/sessions-dark.png differ diff --git a/public/images/sessions-light.png b/public/images/sessions-light.png new file mode 100644 index 00000000..e63a8eba Binary files /dev/null and b/public/images/sessions-light.png differ diff --git a/public/images/settings-integration-github-dark.png b/public/images/settings-integration-github-dark.png new file mode 100644 index 00000000..26e33e4a Binary files /dev/null and b/public/images/settings-integration-github-dark.png differ diff --git a/public/images/settings-integration-github-light.png b/public/images/settings-integration-github-light.png new file mode 100644 index 00000000..07651d33 Binary files /dev/null and b/public/images/settings-integration-github-light.png differ diff --git a/public/images/settings-org-dark.png b/public/images/settings-org-dark.png new file mode 100644 index 00000000..f19294f9 Binary files /dev/null and b/public/images/settings-org-dark.png differ diff --git a/public/images/settings-org-light.png b/public/images/settings-org-light.png new file mode 100644 index 00000000..ca8205f9 Binary files /dev/null and b/public/images/settings-org-light.png differ diff --git a/public/images/vector-dark.png b/public/images/vector-dark.png new file mode 100644 index 00000000..24065278 Binary files /dev/null and b/public/images/vector-dark.png differ diff --git a/public/images/vector-detail-dark.png b/public/images/vector-detail-dark.png new file mode 100644 index 00000000..9ef41775 Binary files /dev/null and b/public/images/vector-detail-dark.png differ diff --git a/public/images/vector-detail-light.png b/public/images/vector-detail-light.png new file mode 100644 index 00000000..b206149b Binary files /dev/null and b/public/images/vector-detail-light.png differ diff --git a/public/images/vector-light.png b/public/images/vector-light.png new file mode 100644 index 00000000..700f6b53 Binary files /dev/null and b/public/images/vector-light.png differ diff --git a/public/images/vector-new-dark.png b/public/images/vector-new-dark.png new file mode 100644 index 00000000..c7c22e86 Binary files /dev/null and b/public/images/vector-new-dark.png differ diff --git a/public/images/vector-new-light.png b/public/images/vector-new-light.png new file mode 100644 index 00000000..7d898faf Binary files /dev/null and b/public/images/vector-new-light.png differ