broods 0.26.0 → 0.28.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/account.d.ts +47 -31
- package/dist/account.js +1 -1
- package/dist/chunk-2149yqc1.js +5 -0
- package/dist/{chunk-zyz35wc1.js → chunk-3cvxks4m.js} +2 -2
- package/dist/chunk-mnc0tart.js +2 -0
- package/dist/cli/index.js +115 -134
- package/dist/index.d.ts +79 -91
- package/dist/index.js +1 -1
- package/package.json +1 -1
- package/dist/chunk-a6p0aaky.js +0 -2
- package/dist/chunk-hkywabw6.js +0 -5
package/dist/cli/index.js
CHANGED
|
@@ -1,38 +1,20 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import{o,s,l,w,f,a,n,h,e,u,c,d,g,r,i,v}from"../chunk-hkywabw6.js";import{I}from"../chunk-zyz35wc1.js";import{mkdir as Pf,readFile as Nf,readdir as __,writeFile as zt}from"node:fs/promises";import{createHash as jf}from"node:crypto";import{basename as S_,join as zf,relative as I_,resolve as ge}from"node:path";import{watch as T_}from"node:fs";import{spawn as Df}from"node:child_process";import{tmpdir as E_}from"node:os";import{performance as $f}from"node:perf_hooks";import{fileURLToPath as Xf,pathToFileURL as Qf}from"node:url";import{createHash as em}from"node:crypto";import{readFileSync as tm}from"node:fs";import{mkdtemp as rm,readdir as hs,readFile as gs,rm as nm,writeFile as ss}from"node:fs/promises";import is from"node:module";import{tmpdir as om}from"node:os";import{basename as vs,isAbsolute as am,join as Dt,relative as Ut,resolve as Gr}from"node:path";import{build as sm,transformSync as ys}from"esbuild";var ns={anthropic:{label:"Anthropic",modelPlaceholder:"claude-sonnet-4-5-20250929"},azure:{label:"Azure OpenAI",modelPlaceholder:"gpt-4.1-mini"},baseten:{label:"Baseten",modelPlaceholder:"deepseek-ai/DeepSeek-V3"},bedrock:{label:"Amazon Bedrock",modelPlaceholder:"anthropic.claude-sonnet-4-5-20250929-v1:0"},cerebras:{label:"Cerebras",modelPlaceholder:"llama3.1-8b"},cohere:{label:"Cohere",modelPlaceholder:"command-a-03-2025"},custom:{label:"Custom OpenAI-compatible",modelPlaceholder:"gpt-oss-120b"},deepinfra:{label:"DeepInfra",modelPlaceholder:"deepseek-ai/DeepSeek-V3"},deepseek:{label:"DeepSeek",modelPlaceholder:"deepseek-chat"},fireworks:{label:"Fireworks",modelPlaceholder:"accounts/fireworks/models/deepseek-v3"},google:{label:"Google",modelPlaceholder:"gemini-2.5-flash"},groq:{label:"Groq",modelPlaceholder:"llama-3.3-70b-versatile"},minimax:{label:"MiniMax",modelPlaceholder:"MiniMax-M2.7"},mistral:{label:"Mistral",modelPlaceholder:"mistral-large-latest"},openai:{label:"OpenAI",modelPlaceholder:"gpt-4.1-mini"},perplexity:{label:"Perplexity",modelPlaceholder:"sonar-pro"},togetherai:{label:"Together.ai",modelPlaceholder:"deepseek-ai/DeepSeek-V3"},v0:{label:"Vercel v0",modelPlaceholder:"v0-1.0-md"},vercel:{label:"Vercel AI Gateway",modelPlaceholder:"openai/gpt-4.1-mini"},vertex:{label:"Google Vertex AI",modelPlaceholder:"gemini-2.5-flash"},xai:{label:"xAI Grok",modelPlaceholder:"grok-4"}},os=Object.keys(ns);function as(t){return Object.hasOwn(ns,t)}var cr="*",im=`const passthrough = (input) => input;
|
|
3
|
-
|
|
4
|
-
export const defineAgent = passthrough;
|
|
5
|
-
export const defineHarness = passthrough;
|
|
6
|
-
export const defineWorkspace = passthrough;
|
|
7
|
-
export const defineSandbox = passthrough;
|
|
8
|
-
export const defineSkill = passthrough;
|
|
9
|
-
export const definePolicy = passthrough;
|
|
10
|
-
export const defineCron = passthrough;
|
|
11
|
-
export const defineBroods = passthrough;
|
|
12
|
-
export const env = (name) => ({ __beeblastEnv: true, name });
|
|
13
|
-
export default {};
|
|
14
|
-
`,rt=1e7,ls=20000000,cs=200,lm=new Set(["node_modules",".git"]),cm=[/^\.env(?:\.|$)/i,/^id_(?:rsa|dsa|ecdsa|ed25519)(?:\.pub)?$/i,/\.(?:pem|key|p12|pfx)$/i],Bn={onStart:"agent.started",onStepFinish:"agent.step.finished",onToolCall:"tool.call.started",onToolResult:"tool.result",onFinish:"agent.finished",onApproval:"agent.approval.required",onError:"agent.failed",onSubagentFinish:"subagent.task.finished",onMessageReceived:"channel.message.received",onMessageSending:"channel.message.sending"};async function ot(t={}){let p=t.cwd??process.cwd();e(p);let m=Gr(p,o),y=await dm(m),b=await pm(y),x=await mm(b,p,t.project),_=b.filter((A)=>r(A.value)).map((A)=>({exportName:A.exportName,file:A.file,resource:A.value})),S=_.map((A)=>A.resource);ps(S),Tm(S);let E=km(_,b),k=Mm(S);for(let A of S)gm(A);for(let A of S)vm(A);for(let A of S)ym(A);bm(S),xm(S),$m(_,k);let M=Em(_),R=um(x,t.stage??(t.useRuntimeStage===!1?void 0:a()),t.command??"dev"),C=(await Promise.all(_.map((A)=>Rm(A,m,k)))).flat().sort((A,j)=>`${A.kind}:${A.name}`.localeCompare(`${j.kind}:${j.name}`));return ps(C),{config:x,resources:S,resourceAliases:M,channels:E,manifest:{version:1,project:x.project,stage:R,resources:C}}}function bs(t){let p=new Set;for(let m of t.resources)Jr(m.config,p);return[...p].sort()}function Jr(t,p){if(Array.isArray(t)){for(let m of t)Jr(m,p);return}if(t&&typeof t==="object"){let m=t;if(m.__beeblastEnv===!0&&typeof m.name==="string"){p.add(m.name);return}for(let y of Object.values(m))Jr(y,p)}}function um(t,p,m){if(p)return p;let y=t.stages?.[m];if(y)return y;return m==="deploy"?"production":"development"}async function dm(t){let p=[];async function m(y){let b=await hs(y,{withFileTypes:!0});for(let x of b){let _=Dt(y,x.name);if(x.isDirectory()){if(x.name===s||x.name==="generated")continue;await m(_)}else if(x.isFile()&&x.name.endsWith(".ts"))p.push(_)}}return await m(t),p.sort((y,b)=>Ut(t,y).localeCompare(Ut(t,b)))}async function pm(t){fm();let p=[];for(let m of t){let b=await import(`${Qf(m).href}?t=${Date.now()}`);p.push(...Object.entries(b).map(([x,_])=>({exportName:x,file:m,value:_})))}return p}var us=!1;function fm(){if(us)return;if(us=!0,typeof is.registerHooks!=="function")return;is.registerHooks({load:(t,p,m)=>{let[y]=t.split("?");if(y===void 0||!y.startsWith("file:")||!y.endsWith(".ts"))return m(t,p);let b=Xf(y);return{format:"module",shortCircuit:!0,source:ys(tm(b,"utf8"),{loader:"ts",format:"esm",sourcefile:b,sourcemap:"inline"}).code}}})}async function mm(t,p,m){let b=t.find((_)=>v(_.value))?.value?.config??{},x=m??process.env.BROODS_PROJECT??b.project??rh(vs(Gr(p)));if(!x.trim())throw Error("Project name is required. Pass --project <name> or set BROODS_PROJECT.");return{...b,project:x}}var ds=new Set(["agent","harness","model","provider","session","hooks","connections","tools","denyTools","sandbox","workspaces","subagent","skills","scheduler","policies","publicAccess"]),hm={workspace:"workspaces",skill:"skills",policy:"policies",tool:"tools",channel:"connections",channels:"connections",hook:"hooks",subagents:"subagent",sandboxes:"sandbox",systemPrompt:"agent",system:"agent"};function gm(t){if(t.kind!=="agent")return;let p=t.config;for(let m of Object.keys(p)){if(ds.has(m))continue;let y=hm[m],b=y?` Did you mean "${y}"?`:` Allowed keys: ${[...ds].sort().join(", ")}.`;throw Error(`Agent "${t.name}" has an unknown config key "${m}".${b}`)}}function vm(t){if(t.kind!=="workspace")return;let m=t.config.storage;if(m===void 0)return;if(!m||typeof m!=="object"||Array.isArray(m))throw Error(`Workspace "${t.name}" config.storage must be an object`);let y=m.provider;if(y===void 0||y==="s3")return;if(y==="vercel")throw Error(`Workspace "${t.name}" uses storage.provider "vercel", but Vercel Drive workspace storage is not supported yet. Use storage.provider "s3" or omit storage until Vercel Drive is wired.`);throw Error(`Workspace "${t.name}" config.storage.provider must be one of: s3`)}function ym(t){if(t.kind!=="workspace")return;let p=t.config;if(typeof p.partitioned==="string")throw Error(`Workspace "${t.name}" config.partitioned must be a boolean; string modes are not supported.`);if(p.isolation!==void 0)throw Error(`Workspace "${t.name}" config.isolation is no longer supported; use partitioned: true.`)}function bm(t){let p=new Map(t.filter((m)=>m.kind==="workspace").map((m)=>[m.name,m]));for(let m of t){if(m.kind!=="agent")continue;let y=m.config,b=y.connections;if(b!==void 0&&!Array.isArray(b))throw Error(`Agent "${m.name}" config.connections must be an array of connection definitions`);let x=Array.isArray(b)?b.filter(i):[],_=new Set;for(let M of x){let R=M.config,C=typeof R.id==="string"?R.id:void 0;if(C){if(_.has(C))throw Error(`Duplicate channel id: ${C}`);_.add(C)}if(M.partition)ws(M.partition,`Agent "${m.name}" connection "${M.type}"`);if(M.config&&typeof M.config==="object"&&(("workspaceIsolationScope"in M.config)||("workspaceScope"in M.config)))throw Error(`Agent "${m.name}" connection "${M.type}" uses workspaceScope, which is no longer supported; use partition.`)}let E=(Array.isArray(y.workspaces)?y.workspaces.map((M)=>wm(M,p)).filter((M)=>Boolean(M)):[]).filter((M)=>M.config.partitioned===!0),k=x.filter((M)=>M.partition);if(k.length>0&&E.length===0){let M=k[0];throw Error(`Agent "${m.name}" connection "${M.type}" defines partition, but no attached workspace has partitioned: true.`)}if(E.length>0){for(let M of x)if(!M.partition)throw Error(`Agent "${m.name}" attaches partitioned workspace "${E[0].name}", but connection "${M.type}" does not define partition.`)}}}function ws(t,p){if(!t)return;if(t.by==="shared"){if("alias"in t&&t.alias!==void 0)throw Error(`${p} partition.alias is only supported when partition.by is conversation`);return}if(t.by!=="conversation")throw Error(`${p} partition.by must be one of: shared, conversation`);if(typeof t.alias!=="string"||t.alias.length===0)throw Error(`${p} partition.alias is required when partition.by is conversation`);if(!/^[A-Za-z0-9._-]+$/.test(t.alias))throw Error(`${p} partition.alias must use only letters, numbers, dots, underscores, or hyphens`);if(t.alias==="."||t.alias==="..")throw Error(`${p} partition.alias must not be "." or ".."`)}function wm(t,p){if(r(t)&&t.kind==="workspace")return t;if(typeof t==="string")return p.get(t);if(t&&typeof t==="object"&&"workspace"in t){let m=t.workspace;if(r(m)&&m.kind==="workspace")return m;if(typeof m==="string")return p.get(m)}return}function xm(t){let p=new Map(t.filter((m)=>m.kind==="sandbox").map((m)=>[m.name,m]));for(let m of t){if(m.kind!=="agent")continue;let y=m.config,b=xs(y.sandbox,p),x=y.workspaces;if(!Array.isArray(x))continue;for(let _ of x){let S=Sm(_),E=_m(_,b,p);if(!E||Im(E))continue;throw Error(`Agent "${m.name}" workspace "${S}" uses sandbox "${E.name}" (${_s(E)}) which does not support S3 workspace mounts. Use lambda/sandbox, or daytona with options.mountAwsS3Buckets: true, or set this workspace ref to sandbox: null for read-only S3 access.`)}}}function xs(t,p){if(r(t)&&t.kind==="sandbox")return t;if(typeof t==="string")return p.get(t);return}function _m(t,p,m){if(t&&typeof t==="object"&&"sandbox"in t){let y=t.sandbox;if(y===null)return;return xs(y,m)}return p}function Sm(t){if(r(t)&&t.kind==="workspace")return t.name;if(t&&typeof t==="object"&&"workspace"in t){let p=t.workspace;if(r(p))return p.name;if(typeof p==="string")return p}return"<unknown>"}function Im(t){let p=_s(t);if(p==="lambda"||p==="sandbox")return!0;if(p!=="daytona")return!1;let m=t.config.options;return Boolean(m&&typeof m==="object"&&!Array.isArray(m)&&m.mountAwsS3Buckets===!0)}function _s(t){return typeof t.config.provider==="string"?t.config.provider:"sandbox"}function Tm(t){let p=new Set(t.filter((m)=>m.kind==="sandbox").map((m)=>m.name));for(let m of t){if(m.kind!=="agent")continue;let y=m.config.harness?.sandbox;if(r(y)&&y.kind==="sandbox"&&!p.has(y.name))throw Error(`Agent "${m.name}" harness references sandbox "${y.name}", but that sandbox is not exported from broods/`)}}function ps(t){let p=new Set;for(let m of t){let y=`${m.kind}:${m.name}`;if(p.has(y))throw Error(`Duplicate resource: ${y}`);p.add(y)}}function Em(t){let p={},m=new Set;for(let{exportName:y,resource:b}of t){if(y==="default"||!qn(y))continue;let x=`${b.kind}:${y}`;if(m.has(x))throw Error(`Duplicate export alias for ${b.kind}: ${y}`);m.add(x),p[b.kind]??={},p[b.kind][b.name]=y}return p}function km(t,p){let m=new Map;for(let _ of p){if(!i(_.value)||_.exportName==="default"||!qn(_.exportName))continue;let S=m.get(_.value);if(S&&S!==_.exportName)throw Error(`Channel is exported more than once: ${S}, ${_.exportName}`);m.set(_.value,_.exportName)}let y=new Map,b=new Set,x=[];for(let{exportName:_,resource:S}of t){if(S.kind!=="agent")continue;let E=S.config.connections;if(E===void 0)continue;if(!Array.isArray(E))throw Error(`Agent "${S.name}" config.connections must be an array of connection definitions`);let k=new Set;for(let M of E){if(!i(M))throw Error(`Agent "${S.name}" config.connections must contain connection definitions`);let R=y.get(M);if(R&&R!==S.name)throw Error(`Channel ${M.type} is already attached to agent "${R}" and cannot also attach to "${S.name}"`);if(k.has(M.type))throw Error(`Agent "${S.name}" cannot configure more than one ${M.type} channel`);y.set(M,S.name),k.add(M.type);let C=_!=="default"&&qn(_)?_:S.name,A=m.get(M)??`${C}${Is(M.type)}Channel`;if(b.has(A))throw Error(`Duplicate channel export alias: ${A}`);b.add(A),x.push({alias:A,type:M.type,id:A,agentName:S.name})}}for(let[_,S]of m)if(!y.has(_))throw Error(`Channel "${S}" must be attached to exactly one agent`);return x.sort((_,S)=>_.alias.localeCompare(S.alias))}function $m(t,p){for(let{resource:m}of t){if(m.kind!=="agent")continue;let y=m.config.connections;if(!Array.isArray(y))continue;for(let b of y){if(!i(b))continue;if(Ss(b,p).length>0)continue;throw Error(`Agent "${m.name}" connection "${b.type}" reaches no rooms: declare a ${b.type} channel for it, or set allowedChannelIds: ["*"] to answer everywhere`)}}}function Ss(t,p){let m=t.config.allowedChannelIds??[];if(m.includes(cr))return[cr];return[...new Set([...p.get(t)??[],...m])]}function Mm(t){let p=new Map;for(let m of t){if(m.kind!=="channelRecord")continue;let y=m.config;if(!i(y.connection))continue;let b=Ts(m.name,y.externalId);if(b.length===0)continue;let x=p.get(y.connection)??new Set;for(let _ of b)x.add(_);p.set(y.connection,x)}return p}function Is(t){return t.charAt(0).toUpperCase()+t.slice(1)}function qn(t){return/^[A-Za-z_$][A-Za-z0-9_$]*$/.test(t)}async function Rm(t,p,m){let y=t.resource;if(y.kind==="agent"){let b=Um(y,p,m);return[...b.hookResource?[b.hookResource]:[],{kind:y.kind,name:y.name,...y.description?{description:y.description}:{},config:b.config}]}if(y.kind==="channelRecord"){let b=y.config,x=Ts(y.name,b.externalId);return x.map((_)=>({kind:y.kind,name:x.length===1?y.name:`${y.name}-${_}`,...y.description?{description:y.description}:{},config:Gm(y.name,{...b,externalId:_})}))}return[{kind:y.kind,name:y.name,...y.description?{description:y.description}:{},config:await Cm(t,p)}]}function Ts(t,p){if(p===void 0)return[];if(typeof p==="string")return fs(t,p),[p];if(!Array.isArray(p))throw Error(`Channel "${t}" externalId must be a string or an array`);if(p.length===0)throw Error(`Channel "${t}" externalId must not be an empty array`);let m=new Set;for(let y of p){if(typeof y!=="string"||y.length===0)throw Error(`Channel "${t}" externalId must be an array of non-empty strings`);if(m.has(y))throw Error(`Channel "${t}" externalId lists ${y} twice`);fs(t,y),m.add(y)}return p}function fs(t,p){if(p!==cr)return;throw Error(`Channel "${t}" cannot use "${cr}" as its id: a record matches one exact room. To answer everywhere, set allowedChannelIds: ["${cr}"] on the connection; undeclared rooms already fall back to its agent.`)}async function Cm(t,p){let m=t.resource;if(m.kind==="skill")return await qm(m.config,p);if(m.kind==="workspace"){let y={...m.config};if(y.partitioned!==void 0){if(typeof y.partitioned!=="boolean")throw Error(`Workspace "${m.name}" config.partitioned must be a boolean`);let b=y.partitioned;if(delete y.partitioned,b)y.isolation=!0}return nt(y)}if(m.kind==="tool")return await Wm(t,m.config,p);if(m.kind==="policy"){let y={...m.config};return y.version=y.version??1,nt(y)}if(m.kind==="cron"){let y={...m.config},b=y.agent;if(y.agentId=r(b)?b.name:b,y.name=y.name??m.name,delete y.agent,typeof y.input==="string")y.events=[{role:"user",content:[{type:"text",text:y.input}]}],delete y.input;return nt(y)}return nt(m.config)}var Am=new Set(["apiKey","base_url","baseURL"]),Om=new Set(["activeTools","debug","inactiveTools","permissionMode","sandbox","startupTimeoutMs","type","webSearch"]),Pm=new Set(["enabled","level","subsystems"]);function Nm(t){if(Am.has(t))return"";let p=t.replace(/[^a-z0-9]/gi,"").toLowerCase();if(p==="baseurl")return'"base_url" or "baseURL"';if(p==="apikey")return'"apiKey"';return""}function jm(t,p){if(p===void 0||p===null)return;if(typeof p!=="object"||Array.isArray(p))throw Error(`Agent "${t}" config.provider must be an object`);for(let[m,y]of Object.entries(p)){if(!as(m))throw Error(`Agent "${t}" config.provider.${m} is not a supported provider (expected one of: ${os.join(", ")})`);if(typeof y!=="object"||y===null||Array.isArray(y))throw Error(`Agent "${t}" config.provider.${m} must be an object`);let b=y;for(let x of Object.keys(b)){let _=Nm(x);if(_)throw Error(`Agent "${t}" config.provider.${m} has unknown option "${x}" — did you mean ${_}?`)}if(m==="custom"&&b.base_url===void 0&&b.baseURL===void 0)throw Error(`Agent "${t}" config.provider.custom.base_url is required (use "base_url" or "baseURL")`)}}function zm(t,p){if(p===void 0||p===null)return;if(typeof p!=="object"||Array.isArray(p))throw Error(`Agent "${t}" config.harness must be an object`);let m=p;for(let y of Object.keys(m))if(!Om.has(y))throw Error(`Agent "${t}" config.harness has unknown option "${y}"`);if(m.type!=="claude-code"&&m.type!=="codex"&&m.type!=="deepagents"&&m.type!=="opencode"&&m.type!=="pi")throw Error(`Agent "${t}" config.harness.type must be claude-code, codex, deepagents, opencode, or pi`);if(m.sandbox===void 0)throw Error(`Agent "${t}" config.harness.sandbox is required for ${m.type}`);if(m.sandbox!==void 0&&!(typeof m.sandbox==="string"||r(m.sandbox)&&m.sandbox.kind==="sandbox"))throw Error(`Agent "${t}" config.harness.sandbox must be a defineSandbox resource or sandbox name`);if(m.permissionMode!==void 0&&m.permissionMode!=="allow-reads"&&m.permissionMode!=="allow-edits"&&m.permissionMode!=="allow-all")throw Error(`Agent "${t}" config.harness.permissionMode must be allow-reads, allow-edits, or allow-all`);if(m.type==="codex"&&m.permissionMode!==void 0&&m.permissionMode!=="allow-all")throw Error(`Agent "${t}" config.harness.permissionMode must be allow-all for codex`);if(m.startupTimeoutMs!==void 0&&(typeof m.startupTimeoutMs!=="number"||!Number.isSafeInteger(m.startupTimeoutMs)||m.startupTimeoutMs<1||m.startupTimeoutMs>600000))throw Error(`Agent "${t}" config.harness.startupTimeoutMs must be an integer from 1 to 600000`);if(m.webSearch!==void 0&&typeof m.webSearch!=="boolean")throw Error(`Agent "${t}" config.harness.webSearch must be a boolean`);if(m.type!=="codex"&&m.webSearch!==void 0)throw Error(`Agent "${t}" config.harness.webSearch is only supported by codex`);if(m.type==="pi"&&m.startupTimeoutMs!==void 0)throw Error(`Agent "${t}" config.harness.startupTimeoutMs is not supported by pi`);if(Wn(t,m.activeTools,"activeTools"),Wn(t,m.inactiveTools,"inactiveTools"),m.activeTools!==void 0&&m.inactiveTools!==void 0)throw Error(`Agent "${t}" config.harness must use either activeTools or inactiveTools, not both`);Dm(t,m.debug)}function Dm(t,p){if(p===void 0)return;if(typeof p!=="object"||p===null||Array.isArray(p))throw Error(`Agent "${t}" config.harness.debug must be an object`);let m=p;for(let y of Object.keys(m))if(!Pm.has(y))throw Error(`Agent "${t}" config.harness.debug has unknown option "${y}"`);if(m.enabled!==void 0&&typeof m.enabled!=="boolean")throw Error(`Agent "${t}" config.harness.debug.enabled must be a boolean`);if(m.level!==void 0&&m.level!=="error"&&m.level!=="warn"&&m.level!=="info"&&m.level!=="debug"&&m.level!=="trace")throw Error(`Agent "${t}" config.harness.debug.level must be error, warn, info, debug, or trace`);Wn(t,m.subsystems,"debug.subsystems")}function Wn(t,p,m){if(p!==void 0&&(!Array.isArray(p)||!p.every((y)=>typeof y==="string"&&y.trim().length>0)))throw Error(`Agent "${t}" config.harness.${m} must be an array of non-empty strings`)}function Um(t,p,m){let y={...t.config};if(jm(t.name,y.provider),zm(t.name,y.harness),y.harness&&typeof y.harness==="object"&&!Array.isArray(y.harness)){let x={...y.harness};if(y.sandbox!==void 0)throw Error(`Agent "${t.name}" must configure the AI SDK harness sandbox on defineHarness, not defineAgent`);y.sandbox=r(x.sandbox)?x.sandbox.name:x.sandbox,delete x.sandbox,y.harness=x}let b=Zm(t.name,y.hooks);if(b)y.hooks=b.agentHooksConfig;else if(y.hooks!==void 0)y.hooks=Es(y.hooks,t.name);if(y.connections!==void 0){if(!Array.isArray(y.connections))throw Error(`Agent "${t.name}" config.connections must be an array of connection definitions`);y.channels=Object.fromEntries(y.connections.map((x)=>{if(!i(x))throw Error(`Agent "${t.name}" config.connections must contain connection definitions`);let _=`${t.name}${Is(x.type)}Channel`,S=Ss(x,m);return[x.type,{id:_,...x.config,...x.partition?{partition:x.partition}:{},allowedChannelIds:S}]})),delete y.connections}if(r(y.sandbox))y.sandbox=y.sandbox.name;if(Array.isArray(y.workspaces))y.workspaces=y.workspaces.map((x)=>Vm(x,t.name));if(y.policies!==void 0){let x=Bm(y.policies,t.name);if(x)y.policies=x;else delete y.policies}return{config:nt(y),...b?.hookResource?{hookResource:b.hookResource}:{}}}function Zm(t,p){if(p===void 0)return;if(!p||typeof p!=="object"||Array.isArray(p))throw Error(`Agent "${t}" config.hooks must be an object`);let m=p,y=Object.keys(Bn).flatMap((k)=>{let M=m[k];if(M===void 0)return[];if(typeof M!=="function")throw Error(`Agent "${t}" config.hooks.${k} must be a function`);return[{name:k,event:Bn[k],source:Lm(M.toString())}]});if(y.length===0)return;let b=`${t}-hooks`,x=Fm(t,y),_=Buffer.byteLength(x);if(_>rt)throw Error(`Agent "${t}" hook bundle is too large (${_} bytes, max ${rt})`);let S=y.map((k)=>k.event),E=Es(m,t);return E.code=[{hookId:b}],{agentHooksConfig:E,hookResource:{kind:"hook",name:b,description:`Inline hooks for agent ${t}`,config:{events:S,bundle:x,sha256:Vn(x)}}}}function Es(t,p){if(!t||typeof t!=="object"||Array.isArray(t))throw Error(`Agent "${p}" config.hooks must be an object`);let m=Object.entries(t);for(let[b]of m){if(b==="webhooks"||b in Bn)continue;throw Error(`Agent "${p}" config.hooks.${b} is not supported. Use inline hook callbacks or hooks.webhooks.`)}return Object.fromEntries(m.filter(([b])=>b==="webhooks"))}function Lm(t){let p=t.trim();if(/^(async\s+)?function\b/.test(p)||/^(async\s*)?\(/.test(p)||/^(async\s+)?[A-Za-z_$][\w$]*\s*=>/.test(p))return p;if(/^(async\s+)?[A-Za-z_$][\w$]*\s*\(/.test(p))return p.replace(/^(async\s+)?/,"$1function ");return p}function Fm(t,p){let m=`export default {
|
|
15
|
-
${p.map((y)=>` ${JSON.stringify(y.event)}: ${y.source},`).join(`
|
|
2
|
+
import{R as Y,S as qe,T as is,f as pe,g as Oe,h as bf,i as $s,j as Wr,k as ct,l as ut,m as Za,n as Q,o as Nr,p as Rf,r as La,u as Is}from"../chunk-2149yqc1.js";import{U as Vh}from"../chunk-3cvxks4m.js";import{mkdir as Cf,readFile as Af,readdir as w_,writeFile as Et}from"node:fs/promises";import{createHash as Of}from"node:crypto";import{basename as b_,join as Pf,relative as x_,resolve as te}from"node:path";import{watch as __}from"node:fs";import{spawn as Nf}from"node:child_process";import{tmpdir as S_}from"node:os";import{performance as If}from"node:perf_hooks";import{fileURLToPath as Kf,pathToFileURL as ls}from"node:url";import{createHash as Hf}from"node:crypto";import{readFileSync as Yf}from"node:fs";import{mkdtemp as Xf,readdir as cs,readFile as Qf,rm as em,writeFile as tm}from"node:fs/promises";import Qa from"node:module";import{tmpdir as rm}from"node:os";import{basename as nm,isAbsolute as om,join as jr,relative as kt,resolve as Dr}from"node:path";import{build as am,transformSync as us}from"esbuild";var Ha={anthropic:{label:"Anthropic",modelPlaceholder:"claude-sonnet-4-5-20250929"},azure:{label:"Azure OpenAI",modelPlaceholder:"gpt-4.1-mini"},baseten:{label:"Baseten",modelPlaceholder:"deepseek-ai/DeepSeek-V3"},bedrock:{label:"Amazon Bedrock",modelPlaceholder:"anthropic.claude-sonnet-4-5-20250929-v1:0"},cerebras:{label:"Cerebras",modelPlaceholder:"llama3.1-8b"},cohere:{label:"Cohere",modelPlaceholder:"command-a-03-2025"},custom:{label:"Custom OpenAI-compatible",modelPlaceholder:"gpt-oss-120b"},deepinfra:{label:"DeepInfra",modelPlaceholder:"deepseek-ai/DeepSeek-V3"},deepseek:{label:"DeepSeek",modelPlaceholder:"deepseek-chat"},fireworks:{label:"Fireworks",modelPlaceholder:"accounts/fireworks/models/deepseek-v3"},google:{label:"Google",modelPlaceholder:"gemini-2.5-flash"},groq:{label:"Groq",modelPlaceholder:"llama-3.3-70b-versatile"},minimax:{label:"MiniMax",modelPlaceholder:"MiniMax-M2.7"},mistral:{label:"Mistral",modelPlaceholder:"mistral-large-latest"},openai:{label:"OpenAI",modelPlaceholder:"gpt-4.1-mini"},perplexity:{label:"Perplexity",modelPlaceholder:"sonar-pro"},togetherai:{label:"Together.ai",modelPlaceholder:"deepseek-ai/DeepSeek-V3"},v0:{label:"Vercel v0",modelPlaceholder:"v0-1.0-md"},vercel:{label:"Vercel AI Gateway",modelPlaceholder:"openai/gpt-4.1-mini"},vertex:{label:"Google Vertex AI",modelPlaceholder:"gemini-2.5-flash"},xai:{label:"xAI Grok",modelPlaceholder:"grok-4"}},Ya=Object.keys(Ha);function Xa(e){return Object.hasOwn(Ha,e)}var Yt="*",$t=1e7,es=20000000,ts=200,sm=new Set(["node_modules",".git"]),im=[/^\.env(?:\.|$)/i,/^id_(?:rsa|dsa|ecdsa|ed25519)(?:\.pub)?$/i,/\.(?:pem|key|p12|pfx)$/i],Pn={onStart:"agent.started",onStepFinish:"agent.step.finished",onToolCall:"tool.call.started",onToolResult:"tool.result",onFinish:"agent.finished",onApproval:"agent.approval.required",onError:"agent.failed",onSubagentFinish:"subagent.task.finished",onMessageReceived:"channel.message.received",onMessageSending:"channel.message.sending"};async function We(e={}){let t=e.cwd??process.cwd();Q(t);let r=Dr(t,pe),n=await cm(r),o=await um(n),a=await pm(o,t,e.project),s=o.filter((f)=>Y(f.value)).map((f)=>({exportName:f.exportName,file:f.file,resource:f.value})),i=s.map((f)=>f.resource);os(i),Sm(i);let c=Tm(s,o),u=km(i);for(let f of i)mm(f);for(let f of i)hm(f);for(let f of i)gm(f);vm(i),wm(i),Em(s,u);let d=Im(s),p=lm(a,e.stage??(e.useRuntimeStage===!1?void 0:ct()),e.command??"dev"),m=(await Promise.all(s.map((f)=>$m(f,r,u)))).flat().sort((f,y)=>`${f.kind}:${f.name}`.localeCompare(`${y.kind}:${y.name}`));return os(m),{config:a,resources:i,resourceAliases:d,channels:c,manifest:{version:1,project:a.project,stage:p,resources:m}}}function ds(e){let t=new Set;for(let r of e.resources)Nn(r.config,t);return[...t].sort()}function Nn(e,t){if(Array.isArray(e)){for(let r of e)Nn(r,t);return}if(e&&typeof e==="object"){let r=e;if(r.__beeblastEnv===!0&&typeof r.name==="string"){t.add(r.name);return}for(let n of Object.values(r))Nn(n,t)}}function lm(e,t,r){if(t)return t;let n=e.stages?.[r];if(n)return n;return r==="deploy"?"production":"development"}async function cm(e){let t=[];async function r(n){let o=await cs(n,{withFileTypes:!0});for(let a of o){let s=jr(n,a.name);if(a.isDirectory()){if(a.name===Oe||a.name==="generated")continue;await r(s)}else if(a.isFile()&&a.name.endsWith(".ts"))t.push(s)}}return await r(e),t.sort((n,o)=>kt(e,n).localeCompare(kt(e,o)))}async function um(e){dm();let t=[];for(let r of e){let o=await import(`${ls(r).href}?t=${Date.now()}`);t.push(...Object.entries(o).map(([a,s])=>({exportName:a,file:r,value:s})))}return t}var rs=!1;function dm(){if(rs)return;if(rs=!0,typeof Qa.registerHooks!=="function")return;Qa.registerHooks({load:(e,t,r)=>{let[n]=e.split("?");if(n===void 0||!n.startsWith("file:")||!n.endsWith(".ts"))return r(e,t);let o=Kf(n);return{format:"module",shortCircuit:!0,source:us(Yf(o,"utf8"),{loader:"ts",format:"esm",sourcefile:o,sourcemap:"inline"}).code}}})}async function pm(e,t,r){let o=e.find((s)=>is(s.value))?.value?.config??{},a=r??process.env.BROODS_PROJECT??o.project??Xm(nm(Dr(t)));if(!a.trim())throw Error("Project name is required. Pass --project <name> or set BROODS_PROJECT.");return{...o,project:a}}var ns=new Set(["agent","harness","model","provider","session","hooks","connections","tools","mcpServers","denyTools","sandbox","workspaces","subagent","skills","scheduler","policies","publicAccess"]),fm={workspace:"workspaces",skill:"skills",policy:"policies",tool:"tools",mcp:"mcpServers",mcpServer:"mcpServers",channel:"connections",channels:"connections",hook:"hooks",subagents:"subagent",sandboxes:"sandbox",systemPrompt:"agent",system:"agent"};function mm(e){if(e.kind!=="agent")return;let t=e.config;for(let r of Object.keys(t)){if(ns.has(r))continue;let n=fm[r],o=n?` Did you mean "${n}"?`:` Allowed keys: ${[...ns].sort().join(", ")}.`;throw Error(`Agent "${e.name}" has an unknown config key "${r}".${o}`)}}function hm(e){if(e.kind!=="workspace")return;let r=e.config.storage;if(r===void 0)return;if(!r||typeof r!=="object"||Array.isArray(r))throw Error(`Workspace "${e.name}" config.storage must be an object`);let n=r.provider;if(n===void 0||n==="s3")return;if(n==="vercel")throw Error(`Workspace "${e.name}" uses storage.provider "vercel", but Vercel Drive workspace storage is not supported yet. Use storage.provider "s3" or omit storage until Vercel Drive is wired.`);throw Error(`Workspace "${e.name}" config.storage.provider must be one of: s3`)}function gm(e){if(e.kind!=="workspace")return;let t=e.config;if(typeof t.partitioned==="string")throw Error(`Workspace "${e.name}" config.partitioned must be a boolean; string modes are not supported.`);if(t.isolation!==void 0)throw Error(`Workspace "${e.name}" config.isolation is no longer supported; use partitioned: true.`)}function vm(e){let t=new Map(e.filter((r)=>r.kind==="workspace").map((r)=>[r.name,r]));for(let r of e){if(r.kind!=="agent")continue;let n=r.config,o=n.connections;if(o!==void 0&&!Array.isArray(o))throw Error(`Agent "${r.name}" config.connections must be an array of connection definitions`);let a=Array.isArray(o)?o.filter(qe):[],s=new Set;for(let d of a){let p=d.config,m=typeof p.id==="string"?p.id:void 0;if(m){if(s.has(m))throw Error(`Duplicate channel id: ${m}`);s.add(m)}if(d.partition)ps(d.partition,`Agent "${r.name}" connection "${d.type}"`);if(d.config&&typeof d.config==="object"&&(("workspaceIsolationScope"in d.config)||("workspaceScope"in d.config)))throw Error(`Agent "${r.name}" connection "${d.type}" uses workspaceScope, which is no longer supported; use partition.`)}let c=(Array.isArray(n.workspaces)?n.workspaces.map((d)=>ym(d,t)).filter((d)=>Boolean(d)):[]).filter((d)=>d.config.partitioned===!0),u=a.filter((d)=>d.partition);if(u.length>0&&c.length===0){let d=u[0];throw Error(`Agent "${r.name}" connection "${d.type}" defines partition, but no attached workspace has partitioned: true.`)}if(c.length>0){for(let d of a)if(!d.partition)throw Error(`Agent "${r.name}" attaches partitioned workspace "${c[0].name}", but connection "${d.type}" does not define partition.`)}}}function ps(e,t){if(!e)return;if(e.by==="shared"){if("alias"in e&&e.alias!==void 0)throw Error(`${t} partition.alias is only supported when partition.by is conversation`);return}if(e.by!=="conversation")throw Error(`${t} partition.by must be one of: shared, conversation`);if(typeof e.alias!=="string"||e.alias.length===0)throw Error(`${t} partition.alias is required when partition.by is conversation`);if(!/^[A-Za-z0-9._-]+$/.test(e.alias))throw Error(`${t} partition.alias must use only letters, numbers, dots, underscores, or hyphens`);if(e.alias==="."||e.alias==="..")throw Error(`${t} partition.alias must not be "." or ".."`)}function ym(e,t){if(Y(e)&&e.kind==="workspace")return e;if(typeof e==="string")return t.get(e);if(e&&typeof e==="object"&&"workspace"in e){let r=e.workspace;if(Y(r)&&r.kind==="workspace")return r;if(typeof r==="string")return t.get(r)}return}function wm(e){let t=new Map(e.filter((r)=>r.kind==="sandbox").map((r)=>[r.name,r]));for(let r of e){if(r.kind!=="agent")continue;let n=r.config,o=fs(n.sandbox,t),a=n.workspaces;if(!Array.isArray(a))continue;for(let s of a){let i=xm(s),c=bm(s,o,t);if(!c||_m(c))continue;throw Error(`Agent "${r.name}" workspace "${i}" uses sandbox "${c.name}" (${ms(c)}) which does not support S3 workspace mounts. Use lambda/sandbox, or daytona with options.mountAwsS3Buckets: true, or set this workspace ref to sandbox: null for read-only S3 access.`)}}}function fs(e,t){if(Y(e)&&e.kind==="sandbox")return e;if(typeof e==="string")return t.get(e);return}function bm(e,t,r){if(e&&typeof e==="object"&&"sandbox"in e){let n=e.sandbox;if(n===null)return;return fs(n,r)}return t}function xm(e){if(Y(e)&&e.kind==="workspace")return e.name;if(e&&typeof e==="object"&&"workspace"in e){let t=e.workspace;if(Y(t))return t.name;if(typeof t==="string")return t}return"<unknown>"}function _m(e){let t=ms(e);if(t==="lambda"||t==="sandbox")return!0;if(t!=="daytona")return!1;let r=e.config.options;return Boolean(r&&typeof r==="object"&&!Array.isArray(r)&&r.mountAwsS3Buckets===!0)}function ms(e){return typeof e.config.provider==="string"?e.config.provider:"sandbox"}function Sm(e){let t=new Set(e.filter((r)=>r.kind==="sandbox").map((r)=>r.name));for(let r of e){if(r.kind!=="agent")continue;let n=r.config.harness?.sandbox;if(Y(n)&&n.kind==="sandbox"&&!t.has(n.name))throw Error(`Agent "${r.name}" harness references sandbox "${n.name}", but that sandbox is not exported from broods/`)}}function os(e){let t=new Set;for(let r of e){let n=`${r.kind}:${r.name}`;if(t.has(n))throw Error(`Duplicate resource: ${n}`);t.add(n)}}function Im(e){let t={},r=new Set;for(let{exportName:n,resource:o}of e){if(n==="default"||!zn(n))continue;let a=`${o.kind}:${n}`;if(r.has(a))throw Error(`Duplicate export alias for ${o.kind}: ${n}`);r.add(a),t[o.kind]??={},t[o.kind][o.name]=n}return t}function Tm(e,t){let r=new Map;for(let s of t){if(!qe(s.value)||s.exportName==="default"||!zn(s.exportName))continue;let i=r.get(s.value);if(i&&i!==s.exportName)throw Error(`Channel is exported more than once: ${i}, ${s.exportName}`);r.set(s.value,s.exportName)}let n=new Map,o=new Set,a=[];for(let{exportName:s,resource:i}of e){if(i.kind!=="agent")continue;let c=i.config.connections;if(c===void 0)continue;if(!Array.isArray(c))throw Error(`Agent "${i.name}" config.connections must be an array of connection definitions`);let u=new Set;for(let d of c){if(!qe(d))throw Error(`Agent "${i.name}" config.connections must contain connection definitions`);let p=n.get(d);if(p&&p!==i.name)throw Error(`Channel ${d.type} is already attached to agent "${p}" and cannot also attach to "${i.name}"`);if(u.has(d.type))throw Error(`Agent "${i.name}" cannot configure more than one ${d.type} channel`);n.set(d,i.name),u.add(d.type);let m=s!=="default"&&zn(s)?s:i.name,f=r.get(d)??`${m}${gs(d.type)}Channel`;if(o.has(f))throw Error(`Duplicate channel export alias: ${f}`);o.add(f),a.push({alias:f,type:d.type,id:f,agentName:i.name})}}for(let[s,i]of r)if(!n.has(s))throw Error(`Channel "${i}" must be attached to exactly one agent`);return a.sort((s,i)=>s.alias.localeCompare(i.alias))}function Em(e,t){for(let{resource:r}of e){if(r.kind!=="agent")continue;let n=r.config.connections;if(!Array.isArray(n))continue;for(let o of n){if(!qe(o))continue;if(hs(o,t).length>0)continue;throw Error(`Agent "${r.name}" connection "${o.type}" reaches no rooms: declare a ${o.type} channel for it, or set allowedChannelIds: ["*"] to answer everywhere`)}}}function hs(e,t){let r=e.config.allowedChannelIds??[];if(r.includes(Yt))return[Yt];return[...new Set([...t.get(e)??[],...r])]}function km(e){let t=new Map;for(let r of e){if(r.kind!=="channelRecord")continue;let n=r.config;if(!qe(n.connection))continue;let o=vs(r.name,n.externalId);if(o.length===0)continue;let a=t.get(n.connection)??new Set;for(let s of o)a.add(s);t.set(n.connection,a)}return t}function gs(e){return e.charAt(0).toUpperCase()+e.slice(1)}function zn(e){return/^[A-Za-z_$][A-Za-z0-9_$]*$/.test(e)}async function $m(e,t,r){let n=e.resource;if(n.kind==="agent"){let o=jm(n,t,r);return[...o.hookResource?[o.hookResource]:[],{kind:n.kind,name:n.name,...n.description?{description:n.description}:{},config:o.config}]}if(n.kind==="channelRecord"){let o=n.config,a=vs(n.name,o.externalId);return a.map((s)=>({kind:n.kind,name:a.length===1?n.name:`${n.name}-${s}`,...n.description?{description:n.description}:{},config:Gm(n.name,{...o,externalId:s})}))}return[{kind:n.kind,name:n.name,...n.description?{description:n.description}:{},config:await Mm(e,t)}]}function vs(e,t){if(t===void 0)return[];if(typeof t==="string")return as(e,t),[t];if(!Array.isArray(t))throw Error(`Channel "${e}" externalId must be a string or an array`);if(t.length===0)throw Error(`Channel "${e}" externalId must not be an empty array`);let r=new Set;for(let n of t){if(typeof n!=="string"||n.length===0)throw Error(`Channel "${e}" externalId must be an array of non-empty strings`);if(r.has(n))throw Error(`Channel "${e}" externalId lists ${n} twice`);as(e,n),r.add(n)}return t}function as(e,t){if(t!==Yt)return;throw Error(`Channel "${e}" cannot use "${Yt}" as its id: a record matches one exact room. To answer everywhere, set allowedChannelIds: ["${Yt}"] on the connection; undeclared rooms already fall back to its agent.`)}async function Mm(e,t){let r=e.resource;if(r.kind==="skill")return await qm(r.config,t);if(r.kind==="workspace"){let n={...r.config};if(n.partitioned!==void 0){if(typeof n.partitioned!=="boolean")throw Error(`Workspace "${r.name}" config.partitioned must be a boolean`);let o=n.partitioned;if(delete n.partitioned,o)n.isolation=!0}return ke(n)}if(r.kind==="mcp")return await Wm(e,r.config,t);if(r.kind==="policy"){let n={...r.config};return n.version=n.version??1,ke(n)}if(r.kind==="cron"){let n={...r.config},o=n.agent;if(n.agentId=Y(o)?o.name:o,n.name=n.name??r.name,delete n.agent,typeof n.input==="string")n.events=[{role:"user",content:[{type:"text",text:n.input}]}],delete n.input;return ke(n)}return ke(r.config)}var Rm=new Set(["apiKey","base_url","baseURL"]),Cm=new Set(["activeTools","debug","inactiveTools","permissionMode","sandbox","startupTimeoutMs","type","webSearch"]),Am=new Set(["enabled","level","subsystems"]);function Om(e){if(Rm.has(e))return"";let t=e.replace(/[^a-z0-9]/gi,"").toLowerCase();if(t==="baseurl")return'"base_url" or "baseURL"';if(t==="apikey")return'"apiKey"';return""}function Pm(e,t){if(t===void 0||t===null)return;if(typeof t!=="object"||Array.isArray(t))throw Error(`Agent "${e}" config.provider must be an object`);for(let[r,n]of Object.entries(t)){if(!Xa(r))throw Error(`Agent "${e}" config.provider.${r} is not a supported provider (expected one of: ${Ya.join(", ")})`);if(typeof n!=="object"||n===null||Array.isArray(n))throw Error(`Agent "${e}" config.provider.${r} must be an object`);let o=n;for(let a of Object.keys(o)){let s=Om(a);if(s)throw Error(`Agent "${e}" config.provider.${r} has unknown option "${a}" — did you mean ${s}?`)}if(r==="custom"&&o.base_url===void 0&&o.baseURL===void 0)throw Error(`Agent "${e}" config.provider.custom.base_url is required (use "base_url" or "baseURL")`)}}function Nm(e,t){if(t===void 0||t===null)return;if(typeof t!=="object"||Array.isArray(t))throw Error(`Agent "${e}" config.harness must be an object`);let r=t;for(let n of Object.keys(r))if(!Cm.has(n))throw Error(`Agent "${e}" config.harness has unknown option "${n}"`);if(r.type!=="claude-code"&&r.type!=="codex"&&r.type!=="deepagents"&&r.type!=="opencode"&&r.type!=="pi")throw Error(`Agent "${e}" config.harness.type must be claude-code, codex, deepagents, opencode, or pi`);if(r.sandbox===void 0)throw Error(`Agent "${e}" config.harness.sandbox is required for ${r.type}`);if(r.sandbox!==void 0&&!(typeof r.sandbox==="string"||Y(r.sandbox)&&r.sandbox.kind==="sandbox"))throw Error(`Agent "${e}" config.harness.sandbox must be a defineSandbox resource or sandbox name`);if(r.permissionMode!==void 0&&r.permissionMode!=="allow-reads"&&r.permissionMode!=="allow-edits"&&r.permissionMode!=="allow-all")throw Error(`Agent "${e}" config.harness.permissionMode must be allow-reads, allow-edits, or allow-all`);if(r.type==="codex"&&r.permissionMode!==void 0&&r.permissionMode!=="allow-all")throw Error(`Agent "${e}" config.harness.permissionMode must be allow-all for codex`);if(r.startupTimeoutMs!==void 0&&(typeof r.startupTimeoutMs!=="number"||!Number.isSafeInteger(r.startupTimeoutMs)||r.startupTimeoutMs<1||r.startupTimeoutMs>600000))throw Error(`Agent "${e}" config.harness.startupTimeoutMs must be an integer from 1 to 600000`);if(r.webSearch!==void 0&&typeof r.webSearch!=="boolean")throw Error(`Agent "${e}" config.harness.webSearch must be a boolean`);if(r.type!=="codex"&&r.webSearch!==void 0)throw Error(`Agent "${e}" config.harness.webSearch is only supported by codex`);if(r.type==="pi"&&r.startupTimeoutMs!==void 0)throw Error(`Agent "${e}" config.harness.startupTimeoutMs is not supported by pi`);if(jn(e,r.activeTools,"activeTools"),jn(e,r.inactiveTools,"inactiveTools"),r.activeTools!==void 0&&r.inactiveTools!==void 0)throw Error(`Agent "${e}" config.harness must use either activeTools or inactiveTools, not both`);zm(e,r.debug)}function zm(e,t){if(t===void 0)return;if(typeof t!=="object"||t===null||Array.isArray(t))throw Error(`Agent "${e}" config.harness.debug must be an object`);let r=t;for(let n of Object.keys(r))if(!Am.has(n))throw Error(`Agent "${e}" config.harness.debug has unknown option "${n}"`);if(r.enabled!==void 0&&typeof r.enabled!=="boolean")throw Error(`Agent "${e}" config.harness.debug.enabled must be a boolean`);if(r.level!==void 0&&r.level!=="error"&&r.level!=="warn"&&r.level!=="info"&&r.level!=="debug"&&r.level!=="trace")throw Error(`Agent "${e}" config.harness.debug.level must be error, warn, info, debug, or trace`);jn(e,r.subsystems,"debug.subsystems")}function jn(e,t,r){if(t!==void 0&&(!Array.isArray(t)||!t.every((n)=>typeof n==="string"&&n.trim().length>0)))throw Error(`Agent "${e}" config.harness.${r} must be an array of non-empty strings`)}function jm(e,t,r){let n={...e.config};if(Pm(e.name,n.provider),Nm(e.name,n.harness),n.harness&&typeof n.harness==="object"&&!Array.isArray(n.harness)){let a={...n.harness};if(n.sandbox!==void 0)throw Error(`Agent "${e.name}" must configure the AI SDK harness sandbox on defineHarness, not defineAgent`);n.sandbox=Y(a.sandbox)?a.sandbox.name:a.sandbox,delete a.sandbox,n.harness=a}let o=Dm(e.name,n.hooks);if(o)n.hooks=o.agentHooksConfig;else if(n.hooks!==void 0)n.hooks=ys(n.hooks,e.name);if(n.connections!==void 0){if(!Array.isArray(n.connections))throw Error(`Agent "${e.name}" config.connections must be an array of connection definitions`);n.channels=Object.fromEntries(n.connections.map((a)=>{if(!qe(a))throw Error(`Agent "${e.name}" config.connections must contain connection definitions`);let s=`${e.name}${gs(a.type)}Channel`,i=hs(a,r);return[a.type,{id:s,...a.config,...a.partition?{partition:a.partition}:{},allowedChannelIds:i}]})),delete n.connections}if(Y(n.sandbox))n.sandbox=n.sandbox.name;if(Array.isArray(n.workspaces))n.workspaces=n.workspaces.map((a)=>Vm(a,e.name));if(n.policies!==void 0){let a=Lm(n.policies,e.name);if(a)n.policies=a;else delete n.policies}return{config:ke(n),...o?.hookResource?{hookResource:o.hookResource}:{}}}function Dm(e,t){if(t===void 0)return;if(!t||typeof t!=="object"||Array.isArray(t))throw Error(`Agent "${e}" config.hooks must be an object`);let r=t,n=Object.keys(Pn).flatMap((u)=>{let d=r[u];if(d===void 0)return[];if(typeof d!=="function")throw Error(`Agent "${e}" config.hooks.${u} must be a function`);return[{name:u,event:Pn[u],source:Um(d.toString())}]});if(n.length===0)return;let o=`${e}-hooks`,a=Zm(e,n),s=Buffer.byteLength(a);if(s>$t)throw Error(`Agent "${e}" hook bundle is too large (${s} bytes, max ${$t})`);let i=n.map((u)=>u.event),c=ys(r,e);return c.code=[{hookId:o}],{agentHooksConfig:c,hookResource:{kind:"hook",name:o,description:`Inline hooks for agent ${e}`,config:{events:i,bundle:a,sha256:xs(a)}}}}function ys(e,t){if(!e||typeof e!=="object"||Array.isArray(e))throw Error(`Agent "${t}" config.hooks must be an object`);let r=Object.entries(e);for(let[o]of r){if(o==="webhooks"||o in Pn)continue;throw Error(`Agent "${t}" config.hooks.${o} is not supported. Use inline hook callbacks or hooks.webhooks.`)}return Object.fromEntries(r.filter(([o])=>o==="webhooks"))}function Um(e){let t=e.trim();if(/^(async\s+)?function\b/.test(t)||/^(async\s*)?\(/.test(t)||/^(async\s+)?[A-Za-z_$][\w$]*\s*=>/.test(t))return t;if(/^(async\s+)?[A-Za-z_$][\w$]*\s*\(/.test(t))return t.replace(/^(async\s+)?/,"$1function ");return t}function Zm(e,t){let r=`export default {
|
|
3
|
+
${t.map((n)=>` ${JSON.stringify(n.event)}: ${n.source},`).join(`
|
|
16
4
|
`)}
|
|
17
5
|
};
|
|
18
|
-
`;try{return
|
|
19
|
-
const
|
|
20
|
-
export default { name: __impl.name, execute: (input, options) => __impl.execute(options.context, input) };
|
|
21
|
-
`;return`import { ${m.exportName} as __tool } from ${y};
|
|
22
|
-
export default { name: ${JSON.stringify(m.resource.name)}, execute: (input, options) => __tool.execute(input, options) };
|
|
23
|
-
`}function eh(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function th(t,p,m){let y=new RegExp(`^// .*${eh(vs(p))}$`,"gm");return t.replace(/^\/\/ .*tool-adapter\.mjs$/gm,()=>"// tool-adapter.mjs").replace(/^\/\/ .*broods-stub\.mjs$/gm,()=>"// broods-stub.mjs").replace(y,()=>`// ${m}`)}function rh(t){return t.replace(/^@/,"").replace(/\//g,"-").replace(/[^A-Za-z0-9_-]+/g,"-").replace(/^-+|-+$/g,"")}import{mkdir as nh,writeFile as Kr}from"node:fs/promises";import{resolve as ur}from"node:path";async function Hr(t,p,m=process.cwd(),y={},b=null,x=[]){let _=ur(m,o,s),S=oh(p,t);await nh(_,{recursive:!0}),await Kr(ur(_,"ids.ts"),ah(S),"utf8"),await Kr(ur(_,"api.ts"),ih(t,S,y,b,x),"utf8"),await Kr(ur(_,"resources.ts"),sh(t),"utf8"),await Kr(ur(_,"dataModel.ts"),lh(),"utf8")}function oh(t,p){let m={agents:at(p,"agent"),workspaces:at(p,"workspace"),sandboxes:at(p,"sandbox"),crons:at(p,"cron"),skills:at(p,"skill"),tools:at(p,"tool"),policies:at(p,"policy"),channelRecords:at(p,"channelRecord")};return{agents:st(t.agents,m.agents),workspaces:st(t.workspaces,m.workspaces),sandboxes:st(t.sandboxes,m.sandboxes),crons:st(t.crons,m.crons),skills:st(t.skills,m.skills),tools:st(t.tools,m.tools),hooks:{},policies:st(t.policies,m.policies),channelRecords:st(t.channelRecords,m.channelRecords)}}function at(t,p){return new Set(t.resources.filter((m)=>m.kind===p).map((m)=>m.name))}function st(t,p){return Object.fromEntries(Object.entries(t??{}).filter(([m])=>p.has(m)))}function ah(t){return`// Generated by broods. Do not edit by hand.
|
|
24
|
-
export const ids = ${JSON.stringify(t,null,2)} as const;
|
|
6
|
+
`;try{return us(r,{loader:"ts"}).code}catch(n){let o=n instanceof Error?n.message:String(n);throw Error(`Agent "${e}" inline hooks failed to transpile: ${o}`)}}function Lm(e,t){if(!Array.isArray(e))throw Error(`Agent "${t}" config.policies must be an array`);let r=e.map((n)=>{if(Y(n)&&n.kind==="policy")return n.name;if(typeof n==="string")return n;throw Error(`Agent "${t}" config.policies must contain definePolicy(...) resources or strings`)});return r.length>0?r:void 0}async function Fm(e,t){let r=await Xf(jr(rm(),"broods-mcp-"));try{let n=jr(r,"server.mjs");await tm(n,t,"utf8");let o;try{o=await import(ls(n).href)}catch(i){throw Error(`MCP server bundle ${e} failed to import: ${i instanceof Error?i.message:String(i)}`)}let a=o.default;if(!(typeof a==="function"||typeof a==="object"&&a!==null&&typeof a.fetch==="function"))throw Error(`MCP server bundle ${e} default export must be a fetch handler (createMcpHandler)`)}finally{await em(r,{recursive:!0,force:!0})}}async function Bm(e){let t=await am({entryPoints:[e.entryPoint],bundle:!0,platform:"node",format:"esm",minify:!1,write:!1,logLevel:"silent"}).catch((r)=>{let n=Hm(r)?r.errors.map((o)=>o.text).filter(Boolean).join("; "):r instanceof Error?r.message:String(r);throw Error(`${e.label} ${e.manifestPath} failed to build${n?`: ${n}`:""}`)});if(t.outputFiles.length!==1)throw Error(`${e.label} ${e.manifestPath} failed to build: expected one output file`);return t.outputFiles[0].text}async function qm(e,t){let r=ws(t,e.path,"Skill"),n=kt(t,r).split("\\").join("/"),o=await Jm(r);if(!o.some((a)=>a.path==="SKILL.md"))throw Error(`Skill folder ${e.path} must contain SKILL.md`);return{source:"files",path:n,files:o}}async function Wm(e,t,r){let{path:n,...o}=t;if(n!==void 0&&t.url!==void 0)throw Error(`MCP server "${e.resource.name}" declares both url and path; pick one`);if(n===void 0){if(t.url===void 0)throw Error(`MCP server "${e.resource.name}" needs url (external) or path (hosted)`);return ke(o)}let a=ws(r,n,"MCP server"),s=kt(r,a).split("\\").join("/");Km(s,"MCP server");let i=await Bm({entryPoint:a,label:"MCP server bundle",manifestPath:s}),c=Buffer.byteLength(i);if(c>$t)throw Error(`MCP server bundle ${s} is too large (${c} bytes, max ${$t})`);return await Fm(s,i),{...ke(o),bundle:i}}function Vm(e,t){if(Y(e))return{name:e.name,workspaceId:e.name};if(e&&typeof e==="object"&&"workspace"in e){let r=e.workspace,n=Y(r)?r.name:r;if(typeof n!=="string")throw Error(`Agent ${t} workspace ref must be a defineWorkspace(...) resource or its name`);let o={name:n,workspaceId:n};if("sandbox"in e){let a=e.sandbox;o.sandbox=a===null?null:Y(a)?a.name:a}return o}throw Error(`Agent ${t} workspaces must be defineWorkspace(...) resources or { workspace, sandbox } refs`)}function ws(e,t,r){if(t.trim().length===0)throw Error(`${r} path is required`);if(t.includes("\x00"))throw Error(`${r} path must not contain null bytes`);let n=Dr(e),o=Dr(n,t),a=kt(n,o);if(a===""||!a.startsWith("..")&&!om(a))return o;throw Error(`${r} path ${t} must stay inside ${pe}/`)}function Gm(e,t){let r={...t},n=r.connection;if(!qe(n))throw Error(`Channel "${e}" config.connection must be a connection definition`);return delete r.connection,r.platform=n.type,ps(r.partition,`Channel "${e}"`),ke(r)}function ke(e){if(Array.isArray(e))return e.map((t)=>ke(t));if(Y(e))return e.name;if(e&&typeof e==="object")return Object.fromEntries(Object.entries(e).map(([t,r])=>[t,ke(r)]));return e}async function Jm(e){let t=[],r=0;async function n(o){let a=await cs(o,{withFileTypes:!0});for(let s of a){let i=jr(o,s.name),c=kt(e,i).split("\\").join("/");if(s.isDirectory()){if(ss(s.name))continue;await n(i)}else if(s.isFile()){if(ss(s.name)||bs(c))continue;let u=await Qf(i);if(u.byteLength>$t)throw Error(`Skill bundle file ${c} is too large (${u.byteLength} bytes, max ${$t})`);if(r+=u.byteLength,r>es)throw Error(`Skill bundle at ${e} is too large (${r} bytes, max ${es})`);if(t.length>=ts)throw Error(`Skill bundle at ${e} has too many files (max ${ts})`);t.push({path:c,size:u.byteLength,sha256:xs(u),contentBase64:u.toString("base64"),contentType:Ym(c)})}}}return await n(e),t.sort((o,a)=>String(o.path).localeCompare(String(a.path)))}function ss(e){return e.startsWith(".")||sm.has(e)}function Km(e,t){if(bs(e))throw Error(`${t} bundle path ${e} looks like a hidden file or secret and will not be bundled`)}function Hm(e){return e instanceof Error&&Array.isArray(e.errors)}function bs(e){return e.split("/").some((r)=>r.startsWith(".")||im.some((n)=>n.test(r)))}function xs(e){return Hf("sha256").update(e).digest("hex")}function Ym(e){if(e.endsWith(".md"))return"text/markdown; charset=utf-8";if(e.endsWith(".json"))return"application/json";if(e.endsWith(".js")||e.endsWith(".mjs"))return"application/javascript";if(e.endsWith(".ts"))return"text/typescript; charset=utf-8";if(e.endsWith(".txt"))return"text/plain; charset=utf-8";return"application/octet-stream"}function Xm(e){return e.replace(/^@/,"").replace(/\//g,"-").replace(/[^A-Za-z0-9_-]+/g,"-").replace(/^-+|-+$/g,"")}import{mkdir as Qm,writeFile as Ur}from"node:fs/promises";import{resolve as Xt}from"node:path";async function Zr(e,t,r=process.cwd(),n={},o=null,a=[]){let s=Xt(r,pe,Oe),i=eh(t,e);await Qm(s,{recursive:!0}),await Ur(Xt(s,"ids.ts"),th(i),"utf8"),await Ur(Xt(s,"api.ts"),nh(e,i,n,o,a),"utf8"),await Ur(Xt(s,"resources.ts"),rh(e),"utf8"),await Ur(Xt(s,"dataModel.ts"),oh(),"utf8")}function eh(e,t){let r={agents:Ve(t,"agent"),workspaces:Ve(t,"workspace"),sandboxes:Ve(t,"sandbox"),crons:Ve(t,"cron"),skills:Ve(t,"skill"),mcpServers:Ve(t,"mcp"),policies:Ve(t,"policy"),channelRecords:Ve(t,"channelRecord")};return{agents:Ge(e.agents,r.agents),workspaces:Ge(e.workspaces,r.workspaces),sandboxes:Ge(e.sandboxes,r.sandboxes),crons:Ge(e.crons,r.crons),skills:Ge(e.skills,r.skills),hooks:{},mcpServers:Ge(e.mcpServers,r.mcpServers),policies:Ge(e.policies,r.policies),channelRecords:Ge(e.channelRecords,r.channelRecords)}}function Ve(e,t){return new Set(e.resources.filter((r)=>r.kind===t).map((r)=>r.name))}function Ge(e,t){return Object.fromEntries(Object.entries(e??{}).filter(([r])=>t.has(r)))}function th(e){return`// Generated by broods. Do not edit by hand.
|
|
7
|
+
export const ids = ${JSON.stringify(e,null,2)} as const;
|
|
25
8
|
export const agents = ids.agents;
|
|
26
9
|
export const workspaces = ids.workspaces;
|
|
27
10
|
export const sandboxes = ids.sandboxes;
|
|
28
11
|
export const crons = ids.crons;
|
|
29
12
|
export const skills = ids.skills;
|
|
30
|
-
export const tools = ids.tools;
|
|
31
13
|
export const policies = ids.policies;
|
|
32
|
-
`}function
|
|
33
|
-
export const manifest = ${JSON.stringify(
|
|
34
|
-
`}function
|
|
35
|
-
`),
|
|
14
|
+
`}function rh(e){return`// Generated by broods. Do not edit by hand.
|
|
15
|
+
export const manifest = ${JSON.stringify(e,null,2)} as const;
|
|
16
|
+
`}function nh(e,t,r,n,o){let a=Object.keys(t.agents),s=n?`, endpointId: ${JSON.stringify(n.endpointId)}, projectSlug: ${JSON.stringify(n.projectSlug)}, stageSlug: ${JSON.stringify(n.stageSlug)}`:"",i=a.map((u)=>` ${Dn(r.agent?.[u]??u)}: { kind: "agent", name: ${JSON.stringify(u)}, id: ids.agents[${JSON.stringify(u)}], project: ${JSON.stringify(e.project)}, stage: ${JSON.stringify(e.stage)}${s} },`).join(`
|
|
17
|
+
`),c=n?o.map((u)=>{let d=encodeURIComponent(n.accountId),p=n.stageKind===void 0||n.stageKind==="production"?`/webhooks/${d}/${encodeURIComponent(u.type)}`:`/webhooks/${d}/dev/${encodeURIComponent(n.endpointId)}/${encodeURIComponent(u.type)}`;return` ${Dn(u.alias)}: { kind: "channel", type: ${JSON.stringify(u.type)}, agentName: ${JSON.stringify(u.agentName)}, agentId: ids.agents[${JSON.stringify(u.agentName)}], accountId: ${JSON.stringify(n.accountId)}, webhookPath: ${JSON.stringify(p)} },`}).join(`
|
|
36
18
|
`):"";return`// Generated by broods. Do not edit by hand.
|
|
37
19
|
import type { ResourceApi } from "broods";
|
|
38
20
|
import { ids } from "./ids";
|
|
@@ -40,124 +22,123 @@ import { ids } from "./ids";
|
|
|
40
22
|
/** Typed references for resources defined in broods/. */
|
|
41
23
|
export const api = {
|
|
42
24
|
agents: {
|
|
43
|
-
${
|
|
25
|
+
${i}
|
|
44
26
|
},
|
|
45
27
|
channels: {
|
|
46
|
-
${
|
|
28
|
+
${c}
|
|
47
29
|
},
|
|
48
|
-
workspaces: ${
|
|
49
|
-
sandboxes: ${
|
|
50
|
-
crons: ${
|
|
51
|
-
skills: ${
|
|
52
|
-
|
|
53
|
-
policies: ${Zt("policies",p.policies,m.policy)},
|
|
30
|
+
workspaces: ${Qt("workspaces",t.workspaces,r.workspace)},
|
|
31
|
+
sandboxes: ${Qt("sandboxes",t.sandboxes,r.sandbox)},
|
|
32
|
+
crons: ${Qt("crons",t.crons,r.cron)},
|
|
33
|
+
skills: ${Qt("skills",t.skills,r.skill)},
|
|
34
|
+
policies: ${Qt("policies",t.policies,r.policy)},
|
|
54
35
|
} as const satisfies ResourceApi;
|
|
55
|
-
`}function
|
|
56
|
-
${
|
|
36
|
+
`}function Qt(e,t,r){let n=Object.keys(t);if(n.length===0)return"{}";return`{
|
|
37
|
+
${n.map((a)=>` ${Dn(r?.[a]??a)}: ids.${e}[${JSON.stringify(a)}],`).join(`
|
|
57
38
|
`)}
|
|
58
|
-
}`}function
|
|
39
|
+
}`}function Dn(e){return/^[A-Za-z_$][A-Za-z0-9_$]*$/.test(e)?e:JSON.stringify(e)}function oh(){return`// Generated by broods. Do not edit by hand.
|
|
59
40
|
export type { AgentReference, ChannelReference, AgentRunInput, AgentRunResult, ResourceApi } from "broods";
|
|
60
|
-
`}class
|
|
61
|
-
`)}function
|
|
41
|
+
`}class re{baseUrl;token;fetchImpl;constructor(e){this.baseUrl=ut(e.baseUrl),this.token=e.token,this.fetchImpl=e.fetch??fetch}async getManifest(e,t){let r=await this.request(e,t,"/manifest",{method:"GET"});if(r.status===404)return null;return await se(r,"Fetch manifest failed"),await r.json()}async putManifest(e,t,r=!1){let n=await this.request(e.project,e.stage,"/manifest",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({manifest:e,prune:t,rotateRuntimeKey:r})});return await se(n,"Sync manifest failed"),await n.json()}async getRuntimeKey(e,t){let r=await this.request(e,t,"/runtime-key",{method:"GET"});if(r.status===404)return null;await se(r,"Fetch runtime key failed");let n=await r.json();if(!n.apiKey)throw Error("Fetch runtime key failed: response omitted apiKey");return{apiKey:n.apiKey,keyHint:n.keyHint??"",...n.endpointId?{endpointId:n.endpointId}:{},...n.projectSlug?{projectSlug:n.projectSlug}:{},...n.stageSlug?{stageSlug:n.stageSlug}:{}}}async setEnv(e,t,r,n){let o=await this.request(e,t,`/env/${encodeURIComponent(r)}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({value:n})});await se(o,"Set environment variable failed")}async listEnv(e,t){let r=await this.request(e,t,"/env",{method:"GET"});return await se(r,"List environment variables failed"),(await r.json()).variables??[]}async getEnv(e,t,r){let n=await this.request(e,t,`/env/${encodeURIComponent(r)}`,{method:"GET"});if(n.status===404)return null;return await se(n,"Read environment variable failed"),(await n.json()).value??null}async removeEnv(e,t,r){let n=await this.request(e,t,`/env/${encodeURIComponent(r)}`,{method:"DELETE"});await se(n,"Remove environment variable failed")}async getOnboarding(){let e=await this.fetchImpl(`${this.baseUrl}/v1/account/onboarding`,{method:"GET",headers:{Authorization:`Bearer ${this.token}`}});return await se(e,"Fetch CLI onboarding context failed"),await e.json()}async selectOnboardingOrg(e){let t=await this.fetchImpl(`${this.baseUrl}/v1/account/onboarding`,{method:"POST",headers:{Authorization:`Bearer ${this.token}`,"Content-Type":"application/json"},body:JSON.stringify({orgId:e})});return await se(t,"Select CLI org failed"),await t.json()}async listStages(e){let t=await this.fetchImpl(`${this.baseUrl}/v1/account/stages?project=${encodeURIComponent(e)}`,{method:"GET",headers:{Authorization:`Bearer ${this.token}`}});return Fr(t,"/v1/account/stages","broods stage"),await se(t,"List stages failed"),(await t.json()).stages??[]}async createStage(e,t,r){let n=await this.fetchImpl(`${this.baseUrl}/v1/account/stages`,{method:"POST",headers:{Authorization:`Bearer ${this.token}`,"Content-Type":"application/json"},body:JSON.stringify({project:e,name:t,...r?{from:r}:{}})});return Fr(n,"/v1/account/stages","broods stage"),await se(n,"Create stage failed"),await n.json()}async listProjects(){let e=await this.fetchImpl(`${this.baseUrl}/v1/account/projects`,{method:"GET",headers:{Authorization:`Bearer ${this.token}`}});return Fr(e,"/v1/account/projects","broods project"),await se(e,"List projects failed"),(await e.json()).projects??[]}async deleteProject(e){let t=await this.fetchImpl(`${this.baseUrl}/v1/account/projects?projectId=${encodeURIComponent(e)}`,{method:"DELETE",headers:{Authorization:`Bearer ${this.token}`}});if(Fr(t,"/v1/account/projects","broods project"),t.status===404)return null;return await se(t,"Delete project failed"),(await t.json()).deleted??null}async createOnboardingOrg(e){let t=await this.fetchImpl(`${this.baseUrl}/v1/account/onboarding`,{method:"POST",headers:{Authorization:`Bearer ${this.token}`,"Content-Type":"application/json"},body:JSON.stringify({createOrgName:e})});return await se(t,"Create CLI org failed"),await t.json()}async request(e,t,r,n){let o=`${this.baseUrl}/v1/account/projects/${encodeURIComponent(e)}/stages/${encodeURIComponent(t)}${r}`;return await this.fetchImpl(o,{...n,headers:{Authorization:`Bearer ${this.token}`,...n.headers}})}}function Bn(e,t){let r=new Map((t?.resources??[]).map((u)=>[`${u.kind}:${u.name}`,u])),n=new Map(e.resources.map((u)=>[`${u.kind}:${u.name}`,u])),o=[],a=[],s=[];for(let[u,d]of n){let p=r.get(u);if(!p)a.push({key:u,resource:d});else if(Lr(Un(p))!==Lr(Un(d)))o.push({operation:"update",kind:d.kind,name:d.name})}for(let[u,d]of r)if(!n.has(u))s.push({key:u,resource:d});let i=new Set,c=new Set;for(let u of a){let d=s.find((p)=>!i.has(p.key)&&ah(u.resource.kind)&&u.resource.kind===p.resource.kind&&Lr(_s(u.resource))===Lr(_s(p.resource)));if(!d)continue;c.add(u.key),i.add(d.key),o.push({operation:"rename",kind:u.resource.kind,name:u.resource.name,previousName:d.resource.name})}for(let{key:u,resource:d}of a)if(!c.has(u))o.push({operation:"create",kind:d.kind,name:d.name});for(let{key:u,resource:d}of s)if(!i.has(u))o.push({operation:"delete",kind:d.kind,name:d.name});return o.sort((u,d)=>Ss(u).localeCompare(Ss(d)))}function Un(e){let t=Zn(e);if(e.kind!=="skill"&&e.kind!=="hook")return t;return{...t,config:Ln(t.config)}}function _s(e){let t=Un(e),{name:r,...n}=t;return n}function ah(e){return e==="agent"||e==="workspace"||e==="sandbox"||e==="policy"}function Ss(e){return`${{create:0,rename:1,update:2,delete:3}[e.operation]}:${e.kind}:${e.previousName??""}:${e.name}`}function Zn(e){if(Array.isArray(e))return e.map(Zn);if(e&&typeof e==="object"){let t=e;if(t.__beeblastEnv===!0&&typeof t.name==="string")return`\${${t.name}}`;return Object.fromEntries(Object.entries(t).map(([r,n])=>[r,Zn(n)]))}return e}function Ln(e){if(Array.isArray(e))return e.map(Ln);if(e&&typeof e==="object")return Object.fromEntries(Object.entries(e).flatMap(([t,r])=>{if(t==="contentBase64"||t==="bundle")return[];return[[t,Ln(r)]]}));return e}function Lr(e){return JSON.stringify(Fn(e))}function Fn(e){if(Array.isArray(e))return e.map(Fn);if(e&&typeof e==="object")return Object.fromEntries(Object.entries(e).sort(([t],[r])=>t.localeCompare(r)).map(([t,r])=>[t,Fn(r)]));return e}function Fr(e,t,r){if(e.status!==404)return;if((e.headers.get("Content-Type")??"").includes("application/json"))return;throw Error(`This broods deployment has no ${t} route yet. Update the backend to use \`${r}\`.`)}async function se(e,t){if(e.ok)return;let r=await e.text(),n=r;try{let o=JSON.parse(r);n=o.detail??o.error??r}catch{}throw Error(`${t}: ${e.status} ${n}`)}var sh=1,ih=0;function lh(e,t,r,n){return`${Is(e)}/v1/${encodeURIComponent(t)}/${encodeURIComponent(r)}/observability/ws?token=${encodeURIComponent(n)}`}function ch(e){if(typeof e!=="string")return null;try{let t=JSON.parse(e);return typeof t==="object"&&t!==null&&typeof t.type==="string"?t:null}catch{return null}}function uh(){let e=globalThis.WebSocket;if(!e)throw Error("WebSocket is not available in this environment.");return e}async function Ts(e,t,r=fetch){try{let n=await r(`${e.replace(/\/+$/,"")}/v1/internal/observability-scope`,{method:"POST",headers:{Authorization:`Bearer ${t}`,"Content-Type":"application/json"},signal:AbortSignal.timeout(5000)});if(!n.ok)return null;let o=await n.json();if(typeof o?.projectSlug!=="string"||typeof o?.stageSlug!=="string"||o.projectSlug===""||o.stageSlug==="")return null;return o}catch{return null}}async function*Br(e,t={}){let r=new Set,n=500;while(!t.signal?.aborted){try{for await(let o of dh(e,t)){let a=`${o.ts}|${o.eventType}|${o.message}`;if(r.has(a))continue;if(r.add(a),r.size>5000)r.delete(r.values().next().value);n=500,yield o}}catch(o){if(t.signal?.aborted)return;let a=o instanceof Error?o.message:String(o);if(/unauthorized|invalid websocket token|scope does not match/i.test(a))throw o}await ph(n,t.signal),n=Math.min(n*2,5000)}}async function*dh(e,t){let{baseUrl:r,apiKey:n,project:o,stage:a}=e,{backfill:s=0,minLevel:i,signal:c}=t,u=t.liveOnly??s<=0;if(c?.aborted)return;let d=lh(r,o,a,n),p=d.slice(0,d.indexOf("?")),m=uh(),f=[],y=null,g=!1,x=null,j=()=>{x?.(),x=null},A=new m(d),Z=()=>{if(A.readyState===sh||A.readyState===ih)A.close(1000,"client closed");c?.removeEventListener("abort",R)},R=()=>{g=!0,j(),Z()};c?.addEventListener("abort",R,{once:!0}),A.onopen=()=>{if(c?.aborted){Z();return}let P={type:"subscribe",stream:"logs",...s>0?{backfill:s}:{},...u?{liveOnly:!0}:{},...i!==void 0?{minLevel:i}:{}};A.send(JSON.stringify(P))},A.onmessage=(P)=>{let h=ch(P.data);if(!h)return;switch(h.type){case"backfill":if(h.stream==="logs"){for(let N of h.entries)f.push(N);j()}break;case"log":f.push(h.entry),j();break;case"error":y=Error(`Observability gateway error: ${h.error}`),g=!0,j();break;case"ready":break;default:break}},A.onerror=()=>{y=Error(`Cannot connect to the observability gateway at ${p}.`),g=!0,j()},A.onclose=(P)=>{if(!g){if(P.code!==1000)y=Error(P.reason?`Observability WebSocket closed: ${P.reason}`:`Observability WebSocket closed with code ${P.code}.`);g=!0,j()}};try{while(!0){if(f.length>0){yield f.shift();continue}if(y)throw y;if(g)return;await new Promise((P)=>{x=P})}}finally{Z()}}function ph(e,t){return new Promise((r)=>{if(t?.aborted)return r();let n=setTimeout(r,e);t?.addEventListener("abort",()=>{clearTimeout(n),r()},{once:!0})})}import{createServer as xh}from"node:http";import{randomUUID as _h}from"node:crypto";import{spawn as Sh}from"node:child_process";import{createInterface as er}from"node:readline/promises";import{stdin as Ne,stdout as Pe}from"node:process";function Mt(e,t,r={}){let n=`${t?"*":" "} ${e}`;return t?ie(n,"\x1B[1m\x1B[36m",Rt(r)):n}function fh(e,t={}){let r=Rt(t),n=yh(e.stage),o=n==="Development",a=ie("▌",o?"\x1B[32m":"\x1B[33m",r),s=r?`${o?"\x1B[42m\x1B[30m\x1B[1m":"\x1B[43m\x1B[30m\x1B[1m"} ${n} \x1B[0m`:`[${n}]`,i=r?ie("dashboard","\x1B[4m",r):"dashboard",c=`${e.dashboardUrl}?project=${encodeURIComponent(e.project)}&stage=${encodeURIComponent(e.stage)}`,u=ie(c,"\x1B[2m\x1B[4m",r);return[`${a} Syncing ${n}: ${ie(e.project,"",r)}`,`${a} ${s} ${e.stage} (${i})`,`${a} ${ie("└─","\x1B[2m",r)} ${u}`].join(`
|
|
42
|
+
`)}function mh(e,t={}){let r=(t.now??new Date).toTimeString().slice(0,8);return`${ie("✔","\x1B[32m",Rt(t))} ${r} Resources ready! (${bh(e)})`}function hh(e,t={}){let r=Rt(t),n=ie("▌","\x1B[32m",r),o=ie("↑","\x1B[32m",r);return`${n} ${o} Synced ${e.length} env var(s) from .env.local: ${e.join(", ")}`}function gh(e,t={}){let r=Rt(t);return e.map((n)=>{let o=wh(n.operation,r);if(n.operation==="rename"&&n.previousName)return` ${o} ${n.kind}:${n.previousName} -> ${n.name}`;return` ${o} ${n.kind}:${n.name}`})}function vh(e,t={}){return ie(e,"\x1B[33m",Rt(t))}function Es(e){console.error(mh(e))}function ks(e){console.error(fh(e))}function qn(e){console.error(hh(e))}function qr(e){for(let t of gh(e))console.log(t)}function G(e){console.log(vh(e))}function Rt(e){if(e.color!==void 0)return e.color;if(Object.hasOwn(process.env,"NO_COLOR"))return!1;if(process.env.FORCE_COLOR&&process.env.FORCE_COLOR!=="0")return!0;return process.stderr.isTTY&&process.env.TERM!=="dumb"}function ie(e,t,r){return r?`${t}${e}\x1B[0m`:e}function yh(e){let t=e.trim().toLowerCase();if(t==="development")return"Development";if(t==="production")return"Production";return e.trim()}function wh(e,t){if(e==="create")return`[${ie("+","\x1B[32m",t)}]`;if(e==="rename")return`[${ie("~","\x1B[33m",t)}]`;if(e==="update")return`[${ie("*","\x1B[36m",t)}]`;return`[${ie("-","\x1B[31m",t)}]`}function bh(e){if(e>=1000)return`${(e/1000).toFixed(2)}s`;return`${Math.max(e,0).toFixed(1)}ms`}var Ih=180000,Th=new Set(["--base-url","--dashboard-url","--stage","--from","--level","--limit","--project","--region","-n"]);function dt(e){let t=[];for(let r=0;r<e.length;r+=1){let n=e[r];if(n===void 0)continue;if(Th.has(n)){r+=1;continue}if(n.startsWith("-"))continue;t.push(n)}return t}function T(e,t){let r=e.indexOf(t);return r>=0?e[r+1]:void 0}function we(e,t){return e.includes(t)}function pt(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}async function $e(e){Q();let t=await $s();if(!t)throw Error("Run `broods login` first, or set BROODS_TOKEN and BROODS_BASE_URL.");return{...t,...e?{baseUrl:ut(e)}:{}}}async function Ms(e){let t=er({input:Ne,output:Pe});try{let r=await t.question(`${e}: `);if(!r)throw Error(`${e} is required`);return r}finally{t.close()}}async function ft(e,t){if(!Ne.isTTY)return t??"";let r=er({input:Ne,output:Pe});try{let n=r.question(`${e}: `);if(t){if(Ne.isTTY&&Pe.isTTY)Pe.write("\x1B[90m");if(r.write(t),Ne.isTTY&&Pe.isTTY)Pe.write("\x1B[0m")}return(await n).trim()||t||""}finally{r.close()}}async function tr(e,t,r,n){if(t.length===0)throw Error(`${e}: no options available`);if(t.length===1)return t[0];let o=n!==void 0&&n>=0&&n<t.length?n:void 0;console.log(e),t.forEach((i,c)=>{console.log(Mt(`${c+1}. ${r(i)}`,c===o))});let a=o===void 0?`Choose 1-${t.length}: `:`Choose 1-${t.length} [${o+1}]: `,s=er({input:Ne,output:Pe});try{while(!0){let i=(await s.question(a)).trim();if(i===""&&o!==void 0)return t[o];let c=Number(i);if(Number.isInteger(c)&&c>=1&&c<=t.length)return t[c-1];console.log(`Enter a number from 1 to ${t.length}.`)}}finally{s.close()}}async function Rs(e,t,r,n){console.log(e),t.forEach((s,i)=>{console.log(` ${i+1}. ${r(s)}`)});let o=t.length>0?`Choose 1-${t.length}, or `:"",a=er({input:Ne,output:Pe});try{let s=(await a.question(`${o}${n.hint} [${n.defaultValue}]: `)).trim();if(s==="")return n.defaultValue;let i=Number(s);if(Number.isInteger(i)&&i>=1&&i<=t.length)return t[i-1];return s}finally{a.close()}}async function Vr(e){if(!Ne.isTTY)return!1;let t=er({input:Ne,output:Pe});try{let r=(await t.question(`${e} [y/N] `)).trim().toLowerCase();return r==="y"||r==="yes"}finally{t.close()}}async function Wn(e){let t=_h(),{code:r,close:n}=await kh(t);try{let o=r.callbackUrl,a=`${ut(e)}/cli-auth/start?`+new URLSearchParams({callback:o,state:t});await Eh(a),Rh(a),console.log(`Opening ${a}`);let s=await $h(r.promise,Ih),i=await fetch(`${s.baseUrl}/v1/account/auth/exchange`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:s.code})});if(!i.ok)throw Error(`Login exchange failed: ${i.status} ${await i.text()}`);let c=await i.json(),u={baseUrl:s.baseUrl,dashboardUrl:ut(e),token:c.token,createdAt:new Date().toISOString(),...c.user?{user:c.user}:{},...c.org?{org:c.org}:{},...c.account?{account:c.account}:{}};return await Wr(u),u}finally{n()}}async function Eh(e){let t=await fetch(e,{method:"GET",redirect:"manual"});if(t.status===404){let r=new URL(e);throw Error(`${r.origin} does not expose /cli-auth/start yet. Deploy the dashboard changes first, or use --dashboard-url http://localhost:3000 with a local dashboard dev server.`)}if(t.status>=500)throw Error(`Dashboard CLI auth route failed: ${t.status} ${await t.text()}`)}function kh(e){return new Promise((t,r)=>{let n=xh((c,u)=>{try{let d=new URL(c.url??"/","http://127.0.0.1"),p=d.searchParams.get("state"),m=d.searchParams.get("code"),f=d.searchParams.get("base_url");if(p!==e||!m){u.writeHead(400).end("Invalid broods login callback.");return}if(!f){u.writeHead(400).end("Login callback omitted base_url; update the dashboard deployment."),a(Error("Login callback did not advertise the API base URL (base_url). Deploy a dashboard build that includes the Convex-direct CLI auth flow."));return}u.writeHead(200,{"Content-Type":"text/plain"}).end("broods CLI login complete. You can close this tab."),o({code:m,baseUrl:ut(f)})}catch(d){a(d)}}),o,a,s=new Promise((c,u)=>{o=c,a=u}),i=Mh();n.on("error",(c)=>{if(!process.env.BROODS_LOGIN_PORT&&i!==0&&c.code==="EADDRINUSE"){n.listen(0,"127.0.0.1");return}r(c)}),n.listen(i,"127.0.0.1",()=>{let c=n.address();if(!c||typeof c==="string"){r(Error("Failed to allocate callback port"));return}t({code:{callbackUrl:`http://127.0.0.1:${c.port}/callback`,promise:s},close:()=>n.close()})})})}async function $h(e,t){let r,n=new Promise((o,a)=>{r=setTimeout(()=>a(Error(`Timed out waiting for browser login to complete.
|
|
62
43
|
Check the browser tab and the dashboard logs for an error. If the browser shows
|
|
63
44
|
404 on /cli-auth/start, deploy the dashboard build that includes CLI auth or pass
|
|
64
45
|
--dashboard-url for the environment you deployed. Other common causes are missing
|
|
65
|
-
cliAuth Convex functions or no active API account (Settings -> API Access).`)),
|
|
66
|
-
Error message: ${
|
|
67
|
-
Error message: ${fr(m)}`,cause:m});this[li]=!0,this.value=p,this.context=y}static isInstance(p){return W.hasMarker(p,Ui)}static wrap({value:p,cause:m,context:y}){var b,x,_;if(t.isInstance(m)&&m.value===p&&((b=m.context)==null?void 0:b.field)===(y==null?void 0:y.field)&&((x=m.context)==null?void 0:x.entityName)===(y==null?void 0:y.entityName)&&((_=m.context)==null?void 0:_.entityId)===(y==null?void 0:y.entityId))return m;return new t({value:p,cause:m,context:y})}},Zi="AI_UnsupportedFunctionalityError",Li=`vercel.ai.error.${Zi}`,Kh=Symbol.for(Li),ui,di,oI=class extends(di=W,ui=Kh,di){constructor({functionality:t,message:p=`'${t}' functionality not supported.`}){super({name:Zi,message:p});this[ui]=!0,this.functionality=t}static isInstance(t){return W.hasMarker(t,Li)}};var Fi;function N(t,p,m){function y(S,E){if(!S._zod)Object.defineProperty(S,"_zod",{value:{def:E,constr:_,traits:new Set},enumerable:!1});if(S._zod.traits.has(t))return;S._zod.traits.add(t),p(S,E);let k=_.prototype,M=Object.keys(k);for(let R=0;R<M.length;R++){let C=M[R];if(!(C in S))S[C]=k[C].bind(S)}}let b=m?.Parent??Object;class x extends b{}Object.defineProperty(x,"name",{value:t});function _(S){var E;let k=m?.Parent?new x:this;y(k,S),(E=k._zod).deferred??(E.deferred=[]);for(let M of k._zod.deferred)M();return k}return Object.defineProperty(_,"init",{value:y}),Object.defineProperty(_,Symbol.hasInstance,{value:(S)=>{if(m?.Parent&&S instanceof m.Parent)return!0;return S?._zod?.traits?.has(t)}}),Object.defineProperty(_,"name",{value:t}),_}var bI=Symbol("zod_brand");class Je extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class mr extends Error{constructor(t){super(`Encountered unidirectional transform during encode: ${t}`);this.name="ZodEncodeError"}}(Fi=globalThis).__zod_globalConfig??(Fi.__zod_globalConfig={});var Bt=globalThis.__zod_globalConfig;function je(t){if(t)Object.assign(Bt,t);return Bt}var H={};I(H,{BIGINT_FORMAT_RANGES:()=>Gi,Class:()=>Yi,NUMBER_FORMAT_RANGES:()=>lo,aborted:()=>ct,allowsEval:()=>ao,assert:()=>eg,assertEqual:()=>Hh,assertIs:()=>Xh,assertNever:()=>Qh,assertNotEqual:()=>Yh,assignProp:()=>it,base64ToUint8Array:()=>Ki,base64urlToUint8Array:()=>bg,cached:()=>Wt,captureStackTrace:()=>nn,cleanEnum:()=>yg,cleanRegex:()=>yr,clone:()=>ze,cloneDef:()=>ng,createTransparentProxy:()=>cg,defineLazy:()=>J,esc:()=>rn,escapeRegex:()=>He,explicitlyAborted:()=>co,extend:()=>pg,finalizeIssue:()=>Pe,floatSafeRemainder:()=>no,getElementAtPath:()=>og,getEnumValues:()=>gr,getLengthableOrigin:()=>br,getParsedType:()=>lg,getSizableOrigin:()=>Ji,hexToUint8Array:()=>xg,isObject:()=>Tt,isPlainObject:()=>lt,issue:()=>Vt,joinValues:()=>tg,jsonStringifyReplacer:()=>qt,merge:()=>mg,mergeDefs:()=>Ke,normalizeParams:()=>q,nullish:()=>vr,numKeys:()=>ig,objectClone:()=>rg,omit:()=>dg,optionalKeys:()=>io,parsedType:()=>vg,partial:()=>hg,pick:()=>ug,prefixIssues:()=>Ye,primitiveTypes:()=>Wi,promiseAllObject:()=>ag,propertyKeyTypes:()=>so,randomString:()=>sg,required:()=>gg,safeExtend:()=>fg,shallowClone:()=>qi,slugify:()=>oo,stringifyPrimitive:()=>Vi,uint8ArrayToBase64:()=>Hi,uint8ArrayToBase64url:()=>wg,uint8ArrayToHex:()=>_g,unwrapMessage:()=>hr});function Hh(t){return t}function Yh(t){return t}function Xh(t){}function Qh(t){throw Error("Unexpected value in exhaustive check")}function eg(t){}function gr(t){let p=Object.values(t).filter((y)=>typeof y==="number");return Object.entries(t).filter(([y,b])=>p.indexOf(+y)===-1).map(([y,b])=>b)}function tg(t,p="|"){return t.map((m)=>Vi(m)).join(p)}function qt(t,p){if(typeof p==="bigint")return p.toString();return p}function Wt(t){return{get value(){{let m=t();return Object.defineProperty(this,"value",{value:m}),m}throw Error("cached value already set")}}}function vr(t){return t===null||t===void 0}function yr(t){let p=t.startsWith("^")?1:0,m=t.endsWith("$")?t.length-1:t.length;return t.slice(p,m)}function no(t,p){let m=t/p,y=Math.round(m),b=Number.EPSILON*Math.max(Math.abs(m),1);if(Math.abs(m-y)<b)return 0;return m-y}var Bi=Symbol("evaluating");function J(t,p,m){let y=void 0;Object.defineProperty(t,p,{get(){if(y===Bi)return;if(y===void 0)y=Bi,y=m();return y},set(b){Object.defineProperty(t,p,{value:b})},configurable:!0})}function rg(t){return Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t))}function it(t,p,m){Object.defineProperty(t,p,{value:m,writable:!0,enumerable:!0,configurable:!0})}function Ke(...t){let p={};for(let m of t){let y=Object.getOwnPropertyDescriptors(m);Object.assign(p,y)}return Object.defineProperties({},p)}function ng(t){return Ke(t._zod.def)}function og(t,p){if(!p)return t;return p.reduce((m,y)=>m?.[y],t)}function ag(t){let p=Object.keys(t),m=p.map((y)=>t[y]);return Promise.all(m).then((y)=>{let b={};for(let x=0;x<p.length;x++)b[p[x]]=y[x];return b})}function sg(t=10){let m="";for(let y=0;y<t;y++)m+="abcdefghijklmnopqrstuvwxyz"[Math.floor(Math.random()*26)];return m}function rn(t){return JSON.stringify(t)}function oo(t){return t.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}var nn="captureStackTrace"in Error?Error.captureStackTrace:(...t)=>{};function Tt(t){return typeof t==="object"&&t!==null&&!Array.isArray(t)}var ao=Wt(()=>{if(Bt.jitless)return!1;if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch(t){return!1}});function lt(t){if(Tt(t)===!1)return!1;let p=t.constructor;if(p===void 0)return!0;if(typeof p!=="function")return!0;let m=p.prototype;if(Tt(m)===!1)return!1;if(Object.prototype.hasOwnProperty.call(m,"isPrototypeOf")===!1)return!1;return!0}function qi(t){if(lt(t))return{...t};if(Array.isArray(t))return[...t];if(t instanceof Map)return new Map(t);if(t instanceof Set)return new Set(t);return t}function ig(t){let p=0;for(let m in t)if(Object.prototype.hasOwnProperty.call(t,m))p++;return p}var lg=(t)=>{let p=typeof t;switch(p){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(t)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":if(Array.isArray(t))return"array";if(t===null)return"null";if(t.then&&typeof t.then==="function"&&t.catch&&typeof t.catch==="function")return"promise";if(typeof Map<"u"&&t instanceof Map)return"map";if(typeof Set<"u"&&t instanceof Set)return"set";if(typeof Date<"u"&&t instanceof Date)return"date";if(typeof File<"u"&&t instanceof File)return"file";return"object";default:throw Error(`Unknown data type: ${p}`)}},so=new Set(["string","number","symbol"]),Wi=new Set(["string","number","bigint","boolean","symbol","undefined"]);function He(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function ze(t,p,m){let y=new t._zod.constr(p??t._zod.def);if(!p||m?.parent)y._zod.parent=t;return y}function q(t){let p=t;if(!p)return{};if(typeof p==="string")return{error:()=>p};if(p?.message!==void 0){if(p?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");p.error=p.message}if(delete p.message,typeof p.error==="string")return{...p,error:()=>p.error};return p}function cg(t){let p;return new Proxy({},{get(m,y,b){return p??(p=t()),Reflect.get(p,y,b)},set(m,y,b,x){return p??(p=t()),Reflect.set(p,y,b,x)},has(m,y){return p??(p=t()),Reflect.has(p,y)},deleteProperty(m,y){return p??(p=t()),Reflect.deleteProperty(p,y)},ownKeys(m){return p??(p=t()),Reflect.ownKeys(p)},getOwnPropertyDescriptor(m,y){return p??(p=t()),Reflect.getOwnPropertyDescriptor(p,y)},defineProperty(m,y,b){return p??(p=t()),Reflect.defineProperty(p,y,b)}})}function Vi(t){if(typeof t==="bigint")return t.toString()+"n";if(typeof t==="string")return`"${t}"`;return`${t}`}function io(t){return Object.keys(t).filter((p)=>t[p]._zod.optin==="optional"&&t[p]._zod.optout==="optional")}var lo={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-340282346638528860000000000000000000000,340282346638528860000000000000000000000],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},Gi={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function ug(t,p){let m=t._zod.def,y=m.checks;if(y&&y.length>0)throw Error(".pick() cannot be used on object schemas containing refinements");let x=Ke(t._zod.def,{get shape(){let _={};for(let S in p){if(!(S in m.shape))throw Error(`Unrecognized key: "${S}"`);if(!p[S])continue;_[S]=m.shape[S]}return it(this,"shape",_),_},checks:[]});return ze(t,x)}function dg(t,p){let m=t._zod.def,y=m.checks;if(y&&y.length>0)throw Error(".omit() cannot be used on object schemas containing refinements");let x=Ke(t._zod.def,{get shape(){let _={...t._zod.def.shape};for(let S in p){if(!(S in m.shape))throw Error(`Unrecognized key: "${S}"`);if(!p[S])continue;delete _[S]}return it(this,"shape",_),_},checks:[]});return ze(t,x)}function pg(t,p){if(!lt(p))throw Error("Invalid input to extend: expected a plain object");let m=t._zod.def.checks;if(m&&m.length>0){let x=t._zod.def.shape;for(let _ in p)if(Object.getOwnPropertyDescriptor(x,_)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}let b=Ke(t._zod.def,{get shape(){let x={...t._zod.def.shape,...p};return it(this,"shape",x),x}});return ze(t,b)}function fg(t,p){if(!lt(p))throw Error("Invalid input to safeExtend: expected a plain object");let m=Ke(t._zod.def,{get shape(){let y={...t._zod.def.shape,...p};return it(this,"shape",y),y}});return ze(t,m)}function mg(t,p){if(t._zod.def.checks?.length)throw Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");let m=Ke(t._zod.def,{get shape(){let y={...t._zod.def.shape,...p._zod.def.shape};return it(this,"shape",y),y},get catchall(){return p._zod.def.catchall},checks:p._zod.def.checks??[]});return ze(t,m)}function hg(t,p,m){let b=p._zod.def.checks;if(b&&b.length>0)throw Error(".partial() cannot be used on object schemas containing refinements");let _=Ke(p._zod.def,{get shape(){let S=p._zod.def.shape,E={...S};if(m)for(let k in m){if(!(k in S))throw Error(`Unrecognized key: "${k}"`);if(!m[k])continue;E[k]=t?new t({type:"optional",innerType:S[k]}):S[k]}else for(let k in S)E[k]=t?new t({type:"optional",innerType:S[k]}):S[k];return it(this,"shape",E),E},checks:[]});return ze(p,_)}function gg(t,p,m){let y=Ke(p._zod.def,{get shape(){let b=p._zod.def.shape,x={...b};if(m)for(let _ in m){if(!(_ in x))throw Error(`Unrecognized key: "${_}"`);if(!m[_])continue;x[_]=new t({type:"nonoptional",innerType:b[_]})}else for(let _ in b)x[_]=new t({type:"nonoptional",innerType:b[_]});return it(this,"shape",x),x}});return ze(p,y)}function ct(t,p=0){if(t.aborted===!0)return!0;for(let m=p;m<t.issues.length;m++)if(t.issues[m]?.continue!==!0)return!0;return!1}function co(t,p=0){if(t.aborted===!0)return!0;for(let m=p;m<t.issues.length;m++)if(t.issues[m]?.continue===!1)return!0;return!1}function Ye(t,p){return p.map((m)=>{var y;return(y=m).path??(y.path=[]),m.path.unshift(t),m})}function hr(t){return typeof t==="string"?t:t?.message}function Pe(t,p,m){let y=t.message?t.message:hr(t.inst?._zod.def?.error?.(t))??hr(p?.error?.(t))??hr(m.customError?.(t))??hr(m.localeError?.(t))??"Invalid input",{inst:b,continue:x,input:_,...S}=t;if(S.path??(S.path=[]),S.message=y,p?.reportInput)S.input=_;return S}function Ji(t){if(t instanceof Set)return"set";if(t instanceof Map)return"map";if(t instanceof File)return"file";return"unknown"}function br(t){if(Array.isArray(t))return"array";if(typeof t==="string")return"string";return"unknown"}function vg(t){let p=typeof t;switch(p){case"number":return Number.isNaN(t)?"nan":"number";case"object":{if(t===null)return"null";if(Array.isArray(t))return"array";let m=t;if(m&&Object.getPrototypeOf(m)!==Object.prototype&&"constructor"in m&&m.constructor)return m.constructor.name}}return p}function Vt(...t){let[p,m,y]=t;if(typeof p==="string")return{message:p,code:"custom",input:m,inst:y};return{...p}}function yg(t){return Object.entries(t).filter(([p,m])=>Number.isNaN(Number.parseInt(p,10))).map((p)=>p[1])}function Ki(t){let p=atob(t),m=new Uint8Array(p.length);for(let y=0;y<p.length;y++)m[y]=p.charCodeAt(y);return m}function Hi(t){let p="";for(let m=0;m<t.length;m++)p+=String.fromCharCode(t[m]);return btoa(p)}function bg(t){let p=t.replace(/-/g,"+").replace(/_/g,"/"),m="=".repeat((4-p.length%4)%4);return Ki(p+m)}function wg(t){return Hi(t).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function xg(t){let p=t.replace(/^0x/,"");if(p.length%2!==0)throw Error("Invalid hex string length");let m=new Uint8Array(p.length/2);for(let y=0;y<p.length;y+=2)m[y/2]=Number.parseInt(p.slice(y,y+2),16);return m}function _g(t){return Array.from(t).map((p)=>p.toString(16).padStart(2,"0")).join("")}class Yi{constructor(...t){}}var Xi=(t,p)=>{t.name="$ZodError",Object.defineProperty(t,"_zod",{value:t._zod,enumerable:!1}),Object.defineProperty(t,"issues",{value:p,enumerable:!1}),t.message=JSON.stringify(p,qt,2),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},on=N("$ZodError",Xi),uo=N("$ZodError",Xi,{Parent:Error});function Qi(t,p=(m)=>m.message){let m={},y=[];for(let b of t.issues)if(b.path.length>0)m[b.path[0]]=m[b.path[0]]||[],m[b.path[0]].push(p(b));else y.push(p(b));return{formErrors:y,fieldErrors:m}}function el(t,p=(m)=>m.message){let m={_errors:[]},y=(b,x=[])=>{for(let _ of b.issues)if(_.code==="invalid_union"&&_.errors.length)_.errors.map((S)=>y({issues:S},[...x,..._.path]));else if(_.code==="invalid_key")y({issues:_.issues},[...x,..._.path]);else if(_.code==="invalid_element")y({issues:_.issues},[...x,..._.path]);else{let S=[...x,..._.path];if(S.length===0)m._errors.push(p(_));else{let E=m,k=0;while(k<S.length){let M=S[k];if(k!==S.length-1)E[M]=E[M]||{_errors:[]};else E[M]=E[M]||{_errors:[]},E[M]._errors.push(p(_));E=E[M],k++}}}};return y(t),m}var an=(t)=>(p,m,y,b)=>{let x=y?{...y,async:!1}:{async:!1},_=p._zod.run({value:m,issues:[]},x);if(_ instanceof Promise)throw new Je;if(_.issues.length){let S=new(b?.Err??t)(_.issues.map((E)=>Pe(E,x,je())));throw nn(S,b?.callee),S}return _.value};var sn=(t)=>async(p,m,y,b)=>{let x=y?{...y,async:!0}:{async:!0},_=p._zod.run({value:m,issues:[]},x);if(_ instanceof Promise)_=await _;if(_.issues.length){let S=new(b?.Err??t)(_.issues.map((E)=>Pe(E,x,je())));throw nn(S,b?.callee),S}return _.value};var wr=(t)=>(p,m,y)=>{let b=y?{...y,async:!1}:{async:!1},x=p._zod.run({value:m,issues:[]},b);if(x instanceof Promise)throw new Je;return x.issues.length?{success:!1,error:new(t??on)(x.issues.map((_)=>Pe(_,b,je())))}:{success:!0,data:x.value}},tl=wr(uo),xr=(t)=>async(p,m,y)=>{let b=y?{...y,async:!0}:{async:!0},x=p._zod.run({value:m,issues:[]},b);if(x instanceof Promise)x=await x;return x.issues.length?{success:!1,error:new t(x.issues.map((_)=>Pe(_,b,je())))}:{success:!0,data:x.value}},rl=xr(uo),nl=(t)=>(p,m,y)=>{let b=y?{...y,direction:"backward"}:{direction:"backward"};return an(t)(p,m,b)};var ol=(t)=>(p,m,y)=>an(t)(p,m,y);var al=(t)=>async(p,m,y)=>{let b=y?{...y,direction:"backward"}:{direction:"backward"};return sn(t)(p,m,b)};var sl=(t)=>async(p,m,y)=>sn(t)(p,m,y);var il=(t)=>(p,m,y)=>{let b=y?{...y,direction:"backward"}:{direction:"backward"};return wr(t)(p,m,b)};var ll=(t)=>(p,m,y)=>wr(t)(p,m,y);var cl=(t)=>async(p,m,y)=>{let b=y?{...y,direction:"backward"}:{direction:"backward"};return xr(t)(p,m,b)};var ul=(t)=>async(p,m,y)=>xr(t)(p,m,y);var dl=/^[cC][0-9a-z]{6,}$/,pl=/^[0-9a-z]+$/,fl=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,ml=/^[0-9a-vA-V]{20}$/,hl=/^[A-Za-z0-9]{27}$/,gl=/^[a-zA-Z0-9_-]{21}$/,vl=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var yl=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,po=(t)=>{if(!t)return/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/;return new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${t}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`)};var bl=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var Ig="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function wl(){return new RegExp(Ig,"u")}var xl=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,_l=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/;var Sl=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,Il=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Tl=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,fo=/^[A-Za-z0-9_-]*$/;var El=/^https?$/,kl=/^\+[1-9]\d{6,14}$/,$l="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",Ml=new RegExp(`^${$l}$`);function Rl(t){return typeof t.precision==="number"?t.precision===-1?"(?:[01]\\d|2[0-3]):[0-5]\\d":t.precision===0?"(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d":`(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{${t.precision}}`:"(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?"}function Cl(t){return new RegExp(`^${Rl(t)}$`)}function Al(t){let p=Rl({precision:t.precision}),m=["Z"];if(t.local)m.push("");if(t.offset)m.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let y=`${p}(?:${m.join("|")})`;return new RegExp(`^${$l}T(?:${y})$`)}var Ol=(t)=>{let p=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${p}$`)};var Pl=/^-?\d+$/,ln=/^-?\d+(?:\.\d+)?$/,Nl=/^(?:true|false)$/i,jl=/^null$/i;var zl=/^[^A-Z]*$/,Dl=/^[^a-z]*$/;var me=N("$ZodCheck",(t,p)=>{var m;t._zod??(t._zod={}),t._zod.def=p,(m=t._zod).onattach??(m.onattach=[])}),Ul={number:"number",bigint:"bigint",object:"date"},mo=N("$ZodCheckLessThan",(t,p)=>{me.init(t,p);let m=Ul[typeof p.value];t._zod.onattach.push((y)=>{let b=y._zod.bag,x=(p.inclusive?b.maximum:b.exclusiveMaximum)??Number.POSITIVE_INFINITY;if(p.value<x)if(p.inclusive)b.maximum=p.value;else b.exclusiveMaximum=p.value}),t._zod.check=(y)=>{if(p.inclusive?y.value<=p.value:y.value<p.value)return;y.issues.push({origin:m,code:"too_big",maximum:typeof p.value==="object"?p.value.getTime():p.value,input:y.value,inclusive:p.inclusive,inst:t,continue:!p.abort})}}),ho=N("$ZodCheckGreaterThan",(t,p)=>{me.init(t,p);let m=Ul[typeof p.value];t._zod.onattach.push((y)=>{let b=y._zod.bag,x=(p.inclusive?b.minimum:b.exclusiveMinimum)??Number.NEGATIVE_INFINITY;if(p.value>x)if(p.inclusive)b.minimum=p.value;else b.exclusiveMinimum=p.value}),t._zod.check=(y)=>{if(p.inclusive?y.value>=p.value:y.value>p.value)return;y.issues.push({origin:m,code:"too_small",minimum:typeof p.value==="object"?p.value.getTime():p.value,input:y.value,inclusive:p.inclusive,inst:t,continue:!p.abort})}}),Zl=N("$ZodCheckMultipleOf",(t,p)=>{me.init(t,p),t._zod.onattach.push((m)=>{var y;(y=m._zod.bag).multipleOf??(y.multipleOf=p.value)}),t._zod.check=(m)=>{if(typeof m.value!==typeof p.value)throw Error("Cannot mix number and bigint in multiple_of check.");if(typeof m.value==="bigint"?m.value%p.value===BigInt(0):no(m.value,p.value)===0)return;m.issues.push({origin:typeof m.value,code:"not_multiple_of",divisor:p.value,input:m.value,inst:t,continue:!p.abort})}}),Ll=N("$ZodCheckNumberFormat",(t,p)=>{me.init(t,p),p.format=p.format||"float64";let m=p.format?.includes("int"),y=m?"int":"number",[b,x]=lo[p.format];t._zod.onattach.push((_)=>{let S=_._zod.bag;if(S.format=p.format,S.minimum=b,S.maximum=x,m)S.pattern=Pl}),t._zod.check=(_)=>{let S=_.value;if(m){if(!Number.isInteger(S)){_.issues.push({expected:y,format:p.format,code:"invalid_type",continue:!1,input:S,inst:t});return}if(!Number.isSafeInteger(S)){if(S>0)_.issues.push({input:S,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:y,inclusive:!0,continue:!p.abort});else _.issues.push({input:S,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:y,inclusive:!0,continue:!p.abort});return}}if(S<b)_.issues.push({origin:"number",input:S,code:"too_small",minimum:b,inclusive:!0,inst:t,continue:!p.abort});if(S>x)_.issues.push({origin:"number",input:S,code:"too_big",maximum:x,inclusive:!0,inst:t,continue:!p.abort})}});var Fl=N("$ZodCheckMaxLength",(t,p)=>{var m;me.init(t,p),(m=t._zod.def).when??(m.when=(y)=>{let b=y.value;return!vr(b)&&b.length!==void 0}),t._zod.onattach.push((y)=>{let b=y._zod.bag.maximum??Number.POSITIVE_INFINITY;if(p.maximum<b)y._zod.bag.maximum=p.maximum}),t._zod.check=(y)=>{let b=y.value;if(b.length<=p.maximum)return;let _=br(b);y.issues.push({origin:_,code:"too_big",maximum:p.maximum,inclusive:!0,input:b,inst:t,continue:!p.abort})}}),Bl=N("$ZodCheckMinLength",(t,p)=>{var m;me.init(t,p),(m=t._zod.def).when??(m.when=(y)=>{let b=y.value;return!vr(b)&&b.length!==void 0}),t._zod.onattach.push((y)=>{let b=y._zod.bag.minimum??Number.NEGATIVE_INFINITY;if(p.minimum>b)y._zod.bag.minimum=p.minimum}),t._zod.check=(y)=>{let b=y.value;if(b.length>=p.minimum)return;let _=br(b);y.issues.push({origin:_,code:"too_small",minimum:p.minimum,inclusive:!0,input:b,inst:t,continue:!p.abort})}}),ql=N("$ZodCheckLengthEquals",(t,p)=>{var m;me.init(t,p),(m=t._zod.def).when??(m.when=(y)=>{let b=y.value;return!vr(b)&&b.length!==void 0}),t._zod.onattach.push((y)=>{let b=y._zod.bag;b.minimum=p.length,b.maximum=p.length,b.length=p.length}),t._zod.check=(y)=>{let b=y.value,x=b.length;if(x===p.length)return;let _=br(b),S=x>p.length;y.issues.push({origin:_,...S?{code:"too_big",maximum:p.length}:{code:"too_small",minimum:p.length},inclusive:!0,exact:!0,input:y.value,inst:t,continue:!p.abort})}}),_r=N("$ZodCheckStringFormat",(t,p)=>{var m,y;if(me.init(t,p),t._zod.onattach.push((b)=>{let x=b._zod.bag;if(x.format=p.format,p.pattern)x.patterns??(x.patterns=new Set),x.patterns.add(p.pattern)}),p.pattern)(m=t._zod).check??(m.check=(b)=>{if(p.pattern.lastIndex=0,p.pattern.test(b.value))return;b.issues.push({origin:"string",code:"invalid_format",format:p.format,input:b.value,...p.pattern?{pattern:p.pattern.toString()}:{},inst:t,continue:!p.abort})});else(y=t._zod).check??(y.check=()=>{})}),Wl=N("$ZodCheckRegex",(t,p)=>{_r.init(t,p),t._zod.check=(m)=>{if(p.pattern.lastIndex=0,p.pattern.test(m.value))return;m.issues.push({origin:"string",code:"invalid_format",format:"regex",input:m.value,pattern:p.pattern.toString(),inst:t,continue:!p.abort})}}),Vl=N("$ZodCheckLowerCase",(t,p)=>{p.pattern??(p.pattern=zl),_r.init(t,p)}),Gl=N("$ZodCheckUpperCase",(t,p)=>{p.pattern??(p.pattern=Dl),_r.init(t,p)}),Jl=N("$ZodCheckIncludes",(t,p)=>{me.init(t,p);let m=He(p.includes),y=new RegExp(typeof p.position==="number"?`^.{${p.position}}${m}`:m);p.pattern=y,t._zod.onattach.push((b)=>{let x=b._zod.bag;x.patterns??(x.patterns=new Set),x.patterns.add(y)}),t._zod.check=(b)=>{if(b.value.includes(p.includes,p.position))return;b.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:p.includes,input:b.value,inst:t,continue:!p.abort})}}),Kl=N("$ZodCheckStartsWith",(t,p)=>{me.init(t,p);let m=new RegExp(`^${He(p.prefix)}.*`);p.pattern??(p.pattern=m),t._zod.onattach.push((y)=>{let b=y._zod.bag;b.patterns??(b.patterns=new Set),b.patterns.add(m)}),t._zod.check=(y)=>{if(y.value.startsWith(p.prefix))return;y.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:p.prefix,input:y.value,inst:t,continue:!p.abort})}}),Hl=N("$ZodCheckEndsWith",(t,p)=>{me.init(t,p);let m=new RegExp(`.*${He(p.suffix)}$`);p.pattern??(p.pattern=m),t._zod.onattach.push((y)=>{let b=y._zod.bag;b.patterns??(b.patterns=new Set),b.patterns.add(m)}),t._zod.check=(y)=>{if(y.value.endsWith(p.suffix))return;y.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:p.suffix,input:y.value,inst:t,continue:!p.abort})}});var Yl=N("$ZodCheckOverwrite",(t,p)=>{me.init(t,p),t._zod.check=(m)=>{m.value=p.tx(m.value)}});class go{constructor(t=[]){if(this.content=[],this.indent=0,this)this.args=t}indented(t){this.indent+=1,t(this),this.indent-=1}write(t){if(typeof t==="function"){t(this,{execution:"sync"}),t(this,{execution:"async"});return}let m=t.split(`
|
|
68
|
-
`).filter((
|
|
69
|
-
`))}}var Ql={major:4,minor:4,patch:3};var ae=N("$ZodType",(t,p)=>{var m;t??(t={}),t._zod.def=p,t._zod.bag=t._zod.bag||{},t._zod.version=Ql;let y=[...t._zod.def.checks??[]];if(t._zod.traits.has("$ZodCheck"))y.unshift(t);for(let b of y)for(let x of b._zod.onattach)x(t);if(y.length===0)(m=t._zod).deferred??(m.deferred=[]),t._zod.deferred?.push(()=>{t._zod.run=t._zod.parse});else{let b=(_,S,E)=>{let k=ct(_),M;for(let R of S){if(R._zod.def.when){if(co(_))continue;if(!R._zod.def.when(_))continue}else if(k)continue;let C=_.issues.length,A=R._zod.check(_);if(A instanceof Promise&&E?.async===!1)throw new Je;if(M||A instanceof Promise)M=(M??Promise.resolve()).then(async()=>{if(await A,_.issues.length===C)return;if(!k)k=ct(_,C)});else{if(_.issues.length===C)continue;if(!k)k=ct(_,C)}}if(M)return M.then(()=>_);return _},x=(_,S,E)=>{if(ct(_))return _.aborted=!0,_;let k=b(S,y,E);if(k instanceof Promise){if(E.async===!1)throw new Je;return k.then((M)=>t._zod.parse(M,E))}return t._zod.parse(k,E)};t._zod.run=(_,S)=>{if(S.skipChecks)return t._zod.parse(_,S);if(S.direction==="backward"){let k=t._zod.parse({value:_.value,issues:[]},{...S,skipChecks:!0});if(k instanceof Promise)return k.then((M)=>x(M,_,S));return x(k,_,S)}let E=t._zod.parse(_,S);if(E instanceof Promise){if(S.async===!1)throw new Je;return E.then((k)=>b(k,y,S))}return b(E,y,S)}}J(t,"~standard",()=>({validate:(b)=>{try{let x=tl(t,b);return x.success?{value:x.data}:{issues:x.error?.issues}}catch(x){return rl(t,b).then((_)=>_.success?{value:_.data}:{issues:_.error?.issues})}},vendor:"zod",version:1}))}),pn=N("$ZodString",(t,p)=>{ae.init(t,p),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??Ol(t._zod.bag),t._zod.parse=(m,y)=>{if(p.coerce)try{m.value=String(m.value)}catch(b){}if(typeof m.value==="string")return m;return m.issues.push({expected:"string",code:"invalid_type",input:m.value,inst:t}),m}}),se=N("$ZodStringFormat",(t,p)=>{_r.init(t,p),pn.init(t,p)}),lc=N("$ZodGUID",(t,p)=>{p.pattern??(p.pattern=yl),se.init(t,p)}),cc=N("$ZodUUID",(t,p)=>{if(p.version){let y={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[p.version];if(y===void 0)throw Error(`Invalid UUID version: "${p.version}"`);p.pattern??(p.pattern=po(y))}else p.pattern??(p.pattern=po());se.init(t,p)}),uc=N("$ZodEmail",(t,p)=>{p.pattern??(p.pattern=bl),se.init(t,p)}),dc=N("$ZodURL",(t,p)=>{se.init(t,p),t._zod.check=(m)=>{try{let y=m.value.trim();if(!p.normalize&&p.protocol?.source===El.source){if(!/^https?:\/\//i.test(y)){m.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:m.value,inst:t,continue:!p.abort});return}}let b=new URL(y);if(p.hostname){if(p.hostname.lastIndex=0,!p.hostname.test(b.hostname))m.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:p.hostname.source,input:m.value,inst:t,continue:!p.abort})}if(p.protocol){if(p.protocol.lastIndex=0,!p.protocol.test(b.protocol.endsWith(":")?b.protocol.slice(0,-1):b.protocol))m.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:p.protocol.source,input:m.value,inst:t,continue:!p.abort})}if(p.normalize)m.value=b.href;else m.value=y;return}catch(y){m.issues.push({code:"invalid_format",format:"url",input:m.value,inst:t,continue:!p.abort})}}}),pc=N("$ZodEmoji",(t,p)=>{p.pattern??(p.pattern=wl()),se.init(t,p)}),fc=N("$ZodNanoID",(t,p)=>{p.pattern??(p.pattern=gl),se.init(t,p)}),mc=N("$ZodCUID",(t,p)=>{p.pattern??(p.pattern=dl),se.init(t,p)}),hc=N("$ZodCUID2",(t,p)=>{p.pattern??(p.pattern=pl),se.init(t,p)}),gc=N("$ZodULID",(t,p)=>{p.pattern??(p.pattern=fl),se.init(t,p)}),vc=N("$ZodXID",(t,p)=>{p.pattern??(p.pattern=ml),se.init(t,p)}),yc=N("$ZodKSUID",(t,p)=>{p.pattern??(p.pattern=hl),se.init(t,p)}),bc=N("$ZodISODateTime",(t,p)=>{p.pattern??(p.pattern=Al(p)),se.init(t,p)}),wc=N("$ZodISODate",(t,p)=>{p.pattern??(p.pattern=Ml),se.init(t,p)}),xc=N("$ZodISOTime",(t,p)=>{p.pattern??(p.pattern=Cl(p)),se.init(t,p)}),_c=N("$ZodISODuration",(t,p)=>{p.pattern??(p.pattern=vl),se.init(t,p)}),Sc=N("$ZodIPv4",(t,p)=>{p.pattern??(p.pattern=xl),se.init(t,p),t._zod.bag.format="ipv4"}),Ic=N("$ZodIPv6",(t,p)=>{p.pattern??(p.pattern=_l),se.init(t,p),t._zod.bag.format="ipv6",t._zod.check=(m)=>{try{new URL(`http://[${m.value}]`)}catch{m.issues.push({code:"invalid_format",format:"ipv6",input:m.value,inst:t,continue:!p.abort})}}});var Tc=N("$ZodCIDRv4",(t,p)=>{p.pattern??(p.pattern=Sl),se.init(t,p)}),Ec=N("$ZodCIDRv6",(t,p)=>{p.pattern??(p.pattern=Il),se.init(t,p),t._zod.check=(m)=>{let y=m.value.split("/");try{if(y.length!==2)throw Error();let[b,x]=y;if(!x)throw Error();let _=Number(x);if(`${_}`!==x)throw Error();if(_<0||_>128)throw Error();new URL(`http://[${b}]`)}catch{m.issues.push({code:"invalid_format",format:"cidrv6",input:m.value,inst:t,continue:!p.abort})}}});function kc(t){if(t==="")return!0;if(/\s/.test(t))return!1;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var $c=N("$ZodBase64",(t,p)=>{p.pattern??(p.pattern=Tl),se.init(t,p),t._zod.bag.contentEncoding="base64",t._zod.check=(m)=>{if(kc(m.value))return;m.issues.push({code:"invalid_format",format:"base64",input:m.value,inst:t,continue:!p.abort})}});function Tg(t){if(!fo.test(t))return!1;let p=t.replace(/[-_]/g,(y)=>y==="-"?"+":"/"),m=p.padEnd(Math.ceil(p.length/4)*4,"=");return kc(m)}var Mc=N("$ZodBase64URL",(t,p)=>{p.pattern??(p.pattern=fo),se.init(t,p),t._zod.bag.contentEncoding="base64url",t._zod.check=(m)=>{if(Tg(m.value))return;m.issues.push({code:"invalid_format",format:"base64url",input:m.value,inst:t,continue:!p.abort})}}),Rc=N("$ZodE164",(t,p)=>{p.pattern??(p.pattern=kl),se.init(t,p)});function Eg(t,p=null){try{let m=t.split(".");if(m.length!==3)return!1;let[y]=m;if(!y)return!1;let b=JSON.parse(atob(y));if("typ"in b&&b?.typ!=="JWT")return!1;if(!b.alg)return!1;if(p&&(!("alg"in b)||b.alg!==p))return!1;return!0}catch{return!1}}var Cc=N("$ZodJWT",(t,p)=>{se.init(t,p),t._zod.check=(m)=>{if(Eg(m.value,p.alg))return;m.issues.push({code:"invalid_format",format:"jwt",input:m.value,inst:t,continue:!p.abort})}});var yo=N("$ZodNumber",(t,p)=>{ae.init(t,p),t._zod.pattern=t._zod.bag.pattern??ln,t._zod.parse=(m,y)=>{if(p.coerce)try{m.value=Number(m.value)}catch(_){}let b=m.value;if(typeof b==="number"&&!Number.isNaN(b)&&Number.isFinite(b))return m;let x=typeof b==="number"?Number.isNaN(b)?"NaN":!Number.isFinite(b)?"Infinity":void 0:void 0;return m.issues.push({expected:"number",code:"invalid_type",input:b,inst:t,...x?{received:x}:{}}),m}}),Ac=N("$ZodNumberFormat",(t,p)=>{Ll.init(t,p),yo.init(t,p)}),Oc=N("$ZodBoolean",(t,p)=>{ae.init(t,p),t._zod.pattern=Nl,t._zod.parse=(m,y)=>{if(p.coerce)try{m.value=Boolean(m.value)}catch(x){}let b=m.value;if(typeof b==="boolean")return m;return m.issues.push({expected:"boolean",code:"invalid_type",input:b,inst:t}),m}});var Pc=N("$ZodNull",(t,p)=>{ae.init(t,p),t._zod.pattern=jl,t._zod.values=new Set([null]),t._zod.parse=(m,y)=>{let b=m.value;if(b===null)return m;return m.issues.push({expected:"null",code:"invalid_type",input:b,inst:t}),m}});var Nc=N("$ZodUnknown",(t,p)=>{ae.init(t,p),t._zod.parse=(m)=>m}),jc=N("$ZodNever",(t,p)=>{ae.init(t,p),t._zod.parse=(m,y)=>(m.issues.push({expected:"never",code:"invalid_type",input:m.value,inst:t}),m)});function ec(t,p,m){if(t.issues.length)p.issues.push(...Ye(m,t.issues));p.value[m]=t.value}var zc=N("$ZodArray",(t,p)=>{ae.init(t,p),t._zod.parse=(m,y)=>{let b=m.value;if(!Array.isArray(b))return m.issues.push({expected:"array",code:"invalid_type",input:b,inst:t}),m;m.value=Array(b.length);let x=[];for(let _=0;_<b.length;_++){let S=b[_],E=p.element._zod.run({value:S,issues:[]},y);if(E instanceof Promise)x.push(E.then((k)=>ec(k,m,_)));else ec(E,m,_)}if(x.length)return Promise.all(x).then(()=>m);return m}});function dn(t,p,m,y,b,x){let _=m in y;if(t.issues.length){if(b&&x&&!_)return;p.issues.push(...Ye(m,t.issues))}if(!_&&!b){if(!t.issues.length)p.issues.push({code:"invalid_type",expected:"nonoptional",input:void 0,path:[m]});return}if(t.value===void 0){if(_)p.value[m]=void 0}else p.value[m]=t.value}function Dc(t){let p=Object.keys(t.shape);for(let y of p)if(!t.shape?.[y]?._zod?.traits?.has("$ZodType"))throw Error(`Invalid element at key "${y}": expected a Zod schema`);let m=io(t.shape);return{...t,keys:p,keySet:new Set(p),numKeys:p.length,optionalKeys:new Set(m)}}function Uc(t,p,m,y,b,x){let _=[],S=b.keySet,E=b.catchall._zod,k=E.def.type,M=E.optin==="optional",R=E.optout==="optional";for(let C in p){if(C==="__proto__")continue;if(S.has(C))continue;if(k==="never"){_.push(C);continue}let A=E.run({value:p[C],issues:[]},y);if(A instanceof Promise)t.push(A.then((j)=>dn(j,m,C,p,M,R)));else dn(A,m,C,p,M,R)}if(_.length)m.issues.push({code:"unrecognized_keys",keys:_,input:p,inst:x});if(!t.length)return m;return Promise.all(t).then(()=>m)}var kg=N("$ZodObject",(t,p)=>{if(ae.init(t,p),!Object.getOwnPropertyDescriptor(p,"shape")?.get){let S=p.shape;Object.defineProperty(p,"shape",{get:()=>{let E={...S};return Object.defineProperty(p,"shape",{value:E}),E}})}let y=Wt(()=>Dc(p));J(t._zod,"propValues",()=>{let S=p.shape,E={};for(let k in S){let M=S[k]._zod;if(M.values){E[k]??(E[k]=new Set);for(let R of M.values)E[k].add(R)}}return E});let b=Tt,x=p.catchall,_;t._zod.parse=(S,E)=>{_??(_=y.value);let k=S.value;if(!b(k))return S.issues.push({expected:"object",code:"invalid_type",input:k,inst:t}),S;S.value={};let M=[],R=_.shape;for(let C of _.keys){let A=R[C],j=A._zod.optin==="optional",P=A._zod.optout==="optional",U=A._zod.run({value:k[C],issues:[]},E);if(U instanceof Promise)M.push(U.then((ee)=>dn(ee,S,C,k,j,P)));else dn(U,S,C,k,j,P)}if(!x)return M.length?Promise.all(M).then(()=>S):S;return Uc(M,k,S,E,y.value,t)}}),Zc=N("$ZodObjectJIT",(t,p)=>{kg.init(t,p);let m=t._zod.parse,y=Wt(()=>Dc(p)),b=(C)=>{let A=new go(["shape","payload","ctx"]),j=y.value,P=(ne)=>{let G=rn(ne);return`shape[${G}]._zod.run({ value: input[${G}], issues: [] }, ctx)`};A.write("const input = payload.value;");let U=Object.create(null),ee=0;for(let ne of j.keys)U[ne]=`key_${ee++}`;A.write("const newResult = {};");for(let ne of j.keys){let G=U[ne],Y=rn(ne),O=C[ne],X=O?._zod?.optin==="optional",ce=O?._zod?.optout==="optional";if(A.write(`const ${G} = ${P(ne)};`),X&&ce)A.write(`
|
|
70
|
-
if (${
|
|
71
|
-
if (${
|
|
72
|
-
payload.issues = payload.issues.concat(${
|
|
46
|
+
cliAuth Convex functions or no active API account (Settings -> API Access).`)),t)});try{return await Promise.race([e,n])}finally{if(r)clearTimeout(r)}}function Mh(){let e=process.env.BROODS_LOGIN_PORT;if(e){let t=Number(e);if(Number.isInteger(t)&&t>0&&t<65536)return t;throw Error("BROODS_LOGIN_PORT must be a TCP port number")}return 18987}function Rh(e){let t=process.platform==="darwin"?"open":process.platform==="win32"?"cmd":"xdg-open",r=process.platform==="win32"?["/c","start",e]:[e];Sh(t,r,{stdio:"ignore",detached:!0}).unref()}var ii="vercel.ai.error",Ch=Symbol.for(ii),Cs,As,k=class e extends(As=Error,Cs=Ch,As){constructor({name:t,message:r,cause:n}){super(r);this[Cs]=!0,this.name=t,this.cause=n}static isInstance(t){return e.hasMarker(t,ii)}static hasMarker(t,r){let n=Symbol.for(r);return t!=null&&typeof t==="object"&&n in t&&typeof t[n]==="boolean"&&t[n]===!0}},li="AI_APICallError",ci=`vercel.ai.error.${li}`,Ah=Symbol.for(ci),Os,Ps,WS=class extends(Ps=k,Os=Ah,Ps){constructor({message:e,url:t,requestBodyValues:r,statusCode:n,responseHeaders:o,responseBody:a,cause:s,isRetryable:i=n!=null&&(n===408||n===409||n===429||n>=500),data:c}){super({name:li,message:e,cause:s});this[Os]=!0,this.url=t,this.requestBodyValues=r,this.statusCode=n,this.responseHeaders=o,this.responseBody=a,this.isRetryable=i,this.data=c}static isInstance(e){return k.hasMarker(e,ci)}},ui="AI_EmptyResponseBodyError",di=`vercel.ai.error.${ui}`,Oh=Symbol.for(di),Ns,zs,VS=class extends(zs=k,Ns=Oh,zs){constructor({message:e="Empty response body"}={}){super({name:ui,message:e});this[Ns]=!0}static isInstance(e){return k.hasMarker(e,di)}};function rr(e){if(e==null)return"unknown error";if(typeof e==="string")return e;if(e instanceof Error)return e.toString();return JSON.stringify(e)}var pi="AI_InvalidArgumentError",fi=`vercel.ai.error.${pi}`,Ph=Symbol.for(fi),js,Ds,mi=class extends(Ds=k,js=Ph,Ds){constructor({message:e,cause:t,argument:r}){super({name:pi,message:e,cause:t});this[js]=!0,this.argument=r}static isInstance(e){return k.hasMarker(e,fi)}},hi="AI_InvalidPromptError",gi=`vercel.ai.error.${hi}`,Nh=Symbol.for(gi),Us,Zs,GS=class extends(Zs=k,Us=Nh,Zs){constructor({prompt:e,message:t,cause:r}){super({name:hi,message:`Invalid prompt: ${t}`,cause:r});this[Us]=!0,this.prompt=e}static isInstance(e){return k.hasMarker(e,gi)}},vi="AI_InvalidResponseDataError",yi=`vercel.ai.error.${vi}`,zh=Symbol.for(yi),Ls,Fs,JS=class extends(Fs=k,Ls=zh,Fs){constructor({data:e,message:t=`Invalid response data: ${JSON.stringify(e)}.`}){super({name:vi,message:t});this[Ls]=!0,this.data=e}static isInstance(e){return k.hasMarker(e,yi)}},wi="AI_JSONParseError",bi=`vercel.ai.error.${wi}`,jh=Symbol.for(bi),Bs,qs,Vn=class extends(qs=k,Bs=jh,qs){constructor({text:e,cause:t}){super({name:wi,message:`JSON parsing failed: Text: ${e}.
|
|
47
|
+
Error message: ${rr(t)}`,cause:t});this[Bs]=!0,this.text=e}static isInstance(e){return k.hasMarker(e,bi)}},xi="AI_LoadAPIKeyError",_i=`vercel.ai.error.${xi}`,Dh=Symbol.for(_i),Ws,Vs,KS=class extends(Vs=k,Ws=Dh,Vs){constructor({message:e}){super({name:xi,message:e});this[Ws]=!0}static isInstance(e){return k.hasMarker(e,_i)}},Si="AI_LoadSettingError",Ii=`vercel.ai.error.${Si}`,Uh=Symbol.for(Ii),Gs,Js,HS=class extends(Js=k,Gs=Uh,Js){constructor({message:e}){super({name:Si,message:e});this[Gs]=!0}static isInstance(e){return k.hasMarker(e,Ii)}},Ti="AI_NoContentGeneratedError",Ei=`vercel.ai.error.${Ti}`,Zh=Symbol.for(Ei),Ks,Hs,YS=class extends(Hs=k,Ks=Zh,Hs){constructor({message:e="No content generated."}={}){super({name:Ti,message:e});this[Ks]=!0}static isInstance(e){return k.hasMarker(e,Ei)}},ki="AI_NoSuchModelError",$i=`vercel.ai.error.${ki}`,Lh=Symbol.for($i),Ys,Xs,XS=class extends(Xs=k,Ys=Lh,Xs){constructor({errorName:e=ki,modelId:t,modelType:r,message:n=`No such ${r}: ${t}`}){super({name:e,message:n});this[Ys]=!0,this.modelId=t,this.modelType=r}static isInstance(e){return k.hasMarker(e,$i)}},Mi="AI_NoSuchProviderReferenceError",Ri=`vercel.ai.error.${Mi}`,Fh=Symbol.for(Ri),Qs,ei,QS=class extends(ei=k,Qs=Fh,ei){constructor({provider:e,reference:t,message:r=`No provider reference found for provider '${e}'. Available providers: ${Object.keys(t).join(", ")}`}){super({name:Mi,message:r});this[Qs]=!0,this.provider=e,this.reference=t}static isInstance(e){return k.hasMarker(e,Ri)}},Ci="AI_TooManyEmbeddingValuesForCallError",Ai=`vercel.ai.error.${Ci}`,Bh=Symbol.for(Ai),ti,ri,eI=class extends(ri=k,ti=Bh,ri){constructor(e){super({name:Ci,message:`Too many values for a single embedding call. The ${e.provider} model "${e.modelId}" can only embed up to ${e.maxEmbeddingsPerCall} values per call, but ${e.values.length} values were provided.`});this[ti]=!0,this.provider=e.provider,this.modelId=e.modelId,this.maxEmbeddingsPerCall=e.maxEmbeddingsPerCall,this.values=e.values}static isInstance(e){return k.hasMarker(e,Ai)}},Oi="AI_TypeValidationError",Pi=`vercel.ai.error.${Oi}`,qh=Symbol.for(Pi),ni,oi,Me=class e extends(oi=k,ni=qh,oi){constructor({value:t,cause:r,context:n}){let o="Type validation failed";if(n==null?void 0:n.field)o+=` for ${n.field}`;if((n==null?void 0:n.entityName)||(n==null?void 0:n.entityId)){o+=" (";let a=[];if(n.entityName)a.push(n.entityName);if(n.entityId)a.push(`id: "${n.entityId}"`);o+=a.join(", "),o+=")"}super({name:Oi,message:`${o}: Value: ${JSON.stringify(t)}.
|
|
48
|
+
Error message: ${rr(r)}`,cause:r});this[ni]=!0,this.value=t,this.context=n}static isInstance(t){return k.hasMarker(t,Pi)}static wrap({value:t,cause:r,context:n}){var o,a,s;if(e.isInstance(r)&&r.value===t&&((o=r.context)==null?void 0:o.field)===(n==null?void 0:n.field)&&((a=r.context)==null?void 0:a.entityName)===(n==null?void 0:n.entityName)&&((s=r.context)==null?void 0:s.entityId)===(n==null?void 0:n.entityId))return r;return new e({value:t,cause:r,context:n})}},Ni="AI_UnsupportedFunctionalityError",zi=`vercel.ai.error.${Ni}`,Wh=Symbol.for(zi),ai,si,tI=class extends(si=k,ai=Wh,si){constructor({functionality:e,message:t=`'${e}' functionality not supported.`}){super({name:Ni,message:t});this[ai]=!0,this.functionality=e}static isInstance(e){return k.hasMarker(e,zi)}};var ji;function v(e,t,r){function n(i,c){if(!i._zod)Object.defineProperty(i,"_zod",{value:{def:c,constr:s,traits:new Set},enumerable:!1});if(i._zod.traits.has(e))return;i._zod.traits.add(e),t(i,c);let u=s.prototype,d=Object.keys(u);for(let p=0;p<d.length;p++){let m=d[p];if(!(m in i))i[m]=u[m].bind(i)}}let o=r?.Parent??Object;class a extends o{}Object.defineProperty(a,"name",{value:e});function s(i){var c;let u=r?.Parent?new a:this;n(u,i),(c=u._zod).deferred??(c.deferred=[]);for(let d of u._zod.deferred)d();return u}return Object.defineProperty(s,"init",{value:n}),Object.defineProperty(s,Symbol.hasInstance,{value:(i)=>{if(r?.Parent&&i instanceof r.Parent)return!0;return i?._zod?.traits?.has(e)}}),Object.defineProperty(s,"name",{value:e}),s}var gI=Symbol("zod_brand");class ze extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class nr extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`);this.name="ZodEncodeError"}}(ji=globalThis).__zod_globalConfig??(ji.__zod_globalConfig={});var Ct=globalThis.__zod_globalConfig;function _e(e){if(e)Object.assign(Ct,e);return Ct}var O={};Vh(O,{BIGINT_FORMAT_RANGES:()=>Fi,Class:()=>Vi,NUMBER_FORMAT_RANGES:()=>Qn,aborted:()=>He,allowsEval:()=>Hn,assert:()=>Yh,assertEqual:()=>Gh,assertIs:()=>Kh,assertNever:()=>Hh,assertNotEqual:()=>Jh,assignProp:()=>Je,base64ToUint8Array:()=>qi,base64urlToUint8Array:()=>gg,cached:()=>Ot,captureStackTrace:()=>Jr,cleanEnum:()=>hg,cleanRegex:()=>ir,clone:()=>Se,cloneDef:()=>eg,createTransparentProxy:()=>sg,defineLazy:()=>C,esc:()=>Gr,escapeRegex:()=>De,explicitlyAborted:()=>eo,extend:()=>cg,finalizeIssue:()=>be,floatSafeRemainder:()=>Jn,getElementAtPath:()=>tg,getEnumValues:()=>ar,getLengthableOrigin:()=>lr,getParsedType:()=>ag,getSizableOrigin:()=>Bi,hexToUint8Array:()=>yg,isObject:()=>mt,isPlainObject:()=>Ke,issue:()=>Pt,joinValues:()=>Xh,jsonStringifyReplacer:()=>At,merge:()=>dg,mergeDefs:()=>je,normalizeParams:()=>E,nullish:()=>sr,numKeys:()=>og,objectClone:()=>Qh,omit:()=>lg,optionalKeys:()=>Xn,parsedType:()=>mg,partial:()=>pg,pick:()=>ig,prefixIssues:()=>Ue,primitiveTypes:()=>Zi,promiseAllObject:()=>rg,propertyKeyTypes:()=>Yn,randomString:()=>ng,required:()=>fg,safeExtend:()=>ug,shallowClone:()=>Ui,slugify:()=>Kn,stringifyPrimitive:()=>Li,uint8ArrayToBase64:()=>Wi,uint8ArrayToBase64url:()=>vg,uint8ArrayToHex:()=>wg,unwrapMessage:()=>or});function Gh(e){return e}function Jh(e){return e}function Kh(e){}function Hh(e){throw Error("Unexpected value in exhaustive check")}function Yh(e){}function ar(e){let t=Object.values(e).filter((n)=>typeof n==="number");return Object.entries(e).filter(([n,o])=>t.indexOf(+n)===-1).map(([n,o])=>o)}function Xh(e,t="|"){return e.map((r)=>Li(r)).join(t)}function At(e,t){if(typeof t==="bigint")return t.toString();return t}function Ot(e){return{get value(){{let r=e();return Object.defineProperty(this,"value",{value:r}),r}throw Error("cached value already set")}}}function sr(e){return e===null||e===void 0}function ir(e){let t=e.startsWith("^")?1:0,r=e.endsWith("$")?e.length-1:e.length;return e.slice(t,r)}function Jn(e,t){let r=e/t,n=Math.round(r),o=Number.EPSILON*Math.max(Math.abs(r),1);if(Math.abs(r-n)<o)return 0;return r-n}var Di=Symbol("evaluating");function C(e,t,r){let n=void 0;Object.defineProperty(e,t,{get(){if(n===Di)return;if(n===void 0)n=Di,n=r();return n},set(o){Object.defineProperty(e,t,{value:o})},configurable:!0})}function Qh(e){return Object.create(Object.getPrototypeOf(e),Object.getOwnPropertyDescriptors(e))}function Je(e,t,r){Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0})}function je(...e){let t={};for(let r of e){let n=Object.getOwnPropertyDescriptors(r);Object.assign(t,n)}return Object.defineProperties({},t)}function eg(e){return je(e._zod.def)}function tg(e,t){if(!t)return e;return t.reduce((r,n)=>r?.[n],e)}function rg(e){let t=Object.keys(e),r=t.map((n)=>e[n]);return Promise.all(r).then((n)=>{let o={};for(let a=0;a<t.length;a++)o[t[a]]=n[a];return o})}function ng(e=10){let r="";for(let n=0;n<e;n++)r+="abcdefghijklmnopqrstuvwxyz"[Math.floor(Math.random()*26)];return r}function Gr(e){return JSON.stringify(e)}function Kn(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}var Jr="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function mt(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}var Hn=Ot(()=>{if(Ct.jitless)return!1;if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch(e){return!1}});function Ke(e){if(mt(e)===!1)return!1;let t=e.constructor;if(t===void 0)return!0;if(typeof t!=="function")return!0;let r=t.prototype;if(mt(r)===!1)return!1;if(Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)return!1;return!0}function Ui(e){if(Ke(e))return{...e};if(Array.isArray(e))return[...e];if(e instanceof Map)return new Map(e);if(e instanceof Set)return new Set(e);return e}function og(e){let t=0;for(let r in e)if(Object.prototype.hasOwnProperty.call(e,r))t++;return t}var ag=(e)=>{let t=typeof e;switch(t){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(e)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":if(Array.isArray(e))return"array";if(e===null)return"null";if(e.then&&typeof e.then==="function"&&e.catch&&typeof e.catch==="function")return"promise";if(typeof Map<"u"&&e instanceof Map)return"map";if(typeof Set<"u"&&e instanceof Set)return"set";if(typeof Date<"u"&&e instanceof Date)return"date";if(typeof File<"u"&&e instanceof File)return"file";return"object";default:throw Error(`Unknown data type: ${t}`)}},Yn=new Set(["string","number","symbol"]),Zi=new Set(["string","number","bigint","boolean","symbol","undefined"]);function De(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Se(e,t,r){let n=new e._zod.constr(t??e._zod.def);if(!t||r?.parent)n._zod.parent=e;return n}function E(e){let t=e;if(!t)return{};if(typeof t==="string")return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");t.error=t.message}if(delete t.message,typeof t.error==="string")return{...t,error:()=>t.error};return t}function sg(e){let t;return new Proxy({},{get(r,n,o){return t??(t=e()),Reflect.get(t,n,o)},set(r,n,o,a){return t??(t=e()),Reflect.set(t,n,o,a)},has(r,n){return t??(t=e()),Reflect.has(t,n)},deleteProperty(r,n){return t??(t=e()),Reflect.deleteProperty(t,n)},ownKeys(r){return t??(t=e()),Reflect.ownKeys(t)},getOwnPropertyDescriptor(r,n){return t??(t=e()),Reflect.getOwnPropertyDescriptor(t,n)},defineProperty(r,n,o){return t??(t=e()),Reflect.defineProperty(t,n,o)}})}function Li(e){if(typeof e==="bigint")return e.toString()+"n";if(typeof e==="string")return`"${e}"`;return`${e}`}function Xn(e){return Object.keys(e).filter((t)=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}var Qn={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-340282346638528860000000000000000000000,340282346638528860000000000000000000000],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},Fi={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function ig(e,t){let r=e._zod.def,n=r.checks;if(n&&n.length>0)throw Error(".pick() cannot be used on object schemas containing refinements");let a=je(e._zod.def,{get shape(){let s={};for(let i in t){if(!(i in r.shape))throw Error(`Unrecognized key: "${i}"`);if(!t[i])continue;s[i]=r.shape[i]}return Je(this,"shape",s),s},checks:[]});return Se(e,a)}function lg(e,t){let r=e._zod.def,n=r.checks;if(n&&n.length>0)throw Error(".omit() cannot be used on object schemas containing refinements");let a=je(e._zod.def,{get shape(){let s={...e._zod.def.shape};for(let i in t){if(!(i in r.shape))throw Error(`Unrecognized key: "${i}"`);if(!t[i])continue;delete s[i]}return Je(this,"shape",s),s},checks:[]});return Se(e,a)}function cg(e,t){if(!Ke(t))throw Error("Invalid input to extend: expected a plain object");let r=e._zod.def.checks;if(r&&r.length>0){let a=e._zod.def.shape;for(let s in t)if(Object.getOwnPropertyDescriptor(a,s)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}let o=je(e._zod.def,{get shape(){let a={...e._zod.def.shape,...t};return Je(this,"shape",a),a}});return Se(e,o)}function ug(e,t){if(!Ke(t))throw Error("Invalid input to safeExtend: expected a plain object");let r=je(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return Je(this,"shape",n),n}});return Se(e,r)}function dg(e,t){if(e._zod.def.checks?.length)throw Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");let r=je(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t._zod.def.shape};return Je(this,"shape",n),n},get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]});return Se(e,r)}function pg(e,t,r){let o=t._zod.def.checks;if(o&&o.length>0)throw Error(".partial() cannot be used on object schemas containing refinements");let s=je(t._zod.def,{get shape(){let i=t._zod.def.shape,c={...i};if(r)for(let u in r){if(!(u in i))throw Error(`Unrecognized key: "${u}"`);if(!r[u])continue;c[u]=e?new e({type:"optional",innerType:i[u]}):i[u]}else for(let u in i)c[u]=e?new e({type:"optional",innerType:i[u]}):i[u];return Je(this,"shape",c),c},checks:[]});return Se(t,s)}function fg(e,t,r){let n=je(t._zod.def,{get shape(){let o=t._zod.def.shape,a={...o};if(r)for(let s in r){if(!(s in a))throw Error(`Unrecognized key: "${s}"`);if(!r[s])continue;a[s]=new e({type:"nonoptional",innerType:o[s]})}else for(let s in o)a[s]=new e({type:"nonoptional",innerType:o[s]});return Je(this,"shape",a),a}});return Se(t,n)}function He(e,t=0){if(e.aborted===!0)return!0;for(let r=t;r<e.issues.length;r++)if(e.issues[r]?.continue!==!0)return!0;return!1}function eo(e,t=0){if(e.aborted===!0)return!0;for(let r=t;r<e.issues.length;r++)if(e.issues[r]?.continue===!1)return!0;return!1}function Ue(e,t){return t.map((r)=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(e),r})}function or(e){return typeof e==="string"?e:e?.message}function be(e,t,r){let n=e.message?e.message:or(e.inst?._zod.def?.error?.(e))??or(t?.error?.(e))??or(r.customError?.(e))??or(r.localeError?.(e))??"Invalid input",{inst:o,continue:a,input:s,...i}=e;if(i.path??(i.path=[]),i.message=n,t?.reportInput)i.input=s;return i}function Bi(e){if(e instanceof Set)return"set";if(e instanceof Map)return"map";if(e instanceof File)return"file";return"unknown"}function lr(e){if(Array.isArray(e))return"array";if(typeof e==="string")return"string";return"unknown"}function mg(e){let t=typeof e;switch(t){case"number":return Number.isNaN(e)?"nan":"number";case"object":{if(e===null)return"null";if(Array.isArray(e))return"array";let r=e;if(r&&Object.getPrototypeOf(r)!==Object.prototype&&"constructor"in r&&r.constructor)return r.constructor.name}}return t}function Pt(...e){let[t,r,n]=e;if(typeof t==="string")return{message:t,code:"custom",input:r,inst:n};return{...t}}function hg(e){return Object.entries(e).filter(([t,r])=>Number.isNaN(Number.parseInt(t,10))).map((t)=>t[1])}function qi(e){let t=atob(e),r=new Uint8Array(t.length);for(let n=0;n<t.length;n++)r[n]=t.charCodeAt(n);return r}function Wi(e){let t="";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return btoa(t)}function gg(e){let t=e.replace(/-/g,"+").replace(/_/g,"/"),r="=".repeat((4-t.length%4)%4);return qi(t+r)}function vg(e){return Wi(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function yg(e){let t=e.replace(/^0x/,"");if(t.length%2!==0)throw Error("Invalid hex string length");let r=new Uint8Array(t.length/2);for(let n=0;n<t.length;n+=2)r[n/2]=Number.parseInt(t.slice(n,n+2),16);return r}function wg(e){return Array.from(e).map((t)=>t.toString(16).padStart(2,"0")).join("")}class Vi{constructor(...e){}}var Gi=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,At,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Kr=v("$ZodError",Gi),to=v("$ZodError",Gi,{Parent:Error});function Ji(e,t=(r)=>r.message){let r={},n=[];for(let o of e.issues)if(o.path.length>0)r[o.path[0]]=r[o.path[0]]||[],r[o.path[0]].push(t(o));else n.push(t(o));return{formErrors:n,fieldErrors:r}}function Ki(e,t=(r)=>r.message){let r={_errors:[]},n=(o,a=[])=>{for(let s of o.issues)if(s.code==="invalid_union"&&s.errors.length)s.errors.map((i)=>n({issues:i},[...a,...s.path]));else if(s.code==="invalid_key")n({issues:s.issues},[...a,...s.path]);else if(s.code==="invalid_element")n({issues:s.issues},[...a,...s.path]);else{let i=[...a,...s.path];if(i.length===0)r._errors.push(t(s));else{let c=r,u=0;while(u<i.length){let d=i[u];if(u!==i.length-1)c[d]=c[d]||{_errors:[]};else c[d]=c[d]||{_errors:[]},c[d]._errors.push(t(s));c=c[d],u++}}}};return n(e),r}var Hr=(e)=>(t,r,n,o)=>{let a=n?{...n,async:!1}:{async:!1},s=t._zod.run({value:r,issues:[]},a);if(s instanceof Promise)throw new ze;if(s.issues.length){let i=new(o?.Err??e)(s.issues.map((c)=>be(c,a,_e())));throw Jr(i,o?.callee),i}return s.value};var Yr=(e)=>async(t,r,n,o)=>{let a=n?{...n,async:!0}:{async:!0},s=t._zod.run({value:r,issues:[]},a);if(s instanceof Promise)s=await s;if(s.issues.length){let i=new(o?.Err??e)(s.issues.map((c)=>be(c,a,_e())));throw Jr(i,o?.callee),i}return s.value};var cr=(e)=>(t,r,n)=>{let o=n?{...n,async:!1}:{async:!1},a=t._zod.run({value:r,issues:[]},o);if(a instanceof Promise)throw new ze;return a.issues.length?{success:!1,error:new(e??Kr)(a.issues.map((s)=>be(s,o,_e())))}:{success:!0,data:a.value}},Hi=cr(to),ur=(e)=>async(t,r,n)=>{let o=n?{...n,async:!0}:{async:!0},a=t._zod.run({value:r,issues:[]},o);if(a instanceof Promise)a=await a;return a.issues.length?{success:!1,error:new e(a.issues.map((s)=>be(s,o,_e())))}:{success:!0,data:a.value}},Yi=ur(to),Xi=(e)=>(t,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return Hr(e)(t,r,o)};var Qi=(e)=>(t,r,n)=>Hr(e)(t,r,n);var el=(e)=>async(t,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return Yr(e)(t,r,o)};var tl=(e)=>async(t,r,n)=>Yr(e)(t,r,n);var rl=(e)=>(t,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return cr(e)(t,r,o)};var nl=(e)=>(t,r,n)=>cr(e)(t,r,n);var ol=(e)=>async(t,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return ur(e)(t,r,o)};var al=(e)=>async(t,r,n)=>ur(e)(t,r,n);var sl=/^[cC][0-9a-z]{6,}$/,il=/^[0-9a-z]+$/,ll=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,cl=/^[0-9a-vA-V]{20}$/,ul=/^[A-Za-z0-9]{27}$/,dl=/^[a-zA-Z0-9_-]{21}$/,pl=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var fl=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,ro=(e)=>{if(!e)return/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/;return new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`)};var ml=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var xg="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function hl(){return new RegExp(xg,"u")}var gl=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,vl=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/;var yl=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,wl=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,bl=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,no=/^[A-Za-z0-9_-]*$/;var xl=/^https?$/,_l=/^\+[1-9]\d{6,14}$/,Sl="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",Il=new RegExp(`^${Sl}$`);function Tl(e){return typeof e.precision==="number"?e.precision===-1?"(?:[01]\\d|2[0-3]):[0-5]\\d":e.precision===0?"(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d":`(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{${e.precision}}`:"(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?"}function El(e){return new RegExp(`^${Tl(e)}$`)}function kl(e){let t=Tl({precision:e.precision}),r=["Z"];if(e.local)r.push("");if(e.offset)r.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let n=`${t}(?:${r.join("|")})`;return new RegExp(`^${Sl}T(?:${n})$`)}var $l=(e)=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)};var Ml=/^-?\d+$/,Xr=/^-?\d+(?:\.\d+)?$/,Rl=/^(?:true|false)$/i,Cl=/^null$/i;var Al=/^[^A-Z]*$/,Ol=/^[^a-z]*$/;var X=v("$ZodCheck",(e,t)=>{var r;e._zod??(e._zod={}),e._zod.def=t,(r=e._zod).onattach??(r.onattach=[])}),Pl={number:"number",bigint:"bigint",object:"date"},oo=v("$ZodCheckLessThan",(e,t)=>{X.init(e,t);let r=Pl[typeof t.value];e._zod.onattach.push((n)=>{let o=n._zod.bag,a=(t.inclusive?o.maximum:o.exclusiveMaximum)??Number.POSITIVE_INFINITY;if(t.value<a)if(t.inclusive)o.maximum=t.value;else o.exclusiveMaximum=t.value}),e._zod.check=(n)=>{if(t.inclusive?n.value<=t.value:n.value<t.value)return;n.issues.push({origin:r,code:"too_big",maximum:typeof t.value==="object"?t.value.getTime():t.value,input:n.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),ao=v("$ZodCheckGreaterThan",(e,t)=>{X.init(e,t);let r=Pl[typeof t.value];e._zod.onattach.push((n)=>{let o=n._zod.bag,a=(t.inclusive?o.minimum:o.exclusiveMinimum)??Number.NEGATIVE_INFINITY;if(t.value>a)if(t.inclusive)o.minimum=t.value;else o.exclusiveMinimum=t.value}),e._zod.check=(n)=>{if(t.inclusive?n.value>=t.value:n.value>t.value)return;n.issues.push({origin:r,code:"too_small",minimum:typeof t.value==="object"?t.value.getTime():t.value,input:n.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Nl=v("$ZodCheckMultipleOf",(e,t)=>{X.init(e,t),e._zod.onattach.push((r)=>{var n;(n=r._zod.bag).multipleOf??(n.multipleOf=t.value)}),e._zod.check=(r)=>{if(typeof r.value!==typeof t.value)throw Error("Cannot mix number and bigint in multiple_of check.");if(typeof r.value==="bigint"?r.value%t.value===BigInt(0):Jn(r.value,t.value)===0)return;r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:t.value,input:r.value,inst:e,continue:!t.abort})}}),zl=v("$ZodCheckNumberFormat",(e,t)=>{X.init(e,t),t.format=t.format||"float64";let r=t.format?.includes("int"),n=r?"int":"number",[o,a]=Qn[t.format];e._zod.onattach.push((s)=>{let i=s._zod.bag;if(i.format=t.format,i.minimum=o,i.maximum=a,r)i.pattern=Ml}),e._zod.check=(s)=>{let i=s.value;if(r){if(!Number.isInteger(i)){s.issues.push({expected:n,format:t.format,code:"invalid_type",continue:!1,input:i,inst:e});return}if(!Number.isSafeInteger(i)){if(i>0)s.issues.push({input:i,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:n,inclusive:!0,continue:!t.abort});else s.issues.push({input:i,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:n,inclusive:!0,continue:!t.abort});return}}if(i<o)s.issues.push({origin:"number",input:i,code:"too_small",minimum:o,inclusive:!0,inst:e,continue:!t.abort});if(i>a)s.issues.push({origin:"number",input:i,code:"too_big",maximum:a,inclusive:!0,inst:e,continue:!t.abort})}});var jl=v("$ZodCheckMaxLength",(e,t)=>{var r;X.init(e,t),(r=e._zod.def).when??(r.when=(n)=>{let o=n.value;return!sr(o)&&o.length!==void 0}),e._zod.onattach.push((n)=>{let o=n._zod.bag.maximum??Number.POSITIVE_INFINITY;if(t.maximum<o)n._zod.bag.maximum=t.maximum}),e._zod.check=(n)=>{let o=n.value;if(o.length<=t.maximum)return;let s=lr(o);n.issues.push({origin:s,code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Dl=v("$ZodCheckMinLength",(e,t)=>{var r;X.init(e,t),(r=e._zod.def).when??(r.when=(n)=>{let o=n.value;return!sr(o)&&o.length!==void 0}),e._zod.onattach.push((n)=>{let o=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;if(t.minimum>o)n._zod.bag.minimum=t.minimum}),e._zod.check=(n)=>{let o=n.value;if(o.length>=t.minimum)return;let s=lr(o);n.issues.push({origin:s,code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Ul=v("$ZodCheckLengthEquals",(e,t)=>{var r;X.init(e,t),(r=e._zod.def).when??(r.when=(n)=>{let o=n.value;return!sr(o)&&o.length!==void 0}),e._zod.onattach.push((n)=>{let o=n._zod.bag;o.minimum=t.length,o.maximum=t.length,o.length=t.length}),e._zod.check=(n)=>{let o=n.value,a=o.length;if(a===t.length)return;let s=lr(o),i=a>t.length;n.issues.push({origin:s,...i?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),dr=v("$ZodCheckStringFormat",(e,t)=>{var r,n;if(X.init(e,t),e._zod.onattach.push((o)=>{let a=o._zod.bag;if(a.format=t.format,t.pattern)a.patterns??(a.patterns=new Set),a.patterns.add(t.pattern)}),t.pattern)(r=e._zod).check??(r.check=(o)=>{if(t.pattern.lastIndex=0,t.pattern.test(o.value))return;o.issues.push({origin:"string",code:"invalid_format",format:t.format,input:o.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})});else(n=e._zod).check??(n.check=()=>{})}),Zl=v("$ZodCheckRegex",(e,t)=>{dr.init(e,t),e._zod.check=(r)=>{if(t.pattern.lastIndex=0,t.pattern.test(r.value))return;r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),Ll=v("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=Al),dr.init(e,t)}),Fl=v("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=Ol),dr.init(e,t)}),Bl=v("$ZodCheckIncludes",(e,t)=>{X.init(e,t);let r=De(t.includes),n=new RegExp(typeof t.position==="number"?`^.{${t.position}}${r}`:r);t.pattern=n,e._zod.onattach.push((o)=>{let a=o._zod.bag;a.patterns??(a.patterns=new Set),a.patterns.add(n)}),e._zod.check=(o)=>{if(o.value.includes(t.includes,t.position))return;o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:o.value,inst:e,continue:!t.abort})}}),ql=v("$ZodCheckStartsWith",(e,t)=>{X.init(e,t);let r=new RegExp(`^${De(t.prefix)}.*`);t.pattern??(t.pattern=r),e._zod.onattach.push((n)=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),e._zod.check=(n)=>{if(n.value.startsWith(t.prefix))return;n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),Wl=v("$ZodCheckEndsWith",(e,t)=>{X.init(e,t);let r=new RegExp(`.*${De(t.suffix)}$`);t.pattern??(t.pattern=r),e._zod.onattach.push((n)=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),e._zod.check=(n)=>{if(n.value.endsWith(t.suffix))return;n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}});var Vl=v("$ZodCheckOverwrite",(e,t)=>{X.init(e,t),e._zod.check=(r)=>{r.value=t.tx(r.value)}});class so{constructor(e=[]){if(this.content=[],this.indent=0,this)this.args=e}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e==="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let r=e.split(`
|
|
49
|
+
`).filter((a)=>a),n=Math.min(...r.map((a)=>a.length-a.trimStart().length)),o=r.map((a)=>a.slice(n)).map((a)=>" ".repeat(this.indent*2)+a);for(let a of o)this.content.push(a)}compile(){let e=Function,t=this?.args,n=[...(this?.content??[""]).map((o)=>` ${o}`)];return new e(...t,n.join(`
|
|
50
|
+
`))}}var Jl={major:4,minor:4,patch:3};var F=v("$ZodType",(e,t)=>{var r;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Jl;let n=[...e._zod.def.checks??[]];if(e._zod.traits.has("$ZodCheck"))n.unshift(e);for(let o of n)for(let a of o._zod.onattach)a(e);if(n.length===0)(r=e._zod).deferred??(r.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let o=(s,i,c)=>{let u=He(s),d;for(let p of i){if(p._zod.def.when){if(eo(s))continue;if(!p._zod.def.when(s))continue}else if(u)continue;let m=s.issues.length,f=p._zod.check(s);if(f instanceof Promise&&c?.async===!1)throw new ze;if(d||f instanceof Promise)d=(d??Promise.resolve()).then(async()=>{if(await f,s.issues.length===m)return;if(!u)u=He(s,m)});else{if(s.issues.length===m)continue;if(!u)u=He(s,m)}}if(d)return d.then(()=>s);return s},a=(s,i,c)=>{if(He(s))return s.aborted=!0,s;let u=o(i,n,c);if(u instanceof Promise){if(c.async===!1)throw new ze;return u.then((d)=>e._zod.parse(d,c))}return e._zod.parse(u,c)};e._zod.run=(s,i)=>{if(i.skipChecks)return e._zod.parse(s,i);if(i.direction==="backward"){let u=e._zod.parse({value:s.value,issues:[]},{...i,skipChecks:!0});if(u instanceof Promise)return u.then((d)=>a(d,s,i));return a(u,s,i)}let c=e._zod.parse(s,i);if(c instanceof Promise){if(i.async===!1)throw new ze;return c.then((u)=>o(u,n,i))}return o(c,n,i)}}C(e,"~standard",()=>({validate:(o)=>{try{let a=Hi(e,o);return a.success?{value:a.data}:{issues:a.error?.issues}}catch(a){return Yi(e,o).then((s)=>s.success?{value:s.data}:{issues:s.error?.issues})}},vendor:"zod",version:1}))}),rn=v("$ZodString",(e,t)=>{F.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??$l(e._zod.bag),e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=String(r.value)}catch(o){}if(typeof r.value==="string")return r;return r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:e}),r}}),B=v("$ZodStringFormat",(e,t)=>{dr.init(e,t),rn.init(e,t)}),nc=v("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=fl),B.init(e,t)}),oc=v("$ZodUUID",(e,t)=>{if(t.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(n===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=ro(n))}else t.pattern??(t.pattern=ro());B.init(e,t)}),ac=v("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=ml),B.init(e,t)}),sc=v("$ZodURL",(e,t)=>{B.init(e,t),e._zod.check=(r)=>{try{let n=r.value.trim();if(!t.normalize&&t.protocol?.source===xl.source){if(!/^https?:\/\//i.test(n)){r.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:r.value,inst:e,continue:!t.abort});return}}let o=new URL(n);if(t.hostname){if(t.hostname.lastIndex=0,!t.hostname.test(o.hostname))r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:t.hostname.source,input:r.value,inst:e,continue:!t.abort})}if(t.protocol){if(t.protocol.lastIndex=0,!t.protocol.test(o.protocol.endsWith(":")?o.protocol.slice(0,-1):o.protocol))r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:r.value,inst:e,continue:!t.abort})}if(t.normalize)r.value=o.href;else r.value=n;return}catch(n){r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:e,continue:!t.abort})}}}),ic=v("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=hl()),B.init(e,t)}),lc=v("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=dl),B.init(e,t)}),cc=v("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=sl),B.init(e,t)}),uc=v("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=il),B.init(e,t)}),dc=v("$ZodULID",(e,t)=>{t.pattern??(t.pattern=ll),B.init(e,t)}),pc=v("$ZodXID",(e,t)=>{t.pattern??(t.pattern=cl),B.init(e,t)}),fc=v("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=ul),B.init(e,t)}),mc=v("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=kl(t)),B.init(e,t)}),hc=v("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=Il),B.init(e,t)}),gc=v("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=El(t)),B.init(e,t)}),vc=v("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=pl),B.init(e,t)}),yc=v("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=gl),B.init(e,t),e._zod.bag.format="ipv4"}),wc=v("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=vl),B.init(e,t),e._zod.bag.format="ipv6",e._zod.check=(r)=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:e,continue:!t.abort})}}});var bc=v("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=yl),B.init(e,t)}),xc=v("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=wl),B.init(e,t),e._zod.check=(r)=>{let n=r.value.split("/");try{if(n.length!==2)throw Error();let[o,a]=n;if(!a)throw Error();let s=Number(a);if(`${s}`!==a)throw Error();if(s<0||s>128)throw Error();new URL(`http://[${o}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:e,continue:!t.abort})}}});function _c(e){if(e==="")return!0;if(/\s/.test(e))return!1;if(e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}var Sc=v("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=bl),B.init(e,t),e._zod.bag.contentEncoding="base64",e._zod.check=(r)=>{if(_c(r.value))return;r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:e,continue:!t.abort})}});function _g(e){if(!no.test(e))return!1;let t=e.replace(/[-_]/g,(n)=>n==="-"?"+":"/"),r=t.padEnd(Math.ceil(t.length/4)*4,"=");return _c(r)}var Ic=v("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=no),B.init(e,t),e._zod.bag.contentEncoding="base64url",e._zod.check=(r)=>{if(_g(r.value))return;r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:e,continue:!t.abort})}}),Tc=v("$ZodE164",(e,t)=>{t.pattern??(t.pattern=_l),B.init(e,t)});function Sg(e,t=null){try{let r=e.split(".");if(r.length!==3)return!1;let[n]=r;if(!n)return!1;let o=JSON.parse(atob(n));if("typ"in o&&o?.typ!=="JWT")return!1;if(!o.alg)return!1;if(t&&(!("alg"in o)||o.alg!==t))return!1;return!0}catch{return!1}}var Ec=v("$ZodJWT",(e,t)=>{B.init(e,t),e._zod.check=(r)=>{if(Sg(r.value,t.alg))return;r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:e,continue:!t.abort})}});var lo=v("$ZodNumber",(e,t)=>{F.init(e,t),e._zod.pattern=e._zod.bag.pattern??Xr,e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=Number(r.value)}catch(s){}let o=r.value;if(typeof o==="number"&&!Number.isNaN(o)&&Number.isFinite(o))return r;let a=typeof o==="number"?Number.isNaN(o)?"NaN":!Number.isFinite(o)?"Infinity":void 0:void 0;return r.issues.push({expected:"number",code:"invalid_type",input:o,inst:e,...a?{received:a}:{}}),r}}),kc=v("$ZodNumberFormat",(e,t)=>{zl.init(e,t),lo.init(e,t)}),$c=v("$ZodBoolean",(e,t)=>{F.init(e,t),e._zod.pattern=Rl,e._zod.parse=(r,n)=>{if(t.coerce)try{r.value=Boolean(r.value)}catch(a){}let o=r.value;if(typeof o==="boolean")return r;return r.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:e}),r}});var Mc=v("$ZodNull",(e,t)=>{F.init(e,t),e._zod.pattern=Cl,e._zod.values=new Set([null]),e._zod.parse=(r,n)=>{let o=r.value;if(o===null)return r;return r.issues.push({expected:"null",code:"invalid_type",input:o,inst:e}),r}});var Rc=v("$ZodUnknown",(e,t)=>{F.init(e,t),e._zod.parse=(r)=>r}),Cc=v("$ZodNever",(e,t)=>{F.init(e,t),e._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:e}),r)});function Kl(e,t,r){if(e.issues.length)t.issues.push(...Ue(r,e.issues));t.value[r]=e.value}var Ac=v("$ZodArray",(e,t)=>{F.init(e,t),e._zod.parse=(r,n)=>{let o=r.value;if(!Array.isArray(o))return r.issues.push({expected:"array",code:"invalid_type",input:o,inst:e}),r;r.value=Array(o.length);let a=[];for(let s=0;s<o.length;s++){let i=o[s],c=t.element._zod.run({value:i,issues:[]},n);if(c instanceof Promise)a.push(c.then((u)=>Kl(u,r,s)));else Kl(c,r,s)}if(a.length)return Promise.all(a).then(()=>r);return r}});function tn(e,t,r,n,o,a){let s=r in n;if(e.issues.length){if(o&&a&&!s)return;t.issues.push(...Ue(r,e.issues))}if(!s&&!o){if(!e.issues.length)t.issues.push({code:"invalid_type",expected:"nonoptional",input:void 0,path:[r]});return}if(e.value===void 0){if(s)t.value[r]=void 0}else t.value[r]=e.value}function Oc(e){let t=Object.keys(e.shape);for(let n of t)if(!e.shape?.[n]?._zod?.traits?.has("$ZodType"))throw Error(`Invalid element at key "${n}": expected a Zod schema`);let r=Xn(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(r)}}function Pc(e,t,r,n,o,a){let s=[],i=o.keySet,c=o.catchall._zod,u=c.def.type,d=c.optin==="optional",p=c.optout==="optional";for(let m in t){if(m==="__proto__")continue;if(i.has(m))continue;if(u==="never"){s.push(m);continue}let f=c.run({value:t[m],issues:[]},n);if(f instanceof Promise)e.push(f.then((y)=>tn(y,r,m,t,d,p)));else tn(f,r,m,t,d,p)}if(s.length)r.issues.push({code:"unrecognized_keys",keys:s,input:t,inst:a});if(!e.length)return r;return Promise.all(e).then(()=>r)}var Ig=v("$ZodObject",(e,t)=>{if(F.init(e,t),!Object.getOwnPropertyDescriptor(t,"shape")?.get){let i=t.shape;Object.defineProperty(t,"shape",{get:()=>{let c={...i};return Object.defineProperty(t,"shape",{value:c}),c}})}let n=Ot(()=>Oc(t));C(e._zod,"propValues",()=>{let i=t.shape,c={};for(let u in i){let d=i[u]._zod;if(d.values){c[u]??(c[u]=new Set);for(let p of d.values)c[u].add(p)}}return c});let o=mt,a=t.catchall,s;e._zod.parse=(i,c)=>{s??(s=n.value);let u=i.value;if(!o(u))return i.issues.push({expected:"object",code:"invalid_type",input:u,inst:e}),i;i.value={};let d=[],p=s.shape;for(let m of s.keys){let f=p[m],y=f._zod.optin==="optional",g=f._zod.optout==="optional",x=f._zod.run({value:u[m],issues:[]},c);if(x instanceof Promise)d.push(x.then((j)=>tn(j,i,m,u,y,g)));else tn(x,i,m,u,y,g)}if(!a)return d.length?Promise.all(d).then(()=>i):i;return Pc(d,u,i,c,n.value,e)}}),Nc=v("$ZodObjectJIT",(e,t)=>{Ig.init(e,t);let r=e._zod.parse,n=Ot(()=>Oc(t)),o=(m)=>{let f=new so(["shape","payload","ctx"]),y=n.value,g=(Z)=>{let R=Gr(Z);return`shape[${R}]._zod.run({ value: input[${R}], issues: [] }, ctx)`};f.write("const input = payload.value;");let x=Object.create(null),j=0;for(let Z of y.keys)x[Z]=`key_${j++}`;f.write("const newResult = {};");for(let Z of y.keys){let R=x[Z],P=Gr(Z),h=m[Z],N=h?._zod?.optin==="optional",V=h?._zod?.optout==="optional";if(f.write(`const ${R} = ${g(Z)};`),N&&V)f.write(`
|
|
51
|
+
if (${R}.issues.length) {
|
|
52
|
+
if (${P} in input) {
|
|
53
|
+
payload.issues = payload.issues.concat(${R}.issues.map(iss => ({
|
|
73
54
|
...iss,
|
|
74
|
-
path: iss.path ? [${
|
|
55
|
+
path: iss.path ? [${P}, ...iss.path] : [${P}]
|
|
75
56
|
})));
|
|
76
57
|
}
|
|
77
58
|
}
|
|
78
59
|
|
|
79
|
-
if (${
|
|
80
|
-
if (${
|
|
81
|
-
newResult[${
|
|
60
|
+
if (${R}.value === undefined) {
|
|
61
|
+
if (${P} in input) {
|
|
62
|
+
newResult[${P}] = undefined;
|
|
82
63
|
}
|
|
83
64
|
} else {
|
|
84
|
-
newResult[${
|
|
65
|
+
newResult[${P}] = ${R}.value;
|
|
85
66
|
}
|
|
86
67
|
|
|
87
|
-
`);else if(!
|
|
88
|
-
const ${
|
|
89
|
-
if (${
|
|
90
|
-
payload.issues = payload.issues.concat(${
|
|
68
|
+
`);else if(!N)f.write(`
|
|
69
|
+
const ${R}_present = ${P} in input;
|
|
70
|
+
if (${R}.issues.length) {
|
|
71
|
+
payload.issues = payload.issues.concat(${R}.issues.map(iss => ({
|
|
91
72
|
...iss,
|
|
92
|
-
path: iss.path ? [${
|
|
73
|
+
path: iss.path ? [${P}, ...iss.path] : [${P}]
|
|
93
74
|
})));
|
|
94
75
|
}
|
|
95
|
-
if (!${
|
|
76
|
+
if (!${R}_present && !${R}.issues.length) {
|
|
96
77
|
payload.issues.push({
|
|
97
78
|
code: "invalid_type",
|
|
98
79
|
expected: "nonoptional",
|
|
99
80
|
input: undefined,
|
|
100
|
-
path: [${
|
|
81
|
+
path: [${P}]
|
|
101
82
|
});
|
|
102
83
|
}
|
|
103
84
|
|
|
104
|
-
if (${
|
|
105
|
-
if (${
|
|
106
|
-
newResult[${
|
|
85
|
+
if (${R}_present) {
|
|
86
|
+
if (${R}.value === undefined) {
|
|
87
|
+
newResult[${P}] = undefined;
|
|
107
88
|
} else {
|
|
108
|
-
newResult[${
|
|
89
|
+
newResult[${P}] = ${R}.value;
|
|
109
90
|
}
|
|
110
91
|
}
|
|
111
92
|
|
|
112
|
-
`);else
|
|
113
|
-
if (${
|
|
114
|
-
payload.issues = payload.issues.concat(${
|
|
93
|
+
`);else f.write(`
|
|
94
|
+
if (${R}.issues.length) {
|
|
95
|
+
payload.issues = payload.issues.concat(${R}.issues.map(iss => ({
|
|
115
96
|
...iss,
|
|
116
|
-
path: iss.path ? [${
|
|
97
|
+
path: iss.path ? [${P}, ...iss.path] : [${P}]
|
|
117
98
|
})));
|
|
118
99
|
}
|
|
119
100
|
|
|
120
|
-
if (${
|
|
121
|
-
if (${
|
|
122
|
-
newResult[${
|
|
101
|
+
if (${R}.value === undefined) {
|
|
102
|
+
if (${P} in input) {
|
|
103
|
+
newResult[${P}] = undefined;
|
|
123
104
|
}
|
|
124
105
|
} else {
|
|
125
|
-
newResult[${
|
|
106
|
+
newResult[${P}] = ${R}.value;
|
|
126
107
|
}
|
|
127
108
|
|
|
128
|
-
`)}A.write("payload.value = newResult;"),A.write("return payload;");let K=A.compile();return(ne,G)=>K(C,ne,G)},x,_=Tt,S=!Bt.jitless,k=S&&ao.value,M=p.catchall,R;t._zod.parse=(C,A)=>{R??(R=y.value);let j=C.value;if(!_(j))return C.issues.push({expected:"object",code:"invalid_type",input:j,inst:t}),C;if(S&&k&&A?.async===!1&&A.jitless!==!0){if(!x)x=b(p.shape);if(C=x(C,A),!M)return C;return Uc([],j,C,A,R,t)}return m(C,A)}});function tc(t,p,m,y){for(let x of t)if(x.issues.length===0)return p.value=x.value,p;let b=t.filter((x)=>!ct(x));if(b.length===1)return p.value=b[0].value,b[0];return p.issues.push({code:"invalid_union",input:p.value,inst:m,errors:t.map((x)=>x.issues.map((_)=>Pe(_,y,je())))}),p}var bo=N("$ZodUnion",(t,p)=>{ae.init(t,p),J(t._zod,"optin",()=>p.options.some((y)=>y._zod.optin==="optional")?"optional":void 0),J(t._zod,"optout",()=>p.options.some((y)=>y._zod.optout==="optional")?"optional":void 0),J(t._zod,"values",()=>{if(p.options.every((y)=>y._zod.values))return new Set(p.options.flatMap((y)=>Array.from(y._zod.values)));return}),J(t._zod,"pattern",()=>{if(p.options.every((y)=>y._zod.pattern)){let y=p.options.map((b)=>b._zod.pattern);return new RegExp(`^(${y.map((b)=>yr(b.source)).join("|")})$`)}return});let m=p.options.length===1?p.options[0]._zod.run:null;t._zod.parse=(y,b)=>{if(m)return m(y,b);let x=!1,_=[];for(let S of p.options){let E=S._zod.run({value:y.value,issues:[]},b);if(E instanceof Promise)_.push(E),x=!0;else{if(E.issues.length===0)return E;_.push(E)}}if(!x)return tc(_,y,t,b);return Promise.all(_).then((S)=>tc(S,y,t,b))}});var Lc=N("$ZodDiscriminatedUnion",(t,p)=>{p.inclusive=!1,bo.init(t,p);let m=t._zod.parse;J(t._zod,"propValues",()=>{let b={};for(let x of p.options){let _=x._zod.propValues;if(!_||Object.keys(_).length===0)throw Error(`Invalid discriminated union option at index "${p.options.indexOf(x)}"`);for(let[S,E]of Object.entries(_)){if(!b[S])b[S]=new Set;for(let k of E)b[S].add(k)}}return b});let y=Wt(()=>{let b=p.options,x=new Map;for(let _ of b){let S=_._zod.propValues?.[p.discriminator];if(!S||S.size===0)throw Error(`Invalid discriminated union option at index "${p.options.indexOf(_)}"`);for(let E of S){if(x.has(E))throw Error(`Duplicate discriminator value "${String(E)}"`);x.set(E,_)}}return x});t._zod.parse=(b,x)=>{let _=b.value;if(!Tt(_))return b.issues.push({code:"invalid_type",expected:"object",input:_,inst:t}),b;let S=y.value.get(_?.[p.discriminator]);if(S)return S._zod.run(b,x);if(p.unionFallback||x.direction==="backward")return m(b,x);return b.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:p.discriminator,options:Array.from(y.value.keys()),input:_,path:[p.discriminator],inst:t}),b}}),Fc=N("$ZodIntersection",(t,p)=>{ae.init(t,p),t._zod.parse=(m,y)=>{let b=m.value,x=p.left._zod.run({value:b,issues:[]},y),_=p.right._zod.run({value:b,issues:[]},y);if(x instanceof Promise||_ instanceof Promise)return Promise.all([x,_]).then(([E,k])=>rc(m,E,k));return rc(m,x,_)}});function vo(t,p){if(t===p)return{valid:!0,data:t};if(t instanceof Date&&p instanceof Date&&+t===+p)return{valid:!0,data:t};if(lt(t)&<(p)){let m=Object.keys(p),y=Object.keys(t).filter((x)=>m.indexOf(x)!==-1),b={...t,...p};for(let x of y){let _=vo(t[x],p[x]);if(!_.valid)return{valid:!1,mergeErrorPath:[x,..._.mergeErrorPath]};b[x]=_.data}return{valid:!0,data:b}}if(Array.isArray(t)&&Array.isArray(p)){if(t.length!==p.length)return{valid:!1,mergeErrorPath:[]};let m=[];for(let y=0;y<t.length;y++){let b=t[y],x=p[y],_=vo(b,x);if(!_.valid)return{valid:!1,mergeErrorPath:[y,..._.mergeErrorPath]};m.push(_.data)}return{valid:!0,data:m}}return{valid:!1,mergeErrorPath:[]}}function rc(t,p,m){let y=new Map,b;for(let S of p.issues)if(S.code==="unrecognized_keys"){b??(b=S);for(let E of S.keys){if(!y.has(E))y.set(E,{});y.get(E).l=!0}}else t.issues.push(S);for(let S of m.issues)if(S.code==="unrecognized_keys")for(let E of S.keys){if(!y.has(E))y.set(E,{});y.get(E).r=!0}else t.issues.push(S);let x=[...y].filter(([,S])=>S.l&&S.r).map(([S])=>S);if(x.length&&b)t.issues.push({...b,keys:x});if(ct(t))return t;let _=vo(p.value,m.value);if(!_.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(_.mergeErrorPath)}`);return t.value=_.data,t}var Bc=N("$ZodRecord",(t,p)=>{ae.init(t,p),t._zod.parse=(m,y)=>{let b=m.value;if(!lt(b))return m.issues.push({expected:"record",code:"invalid_type",input:b,inst:t}),m;let x=[],_=p.keyType._zod.values;if(_){m.value={};let S=new Set;for(let k of _)if(typeof k==="string"||typeof k==="number"||typeof k==="symbol"){S.add(typeof k==="number"?k.toString():k);let M=p.keyType._zod.run({value:k,issues:[]},y);if(M instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(M.issues.length){m.issues.push({code:"invalid_key",origin:"record",issues:M.issues.map((A)=>Pe(A,y,je())),input:k,path:[k],inst:t});continue}let R=M.value,C=p.valueType._zod.run({value:b[k],issues:[]},y);if(C instanceof Promise)x.push(C.then((A)=>{if(A.issues.length)m.issues.push(...Ye(k,A.issues));m.value[R]=A.value}));else{if(C.issues.length)m.issues.push(...Ye(k,C.issues));m.value[R]=C.value}}let E;for(let k in b)if(!S.has(k))E=E??[],E.push(k);if(E&&E.length>0)m.issues.push({code:"unrecognized_keys",input:b,inst:t,keys:E})}else{m.value={};for(let S of Reflect.ownKeys(b)){if(S==="__proto__")continue;if(!Object.prototype.propertyIsEnumerable.call(b,S))continue;let E=p.keyType._zod.run({value:S,issues:[]},y);if(E instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(typeof S==="string"&&ln.test(S)&&E.issues.length){let R=p.keyType._zod.run({value:Number(S),issues:[]},y);if(R instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(R.issues.length===0)E=R}if(E.issues.length){if(p.mode==="loose")m.value[S]=b[S];else m.issues.push({code:"invalid_key",origin:"record",issues:E.issues.map((R)=>Pe(R,y,je())),input:S,path:[S],inst:t});continue}let M=p.valueType._zod.run({value:b[S],issues:[]},y);if(M instanceof Promise)x.push(M.then((R)=>{if(R.issues.length)m.issues.push(...Ye(S,R.issues));m.value[E.value]=R.value}));else{if(M.issues.length)m.issues.push(...Ye(S,M.issues));m.value[E.value]=M.value}}}if(x.length)return Promise.all(x).then(()=>m);return m}});var qc=N("$ZodEnum",(t,p)=>{ae.init(t,p);let m=gr(p.entries),y=new Set(m);t._zod.values=y,t._zod.pattern=new RegExp(`^(${m.filter((b)=>so.has(typeof b)).map((b)=>typeof b==="string"?He(b):b.toString()).join("|")})$`),t._zod.parse=(b,x)=>{let _=b.value;if(y.has(_))return b;return b.issues.push({code:"invalid_value",values:m,input:_,inst:t}),b}}),Wc=N("$ZodLiteral",(t,p)=>{if(ae.init(t,p),p.values.length===0)throw Error("Cannot create literal schema with no valid values");let m=new Set(p.values);t._zod.values=m,t._zod.pattern=new RegExp(`^(${p.values.map((y)=>typeof y==="string"?He(y):y?He(y.toString()):String(y)).join("|")})$`),t._zod.parse=(y,b)=>{let x=y.value;if(m.has(x))return y;return y.issues.push({code:"invalid_value",values:p.values,input:x,inst:t}),y}});var Vc=N("$ZodTransform",(t,p)=>{ae.init(t,p),t._zod.optin="optional",t._zod.parse=(m,y)=>{if(y.direction==="backward")throw new mr(t.constructor.name);let b=p.transform(m.value,m);if(y.async)return(b instanceof Promise?b:Promise.resolve(b)).then((_)=>(m.value=_,m.fallback=!0,m));if(b instanceof Promise)throw new Je;return m.value=b,m.fallback=!0,m}});function nc(t,p){if(p===void 0&&(t.issues.length||t.fallback))return{issues:[],value:void 0};return t}var wo=N("$ZodOptional",(t,p)=>{ae.init(t,p),t._zod.optin="optional",t._zod.optout="optional",J(t._zod,"values",()=>p.innerType._zod.values?new Set([...p.innerType._zod.values,void 0]):void 0),J(t._zod,"pattern",()=>{let m=p.innerType._zod.pattern;return m?new RegExp(`^(${yr(m.source)})?$`):void 0}),t._zod.parse=(m,y)=>{if(p.innerType._zod.optin==="optional"){let b=m.value,x=p.innerType._zod.run(m,y);if(x instanceof Promise)return x.then((_)=>nc(_,b));return nc(x,b)}if(m.value===void 0)return m;return p.innerType._zod.run(m,y)}}),Gc=N("$ZodExactOptional",(t,p)=>{wo.init(t,p),J(t._zod,"values",()=>p.innerType._zod.values),J(t._zod,"pattern",()=>p.innerType._zod.pattern),t._zod.parse=(m,y)=>p.innerType._zod.run(m,y)}),Jc=N("$ZodNullable",(t,p)=>{ae.init(t,p),J(t._zod,"optin",()=>p.innerType._zod.optin),J(t._zod,"optout",()=>p.innerType._zod.optout),J(t._zod,"pattern",()=>{let m=p.innerType._zod.pattern;return m?new RegExp(`^(${yr(m.source)}|null)$`):void 0}),J(t._zod,"values",()=>p.innerType._zod.values?new Set([...p.innerType._zod.values,null]):void 0),t._zod.parse=(m,y)=>{if(m.value===null)return m;return p.innerType._zod.run(m,y)}}),Kc=N("$ZodDefault",(t,p)=>{ae.init(t,p),t._zod.optin="optional",J(t._zod,"values",()=>p.innerType._zod.values),t._zod.parse=(m,y)=>{if(y.direction==="backward")return p.innerType._zod.run(m,y);if(m.value===void 0)return m.value=p.defaultValue,m;let b=p.innerType._zod.run(m,y);if(b instanceof Promise)return b.then((x)=>oc(x,p));return oc(b,p)}});function oc(t,p){if(t.value===void 0)t.value=p.defaultValue;return t}var Hc=N("$ZodPrefault",(t,p)=>{ae.init(t,p),t._zod.optin="optional",J(t._zod,"values",()=>p.innerType._zod.values),t._zod.parse=(m,y)=>{if(y.direction==="backward")return p.innerType._zod.run(m,y);if(m.value===void 0)m.value=p.defaultValue;return p.innerType._zod.run(m,y)}}),Yc=N("$ZodNonOptional",(t,p)=>{ae.init(t,p),J(t._zod,"values",()=>{let m=p.innerType._zod.values;return m?new Set([...m].filter((y)=>y!==void 0)):void 0}),t._zod.parse=(m,y)=>{let b=p.innerType._zod.run(m,y);if(b instanceof Promise)return b.then((x)=>ac(x,t));return ac(b,t)}});function ac(t,p){if(!t.issues.length&&t.value===void 0)t.issues.push({code:"invalid_type",expected:"nonoptional",input:t.value,inst:p});return t}var Xc=N("$ZodCatch",(t,p)=>{ae.init(t,p),t._zod.optin="optional",J(t._zod,"optout",()=>p.innerType._zod.optout),J(t._zod,"values",()=>p.innerType._zod.values),t._zod.parse=(m,y)=>{if(y.direction==="backward")return p.innerType._zod.run(m,y);let b=p.innerType._zod.run(m,y);if(b instanceof Promise)return b.then((x)=>{if(m.value=x.value,x.issues.length)m.value=p.catchValue({...m,error:{issues:x.issues.map((_)=>Pe(_,y,je()))},input:m.value}),m.issues=[],m.fallback=!0;return m});if(m.value=b.value,b.issues.length)m.value=p.catchValue({...m,error:{issues:b.issues.map((x)=>Pe(x,y,je()))},input:m.value}),m.issues=[],m.fallback=!0;return m}});var Qc=N("$ZodPipe",(t,p)=>{ae.init(t,p),J(t._zod,"values",()=>p.in._zod.values),J(t._zod,"optin",()=>p.in._zod.optin),J(t._zod,"optout",()=>p.out._zod.optout),J(t._zod,"propValues",()=>p.in._zod.propValues),t._zod.parse=(m,y)=>{if(y.direction==="backward"){let x=p.out._zod.run(m,y);if(x instanceof Promise)return x.then((_)=>un(_,p.in,y));return un(x,p.in,y)}let b=p.in._zod.run(m,y);if(b instanceof Promise)return b.then((x)=>un(x,p.out,y));return un(b,p.out,y)}});function un(t,p,m){if(t.issues.length)return t.aborted=!0,t;return p._zod.run({value:t.value,issues:t.issues,fallback:t.fallback},m)}var eu=N("$ZodReadonly",(t,p)=>{ae.init(t,p),J(t._zod,"propValues",()=>p.innerType._zod.propValues),J(t._zod,"values",()=>p.innerType._zod.values),J(t._zod,"optin",()=>p.innerType?._zod?.optin),J(t._zod,"optout",()=>p.innerType?._zod?.optout),t._zod.parse=(m,y)=>{if(y.direction==="backward")return p.innerType._zod.run(m,y);let b=p.innerType._zod.run(m,y);if(b instanceof Promise)return b.then(sc);return sc(b)}});function sc(t){return t.value=Object.freeze(t.value),t}var tu=N("$ZodLazy",(t,p)=>{ae.init(t,p),J(t._zod,"innerType",()=>{let m=p;if(!m._cachedInner)m._cachedInner=p.getter();return m._cachedInner}),J(t._zod,"pattern",()=>t._zod.innerType?._zod?.pattern),J(t._zod,"propValues",()=>t._zod.innerType?._zod?.propValues),J(t._zod,"optin",()=>t._zod.innerType?._zod?.optin??void 0),J(t._zod,"optout",()=>t._zod.innerType?._zod?.optout??void 0),t._zod.parse=(m,y)=>t._zod.innerType._zod.run(m,y)}),ru=N("$ZodCustom",(t,p)=>{me.init(t,p),ae.init(t,p),t._zod.parse=(m,y)=>m,t._zod.check=(m)=>{let y=m.value,b=p.fn(y);if(b instanceof Promise)return b.then((x)=>ic(x,m,y,t));ic(b,m,y,t);return}});function ic(t,p,m,y){if(!t){let b={code:"custom",input:m,inst:y,path:[...y._zod.def.path??[]],continue:!y._zod.def.abort};if(y._zod.def.params)b.params=y._zod.def.params;p.issues.push(Vt(b))}}var nu,jI=Symbol("ZodOutput"),zI=Symbol("ZodInput");class ou{constructor(){this._map=new WeakMap,this._idmap=new Map}add(t,...p){let m=p[0];if(this._map.set(t,m),m&&typeof m==="object"&&"id"in m)this._idmap.set(m.id,t);return this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(t){let p=this._map.get(t);if(p&&typeof p==="object"&&"id"in p)this._idmap.delete(p.id);return this._map.delete(t),this}get(t){let p=t._zod.parent;if(p){let m={...this.get(p)??{}};delete m.id;let y={...m,...this._map.get(t)};return Object.keys(y).length?y:void 0}return this._map.get(t)}has(t){return this._map.has(t)}}function $g(){return new ou}(nu=globalThis).__zod_globalRegistry??(nu.__zod_globalRegistry=$g());var Et=globalThis.__zod_globalRegistry;function au(t,p){return new t({type:"string",...q(p)})}function su(t,p){return new t({type:"string",format:"email",check:"string_format",abort:!1,...q(p)})}function xo(t,p){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...q(p)})}function iu(t,p){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...q(p)})}function lu(t,p){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...q(p)})}function cu(t,p){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...q(p)})}function uu(t,p){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...q(p)})}function du(t,p){return new t({type:"string",format:"url",check:"string_format",abort:!1,...q(p)})}function pu(t,p){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...q(p)})}function fu(t,p){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...q(p)})}function mu(t,p){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...q(p)})}function hu(t,p){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...q(p)})}function gu(t,p){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...q(p)})}function vu(t,p){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...q(p)})}function yu(t,p){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...q(p)})}function bu(t,p){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...q(p)})}function wu(t,p){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...q(p)})}function xu(t,p){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...q(p)})}function _u(t,p){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...q(p)})}function Su(t,p){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...q(p)})}function Iu(t,p){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...q(p)})}function Tu(t,p){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...q(p)})}function Eu(t,p){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...q(p)})}function ku(t,p){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...q(p)})}function $u(t,p){return new t({type:"string",format:"date",check:"string_format",...q(p)})}function Mu(t,p){return new t({type:"string",format:"time",check:"string_format",precision:null,...q(p)})}function Ru(t,p){return new t({type:"string",format:"duration",check:"string_format",...q(p)})}function Cu(t,p){return new t({type:"number",checks:[],...q(p)})}function Au(t,p){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...q(p)})}function Ou(t,p){return new t({type:"boolean",...q(p)})}function Pu(t,p){return new t({type:"null",...q(p)})}function Nu(t){return new t({type:"unknown"})}function ju(t,p){return new t({type:"never",...q(p)})}function fn(t,p){return new mo({check:"less_than",...q(p),value:t,inclusive:!1})}function Sr(t,p){return new mo({check:"less_than",...q(p),value:t,inclusive:!0})}function mn(t,p){return new ho({check:"greater_than",...q(p),value:t,inclusive:!1})}function Ir(t,p){return new ho({check:"greater_than",...q(p),value:t,inclusive:!0})}function hn(t,p){return new Zl({check:"multiple_of",...q(p),value:t})}function gn(t,p){return new Fl({check:"max_length",...q(p),maximum:t})}function Gt(t,p){return new Bl({check:"min_length",...q(p),minimum:t})}function vn(t,p){return new ql({check:"length_equals",...q(p),length:t})}function _o(t,p){return new Wl({check:"string_format",format:"regex",...q(p),pattern:t})}function So(t){return new Vl({check:"string_format",format:"lowercase",...q(t)})}function Io(t){return new Gl({check:"string_format",format:"uppercase",...q(t)})}function To(t,p){return new Jl({check:"string_format",format:"includes",...q(p),includes:t})}function Eo(t,p){return new Kl({check:"string_format",format:"starts_with",...q(p),prefix:t})}function ko(t,p){return new Hl({check:"string_format",format:"ends_with",...q(p),suffix:t})}function ut(t){return new Yl({check:"overwrite",tx:t})}function $o(t){return ut((p)=>p.normalize(t))}function Mo(){return ut((t)=>t.trim())}function Ro(){return ut((t)=>t.toLowerCase())}function Co(){return ut((t)=>t.toUpperCase())}function Ao(){return ut((t)=>oo(t))}function zu(t,p,m){return new t({type:"array",element:p,...q(m)})}function Du(t,p,m){let y=q(m);return y.abort??(y.abort=!0),new t({type:"custom",check:"custom",fn:p,...y})}function Uu(t,p,m){return new t({type:"custom",check:"custom",fn:p,...q(m)})}function Zu(t,p){let m=Mg((y)=>(y.addIssue=(b)=>{if(typeof b==="string")y.issues.push(Vt(b,y.value,m._zod.def));else{let x=b;if(x.fatal)x.continue=!1;x.code??(x.code="custom"),x.input??(x.input=y.value),x.inst??(x.inst=m),x.continue??(x.continue=!m._zod.def.abort),y.issues.push(Vt(x))}},t(y.value,y)),p);return m}function Mg(t,p){let m=new me({check:"custom",...q(p)});return m._zod.check=t,m}function Er(t){let p=t?.target??"draft-2020-12";if(p==="draft-4")p="draft-04";if(p==="draft-7")p="draft-07";return{processors:t.processors??{},metadataRegistry:t?.metadata??Et,target:p,unrepresentable:t?.unrepresentable??"throw",override:t?.override??(()=>{}),io:t?.io??"output",counter:0,seen:new Map,cycles:t?.cycles??"ref",reused:t?.reused??"inline",external:t?.external??void 0}}function oe(t,p,m={path:[],schemaPath:[]}){var y;let b=t._zod.def,x=p.seen.get(t);if(x){if(x.count++,m.schemaPath.includes(t))x.cycle=m.path;return x.schema}let _={schema:{},count:1,cycle:void 0,path:m.path};p.seen.set(t,_);let S=t._zod.toJSONSchema?.();if(S)_.schema=S;else{let M={...m,schemaPath:[...m.schemaPath,t],path:m.path};if(t._zod.processJSONSchema)t._zod.processJSONSchema(p,_.schema,M);else{let C=_.schema,A=p.processors[b.type];if(!A)throw Error(`[toJSONSchema]: Non-representable type encountered: ${b.type}`);A(t,p,C,M)}let R=t._zod.parent;if(R){if(!_.ref)_.ref=R;oe(R,p,M),p.seen.get(R).isParent=!0}}let E=p.metadataRegistry.get(t);if(E)Object.assign(_.schema,E);if(p.io==="input"&&ye(t))delete _.schema.examples,delete _.schema.default;if(p.io==="input"&&"_prefault"in _.schema)(y=_.schema).default??(y.default=_.schema._prefault);return delete _.schema._prefault,p.seen.get(t).schema}function kr(t,p){let m=t.seen.get(p);if(!m)throw Error("Unprocessed schema. This is a bug in Zod.");let y=new Map;for(let _ of t.seen.entries()){let S=t.metadataRegistry.get(_[0])?.id;if(S){let E=y.get(S);if(E&&E!==_[0])throw Error(`Duplicate schema id "${S}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);y.set(S,_[0])}}let b=(_)=>{let S=t.target==="draft-2020-12"?"$defs":"definitions";if(t.external){let R=t.external.registry.get(_[0])?.id,C=t.external.uri??((j)=>j);if(R)return{ref:C(R)};let A=_[1].defId??_[1].schema.id??`schema${t.counter++}`;return _[1].defId=A,{defId:A,ref:`${C("__shared")}#/${S}/${A}`}}if(_[1]===m)return{ref:"#"};let k=`${"#"}/${S}/`,M=_[1].schema.id??`__schema${t.counter++}`;return{defId:M,ref:k+M}},x=(_)=>{if(_[1].schema.$ref)return;let S=_[1],{ref:E,defId:k}=b(_);if(S.def={...S.schema},k)S.defId=k;let M=S.schema;for(let R in M)delete M[R];M.$ref=E};if(t.cycles==="throw")for(let _ of t.seen.entries()){let S=_[1];if(S.cycle)throw Error(`Cycle detected: #/${S.cycle?.join("/")}/<root>
|
|
109
|
+
`)}f.write("payload.value = newResult;"),f.write("return payload;");let A=f.compile();return(Z,R)=>A(m,Z,R)},a,s=mt,i=!Ct.jitless,u=i&&Hn.value,d=t.catchall,p;e._zod.parse=(m,f)=>{p??(p=n.value);let y=m.value;if(!s(y))return m.issues.push({expected:"object",code:"invalid_type",input:y,inst:e}),m;if(i&&u&&f?.async===!1&&f.jitless!==!0){if(!a)a=o(t.shape);if(m=a(m,f),!d)return m;return Pc([],y,m,f,p,e)}return r(m,f)}});function Hl(e,t,r,n){for(let a of e)if(a.issues.length===0)return t.value=a.value,t;let o=e.filter((a)=>!He(a));if(o.length===1)return t.value=o[0].value,o[0];return t.issues.push({code:"invalid_union",input:t.value,inst:r,errors:e.map((a)=>a.issues.map((s)=>be(s,n,_e())))}),t}var co=v("$ZodUnion",(e,t)=>{F.init(e,t),C(e._zod,"optin",()=>t.options.some((n)=>n._zod.optin==="optional")?"optional":void 0),C(e._zod,"optout",()=>t.options.some((n)=>n._zod.optout==="optional")?"optional":void 0),C(e._zod,"values",()=>{if(t.options.every((n)=>n._zod.values))return new Set(t.options.flatMap((n)=>Array.from(n._zod.values)));return}),C(e._zod,"pattern",()=>{if(t.options.every((n)=>n._zod.pattern)){let n=t.options.map((o)=>o._zod.pattern);return new RegExp(`^(${n.map((o)=>ir(o.source)).join("|")})$`)}return});let r=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(n,o)=>{if(r)return r(n,o);let a=!1,s=[];for(let i of t.options){let c=i._zod.run({value:n.value,issues:[]},o);if(c instanceof Promise)s.push(c),a=!0;else{if(c.issues.length===0)return c;s.push(c)}}if(!a)return Hl(s,n,e,o);return Promise.all(s).then((i)=>Hl(i,n,e,o))}});var zc=v("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,co.init(e,t);let r=e._zod.parse;C(e._zod,"propValues",()=>{let o={};for(let a of t.options){let s=a._zod.propValues;if(!s||Object.keys(s).length===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(a)}"`);for(let[i,c]of Object.entries(s)){if(!o[i])o[i]=new Set;for(let u of c)o[i].add(u)}}return o});let n=Ot(()=>{let o=t.options,a=new Map;for(let s of o){let i=s._zod.propValues?.[t.discriminator];if(!i||i.size===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(s)}"`);for(let c of i){if(a.has(c))throw Error(`Duplicate discriminator value "${String(c)}"`);a.set(c,s)}}return a});e._zod.parse=(o,a)=>{let s=o.value;if(!mt(s))return o.issues.push({code:"invalid_type",expected:"object",input:s,inst:e}),o;let i=n.value.get(s?.[t.discriminator]);if(i)return i._zod.run(o,a);if(t.unionFallback||a.direction==="backward")return r(o,a);return o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:t.discriminator,options:Array.from(n.value.keys()),input:s,path:[t.discriminator],inst:e}),o}}),jc=v("$ZodIntersection",(e,t)=>{F.init(e,t),e._zod.parse=(r,n)=>{let o=r.value,a=t.left._zod.run({value:o,issues:[]},n),s=t.right._zod.run({value:o,issues:[]},n);if(a instanceof Promise||s instanceof Promise)return Promise.all([a,s]).then(([c,u])=>Yl(r,c,u));return Yl(r,a,s)}});function io(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e===+t)return{valid:!0,data:e};if(Ke(e)&&Ke(t)){let r=Object.keys(t),n=Object.keys(e).filter((a)=>r.indexOf(a)!==-1),o={...e,...t};for(let a of n){let s=io(e[a],t[a]);if(!s.valid)return{valid:!1,mergeErrorPath:[a,...s.mergeErrorPath]};o[a]=s.data}return{valid:!0,data:o}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let n=0;n<e.length;n++){let o=e[n],a=t[n],s=io(o,a);if(!s.valid)return{valid:!1,mergeErrorPath:[n,...s.mergeErrorPath]};r.push(s.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function Yl(e,t,r){let n=new Map,o;for(let i of t.issues)if(i.code==="unrecognized_keys"){o??(o=i);for(let c of i.keys){if(!n.has(c))n.set(c,{});n.get(c).l=!0}}else e.issues.push(i);for(let i of r.issues)if(i.code==="unrecognized_keys")for(let c of i.keys){if(!n.has(c))n.set(c,{});n.get(c).r=!0}else e.issues.push(i);let a=[...n].filter(([,i])=>i.l&&i.r).map(([i])=>i);if(a.length&&o)e.issues.push({...o,keys:a});if(He(e))return e;let s=io(t.value,r.value);if(!s.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(s.mergeErrorPath)}`);return e.value=s.data,e}var Dc=v("$ZodRecord",(e,t)=>{F.init(e,t),e._zod.parse=(r,n)=>{let o=r.value;if(!Ke(o))return r.issues.push({expected:"record",code:"invalid_type",input:o,inst:e}),r;let a=[],s=t.keyType._zod.values;if(s){r.value={};let i=new Set;for(let u of s)if(typeof u==="string"||typeof u==="number"||typeof u==="symbol"){i.add(typeof u==="number"?u.toString():u);let d=t.keyType._zod.run({value:u,issues:[]},n);if(d instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(d.issues.length){r.issues.push({code:"invalid_key",origin:"record",issues:d.issues.map((f)=>be(f,n,_e())),input:u,path:[u],inst:e});continue}let p=d.value,m=t.valueType._zod.run({value:o[u],issues:[]},n);if(m instanceof Promise)a.push(m.then((f)=>{if(f.issues.length)r.issues.push(...Ue(u,f.issues));r.value[p]=f.value}));else{if(m.issues.length)r.issues.push(...Ue(u,m.issues));r.value[p]=m.value}}let c;for(let u in o)if(!i.has(u))c=c??[],c.push(u);if(c&&c.length>0)r.issues.push({code:"unrecognized_keys",input:o,inst:e,keys:c})}else{r.value={};for(let i of Reflect.ownKeys(o)){if(i==="__proto__")continue;if(!Object.prototype.propertyIsEnumerable.call(o,i))continue;let c=t.keyType._zod.run({value:i,issues:[]},n);if(c instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(typeof i==="string"&&Xr.test(i)&&c.issues.length){let p=t.keyType._zod.run({value:Number(i),issues:[]},n);if(p instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(p.issues.length===0)c=p}if(c.issues.length){if(t.mode==="loose")r.value[i]=o[i];else r.issues.push({code:"invalid_key",origin:"record",issues:c.issues.map((p)=>be(p,n,_e())),input:i,path:[i],inst:e});continue}let d=t.valueType._zod.run({value:o[i],issues:[]},n);if(d instanceof Promise)a.push(d.then((p)=>{if(p.issues.length)r.issues.push(...Ue(i,p.issues));r.value[c.value]=p.value}));else{if(d.issues.length)r.issues.push(...Ue(i,d.issues));r.value[c.value]=d.value}}}if(a.length)return Promise.all(a).then(()=>r);return r}});var Uc=v("$ZodEnum",(e,t)=>{F.init(e,t);let r=ar(t.entries),n=new Set(r);e._zod.values=n,e._zod.pattern=new RegExp(`^(${r.filter((o)=>Yn.has(typeof o)).map((o)=>typeof o==="string"?De(o):o.toString()).join("|")})$`),e._zod.parse=(o,a)=>{let s=o.value;if(n.has(s))return o;return o.issues.push({code:"invalid_value",values:r,input:s,inst:e}),o}}),Zc=v("$ZodLiteral",(e,t)=>{if(F.init(e,t),t.values.length===0)throw Error("Cannot create literal schema with no valid values");let r=new Set(t.values);e._zod.values=r,e._zod.pattern=new RegExp(`^(${t.values.map((n)=>typeof n==="string"?De(n):n?De(n.toString()):String(n)).join("|")})$`),e._zod.parse=(n,o)=>{let a=n.value;if(r.has(a))return n;return n.issues.push({code:"invalid_value",values:t.values,input:a,inst:e}),n}});var Lc=v("$ZodTransform",(e,t)=>{F.init(e,t),e._zod.optin="optional",e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new nr(e.constructor.name);let o=t.transform(r.value,r);if(n.async)return(o instanceof Promise?o:Promise.resolve(o)).then((s)=>(r.value=s,r.fallback=!0,r));if(o instanceof Promise)throw new ze;return r.value=o,r.fallback=!0,r}});function Xl(e,t){if(t===void 0&&(e.issues.length||e.fallback))return{issues:[],value:void 0};return e}var uo=v("$ZodOptional",(e,t)=>{F.init(e,t),e._zod.optin="optional",e._zod.optout="optional",C(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),C(e._zod,"pattern",()=>{let r=t.innerType._zod.pattern;return r?new RegExp(`^(${ir(r.source)})?$`):void 0}),e._zod.parse=(r,n)=>{if(t.innerType._zod.optin==="optional"){let o=r.value,a=t.innerType._zod.run(r,n);if(a instanceof Promise)return a.then((s)=>Xl(s,o));return Xl(a,o)}if(r.value===void 0)return r;return t.innerType._zod.run(r,n)}}),Fc=v("$ZodExactOptional",(e,t)=>{uo.init(e,t),C(e._zod,"values",()=>t.innerType._zod.values),C(e._zod,"pattern",()=>t.innerType._zod.pattern),e._zod.parse=(r,n)=>t.innerType._zod.run(r,n)}),Bc=v("$ZodNullable",(e,t)=>{F.init(e,t),C(e._zod,"optin",()=>t.innerType._zod.optin),C(e._zod,"optout",()=>t.innerType._zod.optout),C(e._zod,"pattern",()=>{let r=t.innerType._zod.pattern;return r?new RegExp(`^(${ir(r.source)}|null)$`):void 0}),C(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(r,n)=>{if(r.value===null)return r;return t.innerType._zod.run(r,n)}}),qc=v("$ZodDefault",(e,t)=>{F.init(e,t),e._zod.optin="optional",C(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);if(r.value===void 0)return r.value=t.defaultValue,r;let o=t.innerType._zod.run(r,n);if(o instanceof Promise)return o.then((a)=>Ql(a,t));return Ql(o,t)}});function Ql(e,t){if(e.value===void 0)e.value=t.defaultValue;return e}var Wc=v("$ZodPrefault",(e,t)=>{F.init(e,t),e._zod.optin="optional",C(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);if(r.value===void 0)r.value=t.defaultValue;return t.innerType._zod.run(r,n)}}),Vc=v("$ZodNonOptional",(e,t)=>{F.init(e,t),C(e._zod,"values",()=>{let r=t.innerType._zod.values;return r?new Set([...r].filter((n)=>n!==void 0)):void 0}),e._zod.parse=(r,n)=>{let o=t.innerType._zod.run(r,n);if(o instanceof Promise)return o.then((a)=>ec(a,e));return ec(o,e)}});function ec(e,t){if(!e.issues.length&&e.value===void 0)e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t});return e}var Gc=v("$ZodCatch",(e,t)=>{F.init(e,t),e._zod.optin="optional",C(e._zod,"optout",()=>t.innerType._zod.optout),C(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);let o=t.innerType._zod.run(r,n);if(o instanceof Promise)return o.then((a)=>{if(r.value=a.value,a.issues.length)r.value=t.catchValue({...r,error:{issues:a.issues.map((s)=>be(s,n,_e()))},input:r.value}),r.issues=[],r.fallback=!0;return r});if(r.value=o.value,o.issues.length)r.value=t.catchValue({...r,error:{issues:o.issues.map((a)=>be(a,n,_e()))},input:r.value}),r.issues=[],r.fallback=!0;return r}});var Jc=v("$ZodPipe",(e,t)=>{F.init(e,t),C(e._zod,"values",()=>t.in._zod.values),C(e._zod,"optin",()=>t.in._zod.optin),C(e._zod,"optout",()=>t.out._zod.optout),C(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(r,n)=>{if(n.direction==="backward"){let a=t.out._zod.run(r,n);if(a instanceof Promise)return a.then((s)=>en(s,t.in,n));return en(a,t.in,n)}let o=t.in._zod.run(r,n);if(o instanceof Promise)return o.then((a)=>en(a,t.out,n));return en(o,t.out,n)}});function en(e,t,r){if(e.issues.length)return e.aborted=!0,e;return t._zod.run({value:e.value,issues:e.issues,fallback:e.fallback},r)}var Kc=v("$ZodReadonly",(e,t)=>{F.init(e,t),C(e._zod,"propValues",()=>t.innerType._zod.propValues),C(e._zod,"values",()=>t.innerType._zod.values),C(e._zod,"optin",()=>t.innerType?._zod?.optin),C(e._zod,"optout",()=>t.innerType?._zod?.optout),e._zod.parse=(r,n)=>{if(n.direction==="backward")return t.innerType._zod.run(r,n);let o=t.innerType._zod.run(r,n);if(o instanceof Promise)return o.then(tc);return tc(o)}});function tc(e){return e.value=Object.freeze(e.value),e}var Hc=v("$ZodLazy",(e,t)=>{F.init(e,t),C(e._zod,"innerType",()=>{let r=t;if(!r._cachedInner)r._cachedInner=t.getter();return r._cachedInner}),C(e._zod,"pattern",()=>e._zod.innerType?._zod?.pattern),C(e._zod,"propValues",()=>e._zod.innerType?._zod?.propValues),C(e._zod,"optin",()=>e._zod.innerType?._zod?.optin??void 0),C(e._zod,"optout",()=>e._zod.innerType?._zod?.optout??void 0),e._zod.parse=(r,n)=>e._zod.innerType._zod.run(r,n)}),Yc=v("$ZodCustom",(e,t)=>{X.init(e,t),F.init(e,t),e._zod.parse=(r,n)=>r,e._zod.check=(r)=>{let n=r.value,o=t.fn(n);if(o instanceof Promise)return o.then((a)=>rc(a,r,n,e));rc(o,r,n,e);return}});function rc(e,t,r,n){if(!e){let o={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};if(n._zod.def.params)o.params=n._zod.def.params;t.issues.push(Pt(o))}}var Xc,OI=Symbol("ZodOutput"),PI=Symbol("ZodInput");class Qc{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let r=t[0];if(this._map.set(e,r),r&&typeof r==="object"&&"id"in r)this._idmap.set(r.id,e);return this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let t=this._map.get(e);if(t&&typeof t==="object"&&"id"in t)this._idmap.delete(t.id);return this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let r={...this.get(t)??{}};delete r.id;let n={...r,...this._map.get(e)};return Object.keys(n).length?n:void 0}return this._map.get(e)}has(e){return this._map.has(e)}}function Tg(){return new Qc}(Xc=globalThis).__zod_globalRegistry??(Xc.__zod_globalRegistry=Tg());var ht=globalThis.__zod_globalRegistry;function eu(e,t){return new e({type:"string",...E(t)})}function tu(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...E(t)})}function po(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...E(t)})}function ru(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...E(t)})}function nu(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...E(t)})}function ou(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...E(t)})}function au(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...E(t)})}function su(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...E(t)})}function iu(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...E(t)})}function lu(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...E(t)})}function cu(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...E(t)})}function uu(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...E(t)})}function du(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...E(t)})}function pu(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...E(t)})}function fu(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...E(t)})}function mu(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...E(t)})}function hu(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...E(t)})}function gu(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...E(t)})}function vu(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...E(t)})}function yu(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...E(t)})}function wu(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...E(t)})}function bu(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...E(t)})}function xu(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...E(t)})}function _u(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...E(t)})}function Su(e,t){return new e({type:"string",format:"date",check:"string_format",...E(t)})}function Iu(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...E(t)})}function Tu(e,t){return new e({type:"string",format:"duration",check:"string_format",...E(t)})}function Eu(e,t){return new e({type:"number",checks:[],...E(t)})}function ku(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...E(t)})}function $u(e,t){return new e({type:"boolean",...E(t)})}function Mu(e,t){return new e({type:"null",...E(t)})}function Ru(e){return new e({type:"unknown"})}function Cu(e,t){return new e({type:"never",...E(t)})}function nn(e,t){return new oo({check:"less_than",...E(t),value:e,inclusive:!1})}function pr(e,t){return new oo({check:"less_than",...E(t),value:e,inclusive:!0})}function on(e,t){return new ao({check:"greater_than",...E(t),value:e,inclusive:!1})}function fr(e,t){return new ao({check:"greater_than",...E(t),value:e,inclusive:!0})}function an(e,t){return new Nl({check:"multiple_of",...E(t),value:e})}function sn(e,t){return new jl({check:"max_length",...E(t),maximum:e})}function Nt(e,t){return new Dl({check:"min_length",...E(t),minimum:e})}function ln(e,t){return new Ul({check:"length_equals",...E(t),length:e})}function fo(e,t){return new Zl({check:"string_format",format:"regex",...E(t),pattern:e})}function mo(e){return new Ll({check:"string_format",format:"lowercase",...E(e)})}function ho(e){return new Fl({check:"string_format",format:"uppercase",...E(e)})}function go(e,t){return new Bl({check:"string_format",format:"includes",...E(t),includes:e})}function vo(e,t){return new ql({check:"string_format",format:"starts_with",...E(t),prefix:e})}function yo(e,t){return new Wl({check:"string_format",format:"ends_with",...E(t),suffix:e})}function Ye(e){return new Vl({check:"overwrite",tx:e})}function wo(e){return Ye((t)=>t.normalize(e))}function bo(){return Ye((e)=>e.trim())}function xo(){return Ye((e)=>e.toLowerCase())}function _o(){return Ye((e)=>e.toUpperCase())}function So(){return Ye((e)=>Kn(e))}function Au(e,t,r){return new e({type:"array",element:t,...E(r)})}function Ou(e,t,r){let n=E(r);return n.abort??(n.abort=!0),new e({type:"custom",check:"custom",fn:t,...n})}function Pu(e,t,r){return new e({type:"custom",check:"custom",fn:t,...E(r)})}function Nu(e,t){let r=Eg((n)=>(n.addIssue=(o)=>{if(typeof o==="string")n.issues.push(Pt(o,n.value,r._zod.def));else{let a=o;if(a.fatal)a.continue=!1;a.code??(a.code="custom"),a.input??(a.input=n.value),a.inst??(a.inst=r),a.continue??(a.continue=!r._zod.def.abort),n.issues.push(Pt(a))}},e(n.value,n)),t);return r}function Eg(e,t){let r=new X({check:"custom",...E(t)});return r._zod.check=e,r}function hr(e){let t=e?.target??"draft-2020-12";if(t==="draft-4")t="draft-04";if(t==="draft-7")t="draft-07";return{processors:e.processors??{},metadataRegistry:e?.metadata??ht,target:t,unrepresentable:e?.unrepresentable??"throw",override:e?.override??(()=>{}),io:e?.io??"output",counter:0,seen:new Map,cycles:e?.cycles??"ref",reused:e?.reused??"inline",external:e?.external??void 0}}function L(e,t,r={path:[],schemaPath:[]}){var n;let o=e._zod.def,a=t.seen.get(e);if(a){if(a.count++,r.schemaPath.includes(e))a.cycle=r.path;return a.schema}let s={schema:{},count:1,cycle:void 0,path:r.path};t.seen.set(e,s);let i=e._zod.toJSONSchema?.();if(i)s.schema=i;else{let d={...r,schemaPath:[...r.schemaPath,e],path:r.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,s.schema,d);else{let m=s.schema,f=t.processors[o.type];if(!f)throw Error(`[toJSONSchema]: Non-representable type encountered: ${o.type}`);f(e,t,m,d)}let p=e._zod.parent;if(p){if(!s.ref)s.ref=p;L(p,t,d),t.seen.get(p).isParent=!0}}let c=t.metadataRegistry.get(e);if(c)Object.assign(s.schema,c);if(t.io==="input"&&ne(e))delete s.schema.examples,delete s.schema.default;if(t.io==="input"&&"_prefault"in s.schema)(n=s.schema).default??(n.default=s.schema._prefault);return delete s.schema._prefault,t.seen.get(e).schema}function gr(e,t){let r=e.seen.get(t);if(!r)throw Error("Unprocessed schema. This is a bug in Zod.");let n=new Map;for(let s of e.seen.entries()){let i=e.metadataRegistry.get(s[0])?.id;if(i){let c=n.get(i);if(c&&c!==s[0])throw Error(`Duplicate schema id "${i}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);n.set(i,s[0])}}let o=(s)=>{let i=e.target==="draft-2020-12"?"$defs":"definitions";if(e.external){let p=e.external.registry.get(s[0])?.id,m=e.external.uri??((y)=>y);if(p)return{ref:m(p)};let f=s[1].defId??s[1].schema.id??`schema${e.counter++}`;return s[1].defId=f,{defId:f,ref:`${m("__shared")}#/${i}/${f}`}}if(s[1]===r)return{ref:"#"};let u=`${"#"}/${i}/`,d=s[1].schema.id??`__schema${e.counter++}`;return{defId:d,ref:u+d}},a=(s)=>{if(s[1].schema.$ref)return;let i=s[1],{ref:c,defId:u}=o(s);if(i.def={...i.schema},u)i.defId=u;let d=i.schema;for(let p in d)delete d[p];d.$ref=c};if(e.cycles==="throw")for(let s of e.seen.entries()){let i=s[1];if(i.cycle)throw Error(`Cycle detected: #/${i.cycle?.join("/")}/<root>
|
|
129
110
|
|
|
130
|
-
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let _ of t.seen.entries()){let S=_[1];if(p===_[0]){x(_);continue}if(t.external){let k=t.external.registry.get(_[0])?.id;if(p!==_[0]&&k){x(_);continue}}if(t.metadataRegistry.get(_[0])?.id){x(_);continue}if(S.cycle){x(_);continue}if(S.count>1){if(t.reused==="ref"){x(_);continue}}}}function $r(t,p){let m=t.seen.get(p);if(!m)throw Error("Unprocessed schema. This is a bug in Zod.");let y=(S)=>{let E=t.seen.get(S);if(E.ref===null)return;let k=E.def??E.schema,M={...k},R=E.ref;if(E.ref=null,R){y(R);let A=t.seen.get(R),j=A.schema;if(j.$ref&&(t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"))k.allOf=k.allOf??[],k.allOf.push(j);else Object.assign(k,j);if(Object.assign(k,M),S._zod.parent===R)for(let U in k){if(U==="$ref"||U==="allOf")continue;if(!(U in M))delete k[U]}if(j.$ref&&A.def)for(let U in k){if(U==="$ref"||U==="allOf")continue;if(U in A.def&&JSON.stringify(k[U])===JSON.stringify(A.def[U]))delete k[U]}}let C=S._zod.parent;if(C&&C!==R){y(C);let A=t.seen.get(C);if(A?.schema.$ref){if(k.$ref=A.schema.$ref,A.def)for(let j in k){if(j==="$ref"||j==="allOf")continue;if(j in A.def&&JSON.stringify(k[j])===JSON.stringify(A.def[j]))delete k[j]}}}t.override({zodSchema:S,jsonSchema:k,path:E.path??[]})};for(let S of[...t.seen.entries()].reverse())y(S[0]);let b={};if(t.target==="draft-2020-12")b.$schema="https://json-schema.org/draft/2020-12/schema";else if(t.target==="draft-07")b.$schema="http://json-schema.org/draft-07/schema#";else if(t.target==="draft-04")b.$schema="http://json-schema.org/draft-04/schema#";else if(t.target==="openapi-3.0");if(t.external?.uri){let S=t.external.registry.get(p)?.id;if(!S)throw Error("Schema is missing an `id` property");b.$id=t.external.uri(S)}Object.assign(b,m.def??m.schema);let x=t.metadataRegistry.get(p)?.id;if(x!==void 0&&b.id===x)delete b.id;let _=t.external?.defs??{};for(let S of t.seen.entries()){let E=S[1];if(E.def&&E.defId){if(E.def.id===E.defId)delete E.def.id;_[E.defId]=E.def}}if(t.external);else if(Object.keys(_).length>0)if(t.target==="draft-2020-12")b.$defs=_;else b.definitions=_;try{let S=JSON.parse(JSON.stringify(b));return Object.defineProperty(S,"~standard",{value:{...p["~standard"],jsonSchema:{input:Tr(p,"input",t.processors),output:Tr(p,"output",t.processors)}},enumerable:!1,writable:!1}),S}catch(S){throw Error("Error converting schema to JSON.")}}function ye(t,p){let m=p??{seen:new Set};if(m.seen.has(t))return!1;m.seen.add(t);let y=t._zod.def;if(y.type==="transform")return!0;if(y.type==="array")return ye(y.element,m);if(y.type==="set")return ye(y.valueType,m);if(y.type==="lazy")return ye(y.getter(),m);if(y.type==="promise"||y.type==="optional"||y.type==="nonoptional"||y.type==="nullable"||y.type==="readonly"||y.type==="default"||y.type==="prefault")return ye(y.innerType,m);if(y.type==="intersection")return ye(y.left,m)||ye(y.right,m);if(y.type==="record"||y.type==="map")return ye(y.keyType,m)||ye(y.valueType,m);if(y.type==="pipe"){if(t._zod.traits.has("$ZodCodec"))return!0;return ye(y.in,m)||ye(y.out,m)}if(y.type==="object"){for(let b in y.shape)if(ye(y.shape[b],m))return!0;return!1}if(y.type==="union"){for(let b of y.options)if(ye(b,m))return!0;return!1}if(y.type==="tuple"){for(let b of y.items)if(ye(b,m))return!0;if(y.rest&&ye(y.rest,m))return!0;return!1}return!1}var Lu=(t,p={})=>(m)=>{let y=Er({...m,processors:p});return oe(t,y),kr(y,t),$r(y,t)},Tr=(t,p,m={})=>(y)=>{let{libraryOptions:b,target:x}=y??{},_=Er({...b??{},target:x,io:p,processors:m});return oe(t,_),kr(_,t),$r(_,t)};var Rg={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},Oo=(t,p,m,y)=>{let b=m;b.type="string";let{minimum:x,maximum:_,format:S,patterns:E,contentEncoding:k}=t._zod.bag;if(typeof x==="number")b.minLength=x;if(typeof _==="number")b.maxLength=_;if(S){if(b.format=Rg[S]??S,b.format==="")delete b.format;if(S==="time")delete b.format}if(k)b.contentEncoding=k;if(E&&E.size>0){let M=[...E];if(M.length===1)b.pattern=M[0].source;else if(M.length>1)b.allOf=[...M.map((R)=>({...p.target==="draft-07"||p.target==="draft-04"||p.target==="openapi-3.0"?{type:"string"}:{},pattern:R.source}))]}},Po=(t,p,m,y)=>{let b=m,{minimum:x,maximum:_,format:S,multipleOf:E,exclusiveMaximum:k,exclusiveMinimum:M}=t._zod.bag;if(typeof S==="string"&&S.includes("int"))b.type="integer";else b.type="number";let R=typeof M==="number"&&M>=(x??Number.NEGATIVE_INFINITY),C=typeof k==="number"&&k<=(_??Number.POSITIVE_INFINITY),A=p.target==="draft-04"||p.target==="openapi-3.0";if(R)if(A)b.minimum=M,b.exclusiveMinimum=!0;else b.exclusiveMinimum=M;else if(typeof x==="number")b.minimum=x;if(C)if(A)b.maximum=k,b.exclusiveMaximum=!0;else b.exclusiveMaximum=k;else if(typeof _==="number")b.maximum=_;if(typeof E==="number")b.multipleOf=E},No=(t,p,m,y)=>{m.type="boolean"},Bu=(t,p,m,y)=>{if(p.unrepresentable==="throw")throw Error("BigInt cannot be represented in JSON Schema")},qu=(t,p,m,y)=>{if(p.unrepresentable==="throw")throw Error("Symbols cannot be represented in JSON Schema")},jo=(t,p,m,y)=>{if(p.target==="openapi-3.0")m.type="string",m.nullable=!0,m.enum=[null];else m.type="null"},Wu=(t,p,m,y)=>{if(p.unrepresentable==="throw")throw Error("Undefined cannot be represented in JSON Schema")},Vu=(t,p,m,y)=>{if(p.unrepresentable==="throw")throw Error("Void cannot be represented in JSON Schema")},zo=(t,p,m,y)=>{m.not={}},Gu=(t,p,m,y)=>{},Do=(t,p,m,y)=>{},Ju=(t,p,m,y)=>{if(p.unrepresentable==="throw")throw Error("Date cannot be represented in JSON Schema")},Uo=(t,p,m,y)=>{let b=t._zod.def,x=gr(b.entries);if(x.every((_)=>typeof _==="number"))m.type="number";if(x.every((_)=>typeof _==="string"))m.type="string";m.enum=x},Zo=(t,p,m,y)=>{let b=t._zod.def,x=[];for(let _ of b.values)if(_===void 0){if(p.unrepresentable==="throw")throw Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof _==="bigint")if(p.unrepresentable==="throw")throw Error("BigInt literals cannot be represented in JSON Schema");else x.push(Number(_));else x.push(_);if(x.length===0);else if(x.length===1){let _=x[0];if(m.type=_===null?"null":typeof _,p.target==="draft-04"||p.target==="openapi-3.0")m.enum=[_];else m.const=_}else{if(x.every((_)=>typeof _==="number"))m.type="number";if(x.every((_)=>typeof _==="string"))m.type="string";if(x.every((_)=>typeof _==="boolean"))m.type="boolean";if(x.every((_)=>_===null))m.type="null";m.enum=x}},Ku=(t,p,m,y)=>{if(p.unrepresentable==="throw")throw Error("NaN cannot be represented in JSON Schema")},Hu=(t,p,m,y)=>{let b=m,x=t._zod.pattern;if(!x)throw Error("Pattern not found in template literal");b.type="string",b.pattern=x.source},Yu=(t,p,m,y)=>{let b=m,x={type:"string",format:"binary",contentEncoding:"binary"},{minimum:_,maximum:S,mime:E}=t._zod.bag;if(_!==void 0)x.minLength=_;if(S!==void 0)x.maxLength=S;if(E)if(E.length===1)x.contentMediaType=E[0],Object.assign(b,x);else Object.assign(b,x),b.anyOf=E.map((k)=>({contentMediaType:k}));else Object.assign(b,x)},Xu=(t,p,m,y)=>{m.type="boolean"},Lo=(t,p,m,y)=>{if(p.unrepresentable==="throw")throw Error("Custom types cannot be represented in JSON Schema")},Qu=(t,p,m,y)=>{if(p.unrepresentable==="throw")throw Error("Function types cannot be represented in JSON Schema")},Fo=(t,p,m,y)=>{if(p.unrepresentable==="throw")throw Error("Transforms cannot be represented in JSON Schema")},ed=(t,p,m,y)=>{if(p.unrepresentable==="throw")throw Error("Map cannot be represented in JSON Schema")},td=(t,p,m,y)=>{if(p.unrepresentable==="throw")throw Error("Set cannot be represented in JSON Schema")},Bo=(t,p,m,y)=>{let b=m,x=t._zod.def,{minimum:_,maximum:S}=t._zod.bag;if(typeof _==="number")b.minItems=_;if(typeof S==="number")b.maxItems=S;b.type="array",b.items=oe(x.element,p,{...y,path:[...y.path,"items"]})},qo=(t,p,m,y)=>{let b=m,x=t._zod.def;b.type="object",b.properties={};let _=x.shape;for(let k in _)b.properties[k]=oe(_[k],p,{...y,path:[...y.path,"properties",k]});let S=new Set(Object.keys(_)),E=new Set([...S].filter((k)=>{let M=x.shape[k]._zod;if(p.io==="input")return M.optin===void 0;else return M.optout===void 0}));if(E.size>0)b.required=Array.from(E);if(x.catchall?._zod.def.type==="never")b.additionalProperties=!1;else if(!x.catchall){if(p.io==="output")b.additionalProperties=!1}else if(x.catchall)b.additionalProperties=oe(x.catchall,p,{...y,path:[...y.path,"additionalProperties"]})},Wo=(t,p,m,y)=>{let b=t._zod.def,x=b.inclusive===!1,_=b.options.map((S,E)=>oe(S,p,{...y,path:[...y.path,x?"oneOf":"anyOf",E]}));if(x)m.oneOf=_;else m.anyOf=_},Vo=(t,p,m,y)=>{let b=t._zod.def,x=oe(b.left,p,{...y,path:[...y.path,"allOf",0]}),_=oe(b.right,p,{...y,path:[...y.path,"allOf",1]}),S=(k)=>("allOf"in k)&&Object.keys(k).length===1,E=[...S(x)?x.allOf:[x],...S(_)?_.allOf:[_]];m.allOf=E},rd=(t,p,m,y)=>{let b=m,x=t._zod.def;b.type="array";let _=p.target==="draft-2020-12"?"prefixItems":"items",S=p.target==="draft-2020-12"?"items":p.target==="openapi-3.0"?"items":"additionalItems",E=x.items.map((C,A)=>oe(C,p,{...y,path:[...y.path,_,A]})),k=x.rest?oe(x.rest,p,{...y,path:[...y.path,S,...p.target==="openapi-3.0"?[x.items.length]:[]]}):null;if(p.target==="draft-2020-12"){if(b.prefixItems=E,k)b.items=k}else if(p.target==="openapi-3.0"){if(b.items={anyOf:E},k)b.items.anyOf.push(k);if(b.minItems=E.length,!k)b.maxItems=E.length}else if(b.items=E,k)b.additionalItems=k;let{minimum:M,maximum:R}=t._zod.bag;if(typeof M==="number")b.minItems=M;if(typeof R==="number")b.maxItems=R},Go=(t,p,m,y)=>{let b=m,x=t._zod.def;b.type="object";let _=x.keyType,E=_._zod.bag?.patterns;if(x.mode==="loose"&&E&&E.size>0){let M=oe(x.valueType,p,{...y,path:[...y.path,"patternProperties","*"]});b.patternProperties={};for(let R of E)b.patternProperties[R.source]=M}else{if(p.target==="draft-07"||p.target==="draft-2020-12")b.propertyNames=oe(x.keyType,p,{...y,path:[...y.path,"propertyNames"]});b.additionalProperties=oe(x.valueType,p,{...y,path:[...y.path,"additionalProperties"]})}let k=_._zod.values;if(k){let M=[...k].filter((R)=>typeof R==="string"||typeof R==="number");if(M.length>0)b.required=M}},Jo=(t,p,m,y)=>{let b=t._zod.def,x=oe(b.innerType,p,y),_=p.seen.get(t);if(p.target==="openapi-3.0")_.ref=b.innerType,m.nullable=!0;else m.anyOf=[x,{type:"null"}]},Ko=(t,p,m,y)=>{let b=t._zod.def;oe(b.innerType,p,y);let x=p.seen.get(t);x.ref=b.innerType},Ho=(t,p,m,y)=>{let b=t._zod.def;oe(b.innerType,p,y);let x=p.seen.get(t);x.ref=b.innerType,m.default=JSON.parse(JSON.stringify(b.defaultValue))},Yo=(t,p,m,y)=>{let b=t._zod.def;oe(b.innerType,p,y);let x=p.seen.get(t);if(x.ref=b.innerType,p.io==="input")m._prefault=JSON.parse(JSON.stringify(b.defaultValue))},Xo=(t,p,m,y)=>{let b=t._zod.def;oe(b.innerType,p,y);let x=p.seen.get(t);x.ref=b.innerType;let _;try{_=b.catchValue(void 0)}catch{throw Error("Dynamic catch values are not supported in JSON Schema")}m.default=_},Qo=(t,p,m,y)=>{let b=t._zod.def,x=b.in._zod.traits.has("$ZodTransform"),_=p.io==="input"?x?b.out:b.in:b.out;oe(_,p,y);let S=p.seen.get(t);S.ref=_},ea=(t,p,m,y)=>{let b=t._zod.def;oe(b.innerType,p,y);let x=p.seen.get(t);x.ref=b.innerType,m.readOnly=!0},nd=(t,p,m,y)=>{let b=t._zod.def;oe(b.innerType,p,y);let x=p.seen.get(t);x.ref=b.innerType},yn=(t,p,m,y)=>{let b=t._zod.def;oe(b.innerType,p,y);let x=p.seen.get(t);x.ref=b.innerType},ta=(t,p,m,y)=>{let b=t._zod.innerType;oe(b,p,y);let x=p.seen.get(t);x.ref=b},Fu={string:Oo,number:Po,boolean:No,bigint:Bu,symbol:qu,null:jo,undefined:Wu,void:Vu,never:zo,any:Gu,unknown:Do,date:Ju,enum:Uo,literal:Zo,nan:Ku,template_literal:Hu,file:Yu,success:Xu,custom:Lo,function:Qu,transform:Fo,map:ed,set:td,array:Bo,object:qo,union:Wo,intersection:Vo,tuple:rd,record:Go,nullable:Jo,nonoptional:Ko,default:Ho,prefault:Yo,catch:Xo,pipe:Qo,readonly:ea,promise:nd,optional:yn,lazy:ta};function ra(t,p){if("_idmap"in t){let y=t,b=Er({...p,processors:Fu}),x={};for(let E of y._idmap.entries()){let[k,M]=E;oe(M,b)}let _={},S={registry:y,uri:p?.uri,defs:x};b.external=S;for(let E of y._idmap.entries()){let[k,M]=E;kr(b,M),_[k]=$r(b,M)}if(Object.keys(x).length>0){let E=b.target==="draft-2020-12"?"$defs":"definitions";_.__shared={[E]:x}}return{schemas:_}}let m=Er({...p,processors:Fu});return oe(t,m),kr(m,t),$r(m,t)}var zg=N("ZodISODateTime",(t,p)=>{bc.init(t,p),le.init(t,p)});function od(t){return ku(zg,t)}var Dg=N("ZodISODate",(t,p)=>{wc.init(t,p),le.init(t,p)});function ad(t){return $u(Dg,t)}var Ug=N("ZodISOTime",(t,p)=>{xc.init(t,p),le.init(t,p)});function sd(t){return Mu(Ug,t)}var Zg=N("ZodISODuration",(t,p)=>{_c.init(t,p),le.init(t,p)});function id(t){return Ru(Zg,t)}var Bg=(t,p)=>{on.init(t,p),t.name="ZodError",Object.defineProperties(t,{format:{value:(m)=>el(t,m)},flatten:{value:(m)=>Qi(t,m)},addIssue:{value:(m)=>{t.issues.push(m),t.message=JSON.stringify(t.issues,qt,2)}},addIssues:{value:(m)=>{t.issues.push(...m),t.message=JSON.stringify(t.issues,qt,2)}},isEmpty:{get(){return t.issues.length===0}}})};var ke=N("ZodError",Bg,{Parent:Error});var ld=an(ke),cd=sn(ke),ud=wr(ke),wn=xr(ke),dd=nl(ke),pd=ol(ke),fd=al(ke),md=sl(ke),hd=il(ke),gd=ll(ke),vd=cl(ke),yd=ul(ke);var bd=new WeakMap;function Rr(t,p,m){let y=Object.getPrototypeOf(t),b=bd.get(y);if(!b)b=new Set,bd.set(y,b);if(b.has(p))return;b.add(p);for(let x in m){let _=m[x];Object.defineProperty(y,x,{configurable:!0,enumerable:!1,get(){let S=_.bind(this);return Object.defineProperty(this,x,{configurable:!0,writable:!0,enumerable:!0,value:S}),S},set(S){Object.defineProperty(this,x,{configurable:!0,writable:!0,enumerable:!0,value:S})}})}}var ie=N("ZodType",(t,p)=>(ae.init(t,p),Object.assign(t["~standard"],{jsonSchema:{input:Tr(t,"input"),output:Tr(t,"output")}}),t.toJSONSchema=Lu(t,{}),t.def=p,t.type=p.type,Object.defineProperty(t,"_def",{value:p}),t.parse=(m,y)=>ld(t,m,y,{callee:t.parse}),t.safeParse=(m,y)=>ud(t,m,y),t.parseAsync=async(m,y)=>cd(t,m,y,{callee:t.parseAsync}),t.safeParseAsync=async(m,y)=>wn(t,m,y),t.spa=t.safeParseAsync,t.encode=(m,y)=>dd(t,m,y),t.decode=(m,y)=>pd(t,m,y),t.encodeAsync=async(m,y)=>fd(t,m,y),t.decodeAsync=async(m,y)=>md(t,m,y),t.safeEncode=(m,y)=>hd(t,m,y),t.safeDecode=(m,y)=>gd(t,m,y),t.safeEncodeAsync=async(m,y)=>vd(t,m,y),t.safeDecodeAsync=async(m,y)=>yd(t,m,y),Rr(t,"ZodType",{check(...m){let y=this.def;return this.clone(H.mergeDefs(y,{checks:[...y.checks??[],...m.map((b)=>typeof b==="function"?{_zod:{check:b,def:{check:"custom"},onattach:[]}}:b)]}),{parent:!0})},with(...m){return this.check(...m)},clone(m,y){return ze(this,m,y)},brand(){return this},register(m,y){return m.add(this,y),this},refine(m,y){return this.check(Nv(m,y))},superRefine(m,y){return this.check(jv(m,y))},overwrite(m){return this.check(ut(m))},optional(){return Sd(this)},exactOptional(){return _v(this)},nullable(){return Id(this)},nullish(){return Sd(Id(this))},nonoptional(m){return $v(this,m)},array(){return sa(this)},or(m){return ia([this,m])},and(m){return vv(this,m)},transform(m){return Td(this,wv(m))},default(m){return Tv(this,m)},prefault(m){return kv(this,m)},catch(m){return Rv(this,m)},pipe(m){return Td(this,m)},readonly(){return Ov(this)},describe(m){let y=this.clone();return Et.add(y,{description:m}),y},meta(...m){if(m.length===0)return Et.get(this);let y=this.clone();return Et.add(y,m[0]),y},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(m){return m(this)}}),Object.defineProperty(t,"description",{get(){return Et.get(t)?.description},configurable:!0}),t)),Ed=N("_ZodString",(t,p)=>{pn.init(t,p),ie.init(t,p),t._zod.processJSONSchema=(y,b,x)=>Oo(t,y,b,x);let m=t._zod.bag;t.format=m.format??null,t.minLength=m.minimum??null,t.maxLength=m.maximum??null,Rr(t,"_ZodString",{regex(...y){return this.check(_o(...y))},includes(...y){return this.check(To(...y))},startsWith(...y){return this.check(Eo(...y))},endsWith(...y){return this.check(ko(...y))},min(...y){return this.check(Gt(...y))},max(...y){return this.check(gn(...y))},length(...y){return this.check(vn(...y))},nonempty(...y){return this.check(Gt(1,...y))},lowercase(y){return this.check(So(y))},uppercase(y){return this.check(Io(y))},trim(){return this.check(Mo())},normalize(...y){return this.check($o(...y))},toLowerCase(){return this.check(Ro())},toUpperCase(){return this.check(Co())},slugify(){return this.check(Ao())}})}),Wg=N("ZodString",(t,p)=>{pn.init(t,p),Ed.init(t,p),t.email=(m)=>t.check(su(Vg,m)),t.url=(m)=>t.check(du(Gg,m)),t.jwt=(m)=>t.check(Eu(lv,m)),t.emoji=(m)=>t.check(pu(Jg,m)),t.guid=(m)=>t.check(xo(wd,m)),t.uuid=(m)=>t.check(iu(xn,m)),t.uuidv4=(m)=>t.check(lu(xn,m)),t.uuidv6=(m)=>t.check(cu(xn,m)),t.uuidv7=(m)=>t.check(uu(xn,m)),t.nanoid=(m)=>t.check(fu(Kg,m)),t.guid=(m)=>t.check(xo(wd,m)),t.cuid=(m)=>t.check(mu(Hg,m)),t.cuid2=(m)=>t.check(hu(Yg,m)),t.ulid=(m)=>t.check(gu(Xg,m)),t.base64=(m)=>t.check(Su(av,m)),t.base64url=(m)=>t.check(Iu(sv,m)),t.xid=(m)=>t.check(vu(Qg,m)),t.ksuid=(m)=>t.check(yu(ev,m)),t.ipv4=(m)=>t.check(bu(tv,m)),t.ipv6=(m)=>t.check(wu(rv,m)),t.cidrv4=(m)=>t.check(xu(nv,m)),t.cidrv6=(m)=>t.check(_u(ov,m)),t.e164=(m)=>t.check(Tu(iv,m)),t.datetime=(m)=>t.check(od(m)),t.date=(m)=>t.check(ad(m)),t.time=(m)=>t.check(sd(m)),t.duration=(m)=>t.check(id(m))});function oa(t){return au(Wg,t)}var le=N("ZodStringFormat",(t,p)=>{se.init(t,p),Ed.init(t,p)}),Vg=N("ZodEmail",(t,p)=>{uc.init(t,p),le.init(t,p)});var wd=N("ZodGUID",(t,p)=>{lc.init(t,p),le.init(t,p)});var xn=N("ZodUUID",(t,p)=>{cc.init(t,p),le.init(t,p)});var Gg=N("ZodURL",(t,p)=>{dc.init(t,p),le.init(t,p)});var Jg=N("ZodEmoji",(t,p)=>{pc.init(t,p),le.init(t,p)});var Kg=N("ZodNanoID",(t,p)=>{fc.init(t,p),le.init(t,p)});var Hg=N("ZodCUID",(t,p)=>{mc.init(t,p),le.init(t,p)});var Yg=N("ZodCUID2",(t,p)=>{hc.init(t,p),le.init(t,p)});var Xg=N("ZodULID",(t,p)=>{gc.init(t,p),le.init(t,p)});var Qg=N("ZodXID",(t,p)=>{vc.init(t,p),le.init(t,p)});var ev=N("ZodKSUID",(t,p)=>{yc.init(t,p),le.init(t,p)});var tv=N("ZodIPv4",(t,p)=>{Sc.init(t,p),le.init(t,p)});var rv=N("ZodIPv6",(t,p)=>{Ic.init(t,p),le.init(t,p)});var nv=N("ZodCIDRv4",(t,p)=>{Tc.init(t,p),le.init(t,p)});var ov=N("ZodCIDRv6",(t,p)=>{Ec.init(t,p),le.init(t,p)});var av=N("ZodBase64",(t,p)=>{$c.init(t,p),le.init(t,p)});var sv=N("ZodBase64URL",(t,p)=>{Mc.init(t,p),le.init(t,p)});var iv=N("ZodE164",(t,p)=>{Rc.init(t,p),le.init(t,p)});var lv=N("ZodJWT",(t,p)=>{Cc.init(t,p),le.init(t,p)});var kd=N("ZodNumber",(t,p)=>{yo.init(t,p),ie.init(t,p),t._zod.processJSONSchema=(y,b,x)=>Po(t,y,b,x),Rr(t,"ZodNumber",{gt(y,b){return this.check(mn(y,b))},gte(y,b){return this.check(Ir(y,b))},min(y,b){return this.check(Ir(y,b))},lt(y,b){return this.check(fn(y,b))},lte(y,b){return this.check(Sr(y,b))},max(y,b){return this.check(Sr(y,b))},int(y){return this.check(xd(y))},safe(y){return this.check(xd(y))},positive(y){return this.check(mn(0,y))},nonnegative(y){return this.check(Ir(0,y))},negative(y){return this.check(fn(0,y))},nonpositive(y){return this.check(Sr(0,y))},multipleOf(y,b){return this.check(hn(y,b))},step(y,b){return this.check(hn(y,b))},finite(){return this}});let m=t._zod.bag;t.minValue=Math.max(m.minimum??Number.NEGATIVE_INFINITY,m.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,t.maxValue=Math.min(m.maximum??Number.POSITIVE_INFINITY,m.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,t.isInt=(m.format??"").includes("int")||Number.isSafeInteger(m.multipleOf??0.5),t.isFinite=!0,t.format=m.format??null});function $d(t){return Cu(kd,t)}var cv=N("ZodNumberFormat",(t,p)=>{Ac.init(t,p),kd.init(t,p)});function xd(t){return Au(cv,t)}var uv=N("ZodBoolean",(t,p)=>{Oc.init(t,p),ie.init(t,p),t._zod.processJSONSchema=(m,y,b)=>No(t,m,y,b)});function Md(t){return Ou(uv,t)}var dv=N("ZodNull",(t,p)=>{Pc.init(t,p),ie.init(t,p),t._zod.processJSONSchema=(m,y,b)=>jo(t,m,y,b)});function Rd(t){return Pu(dv,t)}var pv=N("ZodUnknown",(t,p)=>{Nc.init(t,p),ie.init(t,p),t._zod.processJSONSchema=(m,y,b)=>Do(t,m,y,b)});function Mr(){return Nu(pv)}var fv=N("ZodNever",(t,p)=>{jc.init(t,p),ie.init(t,p),t._zod.processJSONSchema=(m,y,b)=>zo(t,m,y,b)});function aa(t){return ju(fv,t)}var mv=N("ZodArray",(t,p)=>{zc.init(t,p),ie.init(t,p),t._zod.processJSONSchema=(m,y,b)=>Bo(t,m,y,b),t.element=p.element,Rr(t,"ZodArray",{min(m,y){return this.check(Gt(m,y))},nonempty(m){return this.check(Gt(1,m))},max(m,y){return this.check(gn(m,y))},length(m,y){return this.check(vn(m,y))},unwrap(){return this.element}})});function sa(t,p){return zu(mv,t,p)}var Cd=N("ZodObject",(t,p)=>{Zc.init(t,p),ie.init(t,p),t._zod.processJSONSchema=(m,y,b)=>qo(t,m,y,b),H.defineLazy(t,"shape",()=>p.shape),Rr(t,"ZodObject",{keyof(){return la(Object.keys(this._zod.def.shape))},catchall(m){return this.clone({...this._zod.def,catchall:m})},passthrough(){return this.clone({...this._zod.def,catchall:Mr()})},loose(){return this.clone({...this._zod.def,catchall:Mr()})},strict(){return this.clone({...this._zod.def,catchall:aa()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(m){return H.extend(this,m)},safeExtend(m){return H.safeExtend(this,m)},merge(m){return H.merge(this,m)},pick(m){return H.pick(this,m)},omit(m){return H.omit(this,m)},partial(...m){return H.partial(Dd,this,m[0])},required(...m){return H.required(Ud,this,m[0])}})});function Ad(t,p){let m={type:"object",shape:t??{},...H.normalizeParams(p)};return new Cd(m)}function Od(t,p){return new Cd({type:"object",shape:t,catchall:Mr(),...H.normalizeParams(p)})}var Pd=N("ZodUnion",(t,p)=>{bo.init(t,p),ie.init(t,p),t._zod.processJSONSchema=(m,y,b)=>Wo(t,m,y,b),t.options=p.options});function ia(t,p){return new Pd({type:"union",options:t,...H.normalizeParams(p)})}var hv=N("ZodDiscriminatedUnion",(t,p)=>{Pd.init(t,p),Lc.init(t,p)});function Nd(t,p,m){return new hv({type:"union",options:p,discriminator:t,...H.normalizeParams(m)})}var gv=N("ZodIntersection",(t,p)=>{Fc.init(t,p),ie.init(t,p),t._zod.processJSONSchema=(m,y,b)=>Vo(t,m,y,b)});function vv(t,p){return new gv({type:"intersection",left:t,right:p})}var _d=N("ZodRecord",(t,p)=>{Bc.init(t,p),ie.init(t,p),t._zod.processJSONSchema=(m,y,b)=>Go(t,m,y,b),t.keyType=p.keyType,t.valueType=p.valueType});function jd(t,p,m){if(!p||!p._zod)return new _d({type:"record",keyType:oa(),valueType:t,...H.normalizeParams(p)});return new _d({type:"record",keyType:t,valueType:p,...H.normalizeParams(m)})}var na=N("ZodEnum",(t,p)=>{qc.init(t,p),ie.init(t,p),t._zod.processJSONSchema=(y,b,x)=>Uo(t,y,b,x),t.enum=p.entries,t.options=Object.values(p.entries);let m=new Set(Object.keys(p.entries));t.extract=(y,b)=>{let x={};for(let _ of y)if(m.has(_))x[_]=p.entries[_];else throw Error(`Key ${_} not found in enum`);return new na({...p,checks:[],...H.normalizeParams(b),entries:x})},t.exclude=(y,b)=>{let x={...p.entries};for(let _ of y)if(m.has(_))delete x[_];else throw Error(`Key ${_} not found in enum`);return new na({...p,checks:[],...H.normalizeParams(b),entries:x})}});function la(t,p){let m=Array.isArray(t)?Object.fromEntries(t.map((y)=>[y,y])):t;return new na({type:"enum",entries:m,...H.normalizeParams(p)})}var yv=N("ZodLiteral",(t,p)=>{Wc.init(t,p),ie.init(t,p),t._zod.processJSONSchema=(m,y,b)=>Zo(t,m,y,b),t.values=new Set(p.values),Object.defineProperty(t,"value",{get(){if(p.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return p.values[0]}})});function zd(t,p){return new yv({type:"literal",values:Array.isArray(t)?t:[t],...H.normalizeParams(p)})}var bv=N("ZodTransform",(t,p)=>{Vc.init(t,p),ie.init(t,p),t._zod.processJSONSchema=(m,y,b)=>Fo(t,m,y,b),t._zod.parse=(m,y)=>{if(y.direction==="backward")throw new mr(t.constructor.name);m.addIssue=(x)=>{if(typeof x==="string")m.issues.push(H.issue(x,m.value,p));else{let _=x;if(_.fatal)_.continue=!1;_.code??(_.code="custom"),_.input??(_.input=m.value),_.inst??(_.inst=t),m.issues.push(H.issue(_))}};let b=p.transform(m.value,m);if(b instanceof Promise)return b.then((x)=>(m.value=x,m.fallback=!0,m));return m.value=b,m.fallback=!0,m}});function wv(t){return new bv({type:"transform",transform:t})}var Dd=N("ZodOptional",(t,p)=>{wo.init(t,p),ie.init(t,p),t._zod.processJSONSchema=(m,y,b)=>yn(t,m,y,b),t.unwrap=()=>t._zod.def.innerType});function Sd(t){return new Dd({type:"optional",innerType:t})}var xv=N("ZodExactOptional",(t,p)=>{Gc.init(t,p),ie.init(t,p),t._zod.processJSONSchema=(m,y,b)=>yn(t,m,y,b),t.unwrap=()=>t._zod.def.innerType});function _v(t){return new xv({type:"optional",innerType:t})}var Sv=N("ZodNullable",(t,p)=>{Jc.init(t,p),ie.init(t,p),t._zod.processJSONSchema=(m,y,b)=>Jo(t,m,y,b),t.unwrap=()=>t._zod.def.innerType});function Id(t){return new Sv({type:"nullable",innerType:t})}var Iv=N("ZodDefault",(t,p)=>{Kc.init(t,p),ie.init(t,p),t._zod.processJSONSchema=(m,y,b)=>Ho(t,m,y,b),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function Tv(t,p){return new Iv({type:"default",innerType:t,get defaultValue(){return typeof p==="function"?p():H.shallowClone(p)}})}var Ev=N("ZodPrefault",(t,p)=>{Hc.init(t,p),ie.init(t,p),t._zod.processJSONSchema=(m,y,b)=>Yo(t,m,y,b),t.unwrap=()=>t._zod.def.innerType});function kv(t,p){return new Ev({type:"prefault",innerType:t,get defaultValue(){return typeof p==="function"?p():H.shallowClone(p)}})}var Ud=N("ZodNonOptional",(t,p)=>{Yc.init(t,p),ie.init(t,p),t._zod.processJSONSchema=(m,y,b)=>Ko(t,m,y,b),t.unwrap=()=>t._zod.def.innerType});function $v(t,p){return new Ud({type:"nonoptional",innerType:t,...H.normalizeParams(p)})}var Mv=N("ZodCatch",(t,p)=>{Xc.init(t,p),ie.init(t,p),t._zod.processJSONSchema=(m,y,b)=>Xo(t,m,y,b),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function Rv(t,p){return new Mv({type:"catch",innerType:t,catchValue:typeof p==="function"?p:()=>p})}var Cv=N("ZodPipe",(t,p)=>{Qc.init(t,p),ie.init(t,p),t._zod.processJSONSchema=(m,y,b)=>Qo(t,m,y,b),t.in=p.in,t.out=p.out});function Td(t,p){return new Cv({type:"pipe",in:t,out:p})}var Av=N("ZodReadonly",(t,p)=>{eu.init(t,p),ie.init(t,p),t._zod.processJSONSchema=(m,y,b)=>ea(t,m,y,b),t.unwrap=()=>t._zod.def.innerType});function Ov(t){return new Av({type:"readonly",innerType:t})}var Pv=N("ZodLazy",(t,p)=>{tu.init(t,p),ie.init(t,p),t._zod.processJSONSchema=(m,y,b)=>ta(t,m,y,b),t.unwrap=()=>t._zod.def.getter()});function Zd(t){return new Pv({type:"lazy",getter:t})}var ca=N("ZodCustom",(t,p)=>{ru.init(t,p),ie.init(t,p),t._zod.processJSONSchema=(m,y,b)=>Lo(t,m,y,b)});function Ld(t,p){return Du(ca,t??(()=>!0),p)}function Nv(t,p={}){return Uu(ca,t,p)}function jv(t,p){return Zu(t,p)}function Fd(t,p={}){let m=new ca({type:"custom",check:"custom",fn:(y)=>y instanceof t,abort:!0,...H.normalizeParams(p)});return m._zod.bag.Class=t,m._zod.check=(y)=>{if(!(y.value instanceof t))y.issues.push({code:"invalid_type",expected:t.name,input:y.value,inst:m,path:[...m._zod.def.path??[]]})},m}var zv=[{mediaType:"audio/mpeg",bytesPrefix:[255,251]},{mediaType:"audio/mpeg",bytesPrefix:[255,250]},{mediaType:"audio/mpeg",bytesPrefix:[255,243]},{mediaType:"audio/mpeg",bytesPrefix:[255,242]},{mediaType:"audio/mpeg",bytesPrefix:[255,227]},{mediaType:"audio/mpeg",bytesPrefix:[255,226]},{mediaType:"audio/wav",bytesPrefix:[82,73,70,70,null,null,null,null,87,65,86,69]},{mediaType:"audio/ogg",bytesPrefix:[79,103,103,83]},{mediaType:"audio/flac",bytesPrefix:[102,76,97,67]},{mediaType:"audio/aac",bytesPrefix:[64,21,0,0]},{mediaType:"audio/webm",bytesPrefix:[26,69,223,163]}],l0=[...zv,{mediaType:"audio/mp4",bytesPrefix:[0,0,0,null,102,116,121,112]}];var Dv=12,Uv=131072,c0=Uv+Dv;async function _n(t){var p;try{await((p=t.body)==null?void 0:p.cancel())}catch(m){}}var Xd="AI_DownloadError",Qd=`vercel.ai.error.${Xd}`,Zv=Symbol.for(Qd),Bd,qd,we=class extends(qd=W,Bd=Zv,qd){constructor({url:t,statusCode:p,statusText:m,cause:y,message:b=y==null?`Failed to download ${t}: ${p} ${m}`:`Failed to download ${t}: ${y}`}){super({name:Xd,message:b,cause:y});this[Bd]=!0,this.url=t,this.statusCode=p,this.statusText=m}static isInstance(t){return W.hasMarker(t,Qd)}};function Lv(t=globalThis){return t.window!=null}function Wd(t,p){try{return new URL(t).origin===new URL(p).origin}catch(m){return!1}}function Fv(t){let p;try{p=new URL(t)}catch(y){throw new we({url:t,message:`Invalid URL: ${t}`})}if(p.protocol==="data:")return;if(p.protocol!=="http:"&&p.protocol!=="https:")throw new we({url:t,message:`URL scheme must be http, https, or data, got ${p.protocol}`});let m=p.hostname.toLowerCase().replace(/\.+$/,"");if(!m)throw new we({url:t,message:"URL must have a hostname"});if(m==="localhost"||m.endsWith(".local")||m.endsWith(".localhost"))throw new we({url:t,message:`URL with hostname ${m} is not allowed`});if(m.startsWith("[")&&m.endsWith("]")){let y=m.slice(1,-1);if(ep(y))throw new we({url:t,message:`URL with IPv6 address ${m} is not allowed`});return}if(ha(m)){if(ga(m))throw new we({url:t,message:`URL with IP address ${m} is not allowed`});return}}function Bv({address:t,family:p,hostname:m}){if(p===4?!ha(t)||ga(t):p===6?ep(t):!0)throw new we({url:m,message:`Hostname ${m} resolved to disallowed IP address ${t}`})}function ha(t){let p=t.split(".");if(p.length!==4)return!1;return p.every((m)=>{let y=Number(m);return Number.isInteger(y)&&y>=0&&y<=255&&String(y)===m})}function ga(t){let p=t.split(".").map(Number),[m,y,b]=p;if(m===0)return!0;if(m===10)return!0;if(m===100&&y>=64&&y<=127)return!0;if(m===127)return!0;if(m===169&&y===254)return!0;if(m===172&&y>=16&&y<=31)return!0;if(m===192&&y===0&&b===0)return!0;if(m===192&&y===0&&b===2)return!0;if(m===192&&y===168)return!0;if(m===198&&(y===18||y===19))return!0;if(m===198&&y===51&&b===100)return!0;if(m===203&&y===0&&b===113)return!0;if(m>=224)return!0;return!1}function qv(t){let p=t.toLowerCase(),m=p.indexOf("%");if(m!==-1)p=p.slice(0,m);let y=p.split("::");if(y.length>2)return null;let b=(_)=>{if(_==="")return[];let S=[],E=_.split(":");for(let k=0;k<E.length;k++){let M=E[k];if(M.includes(".")){if(k!==E.length-1||!ha(M))return null;let[R,C,A,j]=M.split(".").map(Number);S.push(R<<8|C,A<<8|j);continue}if(!/^[0-9a-f]{1,4}$/.test(M))return null;S.push(parseInt(M,16))}return S},x=b(y[0]);if(x===null)return null;if(y.length===2){let _=b(y[1]);if(_===null)return null;let S=8-x.length-_.length;if(S<0)return null;return[...x,...Array(S).fill(0),..._]}return x.length===8?x:null}function ep(t){let p=qv(t);if(p===null)return!0;let m=(b)=>p.slice(0,b).every((x)=>x===0);if(m(7)&&(p[7]===0||p[7]===1))return!0;if((p[0]&65024)===64512)return!0;if((p[0]&65472)===65152)return!0;if((p[0]&65472)===65216)return!0;if((p[0]&65280)===65280)return!0;if(p[0]===8193&&p[1]===3512)return!0;if(p[0]===16383&&(p[1]&61440)===0)return!0;if(m(6)||m(5)&&p[5]===65535||m(4)&&p[4]===65535&&p[5]===0||p[0]===100&&p[1]===65435&&p[2]===0&&p[3]===0&&p[4]===0&&p[5]===0||p[0]===100&&p[1]===65435&&p[2]===1){let b=p[6]>>8&255,x=p[6]&255,_=p[7]>>8&255,S=p[7]&255;return ga(`${b}.${x}.${_}.${S}`)}return!1}function Wv(t){return(p,m,y)=>{t(p,{...m,all:!0},(b,x)=>{if(b){y(b);return}try{let[_]=x;if(_==null)throw Error(`Hostname ${p} did not resolve to an address`);for(let{address:S,family:E}of x)Bv({address:S,family:E,hostname:p});if(m.all===!0)y(null,x);else y(null,_.address,_.family)}catch(_){y(_ instanceof Error?_:Error(String(_)))}})}}var ua,tp=globalThis.fetch,Vv=Kv(tp);function Gv(){var t,p;let m=globalThis.process;return((t=m==null?void 0:m.release)==null?void 0:t.name)==="node"&&((p=m.versions)==null?void 0:p.bun)==null}async function Jv(){if(!Gv()||!Vv||globalThis.fetch!==tp)return globalThis.fetch;return ua!=null?ua:ua=Promise.resolve().then(Hv)}function Kv(t){if(typeof t!=="function")return!1;let p=Function.prototype.toString.call(t);return p.includes("internal/deps/undici")||p.includes("lazy loading of undici")}function Hv(){let{createRequire:t}=Vd("node:module"),{lookup:p}=Vd("node:dns"),{Agent:m,fetch:y}=t(rp())("undici"),b=new m({connect:{lookup:Wv(p)}});return(x,_)=>y(x,{..._,dispatcher:b})}function Vd(t){var p;let m=globalThis.process,y=(p=m==null?void 0:m.getBuiltinModule)==null?void 0:p.call(m,t);if(y==null)throw Error(`Node.js built-in module ${t} is unavailable`);return y}function rp(){let t=Error.prepareStackTrace;try{Error.prepareStackTrace=(b,x)=>x;let p=Error("Capture current module path");Error.captureStackTrace(p,rp);let[m]=p.stack,y=m==null?void 0:m.getFileName();if(y==null)throw Error("Unable to determine the current module path");return y}finally{Error.prepareStackTrace=t}}var Yv=["connection","keep-alive","te","trailer","transfer-encoding","upgrade","host","forwarded","proxy-authorization","via","x-forwarded-for","x-forwarded-host","x-forwarded-proto","x-real-ip","metadata","metadata-flavor","x-aws-ec2-metadata-token","x-metadata-token","cookie","set-cookie"];function Xv(t){let p=new Headers(t);for(let m of Yv)p.delete(m);return p}var Qv=10,ey=new Set([301,302,303,307,308]);async function np({url:t,headers:p,abortSignal:m,maxRedirects:y=Qv,fetch:b,trustedOrigin:x}){let _=p===void 0?void 0:Xv(p),S=(k)=>{let M={signal:m,redirect:k};if(_!==void 0)M.headers=new Headers(_);return M},E=t;for(let k=0;k<=y;k++){let M=x!==void 0&&Wd(E,x);if(!M)Fv(E);let R=b!=null?b:M?globalThis.fetch:await Jv(),C=await R(E,S("manual"));if(C.type==="opaqueredirect"){if(!Lv())throw new we({url:t,message:`Redirect from ${E} could not be validated and was blocked`});return await R(E,S("follow"))}let A=C.headers.get("location");if(ey.has(C.status)&&A){await _n(C);let j=new URL(A,E).toString();if(_!==void 0&&!Wd(j,E)){let P=_.get("user-agent");_=new Headers(P==null?void 0:{"user-agent":P})}E=j;continue}return C}throw new we({url:t,message:`Too many redirects (max ${y})`})}var va=2147483648;async function op({response:t,url:p,maxBytes:m=va}){let y=t.headers.get("content-length");if(y!=null){let M=parseInt(y,10);if(!isNaN(M)&&M>m)throw await _n(t),new we({url:p,message:`Download of ${p} exceeded maximum size of ${m} bytes (Content-Length: ${M}).`})}let b=t.body;if(b==null)return new Uint8Array(0);let x=b.getReader(),_=[],S=0;try{while(!0){let{done:M,value:R}=await x.read();if(M)break;if(S+=R.length,S>m)throw new we({url:p,message:`Download of ${p} exceeded maximum size of ${m} bytes.`});_.push(R)}}finally{try{await x.cancel()}catch(M){}finally{x.releaseLock()}}let E=new Uint8Array(S),k=0;for(let M of _)E.set(M,k),k+=M.length;return E}var de=({prefix:t,size:p=16,alphabet:m="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",separator:y="-"}={})=>{let b=()=>{let x=m.length,_=Array(p);for(let S=0;S<p;S++)_[S]=m[Math.random()*x|0];return _.join("")};if(t==null)return b;if(m.includes(y))throw new bi({argument:"separator",message:`The separator "${y}" must not be part of the alphabet "${m}".`});return()=>`${t}${y}${b()}`},Jt=de();function ap(t=globalThis){var p,m,y;if(t.window)return"runtime/browser";if((p=t.navigator)==null?void 0:p.userAgent)return`runtime/${t.navigator.userAgent.toLowerCase()}`;if((y=(m=t.process)==null?void 0:m.versions)==null?void 0:y.node)return`runtime/node.js/${t.process.version.substring(0)}`;if(t.EdgeRuntime)return"runtime/vercel-edge";return"runtime/unknown"}function ty(t){if(t==null)return{};let p={};if(t instanceof Headers)t.forEach((m,y)=>{p[y.toLowerCase()]=m});else{if(!Array.isArray(t))t=Object.entries(t);for(let[m,y]of t)if(y!=null)p[m.toLowerCase()]=y}return p}function Kt(t,...p){let m=new Headers(ty(t)),y=m.get("user-agent")||"";return m.set("user-agent",[y,...p].filter(Boolean).join(" ")),Object.fromEntries(m.entries())}function sp(t){var p,m;return(m=(p=globalThis.Buffer)==null?void 0:p.isBuffer(t))!=null?m:!1}function ip(t){return t!=null}var ry=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,ny=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/;function Gd(t){let p=JSON.parse(t);if(p===null||typeof p!=="object")return p;if(ry.test(t)===!1&&ny.test(t)===!1)return p;return oy(p)}function oy(t){let p=[t];while(p.length){let m=p;p=[];for(let y of m){if(Object.prototype.hasOwnProperty.call(y,"__proto__"))throw SyntaxError("Object contains forbidden prototype property");if(Object.prototype.hasOwnProperty.call(y,"constructor")&&y.constructor!==null&&typeof y.constructor==="object"&&Object.prototype.hasOwnProperty.call(y.constructor,"prototype"))throw SyntaxError("Object contains forbidden prototype property");for(let b in y){let x=y[b];if(x&&typeof x==="object")p.push(x)}}}return t}function ay(t){let{stackTraceLimit:p}=Error;try{Error.stackTraceLimit=0}catch(m){return Gd(t)}try{return Gd(t)}finally{Error.stackTraceLimit=p}}function ya(t){if(t.type==="object"||Array.isArray(t.type)&&t.type.includes("object")){let{additionalProperties:m}=t;t.additionalProperties=m!=null&&typeof m!=="boolean"?dt(m):!1;let{properties:y}=t;if(y!=null)for(let b of Object.keys(y))y[b]=dt(y[b])}if(t.items!=null)t.items=Array.isArray(t.items)?t.items.map(dt):dt(t.items);if(t.anyOf!=null)t.anyOf=t.anyOf.map(dt);if(t.allOf!=null)t.allOf=t.allOf.map(dt);if(t.oneOf!=null)t.oneOf=t.oneOf.map(dt);let{definitions:p}=t;if(p!=null)for(let m of Object.keys(p))p[m]=dt(p[m]);return t}function dt(t){if(typeof t==="boolean")return t;return ya(t)}var sy=Symbol("Let zodToJsonSchema decide on which parser to use"),Jd={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",strictUnions:!1,definitions:{},errorMessages:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref"},iy=(t)=>typeof t==="string"?{...Jd,name:t}:{...Jd,...t};function $e(){return{}}function ly(t,p){var m,y,b;let x={type:"array"};if(((m=t.type)==null?void 0:m._def)&&((b=(y=t.type)==null?void 0:y._def)==null?void 0:b.typeName)!=="ZodAny")x.items=re(t.type._def,{...p,currentPath:[...p.currentPath,"items"]});if(t.minLength)x.minItems=t.minLength.value;if(t.maxLength)x.maxItems=t.maxLength.value;if(t.exactLength)x.minItems=t.exactLength.value,x.maxItems=t.exactLength.value;return x}function cy(t){let p={type:"integer",format:"int64"};if(!t.checks)return p;for(let m of t.checks)switch(m.kind){case"min":if(m.inclusive)p.minimum=m.value;else p.exclusiveMinimum=m.value;break;case"max":if(m.inclusive)p.maximum=m.value;else p.exclusiveMaximum=m.value;break;case"multipleOf":p.multipleOf=m.value;break}return p}function uy(){return{type:"boolean"}}function lp(t,p){return re(t.type._def,p)}var dy=(t,p)=>re(t.innerType._def,p);function cp(t,p,m){let y=m!=null?m:p.dateStrategy;if(Array.isArray(y))return{anyOf:y.map((b)=>cp(t,p,b))};switch(y){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":return py(t)}}var py=(t)=>{let p={type:"integer",format:"unix-time"};for(let m of t.checks)switch(m.kind){case"min":p.minimum=m.value;break;case"max":p.maximum=m.value;break}return p};function fy(t,p){return{...re(t.innerType._def,p),default:t.defaultValue()}}function my(t,p){return p.effectStrategy==="input"?re(t.schema._def,p):$e()}function hy(t){return{type:"string",enum:Array.from(t.values)}}var gy=(t)=>{if("type"in t&&t.type==="string")return!1;return"allOf"in t};function vy(t,p){let m=[re(t.left._def,{...p,currentPath:[...p.currentPath,"allOf","0"]}),re(t.right._def,{...p,currentPath:[...p.currentPath,"allOf","1"]})].filter((b)=>!!b),y=[];return m.forEach((b)=>{if(gy(b))y.push(...b.allOf);else{let x=b;if("additionalProperties"in b&&b.additionalProperties===!1){let{additionalProperties:_,...S}=b;x=S}y.push(x)}}),y.length?{allOf:y}:void 0}function yy(t){let p=typeof t.value;if(p!=="bigint"&&p!=="number"&&p!=="boolean"&&p!=="string")return{type:Array.isArray(t.value)?"array":"object"};return{type:p==="bigint"?"integer":p,const:t.value}}var da=void 0,De={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>{if(da===void 0)da=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u");return da},uuid:/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/,ipv4:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ipv4Cidr:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ipv6:/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,ipv6Cidr:/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function up(t,p){let m={type:"string"};if(t.checks)for(let y of t.checks)switch(y.kind){case"min":m.minLength=typeof m.minLength==="number"?Math.max(m.minLength,y.value):y.value;break;case"max":m.maxLength=typeof m.maxLength==="number"?Math.min(m.maxLength,y.value):y.value;break;case"email":switch(p.emailStrategy){case"format:email":Ue(m,"email",y.message,p);break;case"format:idn-email":Ue(m,"idn-email",y.message,p);break;case"pattern:zod":be(m,De.email,y.message,p);break}break;case"url":Ue(m,"uri",y.message,p);break;case"uuid":Ue(m,"uuid",y.message,p);break;case"regex":be(m,y.regex,y.message,p);break;case"cuid":be(m,De.cuid,y.message,p);break;case"cuid2":be(m,De.cuid2,y.message,p);break;case"startsWith":be(m,RegExp(`^${pa(y.value,p)}`),y.message,p);break;case"endsWith":be(m,RegExp(`${pa(y.value,p)}$`),y.message,p);break;case"datetime":Ue(m,"date-time",y.message,p);break;case"date":Ue(m,"date",y.message,p);break;case"time":Ue(m,"time",y.message,p);break;case"duration":Ue(m,"duration",y.message,p);break;case"length":m.minLength=typeof m.minLength==="number"?Math.max(m.minLength,y.value):y.value,m.maxLength=typeof m.maxLength==="number"?Math.min(m.maxLength,y.value):y.value;break;case"includes":{be(m,RegExp(pa(y.value,p)),y.message,p);break}case"ip":{if(y.version!=="v6")Ue(m,"ipv4",y.message,p);if(y.version!=="v4")Ue(m,"ipv6",y.message,p);break}case"base64url":be(m,De.base64url,y.message,p);break;case"jwt":be(m,De.jwt,y.message,p);break;case"cidr":{if(y.version!=="v6")be(m,De.ipv4Cidr,y.message,p);if(y.version!=="v4")be(m,De.ipv6Cidr,y.message,p);break}case"emoji":be(m,De.emoji(),y.message,p);break;case"ulid":{be(m,De.ulid,y.message,p);break}case"base64":{switch(p.base64Strategy){case"format:binary":{Ue(m,"binary",y.message,p);break}case"contentEncoding:base64":{m.contentEncoding="base64";break}case"pattern:zod":{be(m,De.base64,y.message,p);break}}break}case"nanoid":be(m,De.nanoid,y.message,p);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return m}function pa(t,p){return p.patternStrategy==="escape"?wy(t):t}var by=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function wy(t){let p="";for(let m=0;m<t.length;m++){if(!by.has(t[m]))p+="\\";p+=t[m]}return p}function Ue(t,p,m,y){var b;if(t.format||((b=t.anyOf)==null?void 0:b.some((x)=>x.format))){if(!t.anyOf)t.anyOf=[];if(t.format)t.anyOf.push({format:t.format}),delete t.format;t.anyOf.push({format:p,...m&&y.errorMessages&&{errorMessage:{format:m}}})}else t.format=p}function be(t,p,m,y){var b;if(t.pattern||((b=t.allOf)==null?void 0:b.some((x)=>x.pattern))){if(!t.allOf)t.allOf=[];if(t.pattern)t.allOf.push({pattern:t.pattern}),delete t.pattern;t.allOf.push({pattern:Kd(p,y),...m&&y.errorMessages&&{errorMessage:{pattern:m}}})}else t.pattern=Kd(p,y)}function Kd(t,p){var m;if(!p.applyRegexFlags||!t.flags)return t.source;let y={i:t.flags.includes("i"),m:t.flags.includes("m"),s:t.flags.includes("s")},b=y.i?t.source.toLowerCase():t.source,x="",_=!1,S=!1,E=!1;for(let k=0;k<b.length;k++){if(_){x+=b[k],_=!1;continue}if(y.i){if(S){if(b[k].match(/[a-z]/)){if(E)x+=b[k],x+=`${b[k-2]}-${b[k]}`.toUpperCase(),E=!1;else if(b[k+1]==="-"&&((m=b[k+2])==null?void 0:m.match(/[a-z]/)))x+=b[k],E=!0;else x+=`${b[k]}${b[k].toUpperCase()}`;continue}}else if(b[k].match(/[a-z]/)){x+=`[${b[k]}${b[k].toUpperCase()}]`;continue}}if(y.m){if(b[k]==="^"){x+=`(^|(?<=[\r
|
|
131
|
-
]))`;continue}else if(
|
|
132
|
-
]))`;continue}}if(
|
|
133
|
-
`:`[${
|
|
134
|
-
]`;continue}if(x+=b[k],b[k]==="\\")_=!0;else if(S&&b[k]==="]")S=!1;else if(!S&&b[k]==="[")S=!0}try{new RegExp(x)}catch(k){return console.warn(`Could not convert regex pattern at ${p.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),t.source}return x}function dp(t,p){var m,y,b,x,_,S;let E={type:"object",additionalProperties:(m=re(t.valueType._def,{...p,currentPath:[...p.currentPath,"additionalProperties"]}))!=null?m:p.allowedAdditionalProperties};if(((y=t.keyType)==null?void 0:y._def.typeName)==="ZodString"&&((b=t.keyType._def.checks)==null?void 0:b.length)){let{type:k,...M}=up(t.keyType._def,p);return{...E,propertyNames:M}}else if(((x=t.keyType)==null?void 0:x._def.typeName)==="ZodEnum")return{...E,propertyNames:{enum:t.keyType._def.values}};else if(((_=t.keyType)==null?void 0:_._def.typeName)==="ZodBranded"&&t.keyType._def.type._def.typeName==="ZodString"&&((S=t.keyType._def.type._def.checks)==null?void 0:S.length)){let{type:k,...M}=lp(t.keyType._def,p);return{...E,propertyNames:M}}return E}function xy(t,p){if(p.mapStrategy==="record")return dp(t,p);let m=re(t.keyType._def,{...p,currentPath:[...p.currentPath,"items","items","0"]})||$e(),y=re(t.valueType._def,{...p,currentPath:[...p.currentPath,"items","items","1"]})||$e();return{type:"array",maxItems:125,items:{type:"array",items:[m,y],minItems:2,maxItems:2}}}function _y(t){let p=t.values,y=Object.keys(t.values).filter((x)=>typeof p[p[x]]!=="number").map((x)=>p[x]),b=Array.from(new Set(y.map((x)=>typeof x)));return{type:b.length===1?b[0]==="string"?"string":"number":["string","number"],enum:y}}function Sy(){return{not:$e()}}function Iy(){return{type:"null"}}var fa={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function Ty(t,p){let m=t.options instanceof Map?Array.from(t.options.values()):t.options;if(m.every((y)=>(y._def.typeName in fa)&&(!y._def.checks||!y._def.checks.length))){let y=m.reduce((b,x)=>{let _=fa[x._def.typeName];return _&&!b.includes(_)?[...b,_]:b},[]);return{type:y.length>1?y:y[0]}}else if(m.every((y)=>y._def.typeName==="ZodLiteral"&&!y.description)){let y=m.reduce((b,x)=>{let _=typeof x._def.value;switch(_){case"string":case"number":case"boolean":return[...b,_];case"bigint":return[...b,"integer"];case"object":if(x._def.value===null)return[...b,"null"];case"symbol":case"undefined":case"function":default:return b}},[]);if(y.length===m.length){let b=y.filter((x,_,S)=>S.indexOf(x)===_);return{type:b.length>1?b:b[0],enum:m.reduce((x,_)=>x.includes(_._def.value)?x:[...x,_._def.value],[])}}}else if(m.every((y)=>y._def.typeName==="ZodEnum"))return{type:"string",enum:m.reduce((y,b)=>[...y,...b._def.values.filter((x)=>!y.includes(x))],[])};return Ey(t,p)}var Ey=(t,p)=>{let m=(t.options instanceof Map?Array.from(t.options.values()):t.options).map((y,b)=>re(y._def,{...p,currentPath:[...p.currentPath,"anyOf",`${b}`]})).filter((y)=>!!y&&(!p.strictUnions||typeof y==="object"&&Object.keys(y).length>0));return m.length?{anyOf:m}:void 0};function ky(t,p){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(t.innerType._def.typeName)&&(!t.innerType._def.checks||!t.innerType._def.checks.length))return{type:[fa[t.innerType._def.typeName],"null"]};let m=re(t.innerType._def,{...p,currentPath:[...p.currentPath,"anyOf","0"]});return m&&{anyOf:[m,{type:"null"}]}}function $y(t){let p={type:"number"};if(!t.checks)return p;for(let m of t.checks)switch(m.kind){case"int":p.type="integer";break;case"min":if(m.inclusive)p.minimum=m.value;else p.exclusiveMinimum=m.value;break;case"max":if(m.inclusive)p.maximum=m.value;else p.exclusiveMaximum=m.value;break;case"multipleOf":p.multipleOf=m.value;break}return p}function My(t,p){let m={type:"object",properties:{}},y=[],b=t.shape();for(let _ in b){let S=b[_];if(S===void 0||S._def===void 0)continue;let E=Cy(S),k=re(S._def,{...p,currentPath:[...p.currentPath,"properties",_],propertyPath:[...p.currentPath,"properties",_]});if(k===void 0)continue;if(m.properties[_]=k,!E)y.push(_)}if(y.length)m.required=y;let x=Ry(t,p);if(x!==void 0)m.additionalProperties=x;return m}function Ry(t,p){if(t.catchall._def.typeName!=="ZodNever")return re(t.catchall._def,{...p,currentPath:[...p.currentPath,"additionalProperties"]});switch(t.unknownKeys){case"passthrough":return p.allowedAdditionalProperties;case"strict":return p.rejectedAdditionalProperties;case"strip":return p.removeAdditionalStrategy==="strict"?p.allowedAdditionalProperties:p.rejectedAdditionalProperties}}function Cy(t){try{return t.isOptional()}catch(p){return!0}}var Ay=(t,p)=>{var m;if(p.currentPath.toString()===((m=p.propertyPath)==null?void 0:m.toString()))return re(t.innerType._def,p);let y=re(t.innerType._def,{...p,currentPath:[...p.currentPath,"anyOf","1"]});return y?{anyOf:[{not:$e()},y]}:$e()},Oy=(t,p)=>{if(p.pipeStrategy==="input")return re(t.in._def,p);else if(p.pipeStrategy==="output")return re(t.out._def,p);let m=re(t.in._def,{...p,currentPath:[...p.currentPath,"allOf","0"]}),y=re(t.out._def,{...p,currentPath:[...p.currentPath,"allOf",m?"1":"0"]});return{allOf:[m,y].filter((b)=>b!==void 0)}};function Py(t,p){return re(t.type._def,p)}function Ny(t,p){let y={type:"array",uniqueItems:!0,items:re(t.valueType._def,{...p,currentPath:[...p.currentPath,"items"]})};if(t.minSize)y.minItems=t.minSize.value;if(t.maxSize)y.maxItems=t.maxSize.value;return y}function jy(t,p){if(t.rest)return{type:"array",minItems:t.items.length,items:t.items.map((m,y)=>re(m._def,{...p,currentPath:[...p.currentPath,"items",`${y}`]})).reduce((m,y)=>y===void 0?m:[...m,y],[]),additionalItems:re(t.rest._def,{...p,currentPath:[...p.currentPath,"additionalItems"]})};else return{type:"array",minItems:t.items.length,maxItems:t.items.length,items:t.items.map((m,y)=>re(m._def,{...p,currentPath:[...p.currentPath,"items",`${y}`]})).reduce((m,y)=>y===void 0?m:[...m,y],[])}}function zy(){return{not:$e()}}function Dy(){return $e()}var Uy=(t,p)=>re(t.innerType._def,p),Zy=(t,p,m)=>{switch(p){case"ZodString":return up(t,m);case"ZodNumber":return $y(t);case"ZodObject":return My(t,m);case"ZodBigInt":return cy(t);case"ZodBoolean":return uy();case"ZodDate":return cp(t,m);case"ZodUndefined":return zy();case"ZodNull":return Iy();case"ZodArray":return ly(t,m);case"ZodUnion":case"ZodDiscriminatedUnion":return Ty(t,m);case"ZodIntersection":return vy(t,m);case"ZodTuple":return jy(t,m);case"ZodRecord":return dp(t,m);case"ZodLiteral":return yy(t);case"ZodEnum":return hy(t);case"ZodNativeEnum":return _y(t);case"ZodNullable":return ky(t,m);case"ZodOptional":return Ay(t,m);case"ZodMap":return xy(t,m);case"ZodSet":return Ny(t,m);case"ZodLazy":return()=>t.getter()._def;case"ZodPromise":return Py(t,m);case"ZodNaN":case"ZodNever":return Sy();case"ZodEffects":return my(t,m);case"ZodAny":return $e();case"ZodUnknown":return Dy();case"ZodDefault":return fy(t,m);case"ZodBranded":return lp(t,m);case"ZodReadonly":return Uy(t,m);case"ZodCatch":return dy(t,m);case"ZodPipeline":return Oy(t,m);case"ZodFunction":case"ZodVoid":case"ZodSymbol":return;default:return((y)=>{return})(p)}},Ly=(t,p)=>{let m=0;for(;m<t.length&&m<p.length;m++)if(t[m]!==p[m])break;return[(t.length-m).toString(),...p.slice(m)].join("/")};function re(t,p,m=!1){var y;let b=p.seen.get(t);if(p.override){let E=(y=p.override)==null?void 0:y.call(p,t,p,b,m);if(E!==sy)return E}if(b&&!m){let E=Fy(b,p);if(E!==void 0)return E}let x={def:t,path:p.currentPath,jsonSchema:void 0};p.seen.set(t,x);let _=Zy(t,t.typeName,p),S=typeof _==="function"?re(_(),p):_;if(S)By(t,p,S);if(p.postProcess){let E=p.postProcess(S,t,p);return x.jsonSchema=S,E}return x.jsonSchema=S,S}var Fy=(t,p)=>{switch(p.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:Ly(p.currentPath,t.path)};case"none":case"seen":{if(t.path.length<p.currentPath.length&&t.path.every((m,y)=>p.currentPath[y]===m))return console.warn(`Recursive reference detected at ${p.currentPath.join("/")}! Defaulting to any`),$e();return p.$refStrategy==="seen"?$e():void 0}}},By=(t,p,m)=>{if(t.description)m.description=t.description;return m},qy=(t)=>{let p=iy(t),m=p.name!==void 0?[...p.basePath,p.definitionPath,p.name]:p.basePath;return{...p,currentPath:m,propertyPath:void 0,seen:new Map(Object.entries(p.definitions).map(([y,b])=>[b._def,{def:b._def,path:[...p.basePath,p.definitionPath,y],jsonSchema:void 0}]))}},Wy=(t,p)=>{var m;let y=qy(p),b=typeof p==="object"&&p.definitions?Object.entries(p.definitions).reduce((k,[M,R])=>{var C;return{...k,[M]:(C=re(R._def,{...y,currentPath:[...y.basePath,y.definitionPath,M]},!0))!=null?C:$e()}},{}):void 0,x=typeof p==="string"?p:(p==null?void 0:p.nameStrategy)==="title"?void 0:p==null?void 0:p.name,_=(m=re(t._def,x===void 0?y:{...y,currentPath:[...y.basePath,y.definitionPath,x]},!1))!=null?m:$e(),S=typeof p==="object"&&p.name!==void 0&&p.nameStrategy==="title"?p.name:void 0;if(S!==void 0)_.title=S;let E=x===void 0?b?{..._,[y.definitionPath]:b}:_:{$ref:[...y.$refStrategy==="relative"?[]:y.basePath,y.definitionPath,x].join("/"),[y.definitionPath]:{...b,[x]:_}};return E.$schema="http://json-schema.org/draft-07/schema#",E},ma=Symbol.for("vercel.ai.schema");function Sn(t){let p;return()=>{if(p==null)p=t();return p}}function Cr(t,{validate:p}={}){return{[ma]:!0,_type:void 0,get jsonSchema(){if(typeof t==="function")t=t();return t},validate:p}}function Vy(t){return typeof t==="object"&&t!==null&&ma in t&&t[ma]===!0&&"jsonSchema"in t&&"validate"in t}function Ar(t){return t==null?Cr({type:"object",properties:{},additionalProperties:!1}):Vy(t)?t:("~standard"in t)?t["~standard"].vendor==="zod"?Ht(t):Gy(t):t()}function Gy(t){return Cr(()=>{if(!Jy(t))throw Error(`Standard schema vendor '${t["~standard"].vendor}' does not support JSON Schema conversion.`);return ya(t["~standard"].jsonSchema.input({target:"draft-07"}))},{validate:async(p)=>{let m=await t["~standard"].validate(p);return"value"in m?{success:!0,value:m.value}:{success:!1,error:new Fe({value:p,cause:m.issues})}}})}function Jy(t){return t["~standard"].jsonSchema!=null}function Ky(t,p){var m;let y=(m=p==null?void 0:p.useReferences)!=null?m:!1;return Cr(()=>Wy(t,{$refStrategy:y?"root":"none"}),{validate:async(b)=>{let x=await t.safeParseAsync(b);return x.success?{success:!0,value:x.data}:{success:!1,error:x.error}}})}function Hy(t,p){var m;let y=(m=p==null?void 0:p.useReferences)!=null?m:!1;return Cr(()=>ya(ra(t,{target:"draft-7",io:"input",reused:y?"ref":"inline"})),{validate:async(b)=>{let x=await wn(t,b);return x.success?{success:!0,value:x.data}:{success:!1,error:x.error}}})}function Yy(t){return"_zod"in t}function Ht(t,p){if(Yy(t))return Hy(t,p);else return Ky(t,p)}async function In({value:t,schema:p,context:m}){let y=await Yt({value:t,schema:p,context:m});if(!y.success)throw Fe.wrap({value:t,cause:y.error,context:m});return y.value}async function Yt({value:t,schema:p,context:m}){let y=Ar(p);try{if(y.validate==null)return{success:!0,value:t,rawValue:t};let b=await y.validate(t);if(b.success)return{success:!0,value:b.value,rawValue:t};return{success:!1,error:Fe.wrap({value:t,cause:b.error,context:m}),rawValue:t}}catch(b){return{success:!1,error:Fe.wrap({value:t,cause:b,context:m}),rawValue:t}}}async function pt({text:t,schema:p}){try{let m=ay(t);if(p==null)return{success:!0,value:m,rawValue:m};return await Yt({value:m,schema:p})}catch(m){return{success:!1,error:to.isInstance(m)?m:new to({text:t,cause:m}),rawValue:void 0}}}async function ba(t){if(typeof t==="function")t=t();return Promise.resolve(t)}var pp="AI_SerializationError",fp=`vercel.ai.error.${pp}`,Xy=Symbol.for(fp),Hd,Yd,y0=class extends(Yd=W,Hd=Xy,Yd){constructor({message:t="Failed to serialize value.",cause:p}={}){super({name:pp,message:t,cause:p});this[Hd]=!0}static isInstance(t){return W.hasMarker(t,fp)}};var tb=Object.defineProperty,rb=(t,p)=>{for(var m in p)tb(t,m,{get:p[m],enumerable:!0})},nb="AI_InvalidArgumentError",ob=`vercel.ai.error.${nb}`,ab=Symbol.for(ob),sb;sb=ab;var ib="AI_InvalidStreamPartError",lb=`vercel.ai.error.${ib}`,cb=Symbol.for(lb),ub;ub=cb;var db="AI_InvalidToolApprovalError",pb=`vercel.ai.error.${db}`,fb=Symbol.for(pb),mb;mb=fb;var hb="AI_InvalidToolApprovalSignatureError",gb=`vercel.ai.error.${hb}`,vb=Symbol.for(gb),yb;yb=vb;var bb="AI_InvalidToolInputError",wb=`vercel.ai.error.${bb}`,xb=Symbol.for(wb),_b;_b=xb;var Sb="AI_ToolCallNotFoundForApprovalError",Ib=`vercel.ai.error.${Sb}`,Tb=Symbol.for(Ib),Eb;Eb=Tb;var kb="AI_MissingToolResultsError",$b=`vercel.ai.error.${kb}`,Mb=Symbol.for($b),Rb;Rb=Mb;var Cb="AI_NoImageGeneratedError",Ab=`vercel.ai.error.${Cb}`,Ob=Symbol.for(Ab),Pb;Pb=Ob;var wp="AI_NoObjectGeneratedError",xp=`vercel.ai.error.${wp}`,Nb=Symbol.for(xp),_p,ht=class extends W{constructor({message:t="No object generated.",cause:p,text:m,response:y,usage:b,finishReason:x}){super({name:wp,message:t,cause:p});this[_p]=!0,this.text=m,this.response=y,this.usage=b,this.finishReason=x}static isInstance(t){return W.hasMarker(t,xp)}};_p=Nb;var jb="AI_NoOutputGeneratedError",zb=`vercel.ai.error.${jb}`,Db=Symbol.for(zb),Ub;Ub=Db;var Zb="AI_NoSpeechGeneratedError",Lb=`vercel.ai.error.${Zb}`,Fb=Symbol.for(Lb),Bb;Bb=Fb;var qb="AI_NoTranscriptGeneratedError",Wb=`vercel.ai.error.${qb}`,Vb=Symbol.for(Wb),Gb;Gb=Vb;var Jb="AI_NoTranslationGeneratedError",Kb=`vercel.ai.error.${Jb}`,Hb=Symbol.for(Kb),Yb;Yb=Hb;var Xb="AI_NoVideoGeneratedError",Qb=`vercel.ai.error.${Xb}`,ew=Symbol.for(Qb),tw;tw=ew;var rw="AI_NoSuchToolError",nw=`vercel.ai.error.${rw}`,ow=Symbol.for(nw),aw;aw=ow;var sw="AI_ToolCallRepairError",iw=`vercel.ai.error.${sw}`,lw=Symbol.for(iw),cw;cw=lw;var Sp="AI_UIMessageStreamError",Ip=`vercel.ai.error.${Sp}`,uw=Symbol.for(Ip),Tp,kt=class extends W{constructor({chunkType:t,chunkId:p,message:m}){super({name:Sp,message:m});this[Tp]=!0,this.chunkType=t,this.chunkId=p}static isInstance(t){return W.hasMarker(t,Ip)}};Tp=uw;var dw="AI_InvalidDataContentError",pw=`vercel.ai.error.${dw}`,fw=Symbol.for(pw),mw;mw=fw;var hw="AI_InvalidMessageRoleError",gw=`vercel.ai.error.${hw}`,vw=Symbol.for(gw),yw;yw=vw;var Ep="AI_MessageConversionError",kp=`vercel.ai.error.${Ep}`,bw=Symbol.for(kp),$p,ww=class extends W{constructor({originalMessage:t,message:p}){super({name:Ep,message:p});this[$p]=!0,this.originalMessage=t}static isInstance(t){return W.hasMarker(t,kp)}};$p=bw;var xw="AI_RetryError",_w=`vercel.ai.error.${xw}`,Sw=Symbol.for(_w),Iw;Iw=Sw;var Tw="7.0.77",Ew=async({url:t,maxBytes:p,abortSignal:m})=>{var y;let b=t.toString();try{let x=Kt({},`ai-sdk/${Tw}`,ap()),_=await np({url:b,headers:x,abortSignal:m});if(!_.ok)throw await _n(_),new we({url:b,statusCode:_.status,statusText:_.statusText});return{data:await op({response:_,url:b,maxBytes:p!=null?p:va}),mediaType:(y=_.headers.get("content-type"))!=null?y:void 0}}catch(x){if(we.isInstance(x))throw x;throw new we({url:b,cause:x})}};function Mp(t,p){if(t===void 0&&p===void 0)return;if(t===void 0)return p;if(p===void 0)return t;let m={...t};for(let y in p){if(y==="__proto__"||y==="constructor"||y==="prototype")continue;if(Object.prototype.hasOwnProperty.call(p,y)){let b=p[y];if(b===void 0)continue;let x=y in t?t[y]:void 0,_=b!==null&&typeof b==="object"&&!Array.isArray(b)&&!(b instanceof Date)&&!(b instanceof RegExp),S=x!==null&&x!==void 0&&typeof x==="object"&&!Array.isArray(x)&&!(x instanceof Date)&&!(x instanceof RegExp);if(_&&S)m[y]=Mp(x,b);else m[y]=b}}return m}async function mp({toolCallId:t,input:p,output:m,tool:y,errorMode:b}){if(b==="text")return{type:"error-text",value:fr(m)};else if(b==="json")return{type:"error-json",value:hp(m)};if(y==null?void 0:y.toModelOutput)return await y.toModelOutput({toolCallId:t,input:p,output:m});return typeof m==="string"?{type:"text",value:m}:{type:"json",value:hp(m)}}function hp(t){return t===void 0?null:t}var T={array:sa,boolean:Md,custom:Ld,discriminatedUnion:Nd,enum:la,instanceof:Fd,lazy:Zd,literal:zd,looseObject:Od,never:aa,null:Rd,number:$d,object:Ad,record:jd,string:oa,union:ia,unknown:Mr},$t=T.lazy(()=>T.union([T.null(),T.string(),T.number(),T.boolean(),T.record(T.string(),$t.optional()),T.array($t)])),L=T.record(T.string(),T.record(T.string(),$t.optional())),Pr=T.union([T.string(),T.instanceof(Uint8Array),T.instanceof(ArrayBuffer),T.custom(sp,{message:"Must be a Buffer"})]),Ta=T.record(T.string(),T.string()),Rp=T.object({type:T.literal("text"),text:T.string(),providerOptions:L.optional()}),kw=T.object({type:T.literal("image"),image:T.union([Pr,T.instanceof(URL),Ta]),mediaType:T.string().optional(),providerOptions:L.optional()}),Cp=T.discriminatedUnion("type",[T.object({type:T.literal("data"),data:Pr}),T.object({type:T.literal("url"),url:T.instanceof(URL)}),T.object({type:T.literal("reference"),reference:Ta}),T.object({type:T.literal("text"),text:T.string()})]),$w=T.discriminatedUnion("type",[T.object({type:T.literal("data"),data:Pr}),T.object({type:T.literal("url"),url:T.instanceof(URL)})]),Ap=T.object({type:T.literal("file"),data:T.union([Cp,Pr,T.instanceof(URL),Ta]),filename:T.string().optional(),mediaType:T.string(),providerOptions:L.optional()}),Mw=T.object({type:T.literal("reasoning"),text:T.string(),providerOptions:L.optional()}),Rw=T.object({type:T.literal("custom"),kind:T.string().transform((t)=>t),providerOptions:L.optional()}),Cw=T.object({type:T.literal("reasoning-file"),data:T.union([$w,Pr,T.instanceof(URL)]),mediaType:T.string(),providerOptions:L.optional()}),Aw=T.object({type:T.literal("tool-call"),toolCallId:T.string(),toolName:T.string(),input:T.unknown(),providerOptions:L.optional(),providerExecuted:T.boolean().optional()}),Ow=T.discriminatedUnion("type",[T.object({type:T.literal("text"),value:T.string(),providerOptions:L.optional()}),T.object({type:T.literal("json"),value:$t,providerOptions:L.optional()}),T.object({type:T.literal("execution-denied"),reason:T.string().optional(),providerOptions:L.optional()}),T.object({type:T.literal("error-text"),value:T.string(),providerOptions:L.optional()}),T.object({type:T.literal("error-json"),value:$t,providerOptions:L.optional()}),T.object({type:T.literal("content"),value:T.array(T.union([T.object({type:T.literal("text"),text:T.string(),providerOptions:L.optional()}),T.object({type:T.literal("file"),data:Cp,mediaType:T.string(),filename:T.string().optional(),providerOptions:L.optional()}),T.object({type:T.literal("file-data"),data:T.string(),mediaType:T.string(),filename:T.string().optional(),providerOptions:L.optional()}),T.object({type:T.literal("file-url"),url:T.string(),mediaType:T.string().optional(),providerOptions:L.optional()}),T.object({type:T.literal("file-id"),fileId:T.union([T.string(),T.record(T.string(),T.string())]),providerOptions:L.optional()}),T.object({type:T.literal("file-reference"),providerReference:T.record(T.string(),T.string()),providerOptions:L.optional()}),T.object({type:T.literal("image-data"),data:T.string(),mediaType:T.string(),providerOptions:L.optional()}),T.object({type:T.literal("image-url"),url:T.string(),providerOptions:L.optional()}),T.object({type:T.literal("image-file-id"),fileId:T.union([T.string(),T.record(T.string(),T.string())]),providerOptions:L.optional()}),T.object({type:T.literal("image-file-reference"),providerReference:T.record(T.string(),T.string()),providerOptions:L.optional()}),T.object({type:T.literal("custom"),providerOptions:L.optional()})]))})]),Op=T.object({type:T.literal("tool-result"),toolCallId:T.string(),toolName:T.string(),output:Ow,providerOptions:L.optional()}),Pw=T.object({type:T.literal("tool-approval-request"),approvalId:T.string(),toolCallId:T.string()}),Nw=T.object({type:T.literal("tool-approval-response"),approvalId:T.string(),approved:T.boolean(),reason:T.string().optional()}),jw=T.object({role:T.literal("system"),content:T.string(),providerOptions:L.optional()}),zw=T.object({role:T.literal("user"),content:T.union([T.string(),T.array(T.union([Rp,kw,Ap]))]),providerOptions:L.optional()}),Dw=T.object({role:T.literal("assistant"),content:T.union([T.string(),T.array(T.union([Rp,Rw,Ap,Mw,Cw,Aw,Op,Pw]))]),providerOptions:L.optional()}),Uw=T.object({role:T.literal("tool"),content:T.array(T.union([Op,Nw])),providerOptions:L.optional()}),D0=T.union([jw,zw,Dw,Uw]);function gp(t,p){return t!=null&&Object.hasOwn(t,p)?t[p]:void 0}var Zw={};rb(Zw,{array:()=>qw,choice:()=>Ww,json:()=>Vw,object:()=>Bw,text:()=>Fw});function Lw(t){let p=["ROOT"],m=-1,y=null,b=0;function x(M){return M>="0"&&M<="9"||M>="A"&&M<="F"||M>="a"&&M<="f"}function _(M,R,C){switch(M){case'"':{m=R,p.pop(),p.push(C),p.push("INSIDE_STRING");break}case"f":case"t":case"n":{m=R,y=R,p.pop(),p.push(C),p.push("INSIDE_LITERAL");break}case"-":{p.pop(),p.push(C),p.push("INSIDE_NUMBER");break}case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":{m=R,p.pop(),p.push(C),p.push("INSIDE_NUMBER");break}case"{":{m=R,p.pop(),p.push(C),p.push("INSIDE_OBJECT_START");break}case"[":{m=R,p.pop(),p.push(C),p.push("INSIDE_ARRAY_START");break}}}function S(M,R){switch(M){case",":{p.pop(),p.push("INSIDE_OBJECT_AFTER_COMMA");break}case"}":{m=R,p.pop();break}}}function E(M,R){switch(M){case",":{p.pop(),p.push("INSIDE_ARRAY_AFTER_COMMA");break}case"]":{m=R,p.pop();break}}}for(let M=0;M<t.length;M++){let R=t[M];switch(p[p.length-1]){case"ROOT":_(R,M,"FINISH");break;case"INSIDE_OBJECT_START":{switch(R){case'"':{p.pop(),p.push("INSIDE_OBJECT_KEY");break}case"}":{m=M,p.pop();break}}break}case"INSIDE_OBJECT_AFTER_COMMA":{switch(R){case'"':{p.pop(),p.push("INSIDE_OBJECT_KEY");break}}break}case"INSIDE_OBJECT_KEY":{switch(R){case'"':{p.pop(),p.push("INSIDE_OBJECT_AFTER_KEY");break}}break}case"INSIDE_OBJECT_AFTER_KEY":{switch(R){case":":{p.pop(),p.push("INSIDE_OBJECT_BEFORE_VALUE");break}}break}case"INSIDE_OBJECT_BEFORE_VALUE":{_(R,M,"INSIDE_OBJECT_AFTER_VALUE");break}case"INSIDE_OBJECT_AFTER_VALUE":{S(R,M);break}case"INSIDE_STRING":{switch(R){case'"':{p.pop(),m=M;break}case"\\":{p.push("INSIDE_STRING_ESCAPE");break}default:m=M}break}case"INSIDE_ARRAY_START":{switch(R){case"]":{m=M,p.pop();break}default:{m=M,_(R,M,"INSIDE_ARRAY_AFTER_VALUE");break}}break}case"INSIDE_ARRAY_AFTER_VALUE":{switch(R){case",":{p.pop(),p.push("INSIDE_ARRAY_AFTER_COMMA");break}case"]":{m=M,p.pop();break}default:{m=M;break}}break}case"INSIDE_ARRAY_AFTER_COMMA":{_(R,M,"INSIDE_ARRAY_AFTER_VALUE");break}case"INSIDE_STRING_ESCAPE":{if(p.pop(),R==="u")b=0,p.push("INSIDE_STRING_UNICODE_ESCAPE");else m=M;break}case"INSIDE_STRING_UNICODE_ESCAPE":{if(x(R)){if(b++,b===4)p.pop(),m=M}break}case"INSIDE_NUMBER":{switch(R){case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":{m=M;break}case"e":case"E":case"-":case".":break;case",":{if(p.pop(),p[p.length-1]==="INSIDE_ARRAY_AFTER_VALUE")E(R,M);if(p[p.length-1]==="INSIDE_OBJECT_AFTER_VALUE")S(R,M);break}case"}":{if(p.pop(),p[p.length-1]==="INSIDE_OBJECT_AFTER_VALUE")S(R,M);break}case"]":{if(p.pop(),p[p.length-1]==="INSIDE_ARRAY_AFTER_VALUE")E(R,M);break}default:{p.pop();break}}break}case"INSIDE_LITERAL":{let A=t.substring(y,M+1);if(!"false".startsWith(A)&&!"true".startsWith(A)&&!"null".startsWith(A)){if(p.pop(),p[p.length-1]==="INSIDE_OBJECT_AFTER_VALUE")S(R,M);else if(p[p.length-1]==="INSIDE_ARRAY_AFTER_VALUE")E(R,M)}else m=M;break}}}let k=t.slice(0,m+1);for(let M=p.length-1;M>=0;M--)switch(p[M]){case"INSIDE_STRING":{k+='"';break}case"INSIDE_OBJECT_KEY":case"INSIDE_OBJECT_AFTER_KEY":case"INSIDE_OBJECT_AFTER_COMMA":case"INSIDE_OBJECT_START":case"INSIDE_OBJECT_BEFORE_VALUE":case"INSIDE_OBJECT_AFTER_VALUE":{k+="}";break}case"INSIDE_ARRAY_START":case"INSIDE_ARRAY_AFTER_COMMA":case"INSIDE_ARRAY_AFTER_VALUE":{k+="]";break}case"INSIDE_LITERAL":{let C=t.substring(y,t.length);if("true".startsWith(C))k+="true".slice(C.length);else if("false".startsWith(C))k+="false".slice(C.length);else if("null".startsWith(C))k+="null".slice(C.length)}}return k}async function Nr(t){if(t===void 0)return{value:void 0,state:"undefined-input"};let p=await pt({text:t});if(p.success)return{value:p.value,state:"successful-parse"};if(p=await pt({text:Lw(t)}),p.success)return{value:p.value,state:"repaired-parse"};return{value:void 0,state:"failed-parse"}}var Fw=()=>({name:"text",responseFormat:Promise.resolve({type:"text"}),async parseCompleteOutput({text:t}){return t},async parsePartialOutput({text:t}){return{partial:t}},createElementStreamTransform(){return}}),Bw=({schema:t,name:p,description:m})=>{let y=Ar(t);return{name:"object",responseFormat:ba(y.jsonSchema).then((b)=>({type:"json",schema:b,...p!=null&&{name:p},...m!=null&&{description:m}})),async parseCompleteOutput({text:b},x){let _=await pt({text:b});if(!_.success)throw new ht({message:"No object generated: could not parse the response.",cause:_.error,text:b,response:x.response,usage:x.usage,finishReason:x.finishReason});let S=await Yt({value:_.value,schema:y});if(!S.success)throw new ht({message:"No object generated: response did not match schema.",cause:S.error,text:b,response:x.response,usage:x.usage,finishReason:x.finishReason});return S.value},async parsePartialOutput({text:b}){let x=await Nr(b);switch(x.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return{partial:x.value}}},createElementStreamTransform(){return}}},qw=({element:t,name:p,description:m})=>{let y=Ar(t);return{name:"array",responseFormat:ba(y.jsonSchema).then((b)=>{let{$schema:x,definitions:_,$defs:S,...E}=b;return{type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",..._!=null&&{definitions:_},...S!=null&&{$defs:S},type:"object",properties:{elements:{type:"array",items:E}},required:["elements"],additionalProperties:!1},...p!=null&&{name:p},...m!=null&&{description:m}}}),async parseCompleteOutput({text:b},x){let _=await pt({text:b});if(!_.success)throw new ht({message:"No object generated: could not parse the response.",cause:_.error,text:b,response:x.response,usage:x.usage,finishReason:x.finishReason});let S=_.value;if(S==null||typeof S!=="object"||!("elements"in S)||!Array.isArray(S.elements))throw new ht({message:"No object generated: response did not match schema.",cause:new Fe({value:S,cause:"response must be an object with an elements array"}),text:b,response:x.response,usage:x.usage,finishReason:x.finishReason});let E=[];for(let k of S.elements){let M=await Yt({value:k,schema:y});if(!M.success)throw new ht({message:"No object generated: response did not match schema.",cause:M.error,text:b,response:x.response,usage:x.usage,finishReason:x.finishReason});E.push(M.value)}return E},async parsePartialOutput({text:b}){let x=await Nr(b);switch(x.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{let _=x.value;if(_==null||typeof _!=="object"||!("elements"in _)||!Array.isArray(_.elements))return;let S=x.state==="repaired-parse"&&_.elements.length>0?_.elements.slice(0,-1):_.elements,E=[];for(let k of S){let M=await Yt({value:k,schema:y});if(M.success)E.push(M.value)}return{partial:E}}}},createElementStreamTransform(){let b=0;return new TransformStream({transform({partialOutput:x},_){if(x!=null)for(;b<x.length;b++)_.enqueue(x[b])}})}}},Ww=({options:t,name:p,description:m})=>({name:"choice",responseFormat:Promise.resolve({type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",type:"object",properties:{result:{type:"string",enum:t}},required:["result"],additionalProperties:!1},...p!=null&&{name:p},...m!=null&&{description:m}}),async parseCompleteOutput({text:y},b){let x=await pt({text:y});if(!x.success)throw new ht({message:"No object generated: could not parse the response.",cause:x.error,text:y,response:b.response,usage:b.usage,finishReason:b.finishReason});let _=x.value;if(_==null||typeof _!=="object"||!("result"in _)||typeof _.result!=="string"||!t.includes(_.result))throw new ht({message:"No object generated: response did not match schema.",cause:new Fe({value:_,cause:"response must be an object that contains a choice value."}),text:y,response:b.response,usage:b.usage,finishReason:b.finishReason});return _.result},async parsePartialOutput({text:y}){let b=await Nr(y);switch(b.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{let x=b.value;if(x==null||typeof x!=="object"||!("result"in x)||typeof x.result!=="string")return;let _=t.filter((S)=>S.startsWith(x.result));if(b.state==="successful-parse")return _.includes(x.result)?{partial:x.result}:void 0;else return _.length===1?{partial:_[0]}:void 0}}},createElementStreamTransform(){return}}),Vw=({name:t,description:p}={})=>({name:"json",responseFormat:Promise.resolve({type:"json",...t!=null&&{name:t},...p!=null&&{description:p}}),async parseCompleteOutput({text:m},y){let b=await pt({text:m});if(!b.success)throw new ht({message:"No object generated: could not parse the response.",cause:b.error,text:m,response:y.response,usage:y.usage,finishReason:y.finishReason});return b.value},async parsePartialOutput({text:m}){let y=await Nr(m);switch(y.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return y.value===void 0?void 0:{partial:y.value}}},createElementStreamTransform(){return}});var F0=de({prefix:"aitxt",size:24}),B0=de({prefix:"call",size:24});function Pp({stream:t}){return t.pipeThrough(new TransformStream({transform(p,m){if(p.type==="text-delta")m.enqueue(p.text)}}))}var W0=class extends TransformStream{constructor(){super({transform(t,p){p.enqueue(`data: ${JSON.stringify(t)}
|
|
111
|
+
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let s of e.seen.entries()){let i=s[1];if(t===s[0]){a(s);continue}if(e.external){let u=e.external.registry.get(s[0])?.id;if(t!==s[0]&&u){a(s);continue}}if(e.metadataRegistry.get(s[0])?.id){a(s);continue}if(i.cycle){a(s);continue}if(i.count>1){if(e.reused==="ref"){a(s);continue}}}}function vr(e,t){let r=e.seen.get(t);if(!r)throw Error("Unprocessed schema. This is a bug in Zod.");let n=(i)=>{let c=e.seen.get(i);if(c.ref===null)return;let u=c.def??c.schema,d={...u},p=c.ref;if(c.ref=null,p){n(p);let f=e.seen.get(p),y=f.schema;if(y.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0"))u.allOf=u.allOf??[],u.allOf.push(y);else Object.assign(u,y);if(Object.assign(u,d),i._zod.parent===p)for(let x in u){if(x==="$ref"||x==="allOf")continue;if(!(x in d))delete u[x]}if(y.$ref&&f.def)for(let x in u){if(x==="$ref"||x==="allOf")continue;if(x in f.def&&JSON.stringify(u[x])===JSON.stringify(f.def[x]))delete u[x]}}let m=i._zod.parent;if(m&&m!==p){n(m);let f=e.seen.get(m);if(f?.schema.$ref){if(u.$ref=f.schema.$ref,f.def)for(let y in u){if(y==="$ref"||y==="allOf")continue;if(y in f.def&&JSON.stringify(u[y])===JSON.stringify(f.def[y]))delete u[y]}}}e.override({zodSchema:i,jsonSchema:u,path:c.path??[]})};for(let i of[...e.seen.entries()].reverse())n(i[0]);let o={};if(e.target==="draft-2020-12")o.$schema="https://json-schema.org/draft/2020-12/schema";else if(e.target==="draft-07")o.$schema="http://json-schema.org/draft-07/schema#";else if(e.target==="draft-04")o.$schema="http://json-schema.org/draft-04/schema#";else if(e.target==="openapi-3.0");if(e.external?.uri){let i=e.external.registry.get(t)?.id;if(!i)throw Error("Schema is missing an `id` property");o.$id=e.external.uri(i)}Object.assign(o,r.def??r.schema);let a=e.metadataRegistry.get(t)?.id;if(a!==void 0&&o.id===a)delete o.id;let s=e.external?.defs??{};for(let i of e.seen.entries()){let c=i[1];if(c.def&&c.defId){if(c.def.id===c.defId)delete c.def.id;s[c.defId]=c.def}}if(e.external);else if(Object.keys(s).length>0)if(e.target==="draft-2020-12")o.$defs=s;else o.definitions=s;try{let i=JSON.parse(JSON.stringify(o));return Object.defineProperty(i,"~standard",{value:{...t["~standard"],jsonSchema:{input:mr(t,"input",e.processors),output:mr(t,"output",e.processors)}},enumerable:!1,writable:!1}),i}catch(i){throw Error("Error converting schema to JSON.")}}function ne(e,t){let r=t??{seen:new Set};if(r.seen.has(e))return!1;r.seen.add(e);let n=e._zod.def;if(n.type==="transform")return!0;if(n.type==="array")return ne(n.element,r);if(n.type==="set")return ne(n.valueType,r);if(n.type==="lazy")return ne(n.getter(),r);if(n.type==="promise"||n.type==="optional"||n.type==="nonoptional"||n.type==="nullable"||n.type==="readonly"||n.type==="default"||n.type==="prefault")return ne(n.innerType,r);if(n.type==="intersection")return ne(n.left,r)||ne(n.right,r);if(n.type==="record"||n.type==="map")return ne(n.keyType,r)||ne(n.valueType,r);if(n.type==="pipe"){if(e._zod.traits.has("$ZodCodec"))return!0;return ne(n.in,r)||ne(n.out,r)}if(n.type==="object"){for(let o in n.shape)if(ne(n.shape[o],r))return!0;return!1}if(n.type==="union"){for(let o of n.options)if(ne(o,r))return!0;return!1}if(n.type==="tuple"){for(let o of n.items)if(ne(o,r))return!0;if(n.rest&&ne(n.rest,r))return!0;return!1}return!1}var zu=(e,t={})=>(r)=>{let n=hr({...r,processors:t});return L(e,n),gr(n,e),vr(n,e)},mr=(e,t,r={})=>(n)=>{let{libraryOptions:o,target:a}=n??{},s=hr({...o??{},target:a,io:t,processors:r});return L(e,s),gr(s,e),vr(s,e)};var kg={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},Io=(e,t,r,n)=>{let o=r;o.type="string";let{minimum:a,maximum:s,format:i,patterns:c,contentEncoding:u}=e._zod.bag;if(typeof a==="number")o.minLength=a;if(typeof s==="number")o.maxLength=s;if(i){if(o.format=kg[i]??i,o.format==="")delete o.format;if(i==="time")delete o.format}if(u)o.contentEncoding=u;if(c&&c.size>0){let d=[...c];if(d.length===1)o.pattern=d[0].source;else if(d.length>1)o.allOf=[...d.map((p)=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:p.source}))]}},To=(e,t,r,n)=>{let o=r,{minimum:a,maximum:s,format:i,multipleOf:c,exclusiveMaximum:u,exclusiveMinimum:d}=e._zod.bag;if(typeof i==="string"&&i.includes("int"))o.type="integer";else o.type="number";let p=typeof d==="number"&&d>=(a??Number.NEGATIVE_INFINITY),m=typeof u==="number"&&u<=(s??Number.POSITIVE_INFINITY),f=t.target==="draft-04"||t.target==="openapi-3.0";if(p)if(f)o.minimum=d,o.exclusiveMinimum=!0;else o.exclusiveMinimum=d;else if(typeof a==="number")o.minimum=a;if(m)if(f)o.maximum=u,o.exclusiveMaximum=!0;else o.exclusiveMaximum=u;else if(typeof s==="number")o.maximum=s;if(typeof c==="number")o.multipleOf=c},Eo=(e,t,r,n)=>{r.type="boolean"},Du=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("BigInt cannot be represented in JSON Schema")},Uu=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Symbols cannot be represented in JSON Schema")},ko=(e,t,r,n)=>{if(t.target==="openapi-3.0")r.type="string",r.nullable=!0,r.enum=[null];else r.type="null"},Zu=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Undefined cannot be represented in JSON Schema")},Lu=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Void cannot be represented in JSON Schema")},$o=(e,t,r,n)=>{r.not={}},Fu=(e,t,r,n)=>{},Mo=(e,t,r,n)=>{},Bu=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Date cannot be represented in JSON Schema")},Ro=(e,t,r,n)=>{let o=e._zod.def,a=ar(o.entries);if(a.every((s)=>typeof s==="number"))r.type="number";if(a.every((s)=>typeof s==="string"))r.type="string";r.enum=a},Co=(e,t,r,n)=>{let o=e._zod.def,a=[];for(let s of o.values)if(s===void 0){if(t.unrepresentable==="throw")throw Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof s==="bigint")if(t.unrepresentable==="throw")throw Error("BigInt literals cannot be represented in JSON Schema");else a.push(Number(s));else a.push(s);if(a.length===0);else if(a.length===1){let s=a[0];if(r.type=s===null?"null":typeof s,t.target==="draft-04"||t.target==="openapi-3.0")r.enum=[s];else r.const=s}else{if(a.every((s)=>typeof s==="number"))r.type="number";if(a.every((s)=>typeof s==="string"))r.type="string";if(a.every((s)=>typeof s==="boolean"))r.type="boolean";if(a.every((s)=>s===null))r.type="null";r.enum=a}},qu=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("NaN cannot be represented in JSON Schema")},Wu=(e,t,r,n)=>{let o=r,a=e._zod.pattern;if(!a)throw Error("Pattern not found in template literal");o.type="string",o.pattern=a.source},Vu=(e,t,r,n)=>{let o=r,a={type:"string",format:"binary",contentEncoding:"binary"},{minimum:s,maximum:i,mime:c}=e._zod.bag;if(s!==void 0)a.minLength=s;if(i!==void 0)a.maxLength=i;if(c)if(c.length===1)a.contentMediaType=c[0],Object.assign(o,a);else Object.assign(o,a),o.anyOf=c.map((u)=>({contentMediaType:u}));else Object.assign(o,a)},Gu=(e,t,r,n)=>{r.type="boolean"},Ao=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Custom types cannot be represented in JSON Schema")},Ju=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Function types cannot be represented in JSON Schema")},Oo=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Transforms cannot be represented in JSON Schema")},Ku=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Map cannot be represented in JSON Schema")},Hu=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Set cannot be represented in JSON Schema")},Po=(e,t,r,n)=>{let o=r,a=e._zod.def,{minimum:s,maximum:i}=e._zod.bag;if(typeof s==="number")o.minItems=s;if(typeof i==="number")o.maxItems=i;o.type="array",o.items=L(a.element,t,{...n,path:[...n.path,"items"]})},No=(e,t,r,n)=>{let o=r,a=e._zod.def;o.type="object",o.properties={};let s=a.shape;for(let u in s)o.properties[u]=L(s[u],t,{...n,path:[...n.path,"properties",u]});let i=new Set(Object.keys(s)),c=new Set([...i].filter((u)=>{let d=a.shape[u]._zod;if(t.io==="input")return d.optin===void 0;else return d.optout===void 0}));if(c.size>0)o.required=Array.from(c);if(a.catchall?._zod.def.type==="never")o.additionalProperties=!1;else if(!a.catchall){if(t.io==="output")o.additionalProperties=!1}else if(a.catchall)o.additionalProperties=L(a.catchall,t,{...n,path:[...n.path,"additionalProperties"]})},zo=(e,t,r,n)=>{let o=e._zod.def,a=o.inclusive===!1,s=o.options.map((i,c)=>L(i,t,{...n,path:[...n.path,a?"oneOf":"anyOf",c]}));if(a)r.oneOf=s;else r.anyOf=s},jo=(e,t,r,n)=>{let o=e._zod.def,a=L(o.left,t,{...n,path:[...n.path,"allOf",0]}),s=L(o.right,t,{...n,path:[...n.path,"allOf",1]}),i=(u)=>("allOf"in u)&&Object.keys(u).length===1,c=[...i(a)?a.allOf:[a],...i(s)?s.allOf:[s]];r.allOf=c},Yu=(e,t,r,n)=>{let o=r,a=e._zod.def;o.type="array";let s=t.target==="draft-2020-12"?"prefixItems":"items",i=t.target==="draft-2020-12"?"items":t.target==="openapi-3.0"?"items":"additionalItems",c=a.items.map((m,f)=>L(m,t,{...n,path:[...n.path,s,f]})),u=a.rest?L(a.rest,t,{...n,path:[...n.path,i,...t.target==="openapi-3.0"?[a.items.length]:[]]}):null;if(t.target==="draft-2020-12"){if(o.prefixItems=c,u)o.items=u}else if(t.target==="openapi-3.0"){if(o.items={anyOf:c},u)o.items.anyOf.push(u);if(o.minItems=c.length,!u)o.maxItems=c.length}else if(o.items=c,u)o.additionalItems=u;let{minimum:d,maximum:p}=e._zod.bag;if(typeof d==="number")o.minItems=d;if(typeof p==="number")o.maxItems=p},Do=(e,t,r,n)=>{let o=r,a=e._zod.def;o.type="object";let s=a.keyType,c=s._zod.bag?.patterns;if(a.mode==="loose"&&c&&c.size>0){let d=L(a.valueType,t,{...n,path:[...n.path,"patternProperties","*"]});o.patternProperties={};for(let p of c)o.patternProperties[p.source]=d}else{if(t.target==="draft-07"||t.target==="draft-2020-12")o.propertyNames=L(a.keyType,t,{...n,path:[...n.path,"propertyNames"]});o.additionalProperties=L(a.valueType,t,{...n,path:[...n.path,"additionalProperties"]})}let u=s._zod.values;if(u){let d=[...u].filter((p)=>typeof p==="string"||typeof p==="number");if(d.length>0)o.required=d}},Uo=(e,t,r,n)=>{let o=e._zod.def,a=L(o.innerType,t,n),s=t.seen.get(e);if(t.target==="openapi-3.0")s.ref=o.innerType,r.nullable=!0;else r.anyOf=[a,{type:"null"}]},Zo=(e,t,r,n)=>{let o=e._zod.def;L(o.innerType,t,n);let a=t.seen.get(e);a.ref=o.innerType},Lo=(e,t,r,n)=>{let o=e._zod.def;L(o.innerType,t,n);let a=t.seen.get(e);a.ref=o.innerType,r.default=JSON.parse(JSON.stringify(o.defaultValue))},Fo=(e,t,r,n)=>{let o=e._zod.def;L(o.innerType,t,n);let a=t.seen.get(e);if(a.ref=o.innerType,t.io==="input")r._prefault=JSON.parse(JSON.stringify(o.defaultValue))},Bo=(e,t,r,n)=>{let o=e._zod.def;L(o.innerType,t,n);let a=t.seen.get(e);a.ref=o.innerType;let s;try{s=o.catchValue(void 0)}catch{throw Error("Dynamic catch values are not supported in JSON Schema")}r.default=s},qo=(e,t,r,n)=>{let o=e._zod.def,a=o.in._zod.traits.has("$ZodTransform"),s=t.io==="input"?a?o.out:o.in:o.out;L(s,t,n);let i=t.seen.get(e);i.ref=s},Wo=(e,t,r,n)=>{let o=e._zod.def;L(o.innerType,t,n);let a=t.seen.get(e);a.ref=o.innerType,r.readOnly=!0},Xu=(e,t,r,n)=>{let o=e._zod.def;L(o.innerType,t,n);let a=t.seen.get(e);a.ref=o.innerType},cn=(e,t,r,n)=>{let o=e._zod.def;L(o.innerType,t,n);let a=t.seen.get(e);a.ref=o.innerType},Vo=(e,t,r,n)=>{let o=e._zod.innerType;L(o,t,n);let a=t.seen.get(e);a.ref=o},ju={string:Io,number:To,boolean:Eo,bigint:Du,symbol:Uu,null:ko,undefined:Zu,void:Lu,never:$o,any:Fu,unknown:Mo,date:Bu,enum:Ro,literal:Co,nan:qu,template_literal:Wu,file:Vu,success:Gu,custom:Ao,function:Ju,transform:Oo,map:Ku,set:Hu,array:Po,object:No,union:zo,intersection:jo,tuple:Yu,record:Do,nullable:Uo,nonoptional:Zo,default:Lo,prefault:Fo,catch:Bo,pipe:qo,readonly:Wo,promise:Xu,optional:cn,lazy:Vo};function Go(e,t){if("_idmap"in e){let n=e,o=hr({...t,processors:ju}),a={};for(let c of n._idmap.entries()){let[u,d]=c;L(d,o)}let s={},i={registry:n,uri:t?.uri,defs:a};o.external=i;for(let c of n._idmap.entries()){let[u,d]=c;gr(o,d),s[u]=vr(o,d)}if(Object.keys(a).length>0){let c=o.target==="draft-2020-12"?"$defs":"definitions";s.__shared={[c]:a}}return{schemas:s}}let r=hr({...t,processors:ju});return L(e,r),gr(r,e),vr(r,e)}var Pg=v("ZodISODateTime",(e,t)=>{mc.init(e,t),W.init(e,t)});function Qu(e){return _u(Pg,e)}var Ng=v("ZodISODate",(e,t)=>{hc.init(e,t),W.init(e,t)});function ed(e){return Su(Ng,e)}var zg=v("ZodISOTime",(e,t)=>{gc.init(e,t),W.init(e,t)});function td(e){return Iu(zg,e)}var jg=v("ZodISODuration",(e,t)=>{vc.init(e,t),W.init(e,t)});function rd(e){return Tu(jg,e)}var Zg=(e,t)=>{Kr.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:(r)=>Ki(e,r)},flatten:{value:(r)=>Ji(e,r)},addIssue:{value:(r)=>{e.issues.push(r),e.message=JSON.stringify(e.issues,At,2)}},addIssues:{value:(r)=>{e.issues.push(...r),e.message=JSON.stringify(e.issues,At,2)}},isEmpty:{get(){return e.issues.length===0}}})};var fe=v("ZodError",Zg,{Parent:Error});var nd=Hr(fe),od=Yr(fe),ad=cr(fe),dn=ur(fe),sd=Xi(fe),id=Qi(fe),ld=el(fe),cd=tl(fe),ud=rl(fe),dd=nl(fe),pd=ol(fe),fd=al(fe);var md=new WeakMap;function wr(e,t,r){let n=Object.getPrototypeOf(e),o=md.get(n);if(!o)o=new Set,md.set(n,o);if(o.has(t))return;o.add(t);for(let a in r){let s=r[a];Object.defineProperty(n,a,{configurable:!0,enumerable:!1,get(){let i=s.bind(this);return Object.defineProperty(this,a,{configurable:!0,writable:!0,enumerable:!0,value:i}),i},set(i){Object.defineProperty(this,a,{configurable:!0,writable:!0,enumerable:!0,value:i})}})}}var q=v("ZodType",(e,t)=>(F.init(e,t),Object.assign(e["~standard"],{jsonSchema:{input:mr(e,"input"),output:mr(e,"output")}}),e.toJSONSchema=zu(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.parse=(r,n)=>nd(e,r,n,{callee:e.parse}),e.safeParse=(r,n)=>ad(e,r,n),e.parseAsync=async(r,n)=>od(e,r,n,{callee:e.parseAsync}),e.safeParseAsync=async(r,n)=>dn(e,r,n),e.spa=e.safeParseAsync,e.encode=(r,n)=>sd(e,r,n),e.decode=(r,n)=>id(e,r,n),e.encodeAsync=async(r,n)=>ld(e,r,n),e.decodeAsync=async(r,n)=>cd(e,r,n),e.safeEncode=(r,n)=>ud(e,r,n),e.safeDecode=(r,n)=>dd(e,r,n),e.safeEncodeAsync=async(r,n)=>pd(e,r,n),e.safeDecodeAsync=async(r,n)=>fd(e,r,n),wr(e,"ZodType",{check(...r){let n=this.def;return this.clone(O.mergeDefs(n,{checks:[...n.checks??[],...r.map((o)=>typeof o==="function"?{_zod:{check:o,def:{check:"custom"},onattach:[]}}:o)]}),{parent:!0})},with(...r){return this.check(...r)},clone(r,n){return Se(this,r,n)},brand(){return this},register(r,n){return r.add(this,n),this},refine(r,n){return this.check(Av(r,n))},superRefine(r,n){return this.check(Ov(r,n))},overwrite(r){return this.check(Ye(r))},optional(){return yd(this)},exactOptional(){return wv(this)},nullable(){return wd(this)},nullish(){return yd(wd(this))},nonoptional(r){return Tv(this,r)},array(){return Yo(this)},or(r){return Xo([this,r])},and(r){return mv(this,r)},transform(r){return bd(this,vv(r))},default(r){return _v(this,r)},prefault(r){return Iv(this,r)},catch(r){return kv(this,r)},pipe(r){return bd(this,r)},readonly(){return Rv(this)},describe(r){let n=this.clone();return ht.add(n,{description:r}),n},meta(...r){if(r.length===0)return ht.get(this);let n=this.clone();return ht.add(n,r[0]),n},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(r){return r(this)}}),Object.defineProperty(e,"description",{get(){return ht.get(e)?.description},configurable:!0}),e)),xd=v("_ZodString",(e,t)=>{rn.init(e,t),q.init(e,t),e._zod.processJSONSchema=(n,o,a)=>Io(e,n,o,a);let r=e._zod.bag;e.format=r.format??null,e.minLength=r.minimum??null,e.maxLength=r.maximum??null,wr(e,"_ZodString",{regex(...n){return this.check(fo(...n))},includes(...n){return this.check(go(...n))},startsWith(...n){return this.check(vo(...n))},endsWith(...n){return this.check(yo(...n))},min(...n){return this.check(Nt(...n))},max(...n){return this.check(sn(...n))},length(...n){return this.check(ln(...n))},nonempty(...n){return this.check(Nt(1,...n))},lowercase(n){return this.check(mo(n))},uppercase(n){return this.check(ho(n))},trim(){return this.check(bo())},normalize(...n){return this.check(wo(...n))},toLowerCase(){return this.check(xo())},toUpperCase(){return this.check(_o())},slugify(){return this.check(So())}})}),Fg=v("ZodString",(e,t)=>{rn.init(e,t),xd.init(e,t),e.email=(r)=>e.check(tu(Bg,r)),e.url=(r)=>e.check(su(qg,r)),e.jwt=(r)=>e.check(xu(av,r)),e.emoji=(r)=>e.check(iu(Wg,r)),e.guid=(r)=>e.check(po(hd,r)),e.uuid=(r)=>e.check(ru(pn,r)),e.uuidv4=(r)=>e.check(nu(pn,r)),e.uuidv6=(r)=>e.check(ou(pn,r)),e.uuidv7=(r)=>e.check(au(pn,r)),e.nanoid=(r)=>e.check(lu(Vg,r)),e.guid=(r)=>e.check(po(hd,r)),e.cuid=(r)=>e.check(cu(Gg,r)),e.cuid2=(r)=>e.check(uu(Jg,r)),e.ulid=(r)=>e.check(du(Kg,r)),e.base64=(r)=>e.check(yu(rv,r)),e.base64url=(r)=>e.check(wu(nv,r)),e.xid=(r)=>e.check(pu(Hg,r)),e.ksuid=(r)=>e.check(fu(Yg,r)),e.ipv4=(r)=>e.check(mu(Xg,r)),e.ipv6=(r)=>e.check(hu(Qg,r)),e.cidrv4=(r)=>e.check(gu(ev,r)),e.cidrv6=(r)=>e.check(vu(tv,r)),e.e164=(r)=>e.check(bu(ov,r)),e.datetime=(r)=>e.check(Qu(r)),e.date=(r)=>e.check(ed(r)),e.time=(r)=>e.check(td(r)),e.duration=(r)=>e.check(rd(r))});function Ko(e){return eu(Fg,e)}var W=v("ZodStringFormat",(e,t)=>{B.init(e,t),xd.init(e,t)}),Bg=v("ZodEmail",(e,t)=>{ac.init(e,t),W.init(e,t)});var hd=v("ZodGUID",(e,t)=>{nc.init(e,t),W.init(e,t)});var pn=v("ZodUUID",(e,t)=>{oc.init(e,t),W.init(e,t)});var qg=v("ZodURL",(e,t)=>{sc.init(e,t),W.init(e,t)});var Wg=v("ZodEmoji",(e,t)=>{ic.init(e,t),W.init(e,t)});var Vg=v("ZodNanoID",(e,t)=>{lc.init(e,t),W.init(e,t)});var Gg=v("ZodCUID",(e,t)=>{cc.init(e,t),W.init(e,t)});var Jg=v("ZodCUID2",(e,t)=>{uc.init(e,t),W.init(e,t)});var Kg=v("ZodULID",(e,t)=>{dc.init(e,t),W.init(e,t)});var Hg=v("ZodXID",(e,t)=>{pc.init(e,t),W.init(e,t)});var Yg=v("ZodKSUID",(e,t)=>{fc.init(e,t),W.init(e,t)});var Xg=v("ZodIPv4",(e,t)=>{yc.init(e,t),W.init(e,t)});var Qg=v("ZodIPv6",(e,t)=>{wc.init(e,t),W.init(e,t)});var ev=v("ZodCIDRv4",(e,t)=>{bc.init(e,t),W.init(e,t)});var tv=v("ZodCIDRv6",(e,t)=>{xc.init(e,t),W.init(e,t)});var rv=v("ZodBase64",(e,t)=>{Sc.init(e,t),W.init(e,t)});var nv=v("ZodBase64URL",(e,t)=>{Ic.init(e,t),W.init(e,t)});var ov=v("ZodE164",(e,t)=>{Tc.init(e,t),W.init(e,t)});var av=v("ZodJWT",(e,t)=>{Ec.init(e,t),W.init(e,t)});var _d=v("ZodNumber",(e,t)=>{lo.init(e,t),q.init(e,t),e._zod.processJSONSchema=(n,o,a)=>To(e,n,o,a),wr(e,"ZodNumber",{gt(n,o){return this.check(on(n,o))},gte(n,o){return this.check(fr(n,o))},min(n,o){return this.check(fr(n,o))},lt(n,o){return this.check(nn(n,o))},lte(n,o){return this.check(pr(n,o))},max(n,o){return this.check(pr(n,o))},int(n){return this.check(gd(n))},safe(n){return this.check(gd(n))},positive(n){return this.check(on(0,n))},nonnegative(n){return this.check(fr(0,n))},negative(n){return this.check(nn(0,n))},nonpositive(n){return this.check(pr(0,n))},multipleOf(n,o){return this.check(an(n,o))},step(n,o){return this.check(an(n,o))},finite(){return this}});let r=e._zod.bag;e.minValue=Math.max(r.minimum??Number.NEGATIVE_INFINITY,r.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(r.maximum??Number.POSITIVE_INFINITY,r.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(r.format??"").includes("int")||Number.isSafeInteger(r.multipleOf??0.5),e.isFinite=!0,e.format=r.format??null});function Sd(e){return Eu(_d,e)}var sv=v("ZodNumberFormat",(e,t)=>{kc.init(e,t),_d.init(e,t)});function gd(e){return ku(sv,e)}var iv=v("ZodBoolean",(e,t)=>{$c.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Eo(e,r,n,o)});function Id(e){return $u(iv,e)}var lv=v("ZodNull",(e,t)=>{Mc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>ko(e,r,n,o)});function Td(e){return Mu(lv,e)}var cv=v("ZodUnknown",(e,t)=>{Rc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Mo(e,r,n,o)});function yr(){return Ru(cv)}var uv=v("ZodNever",(e,t)=>{Cc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>$o(e,r,n,o)});function Ho(e){return Cu(uv,e)}var dv=v("ZodArray",(e,t)=>{Ac.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Po(e,r,n,o),e.element=t.element,wr(e,"ZodArray",{min(r,n){return this.check(Nt(r,n))},nonempty(r){return this.check(Nt(1,r))},max(r,n){return this.check(sn(r,n))},length(r,n){return this.check(ln(r,n))},unwrap(){return this.element}})});function Yo(e,t){return Au(dv,e,t)}var Ed=v("ZodObject",(e,t)=>{Nc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>No(e,r,n,o),O.defineLazy(e,"shape",()=>t.shape),wr(e,"ZodObject",{keyof(){return Qo(Object.keys(this._zod.def.shape))},catchall(r){return this.clone({...this._zod.def,catchall:r})},passthrough(){return this.clone({...this._zod.def,catchall:yr()})},loose(){return this.clone({...this._zod.def,catchall:yr()})},strict(){return this.clone({...this._zod.def,catchall:Ho()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(r){return O.extend(this,r)},safeExtend(r){return O.safeExtend(this,r)},merge(r){return O.merge(this,r)},pick(r){return O.pick(this,r)},omit(r){return O.omit(this,r)},partial(...r){return O.partial(Od,this,r[0])},required(...r){return O.required(Pd,this,r[0])}})});function kd(e,t){let r={type:"object",shape:e??{},...O.normalizeParams(t)};return new Ed(r)}function $d(e,t){return new Ed({type:"object",shape:e,catchall:yr(),...O.normalizeParams(t)})}var Md=v("ZodUnion",(e,t)=>{co.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>zo(e,r,n,o),e.options=t.options});function Xo(e,t){return new Md({type:"union",options:e,...O.normalizeParams(t)})}var pv=v("ZodDiscriminatedUnion",(e,t)=>{Md.init(e,t),zc.init(e,t)});function Rd(e,t,r){return new pv({type:"union",options:t,discriminator:e,...O.normalizeParams(r)})}var fv=v("ZodIntersection",(e,t)=>{jc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>jo(e,r,n,o)});function mv(e,t){return new fv({type:"intersection",left:e,right:t})}var vd=v("ZodRecord",(e,t)=>{Dc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Do(e,r,n,o),e.keyType=t.keyType,e.valueType=t.valueType});function Cd(e,t,r){if(!t||!t._zod)return new vd({type:"record",keyType:Ko(),valueType:e,...O.normalizeParams(t)});return new vd({type:"record",keyType:e,valueType:t,...O.normalizeParams(r)})}var Jo=v("ZodEnum",(e,t)=>{Uc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(n,o,a)=>Ro(e,n,o,a),e.enum=t.entries,e.options=Object.values(t.entries);let r=new Set(Object.keys(t.entries));e.extract=(n,o)=>{let a={};for(let s of n)if(r.has(s))a[s]=t.entries[s];else throw Error(`Key ${s} not found in enum`);return new Jo({...t,checks:[],...O.normalizeParams(o),entries:a})},e.exclude=(n,o)=>{let a={...t.entries};for(let s of n)if(r.has(s))delete a[s];else throw Error(`Key ${s} not found in enum`);return new Jo({...t,checks:[],...O.normalizeParams(o),entries:a})}});function Qo(e,t){let r=Array.isArray(e)?Object.fromEntries(e.map((n)=>[n,n])):e;return new Jo({type:"enum",entries:r,...O.normalizeParams(t)})}var hv=v("ZodLiteral",(e,t)=>{Zc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Co(e,r,n,o),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function Ad(e,t){return new hv({type:"literal",values:Array.isArray(e)?e:[e],...O.normalizeParams(t)})}var gv=v("ZodTransform",(e,t)=>{Lc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Oo(e,r,n,o),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new nr(e.constructor.name);r.addIssue=(a)=>{if(typeof a==="string")r.issues.push(O.issue(a,r.value,t));else{let s=a;if(s.fatal)s.continue=!1;s.code??(s.code="custom"),s.input??(s.input=r.value),s.inst??(s.inst=e),r.issues.push(O.issue(s))}};let o=t.transform(r.value,r);if(o instanceof Promise)return o.then((a)=>(r.value=a,r.fallback=!0,r));return r.value=o,r.fallback=!0,r}});function vv(e){return new gv({type:"transform",transform:e})}var Od=v("ZodOptional",(e,t)=>{uo.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>cn(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function yd(e){return new Od({type:"optional",innerType:e})}var yv=v("ZodExactOptional",(e,t)=>{Fc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>cn(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function wv(e){return new yv({type:"optional",innerType:e})}var bv=v("ZodNullable",(e,t)=>{Bc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Uo(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function wd(e){return new bv({type:"nullable",innerType:e})}var xv=v("ZodDefault",(e,t)=>{qc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Lo(e,r,n,o),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function _v(e,t){return new xv({type:"default",innerType:e,get defaultValue(){return typeof t==="function"?t():O.shallowClone(t)}})}var Sv=v("ZodPrefault",(e,t)=>{Wc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Fo(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function Iv(e,t){return new Sv({type:"prefault",innerType:e,get defaultValue(){return typeof t==="function"?t():O.shallowClone(t)}})}var Pd=v("ZodNonOptional",(e,t)=>{Vc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Zo(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function Tv(e,t){return new Pd({type:"nonoptional",innerType:e,...O.normalizeParams(t)})}var Ev=v("ZodCatch",(e,t)=>{Gc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Bo(e,r,n,o),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function kv(e,t){return new Ev({type:"catch",innerType:e,catchValue:typeof t==="function"?t:()=>t})}var $v=v("ZodPipe",(e,t)=>{Jc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>qo(e,r,n,o),e.in=t.in,e.out=t.out});function bd(e,t){return new $v({type:"pipe",in:e,out:t})}var Mv=v("ZodReadonly",(e,t)=>{Kc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Wo(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function Rv(e){return new Mv({type:"readonly",innerType:e})}var Cv=v("ZodLazy",(e,t)=>{Hc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Vo(e,r,n,o),e.unwrap=()=>e._zod.def.getter()});function Nd(e){return new Cv({type:"lazy",getter:e})}var ea=v("ZodCustom",(e,t)=>{Yc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Ao(e,r,n,o)});function zd(e,t){return Ou(ea,e??(()=>!0),t)}function Av(e,t={}){return Pu(ea,e,t)}function Ov(e,t){return Nu(e,t)}function jd(e,t={}){let r=new ea({type:"custom",check:"custom",fn:(n)=>n instanceof e,abort:!0,...O.normalizeParams(t)});return r._zod.bag.Class=e,r._zod.check=(n)=>{if(!(n.value instanceof e))n.issues.push({code:"invalid_type",expected:e.name,input:n.value,inst:r,path:[...r._zod.def.path??[]]})},r}var Pv=[{mediaType:"audio/mpeg",bytesPrefix:[255,251]},{mediaType:"audio/mpeg",bytesPrefix:[255,250]},{mediaType:"audio/mpeg",bytesPrefix:[255,243]},{mediaType:"audio/mpeg",bytesPrefix:[255,242]},{mediaType:"audio/mpeg",bytesPrefix:[255,227]},{mediaType:"audio/mpeg",bytesPrefix:[255,226]},{mediaType:"audio/wav",bytesPrefix:[82,73,70,70,null,null,null,null,87,65,86,69]},{mediaType:"audio/ogg",bytesPrefix:[79,103,103,83]},{mediaType:"audio/flac",bytesPrefix:[102,76,97,67]},{mediaType:"audio/aac",bytesPrefix:[64,21,0,0]},{mediaType:"audio/webm",bytesPrefix:[26,69,223,163]}],a0=[...Pv,{mediaType:"audio/mp4",bytesPrefix:[0,0,0,null,102,116,121,112]}];var Nv=12,zv=131072,s0=zv+Nv;async function fn(e){var t;try{await((t=e.body)==null?void 0:t.cancel())}catch(r){}}var Gd="AI_DownloadError",Jd=`vercel.ai.error.${Gd}`,jv=Symbol.for(Jd),Dd,Ud,ae=class extends(Ud=k,Dd=jv,Ud){constructor({url:e,statusCode:t,statusText:r,cause:n,message:o=n==null?`Failed to download ${e}: ${t} ${r}`:`Failed to download ${e}: ${n}`}){super({name:Gd,message:o,cause:n});this[Dd]=!0,this.url=e,this.statusCode=t,this.statusText=r}static isInstance(e){return k.hasMarker(e,Jd)}};function Dv(e=globalThis){return e.window!=null}function Zd(e,t){try{return new URL(e).origin===new URL(t).origin}catch(r){return!1}}function Uv(e){let t;try{t=new URL(e)}catch(n){throw new ae({url:e,message:`Invalid URL: ${e}`})}if(t.protocol==="data:")return;if(t.protocol!=="http:"&&t.protocol!=="https:")throw new ae({url:e,message:`URL scheme must be http, https, or data, got ${t.protocol}`});let r=t.hostname.toLowerCase().replace(/\.+$/,"");if(!r)throw new ae({url:e,message:"URL must have a hostname"});if(r==="localhost"||r.endsWith(".local")||r.endsWith(".localhost"))throw new ae({url:e,message:`URL with hostname ${r} is not allowed`});if(r.startsWith("[")&&r.endsWith("]")){let n=r.slice(1,-1);if(Kd(n))throw new ae({url:e,message:`URL with IPv6 address ${r} is not allowed`});return}if(sa(r)){if(ia(r))throw new ae({url:e,message:`URL with IP address ${r} is not allowed`});return}}function Zv({address:e,family:t,hostname:r}){if(t===4?!sa(e)||ia(e):t===6?Kd(e):!0)throw new ae({url:r,message:`Hostname ${r} resolved to disallowed IP address ${e}`})}function sa(e){let t=e.split(".");if(t.length!==4)return!1;return t.every((r)=>{let n=Number(r);return Number.isInteger(n)&&n>=0&&n<=255&&String(n)===r})}function ia(e){let t=e.split(".").map(Number),[r,n,o]=t;if(r===0)return!0;if(r===10)return!0;if(r===100&&n>=64&&n<=127)return!0;if(r===127)return!0;if(r===169&&n===254)return!0;if(r===172&&n>=16&&n<=31)return!0;if(r===192&&n===0&&o===0)return!0;if(r===192&&n===0&&o===2)return!0;if(r===192&&n===168)return!0;if(r===198&&(n===18||n===19))return!0;if(r===198&&n===51&&o===100)return!0;if(r===203&&n===0&&o===113)return!0;if(r>=224)return!0;return!1}function Lv(e){let t=e.toLowerCase(),r=t.indexOf("%");if(r!==-1)t=t.slice(0,r);let n=t.split("::");if(n.length>2)return null;let o=(s)=>{if(s==="")return[];let i=[],c=s.split(":");for(let u=0;u<c.length;u++){let d=c[u];if(d.includes(".")){if(u!==c.length-1||!sa(d))return null;let[p,m,f,y]=d.split(".").map(Number);i.push(p<<8|m,f<<8|y);continue}if(!/^[0-9a-f]{1,4}$/.test(d))return null;i.push(parseInt(d,16))}return i},a=o(n[0]);if(a===null)return null;if(n.length===2){let s=o(n[1]);if(s===null)return null;let i=8-a.length-s.length;if(i<0)return null;return[...a,...Array(i).fill(0),...s]}return a.length===8?a:null}function Kd(e){let t=Lv(e);if(t===null)return!0;let r=(o)=>t.slice(0,o).every((a)=>a===0);if(r(7)&&(t[7]===0||t[7]===1))return!0;if((t[0]&65024)===64512)return!0;if((t[0]&65472)===65152)return!0;if((t[0]&65472)===65216)return!0;if((t[0]&65280)===65280)return!0;if(t[0]===8193&&t[1]===3512)return!0;if(t[0]===16383&&(t[1]&61440)===0)return!0;if(r(6)||r(5)&&t[5]===65535||r(4)&&t[4]===65535&&t[5]===0||t[0]===100&&t[1]===65435&&t[2]===0&&t[3]===0&&t[4]===0&&t[5]===0||t[0]===100&&t[1]===65435&&t[2]===1){let o=t[6]>>8&255,a=t[6]&255,s=t[7]>>8&255,i=t[7]&255;return ia(`${o}.${a}.${s}.${i}`)}return!1}function Fv(e){return(t,r,n)=>{e(t,{...r,all:!0},(o,a)=>{if(o){n(o);return}try{let[s]=a;if(s==null)throw Error(`Hostname ${t} did not resolve to an address`);for(let{address:i,family:c}of a)Zv({address:i,family:c,hostname:t});if(r.all===!0)n(null,a);else n(null,s.address,s.family)}catch(s){n(s instanceof Error?s:Error(String(s)))}})}}var ta,Hd=globalThis.fetch,Bv=Vv(Hd);function qv(){var e,t;let r=globalThis.process;return((e=r==null?void 0:r.release)==null?void 0:e.name)==="node"&&((t=r.versions)==null?void 0:t.bun)==null}async function Wv(){if(!qv()||!Bv||globalThis.fetch!==Hd)return globalThis.fetch;return ta!=null?ta:ta=Promise.resolve().then(Gv)}function Vv(e){if(typeof e!=="function")return!1;let t=Function.prototype.toString.call(e);return t.includes("internal/deps/undici")||t.includes("lazy loading of undici")}function Gv(){let{createRequire:e}=Ld("node:module"),{lookup:t}=Ld("node:dns"),{Agent:r,fetch:n}=e(Yd())("undici"),o=new r({connect:{lookup:Fv(t)}});return(a,s)=>n(a,{...s,dispatcher:o})}function Ld(e){var t;let r=globalThis.process,n=(t=r==null?void 0:r.getBuiltinModule)==null?void 0:t.call(r,e);if(n==null)throw Error(`Node.js built-in module ${e} is unavailable`);return n}function Yd(){let e=Error.prepareStackTrace;try{Error.prepareStackTrace=(o,a)=>a;let t=Error("Capture current module path");Error.captureStackTrace(t,Yd);let[r]=t.stack,n=r==null?void 0:r.getFileName();if(n==null)throw Error("Unable to determine the current module path");return n}finally{Error.prepareStackTrace=e}}var Jv=["connection","keep-alive","te","trailer","transfer-encoding","upgrade","host","forwarded","proxy-authorization","via","x-forwarded-for","x-forwarded-host","x-forwarded-proto","x-real-ip","metadata","metadata-flavor","x-aws-ec2-metadata-token","x-metadata-token","cookie","set-cookie"];function Kv(e){let t=new Headers(e);for(let r of Jv)t.delete(r);return t}var Hv=10,Yv=new Set([301,302,303,307,308]);async function Xd({url:e,headers:t,abortSignal:r,maxRedirects:n=Hv,fetch:o,trustedOrigin:a}){let s=t===void 0?void 0:Kv(t),i=(u)=>{let d={signal:r,redirect:u};if(s!==void 0)d.headers=new Headers(s);return d},c=e;for(let u=0;u<=n;u++){let d=a!==void 0&&Zd(c,a);if(!d)Uv(c);let p=o!=null?o:d?globalThis.fetch:await Wv(),m=await p(c,i("manual"));if(m.type==="opaqueredirect"){if(!Dv())throw new ae({url:e,message:`Redirect from ${c} could not be validated and was blocked`});return await p(c,i("follow"))}let f=m.headers.get("location");if(Yv.has(m.status)&&f){await fn(m);let y=new URL(f,c).toString();if(s!==void 0&&!Zd(y,c)){let g=s.get("user-agent");s=new Headers(g==null?void 0:{"user-agent":g})}c=y;continue}return m}throw new ae({url:e,message:`Too many redirects (max ${n})`})}var la=2147483648;async function Qd({response:e,url:t,maxBytes:r=la}){let n=e.headers.get("content-length");if(n!=null){let d=parseInt(n,10);if(!isNaN(d)&&d>r)throw await fn(e),new ae({url:t,message:`Download of ${t} exceeded maximum size of ${r} bytes (Content-Length: ${d}).`})}let o=e.body;if(o==null)return new Uint8Array(0);let a=o.getReader(),s=[],i=0;try{while(!0){let{done:d,value:p}=await a.read();if(d)break;if(i+=p.length,i>r)throw new ae({url:t,message:`Download of ${t} exceeded maximum size of ${r} bytes.`});s.push(p)}}finally{try{await a.cancel()}catch(d){}finally{a.releaseLock()}}let c=new Uint8Array(i),u=0;for(let d of s)c.set(d,u),u+=d.length;return c}var J=({prefix:e,size:t=16,alphabet:r="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",separator:n="-"}={})=>{let o=()=>{let a=r.length,s=Array(t);for(let i=0;i<t;i++)s[i]=r[Math.random()*a|0];return s.join("")};if(e==null)return o;if(r.includes(n))throw new mi({argument:"separator",message:`The separator "${n}" must not be part of the alphabet "${r}".`});return()=>`${e}${n}${o()}`},zt=J();function ep(e=globalThis){var t,r,n;if(e.window)return"runtime/browser";if((t=e.navigator)==null?void 0:t.userAgent)return`runtime/${e.navigator.userAgent.toLowerCase()}`;if((n=(r=e.process)==null?void 0:r.versions)==null?void 0:n.node)return`runtime/node.js/${e.process.version.substring(0)}`;if(e.EdgeRuntime)return"runtime/vercel-edge";return"runtime/unknown"}function Xv(e){if(e==null)return{};let t={};if(e instanceof Headers)e.forEach((r,n)=>{t[n.toLowerCase()]=r});else{if(!Array.isArray(e))e=Object.entries(e);for(let[r,n]of e)if(n!=null)t[r.toLowerCase()]=n}return t}function jt(e,...t){let r=new Headers(Xv(e)),n=r.get("user-agent")||"";return r.set("user-agent",[n,...t].filter(Boolean).join(" ")),Object.fromEntries(r.entries())}function tp(e){var t,r;return(r=(t=globalThis.Buffer)==null?void 0:t.isBuffer(e))!=null?r:!1}function rp(e){return e!=null}var Qv=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,ey=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/;function Fd(e){let t=JSON.parse(e);if(t===null||typeof t!=="object")return t;if(Qv.test(e)===!1&&ey.test(e)===!1)return t;return ty(t)}function ty(e){let t=[e];while(t.length){let r=t;t=[];for(let n of r){if(Object.prototype.hasOwnProperty.call(n,"__proto__"))throw SyntaxError("Object contains forbidden prototype property");if(Object.prototype.hasOwnProperty.call(n,"constructor")&&n.constructor!==null&&typeof n.constructor==="object"&&Object.prototype.hasOwnProperty.call(n.constructor,"prototype"))throw SyntaxError("Object contains forbidden prototype property");for(let o in n){let a=n[o];if(a&&typeof a==="object")t.push(a)}}}return e}function ry(e){let{stackTraceLimit:t}=Error;try{Error.stackTraceLimit=0}catch(r){return Fd(e)}try{return Fd(e)}finally{Error.stackTraceLimit=t}}function ca(e){if(e.type==="object"||Array.isArray(e.type)&&e.type.includes("object")){let{additionalProperties:r}=e;e.additionalProperties=r!=null&&typeof r!=="boolean"?Xe(r):!1;let{properties:n}=e;if(n!=null)for(let o of Object.keys(n))n[o]=Xe(n[o])}if(e.items!=null)e.items=Array.isArray(e.items)?e.items.map(Xe):Xe(e.items);if(e.anyOf!=null)e.anyOf=e.anyOf.map(Xe);if(e.allOf!=null)e.allOf=e.allOf.map(Xe);if(e.oneOf!=null)e.oneOf=e.oneOf.map(Xe);let{definitions:t}=e;if(t!=null)for(let r of Object.keys(t))t[r]=Xe(t[r]);return e}function Xe(e){if(typeof e==="boolean")return e;return ca(e)}var ny=Symbol("Let zodToJsonSchema decide on which parser to use"),Bd={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",strictUnions:!1,definitions:{},errorMessages:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref"},oy=(e)=>typeof e==="string"?{...Bd,name:e}:{...Bd,...e};function me(){return{}}function ay(e,t){var r,n,o;let a={type:"array"};if(((r=e.type)==null?void 0:r._def)&&((o=(n=e.type)==null?void 0:n._def)==null?void 0:o.typeName)!=="ZodAny")a.items=U(e.type._def,{...t,currentPath:[...t.currentPath,"items"]});if(e.minLength)a.minItems=e.minLength.value;if(e.maxLength)a.maxItems=e.maxLength.value;if(e.exactLength)a.minItems=e.exactLength.value,a.maxItems=e.exactLength.value;return a}function sy(e){let t={type:"integer",format:"int64"};if(!e.checks)return t;for(let r of e.checks)switch(r.kind){case"min":if(r.inclusive)t.minimum=r.value;else t.exclusiveMinimum=r.value;break;case"max":if(r.inclusive)t.maximum=r.value;else t.exclusiveMaximum=r.value;break;case"multipleOf":t.multipleOf=r.value;break}return t}function iy(){return{type:"boolean"}}function np(e,t){return U(e.type._def,t)}var ly=(e,t)=>U(e.innerType._def,t);function op(e,t,r){let n=r!=null?r:t.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o)=>op(e,t,o))};switch(n){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":return cy(e)}}var cy=(e)=>{let t={type:"integer",format:"unix-time"};for(let r of e.checks)switch(r.kind){case"min":t.minimum=r.value;break;case"max":t.maximum=r.value;break}return t};function uy(e,t){return{...U(e.innerType._def,t),default:e.defaultValue()}}function dy(e,t){return t.effectStrategy==="input"?U(e.schema._def,t):me()}function py(e){return{type:"string",enum:Array.from(e.values)}}var fy=(e)=>{if("type"in e&&e.type==="string")return!1;return"allOf"in e};function my(e,t){let r=[U(e.left._def,{...t,currentPath:[...t.currentPath,"allOf","0"]}),U(e.right._def,{...t,currentPath:[...t.currentPath,"allOf","1"]})].filter((o)=>!!o),n=[];return r.forEach((o)=>{if(fy(o))n.push(...o.allOf);else{let a=o;if("additionalProperties"in o&&o.additionalProperties===!1){let{additionalProperties:s,...i}=o;a=i}n.push(a)}}),n.length?{allOf:n}:void 0}function hy(e){let t=typeof e.value;if(t!=="bigint"&&t!=="number"&&t!=="boolean"&&t!=="string")return{type:Array.isArray(e.value)?"array":"object"};return{type:t==="bigint"?"integer":t,const:e.value}}var ra=void 0,Ie={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>{if(ra===void 0)ra=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u");return ra},uuid:/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/,ipv4:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ipv4Cidr:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ipv6:/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,ipv6Cidr:/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function ap(e,t){let r={type:"string"};if(e.checks)for(let n of e.checks)switch(n.kind){case"min":r.minLength=typeof r.minLength==="number"?Math.max(r.minLength,n.value):n.value;break;case"max":r.maxLength=typeof r.maxLength==="number"?Math.min(r.maxLength,n.value):n.value;break;case"email":switch(t.emailStrategy){case"format:email":Te(r,"email",n.message,t);break;case"format:idn-email":Te(r,"idn-email",n.message,t);break;case"pattern:zod":oe(r,Ie.email,n.message,t);break}break;case"url":Te(r,"uri",n.message,t);break;case"uuid":Te(r,"uuid",n.message,t);break;case"regex":oe(r,n.regex,n.message,t);break;case"cuid":oe(r,Ie.cuid,n.message,t);break;case"cuid2":oe(r,Ie.cuid2,n.message,t);break;case"startsWith":oe(r,RegExp(`^${na(n.value,t)}`),n.message,t);break;case"endsWith":oe(r,RegExp(`${na(n.value,t)}$`),n.message,t);break;case"datetime":Te(r,"date-time",n.message,t);break;case"date":Te(r,"date",n.message,t);break;case"time":Te(r,"time",n.message,t);break;case"duration":Te(r,"duration",n.message,t);break;case"length":r.minLength=typeof r.minLength==="number"?Math.max(r.minLength,n.value):n.value,r.maxLength=typeof r.maxLength==="number"?Math.min(r.maxLength,n.value):n.value;break;case"includes":{oe(r,RegExp(na(n.value,t)),n.message,t);break}case"ip":{if(n.version!=="v6")Te(r,"ipv4",n.message,t);if(n.version!=="v4")Te(r,"ipv6",n.message,t);break}case"base64url":oe(r,Ie.base64url,n.message,t);break;case"jwt":oe(r,Ie.jwt,n.message,t);break;case"cidr":{if(n.version!=="v6")oe(r,Ie.ipv4Cidr,n.message,t);if(n.version!=="v4")oe(r,Ie.ipv6Cidr,n.message,t);break}case"emoji":oe(r,Ie.emoji(),n.message,t);break;case"ulid":{oe(r,Ie.ulid,n.message,t);break}case"base64":{switch(t.base64Strategy){case"format:binary":{Te(r,"binary",n.message,t);break}case"contentEncoding:base64":{r.contentEncoding="base64";break}case"pattern:zod":{oe(r,Ie.base64,n.message,t);break}}break}case"nanoid":oe(r,Ie.nanoid,n.message,t);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function na(e,t){return t.patternStrategy==="escape"?vy(e):e}var gy=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function vy(e){let t="";for(let r=0;r<e.length;r++){if(!gy.has(e[r]))t+="\\";t+=e[r]}return t}function Te(e,t,r,n){var o;if(e.format||((o=e.anyOf)==null?void 0:o.some((a)=>a.format))){if(!e.anyOf)e.anyOf=[];if(e.format)e.anyOf.push({format:e.format}),delete e.format;e.anyOf.push({format:t,...r&&n.errorMessages&&{errorMessage:{format:r}}})}else e.format=t}function oe(e,t,r,n){var o;if(e.pattern||((o=e.allOf)==null?void 0:o.some((a)=>a.pattern))){if(!e.allOf)e.allOf=[];if(e.pattern)e.allOf.push({pattern:e.pattern}),delete e.pattern;e.allOf.push({pattern:qd(t,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})}else e.pattern=qd(t,n)}function qd(e,t){var r;if(!t.applyRegexFlags||!e.flags)return e.source;let n={i:e.flags.includes("i"),m:e.flags.includes("m"),s:e.flags.includes("s")},o=n.i?e.source.toLowerCase():e.source,a="",s=!1,i=!1,c=!1;for(let u=0;u<o.length;u++){if(s){a+=o[u],s=!1;continue}if(n.i){if(i){if(o[u].match(/[a-z]/)){if(c)a+=o[u],a+=`${o[u-2]}-${o[u]}`.toUpperCase(),c=!1;else if(o[u+1]==="-"&&((r=o[u+2])==null?void 0:r.match(/[a-z]/)))a+=o[u],c=!0;else a+=`${o[u]}${o[u].toUpperCase()}`;continue}}else if(o[u].match(/[a-z]/)){a+=`[${o[u]}${o[u].toUpperCase()}]`;continue}}if(n.m){if(o[u]==="^"){a+=`(^|(?<=[\r
|
|
112
|
+
]))`;continue}else if(o[u]==="$"){a+=`($|(?=[\r
|
|
113
|
+
]))`;continue}}if(n.s&&o[u]==="."){a+=i?`${o[u]}\r
|
|
114
|
+
`:`[${o[u]}\r
|
|
115
|
+
]`;continue}if(a+=o[u],o[u]==="\\")s=!0;else if(i&&o[u]==="]")i=!1;else if(!i&&o[u]==="[")i=!0}try{new RegExp(a)}catch(u){return console.warn(`Could not convert regex pattern at ${t.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),e.source}return a}function sp(e,t){var r,n,o,a,s,i;let c={type:"object",additionalProperties:(r=U(e.valueType._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]}))!=null?r:t.allowedAdditionalProperties};if(((n=e.keyType)==null?void 0:n._def.typeName)==="ZodString"&&((o=e.keyType._def.checks)==null?void 0:o.length)){let{type:u,...d}=ap(e.keyType._def,t);return{...c,propertyNames:d}}else if(((a=e.keyType)==null?void 0:a._def.typeName)==="ZodEnum")return{...c,propertyNames:{enum:e.keyType._def.values}};else if(((s=e.keyType)==null?void 0:s._def.typeName)==="ZodBranded"&&e.keyType._def.type._def.typeName==="ZodString"&&((i=e.keyType._def.type._def.checks)==null?void 0:i.length)){let{type:u,...d}=np(e.keyType._def,t);return{...c,propertyNames:d}}return c}function yy(e,t){if(t.mapStrategy==="record")return sp(e,t);let r=U(e.keyType._def,{...t,currentPath:[...t.currentPath,"items","items","0"]})||me(),n=U(e.valueType._def,{...t,currentPath:[...t.currentPath,"items","items","1"]})||me();return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function wy(e){let t=e.values,n=Object.keys(e.values).filter((a)=>typeof t[t[a]]!=="number").map((a)=>t[a]),o=Array.from(new Set(n.map((a)=>typeof a)));return{type:o.length===1?o[0]==="string"?"string":"number":["string","number"],enum:n}}function by(){return{not:me()}}function xy(){return{type:"null"}}var oa={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function _y(e,t){let r=e.options instanceof Map?Array.from(e.options.values()):e.options;if(r.every((n)=>(n._def.typeName in oa)&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,a)=>{let s=oa[a._def.typeName];return s&&!o.includes(s)?[...o,s]:o},[]);return{type:n.length>1?n:n[0]}}else if(r.every((n)=>n._def.typeName==="ZodLiteral"&&!n.description)){let n=r.reduce((o,a)=>{let s=typeof a._def.value;switch(s){case"string":case"number":case"boolean":return[...o,s];case"bigint":return[...o,"integer"];case"object":if(a._def.value===null)return[...o,"null"];case"symbol":case"undefined":case"function":default:return o}},[]);if(n.length===r.length){let o=n.filter((a,s,i)=>i.indexOf(a)===s);return{type:o.length>1?o:o[0],enum:r.reduce((a,s)=>a.includes(s._def.value)?a:[...a,s._def.value],[])}}}else if(r.every((n)=>n._def.typeName==="ZodEnum"))return{type:"string",enum:r.reduce((n,o)=>[...n,...o._def.values.filter((a)=>!n.includes(a))],[])};return Sy(e,t)}var Sy=(e,t)=>{let r=(e.options instanceof Map?Array.from(e.options.values()):e.options).map((n,o)=>U(n._def,{...t,currentPath:[...t.currentPath,"anyOf",`${o}`]})).filter((n)=>!!n&&(!t.strictUnions||typeof n==="object"&&Object.keys(n).length>0));return r.length?{anyOf:r}:void 0};function Iy(e,t){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(e.innerType._def.typeName)&&(!e.innerType._def.checks||!e.innerType._def.checks.length))return{type:[oa[e.innerType._def.typeName],"null"]};let r=U(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function Ty(e){let t={type:"number"};if(!e.checks)return t;for(let r of e.checks)switch(r.kind){case"int":t.type="integer";break;case"min":if(r.inclusive)t.minimum=r.value;else t.exclusiveMinimum=r.value;break;case"max":if(r.inclusive)t.maximum=r.value;else t.exclusiveMaximum=r.value;break;case"multipleOf":t.multipleOf=r.value;break}return t}function Ey(e,t){let r={type:"object",properties:{}},n=[],o=e.shape();for(let s in o){let i=o[s];if(i===void 0||i._def===void 0)continue;let c=$y(i),u=U(i._def,{...t,currentPath:[...t.currentPath,"properties",s],propertyPath:[...t.currentPath,"properties",s]});if(u===void 0)continue;if(r.properties[s]=u,!c)n.push(s)}if(n.length)r.required=n;let a=ky(e,t);if(a!==void 0)r.additionalProperties=a;return r}function ky(e,t){if(e.catchall._def.typeName!=="ZodNever")return U(e.catchall._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]});switch(e.unknownKeys){case"passthrough":return t.allowedAdditionalProperties;case"strict":return t.rejectedAdditionalProperties;case"strip":return t.removeAdditionalStrategy==="strict"?t.allowedAdditionalProperties:t.rejectedAdditionalProperties}}function $y(e){try{return e.isOptional()}catch(t){return!0}}var My=(e,t)=>{var r;if(t.currentPath.toString()===((r=t.propertyPath)==null?void 0:r.toString()))return U(e.innerType._def,t);let n=U(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","1"]});return n?{anyOf:[{not:me()},n]}:me()},Ry=(e,t)=>{if(t.pipeStrategy==="input")return U(e.in._def,t);else if(t.pipeStrategy==="output")return U(e.out._def,t);let r=U(e.in._def,{...t,currentPath:[...t.currentPath,"allOf","0"]}),n=U(e.out._def,{...t,currentPath:[...t.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter((o)=>o!==void 0)}};function Cy(e,t){return U(e.type._def,t)}function Ay(e,t){let n={type:"array",uniqueItems:!0,items:U(e.valueType._def,{...t,currentPath:[...t.currentPath,"items"]})};if(e.minSize)n.minItems=e.minSize.value;if(e.maxSize)n.maxItems=e.maxSize.value;return n}function Oy(e,t){if(e.rest)return{type:"array",minItems:e.items.length,items:e.items.map((r,n)=>U(r._def,{...t,currentPath:[...t.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:U(e.rest._def,{...t,currentPath:[...t.currentPath,"additionalItems"]})};else return{type:"array",minItems:e.items.length,maxItems:e.items.length,items:e.items.map((r,n)=>U(r._def,{...t,currentPath:[...t.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}function Py(){return{not:me()}}function Ny(){return me()}var zy=(e,t)=>U(e.innerType._def,t),jy=(e,t,r)=>{switch(t){case"ZodString":return ap(e,r);case"ZodNumber":return Ty(e);case"ZodObject":return Ey(e,r);case"ZodBigInt":return sy(e);case"ZodBoolean":return iy();case"ZodDate":return op(e,r);case"ZodUndefined":return Py();case"ZodNull":return xy();case"ZodArray":return ay(e,r);case"ZodUnion":case"ZodDiscriminatedUnion":return _y(e,r);case"ZodIntersection":return my(e,r);case"ZodTuple":return Oy(e,r);case"ZodRecord":return sp(e,r);case"ZodLiteral":return hy(e);case"ZodEnum":return py(e);case"ZodNativeEnum":return wy(e);case"ZodNullable":return Iy(e,r);case"ZodOptional":return My(e,r);case"ZodMap":return yy(e,r);case"ZodSet":return Ay(e,r);case"ZodLazy":return()=>e.getter()._def;case"ZodPromise":return Cy(e,r);case"ZodNaN":case"ZodNever":return by();case"ZodEffects":return dy(e,r);case"ZodAny":return me();case"ZodUnknown":return Ny();case"ZodDefault":return uy(e,r);case"ZodBranded":return np(e,r);case"ZodReadonly":return zy(e,r);case"ZodCatch":return ly(e,r);case"ZodPipeline":return Ry(e,r);case"ZodFunction":case"ZodVoid":case"ZodSymbol":return;default:return((n)=>{return})(t)}},Dy=(e,t)=>{let r=0;for(;r<e.length&&r<t.length;r++)if(e[r]!==t[r])break;return[(e.length-r).toString(),...t.slice(r)].join("/")};function U(e,t,r=!1){var n;let o=t.seen.get(e);if(t.override){let c=(n=t.override)==null?void 0:n.call(t,e,t,o,r);if(c!==ny)return c}if(o&&!r){let c=Uy(o,t);if(c!==void 0)return c}let a={def:e,path:t.currentPath,jsonSchema:void 0};t.seen.set(e,a);let s=jy(e,e.typeName,t),i=typeof s==="function"?U(s(),t):s;if(i)Zy(e,t,i);if(t.postProcess){let c=t.postProcess(i,e,t);return a.jsonSchema=i,c}return a.jsonSchema=i,i}var Uy=(e,t)=>{switch(t.$refStrategy){case"root":return{$ref:e.path.join("/")};case"relative":return{$ref:Dy(t.currentPath,e.path)};case"none":case"seen":{if(e.path.length<t.currentPath.length&&e.path.every((r,n)=>t.currentPath[n]===r))return console.warn(`Recursive reference detected at ${t.currentPath.join("/")}! Defaulting to any`),me();return t.$refStrategy==="seen"?me():void 0}}},Zy=(e,t,r)=>{if(e.description)r.description=e.description;return r},Ly=(e)=>{let t=oy(e),r=t.name!==void 0?[...t.basePath,t.definitionPath,t.name]:t.basePath;return{...t,currentPath:r,propertyPath:void 0,seen:new Map(Object.entries(t.definitions).map(([n,o])=>[o._def,{def:o._def,path:[...t.basePath,t.definitionPath,n],jsonSchema:void 0}]))}},Fy=(e,t)=>{var r;let n=Ly(t),o=typeof t==="object"&&t.definitions?Object.entries(t.definitions).reduce((u,[d,p])=>{var m;return{...u,[d]:(m=U(p._def,{...n,currentPath:[...n.basePath,n.definitionPath,d]},!0))!=null?m:me()}},{}):void 0,a=typeof t==="string"?t:(t==null?void 0:t.nameStrategy)==="title"?void 0:t==null?void 0:t.name,s=(r=U(e._def,a===void 0?n:{...n,currentPath:[...n.basePath,n.definitionPath,a]},!1))!=null?r:me(),i=typeof t==="object"&&t.name!==void 0&&t.nameStrategy==="title"?t.name:void 0;if(i!==void 0)s.title=i;let c=a===void 0?o?{...s,[n.definitionPath]:o}:s:{$ref:[...n.$refStrategy==="relative"?[]:n.basePath,n.definitionPath,a].join("/"),[n.definitionPath]:{...o,[a]:s}};return c.$schema="http://json-schema.org/draft-07/schema#",c},aa=Symbol.for("vercel.ai.schema");function mn(e){let t;return()=>{if(t==null)t=e();return t}}function br(e,{validate:t}={}){return{[aa]:!0,_type:void 0,get jsonSchema(){if(typeof e==="function")e=e();return e},validate:t}}function By(e){return typeof e==="object"&&e!==null&&aa in e&&e[aa]===!0&&"jsonSchema"in e&&"validate"in e}function xr(e){return e==null?br({type:"object",properties:{},additionalProperties:!1}):By(e)?e:("~standard"in e)?e["~standard"].vendor==="zod"?Dt(e):qy(e):e()}function qy(e){return br(()=>{if(!Wy(e))throw Error(`Standard schema vendor '${e["~standard"].vendor}' does not support JSON Schema conversion.`);return ca(e["~standard"].jsonSchema.input({target:"draft-07"}))},{validate:async(t)=>{let r=await e["~standard"].validate(t);return"value"in r?{success:!0,value:r.value}:{success:!1,error:new Me({value:t,cause:r.issues})}}})}function Wy(e){return e["~standard"].jsonSchema!=null}function Vy(e,t){var r;let n=(r=t==null?void 0:t.useReferences)!=null?r:!1;return br(()=>Fy(e,{$refStrategy:n?"root":"none"}),{validate:async(o)=>{let a=await e.safeParseAsync(o);return a.success?{success:!0,value:a.data}:{success:!1,error:a.error}}})}function Gy(e,t){var r;let n=(r=t==null?void 0:t.useReferences)!=null?r:!1;return br(()=>ca(Go(e,{target:"draft-7",io:"input",reused:n?"ref":"inline"})),{validate:async(o)=>{let a=await dn(e,o);return a.success?{success:!0,value:a.data}:{success:!1,error:a.error}}})}function Jy(e){return"_zod"in e}function Dt(e,t){if(Jy(e))return Gy(e,t);else return Vy(e,t)}async function hn({value:e,schema:t,context:r}){let n=await Ut({value:e,schema:t,context:r});if(!n.success)throw Me.wrap({value:e,cause:n.error,context:r});return n.value}async function Ut({value:e,schema:t,context:r}){let n=xr(t);try{if(n.validate==null)return{success:!0,value:e,rawValue:e};let o=await n.validate(e);if(o.success)return{success:!0,value:o.value,rawValue:e};return{success:!1,error:Me.wrap({value:e,cause:o.error,context:r}),rawValue:e}}catch(o){return{success:!1,error:Me.wrap({value:e,cause:o,context:r}),rawValue:e}}}async function Qe({text:e,schema:t}){try{let r=ry(e);if(t==null)return{success:!0,value:r,rawValue:r};return await Ut({value:r,schema:t})}catch(r){return{success:!1,error:Vn.isInstance(r)?r:new Vn({text:e,cause:r}),rawValue:void 0}}}async function ua(e){if(typeof e==="function")e=e();return Promise.resolve(e)}var ip="AI_SerializationError",lp=`vercel.ai.error.${ip}`,Ky=Symbol.for(lp),Wd,Vd,h0=class extends(Vd=k,Wd=Ky,Vd){constructor({message:e="Failed to serialize value.",cause:t}={}){super({name:ip,message:e,cause:t});this[Wd]=!0}static isInstance(e){return k.hasMarker(e,lp)}};var Xy=Object.defineProperty,Qy=(e,t)=>{for(var r in t)Xy(e,r,{get:t[r],enumerable:!0})},ew="AI_InvalidArgumentError",tw=`vercel.ai.error.${ew}`,rw=Symbol.for(tw),nw;nw=rw;var ow="AI_InvalidStreamPartError",aw=`vercel.ai.error.${ow}`,sw=Symbol.for(aw),iw;iw=sw;var lw="AI_InvalidToolApprovalError",cw=`vercel.ai.error.${lw}`,uw=Symbol.for(cw),dw;dw=uw;var pw="AI_InvalidToolApprovalSignatureError",fw=`vercel.ai.error.${pw}`,mw=Symbol.for(fw),hw;hw=mw;var gw="AI_InvalidToolInputError",vw=`vercel.ai.error.${gw}`,yw=Symbol.for(vw),ww;ww=yw;var bw="AI_ToolCallNotFoundForApprovalError",xw=`vercel.ai.error.${bw}`,_w=Symbol.for(xw),Sw;Sw=_w;var Iw="AI_MissingToolResultsError",Tw=`vercel.ai.error.${Iw}`,Ew=Symbol.for(Tw),kw;kw=Ew;var $w="AI_NoImageGeneratedError",Mw=`vercel.ai.error.${$w}`,Rw=Symbol.for(Mw),Cw;Cw=Rw;var hp="AI_NoObjectGeneratedError",gp=`vercel.ai.error.${hp}`,Aw=Symbol.for(gp),vp,rt=class extends k{constructor({message:e="No object generated.",cause:t,text:r,response:n,usage:o,finishReason:a}){super({name:hp,message:e,cause:t});this[vp]=!0,this.text=r,this.response=n,this.usage=o,this.finishReason=a}static isInstance(e){return k.hasMarker(e,gp)}};vp=Aw;var Ow="AI_NoOutputGeneratedError",Pw=`vercel.ai.error.${Ow}`,Nw=Symbol.for(Pw),zw;zw=Nw;var jw="AI_NoSpeechGeneratedError",Dw=`vercel.ai.error.${jw}`,Uw=Symbol.for(Dw),Zw;Zw=Uw;var Lw="AI_NoTranscriptGeneratedError",Fw=`vercel.ai.error.${Lw}`,Bw=Symbol.for(Fw),qw;qw=Bw;var Ww="AI_NoTranslationGeneratedError",Vw=`vercel.ai.error.${Ww}`,Gw=Symbol.for(Vw),Jw;Jw=Gw;var Kw="AI_NoVideoGeneratedError",Hw=`vercel.ai.error.${Kw}`,Yw=Symbol.for(Hw),Xw;Xw=Yw;var Qw="AI_NoSuchToolError",eb=`vercel.ai.error.${Qw}`,tb=Symbol.for(eb),rb;rb=tb;var nb="AI_ToolCallRepairError",ob=`vercel.ai.error.${nb}`,ab=Symbol.for(ob),sb;sb=ab;var yp="AI_UIMessageStreamError",wp=`vercel.ai.error.${yp}`,ib=Symbol.for(wp),bp,gt=class extends k{constructor({chunkType:e,chunkId:t,message:r}){super({name:yp,message:r});this[bp]=!0,this.chunkType=e,this.chunkId=t}static isInstance(e){return k.hasMarker(e,wp)}};bp=ib;var lb="AI_InvalidDataContentError",cb=`vercel.ai.error.${lb}`,ub=Symbol.for(cb),db;db=ub;var pb="AI_InvalidMessageRoleError",fb=`vercel.ai.error.${pb}`,mb=Symbol.for(fb),hb;hb=mb;var xp="AI_MessageConversionError",_p=`vercel.ai.error.${xp}`,gb=Symbol.for(_p),Sp,vb=class extends k{constructor({originalMessage:e,message:t}){super({name:xp,message:t});this[Sp]=!0,this.originalMessage=e}static isInstance(e){return k.hasMarker(e,_p)}};Sp=gb;var yb="AI_RetryError",wb=`vercel.ai.error.${yb}`,bb=Symbol.for(wb),xb;xb=bb;var _b="7.0.77",Sb=async({url:e,maxBytes:t,abortSignal:r})=>{var n;let o=e.toString();try{let a=jt({},`ai-sdk/${_b}`,ep()),s=await Xd({url:o,headers:a,abortSignal:r});if(!s.ok)throw await fn(s),new ae({url:o,statusCode:s.status,statusText:s.statusText});return{data:await Qd({response:s,url:o,maxBytes:t!=null?t:la}),mediaType:(n=s.headers.get("content-type"))!=null?n:void 0}}catch(a){if(ae.isInstance(a))throw a;throw new ae({url:o,cause:a})}};function Ip(e,t){if(e===void 0&&t===void 0)return;if(e===void 0)return t;if(t===void 0)return e;let r={...e};for(let n in t){if(n==="__proto__"||n==="constructor"||n==="prototype")continue;if(Object.prototype.hasOwnProperty.call(t,n)){let o=t[n];if(o===void 0)continue;let a=n in e?e[n]:void 0,s=o!==null&&typeof o==="object"&&!Array.isArray(o)&&!(o instanceof Date)&&!(o instanceof RegExp),i=a!==null&&a!==void 0&&typeof a==="object"&&!Array.isArray(a)&&!(a instanceof Date)&&!(a instanceof RegExp);if(s&&i)r[n]=Ip(a,o);else r[n]=o}}return r}async function cp({toolCallId:e,input:t,output:r,tool:n,errorMode:o}){if(o==="text")return{type:"error-text",value:rr(r)};else if(o==="json")return{type:"error-json",value:up(r)};if(n==null?void 0:n.toModelOutput)return await n.toModelOutput({toolCallId:e,input:t,output:r});return typeof r==="string"?{type:"text",value:r}:{type:"json",value:up(r)}}function up(e){return e===void 0?null:e}var l={array:Yo,boolean:Id,custom:zd,discriminatedUnion:Rd,enum:Qo,instanceof:jd,lazy:Nd,literal:Ad,looseObject:$d,never:Ho,null:Td,number:Sd,object:kd,record:Cd,string:Ko,union:Xo,unknown:yr},vt=l.lazy(()=>l.union([l.null(),l.string(),l.number(),l.boolean(),l.record(l.string(),vt.optional()),l.array(vt)])),S=l.record(l.string(),l.record(l.string(),vt.optional())),Sr=l.union([l.string(),l.instanceof(Uint8Array),l.instanceof(ArrayBuffer),l.custom(tp,{message:"Must be a Buffer"})]),ga=l.record(l.string(),l.string()),Tp=l.object({type:l.literal("text"),text:l.string(),providerOptions:S.optional()}),Ib=l.object({type:l.literal("image"),image:l.union([Sr,l.instanceof(URL),ga]),mediaType:l.string().optional(),providerOptions:S.optional()}),Ep=l.discriminatedUnion("type",[l.object({type:l.literal("data"),data:Sr}),l.object({type:l.literal("url"),url:l.instanceof(URL)}),l.object({type:l.literal("reference"),reference:ga}),l.object({type:l.literal("text"),text:l.string()})]),Tb=l.discriminatedUnion("type",[l.object({type:l.literal("data"),data:Sr}),l.object({type:l.literal("url"),url:l.instanceof(URL)})]),kp=l.object({type:l.literal("file"),data:l.union([Ep,Sr,l.instanceof(URL),ga]),filename:l.string().optional(),mediaType:l.string(),providerOptions:S.optional()}),Eb=l.object({type:l.literal("reasoning"),text:l.string(),providerOptions:S.optional()}),kb=l.object({type:l.literal("custom"),kind:l.string().transform((e)=>e),providerOptions:S.optional()}),$b=l.object({type:l.literal("reasoning-file"),data:l.union([Tb,Sr,l.instanceof(URL)]),mediaType:l.string(),providerOptions:S.optional()}),Mb=l.object({type:l.literal("tool-call"),toolCallId:l.string(),toolName:l.string(),input:l.unknown(),providerOptions:S.optional(),providerExecuted:l.boolean().optional()}),Rb=l.discriminatedUnion("type",[l.object({type:l.literal("text"),value:l.string(),providerOptions:S.optional()}),l.object({type:l.literal("json"),value:vt,providerOptions:S.optional()}),l.object({type:l.literal("execution-denied"),reason:l.string().optional(),providerOptions:S.optional()}),l.object({type:l.literal("error-text"),value:l.string(),providerOptions:S.optional()}),l.object({type:l.literal("error-json"),value:vt,providerOptions:S.optional()}),l.object({type:l.literal("content"),value:l.array(l.union([l.object({type:l.literal("text"),text:l.string(),providerOptions:S.optional()}),l.object({type:l.literal("file"),data:Ep,mediaType:l.string(),filename:l.string().optional(),providerOptions:S.optional()}),l.object({type:l.literal("file-data"),data:l.string(),mediaType:l.string(),filename:l.string().optional(),providerOptions:S.optional()}),l.object({type:l.literal("file-url"),url:l.string(),mediaType:l.string().optional(),providerOptions:S.optional()}),l.object({type:l.literal("file-id"),fileId:l.union([l.string(),l.record(l.string(),l.string())]),providerOptions:S.optional()}),l.object({type:l.literal("file-reference"),providerReference:l.record(l.string(),l.string()),providerOptions:S.optional()}),l.object({type:l.literal("image-data"),data:l.string(),mediaType:l.string(),providerOptions:S.optional()}),l.object({type:l.literal("image-url"),url:l.string(),providerOptions:S.optional()}),l.object({type:l.literal("image-file-id"),fileId:l.union([l.string(),l.record(l.string(),l.string())]),providerOptions:S.optional()}),l.object({type:l.literal("image-file-reference"),providerReference:l.record(l.string(),l.string()),providerOptions:S.optional()}),l.object({type:l.literal("custom"),providerOptions:S.optional()})]))})]),$p=l.object({type:l.literal("tool-result"),toolCallId:l.string(),toolName:l.string(),output:Rb,providerOptions:S.optional()}),Cb=l.object({type:l.literal("tool-approval-request"),approvalId:l.string(),toolCallId:l.string()}),Ab=l.object({type:l.literal("tool-approval-response"),approvalId:l.string(),approved:l.boolean(),reason:l.string().optional()}),Ob=l.object({role:l.literal("system"),content:l.string(),providerOptions:S.optional()}),Pb=l.object({role:l.literal("user"),content:l.union([l.string(),l.array(l.union([Tp,Ib,kp]))]),providerOptions:S.optional()}),Nb=l.object({role:l.literal("assistant"),content:l.union([l.string(),l.array(l.union([Tp,kb,kp,Eb,$b,Mb,$p,Cb]))]),providerOptions:S.optional()}),zb=l.object({role:l.literal("tool"),content:l.array(l.union([$p,Ab])),providerOptions:S.optional()}),N0=l.union([Ob,Pb,Nb,zb]);function dp(e,t){return e!=null&&Object.hasOwn(e,t)?e[t]:void 0}var jb={};Qy(jb,{array:()=>Lb,choice:()=>Fb,json:()=>Bb,object:()=>Zb,text:()=>Ub});function Db(e){let t=["ROOT"],r=-1,n=null,o=0;function a(d){return d>="0"&&d<="9"||d>="A"&&d<="F"||d>="a"&&d<="f"}function s(d,p,m){switch(d){case'"':{r=p,t.pop(),t.push(m),t.push("INSIDE_STRING");break}case"f":case"t":case"n":{r=p,n=p,t.pop(),t.push(m),t.push("INSIDE_LITERAL");break}case"-":{t.pop(),t.push(m),t.push("INSIDE_NUMBER");break}case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":{r=p,t.pop(),t.push(m),t.push("INSIDE_NUMBER");break}case"{":{r=p,t.pop(),t.push(m),t.push("INSIDE_OBJECT_START");break}case"[":{r=p,t.pop(),t.push(m),t.push("INSIDE_ARRAY_START");break}}}function i(d,p){switch(d){case",":{t.pop(),t.push("INSIDE_OBJECT_AFTER_COMMA");break}case"}":{r=p,t.pop();break}}}function c(d,p){switch(d){case",":{t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break}case"]":{r=p,t.pop();break}}}for(let d=0;d<e.length;d++){let p=e[d];switch(t[t.length-1]){case"ROOT":s(p,d,"FINISH");break;case"INSIDE_OBJECT_START":{switch(p){case'"':{t.pop(),t.push("INSIDE_OBJECT_KEY");break}case"}":{r=d,t.pop();break}}break}case"INSIDE_OBJECT_AFTER_COMMA":{switch(p){case'"':{t.pop(),t.push("INSIDE_OBJECT_KEY");break}}break}case"INSIDE_OBJECT_KEY":{switch(p){case'"':{t.pop(),t.push("INSIDE_OBJECT_AFTER_KEY");break}}break}case"INSIDE_OBJECT_AFTER_KEY":{switch(p){case":":{t.pop(),t.push("INSIDE_OBJECT_BEFORE_VALUE");break}}break}case"INSIDE_OBJECT_BEFORE_VALUE":{s(p,d,"INSIDE_OBJECT_AFTER_VALUE");break}case"INSIDE_OBJECT_AFTER_VALUE":{i(p,d);break}case"INSIDE_STRING":{switch(p){case'"':{t.pop(),r=d;break}case"\\":{t.push("INSIDE_STRING_ESCAPE");break}default:r=d}break}case"INSIDE_ARRAY_START":{switch(p){case"]":{r=d,t.pop();break}default:{r=d,s(p,d,"INSIDE_ARRAY_AFTER_VALUE");break}}break}case"INSIDE_ARRAY_AFTER_VALUE":{switch(p){case",":{t.pop(),t.push("INSIDE_ARRAY_AFTER_COMMA");break}case"]":{r=d,t.pop();break}default:{r=d;break}}break}case"INSIDE_ARRAY_AFTER_COMMA":{s(p,d,"INSIDE_ARRAY_AFTER_VALUE");break}case"INSIDE_STRING_ESCAPE":{if(t.pop(),p==="u")o=0,t.push("INSIDE_STRING_UNICODE_ESCAPE");else r=d;break}case"INSIDE_STRING_UNICODE_ESCAPE":{if(a(p)){if(o++,o===4)t.pop(),r=d}break}case"INSIDE_NUMBER":{switch(p){case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":{r=d;break}case"e":case"E":case"-":case".":break;case",":{if(t.pop(),t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE")c(p,d);if(t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE")i(p,d);break}case"}":{if(t.pop(),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE")i(p,d);break}case"]":{if(t.pop(),t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE")c(p,d);break}default:{t.pop();break}}break}case"INSIDE_LITERAL":{let f=e.substring(n,d+1);if(!"false".startsWith(f)&&!"true".startsWith(f)&&!"null".startsWith(f)){if(t.pop(),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE")i(p,d);else if(t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE")c(p,d)}else r=d;break}}}let u=e.slice(0,r+1);for(let d=t.length-1;d>=0;d--)switch(t[d]){case"INSIDE_STRING":{u+='"';break}case"INSIDE_OBJECT_KEY":case"INSIDE_OBJECT_AFTER_KEY":case"INSIDE_OBJECT_AFTER_COMMA":case"INSIDE_OBJECT_START":case"INSIDE_OBJECT_BEFORE_VALUE":case"INSIDE_OBJECT_AFTER_VALUE":{u+="}";break}case"INSIDE_ARRAY_START":case"INSIDE_ARRAY_AFTER_COMMA":case"INSIDE_ARRAY_AFTER_VALUE":{u+="]";break}case"INSIDE_LITERAL":{let m=e.substring(n,e.length);if("true".startsWith(m))u+="true".slice(m.length);else if("false".startsWith(m))u+="false".slice(m.length);else if("null".startsWith(m))u+="null".slice(m.length)}}return u}async function Ir(e){if(e===void 0)return{value:void 0,state:"undefined-input"};let t=await Qe({text:e});if(t.success)return{value:t.value,state:"successful-parse"};if(t=await Qe({text:Db(e)}),t.success)return{value:t.value,state:"repaired-parse"};return{value:void 0,state:"failed-parse"}}var Ub=()=>({name:"text",responseFormat:Promise.resolve({type:"text"}),async parseCompleteOutput({text:e}){return e},async parsePartialOutput({text:e}){return{partial:e}},createElementStreamTransform(){return}}),Zb=({schema:e,name:t,description:r})=>{let n=xr(e);return{name:"object",responseFormat:ua(n.jsonSchema).then((o)=>({type:"json",schema:o,...t!=null&&{name:t},...r!=null&&{description:r}})),async parseCompleteOutput({text:o},a){let s=await Qe({text:o});if(!s.success)throw new rt({message:"No object generated: could not parse the response.",cause:s.error,text:o,response:a.response,usage:a.usage,finishReason:a.finishReason});let i=await Ut({value:s.value,schema:n});if(!i.success)throw new rt({message:"No object generated: response did not match schema.",cause:i.error,text:o,response:a.response,usage:a.usage,finishReason:a.finishReason});return i.value},async parsePartialOutput({text:o}){let a=await Ir(o);switch(a.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return{partial:a.value}}},createElementStreamTransform(){return}}},Lb=({element:e,name:t,description:r})=>{let n=xr(e);return{name:"array",responseFormat:ua(n.jsonSchema).then((o)=>{let{$schema:a,definitions:s,$defs:i,...c}=o;return{type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",...s!=null&&{definitions:s},...i!=null&&{$defs:i},type:"object",properties:{elements:{type:"array",items:c}},required:["elements"],additionalProperties:!1},...t!=null&&{name:t},...r!=null&&{description:r}}}),async parseCompleteOutput({text:o},a){let s=await Qe({text:o});if(!s.success)throw new rt({message:"No object generated: could not parse the response.",cause:s.error,text:o,response:a.response,usage:a.usage,finishReason:a.finishReason});let i=s.value;if(i==null||typeof i!=="object"||!("elements"in i)||!Array.isArray(i.elements))throw new rt({message:"No object generated: response did not match schema.",cause:new Me({value:i,cause:"response must be an object with an elements array"}),text:o,response:a.response,usage:a.usage,finishReason:a.finishReason});let c=[];for(let u of i.elements){let d=await Ut({value:u,schema:n});if(!d.success)throw new rt({message:"No object generated: response did not match schema.",cause:d.error,text:o,response:a.response,usage:a.usage,finishReason:a.finishReason});c.push(d.value)}return c},async parsePartialOutput({text:o}){let a=await Ir(o);switch(a.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{let s=a.value;if(s==null||typeof s!=="object"||!("elements"in s)||!Array.isArray(s.elements))return;let i=a.state==="repaired-parse"&&s.elements.length>0?s.elements.slice(0,-1):s.elements,c=[];for(let u of i){let d=await Ut({value:u,schema:n});if(d.success)c.push(d.value)}return{partial:c}}}},createElementStreamTransform(){let o=0;return new TransformStream({transform({partialOutput:a},s){if(a!=null)for(;o<a.length;o++)s.enqueue(a[o])}})}}},Fb=({options:e,name:t,description:r})=>({name:"choice",responseFormat:Promise.resolve({type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",type:"object",properties:{result:{type:"string",enum:e}},required:["result"],additionalProperties:!1},...t!=null&&{name:t},...r!=null&&{description:r}}),async parseCompleteOutput({text:n},o){let a=await Qe({text:n});if(!a.success)throw new rt({message:"No object generated: could not parse the response.",cause:a.error,text:n,response:o.response,usage:o.usage,finishReason:o.finishReason});let s=a.value;if(s==null||typeof s!=="object"||!("result"in s)||typeof s.result!=="string"||!e.includes(s.result))throw new rt({message:"No object generated: response did not match schema.",cause:new Me({value:s,cause:"response must be an object that contains a choice value."}),text:n,response:o.response,usage:o.usage,finishReason:o.finishReason});return s.result},async parsePartialOutput({text:n}){let o=await Ir(n);switch(o.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{let a=o.value;if(a==null||typeof a!=="object"||!("result"in a)||typeof a.result!=="string")return;let s=e.filter((i)=>i.startsWith(a.result));if(o.state==="successful-parse")return s.includes(a.result)?{partial:a.result}:void 0;else return s.length===1?{partial:s[0]}:void 0}}},createElementStreamTransform(){return}}),Bb=({name:e,description:t}={})=>({name:"json",responseFormat:Promise.resolve({type:"json",...e!=null&&{name:e},...t!=null&&{description:t}}),async parseCompleteOutput({text:r},n){let o=await Qe({text:r});if(!o.success)throw new rt({message:"No object generated: could not parse the response.",cause:o.error,text:r,response:n.response,usage:n.usage,finishReason:n.finishReason});return o.value},async parsePartialOutput({text:r}){let n=await Ir(r);switch(n.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return n.value===void 0?void 0:{partial:n.value}}},createElementStreamTransform(){return}});var U0=J({prefix:"aitxt",size:24}),Z0=J({prefix:"call",size:24});function Mp({stream:e}){return e.pipeThrough(new TransformStream({transform(t,r){if(t.type==="text-delta")r.enqueue(t.text)}}))}var F0=class extends TransformStream{constructor(){super({transform(e,t){t.enqueue(`data: ${JSON.stringify(e)}
|
|
135
116
|
|
|
136
|
-
`)},flush(
|
|
117
|
+
`)},flush(e){e.enqueue(`data: [DONE]
|
|
137
118
|
|
|
138
|
-
`)}})}};function Gw({originalMessages:t,responseMessageId:p}){if(t==null)return;let m=t[t.length-1];return(m==null?void 0:m.role)==="assistant"?m.id:typeof p==="function"?p():p}var Or=T.record(T.string(),$t.optional()),J0=Sn(()=>Ht(T.union([T.looseObject({type:T.literal("text-start"),id:T.string(),providerMetadata:L.optional()}),T.looseObject({type:T.literal("text-delta"),id:T.string(),delta:T.string(),providerMetadata:L.optional()}),T.looseObject({type:T.literal("text-end"),id:T.string(),providerMetadata:L.optional()}),T.looseObject({type:T.literal("error"),errorText:T.string()}),T.looseObject({type:T.literal("tool-input-start"),toolCallId:T.string(),toolName:T.string(),providerExecuted:T.boolean().optional(),providerMetadata:L.optional(),toolMetadata:Or.optional(),dynamic:T.boolean().optional(),title:T.string().optional()}),T.looseObject({type:T.literal("tool-input-delta"),toolCallId:T.string(),inputTextDelta:T.string()}),T.looseObject({type:T.literal("tool-input-available"),toolCallId:T.string(),toolName:T.string(),input:T.unknown(),providerExecuted:T.boolean().optional(),providerMetadata:L.optional(),toolMetadata:Or.optional(),dynamic:T.boolean().optional(),title:T.string().optional()}),T.looseObject({type:T.literal("tool-input-error"),toolCallId:T.string(),toolName:T.string(),input:T.unknown(),providerExecuted:T.boolean().optional(),providerMetadata:L.optional(),toolMetadata:Or.optional(),dynamic:T.boolean().optional(),errorText:T.string(),title:T.string().optional()}),T.looseObject({type:T.literal("tool-approval-request"),approvalId:T.string(),toolCallId:T.string(),isAutomatic:T.boolean().optional(),signature:T.string().optional()}),T.looseObject({type:T.literal("tool-approval-response"),approvalId:T.string(),approved:T.boolean(),reason:T.string().optional(),providerExecuted:T.boolean().optional(),providerMetadata:L.optional()}),T.looseObject({type:T.literal("tool-output-available"),toolCallId:T.string(),output:T.unknown(),providerExecuted:T.boolean().optional(),providerMetadata:L.optional(),toolMetadata:Or.optional(),dynamic:T.boolean().optional(),preliminary:T.boolean().optional()}),T.looseObject({type:T.literal("tool-output-error"),toolCallId:T.string(),errorText:T.string(),providerExecuted:T.boolean().optional(),providerMetadata:L.optional(),toolMetadata:Or.optional(),dynamic:T.boolean().optional()}),T.looseObject({type:T.literal("tool-output-denied"),toolCallId:T.string()}),T.looseObject({type:T.literal("reasoning-start"),id:T.string(),providerMetadata:L.optional()}),T.looseObject({type:T.literal("reasoning-delta"),id:T.string(),delta:T.string(),providerMetadata:L.optional()}),T.looseObject({type:T.literal("reasoning-end"),id:T.string(),providerMetadata:L.optional()}),T.looseObject({type:T.literal("custom"),kind:T.string().transform((t)=>t),providerMetadata:L.optional()}),T.looseObject({type:T.literal("source-url"),sourceId:T.string(),url:T.string(),title:T.string().optional(),providerMetadata:L.optional()}),T.looseObject({type:T.literal("source-document"),sourceId:T.string(),mediaType:T.string(),title:T.string(),filename:T.string().optional(),providerMetadata:L.optional()}),T.looseObject({type:T.literal("file"),url:T.string(),mediaType:T.string(),providerMetadata:L.optional()}),T.looseObject({type:T.literal("reasoning-file"),url:T.string(),mediaType:T.string(),providerMetadata:L.optional()}),T.looseObject({type:T.custom((t)=>typeof t==="string"&&t.startsWith("data-"),{message:'Type must start with "data-"'}),id:T.string().optional(),data:T.unknown(),transient:T.boolean().optional()}),T.looseObject({type:T.literal("start-step")}),T.looseObject({type:T.literal("finish-step")}),T.looseObject({type:T.literal("reset-step")}),T.looseObject({type:T.literal("start"),messageId:T.string().optional(),messageMetadata:T.unknown().optional()}),T.looseObject({type:T.literal("finish"),finishReason:T.enum(["stop","length","content-filter","tool-calls","error","other"]).optional(),messageMetadata:T.unknown().optional()}),T.looseObject({type:T.literal("abort"),reason:T.string().optional()}),T.looseObject({type:T.literal("message-metadata"),messageMetadata:T.unknown()})])));function Jw(t){return t.type.startsWith("data-")}function ft(){return Object.create(null)}function wa(t){return t.type.startsWith("data-")}function xa(t){return t.type==="text"}function vp(t){return t.type==="custom"}function _a(t){return t.type==="file"}function yp(t){return t.type==="reasoning-file"}function bp(t){return t.type==="reasoning"}function Sa(t){return t.type.startsWith("tool-")}function Np(t){return t.type==="dynamic-tool"}function Ie(t){return Sa(t)||Np(t)}function Ia(t){return t.type.split("-").slice(1).join("-")}function mt(t){return Np(t)?t.toolName:Ia(t)}function jp({lastMessage:t,messageId:p}){return{message:(t==null?void 0:t.role)==="assistant"?t:{id:p,metadata:void 0,role:"assistant",parts:[]},activeTextParts:ft(),activeReasoningParts:ft(),partialToolCalls:ft()}}function zp({stream:t,messageMetadataSchema:p,dataPartSchemas:m,runUpdateMessageJob:y,onError:b,onToolCall:x,onData:_}){return t.pipeThrough(new TransformStream({async transform(S,E){await y(async({state:k,write:M})=>{var R,C,A,j;function P(){let O=k.message.parts,X=O.length-1;while(X>=0&&O[X].type!=="step-start")X--;return O.slice(X+1)}function U(){return P().filter(Ie)}function ee(O){let ce=U().find((pe)=>pe.toolCallId===O);if(ce==null){let pe=k.message.parts;for(let V=pe.length-1;V>=0;V--){let te=pe[V];if(Ie(te)&&te.toolCallId===O){ce=te;break}}}if(ce==null)throw new kt({chunkType:"tool-invocation",chunkId:O,message:`No tool invocation found for tool call ID "${O}".`});return ce}function K(O){let ce=k.message.parts.filter(Ie).find((pe)=>{var V;return((V=pe.approval)==null?void 0:V.id)===O});if(ce==null)throw new kt({chunkType:"tool-approval-response",chunkId:O,message:`No tool invocation found for approval ID "${O}".`});return ce}function ne(O,X){var ce;let pe=X!=null?X:P().find((fe)=>Sa(fe)&&fe.toolCallId===O.toolCallId),V=O,te=pe;if(pe!=null){if(pe.state=O.state,te.input=V.input,te.output=V.output,te.errorText=V.errorText,te.rawInput=V.rawInput,te.preliminary=V.preliminary,O.title!==void 0)te.title=O.title;if(O.toolMetadata!==void 0)te.toolMetadata=O.toolMetadata;te.providerExecuted=(ce=V.providerExecuted)!=null?ce:pe.providerExecuted;let fe=V.providerMetadata;if(fe!=null)if(O.state==="output-available"||O.state==="output-error"){let tt=pe;tt.resultProviderMetadata=fe}else pe.callProviderMetadata=fe}else k.message.parts.push({type:`tool-${O.toolName}`,toolCallId:O.toolCallId,state:O.state,title:O.title,...O.toolMetadata!==void 0?{toolMetadata:O.toolMetadata}:{},input:V.input,output:V.output,rawInput:V.rawInput,errorText:V.errorText,providerExecuted:V.providerExecuted,preliminary:V.preliminary,...V.providerMetadata!=null&&(O.state==="output-available"||O.state==="output-error")?{resultProviderMetadata:V.providerMetadata}:{},...V.providerMetadata!=null&&!(O.state==="output-available"||O.state==="output-error")?{callProviderMetadata:V.providerMetadata}:{}})}function G(O,X){var ce,pe;let V=X!=null?X:P().find((tt)=>tt.type==="dynamic-tool"&&tt.toolCallId===O.toolCallId),te=O,fe=V;if(V!=null){if(V.state=O.state,fe.toolName=O.toolName,fe.input=te.input,fe.output=te.output,fe.errorText=te.errorText,fe.rawInput=(ce=te.rawInput)!=null?ce:fe.rawInput,fe.preliminary=te.preliminary,O.title!==void 0)fe.title=O.title;if(O.toolMetadata!==void 0)fe.toolMetadata=O.toolMetadata;fe.providerExecuted=(pe=te.providerExecuted)!=null?pe:V.providerExecuted;let tt=te.providerMetadata;if(tt!=null)if(O.state==="output-available"||O.state==="output-error"){let Yf=V;Yf.resultProviderMetadata=tt}else V.callProviderMetadata=tt}else k.message.parts.push({type:"dynamic-tool",toolName:O.toolName,toolCallId:O.toolCallId,state:O.state,input:te.input,output:te.output,errorText:te.errorText,preliminary:te.preliminary,providerExecuted:te.providerExecuted,title:O.title,...O.toolMetadata!==void 0?{toolMetadata:O.toolMetadata}:{},...te.providerMetadata!=null&&(O.state==="output-available"||O.state==="output-error")?{resultProviderMetadata:te.providerMetadata}:{},...te.providerMetadata!=null&&!(O.state==="output-available"||O.state==="output-error")?{callProviderMetadata:te.providerMetadata}:{}})}async function Y(O){if(O!=null){let X=k.message.metadata!=null?Mp(k.message.metadata,O):O;if(p!=null)await In({value:X,schema:p,context:{field:"message.metadata",entityId:k.message.id}});k.message.metadata=X}}switch(S.type){case"text-start":{let O={type:"text",text:"",providerMetadata:S.providerMetadata,state:"streaming"};k.activeTextParts[S.id]=O,k.message.parts.push(O),M();break}case"text-delta":{let O=k.activeTextParts[S.id];if(O==null)throw new kt({chunkType:"text-delta",chunkId:S.id,message:`Received text-delta for missing text part with ID "${S.id}". Ensure a "text-start" chunk is sent before any "text-delta" chunks.`});O.text+=S.delta,O.providerMetadata=(R=S.providerMetadata)!=null?R:O.providerMetadata,M();break}case"text-end":{let O=k.activeTextParts[S.id];if(O==null)throw new kt({chunkType:"text-end",chunkId:S.id,message:`Received text-end for missing text part with ID "${S.id}". Ensure a "text-start" chunk is sent before any "text-end" chunks.`});O.state="done",O.providerMetadata=(C=S.providerMetadata)!=null?C:O.providerMetadata,delete k.activeTextParts[S.id],M();break}case"custom":{let O={type:"custom",kind:S.kind,providerMetadata:S.providerMetadata};k.message.parts.push(O),M();break}case"reasoning-start":{let O={type:"reasoning",id:S.id,text:"",providerMetadata:S.providerMetadata,state:"streaming"};k.activeReasoningParts[S.id]=O,k.message.parts.push(O),M();break}case"reasoning-delta":{let O=k.activeReasoningParts[S.id];if(O==null)throw new kt({chunkType:"reasoning-delta",chunkId:S.id,message:`Received reasoning-delta for missing reasoning part with ID "${S.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-delta" chunks.`});O.text+=S.delta,O.providerMetadata=(A=S.providerMetadata)!=null?A:O.providerMetadata,M();break}case"reasoning-end":{let O=k.activeReasoningParts[S.id];if(O==null)throw new kt({chunkType:"reasoning-end",chunkId:S.id,message:`Received reasoning-end for missing reasoning part with ID "${S.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-end" chunks.`});O.providerMetadata=(j=S.providerMetadata)!=null?j:O.providerMetadata,O.state="done",delete k.activeReasoningParts[S.id],M();break}case"file":case"reasoning-file":{k.message.parts.push({type:S.type,mediaType:S.mediaType,url:S.url,...S.providerMetadata!=null?{providerMetadata:S.providerMetadata}:{}}),M();break}case"source-url":{k.message.parts.push({type:"source-url",sourceId:S.sourceId,url:S.url,title:S.title,providerMetadata:S.providerMetadata}),M();break}case"source-document":{k.message.parts.push({type:"source-document",sourceId:S.sourceId,mediaType:S.mediaType,title:S.title,filename:S.filename,providerMetadata:S.providerMetadata}),M();break}case"tool-input-start":{let O=P().filter(Sa);if(k.partialToolCalls[S.toolCallId]={text:"",toolName:S.toolName,index:O.length,dynamic:S.dynamic,title:S.title,toolMetadata:S.toolMetadata},S.dynamic)G({toolCallId:S.toolCallId,toolName:S.toolName,state:"input-streaming",input:void 0,providerExecuted:S.providerExecuted,title:S.title,toolMetadata:S.toolMetadata,providerMetadata:S.providerMetadata});else ne({toolCallId:S.toolCallId,toolName:S.toolName,state:"input-streaming",input:void 0,providerExecuted:S.providerExecuted,title:S.title,toolMetadata:S.toolMetadata,providerMetadata:S.providerMetadata});M();break}case"tool-input-delta":{let O=k.partialToolCalls[S.toolCallId];if(O==null)throw new kt({chunkType:"tool-input-delta",chunkId:S.toolCallId,message:`Received tool-input-delta for missing tool call with ID "${S.toolCallId}". Ensure a "tool-input-start" chunk is sent before any "tool-input-delta" chunks.`});O.text+=S.inputTextDelta;let{value:X}=await Nr(O.text);if(O.dynamic)G({toolCallId:S.toolCallId,toolName:O.toolName,state:"input-streaming",input:X,title:O.title,toolMetadata:O.toolMetadata});else ne({toolCallId:S.toolCallId,toolName:O.toolName,state:"input-streaming",input:X,title:O.title,toolMetadata:O.toolMetadata});M();break}case"tool-input-available":{if(S.dynamic)G({toolCallId:S.toolCallId,toolName:S.toolName,state:"input-available",input:S.input,providerExecuted:S.providerExecuted,providerMetadata:S.providerMetadata,title:S.title,toolMetadata:S.toolMetadata});else ne({toolCallId:S.toolCallId,toolName:S.toolName,state:"input-available",input:S.input,providerExecuted:S.providerExecuted,providerMetadata:S.providerMetadata,title:S.title,toolMetadata:S.toolMetadata});if(M(),x&&!S.providerExecuted)await x({toolCall:S});break}case"tool-input-error":{let O=P().filter(Ie).find((ce)=>ce.toolCallId===S.toolCallId);if(O!=null?O.type==="dynamic-tool":!!S.dynamic)G({toolCallId:S.toolCallId,toolName:S.toolName,state:"output-error",input:S.input,errorText:S.errorText,providerExecuted:S.providerExecuted,providerMetadata:S.providerMetadata,toolMetadata:S.toolMetadata});else ne({toolCallId:S.toolCallId,toolName:S.toolName,state:"output-error",input:void 0,rawInput:S.input,errorText:S.errorText,providerExecuted:S.providerExecuted,providerMetadata:S.providerMetadata,toolMetadata:S.toolMetadata});M();break}case"tool-approval-request":{let O=ee(S.toolCallId);O.state="approval-requested",O.approval={id:S.approvalId,...S.isAutomatic===!0?{isAutomatic:!0}:{},...S.signature!=null?{signature:S.signature}:{}},M();break}case"tool-approval-response":{let O=K(S.approvalId),X=O.approval==null?{id:S.approvalId}:O.approval;if(O.state="approval-responded",O.approval={id:S.approvalId,approved:S.approved,...S.reason!=null?{reason:S.reason}:{},...X.isAutomatic===!0?{isAutomatic:!0}:{},...X.signature!=null?{signature:X.signature}:{}},S.providerExecuted!=null)O.providerExecuted=S.providerExecuted;if(S.providerMetadata!=null)O.callProviderMetadata=S.providerMetadata;M();break}case"tool-output-denied":{let O=ee(S.toolCallId);O.state="output-denied",M();break}case"tool-output-available":{let O=ee(S.toolCallId);if(O.type==="dynamic-tool")G({toolCallId:S.toolCallId,toolName:O.toolName,state:"output-available",input:O.input,output:S.output,preliminary:S.preliminary,providerExecuted:S.providerExecuted,providerMetadata:S.providerMetadata,title:O.title,toolMetadata:O.toolMetadata},O);else ne({toolCallId:S.toolCallId,toolName:Ia(O),state:"output-available",input:O.input,output:S.output,providerExecuted:S.providerExecuted,preliminary:S.preliminary,providerMetadata:S.providerMetadata,title:O.title,toolMetadata:O.toolMetadata},O);M();break}case"tool-output-error":{let O=ee(S.toolCallId);if(O.type==="dynamic-tool")G({toolCallId:S.toolCallId,toolName:O.toolName,state:"output-error",input:O.input,errorText:S.errorText,providerExecuted:S.providerExecuted,providerMetadata:S.providerMetadata,title:O.title,toolMetadata:O.toolMetadata},O);else ne({toolCallId:S.toolCallId,toolName:Ia(O),state:"output-error",input:O.input,rawInput:O.rawInput,errorText:S.errorText,providerExecuted:S.providerExecuted,providerMetadata:S.providerMetadata,title:O.title,toolMetadata:O.toolMetadata},O);M();break}case"start-step":{k.message.parts.push({type:"step-start"});break}case"finish-step":{k.activeTextParts=ft(),k.activeReasoningParts=ft();break}case"reset-step":{let O=P();if(k.activeTextParts=ft(),k.activeReasoningParts=ft(),k.partialToolCalls=ft(),O.length>0)k.message.parts.splice(k.message.parts.length-O.length,O.length),M();break}case"start":{if(S.messageId!=null)k.message.id=S.messageId;if(await Y(S.messageMetadata),S.messageId!=null||S.messageMetadata!=null)M({updateStatus:!1});break}case"finish":{if(S.finishReason!=null)k.finishReason=S.finishReason;if(await Y(S.messageMetadata),S.messageMetadata!=null)M();break}case"message-metadata":{if(await Y(S.messageMetadata),S.messageMetadata!=null)M();break}case"error":{b==null||b(Error(S.errorText));break}default:if(Jw(S)){if((m==null?void 0:m[S.type])!=null){let ce=k.message.parts.findIndex((V)=>("id"in V)&&("data"in V)&&V.id===S.id&&V.type===S.type),pe=ce>=0?ce:k.message.parts.length;await In({value:S.data,schema:m[S.type],context:{field:`message.parts[${pe}].data`,entityName:S.type,entityId:S.id}})}let O=S;if(O.transient){_==null||_(O);break}let X=O.id!=null?k.message.parts.find((ce)=>O.type===ce.type&&O.id===ce.id):void 0;if(X!=null)X.data=O.data;else k.message.parts.push(O);_==null||_(O),M()}}E.enqueue(S)})}}))}function Kw({messageId:t,originalMessages:p=[],onStepEnd:m,onStepFinish:y,onEnd:b,onFinish:x,onError:_,stream:S}){let E=p==null?void 0:p[p.length-1];if((E==null?void 0:E.role)!=="assistant")E=void 0;else t=E.id;let k=!1,M=S.pipeThrough(new TransformStream({transform(K,ne){if(K.type==="start"){let G=K;if(G.messageId==null&&t!=null)G.messageId=t}if(K.type==="abort")k=!0;ne.enqueue(K)}})),R=m!=null?m:y,C=b!=null?b:x;if(C==null&&R==null)return M;let A=jp({lastMessage:E?structuredClone(E):void 0,messageId:t!=null?t:""}),j=async(K)=>{await K({state:A,write:()=>{}})},P=!1,U=async()=>{if(P||!C)return;P=!0;let K=A.message.id===(E==null?void 0:E.id);await C({isAborted:k,isContinuation:K,responseMessage:A.message,messages:[...K?p.slice(0,-1):p,A.message],finishReason:A.finishReason})},ee=async()=>{if(!R)return;let K=A.message.id===(E==null?void 0:E.id);try{await R({isContinuation:K,responseMessage:structuredClone(A.message),messages:[...K?p.slice(0,-1):p,structuredClone(A.message)]})}catch(ne){_(ne)}};return zp({stream:M,runUpdateMessageJob:j,onError:_}).pipeThrough(new TransformStream({async transform(K,ne){if(K.type==="finish-step")await ee();ne.enqueue(K)},async cancel(){await U()},async flush(){await U()}}))}function Hw(t,{tools:p,sendReasoning:m=!0,sendSources:y=!1,sendStart:b=!0,sendFinish:x=!0,onError:_=()=>"An error occurred.",messageMetadata:S,responseMessageId:E}={}){let k=(R)=>{let C=p==null?void 0:p[R.toolName];if(C==null)return R.dynamic;return(C==null?void 0:C.type)==="dynamic"?!0:void 0},M=t.type;switch(M){case"text-start":return{type:"text-start",id:t.id,...t.providerMetadata!=null?{providerMetadata:t.providerMetadata}:{}};case"text-delta":return{type:"text-delta",id:t.id,delta:t.text,...t.providerMetadata!=null?{providerMetadata:t.providerMetadata}:{}};case"text-end":return{type:"text-end",id:t.id,...t.providerMetadata!=null?{providerMetadata:t.providerMetadata}:{}};case"reasoning-start":case"reasoning-end":{if(!m)return;return{type:M,id:t.id,...t.providerMetadata!=null?{providerMetadata:t.providerMetadata}:{}}}case"reasoning-delta":{if(!m)return;return{type:"reasoning-delta",id:t.id,delta:t.text,...t.providerMetadata!=null?{providerMetadata:t.providerMetadata}:{}}}case"file":case"reasoning-file":{if(M==="reasoning-file"&&!m)return;return{type:t.type,mediaType:t.file.mediaType,url:`data:${t.file.mediaType};base64,${t.file.base64}`,...t.providerMetadata!=null?{providerMetadata:t.providerMetadata}:{}}}case"source":{if(!y)return;if(t.sourceType==="url")return{type:"source-url",sourceId:t.id,url:t.url,title:t.title,...t.providerMetadata!=null?{providerMetadata:t.providerMetadata}:{}};if(t.sourceType==="document")return{type:"source-document",sourceId:t.id,mediaType:t.mediaType,title:t.title,filename:t.filename,...t.providerMetadata!=null?{providerMetadata:t.providerMetadata}:{}};return}case"custom":return{type:"custom",kind:t.kind,...t.providerMetadata!=null?{providerMetadata:t.providerMetadata}:{}};case"tool-input-start":{let R=k(t);return{type:"tool-input-start",toolCallId:t.id,toolName:t.toolName,...t.providerExecuted!=null?{providerExecuted:t.providerExecuted}:{},...t.providerMetadata!=null?{providerMetadata:t.providerMetadata}:{},...t.toolMetadata!=null?{toolMetadata:t.toolMetadata}:{},...R!=null?{dynamic:R}:{},...t.title!=null?{title:t.title}:{}}}case"tool-input-delta":return{type:"tool-input-delta",toolCallId:t.id,inputTextDelta:t.delta};case"tool-call":{let R=k(t);if(t.invalid)return{type:"tool-input-error",toolCallId:t.toolCallId,toolName:t.toolName,input:t.input,...t.providerExecuted!=null?{providerExecuted:t.providerExecuted}:{},...t.providerMetadata!=null?{providerMetadata:t.providerMetadata}:{},...t.toolMetadata!=null?{toolMetadata:t.toolMetadata}:{},...R!=null?{dynamic:R}:{},errorText:_(t.error),...t.title!=null?{title:t.title}:{}};return{type:"tool-input-available",toolCallId:t.toolCallId,toolName:t.toolName,input:t.input,...t.providerExecuted!=null?{providerExecuted:t.providerExecuted}:{},...t.providerMetadata!=null?{providerMetadata:t.providerMetadata}:{},...t.toolMetadata!=null?{toolMetadata:t.toolMetadata}:{},...R!=null?{dynamic:R}:{},...t.title!=null?{title:t.title}:{}}}case"tool-approval-request":return{type:"tool-approval-request",approvalId:t.approvalId,toolCallId:t.toolCall.toolCallId,...t.isAutomatic!=null?{isAutomatic:t.isAutomatic}:{},...t.signature!=null?{signature:t.signature}:{}};case"tool-approval-response":return{type:"tool-approval-response",approvalId:t.approvalId,approved:t.approved,...t.reason!=null?{reason:t.reason}:{},...t.providerExecuted!=null?{providerExecuted:t.providerExecuted}:{}};case"tool-result":{let R=k(t);return{type:"tool-output-available",toolCallId:t.toolCallId,output:t.output===void 0?null:t.output,...t.providerExecuted!=null?{providerExecuted:t.providerExecuted}:{},...t.providerMetadata!=null?{providerMetadata:t.providerMetadata}:{},...t.toolMetadata!=null?{toolMetadata:t.toolMetadata}:{},...t.preliminary!=null?{preliminary:t.preliminary}:{},...R!=null?{dynamic:R}:{}}}case"tool-error":{let R=k(t);return{type:"tool-output-error",toolCallId:t.toolCallId,errorText:t.providerExecuted?typeof t.error==="string"?t.error:JSON.stringify(t.error):_(t.error),...t.providerExecuted!=null?{providerExecuted:t.providerExecuted}:{},...t.providerMetadata!=null?{providerMetadata:t.providerMetadata}:{},...t.toolMetadata!=null?{toolMetadata:t.toolMetadata}:{},...R!=null?{dynamic:R}:{}}}case"tool-output-denied":return{type:"tool-output-denied",toolCallId:t.toolCallId};case"error":return{type:"error",errorText:_(t.error)};case"start-step":return{type:"start-step"};case"finish-step":return{type:"finish-step"};case"start":{if(!b)return;return{type:"start",...S!=null?{messageMetadata:S}:{},...E!=null?{messageId:E}:{}}}case"finish":{if(!x)return;return{type:"finish",finishReason:t.finishReason,...S!=null?{messageMetadata:S}:{}}}case"abort":return t;case"tool-input-end":case"raw":return;default:throw Error(`Unknown chunk type: ${M}`)}}function Dp({stream:t,tools:p,sendReasoning:m=!0,sendSources:y=!1,sendStart:b=!0,sendFinish:x=!0,onError:_=()=>"An error occurred.",messageMetadata:S,originalMessages:E,generateMessageId:k,onEnd:M,onFinish:R}){let C=k!=null?Gw({originalMessages:E,responseMessageId:k}):void 0,A=t.pipeThrough(new TransformStream({transform:async(j,P)=>{let U=S==null?void 0:S({part:j}),ee=Hw(j,{tools:p,sendReasoning:m,sendSources:y,sendStart:b,sendFinish:x,onError:_,messageMetadata:U,responseMessageId:C});if(ee!=null)P.enqueue(ee);if(U!=null&&j.type!=="start"&&j.type!=="finish")P.enqueue({type:"message-metadata",messageMetadata:U})}}));return Kw({stream:A,messageId:C!=null?C:k==null?void 0:k(),originalMessages:E,onEnd:M!=null?M:R,onError:_})}function Yw(t){return Xw(t.pipeThrough(new TransformStream))}function Xw(t){return t[Symbol.asyncIterator]=function(){let p=this.getReader(),m=!1;async function y(b){var x;if(m)return;m=!0;try{if(b)await((x=p.cancel)==null?void 0:x.call(p))}finally{try{p.releaseLock()}catch(_){}}}return{async next(){if(m)return{done:!0,value:void 0};let b;try{b=await p.read()}catch(S){throw await y(!1),S}let{done:x,value:_}=b;if(x)return await y(!0),{done:!0,value:void 0};return{done:!1,value:_}},async return(){return await y(!0),{done:!0,value:void 0}},async throw(b){throw await y(!0),b}}},t}async function Qw({stream:t,onError:p,abortSignal:m}){let y=t.getReader(),b=()=>{y.cancel().catch(()=>{})};if(m==null?void 0:m.aborted)b();else m==null||m.addEventListener("abort",b,{once:!0});try{while(!0){let{done:x}=await y.read();if(x)break}}catch(x){p==null||p(x)}finally{m==null||m.removeEventListener("abort",b),y.releaseLock()}}var H0=de({prefix:"aitxt",size:24}),Y0=de({prefix:"call",size:24});var X0=de({prefix:"aitxt",size:24}),Q0=de({prefix:"call",size:24});function ex(t){let p=new Map,m={...t,parts:t.parts.map((b,x)=>{if(b.type==="text"||b.type==="reasoning")return p.set(x,b.text),{...b,text:""};return b})},y=structuredClone(m);for(let[b,x]of p){let _=y.parts[b];if(_.type==="text"||_.type==="reasoning")_.text=x}return y}function Up({message:t,stream:p,onError:m,terminateOnError:y=!1}){var b;let x,_=!1,S=new ReadableStream({start(M){x=M}}),E=jp({messageId:(b=t==null?void 0:t.id)!=null?b:"",lastMessage:t}),k=(M)=>{if(m==null||m(M),!_&&y)_=!0,x==null||x.error(M)};return Qw({stream:zp({stream:p,runUpdateMessageJob(M){return M({state:E,write:()=>{x==null||x.enqueue(ex(E.message))}})},onError:k}),onError:k}).finally(()=>{if(!_)x==null||x.close()}),Yw(S)}async function Tn(t,p){let m=[];if(p==null?void 0:p.ignoreIncompleteToolCalls)t=t.map((y)=>({...y,parts:y.parts.filter((b)=>!Ie(b)||b.state==="approval-responded"||b.state==="output-available"&&b.preliminary!==!0||b.state==="output-error"||b.state==="output-denied")}));for(let y of t)switch(y.role){case"system":{let b=y.parts.filter((_)=>_.type==="text"),x=b.reduce((_,S)=>{if(S.providerMetadata!=null)return{..._,...S.providerMetadata};return _},{});m.push({role:"system",content:b.map((_)=>_.text).join(""),...Object.keys(x).length>0?{providerOptions:x}:{}});break}case"user":{m.push({role:"user",content:y.parts.map((b)=>{var x;if(xa(b))return{type:"text",text:b.text,...b.providerMetadata!=null?{providerOptions:b.providerMetadata}:{}};if(_a(b))return{type:"file",mediaType:b.mediaType,filename:b.filename,data:b.providerReference!=null?{type:"reference",reference:b.providerReference}:{type:"url",url:new URL(b.url)},...b.providerMetadata!=null?{providerOptions:b.providerMetadata}:{}};if(wa(b))return(x=p==null?void 0:p.convertDataPart)==null?void 0:x.call(p,b)}).filter(ip)});break}case"assistant":{if(y.parts!=null){let b=[];async function x(){var _,S,E,k,M,R,C;if(b.length===0)return;let A=[];for(let P of b)if(xa(P))A.push({type:"text",text:P.text,...P.providerMetadata!=null?{providerOptions:P.providerMetadata}:{}});else if(vp(P))A.push({type:"custom",kind:P.kind,...P.providerMetadata!=null?{providerOptions:P.providerMetadata}:{}});else if(_a(P))A.push({type:"file",mediaType:P.mediaType,filename:P.filename,data:P.providerReference!=null?{type:"reference",reference:P.providerReference}:{type:"url",url:new URL(P.url)},...P.providerMetadata!=null?{providerOptions:P.providerMetadata}:{}});else if(yp(P))A.push({type:"reasoning-file",data:{type:"url",url:new URL(P.url)},mediaType:P.mediaType,providerOptions:P.providerMetadata});else if(bp(P))A.push({type:"reasoning",text:P.text,providerOptions:P.providerMetadata});else if(Ie(P)){let U=mt(P);if(P.state!=="input-streaming"){if(A.push({type:"tool-call",toolCallId:P.toolCallId,toolName:U,input:P.state==="output-error"?(_=P.input)!=null?_:("rawInput"in P)?P.rawInput:void 0:P.input,providerExecuted:P.providerExecuted,...P.callProviderMetadata!=null?{providerOptions:P.callProviderMetadata}:{}}),P.approval!=null)A.push({type:"tool-approval-request",approvalId:P.approval.id,toolCallId:P.toolCallId,isAutomatic:P.approval.isAutomatic,...P.approval.signature!=null?{signature:P.approval.signature}:{}});if(P.providerExecuted===!0&&P.state!=="approval-responded"&&(P.state==="output-available"||P.state==="output-error")){let ee=(S=P.resultProviderMetadata)!=null?S:P.callProviderMetadata;A.push({type:"tool-result",toolCallId:P.toolCallId,toolName:U,output:await mp({toolCallId:P.toolCallId,input:P.input,output:P.state==="output-error"?P.errorText:P.output,tool:gp(p==null?void 0:p.tools,U),errorMode:P.state==="output-error"?"json":"none"}),...ee!=null?{providerOptions:ee}:{}})}}}else if(wa(P)){let U=(E=p==null?void 0:p.convertDataPart)==null?void 0:E.call(p,P);if(U!=null)A.push(U)}else throw Error(`Unsupported part: ${P}`);if(A.length>0)m.push({role:"assistant",content:A});let j=b.filter((P)=>{var U;return Ie(P)&&(P.providerExecuted!==!0||((U=P.approval)==null?void 0:U.approved)!=null)});if(j.length>0){let P=[];for(let U of j){if(((k=U.approval)==null?void 0:k.approved)!=null)P.push({type:"tool-approval-response",approvalId:U.approval.id,approved:U.approval.approved,reason:U.approval.reason,providerExecuted:U.providerExecuted});if(U.state==="approval-responded"&&((M=U.approval)==null?void 0:M.approved)===!1)P.push({type:"tool-result",toolCallId:U.toolCallId,toolName:mt(U),output:{type:"execution-denied",reason:U.approval.reason},...U.callProviderMetadata!=null?{providerOptions:U.callProviderMetadata}:{}});if(U.providerExecuted===!0)continue;switch(U.state){case"output-denied":{P.push({type:"tool-result",toolCallId:U.toolCallId,toolName:mt(U),output:{type:"error-text",value:(C=(R=U.approval)==null?void 0:R.reason)!=null?C:"Tool call execution denied."},...U.callProviderMetadata!=null?{providerOptions:U.callProviderMetadata}:{}});break}case"output-error":case"output-available":{let ee=mt(U);P.push({type:"tool-result",toolCallId:U.toolCallId,toolName:ee,output:await mp({toolCallId:U.toolCallId,input:U.input,output:U.state==="output-error"?U.errorText:U.output,tool:gp(p==null?void 0:p.tools,ee),errorMode:U.state==="output-error"?"text":"none"}),...U.callProviderMetadata!=null?{providerOptions:U.callProviderMetadata}:{}});break}}}if(P.length>0)m.push({role:"tool",content:P})}b=[]}for(let _ of y.parts)if(vp(_)||xa(_)||bp(_)||yp(_)||_a(_)||Ie(_)||wa(_))b.push(_);else if(_.type==="step-start")await x();await x();break}break}default:{let b=y.role;throw new ww({originalMessage:y,message:`Unsupported role: ${b}`})}}return m}var Se=T.record(T.string(),$t.optional()),tx=T.record(T.string(),T.string()),rE=Sn(()=>Ht(T.array(T.object({id:T.string(),role:T.enum(["system","user","assistant"]),metadata:T.unknown().optional(),parts:T.array(T.union([T.object({type:T.literal("text"),text:T.string(),state:T.enum(["streaming","done"]).optional(),providerMetadata:L.optional()}),T.object({type:T.literal("reasoning"),id:T.string().optional(),text:T.string(),state:T.enum(["streaming","done"]).optional(),providerMetadata:L.optional()}),T.object({type:T.literal("custom"),kind:T.string(),providerMetadata:L.optional()}),T.object({type:T.literal("source-url"),sourceId:T.string(),url:T.string(),title:T.string().optional(),providerMetadata:L.optional()}),T.object({type:T.literal("source-document"),sourceId:T.string(),mediaType:T.string(),title:T.string(),filename:T.string().optional(),providerMetadata:L.optional()}),T.object({type:T.literal("file"),mediaType:T.string(),filename:T.string().optional(),url:T.string(),providerReference:tx.optional(),providerMetadata:L.optional()}),T.object({type:T.literal("reasoning-file"),mediaType:T.string(),url:T.string(),providerMetadata:L.optional()}),T.object({type:T.literal("step-start")}),T.object({type:T.string().startsWith("data-"),id:T.string().optional(),data:T.unknown()}),T.object({type:T.literal("dynamic-tool"),toolName:T.string(),toolCallId:T.string(),toolMetadata:Se.optional(),state:T.literal("input-streaming"),input:T.unknown().optional(),providerExecuted:T.boolean().optional(),callProviderMetadata:L.optional(),output:T.never().optional(),errorText:T.never().optional(),approval:T.never().optional()}),T.object({type:T.literal("dynamic-tool"),toolName:T.string(),toolCallId:T.string(),toolMetadata:Se.optional(),state:T.literal("input-available"),input:T.unknown(),providerExecuted:T.boolean().optional(),output:T.never().optional(),errorText:T.never().optional(),callProviderMetadata:L.optional(),approval:T.never().optional()}),T.object({type:T.literal("dynamic-tool"),toolName:T.string(),toolCallId:T.string(),toolMetadata:Se.optional(),state:T.literal("approval-requested"),input:T.unknown(),providerExecuted:T.boolean().optional(),output:T.never().optional(),errorText:T.never().optional(),callProviderMetadata:L.optional(),approval:T.object({id:T.string(),approved:T.never().optional(),reason:T.never().optional(),isAutomatic:T.boolean().optional(),signature:T.string().optional()})}),T.object({type:T.literal("dynamic-tool"),toolName:T.string(),toolCallId:T.string(),toolMetadata:Se.optional(),state:T.literal("approval-responded"),input:T.unknown(),providerExecuted:T.boolean().optional(),output:T.never().optional(),errorText:T.never().optional(),callProviderMetadata:L.optional(),approval:T.object({id:T.string(),approved:T.boolean(),reason:T.string().optional(),isAutomatic:T.boolean().optional(),signature:T.string().optional()})}),T.object({type:T.literal("dynamic-tool"),toolName:T.string(),toolCallId:T.string(),toolMetadata:Se.optional(),state:T.literal("output-available"),input:T.unknown(),providerExecuted:T.boolean().optional(),output:T.unknown(),errorText:T.never().optional(),callProviderMetadata:L.optional(),resultProviderMetadata:L.optional(),preliminary:T.boolean().optional(),approval:T.object({id:T.string(),approved:T.literal(!0),reason:T.string().optional(),isAutomatic:T.boolean().optional(),signature:T.string().optional()}).optional()}),T.object({type:T.literal("dynamic-tool"),toolName:T.string(),toolCallId:T.string(),toolMetadata:Se.optional(),state:T.literal("output-error"),input:T.unknown().optional(),rawInput:T.unknown().optional(),providerExecuted:T.boolean().optional(),output:T.never().optional(),errorText:T.string(),callProviderMetadata:L.optional(),resultProviderMetadata:L.optional(),approval:T.object({id:T.string(),approved:T.literal(!0),reason:T.string().optional(),isAutomatic:T.boolean().optional(),signature:T.string().optional()}).optional()}),T.object({type:T.literal("dynamic-tool"),toolName:T.string(),toolCallId:T.string(),toolMetadata:Se.optional(),state:T.literal("output-denied"),input:T.unknown(),providerExecuted:T.boolean().optional(),output:T.never().optional(),errorText:T.never().optional(),callProviderMetadata:L.optional(),approval:T.object({id:T.string(),approved:T.literal(!1),reason:T.string().optional(),isAutomatic:T.boolean().optional(),signature:T.string().optional()})}),T.object({type:T.string().startsWith("tool-"),toolCallId:T.string(),toolMetadata:Se.optional(),state:T.literal("input-streaming"),providerExecuted:T.boolean().optional(),callProviderMetadata:L.optional(),input:T.unknown().optional(),output:T.never().optional(),errorText:T.never().optional(),approval:T.never().optional()}),T.object({type:T.string().startsWith("tool-"),toolCallId:T.string(),toolMetadata:Se.optional(),state:T.literal("input-available"),providerExecuted:T.boolean().optional(),input:T.unknown(),output:T.never().optional(),errorText:T.never().optional(),callProviderMetadata:L.optional(),approval:T.never().optional()}),T.object({type:T.string().startsWith("tool-"),toolCallId:T.string(),toolMetadata:Se.optional(),state:T.literal("approval-requested"),input:T.unknown(),providerExecuted:T.boolean().optional(),output:T.never().optional(),errorText:T.never().optional(),callProviderMetadata:L.optional(),approval:T.object({id:T.string(),approved:T.never().optional(),reason:T.never().optional(),isAutomatic:T.boolean().optional(),signature:T.string().optional()})}),T.object({type:T.string().startsWith("tool-"),toolCallId:T.string(),toolMetadata:Se.optional(),state:T.literal("approval-responded"),input:T.unknown(),providerExecuted:T.boolean().optional(),output:T.never().optional(),errorText:T.never().optional(),callProviderMetadata:L.optional(),approval:T.object({id:T.string(),approved:T.boolean(),reason:T.string().optional(),isAutomatic:T.boolean().optional(),signature:T.string().optional()})}),T.object({type:T.string().startsWith("tool-"),toolCallId:T.string(),toolMetadata:Se.optional(),state:T.literal("output-available"),providerExecuted:T.boolean().optional(),input:T.unknown(),output:T.unknown(),errorText:T.never().optional(),callProviderMetadata:L.optional(),resultProviderMetadata:L.optional(),preliminary:T.boolean().optional(),approval:T.object({id:T.string(),approved:T.literal(!0),reason:T.string().optional(),isAutomatic:T.boolean().optional(),signature:T.string().optional()}).optional()}),T.object({type:T.string().startsWith("tool-"),toolCallId:T.string(),toolMetadata:Se.optional(),state:T.literal("output-error"),providerExecuted:T.boolean().optional(),input:T.unknown().optional(),rawInput:T.unknown().optional(),output:T.never().optional(),errorText:T.string(),callProviderMetadata:L.optional(),resultProviderMetadata:L.optional(),approval:T.object({id:T.string(),approved:T.literal(!0),reason:T.string().optional(),isAutomatic:T.boolean().optional(),signature:T.string().optional()}).optional()}),T.object({type:T.string().startsWith("tool-"),toolCallId:T.string(),toolMetadata:Se.optional(),state:T.literal("output-denied"),providerExecuted:T.boolean().optional(),input:T.unknown(),output:T.never().optional(),errorText:T.never().optional(),callProviderMetadata:L.optional(),approval:T.object({id:T.string(),approved:T.literal(!1),reason:T.string().optional(),isAutomatic:T.boolean().optional(),signature:T.string().optional()})})]))}).superRefine((t,p)=>{if(t.role!=="assistant"&&t.parts.length===0)p.addIssue({origin:"array",code:"too_small",minimum:1,inclusive:!0,input:t.parts,path:["parts"],message:"Message must contain at least one part"})})).nonempty("Messages array must not be empty")));var oE=de({prefix:"call",size:24});var sE=de({prefix:"call",size:24});var lE=de({prefix:"aiobj",size:24});function Zp(t){return({url:p,abortSignal:m})=>Ew({url:p,maxBytes:t==null?void 0:t.maxBytes,abortSignal:m})}var uE=de({prefix:"aiobj",size:24});var dE=Zp();var rx="AI_NoSuchProviderError",nx=`vercel.ai.error.${rx}`,ox=Symbol.for(nx),ax;ax=ox;var fE=de({prefix:"call",size:24});var mE=Zp();var ef=(t)=>{throw TypeError(t)},Pa=(t,p,m)=>p.has(t)||ef("Cannot "+m),Z=(t,p,m)=>(Pa(t,p,"read from private field"),m?m.call(t):p.get(t)),Q=(t,p,m)=>p.has(t)?ef("Cannot add the same private member more than once"):p instanceof WeakSet?p.add(t):p.set(t,m),F=(t,p,m,y)=>(Pa(t,p,"write to private field"),y?y.call(t,m):p.set(t,m),m),D=(t,p,m)=>(Pa(t,p,"access private method"),m),tf=String.fromCharCode(27),wE=new RegExp(`${tf}\\[[0-?]*[ -/]*[@-~]`,"g"),$a=new RegExp(`^${tf}\\[[0-?]*[ -/]*[@-~]`);function gt(t){let p=0,m=0;while(m<t.length){let y=t.slice(m).match($a);if(y){m+=y[0].length;continue}let b=t.codePointAt(m);if(b==null)break;let x=String.fromCodePoint(b);p+=rf(b),m+=x.length}return p}function er(t,p){if(p<=0)return"";let m="",y=0,b=0;while(b<t.length&&y<p){let x=t.slice(b).match($a);if(x){m+=x[0],b+=x[0].length;continue}let _=t.codePointAt(b);if(_==null)break;let S=String.fromCodePoint(_),E=rf(_);if(E>0&&y+E>p)break;m+=S,b+=S.length,y+=E}while(b<t.length){let x=t.slice(b).match($a);if(!x)break;m+=x[0],b+=x[0].length}return m}function rf(t){if(t===9)return 4;if(t<32||t>=127&&t<160)return 0;if(sx(t))return 0;return ix(t)?2:1}function sx(t){return t>=768&&t<=879||t>=1155&&t<=1161||t>=1425&&t<=1469||t===1471||t>=1473&&t<=1474||t>=1476&&t<=1477||t===1479||t>=1552&&t<=1562||t>=1611&&t<=1631||t===1648||t>=1750&&t<=1756||t>=1759&&t<=1764||t>=1767&&t<=1768||t>=1770&&t<=1773||t===1809||t>=1840&&t<=1866||t>=1958&&t<=1968||t>=2027&&t<=2035||t>=2070&&t<=2073||t>=2075&&t<=2083||t>=2085&&t<=2087||t>=2089&&t<=2093||t>=2137&&t<=2139||t>=2259&&t<=2306||t===2362||t===2364||t>=2369&&t<=2376||t===2381||t>=2385&&t<=2391||t===8205||t>=65024&&t<=65039||t>=917760&&t<=917999}function ix(t){return t>=4352&&(t<=4447||t===9001||t===9002||t>=11904&&t<=42191&&t!==12351||t>=44032&&t<=55203||t>=63744&&t<=64255||t>=65040&&t<=65049||t>=65072&&t<=65135||t>=65280&&t<=65376||t>=65504&&t<=65510||t>=127744&&t<=128591||t>=129280&&t<=129535||t>=131072&&t<=262141)}var Be={bold:"\x1B[1m",boldOff:"\x1B[22m",italic:"\x1B[3m",italicOff:"\x1B[23m"},lx="─";function cx(t){var p;let m=t.split(`
|
|
139
|
-
`),
|
|
140
|
-
`)}function
|
|
141
|
-
`)}function
|
|
142
|
-
`)}}function Ix(t,p){let m="",y=Math.max(t.lines.length,p.lines.length);for(let b=0;b<y;b++){let x=p.lines[b];if(t.lines[b]===x)continue;m+=`${or}[${b+1};1H${bx}${x!=null?x:""}`}return m}var Tx="outputTokensPerSecond",Re={reset:"\x1B[0m",dim:"\x1B[2m",user:"\x1B[96m",assistant:"\x1B[92m",reasoning:"\x1B[94m",tool:"\x1B[95m",error:"\x1B[91m"},Ex={user:{color:Re.user,border:"─"},assistant:{color:Re.assistant,border:"─"},reasoning:{color:Re.reasoning,border:"·"},tool:{color:Re.tool,border:"─"},error:{color:Re.error,border:"─"}},kx=500,Rt="↑/↓ · PgUp/PgDn · Esc/Ctrl+C",$x="↑/↓ · PgUp/PgDn · q/Esc/Ctrl+C",zr=`Processing input... ${Rt}`,Wp=`Processing tool results... ${Rt}`,Ra=`Streaming... ${Rt}`,Vp=`Executing tools... ${Rt}`,Ne,We,Pt,En,kn,$n,On,Ce,qe,Mt,vt,Lr,Te,tr,Me,yt,Fr,bt,Ct,Nt,At,Ze,Ot,Dr,z,Mn,Rn,Ur,Qe,af,rr,Br,sf,qr,Pn,lf,Na,Ca,Cn,cf,uf,ja,jn,he,nr,df,za,jt,zn,Dn,Da,pf,Aa=class{constructor(t){Q(this,z),Q(this,Ne),Q(this,We),Q(this,Pt),Q(this,En),Q(this,kn),Q(this,$n),Q(this,On),Q(this,Ce,[]),Q(this,qe,""),Q(this,Mt,!1),Q(this,vt,0),Q(this,Lr,""),Q(this,Te,Ra),Q(this,tr,!1),Q(this,Me,!1),Q(this,yt),Q(this,Fr),Q(this,bt),Q(this,Ct),Q(this,Nt,!0),Q(this,At),Q(this,Ze),Q(this,Ot),Q(this,Dr);var p,m,y,b,x,_;F(this,Ne,(p=t==null?void 0:t.input)!=null?p:process.stdin),F(this,We,(m=t==null?void 0:t.output)!=null?m:process.stdout),F(this,Pt,(y=t==null?void 0:t.frameBuffer)!=null?y:new _x(Z(this,We))),F(this,En,(b=t==null?void 0:t.tools)!=null?b:"auto-collapsed"),F(this,kn,(x=t==null?void 0:t.reasoning)!=null?x:"auto-collapsed"),F(this,$n,(_=t==null?void 0:t.responseStatistics)!=null?_:Tx),F(this,On,t==null?void 0:t.contextSize),F(this,Fr,t==null?void 0:t.contextSize)}async readPrompt(t){var p;return D(this,z,Mn).call(this,t),F(this,Mt,!0),F(this,qe,(p=t==null?void 0:t.initialPrompt)!=null?p:""),F(this,Te,`Type a prompt and press Enter · ${Rt}`),D(this,z,sf).call(this),D(this,z,he).call(this),await new Promise((m,y)=>{F(this,Ze,(b)=>{let x=Nn(b);switch(x.type){case"character":F(this,qe,Z(this,qe)+x.value),D(this,z,Pn).call(this),D(this,z,he).call(this);break;case"backspace":F(this,qe,Z(this,qe).slice(0,-1)),D(this,z,Pn).call(this),D(this,z,he).call(this);break;case"enter":{let _=Z(this,qe);F(this,Mt,!1),D(this,z,qr).call(this),F(this,Te,zr),D(this,z,Na).call(this,_),F(this,qe,""),D(this,z,he).call(this),D(this,z,Qe).call(this),m(_);break}case"up":case"down":D(this,z,rr).call(this,x.type);break;case"page-up":case"page-down":D(this,z,Br).call(this,x.type);break;case"ctrl-l":D(this,z,nr).call(this);break;case"escape":case"ctrl-c":D(this,z,qr).call(this),D(this,z,Rn).call(this),y(ka());break;case"ignore":break}}),D(this,z,Ur).call(this)})}async renderStream(t,p){var m,y,b,x;D(this,z,Mn).call(this,p),F(this,Mt,!1),F(this,Te,zr),D(this,z,lf).call(this,p==null?void 0:p.submittedPrompt),F(this,Me,!1),F(this,yt,void 0),F(this,bt,void 0),F(this,Ct,void 0);let _={tools:(m=p==null?void 0:p.tools)!=null?m:Z(this,En),reasoning:(y=p==null?void 0:p.reasoning)!=null?y:Z(this,kn),responseStatistics:(b=p==null?void 0:p.responseStatistics)!=null?b:Z(this,$n)};D(this,z,he).call(this);let S=new Promise((M)=>{F(this,Dr,M)});F(this,Ze,(M)=>D(this,z,af).call(this,M)),D(this,z,Ur).call(this);let E,k=Ux(D(this,z,uf).call(this,t.uiMessageStream));try{let M=Up({message:t.message,stream:k,onError:(R)=>D(this,z,ja).call(this,"Error",Rx(R))});for await(let R of Mx(M,S)){if(Z(this,Me))break;E=R,D(this,z,Ca).call(this,R,_)}if(!Z(this,Me)&&E&&Z(this,bt)!=null)D(this,z,Ca).call(this,E,_)}finally{if(F(this,Dr,void 0),Z(this,Me))(x=t.abort)==null||x.call(t);if(D(this,z,Qe).call(this),F(this,Te,Z(this,Me)?"Interrupted":(p==null?void 0:p.continueSession)?`Done · Enter another prompt · ${Rt}`:`Done · ${$x}`),D(this,z,he).call(this),await D(this,z,pf).call(this,p),Z(this,Me)||!(p==null?void 0:p.continueSession))D(this,z,Rn).call(this)}if(Z(this,Me))throw ka();return E}async readToolApproval(t,p){return D(this,z,Mn).call(this,p),F(this,Mt,!1),F(this,Te,`Approve ${zx(t)}? y/n · ${Rt}`),F(this,Me,!1),D(this,z,he).call(this),await new Promise((m,y)=>{F(this,Ze,(b)=>{let x=Nn(b);switch(x.type){case"character":{let _=x.value.toLowerCase();if(_==="y")F(this,Te,`Approved · ${zr}`),D(this,z,Qe).call(this),D(this,z,he).call(this),m({approved:!0});else if(_==="n")F(this,Te,`Denied · ${zr}`),D(this,z,Qe).call(this),D(this,z,he).call(this),m({approved:!1,reason:"Denied by user."});break}case"up":case"down":D(this,z,rr).call(this,x.type);break;case"page-up":case"page-down":D(this,z,Br).call(this,x.type);break;case"ctrl-l":D(this,z,nr).call(this);break;case"escape":case"ctrl-c":F(this,Me,!0),D(this,z,Rn).call(this),y(ka());break;default:break}}),D(this,z,Ur).call(this)})}};Ne=new WeakMap;We=new WeakMap;Pt=new WeakMap;En=new WeakMap;kn=new WeakMap;$n=new WeakMap;On=new WeakMap;Ce=new WeakMap;qe=new WeakMap;Mt=new WeakMap;vt=new WeakMap;Lr=new WeakMap;Te=new WeakMap;tr=new WeakMap;Me=new WeakMap;yt=new WeakMap;Fr=new WeakMap;bt=new WeakMap;Ct=new WeakMap;Nt=new WeakMap;At=new WeakMap;Ze=new WeakMap;Ot=new WeakMap;Dr=new WeakMap;z=new WeakSet;Mn=function(t){var p,m,y,b;if(F(this,Lr,(p=t==null?void 0:t.title)!=null?p:Z(this,Lr)),F(this,Fr,(m=t==null?void 0:t.contextSize)!=null?m:Z(this,On)),Z(this,tr))return;if(F(this,tr,!0),Z(this,Pt).reset(),Z(this,We).write("\x1B[?1049h\x1B[?25l"),Z(this,Ne).isTTY)(b=(y=Z(this,Ne)).setRawMode)==null||b.call(y,!0),Z(this,Ne).resume();F(this,Ot,()=>D(this,z,nr).call(this)),Z(this,We).on("resize",Z(this,Ot))};Rn=function(){var t,p;if(D(this,z,Qe).call(this),D(this,z,qr).call(this),!Z(this,tr))return;if(Z(this,Ne).isTTY)(p=(t=Z(this,Ne)).setRawMode)==null||p.call(t,!1),Z(this,Ne).pause();if(Z(this,Ot))Z(this,We).off("resize",Z(this,Ot)),F(this,Ot,void 0);Z(this,We).write("\x1B[?25h\x1B[?1049l"),Z(this,Pt).reset(),F(this,tr,!1)};Ur=function(){if(Z(this,Ze))Z(this,Ne).on("data",Z(this,Ze))};Qe=function(){if(Z(this,Ze))Z(this,Ne).off("data",Z(this,Ze)),F(this,Ze,void 0)};af=function(t){var p;let m=Nn(t);switch(m.type){case"up":case"down":D(this,z,rr).call(this,m.type);break;case"page-up":case"page-down":D(this,z,Br).call(this,m.type);break;case"ctrl-l":D(this,z,nr).call(this);break;case"escape":case"ctrl-c":F(this,Me,!0),(p=Z(this,Dr))==null||p.call(this);break;default:break}};rr=function(t,p=1){let m=t==="up"?p:-p;F(this,vt,D(this,z,za).call(this,Z(this,vt)+m)),D(this,z,he).call(this)};Br=function(t){D(this,z,rr).call(this,t==="page-up"?"up":"down",D(this,z,zn).call(this))};sf=function(){var t,p;D(this,z,qr).call(this),D(this,z,Pn).call(this),F(this,At,setInterval(()=>{F(this,Nt,!Z(this,Nt)),D(this,z,he).call(this)},kx)),(p=(t=Z(this,At)).unref)==null||p.call(t)};qr=function(){if(Z(this,At))clearInterval(Z(this,At)),F(this,At,void 0);F(this,Nt,!0)};Pn=function(){F(this,Nt,!0)};lf=function(t){if(t==null)return;let p=Z(this,Ce).at(-1);if((p==null?void 0:p.kind)==="user"&&p.content===t)return;D(this,z,Na).call(this,t)};Na=function(t){let p=D(this,z,jt).call(this);Z(this,Ce).push({kind:"user",title:"User",content:t}),D(this,z,jn).call(this,p)};Ca=function(t,p){var m,y,b;let x=D(this,z,jt).call(this),_=new Set,S=Vx(t.metadata);F(this,yt,(m=S.totalTokens)!=null?m:Z(this,yt)),F(this,bt,(y=S.outputTokens)!=null?y:Z(this,bt)),F(this,Ct,(b=S.outputTokensPerSecond)!=null?b:Z(this,Ct));for(let[E,k]of t.parts.entries()){let M=Dx(t.id,E);switch(k.type){case"text":{let R=k.text.trim();if(R.length===0)break;_.add(M),D(this,z,Cn).call(this,{id:M,kind:"assistant",title:"Assistant",rightTitle:Kx({totalTokens:Z(this,yt),outputTokens:Z(this,bt),outputTokensPerSecond:Z(this,Ct)},p.responseStatistics),content:R});break}case"reasoning":{let R=k.text.trim();if(p.reasoning==="hidden"||R.length===0)break;_.add(M),D(this,z,Cn).call(this,{id:M,kind:"reasoning",title:"Reasoning",content:R,collapsed:Gp(t,E,p.reasoning,p)});break}default:if(Ie(k)){if(p.tools==="hidden")break;_.add(M),D(this,z,Cn).call(this,{id:M,...Cx(k,{mode:p.tools,collapsed:Gp(t,E,p.tools,p)})})}break}}D(this,z,cf).call(this,t.id,_),D(this,z,jn).call(this,x)};Cn=function(t){let p=t.id?Z(this,Ce).find((m)=>m.id===t.id):void 0;if(p){let m=p.cache;p.kind=t.kind,p.title=t.title,p.rightTitle=t.rightTitle,p.content=t.content,p.collapsed=t.collapsed,p.cache=m&&mf(t,m)?m:void 0;return}Z(this,Ce).push(t)};cf=function(t,p){let m=`${t}:`;F(this,Ce,Z(this,Ce).filter((y)=>y.id==null||!y.id.startsWith(m)||p.has(y.id)))};uf=async function*(t){let p=!1;for await(let m of Zx(t)){let y=Px(m,{hasPendingToolResults:p});if(m.type==="start-step")p=!1;else if(Nx(m))p=!0;if(y&&Z(this,Te)!==y)F(this,Te,y),D(this,z,he).call(this);else if(Ox(m)&&Z(this,Te)!==Ra)F(this,Te,Ra),D(this,z,he).call(this);if(m.type==="error")D(this,z,ja).call(this,"Error",m.errorText);if(m.type==="finish"){let b=Wx(m);F(this,yt,b.totalTokens),F(this,bt,b.outputTokens),F(this,Ct,b.outputTokensPerSecond)}yield m}};ja=function(t,p){let m=D(this,z,jt).call(this);Z(this,Ce).push({kind:"error",title:t,content:p}),D(this,z,jn).call(this,m)};jn=function(t){if(Z(this,vt)!==0){let p=D(this,z,jt).call(this)-t;F(this,vt,D(this,z,za).call(this,Z(this,vt)+p))}D(this,z,he).call(this)};he=function(){let t=gx({width:D(this,z,Dn).call(this),height:D(this,z,Da).call(this),title:Z(this,Lr),rightTitle:gf(Z(this,yt),Z(this,Fr)),visibleBodyLines:D(this,z,df).call(this),input:Z(this,qe),inputActive:Z(this,Mt),inputCursorVisible:Z(this,Nt),status:Z(this,Te)});Z(this,Pt).present(t)};nr=function(){Z(this,Pt).reset(),D(this,z,he).call(this)};df=function(){if(Z(this,Ce).length===0)return["Waiting for input..."];let t=D(this,z,zn).call(this),p=D(this,z,jt).call(this),m=Math.max(0,p-t-Z(this,vt)),y=m+t,b=[],x=0;for(let _ of Z(this,Ce)){let S=ff(_,D(this,z,Dn).call(this)-4),E=x+S.length;if(E>m&&x<y)b.push(...S.slice(Math.max(0,m-x),y-x));if(b.length>=t)break;x=E}return b};za=function(t){let p=Math.max(0,D(this,z,jt).call(this)-D(this,z,zn).call(this));return Math.min(Math.max(0,t),p)};jt=function(){if(Z(this,Ce).length===0)return 1;let t=0;for(let p of Z(this,Ce))t+=ff(p,D(this,z,Dn).call(this)-4).length;return t};zn=function(){return Math.max(1,D(this,z,Da).call(this)-5)};Dn=function(){var t;return Math.max(20,(t=Z(this,We).columns)!=null?t:80)};Da=function(){var t;return Math.max(8,(t=Z(this,We).rows)!=null?t:24)};pf=async function(t){if((t==null?void 0:t.waitForExit)===!1||!Z(this,Ne).isTTY||Z(this,Me))return;await new Promise((p)=>{F(this,Ze,(m)=>{let y=Nn(m);switch(y.type){case"up":case"down":D(this,z,rr).call(this,y.type);break;case"page-up":case"page-down":D(this,z,Br).call(this,y.type);break;case"ctrl-l":D(this,z,nr).call(this);break;case"escape":D(this,z,Qe).call(this),p();break;case"character":if(y.value==="q")D(this,z,Qe).call(this),p();break;case"ctrl-c":D(this,z,Qe).call(this),process.exitCode=130,p();break;default:break}}),D(this,z,Ur).call(this)})};function ka(){return Error("Interrupted")}async function*Mx(t,p){let m=t[Symbol.asyncIterator](),y=p.then(()=>({done:!0,value:void 0}));while(!0){let b=await Promise.race([m.next(),y]);if(b.done)break;yield b.value}}function Rx(t){if(t instanceof Error)return t.message;if(typeof t==="string")return t;return JSON.stringify(t)}function Cx(t,p){var m,y,b,x;let _=mt(t),S=`Tool · ${(m=t.title)!=null?m:_}`,E="input"in t?t.input:void 0,k=E===void 0?"Input: (streaming...)":`Input:
|
|
143
|
-
${
|
|
119
|
+
`)}})}};function qb({originalMessages:e,responseMessageId:t}){if(e==null)return;let r=e[e.length-1];return(r==null?void 0:r.role)==="assistant"?r.id:typeof t==="function"?t():t}var _r=l.record(l.string(),vt.optional()),W0=mn(()=>Dt(l.union([l.looseObject({type:l.literal("text-start"),id:l.string(),providerMetadata:S.optional()}),l.looseObject({type:l.literal("text-delta"),id:l.string(),delta:l.string(),providerMetadata:S.optional()}),l.looseObject({type:l.literal("text-end"),id:l.string(),providerMetadata:S.optional()}),l.looseObject({type:l.literal("error"),errorText:l.string()}),l.looseObject({type:l.literal("tool-input-start"),toolCallId:l.string(),toolName:l.string(),providerExecuted:l.boolean().optional(),providerMetadata:S.optional(),toolMetadata:_r.optional(),dynamic:l.boolean().optional(),title:l.string().optional()}),l.looseObject({type:l.literal("tool-input-delta"),toolCallId:l.string(),inputTextDelta:l.string()}),l.looseObject({type:l.literal("tool-input-available"),toolCallId:l.string(),toolName:l.string(),input:l.unknown(),providerExecuted:l.boolean().optional(),providerMetadata:S.optional(),toolMetadata:_r.optional(),dynamic:l.boolean().optional(),title:l.string().optional()}),l.looseObject({type:l.literal("tool-input-error"),toolCallId:l.string(),toolName:l.string(),input:l.unknown(),providerExecuted:l.boolean().optional(),providerMetadata:S.optional(),toolMetadata:_r.optional(),dynamic:l.boolean().optional(),errorText:l.string(),title:l.string().optional()}),l.looseObject({type:l.literal("tool-approval-request"),approvalId:l.string(),toolCallId:l.string(),isAutomatic:l.boolean().optional(),signature:l.string().optional()}),l.looseObject({type:l.literal("tool-approval-response"),approvalId:l.string(),approved:l.boolean(),reason:l.string().optional(),providerExecuted:l.boolean().optional(),providerMetadata:S.optional()}),l.looseObject({type:l.literal("tool-output-available"),toolCallId:l.string(),output:l.unknown(),providerExecuted:l.boolean().optional(),providerMetadata:S.optional(),toolMetadata:_r.optional(),dynamic:l.boolean().optional(),preliminary:l.boolean().optional()}),l.looseObject({type:l.literal("tool-output-error"),toolCallId:l.string(),errorText:l.string(),providerExecuted:l.boolean().optional(),providerMetadata:S.optional(),toolMetadata:_r.optional(),dynamic:l.boolean().optional()}),l.looseObject({type:l.literal("tool-output-denied"),toolCallId:l.string()}),l.looseObject({type:l.literal("reasoning-start"),id:l.string(),providerMetadata:S.optional()}),l.looseObject({type:l.literal("reasoning-delta"),id:l.string(),delta:l.string(),providerMetadata:S.optional()}),l.looseObject({type:l.literal("reasoning-end"),id:l.string(),providerMetadata:S.optional()}),l.looseObject({type:l.literal("custom"),kind:l.string().transform((e)=>e),providerMetadata:S.optional()}),l.looseObject({type:l.literal("source-url"),sourceId:l.string(),url:l.string(),title:l.string().optional(),providerMetadata:S.optional()}),l.looseObject({type:l.literal("source-document"),sourceId:l.string(),mediaType:l.string(),title:l.string(),filename:l.string().optional(),providerMetadata:S.optional()}),l.looseObject({type:l.literal("file"),url:l.string(),mediaType:l.string(),providerMetadata:S.optional()}),l.looseObject({type:l.literal("reasoning-file"),url:l.string(),mediaType:l.string(),providerMetadata:S.optional()}),l.looseObject({type:l.custom((e)=>typeof e==="string"&&e.startsWith("data-"),{message:'Type must start with "data-"'}),id:l.string().optional(),data:l.unknown(),transient:l.boolean().optional()}),l.looseObject({type:l.literal("start-step")}),l.looseObject({type:l.literal("finish-step")}),l.looseObject({type:l.literal("reset-step")}),l.looseObject({type:l.literal("start"),messageId:l.string().optional(),messageMetadata:l.unknown().optional()}),l.looseObject({type:l.literal("finish"),finishReason:l.enum(["stop","length","content-filter","tool-calls","error","other"]).optional(),messageMetadata:l.unknown().optional()}),l.looseObject({type:l.literal("abort"),reason:l.string().optional()}),l.looseObject({type:l.literal("message-metadata"),messageMetadata:l.unknown()})])));function Wb(e){return e.type.startsWith("data-")}function et(){return Object.create(null)}function da(e){return e.type.startsWith("data-")}function pa(e){return e.type==="text"}function pp(e){return e.type==="custom"}function fa(e){return e.type==="file"}function fp(e){return e.type==="reasoning-file"}function mp(e){return e.type==="reasoning"}function ma(e){return e.type.startsWith("tool-")}function Rp(e){return e.type==="dynamic-tool"}function ce(e){return ma(e)||Rp(e)}function ha(e){return e.type.split("-").slice(1).join("-")}function tt(e){return Rp(e)?e.toolName:ha(e)}function Cp({lastMessage:e,messageId:t}){return{message:(e==null?void 0:e.role)==="assistant"?e:{id:t,metadata:void 0,role:"assistant",parts:[]},activeTextParts:et(),activeReasoningParts:et(),partialToolCalls:et()}}function Ap({stream:e,messageMetadataSchema:t,dataPartSchemas:r,runUpdateMessageJob:n,onError:o,onToolCall:a,onData:s}){return e.pipeThrough(new TransformStream({async transform(i,c){await n(async({state:u,write:d})=>{var p,m,f,y;function g(){let h=u.message.parts,N=h.length-1;while(N>=0&&h[N].type!=="step-start")N--;return h.slice(N+1)}function x(){return g().filter(ce)}function j(h){let V=x().find((K)=>K.toolCallId===h);if(V==null){let K=u.message.parts;for(let M=K.length-1;M>=0;M--){let D=K[M];if(ce(D)&&D.toolCallId===h){V=D;break}}}if(V==null)throw new gt({chunkType:"tool-invocation",chunkId:h,message:`No tool invocation found for tool call ID "${h}".`});return V}function A(h){let V=u.message.parts.filter(ce).find((K)=>{var M;return((M=K.approval)==null?void 0:M.id)===h});if(V==null)throw new gt({chunkType:"tool-approval-response",chunkId:h,message:`No tool invocation found for approval ID "${h}".`});return V}function Z(h,N){var V;let K=N!=null?N:g().find((H)=>ma(H)&&H.toolCallId===h.toolCallId),M=h,D=K;if(K!=null){if(K.state=h.state,D.input=M.input,D.output=M.output,D.errorText=M.errorText,D.rawInput=M.rawInput,D.preliminary=M.preliminary,h.title!==void 0)D.title=h.title;if(h.toolMetadata!==void 0)D.toolMetadata=h.toolMetadata;D.providerExecuted=(V=M.providerExecuted)!=null?V:K.providerExecuted;let H=M.providerMetadata;if(H!=null)if(h.state==="output-available"||h.state==="output-error"){let Be=K;Be.resultProviderMetadata=H}else K.callProviderMetadata=H}else u.message.parts.push({type:`tool-${h.toolName}`,toolCallId:h.toolCallId,state:h.state,title:h.title,...h.toolMetadata!==void 0?{toolMetadata:h.toolMetadata}:{},input:M.input,output:M.output,rawInput:M.rawInput,errorText:M.errorText,providerExecuted:M.providerExecuted,preliminary:M.preliminary,...M.providerMetadata!=null&&(h.state==="output-available"||h.state==="output-error")?{resultProviderMetadata:M.providerMetadata}:{},...M.providerMetadata!=null&&!(h.state==="output-available"||h.state==="output-error")?{callProviderMetadata:M.providerMetadata}:{}})}function R(h,N){var V,K;let M=N!=null?N:g().find((Be)=>Be.type==="dynamic-tool"&&Be.toolCallId===h.toolCallId),D=h,H=M;if(M!=null){if(M.state=h.state,H.toolName=h.toolName,H.input=D.input,H.output=D.output,H.errorText=D.errorText,H.rawInput=(V=D.rawInput)!=null?V:H.rawInput,H.preliminary=D.preliminary,h.title!==void 0)H.title=h.title;if(h.toolMetadata!==void 0)H.toolMetadata=h.toolMetadata;H.providerExecuted=(K=D.providerExecuted)!=null?K:M.providerExecuted;let Be=D.providerMetadata;if(Be!=null)if(h.state==="output-available"||h.state==="output-error"){let Jf=M;Jf.resultProviderMetadata=Be}else M.callProviderMetadata=Be}else u.message.parts.push({type:"dynamic-tool",toolName:h.toolName,toolCallId:h.toolCallId,state:h.state,input:D.input,output:D.output,errorText:D.errorText,preliminary:D.preliminary,providerExecuted:D.providerExecuted,title:h.title,...h.toolMetadata!==void 0?{toolMetadata:h.toolMetadata}:{},...D.providerMetadata!=null&&(h.state==="output-available"||h.state==="output-error")?{resultProviderMetadata:D.providerMetadata}:{},...D.providerMetadata!=null&&!(h.state==="output-available"||h.state==="output-error")?{callProviderMetadata:D.providerMetadata}:{}})}async function P(h){if(h!=null){let N=u.message.metadata!=null?Ip(u.message.metadata,h):h;if(t!=null)await hn({value:N,schema:t,context:{field:"message.metadata",entityId:u.message.id}});u.message.metadata=N}}switch(i.type){case"text-start":{let h={type:"text",text:"",providerMetadata:i.providerMetadata,state:"streaming"};u.activeTextParts[i.id]=h,u.message.parts.push(h),d();break}case"text-delta":{let h=u.activeTextParts[i.id];if(h==null)throw new gt({chunkType:"text-delta",chunkId:i.id,message:`Received text-delta for missing text part with ID "${i.id}". Ensure a "text-start" chunk is sent before any "text-delta" chunks.`});h.text+=i.delta,h.providerMetadata=(p=i.providerMetadata)!=null?p:h.providerMetadata,d();break}case"text-end":{let h=u.activeTextParts[i.id];if(h==null)throw new gt({chunkType:"text-end",chunkId:i.id,message:`Received text-end for missing text part with ID "${i.id}". Ensure a "text-start" chunk is sent before any "text-end" chunks.`});h.state="done",h.providerMetadata=(m=i.providerMetadata)!=null?m:h.providerMetadata,delete u.activeTextParts[i.id],d();break}case"custom":{let h={type:"custom",kind:i.kind,providerMetadata:i.providerMetadata};u.message.parts.push(h),d();break}case"reasoning-start":{let h={type:"reasoning",id:i.id,text:"",providerMetadata:i.providerMetadata,state:"streaming"};u.activeReasoningParts[i.id]=h,u.message.parts.push(h),d();break}case"reasoning-delta":{let h=u.activeReasoningParts[i.id];if(h==null)throw new gt({chunkType:"reasoning-delta",chunkId:i.id,message:`Received reasoning-delta for missing reasoning part with ID "${i.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-delta" chunks.`});h.text+=i.delta,h.providerMetadata=(f=i.providerMetadata)!=null?f:h.providerMetadata,d();break}case"reasoning-end":{let h=u.activeReasoningParts[i.id];if(h==null)throw new gt({chunkType:"reasoning-end",chunkId:i.id,message:`Received reasoning-end for missing reasoning part with ID "${i.id}". Ensure a "reasoning-start" chunk is sent before any "reasoning-end" chunks.`});h.providerMetadata=(y=i.providerMetadata)!=null?y:h.providerMetadata,h.state="done",delete u.activeReasoningParts[i.id],d();break}case"file":case"reasoning-file":{u.message.parts.push({type:i.type,mediaType:i.mediaType,url:i.url,...i.providerMetadata!=null?{providerMetadata:i.providerMetadata}:{}}),d();break}case"source-url":{u.message.parts.push({type:"source-url",sourceId:i.sourceId,url:i.url,title:i.title,providerMetadata:i.providerMetadata}),d();break}case"source-document":{u.message.parts.push({type:"source-document",sourceId:i.sourceId,mediaType:i.mediaType,title:i.title,filename:i.filename,providerMetadata:i.providerMetadata}),d();break}case"tool-input-start":{let h=g().filter(ma);if(u.partialToolCalls[i.toolCallId]={text:"",toolName:i.toolName,index:h.length,dynamic:i.dynamic,title:i.title,toolMetadata:i.toolMetadata},i.dynamic)R({toolCallId:i.toolCallId,toolName:i.toolName,state:"input-streaming",input:void 0,providerExecuted:i.providerExecuted,title:i.title,toolMetadata:i.toolMetadata,providerMetadata:i.providerMetadata});else Z({toolCallId:i.toolCallId,toolName:i.toolName,state:"input-streaming",input:void 0,providerExecuted:i.providerExecuted,title:i.title,toolMetadata:i.toolMetadata,providerMetadata:i.providerMetadata});d();break}case"tool-input-delta":{let h=u.partialToolCalls[i.toolCallId];if(h==null)throw new gt({chunkType:"tool-input-delta",chunkId:i.toolCallId,message:`Received tool-input-delta for missing tool call with ID "${i.toolCallId}". Ensure a "tool-input-start" chunk is sent before any "tool-input-delta" chunks.`});h.text+=i.inputTextDelta;let{value:N}=await Ir(h.text);if(h.dynamic)R({toolCallId:i.toolCallId,toolName:h.toolName,state:"input-streaming",input:N,title:h.title,toolMetadata:h.toolMetadata});else Z({toolCallId:i.toolCallId,toolName:h.toolName,state:"input-streaming",input:N,title:h.title,toolMetadata:h.toolMetadata});d();break}case"tool-input-available":{if(i.dynamic)R({toolCallId:i.toolCallId,toolName:i.toolName,state:"input-available",input:i.input,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata,title:i.title,toolMetadata:i.toolMetadata});else Z({toolCallId:i.toolCallId,toolName:i.toolName,state:"input-available",input:i.input,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata,title:i.title,toolMetadata:i.toolMetadata});if(d(),a&&!i.providerExecuted)await a({toolCall:i});break}case"tool-input-error":{let h=g().filter(ce).find((V)=>V.toolCallId===i.toolCallId);if(h!=null?h.type==="dynamic-tool":!!i.dynamic)R({toolCallId:i.toolCallId,toolName:i.toolName,state:"output-error",input:i.input,errorText:i.errorText,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata,toolMetadata:i.toolMetadata});else Z({toolCallId:i.toolCallId,toolName:i.toolName,state:"output-error",input:void 0,rawInput:i.input,errorText:i.errorText,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata,toolMetadata:i.toolMetadata});d();break}case"tool-approval-request":{let h=j(i.toolCallId);h.state="approval-requested",h.approval={id:i.approvalId,...i.isAutomatic===!0?{isAutomatic:!0}:{},...i.signature!=null?{signature:i.signature}:{}},d();break}case"tool-approval-response":{let h=A(i.approvalId),N=h.approval==null?{id:i.approvalId}:h.approval;if(h.state="approval-responded",h.approval={id:i.approvalId,approved:i.approved,...i.reason!=null?{reason:i.reason}:{},...N.isAutomatic===!0?{isAutomatic:!0}:{},...N.signature!=null?{signature:N.signature}:{}},i.providerExecuted!=null)h.providerExecuted=i.providerExecuted;if(i.providerMetadata!=null)h.callProviderMetadata=i.providerMetadata;d();break}case"tool-output-denied":{let h=j(i.toolCallId);h.state="output-denied",d();break}case"tool-output-available":{let h=j(i.toolCallId);if(h.type==="dynamic-tool")R({toolCallId:i.toolCallId,toolName:h.toolName,state:"output-available",input:h.input,output:i.output,preliminary:i.preliminary,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata,title:h.title,toolMetadata:h.toolMetadata},h);else Z({toolCallId:i.toolCallId,toolName:ha(h),state:"output-available",input:h.input,output:i.output,providerExecuted:i.providerExecuted,preliminary:i.preliminary,providerMetadata:i.providerMetadata,title:h.title,toolMetadata:h.toolMetadata},h);d();break}case"tool-output-error":{let h=j(i.toolCallId);if(h.type==="dynamic-tool")R({toolCallId:i.toolCallId,toolName:h.toolName,state:"output-error",input:h.input,errorText:i.errorText,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata,title:h.title,toolMetadata:h.toolMetadata},h);else Z({toolCallId:i.toolCallId,toolName:ha(h),state:"output-error",input:h.input,rawInput:h.rawInput,errorText:i.errorText,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata,title:h.title,toolMetadata:h.toolMetadata},h);d();break}case"start-step":{u.message.parts.push({type:"step-start"});break}case"finish-step":{u.activeTextParts=et(),u.activeReasoningParts=et();break}case"reset-step":{let h=g();if(u.activeTextParts=et(),u.activeReasoningParts=et(),u.partialToolCalls=et(),h.length>0)u.message.parts.splice(u.message.parts.length-h.length,h.length),d();break}case"start":{if(i.messageId!=null)u.message.id=i.messageId;if(await P(i.messageMetadata),i.messageId!=null||i.messageMetadata!=null)d({updateStatus:!1});break}case"finish":{if(i.finishReason!=null)u.finishReason=i.finishReason;if(await P(i.messageMetadata),i.messageMetadata!=null)d();break}case"message-metadata":{if(await P(i.messageMetadata),i.messageMetadata!=null)d();break}case"error":{o==null||o(Error(i.errorText));break}default:if(Wb(i)){if((r==null?void 0:r[i.type])!=null){let V=u.message.parts.findIndex((M)=>("id"in M)&&("data"in M)&&M.id===i.id&&M.type===i.type),K=V>=0?V:u.message.parts.length;await hn({value:i.data,schema:r[i.type],context:{field:`message.parts[${K}].data`,entityName:i.type,entityId:i.id}})}let h=i;if(h.transient){s==null||s(h);break}let N=h.id!=null?u.message.parts.find((V)=>h.type===V.type&&h.id===V.id):void 0;if(N!=null)N.data=h.data;else u.message.parts.push(h);s==null||s(h),d()}}c.enqueue(i)})}}))}function Vb({messageId:e,originalMessages:t=[],onStepEnd:r,onStepFinish:n,onEnd:o,onFinish:a,onError:s,stream:i}){let c=t==null?void 0:t[t.length-1];if((c==null?void 0:c.role)!=="assistant")c=void 0;else e=c.id;let u=!1,d=i.pipeThrough(new TransformStream({transform(A,Z){if(A.type==="start"){let R=A;if(R.messageId==null&&e!=null)R.messageId=e}if(A.type==="abort")u=!0;Z.enqueue(A)}})),p=r!=null?r:n,m=o!=null?o:a;if(m==null&&p==null)return d;let f=Cp({lastMessage:c?structuredClone(c):void 0,messageId:e!=null?e:""}),y=async(A)=>{await A({state:f,write:()=>{}})},g=!1,x=async()=>{if(g||!m)return;g=!0;let A=f.message.id===(c==null?void 0:c.id);await m({isAborted:u,isContinuation:A,responseMessage:f.message,messages:[...A?t.slice(0,-1):t,f.message],finishReason:f.finishReason})},j=async()=>{if(!p)return;let A=f.message.id===(c==null?void 0:c.id);try{await p({isContinuation:A,responseMessage:structuredClone(f.message),messages:[...A?t.slice(0,-1):t,structuredClone(f.message)]})}catch(Z){s(Z)}};return Ap({stream:d,runUpdateMessageJob:y,onError:s}).pipeThrough(new TransformStream({async transform(A,Z){if(A.type==="finish-step")await j();Z.enqueue(A)},async cancel(){await x()},async flush(){await x()}}))}function Gb(e,{tools:t,sendReasoning:r=!0,sendSources:n=!1,sendStart:o=!0,sendFinish:a=!0,onError:s=()=>"An error occurred.",messageMetadata:i,responseMessageId:c}={}){let u=(p)=>{let m=t==null?void 0:t[p.toolName];if(m==null)return p.dynamic;return(m==null?void 0:m.type)==="dynamic"?!0:void 0},d=e.type;switch(d){case"text-start":return{type:"text-start",id:e.id,...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}};case"text-delta":return{type:"text-delta",id:e.id,delta:e.text,...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}};case"text-end":return{type:"text-end",id:e.id,...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}};case"reasoning-start":case"reasoning-end":{if(!r)return;return{type:d,id:e.id,...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}}}case"reasoning-delta":{if(!r)return;return{type:"reasoning-delta",id:e.id,delta:e.text,...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}}}case"file":case"reasoning-file":{if(d==="reasoning-file"&&!r)return;return{type:e.type,mediaType:e.file.mediaType,url:`data:${e.file.mediaType};base64,${e.file.base64}`,...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}}}case"source":{if(!n)return;if(e.sourceType==="url")return{type:"source-url",sourceId:e.id,url:e.url,title:e.title,...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}};if(e.sourceType==="document")return{type:"source-document",sourceId:e.id,mediaType:e.mediaType,title:e.title,filename:e.filename,...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}};return}case"custom":return{type:"custom",kind:e.kind,...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{}};case"tool-input-start":{let p=u(e);return{type:"tool-input-start",toolCallId:e.id,toolName:e.toolName,...e.providerExecuted!=null?{providerExecuted:e.providerExecuted}:{},...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{},...e.toolMetadata!=null?{toolMetadata:e.toolMetadata}:{},...p!=null?{dynamic:p}:{},...e.title!=null?{title:e.title}:{}}}case"tool-input-delta":return{type:"tool-input-delta",toolCallId:e.id,inputTextDelta:e.delta};case"tool-call":{let p=u(e);if(e.invalid)return{type:"tool-input-error",toolCallId:e.toolCallId,toolName:e.toolName,input:e.input,...e.providerExecuted!=null?{providerExecuted:e.providerExecuted}:{},...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{},...e.toolMetadata!=null?{toolMetadata:e.toolMetadata}:{},...p!=null?{dynamic:p}:{},errorText:s(e.error),...e.title!=null?{title:e.title}:{}};return{type:"tool-input-available",toolCallId:e.toolCallId,toolName:e.toolName,input:e.input,...e.providerExecuted!=null?{providerExecuted:e.providerExecuted}:{},...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{},...e.toolMetadata!=null?{toolMetadata:e.toolMetadata}:{},...p!=null?{dynamic:p}:{},...e.title!=null?{title:e.title}:{}}}case"tool-approval-request":return{type:"tool-approval-request",approvalId:e.approvalId,toolCallId:e.toolCall.toolCallId,...e.isAutomatic!=null?{isAutomatic:e.isAutomatic}:{},...e.signature!=null?{signature:e.signature}:{}};case"tool-approval-response":return{type:"tool-approval-response",approvalId:e.approvalId,approved:e.approved,...e.reason!=null?{reason:e.reason}:{},...e.providerExecuted!=null?{providerExecuted:e.providerExecuted}:{}};case"tool-result":{let p=u(e);return{type:"tool-output-available",toolCallId:e.toolCallId,output:e.output===void 0?null:e.output,...e.providerExecuted!=null?{providerExecuted:e.providerExecuted}:{},...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{},...e.toolMetadata!=null?{toolMetadata:e.toolMetadata}:{},...e.preliminary!=null?{preliminary:e.preliminary}:{},...p!=null?{dynamic:p}:{}}}case"tool-error":{let p=u(e);return{type:"tool-output-error",toolCallId:e.toolCallId,errorText:e.providerExecuted?typeof e.error==="string"?e.error:JSON.stringify(e.error):s(e.error),...e.providerExecuted!=null?{providerExecuted:e.providerExecuted}:{},...e.providerMetadata!=null?{providerMetadata:e.providerMetadata}:{},...e.toolMetadata!=null?{toolMetadata:e.toolMetadata}:{},...p!=null?{dynamic:p}:{}}}case"tool-output-denied":return{type:"tool-output-denied",toolCallId:e.toolCallId};case"error":return{type:"error",errorText:s(e.error)};case"start-step":return{type:"start-step"};case"finish-step":return{type:"finish-step"};case"start":{if(!o)return;return{type:"start",...i!=null?{messageMetadata:i}:{},...c!=null?{messageId:c}:{}}}case"finish":{if(!a)return;return{type:"finish",finishReason:e.finishReason,...i!=null?{messageMetadata:i}:{}}}case"abort":return e;case"tool-input-end":case"raw":return;default:throw Error(`Unknown chunk type: ${d}`)}}function Op({stream:e,tools:t,sendReasoning:r=!0,sendSources:n=!1,sendStart:o=!0,sendFinish:a=!0,onError:s=()=>"An error occurred.",messageMetadata:i,originalMessages:c,generateMessageId:u,onEnd:d,onFinish:p}){let m=u!=null?qb({originalMessages:c,responseMessageId:u}):void 0,f=e.pipeThrough(new TransformStream({transform:async(y,g)=>{let x=i==null?void 0:i({part:y}),j=Gb(y,{tools:t,sendReasoning:r,sendSources:n,sendStart:o,sendFinish:a,onError:s,messageMetadata:x,responseMessageId:m});if(j!=null)g.enqueue(j);if(x!=null&&y.type!=="start"&&y.type!=="finish")g.enqueue({type:"message-metadata",messageMetadata:x})}}));return Vb({stream:f,messageId:m!=null?m:u==null?void 0:u(),originalMessages:c,onEnd:d!=null?d:p,onError:s})}function Jb(e){return Kb(e.pipeThrough(new TransformStream))}function Kb(e){return e[Symbol.asyncIterator]=function(){let t=this.getReader(),r=!1;async function n(o){var a;if(r)return;r=!0;try{if(o)await((a=t.cancel)==null?void 0:a.call(t))}finally{try{t.releaseLock()}catch(s){}}}return{async next(){if(r)return{done:!0,value:void 0};let o;try{o=await t.read()}catch(i){throw await n(!1),i}let{done:a,value:s}=o;if(a)return await n(!0),{done:!0,value:void 0};return{done:!1,value:s}},async return(){return await n(!0),{done:!0,value:void 0}},async throw(o){throw await n(!0),o}}},e}async function Hb({stream:e,onError:t,abortSignal:r}){let n=e.getReader(),o=()=>{n.cancel().catch(()=>{})};if(r==null?void 0:r.aborted)o();else r==null||r.addEventListener("abort",o,{once:!0});try{while(!0){let{done:a}=await n.read();if(a)break}}catch(a){t==null||t(a)}finally{r==null||r.removeEventListener("abort",o),n.releaseLock()}}var G0=J({prefix:"aitxt",size:24}),J0=J({prefix:"call",size:24});var K0=J({prefix:"aitxt",size:24}),H0=J({prefix:"call",size:24});function Yb(e){let t=new Map,r={...e,parts:e.parts.map((o,a)=>{if(o.type==="text"||o.type==="reasoning")return t.set(a,o.text),{...o,text:""};return o})},n=structuredClone(r);for(let[o,a]of t){let s=n.parts[o];if(s.type==="text"||s.type==="reasoning")s.text=a}return n}function Pp({message:e,stream:t,onError:r,terminateOnError:n=!1}){var o;let a,s=!1,i=new ReadableStream({start(d){a=d}}),c=Cp({messageId:(o=e==null?void 0:e.id)!=null?o:"",lastMessage:e}),u=(d)=>{if(r==null||r(d),!s&&n)s=!0,a==null||a.error(d)};return Hb({stream:Ap({stream:t,runUpdateMessageJob(d){return d({state:c,write:()=>{a==null||a.enqueue(Yb(c.message))}})},onError:u}),onError:u}).finally(()=>{if(!s)a==null||a.close()}),Jb(i)}async function gn(e,t){let r=[];if(t==null?void 0:t.ignoreIncompleteToolCalls)e=e.map((n)=>({...n,parts:n.parts.filter((o)=>!ce(o)||o.state==="approval-responded"||o.state==="output-available"&&o.preliminary!==!0||o.state==="output-error"||o.state==="output-denied")}));for(let n of e)switch(n.role){case"system":{let o=n.parts.filter((s)=>s.type==="text"),a=o.reduce((s,i)=>{if(i.providerMetadata!=null)return{...s,...i.providerMetadata};return s},{});r.push({role:"system",content:o.map((s)=>s.text).join(""),...Object.keys(a).length>0?{providerOptions:a}:{}});break}case"user":{r.push({role:"user",content:n.parts.map((o)=>{var a;if(pa(o))return{type:"text",text:o.text,...o.providerMetadata!=null?{providerOptions:o.providerMetadata}:{}};if(fa(o))return{type:"file",mediaType:o.mediaType,filename:o.filename,data:o.providerReference!=null?{type:"reference",reference:o.providerReference}:{type:"url",url:new URL(o.url)},...o.providerMetadata!=null?{providerOptions:o.providerMetadata}:{}};if(da(o))return(a=t==null?void 0:t.convertDataPart)==null?void 0:a.call(t,o)}).filter(rp)});break}case"assistant":{if(n.parts!=null){let o=[];async function a(){var s,i,c,u,d,p,m;if(o.length===0)return;let f=[];for(let g of o)if(pa(g))f.push({type:"text",text:g.text,...g.providerMetadata!=null?{providerOptions:g.providerMetadata}:{}});else if(pp(g))f.push({type:"custom",kind:g.kind,...g.providerMetadata!=null?{providerOptions:g.providerMetadata}:{}});else if(fa(g))f.push({type:"file",mediaType:g.mediaType,filename:g.filename,data:g.providerReference!=null?{type:"reference",reference:g.providerReference}:{type:"url",url:new URL(g.url)},...g.providerMetadata!=null?{providerOptions:g.providerMetadata}:{}});else if(fp(g))f.push({type:"reasoning-file",data:{type:"url",url:new URL(g.url)},mediaType:g.mediaType,providerOptions:g.providerMetadata});else if(mp(g))f.push({type:"reasoning",text:g.text,providerOptions:g.providerMetadata});else if(ce(g)){let x=tt(g);if(g.state!=="input-streaming"){if(f.push({type:"tool-call",toolCallId:g.toolCallId,toolName:x,input:g.state==="output-error"?(s=g.input)!=null?s:("rawInput"in g)?g.rawInput:void 0:g.input,providerExecuted:g.providerExecuted,...g.callProviderMetadata!=null?{providerOptions:g.callProviderMetadata}:{}}),g.approval!=null)f.push({type:"tool-approval-request",approvalId:g.approval.id,toolCallId:g.toolCallId,isAutomatic:g.approval.isAutomatic,...g.approval.signature!=null?{signature:g.approval.signature}:{}});if(g.providerExecuted===!0&&g.state!=="approval-responded"&&(g.state==="output-available"||g.state==="output-error")){let j=(i=g.resultProviderMetadata)!=null?i:g.callProviderMetadata;f.push({type:"tool-result",toolCallId:g.toolCallId,toolName:x,output:await cp({toolCallId:g.toolCallId,input:g.input,output:g.state==="output-error"?g.errorText:g.output,tool:dp(t==null?void 0:t.tools,x),errorMode:g.state==="output-error"?"json":"none"}),...j!=null?{providerOptions:j}:{}})}}}else if(da(g)){let x=(c=t==null?void 0:t.convertDataPart)==null?void 0:c.call(t,g);if(x!=null)f.push(x)}else throw Error(`Unsupported part: ${g}`);if(f.length>0)r.push({role:"assistant",content:f});let y=o.filter((g)=>{var x;return ce(g)&&(g.providerExecuted!==!0||((x=g.approval)==null?void 0:x.approved)!=null)});if(y.length>0){let g=[];for(let x of y){if(((u=x.approval)==null?void 0:u.approved)!=null)g.push({type:"tool-approval-response",approvalId:x.approval.id,approved:x.approval.approved,reason:x.approval.reason,providerExecuted:x.providerExecuted});if(x.state==="approval-responded"&&((d=x.approval)==null?void 0:d.approved)===!1)g.push({type:"tool-result",toolCallId:x.toolCallId,toolName:tt(x),output:{type:"execution-denied",reason:x.approval.reason},...x.callProviderMetadata!=null?{providerOptions:x.callProviderMetadata}:{}});if(x.providerExecuted===!0)continue;switch(x.state){case"output-denied":{g.push({type:"tool-result",toolCallId:x.toolCallId,toolName:tt(x),output:{type:"error-text",value:(m=(p=x.approval)==null?void 0:p.reason)!=null?m:"Tool call execution denied."},...x.callProviderMetadata!=null?{providerOptions:x.callProviderMetadata}:{}});break}case"output-error":case"output-available":{let j=tt(x);g.push({type:"tool-result",toolCallId:x.toolCallId,toolName:j,output:await cp({toolCallId:x.toolCallId,input:x.input,output:x.state==="output-error"?x.errorText:x.output,tool:dp(t==null?void 0:t.tools,j),errorMode:x.state==="output-error"?"text":"none"}),...x.callProviderMetadata!=null?{providerOptions:x.callProviderMetadata}:{}});break}}}if(g.length>0)r.push({role:"tool",content:g})}o=[]}for(let s of n.parts)if(pp(s)||pa(s)||mp(s)||fp(s)||fa(s)||ce(s)||da(s))o.push(s);else if(s.type==="step-start")await a();await a();break}break}default:{let o=n.role;throw new vb({originalMessage:n,message:`Unsupported role: ${o}`})}}return r}var le=l.record(l.string(),vt.optional()),Xb=l.record(l.string(),l.string()),Q0=mn(()=>Dt(l.array(l.object({id:l.string(),role:l.enum(["system","user","assistant"]),metadata:l.unknown().optional(),parts:l.array(l.union([l.object({type:l.literal("text"),text:l.string(),state:l.enum(["streaming","done"]).optional(),providerMetadata:S.optional()}),l.object({type:l.literal("reasoning"),id:l.string().optional(),text:l.string(),state:l.enum(["streaming","done"]).optional(),providerMetadata:S.optional()}),l.object({type:l.literal("custom"),kind:l.string(),providerMetadata:S.optional()}),l.object({type:l.literal("source-url"),sourceId:l.string(),url:l.string(),title:l.string().optional(),providerMetadata:S.optional()}),l.object({type:l.literal("source-document"),sourceId:l.string(),mediaType:l.string(),title:l.string(),filename:l.string().optional(),providerMetadata:S.optional()}),l.object({type:l.literal("file"),mediaType:l.string(),filename:l.string().optional(),url:l.string(),providerReference:Xb.optional(),providerMetadata:S.optional()}),l.object({type:l.literal("reasoning-file"),mediaType:l.string(),url:l.string(),providerMetadata:S.optional()}),l.object({type:l.literal("step-start")}),l.object({type:l.string().startsWith("data-"),id:l.string().optional(),data:l.unknown()}),l.object({type:l.literal("dynamic-tool"),toolName:l.string(),toolCallId:l.string(),toolMetadata:le.optional(),state:l.literal("input-streaming"),input:l.unknown().optional(),providerExecuted:l.boolean().optional(),callProviderMetadata:S.optional(),output:l.never().optional(),errorText:l.never().optional(),approval:l.never().optional()}),l.object({type:l.literal("dynamic-tool"),toolName:l.string(),toolCallId:l.string(),toolMetadata:le.optional(),state:l.literal("input-available"),input:l.unknown(),providerExecuted:l.boolean().optional(),output:l.never().optional(),errorText:l.never().optional(),callProviderMetadata:S.optional(),approval:l.never().optional()}),l.object({type:l.literal("dynamic-tool"),toolName:l.string(),toolCallId:l.string(),toolMetadata:le.optional(),state:l.literal("approval-requested"),input:l.unknown(),providerExecuted:l.boolean().optional(),output:l.never().optional(),errorText:l.never().optional(),callProviderMetadata:S.optional(),approval:l.object({id:l.string(),approved:l.never().optional(),reason:l.never().optional(),isAutomatic:l.boolean().optional(),signature:l.string().optional()})}),l.object({type:l.literal("dynamic-tool"),toolName:l.string(),toolCallId:l.string(),toolMetadata:le.optional(),state:l.literal("approval-responded"),input:l.unknown(),providerExecuted:l.boolean().optional(),output:l.never().optional(),errorText:l.never().optional(),callProviderMetadata:S.optional(),approval:l.object({id:l.string(),approved:l.boolean(),reason:l.string().optional(),isAutomatic:l.boolean().optional(),signature:l.string().optional()})}),l.object({type:l.literal("dynamic-tool"),toolName:l.string(),toolCallId:l.string(),toolMetadata:le.optional(),state:l.literal("output-available"),input:l.unknown(),providerExecuted:l.boolean().optional(),output:l.unknown(),errorText:l.never().optional(),callProviderMetadata:S.optional(),resultProviderMetadata:S.optional(),preliminary:l.boolean().optional(),approval:l.object({id:l.string(),approved:l.literal(!0),reason:l.string().optional(),isAutomatic:l.boolean().optional(),signature:l.string().optional()}).optional()}),l.object({type:l.literal("dynamic-tool"),toolName:l.string(),toolCallId:l.string(),toolMetadata:le.optional(),state:l.literal("output-error"),input:l.unknown().optional(),rawInput:l.unknown().optional(),providerExecuted:l.boolean().optional(),output:l.never().optional(),errorText:l.string(),callProviderMetadata:S.optional(),resultProviderMetadata:S.optional(),approval:l.object({id:l.string(),approved:l.literal(!0),reason:l.string().optional(),isAutomatic:l.boolean().optional(),signature:l.string().optional()}).optional()}),l.object({type:l.literal("dynamic-tool"),toolName:l.string(),toolCallId:l.string(),toolMetadata:le.optional(),state:l.literal("output-denied"),input:l.unknown(),providerExecuted:l.boolean().optional(),output:l.never().optional(),errorText:l.never().optional(),callProviderMetadata:S.optional(),approval:l.object({id:l.string(),approved:l.literal(!1),reason:l.string().optional(),isAutomatic:l.boolean().optional(),signature:l.string().optional()})}),l.object({type:l.string().startsWith("tool-"),toolCallId:l.string(),toolMetadata:le.optional(),state:l.literal("input-streaming"),providerExecuted:l.boolean().optional(),callProviderMetadata:S.optional(),input:l.unknown().optional(),output:l.never().optional(),errorText:l.never().optional(),approval:l.never().optional()}),l.object({type:l.string().startsWith("tool-"),toolCallId:l.string(),toolMetadata:le.optional(),state:l.literal("input-available"),providerExecuted:l.boolean().optional(),input:l.unknown(),output:l.never().optional(),errorText:l.never().optional(),callProviderMetadata:S.optional(),approval:l.never().optional()}),l.object({type:l.string().startsWith("tool-"),toolCallId:l.string(),toolMetadata:le.optional(),state:l.literal("approval-requested"),input:l.unknown(),providerExecuted:l.boolean().optional(),output:l.never().optional(),errorText:l.never().optional(),callProviderMetadata:S.optional(),approval:l.object({id:l.string(),approved:l.never().optional(),reason:l.never().optional(),isAutomatic:l.boolean().optional(),signature:l.string().optional()})}),l.object({type:l.string().startsWith("tool-"),toolCallId:l.string(),toolMetadata:le.optional(),state:l.literal("approval-responded"),input:l.unknown(),providerExecuted:l.boolean().optional(),output:l.never().optional(),errorText:l.never().optional(),callProviderMetadata:S.optional(),approval:l.object({id:l.string(),approved:l.boolean(),reason:l.string().optional(),isAutomatic:l.boolean().optional(),signature:l.string().optional()})}),l.object({type:l.string().startsWith("tool-"),toolCallId:l.string(),toolMetadata:le.optional(),state:l.literal("output-available"),providerExecuted:l.boolean().optional(),input:l.unknown(),output:l.unknown(),errorText:l.never().optional(),callProviderMetadata:S.optional(),resultProviderMetadata:S.optional(),preliminary:l.boolean().optional(),approval:l.object({id:l.string(),approved:l.literal(!0),reason:l.string().optional(),isAutomatic:l.boolean().optional(),signature:l.string().optional()}).optional()}),l.object({type:l.string().startsWith("tool-"),toolCallId:l.string(),toolMetadata:le.optional(),state:l.literal("output-error"),providerExecuted:l.boolean().optional(),input:l.unknown().optional(),rawInput:l.unknown().optional(),output:l.never().optional(),errorText:l.string(),callProviderMetadata:S.optional(),resultProviderMetadata:S.optional(),approval:l.object({id:l.string(),approved:l.literal(!0),reason:l.string().optional(),isAutomatic:l.boolean().optional(),signature:l.string().optional()}).optional()}),l.object({type:l.string().startsWith("tool-"),toolCallId:l.string(),toolMetadata:le.optional(),state:l.literal("output-denied"),providerExecuted:l.boolean().optional(),input:l.unknown(),output:l.never().optional(),errorText:l.never().optional(),callProviderMetadata:S.optional(),approval:l.object({id:l.string(),approved:l.literal(!1),reason:l.string().optional(),isAutomatic:l.boolean().optional(),signature:l.string().optional()})})]))}).superRefine((e,t)=>{if(e.role!=="assistant"&&e.parts.length===0)t.addIssue({origin:"array",code:"too_small",minimum:1,inclusive:!0,input:e.parts,path:["parts"],message:"Message must contain at least one part"})})).nonempty("Messages array must not be empty")));var tE=J({prefix:"call",size:24});var nE=J({prefix:"call",size:24});var aE=J({prefix:"aiobj",size:24});function Np(e){return({url:t,abortSignal:r})=>Sb({url:t,maxBytes:e==null?void 0:e.maxBytes,abortSignal:r})}var iE=J({prefix:"aiobj",size:24});var lE=Np();var Qb="AI_NoSuchProviderError",ex=`vercel.ai.error.${Qb}`,tx=Symbol.for(ex),rx;rx=tx;var uE=J({prefix:"call",size:24});var dE=Np();var Kp=(e)=>{throw TypeError(e)},Ta=(e,t,r)=>t.has(e)||Kp("Cannot "+r),_=(e,t,r)=>(Ta(e,t,"read from private field"),r?r.call(e):t.get(e)),z=(e,t,r)=>t.has(e)?Kp("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),I=(e,t,r,n)=>(Ta(e,t,"write to private field"),n?n.call(e,r):t.set(e,r),r),b=(e,t,r)=>(Ta(e,t,"access private method"),r),Hp=String.fromCharCode(27),vE=new RegExp(`${Hp}\\[[0-?]*[ -/]*[@-~]`,"g"),wa=new RegExp(`^${Hp}\\[[0-?]*[ -/]*[@-~]`);function nt(e){let t=0,r=0;while(r<e.length){let n=e.slice(r).match(wa);if(n){r+=n[0].length;continue}let o=e.codePointAt(r);if(o==null)break;let a=String.fromCodePoint(o);t+=Yp(o),r+=a.length}return t}function Ft(e,t){if(t<=0)return"";let r="",n=0,o=0;while(o<e.length&&n<t){let a=e.slice(o).match(wa);if(a){r+=a[0],o+=a[0].length;continue}let s=e.codePointAt(o);if(s==null)break;let i=String.fromCodePoint(s),c=Yp(s);if(c>0&&n+c>t)break;r+=i,o+=i.length,n+=c}while(o<e.length){let a=e.slice(o).match(wa);if(!a)break;r+=a[0],o+=a[0].length}return r}function Yp(e){if(e===9)return 4;if(e<32||e>=127&&e<160)return 0;if(nx(e))return 0;return ox(e)?2:1}function nx(e){return e>=768&&e<=879||e>=1155&&e<=1161||e>=1425&&e<=1469||e===1471||e>=1473&&e<=1474||e>=1476&&e<=1477||e===1479||e>=1552&&e<=1562||e>=1611&&e<=1631||e===1648||e>=1750&&e<=1756||e>=1759&&e<=1764||e>=1767&&e<=1768||e>=1770&&e<=1773||e===1809||e>=1840&&e<=1866||e>=1958&&e<=1968||e>=2027&&e<=2035||e>=2070&&e<=2073||e>=2075&&e<=2083||e>=2085&&e<=2087||e>=2089&&e<=2093||e>=2137&&e<=2139||e>=2259&&e<=2306||e===2362||e===2364||e>=2369&&e<=2376||e===2381||e>=2385&&e<=2391||e===8205||e>=65024&&e<=65039||e>=917760&&e<=917999}function ox(e){return e>=4352&&(e<=4447||e===9001||e===9002||e>=11904&&e<=42191&&e!==12351||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65135||e>=65280&&e<=65376||e>=65504&&e<=65510||e>=127744&&e<=128591||e>=129280&&e<=129535||e>=131072&&e<=262141)}var Re={bold:"\x1B[1m",boldOff:"\x1B[22m",italic:"\x1B[3m",italicOff:"\x1B[23m"},ax="─";function sx(e){var t;let r=e.split(`
|
|
120
|
+
`),n=[];for(let o=0;o<r.length;o+=1){let a=lx(r,o);if(a!=null){n.push(...dx(a)),o=a.endIndex-1;continue}n.push(ix((t=r[o])!=null?t:""))}return n.join(`
|
|
121
|
+
`)}function ix(e){if(e.startsWith("### "))return Ze(`▶ ${e.slice(4)}`);if(e.startsWith("## "))return Ze(`■ ${e.slice(3)}`);if(e.startsWith("# "))return Ze(`█ ${e.slice(2)}`);let t=e.match(/^(\s*)[-+*]\s+(.*)$/);if(t){let[,r,n=""]=t;return Ze(`${r}•${n.length>0?` ${n}`:""}`)}if(/^\d+\. /.test(e))return Ze(e.replace(/^(\d+)\. /,"$1. "));if(e.startsWith("> "))return Ze(`│ ${e.slice(2)}`);return Ze(e)}function Ze(e){return e.replace(/`([^`]+)`/g,"$1").replace(/\*\*([^*\n]+)\*\*/g,`${Re.bold}$1${Re.boldOff}`).replace(/__([^_\n]+)__/g,`${Re.bold}$1${Re.boldOff}`).replace(/\*([^*\n]+)\*/g,`${Re.italic}$1${Re.italicOff}`).replace(/_([^_\n]+)_/g,`${Re.italic}$1${Re.italicOff}`)}function lx(e,t){var r,n,o;let a=va((r=e[t])!=null?r:"");if(a==null||a.length<2)return;let s=va((n=e[t+1])!=null?n:"");if(s==null||s.length!==a.length)return;let i=cx(s);if(i==null)return;let c=[],u=t+2;while(u<e.length){let d=va((o=e[u])!=null?o:"");if(d==null)break;c.push(ux(d,a.length)),u+=1}return{alignments:i,endIndex:u,header:a,rows:c}}function va(e){if(!e.includes("|"))return;let t=e.trim();if(t.startsWith("|"))t=t.slice(1);if(t.endsWith("|")&&!t.endsWith("\\|"))t=t.slice(0,-1);let r=[],n="";for(let o=0;o<t.length;o+=1){let a=t[o],s=t[o+1];if(a==="\\"&&s==="|"){n+="|",o+=1;continue}if(a==="|"){r.push(n.trim()),n="";continue}n+=a}return r.push(n.trim()),r}function cx(e){let t=[];for(let r of e){let n=r.match(/^(:)?-{3,}(:)?$/);if(n==null)return;let[,o,a]=n;t.push(o!=null&&a!=null?"center":a!=null?"right":"left")}return t}function ux(e,t){return Array.from({length:t},(r,n)=>{var o;return(o=e[n])!=null?o:""})}function dx(e){let t=e.header.map((a)=>`${Re.bold}${Ze(a)}${Re.boldOff}`),r=e.rows.map((a)=>a.map(Ze)),n=[t,...r],o=e.alignments.map((a,s)=>Math.max(3,...n.map((i)=>{var c;return nt((c=i[s])!=null?c:"")})));return[zp(t,o,e.alignments),o.map((a)=>ax.repeat(a)).join(" "),...r.map((a)=>zp(a,o,e.alignments))]}function zp(e,t,r){return e.map((n,o)=>{var a,s;return px(n,(a=t[o])!=null?a:0,(s=r[o])!=null?s:"left")}).join(" ")}function px(e,t,r){let n=Math.max(0,t-nt(e));if(r==="right")return`${" ".repeat(n)}${e}`;if(r==="center"){let o=Math.floor(n/2),a=n-o;return`${" ".repeat(o)}${e}${" ".repeat(a)}`}return`${e}${" ".repeat(n)}`}var Xp="─";function fx(e){var t;let r=Math.max(20,e.width),n=Math.max(8,e.height),o=3,s=n-3-2,i=e.visibleBodyLines.slice(0,s);while(i.length<s)i.push("");return[jp(r,e.title,e.rightTitle),...i.map((u)=>Up(u,r)),Dp(r),jp(r,e.inputActive?"Input":"Status"),Up(e.inputActive?`> ${e.input}${e.inputCursorVisible===!1?" ":"█"}`:(t=e.status)!=null?t:"Streaming... ↑/↓ scroll · Ctrl+C quit",r),Dp(r)].join(`
|
|
122
|
+
`)}function jp(e,t,r){let n=Math.max(0,e-2),o=t?Ft(` ${t} `,n):"",a=r?Ft(` ${r} `,Math.max(0,n-nt(o))):"",s=Math.max(0,n-nt(o)-nt(a));return`┌${o}${Xp.repeat(s)}${a}┐`}function Dp(e){return`└${Xp.repeat(e-2)}┘`}function Up(e,t){let r=t-4,n=Ft(e,r),o=" ".repeat(Math.max(0,r-nt(n)));return`│ ${n}${o} │`}var Vt="\x1B",mx=`${Vt}[H`,hx=`${Vt}[2J`,gx=`${Vt}[2K`,vx=`${Vt}[?2026h`,yx=`${Vt}[?2026l`,Sn,Lt,Zt,Mr,Tr,ba,Qp,wx=class{constructor(e,t){z(this,ba),z(this,Sn),z(this,Lt),z(this,Zt),z(this,Mr,!1),z(this,Tr,!1);var r;I(this,Lt,e.write.bind(e)),I(this,Sn,(r=t==null?void 0:t.useSynchronizedUpdates)!=null?r:!0),e.write=(n,o,a)=>{if(!_(this,Mr))I(this,Tr,!0);return _(this,Lt).call(this,n,o,a)}}present(e){let t=bx(e),r=_(this,Zt)&&!_(this,Tr)?xx(_(this,Zt),t):`${mx}${hx}${e}`;if(I(this,Zt,t),I(this,Tr,!1),r.length===0)return;b(this,ba,Qp).call(this,r)}reset(){I(this,Zt,void 0)}};Sn=new WeakMap;Lt=new WeakMap;Zt=new WeakMap;Mr=new WeakMap;Tr=new WeakMap;ba=new WeakSet;Qp=function(e){I(this,Mr,!0);try{if(!_(this,Sn)){_(this,Lt).call(this,e);return}_(this,Lt).call(this,`${vx}${e}${yx}`)}finally{I(this,Mr,!1)}};function bx(e){return{lines:e.split(`
|
|
123
|
+
`)}}function xx(e,t){let r="",n=Math.max(e.lines.length,t.lines.length);for(let o=0;o<n;o++){let a=t.lines[o];if(e.lines[o]===a)continue;r+=`${Vt}[${o+1};1H${gx}${a!=null?a:""}`}return r}var _x="outputTokensPerSecond",ge={reset:"\x1B[0m",dim:"\x1B[2m",user:"\x1B[96m",assistant:"\x1B[92m",reasoning:"\x1B[94m",tool:"\x1B[95m",error:"\x1B[91m"},Sx={user:{color:ge.user,border:"─"},assistant:{color:ge.assistant,border:"─"},reasoning:{color:ge.reasoning,border:"·"},tool:{color:ge.tool,border:"─"},error:{color:ge.error,border:"─"}},Ix=500,wt="↑/↓ · PgUp/PgDn · Esc/Ctrl+C",Tx="↑/↓ · PgUp/PgDn · q/Esc/Ctrl+C",Er=`Processing input... ${wt}`,Zp=`Processing tool results... ${wt}`,xa=`Streaming... ${wt}`,Lp=`Executing tools... ${wt}`,xe,Ae,St,vn,yn,wn,In,ve,Ce,yt,ot,Rr,ue,Bt,he,at,Cr,st,bt,It,xt,Ee,_t,kr,w,bn,xn,$r,Le,ef,qt,Ar,tf,Or,Tn,rf,Ea,_a,_n,nf,of,ka,kn,ee,Wt,af,$a,Tt,$n,Mn,Ma,sf,Sa=class{constructor(e){z(this,w),z(this,xe),z(this,Ae),z(this,St),z(this,vn),z(this,yn),z(this,wn),z(this,In),z(this,ve,[]),z(this,Ce,""),z(this,yt,!1),z(this,ot,0),z(this,Rr,""),z(this,ue,xa),z(this,Bt,!1),z(this,he,!1),z(this,at),z(this,Cr),z(this,st),z(this,bt),z(this,It,!0),z(this,xt),z(this,Ee),z(this,_t),z(this,kr);var t,r,n,o,a,s;I(this,xe,(t=e==null?void 0:e.input)!=null?t:process.stdin),I(this,Ae,(r=e==null?void 0:e.output)!=null?r:process.stdout),I(this,St,(n=e==null?void 0:e.frameBuffer)!=null?n:new wx(_(this,Ae))),I(this,vn,(o=e==null?void 0:e.tools)!=null?o:"auto-collapsed"),I(this,yn,(a=e==null?void 0:e.reasoning)!=null?a:"auto-collapsed"),I(this,wn,(s=e==null?void 0:e.responseStatistics)!=null?s:_x),I(this,In,e==null?void 0:e.contextSize),I(this,Cr,e==null?void 0:e.contextSize)}async readPrompt(e){var t;return b(this,w,bn).call(this,e),I(this,yt,!0),I(this,Ce,(t=e==null?void 0:e.initialPrompt)!=null?t:""),I(this,ue,`Type a prompt and press Enter · ${wt}`),b(this,w,tf).call(this),b(this,w,ee).call(this),await new Promise((r,n)=>{I(this,Ee,(o)=>{let a=En(o);switch(a.type){case"character":I(this,Ce,_(this,Ce)+a.value),b(this,w,Tn).call(this),b(this,w,ee).call(this);break;case"backspace":I(this,Ce,_(this,Ce).slice(0,-1)),b(this,w,Tn).call(this),b(this,w,ee).call(this);break;case"enter":{let s=_(this,Ce);I(this,yt,!1),b(this,w,Or).call(this),I(this,ue,Er),b(this,w,Ea).call(this,s),I(this,Ce,""),b(this,w,ee).call(this),b(this,w,Le).call(this),r(s);break}case"up":case"down":b(this,w,qt).call(this,a.type);break;case"page-up":case"page-down":b(this,w,Ar).call(this,a.type);break;case"ctrl-l":b(this,w,Wt).call(this);break;case"escape":case"ctrl-c":b(this,w,Or).call(this),b(this,w,xn).call(this),n(ya());break;case"ignore":break}}),b(this,w,$r).call(this)})}async renderStream(e,t){var r,n,o,a;b(this,w,bn).call(this,t),I(this,yt,!1),I(this,ue,Er),b(this,w,rf).call(this,t==null?void 0:t.submittedPrompt),I(this,he,!1),I(this,at,void 0),I(this,st,void 0),I(this,bt,void 0);let s={tools:(r=t==null?void 0:t.tools)!=null?r:_(this,vn),reasoning:(n=t==null?void 0:t.reasoning)!=null?n:_(this,yn),responseStatistics:(o=t==null?void 0:t.responseStatistics)!=null?o:_(this,wn)};b(this,w,ee).call(this);let i=new Promise((d)=>{I(this,kr,d)});I(this,Ee,(d)=>b(this,w,ef).call(this,d)),b(this,w,$r).call(this);let c,u=zx(b(this,w,of).call(this,e.uiMessageStream));try{let d=Pp({message:e.message,stream:u,onError:(p)=>b(this,w,ka).call(this,"Error",kx(p))});for await(let p of Ex(d,i)){if(_(this,he))break;c=p,b(this,w,_a).call(this,p,s)}if(!_(this,he)&&c&&_(this,st)!=null)b(this,w,_a).call(this,c,s)}finally{if(I(this,kr,void 0),_(this,he))(a=e.abort)==null||a.call(e);if(b(this,w,Le).call(this),I(this,ue,_(this,he)?"Interrupted":(t==null?void 0:t.continueSession)?`Done · Enter another prompt · ${wt}`:`Done · ${Tx}`),b(this,w,ee).call(this),await b(this,w,sf).call(this,t),_(this,he)||!(t==null?void 0:t.continueSession))b(this,w,xn).call(this)}if(_(this,he))throw ya();return c}async readToolApproval(e,t){return b(this,w,bn).call(this,t),I(this,yt,!1),I(this,ue,`Approve ${Px(e)}? y/n · ${wt}`),I(this,he,!1),b(this,w,ee).call(this),await new Promise((r,n)=>{I(this,Ee,(o)=>{let a=En(o);switch(a.type){case"character":{let s=a.value.toLowerCase();if(s==="y")I(this,ue,`Approved · ${Er}`),b(this,w,Le).call(this),b(this,w,ee).call(this),r({approved:!0});else if(s==="n")I(this,ue,`Denied · ${Er}`),b(this,w,Le).call(this),b(this,w,ee).call(this),r({approved:!1,reason:"Denied by user."});break}case"up":case"down":b(this,w,qt).call(this,a.type);break;case"page-up":case"page-down":b(this,w,Ar).call(this,a.type);break;case"ctrl-l":b(this,w,Wt).call(this);break;case"escape":case"ctrl-c":I(this,he,!0),b(this,w,xn).call(this),n(ya());break;default:break}}),b(this,w,$r).call(this)})}};xe=new WeakMap;Ae=new WeakMap;St=new WeakMap;vn=new WeakMap;yn=new WeakMap;wn=new WeakMap;In=new WeakMap;ve=new WeakMap;Ce=new WeakMap;yt=new WeakMap;ot=new WeakMap;Rr=new WeakMap;ue=new WeakMap;Bt=new WeakMap;he=new WeakMap;at=new WeakMap;Cr=new WeakMap;st=new WeakMap;bt=new WeakMap;It=new WeakMap;xt=new WeakMap;Ee=new WeakMap;_t=new WeakMap;kr=new WeakMap;w=new WeakSet;bn=function(e){var t,r,n,o;if(I(this,Rr,(t=e==null?void 0:e.title)!=null?t:_(this,Rr)),I(this,Cr,(r=e==null?void 0:e.contextSize)!=null?r:_(this,In)),_(this,Bt))return;if(I(this,Bt,!0),_(this,St).reset(),_(this,Ae).write("\x1B[?1049h\x1B[?25l"),_(this,xe).isTTY)(o=(n=_(this,xe)).setRawMode)==null||o.call(n,!0),_(this,xe).resume();I(this,_t,()=>b(this,w,Wt).call(this)),_(this,Ae).on("resize",_(this,_t))};xn=function(){var e,t;if(b(this,w,Le).call(this),b(this,w,Or).call(this),!_(this,Bt))return;if(_(this,xe).isTTY)(t=(e=_(this,xe)).setRawMode)==null||t.call(e,!1),_(this,xe).pause();if(_(this,_t))_(this,Ae).off("resize",_(this,_t)),I(this,_t,void 0);_(this,Ae).write("\x1B[?25h\x1B[?1049l"),_(this,St).reset(),I(this,Bt,!1)};$r=function(){if(_(this,Ee))_(this,xe).on("data",_(this,Ee))};Le=function(){if(_(this,Ee))_(this,xe).off("data",_(this,Ee)),I(this,Ee,void 0)};ef=function(e){var t;let r=En(e);switch(r.type){case"up":case"down":b(this,w,qt).call(this,r.type);break;case"page-up":case"page-down":b(this,w,Ar).call(this,r.type);break;case"ctrl-l":b(this,w,Wt).call(this);break;case"escape":case"ctrl-c":I(this,he,!0),(t=_(this,kr))==null||t.call(this);break;default:break}};qt=function(e,t=1){let r=e==="up"?t:-t;I(this,ot,b(this,w,$a).call(this,_(this,ot)+r)),b(this,w,ee).call(this)};Ar=function(e){b(this,w,qt).call(this,e==="page-up"?"up":"down",b(this,w,$n).call(this))};tf=function(){var e,t;b(this,w,Or).call(this),b(this,w,Tn).call(this),I(this,xt,setInterval(()=>{I(this,It,!_(this,It)),b(this,w,ee).call(this)},Ix)),(t=(e=_(this,xt)).unref)==null||t.call(e)};Or=function(){if(_(this,xt))clearInterval(_(this,xt)),I(this,xt,void 0);I(this,It,!0)};Tn=function(){I(this,It,!0)};rf=function(e){if(e==null)return;let t=_(this,ve).at(-1);if((t==null?void 0:t.kind)==="user"&&t.content===e)return;b(this,w,Ea).call(this,e)};Ea=function(e){let t=b(this,w,Tt).call(this);_(this,ve).push({kind:"user",title:"User",content:e}),b(this,w,kn).call(this,t)};_a=function(e,t){var r,n,o;let a=b(this,w,Tt).call(this),s=new Set,i=Bx(e.metadata);I(this,at,(r=i.totalTokens)!=null?r:_(this,at)),I(this,st,(n=i.outputTokens)!=null?n:_(this,st)),I(this,bt,(o=i.outputTokensPerSecond)!=null?o:_(this,bt));for(let[c,u]of e.parts.entries()){let d=Nx(e.id,c);switch(u.type){case"text":{let p=u.text.trim();if(p.length===0)break;s.add(d),b(this,w,_n).call(this,{id:d,kind:"assistant",title:"Assistant",rightTitle:Vx({totalTokens:_(this,at),outputTokens:_(this,st),outputTokensPerSecond:_(this,bt)},t.responseStatistics),content:p});break}case"reasoning":{let p=u.text.trim();if(t.reasoning==="hidden"||p.length===0)break;s.add(d),b(this,w,_n).call(this,{id:d,kind:"reasoning",title:"Reasoning",content:p,collapsed:Fp(e,c,t.reasoning,t)});break}default:if(ce(u)){if(t.tools==="hidden")break;s.add(d),b(this,w,_n).call(this,{id:d,...$x(u,{mode:t.tools,collapsed:Fp(e,c,t.tools,t)})})}break}}b(this,w,nf).call(this,e.id,s),b(this,w,kn).call(this,a)};_n=function(e){let t=e.id?_(this,ve).find((r)=>r.id===e.id):void 0;if(t){let r=t.cache;t.kind=e.kind,t.title=e.title,t.rightTitle=e.rightTitle,t.content=e.content,t.collapsed=e.collapsed,t.cache=r&&cf(e,r)?r:void 0;return}_(this,ve).push(e)};nf=function(e,t){let r=`${e}:`;I(this,ve,_(this,ve).filter((n)=>n.id==null||!n.id.startsWith(r)||t.has(n.id)))};of=async function*(e){let t=!1;for await(let r of jx(e)){let n=Cx(r,{hasPendingToolResults:t});if(r.type==="start-step")t=!1;else if(Ax(r))t=!0;if(n&&_(this,ue)!==n)I(this,ue,n),b(this,w,ee).call(this);else if(Rx(r)&&_(this,ue)!==xa)I(this,ue,xa),b(this,w,ee).call(this);if(r.type==="error")b(this,w,ka).call(this,"Error",r.errorText);if(r.type==="finish"){let o=Fx(r);I(this,at,o.totalTokens),I(this,st,o.outputTokens),I(this,bt,o.outputTokensPerSecond)}yield r}};ka=function(e,t){let r=b(this,w,Tt).call(this);_(this,ve).push({kind:"error",title:e,content:t}),b(this,w,kn).call(this,r)};kn=function(e){if(_(this,ot)!==0){let t=b(this,w,Tt).call(this)-e;I(this,ot,b(this,w,$a).call(this,_(this,ot)+t))}b(this,w,ee).call(this)};ee=function(){let e=fx({width:b(this,w,Mn).call(this),height:b(this,w,Ma).call(this),title:_(this,Rr),rightTitle:df(_(this,at),_(this,Cr)),visibleBodyLines:b(this,w,af).call(this),input:_(this,Ce),inputActive:_(this,yt),inputCursorVisible:_(this,It),status:_(this,ue)});_(this,St).present(e)};Wt=function(){_(this,St).reset(),b(this,w,ee).call(this)};af=function(){if(_(this,ve).length===0)return["Waiting for input..."];let e=b(this,w,$n).call(this),t=b(this,w,Tt).call(this),r=Math.max(0,t-e-_(this,ot)),n=r+e,o=[],a=0;for(let s of _(this,ve)){let i=lf(s,b(this,w,Mn).call(this)-4),c=a+i.length;if(c>r&&a<n)o.push(...i.slice(Math.max(0,r-a),n-a));if(o.length>=e)break;a=c}return o};$a=function(e){let t=Math.max(0,b(this,w,Tt).call(this)-b(this,w,$n).call(this));return Math.min(Math.max(0,e),t)};Tt=function(){if(_(this,ve).length===0)return 1;let e=0;for(let t of _(this,ve))e+=lf(t,b(this,w,Mn).call(this)-4).length;return e};$n=function(){return Math.max(1,b(this,w,Ma).call(this)-5)};Mn=function(){var e;return Math.max(20,(e=_(this,Ae).columns)!=null?e:80)};Ma=function(){var e;return Math.max(8,(e=_(this,Ae).rows)!=null?e:24)};sf=async function(e){if((e==null?void 0:e.waitForExit)===!1||!_(this,xe).isTTY||_(this,he))return;await new Promise((t)=>{I(this,Ee,(r)=>{let n=En(r);switch(n.type){case"up":case"down":b(this,w,qt).call(this,n.type);break;case"page-up":case"page-down":b(this,w,Ar).call(this,n.type);break;case"ctrl-l":b(this,w,Wt).call(this);break;case"escape":b(this,w,Le).call(this),t();break;case"character":if(n.value==="q")b(this,w,Le).call(this),t();break;case"ctrl-c":b(this,w,Le).call(this),process.exitCode=130,t();break;default:break}}),b(this,w,$r).call(this)})};function ya(){return Error("Interrupted")}async function*Ex(e,t){let r=e[Symbol.asyncIterator](),n=t.then(()=>({done:!0,value:void 0}));while(!0){let o=await Promise.race([r.next(),n]);if(o.done)break;yield o.value}}function kx(e){if(e instanceof Error)return e.message;if(typeof e==="string")return e;return JSON.stringify(e)}function $x(e,t){var r,n,o,a;let s=tt(e),i=`Tool · ${(r=e.title)!=null?r:s}`,c="input"in e?e.input:void 0,u=c===void 0?"Input: (streaming...)":`Input:
|
|
124
|
+
${Bp(c)}`,d=Ox(e);if(t.collapsed)return{kind:"tool",title:i,rightTitle:d,content:"",collapsed:!0};switch(e.state){case"input-streaming":return{kind:"tool",title:i,rightTitle:d,content:u};case"input-available":return{kind:"tool",title:i,rightTitle:d,content:u};case"approval-requested":return{kind:"tool",title:i,rightTitle:d,content:u};case"approval-responded":return{kind:"tool",title:i,rightTitle:d,content:u};case"output-available":return{kind:"tool",title:i,rightTitle:d,content:`${u}
|
|
144
125
|
|
|
145
126
|
Output:
|
|
146
|
-
${
|
|
127
|
+
${Bp(e.output)}`};case"output-error":return{kind:"error",title:`Tool Error · ${(n=e.title)!=null?n:s}`,rightTitle:d,content:`${u}
|
|
147
128
|
|
|
148
129
|
Error:
|
|
149
|
-
${
|
|
130
|
+
${e.errorText}`};case"output-denied":return{kind:"error",title:`Tool Denied · ${(o=e.title)!=null?o:s}`,rightTitle:d,content:`${u}
|
|
150
131
|
|
|
151
|
-
Reason: ${(
|
|
152
|
-
`).flatMap((
|
|
153
|
-
`:return{type:"enter"};case"":case"\b":return{type:"backspace"};case"\x1B[A":return{type:"up"};case"\x1B[B":return{type:"down"};case"\x1B[5~":return{type:"page-up"};case"\x1B[6~":return{type:"page-down"};default:if(
|
|
154
|
-
`)}async function
|
|
155
|
-
`,"utf8")}catch{}}var
|
|
132
|
+
Reason: ${(a=e.approval.reason)!=null?a:"denied"}`}}}function Fp(e,t,r,n){switch(r){case"collapsed":return!0;case"auto-collapsed":return e.parts.slice(t+1).some((o)=>Mx(o,n));case"full":case"hidden":return!1}}function Mx(e,t){switch(e.type){case"text":return e.text.trim().length>0;case"reasoning":return t.reasoning!=="hidden"&&e.text.trim().length>0;default:return ce(e)&&t.tools!=="hidden"}}function Rx(e){switch(e.type){case"text-start":case"text-delta":case"reasoning-start":case"reasoning-delta":case"tool-input-start":case"tool-input-delta":return!0;default:return!1}}function Cx(e,{hasPendingToolResults:t}){switch(e.type){case"start-step":return t?Zp:Er;case"tool-output-available":case"tool-output-error":case"tool-output-denied":return Zp;case"tool-input-available":return Lp;case"tool-approval-response":return e.approved?Lp:void 0;default:return}}function Ax(e){switch(e.type){case"tool-output-available":case"tool-output-error":case"tool-output-denied":return!0;default:return!1}}function Ox(e){switch(e.state){case"input-streaming":return"waiting";case"approval-requested":return"approval requested";case"input-available":return"executing";case"approval-responded":return e.approval.approved?"executing":"denied";case"output-available":case"output-error":return"done";case"output-denied":return"denied"}}function Bp(e){if(typeof e==="string")return e;return JSON.stringify(e,null,2)}function Px(e){var t;return`tool ${(t=e.title)!=null?t:e.toolName}`}function Nx(e,t){return`${e}:${t}`}function zx(e){if(e instanceof ReadableStream)return e;return new ReadableStream({async start(t){try{for await(let r of e)t.enqueue(r);t.close()}catch(r){t.error(r)}}})}async function*jx(e){if(e instanceof ReadableStream){let t=e.getReader();try{while(!0){let{done:r,value:n}=await t.read();if(r)return;yield n}}finally{t.releaseLock()}return}yield*e}function lf(e,t){if(e.cache&&cf(e,e.cache,t))return e.cache.lines;let r=Dx(e,t);return e.cache={width:t,kind:e.kind,title:e.title,rightTitle:e.rightTitle,content:e.content,collapsed:e.collapsed===!0,lines:r},r}function cf(e,t,r=t.width){return t.width===r&&t.kind===e.kind&&t.title===e.title&&t.rightTitle===e.rightTitle&&t.content===e.content&&t.collapsed===(e.collapsed===!0)}function Dx(e,t){let r=Sx[e.kind],n=Math.max(1,t-4),o=` ${e.title} `,a=e.rightTitle?` ${e.rightTitle} `:"";if(e.collapsed){let p=Math.max(0,t-2-o.length-a.length),m=`${r.color}╭${o}${r.border.repeat(p)}${a}╮${ge.reset}`,f=`${r.color}╰${r.border.repeat(Math.max(0,t-2))}╯${ge.reset}`;return[m,f]}let s=Math.max(0,t-2-o.length-a.length),i=`${r.color}╭${o}${r.border.repeat(s)}${a}╮${ge.reset}`,c=`${r.color}╰${r.border.repeat(Math.max(0,t-2))}╯${ge.reset}`,d=(e.content.length>0?sx(e.content):ge.dim+"(streaming...)"+ge.reset).split(`
|
|
133
|
+
`).flatMap((p)=>Zx(p,n));return[i,...d.map((p)=>Ux(p,n,r.color)),c]}function Ux(e,t,r){let n=Ft(e,t),o=" ".repeat(Math.max(0,t-nt(n)));return`${r}│${ge.reset} ${n}${o} ${r}│${ge.reset}`}function Zx(e,t){if(e.length===0)return[""];let r=[],n=e;while(nt(n)>t){let o=Lx(n,t);r.push(n.slice(0,o).trimEnd()),n=n.slice(o).trimStart()}return r.push(n),r}function Lx(e,t){let n=Ft(e,t+1).lastIndexOf(" ");if(n>0)return n;return Ft(e,t).length}function Fx(e){var t,r;let n="usage"in e?e.usage:void 0,o="messageMetadata"in e?(t=e.messageMetadata)==null?void 0:t.usage:void 0,a="messageMetadata"in e?(r=e.messageMetadata)==null?void 0:r.performance:void 0;return{totalTokens:uf(n!=null?n:o),outputTokens:Ra(n!=null?n:o),outputTokensPerSecond:a==null?void 0:a.outputTokensPerSecond}}function Bx(e){var t;let r=e;return{totalTokens:uf(r==null?void 0:r.usage),outputTokens:Ra(r==null?void 0:r.usage),outputTokensPerSecond:(t=r==null?void 0:r.performance)==null?void 0:t.outputTokensPerSecond}}function uf(e){let t=e==null?void 0:e.totalTokens;if(typeof t==="number")return t;if(typeof(t==null?void 0:t.total)==="number")return t.total;let r=qx(e),n=Ra(e);if(r!=null&&n!=null)return r+n;return}function qx(e){let t=e==null?void 0:e.inputTokens;if(typeof t==="number")return t;if(typeof(t==null?void 0:t.total)==="number")return t.total;return e==null?void 0:e.promptTokens}function Ra(e){let t=e==null?void 0:e.outputTokens;if(typeof t==="number")return t;if(typeof(t==null?void 0:t.total)==="number")return t.total;return e==null?void 0:e.completionTokens}function df(e,t){if(e==null)return;let r=`${e.toLocaleString()} ${e===1?"token":"tokens"}`,n=Wx(e,t);return n==null?r:`${r} ${n}`}function Wx(e,t){if(t==null||t<=0||!Number.isFinite(t))return;return`${Math.round(e/t*100).toLocaleString()}%`}function Vx(e,t){if(t==="outputTokensPerSecond")return Gx(e.outputTokensPerSecond);return df(e.outputTokens)}function Gx(e){if(e==null)return;return`${Jx(e)} tok/s`}function Jx(e){return Number.isInteger(e)?e.toLocaleString():e.toLocaleString(void 0,{maximumFractionDigits:1})}function En(e){let t=e.toString("utf8");switch(t){case"\f":return{type:"ctrl-l"};case"\x03":return{type:"ctrl-c"};case"\x1B":return{type:"escape"};case"\r":case`
|
|
134
|
+
`:return{type:"enter"};case"":case"\b":return{type:"backspace"};case"\x1B[A":return{type:"up"};case"\x1B[B":return{type:"down"};case"\x1B[5~":return{type:"page-up"};case"\x1B[6~":return{type:"page-down"};default:if(t>=" "&&t!=="")return{type:"character",value:t};return{type:"ignore"}}}var Kx="outputTokensPerSecond",Hx=class{constructor(e){this.chatId=zt();var t,r,n,o;this.agent=e.agent,this.transport=e.transport,this.renderer=(t=Xx(e))!=null?t:Yx(e),this.title=e.title,this.tools=(r=e.tools)!=null?r:"auto-collapsed",this.reasoning=(n=e.reasoning)!=null?n:"auto-collapsed",this.responseStatistics=(o=e.responseStatistics)!=null?o:Kx,this.contextSize=e.contextSize,this.sandbox=e.sandbox}async run(){let e=this.title,t=[],r=0,n=()=>`message-${++r}`,o,a=!1,s=!1;while(!0){if(!s){if(o==null){if(!this.renderer.readPrompt){if(a)return;throw Error("No prompt was provided and the renderer does not support prompt input.")}try{o=await this.renderer.readPrompt({title:e})}catch(c){if(Jp(c))return;throw c}if(o==null)return}t.push(t_(n(),o)),a=!0}let i=await this.streamMessages([...t],n);try{let c=await this.renderer.renderStream(i,{title:e,submittedPrompt:o,continueSession:Boolean(this.renderer.readPrompt),tools:this.tools,reasoning:this.reasoning,responseStatistics:this.responseStatistics,contextSize:this.contextSize,waitForExit:!1});if(c&&c.parts.length>0){let u=r_(c);if(u.length>0){if(!this.renderer.readToolApproval)throw Error("Tool approval was requested, but the renderer does not support tool approval input.");for(let d of u){let p=await this.renderer.readToolApproval(d,{title:e});n_(c,d,p)}Wp(t,c,s),s=!0,o=void 0;continue}Wp(t,c,s)}}catch(c){if(Jp(c))return;throw c}s=!1,o=void 0}}async streamMessages(e,t){let r=new AbortController,n=()=>r.abort();if(this.transport)return{uiMessageStream:await this.transport.sendMessages({trigger:"submit-message",chatId:this.chatId,messageId:void 0,messages:e,abortSignal:r.signal}),message:Ia(e),abort:n};let o=this.agent,a=await o.stream({prompt:await gn(e,{tools:o.tools}),abortSignal:r.signal,options:void 0,experimental_sandbox:this.sandbox});return{uiMessageStream:Qx(a.fullStream,t,e),message:Ia(e),abort:n}}};function Yx(e){return e.tools===void 0&&e.reasoning===void 0&&e.responseStatistics===void 0&&e.contextSize===void 0?new Sa:new Sa({tools:e.tools,reasoning:e.reasoning,responseStatistics:e.responseStatistics,contextSize:e.contextSize})}function Xx(e){if(e.renderer)return e.renderer;if(!e.screen&&!e.userInput)return;return new Sa({tools:e.tools,reasoning:e.reasoning,responseStatistics:e.responseStatistics,contextSize:e.contextSize,input:e.userInput,output:e.screen})}async function*Qx(e,t,r=[]){var n,o;let a=new Set,s=new Set,i=new Set,c,u,d=!1;yield{type:"start",messageId:(o=(n=Ia(r))==null?void 0:n.id)!=null?o:t()};for await(let p of e)switch(p.type){case"text-start":a.add(p.id),yield{type:"text-start",id:p.id,providerMetadata:p.providerMetadata};break;case"text-delta":if(!a.has(p.id))a.add(p.id),yield{type:"text-start",id:p.id,providerMetadata:p.providerMetadata};yield{type:"text-delta",id:p.id,delta:p.text,providerMetadata:p.providerMetadata};break;case"text-end":a.delete(p.id),yield{type:"text-end",id:p.id,providerMetadata:p.providerMetadata};break;case"reasoning-start":s.add(p.id),yield{type:"reasoning-start",id:p.id,providerMetadata:p.providerMetadata};break;case"reasoning-delta":if(!s.has(p.id))s.add(p.id),yield{type:"reasoning-start",id:p.id,providerMetadata:p.providerMetadata};yield{type:"reasoning-delta",id:p.id,delta:p.text,providerMetadata:p.providerMetadata};break;case"reasoning-end":s.delete(p.id),yield{type:"reasoning-end",id:p.id,providerMetadata:p.providerMetadata};break;case"tool-input-start":yield{type:"tool-input-start",toolCallId:p.id,toolName:p.toolName,providerExecuted:p.providerExecuted,providerMetadata:p.providerMetadata,toolMetadata:p.toolMetadata,dynamic:p.dynamic,title:p.title};break;case"tool-input-delta":yield{type:"tool-input-delta",toolCallId:p.id,inputTextDelta:p.delta};break;case"tool-call":i.add(p.toolCallId),yield{type:"tool-input-available",toolCallId:p.toolCallId,toolName:p.toolName,input:p.input,providerExecuted:p.providerExecuted,providerMetadata:p.providerMetadata,toolMetadata:p.toolMetadata,dynamic:p.dynamic,title:p.title};break;case"tool-approval-request":if(!i.has(p.toolCall.toolCallId))i.add(p.toolCall.toolCallId),yield{type:"tool-input-available",toolCallId:p.toolCall.toolCallId,toolName:p.toolCall.toolName,input:p.toolCall.input,providerExecuted:p.toolCall.providerExecuted,providerMetadata:p.toolCall.providerMetadata,toolMetadata:p.toolCall.toolMetadata,dynamic:p.toolCall.dynamic,title:p.toolCall.title};yield{type:"tool-approval-request",approvalId:p.approvalId,toolCallId:p.toolCall.toolCallId,isAutomatic:p.isAutomatic};break;case"tool-approval-response":yield{type:"tool-approval-response",approvalId:p.approvalId,approved:p.approved,reason:p.reason,providerExecuted:p.providerExecuted};break;case"tool-result":yield{type:"tool-output-available",toolCallId:p.toolCallId,output:p.output,providerExecuted:p.providerExecuted,providerMetadata:p.providerMetadata,toolMetadata:p.toolMetadata,dynamic:p.dynamic,preliminary:p.preliminary};break;case"tool-error":yield{type:"tool-output-error",toolCallId:p.toolCallId,errorText:Vp(p.error),providerExecuted:p.providerExecuted,providerMetadata:p.providerMetadata,toolMetadata:p.toolMetadata,dynamic:p.dynamic};break;case"tool-output-denied":yield{type:"tool-output-denied",toolCallId:p.toolCallId};break;case"source":if(p.sourceType==="url")yield{type:"source-url",sourceId:p.id,url:p.url,title:p.title,providerMetadata:p.providerMetadata};else yield{type:"source-document",sourceId:p.id,mediaType:p.mediaType,title:p.title,filename:p.filename,providerMetadata:p.providerMetadata};break;case"file":yield{type:"file",url:Gp(p.file.mediaType,p.file.base64),mediaType:p.file.mediaType,providerMetadata:p.providerMetadata};break;case"reasoning-file":yield{type:"reasoning-file",url:Gp(p.file.mediaType,p.file.base64),mediaType:p.file.mediaType,providerMetadata:p.providerMetadata};break;case"start-step":yield{type:"start-step"};break;case"finish-step":c=p.usage,u=p.performance,yield{type:"finish-step"};break;case"finish":yield*qp(a,s),d=!0,yield{type:"finish",finishReason:p.finishReason,messageMetadata:e_(c!=null?c:p.totalUsage,u)};break;case"abort":yield{type:"abort",reason:p.reason};break;case"error":yield{type:"error",errorText:Vp(p.error)};break}if(!d)yield*qp(a,s),yield{type:"finish"}}function e_(e,t){if((e==null?void 0:e.totalTokens)==null&&(e==null?void 0:e.outputTokens)==null&&(t==null?void 0:t.outputTokensPerSecond)==null)return;return{...(e==null?void 0:e.totalTokens)==null&&(e==null?void 0:e.outputTokens)==null?{}:{usage:{...e.totalTokens==null?{}:{totalTokens:e.totalTokens},...e.outputTokens==null?{}:{outputTokens:e.outputTokens}}},...(t==null?void 0:t.outputTokensPerSecond)==null?{}:{performance:{outputTokensPerSecond:t.outputTokensPerSecond}}}}function*qp(e,t){for(let r of e)yield{type:"text-end",id:r};e.clear();for(let r of t)yield{type:"reasoning-end",id:r};t.clear()}function t_(e,t){return{id:e,role:"user",parts:[{type:"text",text:t}]}}function Wp(e,t,r){var n;if(r&&((n=e.at(-1))==null?void 0:n.role)==="assistant"){e[e.length-1]=t;return}e.push(t)}function Ia(e){let t=e.at(-1);return(t==null?void 0:t.role)==="assistant"?t:void 0}function r_(e){let t=[];for(let[r,n]of e.parts.entries()){if(!ce(n)||n.state!=="approval-requested"||n.approval.isAutomatic===!0)continue;t.push({approvalId:n.approval.id,toolCallId:n.toolCallId,toolName:tt(n),title:n.title,input:n.input,providerExecuted:n.providerExecuted,messageId:e.id,partIndex:r})}return t}function n_(e,t,r){let n=e.parts[t.partIndex];if(!n||!ce(n)||n.toolCallId!==t.toolCallId)throw Error(`Could not find tool approval request ${t.approvalId}.`);n.state="approval-responded",n.approval={id:t.approvalId,approved:r.approved,...r.reason?{reason:r.reason}:{}}}function Vp(e){if(e instanceof Error)return e.message;if(typeof e==="string")return e;return JSON.stringify(e)}function Gp(e,t){return`data:${e};base64,${t}`}function Jp(e){return e instanceof Error&&e.message==="Interrupted"}async function pf(e){await new Hx(e).run()}async function ff(e){if(e.prompt!==void 0)o_(e.prompt);await pf({title:`broods · ${e.agent.name}`,tools:"full",transport:new hf(e.client,e.agent)})}async function mf(e){let t=Mp({stream:gf(e.client.stream(e.agent,{input:e.prompt}),void 0,()=>{})});for await(let r of t)process.stdout.write(r);process.stdout.write(`
|
|
135
|
+
`)}async function o_(e){let t=process.stdin.listenerCount("data"),r=Date.now()+1e4;while(process.stdin.listenerCount("data")<=t){if(Date.now()>r)return;await new Promise((n)=>setTimeout(n,20))}process.stdin.emit("data",Buffer.from(e)),process.stdin.emit("data",Buffer.from("\r"))}class hf{client;agent;conversationKey=`tui-${zt()}`;sentApprovals=new Set;sentUserTurns=0;constructor(e,t){this.client=e;this.agent=t}async reconnectToStream(){return null}async sendMessages(e){let t=this.pendingEvents(await gn(e.messages));if(t.events.length===0)throw Error("Nothing new to send: the agent already saw this turn.");let r=this.client.stream(this.agent,{conversationKey:this.conversationKey,events:t.events});return Op({stream:gf(r,e.abortSignal,t.commit),originalMessages:e.messages,generateMessageId:zt,sendSources:!0})}pendingEvents(e){let t=[],r=[],n=0;for(let o of e){if(o.role==="user"){if(n+=1,n>this.sentUserTurns)t.push(o);continue}if(o.role!=="tool")continue;for(let a of o.content)if(a.type==="tool-approval-response"&&!this.sentApprovals.has(a.approvalId))r.push(a)}if(r.length>0)t.push({role:"tool",content:r});return{events:t,commit:()=>{this.sentUserTurns=n;for(let o of r)this.sentApprovals.add(o.approvalId)}}}}function gf(e,t,r){let n=!1,o=()=>void e.return(void 0);return new ReadableStream({pull:async function(a){let s=await Promise.race([e.next(),a_(t)]);if(t?.aborted){o(),a.close();return}if(!n)n=!0,r();if(s.done)a.close();else a.enqueue(s.value)},cancel:o})}function a_(e){return new Promise((t)=>{if(!e)return;let r=()=>t({done:!0,value:void 0});if(e.aborted)r();else e.addEventListener("abort",r,{once:!0})})}import{existsSync as vf}from"node:fs";import{mkdir as s_,readFile as i_,writeFile as l_}from"node:fs/promises";import{dirname as xf,join as Ca,resolve as c_,sep as it}from"node:path";import{fileURLToPath as u_}from"node:url";var Aa=Ca(xf(bf),"update-check.json"),d_=86400000,p_="https://registry.npmjs.org/broods/latest",f_=2000;function Oa(e,t){let r=wf(e),n=wf(t);for(let o=0;o<3;o+=1){let a=r[o]??0,s=n[o]??0;if(a!==s)return a>s}return!yf(e)&&yf(t)}async function Pa(e={}){let t=await g_(),r=e.maxAgeMs??d_;if(t&&Date.now()-t.checkedAt<r)return t.latest;let n=await m_();if(n===null)return t?.latest??null;return await v_({checkedAt:Date.now(),latest:n}),n}function _f(e=c_(process.cwd()),t=u_(import.meta.url)){let r=`${it}node_modules${it}`,n=t.lastIndexOf(r),o=n===-1?null:t.slice(0,n),a=o===null?t.startsWith(`${e}${it}`):e===o||e.startsWith(`${o}${it}`),i=t.includes(`${it}.bun${it}install${it}global${it}`)||a&&h_(o??e)?"bun":"npm",c=i==="bun"?"add":"install";return{manager:i,global:!a,command:i,args:a?[c,"broods@latest"]:[c,"-g","broods@latest"]}}async function m_(){try{let e=await fetch(p_,{signal:AbortSignal.timeout(f_),headers:{accept:"application/json"}});if(!e.ok)return null;let t=await e.json();return typeof t.version==="string"?t.version:null}catch{return null}}function h_(e){return vf(Ca(e,"bun.lock"))||vf(Ca(e,"bun.lockb"))}function yf(e){return e.includes("-")}async function g_(){try{let e=JSON.parse(await i_(Aa,"utf8"));if(typeof e.latest!=="string")return null;if(typeof e.checkedAt!=="number")return null;return{checkedAt:e.checkedAt,latest:e.latest}}catch{return null}}function wf(e){let[t]=e.trim().replace(/^v/,"").split("-");return(t??"").split(".").slice(0,3).map((r)=>Number.parseInt(r,10)||0)}async function v_(e){try{await s_(xf(Aa),{recursive:!0}),await l_(Aa,`${JSON.stringify(e)}
|
|
136
|
+
`,"utf8")}catch{}}var Sf={name:"broods",version:"0.28.0",description:"CLI + TypeScript SDK for the broods agent platform.",keywords:["agents","ai","broods","cli","sdk"],homepage:"https://github.com/beeblastco/broods#readme",bugs:{url:"https://github.com/beeblastco/broods/issues"},license:"MIT",repository:{type:"git",url:"git+https://github.com/beeblastco/broods.git",directory:"packages/broods"},bin:{broods:"dist/cli/index.js"},files:["dist","README.md","LICENSE.md"],type:"module",main:"./dist/index.js",types:"./dist/index.d.ts",typesVersions:{"*":{account:["./dist/account.d.ts"]}},exports:{".":{types:"./dist/index.d.ts",import:"./dist/index.js"},"./account":{types:"./dist/account.d.ts",import:"./dist/account.js"}},scripts:{build:"bun scripts/build.ts && rollup -c rollup.dts.config.mjs && rm -rf .dts-temp",check:"tsc --noEmit","pack:check":"bun run build && publint && attw --pack .",test:"bun test"},dependencies:{esbuild:"^0.28.2"},devDependencies:{"@ai-sdk/tui":"1.0.78","@arethetypeswrong/cli":"^0.18.5","@chat-adapter/discord":"^4.38.1","@chat-adapter/github":"^4.38.1","@chat-adapter/slack":"^4.38.1","@chat-adapter/telegram":"^4.38.1","@types/bun":"^1.3.14","@typescript/typescript6":"6.0.2",ai:"^7.0.77",publint:"^0.3.23",rollup:"^4.62.4","rollup-plugin-dts":"^6.5.1",typescript:"^7.0.2"},peerDependencies:{ai:"^7.0.77"},engines:{node:">=22.15"}};var lt=Sf.version,Fe="https://dashboard.broods.app",Gt="eu-west-1",I_=[{region:"eu-west-1",label:"eu-west-1 (Ireland)"},{region:"us-east-1",label:"us-east-1 (US East)"},{region:"ap-southeast-1",label:"ap-southeast-1 (Singapore)"}],de=`Global options:
|
|
156
137
|
--project <name> Project name override (default: package name or folder)
|
|
157
138
|
--stage <name> Target stage override (BROODS_STAGE otherwise)
|
|
158
139
|
--base-url <url> broods API base URL for sync/env calls (default: discovered at login)
|
|
159
|
-
--dashboard-url <url> Dashboard base URL for login and deep links (default: ${
|
|
160
|
-
-h, --help Show this help`,
|
|
140
|
+
--dashboard-url <url> Dashboard base URL for login and deep links (default: ${Fe})
|
|
141
|
+
-h, --help Show this help`,Na=`broods v${lt}
|
|
161
142
|
|
|
162
143
|
Usage: broods <command> [subcommand] [options]
|
|
163
144
|
|
|
@@ -188,13 +169,13 @@ Options:
|
|
|
188
169
|
-h, --help Show help for a command (e.g. \`broods org --help\`)
|
|
189
170
|
-v, --version Print the CLI version
|
|
190
171
|
|
|
191
|
-
Run \`broods <command> --help\` to see a command's subcommands and flags.`,
|
|
172
|
+
Run \`broods <command> --help\` to see a command's subcommands and flags.`,zf={agent:`Usage: broods agent <list|get> [name]
|
|
192
173
|
|
|
193
174
|
Subcommands:
|
|
194
175
|
list List the agents in the current project/stage scope
|
|
195
176
|
get <name> Show an agent's model, sandbox, workspaces, tools and channels
|
|
196
177
|
|
|
197
|
-
${
|
|
178
|
+
${de}`,deploy:`Usage: broods deploy [options]
|
|
198
179
|
|
|
199
180
|
Syncs Production once and writes BROODS_API_KEY to .env.local. Ignores
|
|
200
181
|
BROODS_STAGE by design — pass --stage to deploy anywhere else.
|
|
@@ -202,9 +183,9 @@ BROODS_STAGE by design — pass --stage to deploy anywhere else.
|
|
|
202
183
|
Options:
|
|
203
184
|
--prune Allow deploy to delete undeclared remote resources
|
|
204
185
|
--rotate-key Mint a fresh runtime API key and write it to .env.local
|
|
205
|
-
--region <region> Broods service region preference (default: ${
|
|
186
|
+
--region <region> Broods service region preference (default: ${Gt})
|
|
206
187
|
|
|
207
|
-
${
|
|
188
|
+
${de}`,dev:`Usage: broods dev [--once] [options]
|
|
208
189
|
|
|
209
190
|
Watches broods/, syncs the current stage (BROODS_STAGE, default Development)
|
|
210
191
|
and live-tails agent logs. Confirms before deleting, and auto-pushes
|
|
@@ -215,12 +196,12 @@ Options:
|
|
|
215
196
|
--level <lvl> Minimum level for the log tail DEBUG|INFO|WARN|ERROR (default: WARN)
|
|
216
197
|
--all Tail INFO and up (DEBUG is dashboard-only)
|
|
217
198
|
|
|
218
|
-
${
|
|
199
|
+
${de}`,diff:`Usage: broods diff [options]
|
|
219
200
|
|
|
220
201
|
Shows local desired state against the remote state of the current stage, and
|
|
221
202
|
warns when the stage's value for an env("NAME") ref no longer matches .env.local.
|
|
222
203
|
|
|
223
|
-
${
|
|
204
|
+
${de}`,env:`Usage: broods env <set|get|list|rm|sync> [name]
|
|
224
205
|
|
|
225
206
|
Subcommands:
|
|
226
207
|
set <name> Store an encrypted environment variable (value read from the prompt or stdin)
|
|
@@ -236,23 +217,23 @@ Subcommands:
|
|
|
236
217
|
those the stage does not already hold the local value for. \`dev\` runs the same
|
|
237
218
|
push on every sync; \`deploy\` never does, so Production stays explicit.
|
|
238
219
|
|
|
239
|
-
${
|
|
220
|
+
${de}`,init:`Usage: broods init [options]
|
|
240
221
|
|
|
241
222
|
Creates the broods/ project shell and .env.local defaults.
|
|
242
223
|
|
|
243
224
|
Options:
|
|
244
|
-
--region <region> Broods service region preference (default: ${
|
|
225
|
+
--region <region> Broods service region preference (default: ${Gt})
|
|
245
226
|
--force Overwrite existing starter files
|
|
246
227
|
|
|
247
|
-
${
|
|
228
|
+
${de}`,login:`Usage: broods login [options]
|
|
248
229
|
|
|
249
230
|
Authenticates through the dashboard and stores the token in
|
|
250
231
|
~/.broods/config.json.
|
|
251
232
|
|
|
252
233
|
Options:
|
|
253
|
-
--region <region> Broods service region preference (default: ${
|
|
234
|
+
--region <region> Broods service region preference (default: ${Gt})
|
|
254
235
|
|
|
255
|
-
${
|
|
236
|
+
${de}`,logs:`Usage: broods logs [options]
|
|
256
237
|
|
|
257
238
|
Backfills recent logs then live-tails. Warnings and errors, 100 lines by default.
|
|
258
239
|
|
|
@@ -262,7 +243,7 @@ Options:
|
|
|
262
243
|
--all Show every level (DEBUG from the backfill only)
|
|
263
244
|
--json Print the backfill as raw JSON
|
|
264
245
|
|
|
265
|
-
${
|
|
246
|
+
${de}`,org:`Usage: broods org <list|use|create> [name]
|
|
266
247
|
|
|
267
248
|
Subcommands:
|
|
268
249
|
list List the organizations this login can act on
|
|
@@ -271,13 +252,13 @@ Subcommands:
|
|
|
271
252
|
|
|
272
253
|
Only orgs where you are owner or admin can be selected from the CLI.
|
|
273
254
|
|
|
274
|
-
${
|
|
255
|
+
${de}`,run:`Usage: broods run <agent> [prompt]
|
|
275
256
|
|
|
276
257
|
Chats with an agent in a terminal UI (reasoning, tool cards, y/n approvals).
|
|
277
258
|
A prompt is sent as the first turn; redirected output streams plain text and
|
|
278
259
|
therefore requires a prompt.
|
|
279
260
|
|
|
280
|
-
${
|
|
261
|
+
${de}`,project:`Usage: broods project <list|delete> [name]
|
|
281
262
|
|
|
282
263
|
Subcommands:
|
|
283
264
|
list List the org's projects and what each one still holds
|
|
@@ -290,7 +271,7 @@ admin role. There is no undo.
|
|
|
290
271
|
Options:
|
|
291
272
|
--yes Skip the confirmation prompt
|
|
292
273
|
|
|
293
|
-
${
|
|
274
|
+
${de}`,stage:`Usage: broods stage <list|use|create> [name]
|
|
294
275
|
|
|
295
276
|
Subcommands:
|
|
296
277
|
list List the project's stages
|
|
@@ -301,7 +282,7 @@ Options:
|
|
|
301
282
|
--from <stage> Clone the source stage's architecture and env vars
|
|
302
283
|
--use Switch to the stage \`stage create\` just made
|
|
303
284
|
|
|
304
|
-
${
|
|
285
|
+
${de}`,stream:`Usage: broods stream [options]
|
|
305
286
|
|
|
306
287
|
Streams live logs for the whole project/stage until Ctrl+C. No backfill.
|
|
307
288
|
|
|
@@ -309,7 +290,7 @@ Options:
|
|
|
309
290
|
--level <lvl> Minimum log level DEBUG|INFO|WARN|ERROR (default: WARN)
|
|
310
291
|
--all Stream INFO and up (DEBUG is dashboard-only)
|
|
311
292
|
|
|
312
|
-
${
|
|
293
|
+
${de}`,update:`Usage: broods update
|
|
313
294
|
|
|
314
295
|
Installs the newest published broods over the copy you are running, with the
|
|
315
296
|
package manager that installed it (bun or npm). Global installs are replaced in
|
|
@@ -317,45 +298,45 @@ place; inside a project the dependency is upgraded instead.`,whoami:`Usage: broo
|
|
|
317
298
|
|
|
318
299
|
Shows the login, server, org, plan, project and stage the next command uses.
|
|
319
300
|
|
|
320
|
-
${
|
|
301
|
+
${de}`};async function T_(){let[,,e,...t]=process.argv;switch(e){case void 0:case"--help":case"-h":console.log(Na);return;case"--version":case"-v":console.log(lt);return}pS(e,t);let r=zf[e];if(r&&(we(t,"--help")||we(t,"-h"))){console.log(r);return}switch(e){case"init":await E_(t);return;case"login":await k_(t);return;case"whoami":await M_(t);return;case"org":await R_(t);return;case"project":await C_(t);return;case"stage":await A_(t);return;case"diff":await O_(t);return;case"deploy":await P_(t);return;case"dev":await z_(t);return;case"env":await rS(t);return;case"stream":await aS(t);return;case"logs":await sS(t);return;case"agent":await iS(t);return;case"run":await uS(t);return;case"update":await N_();return;default:throw Error(`Unknown command: ${e}
|
|
321
302
|
|
|
322
|
-
${
|
|
303
|
+
${Na}`)}}function ye(e){return zf[e]??Na}async function E_(e){let t=we(e,"--force"),r=te(process.cwd(),pe);await Cf(te(r,Oe),{recursive:!0}),await Rn(te(r,"index.ts"),Gf(),t),await Rn(te(r,".gitignore"),`_generated
|
|
323
304
|
.cache
|
|
324
|
-
`,
|
|
305
|
+
`,t);let n=T(e,"--dashboard-url")??Fe;await Ja({dashboardUrl:n,baseUrl:Za(n),project:T(e,"--project")??Ht(process.cwd()),stage:T(e,"--stage")??"development",region:T(e,"--region")??Gt,force:t}),await Ga(),console.log(`Created ${pe}/`)}async function k_(e){let t=Q(),r=T(e,"--dashboard-url")??t.dashboardUrl??Fe,n=await Wn(r),o=T(e,"--project")??process.env.BROODS_PROJECT??Ht(process.cwd()),a=T(e,"--stage")??ct()??"development";await Ja({dashboardUrl:n.dashboardUrl??r,baseUrl:n.baseUrl,project:o,stage:a,region:T(e,"--region")??process.env.BROODS_REGION??Gt,force:!1});let s=n.user?.email||n.user?.name||n.user?.authId,i=n.org?`${n.org.name} (${n.org.slug})`:void 0,c=n.account?.username;if(console.log(`Logged in to ${n.dashboardUrl}`),s)console.log(`User: ${s}`);if(i)console.log(`Org: ${i}`);if(c)console.log(`Account: ${c}`);await $_(n.baseUrl,n.token,o,a)}async function $_(e,t,r,n){try{let a=await new re({baseUrl:e,token:t}).getRuntimeKey(r,n);if(a?.apiKey)await Jt("BROODS_API_KEY",a.apiKey),console.log(`Wrote BROODS_API_KEY (${a.keyHint}) to .env.local`)}catch{}}async function M_(e){let t=Q(),r=On(e),n=T(e,"--dashboard-url")??t.dashboardUrl??Fe;console.log(`broods v${lt}`),console.log(`Dashboard: ${n}`),console.log(`Project: ${r.project}`),console.log(`Stage: ${r.stage}`);let o;try{o=await $e(T(e,"--base-url"))}catch{G("Not logged in. Run `broods login`.");return}console.log(`Server: ${o.baseUrl}`);let a=new re({baseUrl:o.baseUrl,token:o.token}),s=await a.getOnboarding(),i=s.orgs.find((f)=>f.id===s.currentOrgId);if(s.user)console.log(`User: ${s.user.email}`);if(console.log(`Org: ${i?zr(i):s.currentOrgId}`),s.account)console.log(`Account: ${s.account.username} (${s.account.status})`);let c=process.env.BROODS_API_KEY,u=Nr("BROODS_API_KEY")?"your shell":".env.local",d=null,p=null;try{d=await a.getRuntimeKey(r.project,r.stage)}catch(f){p=f instanceof Error?f.message:String(f)}if(p)console.log("Runtime key: unavailable"),G(`⚠ Could not read the runtime key: ${p}`);else if(!d?.apiKey)console.log("Runtime key: none for this scope"),G(`${r.project}/${r.stage} does not exist in ${i?.name??"this org"} yet. \`broods dev\` will create it.`);else if(!c)console.log(`Runtime key: ${d.keyHint} (not in .env.local)`),G("BROODS_API_KEY is not set locally. Run `broods dev`.");else if(c===d.apiKey)console.log(`Runtime key: ${d.keyHint} (matches this org and stage)`);else console.log(`Runtime key: ${d.keyHint} expected`),G(`⚠ BROODS_API_KEY from ${u} belongs to a different org or stage. Run \`broods stage use ${r.stage}\` to repoint it.`);let m=s.projects.map((f)=>f.name);if(!m.includes(r.project))G(`This org has no project named ${r.project}. It has: ${m.length>0?m.join(", "):"none"}.`)}async function R_(e){let[t,r]=dt(e);if(!t){console.log(ye("org"));return}let n=t==="list"||t==="ls",o=t==="use"||t==="select";if(!n&&!o&&!(t==="create"||t==="new"))throw Error(`Unknown org subcommand: ${t}
|
|
325
306
|
|
|
326
|
-
${
|
|
327
|
-
Only orgs where you are owner or admin can be selected from the CLI.`);return}if(
|
|
307
|
+
${ye("org")}`);let s=Q(),i=T(e,"--dashboard-url")??s.dashboardUrl??Fe,c=await An(i,T(e,"--base-url")),u=new re({baseUrl:c.baseUrl,token:c.token}),d=await u.getOnboarding();if(n){for(let m of d.orgs){let f=m.accountStatus==="active"?"":` [${m.accountStatus} account]`;console.log(Mt(`${zr(m)}${f}`,m.id===d.currentOrgId))}console.log(`
|
|
308
|
+
Only orgs where you are owner or admin can be selected from the CLI.`);return}if(o){let m=d.orgs.filter((y)=>y.accountStatus==="active"),f=r?m.find((y)=>y.slug===r||y.name===r||y.id===r):await tr("Select organization",m,zr,m.findIndex((y)=>y.id===d.currentOrgId));if(!f)throw Error(`No selectable organization matches "${r}". Run \`broods org list\`.`);await Ef(u,c,await u.selectOnboardingOrg(f.id),e);return}let p=r??await ft("Organization name",Ht(process.cwd()));if(!p.trim())throw Error("Organization name is required.");await Ef(u,c,await u.createOnboardingOrg(p),e)}async function C_(e){let[t,r]=dt(e);if(!t){console.log(ye("project"));return}let n=t==="list"||t==="ls";if(!n&&!(t==="delete"||t==="rm"))throw Error(`Unknown project subcommand: ${t}
|
|
328
309
|
|
|
329
|
-
${
|
|
330
|
-
${
|
|
310
|
+
${ye("project")}`);let a=Q(),s=T(e,"--dashboard-url")??a.dashboardUrl??Fe,i=On(e),c=await An(s,T(e,"--base-url")),u=new re({baseUrl:c.baseUrl,token:c.token});if(n){let y=await u.listProjects();if(y.length===0){console.log("This org has no projects yet. `broods dev` creates one.");return}console.log("Projects:");for(let x of y)console.log(B_(x,i.project));let g=y.filter((x)=>x.empty);if(g.length>0)console.log(`
|
|
311
|
+
${g.length} empty project(s). Delete one with \`broods project delete <name>\`.`);return}let d=r??await ft("Project to delete","");if(!d.trim())throw Error("Project name is required.");let p=await u.listProjects(),m=p.find((y)=>y.name===d||y.slug===d);if(!m)throw Error(`No project named "${d}". Existing: ${p.map((y)=>y.name).join(", ")}.`);if(!we(e,"--yes")){if(console.log(`Deleting ${m.name} removes ${Da(m)}.`),!await Vr(`Permanently delete project ${m.name}?`)){console.log("Left it alone. Pass --yes to skip this prompt.");return}}let f=await u.deleteProject(m.id);if(!f)throw Error(`Project ${m.name} was not found.`);if(console.log(`Deleted project ${f.name} (${Da(f)})`),f.name===i.project||f.slug===i.project)console.log("That was the project this directory points at. Update BROODS_PROJECT in .env.local.")}async function A_(e){let[t,r]=dt(e);if(!t){console.log(ye("stage"));return}let n=t==="list"||t==="ls",o=t==="use"||t==="select";if(!n&&!o&&!(t==="create"||t==="new"))throw Error(`Unknown stage subcommand: ${t}
|
|
331
312
|
|
|
332
|
-
${
|
|
313
|
+
${ye("stage")}`);let s=Q(),i=T(e,"--dashboard-url")??s.dashboardUrl??Fe,c=On(e),u=await An(i,T(e,"--base-url")),d=new re({baseUrl:u.baseUrl,token:u.token});if(n){let g=await d.listStages(c.project);if(g.length===0){console.log(`${c.project} has no stages yet. \`broods dev\` creates Development.`);return}console.log(`Stages for ${c.project}:`);for(let x of g)console.log(q_(x,c.stage));return}if(o){let g=await d.listStages(c.project),x=r?g.find((A)=>Ua(A.name,r)):await tr("Select stage",g,Uf,g.findIndex((A)=>Ua(A.name,c.stage)));if(!x)throw Error(`${c.project} has no stage "${r}". Existing: ${g.map((A)=>A.name).join(", ")}. Create it with \`broods stage create ${r} --from ${c.stage}\`.`);let j=Nr("BROODS_STAGE");await Jt("BROODS_STAGE",x.name),console.log(`Stage: ${x.name} (wrote BROODS_STAGE)`),ja("BROODS_STAGE",j),await za(d,{project:c.project,stage:x.name});return}let p=r??await ft("Stage name","staging");if(!p.trim())throw Error("Stage name is required.");let m=T(e,"--from"),f=await d.createStage(c.project,p,m);if(console.log(`Created stage ${f.stage.name} in ${c.project}${f.clonedFrom?` from ${f.clonedFrom}`:""}`),f.clonedFrom)console.log(` ${f.stage.agentCount} agent(s), ${f.stage.variableCount} env var(s) copied`);if(!we(e,"--use")){console.log(`Switch to it with \`broods stage use ${f.stage.name}\`.`);return}let y=Nr("BROODS_STAGE");await Jt("BROODS_STAGE",f.stage.name),console.log(`Stage: ${f.stage.name} (wrote BROODS_STAGE)`),ja("BROODS_STAGE",y),await za(d,{project:c.project,stage:f.stage.name})}async function O_(e){let{manifest:t,config:r}=await We({project:T(e,"--project"),stage:T(e,"--stage"),command:"dev"}),n=await $e(T(e,"--base-url")??r.baseUrl),o=new re({baseUrl:n.baseUrl,token:n.token}),a=await o.getManifest(t.project,t.stage);qr(Bn(t,a?.manifest??null)),H_(await Fa(o,t),`${t.project}/${t.stage}`)}async function P_(e){let{manifest:t,config:r,resourceAliases:n,channels:o}=await We({project:T(e,"--project"),stage:T(e,"--stage"),command:"deploy",useRuntimeStage:!1}),a=await $e(T(e,"--base-url")??r.baseUrl),i=await new re({baseUrl:a.baseUrl,token:a.token}).putManifest(t,we(e,"--prune"),we(e,"--rotate-key"));await Zr(t,i.ids,process.cwd(),n,i.deployment,o),await Wf(),await Ga(),console.log(`Synced ${i.manifest.resources.length} resources to ${t.project}/${t.stage}`),await jf(i.deployment),Zf(o,i),Df(i)}async function jf(e){if(!e)return;if(e.apiKey){await Jt("BROODS_API_KEY",e.apiKey),console.log(`Wrote BROODS_API_KEY (${e.keyHint}) to .env.local`);return}}function Df(e){let t=e.warnings?.missingPolicies??[];if(t.length>0)G(`⚠ ${t.length} policy ref(s) in agent config match no policy resource in this deploy and will be ignored at runtime: ${t.join(", ")}`)}async function N_(){let e=await Pa({maxAgeMs:0});if(e===null)throw Error("Could not reach the npm registry to check for a newer broods.");if(!Oa(e,lt)){console.log(`broods v${lt} is already the newest release.`);return}let t=_f();console.log(`Updating broods ${lt} → ${e} ${t.global?"globally":"in this project"}`),console.log(`$ ${[t.command,...t.args].join(" ")}`),await new Promise((r,n)=>{let o=Nf(t.command,t.args,{stdio:"inherit"});o.on("error",n),o.on("exit",(a)=>{if(a===0){r();return}n(Error(`${t.command} exited with code ${a??"unknown"}`))})}),console.log(`broods ${e} installed.`)}async function Tf(){let e=await Pa();if(e===null||!Oa(e,lt))return;G(`broods ${e} is out, you are on ${lt}. Run \`broods update\`.`)}async function z_(e){if(await D_(e),we(e,"--once")){if(!process.env.BROODS_SUPPRESS_DEV_TARGET)await $f(e),await Tf();let d=If.now();await K_(e),Es(If.now()-d);return}let t=Pf(S_(),`broods-declined-${process.pid}.txt`),r={...process.env,BROODS_DECLINED_FILE:t,BROODS_SUPPRESS_DEV_TARGET:"1",BROODS_RELOAD_ENV:"1"};await $f(e),await Tf(),await kf(e,r);let n,o=!1,a=!1,s=await Mf(),i=()=>{if(o){a=!0;return}o=!0,Mf().then(async(d)=>{if(d===s)return;s=d,await kf(e,r)}).catch((d)=>console.error(d instanceof Error?d.message:String(d))).finally(()=>{if(o=!1,a)a=!1,i()})},c=__(te(process.cwd(),pe),{recursive:!0},(d,p)=>{if(!p||dS(p))return;clearTimeout(n),n=setTimeout(i,150)}),u=new AbortController;j_(e,u.signal),process.on("SIGINT",()=>{u.abort(),c.close(),process.exit(0)})}async function j_(e,t){let r;try{r=Ba()}catch{console.log("· live logs off — no runtime key found for this stage yet. Run `broods dev --once` after login to create or reconnect it.");return}let n,o;try{({project:n,stage:o}=await Wa(e,r))}catch{return}let a=qa(e);try{for await(let s of Br({baseUrl:r.baseUrl,apiKey:r.apiKey,project:n,stage:o},{backfill:0,minLevel:a,signal:t}))console.log(Va(s))}catch(s){if(!t.aborted)console.error(`live logs: ${s instanceof Error?s.message:String(s)}`)}}async function D_(e){await U_(),await Z_(e)}async function U_(){let e=te(process.cwd(),pe);await Cf(te(e,Oe),{recursive:!0});let t=[];if(await Ka(e,t),t.length>0)return;await Rn(te(e,"index.ts"),Gf(),!1),await Rn(te(e,".gitignore"),`_generated
|
|
333
314
|
.cache
|
|
334
|
-
`,!1),console.log(`Created starter ${
|
|
315
|
+
`,!1),console.log(`Created starter ${pe}/`)}async function Z_(e){let t=te(process.cwd(),".env.local"),r=await Kt(t),n=Vf(r),o=n.BROODS_STAGE;if(["BROODS_DASHBOARD_URL","BROODS_BASE_URL","BROODS_PROJECT","BROODS_REGION"].filter((y)=>n[y]===void 0).length===0&&o!==void 0)return;let s=n.BROODS_PROJECT===void 0,i=o===void 0,c=n.BROODS_REGION===void 0,u=Q(),d=T(e,"--dashboard-url")??u.dashboardUrl??Fe,p=T(e,"--project")??process.env.BROODS_PROJECT??Ht(process.cwd()),m=T(e,"--stage")??ct()??"development",f=T(e,"--region")??process.env.BROODS_REGION??Gt;if(process.stdin.isTTY&&s){let y=await An(d,T(e,"--base-url")),g=new re({baseUrl:y.baseUrl,token:y.token}),x=await L_(g,y),j=await W_(g,x);if(p=await J_(j,p),!p.trim())throw Error("Project name is required.")}if(process.stdin.isTTY&&i){if(m=await ft("Stage",m),!m.trim())throw Error("Stage is required.")}if(process.stdin.isTTY&&c){let y=[...I_];f=await tr("Select service region",y,(g)=>g.label,y.findIndex((g)=>g.region===f)).then((g)=>g.region)}await Ja({dashboardUrl:d,baseUrl:u.baseUrl??Za(d),project:p,stage:m,region:f,force:!1})}async function An(e,t){try{return await $e(t)}catch(r){if(!process.stdin.isTTY)throw r;return G("No CLI login found. Starting browser login."),await Wn(e)}}async function L_(e,t){try{return await e.getOnboarding()}catch(r){if(!t.org)throw r;return G("CLI onboarding endpoint is not available yet; using the org from the current login."),{currentOrgId:t.org.id,orgs:[{id:t.org.id,name:t.org.name,slug:t.org.slug,role:"admin",accountStatus:"active"}],projects:[]}}}async function Ef(e,t,r,n){let o=r.orgs.find((a)=>a.id===r.currentOrgId);if(!o)throw Error("Selected organization is not visible to this login");if(process.env.BROODS_TOKEN)G("BROODS_TOKEN is set, so the switch applies to this token only and was not stored.");else await Wr({...t,org:{id:o.id,name:o.name,slug:o.slug},...r.account?{account:{id:r.account.id,username:r.account.username}}:{}});console.log(`Org: ${zr(o)}`),console.log(`Projects: ${r.projects.length>0?r.projects.map((a)=>a.name).join(", "):"none yet"}`),await za(e,On(n))}async function za(e,t){let r;try{r=await e.getRuntimeKey(t.project,t.stage)}catch(o){G(`⚠ Could not read the runtime key for ${t.project}/${t.stage} (${o instanceof Error?o.message:String(o)}). `+"BROODS_API_KEY still points at the previous scope — run `broods whoami` to check it.");return}if(!r?.apiKey){G(`⚠ ${t.project}/${t.stage} is not synced here yet, so BROODS_API_KEY still points at the previous scope. Run \`broods dev\`.`);return}let n=Nr("BROODS_API_KEY");if(!n&&process.env.BROODS_API_KEY===r.apiKey)return;await Jt("BROODS_API_KEY",r.apiKey),console.log(`Wrote BROODS_API_KEY (${r.keyHint}) to .env.local`),ja("BROODS_API_KEY",n)}function ja(e,t){if(!t)return;G(`⚠ ${e} is exported in your shell, which wins over .env.local. Run \`unset ${e}\` or the next broods command keeps the old value.`)}function zr(e){let t=e.role==="owner"||e.role==="admin"?e.role:"member",r=e.plan?`, ${e.plan} plan`:"";return`${e.name} (${e.slug}, ${t}${r})`}function F_(e){return e.slug===e.name?e.name:`${e.name} (${e.slug})`}function Da(e){return e.empty?"nothing (it is already empty)":`${e.stageCount} stage(s), ${e.agentCount} agent(s), ${e.variableCount} env var(s), ${e.deploymentCount} deployment(s), ${e.fileCount} workspace file(s)`}function B_(e,t){let r=e.empty?"empty":Da(e);return Mt(`${e.name} — ${r}`,e.name===t||e.slug===t)}function q_(e,t){return Mt(Uf(e),Ua(e.name,t))}function Uf(e){let t=e.deploymentRegion?`, ${e.deploymentRegion}`:"";return`${e.name} (${e.kind}${t}) — ${e.agentCount} agent(s), ${e.variableCount} env var(s)`}function Ua(e,t){return e.trim().toLowerCase()===t.trim().toLowerCase()}function On(e){return Q(),{project:T(e,"--project")??process.env.BROODS_PROJECT??Ht(process.cwd()),stage:T(e,"--stage")??ct()??"development"}}async function W_(e,t){let r=t.orgs.filter((a)=>a.accountStatus==="active"),n={kind:"create",name:"New organization"},o=await tr("Select organization",[...r,n],(a)=>("kind"in a)?"Create new organization":zr(a),r.findIndex((a)=>a.id===t.currentOrgId));if("kind"in o){let a=await ft("Organization name",Ht(process.cwd()));if(!a.trim())throw Error("Organization name is required.");return await e.createOnboardingOrg(a)}return o.id===t.currentOrgId?t:await e.selectOnboardingOrg(o.id)}function V_(e,t){return e.projects.find((n)=>n.name===t||n.slug===t)?.name??t}function G_(e,t){return e.projects.find((r)=>r.name===t||r.slug===t)}async function J_(e,t){let r=V_(e,t);if(e.projects.length===0)return ft("Project name",r);while(!0){let n=await Rs("Select project",e.projects,F_,{hint:"type a new project name",defaultValue:r}),o=typeof n==="string"?n:n.name,a=G_(e,o);if(!a)return o;if(await Vr(`Continue with the existing project ${a.name}?`))return a.name}}function kf(e,t){return new Promise((r,n)=>{let o=process.argv[1]??"",a=Nf(process.execPath,[o,"dev","--once",...e],{stdio:"inherit",env:t});a.on("error",n),a.on("exit",(s,i)=>{if(s===0){r();return}n(Error(i?`Sync child exited from signal ${i}`:`Sync child exited with code ${s??"unknown"}`))})})}async function K_(e){let{manifest:t,config:r,resourceAliases:n,channels:o}=await We({project:T(e,"--project"),stage:T(e,"--stage"),command:"dev"}),a=await $e(T(e,"--base-url")??r.baseUrl),s=new re({baseUrl:a.baseUrl,token:a.token}),i=await s.getManifest(t.project,t.stage),c=Bn(t,i?.manifest??null);qr(c.filter((g)=>g.operation!=="delete"));let u=await Lf(s,t,await Fa(s,t));if(u.length>0)qn(u);let d=await s.putManifest(t,!1);await Zr(t,d.ids,process.cwd(),n,d.deployment,o),await Wf(),await Ga();let p=await Q_(),m=c.filter((g)=>g.operation==="delete"),f=m.filter((g)=>!p.has(`${g.kind}:${g.name}`)),y=!1;if(f.length>0)if(G("⚠ These remote resources are no longer declared locally:"),qr(f),await Vr(`Delete ${f.length} resource(s) from ${t.project}/${t.stage}?`))d=await s.putManifest(t,!0),await Zr(t,d.ids,process.cwd(),n,d.deployment,o),await tS(),y=!0;else await eS(f.map((g)=>`${g.kind}:${g.name}`));if(!y&&m.length>0){let g=m.map((x)=>`${x.kind}:${x.name}`).join(", ");G(`⚠ ${m.length} undeclared resource(s) kept remotely: ${g} — re-declare in code or run \`deploy --prune\` to remove.`)}return await jf(d.deployment),Zf(o,d),Df(d),d}function Zf(e,t){let r=t.deployment;if(!r||e.length===0)return;let n=new La,o=new Map;for(let s of e){if(!t.ids.agents[s.agentName])continue;let i=o.get(s.type)??[];i.push(s.alias),o.set(s.type,i)}let a=r.stageKind===void 0||r.stageKind==="production";for(let[s,i]of o){let c=a?n.accountWebhookUrl(r.accountId,s):n.stageWebhookUrl(r.accountId,r.endpointId,s);console.log(`Channel ${i.join(", ")} (${s}): ${c}${s==="pancake"?"?secret=<PANCAKE_WEBHOOK_SECRET>":""}`)}}async function Fa(e,t){let r=ds(t).filter((o)=>!o.startsWith("BROODS_"));if(r.length===0)return[];let n=new Map((await e.listEnv(t.project,t.stage)).map((o)=>[o.name,o.valueDigest]));return r.map((o)=>({name:o,state:Y_(o,n)}))}async function Lf(e,t,r){let n=r.filter((o)=>o.state==="unset"||o.state==="drifted"||o.state==="unverified").map((o)=>o.name);if(n.length===0)return[];return await Promise.all(n.map((o)=>e.setEnv(t.project,t.stage,o,process.env[o]))),n}function H_(e,t){let r=Pr(e,"drifted"),n=Pr(e,"unverified");if(r.length>0)G(`⚠ .env.local and ${t} disagree on ${r.length} variable(s): ${r.join(", ")} — `+"run `broods env sync` to push the local values.");if(n.length>0)G(`⚠ ${t} stored ${n.length} variable(s) before value digests, so nothing can compare them: ${n.join(", ")} — run \`broods env sync\` to bring them in step.`)}function Y_(e,t){let r=process.env[e],n=t.has(e);if(r===void 0||r==="")return n?"stage-only":"unresolved";if(!n)return"unset";let o=t.get(e);if(!o)return"unverified";return o===X_(r)?"synced":"drifted"}function X_(e){return Of("sha256").update(e).digest("hex")}function Pr(e,t){return e.filter((r)=>r.state===t).map((r)=>r.name)}async function $f(e){let t=Q(),{manifest:r,config:n}=await We({project:T(e,"--project"),stage:T(e,"--stage"),command:"dev"}),o=await $e(T(e,"--base-url")??n.baseUrl);ks({project:r.project,stage:r.stage,dashboardUrl:T(e,"--dashboard-url")??t.dashboardUrl??o.dashboardUrl??n.dashboardUrl??Fe})}async function Q_(){let e=process.env.BROODS_DECLINED_FILE;if(!e)return new Set;let t=await Kt(e);return new Set(t.split(/\r?\n/).map((r)=>r.trim()).filter(Boolean))}async function eS(e){let t=process.env.BROODS_DECLINED_FILE;if(!t||e.length===0)return;await Et(t,`${e.join(`
|
|
335
316
|
`)}
|
|
336
|
-
`,{flag:"a"})}async function
|
|
317
|
+
`,{flag:"a"})}async function tS(){let e=process.env.BROODS_DECLINED_FILE;if(!e)return;await Et(e,"","utf8")}async function rS(e){let[t,r]=dt(e);if(!t){console.log(ye("env"));return}let n=t==="list"||t==="ls",o=t==="rm"||t==="remove",a=t==="get",s=t==="sync",i=t==="set"||o||a;if(!n&&!s&&!i)throw Error(`Unknown env subcommand: ${t}
|
|
337
318
|
|
|
338
|
-
${
|
|
319
|
+
${ye("env")}`);if(i&&!r)throw Error(`broods env ${t} needs a variable name.
|
|
339
320
|
|
|
340
|
-
${
|
|
321
|
+
${ye("env")}`);let{manifest:c,config:u}=await We({project:T(e,"--project"),stage:T(e,"--stage"),command:"dev"}),d=await $e(T(e,"--base-url")??u.baseUrl),p=new re({baseUrl:d.baseUrl,token:d.token}),m=`${c.project}/${c.stage}`;if(s){await nS(p,c,m);return}if(n){let y=await p.listEnv(c.project,c.stage);if(y.length===0){console.log(`No environment variables set for ${m}.`);return}console.log(`Environment variables for ${m} (values hidden):`);for(let g of y)console.log(` ${g.name}`);return}if(a){let y=await p.getEnv(c.project,c.stage,r);if(y===null){console.error(`${r} is not set for ${m}`),process.exitCode=1;return}console.log(y);return}if(o){await p.removeEnv(c.project,c.stage,r),console.log(`Removed ${r} from ${m}`);return}let f=await Ms(r);await p.setEnv(c.project,c.stage,r,f),console.log(`Stored ${r} for ${m}`)}async function nS(e,t,r){let n=await Fa(e,t);if(n.length===0){console.log('No env("NAME") references in this project.');return}let o=await Lf(e,t,n);if(o.length>0)qn(o);let a=Pr(n,"synced").length;console.log(o.length>0?`${a} other referenced variable(s) already in step with ${r}.`:`${a} referenced variable(s) already in step with ${r}.`);let s=Pr(n,"stage-only");if(s.length>0)console.log(`${s.length} referenced variable(s) live only on ${r}: ${s.join(", ")}`);let i=Pr(n,"unresolved");if(i.length>0)G(`⚠ ${i.length} referenced variable(s) with no value here or on ${r}: ${i.join(", ")} — put them in .env.local, or run \`broods env set <NAME>\`.`)}function Ba(){Q();let e=process.env.BROODS_API_KEY??"";if(!e)throw Error("BROODS_API_KEY is not set. Run `broods deploy` first, or set the key in .env.local.");let t=process.env.BROODS_BASE_URL??process.env.BROODS_HOST??Rf;return{apiKey:e,baseUrl:t}}function qa(e){if(we(e,"--all"))return"DEBUG";let t=T(e,"--level");if(t===void 0&&we(e,"--level"))throw Error("Missing value for --level. Use DEBUG, INFO, WARN, or ERROR.");if(!t)return"WARN";let r=t.toUpperCase();if(r==="DEBUG")return"DEBUG";if(r==="INFO")return"INFO";if(r==="WARN"||r==="WARNING")return"WARN";if(r==="ERROR")return"ERROR";throw Error(`Unknown log level: ${t}. Use DEBUG, INFO, WARN, or ERROR.`)}async function oS(e){Q();let t=T(e,"--project")??process.env.BROODS_PROJECT,r=T(e,"--stage")??ct();if(!t)throw Error("Project name is required. Pass --project <name> or set BROODS_PROJECT in .env.local.");if(!r)throw Error("Stage name is required. Pass --stage <name> or set BROODS_STAGE in .env.local.");return{project:t,stage:r}}async function Wa(e,t){let r=await oS(e),n=await Ts(t.baseUrl,t.apiKey);if(!n)return r;if(n.projectSlug!==r.project||n.stageSlug!==r.stage)console.log(`· reading ${n.projectSlug}/${n.stageSlug} — the runtime key is scoped there, not to ${r.project}/${r.stage}.`);return{project:n.projectSlug,stage:n.stageSlug}}function Ff(e){return e==="WARN"?" (--all for INFO too)":""}function Va(e){let t=new Date(e.ts).toISOString().slice(11,23),r=e.level.padEnd(5);return`${t} ${r} ${e.eventType} ${e.message}`}async function aS(e){let{apiKey:t,baseUrl:r}=Ba(),{project:n,stage:o}=await Wa(e,{baseUrl:r,apiKey:t}),a=qa(e),s=new AbortController,i=()=>s.abort();process.on("SIGINT",i),console.log(`Streaming live logs for ${n}/${o} [${a}+]`+Ff(a)+" — Ctrl+C to stop");try{for await(let c of Br({baseUrl:r,apiKey:t,project:n,stage:o},{backfill:0,minLevel:a,signal:s.signal}))console.log(Va(c))}catch(c){if(!s.signal.aborted)console.error(c instanceof Error?c.message:String(c)),process.exitCode=1}finally{process.off("SIGINT",i)}}async function sS(e){let{apiKey:t,baseUrl:r}=Ba(),{project:n,stage:o}=await Wa(e,{baseUrl:r,apiKey:t}),a=qa(e),s=Number(T(e,"--limit")??T(e,"-n")??100),i=we(e,"--json"),c=new AbortController,u=()=>c.abort();process.on("SIGINT",u),console.log(`Logs for ${n}/${o} [${a}+]`+Ff(a)+` (backfill ${s}) — Ctrl+C to stop`);try{for await(let d of Br({baseUrl:r,apiKey:t,project:n,stage:o},{backfill:s,minLevel:a,signal:c.signal}))if(i)console.log(JSON.stringify(d));else console.log(Va(d))}catch(d){if(!c.signal.aborted)console.error(d instanceof Error?d.message:String(d)),process.exitCode=1}finally{process.off("SIGINT",u)}}async function iS(e){let[t,r]=dt(e);if(!t){console.log(ye("agent"));return}if(t==="list"||t==="ls"){await lS(e);return}if(t==="get"){await cS(r,e);return}throw Error(`Unknown agent subcommand: ${t}
|
|
341
322
|
|
|
342
|
-
${
|
|
323
|
+
${ye("agent")}`)}async function Bf(e){let{manifest:t,config:r}=await We({project:T(e,"--project"),stage:T(e,"--stage"),command:"dev"}),n=await $e(T(e,"--base-url")??r.baseUrl),o=await new re({baseUrl:n.baseUrl,token:n.token}).getManifest(t.project,t.stage),a=t.resources.filter((s)=>s.kind==="agent").map((s)=>({name:s.name,config:s.config??{},agentId:o?.ids.agents[s.name]}));return{manifest:t,agents:a}}async function lS(e){let{manifest:t,agents:r}=await Bf(e);if(r.length===0){console.log(`No agents declared in ${t.project}/${t.stage}.`);return}console.log(`Agents in ${t.project}/${t.stage}:`);for(let n of r){let o=qf(n.config),a=n.config.publicAccess===!0?"public":"private",s=n.agentId?n.agentId:"not deployed";console.log(` ${n.name} [${a}] ${o} (${s})`)}}async function cS(e,t){if(!e)throw Error(`Missing agent name.
|
|
343
324
|
|
|
344
|
-
${
|
|
325
|
+
${ye("agent")}`);let{manifest:r,agents:n}=await Bf(t),o=n.find((m)=>m.name===e);if(!o)throw Error(`Unknown local agent: ${e}`);let a=o.config,s=typeof a.sandbox==="string"?a.sandbox:void 0,i=Array.isArray(a.workspaces)?a.workspaces.map((m)=>typeof m==="string"?m:m.name).filter(Boolean):[],c=pt(a.tools)?Object.keys(a.tools):[],u=pt(a.channels)?Object.keys(a.channels):[],d=pt(a.subagent)&&Array.isArray(a.subagent.allowed)?a.subagent.allowed.map((m)=>typeof m==="string"?m:m.name).filter(Boolean):[],p=pt(a.hooks)&&Array.isArray(a.hooks.webhooks)?a.hooks.webhooks.filter(pt):[];if(console.log(`Agent: ${o.name}`),console.log(` Project/Stage: ${r.project}/${r.stage}`),console.log(` Deployed id: ${o.agentId??"not deployed"}`),console.log(` Public access: ${a.publicAccess===!0?"public (SSE/WebSocket enabled)":"private (secured by default)"}`),console.log(` Model: ${qf(a)}`),console.log(` Sandbox: ${s??"—"}`),console.log(` Workspaces: ${i.length>0?i.join(", "):"—"}`),console.log(` Tools: ${c.length>0?c.join(", "):"—"}`),console.log(` Subagents: ${d.length>0?d.join(", "):"—"}`),console.log(` Channels: ${u.length>0?u.join(", "):"—"}`),p.length>0)console.log(" Webhooks:"),p.forEach((m,f)=>{let y=Array.isArray(m.events)&&m.events.length>0?m.events.join(", "):"all events",g=m.enabled===!1?"disabled":"enabled";console.log(` [${f}] ${g} → ${m.url??"—"} (${y})`)})}function qf(e){let t=pt(e.model)?e.model:{},r=typeof t.provider==="string"?t.provider:void 0,n=typeof t.modelId==="string"?t.modelId:void 0;if(r&&n)return`${r}/${n}`;return n??r??"unconfigured model"}async function uS(e){let[t,...r]=dt(e);if(!t)throw Error(`Missing agent name.
|
|
345
326
|
|
|
346
|
-
${
|
|
347
|
-
`+
|
|
327
|
+
${ye("run")}`);let n=r.join(" "),o=Boolean(process.stdin.isTTY&&process.stdout.isTTY);if(!o&&!n)throw Error("Usage: broods run <agent> <prompt>. Omit the prompt for an interactive session, which requires a TTY.");let{manifest:a,config:s}=await We({project:T(e,"--project"),stage:T(e,"--stage"),command:"dev"}),i=await $e(T(e,"--base-url")??s.baseUrl),c=a.resources.find((y)=>y.kind==="agent"&&y.name===t);if(!c)throw Error(`Unknown local agent: ${t}`);let d=(await new re({baseUrl:i.baseUrl,token:i.token}).getManifest(a.project,a.stage))?.ids.agents[t];if(!d)throw Error(`Agent ${t} is not synced yet. Run broods dev --once or broods deploy first.`);let p=await new re({baseUrl:i.baseUrl,token:i.token}).getRuntimeKey(a.project,a.stage).catch(()=>null);if(p?.apiKey)await Jt("BROODS_API_KEY",p.apiKey);if(c.config.publicAccess!==!0)G(`⚠ Agent "${t}" does not set publicAccess: true. The public endpoint is secured by default; if the deployed agent has not enabled it, this run will be refused.`);let m=new La({baseUrl:T(e,"--base-url")??process.env.BROODS_BASE_URL??process.env.BROODS_HOST??i.baseUrl,...p?.apiKey?{apiKey:p.apiKey}:{}}),f={kind:"agent",name:t,id:d,project:a.project,stage:a.stage,...p?.endpointId?{endpointId:p.endpointId}:{},...p?.projectSlug?{projectSlug:p.projectSlug}:{},...p?.stageSlug?{stageSlug:p.stageSlug}:{}};try{if(o){await ff({client:m,agent:f,...n?{prompt:n}:{}});return}await mf({client:m,agent:f,prompt:n})}catch(y){if((y instanceof Error?y.message:String(y)).includes("public_access_disabled"))throw Error(`Agent "${t}" is not publicly accessible (secured by default). Set publicAccess: true in its config and redeploy, or enable Public access in the dashboard.`);throw y}}async function Rn(e,t,r){try{await Et(e,t,{flag:r?"w":"wx"})}catch(n){if(n.code==="EEXIST")return;throw n}}async function Wf(){let e=te(process.cwd(),pe,".gitignore"),t=await Kt(e),n=["_generated",".cache"].filter((a)=>!t.split(/\r?\n/).some((s)=>s.trim()===a));if(n.length===0)return;let o=t?t.trimEnd()+`
|
|
328
|
+
`+n.join(`
|
|
348
329
|
`)+`
|
|
349
|
-
`:
|
|
330
|
+
`:n.join(`
|
|
350
331
|
`)+`
|
|
351
|
-
`;await
|
|
352
|
-
`,"utf8")}async function
|
|
353
|
-
`).split(/\n/):["# Local broods CLI settings. Tokens are stored outside the repo."],
|
|
332
|
+
`;await Et(e,o,"utf8")}async function Ga(){let e=te(process.cwd(),"package.json"),t=await Kt(e);if(!t)return;let r;try{r=JSON.parse(t)}catch{return}if(r.type)return;r.type="module",await Et(e,JSON.stringify(r,null,2)+`
|
|
333
|
+
`,"utf8")}async function Ja(e){let t=te(process.cwd(),".env.local"),r=await Kt(t),n=Vf(r),o={BROODS_DASHBOARD_URL:e.dashboardUrl,...e.baseUrl?{BROODS_BASE_URL:e.baseUrl}:{},BROODS_PROJECT:e.project,BROODS_STAGE:e.stage,BROODS_REGION:e.region},a=r?r.replace(/\n?$/,`
|
|
334
|
+
`).split(/\n/):["# Local broods CLI settings. Tokens are stored outside the repo."],s=!1;for(let[c,u]of Object.entries(o)){if(n[c]!==void 0&&!e.force)continue;let d=a.findIndex((p)=>p.trim().startsWith(`${c}=`));if(d>=0)a[d]=`${c}=${Cn(u)}`;else a.push(`${c}=${Cn(u)}`);if(process.env[c]===void 0)process.env[c]=u;s=!0}if(!s&&r)return;let i=`${a.filter((c,u,d)=>!(c===""&&u===d.length-1)).join(`
|
|
354
335
|
`)}
|
|
355
|
-
`;await
|
|
356
|
-
`).split(/\n/):["# Local broods CLI settings. Tokens are stored outside the repo."],
|
|
336
|
+
`;await Et(t,i,"utf8")}async function Jt(e,t){let r=te(process.cwd(),".env.local"),n=await Kt(r),o=n?n.replace(/\n?$/,`
|
|
337
|
+
`).split(/\n/):["# Local broods CLI settings. Tokens are stored outside the repo."],a=o.findIndex((i)=>i.trim().startsWith(`${e}=`));if(a>=0)o[a]=`${e}=${Cn(t)}`;else o.push(`${e}=${Cn(t)}`);process.env[e]=t;let s=`${o.filter((i,c,u)=>!(i===""&&c===u.length-1)).join(`
|
|
357
338
|
`)}
|
|
358
|
-
`;await
|
|
339
|
+
`;await Et(r,s,"utf8")}async function Kt(e){try{return await Af(e,"utf8")}catch(t){if(t.code==="ENOENT")return"";throw t}}function Vf(e){let t={};for(let r of e.split(/\r?\n/)){let n=r.trim();if(!n||n.startsWith("#"))continue;let o=n.indexOf("=");if(o<=0)continue;t[n.slice(0,o).trim()]=n.slice(o+1).trim()}return t}function Cn(e){return JSON.stringify(e)}function Ht(e){return b_(te(e)).replace(/^@/,"").replace(/\//g,"-").replace(/[^A-Za-z0-9_-]+/g,"-").replace(/^-+|-+$/g,"")||"broods-app"}async function Mf(){let e=te(process.cwd(),pe),t=[];await Ka(e,t);let r=Of("sha256");for(let n of t.sort())r.update(x_(e,n)),r.update("\x00"),r.update(await Af(n)),r.update("\x00");return r.digest("hex")}async function Ka(e,t){let r=await w_(e,{withFileTypes:!0});for(let n of r){let o=Pf(e,n.name);if(n.isDirectory()){if(n.name===Oe||n.name==="generated"||n.name===".cache")continue;await Ka(o,t);continue}if(n.isFile()&&(n.name.endsWith(".ts")||n.name.endsWith(".md")))t.push(o)}}function dS(e){return e.split(/[\\/]/).some((t)=>t===Oe||t==="generated"||t===".cache")}function Gf(){return`import { defineAgent, defineSandbox, env } from "broods";
|
|
359
340
|
|
|
360
341
|
// A Lambda sandbox: a fresh, ephemeral bash environment created per run.
|
|
361
342
|
export const lambdaSandbox = defineSandbox({
|
|
@@ -383,4 +364,4 @@ export const myAgent = defineAgent({
|
|
|
383
364
|
`+" // `broods run` can reach this agent. Off by default — secured: a\n"+` // private agent is only reachable via internal endpoints or channel webhooks.
|
|
384
365
|
publicAccess: true,
|
|
385
366
|
});
|
|
386
|
-
`}function
|
|
367
|
+
`}function pS(e,t){if(e==="status")throw Error("status was renamed to whoami. Run `broods whoami`.");if(t.includes("--env"))throw Error("--env was renamed to --stage. Pass --stage <name> instead.");Q();let r=process.env.BROODS_ENVIRONMENT;if(r!==void 0&&process.env.BROODS_STAGE===void 0)throw Error(`BROODS_ENVIRONMENT was renamed to BROODS_STAGE. Rename the key in .env.local (it is currently set to "${r}").`)}T_().catch((e)=>{console.error(e instanceof Error?e.message:String(e)),process.exit(1)});
|