broods 0.17.3 → 0.18.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/cli/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import{R as X,S as
|
|
2
|
+
import{R as X,S as Be,T as cs,f as ue,g as Ce,h as kn,i as Cs,j as Br,k as ct,l as ut,m as ja,n as te,o as Pr,p as Of,r as Da,u as ks}from"../chunk-prg3eaft.js";import{U as Hh}from"../chunk-3cvxks4m.js";import{mkdir as Ua,readFile as Pf,readdir as S_,writeFile as it}from"node:fs/promises";import{createHash as Za}from"node:crypto";import{basename as T_,dirname as I_,join as Nf,relative as E_,resolve as H}from"node:path";import{watch as k_}from"node:fs";import{spawn as zf}from"node:child_process";import{tmpdir as $_}from"node:os";import{performance as kf}from"node:perf_hooks";import{fileURLToPath as Yf,pathToFileURL as Xf}from"node:url";import{createHash as Qf}from"node:crypto";import{readFileSync as em}from"node:fs";import{mkdtemp as tm,readdir as us,readFile as ds,rm,writeFile as ts}from"node:fs/promises";import rs from"node:module";import{tmpdir as nm}from"node:os";import{basename as ps,isAbsolute as om,join as Et,relative as kt,resolve as zr}from"node:path";import{build as am,transformSync as fs}from"esbuild";var Xa={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"}},Qa=Object.keys(Xa);function es(e){return Object.hasOwn(Xa,e)}var ns="*",sm=`const passthrough = (input) => input;
|
|
3
3
|
export const defineTool = passthrough;
|
|
4
4
|
export const defineAgent = passthrough;
|
|
5
5
|
export const defineHarness = passthrough;
|
|
@@ -11,16 +11,16 @@ export const defineCron = passthrough;
|
|
|
11
11
|
export const defineBroods = passthrough;
|
|
12
12
|
export const env = (name) => ({ __beeblastEnv: true, name });
|
|
13
13
|
export default {};
|
|
14
|
-
`,Ze=1e7,rs=20000000,ns=200,am=new Set(["node_modules",".git"]),sm=[/^\.env(?:\.|$)/i,/^id_(?:rsa|dsa|ecdsa|ed25519)(?:\.pub)?$/i,/\.(?:pem|key|p12|pfx)$/i],Rn={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 Be(e={}){let t=e.cwd??process.cwd();te(t);let r=Pr(t,ce),n=await lm(r),o=await cm(n),a=await dm(o,t,e.project),s=o.filter((m)=>X(m.value)).map((m)=>({exportName:m.exportName,file:m.file,resource:m.value})),i=s.map((m)=>m.resource);Sm(i),_m(i);let c=Im(s,o),u=km(i);for(let m of i)fm(m);for(let m of i)mm(m);for(let m of i)hm(m);gm(i),ym(i),Em(s,u);let d=Tm(s),p=im(a,e.stage??(e.useRuntimeStage===!1?void 0:lt()),e.command??"dev"),f=(await Promise.all(s.map((m)=>$m(m,r,u)))).flat().sort((m,y)=>`${m.kind}:${m.name}`.localeCompare(`${y.kind}:${y.name}`));return{config:a,resources:i,resourceAliases:d,channels:c,manifest:{version:1,project:a.project,stage:p,resources:f}}}function ps(e){let t=new Set;for(let r of e.resources)Nr(r.config,t);return[...t].sort()}function Nr(e,t){if(Array.isArray(e)){for(let r of e)Nr(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))Nr(n,t)}}function im(e,t,r){if(t)return t;let n=e.stages?.[r];if(n)return n;return r==="deploy"?"production":"development"}async function lm(e){let t=[];async function r(n){let o=await ls(n,{withFileTypes:!0});for(let a of o){let s=kt(n,a.name);if(a.isDirectory()){if(a.name===Ce||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)=>$t(e,n).localeCompare($t(e,o)))}async function cm(e){um();let t=[];for(let r of e){let o=await import(`${Hf(r).href}?t=${Date.now()}`);t.push(...Object.entries(o).map(([a,s])=>({exportName:a,file:r,value:s})))}return t}var os=!1;function um(){if(os)return;if(os=!0,typeof es.registerHooks!=="function")return;es.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:ds(Xf(o,"utf8"),{loader:"ts",format:"esm",sourcefile:o,sourcemap:"inline"}).code}}})}async function dm(e,t,r){let o=e.find((s)=>is(s.value))?.value?.config??{},a=r??process.env.BROODS_PROJECT??o.project??eh(us(Pr(t)));if(!a.trim())throw Error("Project name is required. Pass --project <name> or set BROODS_PROJECT.");return{...o,project:a}}var as=new Set(["agent","harness","model","provider","session","hooks","connections","tools","denyTools","sandbox","workspaces","subagent","skills","scheduler","policies","publicAccess"]),pm={workspace:"workspaces",skill:"skills",policy:"policies",tool:"tools",channel:"connections",channels:"connections",hook:"hooks",subagents:"subagent",sandboxes:"sandbox",systemPrompt:"agent",system:"agent"};function fm(e){if(e.kind!=="agent")return;let t=e.config;for(let r of Object.keys(t)){if(as.has(r))continue;let n=pm[r],o=n?` Did you mean "${n}"?`:` Allowed keys: ${[...as].sort().join(", ")}.`;throw Error(`Agent "${e.name}" has an unknown config key "${r}".${o}`)}}function mm(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 hm(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 gm(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(Fe):[],s=new Set;for(let d of a){let p=d.config,f=typeof p.id==="string"?p.id:void 0;if(f){if(s.has(f))throw Error(`Duplicate channel id: ${f}`);s.add(f)}if(d.partition)ms(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)=>vm(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 fs(e){if(!e)return;return e.by==="shared"?{level:"channel"}:{level:"conversation",alias:e.alias}}function ms(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 vm(e,t){if(X(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(X(r)&&r.kind==="workspace")return r;if(typeof r==="string")return t.get(r)}return}function ym(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=hs(n.sandbox,t),a=n.workspaces;if(!Array.isArray(a))continue;for(let s of a){let i=wm(s),c=bm(s,o,t);if(!c||xm(c))continue;throw Error(`Agent "${r.name}" workspace "${i}" uses sandbox "${c.name}" (${gs(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 hs(e,t){if(X(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 hs(n,r)}return t}function wm(e){if(X(e)&&e.kind==="workspace")return e.name;if(e&&typeof e==="object"&&"workspace"in e){let t=e.workspace;if(X(t))return t.name;if(typeof t==="string")return t}return"<unknown>"}function xm(e){let t=gs(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 gs(e){return typeof e.config.provider==="string"?e.config.provider:"sandbox"}function _m(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(X(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 Sm(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 Tm(e){let t={},r=new Set;for(let{exportName:n,resource:o}of e){if(n==="default"||!An(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 Im(e,t){let r=new Map;for(let s of t){if(!Fe(s.value)||s.exportName==="default"||!An(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(!Fe(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 f=s!=="default"&&An(s)?s:i.name,m=r.get(d)??`${f}${ys(d.type)}Channel`;if(o.has(m))throw Error(`Duplicate channel export alias: ${m}`);o.add(m),a.push({alias:m,type:d.type,id:m,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(!Fe(o))continue;if(vs(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 vs(e,t){let r=e.config.allowedChannelIds??[];if(r.includes(ts))return[ts];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(!Fe(n.connection))continue;if(typeof n.externalId!=="string")continue;let o=t.get(n.connection)??new Set;o.add(n.externalId),t.set(n.connection,o)}return t}function ys(e){return e.charAt(0).toUpperCase()+e.slice(1)}function An(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}]}return[{kind:n.kind,name:n.name,...n.description?{description:n.description}:{},config:await Mm(e,t)}]}async function Mm(e,t){let r=e.resource;if(r.kind==="skill")return await Fm(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 Le(n)}if(r.kind==="channelRecord")return Wm(r.name,r.config);if(r.kind==="tool")return await Bm(e,r.config,t);if(r.kind==="policy"){let n={...r.config};return n.version=n.version??1,Le(n)}if(r.kind==="cron"){let n={...r.config},o=n.agent;if(n.agentId=X(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 Le(n)}return Le(r.config)}var Rm=new Set(["apiKey","base_url","baseURL"]),Am=new Set(["activeTools","debug","inactiveTools","permissionMode","sandbox","startupTimeoutMs","type","webSearch"]),Cm=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(!Am.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"||X(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(Cn(e,r.activeTools,"activeTools"),Cn(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(!Cm.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`);Cn(e,r.subsystems,"debug.subsystems")}function Cn(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=X(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=bs(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(!Fe(a))throw Error(`Agent "${e.name}" config.connections must contain connection definitions`);let s=`${e.name}${ys(a.type)}Channel`,i=fs(a.partition),c=vs(a,r);return[a.type,{id:s,...a.config,...i?{workspaceScope:i}:{},allowedChannelIds:c}]})),delete n.connections}if(X(n.sandbox))n.sandbox=n.sandbox.name;if(Array.isArray(n.workspaces))n.workspaces=n.workspaces.map((a)=>qm(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:Le(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(Rn).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:Rn[u],source:Um(d.toString())}]});if(n.length===0)return;let o=`${e}-hooks`,a=Zm(e,n),s=Buffer.byteLength(a);if(s>Ze)throw Error(`Agent "${e}" hook bundle is too large (${s} bytes, max ${Ze})`);let i=n.map((u)=>u.event),c=bs(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:On(a)}}}}function bs(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 Rn)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 {
|
|
14
|
+
`,Le=1e7,os=20000000,as=200,im=new Set(["node_modules",".git"]),lm=[/^\.env(?:\.|$)/i,/^id_(?:rsa|dsa|ecdsa|ed25519)(?:\.pub)?$/i,/\.(?:pem|key|p12|pfx)$/i],An={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 qe(e={}){let t=e.cwd??process.cwd();te(t);let r=zr(t,ue),n=await um(r),o=await dm(n),a=await fm(o,t,e.project),s=o.filter((m)=>X(m.value)).map((m)=>({exportName:m.exportName,file:m.file,resource:m.value})),i=s.map((m)=>m.resource);Im(i),Tm(i);let c=km(s,o),u=Mm(i);for(let m of i)hm(m);for(let m of i)gm(m);for(let m of i)vm(m);ym(i),wm(i),$m(s,u);let d=Em(s),p=cm(a,e.stage??(e.useRuntimeStage===!1?void 0:ct()),e.command??"dev"),f=(await Promise.all(s.map((m)=>Rm(m,r,u)))).flat().sort((m,y)=>`${m.kind}:${m.name}`.localeCompare(`${y.kind}:${y.name}`));return{config:a,resources:i,resourceAliases:d,channels:c,manifest:{version:1,project:a.project,stage:p,resources:f}}}function ms(e){let t=new Set;for(let r of e.resources)jr(r.config,t);return[...t].sort()}function jr(e,t){if(Array.isArray(e)){for(let r of e)jr(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))jr(n,t)}}function cm(e,t,r){if(t)return t;let n=e.stages?.[r];if(n)return n;return r==="deploy"?"production":"development"}async function um(e){let t=[];async function r(n){let o=await us(n,{withFileTypes:!0});for(let a of o){let s=Et(n,a.name);if(a.isDirectory()){if(a.name===Ce||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 dm(e){pm();let t=[];for(let r of e){let o=await import(`${Xf(r).href}?t=${Date.now()}`);t.push(...Object.entries(o).map(([a,s])=>({exportName:a,file:r,value:s})))}return t}var ss=!1;function pm(){if(ss)return;if(ss=!0,typeof rs.registerHooks!=="function")return;rs.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=Yf(n);return{format:"module",shortCircuit:!0,source:fs(em(o,"utf8"),{loader:"ts",format:"esm",sourcefile:o,sourcemap:"inline"}).code}}})}async function fm(e,t,r){let o=e.find((s)=>cs(s.value))?.value?.config??{},a=r??process.env.BROODS_PROJECT??o.project??rh(ps(zr(t)));if(!a.trim())throw Error("Project name is required. Pass --project <name> or set BROODS_PROJECT.");return{...o,project:a}}var is=new Set(["agent","harness","model","provider","session","hooks","connections","tools","denyTools","sandbox","workspaces","subagent","skills","scheduler","policies","publicAccess"]),mm={workspace:"workspaces",skill:"skills",policy:"policies",tool:"tools",channel:"connections",channels:"connections",hook:"hooks",subagents:"subagent",sandboxes:"sandbox",systemPrompt:"agent",system:"agent"};function hm(e){if(e.kind!=="agent")return;let t=e.config;for(let r of Object.keys(t)){if(is.has(r))continue;let n=mm[r],o=n?` Did you mean "${n}"?`:` Allowed keys: ${[...is].sort().join(", ")}.`;throw Error(`Agent "${e.name}" has an unknown config key "${r}".${o}`)}}function gm(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 vm(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 ym(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(Be):[],s=new Set;for(let d of a){let p=d.config,f=typeof p.id==="string"?p.id:void 0;if(f){if(s.has(f))throw Error(`Duplicate channel id: ${f}`);s.add(f)}if(d.partition)gs(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)=>bm(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 hs(e){if(!e)return;return e.by==="shared"?{level:"channel"}:{level:"conversation",alias:e.alias}}function gs(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 bm(e,t){if(X(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(X(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=vs(n.sandbox,t),a=n.workspaces;if(!Array.isArray(a))continue;for(let s of a){let i=_m(s),c=xm(s,o,t);if(!c||Sm(c))continue;throw Error(`Agent "${r.name}" workspace "${i}" uses sandbox "${c.name}" (${ys(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 vs(e,t){if(X(e)&&e.kind==="sandbox")return e;if(typeof e==="string")return t.get(e);return}function xm(e,t,r){if(e&&typeof e==="object"&&"sandbox"in e){let n=e.sandbox;if(n===null)return;return vs(n,r)}return t}function _m(e){if(X(e)&&e.kind==="workspace")return e.name;if(e&&typeof e==="object"&&"workspace"in e){let t=e.workspace;if(X(t))return t.name;if(typeof t==="string")return t}return"<unknown>"}function Sm(e){let t=ys(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 ys(e){return typeof e.config.provider==="string"?e.config.provider:"sandbox"}function Tm(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(X(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 Im(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 Em(e){let t={},r=new Set;for(let{exportName:n,resource:o}of e){if(n==="default"||!Cn(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 km(e,t){let r=new Map;for(let s of t){if(!Be(s.value)||s.exportName==="default"||!Cn(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(!Be(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 f=s!=="default"&&Cn(s)?s:i.name,m=r.get(d)??`${f}${ws(d.type)}Channel`;if(o.has(m))throw Error(`Duplicate channel export alias: ${m}`);o.add(m),a.push({alias:m,type:d.type,id:m,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 $m(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(!Be(o))continue;if(bs(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 bs(e,t){let r=e.config.allowedChannelIds??[];if(r.includes(ns))return[ns];return[...new Set([...t.get(e)??[],...r])]}function Mm(e){let t=new Map;for(let r of e){if(r.kind!=="channelRecord")continue;let n=r.config;if(!Be(n.connection))continue;if(typeof n.externalId!=="string")continue;let o=t.get(n.connection)??new Set;o.add(n.externalId),t.set(n.connection,o)}return t}function ws(e){return e.charAt(0).toUpperCase()+e.slice(1)}function Cn(e){return/^[A-Za-z_$][A-Za-z0-9_$]*$/.test(e)}async function Rm(e,t,r){let n=e.resource;if(n.kind==="agent"){let o=Um(n,t,r);return[...o.hookResource?[o.hookResource]:[],{kind:n.kind,name:n.name,...n.description?{description:n.description}:{},config:o.config}]}return[{kind:n.kind,name:n.name,...n.description?{description:n.description}:{},config:await Am(e,t)}]}async function Am(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 Fe(n)}if(r.kind==="channelRecord")return Gm(r.name,r.config);if(r.kind==="tool")return await Wm(e,r.config,t);if(r.kind==="policy"){let n={...r.config};return n.version=n.version??1,Fe(n)}if(r.kind==="cron"){let n={...r.config},o=n.agent;if(n.agentId=X(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 Fe(n)}return Fe(r.config)}var Cm=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(e){if(Cm.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 zm(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(!es(r))throw Error(`Agent "${e}" config.provider.${r} is not a supported provider (expected one of: ${Qa.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=Nm(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 jm(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(!Om.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"||X(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(On(e,r.activeTools,"activeTools"),On(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`);Dm(e,r.debug)}function Dm(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(!Pm.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`);On(e,r.subsystems,"debug.subsystems")}function On(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 Um(e,t,r){let n={...e.config};if(zm(e.name,n.provider),jm(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=X(a.sandbox)?a.sandbox.name:a.sandbox,delete a.sandbox,n.harness=a}let o=Zm(e.name,n.hooks);if(o)n.hooks=o.agentHooksConfig;else if(n.hooks!==void 0)n.hooks=xs(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(!Be(a))throw Error(`Agent "${e.name}" config.connections must contain connection definitions`);let s=`${e.name}${ws(a.type)}Channel`,i=hs(a.partition),c=bs(a,r);return[a.type,{id:s,...a.config,...i?{workspaceScope:i}:{},allowedChannelIds:c}]})),delete n.connections}if(X(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=Bm(n.policies,e.name);if(a)n.policies=a;else delete n.policies}return{config:Fe(n),...o?.hookResource?{hookResource:o.hookResource}:{}}}function Zm(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(An).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:An[u],source:Lm(d.toString())}]});if(n.length===0)return;let o=`${e}-hooks`,a=Fm(e,n),s=Buffer.byteLength(a);if(s>Le)throw Error(`Agent "${e}" hook bundle is too large (${s} bytes, max ${Le})`);let i=n.map((u)=>u.event),c=xs(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:Pn(a)}}}}function xs(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 An)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 Lm(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 Fm(e,t){let r=`export default {
|
|
15
15
|
${t.map((n)=>` ${JSON.stringify(n.event)}: ${n.source},`).join(`
|
|
16
16
|
`)}
|
|
17
17
|
};
|
|
18
|
-
`;try{return
|
|
18
|
+
`;try{return fs(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 Bm(e,t){if(!Array.isArray(e))throw Error(`Agent "${t}" config.policies must be an array`);let r=e.map((n)=>{if(X(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 qm(e,t){let r=_s(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 n=new Set;if(jr(t.defaultConfig,n),n.size>0)throw Error(`Tool "${e.resource.name}" defaultConfig cannot contain env("NAME") references; put environment variable values in the agent's tools.<tool>.config so they stay encrypted and stage-scoped`);let o=t.path?_s(r,t.path,"Tool"):e.file,a=kt(r,o).split("\\").join("/");Km(a,"Tool");let s=Buffer.byteLength(await ds(o));if(s>Le)throw Error(`Tool source ${a} is too large (${s} bytes, max ${Le})`);let i=await tm(Et(nm(),"broods-tool-")),c=Et(i,"tool-adapter.mjs");if(await ts(c,Qm(o,t.path,e),"utf8"),!t.path)await ts(Et(i,"broods-stub.mjs"),sm,"utf8");let u;try{let p=await am({entryPoints:[c],bundle:!0,platform:"node",format:"esm",minify:!1,write:!1,logLevel:"silent",plugins:t.path?[]:[Xm(i)]}).catch((f)=>{let m=Hm(f)?f.errors.map((y)=>y.text).filter(Boolean).join("; "):f instanceof Error?f.message:String(f);throw Error(`Tool bundle ${a} failed to build${m?`: ${m}`:""}`)});if(p.outputFiles.length!==1)throw Error(`Tool bundle ${a} failed to build: expected one output file`);u=p.outputFiles[0].text}finally{await rm(i,{recursive:!0,force:!0})}u=th(u,o,a);let d=Buffer.byteLength(u);if(d>Le)throw Error(`Tool bundle ${a} is too large (${d} bytes, max ${Le})`);return{path:a,description:t.description,inputSchema:t.inputSchema,...t.runtime!==void 0?{runtime:t.runtime}:{},...t.defaultConfig!==void 0?{defaultConfig:t.defaultConfig}:{},bundle:u,sha256:Pn(u)}}function Vm(e,t){if(X(e))return{name:e.name,workspaceId:e.name};if(e&&typeof e==="object"&&"workspace"in e){let r=e.workspace,n=X(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:X(a)?a.name:a}return o}throw Error(`Agent ${t} workspaces must be defineWorkspace(...) resources or { workspace, sandbox } refs`)}function _s(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=zr(e),o=zr(n,t),a=kt(n,o);if(a===""||!a.startsWith("..")&&!om(a))return o;throw Error(`${r} path ${t} must stay inside ${ue}/`)}function Gm(e,t){let r={...t},n=r.connection;if(!Be(n))throw Error(`Channel "${e}" config.connection must be a connection definition`);delete r.connection,r.platform=n.type;let o=r.partition;if(gs(o,`Channel "${e}"`),o)delete r.partition,r.workspaceScope=hs(o);return Fe(r)}function Fe(e){if(Array.isArray(e))return e.map((t)=>Fe(t));if(X(e))return e.name;if(e&&typeof e==="object")return Object.fromEntries(Object.entries(e).map(([t,r])=>[t,Fe(r)]));return e}async function Jm(e){let t=[],r=0;async function n(o){let a=await us(o,{withFileTypes:!0});for(let s of a){let i=Et(o,s.name),c=kt(e,i).split("\\").join("/");if(s.isDirectory()){if(ls(s.name))continue;await n(i)}else if(s.isFile()){if(ls(s.name)||Ss(c))continue;let u=await ds(i);if(u.byteLength>Le)throw Error(`Skill bundle file ${c} is too large (${u.byteLength} bytes, max ${Le})`);if(r+=u.byteLength,r>os)throw Error(`Skill bundle at ${e} is too large (${r} bytes, max ${os})`);if(t.length>=as)throw Error(`Skill bundle at ${e} has too many files (max ${as})`);t.push({path:c,size:u.byteLength,sha256:Pn(u),contentBase64:u.toString("base64"),contentType:Ym(c)})}}}return await n(e),t.sort((o,a)=>String(o.path).localeCompare(String(a.path)))}function ls(e){return e.startsWith(".")||im.has(e)}function Km(e,t){if(Ss(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 Ss(e){return e.split("/").some((r)=>r.startsWith(".")||lm.some((n)=>n.test(r)))}function Pn(e){return Qf("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){let t=Et(e,"broods-stub.mjs");return{name:"broods-sdk-stub",setup:function(r){r.onResolve({filter:/^broods(\/.*)?$/},()=>({path:t}))}}}function Qm(e,t,r){let n=JSON.stringify(e);if(t)return`import __toolModule from ${n};
|
|
19
19
|
const __impl = typeof __toolModule === "function" ? __toolModule() : __toolModule;
|
|
20
20
|
export default { name: __impl.name, execute: (input, options) => __impl.execute(options.context, input) };
|
|
21
21
|
`;return`import { ${r.exportName} as __tool } from ${n};
|
|
22
22
|
export default { name: ${JSON.stringify(r.resource.name)}, execute: (input, options) => __tool.execute(input, options) };
|
|
23
|
-
`}function
|
|
23
|
+
`}function eh(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function th(e,t,r){let n=new RegExp(`^// .*${eh(ps(t))}$`,"gm");return e.replace(/^\/\/ .*tool-adapter\.mjs$/gm,()=>"// tool-adapter.mjs").replace(/^\/\/ .*broods-stub\.mjs$/gm,()=>"// broods-stub.mjs").replace(n,()=>`// ${r}`)}function rh(e){return e.replace(/^@/,"").replace(/\//g,"-").replace(/[^A-Za-z0-9_-]+/g,"-").replace(/^-+|-+$/g,"")}import{mkdir as nh,writeFile as Dr}from"node:fs/promises";import{resolve as Yt}from"node:path";async function Ur(e,t,r=process.cwd(),n={},o=null,a=[]){let s=Yt(r,ue,Ce),i=oh(t,e);await nh(s,{recursive:!0}),await Dr(Yt(s,"ids.ts"),ah(i),"utf8"),await Dr(Yt(s,"api.ts"),ih(e,i,n,o,a),"utf8"),await Dr(Yt(s,"resources.ts"),sh(e),"utf8"),await Dr(Yt(s,"dataModel.ts"),lh(),"utf8")}function oh(e,t){let r={agents:We(t,"agent"),workspaces:We(t,"workspace"),sandboxes:We(t,"sandbox"),crons:We(t,"cron"),skills:We(t,"skill"),tools:We(t,"tool"),policies:We(t,"policy"),channelRecords:We(t,"channelRecord")};return{agents:Ve(e.agents,r.agents),workspaces:Ve(e.workspaces,r.workspaces),sandboxes:Ve(e.sandboxes,r.sandboxes),crons:Ve(e.crons,r.crons),skills:Ve(e.skills,r.skills),tools:Ve(e.tools,r.tools),hooks:{},policies:Ve(e.policies,r.policies),channelRecords:Ve(e.channelRecords,r.channelRecords)}}function We(e,t){return new Set(e.resources.filter((r)=>r.kind===t).map((r)=>r.name))}function Ve(e,t){return Object.fromEntries(Object.entries(e??{}).filter(([r])=>t.has(r)))}function ah(e){return`// Generated by broods. Do not edit by hand.
|
|
24
24
|
export const ids = ${JSON.stringify(e,null,2)} as const;
|
|
25
25
|
export const agents = ids.agents;
|
|
26
26
|
export const workspaces = ids.workspaces;
|
|
@@ -29,10 +29,10 @@ export const crons = ids.crons;
|
|
|
29
29
|
export const skills = ids.skills;
|
|
30
30
|
export const tools = ids.tools;
|
|
31
31
|
export const policies = ids.policies;
|
|
32
|
-
`}function
|
|
32
|
+
`}function sh(e){return`// Generated by broods. Do not edit by hand.
|
|
33
33
|
export const manifest = ${JSON.stringify(e,null,2)} as const;
|
|
34
|
-
`}function
|
|
35
|
-
`),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` ${
|
|
34
|
+
`}function ih(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)=>` ${Nn(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(`
|
|
35
|
+
`),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` ${Nn(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
36
|
`):"";return`// Generated by broods. Do not edit by hand.
|
|
37
37
|
import type { ResourceApi } from "broods";
|
|
38
38
|
import { ids } from "./ids";
|
|
@@ -45,28 +45,28 @@ ${i}
|
|
|
45
45
|
channels: {
|
|
46
46
|
${c}
|
|
47
47
|
},
|
|
48
|
-
workspaces: ${
|
|
49
|
-
sandboxes: ${
|
|
50
|
-
crons: ${
|
|
51
|
-
skills: ${
|
|
52
|
-
tools: ${
|
|
53
|
-
policies: ${
|
|
48
|
+
workspaces: ${$t("workspaces",t.workspaces,r.workspace)},
|
|
49
|
+
sandboxes: ${$t("sandboxes",t.sandboxes,r.sandbox)},
|
|
50
|
+
crons: ${$t("crons",t.crons,r.cron)},
|
|
51
|
+
skills: ${$t("skills",t.skills,r.skill)},
|
|
52
|
+
tools: ${$t("tools",t.tools,r.tool)},
|
|
53
|
+
policies: ${$t("policies",t.policies,r.policy)},
|
|
54
54
|
} as const satisfies ResourceApi;
|
|
55
|
-
`}function
|
|
56
|
-
${n.map((a)=>` ${
|
|
55
|
+
`}function $t(e,t,r){let n=Object.keys(t);if(n.length===0)return"{}";return`{
|
|
56
|
+
${n.map((a)=>` ${Nn(r?.[a]??a)}: ids.${e}[${JSON.stringify(a)}],`).join(`
|
|
57
57
|
`)}
|
|
58
|
-
}`}function
|
|
58
|
+
}`}function Nn(e){return/^[A-Za-z_$][A-Za-z0-9_$]*$/.test(e)?e:JSON.stringify(e)}function lh(){return`// Generated by broods. Do not edit by hand.
|
|
59
59
|
export type { AgentReference, ChannelReference, AgentRunInput, AgentRunResult, ResourceApi } from "broods";
|
|
60
|
-
`}class ae{baseUrl;token;fetchImpl;constructor(e){this.baseUrl=ct(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 ve(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 ve(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 ve(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 ve(o,"Set environment variable failed")}async listEnv(e,t){let r=await this.request(e,t,"/env",{method:"GET"});return await ve(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 ve(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 ve(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 ve(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 ve(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 Ts(t),await ve(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 Ts(n),await ve(n,"Create stage failed"),await n.json()}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 ve(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 Un(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(Dr(Nn(p))!==Dr(Nn(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)&&ih(u.resource.kind)&&u.resource.kind===p.resource.kind&&Dr(_s(u.resource))===Dr(_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 Nn(e){let t=zn(e);if(e.kind!=="skill"&&e.kind!=="tool"&&e.kind!=="hook")return t;return{...t,config:jn(t.config)}}function _s(e){let t=Nn(e),{name:r,...n}=t;return n}function ih(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 jn(e){if(Array.isArray(e))return e.map(jn);if(e&&typeof e==="object")return Object.fromEntries(Object.entries(e).flatMap(([t,r])=>{if(t==="contentBase64"||t==="bundle")return[];return[[t,jn(r)]]}));return e}function Dr(e){return JSON.stringify(Dn(e))}function Dn(e){if(Array.isArray(e))return e.map(Dn);if(e&&typeof e==="object")return Object.fromEntries(Object.entries(e).sort(([t],[r])=>t.localeCompare(r)).map(([t,r])=>[t,Dn(r)]));return e}function Ts(e){if(e.status!==404)return;if((e.headers.get("Content-Type")??"").includes("application/json"))return;throw Error("This broods deployment has no /v1/account/stages route yet. Update the backend to use `broods stage`.")}async function ve(e,t){if(!e.ok)throw Error(`${t}: ${e.status} ${await e.text()}`)}var lh=1,ch=0;function uh(e,t,r,n){return`${Is(e)}/v1/${encodeURIComponent(t)}/${encodeURIComponent(r)}/observability/ws?token=${encodeURIComponent(n)}`}function dh(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 ph(){let e=globalThis.WebSocket;if(!e)throw Error("WebSocket is not available in this environment.");return e}async function Es(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*Ur(e,t={}){let r=new Set,n=500;while(!t.signal?.aborted){try{for await(let o of fh(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 mh(n,t.signal),n=Math.min(n*2,5000)}}async function*fh(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=uh(r,o,a,n),p=d.slice(0,d.indexOf("?")),f=ph(),m=[],y=null,v=!1,_=null,j=()=>{_?.(),_=null},C=new f(d),Z=()=>{if(C.readyState===lh||C.readyState===ch)C.close(1000,"client closed");c?.removeEventListener("abort",R)},R=()=>{v=!0,j(),Z()};c?.addEventListener("abort",R,{once:!0}),C.onopen=()=>{if(c?.aborted){Z();return}let P={type:"subscribe",stream:"logs",...s>0?{backfill:s}:{},...u?{liveOnly:!0}:{},...i!==void 0?{minLevel:i}:{}};C.send(JSON.stringify(P))},C.onmessage=(P)=>{let h=dh(P.data);if(!h)return;switch(h.type){case"backfill":if(h.stream==="logs"){for(let N of h.entries)m.push(N);j()}break;case"log":m.push(h.entry),j();break;case"error":y=Error(`Observability gateway error: ${h.error}`),v=!0,j();break;case"ready":break;default:break}},C.onerror=()=>{y=Error(`Cannot connect to the observability gateway at ${p}.`),v=!0,j()},C.onclose=(P)=>{if(!v){if(P.code!==1000)y=Error(P.reason?`Observability WebSocket closed: ${P.reason}`:`Observability WebSocket closed with code ${P.code}.`);v=!0,j()}};try{while(!0){if(m.length>0){yield m.shift();continue}if(y)throw y;if(v)return;await new Promise((P)=>{_=P})}}finally{Z()}}function mh(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 hh}from"node:http";import{randomUUID as gh}from"node:crypto";import{spawn as vh}from"node:child_process";import{createInterface as Lr}from"node:readline/promises";import{stdin as ut,stdout as Ve}from"node:process";var yh=180000,bh=new Set(["--base-url","--dashboard-url","--stage","--from","--level","--limit","--project","--region","-n"]);function Rt(e){let t=[];for(let r=0;r<e.length;r+=1){let n=e[r];if(n===void 0)continue;if(bh.has(n)){r+=1;continue}if(n.startsWith("-"))continue;t.push(n)}return t}function E(e,t){let r=e.indexOf(t);return r>=0?e[r+1]:void 0}function we(e,t){return e.includes(t)}function dt(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}async function ke(e){te();let t=await ks();if(!t)throw Error("Run `broods login` first, or set BROODS_TOKEN and BROODS_BASE_URL.");return{...t,...e?{baseUrl:ct(e)}:{}}}async function $s(e){let t=Lr({input:ut,output:Ve});try{let r=await t.question(`${e}: `);if(!r)throw Error(`${e} is required`);return r}finally{t.close()}}async function pt(e,t){let r=Lr({input:ut,output:Ve});try{let n=r.question(`${e}: `);if(t){if(ut.isTTY&&Ve.isTTY)Ve.write("\x1B[90m");if(r.write(t),ut.isTTY&&Ve.isTTY)Ve.write("\x1B[0m")}return(await n).trim()||t||""}finally{r.close()}}async function At(e,t,r){if(t.length===0)throw Error(`${e}: no options available`);if(t.length===1)return t[0];console.log(e),t.forEach((o,a)=>{console.log(` ${a+1}. ${r(o)}`)});let n=Lr({input:ut,output:Ve});try{while(!0){let o=(await n.question(`Choose 1-${t.length}: `)).trim(),a=Number(o);if(Number.isInteger(a)&&a>=1&&a<=t.length)return t[a-1];console.log(`Enter a number from 1 to ${t.length}.`)}}finally{n.close()}}async function Ms(e){if(!ut.isTTY)return!1;let t=Lr({input:ut,output:Ve});try{let r=(await t.question(`${e} [y/N] `)).trim().toLowerCase();return r==="y"||r==="yes"}finally{t.close()}}async function Zn(e){let t=gh(),{code:r,close:n}=await xh(t);try{let o=r.callbackUrl,a=`${ct(e)}/cli-auth/start?`+new URLSearchParams({callback:o,state:t});await wh(a),Th(a),console.log(`Opening ${a}`);let s=await _h(r.promise,yh),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:ct(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 Zr(u),u}finally{n()}}async function wh(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 xh(e){return new Promise((t,r)=>{let n=hh((c,u)=>{try{let d=new URL(c.url??"/","http://127.0.0.1"),p=d.searchParams.get("state"),f=d.searchParams.get("code"),m=d.searchParams.get("base_url");if(p!==e||!f){u.writeHead(400).end("Invalid broods login callback.");return}if(!m){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:f,baseUrl:ct(m)})}catch(d){a(d)}}),o,a,s=new Promise((c,u)=>{o=c,a=u}),i=Sh();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.
|
|
60
|
+
`}class ae{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 ve(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 ve(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 ve(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 ve(o,"Set environment variable failed")}async listEnv(e,t){let r=await this.request(e,t,"/env",{method:"GET"});return await ve(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 ve(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 ve(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 ve(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 ve(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 Es(t),await ve(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 Es(n),await ve(n,"Create stage failed"),await n.json()}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 ve(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 Zn(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(Zr(zn(p))!==Zr(zn(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)&&ch(u.resource.kind)&&u.resource.kind===p.resource.kind&&Zr(Ts(u.resource))===Zr(Ts(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)=>Is(u).localeCompare(Is(d)))}function zn(e){let t=jn(e);if(e.kind!=="skill"&&e.kind!=="tool"&&e.kind!=="hook")return t;return{...t,config:Dn(t.config)}}function Ts(e){let t=zn(e),{name:r,...n}=t;return n}function ch(e){return e==="agent"||e==="workspace"||e==="sandbox"||e==="policy"}function Is(e){return`${{create:0,rename:1,update:2,delete:3}[e.operation]}:${e.kind}:${e.previousName??""}:${e.name}`}function jn(e){if(Array.isArray(e))return e.map(jn);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,jn(n)]))}return e}function Dn(e){if(Array.isArray(e))return e.map(Dn);if(e&&typeof e==="object")return Object.fromEntries(Object.entries(e).flatMap(([t,r])=>{if(t==="contentBase64"||t==="bundle")return[];return[[t,Dn(r)]]}));return e}function Zr(e){return JSON.stringify(Un(e))}function Un(e){if(Array.isArray(e))return e.map(Un);if(e&&typeof e==="object")return Object.fromEntries(Object.entries(e).sort(([t],[r])=>t.localeCompare(r)).map(([t,r])=>[t,Un(r)]));return e}function Es(e){if(e.status!==404)return;if((e.headers.get("Content-Type")??"").includes("application/json"))return;throw Error("This broods deployment has no /v1/account/stages route yet. Update the backend to use `broods stage`.")}async function ve(e,t){if(!e.ok)throw Error(`${t}: ${e.status} ${await e.text()}`)}var uh=1,dh=0;function ph(e,t,r,n){return`${ks(e)}/v1/${encodeURIComponent(t)}/${encodeURIComponent(r)}/observability/ws?token=${encodeURIComponent(n)}`}function fh(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 mh(){let e=globalThis.WebSocket;if(!e)throw Error("WebSocket is not available in this environment.");return e}async function $s(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*Lr(e,t={}){let r=new Set,n=500;while(!t.signal?.aborted){try{for await(let o of hh(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 gh(n,t.signal),n=Math.min(n*2,5000)}}async function*hh(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=ph(r,o,a,n),p=d.slice(0,d.indexOf("?")),f=mh(),m=[],y=null,v=!1,_=null,j=()=>{_?.(),_=null},C=new f(d),Z=()=>{if(C.readyState===uh||C.readyState===dh)C.close(1000,"client closed");c?.removeEventListener("abort",R)},R=()=>{v=!0,j(),Z()};c?.addEventListener("abort",R,{once:!0}),C.onopen=()=>{if(c?.aborted){Z();return}let P={type:"subscribe",stream:"logs",...s>0?{backfill:s}:{},...u?{liveOnly:!0}:{},...i!==void 0?{minLevel:i}:{}};C.send(JSON.stringify(P))},C.onmessage=(P)=>{let h=fh(P.data);if(!h)return;switch(h.type){case"backfill":if(h.stream==="logs"){for(let N of h.entries)m.push(N);j()}break;case"log":m.push(h.entry),j();break;case"error":y=Error(`Observability gateway error: ${h.error}`),v=!0,j();break;case"ready":break;default:break}},C.onerror=()=>{y=Error(`Cannot connect to the observability gateway at ${p}.`),v=!0,j()},C.onclose=(P)=>{if(!v){if(P.code!==1000)y=Error(P.reason?`Observability WebSocket closed: ${P.reason}`:`Observability WebSocket closed with code ${P.code}.`);v=!0,j()}};try{while(!0){if(m.length>0){yield m.shift();continue}if(y)throw y;if(v)return;await new Promise((P)=>{_=P})}}finally{Z()}}function gh(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 Ih}from"node:http";import{randomUUID as Eh}from"node:crypto";import{spawn as kh}from"node:child_process";import{createInterface as Qt}from"node:readline/promises";import{stdin as Ge,stdout as Oe}from"node:process";function Xt(e,t,r={}){let n=`${t?"*":" "} ${e}`;return t?se(n,"\x1B[1m\x1B[36m",Mt(r)):n}function vh(e,t={}){let r=Mt(t),n=_h(e.stage),o=n==="Development",a=se("▌",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?se("dashboard","\x1B[4m",r):"dashboard",c=`${e.dashboardUrl}?project=${encodeURIComponent(e.project)}&stage=${encodeURIComponent(e.stage)}`,u=se(c,"\x1B[2m\x1B[4m",r);return[`${a} Syncing ${n}: ${se(e.project,"",r)}`,`${a} ${s} ${e.stage} (${i})`,`${a} ${se("└─","\x1B[2m",r)} ${u}`].join(`
|
|
61
|
+
`)}function yh(e,t={}){let r=(t.now??new Date).toTimeString().slice(0,8);return`${se("✔","\x1B[32m",Mt(t))} ${r} Resources ready! (${Th(e)})`}function bh(e,t={}){let r=Mt(t),n=se("▌","\x1B[32m",r),o=se("↑","\x1B[32m",r);return`${n} ${o} Synced ${e.length} env var(s) from .env.local: ${e.join(", ")}`}function wh(e,t={}){let r=Mt(t);return e.map((n)=>{let o=Sh(n.operation,r);if(n.operation==="rename"&&n.previousName)return` ${o} ${n.kind}:${n.previousName} -> ${n.name}`;return` ${o} ${n.kind}:${n.name}`})}function xh(e,t={}){return se(e,"\x1B[33m",Mt(t))}function Ms(e){console.error(yh(e))}function Rs(e){console.error(vh(e))}function As(e){console.error(bh(e))}function Fr(e){for(let t of wh(e))console.log(t)}function J(e){console.log(xh(e))}function Mt(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 se(e,t,r){return r?`${t}${e}\x1B[0m`:e}function _h(e){let t=e.trim().toLowerCase();if(t==="development")return"Development";if(t==="production")return"Production";return e.trim()}function Sh(e,t){if(e==="create")return`[${se("+","\x1B[32m",t)}]`;if(e==="rename")return`[${se("~","\x1B[33m",t)}]`;if(e==="update")return`[${se("*","\x1B[36m",t)}]`;return`[${se("-","\x1B[31m",t)}]`}function Th(e){if(e>=1000)return`${(e/1000).toFixed(2)}s`;return`${Math.max(e,0).toFixed(1)}ms`}var $h=180000,Mh=new Set(["--base-url","--dashboard-url","--stage","--from","--level","--limit","--project","--region","-n"]);function Rt(e){let t=[];for(let r=0;r<e.length;r+=1){let n=e[r];if(n===void 0)continue;if(Mh.has(n)){r+=1;continue}if(n.startsWith("-"))continue;t.push(n)}return t}function E(e,t){let r=e.indexOf(t);return r>=0?e[r+1]:void 0}function we(e,t){return e.includes(t)}function dt(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}async function ke(e){te();let t=await Cs();if(!t)throw Error("Run `broods login` first, or set BROODS_TOKEN and BROODS_BASE_URL.");return{...t,...e?{baseUrl:ut(e)}:{}}}async function Os(e){let t=Qt({input:Ge,output:Oe});try{let r=await t.question(`${e}: `);if(!r)throw Error(`${e} is required`);return r}finally{t.close()}}async function At(e,t){let r=Qt({input:Ge,output:Oe});try{let n=r.question(`${e}: `);if(t){if(Ge.isTTY&&Oe.isTTY)Oe.write("\x1B[90m");if(r.write(t),Ge.isTTY&&Oe.isTTY)Oe.write("\x1B[0m")}return(await n).trim()||t||""}finally{r.close()}}async function er(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(Xt(`${c+1}. ${r(i)}`,c===o))});let a=o===void 0?`Choose 1-${t.length}: `:`Choose 1-${t.length} [${o+1}]: `,s=Qt({input:Ge,output:Oe});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 Ps(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=Qt({input:Ge,output:Oe});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 Ln(e){if(!Ge.isTTY)return!1;let t=Qt({input:Ge,output:Oe});try{let r=(await t.question(`${e} [y/N] `)).trim().toLowerCase();return r==="y"||r==="yes"}finally{t.close()}}async function Fn(e){let t=Eh(),{code:r,close:n}=await Ah(t);try{let o=r.callbackUrl,a=`${ut(e)}/cli-auth/start?`+new URLSearchParams({callback:o,state:t});await Rh(a),Ph(a),console.log(`Opening ${a}`);let s=await Ch(r.promise,$h),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 Br(u),u}finally{n()}}async function Rh(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 Ah(e){return new Promise((t,r)=>{let n=Ih((c,u)=>{try{let d=new URL(c.url??"/","http://127.0.0.1"),p=d.searchParams.get("state"),f=d.searchParams.get("code"),m=d.searchParams.get("base_url");if(p!==e||!f){u.writeHead(400).end("Invalid broods login callback.");return}if(!m){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:f,baseUrl:ut(m)})}catch(d){a(d)}}),o,a,s=new Promise((c,u)=>{o=c,a=u}),i=Oh();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 Ch(e,t){let r,n=new Promise((o,a)=>{r=setTimeout(()=>a(Error(`Timed out waiting for browser login to complete.
|
|
61
62
|
Check the browser tab and the dashboard logs for an error. If the browser shows
|
|
62
63
|
404 on /cli-auth/start, deploy the dashboard build that includes CLI auth or pass
|
|
63
64
|
--dashboard-url for the environment you deployed. Other common causes are missing
|
|
64
|
-
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
|
|
65
|
-
|
|
66
|
-
Error message: ${Qt(t)}`,cause:t});this[Ws]=!0,this.text=e}static isInstance(e){return k.hasMarker(e,_i)}},Si="AI_LoadAPIKeyError",Ti=`vercel.ai.error.${Si}`,Zh=Symbol.for(Ti),Gs,Js,WS=class extends(Js=k,Gs=Zh,Js){constructor({message:e}){super({name:Si,message:e});this[Gs]=!0}static isInstance(e){return k.hasMarker(e,Ti)}},Ii="AI_LoadSettingError",Ei=`vercel.ai.error.${Ii}`,Lh=Symbol.for(Ei),Ks,Hs,VS=class extends(Hs=k,Ks=Lh,Hs){constructor({message:e}){super({name:Ii,message:e});this[Ks]=!0}static isInstance(e){return k.hasMarker(e,Ei)}},ki="AI_NoContentGeneratedError",$i=`vercel.ai.error.${ki}`,Fh=Symbol.for($i),Ys,Xs,GS=class extends(Xs=k,Ys=Fh,Xs){constructor({message:e="No content generated."}={}){super({name:ki,message:e});this[Ys]=!0}static isInstance(e){return k.hasMarker(e,$i)}},Mi="AI_NoSuchModelError",Ri=`vercel.ai.error.${Mi}`,Bh=Symbol.for(Ri),Qs,ei,JS=class extends(ei=k,Qs=Bh,ei){constructor({errorName:e=Mi,modelId:t,modelType:r,message:n=`No such ${r}: ${t}`}){super({name:e,message:n});this[Qs]=!0,this.modelId=t,this.modelType=r}static isInstance(e){return k.hasMarker(e,Ri)}},Ai="AI_NoSuchProviderReferenceError",Ci=`vercel.ai.error.${Ai}`,qh=Symbol.for(Ci),ti,ri,KS=class extends(ri=k,ti=qh,ri){constructor({provider:e,reference:t,message:r=`No provider reference found for provider '${e}'. Available providers: ${Object.keys(t).join(", ")}`}){super({name:Ai,message:r});this[ti]=!0,this.provider=e,this.reference=t}static isInstance(e){return k.hasMarker(e,Ci)}},Oi="AI_TooManyEmbeddingValuesForCallError",Pi=`vercel.ai.error.${Oi}`,Wh=Symbol.for(Pi),ni,oi,HS=class extends(oi=k,ni=Wh,oi){constructor(e){super({name:Oi,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[ni]=!0,this.provider=e.provider,this.modelId=e.modelId,this.maxEmbeddingsPerCall=e.maxEmbeddingsPerCall,this.values=e.values}static isInstance(e){return k.hasMarker(e,Pi)}},Ni="AI_TypeValidationError",zi=`vercel.ai.error.${Ni}`,Vh=Symbol.for(zi),ai,si,$e=class e extends(si=k,ai=Vh,si){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:Ni,message:`${o}: Value: ${JSON.stringify(t)}.
|
|
67
|
-
Error message: ${Qt(r)}`,cause:r});this[ai]=!0,this.value=t,this.context=n}static isInstance(t){return k.hasMarker(t,zi)}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})}},ji="AI_UnsupportedFunctionalityError",Di=`vercel.ai.error.${ji}`,Gh=Symbol.for(Di),ii,li,YS=class extends(li=k,ii=Gh,li){constructor({functionality:e,message:t=`'${e}' functionality not supported.`}){super({name:ji,message:t});this[ii]=!0,this.functionality=e}static isInstance(e){return k.hasMarker(e,Di)}};var Ui;function g(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 f=d[p];if(!(f in i))i[f]=u[f].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 pT=Symbol("zod_brand");class Oe extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class er extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`);this.name="ZodEncodeError"}}(Ui=globalThis).__zod_globalConfig??(Ui.__zod_globalConfig={});var Ct=globalThis.__zod_globalConfig;function xe(e){if(e)Object.assign(Ct,e);return Ct}var O={};Jh(O,{BIGINT_FORMAT_RANGES:()=>qi,Class:()=>Ji,NUMBER_FORMAT_RANGES:()=>Jn,aborted:()=>Ke,allowsEval:()=>Wn,assert:()=>Qh,assertEqual:()=>Kh,assertIs:()=>Yh,assertNever:()=>Xh,assertNotEqual:()=>Hh,assignProp:()=>Ge,base64ToUint8Array:()=>Vi,base64urlToUint8Array:()=>yg,cached:()=>Pt,captureStackTrace:()=>qr,cleanEnum:()=>vg,cleanRegex:()=>or,clone:()=>_e,cloneDef:()=>rg,createTransparentProxy:()=>lg,defineLazy:()=>A,esc:()=>Br,escapeRegex:()=>Ne,explicitlyAborted:()=>Kn,extend:()=>dg,finalizeIssue:()=>ye,floatSafeRemainder:()=>Bn,getElementAtPath:()=>ng,getEnumValues:()=>rr,getLengthableOrigin:()=>ar,getParsedType:()=>ig,getSizableOrigin:()=>Wi,hexToUint8Array:()=>wg,isObject:()=>ft,isPlainObject:()=>Je,issue:()=>Nt,joinValues:()=>eg,jsonStringifyReplacer:()=>Ot,merge:()=>fg,mergeDefs:()=>Pe,normalizeParams:()=>I,nullish:()=>nr,numKeys:()=>sg,objectClone:()=>tg,omit:()=>ug,optionalKeys:()=>Gn,parsedType:()=>gg,partial:()=>mg,pick:()=>cg,prefixIssues:()=>ze,primitiveTypes:()=>Fi,promiseAllObject:()=>og,propertyKeyTypes:()=>Vn,randomString:()=>ag,required:()=>hg,safeExtend:()=>pg,shallowClone:()=>Li,slugify:()=>qn,stringifyPrimitive:()=>Bi,uint8ArrayToBase64:()=>Gi,uint8ArrayToBase64url:()=>bg,uint8ArrayToHex:()=>xg,unwrapMessage:()=>tr});function Kh(e){return e}function Hh(e){return e}function Yh(e){}function Xh(e){throw Error("Unexpected value in exhaustive check")}function Qh(e){}function rr(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 eg(e,t="|"){return e.map((r)=>Bi(r)).join(t)}function Ot(e,t){if(typeof t==="bigint")return t.toString();return t}function Pt(e){return{get value(){{let r=e();return Object.defineProperty(this,"value",{value:r}),r}throw Error("cached value already set")}}}function nr(e){return e===null||e===void 0}function or(e){let t=e.startsWith("^")?1:0,r=e.endsWith("$")?e.length-1:e.length;return e.slice(t,r)}function Bn(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 Zi=Symbol("evaluating");function A(e,t,r){let n=void 0;Object.defineProperty(e,t,{get(){if(n===Zi)return;if(n===void 0)n=Zi,n=r();return n},set(o){Object.defineProperty(e,t,{value:o})},configurable:!0})}function tg(e){return Object.create(Object.getPrototypeOf(e),Object.getOwnPropertyDescriptors(e))}function Ge(e,t,r){Object.defineProperty(e,t,{value:r,writable:!0,enumerable:!0,configurable:!0})}function Pe(...e){let t={};for(let r of e){let n=Object.getOwnPropertyDescriptors(r);Object.assign(t,n)}return Object.defineProperties({},t)}function rg(e){return Pe(e._zod.def)}function ng(e,t){if(!t)return e;return t.reduce((r,n)=>r?.[n],e)}function og(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 ag(e=10){let r="";for(let n=0;n<e;n++)r+="abcdefghijklmnopqrstuvwxyz"[Math.floor(Math.random()*26)];return r}function Br(e){return JSON.stringify(e)}function qn(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}var qr="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function ft(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}var Wn=Pt(()=>{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 Je(e){if(ft(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(ft(r)===!1)return!1;if(Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)return!1;return!0}function Li(e){if(Je(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 sg(e){let t=0;for(let r in e)if(Object.prototype.hasOwnProperty.call(e,r))t++;return t}var ig=(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}`)}},Vn=new Set(["string","number","symbol"]),Fi=new Set(["string","number","bigint","boolean","symbol","undefined"]);function Ne(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function _e(e,t,r){let n=new e._zod.constr(t??e._zod.def);if(!t||r?.parent)n._zod.parent=e;return n}function I(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 lg(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 Bi(e){if(typeof e==="bigint")return e.toString()+"n";if(typeof e==="string")return`"${e}"`;return`${e}`}function Gn(e){return Object.keys(e).filter((t)=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}var Jn={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]},qi={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function cg(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=Pe(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 Ge(this,"shape",s),s},checks:[]});return _e(e,a)}function ug(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=Pe(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 Ge(this,"shape",s),s},checks:[]});return _e(e,a)}function dg(e,t){if(!Je(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=Pe(e._zod.def,{get shape(){let a={...e._zod.def.shape,...t};return Ge(this,"shape",a),a}});return _e(e,o)}function pg(e,t){if(!Je(t))throw Error("Invalid input to safeExtend: expected a plain object");let r=Pe(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return Ge(this,"shape",n),n}});return _e(e,r)}function fg(e,t){if(e._zod.def.checks?.length)throw Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");let r=Pe(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t._zod.def.shape};return Ge(this,"shape",n),n},get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]});return _e(e,r)}function mg(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=Pe(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 Ge(this,"shape",c),c},checks:[]});return _e(t,s)}function hg(e,t,r){let n=Pe(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 Ge(this,"shape",a),a}});return _e(t,n)}function Ke(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 Kn(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 ze(e,t){return t.map((r)=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(e),r})}function tr(e){return typeof e==="string"?e:e?.message}function ye(e,t,r){let n=e.message?e.message:tr(e.inst?._zod.def?.error?.(e))??tr(t?.error?.(e))??tr(r.customError?.(e))??tr(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 Wi(e){if(e instanceof Set)return"set";if(e instanceof Map)return"map";if(e instanceof File)return"file";return"unknown"}function ar(e){if(Array.isArray(e))return"array";if(typeof e==="string")return"string";return"unknown"}function gg(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 Nt(...e){let[t,r,n]=e;if(typeof t==="string")return{message:t,code:"custom",input:r,inst:n};return{...t}}function vg(e){return Object.entries(e).filter(([t,r])=>Number.isNaN(Number.parseInt(t,10))).map((t)=>t[1])}function Vi(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 Gi(e){let t="";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return btoa(t)}function yg(e){let t=e.replace(/-/g,"+").replace(/_/g,"/"),r="=".repeat((4-t.length%4)%4);return Vi(t+r)}function bg(e){return Gi(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function wg(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 xg(e){return Array.from(e).map((t)=>t.toString(16).padStart(2,"0")).join("")}class Ji{constructor(...e){}}var Ki=(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,Ot,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Wr=g("$ZodError",Ki),Hn=g("$ZodError",Ki,{Parent:Error});function Hi(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 Yi(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 Vr=(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 Oe;if(s.issues.length){let i=new(o?.Err??e)(s.issues.map((c)=>ye(c,a,xe())));throw qr(i,o?.callee),i}return s.value};var Gr=(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)=>ye(c,a,xe())));throw qr(i,o?.callee),i}return s.value};var sr=(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 Oe;return a.issues.length?{success:!1,error:new(e??Wr)(a.issues.map((s)=>ye(s,o,xe())))}:{success:!0,data:a.value}},Xi=sr(Hn),ir=(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)=>ye(s,o,xe())))}:{success:!0,data:a.value}},Qi=ir(Hn),el=(e)=>(t,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return Vr(e)(t,r,o)};var tl=(e)=>(t,r,n)=>Vr(e)(t,r,n);var rl=(e)=>async(t,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return Gr(e)(t,r,o)};var nl=(e)=>async(t,r,n)=>Gr(e)(t,r,n);var ol=(e)=>(t,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return sr(e)(t,r,o)};var al=(e)=>(t,r,n)=>sr(e)(t,r,n);var sl=(e)=>async(t,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return ir(e)(t,r,o)};var il=(e)=>async(t,r,n)=>ir(e)(t,r,n);var ll=/^[cC][0-9a-z]{6,}$/,cl=/^[0-9a-z]+$/,ul=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,dl=/^[0-9a-vA-V]{20}$/,pl=/^[A-Za-z0-9]{27}$/,fl=/^[a-zA-Z0-9_-]{21}$/,ml=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var hl=/^([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})$/,Yn=(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 gl=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var Sg="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function vl(){return new RegExp(Sg,"u")}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])$/,bl=/^(([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 wl=/^((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])$/,xl=/^(([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])$/,_l=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Xn=/^[A-Za-z0-9_-]*$/;var Sl=/^https?$/,Tl=/^\+[1-9]\d{6,14}$/,Il="(?:(?:\\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])))",El=new RegExp(`^${Il}$`);function kl(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 $l(e){return new RegExp(`^${kl(e)}$`)}function Ml(e){let t=kl({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(`^${Il}T(?:${n})$`)}var Rl=(e)=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)};var Al=/^-?\d+$/,Jr=/^-?\d+(?:\.\d+)?$/,Cl=/^(?:true|false)$/i,Ol=/^null$/i;var Pl=/^[^A-Z]*$/,Nl=/^[^a-z]*$/;var Q=g("$ZodCheck",(e,t)=>{var r;e._zod??(e._zod={}),e._zod.def=t,(r=e._zod).onattach??(r.onattach=[])}),zl={number:"number",bigint:"bigint",object:"date"},Qn=g("$ZodCheckLessThan",(e,t)=>{Q.init(e,t);let r=zl[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})}}),eo=g("$ZodCheckGreaterThan",(e,t)=>{Q.init(e,t);let r=zl[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})}}),jl=g("$ZodCheckMultipleOf",(e,t)=>{Q.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):Bn(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})}}),Dl=g("$ZodCheckNumberFormat",(e,t)=>{Q.init(e,t),t.format=t.format||"float64";let r=t.format?.includes("int"),n=r?"int":"number",[o,a]=Jn[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=Al}),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 Ul=g("$ZodCheckMaxLength",(e,t)=>{var r;Q.init(e,t),(r=e._zod.def).when??(r.when=(n)=>{let o=n.value;return!nr(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=ar(o);n.issues.push({origin:s,code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Zl=g("$ZodCheckMinLength",(e,t)=>{var r;Q.init(e,t),(r=e._zod.def).when??(r.when=(n)=>{let o=n.value;return!nr(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=ar(o);n.issues.push({origin:s,code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Ll=g("$ZodCheckLengthEquals",(e,t)=>{var r;Q.init(e,t),(r=e._zod.def).when??(r.when=(n)=>{let o=n.value;return!nr(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=ar(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})}}),lr=g("$ZodCheckStringFormat",(e,t)=>{var r,n;if(Q.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=()=>{})}),Fl=g("$ZodCheckRegex",(e,t)=>{lr.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})}}),Bl=g("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=Pl),lr.init(e,t)}),ql=g("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=Nl),lr.init(e,t)}),Wl=g("$ZodCheckIncludes",(e,t)=>{Q.init(e,t);let r=Ne(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})}}),Vl=g("$ZodCheckStartsWith",(e,t)=>{Q.init(e,t);let r=new RegExp(`^${Ne(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})}}),Gl=g("$ZodCheckEndsWith",(e,t)=>{Q.init(e,t);let r=new RegExp(`.*${Ne(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 Jl=g("$ZodCheckOverwrite",(e,t)=>{Q.init(e,t),e._zod.check=(r)=>{r.value=t.tx(r.value)}});class to{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(`
|
|
65
|
+
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 Oh(){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 Ph(e){let t=process.platform==="darwin"?"open":process.platform==="win32"?"cmd":"xdg-open",r=process.platform==="win32"?["/c","start",e]:[e];kh(t,r,{stdio:"ignore",detached:!0}).unref()}var di="vercel.ai.error",Nh=Symbol.for(di),Ns,zs,k=class e extends(zs=Error,Ns=Nh,zs){constructor({name:t,message:r,cause:n}){super(r);this[Ns]=!0,this.name=t,this.cause=n}static isInstance(t){return e.hasMarker(t,di)}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}},pi="AI_APICallError",fi=`vercel.ai.error.${pi}`,zh=Symbol.for(fi),js,Ds,GS=class extends(Ds=k,js=zh,Ds){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:pi,message:e,cause:s});this[js]=!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,fi)}},mi="AI_EmptyResponseBodyError",hi=`vercel.ai.error.${mi}`,jh=Symbol.for(hi),Us,Zs,JS=class extends(Zs=k,Us=jh,Zs){constructor({message:e="Empty response body"}={}){super({name:mi,message:e});this[Us]=!0}static isInstance(e){return k.hasMarker(e,hi)}};function tr(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 gi="AI_InvalidArgumentError",vi=`vercel.ai.error.${gi}`,Dh=Symbol.for(vi),Ls,Fs,yi=class extends(Fs=k,Ls=Dh,Fs){constructor({message:e,cause:t,argument:r}){super({name:gi,message:e,cause:t});this[Ls]=!0,this.argument=r}static isInstance(e){return k.hasMarker(e,vi)}},bi="AI_InvalidPromptError",wi=`vercel.ai.error.${bi}`,Uh=Symbol.for(wi),Bs,qs,KS=class extends(qs=k,Bs=Uh,qs){constructor({prompt:e,message:t,cause:r}){super({name:bi,message:`Invalid prompt: ${t}`,cause:r});this[Bs]=!0,this.prompt=e}static isInstance(e){return k.hasMarker(e,wi)}},xi="AI_InvalidResponseDataError",_i=`vercel.ai.error.${xi}`,Zh=Symbol.for(_i),Ws,Vs,HS=class extends(Vs=k,Ws=Zh,Vs){constructor({data:e,message:t=`Invalid response data: ${JSON.stringify(e)}.`}){super({name:xi,message:t});this[Ws]=!0,this.data=e}static isInstance(e){return k.hasMarker(e,_i)}},Si="AI_JSONParseError",Ti=`vercel.ai.error.${Si}`,Lh=Symbol.for(Ti),Gs,Js,Bn=class extends(Js=k,Gs=Lh,Js){constructor({text:e,cause:t}){super({name:Si,message:`JSON parsing failed: Text: ${e}.
|
|
66
|
+
Error message: ${tr(t)}`,cause:t});this[Gs]=!0,this.text=e}static isInstance(e){return k.hasMarker(e,Ti)}},Ii="AI_LoadAPIKeyError",Ei=`vercel.ai.error.${Ii}`,Fh=Symbol.for(Ei),Ks,Hs,YS=class extends(Hs=k,Ks=Fh,Hs){constructor({message:e}){super({name:Ii,message:e});this[Ks]=!0}static isInstance(e){return k.hasMarker(e,Ei)}},ki="AI_LoadSettingError",$i=`vercel.ai.error.${ki}`,Bh=Symbol.for($i),Ys,Xs,XS=class extends(Xs=k,Ys=Bh,Xs){constructor({message:e}){super({name:ki,message:e});this[Ys]=!0}static isInstance(e){return k.hasMarker(e,$i)}},Mi="AI_NoContentGeneratedError",Ri=`vercel.ai.error.${Mi}`,qh=Symbol.for(Ri),Qs,ei,QS=class extends(ei=k,Qs=qh,ei){constructor({message:e="No content generated."}={}){super({name:Mi,message:e});this[Qs]=!0}static isInstance(e){return k.hasMarker(e,Ri)}},Ai="AI_NoSuchModelError",Ci=`vercel.ai.error.${Ai}`,Wh=Symbol.for(Ci),ti,ri,eT=class extends(ri=k,ti=Wh,ri){constructor({errorName:e=Ai,modelId:t,modelType:r,message:n=`No such ${r}: ${t}`}){super({name:e,message:n});this[ti]=!0,this.modelId=t,this.modelType=r}static isInstance(e){return k.hasMarker(e,Ci)}},Oi="AI_NoSuchProviderReferenceError",Pi=`vercel.ai.error.${Oi}`,Vh=Symbol.for(Pi),ni,oi,tT=class extends(oi=k,ni=Vh,oi){constructor({provider:e,reference:t,message:r=`No provider reference found for provider '${e}'. Available providers: ${Object.keys(t).join(", ")}`}){super({name:Oi,message:r});this[ni]=!0,this.provider=e,this.reference=t}static isInstance(e){return k.hasMarker(e,Pi)}},Ni="AI_TooManyEmbeddingValuesForCallError",zi=`vercel.ai.error.${Ni}`,Gh=Symbol.for(zi),ai,si,rT=class extends(si=k,ai=Gh,si){constructor(e){super({name:Ni,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[ai]=!0,this.provider=e.provider,this.modelId=e.modelId,this.maxEmbeddingsPerCall=e.maxEmbeddingsPerCall,this.values=e.values}static isInstance(e){return k.hasMarker(e,zi)}},ji="AI_TypeValidationError",Di=`vercel.ai.error.${ji}`,Jh=Symbol.for(Di),ii,li,$e=class e extends(li=k,ii=Jh,li){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:ji,message:`${o}: Value: ${JSON.stringify(t)}.
|
|
67
|
+
Error message: ${tr(r)}`,cause:r});this[ii]=!0,this.value=t,this.context=n}static isInstance(t){return k.hasMarker(t,Di)}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})}},Ui="AI_UnsupportedFunctionalityError",Zi=`vercel.ai.error.${Ui}`,Kh=Symbol.for(Zi),ci,ui,nT=class extends(ui=k,ci=Kh,ui){constructor({functionality:e,message:t=`'${e}' functionality not supported.`}){super({name:Ui,message:t});this[ci]=!0,this.functionality=e}static isInstance(e){return k.hasMarker(e,Zi)}};var Li;function g(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 f=d[p];if(!(f in i))i[f]=u[f].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 yT=Symbol("zod_brand");class Pe extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class rr extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`);this.name="ZodEncodeError"}}(Li=globalThis).__zod_globalConfig??(Li.__zod_globalConfig={});var Ct=globalThis.__zod_globalConfig;function xe(e){if(e)Object.assign(Ct,e);return Ct}var O={};Hh(O,{BIGINT_FORMAT_RANGES:()=>Vi,Class:()=>Hi,NUMBER_FORMAT_RANGES:()=>Hn,aborted:()=>He,allowsEval:()=>Gn,assert:()=>tg,assertEqual:()=>Yh,assertIs:()=>Qh,assertNever:()=>eg,assertNotEqual:()=>Xh,assignProp:()=>Je,base64ToUint8Array:()=>Ji,base64urlToUint8Array:()=>wg,cached:()=>Pt,captureStackTrace:()=>Wr,cleanEnum:()=>bg,cleanRegex:()=>sr,clone:()=>_e,cloneDef:()=>og,createTransparentProxy:()=>ug,defineLazy:()=>A,esc:()=>qr,escapeRegex:()=>ze,explicitlyAborted:()=>Yn,extend:()=>fg,finalizeIssue:()=>ye,floatSafeRemainder:()=>Wn,getElementAtPath:()=>ag,getEnumValues:()=>or,getLengthableOrigin:()=>ir,getParsedType:()=>cg,getSizableOrigin:()=>Gi,hexToUint8Array:()=>_g,isObject:()=>pt,isPlainObject:()=>Ke,issue:()=>Nt,joinValues:()=>rg,jsonStringifyReplacer:()=>Ot,merge:()=>hg,mergeDefs:()=>Ne,normalizeParams:()=>I,nullish:()=>ar,numKeys:()=>lg,objectClone:()=>ng,omit:()=>pg,optionalKeys:()=>Kn,parsedType:()=>yg,partial:()=>gg,pick:()=>dg,prefixIssues:()=>je,primitiveTypes:()=>qi,promiseAllObject:()=>sg,propertyKeyTypes:()=>Jn,randomString:()=>ig,required:()=>vg,safeExtend:()=>mg,shallowClone:()=>Bi,slugify:()=>Vn,stringifyPrimitive:()=>Wi,uint8ArrayToBase64:()=>Ki,uint8ArrayToBase64url:()=>xg,uint8ArrayToHex:()=>Sg,unwrapMessage:()=>nr});function Yh(e){return e}function Xh(e){return e}function Qh(e){}function eg(e){throw Error("Unexpected value in exhaustive check")}function tg(e){}function or(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 rg(e,t="|"){return e.map((r)=>Wi(r)).join(t)}function Ot(e,t){if(typeof t==="bigint")return t.toString();return t}function Pt(e){return{get value(){{let r=e();return Object.defineProperty(this,"value",{value:r}),r}throw Error("cached value already set")}}}function ar(e){return e===null||e===void 0}function sr(e){let t=e.startsWith("^")?1:0,r=e.endsWith("$")?e.length-1:e.length;return e.slice(t,r)}function Wn(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 Fi=Symbol("evaluating");function A(e,t,r){let n=void 0;Object.defineProperty(e,t,{get(){if(n===Fi)return;if(n===void 0)n=Fi,n=r();return n},set(o){Object.defineProperty(e,t,{value:o})},configurable:!0})}function ng(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 Ne(...e){let t={};for(let r of e){let n=Object.getOwnPropertyDescriptors(r);Object.assign(t,n)}return Object.defineProperties({},t)}function og(e){return Ne(e._zod.def)}function ag(e,t){if(!t)return e;return t.reduce((r,n)=>r?.[n],e)}function sg(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 ig(e=10){let r="";for(let n=0;n<e;n++)r+="abcdefghijklmnopqrstuvwxyz"[Math.floor(Math.random()*26)];return r}function qr(e){return JSON.stringify(e)}function Vn(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}var Wr="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function pt(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}var Gn=Pt(()=>{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(pt(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(pt(r)===!1)return!1;if(Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)return!1;return!0}function Bi(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 lg(e){let t=0;for(let r in e)if(Object.prototype.hasOwnProperty.call(e,r))t++;return t}var cg=(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}`)}},Jn=new Set(["string","number","symbol"]),qi=new Set(["string","number","bigint","boolean","symbol","undefined"]);function ze(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function _e(e,t,r){let n=new e._zod.constr(t??e._zod.def);if(!t||r?.parent)n._zod.parent=e;return n}function I(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 ug(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 Wi(e){if(typeof e==="bigint")return e.toString()+"n";if(typeof e==="string")return`"${e}"`;return`${e}`}function Kn(e){return Object.keys(e).filter((t)=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}var Hn={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]},Vi={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function dg(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=Ne(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 _e(e,a)}function pg(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=Ne(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 _e(e,a)}function fg(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=Ne(e._zod.def,{get shape(){let a={...e._zod.def.shape,...t};return Je(this,"shape",a),a}});return _e(e,o)}function mg(e,t){if(!Ke(t))throw Error("Invalid input to safeExtend: expected a plain object");let r=Ne(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return Je(this,"shape",n),n}});return _e(e,r)}function hg(e,t){if(e._zod.def.checks?.length)throw Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");let r=Ne(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 _e(e,r)}function gg(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=Ne(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 _e(t,s)}function vg(e,t,r){let n=Ne(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 _e(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 Yn(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 je(e,t){return t.map((r)=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(e),r})}function nr(e){return typeof e==="string"?e:e?.message}function ye(e,t,r){let n=e.message?e.message:nr(e.inst?._zod.def?.error?.(e))??nr(t?.error?.(e))??nr(r.customError?.(e))??nr(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 Gi(e){if(e instanceof Set)return"set";if(e instanceof Map)return"map";if(e instanceof File)return"file";return"unknown"}function ir(e){if(Array.isArray(e))return"array";if(typeof e==="string")return"string";return"unknown"}function yg(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 Nt(...e){let[t,r,n]=e;if(typeof t==="string")return{message:t,code:"custom",input:r,inst:n};return{...t}}function bg(e){return Object.entries(e).filter(([t,r])=>Number.isNaN(Number.parseInt(t,10))).map((t)=>t[1])}function Ji(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 Ki(e){let t="";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return btoa(t)}function wg(e){let t=e.replace(/-/g,"+").replace(/_/g,"/"),r="=".repeat((4-t.length%4)%4);return Ji(t+r)}function xg(e){return Ki(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function _g(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 Sg(e){return Array.from(e).map((t)=>t.toString(16).padStart(2,"0")).join("")}class Hi{constructor(...e){}}var Yi=(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,Ot,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Vr=g("$ZodError",Yi),Xn=g("$ZodError",Yi,{Parent:Error});function Xi(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 Qi(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 Gr=(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 Pe;if(s.issues.length){let i=new(o?.Err??e)(s.issues.map((c)=>ye(c,a,xe())));throw Wr(i,o?.callee),i}return s.value};var Jr=(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)=>ye(c,a,xe())));throw Wr(i,o?.callee),i}return s.value};var lr=(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 Pe;return a.issues.length?{success:!1,error:new(e??Vr)(a.issues.map((s)=>ye(s,o,xe())))}:{success:!0,data:a.value}},el=lr(Xn),cr=(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)=>ye(s,o,xe())))}:{success:!0,data:a.value}},tl=cr(Xn),rl=(e)=>(t,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return Gr(e)(t,r,o)};var nl=(e)=>(t,r,n)=>Gr(e)(t,r,n);var ol=(e)=>async(t,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return Jr(e)(t,r,o)};var al=(e)=>async(t,r,n)=>Jr(e)(t,r,n);var sl=(e)=>(t,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return lr(e)(t,r,o)};var il=(e)=>(t,r,n)=>lr(e)(t,r,n);var ll=(e)=>async(t,r,n)=>{let o=n?{...n,direction:"backward"}:{direction:"backward"};return cr(e)(t,r,o)};var cl=(e)=>async(t,r,n)=>cr(e)(t,r,n);var ul=/^[cC][0-9a-z]{6,}$/,dl=/^[0-9a-z]+$/,pl=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,fl=/^[0-9a-vA-V]{20}$/,ml=/^[A-Za-z0-9]{27}$/,hl=/^[a-zA-Z0-9_-]{21}$/,gl=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var vl=/^([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})$/,Qn=(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 yl=/^(?!\.)(?!.*\.\.)([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 bl(){return new RegExp(Ig,"u")}var wl=/^(?:(?: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])$/,xl=/^(([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 _l=/^((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])$/,Sl=/^(([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}=))?$/,eo=/^[A-Za-z0-9_-]*$/;var Il=/^https?$/,El=/^\+[1-9]\d{6,14}$/,kl="(?:(?:\\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])))",$l=new RegExp(`^${kl}$`);function Ml(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 Rl(e){return new RegExp(`^${Ml(e)}$`)}function Al(e){let t=Ml({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(`^${kl}T(?:${n})$`)}var Cl=(e)=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)};var Ol=/^-?\d+$/,Kr=/^-?\d+(?:\.\d+)?$/,Pl=/^(?:true|false)$/i,Nl=/^null$/i;var zl=/^[^A-Z]*$/,jl=/^[^a-z]*$/;var Q=g("$ZodCheck",(e,t)=>{var r;e._zod??(e._zod={}),e._zod.def=t,(r=e._zod).onattach??(r.onattach=[])}),Dl={number:"number",bigint:"bigint",object:"date"},to=g("$ZodCheckLessThan",(e,t)=>{Q.init(e,t);let r=Dl[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})}}),ro=g("$ZodCheckGreaterThan",(e,t)=>{Q.init(e,t);let r=Dl[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})}}),Ul=g("$ZodCheckMultipleOf",(e,t)=>{Q.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):Wn(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=g("$ZodCheckNumberFormat",(e,t)=>{Q.init(e,t),t.format=t.format||"float64";let r=t.format?.includes("int"),n=r?"int":"number",[o,a]=Hn[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=Ol}),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 Ll=g("$ZodCheckMaxLength",(e,t)=>{var r;Q.init(e,t),(r=e._zod.def).when??(r.when=(n)=>{let o=n.value;return!ar(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=ir(o);n.issues.push({origin:s,code:"too_big",maximum:t.maximum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Fl=g("$ZodCheckMinLength",(e,t)=>{var r;Q.init(e,t),(r=e._zod.def).when??(r.when=(n)=>{let o=n.value;return!ar(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=ir(o);n.issues.push({origin:s,code:"too_small",minimum:t.minimum,inclusive:!0,input:o,inst:e,continue:!t.abort})}}),Bl=g("$ZodCheckLengthEquals",(e,t)=>{var r;Q.init(e,t),(r=e._zod.def).when??(r.when=(n)=>{let o=n.value;return!ar(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=ir(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})}}),ur=g("$ZodCheckStringFormat",(e,t)=>{var r,n;if(Q.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=()=>{})}),ql=g("$ZodCheckRegex",(e,t)=>{ur.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})}}),Wl=g("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=zl),ur.init(e,t)}),Vl=g("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=jl),ur.init(e,t)}),Gl=g("$ZodCheckIncludes",(e,t)=>{Q.init(e,t);let r=ze(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})}}),Jl=g("$ZodCheckStartsWith",(e,t)=>{Q.init(e,t);let r=new RegExp(`^${ze(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})}}),Kl=g("$ZodCheckEndsWith",(e,t)=>{Q.init(e,t);let r=new RegExp(`.*${ze(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 Hl=g("$ZodCheckOverwrite",(e,t)=>{Q.init(e,t),e._zod.check=(r)=>{r.value=t.tx(r.value)}});class no{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(`
|
|
68
68
|
`).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(`
|
|
69
|
-
`))}}var Hl={major:4,minor:4,patch:3};var F=g("$ZodType",(e,t)=>{var r;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Hl;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=Ke(s),d;for(let p of i){if(p._zod.def.when){if(Kn(s))continue;if(!p._zod.def.when(s))continue}else if(u)continue;let f=s.issues.length,m=p._zod.check(s);if(m instanceof Promise&&c?.async===!1)throw new Oe;if(d||m instanceof Promise)d=(d??Promise.resolve()).then(async()=>{if(await m,s.issues.length===f)return;if(!u)u=Ke(s,f)});else{if(s.issues.length===f)continue;if(!u)u=Ke(s,f)}}if(d)return d.then(()=>s);return s},a=(s,i,c)=>{if(Ke(s))return s.aborted=!0,s;let u=o(i,n,c);if(u instanceof Promise){if(c.async===!1)throw new Oe;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 Oe;return c.then((u)=>o(u,n,i))}return o(c,n,i)}}A(e,"~standard",()=>({validate:(o)=>{try{let a=Xi(e,o);return a.success?{value:a.data}:{issues:a.error?.issues}}catch(a){return Qi(e,o).then((s)=>s.success?{value:s.data}:{issues:s.error?.issues})}},vendor:"zod",version:1}))}),Xr=g("$ZodString",(e,t)=>{F.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??Rl(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=g("$ZodStringFormat",(e,t)=>{lr.init(e,t),Xr.init(e,t)}),ac=g("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=hl),B.init(e,t)}),sc=g("$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=Yn(n))}else t.pattern??(t.pattern=Yn());B.init(e,t)}),ic=g("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=gl),B.init(e,t)}),lc=g("$ZodURL",(e,t)=>{B.init(e,t),e._zod.check=(r)=>{try{let n=r.value.trim();if(!t.normalize&&t.protocol?.source===Sl.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})}}}),cc=g("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=vl()),B.init(e,t)}),uc=g("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=fl),B.init(e,t)}),dc=g("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=ll),B.init(e,t)}),pc=g("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=cl),B.init(e,t)}),fc=g("$ZodULID",(e,t)=>{t.pattern??(t.pattern=ul),B.init(e,t)}),mc=g("$ZodXID",(e,t)=>{t.pattern??(t.pattern=dl),B.init(e,t)}),hc=g("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=pl),B.init(e,t)}),gc=g("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=Ml(t)),B.init(e,t)}),vc=g("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=El),B.init(e,t)}),yc=g("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=$l(t)),B.init(e,t)}),bc=g("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=ml),B.init(e,t)}),wc=g("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=yl),B.init(e,t),e._zod.bag.format="ipv4"}),xc=g("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=bl),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 _c=g("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=wl),B.init(e,t)}),Sc=g("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=xl),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 Tc(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 Ic=g("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=_l),B.init(e,t),e._zod.bag.contentEncoding="base64",e._zod.check=(r)=>{if(Tc(r.value))return;r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:e,continue:!t.abort})}});function Tg(e){if(!Xn.test(e))return!1;let t=e.replace(/[-_]/g,(n)=>n==="-"?"+":"/"),r=t.padEnd(Math.ceil(t.length/4)*4,"=");return Tc(r)}var Ec=g("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=Xn),B.init(e,t),e._zod.bag.contentEncoding="base64url",e._zod.check=(r)=>{if(Tg(r.value))return;r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:e,continue:!t.abort})}}),kc=g("$ZodE164",(e,t)=>{t.pattern??(t.pattern=Tl),B.init(e,t)});function Ig(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 $c=g("$ZodJWT",(e,t)=>{B.init(e,t),e._zod.check=(r)=>{if(Ig(r.value,t.alg))return;r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:e,continue:!t.abort})}});var no=g("$ZodNumber",(e,t)=>{F.init(e,t),e._zod.pattern=e._zod.bag.pattern??Jr,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}}),Mc=g("$ZodNumberFormat",(e,t)=>{Dl.init(e,t),no.init(e,t)}),Rc=g("$ZodBoolean",(e,t)=>{F.init(e,t),e._zod.pattern=Cl,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 Ac=g("$ZodNull",(e,t)=>{F.init(e,t),e._zod.pattern=Ol,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 Cc=g("$ZodUnknown",(e,t)=>{F.init(e,t),e._zod.parse=(r)=>r}),Oc=g("$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 Yl(e,t,r){if(e.issues.length)t.issues.push(...ze(r,e.issues));t.value[r]=e.value}var Pc=g("$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)=>Yl(u,r,s)));else Yl(c,r,s)}if(a.length)return Promise.all(a).then(()=>r);return r}});function Yr(e,t,r,n,o,a){let s=r in n;if(e.issues.length){if(o&&a&&!s)return;t.issues.push(...ze(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 Nc(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=Gn(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(r)}}function zc(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 f in t){if(f==="__proto__")continue;if(i.has(f))continue;if(u==="never"){s.push(f);continue}let m=c.run({value:t[f],issues:[]},n);if(m instanceof Promise)e.push(m.then((y)=>Yr(y,r,f,t,d,p)));else Yr(m,r,f,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 Eg=g("$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=Pt(()=>Nc(t));A(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=ft,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 f of s.keys){let m=p[f],y=m._zod.optin==="optional",v=m._zod.optout==="optional",_=m._zod.run({value:u[f],issues:[]},c);if(_ instanceof Promise)d.push(_.then((j)=>Yr(j,i,f,u,y,v)));else Yr(_,i,f,u,y,v)}if(!a)return d.length?Promise.all(d).then(()=>i):i;return zc(d,u,i,c,n.value,e)}}),jc=g("$ZodObjectJIT",(e,t)=>{Eg.init(e,t);let r=e._zod.parse,n=Pt(()=>Nc(t)),o=(f)=>{let m=new to(["shape","payload","ctx"]),y=n.value,v=(Z)=>{let R=Br(Z);return`shape[${R}]._zod.run({ value: input[${R}], issues: [] }, ctx)`};m.write("const input = payload.value;");let _=Object.create(null),j=0;for(let Z of y.keys)_[Z]=`key_${j++}`;m.write("const newResult = {};");for(let Z of y.keys){let R=_[Z],P=Br(Z),h=f[Z],N=h?._zod?.optin==="optional",V=h?._zod?.optout==="optional";if(m.write(`const ${R} = ${v(Z)};`),N&&V)m.write(`
|
|
69
|
+
`))}}var Xl={major:4,minor:4,patch:3};var F=g("$ZodType",(e,t)=>{var r;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Xl;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(Yn(s))continue;if(!p._zod.def.when(s))continue}else if(u)continue;let f=s.issues.length,m=p._zod.check(s);if(m instanceof Promise&&c?.async===!1)throw new Pe;if(d||m instanceof Promise)d=(d??Promise.resolve()).then(async()=>{if(await m,s.issues.length===f)return;if(!u)u=He(s,f)});else{if(s.issues.length===f)continue;if(!u)u=He(s,f)}}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 Pe;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 Pe;return c.then((u)=>o(u,n,i))}return o(c,n,i)}}A(e,"~standard",()=>({validate:(o)=>{try{let a=el(e,o);return a.success?{value:a.data}:{issues:a.error?.issues}}catch(a){return tl(e,o).then((s)=>s.success?{value:s.data}:{issues:s.error?.issues})}},vendor:"zod",version:1}))}),Qr=g("$ZodString",(e,t)=>{F.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??Cl(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=g("$ZodStringFormat",(e,t)=>{ur.init(e,t),Qr.init(e,t)}),ic=g("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=vl),B.init(e,t)}),lc=g("$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=Qn(n))}else t.pattern??(t.pattern=Qn());B.init(e,t)}),cc=g("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=yl),B.init(e,t)}),uc=g("$ZodURL",(e,t)=>{B.init(e,t),e._zod.check=(r)=>{try{let n=r.value.trim();if(!t.normalize&&t.protocol?.source===Il.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})}}}),dc=g("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=bl()),B.init(e,t)}),pc=g("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=hl),B.init(e,t)}),fc=g("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=ul),B.init(e,t)}),mc=g("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=dl),B.init(e,t)}),hc=g("$ZodULID",(e,t)=>{t.pattern??(t.pattern=pl),B.init(e,t)}),gc=g("$ZodXID",(e,t)=>{t.pattern??(t.pattern=fl),B.init(e,t)}),vc=g("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=ml),B.init(e,t)}),yc=g("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=Al(t)),B.init(e,t)}),bc=g("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=$l),B.init(e,t)}),wc=g("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=Rl(t)),B.init(e,t)}),xc=g("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=gl),B.init(e,t)}),_c=g("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=wl),B.init(e,t),e._zod.bag.format="ipv4"}),Sc=g("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=xl),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 Tc=g("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=_l),B.init(e,t)}),Ic=g("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=Sl),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 Ec(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 kc=g("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=Tl),B.init(e,t),e._zod.bag.contentEncoding="base64",e._zod.check=(r)=>{if(Ec(r.value))return;r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:e,continue:!t.abort})}});function Eg(e){if(!eo.test(e))return!1;let t=e.replace(/[-_]/g,(n)=>n==="-"?"+":"/"),r=t.padEnd(Math.ceil(t.length/4)*4,"=");return Ec(r)}var $c=g("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=eo),B.init(e,t),e._zod.bag.contentEncoding="base64url",e._zod.check=(r)=>{if(Eg(r.value))return;r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:e,continue:!t.abort})}}),Mc=g("$ZodE164",(e,t)=>{t.pattern??(t.pattern=El),B.init(e,t)});function kg(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 Rc=g("$ZodJWT",(e,t)=>{B.init(e,t),e._zod.check=(r)=>{if(kg(r.value,t.alg))return;r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:e,continue:!t.abort})}});var ao=g("$ZodNumber",(e,t)=>{F.init(e,t),e._zod.pattern=e._zod.bag.pattern??Kr,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}}),Ac=g("$ZodNumberFormat",(e,t)=>{Zl.init(e,t),ao.init(e,t)}),Cc=g("$ZodBoolean",(e,t)=>{F.init(e,t),e._zod.pattern=Pl,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 Oc=g("$ZodNull",(e,t)=>{F.init(e,t),e._zod.pattern=Nl,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 Pc=g("$ZodUnknown",(e,t)=>{F.init(e,t),e._zod.parse=(r)=>r}),Nc=g("$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 Ql(e,t,r){if(e.issues.length)t.issues.push(...je(r,e.issues));t.value[r]=e.value}var zc=g("$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)=>Ql(u,r,s)));else Ql(c,r,s)}if(a.length)return Promise.all(a).then(()=>r);return r}});function Xr(e,t,r,n,o,a){let s=r in n;if(e.issues.length){if(o&&a&&!s)return;t.issues.push(...je(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 jc(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=Kn(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(r)}}function Dc(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 f in t){if(f==="__proto__")continue;if(i.has(f))continue;if(u==="never"){s.push(f);continue}let m=c.run({value:t[f],issues:[]},n);if(m instanceof Promise)e.push(m.then((y)=>Xr(y,r,f,t,d,p)));else Xr(m,r,f,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 $g=g("$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=Pt(()=>jc(t));A(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=pt,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 f of s.keys){let m=p[f],y=m._zod.optin==="optional",v=m._zod.optout==="optional",_=m._zod.run({value:u[f],issues:[]},c);if(_ instanceof Promise)d.push(_.then((j)=>Xr(j,i,f,u,y,v)));else Xr(_,i,f,u,y,v)}if(!a)return d.length?Promise.all(d).then(()=>i):i;return Dc(d,u,i,c,n.value,e)}}),Uc=g("$ZodObjectJIT",(e,t)=>{$g.init(e,t);let r=e._zod.parse,n=Pt(()=>jc(t)),o=(f)=>{let m=new no(["shape","payload","ctx"]),y=n.value,v=(Z)=>{let R=qr(Z);return`shape[${R}]._zod.run({ value: input[${R}], issues: [] }, ctx)`};m.write("const input = payload.value;");let _=Object.create(null),j=0;for(let Z of y.keys)_[Z]=`key_${j++}`;m.write("const newResult = {};");for(let Z of y.keys){let R=_[Z],P=qr(Z),h=f[Z],N=h?._zod?.optin==="optional",V=h?._zod?.optout==="optional";if(m.write(`const ${R} = ${v(Z)};`),N&&V)m.write(`
|
|
70
70
|
if (${R}.issues.length) {
|
|
71
71
|
if (${P} in input) {
|
|
72
72
|
payload.issues = payload.issues.concat(${R}.issues.map(iss => ({
|
|
@@ -125,39 +125,39 @@ Error message: ${Qt(r)}`,cause:r});this[ai]=!0,this.value=t,this.context=n}stati
|
|
|
125
125
|
newResult[${P}] = ${R}.value;
|
|
126
126
|
}
|
|
127
127
|
|
|
128
|
-
`)}m.write("payload.value = newResult;"),m.write("return payload;");let C=m.compile();return(Z,R)=>C(f,Z,R)},a,s=ft,i=!Ct.jitless,u=i&&Wn.value,d=t.catchall,p;e._zod.parse=(f,m)=>{p??(p=n.value);let y=f.value;if(!s(y))return f.issues.push({expected:"object",code:"invalid_type",input:y,inst:e}),f;if(i&&u&&m?.async===!1&&m.jitless!==!0){if(!a)a=o(t.shape);if(f=a(f,m),!d)return f;return zc([],y,f,m,p,e)}return r(f,m)}});function Xl(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)=>!Ke(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)=>ye(s,n,xe())))}),t}var oo=g("$ZodUnion",(e,t)=>{F.init(e,t),A(e._zod,"optin",()=>t.options.some((n)=>n._zod.optin==="optional")?"optional":void 0),A(e._zod,"optout",()=>t.options.some((n)=>n._zod.optout==="optional")?"optional":void 0),A(e._zod,"values",()=>{if(t.options.every((n)=>n._zod.values))return new Set(t.options.flatMap((n)=>Array.from(n._zod.values)));return}),A(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)=>or(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 Xl(s,n,e,o);return Promise.all(s).then((i)=>Xl(i,n,e,o))}});var Dc=g("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,oo.init(e,t);let r=e._zod.parse;A(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=Pt(()=>{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(!ft(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}}),Uc=g("$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])=>Ql(r,c,u));return Ql(r,a,s)}});function ro(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(Je(e)&&Je(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=ro(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=ro(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 Ql(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(Ke(e))return e;let s=ro(t.value,r.value);if(!s.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(s.mergeErrorPath)}`);return e.value=s.data,e}var Zc=g("$ZodRecord",(e,t)=>{F.init(e,t),e._zod.parse=(r,n)=>{let o=r.value;if(!Je(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((m)=>ye(m,n,xe())),input:u,path:[u],inst:e});continue}let p=d.value,f=t.valueType._zod.run({value:o[u],issues:[]},n);if(f instanceof Promise)a.push(f.then((m)=>{if(m.issues.length)r.issues.push(...ze(u,m.issues));r.value[p]=m.value}));else{if(f.issues.length)r.issues.push(...ze(u,f.issues));r.value[p]=f.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"&&Jr.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)=>ye(p,n,xe())),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(...ze(i,p.issues));r.value[c.value]=p.value}));else{if(d.issues.length)r.issues.push(...ze(i,d.issues));r.value[c.value]=d.value}}}if(a.length)return Promise.all(a).then(()=>r);return r}});var Lc=g("$ZodEnum",(e,t)=>{F.init(e,t);let r=rr(t.entries),n=new Set(r);e._zod.values=n,e._zod.pattern=new RegExp(`^(${r.filter((o)=>Vn.has(typeof o)).map((o)=>typeof o==="string"?Ne(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}}),Fc=g("$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"?Ne(n):n?Ne(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 Bc=g("$ZodTransform",(e,t)=>{F.init(e,t),e._zod.optin="optional",e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new er(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 Oe;return r.value=o,r.fallback=!0,r}});function ec(e,t){if(t===void 0&&(e.issues.length||e.fallback))return{issues:[],value:void 0};return e}var ao=g("$ZodOptional",(e,t)=>{F.init(e,t),e._zod.optin="optional",e._zod.optout="optional",A(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),A(e._zod,"pattern",()=>{let r=t.innerType._zod.pattern;return r?new RegExp(`^(${or(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)=>ec(s,o));return ec(a,o)}if(r.value===void 0)return r;return t.innerType._zod.run(r,n)}}),qc=g("$ZodExactOptional",(e,t)=>{ao.init(e,t),A(e._zod,"values",()=>t.innerType._zod.values),A(e._zod,"pattern",()=>t.innerType._zod.pattern),e._zod.parse=(r,n)=>t.innerType._zod.run(r,n)}),Wc=g("$ZodNullable",(e,t)=>{F.init(e,t),A(e._zod,"optin",()=>t.innerType._zod.optin),A(e._zod,"optout",()=>t.innerType._zod.optout),A(e._zod,"pattern",()=>{let r=t.innerType._zod.pattern;return r?new RegExp(`^(${or(r.source)}|null)$`):void 0}),A(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)}}),Vc=g("$ZodDefault",(e,t)=>{F.init(e,t),e._zod.optin="optional",A(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)=>tc(a,t));return tc(o,t)}});function tc(e,t){if(e.value===void 0)e.value=t.defaultValue;return e}var Gc=g("$ZodPrefault",(e,t)=>{F.init(e,t),e._zod.optin="optional",A(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)}}),Jc=g("$ZodNonOptional",(e,t)=>{F.init(e,t),A(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)=>rc(a,e));return rc(o,e)}});function rc(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 Kc=g("$ZodCatch",(e,t)=>{F.init(e,t),e._zod.optin="optional",A(e._zod,"optout",()=>t.innerType._zod.optout),A(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)=>ye(s,n,xe()))},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)=>ye(a,n,xe()))},input:r.value}),r.issues=[],r.fallback=!0;return r}});var Hc=g("$ZodPipe",(e,t)=>{F.init(e,t),A(e._zod,"values",()=>t.in._zod.values),A(e._zod,"optin",()=>t.in._zod.optin),A(e._zod,"optout",()=>t.out._zod.optout),A(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)=>Hr(s,t.in,n));return Hr(a,t.in,n)}let o=t.in._zod.run(r,n);if(o instanceof Promise)return o.then((a)=>Hr(a,t.out,n));return Hr(o,t.out,n)}});function Hr(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 Yc=g("$ZodReadonly",(e,t)=>{F.init(e,t),A(e._zod,"propValues",()=>t.innerType._zod.propValues),A(e._zod,"values",()=>t.innerType._zod.values),A(e._zod,"optin",()=>t.innerType?._zod?.optin),A(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(nc);return nc(o)}});function nc(e){return e.value=Object.freeze(e.value),e}var Xc=g("$ZodLazy",(e,t)=>{F.init(e,t),A(e._zod,"innerType",()=>{let r=t;if(!r._cachedInner)r._cachedInner=t.getter();return r._cachedInner}),A(e._zod,"pattern",()=>e._zod.innerType?._zod?.pattern),A(e._zod,"propValues",()=>e._zod.innerType?._zod?.propValues),A(e._zod,"optin",()=>e._zod.innerType?._zod?.optin??void 0),A(e._zod,"optout",()=>e._zod.innerType?._zod?.optout??void 0),e._zod.parse=(r,n)=>e._zod.innerType._zod.run(r,n)}),Qc=g("$ZodCustom",(e,t)=>{Q.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)=>oc(a,r,n,e));oc(o,r,n,e);return}});function oc(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(Nt(o))}}var eu,MT=Symbol("ZodOutput"),RT=Symbol("ZodInput");class tu{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 kg(){return new tu}(eu=globalThis).__zod_globalRegistry??(eu.__zod_globalRegistry=kg());var mt=globalThis.__zod_globalRegistry;function ru(e,t){return new e({type:"string",...I(t)})}function nu(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...I(t)})}function so(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...I(t)})}function ou(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...I(t)})}function au(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...I(t)})}function su(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...I(t)})}function iu(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...I(t)})}function lu(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...I(t)})}function cu(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...I(t)})}function uu(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...I(t)})}function du(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...I(t)})}function pu(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...I(t)})}function fu(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...I(t)})}function mu(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...I(t)})}function hu(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...I(t)})}function gu(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...I(t)})}function vu(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...I(t)})}function yu(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...I(t)})}function bu(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...I(t)})}function wu(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...I(t)})}function xu(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...I(t)})}function _u(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...I(t)})}function Su(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...I(t)})}function Tu(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...I(t)})}function Iu(e,t){return new e({type:"string",format:"date",check:"string_format",...I(t)})}function Eu(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...I(t)})}function ku(e,t){return new e({type:"string",format:"duration",check:"string_format",...I(t)})}function $u(e,t){return new e({type:"number",checks:[],...I(t)})}function Mu(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...I(t)})}function Ru(e,t){return new e({type:"boolean",...I(t)})}function Au(e,t){return new e({type:"null",...I(t)})}function Cu(e){return new e({type:"unknown"})}function Ou(e,t){return new e({type:"never",...I(t)})}function Qr(e,t){return new Qn({check:"less_than",...I(t),value:e,inclusive:!1})}function cr(e,t){return new Qn({check:"less_than",...I(t),value:e,inclusive:!0})}function en(e,t){return new eo({check:"greater_than",...I(t),value:e,inclusive:!1})}function ur(e,t){return new eo({check:"greater_than",...I(t),value:e,inclusive:!0})}function tn(e,t){return new jl({check:"multiple_of",...I(t),value:e})}function rn(e,t){return new Ul({check:"max_length",...I(t),maximum:e})}function zt(e,t){return new Zl({check:"min_length",...I(t),minimum:e})}function nn(e,t){return new Ll({check:"length_equals",...I(t),length:e})}function io(e,t){return new Fl({check:"string_format",format:"regex",...I(t),pattern:e})}function lo(e){return new Bl({check:"string_format",format:"lowercase",...I(e)})}function co(e){return new ql({check:"string_format",format:"uppercase",...I(e)})}function uo(e,t){return new Wl({check:"string_format",format:"includes",...I(t),includes:e})}function po(e,t){return new Vl({check:"string_format",format:"starts_with",...I(t),prefix:e})}function fo(e,t){return new Gl({check:"string_format",format:"ends_with",...I(t),suffix:e})}function He(e){return new Jl({check:"overwrite",tx:e})}function mo(e){return He((t)=>t.normalize(e))}function ho(){return He((e)=>e.trim())}function go(){return He((e)=>e.toLowerCase())}function vo(){return He((e)=>e.toUpperCase())}function yo(){return He((e)=>qn(e))}function Pu(e,t,r){return new e({type:"array",element:t,...I(r)})}function Nu(e,t,r){let n=I(r);return n.abort??(n.abort=!0),new e({type:"custom",check:"custom",fn:t,...n})}function zu(e,t,r){return new e({type:"custom",check:"custom",fn:t,...I(r)})}function ju(e,t){let r=$g((n)=>(n.addIssue=(o)=>{if(typeof o==="string")n.issues.push(Nt(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(Nt(a))}},e(n.value,n)),t);return r}function $g(e,t){let r=new Q({check:"custom",...I(t)});return r._zod.check=e,r}function pr(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??mt,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 f=s.schema,m=t.processors[o.type];if(!m)throw Error(`[toJSONSchema]: Non-representable type encountered: ${o.type}`);m(e,t,f,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"&&re(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 fr(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,f=e.external.uri??((y)=>y);if(p)return{ref:f(p)};let m=s[1].defId??s[1].schema.id??`schema${e.counter++}`;return s[1].defId=m,{defId:m,ref:`${f("__shared")}#/${i}/${m}`}}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>
|
|
128
|
+
`)}m.write("payload.value = newResult;"),m.write("return payload;");let C=m.compile();return(Z,R)=>C(f,Z,R)},a,s=pt,i=!Ct.jitless,u=i&&Gn.value,d=t.catchall,p;e._zod.parse=(f,m)=>{p??(p=n.value);let y=f.value;if(!s(y))return f.issues.push({expected:"object",code:"invalid_type",input:y,inst:e}),f;if(i&&u&&m?.async===!1&&m.jitless!==!0){if(!a)a=o(t.shape);if(f=a(f,m),!d)return f;return Dc([],y,f,m,p,e)}return r(f,m)}});function ec(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)=>ye(s,n,xe())))}),t}var so=g("$ZodUnion",(e,t)=>{F.init(e,t),A(e._zod,"optin",()=>t.options.some((n)=>n._zod.optin==="optional")?"optional":void 0),A(e._zod,"optout",()=>t.options.some((n)=>n._zod.optout==="optional")?"optional":void 0),A(e._zod,"values",()=>{if(t.options.every((n)=>n._zod.values))return new Set(t.options.flatMap((n)=>Array.from(n._zod.values)));return}),A(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)=>sr(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 ec(s,n,e,o);return Promise.all(s).then((i)=>ec(i,n,e,o))}});var Zc=g("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,so.init(e,t);let r=e._zod.parse;A(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=Pt(()=>{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(!pt(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}}),Lc=g("$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])=>tc(r,c,u));return tc(r,a,s)}});function oo(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=oo(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=oo(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 tc(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=oo(t.value,r.value);if(!s.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(s.mergeErrorPath)}`);return e.value=s.data,e}var Fc=g("$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((m)=>ye(m,n,xe())),input:u,path:[u],inst:e});continue}let p=d.value,f=t.valueType._zod.run({value:o[u],issues:[]},n);if(f instanceof Promise)a.push(f.then((m)=>{if(m.issues.length)r.issues.push(...je(u,m.issues));r.value[p]=m.value}));else{if(f.issues.length)r.issues.push(...je(u,f.issues));r.value[p]=f.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"&&Kr.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)=>ye(p,n,xe())),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(...je(i,p.issues));r.value[c.value]=p.value}));else{if(d.issues.length)r.issues.push(...je(i,d.issues));r.value[c.value]=d.value}}}if(a.length)return Promise.all(a).then(()=>r);return r}});var Bc=g("$ZodEnum",(e,t)=>{F.init(e,t);let r=or(t.entries),n=new Set(r);e._zod.values=n,e._zod.pattern=new RegExp(`^(${r.filter((o)=>Jn.has(typeof o)).map((o)=>typeof o==="string"?ze(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}}),qc=g("$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"?ze(n):n?ze(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 Wc=g("$ZodTransform",(e,t)=>{F.init(e,t),e._zod.optin="optional",e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new rr(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 Pe;return r.value=o,r.fallback=!0,r}});function rc(e,t){if(t===void 0&&(e.issues.length||e.fallback))return{issues:[],value:void 0};return e}var io=g("$ZodOptional",(e,t)=>{F.init(e,t),e._zod.optin="optional",e._zod.optout="optional",A(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),A(e._zod,"pattern",()=>{let r=t.innerType._zod.pattern;return r?new RegExp(`^(${sr(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)=>rc(s,o));return rc(a,o)}if(r.value===void 0)return r;return t.innerType._zod.run(r,n)}}),Vc=g("$ZodExactOptional",(e,t)=>{io.init(e,t),A(e._zod,"values",()=>t.innerType._zod.values),A(e._zod,"pattern",()=>t.innerType._zod.pattern),e._zod.parse=(r,n)=>t.innerType._zod.run(r,n)}),Gc=g("$ZodNullable",(e,t)=>{F.init(e,t),A(e._zod,"optin",()=>t.innerType._zod.optin),A(e._zod,"optout",()=>t.innerType._zod.optout),A(e._zod,"pattern",()=>{let r=t.innerType._zod.pattern;return r?new RegExp(`^(${sr(r.source)}|null)$`):void 0}),A(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)}}),Jc=g("$ZodDefault",(e,t)=>{F.init(e,t),e._zod.optin="optional",A(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)=>nc(a,t));return nc(o,t)}});function nc(e,t){if(e.value===void 0)e.value=t.defaultValue;return e}var Kc=g("$ZodPrefault",(e,t)=>{F.init(e,t),e._zod.optin="optional",A(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)}}),Hc=g("$ZodNonOptional",(e,t)=>{F.init(e,t),A(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)=>oc(a,e));return oc(o,e)}});function oc(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 Yc=g("$ZodCatch",(e,t)=>{F.init(e,t),e._zod.optin="optional",A(e._zod,"optout",()=>t.innerType._zod.optout),A(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)=>ye(s,n,xe()))},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)=>ye(a,n,xe()))},input:r.value}),r.issues=[],r.fallback=!0;return r}});var Xc=g("$ZodPipe",(e,t)=>{F.init(e,t),A(e._zod,"values",()=>t.in._zod.values),A(e._zod,"optin",()=>t.in._zod.optin),A(e._zod,"optout",()=>t.out._zod.optout),A(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)=>Yr(s,t.in,n));return Yr(a,t.in,n)}let o=t.in._zod.run(r,n);if(o instanceof Promise)return o.then((a)=>Yr(a,t.out,n));return Yr(o,t.out,n)}});function Yr(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 Qc=g("$ZodReadonly",(e,t)=>{F.init(e,t),A(e._zod,"propValues",()=>t.innerType._zod.propValues),A(e._zod,"values",()=>t.innerType._zod.values),A(e._zod,"optin",()=>t.innerType?._zod?.optin),A(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(ac);return ac(o)}});function ac(e){return e.value=Object.freeze(e.value),e}var eu=g("$ZodLazy",(e,t)=>{F.init(e,t),A(e._zod,"innerType",()=>{let r=t;if(!r._cachedInner)r._cachedInner=t.getter();return r._cachedInner}),A(e._zod,"pattern",()=>e._zod.innerType?._zod?.pattern),A(e._zod,"propValues",()=>e._zod.innerType?._zod?.propValues),A(e._zod,"optin",()=>e._zod.innerType?._zod?.optin??void 0),A(e._zod,"optout",()=>e._zod.innerType?._zod?.optout??void 0),e._zod.parse=(r,n)=>e._zod.innerType._zod.run(r,n)}),tu=g("$ZodCustom",(e,t)=>{Q.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)=>sc(a,r,n,e));sc(o,r,n,e);return}});function sc(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(Nt(o))}}var ru,NT=Symbol("ZodOutput"),zT=Symbol("ZodInput");class nu{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 Mg(){return new nu}(ru=globalThis).__zod_globalRegistry??(ru.__zod_globalRegistry=Mg());var ft=globalThis.__zod_globalRegistry;function ou(e,t){return new e({type:"string",...I(t)})}function au(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...I(t)})}function lo(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...I(t)})}function su(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...I(t)})}function iu(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...I(t)})}function lu(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...I(t)})}function cu(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...I(t)})}function uu(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...I(t)})}function du(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...I(t)})}function pu(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...I(t)})}function fu(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...I(t)})}function mu(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...I(t)})}function hu(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...I(t)})}function gu(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...I(t)})}function vu(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...I(t)})}function yu(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...I(t)})}function bu(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...I(t)})}function wu(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...I(t)})}function xu(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...I(t)})}function _u(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...I(t)})}function Su(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...I(t)})}function Tu(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...I(t)})}function Iu(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...I(t)})}function Eu(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...I(t)})}function ku(e,t){return new e({type:"string",format:"date",check:"string_format",...I(t)})}function $u(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...I(t)})}function Mu(e,t){return new e({type:"string",format:"duration",check:"string_format",...I(t)})}function Ru(e,t){return new e({type:"number",checks:[],...I(t)})}function Au(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...I(t)})}function Cu(e,t){return new e({type:"boolean",...I(t)})}function Ou(e,t){return new e({type:"null",...I(t)})}function Pu(e){return new e({type:"unknown"})}function Nu(e,t){return new e({type:"never",...I(t)})}function en(e,t){return new to({check:"less_than",...I(t),value:e,inclusive:!1})}function dr(e,t){return new to({check:"less_than",...I(t),value:e,inclusive:!0})}function tn(e,t){return new ro({check:"greater_than",...I(t),value:e,inclusive:!1})}function pr(e,t){return new ro({check:"greater_than",...I(t),value:e,inclusive:!0})}function rn(e,t){return new Ul({check:"multiple_of",...I(t),value:e})}function nn(e,t){return new Ll({check:"max_length",...I(t),maximum:e})}function zt(e,t){return new Fl({check:"min_length",...I(t),minimum:e})}function on(e,t){return new Bl({check:"length_equals",...I(t),length:e})}function co(e,t){return new ql({check:"string_format",format:"regex",...I(t),pattern:e})}function uo(e){return new Wl({check:"string_format",format:"lowercase",...I(e)})}function po(e){return new Vl({check:"string_format",format:"uppercase",...I(e)})}function fo(e,t){return new Gl({check:"string_format",format:"includes",...I(t),includes:e})}function mo(e,t){return new Jl({check:"string_format",format:"starts_with",...I(t),prefix:e})}function ho(e,t){return new Kl({check:"string_format",format:"ends_with",...I(t),suffix:e})}function Ye(e){return new Hl({check:"overwrite",tx:e})}function go(e){return Ye((t)=>t.normalize(e))}function vo(){return Ye((e)=>e.trim())}function yo(){return Ye((e)=>e.toLowerCase())}function bo(){return Ye((e)=>e.toUpperCase())}function wo(){return Ye((e)=>Vn(e))}function zu(e,t,r){return new e({type:"array",element:t,...I(r)})}function ju(e,t,r){let n=I(r);return n.abort??(n.abort=!0),new e({type:"custom",check:"custom",fn:t,...n})}function Du(e,t,r){return new e({type:"custom",check:"custom",fn:t,...I(r)})}function Uu(e,t){let r=Rg((n)=>(n.addIssue=(o)=>{if(typeof o==="string")n.issues.push(Nt(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(Nt(a))}},e(n.value,n)),t);return r}function Rg(e,t){let r=new Q({check:"custom",...I(t)});return r._zod.check=e,r}function mr(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??ft,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 f=s.schema,m=t.processors[o.type];if(!m)throw Error(`[toJSONSchema]: Non-representable type encountered: ${o.type}`);m(e,t,f,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"&&re(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 hr(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,f=e.external.uri??((y)=>y);if(p)return{ref:f(p)};let m=s[1].defId??s[1].schema.id??`schema${e.counter++}`;return s[1].defId=m,{defId:m,ref:`${f("__shared")}#/${i}/${m}`}}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
129
|
|
|
130
|
-
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 mr(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 m=e.seen.get(p),y=m.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 _ in u){if(_==="$ref"||_==="allOf")continue;if(!(_ in d))delete u[_]}if(y.$ref&&m.def)for(let _ in u){if(_==="$ref"||_==="allOf")continue;if(_ in m.def&&JSON.stringify(u[_])===JSON.stringify(m.def[_]))delete u[_]}}let f=i._zod.parent;if(f&&f!==p){n(f);let m=e.seen.get(f);if(m?.schema.$ref){if(u.$ref=m.schema.$ref,m.def)for(let y in u){if(y==="$ref"||y==="allOf")continue;if(y in m.def&&JSON.stringify(u[y])===JSON.stringify(m.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:dr(t,"input",e.processors),output:dr(t,"output",e.processors)}},enumerable:!1,writable:!1}),i}catch(i){throw Error("Error converting schema to JSON.")}}function re(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 re(n.element,r);if(n.type==="set")return re(n.valueType,r);if(n.type==="lazy")return re(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 re(n.innerType,r);if(n.type==="intersection")return re(n.left,r)||re(n.right,r);if(n.type==="record"||n.type==="map")return re(n.keyType,r)||re(n.valueType,r);if(n.type==="pipe"){if(e._zod.traits.has("$ZodCodec"))return!0;return re(n.in,r)||re(n.out,r)}if(n.type==="object"){for(let o in n.shape)if(re(n.shape[o],r))return!0;return!1}if(n.type==="union"){for(let o of n.options)if(re(o,r))return!0;return!1}if(n.type==="tuple"){for(let o of n.items)if(re(o,r))return!0;if(n.rest&&re(n.rest,r))return!0;return!1}return!1}var Du=(e,t={})=>(r)=>{let n=pr({...r,processors:t});return L(e,n),fr(n,e),mr(n,e)},dr=(e,t,r={})=>(n)=>{let{libraryOptions:o,target:a}=n??{},s=pr({...o??{},target:a,io:t,processors:r});return L(e,s),fr(s,e),mr(s,e)};var Mg={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},bo=(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=Mg[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}))]}},wo=(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),f=typeof u==="number"&&u<=(s??Number.POSITIVE_INFINITY),m=t.target==="draft-04"||t.target==="openapi-3.0";if(p)if(m)o.minimum=d,o.exclusiveMinimum=!0;else o.exclusiveMinimum=d;else if(typeof a==="number")o.minimum=a;if(f)if(m)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},xo=(e,t,r,n)=>{r.type="boolean"},Zu=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("BigInt cannot be represented in JSON Schema")},Lu=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Symbols cannot be represented in JSON Schema")},_o=(e,t,r,n)=>{if(t.target==="openapi-3.0")r.type="string",r.nullable=!0,r.enum=[null];else r.type="null"},Fu=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Undefined cannot be represented in JSON Schema")},Bu=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Void cannot be represented in JSON Schema")},So=(e,t,r,n)=>{r.not={}},qu=(e,t,r,n)=>{},To=(e,t,r,n)=>{},Wu=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Date cannot be represented in JSON Schema")},Io=(e,t,r,n)=>{let o=e._zod.def,a=rr(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},Eo=(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}},Vu=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("NaN cannot be represented in JSON Schema")},Gu=(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},Ju=(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)},Ku=(e,t,r,n)=>{r.type="boolean"},ko=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Custom types cannot be represented in JSON Schema")},Hu=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Function types cannot be represented in JSON Schema")},$o=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Transforms cannot be represented in JSON Schema")},Yu=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Map cannot be represented in JSON Schema")},Xu=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Set cannot be represented in JSON Schema")},Mo=(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"]})},Ro=(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"]})},Ao=(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},Co=(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},Qu=(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((f,m)=>L(f,t,{...n,path:[...n.path,s,m]})),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},Oo=(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}},Po=(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"}]},No=(e,t,r,n)=>{let o=e._zod.def;L(o.innerType,t,n);let a=t.seen.get(e);a.ref=o.innerType},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,r.default=JSON.parse(JSON.stringify(o.defaultValue))},jo=(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))},Do=(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},Uo=(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},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,r.readOnly=!0},ed=(e,t,r,n)=>{let o=e._zod.def;L(o.innerType,t,n);let a=t.seen.get(e);a.ref=o.innerType},on=(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.innerType;L(o,t,n);let a=t.seen.get(e);a.ref=o},Uu={string:bo,number:wo,boolean:xo,bigint:Zu,symbol:Lu,null:_o,undefined:Fu,void:Bu,never:So,any:qu,unknown:To,date:Wu,enum:Io,literal:Eo,nan:Vu,template_literal:Gu,file:Ju,success:Ku,custom:ko,function:Hu,transform:$o,map:Yu,set:Xu,array:Mo,object:Ro,union:Ao,intersection:Co,tuple:Qu,record:Oo,nullable:Po,nonoptional:No,default:zo,prefault:jo,catch:Do,pipe:Uo,readonly:Zo,promise:ed,optional:on,lazy:Lo};function Fo(e,t){if("_idmap"in e){let n=e,o=pr({...t,processors:Uu}),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;fr(o,d),s[u]=mr(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=pr({...t,processors:Uu});return L(e,r),fr(r,e),mr(r,e)}var zg=g("ZodISODateTime",(e,t)=>{gc.init(e,t),W.init(e,t)});function td(e){return Tu(zg,e)}var jg=g("ZodISODate",(e,t)=>{vc.init(e,t),W.init(e,t)});function rd(e){return Iu(jg,e)}var Dg=g("ZodISOTime",(e,t)=>{yc.init(e,t),W.init(e,t)});function nd(e){return Eu(Dg,e)}var Ug=g("ZodISODuration",(e,t)=>{bc.init(e,t),W.init(e,t)});function od(e){return ku(Ug,e)}var Fg=(e,t)=>{Wr.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:(r)=>Yi(e,r)},flatten:{value:(r)=>Hi(e,r)},addIssue:{value:(r)=>{e.issues.push(r),e.message=JSON.stringify(e.issues,Ot,2)}},addIssues:{value:(r)=>{e.issues.push(...r),e.message=JSON.stringify(e.issues,Ot,2)}},isEmpty:{get(){return e.issues.length===0}}})};var de=g("ZodError",Fg,{Parent:Error});var ad=Vr(de),sd=Gr(de),id=sr(de),sn=ir(de),ld=el(de),cd=tl(de),ud=rl(de),dd=nl(de),pd=ol(de),fd=al(de),md=sl(de),hd=il(de);var gd=new WeakMap;function gr(e,t,r){let n=Object.getPrototypeOf(e),o=gd.get(n);if(!o)o=new Set,gd.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=g("ZodType",(e,t)=>(F.init(e,t),Object.assign(e["~standard"],{jsonSchema:{input:dr(e,"input"),output:dr(e,"output")}}),e.toJSONSchema=Du(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.parse=(r,n)=>ad(e,r,n,{callee:e.parse}),e.safeParse=(r,n)=>id(e,r,n),e.parseAsync=async(r,n)=>sd(e,r,n,{callee:e.parseAsync}),e.safeParseAsync=async(r,n)=>sn(e,r,n),e.spa=e.safeParseAsync,e.encode=(r,n)=>ld(e,r,n),e.decode=(r,n)=>cd(e,r,n),e.encodeAsync=async(r,n)=>ud(e,r,n),e.decodeAsync=async(r,n)=>dd(e,r,n),e.safeEncode=(r,n)=>pd(e,r,n),e.safeDecode=(r,n)=>fd(e,r,n),e.safeEncodeAsync=async(r,n)=>md(e,r,n),e.safeDecodeAsync=async(r,n)=>hd(e,r,n),gr(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 _e(this,r,n)},brand(){return this},register(r,n){return r.add(this,n),this},refine(r,n){return this.check(Pv(r,n))},superRefine(r,n){return this.check(Nv(r,n))},overwrite(r){return this.check(He(r))},optional(){return wd(this)},exactOptional(){return xv(this)},nullable(){return xd(this)},nullish(){return wd(xd(this))},nonoptional(r){return kv(this,r)},array(){return Vo(this)},or(r){return Go([this,r])},and(r){return gv(this,r)},transform(r){return _d(this,bv(r))},default(r){return Tv(this,r)},prefault(r){return Ev(this,r)},catch(r){return Mv(this,r)},pipe(r){return _d(this,r)},readonly(){return Cv(this)},describe(r){let n=this.clone();return mt.add(n,{description:r}),n},meta(...r){if(r.length===0)return mt.get(this);let n=this.clone();return mt.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 mt.get(e)?.description},configurable:!0}),e)),Sd=g("_ZodString",(e,t)=>{Xr.init(e,t),q.init(e,t),e._zod.processJSONSchema=(n,o,a)=>bo(e,n,o,a);let r=e._zod.bag;e.format=r.format??null,e.minLength=r.minimum??null,e.maxLength=r.maximum??null,gr(e,"_ZodString",{regex(...n){return this.check(io(...n))},includes(...n){return this.check(uo(...n))},startsWith(...n){return this.check(po(...n))},endsWith(...n){return this.check(fo(...n))},min(...n){return this.check(zt(...n))},max(...n){return this.check(rn(...n))},length(...n){return this.check(nn(...n))},nonempty(...n){return this.check(zt(1,...n))},lowercase(n){return this.check(lo(n))},uppercase(n){return this.check(co(n))},trim(){return this.check(ho())},normalize(...n){return this.check(mo(...n))},toLowerCase(){return this.check(go())},toUpperCase(){return this.check(vo())},slugify(){return this.check(yo())}})}),qg=g("ZodString",(e,t)=>{Xr.init(e,t),Sd.init(e,t),e.email=(r)=>e.check(nu(Wg,r)),e.url=(r)=>e.check(lu(Vg,r)),e.jwt=(r)=>e.check(Su(iv,r)),e.emoji=(r)=>e.check(cu(Gg,r)),e.guid=(r)=>e.check(so(vd,r)),e.uuid=(r)=>e.check(ou(ln,r)),e.uuidv4=(r)=>e.check(au(ln,r)),e.uuidv6=(r)=>e.check(su(ln,r)),e.uuidv7=(r)=>e.check(iu(ln,r)),e.nanoid=(r)=>e.check(uu(Jg,r)),e.guid=(r)=>e.check(so(vd,r)),e.cuid=(r)=>e.check(du(Kg,r)),e.cuid2=(r)=>e.check(pu(Hg,r)),e.ulid=(r)=>e.check(fu(Yg,r)),e.base64=(r)=>e.check(wu(ov,r)),e.base64url=(r)=>e.check(xu(av,r)),e.xid=(r)=>e.check(mu(Xg,r)),e.ksuid=(r)=>e.check(hu(Qg,r)),e.ipv4=(r)=>e.check(gu(ev,r)),e.ipv6=(r)=>e.check(vu(tv,r)),e.cidrv4=(r)=>e.check(yu(rv,r)),e.cidrv6=(r)=>e.check(bu(nv,r)),e.e164=(r)=>e.check(_u(sv,r)),e.datetime=(r)=>e.check(td(r)),e.date=(r)=>e.check(rd(r)),e.time=(r)=>e.check(nd(r)),e.duration=(r)=>e.check(od(r))});function qo(e){return ru(qg,e)}var W=g("ZodStringFormat",(e,t)=>{B.init(e,t),Sd.init(e,t)}),Wg=g("ZodEmail",(e,t)=>{ic.init(e,t),W.init(e,t)});var vd=g("ZodGUID",(e,t)=>{ac.init(e,t),W.init(e,t)});var ln=g("ZodUUID",(e,t)=>{sc.init(e,t),W.init(e,t)});var Vg=g("ZodURL",(e,t)=>{lc.init(e,t),W.init(e,t)});var Gg=g("ZodEmoji",(e,t)=>{cc.init(e,t),W.init(e,t)});var Jg=g("ZodNanoID",(e,t)=>{uc.init(e,t),W.init(e,t)});var Kg=g("ZodCUID",(e,t)=>{dc.init(e,t),W.init(e,t)});var Hg=g("ZodCUID2",(e,t)=>{pc.init(e,t),W.init(e,t)});var Yg=g("ZodULID",(e,t)=>{fc.init(e,t),W.init(e,t)});var Xg=g("ZodXID",(e,t)=>{mc.init(e,t),W.init(e,t)});var Qg=g("ZodKSUID",(e,t)=>{hc.init(e,t),W.init(e,t)});var ev=g("ZodIPv4",(e,t)=>{wc.init(e,t),W.init(e,t)});var tv=g("ZodIPv6",(e,t)=>{xc.init(e,t),W.init(e,t)});var rv=g("ZodCIDRv4",(e,t)=>{_c.init(e,t),W.init(e,t)});var nv=g("ZodCIDRv6",(e,t)=>{Sc.init(e,t),W.init(e,t)});var ov=g("ZodBase64",(e,t)=>{Ic.init(e,t),W.init(e,t)});var av=g("ZodBase64URL",(e,t)=>{Ec.init(e,t),W.init(e,t)});var sv=g("ZodE164",(e,t)=>{kc.init(e,t),W.init(e,t)});var iv=g("ZodJWT",(e,t)=>{$c.init(e,t),W.init(e,t)});var Td=g("ZodNumber",(e,t)=>{no.init(e,t),q.init(e,t),e._zod.processJSONSchema=(n,o,a)=>wo(e,n,o,a),gr(e,"ZodNumber",{gt(n,o){return this.check(en(n,o))},gte(n,o){return this.check(ur(n,o))},min(n,o){return this.check(ur(n,o))},lt(n,o){return this.check(Qr(n,o))},lte(n,o){return this.check(cr(n,o))},max(n,o){return this.check(cr(n,o))},int(n){return this.check(yd(n))},safe(n){return this.check(yd(n))},positive(n){return this.check(en(0,n))},nonnegative(n){return this.check(ur(0,n))},negative(n){return this.check(Qr(0,n))},nonpositive(n){return this.check(cr(0,n))},multipleOf(n,o){return this.check(tn(n,o))},step(n,o){return this.check(tn(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 Id(e){return $u(Td,e)}var lv=g("ZodNumberFormat",(e,t)=>{Mc.init(e,t),Td.init(e,t)});function yd(e){return Mu(lv,e)}var cv=g("ZodBoolean",(e,t)=>{Rc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>xo(e,r,n,o)});function Ed(e){return Ru(cv,e)}var uv=g("ZodNull",(e,t)=>{Ac.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>_o(e,r,n,o)});function kd(e){return Au(uv,e)}var dv=g("ZodUnknown",(e,t)=>{Cc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>To(e,r,n,o)});function hr(){return Cu(dv)}var pv=g("ZodNever",(e,t)=>{Oc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>So(e,r,n,o)});function Wo(e){return Ou(pv,e)}var fv=g("ZodArray",(e,t)=>{Pc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Mo(e,r,n,o),e.element=t.element,gr(e,"ZodArray",{min(r,n){return this.check(zt(r,n))},nonempty(r){return this.check(zt(1,r))},max(r,n){return this.check(rn(r,n))},length(r,n){return this.check(nn(r,n))},unwrap(){return this.element}})});function Vo(e,t){return Pu(fv,e,t)}var $d=g("ZodObject",(e,t)=>{jc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Ro(e,r,n,o),O.defineLazy(e,"shape",()=>t.shape),gr(e,"ZodObject",{keyof(){return Jo(Object.keys(this._zod.def.shape))},catchall(r){return this.clone({...this._zod.def,catchall:r})},passthrough(){return this.clone({...this._zod.def,catchall:hr()})},loose(){return this.clone({...this._zod.def,catchall:hr()})},strict(){return this.clone({...this._zod.def,catchall:Wo()})},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(Nd,this,r[0])},required(...r){return O.required(zd,this,r[0])}})});function Md(e,t){let r={type:"object",shape:e??{},...O.normalizeParams(t)};return new $d(r)}function Rd(e,t){return new $d({type:"object",shape:e,catchall:hr(),...O.normalizeParams(t)})}var Ad=g("ZodUnion",(e,t)=>{oo.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Ao(e,r,n,o),e.options=t.options});function Go(e,t){return new Ad({type:"union",options:e,...O.normalizeParams(t)})}var mv=g("ZodDiscriminatedUnion",(e,t)=>{Ad.init(e,t),Dc.init(e,t)});function Cd(e,t,r){return new mv({type:"union",options:t,discriminator:e,...O.normalizeParams(r)})}var hv=g("ZodIntersection",(e,t)=>{Uc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Co(e,r,n,o)});function gv(e,t){return new hv({type:"intersection",left:e,right:t})}var bd=g("ZodRecord",(e,t)=>{Zc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Oo(e,r,n,o),e.keyType=t.keyType,e.valueType=t.valueType});function Od(e,t,r){if(!t||!t._zod)return new bd({type:"record",keyType:qo(),valueType:e,...O.normalizeParams(t)});return new bd({type:"record",keyType:e,valueType:t,...O.normalizeParams(r)})}var Bo=g("ZodEnum",(e,t)=>{Lc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(n,o,a)=>Io(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 Bo({...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 Bo({...t,checks:[],...O.normalizeParams(o),entries:a})}});function Jo(e,t){let r=Array.isArray(e)?Object.fromEntries(e.map((n)=>[n,n])):e;return new Bo({type:"enum",entries:r,...O.normalizeParams(t)})}var vv=g("ZodLiteral",(e,t)=>{Fc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Eo(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 Pd(e,t){return new vv({type:"literal",values:Array.isArray(e)?e:[e],...O.normalizeParams(t)})}var yv=g("ZodTransform",(e,t)=>{Bc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>$o(e,r,n,o),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new er(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 bv(e){return new yv({type:"transform",transform:e})}var Nd=g("ZodOptional",(e,t)=>{ao.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>on(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function wd(e){return new Nd({type:"optional",innerType:e})}var wv=g("ZodExactOptional",(e,t)=>{qc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>on(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function xv(e){return new wv({type:"optional",innerType:e})}var _v=g("ZodNullable",(e,t)=>{Wc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Po(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function xd(e){return new _v({type:"nullable",innerType:e})}var Sv=g("ZodDefault",(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,e.removeDefault=e.unwrap});function Tv(e,t){return new Sv({type:"default",innerType:e,get defaultValue(){return typeof t==="function"?t():O.shallowClone(t)}})}var Iv=g("ZodPrefault",(e,t)=>{Gc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>jo(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function Ev(e,t){return new Iv({type:"prefault",innerType:e,get defaultValue(){return typeof t==="function"?t():O.shallowClone(t)}})}var zd=g("ZodNonOptional",(e,t)=>{Jc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>No(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function kv(e,t){return new zd({type:"nonoptional",innerType:e,...O.normalizeParams(t)})}var $v=g("ZodCatch",(e,t)=>{Kc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Do(e,r,n,o),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function Mv(e,t){return new $v({type:"catch",innerType:e,catchValue:typeof t==="function"?t:()=>t})}var Rv=g("ZodPipe",(e,t)=>{Hc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Uo(e,r,n,o),e.in=t.in,e.out=t.out});function _d(e,t){return new Rv({type:"pipe",in:e,out:t})}var Av=g("ZodReadonly",(e,t)=>{Yc.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 Cv(e){return new Av({type:"readonly",innerType:e})}var Ov=g("ZodLazy",(e,t)=>{Xc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Lo(e,r,n,o),e.unwrap=()=>e._zod.def.getter()});function jd(e){return new Ov({type:"lazy",getter:e})}var Ko=g("ZodCustom",(e,t)=>{Qc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>ko(e,r,n,o)});function Dd(e,t){return Nu(Ko,e??(()=>!0),t)}function Pv(e,t={}){return zu(Ko,e,t)}function Nv(e,t){return ju(e,t)}function Ud(e,t={}){let r=new Ko({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 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]}],t0=[...zv,{mediaType:"audio/mp4",bytesPrefix:[0,0,0,null,102,116,121,112]}];var jv=12,Dv=131072,r0=Dv+jv;async function cn(e){var t;try{await((t=e.body)==null?void 0:t.cancel())}catch(r){}}var Kd="AI_DownloadError",Hd=`vercel.ai.error.${Kd}`,Uv=Symbol.for(Hd),Zd,Ld,oe=class extends(Ld=k,Zd=Uv,Ld){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:Kd,message:o,cause:n});this[Zd]=!0,this.url=e,this.statusCode=t,this.statusText=r}static isInstance(e){return k.hasMarker(e,Hd)}};function Zv(e=globalThis){return e.window!=null}function Fd(e,t){try{return new URL(e).origin===new URL(t).origin}catch(r){return!1}}function Lv(e){let t;try{t=new URL(e)}catch(n){throw new oe({url:e,message:`Invalid URL: ${e}`})}if(t.protocol==="data:")return;if(t.protocol!=="http:"&&t.protocol!=="https:")throw new oe({url:e,message:`URL scheme must be http, https, or data, got ${t.protocol}`});let r=t.hostname.toLowerCase().replace(/\.+$/,"");if(!r)throw new oe({url:e,message:"URL must have a hostname"});if(r==="localhost"||r.endsWith(".local")||r.endsWith(".localhost"))throw new oe({url:e,message:`URL with hostname ${r} is not allowed`});if(r.startsWith("[")&&r.endsWith("]")){let n=r.slice(1,-1);if(Yd(n))throw new oe({url:e,message:`URL with IPv6 address ${r} is not allowed`});return}if(ta(r)){if(ra(r))throw new oe({url:e,message:`URL with IP address ${r} is not allowed`});return}}function Fv({address:e,family:t,hostname:r}){if(t===4?!ta(e)||ra(e):t===6?Yd(e):!0)throw new oe({url:r,message:`Hostname ${r} resolved to disallowed IP address ${e}`})}function ta(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 ra(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 Bv(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||!ta(d))return null;let[p,f,m,y]=d.split(".").map(Number);i.push(p<<8|f,m<<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 Yd(e){let t=Bv(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 ra(`${o}.${a}.${s}.${i}`)}return!1}function qv(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)Fv({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 Ho,Xd=globalThis.fetch,Wv=Jv(Xd);function Vv(){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 Gv(){if(!Vv()||!Wv||globalThis.fetch!==Xd)return globalThis.fetch;return Ho!=null?Ho:Ho=Promise.resolve().then(Kv)}function Jv(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 Kv(){let{createRequire:e}=Bd("node:module"),{lookup:t}=Bd("node:dns"),{Agent:r,fetch:n}=e(Qd())("undici"),o=new r({connect:{lookup:qv(t)}});return(a,s)=>n(a,{...s,dispatcher:o})}function Bd(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 Qd(){let e=Error.prepareStackTrace;try{Error.prepareStackTrace=(o,a)=>a;let t=Error("Capture current module path");Error.captureStackTrace(t,Qd);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 Hv=["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 Yv(e){let t=new Headers(e);for(let r of Hv)t.delete(r);return t}var Xv=10,Qv=new Set([301,302,303,307,308]);async function ep({url:e,headers:t,abortSignal:r,maxRedirects:n=Xv,fetch:o,trustedOrigin:a}){let s=t===void 0?void 0:Yv(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&&Fd(c,a);if(!d)Lv(c);let p=o!=null?o:d?globalThis.fetch:await Gv(),f=await p(c,i("manual"));if(f.type==="opaqueredirect"){if(!Zv())throw new oe({url:e,message:`Redirect from ${c} could not be validated and was blocked`});return await p(c,i("follow"))}let m=f.headers.get("location");if(Qv.has(f.status)&&m){await cn(f);let y=new URL(m,c).toString();if(s!==void 0&&!Fd(y,c)){let v=s.get("user-agent");s=new Headers(v==null?void 0:{"user-agent":v})}c=y;continue}return f}throw new oe({url:e,message:`Too many redirects (max ${n})`})}var na=2147483648;async function tp({response:e,url:t,maxBytes:r=na}){let n=e.headers.get("content-length");if(n!=null){let d=parseInt(n,10);if(!isNaN(d)&&d>r)throw await cn(e),new oe({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 oe({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 G=({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 gi({argument:"separator",message:`The separator "${n}" must not be part of the alphabet "${r}".`});return()=>`${e}${n}${o()}`},jt=G();function rp(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 ey(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 Dt(e,...t){let r=new Headers(ey(e)),n=r.get("user-agent")||"";return r.set("user-agent",[n,...t].filter(Boolean).join(" ")),Object.fromEntries(r.entries())}function np(e){var t,r;return(r=(t=globalThis.Buffer)==null?void 0:t.isBuffer(e))!=null?r:!1}function op(e){return e!=null}var ty=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,ry=/"(?: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 qd(e){let t=JSON.parse(e);if(t===null||typeof t!=="object")return t;if(ty.test(e)===!1&&ry.test(e)===!1)return t;return ny(t)}function ny(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 oy(e){let{stackTraceLimit:t}=Error;try{Error.stackTraceLimit=0}catch(r){return qd(e)}try{return qd(e)}finally{Error.stackTraceLimit=t}}function oa(e){if(e.type==="object"||Array.isArray(e.type)&&e.type.includes("object")){e.additionalProperties=!1;let{properties:r}=e;if(r!=null)for(let n of Object.keys(r))r[n]=ht(r[n])}if(e.items!=null)e.items=Array.isArray(e.items)?e.items.map(ht):ht(e.items);if(e.anyOf!=null)e.anyOf=e.anyOf.map(ht);if(e.allOf!=null)e.allOf=e.allOf.map(ht);if(e.oneOf!=null)e.oneOf=e.oneOf.map(ht);let{definitions:t}=e;if(t!=null)for(let r of Object.keys(t))t[r]=ht(t[r]);return e}function ht(e){if(typeof e==="boolean")return e;return oa(e)}var ay=Symbol("Let zodToJsonSchema decide on which parser to use"),Wd={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"},sy=(e)=>typeof e==="string"?{...Wd,name:e}:{...Wd,...e};function pe(){return{}}function iy(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 ly(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 cy(){return{type:"boolean"}}function ap(e,t){return U(e.type._def,t)}var uy=(e,t)=>U(e.innerType._def,t);function sp(e,t,r){let n=r!=null?r:t.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o)=>sp(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 dy(e)}}var dy=(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 py(e,t){return{...U(e.innerType._def,t),default:e.defaultValue()}}function fy(e,t){return t.effectStrategy==="input"?U(e.schema._def,t):pe()}function my(e){return{type:"string",enum:Array.from(e.values)}}var hy=(e)=>{if("type"in e&&e.type==="string")return!1;return"allOf"in e};function gy(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(hy(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 vy(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 Yo=void 0,Se={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(Yo===void 0)Yo=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u");return Yo},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 ip(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":ne(r,Se.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":ne(r,n.regex,n.message,t);break;case"cuid":ne(r,Se.cuid,n.message,t);break;case"cuid2":ne(r,Se.cuid2,n.message,t);break;case"startsWith":ne(r,RegExp(`^${Xo(n.value,t)}`),n.message,t);break;case"endsWith":ne(r,RegExp(`${Xo(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":{ne(r,RegExp(Xo(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":ne(r,Se.base64url,n.message,t);break;case"jwt":ne(r,Se.jwt,n.message,t);break;case"cidr":{if(n.version!=="v6")ne(r,Se.ipv4Cidr,n.message,t);if(n.version!=="v4")ne(r,Se.ipv6Cidr,n.message,t);break}case"emoji":ne(r,Se.emoji(),n.message,t);break;case"ulid":{ne(r,Se.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":{ne(r,Se.base64,n.message,t);break}}break}case"nanoid":ne(r,Se.nanoid,n.message,t);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function Xo(e,t){return t.patternStrategy==="escape"?by(e):e}var yy=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function by(e){let t="";for(let r=0;r<e.length;r++){if(!yy.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 ne(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:Vd(t,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})}else e.pattern=Vd(t,n)}function Vd(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
|
|
130
|
+
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 gr(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 m=e.seen.get(p),y=m.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 _ in u){if(_==="$ref"||_==="allOf")continue;if(!(_ in d))delete u[_]}if(y.$ref&&m.def)for(let _ in u){if(_==="$ref"||_==="allOf")continue;if(_ in m.def&&JSON.stringify(u[_])===JSON.stringify(m.def[_]))delete u[_]}}let f=i._zod.parent;if(f&&f!==p){n(f);let m=e.seen.get(f);if(m?.schema.$ref){if(u.$ref=m.schema.$ref,m.def)for(let y in u){if(y==="$ref"||y==="allOf")continue;if(y in m.def&&JSON.stringify(u[y])===JSON.stringify(m.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:fr(t,"input",e.processors),output:fr(t,"output",e.processors)}},enumerable:!1,writable:!1}),i}catch(i){throw Error("Error converting schema to JSON.")}}function re(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 re(n.element,r);if(n.type==="set")return re(n.valueType,r);if(n.type==="lazy")return re(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 re(n.innerType,r);if(n.type==="intersection")return re(n.left,r)||re(n.right,r);if(n.type==="record"||n.type==="map")return re(n.keyType,r)||re(n.valueType,r);if(n.type==="pipe"){if(e._zod.traits.has("$ZodCodec"))return!0;return re(n.in,r)||re(n.out,r)}if(n.type==="object"){for(let o in n.shape)if(re(n.shape[o],r))return!0;return!1}if(n.type==="union"){for(let o of n.options)if(re(o,r))return!0;return!1}if(n.type==="tuple"){for(let o of n.items)if(re(o,r))return!0;if(n.rest&&re(n.rest,r))return!0;return!1}return!1}var Zu=(e,t={})=>(r)=>{let n=mr({...r,processors:t});return L(e,n),hr(n,e),gr(n,e)},fr=(e,t,r={})=>(n)=>{let{libraryOptions:o,target:a}=n??{},s=mr({...o??{},target:a,io:t,processors:r});return L(e,s),hr(s,e),gr(s,e)};var Ag={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},xo=(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=Ag[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}))]}},_o=(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),f=typeof u==="number"&&u<=(s??Number.POSITIVE_INFINITY),m=t.target==="draft-04"||t.target==="openapi-3.0";if(p)if(m)o.minimum=d,o.exclusiveMinimum=!0;else o.exclusiveMinimum=d;else if(typeof a==="number")o.minimum=a;if(f)if(m)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},So=(e,t,r,n)=>{r.type="boolean"},Fu=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("BigInt cannot be represented in JSON Schema")},Bu=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Symbols cannot be represented in JSON Schema")},To=(e,t,r,n)=>{if(t.target==="openapi-3.0")r.type="string",r.nullable=!0,r.enum=[null];else r.type="null"},qu=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Undefined cannot be represented in JSON Schema")},Wu=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Void cannot be represented in JSON Schema")},Io=(e,t,r,n)=>{r.not={}},Vu=(e,t,r,n)=>{},Eo=(e,t,r,n)=>{},Gu=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Date cannot be represented in JSON Schema")},ko=(e,t,r,n)=>{let o=e._zod.def,a=or(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},$o=(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}},Ju=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("NaN cannot be represented in JSON Schema")},Ku=(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},Hu=(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)},Yu=(e,t,r,n)=>{r.type="boolean"},Mo=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Custom types cannot be represented in JSON Schema")},Xu=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Function types cannot be represented in JSON Schema")},Ro=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Transforms cannot be represented in JSON Schema")},Qu=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Map cannot be represented in JSON Schema")},ed=(e,t,r,n)=>{if(t.unrepresentable==="throw")throw Error("Set cannot be represented in JSON Schema")},Ao=(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"]})},Co=(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"]})},Oo=(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},Po=(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},td=(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((f,m)=>L(f,t,{...n,path:[...n.path,s,m]})),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},No=(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}},zo=(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"}]},jo=(e,t,r,n)=>{let o=e._zod.def;L(o.innerType,t,n);let a=t.seen.get(e);a.ref=o.innerType},Do=(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))},Uo=(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))},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;let s;try{s=o.catchValue(void 0)}catch{throw Error("Dynamic catch values are not supported in JSON Schema")}r.default=s},Lo=(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},Fo=(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},rd=(e,t,r,n)=>{let o=e._zod.def;L(o.innerType,t,n);let a=t.seen.get(e);a.ref=o.innerType},an=(e,t,r,n)=>{let o=e._zod.def;L(o.innerType,t,n);let a=t.seen.get(e);a.ref=o.innerType},Bo=(e,t,r,n)=>{let o=e._zod.innerType;L(o,t,n);let a=t.seen.get(e);a.ref=o},Lu={string:xo,number:_o,boolean:So,bigint:Fu,symbol:Bu,null:To,undefined:qu,void:Wu,never:Io,any:Vu,unknown:Eo,date:Gu,enum:ko,literal:$o,nan:Ju,template_literal:Ku,file:Hu,success:Yu,custom:Mo,function:Xu,transform:Ro,map:Qu,set:ed,array:Ao,object:Co,union:Oo,intersection:Po,tuple:td,record:No,nullable:zo,nonoptional:jo,default:Do,prefault:Uo,catch:Zo,pipe:Lo,readonly:Fo,promise:rd,optional:an,lazy:Bo};function qo(e,t){if("_idmap"in e){let n=e,o=mr({...t,processors:Lu}),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;hr(o,d),s[u]=gr(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=mr({...t,processors:Lu});return L(e,r),hr(r,e),gr(r,e)}var Dg=g("ZodISODateTime",(e,t)=>{yc.init(e,t),W.init(e,t)});function nd(e){return Eu(Dg,e)}var Ug=g("ZodISODate",(e,t)=>{bc.init(e,t),W.init(e,t)});function od(e){return ku(Ug,e)}var Zg=g("ZodISOTime",(e,t)=>{wc.init(e,t),W.init(e,t)});function ad(e){return $u(Zg,e)}var Lg=g("ZodISODuration",(e,t)=>{xc.init(e,t),W.init(e,t)});function sd(e){return Mu(Lg,e)}var qg=(e,t)=>{Vr.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:(r)=>Qi(e,r)},flatten:{value:(r)=>Xi(e,r)},addIssue:{value:(r)=>{e.issues.push(r),e.message=JSON.stringify(e.issues,Ot,2)}},addIssues:{value:(r)=>{e.issues.push(...r),e.message=JSON.stringify(e.issues,Ot,2)}},isEmpty:{get(){return e.issues.length===0}}})};var de=g("ZodError",qg,{Parent:Error});var id=Gr(de),ld=Jr(de),cd=lr(de),ln=cr(de),ud=rl(de),dd=nl(de),pd=ol(de),fd=al(de),md=sl(de),hd=il(de),gd=ll(de),vd=cl(de);var yd=new WeakMap;function yr(e,t,r){let n=Object.getPrototypeOf(e),o=yd.get(n);if(!o)o=new Set,yd.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=g("ZodType",(e,t)=>(F.init(e,t),Object.assign(e["~standard"],{jsonSchema:{input:fr(e,"input"),output:fr(e,"output")}}),e.toJSONSchema=Zu(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.parse=(r,n)=>id(e,r,n,{callee:e.parse}),e.safeParse=(r,n)=>cd(e,r,n),e.parseAsync=async(r,n)=>ld(e,r,n,{callee:e.parseAsync}),e.safeParseAsync=async(r,n)=>ln(e,r,n),e.spa=e.safeParseAsync,e.encode=(r,n)=>ud(e,r,n),e.decode=(r,n)=>dd(e,r,n),e.encodeAsync=async(r,n)=>pd(e,r,n),e.decodeAsync=async(r,n)=>fd(e,r,n),e.safeEncode=(r,n)=>md(e,r,n),e.safeDecode=(r,n)=>hd(e,r,n),e.safeEncodeAsync=async(r,n)=>gd(e,r,n),e.safeDecodeAsync=async(r,n)=>vd(e,r,n),yr(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 _e(this,r,n)},brand(){return this},register(r,n){return r.add(this,n),this},refine(r,n){return this.check(zv(r,n))},superRefine(r,n){return this.check(jv(r,n))},overwrite(r){return this.check(Ye(r))},optional(){return _d(this)},exactOptional(){return Sv(this)},nullable(){return Sd(this)},nullish(){return _d(Sd(this))},nonoptional(r){return Mv(this,r)},array(){return Jo(this)},or(r){return Ko([this,r])},and(r){return yv(this,r)},transform(r){return Td(this,xv(r))},default(r){return Ev(this,r)},prefault(r){return $v(this,r)},catch(r){return Av(this,r)},pipe(r){return Td(this,r)},readonly(){return Pv(this)},describe(r){let n=this.clone();return ft.add(n,{description:r}),n},meta(...r){if(r.length===0)return ft.get(this);let n=this.clone();return ft.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 ft.get(e)?.description},configurable:!0}),e)),Id=g("_ZodString",(e,t)=>{Qr.init(e,t),q.init(e,t),e._zod.processJSONSchema=(n,o,a)=>xo(e,n,o,a);let r=e._zod.bag;e.format=r.format??null,e.minLength=r.minimum??null,e.maxLength=r.maximum??null,yr(e,"_ZodString",{regex(...n){return this.check(co(...n))},includes(...n){return this.check(fo(...n))},startsWith(...n){return this.check(mo(...n))},endsWith(...n){return this.check(ho(...n))},min(...n){return this.check(zt(...n))},max(...n){return this.check(nn(...n))},length(...n){return this.check(on(...n))},nonempty(...n){return this.check(zt(1,...n))},lowercase(n){return this.check(uo(n))},uppercase(n){return this.check(po(n))},trim(){return this.check(vo())},normalize(...n){return this.check(go(...n))},toLowerCase(){return this.check(yo())},toUpperCase(){return this.check(bo())},slugify(){return this.check(wo())}})}),Vg=g("ZodString",(e,t)=>{Qr.init(e,t),Id.init(e,t),e.email=(r)=>e.check(au(Gg,r)),e.url=(r)=>e.check(uu(Jg,r)),e.jwt=(r)=>e.check(Iu(cv,r)),e.emoji=(r)=>e.check(du(Kg,r)),e.guid=(r)=>e.check(lo(bd,r)),e.uuid=(r)=>e.check(su(cn,r)),e.uuidv4=(r)=>e.check(iu(cn,r)),e.uuidv6=(r)=>e.check(lu(cn,r)),e.uuidv7=(r)=>e.check(cu(cn,r)),e.nanoid=(r)=>e.check(pu(Hg,r)),e.guid=(r)=>e.check(lo(bd,r)),e.cuid=(r)=>e.check(fu(Yg,r)),e.cuid2=(r)=>e.check(mu(Xg,r)),e.ulid=(r)=>e.check(hu(Qg,r)),e.base64=(r)=>e.check(_u(sv,r)),e.base64url=(r)=>e.check(Su(iv,r)),e.xid=(r)=>e.check(gu(ev,r)),e.ksuid=(r)=>e.check(vu(tv,r)),e.ipv4=(r)=>e.check(yu(rv,r)),e.ipv6=(r)=>e.check(bu(nv,r)),e.cidrv4=(r)=>e.check(wu(ov,r)),e.cidrv6=(r)=>e.check(xu(av,r)),e.e164=(r)=>e.check(Tu(lv,r)),e.datetime=(r)=>e.check(nd(r)),e.date=(r)=>e.check(od(r)),e.time=(r)=>e.check(ad(r)),e.duration=(r)=>e.check(sd(r))});function Vo(e){return ou(Vg,e)}var W=g("ZodStringFormat",(e,t)=>{B.init(e,t),Id.init(e,t)}),Gg=g("ZodEmail",(e,t)=>{cc.init(e,t),W.init(e,t)});var bd=g("ZodGUID",(e,t)=>{ic.init(e,t),W.init(e,t)});var cn=g("ZodUUID",(e,t)=>{lc.init(e,t),W.init(e,t)});var Jg=g("ZodURL",(e,t)=>{uc.init(e,t),W.init(e,t)});var Kg=g("ZodEmoji",(e,t)=>{dc.init(e,t),W.init(e,t)});var Hg=g("ZodNanoID",(e,t)=>{pc.init(e,t),W.init(e,t)});var Yg=g("ZodCUID",(e,t)=>{fc.init(e,t),W.init(e,t)});var Xg=g("ZodCUID2",(e,t)=>{mc.init(e,t),W.init(e,t)});var Qg=g("ZodULID",(e,t)=>{hc.init(e,t),W.init(e,t)});var ev=g("ZodXID",(e,t)=>{gc.init(e,t),W.init(e,t)});var tv=g("ZodKSUID",(e,t)=>{vc.init(e,t),W.init(e,t)});var rv=g("ZodIPv4",(e,t)=>{_c.init(e,t),W.init(e,t)});var nv=g("ZodIPv6",(e,t)=>{Sc.init(e,t),W.init(e,t)});var ov=g("ZodCIDRv4",(e,t)=>{Tc.init(e,t),W.init(e,t)});var av=g("ZodCIDRv6",(e,t)=>{Ic.init(e,t),W.init(e,t)});var sv=g("ZodBase64",(e,t)=>{kc.init(e,t),W.init(e,t)});var iv=g("ZodBase64URL",(e,t)=>{$c.init(e,t),W.init(e,t)});var lv=g("ZodE164",(e,t)=>{Mc.init(e,t),W.init(e,t)});var cv=g("ZodJWT",(e,t)=>{Rc.init(e,t),W.init(e,t)});var Ed=g("ZodNumber",(e,t)=>{ao.init(e,t),q.init(e,t),e._zod.processJSONSchema=(n,o,a)=>_o(e,n,o,a),yr(e,"ZodNumber",{gt(n,o){return this.check(tn(n,o))},gte(n,o){return this.check(pr(n,o))},min(n,o){return this.check(pr(n,o))},lt(n,o){return this.check(en(n,o))},lte(n,o){return this.check(dr(n,o))},max(n,o){return this.check(dr(n,o))},int(n){return this.check(wd(n))},safe(n){return this.check(wd(n))},positive(n){return this.check(tn(0,n))},nonnegative(n){return this.check(pr(0,n))},negative(n){return this.check(en(0,n))},nonpositive(n){return this.check(dr(0,n))},multipleOf(n,o){return this.check(rn(n,o))},step(n,o){return this.check(rn(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 kd(e){return Ru(Ed,e)}var uv=g("ZodNumberFormat",(e,t)=>{Ac.init(e,t),Ed.init(e,t)});function wd(e){return Au(uv,e)}var dv=g("ZodBoolean",(e,t)=>{Cc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>So(e,r,n,o)});function $d(e){return Cu(dv,e)}var pv=g("ZodNull",(e,t)=>{Oc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>To(e,r,n,o)});function Md(e){return Ou(pv,e)}var fv=g("ZodUnknown",(e,t)=>{Pc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Eo(e,r,n,o)});function vr(){return Pu(fv)}var mv=g("ZodNever",(e,t)=>{Nc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Io(e,r,n,o)});function Go(e){return Nu(mv,e)}var hv=g("ZodArray",(e,t)=>{zc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Ao(e,r,n,o),e.element=t.element,yr(e,"ZodArray",{min(r,n){return this.check(zt(r,n))},nonempty(r){return this.check(zt(1,r))},max(r,n){return this.check(nn(r,n))},length(r,n){return this.check(on(r,n))},unwrap(){return this.element}})});function Jo(e,t){return zu(hv,e,t)}var Rd=g("ZodObject",(e,t)=>{Uc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Co(e,r,n,o),O.defineLazy(e,"shape",()=>t.shape),yr(e,"ZodObject",{keyof(){return Ho(Object.keys(this._zod.def.shape))},catchall(r){return this.clone({...this._zod.def,catchall:r})},passthrough(){return this.clone({...this._zod.def,catchall:vr()})},loose(){return this.clone({...this._zod.def,catchall:vr()})},strict(){return this.clone({...this._zod.def,catchall:Go()})},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(jd,this,r[0])},required(...r){return O.required(Dd,this,r[0])}})});function Ad(e,t){let r={type:"object",shape:e??{},...O.normalizeParams(t)};return new Rd(r)}function Cd(e,t){return new Rd({type:"object",shape:e,catchall:vr(),...O.normalizeParams(t)})}var Od=g("ZodUnion",(e,t)=>{so.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Oo(e,r,n,o),e.options=t.options});function Ko(e,t){return new Od({type:"union",options:e,...O.normalizeParams(t)})}var gv=g("ZodDiscriminatedUnion",(e,t)=>{Od.init(e,t),Zc.init(e,t)});function Pd(e,t,r){return new gv({type:"union",options:t,discriminator:e,...O.normalizeParams(r)})}var vv=g("ZodIntersection",(e,t)=>{Lc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Po(e,r,n,o)});function yv(e,t){return new vv({type:"intersection",left:e,right:t})}var xd=g("ZodRecord",(e,t)=>{Fc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>No(e,r,n,o),e.keyType=t.keyType,e.valueType=t.valueType});function Nd(e,t,r){if(!t||!t._zod)return new xd({type:"record",keyType:Vo(),valueType:e,...O.normalizeParams(t)});return new xd({type:"record",keyType:e,valueType:t,...O.normalizeParams(r)})}var Wo=g("ZodEnum",(e,t)=>{Bc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(n,o,a)=>ko(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 Wo({...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 Wo({...t,checks:[],...O.normalizeParams(o),entries:a})}});function Ho(e,t){let r=Array.isArray(e)?Object.fromEntries(e.map((n)=>[n,n])):e;return new Wo({type:"enum",entries:r,...O.normalizeParams(t)})}var bv=g("ZodLiteral",(e,t)=>{qc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>$o(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 zd(e,t){return new bv({type:"literal",values:Array.isArray(e)?e:[e],...O.normalizeParams(t)})}var wv=g("ZodTransform",(e,t)=>{Wc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Ro(e,r,n,o),e._zod.parse=(r,n)=>{if(n.direction==="backward")throw new rr(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 xv(e){return new wv({type:"transform",transform:e})}var jd=g("ZodOptional",(e,t)=>{io.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>an(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function _d(e){return new jd({type:"optional",innerType:e})}var _v=g("ZodExactOptional",(e,t)=>{Vc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>an(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function Sv(e){return new _v({type:"optional",innerType:e})}var Tv=g("ZodNullable",(e,t)=>{Gc.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 Sd(e){return new Tv({type:"nullable",innerType:e})}var Iv=g("ZodDefault",(e,t)=>{Jc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Do(e,r,n,o),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function Ev(e,t){return new Iv({type:"default",innerType:e,get defaultValue(){return typeof t==="function"?t():O.shallowClone(t)}})}var kv=g("ZodPrefault",(e,t)=>{Kc.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 $v(e,t){return new kv({type:"prefault",innerType:e,get defaultValue(){return typeof t==="function"?t():O.shallowClone(t)}})}var Dd=g("ZodNonOptional",(e,t)=>{Hc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>jo(e,r,n,o),e.unwrap=()=>e._zod.def.innerType});function Mv(e,t){return new Dd({type:"nonoptional",innerType:e,...O.normalizeParams(t)})}var Rv=g("ZodCatch",(e,t)=>{Yc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Zo(e,r,n,o),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function Av(e,t){return new Rv({type:"catch",innerType:e,catchValue:typeof t==="function"?t:()=>t})}var Cv=g("ZodPipe",(e,t)=>{Xc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Lo(e,r,n,o),e.in=t.in,e.out=t.out});function Td(e,t){return new Cv({type:"pipe",in:e,out:t})}var Ov=g("ZodReadonly",(e,t)=>{Qc.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 Pv(e){return new Ov({type:"readonly",innerType:e})}var Nv=g("ZodLazy",(e,t)=>{eu.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Bo(e,r,n,o),e.unwrap=()=>e._zod.def.getter()});function Ud(e){return new Nv({type:"lazy",getter:e})}var Yo=g("ZodCustom",(e,t)=>{tu.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,n,o)=>Mo(e,r,n,o)});function Zd(e,t){return ju(Yo,e??(()=>!0),t)}function zv(e,t={}){return Du(Yo,e,t)}function jv(e,t){return Uu(e,t)}function Ld(e,t={}){let r=new Yo({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 Dv=[{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]}],i0=[...Dv,{mediaType:"audio/mp4",bytesPrefix:[0,0,0,null,102,116,121,112]}];var Uv=12,Zv=131072,l0=Zv+Uv;async function un(e){var t;try{await((t=e.body)==null?void 0:t.cancel())}catch(r){}}var Yd="AI_DownloadError",Xd=`vercel.ai.error.${Yd}`,Lv=Symbol.for(Xd),Fd,Bd,oe=class extends(Bd=k,Fd=Lv,Bd){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:Yd,message:o,cause:n});this[Fd]=!0,this.url=e,this.statusCode=t,this.statusText=r}static isInstance(e){return k.hasMarker(e,Xd)}};function Fv(e=globalThis){return e.window!=null}function qd(e,t){try{return new URL(e).origin===new URL(t).origin}catch(r){return!1}}function Bv(e){let t;try{t=new URL(e)}catch(n){throw new oe({url:e,message:`Invalid URL: ${e}`})}if(t.protocol==="data:")return;if(t.protocol!=="http:"&&t.protocol!=="https:")throw new oe({url:e,message:`URL scheme must be http, https, or data, got ${t.protocol}`});let r=t.hostname.toLowerCase().replace(/\.+$/,"");if(!r)throw new oe({url:e,message:"URL must have a hostname"});if(r==="localhost"||r.endsWith(".local")||r.endsWith(".localhost"))throw new oe({url:e,message:`URL with hostname ${r} is not allowed`});if(r.startsWith("[")&&r.endsWith("]")){let n=r.slice(1,-1);if(Qd(n))throw new oe({url:e,message:`URL with IPv6 address ${r} is not allowed`});return}if(na(r)){if(oa(r))throw new oe({url:e,message:`URL with IP address ${r} is not allowed`});return}}function qv({address:e,family:t,hostname:r}){if(t===4?!na(e)||oa(e):t===6?Qd(e):!0)throw new oe({url:r,message:`Hostname ${r} resolved to disallowed IP address ${e}`})}function na(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 oa(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 Wv(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||!na(d))return null;let[p,f,m,y]=d.split(".").map(Number);i.push(p<<8|f,m<<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 Qd(e){let t=Wv(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 oa(`${o}.${a}.${s}.${i}`)}return!1}function Vv(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)qv({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 Xo,ep=globalThis.fetch,Gv=Hv(ep);function Jv(){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 Kv(){if(!Jv()||!Gv||globalThis.fetch!==ep)return globalThis.fetch;return Xo!=null?Xo:Xo=Promise.resolve().then(Yv)}function Hv(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 Yv(){let{createRequire:e}=Wd("node:module"),{lookup:t}=Wd("node:dns"),{Agent:r,fetch:n}=e(tp())("undici"),o=new r({connect:{lookup:Vv(t)}});return(a,s)=>n(a,{...s,dispatcher:o})}function Wd(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 tp(){let e=Error.prepareStackTrace;try{Error.prepareStackTrace=(o,a)=>a;let t=Error("Capture current module path");Error.captureStackTrace(t,tp);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 Xv=["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 Qv(e){let t=new Headers(e);for(let r of Xv)t.delete(r);return t}var ey=10,ty=new Set([301,302,303,307,308]);async function rp({url:e,headers:t,abortSignal:r,maxRedirects:n=ey,fetch:o,trustedOrigin:a}){let s=t===void 0?void 0:Qv(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&&qd(c,a);if(!d)Bv(c);let p=o!=null?o:d?globalThis.fetch:await Kv(),f=await p(c,i("manual"));if(f.type==="opaqueredirect"){if(!Fv())throw new oe({url:e,message:`Redirect from ${c} could not be validated and was blocked`});return await p(c,i("follow"))}let m=f.headers.get("location");if(ty.has(f.status)&&m){await un(f);let y=new URL(m,c).toString();if(s!==void 0&&!qd(y,c)){let v=s.get("user-agent");s=new Headers(v==null?void 0:{"user-agent":v})}c=y;continue}return f}throw new oe({url:e,message:`Too many redirects (max ${n})`})}var aa=2147483648;async function np({response:e,url:t,maxBytes:r=aa}){let n=e.headers.get("content-length");if(n!=null){let d=parseInt(n,10);if(!isNaN(d)&&d>r)throw await un(e),new oe({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 oe({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 G=({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 yi({argument:"separator",message:`The separator "${n}" must not be part of the alphabet "${r}".`});return()=>`${e}${n}${o()}`},jt=G();function op(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 ry(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 Dt(e,...t){let r=new Headers(ry(e)),n=r.get("user-agent")||"";return r.set("user-agent",[n,...t].filter(Boolean).join(" ")),Object.fromEntries(r.entries())}function ap(e){var t,r;return(r=(t=globalThis.Buffer)==null?void 0:t.isBuffer(e))!=null?r:!1}function sp(e){return e!=null}var ny=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,oy=/"(?: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 Vd(e){let t=JSON.parse(e);if(t===null||typeof t!=="object")return t;if(ny.test(e)===!1&&oy.test(e)===!1)return t;return ay(t)}function ay(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 sy(e){let{stackTraceLimit:t}=Error;try{Error.stackTraceLimit=0}catch(r){return Vd(e)}try{return Vd(e)}finally{Error.stackTraceLimit=t}}function sa(e){if(e.type==="object"||Array.isArray(e.type)&&e.type.includes("object")){e.additionalProperties=!1;let{properties:r}=e;if(r!=null)for(let n of Object.keys(r))r[n]=mt(r[n])}if(e.items!=null)e.items=Array.isArray(e.items)?e.items.map(mt):mt(e.items);if(e.anyOf!=null)e.anyOf=e.anyOf.map(mt);if(e.allOf!=null)e.allOf=e.allOf.map(mt);if(e.oneOf!=null)e.oneOf=e.oneOf.map(mt);let{definitions:t}=e;if(t!=null)for(let r of Object.keys(t))t[r]=mt(t[r]);return e}function mt(e){if(typeof e==="boolean")return e;return sa(e)}var iy=Symbol("Let zodToJsonSchema decide on which parser to use"),Gd={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"},ly=(e)=>typeof e==="string"?{...Gd,name:e}:{...Gd,...e};function pe(){return{}}function cy(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 uy(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 dy(){return{type:"boolean"}}function ip(e,t){return U(e.type._def,t)}var py=(e,t)=>U(e.innerType._def,t);function lp(e,t,r){let n=r!=null?r:t.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o)=>lp(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 fy(e)}}var fy=(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 my(e,t){return{...U(e.innerType._def,t),default:e.defaultValue()}}function hy(e,t){return t.effectStrategy==="input"?U(e.schema._def,t):pe()}function gy(e){return{type:"string",enum:Array.from(e.values)}}var vy=(e)=>{if("type"in e&&e.type==="string")return!1;return"allOf"in e};function yy(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(vy(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 by(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 Qo=void 0,Se={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(Qo===void 0)Qo=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u");return Qo},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 cp(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":ne(r,Se.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":ne(r,n.regex,n.message,t);break;case"cuid":ne(r,Se.cuid,n.message,t);break;case"cuid2":ne(r,Se.cuid2,n.message,t);break;case"startsWith":ne(r,RegExp(`^${ea(n.value,t)}`),n.message,t);break;case"endsWith":ne(r,RegExp(`${ea(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":{ne(r,RegExp(ea(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":ne(r,Se.base64url,n.message,t);break;case"jwt":ne(r,Se.jwt,n.message,t);break;case"cidr":{if(n.version!=="v6")ne(r,Se.ipv4Cidr,n.message,t);if(n.version!=="v4")ne(r,Se.ipv6Cidr,n.message,t);break}case"emoji":ne(r,Se.emoji(),n.message,t);break;case"ulid":{ne(r,Se.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":{ne(r,Se.base64,n.message,t);break}}break}case"nanoid":ne(r,Se.nanoid,n.message,t);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function ea(e,t){return t.patternStrategy==="escape"?xy(e):e}var wy=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function xy(e){let t="";for(let r=0;r<e.length;r++){if(!wy.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 ne(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:Jd(t,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})}else e.pattern=Jd(t,n)}function Jd(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
|
|
131
131
|
]))`;continue}else if(o[u]==="$"){a+=`($|(?=[\r
|
|
132
132
|
]))`;continue}}if(n.s&&o[u]==="."){a+=i?`${o[u]}\r
|
|
133
133
|
`:`[${o[u]}\r
|
|
134
|
-
]`;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 lp(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}=ip(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}=ap(e.keyType._def,t);return{...c,propertyNames:d}}return c}function wy(e,t){if(t.mapStrategy==="record")return lp(e,t);let r=U(e.keyType._def,{...t,currentPath:[...t.currentPath,"items","items","0"]})||pe(),n=U(e.valueType._def,{...t,currentPath:[...t.currentPath,"items","items","1"]})||pe();return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function xy(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 _y(){return{not:pe()}}function Sy(){return{type:"null"}}var Qo={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function Ty(e,t){let r=e.options instanceof Map?Array.from(e.options.values()):e.options;if(r.every((n)=>(n._def.typeName in Qo)&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,a)=>{let s=Qo[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 Iy(e,t)}var Iy=(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 Ey(e,t){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(e.innerType._def.typeName)&&(!e.innerType._def.checks||!e.innerType._def.checks.length))return{type:[Qo[e.innerType._def.typeName],"null"]};let r=U(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function ky(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 $y(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=Ry(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=My(e,t);if(a!==void 0)r.additionalProperties=a;return r}function My(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 Ry(e){try{return e.isOptional()}catch(t){return!0}}var Ay=(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:pe()},n]}:pe()},Cy=(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 Oy(e,t){return U(e.type._def,t)}function Py(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 Ny(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 zy(){return{not:pe()}}function jy(){return pe()}var Dy=(e,t)=>U(e.innerType._def,t),Uy=(e,t,r)=>{switch(t){case"ZodString":return ip(e,r);case"ZodNumber":return ky(e);case"ZodObject":return $y(e,r);case"ZodBigInt":return ly(e);case"ZodBoolean":return cy();case"ZodDate":return sp(e,r);case"ZodUndefined":return zy();case"ZodNull":return Sy();case"ZodArray":return iy(e,r);case"ZodUnion":case"ZodDiscriminatedUnion":return Ty(e,r);case"ZodIntersection":return gy(e,r);case"ZodTuple":return Ny(e,r);case"ZodRecord":return lp(e,r);case"ZodLiteral":return vy(e);case"ZodEnum":return my(e);case"ZodNativeEnum":return xy(e);case"ZodNullable":return Ey(e,r);case"ZodOptional":return Ay(e,r);case"ZodMap":return wy(e,r);case"ZodSet":return Py(e,r);case"ZodLazy":return()=>e.getter()._def;case"ZodPromise":return Oy(e,r);case"ZodNaN":case"ZodNever":return _y();case"ZodEffects":return fy(e,r);case"ZodAny":return pe();case"ZodUnknown":return jy();case"ZodDefault":return py(e,r);case"ZodBranded":return ap(e,r);case"ZodReadonly":return Dy(e,r);case"ZodCatch":return uy(e,r);case"ZodPipeline":return Cy(e,r);case"ZodFunction":case"ZodVoid":case"ZodSymbol":return;default:return((n)=>{return})(t)}},Zy=(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!==ay)return c}if(o&&!r){let c=Ly(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=Uy(e,e.typeName,t),i=typeof s==="function"?U(s(),t):s;if(i)Fy(e,t,i);if(t.postProcess){let c=t.postProcess(i,e,t);return a.jsonSchema=i,c}return a.jsonSchema=i,i}var Ly=(e,t)=>{switch(t.$refStrategy){case"root":return{$ref:e.path.join("/")};case"relative":return{$ref:Zy(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`),pe();return t.$refStrategy==="seen"?pe():void 0}}},Fy=(e,t,r)=>{if(e.description)r.description=e.description;return r},By=(e)=>{let t=sy(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}]))}},qy=(e,t)=>{var r;let n=By(t),o=typeof t==="object"&&t.definitions?Object.entries(t.definitions).reduce((u,[d,p])=>{var f;return{...u,[d]:(f=U(p._def,{...n,currentPath:[...n.basePath,n.definitionPath,d]},!0))!=null?f:pe()}},{}):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:pe(),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},ea=Symbol.for("vercel.ai.schema");function un(e){let t;return()=>{if(t==null)t=e();return t}}function vr(e,{validate:t}={}){return{[ea]:!0,_type:void 0,get jsonSchema(){if(typeof e==="function")e=e();return e},validate:t}}function Wy(e){return typeof e==="object"&&e!==null&&ea in e&&e[ea]===!0&&"jsonSchema"in e&&"validate"in e}function yr(e){return e==null?vr({type:"object",properties:{},additionalProperties:!1}):Wy(e)?e:("~standard"in e)?e["~standard"].vendor==="zod"?Ut(e):Vy(e):e()}function Vy(e){return vr(()=>{if(!Gy(e))throw Error(`Standard schema vendor '${e["~standard"].vendor}' does not support JSON Schema conversion.`);return oa(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 $e({value:t,cause:r.issues})}}})}function Gy(e){return e["~standard"].jsonSchema!=null}function Jy(e,t){var r;let n=(r=t==null?void 0:t.useReferences)!=null?r:!1;return vr(()=>qy(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 Ky(e,t){var r;let n=(r=t==null?void 0:t.useReferences)!=null?r:!1;return vr(()=>oa(Fo(e,{target:"draft-7",io:"input",reused:n?"ref":"inline"})),{validate:async(o)=>{let a=await sn(e,o);return a.success?{success:!0,value:a.data}:{success:!1,error:a.error}}})}function Hy(e){return"_zod"in e}function Ut(e,t){if(Hy(e))return Ky(e,t);else return Jy(e,t)}async function dn({value:e,schema:t,context:r}){let n=await Zt({value:e,schema:t,context:r});if(!n.success)throw $e.wrap({value:e,cause:n.error,context:r});return n.value}async function Zt({value:e,schema:t,context:r}){let n=yr(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:$e.wrap({value:e,cause:o.error,context:r}),rawValue:e}}catch(o){return{success:!1,error:$e.wrap({value:e,cause:o,context:r}),rawValue:e}}}async function Ye({text:e,schema:t}){try{let r=oy(e);if(t==null)return{success:!0,value:r,rawValue:r};return await Zt({value:r,schema:t})}catch(r){return{success:!1,error:Ln.isInstance(r)?r:new Ln({text:e,cause:r}),rawValue:void 0}}}async function aa(e){if(typeof e==="function")e=e();return Promise.resolve(e)}var cp="AI_SerializationError",up=`vercel.ai.error.${cp}`,Yy=Symbol.for(up),Gd,Jd,d0=class extends(Jd=k,Gd=Yy,Jd){constructor({message:e="Failed to serialize value.",cause:t}={}){super({name:cp,message:e,cause:t});this[Gd]=!0}static isInstance(e){return k.hasMarker(e,up)}};var eb=Object.defineProperty,tb=(e,t)=>{for(var r in t)eb(e,r,{get:t[r],enumerable:!0})},rb="AI_InvalidArgumentError",nb=`vercel.ai.error.${rb}`,ob=Symbol.for(nb),ab;ab=ob;var sb="AI_InvalidStreamPartError",ib=`vercel.ai.error.${sb}`,lb=Symbol.for(ib),cb;cb=lb;var ub="AI_InvalidToolApprovalError",db=`vercel.ai.error.${ub}`,pb=Symbol.for(db),fb;fb=pb;var mb="AI_InvalidToolApprovalSignatureError",hb=`vercel.ai.error.${mb}`,gb=Symbol.for(hb),vb;vb=gb;var yb="AI_InvalidToolInputError",bb=`vercel.ai.error.${yb}`,wb=Symbol.for(bb),xb;xb=wb;var _b="AI_ToolCallNotFoundForApprovalError",Sb=`vercel.ai.error.${_b}`,Tb=Symbol.for(Sb),Ib;Ib=Tb;var Eb="AI_MissingToolResultsError",kb=`vercel.ai.error.${Eb}`,$b=Symbol.for(kb),Mb;Mb=$b;var Rb="AI_NoImageGeneratedError",Ab=`vercel.ai.error.${Rb}`,Cb=Symbol.for(Ab),Ob;Ob=Cb;var vp="AI_NoObjectGeneratedError",yp=`vercel.ai.error.${vp}`,Pb=Symbol.for(yp),bp,Qe=class extends k{constructor({message:e="No object generated.",cause:t,text:r,response:n,usage:o,finishReason:a}){super({name:vp,message:e,cause:t});this[bp]=!0,this.text=r,this.response=n,this.usage=o,this.finishReason=a}static isInstance(e){return k.hasMarker(e,yp)}};bp=Pb;var Nb="AI_NoOutputGeneratedError",zb=`vercel.ai.error.${Nb}`,jb=Symbol.for(zb),Db;Db=jb;var Ub="AI_NoSpeechGeneratedError",Zb=`vercel.ai.error.${Ub}`,Lb=Symbol.for(Zb),Fb;Fb=Lb;var Bb="AI_NoTranscriptGeneratedError",qb=`vercel.ai.error.${Bb}`,Wb=Symbol.for(qb),Vb;Vb=Wb;var Gb="AI_NoTranslationGeneratedError",Jb=`vercel.ai.error.${Gb}`,Kb=Symbol.for(Jb),Hb;Hb=Kb;var Yb="AI_NoVideoGeneratedError",Xb=`vercel.ai.error.${Yb}`,Qb=Symbol.for(Xb),ew;ew=Qb;var tw="AI_NoSuchToolError",rw=`vercel.ai.error.${tw}`,nw=Symbol.for(rw),ow;ow=nw;var aw="AI_ToolCallRepairError",sw=`vercel.ai.error.${aw}`,iw=Symbol.for(sw),lw;lw=iw;var wp="AI_UIMessageStreamError",xp=`vercel.ai.error.${wp}`,cw=Symbol.for(xp),_p,gt=class extends k{constructor({chunkType:e,chunkId:t,message:r}){super({name:wp,message:r});this[_p]=!0,this.chunkType=e,this.chunkId=t}static isInstance(e){return k.hasMarker(e,xp)}};_p=cw;var uw="AI_InvalidDataContentError",dw=`vercel.ai.error.${uw}`,pw=Symbol.for(dw),fw;fw=pw;var mw="AI_InvalidMessageRoleError",hw=`vercel.ai.error.${mw}`,gw=Symbol.for(hw),vw;vw=gw;var Sp="AI_MessageConversionError",Tp=`vercel.ai.error.${Sp}`,yw=Symbol.for(Tp),Ip,bw=class extends k{constructor({originalMessage:e,message:t}){super({name:Sp,message:t});this[Ip]=!0,this.originalMessage=e}static isInstance(e){return k.hasMarker(e,Tp)}};Ip=yw;var ww="AI_RetryError",xw=`vercel.ai.error.${ww}`,_w=Symbol.for(xw),Sw;Sw=_w;var Tw="7.0.67",Iw=async({url:e,maxBytes:t,abortSignal:r})=>{var n;let o=e.toString();try{let a=Dt({},`ai-sdk/${Tw}`,rp()),s=await ep({url:o,headers:a,abortSignal:r});if(!s.ok)throw await cn(s),new oe({url:o,statusCode:s.status,statusText:s.statusText});return{data:await tp({response:s,url:o,maxBytes:t!=null?t:na}),mediaType:(n=s.headers.get("content-type"))!=null?n:void 0}}catch(a){if(oe.isInstance(a))throw a;throw new oe({url:o,cause:a})}};function Ep(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]=Ep(a,o);else r[n]=o}}return r}async function dp({toolCallId:e,input:t,output:r,tool:n,errorMode:o}){if(o==="text")return{type:"error-text",value:Qt(r)};else if(o==="json")return{type:"error-json",value:pp(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:pp(r)}}function pp(e){return e===void 0?null:e}var l={array:Vo,boolean:Ed,custom:Dd,discriminatedUnion:Cd,enum:Jo,instanceof:Ud,lazy:jd,literal:Pd,looseObject:Rd,never:Wo,null:kd,number:Id,object:Md,record:Od,string:qo,union:Go,unknown:hr},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())),xr=l.union([l.string(),l.instanceof(Uint8Array),l.instanceof(ArrayBuffer),l.custom(np,{message:"Must be a Buffer"})]),da=l.record(l.string(),l.string()),kp=l.object({type:l.literal("text"),text:l.string(),providerOptions:S.optional()}),Ew=l.object({type:l.literal("image"),image:l.union([xr,l.instanceof(URL),da]),mediaType:l.string().optional(),providerOptions:S.optional()}),$p=l.discriminatedUnion("type",[l.object({type:l.literal("data"),data:xr}),l.object({type:l.literal("url"),url:l.instanceof(URL)}),l.object({type:l.literal("reference"),reference:da}),l.object({type:l.literal("text"),text:l.string()})]),kw=l.discriminatedUnion("type",[l.object({type:l.literal("data"),data:xr}),l.object({type:l.literal("url"),url:l.instanceof(URL)})]),Mp=l.object({type:l.literal("file"),data:l.union([$p,xr,l.instanceof(URL),da]),filename:l.string().optional(),mediaType:l.string(),providerOptions:S.optional()}),$w=l.object({type:l.literal("reasoning"),text:l.string(),providerOptions:S.optional()}),Mw=l.object({type:l.literal("custom"),kind:l.string().transform((e)=>e),providerOptions:S.optional()}),Rw=l.object({type:l.literal("reasoning-file"),data:l.union([kw,xr,l.instanceof(URL)]),mediaType:l.string(),providerOptions:S.optional()}),Aw=l.object({type:l.literal("tool-call"),toolCallId:l.string(),toolName:l.string(),input:l.unknown(),providerOptions:S.optional(),providerExecuted:l.boolean().optional()}),Cw=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:$p,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()})]))})]),Rp=l.object({type:l.literal("tool-result"),toolCallId:l.string(),toolName:l.string(),output:Cw,providerOptions:S.optional()}),Ow=l.object({type:l.literal("tool-approval-request"),approvalId:l.string(),toolCallId:l.string()}),Pw=l.object({type:l.literal("tool-approval-response"),approvalId:l.string(),approved:l.boolean(),reason:l.string().optional()}),Nw=l.object({role:l.literal("system"),content:l.string(),providerOptions:S.optional()}),zw=l.object({role:l.literal("user"),content:l.union([l.string(),l.array(l.union([kp,Ew,Mp]))]),providerOptions:S.optional()}),jw=l.object({role:l.literal("assistant"),content:l.union([l.string(),l.array(l.union([kp,Mw,Mp,$w,Rw,Aw,Rp,Ow]))]),providerOptions:S.optional()}),Dw=l.object({role:l.literal("tool"),content:l.array(l.union([Rp,Pw])),providerOptions:S.optional()}),A0=l.union([Nw,zw,jw,Dw]);function fp(e,t){return e!=null&&Object.hasOwn(e,t)?e[t]:void 0}var Uw={};tb(Uw,{array:()=>Bw,choice:()=>qw,json:()=>Ww,object:()=>Fw,text:()=>Lw});function Zw(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,f){switch(d){case'"':{r=p,t.pop(),t.push(f),t.push("INSIDE_STRING");break}case"f":case"t":case"n":{r=p,n=p,t.pop(),t.push(f),t.push("INSIDE_LITERAL");break}case"-":{t.pop(),t.push(f),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(f),t.push("INSIDE_NUMBER");break}case"{":{r=p,t.pop(),t.push(f),t.push("INSIDE_OBJECT_START");break}case"[":{r=p,t.pop(),t.push(f),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 m=e.substring(n,d+1);if(!"false".startsWith(m)&&!"true".startsWith(m)&&!"null".startsWith(m)){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 f=e.substring(n,e.length);if("true".startsWith(f))u+="true".slice(f.length);else if("false".startsWith(f))u+="false".slice(f.length);else if("null".startsWith(f))u+="null".slice(f.length)}}return u}async function _r(e){if(e===void 0)return{value:void 0,state:"undefined-input"};let t=await Ye({text:e});if(t.success)return{value:t.value,state:"successful-parse"};if(t=await Ye({text:Zw(e)}),t.success)return{value:t.value,state:"repaired-parse"};return{value:void 0,state:"failed-parse"}}var Lw=()=>({name:"text",responseFormat:Promise.resolve({type:"text"}),async parseCompleteOutput({text:e}){return e},async parsePartialOutput({text:e}){return{partial:e}},createElementStreamTransform(){return}}),Fw=({schema:e,name:t,description:r})=>{let n=yr(e);return{name:"object",responseFormat:aa(n.jsonSchema).then((o)=>({type:"json",schema:o,...t!=null&&{name:t},...r!=null&&{description:r}})),async parseCompleteOutput({text:o},a){let s=await Ye({text:o});if(!s.success)throw new Qe({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 Zt({value:s.value,schema:n});if(!i.success)throw new Qe({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 _r(o);switch(a.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return{partial:a.value}}},createElementStreamTransform(){return}}},Bw=({element:e,name:t,description:r})=>{let n=yr(e);return{name:"array",responseFormat:aa(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 Ye({text:o});if(!s.success)throw new Qe({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 Qe({message:"No object generated: response did not match schema.",cause:new $e({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 Zt({value:u,schema:n});if(!d.success)throw new Qe({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 _r(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 Zt({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])}})}}},qw=({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 Ye({text:n});if(!a.success)throw new Qe({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 Qe({message:"No object generated: response did not match schema.",cause:new $e({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 _r(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}}),Ww=({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 Ye({text:r});if(!o.success)throw new Qe({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 _r(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 N0=G({prefix:"aitxt",size:24}),z0=G({prefix:"call",size:24});function Ap({stream:e}){return e.pipeThrough(new TransformStream({transform(t,r){if(t.type==="text-delta")r.enqueue(t.text)}}))}var D0=class extends TransformStream{constructor(){super({transform(e,t){t.enqueue(`data: ${JSON.stringify(e)}
|
|
134
|
+
]`;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 up(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}=cp(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}=ip(e.keyType._def,t);return{...c,propertyNames:d}}return c}function _y(e,t){if(t.mapStrategy==="record")return up(e,t);let r=U(e.keyType._def,{...t,currentPath:[...t.currentPath,"items","items","0"]})||pe(),n=U(e.valueType._def,{...t,currentPath:[...t.currentPath,"items","items","1"]})||pe();return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function Sy(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 Ty(){return{not:pe()}}function Iy(){return{type:"null"}}var ta={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function Ey(e,t){let r=e.options instanceof Map?Array.from(e.options.values()):e.options;if(r.every((n)=>(n._def.typeName in ta)&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,a)=>{let s=ta[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 ky(e,t)}var ky=(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 $y(e,t){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(e.innerType._def.typeName)&&(!e.innerType._def.checks||!e.innerType._def.checks.length))return{type:[ta[e.innerType._def.typeName],"null"]};let r=U(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function My(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 Ry(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=Cy(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=Ay(e,t);if(a!==void 0)r.additionalProperties=a;return r}function Ay(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 Cy(e){try{return e.isOptional()}catch(t){return!0}}var Oy=(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:pe()},n]}:pe()},Py=(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 Ny(e,t){return U(e.type._def,t)}function zy(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 jy(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 Dy(){return{not:pe()}}function Uy(){return pe()}var Zy=(e,t)=>U(e.innerType._def,t),Ly=(e,t,r)=>{switch(t){case"ZodString":return cp(e,r);case"ZodNumber":return My(e);case"ZodObject":return Ry(e,r);case"ZodBigInt":return uy(e);case"ZodBoolean":return dy();case"ZodDate":return lp(e,r);case"ZodUndefined":return Dy();case"ZodNull":return Iy();case"ZodArray":return cy(e,r);case"ZodUnion":case"ZodDiscriminatedUnion":return Ey(e,r);case"ZodIntersection":return yy(e,r);case"ZodTuple":return jy(e,r);case"ZodRecord":return up(e,r);case"ZodLiteral":return by(e);case"ZodEnum":return gy(e);case"ZodNativeEnum":return Sy(e);case"ZodNullable":return $y(e,r);case"ZodOptional":return Oy(e,r);case"ZodMap":return _y(e,r);case"ZodSet":return zy(e,r);case"ZodLazy":return()=>e.getter()._def;case"ZodPromise":return Ny(e,r);case"ZodNaN":case"ZodNever":return Ty();case"ZodEffects":return hy(e,r);case"ZodAny":return pe();case"ZodUnknown":return Uy();case"ZodDefault":return my(e,r);case"ZodBranded":return ip(e,r);case"ZodReadonly":return Zy(e,r);case"ZodCatch":return py(e,r);case"ZodPipeline":return Py(e,r);case"ZodFunction":case"ZodVoid":case"ZodSymbol":return;default:return((n)=>{return})(t)}},Fy=(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!==iy)return c}if(o&&!r){let c=By(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=Ly(e,e.typeName,t),i=typeof s==="function"?U(s(),t):s;if(i)qy(e,t,i);if(t.postProcess){let c=t.postProcess(i,e,t);return a.jsonSchema=i,c}return a.jsonSchema=i,i}var By=(e,t)=>{switch(t.$refStrategy){case"root":return{$ref:e.path.join("/")};case"relative":return{$ref:Fy(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`),pe();return t.$refStrategy==="seen"?pe():void 0}}},qy=(e,t,r)=>{if(e.description)r.description=e.description;return r},Wy=(e)=>{let t=ly(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}]))}},Vy=(e,t)=>{var r;let n=Wy(t),o=typeof t==="object"&&t.definitions?Object.entries(t.definitions).reduce((u,[d,p])=>{var f;return{...u,[d]:(f=U(p._def,{...n,currentPath:[...n.basePath,n.definitionPath,d]},!0))!=null?f:pe()}},{}):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:pe(),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},ra=Symbol.for("vercel.ai.schema");function dn(e){let t;return()=>{if(t==null)t=e();return t}}function br(e,{validate:t}={}){return{[ra]:!0,_type:void 0,get jsonSchema(){if(typeof e==="function")e=e();return e},validate:t}}function Gy(e){return typeof e==="object"&&e!==null&&ra in e&&e[ra]===!0&&"jsonSchema"in e&&"validate"in e}function wr(e){return e==null?br({type:"object",properties:{},additionalProperties:!1}):Gy(e)?e:("~standard"in e)?e["~standard"].vendor==="zod"?Ut(e):Jy(e):e()}function Jy(e){return br(()=>{if(!Ky(e))throw Error(`Standard schema vendor '${e["~standard"].vendor}' does not support JSON Schema conversion.`);return sa(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 $e({value:t,cause:r.issues})}}})}function Ky(e){return e["~standard"].jsonSchema!=null}function Hy(e,t){var r;let n=(r=t==null?void 0:t.useReferences)!=null?r:!1;return br(()=>Vy(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 Yy(e,t){var r;let n=(r=t==null?void 0:t.useReferences)!=null?r:!1;return br(()=>sa(qo(e,{target:"draft-7",io:"input",reused:n?"ref":"inline"})),{validate:async(o)=>{let a=await ln(e,o);return a.success?{success:!0,value:a.data}:{success:!1,error:a.error}}})}function Xy(e){return"_zod"in e}function Ut(e,t){if(Xy(e))return Yy(e,t);else return Hy(e,t)}async function pn({value:e,schema:t,context:r}){let n=await Zt({value:e,schema:t,context:r});if(!n.success)throw $e.wrap({value:e,cause:n.error,context:r});return n.value}async function Zt({value:e,schema:t,context:r}){let n=wr(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:$e.wrap({value:e,cause:o.error,context:r}),rawValue:e}}catch(o){return{success:!1,error:$e.wrap({value:e,cause:o,context:r}),rawValue:e}}}async function Xe({text:e,schema:t}){try{let r=sy(e);if(t==null)return{success:!0,value:r,rawValue:r};return await Zt({value:r,schema:t})}catch(r){return{success:!1,error:Bn.isInstance(r)?r:new Bn({text:e,cause:r}),rawValue:void 0}}}async function ia(e){if(typeof e==="function")e=e();return Promise.resolve(e)}var dp="AI_SerializationError",pp=`vercel.ai.error.${dp}`,Qy=Symbol.for(pp),Kd,Hd,v0=class extends(Hd=k,Kd=Qy,Hd){constructor({message:e="Failed to serialize value.",cause:t}={}){super({name:dp,message:e,cause:t});this[Kd]=!0}static isInstance(e){return k.hasMarker(e,pp)}};var rb=Object.defineProperty,nb=(e,t)=>{for(var r in t)rb(e,r,{get:t[r],enumerable:!0})},ob="AI_InvalidArgumentError",ab=`vercel.ai.error.${ob}`,sb=Symbol.for(ab),ib;ib=sb;var lb="AI_InvalidStreamPartError",cb=`vercel.ai.error.${lb}`,ub=Symbol.for(cb),db;db=ub;var pb="AI_InvalidToolApprovalError",fb=`vercel.ai.error.${pb}`,mb=Symbol.for(fb),hb;hb=mb;var gb="AI_InvalidToolApprovalSignatureError",vb=`vercel.ai.error.${gb}`,yb=Symbol.for(vb),bb;bb=yb;var wb="AI_InvalidToolInputError",xb=`vercel.ai.error.${wb}`,_b=Symbol.for(xb),Sb;Sb=_b;var Tb="AI_ToolCallNotFoundForApprovalError",Ib=`vercel.ai.error.${Tb}`,Eb=Symbol.for(Ib),kb;kb=Eb;var $b="AI_MissingToolResultsError",Mb=`vercel.ai.error.${$b}`,Rb=Symbol.for(Mb),Ab;Ab=Rb;var Cb="AI_NoImageGeneratedError",Ob=`vercel.ai.error.${Cb}`,Pb=Symbol.for(Ob),Nb;Nb=Pb;var bp="AI_NoObjectGeneratedError",wp=`vercel.ai.error.${bp}`,zb=Symbol.for(wp),xp,et=class extends k{constructor({message:e="No object generated.",cause:t,text:r,response:n,usage:o,finishReason:a}){super({name:bp,message:e,cause:t});this[xp]=!0,this.text=r,this.response=n,this.usage=o,this.finishReason=a}static isInstance(e){return k.hasMarker(e,wp)}};xp=zb;var jb="AI_NoOutputGeneratedError",Db=`vercel.ai.error.${jb}`,Ub=Symbol.for(Db),Zb;Zb=Ub;var Lb="AI_NoSpeechGeneratedError",Fb=`vercel.ai.error.${Lb}`,Bb=Symbol.for(Fb),qb;qb=Bb;var Wb="AI_NoTranscriptGeneratedError",Vb=`vercel.ai.error.${Wb}`,Gb=Symbol.for(Vb),Jb;Jb=Gb;var Kb="AI_NoTranslationGeneratedError",Hb=`vercel.ai.error.${Kb}`,Yb=Symbol.for(Hb),Xb;Xb=Yb;var Qb="AI_NoVideoGeneratedError",ew=`vercel.ai.error.${Qb}`,tw=Symbol.for(ew),rw;rw=tw;var nw="AI_NoSuchToolError",ow=`vercel.ai.error.${nw}`,aw=Symbol.for(ow),sw;sw=aw;var iw="AI_ToolCallRepairError",lw=`vercel.ai.error.${iw}`,cw=Symbol.for(lw),uw;uw=cw;var _p="AI_UIMessageStreamError",Sp=`vercel.ai.error.${_p}`,dw=Symbol.for(Sp),Tp,ht=class extends k{constructor({chunkType:e,chunkId:t,message:r}){super({name:_p,message:r});this[Tp]=!0,this.chunkType=e,this.chunkId=t}static isInstance(e){return k.hasMarker(e,Sp)}};Tp=dw;var pw="AI_InvalidDataContentError",fw=`vercel.ai.error.${pw}`,mw=Symbol.for(fw),hw;hw=mw;var gw="AI_InvalidMessageRoleError",vw=`vercel.ai.error.${gw}`,yw=Symbol.for(vw),bw;bw=yw;var Ip="AI_MessageConversionError",Ep=`vercel.ai.error.${Ip}`,ww=Symbol.for(Ep),kp,xw=class extends k{constructor({originalMessage:e,message:t}){super({name:Ip,message:t});this[kp]=!0,this.originalMessage=e}static isInstance(e){return k.hasMarker(e,Ep)}};kp=ww;var _w="AI_RetryError",Sw=`vercel.ai.error.${_w}`,Tw=Symbol.for(Sw),Iw;Iw=Tw;var Ew="7.0.68",kw=async({url:e,maxBytes:t,abortSignal:r})=>{var n;let o=e.toString();try{let a=Dt({},`ai-sdk/${Ew}`,op()),s=await rp({url:o,headers:a,abortSignal:r});if(!s.ok)throw await un(s),new oe({url:o,statusCode:s.status,statusText:s.statusText});return{data:await np({response:s,url:o,maxBytes:t!=null?t:aa}),mediaType:(n=s.headers.get("content-type"))!=null?n:void 0}}catch(a){if(oe.isInstance(a))throw a;throw new oe({url:o,cause:a})}};function $p(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]=$p(a,o);else r[n]=o}}return r}async function fp({toolCallId:e,input:t,output:r,tool:n,errorMode:o}){if(o==="text")return{type:"error-text",value:tr(r)};else if(o==="json")return{type:"error-json",value:mp(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:mp(r)}}function mp(e){return e===void 0?null:e}var l={array:Jo,boolean:$d,custom:Zd,discriminatedUnion:Pd,enum:Ho,instanceof:Ld,lazy:Ud,literal:zd,looseObject:Cd,never:Go,null:Md,number:kd,object:Ad,record:Nd,string:Vo,union:Ko,unknown:vr},gt=l.lazy(()=>l.union([l.null(),l.string(),l.number(),l.boolean(),l.record(l.string(),gt.optional()),l.array(gt)])),S=l.record(l.string(),l.record(l.string(),gt.optional())),Sr=l.union([l.string(),l.instanceof(Uint8Array),l.instanceof(ArrayBuffer),l.custom(ap,{message:"Must be a Buffer"})]),fa=l.record(l.string(),l.string()),Mp=l.object({type:l.literal("text"),text:l.string(),providerOptions:S.optional()}),$w=l.object({type:l.literal("image"),image:l.union([Sr,l.instanceof(URL),fa]),mediaType:l.string().optional(),providerOptions:S.optional()}),Rp=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:fa}),l.object({type:l.literal("text"),text:l.string()})]),Mw=l.discriminatedUnion("type",[l.object({type:l.literal("data"),data:Sr}),l.object({type:l.literal("url"),url:l.instanceof(URL)})]),Ap=l.object({type:l.literal("file"),data:l.union([Rp,Sr,l.instanceof(URL),fa]),filename:l.string().optional(),mediaType:l.string(),providerOptions:S.optional()}),Rw=l.object({type:l.literal("reasoning"),text:l.string(),providerOptions:S.optional()}),Aw=l.object({type:l.literal("custom"),kind:l.string().transform((e)=>e),providerOptions:S.optional()}),Cw=l.object({type:l.literal("reasoning-file"),data:l.union([Mw,Sr,l.instanceof(URL)]),mediaType:l.string(),providerOptions:S.optional()}),Ow=l.object({type:l.literal("tool-call"),toolCallId:l.string(),toolName:l.string(),input:l.unknown(),providerOptions:S.optional(),providerExecuted:l.boolean().optional()}),Pw=l.discriminatedUnion("type",[l.object({type:l.literal("text"),value:l.string(),providerOptions:S.optional()}),l.object({type:l.literal("json"),value:gt,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:gt,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:Rp,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()})]))})]),Cp=l.object({type:l.literal("tool-result"),toolCallId:l.string(),toolName:l.string(),output:Pw,providerOptions:S.optional()}),Nw=l.object({type:l.literal("tool-approval-request"),approvalId:l.string(),toolCallId:l.string()}),zw=l.object({type:l.literal("tool-approval-response"),approvalId:l.string(),approved:l.boolean(),reason:l.string().optional()}),jw=l.object({role:l.literal("system"),content:l.string(),providerOptions:S.optional()}),Dw=l.object({role:l.literal("user"),content:l.union([l.string(),l.array(l.union([Mp,$w,Ap]))]),providerOptions:S.optional()}),Uw=l.object({role:l.literal("assistant"),content:l.union([l.string(),l.array(l.union([Mp,Aw,Ap,Rw,Cw,Ow,Cp,Nw]))]),providerOptions:S.optional()}),Zw=l.object({role:l.literal("tool"),content:l.array(l.union([Cp,zw])),providerOptions:S.optional()}),j0=l.union([jw,Dw,Uw,Zw]);function hp(e,t){return e!=null&&Object.hasOwn(e,t)?e[t]:void 0}var Lw={};nb(Lw,{array:()=>Ww,choice:()=>Vw,json:()=>Gw,object:()=>qw,text:()=>Bw});function Fw(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,f){switch(d){case'"':{r=p,t.pop(),t.push(f),t.push("INSIDE_STRING");break}case"f":case"t":case"n":{r=p,n=p,t.pop(),t.push(f),t.push("INSIDE_LITERAL");break}case"-":{t.pop(),t.push(f),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(f),t.push("INSIDE_NUMBER");break}case"{":{r=p,t.pop(),t.push(f),t.push("INSIDE_OBJECT_START");break}case"[":{r=p,t.pop(),t.push(f),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 m=e.substring(n,d+1);if(!"false".startsWith(m)&&!"true".startsWith(m)&&!"null".startsWith(m)){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 f=e.substring(n,e.length);if("true".startsWith(f))u+="true".slice(f.length);else if("false".startsWith(f))u+="false".slice(f.length);else if("null".startsWith(f))u+="null".slice(f.length)}}return u}async function Tr(e){if(e===void 0)return{value:void 0,state:"undefined-input"};let t=await Xe({text:e});if(t.success)return{value:t.value,state:"successful-parse"};if(t=await Xe({text:Fw(e)}),t.success)return{value:t.value,state:"repaired-parse"};return{value:void 0,state:"failed-parse"}}var Bw=()=>({name:"text",responseFormat:Promise.resolve({type:"text"}),async parseCompleteOutput({text:e}){return e},async parsePartialOutput({text:e}){return{partial:e}},createElementStreamTransform(){return}}),qw=({schema:e,name:t,description:r})=>{let n=wr(e);return{name:"object",responseFormat:ia(n.jsonSchema).then((o)=>({type:"json",schema:o,...t!=null&&{name:t},...r!=null&&{description:r}})),async parseCompleteOutput({text:o},a){let s=await Xe({text:o});if(!s.success)throw new et({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 Zt({value:s.value,schema:n});if(!i.success)throw new et({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 Tr(o);switch(a.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return{partial:a.value}}},createElementStreamTransform(){return}}},Ww=({element:e,name:t,description:r})=>{let n=wr(e);return{name:"array",responseFormat:ia(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 Xe({text:o});if(!s.success)throw new et({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 et({message:"No object generated: response did not match schema.",cause:new $e({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 Zt({value:u,schema:n});if(!d.success)throw new et({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 Tr(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 Zt({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])}})}}},Vw=({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 Xe({text:n});if(!a.success)throw new et({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 et({message:"No object generated: response did not match schema.",cause:new $e({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 Tr(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}}),Gw=({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 Xe({text:r});if(!o.success)throw new et({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 Tr(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 L0=G({prefix:"aitxt",size:24}),F0=G({prefix:"call",size:24});function Op({stream:e}){return e.pipeThrough(new TransformStream({transform(t,r){if(t.type==="text-delta")r.enqueue(t.text)}}))}var q0=class extends TransformStream{constructor(){super({transform(e,t){t.enqueue(`data: ${JSON.stringify(e)}
|
|
135
135
|
|
|
136
136
|
`)},flush(e){e.enqueue(`data: [DONE]
|
|
137
137
|
|
|
138
|
-
`)}})}};function Vw({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 br=l.record(l.string(),vt.optional()),L0=un(()=>Ut(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:br.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:br.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:br.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:br.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:br.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("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 Gw(e){return e.type.startsWith("data-")}function wr(){return Object.create(null)}function sa(e){return e.type.startsWith("data-")}function ia(e){return e.type==="text"}function mp(e){return e.type==="custom"}function la(e){return e.type==="file"}function hp(e){return e.type==="reasoning-file"}function gp(e){return e.type==="reasoning"}function ca(e){return e.type.startsWith("tool-")}function Cp(e){return e.type==="dynamic-tool"}function ie(e){return ca(e)||Cp(e)}function ua(e){return e.type.split("-").slice(1).join("-")}function Xe(e){return Cp(e)?e.toolName:ua(e)}function Op({lastMessage:e,messageId:t}){return{message:(e==null?void 0:e.role)==="assistant"?e:{id:t,metadata:void 0,role:"assistant",parts:[]},activeTextParts:wr(),activeReasoningParts:wr(),partialToolCalls:wr()}}function Pp({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,f,m,y;function v(){let h=u.message.parts,N=h.length-1;while(N>=0&&h[N].type!=="step-start")N--;return h.slice(N+1)}function _(){return v().filter(ie)}function j(h){let V=_().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(ie(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 C(h){let V=u.message.parts.filter(ie).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:v().find((Y)=>ca(Y)&&Y.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 Y=M.providerMetadata;if(Y!=null)if(h.state==="output-available"||h.state==="output-error"){let Ue=K;Ue.resultProviderMetadata=Y}else K.callProviderMetadata=Y}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:v().find((Ue)=>Ue.type==="dynamic-tool"&&Ue.toolCallId===h.toolCallId),D=h,Y=M;if(M!=null){if(M.state=h.state,Y.toolName=h.toolName,Y.input=D.input,Y.output=D.output,Y.errorText=D.errorText,Y.rawInput=(V=D.rawInput)!=null?V:Y.rawInput,Y.preliminary=D.preliminary,h.title!==void 0)Y.title=h.title;if(h.toolMetadata!==void 0)Y.toolMetadata=h.toolMetadata;Y.providerExecuted=(K=D.providerExecuted)!=null?K:M.providerExecuted;let Ue=D.providerMetadata;if(Ue!=null)if(h.state==="output-available"||h.state==="output-error"){let Jf=M;Jf.resultProviderMetadata=Ue}else M.callProviderMetadata=Ue}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?Ep(u.message.metadata,h):h;if(t!=null)await dn({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=(f=i.providerMetadata)!=null?f: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=(m=i.providerMetadata)!=null?m: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=v().filter(ca);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 _r(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=v().filter(ie).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=C(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:ua(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:ua(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=wr(),u.activeReasoningParts=wr();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(Gw(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 dn({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 Jw({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(C,Z){if(C.type==="start"){let R=C;if(R.messageId==null&&e!=null)R.messageId=e}if(C.type==="abort")u=!0;Z.enqueue(C)}})),p=r!=null?r:n,f=o!=null?o:a;if(f==null&&p==null)return d;let m=Op({lastMessage:c?structuredClone(c):void 0,messageId:e!=null?e:""}),y=async(C)=>{await C({state:m,write:()=>{}})},v=!1,_=async()=>{if(v||!f)return;v=!0;let C=m.message.id===(c==null?void 0:c.id);await f({isAborted:u,isContinuation:C,responseMessage:m.message,messages:[...C?t.slice(0,-1):t,m.message],finishReason:m.finishReason})},j=async()=>{if(!p)return;let C=m.message.id===(c==null?void 0:c.id);try{await p({isContinuation:C,responseMessage:structuredClone(m.message),messages:[...C?t.slice(0,-1):t,structuredClone(m.message)]})}catch(Z){s(Z)}};return Pp({stream:d,runUpdateMessageJob:y,onError:s}).pipeThrough(new TransformStream({async transform(C,Z){if(C.type==="finish-step")await j();Z.enqueue(C)},async cancel(){await _()},async flush(){await _()}}))}function Kw(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 f=t==null?void 0:t[p.toolName];if(f==null)return p.dynamic;return(f==null?void 0:f.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 Np({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 f=u!=null?Vw({originalMessages:c,responseMessageId:u}):void 0,m=e.pipeThrough(new TransformStream({transform:async(y,v)=>{let _=i==null?void 0:i({part:y}),j=Kw(y,{tools:t,sendReasoning:r,sendSources:n,sendStart:o,sendFinish:a,onError:s,messageMetadata:_,responseMessageId:f});if(j!=null)v.enqueue(j);if(_!=null&&y.type!=="start"&&y.type!=="finish")v.enqueue({type:"message-metadata",messageMetadata:_})}}));return Jw({stream:m,messageId:f!=null?f:u==null?void 0:u(),originalMessages:c,onEnd:d!=null?d:p,onError:s})}function Hw(e){return Yw(e.pipeThrough(new TransformStream))}function Yw(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 Xw({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 B0=G({prefix:"aitxt",size:24}),q0=G({prefix:"call",size:24});var W0=G({prefix:"aitxt",size:24}),V0=G({prefix:"call",size:24});function Qw(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 zp({message:e,stream:t,onError:r,terminateOnError:n=!1}){var o;let a,s=!1,i=new ReadableStream({start(d){a=d}}),c=Op({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 Xw({stream:Pp({stream:t,runUpdateMessageJob(d){return d({state:c,write:()=>{a==null||a.enqueue(Qw(c.message))}})},onError:u}),onError:u}).finally(()=>{if(!s)a==null||a.close()}),Hw(i)}async function pn(e,t){let r=[];if(t==null?void 0:t.ignoreIncompleteToolCalls)e=e.map((n)=>({...n,parts:n.parts.filter((o)=>!ie(o)||o.state==="approval-responded"||o.state==="output-available"||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(ia(o))return{type:"text",text:o.text,...o.providerMetadata!=null?{providerOptions:o.providerMetadata}:{}};if(la(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(sa(o))return(a=t==null?void 0:t.convertDataPart)==null?void 0:a.call(t,o)}).filter(op)});break}case"assistant":{if(n.parts!=null){let o=[];async function a(){var s,i,c,u,d,p,f;if(o.length===0)return;let m=[];for(let v of o)if(ia(v))m.push({type:"text",text:v.text,...v.providerMetadata!=null?{providerOptions:v.providerMetadata}:{}});else if(mp(v))m.push({type:"custom",kind:v.kind,...v.providerMetadata!=null?{providerOptions:v.providerMetadata}:{}});else if(la(v))m.push({type:"file",mediaType:v.mediaType,filename:v.filename,data:v.providerReference!=null?{type:"reference",reference:v.providerReference}:{type:"url",url:new URL(v.url)},...v.providerMetadata!=null?{providerOptions:v.providerMetadata}:{}});else if(hp(v))m.push({type:"reasoning-file",data:{type:"url",url:new URL(v.url)},mediaType:v.mediaType,providerOptions:v.providerMetadata});else if(gp(v))m.push({type:"reasoning",text:v.text,providerOptions:v.providerMetadata});else if(ie(v)){let _=Xe(v);if(v.state!=="input-streaming"){if(m.push({type:"tool-call",toolCallId:v.toolCallId,toolName:_,input:v.state==="output-error"?(s=v.input)!=null?s:("rawInput"in v)?v.rawInput:void 0:v.input,providerExecuted:v.providerExecuted,...v.callProviderMetadata!=null?{providerOptions:v.callProviderMetadata}:{}}),v.approval!=null)m.push({type:"tool-approval-request",approvalId:v.approval.id,toolCallId:v.toolCallId,isAutomatic:v.approval.isAutomatic,...v.approval.signature!=null?{signature:v.approval.signature}:{}});if(v.providerExecuted===!0&&v.state!=="approval-responded"&&(v.state==="output-available"||v.state==="output-error")){let j=(i=v.resultProviderMetadata)!=null?i:v.callProviderMetadata;m.push({type:"tool-result",toolCallId:v.toolCallId,toolName:_,output:await dp({toolCallId:v.toolCallId,input:v.input,output:v.state==="output-error"?v.errorText:v.output,tool:fp(t==null?void 0:t.tools,_),errorMode:v.state==="output-error"?"json":"none"}),...j!=null?{providerOptions:j}:{}})}}}else if(sa(v)){let _=(c=t==null?void 0:t.convertDataPart)==null?void 0:c.call(t,v);if(_!=null)m.push(_)}else throw Error(`Unsupported part: ${v}`);if(m.length>0)r.push({role:"assistant",content:m});let y=o.filter((v)=>{var _;return ie(v)&&(v.providerExecuted!==!0||((_=v.approval)==null?void 0:_.approved)!=null)});if(y.length>0){let v=[];for(let _ of y){if(((u=_.approval)==null?void 0:u.approved)!=null)v.push({type:"tool-approval-response",approvalId:_.approval.id,approved:_.approval.approved,reason:_.approval.reason,providerExecuted:_.providerExecuted});if(_.state==="approval-responded"&&((d=_.approval)==null?void 0:d.approved)===!1)v.push({type:"tool-result",toolCallId:_.toolCallId,toolName:Xe(_),output:{type:"execution-denied",reason:_.approval.reason},..._.callProviderMetadata!=null?{providerOptions:_.callProviderMetadata}:{}});if(_.providerExecuted===!0)continue;switch(_.state){case"output-denied":{v.push({type:"tool-result",toolCallId:_.toolCallId,toolName:Xe(_),output:{type:"error-text",value:(f=(p=_.approval)==null?void 0:p.reason)!=null?f:"Tool call execution denied."},..._.callProviderMetadata!=null?{providerOptions:_.callProviderMetadata}:{}});break}case"output-error":case"output-available":{let j=Xe(_);v.push({type:"tool-result",toolCallId:_.toolCallId,toolName:j,output:await dp({toolCallId:_.toolCallId,input:_.input,output:_.state==="output-error"?_.errorText:_.output,tool:fp(t==null?void 0:t.tools,j),errorMode:_.state==="output-error"?"text":"none"}),..._.callProviderMetadata!=null?{providerOptions:_.callProviderMetadata}:{}});break}}}if(v.length>0)r.push({role:"tool",content:v})}o=[]}for(let s of n.parts)if(mp(s)||ia(s)||gp(s)||hp(s)||la(s)||ie(s)||sa(s))o.push(s);else if(s.type==="step-start")await a();await a();break}break}default:{let o=n.role;throw new bw({originalMessage:n,message:`Unsupported role: ${o}`})}}return r}var se=l.record(l.string(),vt.optional()),ex=l.record(l.string(),l.string()),K0=un(()=>Ut(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:ex.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:se.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:se.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:se.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:se.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:se.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:se.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:se.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:se.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:se.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:se.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:se.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:se.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:se.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:se.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 Y0=G({prefix:"call",size:24});var Q0=G({prefix:"call",size:24});var tE=G({prefix:"aiobj",size:24});function jp(e){return({url:t,abortSignal:r})=>Iw({url:t,maxBytes:e==null?void 0:e.maxBytes,abortSignal:r})}var nE=G({prefix:"aiobj",size:24});var oE=jp();var tx="AI_NoSuchProviderError",rx=`vercel.ai.error.${tx}`,nx=Symbol.for(rx),ox;ox=nx;var sE=G({prefix:"call",size:24});var iE=jp();var Yp=(e)=>{throw TypeError(e)},wa=(e,t,r)=>t.has(e)||Yp("Cannot "+r),x=(e,t,r)=>(wa(e,t,"read from private field"),r?r.call(e):t.get(e)),z=(e,t,r)=>t.has(e)?Yp("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),T=(e,t,r,n)=>(wa(e,t,"write to private field"),n?n.call(e,r):t.set(e,r),r),w=(e,t,r)=>(wa(e,t,"access private method"),r),Xp=String.fromCharCode(27),fE=new RegExp(`${Xp}\\[[0-?]*[ -/]*[@-~]`,"g"),ma=new RegExp(`^${Xp}\\[[0-?]*[ -/]*[@-~]`);function et(e){let t=0,r=0;while(r<e.length){let n=e.slice(r).match(ma);if(n){r+=n[0].length;continue}let o=e.codePointAt(r);if(o==null)break;let a=String.fromCodePoint(o);t+=Qp(o),r+=a.length}return t}function Bt(e,t){if(t<=0)return"";let r="",n=0,o=0;while(o<e.length&&n<t){let a=e.slice(o).match(ma);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=Qp(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(ma);if(!a)break;r+=a[0],o+=a[0].length}return r}function Qp(e){if(e===9)return 4;if(e<32||e>=127&&e<160)return 0;if(ax(e))return 0;return sx(e)?2:1}function ax(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 sx(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 Me={bold:"\x1B[1m",boldOff:"\x1B[22m",italic:"\x1B[3m",italicOff:"\x1B[23m"},ix="─";function lx(e){var t;let r=e.split(`
|
|
139
|
-
`),n=[];for(let o=0;o<r.length;o+=1){let a=
|
|
140
|
-
`)}function
|
|
141
|
-
`)}function
|
|
142
|
-
`)}}function Sx(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+=`${Gt}[${o+1};1H${yx}${a!=null?a:""}`}return r}var Tx="outputTokensPerSecond",me={reset:"\x1B[0m",dim:"\x1B[2m",user:"\x1B[96m",assistant:"\x1B[92m",reasoning:"\x1B[94m",tool:"\x1B[95m",error:"\x1B[91m"},Ix={user:{color:me.user,border:"─"},assistant:{color:me.assistant,border:"─"},reasoning:{color:me.reasoning,border:"·"},tool:{color:me.tool,border:"─"},error:{color:me.error,border:"─"}},Ex=500,bt="↑/↓ · PgUp/PgDn · Esc/Ctrl+C",kx="↑/↓ · PgUp/PgDn · q/Esc/Ctrl+C",Tr=`Processing input... ${bt}`,Fp=`Processing tool results... ${bt}`,ga=`Streaming... ${bt}`,Bp=`Executing tools... ${bt}`,be,Ae,St,fn,mn,hn,wn,he,Re,yt,tt,$r,le,qt,fe,rt,Mr,nt,wt,Tt,xt,Ie,_t,Ir,b,gn,vn,Er,De,rf,Wt,Rr,nf,Ar,xn,of,xa,va,yn,af,sf,_a,Sn,ee,Vt,lf,Sa,It,Tn,In,Ta,cf,ya=class{constructor(e){z(this,b),z(this,be),z(this,Ae),z(this,St),z(this,fn),z(this,mn),z(this,hn),z(this,wn),z(this,he,[]),z(this,Re,""),z(this,yt,!1),z(this,tt,0),z(this,$r,""),z(this,le,ga),z(this,qt,!1),z(this,fe,!1),z(this,rt),z(this,Mr),z(this,nt),z(this,wt),z(this,Tt,!0),z(this,xt),z(this,Ie),z(this,_t),z(this,Ir);var t,r,n,o,a,s;T(this,be,(t=e==null?void 0:e.input)!=null?t:process.stdin),T(this,Ae,(r=e==null?void 0:e.output)!=null?r:process.stdout),T(this,St,(n=e==null?void 0:e.frameBuffer)!=null?n:new xx(x(this,Ae))),T(this,fn,(o=e==null?void 0:e.tools)!=null?o:"auto-collapsed"),T(this,mn,(a=e==null?void 0:e.reasoning)!=null?a:"auto-collapsed"),T(this,hn,(s=e==null?void 0:e.responseStatistics)!=null?s:Tx),T(this,wn,e==null?void 0:e.contextSize),T(this,Mr,e==null?void 0:e.contextSize)}async readPrompt(e){var t;return w(this,b,gn).call(this,e),T(this,yt,!0),T(this,Re,(t=e==null?void 0:e.initialPrompt)!=null?t:""),T(this,le,`Type a prompt and press Enter · ${bt}`),w(this,b,nf).call(this),w(this,b,ee).call(this),await new Promise((r,n)=>{T(this,Ie,(o)=>{let a=_n(o);switch(a.type){case"character":T(this,Re,x(this,Re)+a.value),w(this,b,xn).call(this),w(this,b,ee).call(this);break;case"backspace":T(this,Re,x(this,Re).slice(0,-1)),w(this,b,xn).call(this),w(this,b,ee).call(this);break;case"enter":{let s=x(this,Re);T(this,yt,!1),w(this,b,Ar).call(this),T(this,le,Tr),w(this,b,xa).call(this,s),T(this,Re,""),w(this,b,ee).call(this),w(this,b,De).call(this),r(s);break}case"up":case"down":w(this,b,Wt).call(this,a.type);break;case"page-up":case"page-down":w(this,b,Rr).call(this,a.type);break;case"ctrl-l":w(this,b,Vt).call(this);break;case"escape":case"ctrl-c":w(this,b,Ar).call(this),w(this,b,vn).call(this),n(fa());break;case"ignore":break}}),w(this,b,Er).call(this)})}async renderStream(e,t){var r,n,o,a;w(this,b,gn).call(this,t),T(this,yt,!1),T(this,le,Tr),w(this,b,of).call(this,t==null?void 0:t.submittedPrompt),T(this,fe,!1),T(this,rt,void 0),T(this,nt,void 0),T(this,wt,void 0);let s={tools:(r=t==null?void 0:t.tools)!=null?r:x(this,fn),reasoning:(n=t==null?void 0:t.reasoning)!=null?n:x(this,mn),responseStatistics:(o=t==null?void 0:t.responseStatistics)!=null?o:x(this,hn)};w(this,b,ee).call(this);let i=new Promise((d)=>{T(this,Ir,d)});T(this,Ie,(d)=>w(this,b,rf).call(this,d)),w(this,b,Er).call(this);let c,u=Dx(w(this,b,sf).call(this,e.uiMessageStream));try{let d=zp({message:e.message,stream:u,onError:(p)=>w(this,b,_a).call(this,"Error",Mx(p))});for await(let p of $x(d,i)){if(x(this,fe))break;c=p,w(this,b,va).call(this,p,s)}if(!x(this,fe)&&c&&x(this,nt)!=null)w(this,b,va).call(this,c,s)}finally{if(T(this,Ir,void 0),x(this,fe))(a=e.abort)==null||a.call(e);if(w(this,b,De).call(this),T(this,le,x(this,fe)?"Interrupted":(t==null?void 0:t.continueSession)?`Done · Enter another prompt · ${bt}`:`Done · ${kx}`),w(this,b,ee).call(this),await w(this,b,cf).call(this,t),x(this,fe)||!(t==null?void 0:t.continueSession))w(this,b,vn).call(this)}if(x(this,fe))throw fa();return c}async readToolApproval(e,t){return w(this,b,gn).call(this,t),T(this,yt,!1),T(this,le,`Approve ${zx(e)}? y/n · ${bt}`),T(this,fe,!1),w(this,b,ee).call(this),await new Promise((r,n)=>{T(this,Ie,(o)=>{let a=_n(o);switch(a.type){case"character":{let s=a.value.toLowerCase();if(s==="y")T(this,le,`Approved · ${Tr}`),w(this,b,De).call(this),w(this,b,ee).call(this),r({approved:!0});else if(s==="n")T(this,le,`Denied · ${Tr}`),w(this,b,De).call(this),w(this,b,ee).call(this),r({approved:!1,reason:"Denied by user."});break}case"up":case"down":w(this,b,Wt).call(this,a.type);break;case"page-up":case"page-down":w(this,b,Rr).call(this,a.type);break;case"ctrl-l":w(this,b,Vt).call(this);break;case"escape":case"ctrl-c":T(this,fe,!0),w(this,b,vn).call(this),n(fa());break;default:break}}),w(this,b,Er).call(this)})}};be=new WeakMap;Ae=new WeakMap;St=new WeakMap;fn=new WeakMap;mn=new WeakMap;hn=new WeakMap;wn=new WeakMap;he=new WeakMap;Re=new WeakMap;yt=new WeakMap;tt=new WeakMap;$r=new WeakMap;le=new WeakMap;qt=new WeakMap;fe=new WeakMap;rt=new WeakMap;Mr=new WeakMap;nt=new WeakMap;wt=new WeakMap;Tt=new WeakMap;xt=new WeakMap;Ie=new WeakMap;_t=new WeakMap;Ir=new WeakMap;b=new WeakSet;gn=function(e){var t,r,n,o;if(T(this,$r,(t=e==null?void 0:e.title)!=null?t:x(this,$r)),T(this,Mr,(r=e==null?void 0:e.contextSize)!=null?r:x(this,wn)),x(this,qt))return;if(T(this,qt,!0),x(this,St).reset(),x(this,Ae).write("\x1B[?1049h\x1B[?25l"),x(this,be).isTTY)(o=(n=x(this,be)).setRawMode)==null||o.call(n,!0),x(this,be).resume();T(this,_t,()=>w(this,b,Vt).call(this)),x(this,Ae).on("resize",x(this,_t))};vn=function(){var e,t;if(w(this,b,De).call(this),w(this,b,Ar).call(this),!x(this,qt))return;if(x(this,be).isTTY)(t=(e=x(this,be)).setRawMode)==null||t.call(e,!1),x(this,be).pause();if(x(this,_t))x(this,Ae).off("resize",x(this,_t)),T(this,_t,void 0);x(this,Ae).write("\x1B[?25h\x1B[?1049l"),x(this,St).reset(),T(this,qt,!1)};Er=function(){if(x(this,Ie))x(this,be).on("data",x(this,Ie))};De=function(){if(x(this,Ie))x(this,be).off("data",x(this,Ie)),T(this,Ie,void 0)};rf=function(e){var t;let r=_n(e);switch(r.type){case"up":case"down":w(this,b,Wt).call(this,r.type);break;case"page-up":case"page-down":w(this,b,Rr).call(this,r.type);break;case"ctrl-l":w(this,b,Vt).call(this);break;case"escape":case"ctrl-c":T(this,fe,!0),(t=x(this,Ir))==null||t.call(this);break;default:break}};Wt=function(e,t=1){let r=e==="up"?t:-t;T(this,tt,w(this,b,Sa).call(this,x(this,tt)+r)),w(this,b,ee).call(this)};Rr=function(e){w(this,b,Wt).call(this,e==="page-up"?"up":"down",w(this,b,Tn).call(this))};nf=function(){var e,t;w(this,b,Ar).call(this),w(this,b,xn).call(this),T(this,xt,setInterval(()=>{T(this,Tt,!x(this,Tt)),w(this,b,ee).call(this)},Ex)),(t=(e=x(this,xt)).unref)==null||t.call(e)};Ar=function(){if(x(this,xt))clearInterval(x(this,xt)),T(this,xt,void 0);T(this,Tt,!0)};xn=function(){T(this,Tt,!0)};of=function(e){if(e==null)return;let t=x(this,he).at(-1);if((t==null?void 0:t.kind)==="user"&&t.content===e)return;w(this,b,xa).call(this,e)};xa=function(e){let t=w(this,b,It).call(this);x(this,he).push({kind:"user",title:"User",content:e}),w(this,b,Sn).call(this,t)};va=function(e,t){var r,n,o;let a=w(this,b,It).call(this),s=new Set,i=Wx(e.metadata);T(this,rt,(r=i.totalTokens)!=null?r:x(this,rt)),T(this,nt,(n=i.outputTokens)!=null?n:x(this,nt)),T(this,wt,(o=i.outputTokensPerSecond)!=null?o:x(this,wt));for(let[c,u]of e.parts.entries()){let d=jx(e.id,c);switch(u.type){case"text":{let p=u.text.trim();if(p.length===0)break;s.add(d),w(this,b,yn).call(this,{id:d,kind:"assistant",title:"Assistant",rightTitle:Jx({totalTokens:x(this,rt),outputTokens:x(this,nt),outputTokensPerSecond:x(this,wt)},t.responseStatistics),content:p});break}case"reasoning":{let p=u.text.trim();if(t.reasoning==="hidden"||p.length===0)break;s.add(d),w(this,b,yn).call(this,{id:d,kind:"reasoning",title:"Reasoning",content:p,collapsed:qp(e,c,t.reasoning,t)});break}default:if(ie(u)){if(t.tools==="hidden")break;s.add(d),w(this,b,yn).call(this,{id:d,...Rx(u,{mode:t.tools,collapsed:qp(e,c,t.tools,t)})})}break}}w(this,b,af).call(this,e.id,s),w(this,b,Sn).call(this,a)};yn=function(e){let t=e.id?x(this,he).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&&df(e,r)?r:void 0;return}x(this,he).push(e)};af=function(e,t){let r=`${e}:`;T(this,he,x(this,he).filter((n)=>n.id==null||!n.id.startsWith(r)||t.has(n.id)))};sf=async function*(e){let t=!1;for await(let r of Ux(e)){let n=Ox(r,{hasPendingToolResults:t});if(r.type==="start-step")t=!1;else if(Px(r))t=!0;if(n&&x(this,le)!==n)T(this,le,n),w(this,b,ee).call(this);else if(Cx(r)&&x(this,le)!==ga)T(this,le,ga),w(this,b,ee).call(this);if(r.type==="error")w(this,b,_a).call(this,"Error",r.errorText);if(r.type==="finish"){let o=qx(r);T(this,rt,o.totalTokens),T(this,nt,o.outputTokens),T(this,wt,o.outputTokensPerSecond)}yield r}};_a=function(e,t){let r=w(this,b,It).call(this);x(this,he).push({kind:"error",title:e,content:t}),w(this,b,Sn).call(this,r)};Sn=function(e){if(x(this,tt)!==0){let t=w(this,b,It).call(this)-e;T(this,tt,w(this,b,Sa).call(this,x(this,tt)+t))}w(this,b,ee).call(this)};ee=function(){let e=hx({width:w(this,b,In).call(this),height:w(this,b,Ta).call(this),title:x(this,$r),rightTitle:ff(x(this,rt),x(this,Mr)),visibleBodyLines:w(this,b,lf).call(this),input:x(this,Re),inputActive:x(this,yt),inputCursorVisible:x(this,Tt),status:x(this,le)});x(this,St).present(e)};Vt=function(){x(this,St).reset(),w(this,b,ee).call(this)};lf=function(){if(x(this,he).length===0)return["Waiting for input..."];let e=w(this,b,Tn).call(this),t=w(this,b,It).call(this),r=Math.max(0,t-e-x(this,tt)),n=r+e,o=[],a=0;for(let s of x(this,he)){let i=uf(s,w(this,b,In).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};Sa=function(e){let t=Math.max(0,w(this,b,It).call(this)-w(this,b,Tn).call(this));return Math.min(Math.max(0,e),t)};It=function(){if(x(this,he).length===0)return 1;let e=0;for(let t of x(this,he))e+=uf(t,w(this,b,In).call(this)-4).length;return e};Tn=function(){return Math.max(1,w(this,b,Ta).call(this)-5)};In=function(){var e;return Math.max(20,(e=x(this,Ae).columns)!=null?e:80)};Ta=function(){var e;return Math.max(8,(e=x(this,Ae).rows)!=null?e:24)};cf=async function(e){if((e==null?void 0:e.waitForExit)===!1||!x(this,be).isTTY||x(this,fe))return;await new Promise((t)=>{T(this,Ie,(r)=>{let n=_n(r);switch(n.type){case"up":case"down":w(this,b,Wt).call(this,n.type);break;case"page-up":case"page-down":w(this,b,Rr).call(this,n.type);break;case"ctrl-l":w(this,b,Vt).call(this);break;case"escape":w(this,b,De).call(this),t();break;case"character":if(n.value==="q")w(this,b,De).call(this),t();break;case"ctrl-c":w(this,b,De).call(this),process.exitCode=130,t();break;default:break}}),w(this,b,Er).call(this)})};function fa(){return Error("Interrupted")}async function*$x(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 Mx(e){if(e instanceof Error)return e.message;if(typeof e==="string")return e;return JSON.stringify(e)}function Rx(e,t){var r,n,o,a;let s=Xe(e),i=`Tool · ${(r=e.title)!=null?r:s}`,c="input"in e?e.input:void 0,u=c===void 0?"Input: (streaming...)":`Input:
|
|
143
|
-
${
|
|
138
|
+
`)}})}};function Jw({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 xr=l.record(l.string(),gt.optional()),G0=dn(()=>Ut(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:xr.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:xr.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:xr.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:xr.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:xr.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("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 Kw(e){return e.type.startsWith("data-")}function _r(){return Object.create(null)}function la(e){return e.type.startsWith("data-")}function ca(e){return e.type==="text"}function gp(e){return e.type==="custom"}function ua(e){return e.type==="file"}function vp(e){return e.type==="reasoning-file"}function yp(e){return e.type==="reasoning"}function da(e){return e.type.startsWith("tool-")}function Pp(e){return e.type==="dynamic-tool"}function le(e){return da(e)||Pp(e)}function pa(e){return e.type.split("-").slice(1).join("-")}function Qe(e){return Pp(e)?e.toolName:pa(e)}function Np({lastMessage:e,messageId:t}){return{message:(e==null?void 0:e.role)==="assistant"?e:{id:t,metadata:void 0,role:"assistant",parts:[]},activeTextParts:_r(),activeReasoningParts:_r(),partialToolCalls:_r()}}function zp({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,f,m,y;function v(){let h=u.message.parts,N=h.length-1;while(N>=0&&h[N].type!=="step-start")N--;return h.slice(N+1)}function _(){return v().filter(le)}function j(h){let V=_().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(le(D)&&D.toolCallId===h){V=D;break}}}if(V==null)throw new ht({chunkType:"tool-invocation",chunkId:h,message:`No tool invocation found for tool call ID "${h}".`});return V}function C(h){let V=u.message.parts.filter(le).find((K)=>{var M;return((M=K.approval)==null?void 0:M.id)===h});if(V==null)throw new ht({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:v().find((Y)=>da(Y)&&Y.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 Y=M.providerMetadata;if(Y!=null)if(h.state==="output-available"||h.state==="output-error"){let Ze=K;Ze.resultProviderMetadata=Y}else K.callProviderMetadata=Y}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:v().find((Ze)=>Ze.type==="dynamic-tool"&&Ze.toolCallId===h.toolCallId),D=h,Y=M;if(M!=null){if(M.state=h.state,Y.toolName=h.toolName,Y.input=D.input,Y.output=D.output,Y.errorText=D.errorText,Y.rawInput=(V=D.rawInput)!=null?V:Y.rawInput,Y.preliminary=D.preliminary,h.title!==void 0)Y.title=h.title;if(h.toolMetadata!==void 0)Y.toolMetadata=h.toolMetadata;Y.providerExecuted=(K=D.providerExecuted)!=null?K:M.providerExecuted;let Ze=D.providerMetadata;if(Ze!=null)if(h.state==="output-available"||h.state==="output-error"){let Hf=M;Hf.resultProviderMetadata=Ze}else M.callProviderMetadata=Ze}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?$p(u.message.metadata,h):h;if(t!=null)await pn({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 ht({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 ht({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=(f=i.providerMetadata)!=null?f: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 ht({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=(m=i.providerMetadata)!=null?m:h.providerMetadata,d();break}case"reasoning-end":{let h=u.activeReasoningParts[i.id];if(h==null)throw new ht({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=v().filter(da);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 ht({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 Tr(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=v().filter(le).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=C(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:pa(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:pa(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=_r(),u.activeReasoningParts=_r();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(Kw(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 pn({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 Hw({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(C,Z){if(C.type==="start"){let R=C;if(R.messageId==null&&e!=null)R.messageId=e}if(C.type==="abort")u=!0;Z.enqueue(C)}})),p=r!=null?r:n,f=o!=null?o:a;if(f==null&&p==null)return d;let m=Np({lastMessage:c?structuredClone(c):void 0,messageId:e!=null?e:""}),y=async(C)=>{await C({state:m,write:()=>{}})},v=!1,_=async()=>{if(v||!f)return;v=!0;let C=m.message.id===(c==null?void 0:c.id);await f({isAborted:u,isContinuation:C,responseMessage:m.message,messages:[...C?t.slice(0,-1):t,m.message],finishReason:m.finishReason})},j=async()=>{if(!p)return;let C=m.message.id===(c==null?void 0:c.id);try{await p({isContinuation:C,responseMessage:structuredClone(m.message),messages:[...C?t.slice(0,-1):t,structuredClone(m.message)]})}catch(Z){s(Z)}};return zp({stream:d,runUpdateMessageJob:y,onError:s}).pipeThrough(new TransformStream({async transform(C,Z){if(C.type==="finish-step")await j();Z.enqueue(C)},async cancel(){await _()},async flush(){await _()}}))}function Yw(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 f=t==null?void 0:t[p.toolName];if(f==null)return p.dynamic;return(f==null?void 0:f.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 jp({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 f=u!=null?Jw({originalMessages:c,responseMessageId:u}):void 0,m=e.pipeThrough(new TransformStream({transform:async(y,v)=>{let _=i==null?void 0:i({part:y}),j=Yw(y,{tools:t,sendReasoning:r,sendSources:n,sendStart:o,sendFinish:a,onError:s,messageMetadata:_,responseMessageId:f});if(j!=null)v.enqueue(j);if(_!=null&&y.type!=="start"&&y.type!=="finish")v.enqueue({type:"message-metadata",messageMetadata:_})}}));return Hw({stream:m,messageId:f!=null?f:u==null?void 0:u(),originalMessages:c,onEnd:d!=null?d:p,onError:s})}function Xw(e){return Qw(e.pipeThrough(new TransformStream))}function Qw(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 ex({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 K0=G({prefix:"aitxt",size:24}),H0=G({prefix:"call",size:24});var Y0=G({prefix:"aitxt",size:24}),X0=G({prefix:"call",size:24});function tx(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 Dp({message:e,stream:t,onError:r,terminateOnError:n=!1}){var o;let a,s=!1,i=new ReadableStream({start(d){a=d}}),c=Np({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 ex({stream:zp({stream:t,runUpdateMessageJob(d){return d({state:c,write:()=>{a==null||a.enqueue(tx(c.message))}})},onError:u}),onError:u}).finally(()=>{if(!s)a==null||a.close()}),Xw(i)}async function fn(e,t){let r=[];if(t==null?void 0:t.ignoreIncompleteToolCalls)e=e.map((n)=>({...n,parts:n.parts.filter((o)=>!le(o)||o.state==="approval-responded"||o.state==="output-available"||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(ca(o))return{type:"text",text:o.text,...o.providerMetadata!=null?{providerOptions:o.providerMetadata}:{}};if(ua(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(la(o))return(a=t==null?void 0:t.convertDataPart)==null?void 0:a.call(t,o)}).filter(sp)});break}case"assistant":{if(n.parts!=null){let o=[];async function a(){var s,i,c,u,d,p,f;if(o.length===0)return;let m=[];for(let v of o)if(ca(v))m.push({type:"text",text:v.text,...v.providerMetadata!=null?{providerOptions:v.providerMetadata}:{}});else if(gp(v))m.push({type:"custom",kind:v.kind,...v.providerMetadata!=null?{providerOptions:v.providerMetadata}:{}});else if(ua(v))m.push({type:"file",mediaType:v.mediaType,filename:v.filename,data:v.providerReference!=null?{type:"reference",reference:v.providerReference}:{type:"url",url:new URL(v.url)},...v.providerMetadata!=null?{providerOptions:v.providerMetadata}:{}});else if(vp(v))m.push({type:"reasoning-file",data:{type:"url",url:new URL(v.url)},mediaType:v.mediaType,providerOptions:v.providerMetadata});else if(yp(v))m.push({type:"reasoning",text:v.text,providerOptions:v.providerMetadata});else if(le(v)){let _=Qe(v);if(v.state!=="input-streaming"){if(m.push({type:"tool-call",toolCallId:v.toolCallId,toolName:_,input:v.state==="output-error"?(s=v.input)!=null?s:("rawInput"in v)?v.rawInput:void 0:v.input,providerExecuted:v.providerExecuted,...v.callProviderMetadata!=null?{providerOptions:v.callProviderMetadata}:{}}),v.approval!=null)m.push({type:"tool-approval-request",approvalId:v.approval.id,toolCallId:v.toolCallId,isAutomatic:v.approval.isAutomatic,...v.approval.signature!=null?{signature:v.approval.signature}:{}});if(v.providerExecuted===!0&&v.state!=="approval-responded"&&(v.state==="output-available"||v.state==="output-error")){let j=(i=v.resultProviderMetadata)!=null?i:v.callProviderMetadata;m.push({type:"tool-result",toolCallId:v.toolCallId,toolName:_,output:await fp({toolCallId:v.toolCallId,input:v.input,output:v.state==="output-error"?v.errorText:v.output,tool:hp(t==null?void 0:t.tools,_),errorMode:v.state==="output-error"?"json":"none"}),...j!=null?{providerOptions:j}:{}})}}}else if(la(v)){let _=(c=t==null?void 0:t.convertDataPart)==null?void 0:c.call(t,v);if(_!=null)m.push(_)}else throw Error(`Unsupported part: ${v}`);if(m.length>0)r.push({role:"assistant",content:m});let y=o.filter((v)=>{var _;return le(v)&&(v.providerExecuted!==!0||((_=v.approval)==null?void 0:_.approved)!=null)});if(y.length>0){let v=[];for(let _ of y){if(((u=_.approval)==null?void 0:u.approved)!=null)v.push({type:"tool-approval-response",approvalId:_.approval.id,approved:_.approval.approved,reason:_.approval.reason,providerExecuted:_.providerExecuted});if(_.state==="approval-responded"&&((d=_.approval)==null?void 0:d.approved)===!1)v.push({type:"tool-result",toolCallId:_.toolCallId,toolName:Qe(_),output:{type:"execution-denied",reason:_.approval.reason},..._.callProviderMetadata!=null?{providerOptions:_.callProviderMetadata}:{}});if(_.providerExecuted===!0)continue;switch(_.state){case"output-denied":{v.push({type:"tool-result",toolCallId:_.toolCallId,toolName:Qe(_),output:{type:"error-text",value:(f=(p=_.approval)==null?void 0:p.reason)!=null?f:"Tool call execution denied."},..._.callProviderMetadata!=null?{providerOptions:_.callProviderMetadata}:{}});break}case"output-error":case"output-available":{let j=Qe(_);v.push({type:"tool-result",toolCallId:_.toolCallId,toolName:j,output:await fp({toolCallId:_.toolCallId,input:_.input,output:_.state==="output-error"?_.errorText:_.output,tool:hp(t==null?void 0:t.tools,j),errorMode:_.state==="output-error"?"text":"none"}),..._.callProviderMetadata!=null?{providerOptions:_.callProviderMetadata}:{}});break}}}if(v.length>0)r.push({role:"tool",content:v})}o=[]}for(let s of n.parts)if(gp(s)||ca(s)||yp(s)||vp(s)||ua(s)||le(s)||la(s))o.push(s);else if(s.type==="step-start")await a();await a();break}break}default:{let o=n.role;throw new xw({originalMessage:n,message:`Unsupported role: ${o}`})}}return r}var ie=l.record(l.string(),gt.optional()),rx=l.record(l.string(),l.string()),tE=dn(()=>Ut(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:rx.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:ie.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:ie.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:ie.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:ie.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:ie.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:ie.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:ie.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:ie.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:ie.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:ie.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:ie.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:ie.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:ie.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:ie.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 nE=G({prefix:"call",size:24});var aE=G({prefix:"call",size:24});var iE=G({prefix:"aiobj",size:24});function Up(e){return({url:t,abortSignal:r})=>kw({url:t,maxBytes:e==null?void 0:e.maxBytes,abortSignal:r})}var cE=G({prefix:"aiobj",size:24});var uE=Up();var nx="AI_NoSuchProviderError",ox=`vercel.ai.error.${nx}`,ax=Symbol.for(ox),sx;sx=ax;var pE=G({prefix:"call",size:24});var fE=Up();var Qp=(e)=>{throw TypeError(e)},_a=(e,t,r)=>t.has(e)||Qp("Cannot "+r),x=(e,t,r)=>(_a(e,t,"read from private field"),r?r.call(e):t.get(e)),z=(e,t,r)=>t.has(e)?Qp("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),T=(e,t,r,n)=>(_a(e,t,"write to private field"),n?n.call(e,r):t.set(e,r),r),w=(e,t,r)=>(_a(e,t,"access private method"),r),ef=String.fromCharCode(27),bE=new RegExp(`${ef}\\[[0-?]*[ -/]*[@-~]`,"g"),ga=new RegExp(`^${ef}\\[[0-?]*[ -/]*[@-~]`);function tt(e){let t=0,r=0;while(r<e.length){let n=e.slice(r).match(ga);if(n){r+=n[0].length;continue}let o=e.codePointAt(r);if(o==null)break;let a=String.fromCodePoint(o);t+=tf(o),r+=a.length}return t}function Bt(e,t){if(t<=0)return"";let r="",n=0,o=0;while(o<e.length&&n<t){let a=e.slice(o).match(ga);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=tf(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(ga);if(!a)break;r+=a[0],o+=a[0].length}return r}function tf(e){if(e===9)return 4;if(e<32||e>=127&&e<160)return 0;if(ix(e))return 0;return lx(e)?2:1}function ix(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 lx(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 Me={bold:"\x1B[1m",boldOff:"\x1B[22m",italic:"\x1B[3m",italicOff:"\x1B[23m"},cx="─";function ux(e){var t;let r=e.split(`
|
|
139
|
+
`),n=[];for(let o=0;o<r.length;o+=1){let a=px(r,o);if(a!=null){n.push(...hx(a)),o=a.endIndex-1;continue}n.push(dx((t=r[o])!=null?t:""))}return n.join(`
|
|
140
|
+
`)}function dx(e){if(e.startsWith("### "))return De(`▶ ${e.slice(4)}`);if(e.startsWith("## "))return De(`■ ${e.slice(3)}`);if(e.startsWith("# "))return De(`█ ${e.slice(2)}`);let t=e.match(/^(\s*)[-+*]\s+(.*)$/);if(t){let[,r,n=""]=t;return De(`${r}•${n.length>0?` ${n}`:""}`)}if(/^\d+\. /.test(e))return De(e.replace(/^(\d+)\. /,"$1. "));if(e.startsWith("> "))return De(`│ ${e.slice(2)}`);return De(e)}function De(e){return e.replace(/`([^`]+)`/g,"$1").replace(/\*\*([^*\n]+)\*\*/g,`${Me.bold}$1${Me.boldOff}`).replace(/__([^_\n]+)__/g,`${Me.bold}$1${Me.boldOff}`).replace(/\*([^*\n]+)\*/g,`${Me.italic}$1${Me.italicOff}`).replace(/_([^_\n]+)_/g,`${Me.italic}$1${Me.italicOff}`)}function px(e,t){var r,n,o;let a=ma((r=e[t])!=null?r:"");if(a==null||a.length<2)return;let s=ma((n=e[t+1])!=null?n:"");if(s==null||s.length!==a.length)return;let i=fx(s);if(i==null)return;let c=[],u=t+2;while(u<e.length){let d=ma((o=e[u])!=null?o:"");if(d==null)break;c.push(mx(d,a.length)),u+=1}return{alignments:i,endIndex:u,header:a,rows:c}}function ma(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 fx(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 mx(e,t){return Array.from({length:t},(r,n)=>{var o;return(o=e[n])!=null?o:""})}function hx(e){let t=e.header.map((a)=>`${Me.bold}${De(a)}${Me.boldOff}`),r=e.rows.map((a)=>a.map(De)),n=[t,...r],o=e.alignments.map((a,s)=>Math.max(3,...n.map((i)=>{var c;return tt((c=i[s])!=null?c:"")})));return[Zp(t,o,e.alignments),o.map((a)=>cx.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 gx(n,(a=t[o])!=null?a:0,(s=r[o])!=null?s:"left")}).join(" ")}function gx(e,t,r){let n=Math.max(0,t-tt(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 rf="─";function vx(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[Lp(r,e.title,e.rightTitle),...i.map((u)=>Bp(u,r)),Fp(r),Lp(r,e.inputActive?"Input":"Status"),Bp(e.inputActive?`> ${e.input}${e.inputCursorVisible===!1?" ":"█"}`:(t=e.status)!=null?t:"Streaming... ↑/↓ scroll · Ctrl+C quit",r),Fp(r)].join(`
|
|
141
|
+
`)}function Lp(e,t,r){let n=Math.max(0,e-2),o=t?Bt(` ${t} `,n):"",a=r?Bt(` ${r} `,Math.max(0,n-tt(o))):"",s=Math.max(0,n-tt(o)-tt(a));return`┌${o}${rf.repeat(s)}${a}┐`}function Fp(e){return`└${rf.repeat(e-2)}┘`}function Bp(e,t){let r=t-4,n=Bt(e,r),o=" ".repeat(Math.max(0,r-tt(n)));return`│ ${n}${o} │`}var Gt="\x1B",yx=`${Gt}[H`,bx=`${Gt}[2J`,wx=`${Gt}[2K`,xx=`${Gt}[?2026h`,_x=`${Gt}[?2026l`,wn,Ft,Lt,Mr,Ir,va,nf,Sx=class{constructor(e,t){z(this,va),z(this,wn),z(this,Ft),z(this,Lt),z(this,Mr,!1),z(this,Ir,!1);var r;T(this,Ft,e.write.bind(e)),T(this,wn,(r=t==null?void 0:t.useSynchronizedUpdates)!=null?r:!0),e.write=(n,o,a)=>{if(!x(this,Mr))T(this,Ir,!0);return x(this,Ft).call(this,n,o,a)}}present(e){let t=Tx(e),r=x(this,Lt)&&!x(this,Ir)?Ix(x(this,Lt),t):`${yx}${bx}${e}`;if(T(this,Lt,t),T(this,Ir,!1),r.length===0)return;w(this,va,nf).call(this,r)}reset(){T(this,Lt,void 0)}};wn=new WeakMap;Ft=new WeakMap;Lt=new WeakMap;Mr=new WeakMap;Ir=new WeakMap;va=new WeakSet;nf=function(e){T(this,Mr,!0);try{if(!x(this,wn)){x(this,Ft).call(this,e);return}x(this,Ft).call(this,`${xx}${e}${_x}`)}finally{T(this,Mr,!1)}};function Tx(e){return{lines:e.split(`
|
|
142
|
+
`)}}function Ix(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+=`${Gt}[${o+1};1H${wx}${a!=null?a:""}`}return r}var Ex="outputTokensPerSecond",me={reset:"\x1B[0m",dim:"\x1B[2m",user:"\x1B[96m",assistant:"\x1B[92m",reasoning:"\x1B[94m",tool:"\x1B[95m",error:"\x1B[91m"},kx={user:{color:me.user,border:"─"},assistant:{color:me.assistant,border:"─"},reasoning:{color:me.reasoning,border:"·"},tool:{color:me.tool,border:"─"},error:{color:me.error,border:"─"}},$x=500,yt="↑/↓ · PgUp/PgDn · Esc/Ctrl+C",Mx="↑/↓ · PgUp/PgDn · q/Esc/Ctrl+C",Er=`Processing input... ${yt}`,qp=`Processing tool results... ${yt}`,ya=`Streaming... ${yt}`,Wp=`Executing tools... ${yt}`,be,Ae,_t,mn,hn,gn,xn,he,Re,vt,rt,Rr,ce,qt,fe,nt,Ar,ot,bt,St,wt,Ie,xt,kr,b,vn,yn,$r,Ue,of,Wt,Cr,af,Or,_n,sf,Sa,ba,bn,lf,cf,Ta,Tn,ee,Vt,uf,Ia,Tt,In,En,Ea,df,wa=class{constructor(e){z(this,b),z(this,be),z(this,Ae),z(this,_t),z(this,mn),z(this,hn),z(this,gn),z(this,xn),z(this,he,[]),z(this,Re,""),z(this,vt,!1),z(this,rt,0),z(this,Rr,""),z(this,ce,ya),z(this,qt,!1),z(this,fe,!1),z(this,nt),z(this,Ar),z(this,ot),z(this,bt),z(this,St,!0),z(this,wt),z(this,Ie),z(this,xt),z(this,kr);var t,r,n,o,a,s;T(this,be,(t=e==null?void 0:e.input)!=null?t:process.stdin),T(this,Ae,(r=e==null?void 0:e.output)!=null?r:process.stdout),T(this,_t,(n=e==null?void 0:e.frameBuffer)!=null?n:new Sx(x(this,Ae))),T(this,mn,(o=e==null?void 0:e.tools)!=null?o:"auto-collapsed"),T(this,hn,(a=e==null?void 0:e.reasoning)!=null?a:"auto-collapsed"),T(this,gn,(s=e==null?void 0:e.responseStatistics)!=null?s:Ex),T(this,xn,e==null?void 0:e.contextSize),T(this,Ar,e==null?void 0:e.contextSize)}async readPrompt(e){var t;return w(this,b,vn).call(this,e),T(this,vt,!0),T(this,Re,(t=e==null?void 0:e.initialPrompt)!=null?t:""),T(this,ce,`Type a prompt and press Enter · ${yt}`),w(this,b,af).call(this),w(this,b,ee).call(this),await new Promise((r,n)=>{T(this,Ie,(o)=>{let a=Sn(o);switch(a.type){case"character":T(this,Re,x(this,Re)+a.value),w(this,b,_n).call(this),w(this,b,ee).call(this);break;case"backspace":T(this,Re,x(this,Re).slice(0,-1)),w(this,b,_n).call(this),w(this,b,ee).call(this);break;case"enter":{let s=x(this,Re);T(this,vt,!1),w(this,b,Or).call(this),T(this,ce,Er),w(this,b,Sa).call(this,s),T(this,Re,""),w(this,b,ee).call(this),w(this,b,Ue).call(this),r(s);break}case"up":case"down":w(this,b,Wt).call(this,a.type);break;case"page-up":case"page-down":w(this,b,Cr).call(this,a.type);break;case"ctrl-l":w(this,b,Vt).call(this);break;case"escape":case"ctrl-c":w(this,b,Or).call(this),w(this,b,yn).call(this),n(ha());break;case"ignore":break}}),w(this,b,$r).call(this)})}async renderStream(e,t){var r,n,o,a;w(this,b,vn).call(this,t),T(this,vt,!1),T(this,ce,Er),w(this,b,sf).call(this,t==null?void 0:t.submittedPrompt),T(this,fe,!1),T(this,nt,void 0),T(this,ot,void 0),T(this,bt,void 0);let s={tools:(r=t==null?void 0:t.tools)!=null?r:x(this,mn),reasoning:(n=t==null?void 0:t.reasoning)!=null?n:x(this,hn),responseStatistics:(o=t==null?void 0:t.responseStatistics)!=null?o:x(this,gn)};w(this,b,ee).call(this);let i=new Promise((d)=>{T(this,kr,d)});T(this,Ie,(d)=>w(this,b,of).call(this,d)),w(this,b,$r).call(this);let c,u=Zx(w(this,b,cf).call(this,e.uiMessageStream));try{let d=Dp({message:e.message,stream:u,onError:(p)=>w(this,b,Ta).call(this,"Error",Ax(p))});for await(let p of Rx(d,i)){if(x(this,fe))break;c=p,w(this,b,ba).call(this,p,s)}if(!x(this,fe)&&c&&x(this,ot)!=null)w(this,b,ba).call(this,c,s)}finally{if(T(this,kr,void 0),x(this,fe))(a=e.abort)==null||a.call(e);if(w(this,b,Ue).call(this),T(this,ce,x(this,fe)?"Interrupted":(t==null?void 0:t.continueSession)?`Done · Enter another prompt · ${yt}`:`Done · ${Mx}`),w(this,b,ee).call(this),await w(this,b,df).call(this,t),x(this,fe)||!(t==null?void 0:t.continueSession))w(this,b,yn).call(this)}if(x(this,fe))throw ha();return c}async readToolApproval(e,t){return w(this,b,vn).call(this,t),T(this,vt,!1),T(this,ce,`Approve ${Dx(e)}? y/n · ${yt}`),T(this,fe,!1),w(this,b,ee).call(this),await new Promise((r,n)=>{T(this,Ie,(o)=>{let a=Sn(o);switch(a.type){case"character":{let s=a.value.toLowerCase();if(s==="y")T(this,ce,`Approved · ${Er}`),w(this,b,Ue).call(this),w(this,b,ee).call(this),r({approved:!0});else if(s==="n")T(this,ce,`Denied · ${Er}`),w(this,b,Ue).call(this),w(this,b,ee).call(this),r({approved:!1,reason:"Denied by user."});break}case"up":case"down":w(this,b,Wt).call(this,a.type);break;case"page-up":case"page-down":w(this,b,Cr).call(this,a.type);break;case"ctrl-l":w(this,b,Vt).call(this);break;case"escape":case"ctrl-c":T(this,fe,!0),w(this,b,yn).call(this),n(ha());break;default:break}}),w(this,b,$r).call(this)})}};be=new WeakMap;Ae=new WeakMap;_t=new WeakMap;mn=new WeakMap;hn=new WeakMap;gn=new WeakMap;xn=new WeakMap;he=new WeakMap;Re=new WeakMap;vt=new WeakMap;rt=new WeakMap;Rr=new WeakMap;ce=new WeakMap;qt=new WeakMap;fe=new WeakMap;nt=new WeakMap;Ar=new WeakMap;ot=new WeakMap;bt=new WeakMap;St=new WeakMap;wt=new WeakMap;Ie=new WeakMap;xt=new WeakMap;kr=new WeakMap;b=new WeakSet;vn=function(e){var t,r,n,o;if(T(this,Rr,(t=e==null?void 0:e.title)!=null?t:x(this,Rr)),T(this,Ar,(r=e==null?void 0:e.contextSize)!=null?r:x(this,xn)),x(this,qt))return;if(T(this,qt,!0),x(this,_t).reset(),x(this,Ae).write("\x1B[?1049h\x1B[?25l"),x(this,be).isTTY)(o=(n=x(this,be)).setRawMode)==null||o.call(n,!0),x(this,be).resume();T(this,xt,()=>w(this,b,Vt).call(this)),x(this,Ae).on("resize",x(this,xt))};yn=function(){var e,t;if(w(this,b,Ue).call(this),w(this,b,Or).call(this),!x(this,qt))return;if(x(this,be).isTTY)(t=(e=x(this,be)).setRawMode)==null||t.call(e,!1),x(this,be).pause();if(x(this,xt))x(this,Ae).off("resize",x(this,xt)),T(this,xt,void 0);x(this,Ae).write("\x1B[?25h\x1B[?1049l"),x(this,_t).reset(),T(this,qt,!1)};$r=function(){if(x(this,Ie))x(this,be).on("data",x(this,Ie))};Ue=function(){if(x(this,Ie))x(this,be).off("data",x(this,Ie)),T(this,Ie,void 0)};of=function(e){var t;let r=Sn(e);switch(r.type){case"up":case"down":w(this,b,Wt).call(this,r.type);break;case"page-up":case"page-down":w(this,b,Cr).call(this,r.type);break;case"ctrl-l":w(this,b,Vt).call(this);break;case"escape":case"ctrl-c":T(this,fe,!0),(t=x(this,kr))==null||t.call(this);break;default:break}};Wt=function(e,t=1){let r=e==="up"?t:-t;T(this,rt,w(this,b,Ia).call(this,x(this,rt)+r)),w(this,b,ee).call(this)};Cr=function(e){w(this,b,Wt).call(this,e==="page-up"?"up":"down",w(this,b,In).call(this))};af=function(){var e,t;w(this,b,Or).call(this),w(this,b,_n).call(this),T(this,wt,setInterval(()=>{T(this,St,!x(this,St)),w(this,b,ee).call(this)},$x)),(t=(e=x(this,wt)).unref)==null||t.call(e)};Or=function(){if(x(this,wt))clearInterval(x(this,wt)),T(this,wt,void 0);T(this,St,!0)};_n=function(){T(this,St,!0)};sf=function(e){if(e==null)return;let t=x(this,he).at(-1);if((t==null?void 0:t.kind)==="user"&&t.content===e)return;w(this,b,Sa).call(this,e)};Sa=function(e){let t=w(this,b,Tt).call(this);x(this,he).push({kind:"user",title:"User",content:e}),w(this,b,Tn).call(this,t)};ba=function(e,t){var r,n,o;let a=w(this,b,Tt).call(this),s=new Set,i=Gx(e.metadata);T(this,nt,(r=i.totalTokens)!=null?r:x(this,nt)),T(this,ot,(n=i.outputTokens)!=null?n:x(this,ot)),T(this,bt,(o=i.outputTokensPerSecond)!=null?o:x(this,bt));for(let[c,u]of e.parts.entries()){let d=Ux(e.id,c);switch(u.type){case"text":{let p=u.text.trim();if(p.length===0)break;s.add(d),w(this,b,bn).call(this,{id:d,kind:"assistant",title:"Assistant",rightTitle:Hx({totalTokens:x(this,nt),outputTokens:x(this,ot),outputTokensPerSecond:x(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),w(this,b,bn).call(this,{id:d,kind:"reasoning",title:"Reasoning",content:p,collapsed:Vp(e,c,t.reasoning,t)});break}default:if(le(u)){if(t.tools==="hidden")break;s.add(d),w(this,b,bn).call(this,{id:d,...Cx(u,{mode:t.tools,collapsed:Vp(e,c,t.tools,t)})})}break}}w(this,b,lf).call(this,e.id,s),w(this,b,Tn).call(this,a)};bn=function(e){let t=e.id?x(this,he).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&&ff(e,r)?r:void 0;return}x(this,he).push(e)};lf=function(e,t){let r=`${e}:`;T(this,he,x(this,he).filter((n)=>n.id==null||!n.id.startsWith(r)||t.has(n.id)))};cf=async function*(e){let t=!1;for await(let r of Lx(e)){let n=Nx(r,{hasPendingToolResults:t});if(r.type==="start-step")t=!1;else if(zx(r))t=!0;if(n&&x(this,ce)!==n)T(this,ce,n),w(this,b,ee).call(this);else if(Px(r)&&x(this,ce)!==ya)T(this,ce,ya),w(this,b,ee).call(this);if(r.type==="error")w(this,b,Ta).call(this,"Error",r.errorText);if(r.type==="finish"){let o=Vx(r);T(this,nt,o.totalTokens),T(this,ot,o.outputTokens),T(this,bt,o.outputTokensPerSecond)}yield r}};Ta=function(e,t){let r=w(this,b,Tt).call(this);x(this,he).push({kind:"error",title:e,content:t}),w(this,b,Tn).call(this,r)};Tn=function(e){if(x(this,rt)!==0){let t=w(this,b,Tt).call(this)-e;T(this,rt,w(this,b,Ia).call(this,x(this,rt)+t))}w(this,b,ee).call(this)};ee=function(){let e=vx({width:w(this,b,En).call(this),height:w(this,b,Ea).call(this),title:x(this,Rr),rightTitle:hf(x(this,nt),x(this,Ar)),visibleBodyLines:w(this,b,uf).call(this),input:x(this,Re),inputActive:x(this,vt),inputCursorVisible:x(this,St),status:x(this,ce)});x(this,_t).present(e)};Vt=function(){x(this,_t).reset(),w(this,b,ee).call(this)};uf=function(){if(x(this,he).length===0)return["Waiting for input..."];let e=w(this,b,In).call(this),t=w(this,b,Tt).call(this),r=Math.max(0,t-e-x(this,rt)),n=r+e,o=[],a=0;for(let s of x(this,he)){let i=pf(s,w(this,b,En).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};Ia=function(e){let t=Math.max(0,w(this,b,Tt).call(this)-w(this,b,In).call(this));return Math.min(Math.max(0,e),t)};Tt=function(){if(x(this,he).length===0)return 1;let e=0;for(let t of x(this,he))e+=pf(t,w(this,b,En).call(this)-4).length;return e};In=function(){return Math.max(1,w(this,b,Ea).call(this)-5)};En=function(){var e;return Math.max(20,(e=x(this,Ae).columns)!=null?e:80)};Ea=function(){var e;return Math.max(8,(e=x(this,Ae).rows)!=null?e:24)};df=async function(e){if((e==null?void 0:e.waitForExit)===!1||!x(this,be).isTTY||x(this,fe))return;await new Promise((t)=>{T(this,Ie,(r)=>{let n=Sn(r);switch(n.type){case"up":case"down":w(this,b,Wt).call(this,n.type);break;case"page-up":case"page-down":w(this,b,Cr).call(this,n.type);break;case"ctrl-l":w(this,b,Vt).call(this);break;case"escape":w(this,b,Ue).call(this),t();break;case"character":if(n.value==="q")w(this,b,Ue).call(this),t();break;case"ctrl-c":w(this,b,Ue).call(this),process.exitCode=130,t();break;default:break}}),w(this,b,$r).call(this)})};function ha(){return Error("Interrupted")}async function*Rx(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 Ax(e){if(e instanceof Error)return e.message;if(typeof e==="string")return e;return JSON.stringify(e)}function Cx(e,t){var r,n,o,a;let s=Qe(e),i=`Tool · ${(r=e.title)!=null?r:s}`,c="input"in e?e.input:void 0,u=c===void 0?"Input: (streaming...)":`Input:
|
|
143
|
+
${Gp(c)}`,d=jx(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
144
|
|
|
145
145
|
Output:
|
|
146
|
-
${
|
|
146
|
+
${Gp(e.output)}`};case"output-error":return{kind:"error",title:`Tool Error · ${(n=e.title)!=null?n:s}`,rightTitle:d,content:`${u}
|
|
147
147
|
|
|
148
148
|
Error:
|
|
149
149
|
${e.errorText}`};case"output-denied":return{kind:"error",title:`Tool Denied · ${(o=e.title)!=null?o:s}`,rightTitle:d,content:`${u}
|
|
150
150
|
|
|
151
|
-
Reason: ${(a=e.approval.reason)!=null?a:"denied"}`}}}function
|
|
152
|
-
`).flatMap((p)=>
|
|
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(t>=" "&&t!=="")return{type:"character",value:t};return{type:"ignore"}}}var
|
|
154
|
-
`)}async function
|
|
155
|
-
`,"utf8")}catch{}}var
|
|
151
|
+
Reason: ${(a=e.approval.reason)!=null?a:"denied"}`}}}function Vp(e,t,r,n){switch(r){case"collapsed":return!0;case"auto-collapsed":return e.parts.slice(t+1).some((o)=>Ox(o,n));case"full":case"hidden":return!1}}function Ox(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 le(e)&&t.tools!=="hidden"}}function Px(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 Nx(e,{hasPendingToolResults:t}){switch(e.type){case"start-step":return t?qp:Er;case"tool-output-available":case"tool-output-error":case"tool-output-denied":return qp;case"tool-input-available":return Wp;case"tool-approval-response":return e.approved?Wp:void 0;default:return}}function zx(e){switch(e.type){case"tool-output-available":case"tool-output-error":case"tool-output-denied":return!0;default:return!1}}function jx(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 Gp(e){if(typeof e==="string")return e;return JSON.stringify(e,null,2)}function Dx(e){var t;return`tool ${(t=e.title)!=null?t:e.toolName}`}function Ux(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*Lx(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 pf(e,t){if(e.cache&&ff(e,e.cache,t))return e.cache.lines;let r=Fx(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 ff(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 Fx(e,t){let r=kx[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),f=`${r.color}╭${o}${r.border.repeat(p)}${a}╮${me.reset}`,m=`${r.color}╰${r.border.repeat(Math.max(0,t-2))}╯${me.reset}`;return[f,m]}let s=Math.max(0,t-2-o.length-a.length),i=`${r.color}╭${o}${r.border.repeat(s)}${a}╮${me.reset}`,c=`${r.color}╰${r.border.repeat(Math.max(0,t-2))}╯${me.reset}`,d=(e.content.length>0?ux(e.content):me.dim+"(streaming...)"+me.reset).split(`
|
|
152
|
+
`).flatMap((p)=>qx(p,n));return[i,...d.map((p)=>Bx(p,n,r.color)),c]}function Bx(e,t,r){let n=Bt(e,t),o=" ".repeat(Math.max(0,t-tt(n)));return`${r}│${me.reset} ${n}${o} ${r}│${me.reset}`}function qx(e,t){if(e.length===0)return[""];let r=[],n=e;while(tt(n)>t){let o=Wx(n,t);r.push(n.slice(0,o).trimEnd()),n=n.slice(o).trimStart()}return r.push(n),r}function Wx(e,t){let n=Bt(e,t+1).lastIndexOf(" ");if(n>0)return n;return Bt(e,t).length}function Vx(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:mf(n!=null?n:o),outputTokens:ka(n!=null?n:o),outputTokensPerSecond:a==null?void 0:a.outputTokensPerSecond}}function Gx(e){var t;let r=e;return{totalTokens:mf(r==null?void 0:r.usage),outputTokens:ka(r==null?void 0:r.usage),outputTokensPerSecond:(t=r==null?void 0:r.performance)==null?void 0:t.outputTokensPerSecond}}function mf(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=Jx(e),n=ka(e);if(r!=null&&n!=null)return r+n;return}function Jx(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 ka(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 hf(e,t){if(e==null)return;let r=`${e.toLocaleString()} ${e===1?"token":"tokens"}`,n=Kx(e,t);return n==null?r:`${r} ${n}`}function Kx(e,t){if(t==null||t<=0||!Number.isFinite(t))return;return`${Math.round(e/t*100).toLocaleString()}%`}function Hx(e,t){if(t==="outputTokensPerSecond")return Yx(e.outputTokensPerSecond);return hf(e.outputTokens)}function Yx(e){if(e==null)return;return`${Xx(e)} tok/s`}function Xx(e){return Number.isInteger(e)?e.toLocaleString():e.toLocaleString(void 0,{maximumFractionDigits:1})}function Sn(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`
|
|
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(t>=" "&&t!=="")return{type:"character",value:t};return{type:"ignore"}}}var Qx="outputTokensPerSecond",e_=class{constructor(e){this.chatId=jt();var t,r,n,o;this.agent=e.agent,this.transport=e.transport,this.renderer=(t=r_(e))!=null?t:t_(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:Qx,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(Xp(c))return;throw c}if(o==null)return}t.push(a_(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=s_(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});i_(c,d,p)}Kp(t,c,s),s=!0,o=void 0;continue}Kp(t,c,s)}}catch(c){if(Xp(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:xa(e),abort:n};let o=this.agent,a=await o.stream({prompt:await fn(e,{tools:o.tools}),abortSignal:r.signal,options:void 0,experimental_sandbox:this.sandbox});return{uiMessageStream:n_(a.fullStream,t,e),message:xa(e),abort:n}}};function t_(e){return e.tools===void 0&&e.reasoning===void 0&&e.responseStatistics===void 0&&e.contextSize===void 0?new wa:new wa({tools:e.tools,reasoning:e.reasoning,responseStatistics:e.responseStatistics,contextSize:e.contextSize})}function r_(e){if(e.renderer)return e.renderer;if(!e.screen&&!e.userInput)return;return new wa({tools:e.tools,reasoning:e.reasoning,responseStatistics:e.responseStatistics,contextSize:e.contextSize,input:e.userInput,output:e.screen})}async function*n_(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=xa(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:Hp(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:Yp(p.file.mediaType,p.file.base64),mediaType:p.file.mediaType,providerMetadata:p.providerMetadata};break;case"reasoning-file":yield{type:"reasoning-file",url:Yp(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*Jp(a,s),d=!0,yield{type:"finish",finishReason:p.finishReason,messageMetadata:o_(c!=null?c:p.totalUsage,u)};break;case"abort":yield{type:"abort",reason:p.reason};break;case"error":yield{type:"error",errorText:Hp(p.error)};break}if(!d)yield*Jp(a,s),yield{type:"finish"}}function o_(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*Jp(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 a_(e,t){return{id:e,role:"user",parts:[{type:"text",text:t}]}}function Kp(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 xa(e){let t=e.at(-1);return(t==null?void 0:t.role)==="assistant"?t:void 0}function s_(e){let t=[];for(let[r,n]of e.parts.entries()){if(!le(n)||n.state!=="approval-requested"||n.approval.isAutomatic===!0)continue;t.push({approvalId:n.approval.id,toolCallId:n.toolCallId,toolName:Qe(n),title:n.title,input:n.input,providerExecuted:n.providerExecuted,messageId:e.id,partIndex:r})}return t}function i_(e,t,r){let n=e.parts[t.partIndex];if(!n||!le(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 Hp(e){if(e instanceof Error)return e.message;if(typeof e==="string")return e;return JSON.stringify(e)}function Yp(e,t){return`data:${e};base64,${t}`}function Xp(e){return e instanceof Error&&e.message==="Interrupted"}async function gf(e){await new e_(e).run()}async function vf(e){if(e.prompt!==void 0)l_(e.prompt);await gf({title:`broods · ${e.agent.name}`,tools:"full",transport:new bf(e.client,e.agent)})}async function yf(e){let t=Op({stream:wf(e.client.stream(e.agent,{input:e.prompt}),void 0,()=>{})});for await(let r of t)process.stdout.write(r);process.stdout.write(`
|
|
154
|
+
`)}async function l_(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 bf{client;agent;conversationKey=`tui-${jt()}`;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 fn(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 jp({stream:wf(r,e.abortSignal,t.commit),originalMessages:e.messages,generateMessageId:jt,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 wf(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(),c_(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 c_(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 xf}from"node:fs";import{mkdir as u_,readFile as d_,writeFile as p_}from"node:fs/promises";import{dirname as Tf,join as $a,resolve as f_,sep as at}from"node:path";import{fileURLToPath as m_}from"node:url";var Ma=$a(Tf(kn),"update-check.json"),h_=86400000,g_="https://registry.npmjs.org/broods/latest",v_=2000;function Ra(e,t){let r=Sf(e),n=Sf(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!_f(e)&&_f(t)}async function Aa(e={}){let t=await w_(),r=e.maxAgeMs??h_;if(t&&Date.now()-t.checkedAt<r)return t.latest;let n=await y_();if(n===null)return t?.latest??null;return await x_({checkedAt:Date.now(),latest:n}),n}function If(e=f_(process.cwd()),t=m_(import.meta.url)){let r=`${at}node_modules${at}`,n=t.lastIndexOf(r),o=n===-1?null:t.slice(0,n),a=o===null?t.startsWith(`${e}${at}`):e===o||e.startsWith(`${o}${at}`),i=t.includes(`${at}.bun${at}install${at}global${at}`)||a&&b_(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 y_(){try{let e=await fetch(g_,{signal:AbortSignal.timeout(v_),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 b_(e){return xf($a(e,"bun.lock"))||xf($a(e,"bun.lockb"))}function _f(e){return e.includes("-")}async function w_(){try{let e=JSON.parse(await d_(Ma,"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 Sf(e){let[t]=e.trim().replace(/^v/,"").split("-");return(t??"").split(".").slice(0,3).map((r)=>Number.parseInt(r,10)||0)}async function x_(e){try{await u_(Tf(Ma),{recursive:!0}),await p_(Ma,`${JSON.stringify(e)}
|
|
155
|
+
`,"utf8")}catch{}}var Ef={name:"broods",version:"0.18.0",description:"CLI + TypeScript SDK for the broods agent platform.",type:"module",license:"MIT",homepage:"https://github.com/beeblastco/broods#readme",repository:{type:"git",url:"git+https://github.com/beeblastco/broods.git",directory:"packages/broods"},bugs:{url:"https://github.com/beeblastco/broods/issues"},keywords:["agents","ai","sdk","cli","broods"],bin:{broods:"dist/cli/index.js"},exports:{".":{types:"./dist/index.d.ts",import:"./dist/index.js"},"./account":{types:"./dist/account.d.ts",import:"./dist/account.js"}},typesVersions:{"*":{account:["./dist/account.d.ts"]}},main:"./dist/index.js",types:"./dist/index.d.ts",files:["dist","README.md","LICENSE.md"],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"},engines:{node:">=22.15"},dependencies:{esbuild:"^0.28.2"},peerDependencies:{ai:"^7.0.68"},devDependencies:{"@ai-sdk/tui":"^1.0.69","@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.68",publint:"^0.3.23",rollup:"^4.62.4","rollup-plugin-dts":"^6.5.1",typescript:"^7.0.2"}};var st=Ef.version,lt="https://dashboard.broods.app",Jt="eu-west-1",M_=[{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)"}],ge=`Global options:
|
|
156
156
|
--project <name> Project name override (default: package name or folder)
|
|
157
157
|
--stage <name> Target stage override (BROODS_STAGE otherwise)
|
|
158
158
|
--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`,
|
|
159
|
+
--dashboard-url <url> Dashboard base URL for login and deep links (default: ${lt})
|
|
160
|
+
-h, --help Show this help`,Ca=`broods v${st}
|
|
161
161
|
|
|
162
162
|
Usage: broods <command> [subcommand] [options]
|
|
163
163
|
|
|
@@ -187,7 +187,7 @@ Options:
|
|
|
187
187
|
-h, --help Show help for a command (e.g. \`broods org --help\`)
|
|
188
188
|
-v, --version Print the CLI version
|
|
189
189
|
|
|
190
|
-
Run \`broods <command> --help\` to see a command's subcommands and flags.`,
|
|
190
|
+
Run \`broods <command> --help\` to see a command's subcommands and flags.`,jf={agent:`Usage: broods agent <list|get> [name]
|
|
191
191
|
|
|
192
192
|
Subcommands:
|
|
193
193
|
list List the agents in the current project/stage scope
|
|
@@ -294,43 +294,43 @@ place; inside a project the dependency is upgraded instead.`,whoami:`Usage: broo
|
|
|
294
294
|
|
|
295
295
|
Shows the login, server, org, plan, project and stage the next command uses.
|
|
296
296
|
|
|
297
|
-
${ge}`};async function
|
|
297
|
+
${ge}`};async function R_(){let[,,e,...t]=process.argv;switch(e){case void 0:case"--help":case"-h":console.log(Ca);return;case"--version":case"-v":console.log(st);return}mS(e,t);let r=jf[e];if(r&&(we(t,"--help")||we(t,"-h"))){console.log(r);return}switch(e){case"init":await A_(t);return;case"login":await C_(t);return;case"whoami":await P_(t);return;case"org":await N_(t);return;case"stage":await z_(t);return;case"diff":await j_(t);return;case"deploy":await D_(t);return;case"dev":await Z_(t);return;case"env":await aS(t);return;case"stream":await iS(t);return;case"logs":await lS(t);return;case"agent":await cS(t);return;case"run":await pS(t);return;case"update":await U_();return;default:throw Error(`Unknown command: ${e}
|
|
298
298
|
|
|
299
|
-
${
|
|
299
|
+
${Ca}`)}}function Ee(e){return jf[e]??Ca}async function A_(e){let t=we(e,"--force"),r=H(process.cwd(),ue);await Ua(H(r,Ce),{recursive:!0}),await Mn(H(r,"index.ts"),Kf(),t),await Mn(H(r,".gitignore"),`_generated
|
|
300
300
|
.cache
|
|
301
|
-
`,t);let n=E(e,"--dashboard-url")??
|
|
301
|
+
`,t);let n=E(e,"--dashboard-url")??lt;await Ha({dashboardUrl:n,baseUrl:ja(n),project:E(e,"--project")??Ht(process.cwd()),stage:E(e,"--stage")??"development",region:E(e,"--region")??Jt,force:t}),await Ka(),console.log(`Created ${ue}/`)}async function C_(e){let t=te(),r=E(e,"--dashboard-url")??t.dashboardUrl??lt,n=await Fn(r),o=E(e,"--project")??process.env.BROODS_PROJECT??Ht(process.cwd()),a=E(e,"--stage")??ct()??"development";await Ha({dashboardUrl:n.dashboardUrl??r,baseUrl:n.baseUrl,project:o,stage:a,region:E(e,"--region")??process.env.BROODS_REGION??Jt,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 O_(n.baseUrl,n.token,o,a)}async function O_(e,t,r,n){try{let a=await new ae({baseUrl:e,token:t}).getRuntimeKey(r,n);if(a?.apiKey)await Kt("BROODS_API_KEY",a.apiKey),console.log(`Wrote BROODS_API_KEY (${a.keyHint}) to .env.local`)}catch{}}async function P_(e){let t=te(),r=Fa(e),n=E(e,"--dashboard-url")??t.dashboardUrl??lt;console.log(`broods v${st}`),console.log(`Dashboard: ${n}`),console.log(`Project: ${r.project}`),console.log(`Stage: ${r.stage}`);let o;try{o=await ke(E(e,"--base-url"))}catch{J("Not logged in. Run `broods login`.");return}console.log(`Server: ${o.baseUrl}`);let a=new ae({baseUrl:o.baseUrl,token:o.token}),s=await a.getOnboarding(),i=s.orgs.find((m)=>m.id===s.currentOrgId);if(s.user)console.log(`User: ${s.user.email}`);if(console.log(`Org: ${i?Nr(i):s.currentOrgId}`),s.account)console.log(`Account: ${s.account.username} (${s.account.status})`);let c=process.env.BROODS_API_KEY,u=Pr("BROODS_API_KEY")?"your shell":".env.local",d=null,p=null;try{d=await a.getRuntimeKey(r.project,r.stage)}catch(m){p=m instanceof Error?m.message:String(m)}if(p)console.log("Runtime key: unavailable"),J(`⚠ Could not read the runtime key: ${p}`);else if(!d?.apiKey)console.log("Runtime key: none for this scope"),J(`${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)`),J("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`),J(`⚠ BROODS_API_KEY from ${u} belongs to a different org or stage. Run \`broods stage use ${r.stage}\` to repoint it.`);let f=s.projects.map((m)=>m.name);if(!f.includes(r.project))J(`This org has no project named ${r.project}. It has: ${f.length>0?f.join(", "):"none"}.`)}async function N_(e){let[t,r]=Rt(e);if(!t){console.log(Ee("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}
|
|
302
302
|
|
|
303
|
-
${Ee("org")}`);let s=te(),i=E(e,"--dashboard-url")??s.dashboardUrl??
|
|
304
|
-
Only orgs where you are owner or admin can be selected from the CLI.`);return}if(o){let f=d.orgs.filter((y)=>y.accountStatus==="active"),m=r?f.find((y)=>y.slug===r||y.name===r||y.id===r):await
|
|
303
|
+
${Ee("org")}`);let s=te(),i=E(e,"--dashboard-url")??s.dashboardUrl??lt,c=await La(i),u=new ae({baseUrl:c.baseUrl,token:c.token}),d=await u.getOnboarding();if(n){for(let f of d.orgs){let m=f.accountStatus==="active"?"":` [${f.accountStatus} account]`;console.log(Xt(`${Nr(f)}${m}`,f.id===d.currentOrgId))}console.log(`
|
|
304
|
+
Only orgs where you are owner or admin can be selected from the CLI.`);return}if(o){let f=d.orgs.filter((y)=>y.accountStatus==="active"),m=r?f.find((y)=>y.slug===r||y.name===r||y.id===r):await er("Select organization",f,Nr,f.findIndex((y)=>y.id===d.currentOrgId));if(!m)throw Error(`No selectable organization matches "${r}". Run \`broods org list\`.`);await Mf(u,c,await u.selectOnboardingOrg(m.id),e);return}let p=r??await At("Organization name",Ht(process.cwd()));if(!p.trim())throw Error("Organization name is required.");await Mf(u,c,await u.createOnboardingOrg(p),e)}async function z_(e){let[t,r]=Rt(e);if(!t){console.log(Ee("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}
|
|
305
305
|
|
|
306
|
-
${Ee("stage")}`);let s=te(),i=E(e,"--dashboard-url")??s.dashboardUrl??
|
|
306
|
+
${Ee("stage")}`);let s=te(),i=E(e,"--dashboard-url")??s.dashboardUrl??lt,c=Fa(e),u=await La(i),d=new ae({baseUrl:u.baseUrl,token:u.token});if(n){let v=await d.listStages(c.project);if(v.length===0){console.log(`${c.project} has no stages yet. \`broods dev\` creates Development.`);return}console.log(`Stages for ${c.project}:`);for(let _ of v)console.log(G_(_,c.stage));return}if(o){let v=await d.listStages(c.project),_=r?v.find((C)=>Na(C.name,r)):await er("Select stage",v,Zf,v.findIndex((C)=>Na(C.name,c.stage)));if(!_)throw Error(`${c.project} has no stage "${r}". Existing: ${v.map((C)=>C.name).join(", ")}. Create it with \`broods stage create ${r} --from ${c.stage}\`.`);let j=Pr("BROODS_STAGE");await Kt("BROODS_STAGE",_.name),console.log(`Stage: ${_.name} (wrote BROODS_STAGE)`),Pa("BROODS_STAGE",j),await Oa(d,{project:c.project,stage:_.name});return}let p=r??await At("Stage name","staging");if(!p.trim())throw Error("Stage name is required.");let f=E(e,"--from"),m=await d.createStage(c.project,p,f);if(console.log(`Created stage ${m.stage.name} in ${c.project}${m.clonedFrom?` from ${m.clonedFrom}`:""}`),m.clonedFrom)console.log(` ${m.stage.agentCount} agent(s), ${m.stage.variableCount} env var(s) copied`);if(!we(e,"--use")){console.log(`Switch to it with \`broods stage use ${m.stage.name}\`.`);return}let y=Pr("BROODS_STAGE");await Kt("BROODS_STAGE",m.stage.name),console.log(`Stage: ${m.stage.name} (wrote BROODS_STAGE)`),Pa("BROODS_STAGE",y),await Oa(d,{project:c.project,stage:m.stage.name})}async function j_(e){let{manifest:t,config:r}=await qe({project:E(e,"--project"),stage:E(e,"--stage"),command:"dev"}),n=await ke(E(e,"--base-url")??r.baseUrl),a=await new ae({baseUrl:n.baseUrl,token:n.token}).getManifest(t.project,t.stage);Fr(Zn(t,a?.manifest??null))}async function D_(e){let{manifest:t,config:r,resourceAliases:n,channels:o}=await qe({project:E(e,"--project"),stage:E(e,"--stage"),command:"deploy",useRuntimeStage:!1}),a=await ke(E(e,"--base-url")??r.baseUrl),i=await new ae({baseUrl:a.baseUrl,token:a.token}).putManifest(t,we(e,"--prune"),we(e,"--rotate-key"));await Ur(t,i.ids,process.cwd(),n,i.deployment,o),await Gf(),await Ka(),console.log(`Synced ${i.manifest.resources.length} resources to ${t.project}/${t.stage}`),await Df(i.deployment),Lf(o,i),Uf(i)}async function Df(e){if(!e)return;if(e.apiKey){await Kt("BROODS_API_KEY",e.apiKey),console.log(`Wrote BROODS_API_KEY (${e.keyHint}) to .env.local`);return}}function Uf(e){let t=e.warnings?.missingEnv??[];if(t.length>0){J(`⚠ ${t.length} env var(s) referenced in agent config but not set: ${t.join(", ")}`);for(let n of t)console.log(` broods env set ${n}`)}let r=e.warnings?.missingPolicies??[];if(r.length>0)J(`⚠ ${r.length} policy ref(s) in agent config match no policy resource in this deploy and will be ignored at runtime: ${r.join(", ")}`)}async function U_(){let e=await Aa({maxAgeMs:0});if(e===null)throw Error("Could not reach the npm registry to check for a newer broods.");if(!Ra(e,st)){console.log(`broods v${st} is already the newest release.`);return}let t=If();console.log(`Updating broods ${st} → ${e} ${t.global?"globally":"in this project"}`),console.log(`$ ${[t.command,...t.args].join(" ")}`),await new Promise((r,n)=>{let o=zf(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 $f(){let e=await Aa();if(e===null||!Ra(e,st))return;J(`broods ${e} is out, you are on ${st}. Run \`broods update\`.`)}async function Z_(e){if(await F_(e),we(e,"--once")){if(!process.env.BROODS_SUPPRESS_DEV_TARGET)await Af(e),await $f();let d=kf.now();await X_(e),Ms(kf.now()-d);return}let t=Nf($_(),`broods-declined-${process.pid}.txt`),r={...process.env,BROODS_DECLINED_FILE:t,BROODS_SUPPRESS_DEV_TARGET:"1",BROODS_RELOAD_ENV:"1"};await Af(e),await $f(),await Rf(e,r);let n,o=!1,a=!1,s=await Cf(),i=()=>{if(o){a=!0;return}o=!0,Cf().then(async(d)=>{if(d===s)return;s=d,await Rf(e,r)}).catch((d)=>console.error(d instanceof Error?d.message:String(d))).finally(()=>{if(o=!1,a)a=!1,i()})},c=k_(H(process.cwd(),ue),{recursive:!0},(d,p)=>{if(!p||fS(p))return;clearTimeout(n),n=setTimeout(i,150)}),u=new AbortController;L_(e,u.signal),process.on("SIGINT",()=>{u.abort(),c.close(),process.exit(0)})}async function L_(e,t){let r;try{r=Wa()}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 Ga(e,r))}catch{return}let a=Va(e);try{for await(let s of Lr({baseUrl:r.baseUrl,apiKey:r.apiKey,project:n,stage:o},{backfill:0,minLevel:a,signal:t}))console.log(Ja(s))}catch(s){if(!t.aborted)console.error(`live logs: ${s instanceof Error?s.message:String(s)}`)}}async function F_(e){await B_(),await q_(e)}async function B_(){let e=H(process.cwd(),ue);await Ua(H(e,Ce),{recursive:!0});let t=[];if(await Ya(e,t),t.length>0)return;await Mn(H(e,"index.ts"),Kf(),!1),await Mn(H(e,".gitignore"),`_generated
|
|
307
307
|
.cache
|
|
308
|
-
`,!1),console.log(`Created starter ${
|
|
309
|
-
`,"utf8")}async function
|
|
308
|
+
`,!1),console.log(`Created starter ${ue}/`)}async function q_(e){let t=H(process.cwd(),".env.local"),r=await It(t),n=Jf(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=te(),d=E(e,"--dashboard-url")??u.dashboardUrl??lt,p=E(e,"--project")??process.env.BROODS_PROJECT??Ht(process.cwd()),f=E(e,"--stage")??ct()??"development",m=E(e,"--region")??process.env.BROODS_REGION??Jt;if(process.stdin.isTTY&&s){let y=await La(d),v=new ae({baseUrl:y.baseUrl,token:y.token}),_=await W_(v,y),j=await J_(v,_);if(p=await Y_(j,p),!p.trim())throw Error("Project name is required.")}if(process.stdin.isTTY&&i){if(f=await At("Stage",f),!f.trim())throw Error("Stage is required.")}if(process.stdin.isTTY&&c){let y=[...M_];m=await er("Select service region",y,(v)=>v.label,y.findIndex((v)=>v.region===m)).then((v)=>v.region)}await Ha({dashboardUrl:d,baseUrl:u.baseUrl??ja(d),project:p,stage:f,region:m,force:!1})}async function La(e){try{return await ke()}catch(t){if(!process.stdin.isTTY)throw t;return J("No CLI login found. Starting browser login."),await Fn(e)}}async function W_(e,t){try{return await e.getOnboarding()}catch(r){if(!t.org)throw r;return J("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 Mf(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)J("BROODS_TOKEN is set, so the switch applies to this token only and was not stored.");else await Br({...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: ${Nr(o)}`),console.log(`Projects: ${r.projects.length>0?r.projects.map((a)=>a.name).join(", "):"none yet"}`),await Oa(e,Fa(n))}async function Oa(e,t){let r;try{r=await e.getRuntimeKey(t.project,t.stage)}catch(o){J(`⚠ 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){J(`⚠ ${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=Pr("BROODS_API_KEY");if(!n&&process.env.BROODS_API_KEY===r.apiKey)return;await Kt("BROODS_API_KEY",r.apiKey),console.log(`Wrote BROODS_API_KEY (${r.keyHint}) to .env.local`),Pa("BROODS_API_KEY",n)}function Pa(e,t){if(!t)return;J(`⚠ ${e} is exported in your shell, which wins over .env.local. Run \`unset ${e}\` or the next broods command keeps the old value.`)}function Nr(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 V_(e){return e.slug===e.name?e.name:`${e.name} (${e.slug})`}function G_(e,t){return Xt(Zf(e),Na(e.name,t))}function Zf(e){let t=e.deploymentRegion?`, ${e.deploymentRegion}`:"";return`${e.name} (${e.kind}${t}) — ${e.agentCount} agent(s), ${e.variableCount} env var(s)`}function Na(e,t){return e.trim().toLowerCase()===t.trim().toLowerCase()}function Fa(e){return te(),{project:E(e,"--project")??process.env.BROODS_PROJECT??Ht(process.cwd()),stage:E(e,"--stage")??ct()??"development"}}async function J_(e,t){let r=t.orgs.filter((a)=>a.accountStatus==="active"),n={kind:"create",name:"New organization"},o=await er("Select organization",[...r,n],(a)=>("kind"in a)?"Create new organization":Nr(a),r.findIndex((a)=>a.id===t.currentOrgId));if("kind"in o){let a=await At("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 K_(e,t){return e.projects.find((n)=>n.name===t||n.slug===t)?.name??t}function H_(e,t){return e.projects.find((r)=>r.name===t||r.slug===t)}async function Y_(e,t){let r=K_(e,t);if(e.projects.length===0)return At("Project name",r);while(!0){let n=await Ps("Select project",e.projects,V_,{hint:"type a new project name",defaultValue:r}),o=typeof n==="string"?n:n.name,a=H_(e,o);if(!a)return o;if(await Ln(`Continue with the existing project ${a.name}?`))return a.name}}function Rf(e,t){return new Promise((r,n)=>{let o=process.argv[1]??"",a=zf(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 X_(e){let{manifest:t,config:r,resourceAliases:n,channels:o}=await qe({project:E(e,"--project"),stage:E(e,"--stage"),command:"dev"}),a=await ke(E(e,"--base-url")??r.baseUrl),s=new ae({baseUrl:a.baseUrl,token:a.token}),i=await s.getManifest(t.project,t.stage),c=Zn(t,i?.manifest??null);Fr(c.filter((y)=>y.operation!=="delete")),await Q_(s,t,Ff(a.baseUrl,a.token));let u=await s.putManifest(t,!1);await Ur(t,u.ids,process.cwd(),n,u.deployment,o),await Gf(),await Ka();let d=await rS(),p=c.filter((y)=>y.operation==="delete"),f=p.filter((y)=>!d.has(`${y.kind}:${y.name}`)),m=!1;if(f.length>0)if(J("⚠ These remote resources are no longer declared locally:"),Fr(f),await Ln(`Delete ${f.length} resource(s) from ${t.project}/${t.stage}?`))u=await s.putManifest(t,!0),await Ur(t,u.ids,process.cwd(),n,u.deployment,o),await oS(),m=!0;else await nS(f.map((y)=>`${y.kind}:${y.name}`));if(!m&&p.length>0){let y=p.map((v)=>`${v.kind}:${v.name}`).join(", ");J(`⚠ ${p.length} undeclared resource(s) kept remotely: ${y} — re-declare in code or run \`deploy --prune\` to remove.`)}return await Df(u.deployment),Lf(o,u),Uf(u),u}function Lf(e,t){let r=t.deployment;if(!r||e.length===0)return;let n=new Da,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 Q_(e,t,r){let n=ms(t).filter((c)=>{let u=process.env[c];return!c.startsWith("BROODS_")&&u!==void 0&&u!==""});if(n.length===0)return;let o=await Ba(),a=o[$n(r,t.project,t.stage)]??{},s=new Set((await e.listEnv(t.project,t.stage)).map((c)=>c.name)),i=n.filter((c)=>!s.has(c)||a[c]!==za(process.env[c]));if(i.length===0)return;await Promise.all(i.map((c)=>e.setEnv(t.project,t.stage,c,process.env[c])));for(let c of i)a[c]=za(process.env[c]);o[$n(r,t.project,t.stage)]=a,await qa(o),As(i)}function Ff(e,t){return`${e}:${Za("sha256").update(t).digest("hex").slice(0,16)}`}function $n(e,t,r){return`${e}:${t}:${r}`}function Bf(){return H(I_(kn),"env-sync.json")}function za(e){return Za("sha256").update(e).digest("hex")}async function Ba(){let e=await It(Bf());if(!e)return{};try{let t=JSON.parse(e);return t&&typeof t==="object"?t:{}}catch{return{}}}async function qa(e){let t=Bf();await Ua(H(t,".."),{recursive:!0}),await it(t,`${JSON.stringify(e,null,2)}
|
|
309
|
+
`,"utf8")}async function eS(e,t,r,n,o){let a=await Ba(),s=$n(e,t,r);a[s]={...a[s],[n]:za(o)},await qa(a)}async function tS(e,t,r,n){let o=await Ba(),a=$n(e,t,r);if(!o[a]||!(n in o[a]))return;delete o[a][n],await qa(o)}async function Af(e){let t=te(),{manifest:r,config:n}=await qe({project:E(e,"--project"),stage:E(e,"--stage"),command:"dev"}),o=await ke(E(e,"--base-url")??n.baseUrl);Rs({project:r.project,stage:r.stage,dashboardUrl:E(e,"--dashboard-url")??t.dashboardUrl??o.dashboardUrl??n.dashboardUrl??lt})}async function rS(){let e=process.env.BROODS_DECLINED_FILE;if(!e)return new Set;let t=await It(e);return new Set(t.split(/\r?\n/).map((r)=>r.trim()).filter(Boolean))}async function nS(e){let t=process.env.BROODS_DECLINED_FILE;if(!t||e.length===0)return;await it(t,`${e.join(`
|
|
310
310
|
`)}
|
|
311
|
-
`,{flag:"a"})}async function
|
|
311
|
+
`,{flag:"a"})}async function oS(){let e=process.env.BROODS_DECLINED_FILE;if(!e)return;await it(e,"","utf8")}async function aS(e){let[t,r]=Rt(e);if(!t){console.log(Ee("env"));return}let n=t==="list"||t==="ls",o=t==="rm"||t==="remove",a=t==="get",s=t==="set"||o||a;if(!n&&!s)throw Error(`Unknown env subcommand: ${t}
|
|
312
312
|
|
|
313
313
|
${Ee("env")}`);if(s&&!r)throw Error(`broods env ${t} needs a variable name.
|
|
314
314
|
|
|
315
|
-
${Ee("env")}`);let{manifest:i,config:c}=await
|
|
315
|
+
${Ee("env")}`);let{manifest:i,config:c}=await qe({project:E(e,"--project"),stage:E(e,"--stage"),command:"dev"}),u=await ke(E(e,"--base-url")??c.baseUrl),d=new ae({baseUrl:u.baseUrl,token:u.token}),p=Ff(u.baseUrl,u.token),f=`${i.project}/${i.stage}`;if(n){let y=await d.listEnv(i.project,i.stage);if(y.length===0){console.log(`No environment variables set for ${f}.`);return}console.log(`Environment variables for ${f} (values hidden):`);for(let v of y)console.log(` ${v.name}`);return}if(a){let y=await d.getEnv(i.project,i.stage,r);if(y===null){console.error(`${r} is not set for ${f}`),process.exitCode=1;return}console.log(y);return}if(o){await d.removeEnv(i.project,i.stage,r),await tS(p,i.project,i.stage,r),console.log(`Removed ${r} from ${f}`);return}let m=await Os(r);await d.setEnv(i.project,i.stage,r,m),await eS(p,i.project,i.stage,r,m),console.log(`Stored ${r} for ${f}`)}function Wa(){te();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??Of;return{apiKey:e,baseUrl:t}}function Va(e){if(we(e,"--all"))return"DEBUG";let t=E(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 sS(e){te();let t=E(e,"--project")??process.env.BROODS_PROJECT,r=E(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 Ga(e,t){let r=await sS(e),n=await $s(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 qf(e){return e==="WARN"?" (--all for INFO too)":""}function Ja(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 iS(e){let{apiKey:t,baseUrl:r}=Wa(),{project:n,stage:o}=await Ga(e,{baseUrl:r,apiKey:t}),a=Va(e),s=new AbortController,i=()=>s.abort();process.on("SIGINT",i),console.log(`Streaming live logs for ${n}/${o} [${a}+]`+qf(a)+" — Ctrl+C to stop");try{for await(let c of Lr({baseUrl:r,apiKey:t,project:n,stage:o},{backfill:0,minLevel:a,signal:s.signal}))console.log(Ja(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 lS(e){let{apiKey:t,baseUrl:r}=Wa(),{project:n,stage:o}=await Ga(e,{baseUrl:r,apiKey:t}),a=Va(e),s=Number(E(e,"--limit")??E(e,"-n")??100),i=we(e,"--json"),c=new AbortController,u=()=>c.abort();process.on("SIGINT",u),console.log(`Logs for ${n}/${o} [${a}+]`+qf(a)+` (backfill ${s}) — Ctrl+C to stop`);try{for await(let d of Lr({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(Ja(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 cS(e){let[t,r]=Rt(e);if(!t){console.log(Ee("agent"));return}if(t==="list"||t==="ls"){await uS(e);return}if(t==="get"){await dS(r,e);return}throw Error(`Unknown agent subcommand: ${t}
|
|
316
316
|
|
|
317
|
-
${Ee("agent")}`)}async function
|
|
317
|
+
${Ee("agent")}`)}async function Wf(e){let{manifest:t,config:r}=await qe({project:E(e,"--project"),stage:E(e,"--stage"),command:"dev"}),n=await ke(E(e,"--base-url")??r.baseUrl),o=await new ae({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 uS(e){let{manifest:t,agents:r}=await Wf(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=Vf(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 dS(e,t){if(!e)throw Error(`Missing agent name.
|
|
318
318
|
|
|
319
|
-
${Ee("agent")}`);let{manifest:r,agents:n}=await
|
|
319
|
+
${Ee("agent")}`);let{manifest:r,agents:n}=await Wf(t),o=n.find((f)=>f.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((f)=>typeof f==="string"?f:f.name).filter(Boolean):[],c=dt(a.tools)?Object.keys(a.tools):[],u=dt(a.channels)?Object.keys(a.channels):[],d=dt(a.subagent)&&Array.isArray(a.subagent.allowed)?a.subagent.allowed.map((f)=>typeof f==="string"?f:f.name).filter(Boolean):[],p=dt(a.hooks)&&Array.isArray(a.hooks.webhooks)?a.hooks.webhooks.filter(dt):[];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: ${Vf(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((f,m)=>{let y=Array.isArray(f.events)&&f.events.length>0?f.events.join(", "):"all events",v=f.enabled===!1?"disabled":"enabled";console.log(` [${m}] ${v} → ${f.url??"—"} (${y})`)})}function Vf(e){let t=dt(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 pS(e){let[t,...r]=Rt(e);if(!t)throw Error(`Missing agent name.
|
|
320
320
|
|
|
321
|
-
${Ee("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
|
|
321
|
+
${Ee("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 qe({project:E(e,"--project"),stage:E(e,"--stage"),command:"dev"}),i=await ke(E(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 ae({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 ae({baseUrl:i.baseUrl,token:i.token}).getRuntimeKey(a.project,a.stage).catch(()=>null);if(p?.apiKey)await Kt("BROODS_API_KEY",p.apiKey);if(c.config.publicAccess!==!0)J(`⚠ 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 f=new Da({baseUrl:E(e,"--base-url")??process.env.BROODS_BASE_URL??process.env.BROODS_HOST??i.baseUrl,...p?.apiKey?{apiKey:p.apiKey}:{}}),m={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 vf({client:f,agent:m,...n?{prompt:n}:{}});return}await yf({client:f,agent:m,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 Mn(e,t,r){try{await it(e,t,{flag:r?"w":"wx"})}catch(n){if(n.code==="EEXIST")return;throw n}}async function Gf(){let e=H(process.cwd(),ue,".gitignore"),t=await It(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()+`
|
|
322
322
|
`+n.join(`
|
|
323
323
|
`)+`
|
|
324
324
|
`:n.join(`
|
|
325
325
|
`)+`
|
|
326
|
-
`;await
|
|
327
|
-
`,"utf8")}async function
|
|
328
|
-
`).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}=${
|
|
326
|
+
`;await it(e,o,"utf8")}async function Ka(){let e=H(process.cwd(),"package.json"),t=await It(e);if(!t)return;let r;try{r=JSON.parse(t)}catch{return}if(r.type)return;r.type="module",await it(e,JSON.stringify(r,null,2)+`
|
|
327
|
+
`,"utf8")}async function Ha(e){let t=H(process.cwd(),".env.local"),r=await It(t),n=Jf(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?$/,`
|
|
328
|
+
`).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}=${Rn(u)}`;else a.push(`${c}=${Rn(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(`
|
|
329
329
|
`)}
|
|
330
|
-
`;await
|
|
331
|
-
`).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}=${
|
|
330
|
+
`;await it(t,i,"utf8")}async function Kt(e,t){let r=H(process.cwd(),".env.local"),n=await It(r),o=n?n.replace(/\n?$/,`
|
|
331
|
+
`).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}=${Rn(t)}`;else o.push(`${e}=${Rn(t)}`);process.env[e]=t;let s=`${o.filter((i,c,u)=>!(i===""&&c===u.length-1)).join(`
|
|
332
332
|
`)}
|
|
333
|
-
`;await
|
|
333
|
+
`;await it(r,s,"utf8")}async function It(e){try{return await Pf(e,"utf8")}catch(t){if(t.code==="ENOENT")return"";throw t}}function Jf(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 Rn(e){return JSON.stringify(e)}function Ht(e){return T_(H(e)).replace(/^@/,"").replace(/\//g,"-").replace(/[^A-Za-z0-9_-]+/g,"-").replace(/^-+|-+$/g,"")||"broods-app"}async function Cf(){let e=H(process.cwd(),ue),t=[];await Ya(e,t);let r=Za("sha256");for(let n of t.sort())r.update(E_(e,n)),r.update("\x00"),r.update(await Pf(n)),r.update("\x00");return r.digest("hex")}async function Ya(e,t){let r=await S_(e,{withFileTypes:!0});for(let n of r){let o=Nf(e,n.name);if(n.isDirectory()){if(n.name===Ce||n.name==="generated"||n.name===".cache")continue;await Ya(o,t);continue}if(n.isFile()&&(n.name.endsWith(".ts")||n.name.endsWith(".md")))t.push(o)}}function fS(e){return e.split(/[\\/]/).some((t)=>t===Ce||t==="generated"||t===".cache")}function Kf(){return`import { defineAgent, defineSandbox, env } from "broods";
|
|
334
334
|
|
|
335
335
|
// A Lambda sandbox: a fresh, ephemeral bash environment created per run.
|
|
336
336
|
export const lambdaSandbox = defineSandbox({
|
|
@@ -358,4 +358,4 @@ export const myAgent = defineAgent({
|
|
|
358
358
|
`+" // `broods run` can reach this agent. Off by default — secured: a\n"+` // private agent is only reachable via internal endpoints or channel webhooks.
|
|
359
359
|
publicAccess: true,
|
|
360
360
|
});
|
|
361
|
-
`}function
|
|
361
|
+
`}function mS(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.");te();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}").`)}R_().catch((e)=>{console.error(e instanceof Error?e.message:String(e)),process.exit(1)});
|