broods 0.14.0 → 0.17.4
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/README.md +8 -1
- package/dist/account.d.ts +78 -57
- package/dist/account.js +1 -1
- package/dist/chunk-3cvxks4m.js +2 -0
- package/dist/chunk-prg3eaft.js +5 -0
- package/dist/cli/index.js +95 -87
- package/dist/index.d.ts +239 -132
- package/dist/index.js +1 -1
- package/package.json +13 -12
- package/dist/chunk-1wahfz6h.js +0 -1
- package/dist/chunk-4gvdgqrg.js +0 -2
- package/dist/chunk-9v4kpqb1.js +0 -5
- package/dist/chunk-pfhy5049.js +0 -2
- package/dist/chunk-vmgd45s5.js +0 -1
package/dist/cli/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import{
|
|
2
|
+
import{R as X,S as Fe,T as is,f as ce,g as Ce,h as En,i as ks,j as Zr,k as lt,l as ct,m as Pa,n as te,o as Cr,p as Cf,r as Na,u as Is}from"../chunk-prg3eaft.js";import{U as Jh}from"../chunk-3cvxks4m.js";import{mkdir as za,readFile as Of,readdir as x_,writeFile as st}from"node:fs/promises";import{createHash as ja}from"node:crypto";import{basename as __,dirname as S_,join as Pf,relative as T_,resolve as H}from"node:path";import{watch as I_}from"node:fs";import{spawn as Nf}from"node:child_process";import{tmpdir as E_}from"node:os";import{performance as If}from"node:perf_hooks";import{fileURLToPath as Kf,pathToFileURL as Hf}from"node:url";import{createHash as Yf}from"node:crypto";import{readFileSync as Xf}from"node:fs";import{mkdtemp as Qf,readdir as ls,readFile as cs,rm as em,writeFile as Qa}from"node:fs/promises";import es from"node:module";import{tmpdir as tm}from"node:os";import{basename as us,isAbsolute as rm,join as kt,relative as $t,resolve as Pr}from"node:path";import{build as nm,transformSync as ds}from"esbuild";var Ha={anthropic:{label:"Anthropic",modelPlaceholder:"claude-sonnet-4-5-20250929"},azure:{label:"Azure OpenAI",modelPlaceholder:"gpt-4.1-mini"},baseten:{label:"Baseten",modelPlaceholder:"deepseek-ai/DeepSeek-V3"},bedrock:{label:"Amazon Bedrock",modelPlaceholder:"anthropic.claude-sonnet-4-5-20250929-v1:0"},cerebras:{label:"Cerebras",modelPlaceholder:"llama3.1-8b"},cohere:{label:"Cohere",modelPlaceholder:"command-a-03-2025"},custom:{label:"Custom OpenAI-compatible",modelPlaceholder:"gpt-oss-120b"},deepinfra:{label:"DeepInfra",modelPlaceholder:"deepseek-ai/DeepSeek-V3"},deepseek:{label:"DeepSeek",modelPlaceholder:"deepseek-chat"},fireworks:{label:"Fireworks",modelPlaceholder:"accounts/fireworks/models/deepseek-v3"},google:{label:"Google",modelPlaceholder:"gemini-2.5-flash"},groq:{label:"Groq",modelPlaceholder:"llama-3.3-70b-versatile"},minimax:{label:"MiniMax",modelPlaceholder:"MiniMax-M2.7"},mistral:{label:"Mistral",modelPlaceholder:"mistral-large-latest"},openai:{label:"OpenAI",modelPlaceholder:"gpt-4.1-mini"},perplexity:{label:"Perplexity",modelPlaceholder:"sonar-pro"},togetherai:{label:"Together.ai",modelPlaceholder:"deepseek-ai/DeepSeek-V3"},v0:{label:"Vercel v0",modelPlaceholder:"v0-1.0-md"},vercel:{label:"Vercel AI Gateway",modelPlaceholder:"openai/gpt-4.1-mini"},vertex:{label:"Google Vertex AI",modelPlaceholder:"gemini-2.5-flash"},xai:{label:"xAI Grok",modelPlaceholder:"grok-4"}},Ya=Object.keys(Ha);function Xa(e){return Object.hasOwn(Ha,e)}var ts="*",om=`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,Ja=20000000,Ga=200,Df=new Set(["node_modules",".git"]),Uf=[/^\.env(?:\.|$)/i,/^id_(?:rsa|dsa|ecdsa|ed25519)(?:\.pub)?$/i,/\.(?:pem|key|p12|pfx)$/i],ko={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 Le(e={}){let t=e.cwd??process.cwd();te(t);let r=Cr(t,ce),o=await Lf(r),n=await Ff(o),a=await Bf(n,t,e.project),s=n.filter((f)=>X(f.value)).map((f)=>({exportName:f.exportName,file:f.file,resource:f.value})),i=s.map((f)=>f.resource);rm(i),tm(i);let u=nm(s,n);for(let f of i)Wf(f);for(let f of i)Vf(f);for(let f of i)Jf(f);Gf(i),Yf(i);let c=om(s),d=Zf(a,e.stage??(e.useRuntimeStage===!1?void 0:nt()),e.command??"dev"),p=(await Promise.all(s.map((f)=>am(f,r)))).flat().sort((f,h)=>`${f.kind}:${f.name}`.localeCompare(`${h.kind}:${h.name}`));return{config:a,resources:i,resourceAliases:c,channels:u,manifest:{version:1,project:a.project,stage:d,resources:p}}}function ts(e){let t=new Set;for(let r of e.resources)Or(r.config,t);return[...t].sort()}function Or(e,t){if(Array.isArray(e)){for(let r of e)Or(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 o of Object.values(r))Or(o,t)}}function Zf(e,t,r){if(t)return t;let o=e.stages?.[r];if(o)return o;return r==="deploy"?"production":"development"}async function Lf(e){let t=[];async function r(o){let n=await Xa(o,{withFileTypes:!0});for(let a of n){let s=St(o,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((o,n)=>It(e,o).localeCompare(It(e,n)))}async function Ff(e){let t=[];for(let r of e){let n=await import(`${Mf(r).href}?t=${Date.now()}`);t.push(...Object.entries(n).map(([a,s])=>({exportName:a,file:r,value:s})))}return t}async function Bf(e,t,r){let n=e.find((s)=>Ya(s.value))?.value?.config??{},a=r??process.env.BROODS_PROJECT??n.project??Rm(es(Cr(t)));if(!a.trim())throw Error("Project name is required. Pass --project <name> or set BROODS_PROJECT.");return{...n,project:a}}var Ka=new Set(["agent","harness","model","provider","session","hooks","channels","tools","denyTools","sandbox","workspaces","subagent","skills","scheduler","policy","publicAccess"]),qf={workspace:"workspaces",skill:"skills",policies:"policy",tool:"tools",channel:"channels",hook:"hooks",subagents:"subagent",sandboxes:"sandbox",systemPrompt:"agent",system:"agent"};function Wf(e){if(e.kind!=="agent")return;let t=e.config;for(let r of Object.keys(t)){if(Ka.has(r))continue;let o=qf[r],n=o?` Did you mean "${o}"?`:` Allowed keys: ${[...Ka].sort().join(", ")}.`;throw Error(`Agent "${e.name}" has an unknown config key "${r}".${n}`)}}function Vf(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 o=r.provider;if(o===void 0||o==="s3")return;if(o==="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 Jf(e){if(e.kind!=="workspace")return;let t=e.config;if(typeof t.isolation==="string")throw Error(`Workspace "${e.name}" config.isolation no longer supports string modes; use isolation: true or omit it.`);if(t.isolation!==void 0&&typeof t.isolation!=="boolean")throw Error(`Workspace "${e.name}" config.isolation must be a boolean`)}function Gf(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 o=r.config,n=o.channels;if(n!==void 0&&!Array.isArray(n))throw Error(`Agent "${r.name}" config.channels must be an array of channel definitions`);let a=Array.isArray(n)?n.filter(Gt):[],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.workspaceScope)Kf(d.workspaceScope,`Agent "${r.name}" channel "${d.type}"`);if(d.config&&typeof d.config==="object"&&"workspaceIsolationScope"in d.config)throw Error(`Agent "${r.name}" channel "${d.type}" uses workspaceIsolationScope, which is no longer supported; use workspaceScope.`)}let u=(Array.isArray(o.workspaces)?o.workspaces.map((d)=>Hf(d,t)).filter((d)=>Boolean(d)):[]).filter((d)=>d.config.isolation===!0),c=a.filter((d)=>d.workspaceScope);if(c.length>0&&u.length===0){let d=c[0];throw Error(`Agent "${r.name}" channel "${d.type}" defines workspaceScope, but no attached workspace has isolation: true.`)}if(u.length>0){for(let d of a)if(!d.workspaceScope)throw Error(`Agent "${r.name}" attaches isolated workspace "${u[0].name}", but channel "${d.type}" does not define workspaceScope.`)}}}function Kf(e,t){if(!e)return;if(e.level==="channel"){if("alias"in e&&e.alias!==void 0)throw Error(`${t} workspaceScope.alias is only supported when workspaceScope.level is conversation`);return}if(e.level!=="conversation")throw Error(`${t} workspaceScope.level must be one of: channel, conversation`);if(!("alias"in e)||typeof e.alias!=="string"||e.alias.length===0)throw Error(`${t} workspaceScope.alias must be a non-empty string when workspaceScope.level is conversation`);if(!/^[A-Za-z0-9._-]+$/.test(e.alias))throw Error(`${t} workspaceScope.alias must use only letters, numbers, dots, underscores, or hyphens`)}function Hf(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 Yf(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 o=r.config,n=rs(o.sandbox,t),a=o.workspaces;if(!Array.isArray(a))continue;for(let s of a){let i=Qf(s),u=Xf(s,n,t);if(!u||em(u))continue;throw Error(`Agent "${r.name}" workspace "${i}" uses sandbox "${u.name}" (${os(u)}) 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 rs(e,t){if(X(e)&&e.kind==="sandbox")return e;if(typeof e==="string")return t.get(e);return}function Xf(e,t,r){if(e&&typeof e==="object"&&"sandbox"in e){let o=e.sandbox;if(o===null)return;return rs(o,r)}return t}function Qf(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 em(e){let t=os(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 os(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 o=r.config.harness?.sandbox;if(X(o)&&o.kind==="sandbox"&&!t.has(o.name))throw Error(`Agent "${r.name}" harness references sandbox "${o.name}", but that sandbox is not exported from broods/`)}}function rm(e){let t=new Set;for(let r of e){let o=`${r.kind}:${r.name}`;if(t.has(o))throw Error(`Duplicate resource: ${o}`);t.add(o)}}function om(e){let t={},r=new Set;for(let{exportName:o,resource:n}of e){if(o==="default"||!$o(o))continue;let a=`${n.kind}:${o}`;if(r.has(a))throw Error(`Duplicate export alias for ${n.kind}: ${o}`);r.add(a),t[n.kind]??={},t[n.kind][n.name]=o}return t}function nm(e,t){let r=new Map;for(let s of t){if(!Gt(s.value)||s.exportName==="default"||!$o(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 o=new Map,n=new Set,a=[];for(let{exportName:s,resource:i}of e){if(i.kind!=="agent")continue;let u=i.config.channels;if(u===void 0)continue;if(!Array.isArray(u))throw Error(`Agent "${i.name}" config.channels must be an array of channel definitions`);let c=new Set;for(let d of u){if(!Gt(d))throw Error(`Agent "${i.name}" config.channels must contain channel definitions`);let p=o.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(c.has(d.type))throw Error(`Agent "${i.name}" cannot configure more than one ${d.type} channel`);o.set(d,i.name),c.add(d.type);let f=s!=="default"&&$o(s)?s:i.name,h=r.get(d)??`${f}${ns(d.type)}Channel`;if(n.has(h))throw Error(`Duplicate channel export alias: ${h}`);n.add(h),a.push({alias:h,type:d.type,id:h,agentName:i.name})}}for(let[s,i]of r)if(!o.has(s))throw Error(`Channel "${i}" must be attached to exactly one agent`);return a.sort((s,i)=>s.alias.localeCompare(i.alias))}function ns(e){return e.charAt(0).toUpperCase()+e.slice(1)}function $o(e){return/^[A-Za-z_$][A-Za-z0-9_$]*$/.test(e)}async function am(e,t){let r=e.resource;if(r.kind==="agent"){let o=mm(r,t);return[...o.hookResource?[o.hookResource]:[],{kind:r.kind,name:r.name,...r.description?{description:r.description}:{},config:o.config}]}return[{kind:r.kind,name:r.name,...r.description?{description:r.description}:{},config:await sm(e,t)}]}async function sm(e,t){let r=e.resource;if(r.kind==="skill")return await bm(r.config,t);if(r.kind==="tool")return await wm(e,r.config,t);if(r.kind==="policy"){let o={...r.config};return o.version=o.version??1,Tt(o)}if(r.kind==="cron"){let o={...r.config},n=o.agent;if(o.agentId=X(n)?n.name:n,o.name=o.name??r.name,delete o.agent,typeof o.input==="string")o.events=[{role:"user",content:[{type:"text",text:o.input}]}],delete o.input;return Tt(o)}return Tt(r.config)}var im=new Set(["apiKey","base_url","baseURL"]),lm=new Set(["activeTools","debug","inactiveTools","permissionMode","sandbox","startupTimeoutMs","type","webSearch"]),cm=new Set(["enabled","level","subsystems"]);function um(e){if(im.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 dm(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,o]of Object.entries(t)){if(!Wa(r))throw Error(`Agent "${e}" config.provider.${r} is not a supported provider (expected one of: ${qa.join(", ")})`);if(typeof o!=="object"||o===null||Array.isArray(o))throw Error(`Agent "${e}" config.provider.${r} must be an object`);let n=o;for(let a of Object.keys(n)){let s=um(a);if(s)throw Error(`Agent "${e}" config.provider.${r} has unknown option "${a}" — did you mean ${s}?`)}if(r==="custom"&&n.base_url===void 0&&n.baseURL===void 0)throw Error(`Agent "${e}" config.provider.custom.base_url is required (use "base_url" or "baseURL")`)}}function pm(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 o of Object.keys(r))if(!lm.has(o))throw Error(`Agent "${e}" config.harness has unknown option "${o}"`);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(Mo(e,r.activeTools,"activeTools"),Mo(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`);fm(e,r.debug)}function fm(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 o of Object.keys(r))if(!cm.has(o))throw Error(`Agent "${e}" config.harness.debug has unknown option "${o}"`);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`);Mo(e,r.subsystems,"debug.subsystems")}function Mo(e,t,r){if(t!==void 0&&(!Array.isArray(t)||!t.every((o)=>typeof o==="string"&&o.trim().length>0)))throw Error(`Agent "${e}" config.harness.${r} must be an array of non-empty strings`)}function mm(e,t){let r={...e.config};if(dm(e.name,r.provider),pm(e.name,r.harness),r.harness&&typeof r.harness==="object"&&!Array.isArray(r.harness)){let n={...r.harness};if(r.sandbox!==void 0)throw Error(`Agent "${e.name}" must configure the AI SDK harness sandbox on defineHarness, not defineAgent`);r.sandbox=X(n.sandbox)?n.sandbox.name:n.sandbox,delete n.sandbox,r.harness=n}let o=hm(e.name,r.hooks);if(o)r.hooks=o.agentHooksConfig;else if(r.hooks!==void 0)r.hooks=as(r.hooks,e.name);if(r.channels!==void 0){if(!Array.isArray(r.channels))throw Error(`Agent "${e.name}" config.channels must be an array of channel definitions`);r.channels=Object.fromEntries(r.channels.map((n)=>{if(!Gt(n))throw Error(`Agent "${e.name}" config.channels must contain channel definitions`);let a=`${e.name}${ns(n.type)}Channel`;return[n.type,{id:a,...n.config}]}))}if(X(r.sandbox))r.sandbox=r.sandbox.name;if(Array.isArray(r.workspaces))r.workspaces=r.workspaces.map((n)=>xm(n,e.name));if(r.policy!==void 0){let n=ym(r.policy,e.name);if(n)r.policy=n;else delete r.policy}return{config:Tt(r),...o?.hookResource?{hookResource:o.hookResource}:{}}}function hm(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,o=Object.keys(ko).flatMap((c)=>{let d=r[c];if(d===void 0)return[];if(typeof d!=="function")throw Error(`Agent "${e}" config.hooks.${c} must be a function`);return[{name:c,event:ko[c],source:gm(d.toString())}]});if(o.length===0)return;let n=`${e}-hooks`,a=vm(e,o),s=Buffer.byteLength(a);if(s>Ze)throw Error(`Agent "${e}" hook bundle is too large (${s} bytes, max ${Ze})`);let i=o.map((c)=>c.event),u=as(r,e);return u.code=[{hookId:n}],{agentHooksConfig:u,hookResource:{kind:"hook",name:n,description:`Inline hooks for agent ${e}`,config:{events:i,bundle:a,sha256:Ro(a)}}}}function as(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[n]of r){if(n==="webhooks"||n in ko)continue;throw Error(`Agent "${t}" config.hooks.${n} is not supported. Use inline hook callbacks or hooks.webhooks.`)}return Object.fromEntries(r.filter(([n])=>n==="webhooks"))}function gm(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 vm(e,t){let r=`export default {
|
|
15
|
-
${t.map((
|
|
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 {
|
|
15
|
+
${t.map((n)=>` ${JSON.stringify(n.event)}: ${n.source},`).join(`
|
|
16
16
|
`)}
|
|
17
17
|
};
|
|
18
|
-
`;try{return
|
|
18
|
+
`;try{return ds(r,{loader:"ts"}).code}catch(n){let o=n instanceof Error?n.message:String(n);throw Error(`Agent "${e}" inline hooks failed to transpile: ${o}`)}}function Lm(e,t){if(!Array.isArray(e))throw Error(`Agent "${t}" config.policies must be an array`);let r=e.map((n)=>{if(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 Fm(e,t){let r=ws(t,e.path,"Skill"),n=$t(t,r).split("\\").join("/"),o=await Vm(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 Bm(e,t,r){let n=new Set;if(Nr(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?ws(r,t.path,"Tool"):e.file,a=$t(r,o).split("\\").join("/");Gm(a,"Tool");let s=Buffer.byteLength(await cs(o));if(s>Ze)throw Error(`Tool source ${a} is too large (${s} bytes, max ${Ze})`);let i=await Qf(kt(tm(),"broods-tool-")),c=kt(i,"tool-adapter.mjs");if(await Qa(c,Ym(o,t.path,e),"utf8"),!t.path)await Qa(kt(i,"broods-stub.mjs"),om,"utf8");let u;try{let p=await nm({entryPoints:[c],bundle:!0,platform:"node",format:"esm",minify:!1,write:!1,logLevel:"silent",plugins:t.path?[]:[Hm(i)]}).catch((f)=>{let m=Jm(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 em(i,{recursive:!0,force:!0})}u=Qm(u,o,a);let d=Buffer.byteLength(u);if(d>Ze)throw Error(`Tool bundle ${a} is too large (${d} bytes, max ${Ze})`);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:On(u)}}function qm(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 ws(e,t,r){if(t.trim().length===0)throw Error(`${r} path is required`);if(t.includes("\x00"))throw Error(`${r} path must not contain null bytes`);let n=Pr(e),o=Pr(n,t),a=$t(n,o);if(a===""||!a.startsWith("..")&&!rm(a))return o;throw Error(`${r} path ${t} must stay inside ${ce}/`)}function Wm(e,t){let r={...t},n=r.connection;if(!Fe(n))throw Error(`Channel "${e}" config.connection must be a connection definition`);delete r.connection,r.platform=n.type;let o=r.partition;if(ms(o,`Channel "${e}"`),o)delete r.partition,r.workspaceScope=fs(o);return Le(r)}function Le(e){if(Array.isArray(e))return e.map((t)=>Le(t));if(X(e))return e.name;if(e&&typeof e==="object")return Object.fromEntries(Object.entries(e).map(([t,r])=>[t,Le(r)]));return e}async function Vm(e){let t=[],r=0;async function n(o){let a=await ls(o,{withFileTypes:!0});for(let s of a){let i=kt(o,s.name),c=$t(e,i).split("\\").join("/");if(s.isDirectory()){if(ss(s.name))continue;await n(i)}else if(s.isFile()){if(ss(s.name)||xs(c))continue;let u=await cs(i);if(u.byteLength>Ze)throw Error(`Skill bundle file ${c} is too large (${u.byteLength} bytes, max ${Ze})`);if(r+=u.byteLength,r>rs)throw Error(`Skill bundle at ${e} is too large (${r} bytes, max ${rs})`);if(t.length>=ns)throw Error(`Skill bundle at ${e} has too many files (max ${ns})`);t.push({path:c,size:u.byteLength,sha256:On(u),contentBase64:u.toString("base64"),contentType:Km(c)})}}}return await n(e),t.sort((o,a)=>String(o.path).localeCompare(String(a.path)))}function ss(e){return e.startsWith(".")||am.has(e)}function Gm(e,t){if(xs(e))throw Error(`${t} bundle path ${e} looks like a hidden file or secret and will not be bundled`)}function Jm(e){return e instanceof Error&&Array.isArray(e.errors)}function xs(e){return e.split("/").some((r)=>r.startsWith(".")||sm.some((n)=>n.test(r)))}function On(e){return Yf("sha256").update(e).digest("hex")}function Km(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 Hm(e){let t=kt(e,"broods-stub.mjs");return{name:"broods-sdk-stub",setup:function(r){r.onResolve({filter:/^broods(\/.*)?$/},()=>({path:t}))}}}function Ym(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
|
-
`;return`import { ${r.exportName} as __tool } from ${
|
|
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 Xm(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Qm(e,t,r){let n=new RegExp(`^// .*${Xm(us(t))}$`,"gm");return e.replace(/^\/\/ .*tool-adapter\.mjs$/gm,()=>"// tool-adapter.mjs").replace(/^\/\/ .*broods-stub\.mjs$/gm,()=>"// broods-stub.mjs").replace(n,()=>`// ${r}`)}function eh(e){return e.replace(/^@/,"").replace(/\//g,"-").replace(/[^A-Za-z0-9_-]+/g,"-").replace(/^-+|-+$/g,"")}import{mkdir as th,writeFile as zr}from"node:fs/promises";import{resolve as Yt}from"node:path";async function jr(e,t,r=process.cwd(),n={},o=null,a=[]){let s=Yt(r,ce,Ce),i=rh(t,e);await th(s,{recursive:!0}),await zr(Yt(s,"ids.ts"),nh(i),"utf8"),await zr(Yt(s,"api.ts"),ah(e,i,n,o,a),"utf8"),await zr(Yt(s,"resources.ts"),oh(e),"utf8"),await zr(Yt(s,"dataModel.ts"),sh(),"utf8")}function rh(e,t){let r={agents:qe(t,"agent"),workspaces:qe(t,"workspace"),sandboxes:qe(t,"sandbox"),crons:qe(t,"cron"),skills:qe(t,"skill"),tools:qe(t,"tool"),policies:qe(t,"policy"),channelRecords:qe(t,"channelRecord")};return{agents:We(e.agents,r.agents),workspaces:We(e.workspaces,r.workspaces),sandboxes:We(e.sandboxes,r.sandboxes),crons:We(e.crons,r.crons),skills:We(e.skills,r.skills),tools:We(e.tools,r.tools),hooks:{},policies:We(e.policies,r.policies),channelRecords:We(e.channelRecords,r.channelRecords)}}function qe(e,t){return new Set(e.resources.filter((r)=>r.kind===t).map((r)=>r.name))}function We(e,t){return Object.fromEntries(Object.entries(e??{}).filter(([r])=>t.has(r)))}function nh(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 oh(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
|
-
`),
|
|
34
|
+
`}function ah(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)=>` ${Pn(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` ${Pn(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";
|
|
@@ -43,30 +43,30 @@ export const api = {
|
|
|
43
43
|
${i}
|
|
44
44
|
},
|
|
45
45
|
channels: {
|
|
46
|
-
${
|
|
46
|
+
${c}
|
|
47
47
|
},
|
|
48
|
-
workspaces: ${
|
|
49
|
-
sandboxes: ${
|
|
50
|
-
crons: ${
|
|
51
|
-
skills: ${
|
|
52
|
-
tools: ${
|
|
53
|
-
policies: ${
|
|
48
|
+
workspaces: ${Mt("workspaces",t.workspaces,r.workspace)},
|
|
49
|
+
sandboxes: ${Mt("sandboxes",t.sandboxes,r.sandbox)},
|
|
50
|
+
crons: ${Mt("crons",t.crons,r.cron)},
|
|
51
|
+
skills: ${Mt("skills",t.skills,r.skill)},
|
|
52
|
+
tools: ${Mt("tools",t.tools,r.tool)},
|
|
53
|
+
policies: ${Mt("policies",t.policies,r.policy)},
|
|
54
54
|
} as const satisfies ResourceApi;
|
|
55
|
-
`}function
|
|
56
|
-
${
|
|
55
|
+
`}function Mt(e,t,r){let n=Object.keys(t);if(n.length===0)return"{}";return`{
|
|
56
|
+
${n.map((a)=>` ${Pn(r?.[a]??a)}: ids.${e}[${JSON.stringify(a)}],`).join(`
|
|
57
57
|
`)}
|
|
58
|
-
}`}function
|
|
58
|
+
}`}function Pn(e){return/^[A-Za-z_$][A-Za-z0-9_$]*$/.test(e)?e:JSON.stringify(e)}function sh(){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=at(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 o=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(o,"Sync manifest failed"),await o.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 o=await r.json();if(!o.apiKey)throw Error("Fetch runtime key failed: response omitted apiKey");return{apiKey:o.apiKey,keyHint:o.keyHint??"",...o.endpointId?{endpointId:o.endpointId}:{},...o.projectSlug?{projectSlug:o.projectSlug}:{},...o.stageSlug?{stageSlug:o.stageSlug}:{}}}async setEnv(e,t,r,o){let n=await this.request(e,t,`/env/${encodeURIComponent(r)}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({value:o})});await ve(n,"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 o=await this.request(e,t,`/env/${encodeURIComponent(r)}`,{method:"GET"});if(o.status===404)return null;return await ve(o,"Read environment variable failed"),(await o.json()).value??null}async removeEnv(e,t,r){let o=await this.request(e,t,`/env/${encodeURIComponent(r)}`,{method:"DELETE"});await ve(o,"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 us(t),await ve(t,"List stages failed"),(await t.json()).stages??[]}async createStage(e,t,r){let o=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 us(o),await ve(o,"Create stage failed"),await o.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,o){let n=`${this.baseUrl}/v1/account/projects/${encodeURIComponent(e)}/stages/${encodeURIComponent(t)}${r}`;return await this.fetchImpl(n,{...o,headers:{Authorization:`Bearer ${this.token}`,...o.headers}})}}function zo(e,t){let r=new Map((t?.resources??[]).map((c)=>[`${c.kind}:${c.name}`,c])),o=new Map(e.resources.map((c)=>[`${c.kind}:${c.name}`,c])),n=[],a=[],s=[];for(let[c,d]of o){let p=r.get(c);if(!p)a.push({key:c,resource:d});else if(zr(Co(p))!==zr(Co(d)))n.push({operation:"update",kind:d.kind,name:d.name})}for(let[c,d]of r)if(!o.has(c))s.push({key:c,resource:d});let i=new Set,u=new Set;for(let c of a){let d=s.find((p)=>!i.has(p.key)&&jm(c.resource.kind)&&c.resource.kind===p.resource.kind&&zr(ls(c.resource))===zr(ls(p.resource)));if(!d)continue;u.add(c.key),i.add(d.key),n.push({operation:"rename",kind:c.resource.kind,name:c.resource.name,previousName:d.resource.name})}for(let{key:c,resource:d}of a)if(!u.has(c))n.push({operation:"create",kind:d.kind,name:d.name});for(let{key:c,resource:d}of s)if(!i.has(c))n.push({operation:"delete",kind:d.kind,name:d.name});return n.sort((c,d)=>cs(c).localeCompare(cs(d)))}function Co(e){let t=Oo(e);if(e.kind!=="skill"&&e.kind!=="tool"&&e.kind!=="hook")return t;return{...t,config:Po(t.config)}}function ls(e){let t=Co(e),{name:r,...o}=t;return o}function jm(e){return e==="agent"||e==="workspace"||e==="sandbox"||e==="policy"}function cs(e){return`${{create:0,rename:1,update:2,delete:3}[e.operation]}:${e.kind}:${e.previousName??""}:${e.name}`}function Oo(e){if(Array.isArray(e))return e.map(Oo);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,o])=>[r,Oo(o)]))}return e}function Po(e){if(Array.isArray(e))return e.map(Po);if(e&&typeof e==="object")return Object.fromEntries(Object.entries(e).flatMap(([t,r])=>{if(t==="contentBase64"||t==="bundle")return[];return[[t,Po(r)]]}));return e}function zr(e){return JSON.stringify(No(e))}function No(e){if(Array.isArray(e))return e.map(No);if(e&&typeof e==="object")return Object.fromEntries(Object.entries(e).sort(([t],[r])=>t.localeCompare(r)).map(([t,r])=>[t,No(r)]));return e}function us(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 Dm=1,Um=0;function Zm(e,t,r,o){return`${ds(e)}/v1/${encodeURIComponent(t)}/${encodeURIComponent(r)}/observability/ws?token=${encodeURIComponent(o)}`}function Lm(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 Fm(){let e=globalThis.WebSocket;if(!e)throw Error("WebSocket is not available in this environment.");return e}async function ps(e,t,r=fetch){try{let o=await r(`${e.replace(/\/+$/,"")}/v1/internal/observability-scope`,{method:"POST",headers:{Authorization:`Bearer ${t}`,"Content-Type":"application/json"},signal:AbortSignal.timeout(5000)});if(!o.ok)return null;let n=await o.json();if(typeof n?.projectSlug!=="string"||typeof n?.stageSlug!=="string"||n.projectSlug===""||n.stageSlug==="")return null;return n}catch{return null}}async function*jr(e,t={}){let r=new Set,o=500;while(!t.signal?.aborted){try{for await(let n of Bm(e,t)){let a=`${n.ts}|${n.eventType}|${n.message}`;if(r.has(a))continue;if(r.add(a),r.size>5000)r.delete(r.values().next().value);o=500,yield n}}catch(n){if(t.signal?.aborted)return;let a=n instanceof Error?n.message:String(n);if(/unauthorized|invalid websocket token|scope does not match/i.test(a))throw n}await qm(o,t.signal),o=Math.min(o*2,5000)}}async function*Bm(e,t){let{baseUrl:r,apiKey:o,project:n,stage:a}=e,{backfill:s=0,minLevel:i,signal:u}=t,c=t.liveOnly??s<=0;if(u?.aborted)return;let d=Zm(r,n,a,o),p=d.slice(0,d.indexOf("?")),f=Fm(),h=[],y=null,v=!1,_=null,j=()=>{_?.(),_=null},C=new f(d),Z=()=>{if(C.readyState===Dm||C.readyState===Um)C.close(1000,"client closed");u?.removeEventListener("abort",R)},R=()=>{v=!0,j(),Z()};u?.addEventListener("abort",R,{once:!0}),C.onopen=()=>{if(u?.aborted){Z();return}let P={type:"subscribe",stream:"logs",...s>0?{backfill:s}:{},...c?{liveOnly:!0}:{},...i!==void 0?{minLevel:i}:{}};C.send(JSON.stringify(P))},C.onmessage=(P)=>{let m=Lm(P.data);if(!m)return;switch(m.type){case"backfill":if(m.stream==="logs"){for(let N of m.entries)h.push(N);j()}break;case"log":h.push(m.entry),j();break;case"error":y=Error(`Observability gateway error: ${m.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(h.length>0){yield h.shift();continue}if(y)throw y;if(v)return;await new Promise((P)=>{_=P})}}finally{Z()}}function qm(e,t){return new Promise((r)=>{if(t?.aborted)return r();let o=setTimeout(r,e);t?.addEventListener("abort",()=>{clearTimeout(o),r()},{once:!0})})}import{createServer as Wm}from"node:http";import{randomUUID as Vm}from"node:crypto";import{spawn as Jm}from"node:child_process";import{createInterface as Ur}from"node:readline/promises";import{stdin as st,stdout as qe}from"node:process";var Gm=180000,Km=new Set(["--base-url","--dashboard-url","--stage","--from","--level","--limit","--project","--region","-n"]);function kt(e){let t=[];for(let r=0;r<e.length;r+=1){let o=e[r];if(o===void 0)continue;if(Km.has(o)){r+=1;continue}if(o.startsWith("-"))continue;t.push(o)}return t}function E(e,t){let r=e.indexOf(t);return r>=0?e[r+1]:void 0}function Ee(e,t){return e.includes(t)}function it(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}async function ke(e){te();let t=await fs();if(!t)throw Error("Run `broods login` first, or set BROODS_TOKEN and BROODS_BASE_URL.");return{...t,...e?{baseUrl:at(e)}:{}}}async function ms(e){let t=Ur({input:st,output:qe});try{let r=await t.question(`${e}: `);if(!r)throw Error(`${e} is required`);return r}finally{t.close()}}async function lt(e,t){let r=Ur({input:st,output:qe});try{let o=r.question(`${e}: `);if(t){if(st.isTTY&&qe.isTTY)qe.write("\x1B[90m");if(r.write(t),st.isTTY&&qe.isTTY)qe.write("\x1B[0m")}return(await o).trim()||t||""}finally{r.close()}}async function $t(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((n,a)=>{console.log(` ${a+1}. ${r(n)}`)});let o=Ur({input:st,output:qe});try{while(!0){let n=(await o.question(`Choose 1-${t.length}: `)).trim(),a=Number(n);if(Number.isInteger(a)&&a>=1&&a<=t.length)return t[a-1];console.log(`Enter a number from 1 to ${t.length}.`)}}finally{o.close()}}async function hs(e){if(!st.isTTY)return!1;let t=Ur({input:st,output:qe});try{let r=(await t.question(`${e} [y/N] `)).trim().toLowerCase();return r==="y"||r==="yes"}finally{t.close()}}async function jo(e){let t=Vm(),{code:r,close:o}=await Ym(t);try{let n=r.callbackUrl,a=`${at(e)}/cli-auth/start?`+new URLSearchParams({callback:n,state:t});await Hm(a),eh(a),console.log(`Opening ${a}`);let s=await Xm(r.promise,Gm),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 u=await i.json(),c={baseUrl:s.baseUrl,dashboardUrl:at(e),token:u.token,createdAt:new Date().toISOString(),...u.user?{user:u.user}:{},...u.org?{org:u.org}:{},...u.account?{account:u.account}:{}};return await Dr(c),c}finally{o()}}async function Hm(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 Ym(e){return new Promise((t,r)=>{let o=Wm((u,c)=>{try{let d=new URL(u.url??"/","http://127.0.0.1"),p=d.searchParams.get("state"),f=d.searchParams.get("code"),h=d.searchParams.get("base_url");if(p!==e||!f){c.writeHead(400).end("Invalid broods login callback.");return}if(!h){c.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}c.writeHead(200,{"Content-Type":"text/plain"}).end("broods CLI login complete. You can close this tab."),n({code:f,baseUrl:at(h)})}catch(d){a(d)}}),n,a,s=new Promise((u,c)=>{n=u,a=c}),i=Qm();o.on("error",(u)=>{if(!process.env.BROODS_LOGIN_PORT&&i!==0&&u.code==="EADDRINUSE"){o.listen(0,"127.0.0.1");return}r(u)}),o.listen(i,"127.0.0.1",()=>{let u=o.address();if(!u||typeof u==="string"){r(Error("Failed to allocate callback port"));return}t({code:{callbackUrl:`http://127.0.0.1:${u.port}/callback`,promise:s},close:()=>o.close()})})})}async function Xm(e,t){let r,o=new Promise((n,a)=>{r=setTimeout(()=>a(Error(`Timed out waiting for browser login to complete.
|
|
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.
|
|
61
61
|
Check the browser tab and the dashboard logs for an error. If the browser shows
|
|
62
62
|
404 on /cli-auth/start, deploy the dashboard build that includes CLI auth or pass
|
|
63
63
|
--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,
|
|
65
|
-
`)}function
|
|
66
|
-
Error message: ${
|
|
67
|
-
Error message: ${Yt(r)}`,cause:r});this[Ws]=!0,this.value=t,this.context=o}static isInstance(t){return k.hasMarker(t,_i)}static wrap({value:t,cause:r,context:o}){var n,a,s;if(e.isInstance(r)&&r.value===t&&((n=r.context)==null?void 0:n.field)===(o==null?void 0:o.field)&&((a=r.context)==null?void 0:a.entityName)===(o==null?void 0:o.entityName)&&((s=r.context)==null?void 0:s.entityId)===(o==null?void 0:o.entityId))return r;return new e({value:t,cause:r,context:o})}},Si="AI_UnsupportedFunctionalityError",Ti=`vercel.ai.error.${Si}`,Sh=Symbol.for(Ti),Js,Gs,pS=class extends(Gs=k,Js=Sh,Gs){constructor({functionality:e,message:t=`'${e}' functionality not supported.`}){super({name:Si,message:t});this[Js]=!0,this.functionality=e}static isInstance(e){return k.hasMarker(e,Ti)}};var Ii;function g(e,t,r){function o(i,u){if(!i._zod)Object.defineProperty(i,"_zod",{value:{def:u,constr:s,traits:new Set},enumerable:!1});if(i._zod.traits.has(e))return;i._zod.traits.add(e),t(i,u);let c=s.prototype,d=Object.keys(c);for(let p=0;p<d.length;p++){let f=d[p];if(!(f in i))i[f]=c[f].bind(i)}}let n=r?.Parent??Object;class a extends n{}Object.defineProperty(a,"name",{value:e});function s(i){var u;let c=r?.Parent?new a:this;o(c,i),(u=c._zod).deferred??(u.deferred=[]);for(let d of c._zod.deferred)d();return c}return Object.defineProperty(s,"init",{value:o}),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 kS=Symbol("zod_brand");class Oe extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class Xt extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`);this.name="ZodEncodeError"}}(Ii=globalThis).__zod_globalConfig??(Ii.__zod_globalConfig={});var Mt=globalThis.__zod_globalConfig;function we(e){if(e)Object.assign(Mt,e);return Mt}var O={};Th(O,{BIGINT_FORMAT_RANGES:()=>Ri,Class:()=>Pi,NUMBER_FORMAT_RANGES:()=>Wo,aborted:()=>Je,allowsEval:()=>Fo,assert:()=>Mh,assertEqual:()=>Ih,assertIs:()=>kh,assertNever:()=>$h,assertNotEqual:()=>Eh,assignProp:()=>We,base64ToUint8Array:()=>Ci,base64urlToUint8Array:()=>Gh,cached:()=>At,captureStackTrace:()=>Fr,cleanEnum:()=>Jh,cleanRegex:()=>rr,clone:()=>xe,cloneDef:()=>Ch,createTransparentProxy:()=>Dh,defineLazy:()=>A,esc:()=>Lr,escapeRegex:()=>Ne,explicitlyAborted:()=>Vo,extend:()=>Lh,finalizeIssue:()=>ye,floatSafeRemainder:()=>Zo,getElementAtPath:()=>Oh,getEnumValues:()=>er,getLengthableOrigin:()=>or,getParsedType:()=>jh,getSizableOrigin:()=>Ai,hexToUint8Array:()=>Hh,isObject:()=>ct,isPlainObject:()=>Ve,issue:()=>Ct,joinValues:()=>Rh,jsonStringifyReplacer:()=>Rt,merge:()=>Bh,mergeDefs:()=>Pe,normalizeParams:()=>I,nullish:()=>tr,numKeys:()=>zh,objectClone:()=>Ah,omit:()=>Zh,optionalKeys:()=>qo,parsedType:()=>Vh,partial:()=>qh,pick:()=>Uh,prefixIssues:()=>ze,primitiveTypes:()=>$i,promiseAllObject:()=>Ph,propertyKeyTypes:()=>Bo,randomString:()=>Nh,required:()=>Wh,safeExtend:()=>Fh,shallowClone:()=>ki,slugify:()=>Lo,stringifyPrimitive:()=>Mi,uint8ArrayToBase64:()=>Oi,uint8ArrayToBase64url:()=>Kh,uint8ArrayToHex:()=>Yh,unwrapMessage:()=>Qt});function Ih(e){return e}function Eh(e){return e}function kh(e){}function $h(e){throw Error("Unexpected value in exhaustive check")}function Mh(e){}function er(e){let t=Object.values(e).filter((o)=>typeof o==="number");return Object.entries(e).filter(([o,n])=>t.indexOf(+o)===-1).map(([o,n])=>n)}function Rh(e,t="|"){return e.map((r)=>Mi(r)).join(t)}function Rt(e,t){if(typeof t==="bigint")return t.toString();return t}function At(e){return{get value(){{let r=e();return Object.defineProperty(this,"value",{value:r}),r}throw Error("cached value already set")}}}function tr(e){return e===null||e===void 0}function rr(e){let t=e.startsWith("^")?1:0,r=e.endsWith("$")?e.length-1:e.length;return e.slice(t,r)}function Zo(e,t){let r=e/t,o=Math.round(r),n=Number.EPSILON*Math.max(Math.abs(r),1);if(Math.abs(r-o)<n)return 0;return r-o}var Ei=Symbol("evaluating");function A(e,t,r){let o=void 0;Object.defineProperty(e,t,{get(){if(o===Ei)return;if(o===void 0)o=Ei,o=r();return o},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}function Ah(e){return Object.create(Object.getPrototypeOf(e),Object.getOwnPropertyDescriptors(e))}function We(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 o=Object.getOwnPropertyDescriptors(r);Object.assign(t,o)}return Object.defineProperties({},t)}function Ch(e){return Pe(e._zod.def)}function Oh(e,t){if(!t)return e;return t.reduce((r,o)=>r?.[o],e)}function Ph(e){let t=Object.keys(e),r=t.map((o)=>e[o]);return Promise.all(r).then((o)=>{let n={};for(let a=0;a<t.length;a++)n[t[a]]=o[a];return n})}function Nh(e=10){let r="";for(let o=0;o<e;o++)r+="abcdefghijklmnopqrstuvwxyz"[Math.floor(Math.random()*26)];return r}function Lr(e){return JSON.stringify(e)}function Lo(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}var Fr="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function ct(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}var Fo=At(()=>{if(Mt.jitless)return!1;if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch(e){return!1}});function Ve(e){if(ct(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(ct(r)===!1)return!1;if(Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)return!1;return!0}function ki(e){if(Ve(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 zh(e){let t=0;for(let r in e)if(Object.prototype.hasOwnProperty.call(e,r))t++;return t}var jh=(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}`)}},Bo=new Set(["string","number","symbol"]),$i=new Set(["string","number","bigint","boolean","symbol","undefined"]);function Ne(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function xe(e,t,r){let o=new e._zod.constr(t??e._zod.def);if(!t||r?.parent)o._zod.parent=e;return o}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 Dh(e){let t;return new Proxy({},{get(r,o,n){return t??(t=e()),Reflect.get(t,o,n)},set(r,o,n,a){return t??(t=e()),Reflect.set(t,o,n,a)},has(r,o){return t??(t=e()),Reflect.has(t,o)},deleteProperty(r,o){return t??(t=e()),Reflect.deleteProperty(t,o)},ownKeys(r){return t??(t=e()),Reflect.ownKeys(t)},getOwnPropertyDescriptor(r,o){return t??(t=e()),Reflect.getOwnPropertyDescriptor(t,o)},defineProperty(r,o,n){return t??(t=e()),Reflect.defineProperty(t,o,n)}})}function Mi(e){if(typeof e==="bigint")return e.toString()+"n";if(typeof e==="string")return`"${e}"`;return`${e}`}function qo(e){return Object.keys(e).filter((t)=>e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional")}var Wo={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]},Ri={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function Uh(e,t){let r=e._zod.def,o=r.checks;if(o&&o.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 We(this,"shape",s),s},checks:[]});return xe(e,a)}function Zh(e,t){let r=e._zod.def,o=r.checks;if(o&&o.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 We(this,"shape",s),s},checks:[]});return xe(e,a)}function Lh(e,t){if(!Ve(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 n=Pe(e._zod.def,{get shape(){let a={...e._zod.def.shape,...t};return We(this,"shape",a),a}});return xe(e,n)}function Fh(e,t){if(!Ve(t))throw Error("Invalid input to safeExtend: expected a plain object");let r=Pe(e._zod.def,{get shape(){let o={...e._zod.def.shape,...t};return We(this,"shape",o),o}});return xe(e,r)}function Bh(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 o={...e._zod.def.shape,...t._zod.def.shape};return We(this,"shape",o),o},get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]});return xe(e,r)}function qh(e,t,r){let n=t._zod.def.checks;if(n&&n.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,u={...i};if(r)for(let c in r){if(!(c in i))throw Error(`Unrecognized key: "${c}"`);if(!r[c])continue;u[c]=e?new e({type:"optional",innerType:i[c]}):i[c]}else for(let c in i)u[c]=e?new e({type:"optional",innerType:i[c]}):i[c];return We(this,"shape",u),u},checks:[]});return xe(t,s)}function Wh(e,t,r){let o=Pe(t._zod.def,{get shape(){let n=t._zod.def.shape,a={...n};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:n[s]})}else for(let s in n)a[s]=new e({type:"nonoptional",innerType:n[s]});return We(this,"shape",a),a}});return xe(t,o)}function Je(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 Vo(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 o;return(o=r).path??(o.path=[]),r.path.unshift(e),r})}function Qt(e){return typeof e==="string"?e:e?.message}function ye(e,t,r){let o=e.message?e.message:Qt(e.inst?._zod.def?.error?.(e))??Qt(t?.error?.(e))??Qt(r.customError?.(e))??Qt(r.localeError?.(e))??"Invalid input",{inst:n,continue:a,input:s,...i}=e;if(i.path??(i.path=[]),i.message=o,t?.reportInput)i.input=s;return i}function Ai(e){if(e instanceof Set)return"set";if(e instanceof Map)return"map";if(e instanceof File)return"file";return"unknown"}function or(e){if(Array.isArray(e))return"array";if(typeof e==="string")return"string";return"unknown"}function Vh(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 Ct(...e){let[t,r,o]=e;if(typeof t==="string")return{message:t,code:"custom",input:r,inst:o};return{...t}}function Jh(e){return Object.entries(e).filter(([t,r])=>Number.isNaN(Number.parseInt(t,10))).map((t)=>t[1])}function Ci(e){let t=atob(e),r=new Uint8Array(t.length);for(let o=0;o<t.length;o++)r[o]=t.charCodeAt(o);return r}function Oi(e){let t="";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return btoa(t)}function Gh(e){let t=e.replace(/-/g,"+").replace(/_/g,"/"),r="=".repeat((4-t.length%4)%4);return Ci(t+r)}function Kh(e){return Oi(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function Hh(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 o=0;o<t.length;o+=2)r[o/2]=Number.parseInt(t.slice(o,o+2),16);return r}function Yh(e){return Array.from(e).map((t)=>t.toString(16).padStart(2,"0")).join("")}class Pi{constructor(...e){}}var Ni=(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,Rt,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Br=g("$ZodError",Ni),Jo=g("$ZodError",Ni,{Parent:Error});function zi(e,t=(r)=>r.message){let r={},o=[];for(let n of e.issues)if(n.path.length>0)r[n.path[0]]=r[n.path[0]]||[],r[n.path[0]].push(t(n));else o.push(t(n));return{formErrors:o,fieldErrors:r}}function ji(e,t=(r)=>r.message){let r={_errors:[]},o=(n,a=[])=>{for(let s of n.issues)if(s.code==="invalid_union"&&s.errors.length)s.errors.map((i)=>o({issues:i},[...a,...s.path]));else if(s.code==="invalid_key")o({issues:s.issues},[...a,...s.path]);else if(s.code==="invalid_element")o({issues:s.issues},[...a,...s.path]);else{let i=[...a,...s.path];if(i.length===0)r._errors.push(t(s));else{let u=r,c=0;while(c<i.length){let d=i[c];if(c!==i.length-1)u[d]=u[d]||{_errors:[]};else u[d]=u[d]||{_errors:[]},u[d]._errors.push(t(s));u=u[d],c++}}}};return o(e),r}var qr=(e)=>(t,r,o,n)=>{let a=o?{...o,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(n?.Err??e)(s.issues.map((u)=>ye(u,a,we())));throw Fr(i,n?.callee),i}return s.value};var Wr=(e)=>async(t,r,o,n)=>{let a=o?{...o,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(n?.Err??e)(s.issues.map((u)=>ye(u,a,we())));throw Fr(i,n?.callee),i}return s.value};var nr=(e)=>(t,r,o)=>{let n=o?{...o,async:!1}:{async:!1},a=t._zod.run({value:r,issues:[]},n);if(a instanceof Promise)throw new Oe;return a.issues.length?{success:!1,error:new(e??Br)(a.issues.map((s)=>ye(s,n,we())))}:{success:!0,data:a.value}},Di=nr(Jo),ar=(e)=>async(t,r,o)=>{let n=o?{...o,async:!0}:{async:!0},a=t._zod.run({value:r,issues:[]},n);if(a instanceof Promise)a=await a;return a.issues.length?{success:!1,error:new e(a.issues.map((s)=>ye(s,n,we())))}:{success:!0,data:a.value}},Ui=ar(Jo),Zi=(e)=>(t,r,o)=>{let n=o?{...o,direction:"backward"}:{direction:"backward"};return qr(e)(t,r,n)};var Li=(e)=>(t,r,o)=>qr(e)(t,r,o);var Fi=(e)=>async(t,r,o)=>{let n=o?{...o,direction:"backward"}:{direction:"backward"};return Wr(e)(t,r,n)};var Bi=(e)=>async(t,r,o)=>Wr(e)(t,r,o);var qi=(e)=>(t,r,o)=>{let n=o?{...o,direction:"backward"}:{direction:"backward"};return nr(e)(t,r,n)};var Wi=(e)=>(t,r,o)=>nr(e)(t,r,o);var Vi=(e)=>async(t,r,o)=>{let n=o?{...o,direction:"backward"}:{direction:"backward"};return ar(e)(t,r,n)};var Ji=(e)=>async(t,r,o)=>ar(e)(t,r,o);var Gi=/^[cC][0-9a-z]{6,}$/,Ki=/^[0-9a-z]+$/,Hi=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Yi=/^[0-9a-vA-V]{20}$/,Xi=/^[A-Za-z0-9]{27}$/,Qi=/^[a-zA-Z0-9_-]{21}$/,el=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var tl=/^([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})$/,Go=(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 rl=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var Qh="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function ol(){return new RegExp(Qh,"u")}var nl=/^(?:(?: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])$/,al=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/;var sl=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,il=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,ll=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Ko=/^[A-Za-z0-9_-]*$/;var cl=/^https?$/,ul=/^\+[1-9]\d{6,14}$/,dl="(?:(?:\\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])))",pl=new RegExp(`^${dl}$`);function fl(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 ml(e){return new RegExp(`^${fl(e)}$`)}function hl(e){let t=fl({precision:e.precision}),r=["Z"];if(e.local)r.push("");if(e.offset)r.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let o=`${t}(?:${r.join("|")})`;return new RegExp(`^${dl}T(?:${o})$`)}var gl=(e)=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)};var vl=/^-?\d+$/,Vr=/^-?\d+(?:\.\d+)?$/,yl=/^(?:true|false)$/i,bl=/^null$/i;var wl=/^[^A-Z]*$/,xl=/^[^a-z]*$/;var Q=g("$ZodCheck",(e,t)=>{var r;e._zod??(e._zod={}),e._zod.def=t,(r=e._zod).onattach??(r.onattach=[])}),_l={number:"number",bigint:"bigint",object:"date"},Ho=g("$ZodCheckLessThan",(e,t)=>{Q.init(e,t);let r=_l[typeof t.value];e._zod.onattach.push((o)=>{let n=o._zod.bag,a=(t.inclusive?n.maximum:n.exclusiveMaximum)??Number.POSITIVE_INFINITY;if(t.value<a)if(t.inclusive)n.maximum=t.value;else n.exclusiveMaximum=t.value}),e._zod.check=(o)=>{if(t.inclusive?o.value<=t.value:o.value<t.value)return;o.issues.push({origin:r,code:"too_big",maximum:typeof t.value==="object"?t.value.getTime():t.value,input:o.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Yo=g("$ZodCheckGreaterThan",(e,t)=>{Q.init(e,t);let r=_l[typeof t.value];e._zod.onattach.push((o)=>{let n=o._zod.bag,a=(t.inclusive?n.minimum:n.exclusiveMinimum)??Number.NEGATIVE_INFINITY;if(t.value>a)if(t.inclusive)n.minimum=t.value;else n.exclusiveMinimum=t.value}),e._zod.check=(o)=>{if(t.inclusive?o.value>=t.value:o.value>t.value)return;o.issues.push({origin:r,code:"too_small",minimum:typeof t.value==="object"?t.value.getTime():t.value,input:o.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Sl=g("$ZodCheckMultipleOf",(e,t)=>{Q.init(e,t),e._zod.onattach.push((r)=>{var o;(o=r._zod.bag).multipleOf??(o.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):Zo(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})}}),Tl=g("$ZodCheckNumberFormat",(e,t)=>{Q.init(e,t),t.format=t.format||"float64";let r=t.format?.includes("int"),o=r?"int":"number",[n,a]=Wo[t.format];e._zod.onattach.push((s)=>{let i=s._zod.bag;if(i.format=t.format,i.minimum=n,i.maximum=a,r)i.pattern=vl}),e._zod.check=(s)=>{let i=s.value;if(r){if(!Number.isInteger(i)){s.issues.push({expected:o,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:o,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:o,inclusive:!0,continue:!t.abort});return}}if(i<n)s.issues.push({origin:"number",input:i,code:"too_small",minimum:n,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 Il=g("$ZodCheckMaxLength",(e,t)=>{var r;Q.init(e,t),(r=e._zod.def).when??(r.when=(o)=>{let n=o.value;return!tr(n)&&n.length!==void 0}),e._zod.onattach.push((o)=>{let n=o._zod.bag.maximum??Number.POSITIVE_INFINITY;if(t.maximum<n)o._zod.bag.maximum=t.maximum}),e._zod.check=(o)=>{let n=o.value;if(n.length<=t.maximum)return;let s=or(n);o.issues.push({origin:s,code:"too_big",maximum:t.maximum,inclusive:!0,input:n,inst:e,continue:!t.abort})}}),El=g("$ZodCheckMinLength",(e,t)=>{var r;Q.init(e,t),(r=e._zod.def).when??(r.when=(o)=>{let n=o.value;return!tr(n)&&n.length!==void 0}),e._zod.onattach.push((o)=>{let n=o._zod.bag.minimum??Number.NEGATIVE_INFINITY;if(t.minimum>n)o._zod.bag.minimum=t.minimum}),e._zod.check=(o)=>{let n=o.value;if(n.length>=t.minimum)return;let s=or(n);o.issues.push({origin:s,code:"too_small",minimum:t.minimum,inclusive:!0,input:n,inst:e,continue:!t.abort})}}),kl=g("$ZodCheckLengthEquals",(e,t)=>{var r;Q.init(e,t),(r=e._zod.def).when??(r.when=(o)=>{let n=o.value;return!tr(n)&&n.length!==void 0}),e._zod.onattach.push((o)=>{let n=o._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length}),e._zod.check=(o)=>{let n=o.value,a=n.length;if(a===t.length)return;let s=or(n),i=a>t.length;o.issues.push({origin:s,...i?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:o.value,inst:e,continue:!t.abort})}}),sr=g("$ZodCheckStringFormat",(e,t)=>{var r,o;if(Q.init(e,t),e._zod.onattach.push((n)=>{let a=n._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=(n)=>{if(t.pattern.lastIndex=0,t.pattern.test(n.value))return;n.issues.push({origin:"string",code:"invalid_format",format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})});else(o=e._zod).check??(o.check=()=>{})}),$l=g("$ZodCheckRegex",(e,t)=>{sr.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})}}),Ml=g("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=wl),sr.init(e,t)}),Rl=g("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=xl),sr.init(e,t)}),Al=g("$ZodCheckIncludes",(e,t)=>{Q.init(e,t);let r=Ne(t.includes),o=new RegExp(typeof t.position==="number"?`^.{${t.position}}${r}`:r);t.pattern=o,e._zod.onattach.push((n)=>{let a=n._zod.bag;a.patterns??(a.patterns=new Set),a.patterns.add(o)}),e._zod.check=(n)=>{if(n.value.includes(t.includes,t.position))return;n.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:n.value,inst:e,continue:!t.abort})}}),Cl=g("$ZodCheckStartsWith",(e,t)=>{Q.init(e,t);let r=new RegExp(`^${Ne(t.prefix)}.*`);t.pattern??(t.pattern=r),e._zod.onattach.push((o)=>{let n=o._zod.bag;n.patterns??(n.patterns=new Set),n.patterns.add(r)}),e._zod.check=(o)=>{if(o.value.startsWith(t.prefix))return;o.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:o.value,inst:e,continue:!t.abort})}}),Ol=g("$ZodCheckEndsWith",(e,t)=>{Q.init(e,t);let r=new RegExp(`.*${Ne(t.suffix)}$`);t.pattern??(t.pattern=r),e._zod.onattach.push((o)=>{let n=o._zod.bag;n.patterns??(n.patterns=new Set),n.patterns.add(r)}),e._zod.check=(o)=>{if(o.value.endsWith(t.suffix))return;o.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:o.value,inst:e,continue:!t.abort})}});var Pl=g("$ZodCheckOverwrite",(e,t)=>{Q.init(e,t),e._zod.check=(r)=>{r.value=t.tx(r.value)}});class Xo{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
|
-
`).filter((a)=>a),
|
|
69
|
-
`))}}var zl={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=zl;let o=[...e._zod.def.checks??[]];if(e._zod.traits.has("$ZodCheck"))o.unshift(e);for(let n of o)for(let a of n._zod.onattach)a(e);if(o.length===0)(r=e._zod).deferred??(r.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let n=(s,i,u)=>{let c=Je(s),d;for(let p of i){if(p._zod.def.when){if(Vo(s))continue;if(!p._zod.def.when(s))continue}else if(c)continue;let f=s.issues.length,h=p._zod.check(s);if(h instanceof Promise&&u?.async===!1)throw new Oe;if(d||h instanceof Promise)d=(d??Promise.resolve()).then(async()=>{if(await h,s.issues.length===f)return;if(!c)c=Je(s,f)});else{if(s.issues.length===f)continue;if(!c)c=Je(s,f)}}if(d)return d.then(()=>s);return s},a=(s,i,u)=>{if(Je(s))return s.aborted=!0,s;let c=n(i,o,u);if(c instanceof Promise){if(u.async===!1)throw new Oe;return c.then((d)=>e._zod.parse(d,u))}return e._zod.parse(c,u)};e._zod.run=(s,i)=>{if(i.skipChecks)return e._zod.parse(s,i);if(i.direction==="backward"){let c=e._zod.parse({value:s.value,issues:[]},{...i,skipChecks:!0});if(c instanceof Promise)return c.then((d)=>a(d,s,i));return a(c,s,i)}let u=e._zod.parse(s,i);if(u instanceof Promise){if(i.async===!1)throw new Oe;return u.then((c)=>n(c,o,i))}return n(u,o,i)}}A(e,"~standard",()=>({validate:(n)=>{try{let a=Di(e,n);return a.success?{value:a.data}:{issues:a.error?.issues}}catch(a){return Ui(e,n).then((s)=>s.success?{value:s.data}:{issues:s.error?.issues})}},vendor:"zod",version:1}))}),Hr=g("$ZodString",(e,t)=>{F.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??gl(e._zod.bag),e._zod.parse=(r,o)=>{if(t.coerce)try{r.value=String(r.value)}catch(n){}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)=>{sr.init(e,t),Hr.init(e,t)}),Wl=g("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=tl),B.init(e,t)}),Vl=g("$ZodUUID",(e,t)=>{if(t.version){let o={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(o===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=Go(o))}else t.pattern??(t.pattern=Go());B.init(e,t)}),Jl=g("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=rl),B.init(e,t)}),Gl=g("$ZodURL",(e,t)=>{B.init(e,t),e._zod.check=(r)=>{try{let o=r.value.trim();if(!t.normalize&&t.protocol?.source===cl.source){if(!/^https?:\/\//i.test(o)){r.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:r.value,inst:e,continue:!t.abort});return}}let n=new URL(o);if(t.hostname){if(t.hostname.lastIndex=0,!t.hostname.test(n.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(n.protocol.endsWith(":")?n.protocol.slice(0,-1):n.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=n.href;else r.value=o;return}catch(o){r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:e,continue:!t.abort})}}}),Kl=g("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=ol()),B.init(e,t)}),Hl=g("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=Qi),B.init(e,t)}),Yl=g("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=Gi),B.init(e,t)}),Xl=g("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=Ki),B.init(e,t)}),Ql=g("$ZodULID",(e,t)=>{t.pattern??(t.pattern=Hi),B.init(e,t)}),ec=g("$ZodXID",(e,t)=>{t.pattern??(t.pattern=Yi),B.init(e,t)}),tc=g("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=Xi),B.init(e,t)}),rc=g("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=hl(t)),B.init(e,t)}),oc=g("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=pl),B.init(e,t)}),nc=g("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=ml(t)),B.init(e,t)}),ac=g("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=el),B.init(e,t)}),sc=g("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=nl),B.init(e,t),e._zod.bag.format="ipv4"}),ic=g("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=al),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 lc=g("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=sl),B.init(e,t)}),cc=g("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=il),B.init(e,t),e._zod.check=(r)=>{let o=r.value.split("/");try{if(o.length!==2)throw Error();let[n,a]=o;if(!a)throw Error();let s=Number(a);if(`${s}`!==a)throw Error();if(s<0||s>128)throw Error();new URL(`http://[${n}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:e,continue:!t.abort})}}});function uc(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 dc=g("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=ll),B.init(e,t),e._zod.bag.contentEncoding="base64",e._zod.check=(r)=>{if(uc(r.value))return;r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:e,continue:!t.abort})}});function eg(e){if(!Ko.test(e))return!1;let t=e.replace(/[-_]/g,(o)=>o==="-"?"+":"/"),r=t.padEnd(Math.ceil(t.length/4)*4,"=");return uc(r)}var pc=g("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=Ko),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})}}),fc=g("$ZodE164",(e,t)=>{t.pattern??(t.pattern=ul),B.init(e,t)});function tg(e,t=null){try{let r=e.split(".");if(r.length!==3)return!1;let[o]=r;if(!o)return!1;let n=JSON.parse(atob(o));if("typ"in n&&n?.typ!=="JWT")return!1;if(!n.alg)return!1;if(t&&(!("alg"in n)||n.alg!==t))return!1;return!0}catch{return!1}}var mc=g("$ZodJWT",(e,t)=>{B.init(e,t),e._zod.check=(r)=>{if(tg(r.value,t.alg))return;r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:e,continue:!t.abort})}});var en=g("$ZodNumber",(e,t)=>{F.init(e,t),e._zod.pattern=e._zod.bag.pattern??Vr,e._zod.parse=(r,o)=>{if(t.coerce)try{r.value=Number(r.value)}catch(s){}let n=r.value;if(typeof n==="number"&&!Number.isNaN(n)&&Number.isFinite(n))return r;let a=typeof n==="number"?Number.isNaN(n)?"NaN":!Number.isFinite(n)?"Infinity":void 0:void 0;return r.issues.push({expected:"number",code:"invalid_type",input:n,inst:e,...a?{received:a}:{}}),r}}),hc=g("$ZodNumberFormat",(e,t)=>{Tl.init(e,t),en.init(e,t)}),gc=g("$ZodBoolean",(e,t)=>{F.init(e,t),e._zod.pattern=yl,e._zod.parse=(r,o)=>{if(t.coerce)try{r.value=Boolean(r.value)}catch(a){}let n=r.value;if(typeof n==="boolean")return r;return r.issues.push({expected:"boolean",code:"invalid_type",input:n,inst:e}),r}});var vc=g("$ZodNull",(e,t)=>{F.init(e,t),e._zod.pattern=bl,e._zod.values=new Set([null]),e._zod.parse=(r,o)=>{let n=r.value;if(n===null)return r;return r.issues.push({expected:"null",code:"invalid_type",input:n,inst:e}),r}});var yc=g("$ZodUnknown",(e,t)=>{F.init(e,t),e._zod.parse=(r)=>r}),bc=g("$ZodNever",(e,t)=>{F.init(e,t),e._zod.parse=(r,o)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:e}),r)});function jl(e,t,r){if(e.issues.length)t.issues.push(...ze(r,e.issues));t.value[r]=e.value}var wc=g("$ZodArray",(e,t)=>{F.init(e,t),e._zod.parse=(r,o)=>{let n=r.value;if(!Array.isArray(n))return r.issues.push({expected:"array",code:"invalid_type",input:n,inst:e}),r;r.value=Array(n.length);let a=[];for(let s=0;s<n.length;s++){let i=n[s],u=t.element._zod.run({value:i,issues:[]},o);if(u instanceof Promise)a.push(u.then((c)=>jl(c,r,s)));else jl(u,r,s)}if(a.length)return Promise.all(a).then(()=>r);return r}});function Kr(e,t,r,o,n,a){let s=r in o;if(e.issues.length){if(n&&a&&!s)return;t.issues.push(...ze(r,e.issues))}if(!s&&!n){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 xc(e){let t=Object.keys(e.shape);for(let o of t)if(!e.shape?.[o]?._zod?.traits?.has("$ZodType"))throw Error(`Invalid element at key "${o}": expected a Zod schema`);let r=qo(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(r)}}function _c(e,t,r,o,n,a){let s=[],i=n.keySet,u=n.catchall._zod,c=u.def.type,d=u.optin==="optional",p=u.optout==="optional";for(let f in t){if(f==="__proto__")continue;if(i.has(f))continue;if(c==="never"){s.push(f);continue}let h=u.run({value:t[f],issues:[]},o);if(h instanceof Promise)e.push(h.then((y)=>Kr(y,r,f,t,d,p)));else Kr(h,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 rg=g("$ZodObject",(e,t)=>{if(F.init(e,t),!Object.getOwnPropertyDescriptor(t,"shape")?.get){let i=t.shape;Object.defineProperty(t,"shape",{get:()=>{let u={...i};return Object.defineProperty(t,"shape",{value:u}),u}})}let o=At(()=>xc(t));A(e._zod,"propValues",()=>{let i=t.shape,u={};for(let c in i){let d=i[c]._zod;if(d.values){u[c]??(u[c]=new Set);for(let p of d.values)u[c].add(p)}}return u});let n=ct,a=t.catchall,s;e._zod.parse=(i,u)=>{s??(s=o.value);let c=i.value;if(!n(c))return i.issues.push({expected:"object",code:"invalid_type",input:c,inst:e}),i;i.value={};let d=[],p=s.shape;for(let f of s.keys){let h=p[f],y=h._zod.optin==="optional",v=h._zod.optout==="optional",_=h._zod.run({value:c[f],issues:[]},u);if(_ instanceof Promise)d.push(_.then((j)=>Kr(j,i,f,c,y,v)));else Kr(_,i,f,c,y,v)}if(!a)return d.length?Promise.all(d).then(()=>i):i;return _c(d,c,i,u,o.value,e)}}),Sc=g("$ZodObjectJIT",(e,t)=>{rg.init(e,t);let r=e._zod.parse,o=At(()=>xc(t)),n=(f)=>{let h=new Xo(["shape","payload","ctx"]),y=o.value,v=(Z)=>{let R=Lr(Z);return`shape[${R}]._zod.run({ value: input[${R}], issues: [] }, ctx)`};h.write("const input = payload.value;");let _=Object.create(null),j=0;for(let Z of y.keys)_[Z]=`key_${j++}`;h.write("const newResult = {};");for(let Z of y.keys){let R=_[Z],P=Lr(Z),m=f[Z],N=m?._zod?.optin==="optional",V=m?._zod?.optout==="optional";if(h.write(`const ${R} = ${v(Z)};`),N&&V)h.write(`
|
|
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 Sh(){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 Th(e){let t=process.platform==="darwin"?"open":process.platform==="win32"?"cmd":"xdg-open",r=process.platform==="win32"?["/c","start",e]:[e];vh(t,r,{stdio:"ignore",detached:!0}).unref()}function Ih(e,t={}){let r=Xt(t),n=Rh(e.stage),o=n==="Development",a=ue("▌",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?ue("dashboard","\x1B[4m",r):"dashboard",c=`${e.dashboardUrl}?project=${encodeURIComponent(e.project)}&stage=${encodeURIComponent(e.stage)}`,u=ue(c,"\x1B[2m\x1B[4m",r);return[`${a} Syncing ${n}: ${ue(e.project,"",r)}`,`${a} ${s} ${e.stage} (${i})`,`${a} ${ue("└─","\x1B[2m",r)} ${u}`].join(`
|
|
65
|
+
`)}function Eh(e,t={}){let r=(t.now??new Date).toTimeString().slice(0,8);return`${ue("✔","\x1B[32m",Xt(t))} ${r} Resources ready! (${Ch(e)})`}function kh(e,t={}){let r=Xt(t),n=ue("▌","\x1B[32m",r),o=ue("↑","\x1B[32m",r);return`${n} ${o} Synced ${e.length} env var(s) from .env.local: ${e.join(", ")}`}function $h(e,t={}){let r=Xt(t);return e.map((n)=>{let o=Ah(n.operation,r);if(n.operation==="rename"&&n.previousName)return` ${o} ${n.kind}:${n.previousName} -> ${n.name}`;return` ${o} ${n.kind}:${n.name}`})}function Mh(e,t={}){return ue(e,"\x1B[33m",Xt(t))}function Rs(e){console.error(Eh(e))}function As(e){console.error(Ih(e))}function Cs(e){console.error(kh(e))}function Fr(e){for(let t of $h(e))console.log(t)}function J(e){console.log(Mh(e))}function Xt(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 ue(e,t,r){return r?`${t}${e}\x1B[0m`:e}function Rh(e){let t=e.trim().toLowerCase();if(t==="development")return"Development";if(t==="production")return"Production";return e.trim()}function Ah(e,t){if(e==="create")return`[${ue("+","\x1B[32m",t)}]`;if(e==="rename")return`[${ue("~","\x1B[33m",t)}]`;if(e==="update")return`[${ue("*","\x1B[36m",t)}]`;return`[${ue("-","\x1B[31m",t)}]`}function Ch(e){if(e>=1000)return`${(e/1000).toFixed(2)}s`;return`${Math.max(e,0).toFixed(1)}ms`}var ci="vercel.ai.error",Oh=Symbol.for(ci),Os,Ps,k=class e extends(Ps=Error,Os=Oh,Ps){constructor({name:t,message:r,cause:n}){super(r);this[Os]=!0,this.name=t,this.cause=n}static isInstance(t){return e.hasMarker(t,ci)}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}},ui="AI_APICallError",di=`vercel.ai.error.${ui}`,Ph=Symbol.for(di),Ns,zs,LS=class extends(zs=k,Ns=Ph,zs){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:ui,message:e,cause:s});this[Ns]=!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,di)}},pi="AI_EmptyResponseBodyError",fi=`vercel.ai.error.${pi}`,Nh=Symbol.for(fi),js,Ds,FS=class extends(Ds=k,js=Nh,Ds){constructor({message:e="Empty response body"}={}){super({name:pi,message:e});this[js]=!0}static isInstance(e){return k.hasMarker(e,fi)}};function Qt(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 mi="AI_InvalidArgumentError",hi=`vercel.ai.error.${mi}`,zh=Symbol.for(hi),Us,Zs,gi=class extends(Zs=k,Us=zh,Zs){constructor({message:e,cause:t,argument:r}){super({name:mi,message:e,cause:t});this[Us]=!0,this.argument=r}static isInstance(e){return k.hasMarker(e,hi)}},vi="AI_InvalidPromptError",yi=`vercel.ai.error.${vi}`,jh=Symbol.for(yi),Ls,Fs,BS=class extends(Fs=k,Ls=jh,Fs){constructor({prompt:e,message:t,cause:r}){super({name:vi,message:`Invalid prompt: ${t}`,cause:r});this[Ls]=!0,this.prompt=e}static isInstance(e){return k.hasMarker(e,yi)}},bi="AI_InvalidResponseDataError",wi=`vercel.ai.error.${bi}`,Dh=Symbol.for(wi),Bs,qs,qS=class extends(qs=k,Bs=Dh,qs){constructor({data:e,message:t=`Invalid response data: ${JSON.stringify(e)}.`}){super({name:bi,message:t});this[Bs]=!0,this.data=e}static isInstance(e){return k.hasMarker(e,wi)}},xi="AI_JSONParseError",_i=`vercel.ai.error.${xi}`,Uh=Symbol.for(_i),Ws,Vs,Ln=class extends(Vs=k,Ws=Uh,Vs){constructor({text:e,cause:t}){super({name:xi,message:`JSON parsing failed: Text: ${e}.
|
|
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(`
|
|
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(`
|
|
70
70
|
if (${R}.issues.length) {
|
|
71
71
|
if (${P} in input) {
|
|
72
72
|
payload.issues = payload.issues.concat(${R}.issues.map(iss => ({
|
|
@@ -84,7 +84,7 @@ Error message: ${Yt(r)}`,cause:r});this[Ws]=!0,this.value=t,this.context=o}stati
|
|
|
84
84
|
newResult[${P}] = ${R}.value;
|
|
85
85
|
}
|
|
86
86
|
|
|
87
|
-
`);else if(!N)
|
|
87
|
+
`);else if(!N)m.write(`
|
|
88
88
|
const ${R}_present = ${P} in input;
|
|
89
89
|
if (${R}.issues.length) {
|
|
90
90
|
payload.issues = payload.issues.concat(${R}.issues.map(iss => ({
|
|
@@ -109,7 +109,7 @@ Error message: ${Yt(r)}`,cause:r});this[Ws]=!0,this.value=t,this.context=o}stati
|
|
|
109
109
|
}
|
|
110
110
|
}
|
|
111
111
|
|
|
112
|
-
`);else
|
|
112
|
+
`);else m.write(`
|
|
113
113
|
if (${R}.issues.length) {
|
|
114
114
|
payload.issues = payload.issues.concat(${R}.issues.map(iss => ({
|
|
115
115
|
...iss,
|
|
@@ -125,38 +125,39 @@ Error message: ${Yt(r)}`,cause:r});this[Ws]=!0,this.value=t,this.context=o}stati
|
|
|
125
125
|
newResult[${P}] = ${R}.value;
|
|
126
126
|
}
|
|
127
127
|
|
|
128
|
-
`)}h.write("payload.value = newResult;"),h.write("return payload;");let C=h.compile();return(Z,R)=>C(f,Z,R)},a,s=ct,i=!Mt.jitless,c=i&&Fo.value,d=t.catchall,p;e._zod.parse=(f,h)=>{p??(p=o.value);let y=f.value;if(!s(y))return f.issues.push({expected:"object",code:"invalid_type",input:y,inst:e}),f;if(i&&c&&h?.async===!1&&h.jitless!==!0){if(!a)a=n(t.shape);if(f=a(f,h),!d)return f;return _c([],y,f,h,p,e)}return r(f,h)}});function Dl(e,t,r,o){for(let a of e)if(a.issues.length===0)return t.value=a.value,t;let n=e.filter((a)=>!Je(a));if(n.length===1)return t.value=n[0].value,n[0];return t.issues.push({code:"invalid_union",input:t.value,inst:r,errors:e.map((a)=>a.issues.map((s)=>ye(s,o,we())))}),t}var tn=g("$ZodUnion",(e,t)=>{F.init(e,t),A(e._zod,"optin",()=>t.options.some((o)=>o._zod.optin==="optional")?"optional":void 0),A(e._zod,"optout",()=>t.options.some((o)=>o._zod.optout==="optional")?"optional":void 0),A(e._zod,"values",()=>{if(t.options.every((o)=>o._zod.values))return new Set(t.options.flatMap((o)=>Array.from(o._zod.values)));return}),A(e._zod,"pattern",()=>{if(t.options.every((o)=>o._zod.pattern)){let o=t.options.map((n)=>n._zod.pattern);return new RegExp(`^(${o.map((n)=>rr(n.source)).join("|")})$`)}return});let r=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(o,n)=>{if(r)return r(o,n);let a=!1,s=[];for(let i of t.options){let u=i._zod.run({value:o.value,issues:[]},n);if(u instanceof Promise)s.push(u),a=!0;else{if(u.issues.length===0)return u;s.push(u)}}if(!a)return Dl(s,o,e,n);return Promise.all(s).then((i)=>Dl(i,o,e,n))}});var Tc=g("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,tn.init(e,t);let r=e._zod.parse;A(e._zod,"propValues",()=>{let n={};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,u]of Object.entries(s)){if(!n[i])n[i]=new Set;for(let c of u)n[i].add(c)}}return n});let o=At(()=>{let n=t.options,a=new Map;for(let s of n){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 u of i){if(a.has(u))throw Error(`Duplicate discriminator value "${String(u)}"`);a.set(u,s)}}return a});e._zod.parse=(n,a)=>{let s=n.value;if(!ct(s))return n.issues.push({code:"invalid_type",expected:"object",input:s,inst:e}),n;let i=o.value.get(s?.[t.discriminator]);if(i)return i._zod.run(n,a);if(t.unionFallback||a.direction==="backward")return r(n,a);return n.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:t.discriminator,options:Array.from(o.value.keys()),input:s,path:[t.discriminator],inst:e}),n}}),Ic=g("$ZodIntersection",(e,t)=>{F.init(e,t),e._zod.parse=(r,o)=>{let n=r.value,a=t.left._zod.run({value:n,issues:[]},o),s=t.right._zod.run({value:n,issues:[]},o);if(a instanceof Promise||s instanceof Promise)return Promise.all([a,s]).then(([u,c])=>Ul(r,u,c));return Ul(r,a,s)}});function Qo(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(Ve(e)&&Ve(t)){let r=Object.keys(t),o=Object.keys(e).filter((a)=>r.indexOf(a)!==-1),n={...e,...t};for(let a of o){let s=Qo(e[a],t[a]);if(!s.valid)return{valid:!1,mergeErrorPath:[a,...s.mergeErrorPath]};n[a]=s.data}return{valid:!0,data:n}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let o=0;o<e.length;o++){let n=e[o],a=t[o],s=Qo(n,a);if(!s.valid)return{valid:!1,mergeErrorPath:[o,...s.mergeErrorPath]};r.push(s.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function Ul(e,t,r){let o=new Map,n;for(let i of t.issues)if(i.code==="unrecognized_keys"){n??(n=i);for(let u of i.keys){if(!o.has(u))o.set(u,{});o.get(u).l=!0}}else e.issues.push(i);for(let i of r.issues)if(i.code==="unrecognized_keys")for(let u of i.keys){if(!o.has(u))o.set(u,{});o.get(u).r=!0}else e.issues.push(i);let a=[...o].filter(([,i])=>i.l&&i.r).map(([i])=>i);if(a.length&&n)e.issues.push({...n,keys:a});if(Je(e))return e;let s=Qo(t.value,r.value);if(!s.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(s.mergeErrorPath)}`);return e.value=s.data,e}var Ec=g("$ZodRecord",(e,t)=>{F.init(e,t),e._zod.parse=(r,o)=>{let n=r.value;if(!Ve(n))return r.issues.push({expected:"record",code:"invalid_type",input:n,inst:e}),r;let a=[],s=t.keyType._zod.values;if(s){r.value={};let i=new Set;for(let c of s)if(typeof c==="string"||typeof c==="number"||typeof c==="symbol"){i.add(typeof c==="number"?c.toString():c);let d=t.keyType._zod.run({value:c,issues:[]},o);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((h)=>ye(h,o,we())),input:c,path:[c],inst:e});continue}let p=d.value,f=t.valueType._zod.run({value:n[c],issues:[]},o);if(f instanceof Promise)a.push(f.then((h)=>{if(h.issues.length)r.issues.push(...ze(c,h.issues));r.value[p]=h.value}));else{if(f.issues.length)r.issues.push(...ze(c,f.issues));r.value[p]=f.value}}let u;for(let c in n)if(!i.has(c))u=u??[],u.push(c);if(u&&u.length>0)r.issues.push({code:"unrecognized_keys",input:n,inst:e,keys:u})}else{r.value={};for(let i of Reflect.ownKeys(n)){if(i==="__proto__")continue;if(!Object.prototype.propertyIsEnumerable.call(n,i))continue;let u=t.keyType._zod.run({value:i,issues:[]},o);if(u instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(typeof i==="string"&&Vr.test(i)&&u.issues.length){let p=t.keyType._zod.run({value:Number(i),issues:[]},o);if(p instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(p.issues.length===0)u=p}if(u.issues.length){if(t.mode==="loose")r.value[i]=n[i];else r.issues.push({code:"invalid_key",origin:"record",issues:u.issues.map((p)=>ye(p,o,we())),input:i,path:[i],inst:e});continue}let d=t.valueType._zod.run({value:n[i],issues:[]},o);if(d instanceof Promise)a.push(d.then((p)=>{if(p.issues.length)r.issues.push(...ze(i,p.issues));r.value[u.value]=p.value}));else{if(d.issues.length)r.issues.push(...ze(i,d.issues));r.value[u.value]=d.value}}}if(a.length)return Promise.all(a).then(()=>r);return r}});var kc=g("$ZodEnum",(e,t)=>{F.init(e,t);let r=er(t.entries),o=new Set(r);e._zod.values=o,e._zod.pattern=new RegExp(`^(${r.filter((n)=>Bo.has(typeof n)).map((n)=>typeof n==="string"?Ne(n):n.toString()).join("|")})$`),e._zod.parse=(n,a)=>{let s=n.value;if(o.has(s))return n;return n.issues.push({code:"invalid_value",values:r,input:s,inst:e}),n}}),$c=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((o)=>typeof o==="string"?Ne(o):o?Ne(o.toString()):String(o)).join("|")})$`),e._zod.parse=(o,n)=>{let a=o.value;if(r.has(a))return o;return o.issues.push({code:"invalid_value",values:t.values,input:a,inst:e}),o}});var Mc=g("$ZodTransform",(e,t)=>{F.init(e,t),e._zod.optin="optional",e._zod.parse=(r,o)=>{if(o.direction==="backward")throw new Xt(e.constructor.name);let n=t.transform(r.value,r);if(o.async)return(n instanceof Promise?n:Promise.resolve(n)).then((s)=>(r.value=s,r.fallback=!0,r));if(n instanceof Promise)throw new Oe;return r.value=n,r.fallback=!0,r}});function Zl(e,t){if(t===void 0&&(e.issues.length||e.fallback))return{issues:[],value:void 0};return e}var rn=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(`^(${rr(r.source)})?$`):void 0}),e._zod.parse=(r,o)=>{if(t.innerType._zod.optin==="optional"){let n=r.value,a=t.innerType._zod.run(r,o);if(a instanceof Promise)return a.then((s)=>Zl(s,n));return Zl(a,n)}if(r.value===void 0)return r;return t.innerType._zod.run(r,o)}}),Rc=g("$ZodExactOptional",(e,t)=>{rn.init(e,t),A(e._zod,"values",()=>t.innerType._zod.values),A(e._zod,"pattern",()=>t.innerType._zod.pattern),e._zod.parse=(r,o)=>t.innerType._zod.run(r,o)}),Ac=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(`^(${rr(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,o)=>{if(r.value===null)return r;return t.innerType._zod.run(r,o)}}),Cc=g("$ZodDefault",(e,t)=>{F.init(e,t),e._zod.optin="optional",A(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,o)=>{if(o.direction==="backward")return t.innerType._zod.run(r,o);if(r.value===void 0)return r.value=t.defaultValue,r;let n=t.innerType._zod.run(r,o);if(n instanceof Promise)return n.then((a)=>Ll(a,t));return Ll(n,t)}});function Ll(e,t){if(e.value===void 0)e.value=t.defaultValue;return e}var Oc=g("$ZodPrefault",(e,t)=>{F.init(e,t),e._zod.optin="optional",A(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(r,o)=>{if(o.direction==="backward")return t.innerType._zod.run(r,o);if(r.value===void 0)r.value=t.defaultValue;return t.innerType._zod.run(r,o)}}),Pc=g("$ZodNonOptional",(e,t)=>{F.init(e,t),A(e._zod,"values",()=>{let r=t.innerType._zod.values;return r?new Set([...r].filter((o)=>o!==void 0)):void 0}),e._zod.parse=(r,o)=>{let n=t.innerType._zod.run(r,o);if(n instanceof Promise)return n.then((a)=>Fl(a,e));return Fl(n,e)}});function Fl(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 Nc=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,o)=>{if(o.direction==="backward")return t.innerType._zod.run(r,o);let n=t.innerType._zod.run(r,o);if(n instanceof Promise)return n.then((a)=>{if(r.value=a.value,a.issues.length)r.value=t.catchValue({...r,error:{issues:a.issues.map((s)=>ye(s,o,we()))},input:r.value}),r.issues=[],r.fallback=!0;return r});if(r.value=n.value,n.issues.length)r.value=t.catchValue({...r,error:{issues:n.issues.map((a)=>ye(a,o,we()))},input:r.value}),r.issues=[],r.fallback=!0;return r}});var zc=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,o)=>{if(o.direction==="backward"){let a=t.out._zod.run(r,o);if(a instanceof Promise)return a.then((s)=>Gr(s,t.in,o));return Gr(a,t.in,o)}let n=t.in._zod.run(r,o);if(n instanceof Promise)return n.then((a)=>Gr(a,t.out,o));return Gr(n,t.out,o)}});function Gr(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 jc=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,o)=>{if(o.direction==="backward")return t.innerType._zod.run(r,o);let n=t.innerType._zod.run(r,o);if(n instanceof Promise)return n.then(Bl);return Bl(n)}});function Bl(e){return e.value=Object.freeze(e.value),e}var Dc=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,o)=>e._zod.innerType._zod.run(r,o)}),Uc=g("$ZodCustom",(e,t)=>{Q.init(e,t),F.init(e,t),e._zod.parse=(r,o)=>r,e._zod.check=(r)=>{let o=r.value,n=t.fn(o);if(n instanceof Promise)return n.then((a)=>ql(a,r,o,e));ql(n,r,o,e);return}});function ql(e,t,r,o){if(!e){let n={code:"custom",input:r,inst:o,path:[...o._zod.def.path??[]],continue:!o._zod.def.abort};if(o._zod.def.params)n.params=o._zod.def.params;t.issues.push(Ct(n))}}var Zc,qS=Symbol("ZodOutput"),WS=Symbol("ZodInput");class Lc{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 o={...r,...this._map.get(e)};return Object.keys(o).length?o:void 0}return this._map.get(e)}has(e){return this._map.has(e)}}function og(){return new Lc}(Zc=globalThis).__zod_globalRegistry??(Zc.__zod_globalRegistry=og());var ut=globalThis.__zod_globalRegistry;function Fc(e,t){return new e({type:"string",...I(t)})}function Bc(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...I(t)})}function on(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...I(t)})}function qc(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...I(t)})}function Wc(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...I(t)})}function Vc(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...I(t)})}function Jc(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...I(t)})}function Gc(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...I(t)})}function Kc(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...I(t)})}function Hc(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...I(t)})}function Yc(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...I(t)})}function Xc(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...I(t)})}function Qc(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...I(t)})}function eu(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...I(t)})}function tu(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...I(t)})}function ru(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...I(t)})}function ou(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...I(t)})}function nu(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...I(t)})}function au(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...I(t)})}function su(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...I(t)})}function iu(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...I(t)})}function lu(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...I(t)})}function cu(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...I(t)})}function uu(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...I(t)})}function du(e,t){return new e({type:"string",format:"date",check:"string_format",...I(t)})}function pu(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...I(t)})}function fu(e,t){return new e({type:"string",format:"duration",check:"string_format",...I(t)})}function mu(e,t){return new e({type:"number",checks:[],...I(t)})}function hu(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...I(t)})}function gu(e,t){return new e({type:"boolean",...I(t)})}function vu(e,t){return new e({type:"null",...I(t)})}function yu(e){return new e({type:"unknown"})}function bu(e,t){return new e({type:"never",...I(t)})}function Yr(e,t){return new Ho({check:"less_than",...I(t),value:e,inclusive:!1})}function ir(e,t){return new Ho({check:"less_than",...I(t),value:e,inclusive:!0})}function Xr(e,t){return new Yo({check:"greater_than",...I(t),value:e,inclusive:!1})}function lr(e,t){return new Yo({check:"greater_than",...I(t),value:e,inclusive:!0})}function Qr(e,t){return new Sl({check:"multiple_of",...I(t),value:e})}function eo(e,t){return new Il({check:"max_length",...I(t),maximum:e})}function Ot(e,t){return new El({check:"min_length",...I(t),minimum:e})}function to(e,t){return new kl({check:"length_equals",...I(t),length:e})}function nn(e,t){return new $l({check:"string_format",format:"regex",...I(t),pattern:e})}function an(e){return new Ml({check:"string_format",format:"lowercase",...I(e)})}function sn(e){return new Rl({check:"string_format",format:"uppercase",...I(e)})}function ln(e,t){return new Al({check:"string_format",format:"includes",...I(t),includes:e})}function cn(e,t){return new Cl({check:"string_format",format:"starts_with",...I(t),prefix:e})}function un(e,t){return new Ol({check:"string_format",format:"ends_with",...I(t),suffix:e})}function Ge(e){return new Pl({check:"overwrite",tx:e})}function dn(e){return Ge((t)=>t.normalize(e))}function pn(){return Ge((e)=>e.trim())}function fn(){return Ge((e)=>e.toLowerCase())}function mn(){return Ge((e)=>e.toUpperCase())}function hn(){return Ge((e)=>Lo(e))}function wu(e,t,r){return new e({type:"array",element:t,...I(r)})}function xu(e,t,r){let o=I(r);return o.abort??(o.abort=!0),new e({type:"custom",check:"custom",fn:t,...o})}function _u(e,t,r){return new e({type:"custom",check:"custom",fn:t,...I(r)})}function Su(e,t){let r=ng((o)=>(o.addIssue=(n)=>{if(typeof n==="string")o.issues.push(Ct(n,o.value,r._zod.def));else{let a=n;if(a.fatal)a.continue=!1;a.code??(a.code="custom"),a.input??(a.input=o.value),a.inst??(a.inst=r),a.continue??(a.continue=!r._zod.def.abort),o.issues.push(Ct(a))}},e(o.value,o)),t);return r}function ng(e,t){let r=new Q({check:"custom",...I(t)});return r._zod.check=e,r}function ur(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??ut,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 o;let n=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,h=t.processors[n.type];if(!h)throw Error(`[toJSONSchema]: Non-representable type encountered: ${n.type}`);h(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 u=t.metadataRegistry.get(e);if(u)Object.assign(s.schema,u);if(t.io==="input"&&re(e))delete s.schema.examples,delete s.schema.default;if(t.io==="input"&&"_prefault"in s.schema)(o=s.schema).default??(o.default=s.schema._prefault);return delete s.schema._prefault,t.seen.get(e).schema}function dr(e,t){let r=e.seen.get(t);if(!r)throw Error("Unprocessed schema. This is a bug in Zod.");let o=new Map;for(let s of e.seen.entries()){let i=e.metadataRegistry.get(s[0])?.id;if(i){let u=o.get(i);if(u&&u!==s[0])throw Error(`Duplicate schema id "${i}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);o.set(i,s[0])}}let n=(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 h=s[1].defId??s[1].schema.id??`schema${e.counter++}`;return s[1].defId=h,{defId:h,ref:`${f("__shared")}#/${i}/${h}`}}if(s[1]===r)return{ref:"#"};let c=`${"#"}/${i}/`,d=s[1].schema.id??`__schema${e.counter++}`;return{defId:d,ref:c+d}},a=(s)=>{if(s[1].schema.$ref)return;let i=s[1],{ref:u,defId:c}=n(s);if(i.def={...i.schema},c)i.defId=c;let d=i.schema;for(let p in d)delete d[p];d.$ref=u};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=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>
|
|
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 c=e.external.registry.get(s[0])?.id;if(t!==s[0]&&c){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 pr(e,t){let r=e.seen.get(t);if(!r)throw Error("Unprocessed schema. This is a bug in Zod.");let o=(i)=>{let u=e.seen.get(i);if(u.ref===null)return;let c=u.def??u.schema,d={...c},p=u.ref;if(u.ref=null,p){o(p);let h=e.seen.get(p),y=h.schema;if(y.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0"))c.allOf=c.allOf??[],c.allOf.push(y);else Object.assign(c,y);if(Object.assign(c,d),i._zod.parent===p)for(let _ in c){if(_==="$ref"||_==="allOf")continue;if(!(_ in d))delete c[_]}if(y.$ref&&h.def)for(let _ in c){if(_==="$ref"||_==="allOf")continue;if(_ in h.def&&JSON.stringify(c[_])===JSON.stringify(h.def[_]))delete c[_]}}let f=i._zod.parent;if(f&&f!==p){o(f);let h=e.seen.get(f);if(h?.schema.$ref){if(c.$ref=h.schema.$ref,h.def)for(let y in c){if(y==="$ref"||y==="allOf")continue;if(y in h.def&&JSON.stringify(c[y])===JSON.stringify(h.def[y]))delete c[y]}}}e.override({zodSchema:i,jsonSchema:c,path:u.path??[]})};for(let i of[...e.seen.entries()].reverse())o(i[0]);let n={};if(e.target==="draft-2020-12")n.$schema="https://json-schema.org/draft/2020-12/schema";else if(e.target==="draft-07")n.$schema="http://json-schema.org/draft-07/schema#";else if(e.target==="draft-04")n.$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");n.$id=e.external.uri(i)}Object.assign(n,r.def??r.schema);let a=e.metadataRegistry.get(t)?.id;if(a!==void 0&&n.id===a)delete n.id;let s=e.external?.defs??{};for(let i of e.seen.entries()){let u=i[1];if(u.def&&u.defId){if(u.def.id===u.defId)delete u.def.id;s[u.defId]=u.def}}if(e.external);else if(Object.keys(s).length>0)if(e.target==="draft-2020-12")n.$defs=s;else n.definitions=s;try{let i=JSON.parse(JSON.stringify(n));return Object.defineProperty(i,"~standard",{value:{...t["~standard"],jsonSchema:{input:cr(t,"input",e.processors),output:cr(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 o=e._zod.def;if(o.type==="transform")return!0;if(o.type==="array")return re(o.element,r);if(o.type==="set")return re(o.valueType,r);if(o.type==="lazy")return re(o.getter(),r);if(o.type==="promise"||o.type==="optional"||o.type==="nonoptional"||o.type==="nullable"||o.type==="readonly"||o.type==="default"||o.type==="prefault")return re(o.innerType,r);if(o.type==="intersection")return re(o.left,r)||re(o.right,r);if(o.type==="record"||o.type==="map")return re(o.keyType,r)||re(o.valueType,r);if(o.type==="pipe"){if(e._zod.traits.has("$ZodCodec"))return!0;return re(o.in,r)||re(o.out,r)}if(o.type==="object"){for(let n in o.shape)if(re(o.shape[n],r))return!0;return!1}if(o.type==="union"){for(let n of o.options)if(re(n,r))return!0;return!1}if(o.type==="tuple"){for(let n of o.items)if(re(n,r))return!0;if(o.rest&&re(o.rest,r))return!0;return!1}return!1}var Tu=(e,t={})=>(r)=>{let o=ur({...r,processors:t});return L(e,o),dr(o,e),pr(o,e)},cr=(e,t,r={})=>(o)=>{let{libraryOptions:n,target:a}=o??{},s=ur({...n??{},target:a,io:t,processors:r});return L(e,s),dr(s,e),pr(s,e)};var ag={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},gn=(e,t,r,o)=>{let n=r;n.type="string";let{minimum:a,maximum:s,format:i,patterns:u,contentEncoding:c}=e._zod.bag;if(typeof a==="number")n.minLength=a;if(typeof s==="number")n.maxLength=s;if(i){if(n.format=ag[i]??i,n.format==="")delete n.format;if(i==="time")delete n.format}if(c)n.contentEncoding=c;if(u&&u.size>0){let d=[...u];if(d.length===1)n.pattern=d[0].source;else if(d.length>1)n.allOf=[...d.map((p)=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:p.source}))]}},vn=(e,t,r,o)=>{let n=r,{minimum:a,maximum:s,format:i,multipleOf:u,exclusiveMaximum:c,exclusiveMinimum:d}=e._zod.bag;if(typeof i==="string"&&i.includes("int"))n.type="integer";else n.type="number";let p=typeof d==="number"&&d>=(a??Number.NEGATIVE_INFINITY),f=typeof c==="number"&&c<=(s??Number.POSITIVE_INFINITY),h=t.target==="draft-04"||t.target==="openapi-3.0";if(p)if(h)n.minimum=d,n.exclusiveMinimum=!0;else n.exclusiveMinimum=d;else if(typeof a==="number")n.minimum=a;if(f)if(h)n.maximum=c,n.exclusiveMaximum=!0;else n.exclusiveMaximum=c;else if(typeof s==="number")n.maximum=s;if(typeof u==="number")n.multipleOf=u},yn=(e,t,r,o)=>{r.type="boolean"},Eu=(e,t,r,o)=>{if(t.unrepresentable==="throw")throw Error("BigInt cannot be represented in JSON Schema")},ku=(e,t,r,o)=>{if(t.unrepresentable==="throw")throw Error("Symbols cannot be represented in JSON Schema")},bn=(e,t,r,o)=>{if(t.target==="openapi-3.0")r.type="string",r.nullable=!0,r.enum=[null];else r.type="null"},$u=(e,t,r,o)=>{if(t.unrepresentable==="throw")throw Error("Undefined cannot be represented in JSON Schema")},Mu=(e,t,r,o)=>{if(t.unrepresentable==="throw")throw Error("Void cannot be represented in JSON Schema")},wn=(e,t,r,o)=>{r.not={}},Ru=(e,t,r,o)=>{},xn=(e,t,r,o)=>{},Au=(e,t,r,o)=>{if(t.unrepresentable==="throw")throw Error("Date cannot be represented in JSON Schema")},_n=(e,t,r,o)=>{let n=e._zod.def,a=er(n.entries);if(a.every((s)=>typeof s==="number"))r.type="number";if(a.every((s)=>typeof s==="string"))r.type="string";r.enum=a},Sn=(e,t,r,o)=>{let n=e._zod.def,a=[];for(let s of n.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}},Cu=(e,t,r,o)=>{if(t.unrepresentable==="throw")throw Error("NaN cannot be represented in JSON Schema")},Ou=(e,t,r,o)=>{let n=r,a=e._zod.pattern;if(!a)throw Error("Pattern not found in template literal");n.type="string",n.pattern=a.source},Pu=(e,t,r,o)=>{let n=r,a={type:"string",format:"binary",contentEncoding:"binary"},{minimum:s,maximum:i,mime:u}=e._zod.bag;if(s!==void 0)a.minLength=s;if(i!==void 0)a.maxLength=i;if(u)if(u.length===1)a.contentMediaType=u[0],Object.assign(n,a);else Object.assign(n,a),n.anyOf=u.map((c)=>({contentMediaType:c}));else Object.assign(n,a)},Nu=(e,t,r,o)=>{r.type="boolean"},Tn=(e,t,r,o)=>{if(t.unrepresentable==="throw")throw Error("Custom types cannot be represented in JSON Schema")},zu=(e,t,r,o)=>{if(t.unrepresentable==="throw")throw Error("Function types cannot be represented in JSON Schema")},In=(e,t,r,o)=>{if(t.unrepresentable==="throw")throw Error("Transforms cannot be represented in JSON Schema")},ju=(e,t,r,o)=>{if(t.unrepresentable==="throw")throw Error("Map cannot be represented in JSON Schema")},Du=(e,t,r,o)=>{if(t.unrepresentable==="throw")throw Error("Set cannot be represented in JSON Schema")},En=(e,t,r,o)=>{let n=r,a=e._zod.def,{minimum:s,maximum:i}=e._zod.bag;if(typeof s==="number")n.minItems=s;if(typeof i==="number")n.maxItems=i;n.type="array",n.items=L(a.element,t,{...o,path:[...o.path,"items"]})},kn=(e,t,r,o)=>{let n=r,a=e._zod.def;n.type="object",n.properties={};let s=a.shape;for(let c in s)n.properties[c]=L(s[c],t,{...o,path:[...o.path,"properties",c]});let i=new Set(Object.keys(s)),u=new Set([...i].filter((c)=>{let d=a.shape[c]._zod;if(t.io==="input")return d.optin===void 0;else return d.optout===void 0}));if(u.size>0)n.required=Array.from(u);if(a.catchall?._zod.def.type==="never")n.additionalProperties=!1;else if(!a.catchall){if(t.io==="output")n.additionalProperties=!1}else if(a.catchall)n.additionalProperties=L(a.catchall,t,{...o,path:[...o.path,"additionalProperties"]})},$n=(e,t,r,o)=>{let n=e._zod.def,a=n.inclusive===!1,s=n.options.map((i,u)=>L(i,t,{...o,path:[...o.path,a?"oneOf":"anyOf",u]}));if(a)r.oneOf=s;else r.anyOf=s},Mn=(e,t,r,o)=>{let n=e._zod.def,a=L(n.left,t,{...o,path:[...o.path,"allOf",0]}),s=L(n.right,t,{...o,path:[...o.path,"allOf",1]}),i=(c)=>("allOf"in c)&&Object.keys(c).length===1,u=[...i(a)?a.allOf:[a],...i(s)?s.allOf:[s]];r.allOf=u},Uu=(e,t,r,o)=>{let n=r,a=e._zod.def;n.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",u=a.items.map((f,h)=>L(f,t,{...o,path:[...o.path,s,h]})),c=a.rest?L(a.rest,t,{...o,path:[...o.path,i,...t.target==="openapi-3.0"?[a.items.length]:[]]}):null;if(t.target==="draft-2020-12"){if(n.prefixItems=u,c)n.items=c}else if(t.target==="openapi-3.0"){if(n.items={anyOf:u},c)n.items.anyOf.push(c);if(n.minItems=u.length,!c)n.maxItems=u.length}else if(n.items=u,c)n.additionalItems=c;let{minimum:d,maximum:p}=e._zod.bag;if(typeof d==="number")n.minItems=d;if(typeof p==="number")n.maxItems=p},Rn=(e,t,r,o)=>{let n=r,a=e._zod.def;n.type="object";let s=a.keyType,u=s._zod.bag?.patterns;if(a.mode==="loose"&&u&&u.size>0){let d=L(a.valueType,t,{...o,path:[...o.path,"patternProperties","*"]});n.patternProperties={};for(let p of u)n.patternProperties[p.source]=d}else{if(t.target==="draft-07"||t.target==="draft-2020-12")n.propertyNames=L(a.keyType,t,{...o,path:[...o.path,"propertyNames"]});n.additionalProperties=L(a.valueType,t,{...o,path:[...o.path,"additionalProperties"]})}let c=s._zod.values;if(c){let d=[...c].filter((p)=>typeof p==="string"||typeof p==="number");if(d.length>0)n.required=d}},An=(e,t,r,o)=>{let n=e._zod.def,a=L(n.innerType,t,o),s=t.seen.get(e);if(t.target==="openapi-3.0")s.ref=n.innerType,r.nullable=!0;else r.anyOf=[a,{type:"null"}]},Cn=(e,t,r,o)=>{let n=e._zod.def;L(n.innerType,t,o);let a=t.seen.get(e);a.ref=n.innerType},On=(e,t,r,o)=>{let n=e._zod.def;L(n.innerType,t,o);let a=t.seen.get(e);a.ref=n.innerType,r.default=JSON.parse(JSON.stringify(n.defaultValue))},Pn=(e,t,r,o)=>{let n=e._zod.def;L(n.innerType,t,o);let a=t.seen.get(e);if(a.ref=n.innerType,t.io==="input")r._prefault=JSON.parse(JSON.stringify(n.defaultValue))},Nn=(e,t,r,o)=>{let n=e._zod.def;L(n.innerType,t,o);let a=t.seen.get(e);a.ref=n.innerType;let s;try{s=n.catchValue(void 0)}catch{throw Error("Dynamic catch values are not supported in JSON Schema")}r.default=s},zn=(e,t,r,o)=>{let n=e._zod.def,a=n.in._zod.traits.has("$ZodTransform"),s=t.io==="input"?a?n.out:n.in:n.out;L(s,t,o);let i=t.seen.get(e);i.ref=s},jn=(e,t,r,o)=>{let n=e._zod.def;L(n.innerType,t,o);let a=t.seen.get(e);a.ref=n.innerType,r.readOnly=!0},Zu=(e,t,r,o)=>{let n=e._zod.def;L(n.innerType,t,o);let a=t.seen.get(e);a.ref=n.innerType},ro=(e,t,r,o)=>{let n=e._zod.def;L(n.innerType,t,o);let a=t.seen.get(e);a.ref=n.innerType},Dn=(e,t,r,o)=>{let n=e._zod.innerType;L(n,t,o);let a=t.seen.get(e);a.ref=n},Iu={string:gn,number:vn,boolean:yn,bigint:Eu,symbol:ku,null:bn,undefined:$u,void:Mu,never:wn,any:Ru,unknown:xn,date:Au,enum:_n,literal:Sn,nan:Cu,template_literal:Ou,file:Pu,success:Nu,custom:Tn,function:zu,transform:In,map:ju,set:Du,array:En,object:kn,union:$n,intersection:Mn,tuple:Uu,record:Rn,nullable:An,nonoptional:Cn,default:On,prefault:Pn,catch:Nn,pipe:zn,readonly:jn,promise:Zu,optional:ro,lazy:Dn};function Un(e,t){if("_idmap"in e){let o=e,n=ur({...t,processors:Iu}),a={};for(let u of o._idmap.entries()){let[c,d]=u;L(d,n)}let s={},i={registry:o,uri:t?.uri,defs:a};n.external=i;for(let u of o._idmap.entries()){let[c,d]=u;dr(n,d),s[c]=pr(n,d)}if(Object.keys(a).length>0){let u=n.target==="draft-2020-12"?"$defs":"definitions";s.__shared={[u]:a}}return{schemas:s}}let r=ur({...t,processors:Iu});return L(e,r),dr(r,e),pr(r,e)}var pg=g("ZodISODateTime",(e,t)=>{rc.init(e,t),W.init(e,t)});function Lu(e){return uu(pg,e)}var fg=g("ZodISODate",(e,t)=>{oc.init(e,t),W.init(e,t)});function Fu(e){return du(fg,e)}var mg=g("ZodISOTime",(e,t)=>{nc.init(e,t),W.init(e,t)});function Bu(e){return pu(mg,e)}var hg=g("ZodISODuration",(e,t)=>{ac.init(e,t),W.init(e,t)});function qu(e){return fu(hg,e)}var yg=(e,t)=>{Br.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:(r)=>ji(e,r)},flatten:{value:(r)=>zi(e,r)},addIssue:{value:(r)=>{e.issues.push(r),e.message=JSON.stringify(e.issues,Rt,2)}},addIssues:{value:(r)=>{e.issues.push(...r),e.message=JSON.stringify(e.issues,Rt,2)}},isEmpty:{get(){return e.issues.length===0}}})};var de=g("ZodError",yg,{Parent:Error});var Wu=qr(de),Vu=Wr(de),Ju=nr(de),no=ar(de),Gu=Zi(de),Ku=Li(de),Hu=Fi(de),Yu=Bi(de),Xu=qi(de),Qu=Wi(de),ed=Vi(de),td=Ji(de);var rd=new WeakMap;function mr(e,t,r){let o=Object.getPrototypeOf(e),n=rd.get(o);if(!n)n=new Set,rd.set(o,n);if(n.has(t))return;n.add(t);for(let a in r){let s=r[a];Object.defineProperty(o,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:cr(e,"input"),output:cr(e,"output")}}),e.toJSONSchema=Tu(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.parse=(r,o)=>Wu(e,r,o,{callee:e.parse}),e.safeParse=(r,o)=>Ju(e,r,o),e.parseAsync=async(r,o)=>Vu(e,r,o,{callee:e.parseAsync}),e.safeParseAsync=async(r,o)=>no(e,r,o),e.spa=e.safeParseAsync,e.encode=(r,o)=>Gu(e,r,o),e.decode=(r,o)=>Ku(e,r,o),e.encodeAsync=async(r,o)=>Hu(e,r,o),e.decodeAsync=async(r,o)=>Yu(e,r,o),e.safeEncode=(r,o)=>Xu(e,r,o),e.safeDecode=(r,o)=>Qu(e,r,o),e.safeEncodeAsync=async(r,o)=>ed(e,r,o),e.safeDecodeAsync=async(r,o)=>td(e,r,o),mr(e,"ZodType",{check(...r){let o=this.def;return this.clone(O.mergeDefs(o,{checks:[...o.checks??[],...r.map((n)=>typeof n==="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),{parent:!0})},with(...r){return this.check(...r)},clone(r,o){return xe(this,r,o)},brand(){return this},register(r,o){return r.add(this,o),this},refine(r,o){return this.check(uv(r,o))},superRefine(r,o){return this.check(dv(r,o))},overwrite(r){return this.check(Ge(r))},optional(){return sd(this)},exactOptional(){return Yg(this)},nullable(){return id(this)},nullish(){return sd(id(this))},nonoptional(r){return ov(this,r)},array(){return Bn(this)},or(r){return qn([this,r])},and(r){return Vg(this,r)},transform(r){return ld(this,Kg(r))},default(r){return ev(this,r)},prefault(r){return rv(this,r)},catch(r){return av(this,r)},pipe(r){return ld(this,r)},readonly(){return lv(this)},describe(r){let o=this.clone();return ut.add(o,{description:r}),o},meta(...r){if(r.length===0)return ut.get(this);let o=this.clone();return ut.add(o,r[0]),o},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(r){return r(this)}}),Object.defineProperty(e,"description",{get(){return ut.get(e)?.description},configurable:!0}),e)),cd=g("_ZodString",(e,t)=>{Hr.init(e,t),q.init(e,t),e._zod.processJSONSchema=(o,n,a)=>gn(e,o,n,a);let r=e._zod.bag;e.format=r.format??null,e.minLength=r.minimum??null,e.maxLength=r.maximum??null,mr(e,"_ZodString",{regex(...o){return this.check(nn(...o))},includes(...o){return this.check(ln(...o))},startsWith(...o){return this.check(cn(...o))},endsWith(...o){return this.check(un(...o))},min(...o){return this.check(Ot(...o))},max(...o){return this.check(eo(...o))},length(...o){return this.check(to(...o))},nonempty(...o){return this.check(Ot(1,...o))},lowercase(o){return this.check(an(o))},uppercase(o){return this.check(sn(o))},trim(){return this.check(pn())},normalize(...o){return this.check(dn(...o))},toLowerCase(){return this.check(fn())},toUpperCase(){return this.check(mn())},slugify(){return this.check(hn())}})}),wg=g("ZodString",(e,t)=>{Hr.init(e,t),cd.init(e,t),e.email=(r)=>e.check(Bc(xg,r)),e.url=(r)=>e.check(Gc(_g,r)),e.jwt=(r)=>e.check(cu(jg,r)),e.emoji=(r)=>e.check(Kc(Sg,r)),e.guid=(r)=>e.check(on(od,r)),e.uuid=(r)=>e.check(qc(ao,r)),e.uuidv4=(r)=>e.check(Wc(ao,r)),e.uuidv6=(r)=>e.check(Vc(ao,r)),e.uuidv7=(r)=>e.check(Jc(ao,r)),e.nanoid=(r)=>e.check(Hc(Tg,r)),e.guid=(r)=>e.check(on(od,r)),e.cuid=(r)=>e.check(Yc(Ig,r)),e.cuid2=(r)=>e.check(Xc(Eg,r)),e.ulid=(r)=>e.check(Qc(kg,r)),e.base64=(r)=>e.check(su(Pg,r)),e.base64url=(r)=>e.check(iu(Ng,r)),e.xid=(r)=>e.check(eu($g,r)),e.ksuid=(r)=>e.check(tu(Mg,r)),e.ipv4=(r)=>e.check(ru(Rg,r)),e.ipv6=(r)=>e.check(ou(Ag,r)),e.cidrv4=(r)=>e.check(nu(Cg,r)),e.cidrv6=(r)=>e.check(au(Og,r)),e.e164=(r)=>e.check(lu(zg,r)),e.datetime=(r)=>e.check(Lu(r)),e.date=(r)=>e.check(Fu(r)),e.time=(r)=>e.check(Bu(r)),e.duration=(r)=>e.check(qu(r))});function Ln(e){return Fc(wg,e)}var W=g("ZodStringFormat",(e,t)=>{B.init(e,t),cd.init(e,t)}),xg=g("ZodEmail",(e,t)=>{Jl.init(e,t),W.init(e,t)});var od=g("ZodGUID",(e,t)=>{Wl.init(e,t),W.init(e,t)});var ao=g("ZodUUID",(e,t)=>{Vl.init(e,t),W.init(e,t)});var _g=g("ZodURL",(e,t)=>{Gl.init(e,t),W.init(e,t)});var Sg=g("ZodEmoji",(e,t)=>{Kl.init(e,t),W.init(e,t)});var Tg=g("ZodNanoID",(e,t)=>{Hl.init(e,t),W.init(e,t)});var Ig=g("ZodCUID",(e,t)=>{Yl.init(e,t),W.init(e,t)});var Eg=g("ZodCUID2",(e,t)=>{Xl.init(e,t),W.init(e,t)});var kg=g("ZodULID",(e,t)=>{Ql.init(e,t),W.init(e,t)});var $g=g("ZodXID",(e,t)=>{ec.init(e,t),W.init(e,t)});var Mg=g("ZodKSUID",(e,t)=>{tc.init(e,t),W.init(e,t)});var Rg=g("ZodIPv4",(e,t)=>{sc.init(e,t),W.init(e,t)});var Ag=g("ZodIPv6",(e,t)=>{ic.init(e,t),W.init(e,t)});var Cg=g("ZodCIDRv4",(e,t)=>{lc.init(e,t),W.init(e,t)});var Og=g("ZodCIDRv6",(e,t)=>{cc.init(e,t),W.init(e,t)});var Pg=g("ZodBase64",(e,t)=>{dc.init(e,t),W.init(e,t)});var Ng=g("ZodBase64URL",(e,t)=>{pc.init(e,t),W.init(e,t)});var zg=g("ZodE164",(e,t)=>{fc.init(e,t),W.init(e,t)});var jg=g("ZodJWT",(e,t)=>{mc.init(e,t),W.init(e,t)});var ud=g("ZodNumber",(e,t)=>{en.init(e,t),q.init(e,t),e._zod.processJSONSchema=(o,n,a)=>vn(e,o,n,a),mr(e,"ZodNumber",{gt(o,n){return this.check(Xr(o,n))},gte(o,n){return this.check(lr(o,n))},min(o,n){return this.check(lr(o,n))},lt(o,n){return this.check(Yr(o,n))},lte(o,n){return this.check(ir(o,n))},max(o,n){return this.check(ir(o,n))},int(o){return this.check(nd(o))},safe(o){return this.check(nd(o))},positive(o){return this.check(Xr(0,o))},nonnegative(o){return this.check(lr(0,o))},negative(o){return this.check(Yr(0,o))},nonpositive(o){return this.check(ir(0,o))},multipleOf(o,n){return this.check(Qr(o,n))},step(o,n){return this.check(Qr(o,n))},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 dd(e){return mu(ud,e)}var Dg=g("ZodNumberFormat",(e,t)=>{hc.init(e,t),ud.init(e,t)});function nd(e){return hu(Dg,e)}var Ug=g("ZodBoolean",(e,t)=>{gc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>yn(e,r,o,n)});function pd(e){return gu(Ug,e)}var Zg=g("ZodNull",(e,t)=>{vc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>bn(e,r,o,n)});function fd(e){return vu(Zg,e)}var Lg=g("ZodUnknown",(e,t)=>{yc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>xn(e,r,o,n)});function fr(){return yu(Lg)}var Fg=g("ZodNever",(e,t)=>{bc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>wn(e,r,o,n)});function Fn(e){return bu(Fg,e)}var Bg=g("ZodArray",(e,t)=>{wc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>En(e,r,o,n),e.element=t.element,mr(e,"ZodArray",{min(r,o){return this.check(Ot(r,o))},nonempty(r){return this.check(Ot(1,r))},max(r,o){return this.check(eo(r,o))},length(r,o){return this.check(to(r,o))},unwrap(){return this.element}})});function Bn(e,t){return wu(Bg,e,t)}var md=g("ZodObject",(e,t)=>{Sc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>kn(e,r,o,n),O.defineLazy(e,"shape",()=>t.shape),mr(e,"ZodObject",{keyof(){return Wn(Object.keys(this._zod.def.shape))},catchall(r){return this.clone({...this._zod.def,catchall:r})},passthrough(){return this.clone({...this._zod.def,catchall:fr()})},loose(){return this.clone({...this._zod.def,catchall:fr()})},strict(){return this.clone({...this._zod.def,catchall:Fn()})},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(xd,this,r[0])},required(...r){return O.required(_d,this,r[0])}})});function hd(e,t){let r={type:"object",shape:e??{},...O.normalizeParams(t)};return new md(r)}function gd(e,t){return new md({type:"object",shape:e,catchall:fr(),...O.normalizeParams(t)})}var vd=g("ZodUnion",(e,t)=>{tn.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>$n(e,r,o,n),e.options=t.options});function qn(e,t){return new vd({type:"union",options:e,...O.normalizeParams(t)})}var qg=g("ZodDiscriminatedUnion",(e,t)=>{vd.init(e,t),Tc.init(e,t)});function yd(e,t,r){return new qg({type:"union",options:t,discriminator:e,...O.normalizeParams(r)})}var Wg=g("ZodIntersection",(e,t)=>{Ic.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>Mn(e,r,o,n)});function Vg(e,t){return new Wg({type:"intersection",left:e,right:t})}var ad=g("ZodRecord",(e,t)=>{Ec.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>Rn(e,r,o,n),e.keyType=t.keyType,e.valueType=t.valueType});function bd(e,t,r){if(!t||!t._zod)return new ad({type:"record",keyType:Ln(),valueType:e,...O.normalizeParams(t)});return new ad({type:"record",keyType:e,valueType:t,...O.normalizeParams(r)})}var Zn=g("ZodEnum",(e,t)=>{kc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(o,n,a)=>_n(e,o,n,a),e.enum=t.entries,e.options=Object.values(t.entries);let r=new Set(Object.keys(t.entries));e.extract=(o,n)=>{let a={};for(let s of o)if(r.has(s))a[s]=t.entries[s];else throw Error(`Key ${s} not found in enum`);return new Zn({...t,checks:[],...O.normalizeParams(n),entries:a})},e.exclude=(o,n)=>{let a={...t.entries};for(let s of o)if(r.has(s))delete a[s];else throw Error(`Key ${s} not found in enum`);return new Zn({...t,checks:[],...O.normalizeParams(n),entries:a})}});function Wn(e,t){let r=Array.isArray(e)?Object.fromEntries(e.map((o)=>[o,o])):e;return new Zn({type:"enum",entries:r,...O.normalizeParams(t)})}var Jg=g("ZodLiteral",(e,t)=>{$c.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>Sn(e,r,o,n),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 wd(e,t){return new Jg({type:"literal",values:Array.isArray(e)?e:[e],...O.normalizeParams(t)})}var Gg=g("ZodTransform",(e,t)=>{Mc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>In(e,r,o,n),e._zod.parse=(r,o)=>{if(o.direction==="backward")throw new Xt(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 n=t.transform(r.value,r);if(n instanceof Promise)return n.then((a)=>(r.value=a,r.fallback=!0,r));return r.value=n,r.fallback=!0,r}});function Kg(e){return new Gg({type:"transform",transform:e})}var xd=g("ZodOptional",(e,t)=>{rn.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>ro(e,r,o,n),e.unwrap=()=>e._zod.def.innerType});function sd(e){return new xd({type:"optional",innerType:e})}var Hg=g("ZodExactOptional",(e,t)=>{Rc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>ro(e,r,o,n),e.unwrap=()=>e._zod.def.innerType});function Yg(e){return new Hg({type:"optional",innerType:e})}var Xg=g("ZodNullable",(e,t)=>{Ac.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>An(e,r,o,n),e.unwrap=()=>e._zod.def.innerType});function id(e){return new Xg({type:"nullable",innerType:e})}var Qg=g("ZodDefault",(e,t)=>{Cc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>On(e,r,o,n),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function ev(e,t){return new Qg({type:"default",innerType:e,get defaultValue(){return typeof t==="function"?t():O.shallowClone(t)}})}var tv=g("ZodPrefault",(e,t)=>{Oc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>Pn(e,r,o,n),e.unwrap=()=>e._zod.def.innerType});function rv(e,t){return new tv({type:"prefault",innerType:e,get defaultValue(){return typeof t==="function"?t():O.shallowClone(t)}})}var _d=g("ZodNonOptional",(e,t)=>{Pc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>Cn(e,r,o,n),e.unwrap=()=>e._zod.def.innerType});function ov(e,t){return new _d({type:"nonoptional",innerType:e,...O.normalizeParams(t)})}var nv=g("ZodCatch",(e,t)=>{Nc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>Nn(e,r,o,n),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function av(e,t){return new nv({type:"catch",innerType:e,catchValue:typeof t==="function"?t:()=>t})}var sv=g("ZodPipe",(e,t)=>{zc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>zn(e,r,o,n),e.in=t.in,e.out=t.out});function ld(e,t){return new sv({type:"pipe",in:e,out:t})}var iv=g("ZodReadonly",(e,t)=>{jc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>jn(e,r,o,n),e.unwrap=()=>e._zod.def.innerType});function lv(e){return new iv({type:"readonly",innerType:e})}var cv=g("ZodLazy",(e,t)=>{Dc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>Dn(e,r,o,n),e.unwrap=()=>e._zod.def.getter()});function Sd(e){return new cv({type:"lazy",getter:e})}var Vn=g("ZodCustom",(e,t)=>{Uc.init(e,t),q.init(e,t),e._zod.processJSONSchema=(r,o,n)=>Tn(e,r,o,n)});function Td(e,t){return xu(Vn,e??(()=>!0),t)}function uv(e,t={}){return _u(Vn,e,t)}function dv(e,t){return Su(e,t)}function Id(e,t={}){let r=new Vn({type:"custom",check:"custom",fn:(o)=>o instanceof e,abort:!0,...O.normalizeParams(t)});return r._zod.bag.Class=e,r._zod.check=(o)=>{if(!(o.value instanceof e))o.issues.push({code:"invalid_type",expected:e.name,input:o.value,inst:r,path:[...r._zod.def.path??[]]})},r}var pv=[{mediaType:"audio/mpeg",bytesPrefix:[255,251]},{mediaType:"audio/mpeg",bytesPrefix:[255,250]},{mediaType:"audio/mpeg",bytesPrefix:[255,243]},{mediaType:"audio/mpeg",bytesPrefix:[255,242]},{mediaType:"audio/mpeg",bytesPrefix:[255,227]},{mediaType:"audio/mpeg",bytesPrefix:[255,226]},{mediaType:"audio/wav",bytesPrefix:[82,73,70,70,null,null,null,null,87,65,86,69]},{mediaType:"audio/ogg",bytesPrefix:[79,103,103,83]},{mediaType:"audio/flac",bytesPrefix:[102,76,97,67]},{mediaType:"audio/aac",bytesPrefix:[64,21,0,0]},{mediaType:"audio/webm",bytesPrefix:[26,69,223,163]}],gI=[...pv,{mediaType:"audio/mp4",bytesPrefix:[0,0,0,null,102,116,121,112]}];var fv=12,mv=131072,vI=mv+fv;async function so(e){var t;try{await((t=e.body)==null?void 0:t.cancel())}catch(r){}}var Nd="AI_DownloadError",zd=`vercel.ai.error.${Nd}`,hv=Symbol.for(zd),Ed,kd,ne=class extends(kd=k,Ed=hv,kd){constructor({url:e,statusCode:t,statusText:r,cause:o,message:n=o==null?`Failed to download ${e}: ${t} ${r}`:`Failed to download ${e}: ${o}`}){super({name:Nd,message:n,cause:o});this[Ed]=!0,this.url=e,this.statusCode=t,this.statusText=r}static isInstance(e){return k.hasMarker(e,zd)}};function gv(e=globalThis){return e.window!=null}function $d(e,t){try{return new URL(e).origin===new URL(t).origin}catch(r){return!1}}function vv(e){let t;try{t=new URL(e)}catch(o){throw new ne({url:e,message:`Invalid URL: ${e}`})}if(t.protocol==="data:")return;if(t.protocol!=="http:"&&t.protocol!=="https:")throw new ne({url:e,message:`URL scheme must be http, https, or data, got ${t.protocol}`});let r=t.hostname.toLowerCase().replace(/\.+$/,"");if(!r)throw new ne({url:e,message:"URL must have a hostname"});if(r==="localhost"||r.endsWith(".local")||r.endsWith(".localhost"))throw new ne({url:e,message:`URL with hostname ${r} is not allowed`});if(r.startsWith("[")&&r.endsWith("]")){let o=r.slice(1,-1);if(jd(o))throw new ne({url:e,message:`URL with IPv6 address ${r} is not allowed`});return}if(Xn(r)){if(Qn(r))throw new ne({url:e,message:`URL with IP address ${r} is not allowed`});return}}function yv({address:e,family:t,hostname:r}){if(t===4?!Xn(e)||Qn(e):t===6?jd(e):!0)throw new ne({url:r,message:`Hostname ${r} resolved to disallowed IP address ${e}`})}function Xn(e){let t=e.split(".");if(t.length!==4)return!1;return t.every((r)=>{let o=Number(r);return Number.isInteger(o)&&o>=0&&o<=255&&String(o)===r})}function Qn(e){let t=e.split(".").map(Number),[r,o,n]=t;if(r===0)return!0;if(r===10)return!0;if(r===100&&o>=64&&o<=127)return!0;if(r===127)return!0;if(r===169&&o===254)return!0;if(r===172&&o>=16&&o<=31)return!0;if(r===192&&o===0&&n===0)return!0;if(r===192&&o===0&&n===2)return!0;if(r===192&&o===168)return!0;if(r===198&&(o===18||o===19))return!0;if(r===198&&o===51&&n===100)return!0;if(r===203&&o===0&&n===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 o=t.split("::");if(o.length>2)return null;let n=(s)=>{if(s==="")return[];let i=[],u=s.split(":");for(let c=0;c<u.length;c++){let d=u[c];if(d.includes(".")){if(c!==u.length-1||!Xn(d))return null;let[p,f,h,y]=d.split(".").map(Number);i.push(p<<8|f,h<<8|y);continue}if(!/^[0-9a-f]{1,4}$/.test(d))return null;i.push(parseInt(d,16))}return i},a=n(o[0]);if(a===null)return null;if(o.length===2){let s=n(o[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 jd(e){let t=bv(e);if(t===null)return!0;let r=(n)=>t.slice(0,n).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 n=t[6]>>8&255,a=t[6]&255,s=t[7]>>8&255,i=t[7]&255;return Qn(`${n}.${a}.${s}.${i}`)}return!1}function wv(e){return(t,r,o)=>{e(t,{...r,all:!0},(n,a)=>{if(n){o(n);return}try{let[s]=a;if(s==null)throw Error(`Hostname ${t} did not resolve to an address`);for(let{address:i,family:u}of a)yv({address:i,family:u,hostname:t});if(r.all===!0)o(null,a);else o(null,s.address,s.family)}catch(s){o(s instanceof Error?s:Error(String(s)))}})}}var Jn,Dd=globalThis.fetch,xv=Tv(Dd);function _v(){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 Sv(){if(!_v()||!xv||globalThis.fetch!==Dd)return globalThis.fetch;return Jn!=null?Jn:Jn=Promise.resolve().then(Iv)}function Tv(e){let t=Function.prototype.toString.call(e);return t.includes("internal/deps/undici")||t.includes("lazy loading of undici")}function Iv(){let{createRequire:e}=Md("node:module"),{lookup:t}=Md("node:dns"),{Agent:r,fetch:o}=e(Ud())("undici"),n=new r({connect:{lookup:wv(t)}});return(a,s)=>o(a,{...s,dispatcher:n})}function Md(e){var t;let r=globalThis.process,o=(t=r==null?void 0:r.getBuiltinModule)==null?void 0:t.call(r,e);if(o==null)throw Error(`Node.js built-in module ${e} is unavailable`);return o}function Ud(){let e=Error.prepareStackTrace;try{Error.prepareStackTrace=(n,a)=>a;let t=Error("Capture current module path");Error.captureStackTrace(t,Ud);let[r]=t.stack,o=r==null?void 0:r.getFileName();if(o==null)throw Error("Unable to determine the current module path");return o}finally{Error.prepareStackTrace=e}}var Ev=["connection","keep-alive","te","trailer","transfer-encoding","upgrade","host","forwarded","proxy-authorization","via","x-forwarded-for","x-forwarded-host","x-forwarded-proto","x-real-ip","metadata","metadata-flavor","x-aws-ec2-metadata-token","x-metadata-token","cookie","set-cookie"];function kv(e){let t=new Headers(e);for(let r of Ev)t.delete(r);return t}var $v=10,Mv=new Set([301,302,303,307,308]);async function Zd({url:e,headers:t,abortSignal:r,maxRedirects:o=$v,fetch:n,trustedOrigin:a}){let s=t===void 0?void 0:kv(t),i=(c)=>{let d={signal:r,redirect:c};if(s!==void 0)d.headers=new Headers(s);return d},u=e;for(let c=0;c<=o;c++){let d=a!==void 0&&$d(u,a);if(!d)vv(u);let p=n!=null?n:d?globalThis.fetch:await Sv(),f=await p(u,i("manual"));if(f.type==="opaqueredirect"){if(!gv())throw new ne({url:e,message:`Redirect from ${u} could not be validated and was blocked`});return await p(u,i("follow"))}let h=f.headers.get("location");if(Mv.has(f.status)&&h){await so(f);let y=new URL(h,u).toString();if(s!==void 0&&!$d(y,u)){let v=s.get("user-agent");s=new Headers(v==null?void 0:{"user-agent":v})}u=y;continue}return f}throw new ne({url:e,message:`Too many redirects (max ${o})`})}var ea=2147483648;async function Ld({response:e,url:t,maxBytes:r=ea}){let o=e.headers.get("content-length");if(o!=null){let d=parseInt(o,10);if(!isNaN(d)&&d>r)throw await so(e),new ne({url:t,message:`Download of ${t} exceeded maximum size of ${r} bytes (Content-Length: ${d}).`})}let n=e.body;if(n==null)return new Uint8Array(0);let a=n.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 ne({url:t,message:`Download of ${t} exceeded maximum size of ${r} bytes.`});s.push(p)}}finally{try{await a.cancel()}finally{a.releaseLock()}}let u=new Uint8Array(i),c=0;for(let d of s)u.set(d,c),c+=d.length;return u}var J=({prefix:e,size:t=16,alphabet:r="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",separator:o="-"}={})=>{let n=()=>{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 n;if(r.includes(o))throw new ri({argument:"separator",message:`The separator "${o}" must not be part of the alphabet "${r}".`});return()=>`${e}${o}${n()}`},Pt=J();function Fd(e=globalThis){var t,r,o;if(e.window)return"runtime/browser";if((t=e.navigator)==null?void 0:t.userAgent)return`runtime/${e.navigator.userAgent.toLowerCase()}`;if((o=(r=e.process)==null?void 0:r.versions)==null?void 0:o.node)return`runtime/node.js/${e.process.version.substring(0)}`;if(e.EdgeRuntime)return"runtime/vercel-edge";return"runtime/unknown"}function Rv(e){if(e==null)return{};let t={};if(e instanceof Headers)e.forEach((r,o)=>{t[o.toLowerCase()]=r});else{if(!Array.isArray(e))e=Object.entries(e);for(let[r,o]of e)if(o!=null)t[r.toLowerCase()]=o}return t}function Nt(e,...t){let r=new Headers(Rv(e)),o=r.get("user-agent")||"";return r.set("user-agent",[o,...t].filter(Boolean).join(" ")),Object.fromEntries(r.entries())}function Bd(e){var t,r;return(r=(t=globalThis.Buffer)==null?void 0:t.isBuffer(e))!=null?r:!1}function qd(e){return e!=null}var Av=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,Cv=/"(?: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 Rd(e){let t=JSON.parse(e);if(t===null||typeof t!=="object")return t;if(Av.test(e)===!1&&Cv.test(e)===!1)return t;return Ov(t)}function Ov(e){let t=[e];while(t.length){let r=t;t=[];for(let o of r){if(Object.prototype.hasOwnProperty.call(o,"__proto__"))throw SyntaxError("Object contains forbidden prototype property");if(Object.prototype.hasOwnProperty.call(o,"constructor")&&o.constructor!==null&&typeof o.constructor==="object"&&Object.prototype.hasOwnProperty.call(o.constructor,"prototype"))throw SyntaxError("Object contains forbidden prototype property");for(let n in o){let a=o[n];if(a&&typeof a==="object")t.push(a)}}}return e}function Pv(e){let{stackTraceLimit:t}=Error;try{Error.stackTraceLimit=0}catch(r){return Rd(e)}try{return Rd(e)}finally{Error.stackTraceLimit=t}}function ta(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 o of Object.keys(r))r[o]=dt(r[o])}if(e.items!=null)e.items=Array.isArray(e.items)?e.items.map(dt):dt(e.items);if(e.anyOf!=null)e.anyOf=e.anyOf.map(dt);if(e.allOf!=null)e.allOf=e.allOf.map(dt);if(e.oneOf!=null)e.oneOf=e.oneOf.map(dt);let{definitions:t}=e;if(t!=null)for(let r of Object.keys(t))t[r]=dt(t[r]);return e}function dt(e){if(typeof e==="boolean")return e;return ta(e)}var Nv=Symbol("Let zodToJsonSchema decide on which parser to use"),Ad={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"},zv=(e)=>typeof e==="string"?{...Ad,name:e}:{...Ad,...e};function pe(){return{}}function jv(e,t){var r,o,n;let a={type:"array"};if(((r=e.type)==null?void 0:r._def)&&((n=(o=e.type)==null?void 0:o._def)==null?void 0:n.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 Dv(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 Uv(){return{type:"boolean"}}function Wd(e,t){return U(e.type._def,t)}var Zv=(e,t)=>U(e.innerType._def,t);function Vd(e,t,r){let o=r!=null?r:t.dateStrategy;if(Array.isArray(o))return{anyOf:o.map((n)=>Vd(e,t,n))};switch(o){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":return Lv(e)}}var Lv=(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 Fv(e,t){return{...U(e.innerType._def,t),default:e.defaultValue()}}function Bv(e,t){return t.effectStrategy==="input"?U(e.schema._def,t):pe()}function qv(e){return{type:"string",enum:Array.from(e.values)}}var Wv=(e)=>{if("type"in e&&e.type==="string")return!1;return"allOf"in e};function Vv(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((n)=>!!n),o=[];return r.forEach((n)=>{if(Wv(n))o.push(...n.allOf);else{let a=n;if("additionalProperties"in n&&n.additionalProperties===!1){let{additionalProperties:s,...i}=n;a=i}o.push(a)}}),o.length?{allOf:o}:void 0}function Jv(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 Gn=void 0,_e={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(Gn===void 0)Gn=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u");return Gn},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 Jd(e,t){let r={type:"string"};if(e.checks)for(let o of e.checks)switch(o.kind){case"min":r.minLength=typeof r.minLength==="number"?Math.max(r.minLength,o.value):o.value;break;case"max":r.maxLength=typeof r.maxLength==="number"?Math.min(r.maxLength,o.value):o.value;break;case"email":switch(t.emailStrategy){case"format:email":Se(r,"email",o.message,t);break;case"format:idn-email":Se(r,"idn-email",o.message,t);break;case"pattern:zod":oe(r,_e.email,o.message,t);break}break;case"url":Se(r,"uri",o.message,t);break;case"uuid":Se(r,"uuid",o.message,t);break;case"regex":oe(r,o.regex,o.message,t);break;case"cuid":oe(r,_e.cuid,o.message,t);break;case"cuid2":oe(r,_e.cuid2,o.message,t);break;case"startsWith":oe(r,RegExp(`^${Kn(o.value,t)}`),o.message,t);break;case"endsWith":oe(r,RegExp(`${Kn(o.value,t)}$`),o.message,t);break;case"datetime":Se(r,"date-time",o.message,t);break;case"date":Se(r,"date",o.message,t);break;case"time":Se(r,"time",o.message,t);break;case"duration":Se(r,"duration",o.message,t);break;case"length":r.minLength=typeof r.minLength==="number"?Math.max(r.minLength,o.value):o.value,r.maxLength=typeof r.maxLength==="number"?Math.min(r.maxLength,o.value):o.value;break;case"includes":{oe(r,RegExp(Kn(o.value,t)),o.message,t);break}case"ip":{if(o.version!=="v6")Se(r,"ipv4",o.message,t);if(o.version!=="v4")Se(r,"ipv6",o.message,t);break}case"base64url":oe(r,_e.base64url,o.message,t);break;case"jwt":oe(r,_e.jwt,o.message,t);break;case"cidr":{if(o.version!=="v6")oe(r,_e.ipv4Cidr,o.message,t);if(o.version!=="v4")oe(r,_e.ipv6Cidr,o.message,t);break}case"emoji":oe(r,_e.emoji(),o.message,t);break;case"ulid":{oe(r,_e.ulid,o.message,t);break}case"base64":{switch(t.base64Strategy){case"format:binary":{Se(r,"binary",o.message,t);break}case"contentEncoding:base64":{r.contentEncoding="base64";break}case"pattern:zod":{oe(r,_e.base64,o.message,t);break}}break}case"nanoid":oe(r,_e.nanoid,o.message,t);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function Kn(e,t){return t.patternStrategy==="escape"?Kv(e):e}var Gv=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function Kv(e){let t="";for(let r=0;r<e.length;r++){if(!Gv.has(e[r]))t+="\\";t+=e[r]}return t}function Se(e,t,r,o){var n;if(e.format||((n=e.anyOf)==null?void 0:n.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&&o.errorMessages&&{errorMessage:{format:r}}})}else e.format=t}function oe(e,t,r,o){var n;if(e.pattern||((n=e.allOf)==null?void 0:n.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:Cd(t,o),...r&&o.errorMessages&&{errorMessage:{pattern:r}}})}else e.pattern=Cd(t,o)}function Cd(e,t){var r;if(!t.applyRegexFlags||!e.flags)return e.source;let o={i:e.flags.includes("i"),m:e.flags.includes("m"),s:e.flags.includes("s")},n=o.i?e.source.toLowerCase():e.source,a="",s=!1,i=!1,u=!1;for(let c=0;c<n.length;c++){if(s){a+=n[c],s=!1;continue}if(o.i){if(i){if(n[c].match(/[a-z]/)){if(u)a+=n[c],a+=`${n[c-2]}-${n[c]}`.toUpperCase(),u=!1;else if(n[c+1]==="-"&&((r=n[c+2])==null?void 0:r.match(/[a-z]/)))a+=n[c],u=!0;else a+=`${n[c]}${n[c].toUpperCase()}`;continue}}else if(n[c].match(/[a-z]/)){a+=`[${n[c]}${n[c].toUpperCase()}]`;continue}}if(o.m){if(n[c]==="^"){a+=`(^|(?<=[\r
|
|
131
|
-
]))`;continue}else if(
|
|
132
|
-
]))`;continue}}if(
|
|
133
|
-
`:`[${
|
|
134
|
-
]`;continue}if(a+=n[c],n[c]==="\\")s=!0;else if(i&&n[c]==="]")i=!1;else if(!i&&n[c]==="[")i=!0}try{new RegExp(a)}catch(c){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 Gd(e,t){var r,o,n,a,s,i;let u={type:"object",additionalProperties:(r=U(e.valueType._def,{...t,currentPath:[...t.currentPath,"additionalProperties"]}))!=null?r:t.allowedAdditionalProperties};if(((o=e.keyType)==null?void 0:o._def.typeName)==="ZodString"&&((n=e.keyType._def.checks)==null?void 0:n.length)){let{type:c,...d}=Jd(e.keyType._def,t);return{...u,propertyNames:d}}else if(((a=e.keyType)==null?void 0:a._def.typeName)==="ZodEnum")return{...u,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:c,...d}=Wd(e.keyType._def,t);return{...u,propertyNames:d}}return u}function Hv(e,t){if(t.mapStrategy==="record")return Gd(e,t);let r=U(e.keyType._def,{...t,currentPath:[...t.currentPath,"items","items","0"]})||pe(),o=U(e.valueType._def,{...t,currentPath:[...t.currentPath,"items","items","1"]})||pe();return{type:"array",maxItems:125,items:{type:"array",items:[r,o],minItems:2,maxItems:2}}}function Yv(e){let t=e.values,o=Object.keys(e.values).filter((a)=>typeof t[t[a]]!=="number").map((a)=>t[a]),n=Array.from(new Set(o.map((a)=>typeof a)));return{type:n.length===1?n[0]==="string"?"string":"number":["string","number"],enum:o}}function Xv(){return{not:pe()}}function Qv(){return{type:"null"}}var Hn={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((o)=>(o._def.typeName in Hn)&&(!o._def.checks||!o._def.checks.length))){let o=r.reduce((n,a)=>{let s=Hn[a._def.typeName];return s&&!n.includes(s)?[...n,s]:n},[]);return{type:o.length>1?o:o[0]}}else if(r.every((o)=>o._def.typeName==="ZodLiteral"&&!o.description)){let o=r.reduce((n,a)=>{let s=typeof a._def.value;switch(s){case"string":case"number":case"boolean":return[...n,s];case"bigint":return[...n,"integer"];case"object":if(a._def.value===null)return[...n,"null"];case"symbol":case"undefined":case"function":default:return n}},[]);if(o.length===r.length){let n=o.filter((a,s,i)=>i.indexOf(a)===s);return{type:n.length>1?n:n[0],enum:r.reduce((a,s)=>a.includes(s._def.value)?a:[...a,s._def.value],[])}}}else if(r.every((o)=>o._def.typeName==="ZodEnum"))return{type:"string",enum:r.reduce((o,n)=>[...o,...n._def.values.filter((a)=>!o.includes(a))],[])};return ty(e,t)}var ty=(e,t)=>{let r=(e.options instanceof Map?Array.from(e.options.values()):e.options).map((o,n)=>U(o._def,{...t,currentPath:[...t.currentPath,"anyOf",`${n}`]})).filter((o)=>!!o&&(!t.strictUnions||typeof o==="object"&&Object.keys(o).length>0));return r.length?{anyOf:r}:void 0};function ry(e,t){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(e.innerType._def.typeName)&&(!e.innerType._def.checks||!e.innerType._def.checks.length))return{type:[Hn[e.innerType._def.typeName],"null"]};let r=U(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function oy(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 ny(e,t){let r={type:"object",properties:{}},o=[],n=e.shape();for(let s in n){let i=n[s];if(i===void 0||i._def===void 0)continue;let u=sy(i),c=U(i._def,{...t,currentPath:[...t.currentPath,"properties",s],propertyPath:[...t.currentPath,"properties",s]});if(c===void 0)continue;if(r.properties[s]=c,!u)o.push(s)}if(o.length)r.required=o;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 sy(e){try{return e.isOptional()}catch(t){return!0}}var iy=(e,t)=>{var r;if(t.currentPath.toString()===((r=t.propertyPath)==null?void 0:r.toString()))return U(e.innerType._def,t);let o=U(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","1"]});return o?{anyOf:[{not:pe()},o]}:pe()},ly=(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"]}),o=U(e.out._def,{...t,currentPath:[...t.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,o].filter((n)=>n!==void 0)}};function cy(e,t){return U(e.type._def,t)}function uy(e,t){let o={type:"array",uniqueItems:!0,items:U(e.valueType._def,{...t,currentPath:[...t.currentPath,"items"]})};if(e.minSize)o.minItems=e.minSize.value;if(e.maxSize)o.maxItems=e.maxSize.value;return o}function dy(e,t){if(e.rest)return{type:"array",minItems:e.items.length,items:e.items.map((r,o)=>U(r._def,{...t,currentPath:[...t.currentPath,"items",`${o}`]})).reduce((r,o)=>o===void 0?r:[...r,o],[]),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,o)=>U(r._def,{...t,currentPath:[...t.currentPath,"items",`${o}`]})).reduce((r,o)=>o===void 0?r:[...r,o],[])}}function py(){return{not:pe()}}function fy(){return pe()}var my=(e,t)=>U(e.innerType._def,t),hy=(e,t,r)=>{switch(t){case"ZodString":return Jd(e,r);case"ZodNumber":return oy(e);case"ZodObject":return ny(e,r);case"ZodBigInt":return Dv(e);case"ZodBoolean":return Uv();case"ZodDate":return Vd(e,r);case"ZodUndefined":return py();case"ZodNull":return Qv();case"ZodArray":return jv(e,r);case"ZodUnion":case"ZodDiscriminatedUnion":return ey(e,r);case"ZodIntersection":return Vv(e,r);case"ZodTuple":return dy(e,r);case"ZodRecord":return Gd(e,r);case"ZodLiteral":return Jv(e);case"ZodEnum":return qv(e);case"ZodNativeEnum":return Yv(e);case"ZodNullable":return ry(e,r);case"ZodOptional":return iy(e,r);case"ZodMap":return Hv(e,r);case"ZodSet":return uy(e,r);case"ZodLazy":return()=>e.getter()._def;case"ZodPromise":return cy(e,r);case"ZodNaN":case"ZodNever":return Xv();case"ZodEffects":return Bv(e,r);case"ZodAny":return pe();case"ZodUnknown":return fy();case"ZodDefault":return Fv(e,r);case"ZodBranded":return Wd(e,r);case"ZodReadonly":return my(e,r);case"ZodCatch":return Zv(e,r);case"ZodPipeline":return ly(e,r);case"ZodFunction":case"ZodVoid":case"ZodSymbol":return;default:return((o)=>{return})(t)}},gy=(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 o;let n=t.seen.get(e);if(t.override){let u=(o=t.override)==null?void 0:o.call(t,e,t,n,r);if(u!==Nv)return u}if(n&&!r){let u=vy(n,t);if(u!==void 0)return u}let a={def:e,path:t.currentPath,jsonSchema:void 0};t.seen.set(e,a);let s=hy(e,e.typeName,t),i=typeof s==="function"?U(s(),t):s;if(i)yy(e,t,i);if(t.postProcess){let u=t.postProcess(i,e,t);return a.jsonSchema=i,u}return a.jsonSchema=i,i}var vy=(e,t)=>{switch(t.$refStrategy){case"root":return{$ref:e.path.join("/")};case"relative":return{$ref:gy(t.currentPath,e.path)};case"none":case"seen":{if(e.path.length<t.currentPath.length&&e.path.every((r,o)=>t.currentPath[o]===r))return console.warn(`Recursive reference detected at ${t.currentPath.join("/")}! Defaulting to any`),pe();return t.$refStrategy==="seen"?pe():void 0}}},yy=(e,t,r)=>{if(e.description)r.description=e.description;return r},by=(e)=>{let t=zv(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(([o,n])=>[n._def,{def:n._def,path:[...t.basePath,t.definitionPath,o],jsonSchema:void 0}]))}},wy=(e,t)=>{var r;let o=by(t),n=typeof t==="object"&&t.definitions?Object.entries(t.definitions).reduce((c,[d,p])=>{var f;return{...c,[d]:(f=U(p._def,{...o,currentPath:[...o.basePath,o.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?o:{...o,currentPath:[...o.basePath,o.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 u=a===void 0?n?{...s,[o.definitionPath]:n}:s:{$ref:[...o.$refStrategy==="relative"?[]:o.basePath,o.definitionPath,a].join("/"),[o.definitionPath]:{...n,[a]:s}};return u.$schema="http://json-schema.org/draft-07/schema#",u},Yn=Symbol.for("vercel.ai.schema");function io(e){let t;return()=>{if(t==null)t=e();return t}}function hr(e,{validate:t}={}){return{[Yn]:!0,_type:void 0,get jsonSchema(){if(typeof e==="function")e=e();return e},validate:t}}function xy(e){return typeof e==="object"&&e!==null&&Yn in e&&e[Yn]===!0&&"jsonSchema"in e&&"validate"in e}function gr(e){return e==null?hr({type:"object",properties:{},additionalProperties:!1}):xy(e)?e:("~standard"in e)?e["~standard"].vendor==="zod"?zt(e):_y(e):e()}function _y(e){return hr(()=>{if(!Sy(e))throw Error(`Standard schema vendor '${e["~standard"].vendor}' does not support JSON Schema conversion.`);return ta(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 Sy(e){return e["~standard"].jsonSchema!=null}function Ty(e,t){var r;let o=(r=t==null?void 0:t.useReferences)!=null?r:!1;return hr(()=>wy(e,{$refStrategy:o?"root":"none"}),{validate:async(n)=>{let a=await e.safeParseAsync(n);return a.success?{success:!0,value:a.data}:{success:!1,error:a.error}}})}function Iy(e,t){var r;let o=(r=t==null?void 0:t.useReferences)!=null?r:!1;return hr(()=>ta(Un(e,{target:"draft-7",io:"input",reused:o?"ref":"inline"})),{validate:async(n)=>{let a=await no(e,n);return a.success?{success:!0,value:a.data}:{success:!1,error:a.error}}})}function Ey(e){return"_zod"in e}function zt(e,t){if(Ey(e))return Iy(e,t);else return Ty(e,t)}async function lo({value:e,schema:t,context:r}){let o=await jt({value:e,schema:t,context:r});if(!o.success)throw $e.wrap({value:e,cause:o.error,context:r});return o.value}async function jt({value:e,schema:t,context:r}){let o=gr(t);try{if(o.validate==null)return{success:!0,value:e,rawValue:e};let n=await o.validate(e);if(n.success)return{success:!0,value:n.value,rawValue:e};return{success:!1,error:$e.wrap({value:e,cause:n.error,context:r}),rawValue:e}}catch(n){return{success:!1,error:$e.wrap({value:e,cause:n,context:r}),rawValue:e}}}async function Ke({text:e,schema:t}){try{let r=Pv(e);if(t==null)return{success:!0,value:r,rawValue:r};return await jt({value:r,schema:t})}catch(r){return{success:!1,error:Do.isInstance(r)?r:new Do({text:e,cause:r}),rawValue:void 0}}}async function ra(e){if(typeof e==="function")e=e();return Promise.resolve(e)}var Kd="AI_SerializationError",Hd=`vercel.ai.error.${Kd}`,ky=Symbol.for(Hd),Od,Pd,EI=class extends(Pd=k,Od=ky,Pd){constructor({message:e="Failed to serialize value.",cause:t}={}){super({name:Kd,message:e,cause:t});this[Od]=!0}static isInstance(e){return k.hasMarker(e,Hd)}};var Ry=Object.defineProperty,Ay=(e,t)=>{for(var r in t)Ry(e,r,{get:t[r],enumerable:!0})},Cy="AI_InvalidArgumentError",Oy=`vercel.ai.error.${Cy}`,Py=Symbol.for(Oy),Ny;Ny=Py;var zy="AI_InvalidStreamPartError",jy=`vercel.ai.error.${zy}`,Dy=Symbol.for(jy),Uy;Uy=Dy;var Zy="AI_InvalidToolApprovalError",Ly=`vercel.ai.error.${Zy}`,Fy=Symbol.for(Ly),By;By=Fy;var qy="AI_InvalidToolApprovalSignatureError",Wy=`vercel.ai.error.${qy}`,Vy=Symbol.for(Wy),Jy;Jy=Vy;var Gy="AI_InvalidToolInputError",Ky=`vercel.ai.error.${Gy}`,Hy=Symbol.for(Ky),Yy;Yy=Hy;var Xy="AI_ToolCallNotFoundForApprovalError",Qy=`vercel.ai.error.${Xy}`,eb=Symbol.for(Qy),tb;tb=eb;var rb="AI_MissingToolResultsError",ob=`vercel.ai.error.${rb}`,nb=Symbol.for(ob),ab;ab=nb;var sb="AI_NoImageGeneratedError",ib=`vercel.ai.error.${sb}`,lb=Symbol.for(ib),cb;cb=lb;var op="AI_NoObjectGeneratedError",np=`vercel.ai.error.${op}`,ub=Symbol.for(np),ap,Ye=class extends k{constructor({message:e="No object generated.",cause:t,text:r,response:o,usage:n,finishReason:a}){super({name:op,message:e,cause:t});this[ap]=!0,this.text=r,this.response=o,this.usage=n,this.finishReason=a}static isInstance(e){return k.hasMarker(e,np)}};ap=ub;var db="AI_NoOutputGeneratedError",pb=`vercel.ai.error.${db}`,fb=Symbol.for(pb),mb;mb=fb;var hb="AI_NoSpeechGeneratedError",gb=`vercel.ai.error.${hb}`,vb=Symbol.for(gb),yb;yb=vb;var bb="AI_NoTranscriptGeneratedError",wb=`vercel.ai.error.${bb}`,xb=Symbol.for(wb),_b;_b=xb;var Sb="AI_NoTranslationGeneratedError",Tb=`vercel.ai.error.${Sb}`,Ib=Symbol.for(Tb),Eb;Eb=Ib;var kb="AI_NoVideoGeneratedError",$b=`vercel.ai.error.${kb}`,Mb=Symbol.for($b),Rb;Rb=Mb;var Ab="AI_NoSuchToolError",Cb=`vercel.ai.error.${Ab}`,Ob=Symbol.for(Cb),Pb;Pb=Ob;var Nb="AI_ToolCallRepairError",zb=`vercel.ai.error.${Nb}`,jb=Symbol.for(zb),Db;Db=jb;var sp="AI_UIMessageStreamError",ip=`vercel.ai.error.${sp}`,Ub=Symbol.for(ip),lp,pt=class extends k{constructor({chunkType:e,chunkId:t,message:r}){super({name:sp,message:r});this[lp]=!0,this.chunkType=e,this.chunkId=t}static isInstance(e){return k.hasMarker(e,ip)}};lp=Ub;var Zb="AI_InvalidDataContentError",Lb=`vercel.ai.error.${Zb}`,Fb=Symbol.for(Lb),Bb;Bb=Fb;var qb="AI_InvalidMessageRoleError",Wb=`vercel.ai.error.${qb}`,Vb=Symbol.for(Wb),Jb;Jb=Vb;var cp="AI_MessageConversionError",up=`vercel.ai.error.${cp}`,Gb=Symbol.for(up),dp,Kb=class extends k{constructor({originalMessage:e,message:t}){super({name:cp,message:t});this[dp]=!0,this.originalMessage=e}static isInstance(e){return k.hasMarker(e,up)}};dp=Gb;var Hb="AI_RetryError",Yb=`vercel.ai.error.${Hb}`,Xb=Symbol.for(Yb),Qb;Qb=Xb;var ew="7.0.58",tw=async({url:e,maxBytes:t,abortSignal:r})=>{var o;let n=e.toString();try{let a=Nt({},`ai-sdk/${ew}`,Fd()),s=await Zd({url:n,headers:a,abortSignal:r});if(!s.ok)throw await so(s),new ne({url:n,statusCode:s.status,statusText:s.statusText});return{data:await Ld({response:s,url:n,maxBytes:t!=null?t:ea}),mediaType:(o=s.headers.get("content-type"))!=null?o:void 0}}catch(a){if(ne.isInstance(a))throw a;throw new ne({url:n,cause:a})}};function pp(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 o in t){if(o==="__proto__"||o==="constructor"||o==="prototype")continue;if(Object.prototype.hasOwnProperty.call(t,o)){let n=t[o];if(n===void 0)continue;let a=o in e?e[o]:void 0,s=n!==null&&typeof n==="object"&&!Array.isArray(n)&&!(n instanceof Date)&&!(n instanceof RegExp),i=a!==null&&a!==void 0&&typeof a==="object"&&!Array.isArray(a)&&!(a instanceof Date)&&!(a instanceof RegExp);if(s&&i)r[o]=pp(a,n);else r[o]=n}}return r}async function Yd({toolCallId:e,input:t,output:r,tool:o,errorMode:n}){if(n==="text")return{type:"error-text",value:Yt(r)};else if(n==="json")return{type:"error-json",value:Xd(r)};if(o==null?void 0:o.toModelOutput)return await o.toModelOutput({toolCallId:e,input:t,output:r});return typeof r==="string"?{type:"text",value:r}:{type:"json",value:Xd(r)}}function Xd(e){return e===void 0?null:e}var l={array:Bn,boolean:pd,custom:Td,discriminatedUnion:yd,enum:Wn,instanceof:Id,lazy:Sd,literal:wd,looseObject:gd,never:Fn,null:fd,number:dd,object:hd,record:bd,string:Ln,union:qn,unknown:fr},ft=l.lazy(()=>l.union([l.null(),l.string(),l.number(),l.boolean(),l.record(l.string(),ft.optional()),l.array(ft)])),S=l.record(l.string(),l.record(l.string(),ft.optional())),br=l.union([l.string(),l.instanceof(Uint8Array),l.instanceof(ArrayBuffer),l.custom(Bd,{message:"Must be a Buffer"})]),la=l.record(l.string(),l.string()),fp=l.object({type:l.literal("text"),text:l.string(),providerOptions:S.optional()}),rw=l.object({type:l.literal("image"),image:l.union([br,l.instanceof(URL),la]),mediaType:l.string().optional(),providerOptions:S.optional()}),mp=l.discriminatedUnion("type",[l.object({type:l.literal("data"),data:br}),l.object({type:l.literal("url"),url:l.instanceof(URL)}),l.object({type:l.literal("reference"),reference:la}),l.object({type:l.literal("text"),text:l.string()})]),ow=l.discriminatedUnion("type",[l.object({type:l.literal("data"),data:br}),l.object({type:l.literal("url"),url:l.instanceof(URL)})]),hp=l.object({type:l.literal("file"),data:l.union([mp,br,l.instanceof(URL),la]),filename:l.string().optional(),mediaType:l.string(),providerOptions:S.optional()}),nw=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()}),sw=l.object({type:l.literal("reasoning-file"),data:l.union([ow,br,l.instanceof(URL)]),mediaType:l.string(),providerOptions:S.optional()}),iw=l.object({type:l.literal("tool-call"),toolCallId:l.string(),toolName:l.string(),input:l.unknown(),providerOptions:S.optional(),providerExecuted:l.boolean().optional()}),lw=l.discriminatedUnion("type",[l.object({type:l.literal("text"),value:l.string(),providerOptions:S.optional()}),l.object({type:l.literal("json"),value:ft,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:ft,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:mp,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()})]))})]),gp=l.object({type:l.literal("tool-result"),toolCallId:l.string(),toolName:l.string(),output:lw,providerOptions:S.optional()}),cw=l.object({type:l.literal("tool-approval-request"),approvalId:l.string(),toolCallId:l.string()}),uw=l.object({type:l.literal("tool-approval-response"),approvalId:l.string(),approved:l.boolean(),reason:l.string().optional()}),dw=l.object({role:l.literal("system"),content:l.string(),providerOptions:S.optional()}),pw=l.object({role:l.literal("user"),content:l.union([l.string(),l.array(l.union([fp,rw,hp]))]),providerOptions:S.optional()}),fw=l.object({role:l.literal("assistant"),content:l.union([l.string(),l.array(l.union([fp,aw,hp,nw,sw,iw,gp,cw]))]),providerOptions:S.optional()}),mw=l.object({role:l.literal("tool"),content:l.array(l.union([gp,uw])),providerOptions:S.optional()}),VI=l.union([dw,pw,fw,mw]);function Qd(e,t){return e!=null&&Object.hasOwn(e,t)?e[t]:void 0}var hw={};Ay(hw,{array:()=>bw,choice:()=>ww,json:()=>xw,object:()=>yw,text:()=>vw});function gw(e){let t=["ROOT"],r=-1,o=null,n=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,o=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 u(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")n=0,t.push("INSIDE_STRING_UNICODE_ESCAPE");else r=d;break}case"INSIDE_STRING_UNICODE_ESCAPE":{if(a(p)){if(n++,n===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")u(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")u(p,d);break}default:{t.pop();break}}break}case"INSIDE_LITERAL":{let h=e.substring(o,d+1);if(!"false".startsWith(h)&&!"true".startsWith(h)&&!"null".startsWith(h)){if(t.pop(),t[t.length-1]==="INSIDE_OBJECT_AFTER_VALUE")i(p,d);else if(t[t.length-1]==="INSIDE_ARRAY_AFTER_VALUE")u(p,d)}else r=d;break}}}let c=e.slice(0,r+1);for(let d=t.length-1;d>=0;d--)switch(t[d]){case"INSIDE_STRING":{c+='"';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":{c+="}";break}case"INSIDE_ARRAY_START":case"INSIDE_ARRAY_AFTER_COMMA":case"INSIDE_ARRAY_AFTER_VALUE":{c+="]";break}case"INSIDE_LITERAL":{let f=e.substring(o,e.length);if("true".startsWith(f))c+="true".slice(f.length);else if("false".startsWith(f))c+="false".slice(f.length);else if("null".startsWith(f))c+="null".slice(f.length)}}return c}async function wr(e){if(e===void 0)return{value:void 0,state:"undefined-input"};let t=await Ke({text:e});if(t.success)return{value:t.value,state:"successful-parse"};if(t=await Ke({text:gw(e)}),t.success)return{value:t.value,state:"repaired-parse"};return{value:void 0,state:"failed-parse"}}var vw=()=>({name:"text",responseFormat:Promise.resolve({type:"text"}),async parseCompleteOutput({text:e}){return e},async parsePartialOutput({text:e}){return{partial:e}},createElementStreamTransform(){return}}),yw=({schema:e,name:t,description:r})=>{let o=gr(e);return{name:"object",responseFormat:ra(o.jsonSchema).then((n)=>({type:"json",schema:n,...t!=null&&{name:t},...r!=null&&{description:r}})),async parseCompleteOutput({text:n},a){let s=await Ke({text:n});if(!s.success)throw new Ye({message:"No object generated: could not parse the response.",cause:s.error,text:n,response:a.response,usage:a.usage,finishReason:a.finishReason});let i=await jt({value:s.value,schema:o});if(!i.success)throw new Ye({message:"No object generated: response did not match schema.",cause:i.error,text:n,response:a.response,usage:a.usage,finishReason:a.finishReason});return i.value},async parsePartialOutput({text:n}){let a=await wr(n);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 o=gr(e);return{name:"array",responseFormat:ra(o.jsonSchema).then((n)=>{let{$schema:a,...s}=n;return{type:"json",schema:{$schema:"http://json-schema.org/draft-07/schema#",type:"object",properties:{elements:{type:"array",items:s}},required:["elements"],additionalProperties:!1},...t!=null&&{name:t},...r!=null&&{description:r}}}),async parseCompleteOutput({text:n},a){let s=await Ke({text:n});if(!s.success)throw new Ye({message:"No object generated: could not parse the response.",cause:s.error,text:n,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 Ye({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:n,response:a.response,usage:a.usage,finishReason:a.finishReason});let u=[];for(let c of i.elements){let d=await jt({value:c,schema:o});if(!d.success)throw new Ye({message:"No object generated: response did not match schema.",cause:d.error,text:n,response:a.response,usage:a.usage,finishReason:a.finishReason});u.push(d.value)}return u},async parsePartialOutput({text:n}){let a=await wr(n);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,u=[];for(let c of i){let d=await jt({value:c,schema:o});if(d.success)u.push(d.value)}return{partial:u}}}},createElementStreamTransform(){let n=0;return new TransformStream({transform({partialOutput:a},s){if(a!=null)for(;n<a.length;n++)s.enqueue(a[n])}})}}},ww=({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:o},n){let a=await Ke({text:o});if(!a.success)throw new Ye({message:"No object generated: could not parse the response.",cause:a.error,text:o,response:n.response,usage:n.usage,finishReason:n.finishReason});let s=a.value;if(s==null||typeof s!=="object"||!("result"in s)||typeof s.result!=="string"||!e.includes(s.result))throw new Ye({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:o,response:n.response,usage:n.usage,finishReason:n.finishReason});return s.result},async parsePartialOutput({text:o}){let n=await wr(o);switch(n.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":{let a=n.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(n.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}}),xw=({name:e,description:t}={})=>({name:"json",responseFormat:Promise.resolve({type:"json",...e!=null&&{name:e},...t!=null&&{description:t}}),async parseCompleteOutput({text:r},o){let n=await Ke({text:r});if(!n.success)throw new Ye({message:"No object generated: could not parse the response.",cause:n.error,text:r,response:o.response,usage:o.usage,finishReason:o.finishReason});return n.value},async parsePartialOutput({text:r}){let o=await wr(r);switch(o.state){case"failed-parse":case"undefined-input":return;case"repaired-parse":case"successful-parse":return o.value===void 0?void 0:{partial:o.value}}},createElementStreamTransform(){return}});var HI=J({prefix:"aitxt",size:24}),YI=J({prefix:"call",size:24});function vp({stream:e}){return e.pipeThrough(new TransformStream({transform(t,r){if(t.type==="text-delta")r.enqueue(t.text)}}))}var QI=class extends TransformStream{constructor(){super({transform(e,t){t.enqueue(`data: ${JSON.stringify(e)}
|
|
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
|
|
131
|
+
]))`;continue}else if(o[u]==="$"){a+=`($|(?=[\r
|
|
132
|
+
]))`;continue}}if(n.s&&o[u]==="."){a+=i?`${o[u]}\r
|
|
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.68",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)}
|
|
135
135
|
|
|
136
136
|
`)},flush(e){e.enqueue(`data: [DONE]
|
|
137
137
|
|
|
138
|
-
`)}})}};function _w({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 vr=l.record(l.string(),ft.optional()),r0=io(()=>zt(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:vr.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:vr.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:vr.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:vr.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:vr.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 Sw(e){return e.type.startsWith("data-")}function yr(){return Object.create(null)}function oa(e){return e.type.startsWith("data-")}function na(e){return e.type==="text"}function ep(e){return e.type==="custom"}function aa(e){return e.type==="file"}function tp(e){return e.type==="reasoning-file"}function rp(e){return e.type==="reasoning"}function sa(e){return e.type.startsWith("tool-")}function yp(e){return e.type==="dynamic-tool"}function ie(e){return sa(e)||yp(e)}function ia(e){return e.type.split("-").slice(1).join("-")}function He(e){return yp(e)?e.toolName:ia(e)}function bp({lastMessage:e,messageId:t}){return{message:(e==null?void 0:e.role)==="assistant"?e:{id:t,metadata:void 0,role:"assistant",parts:[]},activeTextParts:yr(),activeReasoningParts:yr(),partialToolCalls:yr()}}function wp({stream:e,messageMetadataSchema:t,dataPartSchemas:r,runUpdateMessageJob:o,onError:n,onToolCall:a,onData:s}){return e.pipeThrough(new TransformStream({async transform(i,u){await o(async({state:c,write:d})=>{var p,f,h,y;function v(){let m=c.message.parts,N=m.length-1;while(N>=0&&m[N].type!=="step-start")N--;return m.slice(N+1)}function _(){return v().filter(ie)}function j(m){let V=_().find((G)=>G.toolCallId===m);if(V==null){let G=c.message.parts;for(let M=G.length-1;M>=0;M--){let D=G[M];if(ie(D)&&D.toolCallId===m){V=D;break}}}if(V==null)throw new pt({chunkType:"tool-invocation",chunkId:m,message:`No tool invocation found for tool call ID "${m}".`});return V}function C(m){let V=c.message.parts.filter(ie).find((G)=>{var M;return((M=G.approval)==null?void 0:M.id)===m});if(V==null)throw new pt({chunkType:"tool-approval-response",chunkId:m,message:`No tool invocation found for approval ID "${m}".`});return V}function Z(m,N){var V;let G=N!=null?N:v().find((Y)=>sa(Y)&&Y.toolCallId===m.toolCallId),M=m,D=G;if(G!=null){if(G.state=m.state,D.input=M.input,D.output=M.output,D.errorText=M.errorText,D.rawInput=M.rawInput,D.preliminary=M.preliminary,m.title!==void 0)D.title=m.title;if(m.toolMetadata!==void 0)D.toolMetadata=m.toolMetadata;D.providerExecuted=(V=M.providerExecuted)!=null?V:G.providerExecuted;let Y=M.providerMetadata;if(Y!=null)if(m.state==="output-available"||m.state==="output-error"){let Ue=G;Ue.resultProviderMetadata=Y}else G.callProviderMetadata=Y}else c.message.parts.push({type:`tool-${m.toolName}`,toolCallId:m.toolCallId,state:m.state,title:m.title,...m.toolMetadata!==void 0?{toolMetadata:m.toolMetadata}:{},input:M.input,output:M.output,rawInput:M.rawInput,errorText:M.errorText,providerExecuted:M.providerExecuted,preliminary:M.preliminary,...M.providerMetadata!=null&&(m.state==="output-available"||m.state==="output-error")?{resultProviderMetadata:M.providerMetadata}:{},...M.providerMetadata!=null&&!(m.state==="output-available"||m.state==="output-error")?{callProviderMetadata:M.providerMetadata}:{}})}function R(m,N){var V,G;let M=N!=null?N:v().find((Ue)=>Ue.type==="dynamic-tool"&&Ue.toolCallId===m.toolCallId),D=m,Y=M;if(M!=null){if(M.state=m.state,Y.toolName=m.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,m.title!==void 0)Y.title=m.title;if(m.toolMetadata!==void 0)Y.toolMetadata=m.toolMetadata;Y.providerExecuted=(G=D.providerExecuted)!=null?G:M.providerExecuted;let Ue=D.providerMetadata;if(Ue!=null)if(m.state==="output-available"||m.state==="output-error"){let $f=M;$f.resultProviderMetadata=Ue}else M.callProviderMetadata=Ue}else c.message.parts.push({type:"dynamic-tool",toolName:m.toolName,toolCallId:m.toolCallId,state:m.state,input:D.input,output:D.output,errorText:D.errorText,preliminary:D.preliminary,providerExecuted:D.providerExecuted,title:m.title,...m.toolMetadata!==void 0?{toolMetadata:m.toolMetadata}:{},...D.providerMetadata!=null&&(m.state==="output-available"||m.state==="output-error")?{resultProviderMetadata:D.providerMetadata}:{},...D.providerMetadata!=null&&!(m.state==="output-available"||m.state==="output-error")?{callProviderMetadata:D.providerMetadata}:{}})}async function P(m){if(m!=null){let N=c.message.metadata!=null?pp(c.message.metadata,m):m;if(t!=null)await lo({value:N,schema:t,context:{field:"message.metadata",entityId:c.message.id}});c.message.metadata=N}}switch(i.type){case"text-start":{let m={type:"text",text:"",providerMetadata:i.providerMetadata,state:"streaming"};c.activeTextParts[i.id]=m,c.message.parts.push(m),d();break}case"text-delta":{let m=c.activeTextParts[i.id];if(m==null)throw new pt({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.`});m.text+=i.delta,m.providerMetadata=(p=i.providerMetadata)!=null?p:m.providerMetadata,d();break}case"text-end":{let m=c.activeTextParts[i.id];if(m==null)throw new pt({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.`});m.state="done",m.providerMetadata=(f=i.providerMetadata)!=null?f:m.providerMetadata,delete c.activeTextParts[i.id],d();break}case"custom":{let m={type:"custom",kind:i.kind,providerMetadata:i.providerMetadata};c.message.parts.push(m),d();break}case"reasoning-start":{let m={type:"reasoning",text:"",providerMetadata:i.providerMetadata,state:"streaming"};c.activeReasoningParts[i.id]=m,c.message.parts.push(m),d();break}case"reasoning-delta":{let m=c.activeReasoningParts[i.id];if(m==null)throw new pt({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.`});m.text+=i.delta,m.providerMetadata=(h=i.providerMetadata)!=null?h:m.providerMetadata,d();break}case"reasoning-end":{let m=c.activeReasoningParts[i.id];if(m==null)throw new pt({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.`});m.providerMetadata=(y=i.providerMetadata)!=null?y:m.providerMetadata,m.state="done",delete c.activeReasoningParts[i.id],d();break}case"file":case"reasoning-file":{c.message.parts.push({type:i.type,mediaType:i.mediaType,url:i.url,...i.providerMetadata!=null?{providerMetadata:i.providerMetadata}:{}}),d();break}case"source-url":{c.message.parts.push({type:"source-url",sourceId:i.sourceId,url:i.url,title:i.title,providerMetadata:i.providerMetadata}),d();break}case"source-document":{c.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 m=v().filter(sa);if(c.partialToolCalls[i.toolCallId]={text:"",toolName:i.toolName,index:m.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 m=c.partialToolCalls[i.toolCallId];if(m==null)throw new pt({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.`});m.text+=i.inputTextDelta;let{value:N}=await wr(m.text);if(m.dynamic)R({toolCallId:i.toolCallId,toolName:m.toolName,state:"input-streaming",input:N,title:m.title,toolMetadata:m.toolMetadata});else Z({toolCallId:i.toolCallId,toolName:m.toolName,state:"input-streaming",input:N,title:m.title,toolMetadata:m.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 m=v().filter(ie).find((V)=>V.toolCallId===i.toolCallId);if(m!=null?m.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 m=j(i.toolCallId);m.state="approval-requested",m.approval={id:i.approvalId,...i.isAutomatic===!0?{isAutomatic:!0}:{},...i.signature!=null?{signature:i.signature}:{}},d();break}case"tool-approval-response":{let m=C(i.approvalId),N=m.approval==null?{id:i.approvalId}:m.approval;if(m.state="approval-responded",m.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)m.providerExecuted=i.providerExecuted;if(i.providerMetadata!=null)m.callProviderMetadata=i.providerMetadata;d();break}case"tool-output-denied":{let m=j(i.toolCallId);m.state="output-denied",d();break}case"tool-output-available":{let m=j(i.toolCallId);if(m.type==="dynamic-tool")R({toolCallId:i.toolCallId,toolName:m.toolName,state:"output-available",input:m.input,output:i.output,preliminary:i.preliminary,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata,title:m.title,toolMetadata:m.toolMetadata},m);else Z({toolCallId:i.toolCallId,toolName:ia(m),state:"output-available",input:m.input,output:i.output,providerExecuted:i.providerExecuted,preliminary:i.preliminary,providerMetadata:i.providerMetadata,title:m.title,toolMetadata:m.toolMetadata},m);d();break}case"tool-output-error":{let m=j(i.toolCallId);if(m.type==="dynamic-tool")R({toolCallId:i.toolCallId,toolName:m.toolName,state:"output-error",input:m.input,errorText:i.errorText,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata,title:m.title,toolMetadata:m.toolMetadata},m);else Z({toolCallId:i.toolCallId,toolName:ia(m),state:"output-error",input:m.input,rawInput:m.rawInput,errorText:i.errorText,providerExecuted:i.providerExecuted,providerMetadata:i.providerMetadata,title:m.title,toolMetadata:m.toolMetadata},m);d();break}case"start-step":{c.message.parts.push({type:"step-start"});break}case"finish-step":{c.activeTextParts=yr(),c.activeReasoningParts=yr();break}case"start":{if(i.messageId!=null)c.message.id=i.messageId;if(await P(i.messageMetadata),i.messageId!=null||i.messageMetadata!=null)d();break}case"finish":{if(i.finishReason!=null)c.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":{n==null||n(Error(i.errorText));break}default:if(Sw(i)){if((r==null?void 0:r[i.type])!=null){let V=c.message.parts.findIndex((M)=>("id"in M)&&("data"in M)&&M.id===i.id&&M.type===i.type),G=V>=0?V:c.message.parts.length;await lo({value:i.data,schema:r[i.type],context:{field:`message.parts[${G}].data`,entityName:i.type,entityId:i.id}})}let m=i;if(m.transient){s==null||s(m);break}let N=m.id!=null?c.message.parts.find((V)=>m.type===V.type&&m.id===V.id):void 0;if(N!=null)N.data=m.data;else c.message.parts.push(m);s==null||s(m),d()}}u.enqueue(i)})}}))}function Tw({messageId:e,originalMessages:t=[],onStepEnd:r,onStepFinish:o,onEnd:n,onFinish:a,onError:s,stream:i}){let u=t==null?void 0:t[t.length-1];if((u==null?void 0:u.role)!=="assistant")u=void 0;else e=u.id;let c=!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")c=!0;Z.enqueue(C)}})),p=r!=null?r:o,f=n!=null?n:a;if(f==null&&p==null)return d;let h=bp({lastMessage:u?structuredClone(u):void 0,messageId:e!=null?e:""}),y=async(C)=>{await C({state:h,write:()=>{}})},v=!1,_=async()=>{if(v||!f)return;v=!0;let C=h.message.id===(u==null?void 0:u.id);await f({isAborted:c,isContinuation:C,responseMessage:h.message,messages:[...C?t.slice(0,-1):t,h.message],finishReason:h.finishReason})},j=async()=>{if(!p)return;let C=h.message.id===(u==null?void 0:u.id);try{await p({isContinuation:C,responseMessage:structuredClone(h.message),messages:[...C?t.slice(0,-1):t,structuredClone(h.message)]})}catch(Z){s(Z)}};return wp({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 Iw(e,{tools:t,sendReasoning:r=!0,sendSources:o=!1,sendStart:n=!0,sendFinish:a=!0,onError:s=()=>"An error occurred.",messageMetadata:i,responseMessageId:u}={}){let c=(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(!o)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=c(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=c(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=c(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=c(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(!n)return;return{type:"start",...i!=null?{messageMetadata:i}:{},...u!=null?{messageId:u}:{}}}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 xp({stream:e,tools:t,sendReasoning:r=!0,sendSources:o=!1,sendStart:n=!0,sendFinish:a=!0,onError:s=()=>"An error occurred.",messageMetadata:i,originalMessages:u,generateMessageId:c,onEnd:d,onFinish:p}){let f=c!=null?_w({originalMessages:u,responseMessageId:c}):void 0,h=e.pipeThrough(new TransformStream({transform:async(y,v)=>{let _=i==null?void 0:i({part:y}),j=Iw(y,{tools:t,sendReasoning:r,sendSources:o,sendStart:n,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 Tw({stream:h,messageId:f!=null?f:c==null?void 0:c(),originalMessages:u,onEnd:d!=null?d:p,onError:s})}function Ew(e){return kw(e.pipeThrough(new TransformStream))}function kw(e){return e[Symbol.asyncIterator]=function(){let t=this.getReader(),r=!1;async function o(n){var a;if(r)return;r=!0;try{if(n)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 n;try{n=await t.read()}catch(i){throw await o(!1),i}let{done:a,value:s}=n;if(a)return await o(!0),{done:!0,value:void 0};return{done:!1,value:s}},async return(){return await o(!0),{done:!0,value:void 0}},async throw(n){throw await o(!0),n}}},e}async function $w({stream:e,onError:t,abortSignal:r}){let o=e.getReader(),n=()=>{o.cancel().catch(()=>{})};if(r==null?void 0:r.aborted)n();else r==null||r.addEventListener("abort",n,{once:!0});try{while(!0){let{done:a}=await o.read();if(a)break}}catch(a){t==null||t(a)}finally{r==null||r.removeEventListener("abort",n),o.releaseLock()}}var n0=J({prefix:"aitxt",size:24}),a0=J({prefix:"call",size:24});var s0=J({prefix:"aitxt",size:24}),i0=J({prefix:"call",size:24});function _p({message:e,stream:t,onError:r,terminateOnError:o=!1}){var n;let a,s=!1,i=new ReadableStream({start(d){a=d}}),u=bp({messageId:(n=e==null?void 0:e.id)!=null?n:"",lastMessage:e}),c=(d)=>{if(r==null||r(d),!s&&o)s=!0,a==null||a.error(d)};return $w({stream:wp({stream:t,runUpdateMessageJob(d){return d({state:u,write:()=>{a==null||a.enqueue(structuredClone(u.message))}})},onError:c}),onError:c}).finally(()=>{if(!s)a==null||a.close()}),Ew(i)}async function co(e,t){let r=[];if(t==null?void 0:t.ignoreIncompleteToolCalls)e=e.map((o)=>({...o,parts:o.parts.filter((n)=>!ie(n)||n.state==="approval-responded"||n.state==="output-available"||n.state==="output-error"||n.state==="output-denied")}));for(let o of e)switch(o.role){case"system":{let n=o.parts.filter((s)=>s.type==="text"),a=n.reduce((s,i)=>{if(i.providerMetadata!=null)return{...s,...i.providerMetadata};return s},{});r.push({role:"system",content:n.map((s)=>s.text).join(""),...Object.keys(a).length>0?{providerOptions:a}:{}});break}case"user":{r.push({role:"user",content:o.parts.map((n)=>{var a;if(na(n))return{type:"text",text:n.text,...n.providerMetadata!=null?{providerOptions:n.providerMetadata}:{}};if(aa(n))return{type:"file",mediaType:n.mediaType,filename:n.filename,data:n.providerReference!=null?{type:"reference",reference:n.providerReference}:{type:"url",url:new URL(n.url)},...n.providerMetadata!=null?{providerOptions:n.providerMetadata}:{}};if(oa(n))return(a=t==null?void 0:t.convertDataPart)==null?void 0:a.call(t,n)}).filter(qd)});break}case"assistant":{if(o.parts!=null){let n=[];async function a(){var s,i,u,c,d,p,f;if(n.length===0)return;let h=[];for(let v of n)if(na(v))h.push({type:"text",text:v.text,...v.providerMetadata!=null?{providerOptions:v.providerMetadata}:{}});else if(ep(v))h.push({type:"custom",kind:v.kind,...v.providerMetadata!=null?{providerOptions:v.providerMetadata}:{}});else if(aa(v))h.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(tp(v))h.push({type:"reasoning-file",data:{type:"url",url:new URL(v.url)},mediaType:v.mediaType,providerOptions:v.providerMetadata});else if(rp(v))h.push({type:"reasoning",text:v.text,providerOptions:v.providerMetadata});else if(ie(v)){let _=He(v);if(v.state!=="input-streaming"){if(h.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)h.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;h.push({type:"tool-result",toolCallId:v.toolCallId,toolName:_,output:await Yd({toolCallId:v.toolCallId,input:v.input,output:v.state==="output-error"?v.errorText:v.output,tool:Qd(t==null?void 0:t.tools,_),errorMode:v.state==="output-error"?"json":"none"}),...j!=null?{providerOptions:j}:{}})}}}else if(oa(v)){let _=(u=t==null?void 0:t.convertDataPart)==null?void 0:u.call(t,v);if(_!=null)h.push(_)}else throw Error(`Unsupported part: ${v}`);if(h.length>0)r.push({role:"assistant",content:h});let y=n.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(((c=_.approval)==null?void 0:c.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:He(_),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:He(_),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=He(_);v.push({type:"tool-result",toolCallId:_.toolCallId,toolName:j,output:await Yd({toolCallId:_.toolCallId,input:_.input,output:_.state==="output-error"?_.errorText:_.output,tool:Qd(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})}n=[]}for(let s of o.parts)if(ep(s)||na(s)||rp(s)||tp(s)||aa(s)||ie(s)||oa(s))n.push(s);else if(s.type==="step-start")await a();await a();break}break}default:{let n=o.role;throw new Kb({originalMessage:o,message:`Unsupported role: ${n}`})}}return r}var se=l.record(l.string(),ft.optional()),Mw=l.record(l.string(),l.string()),u0=io(()=>zt(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"),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:Mw.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 p0=J({prefix:"call",size:24});var m0=J({prefix:"call",size:24});var g0=J({prefix:"aiobj",size:24});function Sp(e){return({url:t,abortSignal:r})=>tw({url:t,maxBytes:e==null?void 0:e.maxBytes,abortSignal:r})}var y0=J({prefix:"aiobj",size:24});var b0=Sp();var Rw="AI_NoSuchProviderError",Aw=`vercel.ai.error.${Rw}`,Cw=Symbol.for(Aw),Ow;Ow=Cw;var x0=J({prefix:"call",size:24});var _0=Sp();var jp=(e)=>{throw TypeError(e)},va=(e,t,r)=>t.has(e)||jp("Cannot "+r),x=(e,t,r)=>(va(e,t,"read from private field"),r?r.call(e):t.get(e)),z=(e,t,r)=>t.has(e)?jp("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),T=(e,t,r,o)=>(va(e,t,"write to private field"),o?o.call(e,r):t.set(e,r),r),w=(e,t,r)=>(va(e,t,"access private method"),r),Dp=String.fromCharCode(27),$0=new RegExp(`${Dp}\\[[0-?]*[ -/]*[@-~]`,"g"),da=new RegExp(`^${Dp}\\[[0-?]*[ -/]*[@-~]`);function Xe(e){let t=0,r=0;while(r<e.length){let o=e.slice(r).match(da);if(o){r+=o[0].length;continue}let n=e.codePointAt(r);if(n==null)break;let a=String.fromCodePoint(n);t+=Up(n),r+=a.length}return t}function Zt(e,t){if(t<=0)return"";let r="",o=0,n=0;while(n<e.length&&o<t){let a=e.slice(n).match(da);if(a){r+=a[0],n+=a[0].length;continue}let s=e.codePointAt(n);if(s==null)break;let i=String.fromCodePoint(s),u=Up(s);if(u>0&&o+u>t)break;r+=i,n+=i.length,o+=u}while(n<e.length){let a=e.slice(n).match(da);if(!a)break;r+=a[0],n+=a[0].length}return r}function Up(e){if(e===9)return 4;if(e<32||e>=127&&e<160)return 0;if(Pw(e))return 0;return Nw(e)?2:1}function Pw(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 Nw(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"},zw="─";function jw(e){var t;let r=e.split(`
|
|
139
|
-
`),
|
|
140
|
-
`)}function
|
|
141
|
-
`)}function
|
|
142
|
-
`)}}function Xw(e,t){let r="",o=Math.max(e.lines.length,t.lines.length);for(let n=0;n<o;n++){let a=t.lines[n];if(e.lines[n]===a)continue;r+=`${qt}[${n+1};1H${Jw}${a!=null?a:""}`}return r}var Qw="outputTokensPerSecond",me={reset:"\x1B[0m",dim:"\x1B[2m",user:"\x1B[96m",assistant:"\x1B[92m",reasoning:"\x1B[94m",tool:"\x1B[95m",error:"\x1B[91m"},ex={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:"─"}},tx=500,ht="↑/↓ · PgUp/PgDn · Esc/Ctrl+C",rx="↑/↓ · PgUp/PgDn · q/Esc/Ctrl+C",_r=`Processing input... ${ht}`,$p=`Processing tool results... ${ht}`,fa=`Streaming... ${ht}`,Mp=`Executing tools... ${ht}`,be,Ae,bt,uo,po,fo,yo,he,Re,mt,Qe,Er,le,Lt,fe,et,kr,tt,gt,wt,vt,Te,yt,Sr,b,mo,ho,Tr,De,Fp,Ft,$r,Bp,Mr,bo,qp,ya,ma,go,Wp,Vp,ba,xo,ee,Bt,Jp,wa,xt,_o,So,xa,Gp,ha=class{constructor(e){z(this,b),z(this,be),z(this,Ae),z(this,bt),z(this,uo),z(this,po),z(this,fo),z(this,yo),z(this,he,[]),z(this,Re,""),z(this,mt,!1),z(this,Qe,0),z(this,Er,""),z(this,le,fa),z(this,Lt,!1),z(this,fe,!1),z(this,et),z(this,kr),z(this,tt),z(this,gt),z(this,wt,!0),z(this,vt),z(this,Te),z(this,yt),z(this,Sr);var t,r,o,n,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,bt,(o=e==null?void 0:e.frameBuffer)!=null?o:new Hw(x(this,Ae))),T(this,uo,(n=e==null?void 0:e.tools)!=null?n:"auto-collapsed"),T(this,po,(a=e==null?void 0:e.reasoning)!=null?a:"auto-collapsed"),T(this,fo,(s=e==null?void 0:e.responseStatistics)!=null?s:Qw),T(this,yo,e==null?void 0:e.contextSize),T(this,kr,e==null?void 0:e.contextSize)}async readPrompt(e){var t;return w(this,b,mo).call(this,e),T(this,mt,!0),T(this,Re,(t=e==null?void 0:e.initialPrompt)!=null?t:""),T(this,le,`Type a prompt and press Enter · ${ht}`),w(this,b,Bp).call(this),w(this,b,ee).call(this),await new Promise((r,o)=>{T(this,Te,(n)=>{let a=wo(n);switch(a.type){case"character":T(this,Re,x(this,Re)+a.value),w(this,b,bo).call(this),w(this,b,ee).call(this);break;case"backspace":T(this,Re,x(this,Re).slice(0,-1)),w(this,b,bo).call(this),w(this,b,ee).call(this);break;case"enter":{let s=x(this,Re);T(this,mt,!1),w(this,b,Mr).call(this),T(this,le,_r),w(this,b,ya).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,Ft).call(this,a.type);break;case"page-up":case"page-down":w(this,b,$r).call(this,a.type);break;case"ctrl-l":w(this,b,Bt).call(this);break;case"escape":case"ctrl-c":w(this,b,Mr).call(this),w(this,b,ho).call(this),o(ua());break;case"ignore":break}}),w(this,b,Tr).call(this)})}async renderStream(e,t){var r,o,n,a;w(this,b,mo).call(this,t),T(this,mt,!1),T(this,le,_r),w(this,b,qp).call(this,t==null?void 0:t.submittedPrompt),T(this,fe,!1),T(this,et,void 0),T(this,tt,void 0),T(this,gt,void 0);let s={tools:(r=t==null?void 0:t.tools)!=null?r:x(this,uo),reasoning:(o=t==null?void 0:t.reasoning)!=null?o:x(this,po),responseStatistics:(n=t==null?void 0:t.responseStatistics)!=null?n:x(this,fo)};w(this,b,ee).call(this);let i=new Promise((d)=>{T(this,Sr,d)});T(this,Te,(d)=>w(this,b,Fp).call(this,d)),w(this,b,Tr).call(this);let u,c=fx(w(this,b,Vp).call(this,e.uiMessageStream));try{let d=_p({message:e.message,stream:c,onError:(p)=>w(this,b,ba).call(this,"Error",nx(p))});for await(let p of ox(d,i)){if(x(this,fe))break;u=p,w(this,b,ma).call(this,p,s)}if(!x(this,fe)&&u&&x(this,tt)!=null)w(this,b,ma).call(this,u,s)}finally{if(T(this,Sr,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 · ${ht}`:`Done · ${rx}`),w(this,b,ee).call(this),await w(this,b,Gp).call(this,t),x(this,fe)||!(t==null?void 0:t.continueSession))w(this,b,ho).call(this)}if(x(this,fe))throw ua();return u}async readToolApproval(e,t){return w(this,b,mo).call(this,t),T(this,mt,!1),T(this,le,`Approve ${dx(e)}? y/n · ${ht}`),T(this,fe,!1),w(this,b,ee).call(this),await new Promise((r,o)=>{T(this,Te,(n)=>{let a=wo(n);switch(a.type){case"character":{let s=a.value.toLowerCase();if(s==="y")T(this,le,`Approved · ${_r}`),w(this,b,De).call(this),w(this,b,ee).call(this),r({approved:!0});else if(s==="n")T(this,le,`Denied · ${_r}`),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,Ft).call(this,a.type);break;case"page-up":case"page-down":w(this,b,$r).call(this,a.type);break;case"ctrl-l":w(this,b,Bt).call(this);break;case"escape":case"ctrl-c":T(this,fe,!0),w(this,b,ho).call(this),o(ua());break;default:break}}),w(this,b,Tr).call(this)})}};be=new WeakMap;Ae=new WeakMap;bt=new WeakMap;uo=new WeakMap;po=new WeakMap;fo=new WeakMap;yo=new WeakMap;he=new WeakMap;Re=new WeakMap;mt=new WeakMap;Qe=new WeakMap;Er=new WeakMap;le=new WeakMap;Lt=new WeakMap;fe=new WeakMap;et=new WeakMap;kr=new WeakMap;tt=new WeakMap;gt=new WeakMap;wt=new WeakMap;vt=new WeakMap;Te=new WeakMap;yt=new WeakMap;Sr=new WeakMap;b=new WeakSet;mo=function(e){var t,r,o,n;if(T(this,Er,(t=e==null?void 0:e.title)!=null?t:x(this,Er)),T(this,kr,(r=e==null?void 0:e.contextSize)!=null?r:x(this,yo)),x(this,Lt))return;if(T(this,Lt,!0),x(this,bt).reset(),x(this,Ae).write("\x1B[?1049h\x1B[?25l"),x(this,be).isTTY)(n=(o=x(this,be)).setRawMode)==null||n.call(o,!0),x(this,be).resume();T(this,yt,()=>w(this,b,Bt).call(this)),x(this,Ae).on("resize",x(this,yt))};ho=function(){var e,t;if(w(this,b,De).call(this),w(this,b,Mr).call(this),!x(this,Lt))return;if(x(this,be).isTTY)(t=(e=x(this,be)).setRawMode)==null||t.call(e,!1),x(this,be).pause();if(x(this,yt))x(this,Ae).off("resize",x(this,yt)),T(this,yt,void 0);x(this,Ae).write("\x1B[?25h\x1B[?1049l"),x(this,bt).reset(),T(this,Lt,!1)};Tr=function(){if(x(this,Te))x(this,be).on("data",x(this,Te))};De=function(){if(x(this,Te))x(this,be).off("data",x(this,Te)),T(this,Te,void 0)};Fp=function(e){var t;let r=wo(e);switch(r.type){case"up":case"down":w(this,b,Ft).call(this,r.type);break;case"page-up":case"page-down":w(this,b,$r).call(this,r.type);break;case"ctrl-l":w(this,b,Bt).call(this);break;case"escape":case"ctrl-c":T(this,fe,!0),(t=x(this,Sr))==null||t.call(this);break;default:break}};Ft=function(e,t=1){let r=e==="up"?t:-t;T(this,Qe,w(this,b,wa).call(this,x(this,Qe)+r)),w(this,b,ee).call(this)};$r=function(e){w(this,b,Ft).call(this,e==="page-up"?"up":"down",w(this,b,_o).call(this))};Bp=function(){var e,t;w(this,b,Mr).call(this),w(this,b,bo).call(this),T(this,vt,setInterval(()=>{T(this,wt,!x(this,wt)),w(this,b,ee).call(this)},tx)),(t=(e=x(this,vt)).unref)==null||t.call(e)};Mr=function(){if(x(this,vt))clearInterval(x(this,vt)),T(this,vt,void 0);T(this,wt,!0)};bo=function(){T(this,wt,!0)};qp=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,ya).call(this,e)};ya=function(e){let t=w(this,b,xt).call(this);x(this,he).push({kind:"user",title:"User",content:e}),w(this,b,xo).call(this,t)};ma=function(e,t){var r,o,n;let a=w(this,b,xt).call(this),s=new Set,i=wx(e.metadata);T(this,et,(r=i.totalTokens)!=null?r:x(this,et)),T(this,tt,(o=i.outputTokens)!=null?o:x(this,tt)),T(this,gt,(n=i.outputTokensPerSecond)!=null?n:x(this,gt));for(let[u,c]of e.parts.entries()){let d=px(e.id,u);switch(c.type){case"text":{let p=c.text.trim();if(p.length===0)break;s.add(d),w(this,b,go).call(this,{id:d,kind:"assistant",title:"Assistant",rightTitle:Sx({totalTokens:x(this,et),outputTokens:x(this,tt),outputTokensPerSecond:x(this,gt)},t.responseStatistics),content:p});break}case"reasoning":{let p=c.text.trim();if(t.reasoning==="hidden"||p.length===0)break;s.add(d),w(this,b,go).call(this,{id:d,kind:"reasoning",title:"Reasoning",content:p,collapsed:Rp(e,u,t.reasoning,t)});break}default:if(ie(c)){if(t.tools==="hidden")break;s.add(d),w(this,b,go).call(this,{id:d,...ax(c,{mode:t.tools,collapsed:Rp(e,u,t.tools,t)})})}break}}w(this,b,Wp).call(this,e.id,s),w(this,b,xo).call(this,a)};go=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&&Hp(e,r)?r:void 0;return}x(this,he).push(e)};Wp=function(e,t){let r=`${e}:`;T(this,he,x(this,he).filter((o)=>o.id==null||!o.id.startsWith(r)||t.has(o.id)))};Vp=async function*(e){let t=!1;for await(let r of mx(e)){let o=lx(r,{hasPendingToolResults:t});if(r.type==="start-step")t=!1;else if(cx(r))t=!0;if(o&&x(this,le)!==o)T(this,le,o),w(this,b,ee).call(this);else if(ix(r)&&x(this,le)!==fa)T(this,le,fa),w(this,b,ee).call(this);if(r.type==="error")w(this,b,ba).call(this,"Error",r.errorText);if(r.type==="finish"){let n=bx(r);T(this,et,n.totalTokens),T(this,tt,n.outputTokens),T(this,gt,n.outputTokensPerSecond)}yield r}};ba=function(e,t){let r=w(this,b,xt).call(this);x(this,he).push({kind:"error",title:e,content:t}),w(this,b,xo).call(this,r)};xo=function(e){if(x(this,Qe)!==0){let t=w(this,b,xt).call(this)-e;T(this,Qe,w(this,b,wa).call(this,x(this,Qe)+t))}w(this,b,ee).call(this)};ee=function(){let e=qw({width:w(this,b,So).call(this),height:w(this,b,xa).call(this),title:x(this,Er),rightTitle:Xp(x(this,et),x(this,kr)),visibleBodyLines:w(this,b,Jp).call(this),input:x(this,Re),inputActive:x(this,mt),inputCursorVisible:x(this,wt),status:x(this,le)});x(this,bt).present(e)};Bt=function(){x(this,bt).reset(),w(this,b,ee).call(this)};Jp=function(){if(x(this,he).length===0)return["Waiting for input..."];let e=w(this,b,_o).call(this),t=w(this,b,xt).call(this),r=Math.max(0,t-e-x(this,Qe)),o=r+e,n=[],a=0;for(let s of x(this,he)){let i=Kp(s,w(this,b,So).call(this)-4),u=a+i.length;if(u>r&&a<o)n.push(...i.slice(Math.max(0,r-a),o-a));if(n.length>=e)break;a=u}return n};wa=function(e){let t=Math.max(0,w(this,b,xt).call(this)-w(this,b,_o).call(this));return Math.min(Math.max(0,e),t)};xt=function(){if(x(this,he).length===0)return 1;let e=0;for(let t of x(this,he))e+=Kp(t,w(this,b,So).call(this)-4).length;return e};_o=function(){return Math.max(1,w(this,b,xa).call(this)-5)};So=function(){var e;return Math.max(20,(e=x(this,Ae).columns)!=null?e:80)};xa=function(){var e;return Math.max(8,(e=x(this,Ae).rows)!=null?e:24)};Gp=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,Te,(r)=>{let o=wo(r);switch(o.type){case"up":case"down":w(this,b,Ft).call(this,o.type);break;case"page-up":case"page-down":w(this,b,$r).call(this,o.type);break;case"ctrl-l":w(this,b,Bt).call(this);break;case"escape":w(this,b,De).call(this),t();break;case"character":if(o.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,Tr).call(this)})};function ua(){return Error("Interrupted")}async function*ox(e,t){let r=e[Symbol.asyncIterator](),o=t.then(()=>({done:!0,value:void 0}));while(!0){let n=await Promise.race([r.next(),o]);if(n.done)break;yield n.value}}function nx(e){if(e instanceof Error)return e.message;if(typeof e==="string")return e;return JSON.stringify(e)}function ax(e,t){var r,o,n,a;let s=He(e),i=`Tool · ${(r=e.title)!=null?r:s}`,u="input"in e?e.input:void 0,c=u===void 0?"Input: (streaming...)":`Input:
|
|
143
|
-
${
|
|
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=ux(r,o);if(a!=null){n.push(...fx(a)),o=a.endIndex-1;continue}n.push(cx((t=r[o])!=null?t:""))}return n.join(`
|
|
140
|
+
`)}function cx(e){if(e.startsWith("### "))return je(`▶ ${e.slice(4)}`);if(e.startsWith("## "))return je(`■ ${e.slice(3)}`);if(e.startsWith("# "))return je(`█ ${e.slice(2)}`);let t=e.match(/^(\s*)[-+*]\s+(.*)$/);if(t){let[,r,n=""]=t;return je(`${r}•${n.length>0?` ${n}`:""}`)}if(/^\d+\. /.test(e))return je(e.replace(/^(\d+)\. /,"$1. "));if(e.startsWith("> "))return je(`│ ${e.slice(2)}`);return je(e)}function je(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 ux(e,t){var r,n,o;let a=pa((r=e[t])!=null?r:"");if(a==null||a.length<2)return;let s=pa((n=e[t+1])!=null?n:"");if(s==null||s.length!==a.length)return;let i=dx(s);if(i==null)return;let c=[],u=t+2;while(u<e.length){let d=pa((o=e[u])!=null?o:"");if(d==null)break;c.push(px(d,a.length)),u+=1}return{alignments:i,endIndex:u,header:a,rows:c}}function pa(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 dx(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 px(e,t){return Array.from({length:t},(r,n)=>{var o;return(o=e[n])!=null?o:""})}function fx(e){let t=e.header.map((a)=>`${Me.bold}${je(a)}${Me.boldOff}`),r=e.rows.map((a)=>a.map(je)),n=[t,...r],o=e.alignments.map((a,s)=>Math.max(3,...n.map((i)=>{var c;return et((c=i[s])!=null?c:"")})));return[Dp(t,o,e.alignments),o.map((a)=>ix.repeat(a)).join(" "),...r.map((a)=>Dp(a,o,e.alignments))]}function Dp(e,t,r){return e.map((n,o)=>{var a,s;return mx(n,(a=t[o])!=null?a:0,(s=r[o])!=null?s:"left")}).join(" ")}function mx(e,t,r){let n=Math.max(0,t-et(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 ef="─";function hx(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[Up(r,e.title,e.rightTitle),...i.map((u)=>Lp(u,r)),Zp(r),Up(r,e.inputActive?"Input":"Status"),Lp(e.inputActive?`> ${e.input}${e.inputCursorVisible===!1?" ":"█"}`:(t=e.status)!=null?t:"Streaming... ↑/↓ scroll · Ctrl+C quit",r),Zp(r)].join(`
|
|
141
|
+
`)}function Up(e,t,r){let n=Math.max(0,e-2),o=t?Bt(` ${t} `,n):"",a=r?Bt(` ${r} `,Math.max(0,n-et(o))):"",s=Math.max(0,n-et(o)-et(a));return`┌${o}${ef.repeat(s)}${a}┐`}function Zp(e){return`└${ef.repeat(e-2)}┘`}function Lp(e,t){let r=t-4,n=Bt(e,r),o=" ".repeat(Math.max(0,r-et(n)));return`│ ${n}${o} │`}var Gt="\x1B",gx=`${Gt}[H`,vx=`${Gt}[2J`,yx=`${Gt}[2K`,bx=`${Gt}[?2026h`,wx=`${Gt}[?2026l`,bn,Ft,Lt,kr,Sr,ha,tf,xx=class{constructor(e,t){z(this,ha),z(this,bn),z(this,Ft),z(this,Lt),z(this,kr,!1),z(this,Sr,!1);var r;T(this,Ft,e.write.bind(e)),T(this,bn,(r=t==null?void 0:t.useSynchronizedUpdates)!=null?r:!0),e.write=(n,o,a)=>{if(!x(this,kr))T(this,Sr,!0);return x(this,Ft).call(this,n,o,a)}}present(e){let t=_x(e),r=x(this,Lt)&&!x(this,Sr)?Sx(x(this,Lt),t):`${gx}${vx}${e}`;if(T(this,Lt,t),T(this,Sr,!1),r.length===0)return;w(this,ha,tf).call(this,r)}reset(){T(this,Lt,void 0)}};bn=new WeakMap;Ft=new WeakMap;Lt=new WeakMap;kr=new WeakMap;Sr=new WeakMap;ha=new WeakSet;tf=function(e){T(this,kr,!0);try{if(!x(this,bn)){x(this,Ft).call(this,e);return}x(this,Ft).call(this,`${bx}${e}${wx}`)}finally{T(this,kr,!1)}};function _x(e){return{lines:e.split(`
|
|
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
|
+
${Wp(c)}`,d=Nx(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
|
+
${Wp(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
|
-
${e.errorText}`};case"output-denied":return{kind:"error",title:`Tool Denied · ${(
|
|
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
|
|
151
|
+
Reason: ${(a=e.approval.reason)!=null?a:"denied"}`}}}function qp(e,t,r,n){switch(r){case"collapsed":return!0;case"auto-collapsed":return e.parts.slice(t+1).some((o)=>Ax(o,n));case"full":case"hidden":return!1}}function Ax(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 ie(e)&&t.tools!=="hidden"}}function Cx(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 Ox(e,{hasPendingToolResults:t}){switch(e.type){case"start-step":return t?Fp:Tr;case"tool-output-available":case"tool-output-error":case"tool-output-denied":return Fp;case"tool-input-available":return Bp;case"tool-approval-response":return e.approved?Bp:void 0;default:return}}function Px(e){switch(e.type){case"tool-output-available":case"tool-output-error":case"tool-output-denied":return!0;default:return!1}}function Nx(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 Wp(e){if(typeof e==="string")return e;return JSON.stringify(e,null,2)}function zx(e){var t;return`tool ${(t=e.title)!=null?t:e.toolName}`}function jx(e,t){return`${e}:${t}`}function Dx(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*Ux(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 uf(e,t){if(e.cache&&df(e,e.cache,t))return e.cache.lines;let r=Zx(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 df(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 Zx(e,t){let r=Ix[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?lx(e.content):me.dim+"(streaming...)"+me.reset).split(`
|
|
152
|
+
`).flatMap((p)=>Fx(p,n));return[i,...d.map((p)=>Lx(p,n,r.color)),c]}function Lx(e,t,r){let n=Bt(e,t),o=" ".repeat(Math.max(0,t-et(n)));return`${r}│${me.reset} ${n}${o} ${r}│${me.reset}`}function Fx(e,t){if(e.length===0)return[""];let r=[],n=e;while(et(n)>t){let o=Bx(n,t);r.push(n.slice(0,o).trimEnd()),n=n.slice(o).trimStart()}return r.push(n),r}function Bx(e,t){let n=Bt(e,t+1).lastIndexOf(" ");if(n>0)return n;return Bt(e,t).length}function qx(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:pf(n!=null?n:o),outputTokens:Ia(n!=null?n:o),outputTokensPerSecond:a==null?void 0:a.outputTokensPerSecond}}function Wx(e){var t;let r=e;return{totalTokens:pf(r==null?void 0:r.usage),outputTokens:Ia(r==null?void 0:r.usage),outputTokensPerSecond:(t=r==null?void 0:r.performance)==null?void 0:t.outputTokensPerSecond}}function pf(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=Vx(e),n=Ia(e);if(r!=null&&n!=null)return r+n;return}function Vx(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 Ia(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 ff(e,t){if(e==null)return;let r=`${e.toLocaleString()} ${e===1?"token":"tokens"}`,n=Gx(e,t);return n==null?r:`${r} ${n}`}function Gx(e,t){if(t==null||t<=0||!Number.isFinite(t))return;return`${Math.round(e/t*100).toLocaleString()}%`}function Jx(e,t){if(t==="outputTokensPerSecond")return Kx(e.outputTokensPerSecond);return ff(e.outputTokens)}function Kx(e){if(e==null)return;return`${Hx(e)} tok/s`}function Hx(e){return Number.isInteger(e)?e.toLocaleString():e.toLocaleString(void 0,{maximumFractionDigits:1})}function _n(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 Yx="outputTokensPerSecond",Xx=class{constructor(e){this.chatId=jt();var t,r,n,o;this.agent=e.agent,this.transport=e.transport,this.renderer=(t=e_(e))!=null?t:Qx(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:Yx,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(Hp(c))return;throw c}if(o==null)return}t.push(n_(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=o_(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});a_(c,d,p)}Gp(t,c,s),s=!0,o=void 0;continue}Gp(t,c,s)}}catch(c){if(Hp(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:ba(e),abort:n};let o=this.agent,a=await o.stream({prompt:await pn(e,{tools:o.tools}),abortSignal:r.signal,options:void 0,experimental_sandbox:this.sandbox});return{uiMessageStream:t_(a.fullStream,t,e),message:ba(e),abort:n}}};function Qx(e){return e.tools===void 0&&e.reasoning===void 0&&e.responseStatistics===void 0&&e.contextSize===void 0?new ya:new ya({tools:e.tools,reasoning:e.reasoning,responseStatistics:e.responseStatistics,contextSize:e.contextSize})}function e_(e){if(e.renderer)return e.renderer;if(!e.screen&&!e.userInput)return;return new ya({tools:e.tools,reasoning:e.reasoning,responseStatistics:e.responseStatistics,contextSize:e.contextSize,input:e.userInput,output:e.screen})}async function*t_(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=ba(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:Jp(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:Kp(p.file.mediaType,p.file.base64),mediaType:p.file.mediaType,providerMetadata:p.providerMetadata};break;case"reasoning-file":yield{type:"reasoning-file",url:Kp(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*Vp(a,s),d=!0,yield{type:"finish",finishReason:p.finishReason,messageMetadata:r_(c!=null?c:p.totalUsage,u)};break;case"abort":yield{type:"abort",reason:p.reason};break;case"error":yield{type:"error",errorText:Jp(p.error)};break}if(!d)yield*Vp(a,s),yield{type:"finish"}}function r_(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*Vp(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 n_(e,t){return{id:e,role:"user",parts:[{type:"text",text:t}]}}function Gp(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 ba(e){let t=e.at(-1);return(t==null?void 0:t.role)==="assistant"?t:void 0}function o_(e){let t=[];for(let[r,n]of e.parts.entries()){if(!ie(n)||n.state!=="approval-requested"||n.approval.isAutomatic===!0)continue;t.push({approvalId:n.approval.id,toolCallId:n.toolCallId,toolName:Xe(n),title:n.title,input:n.input,providerExecuted:n.providerExecuted,messageId:e.id,partIndex:r})}return t}function a_(e,t,r){let n=e.parts[t.partIndex];if(!n||!ie(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 Jp(e){if(e instanceof Error)return e.message;if(typeof e==="string")return e;return JSON.stringify(e)}function Kp(e,t){return`data:${e};base64,${t}`}function Hp(e){return e instanceof Error&&e.message==="Interrupted"}async function mf(e){await new Xx(e).run()}async function hf(e){if(e.prompt!==void 0)s_(e.prompt);await mf({title:`broods · ${e.agent.name}`,tools:"full",transport:new vf(e.client,e.agent)})}async function gf(e){let t=Ap({stream:yf(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 s_(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 vf{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 pn(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 Np({stream:yf(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 yf(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(),i_(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 i_(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 bf}from"node:fs";import{mkdir as l_,readFile as c_,writeFile as u_}from"node:fs/promises";import{dirname as _f,join as Ea,resolve as d_,sep as ot}from"node:path";import{fileURLToPath as p_}from"node:url";var ka=Ea(_f(En),"update-check.json"),f_=86400000,m_="https://registry.npmjs.org/broods/latest",h_=2000;function $a(e,t){let r=xf(e),n=xf(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!wf(e)&&wf(t)}async function Ma(e={}){let t=await y_(),r=e.maxAgeMs??f_;if(t&&Date.now()-t.checkedAt<r)return t.latest;let n=await g_();if(n===null)return t?.latest??null;return await b_({checkedAt:Date.now(),latest:n}),n}function Sf(e=d_(process.cwd()),t=p_(import.meta.url)){let r=`${ot}node_modules${ot}`,n=t.lastIndexOf(r),o=n===-1?null:t.slice(0,n),a=o===null?t.startsWith(`${e}${ot}`):e===o||e.startsWith(`${o}${ot}`),i=t.includes(`${ot}.bun${ot}install${ot}global${ot}`)||a&&v_(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 g_(){try{let e=await fetch(m_,{signal:AbortSignal.timeout(h_),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 v_(e){return bf(Ea(e,"bun.lock"))||bf(Ea(e,"bun.lockb"))}function wf(e){return e.includes("-")}async function y_(){try{let e=JSON.parse(await c_(ka,"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 xf(e){let[t]=e.trim().replace(/^v/,"").split("-");return(t??"").split(".").slice(0,3).map((r)=>Number.parseInt(r,10)||0)}async function b_(e){try{await l_(_f(ka),{recursive:!0}),await u_(ka,`${JSON.stringify(e)}
|
|
155
|
+
`,"utf8")}catch{}}var Tf={name:"broods",version:"0.17.4",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 at=Tf.version,it="https://dashboard.broods.app",Jt="eu-west-1",k_=[{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:
|
|
155
156
|
--project <name> Project name override (default: package name or folder)
|
|
156
157
|
--stage <name> Target stage override (BROODS_STAGE otherwise)
|
|
157
158
|
--base-url <url> broods API base URL for sync/env calls (default: discovered at login)
|
|
158
|
-
--dashboard-url <url> Dashboard base URL for login and deep links (default: ${
|
|
159
|
-
-h, --help Show this help`,
|
|
159
|
+
--dashboard-url <url> Dashboard base URL for login and deep links (default: ${it})
|
|
160
|
+
-h, --help Show this help`,Ra=`broods v${at}
|
|
160
161
|
|
|
161
162
|
Usage: broods <command> [subcommand] [options]
|
|
162
163
|
|
|
@@ -168,7 +169,7 @@ Project:
|
|
|
168
169
|
|
|
169
170
|
Account:
|
|
170
171
|
login Authenticate through the dashboard
|
|
171
|
-
|
|
172
|
+
whoami Show the login, server, org, plan, project and stage in use
|
|
172
173
|
org List, switch or create organizations
|
|
173
174
|
stage List, switch or create stages
|
|
174
175
|
env Store, reveal, list or remove encrypted environment variables
|
|
@@ -179,11 +180,14 @@ Runtime:
|
|
|
179
180
|
logs Backfill recent logs then live-tail
|
|
180
181
|
stream Stream live logs for the whole project/stage (Ctrl+C to stop)
|
|
181
182
|
|
|
183
|
+
CLI:
|
|
184
|
+
update Install the newest broods release over this one
|
|
185
|
+
|
|
182
186
|
Options:
|
|
183
187
|
-h, --help Show help for a command (e.g. \`broods org --help\`)
|
|
184
188
|
-v, --version Print the CLI version
|
|
185
189
|
|
|
186
|
-
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.`,zf={agent:`Usage: broods agent <list|get> [name]
|
|
187
191
|
|
|
188
192
|
Subcommands:
|
|
189
193
|
list List the agents in the current project/stage scope
|
|
@@ -197,7 +201,7 @@ BROODS_STAGE by design — pass --stage to deploy anywhere else.
|
|
|
197
201
|
Options:
|
|
198
202
|
--prune Allow deploy to delete undeclared remote resources
|
|
199
203
|
--rotate-key Mint a fresh runtime API key and write it to .env.local
|
|
200
|
-
--region <region> Broods service region preference (default: ${
|
|
204
|
+
--region <region> Broods service region preference (default: ${Jt})
|
|
201
205
|
|
|
202
206
|
${ge}`,dev:`Usage: broods dev [--once] [options]
|
|
203
207
|
|
|
@@ -207,8 +211,8 @@ env("NAME") values from .env.local.
|
|
|
207
211
|
|
|
208
212
|
Options:
|
|
209
213
|
--once Sync a single time and exit (no watch, no log stream)
|
|
210
|
-
--level <lvl> Minimum level for the log tail INFO|WARN|ERROR (default:
|
|
211
|
-
--
|
|
214
|
+
--level <lvl> Minimum level for the log tail DEBUG|INFO|WARN|ERROR (default: WARN)
|
|
215
|
+
--all Tail INFO and up (DEBUG is dashboard-only)
|
|
212
216
|
|
|
213
217
|
${ge}`,diff:`Usage: broods diff [options]
|
|
214
218
|
|
|
@@ -227,7 +231,7 @@ ${ge}`,init:`Usage: broods init [options]
|
|
|
227
231
|
Creates the broods/ project shell and .env.local defaults.
|
|
228
232
|
|
|
229
233
|
Options:
|
|
230
|
-
--region <region> Broods service region preference (default: ${
|
|
234
|
+
--region <region> Broods service region preference (default: ${Jt})
|
|
231
235
|
--force Overwrite existing starter files
|
|
232
236
|
|
|
233
237
|
${ge}`,login:`Usage: broods login [options]
|
|
@@ -236,16 +240,16 @@ Authenticates through the dashboard and stores the token in
|
|
|
236
240
|
~/.broods/config.json.
|
|
237
241
|
|
|
238
242
|
Options:
|
|
239
|
-
--region <region> Broods service region preference (default: ${
|
|
243
|
+
--region <region> Broods service region preference (default: ${Jt})
|
|
240
244
|
|
|
241
245
|
${ge}`,logs:`Usage: broods logs [options]
|
|
242
246
|
|
|
243
|
-
Backfills recent logs then live-tails.
|
|
247
|
+
Backfills recent logs then live-tails. Warnings and errors, 100 lines by default.
|
|
244
248
|
|
|
245
249
|
Options:
|
|
246
250
|
-n, --limit <n> Backfill line count (default 100)
|
|
247
|
-
--level <lvl> Minimum log level INFO|WARN|ERROR (default:
|
|
248
|
-
--
|
|
251
|
+
--level <lvl> Minimum log level DEBUG|INFO|WARN|ERROR (default: WARN)
|
|
252
|
+
--all Show every level (DEBUG from the backfill only)
|
|
249
253
|
--json Print the backfill as raw JSON
|
|
250
254
|
|
|
251
255
|
${ge}`,org:`Usage: broods org <list|use|create> [name]
|
|
@@ -274,55 +278,59 @@ Options:
|
|
|
274
278
|
--from <stage> Clone the source stage's architecture and env vars
|
|
275
279
|
--use Switch to the stage \`stage create\` just made
|
|
276
280
|
|
|
277
|
-
${ge}`,status:`Usage: broods status [options]
|
|
278
|
-
|
|
279
|
-
Shows the login, server, org, plan, project and stage the next command uses.
|
|
280
|
-
|
|
281
281
|
${ge}`,stream:`Usage: broods stream [options]
|
|
282
282
|
|
|
283
283
|
Streams live logs for the whole project/stage until Ctrl+C. No backfill.
|
|
284
284
|
|
|
285
285
|
Options:
|
|
286
|
-
--level <lvl> Minimum log level INFO|WARN|ERROR (default:
|
|
287
|
-
--
|
|
286
|
+
--level <lvl> Minimum log level DEBUG|INFO|WARN|ERROR (default: WARN)
|
|
287
|
+
--all Stream INFO and up (DEBUG is dashboard-only)
|
|
288
|
+
|
|
289
|
+
${ge}`,update:`Usage: broods update
|
|
290
|
+
|
|
291
|
+
Installs the newest published broods over the copy you are running, with the
|
|
292
|
+
package manager that installed it (bun or npm). Global installs are replaced in
|
|
293
|
+
place; inside a project the dependency is upgraded instead.`,whoami:`Usage: broods whoami [options]
|
|
294
|
+
|
|
295
|
+
Shows the login, server, org, plan, project and stage the next command uses.
|
|
288
296
|
|
|
289
|
-
${ge}`};async function
|
|
297
|
+
${ge}`};async function $_(){let[,,e,...t]=process.argv;switch(e){case void 0:case"--help":case"-h":console.log(Ra);return;case"--version":case"-v":console.log(at);return}cS(e,t);let r=zf[e];if(r&&(we(t,"--help")||we(t,"-h"))){console.log(r);return}switch(e){case"init":await M_(t);return;case"login":await R_(t);return;case"whoami":await C_(t);return;case"org":await O_(t);return;case"stage":await P_(t);return;case"diff":await N_(t);return;case"deploy":await z_(t);return;case"dev":await D_(t);return;case"env":await eS(t);return;case"stream":await rS(t);return;case"logs":await nS(t);return;case"agent":await oS(t);return;case"run":await iS(t);return;case"update":await j_();return;default:throw Error(`Unknown command: ${e}
|
|
290
298
|
|
|
291
|
-
${
|
|
299
|
+
${Ra}`)}}function Ee(e){return zf[e]??Ra}async function M_(e){let t=we(e,"--force"),r=H(process.cwd(),ce);await za(H(r,Ce),{recursive:!0}),await $n(H(r,"index.ts"),Gf(),t),await $n(H(r,".gitignore"),`_generated
|
|
292
300
|
.cache
|
|
293
|
-
`,t);let
|
|
301
|
+
`,t);let n=E(e,"--dashboard-url")??it;await Ja({dashboardUrl:n,baseUrl:Pa(n),project:E(e,"--project")??Ht(process.cwd()),stage:E(e,"--stage")??"development",region:E(e,"--region")??Jt,force:t}),await Ga(),console.log(`Created ${ce}/`)}async function R_(e){let t=te(),r=E(e,"--dashboard-url")??t.dashboardUrl??it,n=await Zn(r),o=E(e,"--project")??process.env.BROODS_PROJECT??Ht(process.cwd()),a=E(e,"--stage")??lt()??"development";await Ja({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 A_(n.baseUrl,n.token,o,a)}async function A_(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 C_(e){let t=te(),r=Ua(e),n=E(e,"--dashboard-url")??t.dashboardUrl??it;console.log(`broods v${at}`),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?Or(i):s.currentOrgId}`),s.account)console.log(`Account: ${s.account.username} (${s.account.status})`);let c=process.env.BROODS_API_KEY,u=Cr("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 O_(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}
|
|
294
302
|
|
|
295
|
-
${
|
|
296
|
-
Only orgs where you are owner or admin can be selected from the CLI.`);return}if(
|
|
303
|
+
${Ee("org")}`);let s=te(),i=E(e,"--dashboard-url")??s.dashboardUrl??it,c=await Da(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.id===d.currentOrgId?"*":" ",y=f.accountStatus==="active"?"":` [${f.accountStatus} account]`;console.log(`${m} ${Or(f)}${y}`)}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 At("Select organization",f,Or);if(!m)throw Error(`No selectable organization matches "${r}". Run \`broods org list\`.`);await kf(u,c,await u.selectOnboardingOrg(m.id),e);return}let p=r??await pt("Organization name",Ht(process.cwd()));if(!p.trim())throw Error("Organization name is required.");await kf(u,c,await u.createOnboardingOrg(p),e)}async function P_(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}
|
|
297
305
|
|
|
298
|
-
${
|
|
306
|
+
${Ee("stage")}`);let s=te(),i=E(e,"--dashboard-url")??s.dashboardUrl??it,c=Ua(e),u=await Da(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($f(_,c.stage));return}if(o){let v=await d.listStages(c.project),_=r?v.find((C)=>Uf(C.name,r)):await At("Select stage",v,(C)=>$f(C,c.stage).trim());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=Cr("BROODS_STAGE");await Kt("BROODS_STAGE",_.name),console.log(`Stage: ${_.name} (wrote BROODS_STAGE)`),Ca("BROODS_STAGE",j),await Aa(d,{project:c.project,stage:_.name});return}let p=r??await pt("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=Cr("BROODS_STAGE");await Kt("BROODS_STAGE",m.stage.name),console.log(`Stage: ${m.stage.name} (wrote BROODS_STAGE)`),Ca("BROODS_STAGE",y),await Aa(d,{project:c.project,stage:m.stage.name})}async function N_(e){let{manifest:t,config:r}=await Be({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(Un(t,a?.manifest??null))}async function z_(e){let{manifest:t,config:r,resourceAliases:n,channels:o}=await Be({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 jr(t,i.ids,process.cwd(),n,i.deployment,o),await Wf(),await Ga(),console.log(`Synced ${i.manifest.resources.length} resources to ${t.project}/${t.stage}`),await jf(i.deployment),Zf(o,i),Df(i)}async function jf(e){if(!e)return;if(e.apiKey){await Kt("BROODS_API_KEY",e.apiKey),console.log(`Wrote BROODS_API_KEY (${e.keyHint}) to .env.local`);return}}function Df(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 j_(){let e=await Ma({maxAgeMs:0});if(e===null)throw Error("Could not reach the npm registry to check for a newer broods.");if(!$a(e,at)){console.log(`broods v${at} is already the newest release.`);return}let t=Sf();console.log(`Updating broods ${at} → ${e} ${t.global?"globally":"in this project"}`),console.log(`$ ${[t.command,...t.args].join(" ")}`),await new Promise((r,n)=>{let o=Nf(t.command,t.args,{stdio:"inherit"});o.on("error",n),o.on("exit",(a)=>{if(a===0){r();return}n(Error(`${t.command} exited with code ${a??"unknown"}`))})}),console.log(`broods ${e} installed.`)}async function Ef(){let e=await Ma();if(e===null||!$a(e,at))return;J(`broods ${e} is out, you are on ${at}. Run \`broods update\`.`)}async function D_(e){if(await Z_(e),we(e,"--once")){if(!process.env.BROODS_SUPPRESS_DEV_TARGET)await Rf(e),await Ef();let d=If.now();await G_(e),Rs(If.now()-d);return}let t=Pf(E_(),`broods-declined-${process.pid}.txt`),r={...process.env,BROODS_DECLINED_FILE:t,BROODS_SUPPRESS_DEV_TARGET:"1",BROODS_RELOAD_ENV:"1"};await Rf(e),await Ef(),await Mf(e,r);let n,o=!1,a=!1,s=await Af(),i=()=>{if(o){a=!0;return}o=!0,Af().then(async(d)=>{if(d===s)return;s=d,await Mf(e,r)}).catch((d)=>console.error(d instanceof Error?d.message:String(d))).finally(()=>{if(o=!1,a)a=!1,i()})},c=I_(H(process.cwd(),ce),{recursive:!0},(d,p)=>{if(!p||lS(p))return;clearTimeout(n),n=setTimeout(i,150)}),u=new AbortController;U_(e,u.signal),process.on("SIGINT",()=>{u.abort(),c.close(),process.exit(0)})}async function U_(e,t){let r;try{r=Fa()}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 qa(e,r))}catch{return}let a=Ba(e);console.log(`· live logs [${a}+]${Wa(a)}. Full INFO/DEBUG history is in the dashboard.`);try{for await(let s of Ur({baseUrl:r.baseUrl,apiKey:r.apiKey,project:n,stage:o},{backfill:0,minLevel:a,signal:t}))console.log(Va(s))}catch(s){if(!t.aborted)console.error(`live logs: ${s instanceof Error?s.message:String(s)}`)}}async function Z_(e){await L_(),await F_(e)}async function L_(){let e=H(process.cwd(),ce);await za(H(e,Ce),{recursive:!0});let t=[];if(await Ka(e,t),t.length>0)return;await $n(H(e,"index.ts"),Gf(),!1),await $n(H(e,".gitignore"),`_generated
|
|
299
307
|
.cache
|
|
300
|
-
`,!1),console.log(`Created starter ${ce}/`)}async function
|
|
301
|
-
`,"utf8")}async function
|
|
308
|
+
`,!1),console.log(`Created starter ${ce}/`)}async function F_(e){let t=H(process.cwd(),".env.local"),r=await Et(t),n=Vf(r),o=n.BROODS_STAGE;if(["BROODS_DASHBOARD_URL","BROODS_BASE_URL","BROODS_PROJECT","BROODS_REGION"].filter((y)=>n[y]===void 0).length===0&&o!==void 0)return;let s=n.BROODS_PROJECT===void 0,i=o===void 0,c=n.BROODS_REGION===void 0,u=te(),d=E(e,"--dashboard-url")??u.dashboardUrl??it,p=E(e,"--project")??process.env.BROODS_PROJECT??Ht(process.cwd()),f=E(e,"--stage")??lt()??"development",m=E(e,"--region")??process.env.BROODS_REGION??Jt;if(process.stdin.isTTY&&s){let y=await Da(d),v=new ae({baseUrl:y.baseUrl,token:y.token}),_=await B_(v,y),j=await q_(v,_);if(p=await V_(j,p),!p.trim())throw Error("Project name is required.")}if(process.stdin.isTTY&&i){if(f=await pt("Stage",f),!f.trim())throw Error("Stage is required.")}if(process.stdin.isTTY&&c)m=await At("Select service region",[...k_],(y)=>y.label).then((y)=>y.region);await Ja({dashboardUrl:d,baseUrl:u.baseUrl??Pa(d),project:p,stage:f,region:m,force:!1})}async function Da(e){try{return await ke()}catch(t){if(!process.stdin.isTTY)throw t;return J("No CLI login found. Starting browser login."),await Zn(e)}}async function B_(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 kf(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 Zr({...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: ${Or(o)}`),console.log(`Projects: ${r.projects.length>0?r.projects.map((a)=>a.name).join(", "):"none yet"}`),await Aa(e,Ua(n))}async function Aa(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=Cr("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`),Ca("BROODS_API_KEY",n)}function Ca(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 Or(e){let t=e.role==="owner"||e.role==="admin"?e.role:"member",r=e.plan?`, ${e.plan} plan`:"";return`${e.name} (${e.slug}, ${t}${r})`}function $f(e,t){let r=Uf(e.name,t)?"*":" ",n=e.deploymentRegion?`, ${e.deploymentRegion}`:"";return`${r} ${e.name} (${e.kind}${n}) — ${e.agentCount} agent(s), ${e.variableCount} env var(s)`}function Uf(e,t){return e.trim().toLowerCase()===t.trim().toLowerCase()}function Ua(e){return te(),{project:E(e,"--project")??process.env.BROODS_PROJECT??Ht(process.cwd()),stage:E(e,"--stage")??lt()??"development"}}async function q_(e,t){let r=t.orgs.filter((a)=>a.accountStatus==="active"),n={kind:"create",name:"New organization"},o=await At("Select organization",[...r,n],(a)=>("kind"in a)?"Create new organization":Or(a));if("kind"in o){let a=await pt("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 W_(e,t){return e.projects.find((n)=>n.name===t||n.slug===t)?.name??t}async function V_(e,t){if(e.projects.length===0)return pt("Project name",t);let r={kind:"create",name:W_(e,t),slug:""},n=[...e.projects,r],o=await At("Select project",n,(a)=>("kind"in a)&&a.kind==="create"?`Create new project (${a.name})`:`${a.name} (${a.slug})`);if("kind"in o&&o.kind==="create")return pt("New project name",o.name);return o.name}function Mf(e,t){return new Promise((r,n)=>{let o=process.argv[1]??"",a=Nf(process.execPath,[o,"dev","--once",...e],{stdio:"inherit",env:t});a.on("error",n),a.on("exit",(s,i)=>{if(s===0){r();return}n(Error(i?`Sync child exited from signal ${i}`:`Sync child exited with code ${s??"unknown"}`))})})}async function G_(e){let{manifest:t,config:r,resourceAliases:n,channels:o}=await Be({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=Un(t,i?.manifest??null);Fr(c.filter((y)=>y.operation!=="delete")),await J_(s,t,Lf(a.baseUrl,a.token));let u=await s.putManifest(t,!1);await jr(t,u.ids,process.cwd(),n,u.deployment,o),await Wf(),await Ga();let d=await Y_(),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 Ms(`Delete ${f.length} resource(s) from ${t.project}/${t.stage}?`))u=await s.putManifest(t,!0),await jr(t,u.ids,process.cwd(),n,u.deployment,o),await Q_(),m=!0;else await X_(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 jf(u.deployment),Zf(o,u),Df(u),u}function Zf(e,t){let r=t.deployment;if(!r||e.length===0)return;let n=new Na,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 J_(e,t,r){let n=ps(t).filter((c)=>{let u=process.env[c];return!c.startsWith("BROODS_")&&u!==void 0&&u!==""});if(n.length===0)return;let o=await Za(),a=o[kn(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]!==Oa(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]=Oa(process.env[c]);o[kn(r,t.project,t.stage)]=a,await La(o),Cs(i)}function Lf(e,t){return`${e}:${ja("sha256").update(t).digest("hex").slice(0,16)}`}function kn(e,t,r){return`${e}:${t}:${r}`}function Ff(){return H(S_(En),"env-sync.json")}function Oa(e){return ja("sha256").update(e).digest("hex")}async function Za(){let e=await Et(Ff());if(!e)return{};try{let t=JSON.parse(e);return t&&typeof t==="object"?t:{}}catch{return{}}}async function La(e){let t=Ff();await za(H(t,".."),{recursive:!0}),await st(t,`${JSON.stringify(e,null,2)}
|
|
309
|
+
`,"utf8")}async function K_(e,t,r,n,o){let a=await Za(),s=kn(e,t,r);a[s]={...a[s],[n]:Oa(o)},await La(a)}async function H_(e,t,r,n){let o=await Za(),a=kn(e,t,r);if(!o[a]||!(n in o[a]))return;delete o[a][n],await La(o)}async function Rf(e){let t=te(),{manifest:r,config:n}=await Be({project:E(e,"--project"),stage:E(e,"--stage"),command:"dev"}),o=await ke(E(e,"--base-url")??n.baseUrl);As({project:r.project,stage:r.stage,dashboardUrl:E(e,"--dashboard-url")??t.dashboardUrl??o.dashboardUrl??n.dashboardUrl??it})}async function Y_(){let e=process.env.BROODS_DECLINED_FILE;if(!e)return new Set;let t=await Et(e);return new Set(t.split(/\r?\n/).map((r)=>r.trim()).filter(Boolean))}async function X_(e){let t=process.env.BROODS_DECLINED_FILE;if(!t||e.length===0)return;await st(t,`${e.join(`
|
|
302
310
|
`)}
|
|
303
|
-
`,{flag:"a"})}async function
|
|
311
|
+
`,{flag:"a"})}async function Q_(){let e=process.env.BROODS_DECLINED_FILE;if(!e)return;await st(e,"","utf8")}async function eS(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}
|
|
304
312
|
|
|
305
|
-
${
|
|
313
|
+
${Ee("env")}`);if(s&&!r)throw Error(`broods env ${t} needs a variable name.
|
|
306
314
|
|
|
307
|
-
${
|
|
315
|
+
${Ee("env")}`);let{manifest:i,config:c}=await Be({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=Lf(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 H_(p,i.project,i.stage,r),console.log(`Removed ${r} from ${f}`);return}let m=await $s(r);await d.setEnv(i.project,i.stage,r,m),await K_(p,i.project,i.stage,r,m),console.log(`Stored ${r} for ${f}`)}function Fa(){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??Cf;return{apiKey:e,baseUrl:t}}function Ba(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 tS(e){te();let t=E(e,"--project")??process.env.BROODS_PROJECT,r=E(e,"--stage")??lt();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 qa(e,t){let r=await tS(e),n=await Es(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 Wa(e){return e==="WARN"?" (--all for INFO too)":""}function Va(e){let t=new Date(e.ts).toISOString().slice(11,23),r=e.level.padEnd(5);return`${t} ${r} ${e.eventType} ${e.message}`}async function rS(e){let{apiKey:t,baseUrl:r}=Fa(),{project:n,stage:o}=await qa(e,{baseUrl:r,apiKey:t}),a=Ba(e),s=new AbortController,i=()=>s.abort();process.on("SIGINT",i),console.log(`Streaming live logs for ${n}/${o} [${a}+]`+Wa(a)+" — Ctrl+C to stop");try{for await(let c of Ur({baseUrl:r,apiKey:t,project:n,stage:o},{backfill:0,minLevel:a,signal:s.signal}))console.log(Va(c))}catch(c){if(!s.signal.aborted)console.error(c instanceof Error?c.message:String(c)),process.exitCode=1}finally{process.off("SIGINT",i)}}async function nS(e){let{apiKey:t,baseUrl:r}=Fa(),{project:n,stage:o}=await qa(e,{baseUrl:r,apiKey:t}),a=Ba(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}+]`+Wa(a)+` (backfill ${s}) — Ctrl+C to stop`);try{for await(let d of Ur({baseUrl:r,apiKey:t,project:n,stage:o},{backfill:s,minLevel:a,signal:c.signal}))if(i)console.log(JSON.stringify(d));else console.log(Va(d))}catch(d){if(!c.signal.aborted)console.error(d instanceof Error?d.message:String(d)),process.exitCode=1}finally{process.off("SIGINT",u)}}async function oS(e){let[t,r]=Rt(e);if(!t){console.log(Ee("agent"));return}if(t==="list"||t==="ls"){await aS(e);return}if(t==="get"){await sS(r,e);return}throw Error(`Unknown agent subcommand: ${t}
|
|
308
316
|
|
|
309
|
-
${
|
|
317
|
+
${Ee("agent")}`)}async function Bf(e){let{manifest:t,config:r}=await Be({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 aS(e){let{manifest:t,agents:r}=await Bf(e);if(r.length===0){console.log(`No agents declared in ${t.project}/${t.stage}.`);return}console.log(`Agents in ${t.project}/${t.stage}:`);for(let n of r){let o=qf(n.config),a=n.config.publicAccess===!0?"public":"private",s=n.agentId?n.agentId:"not deployed";console.log(` ${n.name} [${a}] ${o} (${s})`)}}async function sS(e,t){if(!e)throw Error(`Missing agent name.
|
|
310
318
|
|
|
311
|
-
${
|
|
319
|
+
${Ee("agent")}`);let{manifest:r,agents:n}=await Bf(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: ${qf(a)}`),console.log(` Sandbox: ${s??"—"}`),console.log(` Workspaces: ${i.length>0?i.join(", "):"—"}`),console.log(` Tools: ${c.length>0?c.join(", "):"—"}`),console.log(` Subagents: ${d.length>0?d.join(", "):"—"}`),console.log(` Channels: ${u.length>0?u.join(", "):"—"}`),p.length>0)console.log(" Webhooks:"),p.forEach((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 qf(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 iS(e){let[t,...r]=Rt(e);if(!t)throw Error(`Missing agent name.
|
|
312
320
|
|
|
313
|
-
${
|
|
314
|
-
`+
|
|
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 Be({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 Na({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 hf({client:f,agent:m,...n?{prompt:n}:{}});return}await gf({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 $n(e,t,r){try{await st(e,t,{flag:r?"w":"wx"})}catch(n){if(n.code==="EEXIST")return;throw n}}async function Wf(){let e=H(process.cwd(),ce,".gitignore"),t=await Et(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
|
+
`+n.join(`
|
|
315
323
|
`)+`
|
|
316
|
-
`:
|
|
324
|
+
`:n.join(`
|
|
317
325
|
`)+`
|
|
318
|
-
`;await
|
|
319
|
-
`,"utf8")}async function
|
|
320
|
-
`).split(/\n/):["# Local broods CLI settings. Tokens are stored outside the repo."],s=!1;for(let[u
|
|
326
|
+
`;await st(e,o,"utf8")}async function Ga(){let e=H(process.cwd(),"package.json"),t=await Et(e);if(!t)return;let r;try{r=JSON.parse(t)}catch{return}if(r.type)return;r.type="module",await st(e,JSON.stringify(r,null,2)+`
|
|
327
|
+
`,"utf8")}async function Ja(e){let t=H(process.cwd(),".env.local"),r=await Et(t),n=Vf(r),o={BROODS_DASHBOARD_URL:e.dashboardUrl,...e.baseUrl?{BROODS_BASE_URL:e.baseUrl}:{},BROODS_PROJECT:e.project,BROODS_STAGE:e.stage,BROODS_REGION:e.region},a=r?r.replace(/\n?$/,`
|
|
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}=${Mn(u)}`;else a.push(`${c}=${Mn(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(`
|
|
321
329
|
`)}
|
|
322
|
-
`;await
|
|
323
|
-
`).split(/\n/):["# Local broods CLI settings. Tokens are stored outside the repo."],a=
|
|
330
|
+
`;await st(t,i,"utf8")}async function Kt(e,t){let r=H(process.cwd(),".env.local"),n=await Et(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}=${Mn(t)}`;else o.push(`${e}=${Mn(t)}`);process.env[e]=t;let s=`${o.filter((i,c,u)=>!(i===""&&c===u.length-1)).join(`
|
|
324
332
|
`)}
|
|
325
|
-
`;await
|
|
333
|
+
`;await st(r,s,"utf8")}async function Et(e){try{return await Of(e,"utf8")}catch(t){if(t.code==="ENOENT")return"";throw t}}function Vf(e){let t={};for(let r of e.split(/\r?\n/)){let n=r.trim();if(!n||n.startsWith("#"))continue;let o=n.indexOf("=");if(o<=0)continue;t[n.slice(0,o).trim()]=n.slice(o+1).trim()}return t}function Mn(e){return JSON.stringify(e)}function Ht(e){return __(H(e)).replace(/^@/,"").replace(/\//g,"-").replace(/[^A-Za-z0-9_-]+/g,"-").replace(/^-+|-+$/g,"")||"broods-app"}async function Af(){let e=H(process.cwd(),ce),t=[];await Ka(e,t);let r=ja("sha256");for(let n of t.sort())r.update(T_(e,n)),r.update("\x00"),r.update(await Of(n)),r.update("\x00");return r.digest("hex")}async function Ka(e,t){let r=await x_(e,{withFileTypes:!0});for(let n of r){let o=Pf(e,n.name);if(n.isDirectory()){if(n.name===Ce||n.name==="generated"||n.name===".cache")continue;await Ka(o,t);continue}if(n.isFile()&&(n.name.endsWith(".ts")||n.name.endsWith(".md")))t.push(o)}}function lS(e){return e.split(/[\\/]/).some((t)=>t===Ce||t==="generated"||t===".cache")}function Gf(){return`import { defineAgent, defineSandbox, env } from "broods";
|
|
326
334
|
|
|
327
335
|
// A Lambda sandbox: a fresh, ephemeral bash environment created per run.
|
|
328
336
|
export const lambdaSandbox = defineSandbox({
|
|
@@ -350,4 +358,4 @@ export const myAgent = defineAgent({
|
|
|
350
358
|
`+" // `broods run` can reach this agent. Off by default — secured: a\n"+` // private agent is only reachable via internal endpoints or channel webhooks.
|
|
351
359
|
publicAccess: true,
|
|
352
360
|
});
|
|
353
|
-
`}function
|
|
361
|
+
`}function cS(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}").`)}$_().catch((e)=>{console.error(e instanceof Error?e.message:String(e)),process.exit(1)});
|